2019-01-01 20:06:23 +00:00
|
|
|
VermilionCity_Script:
|
2014-05-18 18:19:10 +00:00
|
|
|
call EnableAutoTextBoxDrawing
|
2016-01-03 19:17:10 +00:00
|
|
|
ld hl, wCurrentMapScriptFlags
|
2014-05-18 18:19:10 +00:00
|
|
|
bit 6, [hl]
|
|
|
|
res 6, [hl]
|
|
|
|
push hl
|
2020-05-03 18:25:01 +00:00
|
|
|
call nz, .initCityScript
|
2014-05-18 18:19:10 +00:00
|
|
|
pop hl
|
|
|
|
bit 5, [hl]
|
|
|
|
res 5, [hl]
|
2020-05-03 06:00:01 +00:00
|
|
|
call nz, .setFirstLockTrashCanIndex
|
2019-01-01 20:06:23 +00:00
|
|
|
ld hl, VermilionCity_ScriptPointers
|
2015-08-31 02:38:41 +00:00
|
|
|
ld a, [wVermilionCityCurScript]
|
2014-05-18 18:19:10 +00:00
|
|
|
jp CallFunctionInTable
|
|
|
|
|
2020-05-03 06:00:01 +00:00
|
|
|
.setFirstLockTrashCanIndex
|
2014-05-24 18:40:38 +00:00
|
|
|
call Random
|
2020-05-03 06:00:01 +00:00
|
|
|
ld a, [hRandomSub]
|
2014-05-18 18:19:10 +00:00
|
|
|
and $e
|
2015-07-25 03:27:59 +00:00
|
|
|
ld [wFirstLockTrashCanIndex], a
|
2014-05-18 18:19:10 +00:00
|
|
|
ret
|
|
|
|
|
2020-05-03 18:25:01 +00:00
|
|
|
.initCityScript
|
2015-07-21 01:32:02 +00:00
|
|
|
CheckEventHL EVENT_SS_ANNE_LEFT
|
2014-05-18 18:19:10 +00:00
|
|
|
ret z
|
2015-07-21 17:36:03 +00:00
|
|
|
CheckEventReuseHL EVENT_WALKED_PAST_GUARD_AFTER_SS_ANNE_LEFT
|
|
|
|
SetEventReuseHL EVENT_WALKED_PAST_GUARD_AFTER_SS_ANNE_LEFT
|
2014-05-18 18:19:10 +00:00
|
|
|
ret nz
|
|
|
|
ld a, $2
|
2015-08-31 02:38:41 +00:00
|
|
|
ld [wVermilionCityCurScript], a
|
2014-05-18 18:19:10 +00:00
|
|
|
ret
|
|
|
|
|
2019-01-01 20:06:23 +00:00
|
|
|
VermilionCity_ScriptPointers:
|
2014-05-18 18:19:10 +00:00
|
|
|
dw VermilionCityScript0
|
|
|
|
dw VermilionCityScript1
|
|
|
|
dw VermilionCityScript2
|
|
|
|
dw VermilionCityScript3
|
|
|
|
dw VermilionCityScript4
|
|
|
|
|
2016-06-12 00:24:04 +00:00
|
|
|
VermilionCityScript0:
|
2014-05-26 21:04:56 +00:00
|
|
|
ld a, [wSpriteStateData1 + 9]
|
2015-07-04 05:44:12 +00:00
|
|
|
and a ; cp SPRITE_FACING_DOWN
|
2014-05-18 18:19:10 +00:00
|
|
|
ret nz
|
2020-05-03 18:25:01 +00:00
|
|
|
ld hl, SSAnneTicketCheckCoords
|
2014-05-18 18:19:10 +00:00
|
|
|
call ArePlayerCoordsInArray
|
|
|
|
ret nc
|
|
|
|
xor a
|
2014-05-25 17:51:53 +00:00
|
|
|
ld [hJoyHeld], a
|
2014-05-26 21:04:56 +00:00
|
|
|
ld [wcf0d], a
|
2014-05-18 18:19:10 +00:00
|
|
|
ld a, $3
|
2015-07-18 15:17:29 +00:00
|
|
|
ld [hSpriteIndexOrTextID], a
|
2014-05-18 18:19:10 +00:00
|
|
|
call DisplayTextID
|
2015-07-21 01:32:02 +00:00
|
|
|
CheckEvent EVENT_SS_ANNE_LEFT
|
2020-05-03 18:25:01 +00:00
|
|
|
jr nz, .shipHasDeparted
|
2015-12-15 04:09:30 +00:00
|
|
|
ld b, S_S_TICKET
|
2015-08-13 05:14:31 +00:00
|
|
|
predef GetQuantityOfItemInBag
|
2014-05-18 18:19:10 +00:00
|
|
|
ld a, b
|
|
|
|
and a
|
|
|
|
ret nz
|
2020-05-03 18:25:01 +00:00
|
|
|
.shipHasDeparted
|
2015-07-17 07:52:25 +00:00
|
|
|
ld a, D_UP
|
2014-09-10 03:55:19 +00:00
|
|
|
ld [wSimulatedJoypadStatesEnd], a
|
2014-05-18 18:19:10 +00:00
|
|
|
ld a, $1
|
2014-09-10 03:55:19 +00:00
|
|
|
ld [wSimulatedJoypadStatesIndex], a
|
|
|
|
call StartSimulatingJoypadStates
|
2014-05-18 18:19:10 +00:00
|
|
|
ld a, $1
|
2015-08-31 02:38:41 +00:00
|
|
|
ld [wVermilionCityCurScript], a
|
2014-05-18 18:19:10 +00:00
|
|
|
ret
|
|
|
|
|
2020-05-03 18:25:01 +00:00
|
|
|
SSAnneTicketCheckCoords:
|
|
|
|
db $1e,$12 ; y, x
|
2014-05-18 18:19:10 +00:00
|
|
|
db $ff
|
|
|
|
|
2016-06-12 00:24:04 +00:00
|
|
|
VermilionCityScript4:
|
2020-05-03 18:25:01 +00:00
|
|
|
ld hl, SSAnneTicketCheckCoords
|
2014-05-18 18:19:10 +00:00
|
|
|
call ArePlayerCoordsInArray
|
|
|
|
ret c
|
|
|
|
ld a, $0
|
2015-08-31 02:38:41 +00:00
|
|
|
ld [wVermilionCityCurScript], a
|
2014-05-18 18:19:10 +00:00
|
|
|
ret
|
|
|
|
|
2016-06-12 00:24:04 +00:00
|
|
|
VermilionCityScript2:
|
2014-05-18 18:19:10 +00:00
|
|
|
ld a, $ff
|
2014-05-25 17:51:53 +00:00
|
|
|
ld [wJoyIgnore], a
|
2015-07-17 07:52:25 +00:00
|
|
|
ld a, D_UP
|
2014-09-10 03:55:19 +00:00
|
|
|
ld [wSimulatedJoypadStatesEnd], a
|
2015-07-26 02:26:54 +00:00
|
|
|
ld [wSimulatedJoypadStatesEnd + 1], a
|
|
|
|
ld a, 2
|
2014-09-10 03:55:19 +00:00
|
|
|
ld [wSimulatedJoypadStatesIndex], a
|
|
|
|
call StartSimulatingJoypadStates
|
2014-05-18 18:19:10 +00:00
|
|
|
ld a, $3
|
2015-08-31 02:38:41 +00:00
|
|
|
ld [wVermilionCityCurScript], a
|
2014-05-18 18:19:10 +00:00
|
|
|
ret
|
|
|
|
|
2016-06-12 00:24:04 +00:00
|
|
|
VermilionCityScript3:
|
2014-09-10 03:55:19 +00:00
|
|
|
ld a, [wSimulatedJoypadStatesIndex]
|
2014-05-18 18:19:10 +00:00
|
|
|
and a
|
|
|
|
ret nz
|
|
|
|
xor a
|
2014-05-25 17:51:53 +00:00
|
|
|
ld [wJoyIgnore], a
|
|
|
|
ld [hJoyHeld], a
|
2014-05-18 18:19:10 +00:00
|
|
|
ld a, $0
|
2015-08-31 02:38:41 +00:00
|
|
|
ld [wVermilionCityCurScript], a
|
2014-05-18 18:19:10 +00:00
|
|
|
ret
|
|
|
|
|
2016-06-12 00:24:04 +00:00
|
|
|
VermilionCityScript1:
|
2014-09-10 03:55:19 +00:00
|
|
|
ld a, [wSimulatedJoypadStatesIndex]
|
2014-05-18 18:19:10 +00:00
|
|
|
and a
|
|
|
|
ret nz
|
2015-07-03 19:38:12 +00:00
|
|
|
ld c, 10
|
2014-05-18 18:19:10 +00:00
|
|
|
call DelayFrames
|
|
|
|
ld a, $0
|
2015-08-31 02:38:41 +00:00
|
|
|
ld [wVermilionCityCurScript], a
|
2014-05-18 18:19:10 +00:00
|
|
|
ret
|
|
|
|
|
2019-01-01 20:06:23 +00:00
|
|
|
VermilionCity_TextPointers:
|
2014-05-18 18:19:10 +00:00
|
|
|
dw VermilionCityText1
|
|
|
|
dw VermilionCityText2
|
|
|
|
dw VermilionCityText3
|
|
|
|
dw VermilionCityText4
|
|
|
|
dw VermilionCityText5
|
|
|
|
dw VermilionCityText6
|
|
|
|
dw VermilionCityText7
|
|
|
|
dw VermilionCityText8
|
|
|
|
dw MartSignText
|
|
|
|
dw PokeCenterSignText
|
|
|
|
dw VermilionCityText11
|
|
|
|
dw VermilionCityText12
|
|
|
|
dw VermilionCityText13
|
|
|
|
|
2016-06-12 00:24:04 +00:00
|
|
|
VermilionCityText1:
|
2014-05-18 18:19:10 +00:00
|
|
|
TX_FAR _VermilionCityText1
|
|
|
|
db "@"
|
|
|
|
|
2016-06-12 00:24:04 +00:00
|
|
|
VermilionCityText2:
|
2015-07-03 19:58:50 +00:00
|
|
|
TX_ASM
|
2015-07-21 01:32:02 +00:00
|
|
|
CheckEvent EVENT_SS_ANNE_LEFT
|
2020-05-03 18:25:01 +00:00
|
|
|
jr nz, .shipHasDeparted
|
2020-05-03 18:41:11 +00:00
|
|
|
ld hl, VermilionCityTextDidYouSee
|
2014-05-18 18:19:10 +00:00
|
|
|
call PrintText
|
2020-05-03 18:25:01 +00:00
|
|
|
jr .end
|
|
|
|
.shipHasDeparted
|
2020-05-03 18:41:11 +00:00
|
|
|
ld hl, VermilionCityTextSSAnneDeparted
|
2014-05-18 18:19:10 +00:00
|
|
|
call PrintText
|
2020-05-03 18:25:01 +00:00
|
|
|
.end
|
2014-05-18 18:19:10 +00:00
|
|
|
jp TextScriptEnd
|
|
|
|
|
2020-05-03 18:41:11 +00:00
|
|
|
VermilionCityTextDidYouSee:
|
|
|
|
TX_FAR _VermilionCityTextDidYouSee
|
2014-05-18 18:19:10 +00:00
|
|
|
db "@"
|
|
|
|
|
2020-05-03 18:41:11 +00:00
|
|
|
VermilionCityTextSSAnneDeparted:
|
|
|
|
TX_FAR _VermilionCityTextSSAnneDeparted
|
2014-05-18 18:19:10 +00:00
|
|
|
db "@"
|
|
|
|
|
2016-06-12 00:24:04 +00:00
|
|
|
VermilionCityText3:
|
2015-07-03 19:58:50 +00:00
|
|
|
TX_ASM
|
2015-07-21 01:32:02 +00:00
|
|
|
CheckEvent EVENT_SS_ANNE_LEFT
|
2020-05-03 18:25:01 +00:00
|
|
|
jr nz, .shipHasDeparted
|
2014-05-26 21:04:56 +00:00
|
|
|
ld a, [wSpriteStateData1 + 9]
|
2015-07-04 05:44:12 +00:00
|
|
|
cp SPRITE_FACING_RIGHT
|
2020-05-03 18:25:01 +00:00
|
|
|
jr z, .greetPlayer
|
|
|
|
ld hl, .inFrontOfOrBehindGuardCoords
|
2014-05-18 18:19:10 +00:00
|
|
|
call ArePlayerCoordsInArray
|
2020-05-03 18:25:01 +00:00
|
|
|
jr nc, .greetPlayerAndCheckTicket
|
|
|
|
.greetPlayer
|
2014-05-18 18:19:10 +00:00
|
|
|
ld hl, SSAnneWelcomeText4
|
|
|
|
call PrintText
|
2020-05-03 18:25:01 +00:00
|
|
|
jr .end
|
|
|
|
.greetPlayerAndCheckTicket
|
2014-05-18 18:19:10 +00:00
|
|
|
ld hl, SSAnneWelcomeText9
|
|
|
|
call PrintText
|
2015-12-15 04:09:30 +00:00
|
|
|
ld b, S_S_TICKET
|
2015-08-13 05:14:31 +00:00
|
|
|
predef GetQuantityOfItemInBag
|
2014-05-18 18:19:10 +00:00
|
|
|
ld a, b
|
|
|
|
and a
|
2020-05-03 18:25:01 +00:00
|
|
|
jr nz, .playerHasTicket
|
2014-05-18 18:19:10 +00:00
|
|
|
ld hl, SSAnneNoTicketText
|
|
|
|
call PrintText
|
2020-05-03 18:25:01 +00:00
|
|
|
jr .end
|
|
|
|
.playerHasTicket
|
2014-05-18 18:19:10 +00:00
|
|
|
ld hl, SSAnneFlashedTicketText
|
|
|
|
call PrintText
|
|
|
|
ld a, $4
|
2015-08-31 02:38:41 +00:00
|
|
|
ld [wVermilionCityCurScript], a
|
2020-05-03 18:25:01 +00:00
|
|
|
jr .end
|
|
|
|
.shipHasDeparted
|
2014-05-18 18:19:10 +00:00
|
|
|
ld hl, SSAnneNotHereText
|
|
|
|
call PrintText
|
2020-05-03 18:25:01 +00:00
|
|
|
.end
|
2014-05-18 18:19:10 +00:00
|
|
|
jp TextScriptEnd
|
|
|
|
|
2020-05-03 18:25:01 +00:00
|
|
|
.inFrontOfOrBehindGuardCoords
|
|
|
|
db $1d,$13 ; y, x of tile in front of guard
|
|
|
|
db $1f,$13 ; y, x of tile behind guard
|
2014-05-18 18:19:10 +00:00
|
|
|
db $ff
|
|
|
|
|
2016-06-12 00:24:04 +00:00
|
|
|
SSAnneWelcomeText4:
|
2014-05-18 18:19:10 +00:00
|
|
|
TX_FAR _SSAnneWelcomeText4
|
|
|
|
db "@"
|
|
|
|
|
2016-06-12 00:24:04 +00:00
|
|
|
SSAnneWelcomeText9:
|
2014-05-18 18:19:10 +00:00
|
|
|
TX_FAR _SSAnneWelcomeText9
|
|
|
|
db "@"
|
|
|
|
|
2016-06-12 00:24:04 +00:00
|
|
|
SSAnneFlashedTicketText:
|
2014-05-18 18:19:10 +00:00
|
|
|
TX_FAR _SSAnneFlashedTicketText
|
|
|
|
db "@"
|
|
|
|
|
2016-06-12 00:24:04 +00:00
|
|
|
SSAnneNoTicketText:
|
2014-05-18 18:19:10 +00:00
|
|
|
TX_FAR _SSAnneNoTicketText
|
|
|
|
db "@"
|
|
|
|
|
2016-06-12 00:24:04 +00:00
|
|
|
SSAnneNotHereText:
|
2014-05-18 18:19:10 +00:00
|
|
|
TX_FAR _SSAnneNotHereText
|
|
|
|
db "@"
|
|
|
|
|
2016-06-12 00:24:04 +00:00
|
|
|
VermilionCityText4:
|
2014-05-18 18:19:10 +00:00
|
|
|
TX_FAR _VermilionCityText4
|
|
|
|
db "@"
|
|
|
|
|
2016-06-12 00:24:04 +00:00
|
|
|
VermilionCityText5:
|
2014-05-18 18:19:10 +00:00
|
|
|
TX_FAR _VermilionCityText5
|
2015-07-03 19:58:50 +00:00
|
|
|
TX_ASM
|
2014-05-18 18:19:10 +00:00
|
|
|
ld a, MACHOP
|
|
|
|
call PlayCry
|
|
|
|
call WaitForSoundToFinish
|
2015-07-03 19:38:12 +00:00
|
|
|
ld hl, VermilionCityText14
|
2014-05-18 18:19:10 +00:00
|
|
|
ret
|
|
|
|
|
2016-06-12 00:24:04 +00:00
|
|
|
VermilionCityText14:
|
2014-05-18 18:19:10 +00:00
|
|
|
TX_FAR _VermilionCityText14
|
|
|
|
db "@"
|
|
|
|
|
2016-06-12 00:24:04 +00:00
|
|
|
VermilionCityText6:
|
2014-05-18 18:19:10 +00:00
|
|
|
TX_FAR _VermilionCityText6
|
|
|
|
db "@"
|
|
|
|
|
2016-06-12 00:24:04 +00:00
|
|
|
VermilionCityText7:
|
2014-05-18 18:19:10 +00:00
|
|
|
TX_FAR _VermilionCityText7
|
|
|
|
db "@"
|
|
|
|
|
2016-06-12 00:24:04 +00:00
|
|
|
VermilionCityText8:
|
2014-05-18 18:19:10 +00:00
|
|
|
TX_FAR _VermilionCityText8
|
|
|
|
db "@"
|
|
|
|
|
2016-06-12 00:24:04 +00:00
|
|
|
VermilionCityText11:
|
2014-05-18 18:19:10 +00:00
|
|
|
TX_FAR _VermilionCityText11
|
|
|
|
db "@"
|
|
|
|
|
2016-06-12 00:24:04 +00:00
|
|
|
VermilionCityText12:
|
2014-05-18 18:19:10 +00:00
|
|
|
TX_FAR _VermilionCityText12
|
|
|
|
db "@"
|
|
|
|
|
2016-06-12 00:24:04 +00:00
|
|
|
VermilionCityText13:
|
2014-05-18 18:19:10 +00:00
|
|
|
TX_FAR _VermilionCityText13
|
|
|
|
db "@"
|