* make TreeWillOWisp vanish
*/
void vanish();
+ void start_sucking(Vector suck_target);
+ bool was_sucked;
void active_update(float elapsed_time);
void set_color(const Color& color);
virtual bool is_freezable() const { return false; }
virtual void kill_fall() { vanish(); }
+ virtual void draw(DrawingContext& context);
+
protected:
virtual bool collides(GameObject& other, const CollisionHit& hit);
HitResponse collision_player(Player& player, const CollisionHit& hit);
private:
enum MyState {
- STATE_DEFAULT, STATE_VANISHING
+ STATE_DEFAULT, STATE_VANISHING, STATE_SUCKED
};
MyState mystate;
std::auto_ptr<SoundSource> sound_source;
Vector treepos_delta;
GhostTree* tree;
+
+ Vector suck_target;
};
#endif