From e396132f7fd8bf1d6b62fb14aea8ee00cb700be8 Mon Sep 17 00:00:00 2001 From: OleSTEEP Date: Fri, 16 Feb 2024 23:17:33 +0300 Subject: [PATCH] PIXI Controls: Disable elements pressing while moving another element --- www.rus/js/plugins/VND_ONSControls.js | 41 +++++++++++++++------------ 1 file changed, 23 insertions(+), 18 deletions(-) diff --git a/www.rus/js/plugins/VND_ONSControls.js b/www.rus/js/plugins/VND_ONSControls.js index 477ee3e..3b59eda 100644 --- a/www.rus/js/plugins/VND_ONSControls.js +++ b/www.rus/js/plugins/VND_ONSControls.js @@ -341,13 +341,17 @@ ONSControls.clearInteractive = function() { //============================================================================= // * Setup drag'n drop events for element //============================================================================= +ONSControls.editButtonBressed = false; ONSControls.setupDragNDrop = function(element) { var orig_alpha = element.alpha; element.cursor = "pointer"; var onStart = function(event) { - element.alpha = orig_alpha / 2; - ONSControls._controlsCanvas.stage.on("pointermove", onMove); + if (ONSControls.editButtonBressed === false) { + ONSControls.editButtonBressed = true; + element.alpha = orig_alpha / 2; + ONSControls._controlsCanvas.stage.on("pointermove", onMove); + } } var onMove = function(event) { if (element) { @@ -358,6 +362,7 @@ ONSControls.setupDragNDrop = function(element) { var onEnd = function(event) { if (element) { ONSControls._controlsCanvas.stage.off("pointermove", onMove); + ONSControls.editButtonBressed = false; element.alpha = orig_alpha; }; } @@ -381,21 +386,6 @@ ONSControls.replaceBackEvent = function() { }); } //============================================================================= -// * Save buttons position to config -//============================================================================= -ONSControls.saveButtonsPosition = function() { - ConfigManager.ONSConfig.buttonsX = this._buttonsContainer.x; - ConfigManager.ONSConfig.buttonsY = this._buttonsContainer.y; - ConfigManager.ONSConfig.dPadX = this._dPadContainer.x; - ConfigManager.ONSConfig.dPadY = this._dPadContainer.y; - ConfigManager.ONSConfig.LBX = this._LBsprite.x; - ConfigManager.ONSConfig.LBY = this._LBsprite.y; - ConfigManager.ONSConfig.RBX = this._RBsprite.x; - ConfigManager.ONSConfig.RBY = this._RBsprite.y; - ConfigManager.ONSConfig.showX = this._showButton.x; - ConfigManager.ONSConfig.showY = this._showButton.y; -} -//============================================================================= // * Open Edit Mode //============================================================================= ONSControls.openEditMode = function() { @@ -420,7 +410,7 @@ ONSControls.closeEditMode = function() { Graphics._canvas.hidden = false; this.clearInteractive(); this.setupInteractive(); - this.saveButtonsPosition(); + ConfigManager.ONSConfig.saveButtonsPosition(); } @@ -593,6 +583,21 @@ ConfigManager.restoreDefaultConfig = function () { if (!!needsRestore) { DataManager._restoreGlobalInfo(); } } //============================================================================= +// * Save buttons position to config +//============================================================================= +ConfigManager.ONSConfig.saveButtonsPosition = function() { + this.buttonsX = ONSControls._buttonsContainer.x; + this.buttonsY = ONSControls._buttonsContainer.y; + this.dPadX = ONSControls._dPadContainer.x; + this.dPadY = ONSControls._dPadContainer.y; + this.LBX = ONSControls._LBsprite.x; + this.LBY = ONSControls._LBsprite.y; + this.RBX = ONSControls._RBsprite.x; + this.RBY = ONSControls._RBsprite.y; + this.showX = ONSControls._showButton.x; + this.showY = ONSControls._showButton.y; +} +//============================================================================= // * Update all controls data //============================================================================= ConfigManager.ONSConfig.updateData = function() {