P3.2: cascade combo multiplier (pure sx)
Scale each cascade round's base points by combo_multiplier(round) = the 1-based round index (round 1 x1, round 2 x2, ...), so deeper chains pay out more. resolve now reads score_round before each clear, accumulates score_round * combo_multiplier(round) into Board.score, and reports the settle's payout as the new Cascade.awarded field. A depth-1 settle scores exactly its base (x1, no bonus); any multi-round chain strictly exceeds the same clears scored flat. resolve_step keeps its signature (no scoring), so cascade.sx and its golden are unchanged; score_round/add_round_score are untouched, so score.sx is unchanged. New tests/combo.sx golden locks exact cumulative scores for a single-round clear (30), the P2.4 cascade board (flat 60 -> mult 90), and a controlled 3-round chain (flat 90 -> mult 180), printing per-round base/multiplier/points so the golden self-explains.
This commit is contained in:
1
tests/expected/combo.exit
Normal file
1
tests/expected/combo.exit
Normal file
@@ -0,0 +1 @@
|
||||
0
|
||||
41
tests/expected/combo.stdout
Normal file
41
tests/expected/combo.stdout
Normal file
@@ -0,0 +1,41 @@
|
||||
== combo (cascade multiplier) ==
|
||||
== single-depth1 ==
|
||||
RRRGOGOG
|
||||
GOGOGOGO
|
||||
OGOGOGOG
|
||||
GOGOGOGO
|
||||
OGOGOGOG
|
||||
GOGOGOGO
|
||||
OGOGOGOG
|
||||
GOGOGOGO
|
||||
round 1: cleared 3 base 30 x1 = 30
|
||||
flat sum 30
|
||||
multiplied total 30
|
||||
== cascade-depth2 ==
|
||||
OGOGOGOG
|
||||
GOGOGOGO
|
||||
RGOGOGOG
|
||||
BBBOGOGO
|
||||
RGOGOGOG
|
||||
ROGOGOGO
|
||||
OGOGOGOG
|
||||
GOGOGOGO
|
||||
round 1: cleared 3 base 30 x1 = 30
|
||||
round 2: cleared 3 base 30 x2 = 60
|
||||
flat sum 60
|
||||
multiplied total 90
|
||||
== chain-depth3 ==
|
||||
OGOGOGOG
|
||||
GOGOGOGO
|
||||
RGOGOGOG
|
||||
BBBOGOGO
|
||||
RGOGOGOG
|
||||
ROGOGOGO
|
||||
OGOGOGOG
|
||||
GOGOGOGO
|
||||
round 1: cleared 3 base 30 x1 = 30
|
||||
round 2: cleared 3 base 30 x2 = 60
|
||||
round 3: cleared 3 base 30 x3 = 90
|
||||
flat sum 90
|
||||
multiplied total 180
|
||||
ok: combo multiplier scales cascade rounds
|
||||
Reference in New Issue
Block a user