home *** CD-ROM | disk | FTP | other *** search
- #ifndef PACMAN_H
- #define PACMAN_H
- #include "Creature.h"
- #include <2D/Animation2D.h>
-
- class Pacman : public Creature
- {
- public:
- Pacman( Scene2D * scene );
-
- void put_on_level( Level * level );
-
- virtual void life_cycle(float delta_time);
- virtual String get_name()const;
- virtual float get_size()const;
- virtual void process_collision(const Creature * cre);
- virtual bool is_solid()const;
- virtual void process_death(const Creature * cre);
- virtual bool is_alive()const;
-
- void key_up(int scan_code);
- void key_down(int scan_code);
-
- int get_score()const;
- int get_life()const;
- private:
- enum state_enum { CREATING, LIVING, DYING, DEAD };
- state_enum state;
- void change_state( state_enum new_state );
- void change_direction( Direction dir );
-
- int life;
- int score;
- Animation2D anim;
-
- Direction next_direction;
- Direction curr_direction;
-
- int internal_score_multiplier;
- };
- #endif //PACMAN_H