public GameStateManager(A3Data a3Data)
 {
     _stateStack = new Stack <GameState>();
     _a3Data     = a3Data;
     PushState(new CombatState(_a3Data));
     _enabled = true;
 }
Exemple #2
0
        public CombatState(A3Data a3Data)
            : base(a3Data)
        {
            Character Innocentia = new Character("Innocentia");
            Player    testPlayer = new Player("Doll 1", new PlayerInputMethod());

            testPlayer.Character = Innocentia;

            _a3Data.SelectedPlayer = testPlayer;
        }
Exemple #3
0
 public void HandleInput(A3Data a3Data) //yes that means we can only handle one command at a time.
 {
     foreach (KeyCode k in _registeredKeys)
     {
         if (SwinGame.KeyDown(k))
         {
             if (a3Data.SelectedPlayer != null)
             {
                 _keyToCommands[k].Execute(a3Data.SelectedPlayer.Character);
             }
             else
             {
                 throw new MissingMemberException("selectedPlayer not found", "a3Data.SelectedPlayer");
             }
             //We can fix this later
         }
     }
 }
Exemple #4
0
        public void Run()
        {
            try
            {
                SwinGame.OpenAudio();
            }
            catch (Exception e)
            {
                Console.WriteLine("Audio failed to open: " + e.Message); //Not like it's an issue.
            }


            A3Data _a3Data = new A3Data();

            Services.Instance.Initialise(_a3Data);

            GameStateManager _gameStateManager = new GameStateManager(_a3Data);

            SwinGame.OpenGraphicsWindow("Artillery3x", Artillery.Constants.WindowWidth, Artillery.Constants.WindowHeight);

            LoadResources();


            while (!SwinGame.WindowCloseRequested() && !_userExitRequested)
            {
                SwinGame.ClearScreen(Color.White);
                SwinGame.ProcessEvents();

                Services.Update();
                Services.Draw();

                _gameStateManager.Update();
                _gameStateManager.Draw();
                SwinGame.RefreshScreen(60);
            }

            SwinGame.CloseAudio();
            SwinGame.ReleaseAllResources();
        }
Exemple #5
0
 public GameState(A3Data a3Data)
 {
     _a3Data = a3Data;
 }
Exemple #6
0
 public void HandleInput(A3Data a3Data)
 {
     a3Data.SelectedPlayer.InputMethod.HandleInput(a3Data);
 }
Exemple #7
0
 public void HandleInput(A3Data a3Data)
 {
     a3Data.CommandStream.AddCommand(new CommandMoveRight());
 }