X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=Source%2FPerson.h;h=a4eeae9bc457c6119ad6c47e645cc12bbd2c5217;hb=6f3fa5a970fa12cf6529c56a1f859b2668a8a232;hp=cde2f8f7a93b2b16d6e76b346f1296fbb844b597;hpb=2e4c2fd2e05bc8c910b614f45cbbf903d158658c;p=lugaru.git diff --git a/Source/Person.h b/Source/Person.h index cde2f8f..a4eeae9 100644 --- a/Source/Person.h +++ b/Source/Person.h @@ -30,9 +30,10 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #include "Models.h" #include "Constants.h" #include "Terrain.h" -#include "Sprites.h" +#include "Sprite.h" #include #include "Weapons.h" +#include "Animation.h" #define passivetype 0 #define guardtype 1 @@ -47,15 +48,6 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #define rabbittype 0 #define wolftype 1 -class HitStruct -{ - public: - Joint *joint1; - Joint *joint2; - XYZ hitlocation; - bool collision; -}; - class Person { public: @@ -331,41 +323,89 @@ 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(); - bool isSleeping(); - - - bool wasCrouch(); - bool isCrouch(); + bool isSitting() + { + return animation_bits[targetanimation] & ab_sit; + } + + bool isSleeping() + { + return animation_bits[targetanimation] & ab_sleep; + } + + bool wasCrouch() + { + return animation_bits[currentanimation] & ab_crouch; + } + bool isCrouch() + { + return animation_bits[targetanimation] & ab_crouch; + } 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(); @@ -380,7 +420,7 @@ class Person void DoStuff(); void DoAnimations(); void RagDoll(bool checkcollision); - HitStruct BulletCollideWithPlayer(XYZ start, XYZ end); }; +extern Person player[maxplayers]; #endif