RTM_FluffyAnimation.cs 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. //================================================================================
  2. //
  3. //================================================================================
  4. using UnityEngine;
  5. using System.Collections;
  6. //================================================================================
  7. //
  8. //================================================================================
  9. namespace ReaderRabbit
  10. {
  11. //================================================================================
  12. //
  13. //================================================================================
  14. public class RTM_FluffyAnimation : CharacterAnimation
  15. {
  16. //================================================================================
  17. //
  18. //================================================================================
  19. public enum AnimationCycles
  20. {
  21. Idle = 0,
  22. Blink,
  23. Misc0,
  24. Sleeping,
  25. GoingToEat,
  26. }
  27. //================================================================================
  28. //
  29. //================================================================================
  30. protected override void Update()
  31. {
  32. if (Time.time > m_IdleDelay && IsIdle())
  33. {
  34. if (!PlayerData.Instance().RTM_IsFluffySleeping)
  35. {
  36. if (m_CanRandomizeIdle)
  37. {
  38. m_RandomIndex = Random.Range(0, 100);
  39. if (m_RandomIndex < 50)
  40. TriggerAnimation((int)AnimationCycles.Blink, AnimationCyclesString[(int)AnimationCycles.Blink]);
  41. else
  42. TriggerAnimation((int)AnimationCycles.Misc0, AnimationCyclesString[(int)AnimationCycles.Misc0]);
  43. }
  44. else
  45. {
  46. TriggerAnimation((int)AnimationCycles.Blink, AnimationCyclesString[(int)AnimationCycles.Blink]);
  47. }
  48. }
  49. else
  50. {
  51. TriggerAnimation((int)AnimationCycles.Sleeping, AnimationCyclesString[(int)AnimationCycles.Sleeping]);
  52. }
  53. UpdateIdleDelay();
  54. }
  55. }
  56. //================================================================================
  57. //
  58. //================================================================================
  59. public override void ChangeToIdle()
  60. {
  61. EnableOnlyAnimationCycle(PlayerData.Instance().RTM_IsFluffySleeping ? (int)AnimationCycles.Sleeping : (int)AnimationCycles.Idle);
  62. EnableAnimator();
  63. SetIdle(true);
  64. UpdateIdleDelay();
  65. }
  66. //================================================================================
  67. //
  68. //================================================================================
  69. public void PlaySleepAnimation()
  70. {
  71. TriggerAnimation((int)AnimationCycles.Sleeping, AnimationCyclesString[(int)AnimationCycles.Sleeping]);
  72. }
  73. } // public class RTM_FluffyAnimation : CharacterAnimation
  74. } // namespace ReaderRabbit