Skip to content

Commit bc7cbc3

Browse files
committed
fix demo
1 parent 22a5406 commit bc7cbc3

File tree

7 files changed

+33
-16
lines changed

7 files changed

+33
-16
lines changed

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -167,7 +167,7 @@ npm install @fireworks-js/web
167167
| `friction` | number | 0.95 |
168168
| `gravity` | number | 1.5 |
169169
| `particles` | number | 50 |
170-
| `trace` | number | 3 |
170+
| `traceLength` | number | 3 |
171171
| `flickering` | number | 50 |
172172
| `intensity` | number | 30 |
173173
| `traceSpeed` | number | 10 |
@@ -213,7 +213,7 @@ const fireworks = new Fireworks(container, {
213213
friction: 0.97,
214214
gravity: 1.5,
215215
particles: 50,
216-
trace: 3,
216+
traceLength: 3,
217217
traceSpeed: 10,
218218
explosion: 5,
219219
intensity: 30,

packages/fireworks-js/src/fireworks.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { Explosion } from './explosion.js'
2-
import { randomFloat, randomInt } from './helpers.js'
2+
import { floor, randomFloat, randomInt } from './helpers.js'
33
import { Mouse } from './mouse.js'
44
import { opts } from './options.js'
55
import { RequestAnimationFrame } from './raf.js'
@@ -174,7 +174,7 @@ export class Fireworks {
174174
delay,
175175
rocketsPoint,
176176
boundaries,
177-
trace,
177+
traceLength,
178178
traceSpeed,
179179
acceleration,
180180
mouse
@@ -200,7 +200,7 @@ export class Fireworks {
200200
hue: randomInt(hue.min, hue.max),
201201
speed: traceSpeed,
202202
acceleration,
203-
traceLength: trace
203+
traceLength: floor(traceLength)
204204
})
205205
)
206206

@@ -237,7 +237,7 @@ export class Fireworks {
237237
decay
238238
} = opts
239239

240-
let particlesLength = particles
240+
let particlesLength = floor(particles)
241241
while (particlesLength--) {
242242
this.explosions.push(
243243
new Explosion({
@@ -252,7 +252,7 @@ export class Fireworks {
252252
lineWidth.explosion.min,
253253
lineWidth.explosion.max
254254
),
255-
explosionLength: Math.round(explosion),
255+
explosionLength: floor(explosion),
256256
brightness,
257257
decay
258258
})

packages/fireworks-js/src/helpers.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
export function floor(num: number): number {
2+
return Math.abs(Math.floor(num))
3+
}
4+
15
export function randomFloat(min: number, max: number): number {
26
return Math.random() * (max - min) + min
37
}

packages/fireworks-js/src/options.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@ class Options implements FireworksOptions {
1818
public friction: number
1919
public gravity: number
2020
public particles: number
21-
public trace: number
2221
public explosion: number
2322
public mouse: IMouse
2423
public boundaries: IBoundaries
@@ -28,6 +27,7 @@ class Options implements FireworksOptions {
2827
public decay: MinMax
2928
public flickering: number
3029
public intensity: number
30+
public traceLength: number
3131
public traceSpeed: number
3232
public lineWidth: LineWidth
3333
public lineStyle: LineStyle
@@ -38,7 +38,7 @@ class Options implements FireworksOptions {
3838
this.autoresize = true
3939
this.lineStyle = 'round'
4040
this.flickering = 50
41-
this.trace = 3
41+
this.traceLength = 3
4242
this.traceSpeed = 10
4343
this.intensity = 30
4444
this.explosion = 5

packages/fireworks-js/src/types.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ export interface IFireworksOptions {
99
friction: number
1010
gravity: number
1111
particles: number
12-
trace: number
1312
explosion: number
1413
mouse: IMouse
1514
boundaries: IBoundaries
@@ -19,6 +18,7 @@ export interface IFireworksOptions {
1918
decay: MinMax
2019
flickering: number
2120
intensity: number
21+
traceLength: number
2222
traceSpeed: number
2323
lineWidth: LineWidth
2424
lineStyle: LineStyle

website/src/config.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,10 @@ export const fireworksOptions: FireworksOptions = {
2424
acceleration: 1.02,
2525
friction: 0.97,
2626
gravity: 1.5,
27-
particles: 90,
28-
trace: 3,
27+
particles: 60,
28+
traceLength: 3,
2929
traceSpeed: 10,
30-
explosion: 6,
30+
explosion: 5,
3131
intensity: 30,
3232
flickering: 50,
3333
lineStyle: 'round',

website/src/index.ts

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,11 @@ fireworks.start()
2121

2222
const fireworksGetters = {
2323
get traces(): number {
24-
// @ts-expect-error
24+
// @ts-ignore
2525
return fireworks.traces.length
2626
},
2727
get particles(): number {
28-
// @ts-expect-error
28+
// @ts-ignore
2929
return fireworks.explosions.length
3030
}
3131
}
@@ -104,6 +104,17 @@ tweakpane.addInput(fireworksOptions, 'opacity', {
104104
step: 0.1
105105
})
106106

107+
tweakpane.addInput(fireworksOptions, 'particles', {
108+
step: 1,
109+
min: 1,
110+
max: 200
111+
})
112+
113+
tweakpane.addInput(fireworksOptions, 'traceLength', {
114+
min: 1,
115+
max: 10
116+
})
117+
107118
tweakpane.addInput(fireworksOptions, 'traceSpeed', {
108119
min: 1,
109120
max: 100,
@@ -117,11 +128,13 @@ tweakpane.addInput(fireworksOptions, 'rocketsPoint', {
117128
})
118129

119130
tweakpane.addInput(fireworksOptions.lineWidth!, 'explosion', {
120-
min: 1,
131+
label: 'lineWidth (explosion)',
132+
min: 0,
121133
max: 10
122134
})
123135

124136
tweakpane.addInput(fireworksOptions.lineWidth!, 'trace', {
137+
label: 'lineWidth (trace)',
125138
min: 0,
126139
max: 10
127140
})

0 commit comments

Comments
 (0)