public void OnArenaObjectCreated(ArenaObject obj) { byte id = idTmp++; UpdatableRoot.GetChild(ObjectBranchId).Add(id, obj); ArenaObjects.Add(id, obj); obj.SetId(id); if (Mediator.GetBool("IsRoomMaster", null)) { if (obj is Obstacle) { Mediator.Notify("SendObstacleSpawnedMessage", new object[] { id, obj }); } else if (obj is PowerUp) { Mediator.Notify("SendPowerupSpawnedMessage", new object[] { id, obj }); } } }
public void PowerUpSpawnedMessageReceived(byte id, PowerUp powerUp, PoweredUpData data) { powerUp.Init(GameData.PowerupColors[powerUp.Type], data); ArenaObjects.Add(id, powerUp); powerUp.SetId(id); }
public void ObstacleSpawnedMessageReceived(byte id, Obstacle obstacle) { obstacle.Init(GameData.ObstacleColors[obstacle.Type]); ArenaObjects.Add(id, obstacle); obstacle.SetId(id); }