custom-pixi-particles 4.0.20 → 4.0.22

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 (91) hide show
  1. package/dist/index.d.ts +5 -0
  2. package/dist/index.js +5 -0
  3. package/dist/index.js.map +1 -1
  4. package/dist/lib/Model.d.ts +23 -0
  5. package/dist/lib/Model.js +23 -0
  6. package/dist/lib/Model.js.map +1 -1
  7. package/dist/lib/Particle.d.ts +146 -0
  8. package/dist/lib/Particle.js +61 -0
  9. package/dist/lib/Particle.js.map +1 -1
  10. package/dist/lib/ParticlePool.d.ts +28 -0
  11. package/dist/lib/ParticlePool.js +28 -0
  12. package/dist/lib/ParticlePool.js.map +1 -1
  13. package/dist/lib/behaviour/AngularVelocityBehaviour.d.ts +31 -0
  14. package/dist/lib/behaviour/AngularVelocityBehaviour.js +45 -12
  15. package/dist/lib/behaviour/AngularVelocityBehaviour.js.map +1 -1
  16. package/dist/lib/behaviour/Behaviour.d.ts +26 -0
  17. package/dist/lib/behaviour/Behaviour.js +26 -0
  18. package/dist/lib/behaviour/Behaviour.js.map +1 -1
  19. package/dist/lib/behaviour/ColorBehaviour.d.ts +1 -1
  20. package/dist/lib/behaviour/ColorBehaviour.js +8 -11
  21. package/dist/lib/behaviour/ColorBehaviour.js.map +1 -1
  22. package/dist/lib/behaviour/EmitDirectionBehaviour.d.ts +29 -5
  23. package/dist/lib/behaviour/EmitDirectionBehaviour.js +32 -20
  24. package/dist/lib/behaviour/EmitDirectionBehaviour.js.map +1 -1
  25. package/dist/lib/behaviour/EmitterBehaviours.d.ts +44 -2
  26. package/dist/lib/behaviour/EmitterBehaviours.js +43 -3
  27. package/dist/lib/behaviour/EmitterBehaviours.js.map +1 -1
  28. package/dist/lib/behaviour/LifeBehaviour.d.ts +49 -0
  29. package/dist/lib/behaviour/LifeBehaviour.js +55 -5
  30. package/dist/lib/behaviour/LifeBehaviour.js.map +1 -1
  31. package/dist/lib/behaviour/PositionBehaviour.d.ts +34 -1
  32. package/dist/lib/behaviour/PositionBehaviour.js +70 -28
  33. package/dist/lib/behaviour/PositionBehaviour.js.map +1 -1
  34. package/dist/lib/behaviour/RotationBehaviour.d.ts +33 -4
  35. package/dist/lib/behaviour/RotationBehaviour.js +33 -17
  36. package/dist/lib/behaviour/RotationBehaviour.js.map +1 -1
  37. package/dist/lib/behaviour/SizeBehaviour.d.ts +1 -1
  38. package/dist/lib/behaviour/SizeBehaviour.js +25 -18
  39. package/dist/lib/behaviour/SizeBehaviour.js.map +1 -1
  40. package/dist/lib/behaviour/TurbulenceBehaviour.d.ts +1 -1
  41. package/dist/lib/behaviour/TurbulenceBehaviour.js +1 -5
  42. package/dist/lib/behaviour/TurbulenceBehaviour.js.map +1 -1
  43. package/dist/lib/emission/AbstractEmission.d.ts +23 -0
  44. package/dist/lib/emission/AbstractEmission.js +23 -0
  45. package/dist/lib/emission/AbstractEmission.js.map +1 -1
  46. package/dist/lib/emission/RandomEmission.d.ts +33 -0
  47. package/dist/lib/emission/RandomEmission.js +33 -0
  48. package/dist/lib/emission/RandomEmission.js.map +1 -1
  49. package/dist/lib/emission/StandardEmission.d.ts +49 -0
  50. package/dist/lib/emission/StandardEmission.js +49 -0
  51. package/dist/lib/emission/StandardEmission.js.map +1 -1
  52. package/dist/lib/emission/UniformEmission.d.ts +42 -0
  53. package/dist/lib/emission/UniformEmission.js +42 -0
  54. package/dist/lib/emission/UniformEmission.js.map +1 -1
  55. package/dist/lib/emitter/Duration.d.ts +17 -0
  56. package/dist/lib/emitter/Duration.js +17 -0
  57. package/dist/lib/emitter/Duration.js.map +1 -1
  58. package/dist/lib/emitter/Emitter.d.ts +60 -0
  59. package/dist/lib/emitter/Emitter.js +60 -0
  60. package/dist/lib/emitter/Emitter.js.map +1 -1
  61. package/dist/lib/parser/BehaviourParser.d.ts +15 -4
  62. package/dist/lib/parser/BehaviourParser.js +15 -23
  63. package/dist/lib/parser/BehaviourParser.js.map +1 -1
  64. package/dist/lib/parser/CompatibilityHelper.d.ts +9 -0
  65. package/dist/lib/parser/CompatibilityHelper.js +9 -0
  66. package/dist/lib/parser/CompatibilityHelper.js.map +1 -1
  67. package/dist/lib/parser/EmitControllerParser.d.ts +21 -0
  68. package/dist/lib/parser/EmitControllerParser.js +21 -0
  69. package/dist/lib/parser/EmitControllerParser.js.map +1 -1
  70. package/dist/lib/parser/EmitterParser.d.ts +54 -1
  71. package/dist/lib/parser/EmitterParser.js +72 -15
  72. package/dist/lib/parser/EmitterParser.js.map +1 -1
  73. package/dist/lib/pixi/Renderer.d.ts +55 -0
  74. package/dist/lib/pixi/Renderer.js +55 -0
  75. package/dist/lib/pixi/Renderer.js.map +1 -1
  76. package/dist/lib/util/Color.d.ts +101 -0
  77. package/dist/lib/util/Color.js +101 -0
  78. package/dist/lib/util/Color.js.map +1 -1
  79. package/dist/lib/util/List.d.ts +40 -0
  80. package/dist/lib/util/List.js +40 -0
  81. package/dist/lib/util/List.js.map +1 -1
  82. package/dist/lib/util/Point.d.ts +21 -0
  83. package/dist/lib/util/Point.js +21 -0
  84. package/dist/lib/util/Point.js.map +1 -1
  85. package/dist/lib/util/Random.d.ts +20 -0
  86. package/dist/lib/util/Random.js +20 -0
  87. package/dist/lib/util/Random.js.map +1 -1
  88. package/dist/lib/util/maths.d.ts +17 -0
  89. package/dist/lib/util/maths.js +17 -0
  90. package/dist/lib/util/maths.js.map +1 -1
  91. package/package.json +1 -1
