ref: 676a35f76f93dfe18678a832fa63d8b684c34c45
dir: /scripts/Route12.asm/
Route12_Script: call EnableAutoTextBoxDrawing ld hl, Route12TrainerHeader0 ld de, Route12_ScriptPointers ld a, [wRoute12CurScript] call ExecuteCurMapScriptInTable ld [wRoute12CurScript], a ret Route12Script_59606: xor a ld [wJoyIgnore], a ld [wRoute12CurScript], a ld [wCurMapScript], a ret Route12_ScriptPointers: dw Route12Script0 dw DisplayEnemyTrainerTextAndStartBattle dw EndTrainerBattle dw Route12Script3 Route12Script0: CheckEventHL EVENT_BEAT_ROUTE12_SNORLAX jp nz, CheckFightingMapTrainers CheckEventReuseHL EVENT_FIGHT_ROUTE12_SNORLAX ResetEventReuseHL EVENT_FIGHT_ROUTE12_SNORLAX jp z, CheckFightingMapTrainers ld a, $d ldh [hSpriteIndexOrTextID], a call DisplayTextID ld a, SNORLAX ld [wCurOpponent], a ld a, 30 ld [wCurEnemyLVL], a ld a, HS_ROUTE_12_SNORLAX ld [wMissableObjectIndex], a predef HideObject ld a, $3 ld [wRoute12CurScript], a ld [wCurMapScript], a ret Route12Script3: ld a, [wIsInBattle] cp $ff jr z, Route12Script_59606 call UpdateSprites ld a, [wBattleResult] cp $2 jr z, .asm_59664 ld a, $e ldh [hSpriteIndexOrTextID], a call DisplayTextID .asm_59664 SetEvent EVENT_BEAT_ROUTE12_SNORLAX call Delay3 ld a, $0 ld [wRoute12CurScript], a ld [wCurMapScript], a ret Route12_TextPointers: dw Route12Text1 dw Route12Text2 dw Route12Text3 dw Route12Text4 dw Route12Text5 dw Route12Text6 dw Route12Text7 dw Route12Text8 dw PickUpItemText dw PickUpItemText dw Route12Text11 dw Route12Text12 dw Route12Text13 dw Route12Text14 Route12TrainerHeader0: dbEventFlagBit EVENT_BEAT_ROUTE_12_TRAINER_0 db ($4 << 4) ; trainer's view range dwEventFlagAddress EVENT_BEAT_ROUTE_12_TRAINER_0 dw Route12BattleText1 ; TextBeforeBattle dw Route12AfterBattleText1 ; TextAfterBattle dw Route12EndBattleText1 ; TextEndBattle dw Route12EndBattleText1 ; TextEndBattle Route12TrainerHeader1: dbEventFlagBit EVENT_BEAT_ROUTE_12_TRAINER_1 db ($4 << 4) ; trainer's view range dwEventFlagAddress EVENT_BEAT_ROUTE_12_TRAINER_1 dw Route12BattleText2 ; TextBeforeBattle dw Route12AfterBattleText2 ; TextAfterBattle dw Route12EndBattleText2 ; TextEndBattle dw Route12EndBattleText2 ; TextEndBattle Route12TrainerHeader2: dbEventFlagBit EVENT_BEAT_ROUTE_12_TRAINER_2 db ($4 << 4) ; trainer's view range dwEventFlagAddress EVENT_BEAT_ROUTE_12_TRAINER_2 dw Route12BattleText3 ; TextBeforeBattle dw Route12AfterBattleText3 ; TextAfterBattle dw Route12EndBattleText3 ; TextEndBattle dw Route12EndBattleText3 ; TextEndBattle Route12TrainerHeader3: dbEventFlagBit EVENT_BEAT_ROUTE_12_TRAINER_3 db ($4 << 4) ; trainer's view range dwEventFlagAddress EVENT_BEAT_ROUTE_12_TRAINER_3 dw Route12BattleText4 ; TextBeforeBattle dw Route12AfterBattleText4 ; TextAfterBattle dw Route12EndBattleText4 ; TextEndBattle dw Route12EndBattleText4 ; TextEndBattle Route12TrainerHeader4: dbEventFlagBit EVENT_BEAT_ROUTE_12_TRAINER_4 db ($4 << 4) ; trainer's view range dwEventFlagAddress EVENT_BEAT_ROUTE_12_TRAINER_4 dw Route12BattleText5 ; TextBeforeBattle dw Route12AfterBattleText5 ; TextAfterBattle dw Route12EndBattleText5 ; TextEndBattle dw Route12EndBattleText5 ; TextEndBattle Route12TrainerHeader5: dbEventFlagBit EVENT_BEAT_ROUTE_12_TRAINER_5 db ($4 << 4) ; trainer's view range dwEventFlagAddress EVENT_BEAT_ROUTE_12_TRAINER_5 dw Route12BattleText6 ; TextBeforeBattle dw Route12AfterBattleText6 ; TextAfterBattle dw Route12EndBattleText6 ; TextEndBattle dw Route12EndBattleText6 ; TextEndBattle Route12TrainerHeader6: dbEventFlagBit EVENT_BEAT_ROUTE_12_TRAINER_6, 1 db ($1 << 4) ; trainer's view range dwEventFlagAddress EVENT_BEAT_ROUTE_12_TRAINER_6, 1 dw Route12BattleText7 ; TextBeforeBattle dw Route12AfterBattleText7 ; TextAfterBattle dw Route12EndBattleText7 ; TextEndBattle dw Route12EndBattleText7 ; TextEndBattle db $ff Route12Text1: text_far _Route12Text1 text_end Route12Text13: text_far _Route12Text13 text_end Route12Text14: text_far _Route12Text14 text_end Route12Text2: text_asm ld hl, Route12TrainerHeader0 call TalkToTrainer jp TextScriptEnd Route12BattleText1: text_far _Route12BattleText1 text_end Route12EndBattleText1: text_far _Route12EndBattleText1 text_end Route12AfterBattleText1: text_far _Route12AfterBattleText1 text_end Route12Text3: text_asm ld hl, Route12TrainerHeader1 call TalkToTrainer jp TextScriptEnd Route12BattleText2: text_far _Route12BattleText2 text_end Route12EndBattleText2: text_far _Route12EndBattleText2 text_end Route12AfterBattleText2: text_far _Route12AfterBattleText2 text_end Route12Text4: text_asm ld hl, Route12TrainerHeader2 call TalkToTrainer jp TextScriptEnd Route12BattleText3: text_far _Route12BattleText3 text_end Route12EndBattleText3: text_far _Route12EndBattleText3 text_end Route12AfterBattleText3: text_far _Route12AfterBattleText3 text_end Route12Text5: text_asm ld hl, Route12TrainerHeader3 call TalkToTrainer jp TextScriptEnd Route12BattleText4: text_far _Route12BattleText4 text_end Route12EndBattleText4: text_far _Route12EndBattleText4 text_end Route12AfterBattleText4: text_far _Route12AfterBattleText4 text_end Route12Text6: text_asm ld hl, Route12TrainerHeader4 call TalkToTrainer jp TextScriptEnd Route12BattleText5: text_far _Route12BattleText5 text_end Route12EndBattleText5: text_far _Route12EndBattleText5 text_end Route12AfterBattleText5: text_far _Route12AfterBattleText5 text_end Route12Text7: text_asm ld hl, Route12TrainerHeader5 call TalkToTrainer jp TextScriptEnd Route12BattleText6: text_far _Route12BattleText6 text_end Route12EndBattleText6: text_far _Route12EndBattleText6 text_end Route12AfterBattleText6: text_far _Route12AfterBattleText6 text_end Route12Text8: text_asm ld hl, Route12TrainerHeader6 call TalkToTrainer jp TextScriptEnd Route12BattleText7: text_far _Route12BattleText7 text_end Route12EndBattleText7: text_far _Route12EndBattleText7 text_end Route12AfterBattleText7: text_far _Route12AfterBattleText7 text_end Route12Text11: text_far _Route12Text11 text_end Route12Text12: text_far _Route12Text12 text_end