custom-pixi-particles 2.0.7 → 2.0.8

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 (118) hide show
  1. package/dist/index.d.ts +6 -0
  2. package/dist/index.js +16 -0
  3. package/dist/index.js.map +1 -0
  4. package/dist/lib/Particle.d.ts +45 -0
  5. package/dist/lib/Particle.js +69 -0
  6. package/dist/lib/Particle.js.map +1 -0
  7. package/dist/lib/ParticlePool.d.ts +9 -0
  8. package/dist/lib/ParticlePool.js +34 -0
  9. package/dist/lib/ParticlePool.js.map +1 -0
  10. package/dist/lib/behaviour/AngularVelocityBehaviour.d.ts +26 -0
  11. package/dist/lib/behaviour/AngularVelocityBehaviour.js +78 -0
  12. package/dist/lib/behaviour/AngularVelocityBehaviour.js.map +1 -0
  13. package/dist/lib/behaviour/Behaviour.d.ts +7 -0
  14. package/dist/lib/behaviour/Behaviour.js +27 -0
  15. package/dist/lib/behaviour/Behaviour.js.map +1 -0
  16. package/dist/lib/behaviour/BehaviourNames.d.ts +11 -0
  17. package/dist/lib/behaviour/BehaviourNames.js +13 -0
  18. package/dist/lib/behaviour/BehaviourNames.js.map +1 -0
  19. package/dist/lib/behaviour/ColorBehaviour.d.ts +45 -0
  20. package/dist/lib/behaviour/ColorBehaviour.js +104 -0
  21. package/dist/lib/behaviour/ColorBehaviour.js.map +1 -0
  22. package/dist/lib/behaviour/EmitDirectionBehaviour.d.ts +22 -0
  23. package/dist/lib/behaviour/EmitDirectionBehaviour.js +84 -0
  24. package/dist/lib/behaviour/EmitDirectionBehaviour.js.map +1 -0
  25. package/dist/lib/behaviour/EmitterBehaviours.d.ts +12 -0
  26. package/dist/lib/behaviour/EmitterBehaviours.js +60 -0
  27. package/dist/lib/behaviour/EmitterBehaviours.js.map +1 -0
  28. package/dist/lib/behaviour/LifeBehaviour.d.ts +18 -0
  29. package/dist/lib/behaviour/LifeBehaviour.js +56 -0
  30. package/dist/lib/behaviour/LifeBehaviour.js.map +1 -0
  31. package/dist/lib/behaviour/PositionBehaviour.d.ts +62 -0
  32. package/dist/lib/behaviour/PositionBehaviour.js +147 -0
  33. package/dist/lib/behaviour/PositionBehaviour.js.map +1 -0
  34. package/dist/lib/behaviour/RotationBehaviour.d.ts +22 -0
  35. package/dist/lib/behaviour/RotationBehaviour.js +78 -0
  36. package/dist/lib/behaviour/RotationBehaviour.js.map +1 -0
  37. package/dist/lib/behaviour/SizeBehaviour.d.ts +31 -0
  38. package/dist/lib/behaviour/SizeBehaviour.js +85 -0
  39. package/dist/lib/behaviour/SizeBehaviour.js.map +1 -0
  40. package/dist/lib/behaviour/TurbulenceBehaviour.d.ts +69 -0
  41. package/dist/lib/behaviour/TurbulenceBehaviour.js +154 -0
  42. package/dist/lib/behaviour/TurbulenceBehaviour.js.map +1 -0
  43. package/dist/lib/behaviour/index.d.ts +12 -0
  44. package/dist/lib/behaviour/index.js +29 -0
  45. package/dist/lib/behaviour/index.js.map +1 -0
  46. package/dist/lib/customPixiParticlesSettingsInterface.d.ts +8 -0
  47. package/dist/lib/customPixiParticlesSettingsInterface.js +3 -0
  48. package/dist/lib/customPixiParticlesSettingsInterface.js.map +1 -0
  49. package/dist/lib/emission/AbstractEmission.d.ts +7 -0
  50. package/dist/lib/emission/AbstractEmission.js +22 -0
  51. package/dist/lib/emission/AbstractEmission.js.map +1 -0
  52. package/dist/lib/emission/EmissionTypes.d.ts +6 -0
  53. package/dist/lib/emission/EmissionTypes.js +8 -0
  54. package/dist/lib/emission/EmissionTypes.js.map +1 -0
  55. package/dist/lib/emission/RandomEmission.d.ts +11 -0
  56. package/dist/lib/emission/RandomEmission.js +62 -0
  57. package/dist/lib/emission/RandomEmission.js.map +1 -0
  58. package/dist/lib/emission/StandardEmission.d.ts +12 -0
  59. package/dist/lib/emission/StandardEmission.js +66 -0
  60. package/dist/lib/emission/StandardEmission.js.map +1 -0
  61. package/dist/lib/emission/UniformEmission.d.ts +14 -0
  62. package/dist/lib/emission/UniformEmission.js +74 -0
  63. package/dist/lib/emission/UniformEmission.js.map +1 -0
  64. package/dist/lib/emission/index.d.ts +6 -0
  65. package/dist/lib/emission/index.js +17 -0
  66. package/dist/lib/emission/index.js.map +1 -0
  67. package/dist/lib/emitter/Duration.d.ts +10 -0
  68. package/dist/lib/emitter/Duration.js +29 -0
  69. package/dist/lib/emitter/Duration.js.map +1 -0
  70. package/dist/lib/emitter/Emitter.d.ts +45 -0
  71. package/dist/lib/emitter/Emitter.js +215 -0
  72. package/dist/lib/emitter/Emitter.js.map +1 -0
  73. package/dist/lib/emitter/index.d.ts +3 -0
  74. package/dist/lib/emitter/index.js +11 -0
  75. package/dist/lib/emitter/index.js.map +1 -0
  76. package/dist/lib/index.d.ts +20 -0
  77. package/dist/lib/index.js +45 -0
  78. package/dist/lib/index.js.map +1 -0
  79. package/dist/lib/parser/BehaviourParser.d.ts +10 -0
  80. package/dist/lib/parser/BehaviourParser.js +49 -0
  81. package/dist/lib/parser/BehaviourParser.js.map +1 -0
  82. package/dist/lib/parser/CompatibilityHelper.d.ts +3 -0
  83. package/dist/lib/parser/CompatibilityHelper.js +15 -0
  84. package/dist/lib/parser/CompatibilityHelper.js.map +1 -0
  85. package/dist/lib/parser/EmitControllerParser.d.ts +6 -0
  86. package/dist/lib/parser/EmitControllerParser.js +23 -0
  87. package/dist/lib/parser/EmitControllerParser.js.map +1 -0
  88. package/dist/lib/parser/EmitterParser.d.ts +12 -0
  89. package/dist/lib/parser/EmitterParser.js +127 -0
  90. package/dist/lib/parser/EmitterParser.js.map +1 -0
  91. package/dist/lib/parser/index.d.ts +5 -0
  92. package/dist/lib/parser/index.js +15 -0
  93. package/dist/lib/parser/index.js.map +1 -0
  94. package/dist/lib/pixi/Renderer.d.ts +49 -0
  95. package/dist/lib/pixi/Renderer.js +438 -0
  96. package/dist/lib/pixi/Renderer.js.map +1 -0
  97. package/dist/lib/util/Color.d.ts +32 -0
  98. package/dist/lib/util/Color.js +99 -0
  99. package/dist/lib/util/Color.js.map +1 -0
  100. package/dist/lib/util/List.d.ts +9 -0
  101. package/dist/lib/util/List.js +51 -0
  102. package/dist/lib/util/List.js.map +1 -0
  103. package/dist/lib/util/Point.d.ts +13 -0
  104. package/dist/lib/util/Point.js +30 -0
  105. package/dist/lib/util/Point.js.map +1 -0
  106. package/dist/lib/util/Random.d.ts +4 -0
  107. package/dist/lib/util/Random.js +15 -0
  108. package/dist/lib/util/Random.js.map +1 -0
  109. package/dist/lib/util/index.d.ts +5 -0
  110. package/dist/lib/util/index.js +15 -0
  111. package/dist/lib/util/index.js.map +1 -0
  112. package/dist/lib/util/maths.d.ts +7 -0
  113. package/dist/lib/util/maths.js +17 -0
  114. package/dist/lib/util/maths.js.map +1 -0
  115. package/dist/lib/util/turbulencePool.d.ts +5 -0
  116. package/dist/lib/util/turbulencePool.js +10 -0
  117. package/dist/lib/util/turbulencePool.js.map +1 -0
  118. package/package.json +1 -1
