custom-pixi-particles 8.1.0 → 8.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (163) hide show
  1. package/package.json +3 -3
  2. package/dist/index.d.ts +0 -15
  3. package/dist/index.js +0 -45
  4. package/dist/index.js.map +0 -1
  5. package/dist/lib/Model.d.ts +0 -32
  6. package/dist/lib/Model.js +0 -44
  7. package/dist/lib/Model.js.map +0 -1
  8. package/dist/lib/Particle.d.ts +0 -234
  9. package/dist/lib/Particle.js +0 -201
  10. package/dist/lib/Particle.js.map +0 -1
  11. package/dist/lib/ParticlePool.d.ts +0 -37
  12. package/dist/lib/ParticlePool.js +0 -56
  13. package/dist/lib/ParticlePool.js.map +0 -1
  14. package/dist/lib/behaviour/AngularVelocityBehaviour.d.ts +0 -61
  15. package/dist/lib/behaviour/AngularVelocityBehaviour.js +0 -118
  16. package/dist/lib/behaviour/AngularVelocityBehaviour.js.map +0 -1
  17. package/dist/lib/behaviour/AttractionRepulsionBehaviour.d.ts +0 -42
  18. package/dist/lib/behaviour/AttractionRepulsionBehaviour.js +0 -78
  19. package/dist/lib/behaviour/AttractionRepulsionBehaviour.js.map +0 -1
  20. package/dist/lib/behaviour/Behaviour.d.ts +0 -33
  21. package/dist/lib/behaviour/Behaviour.js +0 -45
  22. package/dist/lib/behaviour/Behaviour.js.map +0 -1
  23. package/dist/lib/behaviour/BehaviourNames.d.ts +0 -22
  24. package/dist/lib/behaviour/BehaviourNames.js +0 -23
  25. package/dist/lib/behaviour/BehaviourNames.js.map +0 -1
  26. package/dist/lib/behaviour/CollisionBehaviour.d.ts +0 -86
  27. package/dist/lib/behaviour/CollisionBehaviour.js +0 -140
  28. package/dist/lib/behaviour/CollisionBehaviour.js.map +0 -1
  29. package/dist/lib/behaviour/ColorBehaviour.d.ts +0 -67
  30. package/dist/lib/behaviour/ColorBehaviour.js +0 -193
  31. package/dist/lib/behaviour/ColorBehaviour.js.map +0 -1
  32. package/dist/lib/behaviour/EmitDirectionBehaviour.d.ts +0 -52
  33. package/dist/lib/behaviour/EmitDirectionBehaviour.js +0 -105
  34. package/dist/lib/behaviour/EmitDirectionBehaviour.js.map +0 -1
  35. package/dist/lib/behaviour/EmitterBehaviours.d.ts +0 -69
  36. package/dist/lib/behaviour/EmitterBehaviours.js +0 -116
  37. package/dist/lib/behaviour/EmitterBehaviours.js.map +0 -1
  38. package/dist/lib/behaviour/ForceFieldsBehaviour.d.ts +0 -53
  39. package/dist/lib/behaviour/ForceFieldsBehaviour.js +0 -80
  40. package/dist/lib/behaviour/ForceFieldsBehaviour.js.map +0 -1
  41. package/dist/lib/behaviour/GroupingBehaviour.d.ts +0 -57
  42. package/dist/lib/behaviour/GroupingBehaviour.js +0 -143
  43. package/dist/lib/behaviour/GroupingBehaviour.js.map +0 -1
  44. package/dist/lib/behaviour/LifeBehaviour.d.ts +0 -47
  45. package/dist/lib/behaviour/LifeBehaviour.js +0 -65
  46. package/dist/lib/behaviour/LifeBehaviour.js.map +0 -1
  47. package/dist/lib/behaviour/LightEffectBehaviour.d.ts +0 -59
  48. package/dist/lib/behaviour/LightEffectBehaviour.js +0 -94
  49. package/dist/lib/behaviour/LightEffectBehaviour.js.map +0 -1
  50. package/dist/lib/behaviour/NoiseBasedMotionBehaviour.d.ts +0 -28
  51. package/dist/lib/behaviour/NoiseBasedMotionBehaviour.js +0 -50
  52. package/dist/lib/behaviour/NoiseBasedMotionBehaviour.js.map +0 -1
  53. package/dist/lib/behaviour/PositionBehaviour.d.ts +0 -164
  54. package/dist/lib/behaviour/PositionBehaviour.js +0 -484
  55. package/dist/lib/behaviour/PositionBehaviour.js.map +0 -1
  56. package/dist/lib/behaviour/RotationBehaviour.d.ts +0 -59
  57. package/dist/lib/behaviour/RotationBehaviour.js +0 -100
  58. package/dist/lib/behaviour/RotationBehaviour.js.map +0 -1
  59. package/dist/lib/behaviour/SizeBehaviour.d.ts +0 -61
  60. package/dist/lib/behaviour/SizeBehaviour.js +0 -156
  61. package/dist/lib/behaviour/SizeBehaviour.js.map +0 -1
  62. package/dist/lib/behaviour/SoundReactiveBehaviour.d.ts +0 -58
  63. package/dist/lib/behaviour/SoundReactiveBehaviour.js +0 -132
  64. package/dist/lib/behaviour/SoundReactiveBehaviour.js.map +0 -1
  65. package/dist/lib/behaviour/SpawnBehaviour.d.ts +0 -89
  66. package/dist/lib/behaviour/SpawnBehaviour.js +0 -705
  67. package/dist/lib/behaviour/SpawnBehaviour.js.map +0 -1
  68. package/dist/lib/behaviour/StretchBehaviour.d.ts +0 -30
  69. package/dist/lib/behaviour/StretchBehaviour.js +0 -59
  70. package/dist/lib/behaviour/StretchBehaviour.js.map +0 -1
  71. package/dist/lib/behaviour/TemperatureBehaviour.d.ts +0 -47
  72. package/dist/lib/behaviour/TemperatureBehaviour.js +0 -64
  73. package/dist/lib/behaviour/TemperatureBehaviour.js.map +0 -1
  74. package/dist/lib/behaviour/TimelineBehaviour.d.ts +0 -73
  75. package/dist/lib/behaviour/TimelineBehaviour.js +0 -100
  76. package/dist/lib/behaviour/TimelineBehaviour.js.map +0 -1
  77. package/dist/lib/behaviour/TurbulenceBehaviour.d.ts +0 -73
  78. package/dist/lib/behaviour/TurbulenceBehaviour.js +0 -133
  79. package/dist/lib/behaviour/TurbulenceBehaviour.js.map +0 -1
  80. package/dist/lib/behaviour/index.d.ts +0 -23
  81. package/dist/lib/behaviour/index.js +0 -24
  82. package/dist/lib/behaviour/index.js.map +0 -1
  83. package/dist/lib/customPixiParticlesSettingsInterface.d.ts +0 -19
  84. package/dist/lib/customPixiParticlesSettingsInterface.js +0 -2
  85. package/dist/lib/customPixiParticlesSettingsInterface.js.map +0 -1
  86. package/dist/lib/emission/AbstractEmission.d.ts +0 -30
  87. package/dist/lib/emission/AbstractEmission.js +0 -39
  88. package/dist/lib/emission/AbstractEmission.js.map +0 -1
  89. package/dist/lib/emission/EmissionTypes.d.ts +0 -6
  90. package/dist/lib/emission/EmissionTypes.js +0 -6
  91. package/dist/lib/emission/EmissionTypes.js.map +0 -1
  92. package/dist/lib/emission/RandomEmission.d.ts +0 -44
  93. package/dist/lib/emission/RandomEmission.js +0 -66
  94. package/dist/lib/emission/RandomEmission.js.map +0 -1
  95. package/dist/lib/emission/StandardEmission.d.ts +0 -62
  96. package/dist/lib/emission/StandardEmission.js +0 -87
  97. package/dist/lib/emission/StandardEmission.js.map +0 -1
  98. package/dist/lib/emission/UniformEmission.d.ts +0 -56
  99. package/dist/lib/emission/UniformEmission.js +0 -83
  100. package/dist/lib/emission/UniformEmission.js.map +0 -1
  101. package/dist/lib/emission/index.d.ts +0 -6
  102. package/dist/lib/emission/index.js +0 -7
  103. package/dist/lib/emission/index.js.map +0 -1
  104. package/dist/lib/emitter/Duration.d.ts +0 -27
  105. package/dist/lib/emitter/Duration.js +0 -41
  106. package/dist/lib/emitter/Duration.js.map +0 -1
  107. package/dist/lib/emitter/Emitter.d.ts +0 -116
  108. package/dist/lib/emitter/Emitter.js +0 -240
  109. package/dist/lib/emitter/Emitter.js.map +0 -1
  110. package/dist/lib/emitter/index.d.ts +0 -3
  111. package/dist/lib/emitter/index.js +0 -4
  112. package/dist/lib/emitter/index.js.map +0 -1
  113. package/dist/lib/index.d.ts +0 -20
  114. package/dist/lib/index.js +0 -21
  115. package/dist/lib/index.js.map +0 -1
  116. package/dist/lib/parser/BehaviourParser.d.ts +0 -21
  117. package/dist/lib/parser/BehaviourParser.js +0 -72
  118. package/dist/lib/parser/BehaviourParser.js.map +0 -1
  119. package/dist/lib/parser/CompatibilityHelper.d.ts +0 -12
  120. package/dist/lib/parser/CompatibilityHelper.js +0 -19
  121. package/dist/lib/parser/CompatibilityHelper.js.map +0 -1
  122. package/dist/lib/parser/EmitControllerParser.d.ts +0 -27
  123. package/dist/lib/parser/EmitControllerParser.js +0 -39
  124. package/dist/lib/parser/EmitControllerParser.js.map +0 -1
  125. package/dist/lib/parser/EmitterParser.d.ts +0 -67
  126. package/dist/lib/parser/EmitterParser.js +0 -168
  127. package/dist/lib/parser/EmitterParser.js.map +0 -1
  128. package/dist/lib/parser/index.d.ts +0 -5
  129. package/dist/lib/parser/index.js +0 -6
  130. package/dist/lib/parser/index.js.map +0 -1
  131. package/dist/lib/pixi/Renderer.d.ts +0 -125
  132. package/dist/lib/pixi/Renderer.js +0 -560
  133. package/dist/lib/pixi/Renderer.js.map +0 -1
  134. package/dist/lib/pixi/TestRenderer.d.ts +0 -125
  135. package/dist/lib/pixi/TestRenderer.js +0 -560
  136. package/dist/lib/pixi/TestRenderer.js.map +0 -1
  137. package/dist/lib/util/Color.d.ts +0 -133
  138. package/dist/lib/util/Color.js +0 -173
  139. package/dist/lib/util/Color.js.map +0 -1
  140. package/dist/lib/util/List.d.ts +0 -49
  141. package/dist/lib/util/List.js +0 -87
  142. package/dist/lib/util/List.js.map +0 -1
  143. package/dist/lib/util/MinMax.d.ts +0 -34
  144. package/dist/lib/util/MinMax.js +0 -46
  145. package/dist/lib/util/MinMax.js.map +0 -1
  146. package/dist/lib/util/Point.d.ts +0 -34
  147. package/dist/lib/util/Point.js +0 -46
  148. package/dist/lib/util/Point.js.map +0 -1
  149. package/dist/lib/util/Random.d.ts +0 -24
  150. package/dist/lib/util/Random.js +0 -30
  151. package/dist/lib/util/Random.js.map +0 -1
  152. package/dist/lib/util/ThereBack.d.ts +0 -14
  153. package/dist/lib/util/ThereBack.js +0 -23
  154. package/dist/lib/util/ThereBack.js.map +0 -1
  155. package/dist/lib/util/index.d.ts +0 -5
  156. package/dist/lib/util/index.js +0 -6
  157. package/dist/lib/util/index.js.map +0 -1
  158. package/dist/lib/util/maths.d.ts +0 -10
  159. package/dist/lib/util/maths.js +0 -13
  160. package/dist/lib/util/maths.js.map +0 -1
  161. package/dist/lib/util/turbulencePool.d.ts +0 -4
  162. package/dist/lib/util/turbulencePool.js +0 -7
  163. package/dist/lib/util/turbulencePool.js.map +0 -1
