Пример #1
0
 public EmbankStateManager(IemStateManager.IStateMachine initialState,
                           IemGameEmbankmentGame newEg)
     : base(initialState)
 {
     IemUtils.GLog("eg is " + newEg);
     eg = newEg;
 }
Пример #2
0
            public override IemGameBase.IemGame CreateGame(BasePlayer player)
            {
                var newGame = new IemGameEmbankmentGame();

                newGame.Players[player.UserIDString] = new IemEmbankmentPlayer(player, newGame);
                IemUI.ShowTeamUiForPlayer(player, newGame);
                if (!newGame.CanStart())
                {
                    IemUI.CreateGameBanner(player, newGame.CanStartCriteria());
                }
                return(newGame);
            }
Пример #3
0
 // debuggin function to allow moving to next phase quickly
 void NextPhase()
 {
     if (game != null)
     {
         if (game.CurrentState == IemUtils.State.Running)
         {
             IemGameEmbankmentGame teamgame = (IemGameEmbankmentGame)game;
             if (teamgame.gsm.IsAny(EmbankStateManager.PartitionedPeriod.Instance))
             {
                 teamgame.gsm.ChangeState(EmbankStateManager.MainPhase.Instance);
             }
             else if (teamgame.gsm.IsAny(EmbankStateManager.MainPhase.Instance))
             {
                 teamgame.gsm.ChangeState(EmbankStateManager.SuddenDeath.Instance);
             }
             else if (teamgame.gsm.IsAny(EmbankStateManager.SuddenDeath.Instance))
             {
                 teamgame.gsm.ChangeState(EmbankStateManager.GameComplete.Instance);
             }
         }
     }
 }
Пример #4
0
 public IemEmbankmentPlayer(BasePlayer player, IemGameEmbankmentGame game) : base(player)
 {
     IemUtils.TeleportPlayerPosition(player, game.teamLobby.location);
     me.IemUtils?.SaveInventory(player, game.GetGuid());
     game.teamLobby.OpenDoors();
 }