1 /* 2 * This code is released under the GNU General Public License. See COPYING for 3 * details. Copyright 2003 John Spray: spray_john@users.sourceforge.net 4 */ 5 6 7 #ifndef UFO_H 8 #define UFO_H 9 10 #include "Vector.h" 11 #include "Game.h" 12 13 enum UfoPilotStateType{ 14 UFO_SEEKPLAYER, 15 UFO_SEARCH, 16 UFO_POTTER 17 }; 18 19 20 class Ufo { 21 public: 22 Ufo(); 23 ~Ufo(); 24 void Physics(); 25 void Collide(); 26 void Pilot(); 27 Ufo* Nearest(); 28 void TriggerShield(); 29 void StartSound(); 30 void StopSound(); 31 void Die(); 32 void Live(); 33 void Explode(); 34 int Hurt(float pain); 35 Game* game; 36 37 Vector s; 38 Vector v; 39 Vector a; 40 float thrust; 41 42 float bear; //RADIANS! 43 float bearv; 44 float beara; 45 float spawneffect; 46 float maxspawneffect; 47 float collideradius; 48 float collideradius2; 49 float sniffradius; 50 float hp; 51 52 float thinkwait; 53 54 UfoPilotStateType pilotstate; 55 56 int alive; 57 58 int soundid; 59 }; 60 61 #endif 62