custom-pixi-particles 5.2.0 → 7.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 (86) hide show
  1. package/README.md +118 -82
  2. package/dist/index.d.ts +5 -1
  3. package/dist/index.js +19 -2
  4. package/dist/index.js.map +1 -1
  5. package/dist/lib/Particle.d.ts +15 -1
  6. package/dist/lib/Particle.js +29 -0
  7. package/dist/lib/Particle.js.map +1 -1
  8. package/dist/lib/behaviour/AngularVelocityBehaviour.d.ts +10 -6
  9. package/dist/lib/behaviour/AngularVelocityBehaviour.js +45 -14
  10. package/dist/lib/behaviour/AngularVelocityBehaviour.js.map +1 -1
  11. package/dist/lib/behaviour/AttractionRepulsionBehaviour.d.ts +42 -0
  12. package/dist/lib/behaviour/AttractionRepulsionBehaviour.js +78 -0
  13. package/dist/lib/behaviour/AttractionRepulsionBehaviour.js.map +1 -0
  14. package/dist/lib/behaviour/BehaviourNames.d.ts +13 -2
  15. package/dist/lib/behaviour/BehaviourNames.js +13 -1
  16. package/dist/lib/behaviour/BehaviourNames.js.map +1 -1
  17. package/dist/lib/behaviour/CollisionBehaviour.d.ts +86 -0
  18. package/dist/lib/behaviour/CollisionBehaviour.js +140 -0
  19. package/dist/lib/behaviour/CollisionBehaviour.js.map +1 -0
  20. package/dist/lib/behaviour/ColorBehaviour.d.ts +22 -0
  21. package/dist/lib/behaviour/ColorBehaviour.js +122 -6
  22. package/dist/lib/behaviour/ColorBehaviour.js.map +1 -1
  23. package/dist/lib/behaviour/EmitDirectionBehaviour.d.ts +14 -8
  24. package/dist/lib/behaviour/EmitDirectionBehaviour.js +53 -12
  25. package/dist/lib/behaviour/EmitDirectionBehaviour.js.map +1 -1
  26. package/dist/lib/behaviour/EmitterBehaviours.d.ts +6 -0
  27. package/dist/lib/behaviour/EmitterBehaviours.js +11 -0
  28. package/dist/lib/behaviour/EmitterBehaviours.js.map +1 -1
  29. package/dist/lib/behaviour/ForceFieldsBehaviour.d.ts +53 -0
  30. package/dist/lib/behaviour/ForceFieldsBehaviour.js +80 -0
  31. package/dist/lib/behaviour/ForceFieldsBehaviour.js.map +1 -0
  32. package/dist/lib/behaviour/GroupingBehaviour.d.ts +57 -0
  33. package/dist/lib/behaviour/GroupingBehaviour.js +143 -0
  34. package/dist/lib/behaviour/GroupingBehaviour.js.map +1 -0
  35. package/dist/lib/behaviour/LifeBehaviour.d.ts +0 -20
  36. package/dist/lib/behaviour/LifeBehaviour.js +0 -20
  37. package/dist/lib/behaviour/LifeBehaviour.js.map +1 -1
  38. package/dist/lib/behaviour/LightEffectBehaviour.d.ts +59 -0
  39. package/dist/lib/behaviour/LightEffectBehaviour.js +94 -0
  40. package/dist/lib/behaviour/LightEffectBehaviour.js.map +1 -0
  41. package/dist/lib/behaviour/NoiseBasedMotionBehaviour.d.ts +35 -0
  42. package/dist/lib/behaviour/NoiseBasedMotionBehaviour.js +93 -0
  43. package/dist/lib/behaviour/NoiseBasedMotionBehaviour.js.map +1 -0
  44. package/dist/lib/behaviour/PositionBehaviour.d.ts +0 -13
  45. package/dist/lib/behaviour/PositionBehaviour.js +3 -53
  46. package/dist/lib/behaviour/PositionBehaviour.js.map +1 -1
  47. package/dist/lib/behaviour/RotationBehaviour.d.ts +20 -12
  48. package/dist/lib/behaviour/RotationBehaviour.js +50 -16
  49. package/dist/lib/behaviour/RotationBehaviour.js.map +1 -1
  50. package/dist/lib/behaviour/SizeBehaviour.d.ts +33 -3
  51. package/dist/lib/behaviour/SizeBehaviour.js +105 -20
  52. package/dist/lib/behaviour/SizeBehaviour.js.map +1 -1
  53. package/dist/lib/behaviour/SoundReactiveBehaviour.d.ts +58 -0
  54. package/dist/lib/behaviour/SoundReactiveBehaviour.js +132 -0
  55. package/dist/lib/behaviour/SoundReactiveBehaviour.js.map +1 -0
  56. package/dist/lib/behaviour/SpawnBehaviour.d.ts +89 -0
  57. package/dist/lib/behaviour/SpawnBehaviour.js +705 -0
  58. package/dist/lib/behaviour/SpawnBehaviour.js.map +1 -0
  59. package/dist/lib/behaviour/StretchBehaviour.d.ts +30 -0
  60. package/dist/lib/behaviour/StretchBehaviour.js +59 -0
  61. package/dist/lib/behaviour/StretchBehaviour.js.map +1 -0
  62. package/dist/lib/behaviour/TemperatureBehaviour.d.ts +47 -0
  63. package/dist/lib/behaviour/TemperatureBehaviour.js +64 -0
  64. package/dist/lib/behaviour/TemperatureBehaviour.js.map +1 -0
  65. package/dist/lib/behaviour/TimelineBehaviour.d.ts +73 -0
  66. package/dist/lib/behaviour/TimelineBehaviour.js +100 -0
  67. package/dist/lib/behaviour/TimelineBehaviour.js.map +1 -0
  68. package/dist/lib/behaviour/TurbulenceBehaviour.d.ts +2 -1
  69. package/dist/lib/behaviour/TurbulenceBehaviour.js +6 -1
  70. package/dist/lib/behaviour/TurbulenceBehaviour.js.map +1 -1
  71. package/dist/lib/behaviour/index.d.ts +12 -1
  72. package/dist/lib/behaviour/index.js +12 -1
  73. package/dist/lib/behaviour/index.js.map +1 -1
  74. package/dist/lib/customPixiParticlesSettingsInterface.d.ts +1 -0
  75. package/dist/lib/emitter/Emitter.d.ts +4 -1
  76. package/dist/lib/emitter/Emitter.js +40 -1
  77. package/dist/lib/emitter/Emitter.js.map +1 -1
  78. package/dist/lib/parser/BehaviourParser.js +1 -1
  79. package/dist/lib/parser/BehaviourParser.js.map +1 -1
  80. package/dist/lib/pixi/Renderer.d.ts +14 -5
  81. package/dist/lib/pixi/Renderer.js +128 -70
  82. package/dist/lib/pixi/Renderer.js.map +1 -1
  83. package/dist/lib/pixi/TestRenderer.d.ts +125 -0
  84. package/dist/lib/pixi/TestRenderer.js +560 -0
  85. package/dist/lib/pixi/TestRenderer.js.map +1 -0
  86. package/package.json +5 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SpawnBehaviour.js","sourceRoot":"","sources":["../../../src/lib/behaviour/SpawnBehaviour.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ import { Behaviour } from './index';
