Example #1
0
        private GameRunning()
        {
            player = new Player();
            player.SetExtent(0.05f, 0.05f);

            GameRunning.levelCounter = GameLevels.Levelcount;

            backGroundImage = new Entity(
                new StationaryShape(new Vec2F(0.0f, 0.0f), new Vec2F(1.0f, 1.0f)),
                new Image(Path.Combine("Assets", "Images", "GameSpaceBaground.png")));

            GameRunning.cash      = 0;
            GameRunning.cashLabel = new Text($"Cash: {GameRunning.cash}", new Vec2F(0.8f, 0.004f), new Vec2F(0.2f, 0.2f));
            GameRunning.cashLabel.SetColor(Color.DarkRed);
            PassengerCollision.SetPassengerPickupsToNew();
            SpaceBus.GetBus().Subscribe(GameEventType.PlayerEvent, player);

            levelCollisionCheckers = new List <CollisionChecker>();
            timerHandlers          = new List <TimeHandler>();
            levels                 = Game.GetLevels();
            levelobstacles         = Game.GetLevelObstacles();
            levelplatforms         = Game.GetLevelPlatforms();
            levelPassengers        = new List <List <Passenger> >();
            levelDiffrentPlatforms = Game.GetLevelDiffrentPlatforms();

            playerXcoordinates = Game.GetPlayerXCoordinates();
            playerYcoordinates = Game.GetPlayerYCoordinates();

            levelInfo = Game.GetLevelInfo();

            passengerListInfo = new List <Dictionary <int, string> >();

            for (int i = 0; i < filePath.Length; i++)
            {
                levelPassengers.Add(new List <Passenger>());
            }

            for (int cp = 0; cp < filePath.Length; cp++)
            {
                CreatePassenger(cp);
            }

            for (int clc = 0; clc < levels.Count; clc++)
            {
                CreateLevelCollision(clc);
            }

            for (int cth = 0; cth < levels.Count; cth++)
            {
                CreateTimerHandlers(cth);
            }

            player.SetPosition(playerXcoordinates[GameRunning.levelCounter], playerYcoordinates[GameRunning.levelCounter]);
        }
Example #2
0
        /// <summary>
        /// Render the different entities and features.
        /// </summary>
        public void RenderState()
        {
            backGroundImage.RenderEntity();
            GameRunning.cashLabel.RenderText();
            foreach (Passenger passenger in levelPassengers[GameRunning.levelCounter])
            {
                passenger.RenderPassenger();
            }

            foreach (Passenger passenger in PassengerCollision.GetPassengerPickups())
            {
                passenger.RenderPassenger();
            }

            player.RenderPlayer();
            levels[GameRunning.levelCounter].RenderEntities();
            ObstacleCollision.GetExplosion().RenderAnimations();
        }
Example #3
0
 /// <summary>
 /// Adds cash and the label
 /// </summary>
 private void AddCash()
 {
     foreach (Passenger passenger in PassengerCollision.GetPassengerPickups())
     {
         if (passenger.GetreleasedWithinTimer())
         {
             GameRunning.cash     += passenger.GetCash();
             GameRunning.cashLabel = new Text($"Cash: {GameRunning.cash}", new Vec2F(0.8f, 0.004f), new Vec2F(0.2f, 0.2f));
             GameRunning.cashLabel.SetColor(Color.DarkRed);
             passenger.SetReleasedWithinTimer(false);
         }
         else if (passenger.PickedUp && passenger.GetReleasePlatformChar() == '^' &&
                  player.GetsShape().Position.Y >= 0.98f && GameRunning.levelCounter == levelInfo.Count - 1 &&
                  passenger.GetChecker())
         {
             GameRunning.cash     += passenger.GetCash();
             GameRunning.cashLabel = new Text($"Cash: {GameRunning.cash}", new Vec2F(0.8f, 0.004f), new Vec2F(0.2f, 0.2f));
             GameRunning.cashLabel.SetColor(Color.DarkRed);
             passenger.SetChecker(false);
         }
     }
 }