#pragma once #include "shatter.h" #include "actor.h" #include using namespace std; class BufferFish : Actor { public: BufferFish(FMOD::System* sound_sys, const char* fname, DeathBall* death_ball); ~BufferFish(); virtual void update(double tick_time); virtual void render(double tick_time); void apply_force(const STVector3 & force); STVector3 _pos; STVector3 _vel; STVector3 _accel; //TODO: make private AudioLoop* _audio_loop; GravityBall* _gravity_ball; bool _is_dead; bool _is_dying; private: struct tail_cell_t { STVector3 pos; double max, min; }; deque _tail; double _tail_spawn_time; DeathBall* _death_ball; };