X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Fbadguy%2Fyeti.hpp;h=3d55f4e43be20466c6fcf30b876f345235f0a4b7;hb=788a9153f60fb3d25a52fd184387ebbde7636719;hp=d7e16ce394513d3a92e9cca6ae36b16e2961abe4;hpb=a113d3bd1feddd510e3b2852b0d42522735eee40;p=supertux.git diff --git a/src/badguy/yeti.hpp b/src/badguy/yeti.hpp index d7e16ce39..3d55f4e43 100644 --- a/src/badguy/yeti.hpp +++ b/src/badguy/yeti.hpp @@ -23,6 +23,8 @@ #include "badguy.hpp" +#include + class Yeti : public BadGuy { public: @@ -31,14 +33,14 @@ public: void draw(DrawingContext& context); void write(lisp::Writer& writer); - void activate(); + void initialize(); void active_update(float elapsed_time); void collision_solid(const CollisionHit& hit); - bool collision_squished(Player& player); - void kill_squished(Player& player); + bool collision_squished(GameObject& object); + void kill_squished(GameObject& object); void kill_fall(); - virtual Yeti* clone() const { return new Yeti(*this); } + virtual Yeti* clone() const { return new Yeti((Yeti&)*this); } private: void run(); @@ -48,6 +50,8 @@ private: void summon_snowball(); void jump_down(); + void draw_hit_points(DrawingContext& context); + void take_hit(Player& player); enum YetiState { @@ -62,7 +66,7 @@ private: Timer safe_timer; int stomp_count; int hit_points; - std::string dead_script; + std::auto_ptr hud_head; }; #endif