summaryrefslogtreecommitdiff
path: root/scripts/pokemontower7.asm
diff options
context:
space:
mode:
authorU-Fish-PC\Daniel <corrnondacqb@yahoo.com>2014-05-18 14:19:10 -0400
committerU-Fish-PC\Daniel <corrnondacqb@yahoo.com>2014-05-18 14:19:10 -0400
commit24c01b09bb2b617812bd826d1cf9ab5e3ec6a023 (patch)
tree07d2ed81b23de081f2003d9f8d50170344dd5ada /scripts/pokemontower7.asm
parent4e4e72d02a5a202daea3a73363d2a4c3ba34e724 (diff)
Pull map scripts out of main.asm
Diffstat (limited to 'scripts/pokemontower7.asm')
-rwxr-xr-xscripts/pokemontower7.asm282
1 files changed, 282 insertions, 0 deletions
diff --git a/scripts/pokemontower7.asm b/scripts/pokemontower7.asm
new file mode 100755
index 00000000..6dddebb2
--- /dev/null
+++ b/scripts/pokemontower7.asm
@@ -0,0 +1,282 @@
+PokemonTower7Script: ; 60d05 (18:4d05)
+ call EnableAutoTextBoxDrawing
+ ld hl, PokemonTower7TrainerHeaders
+ ld de, PokemonTower7ScriptPointers
+ ld a, [W_POKEMONTOWER7CURSCRIPT]
+ call ExecuteCurMapScriptInTable
+ ld [W_POKEMONTOWER7CURSCRIPT], a
+ ret
+
+PokemonTower7Script_60d18: ; 60d18 (18:4d18)
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [W_POKEMONTOWER7CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+PokemonTower7ScriptPointers: ; 60d23 (18:4d23)
+ dw CheckFightingMapTrainers
+ dw Func_324c
+ dw PokemonTower7Script2
+ dw PokemonTower7Script3
+ dw PokemonTower7Script4
+
+PokemonTower7Script2: ; 60d23 (18:4d23)
+ ld hl, wFlags_0xcd60
+ res 0, [hl]
+ ld a, [W_ISINBATTLE] ; $d057
+ cp $ff
+ jp z, PokemonTower7Script_60d18
+ call EndTrainerBattle
+ ld a, $f0
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, [$cf13]
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ call DisplayTextID
+ call PokemonTower7Script_60db6
+ ld a, $3
+ ld [W_POKEMONTOWER7CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+PokemonTower7Script3: ; 60d56 (18:4d56)
+ ld a, [$d730]
+ bit 0, a
+ ret nz
+ ld hl, W_MISSABLEOBJECTLIST
+ ld a, [$cf13]
+ ld b, a
+.missableObjectsListLoop
+ ld a, [hli]
+ cp b ; search for sprite ID in missing objects list
+ ld a, [hli]
+ jr nz, .missableObjectsListLoop
+ ld [$cc4d], a ; remove missable object
+ ld a, $11
+ call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
+ xor a
+ ld [wJoypadForbiddenButtonsMask], a
+ ld [$cf13], a
+ ld [wTrainerHeaderFlagBit], a
+ ld [$da38], a
+ ld a, $0
+ ld [W_POKEMONTOWER7CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+PokemonTower7Script4: ; 60d86 (18:4d86)
+ ld a, $ff
+ ld [wJoypadForbiddenButtonsMask], a
+ ld a, $43
+ ld [$cc4d], a
+ ld a, $11
+ call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7))
+ ld a, $4
+ ld [$c109], a
+ ld a, $95
+ ld [H_DOWNARROWBLINKCNT1], a ; $ff8b
+ ld a, $1
+ ld [$d42f], a
+ ld a, $4
+ ld [$d365], a
+ ld hl, $d72d
+ set 3, [hl]
+ ld a, $0
+ ld [W_POKEMONTOWER7CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ ret
+
+PokemonTower7Script_60db6: ; 60db6 (18:4db6)
+ ld hl, CoordsData_60de3 ; $4de3
+ ld a, [$cf13]
+ dec a
+ swap a
+ ld d, $0
+ ld e, a
+ add hl, de
+ ld a, [W_YCOORD] ; $d361
+ ld b, a
+ ld a, [W_XCOORD] ; $d362
+ ld c, a
+.asm_60dcb
+ ld a, [hli]
+ cp b
+ jr nz, .asm_60dde
+ ld a, [hli]
+ cp c
+ jr nz, .asm_60ddf
+ ld a, [hli]
+ ld d, [hl]
+ ld e, a
+ ld a, [$cf13]
+ ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ jp MoveSprite
+.asm_60dde
+ inc hl
+.asm_60ddf
+ inc hl
+ inc hl
+ jr .asm_60dcb
+
+CoordsData_60de3: ; 60de3 (18:4de3)
+ db $0C,$09
+ dw MovementData_60e13
+ db $0B,$0A
+ dw MovementData_60e1b
+ db $0B,$0B
+ dw MovementData_60e22
+ db $0B,$0C
+ dw MovementData_60e22
+ db $0A,$0C
+ dw MovementData_60e28
+ db $09,$0B
+ dw MovementData_60e30
+ db $09,$0A
+ dw MovementData_60e22
+ db $09,$09
+ dw MovementData_60e22
+ db $08,$09
+ dw MovementData_60e37
+ db $07,$0A
+ dw MovementData_60e22
+ db $07,$0B
+ dw MovementData_60e22
+ db $07,$0C
+ dw MovementData_60e22
+
+MovementData_60e13: ; 60e13
+ db $C0,$00,$00,$00,$00,$00,$80,$FF
+
+MovementData_60e1b: ; 60e1b
+ db $00,$C0,$00,$00,$00,$00,$FF
+
+MovementData_60e22: ; 60e22
+ db $00,$00,$00,$00,$00,$FF
+
+MovementData_60e28: ; 60e28
+ db $80,$00,$00,$00,$00,$00,$00,$FF
+
+MovementData_60e30: ; 60e30
+ db $00,$00,$00,$80,$00,$00,$FF
+
+MovementData_60e37: ; 60e37
+ db $C0,$00,$00,$00,$00,$00,$00,$FF
+
+PokemonTower7TextPointers: ; 60e3f (18:4e3f)
+ dw PokemonTower7Text1
+ dw PokemonTower7Text2
+ dw PokemonTower7Text3
+ dw PokemonTower7Text4
+
+PokemonTower7TrainerHeaders: ; 60e47 (18:4e47)
+PokemonTower7TrainerHeader0: ; 60e47 (18:4e47)
+ db $1 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d769 ; flag's byte
+ dw PokemonTower7BattleText1 ; 0x4ec9 TextBeforeBattle
+ dw PokemonTower7AfterBattleText1 ; 0x4ed3 TextAfterBattle
+ dw PokemonTower7EndBattleText1 ; 0x4ece TextEndBattle
+ dw PokemonTower7EndBattleText1 ; 0x4ece TextEndBattle
+
+PokemonTower7TrainerHeader1: ; 60e53 (18:4e53)
+ db $2 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d769 ; flag's byte
+ dw PokemonTower7BattleText2 ; 0x4ed8 TextBeforeBattle
+ dw PokemonTower7AfterBattleText2 ; 0x4ee2 TextAfterBattle
+ dw PokemonTower7EndBattleText2 ; 0x4edd TextEndBattle
+ dw PokemonTower7EndBattleText2 ; 0x4edd TextEndBattle
+
+PokemonTower7TrainerHeader2: ; 60e5f (18:4e5f)
+ db $3 ; flag's bit
+ db ($3 << 4) ; trainer's view range
+ dw $d769 ; flag's byte
+ dw PokemonTower7BattleText3 ; 0x4ee7 TextBeforeBattle
+ dw PokemonTower7AfterBattleText3 ; 0x4ef1 TextAfterBattle
+ dw PokemonTower7EndBattleText3 ; 0x4eec TextEndBattle
+ dw PokemonTower7EndBattleText3 ; 0x4eec TextEndBattle
+
+ db $ff
+
+PokemonTower7Text1: ; 60e6c (18:4e6c)
+ db $08 ; asm
+ ld hl, PokemonTower7TrainerHeader0
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PokemonTower7Text2: ; 60e76 (18:4e76)
+ db $08 ; asm
+ ld hl, PokemonTower7TrainerHeader1
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PokemonTower7Text3: ; 60e80 (18:4e80)
+ db $08 ; asm
+ ld hl, PokemonTower7TrainerHeader2
+ call TalkToTrainer
+ jp TextScriptEnd
+
+PokemonTower7Text4: ; 60e8a (18:4e8a)
+ db $08 ; asm
+ ld hl, PokemonTower7Text_60ec4
+ call PrintText
+ ld hl, $d7e0
+ set 7, [hl]
+ ld hl, $d769
+ set 7, [hl]
+ ld a, $44
+ ld [$cc4d], a
+ ld a, $15
+ call Predef
+ ld a, $17
+ ld [$cc4d], a
+ ld a, $11
+ call Predef
+ ld a, $18
+ ld [$cc4d], a
+ ld a, $15
+ call Predef
+ ld a, $4
+ ld [W_POKEMONTOWER7CURSCRIPT], a
+ ld [W_CURMAPSCRIPT], a
+ jp TextScriptEnd
+
+PokemonTower7Text_60ec4: ; 60ec4 (18:4ec4)
+ TX_FAR _PokemonTower7Text_60ec4
+ db "@"
+
+PokemonTower7BattleText1: ; 60ec9 (18:4ec9)
+ TX_FAR _PokemonTower7BattleText1
+ db "@"
+
+PokemonTower7EndBattleText1: ; 60ece (18:4ece)
+ TX_FAR _PokemonTower7EndBattleText1
+ db "@"
+
+PokemonTower7AfterBattleText1: ; 60ed3 (18:4ed3)
+ TX_FAR _PokemonTower7AfterBattleText1
+ db "@"
+
+PokemonTower7BattleText2: ; 60ed8 (18:4ed8)
+ TX_FAR _PokemonTower7BattleText2
+ db "@"
+
+PokemonTower7EndBattleText2: ; 60edd (18:4edd)
+ TX_FAR _PokemonTower7EndBattleText2
+ db "@"
+
+PokemonTower7AfterBattleText2: ; 60ee2 (18:4ee2)
+ TX_FAR _PokemonTower7AfterBattleText2
+ db "@"
+
+PokemonTower7BattleText3: ; 60ee7 (18:4ee7)
+ TX_FAR _PokemonTower7BattleText3
+ db "@"
+
+PokemonTower7EndBattleText3: ; 60eec (18:4eec)
+ TX_FAR _PokemonTower7EndBattleText3
+ db "@"
+
+PokemonTower7AfterBattleText3: ; 60ef1 (18:4ef1)
+ TX_FAR _PokemonTower7AfterBattleText3
+ db "@"