public VulkanisLevelManager(Texture2D texture, Vector2 position, Vector2 screen, NebulaGame aGame, Level aLevel,
     List<Sprite> aSpritesList, List<Sprite> aPlatformsList, SpriteFont aFont, Asis aAsis, Screen aInstructions, Screen aGameOverScreen, List<Screen> aVictoryScreens, Screen aCutScene, TimeTravelManager aTimeTravelManager, SoundEffect backgroundMusic)
     : base(texture, position, screen, aGame, aLevel, aSpritesList, aPlatformsList, aFont, aAsis, aInstructions, aGameOverScreen, aVictoryScreens, aCutScene, aTimeTravelManager, backgroundMusic)
 {
     EndOfLevelPos = xSL * 9 - xSL / 4;
     setFinishingTimes(50, 75, 112);
 }
 public TutorialLevelManager(Texture2D texture, Vector2 position, Vector2 screen, NebulaGame aGame, Level aLevel,
     List<Sprite> aSpritesList, List<Sprite> aPlatformsList, SpriteFont aFont, Asis aAsis,
     Screen aInstructions, Screen aGameOverScreen, List<Screen> aVictoryScreenList, Screen aCutScene, TimeTravelManager aTimeTravelManager, SoundEffect backgroundMusic)
     : base(texture, position, screen, aGame, aLevel, aSpritesList, aPlatformsList, aFont, aAsis,
     aInstructions, aGameOverScreen, aVictoryScreenList, aCutScene, aTimeTravelManager, backgroundMusic)
 {
     EndOfLevelPos = (xSL / 12) * 89;
 }
 public CeresLevelManager(Texture2D texture, Vector2 position, Vector2 screen, NebulaGame aGame, Level aLevel,
     List<Sprite> aSpritesList, List<Sprite> aPlatformsList, SpriteFont aFont, Asis aAsis, Screen aInstructions, Screen aGameOverScreen, List<Screen> aVictoryScreens, Screen aCutScene, TimeTravelManager aTimeTravelManager, SoundEffect backgroundMusic)
     : base(texture, position, screen, aGame, aLevel, aSpritesList, aPlatformsList, aFont, aAsis, aInstructions, aGameOverScreen, aVictoryScreens, aCutScene, aTimeTravelManager, backgroundMusic)
 {
     EndOfLevelPos = xSL * 7 + xSL / 2 + xSL / 4;
     setFinishingTimes(50, 70, 110);
     LevelStoryText.Add("Whe... Where am I?", new Vector2(xSL / 12, ySL / 2 + ySL/8));
     LevelStoryText.Add("...How did I get here?", new Vector2(xSL / 2, ySL / 2 + ySL / 8));
     LevelStoryText.Add("What planet is this?", new Vector2(xSL + xSL / 2 + xSL / 24, ySL / 4));
     LevelStoryText.Add("Why are these people so hostile? \n This can't be my planet...", new Vector2(xSL * 4 + xSL/2, ySL / 2 + ySL/8));
 }
