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
|
||||
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.
|
||||
ldh a, [hSimulationMode]
|
||||
cp a, MODE_HELL
|
||||
|
|
|
@ -39,7 +39,7 @@ hCurrentPiece:: ds 1
|
|||
hCurrentPieceX:: ds 1
|
||||
hCurrentPieceY:: ds 1
|
||||
hCurrentPieceRotationState:: ds 1
|
||||
hHeldPiece: ds 1
|
||||
hHeldPiece:: ds 1
|
||||
hHoldSpent:: ds 1
|
||||
hSkipJingle: ds 1
|
||||
hMode: ds 1
|
||||
|
@ -91,9 +91,7 @@ SwitchToGameplay::
|
|||
call LevelInit
|
||||
call FieldInit
|
||||
|
||||
; We don't start with a held piece.
|
||||
ld a, PIECE_NONE
|
||||
ldh [hHeldPiece], a
|
||||
; We don't start with hold spent.
|
||||
xor a, a
|
||||
ldh [hHoldSpent], a
|
||||
|
||||
|
@ -464,8 +462,6 @@ gameOverMode:
|
|||
call ScoreInit
|
||||
call LevelInit
|
||||
call FieldInit
|
||||
ld a, PIECE_NONE
|
||||
ldh [hHeldPiece], a
|
||||
xor a, a
|
||||
ldh [hHoldSpent], a
|
||||
ld a, MODE_LEADY
|
||||
|
@ -586,18 +582,7 @@ DoHold:
|
|||
ldh [hCurrentPieceRotationState], a
|
||||
|
||||
.doHoldOperation
|
||||
; If we're not holding a piece, hold the current piece and get a new one.
|
||||
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
|
||||
ld b, a
|
||||
ldh a, [hCurrentPiece]
|
||||
ldh [hHeldPiece], a
|
||||
ld a, b
|
||||
|
|
Loading…
Reference in New Issue