private void unitSkipped(baseEnemy unit,basePlayer target,baseSkill skill) { if (unit.duration == 0) { unit.currentHP -= skill.cast(unit); clearEffect(target,skill); } else --unit.duration; }
private void playerBuff(basePlayer unit, baseEnemy target, baseSkill skill) { if (!target.effected) { if (skill.additionalEffect.status == baseSkill.Effect.Status.ATTACK && skill.targetPlayer) { target.attack += skill.additionalEffect.power; applyEffect(target, skill); } else if (skill.additionalEffect.status == baseSkill.Effect.Status.DEFENSE && skill.targetPlayer) { target.defense += skill.additionalEffect.power; applyEffect(target, skill); } } else if (skill.additionalEffect.status == baseSkill.Effect.Status.HEAL && skill.targetPlayer) { target.currentHP += skill.cast(unit); //Check here for effects. HOTS? } }
private void playerAttack(basePlayer unit, basePlayer target, baseSkill skill) { //AOE target. Might have to look at how we Destory Units. Because bookkeeping if (skill.additionalEffect.status == baseSkill.Effect.Status.AOE && skill.targetEnemy) AOEattack(unit, target, skill); else { //Single Target - Check if GODed if (target.effect == basePlayer.Status.GOD) { target.currentHP -= 0; Debug.Log("(CSM) PlayerAttack Player/Player Damage = 0; God Moded"); clearEffect(target, skill); } else { target.currentHP -= skill.cast(unit); if (target.currentHP >= 0) if (!target.effected) { applyEffect(target, skill); } else { } else { BattleManager.deadUnit(target); } } } Debug.Log("Attack Successful"); }
private void enemyAttack(baseEnemy attacker, baseEnemy target, baseSkill skill) { if (target.effect == baseEnemy.Status.GOD) { target.currentHP -= 0; clearEffect(target, skill); } else { target.currentHP -= skill.cast(attacker); if (target.currentHP <= 0) BattleManager.deadUnit(target); else if (skill.hasAdditionalEffect) if (!target.effected) applyEffect(target, skill); } }
private void AOEattack(baseEnemy unit, baseEnemy target, baseSkill skill) { int enemiesLeft = BattleManager.enemyParty.Count; int damage = skill.cast(unit); for (int i = 0; i < enemiesLeft; ++i) { if (BattleManager.enemyParty[i] != null) { BattleManager.enemyParty[i].currentHP -= damage; if (BattleManager.enemyParty[i].currentHP <= 0) { BattleManager.deadUnit(BattleManager.enemyParty[i]); } } } }
private void AOEattack(basePlayer unit, basePlayer target, baseSkill skill) { int playersLeft = BattleManager.playerParty.Count; int damage = skill.cast(unit); for (int i = 0; i < playersLeft; ++i) { if (BattleManager.playerParty[i] != null) { BattleManager.playerParty[i].currentHP -= damage; if (BattleManager.playerParty[i].currentHP <= 0) { BattleManager.deadUnit(BattleManager.playerParty[i]); } } } }