Files
m3te/tests/expected/fx_combo.stdout
swipelab 0b293a2c48 P11.2: escalating combo emphasis tied to cascade depth (sx / iOS)
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.
2026-06-05 20:51:56 +03:00

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