O TEMA DO FÓRUM ESTÁ EM MANUTENÇÃO. FEEDBACKS AQUI: ACESSAR

Como Mudar a tecla para fechar o menu? [Mv]

Iniciado por TheHopelessBoy, 16/01/2022 às 07:55

Olá. Eu quero que a aba de itens e o menu (skills, opções,etc) sejam acessados por teclas diferentes - a aba de itens pela tecla X e o menu pela tecla C. Até agora, consegui fazer que, ao pressionar C, você abra o menu. Mas, ao fechar, você ainda usa o X, e não quero isso. Quero que você abra e feche o menu com a tecla C. Aqui está meu código até agora:

//KeyMapping

    Input.keyMapper["67"] = "Menu"

    Scene_Map.prototype.isMenuCalled = function() {

        return Input.isTriggered('Menu') || TouchInput.isCancelled();

    };



// O menu:
Scene_Menu.prototype.createCommandWindow = function() {

this._commandWindow = new Window_MenuCommand(0, 0);

      this._commandWindow.setHandler('item',      this.commandItem.bind(this));

      this._commandWindow.setHandler('options',   this.commandOptions.bind(this));

      this._commandWindow.setHandler('save',      this.commandSave.bind(this));

      this._commandWindow.setHandler('gameEnd',   this.commandGameEnd.bind(this));



//Acho que é isso que tenho que mudar, mas não sei como:

    this._commandWindow.setHandler('cancel',    this.popScene.bind(this));



    this.addWindow(this._commandWindow);


Como posso mudar?

16/01/2022 às 13:23 #1 Última edição: 16/01/2022 às 13:27 por Crixus
Ao que vi você apenas injetou uma tecla a mais, ou seja, as outras ainda existe, seria necessário remover as outras que usam X e Esc.
Tente modificar o Object de teclas diretamente.
No RPG_CORE está assim:
Input.keyMapper = {
    9: "tab", // tab
    13: "ok", // enter
    16: "shift", // shift
    17: "control", // control
    18: "control", // alt
    27: "escape", // escape
    32: "ok", // space
    33: "pageup", // pageup
    34: "pagedown", // pagedown
    37: "left", // left arrow
    38: "up", // up arrow
    39: "right", // right arrow
    40: "down", // down arrow
    45: "escape", // insert
    81: "pageup", // Q
    87: "pagedown", // W
    88: "escape", // X
    90: "ok", // Z
    96: "escape", // numpad 0
    98: "down", // numpad 2
    100: "left", // numpad 4
    102: "right", // numpad 6
    104: "up", // numpad 8
    120: "debug" // F9
};


Basta modificar o objeto 27 para 67 e remover o 45, 88 e o 96, ficando assim:
Input.keyMapper = {
    9: "tab", // tab
    13: "ok", // enter
    16: "shift", // shift
    17: "control", // control
    18: "control", // alt
    67: "escape", // C
    32: "ok", // space
    33: "pageup", // pageup
    34: "pagedown", // pagedown
    37: "left", // left arrow
    38: "up", // up arrow
    39: "right", // right arrow
    40: "down", // down arrow
    81: "pageup", // Q
    87: "pagedown", // W
    90: "ok", // Z
    98: "down", // numpad 2
    100: "left", // numpad 4
    102: "right", // numpad 6
    104: "up", // numpad 8
    120: "debug" // F9
};


Insira em um Plugin ou execute em um comando de evento no arranque do jogo.
O mapeamento do GamePad e do Mouse ficam em outros Objects.