public void Update(double elapsedTime)
        {
            _level.Update(elapsedTime, _gameTime);
            _gameTime -= elapsedTime;

            if (_gameTime <= 0)
            {
                if (_gameData.CurrentLevel.Stage < _gameData.TotalLevels)
                {
                    _gameData.CurrentLevel.Stage++;
                    OnGameStart();
                }
                else if (_gameData.CurrentLevel.Stage >= _gameData.TotalLevels)
                {
                    _gameData.CurrentLevel.Stage = 1;
                    OnGameStart();
                    _gameData.JustWon = true;
                    _system.ChangeState("game_over");
                }
            }

            if (_level.HasPlayerDied())
            {
                _gameData.CurrentLevel.Stage = 1;
                OnGameStart();
                _gameData.JustWon = false;
                //_countDown -= elapsedTime;
                // if(_countDown <= 0)
                //{
                _system.ChangeState("game_over");
                //}
            }
        }
Exemple #2
0
 private void InitEditStates()
 {
     _editState.AddState("default", new DefaultEditState(_input, _scene.NavMesh));
     _editState.AddState("add_vertex", new AddVertexState(_input, _scene.NavMesh));
     _editState.AddState("add_link", new AddLinkState(_input, _scene.NavMesh));
     _editState.AddState("add_polygon", new AddPolygonState(_input, _scene.NavMesh));
     _editState.ChangeState("default");
 }
Exemple #3
0
 private void InitializeGameState()
 {
     // Load the game states here
     _system.AddState("texture_test", new MultipleTexturesState(_textureManager));
     _system.AddState("sound_test", new SoundTestState(_soundManager));
     _system.ChangeState("sound_test");
 }
    public Game(int width, int height) : base(width, height)
    {
        // Load textures
        _textureManager.LoadTexture("penguin", "Images/penguin.png");
        _textureManager.LoadTexture("font", "Fonts/Arial/font.png");

        // Add all states that will be used
        _system.AddState("splash", new SplashScreenState(_system));
        _system.AddState("title_menu", new TitleMenuState());
        _system.AddState("settings", new SettingsMenuState());
        _system.AddState("playing", new PlayingGameState());
        _system.AddState("sprite_test", new DrawSpriteState(_textureManager));
        _system.AddState("new_sprite_test", new TestSpriteClassState(_textureManager));
        _system.AddState("text_test_state", new TextTestState(_textureManager));
        _system.AddState("fps_test_state", new FPSTestState(_textureManager));
        _system.AddState("wave_graph_state", new WaveformGraphState());
        _system.AddState("special_eff_state", new SpecialEffectState(_textureManager));
        _system.AddState("circle_intersect", new CircleIntersectionState(_input));
        _system.AddState("rectangle_intersect", new RectangleIntersectionState(_input));

        // select the start state
        _system.ChangeState("rectangle_intersect");

        // Setup orthographic view
        Setup2DGraphics(ClientSize.Width, ClientSize.Height);
    }
 private void Finish()
 {
     _gameData.JustWon = false;
     ///<remarks>重新开始</remarks>
     _system.ChangeState("start_menu");
     _countDown = _timeOut;
 }
        private void InitializeMenu()
        {
            float buttomwidth  = 100;
            float buttomheight = 20;

            _menu = new RadioVerticalMenu(0, 150, _input, 60);
            Button startGame = new Button(
                delegate(object o, EventArgs e)
            {
                ///<remarks>正式开始游戏</remarks>
                _system.ChangeState("inner_game");
            },
                new Text("开始", _generalFont), buttomwidth, buttomheight, _input);

            Button exitGame = new Button(
                delegate(object o, EventArgs e)
            {
                ///<remarks>退出</remarks>
                System.Windows.Forms.Application.Exit();
            },
                new Text("退出", _generalFont), buttomwidth, buttomheight, _input);

            ///<remarks>添加菜单</remarks>
            _menu.AddButton(startGame);
            _menu.AddButton(exitGame);
        }
Exemple #7
0
        public Form1()
        {
            _fastLoop = new FastLoop(GameLoop);
            _system   = new StateSystem();

            InitializeComponent();
            Stage.InitializeContexts();
            Setup2DGraphics(ClientSize.Width, ClientSize.Height);
            Sys.LoadMap();
            Sys.InitializeMap();

            Sys.halfHeight = ClientSize.Height / 2;
            Sys.halfWidth  = ClientSize.Width / 2;

            Sys.preX = ClientSize.Width / Sys.currentMap.map.GetLength(0);
            Sys.preY = ClientSize.Height / Sys.currentMap.map.GetLength(1);

            Gl.glScalef(0.02f / Sys.preX, 0.02f / Sys.preY, 1);

            _system.AddState("map", Sys.currentMap);
            _system.ChangeState("map");

            Form2 frm = new Form2();

            frm.Show();

            timer1.Enabled = true;
            //Gl.glTranslatef(-ClientSize.Width / 2, -ClientSize.Height / 2, 0);
        }
