]> git.jsancho.org Git - lugaru.git/blobdiff - Source/Person.h
add include guard to Texture.h
[lugaru.git] / Source / Person.h
index a745481f4d996f7cece4b26ae5ce18fd52692f33..60cc8616754fda39e805f17468912f6dbbf03bac 100644 (file)
@@ -28,7 +28,6 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 #include "Quaternions.h"
 #include "Skeleton.h"
 #include "Models.h"
-#include "Constants.h"
 #include "Terrain.h"
 #include "Sprite.h"
 #include <cmath>
@@ -50,10 +49,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 
 class Person
 {
-       public:
-               Person();
-               ~Person();
-
+       public: 
                int whichpatchx;
                int whichpatchz;
                
@@ -184,7 +180,6 @@ class Person
                float turnspeed;
                
                int aitype;
-               int aitarget;
                float aiupdatedelay;
                float losupdatedelay;
                int ally;
@@ -376,33 +371,66 @@ class Person
                  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 FootLand(int which, float opacity);
                void DoStuff();
+               Joint& getJointFor(int);
+               void setAnimation(int);
                void DoAnimations();
                void RagDoll(bool checkcollision);
 };
 
+const int maxplayers = 10;
 extern Person player[maxplayers];
 #endif