Ejemplo n.º 1
0
 public Level(NebulaGame aGame, GraphicsDeviceManager aGraphics, Hero aHero, SpriteBatch aSpriteBatch)
 {
     myGame = aGame;
     myGraphics = aGraphics;
     myHero = aHero;
     spriteBatch = aSpriteBatch;
     LoadSprites();
 }
Ejemplo n.º 2
0
        public ScrollingManager(Hero anHero, List<BackgroundSprite> backgroundsList, float ScreenWidth, Screen aBackgroundScreen)
        {
            myHero = anHero;
            myBackgrounds = backgroundsList;
            //caculating the size of the whole background put together
            foreach (BackgroundSprite bs in myBackgrounds)
            {
                backgroundLength += bs.size.Width;
            }
            CameraSize = ScreenWidth;
            //left interval is 10% of screen
            LEFT_INTERVAL = CameraSize * .10;
            //right interval is 40% of screen, so the player can see what is coming next
            RIGHT_INTERVAL = CameraSize * .60;
            MAX_CAMERA_POS = backgroundLength;

            myBackgroundScreen = aBackgroundScreen;
        }
Ejemplo n.º 3
0
        public TimeTravelManager(Texture2D texture, Vector2 position, Vector2 screen, NebulaGame aGame,
            List<Sprite> aPositionsList, Hero anHero)
            : base(texture, position)
        {
            myTexture = texture;
            myPosition = position;
            myScale = new Vector2(1, 2);
            myGame = aGame;
            myScreenSize = screen;
            PositionsList = aPositionsList;
            myHero = anHero;

            TimeTravelSound = myGame.Content.Load<SoundEffect>("warp");
            TimeTravelSoundInstance = TimeTravelSound.CreateInstance();
            TimeTravelSoundInstance.IsLooped = true;

            myState = new IdleState(this);
            TimeStack = new Stack();

            SetUpInput();
        }
Ejemplo n.º 4
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();
        }
Ejemplo n.º 5
0
 //this is virtual so you can override it if you want.
 //like if have more than the "basic" sprites of the level
 //EG 1 Asis and her laser, 1 Platform type of platform, and 1 type of enemy and it's Laser
 public virtual void setUpSprites(Platform aPlatform, Hero anHero, HeroLaser anLaser, Enemy anEnemy, EnemyLaser anELaser)
 {
     myPlatform = aPlatform;
     aHero = anHero;
     aLaser = anLaser;
     aEnemy = anEnemy;
     eLaser = anELaser;
 }