public void UseSpell(List <int> _UnitsTargeted) { switch (BestSpell.spellTarget) { case ISpellEffect.SpellTarget.ENEMY: foreach (var ASideUnits in _UnitsTargeted) { if (_ASide.ContainsKey(ASideUnits)) { _ASide.TryGetValue(ASideUnits, out _CurrentSide); _ASide[ASideUnits] = BestSpell.Play(_CurrentSide); } } break; case ISpellEffect.SpellTarget.ALLY: case ISpellEffect.SpellTarget.SELF: default: foreach (var BsideUnits in _UnitsTargeted) { if (_BSide.ContainsKey(BsideUnits)) { _BSide.TryGetValue(BsideUnits, out _CurrentSide); _BSide[BsideUnits] = BestSpell.Play(_CurrentSide); } } break; } }
public void PlayerRequestUsingSpell(string _SpellID, int _UnitTarget, int _PlayingUnitNumber) { ISpell Spell = FindSpellFromSpellListByID(_playerCollection[_PlayingUnitNumber].spellList, _SpellID); if (Spell != null) { Spell.Play(_IACollection[_UnitTarget]); Console.WriteLine("Player Turn Spell Recieved " + _PlayingUnitNumber); ServerSend.AttackIAUnits(ClientID, PlayingUnitID, _UnitTarget, Spell.spellTarget, Spell.SpellID); //isTurnOver = true; } }