1 2 #ifndef _XBOSS_H 3 #define _XBOSS_H 4 5 enum XBDir 6 { 7 UL, UR, LL, LR 8 }; 9 10 class XBoss : public StageBoss 11 { 12 public: 13 void OnMapEntry(); 14 void OnMapExit(); 15 void Run(); 16 void RunAftermove(); 17 18 private: 19 void run_tread(int index); 20 void run_body(int index); 21 void run_door(int index); 22 void run_target(int index); 23 void run_fishy_spawner(int index); 24 void run_internals(); 25 26 bool AllTargetsDestroyed(); 27 void Init(); 28 Object *CreateTread(int x, int y, int sprite); 29 Object *CreatePiece(int x, int y, int type); 30 31 void SetStates(Object *objects[], int nobjects, int state); 32 void SetDirs(Object *objects[], int nobjects, int dir); 33 34 void DeleteMonster(); 35 36 Object *mainobject; 37 Object *body[4]; 38 Object *treads[4]; 39 Object *internals; 40 Object *doors[2]; 41 Object *targets[4]; 42 Object *fishspawners[4]; 43 44 Object *piecelist[24]; 45 int npieces; 46 47 struct 48 { 49 bool initilized; 50 } X; 51 }; 52 53 54 #endif 55