void IGraphics.minion_mutantEightLegged_spawn(MutantEightLeggedMinion parentMinion, ICollection <MutantEightLeggedSpawningMinion> spawnings) { foreach (var spawning in spawnings) { createMinion(spawning); } }
public static void sendMessage(ICollection <Player> receiverPlayers, MutantEightLeggedMinion parentMinion, ICollection <MutantEightLeggedSpawningMinion> spawnedMinions, ICollection <Minion> deadMinions) { RawMessage msg = new RawMessage(); msg.putInt("id", TypeIdGenerator.getMessageId(typeof(GMinion_MutantEightLegged_spawn))); if (receiverPlayers != null && receiverPlayers.Count != 0) { msg.putInt("iid", parentMinion.instanceId); msg.putInt("c", spawnedMinions.Count); int[] sid = new int[spawnedMinions.Count]; for (int i = 0; i < spawnedMinions.Count; i++) { sid[i] = spawnedMinions.ElementAt(i).instanceId; } msg.putIntArray("sid", sid); int[] did = new int[deadMinions.Count]; for (int i = 0; i < deadMinions.Count; i++) { did[i] = deadMinions.ElementAt(i).instanceId; } msg.putIntArray("did", did); foreach (var receiverPlayer in receiverPlayers) { receiverPlayer.user.session.client.SendMessage(msg); } } }
public override void processMessage(RawMessage message) { MutantEightLeggedMinion parentMinion = (MutantEightLeggedMinion)Engine.Game.getMinionById(message.getInt("iid")); int spawningCount = message.getInt("c"); if (spawningCount == 0) { return; } int[] spawningIds = message.getIntArray("sid"); int[] deadIds = message.getIntArray("did"); List <MutantEightLeggedSpawningMinion> spawnings = new List <MutantEightLeggedSpawningMinion>(); MutantEightLeggedSpawningMinion spawning; Minion deadMinion; for (int i = 0; i < spawningCount; i++) { deadMinion = Engine.Game.getMinionById(deadIds[i]); if (deadMinion != null) { spawning = parentMinion.createSpawning(); spawning.instanceId = spawningIds[i]; spawnings.Add(spawning); deadMinion.position.board.AddMinionSpecificPosition(spawning, deadMinion.position.pathPosition); } } Runner.Graphics.minion_mutantEightLegged_spawn(parentMinion, spawnings); }