From 9ecd65467232071b18a7c6f782a22264046ebf45 Mon Sep 17 00:00:00 2001 From: "Juan J. Martinez" Date: Sat, 22 Jul 2023 13:58:05 +0100 Subject: Joystick support --- src/player.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'src/player.c') diff --git a/src/player.c b/src/player.c index 96fb283..28ad76e 100644 --- a/src/player.c +++ b/src/player.c @@ -1,6 +1,6 @@ #include -#include "keyb.h" +#include "control.h" #include "vga.h" #include "sound.h" #include "map.h" @@ -133,6 +133,7 @@ static void player_dying() void player_update() { uint8_t moved = 0; + uint8_t ctl = CTL_NONE; ox = x; oy = y; @@ -143,6 +144,8 @@ void player_update() return; } + ctl = control_read(); + if (invuln) invuln--; @@ -158,7 +161,7 @@ void player_update() moved = 1; } - if (keys[KEY_UP]) + if (ctl & CTL_FIRE1) { if ((gravity == GRAVITY_OFF || momentum) && !jump) { @@ -172,7 +175,7 @@ void player_update() else jump = 0; - if (keys[KEY_RIGHT] && !keys[KEY_LEFT]) + if (ctl & CTL_RIGHT && !(ctl & CTL_LEFT)) { moved = 1; dir = DIR_RIGHT; @@ -192,7 +195,7 @@ void player_update() } } - if (keys[KEY_LEFT] && !keys[KEY_RIGHT]) + if (ctl & CTL_LEFT && !(ctl & CTL_RIGHT)) { moved = 1; dir = DIR_LEFT; -- cgit v1.2.3