Skip to content

Commit 0adc667

Browse files
committed
fixed some particle animations
1 parent 9e006a5 commit 0adc667

File tree

2 files changed

+54
-54
lines changed

2 files changed

+54
-54
lines changed

src/battle.rs

Lines changed: 53 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -323,60 +323,60 @@ fn animate_matches(
323323
let delay_between_matches = Duration::from_secs_f32(BETWEEN_MATCH_DELAY);
324324

325325
let mut delay = start_delay;
326-
for event in events
327-
.iter()
328-
.filter(|x| spell.elements.contains(&x.element))
329-
{
330-
let material = materials.add(StandardMaterial {
331-
base_color: event.element.color(),
332-
base_color_texture: Some(asset_server.load("particles/star_06.png")),
333-
double_sided: true,
334-
unlit: true,
335-
alpha_mode: AlphaMode::Blend,
336-
..default()
337-
});
338-
339-
for tile in &event.tiles {
340-
let transform = tiles.get(*tile).unwrap();
341-
342-
let transform = transform.compute_transform() * Transform::from_xyz(0.0, 0.0, 1.0);
343-
commands
344-
.spawn_bundle(SpatialBundle {
345-
transform,
346-
..default()
347-
})
348-
.insert(BOARD_LAYER)
349-
.insert(DelayedDespawn::from_seconds(0.7))
350-
.insert(Animator::new(Delay::new(delay).then(Tween::new(
351-
EaseFunction::QuadraticInOut,
352-
TweeningType::Once,
353-
Duration::from_secs_f32(0.5),
354-
TransformPositionLens {
355-
start: transform.translation,
356-
end: Vec3::new(0.0, -2.5, 1.0),
357-
},
358-
))))
359-
.with_children(|c| {
360-
c.spawn_bundle(SpatialBundle::default())
361-
.insert(ParticleEmitter {
362-
material: material.clone(),
363-
timer: Timer::from_seconds(1.0 / 200.0, true),
364-
size_range: 0.2..0.3,
365-
velocity_range: -0.01..0.01,
366-
lifetime_range: 0.5..1.0,
367-
particles_track: true,
368-
});
326+
for event in events.iter() {
327+
if spell.elements.contains(&event.element) {
328+
let material = materials.add(StandardMaterial {
329+
base_color: event.element.color(),
330+
base_color_texture: Some(asset_server.load("particles/star_06.png")),
331+
double_sided: true,
332+
unlit: true,
333+
alpha_mode: AlphaMode::Blend,
334+
..default()
335+
});
369336

370-
c.spawn_bundle(SpatialBundle::default())
371-
.insert(ParticleEmitter {
372-
material: material.clone(),
373-
timer: Timer::from_seconds(1.0 / 100.0, true),
374-
size_range: 0.2..0.3,
375-
velocity_range: -0.01..0.01,
376-
lifetime_range: 0.2..0.5,
377-
particles_track: false,
378-
});
379-
});
337+
for tile in &event.tiles {
338+
let transform = tiles.get(*tile).unwrap();
339+
340+
let transform =
341+
transform.compute_transform() * Transform::from_xyz(0.0, 0.0, 1.0);
342+
commands
343+
.spawn_bundle(SpatialBundle {
344+
transform,
345+
..default()
346+
})
347+
.insert(BOARD_LAYER)
348+
.insert(DelayedDespawn::new(delay + Duration::from_secs_f32(0.7)))
349+
.insert(Animator::new(Delay::new(delay).then(Tween::new(
350+
EaseFunction::QuadraticInOut,
351+
TweeningType::Once,
352+
Duration::from_secs_f32(0.5),
353+
TransformPositionLens {
354+
start: transform.translation,
355+
end: Vec3::new(0.0, -2.5, 1.0),
356+
},
357+
))))
358+
.with_children(|c| {
359+
c.spawn_bundle(SpatialBundle::default())
360+
.insert(ParticleEmitter {
361+
material: material.clone(),
362+
timer: Timer::from_seconds(1.0 / 200.0, true),
363+
size_range: 0.2..0.3,
364+
velocity_range: -0.01..0.01,
365+
lifetime_range: 0.5..1.0,
366+
particles_track: true,
367+
});
368+
369+
c.spawn_bundle(SpatialBundle::default())
370+
.insert(ParticleEmitter {
371+
material: material.clone(),
372+
timer: Timer::from_seconds(1.0 / 100.0, true),
373+
size_range: 0.2..0.3,
374+
velocity_range: -0.01..0.01,
375+
lifetime_range: 0.2..0.5,
376+
particles_track: false,
377+
});
378+
});
379+
}
380380

381381
delay += delay_between_matches;
382382
}

src/board.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -361,7 +361,7 @@ fn match_gems(
361361
let mut index = 0;
362362
while index < matches.len() {
363363
let mut current = matches.remove(index);
364-
let mut i = 0;
364+
let mut i = index;
365365
while i < matches.len() {
366366
if !matches[i].tiles.is_disjoint(&current.tiles) {
367367
let linked = matches.remove(i);

0 commit comments

Comments
 (0)