diff options
Diffstat (limited to 'scripts/PokemonMansionB1F.asm')
-rwxr-xr-x | scripts/PokemonMansionB1F.asm | 130 |
1 files changed, 130 insertions, 0 deletions
diff --git a/scripts/PokemonMansionB1F.asm b/scripts/PokemonMansionB1F.asm new file mode 100755 index 00000000..0a668c09 --- /dev/null +++ b/scripts/PokemonMansionB1F.asm @@ -0,0 +1,130 @@ +PokemonMansionB1F_Script: + call Mansion4Script_523cf + call EnableAutoTextBoxDrawing + ld hl, Mansion4TrainerHeader0 + ld de, PokemonMansionB1F_ScriptPointers + ld a, [wPokemonMansionB1FCurScript] + call ExecuteCurMapScriptInTable + ld [wPokemonMansionB1FCurScript], a + ret + +Mansion4Script_523cf: + ld hl, wCurrentMapScriptFlags + bit 5, [hl] + res 5, [hl] + ret z + CheckEvent EVENT_MANSION_SWITCH_ON + jr nz, .asm_523ff + ld a, $e + ld bc, $80d + call Mansion2Script_5202f + ld a, $e + ld bc, $b06 + call Mansion2Script_5202f + ld a, $5f + ld bc, $304 + call Mansion2Script_5202f + ld a, $54 + ld bc, $808 + call Mansion2Script_5202f + ret +.asm_523ff + ld a, $2d + ld bc, $80d + call Mansion2Script_5202f + ld a, $5f + ld bc, $b06 + call Mansion2Script_5202f + ld a, $e + ld bc, $304 + call Mansion2Script_5202f + ld a, $e + ld bc, $808 + call Mansion2Script_5202f + ret + +Mansion4Script_Switches: + ld a, [wSpritePlayerStateData1FacingDirection] + cp SPRITE_FACING_UP + ret nz + xor a + ld [hJoyHeld], a + ld a, $9 + ld [hSpriteIndexOrTextID], a + jp DisplayTextID + +PokemonMansionB1F_ScriptPointers: + dw CheckFightingMapTrainers + dw DisplayEnemyTrainerTextAndStartBattle + dw EndTrainerBattle + +PokemonMansionB1F_TextPointers: + dw Mansion4Text1 + dw Mansion4Text2 + dw PickUpItemText + dw PickUpItemText + dw PickUpItemText + dw PickUpItemText + dw Mansion4Text7 + dw PickUpItemText + dw Mansion3Text6 + +Mansion4TrainerHeader0: + dbEventFlagBit EVENT_BEAT_MANSION_4_TRAINER_0 + db ($0 << 4) ; trainer's view range + dwEventFlagAddress EVENT_BEAT_MANSION_4_TRAINER_0 + dw Mansion4BattleText1 ; TextBeforeBattle + dw Mansion4AfterBattleText1 ; TextAfterBattle + dw Mansion4EndBattleText1 ; TextEndBattle + dw Mansion4EndBattleText1 ; TextEndBattle + +Mansion4TrainerHeader1: + dbEventFlagBit EVENT_BEAT_MANSION_4_TRAINER_1 + db ($3 << 4) ; trainer's view range + dwEventFlagAddress EVENT_BEAT_MANSION_4_TRAINER_1 + dw Mansion4BattleText2 ; TextBeforeBattle + dw Mansion4AfterBattleText2 ; TextAfterBattle + dw Mansion4EndBattleText2 ; TextEndBattle + dw Mansion4EndBattleText2 ; TextEndBattle + + db $ff + +Mansion4Text1: + TX_ASM + ld hl, Mansion4TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +Mansion4Text2: + TX_ASM + ld hl, Mansion4TrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +Mansion4BattleText1: + TX_FAR _Mansion4BattleText1 + db "@" + +Mansion4EndBattleText1: + TX_FAR _Mansion4EndBattleText1 + db "@" + +Mansion4AfterBattleText1: + TX_FAR _Mansion4AfterBattleText1 + db "@" + +Mansion4BattleText2: + TX_FAR _Mansion4BattleText2 + db "@" + +Mansion4EndBattleText2: + TX_FAR _Mansion4EndBattleText2 + db "@" + +Mansion4AfterBattleText2: + TX_FAR _Mansion4AfterBattleText2 + db "@" + +Mansion4Text7: + TX_FAR _Mansion4Text7 + db "@" |