QEasing.ts 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150
  1. const { ccclass, property } = cc._decorator;
  2. export enum EaseType {
  3. none = 0,
  4. easeIn,
  5. easeOut,
  6. easeInOut,
  7. easeExponentialIn,
  8. easeExponentialOut,
  9. easeExponentialInOut,
  10. easeSineIn,
  11. easeSineOut,
  12. easeSineInOut,
  13. easeElasticIn,
  14. easeElasticOut,
  15. easeElasticInOut,
  16. easeBounceIn,
  17. easeBounceOut,
  18. easeBounceInOut,
  19. easeBackIn,
  20. easeBackOut,
  21. easeBackInOut,
  22. easeBezierAction,
  23. easeQuadraticActionIn,
  24. easeQuadraticActionOut,
  25. easeQuadraticActionInOut,
  26. easeQuarticActionIn,
  27. easeQuarticActionOut,
  28. easeQuarticActionInOut,
  29. easeQuinticActionIn,
  30. easeQuinticActionOut,
  31. easeQuinticActionInOut,
  32. easeCircleActionIn,
  33. easeCircleActionOut,
  34. easeCircleActionInOut,
  35. easeCubicActionIn,
  36. easeCubicActionOut,
  37. easeCubicActionInOut
  38. }
  39. @ccclass
  40. export default class QEasing extends cc.Component {
  41. @property({ type: cc.Enum(EaseType) })
  42. easeType: EaseType = EaseType.none;
  43. protected _getEase() {
  44. switch (this.easeType) {
  45. case EaseType.none: {
  46. return "linear";
  47. }
  48. case EaseType.easeOut: {
  49. return "easeOut";
  50. }
  51. case EaseType.easeInOut: {
  52. return "easeInOut";
  53. }
  54. case EaseType.easeExponentialIn: {
  55. return "easeExponentialIn";
  56. }
  57. case EaseType.easeExponentialOut: {
  58. return "easeExponentialOut";
  59. }
  60. case EaseType.easeExponentialInOut: {
  61. return "easeExponentialInOut";
  62. }
  63. case EaseType.easeSineIn: {
  64. return "sineIn";
  65. }
  66. case EaseType.easeSineOut: {
  67. return "sineOut";
  68. }
  69. case EaseType.easeSineInOut: {
  70. return "sineInOut";
  71. }
  72. case EaseType.easeElasticIn: {
  73. return "elasticIn";
  74. }
  75. case EaseType.easeElasticOut: {
  76. return "elasticOut";
  77. }
  78. case EaseType.easeElasticInOut: {
  79. return "elasticInOut";
  80. }
  81. case EaseType.easeBounceIn: {
  82. return "bounceIn";
  83. }
  84. case EaseType.easeBounceOut: {
  85. return "bounceOut";
  86. }
  87. case EaseType.easeBackIn: {
  88. return "backIn";
  89. }
  90. case EaseType.easeBackOut: {
  91. return 'backOut';
  92. }
  93. case EaseType.easeBackInOut: {
  94. return "backInOut";
  95. }
  96. case EaseType.easeQuadraticActionIn: {
  97. return "quadraticActionIn";
  98. }
  99. case EaseType.easeQuadraticActionOut: {
  100. return "quadraticActionOut";
  101. }
  102. case EaseType.easeQuadraticActionInOut: {
  103. return "quadraticActionInOut";
  104. }
  105. case EaseType.easeQuarticActionIn: {
  106. return "quarticActionIn";
  107. }
  108. case EaseType.easeQuarticActionOut: {
  109. return "quarticActionOut";
  110. }
  111. case EaseType.easeQuarticActionInOut: {
  112. return "quarticActionInOut";
  113. }
  114. case EaseType.easeQuinticActionIn: {
  115. return "quinticActionIn";
  116. }
  117. case EaseType.easeQuinticActionOut: {
  118. return "quinticActionOut";
  119. }
  120. case EaseType.easeQuinticActionInOut: {
  121. return "quinticActionInOut";
  122. }
  123. case EaseType.easeCircleActionIn: {
  124. return "easeCircleActionIn";
  125. }
  126. case EaseType.easeCircleActionOut: {
  127. return "circleActionOut";
  128. }
  129. case EaseType.easeCircleActionInOut: {
  130. return "circleActionInOut";
  131. }
  132. case EaseType.easeCubicActionIn: {
  133. return "cubicActionIn";
  134. }
  135. case EaseType.easeCubicActionOut: {
  136. return "cubicActionOut";
  137. }
  138. case EaseType.easeCubicActionInOut: {
  139. return "cubicActionInOut";
  140. }
  141. }
  142. }
  143. }