2
+ import Particle from '../Particle';
3
+ export default class StretchBehaviour extends Behaviour {
4
+ enabled: boolean;
5
+ priority: number;
6
+ baseScale: number;
7
+ stretchFactor: number;
8
+ minStretch: number;
9
+ maxStretch: number;
10
+ init: (particle: Particle) => void;
11
+ apply: (particle: Particle, deltaTime: number) => void;
12
+ /**
13
+ * Gets the name of the behaviour.
14
+ * @return {string} The name of the behaviour.
15
+ */
16
+ getName(): string;
17
+ /**
18
+ * Retrieves the properties of the behaviour.
19
+ * @returns {object} The properties of the behaviour.
20
+ */
21
+ getProps(): {
22
+ enabled: boolean;
23
+ priority: number;
24
+ baseScale: number;
25
+ stretchFactor: number;
26
+ minStretch: number;
27
+ maxStretch: number;
28
+ name: string;
29
+ };
30
+ }
@@ -0,0 +1,59 @@
1
+ import { Behaviour, BehaviourNames } from './index';
2
+ export default class StretchBehaviour extends Behaviour {
3
+ constructor() {
4
+ super(...arguments);
5
+ this.enabled = true;
6
+ this.priority = 200;
7
+ this.baseScale = 1; // Base scale for Y-axis
8
+ this.stretchFactor = 0.1; // Factor to scale X-axis based on speed
9
+ this.minStretch = 1; // Minimum X scale
10
+ this.maxStretch = 10; // Maximum X scale
11
+ this.init = (particle) => {
12
+ if (!this.enabled)
13
+ return;
14
+ // Initialize scale and rotation
15
+ particle.size.x = this.baseScale;
16
+ particle.size.y = this.baseScale;
17
+ particle.rotation = 0;
18
+ };
19
+ this.apply = (particle, deltaTime) => {
20
+ if (!this.enabled)
21
+ return;
22
+ // Calculate effective velocity by combining movement and velocity changes
23
+ const combinedX = particle.velocity.x + (particle.movement.x - particle.x) / deltaTime;
24
+ const combinedY = particle.velocity.y + (particle.movement.y - particle.y) / deltaTime;
25
+ const speed = Math.sqrt(Math.pow(combinedX, 2) + Math.pow(combinedY, 2));
26
+ // Stretch factor based on speed
27
+ const stretch = Math.min(this.maxStretch, Math.max(this.minStretch, this.baseScale + speed * this.stretchFactor));
28
+ // Apply scaling
29
+ particle.size.x = stretch; // Stretch along movement direction
30
+ particle.size.y = this.baseScale; // Maintain constant height
31
+ // Update rotation to align with movement direction
32
+ const angle = Math.atan2(combinedY, combinedX);
33
+ particle.rotation = angle;
34
+ };
35
+ }
36
+ /**
37
+ * Gets the name of the behaviour.
38
+ * @return {string} The name of the behaviour.
39
+ */
40
+ getName() {
41
+ return BehaviourNames.STRETCH_BEHAVIOUR;
42
+ }
43
+ /**
44
+ * Retrieves the properties of the behaviour.
45
+ * @returns {object} The properties of the behaviour.
46
+ */
47
+ getProps() {
48
+ return {
49
+ enabled: this.enabled,
50
+ priority: this.priority,
51
+ baseScale: this.baseScale,
52
+ stretchFactor: this.stretchFactor,
53
+ minStretch: this.minStretch,
54
+ maxStretch: this.maxStretch,
55
+ name: this.getName(),
56
+ };
57
+ }
58
+ }
59
+ //# sourceMappingURL=StretchBehaviour.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StretchBehaviour.js","sourceRoot":"","sources":["../../../src/lib/behaviour/StretchBehaviour.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAGnD,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,SAAS;IAAvD;;QACE,YAAO,GAAG,IAAI,CAAA;QACd,aAAQ,GAAG,GAAG,CAAA;QACd,cAAS,GAAG,CAAC,CAAA,CAAC,wBAAwB;QACtC,kBAAa,GAAG,GAAG,CAAA,CAAC,wCAAwC;QAC5D,eAAU,GAAG,CAAC,CAAA,CAAC,kBAAkB;QACjC,eAAU,GAAG,EAAE,CAAA,CAAC,kBAAkB;QAElC,SAAI,GAAG,CAAC,QAAkB,EAAE,EAAE;YAC5B,IAAI,CAAC,IAAI,CAAC,OAAO;gBAAE,OAAM;YAEzB,gCAAgC;YAChC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,CAAA;YAChC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,CAAA;YAChC,QAAQ,CAAC,QAAQ,GAAG,CAAC,CAAA;QACvB,CAAC,CAAA;QAED,UAAK,GAAG,CAAC,QAAkB,EAAE,SAAiB,EAAE,EAAE;YAChD,IAAI,CAAC,IAAI,CAAC,OAAO;gBAAE,OAAM;YAEzB,0EAA0E;YAC1E,MAAM,SAAS,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,SAAS,CAAA;YACtF,MAAM,SAAS,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,SAAS,CAAA;YAEtF,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,SAAA,SAAS,EAAI,CAAC,CAAA,GAAG,SAAA,SAAS,EAAI,CAAC,CAAA,CAAC,CAAA;YAExD,gCAAgC;YAChC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,GAAG,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAA;YAEjH,gBAAgB;YAChB,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,OAAO,CAAA,CAAC,mCAAmC;YAC7D,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,CAAA,CAAC,2BAA2B;YAE5D,mDAAmD;YACnD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;YAC9C,QAAQ,CAAC,QAAQ,GAAG,KAAK,CAAA;QAC3B,CAAC,CAAA;IAyBH,CAAC;IAvBC;;;OAGG;IACH,OAAO;QACL,OAAO,cAAc,CAAC,iBAAiB,CAAA;IACzC,CAAC;IAED;;;OAGG;IACH,QAAQ;QACN,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE;SACrB,CAAA;IACH,CAAC;CACF"}
@@ -0,0 +1,47 @@
1
+ import { Behaviour } from './index';
2
+ import Particle from '../Particle';
3
+ import { Color, Point } from '../util';
4
+ /**
5
+ * TemperatureBehaviour adjusts particle velocity and color
6
+ * based on whether they are in a hot or cold zone.
7
+ */
8
+ export default class TemperatureBehaviour extends Behaviour {
9
+ enabled: boolean;
10
+ priority: number;
11
+ zones: {
12
+ center: Point;
13
+ radius: number;
14
+ velocity: Point;
15
+ color: Color;
16
+ }[];
17
+ /**
18
+ * Initializes the particle. This behavior does not require
19
+ * per-particle initialization, but it's included for extensibility.
20
+ */
21
+ init(particle: Particle): void;
22
+ /**
23
+ * Applies temperature-based adjustments to the particle's velocity and color.
24
+ */
25
+ apply(particle: Particle): void;
26
+ /**
27
+ * Checks if a particle is within a specified zone.
28
+ */
29
+ isInZone(particle: Particle, center: Point, radius: number): boolean;
30
+ /**
31
+ * Returns the name of the behavior.
32
+ */
33
+ getName(): string;
34
+ /**
35
+ * Returns properties for serialization or debugging.
36
+ */
37
+ getProps(): {
38
+ enabled: boolean;
39
+ priority: number;
40
+ zones: {
41
+ center: Point;
42
+ radius: number;
43
+ velocity: Point;
44
+ color: Color;
45
+ }[];
46
+ };
47
+ }
@@ -0,0 +1,64 @@
1
+ import { Behaviour } from './index';
2
+ import behaviourNames from './BehaviourNames';
3
+ /**
4
+ * TemperatureBehaviour adjusts particle velocity and color
5
+ * based on whether they are in a hot or cold zone.
6
+ */
7
+ export default class TemperatureBehaviour extends Behaviour {
8
+ constructor() {
9
+ super(...arguments);
10
+ this.enabled = true;
11
+ this.priority = 150;
12
+ this.zones = [];
13
+ }
14
+ /**
15
+ * Initializes the particle. This behavior does not require
16
+ * per-particle initialization, but it's included for extensibility.
17
+ */
18
+ init(particle) {
19
+ // Optionally, initialize particle-specific data here
20
+ }
21
+ /**
22
+ * Applies temperature-based adjustments to the particle's velocity and color.
23
+ */
24
+ apply(particle) {
25
+ if (!this.enabled || !this.zones || !this.zones.length)
26
+ return;
27
+ // Check if the particle is in any hot zone
28
+ for (const zone of this.zones) {
29
+ if (this.isInZone(particle, zone.center, zone.radius)) {
30
+ particle.velocity.x *= zone.velocity.x;
31
+ particle.velocity.y *= zone.velocity.y;
32
+ particle.color.r = zone.color.r;
33
+ particle.color.g = zone.color.g;
34
+ particle.color.b = zone.color.b;
35
+ break;
36
+ }
37
+ }
38
+ }
39
+ /**
40
+ * Checks if a particle is within a specified zone.
41
+ */
42
+ isInZone(particle, center, radius) {
43
+ const dx = particle.movement.x - center.x;
44
+ const dy = particle.movement.y - center.y;
45
+ return Math.sqrt(dx * dx + dy * dy) < radius;
46
+ }
47
+ /**
48
+ * Returns the name of the behavior.
49
+ */
50
+ getName() {
51
+ return behaviourNames.TEMPERATURE_BEHAVIOUR;
52
+ }
53
+ /**
54
+ * Returns properties for serialization or debugging.
55
+ */
56
+ getProps() {
57
+ return {
58
+ enabled: this.enabled,
59
+ priority: this.priority,
60
+ zones: this.zones,
61
+ };
62
+ }
63
+ }
64
+ //# sourceMappingURL=TemperatureBehaviour.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TemperatureBehaviour.js","sourceRoot":"","sources":["../../../src/lib/behaviour/TemperatureBehaviour.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAGnC,OAAO,cAAc,MAAM,kBAAkB,CAAA;AAE7C;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,SAAS;IAA3D;;QACE,YAAO,GAAG,IAAI,CAAA;QACd,aAAQ,GAAG,GAAG,CAAA;QAEd,UAAK,GAAuE,EAAE,CAAA;IAuDhF,CAAC;IArDC;;;OAGG;IACH,IAAI,CAAC,QAAkB;QACrB,qDAAqD;IACvD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAkB;QACtB,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,OAAM;QAE9D,2CAA2C;QAC3C,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC9B,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;gBACtD,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAA;gBACtC,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAA;gBACtC,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;gBAC/B,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;gBAC/B,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;gBAC/B,MAAK;YACP,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,QAAkB,EAAE,MAAa,EAAE,MAAc;QACxD,MAAM,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAA;QACzC,MAAM,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAA;QACzC,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,MAAM,CAAA;IAC9C,CAAC;IAED;;OAEG;IACH,OAAO;QACL,OAAO,cAAc,CAAC,qBAAqB,CAAA;IAC7C,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB,CAAA;IACH,CAAC;CACF"}
@@ -0,0 +1,73 @@
1
+ import Particle from '../Particle';
2
+ import Behaviour from './Behaviour';
3
+ export default class TimelineBehaviour extends Behaviour {
4
+ enabled: boolean;
5
+ priority: number;
6
+ timeline: {
7
+ time: number;
8
+ properties: {
9
+ size?: number;
10
+ color?: {
11
+ r: number;
12
+ g: number;
13
+ b: number;
14
+ alpha: number;
15
+ };
16
+ rotation?: number;
17
+ };
18
+ }[];
19
+ init(particle: Particle): void;
20
+ apply(particle: Particle, deltaTime: number): void;
21
+ interpolateProperties(particle: Particle, before: {
22
+ size?: number;
23
+ color?: {
24
+ r: number;
25
+ g: number;
26
+ b: number;
27
+ alpha: number;
28
+ };
29
+ rotation?: number;
30
+ }, after: {
31
+ size?: number;
32
+ color?: {
33
+ r: number;
34
+ g: number;
35
+ b: number;
36
+ alpha: number;
37
+ };
38
+ rotation?: number;
39
+ }, progress: number): void;
40
+ setProperties(particle: Particle, properties: {
41
+ size?: number;
42
+ color?: {
43
+ r: number;
44
+ g: number;
45
+ b: number;
46
+ alpha: number;
47
+ };
48
+ rotation?: number;
49
+ }): void;
50
+ /**
51
+ * Linear interpolation (lerp) function
52
+ */
53
+ lerp(start: number, end: number, t: number): number;
54
+ getName(): string;
55
+ getProps(): {
56
+ enabled: boolean;
57
+ priority: number;
58
+ timeline: {
59
+ time: number;
60
+ properties: {
61
+ size?: number;
62
+ color?: {
63
+ r: number;
64
+ g: number;
65
+ b: number;
66
+ alpha: number;
67
+ };
68
+ rotation?: number;
69
+ };
70
+ }[];
71
+ name: string;
72
+ };
73
+ }
@@ -0,0 +1,100 @@
1
+ import BehaviourNames from './BehaviourNames';
2
+ import Behaviour from './Behaviour';
3
+ export default class TimelineBehaviour extends Behaviour {
4
+ constructor() {
5
+ super(...arguments);
6
+ this.enabled = true;
7
+ this.priority = 0;
8
+ this.timeline = [];
9
+ }
10
+ init(particle) {
11
+ if (!this.enabled)
12
+ return;
13
+ // Set initial properties based on the first timeline entry
14
+ if (this.timeline.length > 0) {
15
+ const initialProperties = this.timeline[0].properties;
16
+ if (initialProperties.size !== undefined) {
17
+ particle.size.x = particle.size.y = initialProperties.size;
18
+ }
19
+ if (initialProperties.color) {
20
+ particle.color.r = initialProperties.color.r;
21
+ particle.color.g = initialProperties.color.g;
22
+ particle.color.b = initialProperties.color.b;
23
+ particle.color.alpha = initialProperties.color.alpha;
24
+ }
25
+ if (initialProperties.rotation !== undefined) {
26
+ particle.rotation = initialProperties.rotation;
27
+ }
28
+ }
29
+ }
30
+ apply(particle, deltaTime) {
31
+ if (!this.enabled)
32
+ return;
33
+ const { lifeTime, maxLifeTime } = particle;
34
+ if (maxLifeTime <= 0)
35
+ return;
36
+ const normalizedTime = lifeTime / maxLifeTime;
37
+ // Find the timeline entries surrounding the normalizedTime
38
+ const before = this.timeline
39
+ .slice()
40
+ .reverse()
41
+ .find((entry) => entry.time <= normalizedTime);
42
+ const after = this.timeline.find((entry) => entry.time > normalizedTime);
43
+ if (before && after) {
44
+ const progress = (normalizedTime - before.time) / (after.time - before.time);
45
+ this.interpolateProperties(particle, before.properties, after.properties, progress);
46
+ }
47
+ else if (before) {
48
+ this.setProperties(particle, before.properties);
49
+ }
50
+ }
51
+ interpolateProperties(particle, before, after, progress) {
52
+ // Interpolate size
53
+ if (before.size !== undefined && after.size !== undefined) {
54
+ particle.size.x = particle.size.y = this.lerp(before.size, after.size, progress);
55
+ }
56
+ // Interpolate color
57
+ if (before.color && after.color) {
58
+ particle.color.r = this.lerp(before.color.r, after.color.r, progress);
59
+ particle.color.g = this.lerp(before.color.g, after.color.g, progress);
60
+ particle.color.b = this.lerp(before.color.b, after.color.b, progress);
61
+ particle.color.alpha = this.lerp(before.color.alpha, after.color.alpha, progress);
62
+ }
63
+ // Interpolate rotation
64
+ if (before.rotation !== undefined && after.rotation !== undefined) {
65
+ particle.rotation = this.lerp(before.rotation, after.rotation, progress);
66
+ }
67
+ }
68
+ setProperties(particle, properties) {
69
+ if (properties.size !== undefined) {
70
+ particle.size.x = particle.size.y = properties.size;
71
+ }
72
+ if (properties.color) {
73
+ particle.color.r = properties.color.r;
74
+ particle.color.g = properties.color.g;
75
+ particle.color.b = properties.color.b;
76
+ particle.color.alpha = properties.color.alpha;
77
+ }
78
+ if (properties.rotation !== undefined) {
79
+ particle.rotation = properties.rotation;
80
+ }
81
+ }
82
+ /**
83
+ * Linear interpolation (lerp) function
84
+ */
85
+ lerp(start, end, t) {
86
+ return start + (end - start) * t;
87
+ }
88
+ getName() {
89
+ return BehaviourNames.TIMELINE_BEHAVIOUR;
90
+ }
91
+ getProps() {
92
+ return {
93
+ enabled: this.enabled,
94
+ priority: this.priority,
95
+ timeline: this.timeline,
96
+ name: this.getName(),
97
+ };
98
+ }
99
+ }
100
+ //# sourceMappingURL=TimelineBehaviour.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TimelineBehaviour.js","sourceRoot":"","sources":["../../../src/lib/behaviour/TimelineBehaviour.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ import { Point } from '../util';
4
4
  import TurbulencePool from '../util/turbulencePool';
