Start with one held piece to mitigate lack of 3-piece-preview.
This commit is contained in:
parent
9b347b9e76
commit
65a74661a7
|
@ -64,6 +64,10 @@ RNGInit::
|
||||||
ld bc, 7
|
ld bc, 7
|
||||||
call UnsafeMemCopy
|
call UnsafeMemCopy
|
||||||
|
|
||||||
|
; Start with a random piece held.
|
||||||
|
call Next7Piece
|
||||||
|
ldh [hHeldPiece], a
|
||||||
|
|
||||||
; If we're in HELL mode, we don't care about anything but a random piece to start with.
|
; If we're in HELL mode, we don't care about anything but a random piece to start with.
|
||||||
ldh a, [hSimulationMode]
|
ldh a, [hSimulationMode]
|
||||||
cp a, MODE_HELL
|
cp a, MODE_HELL
|
||||||
|
|
|
@ -39,7 +39,7 @@ hCurrentPiece:: ds 1
|
||||||
hCurrentPieceX:: ds 1
|
hCurrentPieceX:: ds 1
|
||||||
hCurrentPieceY:: ds 1
|
hCurrentPieceY:: ds 1
|
||||||
hCurrentPieceRotationState:: ds 1
|
hCurrentPieceRotationState:: ds 1
|
||||||
hHeldPiece: ds 1
|
hHeldPiece:: ds 1
|
||||||
hHoldSpent:: ds 1
|
hHoldSpent:: ds 1
|
||||||
hSkipJingle: ds 1
|
hSkipJingle: ds 1
|
||||||
hMode: ds 1
|
hMode: ds 1
|
||||||
|
@ -91,9 +91,7 @@ SwitchToGameplay::
|
||||||
call LevelInit
|
call LevelInit
|
||||||
call FieldInit
|
call FieldInit
|
||||||
|
|
||||||
; We don't start with a held piece.
|
; We don't start with hold spent.
|
||||||
ld a, PIECE_NONE
|
|
||||||
ldh [hHeldPiece], a
|
|
||||||
xor a, a
|
xor a, a
|
||||||
ldh [hHoldSpent], a
|
ldh [hHoldSpent], a
|
||||||
|
|
||||||
|
@ -464,8 +462,6 @@ gameOverMode:
|
||||||
call ScoreInit
|
call ScoreInit
|
||||||
call LevelInit
|
call LevelInit
|
||||||
call FieldInit
|
call FieldInit
|
||||||
ld a, PIECE_NONE
|
|
||||||
ldh [hHeldPiece], a
|
|
||||||
xor a, a
|
xor a, a
|
||||||
ldh [hHoldSpent], a
|
ldh [hHoldSpent], a
|
||||||
ld a, MODE_LEADY
|
ld a, MODE_LEADY
|
||||||
|
@ -586,18 +582,7 @@ DoHold:
|
||||||
ldh [hCurrentPieceRotationState], a
|
ldh [hCurrentPieceRotationState], a
|
||||||
|
|
||||||
.doHoldOperation
|
.doHoldOperation
|
||||||
; If we're not holding a piece, hold the current piece and get a new one.
|
ld b, a
|
||||||
ldh a, [hHeldPiece]
|
|
||||||
cp a, PIECE_NONE
|
|
||||||
jr nz, :+
|
|
||||||
ldh a, [hCurrentPiece]
|
|
||||||
ldh [hHeldPiece], a
|
|
||||||
ldh a, [hNextPiece]
|
|
||||||
ldh [hCurrentPiece], a
|
|
||||||
call GetNextPiece
|
|
||||||
ret
|
|
||||||
|
|
||||||
: ld b, a
|
|
||||||
ldh a, [hCurrentPiece]
|
ldh a, [hCurrentPiece]
|
||||||
ldh [hHeldPiece], a
|
ldh [hHeldPiece], a
|
||||||
ld a, b
|
ld a, b
|
||||||
|
|
Loading…
Reference in New Issue