Example #4
0
        public override void LoadSprites()
        {
            HeroLaser aLaser = new HeroLaser(myGame.Content.Load<Texture2D>("blueLaser"), new Vector2(0, 0),
                new Vector2(myGraphics.PreferredBackBufferWidth, myGraphics.PreferredBackBufferHeight));

            Enemy dEnemy = new Enemy(myGame.Content.Load<Texture2D>("enemy-red"),
                new Vector2(myGraphics.PreferredBackBufferWidth + myGraphics.PreferredBackBufferWidth / 4 - myHero.myTexture.Width / 2,
                    myGraphics.PreferredBackBufferHeight / 2 + myGraphics.PreferredBackBufferHeight / 4 - myGraphics.PreferredBackBufferHeight / 8),
                new Vector2(myGraphics.PreferredBackBufferWidth, myGraphics.PreferredBackBufferHeight));

            EnemyLaser dLaser = new EnemyLaser(myGame.Content.Load<Texture2D>("redLaser"), new Vector2(myGraphics.PreferredBackBufferWidth * -1, myGraphics.PreferredBackBufferHeight * -1),
                new Vector2(myGraphics.PreferredBackBufferWidth, myGraphics.PreferredBackBufferHeight));

            // Initial grass platform, others are cloned in the Manager class
            Platform grassPlatform = new Platform((myGame.Content.Load<Texture2D>("PlantPlatform")), myGame.Content.Load<Texture2D>("PlantPlatformDead"),
                new Vector2(myGraphics.PreferredBackBufferWidth / 2, myGraphics.PreferredBackBufferHeight - myGraphics.PreferredBackBufferHeight / 8),
                new Vector2(myGraphics.PreferredBackBufferWidth, myGraphics.PreferredBackBufferHeight));

            myFont = myGame.Content.Load<SpriteFont>("SpriteFont1");

            movingSpritesList.Add(myHero);
            movingSpritesList.Add(aLaser);
            movingSpritesList.Add(dEnemy);
            movingSpritesList.Add(dLaser);

            platformsList.Add(grassPlatform);

            myBackgroundScreen = new Screen(myGame.Content.Load<Texture2D>("SpaceBackground"), new Vector2(0 - myGraphics.PreferredBackBufferWidth / 12, 0),
               new Vector2(myGraphics.PreferredBackBufferWidth, myGraphics.PreferredBackBufferHeight));

            allSprites.Add(myHero);
            allSprites.Add(dLaser);
            allSprites.Add(aLaser);

            //adding the test background images/Sprites
            //their positions are tacked on to each other, so they form one long background image
            BackgroundSprite b1 = new BackgroundSprite(myGame.Content.Load<Texture2D>("PlantB1"),
                new Vector2(0 - myGraphics.PreferredBackBufferWidth/12, 0), 1.0f);
            BackgroundSprite b2 = new BackgroundSprite(myGame.Content.Load<Texture2D>("PlantB2"),
                new Vector2(b1.myPosition.X + b1.myTexture.Width, 0), 1.0f);
            BackgroundSprite b3 = new BackgroundSprite(myGame.Content.Load<Texture2D>("PlantB3"),
                new Vector2(b2.myPosition.X + b2.size.Width, myGraphics.PreferredBackBufferHeight - b2.myTexture.Height), 1.0f);
            BackgroundSprite b4 = new BackgroundSprite(myGame.Content.Load<Texture2D>("PlantB4"),
                new Vector2(b3.myPosition.X + b3.size.Width, myGraphics.PreferredBackBufferHeight - b3.myTexture.Height), 1.0f);

            myBackgroundSprites.Add(b1);
            myBackgroundSprites.Add(b2);
            myBackgroundSprites.Add(b3);
            myBackgroundSprites.Add(b4);

            // Add each BackgroundSprite to the movingSpritesList
            foreach (BackgroundSprite s in myBackgroundSprites)
            {
                movingSpritesList.Add(s);
            }

            // 0 - myGraphics.PreferredBackBufferWidth / 12, 0
            myInstructionScreen = new Screen(myGame.Content.Load<Texture2D>("InstructionScreen (2)"), new Vector2(myGraphics.PreferredBackBufferWidth * -3, myGraphics.PreferredBackBufferHeight * -3),
                new Vector2(myGraphics.PreferredBackBufferWidth, myGraphics.PreferredBackBufferHeight));

             myGameOverScreen = new Screen(myGame.Content.Load<Texture2D>("death-screen"), new Vector2(0, 0),
                new Vector2(myGraphics.PreferredBackBufferWidth, myGraphics.PreferredBackBufferHeight));

             myVictoryScreen1 = new Screen(myGame.Content.Load<Texture2D>("Stage1Cleared1st"), new Vector2(myGraphics.PreferredBackBufferWidth * -3, 0),
                  new Vector2(myGraphics.PreferredBackBufferWidth, myGraphics.PreferredBackBufferHeight));

             myVictoryScreen2 = new Screen(myGame.Content.Load<Texture2D>("Stage1Cleared2nd"), new Vector2(myGraphics.PreferredBackBufferWidth * -3, 0),
                   new Vector2(myGraphics.PreferredBackBufferWidth, myGraphics.PreferredBackBufferHeight));

             myVictoryScreen3 = new Screen(myGame.Content.Load<Texture2D>("Stage1Cleared3rd"), new Vector2(myGraphics.PreferredBackBufferWidth * -3, 0),
                   new Vector2(myGraphics.PreferredBackBufferWidth, myGraphics.PreferredBackBufferHeight));

             myVictoryScreen4 = new Screen(myGame.Content.Load<Texture2D>("Stage1Cleared4th"), new Vector2(myGraphics.PreferredBackBufferWidth * -3, 0),
                   new Vector2(myGraphics.PreferredBackBufferWidth, myGraphics.PreferredBackBufferHeight));

             myVictoryScreens.Add(myVictoryScreen1);
             myVictoryScreens.Add(myVictoryScreen2);
             myVictoryScreens.Add(myVictoryScreen3);
             myVictoryScreens.Add(myVictoryScreen4);

             myCutScene = new Screen(myGame.Content.Load<Texture2D>("CutScene"), new Vector2(myGraphics.PreferredBackBufferWidth * -3, 0),
                   new Vector2(myGraphics.PreferredBackBufferWidth, myGraphics.PreferredBackBufferHeight));

             SoundEffect levelMusic = myGame.Content.Load<SoundEffect>("CeresMusic");

            scrollingManager = new ScrollingManager(myHero, myBackgroundSprites, myGraphics.PreferredBackBufferWidth, myBackgroundScreen);

            myTimeTravelManager = new TimeTravelManager(myGame.Content.Load<Texture2D>("timet-background"), new Vector2(0, 0),
                new Vector2(myGraphics.PreferredBackBufferWidth, myGraphics.PreferredBackBufferHeight), myGame, movingSpritesList, myHero);

            myLevelManager = new CeresLevelManager(myGame.Content.Load<Texture2D>("blueLaser"), new Vector2(-1000, -1000),
                new Vector2(myGraphics.PreferredBackBufferWidth, myGraphics.PreferredBackBufferHeight),
                myGame, this, movingSpritesList, platformsList, myFont, (Asis)myHero, myInstructionScreen, myGameOverScreen, myVictoryScreens, myCutScene, myTimeTravelManager, levelMusic);

            allSprites.Add(myGameOverScreen);
            allSprites.Add(myVictoryScreen1);
            allSprites.Add(myVictoryScreen2);
            allSprites.Add(myVictoryScreen3);
            allSprites.Add(myVictoryScreen4);
            allSprites.Add(myCutScene);
            allSprites.Add(myTimeTravelManager);
            allSprites.Add(myLevelManager);
        }
