示例#1
0
        private void proceedEvent(IGameLogicsEvent i_Event)
        {
            SoldierMovedEvent   soldierMovedEvent   = i_Event as SoldierMovedEvent;
            BecameKingEvent     becameKingEvent     = i_Event as BecameKingEvent;
            SoldierRemovedEvent soldierRemovedEvent = i_Event as SoldierRemovedEvent;
            PlayerSwitchedEvent playerSwitchedEvent = i_Event as PlayerSwitchedEvent;
            GameEndedEvent      gameEndedEvent      = i_Event as GameEndedEvent;

            if (soldierMovedEvent != null)
            {
                moveSoldier(soldierMovedEvent.Move);
            }
            else if (becameKingEvent != null)
            {
                becomeKing(becameKingEvent.Coordinate);
            }
            else if (soldierRemovedEvent != null)
            {
                removeSoldier(soldierRemovedEvent.Coordinate);
            }
            else if (playerSwitchedEvent != null)
            {
                OnPlayerSwitched();
            }
            else if (gameEndedEvent != null)
            {
                OnGameEnded();
            }
        }
示例#2
0
        private void proceedEvent(IGameLogicsEvent i_Event)
        {
            SoldierMovedEvent   soldierMovedEvent   = i_Event as SoldierMovedEvent;
            BecameKingEvent     becameKingEvent     = i_Event as BecameKingEvent;
            SoldierRemovedEvent soldierRemovedEvent = i_Event as SoldierRemovedEvent;

            if (soldierMovedEvent != null)
            {
                moveSoldier(soldierMovedEvent.Move);
            }
            else if (becameKingEvent != null)
            {
                becomeKing(becameKingEvent.Symbol, becameKingEvent.Coordinate);
            }
            else if (soldierRemovedEvent != null)
            {
                removeSoldier(soldierRemovedEvent.Coordinate);
            }
        }