#include "Quaternions.h"
#include "Skeleton.h"
#include "Models.h"
-#include "Constants.h"
#include "Terrain.h"
#include "Sprite.h"
#include <cmath>
#define rabbittype 0
#define wolftype 1
-class Person
+struct Person
{
- public:
- Person();
- ~Person();
-
int whichpatchx;
int whichpatchz;
float turnspeed;
int aitype;
- int aitarget;
float aiupdatedelay;
float losupdatedelay;
int ally;
}
int getCrouch();
- bool wasStop();
- bool isStop();
+ bool wasStop()
+ {
+ return animation_bits[currentanimation] & ab_stop;
+ }
+ bool isStop()
+ {
+ return animation_bits[targetanimation] & ab_stop;
+ }
int getStop();
bool wasSneak();
bool isSneak();
int getSneak();
- bool wasRun();
- bool isRun();
+ bool wasRun()
+ {
+ return animation_bits[currentanimation] & ab_run;
+ }
+ bool isRun()
+ {
+ return animation_bits[targetanimation] & ab_run;
+ }
int getRun();
-
- bool wasLanding();
- bool isLanding();
+
+ bool wasLanding()
+ {
+ return animation_bits[currentanimation] & ab_land;
+ }
+ bool isLanding()
+ {
+ return animation_bits[targetanimation] & ab_land;
+ }
int getLanding();
-
- bool wasLandhard();
- bool isLandhard();
+
+ bool wasLandhard()
+ {
+ return animation_bits[currentanimation] & ab_landhard;
+ }
+ bool isLandhard()
+ {
+ return animation_bits[targetanimation] & ab_landhard;
+ }
int getLandhard();
-
- bool isFlip();
- bool wasFlip();
-
+
+ bool wasFlip()
+ {
+ return animation_bits[currentanimation] & ab_flip;
+ }
+ bool isFlip()
+ {
+ return animation_bits[targetanimation] & ab_flip;
+ }
+
bool jumpclimb;
-
- bool isWallJump();
+
+ bool isWallJump()
+ {
+ return animation_bits[targetanimation] & ab_walljump;
+ }
void Reverse();
void DoDamage(float howmuch);
void DoHead();
- void DoMipmaps(int howmanylevels, float startx, float endx, float starty, float endy);
+ void DoMipmaps()
+ {
+ glBindTexture(GL_TEXTURE_2D, skeleton.drawmodel.textureptr);
+ gluBuild2DMipmaps(GL_TEXTURE_2D, GL_RGB,
+ skeleton.skinsize,
+ skeleton.skinsize,
+ GL_RGB, GL_UNSIGNED_BYTE,
+ &skeleton.skinText[0]);
+ }
+
int SphereCheck(XYZ *p1,float radius, XYZ *p, XYZ *move, float *rotate, Model *model);
int DrawSkeleton();
void Puff(int whichlabel);
void RagDoll(bool checkcollision);
};
+const int maxplayers = 10;
extern Person player[maxplayers];
#endif