index 219141884dd23ba9a59b2643135c78fcd83568e5..9b7f2391ddc78d4aa3fdb7ef0777ba46c9001e61 100644 (file)
--- a/game.c
+++ b/game.c
return ((l - r1 - r2) <= 0);
}
-void g_player_does(unsigned int id, DoesCode code) {
+void g_player_does(unsigned int id, DoesBits code) {
assert(id < MAX_PLAYERS);
- g_player[id].updated = true;
- switch(code) {
- case DOES_UP: moveplayer(id, SPEED); break;
- case DOES_DOWN: moveplayer(id, -SPEED); break;
- case DOES_LEFT: roteplayer(id, -ROTATE); break;
- case DOES_RIGHT: roteplayer(id, ROTATE); break;
- case DOES_FIRE: fireplayer(id); break;
- }
+
+ if(code.up)
+ moveplayer(id, SPEED);
+ if(code.down)
+ moveplayer(id, -SPEED);
+ if(code.left)
+ roteplayer(id, -ROTATE);
+ if(code.right)
+ roteplayer(id, ROTATE);
+ if(code.fire)
+ fireplayer(id);
}
void g_update() {