diff options
| author | Ben Beltran <ben@nsovocal.com> | 2012-04-16 09:39:52 -0500 |
|---|---|---|
| committer | Ben Beltran <ben@nsovocal.com> | 2012-04-16 09:39:52 -0500 |
| commit | 10a0e290ac07524dc129cc2b227b0f9e95df0f8e (patch) | |
| tree | ed518c45c45d96e37e28640f745496fffb8e1325 /game_overwatch.h | |
first commit
Diffstat (limited to 'game_overwatch.h')
| -rw-r--r-- | game_overwatch.h | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/game_overwatch.h b/game_overwatch.h new file mode 100644 index 0000000..ecaa069 --- /dev/null +++ b/game_overwatch.h @@ -0,0 +1,44 @@ +/* + * Module Name: Game_overwatch + * Description: Keep track of all the game citizens and their interactions. + * This is the heavy part of the engine. + */ + +class Actor; +class Map; +class Game_overwatch +{ + + //citizen linked list. + struct citizen{ + Actor * val; + citizen * next; + }; + + + citizen * head; + + int population, dudelock; + int leftkey, rightkey, zkey, xkey, ckey; + + +public: + Game_overwatch(void); + ~Game_overwatch(void); + + void move_in(Actor *); + void move_out(Actor *); + int get_population(); + void check_collisions(Map *); + static bool line_colliding(int, int, int, int, int, int, int, int, int); + void reset_collisions(); + void collision_callback(Actor *, Actor *); + void draw(SDL_Surface *, Map *); + void act(SDL_Surface *, Map *, bool[]); + void animate(); + void handlephysics(Map*, int, int); + void handleinput(Actor *, bool[]); + void kill(Actor *); + void dieloop(); + +};
\ No newline at end of file |