ref: fcb573f4ac006b73827b6fc317fc7501e17004ae
dir: /scripts/PokemonMansion3F.asm/
PokemonMansion3F_Script: call Mansion3Script_52204 call EnableAutoTextBoxDrawing ld hl, Mansion3TrainerHeader0 ld de, PokemonMansion3F_ScriptPointers ld a, [wPokemonMansion3FCurScript] call ExecuteCurMapScriptInTable ld [wPokemonMansion3FCurScript], a ret Mansion3Script_52204: ld hl, wCurrentMapScriptFlags bit 5, [hl] res 5, [hl] ret z CheckEvent EVENT_MANSION_SWITCH_ON jr nz, .asm_52224 ld a, $e lb bc, 2, 7 call Mansion2Script_5202f ld a, $5f lb bc, 5, 7 call Mansion2Script_5202f ret .asm_52224 ld a, $5f lb bc, 2, 7 call Mansion2Script_5202f ld a, $e lb bc, 5, 7 call Mansion2Script_5202f ret PokemonMansion3F_ScriptPointers: dw Mansion3Script0 dw DisplayEnemyTrainerTextAndStartBattle dw EndTrainerBattle Mansion3Script0: ld hl, CoordsData_52254 call Mansion3Script_5225b ld a, [wWhichDungeonWarp] and a jp z, CheckFightingMapTrainers cp $3 ld a, POKEMON_MANSION_1F jr nz, .asm_52250 ld a, POKEMON_MANSION_2F .asm_52250 ld [wDungeonWarpDestinationMap], a ret CoordsData_52254: db $0E,$10 db $0E,$11 db $0E,$13 db $FF Mansion3Script_5225b: xor a ld [wWhichDungeonWarp], a ld a, [wd72d] bit 4, a ret nz call ArePlayerCoordsInArray ret nc ld a, [wCoordIndex] ld [wWhichDungeonWarp], a ld hl, wd72d set 4, [hl] ld hl, wd732 set 4, [hl] ret Mansion3Script_Switches:: ld a, [wSpritePlayerStateData1FacingDirection] cp SPRITE_FACING_UP ret nz xor a ldh [hJoyHeld], a ld a, $6 ldh [hSpriteIndexOrTextID], a jp DisplayTextID PokemonMansion3F_TextPointers: dw Mansion3Text1 dw Mansion3Text2 dw PickUpItemText dw PickUpItemText dw Mansion3Text5 dw Mansion3Text6 Mansion3TrainerHeader0: dbEventFlagBit EVENT_BEAT_MANSION_3_TRAINER_0 db ($0 << 4) ; trainer's view range dwEventFlagAddress EVENT_BEAT_MANSION_3_TRAINER_0 dw Mansion3BattleText1 ; TextBeforeBattle dw Mansion3AfterBattleText1 ; TextAfterBattle dw Mansion3EndBattleText1 ; TextEndBattle dw Mansion3EndBattleText1 ; TextEndBattle Mansion3TrainerHeader1: dbEventFlagBit EVENT_BEAT_MANSION_3_TRAINER_1 db ($2 << 4) ; trainer's view range dwEventFlagAddress EVENT_BEAT_MANSION_3_TRAINER_1 dw Mansion3BattleText2 ; TextBeforeBattle dw Mansion3AfterBattleText2 ; TextAfterBattle dw Mansion3EndBattleText2 ; TextEndBattle dw Mansion3EndBattleText2 ; TextEndBattle db $ff Mansion3Text1: text_asm ld hl, Mansion3TrainerHeader0 call TalkToTrainer jp TextScriptEnd Mansion3Text2: text_asm ld hl, Mansion3TrainerHeader1 call TalkToTrainer jp TextScriptEnd Mansion3BattleText1: text_far _Mansion3BattleText1 text_end Mansion3EndBattleText1: text_far _Mansion3EndBattleText1 text_end Mansion3AfterBattleText1: text_far _Mansion3AfterBattleText1 text_end Mansion3BattleText2: text_far _Mansion3BattleText2 text_end Mansion3EndBattleText2: text_far _Mansion3EndBattleText2 text_end Mansion3AfterBattleText2: text_far _Mansion3AfterBattleText2 text_end Mansion3Text5: text_far _Mansion3Text5 text_end