示例#1
0
        public StateMachine(GameplayScreen screen, int totalStates)
        {
            Screen = screen;
            states = new List<GameState>(5);

            this.totalStates = totalStates;
            currentState = 1;

            //Start at -1 because the first state will be index 0;
            top = -1;
        }
 public RegularStateMachine(GameplayScreen screen, int totalScreens)
     : base(screen, totalScreens)
 {
 }
示例#3
0
        private int GetNextBorder(GameplayScreen screen, int[] agroBorders)
        {
            int score = (int)screen.Player.ScoreBar.GetScorePercentage();

            for (int i = 0; i < agroBorders.Length; i++)
            {
                if (score < agroBorders[i])
                {
                    return agroBorders[i];
                }
            }

            //No more borders so return max score.
            return 100;
        }
示例#4
0
 public BossStateMachine(GameplayScreen screen)
     : base(screen, 12)
 {
     stateNumber = 0;
     PushState(new TransitionState(this));
 }