Example #5
0
        public LevelManager(Texture2D texture, Vector2 position, Vector2 screen, NebulaGame aGame, Level aLevel,
            List<Sprite> aSpritesList, List<Sprite> aPlatformsList, SpriteFont aFont, Hero anHero,
            Screen aInstructions, Screen aGameOverScreen, List<Screen> aVictoryScreenList, Screen aCutScene, TimeTravelManager aTimeTravelManager, SoundEffect backgroundMusic)
            : base(texture, position, screen, aGame, aPlatformsList, anHero)
        {
            myTexture = texture;
            myPosition = position;
            myScreenSize = screen;
            myGame = aGame;
            myLevel = aLevel;
            spritesList = aSpritesList;

            //Music for the level
            LaserSoundEffect = myGame.Content.Load<SoundEffect>("LaserSoundEffect");
            BackwardsLaserSoundEffect = myGame.Content.Load<SoundEffect>("LaserSoundEffectBackwards");
            SoundEffect GameOverSound = myGame.Content.Load<SoundEffect>("breathofdeath");
            GameOverSoundInstance = GameOverSound.CreateInstance();
            SoundEffect BackgroundMusic = backgroundMusic;
            LevelMusic = BackgroundMusic.CreateInstance();
            LevelMusic.IsLooped = true;
            SoundEffect StageClear = myGame.Content.Load<SoundEffect>("Stage1-soundclear");
            StageClearInstance = StageClear.CreateInstance();

            BoostBar[0] = new Sprite(myGame.Content.Load<Texture2D>("boost-bar1"), new Vector2(0, 0));
            BoostBar[1] = new Sprite(myGame.Content.Load<Texture2D>("boost-bar2"), new Vector2(0, 0));
            BoostBar[2] = new Sprite(myGame.Content.Load<Texture2D>("boost-bar3"), new Vector2(0, 0));
            BoostBar[3] = new Sprite(myGame.Content.Load<Texture2D>("boost-bar4"), new Vector2(0, 0));
            BoostBar[4] = new Sprite(myGame.Content.Load<Texture2D>("boost-bar5"), new Vector2(0, 0));

            foreach (Sprite s in BoostBar)
            {
                myLevel.AddSprite(s);
            }

            GameOverScreen = aGameOverScreen;
            VictoryScreenList = aVictoryScreenList;
            myCutScene = aCutScene;
            myTimeTravelManager = aTimeTravelManager;

            for (int i = 0; i < aPlatformsList.Count; i++)
            {
                platformsList.Add(aPlatformsList[i]);
            }

            // anHero.myPosition = new Vector2(xSL, ySL/2 + ySL/4);

            myPosition.Y = 0;
            //  myScreenSize.Y - myTexture.Height * 2; ;

            myFont = aFont;
            InstructionScreen = aInstructions;

            //should we pass these in as indivdual items??
            setUpSprites((Platform)platformsList[0], (Hero)spritesList[0], (HeroLaser)spritesList[1],
                (Enemy)spritesList[2], (EnemyLaser)spritesList[3]);

            EnemiesList.Add(aEnemy);

            myState = new GameState(this);
            SetUpInput2();
        }