// Attacks the unit public virtual void ai_attackUnit(Unit unit, BattleMap map, AttackInfo info, bool isUncontrollable) { map.attackSearch(unit.mapPos[0], unit.mapPos[1], info.range[0], info.range[1]); System.Threading.Thread.Sleep(1000); map.gstate.attackDecisionGui.open(ref info); System.Threading.Thread.Sleep(2500); game.gui.close("attack_decision"); map.gstate.stage= 0; map.makeUnitAttack(map.getFullUnitID(unit.mapPos), map.getUnitX(info.defenderID), map.getUnitY(info.defenderID), ref info); }
// Shows the range of the skill given it's id public override void showSkillRange(string skillID, Unit unit, ref BattleMap map) { // Variables int[] range= ((hasPassive("archer")) ? new int[]{2, 2} : new int[]{1, 1}); switch(skillID) { case "basic_attack": case "arm_thrust": case "provoke": case "powerbreak": case "magicbreak": case "speedbreak": case "mega_swing": if(hasPassive("pikeman")) map.attackSearchStraightLine(unit.mapPos[0], unit.mapPos[1], 2); else map.attackSearch(unit.mapPos[0], unit.mapPos[1], range[0], range[1]); break; case "headbutt": map.attackSearch(unit.mapPos[0], unit.mapPos[1], 1, 1); break; case "first_aid": map.healSearch(unit.mapPos[0], unit.mapPos[1], 0, 1); break; case "rally_force": map.attackSearch(unit.mapPos[0], unit.mapPos[1], 0, 0); break; } }
// Shows the range of the skill given it's id public override void showSkillRange(string skillID, Unit unit, ref BattleMap map) { switch(skillID) { case "meditation": case "hone_skill": map.attackSearch(unit.mapPos[0], unit.mapPos[1], 0, 0); break; case "basic_attack": case "precise_strike": case "sun\'s_might": case "serpent\'s_sting": case "vigilant_strike": case "lethal_strike": map.attackSearch(unit.mapPos[0], unit.mapPos[1], 1, 1); break; } }
// Shows the range of the skill given it's id public virtual void showSkillRange(string skillID, Unit unit, ref BattleMap map) { if(skillID== "basic_attack") map.attackSearch(unit.mapPos[0], unit.mapPos[1], 1, 1); }
// Shows the range of the skill given it's id public override void showSkillRange(string skillID, Unit unit, ref BattleMap map) { switch(skillID) { case "enrage": case "stockpile_rage": map.attackSearch(unit.mapPos[0], unit.mapPos[1], 0, 0); break; case "basic_attack": case "furious_slash": case "intimidate": case "let_loose": case "suicidal_slash": case "fury_swipes": case "counter_swipe": map.attackSearch(unit.mapPos[0], unit.mapPos[1], 1, 1); break; case "piercing_jab": map.attackSearchStraightLine(unit.mapPos[0], unit.mapPos[1], 2); break; case "raging_battlecry": map.attackSearch(unit.mapPos[0], unit.mapPos[1], 0, 1); break; } }
// Shows the range of the skill given it's id public override void showSkillRange(string skillID, Unit unit, ref BattleMap map) { switch(skillID) { case "basic_attack": map.attackSearch(unit.mapPos[0], unit.mapPos[1], 1, 1); break; case "smite": map.attackSearch(unit.mapPos[0], unit.mapPos[1], 1, 3); break; case "prophetic_reap": map.attackSearch(unit.mapPos[0], unit.mapPos[1], 0, 0); break; case "mend": map.healSearch(unit.mapPos[0], unit.mapPos[1], 1, 4); break; case "rally_spirit": case "multicure": case "healing_prayer": map.healSearch(unit.mapPos[0], unit.mapPos[1], 0, 0); break; case "armor_of_god": map.healSearch(unit.mapPos[0], unit.mapPos[1], 0, 1); break; case "banish_spirits": case "rejuvinate": case "rest_in_god": map.healSearch(unit.mapPos[0], unit.mapPos[1], 1, 3); break; } }