Screen Wake Lock
This commit is contained in:
@@ -4,6 +4,7 @@ import * as state from './state.js';
|
||||
import * as ui from '../ui/ui.js';
|
||||
import * as timer from './timer.js';
|
||||
import audioManager from '../ui/audio.js';
|
||||
import * as screenLockManager from '../services/screenLockManager.js'; // Import screen lock manager
|
||||
|
||||
// --- Core Game Actions ---
|
||||
|
||||
@@ -12,6 +13,14 @@ export function handleGameOver() {
|
||||
state.setGameState(config.GAME_STATES.OVER);
|
||||
audioManager.play('gameOver');
|
||||
timer.stopTimer(); // Ensure timer is stopped
|
||||
|
||||
// Release screen wake lock when game is over
|
||||
screenLockManager.releaseWakeLock().then(success => {
|
||||
if (success) {
|
||||
console.log('Screen wake lock released on game over');
|
||||
}
|
||||
});
|
||||
|
||||
ui.updateGameButton();
|
||||
ui.renderPlayers(); // Update to show final state
|
||||
}
|
||||
@@ -25,6 +34,16 @@ export function startGame() {
|
||||
state.setGameState(config.GAME_STATES.RUNNING);
|
||||
audioManager.play('gameStart');
|
||||
timer.startTimer();
|
||||
|
||||
// Acquire screen wake lock when game starts
|
||||
screenLockManager.acquireWakeLock().then(success => {
|
||||
if (success) {
|
||||
console.log('Screen wake lock acquired for game');
|
||||
} else {
|
||||
console.warn('Failed to acquire screen wake lock');
|
||||
}
|
||||
});
|
||||
|
||||
ui.updateGameButton();
|
||||
ui.renderPlayers(); // Ensure active timer styling is applied
|
||||
}
|
||||
@@ -35,6 +54,14 @@ export function pauseGame() {
|
||||
state.setGameState(config.GAME_STATES.PAUSED);
|
||||
audioManager.play('gamePause');
|
||||
timer.stopTimer();
|
||||
|
||||
// Release screen wake lock when game is paused
|
||||
screenLockManager.releaseWakeLock().then(success => {
|
||||
if (success) {
|
||||
console.log('Screen wake lock released on pause');
|
||||
}
|
||||
});
|
||||
|
||||
ui.updateGameButton();
|
||||
ui.renderPlayers(); // Ensure active timer styling is removed
|
||||
}
|
||||
@@ -76,6 +103,14 @@ export function resetGame() {
|
||||
state.resetPlayersTime();
|
||||
state.setGameState(config.GAME_STATES.SETUP);
|
||||
state.setCurrentPlayerIndex(0); // Go back to first player
|
||||
|
||||
// Release screen wake lock when game is reset
|
||||
screenLockManager.releaseWakeLock().then(success => {
|
||||
if (success) {
|
||||
console.log('Screen wake lock released on reset');
|
||||
}
|
||||
});
|
||||
|
||||
audioManager.play('buttonClick'); // Or a specific reset sound?
|
||||
ui.updateGameButton();
|
||||
ui.renderPlayers();
|
||||
@@ -84,8 +119,16 @@ export function resetGame() {
|
||||
export function fullResetApp() {
|
||||
timer.stopTimer();
|
||||
state.resetToDefaults();
|
||||
|
||||
// Release screen wake lock on full reset
|
||||
screenLockManager.releaseWakeLock().then(success => {
|
||||
if (success) {
|
||||
console.log('Screen wake lock released on full reset');
|
||||
}
|
||||
});
|
||||
|
||||
audioManager.play('gameOver'); // Use game over sound for full reset
|
||||
ui.hideResetModal();
|
||||
ui.updateGameButton();
|
||||
ui.renderPlayers();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user