/// <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) { // escape key missing // Add your update logic here KeyboardState kb = Keyboard.GetState(); // Code for start screen if (gameState == GameState.StartScreen) { CurrentBackgroundC = Color.Black; if (kb.IsKeyDown(Keys.Up) && oldKb != kb) { selecterArrow.Y = selecterArrow.Y - 100; } if (kb.IsKeyDown(Keys.Down) && oldKb != kb) { selecterArrow.Y = selecterArrow.Y + 100; } if (selecterArrow.Y < 500) { selecterArrow.Y = 700; } if (selecterArrow.Y > 700) { selecterArrow.Y = 500; } if (kb.IsKeyDown(Keys.Enter) && selecterArrow.Y == 500) { gameState = GameState.Instructions; } if (kb.IsKeyDown(Keys.Enter) && selecterArrow.Y == 600) { gameState = GameState.Game; } if (kb.IsKeyDown(Keys.Enter) && selecterArrow.Y == 700) { this.Exit(); } } // Code for insturction screen if (gameState == GameState.Instructions) { if (kb.IsKeyDown(Keys.Escape) && oldKb != kb) { gameState = GameState.StartScreen; } if (kb.IsKeyDown(Keys.Right) && instructionState == InstructionState.Page1 && oldKb != kb) { instructionState = InstructionState.Page2; } else if (kb.IsKeyDown(Keys.Right) && instructionState == InstructionState.Page2 && oldKb != kb) { instructionState = InstructionState.Page3; } else if (kb.IsKeyDown(Keys.Left) && instructionState == InstructionState.Page3 && oldKb != kb) { instructionState = InstructionState.Page2; } else if (kb.IsKeyDown(Keys.Left) && instructionState == InstructionState.Page2 && oldKb != kb) { instructionState = InstructionState.Page1; } } if (gameState == GameState.Game) { CurrentBackgroundC = firstMap.FLOORCOLOR; p1.update(1, p2); p2.update(2, p1); p1Border = new Rectangle(p1.pRect.X + 3, p1.pRect.Y + 3, p1.pRect.Width - 6, p1.pRect.Height - 6); p2Border = new Rectangle(p2.pRect.X + 3, p2.pRect.Y + 3, p2.pRect.Width - 6, p2.pRect.Height - 6); } oldKb = kb; base.Update(gameTime); }