@@ -26,9 +26,13 @@ export default class PositionBehaviour extends Behaviour {
26
26
  this.warpFov = 20;
27
27
  this.warpStretch = 5;
28
28
  this.warpDistanceScaleConverter = 2000;
29
+ this.warpDistanceToCenter = false;
30
+ /**
31
+ * Function that initializes a particle
32
+ * @param {Particle} particle - The particle to be initialized
33
+ * @param {Model} model - The model of the particle
34
+ */
29
35
  this.init = (particle, model) => {
30
- if (!this.enabled)
31
- return;
32
36
  if (this.spawnType === 'Rectangle') {
33
37
  particle.movement.x = this.calculate(this.position.x, this.positionVariance.x);
34
38
  particle.movement.y = this.calculate(this.position.y, this.positionVariance.y);
@@ -68,9 +72,16 @@ export default class PositionBehaviour extends Behaviour {
68
72
  particle.y = particle.movement.y;
69
73
  this.restartWarp(particle, true, model);
70
74
  };
75
+ /**
76
+ * Restarts the warp of a particle
77
+ * @param {Particle} particle - The particle to restart the warp on
78
+ * @param {boolean} initial - True if this is the initial warp, false if it is a subsequent one
79
+ * @param {Model} model - The model containing the camera Z property
80
+ */
71
81
  this.restartWarp = (particle, initial, model) => {
72
82
  if (!this.warp)
73
83
  return;
84
+ const { sizeStart } = particle;
74
85
  if (initial) {
75
86
  particle.z = Math.random() * this.warpDistanceScaleConverter;
76
87
  }
@@ -79,55 +90,85 @@ export default class PositionBehaviour extends Behaviour {
79
90
  }
80
91
  const distance = Math.random() * this.positionVariance.x + 1;
81
92
  const deg = Math.random() * (Math.PI * 2);
82
- particle.warpSizeStart.x = (1 - (distance / this.positionVariance.x)) * 0.5 * particle.sizeStart.x;
83
- particle.warpSizeStart.y = (1 - (distance / this.positionVariance.x)) * 0.5 * particle.sizeStart.y;
84
- particle.movement.x = Math.cos(deg) * distance;
85
- particle.movement.y = Math.sin(deg) * distance;
86
- particle.color.alpha = (1 - (distance / this.positionVariance.x)) * 0.5;
93
+ particle.warpSizeStart.x = (1 - distance / this.positionVariance.x) * 0.5 * sizeStart.x;
94
+ particle.warpSizeStart.y = (1 - distance / this.positionVariance.y) * 0.5 * sizeStart.y;
95
+ if (this.warpDistanceToCenter) {
96
+ particle.movement.x = Math.cos(deg) * distance;
97
+ particle.movement.y = Math.sin(deg) * distance;
98
+ }
99
+ else {
100
+ particle.x = Math.cos(deg) * distance;
101
+ particle.y = Math.sin(deg) * distance;
102
+ }
103
+ particle.color.alpha = (1 - distance / this.positionVariance.x) * 0.5;
87
104
  };
105
+ /**
106
+ * Adds a random variance to the given value
107
+ * @param {number} value - The value to calculate
108
+ * @param {number} variance - The random variance to add
109
+ * @returns {number} The calculated value
110
+ */
88
111
  this.calculate = (value, variance) => {
89
112
  return value + this.varianceFrom(variance);
90
113
  };
114
+ /**
115
+ * Applies the particle's velocity and acceleration to move it and calculate its size, rotation, and position.
116
+ * @param {Particle} particle - The particle to be moved
117
+ * @param {number} deltaTime - The time delta for the movement calculation
118
+ * @param {Model} model - The model containing information about the particle's movement
119
+ */
91
120
  this.apply = (particle, deltaTime, model) => {
92
- if (!this.enabled)
93
- return;
94
- particle.velocity.x += particle.acceleration.x * deltaTime;
95
- particle.velocity.y += particle.acceleration.y * deltaTime;
96
- particle.movement.x += particle.velocity.x * deltaTime;
97
- particle.movement.y += particle.velocity.y * deltaTime;
121
+ const { acceleration, sinXVal, sinYVal, z, warpSizeStart, movement } = particle;
122
+ const { cameraZ } = model;
123
+ const PI = Math.PI;
124
+ particle.velocity.x += acceleration.x * deltaTime;
125
+ particle.velocity.y += acceleration.y * deltaTime;
126
+ const movementX = movement.x + particle.velocity.x * deltaTime;
127
+ const movementY = movement.y + particle.velocity.y * deltaTime;
128
+ particle.movement.x = movementX;
129
+ particle.movement.y = movementY;
98
130
  if (this.sinX) {
99
- particle.x = particle.movement.x + Math.sin(Math.PI * (particle.movement.y / particle.sinXVal.x)) * particle.sinXVal.y;
131
+ particle.x = movementX + Math.sin(PI * (movementY / sinXVal.x)) * sinXVal.y;
100
132
  }
101
133
  else {
102
- particle.x = particle.movement.x;
134
+ particle.x = movementX;
103
135
  }
104
136
  if (this.sinY) {
105
- particle.y = particle.movement.y + Math.sin(Math.PI * (particle.movement.x / particle.sinYVal.x)) * particle.sinYVal.y;
137
+ particle.y = movementY + Math.sin(PI * (movementX / sinYVal.x)) * sinYVal.y;
106
138
  }
107
139
  else {
108
- particle.y = particle.movement.y;
140
+ particle.y = movementY;
109
141
  }
110
142
  if (model.warp) {
111
- if (particle.z < model.cameraZ) {
143
+ if (z < cameraZ) {
112
144
  this.restartWarp(particle, false, model);
113
145
  }
114
- const z = particle.z - model.cameraZ;
115
- const dxCenter = particle.movement.x;
116
- const dyCenter = particle.movement.y;
146
+ const newZ = z - cameraZ;
147
+ const dxCenter = movementX;
148
+ const dyCenter = movementY;
117
149
  const distanceCenter = Math.sqrt(dxCenter * dxCenter + dyCenter * dyCenter);
118
- const distanceScale = Math.max(0, (this.warpDistanceScaleConverter - z) / this.warpDistanceScaleConverter);
119
- const fovZ = this.warpFov / z;
120
- particle.x = particle.movement.x * fovZ;
121
- particle.y = particle.movement.y * fovZ;
122
- particle.size.x = distanceScale * particle.warpSizeStart.x;
123
- particle.size.y = distanceScale * particle.warpSizeStart.y + distanceScale * this.warpSpeed * this.warpStretch * distanceCenter;
124
- particle.rotation = Math.atan2(dyCenter, dxCenter) + Math.PI / 2;
150
+ const distanceScale = Math.max(0, (this.warpDistanceScaleConverter - newZ) / this.warpDistanceScaleConverter);
151
+ const fovZ = this.warpFov / newZ;
152
+ particle.x = movementX * fovZ;
153
+ particle.y = movementY * fovZ;
154
+ particle.size.x = distanceScale * warpSizeStart.x;
155
+ particle.size.y =
156
+ distanceScale * warpSizeStart.y + distanceScale * this.warpSpeed * this.warpStretch * distanceCenter;
157
+ particle.rotation = Math.atan2(dyCenter, dxCenter) + PI / 2;
125
158
  }
126
159
  };
127
160
  }
161
+ /**
162
+ * Gets the name of the behaviour
163
+ * @return {BehaviourNames} The name of the behaviour
164
+ */
128
165
  getName() {
129
166
  return BehaviourNames.POSITION_BEHAVIOUR;
130
167
  }
168
+ /**
169
+ * @description Retrieves the properties of the object.
170
+ * @returns {Object} The properties of the object.
171
+ */
131
172
  getProps() {
132
173
  return {
133
174
  enabled: this.enabled,
@@ -171,6 +212,7 @@ export default class PositionBehaviour extends Behaviour {
171
212
  warpFov: this.warpFov,
172
213
  warpStretch: this.warpStretch,
173
214
  warpDistanceScaleConverter: this.warpDistanceScaleConverter,
215
+ warpDistanceToCenter: this.warpDistanceToCenter,
174
216
  name: this.getName(),
175
217
  };
176
218
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PositionBehaviour.js","sourceRoot":"","sources":["../../../src/lib/behaviour/PositionBehaviour.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PositionBehaviour.js","sourceRoot":"","sources":["../../../src/lib/behaviour/PositionBehaviour.ts"],"names":[],"mappings":"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"}
@@ -1,17 +1,46 @@
1
1
  import { Behaviour } from './index';
2
2
  import Particle from '../Particle';
3
+ /**
4
+ * RotationBehaviour is a Behaviour class used to control the rotation of particles.
5
+ * @extends Behaviour
6
+ */
3
7
  export default class RotationBehaviour extends Behaviour {
8
+ /**
9
+ * @type {boolean} enabled - Enable or disable the Behaviour
10
+ */
4
11
  enabled: boolean;
12
+ /**
13
+ * @type {number} priority - The priority of the Behaviour.
14
+ */
5
15
  priority: number;
16
+ /**
17
+ * @type {number} rotation - The amount of rotation to apply on each particle.
18
+ */
6
19
  rotation: number;
20
+ /**
21
+ * @type {number} variance - The amount of variance to apply on the particle's rotation.
22
+ */
7
23
  variance: number;
24
+ /**
25
+ * Initialise the Behaviour for a particle
26
+ * @param {Particle} particle - The particle to be initialised
27
+ */
8
28
  init: (particle: Particle) => void;
29
+ /**
30
+ * Applies the Behaviour to a particle
31
+ * @param {Particle} particle - The particle to apply the Behaviour to
32
+ * @param {number} deltaTime - The delta time of the runtime
33
+ */
9
34
  apply: (particle: Particle, deltaTime: number) => void;
35
+ /**
36
+ * Gets the name of the Behaviour
37
+ * @returns {string} - The name of the Behaviour
38
+ */
10
39
  getName(): string;
11
- get rotationInDegrees(): number;
12
- set rotationInDegrees(value: number);
13
- get varianceInDegrees(): number;
14
- set varianceInDegrees(value: number);
40
+ /**
41
+ * Gets the properties of the Behaviour
42
+ * @returns {object} - The properties of the Behaviour
43
+ */
15
44
  getProps(): {
16
45
  enabled: boolean;
17
46
  priority: number;
@@ -1,38 +1,54 @@
1
1
  import { Behaviour, BehaviourNames } from './index';
2
- import math from '../util/maths';
2
+ /**
3
+ * RotationBehaviour is a Behaviour class used to control the rotation of particles.
4
+ * @extends Behaviour
5
+ */
3
6
  export default class RotationBehaviour extends Behaviour {
4
7
  constructor() {
5
8
  super(...arguments);
9
+ /**
10
+ * @type {boolean} enabled - Enable or disable the Behaviour
11
+ */
6
12
  this.enabled = false;
13
+ /**
14
+ * @type {number} priority - The priority of the Behaviour.
15
+ */
7
16
  this.priority = 0;
17
+ /**
18
+ * @type {number} rotation - The amount of rotation to apply on each particle.
19
+ */
8
20
  this.rotation = 0;
21
+ /**
22
+ * @type {number} variance - The amount of variance to apply on the particle's rotation.
23
+ */
9
24
  this.variance = 0;
25
+ /**
26
+ * Initialise the Behaviour for a particle
27
+ * @param {Particle} particle - The particle to be initialised
28
+ */
10
29
  this.init = (particle) => {
11
- if (!this.enabled)
12
- return;
13
30
  particle.rotationDelta = this.rotation + this.varianceFrom(this.variance);
14
31
  };
32
+ /**
33
+ * Applies the Behaviour to a particle
34
+ * @param {Particle} particle - The particle to apply the Behaviour to
35
+ * @param {number} deltaTime - The delta time of the runtime
36
+ */
15
37
  this.apply = (particle, deltaTime) => {
16
- if (!this.enabled)
17
- return;
18
38
  particle.rotation += particle.rotationDelta * deltaTime;
19
39
  };
20
40
  }
41
+ /**
42
+ * Gets the name of the Behaviour
43
+ * @returns {string} - The name of the Behaviour
44
+ */
21
45
  getName() {
22
46
  return BehaviourNames.ROTATION_BEHAVIOUR;
23
47
  }
24
- get rotationInDegrees() {
25
- return math.radiansToDegrees(this.variance);
26
- }
27
- set rotationInDegrees(value) {
28
- this.rotation = math.radiansToDegrees(value);
29
- }
30
- get varianceInDegrees() {
31
- return math.radiansToDegrees(this.variance);
32
- }
33
- set varianceInDegrees(value) {
34
- this.variance = math.radiansToDegrees(value);
35
- }
48
+ /**
49
+ * Gets the properties of the Behaviour
50
+ * @returns {object} - The properties of the Behaviour
51
+ */
36
52
  getProps() {
37
53
  return {
38
54
  enabled: this.enabled,
@@ -1 +1 @@
1
- {"version":3,"file":"RotationBehaviour.js","sourceRoot":"","sources":["../../../src/lib/behaviour/RotationBehaviour.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AACnD,OAAO,IAAI,MAAM,eAAe,CAAA;AAGhC,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,SAAS;IAAxD;;QACE,YAAO,GAAG,KAAK,CAAA;QACf,aAAQ,GAAG,CAAC,CAAA;QACZ,aAAQ,GAAG,CAAC,CAAA;QACZ,aAAQ,GAAG,CAAC,CAAA;QAEZ,SAAI,GAAG,CAAC,QAAkB,EAAE,EAAE;YAC5B,IAAI,CAAC,IAAI,CAAC,OAAO;gBAAE,OAAM;YACzB,QAAQ,CAAC,aAAa,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC3E,CAAC,CAAA;QAED,UAAK,GAAG,CAAC,QAAkB,EAAE,SAAiB,EAAE,EAAE;YAChD,IAAI,CAAC,IAAI,CAAC,OAAO;gBAAE,OAAM;YACzB,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,aAAa,GAAG,SAAS,CAAA;QACzD,CAAC,CAAA;IA+BH,CAAC;IA7BC,OAAO;QACL,OAAO,cAAc,CAAC,kBAAkB,CAAA;IAC1C,CAAC;IAED,IAAI,iBAAiB;QACnB,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAC7C,CAAC;IAED,IAAI,iBAAiB,CAAC,KAAa;QACjC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAA;IAC9C,CAAC;IAED,IAAI,iBAAiB;QACnB,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAC7C,CAAC;IAED,IAAI,iBAAiB,CAAC,KAAa;QACjC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAA;IAC9C,CAAC;IAED,QAAQ;QACN,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE;SACrB,CAAA;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"RotationBehaviour.js","sourceRoot":"","sources":["../../../src/lib/behaviour/RotationBehaviour.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAGnD;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,SAAS;IAAxD;;QACE;;WAEG;QACH,YAAO,GAAG,KAAK,CAAA;QAEf;;WAEG;QACH,aAAQ,GAAG,CAAC,CAAA;QAEZ;;WAEG;QACH,aAAQ,GAAG,CAAC,CAAA;QAEZ;;WAEG;QACH,aAAQ,GAAG,CAAC,CAAA;QAEZ;;;WAGG;QACH,SAAI,GAAG,CAAC,QAAkB,EAAE,EAAE;YAC5B,QAAQ,CAAC,aAAa,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC3E,CAAC,CAAA;QAED;;;;WAIG;QACH,UAAK,GAAG,CAAC,QAAkB,EAAE,SAAiB,EAAE,EAAE;YAChD,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,aAAa,GAAG,SAAS,CAAA;QACzD,CAAC,CAAA;IAuBH,CAAC;IArBC;;;OAGG;IACH,OAAO;QACL,OAAO,cAAc,CAAC,kBAAkB,CAAA;IAC1C,CAAC;IAED;;;OAGG;IACH,QAAQ;QACN,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE;SACrB,CAAA;IACH,CAAC;CACF"}
@@ -10,7 +10,7 @@ export default class SizeBehaviour extends Behaviour {
10
10
  startVariance: number;
11
11
  endVariance: number;
12
12
  init: (particle: Particle) => void;
13
- apply: (particle: Particle, deltaTime: number) => void;
13
+ apply: (particle: Particle) => void;
14
14
  getName(): string;
15
15
  getProps(): {
16
16
  enabled: boolean;
@@ -11,32 +11,39 @@ export default class SizeBehaviour extends Behaviour {
11
11
  this.startVariance = 0;
12
12
  this.endVariance = 0;
13
13
  this.init = (particle) => {
14
- if (!this.enabled)
15
- return;
16
14
  let variance = this.varianceFrom(this.startVariance);
17
- particle.sizeStart.x = this.sizeStart.x + variance;
18
- particle.sizeStart.y = this.sizeStart.y + variance;
15
+ let sizeStartX = this.sizeStart.x + variance;
16
+ let sizeStartY = this.sizeStart.y + variance;
19
17
  variance = this.varianceFrom(this.endVariance);
20
- particle.sizeEnd.x = this.sizeEnd.x + variance;
21
- particle.sizeEnd.y = this.sizeEnd.y + variance;
18
+ let sizeEndX = this.sizeEnd.x + variance;
19
+ let sizeEndY = this.sizeEnd.y + variance;
22
20
  if (!this.allowNegativeValues) {
23
- particle.sizeStart.x = Math.max(particle.sizeStart.x, 0);
24
- particle.sizeStart.y = Math.max(particle.sizeStart.y, 0);
25
- particle.sizeEnd.x = Math.max(particle.sizeEnd.x, 0);
26
- particle.sizeEnd.y = Math.max(particle.sizeEnd.y, 0);
21
+ sizeStartX = Math.max(sizeStartX, 0);
22
+ sizeStartY = Math.max(sizeStartY, 0);
23
+ sizeEndX = Math.max(sizeEndX, 0);
24
+ sizeEndY = Math.max(sizeEndY, 0);
27
25
  }
26
+ particle.sizeDifference = {
27
+ x: sizeEndX - sizeStartX,
28
+ y: sizeEndY - sizeStartY,
29
+ };
30
+ particle.sizeStart.x = sizeStartX;
31
+ particle.sizeStart.y = sizeStartY;
32
+ particle.sizeEnd.x = sizeEndX;
33
+ particle.sizeEnd.y = sizeEndY;
28
34
  particle.size.copyFrom(particle.sizeStart);
29
35
  };
30
- this.apply = (particle, deltaTime) => {
31
- if (!this.enabled)
32
- return;
33
- particle.size.copyFrom(particle.sizeStart);
34
- particle.size.x += (particle.sizeEnd.x - particle.sizeStart.x) * particle.lifeProgress;
35
- particle.size.y += (particle.sizeEnd.y - particle.sizeStart.y) * particle.lifeProgress;
36
+ this.apply = (particle) => {
37
+ const { sizeStart, lifeProgress, sizeDifference, size } = particle;
38
+ particle.size.copyFrom(sizeStart);
39
+ let sizeX = size.x + sizeDifference.x * lifeProgress;
40
+ let sizeY = size.y + sizeDifference.y * lifeProgress;
36
41
  if (!this.allowNegativeValues) {
37
- particle.size.x = Math.max(0, particle.size.x);
38
- particle.size.x = Math.max(0, particle.size.x);
42
+ sizeX = Math.max(0, sizeX);
43
+ sizeY = Math.max(0, sizeY);
39
44
  }
45
+ particle.size.x = sizeX;
46
+ particle.size.y = sizeY;
40
47
  };
41
48
  }
42
49
  getName() {
@@ -1 +1 @@
1
- {"version":3,"file":"SizeBehaviour.js","sourceRoot":"","sources":["../../../src/lib/behaviour/SizeBehaviour.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SizeBehaviour.js","sourceRoot":"","sources":["../../../src/lib/behaviour/SizeBehaviour.ts"],"names":[],"mappings":"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"}
@@ -21,7 +21,7 @@ export default class TurbulenceBehaviour extends Behaviour {
21
21
  duration: number;
22
22
  maxLifeTime: number;
23
23
  init: (particle: Particle) => void;
24
- apply: (particle: Particle, deltaTime: number) => void;
24
+ apply: (particle: Particle) => void;
25
25
  getName(): string;
26
26
  getProps(): {
27
27
  enabled: boolean;
@@ -24,14 +24,10 @@ export default class TurbulenceBehaviour extends Behaviour {
24
24
  this.duration = 0;
25
25
  this.maxLifeTime = 0;
26
26
  this.init = (particle) => {
27
- if (!this.enabled)
28
- return;
29
27
  particle.showVortices = this.showVortices;
30
28
  particle.turbulence = this.turbulence;
31
29
  };
32
- this.apply = (particle, deltaTime) => {
33
- if (!this.enabled)
34
- return;
30
+ this.apply = (particle) => {
35
31
  if (particle.turbulence)
36
32
  return;
37
33
  turbulencePool.list.forEach((vortex) => {
@@ -1 +1 @@
1
- {"version":3,"file":"TurbulenceBehaviour.js","sourceRoot":"","sources":["../../../src/lib/behaviour/TurbulenceBehaviour.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TurbulenceBehaviour.js","sourceRoot":"","sources":["../../../src/lib/behaviour/TurbulenceBehaviour.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,30 @@
1
1
  import { EmitControllerParser } from '../parser';
2
+ /**
3
+ * Abstract class representing a particle emitter.
4
+ * @abstract
5
+ */
2
6
  export default class AbstractEmission {
7
+ /**
8
+ * Calculate number of particles emitted after given time deltas
9
+ * @param {number} deltaTime - number of seconds passed
10
+ * @param {number} particlesCount - current number of particles
11
+ * @return {number} - the number of particles emitted
12
+ * @abstract
13
+ */
3
14
  howMany(deltaTime: number, particlesCount: number): void;
15
+ /**
16
+ * Reset the emission
17
+ */
4
18
  reset(): void;
19
+ /**
20
+ * Get the name of the emission
21
+ * @return {string} - the name of the emission
22
+ * @throws {Error} - when the method is not overridden in subclass
23
+ */
5
24
  getName(): void;
25
+ /**
26
+ * Get the parser for the emitter
27
+ * @return {EmitControllerParser} - parser for the emitter
28
+ */
6
29
  getParser(): EmitControllerParser;
7
30
  }
@@ -1,14 +1,37 @@
1
1
  import { EmitControllerParser } from '../parser';
2
+ /**
3
+ * Abstract class representing a particle emitter.
4
+ * @abstract
5
+ */
2
6
  export default class AbstractEmission {
7
+ /**
8
+ * Calculate number of particles emitted after given time deltas
9
+ * @param {number} deltaTime - number of seconds passed
10
+ * @param {number} particlesCount - current number of particles
11
+ * @return {number} - the number of particles emitted
12
+ * @abstract
13
+ */
3
14
  howMany(deltaTime, particlesCount) {
4
15
  throw new Error('Abstract method');
5
16
  }
17
+ /**
18
+ * Reset the emission
19
+ */
6
20
  reset() {
7
21
  //
8
22
  }
23
+ /**
24
+ * Get the name of the emission
25
+ * @return {string} - the name of the emission
26
+ * @throws {Error} - when the method is not overridden in subclass
27
+ */
9
28
  getName() {
10
29
  throw new Error('This method has to be overridden in subclass');
11
30
  }
31
+ /**
32
+ * Get the parser for the emitter
33
+ * @return {EmitControllerParser} - parser for the emitter
34
+ */
12
35
  getParser() {
13
36
  return new EmitControllerParser(this);
14
37
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractEmission.js","sourceRoot":"","sources":["../../../src/lib/emission/AbstractEmission.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAEhD,MAAM,CAAC,OAAO,OAAO,gBAAgB;IACnC,OAAO,CAAC,SAAiB,EAAE,cAAsB;QAC/C,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAA;IACpC,CAAC;IAED,KAAK;QACH,EAAE;IACJ,CAAC;IAED,OAAO;QACL,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAA;IACjE,CAAC;IAED,SAAS;QACP,OAAO,IAAI,oBAAoB,CAAC,IAAI,CAAC,CAAA;IACvC,CAAC;CACF"}
1
+ {"version":3,"file":"AbstractEmission.js","sourceRoot":"","sources":["../../../src/lib/emission/AbstractEmission.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAEhD;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,gBAAgB;IACnC;;;;;;OAMG;IACH,OAAO,CAAC,SAAiB,EAAE,cAAsB;QAC/C,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAA;IACpC,CAAC;IAED;;OAEG;IACH,KAAK;QACH,EAAE;IACJ,CAAC;IAED;;;;OAIG;IACH,OAAO;QACL,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAA;IACjE,CAAC;IAED;;;OAGG;IACH,SAAS;QACP,OAAO,IAAI,oBAAoB,CAAC,IAAI,CAAC,CAAA;IACvC,CAAC;CACF"}
@@ -1,11 +1,44 @@
1
1
  import { AbstractEmission } from './index';
2
+ /**
3
+ * RandomEmission class to generate random particles
4
+ * @extends AbstractEmission
5
+ */
2
6
  export default class RandomEmission extends AbstractEmission {
7
+ /**
8
+ * Maximum number of particles
9
+ */
3
10
  _maxParticles: number;
11
+ /**
12
+ * Emission rate
13
+ */
4
14
  _emissionRate: number;
15
+ /**
16
+ * Calculates how many particles to emit
17
+ * @param {number} deltaTime - how much time is passed
18
+ * @param {number} particlesCount - current number of particles
19
+ */
5
20
  howMany(deltaTime: number, particlesCount: number): number;
21
+ /**
22
+ * Gets the emission rate
23
+ */
6
24
  get emissionRate(): number;
25
+ /**
26
+ * Sets the emission rate
27
+ * @param {number} value - the emission rate to set
28
+ */
7
29
  set emissionRate(value: number);
30
+ /**
31
+ * Gets the maximum number of particles
32
+ */
8
33
  get maxParticles(): number;
34
+ /**
35
+ * Sets the maximum number of particles
36
+ * @param {number} value - the maximum number of particles to set
37
+ */
9
38
  set maxParticles(value: number);
39
+ /**
40
+ * Gets the name of the emission type
41
+ * @returns {string} Emission type
42
+ */
10
43
  getName: () => string;
11
44
  }