public class_Card(class_Card a_card) { Name = a_card.Name; m_iAttack = a_card.m_iAttack; m_iDefense = a_card.m_iDefense; m_gCard = a_card.m_gCard; m_gCard.name = a_card.m_gCard.name; }
public void AttacK() { if (coinFlip == 1) { //player 2 attacking player 1 //Player 2's target class_Card player2Target = null; //check if any cards in player1's defense lane or attack lane. make the target defene > attack otherwise null. if (Player1.DefenseLane.Count >= 1) { //pick a defense target from player 1's defense lane player2Target = Player1.DefenseLane[UnityEngine.Random.Range(0, Player1.DefenseLane.Count - 1)].GetComponent <class_Card>(); } else if (Player1.AttackLane.Count >= 1) { //pick a random target from player1's attck lane int targetRandom = UnityEngine.Random.Range(0, Player1.AttackLane.Count + 1); if (targetRandom <= Player1.AttackLane.Count - 1) { player2Target = Player1.AttackLane[UnityEngine.Random.Range(0, Player1.AttackLane.Count - 1)].GetComponent <class_Card>(); } else { //if the rng is higher than attackCount attack the player player2Target = null; } } else { player2Target = null; } if (attackOrder < Player2.AttackLane.Count) { if (player2Target != null) { player2Target.TakeDamage(Player2.AttackLane[attackOrder].GetComponent <class_Card>().Attack); Player2.AttackLane[attackOrder].GetComponent <class_Card>().Defense -= player2Target.Attack; attackOrder++; } if (player2Target == null) { Player1.Health -= Player2.AttackLane[attackOrder].GetComponent <class_Card>().Attack; attackOrder++; } } } else if (coinFlip == 0) { //attacking Player 2 //player1's target class_Card player1Target = null; if (Player2.DefenseLane.Count >= 1) { player1Target = Player2.DefenseLane[UnityEngine.Random.Range(0, Player1.DefenseLane.Count - 1)].GetComponent <class_Card>(); } //else attack the player's attack lane else if (Player2.AttackLane.Count >= 1) { int targetRandom = UnityEngine.Random.Range(0, Player2.AttackLane.Count + 1); if (targetRandom <= Player2.AttackLane.Count - 1) { player1Target = Player2.AttackLane[UnityEngine.Random.Range(0, Player2.AttackLane.Count - 1)].GetComponent <class_Card>(); } else { player1Target = null; } } else { player1Target = null; } //if the attack order isnt greater than our current attack lane, you may attack if (attackOrder < Player1.AttackLane.Count) { if (player1Target != null) { player1Target.TakeDamage(Player1.AttackLane[attackOrder].GetComponent <class_Card>().Attack); Player1.AttackLane[attackOrder].GetComponent <class_Card>().Defense -= player1Target.Attack; attackOrder++; } else { Player2.Health -= Player1.AttackLane[attackOrder].GetComponent <class_Card>().Attack; attackOrder++; } } } }
public void SetCard(class_Card a_card) { Debug.Log(a_card.Attack); m_iAttack = a_card.Attack; }