Started some work on the yeti boss
[supertux.git] / src / badguy / yeti.h
1 #ifndef __YETI_H__
2 #define __YETI_H__
3
4 #include "badguy.h"
5
6 class Yeti : public BadGuy
7 {
8 public:
9   Yeti(const lisp::Lisp& lisp);
10   ~Yeti();
11
12   void write(lisp::Writer& writer);
13   void active_action(float elapsed_time);
14   HitResponse collision_solid(GameObject& other, const CollisionHit& hit);
15   bool collision_squished(Player& player);
16
17 private:
18   void go_right();
19   void go_left();
20   void angry_jumping();
21   void drop_stalactite();
22   
23   enum YetiState {
24     INIT,
25     ANGRY_JUMPING,
26     THROW_SNOWBALL,
27     GO_RIGHT,
28     GO_LEFT
29   };
30   enum Side {
31     LEFT,
32     RIGHT
33   };
34   Side side;
35   YetiState state;
36   Timer2 timer;
37   int jumpcount;
38   Mix_Chunk* sound_gna;
39 };
40
41 #endif
42