sync balls to align them in slots
This commit is contained in:
parent
6423764a17
commit
9bad37d011
2 changed files with 10 additions and 3 deletions
|
|
@ -33,7 +33,7 @@ impl Plugin for LevelPlugin {
|
|||
check_and_remove_matches,
|
||||
update_score_text,
|
||||
move_queue_along_track,
|
||||
// sync_ball_visuals,
|
||||
sync_ball_visuals,
|
||||
)
|
||||
.chain(),
|
||||
)
|
||||
|
|
|
|||
|
|
@ -326,12 +326,19 @@ pub fn check_and_remove_matches(
|
|||
// записываем ласт хит, чтоб имитировать триггер каскадного уничтожения
|
||||
wave.last_insert_index = Some(removed_min_idx - 1);
|
||||
|
||||
println!(" → Cascade armed at idx {}", removed_min_idx - 1);
|
||||
println!("Cascade armed at idx {}", removed_min_idx - 1);
|
||||
} else {
|
||||
// === РАЗНЫЕ ТИПЫ: НИЧЕГО не делаем ===
|
||||
// Дыра остаётся, индексы и прогресс не трогаем
|
||||
println!(" → Different types ({:?} vs {:?}): gap preserved",
|
||||
println!("Different types ({:?} vs {:?}): gap preserved",
|
||||
left_neighbor_type, right_neighbor_type);
|
||||
|
||||
// Сбрасываем прогресс только у шариков ПРАВЕЕ удалённой группы (оторванный хвост)
|
||||
for (entity, mut ball) in balls.p1().iter_mut() {
|
||||
if ball.slot_index > removed_max_idx {
|
||||
ball.slot_progress = 0.0;
|
||||
}
|
||||
}
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue