custom-pixi-particles 5.2.0 → 8.0.0

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 (128) hide show
  1. package/README.md +119 -82
  2. package/package.json +5 -5
  3. package/dist/index.d.ts +0 -11
  4. package/dist/index.js +0 -28
  5. package/dist/index.js.map +0 -1
  6. package/dist/lib/Model.d.ts +0 -32
  7. package/dist/lib/Model.js +0 -44
  8. package/dist/lib/Model.js.map +0 -1
  9. package/dist/lib/Particle.d.ts +0 -220
  10. package/dist/lib/Particle.js +0 -172
  11. package/dist/lib/Particle.js.map +0 -1
  12. package/dist/lib/ParticlePool.d.ts +0 -37
  13. package/dist/lib/ParticlePool.js +0 -56
  14. package/dist/lib/ParticlePool.js.map +0 -1
  15. package/dist/lib/behaviour/AngularVelocityBehaviour.d.ts +0 -57
  16. package/dist/lib/behaviour/AngularVelocityBehaviour.js +0 -87
  17. package/dist/lib/behaviour/AngularVelocityBehaviour.js.map +0 -1
  18. package/dist/lib/behaviour/Behaviour.d.ts +0 -33
  19. package/dist/lib/behaviour/Behaviour.js +0 -45
  20. package/dist/lib/behaviour/Behaviour.js.map +0 -1
  21. package/dist/lib/behaviour/BehaviourNames.d.ts +0 -11
  22. package/dist/lib/behaviour/BehaviourNames.js +0 -11
  23. package/dist/lib/behaviour/BehaviourNames.js.map +0 -1
  24. package/dist/lib/behaviour/ColorBehaviour.d.ts +0 -45
  25. package/dist/lib/behaviour/ColorBehaviour.js +0 -77
  26. package/dist/lib/behaviour/ColorBehaviour.js.map +0 -1
  27. package/dist/lib/behaviour/EmitDirectionBehaviour.d.ts +0 -46
  28. package/dist/lib/behaviour/EmitDirectionBehaviour.js +0 -64
  29. package/dist/lib/behaviour/EmitDirectionBehaviour.js.map +0 -1
  30. package/dist/lib/behaviour/EmitterBehaviours.d.ts +0 -63
  31. package/dist/lib/behaviour/EmitterBehaviours.js +0 -105
  32. package/dist/lib/behaviour/EmitterBehaviours.js.map +0 -1
  33. package/dist/lib/behaviour/LifeBehaviour.d.ts +0 -67
  34. package/dist/lib/behaviour/LifeBehaviour.js +0 -85
  35. package/dist/lib/behaviour/LifeBehaviour.js.map +0 -1
  36. package/dist/lib/behaviour/PositionBehaviour.d.ts +0 -177
  37. package/dist/lib/behaviour/PositionBehaviour.js +0 -534
  38. package/dist/lib/behaviour/PositionBehaviour.js.map +0 -1
  39. package/dist/lib/behaviour/RotationBehaviour.d.ts +0 -51
  40. package/dist/lib/behaviour/RotationBehaviour.js +0 -66
  41. package/dist/lib/behaviour/RotationBehaviour.js.map +0 -1
  42. package/dist/lib/behaviour/SizeBehaviour.d.ts +0 -31
  43. package/dist/lib/behaviour/SizeBehaviour.js +0 -71
  44. package/dist/lib/behaviour/SizeBehaviour.js.map +0 -1
  45. package/dist/lib/behaviour/TurbulenceBehaviour.d.ts +0 -72
  46. package/dist/lib/behaviour/TurbulenceBehaviour.js +0 -128
  47. package/dist/lib/behaviour/TurbulenceBehaviour.js.map +0 -1
  48. package/dist/lib/behaviour/index.d.ts +0 -12
  49. package/dist/lib/behaviour/index.js +0 -13
  50. package/dist/lib/behaviour/index.js.map +0 -1
  51. package/dist/lib/customPixiParticlesSettingsInterface.d.ts +0 -18
  52. package/dist/lib/customPixiParticlesSettingsInterface.js +0 -2
  53. package/dist/lib/customPixiParticlesSettingsInterface.js.map +0 -1
  54. package/dist/lib/emission/AbstractEmission.d.ts +0 -30
  55. package/dist/lib/emission/AbstractEmission.js +0 -39
  56. package/dist/lib/emission/AbstractEmission.js.map +0 -1
  57. package/dist/lib/emission/EmissionTypes.d.ts +0 -6
  58. package/dist/lib/emission/EmissionTypes.js +0 -6
  59. package/dist/lib/emission/EmissionTypes.js.map +0 -1
  60. package/dist/lib/emission/RandomEmission.d.ts +0 -44
  61. package/dist/lib/emission/RandomEmission.js +0 -66
  62. package/dist/lib/emission/RandomEmission.js.map +0 -1
  63. package/dist/lib/emission/StandardEmission.d.ts +0 -62
  64. package/dist/lib/emission/StandardEmission.js +0 -87
  65. package/dist/lib/emission/StandardEmission.js.map +0 -1
  66. package/dist/lib/emission/UniformEmission.d.ts +0 -56
  67. package/dist/lib/emission/UniformEmission.js +0 -83
  68. package/dist/lib/emission/UniformEmission.js.map +0 -1
  69. package/dist/lib/emission/index.d.ts +0 -6
  70. package/dist/lib/emission/index.js +0 -7
  71. package/dist/lib/emission/index.js.map +0 -1
  72. package/dist/lib/emitter/Duration.d.ts +0 -27
  73. package/dist/lib/emitter/Duration.js +0 -41
  74. package/dist/lib/emitter/Duration.js.map +0 -1
  75. package/dist/lib/emitter/Emitter.d.ts +0 -113
  76. package/dist/lib/emitter/Emitter.js +0 -201
  77. package/dist/lib/emitter/Emitter.js.map +0 -1
  78. package/dist/lib/emitter/index.d.ts +0 -3
  79. package/dist/lib/emitter/index.js +0 -4
  80. package/dist/lib/emitter/index.js.map +0 -1
  81. package/dist/lib/index.d.ts +0 -20
  82. package/dist/lib/index.js +0 -21
  83. package/dist/lib/index.js.map +0 -1
  84. package/dist/lib/parser/BehaviourParser.d.ts +0 -21
  85. package/dist/lib/parser/BehaviourParser.js +0 -72
  86. package/dist/lib/parser/BehaviourParser.js.map +0 -1
  87. package/dist/lib/parser/CompatibilityHelper.d.ts +0 -12
  88. package/dist/lib/parser/CompatibilityHelper.js +0 -19
  89. package/dist/lib/parser/CompatibilityHelper.js.map +0 -1
  90. package/dist/lib/parser/EmitControllerParser.d.ts +0 -27
  91. package/dist/lib/parser/EmitControllerParser.js +0 -39
  92. package/dist/lib/parser/EmitControllerParser.js.map +0 -1
  93. package/dist/lib/parser/EmitterParser.d.ts +0 -67
  94. package/dist/lib/parser/EmitterParser.js +0 -168
  95. package/dist/lib/parser/EmitterParser.js.map +0 -1
  96. package/dist/lib/parser/index.d.ts +0 -5
  97. package/dist/lib/parser/index.js +0 -6
  98. package/dist/lib/parser/index.js.map +0 -1
  99. package/dist/lib/pixi/Renderer.d.ts +0 -116
  100. package/dist/lib/pixi/Renderer.js +0 -508
  101. package/dist/lib/pixi/Renderer.js.map +0 -1
  102. package/dist/lib/util/Color.d.ts +0 -133
  103. package/dist/lib/util/Color.js +0 -173
  104. package/dist/lib/util/Color.js.map +0 -1
  105. package/dist/lib/util/List.d.ts +0 -49
  106. package/dist/lib/util/List.js +0 -87
  107. package/dist/lib/util/List.js.map +0 -1
  108. package/dist/lib/util/MinMax.d.ts +0 -34
  109. package/dist/lib/util/MinMax.js +0 -46
  110. package/dist/lib/util/MinMax.js.map +0 -1
  111. package/dist/lib/util/Point.d.ts +0 -34
  112. package/dist/lib/util/Point.js +0 -46
  113. package/dist/lib/util/Point.js.map +0 -1
  114. package/dist/lib/util/Random.d.ts +0 -24
  115. package/dist/lib/util/Random.js +0 -30
  116. package/dist/lib/util/Random.js.map +0 -1
  117. package/dist/lib/util/ThereBack.d.ts +0 -14
  118. package/dist/lib/util/ThereBack.js +0 -23
  119. package/dist/lib/util/ThereBack.js.map +0 -1
  120. package/dist/lib/util/index.d.ts +0 -5
  121. package/dist/lib/util/index.js +0 -6
  122. package/dist/lib/util/index.js.map +0 -1
  123. package/dist/lib/util/maths.d.ts +0 -10
  124. package/dist/lib/util/maths.js +0 -13
  125. package/dist/lib/util/maths.js.map +0 -1
  126. package/dist/lib/util/turbulencePool.d.ts +0 -4
  127. package/dist/lib/util/turbulencePool.js +0 -7
  128. package/dist/lib/util/turbulencePool.js.map +0 -1
