ref: 1db2e7b5b470a47da9ca237ad704c2b73f29af2e
dir: /scripts/PewterCity.asm/
PewterCity_Script: call EnableAutoTextBoxDrawing ld hl, PewterCity_ScriptPointers ld a, [wPewterCityCurScript] jp CallFunctionInTable PewterCity_ScriptPointers: dw PewterCityScript0 dw PewterCityScript1 dw PewterCityScript2 dw PewterCityScript3 dw PewterCityScript4 dw PewterCityScript5 dw PewterCityScript6 PewterCityScript0: xor a ld [wMuseum1FCurScript], a ResetEvent EVENT_BOUGHT_MUSEUM_TICKET call PewterCityScript_1925e ret PewterCityScript_1925e: CheckEvent EVENT_BEAT_BROCK ret nz ld hl, CoordsData_19277 call ArePlayerCoordsInArray ret nc ld a, $f0 ld [wJoyIgnore], a ld a, $5 ld [hSpriteIndexOrTextID], a jp DisplayTextID CoordsData_19277: db $11,$23 db $11,$24 db $12,$25 db $13,$25 db $ff PewterCityScript1: ld a, [wNPCMovementScriptPointerTableNum] and a ret nz ld a, $3 ld [hSpriteIndex], a ld a, SPRITE_FACING_UP ld [hSpriteFacingDirection], a call SetSpriteFacingDirectionAndDelay ld a, ($3 << 4) | SPRITE_FACING_UP ld [hSpriteImageIndex], a call SetSpriteImageIndexAfterSettingFacingDirection call PlayDefaultMusic ld hl, wFlags_0xcd60 set 4, [hl] ld a, $d ld [hSpriteIndexOrTextID], a call DisplayTextID ld a, $3c ld [hSpriteScreenYCoord], a ld a, $30 ld [hSpriteScreenXCoord], a ld a, $c ld [hSpriteMapYCoord], a ld a, $11 ld [hSpriteMapXCoord], a ld a, $3 ld [wSpriteIndex], a call SetSpritePosition1 ld a, $3 ld [hSpriteIndex], a ld de, MovementData_PewterMuseumGuyExit call MoveSprite ld a, $2 ld [wPewterCityCurScript], a ret MovementData_PewterMuseumGuyExit: db NPC_MOVEMENT_DOWN db NPC_MOVEMENT_DOWN db NPC_MOVEMENT_DOWN db NPC_MOVEMENT_DOWN db $FF PewterCityScript2: ld a, [wd730] bit 0, a ret nz ld a, HS_MUSEUM_GUY ld [wMissableObjectIndex], a predef HideObject ld a, $3 ld [wPewterCityCurScript], a ret PewterCityScript3: ld a, $3 ld [wSpriteIndex], a call SetSpritePosition2 ld a, HS_MUSEUM_GUY ld [wMissableObjectIndex], a predef ShowObject xor a ld [wJoyIgnore], a ld a, $0 ld [wPewterCityCurScript], a ret PewterCityScript4: ld a, [wNPCMovementScriptPointerTableNum] and a ret nz ld a, $5 ld [hSpriteIndex], a ld a, SPRITE_FACING_LEFT ld [hSpriteFacingDirection], a call SetSpriteFacingDirectionAndDelay ld a, ($1 << 4) | SPRITE_FACING_LEFT ld [hSpriteImageIndex], a call SetSpriteImageIndexAfterSettingFacingDirection call PlayDefaultMusic ld hl, wFlags_0xcd60 set 4, [hl] ld a, $e ld [hSpriteIndexOrTextID], a call DisplayTextID ld a, $3c ld [hSpriteScreenYCoord], a ld a, $40 ld [hSpriteScreenXCoord], a ld a, $16 ld [hSpriteMapYCoord], a ld a, $10 ld [hSpriteMapXCoord], a ld a, $5 ld [wSpriteIndex], a call SetSpritePosition1 ld a, $5 ld [hSpriteIndex], a ld de, MovementData_PewterGymGuyExit call MoveSprite ld a, $5 ld [wPewterCityCurScript], a ret MovementData_PewterGymGuyExit: db NPC_MOVEMENT_RIGHT db NPC_MOVEMENT_RIGHT db NPC_MOVEMENT_RIGHT db NPC_MOVEMENT_RIGHT db NPC_MOVEMENT_RIGHT db $FF PewterCityScript5: ld a, [wd730] bit 0, a ret nz ld a, HS_GYM_GUY ld [wMissableObjectIndex], a predef HideObject ld a, $6 ld [wPewterCityCurScript], a ret PewterCityScript6: ld a, $5 ld [wSpriteIndex], a call SetSpritePosition2 ld a, HS_GYM_GUY ld [wMissableObjectIndex], a predef ShowObject xor a ld [wJoyIgnore], a ld a, $0 ld [wPewterCityCurScript], a ret PewterCity_TextPointers: dw PewterCityText1 dw PewterCityText2 dw PewterCityText3 dw PewterCityText4 dw PewterCityText5 dw PewterCityText6 dw PewterCityText7 dw MartSignText dw PokeCenterSignText dw PewterCityText10 dw PewterCityText11 dw PewterCityText12 dw PewterCityText13 dw PewterCityText14 PewterCityText1: text_far _PewterCityText1 text_end PewterCityText2: text_far _PewterCityText2 text_end PewterCityText3: text_asm ld hl, PewterCityText_193f1 call PrintText call YesNoChoice ld a, [wCurrentMenuItem] and a jr nz, .playerDidNotGoIntoMuseum ld hl, PewterCityText_193f6 call PrintText jr .done .playerDidNotGoIntoMuseum ld hl, PewterCityText_193fb call PrintText xor a ld [hJoyPressed], a ld [hJoyHeld], a ld [wNPCMovementScriptFunctionNum], a ld a, $2 ld [wNPCMovementScriptPointerTableNum], a ld a, [hLoadedROMBank] ld [wNPCMovementScriptBank], a ld a, $3 ld [wSpriteIndex], a call GetSpritePosition2 ld a, $1 ld [wPewterCityCurScript], a .done jp TextScriptEnd PewterCityText_193f1: text_far _PewterCityText_193f1 text_end PewterCityText_193f6: text_far _PewterCityText_193f6 text_end PewterCityText_193fb: text_far _PewterCityText_193fb text_end PewterCityText13: text_far _PewterCityText13 text_end PewterCityText4: text_asm ld hl, PewterCityText_19427 call PrintText call YesNoChoice ld a, [wCurrentMenuItem] cp $0 jr nz, .playerDoesNotKnow ld hl, PewterCityText_1942c call PrintText jr .done .playerDoesNotKnow ld hl, PewterCityText_19431 call PrintText .done jp TextScriptEnd PewterCityText_19427: text_far _PewterCityText_19427 text_end PewterCityText_1942c: text_far _PewterCityText_1942c text_end PewterCityText_19431: text_far _PewterCityText_19431 text_end PewterCityText5: text_asm ld hl, PewterCityText_1945d call PrintText xor a ld [hJoyHeld], a ld [wNPCMovementScriptFunctionNum], a ld a, $3 ld [wNPCMovementScriptPointerTableNum], a ld a, [hLoadedROMBank] ld [wNPCMovementScriptBank], a ld a, $5 ld [wSpriteIndex], a call GetSpritePosition2 ld a, $4 ld [wPewterCityCurScript], a jp TextScriptEnd PewterCityText_1945d: text_far _PewterCityText_1945d text_end PewterCityText14: text_far _PewterCityText14 text_end PewterCityText6: text_far _PewterCityText6 text_end PewterCityText7: text_far _PewterCityText7 text_end PewterCityText10: text_far _PewterCityText10 text_end PewterCityText11: text_far _PewterCityText11 text_end PewterCityText12: text_far _PewterCityText12 text_end