mirror of
https://github.com/pagefaultgames/pokerogue.git
synced 2025-07-15 12:52:20 +02:00
Enable swapping A and B buttons on keyboard controls, swaps action and cancel between z and x
This commit is contained in:
parent
89411d7b3e
commit
3a0c4fe06f
@ -259,6 +259,11 @@ export default class BattleScene extends SceneBase {
|
|||||||
this.ui?.update();
|
this.ui?.update();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
updateKeyboard () {
|
||||||
|
this.inputController.setupKeyboardControls();
|
||||||
|
this.uiInputs.updateKeyboard();
|
||||||
|
}
|
||||||
|
|
||||||
launchBattle() {
|
launchBattle() {
|
||||||
this.arenaBg = this.add.sprite(0, 0, 'plains_bg');
|
this.arenaBg = this.add.sprite(0, 0, 'plains_bg');
|
||||||
this.arenaBgTransition = this.add.sprite(0, 0, 'plains_bg');
|
this.arenaBgTransition = this.add.sprite(0, 0, 'plains_bg');
|
||||||
|
@ -336,8 +336,8 @@ export class InputsController {
|
|||||||
[Button.LEFT]: [keyCodes.LEFT, keyCodes.A],
|
[Button.LEFT]: [keyCodes.LEFT, keyCodes.A],
|
||||||
[Button.RIGHT]: [keyCodes.RIGHT, keyCodes.D],
|
[Button.RIGHT]: [keyCodes.RIGHT, keyCodes.D],
|
||||||
[Button.SUBMIT]: [keyCodes.ENTER],
|
[Button.SUBMIT]: [keyCodes.ENTER],
|
||||||
[Button.ACTION]: [keyCodes.SPACE, keyCodes.Z],
|
[Button.ACTION]: this.scene.abSwapped ? [keyCodes.SPACE, keyCodes.Z] : [keyCodes.BACKSPACE, keyCodes.X],
|
||||||
[Button.CANCEL]: [keyCodes.BACKSPACE, keyCodes.X],
|
[Button.CANCEL]: this.scene.abSwapped ? [keyCodes.BACKSPACE, keyCodes.X] : [keyCodes.SPACE, keyCodes.Z],
|
||||||
[Button.MENU]: [keyCodes.ESC, keyCodes.M],
|
[Button.MENU]: [keyCodes.ESC, keyCodes.M],
|
||||||
[Button.STATS]: [keyCodes.SHIFT, keyCodes.C],
|
[Button.STATS]: [keyCodes.SHIFT, keyCodes.C],
|
||||||
[Button.CYCLE_SHINY]: [keyCodes.R],
|
[Button.CYCLE_SHINY]: [keyCodes.R],
|
||||||
@ -385,6 +385,7 @@ export class InputsController {
|
|||||||
listenInputKeyboard(): void {
|
listenInputKeyboard(): void {
|
||||||
this.buttonKeys.forEach((row, index) => {
|
this.buttonKeys.forEach((row, index) => {
|
||||||
for (const key of row) {
|
for (const key of row) {
|
||||||
|
key.removeAllListeners()
|
||||||
key.on('down', () => {
|
key.on('down', () => {
|
||||||
this.events.emit('input_down', {
|
this.events.emit('input_down', {
|
||||||
controller_type: 'keyboard',
|
controller_type: 'keyboard',
|
||||||
|
@ -160,7 +160,9 @@ export function setSetting(scene: BattleScene, setting: Setting, value: integer)
|
|||||||
scene.inputController.setGamepadSupport(settingOptions[setting][value] !== 'Disabled');
|
scene.inputController.setGamepadSupport(settingOptions[setting][value] !== 'Disabled');
|
||||||
break;
|
break;
|
||||||
case Setting.Swap_A_and_B:
|
case Setting.Swap_A_and_B:
|
||||||
|
console.log("Swapping A and B")
|
||||||
scene.abSwapped = settingOptions[setting][value] !== 'Disabled';
|
scene.abSwapped = settingOptions[setting][value] !== 'Disabled';
|
||||||
|
scene.updateKeyboard();
|
||||||
break;
|
break;
|
||||||
case Setting.Touch_Controls:
|
case Setting.Touch_Controls:
|
||||||
scene.enableTouchControls = settingOptions[setting][value] !== 'Disabled' && hasTouchscreen();
|
scene.enableTouchControls = settingOptions[setting][value] !== 'Disabled' && hasTouchscreen();
|
||||||
|
@ -14,19 +14,23 @@ export interface ActionKeys {
|
|||||||
export class UiInputs {
|
export class UiInputs {
|
||||||
private scene: Phaser.Scene;
|
private scene: Phaser.Scene;
|
||||||
private events: Phaser.Events;
|
private events: Phaser.Events;
|
||||||
private inputsController: InputsController;
|
private inputController: InputsController;
|
||||||
|
|
||||||
constructor(scene: Phaser.Scene, inputsController: InputsController) {
|
constructor(scene: Phaser.Scene, inputController: InputsController) {
|
||||||
this.scene = scene;
|
this.scene = scene;
|
||||||
this.inputsController = inputsController;
|
this.inputController = inputController;
|
||||||
this.init();
|
this.init();
|
||||||
}
|
}
|
||||||
|
|
||||||
init(): void {
|
init(): void {
|
||||||
this.events = this.inputsController.events;
|
this.events = this.inputController.events;
|
||||||
this.listenInputs();
|
this.listenInputs();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
updateKeyboard () {
|
||||||
|
this.inputController.setupKeyboardControls();
|
||||||
|
}
|
||||||
|
|
||||||
listenInputs(): void {
|
listenInputs(): void {
|
||||||
this.events.on('input_down', (event) => {
|
this.events.on('input_down', (event) => {
|
||||||
const actions = this.getActionsKeyDown();
|
const actions = this.getActionsKeyDown();
|
||||||
|
Loading…
Reference in New Issue
Block a user