Scale the combo FX with cascade depth (mv.rounds.len) — the same depth the cascade SFX (play_cascade) steps up on — so deeper cascades read as more exciting and land in lockstep with the audio escalation. Purely visual and self-pruning: no board / score / move state changes, and input stays gated by BoardAnim.active alone. - board_fx.sx: add fx_combo_level (mirrors audio's cascade_cue_index clamp: depth<=1 -> floor, depth>=5 -> ceiling). The +points popup now carries the cascade depth and grows one font step + lerps gold -> hot-gold per level (fx_popup_font / fx_popup_color). Every burst of a deep cascade gets a whole-move depth boost (FX_BURST_DEPTH) on top of the existing per-round bump. - board_view.sx: render_fx_popups derives styling from depth and tops a combo with a "COMBO xN" label naming the true cascade depth. - tests/fx_combo.sx: headless snapshot locking the depth->level/font table and asserting fx_combo_level matches the cascade-cue index column entry-for-entry. - goldens/p11_combo_deep.png + README: deterministic depth-5 capture (M3TE_FX=11) vs the depth-1 single clear (M3TE_FX=3); FX gone after settle at a later phase.
13 lines
591 B
Plaintext
13 lines
591 B
Plaintext
== combo emphasis selection (depth -> fx level / popup font) ==
|
|
depth 0 -> level 0 font 34.000000 combo false
|
|
depth 1 -> level 0 font 34.000000 combo false
|
|
depth 2 -> level 1 font 48.000000 combo true
|
|
depth 3 -> level 2 font 56.000000 combo true
|
|
depth 4 -> level 3 font 64.000000 combo true
|
|
depth 5 -> level 4 font 72.000000 combo true
|
|
depth 6 -> level 4 font 72.000000 combo true
|
|
depth 7 -> level 4 font 72.000000 combo true
|
|
depth 8 -> level 4 font 72.000000 combo true
|
|
depth 9 -> level 4 font 72.000000 combo true
|
|
ok: combo emphasis clamps into level 0..4 in lockstep with the cascade cue
|