@@ -1,94 +0,0 @@
1
- import { Point } from '../util';
2
- import { Behaviour, BehaviourNames } from './index';
3
- export default class LightEffectBehaviour extends Behaviour {
4
- constructor() {
5
- super(...arguments);
6
- this.enabled = true;
7
- this.priority = 100;
8
- this.lightSource = new Point(0, 0); // Position of the light source
9
- this.lightIntensity = 1.0; // Maximum intensity of the light
10
- this.lightColor = { r: 255, g: 255, b: 255 }; // Light color (white)
11
- this.attenuationFactor = 0.002; // Controls light falloff with distance
12
- this.ambientLight = 0.2; // Minimum light level
13
- this.directionalLight = false; // Enable directional light
14
- this.direction = new Point(0, 1); // Directional light angle (normalized)
15
- this.spreadAngle = Math.PI / 4; // Spread angle for the directional light (in radians)
16
- this.volumetricLight = false; // Enable volumetric light
17
- this.volumetricIntensity = 0.3; // Intensity of volumetric light (glow)
18
- this.fogDensity = 0.01; // Fog density for scattering effect
19
- this.init = () => {
20
- //
21
- };
22
- this.apply = (particle, deltaTime) => {
23
- if (!this.enabled)
24
- return;
25
- const dx = particle.movement.x - this.lightSource.x;
26
- const dy = particle.movement.y - this.lightSource.y;
27
- const distanceSquared = dx * dx + dy * dy;
28
- // Distance-based intensity (inverse square law with attenuation)
29
- const intensity = this.lightIntensity / (1 + this.attenuationFactor * distanceSquared);
30
- // Directional light effect
31
- let directionalFactor = 1;
32
- if (this.directionalLight) {
33
- const normalizedDX = dx / Math.sqrt(distanceSquared);
34
- const normalizedDY = dy / Math.sqrt(distanceSquared);
35
- const dotProduct = normalizedDX * this.direction.x + normalizedDY * this.direction.y;
36
- const angle = Math.acos(dotProduct);
37
- // Apply spread angle
38
- if (angle > this.spreadAngle) {
39
- directionalFactor = 0; // Outside the spread
40
- }
41
- else {
42
- directionalFactor = 1 - angle / this.spreadAngle; // Gradual falloff
43
- }
44
- }
45
- // Combine intensity and directional factor
46
- const effectiveIntensity = Math.max(this.ambientLight, Math.min(intensity * directionalFactor, this.lightIntensity));
47
- // Blend particle color with light color
48
- particle.color.r = Math.min(255, particle.color.r * effectiveIntensity * (this.lightColor.r / 255));
49
- particle.color.g = Math.min(255, particle.color.g * effectiveIntensity * (this.lightColor.g / 255));
50
- particle.color.b = Math.min(255, particle.color.b * effectiveIntensity * (this.lightColor.b / 255));
51
- // Adjust alpha for glow
52
- particle.color.alpha = Math.min(1, particle.color.alpha * effectiveIntensity);
53
- // Volumetric light effect
54
- if (this.volumetricLight) {
55
- const fogEffect = Math.exp(-this.fogDensity * Math.sqrt(distanceSquared));
56
- const volumetricFactor = this.volumetricIntensity * fogEffect;
57
- particle.color.r = Math.min(255, particle.color.r + volumetricFactor * this.lightColor.r);
58
- particle.color.g = Math.min(255, particle.color.g + volumetricFactor * this.lightColor.g);
59
- particle.color.b = Math.min(255, particle.color.b + volumetricFactor * this.lightColor.b);
60
- particle.color.alpha = Math.min(1, particle.color.alpha + volumetricFactor);
61
- }
62
- };
63
- }
64
- /**
65
- * Gets the name of the behaviour
66
- * @return {string} The name of the behaviour
67
- */
68
- getName() {
69
- return BehaviourNames.LIGHT_EFFECT_BEHAVIOUR;
70
- }
71
- /**
72
- * @description Retrieves the properties of the object.
73
- * @returns {Object} The properties of the object.
74
- */
75
- getProps() {
76
- return {
77
- enabled: this.enabled,
78
- priority: this.priority,
79
- lightSource: { x: this.lightSource.x, y: this.lightSource.y },
80
- lightIntensity: this.lightIntensity,
81
- lightColor: this.lightColor,
82
- attenuationFactor: this.attenuationFactor,
83
- ambientLight: this.ambientLight,
84
- directionalLight: this.directionalLight,
85
- direction: { x: this.direction.x, y: this.direction.y },
86
- spreadAngle: this.spreadAngle,
87
- volumetricLight: this.volumetricLight,
88
- volumetricIntensity: this.volumetricIntensity,
89
- fogDensity: this.fogDensity,
90
- name: this.getName(),
91
- };
92
- }
93
- }
94
- //# sourceMappingURL=LightEffectBehaviour.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LightEffectBehaviour.js","sourceRoot":"","sources":["../../../src/lib/behaviour/LightEffectBehaviour.ts"],"names":[],"mappings":"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"}
@@ -1,28 +0,0 @@
1
- import Particle from '../Particle';
2
- import { Point } from '../util';
3
- import Behaviour from './Behaviour';
4
- export default class NoiseBasedMotionBehaviour extends Behaviour {
5
- enabled: boolean;
6
- priority: number;
7
- noiseScale: number;
8
- noiseIntensity: number;
9
- noiseSpeed: number;
10
- noiseDirection: Point;
11
- noise2D: any;
12
- constructor();
13
- init: (particle: Particle) => void;
14
- apply: (particle: Particle, deltaTime: number) => void;
15
- getName(): string;
16
- getProps(): {
17
- enabled: boolean;
18
- priority: number;
19
- noiseScale: number;
20
- noiseIntensity: number;
21
- noiseSpeed: number;
22
- noiseDirection: {
23
- x: number;
24
- y: number;
25
- };
26
- name: string;
27
- };
28
- }
@@ -1,50 +0,0 @@
1
- import { createNoise2D } from 'simplex-noise';
2
- import BehaviourNames from './BehaviourNames';
3
- import { Point } from '../util';
4
- import Behaviour from './Behaviour';
5
- export default class NoiseBasedMotionBehaviour extends Behaviour {
6
- constructor() {
7
- super();
8
- this.enabled = true;
9
- this.priority = 50;
10
- this.noiseScale = 0.01;
11
- this.noiseIntensity = 10;
12
- this.noiseSpeed = 0.1;
13
- this.noiseDirection = new Point(1, 1);
14
- this.init = (particle) => {
15
- if (!this.enabled)
16
- return;
17
- particle.noiseOffset = new Point(Math.random() * 1000, Math.random() * 1000);
18
- };
19
- this.apply = (particle, deltaTime) => {
20
- if (!this.enabled || particle.skipPositionBehaviour)
21
- return;
22
- const { noiseOffset } = particle;
23
- noiseOffset.x += this.noiseSpeed * deltaTime * this.noiseDirection.x;
24
- noiseOffset.y += this.noiseSpeed * deltaTime * this.noiseDirection.y;
25
- const noiseX = this.noise2D(noiseOffset.x * this.noiseScale, noiseOffset.y * this.noiseScale);
26
- const noiseY = this.noise2D(noiseOffset.y * this.noiseScale, noiseOffset.x * this.noiseScale);
27
- particle.movement.x += noiseX * this.noiseIntensity * deltaTime;
28
- particle.movement.y += noiseY * this.noiseIntensity * deltaTime;
29
- };
30
- this.noise2D = createNoise2D();
31
- }
32
- getName() {
33
- return BehaviourNames.NOISE_BASED_MOTION_BEHAVIOUR;
34
- }
35
- getProps() {
36
- return {
37
- enabled: this.enabled,
38
- priority: this.priority,
39
- noiseScale: this.noiseScale,
40
- noiseIntensity: this.noiseIntensity,
41
- noiseSpeed: this.noiseSpeed,
42
- noiseDirection: {
43
- x: this.noiseDirection.x,
44
- y: this.noiseDirection.y,
45
- },
46
- name: this.getName(),
47
- };
48
- }
49
- }
50
- //# sourceMappingURL=NoiseBasedMotionBehaviour.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NoiseBasedMotionBehaviour.js","sourceRoot":"","sources":["../../../src/lib/behaviour/NoiseBasedMotionBehaviour.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAC7C,OAAO,cAAc,MAAM,kBAAkB,CAAA;AAE7C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,SAAS,MAAM,aAAa,CAAA;AAEnC,MAAM,CAAC,OAAO,OAAO,yBAA0B,SAAQ,SAAS;IAW9D;QACE,KAAK,EAAE,CAAA;QAXT,YAAO,GAAG,IAAI,CAAA;QACd,aAAQ,GAAG,EAAE,CAAA;QAEb,eAAU,GAAG,IAAI,CAAA;QACjB,mBAAc,GAAG,EAAE,CAAA;QACnB,eAAU,GAAG,GAAG,CAAA;QAChB,mBAAc,GAAG,IAAI,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QAShC,SAAI,GAAG,CAAC,QAAkB,EAAE,EAAE;YAC5B,IAAI,CAAC,IAAI,CAAC,OAAO;gBAAE,OAAM;YACzB,QAAQ,CAAC,WAAW,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAA;QAC9E,CAAC,CAAA;QAED,UAAK,GAAG,CAAC,QAAkB,EAAE,SAAiB,EAAE,EAAE;YAChD,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,QAAQ,CAAC,qBAAqB;gBAAE,OAAM;YAE3D,MAAM,EAAE,WAAW,EAAE,GAAG,QAAQ,CAAA;YAEhC,WAAW,CAAC,CAAC,IAAI,IAAI,CAAC,UAAU,GAAG,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,CAAA;YACpE,WAAW,CAAC,CAAC,IAAI,IAAI,CAAC,UAAU,GAAG,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,CAAA;YAEpE,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,CAAA;YAC7F,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,CAAA;YAE7F,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,MAAM,GAAG,IAAI,CAAC,cAAc,GAAG,SAAS,CAAA;YAC/D,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,MAAM,GAAG,IAAI,CAAC,cAAc,GAAG,SAAS,CAAA;QACjE,CAAC,CAAA;QArBC,IAAI,CAAC,OAAO,GAAG,aAAa,EAAE,CAAA;IAChC,CAAC;IAsBD,OAAO;QACL,OAAO,cAAc,CAAC,4BAA4B,CAAA;IACpD,CAAC;IAED,QAAQ;QACN,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,cAAc,EAAE;gBACd,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;gBACxB,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;aACzB;YACD,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE;SACrB,CAAA;IACH,CAAC;CACF"}
@@ -1,164 +0,0 @@
1
- import { Point } from '../util';
2
- import { Behaviour } from './index';
3
- import Particle from '../Particle';
4
- import Model from '../Model';
5
- import MinMax from '../util/MinMax';
6
- import ThereBack from '../util/ThereBack';
7
- export default class PositionBehaviour extends Behaviour {
8
- enabled: boolean;
9
- priority: number;
10
- warp: boolean;
11
- warpSpeed: number;
12
- warpBaseSpeed: number;
13
- sinX: boolean;
14
- sinY: boolean;
15
- sinXVal: Point;
16
- sinYVal: Point;
17
- sinXValVariance: Point;
18
- sinYValVariance: Point;
19
- positionVariance: Point;
20
- velocity: Point;
21
- velocityVariance: Point;
22
- acceleration: Point;
23
- accelerationVariance: Point;
24
- cameraZConverter: number;
25
- warpFov: number;
26
- warpStretch: number;
27
- warpDistanceScaleConverter: number;
28
- warpDistanceToCenter: boolean;
29
- fromAtoB: boolean;
30
- fromAtoBTwoWays: boolean;
31
- pointA: Point;
32
- pointB: Point;
33
- thereDuration: MinMax;
34
- thereAmplitude: MinMax;
35
- backDuration: MinMax;
36
- backAmplitude: MinMax;
37
- there: ThereBack;
38
- back: ThereBack;
39
- /**
40
- * Function that initializes a particle
41
- * @param {Particle} particle - The particle to be initialized
42
- * @param {Model} model - The model of the particle
43
- */
44
- init: (particle: Particle, model: Model) => void;
45
- /**
46
- * Restarts the warp of a particle
47
- * @param {Particle} particle - The particle to restart the warp on
48
- * @param {boolean} initial - True if this is the initial warp, false if it is a subsequent one
49
- * @param {Model} model - The model containing the camera Z property
50
- */
51
- restartWarp: (particle: Particle, initial: boolean, model: Model) => void;
52
- /**
53
- * Adds a random variance to the given value
54
- * @param {number} value - The value to calculate
55
- * @param {number} variance - The random variance to add
56
- * @returns {number} The calculated value
57
- */
58
- calculate: (value: number, variance: number) => number;
59
- /**
60
- * Applies the particle's velocity and acceleration to move it and calculate its size, rotation, and position.
61
- * @param {Particle} particle - The particle to be moved
62
- * @param {number} deltaTime - The time delta for the movement calculation
63
- * @param {Model} model - The model containing information about the particle's movement
64
- */
65
- apply: (particle: Particle, deltaTime: number, model: Model) => void;
66
- /**
67
- * Gets the name of the behaviour
68
- * @return {BehaviourNames} The name of the behaviour
69
- */
70
- getName(): string;
71
- _lerp(start: number, end: number, t: number): number;
72
- _easeBackInOut(t: number, c1?: number, c2?: number): number;
73
- _easeBackIn(t: number, c1?: number): number;
74
- _easeBackOut(t: number, c1?: number): number;
75
- _easePower1In(t: number): number;
76
- _easePower1Out(t: number): number;
77
- _easePower1InOut(t: number): number;
78
- _easeBounceIn(t: number): number;
79
- _easeBounceOut(t: number): number;
80
- _easeBounceInOut(t: number): number;
81
- _easeElasticIn(t: number): number;
82
- _easeElasticOut(t: number): number;
83
- _easeElasticInOut(t: number): number;
84
- _easeSteps(t: number, numSteps?: number): number;
85
- /**
86
- * @description Retrieves the properties of the object.
87
- * @returns {Object} The properties of the object.
88
- */
89
- getProps(): {
90
- enabled: boolean;
91
- priority: number;
92
- fromAtoB: boolean;
93
- fromAtoBTwoWays: boolean;
94
- there: {
95
- x: string;
96
- y: string;
97
- ease: string;
98
- };
99
- back: {
100
- x: string;
101
- y: string;
102
- ease: string;
103
- };
104
- pointA: {
105
- x: number;
106
- y: number;
107
- };
108
- pointB: {
109
- x: number;
110
- y: number;
111
- };
112
- thereDuration: {
113
- x: number;
114
- y: number;
115
- };
116
- thereAmplitude: {
117
- x: number;
118
- y: number;
119
- };
120
- backDuration: {
121
- x: number;
122
- y: number;
123
- };
124
- backAmplitude: {
125
- x: number;
126
- y: number;
127
- };
128
- warp: boolean;
129
- sinX: boolean;
130
- sinY: boolean;
131
- sinXVal: Point;
132
- sinYVal: Point;
133
- sinXValVariance: Point;
134
- sinYValVariance: Point;
135
- positionVariance: {
136
- x: number;
137
- y: number;
138
- };
139
- velocity: {
140
- x: number;
141
- y: number;
142
- };
143
- velocityVariance: {
144
- x: number;
145
- y: number;
146
- };
147
- acceleration: {
148
- x: number;
149
- y: number;
150
- };
151
- accelerationVariance: {
152
- x: number;
153
- y: number;
154
- };
155
- warpSpeed: number;
156
- warpBaseSpeed: number;
157
- cameraZConverter: number;
158
- warpFov: number;
159
- warpStretch: number;
160
- warpDistanceScaleConverter: number;
161
- warpDistanceToCenter: boolean;
162
- name: string;
163
- };
164
- }