public void OnSetupTurn(NetworkMessage msg) { GameMsg.MsgIntegerArray setup = msg.ReadMessage <GameMsg.MsgIntegerArray>(); battle.SetDieCount(setup.array[0]); battle.SetRollCount(setup.array[1]); (game.GetOpenScreen() as BattleScreen).UpdateDieButtons(); }
public void OnHeal(NetworkMessage msg) { GameMsg.MsgIntegerArray message = msg.ReadMessage <GameMsg.MsgIntegerArray>(); battle.GetPawn(message.array[0]).Heal(message.array[1]); Game.PlaySound(Game.AUDIO_HEAL); EventBus.PawnHeal.Invoke(battle, battle.GetPawn(message.array[0]), message.array[1]); }
public void OnSwapSpells(NetworkMessage msg) { GameMsg.MsgIntegerArray msgArray = msg.ReadMessage <GameMsg.MsgIntegerArray>(); int id0 = msgArray.array[0]; int id1 = msgArray.array[1]; int pawnId = msg.conn.connectionId; Pawn pawn = pawns[pawnId]; List <string> spells = pawn.GetKnownSpellIdsMutable(); string temp = spells[id0]; spells[id0] = spells[id1]; spells[id1] = temp; }
public void OnTakeDamage(NetworkMessage msg) { GameMsg.MsgIntegerArray message = msg.ReadMessage <GameMsg.MsgIntegerArray>(); Pawn pawn = battle.GetPawn(message.array[0]); bool aliveBefore = pawn.IsAlive(); pawn.Damage(message.array[1]); Game.PlaySound(Game.AUDIO_HURT); EventBus.PawnDamage.Invoke(battle, pawn, message.array[1]); if (aliveBefore && !pawn.IsAlive()) { EventBus.PawnDied.Invoke(battle, pawn); } }