PIXI Controls: Hide when physical gamepad connected
This commit is contained in:
parent
a7d628416f
commit
d833b24e7a
1 changed files with 14 additions and 3 deletions
|
@ -190,13 +190,13 @@ ONSControls.sendEvent = function(event, button) {
|
|||
//=============================================================================
|
||||
// * Toggle controls
|
||||
//=============================================================================
|
||||
ONSControls.toggle = function() {
|
||||
ONSControls.toggle = function(neededState = null) {
|
||||
const elements = [
|
||||
ONSControls._buttonsContainer, ONSControls._dPadContainer,
|
||||
ONSControls._LBsprite, ONSControls._RBsprite
|
||||
]
|
||||
for (elem of elements) {
|
||||
if (elem.visible) {
|
||||
if (elem.visible || neededState === false) {
|
||||
elem.visible = false;
|
||||
} else {
|
||||
elem.visible = true;
|
||||
|
@ -426,6 +426,17 @@ ONSControls.closeEditMode = function() {
|
|||
this.setupInteractive();
|
||||
ConfigManager.ONSConfig.saveButtonsPosition();
|
||||
}
|
||||
//=============================================================================
|
||||
// * Handle connected physical gamepad and hide ONSControls
|
||||
//=============================================================================
|
||||
ONSControls.gamepadHandler = function() {
|
||||
if (VirtualGamepad._originalNavigator.call(navigator)[0] !== null &&
|
||||
VirtualGamepad._originalNavigator.call(navigator).length !== 0) {
|
||||
this.toggle(false);
|
||||
}
|
||||
window.addEventListener("gamepadconnected", () => {this.toggle(false);});
|
||||
window.addEventListener("gamepaddisconnected", () => {this.toggle(true);});
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
@ -479,7 +490,6 @@ VirtualGamepad.gamepad = {
|
|||
VirtualGamepad._originalNavigator = navigator.getGamepads;
|
||||
VirtualGamepad.updateNavigator = function() {
|
||||
var gamepads = VirtualGamepad._originalNavigator.call(navigator);
|
||||
console.log(gamepads);
|
||||
navigator.getGamepads = function() {
|
||||
var index = ONSControls.options.gamepadIndex;
|
||||
gamepads[index] = VirtualGamepad.gamepad;
|
||||
|
@ -1005,4 +1015,5 @@ ONSControls.initialize = function() {
|
|||
this.replaceBackEvent();
|
||||
VirtualGamepad.initialize();
|
||||
Window_OmoMenuOptionsONSControls.prototype.add();
|
||||
this.gamepadHandler();
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue