Пример #1
0
        public override void processMessage(NetWorker.Utilities.RawMessage message)
        {
            Board board = Engine.Game.getBoardById(message.getInt("bid"));
            Tower tower = board.towers[message.getInt("iob")];

            ITowerEffect effect = (ITowerEffect)Activator.CreateInstance(TypeIdGenerator.getTowerEffectClass(message.getInt("tid")));

            if (tower != null)
            {
                tower.effects.AddLast(effect);
            }
        }
Пример #2
0
 public void addTowerEffect(Tower tower, ITowerEffect effect)
 {
     // TODO
 }
Пример #3
0
        public static void sendMessage(ICollection <Player> receiverPlayers, Tower tower, ITowerEffect effect)
        {
            RawMessage msg = new RawMessage();

            msg.putInt("id", TypeIdGenerator.getMessageId(typeof(GAddEffectOnTower)));

            if (receiverPlayers != null && receiverPlayers.Count != 0)
            {
                msg.putInt("bid", tower.board.instanceId);
                msg.putInt("iob", tower.indexOnBoard);
                msg.putInt("tid", TypeIdGenerator.getTowerEffectId(effect.GetType()));

                foreach (var receiverPlayer in receiverPlayers)
                {
                    receiverPlayer.user.session.client.SendMessage(msg);
                }
            }
        }