Add special mode endings.
This commit is contained in:
parent
61dcceb09c
commit
eda0b6353c
BIN
bin/DMGTRIS.GBC
BIN
bin/DMGTRIS.GBC
Binary file not shown.
3381
bin/DMGTRIS.map
3381
bin/DMGTRIS.map
File diff suppressed because it is too large
Load Diff
Binary file not shown.
2934
bin/DMGTRIS.sym
2934
bin/DMGTRIS.sym
File diff suppressed because it is too large
Load Diff
|
@ -1771,17 +1771,26 @@ FieldProcess::
|
|||
pop de
|
||||
call DrawPiece
|
||||
|
||||
; Bones?
|
||||
.postghost
|
||||
; Draw pieces as bones past 1000 when in Shirase.
|
||||
ld a, [wSpeedCurveState]
|
||||
cp a, SCURVE_SHIR
|
||||
ld a, [wBonesActive]
|
||||
cp a, $FF
|
||||
jr nz, .nobone
|
||||
ldh a, [hCLevel+CLEVEL_THOUSANDS]
|
||||
cp a, 1
|
||||
jr c, .nobone
|
||||
ld a, TILE_BONE
|
||||
ld [hWantedTile], a
|
||||
jp .drawpiece
|
||||
|
||||
; Is lock delay 0 and is invis mode active?
|
||||
ld a, [wInvisActive]
|
||||
cp a, $FF
|
||||
jr nz, .drawpiece
|
||||
ldh a, [hCurrentLockDelayRemaining]
|
||||
cp a, 0
|
||||
jr nz, .drawpiece
|
||||
|
||||
; Then bones are made invis.
|
||||
ld a, TILE_INVIS
|
||||
ld [hWantedTile], a
|
||||
jr .drawpiece
|
||||
|
||||
; If the lock delay is at the highest value, draw the piece normally.
|
||||
.nobone
|
||||
|
@ -1806,9 +1815,18 @@ FieldProcess::
|
|||
ldh [hWantedTile], a
|
||||
ldh a, [hCurrentLockDelayRemaining]
|
||||
cp a, 0
|
||||
jr z, .drawpiece
|
||||
jr nz, .notlocked
|
||||
|
||||
; This might be invisible!
|
||||
ld a, [wInvisActive]
|
||||
cp a, $FF
|
||||
jr nz, .drawpiece
|
||||
ld a, TILE_INVIS
|
||||
ld [hWantedTile], a
|
||||
jr .drawpiece
|
||||
|
||||
; Otherwise, look it up.
|
||||
.notlocked
|
||||
call GetTileShade
|
||||
|
||||
.drawpiece
|
||||
|
@ -4007,17 +4025,26 @@ BigFieldProcess::
|
|||
pop de
|
||||
call BigDrawPiece
|
||||
|
||||
; Bones?
|
||||
.postghost
|
||||
; Draw pieces as bones past 1000 when in Shirase.
|
||||
ld a, [wSpeedCurveState]
|
||||
cp a, SCURVE_SHIR
|
||||
ld a, [wBonesActive]
|
||||
cp a, $FF
|
||||
jr nz, .nobone
|
||||
ld a, [hCLevel+CLEVEL_THOUSANDS]
|
||||
cp a, 1
|
||||
jr c, .nobone
|
||||
ld a, TILE_BONE
|
||||
ld [hWantedTile], a
|
||||
jp .drawpiece
|
||||
|
||||
; Is lock delay 0 and is invis mode active?
|
||||
ld a, [wInvisActive]
|
||||
cp a, $FF
|
||||
jr nz, .drawpiece
|
||||
ldh a, [hCurrentLockDelayRemaining]
|
||||
cp a, 0
|
||||
jr nz, .drawpiece
|
||||
|
||||
; Then bones are made invis.
|
||||
ld a, TILE_INVIS
|
||||
ld [hWantedTile], a
|
||||
jr .drawpiece
|
||||
|
||||
; If the lock delay is at the highest value, draw the piece normally.
|
||||
.nobone
|
||||
|
@ -4042,9 +4069,18 @@ BigFieldProcess::
|
|||
ldh [hWantedTile], a
|
||||
ldh a, [hCurrentLockDelayRemaining]
|
||||
cp a, 0
|
||||
jr z, .drawpiece
|
||||
jr nz, .notlocked
|
||||
|
||||
; This might be invisible!
|
||||
ld a, [wInvisActive]
|
||||
cp a, $FF
|
||||
jr nz, .drawpiece
|
||||
ld a, TILE_INVIS
|
||||
ld [hWantedTile], a
|
||||
jr .drawpiece
|
||||
|
||||
; Otherwise, look it up.
|
||||
.notlocked
|
||||
call BigGetTileShade
|
||||
|
||||
.drawpiece
|
||||
|
|
|
@ -199,12 +199,12 @@ sDMGTGrading:
|
|||
db 15, 2, 12, 15, 30 ; Grade m5 — frames/decay, single base, double base, triple base, tetris base
|
||||
db 15, 2, 12, 15, 30 ; Grade m6 — frames/decay, single base, double base, triple base, tetris base
|
||||
db 15, 2, 12, 15, 30 ; Grade m7 — frames/decay, single base, double base, triple base, tetris base
|
||||
db 15, 2, 12, 15, 30 ; Grade m8 — frames/decay, single base, double base, triple base, tetris base
|
||||
db 15, 2, 12, 15, 30 ; Grade m9 — frames/decay, single base, double base, triple base, tetris base
|
||||
db 10, 2, 12, 13, 30 ; Grade M — frames/decay, single base, double base, triple base, tetris base
|
||||
db 10, 2, 12, 13, 30 ; Grade MK — frames/decay, single base, double base, triple base, tetris base
|
||||
db 10, 2, 12, 13, 30 ; Grade MV — frames/decay, single base, double base, triple base, tetris base
|
||||
db 10, 2, 12, 13, 30 ; Grade MO — frames/decay, single base, double base, triple base, tetris base
|
||||
db 10, 2, 12, 15, 30 ; Grade m8 — frames/decay, single base, double base, triple base, tetris base
|
||||
db 5, 2, 12, 15, 30 ; Grade m9 — frames/decay, single base, double base, triple base, tetris base
|
||||
db 5, 2, 12, 13, 30 ; Grade M — frames/decay, single base, double base, triple base, tetris base
|
||||
db 5, 2, 12, 13, 30 ; Grade MK — frames/decay, single base, double base, triple base, tetris base
|
||||
db 5, 2, 12, 13, 30 ; Grade MV — frames/decay, single base, double base, triple base, tetris base
|
||||
db 5, 2, 12, 13, 30 ; Grade MO — frames/decay, single base, double base, triple base, tetris base
|
||||
db 5, 2, 8, 10, 20 ; Grade MM — frames/decay, single base, double base, triple base, tetris base
|
||||
; No entry for GM. We're done there.
|
||||
|
||||
|
@ -304,8 +304,6 @@ DecayGradeProcess::
|
|||
no_jump ;MYCO
|
||||
|
||||
|
||||
|
||||
|
||||
; Jumps to the grade decay function for the current mode.
|
||||
; Called once per frame during ARE and line clear delay.
|
||||
DecayGradeDelay::
|
||||
|
|
|
@ -74,6 +74,10 @@ CHARMAP "c", 209
|
|||
CHARMAP "d", 210
|
||||
CHARMAP "m", 211
|
||||
CHARMAP ":", 212
|
||||
CHARMAP "k", 47
|
||||
CHARMAP "v", 45
|
||||
CHARMAP "o", 44
|
||||
CHARMAP "n", 46
|
||||
|
||||
|
||||
; Waits for PPU mode to be 0 or 1.
|
||||
|
@ -232,6 +236,7 @@ DEF TILE_PIECE_SMALL_0 EQU 116
|
|||
DEF TILE_PIECE_BONE EQU 104
|
||||
DEF TILE_SMALL_0 EQU 213
|
||||
DEF TILE_BONE EQU 104
|
||||
DEF TILE_INVIS EQU 255
|
||||
DEF TILE_QUEUE_BONE EQU 105
|
||||
DEF TILE_ROT_MODE_MYCO EQU 253
|
||||
DEF GAME_OVER_R10 EQU 147
|
||||
|
|
191
src/level.asm
191
src/level.asm
|
@ -39,6 +39,13 @@ hCLevel:: ds 4
|
|||
hNLevel:: ds 6 ; The extra 2 bytes will be clobbered by the sprite drawing functions.
|
||||
hPrevHundreds:: ds 1
|
||||
|
||||
SECTION "Level Variables", WRAM0
|
||||
wBoneActivationLevel: ds 2
|
||||
wInvisActivationLevel: ds 2
|
||||
wKillScreenActivationLevel: ds 2
|
||||
wBonesActive:: ds 1
|
||||
wInvisActive:: ds 1
|
||||
|
||||
|
||||
SECTION "Level Functions", ROM0
|
||||
; Loads the initial state of the speed curve.
|
||||
|
@ -49,6 +56,8 @@ LevelInit::
|
|||
|
||||
xor a, a
|
||||
ldh [hRequiresLineClear], a
|
||||
ld [wBonesActive], a
|
||||
ld [wInvisActive], a
|
||||
|
||||
ldh a, [hStartSpeed]
|
||||
ld l, a
|
||||
|
@ -102,12 +111,79 @@ LevelInit::
|
|||
and a, $0F
|
||||
ldh [hNLevel], a
|
||||
|
||||
; Get special data.
|
||||
call SpecialLevelInit
|
||||
|
||||
; Restore the bank before returning.
|
||||
rst RSTRestoreBank
|
||||
|
||||
jp DoSpeedUp
|
||||
|
||||
|
||||
SpecialLevelInit:
|
||||
ld a, [wSpeedCurveState]
|
||||
ld b, a
|
||||
add a, b
|
||||
add a, b
|
||||
ld b, 0
|
||||
ld c, a
|
||||
ld hl, .jumps
|
||||
add hl, bc
|
||||
jp hl
|
||||
|
||||
.jumps
|
||||
jp .dmgt
|
||||
jp .tgm1
|
||||
jp .tgm3
|
||||
jp .deat
|
||||
jp .shir
|
||||
jp .chil
|
||||
jp .myco
|
||||
|
||||
.dmgt
|
||||
ld hl, sDMGTSpeedCurveSpecialData
|
||||
jr .loaddata
|
||||
|
||||
.tgm1
|
||||
ld hl, sTGM1SpeedCurveSpecialData
|
||||
jr .loaddata
|
||||
|
||||
.tgm3
|
||||
ld hl, sTGM3SpeedCurveSpecialData
|
||||
jr .loaddata
|
||||
|
||||
.deat
|
||||
ld hl, sDEATSpeedCurveSpecialData
|
||||
jr .loaddata
|
||||
|
||||
.shir
|
||||
ld hl, sSHIRSpeedCurveSpecialData
|
||||
jr .loaddata
|
||||
|
||||
.chil
|
||||
ld hl, sCHILSpeedCurveSpecialData
|
||||
jr .loaddata
|
||||
|
||||
.myco
|
||||
ld hl, sMYCOSpeedCurveSpecialData
|
||||
jr .loaddata
|
||||
|
||||
.loaddata
|
||||
ld a, [hl+]
|
||||
ld [wBoneActivationLevel], a
|
||||
ld a, [hl+]
|
||||
ld [wBoneActivationLevel+1], a
|
||||
ld a, [hl+]
|
||||
ld [wInvisActivationLevel], a
|
||||
ld a, [hl+]
|
||||
ld [wInvisActivationLevel+1], a
|
||||
ld a, [hl+]
|
||||
ld [wKillScreenActivationLevel], a
|
||||
ld a, [hl]
|
||||
ld [wKillScreenActivationLevel+1], a
|
||||
ret
|
||||
|
||||
|
||||
; Increment level and speed up if necessary. Level increment in E.
|
||||
; Levels may only increment by single digits.
|
||||
LevelUp::
|
||||
|
@ -194,6 +270,8 @@ LevelUp::
|
|||
ld a, h
|
||||
ldh [hLevel+1], a
|
||||
call DoSpeedUp
|
||||
call CheckSpecialLevelConditions
|
||||
call SFXKill
|
||||
ld a, SFX_RANKGM
|
||||
jp SFXEnqueue
|
||||
|
||||
|
@ -271,6 +349,7 @@ LevelUp::
|
|||
call SFXEnqueue
|
||||
|
||||
.checkspeedup
|
||||
call CheckSpecialLevelConditions
|
||||
ldh a, [hNextSpeedUp]
|
||||
and a, $F0
|
||||
jr z, :+
|
||||
|
@ -363,4 +442,116 @@ DoSpeedUp:
|
|||
jp RSTRestoreBank
|
||||
|
||||
|
||||
CheckSpecialLevelConditions:
|
||||
; Get our level in bc
|
||||
ldh a, [hLevel]
|
||||
ld c, a
|
||||
ldh a, [hLevel+1]
|
||||
ld b, a
|
||||
|
||||
; Bones?
|
||||
.bones
|
||||
ld hl, wBoneActivationLevel
|
||||
ld a, [hl+]
|
||||
cp a, $FF ; $FF means never.
|
||||
jp z, .invis
|
||||
|
||||
; Load the level, binary in de.
|
||||
ld e, a
|
||||
ld d, [hl]
|
||||
|
||||
; Check if BC >= DE...
|
||||
; Skip if B < D.
|
||||
ld a, b
|
||||
cp a, d
|
||||
jr c, .invis
|
||||
|
||||
; We can confidently enter the bone zone if B > D.
|
||||
jr nz, .enterthebonezone
|
||||
|
||||
; If B == D, we need to check C and E...
|
||||
|
||||
; Skip if C < E. Otherwise enter the bone zone.
|
||||
ld a, c
|
||||
cp a, e
|
||||
jr c, .invis
|
||||
|
||||
.enterthebonezone
|
||||
ld a, $FF
|
||||
ld [wBonesActive], a
|
||||
|
||||
; Invis?
|
||||
.invis
|
||||
ld hl, wInvisActivationLevel
|
||||
ld a, [hl+]
|
||||
cp a, $FF ; $FF means never.
|
||||
jp z, .killscreen
|
||||
|
||||
; Load the level, binary in de.
|
||||
ld e, a
|
||||
ld d, [hl]
|
||||
|
||||
; Check if BC >= DE...
|
||||
; Skip if B < D.
|
||||
ld a, b
|
||||
cp a, d
|
||||
jr c, .killscreen
|
||||
|
||||
; We can confidently vanish if B > D.
|
||||
jr nz, .vanishoxyaction
|
||||
|
||||
; If B == D, we need to check C and E...
|
||||
|
||||
; Skip if C < E. Otherwise vanish.
|
||||
ld a, c
|
||||
cp a, e
|
||||
jr c, .killscreen
|
||||
|
||||
.vanishoxyaction
|
||||
ld a, $FF
|
||||
ld [wInvisActive], a
|
||||
|
||||
; Kill screen?
|
||||
.killscreen
|
||||
ld hl, wKillScreenActivationLevel
|
||||
ld a, [hl+]
|
||||
cp a, $FF
|
||||
ret z
|
||||
|
||||
; Load the level, binary in de.
|
||||
ld e, a
|
||||
ld d, [hl]
|
||||
|
||||
; Check if BC >= DE...
|
||||
; Ret if B < D.
|
||||
ld a, b
|
||||
cp a, d
|
||||
ret c
|
||||
|
||||
; We can confidently rip if B > D.
|
||||
jr nz, .rip
|
||||
|
||||
; If B == D, we need to check C and E...
|
||||
|
||||
; Skip if C < E. Otherwise rip.
|
||||
ld a, c
|
||||
cp a, e
|
||||
ret c
|
||||
|
||||
.rip
|
||||
ld a, 1
|
||||
ldh [hCurrentARE], a
|
||||
ldh [hCurrentLineARE], a
|
||||
ldh [hCurrentDAS], a
|
||||
ldh [hCurrentLockDelay], a
|
||||
ldh [hCurrentLineClearDelay], a
|
||||
|
||||
ld a, 20
|
||||
ldh [hCurrentIntegerGravity], a
|
||||
|
||||
xor a, a
|
||||
ldh [hCurrentFractionalGravity], a
|
||||
ret
|
||||
|
||||
|
||||
ENDC
|
||||
|
|
|
@ -192,9 +192,9 @@ sDMGTSpeedCurveEnd::
|
|||
dw $FFFF ; End.
|
||||
|
||||
sDMGTSpeedCurveSpecialData::
|
||||
dw $FFFF ; When do we get bones?
|
||||
dw $2000 ; When do blocks turn invisible?
|
||||
dw $9999 ; When is the hard kill screen?
|
||||
dw 2000 ; When do we get bones?
|
||||
dw $FFFF ; When do blocks turn invisible?
|
||||
dw 9999 ; When is the hard kill screen?
|
||||
|
||||
|
||||
sTGM1SpeedCurve::
|
||||
|
@ -322,9 +322,9 @@ sTGM1SpeedCurveEnd::
|
|||
dw $FFFF
|
||||
|
||||
sTGM1SpeedCurveSpecialData::
|
||||
dw $FFFF ; When do we get bones?
|
||||
dw 1000 ; When do we get bones?
|
||||
dw $FFFF ; When do blocks turn invisible?
|
||||
dw $0999 ; When is the hard kill screen?
|
||||
dw 1199 ; When is the hard kill screen?
|
||||
|
||||
|
||||
sCHILSpeedCurve::
|
||||
|
@ -422,7 +422,7 @@ sCHILSpeedCurveEnd::
|
|||
sCHILSpeedCurveSpecialData::
|
||||
dw $FFFF ; When do we get bones?
|
||||
dw $FFFF ; When do blocks turn invisible?
|
||||
dw $9999 ; When is the hard kill screen?
|
||||
dw 9999 ; When is the hard kill screen?
|
||||
|
||||
|
||||
sTGM3SpeedCurve::
|
||||
|
@ -579,8 +579,8 @@ sTGM3SpeedCurveEnd::
|
|||
|
||||
sTGM3SpeedCurveSpecialData::
|
||||
dw $FFFF ; When do we get bones?
|
||||
dw $1300 ; When do blocks turn invisible?
|
||||
dw $1500 ; When is the hard kill screen?
|
||||
dw 1300 ; When do blocks turn invisible?
|
||||
dw 1499 ; When is the hard kill screen?
|
||||
|
||||
sDEATSpeedCurve::
|
||||
dw $0000, 0, $0100
|
||||
|
@ -612,8 +612,8 @@ sDEATSpeedCurveEnd::
|
|||
|
||||
sDEATSpeedCurveSpecialData::
|
||||
dw $FFFF ; When do we get bones?
|
||||
dw $0999 ; When do blocks turn invisible?
|
||||
dw $1200 ; When is the hard kill screen?
|
||||
dw 1000 ; When do blocks turn invisible?
|
||||
dw 1199 ; When is the hard kill screen?
|
||||
|
||||
|
||||
sSHIRSpeedCurve::
|
||||
|
@ -649,9 +649,9 @@ sSHIRSpeedCurveEnd::
|
|||
dw $FFFF
|
||||
|
||||
sSHIRSpeedCurveSpecialData::
|
||||
dw $0900 ; When do we get bones?
|
||||
dw $1300 ; When do blocks turn invisible?
|
||||
dw $1500 ; When is the hard kill screen?
|
||||
dw 900 ; When do we get bones?
|
||||
dw 1300 ; When do blocks turn invisible?
|
||||
dw 1499 ; When is the hard kill screen?
|
||||
|
||||
|
||||
sMYCOSpeedCurve::
|
||||
|
@ -753,7 +753,7 @@ sMYCOSpeedCurveEnd::
|
|||
sMYCOSpeedCurveSpecialData::
|
||||
dw $FFFF ; When do we get bones?
|
||||
dw $FFFF ; When do blocks turn invisible?
|
||||
dw $0300 ; When is the hard kill screen?
|
||||
dw 300 ; When is the hard kill screen?
|
||||
|
||||
|
||||
sSharedTiles::
|
||||
|
@ -845,14 +845,14 @@ sSharedTiles::
|
|||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
||||
DB $00,$00,$18,$18,$18,$18,$08,$08
|
||||
DB $10,$10,$00,$00,$00,$00,$00,$00
|
||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
||||
DB $FF,$FF,$C3,$C3,$00,$00,$3C,$3C
|
||||
DB $00,$00,$C3,$C3,$FF,$FF,$00,$00
|
||||
DB $18,$18,$7E,$7E,$DB,$DB,$DB,$DB
|
||||
DB $DB,$DB,$7E,$7E,$18,$18,$00,$00
|
||||
DB $7E,$7E,$C3,$C3,$C3,$C3,$C3,$C3
|
||||
DB $66,$66,$A5,$A5,$E7,$E7,$00,$00
|
||||
DB $DB,$DB,$DB,$DB,$DB,$DB,$DB,$DB
|
||||
DB $7E,$7E,$18,$18,$18,$18,$00,$00
|
||||
sSharedTilesEnd::
|
||||
|
||||
sTitleTiles::
|
||||
|
@ -956,10 +956,10 @@ sTitleTiles::
|
|||
DB $82,$82,$82,$82,$EC,$EC,$00,$00
|
||||
DB $44,$44,$CC,$CC,$44,$44,$44,$44
|
||||
DB $44,$44,$44,$44,$EE,$EE,$00,$00
|
||||
DB $4E,$4E,$A2,$A2,$A2,$A2,$A4,$A4
|
||||
DB $A4,$A4,$A4,$A4,$44,$44,$00,$00
|
||||
DB $7F,$7F,$22,$22,$14,$14,$08,$08
|
||||
DB $14,$14,$22,$22,$7F,$7F,$00,$00
|
||||
DB $44,$44,$AA,$AA,$AA,$AA,$A4,$A4
|
||||
DB $AA,$AA,$AA,$AA,$44,$44,$00,$00
|
||||
DB $7F,$7F,$22,$22,$22,$22,$14,$14
|
||||
DB $14,$14,$08,$08,$7F,$7F,$00,$00
|
||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
||||
|
@ -1689,7 +1689,7 @@ sGameplayTilesM::
|
|||
DB $24,$3C,$24,$3C,$18,$18,$00,$00
|
||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
||||
DB $00,$00,$00,$00,$00,$00,$10,$00
|
||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
||||
sGameplayTilesMEnd::
|
||||
|
||||
|
@ -2108,7 +2108,7 @@ sGameplayTilesC::
|
|||
DB $24,$3C,$24,$3C,$18,$18,$00,$00
|
||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
||||
DB $00,$00,$00,$00,$00,$00,$10,$00
|
||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
||||
sGameplayTilesCEnd::
|
||||
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -432,8 +432,6 @@ Next35Piece:
|
|||
|
||||
; Tries generating bytes until it gets one in [0; 7)
|
||||
Next7Piece:
|
||||
xor a, a
|
||||
ret
|
||||
: call NextByte
|
||||
and a, $07
|
||||
cp a, 7
|
||||
|
|
|
@ -173,12 +173,9 @@ ApplyTells::
|
|||
ApplyNext::
|
||||
; If we're in Shirase mode and past level 1000...
|
||||
ld b, a
|
||||
ld a, [wSpeedCurveState]
|
||||
cp a, SCURVE_SHIR
|
||||
ld a, [wBonesActive]
|
||||
cp a, $FF
|
||||
jr nz, .nobone
|
||||
ldh a, [hCLevel+CLEVEL_THOUSANDS]
|
||||
cp a, 1
|
||||
jr c, .nobone
|
||||
|
||||
.bone
|
||||
; Color
|
||||
|
@ -336,12 +333,9 @@ ApplyNext::
|
|||
ApplyHold::
|
||||
; If we're in Shirase mode and past level 1000...
|
||||
ld b, a
|
||||
ld a, [wSpeedCurveState]
|
||||
cp a, SCURVE_SHIR
|
||||
ld a, [wBonesActive]
|
||||
cp a, $FF
|
||||
jr nz, .nobone
|
||||
ldh a, [hCLevel+CLEVEL_THOUSANDS]
|
||||
cp a, 1
|
||||
jr c, .nobone
|
||||
|
||||
.bone
|
||||
; Color
|
||||
|
@ -1122,22 +1116,22 @@ GradeRendering::
|
|||
jr .mm
|
||||
|
||||
.mk
|
||||
ld a, "K"
|
||||
ld a, "k"
|
||||
ld [wSPRGrade2+2], a
|
||||
ret
|
||||
|
||||
.mv
|
||||
ld a, "V"
|
||||
ld a, "v"
|
||||
ld [wSPRGrade2+2], a
|
||||
ret
|
||||
|
||||
.mo
|
||||
ld a, "O"
|
||||
ld a, "o"
|
||||
ld [wSPRGrade2+2], a
|
||||
ret
|
||||
|
||||
.mm
|
||||
ld a, "M"
|
||||
ld a, "n"
|
||||
ld [wSPRGrade2+2], a
|
||||
ret
|
||||
|
||||
|
|
Loading…
Reference in New Issue