@@ -1,46 +0,0 @@
1
- import Behaviour from './Behaviour';
2
- import Particle from '../Particle';
3
- /**
4
- * The EmitDirectionBehaviour class that inherits from the Behaviour class.
5
- * This class is used to set the direction of a particle when it is emitted.
6
- * @export
7
- * @class EmitDirectionBehaviour
8
- * @extends {Behaviour}
9
- */
10
- export default class EmitDirectionBehaviour extends Behaviour {
11
- enabled: boolean;
12
- priority: number;
13
- angle: number;
14
- variance: number;
15
- /**
16
- * Initializes the particle's direction.
17
- * @param {Particle} particle - The particle that is being initialized.
18
- * @memberof EmitDirectionBehaviour
19
- */
20
- init: (particle: Particle) => void;
21
- /**
22
- * Applies the behavior to the particle.
23
- * @param {Particle} particle - The particle to which the behavior is being applied.
24
- * @param {number} deltaTime - The amount of time since the behavior was last applied.
25
- * @memberof EmitDirectionBehaviour
26
- */
27
- apply: (particle: Particle) => void;
28
- /**
29
- * Gets the name of the behavior.
30
- * @returns {BehaviourNames.EMIT_DIRECTION}
31
- * @memberof EmitDirectionBehaviour
32
- */
33
- getName(): string;
34
- /**
35
- * Gets the properties of the behavior.
36
- * @returns {object} - The properties of the behavior.
37
- * @memberof EmitDirectionBehaviour
38
- */
39
- getProps(): {
40
- enabled: boolean;
41
- priority: number;
42
- angle: number;
43
- variance: number;
44
- name: string;
45
- };
46
- }
@@ -1,64 +0,0 @@
1
- import Behaviour from './Behaviour';
2
- import BehaviourNames from './BehaviourNames';
3
- let _tmp = 0;
4
- /**
5
- * The EmitDirectionBehaviour class that inherits from the Behaviour class.
6
- * This class is used to set the direction of a particle when it is emitted.
7
- * @export
8
- * @class EmitDirectionBehaviour
9
- * @extends {Behaviour}
10
- */
11
- export default class EmitDirectionBehaviour extends Behaviour {
12
- constructor() {
13
- super(...arguments);
14
- this.enabled = true;
15
- this.priority = 0;
16
- this.angle = 0;
17
- this.variance = 0;
18
- /**
19
- * Initializes the particle's direction.
20
- * @param {Particle} particle - The particle that is being initialized.
21
- * @memberof EmitDirectionBehaviour
22
- */
23
- this.init = (particle) => {
24
- const directionAngle = this.angle + this.varianceFrom(this.variance);
25
- particle.directionCos = Math.cos(directionAngle);
26
- particle.directionSin = Math.sin(directionAngle);
27
- };
28
- /**
29
- * Applies the behavior to the particle.
30
- * @param {Particle} particle - The particle to which the behavior is being applied.
31
- * @param {number} deltaTime - The amount of time since the behavior was last applied.
32
- * @memberof EmitDirectionBehaviour
33
- */
34
- this.apply = (particle) => {
35
- const { x, y, directionSin, directionCos } = particle;
36
- _tmp = directionCos * x - directionSin * y;
37
- particle.y = directionSin * x + directionCos * y;
38
- particle.x = _tmp;
39
- };
40
- }
41
- /**
42
- * Gets the name of the behavior.
43
- * @returns {BehaviourNames.EMIT_DIRECTION}
44
- * @memberof EmitDirectionBehaviour
45
- */
46
- getName() {
47
- return BehaviourNames.EMIT_DIRECTION;
48
- }
49
- /**
50
- * Gets the properties of the behavior.
51
- * @returns {object} - The properties of the behavior.
52
- * @memberof EmitDirectionBehaviour
53
- */
54
- getProps() {
55
- return {
56
- enabled: this.enabled,
57
- priority: this.priority,
58
- angle: this.angle,
59
- variance: this.variance,
60
- name: this.getName(),
61
- };
62
- }
63
- }
64
- //# sourceMappingURL=EmitDirectionBehaviour.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EmitDirectionBehaviour.js","sourceRoot":"","sources":["../../../src/lib/behaviour/EmitDirectionBehaviour.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,aAAa,CAAA;AACnC,OAAO,cAAc,MAAM,kBAAkB,CAAA;AAG7C,IAAI,IAAI,GAAG,CAAC,CAAA;AAEZ;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,OAAO,sBAAuB,SAAQ,SAAS;IAA7D;;QACE,YAAO,GAAG,IAAI,CAAA;QACd,aAAQ,GAAG,CAAC,CAAA;QACZ,UAAK,GAAG,CAAC,CAAA;QACT,aAAQ,GAAG,CAAC,CAAA;QAEZ;;;;WAIG;QACH,SAAI,GAAG,CAAC,QAAkB,EAAE,EAAE;YAC5B,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YACpE,QAAQ,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;YAChD,QAAQ,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;QAClD,CAAC,CAAA;QAED;;;;;WAKG;QACH,UAAK,GAAG,CAAC,QAAkB,EAAE,EAAE;YAC7B,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,EAAE,YAAY,EAAE,GAAG,QAAQ,CAAA;YAErD,IAAI,GAAG,YAAY,GAAG,CAAC,GAAG,YAAY,GAAG,CAAC,CAAA;YAC1C,QAAQ,CAAC,CAAC,GAAG,YAAY,GAAG,CAAC,GAAG,YAAY,GAAG,CAAC,CAAA;YAChD,QAAQ,CAAC,CAAC,GAAG,IAAI,CAAA;QACnB,CAAC,CAAA;IAyBH,CAAC;IAvBC;;;;OAIG;IACH,OAAO;QACL,OAAO,cAAc,CAAC,cAAc,CAAA;IACtC,CAAC;IAED;;;;OAIG;IACH,QAAQ;QACN,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE;SACrB,CAAA;IACH,CAAC;CACF"}
@@ -1,63 +0,0 @@
1
- import Particle from '../Particle';
2
- import Model from '../Model';
3
- import TurbulencePool from '../util/turbulencePool';
4
- /**
5
- * EmitterBehaviours class manages the behaviour of particles
6
- */
7
- export default class EmitterBehaviours {
8
- behaviours: any;
9
- /**
10
- * Gets all the enabled behaviours
11
- *
12
- * @return {any[]} The enabled behaviours
13
- */
14
- getAll: () => any;
15
- /**
16
- * Clears all the stored behaviours
17
- */
18
- clear: () => void;
19
- /**
20
- * Adds a behaviour
21
- *
22
- * @param {any} behaviour The behaviour to add
23
- *
24
- * @return {any} The added behaviour
25
- */
26
- add: (behaviour: any) => any;
27
- /**
28
- * Checks if there are no behaviours stored
29
- *
30
- * @return {boolean} True if there are no behaviours stored, false otherwise
31
- */
32
- isEmpty: () => boolean;
33
- /**
34
- * Gets a behaviour by name
35
- *
36
- * @param {string} name The name of the behaviour to get
37
- *
38
- * @return {any | null} The behaviour with the given name or null if not found
39
- */
40
- getByName: (name: string) => any;
41
- /**
42
- * Removes a behaviour by name
43
- *
44
- * @param {string} name The name of the behaviour to remove
45
- */
46
- removeByName: (name: string) => void;
47
- /**
48
- * Initialises the behaviours
49
- *
50
- * @param {Particle} particle The particle
51
- * @param {Model} model The model
52
- * @param {Model} turbulencePool The turbulencePool
53
- */
54
- init: (particle: Particle, model: Model, turbulencePool: TurbulencePool) => void;
55
- /**
56
- * Applies the behaviours
57
- *
58
- * @param {Particle} particle The particle
59
- * @param {number} deltaTime The delta time
60
- * @param {Model} model The model
61
- */
62
- apply: (particle: Particle, deltaTime: number, model: Model) => void;
63
- }
@@ -1,105 +0,0 @@
1
- // tslint:disable:prefer-for-of
2
- /**
3
- * EmitterBehaviours class manages the behaviour of particles
4
- */
5
- export default class EmitterBehaviours {
6
- constructor() {
7
- this.behaviours = [];
8
- /**
9
- * Gets all the enabled behaviours
10
- *
11
- * @return {any[]} The enabled behaviours
12
- */
13
- this.getAll = () => {
14
- return this.behaviours.filter((behaviour) => {
15
- return behaviour.enabled;
16
- });
17
- };
18
- /**
19
- * Clears all the stored behaviours
20
- */
21
- this.clear = () => {
22
- this.behaviours = [];
23
- };
24
- /**
25
- * Adds a behaviour
26
- *
27
- * @param {any} behaviour The behaviour to add
28
- *
29
- * @return {any} The added behaviour
30
- */
31
- this.add = (behaviour) => {
32
- if (this.getByName(behaviour.getName()) !== null) {
33
- throw new Error('Emitter duplicate');
34
- }
35
- this.behaviours.push(behaviour);
36
- this.behaviours.sort((a, b) => {
37
- return b.priority - a.priority;
38
- });
39
- return behaviour;
40
- };
41
- /**
42
- * Checks if there are no behaviours stored
43
- *
44
- * @return {boolean} True if there are no behaviours stored, false otherwise
45
- */
46
- this.isEmpty = () => {
47
- return this.getAll().length === 0;
48
- };
49
- /**
50
- * Gets a behaviour by name
51
- *
52
- * @param {string} name The name of the behaviour to get
53
- *
54
- * @return {any | null} The behaviour with the given name or null if not found
55
- */
56
- this.getByName = (name) => {
57
- for (let i = 0; i < this.behaviours.length; ++i) {
58
- if (this.behaviours[i].getName() === name) {
59
- return this.behaviours[i];
60
- }
61
- }
62
- return null;
63
- };
64
- /**
65
- * Removes a behaviour by name
66
- *
67
- * @param {string} name The name of the behaviour to remove
68
- */
69
- this.removeByName = (name) => {
70
- const behaviours = [];
71
- for (let i = 0; i < this.behaviours.length; ++i) {
72
- if (this.behaviours[i].getName() !== name) {
73
- behaviours.push(this.behaviours[i]);
74
- }
75
- }
76
- this.behaviours = behaviours;
77
- };
78
- /**
79
- * Initialises the behaviours
80
- *
81
- * @param {Particle} particle The particle
82
- * @param {Model} model The model
83
- * @param {Model} turbulencePool The turbulencePool
84
- */
85
- this.init = (particle, model, turbulencePool) => {
86
- for (let i = 0; i < this.behaviours.length; ++i) {
87
- this.behaviours[i].init(particle, model, turbulencePool);
88
- }
89
- };
90
- /**
91
- * Applies the behaviours
92
- *
93
- * @param {Particle} particle The particle
94
- * @param {number} deltaTime The delta time
95
- * @param {Model} model The model
96
- */
97
- this.apply = (particle, deltaTime, model) => {
98
- for (let i = 0; i < this.behaviours.length; ++i) {
99
- model.updateCamera(deltaTime);
100
- this.behaviours[i].apply(particle, deltaTime, model);
101
- }
102
- };
103
- }
104
- }
105
- //# sourceMappingURL=EmitterBehaviours.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EmitterBehaviours.js","sourceRoot":"","sources":["../../../src/lib/behaviour/EmitterBehaviours.ts"],"names":[],"mappings":"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"}
@@ -1,67 +0,0 @@
1
- import { Behaviour } from './index';
2
- import Particle from '../Particle';
3
- /**
4
- * This class is responsible for managing the lifetimes of particles.
5
- * It sets the maximum lifetime of the particle and updates its progress.
6
- *
7
- * @extends Behaviour
8
- */
9
- export default class LifeBehaviour extends Behaviour {
10
- /**
11
- * Whether or not this behaviour is enabled.
12
- *
13
- * @type {boolean}
14
- */
15
- enabled: boolean;
16
- /**
17
- * The priority of this behaviour.
18
- *
19
- * @type {number}
20
- */
21
- priority: number;
22
- /**
23
- * The maximum life time of the particle that this behaviour will set.
24
- *
25
- * @type {number}
26
- */
27
- maxLifeTime: number;
28
- /**
29
- * The variance of the particle's life time.
30
- *
31
- * @type {number}
32
- */
33
- timeVariance: number;
34
- /**
35
- * Sets the particle's life time and maximum life time.
36
- *
37
- * @param {Particle} particle - The particle to set the life time of.
38
- * @returns {void}
39
- */
40
- init: (particle: Particle) => void;
41
- /**
42
- * Updates the particle's life time and progress.
43
- *
44
- * @param {Particle} particle - The particle to update.
45
- * @param {number} deltaTime - The time since the last update.
46
- * @returns {void}
47
- */
48
- apply: (particle: Particle, deltaTime: number) => void;
49
- /**
50
- * Returns the name of this behaviour.
51
- *
52
- * @returns {string} - The name of the behaviour.
53
- */
54
- getName(): string;
55
- /**
56
- * Returns the properties of the behaviour.
57
- *
58
- * @returns {Object} - The properties of the behaviour.
59
- */
60
- getProps(): {
61
- enabled: boolean;
62
- priority: number;
63
- maxLifeTime: number;
64
- timeVariance: number;
65
- name: string;
66
- };
67
- }
@@ -1,85 +0,0 @@
1
- import { Behaviour, BehaviourNames } from './index';
2
- /**
3
- * This class is responsible for managing the lifetimes of particles.
4
- * It sets the maximum lifetime of the particle and updates its progress.
5
- *
6
- * @extends Behaviour
7
- */
8
- export default class LifeBehaviour extends Behaviour {
9
- constructor() {
10
- super(...arguments);
11
- /**
12
- * Whether or not this behaviour is enabled.
13
- *
14
- * @type {boolean}
15
- */
16
- this.enabled = true;
17
- /**
18
- * The priority of this behaviour.
19
- *
20
- * @type {number}
21
- */
22
- this.priority = 10000;
23
- /**
24
- * The maximum life time of the particle that this behaviour will set.
25
- *
26
- * @type {number}
27
- */
28
- this.maxLifeTime = 0;
29
- /**
30
- * The variance of the particle's life time.
31
- *
32
- * @type {number}
33
- */
34
- this.timeVariance = 0;
35
- /**
36
- * Sets the particle's life time and maximum life time.
37
- *
38
- * @param {Particle} particle - The particle to set the life time of.
39
- * @returns {void}
40
- */
41
- this.init = (particle) => {
42
- particle.lifeTime = 0;
43
- particle.lifeProgress = 0;
44
- particle.maxLifeTime = Math.max(this.maxLifeTime + this.varianceFrom(this.timeVariance), 0.0);
45
- };
46
- /**
47
- * Updates the particle's life time and progress.
48
- *
49
- * @param {Particle} particle - The particle to update.
50
- * @param {number} deltaTime - The time since the last update.
51
- * @returns {void}
52
- */
53
- this.apply = (particle, deltaTime) => {
54
- const { maxLifeTime } = particle;
55
- const lifeTime = particle.lifeTime + deltaTime;
56
- particle.lifeTime = lifeTime;
57
- if (maxLifeTime > 0) {
58
- particle.lifeProgress = Math.min(1.0, lifeTime / maxLifeTime);
59
- }
60
- };
61
- }
62
- /**
63
- * Returns the name of this behaviour.
64
- *
65
- * @returns {string} - The name of the behaviour.
66
- */
67
- getName() {
68
- return BehaviourNames.LIFE_BEHAVIOUR;
69
- }
70
- /**
71
- * Returns the properties of the behaviour.
72
- *
73
- * @returns {Object} - The properties of the behaviour.
74
- */
75
- getProps() {
76
- return {
77
- enabled: this.enabled,
78
- priority: this.priority,
79
- maxLifeTime: this.maxLifeTime,
80
- timeVariance: this.timeVariance,
81
- name: this.getName(),
82
- };
83
- }
84
- }
85
- //# sourceMappingURL=LifeBehaviour.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LifeBehaviour.js","sourceRoot":"","sources":["../../../src/lib/behaviour/LifeBehaviour.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAGnD;;;;;GAKG;AACH,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,SAAS;IAApD;;QACE;;;;WAIG;QACH,YAAO,GAAG,IAAI,CAAA;QAEd;;;;WAIG;QACH,aAAQ,GAAG,KAAK,CAAA;QAEhB;;;;WAIG;QACH,gBAAW,GAAG,CAAC,CAAA;QAEf;;;;WAIG;QACH,iBAAY,GAAG,CAAC,CAAA;QAEhB;;;;;WAKG;QACH,SAAI,GAAG,CAAC,QAAkB,EAAE,EAAE;YAC5B,QAAQ,CAAC,QAAQ,GAAG,CAAC,CAAA;YACrB,QAAQ,CAAC,YAAY,GAAG,CAAC,CAAA;YACzB,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,GAAG,CAAC,CAAA;QAC/F,CAAC,CAAA;QAED;;;;;;WAMG;QACH,UAAK,GAAG,CAAC,QAAkB,EAAE,SAAiB,EAAE,EAAE;YAChD,MAAM,EAAE,WAAW,EAAE,GAAG,QAAQ,CAAA;YAChC,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,GAAG,SAAS,CAAA;YAE9C,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAA;YAE5B,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;gBACpB,QAAQ,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,GAAG,WAAW,CAAC,CAAA;YAC/D,CAAC;QACH,CAAC,CAAA;IAyBH,CAAC;IAvBC;;;;OAIG;IACH,OAAO;QACL,OAAO,cAAc,CAAC,cAAc,CAAA;IACtC,CAAC;IAED;;;;OAIG;IACH,QAAQ;QACN,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE;SACrB,CAAA;IACH,CAAC;CACF"}
@@ -1,177 +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
- spawnType: string;
11
- radius: number;
12
- radiusX: number;
13
- radiusY: number;
14
- warp: boolean;
15
- warpSpeed: number;
16
- warpBaseSpeed: number;
17
- sinX: boolean;
18
- sinY: boolean;
19
- sinXVal: Point;
20
- sinYVal: Point;
21
- sinXValVariance: Point;
22
- sinYValVariance: Point;
23
- position: Point;
24
- positionVariance: Point;
25
- velocity: Point;
26
- velocityVariance: Point;
27
- acceleration: Point;
28
- accelerationVariance: Point;
29
- cameraZConverter: number;
30
- warpFov: number;
31
- warpStretch: number;
32
- warpDistanceScaleConverter: number;
33
- warpDistanceToCenter: boolean;
34
- fromAtoB: boolean;
35
- fromAtoBTwoWays: boolean;
36
- pointA: Point;
37
- pointB: Point;
38
- thereDuration: MinMax;
39
- thereAmplitude: MinMax;
40
- backDuration: MinMax;
41
- backAmplitude: MinMax;
42
- there: ThereBack;
43
- back: ThereBack;
44
- /**
45
- * Function that initializes a particle
46
- * @param {Particle} particle - The particle to be initialized
47
- * @param {Model} model - The model of the particle
48
- */
49
- init: (particle: Particle, model: Model) => void;
50
- /**
51
- * Restarts the warp of a particle
52
- * @param {Particle} particle - The particle to restart the warp on
53
- * @param {boolean} initial - True if this is the initial warp, false if it is a subsequent one
54
- * @param {Model} model - The model containing the camera Z property
55
- */
56
- restartWarp: (particle: Particle, initial: boolean, model: Model) => void;
57
- /**
58
- * Adds a random variance to the given value
59
- * @param {number} value - The value to calculate
60
- * @param {number} variance - The random variance to add
61
- * @returns {number} The calculated value
62
- */
63
- calculate: (value: number, variance: number) => number;
64
- /**
65
- * Applies the particle's velocity and acceleration to move it and calculate its size, rotation, and position.
66
- * @param {Particle} particle - The particle to be moved
67
- * @param {number} deltaTime - The time delta for the movement calculation
68
- * @param {Model} model - The model containing information about the particle's movement
69
- */
70
- apply: (particle: Particle, deltaTime: number, model: Model) => void;
71
- /**
72
- * Gets the name of the behaviour
73
- * @return {BehaviourNames} The name of the behaviour
74
- */
75
- getName(): string;
76
- _lerp(start: number, end: number, t: number): number;
77
- _easeBackInOut(t: number, c1?: number, c2?: number): number;
78
- _easeBackIn(t: number, c1?: number): number;
79
- _easeBackOut(t: number, c1?: number): number;
80
- _easePower1In(t: number): number;
81
- _easePower1Out(t: number): number;
82
- _easePower1InOut(t: number): number;
83
- _easeBounceIn(t: number): number;
84
- _easeBounceOut(t: number): number;
85
- _easeBounceInOut(t: number): number;
86
- _easeElasticIn(t: number): number;
87
- _easeElasticOut(t: number): number;
88
- _easeElasticInOut(t: number): number;
89
- _easeSteps(t: number, numSteps?: number): number;
90
- /**
91
- * @description Retrieves the properties of the object.
92
- * @returns {Object} The properties of the object.
93
- */
94
- getProps(): {
95
- enabled: boolean;
96
- priority: number;
97
- spawnType: string;
98
- radius: number;
99
- radiusX: number;
100
- radiusY: number;
101
- fromAtoB: boolean;
102
- fromAtoBTwoWays: boolean;
103
- there: {
104
- x: string;
105
- y: string;
106
- ease: string;
107
- };
108
- back: {
109
- x: string;
110
- y: string;
111
- ease: string;
112
- };
113
- pointA: {
114
- x: number;
115
- y: number;
116
- };
117
- pointB: {
118
- x: number;
119
- y: number;
120
- };
121
- thereDuration: {
122
- x: number;
123
- y: number;
124
- };
125
- thereAmplitude: {
126
- x: number;
127
- y: number;
128
- };
129
- backDuration: {
130
- x: number;
131
- y: number;
132
- };
133
- backAmplitude: {
134
- x: number;
135
- y: number;
136
- };
137
- warp: boolean;
138
- sinX: boolean;
139
- sinY: boolean;
140
- sinXVal: Point;
141
- sinYVal: Point;
142
- sinXValVariance: Point;
143
- sinYValVariance: Point;
144
- position: {
145
- x: number;
146
- y: number;
147
- };
148
- positionVariance: {
149
- x: number;
150
- y: number;
151
- };
152
- velocity: {
153
- x: number;
154
- y: number;
155
- };
156
- velocityVariance: {
157
- x: number;
158
- y: number;
159
- };
160
- acceleration: {
161
- x: number;
162
- y: number;
163
- };
164
- accelerationVariance: {
165
- x: number;
166
- y: number;
167
- };
168
- warpSpeed: number;
169
- warpBaseSpeed: number;
170
- cameraZConverter: number;
171
- warpFov: number;
172
- warpStretch: number;
173
- warpDistanceScaleConverter: number;
174
- warpDistanceToCenter: boolean;
175
- name: string;
176
- };
177
- }