Esempio n. 1
0
        /// <summary>
        /// Function to keep track of all the logic in game
        /// </summary>
        /// <returns></returns>
        public GameState Logic()
        {
            player.ProcessInput();

            player.UpdatePosition();

            player.ControlShots();

            foreach (Shot tiro in player.shots)
            {
                tiro.UpdatePosition();
            }

            foreach (Asteroid asteroide in AsteroidsList)
            {
                asteroide.UpdatePosition();
            }

            if (VerifyCollisions())
            {
                return(GameState.Lost);
            }
            if (AsteroidsList.Count == 0)
            {
                return(GameState.Won);
            }

            return(GameState.Running);
        }