Exemple #8
0
 private void InitializeGameState()
 {
     //Load Game States
     _system.AddState("start_menu", new StartMenuState(_titleFont, _generalFont, _computerFont, _input, _system, _persistantGameData));
     _system.AddState("inner_game", new InnerGameState(_system, _input, _persistantGameData, _generalFont, _textureManager, _soundManager));
     _system.AddState("game_over", new GameOverState(_persistantGameData, _system, _input, _generalFont, _titleFont));
     _system.ChangeState("start_menu");//default state
 }
 private void CheckForPaused()
 {
     if (_input.Controller.ButtonStart.Pressed ||
         _input.Keyboard.IsKeyPressed(System.Windows.Forms.Keys.Enter))
     {
         _innerStateSystem.ChangeState("paused");
     }
 }
Exemple #10
0
 private void InitializeGameState()
 {
     // Load game states here
     _system.AddState("start_menu", new StartMenuState(_font, _titleFont, _generalFont, _input, _system, _soundManager));
     _system.AddState("inner_game", new InnerGameState(_input, _system, _textureManager, _soundManager, _levelManager, _persistantGameData, _font, _titleFont));
     _system.AddState("game_over", new GameOverState(_persistantGameData, _system, _input, _generalFont, _titleFont, _soundManager));
     _system.ChangeState("start_menu");
 }
 private void InitializeGameState()
 {
     // Game states are loaded here
     _system.AddState("start_menu", new StartMenuState(_titleFont, _generalFont, _input, _system));
     _system.AddState("inner_game", new InnerGameState(_system, _input, _persistantGameData, _generalFont));
     _system.AddState("game_over", new GameOverState(_persistantGameData, _system, _input, _generalFont, _titleFont));
     _system.ChangeState("start_menu");
 }
Exemple #12
0
        public void CreateState()
        {
            StateSystem     stateSystem     = new StateSystem();
            DrawSpriteState drawSpriteState = new DrawSpriteState();

            stateSystem.AddState("drawSprite", drawSpriteState);
            stateSystem.ChangeState("drawSprite");
        }
Exemple #13
0
 private void Finish()
 {
     _gameData.JustWon = false;
     _gameData.Score   = 0;
     _gameData.Lives   = 2;
     _system.ChangeState("start_menu");
     _countDown = _timeOut;
 }
Exemple #14
0
        public void CreateState()
        {
            StateSystem stateSystem = new StateSystem();
            DrawSpriteState drawSpriteState = new DrawSpriteState();

            stateSystem.AddState("drawSprite", drawSpriteState);
            stateSystem.ChangeState("drawSprite");
        }
Exemple #15
0
        public void StateSystemUpdateTest()
        {
            stateSystemUpdate = new StateSystem();

            stateSystemUpdate.AddState("drawSprite", new DrawSpriteState());
            stateSystemUpdate.ChangeState("drawSprite");

            FastLoop fastLoop = new FastLoop(GameLoopTest);
        }
Exemple #16
0
        public void StateSystemUpdateTest()
        {
            stateSystemUpdate = new StateSystem();

            stateSystemUpdate.AddState("drawSprite", new DrawSpriteState());
            stateSystemUpdate.ChangeState("drawSprite");

            FastLoop fastLoop = new FastLoop(GameLoopTest);
        }
Exemple #17
0
        public void StateSystemChangeWorks()
        {
            StateSystem stateSystem = new StateSystem();

            stateSystem.AddState("splash", new SplashScreenState(stateSystem));
            stateSystem.ChangeState("splash");

            Assert.True(true);
        }
 public void Update(double deltaTime)
 {
     _delayInSeconds -= deltaTime;
     if (_delayInSeconds <= 0)
     {
         _delayInSeconds = 3;
         _system.ChangeState("title_menu");
     }
 }
