/// <summary> /// Allows the game to run logic such as updating the world, /// checking for collisions, gathering input, and playing audio. /// </summary> /// <param name="gameTime">Provides a snapshot of timing values.</param> protected override void Update(GameTime gameTime) { #if PROFILE elapsedTime += gameTime.ElapsedGameTime; if (elapsedTime > TimeSpan.FromMilliseconds(1)) { elapsedTime -= TimeSpan.FromSeconds(1); frameRate = frameCounter; frameCounter = 0; } if (GamePad.GetState(PlayerIndex.One).DPad.Up == ButtonState.Pressed) { Thread.Sleep(5); } if (GamePad.GetState(PlayerIndex.One).DPad.Down == ButtonState.Pressed) { return; } #endif #if WINDOWS #if DEBUG // Allows the game to exit; win32 only if (GamePad.GetState(PlayerIndex.One).Buttons.Back == ButtonState.Pressed) { this.Exit(); } #endif #endif if (exitGame) { this.Exit(); } if (!(preloadedAssets && preloadedJSon)) { InputDevice2.Update(gameTime); if (InputDevice2.IsAnyControllerButtonDown(InputDevice2.PlayerButton.RightDirection) != InputDevice2.PlayerPad.NoPad) { shipRotation += 0.02f; } else if (InputDevice2.IsAnyControllerButtonDown(InputDevice2.PlayerButton.LeftDirection) != InputDevice2.PlayerPad.NoPad) { shipRotation -= 0.02f; } if (InputDevice2.IsAnyControllerButtonDown(InputDevice2.PlayerButton.Confirm) != InputDevice2.PlayerPad.NoPad) { shipVelocity += new Vector2((float)(Math.Cos(shipRotation)), (float)(Math.Sin(shipRotation))) * shipThrust; shipVelocity = Vector2.Clamp(shipVelocity, new Vector2(-0.91f), new Vector2(0.91f)); } shipPosition += shipVelocity * gameTime.ElapsedGameTime.Milliseconds; shipVelocity *= 0.99f; if (shipPosition.X < -1850) { shipPosition.X = 1850; } if (shipPosition.X > 1850) { shipPosition.X = -1850; } if (shipPosition.Y < -1300) { shipPosition.Y = 1300; } if (shipPosition.Y > 1300) { shipPosition.Y = -1300; } return; } gameIsRunningSlowly = gameTime.IsRunningSlowly; if (currentGameScreen.IsComplete) { currentGameScreen = ScreenState.SwitchToNewScreen(currentGameScreen.nextLevelState()); } InputDevice2.Update(gameTime); currentGameScreen.update(gameTime); base.Update(gameTime); }
private void loadContent2() { #if XBOX Thread.CurrentThread.SetProcessorAffinity(3); #endif backGroundPic = Content.Load <Texture2D>("titleScreenPic"); frostTreeLogo = Content.Load <Texture2D>("FrostTreeLogo"); testArrow = Content.Load <Texture2D>("gfx/testArrow"); laserPic = Content.Load <Texture2D>("gfx/laser"); healthBar = Content.Load <Texture2D>("bg"); healthColor = Content.Load <Texture2D>("healthTexture"); energyColor = Content.Load <Texture2D>("ammoTexture"); energyOverlay = Content.Load <Texture2D>("overlay"); popUpBackground = Content.Load <Texture2D>("popUpBackground"); greyBar = Content.Load <Texture2D>("grayTexture"); creditImage = Content.Load <Texture2D>("EndCredits"); heartPic = Content.Load <Texture2D>("heartSheet"); guardIcon = Content.Load <Texture2D>("guard"); prisonerIcon = Content.Load <Texture2D>("prisoner"); p2Icon = Content.Load <Texture2D>("P2Icon"); TextureLib ts = new TextureLib(GraphicsDevice); TextureLib.loadFromManifest(); aspectRatio = graphics.GraphicsDevice.Viewport.AspectRatio; bloomFilter = Content.Load <Effect>("BloomShader"); BackGroundAudio music = new BackGroundAudio(Content); music.addSong("Menu"); music.addSong("RPG Game"); AudioLib lb = new AudioLib(); tenbyFive8 = Content.Load <SpriteFont>("tenbyFive/tenbyFive8"); tenbyFive10 = Content.Load <SpriteFont>("tenbyFive/tenbyFive10"); tenbyFive14 = Content.Load <SpriteFont>("tenbyFive/tenbyFive14"); tenbyFive24 = Content.Load <SpriteFont>("tenbyFive/tenbyFive24"); tenbyFive72 = Content.Load <SpriteFont>("tenbyFive/tenbyFive72"); font = tenbyFive14; testComputerFont = tenbyFive24; levelExitVideo = Content.Load <Video>("fmv/elevatorExit"); levelEnterVideo = Content.Load <Video>("fmv/levelStart"); titleScreenVideo = Content.Load <Video>("fmv/menu"); introCutScene = Content.Load <Video>("fmv/intro"); introCutSceneCoop = Content.Load <Video>("fmv/intro COOP"); levelEnterVideoCoop = Content.Load <Video>("fmv/levelStartCOOP"); levelExitVideoCoop = Content.Load <Video>("fmv/elevatorExitCOOP"); guardEndCutScene = Content.Load <Video>("fmv/endGuardSingle"); alienEndCutScene = Content.Load <Video>("fmv/endAlienSingle"); prisonerEndCutScene = Content.Load <Video>("fmv/endPrisonerSingle"); guardEndCutSceneCoop = Content.Load <Video>("fmv/endGuardCoop"); alienEndCutSceneCoop = Content.Load <Video>("fmv/endAlienCoop"); prisonerEndCutSceneCoop = Content.Load <Video>("fmv/endPrisonerCoop"); videoPlayer = new VideoPlayer(); ChunkLib cs = new ChunkLib(); AnimationLib.loadFrameFromManifest(); GlobalGameConstants.WeaponDictionary.InitalizePriceData(); GameCampaign.InitalizeCampaignData(); GameCampaign.ResetPlayerValues("INIT", 0); // lol so many game screens currentGameScreen = new TitleScreen(TitleScreen.titleScreens.logoScreen); //currentGameScreen = new CutsceneVideoState(testVideo, ScreenState.ScreenStateType.LevelReviewState); //currentGameScreen = new CampaignLobbyState(); //currentGameScreen = new HighScoresState(true); // DANIEL UNCOMMMENT THIS LINE BEFORE YOU MERGE WITH MASTER preloadedAssets = true; }