// Use this for initialization void Start() { // References: player = FindObjectOfType <V_PlayerHandler>(); ai = FindObjectOfType <V_AI> (); // Initializations: initPos = container.localPosition; }
public void DoEffect() { if (this.gameObject.tag == "PlayerOwned") { if (extraEffect == cardEffect.AddEnergy) { if (target == cardTarget.ToOpponent) { V_GameManager.EffectAddEnergy(effectValue); } else { V_PlayerHandler.AddEnergy(effectValue); } } if (extraEffect == cardEffect.AddHealth) { if (target == cardTarget.ToOpponent) { V_GameManager.EffectHeal(effectValue); } else { V_PlayerHandler.EffectHeal(effectValue, V_GameManager.shealEffect.gameObject, V_GameManager.avatarZone.transform); } } if (extraEffect == cardEffect.DamagePlayer) { if (target == cardTarget.ToOpponent) { V_GameManager.EffectDamage(effectValue); } else { V_PlayerHandler.EffectDamage(effectValue, V_GameManager.sdamageEffect.gameObject, V_GameManager.avatarZone.transform); } } if (extraEffect == cardEffect.DrawNewCard) { if (target == cardTarget.ToOpponent) { // nothing here yet... } else { V_PlayerHandler player = GameObject.FindGameObjectWithTag("PlayerHandler").GetComponent <V_PlayerHandler> (); player.DrawOneCard(); } } } if (type == cardType.Spell) { SpellActivate(); } }
V_GameManager gm; // For accessing non-static variables in game manager // Use this for initialization void Start() { // DontDestroyOnLoad(gameObject); //its always here // } //if broken revert to an awake function. MAKE SURE TO CALL!! //public void EnterGame(){ // References: p = FindObjectOfType <V_PlayerHandler>(); gm = FindObjectOfType <V_GameManager> (); // Set the player's starting life and energy: V_PlayerHandler.health = startingHealth; V_PlayerHandler.energy = startingEnergy; V_AI.health = startingHealth; V_AI.energy = startingEnergy; sEnergy = startingEnergy; iEnergy = increasingEnergy; //need to add handlers for multiple new zones battleZone = battleZoneHandler; spellZone = spellZoneHandler; handZone = handZoneHandler; gameArea = gameAreaHandler; graveZone = graveZoneHandler; aiBattleZone = aiBattleZoneHandler; aiSpellZone = aiSpellZoneHandler; aiAvatarZone = aiAvatarHandler; aigraveZone = aigraveZoneHandler; avatarZone = avatarHandler; sdamageEffect = damageEffect; shealEffect = healEffect; if (drawCostText != null) { drawCostText.text = drawCost.ToString(); } // Draw the first hand cards: playerTurn = playerTypes.Player; p.gm = this; CardGameState = currentState.draw; //this is what we need to use to set the health to the size of the deck. we can disable it for now. // V_PlayerHandler.health = p.myDeck.Length; //p.StartDraw ();//we can disable this for now. if we have effects that only trigger in starting hand we can readd. for (int i = 0; i < startinghand; i++) { p.DrawOneCard(); } }
public void DoEffectAI() { if (this.gameObject.tag == "AIOwned") { if (extraEffect == cardEffect.AddEnergy) { if (target == cardTarget.ToOpponent) { V_PlayerHandler.AddEnergy(effectValue); } else { V_GameManager.EffectAddEnergy(effectValue); } } if (extraEffect == cardEffect.AddHealth) { if (target == cardTarget.ToOpponent) { V_PlayerHandler.EffectHeal(effectValue, V_GameManager.shealEffect.gameObject, V_GameManager.avatarZone.transform); } else { V_GameManager.EffectHeal(effectValue); } } if (extraEffect == cardEffect.DamagePlayer) { if (target == cardTarget.ToOpponent) { V_PlayerHandler.EffectDamage(effectValue, V_GameManager.sdamageEffect.gameObject, V_GameManager.avatarZone.transform); } else { V_GameManager.EffectDamage(effectValue); } } } if (type == cardType.Spell) { SpellActivate(); } }
// Use this for initialization void Start() { battleZone = battleZoneHandler; spellZone = spellZoneHandler; handZone = handZoneHandler; gameArea = gameAreaHandler; aiBattleZone = aiBattleZoneHandler; aiSpellZone = aiSpellZoneHandler; aiAvatarZone = aiAvatarHandler; avatarZone = avatarHandler; sdamageEffect = damageEffect; shealEffect = healEffect; drawCostText.text = drawCost.ToString(); // Draw the first hand cards: V_PlayerHandler player = GameObject.FindGameObjectWithTag("PlayerHandler").GetComponent <V_PlayerHandler>(); player.StartDraw(); turn = 0; }
// This is called when a player hits the "End Turn" button: public static void ChangeTurn(playerTypes type) { if (type == playerTypes.AI) { if (allowIncreasingEnergy) { V_PlayerHandler.AddEnergy(iEnergy); } // Draw 1 free card if Hand Zone is'nt full: if (handZone.transform.childCount < 4) { V_PlayerHandler player = GameObject.FindGameObjectWithTag("PlayerHandler").GetComponent <V_PlayerHandler> (); player.DrawOneCard(); } // allowIncreasingEnergy = true; playerTurn = playerTypes.Us; V_GameManager gm = GameObject.FindGameObjectWithTag("GameController").GetComponent <V_GameManager> (); gm.endTurnBTN.SetActive(true); gm.DrawBTN.SetActive(true); GameObject[] obj = GameObject.FindGameObjectsWithTag("PlayerOwned"); foreach (GameObject o in obj) { o.GetComponent <V_CardActions> ().isUsed = false; } } else if (type == playerTypes.Us) { if (allowIncreasingEnergy) { V_AI.EffectAddEnergy(iEnergy); } allowIncreasingEnergy = true; playerTurn = playerTypes.AI; GameObject[] obj = GameObject.FindGameObjectsWithTag("AIOwned"); foreach (GameObject o in obj) { o.GetComponent <V_CardActions> ().isUsed = false; } } turn++; }
public void DoEffect() { if (this.gameObject.tag == "PlayerOwned") { //WHY ISN'T THIS A SWITCH CASE??? ///we can do the thing. the thing with child classes. if (extraEffect == cardEffect.AddEnergy) { if (target == cardTarget.ToOpponent) { V_GameManager.EffectAddEnergy(effectValue); } else { V_PlayerHandler.AddEnergy(effectValue); } } if (extraEffect == cardEffect.AddHealth) { if (target == cardTarget.ToOpponent) { V_GameManager.EffectHeal(effectValue); } else { V_PlayerHandler.EffectHeal(effectValue, V_GameManager.shealEffect.gameObject, V_GameManager.avatarZone.transform); } } if (extraEffect == cardEffect.DamagePlayer) { if (target == cardTarget.ToOpponent) { V_GameManager.EffectDamage(effectValue); } else { V_PlayerHandler.EffectDamage(effectValue, V_GameManager.sdamageEffect.gameObject, V_GameManager.avatarZone.transform); } } if (extraEffect == cardEffect.DrawXCards) { if (target == cardTarget.ToOpponent) { // nothing here yet... } else { V_PlayerHandler player = FindObjectOfType <V_PlayerHandler> (); //draw x cards for (int i = effectValue; i > 0; i--) { player.DrawOneCard(); } } } if (extraEffect == cardEffect.DrawuptoXcards) { if (target == cardTarget.ToOpponent) { // nothing here yet... } else { V_PlayerHandler player = FindObjectOfType <V_PlayerHandler>(); //draw up to x cards V_GameManager.effectdraw = effectValue; } } if (extraEffect == cardEffect.LowerAllSpeed) { //doesn't work :():(:(:(:)(: yet... BUT WHY NOT????? GameObject[] obj = GameObject.FindGameObjectsWithTag("AIOwned"); foreach (GameObject o in obj) { if (o.GetComponent <V_Card>().type == cardType.Creature && o.GetComponent <V_Card>().Relentless == false) { o.GetComponent <V_Card>().speed -= effectValue; if (o.GetComponent <V_Card>().speed < 0) { o.GetComponent <V_Card>().speed = 0; } o.GetComponent <V_Card>().cardSpeedHandler.text = o.GetComponent <V_Card>().speed.ToString(); } } GameObject[] objP = GameObject.FindGameObjectsWithTag("PlayerOwned"); foreach (GameObject o in objP) { if (o.GetComponent <V_Card>().type == cardType.Creature && o.GetComponent <V_Card>().Relentless == false) { o.GetComponent <V_Card>().speed -= effectValue; if (o.GetComponent <V_Card>().speed < 0) { o.GetComponent <V_Card>().speed = 0; } o.GetComponent <V_Card>().cardSpeedHandler.text = o.GetComponent <V_Card>().speed.ToString(); } } } } if (type == cardType.Event) { SpellActivate(); } }
public void PlayerEndturn() { V_PlayerHandler player = GameObject.FindGameObjectWithTag("PlayerHandler").GetComponent <V_PlayerHandler> (); player.EndTurn(); }
public void PlayerRedraw() { V_PlayerHandler player = GameObject.FindGameObjectWithTag("PlayerHandler").GetComponent <V_PlayerHandler> (); player.ReDraw(); }