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
|
// * Toggle controls
|
||||||
//=============================================================================
|
//=============================================================================
|
||||||
ONSControls.toggle = function() {
|
ONSControls.toggle = function(neededState = null) {
|
||||||
const elements = [
|
const elements = [
|
||||||
ONSControls._buttonsContainer, ONSControls._dPadContainer,
|
ONSControls._buttonsContainer, ONSControls._dPadContainer,
|
||||||
ONSControls._LBsprite, ONSControls._RBsprite
|
ONSControls._LBsprite, ONSControls._RBsprite
|
||||||
]
|
]
|
||||||
for (elem of elements) {
|
for (elem of elements) {
|
||||||
if (elem.visible) {
|
if (elem.visible || neededState === false) {
|
||||||
elem.visible = false;
|
elem.visible = false;
|
||||||
} else {
|
} else {
|
||||||
elem.visible = true;
|
elem.visible = true;
|
||||||
|
@ -426,6 +426,17 @@ ONSControls.closeEditMode = function() {
|
||||||
this.setupInteractive();
|
this.setupInteractive();
|
||||||
ConfigManager.ONSConfig.saveButtonsPosition();
|
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._originalNavigator = navigator.getGamepads;
|
||||||
VirtualGamepad.updateNavigator = function() {
|
VirtualGamepad.updateNavigator = function() {
|
||||||
var gamepads = VirtualGamepad._originalNavigator.call(navigator);
|
var gamepads = VirtualGamepad._originalNavigator.call(navigator);
|
||||||
console.log(gamepads);
|
|
||||||
navigator.getGamepads = function() {
|
navigator.getGamepads = function() {
|
||||||
var index = ONSControls.options.gamepadIndex;
|
var index = ONSControls.options.gamepadIndex;
|
||||||
gamepads[index] = VirtualGamepad.gamepad;
|
gamepads[index] = VirtualGamepad.gamepad;
|
||||||
|
@ -1005,4 +1015,5 @@ ONSControls.initialize = function() {
|
||||||
this.replaceBackEvent();
|
this.replaceBackEvent();
|
||||||
VirtualGamepad.initialize();
|
VirtualGamepad.initialize();
|
||||||
Window_OmoMenuOptionsONSControls.prototype.add();
|
Window_OmoMenuOptionsONSControls.prototype.add();
|
||||||
|
this.gamepadHandler();
|
||||||
}
|
}
|
Loading…
Add table
Add a link
Reference in a new issue