feat(controls): redefinició de tecles i botons del mando des del menú de servei

This commit is contained in:
JailDesigner committed 2026-04-29 19:54:47 +02:00
1 parent 4739354875
commit 37fdcb4751
15 files changed
+1169 -80

No files matched your search

+18 -15
View File
@@ -334,24 +334,27 @@ GameScene::GameScene(Config config)
if (p != nullptr) { spawnWhip(*p); }
});
// Controls per jugador: P1 amb fletxes, P2 amb WASD. Cada Player
// escolta les seues pròpies tecles dins del seu `update`, no hi ha
// estat global d'input.
// Controls per jugador: P1 amb fletxes, P2 amb WASD per defecte. Les
// vinculacions actives venen d'`Options::controls()`, que s'inicialitza
// amb els defaults i pot ser sobreescrita pel menú de servei (i
// persistida a `config.yaml`).
const auto& kb_p1 = Options::controls().keyboard_p1;
const auto& kb_p2 = Options::controls().keyboard_p2;
const Player::Controls CONTROLS_P1{
.up = Defaults::KeysGame::UP,
.down = Defaults::KeysGame::DOWN,
.left = Defaults::KeysGame::LEFT,
.right = Defaults::KeysGame::RIGHT,
.jump = Defaults::KeysGame::JUMP,
.attack = Defaults::KeysGame::ATTACK,
.up = kb_p1.up,
.down = kb_p1.down,
.left = kb_p1.left,
.right = kb_p1.right,
.jump = kb_p1.jump,
.attack = kb_p1.attack,
};
const Player::Controls CONTROLS_P2{
.up = Defaults::KeysGameP2::UP,
.down = Defaults::KeysGameP2::DOWN,
.left = Defaults::KeysGameP2::LEFT,
.right = Defaults::KeysGameP2::RIGHT,
.jump = Defaults::KeysGameP2::JUMP,
.attack = Defaults::KeysGameP2::ATTACK,
.up = kb_p2.up,
.down = kb_p2.down,
.left = kb_p2.left,
.right = kb_p2.right,
.jump = kb_p2.jump,
.attack = kb_p2.attack,
};
// Spawn lligat a la porta: tots els jugadors apareixen davant del
// passadís de sortida. `computeSpawn` deriva les coordenades de