diff --git a/templates/team_setup.html b/templates/team_setup.html
index 6d6d2f3..fa386f2 100644
--- a/templates/team_setup.html
+++ b/templates/team_setup.html
@@ -260,18 +260,28 @@
e.preventDefault();
const key = e.key.toUpperCase();
+ // Entferne Event-Listener sofort
+ document.removeEventListener('keydown', handleKeyPress);
+
// Prüfe ob Taste bereits vergeben
- const usedKeys = Object.values(keyMappings).filter((v, k) => k !== playerNum);
- if (usedKeys.includes(key)) {
+ let isUsed = false;
+ for (let i = 1; i <= 4; i++) {
+ if (i !== playerNum && keyMappings[i] === key) {
+ isUsed = true;
+ break;
+ }
+ }
+
+ if (isUsed) {
alert(`Die Taste "${key}" ist bereits vergeben!`);
input.value = keyMappings[playerNum];
+ input.blur();
return;
}
keyMappings[playerNum] = key;
input.value = key;
input.blur();
- document.removeEventListener('keydown', handleKeyPress);
};
document.addEventListener('keydown', handleKeyPress);