public override void OnCombatStart(UnitCard player1Unit, UnitCard player2Unit) { if (string.Equals(player1Unit.name, "Princess Izumi", System.StringComparison.OrdinalIgnoreCase)) { player1Unit.ModifyHealth(-10, true); } if (string.Equals(player2Unit.name, "Princess Izumi", System.StringComparison.OrdinalIgnoreCase)) { player2Unit.ModifyHealth(-10, true); } }
public override void OnCombatStart(UnitCard player1Unit, UnitCard player2Unit) { if (player1Unit.currentWisdom >= 5) { player1Unit.ModifyHealth(-5, true); } if (player2Unit.currentWisdom >= 5) { player2Unit.ModifyHealth(-5, true); } }
public override void OnCombatStart(UnitCard player1, UnitCard player2) { if (player1.nation == Nation.WATER) { player1.ModifyHealth(-10, true); } if (player2.nation == Nation.WATER) { player2.ModifyHealth(-10, true); } }
public override void OnCombatStart(UnitCard player1Unit, UnitCard player2Unit) { if (player1Unit.currentStrength == player2Unit.currentStrength) { return; } if (player1Unit.currentStrength > player2Unit.currentStrength) { player1Unit.ModifyHealth(-10, true); } else if (player1Unit.currentStrength < player2Unit.currentStrength) { player2Unit.ModifyHealth(-10, true); } }
public virtual void Activate() { SetUserEnemy(); if (type == AttackType.PHYSICAL) { player.Stamina -= currentCost; } else { player.Mana -= currentCost; } //deal damage int damage = CalculateDamage(); if (damage > 0) { LogWindow.Log(user.name + " used " + name + " on " + enemy.name + " and dealt " + damage + " damage!"); enemy.ModifyHealth(damage); } else { LogWindow.Log(user.name + " used " + name + " on " + enemy.name + " and dealt no damage!"); } //modifying status come after damage ModifyUserStats(); ModifyEnemyStats(); //callbacks user.OnAttackCardPlayed(this, enemy); //first resolve resolve user enemy.OnAttackCardTarget(this, user); //then resolve enemy CombatController.instance.location.OnAttackCardPlayed(this, user, enemy); //then location effects player.OnAttackCardPlayed(this); //then discard card and draw a new one CombatController.OnAttackCardPlayed(); //and finally, switch turns }