AnimationController.pkg 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. $#include "AnimationController.h"
  2. struct AnimationControl
  3. {
  4. AnimationControl();
  5. StringHash hash_;
  6. float speed_;
  7. float targetWeight_;
  8. float fadeTime_;
  9. float autoFadeTime_;
  10. float setTimeTtl_;
  11. float setWeightTtl_;
  12. unsigned short setTime_;
  13. unsigned char setWeight_;
  14. unsigned char setTimeRev_;
  15. unsigned char setWeightRev_;
  16. };
  17. class AnimationController : public Component
  18. {
  19. bool Play(const String& name, unsigned char layer, bool looped, float fadeInTime = 0.0f);
  20. bool Play(const char* name, unsigned char layer, bool looped, float fadeInTime = 0.0f);
  21. bool PlayExclusive(const String& name, unsigned char layer, bool looped, float fadeTime = 0.0f);
  22. bool PlayExclusive(const char* name, unsigned char layer, bool looped, float fadeTime = 0.0f);
  23. bool Stop(const String& name, float fadeOutTime = 0.0f);
  24. bool Stop(const char* name, float fadeOutTime = 0.0f);
  25. void StopLayer(unsigned char layer, float fadeOutTime = 0.0f);
  26. void StopAll(float fadeTime = 0.0f);
  27. bool Fade(const String& name, float targetWeight, float fadeTime);
  28. bool Fade(const char* name, float targetWeight, float fadeTime);
  29. bool FadeOthers(const String& name, float targetWeight, float fadeTime);
  30. bool FadeOthers(const char* name, float targetWeight, float fadeTime);
  31. bool SetLayer(const String& name, unsigned char layer);
  32. bool SetLayer(const char* name, unsigned char layer);
  33. bool SetStartBone(const String& name, const String& startBoneName);
  34. bool SetStartBone(const char* name, const String& startBoneName);
  35. bool SetTime(const String& name, float time);
  36. bool SetTime(const char* name, float time);
  37. bool SetWeight(const String& name, float weight);
  38. bool SetWeight(const char* name, float weight);
  39. bool SetLooped(const String& name, bool enable);
  40. bool SetLooped(const char* name, bool enable);
  41. bool SetSpeed(const String& name, float speed);
  42. bool SetSpeed(const char* name, float speed);
  43. bool SetAutoFade(const String& name, float fadeOutTime);
  44. bool SetAutoFade(const char* name, float fadeOutTime);
  45. bool IsPlaying(const String& name) const;
  46. bool IsPlaying(const char* name) const;
  47. bool IsFadingIn(const String& name) const;
  48. bool IsFadingIn(const char* name) const;
  49. bool IsFadingOut(const String& name) const;
  50. bool IsFadingOut(const char* name) const;
  51. unsigned char GetLayer(const String& name) const;
  52. unsigned char GetLayer(const char* name) const;
  53. Bone* GetStartBone(const String& name) const;
  54. Bone* GetStartBone(const char* name) const;
  55. const String& GetStartBoneName(const String& name) const;
  56. const String& GetStartBoneName(const char* name) const;
  57. float GetTime(const String& name) const;
  58. float GetTime(const String& name) const;
  59. float GetWeight(const String& name) const;
  60. float GetWeight(const char* name) const;
  61. bool IsLooped(const String& name) const;
  62. bool IsLooped(const char* name) const;
  63. float GetLength(const String& name) const;
  64. float GetLength(const char* name) const;
  65. float GetSpeed(const String& name) const;
  66. float GetSpeed(const char* name) const;
  67. float GetFadeTarget(const String& name) const;
  68. float GetFadeTarget(const char* name) const;
  69. float GetFadeTime(const String& name) const;
  70. float GetFadeTime(const char* name) const;
  71. float GetAutoFade(const String& name) const;
  72. float GetAutoFade(const char* name) const;
  73. };