5
5
  import Model from '../Model';
6
6
  export default class TurbulenceBehaviour extends Behaviour {
7
+ priority: number;
7
8
  position: Point;
8
9
  positionVariance: Point;
9
10
  velocity: Point;
@@ -66,7 +67,7 @@ export default class TurbulenceBehaviour extends Behaviour {
66
67
  emitPerSecond: number;
67
68
  duration: number;
68
69
  maxLifeTime: number;
69
- version: number;
70
+ effect: number;
70
71
  name: string;
71
72
  };
72
73
  }
@@ -4,6 +4,7 @@ import { Point } from '../util';
4
4
  export default class TurbulenceBehaviour extends Behaviour {
5
5
  constructor() {
6
6
  super(...arguments);
7
+ this.priority = 1000;
7
8
  this.position = new Point();
8
9
  this.positionVariance = new Point();
9
10
  this.velocity = new Point();
@@ -23,11 +24,15 @@ export default class TurbulenceBehaviour extends Behaviour {
23
24
  this.turbulence = false;
24
25
  this.vortexOrgSize = 128;
25
26
  this.init = (particle, model, turbulencePool) => {
27
+ if (!this.enabled)
28
+ return;
26
29
  particle.showVortices = this.showVortices;
27
30
  particle.turbulence = this.turbulence;
28
31
  this.turbulencePool = turbulencePool;
29
32
  };
30
33
  this.apply = (particle) => {
34
+ if (!this.enabled)
35
+ return;
31
36
  if (particle.turbulence)
32
37
  return;
33
38
  this.turbulencePool.list.forEach((vortex) => {
@@ -120,7 +125,7 @@ export default class TurbulenceBehaviour extends Behaviour {
120
125
  emitPerSecond: this.emitPerSecond,
121
126
  duration: this.duration,
122
127
  maxLifeTime: this.maxLifeTime,
123
- version: this.effect,
128
+ effect: this.effect,
124
129
  name: this.getName(),
125
130
  };
126
131
  }
@@ -1 +1 @@
1
- {"version":3,"file":"TurbulenceBehaviour.js","sourceRoot":"","sources":["../../../src/lib/behaviour/TurbulenceBehaviour.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,aAAa,CAAA;AACnC,OAAO,cAAc,MAAM,kBAAkB,CAAA;AAE7C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAI/B,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,SAAS;IAA1D;;QACE,aAAQ,GAAG,IAAI,KAAK,EAAE,CAAA;QACtB,qBAAgB,GAAG,IAAI,KAAK,EAAE,CAAA;QAC9B,aAAQ,GAAG,IAAI,KAAK,EAAE,CAAA;QACtB,qBAAgB,GAAG,IAAI,KAAK,EAAE,CAAA;QAC9B,iBAAY,GAAG,IAAI,KAAK,EAAE,CAAA;QAC1B,yBAAoB,GAAG,IAAI,KAAK,EAAE,CAAA;QAClC,cAAS,GAAG,IAAI,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QAC3B,YAAO,GAAG,IAAI,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QACzB,kBAAa,GAAG,CAAC,CAAA;QACjB,gBAAW,GAAG,CAAC,CAAA;QACf,kBAAa,GAAG,CAAC,CAAA;QACjB,aAAQ,GAAG,CAAC,CAAA;QACZ,gBAAW,GAAG,CAAC,CAAA;QAEP,YAAO,GAAY,KAAK,CAAA;QACxB,iBAAY,GAAY,KAAK,CAAA;QAC7B,WAAM,GAAW,CAAC,CAAA;QAClB,eAAU,GAAY,KAAK,CAAA;QAC3B,kBAAa,GAAW,GAAG,CAAA;QAEnC,SAAI,GAAG,CAAC,QAAkB,EAAE,KAAY,EAAE,cAA8B,EAAE,EAAE;YAC1E,QAAQ,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAA;YACzC,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAA;YACrC,IAAI,CAAC,cAAc,GAAG,cAAc,CAAA;QACtC,CAAC,CAAA;QAED,UAAK,GAAG,CAAC,QAAkB,EAAE,EAAE;YAC7B,IAAI,QAAQ,CAAC,UAAU;gBAAE,OAAM;YAE/B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAgB,EAAE,EAAE;gBACpD,IAAI,EAAE,GAAG,CAAC,CAAA;gBACV,IAAI,EAAE,GAAG,CAAC,CAAA;gBACV,IAAI,MAAM,GAAG,CAAC,CAAA;gBAEd,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAA;gBAChC,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAA;gBAEhC,IAAI,EAAE,GAAG,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;oBAAE,OAAM;gBACnD,IAAI,EAAE,GAAG,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;oBAAE,OAAM;gBAEnD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC3C,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;wBACjB,EAAE,GAAG,CAAC,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAA;wBAC5B,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAA;oBAC7B,CAAC;yBAAM,CAAC;wBACN,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAA;wBAC3B,EAAE,GAAG,CAAC,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAA;oBAC9B,CAAC;oBAED,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;gBAC/E,CAAC;qBAAM,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC7B,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAA;oBAC3B,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAA;oBAE3B,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;gBAC/E,CAAC;qBAAM,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC7B,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAA;oBAC3B,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAA;oBAE3B,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;gBAC/E,CAAC;qBAAM,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC7B,EAAE,GAAG,CAAC,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAA;oBAC5B,EAAE,GAAG,CAAC,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAA;oBAE5B,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;gBAC/E,CAAC;qBAAM,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC7B,EAAE,GAAG,CAAC,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAA;oBAC5B,EAAE,GAAG,CAAC,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAA;oBAE5B,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;gBAC/E,CAAC;gBAED,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,MAAM,CAAA;gBAC1D,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,MAAM,CAAA;YAC5D,CAAC,CAAC,CAAA;QACJ,CAAC,CAAA;IAmDH,CAAC;IAjDC,OAAO;QACL,OAAO,cAAc,CAAC,oBAAoB,CAAA;IAC5C,CAAC;IAED,QAAQ;QACN,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,QAAQ,EAAE;gBACR,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAClB,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;aACnB;YACD,gBAAgB,EAAE;gBAChB,CAAC,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBAC1B,CAAC,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;aAC3B;YACD,QAAQ,EAAE;gBACR,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAClB,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;aACnB;YACD,gBAAgB,EAAE;gBAChB,CAAC,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBAC1B,CAAC,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;aAC3B;YACD,YAAY,EAAE;gBACZ,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;gBACtB,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;aACvB;YACD,oBAAoB,EAAE;gBACpB,CAAC,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;gBAC9B,CAAC,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;aAC/B;YACD,SAAS,EAAE;gBACT,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;gBACnB,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;aACpB;YACD,OAAO,EAAE;gBACP,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;gBACjB,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;aAClB;YACD,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,OAAO,EAAE,IAAI,CAAC,MAAM;YACpB,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE;SACrB,CAAA;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"TurbulenceBehaviour.js","sourceRoot":"","sources":["../../../src/lib/behaviour/TurbulenceBehaviour.ts"],"names":[],"mappings":"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"}
@@ -4,9 +4,20 @@ import Behaviour from './Behaviour';
4
4
  import LifeBehaviour from './LifeBehaviour';
5
5
  import PositionBehaviour from './PositionBehaviour';
6
6
  import ColorBehaviour from './ColorBehaviour';
7
+ import AttractionRepulsionBehaviour from './AttractionRepulsionBehaviour';
7
8
  import SizeBehaviour from './SizeBehaviour';
8
9
  import AngularVelocityBehaviour from './AngularVelocityBehaviour';
9
10
  import EmitDirectionBehaviour from './EmitDirectionBehaviour';
10
11
  import RotationBehaviour from './RotationBehaviour';
11
12
  import TurbulenceBehaviour from './TurbulenceBehaviour';
12
- export { EmitterBehaviours, Behaviour, LifeBehaviour, PositionBehaviour, ColorBehaviour, SizeBehaviour, AngularVelocityBehaviour, EmitDirectionBehaviour, RotationBehaviour, TurbulenceBehaviour, BehaviourNames, };
13
+ import CollisionBehaviour from './CollisionBehaviour';
14
+ import NoiseBasedMotionBehaviour from './NoiseBasedMotionBehaviour';
15
+ import ForceFieldsBehaviour from './ForceFieldsBehaviour';
16
+ import SpawnBehaviour from './SpawnBehaviour';
17
+ import TimelineBehaviour from './TimelineBehaviour';
18
+ import GroupingBehaviour from './GroupingBehaviour';
19
+ import SoundReactiveBehaviour from './SoundReactiveBehaviour';
20
+ import LightEffectBehaviour from './LightEffectBehaviour';
21
+ import StretchBehaviour from './StretchBehaviour';
22
+ import TemperatureBehaviour from './TemperatureBehaviour';
23
+ export { EmitterBehaviours, Behaviour, SpawnBehaviour, LifeBehaviour, PositionBehaviour, ColorBehaviour, SizeBehaviour, AngularVelocityBehaviour, EmitDirectionBehaviour, RotationBehaviour, TurbulenceBehaviour, CollisionBehaviour, AttractionRepulsionBehaviour, NoiseBasedMotionBehaviour, ForceFieldsBehaviour, TimelineBehaviour, GroupingBehaviour, SoundReactiveBehaviour, LightEffectBehaviour, StretchBehaviour, TemperatureBehaviour, BehaviourNames, };
@@ -4,10 +4,21 @@ import Behaviour from './Behaviour';
4
4
  import LifeBehaviour from './LifeBehaviour';
5
5
  import PositionBehaviour from './PositionBehaviour';
6
6
  import ColorBehaviour from './ColorBehaviour';
7
+ import AttractionRepulsionBehaviour from './AttractionRepulsionBehaviour';
7
8
  import SizeBehaviour from './SizeBehaviour';
8
9
  import AngularVelocityBehaviour from './AngularVelocityBehaviour';
9
10
  import EmitDirectionBehaviour from './EmitDirectionBehaviour';
10
11
  import RotationBehaviour from './RotationBehaviour';
11
12
  import TurbulenceBehaviour from './TurbulenceBehaviour';
12
- export { EmitterBehaviours, Behaviour, LifeBehaviour, PositionBehaviour, ColorBehaviour, SizeBehaviour, AngularVelocityBehaviour, EmitDirectionBehaviour, RotationBehaviour, TurbulenceBehaviour, BehaviourNames, };
13
+ import CollisionBehaviour from './CollisionBehaviour';
14
+ import NoiseBasedMotionBehaviour from './NoiseBasedMotionBehaviour';
15
+ import ForceFieldsBehaviour from './ForceFieldsBehaviour';
16
+ import SpawnBehaviour from './SpawnBehaviour';
17
+ import TimelineBehaviour from './TimelineBehaviour';
18
+ import GroupingBehaviour from './GroupingBehaviour';
19
+ import SoundReactiveBehaviour from './SoundReactiveBehaviour';
20
+ import LightEffectBehaviour from './LightEffectBehaviour';
21
+ import StretchBehaviour from './StretchBehaviour';
22
+ import TemperatureBehaviour from './TemperatureBehaviour';
23
+ export { EmitterBehaviours, Behaviour, SpawnBehaviour, LifeBehaviour, PositionBehaviour, ColorBehaviour, SizeBehaviour, AngularVelocityBehaviour, EmitDirectionBehaviour, RotationBehaviour, TurbulenceBehaviour, CollisionBehaviour, AttractionRepulsionBehaviour, NoiseBasedMotionBehaviour, ForceFieldsBehaviour, TimelineBehaviour, GroupingBehaviour, SoundReactiveBehaviour, LightEffectBehaviour, StretchBehaviour, TemperatureBehaviour, BehaviourNames, };
13
24
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/behaviour/index.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,kBAAkB,CAAA;AAC7C,OAAO,iBAAiB,MAAM,qBAAqB,CAAA;AACnD,OAAO,SAAS,MAAM,aAAa,CAAA;AACnC,OAAO,aAAa,MAAM,iBAAiB,CAAA;AAC3C,OAAO,iBAAiB,MAAM,qBAAqB,CAAA;AACnD,OAAO,cAAc,MAAM,kBAAkB,CAAA;AAC7C,OAAO,aAAa,MAAM,iBAAiB,CAAA;AAC3C,OAAO,wBAAwB,MAAM,4BAA4B,CAAA;AACjE,OAAO,sBAAsB,MAAM,0BAA0B,CAAA;AAC7D,OAAO,iBAAiB,MAAM,qBAAqB,CAAA;AACnD,OAAO,mBAAmB,MAAM,uBAAuB,CAAA;AAEvD,OAAO,EACL,iBAAiB,EACjB,SAAS,EACT,aAAa,EACb,iBAAiB,EACjB,cAAc,EACd,aAAa,EACb,wBAAwB,EACxB,sBAAsB,EACtB,iBAAiB,EACjB,mBAAmB,EACnB,cAAc,GACf,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/behaviour/index.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,kBAAkB,CAAA;AAC7C,OAAO,iBAAiB,MAAM,qBAAqB,CAAA;AACnD,OAAO,SAAS,MAAM,aAAa,CAAA;AACnC,OAAO,aAAa,MAAM,iBAAiB,CAAA;AAC3C,OAAO,iBAAiB,MAAM,qBAAqB,CAAA;AACnD,OAAO,cAAc,MAAM,kBAAkB,CAAA;AAC7C,OAAO,4BAA4B,MAAM,gCAAgC,CAAA;AACzE,OAAO,aAAa,MAAM,iBAAiB,CAAA;AAC3C,OAAO,wBAAwB,MAAM,4BAA4B,CAAA;AACjE,OAAO,sBAAsB,MAAM,0BAA0B,CAAA;AAC7D,OAAO,iBAAiB,MAAM,qBAAqB,CAAA;AACnD,OAAO,mBAAmB,MAAM,uBAAuB,CAAA;AACvD,OAAO,kBAAkB,MAAM,sBAAsB,CAAA;AACrD,OAAO,yBAAyB,MAAM,6BAA6B,CAAA;AACnE,OAAO,oBAAoB,MAAM,wBAAwB,CAAA;AACzD,OAAO,cAAc,MAAM,kBAAkB,CAAA;AAC7C,OAAO,iBAAiB,MAAM,qBAAqB,CAAA;AACnD,OAAO,iBAAiB,MAAM,qBAAqB,CAAA;AACnD,OAAO,sBAAsB,MAAM,0BAA0B,CAAA;AAC7D,OAAO,oBAAoB,MAAM,wBAAwB,CAAA;AACzD,OAAO,gBAAgB,MAAM,oBAAoB,CAAA;AACjD,OAAO,oBAAoB,MAAM,wBAAwB,CAAA;AAEzD,OAAO,EACL,iBAAiB,EACjB,SAAS,EACT,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,cAAc,EACd,aAAa,EACb,wBAAwB,EACxB,sBAAsB,EACtB,iBAAiB,EACjB,mBAAmB,EACnB,kBAAkB,EAClB,4BAA4B,EAC5B,yBAAyB,EACzB,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,sBAAsB,EACtB,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,cAAc,GACf,CAAA"}
@@ -14,5 +14,6 @@ export interface ICustomPixiParticlesSettings {
14
14
  tint?: boolean;
15
15
  maxParticles?: number;
16
16
  maxFPS: number;
17
+ minFPS: number;
17
18
  tickerSpeed: number;
18
19
  }
@@ -4,7 +4,7 @@ import eventemitter3 from 'eventemitter3';
4
4
  import { EmitterParser } from '../parser';
5
5
  import List from '../util/List';
6
6
  import Particle from '../Particle';
7
- import { BLEND_MODES } from 'pixi.js-legacy';
7
+ import { BLEND_MODES } from 'pixi.js';
8
8
  import Model from '../Model';
9
9
  import TurbulencePool from '../util/turbulencePool';
10
10
  export default class Emitter extends eventemitter3 {
@@ -110,4 +110,7 @@ export default class Emitter extends eventemitter3 {
110
110
  * Removes all the particles from the list
111
111
  */
112
112
  removeParticles(): void;
113
+ pause(): void;
114
+ resume(): void;
115
+ destroy(): void;
113
116
  }