public override void processInput(int _event, int[] args) { XNAButton.State state = this.btnBack.handleInput(_event, args); if (GamePad.GetState(PlayerIndex.One).Buttons.Back != ButtonState.Pressed && state != XNAButton.State.RELEASED) { return; } if (this.isIngame()) { this.ae.getSceneGame().stateTransitionPauseMenu(5); } else { this.ae.getSceneMenu().stateTransition(39); } if (GamePad.GetState(PlayerIndex.One).Buttons.Back == ButtonState.Pressed) { return; } this.m_scene.playSound(20); }
public XNAButton.State handleInput(int _event, int[] args) { int x = args[1]; int y = args[2]; if (this.contains(x, y) || this.isAnimating()) { switch (_event) { case 0: case 1: this.state = XNAButton.State.PRESSED; break; case 2: if (this.type < XNAButton.Type.ACHIEVEMENT_BTN_1 || this.type > XNAButton.Type.ACHIEVEMENT_BTN_18) { this.state = XNAButton.State.ANIM_COLOR; this.stateTimer = 0; break; } break; case 3: if (this.type >= XNAButton.Type.ACHIEVEMENT_BTN_1 && this.type <= XNAButton.Type.ACHIEVEMENT_BTN_18) { this.state = XNAButton.State.ANIM_COLOR; this.stateTimer = 0; break; } break; } } else if (_event == 1 && !this.contains(x, y) && !this.isAnimating()) { this.state = XNAButton.State.IDLE; } return(this.state); }
public void update(int timeStep) { if (this.isAnimating()) { this.stateTimer += timeStep; switch (this.state) { case XNAButton.State.ANIM_COLOR: if (this.stateTimer <= 100) { break; } this.state = XNAButton.State.ANIM_GRAY; this.stateTimer = 0; break; case XNAButton.State.ANIM_GRAY: if (this.stateTimer <= 100) { break; } this.state = XNAButton.State.ANIM_DONE; this.stateTimer = 0; break; case XNAButton.State.ANIM_DONE: this.state = XNAButton.State.RELEASED; break; } } else { this.state = XNAButton.State.IDLE; this.stateTimer = 0; } }
public XNAButton(int x, int y, int w, int h, XNAButton.Type t) { this.pos = new Rectangle(x, y, w, h); this.type = t; this.state = XNAButton.State.IDLE; this.stateTimer = 0; this.Highlight = false; this.top_offset = 0; if (XNAButton.tm == null) { XNAButton.tm = AppEngine.getCanvas().getTextManager(); } switch (this.type) { case XNAButton.Type.BACK_BTN: this.texture = JavaLib.contentManager.Load <Texture2D>("XNAMenu//back_press"); break; case XNAButton.Type.LEADERBOARD_BTN_1: case XNAButton.Type.LEADERBOARD_BTN_2: case XNAButton.Type.LEADERBOARD_BTN_3: case XNAButton.Type.LEADERBOARD_BTN_4: case XNAButton.Type.LEADERBOARD_BTN_5: case XNAButton.Type.LEADERBOARD_BTN_6: case XNAButton.Type.LEADERBOARD_BTN_7: case XNAButton.Type.LEADERBOARD_BTN_8: case XNAButton.Type.LEADERBOARD_BTN_9: this.texture = JavaLib.contentManager.Load <Texture2D>("XNAMenu//leaderboard_icon_" + (object)(int)this.type); this.texture_high = JavaLib.contentManager.Load <Texture2D>("XNAMenu//leaderboard_icon_" + (object)(int)this.type + "_high"); break; case XNAButton.Type.ACHIEVEMENT_BTN_1: case XNAButton.Type.ACHIEVEMENT_BTN_2: case XNAButton.Type.ACHIEVEMENT_BTN_3: case XNAButton.Type.ACHIEVEMENT_BTN_4: case XNAButton.Type.ACHIEVEMENT_BTN_5: case XNAButton.Type.ACHIEVEMENT_BTN_6: case XNAButton.Type.ACHIEVEMENT_BTN_7: case XNAButton.Type.ACHIEVEMENT_BTN_8: case XNAButton.Type.ACHIEVEMENT_BTN_9: case XNAButton.Type.ACHIEVEMENT_BTN_10: case XNAButton.Type.ACHIEVEMENT_BTN_11: case XNAButton.Type.ACHIEVEMENT_BTN_12: case XNAButton.Type.ACHIEVEMENT_BTN_13: case XNAButton.Type.ACHIEVEMENT_BTN_14: case XNAButton.Type.ACHIEVEMENT_BTN_15: case XNAButton.Type.ACHIEVEMENT_BTN_16: case XNAButton.Type.ACHIEVEMENT_BTN_17: case XNAButton.Type.ACHIEVEMENT_BTN_18: this.texture = new Texture2D(JavaLib.GraphicsDevice, w, h); Color[] data = new Color[w * h]; Color color = new Color(100, 100, 100, 30); for (int index = 0; index < data.Length; ++index) { data[index] = color; } this.texture.SetData <Color>(data); this.label = XNAButton.AC == null ? "Achievment " + (object)(int)(this.type - 10) : XNAButton.AC.ElementAt <Achievement>((int)(this.type - 10)).Name; break; case XNAButton.Type.UNLOCK_GAME: this.texture = JavaLib.contentManager.Load <Texture2D>("XNAMenu//menu_unlock"); break; case XNAButton.Type.UNLOCKFULL_STORE: case XNAButton.Type.UNLOCKFULL_BACK: this.texture = new Texture2D(JavaLib.GraphicsDevice, w, h); this.label = this.type == XNAButton.Type.UNLOCKFULL_BACK ? XNAButton.tm.getString(1880) : XNAButton.tm.getString(1879); break; } if (XNAButton.AchievementLocked != null) { return; } XNAButton.AchievementLocked = new Image(JavaLib.contentManager.Load <Texture2D>("XNAMenu//achievement_locked")); XNAButton.AchievementUnlocked = new Image(JavaLib.contentManager.Load <Texture2D>("XNAMenu//achievement_unlocked")); }
public void setState(XNAButton.State newState) { this.state = newState; }