]> git.jsancho.org Git - lugaru.git/blobdiff - Source/Person.h
cleanup, renamed rotations to yaw/pitch
[lugaru.git] / Source / Person.h
index a4eeae9bc457c6119ad6c47e645cc12bbd2c5217..9c6ebe968a31ad5222e299ff3165fa567ae3be24 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;
                
@@ -97,15 +93,15 @@ class Person
                bool immobile;
                
                float velspeed;
-               float targetrotation;
+               float targetyaw;
                float targetrot;
                float rot;
                float oldrot;
-               float lookrotation;
-               float lookrotation2;
-               float rotation;
-               float rotation2;
-               float lowrotation;
+               float lookyaw;
+               float lookpitch;
+               float yaw;
+               float pitch;
+               float lowyaw;
                float tilt;
                float targettilt;
                float tilt2;
@@ -142,8 +138,8 @@ class Person
                int direction;
                float texupdatedelay;
                
-               float headrotation,headrotation2;
-               float targetheadrotation,targetheadrotation2;
+               float headyaw,headpitch;
+               float targetheadyaw,targetheadpitch;
                
                bool onterrain;
                bool pause;
@@ -184,7 +180,6 @@ class Person
                float turnspeed;
                
                int aitype;
-               int aitarget;
                float aiupdatedelay;
                float losupdatedelay;
                int ally;
@@ -403,24 +398,39 @@ class Person
                }
                bool isFlip()
                {
-                 return animation_bits[targetanimation] & ab_flip;;
+                 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