From 3fc98038ba1e5c6059e52eb810b3f9e535b248e3 Mon Sep 17 00:00:00 2001 From: yukirij Date: Tue, 20 Aug 2024 01:53:32 -0700 Subject: [PATCH] Add automatic play mode. --- www/js/interface.js | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/www/js/interface.js b/www/js/interface.js index 202c80d..1a38b00 100644 --- a/www/js/interface.js +++ b/www/js/interface.js @@ -552,6 +552,13 @@ const INTERFACE = { let message = null; ctx.fillStyle = INTERFACE.Color.Text; + if(INTERFACE_DATA.auto_mode !== null) { + switch(INTERFACE_DATA.auto_mode) { + case 0: message = "Auto Dawn"; break; + case 1: message = "Auto Dusk"; break; + } + } + if(GAME_DATA.state.code == GAME.Const.State.Retire) { ctx.fillStyle = INTERFACE.Color.HintCheck; message = "Retire"; @@ -720,6 +727,8 @@ const INTERFACE = { play: null, retire:false, + auto_mode: null, + replay_turn: 0, history: history, @@ -839,6 +848,10 @@ const INTERFACE = { INTERFACE_DATA.rotate = +(!INTERFACE_DATA.rotate); INTERFACE.draw(); + + if(INTERFACE_DATA.auto_mode !== null && INTERFACE_DATA.auto_mode == (GAME_DATA.turn & 1)) { + setTimeout(INTERFACE.auto_play, 500); + } } break; // Send action to server for validation. @@ -910,6 +923,17 @@ const INTERFACE = { }, auto() { + if(INTERFACE_DATA.auto_mode === null) { + console.log("auto on"); + INTERFACE_DATA.auto_mode = ((GAME_DATA.turn & 1) ^ 1); + } else { + console.log("auto off"); + INTERFACE_DATA.auto_mode = null; + } + INTERFACE.draw(); + }, + + auto_play() { function state_score(state, player) { let score = 0; let opponent = player ^ 1;