@@ -0,0 +1,69 @@
1
+ import Behaviour from './Behaviour';
2
+ import Particle from '../Particle';
3
+ import { Point } from '../util';
4
+ export default class TurbulenceBehaviour extends Behaviour {
5
+ private enabled;
6
+ private showVortices;
7
+ private effect;
8
+ private turbulence;
9
+ private vortexOrgSize;
10
+ position: Point;
11
+ positionVariance: Point;
12
+ velocity: Point;
13
+ velocityVariance: Point;
14
+ acceleration: Point;
15
+ accelerationVariance: Point;
16
+ sizeStart: Point;
17
+ sizeEnd: Point;
18
+ startVariance: number;
19
+ endVariance: number;
20
+ emitPerSecond: number;
21
+ duration: number;
22
+ maxLifeTime: number;
23
+ init: (particle: Particle) => void;
24
+ apply: (particle: Particle, deltaTime: number) => void;
25
+ getName(): string;
26
+ getProps(): {
27
+ enabled: boolean;
28
+ priority: number;
29
+ position: {
30
+ x: number;
31
+ y: number;
32
+ };
33
+ positionVariance: {
34
+ x: number;
35
+ y: number;
36
+ };
37
+ velocity: {
38
+ x: number;
39
+ y: number;
40
+ };
41
+ velocityVariance: {
42
+ x: number;
43
+ y: number;
44
+ };
45
+ acceleration: {
46
+ x: number;
47
+ y: number;
48
+ };
49
+ accelerationVariance: {
50
+ x: number;
51
+ y: number;
52
+ };
53
+ sizeStart: {
54
+ x: number;
55
+ y: number;
56
+ };
57
+ sizeEnd: {
58
+ x: number;
59
+ y: number;
60
+ };
61
+ startVariance: number;
62
+ endVariance: number;
63
+ emitPerSecond: number;
64
+ duration: number;
65
+ maxLifeTime: number;
66
+ version: number;
67
+ name: string;
68
+ };
69
+ }
@@ -0,0 +1,154 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ var __importDefault = (this && this.__importDefault) || function (mod) {
18
+ return (mod && mod.__esModule) ? mod : { "default": mod };
19
+ };
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ var Behaviour_1 = __importDefault(require("./Behaviour"));
22
+ var BehaviourNames_1 = __importDefault(require("./BehaviourNames"));
23
+ var util_1 = require("../util");
24
+ var turbulencePool_1 = __importDefault(require("../util/turbulencePool"));
25
+ var TurbulenceBehaviour = /** @class */ (function (_super) {
26
+ __extends(TurbulenceBehaviour, _super);
27
+ function TurbulenceBehaviour() {
28
+ var _this = _super !== null && _super.apply(this, arguments) || this;
29
+ _this.enabled = false;
30
+ _this.showVortices = false;
31
+ _this.effect = 0;
32
+ _this.turbulence = false;
33
+ _this.vortexOrgSize = 128;
34
+ _this.position = new util_1.Point();
35
+ _this.positionVariance = new util_1.Point();
36
+ _this.velocity = new util_1.Point();
37
+ _this.velocityVariance = new util_1.Point();
38
+ _this.acceleration = new util_1.Point();
39
+ _this.accelerationVariance = new util_1.Point();
40
+ _this.sizeStart = new util_1.Point(1, 1);
41
+ _this.sizeEnd = new util_1.Point(1, 1);
42
+ _this.startVariance = 0;
43
+ _this.endVariance = 0;
44
+ _this.emitPerSecond = 0;
45
+ _this.duration = 0;
46
+ _this.maxLifeTime = 0;
47
+ _this.init = function (particle) {
48
+ if (!_this.enabled)
49
+ return;
50
+ particle.showVortices = _this.showVortices;
51
+ particle.turbulence = _this.turbulence;
52
+ };
53
+ _this.apply = function (particle, deltaTime) {
54
+ if (!_this.enabled)
55
+ return;
56
+ if (particle.turbulence)
57
+ return;
58
+ turbulencePool_1.default.list.forEach(function (vortex) {
59
+ var vx = 0, vy = 0, factor = 0;
60
+ var dx = particle.x - vortex.x;
61
+ var dy = particle.y - vortex.y;
62
+ if (dx > _this.vortexOrgSize * vortex.size.x)
63
+ return;
64
+ if (dy > _this.vortexOrgSize * vortex.size.x)
65
+ return;
66
+ if (_this.effect === 0 || _this.effect === 1) {
67
+ if (!_this.effect) {
68
+ vx = -dy + vortex.velocity.x;
69
+ vy = dx + vortex.velocity.y;
70
+ }
71
+ else {
72
+ vx = dy + vortex.velocity.x;
73
+ vy = -dx + vortex.velocity.y;
74
+ }
75
+ factor = 1 / (1 + (dx * dx + dy * dy) / (_this.vortexOrgSize * vortex.size.x));
76
+ }
77
+ else if (_this.effect === 2) {
78
+ vx = dx + vortex.velocity.x;
79
+ vy = dy + vortex.velocity.y;
80
+ factor = 1 / (1 + (dx * dx + dy * dy) / (_this.vortexOrgSize * vortex.size.x));
81
+ }
82
+ else if (_this.effect === 3) {
83
+ vx = dx - vortex.velocity.x;
84
+ vy = dy - vortex.velocity.y;
85
+ factor = 1 / (1 + (dx * dx + dy * dy) / (_this.vortexOrgSize * vortex.size.x));
86
+ }
87
+ else if (_this.effect === 4) {
88
+ vx = -dx + vortex.velocity.x;
89
+ vy = -dy + vortex.velocity.y;
90
+ factor = 1 / (1 + (dx * dx + dy * dy) / (_this.vortexOrgSize * vortex.size.x));
91
+ }
92
+ else if (_this.effect === 5) {
93
+ vx = -dx - vortex.velocity.x;
94
+ vy = -dy - vortex.velocity.y;
95
+ factor = 1 / (1 + (dx * dx + dy * dy) / (_this.vortexOrgSize * vortex.size.x));
96
+ }
97
+ particle.velocity.x += (vx - particle.velocity.x) * factor;
98
+ particle.velocity.y += (vy - particle.velocity.y) * factor;
99
+ });
100
+ };
101
+ return _this;
102
+ }
103
+ TurbulenceBehaviour.prototype.getName = function () {
104
+ return BehaviourNames_1.default.TURBULENCE_BEHAVIOUR;
105
+ };
106
+ TurbulenceBehaviour.prototype.getProps = function () {
107
+ return {
108
+ enabled: this.enabled,
109
+ priority: this.priority,
110
+ position: {
111
+ x: this.position.x,
112
+ y: this.position.y,
113
+ },
114
+ positionVariance: {
115
+ x: this.position.x,
116
+ y: this.position.y,
117
+ },
118
+ velocity: {
119
+ x: this.position.x,
120
+ y: this.position.y,
121
+ },
122
+ velocityVariance: {
123
+ x: this.position.x,
124
+ y: this.position.y,
125
+ },
126
+ acceleration: {
127
+ x: this.position.x,
128
+ y: this.position.y,
129
+ },
130
+ accelerationVariance: {
131
+ x: this.position.x,
132
+ y: this.position.y,
133
+ },
134
+ sizeStart: {
135
+ x: this.sizeStart.x,
136
+ y: this.sizeStart.y,
137
+ },
138
+ sizeEnd: {
139
+ x: this.sizeStart.x,
140
+ y: this.sizeStart.y,
141
+ },
142
+ startVariance: this.startVariance,
143
+ endVariance: this.endVariance,
144
+ emitPerSecond: this.emitPerSecond,
145
+ duration: this.duration,
146
+ maxLifeTime: this.maxLifeTime,
147
+ version: this.effect,
148
+ name: this.getName(),
149
+ };
150
+ };
151
+ return TurbulenceBehaviour;
152
+ }(Behaviour_1.default));
153
+ exports.default = TurbulenceBehaviour;
154
+ //# sourceMappingURL=TurbulenceBehaviour.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TurbulenceBehaviour.js","sourceRoot":"","sources":["../../../src/lib/behaviour/TurbulenceBehaviour.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,0DAAmC;AACnC,oEAA6C;AAE7C,gCAA+B;AAC/B,0EAAmD;AAEnD;IAAiD,uCAAS;IAA1D;QAAA,qEA6HC;QA5HS,aAAO,GAAY,KAAK,CAAA;QACxB,kBAAY,GAAY,KAAK,CAAA;QAC7B,YAAM,GAAW,CAAC,CAAA;QAClB,gBAAU,GAAY,KAAK,CAAA;QAC3B,mBAAa,GAAW,GAAG,CAAA;QACnC,cAAQ,GAAG,IAAI,YAAK,EAAE,CAAA;QACtB,sBAAgB,GAAG,IAAI,YAAK,EAAE,CAAA;QAC9B,cAAQ,GAAG,IAAI,YAAK,EAAE,CAAA;QACtB,sBAAgB,GAAG,IAAI,YAAK,EAAE,CAAA;QAC9B,kBAAY,GAAG,IAAI,YAAK,EAAE,CAAA;QAC1B,0BAAoB,GAAG,IAAI,YAAK,EAAE,CAAA;QAClC,eAAS,GAAG,IAAI,YAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QAC3B,aAAO,GAAG,IAAI,YAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QACzB,mBAAa,GAAG,CAAC,CAAA;QACjB,iBAAW,GAAG,CAAC,CAAA;QACf,mBAAa,GAAG,CAAC,CAAA;QACjB,cAAQ,GAAG,CAAC,CAAA;QACZ,iBAAW,GAAG,CAAC,CAAA;QAEf,UAAI,GAAG,UAAC,QAAkB;YACxB,IAAI,CAAC,KAAI,CAAC,OAAO;gBAAE,OAAM;YACzB,QAAQ,CAAC,YAAY,GAAG,KAAI,CAAC,YAAY,CAAA;YACzC,QAAQ,CAAC,UAAU,GAAG,KAAI,CAAC,UAAU,CAAA;QACvC,CAAC,CAAA;QAED,WAAK,GAAG,UAAC,QAAkB,EAAE,SAAiB;YAC5C,IAAI,CAAC,KAAI,CAAC,OAAO;gBAAE,OAAM;YACzB,IAAI,QAAQ,CAAC,UAAU;gBAAE,OAAM;YAE/B,wBAAc,CAAC,IAAI,CAAC,OAAO,CAAC,UAAC,MAAgB;gBAC3C,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,CAAA;gBAE9B,IAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAA;gBAChC,IAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAA;gBAEhC,IAAI,EAAE,GAAG,KAAI,CAAC,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;oBAAE,OAAM;gBACnD,IAAI,EAAE,GAAG,KAAI,CAAC,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;oBAAE,OAAM;gBAEnD,IAAI,KAAI,CAAC,MAAM,KAAK,CAAC,IAAI,KAAI,CAAC,MAAM,KAAK,CAAC,EAAE;oBAC1C,IAAI,CAAC,KAAI,CAAC,MAAM,EAAE;wBAChB,EAAE,GAAG,CAAC,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAA;wBAC5B,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAA;qBAC5B;yBAAM;wBACL,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAA;wBAC3B,EAAE,GAAG,CAAC,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAA;qBAC7B;oBAED,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,KAAI,CAAC,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;iBAC9E;qBAAM,IAAI,KAAI,CAAC,MAAM,KAAK,CAAC,EAAE;oBAC5B,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,KAAI,CAAC,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;iBAC9E;qBAAM,IAAI,KAAI,CAAC,MAAM,KAAK,CAAC,EAAE;oBAC5B,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,KAAI,CAAC,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;iBAC9E;qBAAM,IAAI,KAAI,CAAC,MAAM,KAAK,CAAC,EAAE;oBAC5B,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,KAAI,CAAC,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;iBAC9E;qBAAM,IAAI,KAAI,CAAC,MAAM,KAAK,CAAC,EAAE;oBAC5B,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,KAAI,CAAC,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;iBAC9E;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,qCAAO,GAAP;QACE,OAAO,wBAAc,CAAC,oBAAoB,CAAA;IAC5C,CAAC;IAED,sCAAQ,GAAR;QACE,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,QAAQ,CAAC,CAAC;gBAClB,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;aACnB;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,QAAQ,CAAC,CAAC;gBAClB,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;aACnB;YACD,YAAY,EAAE;gBACZ,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAClB,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;aACnB;YACD,oBAAoB,EAAE;gBACpB,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAClB,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;aACnB;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,SAAS,CAAC,CAAC;gBACnB,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;aACpB;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;IACH,0BAAC;AAAD,CAAC,AA7HD,CAAiD,mBAAS,GA6HzD"}
@@ -0,0 +1,12 @@
1
+ import BehaviourNames from './BehaviourNames';
2
+ import EmitterBehaviours from './EmitterBehaviours';
3
+ import Behaviour from './Behaviour';
4
+ import LifeBehaviour from './LifeBehaviour';
5
+ import PositionBehaviour from './PositionBehaviour';
6
+ import ColorBehaviour from './ColorBehaviour';
7
+ import SizeBehaviour from './SizeBehaviour';
8
+ import AngularVelocityBehaviour from './AngularVelocityBehaviour';
9
+ import EmitDirectionBehaviour from './EmitDirectionBehaviour';
10
+ import RotationBehaviour from './RotationBehaviour';
11
+ import TurbulenceBehaviour from './TurbulenceBehaviour';
12
+ export { EmitterBehaviours, Behaviour, LifeBehaviour, PositionBehaviour, ColorBehaviour, SizeBehaviour, AngularVelocityBehaviour, EmitDirectionBehaviour, RotationBehaviour, TurbulenceBehaviour, BehaviourNames, };
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.BehaviourNames = exports.TurbulenceBehaviour = exports.RotationBehaviour = exports.EmitDirectionBehaviour = exports.AngularVelocityBehaviour = exports.SizeBehaviour = exports.ColorBehaviour = exports.PositionBehaviour = exports.LifeBehaviour = exports.Behaviour = exports.EmitterBehaviours = void 0;
7
+ var BehaviourNames_1 = __importDefault(require("./BehaviourNames"));
8
+ exports.BehaviourNames = BehaviourNames_1.default;
9
+ var EmitterBehaviours_1 = __importDefault(require("./EmitterBehaviours"));
10
+ exports.EmitterBehaviours = EmitterBehaviours_1.default;
11
+ var Behaviour_1 = __importDefault(require("./Behaviour"));
12
+ exports.Behaviour = Behaviour_1.default;
13
+ var LifeBehaviour_1 = __importDefault(require("./LifeBehaviour"));
14
+ exports.LifeBehaviour = LifeBehaviour_1.default;
15
+ var PositionBehaviour_1 = __importDefault(require("./PositionBehaviour"));
16
+ exports.PositionBehaviour = PositionBehaviour_1.default;
17
+ var ColorBehaviour_1 = __importDefault(require("./ColorBehaviour"));
18
+ exports.ColorBehaviour = ColorBehaviour_1.default;
19
+ var SizeBehaviour_1 = __importDefault(require("./SizeBehaviour"));
20
+ exports.SizeBehaviour = SizeBehaviour_1.default;
21
+ var AngularVelocityBehaviour_1 = __importDefault(require("./AngularVelocityBehaviour"));
22
+ exports.AngularVelocityBehaviour = AngularVelocityBehaviour_1.default;
23
+ var EmitDirectionBehaviour_1 = __importDefault(require("./EmitDirectionBehaviour"));
24
+ exports.EmitDirectionBehaviour = EmitDirectionBehaviour_1.default;
25
+ var RotationBehaviour_1 = __importDefault(require("./RotationBehaviour"));
26
+ exports.RotationBehaviour = RotationBehaviour_1.default;
27
+ var TurbulenceBehaviour_1 = __importDefault(require("./TurbulenceBehaviour"));
28
+ exports.TurbulenceBehaviour = TurbulenceBehaviour_1.default;
29
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/behaviour/index.ts"],"names":[],"mappings":";;;;;;AAAA,oEAA6C;AAuB3C,yBAvBK,wBAAc,CAuBL;AAtBhB,0EAAmD;AAYjD,4BAZK,2BAAiB,CAYL;AAXnB,0DAAmC;AAYjC,oBAZK,mBAAS,CAYL;AAXX,kEAA2C;AAYzC,wBAZK,uBAAa,CAYL;AAXf,0EAAmD;AAYjD,4BAZK,2BAAiB,CAYL;AAXnB,oEAA6C;AAY3C,yBAZK,wBAAc,CAYL;AAXhB,kEAA2C;AAYzC,wBAZK,uBAAa,CAYL;AAXf,wFAAiE;AAY/D,mCAZK,kCAAwB,CAYL;AAX1B,oFAA6D;AAY3D,iCAZK,gCAAsB,CAYL;AAXxB,0EAAmD;AAYjD,4BAZK,2BAAiB,CAYL;AAXnB,8EAAuD;AAYrD,8BAZK,6BAAmB,CAYL"}
@@ -0,0 +1,8 @@
1
+ export interface ICustomPixiParticlesSettings {
2
+ textures: string[];
3
+ emitterConfig: any;
4
+ animatedSprite?: boolean;
5
+ finishingTextures?: string[];
6
+ animatedSpriteFrameRate?: number;
7
+ animatedSpriteLoop?: boolean;
8
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=customPixiParticlesSettingsInterface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"customPixiParticlesSettingsInterface.js","sourceRoot":"","sources":["../../src/lib/customPixiParticlesSettingsInterface.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ import { EmitControllerParser } from '../parser';
2
+ export default class AbstractEmission {
3
+ howMany(deltaTime: number, particlesCount: number): void;
4
+ reset(): void;
5
+ getName(): void;
6
+ getParser(): EmitControllerParser;
7
+ }
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var parser_1 = require("../parser");
4
+ var AbstractEmission = /** @class */ (function () {
5
+ function AbstractEmission() {
6
+ }
7
+ AbstractEmission.prototype.howMany = function (deltaTime, particlesCount) {
8
+ throw new Error('Abstract method');
9
+ };
10
+ AbstractEmission.prototype.reset = function () {
11
+ //
12
+ };
13
+ AbstractEmission.prototype.getName = function () {
14
+ throw new Error('This method has to be overridden in subclass');
15
+ };
16
+ AbstractEmission.prototype.getParser = function () {
17
+ return new parser_1.EmitControllerParser(this);
18
+ };
19
+ return AbstractEmission;
20
+ }());
21
+ exports.default = AbstractEmission;
22
+ //# sourceMappingURL=AbstractEmission.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AbstractEmission.js","sourceRoot":"","sources":["../../../src/lib/emission/AbstractEmission.ts"],"names":[],"mappings":";;AAAA,oCAAgD;AAEhD;IAAA;IAgBA,CAAC;IAfC,kCAAO,GAAP,UAAQ,SAAiB,EAAE,cAAsB;QAC/C,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAA;IACpC,CAAC;IAED,gCAAK,GAAL;QACE,EAAE;IACJ,CAAC;IAED,kCAAO,GAAP;QACE,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAA;IACjE,CAAC;IAED,oCAAS,GAAT;QACE,OAAO,IAAI,6BAAoB,CAAC,IAAI,CAAC,CAAA;IACvC,CAAC;IACH,uBAAC;AAAD,CAAC,AAhBD,IAgBC"}
@@ -0,0 +1,6 @@
1
+ declare const _default: {
2
+ DEFAULT: string;
3
+ RANDOM: string;
4
+ UNIFORM: string;
5
+ };
6
+ export default _default;
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.default = {
4
+ DEFAULT: 'UniformEmission',
5
+ RANDOM: 'RandomEmission',
6
+ UNIFORM: 'StandardEmission',
7
+ };
8
+ //# sourceMappingURL=EmissionTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EmissionTypes.js","sourceRoot":"","sources":["../../../src/lib/emission/EmissionTypes.ts"],"names":[],"mappings":";;AAAA,kBAAe;IACb,OAAO,EAAE,iBAAiB;IAC1B,MAAM,EAAE,gBAAgB;IACxB,OAAO,EAAE,kBAAkB;CAC5B,CAAA"}
@@ -0,0 +1,11 @@
1
+ import { AbstractEmission } from './index';
2
+ export default class RandomEmission extends AbstractEmission {
3
+ _maxParticles: number;
4
+ _emissionRate: number;
5
+ howMany(deltaTime: number, particlesCount: number): number;
6
+ get emissionRate(): number;
7
+ set emissionRate(value: number);
8
+ get maxParticles(): number;
9
+ set maxParticles(value: number);
10
+ getName: () => string;
11
+ }
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ var index_1 = require("./index");
19
+ var util_1 = require("../util");
20
+ var RandomEmission = /** @class */ (function (_super) {
21
+ __extends(RandomEmission, _super);
22
+ function RandomEmission() {
23
+ var _this = _super !== null && _super.apply(this, arguments) || this;
24
+ _this._maxParticles = 0;
25
+ _this._emissionRate = 0;
26
+ _this.getName = function () {
27
+ return index_1.EmissionTypes.RANDOM;
28
+ };
29
+ return _this;
30
+ }
31
+ RandomEmission.prototype.howMany = function (deltaTime, particlesCount) {
32
+ if (particlesCount < this.maxParticles) {
33
+ var count = Math.round(util_1.Random.uniform(0, Math.ceil(this.emissionRate * deltaTime)));
34
+ var total = particlesCount + count;
35
+ return total > this._maxParticles ? this.maxParticles - particlesCount : count;
36
+ }
37
+ return 0;
38
+ };
39
+ Object.defineProperty(RandomEmission.prototype, "emissionRate", {
40
+ get: function () {
41
+ return this._emissionRate;
42
+ },
43
+ set: function (value) {
44
+ this._emissionRate = Math.max(0, value);
45
+ },
46
+ enumerable: false,
47
+ configurable: true
48
+ });
49
+ Object.defineProperty(RandomEmission.prototype, "maxParticles", {
50
+ get: function () {
51
+ return this._maxParticles;
52
+ },
53
+ set: function (value) {
54
+ this._maxParticles = Math.max(0, value);
55
+ },
56
+ enumerable: false,
57
+ configurable: true
58
+ });
59
+ return RandomEmission;
60
+ }(index_1.AbstractEmission));
61
+ exports.default = RandomEmission;
62
+ //# sourceMappingURL=RandomEmission.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RandomEmission.js","sourceRoot":"","sources":["../../../src/lib/emission/RandomEmission.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,iCAAyD;AACzD,gCAAgC;AAEhC;IAA4C,kCAAgB;IAA5D;QAAA,qEAiCC;QAhCC,mBAAa,GAAG,CAAC,CAAA;QACjB,mBAAa,GAAG,CAAC,CAAA;QA4BjB,aAAO,GAAG;YACR,OAAO,qBAAa,CAAC,MAAM,CAAA;QAC7B,CAAC,CAAA;;IACH,CAAC;IA7BC,gCAAO,GAAP,UAAQ,SAAiB,EAAE,cAAsB;QAC/C,IAAI,cAAc,GAAG,IAAI,CAAC,YAAY,EAAE;YACtC,IAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,aAAM,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC,CAAC,CAAC,CAAA;YACrF,IAAM,KAAK,GAAG,cAAc,GAAG,KAAK,CAAA;YACpC,OAAO,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,GAAG,cAAc,CAAC,CAAC,CAAC,KAAK,CAAA;SAC/E;QAED,OAAO,CAAC,CAAA;IACV,CAAC;IAED,sBAAI,wCAAY;aAAhB;YACE,OAAO,IAAI,CAAC,aAAa,CAAA;QAC3B,CAAC;aAED,UAAiB,KAAa;YAC5B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;QACzC,CAAC;;;OAJA;IAMD,sBAAI,wCAAY;aAAhB;YACE,OAAO,IAAI,CAAC,aAAa,CAAA;QAC3B,CAAC;aAED,UAAiB,KAAa;YAC5B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;QACzC,CAAC;;;OAJA;IASH,qBAAC;AAAD,CAAC,AAjCD,CAA4C,wBAAgB,GAiC3D"}
@@ -0,0 +1,12 @@
1
+ import { AbstractEmission } from './index';
2
+ export default class StandardEmission extends AbstractEmission {
3
+ _maxParticles: number;
4
+ _emissionRate: number;
5
+ _emitCounter: number;
6
+ howMany(deltaTime: number, particlesCount: number): number;
7
+ get emissionRate(): number;
8
+ set emissionRate(value: number);
9
+ get maxParticles(): number;
10
+ set maxParticles(value: number);
11
+ getName: () => string;
12
+ }
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ var index_1 = require("./index");
19
+ var StandardEmission = /** @class */ (function (_super) {
20
+ __extends(StandardEmission, _super);
21
+ function StandardEmission() {
22
+ var _this = _super !== null && _super.apply(this, arguments) || this;
23
+ _this._maxParticles = 0;
24
+ _this._emissionRate = 0;
25
+ _this._emitCounter = 0;
26
+ _this.getName = function () {
27
+ return index_1.EmissionTypes.UNIFORM;
28
+ };
29
+ return _this;
30
+ }
31
+ StandardEmission.prototype.howMany = function (deltaTime, particlesCount) {
32
+ var rate = 1.0 / this.emissionRate;
33
+ var count = 0;
34
+ if (particlesCount < this.maxParticles) {
35
+ this._emitCounter += deltaTime;
36
+ }
37
+ while (particlesCount < this.maxParticles && this._emitCounter > rate) {
38
+ count++;
39
+ this._emitCounter -= rate;
40
+ }
41
+ return count;
42
+ };
43
+ Object.defineProperty(StandardEmission.prototype, "emissionRate", {
44
+ get: function () {
45
+ return this._emissionRate;
46
+ },
47
+ set: function (value) {
48
+ this._emissionRate = Math.max(0, value);
49
+ },
50
+ enumerable: false,
51
+ configurable: true
52
+ });
53
+ Object.defineProperty(StandardEmission.prototype, "maxParticles", {
54
+ get: function () {
55
+ return this._maxParticles;
56
+ },
57
+ set: function (value) {
58
+ this._maxParticles = Math.max(0, value);
59
+ },
60
+ enumerable: false,
61
+ configurable: true
62
+ });
63
+ return StandardEmission;
64
+ }(index_1.AbstractEmission));
65
+ exports.default = StandardEmission;
66
+ //# sourceMappingURL=StandardEmission.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StandardEmission.js","sourceRoot":"","sources":["../../../src/lib/emission/StandardEmission.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,iCAAyD;AAEzD;IAA8C,oCAAgB;IAA9D;QAAA,qEAuCC;QAtCC,mBAAa,GAAG,CAAC,CAAA;QACjB,mBAAa,GAAG,CAAC,CAAA;QACjB,kBAAY,GAAG,CAAC,CAAA;QAiChB,aAAO,GAAG;YACR,OAAO,qBAAa,CAAC,OAAO,CAAA;QAC9B,CAAC,CAAA;;IACH,CAAC;IAlCC,kCAAO,GAAP,UAAQ,SAAiB,EAAE,cAAsB;QAC/C,IAAM,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC,YAAY,CAAA;QACpC,IAAI,KAAK,GAAG,CAAC,CAAA;QACb,IAAI,cAAc,GAAG,IAAI,CAAC,YAAY,EAAE;YACtC,IAAI,CAAC,YAAY,IAAI,SAAS,CAAA;SAC/B;QAED,OAAO,cAAc,GAAG,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,GAAG,IAAI,EAAE;YACrE,KAAK,EAAE,CAAA;YACP,IAAI,CAAC,YAAY,IAAI,IAAI,CAAA;SAC1B;QAED,OAAO,KAAK,CAAA;IACd,CAAC;IAED,sBAAI,0CAAY;aAAhB;YACE,OAAO,IAAI,CAAC,aAAa,CAAA;QAC3B,CAAC;aAED,UAAiB,KAAa;YAC5B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;QACzC,CAAC;;;OAJA;IAMD,sBAAI,0CAAY;aAAhB;YACE,OAAO,IAAI,CAAC,aAAa,CAAA;QAC3B,CAAC;aAED,UAAiB,KAAa;YAC5B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;QACzC,CAAC;;;OAJA;IASH,uBAAC;AAAD,CAAC,AAvCD,CAA8C,wBAAgB,GAuC7D"}
@@ -0,0 +1,14 @@
1
+ import { AbstractEmission } from './index';
2
+ export default class UniformEmission extends AbstractEmission {
3
+ _maxParticles: number;
4
+ _maxLife: number;
5
+ _emitPerSecond: number;
6
+ _frames: number;
7
+ howMany(deltaTime: number, particlesCount: number): number;
8
+ refresh(): void;
9
+ set maxLife(value: number);
10
+ set maxParticles(value: number);
11
+ get emitPerSecond(): number;
12
+ set emitPerSecond(value: number);
13
+ getName: () => string;
14
+ }
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ var index_1 = require("./index");
19
+ var UniformEmission = /** @class */ (function (_super) {
20
+ __extends(UniformEmission, _super);
21
+ function UniformEmission() {
22
+ var _this = _super !== null && _super.apply(this, arguments) || this;
23
+ _this._maxParticles = 0;
24
+ _this._maxLife = 1;
25
+ _this._emitPerSecond = 0;
26
+ _this._frames = 0;
27
+ _this.getName = function () {
28
+ return index_1.EmissionTypes.DEFAULT;
29
+ };
30
+ return _this;
31
+ }
32
+ UniformEmission.prototype.howMany = function (deltaTime, particlesCount) {
33
+ var ratio = this._emitPerSecond * deltaTime;
34
+ this._frames += ratio;
35
+ var numberToEmit = 0;
36
+ if (this._frames >= 1.0) {
37
+ numberToEmit = Math.round(this._frames);
38
+ this._frames = 0;
39
+ }
40
+ return numberToEmit;
41
+ };
42
+ UniformEmission.prototype.refresh = function () {
43
+ this.emitPerSecond = this._maxParticles / this._maxLife;
44
+ };
45
+ Object.defineProperty(UniformEmission.prototype, "maxLife", {
46
+ set: function (value) {
47
+ this._maxLife = Math.max(value, 1);
48
+ this.refresh();
49
+ },
50
+ enumerable: false,
51
+ configurable: true
52
+ });
53
+ Object.defineProperty(UniformEmission.prototype, "maxParticles", {
54
+ set: function (value) {
55
+ this._maxParticles = Math.max(value, 0);
56
+ this.refresh();
57
+ },
58
+ enumerable: false,
59
+ configurable: true
60
+ });
61
+ Object.defineProperty(UniformEmission.prototype, "emitPerSecond", {
62
+ get: function () {
63
+ return this._emitPerSecond;
64
+ },
65
+ set: function (value) {
66
+ this._emitPerSecond = Math.max(value, 0);
67
+ },
68
+ enumerable: false,
69
+ configurable: true
70
+ });
71
+ return UniformEmission;
72
+ }(index_1.AbstractEmission));
73
+ exports.default = UniformEmission;
74
+ //# sourceMappingURL=UniformEmission.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UniformEmission.js","sourceRoot":"","sources":["../../../src/lib/emission/UniformEmission.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,iCAAyD;AAEzD;IAA6C,mCAAgB;IAA7D;QAAA,qEA4CC;QA3CC,mBAAa,GAAG,CAAC,CAAA;QACjB,cAAQ,GAAG,CAAC,CAAA;QACZ,oBAAc,GAAG,CAAC,CAAA;QAClB,aAAO,GAAG,CAAC,CAAA;QAqCX,aAAO,GAAG;YACR,OAAO,qBAAa,CAAC,OAAO,CAAA;QAC9B,CAAC,CAAA;;IACH,CAAC;IAtCC,iCAAO,GAAP,UAAQ,SAAiB,EAAE,cAAsB;QAC/C,IAAM,KAAK,GAAG,IAAI,CAAC,cAAc,GAAG,SAAS,CAAA;QAC7C,IAAI,CAAC,OAAO,IAAI,KAAK,CAAA;QAErB,IAAI,YAAY,GAAG,CAAC,CAAA;QACpB,IAAI,IAAI,CAAC,OAAO,IAAI,GAAG,EAAE;YACvB,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YACvC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAA;SACjB;QAED,OAAO,YAAY,CAAA;IACrB,CAAC;IAED,iCAAO,GAAP;QACE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAA;IACzD,CAAC;IAED,sBAAI,oCAAO;aAAX,UAAY,KAAa;YACvB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;YAClC,IAAI,CAAC,OAAO,EAAE,CAAA;QAChB,CAAC;;;OAAA;IAED,sBAAI,yCAAY;aAAhB,UAAiB,KAAa;YAC5B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;YACvC,IAAI,CAAC,OAAO,EAAE,CAAA;QAChB,CAAC;;;OAAA;IAED,sBAAI,0CAAa;aAAjB;YACE,OAAO,IAAI,CAAC,cAAc,CAAA;QAC5B,CAAC;aAED,UAAkB,KAAa;YAC7B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;QAC1C,CAAC;;;OAJA;IASH,sBAAC;AAAD,CAAC,AA5CD,CAA6C,wBAAgB,GA4C5D"}
@@ -0,0 +1,6 @@
1
+ import EmissionTypes from './EmissionTypes';
2
+ import AbstractEmission from './AbstractEmission';
3
+ import UniformEmission from './UniformEmission';
4
+ import RandomEmission from './RandomEmission';
5
+ import StandardEmission from './StandardEmission';
6
+ export { EmissionTypes, AbstractEmission, UniformEmission, RandomEmission, StandardEmission };
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.StandardEmission = exports.RandomEmission = exports.UniformEmission = exports.AbstractEmission = exports.EmissionTypes = void 0;
7
+ var EmissionTypes_1 = __importDefault(require("./EmissionTypes"));
8
+ exports.EmissionTypes = EmissionTypes_1.default;
9
+ var AbstractEmission_1 = __importDefault(require("./AbstractEmission"));
10
+ exports.AbstractEmission = AbstractEmission_1.default;
11
+ var UniformEmission_1 = __importDefault(require("./UniformEmission"));
12
+ exports.UniformEmission = UniformEmission_1.default;
13
+ var RandomEmission_1 = __importDefault(require("./RandomEmission"));
14
+ exports.RandomEmission = RandomEmission_1.default;
15
+ var StandardEmission_1 = __importDefault(require("./StandardEmission"));
16
+ exports.StandardEmission = StandardEmission_1.default;
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/emission/index.ts"],"names":[],"mappings":";;;;;;AAAA,kEAA2C;AAMlC,wBANF,uBAAa,CAME;AALtB,wEAAiD;AAKzB,2BALjB,0BAAgB,CAKiB;AAJxC,sEAA+C;AAIL,0BAJnC,yBAAe,CAImC;AAHzD,oEAA6C;AAGc,yBAHpD,wBAAc,CAGoD;AAFzE,wEAAiD;AAE0B,2BAFpE,0BAAgB,CAEoE"}