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)); }
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); }
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(); }