summaryrefslogtreecommitdiff
path: root/scripts/ceruleancity.asm
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/ceruleancity.asm')
-rwxr-xr-xscripts/ceruleancity.asm312
1 files changed, 162 insertions, 150 deletions
diff --git a/scripts/ceruleancity.asm b/scripts/ceruleancity.asm
index bbddad79..d6269a64 100755
--- a/scripts/ceruleancity.asm
+++ b/scripts/ceruleancity.asm
@@ -1,74 +1,71 @@
-CeruleanCityScript: ; 19480 (6:5480)
+CeruleanCityScript:
call EnableAutoTextBoxDrawing
ld hl, CeruleanCityScriptPointers
- ld a, [W_CERULEANCITYCURSCRIPT]
+ ld a, [wCeruleanCityCurScript]
jp CallFunctionInTable
-CeruleanCityScript_1948c: ; 1948c (6:548c)
+CeruleanCityScript_1948c:
xor a
ld [wJoyIgnore], a
- ld [W_CERULEANCITYCURSCRIPT], a
+ ld [wCeruleanCityCurScript], a
ld a, HS_CERULEAN_RIVAL
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef_jump HideObject
-CeruleanCityScriptPointers: ; 1949d (6:549d)
+CeruleanCityScriptPointers:
dw CeruleanCityScript0
dw CeruleanCityScript1
dw CeruleanCityScript2
dw CeruleanCityScript3
dw CeruleanCityScript4
-CeruleanCityScript4: ; 194a7 (6:54a7)
- ld a, [W_ISINBATTLE]
+CeruleanCityScript4:
+ ld a, [wIsInBattle]
cp $ff
jp z, CeruleanCityScript_1948c
ld a, $f0
ld [wJoyIgnore], a
- ld hl, wd75b
- set 7, [hl]
+ SetEvent EVENT_BEAT_CERULEAN_ROCKET_THIEF
ld a, $2
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
xor a
ld [wJoyIgnore], a
- ld [W_CERULEANCITYCURSCRIPT], a
+ ld [wCeruleanCityCurScript], a
ret
-CeruleanCityScript0: ; 194c8 (6:54c8)
- ld a, [wd75b]
- bit 7, a
- jr nz, .asm_194f7 ; 0x194cd $28
+CeruleanCityScript0:
+ CheckEvent EVENT_BEAT_CERULEAN_ROCKET_THIEF
+ jr nz, .asm_194f7
ld hl, CeruleanCityCoords1
call ArePlayerCoordsInArray
- jr nc, .asm_194f7 ; 0x194d5 $20
- ld a, [wWhichTrade]
+ jr nc, .asm_194f7
+ ld a, [wCoordIndex]
cp $1
- ld a, $8
- ld b, $0
- jr nz, .asm_194e6 ; 0x194e0 $4
- ld a, $4
- ld b, $4
+ ld a, PLAYER_DIR_UP
+ ld b, SPRITE_FACING_DOWN
+ jr nz, .asm_194e6
+ ld a, PLAYER_DIR_DOWN
+ ld b, SPRITE_FACING_UP
.asm_194e6
- ld [wd528], a
+ ld [wPlayerMovingDirection], a
ld a, b
- ld [wSpriteStateData1 + $29], a
+ ld [wSpriteStateData1 + 2 * $10 + $9], a
call Delay3
ld a, $2
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
jp DisplayTextID
.asm_194f7
- ld a, [wd75a]
- bit 0, a
+ CheckEvent EVENT_BEAT_CERULEAN_RIVAL
ret nz
ld hl, CeruleanCityCoords2
call ArePlayerCoordsInArray
ret nc
ld a, [wWalkBikeSurfState]
and a
- jr z, .asm_19512 ; 0x19508 $8
+ jr z, .asm_19512
ld a, $ff
- ld [wc0ee], a
+ ld [wNewSoundID], a
call PlaySound
.asm_19512
ld c, BANK(Music_MeetRival)
@@ -78,55 +75,58 @@ CeruleanCityScript0: ; 194c8 (6:54c8)
ld [hJoyHeld], a
ld a, $f0
ld [wJoyIgnore], a
- ld a, [W_XCOORD]
+ ld a, [wXCoord]
cp $14
- jr z, .asm_19535 ; 0x19526 $d
+ jr z, .asm_19535
ld a, $1
- ld [$ff8c], a
+ ld [H_SPRITEINDEX], a
ld a, $5
- ld [$ff8b], a
+ ld [H_SPRITEDATAOFFSET], a
call GetPointerWithinSpriteStateData2
ld [hl], $19
.asm_19535
ld a, HS_CERULEAN_RIVAL
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef ShowObject
ld de, CeruleanCityMovement1
ld a, $1
- ld [$ff8c], a
+ ld [H_SPRITEINDEX], a
call MoveSprite
ld a, $1
- ld [W_CERULEANCITYCURSCRIPT], a
+ ld [wCeruleanCityCurScript], a
ret
-CeruleanCityCoords1: ; 1954f (6:554f)
+CeruleanCityCoords1:
db $07,$1e
db $09,$1e
db $ff
-CeruleanCityCoords2: ; 19554 (6:5554)
+CeruleanCityCoords2:
db $06,$14
db $06,$15
db $ff
-CeruleanCityMovement1: ; 19559 (6:5559)
- db $00,$00,$00,$FF
+CeruleanCityMovement1:
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db $FF
-CeruleanCityScript_1955d: ; 1955d (6:555d)
+CeruleanCityScript_1955d:
ld a,1
- ld [$ff8c],a
- xor a
- ld [$ff8d],a
+ ld [H_SPRITEINDEX],a
+ xor a ; SPRITE_FACING_DOWN
+ ld [hSpriteFacingDirection],a
jp SetSpriteFacingDirectionAndDelay ; face object
-CeruleanCityScript1: ; 19567 (6:5567)
+CeruleanCityScript1:
ld a, [wd730]
bit 0, a
ret nz
xor a
ld [wJoyIgnore], a
ld a, $1
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld hl, wd72d
set 6, [hl]
@@ -134,87 +134,100 @@ CeruleanCityScript1: ; 19567 (6:5567)
ld hl, CeruleanCityText_1966d
ld de, CeruleanCityText_19672
call SaveEndBattleTextPointers
- ld a, SONY1 + $c8
- ld [W_CUROPPONENT], a
+ ld a, OPP_SONY1
+ ld [wCurOpponent], a
; select which team to use during the encounter
- ld a, [W_RIVALSTARTER]
+ ld a, [wRivalStarter]
cp STARTER2
- jr nz, .NotSquirtle ; 0x19592 $4
+ jr nz, .NotSquirtle
ld a, $7
jr .done
.NotSquirtle
cp STARTER3
- jr nz, .Charmander ; 0x1959a $4
+ jr nz, .Charmander
ld a, $8
jr .done
.Charmander
ld a, $9
.done
- ld [W_TRAINERNO], a
+ ld [wTrainerNo], a
xor a
ld [hJoyHeld], a
call CeruleanCityScript_1955d
ld a, $2
- ld [W_CERULEANCITYCURSCRIPT], a
+ ld [wCeruleanCityCurScript], a
ret
-CeruleanCityScript2: ; 195b1 (6:55b1)
- ld a, [W_ISINBATTLE]
+CeruleanCityScript2:
+ ld a, [wIsInBattle]
cp $ff
jp z, CeruleanCityScript_1948c
call CeruleanCityScript_1955d
ld a, $f0
ld [wJoyIgnore], a
- ld hl, wd75a
- set 0, [hl]
+ SetEvent EVENT_BEAT_CERULEAN_RIVAL
ld a, $1
- ld [$ff8c], a
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
ld a, $ff
- ld [wc0ee], a
+ ld [wNewSoundID], a
call PlaySound
callba Music_RivalAlternateStart
ld a, $1
- ld [$ff8c], a
+ ld [H_SPRITEINDEX], a
call SetSpriteMovementBytesToFF
- ld a, [W_XCOORD]
+ ld a, [wXCoord]
cp $14
- jr nz, .asm_195f0 ; 0x195e9 $5
+ jr nz, .asm_195f0
ld de, CeruleanCityMovement4
- jr .asm_195f3 ; 0x195ee $3
+ jr .asm_195f3
.asm_195f0
ld de, CeruleanCityMovement3
.asm_195f3
ld a, $1
- ld [$ff8c], a
+ ld [H_SPRITEINDEX], a
call MoveSprite
ld a, $3
- ld [W_CERULEANCITYCURSCRIPT], a
+ ld [wCeruleanCityCurScript], a
ret
-CeruleanCityMovement3: ; 19600 (6:5600)
- db $80,$00,$00,$00,$00,$00,$00,$FF
-
-CeruleanCityMovement4: ; 19608 (6:5608)
- db $c0,$00,$00,$00,$00,$00,$00,$FF
-
-CeruleanCityScript3: ; 19610 (6:5610)
+CeruleanCityMovement3:
+ db NPC_MOVEMENT_LEFT
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db $FF
+
+CeruleanCityMovement4:
+ db NPC_MOVEMENT_RIGHT
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db NPC_MOVEMENT_DOWN
+ db $FF
+
+CeruleanCityScript3:
ld a, [wd730]
bit 0, a
ret nz
ld a, HS_CERULEAN_RIVAL
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
xor a
ld [wJoyIgnore], a
call PlayDefaultMusic
ld a, $0
- ld [W_CERULEANCITYCURSCRIPT], a
+ ld [wCeruleanCityCurScript], a
ret
-CeruleanCityTextPointers: ; 1962d (6:562d)
+CeruleanCityTextPointers:
dw CeruleanCityText1
dw CeruleanCityText2
dw CeruleanCityText3
@@ -233,43 +246,41 @@ CeruleanCityTextPointers: ; 1962d (6:562d)
dw CeruleanCityText16
dw CeruleanCityText17
-CeruleanCityText1: ; 1964f (6:564f)
- db $08 ; asm
- ld a, [wd75a] ; rival battle flag
- bit 0, a
+CeruleanCityText1:
+ TX_ASM
+ CheckEvent EVENT_BEAT_CERULEAN_RIVAL
; do pre-battle text
jr z, .PreBattleText
; or talk about bill
ld hl, CeruleanCityText_19677
call PrintText
- jr .end ; 0x1965d
-.PreBattleText ; 0x1965f
+ jr .end
+.PreBattleText
ld hl, CeruleanCityText_19668
call PrintText
-.end ; 0x19665
+.end
jp TextScriptEnd
-CeruleanCityText_19668: ; 19668 (6:5668)
+CeruleanCityText_19668:
TX_FAR _CeruleanCityText_19668
db "@"
-CeruleanCityText_1966d: ; 1966d (6:566d)
+CeruleanCityText_1966d:
TX_FAR _CeruleanCityText_1966d
db "@"
-CeruleanCityText_19672: ; 19672 (6:5672)
+CeruleanCityText_19672:
TX_FAR _CeruleanCityText_19672
db "@"
-CeruleanCityText_19677: ; 19677 (6:5677)
+CeruleanCityText_19677:
TX_FAR _CeruleanCityText_19677
db "@"
-CeruleanCityText2: ; 1967c (6:567c)
- db $8
- ld a, [wd75b]
- bit 7, a
- jr nz, .asm_4ca20 ; 0x19682 $29
+CeruleanCityText2:
+ TX_ASM
+ CheckEvent EVENT_BEAT_CERULEAN_ROCKET_THIEF
+ jr nz, .asm_4ca20
ld hl, CeruleanCityText_196d9
call PrintText
ld hl, wd72d
@@ -278,17 +289,17 @@ CeruleanCityText2: ; 1967c (6:567c)
ld hl, CeruleanCityText_196ee
ld de, CeruleanCityText_196ee
call SaveEndBattleTextPointers
- ld a, [$ff8c]
+ ld a, [hSpriteIndexOrTextID]
ld [wSpriteIndex], a
call EngageMapTrainer
call InitBattleEnemyParameters
ld a, $4
- ld [W_CERULEANCITYCURSCRIPT], a
+ ld [wCeruleanCityCurScript], a
jp TextScriptEnd
-.asm_4ca20 ; 0x196ad
+.asm_4ca20
ld hl, CeruleanCityText_196f3
call PrintText
- ld bc, (TM_28 << 8) + 1
+ lb bc, TM_28, 1
call GiveItem
jr c, .Success
ld hl, TM28NoRoomText
@@ -299,143 +310,144 @@ CeruleanCityText2: ; 1967c (6:567c)
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
ld hl, ReceivedTM28Text
call PrintText
- callba Func_74872
+ callba CeruleanHideRocket
.Done
jp TextScriptEnd
-CeruleanCityText_196d9: ; 196d9 (6:56d9)
+CeruleanCityText_196d9:
TX_FAR _CeruleanCityText_196d9
db "@"
-ReceivedTM28Text: ; 196de (6:56de)
+ReceivedTM28Text:
TX_FAR _ReceivedTM28Text
- db $0B
+ TX_SFX_ITEM_1
TX_FAR _ReceivedTM28Text2
- db $0D, "@"
+ TX_WAIT
+ db "@"
-TM28NoRoomText: ; 196e9 (6:56e9)
+TM28NoRoomText:
TX_FAR _TM28NoRoomText
db "@"
-CeruleanCityText_196ee: ; 196ee (6:56ee)
+CeruleanCityText_196ee:
TX_FAR _CeruleanCityText_196ee
db "@"
-CeruleanCityText_196f3: ; 196f3 (6:56f3)
+CeruleanCityText_196f3:
TX_FAR _CeruleanCityText_196f3
db "@"
-CeruleanCityText3: ; 196f8 (6:56f8)
+CeruleanCityText3:
TX_FAR _CeruleanCityText3
db "@"
-CeruleanCityText4: ; 196fd (6:56fd)
+CeruleanCityText4:
TX_FAR _CeruleanCityText4
db "@"
-CeruleanCityText5: ; 19702 (6:5702)
+CeruleanCityText5:
TX_FAR _CeruleanCityText5
db "@"
-CeruleanCityText11: ; 19707 (6:5707)
-CeruleanCityText6: ; 19707 (6:5707)
+CeruleanCityText11:
+CeruleanCityText6:
TX_FAR _CeruleanCityText6
db "@"
-CeruleanCityText7: ; 1970c (6:570c)
- db $08 ; asm
- ldh a, [$d3]
- cp $b4
- jr c, .asm_e9fc9 ; 0x19711
+CeruleanCityText7:
+ TX_ASM
+ ld a, [hRandomAdd]
+ cp 180
+ jr c, .asm_e9fc9
ld hl, CeruleanCityText_19730
call PrintText
- jr .asm_d486e ; 0x19719
-.asm_e9fc9 ; 0x1971b
- cp $64
- jr c, .asm_df99b ; 0x1971d
+ jr .asm_d486e
+.asm_e9fc9
+ cp 100
+ jr c, .asm_df99b
ld hl, CeruleanCityText_19735
call PrintText
- jr .asm_d486e ; 0x19725
-.asm_df99b ; 0x19727
+ jr .asm_d486e
+.asm_df99b
ld hl, CeruleanCityText_1973a
call PrintText
-.asm_d486e ; 0x1972d
+.asm_d486e
jp TextScriptEnd
-CeruleanCityText_19730: ; 19730 (6:5730)
+CeruleanCityText_19730:
TX_FAR _CeruleanCityText_19730
db "@"
-CeruleanCityText_19735: ; 19735 (6:5735)
+CeruleanCityText_19735:
TX_FAR _CeruleanCityText_19735
db "@"
-CeruleanCityText_1973a: ; 1973a (6:573a)
+CeruleanCityText_1973a:
TX_FAR _CeruleanCityText_1973a
db "@"
-CeruleanCityText8: ; 1973f (6:573f)
- db $08 ; asm
- ldh a, [$d3]
- cp $b4
- jr c, .asm_e28da ; 0x19744
+CeruleanCityText8:
+ TX_ASM
+ ld a, [hRandomAdd]
+ cp 180
+ jr c, .asm_e28da
ld hl, CeruleanCityText_1976f
call PrintText
- jr .asm_f2f38 ; 0x1974c
-.asm_e28da ; 0x1974e
- cp $78
- jr c, .asm_15d08 ; 0x19750
+ jr .asm_f2f38
+.asm_e28da
+ cp 120
+ jr c, .asm_15d08
ld hl, CeruleanCityText_19774
call PrintText
- jr .asm_f2f38 ; 0x19758
-.asm_15d08 ; 0x1975a
- cp $3c
- jr c, .asm_d7fea ; 0x1975c
+ jr .asm_f2f38
+.asm_15d08
+ cp 60
+ jr c, .asm_d7fea
ld hl, CeruleanCityText_19779
call PrintText
- jr .asm_f2f38 ; 0x19764
-.asm_d7fea ; 0x19766
+ jr .asm_f2f38
+.asm_d7fea
ld hl, CeruleanCityText_1977e
call PrintText
-.asm_f2f38 ; 0x1976c
+.asm_f2f38
jp TextScriptEnd
-CeruleanCityText_1976f: ; 1976f (6:576f)
+CeruleanCityText_1976f:
TX_FAR _CeruleanCityText_1976f
db "@"
-CeruleanCityText_19774: ; 19774 (6:5774)
+CeruleanCityText_19774:
TX_FAR _CeruleanCityText_19774
db "@"
-CeruleanCityText_19779: ; 19779 (6:5779)
+CeruleanCityText_19779:
TX_FAR _CeruleanCityText_19779
db "@"
-CeruleanCityText_1977e: ; 1977e (6:577e)
+CeruleanCityText_1977e:
TX_FAR _CeruleanCityText_1977e
db "@"
-CeruleanCityText9: ; 19783 (6:5783)
+CeruleanCityText9:
TX_FAR _CeruleanCityText9
db "@"
-CeruleanCityText10: ; 19788 (6:5788)
+CeruleanCityText10:
TX_FAR _CeruleanCityText10
db "@"
-CeruleanCityText12: ; 1978d (6:578d)
+CeruleanCityText12:
TX_FAR _CeruleanCityText12
db "@"
-CeruleanCityText13: ; 19792 (6:5792)
+CeruleanCityText13:
TX_FAR _CeruleanCityText13
db "@"
-CeruleanCityText16: ; 19797 (6:5797)
+CeruleanCityText16:
TX_FAR _CeruleanCityText16
db "@"
-CeruleanCityText17: ; 1979c (6:579c)
+CeruleanCityText17:
TX_FAR _CeruleanCityText17
db "@"