Changed player-movement. From UP, DOWN, LEFT, RIGHT to LEFT, RIGHT. Turn relative to your snake's head.

This commit is contained in:
2025-12-18 14:09:04 +01:00
parent 5e6b042921
commit 0074ecd57b
4 changed files with 50 additions and 47 deletions

View File

@@ -47,34 +47,26 @@ static Simulation_Game_Input gather_input_for_local_player(uint8_t local_player_
switch(local_player_index) {
case 0: {
return (Simulation_Game_Input) {
.up = IsKeyDown(KEY_W),
.down = IsKeyDown(KEY_S),
.right = IsKeyDown(KEY_D),
.left = IsKeyDown(KEY_A)
.right = IsKeyPressed(KEY_D),
.left = IsKeyPressed(KEY_A)
};
}
case 1: {
return (Simulation_Game_Input) {
.up = IsKeyDown(KEY_UP),
.down = IsKeyDown(KEY_DOWN),
.right = IsKeyDown(KEY_RIGHT),
.left = IsKeyDown(KEY_LEFT)
.right = IsKeyPressed(KEY_RIGHT),
.left = IsKeyPressed(KEY_LEFT)
};
}
case 2: {
return (Simulation_Game_Input) {
.up = IsKeyDown(KEY_I),
.down = IsKeyDown(KEY_K),
.right = IsKeyDown(KEY_L),
.left = IsKeyDown(KEY_J)
.right = IsKeyPressed(KEY_L),
.left = IsKeyPressed(KEY_J)
};
}
case 3: {
return (Simulation_Game_Input) {
.up = IsKeyDown(KEY_T),
.down = IsKeyDown(KEY_G),
.right = IsKeyDown(KEY_H),
.left = IsKeyDown(KEY_F)
.right = IsKeyPressed(KEY_H),
.left = IsKeyPressed(KEY_F)
};
}
default: {
@@ -96,10 +88,8 @@ static void state_tick(Presentation_State *state) {
{ // Push local input to queue.
if(instance->amount_of_local_players == 1) { // If playing alone (either singleplayer or online-multiplayer), more inputs are allowed.
Simulation_Game_Input input = (Simulation_Game_Input) {
.up = IsKeyDown(KEY_UP) || IsKeyDown(KEY_W),
.down = IsKeyDown(KEY_DOWN) || IsKeyDown(KEY_S),
.right = IsKeyDown(KEY_RIGHT) || IsKeyDown(KEY_D),
.left = IsKeyDown(KEY_LEFT) || IsKeyDown(KEY_A)
.right = IsKeyPressed(KEY_RIGHT) || IsKeyPressed(KEY_D),
.left = IsKeyPressed(KEY_LEFT) || IsKeyPressed(KEY_A)
};
Locally_Controlled_Player *player = &instance->locally_controlled_players[0];