Exemple #19
0
        public void Update(double elapsedTime)
        {
            Point mousePos = _input.Mouse.Position;

            FindNearestPolygon(mousePos);
            FindSelectedVertex(mousePos);

            if (_input.Keyboard.IsKeyPressed(System.Windows.Forms.Keys.A))
            {
                _convexPolyForm.Add(new ConvexPolyForm(mousePos));
            }

            if (_input.Keyboard.IsKeyPressed(System.Windows.Forms.Keys.I))
            {
                if (_selectedPoly != null)
                {
                    _selectedPoly.TryAddVert(mousePos);
                }
            }

            if (_input.Keyboard.IsKeyPressed(System.Windows.Forms.Keys.C))
            {
                _editState    = EditState.ConnectPressed;
                _connectStart = mousePos;
            }

            if (_input.Keyboard.IsKeyPressed(System.Windows.Forms.Keys.F))
            {
                _pathFinder.Init(_convexPolyForm, _connections);
                _stateSystem.ChangeState("pathfinder");
            }

            if (_input.Mouse.LeftPressed && _editState == EditState.ConnectPressed)
            {
                CheckForConnection();
                _editState = EditState.Default;
            }

            if (_editState == EditState.ConnectPressed)
            {
                FindIntersectedEdges(_connectStart, mousePos);
            }

            if (_input.Mouse.LeftHeld && _selectedVert != -1)
            {
                _editState = EditState.VertexPressed;
                _selectedPoly.TryUpdateVertPosition(_selectedVert, mousePos);
            }
            else
            {
                if (_editState == EditState.VertexPressed)
                {
                    _editState = EditState.Default;
                }
            }
        }
Exemple #20
0
 private void InitializeGameState()
 {
     // Game states are loaded here
     _system.AddState("start_menu", new StartMenuState(_titleFont, _generalFont, _input, _system));
     _system.AddState("inner_game", new InnerGameState(_system, _input, _textureManager, _persistantGameData, _generalFont));
     _system.AddState("game_over", new GameOverState(_persistantGameData, _system, _input, _generalFont, _titleFont));
     _system.AddState("help_state", new CreditState(_persistantGameData, _system, _input, _generalFont, _titleFont));
     _system.AddState("kabajie", new KabajiEgara(_persistantGameData, _system, _input, _generalFont, _titleFont));
     _system.ChangeState("start_menu");
 }
Exemple #21
0
        private void InitializeGameState()
        {
            //Game states loaded here
            _system.AddState("start_menu", new StartMenuState(_fontManager, _input, _system));
            _system.AddState("inner_game", new InnerGameState(_system, _input, _persistantGameData, _fontManager, _textureManager));
            _system.AddState("game_over", new GameOverState(_persistantGameData, _system, _input, _fontManager));


            _system.ChangeState("start_menu");
        }
        public void Update(double elapsedTime)
        {
            _level.Update(elapsedTime, _gameTime);
            _gameTime -= elapsedTime;

            if (_gameTime <= 0)
            {
                OnGameStart();
                _gameData.JustWon = true;
                _system.ChangeState("game_over");
            }

            if (_level.HasPlayerDied())
            {
                OnGameStart();
                _gameData.JustWon = false;
                _system.ChangeState("game_over");
            }
        }
        private void InitializeGameState()
        {
            //Load Game States
            _system.AddState("sound_test_state", new SoundTestState(_soundManager));
            _system.AddState("input_test_state", new InputTestState());
            _system.AddState("mouse_test_state", new MouseTestState(_input));
            _system.AddState("keyboard_test_state", new KeyboardTestState(_input));

            _system.ChangeState("keyboard_test_state");
        }
Exemple #24
0
        public void InitializeVerticalMenu()
        {
            Button resumeGame = new Button(
                delegate(object o, EventArgs e)
            {
                _system.ChangeState("unpaused");
            },
                new Text("Resume", _fontManager.Get("general_font")));

            _vmenu.AddButton(resumeGame);
        }
