]> git.jsancho.org Git - lugaru.git/blobdiff - Source/Person.h
Simplify idle animations
[lugaru.git] / Source / Person.h
index 5be74b22b3bcc24b89c92335891bc0890e6f3229..10f6ab2808d96779aac7119e180fc870109957b0 100644 (file)
@@ -1,3 +1,24 @@
+/*
+Copyright (C) 2003, 2010 - Wolfire Games
+
+This file is part of Lugaru.
+
+Lugaru is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public License
+as published by the Free Software Foundation; either version 2
+of the License, or (at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  
+
+See the GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+*/
+
 #ifndef _PERSON_H_
 #define _PERSON_H_
 
 
 #include "gamegl.h"
 #include "Quaternions.h"
-#include "fmod.h"
 #include "Skeleton.h"
 #include "Models.h"
 #include "Constants.h"
 #include "Terrain.h"
-#include "Sprites.h"
+#include "Sprite.h"
 #include <cmath>
 #include "Weapons.h"
+#include "Animation.h"
 
 #define passivetype 0
 #define guardtype 1
 #define rabbittype 0
 #define wolftype 1
 
-class HitStruct
-{
-       public:
-               Joint *joint1;
-               Joint *joint2;
-               XYZ hitlocation;
-               bool collision;
-};
-
 class Person
 {
        public:
@@ -311,8 +323,14 @@ class Person
                void DoBloodBig(float howmuch, int which);
                bool DoBloodBigWhere(float howmuch, int which, XYZ where);
                
-               bool wasIdle();
-               bool isIdle();
+               bool wasIdle()
+               {
+                 return animation_bits[currentanimation] & ab_idle;
+               }
+               bool isIdle()
+               {
+                 return animation_bits[targetanimation] & ab_idle;
+               }
                int getIdle();
                
                bool isSitting();
@@ -360,7 +378,7 @@ class Person
                void DoStuff();
                void DoAnimations();
                void RagDoll(bool checkcollision);
-               HitStruct BulletCollideWithPlayer(XYZ start, XYZ end);
 };
 
-#endif
\ No newline at end of file
+extern Person player[maxplayers];
+#endif