Пример #1
0
        public override IGameState[] PerformLogic(GameTime gameTime, GameInfo gameInfo)
        {
            var waitState = StateFactory.GetState(GameStates.GameStates.Wait);

            if (gameInfo.CurrentPlayer.PromotionLevel < 3) {
                CreateMessage(gameInfo.Manager, gameInfo, waitState);
            } else {
                var alert = new Alert(gameInfo.Manager, "You are already at your highest salary range!",
                                 "Cannot get promotion", true);
                alert.Init();
                gameInfo.Manager.Add(alert);
                alert.Closed += (sender, args) => alertClosed(gameInfo, waitState);
            }

            return new[] { new PayDay(), waitState };
        }
Пример #2
0
 public IGameState[] PerformLogic(GameTime gameTime, GameInfo gameInfo)
 {
     var waitState = StateFactory.GetState(GameStates.Wait);
     var alert = new Alert(gameInfo.Manager,
         string.Format("{3} you are now in debt!\n" +
             "Your original loan was for ${0:N0}\n" +
             "But with current interest rates at {1}%" +
             "\nYou must pay back ${2:n0}", LoanRequired, Loan.CurrentInterestRate, Loan.Value * -1, Player.Name),
             "You required a loan", icon:
             "Images/AlertIcons/Wallet");
     alert.Init();
     alert.Closing += (sender, args) => gameInfo.Fsm.Remove(waitState);
     gameInfo.Manager.Add(alert);
     alert.SendToBack();
     return new[] { waitState };
 }