Exemple #25
0
        public void Update(double elapsedTime)
        {
            _gameTime -= elapsedTime;

            if (_gameTime <= 0)
            {
                OnGameStart();
                _gameData.JustWon = true;
                _system.ChangeState("game_over");
            }
        }
        public void Update(double elapsedTime)
        {
            _lvlTitleTime -= elapsedTime;

            if (_lvlTitleTime < 0)
            {
                _gameTime += elapsedTime;
                _level.Update(elapsedTime, _gameTime);
                _score.Update(_gameData.Score);
                _lives.Update(_gameData.Lives);

                //if (_gameTime < 0)
                if (_level.Finished)
                {
                    if (_gameData.CurrentLevel.NextLevel != null && _gameData.CurrentLevel.NextLevel != string.Empty)
                    {
                        _gameData.NewGame      = false;
                        _gameData.CurrentLevel = _levelManager.Load(_gameData.CurrentLevel.NextLevel);
                    }
                    else
                    {
                        _gameData.JustWon      = true;
                        _gameData.NewGame      = true;
                        _gameData.CurrentLevel = _levelManager.Load("Level_1");
                        UpdateHighScore(_gameData.Score);
                        _system.ChangeState("game_over");
                    }

                    OnGameStart();
                }

                if (_level.HasPlayerDied())
                {
                    _gameData.JustWon      = false;
                    _gameData.NewGame      = true;
                    _gameData.CurrentLevel = _levelManager.Load("Level_1");
                    OnGameStart();
                    _system.ChangeState("game_over");
                }
            }
        }
        private void InitializeMenu()
        {
            _menu = new VerticalMenu(0, 150, _input, _soundManager);

            Button start_game = new Button(
                delegate(object o, EventArgs e)
            {
                // Do start functionality
                _soundManager.StopSound(_backgtound_music);
                _system.ChangeState("inner_game");
            },
                new Text("START", _generalFont));
            Button options = new Button(
                delegate(object o, EventArgs e)
            {
                // Do start functionality
                _soundManager.StopSound(_backgtound_music);
                _system.ChangeState("inner_game");
            },
                new Text("OPTIONS", _generalFont));
            Button hight_scores = new Button(
                delegate(object o, EventArgs e)
            {
                // Do start functionality
                _soundManager.StopSound(_backgtound_music);
                _system.ChangeState("inner_game");
            },
                new Text("HIGH SCORES", _generalFont));
            Button exit_game = new Button(
                delegate(object o, EventArgs e)
            {
                // Quit
                System.Windows.Forms.Application.Exit();
            },
                new Text("EXIT", _generalFont));

            _menu.AddButton(start_game);
            _menu.AddButton(options);
            //_menu.AddButton(hight_scores);
            _menu.AddButton(exit_game);
        }
Exemple #28
0
 /// <summary>
 /// 初始化游戏状态
 /// </summary>
 private void InitializeGameState(Size _windowSize)
 {
     // Game states are loaded here
     _system.AddState("start_menu", new StartMenuState(_titleFont, _generalFont, _input, _system, _textureManager, _windowSize));
     _system.AddState("inner_game", new InnerGameState(_system, _input, _textureManager, _persistantGameData, _generalFont, _titleFont, _windowSize));
     _system.AddState("game_over", new GameOverState(_persistantGameData, _system, _input, _generalFont, _titleFont));
     //system.AddState("circle_state", new CircleIntersectionState(_input));
     //_system.AddState("mouse_test", new MouseButtonState(_input));
     _system.ChangeState("start_menu");
     //_system.ChangeState("circle_state");
     //_system.ChangeState("mouse_test");
 }
Exemple #29
0
        public void Update(double elapsedTime)
        {
            _plotter.Update(elapsedTime, _input.Mouse.Position);

            if (_input.Mouse.LeftPressed)
            {
                Polygon polygon = _plotter.AddPoint(_input.Mouse.Position);
                if (polygon != null)
                {
                    _pathData.NavMesh.Polygon = polygon;
                    _system.ChangeState("test_path");
                }
            }
        }
        private void InitializeMenu()
        {
            _menu = new VerticalMenu(0, 150, _input);
            Button startGame = new Button(
                delegate(object o, EventArgs e)
            {
                _system.ChangeState("inner_game");
            },
                new Text("Start", _generalFont));


            Button exitGame = new Button(
                delegate(object o, EventArgs e)
            {
                // Quit
                System.Windows.Forms.Application.Exit();
            },
                new Text("Exit", _generalFont));
            Button helpPage = new Button(
                delegate(object o, EventArgs e){
                //change state to help page
                _system.ChangeState("help_state");
            },
                new Text("Game Help", _generalFont));
            Button kabajie = new Button(
                delegate(object o, EventArgs e)
            {
                //change state to help page
                _system.ChangeState("kabajie");
            },
                new Text("Kabaji Egara", _generalFont));

            _menu.AddButton(startGame);
            _menu.AddButton(exitGame);
            _menu.AddButton(helpPage);
            _menu.AddButton(kabajie);
        }
        public void InitializeInnerStateSystem()
        {
            _innerStateSystem.AddState("paused", new InnerMenuState(
                                           _input,
                                           _fontManager,
                                           _innerStateSystem));

            _innerStateSystem.AddState("unpaused", new InnerGameplayState(
                                           _input,
                                           _fontManager,
                                           _textureManager,
                                           _innerStateSystem,
                                           _gameData,
                                           _renderer));

            _innerStateSystem.ChangeState("unpaused");
        }
        private void InitializeGameState()
        {
            //Game states loaded here
            _system.AddState("main_menu_state", new MainMenuState(
                                 _input,
                                 _fontManager,
                                 _system));

            _system.AddState("inner_game_state", new InnerGameState(
                                 _input,
                                 _system,
                                 _textureManager,
                                 _fontManager,
                                 _gameData));


            _system.ChangeState("main_menu_state");
        }