- if(time_msec - prev_step >= STEP_INTERVAL) {
- if(input_state[INP_FWD]) {
- player.cx += step[player.dir][0];
- player.cy += step[player.dir][1];
- prev_step = time_msec;
- printf("step[%d] %d,%d\n", player.dir, player.cx, player.cy);
- }
- if(input_state[INP_BACK]) {
- player.cx -= step[player.dir][0];
- player.cy -= step[player.dir][1];
- prev_step = time_msec;
- printf("step[%d] %d,%d\n", player.dir, player.cx, player.cy);
- }
- if(input_state[INP_LEFT]) {
- dir = (player.dir + 3) & 3;
- player.cx += step[dir][0];
- player.cy += step[dir][1];
- prev_step = time_msec;
- printf("step[%d] %d,%d\n", player.dir, player.cx, player.cy);
+ if(time_msec - prev_turn >= TURN_INTERVAL) {
+ if(input_state[INP_LTURN]) turn--;
+ if(input_state[INP_RTURN]) turn++;
+
+ if(turn) {
+ turn_player(&player, turn);
+ prev_turn = time_msec;