From 2f5cdbfaa78db95196815768061ea59921099bfe Mon Sep 17 00:00:00 2001 From: Cam Spry Date: Mon, 2 Mar 2026 06:07:09 -0500 Subject: [PATCH] Adds name changing feature. Tweaks timing rules. --- public/game.html | 19 ++++++++++++++++++- public/images/yarnlogo.png | Bin 0 -> 7600 bytes public/menu.html | 16 ++++++++-------- server.js | 23 ++++++++++++++--------- 4 files changed, 40 insertions(+), 18 deletions(-) create mode 100644 public/images/yarnlogo.png diff --git a/public/game.html b/public/game.html index e644812..cf0364e 100644 --- a/public/game.html +++ b/public/game.html @@ -332,7 +332,9 @@
@@ -789,6 +791,21 @@ updateGameBar(); } + // === Header Functions === + + document.getElementById('change-name-btn').addEventListener('click', () => { + const newName = prompt('Enter a new name (1-20 characters):', playerName); + if (newName && newName.trim() && newName.trim() !== playerName) { + socket.emit('setName', { name: newName.trim() }); + } + }); + + document.getElementById('leave-game-btn').addEventListener('click', () => { + if (confirm('Are you sure you want to leave the game?')) { + window.location.href = '/'; + } + }); + // === Chat Functions === document.getElementById('chat-input').addEventListener('keypress', function(e) { diff --git a/public/images/yarnlogo.png b/public/images/yarnlogo.png new file mode 100644 index 0000000000000000000000000000000000000000..9b88dbe8e1aee4925f81b7c6e2c38ba71312ffbb GIT binary patch literal 7600 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 literal 0 HcmV?d00001 diff --git a/public/menu.html b/public/menu.html index 0867b57..2c263fa 100644 --- a/public/menu.html +++ b/public/menu.html @@ -3,7 +3,7 @@ - + Y.A.R.N. HTML5 @@ -104,8 +104,8 @@
-

Y.A.R.N.

-

HTML5 Edition

+ +

HTML5 Edition

@@ -127,14 +127,14 @@