public void setMaps(mapSet map) { maps = map; }
public void Update(GameTime gameTime) { KeyboardState keyState = Keyboard.GetState(); GamePadState padState = GamePad.GetState(PlayerIndex.One); bool moveLeft = false; bool moveRight = false; bool accept = false; if (keyState.IsKeyUp(Keys.Enter)) { prematureEnter = false; } if (keyState.IsKeyDown(Keys.Left)) moveLeft = true; if (keyState.IsKeyDown(Keys.Right)) moveRight = true; if (keyState.IsKeyDown(Keys.Enter) && prematureEnter == false) accept = true; Vector2 thumbDir = padState.ThumbSticks.Left.ToPoint().ToVector2(); if (thumbDir.Length() > .01) { if (thumbDir.X < 0) moveLeft = true; if (thumbDir.X > 0) moveRight = true; } if (padState.IsButtonDown(Buttons.A)) accept = true; if (padState.IsButtonDown(Buttons.B)) { nextState = prevState; } if (moveLeft && !lastMoveLeft) { mapSets[selected].unselect(); selected--; if (selected % THUMBROWSIZE == 7) selected += THUMBROWSIZE; else if(selected < 0) { selected += mapSets.Count; } mapSets[selected].select(); } if (moveRight && !lastMoveRight) { mapSets[selected].unselect(); selected++; //if (selected % THUMBROWSIZE == 0) // selected -= THUMBROWSIZE; if(selected >= mapSets.Count) { selected = 0;//-= (selected % THUMBROWSIZE); } mapSets[selected].select(); } if (accept && !lastAccept) { selectedMap = mapSets[selected]; nextState = game; } lastAccept = accept; lastMoveRight = moveRight; lastMoveLeft = moveLeft; }
public void Update(GameTime gameTime) { KeyboardState keyState = Keyboard.GetState(); GamePadState padState = GamePad.GetState(PlayerIndex.One); bool moveUp = false; bool moveDown = false; bool accept = false; if (keyState.IsKeyUp(Keys.Enter)) { prematureEnter = false; } if (keyState.IsKeyDown(Keys.Up)) moveUp = true; if (keyState.IsKeyDown(Keys.Down)) moveDown = true; if (keyState.IsKeyDown(Keys.Enter) && prematureEnter == false) accept = true; Vector2 thumbDir = padState.ThumbSticks.Left.ToPoint().ToVector2(); if (thumbDir.Length() > .01) { if (thumbDir.Y > thumbDir.X) moveUp = true; if (thumbDir.Y < thumbDir.X) moveDown = true; } if (padState.IsButtonDown(Buttons.A)) accept = true; if (moveUp && !lastMoveUp) { buttons[selected].UnSelect(); selected--; // Need extra step because mod of a negative is negative selected = (selected+buttons.Count) % buttons.Count; buttons[selected].Select(); } if (moveDown && !lastMoveDown) { buttons[selected].UnSelect(); selected++; selected = (selected + buttons.Count) % buttons.Count; buttons[selected].Select(); } if (accept && !lastAccept) { if (titleString == "Map Select" && selected != triggers.Length - 1) { selectedMap = mapSets[selected]; } nextState = triggers[selected]; } lastAccept = accept; lastMoveDown = moveDown; lastMoveUp = moveUp; }