diff options
Diffstat (limited to 'plugins/movement')
-rw-r--r-- | plugins/movement/Makefile | 2 | ||||
-rw-r--r-- | plugins/movement/dependencies.txt | 1 | ||||
-rw-r--r-- | plugins/movement/movement.c | 21 | ||||
-rw-r--r-- | plugins/movement/movement.h | 8 |
4 files changed, 27 insertions, 5 deletions
diff --git a/plugins/movement/Makefile b/plugins/movement/Makefile index 9d23279..c75d541 100644 --- a/plugins/movement/Makefile +++ b/plugins/movement/Makefile @@ -1,4 +1,4 @@ -plugins/movement/movement.so: plugins/movement/movement.c plugins/game/game.h +plugins/movement/movement.so: plugins/movement/movement.c plugins/movement/movement.h plugins/game/game.h cc -g -shared -fpic -o plugins/movement/movement.so plugins/movement/movement.c PLUGINS := ${PLUGINS} plugins/movement/movement.so diff --git a/plugins/movement/dependencies.txt b/plugins/movement/dependencies.txt new file mode 100644 index 0000000..dc22e61 --- /dev/null +++ b/plugins/movement/dependencies.txt @@ -0,0 +1 @@ +game diff --git a/plugins/movement/movement.c b/plugins/movement/movement.c index 494c8b0..25c5f93 100644 --- a/plugins/movement/movement.c +++ b/plugins/movement/movement.c @@ -1,23 +1,36 @@ #include "../game/game.h" +enum direction last_player_move; + +void move_player(enum direction dir) +{ + int x, y; + x = y = 0; + + dir_to_xy(dir, &x, &y); + last_player_move = dir; + + move(&player, x, y); +} + static void move_up() { - move(&player, 0, -1); + move_player(UP); } static void move_left() { - move(&player, -1, 0); + move_player(LEFT); } static void move_down() { - move(&player, 0, 1); + move_player(DOWN); } static void move_right() { - move(&player, 1, 0); + move_player(RIGHT); } __attribute__((constructor)) static void init() diff --git a/plugins/movement/movement.h b/plugins/movement/movement.h new file mode 100644 index 0000000..c3afdac --- /dev/null +++ b/plugins/movement/movement.h @@ -0,0 +1,8 @@ +#ifndef _MOVEMENT_H_ +#define _MOVEMENT_H_ +#include "../game/game.h" + +extern enum direction last_player_move; +void move_player(enum direction dir); + +#endif |