PIXI Controls: Idle animation

This commit is contained in:
OleSTEEP 2024-02-01 23:04:42 +03:00
parent 2a7101bd19
commit 62ab284977

View file

@ -32,6 +32,13 @@ ONSControls.createCanvas = function() {
canvas.view.style.right = 0; canvas.view.style.right = 0;
canvas.view.style.down = 0; canvas.view.style.down = 0;
canvas.view.style.top = 0; canvas.view.style.top = 0;
canvas.stage.interactive = true;
var idleInterval = setInterval(ONSControls.playIdleAnimation, 60000);
canvas.stage.on("pointerdown", () => {
this.stopIdleAnimation();
clearInterval(idleInterval);
idleInterval = setInterval(ONSControls.playIdleAnimation, 60000);
})
canvas.vh = (persent) => { canvas.vh = (persent) => {
return canvas.screen.height * persent; return canvas.screen.height * persent;
} }
@ -123,17 +130,40 @@ ONSControls.createAdditionalButtons = function() {
// this.SwitchButton = switchButton; // this.SwitchButton = switchButton;
} }
//============================================================================= //=============================================================================
// * Idle animation (spinning buttons) // * Check idle animation (spinning buttons)
//=============================================================================
ONSControls.idleAnimation = function() {
ONSControls.ButtonsContainer.rotation -= 0.1;
ONSControls.DPadContainer.rotation += 0.1;
ONSControls.LBsprite.rotation += 0.1;
ONSControls.RBsprite.rotation -= 0.1;
ONSControls.ShowButton.rotation += 0.1;
//ONSControls.SwitchButton.rotation -= 0.1;
}
//=============================================================================
// * Check idle animation (spinning buttons)
//=============================================================================
ONSControls.isIdlePlaying = false;
//=============================================================================
// * Play idle animation (spinning buttons)
//============================================================================= //=============================================================================
ONSControls.playIdleAnimation = function() { ONSControls.playIdleAnimation = function() {
this.controlsCanvas.ticker.add((delta) =>{ if (!ONSControls.isIdlePlaying) {
this.ButtonsContainer.rotation -= 0.1 * delta; ONSControls.isIdlePlaying = true;
this.DPadContainer.rotation += 0.1 * delta; ONSControls.controlsCanvas.ticker.add(ONSControls.idleAnimation);
this.LBcontainer.rotation += 0.1 * delta; }
this.RBcontainer.rotation -= 0.1 * delta; }
this.ShowButton.rotation += 0.1 * delta; //=============================================================================
this.SwitchButton.rotation -= 0.1 * delta; // * Stop idle animation (spinning buttons)
}); //=============================================================================
ONSControls.stopIdleAnimation = function() {
ONSControls.controlsCanvas.ticker.remove(ONSControls.idleAnimation);
ONSControls.ButtonsContainer.rotation = 0;
ONSControls.DPadContainer.rotation = 0;
ONSControls.LBsprite.rotation = 0;
ONSControls.RBsprite.rotation = 0;
ONSControls.ShowButton.rotation = 0;
//ONSControls.SwitchButton.rotation = 0;
} }
//============================================================================= //=============================================================================
// * Send event to virtual controller // * Send event to virtual controller
@ -531,6 +561,5 @@ ONSControls.initialize = function() {
this.createBumpers(); this.createBumpers();
this.createAdditionalButtons(); this.createAdditionalButtons();
this.updateButtons(); this.updateButtons();
//this.playIdleAnimation();
VirtualGamepad.connect(); VirtualGamepad.connect();
} }