2014-05-18 18:19:10 +00:00
|
|
|
PokemonTower2Script: ; 604f2 (18:44f2)
|
|
|
|
call EnableAutoTextBoxDrawing
|
|
|
|
ld hl, PokemonTower2ScriptPointers
|
|
|
|
ld a, [W_POKEMONTOWER2CURSCRIPT]
|
|
|
|
jp CallFunctionInTable
|
|
|
|
|
|
|
|
PokemonTower2Script_604fe: ; 604fe (18:44fe)
|
|
|
|
xor a
|
2014-05-25 17:51:53 +00:00
|
|
|
ld [wJoyIgnore], a
|
2014-05-18 18:19:10 +00:00
|
|
|
ld [W_POKEMONTOWER2CURSCRIPT], a
|
|
|
|
ld [W_CURMAPSCRIPT], a
|
|
|
|
ret
|
|
|
|
|
|
|
|
PokemonTower2ScriptPointers: ; 60509 (18:4509)
|
|
|
|
dw PokemonTower2Script0
|
|
|
|
dw PokemonTower2Script1
|
|
|
|
dw PokemonTower2Script2
|
|
|
|
|
|
|
|
PokemonTower2Script0: ; 6050f (18:450f)
|
2015-07-21 17:36:03 +00:00
|
|
|
CheckEvent EVENT_BEAT_POKEMON_TOWER_RIVAL
|
2014-05-18 18:19:10 +00:00
|
|
|
ret nz
|
2015-07-03 19:38:12 +00:00
|
|
|
ld hl, CoordsData_6055e
|
2014-05-18 18:19:10 +00:00
|
|
|
call ArePlayerCoordsInArray
|
|
|
|
ret nc
|
|
|
|
ld a, $ff
|
2014-05-26 21:04:56 +00:00
|
|
|
ld [wc0ee], a
|
2014-05-18 18:19:10 +00:00
|
|
|
call PlaySound
|
|
|
|
ld c, BANK(Music_MeetRival)
|
|
|
|
ld a, MUSIC_MEET_RIVAL
|
|
|
|
call PlayMusic
|
2015-07-21 17:36:03 +00:00
|
|
|
ResetEvent EVENT_POKEMON_TOWER_RIVAL_ON_LEFT
|
2015-07-18 15:17:29 +00:00
|
|
|
ld a, [wCoordIndex]
|
2014-05-18 18:19:10 +00:00
|
|
|
cp $1
|
2015-07-20 00:52:26 +00:00
|
|
|
ld a, PLAYER_DIR_UP
|
2015-07-17 07:52:25 +00:00
|
|
|
ld b, SPRITE_FACING_DOWN
|
2015-07-03 19:38:12 +00:00
|
|
|
jr nz, .asm_60544
|
2015-07-21 17:36:03 +00:00
|
|
|
; the rival is on the left side and the player is on the right side
|
|
|
|
SetEvent EVENT_POKEMON_TOWER_RIVAL_ON_LEFT
|
2015-07-20 00:52:26 +00:00
|
|
|
ld a, PLAYER_DIR_LEFT
|
2015-07-17 07:52:25 +00:00
|
|
|
ld b, SPRITE_FACING_RIGHT
|
2014-05-18 18:19:10 +00:00
|
|
|
.asm_60544
|
2015-07-20 00:52:26 +00:00
|
|
|
ld [wPlayerMovingDirection], a
|
2014-05-18 18:19:10 +00:00
|
|
|
ld a, $1
|
2015-07-18 15:17:29 +00:00
|
|
|
ld [H_SPRITEINDEX], a
|
2014-05-18 18:19:10 +00:00
|
|
|
ld a, b
|
2015-07-18 15:17:29 +00:00
|
|
|
ld [hSpriteFacingDirection], a
|
2014-09-10 03:55:19 +00:00
|
|
|
call SetSpriteFacingDirectionAndDelay
|
2014-05-18 18:19:10 +00:00
|
|
|
ld a, $1
|
2015-07-18 15:17:29 +00:00
|
|
|
ld [hSpriteIndexOrTextID], a
|
2014-05-18 18:19:10 +00:00
|
|
|
call DisplayTextID
|
|
|
|
xor a
|
2014-05-25 17:51:53 +00:00
|
|
|
ld [hJoyHeld], a
|
|
|
|
ld [hJoyPressed], a
|
2014-05-18 18:19:10 +00:00
|
|
|
ret
|
|
|
|
|
|
|
|
CoordsData_6055e: ; 6055e (18:455e)
|
|
|
|
db $05,$0F
|
|
|
|
db $06,$0E
|
|
|
|
db $0F ; isn't this supposed to end in $ff?
|
|
|
|
|
|
|
|
PokemonTower2Script1: ; 60563 (18:4563)
|
2014-05-26 21:04:56 +00:00
|
|
|
ld a, [W_ISINBATTLE]
|
2014-05-18 18:19:10 +00:00
|
|
|
cp $ff
|
|
|
|
jp z, PokemonTower2Script_604fe
|
|
|
|
ld a, $f0
|
2014-05-25 17:51:53 +00:00
|
|
|
ld [wJoyIgnore], a
|
2015-07-21 17:36:03 +00:00
|
|
|
SetEvent EVENT_BEAT_POKEMON_TOWER_RIVAL
|
2014-05-18 18:19:10 +00:00
|
|
|
ld a, $1
|
2015-07-18 15:17:29 +00:00
|
|
|
ld [hSpriteIndexOrTextID], a
|
2014-05-18 18:19:10 +00:00
|
|
|
call DisplayTextID
|
|
|
|
ld de, MovementData_605b2
|
2015-07-21 17:36:03 +00:00
|
|
|
CheckEvent EVENT_POKEMON_TOWER_RIVAL_ON_LEFT
|
2015-07-03 19:38:12 +00:00
|
|
|
jr nz, .asm_60589
|
2014-05-18 18:19:10 +00:00
|
|
|
ld de, MovementData_605a9
|
|
|
|
.asm_60589
|
|
|
|
ld a, $1
|
2015-07-18 15:17:29 +00:00
|
|
|
ld [H_SPRITEINDEX], a
|
2014-05-18 18:19:10 +00:00
|
|
|
call MoveSprite
|
|
|
|
ld a, $ff
|
2014-05-26 21:04:56 +00:00
|
|
|
ld [wc0ee], a
|
2014-05-18 18:19:10 +00:00
|
|
|
call PlaySound
|
2014-05-19 14:38:20 +00:00
|
|
|
callba Music_RivalAlternateStart
|
2014-05-18 18:19:10 +00:00
|
|
|
ld a, $2
|
|
|
|
ld [W_POKEMONTOWER2CURSCRIPT], a
|
|
|
|
ld [W_CURMAPSCRIPT], a
|
|
|
|
ret
|
|
|
|
|
|
|
|
MovementData_605a9: ; 605a9 (18:45a9)
|
2015-07-17 07:52:25 +00:00
|
|
|
db NPC_MOVEMENT_RIGHT
|
|
|
|
db NPC_MOVEMENT_DOWN
|
|
|
|
db NPC_MOVEMENT_DOWN
|
|
|
|
db NPC_MOVEMENT_RIGHT
|
|
|
|
db NPC_MOVEMENT_DOWN
|
|
|
|
db NPC_MOVEMENT_DOWN
|
|
|
|
db NPC_MOVEMENT_RIGHT
|
|
|
|
db NPC_MOVEMENT_RIGHT
|
|
|
|
db $FF
|
2014-05-18 18:19:10 +00:00
|
|
|
|
|
|
|
MovementData_605b2: ; 605b2 (18:45b2)
|
2015-07-17 07:52:25 +00:00
|
|
|
db NPC_MOVEMENT_DOWN
|
|
|
|
db NPC_MOVEMENT_DOWN
|
|
|
|
db NPC_MOVEMENT_RIGHT
|
|
|
|
db NPC_MOVEMENT_RIGHT
|
|
|
|
db NPC_MOVEMENT_RIGHT
|
|
|
|
db NPC_MOVEMENT_RIGHT
|
|
|
|
db NPC_MOVEMENT_DOWN
|
|
|
|
db NPC_MOVEMENT_DOWN
|
|
|
|
db $FF
|
2014-05-18 18:19:10 +00:00
|
|
|
|
|
|
|
PokemonTower2Script2: ; 605bb (18:45bb)
|
2014-05-26 21:04:56 +00:00
|
|
|
ld a, [wd730]
|
2014-05-18 18:19:10 +00:00
|
|
|
bit 0, a
|
|
|
|
ret nz
|
2014-09-25 23:21:49 +00:00
|
|
|
ld a, HS_POKEMONTOWER_2_RIVAL
|
2014-05-26 21:04:56 +00:00
|
|
|
ld [wcc4d], a
|
2014-06-16 20:57:26 +00:00
|
|
|
predef HideObject
|
2014-05-18 18:19:10 +00:00
|
|
|
xor a
|
2014-05-25 17:51:53 +00:00
|
|
|
ld [wJoyIgnore], a
|
2014-09-10 03:55:19 +00:00
|
|
|
call PlayDefaultMusic
|
2014-05-18 18:19:10 +00:00
|
|
|
ld a, $0
|
|
|
|
ld [W_POKEMONTOWER2CURSCRIPT], a
|
|
|
|
ld [W_CURMAPSCRIPT], a
|
|
|
|
ret
|
|
|
|
|
|
|
|
PokemonTower2TextPointers: ; 605db (18:45db)
|
|
|
|
dw PokemonTower2Text1
|
|
|
|
dw PokemonTower2Text2
|
|
|
|
|
|
|
|
PokemonTower2Text1: ; 605df (18:45df)
|
2015-07-03 19:58:50 +00:00
|
|
|
TX_ASM
|
2015-07-21 17:36:03 +00:00
|
|
|
CheckEvent EVENT_BEAT_POKEMON_TOWER_RIVAL
|
2015-07-03 19:38:12 +00:00
|
|
|
jr z, .asm_16f24
|
2014-05-18 18:19:10 +00:00
|
|
|
ld hl, PokemonTower2Text_6063c
|
|
|
|
call PrintText
|
2015-07-03 19:38:12 +00:00
|
|
|
jr .asm_41852
|
|
|
|
.asm_16f24
|
2014-05-18 18:19:10 +00:00
|
|
|
ld hl, PokemonTower2Text_6062d
|
|
|
|
call PrintText
|
2014-05-26 21:04:56 +00:00
|
|
|
ld hl, wd72d
|
2014-05-18 18:19:10 +00:00
|
|
|
set 6, [hl]
|
|
|
|
set 7, [hl]
|
|
|
|
ld hl, PokemonTower2Text_60632
|
2015-07-03 19:38:12 +00:00
|
|
|
ld de, PokemonTower2Text_60637
|
2014-09-14 18:29:18 +00:00
|
|
|
call SaveEndBattleTextPointers
|
2014-05-18 18:19:10 +00:00
|
|
|
ld a, SONY2 + $c8
|
|
|
|
ld [W_CUROPPONENT], a
|
|
|
|
|
|
|
|
; select which team to use during the encounter
|
|
|
|
ld a, [W_RIVALSTARTER]
|
2014-05-21 12:48:30 +00:00
|
|
|
cp STARTER2
|
2015-07-03 19:38:12 +00:00
|
|
|
jr nz, .NotSquirtle
|
2014-05-18 18:19:10 +00:00
|
|
|
ld a, $4
|
|
|
|
jr .done
|
2015-07-03 19:38:12 +00:00
|
|
|
.NotSquirtle
|
2014-05-21 12:48:30 +00:00
|
|
|
cp STARTER3
|
2015-07-03 19:38:12 +00:00
|
|
|
jr nz, .Charmander
|
2014-05-18 18:19:10 +00:00
|
|
|
ld a, $5
|
|
|
|
jr .done
|
2015-07-03 19:38:12 +00:00
|
|
|
.Charmander
|
2014-05-18 18:19:10 +00:00
|
|
|
ld a, $6
|
|
|
|
.done
|
|
|
|
ld [W_TRAINERNO], a
|
|
|
|
|
|
|
|
ld a, $1
|
|
|
|
ld [W_POKEMONTOWER2CURSCRIPT], a
|
|
|
|
ld [W_CURMAPSCRIPT], a
|
2015-07-03 19:38:12 +00:00
|
|
|
.asm_41852
|
2014-05-18 18:19:10 +00:00
|
|
|
jp TextScriptEnd
|
|
|
|
|
|
|
|
PokemonTower2Text_6062d: ; 6062d (18:462d)
|
|
|
|
TX_FAR _PokemonTower2Text_6062d
|
|
|
|
db "@"
|
|
|
|
|
|
|
|
PokemonTower2Text_60632: ; 60632 (18:4632)
|
|
|
|
TX_FAR _PokemonTower2Text_60632
|
|
|
|
db "@"
|
|
|
|
|
|
|
|
PokemonTower2Text_60637: ; 60637 (18:4637)
|
|
|
|
TX_FAR _PokemonTower2Text_60637
|
|
|
|
db "@"
|
|
|
|
|
|
|
|
PokemonTower2Text_6063c: ; 6063c (18:463c)
|
|
|
|
TX_FAR _PokemonTower2Text_6063c
|
|
|
|
db "@"
|
|
|
|
|
|
|
|
PokemonTower2Text2: ; 60641 (18:4641)
|
|
|
|
TX_FAR _PokemonTower2Text2
|
|
|
|
db "@"
|