Add torikan notice.
This commit is contained in:
parent
eda0b6353c
commit
048329b9ad
BIN
bin/DMGTRIS.GBC
BIN
bin/DMGTRIS.GBC
Binary file not shown.
2443
bin/DMGTRIS.map
2443
bin/DMGTRIS.map
File diff suppressed because it is too large
Load Diff
Binary file not shown.
2249
bin/DMGTRIS.sym
2249
bin/DMGTRIS.sym
File diff suppressed because it is too large
Load Diff
|
@ -28,7 +28,7 @@ wGradePoints: ds 1
|
||||||
wInternalGrade: ds 1
|
wInternalGrade: ds 1
|
||||||
wDisplayedGrade:: ds 1
|
wDisplayedGrade:: ds 1
|
||||||
wEffectTimer:: ds 1
|
wEffectTimer:: ds 1
|
||||||
wRankingDisqualified:: ds 1
|
wRankingDisqualified: ds 1
|
||||||
wDecayCounter: ds 1
|
wDecayCounter: ds 1
|
||||||
wGradeGauge: ds 1
|
wGradeGauge: ds 1
|
||||||
wSMult: ds 1
|
wSMult: ds 1
|
||||||
|
@ -359,7 +359,32 @@ DrawGradeProgressDMGT::
|
||||||
ret
|
ret
|
||||||
|
|
||||||
UpdateGradeDMGT::
|
UpdateGradeDMGT::
|
||||||
|
; Check if the torikan hasn't been calculated.
|
||||||
|
ld a, [wRankingDisqualified]
|
||||||
|
cp a, $FF
|
||||||
|
jr z, .checklineclears
|
||||||
|
|
||||||
|
; Have we hit the torikan level?
|
||||||
|
ldh a, [hCLevel+CLEVEL_HUNDREDS]
|
||||||
|
cp a, 5
|
||||||
|
jr nz, .checklineclears
|
||||||
|
|
||||||
|
; Mark it as checked and do the check.
|
||||||
|
ld a, $FF
|
||||||
|
ld [wRankingDisqualified], a
|
||||||
|
|
||||||
|
; There's a 8:00 torikan at 500.
|
||||||
|
ld b, 8
|
||||||
|
ld c, 0
|
||||||
|
call CheckTorikan
|
||||||
|
|
||||||
|
; If we failed it: DIE.
|
||||||
|
cp a, $FF
|
||||||
|
jp nz, TriggerKillScreen
|
||||||
|
|
||||||
|
|
||||||
; Did we have line clears?
|
; Did we have line clears?
|
||||||
|
.checklineclears
|
||||||
ldh a, [hLineClearCt]
|
ldh a, [hLineClearCt]
|
||||||
cp a, 0
|
cp a, 0
|
||||||
jp z, DrawGradeProgressDMGT
|
jp z, DrawGradeProgressDMGT
|
||||||
|
@ -812,6 +837,7 @@ UpdateGradeDEAT:
|
||||||
; Disqualify from ranking.
|
; Disqualify from ranking.
|
||||||
ld a, $FF
|
ld a, $FF
|
||||||
ld [wRankingDisqualified], a
|
ld [wRankingDisqualified], a
|
||||||
|
call TriggerKillScreen
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
|
||||||
|
@ -901,6 +927,7 @@ UpdateGradeSHIR:
|
||||||
.disqualify
|
.disqualify
|
||||||
ld a, $FF
|
ld a, $FF
|
||||||
ld [wRankingDisqualified], a
|
ld [wRankingDisqualified], a
|
||||||
|
call TriggerKillScreen
|
||||||
ret
|
ret
|
||||||
|
|
||||||
ENDC
|
ENDC
|
||||||
|
|
|
@ -74,6 +74,7 @@ CHARMAP "c", 209
|
||||||
CHARMAP "d", 210
|
CHARMAP "d", 210
|
||||||
CHARMAP "m", 211
|
CHARMAP "m", 211
|
||||||
CHARMAP ":", 212
|
CHARMAP ":", 212
|
||||||
|
CHARMAP ".", 254
|
||||||
CHARMAP "k", 47
|
CHARMAP "k", 47
|
||||||
CHARMAP "v", 45
|
CHARMAP "v", 45
|
||||||
CHARMAP "o", 44
|
CHARMAP "o", 44
|
||||||
|
|
|
@ -45,6 +45,7 @@ wInvisActivationLevel: ds 2
|
||||||
wKillScreenActivationLevel: ds 2
|
wKillScreenActivationLevel: ds 2
|
||||||
wBonesActive:: ds 1
|
wBonesActive:: ds 1
|
||||||
wInvisActive:: ds 1
|
wInvisActive:: ds 1
|
||||||
|
wKillScreenActive:: ds 1
|
||||||
|
|
||||||
|
|
||||||
SECTION "Level Functions", ROM0
|
SECTION "Level Functions", ROM0
|
||||||
|
@ -58,6 +59,7 @@ LevelInit::
|
||||||
ldh [hRequiresLineClear], a
|
ldh [hRequiresLineClear], a
|
||||||
ld [wBonesActive], a
|
ld [wBonesActive], a
|
||||||
ld [wInvisActive], a
|
ld [wInvisActive], a
|
||||||
|
ld [wKillScreenActive], a
|
||||||
|
|
||||||
ldh a, [hStartSpeed]
|
ldh a, [hStartSpeed]
|
||||||
ld l, a
|
ld l, a
|
||||||
|
@ -551,6 +553,30 @@ CheckSpecialLevelConditions:
|
||||||
|
|
||||||
xor a, a
|
xor a, a
|
||||||
ldh [hCurrentFractionalGravity], a
|
ldh [hCurrentFractionalGravity], a
|
||||||
|
|
||||||
|
ld a, $FF
|
||||||
|
ld [wKillScreenActive], a
|
||||||
|
ret
|
||||||
|
|
||||||
|
|
||||||
|
TriggerKillScreen::
|
||||||
|
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
|
||||||
|
ld [wKillScreenActivationLevel], a
|
||||||
|
ld [wKillScreenActivationLevel+1], a
|
||||||
|
|
||||||
|
ld a, $FF
|
||||||
|
ld [wKillScreenActive], a
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -49,6 +49,24 @@ sBigPause::
|
||||||
db " P A U S E"
|
db " P A U S E"
|
||||||
db " "
|
db " "
|
||||||
|
|
||||||
|
sBigKill::
|
||||||
|
db "EXCELLENT!"
|
||||||
|
db " "
|
||||||
|
db " "
|
||||||
|
db " BUT... "
|
||||||
|
db " "
|
||||||
|
db " "
|
||||||
|
db " LET'S GO "
|
||||||
|
db " "
|
||||||
|
db " BETTER "
|
||||||
|
db " "
|
||||||
|
db "NEXT TIME!"
|
||||||
|
db " "
|
||||||
|
db " "
|
||||||
|
db " RETRY[A] "
|
||||||
|
db " "
|
||||||
|
db " QUIT [B] "
|
||||||
|
|
||||||
sBigPieceXOffsets:: ; How to draw each piece. X-offsets of the sprites.
|
sBigPieceXOffsets:: ; How to draw each piece. X-offsets of the sprites.
|
||||||
db 0, 8, 16, 24 ; I
|
db 0, 8, 16, 24 ; I
|
||||||
db 0, 8, 8, 16 ; Z
|
db 0, 8, 8, 16 ; Z
|
||||||
|
|
|
@ -49,6 +49,24 @@ sPause::
|
||||||
db " P A U S E"
|
db " P A U S E"
|
||||||
db " "
|
db " "
|
||||||
|
|
||||||
|
sKill::
|
||||||
|
db "EXCELLENT!"
|
||||||
|
db " "
|
||||||
|
db " "
|
||||||
|
db " BUT... "
|
||||||
|
db " "
|
||||||
|
db " "
|
||||||
|
db " LET'S GO "
|
||||||
|
db " "
|
||||||
|
db " BETTER "
|
||||||
|
db " "
|
||||||
|
db "NEXT TIME!"
|
||||||
|
db " "
|
||||||
|
db " "
|
||||||
|
db " RETRY[A] "
|
||||||
|
db " "
|
||||||
|
db " QUIT [B] "
|
||||||
|
|
||||||
sPieceXOffsets:: ; How to draw each piece. X-offsets of the sprites.
|
sPieceXOffsets:: ; How to draw each piece. X-offsets of the sprites.
|
||||||
db 0, 8, 16, 24 ; I
|
db 0, 8, 16, 24 ; I
|
||||||
db 0, 8, 8, 16 ; Z
|
db 0, 8, 8, 16 ; Z
|
||||||
|
|
|
@ -843,8 +843,8 @@ sSharedTiles::
|
||||||
DB $03,$03,$03,$03,$0F,$0F,$00,$00
|
DB $03,$03,$03,$03,$0F,$0F,$00,$00
|
||||||
DB $00,$00,$00,$00,$00,$00,$3C,$3C
|
DB $00,$00,$00,$00,$00,$00,$3C,$3C
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
DB $00,$00,$00,$00,$00,$00,$00,$00
|
||||||
DB $00,$00,$18,$18,$18,$18,$08,$08
|
DB $18,$18,$18,$18,$08,$08,$10,$10
|
||||||
DB $10,$10,$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 $FF,$FF,$C3,$C3,$00,$00,$3C,$3C
|
||||||
DB $00,$00,$C3,$C3,$FF,$FF,$00,$00
|
DB $00,$00,$C3,$C3,$FF,$FF,$00,$00
|
||||||
DB $18,$18,$7E,$7E,$DB,$DB,$DB,$DB
|
DB $18,$18,$7E,$7E,$DB,$DB,$DB,$DB
|
||||||
|
@ -1688,7 +1688,7 @@ sGameplayTilesM::
|
||||||
DB $18,$18,$2C,$34,$62,$5E,$76,$6E
|
DB $18,$18,$2C,$34,$62,$5E,$76,$6E
|
||||||
DB $24,$3C,$24,$3C,$18,$18,$00,$00
|
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,$30,$30,$30,$30,$00,$00
|
||||||
DB $00,$00,$00,$00,$00,$00,$10,$00
|
DB $00,$00,$00,$00,$00,$00,$10,$00
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
DB $00,$00,$00,$00,$00,$00,$00,$00
|
||||||
sGameplayTilesMEnd::
|
sGameplayTilesMEnd::
|
||||||
|
@ -2107,7 +2107,7 @@ sGameplayTilesC::
|
||||||
DB $18,$18,$2C,$34,$62,$5E,$76,$6E
|
DB $18,$18,$2C,$34,$62,$5E,$76,$6E
|
||||||
DB $24,$3C,$24,$3C,$18,$18,$00,$00
|
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,$30,$30,$30,$30,$00,$00
|
||||||
DB $00,$00,$00,$00,$00,$00,$10,$00
|
DB $00,$00,$00,$00,$00,$00,$10,$00
|
||||||
DB $00,$00,$00,$00,$00,$00,$00,$00
|
DB $00,$00,$00,$00,$00,$00,$00,$00
|
||||||
sGameplayTilesCEnd::
|
sGameplayTilesCEnd::
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -404,6 +404,22 @@ GamePlayEventLoopHandlerB::
|
||||||
|
|
||||||
|
|
||||||
.preGameOverMode
|
.preGameOverMode
|
||||||
|
ld a, [wKillScreenActive]
|
||||||
|
cp a, $FF
|
||||||
|
jr nz, .regular
|
||||||
|
|
||||||
|
call FieldInit
|
||||||
|
ld de, sKill
|
||||||
|
ld hl, wField+(5*10)
|
||||||
|
ld bc, 160
|
||||||
|
call UnsafeMemCopy
|
||||||
|
|
||||||
|
ld a, MODE_GAME_OVER
|
||||||
|
ldh [hMode], a
|
||||||
|
|
||||||
|
jp .gameOverMode
|
||||||
|
|
||||||
|
.regular
|
||||||
; Spawn the failed piece.
|
; Spawn the failed piece.
|
||||||
call ForceSpawnPiece
|
call ForceSpawnPiece
|
||||||
|
|
||||||
|
@ -1021,6 +1037,22 @@ GamePlayBigEventLoopHandlerB:
|
||||||
|
|
||||||
|
|
||||||
.preGameOverMode
|
.preGameOverMode
|
||||||
|
ld a, [wKillScreenActive]
|
||||||
|
cp a, $FF
|
||||||
|
jr nz, .regular
|
||||||
|
|
||||||
|
call BigFieldInit
|
||||||
|
ld de, sBigKill
|
||||||
|
ld hl, wWideBlittedField+(3*10)
|
||||||
|
ld bc, 160
|
||||||
|
call UnsafeMemCopy
|
||||||
|
|
||||||
|
ld a, MODE_GAME_OVER
|
||||||
|
ldh [hMode], a
|
||||||
|
|
||||||
|
jp .gameOverMode
|
||||||
|
|
||||||
|
.regular
|
||||||
; Spawn the failed piece.
|
; Spawn the failed piece.
|
||||||
call BigForceSpawnPiece
|
call BigForceSpawnPiece
|
||||||
call BigWidenField
|
call BigWidenField
|
||||||
|
|
Loading…
Reference in New Issue