00001 00032 #ifndef LL_LLKeyframeFallMotion_H 00033 #define LL_LLKeyframeFallMotion_H 00034 00035 //----------------------------------------------------------------------------- 00036 // Header files 00037 //----------------------------------------------------------------------------- 00038 #include "llkeyframemotion.h" 00039 #include "llcharacter.h" 00040 00041 //----------------------------------------------------------------------------- 00042 // class LLKeyframeFallMotion 00043 //----------------------------------------------------------------------------- 00044 class LLKeyframeFallMotion : 00045 public LLKeyframeMotion 00046 { 00047 public: 00048 // Constructor 00049 LLKeyframeFallMotion(const LLUUID &id); 00050 00051 // Destructor 00052 virtual ~LLKeyframeFallMotion(); 00053 00054 public: 00055 //------------------------------------------------------------------------- 00056 // functions to support MotionController and MotionRegistry 00057 //------------------------------------------------------------------------- 00058 00059 // static constructor 00060 // all subclasses must implement such a function and register it 00061 static LLMotion *create(const LLUUID &id) { return new LLKeyframeFallMotion(id); } 00062 00063 public: 00064 //------------------------------------------------------------------------- 00065 // animation callbacks to be implemented by subclasses 00066 //------------------------------------------------------------------------- 00067 virtual LLMotionInitStatus onInitialize(LLCharacter *character); 00068 virtual BOOL onActivate(); 00069 virtual F32 getEaseInDuration(); 00070 virtual BOOL onUpdate(F32 activeTime, U8* joint_mask); 00071 00072 protected: 00073 //------------------------------------------------------------------------- 00074 // Member Data 00075 //------------------------------------------------------------------------- 00076 LLCharacter* mCharacter; 00077 F32 mVelocityZ; 00078 LLJointState* mPelvisStatep; 00079 LLQuaternion mRotationToGroundNormal; 00080 }; 00081 00082 #endif // LL_LLKeyframeFallMotion_H 00083