diff options
1033 files changed, 58300 insertions, 59531 deletions
diff --git a/constants/palette_constants.asm b/constants/palette_constants.asm index 56e48080..669c5296 100644 --- a/constants/palette_constants.asm +++ b/constants/palette_constants.asm @@ -13,8 +13,8 @@ PAL_INDIGO EQU $0A PAL_SAFFRON EQU $0B PAL_TOWNMAP EQU $0C PAL_LOGO1 EQU $0D -; XXX -PAL_LOGO2 EQU $0F +PAL_LOGO2 EQU $0E +;PAL_0F EQU $0F PAL_MEWMON EQU $10 PAL_BLUEMON EQU $11 PAL_REDMON EQU $12 @@ -35,4 +35,4 @@ PAL_YELLOWBAR EQU $20 PAL_REDBAR EQU $21 PAL_BADGE EQU $22 PAL_CAVE EQU $23 -; XXX
\ No newline at end of file +PAL_GAMEFREAK EQU $24
\ No newline at end of file diff --git a/data/animations.asm b/data/animations.asm new file mode 100755 index 00000000..a9d22e54 --- /dev/null +++ b/data/animations.asm @@ -0,0 +1,3628 @@ +AttackAnimationPointers: ; 7a07d (1e:607d) + dw PoundAnim + dw KarateChopAnim + dw DoubleSlapAnim + dw CometPunchAnim + dw MegaPunchAnim + dw PayDayAnim + dw FirePunchAnim + dw IcePunchAnim + dw ThunderPunchAnim + dw ScratchAnim + dw VicegripAnim + dw GuillotineAnim + dw RazorWindAnim + dw SwordsDanceAnim + dw CutAnim + dw GustAnim + dw WingAttackAnim + dw WhirlwindAnim + dw FlyAnim + dw BindAnim + dw SlamAnim + dw VineWhipAnim + dw StompAnim + dw DoubleKickAnim + dw MegaKickAnim + dw JumpKickAnim + dw RollingKickAnim + dw SandAttackAnim + dw HeatButtAnim + dw HornAttackAnim + dw FuryAttackAnim + dw HornDrillAnim + dw TackleAnim + dw BodySlamAnim + dw WrapAnim + dw TakeDownAnim + dw ThrashAnim + dw DoubleEdgeAnim + dw TailWhipAnim + dw PoisonStingAnim + dw TwineedleAnim + dw PinMissileAnim + dw LeerAnim + dw BiteAnim + dw GrowlAnim + dw RoarAnim + dw SingAnim + dw SupersonicAnim + dw SonicBoomAnim + dw DisableAnim + dw AcidAnim + dw EmberAnim + dw FlamethrowerAnim + dw MistAnim + dw WaterGunAnim + dw HydroPumpAnim + dw SurfAnim + dw IceBeamAnim + dw BlizzardAnim + dw PsyBeamAnim + dw BubbleBeamAnim + dw AuroraBeamAnim + dw HyperBeamAnim + dw PeckAnim + dw DrillPeckAnim + dw SubmissionAnim + dw LowKickAnim + dw CounterAnim + dw SeismicTossAnim + dw StrengthAnim + dw AbsorbAnim + dw MegaDrainAnim + dw LeechSeedAnim + dw GrowthAnim + dw RazorLeafAnim + dw SolarBeamAnim + dw PoisonPowderAnim + dw StunSporeAnim + dw SleepPowderAnim + dw PedalDanceAnim + dw StringShotAnim + dw DragonRageAnim + dw FireSpinAnim + dw ThunderShockAnim + dw ThunderBoltAnim + dw ThunderWaveAnim + dw ThunderAnim + dw RockThrowAnim + dw EarthquakeAnim + dw FissureAnim + dw DigAnim + dw ToxicAnim + dw ConfusionAnim + dw PsychicAnim + dw HypnosisAnim + dw MeditateAnim + dw AgilityAnim + dw QuickAttackAnim + dw RageAnim + dw TeleportAnim + dw NightShadeAnim + dw MimicAnim + dw ScreechAnim + dw DoubleTeamAnim + dw RecoverAnim + dw HardenAnim + dw MinimizeAnim + dw SmokeScreenAnim + dw ConfuseRayAnim + dw WithdrawAnim + dw DefenseCurlAnim + dw BarrierAnim + dw LightScreenAnim + dw HazeAnim + dw ReflectAnim + dw FocusEnergyAnim + dw BideAnim + dw MetronomeAnim + dw MirrorMoveAnim + dw SelfdestructAnim + dw EggBombAnim + dw LickAnim + dw SmogAnim + dw SludgeAnim + dw BoneClubAnim + dw FireBlastAnim + dw WaterfallAnim + dw ClampAnim + dw SwiftAnim + dw SkullBashAnim + dw SpikeCannonAnim + dw ConstrictAnim + dw AmnesiaAnim + dw KinesisAnim + dw SoftboiledAnim + dw HiJumpKickAnim + dw GlareAnim + dw DreamEaterAnim + dw PoisonGasAnim + dw BarrageAnim + dw LeechLifeAnim + dw LovelyKissAnim + dw SkyAttackAnim + dw TransformAnim + dw BubbleAnim + dw DizzyPunchAnim + dw SporeAnim + dw FlashAnim + dw PsywaveAnim + dw SplashAnim + dw AcidArmorAnim + dw CrabHammerAnim + dw ExplosionAnim + dw FurySwipesAnim + dw BonemerangAnim + dw RestAnim + dw RockSlideAnim + dw HyperFangAnim + dw SharpenAnim + dw ConversionAnim + dw TriAttackAnim + dw SuperFangAnim + dw SlashAnim + dw SubstituteAnim + dw StruggleAnim + dw ShowPicAnim + dw EnemyFlashAnim + dw PlayerFlashAnim + dw EnemyHUDShakeAnim + dw TradeBallDropAnim + dw TradeBallAppear1Anim + dw TradeBallAppear2Anim + dw TradeBallPoofAnim + dw XStatItemAnim + dw XStatItemAnim + dw ShrinkingSquareAnim + dw ShrinkingSquareAnim + dw XStatItemBlackAnim + dw XStatItemBlackAnim + dw ShrinkingSquareBlackAnim + dw ShrinkingSquareBlackAnim + dw UnusedAnim + dw UnusedAnim + dw ParalyzeAnim + dw ParalyzeAnim + dw PoisonAnim + dw PoisonAnim + dw SleepPlayerAnim + dw SleepEnemyAnim + dw ConfusedPlayerAnim + dw ConfusedEnemyAnim + dw FaintAnim + dw BallTossAnim + dw BallShakeAnim + dw BallPoofAnim + dw BallBlockAnim + dw GreatTossAnim + dw UltraTossAnim + dw ShakeScreenAnim + dw HidePicAnim + dw ThrowRockAnim + dw ThrowBaitAnim + dw ZigZagScreenAnim + +; each animation is a list of subanimations and special effects +; if first byte < $56 +; db tileset_and_delay, sound_id, subanimation_id +; if first byte >= $D8 +; db special_effect_id, sound_id +; $FF terminated +ZigZagScreenAnim: ; 7a213 (1e:6213) + db SE_WAVY_SCREEN, $FF + db $FF + +PoundAnim: ; 7a216 (1e:6216) +StruggleAnim: ; 7a216 (1e:6216) + db $08,$00,$01 + db $FF + +KarateChopAnim: ; 7a21a (1e:621a) + db $08,$01,$03 + db $FF + +DoubleSlapAnim: ; 7a21e (1e:621e) + db $05,$02,$01 + db $05,$02,$01 + db $FF + +CometPunchAnim: ; 7a225 (1e:6225) + db $04,$03,$02 + db $04,$03,$02 + db $FF + +MegaPunchAnim: ; 7a22c (1e:622c) + db $46,$04,$04 + db $FF + +PayDayAnim: ; 7a230 (1e:6230) + db $08,$00,$01 + db $04,$05,$52 + db $FF + +FirePunchAnim: ; 7a237 (1e:6237) + db $06,$06,$02 + db $46,$FF,$11 + db $FF + +IcePunchAnim: ; 7a23e (1e:623e) + db $06,$07,$02 + db $10,$FF,$2F + db $FF + +ThunderPunchAnim: ; 7a245 (1e:6245) + db $06,$08,$02 + db SE_DARK_SCREEN_PALETTE, $FF + db $46,$FF,$2B + db SE_RESET_SCREEN_PALETTE, $FF + db $FF + +ScratchAnim: ; 7a250 (1e:6250) + db $06,$09,$0F + db $FF + +VicegripAnim: ; 7a254 (1e:6254) + db $08,$0A,$2A + db $FF + +GuillotineAnim: ; 7a258 (1e:6258) + db $06,$0B,$2A + db $FF + +RazorWindAnim: ; 7a25c (1e:625c) + db $04,$0C,$16 + db $FF + +SwordsDanceAnim: ; 7a260 (1e:6260) + db $46,$0D,$18 + db $46,$0D,$18 + db $46,$0D,$18 + db $FF + +CutAnim: ; 7a26a (1e:626a) + db SE_DARK_SCREEN_FLASH, $0E + db $04,$FF,$16 + db $FF + +GustAnim: ; 7a270 (1e:6270) + db $46,$0F,$10 + db $06,$FF,$02 + db $FF + +WingAttackAnim: ; 7a277 (1e:6277) + db $46,$10,$04 + db $FF + +WhirlwindAnim: ; 7a27b (1e:627b) + db $46,$11,$10 + db SE_SLIDE_ENEMY_MON_OUT, $FF + db $FF + +FlyAnim: ; 7a281 (1e:6281) + db $46,$12,$04 + db SE_SHOW_MON_PIC, $FF + db $FF + +BindAnim: ; 7a287 (1e:6287) + db $04,$13,$23 + db $04,$13,$23 + db $FF + +SlamAnim: ; 7a28e (1e:628e) + db $06,$14,$02 + db $FF + +VineWhipAnim: ; 7a292 (1e:6292) + db $01,$15,$16 + db $08,$FF,$01 + db $FF + +StompAnim: ; 7a299 (1e:6299) + db $48,$16,$05 + db $FF + +DoubleKickAnim: ; 7a29d (1e:629d) + db $08,$17,$01 + db $08,$17,$01 + db $FF + +MegaKickAnim: ; 7a2a4 (1e:62a4) + db $46,$18,$04 + db $FF + +JumpKickAnim: ; 7a2a8 (1e:62a8) + db $46,$19,$04 + db $FF + +RollingKickAnim: ; 7a2ac (1e:62ac) + db SE_DARK_SCREEN_FLASH, $1A + db $46,$FF,$04 + db $FF + +SandAttackAnim: ; 7a2b2 (1e:62b2) + db $46,$1B,$28 + db $FF + +HeatButtAnim: ; 7a2b6 (1e:62b6) + db $46,$1C,$05 + db $FF + +HornAttackAnim: ; 7a2ba (1e:62ba) + db $06,$1D,$45 + db $46,$FF,$05 + db $FF + +FuryAttackAnim: ; 7a2c1 (1e:62c1) + db $02,$1E,$46 + db $02,$FF,$46 + db $FF + +HornDrillAnim: ; 7a2c8 (1e:62c8) + db $42,$1F,$05 + db $42,$FF,$05 + db $42,$FF,$05 + db $42,$FF,$05 + db $42,$FF,$05 + db $FF + +TackleAnim: ; 7a2d8 (1e:62d8) + db SE_MOVE_MON_HORIZONTALLY, $48 + db SE_RESET_MON_POSITION, $FF + db $FF + +BodySlamAnim: ; 7a2dd (1e:62dd) + db SE_MOVE_MON_HORIZONTALLY, $48 + db SE_DARK_SCREEN_FLASH, $FF + db SE_DARK_SCREEN_FLASH, $FF + db SE_RESET_MON_POSITION, $FF + db $FF + +WrapAnim: ; 7a2e6 (1e:62e6) + db $04,$22,$23 + db $04,$22,$23 + db $04,$22,$23 + db $FF + +TakeDownAnim: ; 7a2f0 (1e:62f0) + db SE_MOVE_MON_HORIZONTALLY, $48 + db SE_DARK_SCREEN_FLASH, $23 + db SE_RESET_MON_POSITION, $FF + db $FF + +ThrashAnim: ; 7a2f7 (1e:62f7) + db $46,$24,$04 + db $FF + +DoubleEdgeAnim: ; 7a2fb (1e:62fb) + db SE_LIGHT_SCREEN_PALETTE, $48 + db $06,$FF,$2D + db SE_RESET_SCREEN_PALETTE, $FF + db SE_MOVE_MON_HORIZONTALLY, $FF + db SE_DARK_SCREEN_FLASH, $25 + db SE_RESET_MON_POSITION, $FF + db $FF + +TailWhipAnim: ; 7a309 (1e:6309) + db SE_MOVE_MON_HORIZONTALLY, $84 + db SE_DELAY_ANIMATION_10, $FF + db SE_RESET_MON_POSITION, $84 + db SE_DELAY_ANIMATION_10, $FF + db SE_MOVE_MON_HORIZONTALLY, $84 + db SE_DELAY_ANIMATION_10, $FF + db SE_RESET_MON_POSITION, $84 + db $FF + +PoisonStingAnim: ; 7a318 (1e:6318) + db $06,$27,$00 + db $FF + +TwineedleAnim: ; 7a31c (1e:631c) + db $05,$28,$01 + db $05,$28,$01 + db $FF + +PinMissileAnim: ; 7a323 (1e:6323) + db $03,$29,$01 + db $FF + +LeerAnim: ; 7a327 (1e:6327) + db SE_DARK_SCREEN_PALETTE, $48 + db SE_DARK_SCREEN_FLASH, $2A + db SE_DARK_SCREEN_FLASH, $2A + db SE_RESET_SCREEN_PALETTE, $FF + db $FF + +BiteAnim: ; 7a330 (1e:6330) + db $08,$2B,$02 + db $FF + +GrowlAnim: ; 7a334 (1e:6334) + db $46,$2C,$12 + db $FF + +RoarAnim: ; 7a338 (1e:6338) + db $46,$2D,$15 + db $46,$2D,$15 + db $46,$2D,$15 + db $FF + +SingAnim: ; 7a342 (1e:6342) + db $46,$2E,$12 + db $50,$FF,$40 + db $50,$FF,$40 + db $FF + +SupersonicAnim: ; 7a34c (1e:634c) + db $06,$2F,$31 + db $FF + +SonicBoomAnim: ; 7a350 (1e:6350) + db $46,$2D,$15 + db $46,$2D,$15 + db $46,$0F,$10 + db $46,$FF,$05 + db $FF + +DisableAnim: ; 7a35d (1e:635d) + db SE_DARK_SCREEN_PALETTE, $48 + db SE_DARK_SCREEN_FLASH, $2A + db SE_DARK_SCREEN_FLASH, $2A + db SE_RESET_SCREEN_PALETTE, $FF + db $FF + +AcidAnim: ; 7a366 (1e:6366) + db $46,$32,$13 + db $46,$32,$14 + db $FF + +EmberAnim: ; 7a36d (1e:636d) + db $46,$33,$11 + db $FF + +FlamethrowerAnim: ; 7a371 (1e:6371) + db $46,$34,$1F + db $46,$34,$0C + db $46,$34,$0D + db $FF + +MistAnim: ; 7a37b (1e:637b) + db SE_LIGHT_SCREEN_PALETTE, $FF + db SE_WATER_DROPLETS_EVERYWHERE, $38 + db SE_RESET_SCREEN_PALETTE, $FF + db $FF + +WaterGunAnim: ; 7a382 (1e:6382) + db $06,$36,$2C + db $FF + +HydroPumpAnim: ; 7a386 (1e:6386) + db $06,$37,$1A + db $06,$37,$1A + db $FF + +SurfAnim: ; 7a38d (1e:638d) + db SE_WATER_DROPLETS_EVERYWHERE, $38 + db $06,$37,$1A + db $FF + +IceBeamAnim: ; 7a393 (1e:6393) + db $03,$39,$2E + db $10,$FF,$2F + db $FF + +BlizzardAnim: ; 7a39a (1e:639a) + db $04,$3A,$38 + db $04,$37,$38 + db $FF + +PsyBeamAnim: ; 7a3a1 (1e:63a1) + db $03,$3B,$2E + db SE_FLASH_SCREEN_LONG, $FF + db $FF + +BubbleBeamAnim: ; 7a3a7 (1e:63a7) + db $12,$3C,$35 + db $FF + +AuroraBeamAnim: ; 7a3ab (1e:63ab) + db $03,$3D,$2E + db SE_DELAY_ANIMATION_10, $FF + db SE_DELAY_ANIMATION_10, $FF + db $FF + +HyperBeamAnim: ; 7a3b3 (1e:63b3) + db SE_DARK_SCREEN_PALETTE, $48 + db SE_SPIRAL_BALLS_INWARD, $FF + db $02,$3E,$2E + db SE_DARK_SCREEN_FLASH, $FF + db SE_DARK_SCREEN_FLASH, $FF + db $46,$04,$04 + db SE_RESET_SCREEN_PALETTE, $FF + db $FF + +PeckAnim: ; 7a3c4 (1e:63c4) + db $08,$3F,$01 + db $FF + +DrillPeckAnim: ; 7a3c8 (1e:63c8) + db $46,$40,$04 + db $FF + +SubmissionAnim: ; 7a3cc (1e:63cc) + db SE_SLIDE_MON_OUT, $41 + db $06,$FF,$01 + db SE_SHOW_MON_PIC, $FF + db $FF + +LowKickAnim: ; 7a3d4 (1e:63d4) + db SE_SLIDE_MON_OUT, $42 + db $46,$FF,$04 + db SE_SHOW_MON_PIC, $FF + db $FF + +CounterAnim: ; 7a3dc (1e:63dc) + db SE_SLIDE_MON_OUT, $43 + db $46,$FF,$04 + db SE_SHOW_MON_PIC, $FF + db $FF + +SeismicTossAnim: ; 7a3e4 (1e:63e4) + db SE_BLINK_ENEMY_MON, $FF + db $41,$8B,$4E + db SE_HIDE_ENEMY_MON_PIC, $FF + db SE_SLIDE_MON_OUT, $FF + db $42,$44,$4F + db SE_DELAY_ANIMATION_10, $FF + db SE_DELAY_ANIMATION_10, $FF + db SE_SHOW_MON_PIC, $FF + db $41,$44,$50 + db SE_SHOW_ENEMY_MON_PIC, $FF + db SE_SHAKE_SCREEN, $FF + db $FF + +StrengthAnim: ; 7a3fe (1e:63fe) + db SE_MOVE_MON_HORIZONTALLY, $48 + db SE_RESET_MON_POSITION, $FF + db $46,$06,$04 + db $FF + +AbsorbAnim: ; 7a406 (1e:6406) + db SE_LIGHT_SCREEN_PALETTE, $46 + db $06,$FF,$21 + db $06,$FF,$22 + db SE_RESET_SCREEN_PALETTE, $FF + db $FF + +MegaDrainAnim: ; 7a411 (1e:6411) + db SE_LIGHT_SCREEN_PALETTE, $47 + db SE_DARK_SCREEN_FLASH, $FF + db $06,$FF,$21 + db $06,$FF,$22 + db SE_DARK_SCREEN_FLASH, $FF + db SE_RESET_SCREEN_PALETTE, $FF + db $FF + +LeechSeedAnim: ; 7a420 (1e:6420) + db $46,$48,$1B + db $55,$4D,$1C + db $FF + +GrowthAnim: ; 7a427 (1e:6427) + db SE_LIGHT_SCREEN_PALETTE, $49 + db SE_SPIRAL_BALLS_INWARD, $FF + db SE_RESET_SCREEN_PALETTE, $FF + db $FF + +RazorLeafAnim: ; 7a42e (1e:642e) + db SE_LEAVES_FALLING, $4A + db $41,$80,$44 + db $01,$0C,$16 + db $FF + +SolarBeamAnim: ; 7a437 (1e:6437) + db $06,$4B,$2E + db $06,$FF,$01 + db $FF + +PoisonPowderAnim: ; 7a43e (1e:643e) + db $06,$4C,$36 + db $FF + +StunSporeAnim: ; 7a442 (1e:6442) + db $06,$4D,$36 + db $FF + +SleepPowderAnim: ; 7a446 (1e:6446) + db $06,$4E,$36 + db $FF + +PedalDanceAnim: ; 7a44a (1e:644a) + db SE_LIGHT_SCREEN_PALETTE, $4F + db SE_PETALS_FALLING, $FF + db SE_RESET_SCREEN_PALETTE, $FF + db $FF + +StringShotAnim: ; 7a451 (1e:6451) + db $08,$50,$37 + db $FF + +DragonRageAnim: ; 7a455 (1e:6455) + db $46,$51,$1F + db $46,$FF,$0C + db $46,$FF,$0D + db $46,$FF,$0E + db $FF + +FireSpinAnim: ; 7a462 (1e:6462) + db $46,$52,$0C + db $46,$FF,$0D + db $46,$FF,$0E + db $FF + +ThunderShockAnim: ; 7a46c (1e:646c) + db $42,$53,$29 + db $FF + +ThunderBoltAnim: ; 7a470 (1e:6470) + db $41,$54,$29 + db $41,$54,$29 + db $FF + +ThunderWaveAnim: ; 7a477 (1e:6477) + db $42,$55,$29 + db $02,$FF,$23 + db $04,$FF,$23 + db $FF + +ThunderAnim: ; 7a481 (1e:6481) + db SE_DARK_SCREEN_PALETTE, $56 + db SE_DARK_SCREEN_FLASH, $FF + db $46,$FF,$2B + db SE_DARK_SCREEN_FLASH, $FF + db $42,$54,$29 + db SE_RESET_SCREEN_PALETTE, $FF + db $FF + +RockThrowAnim: ; 7a490 (1e:6490) + db $04,$57,$30 + db $FF + +EarthquakeAnim: ; 7a494 (1e:6494) + db SE_SHAKE_SCREEN, $58 + db SE_SHAKE_SCREEN, $58 + db $FF + +FissureAnim: ; 7a499 (1e:6499) + db SE_DARK_SCREEN_FLASH, $59 + db SE_SHAKE_SCREEN, $FF + db SE_DARK_SCREEN_FLASH, $59 + db SE_SHAKE_SCREEN, $FF + db $FF + +DigAnim: ; 7a4a2 (1e:64a2) + db $46,$5A,$04 + db SE_SLIDE_MON_UP, $FF + db $FF + +ToxicAnim: ; 7a4a8 (1e:64a8) + db SE_WATER_DROPLETS_EVERYWHERE, $38 + db $46,$5B,$14 + db $FF + +ConfusionAnim: ; 7a4ae (1e:64ae) + db SE_FLASH_SCREEN_LONG, $5C + db $FF + +PsychicAnim: ; 7a4b1 (1e:64b1) + db SE_FLASH_SCREEN_LONG, $5D + db SE_WAVY_SCREEN, $FF + db $FF + +HypnosisAnim: ; 7a4b6 (1e:64b6) + db SE_FLASH_SCREEN_LONG, $5E + db $FF + +MeditateAnim: ; 7a4b9 (1e:64b9) + db SE_LIGHT_SCREEN_PALETTE, $5F + db $46,$FF,$43 + db SE_DARK_SCREEN_FLASH, $FF + db SE_RESET_SCREEN_PALETTE, $FF + db $FF + +AgilityAnim: ; 7a4c3 (1e:64c3) + db SE_LIGHT_SCREEN_PALETTE, $60 + db SE_RESET_SCREEN_PALETTE, $FF + db $FF + +QuickAttackAnim: ; 7a4c8 (1e:64c8) + db SE_SLIDE_MON_OUT, $61 + db $46,$FF,$04 + db SE_SHOW_MON_PIC, $FF + db $FF + +RageAnim: ; 7a4d0 (1e:64d0) + db $06,$62,$01 + db $FF + +TeleportAnim: ; 7a4d4 (1e:64d4) + db SE_SQUISH_MON_PIC, $63 + db SE_SHOOT_BALLS_UPWARD, $FF + db $FF + +NightShadeAnim: ; 7a4d9 (1e:64d9) + db SE_FLASH_SCREEN_LONG, $5C + db SE_WAVY_SCREEN, $FF + db $FF + +MimicAnim: ; 7a4de (1e:64de) + db $46,$65,$21 + db $46,$65,$22 + db $FF + +ScreechAnim: ; 7a4e5 (1e:64e5) + db $46,$66,$12 + db $FF + +DoubleTeamAnim: ; 7a4e9 (1e:64e9) + db SE_DARK_SCREEN_PALETTE, $FF + db SE_DELAY_ANIMATION_10, $FF + db SE_DELAY_ANIMATION_10, $FF + db SE_DARK_SCREEN_FLASH, $FF + db SE_DARK_SCREEN_FLASH, $FF + db SE_RESET_SCREEN_PALETTE, $FF + db SE_SHAKE_BACK_AND_FORTH, $67 + db SE_SHOW_MON_PIC, $FF + db $46,$6F,$33 + db $FF + +RecoverAnim: ; 7a4fd (1e:64fd) + db SE_BLINK_MON, $68 + db SE_LIGHT_SCREEN_PALETTE, $FF + db SE_SPIRAL_BALLS_INWARD, $FF + db SE_RESET_SCREEN_PALETTE, $FF + db $FF + +HardenAnim: ; 7a506 (1e:6506) + db SE_LIGHT_SCREEN_PALETTE, $69 + db $46,$FF,$43 + db SE_DARK_SCREEN_FLASH, $FF + db SE_RESET_SCREEN_PALETTE, $FF + db $FF + +MinimizeAnim: ; 7a510 (1e:6510) + db SE_LIGHT_SCREEN_PALETTE, $6A + db SE_SPIRAL_BALLS_INWARD, $FF + db SE_MINIMIZE_MON, $FF + db SE_RESET_SCREEN_PALETTE, $FF + db $FF + +SmokeScreenAnim: ; 7a519 (1e:6519) + db $46,$6B,$28 + db $04,$FF,$0A + db SE_DARKEN_MON_PALETTE, $FF + db SE_DELAY_ANIMATION_10, $FF + db SE_DELAY_ANIMATION_10, $FF + db SE_DARK_SCREEN_PALETTE, $FF + db SE_DELAY_ANIMATION_10, $FF + db SE_DELAY_ANIMATION_10, $FF + db SE_DELAY_ANIMATION_10, $FF + db SE_DELAY_ANIMATION_10, $FF + db SE_DELAY_ANIMATION_10, $FF + db SE_DELAY_ANIMATION_10, $FF + db SE_DARKEN_MON_PALETTE, $FF + db SE_DELAY_ANIMATION_10, $FF + db SE_RESET_SCREEN_PALETTE, $FF + db $FF + +ConfuseRayAnim: ; 7a53a (1e:653a) + db SE_DARK_SCREEN_PALETTE, $6C + db $46,$FF,$3E + db SE_RESET_SCREEN_PALETTE, $FF + db $FF + +WithdrawAnim: ; 7a542 (1e:6542) + db SE_LIGHT_SCREEN_PALETTE, $6E + db SE_SLIDE_MON_DOWN, $FF + db $06,$FF,$51 + db SE_RESET_SCREEN_PALETTE, $FF + db SE_SHOW_MON_PIC, $FF + db $FF + +DefenseCurlAnim: ; 7a54e (1e:654e) + db SE_LIGHT_SCREEN_PALETTE, $6E + db $06,$FF,$43 + db SE_DARK_SCREEN_FLASH, $FF + db SE_RESET_SCREEN_PALETTE, $FF + db $FF + +BarrierAnim: ; 7a558 (1e:6558) + db $46,$6F,$33 + db $46,$6F,$33 + db $FF + +LightScreenAnim: ; 7a55f (1e:655f) + db SE_LIGHT_SCREEN_PALETTE, $FF + db $46,$70,$33 + db $46,$70,$33 + db SE_RESET_SCREEN_PALETTE, $FF + db $FF + +HazeAnim: ; 7a56a (1e:656a) + db SE_DARKEN_MON_PALETTE, $FF + db SE_WATER_DROPLETS_EVERYWHERE, $38 + db SE_RESET_SCREEN_PALETTE, $FF + db $FF + +ReflectAnim: ; 7a571 (1e:6571) + db SE_DARK_SCREEN_PALETTE, $FF + db $46,$72,$33 + db $46,$72,$33 + db SE_RESET_SCREEN_PALETTE, $FF + db $FF + +FocusEnergyAnim: ; 7a57c (1e:657c) + db SE_SPIRAL_BALLS_INWARD, $73 + db $FF + +BideAnim: ; 7a57f (1e:657f) + db $46,$74,$04 + db $FF + +MetronomeAnim: ; 7a583 (1e:6583) + db SE_MOVE_MON_HORIZONTALLY, $84 + db SE_DELAY_ANIMATION_10, $FF + db SE_RESET_MON_POSITION, $84 + db SE_DELAY_ANIMATION_10, $FF + db SE_MOVE_MON_HORIZONTALLY, $84 + db SE_DELAY_ANIMATION_10, $FF + db SE_RESET_MON_POSITION, $84 + db $FF + +MirrorMoveAnim: ; 7a592 (1e:6592) + db $08,$76,$01 + db $FF + +SelfdestructAnim: ; 7a596 (1e:6596) + db $43,$77,$34 + db $FF + +EggBombAnim: ; 7a59a (1e:659a) + db $44,$78,$41 + db $44,$78,$42 + db $FF + +LickAnim: ; 7a5a1 (1e:65a1) + db $46,$7B,$14 + db $FF + +SmogAnim: ; 7a5a5 (1e:65a5) + db SE_DARKEN_MON_PALETTE, $48 + db $46,$7A,$19 + db SE_RESET_SCREEN_PALETTE, $FF + db $FF + +SludgeAnim: ; 7a5ad (1e:65ad) + db $46,$7B,$13 + db $46,$7B,$14 + db $FF + +BoneClubAnim: ; 7a5b4 (1e:65b4) + db $08,$7C,$02 + db $FF + +FireBlastAnim: ; 7a5b8 (1e:65b8) + db $46,$7D,$1F + db $46,$FF,$20 + db $46,$FF,$20 + db $46,$FF,$0C + db $46,$FF,$0D + db $FF + +WaterfallAnim: ; 7a5c8 (1e:65c8) + db SE_SLIDE_MON_DOWN, $48 + db $06,$37,$1A + db $08,$FF,$02 + db SE_SLIDE_MON_UP, $FF + db $FF + +ClampAnim: ; 7a5d3 (1e:65d3) + db $08,$7F,$2A + db $06,$83,$23 + db $06,$83,$23 + db $FF + +SwiftAnim: ; 7a5dd (1e:65dd) + db $43,$80,$3F + db $FF + +SkullBashAnim: ; 7a5e1 (1e:65e1) + db $46,$81,$05 + db $FF + +SpikeCannonAnim: ; 7a5e5 (1e:65e5) + db $44,$82,$04 + db $FF + +ConstrictAnim: ; 7a5e9 (1e:65e9) + db $06,$83,$23 + db $06,$83,$23 + db $06,$83,$23 + db $FF + +AmnesiaAnim: ; 7a5f3 (1e:65f3) + db $08,$84,$25 + db $08,$84,$25 + db $FF + +KinesisAnim: ; 7a5fa (1e:65fa) + db $08,$85,$01 + db $FF + +SoftboiledAnim: ; 7a5fe (1e:65fe) + db SE_SLIDE_MON_HALF_LEFT, $48 + db $08,$86,$4C + db SE_LIGHT_SCREEN_PALETTE, $FF + db SE_SPIRAL_BALLS_INWARD, $FF + db SE_RESET_SCREEN_PALETTE, $FF + db SE_SHOW_MON_PIC, $FF + db $FF + +HiJumpKickAnim: ; 7a6 (1e:660c) + db $46,$87,$04 + db $FF + +GlareAnim: ; 7a610 (1e:6610) + db SE_DARK_SCREEN_PALETTE, $48 + db SE_DARK_SCREEN_FLASH, $88 + db SE_DARK_SCREEN_FLASH, $FF + db SE_RESET_SCREEN_PALETTE, $FF + db $FF + +DreamEaterAnim: ; 7a619 (1e:6619) + db SE_FLASH_SCREEN_LONG, $89 + db SE_DARK_SCREEN_PALETTE, $89 + db $08,$89,$02 + db SE_RESET_SCREEN_PALETTE, $FF + db $FF + +PoisonGasAnim: ; 7a623 (1e:6623) + db $46,$8A,$19 + db $FF + +BarrageAnim: ; 7a627 (1e:6627) + db $43,$8B,$41 + db $05,$FF,$55 + db $FF + +LeechLifeAnim: ; 7a62e (1e:662e) + db $08,$8C,$02 + db SE_DARK_SCREEN_FLASH, $FF + db $06,$FF,$21 + db $06,$FF,$22 + db SE_DARK_SCREEN_FLASH, $FF + db $FF + +LovelyKissAnim: ; 7a63c (1e:663c) + db $06,$8D,$12 + db $FF + +SkyAttackAnim: ; 7a640 (1e:6640) + db SE_SQUISH_MON_PIC, $8E + db SE_SHOOT_BALLS_UPWARD, $FF + db $46,$87,$04 + db SE_SHOW_MON_PIC, $FF + db $FF + +TransformAnim: ; 7a64a (1e:664a) + db $46,$8F,$21 + db $44,$8F,$22 + db $08,$FF,$47 + db SE_TRANSFORM_MON, $FF + db $FF + +BubbleAnim: ; 7a656 (1e:6656) + db $16,$90,$35 + db $FF + +DizzyPunchAnim: ; 7a65a (1e:665a) + db $06,$91,$17 + db $06,$91,$17 + db $06,$91,$17 + db $06,$02,$02 + db $FF + +SporeAnim: ; 7a667 (1e:6667) + db $06,$92,$36 + db $FF + +FlashAnim: ; 7a66b (1e:666b) + db SE_LIGHT_SCREEN_PALETTE, $48 + db SE_DARK_SCREEN_FLASH, $88 + db SE_DARK_SCREEN_FLASH, $FF + db SE_RESET_SCREEN_PALETTE, $FF + db $FF + +PsywaveAnim: ; 7a674 (1e:6674) + db $06,$2F,$31 + db SE_WAVY_SCREEN, $5C + db $FF + +SplashAnim: ; 7a67a (1e:667a) + db SE_BOUNCE_UP_AND_DOWN, $95 + db $FF + +AcidArmorAnim: ; 7a67d (1e:667d) + db SE_SLIDE_MON_DOWN_AND_HIDE, $96 + db $FF + +CrabHammerAnim: ; 7a680 (1e:6680) + db $46,$97,$05 + db $06,$FF,$2A + db $FF + +ExplosionAnim: ; 7a687 (1e:6687) + db $43,$98,$34 + db $FF + +FurySwipesAnim: ; 7a68b (1e:668b) + db $04,$99,$0F + db $FF + +BonemerangAnim: ; 7a68f (1e:668f) + db $06,$9A,$02 + db $FF + +RestAnim: ; 7a693 (1e:6693) + db $10,$9B,$3A + db $10,$9B,$3A + db $FF + +RockSlideAnim: ; 7a69a (1e:669a) + db $04,$9C,$1D + db $03,$9C,$1E + db $46,$9D,$04 + db $FF + +HyperFangAnim: ; 7a6a4 (1e:66a4) + db $06,$9D,$02 + db $FF + +SharpenAnim: ; 7a6a8 (1e:66a8) + db SE_LIGHT_SCREEN_PALETTE, $9E + db $46,$FF,$43 + db SE_DARK_SCREEN_FLASH, $FF + db SE_RESET_SCREEN_PALETTE, $FF + db $FF + +ConversionAnim: ; 7a6b2 (1e:66b2) + db SE_DARK_SCREEN_FLASH, $9F + db $46,$FF,$21 + db $46,$FF,$22 + db SE_DARK_SCREEN_FLASH, $FF + db $FF + +TriAttackAnim: ; 7a6bd (1e:66bd) + db SE_DARK_SCREEN_FLASH, $A0 + db $46,$FF,$4D + db SE_DARK_SCREEN_FLASH, $FF + db $FF + +SuperFangAnim: ; 7a6c5 (1e:66c5) + db SE_DARK_SCREEN_PALETTE, $48 + db $46,$A1,$04 + db SE_RESET_SCREEN_PALETTE, $FF + db $FF + +SlashAnim: ; 7a6cd (1e:66cd) + db $06,$A2,$0F + db $FF + +SubstituteAnim: ; 7a6d1 (1e:66d1) + db SE_SLIDE_MON_OUT, $A3 + db $08,$FF,$47 + db SE_SUBSTITUTE_MON, $FF + db $FF + +BallTossAnim: ; 7a6d9 (1e:66d9) + db $03,$FF,$06 + db $FF + +GreatTossAnim: ; 7a6dd (1e:66dd) + db $03,$FF,$07 + db $FF + +UltraTossAnim: ; 7a6e1 (1e:66e1) + db $02,$FF,$08 + db $FF + +BallShakeAnim: ; 7a6e5 (1e:66e5) + db $04,$FF,$09 + db $FF + +BallPoofAnim: ; 7a6e9 (1e:66e9) + db $04,$FF,$0A + db $FF + +ShowPicAnim: ; 7a6ed (1e:66ed) + db SE_SHOW_ENEMY_MON_PIC, $FF + db $FF + +HidePicAnim: ; 7a6f0 (1e:66f0) + db SE_HIDE_ENEMY_MON_PIC, $FF + db $FF + +EnemyFlashAnim: ; 7a6f3 (1e:66f3) + db SE_SHOW_MON_PIC, $FF + db $FF + +PlayerFlashAnim: ; 7a6f6 (1e:66f6) + db SE_FLASH_MON_PIC, $FF + db $FF + +EnemyHUDShakeAnim: ; 7a6f9 (1e:66f9) + db SE_SHAKE_ENEMY_HUD, $FF + db $FF + +TradeBallDropAnim: ; 7a6fc (1e:66fc) + db $86,$FF,$48 + db $FF + +TradeBallAppear1Anim: ; 7a700 (1e:6700) + db $84,$FF,$49 + db $FF + +TradeBallAppear2Anim: ; 7a704 (1e:6704) + db $86,$FF,$4A + db $FF + +TradeBallPoofAnim: ; 7a708 (1e:6708) + db $86,$FF,$4B + db $FF + +XStatItemAnim: ; 7a7c0 (1e:670c) + db SE_LIGHT_SCREEN_PALETTE, $FF + db SE_SPIRAL_BALLS_INWARD, $FF + db SE_RESET_SCREEN_PALETTE, $FF + db $FF + +ShrinkingSquareAnim: ; 7a713 (1e:6713) + db SE_LIGHT_SCREEN_PALETTE, $FF + db $46,$FF,$43 + db SE_RESET_SCREEN_PALETTE, $FF + db $FF + +XStatItemBlackAnim: ; 7a71b (1e:671b) + db SE_DARKEN_MON_PALETTE, $FF + db SE_SPIRAL_BALLS_INWARD, $FF + db SE_RESET_SCREEN_PALETTE, $FF + db $FF + +ShrinkingSquareBlackAnim: ; 7a722 (1e:6722) + db SE_DARKEN_MON_PALETTE, $FF + db $46,$FF,$43 + db SE_RESET_SCREEN_PALETTE, $FF + db $FF + +UnusedAnim: ; 7a72a (1e:672a) + db SE_LIGHT_SCREEN_PALETTE, $FF + db SE_SHOOT_MANY_BALLS_UPWARD, $FF + db SE_RESET_SCREEN_PALETTE, $FF + db $FF + +ParalyzeAnim: ; 7a731 (1e:6731) + db $04,$13,$24 + db $04,$13,$24 + db $FF + +PoisonAnim: ; 7a738 (1e:6738) + db $08,$13,$27 + db $08,$13,$27 + db $FF + +SleepPlayerAnim: ; 7a73f (1e:673f) + db $10,$9B,$3A + db $10,$9B,$3A + db $FF + +SleepEnemyAnim: ; 7a746 (1e:6746) + db $10,$9B,$3B + db $10,$9B,$3B + db $FF + +ConfusedPlayerAnim: ; 7a74d (1e:674d) + db $08,$84,$25 + db $08,$84,$25 + db $FF + +ConfusedEnemyAnim: ; 7a754 (1e:6754) + db $08,$84,$26 + db $08,$84,$26 + db $FF + +BallBlockAnim: ; 7a75b (1e:675b) + db $03,$FF,$0B + db $FF + +FaintAnim: ; 7a75f (1e:675f) + db SE_SLIDE_MON_DOWN, $5A + db $FF + +ShakeScreenAnim: ; 7a762 (1e:6762) + db SE_SHAKE_SCREEN, $FF + db $FF + +ThrowRockAnim: ; 7a765 (1e:6765) + db $03,$8B,$53 + db $FF + +ThrowBaitAnim: ; 7a769 (1e:6769) + db $03,$8B,$54 + db $FF + +SubanimationPointers: ; 7a76d (1e:676d) + dw Subanimation00 + dw Subanimation01 + dw Subanimation02 + dw Subanimation03 + dw Subanimation04 + dw Subanimation05 + dw Subanimation06 + dw Subanimation07 + dw Subanimation08 + dw Subanimation09 + dw Subanimation0a + dw Subanimation0b + dw Subanimation0c + dw Subanimation0d + dw Subanimation0e + dw Subanimation0f + dw Subanimation10 + dw Subanimation11 + dw Subanimation12 + dw Subanimation13 + dw Subanimation14 + dw Subanimation15 + dw Subanimation16 + dw Subanimation17 + dw Subanimation18 + dw Subanimation19 + dw Subanimation1a + dw Subanimation1b + dw Subanimation1c + dw Subanimation1d + dw Subanimation1e + dw Subanimation1f + dw Subanimation20 + dw Subanimation21 + dw Subanimation22 + dw Subanimation23 + dw Subanimation24 + dw Subanimation25 + dw Subanimation26 + dw Subanimation27 + dw Subanimation28 + dw Subanimation29 + dw Subanimation2a + dw Subanimation2b + dw Subanimation2c + dw Subanimation2d + dw Subanimation2e + dw Subanimation2f + dw Subanimation30 + dw Subanimation31 + dw Subanimation32 + dw Subanimation33 + dw Subanimation34 + dw Subanimation35 + dw Subanimation36 + dw Subanimation37 + dw Subanimation38 + dw Subanimation39 + dw Subanimation3a + dw Subanimation3b + dw Subanimation3c + dw Subanimation3d + dw Subanimation3e + dw Subanimation3f + dw Subanimation40 + dw Subanimation41 + dw Subanimation42 + dw Subanimation43 + dw Subanimation44 + dw Subanimation45 + dw Subanimation46 + dw Subanimation47 + dw Subanimation48 + dw Subanimation49 + dw Subanimation4a + dw Subanimation4b + dw Subanimation4c + dw Subanimation4d + dw Subanimation4e + dw Subanimation4f + dw Subanimation50 + dw Subanimation51 + dw Subanimation52 + dw Subanimation53 + dw Subanimation54 + dw Subanimation55 + +Subanimation04: ; 7a819 (1e:6819) + db $43 + db $02,$1a,$00 + db $02,$10,$00 + db $02,$03,$00 + +Subanimation05: ; 7a823 (1e:6823) + db $41 + db $02,$10,$00 + +Subanimation08: ; 7a827 (1e:6827) + db $0b + db $03,$30,$00 + db $03,$44,$00 + db $03,$94,$00 + db $03,$60,$00 + db $03,$76,$00 + db $03,$9f,$00 + db $03,$8d,$00 + db $03,$a0,$00 + db $03,$1a,$00 + db $03,$a1,$00 + db $03,$34,$00 + +Subanimation07: ; 7a849 (1e:6849) + db $0b + db $03,$30,$00 + db $03,$a2,$00 + db $03,$31,$00 + db $03,$a3,$00 + db $03,$32,$00 + db $03,$a4,$00 + db $03,$92,$00 + db $03,$a5,$00 + db $03,$15,$00 + db $03,$a6,$00 + db $03,$34,$00 + +Subanimation06: ; 7a86b (1e:686b) + db $0b + db $03,$30,$00 + db $03,$a2,$00 + db $03,$93,$00 + db $03,$61,$00 + db $03,$73,$00 + db $03,$a7,$00 + db $03,$33,$00 + db $03,$a8,$00 + db $03,$0e,$00 + db $03,$a9,$00 + db $03,$34,$00 + +Subanimation09: ; 7a88d (1e:688d) + db $04 + db $03,$21,$04 + db $04,$21,$04 + db $03,$21,$04 + db $05,$21,$04 + +Subanimation0a: ; 7a89a (1e:689a) + db $46 + db $06,$1b,$00 + db $07,$1b,$00 + db $08,$36,$00 + db $09,$36,$00 + db $0a,$15,$00 + db $0a,$15,$00 + +Subanimation0b: ; 7a8ad (1e:68ad) + db $04 + db $01,$2d,$00 + db $03,$2f,$00 + db $03,$35,$00 + db $03,$4d,$00 + +Subanimation55: ; 7a8ba (1e:68ba) + db $41 + db $01,$9d,$00 + +Subanimation11: ; 7a8be (1e:68be) + db $4c + db $0b,$26,$00 + db $0c,$26,$00 + db $0b,$26,$00 + db $0c,$26,$00 + db $0b,$28,$00 + db $0c,$28,$00 + db $0b,$28,$00 + db $0c,$28,$00 + db $0b,$27,$00 + db $0c,$27,$00 + db $0b,$27,$00 + db $0c,$27,$00 + +Subanimation2b: ; 7a8e3 (1e:68e3) + db $4b + db $0d,$03,$03 + db $0e,$03,$03 + db $0f,$03,$00 + db $0d,$11,$00 + db $0d,$11,$00 + db $0d,$37,$00 + db $0d,$37,$00 + db $10,$21,$00 + db $10,$21,$00 + db $11,$1b,$00 + db $11,$1b,$00 + +Subanimation2c: ; 7a905 (1e:6905) + db $4c + db $12,$01,$00 + db $12,$0f,$00 + db $12,$1b,$00 + db $12,$25,$00 + db $13,$38,$00 + db $13,$38,$02 + db $14,$38,$00 + db $14,$38,$02 + db $15,$38,$00 + db $15,$38,$00 + db $16,$38,$00 + db $16,$38,$00 + +Subanimation12: ; 7a92a (1e:692a) + db $69 + db $17,$30,$00 + db $17,$39,$00 + db $17,$3a,$00 + db $17,$3b,$00 + db $17,$3c,$00 + db $17,$3d,$00 + db $17,$3e,$00 + db $17,$3f,$00 + db $17,$1f,$00 + +Subanimation00: ; 7a946 (1e:6946) + db $41 + db $01,$17,$00 + +Subanimation01: ; 7a94a (1e:694a) + db $42 + db $01,$0f,$00 + db $01,$1d,$00 + +Subanimation02: ; 7a951 (1e:6951) + db $43 + db $01,$12,$00 + db $01,$15,$00 + db $01,$1c,$00 + +Subanimation03: ; 7a95b (1e:695b) + db $44 + db $01,$0b,$00 + db $01,$11,$00 + db $01,$18,$00 + db $01,$1d,$00 + +Subanimation0c: ; 7a968 (1e:6968) + db $43 + db $0c,$20,$00 + db $0c,$21,$00 + db $0c,$23,$00 + +Subanimation0d: ; 7a972 (1e:6972) + db $46 + db $0c,$20,$02 + db $0c,$15,$00 + db $0c,$21,$02 + db $0c,$17,$00 + db $0c,$23,$02 + db $0c,$19,$00 + +Subanimation0e: ; 7a985 (1e:6985) + db $49 + db $0c,$20,$02 + db $0c,$15,$02 + db $0c,$07,$00 + db $0c,$21,$02 + db $0c,$17,$02 + db $0c,$09,$00 + db $0c,$23,$02 + db $0c,$19,$02 + db $0c,$0c,$00 + +Subanimation1f: ; 7a9a1 (1e:69a1) + db $85 + db $0c,$30,$03 + db $0c,$40,$03 + db $0c,$41,$03 + db $0c,$42,$03 + db $0c,$21,$00 + +Subanimation2e: ; 7a9b1 (1e:69b1) + db $2e + db $18,$43,$02 + db $75,$52,$04 + db $19,$43,$02 + db $75,$63,$04 + db $1a,$43,$02 + db $75,$4d,$04 + db $1b,$43,$02 + db $75,$97,$04 + db $1c,$43,$02 + db $75,$98,$04 + db $1d,$43,$02 + db $75,$58,$04 + db $1e,$43,$02 + db $75,$1b,$00 + +Subanimation2f: ; 7a9dc (1e:69dc) + db $44 + db $1f,$24,$00 + db $20,$20,$00 + db $21,$1a,$00 + db $22,$15,$00 + +Subanimation30: ; 7a9e9 (1e:69e9) + db $52 + db $23,$00,$02 + db $23,$02,$02 + db $23,$04,$00 + db $23,$07,$02 + db $23,$02,$02 + db $23,$04,$00 + db $23,$0e,$02 + db $23,$02,$02 + db $23,$0c,$00 + db $25,$07,$00 + db $25,$0e,$00 + db $25,$15,$00 + db $24,$24,$02 + db $23,$1c,$02 + db $23,$23,$00 + db $23,$21,$02 + db $24,$28,$00 + db $24,$28,$00 + +Subanimation0f: ; 7aa20 (1e:6a20) + db $4c + db $26,$0e,$02 + db $26,$16,$02 + db $26,$1c,$00 + db $27,$0e,$02 + db $27,$16,$02 + db $27,$1c,$00 + db $28,$0e,$02 + db $28,$16,$02 + db $28,$1c,$00 + db $29,$0e,$02 + db $29,$16,$02 + db $29,$1c,$00 + +Subanimation16: ; 7aa45 (1e:6a45) + db $4c + db $2a,$05,$00 + db $2b,$05,$02 + db $2b,$0c,$02 + db $2a,$11,$04 + db $2b,$11,$02 + db $2b,$17,$02 + db $2a,$1b,$04 + db $2b,$1b,$02 + db $2b,$20,$02 + db $2a,$2f,$04 + db $2c,$00,$02 + db $2c,$00,$00 + +Subanimation10: ; 7aa6a (1e:6a6a) + db $88 + db $2d,$44,$00 + db $2e,$45,$00 + db $2d,$46,$00 + db $2e,$47,$00 + db $2d,$48,$00 + db $2e,$49,$00 + db $2d,$2f,$00 + db $2e,$1a,$00 + +Subanimation31: ; 7aa83 (1e:6a83) + db $2a + db $2f,$46,$00 + db $2f,$4a,$00 + db $2f,$4b,$00 + db $2f,$4c,$00 + db $2f,$4d,$00 + db $2f,$4e,$00 + db $2f,$4f,$00 + db $2f,$50,$00 + db $2f,$2e,$00 + db $2f,$51,$00 + +Subanimation13: ; 7aaa2 (1e:6aa2) + db $86 + db $30,$31,$00 + db $30,$32,$00 + db $30,$92,$00 + db $30,$0e,$00 + db $30,$0f,$00 + db $30,$10,$00 + +Subanimation14: ; 7aab5 (1e:6ab5) + db $49 + db $30,$10,$00 + db $30,$10,$03 + db $31,$1c,$04 + db $31,$21,$04 + db $31,$26,$00 + db $30,$10,$02 + db $31,$1d,$04 + db $31,$22,$04 + db $31,$27,$00 + +Subanimation41: ; 7aad1 (1e:6ad1) + db $85 + db $03,$31,$00 + db $03,$32,$00 + db $03,$92,$00 + db $03,$0e,$00 + db $03,$10,$00 + +Subanimation42: ; 7aae1 (1e:6ae1) + db $43 + db $48,$08,$00 + db $49,$08,$00 + db $5a,$08,$00 + +Subanimation15: ; 7aaeb (1e:6aeb) + db $22 + db $35,$52,$00 + db $35,$53,$00 + +Subanimation17: ; 7aaf2 (1e:6af2) + db $44 + db $36,$54,$00 + db $36,$55,$00 + db $37,$56,$00 + db $37,$57,$00 + +Subanimation18: ; 7aaff (1e:6aff) + db $a4 + db $36,$54,$00 + db $36,$55,$00 + db $37,$56,$00 + db $37,$57,$00 + +Subanimation40: ; 7ab0c (1e:6b0c) + db $46 + db $17,$54,$00 + db $17,$55,$00 + db $17,$0e,$00 + db $17,$56,$00 + db $17,$57,$00 + db $17,$13,$00 + +Subanimation19: ; 7ab1f (1e:6b1f) + db $8c + db $38,$31,$00 + db $39,$31,$00 + db $38,$32,$00 + db $39,$32,$00 + db $38,$92,$00 + db $39,$92,$00 + db $38,$0e,$00 + db $39,$0e,$00 + db $38,$0f,$00 + db $39,$0f,$00 + db $38,$10,$00 + db $39,$10,$00 + +Subanimation1a: ; 7ab44 (1e:6b44) + db $50 + db $3a,$08,$00 + db $3b,$08,$00 + db $3c,$08,$00 + db $3d,$08,$00 + db $3e,$08,$00 + db $3f,$08,$00 + db $3e,$08,$00 + db $3f,$08,$00 + db $3a,$0b,$00 + db $3b,$0b,$00 + db $3c,$0b,$00 + db $3d,$0b,$00 + db $3e,$0b,$00 + db $3f,$0b,$00 + db $3e,$0b,$00 + db $3f,$0b,$00 + +Subanimation1b: ; 7ab75 (1e:6b75) + db $84 + db $40,$31,$00 + db $40,$32,$00 + db $40,$92,$00 + db $40,$15,$00 + +Subanimation1c: ; 7ab82 (1e:6b82) + db $43 + db $41,$58,$00 + db $41,$59,$00 + db $41,$21,$00 + +Subanimation1d: ; 7ab8c (1e:6b8c) + db $af + db $24,$9a,$00 + db $23,$1b,$02 + db $24,$22,$00 + db $23,$16,$02 + db $23,$1d,$02 + db $24,$98,$00 + db $25,$2c,$04 + db $25,$2a,$04 + db $25,$99,$04 + db $25,$62,$04 + db $25,$99,$04 + db $25,$62,$04 + db $25,$99,$04 + db $25,$62,$04 + db $25,$99,$03 + +Subanimation1e: ; 7abba (1e:6bba) + db $01 + db $25,$75,$00 + +Subanimation20: ; 7abbe (1e:6bbe) + db $42 + db $42,$07,$00 + db $43,$07,$00 + +Subanimation21: ; 7abc5 (1e:6bc5) + db $43 + db $44,$00,$00 + db $45,$08,$00 + db $46,$10,$02 + +Subanimation22: ; 7abcf (1e:6bcf) + db $8b + db $47,$10,$00 + db $47,$56,$00 + db $47,$07,$00 + db $47,$aa,$00 + db $47,$ab,$00 + db $47,$ac,$00 + db $47,$ad,$00 + db $47,$ae,$00 + db $47,$af,$00 + db $47,$89,$00 + db $47,$b0,$00 + +Subanimation2d: ; 7abf1 (1e:6bf1) + db $66 + db $44,$64,$00 + db $45,$65,$00 + db $46,$66,$00 + db $47,$66,$00 + db $47,$66,$00 + db $47,$66,$00 + +Subanimation39: ; 7ac04 (1e:6c04) + db $61 + db $47,$67,$00 + +Subanimation4e: ; 7ac08 (1e:6c08) + db $41 + db $71,$0f,$03 + +Subanimation4f: ; 7ac0c (1e:6c0c) + db $47 + db $71,$0f,$00 + db $71,$08,$00 + db $71,$01,$00 + db $71,$95,$00 + db $72,$95,$00 + db $73,$95,$00 + db $74,$95,$00 + +Subanimation50: ; 7ac22 (1e:6c22) + db $48 + db $74,$95,$00 + db $73,$95,$00 + db $72,$95,$00 + db $71,$95,$00 + db $71,$01,$00 + db $71,$08,$00 + db $71,$0f,$00 + db $71,$16,$00 + +Subanimation29: ; 7ac3b (1e:6c3b) + db $5d + db $48,$0f,$00 + db $4a,$68,$03 + db $4b,$2a,$03 + db $49,$0f,$00 + db $4a,$68,$03 + db $4b,$2a,$00 + db $4c,$6a,$03 + db $4d,$69,$03 + db $49,$6b,$00 + db $4c,$6a,$03 + db $4d,$69,$00 + db $4a,$68,$03 + db $4b,$2a,$03 + db $49,$6c,$00 + db $4a,$68,$03 + db $4b,$2a,$00 + db $4c,$6a,$03 + db $4d,$69,$03 + db $49,$6d,$00 + db $4c,$6a,$03 + db $4d,$2a,$00 + db $4a,$68,$03 + db $4b,$2a,$03 + db $49,$0f,$00 + db $4a,$68,$03 + db $4b,$2a,$00 + db $4c,$6a,$03 + db $4d,$2a,$03 + db $49,$6b,$00 + +Subanimation2a: ; 7ac93 (1e:6c93) + db $44 + db $4e,$2b,$00 + db $4f,$2b,$00 + db $50,$2b,$00 + db $50,$2b,$00 + +Subanimation23: ; 7aca0 (1e:6ca0) + db $42 + db $51,$2d,$00 + db $51,$6e,$00 + +Subanimation24: ; 7aca7 (1e:6ca7) + db $a2 + db $51,$2d,$00 + db $51,$6e,$00 + +Subanimation25: ; 7acae (1e:6cae) + db $62 + db $52,$71,$00 + db $52,$72,$00 + +Subanimation26: ; 7acb5 (1e:6cb5) + db $02 + db $52,$01,$00 + db $52,$2c,$00 + +Subanimation3a: ; 7acbc (1e:6cbc) + db $63 + db $53,$71,$00 + db $53,$7f,$00 + db $53,$81,$00 + +Subanimation3b: ; 7acc6 (1e:6cc6) + db $03 + db $53,$01,$00 + db $53,$15,$00 + db $53,$2c,$00 + +Subanimation27: ; 7acd0 (1e:6cd0) + db $a2 + db $54,$01,$00 + db $54,$2c,$00 + +Subanimation28: ; 7acd7 (1e:6cd7) + db $23 + db $55,$73,$03 + db $56,$73,$03 + db $57,$73,$00 + +Subanimation32: ; 7ace1 (1e:6ce1) + db $63 + db $47,$74,$00 + db $47,$43,$00 + db $47,$75,$00 + +Subanimation33: ; 7aceb (1e:6ceb) + db $26 + db $58,$76,$00 + db $34,$76,$00 + db $58,$76,$00 + db $34,$76,$00 + db $58,$76,$00 + db $34,$76,$00 + +Subanimation3c: ; 7acfe (1e:6cfe) + db $67 + db $59,$79,$03 + db $59,$7b,$03 + db $59,$77,$03 + db $59,$7a,$03 + db $59,$78,$03 + db $59,$7c,$03 + db $59,$76,$00 + +Subanimation3d: ; 7ad14 (1e:6d14) + db $08 + db $3a,$4d,$00 + db $3b,$4d,$00 + db $3c,$4d,$00 + db $3d,$4d,$00 + db $3e,$4d,$00 + db $3f,$4d,$00 + db $3e,$4d,$00 + db $3f,$4d,$00 + +Subanimation34: ; 7ad2d (1e:6d2d) + db $35 + db $48,$7d,$00 + db $49,$7d,$00 + db $5a,$7d,$00 + db $48,$30,$00 + db $49,$30,$00 + db $5a,$30,$00 + db $48,$7e,$00 + db $49,$7e,$00 + db $5a,$7e,$00 + db $48,$7f,$00 + db $49,$7f,$00 + db $5a,$7f,$00 + db $48,$80,$00 + db $49,$80,$00 + db $5a,$80,$00 + db $48,$81,$00 + db $49,$81,$00 + db $5a,$81,$00 + db $48,$82,$00 + db $49,$82,$00 + db $5a,$82,$00 + +Subanimation35: ; 7ad6d (1e:6d6d) + db $24 + db $5b,$83,$03 + db $5c,$84,$03 + db $5d,$85,$03 + db $5e,$09,$00 + +Subanimation36: ; 7ad7a (1e:6d7a) + db $48 + db $5f,$2a,$00 + db $5f,$00,$00 + db $60,$2a,$00 + db $60,$00,$00 + db $61,$2a,$00 + db $61,$00,$00 + db $62,$2a,$00 + db $62,$00,$00 + +Subanimation37: ; 7ad93 (1e:6d93) + db $2a + db $63,$89,$00 + db $64,$75,$00 + db $63,$76,$00 + db $65,$0d,$00 + db $65,$86,$00 + db $65,$12,$00 + db $65,$87,$00 + db $65,$17,$00 + db $65,$88,$00 + db $65,$1a,$00 + +Subanimation38: ; 7adb2 (1e:6db2) + db $50 + db $66,$8a,$00 + db $66,$33,$00 + db $66,$2e,$00 + db $67,$24,$03 + db $66,$01,$04 + db $66,$10,$04 + db $66,$1d,$04 + db $67,$28,$03 + db $66,$2a,$04 + db $66,$0e,$04 + db $66,$1b,$04 + db $67,$26,$03 + db $66,$03,$04 + db $66,$12,$04 + db $66,$1e,$04 + db $67,$29,$00 + +Subanimation3e: ; 7ade3 (1e:6de3) + db $92 + db $02,$31,$00 + db $34,$31,$00 + db $02,$31,$00 + db $02,$32,$00 + db $34,$32,$00 + db $02,$32,$00 + db $02,$92,$00 + db $34,$92,$00 + db $02,$92,$00 + db $02,$0e,$00 + db $34,$0e,$00 + db $02,$0e,$00 + db $02,$0f,$00 + db $34,$0f,$00 + db $02,$0f,$00 + db $02,$10,$00 + db $34,$10,$00 + db $02,$10,$00 + +Subanimation3f: ; 7ae1a (1e:6e1a) + db $72 + db $68,$4b,$00 + db $68,$8c,$00 + db $68,$20,$00 + db $68,$1c,$00 + db $68,$19,$00 + db $68,$14,$00 + db $68,$76,$00 + db $68,$8d,$00 + db $68,$15,$00 + db $68,$10,$00 + db $68,$0c,$00 + db $68,$06,$00 + db $68,$8e,$00 + db $68,$8f,$00 + db $68,$90,$00 + db $68,$26,$00 + db $68,$23,$00 + db $68,$1f,$00 + +Subanimation44: ; 7ae51 (1e:6e51) + db $2c + db $69,$4b,$00 + db $69,$8c,$00 + db $69,$20,$00 + db $69,$1c,$00 + db $69,$19,$00 + db $69,$14,$00 + db $69,$76,$00 + db $69,$8d,$00 + db $69,$15,$00 + db $69,$10,$00 + db $69,$0c,$00 + db $69,$06,$00 + +Subanimation43: ; 7ae76 (1e:6e76) + db $a3 + db $6a,$07,$00 + db $6b,$0f,$00 + db $6c,$17,$00 + +Subanimation45: ; 7ae80 (1e:6e80) + db $24 + db $6d,$8b,$00 + db $6d,$84,$00 + db $6d,$63,$00 + db $6d,$8c,$00 + +Subanimation46: ; 7ae8d (1e:6e8d) + db $26 + db $6d,$8b,$00 + db $6d,$84,$00 + db $6d,$63,$00 + db $6d,$8c,$00 + db $6d,$0a,$00 + db $6d,$89,$00 + +Subanimation47: ; 7aea0 (1e:6ea0) + db $23 + db $06,$82,$00 + db $07,$82,$00 + db $08,$96,$00 + +Subanimation48: ; 7aeaa (1e:6eaa) + db $06 + db $03,$41,$04 + db $03,$48,$04 + db $04,$48,$04 + db $03,$48,$04 + db $05,$48,$04 + db $03,$48,$03 + +Subanimation49: ; 7aebd (1e:6ebd) + db $04 + db $04,$48,$04 + db $03,$48,$04 + db $05,$48,$04 + db $03,$48,$03 + +Subanimation4a: ; 7aeca (1e:6eca) + db $01 + db $04,$84,$03 + +Subanimation4b: ; 7aece (1e:6ece) + db $03 + db $06,$72,$00 + db $07,$72,$00 + db $08,$72,$00 + +Subanimation4c: ; 7aed8 (1e:6ed8) + db $68 + db $6f,$30,$00 + db $6e,$30,$00 + db $70,$30,$00 + db $6e,$30,$00 + db $6f,$30,$00 + db $6e,$30,$00 + db $70,$30,$00 + db $6e,$30,$00 + +Subanimation4d: ; 7aef1 (1e:6ef1) + db $26 + db $32,$4b,$00 + db $33,$4f,$00 + db $32,$20,$00 + db $33,$16,$00 + db $32,$19,$00 + db $33,$0d,$00 + +Subanimation51: ; 7af04 (1e:6f04) + db $a6 + db $76,$1b,$00 + db $34,$1b,$00 + db $76,$1b,$00 + db $34,$1b,$00 + db $76,$1b,$00 + db $34,$1b,$00 + +Subanimation52: ; 7af17 (1e:6f17) + db $47 + db $77,$25,$00 + db $77,$9b,$00 + db $77,$1a,$00 + db $77,$9c,$00 + db $77,$2f,$00 + db $77,$50,$00 + db $77,$8c,$00 + +Subanimation53: ; 7af2d (1e:6f2d) + db $0c + db $78,$30,$00 + db $78,$a2,$00 + db $78,$93,$00 + db $78,$61,$00 + db $78,$73,$00 + db $78,$a7,$00 + db $78,$33,$00 + db $78,$a8,$00 + db $78,$0e,$00 + db $78,$a9,$00 + db $78,$34,$00 + db $01,$9e,$00 + +Subanimation54: ; 7af52 (1e:6f52) + db $0b + db $79,$30,$00 + db $79,$a2,$00 + db $79,$93,$00 + db $79,$61,$00 + db $79,$73,$00 + db $79,$a7,$00 + db $79,$33,$00 + db $79,$a8,$00 + db $79,$0e,$00 + db $79,$a9,$00 + db $79,$34,$00 + +FrameBlockPointers: ; 7af74 (1e:6f74) + dw FrameBlock00 + dw FrameBlock01 + dw FrameBlock02 + dw FrameBlock03 + dw FrameBlock04 + dw FrameBlock05 + dw FrameBlock06 + dw FrameBlock07 + dw FrameBlock08 + dw FrameBlock09 + dw FrameBlock0a + dw FrameBlock0b + dw FrameBlock0c + dw FrameBlock0d + dw FrameBlock0e + dw FrameBlock0f + dw FrameBlock10 + dw FrameBlock11 + dw FrameBlock12 + dw FrameBlock13 + dw FrameBlock14 + dw FrameBlock15 + dw FrameBlock16 + dw FrameBlock17 + dw FrameBlock18 + dw FrameBlock19 + dw FrameBlock1a + dw FrameBlock1b + dw FrameBlock1c + dw FrameBlock1d + dw FrameBlock1e + dw FrameBlock1f + dw FrameBlock20 + dw FrameBlock21 + dw FrameBlock22 + dw FrameBlock23 + dw FrameBlock24 + dw FrameBlock25 + dw FrameBlock26 + dw FrameBlock27 + dw FrameBlock28 + dw FrameBlock29 + dw FrameBlock2a + dw FrameBlock2b + dw FrameBlock2c + dw FrameBlock2d + dw FrameBlock2e + dw FrameBlock2f + dw FrameBlock30 + dw FrameBlock31 + dw FrameBlock32 + dw FrameBlock33 + dw FrameBlock34 + dw FrameBlock35 + dw FrameBlock36 + dw FrameBlock37 + dw FrameBlock38 + dw FrameBlock39 + dw FrameBlock3a + dw FrameBlock3b + dw FrameBlock3c + dw FrameBlock3d + dw FrameBlock3e + dw FrameBlock3f + dw FrameBlock40 + dw FrameBlock41 + dw FrameBlock42 + dw FrameBlock43 + dw FrameBlock44 + dw FrameBlock45 + dw FrameBlock46 + dw FrameBlock47 + dw SmallBlackCircleFrameBlock + dw LargeBlockCircleFrameBlock + dw FrameBlock4a + dw FrameBlock4b + dw FrameBlock4c + dw FrameBlock4d + dw FrameBlock4e + dw FrameBlock4f + dw FrameBlock50 + dw FrameBlock51 + dw FrameBlock52 + dw FrameBlock53 + dw FrameBlock54 + dw FrameBlock55 + dw FrameBlock56 + dw FrameBlock57 + dw FrameBlock58 + dw FrameBlock59 + dw FrameBlock5a + dw FrameBlock5b + dw FrameBlock5c + dw FrameBlock5d + dw FrameBlock5e + dw FrameBlock5f + dw FrameBlock60 + dw FrameBlock61 + dw FrameBlock62 + dw FrameBlock63 + dw FrameBlock64 + dw FrameBlock65 + dw FrameBlock66 + dw FrameBlock67 + dw FrameBlock68 + dw FrameBlock69 + dw FrameBlock6a + dw FrameBlock6b + dw FrameBlock6c + dw FrameBlock6d + dw FrameBlock6e + dw FrameBlock6f + dw FrameBlock70 + dw FrameBlock71 + dw FrameBlock72 + dw FrameBlock73 + dw FrameBlock74 + dw FrameBlock75 + dw FrameBlock76 + dw FrameBlock77 + dw FrameBlock78 + dw FrameBlock79 + +; FrameBlock format is as follows: +; first byte = number of tiles in FrameBlock +; +; Next, each group of 4 bytes describes a tile in the FrameBlock +; first byte = y offset +; second byte = x offset +; third byte = tile id (it's actually tile id - $31) +; fourth byte = tile properties (xflip/yflip/etc.) +FrameBlock01: ; 7b068 (1e:7068) + db $09 + db $00,$00,$2c,$00 + db $00,$08,$2d,$00 + db $00,$10,$2c,$20 + db $08,$00,$3c,$00 + db $08,$08,$3d,$00 + db $08,$10,$3c,$20 + db $10,$00,$2c,$40 + db $10,$08,$2d,$40 + db $10,$10,$2c,$60 + +FrameBlock02: ; 7b08d (1e:708d) + db $10 + db $00,$00,$20,$00 + db $00,$08,$21,$00 + db $00,$10,$21,$20 + db $00,$18,$20,$20 + db $08,$00,$30,$00 + db $08,$08,$31,$00 + db $08,$10,$31,$20 + db $08,$18,$30,$20 + db $10,$00,$30,$40 + db $10,$08,$31,$40 + db $10,$10,$31,$60 + db $10,$18,$30,$60 + db $18,$00,$20,$40 + db $18,$08,$21,$40 + db $18,$10,$21,$60 + db $18,$18,$20,$60 + +FrameBlock03: ; 7b0ce (1e:70ce) + db $04 + db $00,$00,$02,$00 + db $00,$08,$02,$20 + db $08,$00,$12,$00 + db $08,$08,$12,$20 + +FrameBlock04: ; 7b0df (1e:70df) + db $04 + db $00,$00,$06,$00 + db $00,$08,$07,$00 + db $08,$00,$16,$00 + db $08,$08,$17,$00 + +FrameBlock05: ; 7b0f0 (1e:70f0) + db $04 + db $00,$00,$07,$20 + db $00,$08,$06,$20 + db $08,$00,$17,$20 + db $08,$08,$16,$20 + +FrameBlock06: ; 7b101 (1e:7101) + db $0c + db $00,$08,$23,$00 + db $08,$00,$32,$00 + db $08,$08,$33,$00 + db $00,$10,$23,$20 + db $08,$10,$33,$20 + db $08,$18,$32,$20 + db $10,$00,$32,$40 + db $10,$08,$33,$40 + db $18,$08,$23,$40 + db $10,$10,$33,$60 + db $10,$18,$32,$60 + db $18,$10,$23,$60 + +FrameBlock07: ; 7b132 (1e:7132) + db $10 + db $00,$00,$20,$00 + db $00,$08,$21,$00 + db $08,$00,$30,$00 + db $08,$08,$31,$00 + db $00,$10,$21,$20 + db $00,$18,$20,$20 + db $08,$10,$31,$20 + db $08,$18,$30,$20 + db $10,$00,$30,$40 + db $10,$08,$31,$40 + db $18,$00,$20,$40 + db $18,$08,$21,$40 + db $10,$10,$31,$60 + db $10,$18,$30,$60 + db $18,$10,$21,$60 + db $18,$18,$20,$60 + +FrameBlock08: ; 7b173 (1e:7173) + db $10 + db $00,$00,$20,$00 + db $00,$08,$21,$00 + db $08,$00,$30,$00 + db $08,$08,$31,$00 + db $00,$18,$21,$20 + db $00,$20,$20,$20 + db $08,$18,$31,$20 + db $08,$20,$30,$20 + db $18,$00,$30,$40 + db $18,$08,$31,$40 + db $20,$00,$20,$40 + db $20,$08,$21,$40 + db $18,$18,$31,$60 + db $18,$20,$30,$60 + db $20,$18,$21,$60 + db $20,$20,$20,$60 + +FrameBlock09: ; 7b1b4 (1e:71b4) + db $0c + db $00,$00,$24,$00 + db $00,$08,$25,$00 + db $08,$00,$34,$00 + db $00,$18,$25,$20 + db $00,$20,$24,$20 + db $08,$20,$34,$20 + db $18,$00,$34,$40 + db $20,$00,$24,$40 + db $20,$08,$25,$40 + db $18,$20,$34,$60 + db $20,$18,$25,$60 + db $20,$20,$24,$60 + +FrameBlock0a: ; 7b1e5 (1e:71e5) + db $0c + db $00,$00,$24,$00 + db $00,$08,$25,$00 + db $08,$00,$34,$00 + db $00,$20,$25,$20 + db $00,$28,$24,$20 + db $08,$28,$34,$20 + db $20,$00,$34,$40 + db $28,$00,$24,$40 + db $28,$08,$25,$40 + db $20,$28,$34,$60 + db $28,$20,$25,$60 + db $28,$28,$24,$60 + +FrameBlock0b: ; 7b216 (1e:7216) + db $04 + db $00,$00,$05,$00 + db $00,$08,$05,$20 + db $08,$00,$15,$00 + db $08,$08,$15,$20 + +FrameBlock0c: ; 7b227 (1e:7227) + db $04 + db $00,$00,$04,$00 + db $00,$08,$04,$20 + db $08,$00,$14,$00 + db $08,$08,$14,$20 + +FrameBlock0d: ; 7b238 (1e:7238) + db $08 + db $00,$00,$0c,$00 + db $00,$08,$0d,$00 + db $08,$00,$1c,$00 + db $08,$08,$1d,$00 + db $10,$00,$1d,$60 + db $10,$08,$1c,$60 + db $18,$00,$0d,$60 + db $18,$08,$0c,$60 + +FrameBlock0e: ; 7b259 (1e:7259) + db $04 + db $20,$00,$0c,$00 + db $20,$08,$0d,$00 + db $28,$00,$1c,$00 + db $28,$08,$1d,$00 + +FrameBlock0f: ; 7b26a (1e:726a) + db $04 + db $30,$00,$1d,$60 + db $30,$08,$1c,$60 + db $38,$00,$0d,$60 + db $38,$08,$0c,$60 + +FrameBlock10: ; 7b27b (1e:727b) + db $08 + db $00,$00,$0e,$00 + db $00,$08,$0f,$00 + db $08,$00,$1e,$00 + db $08,$08,$1f,$00 + db $00,$10,$0f,$20 + db $00,$18,$0e,$20 + db $08,$10,$1f,$20 + db $08,$18,$1e,$20 + +FrameBlock11: ; 7b29c (1e:729c) + db $08 + db $00,$00,$0e,$00 + db $00,$08,$0f,$00 + db $08,$00,$1e,$00 + db $08,$08,$1f,$00 + db $00,$20,$0f,$20 + db $00,$28,$0e,$20 + db $08,$20,$1f,$20 + db $08,$28,$1e,$20 + +FrameBlock12: ; 7b2bd (1e:72bd) + db $03 + db $00,$00,$37,$00 + db $08,$10,$37,$00 + db $00,$20,$37,$00 + +FrameBlock13: ; 7b2ca (1e:72ca) + db $04 + db $00,$00,$36,$00 + db $00,$08,$36,$20 + db $08,$00,$36,$40 + db $08,$08,$36,$60 + +FrameBlock14: ; 7b2db (1e:72db) + db $08 + db $00,$10,$28,$00 + db $00,$18,$28,$20 + db $08,$10,$38,$00 + db $08,$18,$38,$20 + db $00,$20,$36,$00 + db $00,$28,$36,$20 + db $08,$20,$36,$40 + db $08,$28,$36,$60 + +FrameBlock15: ; 7b2fc (1e:72fc) + db $0c + db $00,$00,$28,$00 + db $00,$08,$28,$20 + db $08,$00,$38,$00 + db $08,$08,$38,$20 + db $00,$10,$29,$00 + db $00,$18,$29,$20 + db $08,$10,$39,$00 + db $08,$18,$39,$20 + db $00,$20,$28,$00 + db $00,$28,$28,$20 + db $08,$20,$38,$00 + db $08,$28,$38,$20 + +FrameBlock16: ; 7b32d (1e:732d) + db $08 + db $00,$00,$29,$00 + db $00,$08,$29,$20 + db $08,$00,$39,$00 + db $08,$08,$39,$20 + db $00,$20,$29,$00 + db $00,$28,$29,$20 + db $08,$20,$39,$00 + db $08,$28,$39,$20 + +FrameBlock17: ; 7b34e (1e:734e) + db $04 + db $00,$00,$08,$00 + db $00,$08,$09,$00 + db $08,$00,$18,$00 + db $08,$08,$19,$00 + +FrameBlock18: ; 7b35f (1e:735f) + db $01 + db $18,$00,$45,$60 + +FrameBlock19: ; 7b364 (1e:7364) + db $02 + db $18,$08,$45,$00 + db $10,$08,$46,$60 + +FrameBlock1a: ; 7b36d (1e:736d) + db $02 + db $10,$10,$45,$60 + db $18,$10,$46,$00 + +FrameBlock1b: ; 7b376 (1e:7376) + db $02 + db $10,$18,$45,$00 + db $08,$18,$46,$60 + +FrameBlock1c: ; 7b37f (1e:737f) + db $02 + db $08,$20,$45,$60 + db $10,$20,$46,$00 + +FrameBlock1d: ; 7b388 (1e:7388) + db $02 + db $08,$28,$45,$00 + db $00,$28,$46,$60 + +FrameBlock1e: ; 7b391 (1e:7391) + db $02 + db $00,$30,$45,$60 + db $08,$30,$46,$00 + +FrameBlock75: ; 7b39a (1e:739a) + db $04 + db $00,$00,$43,$00 + db $00,$08,$43,$20 + db $08,$00,$22,$00 + db $08,$08,$43,$60 + +FrameBlock1f: ; 7b3ab (1e:73ab) + db $02 + db $00,$00,$03,$00 + db $00,$30,$03,$20 + +FrameBlock20: ; 7b3b4 (1e:73b4) + db $06 + db $00,$00,$03,$00 + db $00,$30,$03,$20 + db $08,$08,$03,$00 + db $08,$28,$03,$20 + db $08,$00,$13,$00 + db $08,$30,$13,$20 + +FrameBlock21: ; 7b3cd (1e:73cd) + db $0c + db $00,$00,$03,$00 + db $00,$30,$03,$20 + db $08,$08,$03,$00 + db $08,$28,$03,$20 + db $08,$00,$13,$00 + db $08,$30,$13,$20 + db $10,$10,$03,$00 + db $10,$20,$03,$20 + db $10,$08,$13,$00 + db $10,$28,$13,$20 + db $10,$00,$03,$00 + db $10,$30,$03,$20 + +FrameBlock22: ; 7b3fe (1e:73fe) + db $13 + db $00,$00,$03,$00 + db $08,$00,$13,$00 + db $10,$00,$03,$00 + db $18,$00,$13,$00 + db $08,$08,$03,$00 + db $10,$08,$13,$00 + db $18,$08,$03,$00 + db $10,$10,$03,$00 + db $18,$10,$13,$00 + db $18,$18,$03,$00 + db $10,$20,$03,$20 + db $18,$20,$13,$20 + db $08,$28,$03,$20 + db $10,$28,$13,$20 + db $18,$28,$03,$20 + db $00,$30,$03,$20 + db $08,$30,$13,$20 + db $10,$30,$03,$20 + db $18,$30,$13,$20 + +FrameBlock23: ; 7b44b (1e:744b) + db $04 + db $00,$00,$0a,$00 + db $00,$08,$0b,$00 + db $08,$00,$1a,$00 + db $08,$08,$1b,$00 + +FrameBlock24: ; 7b45c (1e:745c) + db $02 + db $08,$00,$0a,$00 + db $08,$08,$0b,$00 + +FrameBlock25: ; 7b465 (1e:7465) + db $0c + db $10,$00,$0a,$00 + db $10,$08,$0b,$00 + db $18,$00,$1a,$00 + db $18,$08,$1b,$00 + db $00,$10,$0a,$00 + db $00,$18,$0b,$00 + db $08,$10,$1a,$00 + db $08,$18,$1b,$00 + db $08,$20,$0a,$00 + db $08,$28,$0b,$00 + db $10,$20,$1a,$00 + db $10,$28,$1b,$00 + +FrameBlock26: ; 7b496 (1e:7496) + db $04 + db $00,$10,$44,$00 + db $00,$18,$44,$20 + db $08,$10,$44,$40 + db $08,$18,$44,$60 + +FrameBlock27: ; 7b4a7 (1e:74a7) + db $05 + db $08,$08,$44,$00 + db $08,$10,$44,$20 + db $10,$08,$44,$40 + db $10,$10,$44,$60 + db $00,$18,$47,$00 + +FrameBlock28: ; 7b4bc (1e:74bc) + db $06 + db $10,$00,$44,$00 + db $10,$08,$44,$20 + db $18,$00,$44,$40 + db $18,$08,$44,$60 + db $08,$10,$47,$00 + db $02,$16,$47,$00 + +FrameBlock29: ; 7b4d5 (1e:74d5) + db $04 + db $18,$00,$47,$00 + db $12,$06,$47,$00 + db $0c,$0c,$47,$00 + db $06,$12,$47,$00 + +FrameBlock2a: ; 7b4e6 (1e:74e6) + db $04 + db $00,$00,$44,$00 + db $00,$08,$44,$20 + db $08,$00,$44,$40 + db $08,$08,$44,$60 + +FrameBlock2b: ; 7b4f7 (1e:74f7) + db $02 + db $06,$02,$47,$00 + db $00,$08,$47,$00 + +FrameBlock2c: ; 7b500 (1e:7500) + db $01 + db $a0,$00,$4d,$00 + +FrameBlock2d: ; 7b505 (1e:7505) + db $08 + db $00,$00,$26,$00 + db $00,$08,$27,$00 + db $08,$00,$36,$00 + db $08,$08,$37,$00 + db $10,$00,$28,$00 + db $10,$08,$29,$00 + db $18,$00,$38,$00 + db $18,$08,$39,$00 + +FrameBlock2e: ; 7b526 (1e:7526) + db $08 + db $00,$00,$27,$20 + db $00,$08,$26,$20 + db $08,$00,$37,$20 + db $08,$08,$36,$20 + db $10,$00,$29,$20 + db $10,$08,$28,$20 + db $18,$00,$39,$20 + db $18,$08,$38,$20 + +FrameBlock2f: ; 7b547 (1e:7547) + db $04 + db $00,$00,$0c,$00 + db $00,$08,$0d,$00 + db $08,$00,$0c,$40 + db $08,$08,$0d,$40 + +FrameBlock30: ; 7b558 (1e:7558) + db $04 + db $00,$00,$44,$00 + db $00,$08,$44,$20 + db $08,$00,$44,$40 + db $08,$08,$44,$60 + +FrameBlock31: ; 7b569 (1e:7569) + db $01 + db $00,$00,$45,$00 + +FrameBlock32: ; 7b56e (1e:756e) + db $07 + db $00,$00,$4d,$00 + db $00,$08,$2f,$00 + db $00,$10,$4d,$20 + db $08,$00,$4e,$00 + db $08,$08,$07,$00 + db $08,$10,$4e,$20 + db $10,$08,$3f,$00 + +FrameBlock33: ; 7b58b (1e:758b) + db $07 + db $00,$08,$3f,$40 + db $08,$00,$4e,$40 + db $08,$08,$07,$40 + db $08,$10,$4e,$60 + db $10,$00,$4d,$40 + db $10,$08,$2f,$40 + db $10,$10,$4d,$60 + +FrameBlock34: ; 7b5a8 (1e:75a8) + db $01 + db $a0,$00,$00,$10 + +FrameBlock35: ; 7b5ad (1e:75ad) + db $06 + db $00,$00,$2a,$00 + db $00,$08,$2b,$00 + db $08,$00,$3a,$00 + db $10,$00,$3a,$40 + db $18,$00,$2a,$40 + db $18,$08,$2b,$40 + +FrameBlock36: ; 7b5c6 (1e:75c6) + db $04 + db $00,$00,$00,$00 + db $00,$08,$01,$00 + db $08,$00,$10,$00 + db $08,$08,$11,$00 + +FrameBlock37: ; 7b5d7 (1e:75d7) + db $04 + db $00,$00,$01,$a0 + db $00,$08,$00,$a0 + db $08,$00,$11,$a0 + db $08,$08,$10,$a0 + +FrameBlock38: ; 7b5e8 (1e:75e8) + db $04 + db $00,$00,$0a,$00 + db $00,$08,$0b,$00 + db $08,$00,$1a,$00 + db $08,$08,$1b,$00 + +FrameBlock39: ; 7b5f9 (1e:75f9) + db $04 + db $00,$00,$0b,$20 + db $00,$08,$0a,$20 + db $08,$00,$1b,$20 + db $08,$08,$1a,$20 + +FrameBlock3a: ; 7b60a (1e:760a) + db $04 + db $20,$00,$05,$00 + db $20,$08,$05,$20 + db $28,$00,$15,$00 + db $28,$08,$15,$20 + +FrameBlock3b: ; 7b61b (1e:761b) + db $05 + db $18,$00,$04,$00 + db $18,$08,$04,$20 + db $20,$00,$14,$00 + db $20,$08,$14,$20 + db $28,$04,$41,$00 + +FrameBlock3c: ; 7b630 (1e:7630) + db $06 + db $10,$00,$05,$00 + db $10,$08,$05,$20 + db $18,$00,$15,$00 + db $18,$08,$15,$20 + db $20,$04,$42,$00 + db $28,$04,$42,$00 + +FrameBlock3d: ; 7b649 (1e:7649) + db $07 + db $08,$00,$04,$00 + db $08,$08,$04,$20 + db $10,$00,$14,$00 + db $10,$08,$14,$20 + db $18,$04,$41,$00 + db $20,$04,$41,$00 + db $28,$04,$41,$00 + +FrameBlock3e: ; 7b666 (1e:7666) + db $08 + db $00,$00,$05,$00 + db $00,$08,$05,$20 + db $08,$00,$15,$00 + db $08,$08,$15,$20 + db $10,$04,$42,$00 + db $18,$04,$42,$00 + db $20,$04,$42,$00 + db $28,$04,$42,$00 + +FrameBlock3f: ; 7b687 (1e:7687) + db $08 + db $00,$00,$04,$00 + db $00,$08,$04,$20 + db $08,$00,$14,$00 + db $08,$08,$14,$20 + db $10,$04,$41,$00 + db $18,$04,$41,$00 + db $20,$04,$41,$00 + db $28,$04,$41,$00 + +FrameBlock40: ; 7b6a8 (1e:76a8) + db $03 + db $00,$00,$3d,$00 + db $00,$08,$3d,$00 + db $08,$08,$3d,$00 + +FrameBlock41: ; 7b6b5 (1e:76b5) + db $04 + db $00,$00,$06,$00 + db $00,$08,$06,$20 + db $08,$00,$16,$00 + db $08,$08,$17,$00 + +FrameBlock42: ; 7b6c6 (1e:76c6) + db $0b + db $00,$10,$42,$00 + db $08,$00,$42,$00 + db $08,$08,$42,$00 + db $08,$10,$42,$00 + db $08,$18,$42,$00 + db $08,$20,$42,$00 + db $10,$10,$42,$00 + db $18,$08,$42,$00 + db $18,$18,$42,$00 + db $20,$00,$42,$00 + db $20,$20,$42,$00 + +FrameBlock43: ; 7b6f3 (1e:76f3) + db $0b + db $00,$10,$41,$00 + db $08,$00,$41,$00 + db $08,$08,$41,$00 + db $08,$10,$41,$00 + db $08,$18,$41,$00 + db $08,$20,$41,$00 + db $10,$10,$41,$00 + db $18,$08,$41,$00 + db $18,$18,$41,$00 + db $20,$00,$41,$00 + db $20,$20,$41,$00 + +FrameBlock44: ; 7b720 (1e:7720) + db $04 + db $00,$00,$49,$00 + db $00,$28,$49,$00 + db $28,$00,$49,$00 + db $28,$28,$49,$00 + +FrameBlock45: ; 7b731 (1e:7731) + db $04 + db $00,$00,$49,$00 + db $00,$18,$49,$00 + db $18,$00,$49,$00 + db $18,$18,$49,$00 + +FrameBlock46: ; 7b742 (1e:7742) + db $04 + db $00,$00,$49,$00 + db $00,$08,$49,$00 + db $08,$00,$49,$00 + db $08,$08,$49,$00 + +FrameBlock47: ; 7b753 (1e:7753) + db $04 + db $00,$00,$43,$00 + db $00,$08,$43,$20 + db $08,$00,$43,$40 + db $08,$08,$43,$60 + +SmallBlackCircleFrameBlock: ; 7b764 (1e:7764) + db $04 + db $08,$08,$33,$00 + db $08,$10,$33,$20 + db $10,$08,$33,$40 + db $10,$10,$33,$60 + +LargeBlockCircleFrameBlock: ; 7b775 (1e:7775) + db $10 + db $00,$00,$22,$00 + db $00,$08,$23,$00 + db $00,$10,$23,$20 + db $00,$18,$22,$20 + db $08,$00,$32,$00 + db $08,$08,$43,$00 + db $08,$10,$43,$20 + db $08,$18,$32,$20 + db $10,$00,$32,$40 + db $10,$08,$43,$40 + db $10,$10,$43,$60 + db $10,$18,$32,$60 + db $18,$00,$22,$40 + db $18,$08,$23,$40 + db $18,$10,$23,$60 + db $18,$18,$22,$60 + +FrameBlock71: ; 7b7b6 (1e:77b6) + db $10 + db $00,$00,$22,$00 + db $00,$08,$3b,$00 + db $00,$10,$23,$20 + db $00,$18,$22,$20 + db $08,$00,$32,$00 + db $08,$08,$43,$00 + db $08,$10,$43,$20 + db $08,$18,$32,$20 + db $10,$00,$32,$40 + db $10,$08,$43,$40 + db $10,$10,$43,$60 + db $10,$18,$32,$60 + db $18,$00,$22,$40 + db $18,$08,$23,$40 + db $18,$10,$23,$60 + db $18,$18,$22,$60 + +FrameBlock72: ; 7b7f7 (1e:77f7) + db $0c + db $00,$00,$32,$00 + db $00,$08,$43,$00 + db $00,$10,$43,$20 + db $00,$18,$32,$20 + db $08,$00,$32,$40 + db $08,$08,$43,$40 + db $08,$10,$43,$60 + db $08,$18,$32,$60 + db $10,$00,$22,$40 + db $10,$08,$23,$40 + db $10,$10,$23,$60 + db $10,$18,$22,$60 + +FrameBlock73: ; 7b828 (1e:7828) + db $08 + db $00,$00,$32,$40 + db $00,$08,$43,$40 + db $00,$10,$43,$60 + db $00,$18,$32,$60 + db $08,$00,$22,$40 + db $08,$08,$23,$40 + db $08,$10,$23,$60 + db $08,$18,$22,$60 + +FrameBlock74: ; 7b849 (1e:7849) + db $04 + db $00,$00,$22,$40 + db $00,$08,$23,$40 + db $00,$10,$23,$60 + db $00,$18,$22,$60 + +FrameBlock4a: ; 7b85a (1e:785a) + db $04 + db $08,$18,$4c,$20 + db $20,$08,$4b,$00 + db $30,$20,$4c,$00 + db $18,$30,$4b,$40 + +FrameBlock4b: ; 7b86b (1e:786b) + db $04 + db $00,$18,$4c,$00 + db $20,$00,$4b,$40 + db $38,$20,$4c,$20 + db $18,$38,$4b,$00 + +FrameBlock4c: ; 7b87c (1e:787c) + db $04 + db $10,$08,$4a,$40 + db $30,$10,$4a,$00 + db $28,$30,$4a,$20 + db $08,$28,$4a,$60 + +FrameBlock4d: ; 7b88d (1e:788d) + db $04 + db $08,$00,$4a,$20 + db $38,$08,$4a,$60 + db $30,$38,$4a,$40 + db $00,$30,$4a,$00 + +FrameBlock4e: ; 7b89e (1e:789e) + db $08 + db $00,$30,$44,$00 + db $00,$38,$44,$20 + db $08,$30,$44,$40 + db $08,$38,$44,$60 + db $26,$0a,$44,$00 + db $26,$12,$44,$20 + db $2e,$0a,$44,$40 + db $2e,$12,$44,$60 + +FrameBlock4f: ; 7b8bf (1e:78bf) + db $0c + db $0e,$22,$44,$00 + db $0e,$2a,$44,$20 + db $16,$22,$44,$40 + db $16,$2a,$44,$60 + db $06,$32,$47,$00 + db $00,$38,$47,$00 + db $1a,$16,$44,$00 + db $1a,$1e,$44,$20 + db $22,$16,$44,$40 + db $22,$1e,$44,$60 + db $30,$08,$47,$00 + db $2a,$0e,$47,$00 + +FrameBlock50: ; 7b8f0 (1e:78f0) + db $08 + db $06,$32,$47,$00 + db $00,$38,$47,$00 + db $12,$26,$47,$00 + db $0c,$2c,$47,$00 + db $1e,$1a,$47,$00 + db $18,$20,$47,$00 + db $2a,$0e,$47,$00 + db $24,$14,$47,$00 + +FrameBlock51: ; 7b911 (1e:7911) + db $08 + db $00,$00,$35,$20 + db $08,$00,$35,$40 + db $10,$00,$35,$00 + db $18,$00,$35,$60 + db $00,$40,$35,$00 + db $08,$40,$35,$60 + db $10,$40,$35,$20 + db $18,$40,$35,$40 + +FrameBlock52: ; 7b932 (1e:7932) + db $04 + db $00,$00,$2a,$00 + db $00,$08,$2b,$00 + db $08,$00,$3a,$00 + db $08,$08,$3b,$00 + +FrameBlock53: ; 7b943 (1e:7943) + db $03 + db $00,$00,$3f,$00 + db $00,$08,$3f,$00 + db $08,$06,$3f,$00 + +FrameBlock54: ; 7b950 (1e:7950) + db $04 + db $00,$00,$0e,$00 + db $00,$08,$0e,$20 + db $08,$00,$0f,$00 + db $08,$08,$0f,$20 + +FrameBlock55: ; 7b961 (1e:7961) + db $03 + db $10,$00,$2c,$00 + db $10,$08,$3c,$00 + db $10,$10,$2d,$00 + +FrameBlock56: ; 7b96e (1e:796e) + db $06 + db $10,$10,$31,$00 + db $10,$18,$31,$00 + db $08,$10,$2c,$00 + db $08,$18,$3c,$00 + db $08,$20,$2d,$00 + db $10,$20,$2d,$00 + +FrameBlock57: ; 7b987 (1e:7987) + db $09 + db $08,$20,$31,$00 + db $10,$20,$31,$00 + db $08,$28,$31,$00 + db $10,$28,$31,$00 + db $00,$20,$2c,$00 + db $00,$28,$3c,$00 + db $00,$30,$2d,$00 + db $08,$30,$2d,$00 + db $10,$30,$2d,$00 + +FrameBlock58: ; 7b9ac (1e:79ac) + db $07 + db $00,$00,$46,$00 + db $08,$02,$47,$00 + db $10,$03,$48,$00 + db $18,$04,$48,$00 + db $20,$05,$48,$00 + db $28,$05,$48,$00 + db $30,$05,$48,$00 + +FrameBlock59: ; 7b9c9 (1e:79c9) + db $01 + db $00,$00,$42,$00 + +FrameBlock5a: ; 7b9ce (1e:79ce) + db $0c + db $00,$00,$24,$00 + db $00,$08,$25,$00 + db $08,$00,$34,$00 + db $00,$10,$25,$20 + db $00,$18,$24,$20 + db $08,$18,$34,$20 + db $10,$00,$34,$40 + db $18,$00,$24,$40 + db $18,$08,$25,$40 + db $10,$18,$34,$60 + db $18,$10,$25,$60 + db $18,$18,$24,$60 + +FrameBlock5b: ; 7b9ff (1e:79ff) + db $04 + db $00,$00,$43,$00 + db $00,$08,$43,$20 + db $08,$00,$43,$40 + db $08,$08,$43,$60 + +FrameBlock5c: ; 7ba10 (1e:7a10) + db $08 + db $00,$00,$49,$00 + db $02,$08,$49,$00 + db $18,$00,$49,$00 + db $10,$10,$49,$00 + db $08,$00,$43,$00 + db $08,$08,$43,$20 + db $10,$00,$43,$40 + db $10,$08,$43,$60 + +FrameBlock5d: ; 7ba31 (1e:7a31) + db $0b + db $00,$00,$49,$00 + db $18,$02,$49,$00 + db $14,$10,$49,$00 + db $08,$00,$43,$00 + db $00,$08,$43,$20 + db $10,$00,$43,$40 + db $10,$08,$43,$60 + db $04,$08,$43,$00 + db $04,$10,$43,$20 + db $0c,$08,$43,$40 + db $0c,$10,$43,$60 + +FrameBlock5e: ; 7ba5e (1e:7a5e) + db $0f + db $00,$08,$49,$00 + db $08,$10,$49,$00 + db $20,$00,$49,$00 + db $08,$00,$43,$00 + db $08,$08,$43,$20 + db $10,$00,$43,$40 + db $10,$08,$43,$60 + db $10,$10,$43,$00 + db $10,$18,$43,$20 + db $18,$10,$43,$40 + db $18,$18,$43,$60 + db $20,$08,$43,$00 + db $20,$10,$43,$20 + db $28,$08,$43,$40 + db $28,$10,$43,$60 + +FrameBlock5f: ; 7ba9b (1e:7a9b) + db $04 + db $00,$00,$49,$00 + db $00,$10,$49,$00 + db $00,$20,$49,$00 + db $00,$30,$49,$00 + +FrameBlock60: ; 7baac (1e:7aac) + db $08 + db $00,$00,$49,$00 + db $00,$10,$49,$00 + db $00,$20,$49,$00 + db $00,$30,$49,$00 + db $08,$08,$49,$00 + db $08,$18,$49,$00 + db $08,$28,$49,$00 + db $08,$38,$49,$00 + +FrameBlock61: ; 7bacd (1e:7acd) + db $0c + db $00,$00,$49,$00 + db $00,$10,$49,$00 + db $00,$20,$49,$00 + db $00,$30,$49,$00 + db $08,$08,$49,$00 + db $08,$18,$49,$00 + db $08,$28,$49,$00 + db $08,$38,$49,$00 + db $10,$00,$49,$00 + db $10,$10,$49,$00 + db $10,$20,$49,$00 + db $10,$30,$49,$00 + +FrameBlock62: ; 7bafe (1e:7afe) + db $0f + db $00,$00,$49,$00 + db $00,$10,$49,$00 + db $00,$20,$49,$00 + db $00,$30,$49,$00 + db $08,$08,$49,$00 + db $08,$18,$49,$00 + db $08,$28,$49,$00 + db $08,$38,$49,$00 + db $10,$00,$49,$00 + db $10,$10,$49,$00 + db $10,$20,$49,$00 + db $10,$30,$49,$00 + db $18,$08,$49,$00 + db $18,$18,$49,$00 + db $18,$28,$49,$00 + db $18,$38,$49,$00 ; unused + +FrameBlock63: ; 7bb3f (1e:7b3f) + db $06 + db $10,$00,$26,$00 + db $10,$08,$27,$00 + db $08,$10,$26,$00 + db $08,$18,$27,$00 + db $00,$20,$26,$00 + db $00,$28,$27,$00 + +FrameBlock64: ; 7bb58 (1e:7b58) + db $06 + db $18,$00,$27,$00 + db $10,$08,$26,$00 + db $10,$10,$27,$00 + db $08,$18,$26,$00 + db $08,$20,$27,$00 + db $00,$28,$26,$00 + +FrameBlock65: ; 7bb71 (1e:7b71) + db $06 + db $00,$00,$1c,$00 + db $00,$08,$1d,$00 + db $10,$00,$1c,$00 + db $10,$08,$1d,$00 + db $20,$00,$1c,$00 + db $20,$08,$1d,$00 + +FrameBlock66: ; 7bb8a (1e:7b8a) + db $02 + db $00,$00,$03,$00 + db $08,$00,$13,$00 + +FrameBlock67: ; 7bb93 (1e:7b93) + db $01 + db $00,$00,$03,$00 + +FrameBlock68: ; 7bb98 (1e:7b98) + db $04 + db $00,$00,$03,$00 + db $00,$08,$03,$20 + db $08,$00,$13,$00 + db $08,$08,$13,$20 + +FrameBlock69: ; 7bba9 (1e:7ba9) + db $01 + db $00,$00,$06,$00 + +FrameBlock6a: ; 7bbae (1e:7bae) + db $08 + db $00,$00,$2e,$00 + db $00,$30,$2e,$20 + db $30,$00,$2e,$40 + db $30,$30,$2e,$60 + db $00,$18,$2f,$00 + db $30,$18,$2f,$40 + db $18,$00,$3e,$00 + db $18,$30,$3e,$20 + +FrameBlock6b: ; 7bbcf (1e:7bcf) + db $08 + db $00,$00,$2e,$00 + db $00,$20,$2e,$20 + db $20,$00,$2e,$40 + db $20,$20,$2e,$60 + db $00,$10,$2f,$00 + db $20,$10,$2f,$40 + db $10,$00,$3e,$00 + db $10,$20,$3e,$20 + +FrameBlock6c: ; 7bbf0 (1e:7bf0) + db $08 + db $00,$00,$2e,$00 + db $00,$10,$2e,$20 + db $10,$00,$2e,$40 + db $10,$10,$2e,$60 + db $00,$08,$2f,$00 + db $10,$08,$2f,$40 + db $08,$00,$3e,$00 + db $08,$10,$3e,$20 + +FrameBlock6d: ; 7bc11 (1e:7c11) + db $02 + db $00,$00,$1e,$00 + db $00,$08,$1f,$00 + +FrameBlock6e: ; 7bc1a (1e:7c1a) + db $04 + db $00,$00,$48,$00 + db $00,$08,$48,$20 + db $08,$00,$12,$00 + db $08,$08,$12,$20 + +FrameBlock6f: ; 7bc2b (1e:7c2b) + db $04 + db $00,$00,$4a,$00 + db $00,$08,$07,$00 + db $08,$00,$16,$00 + db $08,$08,$17,$00 + +FrameBlock70: ; 7bc3c (1e:7c3c) + db $04 + db $00,$00,$07,$20 + db $00,$08,$4a,$20 + db $08,$00,$17,$20 + db $08,$08,$16,$20 + +FrameBlock76: ; 7bc4d (1e:7c4d) + db $07 + db $00,$10,$2f,$00 + db $01,$08,$2f,$00 + db $01,$18,$2f,$00 + db $02,$00,$2e,$00 + db $02,$20,$2e,$20 + db $0a,$00,$3e,$00 + db $0a,$20,$3e,$20 + +FrameBlock77: ; 7bc6a (1e:7c6a) + db $04 + db $00,$02,$4b,$00 + db $00,$0a,$4c,$00 + db $08,$00,$4c,$60 + db $08,$08,$4b,$60 + +FrameBlock78: ; 7bc7b (1e:7c7b) + db $01 + db $00,$00,$4d,$00 + +FrameBlock79: ; 7bc80 (1e:7c80) + db $01 + db $00,$00,$4e,$00 + +FrameBlockBaseCoords: ; 7bc85 (1e:7c85) + db $10,$68 + db $10,$70 + db $10,$78 + db $10,$80 + db $10,$88 + db $10,$90 + db $10,$98 + db $18,$68 + db $18,$70 + db $18,$78 + db $34,$28 + db $18,$80 + db $18,$88 + db $18,$98 + db $20,$68 + db $20,$70 + db $20,$78 + db $20,$80 + db $20,$88 + db $20,$90 + db $20,$98 + db $28,$68 + db $28,$70 + db $28,$78 + db $28,$80 + db $28,$88 + db $30,$68 + db $30,$70 + db $30,$78 + db $30,$80 + db $30,$90 + db $30,$98 + db $38,$68 + db $38,$78 + db $38,$80 + db $38,$88 + db $40,$68 + db $40,$70 + db $40,$78 + db $40,$80 + db $40,$88 + db $40,$98 + db $10,$60 + db $18,$60 + db $20,$60 + db $28,$60 + db $30,$60 + db $40,$60 + db $58,$28 + db $43,$38 + db $33,$48 + db $20,$58 + db $32,$78 + db $58,$58 + db $2C,$6C + db $34,$80 + db $48,$70 + db $42,$36 + db $38,$44 + db $40,$52 + db $48,$60 + db $3E,$6E + db $28,$7C + db $28,$8A + db $50,$3C + db $48,$50 + db $40,$64 + db $38,$38 + db $50,$30 + db $50,$38 + db $50,$40 + db $50,$48 + db $50,$50 + db $48,$58 + db $50,$44 + db $48,$48 + db $48,$4C + db $40,$50 + db $40,$54 + db $38,$58 + db $38,$5C + db $30,$64 + db $48,$40 + db $48,$39 + db $24,$88 + db $24,$70 + db $1C,$70 + db $1C,$88 + db $34,$68 + db $34,$88 + db $68,$50 + db $60,$50 + db $68,$60 + db $58,$50 + db $60,$60 + db $68,$40 + db $40,$40 + db $38,$40 + db $0B,$60 + db $44,$48 + db $40,$14 + db $48,$1C + db $50,$24 + db $4C,$24 + db $10,$62 + db $12,$62 + db $12,$60 + db $20,$72 + db $22,$72 + db $22,$70 + db $28,$62 + db $50,$0A + db $52,$0A + db $38,$30 + db $40,$48 + db $30,$48 + db $40,$30 + db $30,$40 + db $38,$48 + db $40,$4A + db $48,$4B + db $50,$4C + db $58,$4D + db $60,$4D + db $68,$4D + db $38,$10 + db $50,$10 + db $38,$28 + db $48,$18 + db $40,$20 + db $48,$20 + db $40,$3C + db $38,$50 + db $28,$64 + db $1C,$90 + db $24,$80 + db $2C,$70 + db $30,$38 + db $10,$50 + db $3C,$40 + db $40,$58 + db $30,$58 + db $58,$48 + db $50,$58 + db $48,$68 + db $40,$18 + db $28,$58 + db $40,$38 + db $48,$38 + db $08,$70 + db $44,$1C + db $3C,$58 + db $38,$60 + db $08,$60 + db $38,$70 + db $38,$6C + db $38,$64 + db $1C,$74 + db $2E,$74 + db $34,$50 + db $2F,$60 + db $31,$70 + db $4C,$30 + db $3B,$40 + db $2D,$50 + db $26,$60 + db $2D,$70 + db $28,$50 + db $1E,$60 + db $29,$70 + db $16,$60 + db $14,$58 + db $12,$54 + db $14,$50 + db $18,$4C + db $1C,$48 + db $48,$28 + +FrameBlock00: ; 7bde7 (1e:7de7) + db $00,$00 diff --git a/data/baseStats/abra.asm b/data/baseStats/abra.asm new file mode 100755 index 00000000..4aceb5a8 --- /dev/null +++ b/data/baseStats/abra.asm @@ -0,0 +1,29 @@ +AbraBaseStats: ; 38aa6 (e:4aa6) +db DEX_ABRA ; pokedex id +db 25 ; base hp +db 20 ; base attack +db 15 ; base defense +db 90 ; base speed +db 105 ; base special +db PSYCHIC ; species type 1 +db PSYCHIC ; species type 2 +db 200 ; catch rate +db 73 ; base exp yield +db $55 ; sprite dimensions +dw AbraPicFront +dw AbraPicBack +; attacks known at lvl 0 +db TELEPORT +db 0 +db 0 +db 0 +db 3 ; growth rate +; learnset +db %10110001 +db %00000011 +db %00001111 +db %11110000 +db %10000111 +db %00111000 +db %01000011 +db 0 ; padding diff --git a/data/baseStats/aerodactyl.asm b/data/baseStats/aerodactyl.asm new file mode 100755 index 00000000..72e4def1 --- /dev/null +++ b/data/baseStats/aerodactyl.asm @@ -0,0 +1,29 @@ +AerodactylBaseStats: ; 3934a (e:534a) +db DEX_AERODACTYL ; pokedex id +db 80 ; base hp +db 105 ; base attack +db 65 ; base defense +db 130 ; base speed +db 60 ; base special +db ROCK ; species type 1 +db FLYING ; species type 2 +db 45 ; catch rate +db 202 ; base exp yield +db $77 ; sprite dimensions +dw AerodactylPicFront +dw AerodactylPicBack +; attacks known at lvl 0 +db WING_ATTACK +db AGILITY +db 0 +db 0 +db 5 ; growth rate +; learnset +db %00101010 +db %01000011 +db %01001000 +db %11000000 +db %01100011 +db %00001100 +db %00001010 +db 0 ; padding diff --git a/data/baseStats/alakazam.asm b/data/baseStats/alakazam.asm new file mode 100755 index 00000000..67efbf50 --- /dev/null +++ b/data/baseStats/alakazam.asm @@ -0,0 +1,35 @@ +AlakazamBaseStats: ; 38ade (e:4ade) +db DEX_ALAKAZAM ; pokedex id +db 55 ; base hp +db 50 ; base attack +db 45 ; base defense +db 120 ; base speed +db 135 ; base special +db PSYCHIC ; species type 1 +db PSYCHIC ; species type 2 +db 50 ; catch rate +db 186 ; base exp yield +db $77 ; sprite dimensions +dw AlakazamPicFront +dw AlakazamPicBack +; attacks known at lvl 0 +db TELEPORT +IF !_YELLOW + db CONFUSION + db DISABLE +ENDC +IF _YELLOW + db KINESIS + db 0 +ENDC +db 0 +db 3 ; growth rate +; learnset +db %10110001 +db %01000011 +db %00001111 +db %11111000 +db %10000111 +db %00111000 +db %01000011 +db 0 ; padding diff --git a/data/baseStats/arbok.asm b/data/baseStats/arbok.asm new file mode 100755 index 00000000..682d9f5e --- /dev/null +++ b/data/baseStats/arbok.asm @@ -0,0 +1,29 @@ +ArbokBaseStats: ; 38662 (e:4662) +db DEX_ARBOK ; pokedex id +db 60 ; base hp +db 85 ; base attack +db 69 ; base defense +db 80 ; base speed +db 65 ; base special +db POISON ; species type 1 +db POISON ; species type 2 +db 90 ; catch rate +db 147 ; base exp yield +db $77 ; sprite dimensions +dw ArbokPicFront +dw ArbokPicBack +; attacks known at lvl 0 +db WRAP +db LEER +db POISON_STING +db 0 +db 0 ; growth rate +; learnset +db %10100000 +db %01000011 +db %00011000 +db %11001110 +db %10000010 +db %10001000 +db %00100010 +db 0 ; padding diff --git a/data/baseStats/arcanine.asm b/data/baseStats/arcanine.asm new file mode 100755 index 00000000..6ee9b195 --- /dev/null +++ b/data/baseStats/arcanine.asm @@ -0,0 +1,29 @@ +ArcanineBaseStats: ; 38a36 (e:4a36) +db DEX_ARCANINE ; pokedex id +db 90 ; base hp +db 110 ; base attack +db 80 ; base defense +db 95 ; base speed +db 80 ; base special +db FIRE ; species type 1 +db FIRE ; species type 2 +db 75 ; catch rate +db 213 ; base exp yield +db $77 ; sprite dimensions +dw ArcaninePicFront +dw ArcaninePicBack +; attacks known at lvl 0 +db ROAR +db EMBER +db LEER +db TAKE_DOWN +db 5 ; growth rate +; learnset +db %10100000 +db %01000011 +db %01001000 +db %11101000 +db %11100011 +db %00001000 +db %00000010 +db 0 ; padding diff --git a/data/baseStats/articuno.asm b/data/baseStats/articuno.asm new file mode 100755 index 00000000..749c99d1 --- /dev/null +++ b/data/baseStats/articuno.asm @@ -0,0 +1,29 @@ +ArticunoBaseStats: ; 39382 (e:5382) +db DEX_ARTICUNO ; pokedex id +db 90 ; base hp +db 85 ; base attack +db 100 ; base defense +db 85 ; base speed +db 125 ; base special +db ICE ; species type 1 +db FLYING ; species type 2 +db 3 ; catch rate +db 215 ; base exp yield +db $77 ; sprite dimensions +dw ArticunoPicFront +dw ArticunoPicBack +; attacks known at lvl 0 +db PECK +db ICE_BEAM +db 0 +db 0 +db 5 ; growth rate +; learnset +db %00101010 +db %01111111 +db %00001000 +db %11000000 +db %01000011 +db %00001100 +db %00001010 +db 0 ; padding diff --git a/data/baseStats/beedrill.asm b/data/baseStats/beedrill.asm new file mode 100755 index 00000000..ba7d9f96 --- /dev/null +++ b/data/baseStats/beedrill.asm @@ -0,0 +1,29 @@ +BeedrillBaseStats: ; 38566 (e:4566) +db DEX_BEEDRILL ; pokedex id +db 65 ; base hp +db 80 ; base attack +db 40 ; base defense +db 75 ; base speed +db 45 ; base special +db BUG ; species type 1 +db POISON ; species type 2 +db 45 ; catch rate +db 159 ; base exp yield +db $77 ; sprite dimensions +dw BeedrillPicFront +dw BeedrillPicBack +; attacks known at lvl 0 +db FURY_ATTACK +db 0 +db 0 +db 0 +db 0 ; growth rate +; learnset +db %00100100 +db %01000011 +db %00011000 +db %11000000 +db %11000011 +db %00001000 +db %00000110 +db 0 ; padding diff --git a/data/baseStats/bellsprout.asm b/data/baseStats/bellsprout.asm new file mode 100755 index 00000000..5393c1c9 --- /dev/null +++ b/data/baseStats/bellsprout.asm @@ -0,0 +1,29 @@ +BellsproutBaseStats: ; 38b4e (e:4b4e) +db DEX_BELLSPROUT ; pokedex id +db 50 ; base hp +db 75 ; base attack +db 35 ; base defense +db 40 ; base speed +db 70 ; base special +db GRASS ; species type 1 +db POISON ; species type 2 +db 255 ; catch rate +db 84 ; base exp yield +db $55 ; sprite dimensions +dw BellsproutPicFront +dw BellsproutPicBack +; attacks known at lvl 0 +db VINE_WHIP +db GROWTH +db 0 +db 0 +db 3 ; growth rate +; learnset +db %00100100 +db %00000011 +db %00111000 +db %11000000 +db %00000011 +db %00001000 +db %00000110 +db 0 ; padding diff --git a/data/baseStats/blastoise.asm b/data/baseStats/blastoise.asm new file mode 100755 index 00000000..088ac257 --- /dev/null +++ b/data/baseStats/blastoise.asm @@ -0,0 +1,29 @@ +BlastoiseBaseStats: ; 384be (e:44be) +db DEX_BLASTOISE ; pokedex id +db 79 ; base hp +db 83 ; base attack +db 100 ; base defense +db 78 ; base speed +db 85 ; base special +db WATER ; species type 1 +db WATER ; species type 2 +db 45 ; catch rate +db 210 ; base exp yield +db $77 ; sprite dimensions +dw BlastoisePicFront +dw BlastoisePicBack +; attacks known at lvl 0 +db TACKLE +db TAIL_WHIP +db BUBBLE +db WATER_GUN +db 3 ; growth rate +; learnset +db %10110001 +db %01111111 +db %00001111 +db %11001110 +db %10000011 +db %00001000 +db %00110010 +db 0 ; padding diff --git a/data/baseStats/bulbasaur.asm b/data/baseStats/bulbasaur.asm new file mode 100755 index 00000000..cc9db19f --- /dev/null +++ b/data/baseStats/bulbasaur.asm @@ -0,0 +1,29 @@ +BulbasaurBaseStats: ; 383de (e:43de) +db DEX_BULBASAUR ; pokedex id +db 45 ; base hp +db 49 ; base attack +db 49 ; base defense +db 45 ; base speed +db 65 ; base special +db GRASS ; species type 1 +db POISON ; species type 2 +db 45 ; catch rate +db 64 ; base exp yield +db $55 ; sprite dimensions +dw BulbasaurPicFront +dw BulbasaurPicBack +; attacks known at lvl 0 +db TACKLE +db GROWL +db 0 +db 0 +db 3 ; growth rate +; learnset +db %10100100 +db %00000011 +db %00111000 +db %11000000 +db %00000011 +db %00001000 +db %00000110 +db 0 ; padding diff --git a/data/baseStats/butterfree.asm b/data/baseStats/butterfree.asm new file mode 100755 index 00000000..0573f878 --- /dev/null +++ b/data/baseStats/butterfree.asm @@ -0,0 +1,34 @@ +ButterfreeBaseStats: ; 38512 (e:4512) +db DEX_BUTTERFREE ; pokedex id +db 60 ; base hp +db 45 ; base attack +db 50 ; base defense +db 70 ; base speed +db 80 ; base special +db BUG ; species type 1 +db FLYING ; species type 2 +db 45 ; catch rate +db 160 ; base exp yield +db $77 ; sprite dimensions +dw ButterfreePicFront +dw ButterfreePicBack +; attacks known at lvl 0 +db CONFUSION +db 0 +db 0 +db 0 +db 0 ; growth rate +; learnset +db %00101010 +db %01000011 +db %00111000 +db %11110000 +db %01000011 +db %00101000 +IF !_YELLOW + db %00000010 +ENDC +IF _YELLOW + db %01000010 +ENDC +db 0 ; padding diff --git a/data/baseStats/caterpie.asm b/data/baseStats/caterpie.asm new file mode 100755 index 00000000..fce47780 --- /dev/null +++ b/data/baseStats/caterpie.asm @@ -0,0 +1,29 @@ +CaterpieBaseStats: ; 384da (e:44da) +db DEX_CATERPIE ; pokedex id +db 45 ; base hp +db 30 ; base attack +db 35 ; base defense +db 45 ; base speed +db 20 ; base special +db BUG ; species type 1 +db BUG ; species type 2 +db 255 ; catch rate +db 53 ; base exp yield +db $55 ; sprite dimensions +dw CaterpiePicFront +dw CaterpiePicBack +; attacks known at lvl 0 +db TACKLE +db STRING_SHOT +db 0 +db 0 +db 0 ; growth rate +; learnset +db %00000000 +db %00000000 +db %00000000 +db %00000000 +db %00000000 +db %00000000 +db %00000000 +db 0 ; padding diff --git a/data/baseStats/chansey.asm b/data/baseStats/chansey.asm new file mode 100755 index 00000000..eceb5491 --- /dev/null +++ b/data/baseStats/chansey.asm @@ -0,0 +1,34 @@ +ChanseyBaseStats: ; 3901e (e:501e) +db DEX_CHANSEY ; pokedex id +db 250 ; base hp +db 5 ; base attack +db 5 ; base defense +db 50 ; base speed +db 105 ; base special +db NORMAL ; species type 1 +db NORMAL ; species type 2 +db 30 ; catch rate +db 255 ; base exp yield +db $66 ; sprite dimensions +dw ChanseyPicFront +dw ChanseyPicBack +; attacks known at lvl 0 +db POUND +IF !_YELLOW + db DOUBLESLAP +ENDC +IF _YELLOW + db TAIL_WHIP +ENDC +db 0 +db 0 +db 4 ; growth rate +; learnset +db %10110001 +db %01111111 +db %10101111 +db %11110001 +db %10110111 +db %00111001 +db %01100011 +db 0 ; padding diff --git a/data/baseStats/charizard.asm b/data/baseStats/charizard.asm new file mode 100755 index 00000000..280ce4ab --- /dev/null +++ b/data/baseStats/charizard.asm @@ -0,0 +1,34 @@ +CharizardBaseStats: ; 3846a (e:446a) +db DEX_CHARIZARD ; pokedex id +db 78 ; base hp +db 84 ; base attack +db 78 ; base defense +db 100 ; base speed +db 85 ; base special +db FIRE ; species type 1 +db FLYING ; species type 2 +db 45 ; catch rate +db 209 ; base exp yield +db $77 ; sprite dimensions +dw CharizardPicFront +dw CharizardPicBack +; attacks known at lvl 0 +db SCRATCH +db GROWL +db EMBER +db LEER +db 3 ; growth rate +; learnset +db %10110101 +db %01000011 +db %01001111 +db %11001110 +db %11100011 +db %00001000 +IF !_YELLOW + db %00100110 +ENDC +IF _YELLOW + db %00101110 +ENDC +db 0 ; padding diff --git a/data/baseStats/charmander.asm b/data/baseStats/charmander.asm new file mode 100755 index 00000000..1cb1a623 --- /dev/null +++ b/data/baseStats/charmander.asm @@ -0,0 +1,29 @@ +CharmanderBaseStats: ; 38432 (e:4432) +db DEX_CHARMANDER ; pokedex id +db 39 ; base hp +db 52 ; base attack +db 43 ; base defense +db 65 ; base speed +db 50 ; base special +db FIRE ; species type 1 +db FIRE ; species type 2 +db 45 ; catch rate +db 65 ; base exp yield +db $55 ; sprite dimensions +dw CharmanderPicFront +dw CharmanderPicBack +; attacks known at lvl 0 +db SCRATCH +db GROWL +db 0 +db 0 +db 3 ; growth rate +; learnset +db %10110101 +db %00000011 +db %01001111 +db %11001000 +db %11100011 +db %00001000 +db %00100110 +db 0 ; padding diff --git a/data/baseStats/charmeleon.asm b/data/baseStats/charmeleon.asm new file mode 100755 index 00000000..e4b1ee3f --- /dev/null +++ b/data/baseStats/charmeleon.asm @@ -0,0 +1,29 @@ +CharmeleonBaseStats: ; 3844e (e:444e) +db DEX_CHARMELEON ; pokedex id +db 58 ; base hp +db 64 ; base attack +db 58 ; base defense +db 80 ; base speed +db 65 ; base special +db FIRE ; species type 1 +db FIRE ; species type 2 +db 45 ; catch rate +db 142 ; base exp yield +db $66 ; sprite dimensions +dw CharmeleonPicFront +dw CharmeleonPicBack +; attacks known at lvl 0 +db SCRATCH +db GROWL +db EMBER +db 0 +db 3 ; growth rate +; learnset +db %10110101 +db %00000011 +db %01001111 +db %11001000 +db %11100011 +db %00001000 +db %00100110 +db 0 ; padding diff --git a/data/baseStats/clefable.asm b/data/baseStats/clefable.asm new file mode 100755 index 00000000..76267cc9 --- /dev/null +++ b/data/baseStats/clefable.asm @@ -0,0 +1,29 @@ +ClefableBaseStats: ; 387b2 (e:47b2) +db DEX_CLEFABLE ; pokedex id +db 95 ; base hp +db 70 ; base attack +db 73 ; base defense +db 60 ; base speed +db 85 ; base special +db NORMAL ; species type 1 +db NORMAL ; species type 2 +db 25 ; catch rate +db 129 ; base exp yield +db $66 ; sprite dimensions +dw ClefablePicFront +dw ClefablePicBack +; attacks known at lvl 0 +db SING +db DOUBLESLAP +db MINIMIZE +db METRONOME +db 4 ; growth rate +; learnset +db %10110001 +db %01111111 +db %10101111 +db %11110001 +db %10100111 +db %00111000 +db %01100011 +db 0 ; padding diff --git a/data/baseStats/clefairy.asm b/data/baseStats/clefairy.asm new file mode 100755 index 00000000..6585357e --- /dev/null +++ b/data/baseStats/clefairy.asm @@ -0,0 +1,29 @@ +ClefairyBaseStats: ; 38796 (e:4796) +db DEX_CLEFAIRY ; pokedex id +db 70 ; base hp +db 45 ; base attack +db 48 ; base defense +db 35 ; base speed +db 60 ; base special +db NORMAL ; species type 1 +db NORMAL ; species type 2 +db 150 ; catch rate +db 68 ; base exp yield +db $55 ; sprite dimensions +dw ClefairyPicFront +dw ClefairyPicBack +; attacks known at lvl 0 +db POUND +db GROWL +db 0 +db 0 +db 4 ; growth rate +; learnset +db %10110001 +db %00111111 +db %10101111 +db %11110001 +db %10100111 +db %00111000 +db %01100011 +db 0 ; padding diff --git a/data/baseStats/cloyster.asm b/data/baseStats/cloyster.asm new file mode 100755 index 00000000..c32af3dc --- /dev/null +++ b/data/baseStats/cloyster.asm @@ -0,0 +1,29 @@ +CloysterBaseStats: ; 38db6 (e:4db6) +db DEX_CLOYSTER ; pokedex id +db 50 ; base hp +db 95 ; base attack +db 180 ; base defense +db 70 ; base speed +db 85 ; base special +db WATER ; species type 1 +db ICE ; species type 2 +db 60 ; catch rate +db 203 ; base exp yield +db $77 ; sprite dimensions +dw CloysterPicFront +dw CloysterPicBack +; attacks known at lvl 0 +db WITHDRAW +db SUPERSONIC +db CLAMP +db AURORA_BEAM +db 5 ; growth rate +; learnset +db %00100000 +db %01111111 +db %00001000 +db %11100000 +db %01001011 +db %01001000 +db %00010011 +db 0 ; padding diff --git a/data/baseStats/cubone.asm b/data/baseStats/cubone.asm new file mode 100755 index 00000000..0a9f0ece --- /dev/null +++ b/data/baseStats/cubone.asm @@ -0,0 +1,29 @@ +CuboneBaseStats: ; 38f22 (e:4f22) +db DEX_CUBONE ; pokedex id +db 50 ; base hp +db 50 ; base attack +db 95 ; base defense +db 35 ; base speed +db 40 ; base special +db GROUND ; species type 1 +db GROUND ; species type 2 +db 190 ; catch rate +db 87 ; base exp yield +db $55 ; sprite dimensions +dw CubonePicFront +dw CubonePicBack +; attacks known at lvl 0 +db BONE_CLUB +db GROWL +db 0 +db 0 +db 0 ; growth rate +; learnset +db %10110001 +db %00111111 +db %00001111 +db %11001110 +db %10100010 +db %00001000 +db %00100010 +db 0 ; padding diff --git a/data/baseStats/dewgong.asm b/data/baseStats/dewgong.asm new file mode 100755 index 00000000..3558b34c --- /dev/null +++ b/data/baseStats/dewgong.asm @@ -0,0 +1,29 @@ +DewgongBaseStats: ; 38d46 (e:4d46) +db DEX_DEWGONG ; pokedex id +db 90 ; base hp +db 70 ; base attack +db 80 ; base defense +db 70 ; base speed +db 95 ; base special +db WATER ; species type 1 +db ICE ; species type 2 +db 75 ; catch rate +db 176 ; base exp yield +db $66 ; sprite dimensions +dw DewgongPicFront +dw DewgongPicBack +; attacks known at lvl 0 +db HEADBUTT +db GROWL +db AURORA_BEAM +db 0 +db 0 ; growth rate +; learnset +db %11100000 +db %11111111 +db %00001000 +db %11000000 +db %10000010 +db %00001000 +db %00110010 +db 0 ; padding diff --git a/data/baseStats/diglett.asm b/data/baseStats/diglett.asm new file mode 100755 index 00000000..f227463e --- /dev/null +++ b/data/baseStats/diglett.asm @@ -0,0 +1,34 @@ +DiglettBaseStats: ; 3893a (e:493a) +db DEX_DIGLETT ; pokedex id +db 10 ; base hp +db 55 ; base attack +db 25 ; base defense +db 95 ; base speed +db 45 ; base special +db GROUND ; species type 1 +db GROUND ; species type 2 +db 255 ; catch rate +db 81 ; base exp yield +db $55 ; sprite dimensions +dw DiglettPicFront +dw DiglettPicBack +; attacks known at lvl 0 +db SCRATCH +db 0 +db 0 +db 0 +db 0 ; growth rate +; learnset +db %10100000 +db %00000011 +db %00001000 +db %11001110 +db %00000010 +db %10001000 +IF !_YELLOW + db %00000010 +ENDC +IF _YELLOW + db %00000110 +ENDC +db 0 ; padding diff --git a/data/baseStats/ditto.asm b/data/baseStats/ditto.asm new file mode 100755 index 00000000..f377a373 --- /dev/null +++ b/data/baseStats/ditto.asm @@ -0,0 +1,29 @@ +DittoBaseStats: ; 39232 (e:5232) +db DEX_DITTO ; pokedex id +db 48 ; base hp +db 48 ; base attack +db 48 ; base defense +db 48 ; base speed +db 48 ; base special +db NORMAL ; species type 1 +db NORMAL ; species type 2 +db 35 ; catch rate +db 61 ; base exp yield +db $55 ; sprite dimensions +dw DittoPicFront +dw DittoPicBack +; attacks known at lvl 0 +db TRANSFORM +db 0 +db 0 +db 0 +db 0 ; growth rate +; learnset +db %00000000 +db %00000000 +db %00000000 +db %00000000 +db %00000000 +db %00000000 +db %00000000 +db 0 ; padding diff --git a/data/baseStats/dodrio.asm b/data/baseStats/dodrio.asm new file mode 100755 index 00000000..fd104196 --- /dev/null +++ b/data/baseStats/dodrio.asm @@ -0,0 +1,29 @@ +DodrioBaseStats: ; 38d0e (e:4d0e) +db DEX_DODRIO ; pokedex id +db 60 ; base hp +db 110 ; base attack +db 70 ; base defense +db 100 ; base speed +db 60 ; base special +db NORMAL ; species type 1 +db FLYING ; species type 2 +db 45 ; catch rate +db 158 ; base exp yield +db $77 ; sprite dimensions +dw DodrioPicFront +dw DodrioPicBack +; attacks known at lvl 0 +db PECK +db GROWL +db FURY_ATTACK +db 0 +db 0 ; growth rate +; learnset +db %10101000 +db %01000011 +db %00001000 +db %11000000 +db %10000011 +db %00001100 +db %00001011 +db 0 ; padding diff --git a/data/baseStats/doduo.asm b/data/baseStats/doduo.asm new file mode 100755 index 00000000..239214a7 --- /dev/null +++ b/data/baseStats/doduo.asm @@ -0,0 +1,29 @@ +DoduoBaseStats: ; 38cf2 (e:4cf2) +db DEX_DODUO ; pokedex id +db 35 ; base hp +db 85 ; base attack +db 45 ; base defense +db 75 ; base speed +db 35 ; base special +db NORMAL ; species type 1 +db FLYING ; species type 2 +db 190 ; catch rate +db 96 ; base exp yield +db $55 ; sprite dimensions +dw DoduoPicFront +dw DoduoPicBack +; attacks known at lvl 0 +db PECK +db 0 +db 0 +db 0 +db 0 ; growth rate +; learnset +db %10101000 +db %00000011 +db %00001000 +db %11000000 +db %10000011 +db %00001100 +db %00001011 +db 0 ; padding diff --git a/data/baseStats/dragonair.asm b/data/baseStats/dragonair.asm new file mode 100755 index 00000000..92380dce --- /dev/null +++ b/data/baseStats/dragonair.asm @@ -0,0 +1,29 @@ +DragonairBaseStats: ; 393f2 (e:53f2) +db DEX_DRAGONAIR ; pokedex id +db 61 ; base hp +db 84 ; base attack +db 65 ; base defense +db 70 ; base speed +db 70 ; base special +db DRAGON ; species type 1 +db DRAGON ; species type 2 +db 45 ; catch rate +db 144 ; base exp yield +db $66 ; sprite dimensions +dw DragonairPicFront +dw DragonairPicBack +; attacks known at lvl 0 +db WRAP +db LEER +db THUNDER_WAVE +db 0 +db 5 ; growth rate +; learnset +db %11100000 +db %00111111 +db %11001000 +db %11000001 +db %11100011 +db %00011000 +db %00010010 +db 0 ; padding diff --git a/data/baseStats/dragonite.asm b/data/baseStats/dragonite.asm new file mode 100755 index 00000000..7a68d129 --- /dev/null +++ b/data/baseStats/dragonite.asm @@ -0,0 +1,29 @@ +DragoniteBaseStats: ; 3940e (e:540e) +db DEX_DRAGONITE ; pokedex id +db 91 ; base hp +db 134 ; base attack +db 95 ; base defense +db 80 ; base speed +db 100 ; base special +db DRAGON ; species type 1 +db FLYING ; species type 2 +db 45 ; catch rate +db 218 ; base exp yield +db $77 ; sprite dimensions +dw DragonitePicFront +dw DragonitePicBack +; attacks known at lvl 0 +db WRAP +db LEER +db THUNDER_WAVE +db AGILITY +db 5 ; growth rate +; learnset +db %11100010 +db %01111111 +db %11001000 +db %11000001 +db %11100011 +db %00011000 +db %00110010 +db 0 ; padding diff --git a/data/baseStats/dratini.asm b/data/baseStats/dratini.asm new file mode 100755 index 00000000..f3f66803 --- /dev/null +++ b/data/baseStats/dratini.asm @@ -0,0 +1,29 @@ +DratiniBaseStats: ; 393d6 (e:53d6) +db DEX_DRATINI ; pokedex id +db 41 ; base hp +db 64 ; base attack +db 45 ; base defense +db 50 ; base speed +db 50 ; base special +db DRAGON ; species type 1 +db DRAGON ; species type 2 +db 45 ; catch rate +db 67 ; base exp yield +db $55 ; sprite dimensions +dw DratiniPicFront +dw DratiniPicBack +; attacks known at lvl 0 +db WRAP +db LEER +db 0 +db 0 +db 5 ; growth rate +; learnset +db %10100000 +db %00111111 +db %11001000 +db %11000001 +db %11100011 +db %00011000 +db %00010010 +db 0 ; padding diff --git a/data/baseStats/drowzee.asm b/data/baseStats/drowzee.asm new file mode 100755 index 00000000..14c1aca1 --- /dev/null +++ b/data/baseStats/drowzee.asm @@ -0,0 +1,29 @@ +DrowzeeBaseStats: ; 38e42 (e:4e42) +db DEX_DROWZEE ; pokedex id +db 60 ; base hp +db 48 ; base attack +db 45 ; base defense +db 42 ; base speed +db 90 ; base special +db PSYCHIC ; species type 1 +db PSYCHIC ; species type 2 +db 190 ; catch rate +db 102 ; base exp yield +db $66 ; sprite dimensions +dw DrowzeePicFront +dw DrowzeePicBack +; attacks known at lvl 0 +db POUND +db HYPNOSIS +db 0 +db 0 +db 0 ; growth rate +; learnset +db %10110001 +db %00000011 +db %00001111 +db %11110000 +db %10000111 +db %00111010 +db %01000011 +db 0 ; padding diff --git a/data/baseStats/dugtrio.asm b/data/baseStats/dugtrio.asm new file mode 100755 index 00000000..dbea18df --- /dev/null +++ b/data/baseStats/dugtrio.asm @@ -0,0 +1,34 @@ +DugtrioBaseStats: ; 38956 (e:4956) +db DEX_DUGTRIO ; pokedex id +db 35 ; base hp +db 80 ; base attack +db 50 ; base defense +db 120 ; base speed +db 70 ; base special +db GROUND ; species type 1 +db GROUND ; species type 2 +db 50 ; catch rate +db 153 ; base exp yield +db $66 ; sprite dimensions +dw DugtrioPicFront +dw DugtrioPicBack +; attacks known at lvl 0 +db SCRATCH +db GROWL +db DIG +db 0 +db 0 ; growth rate +; learnset +db %10100000 +db %01000011 +db %00001000 +db %11001110 +db %00000010 +db %10001000 +IF !_YELLOW + db %00000010 +ENDC +IF _YELLOW + db %00000110 +ENDC +db 0 ; padding diff --git a/data/baseStats/eevee.asm b/data/baseStats/eevee.asm new file mode 100755 index 00000000..9f5935ef --- /dev/null +++ b/data/baseStats/eevee.asm @@ -0,0 +1,34 @@ +EeveeBaseStats: ; 3924e (e:524e) +db DEX_EEVEE ; pokedex id +db 55 ; base hp +db 55 ; base attack +db 50 ; base defense +db 55 ; base speed +db 65 ; base special +db NORMAL ; species type 1 +db NORMAL ; species type 2 +db 45 ; catch rate +db 92 ; base exp yield +db $55 ; sprite dimensions +dw EeveePicFront +dw EeveePicBack +; attacks known at lvl 0 +db TACKLE +IF !_YELLOW + db SAND_ATTACK +ENDC +IF _YELLOW + db TAIL_WHIP +ENDC +db 0 +db 0 +db 0 ; growth rate +; learnset +db %10100000 +db %00000011 +db %00001000 +db %11000000 +db %11000011 +db %00001000 +db %00000010 +db 0 ; padding diff --git a/data/baseStats/ekans.asm b/data/baseStats/ekans.asm new file mode 100755 index 00000000..00bdcb25 --- /dev/null +++ b/data/baseStats/ekans.asm @@ -0,0 +1,29 @@ +EkansBaseStats: ; 38646 (e:4646) +db DEX_EKANS ; pokedex id +db 35 ; base hp +db 60 ; base attack +db 44 ; base defense +db 55 ; base speed +db 40 ; base special +db POISON ; species type 1 +db POISON ; species type 2 +db 255 ; catch rate +db 62 ; base exp yield +db $55 ; sprite dimensions +dw EkansPicFront +dw EkansPicBack +; attacks known at lvl 0 +db WRAP +db LEER +db 0 +db 0 +db 0 ; growth rate +; learnset +db %10100000 +db %00000011 +db %00011000 +db %11001110 +db %10000010 +db %10001000 +db %00100010 +db 0 ; padding diff --git a/data/baseStats/electabuzz.asm b/data/baseStats/electabuzz.asm new file mode 100755 index 00000000..340e0eb0 --- /dev/null +++ b/data/baseStats/electabuzz.asm @@ -0,0 +1,29 @@ +ElectabuzzBaseStats: ; 3916e (e:516e) +db DEX_ELECTABUZZ ; pokedex id +db 65 ; base hp +db 83 ; base attack +db 57 ; base defense +db 105 ; base speed +db 85 ; base special +db ELECTRIC ; species type 1 +db ELECTRIC ; species type 2 +db 45 ; catch rate +db 156 ; base exp yield +db $66 ; sprite dimensions +dw ElectabuzzPicFront +dw ElectabuzzPicBack +; attacks known at lvl 0 +db QUICK_ATTACK +db LEER +db 0 +db 0 +db 0 ; growth rate +; learnset +db %10110001 +db %01000011 +db %10001111 +db %11110001 +db %11000111 +db %00111000 +db %01100010 +db 0 ; padding diff --git a/data/baseStats/electrode.asm b/data/baseStats/electrode.asm new file mode 100755 index 00000000..3e738692 --- /dev/null +++ b/data/baseStats/electrode.asm @@ -0,0 +1,29 @@ +ElectrodeBaseStats: ; 38ece (e:4ece) +db DEX_ELECTRODE ; pokedex id +db 60 ; base hp +db 50 ; base attack +db 70 ; base defense +db 140 ; base speed +db 80 ; base special +db ELECTRIC ; species type 1 +db ELECTRIC ; species type 2 +db 60 ; catch rate +db 150 ; base exp yield +db $55 ; sprite dimensions +dw ElectrodePicFront +dw ElectrodePicBack +; attacks known at lvl 0 +db TACKLE +db SCREECH +db SONICBOOM +db 0 +db 0 ; growth rate +; learnset +db %00100000 +db %01000001 +db %10001000 +db %11100001 +db %11001011 +db %01011000 +db %01000010 +db 0 ; padding diff --git a/data/baseStats/exeggcute.asm b/data/baseStats/exeggcute.asm new file mode 100755 index 00000000..aba88c7f --- /dev/null +++ b/data/baseStats/exeggcute.asm @@ -0,0 +1,29 @@ +ExeggcuteBaseStats: ; 38eea (e:4eea) +db DEX_EXEGGCUTE ; pokedex id +db 60 ; base hp +db 40 ; base attack +db 80 ; base defense +db 40 ; base speed +db 60 ; base special +db GRASS ; species type 1 +db PSYCHIC ; species type 2 +db 90 ; catch rate +db 98 ; base exp yield +db $77 ; sprite dimensions +dw ExeggcutePicFront +dw ExeggcutePicBack +; attacks known at lvl 0 +db BARRAGE +db HYPNOSIS +db 0 +db 0 +db 5 ; growth rate +; learnset +db %00100000 +db %00000011 +db %00001000 +db %11110000 +db %00011011 +db %01101000 +db %00000010 +db 0 ; padding diff --git a/data/baseStats/exeggutor.asm b/data/baseStats/exeggutor.asm new file mode 100755 index 00000000..4e2820c2 --- /dev/null +++ b/data/baseStats/exeggutor.asm @@ -0,0 +1,29 @@ +ExeggutorBaseStats: ; 38f06 (e:4f06) +db DEX_EXEGGUTOR ; pokedex id +db 95 ; base hp +db 95 ; base attack +db 85 ; base defense +db 55 ; base speed +db 125 ; base special +db GRASS ; species type 1 +db PSYCHIC ; species type 2 +db 45 ; catch rate +db 212 ; base exp yield +db $77 ; sprite dimensions +dw ExeggutorPicFront +dw ExeggutorPicBack +; attacks known at lvl 0 +db BARRAGE +db HYPNOSIS +db 0 +db 0 +db 5 ; growth rate +; learnset +db %00100000 +db %01000011 +db %00111000 +db %11110000 +db %00011011 +db %01101000 +db %00100010 +db 0 ; padding diff --git a/data/baseStats/farfetchd.asm b/data/baseStats/farfetchd.asm new file mode 100755 index 00000000..ee9770a8 --- /dev/null +++ b/data/baseStats/farfetchd.asm @@ -0,0 +1,29 @@ +FarfetchdBaseStats: ; 38cd6 (e:4cd6) +db DEX_FARFETCH_D ; pokedex id +db 52 ; base hp +db 65 ; base attack +db 55 ; base defense +db 60 ; base speed +db 58 ; base special +db NORMAL ; species type 1 +db FLYING ; species type 2 +db 45 ; catch rate +db 94 ; base exp yield +db $66 ; sprite dimensions +dw FarfetchdPicFront +dw FarfetchdPicBack +; attacks known at lvl 0 +db PECK +db SAND_ATTACK +db 0 +db 0 +db 0 ; growth rate +; learnset +db %10101110 +db %00000011 +db %00001000 +db %11000000 +db %11000011 +db %00001000 +db %00001110 +db 0 ; padding diff --git a/data/baseStats/fearow.asm b/data/baseStats/fearow.asm new file mode 100755 index 00000000..398c32fb --- /dev/null +++ b/data/baseStats/fearow.asm @@ -0,0 +1,29 @@ +FearowBaseStats: ; 3862a (e:462a) +db DEX_FEAROW ; pokedex id +db 65 ; base hp +db 90 ; base attack +db 65 ; base defense +db 100 ; base speed +db 61 ; base special +db NORMAL ; species type 1 +db FLYING ; species type 2 +db 90 ; catch rate +db 162 ; base exp yield +db $77 ; sprite dimensions +dw FearowPicFront +dw FearowPicBack +; attacks known at lvl 0 +db PECK +db GROWL +db LEER +db 0 +db 0 ; growth rate +; learnset +db %00101010 +db %01000011 +db %00001000 +db %11000000 +db %01000010 +db %00001100 +db %00001010 +db 0 ; padding diff --git a/data/baseStats/flareon.asm b/data/baseStats/flareon.asm new file mode 100755 index 00000000..91a4b955 --- /dev/null +++ b/data/baseStats/flareon.asm @@ -0,0 +1,34 @@ +FlareonBaseStats: ; 392a2 (e:52a2) +db DEX_FLAREON ; pokedex id +db 65 ; base hp +db 130 ; base attack +db 60 ; base defense +db 65 ; base speed +db 110 ; base special +db FIRE ; species type 1 +db FIRE ; species type 2 +db 45 ; catch rate +db 198 ; base exp yield +db $66 ; sprite dimensions +dw FlareonPicFront +dw FlareonPicBack +; attacks known at lvl 0 +db TACKLE +IF !_YELLOW + db SAND_ATTACK +ENDC +IF _YELLOW + db TAIL_WHIP +ENDC +db QUICK_ATTACK +db EMBER +db 0 ; growth rate +; learnset +db %10100000 +db %01000011 +db %00001000 +db %11000000 +db %11100011 +db %00001000 +db %00000010 +db 0 ; padding diff --git a/data/baseStats/gastly.asm b/data/baseStats/gastly.asm new file mode 100755 index 00000000..f60d7f6d --- /dev/null +++ b/data/baseStats/gastly.asm @@ -0,0 +1,29 @@ +GastlyBaseStats: ; 38dd2 (e:4dd2) +db DEX_GASTLY ; pokedex id +db 30 ; base hp +db 35 ; base attack +db 30 ; base defense +db 80 ; base speed +db 100 ; base special +db GHOST ; species type 1 +db POISON ; species type 2 +db 190 ; catch rate +db 95 ; base exp yield +db $77 ; sprite dimensions +dw GastlyPicFront +dw GastlyPicBack +; attacks known at lvl 0 +db LICK +db CONFUSE_RAY +db NIGHT_SHADE +db 0 +db 3 ; growth rate +; learnset +db %00100000 +db %00000000 +db %10011000 +db %11010001 +db %00001010 +db %01101010 +db %00000010 +db 0 ; padding diff --git a/data/baseStats/gengar.asm b/data/baseStats/gengar.asm new file mode 100755 index 00000000..905fdc19 --- /dev/null +++ b/data/baseStats/gengar.asm @@ -0,0 +1,29 @@ +GengarBaseStats: ; 38e0a (e:4e0a) +db DEX_GENGAR ; pokedex id +db 60 ; base hp +db 65 ; base attack +db 60 ; base defense +db 110 ; base speed +db 130 ; base special +db GHOST ; species type 1 +db POISON ; species type 2 +db 45 ; catch rate +db 190 ; base exp yield +db $66 ; sprite dimensions +dw GengarPicFront +dw GengarPicBack +; attacks known at lvl 0 +db LICK +db CONFUSE_RAY +db NIGHT_SHADE +db 0 +db 3 ; growth rate +; learnset +db %10110001 +db %01000011 +db %10011111 +db %11010001 +db %10001110 +db %01101010 +db %00100010 +db 0 ; padding diff --git a/data/baseStats/geodude.asm b/data/baseStats/geodude.asm new file mode 100755 index 00000000..a07fca42 --- /dev/null +++ b/data/baseStats/geodude.asm @@ -0,0 +1,29 @@ +GeodudeBaseStats: ; 38bda (e:4bda) +db DEX_GEODUDE ; pokedex id +db 40 ; base hp +db 80 ; base attack +db 100 ; base defense +db 20 ; base speed +db 30 ; base special +db ROCK ; species type 1 +db GROUND ; species type 2 +db 255 ; catch rate +db 86 ; base exp yield +db $55 ; sprite dimensions +dw GeodudePicFront +dw GeodudePicBack +; attacks known at lvl 0 +db TACKLE +db 0 +db 0 +db 0 +db 3 ; growth rate +; learnset +db %10100001 +db %00000011 +db %00001111 +db %11001110 +db %00101110 +db %11001000 +db %00100010 +db 0 ; padding diff --git a/data/baseStats/gloom.asm b/data/baseStats/gloom.asm new file mode 100755 index 00000000..388b5bdc --- /dev/null +++ b/data/baseStats/gloom.asm @@ -0,0 +1,29 @@ +GloomBaseStats: ; 38892 (e:4892) +db DEX_GLOOM ; pokedex id +db 60 ; base hp +db 65 ; base attack +db 70 ; base defense +db 40 ; base speed +db 85 ; base special +db GRASS ; species type 1 +db POISON ; species type 2 +db 120 ; catch rate +db 132 ; base exp yield +db $66 ; sprite dimensions +dw GloomPicFront +dw GloomPicBack +; attacks known at lvl 0 +db ABSORB +db POISONPOWDER +db STUN_SPORE +db 0 +db 3 ; growth rate +; learnset +db %00100100 +db %00000011 +db %00111000 +db %11000000 +db %00000011 +db %00001000 +db %00000110 +db 0 ; padding diff --git a/data/baseStats/golbat.asm b/data/baseStats/golbat.asm new file mode 100755 index 00000000..d4b0d6c0 --- /dev/null +++ b/data/baseStats/golbat.asm @@ -0,0 +1,29 @@ +GolbatBaseStats: ; 3885a (e:485a) +db DEX_GOLBAT ; pokedex id +db 75 ; base hp +db 80 ; base attack +db 70 ; base defense +db 90 ; base speed +db 75 ; base special +db POISON ; species type 1 +db FLYING ; species type 2 +db 90 ; catch rate +db 171 ; base exp yield +db $77 ; sprite dimensions +dw GolbatPicFront +dw GolbatPicBack +; attacks known at lvl 0 +db LEECH_LIFE +db SCREECH +db BITE +db 0 +db 0 ; growth rate +; learnset +db %00101010 +db %01000011 +db %00011000 +db %11000000 +db %01000010 +db %00001000 +db %00000010 +db 0 ; padding diff --git a/data/baseStats/goldeen.asm b/data/baseStats/goldeen.asm new file mode 100755 index 00000000..87401de1 --- /dev/null +++ b/data/baseStats/goldeen.asm @@ -0,0 +1,29 @@ +GoldeenBaseStats: ; 390aa (e:50aa) +db DEX_GOLDEEN ; pokedex id +db 45 ; base hp +db 67 ; base attack +db 60 ; base defense +db 63 ; base speed +db 50 ; base special +db WATER ; species type 1 +db WATER ; species type 2 +db 225 ; catch rate +db 111 ; base exp yield +db $66 ; sprite dimensions +dw GoldeenPicFront +dw GoldeenPicBack +; attacks known at lvl 0 +db PECK +db TAIL_WHIP +db 0 +db 0 +db 0 ; growth rate +; learnset +db %01100000 +db %00111111 +db %00001000 +db %11000000 +db %11000010 +db %00001000 +db %00010010 +db 0 ; padding diff --git a/data/baseStats/golduck.asm b/data/baseStats/golduck.asm new file mode 100755 index 00000000..52f544c5 --- /dev/null +++ b/data/baseStats/golduck.asm @@ -0,0 +1,29 @@ +GolduckBaseStats: ; 389c6 (e:49c6) +db DEX_GOLDUCK ; pokedex id +db 80 ; base hp +db 82 ; base attack +db 78 ; base defense +db 85 ; base speed +db 80 ; base special +db WATER ; species type 1 +db WATER ; species type 2 +db 75 ; catch rate +db 174 ; base exp yield +db $77 ; sprite dimensions +dw GolduckPicFront +dw GolduckPicBack +; attacks known at lvl 0 +db SCRATCH +db TAIL_WHIP +db DISABLE +db 0 +db 0 ; growth rate +; learnset +db %10110001 +db %11111111 +db %00001111 +db %11001000 +db %11000010 +db %00001000 +db %00110010 +db 0 ; padding diff --git a/data/baseStats/golem.asm b/data/baseStats/golem.asm new file mode 100755 index 00000000..0cfc1077 --- /dev/null +++ b/data/baseStats/golem.asm @@ -0,0 +1,29 @@ +GolemBaseStats: ; 38c12 (e:4c12) +db DEX_GOLEM ; pokedex id +db 80 ; base hp +db 110 ; base attack +db 130 ; base defense +db 45 ; base speed +db 55 ; base special +db ROCK ; species type 1 +db GROUND ; species type 2 +db 45 ; catch rate +db 177 ; base exp yield +db $66 ; sprite dimensions +dw GolemPicFront +dw GolemPicBack +; attacks known at lvl 0 +db TACKLE +db DEFENSE_CURL +db 0 +db 0 +db 3 ; growth rate +; learnset +db %10110001 +db %01000011 +db %00001111 +db %11001110 +db %00101110 +db %11001000 +db %00100010 +db 0 ; padding diff --git a/data/baseStats/graveler.asm b/data/baseStats/graveler.asm new file mode 100755 index 00000000..c3e2b03f --- /dev/null +++ b/data/baseStats/graveler.asm @@ -0,0 +1,29 @@ +GravelerBaseStats: ; 38bf6 (e:4bf6) +db DEX_GRAVELER ; pokedex id +db 55 ; base hp +db 95 ; base attack +db 115 ; base defense +db 35 ; base speed +db 45 ; base special +db ROCK ; species type 1 +db GROUND ; species type 2 +db 120 ; catch rate +db 134 ; base exp yield +db $66 ; sprite dimensions +dw GravelerPicFront +dw GravelerPicBack +; attacks known at lvl 0 +db TACKLE +db DEFENSE_CURL +db 0 +db 0 +db 3 ; growth rate +; learnset +db %10100001 +db %00000011 +db %00001111 +db %11001110 +db %00101110 +db %11001000 +db %00100010 +db 0 ; padding diff --git a/data/baseStats/grimer.asm b/data/baseStats/grimer.asm new file mode 100755 index 00000000..dcfda99d --- /dev/null +++ b/data/baseStats/grimer.asm @@ -0,0 +1,29 @@ +GrimerBaseStats: ; 38d62 (e:4d62) +db DEX_GRIMER ; pokedex id +db 80 ; base hp +db 80 ; base attack +db 50 ; base defense +db 25 ; base speed +db 40 ; base special +db POISON ; species type 1 +db POISON ; species type 2 +db 190 ; catch rate +db 90 ; base exp yield +db $55 ; sprite dimensions +dw GrimerPicFront +dw GrimerPicBack +; attacks known at lvl 0 +db POUND +db DISABLE +db 0 +db 0 +db 0 ; growth rate +; learnset +db %10100000 +db %00000000 +db %10011000 +db %11000001 +db %00101010 +db %01001000 +db %00000010 +db 0 ; padding diff --git a/data/baseStats/growlithe.asm b/data/baseStats/growlithe.asm new file mode 100755 index 00000000..715b0f73 --- /dev/null +++ b/data/baseStats/growlithe.asm @@ -0,0 +1,29 @@ +GrowlitheBaseStats: ; 38a1a (e:4a1a) +db DEX_GROWLITHE ; pokedex id +db 55 ; base hp +db 70 ; base attack +db 45 ; base defense +db 60 ; base speed +db 50 ; base special +db FIRE ; species type 1 +db FIRE ; species type 2 +db 190 ; catch rate +db 91 ; base exp yield +db $55 ; sprite dimensions +dw GrowlithePicFront +dw GrowlithePicBack +; attacks known at lvl 0 +db BITE +db ROAR +db 0 +db 0 +db 5 ; growth rate +; learnset +db %10100000 +db %00000011 +db %01001000 +db %11001000 +db %11100011 +db %00001000 +db %00000010 +db 0 ; padding diff --git a/data/baseStats/gyarados.asm b/data/baseStats/gyarados.asm new file mode 100755 index 00000000..0c74a43b --- /dev/null +++ b/data/baseStats/gyarados.asm @@ -0,0 +1,37 @@ +GyaradosBaseStats: ; 391fa (e:51fa) +db DEX_GYARADOS ; pokedex id +db 95 ; base hp +db 125 ; base attack +db 79 ; base defense +db 81 ; base speed +db 100 ; base special +db WATER ; species type 1 +db FLYING ; species type 2 +db 45 ; catch rate +db 214 ; base exp yield +db $77 ; sprite dimensions +dw GyaradosPicFront +dw GyaradosPicBack +; attacks known at lvl 0 +IF !_YELLOW +db BITE +db DRAGON_RAGE +db LEER +db HYDRO_PUMP +ENDC +IF _YELLOW +db TACKLE +db 0 +db 0 +db 0 +ENDC +db 5 ; growth rate +; learnset +db %10100000 +db %01111111 +db %11001000 +db %11000001 +db %10100011 +db %00001000 +db %00110010 +db 0 ; padding diff --git a/data/baseStats/haunter.asm b/data/baseStats/haunter.asm new file mode 100755 index 00000000..ef46ea39 --- /dev/null +++ b/data/baseStats/haunter.asm @@ -0,0 +1,29 @@ +HaunterBaseStats: ; 38dee (e:4dee) +db DEX_HAUNTER ; pokedex id +db 45 ; base hp +db 50 ; base attack +db 45 ; base defense +db 95 ; base speed +db 115 ; base special +db GHOST ; species type 1 +db POISON ; species type 2 +db 90 ; catch rate +db 126 ; base exp yield +db $66 ; sprite dimensions +dw HaunterPicFront +dw HaunterPicBack +; attacks known at lvl 0 +db LICK +db CONFUSE_RAY +db NIGHT_SHADE +db 0 +db 3 ; growth rate +; learnset +db %00100000 +db %00000000 +db %10011000 +db %11010001 +db %00001010 +db %01101010 +db %00000010 +db 0 ; padding diff --git a/data/baseStats/hitmonchan.asm b/data/baseStats/hitmonchan.asm new file mode 100755 index 00000000..25026ed4 --- /dev/null +++ b/data/baseStats/hitmonchan.asm @@ -0,0 +1,29 @@ +HitmonchanBaseStats: ; 38f76 (e:4f76) +db DEX_HITMONCHAN ; pokedex id +db 50 ; base hp +db 105 ; base attack +db 79 ; base defense +db 76 ; base speed +db 35 ; base special +db FIGHTING ; species type 1 +db FIGHTING ; species type 2 +db 45 ; catch rate +db 140 ; base exp yield +db $66 ; sprite dimensions +dw HitmonchanPicFront +dw HitmonchanPicBack +; attacks known at lvl 0 +db COMET_PUNCH +db AGILITY +db 0 +db 0 +db 0 ; growth rate +; learnset +db %10110001 +db %00000011 +db %00001111 +db %11000000 +db %11000110 +db %00001000 +db %00100010 +db 0 ; padding diff --git a/data/baseStats/hitmonlee.asm b/data/baseStats/hitmonlee.asm new file mode 100755 index 00000000..11c69508 --- /dev/null +++ b/data/baseStats/hitmonlee.asm @@ -0,0 +1,29 @@ +HitmonleeBaseStats: ; 38f5a (e:4f5a) +db DEX_HITMONLEE ; pokedex id +db 50 ; base hp +db 120 ; base attack +db 53 ; base defense +db 87 ; base speed +db 35 ; base special +db FIGHTING ; species type 1 +db FIGHTING ; species type 2 +db 45 ; catch rate +db 139 ; base exp yield +db $77 ; sprite dimensions +dw HitmonleePicFront +dw HitmonleePicBack +; attacks known at lvl 0 +db DOUBLE_KICK +db MEDITATE +db 0 +db 0 +db 0 ; growth rate +; learnset +db %10110001 +db %00000011 +db %00001111 +db %11000000 +db %11000110 +db %00001000 +db %00100010 +db 0 ; padding diff --git a/data/baseStats/horsea.asm b/data/baseStats/horsea.asm new file mode 100755 index 00000000..22d0824c --- /dev/null +++ b/data/baseStats/horsea.asm @@ -0,0 +1,29 @@ +HorseaBaseStats: ; 39072 (e:5072) +db DEX_HORSEA ; pokedex id +db 30 ; base hp +db 40 ; base attack +db 70 ; base defense +db 60 ; base speed +db 70 ; base special +db WATER ; species type 1 +db WATER ; species type 2 +db 225 ; catch rate +db 83 ; base exp yield +db $55 ; sprite dimensions +dw HorseaPicFront +dw HorseaPicBack +; attacks known at lvl 0 +db BUBBLE +db 0 +db 0 +db 0 +db 0 ; growth rate +; learnset +db %00100000 +db %00111111 +db %00001000 +db %11000000 +db %11000010 +db %00001000 +db %00010010 +db 0 ; padding diff --git a/data/baseStats/hypno.asm b/data/baseStats/hypno.asm new file mode 100755 index 00000000..269656d8 --- /dev/null +++ b/data/baseStats/hypno.asm @@ -0,0 +1,29 @@ +HypnoBaseStats: ; 38e5e (e:4e5e) +db DEX_HYPNO ; pokedex id +db 85 ; base hp +db 73 ; base attack +db 70 ; base defense +db 67 ; base speed +db 115 ; base special +db PSYCHIC ; species type 1 +db PSYCHIC ; species type 2 +db 75 ; catch rate +db 165 ; base exp yield +db $77 ; sprite dimensions +dw HypnoPicFront +dw HypnoPicBack +; attacks known at lvl 0 +db POUND +db HYPNOSIS +db DISABLE +db CONFUSION +db 0 ; growth rate +; learnset +db %10110001 +db %01000011 +db %00001111 +db %11110000 +db %10000111 +db %00111010 +db %01000011 +db 0 ; padding diff --git a/data/baseStats/ivysaur.asm b/data/baseStats/ivysaur.asm new file mode 100755 index 00000000..16d75207 --- /dev/null +++ b/data/baseStats/ivysaur.asm @@ -0,0 +1,29 @@ +IvysaurBaseStats: ; 383fa (e:43fa) +db DEX_IVYSAUR ; pokedex id +db 60 ; base hp +db 62 ; base attack +db 63 ; base defense +db 60 ; base speed +db 80 ; base special +db GRASS ; species type 1 +db POISON ; species type 2 +db 45 ; catch rate +db 141 ; base exp yield +db $66 ; sprite dimensions +dw IvysaurPicFront +dw IvysaurPicBack +; attacks known at lvl 0 +db TACKLE +db GROWL +db LEECH_SEED +db 0 +db 3 ; growth rate +; learnset +db %10100100 +db %00000011 +db %00111000 +db %11000000 +db %00000011 +db %00001000 +db %00000110 +db 0 ; padding diff --git a/data/baseStats/jigglypuff.asm b/data/baseStats/jigglypuff.asm new file mode 100755 index 00000000..444e195c --- /dev/null +++ b/data/baseStats/jigglypuff.asm @@ -0,0 +1,29 @@ +JigglypuffBaseStats: ; 38806 (e:4806) +db DEX_JIGGLYPUFF ; pokedex id +db 115 ; base hp +db 45 ; base attack +db 20 ; base defense +db 20 ; base speed +db 25 ; base special +db NORMAL ; species type 1 +db NORMAL ; species type 2 +db 170 ; catch rate +db 76 ; base exp yield +db $55 ; sprite dimensions +dw JigglypuffPicFront +dw JigglypuffPicBack +; attacks known at lvl 0 +db SING +db 0 +db 0 +db 0 +db 4 ; growth rate +; learnset +db %10110001 +db %00111111 +db %10101111 +db %11110001 +db %10100011 +db %00111000 +db %01100011 +db 0 ; padding diff --git a/data/baseStats/jolteon.asm b/data/baseStats/jolteon.asm new file mode 100755 index 00000000..6cf004e3 --- /dev/null +++ b/data/baseStats/jolteon.asm @@ -0,0 +1,34 @@ +JolteonBaseStats: ; 39286 (e:5286) +db DEX_JOLTEON ; pokedex id +db 65 ; base hp +db 65 ; base attack +db 60 ; base defense +db 130 ; base speed +db 110 ; base special +db ELECTRIC ; species type 1 +db ELECTRIC ; species type 2 +db 45 ; catch rate +db 197 ; base exp yield +db $66 ; sprite dimensions +dw JolteonPicFront +dw JolteonPicBack +; attacks known at lvl 0 +db TACKLE +IF !_YELLOW + db SAND_ATTACK +ENDC +IF _YELLOW + db TAIL_WHIP +ENDC +db QUICK_ATTACK +db THUNDERSHOCK +db 0 ; growth rate +; learnset +db %10100000 +db %01000011 +db %10001000 +db %11000001 +db %11000011 +db %00011000 +db %01000010 +db 0 ; padding diff --git a/data/baseStats/jynx.asm b/data/baseStats/jynx.asm new file mode 100755 index 00000000..a6fe671e --- /dev/null +++ b/data/baseStats/jynx.asm @@ -0,0 +1,29 @@ +JynxBaseStats: ; 39152 (e:5152) +db DEX_JYNX ; pokedex id +db 65 ; base hp +db 50 ; base attack +db 35 ; base defense +db 95 ; base speed +db 95 ; base special +db ICE ; species type 1 +db PSYCHIC ; species type 2 +db 45 ; catch rate +db 137 ; base exp yield +db $66 ; sprite dimensions +dw JynxPicFront +dw JynxPicBack +; attacks known at lvl 0 +db POUND +db LOVELY_KISS +db 0 +db 0 +db 0 ; growth rate +; learnset +db %10110001 +db %01111111 +db %00001111 +db %11110000 +db %10000111 +db %00101000 +db %00000010 +db 0 ; padding diff --git a/data/baseStats/kabuto.asm b/data/baseStats/kabuto.asm new file mode 100755 index 00000000..74f7539c --- /dev/null +++ b/data/baseStats/kabuto.asm @@ -0,0 +1,29 @@ +KabutoBaseStats: ; 39312 (e:5312) +db DEX_KABUTO ; pokedex id +db 30 ; base hp +db 80 ; base attack +db 90 ; base defense +db 55 ; base speed +db 45 ; base special +db ROCK ; species type 1 +db WATER ; species type 2 +db 45 ; catch rate +db 119 ; base exp yield +db $55 ; sprite dimensions +dw KabutoPicFront +dw KabutoPicBack +; attacks known at lvl 0 +db SCRATCH +db HARDEN +db 0 +db 0 +db 0 ; growth rate +; learnset +db %10100000 +db %00111111 +db %00001000 +db %11000000 +db %00000011 +db %00001000 +db %00010010 +db 0 ; padding diff --git a/data/baseStats/kabutops.asm b/data/baseStats/kabutops.asm new file mode 100755 index 00000000..7cf7ccb1 --- /dev/null +++ b/data/baseStats/kabutops.asm @@ -0,0 +1,29 @@ +KabutopsBaseStats: ; 3932e (e:532e) +db DEX_KABUTOPS ; pokedex id +db 60 ; base hp +db 115 ; base attack +db 105 ; base defense +db 80 ; base speed +db 70 ; base special +db ROCK ; species type 1 +db WATER ; species type 2 +db 45 ; catch rate +db 201 ; base exp yield +db $66 ; sprite dimensions +dw KabutopsPicFront +dw KabutopsPicBack +; attacks known at lvl 0 +db SCRATCH +db HARDEN +db ABSORB +db 0 +db 0 ; growth rate +; learnset +db %10110110 +db %01111111 +db %00001101 +db %11000000 +db %10000011 +db %00001000 +db %00010010 +db 0 ; padding diff --git a/data/baseStats/kadabra.asm b/data/baseStats/kadabra.asm new file mode 100755 index 00000000..eecfb266 --- /dev/null +++ b/data/baseStats/kadabra.asm @@ -0,0 +1,35 @@ +KadabraBaseStats: ; 38ac2 (e:4ac2) +db DEX_KADABRA ; pokedex id +db 40 ; base hp +db 35 ; base attack +db 30 ; base defense +db 105 ; base speed +db 120 ; base special +db PSYCHIC ; species type 1 +db PSYCHIC ; species type 2 +db 100 ; catch rate +db 145 ; base exp yield +db $66 ; sprite dimensions +dw KadabraPicFront +dw KadabraPicBack +; attacks known at lvl 0 +db TELEPORT +IF !_YELLOW + db CONFUSION + db DISABLE +ENDC +IF _YELLOW + DB KINESIS + db 0 +ENDC +db 0 +db 3 ; growth rate +; learnset +db %10110001 +db %00000011 +db %00001111 +db %11111000 +db %10000111 +db %00111000 +db %01000011 +db 0 ; padding diff --git a/data/baseStats/kakuna.asm b/data/baseStats/kakuna.asm new file mode 100755 index 00000000..b503a8a9 --- /dev/null +++ b/data/baseStats/kakuna.asm @@ -0,0 +1,29 @@ +KakunaBaseStats: ; 3854a (e:454a) +db DEX_KAKUNA ; pokedex id +db 45 ; base hp +db 25 ; base attack +db 50 ; base defense +db 35 ; base speed +db 25 ; base special +db BUG ; species type 1 +db POISON ; species type 2 +db 120 ; catch rate +db 71 ; base exp yield +db $55 ; sprite dimensions +dw KakunaPicFront +dw KakunaPicBack +; attacks known at lvl 0 +db HARDEN +db 0 +db 0 +db 0 +db 0 ; growth rate +; learnset +db %00000000 +db %00000000 +db %00000000 +db %00000000 +db %00000000 +db %00000000 +db %00000000 +db 0 ; padding diff --git a/data/baseStats/kangaskhan.asm b/data/baseStats/kangaskhan.asm new file mode 100755 index 00000000..7bc066f4 --- /dev/null +++ b/data/baseStats/kangaskhan.asm @@ -0,0 +1,29 @@ +KangaskhanBaseStats: ; 39056 (e:5056) +db DEX_KANGASKHAN ; pokedex id +db 105 ; base hp +db 95 ; base attack +db 80 ; base defense +db 90 ; base speed +db 40 ; base special +db NORMAL ; species type 1 +db NORMAL ; species type 2 +db 45 ; catch rate +db 175 ; base exp yield +db $77 ; sprite dimensions +dw KangaskhanPicFront +dw KangaskhanPicBack +; attacks known at lvl 0 +db COMET_PUNCH +db RAGE +db 0 +db 0 +db 0 ; growth rate +; learnset +db %10110001 +db %01111111 +db %10001111 +db %11000111 +db %10100010 +db %10001000 +db %00110010 +db 0 ; padding diff --git a/data/baseStats/kingler.asm b/data/baseStats/kingler.asm new file mode 100755 index 00000000..8d4d7c56 --- /dev/null +++ b/data/baseStats/kingler.asm @@ -0,0 +1,29 @@ +KinglerBaseStats: ; 38e96 (e:4e96) +db DEX_KINGLER ; pokedex id +db 55 ; base hp +db 130 ; base attack +db 115 ; base defense +db 75 ; base speed +db 50 ; base special +db WATER ; species type 1 +db WATER ; species type 2 +db 60 ; catch rate +db 206 ; base exp yield +db $77 ; sprite dimensions +dw KinglerPicFront +dw KinglerPicBack +; attacks known at lvl 0 +db BUBBLE +db LEER +db VICEGRIP +db 0 +db 0 ; growth rate +; learnset +db %10100100 +db %01111111 +db %00001000 +db %11000000 +db %00000010 +db %00001000 +db %00110110 +db 0 ; padding diff --git a/data/baseStats/koffing.asm b/data/baseStats/koffing.asm new file mode 100755 index 00000000..7f86c2ef --- /dev/null +++ b/data/baseStats/koffing.asm @@ -0,0 +1,29 @@ +KoffingBaseStats: ; 38fae (e:4fae) +db DEX_KOFFING ; pokedex id +db 40 ; base hp +db 65 ; base attack +db 95 ; base defense +db 35 ; base speed +db 60 ; base special +db POISON ; species type 1 +db POISON ; species type 2 +db 190 ; catch rate +db 114 ; base exp yield +db $66 ; sprite dimensions +dw KoffingPicFront +dw KoffingPicBack +; attacks known at lvl 0 +db TACKLE +db SMOG +db 0 +db 0 +db 0 ; growth rate +; learnset +db %00100000 +db %00000000 +db %10001000 +db %11000001 +db %00101010 +db %01001000 +db %00000010 +db 0 ; padding diff --git a/data/baseStats/krabby.asm b/data/baseStats/krabby.asm new file mode 100755 index 00000000..64ce47a0 --- /dev/null +++ b/data/baseStats/krabby.asm @@ -0,0 +1,29 @@ +KrabbyBaseStats: ; 38e7a (e:4e7a) +db DEX_KRABBY ; pokedex id +db 30 ; base hp +db 105 ; base attack +db 90 ; base defense +db 50 ; base speed +db 25 ; base special +db WATER ; species type 1 +db WATER ; species type 2 +db 225 ; catch rate +db 115 ; base exp yield +db $55 ; sprite dimensions +dw KrabbyPicFront +dw KrabbyPicBack +; attacks known at lvl 0 +db BUBBLE +db LEER +db 0 +db 0 +db 0 ; growth rate +; learnset +db %10100100 +db %00111111 +db %00001000 +db %11000000 +db %00000010 +db %00001000 +db %00110110 +db 0 ; padding diff --git a/data/baseStats/lapras.asm b/data/baseStats/lapras.asm new file mode 100755 index 00000000..1dfc3f7b --- /dev/null +++ b/data/baseStats/lapras.asm @@ -0,0 +1,29 @@ +LaprasBaseStats: ; 39216 (e:5216) +db DEX_LAPRAS ; pokedex id +db 130 ; base hp +db 85 ; base attack +db 80 ; base defense +db 60 ; base speed +db 95 ; base special +db WATER ; species type 1 +db ICE ; species type 2 +db 45 ; catch rate +db 219 ; base exp yield +db $77 ; sprite dimensions +dw LaprasPicFront +dw LaprasPicBack +; attacks known at lvl 0 +db WATER_GUN +db GROWL +db 0 +db 0 +db 5 ; growth rate +; learnset +db %11100000 +db %01111111 +db %11101000 +db %11010001 +db %10000011 +db %00101000 +db %00110010 +db 0 ; padding diff --git a/data/baseStats/lickitung.asm b/data/baseStats/lickitung.asm new file mode 100755 index 00000000..810936ee --- /dev/null +++ b/data/baseStats/lickitung.asm @@ -0,0 +1,29 @@ +LickitungBaseStats: ; 38f92 (e:4f92) +db DEX_LICKITUNG ; pokedex id +db 90 ; base hp +db 55 ; base attack +db 75 ; base defense +db 30 ; base speed +db 60 ; base special +db NORMAL ; species type 1 +db NORMAL ; species type 2 +db 45 ; catch rate +db 127 ; base exp yield +db $77 ; sprite dimensions +dw LickitungPicFront +dw LickitungPicBack +; attacks known at lvl 0 +db WRAP +db SUPERSONIC +db 0 +db 0 +db 0 ; growth rate +; learnset +db %10110101 +db %01111111 +db %10001111 +db %11000111 +db %10100010 +db %00001000 +db %00110110 +db 0 ; padding diff --git a/data/baseStats/machamp.asm b/data/baseStats/machamp.asm new file mode 100755 index 00000000..9d105d0b --- /dev/null +++ b/data/baseStats/machamp.asm @@ -0,0 +1,29 @@ +MachampBaseStats: ; 38b32 (e:4b32) +db DEX_MACHAMP ; pokedex id +db 90 ; base hp +db 130 ; base attack +db 80 ; base defense +db 55 ; base speed +db 65 ; base special +db FIGHTING ; species type 1 +db FIGHTING ; species type 2 +db 45 ; catch rate +db 193 ; base exp yield +db $77 ; sprite dimensions +dw MachampPicFront +dw MachampPicBack +; attacks known at lvl 0 +db KARATE_CHOP +db LOW_KICK +db LEER +db 0 +db 3 ; growth rate +; learnset +db %10110001 +db %01000011 +db %00001111 +db %11001110 +db %10100110 +db %10001000 +db %00100010 +db 0 ; padding diff --git a/data/baseStats/machoke.asm b/data/baseStats/machoke.asm new file mode 100755 index 00000000..4fd97567 --- /dev/null +++ b/data/baseStats/machoke.asm @@ -0,0 +1,29 @@ +MachokeBaseStats: ; 38b16 (e:4b16) +db DEX_MACHOKE ; pokedex id +db 80 ; base hp +db 100 ; base attack +db 70 ; base defense +db 45 ; base speed +db 50 ; base special +db FIGHTING ; species type 1 +db FIGHTING ; species type 2 +db 90 ; catch rate +db 146 ; base exp yield +db $77 ; sprite dimensions +dw MachokePicFront +dw MachokePicBack +; attacks known at lvl 0 +db KARATE_CHOP +db LOW_KICK +db LEER +db 0 +db 3 ; growth rate +; learnset +db %10110001 +db %00000011 +db %00001111 +db %11001110 +db %10100110 +db %10001000 +db %00100010 +db 0 ; padding diff --git a/data/baseStats/machop.asm b/data/baseStats/machop.asm new file mode 100755 index 00000000..2b9250f1 --- /dev/null +++ b/data/baseStats/machop.asm @@ -0,0 +1,29 @@ +MachopBaseStats: ; 38afa (e:4afa) +db DEX_MACHOP ; pokedex id +db 70 ; base hp +db 80 ; base attack +db 50 ; base defense +db 35 ; base speed +db 35 ; base special +db FIGHTING ; species type 1 +db FIGHTING ; species type 2 +db 180 ; catch rate +db 88 ; base exp yield +db $55 ; sprite dimensions +dw MachopPicFront +dw MachopPicBack +; attacks known at lvl 0 +db KARATE_CHOP +db 0 +db 0 +db 0 +db 3 ; growth rate +; learnset +db %10110001 +db %00000011 +db %00001111 +db %11001110 +db %10100110 +db %10001000 +db %00100010 +db 0 ; padding diff --git a/data/baseStats/magikarp.asm b/data/baseStats/magikarp.asm new file mode 100755 index 00000000..a8a0ee13 --- /dev/null +++ b/data/baseStats/magikarp.asm @@ -0,0 +1,29 @@ +MagikarpBaseStats: ; 391de (e:51de) +db DEX_MAGIKARP ; pokedex id +db 20 ; base hp +db 10 ; base attack +db 55 ; base defense +db 80 ; base speed +db 20 ; base special +db WATER ; species type 1 +db WATER ; species type 2 +db 255 ; catch rate +db 20 ; base exp yield +db $66 ; sprite dimensions +dw MagikarpPicFront +dw MagikarpPicBack +; attacks known at lvl 0 +db SPLASH +db 0 +db 0 +db 0 +db 5 ; growth rate +; learnset +db %00000000 +db %00000000 +db %00000000 +db %00000000 +db %00000000 +db %00000000 +db %00000000 +db 0 ; padding diff --git a/data/baseStats/magmar.asm b/data/baseStats/magmar.asm new file mode 100755 index 00000000..915ed593 --- /dev/null +++ b/data/baseStats/magmar.asm @@ -0,0 +1,29 @@ +MagmarBaseStats: ; 3918a (e:518a) +db DEX_MAGMAR ; pokedex id +db 65 ; base hp +db 95 ; base attack +db 57 ; base defense +db 93 ; base speed +db 85 ; base special +db FIRE ; species type 1 +db FIRE ; species type 2 +db 45 ; catch rate +db 167 ; base exp yield +db $66 ; sprite dimensions +dw MagmarPicFront +dw MagmarPicBack +; attacks known at lvl 0 +db EMBER +db 0 +db 0 +db 0 +db 0 ; growth rate +; learnset +db %10110001 +db %01000011 +db %00001111 +db %11110000 +db %10100110 +db %00101000 +db %00100010 +db 0 ; padding diff --git a/data/baseStats/magnemite.asm b/data/baseStats/magnemite.asm new file mode 100755 index 00000000..d6f5d802 --- /dev/null +++ b/data/baseStats/magnemite.asm @@ -0,0 +1,29 @@ +MagnemiteBaseStats: ; 38c9e (e:4c9e) +db DEX_MAGNEMITE ; pokedex id +db 25 ; base hp +db 35 ; base attack +db 70 ; base defense +db 45 ; base speed +db 95 ; base special +db ELECTRIC ; species type 1 +db ELECTRIC ; species type 2 +db 190 ; catch rate +db 89 ; base exp yield +db $55 ; sprite dimensions +dw MagnemitePicFront +dw MagnemitePicBack +; attacks known at lvl 0 +db TACKLE +db 0 +db 0 +db 0 +db 0 ; growth rate +; learnset +db %00100000 +db %00000011 +db %10001000 +db %11100001 +db %01000011 +db %00011000 +db %01000010 +db 0 ; padding diff --git a/data/baseStats/magneton.asm b/data/baseStats/magneton.asm new file mode 100755 index 00000000..4cc2ad79 --- /dev/null +++ b/data/baseStats/magneton.asm @@ -0,0 +1,29 @@ +MagnetonBaseStats: ; 38cba (e:4cba) +db DEX_MAGNETON ; pokedex id +db 50 ; base hp +db 60 ; base attack +db 95 ; base defense +db 70 ; base speed +db 120 ; base special +db ELECTRIC ; species type 1 +db ELECTRIC ; species type 2 +db 60 ; catch rate +db 161 ; base exp yield +db $66 ; sprite dimensions +dw MagnetonPicFront +dw MagnetonPicBack +; attacks known at lvl 0 +db TACKLE +db SONICBOOM +db THUNDERSHOCK +db 0 +db 0 ; growth rate +; learnset +db %00100000 +db %01000011 +db %10001000 +db %11100001 +db %01000011 +db %00011000 +db %01000010 +db 0 ; padding diff --git a/data/baseStats/mankey.asm b/data/baseStats/mankey.asm new file mode 100755 index 00000000..6177c52f --- /dev/null +++ b/data/baseStats/mankey.asm @@ -0,0 +1,29 @@ +MankeyBaseStats: ; 389e2 (e:49e2) +db DEX_MANKEY ; pokedex id +db 40 ; base hp +db 80 ; base attack +db 35 ; base defense +db 70 ; base speed +db 35 ; base special +db FIGHTING ; species type 1 +db FIGHTING ; species type 2 +db 190 ; catch rate +db 74 ; base exp yield +db $55 ; sprite dimensions +dw MankeyPicFront +dw MankeyPicBack +; attacks known at lvl 0 +db SCRATCH +db LEER +db 0 +db 0 +db 0 ; growth rate +; learnset +db %10110001 +db %10000011 +db %10001111 +db %11001001 +db %11000110 +db %10001000 +db %00100010 +db 0 ; padding diff --git a/data/baseStats/marowak.asm b/data/baseStats/marowak.asm new file mode 100755 index 00000000..6a209361 --- /dev/null +++ b/data/baseStats/marowak.asm @@ -0,0 +1,36 @@ +MarowakBaseStats: ; 38f3e (e:4f3e) +db DEX_MAROWAK ; pokedex id +db 60 ; base hp +db 80 ; base attack +db 110 ; base defense +db 45 ; base speed +db 50 ; base special +db GROUND ; species type 1 +db GROUND ; species type 2 +db 75 ; catch rate +db 124 ; base exp yield +db $66 ; sprite dimensions +dw MarowakPicFront +dw MarowakPicBack +; attacks known at lvl 0 +db BONE_CLUB +IF !_YELLOW + db GROWL + db LEER + db FOCUS_ENERGY +ENDC +IF _YELLOW + db TAIL_WHIP + db 0 + db 0 +ENDC +db 0 ; growth rate +; learnset +db %10110001 +db %01111111 +db %00001111 +db %11001110 +db %10100010 +db %00001000 +db %00100010 +db 0 ; padding diff --git a/data/baseStats/meowth.asm b/data/baseStats/meowth.asm new file mode 100755 index 00000000..89ccdf2f --- /dev/null +++ b/data/baseStats/meowth.asm @@ -0,0 +1,29 @@ +MeowthBaseStats: ; 38972 (e:4972) +db DEX_MEOWTH ; pokedex id +db 40 ; base hp +db 45 ; base attack +db 35 ; base defense +db 90 ; base speed +db 40 ; base special +db NORMAL ; species type 1 +db NORMAL ; species type 2 +db 255 ; catch rate +db 69 ; base exp yield +db $55 ; sprite dimensions +dw MeowthPicFront +dw MeowthPicBack +; attacks known at lvl 0 +db SCRATCH +db GROWL +db 0 +db 0 +db 0 ; growth rate +; learnset +db %10100000 +db %10001111 +db %10001000 +db %11000001 +db %11000010 +db %00001000 +db %00000010 +db 0 ; padding diff --git a/data/baseStats/metapod.asm b/data/baseStats/metapod.asm new file mode 100755 index 00000000..2a75ff55 --- /dev/null +++ b/data/baseStats/metapod.asm @@ -0,0 +1,29 @@ +MetapodBaseStats: ; 384f6 (e:44f6) +db DEX_METAPOD ; pokedex id +db 50 ; base hp +db 20 ; base attack +db 55 ; base defense +db 30 ; base speed +db 25 ; base special +db BUG ; species type 1 +db BUG ; species type 2 +db 120 ; catch rate +db 72 ; base exp yield +db $55 ; sprite dimensions +dw MetapodPicFront +dw MetapodPicBack +; attacks known at lvl 0 +db HARDEN +db 0 +db 0 +db 0 +db 0 ; growth rate +; learnset +db %00000000 +db %00000000 +db %00000000 +db %00000000 +db %00000000 +db %00000000 +db %00000000 +db 0 ; padding diff --git a/data/baseStats/mew.asm b/data/baseStats/mew.asm new file mode 100755 index 00000000..3a6d3327 --- /dev/null +++ b/data/baseStats/mew.asm @@ -0,0 +1,29 @@ +MewBaseStats: ; 425b (1:425b) +db DEX_MEW ; pokedex id +db 100 ; base hp +db 100 ; base attack +db 100 ; base defense +db 100 ; base speed +db 100 ; base special +db PSYCHIC ; species type 1 +db PSYCHIC ; species type 2 +db 45 ; catch rate +db 64 ; base exp yield +db $55 ; sprite dimensions +dw MewPicFront +dw MewPicBack +; attacks known at lvl 0 +db POUND +db 0 +db 0 +db 0 +db 3 ; growth rate +; include learnset directly +db %11111111 +db %11111111 +db %11111111 +db %11111111 +db %11111111 +db %11111111 +db %11111111 +db %11111111 ; usually spacing diff --git a/data/baseStats/mewtwo.asm b/data/baseStats/mewtwo.asm new file mode 100755 index 00000000..a5ddc958 --- /dev/null +++ b/data/baseStats/mewtwo.asm @@ -0,0 +1,29 @@ +MewtwoBaseStats: ; 3942a (e:542a) +db DEX_MEWTWO ; pokedex id +db 106 ; base hp +db 110 ; base attack +db 90 ; base defense +db 130 ; base speed +db 154 ; base special +db PSYCHIC ; species type 1 +db PSYCHIC ; species type 2 +db 3 ; catch rate +db 220 ; base exp yield +db $77 ; sprite dimensions +dw MewtwoPicFront +dw MewtwoPicBack +; attacks known at lvl 0 +db CONFUSION +db DISABLE +db SWIFT +db PSYCHIC_M +db 5 ; growth rate +; learnset +db %10110001 +db %11111111 +db %10101111 +db %11110001 +db %10101111 +db %00111000 +db %01100011 +db 0 ; padding diff --git a/data/baseStats/moltres.asm b/data/baseStats/moltres.asm new file mode 100755 index 00000000..85699f6e --- /dev/null +++ b/data/baseStats/moltres.asm @@ -0,0 +1,29 @@ +MoltresBaseStats: ; 393ba (e:53ba) +db DEX_MOLTRES ; pokedex id +db 90 ; base hp +db 100 ; base attack +db 90 ; base defense +db 90 ; base speed +db 125 ; base special +db FIRE ; species type 1 +db FLYING ; species type 2 +db 3 ; catch rate +db 217 ; base exp yield +db $77 ; sprite dimensions +dw MoltresPicFront +dw MoltresPicBack +; attacks known at lvl 0 +db PECK +db FIRE_SPIN +db 0 +db 0 +db 5 ; growth rate +; learnset +db %00101010 +db %01000011 +db %00001000 +db %11000000 +db %01100011 +db %00001100 +db %00001010 +db 0 ; padding diff --git a/data/baseStats/mrmime.asm b/data/baseStats/mrmime.asm new file mode 100755 index 00000000..8d3d8bd7 --- /dev/null +++ b/data/baseStats/mrmime.asm @@ -0,0 +1,29 @@ +MrMimeBaseStats: ; 3911a (e:511a) +db DEX_MR_MIME ; pokedex id +db 40 ; base hp +db 45 ; base attack +db 65 ; base defense +db 90 ; base speed +db 100 ; base special +db PSYCHIC ; species type 1 +db PSYCHIC ; species type 2 +db 45 ; catch rate +db 136 ; base exp yield +db $66 ; sprite dimensions +dw MrMimePicFront +dw MrMimePicBack +; attacks known at lvl 0 +db CONFUSION +db BARRIER +db 0 +db 0 +db 0 ; growth rate +; learnset +db %10110001 +db %01000011 +db %10101111 +db %11110001 +db %10000111 +db %00111000 +db %01000010 +db 0 ; padding diff --git a/data/baseStats/muk.asm b/data/baseStats/muk.asm new file mode 100755 index 00000000..79c1e1be --- /dev/null +++ b/data/baseStats/muk.asm @@ -0,0 +1,29 @@ +MukBaseStats: ; 38d7e (e:4d7e) +db DEX_MUK ; pokedex id +db 105 ; base hp +db 105 ; base attack +db 75 ; base defense +db 50 ; base speed +db 65 ; base special +db POISON ; species type 1 +db POISON ; species type 2 +db 75 ; catch rate +db 157 ; base exp yield +db $77 ; sprite dimensions +dw MukPicFront +dw MukPicBack +; attacks known at lvl 0 +db POUND +db DISABLE +db POISON_GAS +db 0 +db 0 ; growth rate +; learnset +db %10100000 +db %01000000 +db %10011000 +db %11000001 +db %00101010 +db %01001000 +db %00000010 +db 0 ; padding diff --git a/data/baseStats/nidoking.asm b/data/baseStats/nidoking.asm new file mode 100755 index 00000000..55cd235d --- /dev/null +++ b/data/baseStats/nidoking.asm @@ -0,0 +1,29 @@ +NidokingBaseStats: ; 3877a (e:477a) +db DEX_NIDOKING ; pokedex id +db 81 ; base hp +db 92 ; base attack +db 77 ; base defense +db 85 ; base speed +db 75 ; base special +db POISON ; species type 1 +db GROUND ; species type 2 +db 45 ; catch rate +db 195 ; base exp yield +db $77 ; sprite dimensions +dw NidokingPicFront +dw NidokingPicBack +; attacks known at lvl 0 +db TACKLE +db HORN_ATTACK +db POISON_STING +db THRASH +db 3 ; growth rate +; learnset +db %11110001 +db %11111111 +db %10001111 +db %11000111 +db %10100011 +db %10001000 +db %00110010 +db 0 ; padding diff --git a/data/baseStats/nidoqueen.asm b/data/baseStats/nidoqueen.asm new file mode 100755 index 00000000..12054109 --- /dev/null +++ b/data/baseStats/nidoqueen.asm @@ -0,0 +1,29 @@ +NidoqueenBaseStats: ; 38726 (e:4726) +db DEX_NIDOQUEEN ; pokedex id +db 90 ; base hp +db 82 ; base attack +db 87 ; base defense +db 76 ; base speed +db 75 ; base special +db POISON ; species type 1 +db GROUND ; species type 2 +db 45 ; catch rate +db 194 ; base exp yield +db $77 ; sprite dimensions +dw NidoqueenPicFront +dw NidoqueenPicBack +; attacks known at lvl 0 +db TACKLE +db SCRATCH +db TAIL_WHIP +db BODY_SLAM +db 3 ; growth rate +; learnset +db %11110001 +db %11111111 +db %10001111 +db %11000111 +db %10100011 +db %10001000 +db %00110010 +db 0 ; padding diff --git a/data/baseStats/nidoranf.asm b/data/baseStats/nidoranf.asm new file mode 100755 index 00000000..9a399a15 --- /dev/null +++ b/data/baseStats/nidoranf.asm @@ -0,0 +1,29 @@ +NidoranFBaseStats: ; 386ee (e:46ee) +db DEX_NIDORAN_F ; pokedex id +db 55 ; base hp +db 47 ; base attack +db 52 ; base defense +db 41 ; base speed +db 40 ; base special +db POISON ; species type 1 +db POISON ; species type 2 +db 235 ; catch rate +db 59 ; base exp yield +db $55 ; sprite dimensions +dw NidoranFPicFront +dw NidoranFPicBack +; attacks known at lvl 0 +db GROWL +db TACKLE +db 0 +db 0 +db 3 ; growth rate +; learnset +db %10100000 +db %00100011 +db %10001000 +db %11000001 +db %10000011 +db %00001000 +db %00000010 +db 0 ; padding diff --git a/data/baseStats/nidoranm.asm b/data/baseStats/nidoranm.asm new file mode 100755 index 00000000..646c94d3 --- /dev/null +++ b/data/baseStats/nidoranm.asm @@ -0,0 +1,29 @@ +NidoranMBaseStats: ; 38742 (e:4742) +db DEX_NIDORAN_M ; pokedex id +db 46 ; base hp +db 57 ; base attack +db 40 ; base defense +db 50 ; base speed +db 40 ; base special +db POISON ; species type 1 +db POISON ; species type 2 +db 235 ; catch rate +db 60 ; base exp yield +db $55 ; sprite dimensions +dw NidoranMPicFront +dw NidoranMPicBack +; attacks known at lvl 0 +db LEER +db TACKLE +db 0 +db 0 +db 3 ; growth rate +; learnset +db %11100000 +db %00100011 +db %10001000 +db %11000001 +db %10000011 +db %00001000 +db %00000010 +db 0 ; padding diff --git a/data/baseStats/nidorina.asm b/data/baseStats/nidorina.asm new file mode 100755 index 00000000..6787022d --- /dev/null +++ b/data/baseStats/nidorina.asm @@ -0,0 +1,29 @@ +NidorinaBaseStats: ; 3870a (e:470a) +db DEX_NIDORINA ; pokedex id +db 70 ; base hp +db 62 ; base attack +db 67 ; base defense +db 56 ; base speed +db 55 ; base special +db POISON ; species type 1 +db POISON ; species type 2 +db 120 ; catch rate +db 117 ; base exp yield +db $66 ; sprite dimensions +dw NidorinaPicFront +dw NidorinaPicBack +; attacks known at lvl 0 +db GROWL +db TACKLE +db SCRATCH +db 0 +db 3 ; growth rate +; learnset +db %11100000 +db %00111111 +db %10001000 +db %11000001 +db %10000011 +db %00001000 +db %00000010 +db 0 ; padding diff --git a/data/baseStats/nidorino.asm b/data/baseStats/nidorino.asm new file mode 100755 index 00000000..ee64fdaf --- /dev/null +++ b/data/baseStats/nidorino.asm @@ -0,0 +1,29 @@ +NidorinoBaseStats: ; 3875e (e:475e) +db DEX_NIDORINO ; pokedex id +db 61 ; base hp +db 72 ; base attack +db 57 ; base defense +db 65 ; base speed +db 55 ; base special +db POISON ; species type 1 +db POISON ; species type 2 +db 120 ; catch rate +db 118 ; base exp yield +db $66 ; sprite dimensions +dw NidorinoPicFront +dw NidorinoPicBack +; attacks known at lvl 0 +db LEER +db TACKLE +db HORN_ATTACK +db 0 +db 3 ; growth rate +; learnset +db %11100000 +db %00111111 +db %10001000 +db %11000001 +db %10000011 +db %00001000 +db %00000010 +db 0 ; padding diff --git a/data/baseStats/ninetails.asm b/data/baseStats/ninetails.asm new file mode 100755 index 00000000..a79adb03 --- /dev/null +++ b/data/baseStats/ninetails.asm @@ -0,0 +1,29 @@ +NinetalesBaseStats: ; 387ea (e:47ea) +db DEX_NINETALES ; pokedex id +db 73 ; base hp +db 76 ; base attack +db 75 ; base defense +db 100 ; base speed +db 100 ; base special +db FIRE ; species type 1 +db FIRE ; species type 2 +db 75 ; catch rate +db 178 ; base exp yield +db $77 ; sprite dimensions +dw NinetalesPicFront +dw NinetalesPicBack +; attacks known at lvl 0 +db EMBER +db TAIL_WHIP +db QUICK_ATTACK +db ROAR +db 0 ; growth rate +; learnset +db %10100000 +db %01000011 +db %00001000 +db %11001000 +db %11100011 +db %00001000 +db %00000010 +db 0 ; padding diff --git a/data/baseStats/oddish.asm b/data/baseStats/oddish.asm new file mode 100755 index 00000000..fa4b42ae --- /dev/null +++ b/data/baseStats/oddish.asm @@ -0,0 +1,29 @@ +OddishBaseStats: ; 38876 (e:4876) +db DEX_ODDISH ; pokedex id +db 45 ; base hp +db 50 ; base attack +db 55 ; base defense +db 30 ; base speed +db 75 ; base special +db GRASS ; species type 1 +db POISON ; species type 2 +db 255 ; catch rate +db 78 ; base exp yield +db $55 ; sprite dimensions +dw OddishPicFront +dw OddishPicBack +; attacks known at lvl 0 +db ABSORB +db 0 +db 0 +db 0 +db 3 ; growth rate +; learnset +db %00100100 +db %00000011 +db %00111000 +db %11000000 +db %00000011 +db %00001000 +db %00000110 +db 0 ; padding diff --git a/data/baseStats/omanyte.asm b/data/baseStats/omanyte.asm new file mode 100755 index 00000000..49deceeb --- /dev/null +++ b/data/baseStats/omanyte.asm @@ -0,0 +1,29 @@ +OmanyteBaseStats: ; 392da (e:52da) +db DEX_OMANYTE ; pokedex id +db 35 ; base hp +db 40 ; base attack +db 100 ; base defense +db 35 ; base speed +db 90 ; base special +db ROCK ; species type 1 +db WATER ; species type 2 +db 45 ; catch rate +db 120 ; base exp yield +db $55 ; sprite dimensions +dw OmanytePicFront +dw OmanytePicBack +; attacks known at lvl 0 +db WATER_GUN +db WITHDRAW +db 0 +db 0 +db 0 ; growth rate +; learnset +db %10100000 +db %00111111 +db %00001000 +db %11000000 +db %00000011 +db %00001000 +db %00010010 +db 0 ; padding diff --git a/data/baseStats/omastar.asm b/data/baseStats/omastar.asm new file mode 100755 index 00000000..d1462ac3 --- /dev/null +++ b/data/baseStats/omastar.asm @@ -0,0 +1,29 @@ +OmastarBaseStats: ; 392f6 (e:52f6) +db DEX_OMASTAR ; pokedex id +db 70 ; base hp +db 60 ; base attack +db 125 ; base defense +db 55 ; base speed +db 115 ; base special +db ROCK ; species type 1 +db WATER ; species type 2 +db 45 ; catch rate +db 199 ; base exp yield +db $66 ; sprite dimensions +dw OmastarPicFront +dw OmastarPicBack +; attacks known at lvl 0 +db WATER_GUN +db WITHDRAW +db HORN_ATTACK +db 0 +db 0 ; growth rate +; learnset +db %11100000 +db %01111111 +db %00001101 +db %11000000 +db %10000011 +db %00001000 +db %00010010 +db 0 ; padding diff --git a/data/baseStats/onix.asm b/data/baseStats/onix.asm new file mode 100755 index 00000000..2fd6d6d2 --- /dev/null +++ b/data/baseStats/onix.asm @@ -0,0 +1,29 @@ +OnixBaseStats: ; 38e26 (e:4e26) +db DEX_ONIX ; pokedex id +db 35 ; base hp +db 45 ; base attack +db 160 ; base defense +db 70 ; base speed +db 30 ; base special +db ROCK ; species type 1 +db GROUND ; species type 2 +db 45 ; catch rate +db 108 ; base exp yield +db $77 ; sprite dimensions +dw OnixPicFront +dw OnixPicBack +; attacks known at lvl 0 +db TACKLE +db SCREECH +db 0 +db 0 +db 0 ; growth rate +; learnset +db %10100000 +db %00000011 +db %00001000 +db %11001110 +db %10001010 +db %11001000 +db %00100010 +db 0 ; padding diff --git a/data/baseStats/paras.asm b/data/baseStats/paras.asm new file mode 100755 index 00000000..8fbb729c --- /dev/null +++ b/data/baseStats/paras.asm @@ -0,0 +1,29 @@ +ParasBaseStats: ; 388ca (e:48ca) +db DEX_PARAS ; pokedex id +db 35 ; base hp +db 70 ; base attack +db 55 ; base defense +db 25 ; base speed +db 55 ; base special +db BUG ; species type 1 +db GRASS ; species type 2 +db 190 ; catch rate +db 70 ; base exp yield +db $55 ; sprite dimensions +dw ParasPicFront +dw ParasPicBack +; attacks known at lvl 0 +db SCRATCH +db 0 +db 0 +db 0 +db 0 ; growth rate +; learnset +db %10100100 +db %00000011 +db %00111000 +db %11001000 +db %10000011 +db %00001000 +db %00000110 +db 0 ; padding diff --git a/data/baseStats/parasect.asm b/data/baseStats/parasect.asm new file mode 100755 index 00000000..81231c0f --- /dev/null +++ b/data/baseStats/parasect.asm @@ -0,0 +1,29 @@ +ParasectBaseStats: ; 388e6 (e:48e6) +db DEX_PARASECT ; pokedex id +db 60 ; base hp +db 95 ; base attack +db 80 ; base defense +db 30 ; base speed +db 80 ; base special +db BUG ; species type 1 +db GRASS ; species type 2 +db 75 ; catch rate +db 128 ; base exp yield +db $77 ; sprite dimensions +dw ParasectPicFront +dw ParasectPicBack +; attacks known at lvl 0 +db SCRATCH +db STUN_SPORE +db LEECH_LIFE +db 0 +db 0 ; growth rate +; learnset +db %10100100 +db %01000011 +db %00111000 +db %11001000 +db %10000011 +db %00001000 +db %00000110 +db 0 ; padding diff --git a/data/baseStats/persian.asm b/data/baseStats/persian.asm new file mode 100755 index 00000000..ddf889b9 --- /dev/null +++ b/data/baseStats/persian.asm @@ -0,0 +1,29 @@ +PersianBaseStats: ; 3898e (e:498e) +db DEX_PERSIAN ; pokedex id +db 65 ; base hp +db 70 ; base attack +db 60 ; base defense +db 115 ; base speed +db 65 ; base special +db NORMAL ; species type 1 +db NORMAL ; species type 2 +db 90 ; catch rate +db 148 ; base exp yield +db $77 ; sprite dimensions +dw PersianPicFront +dw PersianPicBack +; attacks known at lvl 0 +db SCRATCH +db GROWL +db BITE +db SCREECH +db 0 ; growth rate +; learnset +db %10100000 +db %11001111 +db %10001000 +db %11000001 +db %11000010 +db %00001000 +db %00000010 +db 0 ; padding diff --git a/data/baseStats/pidgeot.asm b/data/baseStats/pidgeot.asm new file mode 100755 index 00000000..6367cd24 --- /dev/null +++ b/data/baseStats/pidgeot.asm @@ -0,0 +1,29 @@ +PidgeotBaseStats: ; 385ba (e:45ba) +db DEX_PIDGEOT ; pokedex id +db 83 ; base hp +db 80 ; base attack +db 75 ; base defense +db 91 ; base speed +db 70 ; base special +db NORMAL ; species type 1 +db FLYING ; species type 2 +db 45 ; catch rate +db 172 ; base exp yield +db $77 ; sprite dimensions +dw PidgeotPicFront +dw PidgeotPicBack +; attacks known at lvl 0 +db GUST +db SAND_ATTACK +db QUICK_ATTACK +db 0 +db 3 ; growth rate +; learnset +db %00101010 +db %01000011 +db %00001000 +db %11000000 +db %01000011 +db %00001100 +db %00001010 +db 0 ; padding diff --git a/data/baseStats/pidgeotto.asm b/data/baseStats/pidgeotto.asm new file mode 100755 index 00000000..65a39130 --- /dev/null +++ b/data/baseStats/pidgeotto.asm @@ -0,0 +1,29 @@ +PidgeottoBaseStats: ; 3859e (e:459e) +db DEX_PIDGEOTTO ; pokedex id +db 63 ; base hp +db 60 ; base attack +db 55 ; base defense +db 71 ; base speed +db 50 ; base special +db NORMAL ; species type 1 +db FLYING ; species type 2 +db 120 ; catch rate +db 113 ; base exp yield +db $66 ; sprite dimensions +dw PidgeottoPicFront +dw PidgeottoPicBack +; attacks known at lvl 0 +db GUST +db SAND_ATTACK +db 0 +db 0 +db 3 ; growth rate +; learnset +db %00101010 +db %00000011 +db %00001000 +db %11000000 +db %01000011 +db %00001100 +db %00001010 +db 0 ; padding diff --git a/data/baseStats/pidgey.asm b/data/baseStats/pidgey.asm new file mode 100755 index 00000000..81bbb12a --- /dev/null +++ b/data/baseStats/pidgey.asm @@ -0,0 +1,29 @@ +PidgeyBaseStats: ; 38582 (e:4582) +db DEX_PIDGEY ; pokedex id +db 40 ; base hp +db 45 ; base attack +db 40 ; base defense +db 56 ; base speed +db 35 ; base special +db NORMAL ; species type 1 +db FLYING ; species type 2 +db 255 ; catch rate +db 55 ; base exp yield +db $55 ; sprite dimensions +dw PidgeyPicFront +dw PidgeyPicBack +; attacks known at lvl 0 +db GUST +db 0 +db 0 +db 0 +db 3 ; growth rate +; learnset +db %00101010 +db %00000011 +db %00001000 +db %11000000 +db %01000011 +db %00001100 +db %00001010 +db 0 ; padding diff --git a/data/baseStats/pikachu.asm b/data/baseStats/pikachu.asm new file mode 100755 index 00000000..21e4d32d --- /dev/null +++ b/data/baseStats/pikachu.asm @@ -0,0 +1,29 @@ +PikachuBaseStats: ; 3867e (e:467e) +db DEX_PIKACHU ; pokedex id +db 35 ; base hp +db 55 ; base attack +db 30 ; base defense +db 90 ; base speed +db 50 ; base special +db ELECTRIC ; species type 1 +db ELECTRIC ; species type 2 +db 190 ; catch rate +db 82 ; base exp yield +db $55 ; sprite dimensions +dw PikachuPicFront +dw PikachuPicBack +; attacks known at lvl 0 +db THUNDERSHOCK +db GROWL +db 0 +db 0 +db 0 ; growth rate +; learnset +db %10110001 +db %10000011 +db %10001101 +db %11000001 +db %11000011 +db %00011000 +db %01000010 +db 0 ; padding diff --git a/data/baseStats/pinsir.asm b/data/baseStats/pinsir.asm new file mode 100755 index 00000000..1e57fcc4 --- /dev/null +++ b/data/baseStats/pinsir.asm @@ -0,0 +1,29 @@ +PinsirBaseStats: ; 391a6 (e:51a6) +db DEX_PINSIR ; pokedex id +db 65 ; base hp +db 125 ; base attack +db 100 ; base defense +db 85 ; base speed +db 55 ; base special +db BUG ; species type 1 +db BUG ; species type 2 +db 45 ; catch rate +db 200 ; base exp yield +db $77 ; sprite dimensions +dw PinsirPicFront +dw PinsirPicBack +; attacks known at lvl 0 +db VICEGRIP +db 0 +db 0 +db 0 +db 5 ; growth rate +; learnset +db %10100100 +db %01000011 +db %00001101 +db %11000000 +db %00000010 +db %00001000 +db %00100110 +db 0 ; padding diff --git a/data/baseStats/poliwag.asm b/data/baseStats/poliwag.asm new file mode 100755 index 00000000..3d1e9534 --- /dev/null +++ b/data/baseStats/poliwag.asm @@ -0,0 +1,29 @@ +PoliwagBaseStats: ; 38a52 (e:4a52) +db DEX_POLIWAG ; pokedex id +db 40 ; base hp +db 50 ; base attack +db 40 ; base defense +db 90 ; base speed +db 40 ; base special +db WATER ; species type 1 +db WATER ; species type 2 +db 255 ; catch rate +db 77 ; base exp yield +db $55 ; sprite dimensions +dw PoliwagPicFront +dw PoliwagPicBack +; attacks known at lvl 0 +db BUBBLE +db 0 +db 0 +db 0 +db 3 ; growth rate +; learnset +db %10100000 +db %00111111 +db %00001000 +db %11010000 +db %10000010 +db %00101000 +db %00010010 +db 0 ; padding diff --git a/data/baseStats/poliwhirl.asm b/data/baseStats/poliwhirl.asm new file mode 100755 index 00000000..1b9cc03d --- /dev/null +++ b/data/baseStats/poliwhirl.asm @@ -0,0 +1,29 @@ +PoliwhirlBaseStats: ; 38a6e (e:4a6e) +db DEX_POLIWHIRL ; pokedex id +db 65 ; base hp +db 65 ; base attack +db 65 ; base defense +db 90 ; base speed +db 50 ; base special +db WATER ; species type 1 +db WATER ; species type 2 +db 120 ; catch rate +db 131 ; base exp yield +db $66 ; sprite dimensions +dw PoliwhirlPicFront +dw PoliwhirlPicBack +; attacks known at lvl 0 +db BUBBLE +db HYPNOSIS +db WATER_GUN +db 0 +db 3 ; growth rate +; learnset +db %10110001 +db %00111111 +db %00001111 +db %11010110 +db %10000110 +db %00101000 +db %00110010 +db 0 ; padding diff --git a/data/baseStats/poliwrath.asm b/data/baseStats/poliwrath.asm new file mode 100755 index 00000000..3a891209 --- /dev/null +++ b/data/baseStats/poliwrath.asm @@ -0,0 +1,29 @@ +PoliwrathBaseStats: ; 38a8a (e:4a8a) +db DEX_POLIWRATH ; pokedex id +db 90 ; base hp +db 85 ; base attack +db 95 ; base defense +db 70 ; base speed +db 70 ; base special +db WATER ; species type 1 +db FIGHTING ; species type 2 +db 45 ; catch rate +db 185 ; base exp yield +db $77 ; sprite dimensions +dw PoliwrathPicFront +dw PoliwrathPicBack +; attacks known at lvl 0 +db HYPNOSIS +db WATER_GUN +db DOUBLESLAP +db BODY_SLAM +db 3 ; growth rate +; learnset +db %10110001 +db %01111111 +db %00001111 +db %11010110 +db %10000110 +db %00101000 +db %00110010 +db 0 ; padding diff --git a/data/baseStats/ponyta.asm b/data/baseStats/ponyta.asm new file mode 100755 index 00000000..2b99f4b1 --- /dev/null +++ b/data/baseStats/ponyta.asm @@ -0,0 +1,29 @@ +PonytaBaseStats: ; 38c2e (e:4c2e) +db DEX_PONYTA ; pokedex id +db 50 ; base hp +db 85 ; base attack +db 55 ; base defense +db 90 ; base speed +db 65 ; base special +db FIRE ; species type 1 +db FIRE ; species type 2 +db 190 ; catch rate +db 152 ; base exp yield +db $66 ; sprite dimensions +dw PonytaPicFront +dw PonytaPicBack +; attacks known at lvl 0 +db EMBER +db 0 +db 0 +db 0 +db 0 ; growth rate +; learnset +db %11100000 +db %00000011 +db %00001000 +db %11000000 +db %11100011 +db %00001000 +db %00000010 +db 0 ; padding diff --git a/data/baseStats/porygon.asm b/data/baseStats/porygon.asm new file mode 100755 index 00000000..37a25174 --- /dev/null +++ b/data/baseStats/porygon.asm @@ -0,0 +1,29 @@ +PorygonBaseStats: ; 392be (e:52be) +db DEX_PORYGON ; pokedex id +db 65 ; base hp +db 60 ; base attack +db 70 ; base defense +db 40 ; base speed +db 75 ; base special +db NORMAL ; species type 1 +db NORMAL ; species type 2 +db 45 ; catch rate +db 130 ; base exp yield +db $66 ; sprite dimensions +dw PorygonPicFront +dw PorygonPicBack +; attacks known at lvl 0 +db TACKLE +db SHARPEN +db CONVERSION +db 0 +db 0 ; growth rate +; learnset +db %00100000 +db %01110011 +db %10001000 +db %11110001 +db %11000011 +db %00111000 +db %01000011 +db 0 ; padding diff --git a/data/baseStats/primeape.asm b/data/baseStats/primeape.asm new file mode 100755 index 00000000..ea649a6f --- /dev/null +++ b/data/baseStats/primeape.asm @@ -0,0 +1,34 @@ +PrimeapeBaseStats: ; 389fe (e:49fe) +db DEX_PRIMEAPE ; pokedex id +db 65 ; base hp +db 105 ; base attack +db 60 ; base defense +db 95 ; base speed +db 60 ; base special +db FIGHTING ; species type 1 +db FIGHTING ; species type 2 +db 75 ; catch rate +db 149 ; base exp yield +db $77 ; sprite dimensions +dw PrimeapePicFront +dw PrimeapePicBack +; attacks known at lvl 0 +db SCRATCH +IF !_YELLOW + db LEER +ENDC +db KARATE_CHOP +db FURY_SWIPES +IF _YELLOW + db LOW_KICK +ENDC +db 0 ; growth rate +; learnset +db %10110001 +db %11000011 +db %10001111 +db %11001001 +db %11000110 +db %10001000 +db %00100010 +db 0 ; padding diff --git a/data/baseStats/psyduck.asm b/data/baseStats/psyduck.asm new file mode 100755 index 00000000..921fd7e8 --- /dev/null +++ b/data/baseStats/psyduck.asm @@ -0,0 +1,29 @@ +PsyduckBaseStats: ; 389aa (e:49aa) +db DEX_PSYDUCK ; pokedex id +db 50 ; base hp +db 52 ; base attack +db 48 ; base defense +db 55 ; base speed +db 50 ; base special +db WATER ; species type 1 +db WATER ; species type 2 +db 190 ; catch rate +db 80 ; base exp yield +db $55 ; sprite dimensions +dw PsyduckPicFront +dw PsyduckPicBack +; attacks known at lvl 0 +db SCRATCH +db 0 +db 0 +db 0 +db 0 ; growth rate +; learnset +db %10110001 +db %10111111 +db %00001111 +db %11001000 +db %11000010 +db %00001000 +db %00110010 +db 0 ; padding diff --git a/data/baseStats/raichu.asm b/data/baseStats/raichu.asm new file mode 100755 index 00000000..6bd2f940 --- /dev/null +++ b/data/baseStats/raichu.asm @@ -0,0 +1,29 @@ +RaichuBaseStats: ; 3869a (e:469a) +db DEX_RAICHU ; pokedex id +db 60 ; base hp +db 90 ; base attack +db 55 ; base defense +db 100 ; base speed +db 90 ; base special +db ELECTRIC ; species type 1 +db ELECTRIC ; species type 2 +db 75 ; catch rate +db 122 ; base exp yield +db $77 ; sprite dimensions +dw RaichuPicFront +dw RaichuPicBack +; attacks known at lvl 0 +db THUNDERSHOCK +db GROWL +db THUNDER_WAVE +db 0 +db 0 ; growth rate +; learnset +db %10110001 +db %11000011 +db %10001101 +db %11000001 +db %11000011 +db %00011000 +db %01000010 +db 0 ; padding diff --git a/data/baseStats/rapidash.asm b/data/baseStats/rapidash.asm new file mode 100755 index 00000000..7d6064ab --- /dev/null +++ b/data/baseStats/rapidash.asm @@ -0,0 +1,29 @@ +RapidashBaseStats: ; 38c4a (e:4c4a) +db DEX_RAPIDASH ; pokedex id +db 65 ; base hp +db 100 ; base attack +db 70 ; base defense +db 105 ; base speed +db 80 ; base special +db FIRE ; species type 1 +db FIRE ; species type 2 +db 60 ; catch rate +db 192 ; base exp yield +db $77 ; sprite dimensions +dw RapidashPicFront +dw RapidashPicBack +; attacks known at lvl 0 +db EMBER +db TAIL_WHIP +db STOMP +db GROWL +db 0 ; growth rate +; learnset +db %11100000 +db %01000011 +db %00001000 +db %11000000 +db %11100011 +db %00001000 +db %00000010 +db 0 ; padding diff --git a/data/baseStats/raticate.asm b/data/baseStats/raticate.asm new file mode 100755 index 00000000..301b7b21 --- /dev/null +++ b/data/baseStats/raticate.asm @@ -0,0 +1,29 @@ +RaticateBaseStats: ; 385f2 (e:45f2) +db DEX_RATICATE ; pokedex id +db 55 ; base hp +db 81 ; base attack +db 60 ; base defense +db 97 ; base speed +db 50 ; base special +db NORMAL ; species type 1 +db NORMAL ; species type 2 +db 90 ; catch rate +db 116 ; base exp yield +db $66 ; sprite dimensions +dw RaticatePicFront +dw RaticatePicBack +; attacks known at lvl 0 +db TACKLE +db TAIL_WHIP +db QUICK_ATTACK +db 0 +db 0 ; growth rate +; learnset +db %10100000 +db %01111111 +db %10001000 +db %11001001 +db %11000010 +db %00001000 +db %00000010 +db 0 ; padding diff --git a/data/baseStats/rattata.asm b/data/baseStats/rattata.asm new file mode 100755 index 00000000..72dbd8ef --- /dev/null +++ b/data/baseStats/rattata.asm @@ -0,0 +1,29 @@ +RattataBaseStats: ; 385d6 (e:45d6) +db DEX_RATTATA ; pokedex id +db 30 ; base hp +db 56 ; base attack +db 35 ; base defense +db 72 ; base speed +db 25 ; base special +db NORMAL ; species type 1 +db NORMAL ; species type 2 +db 255 ; catch rate +db 57 ; base exp yield +db $55 ; sprite dimensions +dw RattataPicFront +dw RattataPicBack +; attacks known at lvl 0 +db TACKLE +db TAIL_WHIP +db 0 +db 0 +db 0 ; growth rate +; learnset +db %10100000 +db %00101111 +db %10001000 +db %11001001 +db %11000010 +db %00001000 +db %00000010 +db 0 ; padding diff --git a/data/baseStats/rhydon.asm b/data/baseStats/rhydon.asm new file mode 100755 index 00000000..4a867c05 --- /dev/null +++ b/data/baseStats/rhydon.asm @@ -0,0 +1,29 @@ +RhydonBaseStats: ; 39002 (e:5002) +db DEX_RHYDON ; pokedex id +db 105 ; base hp +db 130 ; base attack +db 120 ; base defense +db 40 ; base speed +db 45 ; base special +db GROUND ; species type 1 +db ROCK ; species type 2 +db 60 ; catch rate +db 204 ; base exp yield +db $77 ; sprite dimensions +dw RhydonPicFront +dw RhydonPicBack +; attacks known at lvl 0 +db HORN_ATTACK +db STOMP +db TAIL_WHIP +db FURY_ATTACK +db 5 ; growth rate +; learnset +db %11110001 +db %11111111 +db %10001111 +db %11001111 +db %10100010 +db %10001000 +db %00110010 +db 0 ; padding diff --git a/data/baseStats/rhyhorn.asm b/data/baseStats/rhyhorn.asm new file mode 100755 index 00000000..5ae2a56b --- /dev/null +++ b/data/baseStats/rhyhorn.asm @@ -0,0 +1,29 @@ +RhyhornBaseStats: ; 38fe6 (e:4fe6) +db DEX_RHYHORN ; pokedex id +db 80 ; base hp +db 85 ; base attack +db 95 ; base defense +db 25 ; base speed +db 30 ; base special +db GROUND ; species type 1 +db ROCK ; species type 2 +db 120 ; catch rate +db 135 ; base exp yield +db $77 ; sprite dimensions +dw RhyhornPicFront +dw RhyhornPicBack +; attacks known at lvl 0 +db HORN_ATTACK +db 0 +db 0 +db 0 +db 5 ; growth rate +; learnset +db %11100000 +db %00000011 +db %10001000 +db %11001111 +db %10100010 +db %10001000 +db %00100010 +db 0 ; padding diff --git a/data/baseStats/sandshrew.asm b/data/baseStats/sandshrew.asm new file mode 100755 index 00000000..07df1cf2 --- /dev/null +++ b/data/baseStats/sandshrew.asm @@ -0,0 +1,29 @@ +SandshrewBaseStats: ; 386b6 (e:46b6) +db DEX_SANDSHREW ; pokedex id +db 50 ; base hp +db 75 ; base attack +db 85 ; base defense +db 40 ; base speed +db 30 ; base special +db GROUND ; species type 1 +db GROUND ; species type 2 +db 255 ; catch rate +db 93 ; base exp yield +db $55 ; sprite dimensions +dw SandshrewPicFront +dw SandshrewPicBack +; attacks known at lvl 0 +db SCRATCH +db 0 +db 0 +db 0 +db 0 ; growth rate +; learnset +db %10100100 +db %00000011 +db %00001101 +db %11001110 +db %11000010 +db %10001000 +db %00100110 +db 0 ; padding diff --git a/data/baseStats/sandslash.asm b/data/baseStats/sandslash.asm new file mode 100755 index 00000000..25e1e200 --- /dev/null +++ b/data/baseStats/sandslash.asm @@ -0,0 +1,29 @@ +SandslashBaseStats: ; 386d2 (e:46d2) +db DEX_SANDSLASH ; pokedex id +db 75 ; base hp +db 100 ; base attack +db 110 ; base defense +db 65 ; base speed +db 55 ; base special +db GROUND ; species type 1 +db GROUND ; species type 2 +db 90 ; catch rate +db 163 ; base exp yield +db $66 ; sprite dimensions +dw SandslashPicFront +dw SandslashPicBack +; attacks known at lvl 0 +db SCRATCH +db SAND_ATTACK +db 0 +db 0 +db 0 ; growth rate +; learnset +db %10100100 +db %01000011 +db %00001101 +db %11001110 +db %11000010 +db %10001000 +db %00100110 +db 0 ; padding diff --git a/data/baseStats/scyther.asm b/data/baseStats/scyther.asm new file mode 100755 index 00000000..a2f1cc73 --- /dev/null +++ b/data/baseStats/scyther.asm @@ -0,0 +1,29 @@ +ScytherBaseStats: ; 39136 (e:5136) +db DEX_SCYTHER ; pokedex id +db 70 ; base hp +db 110 ; base attack +db 80 ; base defense +db 105 ; base speed +db 55 ; base special +db BUG ; species type 1 +db FLYING ; species type 2 +db 45 ; catch rate +db 187 ; base exp yield +db $77 ; sprite dimensions +dw ScytherPicFront +dw ScytherPicBack +; attacks known at lvl 0 +db QUICK_ATTACK +db 0 +db 0 +db 0 +db 0 ; growth rate +; learnset +db %00100100 +db %01000011 +db %00001000 +db %11000000 +db %11000010 +db %00001000 +db %00000110 +db 0 ; padding diff --git a/data/baseStats/seadra.asm b/data/baseStats/seadra.asm new file mode 100755 index 00000000..a824bde9 --- /dev/null +++ b/data/baseStats/seadra.asm @@ -0,0 +1,29 @@ +SeadraBaseStats: ; 3908e (e:508e) +db DEX_SEADRA ; pokedex id +db 55 ; base hp +db 65 ; base attack +db 95 ; base defense +db 85 ; base speed +db 95 ; base special +db WATER ; species type 1 +db WATER ; species type 2 +db 75 ; catch rate +db 155 ; base exp yield +db $66 ; sprite dimensions +dw SeadraPicFront +dw SeadraPicBack +; attacks known at lvl 0 +db BUBBLE +db SMOKESCREEN +db 0 +db 0 +db 0 ; growth rate +; learnset +db %00100000 +db %01111111 +db %00001000 +db %11000000 +db %11000010 +db %00001000 +db %00010010 +db 0 ; padding diff --git a/data/baseStats/seaking.asm b/data/baseStats/seaking.asm new file mode 100755 index 00000000..0b0d40dc --- /dev/null +++ b/data/baseStats/seaking.asm @@ -0,0 +1,29 @@ +SeakingBaseStats: ; 390c6 (e:50c6) +db DEX_SEAKING ; pokedex id +db 80 ; base hp +db 92 ; base attack +db 65 ; base defense +db 68 ; base speed +db 80 ; base special +db WATER ; species type 1 +db WATER ; species type 2 +db 60 ; catch rate +db 170 ; base exp yield +db $77 ; sprite dimensions +dw SeakingPicFront +dw SeakingPicBack +; attacks known at lvl 0 +db PECK +db TAIL_WHIP +db SUPERSONIC +db 0 +db 0 ; growth rate +; learnset +db %01100000 +db %01111111 +db %00001000 +db %11000000 +db %11000010 +db %00001000 +db %00010010 +db 0 ; padding diff --git a/data/baseStats/seel.asm b/data/baseStats/seel.asm new file mode 100755 index 00000000..d721d246 --- /dev/null +++ b/data/baseStats/seel.asm @@ -0,0 +1,29 @@ +SeelBaseStats: ; 38d2a (e:4d2a) +db DEX_SEEL ; pokedex id +db 65 ; base hp +db 45 ; base attack +db 55 ; base defense +db 45 ; base speed +db 70 ; base special +db WATER ; species type 1 +db WATER ; species type 2 +db 190 ; catch rate +db 100 ; base exp yield +db $66 ; sprite dimensions +dw SeelPicFront +dw SeelPicBack +; attacks known at lvl 0 +db HEADBUTT +db 0 +db 0 +db 0 +db 0 ; growth rate +; learnset +db %11100000 +db %10111111 +db %00001000 +db %11000000 +db %10000010 +db %00001000 +db %00110010 +db 0 ; padding diff --git a/data/baseStats/shellder.asm b/data/baseStats/shellder.asm new file mode 100755 index 00000000..085674b3 --- /dev/null +++ b/data/baseStats/shellder.asm @@ -0,0 +1,29 @@ +ShellderBaseStats: ; 38d9a (e:4d9a) +db DEX_SHELLDER ; pokedex id +db 30 ; base hp +db 65 ; base attack +db 100 ; base defense +db 40 ; base speed +db 45 ; base special +db WATER ; species type 1 +db WATER ; species type 2 +db 190 ; catch rate +db 97 ; base exp yield +db $55 ; sprite dimensions +dw ShellderPicFront +dw ShellderPicBack +; attacks known at lvl 0 +db TACKLE +db WITHDRAW +db 0 +db 0 +db 5 ; growth rate +; learnset +db %00100000 +db %00111111 +db %00001000 +db %11100000 +db %01001011 +db %01001000 +db %00010011 +db 0 ; padding diff --git a/data/baseStats/slowbro.asm b/data/baseStats/slowbro.asm new file mode 100755 index 00000000..37e445a2 --- /dev/null +++ b/data/baseStats/slowbro.asm @@ -0,0 +1,29 @@ +SlowbroBaseStats: ; 38c82 (e:4c82) +db DEX_SLOWBRO ; pokedex id +db 95 ; base hp +db 75 ; base attack +db 110 ; base defense +db 30 ; base speed +db 80 ; base special +db WATER ; species type 1 +db PSYCHIC ; species type 2 +db 75 ; catch rate +db 164 ; base exp yield +db $77 ; sprite dimensions +dw SlowbroPicFront +dw SlowbroPicBack +; attacks known at lvl 0 +db CONFUSION +db DISABLE +db HEADBUTT +db 0 +db 0 ; growth rate +; learnset +db %10110001 +db %11111111 +db %00001111 +db %11111110 +db %11100011 +db %00111000 +db %01110011 +db 0 ; padding diff --git a/data/baseStats/slowpoke.asm b/data/baseStats/slowpoke.asm new file mode 100755 index 00000000..61755e54 --- /dev/null +++ b/data/baseStats/slowpoke.asm @@ -0,0 +1,29 @@ +SlowpokeBaseStats: ; 38c66 (e:4c66) +db DEX_SLOWPOKE ; pokedex id +db 90 ; base hp +db 65 ; base attack +db 65 ; base defense +db 15 ; base speed +db 40 ; base special +db WATER ; species type 1 +db PSYCHIC ; species type 2 +db 190 ; catch rate +db 99 ; base exp yield +db $55 ; sprite dimensions +dw SlowpokePicFront +dw SlowpokePicBack +; attacks known at lvl 0 +db CONFUSION +db 0 +db 0 +db 0 +db 0 ; growth rate +; learnset +db %10100000 +db %10111111 +db %00001000 +db %11111110 +db %11100011 +db %00111000 +db %01110011 +db 0 ; padding diff --git a/data/baseStats/snorlax.asm b/data/baseStats/snorlax.asm new file mode 100755 index 00000000..c3f0a928 --- /dev/null +++ b/data/baseStats/snorlax.asm @@ -0,0 +1,29 @@ +SnorlaxBaseStats: ; 39366 (e:5366) +db DEX_SNORLAX ; pokedex id +db 160 ; base hp +db 110 ; base attack +db 65 ; base defense +db 30 ; base speed +db 65 ; base special +db NORMAL ; species type 1 +db NORMAL ; species type 2 +db 25 ; catch rate +db 154 ; base exp yield +db $77 ; sprite dimensions +dw SnorlaxPicFront +dw SnorlaxPicBack +; attacks known at lvl 0 +db HEADBUTT +db AMNESIA +db REST +db 0 +db 5 ; growth rate +; learnset +db %10110001 +db %11111111 +db %10101111 +db %11010111 +db %10101111 +db %10101000 +db %00110010 +db 0 ; padding diff --git a/data/baseStats/spearow.asm b/data/baseStats/spearow.asm new file mode 100755 index 00000000..351a9c35 --- /dev/null +++ b/data/baseStats/spearow.asm @@ -0,0 +1,29 @@ +SpearowBaseStats: ; 3860e (e:460e) +db DEX_SPEAROW ; pokedex id +db 40 ; base hp +db 60 ; base attack +db 30 ; base defense +db 70 ; base speed +db 31 ; base special +db NORMAL ; species type 1 +db FLYING ; species type 2 +db 255 ; catch rate +db 58 ; base exp yield +db $55 ; sprite dimensions +dw SpearowPicFront +dw SpearowPicBack +; attacks known at lvl 0 +db PECK +db GROWL +db 0 +db 0 +db 0 ; growth rate +; learnset +db %00101010 +db %00000011 +db %00001000 +db %11000000 +db %01000010 +db %00001100 +db %00001010 +db 0 ; padding diff --git a/data/baseStats/squirtle.asm b/data/baseStats/squirtle.asm new file mode 100755 index 00000000..aa7406a6 --- /dev/null +++ b/data/baseStats/squirtle.asm @@ -0,0 +1,29 @@ +SquirtleBaseStats: ; 38486 (e:4486) +db DEX_SQUIRTLE ; pokedex id +db 44 ; base hp +db 48 ; base attack +db 65 ; base defense +db 43 ; base speed +db 50 ; base special +db WATER ; species type 1 +db WATER ; species type 2 +db 45 ; catch rate +db 66 ; base exp yield +db $55 ; sprite dimensions +dw SquirtlePicFront +dw SquirtlePicBack +; attacks known at lvl 0 +db TACKLE +db TAIL_WHIP +db 0 +db 0 +db 3 ; growth rate +; learnset +db %10110001 +db %00111111 +db %00001111 +db %11001000 +db %10000011 +db %00001000 +db %00110010 +db 0 ; padding diff --git a/data/baseStats/starmie.asm b/data/baseStats/starmie.asm new file mode 100755 index 00000000..f20bebb6 --- /dev/null +++ b/data/baseStats/starmie.asm @@ -0,0 +1,29 @@ +StarmieBaseStats: ; 390fe (e:50fe) +db DEX_STARMIE ; pokedex id +db 60 ; base hp +db 75 ; base attack +db 85 ; base defense +db 115 ; base speed +db 100 ; base special +db WATER ; species type 1 +db PSYCHIC ; species type 2 +db 60 ; catch rate +db 207 ; base exp yield +db $66 ; sprite dimensions +dw StarmiePicFront +dw StarmiePicBack +; attacks known at lvl 0 +db TACKLE +db WATER_GUN +db HARDEN +db 0 +db 5 ; growth rate +; learnset +db %00100000 +db %01111111 +db %10001000 +db %11110001 +db %11000011 +db %00111000 +db %01010011 +db 0 ; padding diff --git a/data/baseStats/staryu.asm b/data/baseStats/staryu.asm new file mode 100755 index 00000000..e0208fc5 --- /dev/null +++ b/data/baseStats/staryu.asm @@ -0,0 +1,29 @@ +StaryuBaseStats: ; 390e2 (e:50e2) +db DEX_STARYU ; pokedex id +db 30 ; base hp +db 45 ; base attack +db 55 ; base defense +db 85 ; base speed +db 70 ; base special +db WATER ; species type 1 +db WATER ; species type 2 +db 225 ; catch rate +db 106 ; base exp yield +db $66 ; sprite dimensions +dw StaryuPicFront +dw StaryuPicBack +; attacks known at lvl 0 +db TACKLE +db 0 +db 0 +db 0 +db 5 ; growth rate +; learnset +db %00100000 +db %00111111 +db %10001000 +db %11110001 +db %11000011 +db %00111000 +db %01010011 +db 0 ; padding diff --git a/data/baseStats/tangela.asm b/data/baseStats/tangela.asm new file mode 100755 index 00000000..d140fe5a --- /dev/null +++ b/data/baseStats/tangela.asm @@ -0,0 +1,29 @@ +TangelaBaseStats: ; 3903a (e:503a) +db DEX_TANGELA ; pokedex id +db 65 ; base hp +db 55 ; base attack +db 115 ; base defense +db 60 ; base speed +db 100 ; base special +db GRASS ; species type 1 +db GRASS ; species type 2 +db 45 ; catch rate +db 166 ; base exp yield +db $66 ; sprite dimensions +dw TangelaPicFront +dw TangelaPicBack +; attacks known at lvl 0 +db CONSTRICT +db BIND +db 0 +db 0 +db 0 ; growth rate +; learnset +db %10100100 +db %01000011 +db %00111000 +db %11000000 +db %10000010 +db %00001000 +db %00000110 +db 0 ; padding diff --git a/data/baseStats/tauros.asm b/data/baseStats/tauros.asm new file mode 100755 index 00000000..6d6841cf --- /dev/null +++ b/data/baseStats/tauros.asm @@ -0,0 +1,29 @@ +TaurosBaseStats: ; 391c2 (e:51c2) +db DEX_TAUROS ; pokedex id +db 75 ; base hp +db 100 ; base attack +db 95 ; base defense +db 110 ; base speed +db 70 ; base special +db NORMAL ; species type 1 +db NORMAL ; species type 2 +db 45 ; catch rate +db 211 ; base exp yield +db $77 ; sprite dimensions +dw TaurosPicFront +dw TaurosPicBack +; attacks known at lvl 0 +db TACKLE +db 0 +db 0 +db 0 +db 5 ; growth rate +; learnset +db %11100000 +db %01110011 +db %10001000 +db %11000111 +db %10100010 +db %00001000 +db %00100010 +db 0 ; padding diff --git a/data/baseStats/tentacool.asm b/data/baseStats/tentacool.asm new file mode 100755 index 00000000..0bb1ff93 --- /dev/null +++ b/data/baseStats/tentacool.asm @@ -0,0 +1,29 @@ +TentacoolBaseStats: ; 38ba2 (e:4ba2) +db DEX_TENTACOOL ; pokedex id +db 40 ; base hp +db 40 ; base attack +db 35 ; base defense +db 70 ; base speed +db 100 ; base special +db WATER ; species type 1 +db POISON ; species type 2 +db 190 ; catch rate +db 105 ; base exp yield +db $55 ; sprite dimensions +dw TentacoolPicFront +dw TentacoolPicBack +; attacks known at lvl 0 +db ACID +db 0 +db 0 +db 0 +db 5 ; growth rate +; learnset +db %00100100 +db %00111111 +db %00011000 +db %11000000 +db %10000011 +db %00001000 +db %00010110 +db 0 ; padding diff --git a/data/baseStats/tentacruel.asm b/data/baseStats/tentacruel.asm new file mode 100755 index 00000000..25dff714 --- /dev/null +++ b/data/baseStats/tentacruel.asm @@ -0,0 +1,29 @@ +TentacruelBaseStats: ; 38bbe (e:4bbe) +db DEX_TENTACRUEL ; pokedex id +db 80 ; base hp +db 70 ; base attack +db 65 ; base defense +db 100 ; base speed +db 120 ; base special +db WATER ; species type 1 +db POISON ; species type 2 +db 60 ; catch rate +db 205 ; base exp yield +db $66 ; sprite dimensions +dw TentacruelPicFront +dw TentacruelPicBack +; attacks known at lvl 0 +db ACID +db SUPERSONIC +db WRAP +db 0 +db 5 ; growth rate +; learnset +db %00100100 +db %01111111 +db %00011000 +db %11000000 +db %10000011 +db %00001000 +db %00010110 +db 0 ; padding diff --git a/data/baseStats/vaporeon.asm b/data/baseStats/vaporeon.asm new file mode 100755 index 00000000..f03808fe --- /dev/null +++ b/data/baseStats/vaporeon.asm @@ -0,0 +1,34 @@ +VaporeonBaseStats: ; 3926a (e:526a) +db DEX_VAPOREON ; pokedex id +db 130 ; base hp +db 65 ; base attack +db 60 ; base defense +db 65 ; base speed +db 110 ; base special +db WATER ; species type 1 +db WATER ; species type 2 +db 45 ; catch rate +db 196 ; base exp yield +db $66 ; sprite dimensions +dw VaporeonPicFront +dw VaporeonPicBack +; attacks known at lvl 0 +db TACKLE +IF !_YELLOW + db SAND_ATTACK +ENDC +IF _YELLOW + db TAIL_WHIP +ENDC +db QUICK_ATTACK +db WATER_GUN +db 0 ; growth rate +; learnset +db %10100000 +db %01111111 +db %00001000 +db %11000000 +db %11000011 +db %00001000 +db %00010010 +db 0 ; padding diff --git a/data/baseStats/venomoth.asm b/data/baseStats/venomoth.asm new file mode 100755 index 00000000..c975ee6e --- /dev/null +++ b/data/baseStats/venomoth.asm @@ -0,0 +1,35 @@ +VenomothBaseStats: ; 3891e (e:491e) +db DEX_VENOMOTH ; pokedex id +db 70 ; base hp +db 65 ; base attack +db 60 ; base defense +db 90 ; base speed +db 90 ; base special +db BUG ; species type 1 +db POISON ; species type 2 +db 75 ; catch rate +db 138 ; base exp yield +db $77 ; sprite dimensions +dw VenomothPicFront +dw VenomothPicBack +; attacks known at lvl 0 +db TACKLE +db DISABLE +IF !_YELLOW + db POISONPOWDER + db LEECH_LIFE +ENDC +IF _YELLOW + db SUPERSONIC + db CONFUSION +ENDC +db 0 ; growth rate +; learnset +db %00101010 +db %01000011 +db %00111000 +db %11110000 +db %01000011 +db %00101000 +db %00000010 +db 0 ; padding diff --git a/data/baseStats/venonat.asm b/data/baseStats/venonat.asm new file mode 100755 index 00000000..cc4a6cb2 --- /dev/null +++ b/data/baseStats/venonat.asm @@ -0,0 +1,38 @@ +VenonatBaseStats: ; 38902 (e:4902) +db DEX_VENONAT ; pokedex id +db 60 ; base hp +db 55 ; base attack +db 50 ; base defense +db 45 ; base speed +db 40 ; base special +db BUG ; species type 1 +db POISON ; species type 2 +db 190 ; catch rate +db 75 ; base exp yield +db $55 ; sprite dimensions +dw VenonatPicFront +dw VenonatPicBack +; attacks known at lvl 0 +db TACKLE +db DISABLE +db 0 +db 0 +db 0 ; growth rate +; learnset +db %00100000 +db %00000011 +db %00111000 +IF !_YELLOW + db %11010000 + db %00000011 + db %00101000 + db %00000010 +ENDC +IF _YELLOW + db %11110000 + db %01000011 + db %00101000 + db %00100010 +ENDC + +db 0 ; padding diff --git a/data/baseStats/venusaur.asm b/data/baseStats/venusaur.asm new file mode 100755 index 00000000..7b861914 --- /dev/null +++ b/data/baseStats/venusaur.asm @@ -0,0 +1,29 @@ +VenusaurBaseStats: ; 38416 (e:4416) +db DEX_VENUSAUR ; pokedex id +db 80 ; base hp +db 82 ; base attack +db 83 ; base defense +db 80 ; base speed +db 100 ; base special +db GRASS ; species type 1 +db POISON ; species type 2 +db 45 ; catch rate +db 208 ; base exp yield +db $77 ; sprite dimensions +dw VenusaurPicFront +dw VenusaurPicBack +; attacks known at lvl 0 +db TACKLE +db GROWL +db LEECH_SEED +db VINE_WHIP +db 3 ; growth rate +; learnset +db %10100100 +db %01000011 +db %00111000 +db %11000000 +db %00000011 +db %00001000 +db %00000110 +db 0 ; padding diff --git a/data/baseStats/vicctreebel.asm b/data/baseStats/vicctreebel.asm new file mode 100755 index 00000000..98e40bb1 --- /dev/null +++ b/data/baseStats/vicctreebel.asm @@ -0,0 +1,29 @@ + BaseStats: ; 38b86 (e:4b86) +db DEX_ ; pokedex id +db 80 ; base hp +db 105 ; base attack +db 65 ; base defense +db 70 ; base speed +db 100 ; base special +db GRASS ; species type 1 +db POISON ; species type 2 +db 45 ; catch rate +db 191 ; base exp yield +db $77 ; sprite dimensions +dw PicFront +dw PicBack +; attacks known at lvl 0 +db SLEEP_POWDER +db STUN_SPORE +db ACID +db RAZOR_LEAF +db 3 ; growth rate +; learnset +db %10100100 +db %01000011 +db %00111000 +db %11000000 +db %00000011 +db %00001000 +db %00000110 +db 0 ; padding diff --git a/data/baseStats/victreebel.asm b/data/baseStats/victreebel.asm new file mode 100755 index 00000000..39051f4f --- /dev/null +++ b/data/baseStats/victreebel.asm @@ -0,0 +1,29 @@ +VictreebelBaseStats: ; 38b86 (e:4b86) +db DEX_VICTREEBEL ; pokedex id +db 80 ; base hp +db 105 ; base attack +db 65 ; base defense +db 70 ; base speed +db 100 ; base special +db GRASS ; species type 1 +db POISON ; species type 2 +db 45 ; catch rate +db 191 ; base exp yield +db $77 ; sprite dimensions +dw VictreebelPicFront +dw VictreebelPicBack +; attacks known at lvl 0 +db SLEEP_POWDER +db STUN_SPORE +db ACID +db RAZOR_LEAF +db 3 ; growth rate +; learnset +db %10100100 +db %01000011 +db %00111000 +db %11000000 +db %00000011 +db %00001000 +db %00000110 +db 0 ; padding diff --git a/data/baseStats/vileplume.asm b/data/baseStats/vileplume.asm new file mode 100755 index 00000000..60b58098 --- /dev/null +++ b/data/baseStats/vileplume.asm @@ -0,0 +1,29 @@ +VileplumeBaseStats: ; 388ae (e:48ae) +db DEX_VILEPLUME ; pokedex id +db 75 ; base hp +db 80 ; base attack +db 85 ; base defense +db 50 ; base speed +db 100 ; base special +db GRASS ; species type 1 +db POISON ; species type 2 +db 45 ; catch rate +db 184 ; base exp yield +db $77 ; sprite dimensions +dw VileplumePicFront +dw VileplumePicBack +; attacks known at lvl 0 +db STUN_SPORE +db SLEEP_POWDER +db ACID +db PETAL_DANCE +db 3 ; growth rate +; learnset +db %10100100 +db %01000011 +db %00111000 +db %11000000 +db %00000011 +db %00001000 +db %00000110 +db 0 ; padding diff --git a/data/baseStats/voltorb.asm b/data/baseStats/voltorb.asm new file mode 100755 index 00000000..33cf8fe5 --- /dev/null +++ b/data/baseStats/voltorb.asm @@ -0,0 +1,29 @@ +VoltorbBaseStats: ; 38eb2 (e:4eb2) +db DEX_VOLTORB ; pokedex id +db 40 ; base hp +db 30 ; base attack +db 50 ; base defense +db 100 ; base speed +db 55 ; base special +db ELECTRIC ; species type 1 +db ELECTRIC ; species type 2 +db 190 ; catch rate +db 103 ; base exp yield +db $55 ; sprite dimensions +dw VoltorbPicFront +dw VoltorbPicBack +; attacks known at lvl 0 +db TACKLE +db SCREECH +db 0 +db 0 +db 0 ; growth rate +; learnset +db %00100000 +db %00000001 +db %10001000 +db %11100001 +db %01001011 +db %01011000 +db %01000010 +db 0 ; padding diff --git a/data/baseStats/vulpix.asm b/data/baseStats/vulpix.asm new file mode 100755 index 00000000..c01a64fc --- /dev/null +++ b/data/baseStats/vulpix.asm @@ -0,0 +1,29 @@ +VulpixBaseStats: ; 387ce (e:47ce) +db DEX_VULPIX ; pokedex id +db 38 ; base hp +db 41 ; base attack +db 40 ; base defense +db 65 ; base speed +db 65 ; base special +db FIRE ; species type 1 +db FIRE ; species type 2 +db 190 ; catch rate +db 63 ; base exp yield +db $66 ; sprite dimensions +dw VulpixPicFront +dw VulpixPicBack +; attacks known at lvl 0 +db EMBER +db TAIL_WHIP +db 0 +db 0 +db 0 ; growth rate +; learnset +db %10100000 +db %00000011 +db %00001000 +db %11001000 +db %11100011 +db %00001000 +db %00000010 +db 0 ; padding diff --git a/data/baseStats/wartortle.asm b/data/baseStats/wartortle.asm new file mode 100755 index 00000000..9b2253a4 --- /dev/null +++ b/data/baseStats/wartortle.asm @@ -0,0 +1,29 @@ +WartortleBaseStats: ; 384a2 (e:44a2) +db DEX_WARTORTLE ; pokedex id +db 59 ; base hp +db 63 ; base attack +db 80 ; base defense +db 58 ; base speed +db 65 ; base special +db WATER ; species type 1 +db WATER ; species type 2 +db 45 ; catch rate +db 143 ; base exp yield +db $66 ; sprite dimensions +dw WartortlePicFront +dw WartortlePicBack +; attacks known at lvl 0 +db TACKLE +db TAIL_WHIP +db BUBBLE +db 0 +db 3 ; growth rate +; learnset +db %10110001 +db %00111111 +db %00001111 +db %11001000 +db %10000011 +db %00001000 +db %00110010 +db 0 ; padding diff --git a/data/baseStats/weedle.asm b/data/baseStats/weedle.asm new file mode 100755 index 00000000..683fa06d --- /dev/null +++ b/data/baseStats/weedle.asm @@ -0,0 +1,29 @@ +WeedleBaseStats: ; 3852e (e:452e) +db DEX_WEEDLE ; pokedex id +db 40 ; base hp +db 35 ; base attack +db 30 ; base defense +db 50 ; base speed +db 20 ; base special +db BUG ; species type 1 +db POISON ; species type 2 +db 255 ; catch rate +db 52 ; base exp yield +db $55 ; sprite dimensions +dw WeedlePicFront +dw WeedlePicBack +; attacks known at lvl 0 +db POISON_STING +db STRING_SHOT +db 0 +db 0 +db 0 ; growth rate +; learnset +db %00000000 +db %00000000 +db %00000000 +db %00000000 +db %00000000 +db %00000000 +db %00000000 +db 0 ; padding diff --git a/data/baseStats/weepinbell.asm b/data/baseStats/weepinbell.asm new file mode 100755 index 00000000..52263505 --- /dev/null +++ b/data/baseStats/weepinbell.asm @@ -0,0 +1,29 @@ +WeepinbellBaseStats: ; 38b6a (e:4b6a) +db DEX_WEEPINBELL ; pokedex id +db 65 ; base hp +db 90 ; base attack +db 50 ; base defense +db 55 ; base speed +db 85 ; base special +db GRASS ; species type 1 +db POISON ; species type 2 +db 120 ; catch rate +db 151 ; base exp yield +db $66 ; sprite dimensions +dw WeepinbellPicFront +dw WeepinbellPicBack +; attacks known at lvl 0 +db VINE_WHIP +db GROWTH +db WRAP +db 0 +db 3 ; growth rate +; learnset +db %00100100 +db %00000011 +db %00111000 +db %11000000 +db %00000011 +db %00001000 +db %00000110 +db 0 ; padding diff --git a/data/baseStats/weezing.asm b/data/baseStats/weezing.asm new file mode 100755 index 00000000..72c37340 --- /dev/null +++ b/data/baseStats/weezing.asm @@ -0,0 +1,29 @@ +WeezingBaseStats: ; 38fca (e:4fca) +db DEX_WEEZING ; pokedex id +db 65 ; base hp +db 90 ; base attack +db 120 ; base defense +db 60 ; base speed +db 85 ; base special +db POISON ; species type 1 +db POISON ; species type 2 +db 60 ; catch rate +db 173 ; base exp yield +db $77 ; sprite dimensions +dw WeezingPicFront +dw WeezingPicBack +; attacks known at lvl 0 +db TACKLE +db SMOG +db SLUDGE +db 0 +db 0 ; growth rate +; learnset +db %00100000 +db %01000000 +db %10001000 +db %11000001 +db %00101010 +db %01001000 +db %00000010 +db 0 ; padding diff --git a/data/baseStats/wigglytuff.asm b/data/baseStats/wigglytuff.asm new file mode 100755 index 00000000..f9c50c69 --- /dev/null +++ b/data/baseStats/wigglytuff.asm @@ -0,0 +1,29 @@ +WigglytuffBaseStats: ; 38822 (e:4822) +db DEX_WIGGLYTUFF ; pokedex id +db 140 ; base hp +db 70 ; base attack +db 45 ; base defense +db 45 ; base speed +db 50 ; base special +db NORMAL ; species type 1 +db NORMAL ; species type 2 +db 50 ; catch rate +db 109 ; base exp yield +db $66 ; sprite dimensions +dw WigglytuffPicFront +dw WigglytuffPicBack +; attacks known at lvl 0 +db SING +db DISABLE +db DEFENSE_CURL +db DOUBLESLAP +db 4 ; growth rate +; learnset +db %10110001 +db %01111111 +db %10101111 +db %11110001 +db %10100011 +db %00111000 +db %01100011 +db 0 ; padding diff --git a/data/baseStats/zapdos.asm b/data/baseStats/zapdos.asm new file mode 100755 index 00000000..32cc0fa6 --- /dev/null +++ b/data/baseStats/zapdos.asm @@ -0,0 +1,29 @@ +ZapdosBaseStats: ; 3939e (e:539e) +db DEX_ZAPDOS ; pokedex id +db 90 ; base hp +db 90 ; base attack +db 85 ; base defense +db 100 ; base speed +db 125 ; base special +db ELECTRIC ; species type 1 +db FLYING ; species type 2 +db 3 ; catch rate +db 216 ; base exp yield +db $77 ; sprite dimensions +dw ZapdosPicFront +dw ZapdosPicBack +; attacks known at lvl 0 +db THUNDERSHOCK +db DRILL_PECK +db 0 +db 0 +db 5 ; growth rate +; learnset +db %00101010 +db %01000011 +db %10001000 +db %11000001 +db %01000011 +db %00011100 +db %01001010 +db 0 ; padding diff --git a/data/baseStats/zubat.asm b/data/baseStats/zubat.asm new file mode 100755 index 00000000..f80ff419 --- /dev/null +++ b/data/baseStats/zubat.asm @@ -0,0 +1,29 @@ +ZubatBaseStats: ; 3883e (e:483e) +db DEX_ZUBAT ; pokedex id +db 40 ; base hp +db 45 ; base attack +db 35 ; base defense +db 55 ; base speed +db 40 ; base special +db POISON ; species type 1 +db FLYING ; species type 2 +db 255 ; catch rate +db 54 ; base exp yield +db $55 ; sprite dimensions +dw ZubatPicFront +dw ZubatPicBack +; attacks known at lvl 0 +db LEECH_LIFE +db 0 +db 0 +db 0 +db 0 ; growth rate +; learnset +db %00101010 +db %00000011 +db %00011000 +db %11000000 +db %01000010 +db %00001000 +db %00000010 +db 0 ; padding diff --git a/data/base_stats.asm b/data/base_stats.asm new file mode 100755 index 00000000..562f7c29 --- /dev/null +++ b/data/base_stats.asm @@ -0,0 +1,150 @@ +INCLUDE "data/baseStats/bulbasaur.asm" +INCLUDE "data/baseStats/ivysaur.asm" +INCLUDE "data/baseStats/venusaur.asm" +INCLUDE "data/baseStats/charmander.asm" +INCLUDE "data/baseStats/charmeleon.asm" +INCLUDE "data/baseStats/charizard.asm" +INCLUDE "data/baseStats/squirtle.asm" +INCLUDE "data/baseStats/wartortle.asm" +INCLUDE "data/baseStats/blastoise.asm" +INCLUDE "data/baseStats/caterpie.asm" +INCLUDE "data/baseStats/metapod.asm" +INCLUDE "data/baseStats/butterfree.asm" +INCLUDE "data/baseStats/weedle.asm" +INCLUDE "data/baseStats/kakuna.asm" +INCLUDE "data/baseStats/beedrill.asm" +INCLUDE "data/baseStats/pidgey.asm" +INCLUDE "data/baseStats/pidgeotto.asm" +INCLUDE "data/baseStats/pidgeot.asm" +INCLUDE "data/baseStats/rattata.asm" +INCLUDE "data/baseStats/raticate.asm" +INCLUDE "data/baseStats/spearow.asm" +INCLUDE "data/baseStats/fearow.asm" +INCLUDE "data/baseStats/ekans.asm" +INCLUDE "data/baseStats/arbok.asm" +INCLUDE "data/baseStats/pikachu.asm" +INCLUDE "data/baseStats/raichu.asm" +INCLUDE "data/baseStats/sandshrew.asm" +INCLUDE "data/baseStats/sandslash.asm" +INCLUDE "data/baseStats/nidoranF.asm" +INCLUDE "data/baseStats/nidorina.asm" +INCLUDE "data/baseStats/nidoqueen.asm" +INCLUDE "data/baseStats/nidoranM.asm" +INCLUDE "data/baseStats/nidorino.asm" +INCLUDE "data/baseStats/nidoking.asm" +INCLUDE "data/baseStats/clefairy.asm" +INCLUDE "data/baseStats/clefable.asm" +INCLUDE "data/baseStats/vulpix.asm" +INCLUDE "data/baseStats/ninetails.asm" +INCLUDE "data/baseStats/jigglypuff.asm" +INCLUDE "data/baseStats/wigglytuff.asm" +INCLUDE "data/baseStats/zubat.asm" +INCLUDE "data/baseStats/golbat.asm" +INCLUDE "data/baseStats/oddish.asm" +INCLUDE "data/baseStats/gloom.asm" +INCLUDE "data/baseStats/vileplume.asm" +INCLUDE "data/baseStats/paras.asm" +INCLUDE "data/baseStats/parasect.asm" +INCLUDE "data/baseStats/venonat.asm" +INCLUDE "data/baseStats/venomoth.asm" +INCLUDE "data/baseStats/diglett.asm" +INCLUDE "data/baseStats/dugtrio.asm" +INCLUDE "data/baseStats/meowth.asm" +INCLUDE "data/baseStats/persian.asm" +INCLUDE "data/baseStats/psyduck.asm" +INCLUDE "data/baseStats/golduck.asm" +INCLUDE "data/baseStats/mankey.asm" +INCLUDE "data/baseStats/primeape.asm" +INCLUDE "data/baseStats/growlithe.asm" +INCLUDE "data/baseStats/arcanine.asm" +INCLUDE "data/baseStats/poliwag.asm" +INCLUDE "data/baseStats/poliwhirl.asm" +INCLUDE "data/baseStats/poliwrath.asm" +INCLUDE "data/baseStats/abra.asm" +INCLUDE "data/baseStats/kadabra.asm" +INCLUDE "data/baseStats/alakazam.asm" +INCLUDE "data/baseStats/machop.asm" +INCLUDE "data/baseStats/machoke.asm" +INCLUDE "data/baseStats/machamp.asm" +INCLUDE "data/baseStats/bellsprout.asm" +INCLUDE "data/baseStats/weepinbell.asm" +INCLUDE "data/baseStats/victreebel.asm" +INCLUDE "data/baseStats/tentacool.asm" +INCLUDE "data/baseStats/tentacruel.asm" +INCLUDE "data/baseStats/geodude.asm" +INCLUDE "data/baseStats/graveler.asm" +INCLUDE "data/baseStats/golem.asm" +INCLUDE "data/baseStats/ponyta.asm" +INCLUDE "data/baseStats/rapidash.asm" +INCLUDE "data/baseStats/slowpoke.asm" +INCLUDE "data/baseStats/slowbro.asm" +INCLUDE "data/baseStats/magnemite.asm" +INCLUDE "data/baseStats/magneton.asm" +INCLUDE "data/baseStats/farfetchd.asm" +INCLUDE "data/baseStats/doduo.asm" +INCLUDE "data/baseStats/dodrio.asm" +INCLUDE "data/baseStats/seel.asm" +INCLUDE "data/baseStats/dewgong.asm" +INCLUDE "data/baseStats/grimer.asm" +INCLUDE "data/baseStats/muk.asm" +INCLUDE "data/baseStats/shellder.asm" +INCLUDE "data/baseStats/cloyster.asm" +INCLUDE "data/baseStats/gastly.asm" +INCLUDE "data/baseStats/haunter.asm" +INCLUDE "data/baseStats/gengar.asm" +INCLUDE "data/baseStats/onix.asm" +INCLUDE "data/baseStats/drowzee.asm" +INCLUDE "data/baseStats/hypno.asm" +INCLUDE "data/baseStats/krabby.asm" +INCLUDE "data/baseStats/kingler.asm" +INCLUDE "data/baseStats/voltorb.asm" +INCLUDE "data/baseStats/electrode.asm" +INCLUDE "data/baseStats/exeggcute.asm" +INCLUDE "data/baseStats/exeggutor.asm" +INCLUDE "data/baseStats/cubone.asm" +INCLUDE "data/baseStats/marowak.asm" +INCLUDE "data/baseStats/hitmonlee.asm" +INCLUDE "data/baseStats/hitmonchan.asm" +INCLUDE "data/baseStats/lickitung.asm" +INCLUDE "data/baseStats/koffing.asm" +INCLUDE "data/baseStats/weezing.asm" +INCLUDE "data/baseStats/rhyhorn.asm" +INCLUDE "data/baseStats/rhydon.asm" +INCLUDE "data/baseStats/chansey.asm" +INCLUDE "data/baseStats/tangela.asm" +INCLUDE "data/baseStats/kangaskhan.asm" +INCLUDE "data/baseStats/horsea.asm" +INCLUDE "data/baseStats/seadra.asm" +INCLUDE "data/baseStats/goldeen.asm" +INCLUDE "data/baseStats/seaking.asm" +INCLUDE "data/baseStats/staryu.asm" +INCLUDE "data/baseStats/starmie.asm" +INCLUDE "data/baseStats/mrMime.asm" +INCLUDE "data/baseStats/scyther.asm" +INCLUDE "data/baseStats/jynx.asm" +INCLUDE "data/baseStats/electabuzz.asm" +INCLUDE "data/baseStats/magmar.asm" +INCLUDE "data/baseStats/pinsir.asm" +INCLUDE "data/baseStats/tauros.asm" +INCLUDE "data/baseStats/magikarp.asm" +INCLUDE "data/baseStats/gyarados.asm" +INCLUDE "data/baseStats/lapras.asm" +INCLUDE "data/baseStats/ditto.asm" +INCLUDE "data/baseStats/eevee.asm" +INCLUDE "data/baseStats/vaporeon.asm" +INCLUDE "data/baseStats/jolteon.asm" +INCLUDE "data/baseStats/flareon.asm" +INCLUDE "data/baseStats/porygon.asm" +INCLUDE "data/baseStats/omanyte.asm" +INCLUDE "data/baseStats/omastar.asm" +INCLUDE "data/baseStats/kabuto.asm" +INCLUDE "data/baseStats/kabutops.asm" +INCLUDE "data/baseStats/aerodactyl.asm" +INCLUDE "data/baseStats/snorlax.asm" +INCLUDE "data/baseStats/articuno.asm" +INCLUDE "data/baseStats/zapdos.asm" +INCLUDE "data/baseStats/moltres.asm" +INCLUDE "data/baseStats/dratini.asm" +INCLUDE "data/baseStats/dragonair.asm" +INCLUDE "data/baseStats/dragonite.asm" +INCLUDE "data/baseStats/mewtwo.asm" diff --git a/data/bike_riding_tilesets.asm b/data/bike_riding_tilesets.asm new file mode 100755 index 00000000..f0fc922d --- /dev/null +++ b/data/bike_riding_tilesets.asm @@ -0,0 +1,2 @@ +BikeRidingTilesets:: ; 09e2 (0:09e2) + db OVERWORLD, FOREST, UNDERGROUND, SHIP_PORT, CAVERN, $FF diff --git a/data/credit_mons.asm b/data/credit_mons.asm new file mode 100755 index 00000000..6a8bb416 --- /dev/null +++ b/data/credit_mons.asm @@ -0,0 +1,16 @@ +CreditsMons: ; 74131 (1d:4131) + db VENUSAUR + db ARBOK + db RHYHORN + db FEAROW + db ABRA + db GRAVELER + db HITMONLEE + db TANGELA + db STARMIE + db GYARADOS + db DITTO + db OMASTAR + db VILEPLUME + db NIDOKING + db PARASECT diff --git a/data/credits_order.asm b/data/credits_order.asm new file mode 100755 index 00000000..5a71a26a --- /dev/null +++ b/data/credits_order.asm @@ -0,0 +1,39 @@ +CreditsOrder: ; 74243 (1d:4243) +; subsequent credits elements will be displayed on separate lines. +; $FF, $FE, $FD, $FC, $FB, and $FA are commands that are used +; to go to the next set of credits texts. + db CRED_MON, CRED_VERSION, $FF + db CRED_DIRECTOR, CRED_TAJIRI, $FF + db CRED_PROGRAMMERS, CRED_TA_OOTA, CRED_MORIMOTO, $FD + db CRED_PROGRAMMERS, CRED_WATANABE, CRED_MASUDE, CRED_TAMADA, $FE + db CRED_CHAR_DESIGN, CRED_SUGIMORI, CRED_NISHIDA, $FF + db CRED_MUSIC, CRED_MASUDE, $FD + db CRED_SOUND_EFFECTS, CRED_MASUDE, $FE + db CRED_GAME_DESIGN, CRED_TAJIRI, $FF + db CRED_MONSTER_DESIGN, CRED_SUGIMORI, CRED_NISHIDA, CRED_FUZIWARA, $FD + db CRED_MONSTER_DESIGN, CRED_MORIMOTO, CRED_SA_OOTA, CRED_YOSHIKAWA, $FE + db CRED_GAME_SCENE, CRED_TAJIRI, $FD + db CRED_GAME_SCENE, CRED_TANIGUCHI, CRED_NONOMURA, CRED_ZINNAI, $FE + db CRED_PARAM, CRED_NISINO, CRED_TA_NAKAMURA, $FF + db CRED_MAP, CRED_TAJIRI, CRED_NISINO, $FD + db CRED_MAP, CRED_MATSUSIMA, CRED_NONOMURA, CRED_TANIGUCHI, $FE + db CRED_TEST, CRED_KAKEI, CRED_TSUCHIYA, $FD + db CRED_TEST, CRED_TA_NAKAMURA, CRED_YUDA, $FE + db CRED_SPECIAL, CRED_HISHIDA, CRED_SAKAI, $FD + db CRED_SPECIAL, CRED_YAMAGUCHI, CRED_YAMAMOTO, $FC + db CRED_SPECIAL, CRED_TOMISAWA, CRED_KAWAMOTO, CRED_TO_OOTA, $FE + db CRED_PRODUCERS, CRED_MIYAMOTO, $FD + db CRED_PRODUCERS, CRED_KAWAGUCHI, $FC + db CRED_PRODUCERS, CRED_ISHIHARA, $FE + db CRED_US_STAFF, $FD + db CRED_US_COORD, CRED_TILDEN, $FD + db CRED_US_COORD, CRED_KAWAKAMI, CRED_HI_NAKAMURA, $FC + db CRED_US_COORD, CRED_GIESE, CRED_OSBORNE, $FC + db CRED_TRANS, CRED_OGASAWARA, $FD + db CRED_PROGRAMMERS, CRED_MURAKAWA, CRED_FUKUI, $FD + db CRED_SPECIAL, CRED_IWATA, $FD + db CRED_SPECIAL, CRED_HARADA, $FC + db CRED_TEST, CRED_PAAD, CRED_CLUB, $FD + db CRED_PRODUCER, CRED_IZUSHI, $FD + db CRED_EXECUTIVE, CRED_YAMAUCHI, $FF + db $FB, $FF, $FA diff --git a/data/cries.asm b/data/cries.asm new file mode 100755 index 00000000..7d03b831 --- /dev/null +++ b/data/cries.asm @@ -0,0 +1,192 @@ +CryData: ; 39446 (e:5446) + ;$BaseCry, $Pitch, $Length + db $11, $00, $80; Rhydon + db $03, $00, $80; Kangaskhan + db $00, $00, $80; Nidoran♂ + db $19, $CC, $01; Clefairy + db $10, $00, $80; Spearow + db $06, $ED, $80; Voltorb + db $09, $00, $80; Nidoking + db $1F, $00, $80; Slowbro + db $0F, $20, $80; Ivysaur + db $0D, $00, $80; Exeggutor + db $0C, $00, $80; Lickitung + db $0B, $00, $80; Exeggcute + db $05, $00, $80; Grimer + db $07, $00, $FF; Gengar + db $01, $00, $80; Nidoran♀ + db $0A, $00, $80; Nidoqueen + db $19, $00, $80; Cubone + db $04, $00, $80; Rhyhorn + db $1B, $00, $80; Lapras + db $15, $00, $80; Arcanine + db $1E, $EE, $FF; Mew + db $17, $00, $80; Gyarados + db $18, $00, $80; Shellder + db $1A, $00, $80; Tentacool + db $1C, $00, $80; Gastly + db $16, $00, $80; Scyther + db $1E, $02, $20; Staryu + db $13, $00, $80; Blastoise + db $14, $00, $80; Pinsir + db $12, $00, $80; Tangela + db $00, $00, $00; MissingNo. + db $00, $00, $00; MissingNo. + db $1F, $20, $40; Growlithe + db $17, $FF, $C0; Onix + db $18, $40, $A0; Fearow + db $0E, $DF, $04; Pidgey + db $02, $00, $80; Slowpoke + db $1C, $A8, $C0; Kadabra + db $24, $00, $80; Graveler + db $14, $0A, $C0; Chansey + db $1F, $48, $60; Machoke + db $20, $08, $40; Mr.Mime + db $12, $80, $C0; Hitmonlee + db $0C, $EE, $C0; Hitmonchan + db $17, $E0, $10; Arbok + db $1E, $42, $FF; Parasect + db $21, $20, $60; Psyduck + db $0D, $88, $20; Drowzee + db $12, $E0, $40; Golem + db $00, $00, $00; MissingNo. + db $04, $FF, $30; Magmar + db $00, $00, $00; MissingNo. + db $06, $8F, $FF; Electabuzz + db $1C, $20, $C0; Magneton + db $12, $E6, $DD; Koffing + db $00, $00, $00; MissingNo. + db $0A, $DD, $60; Mankey + db $0C, $88, $C0; Seel + db $0B, $AA, $01; Diglett + db $1D, $11, $40; Tauros + db $00, $00, $00; MissingNo. + db $00, $00, $00; MissingNo. + db $00, $00, $00; MissingNo. + db $10, $DD, $01; Farfetch'd + db $1A, $44, $40; Venonat + db $0F, $3C, $C0; Dragonite + db $00, $80, $10; MissingNo. + db $00, $00, $00; MissingNo. + db $1D, $E0, $80; MissingNo. + db $0B, $BB, $01; Doduo + db $0E, $FF, $FF; Poliwag + db $0D, $FF, $FF; Jynx + db $09, $F8, $40; Moltres + db $09, $80, $40; Articuno + db $18, $FF, $80; Zapdos + db $0E, $FF, $FF; Ditto + db $19, $77, $10; Meowth + db $20, $20, $E0; Krabby + db $22, $FF, $40; MissingNo. + db $00, $00, $00; MissingNo. + db $0E, $E0, $60; MissingNo. + db $24, $4F, $10; Vulpix + db $24, $88, $60; Ninetales + db $0F, $EE, $01; Pikachu + db $09, $EE, $08; Raichu + db $00, $00, $00; MissingNo. + db $00, $00, $00; MissingNo. + db $0F, $60, $40; Dratini + db $0F, $40, $80; Dragonair + db $16, $BB, $40; Kabuto + db $18, $EE, $01; Kabutops + db $19, $99, $10; Horsea + db $19, $3C, $01; Seadra + db $0F, $40, $C0; MissingNo. + db $0F, $20, $C0; MissingNo. + db $00, $20, $40; Sandshrew + db $00, $FF, $FF; Sandslash + db $1F, $F0, $01; Omanyte + db $1F, $FF, $40; Omastar + db $0E, $FF, $35; Jigglypuff + db $0E, $68, $60; Wigglytuff + db $1A, $88, $60; Eevee + db $1A, $10, $20; Flareon + db $1A, $3D, $80; Jolteon + db $1A, $AA, $FF; Vaporeon + db $1F, $EE, $01; Machop + db $1D, $E0, $80; Zubat + db $17, $12, $40; Ekans + db $1E, $20, $E0; Paras + db $0E, $77, $60; Poliwhirl + db $0E, $00, $FF; Poliwrath + db $15, $EE, $01; Weedle + db $13, $FF, $01; Kakuna + db $13, $60, $80; Beedrill + db $00, $00, $00; MissingNo. + db $0B, $99, $20; Dodrio + db $0A, $AF, $40; Primeape + db $0B, $2A, $10; Dugtrio + db $1A, $29, $80; Venomoth + db $0C, $23, $FF; Dewgong + db $00, $00, $00; MissingNo. + db $00, $00, $00; MissingNo. + db $16, $80, $20; Caterpie + db $1C, $CC, $01; Metapod + db $16, $77, $40; Butterfree + db $1F, $08, $C0; Machamp + db $11, $20, $10; MissingNo. + db $21, $FF, $40; Golduck + db $0D, $EE, $40; Hypno + db $1D, $FA, $80; Golbat + db $1E, $99, $FF; Mewtwo + db $05, $55, $01; Snorlax + db $17, $80, $00; Magikarp + db $00, $00, $00; MissingNo. + db $00, $00, $00; MissingNo. + db $07, $EF, $FF; Muk + db $0F, $40, $80; MissingNo. + db $20, $EE, $E0; Kingler + db $18, $6F, $E0; Cloyster + db $00, $00, $00; MissingNo. + db $06, $A8, $90; Electrode + db $19, $AA, $20; Clefable + db $12, $FF, $FF; Weezing + db $19, $99, $FF; Persian + db $08, $4F, $60; Marowak + db $00, $00, $00; MissingNo. + db $1C, $30, $40; Haunter + db $1C, $C0, $01; Abra + db $1C, $98, $FF; Alakazam + db $14, $28, $C0; Pidgeotto + db $14, $11, $FF; Pidgeot + db $1E, $00, $80; Starmie + db $0F, $80, $01; Bulbasaur + db $0F, $00, $C0; Venusaur + db $1A, $EE, $FF; Tentacruel + db $00, $00, $00; MissingNo. + db $16, $80, $40; Goldeen + db $16, $10, $FF; Seaking + db $00, $00, $00; MissingNo. + db $00, $00, $00; MissingNo. + db $00, $00, $00; MissingNo. + db $00, $00, $00; MissingNo. + db $25, $00, $80; Ponyta + db $25, $20, $C0; Rapidash + db $22, $00, $80; Rattata + db $22, $20, $FF; Raticate + db $00, $2C, $C0; Nidorino + db $01, $2C, $E0; Nidorina + db $24, $F0, $10; Geodude + db $25, $AA, $FF; Porygon + db $23, $20, $F0; Aerodactyl + db $00, $00, $00; MissingNo. + db $1C, $80, $60; Magnemite + db $00, $00, $00; MissingNo. + db $00, $00, $00; MissingNo. + db $04, $60, $40; Charmander + db $1D, $60, $40; Squirtle + db $04, $20, $40; Charmeleon + db $1D, $20, $40; Wartortle + db $04, $00, $80; Charizard + db $1D, $00, $80; MissingNo. + db $00, $00, $00; MissingNo. + db $00, $00, $00; MissingNo. + db $00, $00, $00; MissingNo. + db $08, $DD, $01; Oddish + db $08, $AA, $40; Gloom + db $23, $22, $FF; Vileplume + db $21, $55, $01; Bellsprout + db $25, $44, $20; Weepinbell + db $25, $66, $CC; Victreebel diff --git a/data/dungeon_tilesets.asm b/data/dungeon_tilesets.asm new file mode 100755 index 00000000..3501f2b9 --- /dev/null +++ b/data/dungeon_tilesets.asm @@ -0,0 +1,2 @@ +DungeonTilesets: ; c7b2 (3:47b2) + db FOREST, MUSEUM, SHIP, CAVERN, LOBBY, MANSION, GATE, LAB, FACILITY, CEMETERY, GYM, $FF diff --git a/data/evos_moves.asm b/data/evos_moves.asm new file mode 100755 index 00000000..cdbec0d8 --- /dev/null +++ b/data/evos_moves.asm @@ -0,0 +1,2171 @@ +EvosMovesPointerTable: ; 3b05c (e:705c) + dw Mon112_EvosMoves + dw Mon115_EvosMoves + dw Mon032_EvosMoves + dw Mon035_EvosMoves + dw Mon021_EvosMoves + dw Mon100_EvosMoves + dw Mon034_EvosMoves + dw Mon080_EvosMoves + dw Mon002_EvosMoves + dw Mon103_EvosMoves + dw Mon108_EvosMoves + dw Mon102_EvosMoves + dw Mon088_EvosMoves + dw Mon094_EvosMoves + dw Mon029_EvosMoves + dw Mon031_EvosMoves + dw Mon104_EvosMoves + dw Mon111_EvosMoves + dw Mon131_EvosMoves + dw Mon059_EvosMoves + dw Mon151_EvosMoves + dw Mon130_EvosMoves + dw Mon090_EvosMoves + dw Mon072_EvosMoves + dw Mon092_EvosMoves + dw Mon123_EvosMoves + dw Mon120_EvosMoves + dw Mon009_EvosMoves + dw Mon127_EvosMoves + dw Mon114_EvosMoves + dw Mon152_EvosMoves ;MissingNo + dw Mon153_EvosMoves ;MissingNo + dw Mon058_EvosMoves + dw Mon095_EvosMoves + dw Mon022_EvosMoves + dw Mon016_EvosMoves + dw Mon079_EvosMoves + dw Mon064_EvosMoves + dw Mon075_EvosMoves + dw Mon113_EvosMoves + dw Mon067_EvosMoves + dw Mon122_EvosMoves + dw Mon106_EvosMoves + dw Mon107_EvosMoves + dw Mon024_EvosMoves + dw Mon047_EvosMoves + dw Mon054_EvosMoves + dw Mon096_EvosMoves + dw Mon076_EvosMoves + dw Mon154_EvosMoves ;MissingNo + dw Mon126_EvosMoves + dw Mon155_EvosMoves ;MissingNo + dw Mon125_EvosMoves + dw Mon082_EvosMoves + dw Mon109_EvosMoves + dw Mon156_EvosMoves ;MissingNo + dw Mon056_EvosMoves + dw Mon086_EvosMoves + dw Mon050_EvosMoves + dw Mon128_EvosMoves + dw Mon157_EvosMoves ;MissingNo + dw Mon158_EvosMoves ;MissingNo + dw Mon159_EvosMoves ;MissingNo + dw Mon083_EvosMoves + dw Mon048_EvosMoves + dw Mon149_EvosMoves + dw Mon160_EvosMoves ;MissingNo + dw Mon161_EvosMoves ;MissingNo + dw Mon162_EvosMoves ;MissingNo + dw Mon084_EvosMoves + dw Mon060_EvosMoves + dw Mon124_EvosMoves + dw Mon146_EvosMoves + dw Mon144_EvosMoves + dw Mon145_EvosMoves + dw Mon132_EvosMoves + dw Mon052_EvosMoves + dw Mon098_EvosMoves + dw Mon163_EvosMoves ;MissingNo + dw Mon164_EvosMoves ;MissingNo + dw Mon165_EvosMoves ;MissingNo + dw Mon037_EvosMoves + dw Mon038_EvosMoves + dw Mon025_EvosMoves + dw Mon026_EvosMoves + dw Mon166_EvosMoves ;MissingNo + dw Mon167_EvosMoves ;MissingNo + dw Mon147_EvosMoves + dw Mon148_EvosMoves + dw Mon140_EvosMoves + dw Mon141_EvosMoves + dw Mon116_EvosMoves + dw Mon117_EvosMoves + dw Mon168_EvosMoves ;MissingNo + dw Mon169_EvosMoves ;MissingNo + dw Mon027_EvosMoves + dw Mon028_EvosMoves + dw Mon138_EvosMoves + dw Mon139_EvosMoves + dw Mon039_EvosMoves + dw Mon040_EvosMoves + dw Mon133_EvosMoves + dw Mon136_EvosMoves + dw Mon135_EvosMoves + dw Mon134_EvosMoves + dw Mon066_EvosMoves + dw Mon041_EvosMoves + dw Mon023_EvosMoves + dw Mon046_EvosMoves + dw Mon061_EvosMoves + dw Mon062_EvosMoves + dw Mon013_EvosMoves + dw Mon014_EvosMoves + dw Mon015_EvosMoves + dw Mon170_EvosMoves ;MissingNo + dw Mon085_EvosMoves + dw Mon057_EvosMoves + dw Mon051_EvosMoves + dw Mon049_EvosMoves + dw Mon087_EvosMoves + dw Mon171_EvosMoves ;MissingNo + dw Mon172_EvosMoves ;MissingNo + dw Mon010_EvosMoves + dw Mon011_EvosMoves + dw Mon012_EvosMoves + dw Mon068_EvosMoves + dw Mon173_EvosMoves ;MissingNo + dw Mon055_EvosMoves + dw Mon097_EvosMoves + dw Mon042_EvosMoves + dw Mon150_EvosMoves + dw Mon143_EvosMoves + dw Mon129_EvosMoves + dw Mon174_EvosMoves ;MissingNo + dw Mon175_EvosMoves ;MissingNo + dw Mon089_EvosMoves + dw Mon176_EvosMoves ;MissingNo + dw Mon099_EvosMoves + dw Mon091_EvosMoves + dw Mon177_EvosMoves ;MissingNo + dw Mon101_EvosMoves + dw Mon036_EvosMoves + dw Mon110_EvosMoves + dw Mon053_EvosMoves + dw Mon105_EvosMoves + dw Mon178_EvosMoves ;MissingNo + dw Mon093_EvosMoves + dw Mon063_EvosMoves + dw Mon065_EvosMoves + dw Mon017_EvosMoves + dw Mon018_EvosMoves + dw Mon121_EvosMoves + dw Mon001_EvosMoves + dw Mon003_EvosMoves + dw Mon073_EvosMoves + dw Mon179_EvosMoves ;MissingNo + dw Mon118_EvosMoves + dw Mon119_EvosMoves + dw Mon180_EvosMoves ;MissingNo + dw Mon181_EvosMoves ;MissingNo + dw Mon182_EvosMoves ;MissingNo + dw Mon183_EvosMoves ;MissingNo + dw Mon077_EvosMoves + dw Mon078_EvosMoves + dw Mon019_EvosMoves + dw Mon020_EvosMoves + dw Mon033_EvosMoves + dw Mon030_EvosMoves + dw Mon074_EvosMoves + dw Mon137_EvosMoves + dw Mon142_EvosMoves + dw Mon184_EvosMoves ;MissingNo + dw Mon081_EvosMoves + dw Mon185_EvosMoves ;MissingNo + dw Mon186_EvosMoves ;MissingNo + dw Mon004_EvosMoves + dw Mon007_EvosMoves + dw Mon005_EvosMoves + dw Mon008_EvosMoves + dw Mon006_EvosMoves + dw Mon187_EvosMoves ;MissingNo + dw Mon188_EvosMoves ;MissingNo + dw Mon189_EvosMoves ;MissingNo + dw Mon190_EvosMoves ;MissingNo + dw Mon043_EvosMoves + dw Mon044_EvosMoves + dw Mon045_EvosMoves + dw Mon069_EvosMoves + dw Mon070_EvosMoves + dw Mon071_EvosMoves + +Mon112_EvosMoves: ; 3b1d8 (e:71d8) +;RHYDON +;Evolutions + db 0 +;Learnset + db 30,STOMP + db 35,TAIL_WHIP + db 40,FURY_ATTACK + db 48,HORN_DRILL + db 55,LEER + db 64,TAKE_DOWN + db 0 +Mon115_EvosMoves: ; 3b1e6 (e:71e6) +;KANGASKHAN +;Evolutions + db 0 +;Learnset + db 26,BITE + db 31,TAIL_WHIP + db 36,MEGA_PUNCH + db 41,LEER + db 46,DIZZY_PUNCH + db 0 +Mon032_EvosMoves: ; 3b1f2 (e:71f2) +;NIDORAN_M +;Evolutions + db EV_LEVEL,16,NIDORINO + db 0 +;Learnset + db 8,HORN_ATTACK + db 14,POISON_STING + db 21,FOCUS_ENERGY + db 29,FURY_ATTACK + db 36,HORN_DRILL + db 43,DOUBLE_KICK + db 0 +Mon035_EvosMoves: ; 3b203 (e:7203) +;CLEFAIRY +;Evolutions + db EV_ITEM,MOON_STONE,1,CLEFABLE + db 0 +;Learnset + db 13,SING + db 18,DOUBLESLAP + db 24,MINIMIZE + db 31,METRONOME + db 39,DEFENSE_CURL + db 48,LIGHT_SCREEN + db 0 +Mon021_EvosMoves: ; 3b215 (e:7215) +;SPEAROW +;Evolutions + db EV_LEVEL,20,FEAROW + db 0 +;Learnset + db 9,LEER + db 15,FURY_ATTACK + db 22,MIRROR_MOVE + db 29,DRILL_PECK + db 36,AGILITY + db 0 +Mon100_EvosMoves: ; 3b224 (e:7224) +;VOLTORB +;Evolutions + db EV_LEVEL,30,ELECTRODE + db 0 +;Learnset + db 17,SONICBOOM + db 22,SELFDESTRUCT + db 29,LIGHT_SCREEN + db 36,SWIFT + db 43,EXPLOSION + db 0 +Mon034_EvosMoves: ; 3b233 (e:7233) +;NIDOKING +;Evolutions + db 0 +;Learnset + db 8,HORN_ATTACK + db 14,POISON_STING + db 23,THRASH + db 0 +Mon080_EvosMoves: ; 3b23b (e:723b) +;SLOWBRO +;Evolutions + db 0 +;Learnset + db 18,DISABLE + db 22,HEADBUTT + db 27,GROWL + db 33,WATER_GUN + db 37,WITHDRAW + db 44,AMNESIA + db 55,PSYCHIC_M + db 0 +Mon002_EvosMoves: ; 3b24b (e:724b) +;IVYSAUR +;Evolutions + db EV_LEVEL,32,VENUSAUR + db 0 +;Learnset + db 7,LEECH_SEED + db 13,VINE_WHIP + db 22,POISONPOWDER + db 30,RAZOR_LEAF + db 38,GROWTH + db 46,SLEEP_POWDER + db 54,SOLARBEAM + db 0 +Mon103_EvosMoves: ; 3b25e (e:725e) +;EXEGGUTOR +;Evolutions + db 0 +;Learnset + db 28,STOMP + db 0 +Mon108_EvosMoves: ; 3b262 (e:7262) +;LICKITUNG +;Evolutions + db 0 +;Learnset + db 7,STOMP + db 15,DISABLE + db 23,DEFENSE_CURL + db 31,SLAM + db 39,SCREECH + db 0 +Mon102_EvosMoves: ; 3b26e (e:726e) +;EXEGGCUTE +;Evolutions + db EV_ITEM,LEAF_STONE ,1,EXEGGUTOR + db 0 +;Learnset + db 25,REFLECT + db 28,LEECH_SEED + db 32,STUN_SPORE + db 37,POISONPOWDER + db 42,SOLARBEAM + db 48,SLEEP_POWDER + db 0 +Mon088_EvosMoves: ; 3b280 (e:7280) +;GRIMER +;Evolutions + db EV_LEVEL,38,MUK + db 0 +;Learnset + db 30,POISON_GAS + db 33,MINIMIZE + db 37,SLUDGE + db 42,HARDEN + db 48,SCREECH + db 55,ACID_ARMOR + db 0 +Mon094_EvosMoves: ; 3b291 (e:7291) +;GENGAR +;Evolutions + db 0 +;Learnset + db 29,HYPNOSIS + db 38,DREAM_EATER + db 0 +Mon029_EvosMoves: ; 3b297 (e:7297) +;NIDORAN_F +;Evolutions + db EV_LEVEL,16,NIDORINA + db 0 +;Learnset + db 8,SCRATCH + db 14,POISON_STING + db 21,TAIL_WHIP + db 29,BITE + db 36,FURY_SWIPES + db 43,DOUBLE_KICK + db 0 +Mon031_EvosMoves: ; 3b2a8 (e:72a8) +;NIDOQUEEN +;Evolutions + db 0 +;Learnset + db 8,SCRATCH + db 14,POISON_STING + db 23,BODY_SLAM + db 0 +Mon104_EvosMoves: ; 3b2b0 (e:72b0) +;CUBONE +;Evolutions + db EV_LEVEL,28,MAROWAK + db 0 +;Learnset + db 25,LEER + db 31,FOCUS_ENERGY + db 38,THRASH + db 43,BONEMERANG + db 46,RAGE + db 0 +Mon111_EvosMoves: ; 3b2bf (e:72bf) +;RHYHORN +;Evolutions + db EV_LEVEL,42,RHYDON + db 0 +;Learnset + db 30,STOMP + db 35,TAIL_WHIP + db 40,FURY_ATTACK + db 45,HORN_DRILL + db 50,LEER + db 55,TAKE_DOWN + db 0 +Mon131_EvosMoves: ; 3b2d0 (e:72d0) +;LAPRAS +;Evolutions + db 0 +;Learnset + db 16,SING + db 20,MIST + db 25,BODY_SLAM + db 31,CONFUSE_RAY + db 38,ICE_BEAM + db 46,HYDRO_PUMP + db 0 +Mon059_EvosMoves: ; 3b2de (e:72de) +;ARCANINE +;Evolutions + db 0 +;Learnset + db 0 +Mon151_EvosMoves: ; 3b2e0 (e:72e0) +;MEW +;Evolutions + db 0 +;Learnset + db 10,TRANSFORM + db 20,MEGA_PUNCH + db 30,METRONOME + db 40,PSYCHIC_M + db 0 +Mon130_EvosMoves: ; 3b2ea (e:72ea) +;GYARADOS +;Evolutions + db 0 +;Learnset + db 20,BITE + db 25,DRAGON_RAGE + db 32,LEER + db 41,HYDRO_PUMP + db 52,HYPER_BEAM + db 0 +Mon090_EvosMoves: ; 3b2f6 (e:72f6) +;SHELLDER +;Evolutions + db EV_ITEM,WATER_STONE ,1,CLOYSTER + db 0 +;Learnset + db 18,SUPERSONIC + db 23,CLAMP + db 30,AURORA_BEAM + db 39,LEER + db 50,ICE_BEAM + db 0 +Mon072_EvosMoves: ; 3b306 (e:7306) +;TENTACOOL +;Evolutions + db EV_LEVEL,30,TENTACRUEL + db 0 +;Learnset + db 7,SUPERSONIC + db 13,WRAP + db 18,POISON_STING + db 22,WATER_GUN + db 27,CONSTRICT + db 33,BARRIER + db 40,SCREECH + db 48,HYDRO_PUMP + db 0 +Mon092_EvosMoves: ; 3b31b (e:731b) +;GASTLY +;Evolutions + db EV_LEVEL,25,HAUNTER + db 0 +;Learnset + db 27,HYPNOSIS + db 35,DREAM_EATER + db 0 +Mon123_EvosMoves: ; 3b324 (e:7324) +;SCYTHER +;Evolutions + db 0 +;Learnset + db 17,LEER + db 20,FOCUS_ENERGY + db 24,DOUBLE_TEAM + db 29,SLASH + db 35,SWORDS_DANCE + db 42,AGILITY + db 0 +Mon120_EvosMoves: ; 3b332 (e:7332) +;STARYU +;Evolutions + db EV_ITEM,WATER_STONE ,1,STARMIE + db 0 +;Learnset + db 17,WATER_GUN + db 22,HARDEN + db 27,RECOVER + db 32,SWIFT + db 37,MINIMIZE + db 42,LIGHT_SCREEN + db 47,HYDRO_PUMP + db 0 +Mon009_EvosMoves: ; 3b346 (e:7346) +;BLASTOISE +;Evolutions + db 0 +;Learnset + db 8,BUBBLE + db 15,WATER_GUN + db 24,BITE + db 31,WITHDRAW + db 42,SKULL_BASH + db 52,HYDRO_PUMP + db 0 +Mon127_EvosMoves: ; 3b354 (e:7354) +;PINSIR +;Evolutions + db 0 +;Learnset + db 25,SEISMIC_TOSS + db 30,GUILLOTINE + db 36,FOCUS_ENERGY + db 43,HARDEN + db 49,SLASH + db 54,SWORDS_DANCE + db 0 +Mon114_EvosMoves: ; 3b362 (e:7362) +;TANGELA +;Evolutions + db 0 +;Learnset + db 29,ABSORB + db 32,POISONPOWDER + db 36,STUN_SPORE + db 39,SLEEP_POWDER + db 45,SLAM + db 49,GROWTH + db 0 + +Mon152_EvosMoves: ; 3b370 (e:7370) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 + +Mon153_EvosMoves: ; 3b372 (e:7372) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 +Mon058_EvosMoves: ; 3b374 (e:7374) +;GROWLITHE +;Evolutions + db EV_ITEM,FIRE_STONE,1,ARCANINE + db 0 +;Learnset + db 18,EMBER + db 23,LEER + db 30,TAKE_DOWN + db 39,AGILITY + db 50,FLAMETHROWER + db 0 +Mon095_EvosMoves: ; 3b384 (e:7384) +;ONIX +;Evolutions + db 0 +;Learnset + db 15,BIND + db 19,ROCK_THROW + db 25,RAGE + db 33,SLAM + db 43,HARDEN + db 0 +Mon022_EvosMoves: ; 3b390 (e:7390) +;FEAROW +;Evolutions + db 0 +;Learnset + db 9,LEER + db 15,FURY_ATTACK + db 25,MIRROR_MOVE + db 34,DRILL_PECK + db 43,AGILITY + db 0 +Mon016_EvosMoves: ; 3b39c (e:739c) +;PIDGEY +;Evolutions + db EV_LEVEL,18,PIDGEOTTO + db 0 +;Learnset + db 5,SAND_ATTACK + db 12,QUICK_ATTACK + db 19,WHIRLWIND + db 28,WING_ATTACK + db 36,AGILITY + db 44,MIRROR_MOVE + db 0 +Mon079_EvosMoves: ; 3b3ad (e:73ad) +;SLOWPOKE +;Evolutions + db EV_LEVEL,37,SLOWBRO + db 0 +;Learnset + db 18,DISABLE + db 22,HEADBUTT + db 27,GROWL + db 33,WATER_GUN + db 40,AMNESIA + db 48,PSYCHIC_M + db 0 +Mon064_EvosMoves: ; 3b3be (e:73be) +;KADABRA +;Evolutions + db EV_TRADE,1,ALAKAZAM + db 0 +;Learnset + db 16,CONFUSION + db 20,DISABLE + db 27,PSYBEAM + db 31,RECOVER + db 38,PSYCHIC_M + db 42,REFLECT + db 0 +Mon075_EvosMoves: ; 3b3cf (e:73cf) +;GRAVELER +;Evolutions + db EV_TRADE,1,GOLEM + db 0 +;Learnset + db 11,DEFENSE_CURL + db 16,ROCK_THROW + db 21,SELFDESTRUCT + db 29,HARDEN + db 36,EARTHQUAKE + db 43,EXPLOSION + db 0 +Mon113_EvosMoves: ; 3b3e0 (e:73e0) +;CHANSEY +;Evolutions + db 0 +;Learnset + db 24,SING + db 30,GROWL + db 38,MINIMIZE + db 44,DEFENSE_CURL + db 48,LIGHT_SCREEN + db 54,DOUBLE_EDGE + db 0 +Mon067_EvosMoves: ; 3b3ee (e:73ee) +;MACHOKE +;Evolutions + db EV_TRADE,1,MACHAMP + db 0 +;Learnset + db 20,LOW_KICK + db 25,LEER + db 36,FOCUS_ENERGY + db 44,SEISMIC_TOSS + db 52,SUBMISSION + db 0 +Mon122_EvosMoves: ; 3b3fd (e:73fd) +;MR_MIME +;Evolutions + db 0 +;Learnset + db 15,CONFUSION + db 23,LIGHT_SCREEN + db 31,DOUBLESLAP + db 39,MEDITATE + db 47,SUBSTITUTE + db 0 +Mon106_EvosMoves: ; 3b409 (e:7409) +;HITMONLEE +;Evolutions + db 0 +;Learnset + db 33,ROLLING_KICK + db 38,JUMP_KICK + db 43,FOCUS_ENERGY + db 48,HI_JUMP_KICK + db 53,MEGA_KICK + db 0 +Mon107_EvosMoves: ; 3b415 (e:7415) +;HITMONCHAN +;Evolutions + db 0 +;Learnset + db 33,FIRE_PUNCH + db 38,ICE_PUNCH + db 43,THUNDERPUNCH + db 48,MEGA_PUNCH + db 53,COUNTER + db 0 +Mon024_EvosMoves: ; 3b421 (e:7421) +;ARBOK +;Evolutions + db 0 +;Learnset + db 10,POISON_STING + db 17,BITE + db 27,GLARE + db 36,SCREECH + db 47,ACID + db 0 +Mon047_EvosMoves: ; 3b42d (e:742d) +;PARASECT +;Evolutions + db 0 +;Learnset + db 13,STUN_SPORE + db 20,LEECH_LIFE + db 30,SPORE + db 39,SLASH + db 48,GROWTH + db 0 +Mon054_EvosMoves: ; 3b439 (e:7439) +;PSYDUCK +;Evolutions + db EV_LEVEL,33,GOLDUCK + db 0 +;Learnset + db 28,TAIL_WHIP + db 31,DISABLE + db 36,CONFUSION + db 43,FURY_SWIPES + db 52,HYDRO_PUMP + db 0 +Mon096_EvosMoves: ; 3b448 (e:7448) +;DROWZEE +;Evolutions + db EV_LEVEL,26,HYPNO + db 0 +;Learnset + db 12,DISABLE + db 17,CONFUSION + db 24,HEADBUTT + db 29,POISON_GAS + db 32,PSYCHIC_M + db 37,MEDITATE + db 0 +Mon076_EvosMoves: ; 3b459 (e:7459) +;GOLEM +;Evolutions + db 0 +;Learnset + db 11,DEFENSE_CURL + db 16,ROCK_THROW + db 21,SELFDESTRUCT + db 29,HARDEN + db 36,EARTHQUAKE + db 43,EXPLOSION + db 0 + +Mon154_EvosMoves: ; 3b467 (e:7467) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 +Mon126_EvosMoves: ; 3b469 (e:7469) +;MAGMAR +;Evolutions + db 0 +;Learnset + db 36,LEER + db 39,CONFUSE_RAY + db 43,FIRE_PUNCH + db 48,SMOKESCREEN + db 52,SMOG + db 55,FLAMETHROWER + db 0 + +Mon155_EvosMoves: ; 3b477 (e:7477) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 +Mon125_EvosMoves: ; 3b479 (e:7479) +;ELECTABUZZ +;Evolutions + db 0 +;Learnset + db 34,THUNDERSHOCK + db 37,SCREECH + db 42,THUNDERPUNCH + db 49,LIGHT_SCREEN + db 54,THUNDER + db 0 +Mon082_EvosMoves: ; 3b485 (e:7485) +;MAGNETON +;Evolutions + db 0 +;Learnset + db 21,SONICBOOM + db 25,THUNDERSHOCK + db 29,SUPERSONIC + db 38,THUNDER_WAVE + db 46,SWIFT + db 54,SCREECH + db 0 +Mon109_EvosMoves: ; 3b493 (e:7493) +;KOFFING +;Evolutions + db EV_LEVEL,35,WEEZING + db 0 +;Learnset + db 32,SLUDGE + db 37,SMOKESCREEN + db 40,SELFDESTRUCT + db 45,HAZE + db 48,EXPLOSION + db 0 + +Mon156_EvosMoves: ; 3b4a2 (e:74a2) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 +Mon056_EvosMoves: ; 3b4a4 (e:74a4) +;MANKEY +;Evolutions + db EV_LEVEL,28,PRIMEAPE + db 0 +;Learnset + db 15,KARATE_CHOP + db 21,FURY_SWIPES + db 27,FOCUS_ENERGY + db 33,SEISMIC_TOSS + db 39,THRASH + db 0 +Mon086_EvosMoves: ; 3b4b3 (e:74b3) +;SEEL +;Evolutions + db EV_LEVEL,34,DEWGONG + db 0 +;Learnset + db 30,GROWL + db 35,AURORA_BEAM + db 40,REST + db 45,TAKE_DOWN + db 50,ICE_BEAM + db 0 +Mon050_EvosMoves: ; 3b4c2 (e:74c2) +;DIGLETT +;Evolutions + db EV_LEVEL,26,DUGTRIO + db 0 +;Learnset + db 15,GROWL + db 19,DIG + db 24,SAND_ATTACK + db 31,SLASH + db 40,EARTHQUAKE + db 0 +Mon128_EvosMoves: ; 3b4d1 (e:74d1) +;TAUROS +;Evolutions + db 0 +;Learnset + db 21,STOMP + db 28,TAIL_WHIP + db 35,LEER + db 44,RAGE + db 51,TAKE_DOWN + db 0 + +Mon157_EvosMoves: ; 3b4dd (e:74dd) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 + +Mon158_EvosMoves: ; 3b4df (e:74df) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 + +Mon159_EvosMoves: ; 3b4e1 (e:74e1) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 +Mon083_EvosMoves: ; 3b4e3 (e:74e3) +;FARFETCH_D +;Evolutions + db 0 +;Learnset + db 7,LEER + db 15,FURY_ATTACK + db 23,SWORDS_DANCE + db 31,AGILITY + db 39,SLASH + db 0 +Mon048_EvosMoves: ; 3b4ef (e:74ef) +;VENONAT +;Evolutions + db EV_LEVEL,31,VENOMOTH + db 0 +;Learnset + db 24,POISONPOWDER + db 27,LEECH_LIFE + db 30,STUN_SPORE + db 35,PSYBEAM + db 38,SLEEP_POWDER + db 43,PSYCHIC_M + db 0 +Mon149_EvosMoves: ; 3b500 (e:7500) +;DRAGONITE +;Evolutions + db 0 +;Learnset + db 10,THUNDER_WAVE + db 20,AGILITY + db 35,SLAM + db 45,DRAGON_RAGE + db 60,HYPER_BEAM + db 0 + +Mon160_EvosMoves: ; 3b50c (e:750c) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 + +Mon161_EvosMoves: ; 3b50e (e:750e) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 + +Mon162_EvosMoves: ; 3b510 (e:7510) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 +Mon084_EvosMoves: ; 3b512 (e:7512) +;DODUO +;Evolutions + db EV_LEVEL,31,DODRIO + db 0 +;Learnset + db 20,GROWL + db 24,FURY_ATTACK + db 30,DRILL_PECK + db 36,RAGE + db 40,TRI_ATTACK + db 44,AGILITY + db 0 +Mon060_EvosMoves: ; 3b523 (e:7523) +;POLIWAG +;Evolutions + db EV_LEVEL,25,POLIWHIRL + db 0 +;Learnset + db 16,HYPNOSIS + db 19,WATER_GUN + db 25,DOUBLESLAP + db 31,BODY_SLAM + db 38,AMNESIA + db 45,HYDRO_PUMP + db 0 +Mon124_EvosMoves: ; 3b534 (e:7534) +;JYNX +;Evolutions + db 0 +;Learnset + db 18,LICK + db 23,DOUBLESLAP + db 31,ICE_PUNCH + db 39,BODY_SLAM + db 47,THRASH + db 58,BLIZZARD + db 0 +Mon146_EvosMoves: ; 3b542 (e:7542) +;MOLTRES +;Evolutions + db 0 +;Learnset + db 51,LEER + db 55,AGILITY + db 60,SKY_ATTACK + db 0 +Mon144_EvosMoves: ; 3b54a (e:754a) +;ARTICUNO +;Evolutions + db 0 +;Learnset + db 51,BLIZZARD + db 55,AGILITY + db 60,MIST + db 0 +Mon145_EvosMoves: ; 3b552 (e:7552) +;ZAPDOS +;Evolutions + db 0 +;Learnset + db 51,THUNDER + db 55,AGILITY + db 60,LIGHT_SCREEN + db 0 +Mon132_EvosMoves: ; 3b55a (e:755a) +;DITTO +;Evolutions + db 0 +;Learnset + db 0 +Mon052_EvosMoves: ; 3b55c (e:755c) +;MEOWTH +;Evolutions + db EV_LEVEL,28,PERSIAN + db 0 +;Learnset + db 12,BITE + db 17,PAY_DAY + db 24,SCREECH + db 33,FURY_SWIPES + db 44,SLASH + db 0 +Mon098_EvosMoves: ; 3b56b (e:756b) +;KRABBY +;Evolutions + db EV_LEVEL,28,KINGLER + db 0 +;Learnset + db 20,VICEGRIP + db 25,GUILLOTINE + db 30,STOMP + db 35,CRABHAMMER + db 40,HARDEN + db 0 + +Mon163_EvosMoves: ; 3b57a (e:757a) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 + +Mon164_EvosMoves: ; 3b57c (e:757c) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 + +Mon165_EvosMoves: ; 3b57e (e:757e) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 +Mon037_EvosMoves: ; 3b580 (e:7580) +;VULPIX +;Evolutions + db EV_ITEM,FIRE_STONE,1,NINETALES + db 0 +;Learnset + db 16,QUICK_ATTACK + db 21,ROAR + db 28,CONFUSE_RAY + db 35,FLAMETHROWER + db 42,FIRE_SPIN + db 0 +Mon038_EvosMoves: ; 3b590 (e:7590) +;NINETALES +;Evolutions + db 0 +;Learnset + db 0 +Mon025_EvosMoves: ; 3b592 (e:7592) +;PIKACHU +;Evolutions + db EV_ITEM,THUNDER_STONE ,1,RAICHU + db 0 +;Learnset + db 9,THUNDER_WAVE + db 16,QUICK_ATTACK + db 26,SWIFT + db 33,AGILITY + db 43,THUNDER + db 0 +Mon026_EvosMoves: ; 3b5a2 (e:75a2) +;RAICHU +;Evolutions + db 0 +;Learnset + db 0 + +Mon166_EvosMoves: ; 3b5a4 (e:75a4) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 + +Mon167_EvosMoves: ; 3b5a6 (e:75a6) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 +Mon147_EvosMoves: ; 3b5a8 (e:75a8) +;DRATINI +;Evolutions + db EV_LEVEL,30,DRAGONAIR + db 0 +;Learnset + db 10,THUNDER_WAVE + db 20,AGILITY + db 30,SLAM + db 40,DRAGON_RAGE + db 50,HYPER_BEAM + db 0 +Mon148_EvosMoves: ; 3b5b7 (e:75b7) +;DRAGONAIR +;Evolutions + db EV_LEVEL,55,DRAGONITE + db 0 +;Learnset + db 10,THUNDER_WAVE + db 20,AGILITY + db 35,SLAM + db 45,DRAGON_RAGE + db 55,HYPER_BEAM + db 0 +Mon140_EvosMoves: ; 3b5c6 (e:75c6) +;KABUTO +;Evolutions + db EV_LEVEL,40,KABUTOPS + db 0 +;Learnset + db 34,ABSORB + db 39,SLASH + db 44,LEER + db 49,HYDRO_PUMP + db 0 +Mon141_EvosMoves: ; 3b5d3 (e:75d3) +;KABUTOPS +;Evolutions + db 0 +;Learnset + db 34,ABSORB + db 39,SLASH + db 46,LEER + db 53,HYDRO_PUMP + db 0 +Mon116_EvosMoves: ; 3b5dd (e:75dd) +;HORSEA +;Evolutions + db EV_LEVEL,32,SEADRA + db 0 +;Learnset + db 19,SMOKESCREEN + db 24,LEER + db 30,WATER_GUN + db 37,AGILITY + db 45,HYDRO_PUMP + db 0 +Mon117_EvosMoves: ; 3b5ec (e:75ec) +;SEADRA +;Evolutions + db 0 +;Learnset + db 19,SMOKESCREEN + db 24,LEER + db 30,WATER_GUN + db 41,AGILITY + db 52,HYDRO_PUMP + db 0 + +Mon168_EvosMoves: ; 3b5f8 (e:75f8) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 + +Mon169_EvosMoves: ; 3b5fa (e:75fa) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 +Mon027_EvosMoves: ; 3b5fc (e:75fc) +;SANDSHREW +;Evolutions + db EV_LEVEL,22,SANDSLASH + db 0 +;Learnset + db 10,SAND_ATTACK + db 17,SLASH + db 24,POISON_STING + db 31,SWIFT + db 38,FURY_SWIPES + db 0 +Mon028_EvosMoves: ; 3b60b (e:760b) +;SANDSLASH +;Evolutions + db 0 +;Learnset + db 10,SAND_ATTACK + db 17,SLASH + db 27,POISON_STING + db 36,SWIFT + db 47,FURY_SWIPES + db 0 +Mon138_EvosMoves: ; 3b617 (e:7617) +;OMANYTE +;Evolutions + db EV_LEVEL,40,OMASTAR + db 0 +;Learnset + db 34,HORN_ATTACK + db 39,LEER + db 46,SPIKE_CANNON + db 53,HYDRO_PUMP + db 0 +Mon139_EvosMoves: ; 3b624 (e:7624) +;OMASTAR +;Evolutions + db 0 +;Learnset + db 34,HORN_ATTACK + db 39,LEER + db 44,SPIKE_CANNON + db 49,HYDRO_PUMP + db 0 +Mon039_EvosMoves: ; 3b62e (e:762e) +;JIGGLYPUFF +;Evolutions + db EV_ITEM,MOON_STONE,1,WIGGLYTUFF + db 0 +;Learnset + db 9,POUND + db 14,DISABLE + db 19,DEFENSE_CURL + db 24,DOUBLESLAP + db 29,REST + db 34,BODY_SLAM + db 39,DOUBLE_EDGE + db 0 +Mon040_EvosMoves: ; 3b642 (e:7642) +;WIGGLYTUFF +;Evolutions + db 0 +;Learnset + db 0 +Mon133_EvosMoves: ; 3b644 (e:7644) +;EEVEE +;Evolutions + db EV_ITEM,FIRE_STONE,1,FLAREON + db EV_ITEM,THUNDER_STONE ,1,JOLTEON + db EV_ITEM,WATER_STONE ,1,VAPOREON + db 0 +;Learnset + db 27,QUICK_ATTACK + db 31,TAIL_WHIP + db 37,BITE + db 45,TAKE_DOWN + db 0 +Mon136_EvosMoves: ; 3b65a (e:765a) +;FLAREON +;Evolutions + db 0 +;Learnset + db 27,QUICK_ATTACK + db 31,EMBER + db 37,TAIL_WHIP + db 40,BITE + db 42,LEER + db 44,FIRE_SPIN + db 48,RAGE + db 54,FLAMETHROWER + db 0 +Mon135_EvosMoves: ; 3b66c (e:766c) +;JOLTEON +;Evolutions + db 0 +;Learnset + db 27,QUICK_ATTACK + db 31,THUNDERSHOCK + db 37,TAIL_WHIP + db 40,THUNDER_WAVE + db 42,DOUBLE_KICK + db 44,AGILITY + db 48,PIN_MISSILE + db 54,THUNDER + db 0 +Mon134_EvosMoves: ; 3b67e (e:767e) +;VAPOREON +;Evolutions + db 0 +;Learnset + db 27,QUICK_ATTACK + db 31,WATER_GUN + db 37,TAIL_WHIP + db 40,BITE + db 42,ACID_ARMOR + db 44,HAZE + db 48,MIST + db 54,HYDRO_PUMP + db 0 +Mon066_EvosMoves: ; 3b690 (e:7690) +;MACHOP +;Evolutions + db EV_LEVEL,28,MACHOKE + db 0 +;Learnset + db 20,LOW_KICK + db 25,LEER + db 32,FOCUS_ENERGY + db 39,SEISMIC_TOSS + db 46,SUBMISSION + db 0 +Mon041_EvosMoves: ; 3b69f (e:769f) +;ZUBAT +;Evolutions + db EV_LEVEL,22,GOLBAT + db 0 +;Learnset + db 10,SUPERSONIC + db 15,BITE + db 21,CONFUSE_RAY + db 28,WING_ATTACK + db 36,HAZE + db 0 +Mon023_EvosMoves: ; 3b6ae (e:76ae) +;EKANS +;Evolutions + db EV_LEVEL,22,ARBOK + db 0 +;Learnset + db 10,POISON_STING + db 17,BITE + db 24,GLARE + db 31,SCREECH + db 38,ACID + db 0 +Mon046_EvosMoves: ; 3b6bd (e:76bd) +;PARAS +;Evolutions + db EV_LEVEL,24,PARASECT + db 0 +;Learnset + db 13,STUN_SPORE + db 20,LEECH_LIFE + db 27,SPORE + db 34,SLASH + db 41,GROWTH + db 0 +Mon061_EvosMoves: ; 3b6cc (e:76cc) +;POLIWHIRL +;Evolutions + db EV_ITEM,WATER_STONE ,1,POLIWRATH + db 0 +;Learnset + db 16,HYPNOSIS + db 19,WATER_GUN + db 26,DOUBLESLAP + db 33,BODY_SLAM + db 41,AMNESIA + db 49,HYDRO_PUMP + db 0 +Mon062_EvosMoves: ; 3b6de (e:76de) +;POLIWRATH +;Evolutions + db 0 +;Learnset + db 16,HYPNOSIS + db 19,WATER_GUN + db 0 +Mon013_EvosMoves: ; 3b6e4 (e:76e4) +;WEEDLE +;Evolutions + db EV_LEVEL,7,KAKUNA + db 0 +;Learnset + db 0 +Mon014_EvosMoves: ; 3b6e9 (e:76e9) +;KAKUNA +;Evolutions + db EV_LEVEL,10,BEEDRILL + db 0 +;Learnset + db 0 +Mon015_EvosMoves: ; 3b6ee (e:76ee) +;BEEDRILL +;Evolutions + db 0 +;Learnset + db 12,FURY_ATTACK + db 16,FOCUS_ENERGY + db 20,TWINEEDLE + db 25,RAGE + db 30,PIN_MISSILE + db 35,AGILITY + db 0 + +Mon170_EvosMoves: ; 3b6fc (e:76fc) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 +Mon085_EvosMoves: ; 3b6fe (e:76fe) +;DODRIO +;Evolutions + db 0 +;Learnset + db 20,GROWL + db 24,FURY_ATTACK + db 30,DRILL_PECK + db 39,RAGE + db 45,TRI_ATTACK + db 51,AGILITY + db 0 +Mon057_EvosMoves: ; 3b70c (e:770c) +;PRIMEAPE +;Evolutions + db 0 +;Learnset + db 15,KARATE_CHOP + db 21,FURY_SWIPES + db 27,FOCUS_ENERGY + db 37,SEISMIC_TOSS + db 46,THRASH + db 0 +Mon051_EvosMoves: ; 3b718 (e:7718) +;DUGTRIO +;Evolutions + db 0 +;Learnset + db 15,GROWL + db 19,DIG + db 24,SAND_ATTACK + db 35,SLASH + db 47,EARTHQUAKE + db 0 +Mon049_EvosMoves: ; 3b724 (e:7724) +;VENOMOTH +;Evolutions + db 0 +;Learnset + db 24,POISONPOWDER + db 27,LEECH_LIFE + db 30,STUN_SPORE + db 38,PSYBEAM + db 43,SLEEP_POWDER + db 50,PSYCHIC_M + db 0 +Mon087_EvosMoves: ; 3b732 (e:7732) +;DEWGONG +;Evolutions + db 0 +;Learnset + db 30,GROWL + db 35,AURORA_BEAM + db 44,REST + db 50,TAKE_DOWN + db 56,ICE_BEAM + db 0 + +Mon171_EvosMoves: ; 3b73e (e:773e) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 + +Mon172_EvosMoves: ; 3b740 (e:7740) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 +Mon010_EvosMoves: ; 3b742 (e:7742) +;CATERPIE +;Evolutions + db EV_LEVEL,7,METAPOD + db 0 +;Learnset + db 0 +Mon011_EvosMoves: ; 3b747 (e:7747) +;METAPOD +;Evolutions + db EV_LEVEL,10,BUTTERFREE + db 0 +;Learnset + db 0 +Mon012_EvosMoves: ; 3b74c (e:774c) +;BUTTERFREE +;Evolutions + db 0 +;Learnset + db 12,CONFUSION + db 15,POISONPOWDER + db 16,STUN_SPORE + db 17,SLEEP_POWDER + db 21,SUPERSONIC + db 26,WHIRLWIND + db 32,PSYBEAM + db 0 +Mon068_EvosMoves: ; 3b75c (e:775c) +;MACHAMP +;Evolutions + db 0 +;Learnset + db 20,LOW_KICK + db 25,LEER + db 36,FOCUS_ENERGY + db 44,SEISMIC_TOSS + db 52,SUBMISSION + db 0 + +Mon173_EvosMoves: ; 3b768 (e:7768) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 +Mon055_EvosMoves: ; 3b76a (e:776a) +;GOLDUCK +;Evolutions + db 0 +;Learnset + db 28,TAIL_WHIP + db 31,DISABLE + db 39,CONFUSION + db 48,FURY_SWIPES + db 59,HYDRO_PUMP + db 0 +Mon097_EvosMoves: ; 3b776 (e:7776) +;HYPNO +;Evolutions + db 0 +;Learnset + db 12,DISABLE + db 17,CONFUSION + db 24,HEADBUTT + db 33,POISON_GAS + db 37,PSYCHIC_M + db 43,MEDITATE + db 0 +Mon042_EvosMoves: ; 3b784 (e:7784) +;GOLBAT +;Evolutions + db 0 +;Learnset + db 10,SUPERSONIC + db 15,BITE + db 21,CONFUSE_RAY + db 32,WING_ATTACK + db 43,HAZE + db 0 +Mon150_EvosMoves: ; 3b790 (e:7790) +;MEWTWO +;Evolutions + db 0 +;Learnset + db 63,BARRIER + db 66,PSYCHIC_M + db 70,RECOVER + db 75,MIST + db 81,AMNESIA + db 0 +Mon143_EvosMoves: ; 3b79c (e:779c) +;SNORLAX +;Evolutions + db 0 +;Learnset + db 35,BODY_SLAM + db 41,HARDEN + db 48,DOUBLE_EDGE + db 56,HYPER_BEAM + db 0 +Mon129_EvosMoves: ; 3b7a6 (e:77a6) +;MAGIKARP +;Evolutions + db EV_LEVEL,20,GYARADOS + db 0 +;Learnset + db 15,TACKLE + db 0 + +Mon174_EvosMoves: ; 3b7ad (e:77ad) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 + +Mon175_EvosMoves: ; 3b7af (e:77af) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 +Mon089_EvosMoves: ; 3b7b1 (e:77b1) +;MUK +;Evolutions + db 0 +;Learnset + db 30,POISON_GAS + db 33,MINIMIZE + db 37,SLUDGE + db 45,HARDEN + db 53,SCREECH + db 60,ACID_ARMOR + db 0 + +Mon176_EvosMoves: ; 3b7bf (e:77bf) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 +Mon099_EvosMoves: ; 3b7c1 (e:77c1) +;KINGLER +;Evolutions + db 0 +;Learnset + db 20,VICEGRIP + db 25,GUILLOTINE + db 34,STOMP + db 42,CRABHAMMER + db 49,HARDEN + db 0 +Mon091_EvosMoves: ; 3b7cd (e:77cd) +;CLOYSTER +;Evolutions + db 0 +;Learnset + db 50,SPIKE_CANNON + db 0 + +Mon177_EvosMoves: ; 3b7d1 (e:77d1) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 +Mon101_EvosMoves: ; 3b7d3 (e:77d3) +;ELECTRODE +;Evolutions + db 0 +;Learnset + db 17,SONICBOOM + db 22,SELFDESTRUCT + db 29,LIGHT_SCREEN + db 40,SWIFT + db 50,EXPLOSION + db 0 +Mon036_EvosMoves: ; 3b7df (e:77df) +;CLEFABLE +;Evolutions + db 0 +;Learnset + db 0 +Mon110_EvosMoves: ; 3b7e1 (e:77e1) +;WEEZING +;Evolutions + db 0 +;Learnset + db 32,SLUDGE + db 39,SMOKESCREEN + db 43,SELFDESTRUCT + db 49,HAZE + db 53,EXPLOSION + db 0 +Mon053_EvosMoves: ; 3b7ed (e:77ed) +;PERSIAN +;Evolutions + db 0 +;Learnset + db 12,BITE + db 17,PAY_DAY + db 24,SCREECH + db 37,FURY_SWIPES + db 51,SLASH + db 0 +Mon105_EvosMoves: ; 3b7f9 (e:77f9) +;MAROWAK +;Evolutions + db 0 +;Learnset + db 25,LEER + db 33,FOCUS_ENERGY + db 41,THRASH + db 48,BONEMERANG + db 55,RAGE + db 0 + +Mon178_EvosMoves: ; 3b805 (e:7805) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 +Mon093_EvosMoves: ; 3b807 (e:7807) +;HAUNTER +;Evolutions + db EV_TRADE,1,GENGAR + db 0 +;Learnset + db 29,HYPNOSIS + db 38,DREAM_EATER + db 0 +Mon063_EvosMoves: ; 3b810 (e:7810) +;ABRA +;Evolutions + db EV_LEVEL,16,KADABRA + db 0 +;Learnset + db 0 +Mon065_EvosMoves: ; 3b815 (e:7815) +;ALAKAZAM +;Evolutions + db 0 +;Learnset + db 16,CONFUSION + db 20,DISABLE + db 27,PSYBEAM + db 31,RECOVER + db 38,PSYCHIC_M + db 42,REFLECT + db 0 +Mon017_EvosMoves: ; 3b823 (e:7823) +;PIDGEOTTO +;Evolutions + db EV_LEVEL,36,PIDGEOT + db 0 +;Learnset + db 5,SAND_ATTACK + db 12,QUICK_ATTACK + db 21,WHIRLWIND + db 31,WING_ATTACK + db 40,AGILITY + db 49,MIRROR_MOVE + db 0 +Mon018_EvosMoves: ; 3b834 (e:7834) +;PIDGEOT +;Evolutions + db 0 +;Learnset + db 5,SAND_ATTACK + db 12,QUICK_ATTACK + db 21,WHIRLWIND + db 31,WING_ATTACK + db 44,AGILITY + db 54,MIRROR_MOVE + db 0 +Mon121_EvosMoves: ; 3b842 (e:7842) +;STARMIE +;Evolutions + db 0 +;Learnset + db 0 +Mon001_EvosMoves: ; 3b844 (e:7844) +;BULBASAUR +;Evolutions + db EV_LEVEL,16,IVYSAUR + db 0 +;Learnset + db 7,LEECH_SEED + db 13,VINE_WHIP + db 20,POISONPOWDER + db 27,RAZOR_LEAF + db 34,GROWTH + db 41,SLEEP_POWDER + db 48,SOLARBEAM + db 0 +Mon003_EvosMoves: ; 3b857 (e:7857) +;VENUSAUR +;Evolutions + db 0 +;Learnset + db 7,LEECH_SEED + db 13,VINE_WHIP + db 22,POISONPOWDER + db 30,RAZOR_LEAF + db 43,GROWTH + db 55,SLEEP_POWDER + db 65,SOLARBEAM + db 0 +Mon073_EvosMoves: ; 3b867 (e:7867) +;TENTACRUEL +;Evolutions + db 0 +;Learnset + db 7,SUPERSONIC + db 13,WRAP + db 18,POISON_STING + db 22,WATER_GUN + db 27,CONSTRICT + db 35,BARRIER + db 43,SCREECH + db 50,HYDRO_PUMP + db 0 + +Mon179_EvosMoves: ; 3b879 (e:7879) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 +Mon118_EvosMoves: ; 3b87b (e:787b) +;GOLDEEN +;Evolutions + db EV_LEVEL,33,SEAKING + db 0 +;Learnset + db 19,SUPERSONIC + db 24,HORN_ATTACK + db 30,FURY_ATTACK + db 37,WATERFALL + db 45,HORN_DRILL + db 54,AGILITY + db 0 +Mon119_EvosMoves: ; 3b88c (e:788c) +;SEAKING +;Evolutions + db 0 +;Learnset + db 19,SUPERSONIC + db 24,HORN_ATTACK + db 30,FURY_ATTACK + db 39,WATERFALL + db 48,HORN_DRILL + db 54,AGILITY + db 0 + +Mon180_EvosMoves: ; 3b89a (e:789a) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 + +Mon181_EvosMoves: ; 3b89c (e:789c) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 + +Mon182_EvosMoves: ; 3b89e (e:789e) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 + +Mon183_EvosMoves: ; 3b8a0 (e:78a0) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 +Mon077_EvosMoves: ; 3b8a2 (e:78a2) +;PONYTA +;Evolutions + db EV_LEVEL,40,RAPIDASH + db 0 +;Learnset + db 30,TAIL_WHIP + db 32,STOMP + db 35,GROWL + db 39,FIRE_SPIN + db 43,TAKE_DOWN + db 48,AGILITY + db 0 +Mon078_EvosMoves: ; 3b8b3 (e:78b3) +;RAPIDASH +;Evolutions + db 0 +;Learnset + db 30,TAIL_WHIP + db 32,STOMP + db 35,GROWL + db 39,FIRE_SPIN + db 47,TAKE_DOWN + db 55,AGILITY + db 0 +Mon019_EvosMoves: ; 3b8c1 (e:78c1) +;RATTATA +;Evolutions + db EV_LEVEL,20,RATICATE + db 0 +;Learnset + db 7,QUICK_ATTACK + db 14,HYPER_FANG + db 23,FOCUS_ENERGY + db 34,SUPER_FANG + db 0 +Mon020_EvosMoves: ; 3b8ce (e:78ce) +;RATICATE +;Evolutions + db 0 +;Learnset + db 7,QUICK_ATTACK + db 14,HYPER_FANG + db 27,FOCUS_ENERGY + db 41,SUPER_FANG + db 0 +Mon033_EvosMoves: ; 3b8d8 (e:78d8) +;NIDORINO +;Evolutions + db EV_ITEM,MOON_STONE,1,NIDOKING + db 0 +;Learnset + db 8,HORN_ATTACK + db 14,POISON_STING + db 23,FOCUS_ENERGY + db 32,FURY_ATTACK + db 41,HORN_DRILL + db 50,DOUBLE_KICK + db 0 +Mon030_EvosMoves: ; 3b8ea (e:78ea) +;NIDORINA +;Evolutions + db EV_ITEM,MOON_STONE,1,NIDOQUEEN + db 0 +;Learnset + db 8,SCRATCH + db 14,POISON_STING + db 23,TAIL_WHIP + db 32,BITE + db 41,FURY_SWIPES + db 50,DOUBLE_KICK + db 0 +Mon074_EvosMoves: ; 3b8fc (e:78fc) +;GEODUDE +;Evolutions + db EV_LEVEL,25,GRAVELER + db 0 +;Learnset + db 11,DEFENSE_CURL + db 16,ROCK_THROW + db 21,SELFDESTRUCT + db 26,HARDEN + db 31,EARTHQUAKE + db 36,EXPLOSION + db 0 +Mon137_EvosMoves: ; 3b90d (e:790d) +;PORYGON +;Evolutions + db 0 +;Learnset + db 23,PSYBEAM + db 28,RECOVER + db 35,AGILITY + db 42,TRI_ATTACK + db 0 +Mon142_EvosMoves: ; 3b917 (e:7917) +;AERODACTYL +;Evolutions + db 0 +;Learnset + db 33,SUPERSONIC + db 38,BITE + db 45,TAKE_DOWN + db 54,HYPER_BEAM + db 0 + +Mon184_EvosMoves: ; 3b921 (e:7921) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 +Mon081_EvosMoves: ; 3b923 (e:7923) +;MAGNEMITE +;Evolutions + db EV_LEVEL,30,MAGNETON + db 0 +;Learnset + db 21,SONICBOOM + db 25,THUNDERSHOCK + db 29,SUPERSONIC + db 35,THUNDER_WAVE + db 41,SWIFT + db 47,SCREECH + db 0 + +Mon185_EvosMoves: ; 3b934 (e:7934) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 + +Mon186_EvosMoves: ; 3b936 (e:7936) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 +Mon004_EvosMoves: ; 3b938 (e:7938) +;CHARMANDER +;Evolutions + db EV_LEVEL,16,CHARMELEON + db 0 +;Learnset + db 9,EMBER + db 15,LEER + db 22,RAGE + db 30,SLASH + db 38,FLAMETHROWER + db 46,FIRE_SPIN + db 0 +Mon007_EvosMoves: ; 3b949 (e:7949) +;SQUIRTLE +;Evolutions + db EV_LEVEL,16,WARTORTLE + db 0 +;Learnset + db 8,BUBBLE + db 15,WATER_GUN + db 22,BITE + db 28,WITHDRAW + db 35,SKULL_BASH + db 42,HYDRO_PUMP + db 0 +Mon005_EvosMoves: ; 3b95a (e:795a) +;CHARMELEON +;Evolutions + db EV_LEVEL,36,CHARIZARD + db 0 +;Learnset + db 9,EMBER + db 15,LEER + db 24,RAGE + db 33,SLASH + db 42,FLAMETHROWER + db 56,FIRE_SPIN + db 0 +Mon008_EvosMoves: ; 3b96b (e:796b) +;WARTORTLE +;Evolutions + db EV_LEVEL,36,BLASTOISE + db 0 +;Learnset + db 8,BUBBLE + db 15,WATER_GUN + db 24,BITE + db 31,WITHDRAW + db 39,SKULL_BASH + db 47,HYDRO_PUMP + db 0 +Mon006_EvosMoves: ; 3b97c (e:797c) +;CHARIZARD +;Evolutions + db 0 +;Learnset + db 9,EMBER + db 15,LEER + db 24,RAGE + db 36,SLASH + db 46,FLAMETHROWER + db 55,FIRE_SPIN + db 0 + +Mon187_EvosMoves: ; 3b98a (e:798a) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 + +Mon188_EvosMoves: ; 3b98c (e:798c) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 + +Mon189_EvosMoves: ; 3b98e (e:798e) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 + +Mon190_EvosMoves: ; 3b990 (e:7990) +;MISSINGNO +;Evolutions + db 0 +;Learnset + db 0 +Mon043_EvosMoves: ; 3b992 (e:7992) +;ODDISH +;Evolutions + db EV_LEVEL,21,GLOOM + db 0 +;Learnset + db 15,POISONPOWDER + db 17,STUN_SPORE + db 19,SLEEP_POWDER + db 24,ACID + db 33,PETAL_DANCE + db 46,SOLARBEAM + db 0 +Mon044_EvosMoves: ; 3b9a3 (e:79a3) +;GLOOM +;Evolutions + db EV_ITEM,LEAF_STONE ,1,VILEPLUME + db 0 +;Learnset + db 15,POISONPOWDER + db 17,STUN_SPORE + db 19,SLEEP_POWDER + db 28,ACID + db 38,PETAL_DANCE + db 52,SOLARBEAM + db 0 +Mon045_EvosMoves: ; 3b9b5 (e:79b5) +;VILEPLUME +;Evolutions + db 0 +;Learnset + db 15,POISONPOWDER + db 17,STUN_SPORE + db 19,SLEEP_POWDER + db 0 +Mon069_EvosMoves: ; 3b9bd (e:79bd) +;BELLSPROUT +;Evolutions + db EV_LEVEL,21,WEEPINBELL + db 0 +;Learnset + db 13,WRAP + db 15,POISONPOWDER + db 18,SLEEP_POWDER + db 21,STUN_SPORE + db 26,ACID + db 33,RAZOR_LEAF + db 42,SLAM + db 0 +Mon070_EvosMoves: ; 3b9d0 (e:79d0) +;WEEPINBELL +;Evolutions + db EV_ITEM,LEAF_STONE ,1,VICTREEBEL + db 0 +;Learnset + db 13,WRAP + db 15,POISONPOWDER + db 18,SLEEP_POWDER + db 23,STUN_SPORE + db 29,ACID + db 38,RAZOR_LEAF + db 49,SLAM + db 0 +Mon071_EvosMoves: ; 3b9e4 (e:79e4) +;VICTREEBEL +;Evolutions + db 0 +;Learnset + db 13,WRAP + db 15,POISONPOWDER + db 18,SLEEP_POWDER + db 0 diff --git a/data/force_bike_surf.asm b/data/force_bike_surf.asm new file mode 100755 index 00000000..66cae0a4 --- /dev/null +++ b/data/force_bike_surf.asm @@ -0,0 +1,11 @@ +ForcedBikeOrSurfMaps: ; c3e6 (3:43e6) +; map id, y, x + db ROUTE_16,$0A,$11 + db ROUTE_16,$0B,$11 + db ROUTE_18,$08,$21 + db ROUTE_18,$09,$21 + db SEAFOAM_ISLANDS_4,$07,$12 + db SEAFOAM_ISLANDS_4,$07,$13 + db SEAFOAM_ISLANDS_5,$0E,$04 + db SEAFOAM_ISLANDS_5,$0E,$05 + db $FF ;end diff --git a/data/good_rod.asm b/data/good_rod.asm new file mode 100755 index 00000000..f1785737 --- /dev/null +++ b/data/good_rod.asm @@ -0,0 +1,3 @@ +GoodRodMons: ; e27f (3:627f) + db 10,GOLDEEN + db 10,POLIWAG diff --git a/data/hidden_coins.asm b/data/hidden_coins.asm new file mode 100755 index 00000000..e444bf28 --- /dev/null +++ b/data/hidden_coins.asm @@ -0,0 +1,14 @@ +HiddenCoinCoords: ; 76822 (1d:6822) + db GAME_CORNER,$08,$00 + db GAME_CORNER,$10,$01 + db GAME_CORNER,$0b,$03 + db GAME_CORNER,$0e,$03 + db GAME_CORNER,$0c,$04 + db GAME_CORNER,$0c,$09 + db GAME_CORNER,$0f,$09 + db GAME_CORNER,$0e,$10 + db GAME_CORNER,$10,$0a + db GAME_CORNER,$07,$0b + db GAME_CORNER,$08,$0f + db GAME_CORNER,$0f,$0c + db $ff diff --git a/data/hidden_item_coords.asm b/data/hidden_item_coords.asm new file mode 100755 index 00000000..54c785f5 --- /dev/null +++ b/data/hidden_item_coords.asm @@ -0,0 +1,57 @@ +HiddenItemCoords: ; 766b8 (1d:66b8) +; map ID, then coords + db VIRIDIAN_FOREST,$12,$01 + db VIRIDIAN_FOREST,$2a,$10 + db MT_MOON_3,$0c,$12 + db ROUTE_25,$03,$26 + db ROUTE_9,$07,$0e + db SS_ANNE_6,$09,$0d + db SS_ANNE_10,$01,$03 + db ROUTE_10,$11,$09 + db ROUTE_10,$35,$10 + db ROCKET_HIDEOUT_1,$0f,$15 + db ROCKET_HIDEOUT_3,$11,$1b + db ROCKET_HIDEOUT_4,$01,$19 + db POKEMONTOWER_5,$0c,$04 + db ROUTE_13,$0e,$01 + db ROUTE_13,$0d,$10 + db MANSION_4,$09,$01 + db SAFARI_ZONE_ENTRANCE,$01,$0a + db SAFARI_ZONE_WEST,$05,$06 + db SILPH_CO_5F,$03,$0c + db SILPH_CO_9F,$0f,$02 + db COPYCATS_HOUSE_2F,$01,$01 + db UNKNOWN_DUNGEON_1,$0b,$0e + db UNKNOWN_DUNGEON_3,$03,$1b + db POWER_PLANT,$10,$11 + db POWER_PLANT,$01,$0c + db SEAFOAM_ISLANDS_3,$0f,$0f + db SEAFOAM_ISLANDS_5,$11,$19 + db MANSION_1,$10,$08 + db MANSION_3,$09,$01 + db ROUTE_23,$2c,$09 + db ROUTE_23,$46,$13 + db ROUTE_23,$5a,$08 + db VICTORY_ROAD_2,$02,$05 + db VICTORY_ROAD_2,$07,$1a + db $6f,$0b,$0e + db VIRIDIAN_CITY,$04,$0e + db ROUTE_11,$05,$30 + db ROUTE_12,$3f,$02 + db ROUTE_17,$0e,$0f + db ROUTE_17,$2d,$08 + db ROUTE_17,$48,$11 + db ROUTE_17,$5b,$04 + db ROUTE_17,$79,$08 + db UNDERGROUND_PATH_NS,$04,$03 + db UNDERGROUND_PATH_NS,$22,$04 + db UNDERGROUND_PATH_WE,$02,$0c + db UNDERGROUND_PATH_WE,$05,$15 + db CELADON_CITY,$0f,$30 + db ROUTE_25,$01,$0a + db MT_MOON_3,$09,$21 + db SEAFOAM_ISLANDS_4,$10,$09 + db VERMILION_CITY,$0b,$0e + db CERULEAN_CITY,$08,$0f + db ROUTE_4,$03,$28 + db $ff diff --git a/data/hidden_objects.asm b/data/hidden_objects.asm new file mode 100755 index 00000000..54326b35 --- /dev/null +++ b/data/hidden_objects.asm @@ -0,0 +1,781 @@ +HiddenObjectMaps: ; 46a40 (11:6a40) + db REDS_HOUSE_2F + db BLUES_HOUSE + db OAKS_LAB + db VIRIDIAN_POKECENTER + db VIRIDIAN_MART + db VIRIDIAN_SCHOOL + db VIRIDIAN_GYM + db MUSEUM_1F + db PEWTER_GYM + db PEWTER_MART + db PEWTER_POKECENTER + db CERULEAN_POKECENTER + db CERULEAN_GYM + db CERULEAN_MART + db LAVENDER_POKECENTER + db VERMILION_POKECENTER + db VERMILION_GYM + db CELADON_MANSION_2 + db CELADON_POKECENTER + db CELADON_GYM + db GAME_CORNER + db CELADON_HOTEL + db FUCHSIA_POKECENTER + db FUCHSIA_GYM + db CINNABAR_GYM + db CINNABAR_POKECENTER + db SAFFRON_GYM + db MT_MOON_POKECENTER + db ROCK_TUNNEL_POKECENTER + db BATTLE_CENTER + db TRADE_CENTER + db VIRIDIAN_FOREST + db MT_MOON_3 + db INDIGO_PLATEAU + db ROUTE_25 + db ROUTE_9 + db SS_ANNE_6 + db SS_ANNE_10 + db ROCKET_HIDEOUT_1 + db ROCKET_HIDEOUT_3 + db ROCKET_HIDEOUT_4 + db SAFFRON_POKECENTER + db POKEMONTOWER_5 + db ROUTE_13 + db SAFARI_ZONE_ENTRANCE + db SAFARI_ZONE_WEST + db SILPH_CO_5F + db SILPH_CO_9F + db COPYCATS_HOUSE_2F + db UNKNOWN_DUNGEON_1 + db UNKNOWN_DUNGEON_3 + db POWER_PLANT + db SEAFOAM_ISLANDS_3 + db SEAFOAM_ISLANDS_5 + db MANSION_1 + db MANSION_3 + db ROUTE_23 + db VICTORY_ROAD_2 + db $6F + db BILLS_HOUSE + db VIRIDIAN_CITY + db SAFARI_ZONE_REST_HOUSE_2 + db SAFARI_ZONE_REST_HOUSE_3 + db SAFARI_ZONE_REST_HOUSE_4 + db $B9 + db LAVENDER_HOUSE_1 + db CELADON_MANSION_5 + db FIGHTING_DOJO + db ROUTE_10 + db INDIGO_PLATEAU_LOBBY + db CINNABAR_LAB_4 + db BIKE_SHOP + db ROUTE_11 + db ROUTE_12 + db MANSION_2 + db MANSION_4 + db SILPH_CO_11F + db ROUTE_17 + db UNDERGROUND_PATH_NS + db UNDERGROUND_PATH_WE + db CELADON_CITY + db SEAFOAM_ISLANDS_4 + db VERMILION_CITY + db CERULEAN_CITY + db ROUTE_4 + db $FF + +HiddenObjectPointers: ; 46a96 (11:6a96) +; each of these pointers is for the corresponding map in HiddenObjectMaps + dw RedsHouse2FHiddenObjects + dw BluesHouseHiddenObjects + dw OaksLabHiddenObjects + dw ViridianPokecenterHiddenObjects + dw ViridianMartHiddenObjects + dw ViridianSchoolHiddenObjects + dw ViridianGymHiddenObjects + dw Museum1FHiddenObjects + dw PewterGymHiddenObjects + dw PewterMartHiddenObjects + dw PewterPokecenterHiddenObjects + dw CeruleanPokecenterHiddenObjects + dw CeruleanGymHiddenObjects + dw CeruleanMartHiddenObjects + dw LavenderPokecenterHiddenObjects + dw VermilionPokecenterHiddenObjects + dw VermilionGymHiddenObjects + dw CeladonMansion2HiddenObjects + dw CeladonPokecenterHiddenObjects + dw CeladonGymHiddenObjects + dw GameCornerHiddenObjects + dw CeladonHotelHiddenObjects + dw FuchsiaPokecenterHiddenObjects + dw FuchsiaGymHiddenObjects + dw CinnabarGymHiddenObjects + dw CinnabarPokecenterHiddenObjects + dw SaffronGymHiddenObjects + dw MtMoonPokecenterHiddenObjects + dw RockTunnelPokecenterHiddenObjects + dw BattleCenterHiddenObjects + dw TradeCenterHiddenObjects + dw ViridianForestHiddenObjects + dw MtMoon3HiddenObjects + dw IndigoPlateauHiddenObjects + dw Route25HiddenObjects + dw Route9HiddenObjects + dw SSAnne6HiddenObjects + dw SSAnne10HiddenObjects + dw RocketHideout1HiddenObjects + dw RocketHideout3HiddenObjects + dw RocketHideout4HiddenObjects + dw SaffronPokecenterHiddenObjects + dw PokemonTower5HiddenObjects + dw Route13HiddenObjects + dw SafariZoneEntranceHiddenObjects + dw SafariZoneWestHiddenObjects + dw SilphCo5FHiddenObjects + dw SilphCo9FHiddenObjects + dw CopycatsHouse2FHiddenObjects + dw UnknownDungeon1HiddenObjects + dw UnknownDungeon3HiddenObjects + dw PowerPlantHiddenObjects + dw SeafoamIslands3HiddenObjects + dw SeafoamIslands5HiddenObjects + dw Mansion1HiddenObjects + dw Mansion3HiddenObjects + dw Route23HiddenObjects + dw VictoryRoad2HiddenObjects + dw Unused6FHiddenObjects + dw BillsHouseHiddenObjects + dw ViridianCityHiddenObjects + dw SafariZoneRestHouse2HiddenObjects + dw SafariZoneRestHouse3HiddenObjects + dw SafariZoneRestHouse4HiddenObjects + dw UnusedB9HiddenObjects + dw LavenderHouse1HiddenObjects + dw CeladonMansion5HiddenObjects + dw FightingDojoHiddenObjects + dw Route10HiddenObjects + dw IndigoPlateauLobbyHiddenObjects + dw CinnabarLab4HiddenObjects + dw BikeShopHiddenObjects + dw Route11HiddenObjects + dw Route12HiddenObjects + dw Mansion2HiddenObjects + dw Mansion4HiddenObjects + dw SilphCo11FHiddenObjects + dw Route17HiddenObjects + dw UndergroundPathNsHiddenObjects + dw UndergroundPathWeHiddenObjects + dw CeladonCityHiddenObjects + dw SeafoamIslands4HiddenObjects + dw VermilionCityHiddenObjects + dw CeruleanCityHiddenObjects + dw Route4HiddenObjects + +BattleCenterHiddenObjects: ; 46b40 (11:6b40) + db $04,$05,$d0 ; XXX, y, x + dbw Bank(Func_21845), Func_21845 + db $04,$04,$d0 ; XXX, y, x + dbw Bank(Func_21825), Func_21825 + db $FF +TradeCenterHiddenObjects: ; 46b4d (11:6b4d) + db $04,$05,$d0 ; XXX, y, x + dbw Bank(Func_21845), Func_21845 + db $04,$04,$d0 ; XXX, y, x + dbw Bank(Func_21825), Func_21825 + db $FF +RedsHouse2FHiddenObjects: ; 46b5a (11:6b5a) + db $01,$00,$04 ; XXX, y, x + dbw Bank(Func_5db86), Func_5db86 + db $05,$03,$d0 ; XXX, y, x + dbw Bank(Func_5db79), Func_5db79 + db $FF +BluesHouseHiddenObjects: ; 46b67 (11:6b67) + db $01,$00,$04 ; XXX, y, x + dbw Bank(Func_62509), Func_62509 + db $01,$01,$04 ; XXX, y, x + dbw Bank(Func_62509), Func_62509 + db $01,$07,$04 ; XXX, y, x + dbw Bank(Func_62509), Func_62509 + db $FF +OaksLabHiddenObjects: ; 46b7a (11:6b7a) + db $00,$04,$04 ; XXX, y, x + dbw Bank(Func_1e958), Func_1e958 + db $00,$05,$04 ; XXX, y, x + dbw Bank(Func_1e965), Func_1e965 + db $01,$00,$04 ; XXX, y, x + dbw Bank(Func_1ecaf), Func_1ecaf + db $01,$01,$04 ; XXX, y, x + dbw Bank(Func_1ecaf), Func_1ecaf + db $FF +ViridianPokecenterHiddenObjects: ; 46b93 (11:6b93) + db $04,$00,$08 ; XXX, y, x + dbw Bank(Func_6245d), Func_6245d + db $03,$0d,$04 ; XXX, y, x + dbw Bank(Func_62516), Func_62516 + db $FF +ViridianMartHiddenObjects: ; 46ba0 (11:6ba0) + db $FF +ViridianSchoolHiddenObjects: ; 46ba1 (11:6ba1) + db $04,$03,$20 ; XXX, y, x + dbw Bank(Func_52996), Func_52996 + db $00,$03,$21 ; XXX, y, x + dbw Bank(Func_5dc1a), Func_5dc1a + db $FF +ViridianGymHiddenObjects: ; 46bae (11:6bae) + db $0f,$0f,$04 ; XXX, y, x + dbw BANK(GymStatues),GymStatues + db $0f,$12,$04 ; XXX, y, x + dbw BANK(GymStatues),GymStatues + db $FF +Museum1FHiddenObjects: ; 46bbb (11:6bbb) + db $03,$02,$04 ; XXX, y, x + dbw Bank(AerodactylFossil), AerodactylFossil + db $06,$02,$04 ; XXX, y, x + dbw Bank(KabutopsFossil), KabutopsFossil + db $FF +PewterGymHiddenObjects: ; 46bc8 (11:6bc8) + db $0a,$03,$04 ; XXX, y, x + dbw BANK(GymStatues),GymStatues + db $0a,$06,$04 ; XXX, y, x + dbw BANK(GymStatues),GymStatues + db $FF +PewterMartHiddenObjects: ; 46bd5 (11:6bd5) + db $FF +PewterPokecenterHiddenObjects: ; 46bd6 (11:6bd6) + db $04,$00,$08 ; XXX, y, x + dbw Bank(Func_6245d), Func_6245d + db $03,$0d,$04 ; XXX, y, x + dbw Bank(Func_62516), Func_62516 + db $FF +CeruleanPokecenterHiddenObjects: ; 46be3 (11:6be3) + db $04,$00,$08 ; XXX, y, x + dbw Bank(Func_6245d), Func_6245d + db $03,$0d,$04 ; XXX, y, x + dbw Bank(Func_62516), Func_62516 + db $FF +CeruleanGymHiddenObjects: ; 46bf0 (11:6bf0) + db $0b,$03,$04 ; XXX, y, x + dbw BANK(GymStatues),GymStatues + db $0b,$06,$04 ; XXX, y, x + dbw BANK(GymStatues),GymStatues + db $FF +CeruleanMartHiddenObjects: ; 46bfd (11:6bfd) + db $FF +LavenderPokecenterHiddenObjects: ; 46bfe (11:6bfe) + db $04,$00,$08 ; XXX, y, x + dbw Bank(Func_6245d), Func_6245d + db $03,$0d,$04 ; XXX, y, x + dbw Bank(Func_62516), Func_62516 + db $FF +VermilionPokecenterHiddenObjects: ; 46c0b (11:6c0b) + db $03,$0d,$04 ; XXX, y, x + dbw Bank(Func_62516), Func_62516 + db $04,$00,$04 ; XXX, y, x + dbw Bank(Func_6245d), Func_6245d + db $FF +VermilionGymHiddenObjects: ; 46c18 (11:6c18) + db $0e,$03,$04 ; XXX, y, x + dbw BANK(GymStatues), GymStatues + db $0e,$06,$04 ; XXX, y, x + dbw BANK(GymStatues), GymStatues + db $01,$06,$00 ; XXX, y, x + dbw Bank(Func_5ddef), Func_5ddef + db $07,$01,$00 ; XXX, y, x + dbw Bank(GymTrashScript), GymTrashScript + db $09,$01,$01 ; XXX, y, x + dbw Bank(GymTrashScript), GymTrashScript + db $0b,$01,$02 ; XXX, y, x + dbw Bank(GymTrashScript), GymTrashScript + db $07,$03,$03 ; XXX, y, x + dbw Bank(GymTrashScript), GymTrashScript + db $09,$03,$04 ; XXX, y, x + dbw Bank(GymTrashScript), GymTrashScript + db $0b,$03,$05 ; XXX, y, x + dbw Bank(GymTrashScript), GymTrashScript + db $07,$05,$06 ; XXX, y, x + dbw Bank(GymTrashScript), GymTrashScript + db $09,$05,$07 ; XXX, y, x + dbw Bank(GymTrashScript), GymTrashScript + db $0b,$05,$08 ; XXX, y, x + dbw Bank(GymTrashScript), GymTrashScript + db $07,$07,$09 ; XXX, y, x + dbw Bank(GymTrashScript), GymTrashScript + db $09,$07,$0a ; XXX, y, x + dbw Bank(GymTrashScript), GymTrashScript + db $0b,$07,$0b ; XXX, y, x + dbw Bank(GymTrashScript), GymTrashScript + db $07,$09,$0c ; XXX, y, x + dbw Bank(GymTrashScript), GymTrashScript + db $09,$09,$0d ; XXX, y, x + dbw Bank(GymTrashScript), GymTrashScript + db $0b,$09,$0e ; XXX, y, x + dbw Bank(GymTrashScript), GymTrashScript + db $FF +CeladonMansion2HiddenObjects: ; 46c85 (11:6c85) + db $05,$00,$04 ; XXX, y, x + dbw Bank(Func_62516), Func_62516 + db $FF +CeladonPokecenterHiddenObjects: ; 46c8c (11:6c8c) + db $04,$00,$08 ; XXX, y, x + dbw Bank(Func_6245d), Func_6245d + db $03,$0d,$04 ; XXX, y, x + dbw Bank(Func_62516), Func_62516 + db $FF +CeladonGymHiddenObjects: ; 46c99 (11:6c99) + db $0f,$03,$04 ; XXX, y, x + dbw BANK(GymStatues),GymStatues + db $0f,$06,$04 ; XXX, y, x + dbw BANK(GymStatues),GymStatues + db $FF +GameCornerHiddenObjects: ; 46ca6 (11:6ca6) + db $0f,$12,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0e,$12,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0d,$12,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0c,$12,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0b,$12,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0a,$12,$ff ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0a,$0d,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0b,$0d,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0c,$0d,$fe ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0d,$0d,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0e,$0d,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0f,$0d,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0f,$0c,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0e,$0c,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0d,$0c,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0c,$0c,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0b,$0c,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0a,$0c,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0a,$07,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0b,$07,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0c,$07,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0d,$07,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0e,$07,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0f,$07,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0f,$06,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0e,$06,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0d,$06,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0c,$06,$fd ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0b,$06,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0a,$06,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0a,$01,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0b,$01,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0c,$01,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0d,$01,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0e,$01,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $0f,$01,$d0 ; XXX, y, x + dbw Bank(Func_37e2d), Func_37e2d + db $08,$00,COIN+10 + dbw BANK(HiddenCoins),HiddenCoins + db $10,$01,COIN+10 + dbw BANK(HiddenCoins),HiddenCoins + db $0b,$03,COIN+20 + dbw BANK(HiddenCoins),HiddenCoins + db $0e,$03,COIN+10 + dbw BANK(HiddenCoins),HiddenCoins + db $0c,$04,COIN+10 + dbw BANK(HiddenCoins),HiddenCoins + db $0c,$09,COIN+20 + dbw BANK(HiddenCoins),HiddenCoins + db $0f,$09,COIN+10 + dbw BANK(HiddenCoins),HiddenCoins + db $0e,$10,COIN+10 + dbw BANK(HiddenCoins),HiddenCoins + db $10,$0a,COIN+10 + dbw BANK(HiddenCoins),HiddenCoins + db $07,$0b,COIN+40 + dbw BANK(HiddenCoins),HiddenCoins + db $08,$0f,COIN+100 + dbw BANK(HiddenCoins),HiddenCoins + db $0f,$0c,COIN+10 + dbw BANK(HiddenCoins),HiddenCoins + db $FF +CeladonHotelHiddenObjects: ; 46dc7 (11:6dc7) + db $03,$0d,$04 ; XXX, y, x + dbw Bank(Func_62516), Func_62516 + db $04,$00,$08 ; XXX, y, x + dbw Bank(Func_6245d), Func_6245d + db $FF +FuchsiaPokecenterHiddenObjects: ; 46dd4 (11:6dd4) + db $03,$0d,$04 ; XXX, y, x + dbw Bank(Func_62516), Func_62516 + db $04,$00,$04 ; XXX, y, x + dbw Bank(Func_6245d), Func_6245d + db $FF +FuchsiaGymHiddenObjects: ; 46de1 (11:6de1) + db $0f,$03,$04 ; XXX, y, x + dbw BANK(GymStatues),GymStatues + db $0f,$06,$04 ; XXX, y, x + dbw BANK(GymStatues),GymStatues + db $FF +CinnabarGymHiddenObjects: ; 46dee (11:6dee) + db $0d,$11,$04 ; XXX, y, x + dbw BANK(GymStatues),GymStatues + db $07,$0f,$01 ; XXX, y, x + dbw Bank(Func_1eaa17), Func_1eaa17 + db $01,$0a,$12 ; XXX, y, x + dbw Bank(Func_1eaa17), Func_1eaa17 + db $07,$09,$13 ; XXX, y, x + dbw Bank(Func_1eaa17), Func_1eaa17 + db $0d,$09,$14 ; XXX, y, x + dbw Bank(Func_1eaa17), Func_1eaa17 + db $0d,$01,$05 ; XXX, y, x + dbw Bank(Func_1eaa17), Func_1eaa17 + db $07,$01,$16 ; XXX, y, x + dbw Bank(Func_1eaa17), Func_1eaa17 + db $FF +CinnabarPokecenterHiddenObjects: ; 46e19 (11:6e19) + db $04,$00,$04 ; XXX, y, x + dbw Bank(Func_6245d), Func_6245d + db $03,$0d,$04 ; XXX, y, x + dbw Bank(Func_62516), Func_62516 + db $FF +SaffronGymHiddenObjects: ; 46e26 (11:6e26) + db $0f,$09,$04 ; XXX, y, x + dbw BANK(GymStatues),GymStatues + db $FF +MtMoonPokecenterHiddenObjects: ; 46e2d (11:6e2d) + db $04,$00,$08 ; XXX, y, x + dbw Bank(Func_6245d), Func_6245d + db $03,$0d,$04 ; XXX, y, x + dbw Bank(Func_62516), Func_62516 + db $FF +RockTunnelPokecenterHiddenObjects: ; 46e3a (11:6e3a) + db $04,$00,$08 ; XXX, y, x + dbw Bank(Func_6245d), Func_6245d + db $03,$0d,$04 ; XXX, y, x + dbw Bank(Func_62516), Func_62516 + db $FF +ViridianForestHiddenObjects: ; 46e47 (11:6e47) + db $12,$01,POTION + dbw BANK(HiddenItems),HiddenItems + db $2a,$10,ANTIDOTE + dbw BANK(HiddenItems),HiddenItems + db $FF +MtMoon3HiddenObjects: ; 46e54 (11:6e54) + db $0c,$12,MOON_STONE + dbw BANK(HiddenItems),HiddenItems + db $09,$21,ETHER + dbw BANK(HiddenItems),HiddenItems + db $FF +IndigoPlateauHiddenObjects: ; 46e61 (11:6e61) + db $0d,$08,$ff ; XXX, y, x + dbw Bank(Func_52a2f), Func_52a2f + db $0d,$0b,$00 ; XXX, y, x + dbw Bank(Func_52a2f), Func_52a2f + db $FF +Route25HiddenObjects: ; 46e6e (11:6e6e) + db $03,$26,ETHER + dbw BANK(HiddenItems),HiddenItems + db $01,$0a,ELIXER + dbw BANK(HiddenItems),HiddenItems + db $FF +Route9HiddenObjects: ; 46e7b (11:6e7b) + db $07,$0e,ETHER + dbw BANK(HiddenItems),HiddenItems + db $FF +SSAnne6HiddenObjects: ; 46e82 (11:6e82) + db $05,$0d,$00 ; XXX, y, x + dbw Bank(Func_5ddef), Func_5ddef + db $07,$0d,$00 ; XXX, y, x + dbw Bank(Func_5ddef), Func_5ddef + db $09,$0d,GREAT_BALL + dbw BANK(HiddenItems),HiddenItems + db $FF +SSAnne10HiddenObjects: ; 46e95 (11:6e95) + db $01,$03,HYPER_POTION + dbw BANK(HiddenItems),HiddenItems + db $FF +Route10HiddenObjects: ; 46e9c (11:6e9c) + db $11,$09,SUPER_POTION + dbw BANK(HiddenItems),HiddenItems + db $35,$10,MAX_ETHER + dbw BANK(HiddenItems),HiddenItems + db $FF +RocketHideout1HiddenObjects: ; 46ea9 (11:6ea9) + db $0f,$15,PP_UP + dbw BANK(HiddenItems),HiddenItems + db $FF +RocketHideout3HiddenObjects: ; 46eb0 (11:6eb0) + db $11,$1b,NUGGET + dbw BANK(HiddenItems),HiddenItems + db $FF +RocketHideout4HiddenObjects: ; 46eb7 (11:6eb7) + db $01,$19,SUPER_POTION + dbw BANK(HiddenItems),HiddenItems + db $FF +SaffronPokecenterHiddenObjects: ; 46ebe (11:6ebe) + db $04,$00,$04 ; XXX, y, x + dbw Bank(Func_6245d), Func_6245d + db $03,$0d,$04 ; XXX, y, x + dbw Bank(Func_62516), Func_62516 + db $FF +PokemonTower5HiddenObjects: ; 46ecb (11:6ecb) + db $0c,$04,ELIXER + dbw BANK(HiddenItems),HiddenItems + db $FF +Route13HiddenObjects: ; 46ed2 (11:6ed2) + db $0e,$01,PP_UP + dbw BANK(HiddenItems),HiddenItems + db $0d,$10,CALCIUM + dbw BANK(HiddenItems),HiddenItems + db $FF +SafariZoneEntranceHiddenObjects: ; 46edf (11:6edf) + db $01,$0a,NUGGET + dbw BANK(HiddenItems),HiddenItems + db $FF +SafariZoneWestHiddenObjects: ; 46ee6 (11:6ee6) + db $05,$06,REVIVE + dbw BANK(HiddenItems),HiddenItems + db $FF +SilphCo5FHiddenObjects: ; 46eed (11:6eed) + db $03,$0c,ELIXER + dbw BANK(HiddenItems),HiddenItems + db $FF +SilphCo9FHiddenObjects: ; 46ef4 (11:6ef4) + db $0f,$02,MAX_POTION + dbw BANK(HiddenItems),HiddenItems + db $FF +CopycatsHouse2FHiddenObjects: ; 46efb (11:6efb) + db $01,$01,NUGGET + dbw BANK(HiddenItems),HiddenItems + db $FF +UnknownDungeon1HiddenObjects: ; 46f02 (11:6f02) + db $0b,$0e,RARE_CANDY + dbw BANK(HiddenItems),HiddenItems + db $FF +UnknownDungeon3HiddenObjects: ; 46f09 (11:6f09) + db $03,$1b,ULTRA_BALL + dbw BANK(HiddenItems),HiddenItems + db $FF +PowerPlantHiddenObjects: ; 46f10 (11:6f10) + db $10,$11,MAX_ELIXER + dbw BANK(HiddenItems),HiddenItems + db $01,$0c,PP_UP + dbw BANK(HiddenItems),HiddenItems + db $FF +SeafoamIslands3HiddenObjects: ; 46f1d (11:6f1d) + db $0f,$0f,NUGGET + dbw BANK(HiddenItems),HiddenItems + db $FF +SeafoamIslands5HiddenObjects: ; 46f24 (11:6f24) + db $11,$19,ULTRA_BALL + dbw BANK(HiddenItems),HiddenItems + db $FF +Mansion1HiddenObjects: ; 46f2b (11:6f2b) + db $10,$08,MOON_STONE + dbw BANK(HiddenItems),HiddenItems + db $05,$02,$04 ; XXX, y, x + dbw BANK(Func_44316),Func_44316 + db $FF +Mansion2HiddenObjects: ; 46f38 (11:6f38) + db $0b,$02,$04 ; XXX, y, x + db Bank(Mansion2Script_52037) + dw Mansion2Script_52037 + db $FF +Mansion3HiddenObjects: ; 46f3f (11:6f3f) + db $09,$01,MAX_REVIVE + dbw BANK(HiddenItems),HiddenItems + db $05,$0a,$04 ; XXX, y, x + dbw Bank(Func_5227a), Func_5227a + db $FF +Mansion4HiddenObjects: ; 46f4c (11:6f4c) + db $09,$01,RARE_CANDY + dbw BANK(HiddenItems),HiddenItems + db $03,$14,$04 ; XXX, y, x + dbw Bank(Func_52420), Func_52420 + db $19,$12,$04 ; XXX, y, x + dbw Bank(Func_52420), Func_52420 + db $FF +Route23HiddenObjects: ; 46f5f (11:6f5f) + db $2c,$09,FULL_RESTORE + dbw BANK(HiddenItems),HiddenItems + db $46,$13,ULTRA_BALL + dbw BANK(HiddenItems),HiddenItems + db $5a,$08,MAX_ETHER + dbw BANK(HiddenItems),HiddenItems + db $FF +VictoryRoad2HiddenObjects: ; 46f72 (11:6f72) + db $02,$05,ULTRA_BALL + dbw BANK(HiddenItems),HiddenItems + db $07,$1a,FULL_RESTORE + dbw BANK(HiddenItems),HiddenItems + db $FF +Unused6FHiddenObjects: ; 46f7f (11:6f7f) + db $0b,$0e,MAX_ELIXER + dbw BANK(HiddenItems),HiddenItems + db $FF +BillsHouseHiddenObjects: ; 46f86 (11:6f86) + db $04,$01,$04 ; XXX, y, x + dbw Bank(Func_1eb6e), Func_1eb6e + db $FF +ViridianCityHiddenObjects: ; 46f8d (11:6f8d) + db $04,$0e,POTION + dbw BANK(HiddenItems),HiddenItems + db $FF +SafariZoneRestHouse2HiddenObjects: ; 46f94 (11:6f94) + db $04,$00,$08 ; XXX, y, x + dbw Bank(Func_6245d), Func_6245d + db $03,$0d,$04 ; XXX, y, x + dbw Bank(Func_62516), Func_62516 + db $FF +SafariZoneRestHouse3HiddenObjects: ; 46fa1 (11:6fa1) + db $04,$00,$08 ; XXX, y, x + dbw Bank(Func_6245d), Func_6245d + db $03,$0d,$04 ; XXX, y, x + dbw Bank(Func_62516), Func_62516 + db $FF +SafariZoneRestHouse4HiddenObjects: ; 46fae (11:6fae) + db $04,$00,$08 ; XXX, y, x + dbw Bank(Func_6245d), Func_6245d + db $03,$0d,$04 ; XXX, y, x + dbw Bank(Func_62516), Func_62516 + db $FF +UnusedB9HiddenObjects: ; 46fbb (11:6fbb) + db $02,$01,$04 ; XXX, y, x + dbw Bank(Func_5db8f), Func_5db8f + db $FF +LavenderHouse1HiddenObjects: ; 46fc2 (11:6fc2) + db $01,$00,$00 ; XXX, y, x + dbw Bank(Func_1eb60), Func_1eb60 + db $01,$01,$00 ; XXX, y, x + dbw Bank(Func_1eb60), Func_1eb60 + db $01,$07,$00 ; XXX, y, x + dbw Bank(Func_1eb60), Func_1eb60 + db $FF +CeladonMansion5HiddenObjects: ; 46fd5 (11:6fd5) + db $00,$03,$34 ; XXX, y, x + dbw Bank(Func_5dc1a), Func_5dc1a + db $00,$04,$34 ; XXX, y, x + dbw Bank(Func_5dc1a), Func_5dc1a + db $04,$03,$35 ; XXX, y, x + dbw Bank(Func_52996), Func_52996 + db $FF +FightingDojoHiddenObjects: ; 46fe8 (11:6fe8) + db $09,$03,$04 ; XXX, y, x + dbw Bank(Func_52a22), Func_52a22 + db $09,$06,$04 ; XXX, y, x + dbw Bank(Func_52a22), Func_52a22 + db $00,$04,$04 ; XXX, y, x + dbw Bank(Func_52a08), Func_52a08 + db $00,$05,$04 ; XXX, y, x + dbw Bank(Func_52a15), Func_52a15 + db $FF +IndigoPlateauLobbyHiddenObjects: ; 47001 (11:7001) + db $07,$0f,$04 ; XXX, y, x + dbw Bank(Func_62516), Func_62516 + db $FF +CinnabarLab4HiddenObjects: ; 47008 (11:7008) + db $04,$00,$04 ; XXX, y, x + dbw Bank(Func_62516), Func_62516 + db $04,$02,$04 ; XXX, y, x + dbw Bank(Func_62516), Func_62516 + db $FF +BikeShopHiddenObjects: ; 47015 (11:7015) + db $00,$01,$d0 ; XXX, y, x + dbw Bank(Func_1e94b), Func_1e94b + db $01,$02,$d0 ; XXX, y, x + dbw Bank(Func_1e94b), Func_1e94b + db $02,$01,$d0 ; XXX, y, x + dbw Bank(Func_1e94b), Func_1e94b + db $02,$03,$d0 ; XXX, y, x + dbw Bank(Func_1e94b), Func_1e94b + db $04,$00,$d0 ; XXX, y, x + dbw Bank(Func_1e94b), Func_1e94b + db $05,$01,$d0 ; XXX, y, x + dbw Bank(Func_1e94b), Func_1e94b + db $FF +Route11HiddenObjects: ; 4703a (11:703a) + db $05,$30,ESCAPE_ROPE + dbw BANK(HiddenItems),HiddenItems + db $FF +Route12HiddenObjects: ; 47041 (11:7041) + db $3f,$02,HYPER_POTION + dbw BANK(HiddenItems),HiddenItems + db $FF +SilphCo11FHiddenObjects: ; 47048 (11:7048) + db $0c,$0a,$04 ; XXX, y, x + dbw Bank(Func_62516), Func_62516 + db $FF +Route17HiddenObjects: ; 4704f (11:704f) + db $0e,$0f,RARE_CANDY + dbw BANK(HiddenItems),HiddenItems + db $2d,$08,FULL_RESTORE + dbw BANK(HiddenItems),HiddenItems + db $48,$11,PP_UP + dbw BANK(HiddenItems),HiddenItems + db $5b,$04,MAX_REVIVE + dbw BANK(HiddenItems),HiddenItems + db $79,$08,MAX_ELIXER + dbw BANK(HiddenItems),HiddenItems + db $FF +UndergroundPathNsHiddenObjects: ; 4706e (11:706e) + db $04,$03,FULL_RESTORE + dbw BANK(HiddenItems),HiddenItems + db $22,$04,X_SPECIAL + dbw BANK(HiddenItems),HiddenItems + db $FF +UndergroundPathWeHiddenObjects: ; 4707b (11:707b) + db $02,$0c,NUGGET + dbw BANK(HiddenItems),HiddenItems + db $05,$15,ELIXER + dbw BANK(HiddenItems),HiddenItems + db $FF +CeladonCityHiddenObjects: ; 47088 (11:7088) + db $0f,$30,PP_UP + dbw BANK(HiddenItems),HiddenItems + db $FF +SeafoamIslands4HiddenObjects: ; 4708f (11:708f) + db $10,$09,MAX_ELIXER + dbw BANK(HiddenItems),HiddenItems + db $FF +VermilionCityHiddenObjects: ; 47096 (11:7096) + db $0b,$0e,MAX_ETHER + dbw BANK(HiddenItems),HiddenItems + db $FF +CeruleanCityHiddenObjects: ; 4709d (11:709d) + db $08,$0f,RARE_CANDY + dbw BANK(HiddenItems),HiddenItems + db $FF +Route4HiddenObjects: ; 470a4 (11:70a4) + db $03,$28,GREAT_BALL + dbw BANK(HiddenItems),HiddenItems + db $FF diff --git a/data/hide_show_data.asm b/data/hide_show_data.asm new file mode 100755 index 00000000..11a5cf5a --- /dev/null +++ b/data/hide_show_data.asm @@ -0,0 +1,577 @@ +; data for default hidden/shown +; objects for each map ($00-$F8) + +; Table of 2-Byte pointers, one pointer per map, +; goes up to Map_F7, ends with $FFFF. +; points to table listing all missable object in the area +MapHSPointers: ; c8f5 (3:48f5) + dw MapHS00 + dw MapHS01 + dw MapHS02 + dw MapHS03 + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHS0A + dw MapHSXX + dw MapHSXX + dw MapHS0D + dw MapHSXX + dw MapHS0F + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHS14 + dw MapHSXX + dw MapHSXX + dw MapHS17 + dw MapHSXX + dw MapHSXX + dw MapHS1A + dw MapHS1B + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHS21 + dw MapHSXX + dw MapHS23 + dw MapHS24 + dw MapHSXX + dw MapHSXX + dw MapHS27 + dw MapHS28 + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHS2D + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHS33 + dw MapHS34 + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHS3B + dw MapHSXX + dw MapHS3D + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHS53 + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHS58 + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHS60 + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHS66 + dw MapHS67 + dw MapHS68 + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHS6C + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHS78 + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHS84 + dw MapHSXX + dw MapHSXX + dw MapHS87 + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHS8F + dw MapHS90 + dw MapHS91 + dw MapHS92 + dw MapHS93 + dw MapHS94 + dw MapHS95 + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHS9B + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHS9F + dw MapHSA0 + dw MapHSA1 + dw MapHSA2 + dw MapHSXX + dw MapHSXX + dw MapHSA5 + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSB1 + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSB5 + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSC0 + dw MapHSXX + dw MapHSC2 + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSC6 + dw MapHSC7 + dw MapHSC8 + dw MapHSC9 + dw MapHSCA + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSCF + dw MapHSD0 + dw MapHSD1 + dw MapHSD2 + dw MapHSD3 + dw MapHSD4 + dw MapHSD5 + dw MapHSD6 + dw MapHSD7 + dw MapHSD8 + dw MapHSD9 + dw MapHSDA + dw MapHSDB + dw MapHSDC + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSE2 + dw MapHSE3 + dw MapHSE4 + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSE9 + dw MapHSEA + dw MapHSEB + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw MapHSF4 + dw MapHSXX + dw MapHSXX + dw MapHSXX + dw $FFFF + +; Structure: +; 3 bytes per object +; [Map_ID][Object_ID][H/S] +; +; Program stops reading when either: +; a) Map_ID = $FF +; b) Map_ID ≠ currentMapID +; +; This Data is loaded into RAM at $D5CE-$D5F?. (W_MISSABLEOBJECTLIST) + +; These constants come from the bytes for Predef functions: +Hide equ $11 +Show equ $15 + +MapHSXX: ; cae7 (3:4ae7) + db $FF,$FF,$FF +MapHS00: ; caea (3:4aea) + db PALLET_TOWN,$01,Hide +MapHS01: ; caed (3:4aed) + db VIRIDIAN_CITY,$05,Show + db VIRIDIAN_CITY,$07,Hide +MapHS02: ; caf3 (3:4af3) + db PEWTER_CITY,$03,Show + db PEWTER_CITY,$05,Show +MapHS03: ; caf9 (3:4af9) + db CERULEAN_CITY,$01,Hide + db CERULEAN_CITY,$02,Show + db CERULEAN_CITY,$06,Hide + db CERULEAN_CITY,$0A,Show + db CERULEAN_CITY,$0B,Show +MapHS0A: ; cb08 (3:4b08) + db SAFFRON_CITY,$01,Show + db SAFFRON_CITY,$02,Show + db SAFFRON_CITY,$03,Show + db SAFFRON_CITY,$04,Show + db SAFFRON_CITY,$05,Show + db SAFFRON_CITY,$06,Show + db SAFFRON_CITY,$07,Show + db SAFFRON_CITY,$08,Hide + db SAFFRON_CITY,$09,Hide + db SAFFRON_CITY,$0A,Hide + db SAFFRON_CITY,$0B,Hide + db SAFFRON_CITY,$0C,Hide + db SAFFRON_CITY,$0D,Hide + db SAFFRON_CITY,$0E,Show + db SAFFRON_CITY,$0F,Hide +MapHS0D: ; cb35 (3:4b35) + db ROUTE_2,$01,Show + db ROUTE_2,$02,Show +MapHS0F: ; cb3b (3:4b3b) + db ROUTE_4,$03,Show +MapHS14: ; cb3e (3:4b3e) + db ROUTE_9,$0A,Show +MapHS17: ; cb41 (3:4b41) + db ROUTE_12,$01,Show + db ROUTE_12,$09,Show + db ROUTE_12,$0A,Show +MapHS1A: ; cb4a (3:4b4a) + db ROUTE_15,$0B,Show +MapHS1B: ; cb4d (3:4b4d) + db ROUTE_16,$07,Show +MapHS21: ; cb50 (3:4b50) + db ROUTE_22,$01,Hide + db ROUTE_22,$02,Hide +MapHS23: ; cb56 (3:4b56) + db ROUTE_24,$01,Show + db ROUTE_24,$08,Show +MapHS24: ; cb5c (3:4b5c) + db ROUTE_25,$0A,Show +MapHS27: ; cb5f (3:4b5f) + db BLUES_HOUSE,$01,Show + db BLUES_HOUSE,$02,Hide + db BLUES_HOUSE,$03,Show +MapHS28: ; cb68 (3:4b68) + db OAKS_LAB,$01,Show + db OAKS_LAB,$02,Show + db OAKS_LAB,$03,Show + db OAKS_LAB,$04,Show + db OAKS_LAB,$05,Hide + db OAKS_LAB,$06,Show + db OAKS_LAB,$07,Show + db OAKS_LAB,$08,Hide +MapHS2D: ; cb80 (3:4b80) + db VIRIDIAN_GYM,$01,Show + db VIRIDIAN_GYM,$0B,Show +MapHS34: ; cb86 (3:4b86) + db MUSEUM_1F,$05,Show +MapHSE4: ; cb89 (3:4b89) + db UNKNOWN_DUNGEON_1,$01,Show + db UNKNOWN_DUNGEON_1,$02,Show + db UNKNOWN_DUNGEON_1,$03,Show +MapHS8F: ; cb92 (3:4b92) + db POKEMONTOWER_2,$01,Show +MapHS90: ; cb95 (3:4b95) + db POKEMONTOWER_3,$04,Show +MapHS91: ; cb98 (3:4b98) + db POKEMONTOWER_4,$04,Show + db POKEMONTOWER_4,$05,Show + db POKEMONTOWER_4,$06,Show +MapHS92: ; cba1 (3:4ba1) + db POKEMONTOWER_5,$06,Show +MapHS93: ; cba4 (3:4ba4) + db POKEMONTOWER_6,$04,Show + db POKEMONTOWER_6,$05,Show +MapHS94: ; cbaa (3:4baa) + db POKEMONTOWER_7,$01,Show + db POKEMONTOWER_7,$02,Show + db POKEMONTOWER_7,$03,Show + db POKEMONTOWER_7,$04,Show +MapHS95: ; cbb6 (3:4bb6) + db LAVENDER_HOUSE_1,$05,Hide +MapHS84: ; cbb9 (3:4bb9) + db CELADON_MANSION_5,$02,Show +MapHS87: ; cbbc (3:4bbc) + db GAME_CORNER,$0B,Show +MapHS9B: ; cbbf (3:4bbf) + db FUCHSIA_HOUSE_2,$02,Show +MapHSA5: ; cbc2 (3:4bc2) + db MANSION_1,$02,Show + db MANSION_1,$03,Show +MapHSB1: ; cbc8 (3:4bc8) + db FIGHTING_DOJO,$06,Show + db FIGHTING_DOJO,$07,Show +MapHSB5: ; cbce (3:4bce) + db SILPH_CO_1F,$01,Hide +MapHS53: ; cbd1 (3:4bd1) + db POWER_PLANT,$01,Show + db POWER_PLANT,$02,Show + db POWER_PLANT,$03,Show + db POWER_PLANT,$04,Show + db POWER_PLANT,$05,Show + db POWER_PLANT,$06,Show + db POWER_PLANT,$07,Show + db POWER_PLANT,$08,Show + db POWER_PLANT,$09,Show + db POWER_PLANT,$0A,Show + db POWER_PLANT,$0B,Show + db POWER_PLANT,$0C,Show + db POWER_PLANT,$0D,Show + db POWER_PLANT,$0E,Show +MapHSC2: ; cbfb (3:4bfb) + db VICTORY_ROAD_2,$06,Show + db VICTORY_ROAD_2,$07,Show + db VICTORY_ROAD_2,$08,Show + db VICTORY_ROAD_2,$09,Show + db VICTORY_ROAD_2,$0A,Show + db VICTORY_ROAD_2,$0D,Show +MapHS58: ; cc0d (3:4c0d) + db BILLS_HOUSE,$01,Show + db BILLS_HOUSE,$02,Hide + db BILLS_HOUSE,$03,Hide +MapHS33: ; cc16 (3:4c16) + db VIRIDIAN_FOREST,$05,Show + db VIRIDIAN_FOREST,$06,Show + db VIRIDIAN_FOREST,$07,Show +MapHS3B: ; cc1f (3:4c1f) + db MT_MOON_1,$08,Show + db MT_MOON_1,$09,Show + db MT_MOON_1,$0A,Show + db MT_MOON_1,$0B,Show + db MT_MOON_1,$0C,Show + db MT_MOON_1,$0D,Show +MapHS3D: ; cc31 (3:4c31) + db MT_MOON_3,$06,Show + db MT_MOON_3,$07,Show + db MT_MOON_3,$08,Show + db MT_MOON_3,$09,Show +MapHS60: ; cc3d (3:4c3d) + db SS_ANNE_2,$02,Hide +MapHS66: ; cc40 (3:4c40) + db SS_ANNE_8,$0A,Show +MapHS67: ; cc43 (3:4c43) + db SS_ANNE_9,$06,Show + db SS_ANNE_9,$09,Show +MapHS68: ; cc49 (3:4c49) + db SS_ANNE_10,$09,Show + db SS_ANNE_10,$0A,Show + db SS_ANNE_10,$0B,Show +MapHSC6: ; cc52 (3:4c52) + db VICTORY_ROAD_3,$05,Show + db VICTORY_ROAD_3,$06,Show + db VICTORY_ROAD_3,$0A,Show +MapHSC7: ; cc5b (3:4c5b) + db ROCKET_HIDEOUT_1,$06,Show + db ROCKET_HIDEOUT_1,$07,Show +MapHSC8: ; cc61 (3:4c61) + db ROCKET_HIDEOUT_2,$02,Show + db ROCKET_HIDEOUT_2,$03,Show + db ROCKET_HIDEOUT_2,$04,Show + db ROCKET_HIDEOUT_2,$05,Show +MapHSC9: ; cc6d (3:4c6d) + db ROCKET_HIDEOUT_3,$03,Show + db ROCKET_HIDEOUT_3,$04,Show +MapHSCA: ; cc73 (3:4c73) + db ROCKET_HIDEOUT_4,$01,Show + db ROCKET_HIDEOUT_4,$05,Show + db ROCKET_HIDEOUT_4,$06,Show + db ROCKET_HIDEOUT_4,$07,Show + db ROCKET_HIDEOUT_4,$08,Hide + db ROCKET_HIDEOUT_4,$09,Hide +MapHSCF: ; cc85 (3:4c85) + db SILPH_CO_2F,$01,Show + db SILPH_CO_2F,$02,Show + db SILPH_CO_2F,$03,Show + db SILPH_CO_2F,$04,Show + db SILPH_CO_2F,$05,Show +MapHSD0: ; cc94 (3:4c94) + db SILPH_CO_3F,$02,Show + db SILPH_CO_3F,$03,Show + db SILPH_CO_3F,$04,Show +MapHSD1: ; cc9d (3:4c9d) + db SILPH_CO_4F,$02,Show + db SILPH_CO_4F,$03,Show + db SILPH_CO_4F,$04,Show + db SILPH_CO_4F,$05,Show + db SILPH_CO_4F,$06,Show + db SILPH_CO_4F,$07,Show +MapHSD2: ; ccaf (3:4caf) + db SILPH_CO_5F,$02,Show + db SILPH_CO_5F,$03,Show + db SILPH_CO_5F,$04,Show + db SILPH_CO_5F,$05,Show + db SILPH_CO_5F,$06,Show + db SILPH_CO_5F,$07,Show + db SILPH_CO_5F,$08,Show +MapHSD3: ; ccc4 (3:4cc4) + db SILPH_CO_6F,$06,Show + db SILPH_CO_6F,$07,Show + db SILPH_CO_6F,$08,Show + db SILPH_CO_6F,$09,Show + db SILPH_CO_6F,$0A,Show +MapHSD4: ; ccd3 (3:4cd3) + db SILPH_CO_7F,$05,Show + db SILPH_CO_7F,$06,Show + db SILPH_CO_7F,$07,Show + db SILPH_CO_7F,$08,Show + db SILPH_CO_7F,$09,Show + db SILPH_CO_7F,$0A,Show + db SILPH_CO_7F,$0B,Show + db SILPH_CO_7F,$0C,Show +MapHSD5: ; cceb (3:4ceb) + db SILPH_CO_8F,$02,Show + db SILPH_CO_8F,$03,Show + db SILPH_CO_8F,$04,Show +MapHSE9: ; ccf4 (3:4cf4) + db SILPH_CO_9F,$02,Show + db SILPH_CO_9F,$03,Show + db SILPH_CO_9F,$04,Show +MapHSEA: ; ccfd (3:4cfd) + db SILPH_CO_10F,$01,Show + db SILPH_CO_10F,$02,Show + db SILPH_CO_10F,$03,Show + db SILPH_CO_10F,$04,Show + db SILPH_CO_10F,$05,Show + db SILPH_CO_10F,$06,Show +MapHSEB: ; cd0f (3:4d0f) + db SILPH_CO_11F,$03,Show + db SILPH_CO_11F,$04,Show + db SILPH_CO_11F,$05,Show +MapHSF4: ; cd18 (3:4d18) + db $F4,$02,Show +MapHSD6: ; cd1b (3:4d1b) + db MANSION_2,$02,Show +MapHSD7: ; cd1e (3:4d1e) + db MANSION_3,$03,Show + db MANSION_3,$04,Show +MapHSD8: ; cd24 (3:4d24) + db MANSION_4,$03,Show + db MANSION_4,$04,Show + db MANSION_4,$05,Show + db MANSION_4,$06,Show + db MANSION_4,$08,Show +MapHSD9: ; cd33 (3:4d33) + db SAFARI_ZONE_EAST,$01,Show + db SAFARI_ZONE_EAST,$02,Show + db SAFARI_ZONE_EAST,$03,Show + db SAFARI_ZONE_EAST,$04,Show +MapHSDA: ; cd3f (3:4d3f) + db SAFARI_ZONE_NORTH,$01,Show + db SAFARI_ZONE_NORTH,$02,Show +MapHSDB: ; cd45 (3:4d45) + db SAFARI_ZONE_WEST,$01,Show + db SAFARI_ZONE_WEST,$02,Show + db SAFARI_ZONE_WEST,$03,Show + db SAFARI_ZONE_WEST,$04,Show +MapHSDC: ; cd51 (3:4d51) + db SAFARI_ZONE_CENTER,$01,Show +MapHSE2: ; cd54 (3:4d54) + db UNKNOWN_DUNGEON_2,$01,Show + db UNKNOWN_DUNGEON_2,$02,Show + db UNKNOWN_DUNGEON_2,$03,Show +MapHSE3: ; cd5d (3:4d5d) + db UNKNOWN_DUNGEON_3,$01,Show + db UNKNOWN_DUNGEON_3,$02,Show + db UNKNOWN_DUNGEON_3,$03,Show +MapHS6C: ; cd66 (3:4d66) + db VICTORY_ROAD_1,$03,Show + db VICTORY_ROAD_1,$04,Show +MapHS78: ; cd6c (3:4d6c) + db CHAMPIONS_ROOM,$02,Hide +MapHSC0: ; cd6f (3:4d6f) + db SEAFOAM_ISLANDS_1,$01,Show + db SEAFOAM_ISLANDS_1,$02,Show +MapHS9F: ; cd75 (3:4d75) + db SEAFOAM_ISLANDS_2,$01,Hide + db SEAFOAM_ISLANDS_2,$02,Hide +MapHSA0: ; cd7b (3:4d7b) + db SEAFOAM_ISLANDS_3,$01,Hide + db SEAFOAM_ISLANDS_3,$02,Hide +MapHSA1: ; cd81 (3:4d81) + db SEAFOAM_ISLANDS_4,$02,Show + db SEAFOAM_ISLANDS_4,$03,Show + db SEAFOAM_ISLANDS_4,$05,Hide + db SEAFOAM_ISLANDS_4,$06,Hide +MapHSA2: ; cd8d (3:4d8d) + db SEAFOAM_ISLANDS_5,$01,Hide + db SEAFOAM_ISLANDS_5,$02,Hide + db SEAFOAM_ISLANDS_5,$03,Show + + db $FF,$01,Show diff --git a/data/item_prices.asm b/data/item_prices.asm new file mode 100755 index 00000000..45537ded --- /dev/null +++ b/data/item_prices.asm @@ -0,0 +1,98 @@ +ItemPrices: ; 4608 (1:4608) + db $00,$00,$00 + db $00,$12,$00 + db $00,$06,$00 + db $00,$02,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$10,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$01,$00 + db $00,$02,$50 + db $00,$02,$50 + db $00,$02,$00 + db $00,$02,$00 + db $00,$30,$00 + db $00,$25,$00 + db $00,$15,$00 + db $00,$07,$00 + db $00,$03,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$05,$50 + db $00,$03,$50 + db $00,$00,$00 + db $00,$21,$00 + db $00,$21,$00 + db $00,$21,$00 + db $00,$98,$00 + db $00,$98,$00 + db $00,$98,$00 + db $00,$98,$00 + db $00,$98,$00 + db $00,$48,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$09,$50 + db $00,$21,$00 + db $00,$00,$00 + db $01,$00,$00 + db $00,$98,$00 + db $00,$10,$00 + db $00,$06,$00 + db $00,$15,$00 + db $00,$40,$00 + db $00,$07,$00 + db $00,$05,$00 + db $00,$07,$00 + db $00,$06,$50 + db $00,$00,$10 + db $00,$02,$00 + db $00,$03,$00 + db $00,$03,$50 + db $00,$00,$00 + db $00,$00,$00 + db $00,$05,$00 + db $00,$05,$50 + db $00,$03,$50 + db $00,$03,$50 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 + db $00,$00,$00 diff --git a/data/key_items.asm b/data/key_items.asm new file mode 100755 index 00000000..9e2d16fe --- /dev/null +++ b/data/key_items.asm @@ -0,0 +1,12 @@ +KeyItemBitfield: ; e799 (3:6799) + db %11110000 + db %00000001 + db %11110000 + db %01001111 + db %00000000 + db %10011111 + db %00000000 + db %11000000 + db %11110000 + db %00111011 + db %00000000 diff --git a/data/mapHeaders/agatha.asm b/data/mapHeaders/agatha.asm new file mode 100755 index 00000000..dcfe0231 --- /dev/null +++ b/data/mapHeaders/agatha.asm @@ -0,0 +1,6 @@ +Agatha_h: ; 0x76421 to 0x7642d (12 bytes) (id=247) + db CEMETERY ; tileset + db AGATHAS_ROOM_HEIGHT, AGATHAS_ROOM_WIDTH ; dimensions (y, x) + dw AgathaBlocks, AgathaTextPointers, AgathaScript ; blocks, texts, scripts + db $00 ; connections + dw AgathaObject ; objects diff --git a/data/mapHeaders/battlecenterm.asm b/data/mapHeaders/battlecenterm.asm new file mode 100755 index 00000000..984f7e38 --- /dev/null +++ b/data/mapHeaders/battlecenterm.asm @@ -0,0 +1,6 @@ +BattleCenterM_h: ; 0x4fd04 to 0x4fd10 (12 bytes) (id=239) + db CLUB ; tileset + db BATTLE_CENTER_HEIGHT, BATTLE_CENTER_WIDTH ; dimensions (y, x) + dw BattleCenterMBlocks, BattleCenterMTextPointers, BattleCenterMScript ; blocks, texts, scripts + db $00 ; connections + dw BattleCenterMObject ; objects diff --git a/data/mapHeaders/bikeshop.asm b/data/mapHeaders/bikeshop.asm new file mode 100755 index 00000000..958e9fd4 --- /dev/null +++ b/data/mapHeaders/bikeshop.asm @@ -0,0 +1,6 @@ +BikeShop_h: ; 0x1d730 to 0x1d73c (12 bytes) (bank=7) (id=66) + db CLUB ; tileset + db BIKE_SHOP_HEIGHT, BIKE_SHOP_WIDTH ; dimensions (y, x) + dw BikeShopBlocks, BikeShopTextPointers, BikeShopScript ; blocks, texts, scripts + db $00 ; connections + dw BikeShopObject ; objects diff --git a/data/mapHeaders/billshouse.asm b/data/mapHeaders/billshouse.asm new file mode 100755 index 00000000..5218c5f3 --- /dev/null +++ b/data/mapHeaders/billshouse.asm @@ -0,0 +1,6 @@ +BillsHouse_h: ; 0x1e75e to 0x1e76a (12 bytes) (bank=7) (id=88) + db INTERIOR ; tileset + db BILLS_HOUSE_HEIGHT, BILLS_HOUSE_WIDTH ; dimensions (y, x) + dw BillsHouseBlocks, BillsHouseTextPointers, BillsHouseScript ; blocks, texts, scripts + db $00 ; connections + dw BillsHouseObject ; objects diff --git a/data/mapHeaders/blueshouse.asm b/data/mapHeaders/blueshouse.asm new file mode 100755 index 00000000..24564da5 --- /dev/null +++ b/data/mapHeaders/blueshouse.asm @@ -0,0 +1,6 @@ +BluesHouse_h: ; 0x19b2f id=39 + db HOUSE ; tileset + db BLUES_HOUSE_HEIGHT, BLUES_HOUSE_WIDTH ; dimensions + dw BluesHouseBlocks, BluesHouseTextPointers, BluesHouseScript + db 0 + dw BluesHouseObject diff --git a/data/mapHeaders/bruno.asm b/data/mapHeaders/bruno.asm new file mode 100755 index 00000000..19536501 --- /dev/null +++ b/data/mapHeaders/bruno.asm @@ -0,0 +1,6 @@ +Bruno_h: ; 0x762ca to 0x762d6 (12 bytes) (id=246) + db GYM ; tileset + db BRUNOS_ROOM_HEIGHT, BRUNOS_ROOM_WIDTH ; dimensions (y, x) + dw BrunoBlocks, BrunoTextPointers, BrunoScript ; blocks, texts, scripts + db $00 ; connections + dw BrunoObject ; objects diff --git a/data/mapHeaders/celadoncity.asm b/data/mapHeaders/celadoncity.asm new file mode 100755 index 00000000..12a1731a --- /dev/null +++ b/data/mapHeaders/celadoncity.asm @@ -0,0 +1,8 @@ +CeladonCity_h: ; 18000 (6:4000) + db OVERWORLD ; tileset + db CELADON_CITY_HEIGHT, CELADON_CITY_WIDTH ; dimensions (y, x) + dw CeladonCityBlocks, CeladonCityTextPointers, CeladonCityScript ; blocks, texts, scripts + db WEST | EAST ; connections + WEST_MAP_CONNECTION ROUTE_16, ROUTE_16_WIDTH, 4, 0, ROUTE_16_HEIGHT, Route16Blocks, CELADON_CITY_WIDTH + EAST_MAP_CONNECTION ROUTE_7, ROUTE_7_WIDTH, 4, 0, ROUTE_7_HEIGHT, Route7Blocks, CELADON_CITY_WIDTH + dw CeladonCityObject ; objects diff --git a/data/mapHeaders/celadondiner.asm b/data/mapHeaders/celadondiner.asm new file mode 100755 index 00000000..cc2b6075 --- /dev/null +++ b/data/mapHeaders/celadondiner.asm @@ -0,0 +1,6 @@ +CeladonDiner_h: ; 0x49145 to 0x49151 (12 bytes) (bank=12) (id=138) + db LOBBY ; tileset + db CELADON_DINER_HEIGHT, CELADON_DINER_WIDTH ; dimensions (y, x) + dw CeladonDinerBlocks, CeladonDinerTextPointers, CeladonDinerScript ; blocks, texts, scripts + db $00 ; connections + dw CeladonDinerObject ; objects diff --git a/data/mapHeaders/celadongamecorner.asm b/data/mapHeaders/celadongamecorner.asm new file mode 100755 index 00000000..f211b930 --- /dev/null +++ b/data/mapHeaders/celadongamecorner.asm @@ -0,0 +1,6 @@ +CeladonGameCorner_h: ; 0x48bb1 to 0x48bbd (12 bytes) (bank=12) (id=135) + db LOBBY ; tileset + db GAME_CORNER_HEIGHT, GAME_CORNER_WIDTH ; dimensions (y, x) + dw CeladonGameCornerBlocks, CeladonGameCornerTextPointers, CeladonGameCornerScript ; blocks, texts, scripts + db $00 ; connections + dw CeladonGameCornerObject ; objects diff --git a/data/mapHeaders/celadongym.asm b/data/mapHeaders/celadongym.asm new file mode 100755 index 00000000..b54aa76c --- /dev/null +++ b/data/mapHeaders/celadongym.asm @@ -0,0 +1,6 @@ +CeladonGym_h: ; 0x488fe to 0x4890a (12 bytes) (bank=12) (id=134) + db GYM ; tileset + db CELADON_GYM_HEIGHT, CELADON_GYM_WIDTH ; dimensions (y, x) + dw CeladonGymBlocks, CeladonGymTextPointers, CeladonGymScript ; blocks, texts, scripts + db $00 ; connections + dw CeladonGymObject ; objects diff --git a/data/mapHeaders/celadonhotel.asm b/data/mapHeaders/celadonhotel.asm new file mode 100755 index 00000000..6bb908fb --- /dev/null +++ b/data/mapHeaders/celadonhotel.asm @@ -0,0 +1,6 @@ +CeladonHotel_h: ; 0x4925d to 0x49269 (12 bytes) (bank=12) (id=140) + db POKECENTER ; tileset + db CELADON_HOTEL_HEIGHT, CELADON_HOTEL_WIDTH ; dimensions (y, x) + dw CeladonHotelBlocks, CeladonHotelTextPointers, CeladonHotelScript ; blocks, texts, scripts + db $00 ; connections + dw CeladonHotelObject ; objects diff --git a/data/mapHeaders/celadonhouse.asm b/data/mapHeaders/celadonhouse.asm new file mode 100755 index 00000000..fee3fa15 --- /dev/null +++ b/data/mapHeaders/celadonhouse.asm @@ -0,0 +1,6 @@ +CeladonHouse_h: ; 0x49202 to 0x4920e (12 bytes) (bank=12) (id=139) + db MANSION ; tileset + db CELADON_HOUSE_HEIGHT, CELADON_HOUSE_WIDTH ; dimensions (y, x) + dw CeladonHouseBlocks, CeladonHouseTextPointers, CeladonHouseScript ; blocks, texts, scripts + db $00 ; connections + dw CeladonHouseObject ; objects diff --git a/data/mapHeaders/celadonmansion1.asm b/data/mapHeaders/celadonmansion1.asm new file mode 100755 index 00000000..8b2d9856 --- /dev/null +++ b/data/mapHeaders/celadonmansion1.asm @@ -0,0 +1,6 @@ +CeladonMansion1_h: ; 0x48688 to 0x48694 (12 bytes) (bank=12) (id=128) + db MANSION ; tileset + db CELADON_MANSION_1_HEIGHT, CELADON_MANSION_1_WIDTH ; dimensions (y, x) + dw CeladonMansion1Blocks, CeladonMansion1TextPointers, CeladonMansion1Script ; blocks, texts, scripts + db $00 ; connections + dw CeladonMansion1Object ; objects diff --git a/data/mapHeaders/celadonmansion2.asm b/data/mapHeaders/celadonmansion2.asm new file mode 100755 index 00000000..e5afd96e --- /dev/null +++ b/data/mapHeaders/celadonmansion2.asm @@ -0,0 +1,6 @@ +CeladonMansion2_h: ; 0x4872e to 0x4873a (12 bytes) (bank=12) (id=129) + db MANSION ; tileset + db CELADON_MANSION_2_HEIGHT, CELADON_MANSION_2_WIDTH ; dimensions (y, x) + dw CeladonMansion2Blocks, CeladonMansion2TextPointers, CeladonMansion2Script ; blocks, texts, scripts + db $00 ; connections + dw CeladonMansion2Object ; objects diff --git a/data/mapHeaders/celadonmansion3.asm b/data/mapHeaders/celadonmansion3.asm new file mode 100755 index 00000000..8b290e42 --- /dev/null +++ b/data/mapHeaders/celadonmansion3.asm @@ -0,0 +1,6 @@ +CeladonMansion3_h: ; 0x48784 to 0x48790 (12 bytes) (bank=12) (id=130) + db MANSION ; tileset + db CELADON_MANSION_3_HEIGHT, CELADON_MANSION_3_WIDTH ; dimensions (y, x) + dw CeladonMansion3Blocks, CeladonMansion3TextPointers, CeladonMansion3Script ; blocks, texts, scripts + db $00 ; connections + dw CeladonMansion3Object ; objects diff --git a/data/mapHeaders/celadonmansion4.asm b/data/mapHeaders/celadonmansion4.asm new file mode 100755 index 00000000..e7277d66 --- /dev/null +++ b/data/mapHeaders/celadonmansion4.asm @@ -0,0 +1,6 @@ +CeladonMansion4_h: ; 0x4885f to 0x4886b (12 bytes) (bank=12) (id=131) + db MANSION ; tileset + db CELADON_MANSION_4_HEIGHT, CELADON_MANSION_4_WIDTH ; dimensions (y, x) + dw CeladonMansion4Blocks, CeladonMansion4TextPointers, CeladonMansion4Script ; blocks, texts, scripts + db $00 ; connections + dw CeladonMansion4Object ; objects diff --git a/data/mapHeaders/celadonmansion5.asm b/data/mapHeaders/celadonmansion5.asm new file mode 100755 index 00000000..06c5ce09 --- /dev/null +++ b/data/mapHeaders/celadonmansion5.asm @@ -0,0 +1,6 @@ +CeladonMansion5_h: ; 0x1dd2e to 0x1dd3a (12 bytes) (bank=7) (id=132) + db HOUSE ; tileset + db CELADON_MANSION_5_HEIGHT, CELADON_MANSION_5_WIDTH ; dimensions (y, x) + dw CeladonMansion5Blocks, CeladonMansion5TextPointers, CeladonMansion5Script ; blocks, texts, scripts + db $00 ; connections + dw CeladonMansion5Object ; objects diff --git a/data/mapHeaders/celadonmart1.asm b/data/mapHeaders/celadonmart1.asm new file mode 100755 index 00000000..2a5dc6ad --- /dev/null +++ b/data/mapHeaders/celadonmart1.asm @@ -0,0 +1,6 @@ +CeladonMart1_h: ; 0x60f7a to 0x60f86 (12 bytes) (id=122) + db LOBBY ; tileset + db CELADON_MART_1_HEIGHT, CELADON_MART_1_WIDTH ; dimensions (y, x) + dw CeladonMart1Blocks, CeladonMart1TextPointers, CeladonMart1Script ; blocks, texts, scripts + db $00 ; connections + dw CeladonMart1Object ; objects diff --git a/data/mapHeaders/celadonmart2.asm b/data/mapHeaders/celadonmart2.asm new file mode 100755 index 00000000..9bcd63bf --- /dev/null +++ b/data/mapHeaders/celadonmart2.asm @@ -0,0 +1,6 @@ +CeladonMart2_h: ; 0x560e9 to 0x560f5 (12 bytes) (id=123) + db LOBBY ; tileset + db CELADON_MART_2_HEIGHT, CELADON_MART_2_WIDTH ; dimensions (y, x) + dw CeladonMart2Blocks, CeladonMart2TextPointers, CeladonMart2Script ; blocks, texts, scripts + db $00 ; connections + dw CeladonMart2Object ; objects diff --git a/data/mapHeaders/celadonmart3.asm b/data/mapHeaders/celadonmart3.asm new file mode 100755 index 00000000..bb847159 --- /dev/null +++ b/data/mapHeaders/celadonmart3.asm @@ -0,0 +1,6 @@ +CeladonMart3_h: ; 0x48219 to 0x48225 (12 bytes) (bank=12) (id=124) + db LOBBY ; tileset + db CELADON_MART_3_HEIGHT, CELADON_MART_3_WIDTH ; dimensions (y, x) + dw CeladonMart3Blocks, CeladonMart3TextPointers, CeladonMart3Script ; blocks, texts, scripts + db $00 ; connections + dw CeladonMart3Object ; objects diff --git a/data/mapHeaders/celadonmart4.asm b/data/mapHeaders/celadonmart4.asm new file mode 100755 index 00000000..12e7cc12 --- /dev/null +++ b/data/mapHeaders/celadonmart4.asm @@ -0,0 +1,6 @@ +CeladonMart4_h: ; 0x4834a to 0x48356 (12 bytes) (bank=12) (id=125) + db LOBBY ; tileset + db CELADON_MART_4_HEIGHT, CELADON_MART_4_WIDTH ; dimensions (y, x) + dw CeladonMart4Blocks, CeladonMart4TextPointers, CeladonMart4Script ; blocks, texts, scripts + db $00 ; connections + dw CeladonMart4Object ; objects diff --git a/data/mapHeaders/celadonmart5.asm b/data/mapHeaders/celadonmart5.asm new file mode 100755 index 00000000..c16207ca --- /dev/null +++ b/data/mapHeaders/celadonmart5.asm @@ -0,0 +1,6 @@ +CeladonMart5_h: ; 0x4905d to 0x49069 (12 bytes) (bank=12) (id=136) + db LOBBY ; tileset + db CELADON_MART_5_HEIGHT, CELADON_MART_5_WIDTH ; dimensions (y, x) + dw CeladonMart5Blocks, CeladonMart5TextPointers, CeladonMart5Script ; blocks, texts, scripts + db $00 ; connections + dw CeladonMart5Object ; objects diff --git a/data/mapHeaders/celadonmartelevator.asm b/data/mapHeaders/celadonmartelevator.asm new file mode 100755 index 00000000..1e51a262 --- /dev/null +++ b/data/mapHeaders/celadonmartelevator.asm @@ -0,0 +1,6 @@ +CeladonMartElevator_h: ; 0x485f4 to 0x48600 (12 bytes) (bank=12) (id=127) + db LOBBY ; tileset + db CELADON_MART_ELEVATOR_HEIGHT, CELADON_MART_ELEVATOR_WIDTH ; dimensions (y, x) + dw CeladonMartElevatorBlocks, CeladonMartElevatorTextPointers, CeladonMartElevatorScript ; blocks, texts, scripts + db $00 ; connections + dw CeladonMartElevatorObject ; objects diff --git a/data/mapHeaders/celadonmartroof.asm b/data/mapHeaders/celadonmartroof.asm new file mode 100755 index 00000000..9654ef3d --- /dev/null +++ b/data/mapHeaders/celadonmartroof.asm @@ -0,0 +1,6 @@ +CeladonMartRoof_h: ; 0x483c9 to 0x483d5 (12 bytes) (bank=12) (id=126) + db LOBBY ; tileset + db CELADON_MART_ROOF_HEIGHT, CELADON_MART_ROOF_WIDTH ; dimensions (y, x) + dw CeladonMartRoofBlocks, CeladonMartRoofTextPointers, CeladonMartRoofScript ; blocks, texts, scripts + db $00 ; connections + dw CeladonMartRoofObject ; objects diff --git a/data/mapHeaders/celadonpokecenter.asm b/data/mapHeaders/celadonpokecenter.asm new file mode 100755 index 00000000..e2164223 --- /dev/null +++ b/data/mapHeaders/celadonpokecenter.asm @@ -0,0 +1,6 @@ +CeladonPokecenter_h: ; 0x488ac to 0x488b8 (12 bytes) (bank=12) (id=133) + db POKECENTER ; tileset + db CELADON_POKECENTER_HEIGHT, CELADON_POKECENTER_WIDTH ; dimensions (y, x) + dw CeladonPokecenterBlocks, CeladonPokecenterTextPointers, CeladonPokecenterScript ; blocks, texts, scripts + db $00 ; connections + dw CeladonPokecenterObject ; objects diff --git a/data/mapHeaders/celadonprizeroom.asm b/data/mapHeaders/celadonprizeroom.asm new file mode 100755 index 00000000..96951df0 --- /dev/null +++ b/data/mapHeaders/celadonprizeroom.asm @@ -0,0 +1,6 @@ +CeladonPrizeRoom_h: ; 0x490e4 to 0x490f0 (12 bytes) (bank=12) (id=137) + db LOBBY ; tileset + db CELADON_PRIZE_ROOM_HEIGHT, CELADON_PRIZE_ROOM_WIDTH ; dimensions (y, x) + dw CeladonPrizeRoomBlocks, CeladonPrizeRoomTextPointers, CeladonPrizeRoomScript ; blocks, texts, scripts + db $00 ; connections + dw CeladonPrizeRoomObject ; objects diff --git a/data/mapHeaders/ceruleancity.asm b/data/mapHeaders/ceruleancity.asm new file mode 100755 index 00000000..61b04719 --- /dev/null +++ b/data/mapHeaders/ceruleancity.asm @@ -0,0 +1,10 @@ +CeruleanCity_h: ; 0x1874e to 0x18786 (56 bytes) (bank=6) (id=3) + db OVERWORLD ; tileset + db CERULEAN_CITY_HEIGHT, CERULEAN_CITY_WIDTH ; dimensions (y, x) + dw CeruleanCityBlocks, CeruleanCityTextPointers, CeruleanCityScript ; blocks, texts, scripts + db NORTH | SOUTH | WEST | EAST ; connections + NORTH_MAP_CONNECTION ROUTE_24, ROUTE_24_WIDTH, ROUTE_24_HEIGHT, 5, 0, ROUTE_24_WIDTH, Route24Blocks + SOUTH_MAP_CONNECTION ROUTE_5, ROUTE_5_WIDTH, 5, 0, ROUTE_5_WIDTH, Route5Blocks, CERULEAN_CITY_WIDTH, CERULEAN_CITY_HEIGHT + WEST_MAP_CONNECTION ROUTE_4, ROUTE_4_WIDTH, 4, 0, ROUTE_4_HEIGHT, Route4Blocks, CERULEAN_CITY_WIDTH + EAST_MAP_CONNECTION ROUTE_9, ROUTE_9_WIDTH, 4, 0, ROUTE_9_HEIGHT, Route9Blocks, CERULEAN_CITY_WIDTH + dw CeruleanCityObject ; objects diff --git a/data/mapHeaders/ceruleangym.asm b/data/mapHeaders/ceruleangym.asm new file mode 100755 index 00000000..7296a2a7 --- /dev/null +++ b/data/mapHeaders/ceruleangym.asm @@ -0,0 +1,6 @@ +CeruleanGym_h: ; 0x5c6a7 to 0x5c6b3 (12 bytes) (id=65) + db GYM ; tileset + db CERULEAN_GYM_HEIGHT, CERULEAN_GYM_WIDTH ; dimensions (y, x) + dw CeruleanGymBlocks, CeruleanGymTextPointers, CeruleanGymScript ; blocks, texts, scripts + db $00 ; connections + dw CeruleanGymObject ; objects diff --git a/data/mapHeaders/ceruleanhouse1.asm b/data/mapHeaders/ceruleanhouse1.asm new file mode 100755 index 00000000..879ceb23 --- /dev/null +++ b/data/mapHeaders/ceruleanhouse1.asm @@ -0,0 +1,6 @@ +CeruleanHouse1_h: ; 0x1d6ea to 0x1d6f6 (12 bytes) (bank=7) (id=63) + db HOUSE ; tileset + db CERULEAN_HOUSE_1_HEIGHT, CERULEAN_HOUSE_1_WIDTH ; dimensions (y, x) + dw CeruleanHouse1Blocks, CeruleanHouse1TextPointers, CeruleanHouse1Script ; blocks, texts, scripts + db $00 ; connections + dw CeruleanHouse1Object ; objects diff --git a/data/mapHeaders/ceruleanhouse2.asm b/data/mapHeaders/ceruleanhouse2.asm new file mode 100755 index 00000000..d2c44a47 --- /dev/null +++ b/data/mapHeaders/ceruleanhouse2.asm @@ -0,0 +1,6 @@ +CeruleanHouse2_h: ; 0x74dfd to 0x74e09 (12 bytes) (id=230) + db SHIP ; tileset + db CERULEAN_HOUSE_2_HEIGHT, CERULEAN_HOUSE_2_WIDTH ; dimensions (y, x) + dw CeruleanHouse2Blocks, CeruleanHouse2TextPointers, CeruleanHouse2Script ; blocks, texts, scripts + db $00 ; connections + dw CeruleanHouse2Object ; objects diff --git a/data/mapHeaders/ceruleanhousetrashed.asm b/data/mapHeaders/ceruleanhousetrashed.asm new file mode 100755 index 00000000..60c6dc94 --- /dev/null +++ b/data/mapHeaders/ceruleanhousetrashed.asm @@ -0,0 +1,6 @@ +CeruleanHouseTrashed_h: ; 0x1d679 to 0x1d685 (12 bytes) (bank=7) (id=62) + db HOUSE ; tileset + db TRASHED_HOUSE_HEIGHT, TRASHED_HOUSE_WIDTH ; dimensions (y, x) + dw CeruleanHouseTrashedBlocks, CeruleanHouseTrashedTextPointers, CeruleanHouseTrashedScript ; blocks, texts, scripts + db $00 ; connections + dw CeruleanHouseTrashedObject ; objects diff --git a/data/mapHeaders/ceruleanmart.asm b/data/mapHeaders/ceruleanmart.asm new file mode 100755 index 00000000..a2e112fd --- /dev/null +++ b/data/mapHeaders/ceruleanmart.asm @@ -0,0 +1,6 @@ +CeruleanMart_h: ; 0x5c889 to 0x5c895 (12 bytes) (id=67) + db MART ; tileset + db CERULEAN_MART_HEIGHT, CERULEAN_MART_WIDTH ; dimensions (y, x) + dw CeruleanMartBlocks, CeruleanMartTextPointers, CeruleanMartScript ; blocks, texts, scripts + db $00 ; connections + dw CeruleanMartObject ; objects diff --git a/data/mapHeaders/ceruleanpokecenter.asm b/data/mapHeaders/ceruleanpokecenter.asm new file mode 100755 index 00000000..908229fe --- /dev/null +++ b/data/mapHeaders/ceruleanpokecenter.asm @@ -0,0 +1,6 @@ +CeruleanPokecenter_h: ; 0x5c639 to 0x5c645 (12 bytes) (id=64) + db POKECENTER ; tileset + db CERULEAN_POKECENTER_HEIGHT, CERULEAN_POKECENTER_WIDTH ; dimensions (y, x) + dw CeruleanPokecenterBlocks, CeruleanPokecenterTextPointers, CeruleanPokecenterScript ; blocks, texts, scripts + db $00 ; connections + dw CeruleanPokecenterObject ; objects diff --git a/data/mapHeaders/cinnabargym.asm b/data/mapHeaders/cinnabargym.asm new file mode 100755 index 00000000..1902fe5d --- /dev/null +++ b/data/mapHeaders/cinnabargym.asm @@ -0,0 +1,6 @@ +CinnabarGym_h: ; 0x7573e to 0x7574a (12 bytes) (id=166) + db FACILITY ; tileset + db CINNABAR_GYM_HEIGHT, CINNABAR_GYM_WIDTH ; dimensions (y, x) + dw CinnabarGymBlocks, CinnabarGymTextPointers, CinnabarGymScript ; blocks, texts, scripts + db $00 ; connections + dw CinnabarGymObject ; objects diff --git a/data/mapHeaders/cinnabarisland.asm b/data/mapHeaders/cinnabarisland.asm new file mode 100755 index 00000000..f0da170f --- /dev/null +++ b/data/mapHeaders/cinnabarisland.asm @@ -0,0 +1,8 @@ +CinnabarIsland_h: ; 0x1c000 to 0x1c022 (34 bytes) (bank=7) (id=8) + db OVERWORLD ; tileset + db CINNABAR_ISLAND_HEIGHT, CINNABAR_ISLAND_WIDTH ; dimensions (y, x) + dw CinnabarIslandBlocks, CinnabarIslandTextPointers, CinnabarIslandScript ; blocks, texts, scripts + db NORTH | EAST ; connections + NORTH_MAP_CONNECTION ROUTE_21, ROUTE_21_WIDTH, ROUTE_21_HEIGHT, 0, 0, ROUTE_21_WIDTH, Route21Blocks + EAST_MAP_CONNECTION ROUTE_20, ROUTE_20_WIDTH, 0, 0, ROUTE_20_HEIGHT, Route20Blocks, CINNABAR_ISLAND_WIDTH + dw CinnabarIslandObject ; objects diff --git a/data/mapHeaders/cinnabarmart.asm b/data/mapHeaders/cinnabarmart.asm new file mode 100755 index 00000000..dd9fc116 --- /dev/null +++ b/data/mapHeaders/cinnabarmart.asm @@ -0,0 +1,6 @@ +CinnabarMart_h: ; 0x75e72 to 0x75e7e (12 bytes) (id=172) + db MART ; tileset + db CINNABAR_MART_HEIGHT, CINNABAR_MART_WIDTH ; dimensions (y, x) + dw CinnabarMartBlocks, CinnabarMartTextPointers, CinnabarMartScript ; blocks, texts, scripts + db $00 ; connections + dw CinnabarMartObject ; objects diff --git a/data/mapHeaders/cinnabarpokecenter.asm b/data/mapHeaders/cinnabarpokecenter.asm new file mode 100755 index 00000000..2d00d498 --- /dev/null +++ b/data/mapHeaders/cinnabarpokecenter.asm @@ -0,0 +1,6 @@ +CinnabarPokecenter_h: ; 0x75e20 to 0x75e2c (12 bytes) (id=171) + db POKECENTER ; tileset + db CINNABAR_POKECENTER_HEIGHT, CINNABAR_POKECENTER_WIDTH ; dimensions (y, x) + dw CinnabarPokecenterBlocks, CinnabarPokecenterTextPointers, CinnabarPokecenterScript ; blocks, texts, scripts + db $00 ; connections + dw CinnabarPokecenterObject ; objects diff --git a/data/mapHeaders/copycatshouse1f.asm b/data/mapHeaders/copycatshouse1f.asm new file mode 100755 index 00000000..a8d171d7 --- /dev/null +++ b/data/mapHeaders/copycatshouse1f.asm @@ -0,0 +1,6 @@ +CopycatsHouse1F_h: ; 0x75eb7 to 0x75ec3 (12 bytes) (id=175) + db REDS_HOUSE_1 ; tileset + db COPYCATS_HOUSE_1F_HEIGHT, COPYCATS_HOUSE_1F_WIDTH ; dimensions (y, x) + dw CopycatsHouse1FBlocks, CopycatsHouse1FTextPointers, CopycatsHouse1FScript ; blocks, texts, scripts + db $00 ; connections + dw CopycatsHouse1FObject ; objects diff --git a/data/mapHeaders/copycatshouse2f.asm b/data/mapHeaders/copycatshouse2f.asm new file mode 100755 index 00000000..46be1f54 --- /dev/null +++ b/data/mapHeaders/copycatshouse2f.asm @@ -0,0 +1,6 @@ +CopycatsHouse2F_h: ; 0x5cc65 to 0x5cc71 (12 bytes) (id=176) + db REDS_HOUSE_2 ; tileset + db COPYCATS_HOUSE_2F_HEIGHT, COPYCATS_HOUSE_2F_WIDTH ; dimensions (y, x) + dw CopycatsHouse2FBlocks, CopycatsHouse2FTextPointers, CopycatsHouse2FScript ; blocks, texts, scripts + db $00 ; connections + dw CopycatsHouse2FObject ; objects diff --git a/data/mapHeaders/daycarem.asm b/data/mapHeaders/daycarem.asm new file mode 100755 index 00000000..2677b51c --- /dev/null +++ b/data/mapHeaders/daycarem.asm @@ -0,0 +1,6 @@ +DayCareM_h: ; 0x56243 to 0x5624f (12 bytes) (id=72) + db HOUSE ; tileset + db DAYCAREM_HEIGHT, DAYCAREM_WIDTH ; dimensions (y, x) + dw DayCareMBlocks, DayCareMTextPointers, DayCareMScript ; blocks, texts, scripts + db $00 ; connections + dw DayCareMObject ; objects diff --git a/data/mapHeaders/diglettscave.asm b/data/mapHeaders/diglettscave.asm new file mode 100755 index 00000000..3cd5a651 --- /dev/null +++ b/data/mapHeaders/diglettscave.asm @@ -0,0 +1,6 @@ +DiglettsCave_h: ; 0x61f62 to 0x61f6e (12 bytes) (id=197) + db CAVERN ; tileset + db DIGLETTS_CAVE_HEIGHT, DIGLETTS_CAVE_WIDTH ; dimensions (y, x) + dw DiglettsCaveBlocks, DiglettsCaveTextPointers, DiglettsCaveScript ; blocks, texts, scripts + db $00 ; connections + dw DiglettsCaveObject ; objects diff --git a/data/mapHeaders/diglettscaveroute11.asm b/data/mapHeaders/diglettscaveroute11.asm new file mode 100755 index 00000000..8d9acd49 --- /dev/null +++ b/data/mapHeaders/diglettscaveroute11.asm @@ -0,0 +1,6 @@ +DiglettsCaveEntranceRoute11_h: ; 0x1e5ae to 0x1e5ba (12 bytes) (bank=7) (id=85) + db CAVERN ; tileset + db DIGLETTS_CAVE_ENTRANCE_HEIGHT, DIGLETTS_CAVE_ENTRANCE_WIDTH ; dimensions (y, x) + dw DiglettsCaveEntranceRoute11Blocks, DiglettsCaveEntranceRoute11TextPointers, DiglettsCaveEntranceRoute11Script ; blocks, texts, scripts + db $00 ; connections + dw DiglettsCaveEntranceRoute11Object ; objects diff --git a/data/mapHeaders/diglettscaveroute2.asm b/data/mapHeaders/diglettscaveroute2.asm new file mode 100755 index 00000000..b81d48a6 --- /dev/null +++ b/data/mapHeaders/diglettscaveroute2.asm @@ -0,0 +1,6 @@ +DiglettsCaveRoute2_h: ; 0x1dea4 to 0x1deb0 (12 bytes) (bank=7) (id=46) + db CAVERN ; tileset + db DIGLETTS_CAVE_EXIT_HEIGHT, DIGLETTS_CAVE_EXIT_WIDTH ; dimensions (y, x) + dw DiglettsCaveRoute2Blocks, DiglettsCaveRoute2TextPointers, DiglettsCaveRoute2Script ; blocks, texts, scripts + db $00 ; connections + dw DiglettsCaveRoute2Object ; objects diff --git a/data/mapHeaders/fanclub.asm b/data/mapHeaders/fanclub.asm new file mode 100755 index 00000000..603ec53b --- /dev/null +++ b/data/mapHeaders/fanclub.asm @@ -0,0 +1,6 @@ +FanClub_h: ; 0x59b64 to 0x59b70 (12 bytes) (id=90) + db INTERIOR ; tileset + db POKEMON_FAN_CLUB_HEIGHT, POKEMON_FAN_CLUB_WIDTH ; dimensions (y, x) + dw FanClubBlocks, FanClubTextPointers, FanClubScript ; blocks, texts, scripts + db $00 ; connections + dw FanClubObject ; objects diff --git a/data/mapHeaders/fightingdojo.asm b/data/mapHeaders/fightingdojo.asm new file mode 100755 index 00000000..d981d816 --- /dev/null +++ b/data/mapHeaders/fightingdojo.asm @@ -0,0 +1,6 @@ +FightingDojo_h: ; 0x5cd51 to 0x5cd5d (12 bytes) (id=177) + db DOJO ; tileset + db FIGHTING_DOJO_HEIGHT, FIGHTING_DOJO_WIDTH ; dimensions (y, x) + dw FightingDojoBlocks, FightingDojoTextPointers, FightingDojoScript ; blocks, texts, scripts + db $00 ; connections + dw FightingDojoObject ; objects diff --git a/data/mapHeaders/fuchsiacity.asm b/data/mapHeaders/fuchsiacity.asm new file mode 100755 index 00000000..7a3e4f66 --- /dev/null +++ b/data/mapHeaders/fuchsiacity.asm @@ -0,0 +1,9 @@ +FuchsiaCity_h: ; 0x18ba7 to 0x18bd4 (45 bytes) (bank=6) (id=7) + db OVERWORLD ; tileset + db FUCHSIA_CITY_HEIGHT, FUCHSIA_CITY_WIDTH ; dimensions (y, x) + dw FuchsiaCityBlocks, FuchsiaCityTextPointers, FuchsiaCityScript ; blocks, texts, scripts + db SOUTH | WEST | EAST ; connections + SOUTH_MAP_CONNECTION ROUTE_19, ROUTE_19_WIDTH, 5, 0, ROUTE_19_WIDTH, Route19Blocks, FUCHSIA_CITY_WIDTH, FUCHSIA_CITY_HEIGHT + WEST_MAP_CONNECTION ROUTE_18, ROUTE_18_WIDTH, 4, 0, ROUTE_18_HEIGHT, Route18Blocks, FUCHSIA_CITY_WIDTH + EAST_MAP_CONNECTION ROUTE_15, ROUTE_15_WIDTH, 4, 0, ROUTE_15_HEIGHT, Route15Blocks, FUCHSIA_CITY_WIDTH + dw FuchsiaCityObject ; objects diff --git a/data/mapHeaders/fuchsiagym.asm b/data/mapHeaders/fuchsiagym.asm new file mode 100755 index 00000000..4c6f083f --- /dev/null +++ b/data/mapHeaders/fuchsiagym.asm @@ -0,0 +1,6 @@ +FuchsiaGym_h: ; 0x75431 to 0x7543d (12 bytes) (id=157) + db GYM ; tileset + db FUCHSIA_GYM_HEIGHT, FUCHSIA_GYM_WIDTH ; dimensions (y, x) + dw FuchsiaGymBlocks, FuchsiaGymTextPointers, FuchsiaGymScript ; blocks, texts, scripts + db $00 ; connections + dw FuchsiaGymObject ; objects diff --git a/data/mapHeaders/fuchsiahouse1.asm b/data/mapHeaders/fuchsiahouse1.asm new file mode 100755 index 00000000..98974fee --- /dev/null +++ b/data/mapHeaders/fuchsiahouse1.asm @@ -0,0 +1,6 @@ +FuchsiaHouse1_h: ; 0x7500c to 0x75018 (12 bytes) (id=153) + db HOUSE ; tileset + db FUCHSIA_HOUSE_1_HEIGHT, FUCHSIA_HOUSE_1_WIDTH ; dimensions (y, x) + dw FuchsiaHouse1Blocks, FuchsiaHouse1TextPointers, FuchsiaHouse1Script ; blocks, texts, scripts + db $00 ; connections + dw FuchsiaHouse1Object ; objects diff --git a/data/mapHeaders/fuchsiahouse2.asm b/data/mapHeaders/fuchsiahouse2.asm new file mode 100755 index 00000000..f4d05eeb --- /dev/null +++ b/data/mapHeaders/fuchsiahouse2.asm @@ -0,0 +1,6 @@ +FuchsiaHouse2_h: ; 0x750a9 to 0x750b5 (12 bytes) (id=155) + db LAB ; tileset + db FUCHSIA_HOUSE_2_HEIGHT, FUCHSIA_HOUSE_2_WIDTH ; dimensions (y, x) + dw FuchsiaHouse2Blocks, FuchsiaHouse2TextPointers, FuchsiaHouse2Script ; blocks, texts, scripts + db $00 ; connections + dw FuchsiaHouse2Object ; objects diff --git a/data/mapHeaders/fuchsiahouse3.asm b/data/mapHeaders/fuchsiahouse3.asm new file mode 100755 index 00000000..92b4d96d --- /dev/null +++ b/data/mapHeaders/fuchsiahouse3.asm @@ -0,0 +1,6 @@ +FuchsiaHouse3_h: ; 0x56170 to 0x5617c (12 bytes) (id=164) + db SHIP ; tileset + db FUCHSIA_HOUSE_3_HEIGHT, FUCHSIA_HOUSE_3_WIDTH ; dimensions (y, x) + dw FuchsiaHouse3Blocks, FuchsiaHouse3TextPointers, FuchsiaHouse3Script ; blocks, texts, scripts + db $00 ; connections + dw FuchsiaHouse3Object ; objects diff --git a/data/mapHeaders/fuchsiamart.asm b/data/mapHeaders/fuchsiamart.asm new file mode 100755 index 00000000..a9f00150 --- /dev/null +++ b/data/mapHeaders/fuchsiamart.asm @@ -0,0 +1,6 @@ +FuchsiaMart_h: ; 0x1dd7c to 0x1dd88 (12 bytes) (bank=7) (id=152) + db MART ; tileset + db FUCHSIA_MART_HEIGHT, FUCHSIA_MART_WIDTH ; dimensions (y, x) + dw FuchsiaMartBlocks, FuchsiaMartTextPointers, FuchsiaMartScript ; blocks, texts, scripts + db $00 ; connections + dw FuchsiaMartObject ; objects diff --git a/data/mapHeaders/fuchsiameetingroom.asm b/data/mapHeaders/fuchsiameetingroom.asm new file mode 100755 index 00000000..48d4c7fc --- /dev/null +++ b/data/mapHeaders/fuchsiameetingroom.asm @@ -0,0 +1,6 @@ +FuchsiaMeetingRoom_h: ; 0x756d7 to 0x756e3 (12 bytes) (id=158) + db LAB ; tileset + db FUCHSIA_MEETING_ROOM_HEIGHT, FUCHSIA_MEETING_ROOM_WIDTH ; dimensions (y, x) + dw FuchsiaMeetingRoomBlocks, FuchsiaMeetingRoomTextPointers, FuchsiaMeetingRoomScript ; blocks, texts, scripts + db $00 ; connections + dw FuchsiaMeetingRoomObject ; objects diff --git a/data/mapHeaders/fuchsiapokecenter.asm b/data/mapHeaders/fuchsiapokecenter.asm new file mode 100755 index 00000000..aec7f455 --- /dev/null +++ b/data/mapHeaders/fuchsiapokecenter.asm @@ -0,0 +1,6 @@ +FuchsiaPokecenter_h: ; 0x75057 to 0x75063 (12 bytes) (id=154) + db POKECENTER ; tileset + db FUCHSIA_POKECENTER_HEIGHT, FUCHSIA_POKECENTER_WIDTH ; dimensions (y, x) + dw FuchsiaPokecenterBlocks, FuchsiaPokecenterTextPointers, FuchsiaPokecenterScript ; blocks, texts, scripts + db $00 ; connections + dw FuchsiaPokecenterObject ; objects diff --git a/data/mapHeaders/gary.asm b/data/mapHeaders/gary.asm new file mode 100755 index 00000000..5b1a1f98 --- /dev/null +++ b/data/mapHeaders/gary.asm @@ -0,0 +1,6 @@ +Gary_h: ; 75f11 (1d:5f11) + db GYM ;tileset + db CHAMPIONS_ROOM_HEIGHT, CHAMPIONS_ROOM_WIDTH ; Height, Width + dw GaryBlocks, GaryTextPointers, GaryScript + db $0 ;No Connections + dw GaryObject diff --git a/data/mapHeaders/halloffameroom.asm b/data/mapHeaders/halloffameroom.asm new file mode 100755 index 00000000..63cd6419 --- /dev/null +++ b/data/mapHeaders/halloffameroom.asm @@ -0,0 +1,6 @@ +HallofFameRoom_h: ; 0x5a492 to 0x5a49e (12 bytes) (id=118) + db GYM ; tileset + db HALL_OF_FAME_HEIGHT, HALL_OF_FAME_WIDTH ; dimensions (y, x) + dw HallofFameRoomBlocks, HallofFameRoomTextPointers, HallofFameRoomScript ; blocks, texts, scripts + db $00 ; connections + dw HallofFameRoomObject ; objects diff --git a/data/mapHeaders/indigoplateau.asm b/data/mapHeaders/indigoplateau.asm new file mode 100755 index 00000000..9705e3ee --- /dev/null +++ b/data/mapHeaders/indigoplateau.asm @@ -0,0 +1,7 @@ +IndigoPlateau_h: ; 0x5091e to 0x50935 (23 bytes) (id=9) + db PLATEAU ; tileset + db INDIGO_PLATEAU_HEIGHT, INDIGO_PLATEAU_WIDTH ; dimensions (y, x) + dw IndigoPlateauBlocks, IndigoPlateauTextPointers, IndigoPlateauScript ; blocks, texts, scripts + db SOUTH ; connections + SOUTH_MAP_CONNECTION ROUTE_23, ROUTE_23_WIDTH, 0, 0, ROUTE_23_WIDTH, Route23Blocks, INDIGO_PLATEAU_WIDTH, INDIGO_PLATEAU_HEIGHT + dw IndigoPlateauObject ; objects diff --git a/data/mapHeaders/indigoplateaulobby.asm b/data/mapHeaders/indigoplateaulobby.asm new file mode 100755 index 00000000..d0e056ac --- /dev/null +++ b/data/mapHeaders/indigoplateaulobby.asm @@ -0,0 +1,6 @@ +IndigoPlateauLobby_h: ; 0x19c4f to 0x19c5b (12 bytes) (bank=6) (id=174) + db MART ; tileset + db INDIGO_PLATEAU_LOBBY_HEIGHT, INDIGO_PLATEAU_LOBBY_WIDTH ; dimensions (y, x) + dw IndigoPlateauLobbyBlocks, IndigoPlateauLobbyTextPointers, IndigoPlateauLobbyScript ; blocks, texts, scripts + db $00 ; connections + dw IndigoPlateauLobbyObject ; objects diff --git a/data/mapHeaders/lab1.asm b/data/mapHeaders/lab1.asm new file mode 100755 index 00000000..512373c4 --- /dev/null +++ b/data/mapHeaders/lab1.asm @@ -0,0 +1,6 @@ +Lab1_h: ; 0x75b80 to 0x75b8c (12 bytes) (id=167) + db LAB ; tileset + db CINNABAR_LAB_1_HEIGHT, CINNABAR_LAB_1_WIDTH ; dimensions (y, x) + dw Lab1Blocks, Lab1TextPointers, Lab1Script ; blocks, texts, scripts + db $00 ; connections + dw Lab1Object ; objects diff --git a/data/mapHeaders/lab2.asm b/data/mapHeaders/lab2.asm new file mode 100755 index 00000000..a3c2ccf6 --- /dev/null +++ b/data/mapHeaders/lab2.asm @@ -0,0 +1,6 @@ +Lab2_h: ; 0x75c15 to 0x75c21 (12 bytes) (id=168) + db LAB ; tileset + db CINNABAR_LAB_2_HEIGHT, CINNABAR_LAB_2_WIDTH ; dimensions (y, x) + dw Lab2Blocks, Lab2TextPointers, Lab2Script ; blocks, texts, scripts + db $00 ; connections + dw Lab2Object ; objects diff --git a/data/mapHeaders/lab3.asm b/data/mapHeaders/lab3.asm new file mode 100755 index 00000000..c9709e83 --- /dev/null +++ b/data/mapHeaders/lab3.asm @@ -0,0 +1,6 @@ +Lab3_h: ; 0x75c7b to 0x75c87 (12 bytes) (id=169) + db LAB ; tileset + db CINNABAR_LAB_3_HEIGHT, CINNABAR_LAB_3_WIDTH ; dimensions (y, x) + dw Lab3Blocks, Lab3TextPointers, Lab3Script ; blocks, texts, scripts + db $00 ; connections + dw Lab3Object ; objects diff --git a/data/mapHeaders/lab4.asm b/data/mapHeaders/lab4.asm new file mode 100755 index 00000000..82ced4a3 --- /dev/null +++ b/data/mapHeaders/lab4.asm @@ -0,0 +1,6 @@ +Lab4_h: ; 0x75d25 to 0x75d31 (12 bytes) (id=170) + db LAB ; tileset + db CINNABAR_LAB_4_HEIGHT, CINNABAR_LAB_4_WIDTH ; dimensions (y, x) + dw Lab4Blocks, Lab4TextPointers, Lab4Script ; blocks, texts, scripts + db $00 ; connections + dw Lab4Object ; objects diff --git a/data/mapHeaders/lance.asm b/data/mapHeaders/lance.asm new file mode 100755 index 00000000..464fd0d7 --- /dev/null +++ b/data/mapHeaders/lance.asm @@ -0,0 +1,6 @@ +Lance_h: ; 0x5a2a2 to 0x5a2ae (12 bytes) (id=113) + db DOJO ; tileset + db LANCES_ROOM_HEIGHT, LANCES_ROOM_WIDTH ; dimensions (y, x) + dw LanceBlocks, LanceTextPointers, LanceScript ; blocks, texts, scripts + db $00 ; connections + dw LanceObject ; objects diff --git a/data/mapHeaders/lavenderhouse1.asm b/data/mapHeaders/lavenderhouse1.asm new file mode 100755 index 00000000..e9531fff --- /dev/null +++ b/data/mapHeaders/lavenderhouse1.asm @@ -0,0 +1,6 @@ +LavenderHouse1_h: ; 0x1d89c to 0x1d8a8 (12 bytes) (bank=7) (id=149) + db HOUSE ; tileset + db LAVENDER_HOUSE_1_HEIGHT, LAVENDER_HOUSE_1_WIDTH ; dimensions (y, x) + dw LavenderHouse1Blocks, LavenderHouse1TextPointers, LavenderHouse1Script ; blocks, texts, scripts + db $00 ; connections + dw LavenderHouse1Object ; objects diff --git a/data/mapHeaders/lavenderhouse2.asm b/data/mapHeaders/lavenderhouse2.asm new file mode 100755 index 00000000..ea6c00c1 --- /dev/null +++ b/data/mapHeaders/lavenderhouse2.asm @@ -0,0 +1,6 @@ +LavenderHouse2_h: ; 0x1d9a2 to 0x1d9ae (12 bytes) (bank=7) (id=151) + db HOUSE ; tileset + db LAVENDER_HOUSE_2_HEIGHT, LAVENDER_HOUSE_2_WIDTH ; dimensions (y, x) + dw LavenderHouse2Blocks, LavenderHouse2TextPointers, LavenderHouse2Script ; blocks, texts, scripts + db $00 ; connections + dw LavenderHouse2Object ; objects diff --git a/data/mapHeaders/lavendermart.asm b/data/mapHeaders/lavendermart.asm new file mode 100755 index 00000000..95f448e5 --- /dev/null +++ b/data/mapHeaders/lavendermart.asm @@ -0,0 +1,6 @@ +LavenderMart_h: ; 0x5c920 to 0x5c92c (12 bytes) (id=150) + db MART ; tileset + db LAVENDER_MART_HEIGHT, LAVENDER_MART_WIDTH ; dimensions (y, x) + dw LavenderMartBlocks, LavenderMartTextPointers, LavenderMartScript ; blocks, texts, scripts + db $00 ; connections + dw LavenderMartObject ; objects diff --git a/data/mapHeaders/lavenderpokecenter.asm b/data/mapHeaders/lavenderpokecenter.asm new file mode 100755 index 00000000..ce6630bf --- /dev/null +++ b/data/mapHeaders/lavenderpokecenter.asm @@ -0,0 +1,6 @@ +LavenderPokecenter_h: ; 0x5c8ce to 0x5c8da (12 bytes) (id=141) + db POKECENTER ; tileset + db LAVENDER_POKECENTER_HEIGHT, LAVENDER_POKECENTER_WIDTH ; dimensions (y, x) + dw LavenderPokecenterBlocks, LavenderPokecenterTextPointers, LavenderPokecenterScript ; blocks, texts, scripts + db $00 ; connections + dw LavenderPokecenterObject ; objects diff --git a/data/mapHeaders/lavendertown.asm b/data/mapHeaders/lavendertown.asm new file mode 100755 index 00000000..2880dc60 --- /dev/null +++ b/data/mapHeaders/lavendertown.asm @@ -0,0 +1,9 @@ +LavenderTown_h: ; 0x44000 to 0x4402d (45 bytes) (bank=11) (id=4) + db OVERWORLD ; tileset + db LAVENDER_TOWN_HEIGHT, LAVENDER_TOWN_WIDTH ; dimensions (y, x) + dw LavenderTownBlocks, LavenderTownTextPointers, LavenderTownScript ; blocks, texts, scripts + db NORTH | SOUTH | WEST ; connections + NORTH_MAP_CONNECTION ROUTE_10, ROUTE_10_WIDTH, ROUTE_10_HEIGHT, 0, 0, ROUTE_10_WIDTH, Route10Blocks + SOUTH_MAP_CONNECTION ROUTE_12, ROUTE_12_WIDTH, 0, 0, ROUTE_12_WIDTH, Route12Blocks, LAVENDER_TOWN_WIDTH, LAVENDER_TOWN_HEIGHT + WEST_MAP_CONNECTION ROUTE_8, ROUTE_8_WIDTH, 0, 0, ROUTE_8_HEIGHT, Route8Blocks, LAVENDER_TOWN_WIDTH + dw LavenderTownObject ; objects diff --git a/data/mapHeaders/lorelei.asm b/data/mapHeaders/lorelei.asm new file mode 100755 index 00000000..e1261c3e --- /dev/null +++ b/data/mapHeaders/lorelei.asm @@ -0,0 +1,6 @@ +Lorelei_h: ; 0x7616f to 0x7617b (12 bytes) (id=245) + db GYM ; tileset + db LORELEIS_ROOM_HEIGHT, LORELEIS_ROOM_WIDTH ; dimensions (y, x) + dw LoreleiBlocks, LoreleiTextPointers, LoreleiScript ; blocks, texts, scripts + db $00 ; connections + dw LoreleiObject ; objects diff --git a/data/mapHeaders/mansion1.asm b/data/mapHeaders/mansion1.asm new file mode 100755 index 00000000..e7110698 --- /dev/null +++ b/data/mapHeaders/mansion1.asm @@ -0,0 +1,6 @@ +Mansion1_h: ; 0x442a3 to 0x442af (12 bytes) (bank=11) (id=165) + db FACILITY ; tileset + db MANSION_1_HEIGHT, MANSION_1_WIDTH ; dimensions (y, x) + dw Mansion1Blocks, Mansion1TextPointers, Mansion1Script ; blocks, texts, scripts + db $00 ; connections + dw Mansion1Object ; objects diff --git a/data/mapHeaders/mansion2.asm b/data/mapHeaders/mansion2.asm new file mode 100755 index 00000000..e888b243 --- /dev/null +++ b/data/mapHeaders/mansion2.asm @@ -0,0 +1,6 @@ +Mansion2_h: ; 0x51fcc to 0x51fd8 (12 bytes) (id=214) + db FACILITY ; tileset + db MANSION_2_HEIGHT, MANSION_2_WIDTH ; dimensions (y, x) + dw Mansion2Blocks, Mansion2TextPointers, Mansion2Script ; blocks, texts, scripts + db $00 ; connections + dw Mansion2Object ; objects diff --git a/data/mapHeaders/mansion3.asm b/data/mapHeaders/mansion3.asm new file mode 100755 index 00000000..a1b6c95f --- /dev/null +++ b/data/mapHeaders/mansion3.asm @@ -0,0 +1,6 @@ +Mansion3_h: ; 0x521e2 to 0x521ee (12 bytes) (id=215) + db FACILITY ; tileset + db MANSION_3_HEIGHT, MANSION_3_WIDTH ; dimensions (y, x) + dw Mansion3Blocks, Mansion3TextPointers, Mansion3Script ; blocks, texts, scripts + db $00 ; connections + dw Mansion3Object ; objects diff --git a/data/mapHeaders/mansion4.asm b/data/mapHeaders/mansion4.asm new file mode 100755 index 00000000..63f138e7 --- /dev/null +++ b/data/mapHeaders/mansion4.asm @@ -0,0 +1,6 @@ +Mansion4_h: ; 0x523ad to 0x523b9 (12 bytes) (id=216) + db FACILITY ; tileset + db MANSION_4_HEIGHT, MANSION_4_WIDTH ; dimensions (y, x) + dw Mansion4Blocks, Mansion4TextPointers, Mansion4Script ; blocks, texts, scripts + db $00 ; connections + dw Mansion4Object ; objects diff --git a/data/mapHeaders/mtmoon1.asm b/data/mapHeaders/mtmoon1.asm new file mode 100755 index 00000000..f5b52f37 --- /dev/null +++ b/data/mapHeaders/mtmoon1.asm @@ -0,0 +1,6 @@ +MtMoon1_h: ; 0x499bc to 0x499c8 (12 bytes) (id=59) + db CAVERN ; tileset + db MT_MOON_1_HEIGHT, MT_MOON_1_WIDTH ; dimensions (y, x) + dw MtMoon1Blocks, MtMoon1TextPointers, MtMoon1Script ; blocks, texts, scripts + db $00 ; connections + dw MtMoon1Object ; objects diff --git a/data/mapHeaders/mtmoon2.asm b/data/mapHeaders/mtmoon2.asm new file mode 100755 index 00000000..5e53bc20 --- /dev/null +++ b/data/mapHeaders/mtmoon2.asm @@ -0,0 +1,6 @@ +MtMoon2_h: ; 0x51a36 to 0x51a42 (12 bytes) (id=60) + db CAVERN ; tileset + db MT_MOON_2_HEIGHT, MT_MOON_2_WIDTH ; dimensions (y, x) + dw MtMoon2Blocks, MtMoon2TextPointers, MtMoon2Script ; blocks, texts, scripts + db $00 ; connections + dw MtMoon2Object ; objects diff --git a/data/mapHeaders/mtmoon3.asm b/data/mapHeaders/mtmoon3.asm new file mode 100755 index 00000000..95331007 --- /dev/null +++ b/data/mapHeaders/mtmoon3.asm @@ -0,0 +1,6 @@ +MtMoon3_h: ; 0x49cff to 0x49d0b (12 bytes) (id=61) + db CAVERN ; tileset + db MT_MOON_3_HEIGHT, MT_MOON_3_WIDTH ; dimensions (y, x) + dw MtMoon3Blocks, MtMoon3TextPointers, MtMoon3Script ; blocks, texts, scripts + db $00 ; connections + dw MtMoon3Object ; objects diff --git a/data/mapHeaders/mtmoonpokecenter.asm b/data/mapHeaders/mtmoonpokecenter.asm new file mode 100755 index 00000000..52f002cc --- /dev/null +++ b/data/mapHeaders/mtmoonpokecenter.asm @@ -0,0 +1,6 @@ +MtMoonPokecenter_h: ; 0x492c3 to 0x492cf (12 bytes) (bank=12) (id=68) + db POKECENTER ; tileset + db MT_MOON_POKECENTER_HEIGHT, MT_MOON_POKECENTER_WIDTH ; dimensions (y, x) + dw MtMoonPokecenterBlocks, MtMoonPokecenterTextPointers, MtMoonPokecenterScript ; blocks, texts, scripts + db $00 ; connections + dw MtMoonPokecenterObject ; objects diff --git a/data/mapHeaders/museum1f.asm b/data/mapHeaders/museum1f.asm new file mode 100755 index 00000000..dacdb50e --- /dev/null +++ b/data/mapHeaders/museum1f.asm @@ -0,0 +1,6 @@ +Museum1F_h: ; 0x5c0eb to 0x5c0f7 (12 bytes) (id=52) + db MUSEUM ; tileset + db MUSEUM_1F_HEIGHT, MUSEUM_1F_WIDTH ; dimensions (y, x) + dw Museum1FBlocks, Museum1FTextPointers, Museum1FScript ; blocks, texts, scripts + db $00 ; connections + dw Museum1FObject ; objects diff --git a/data/mapHeaders/museum2f.asm b/data/mapHeaders/museum2f.asm new file mode 100755 index 00000000..15997573 --- /dev/null +++ b/data/mapHeaders/museum2f.asm @@ -0,0 +1,6 @@ +Museum2F_h: ; 0x5c30b to 0x5c317 (12 bytes) (id=53) + db MUSEUM ; tileset + db MUSEUM_2F_HEIGHT, MUSEUM_2F_WIDTH ; dimensions (y, x) + dw Museum2FBlocks, Museum2FTextPointers, Museum2FScript ; blocks, texts, scripts + db $00 ; connections + dw Museum2FObject ; objects diff --git a/data/mapHeaders/namerater.asm b/data/mapHeaders/namerater.asm new file mode 100755 index 00000000..f43493d4 --- /dev/null +++ b/data/mapHeaders/namerater.asm @@ -0,0 +1,6 @@ +NameRater_h: ; 0x1da06 to 0x1da12 (12 bytes) (bank=7) (id=229) + db HOUSE ; tileset + db NAME_RATERS_HOUSE_HEIGHT, NAME_RATERS_HOUSE_WIDTH ; dimensions (y, x) + dw NameRaterBlocks, NameRaterTextPointers, NameRaterScript ; blocks, texts, scripts + db $00 ; connections + dw NameRaterObject ; objects diff --git a/data/mapHeaders/oakslab.asm b/data/mapHeaders/oakslab.asm new file mode 100755 index 00000000..ab41ef4d --- /dev/null +++ b/data/mapHeaders/oakslab.asm @@ -0,0 +1,6 @@ +OaksLab_h: ; 0x1cb02 to 0x1cb0e (12 bytes) (bank=7) (id=40) + db DOJO ; tileset + db OAKS_LAB_HEIGHT, OAKS_LAB_WIDTH ; dimensions (y, x) + dw OaksLabBlocks, OaksLabTextPointers, OaksLabScript ; blocks, texts, scripts + db $00 ; connections + dw OaksLabObject ; objects diff --git a/data/mapHeaders/pallettown.asm b/data/mapHeaders/pallettown.asm new file mode 100755 index 00000000..248c49b4 --- /dev/null +++ b/data/mapHeaders/pallettown.asm @@ -0,0 +1,8 @@ +PalletTown_h: ; 182a1 (6:42a1) + db OVERWORLD ; tileset + db PALLET_TOWN_HEIGHT, PALLET_TOWN_WIDTH ; dimensions + dw PalletTownBlocks, PalletTownTextPointers, PalletTownScript + db NORTH | SOUTH ; connections + NORTH_MAP_CONNECTION ROUTE_1, ROUTE_1_WIDTH, ROUTE_1_HEIGHT, 0, 0, ROUTE_1_WIDTH, Route1Blocks + SOUTH_MAP_CONNECTION ROUTE_21, ROUTE_21_WIDTH, 0, 0, ROUTE_21_WIDTH, Route21Blocks, PALLET_TOWN_WIDTH, PALLET_TOWN_HEIGHT + dw PalletTownObject diff --git a/data/mapHeaders/pewtercity.asm b/data/mapHeaders/pewtercity.asm new file mode 100755 index 00000000..b5e68adc --- /dev/null +++ b/data/mapHeaders/pewtercity.asm @@ -0,0 +1,10 @@ +PewterCity_h: ; 0x18554 to 0x18576 (34 bytes) (bank=6) (id=2) + db OVERWORLD ; tileset + db PEWTER_CITY_HEIGHT, PEWTER_CITY_WIDTH ; dimensions (y, x) + dw PewterCityBlocks, PewterCityTextPointers, PewterCityScript ; blocks, texts, scripts + db SOUTH | EAST ; connections + SOUTH_MAP_CONNECTION ROUTE_2, ROUTE_2_WIDTH, 5, 0, ROUTE_2_WIDTH, Route2Blocks, PEWTER_CITY_WIDTH, PEWTER_CITY_HEIGHT + EAST_MAP_CONNECTION ROUTE_3, ROUTE_3_WIDTH, 4, 0, ROUTE_3_HEIGHT, Route3Blocks, PEWTER_CITY_WIDTH + dw PewterCityObject ; objects + + db $0 diff --git a/data/mapHeaders/pewtergym.asm b/data/mapHeaders/pewtergym.asm new file mode 100755 index 00000000..ac159b16 --- /dev/null +++ b/data/mapHeaders/pewtergym.asm @@ -0,0 +1,6 @@ +PewterGym_h: ; 0x5c37b to 0x5c387 (12 bytes) (id=54) + db GYM ; tileset + db PEWTER_GYM_HEIGHT, PEWTER_GYM_WIDTH ; dimensions (y, x) + dw PewterGymBlocks, PewterGymTextPointers, PewterGymScript ; blocks, texts, scripts + db $00 ; connections + dw PewterGymObject ; objects diff --git a/data/mapHeaders/pewterhouse1.asm b/data/mapHeaders/pewterhouse1.asm new file mode 100755 index 00000000..b9d11d98 --- /dev/null +++ b/data/mapHeaders/pewterhouse1.asm @@ -0,0 +1,6 @@ +PewterHouse1_h: ; 0x1d5e7 to 0x1d5f3 (12 bytes) (bank=7) (id=55) + db HOUSE ; tileset + db PEWTER_HOUSE_1_HEIGHT, PEWTER_HOUSE_1_WIDTH ; dimensions (y, x) + dw PewterHouse1Blocks, PewterHouse1TextPointers, PewterHouse1Script ; blocks, texts, scripts + db $00 ; connections + dw PewterHouse1Object ; objects diff --git a/data/mapHeaders/pewterhouse2.asm b/data/mapHeaders/pewterhouse2.asm new file mode 100755 index 00000000..abcb409b --- /dev/null +++ b/data/mapHeaders/pewterhouse2.asm @@ -0,0 +1,6 @@ +PewterHouse2_h: ; 0x1d63c to 0x1d648 (12 bytes) (bank=7) (id=57) + db HOUSE ; tileset + db PEWTER_HOUSE_2_HEIGHT, PEWTER_HOUSE_2_WIDTH ; dimensions (y, x) + dw PewterHouse2Blocks, PewterHouse2TextPointers, PewterHouse2Script ; blocks, texts, scripts + db $00 ; connections + dw PewterHouse2Object ; objects diff --git a/data/mapHeaders/pewtermart.asm b/data/mapHeaders/pewtermart.asm new file mode 100755 index 00000000..673dc1cf --- /dev/null +++ b/data/mapHeaders/pewtermart.asm @@ -0,0 +1,6 @@ +PewterMart_h: ; 0x74ca1 to 0x74cad (12 bytes) (id=56) + db MART ; tileset + db PEWTER_MART_HEIGHT, PEWTER_MART_WIDTH ; dimensions (y, x) + dw PewterMartBlocks, PewterMartTextPointers, PewterMartScript ; blocks, texts, scripts + db $00 ; connections + dw PewterMartObject ; objects diff --git a/data/mapHeaders/pewterpokecenter.asm b/data/mapHeaders/pewterpokecenter.asm new file mode 100755 index 00000000..4fd426c5 --- /dev/null +++ b/data/mapHeaders/pewterpokecenter.asm @@ -0,0 +1,6 @@ +PewterPokecenter_h: ; 0x5c57b to 0x5c587 (12 bytes) (id=58) + db POKECENTER ; tileset + db PEWTER_POKECENTER_HEIGHT, PEWTER_POKECENTER_WIDTH ; dimensions (y, x) + dw PewterPokecenterBlocks, PewterPokecenterTextPointers, PewterPokecenterScript ; blocks, texts, scripts + db $00 ; connections + dw PewterPokecenterObject ; objects diff --git a/data/mapHeaders/pokemontower1.asm b/data/mapHeaders/pokemontower1.asm new file mode 100755 index 00000000..d7c2849e --- /dev/null +++ b/data/mapHeaders/pokemontower1.asm @@ -0,0 +1,6 @@ +PokemonTower1_h: ; 0x60420 to 0x6042c (12 bytes) (id=142) + db CEMETERY ; tileset + db POKEMONTOWER_1_HEIGHT, POKEMONTOWER_1_WIDTH ; dimensions (y, x) + dw PokemonTower1Blocks, PokemonTower1TextPointers, PokemonTower1Script ; blocks, texts, scripts + db $00 ; connections + dw PokemonTower1Object ; objects diff --git a/data/mapHeaders/pokemontower2.asm b/data/mapHeaders/pokemontower2.asm new file mode 100755 index 00000000..30493d08 --- /dev/null +++ b/data/mapHeaders/pokemontower2.asm @@ -0,0 +1,6 @@ +PokemonTower2_h: ; 0x604e6 to 0x604f2 (12 bytes) (id=143) + db CEMETERY ; tileset + db POKEMONTOWER_2_HEIGHT, POKEMONTOWER_2_WIDTH ; dimensions (y, x) + dw PokemonTower2Blocks, PokemonTower2TextPointers, PokemonTower2Script ; blocks, texts, scripts + db $00 ; connections + dw PokemonTower2Object ; objects diff --git a/data/mapHeaders/pokemontower3.asm b/data/mapHeaders/pokemontower3.asm new file mode 100755 index 00000000..bb3f2318 --- /dev/null +++ b/data/mapHeaders/pokemontower3.asm @@ -0,0 +1,6 @@ +PokemonTower3_h: ; 0x606c0 to 0x606cc (12 bytes) (id=144) + db CEMETERY ; tileset + db POKEMONTOWER_3_HEIGHT, POKEMONTOWER_3_WIDTH ; dimensions (y, x) + dw PokemonTower3Blocks, PokemonTower3TextPointers, PokemonTower3Script ; blocks, texts, scripts + db $00 ; connections + dw PokemonTower3Object ; objects diff --git a/data/mapHeaders/pokemontower4.asm b/data/mapHeaders/pokemontower4.asm new file mode 100755 index 00000000..bf405a76 --- /dev/null +++ b/data/mapHeaders/pokemontower4.asm @@ -0,0 +1,6 @@ +PokemonTower4_h: ; 0x607ea to 0x607f6 (12 bytes) (id=145) + db CEMETERY ; tileset + db POKEMONTOWER_4_HEIGHT, POKEMONTOWER_4_WIDTH ; dimensions (y, x) + dw PokemonTower4Blocks, PokemonTower4TextPointers, PokemonTower4Script ; blocks, texts, scripts + db $00 ; connections + dw PokemonTower4Object ; objects diff --git a/data/mapHeaders/pokemontower5.asm b/data/mapHeaders/pokemontower5.asm new file mode 100755 index 00000000..662c32d2 --- /dev/null +++ b/data/mapHeaders/pokemontower5.asm @@ -0,0 +1,6 @@ +PokemonTower5_h: ; 0x60926 to 0x60932 (12 bytes) (id=146) + db CEMETERY ; tileset + db POKEMONTOWER_5_HEIGHT, POKEMONTOWER_5_WIDTH ; dimensions (y, x) + dw PokemonTower5Blocks, PokemonTower5TextPointers, PokemonTower5Script ; blocks, texts, scripts + db $00 ; connections + dw PokemonTower5Object ; objects diff --git a/data/mapHeaders/pokemontower6.asm b/data/mapHeaders/pokemontower6.asm new file mode 100755 index 00000000..a6d0ff9d --- /dev/null +++ b/data/mapHeaders/pokemontower6.asm @@ -0,0 +1,6 @@ +PokemonTower6_h: ; 0x60ae3 to 0x60aef (12 bytes) (id=147) + db CEMETERY ; tileset + db POKEMONTOWER_6_HEIGHT, POKEMONTOWER_6_WIDTH ; dimensions (y, x) + dw PokemonTower6Blocks, PokemonTower6TextPointers, PokemonTower6Script ; blocks, texts, scripts + db $00 ; connections + dw PokemonTower6Object ; objects diff --git a/data/mapHeaders/pokemontower7.asm b/data/mapHeaders/pokemontower7.asm new file mode 100755 index 00000000..c366006b --- /dev/null +++ b/data/mapHeaders/pokemontower7.asm @@ -0,0 +1,6 @@ +PokemonTower7_h: ; 0x60cf9 to 0x60d05 (12 bytes) (id=148) + db CEMETERY ; tileset + db POKEMONTOWER_7_HEIGHT, POKEMONTOWER_7_WIDTH ; dimensions (y, x) + dw PokemonTower7Blocks, PokemonTower7TextPointers, PokemonTower7Script ; blocks, texts, scripts + db $00 ; connections + dw PokemonTower7Object ; objects diff --git a/data/mapHeaders/powerplant.asm b/data/mapHeaders/powerplant.asm new file mode 100755 index 00000000..36c07d3f --- /dev/null +++ b/data/mapHeaders/powerplant.asm @@ -0,0 +1,6 @@ +PowerPlant_h: ; 0x1e2ba to 0x1e2c6 (12 bytes) (bank=7) (id=83) + db FACILITY ; tileset + db POWER_PLANT_HEIGHT, POWER_PLANT_WIDTH ; dimensions (y, x) + dw PowerPlantBlocks, PowerPlantTextPointers, PowerPlantScript ; blocks, texts, scripts + db $00 ; connections + dw PowerPlantObject ; objects diff --git a/data/mapHeaders/redshouse1f.asm b/data/mapHeaders/redshouse1f.asm new file mode 100755 index 00000000..02dcc082 --- /dev/null +++ b/data/mapHeaders/redshouse1f.asm @@ -0,0 +1,6 @@ +RedsHouse1F_h: ; 4815c (12:415c) + db REDS_HOUSE_1 ; tileset + db REDS_HOUSE_1F_HEIGHT, REDS_HOUSE_1F_WIDTH ; dimensions + dw RedsHouse1FBlocks, RedsHouse1FTextPointers, RedsHouse1FScript + db 0 ; no connections + dw RedsHouse1FObject diff --git a/data/mapHeaders/redshouse2f.asm b/data/mapHeaders/redshouse2f.asm new file mode 100755 index 00000000..6b72d7db --- /dev/null +++ b/data/mapHeaders/redshouse2f.asm @@ -0,0 +1,6 @@ +RedsHouse2F_h: ; 5c0a4 (17:40a4) + db REDS_HOUSE_2 ; tileset + db REDS_HOUSE_2F_HEIGHT, REDS_HOUSE_2F_WIDTH ; dimensions + dw RedsHouse2FBlocks, RedsHouse2FTextPointers, RedsHouse2FScript + db $00 ; no connections + dw RedsHouse2FObject diff --git a/data/mapHeaders/rockethideout1.asm b/data/mapHeaders/rockethideout1.asm new file mode 100755 index 00000000..9af33f1d --- /dev/null +++ b/data/mapHeaders/rockethideout1.asm @@ -0,0 +1,6 @@ +RocketHideout1_h: ; 0x44bbe to 0x44bca (12 bytes) (bank=11) (id=199) + db FACILITY ; tileset + db ROCKET_HIDEOUT_1_HEIGHT, ROCKET_HIDEOUT_1_WIDTH ; dimensions (y, x) + dw RocketHideout1Blocks, RocketHideout1TextPointers, RocketHideout1Script ; blocks, texts, scripts + db $00 ; connections + dw RocketHideout1Object ; objects diff --git a/data/mapHeaders/rockethideout2.asm b/data/mapHeaders/rockethideout2.asm new file mode 100755 index 00000000..b4629ccb --- /dev/null +++ b/data/mapHeaders/rockethideout2.asm @@ -0,0 +1,6 @@ +RocketHideout2_h: ; 0x44e1b to 0x44e27 (12 bytes) (bank=11) (id=200) + db FACILITY ; tileset + db ROCKET_HIDEOUT_2_HEIGHT, ROCKET_HIDEOUT_2_WIDTH ; dimensions (y, x) + dw RocketHideout2Blocks, RocketHideout2TextPointers, RocketHideout2Script ; blocks, texts, scripts + db $00 ; connections + dw RocketHideout2Object ; objects diff --git a/data/mapHeaders/rockethideout3.asm b/data/mapHeaders/rockethideout3.asm new file mode 100755 index 00000000..1ec94195 --- /dev/null +++ b/data/mapHeaders/rockethideout3.asm @@ -0,0 +1,6 @@ +RocketHideout3_h: ; 0x45219 to 0x45225 (12 bytes) (bank=11) (id=201) + db FACILITY ; tileset + db ROCKET_HIDEOUT_3_HEIGHT, ROCKET_HIDEOUT_3_WIDTH ; dimensions (y, x) + dw RocketHideout3Blocks, RocketHideout3TextPointers, RocketHideout3Script ; blocks, texts, scripts + db $00 ; connections + dw RocketHideout3Object ; objects diff --git a/data/mapHeaders/rockethideout4.asm b/data/mapHeaders/rockethideout4.asm new file mode 100755 index 00000000..9ee9ec58 --- /dev/null +++ b/data/mapHeaders/rockethideout4.asm @@ -0,0 +1,6 @@ +RocketHideout4_h: ; 0x45451 to 0x4545d (12 bytes) (bank=11) (id=202) + db FACILITY ; tileset + db ROCKET_HIDEOUT_4_HEIGHT, ROCKET_HIDEOUT_4_WIDTH ; dimensions (y, x) + dw RocketHideout4Blocks, RocketHideout4TextPointers, RocketHideout4Script ; blocks, texts, scripts + db $00 ; connections + dw RocketHideout4Object ; objects diff --git a/data/mapHeaders/rockethideoutelevator.asm b/data/mapHeaders/rockethideoutelevator.asm new file mode 100755 index 00000000..209c2ba8 --- /dev/null +++ b/data/mapHeaders/rockethideoutelevator.asm @@ -0,0 +1,6 @@ +RocketHideoutElevator_h: ; 0x45704 to 0x45710 (12 bytes) (bank=11) (id=203) + db LOBBY ; tileset + db ROCKET_HIDEOUT_ELEVATOR_HEIGHT, ROCKET_HIDEOUT_ELEVATOR_WIDTH ; dimensions (y, x) + dw RocketHideoutElevatorBlocks, RocketHideoutElevatorTextPointers, RocketHideoutElevatorScript ; blocks, texts, scripts + db $00 ; connections + dw RocketHideoutElevatorObject ; objects diff --git a/data/mapHeaders/rocktunnel1.asm b/data/mapHeaders/rocktunnel1.asm new file mode 100755 index 00000000..cc734b28 --- /dev/null +++ b/data/mapHeaders/rocktunnel1.asm @@ -0,0 +1,6 @@ +RockTunnel1_h: ; 0x444d0 to 0x444dc (12 bytes) (bank=11) (id=82) + db CAVERN ; tileset + db ROCK_TUNNEL_1_HEIGHT, ROCK_TUNNEL_1_WIDTH ; dimensions (y, x) + dw RockTunnel1Blocks, RockTunnel1TextPointers, RockTunnel1Script ; blocks, texts, scripts + db $00 ; connections + dw RockTunnel1Object ; objects diff --git a/data/mapHeaders/rocktunnel2.asm b/data/mapHeaders/rocktunnel2.asm new file mode 100755 index 00000000..ec43cddc --- /dev/null +++ b/data/mapHeaders/rocktunnel2.asm @@ -0,0 +1,6 @@ +RockTunnel2_h: ; 0x45fdf to 0x45feb (12 bytes) (bank=11) (id=232) + db CAVERN ; tileset + db ROCK_TUNNEL_2_HEIGHT, ROCK_TUNNEL_2_WIDTH ; dimensions (y, x) + dw RockTunnel2Blocks, RockTunnel2TextPointers, RockTunnel2Script ; blocks, texts, scripts + db $00 ; connections + dw RockTunnel2Object ; objects diff --git a/data/mapHeaders/rocktunnelpokecenter.asm b/data/mapHeaders/rocktunnelpokecenter.asm new file mode 100755 index 00000000..390cc20e --- /dev/null +++ b/data/mapHeaders/rocktunnelpokecenter.asm @@ -0,0 +1,6 @@ +RockTunnelPokecenter_h: ; 0x493ae to 0x493ba (12 bytes) (id=81) + db POKECENTER ; tileset + db ROCK_TUNNEL_POKECENTER_HEIGHT, ROCK_TUNNEL_POKECENTER_WIDTH ; dimensions (y, x) + dw RockTunnelPokecenterBlocks, RockTunnelPokecenterTextPointers, RockTunnelPokecenterScript ; blocks, texts, scripts + db $00 ; connections + dw RockTunnelPokecenterObject ; objects diff --git a/data/mapHeaders/route1.asm b/data/mapHeaders/route1.asm new file mode 100755 index 00000000..cd849504 --- /dev/null +++ b/data/mapHeaders/route1.asm @@ -0,0 +1,8 @@ +Route1_h: ; 0x1c0c3 to 0x1c0e5 (34 bytes) (bank=7) (id=12) + db OVERWORLD ; tileset + db ROUTE_1_HEIGHT, ROUTE_1_WIDTH ; dimensions (y, x) + dw Route1Blocks, Route1TextPointers, Route1Script ; blocks, texts, scripts + db NORTH | SOUTH ; connections + NORTH_MAP_CONNECTION VIRIDIAN_CITY, VIRIDIAN_CITY_WIDTH, VIRIDIAN_CITY_HEIGHT, -3, 2, VIRIDIAN_CITY_WIDTH - 4, ViridianCityBlocks + SOUTH_MAP_CONNECTION PALLET_TOWN, PALLET_TOWN_WIDTH, 0, 0, PALLET_TOWN_WIDTH, PalletTownBlocks, ROUTE_1_WIDTH, ROUTE_1_HEIGHT + dw Route1Object ; objects diff --git a/data/mapHeaders/route10.asm b/data/mapHeaders/route10.asm new file mode 100755 index 00000000..9d41ff76 --- /dev/null +++ b/data/mapHeaders/route10.asm @@ -0,0 +1,8 @@ +Route10_h: ; 0x582d4 to 0x582f6 (34 bytes) (id=21) + db OVERWORLD ; tileset + db ROUTE_10_HEIGHT, ROUTE_10_WIDTH ; dimensions (y, x) + dw Route10Blocks, Route10TextPointers, Route10Script ; blocks, texts, scripts + db SOUTH | WEST ; connections + SOUTH_MAP_CONNECTION LAVENDER_TOWN, LAVENDER_TOWN_WIDTH, 0, 0, LAVENDER_TOWN_WIDTH, LavenderTownBlocks, ROUTE_10_WIDTH, ROUTE_10_HEIGHT + WEST_MAP_CONNECTION ROUTE_9, ROUTE_9_WIDTH, 0, 0, ROUTE_9_HEIGHT, Route9Blocks, ROUTE_10_WIDTH + dw Route10Object ; objects diff --git a/data/mapHeaders/route11.asm b/data/mapHeaders/route11.asm new file mode 100755 index 00000000..7ab3a478 --- /dev/null +++ b/data/mapHeaders/route11.asm @@ -0,0 +1,8 @@ +Route11_h: ; 0x584be to 0x584e0 (34 bytes) (id=22) + db OVERWORLD ; tileset + db ROUTE_11_HEIGHT, ROUTE_11_WIDTH ; dimensions (y, x) + dw Route11Blocks, Route11TextPointers, Route11Script ; blocks, texts, scripts + db WEST | EAST ; connections + WEST_MAP_CONNECTION VERMILION_CITY, VERMILION_CITY_WIDTH, -3, 1, VERMILION_CITY_HEIGHT - 3, VermilionCityBlocks, ROUTE_11_WIDTH + EAST_MAP_CONNECTION ROUTE_12, ROUTE_12_WIDTH, -3, 24, ROUTE_12_HEIGHT - 39, Route12Blocks, ROUTE_11_WIDTH + dw Route11Object ; objects diff --git a/data/mapHeaders/route11gate.asm b/data/mapHeaders/route11gate.asm new file mode 100755 index 00000000..56b9381c --- /dev/null +++ b/data/mapHeaders/route11gate.asm @@ -0,0 +1,6 @@ +Route11Gate_h: ; 0x49400 to 0x4940c (12 bytes) (id=84) + db GATE ; tileset + db ROUTE_11_GATE_1F_HEIGHT, ROUTE_11_GATE_1F_WIDTH ; dimensions (y, x) + dw Route11GateBlocks, Route11GateTextPointers, Route11GateScript ; blocks, texts, scripts + db $00 ; connections + dw Route11GateObject ; objects diff --git a/data/mapHeaders/route11gateupstairs.asm b/data/mapHeaders/route11gateupstairs.asm new file mode 100755 index 00000000..3428de6a --- /dev/null +++ b/data/mapHeaders/route11gateupstairs.asm @@ -0,0 +1,6 @@ +Route11GateUpstairs_h: ; 0x49448 to 0x49454 (12 bytes) (id=86) + db GATE ; tileset + db ROUTE_11_GATE_2F_HEIGHT, ROUTE_11_GATE_2F_WIDTH ; dimensions (y, x) + dw Route11GateUpstairsBlocks, Route11GateUpstairsTextPointers, Route11GateUpstairsScript ; blocks, texts, scripts + db $00 ; connections + dw Route11GateUpstairsObject ; objects diff --git a/data/mapHeaders/route12.asm b/data/mapHeaders/route12.asm new file mode 100755 index 00000000..44e9e731 --- /dev/null +++ b/data/mapHeaders/route12.asm @@ -0,0 +1,9 @@ +Route12_h: ; 0x5866d to 0x5869a (45 bytes) (id=23) + db OVERWORLD ; tileset + db ROUTE_12_HEIGHT, ROUTE_12_WIDTH ; dimensions (y, x) + dw Route12Blocks, Route12TextPointers, Route12Script ; blocks, texts, scripts + db NORTH | SOUTH | WEST ; connections + NORTH_MAP_CONNECTION LAVENDER_TOWN, LAVENDER_TOWN_WIDTH, LAVENDER_TOWN_HEIGHT, 0, 0, LAVENDER_TOWN_WIDTH, LavenderTownBlocks + SOUTH_MAP_CONNECTION ROUTE_13, ROUTE_13_WIDTH, -3, 17, ROUTE_13_WIDTH - 17, Route13Blocks, ROUTE_12_WIDTH, ROUTE_12_HEIGHT + WEST_MAP_CONNECTION ROUTE_11, ROUTE_11_WIDTH, 27, 0, ROUTE_11_HEIGHT, Route11Blocks, ROUTE_12_WIDTH + dw Route12Object ; objects diff --git a/data/mapHeaders/route12gate.asm b/data/mapHeaders/route12gate.asm new file mode 100755 index 00000000..0afcf06b --- /dev/null +++ b/data/mapHeaders/route12gate.asm @@ -0,0 +1,6 @@ +Route12Gate_h: ; 0x494f8 to 0x49504 (12 bytes) (id=87) + db GATE ; tileset + db ROUTE_12_GATE_1F_HEIGHT, ROUTE_12_GATE_1F_WIDTH ; dimensions (y, x) + dw Route12GateBlocks, Route12GateTextPointers, Route12GateScript ; blocks, texts, scripts + db $00 ; connections + dw Route12GateObject ; objects diff --git a/data/mapHeaders/route12gateupstairs.asm b/data/mapHeaders/route12gateupstairs.asm new file mode 100755 index 00000000..acad7e9f --- /dev/null +++ b/data/mapHeaders/route12gateupstairs.asm @@ -0,0 +1,6 @@ +Route12GateUpstairs_h: ; 0x49554 to 0x49560 (12 bytes) (id=195) + db GATE ; tileset + db ROUTE_12_GATE_2F_HEIGHT, ROUTE_12_GATE_2F_WIDTH ; dimensions (y, x) + dw Route12GateUpstairsBlocks, Route12GateUpstairsTextPointers, Route12GateUpstairsScript ; blocks, texts, scripts + db $00 ; connections + dw Route12GateUpstairsObject ; objects diff --git a/data/mapHeaders/route12house.asm b/data/mapHeaders/route12house.asm new file mode 100755 index 00000000..0116270c --- /dev/null +++ b/data/mapHeaders/route12house.asm @@ -0,0 +1,6 @@ +Route12House_h: ; 0x56473 to 0x5647f (12 bytes) (id=189) + db HOUSE ; tileset + db ROUTE_12_HOUSE_HEIGHT, ROUTE_12_HOUSE_WIDTH ; dimensions (y, x) + dw Route12HouseBlocks, Route12HouseTextPointers, Route12HouseScript ; blocks, texts, scripts + db $00 ; connections + dw Route12HouseObject ; objects diff --git a/data/mapHeaders/route13.asm b/data/mapHeaders/route13.asm new file mode 100755 index 00000000..7720e9b7 --- /dev/null +++ b/data/mapHeaders/route13.asm @@ -0,0 +1,8 @@ +Route13_h: ; 0x5480c to 0x5482e (34 bytes) (id=24) + db OVERWORLD ; tileset + db ROUTE_13_HEIGHT, ROUTE_13_WIDTH ; dimensions (y, x) + dw Route13Blocks, Route13TextPointers, Route13Script ; blocks, texts, scripts + db NORTH | WEST ; connections + NORTH_MAP_CONNECTION ROUTE_12, ROUTE_12_WIDTH, ROUTE_12_HEIGHT, 20, 0, ROUTE_12_WIDTH, Route12Blocks + WEST_MAP_CONNECTION ROUTE_14, ROUTE_14_WIDTH, 0, 0, ROUTE_14_HEIGHT - 15, Route14Blocks, ROUTE_13_WIDTH + dw Route13Object ; objects diff --git a/data/mapHeaders/route14.asm b/data/mapHeaders/route14.asm new file mode 100755 index 00000000..1ae75932 --- /dev/null +++ b/data/mapHeaders/route14.asm @@ -0,0 +1,8 @@ +Route14_h: ; 0x54999 to 0x549bb (34 bytes) (id=25) + db OVERWORLD ; tileset + db ROUTE_14_HEIGHT, ROUTE_14_WIDTH ; dimensions (y, x) + dw Route14Blocks, Route14TextPointers, Route14Script ; blocks, texts, scripts + db WEST | EAST ; connections + WEST_MAP_CONNECTION ROUTE_15, ROUTE_15_WIDTH, 18, 0, ROUTE_15_HEIGHT, Route15Blocks, ROUTE_14_WIDTH + EAST_MAP_CONNECTION ROUTE_13, ROUTE_13_WIDTH, 0, 0, ROUTE_13_HEIGHT, Route13Blocks, ROUTE_14_WIDTH + dw Route14Object ; objects diff --git a/data/mapHeaders/route15.asm b/data/mapHeaders/route15.asm new file mode 100755 index 00000000..579dada0 --- /dev/null +++ b/data/mapHeaders/route15.asm @@ -0,0 +1,8 @@ +Route15_h: ; 0x5892c to 0x5894e (34 bytes) (id=26) + db OVERWORLD ; tileset + db ROUTE_15_HEIGHT, ROUTE_15_WIDTH ; dimensions (y, x) + dw Route15Blocks, Route15TextPointers, Route15Script ; blocks, texts, scripts + db WEST | EAST ; connections + WEST_MAP_CONNECTION FUCHSIA_CITY, FUCHSIA_CITY_WIDTH, -3, 1, FUCHSIA_CITY_HEIGHT - 3, FuchsiaCityBlocks, ROUTE_15_WIDTH + EAST_MAP_CONNECTION ROUTE_14, ROUTE_14_WIDTH, -3, 15, ROUTE_14_HEIGHT - 15, Route14Blocks, ROUTE_15_WIDTH + dw Route15Object ; objects diff --git a/data/mapHeaders/route15gate.asm b/data/mapHeaders/route15gate.asm new file mode 100755 index 00000000..55ee5cc9 --- /dev/null +++ b/data/mapHeaders/route15gate.asm @@ -0,0 +1,6 @@ +Route15Gate_h: ; 0x495f6 to 0x49602 (12 bytes) (id=184) + db GATE ; tileset + db ROUTE_15_GATE_1F_HEIGHT, ROUTE_15_GATE_1F_WIDTH ; dimensions (y, x) + dw Route15GateBlocks, Route15GateTextPointers, Route15GateScript ; blocks, texts, scripts + db $00 ; connections + dw Route15GateObject ; objects diff --git a/data/mapHeaders/route15gateupstairs.asm b/data/mapHeaders/route15gateupstairs.asm new file mode 100755 index 00000000..0687ab28 --- /dev/null +++ b/data/mapHeaders/route15gateupstairs.asm @@ -0,0 +1,6 @@ +Route15GateUpstairs_h: ; 4963e (12:563e) + db GATE ; tileset + db ROUTE_15_GATE_2F_HEIGHT, ROUTE_15_GATE_2F_WIDTH ; dimensions (y, x) + dw Route15GateUpstairsBlocks, Route15GateUpstairsTextPointers, Route15GateUpstairsScript ; blocks, texts, scripts + db $00 ; connections + dw Route15GateUpstairsObject ; objects diff --git a/data/mapHeaders/route16.asm b/data/mapHeaders/route16.asm new file mode 100755 index 00000000..4f1d8325 --- /dev/null +++ b/data/mapHeaders/route16.asm @@ -0,0 +1,8 @@ +Route16_h: ; 0x58ada to 0x58afc (34 bytes) (id=27) + db OVERWORLD ; tileset + db ROUTE_16_HEIGHT, ROUTE_16_WIDTH ; dimensions (y, x) + dw Route16Blocks, Route16TextPointers, Route16Script ; blocks, texts, scripts + db SOUTH | EAST ; connections + SOUTH_MAP_CONNECTION ROUTE_17, ROUTE_17_WIDTH, 0, 0, ROUTE_17_WIDTH, Route17Blocks, ROUTE_16_WIDTH, ROUTE_16_HEIGHT + EAST_MAP_CONNECTION CELADON_CITY, CELADON_CITY_WIDTH, -3, 1, CELADON_CITY_HEIGHT - 3, CeladonCityBlocks, ROUTE_16_WIDTH + dw Route16Object ; objects diff --git a/data/mapHeaders/route16gate.asm b/data/mapHeaders/route16gate.asm new file mode 100755 index 00000000..a155125e --- /dev/null +++ b/data/mapHeaders/route16gate.asm @@ -0,0 +1,6 @@ +Route16Gate_h: ; 0x496b2 to 0x496be (12 bytes) (id=186) + db GATE ; tileset + db ROUTE_16_GATE_1F_HEIGHT, ROUTE_16_GATE_1F_WIDTH ; dimensions (y, x) + dw Route16GateBlocks, Route16GateTextPointers, Route16GateScript ; blocks, texts, scripts + db $00 ; connections + dw Route16GateObject ; objects diff --git a/data/mapHeaders/route16gateupstairs.asm b/data/mapHeaders/route16gateupstairs.asm new file mode 100755 index 00000000..878c4eca --- /dev/null +++ b/data/mapHeaders/route16gateupstairs.asm @@ -0,0 +1,6 @@ +Route16GateUpstairs_h: ; 0x497ff to 0x4980b (12 bytes) (id=187) + db GATE ; tileset + db ROUTE_16_GATE_2F_HEIGHT, ROUTE_16_GATE_2F_WIDTH ; dimensions (y, x) + dw Route16GateUpstairsBlocks, Route16GateUpstairsTextPointers, Route16GateUpstairsScript ; blocks, texts, scripts + db $00 ; connections + dw Route16GateUpstairsObject ; objects diff --git a/data/mapHeaders/route16house.asm b/data/mapHeaders/route16house.asm new file mode 100755 index 00000000..c3649b84 --- /dev/null +++ b/data/mapHeaders/route16house.asm @@ -0,0 +1,6 @@ +Route16House_h: ; 0x1e5ec to 0x1e5f8 (12 bytes) (bank=7) (id=188) + db HOUSE ; tileset + db ROUTE_16_HOUSE_HEIGHT, ROUTE_16_HOUSE_WIDTH ; dimensions (y, x) + dw Route16HouseBlocks, Route16HouseTextPointers, Route16HouseScript ; blocks, texts, scripts + db $00 ; connections + dw Route16HouseObject ; objects diff --git a/data/mapHeaders/route17.asm b/data/mapHeaders/route17.asm new file mode 100755 index 00000000..4f7f2d33 --- /dev/null +++ b/data/mapHeaders/route17.asm @@ -0,0 +1,8 @@ +Route17_h: ; 0x54b20 to 0x54b42 (34 bytes) (id=28) + db OVERWORLD ; tileset + db ROUTE_17_HEIGHT, ROUTE_17_WIDTH ; dimensions (y, x) + dw Route17Blocks, Route17TextPointers, Route17Script ; blocks, texts, scripts + db NORTH | SOUTH ; connections + NORTH_MAP_CONNECTION ROUTE_16, ROUTE_16_WIDTH, ROUTE_16_HEIGHT, 0, 0, ROUTE_16_WIDTH - 7, Route16Blocks + SOUTH_MAP_CONNECTION ROUTE_18, ROUTE_18_WIDTH, 0, 0, ROUTE_18_WIDTH - 12, Route18Blocks, ROUTE_17_WIDTH, ROUTE_17_HEIGHT + dw Route17Object ; objects diff --git a/data/mapHeaders/route18.asm b/data/mapHeaders/route18.asm new file mode 100755 index 00000000..d37ebcf9 --- /dev/null +++ b/data/mapHeaders/route18.asm @@ -0,0 +1,8 @@ +Route18_h: ; 0x58c38 to 0x58c5a (34 bytes) (id=29) + db OVERWORLD ; tileset + db ROUTE_18_HEIGHT, ROUTE_18_WIDTH ; dimensions (y, x) + dw Route18Blocks, Route18TextPointers, Route18Script ; blocks, texts, scripts + db NORTH | EAST ; connections + NORTH_MAP_CONNECTION ROUTE_17, ROUTE_17_WIDTH, ROUTE_17_HEIGHT, 0, 0, ROUTE_17_WIDTH, Route17Blocks + EAST_MAP_CONNECTION FUCHSIA_CITY, FUCHSIA_CITY_WIDTH, -3, 1, FUCHSIA_CITY_HEIGHT - 3, FuchsiaCityBlocks, ROUTE_18_WIDTH + dw Route18Object ; objects diff --git a/data/mapHeaders/route18gate.asm b/data/mapHeaders/route18gate.asm new file mode 100755 index 00000000..a0e463e8 --- /dev/null +++ b/data/mapHeaders/route18gate.asm @@ -0,0 +1,6 @@ +Route18Gate_h: ; 0x4986a to 0x49876 (12 bytes) (id=190) + db GATE ; tileset + db ROUTE_18_GATE_1F_HEIGHT, ROUTE_18_GATE_1F_WIDTH ; dimensions (y, x) + dw Route18GateBlocks, Route18GateTextPointers, Route18GateScript ; blocks, texts, scripts + db $00 ; connections + dw Route18GateObject ; objects diff --git a/data/mapHeaders/route18gateupstairs.asm b/data/mapHeaders/route18gateupstairs.asm new file mode 100755 index 00000000..2043c2ef --- /dev/null +++ b/data/mapHeaders/route18gateupstairs.asm @@ -0,0 +1,6 @@ +Route18GateUpstairs_h: ; 0x49969 to 0x49975 (12 bytes) (id=191) + db GATE ; tileset + db ROUTE_18_GATE_2F_HEIGHT, ROUTE_18_GATE_2F_WIDTH ; dimensions (y, x) + dw Route18GateUpstairsBlocks, Route18GateUpstairsTextPointers, Route18GateUpstairsScript ; blocks, texts, scripts + db $00 ; connections + dw Route18GateUpstairsObject ; objects diff --git a/data/mapHeaders/route19.asm b/data/mapHeaders/route19.asm new file mode 100755 index 00000000..f1185425 --- /dev/null +++ b/data/mapHeaders/route19.asm @@ -0,0 +1,8 @@ +Route19_h: ; 0x54e78 to 0x54e9a (34 bytes) (id=30) + db OVERWORLD ; tileset + db ROUTE_19_HEIGHT, ROUTE_19_WIDTH ; dimensions (y, x) + dw Route19Blocks, Route19TextPointers, Route19Script ; blocks, texts, scripts + db NORTH | WEST ; connections + NORTH_MAP_CONNECTION FUCHSIA_CITY, FUCHSIA_CITY_WIDTH, FUCHSIA_CITY_HEIGHT, -3, 2, FUCHSIA_CITY_WIDTH - 4, FuchsiaCityBlocks + WEST_MAP_CONNECTION ROUTE_20, ROUTE_20_WIDTH, 18, 0, ROUTE_20_HEIGHT, Route20Blocks, ROUTE_19_WIDTH + dw Route19Object ; objects diff --git a/data/mapHeaders/route2.asm b/data/mapHeaders/route2.asm new file mode 100755 index 00000000..28db1a1b --- /dev/null +++ b/data/mapHeaders/route2.asm @@ -0,0 +1,8 @@ +Route2_h: ; 54000 (15:4000) + db 00 ; Tileset + db ROUTE_2_HEIGHT,ROUTE_2_WIDTH ;Height,Width blocks (1 block = 4x4 tiles) + dw Route2Blocks, Route2TextPointers, Route2Script + db NORTH | SOUTH ;Connection Byte + NORTH_MAP_CONNECTION PEWTER_CITY, PEWTER_CITY_WIDTH, PEWTER_CITY_HEIGHT, -3, 2, PEWTER_CITY_WIDTH - 4, PewterCityBlocks + SOUTH_MAP_CONNECTION VIRIDIAN_CITY, VIRIDIAN_CITY_WIDTH, -3, 2, VIRIDIAN_CITY_WIDTH - 4, ViridianCityBlocks, ROUTE_2_WIDTH, ROUTE_2_HEIGHT + dw Route2Object ;Object Data Pointer diff --git a/data/mapHeaders/route20.asm b/data/mapHeaders/route20.asm new file mode 100755 index 00000000..4f96906f --- /dev/null +++ b/data/mapHeaders/route20.asm @@ -0,0 +1,8 @@ +Route20_h: ; 0x500f1 to 0x50113 (34 bytes) (id=31) + db OVERWORLD ; tileset + db ROUTE_20_HEIGHT, ROUTE_20_WIDTH ; dimensions (y, x) + dw Route20Blocks, Route20TextPointers, Route20Script ; blocks, texts, scripts + db WEST | EAST ; connections + WEST_MAP_CONNECTION CINNABAR_ISLAND, CINNABAR_ISLAND_WIDTH, 0, 0, CINNABAR_ISLAND_HEIGHT, CinnabarIslandBlocks, ROUTE_20_WIDTH + EAST_MAP_CONNECTION ROUTE_19, ROUTE_19_WIDTH, -3, 15, ROUTE_19_HEIGHT - 15, Route19Blocks, ROUTE_20_WIDTH + dw Route20Object ; objects diff --git a/data/mapHeaders/route21.asm b/data/mapHeaders/route21.asm new file mode 100755 index 00000000..f3160814 --- /dev/null +++ b/data/mapHeaders/route21.asm @@ -0,0 +1,8 @@ +Route21_h: ; 0x54fff to 0x55021 (34 bytes) (id=32) + db OVERWORLD ; tileset + db ROUTE_21_HEIGHT, ROUTE_21_WIDTH ; dimensions (y, x) + dw Route21Blocks, Route21TextPointers, Route21Script ; blocks, texts, scripts + db NORTH | SOUTH ; connections + NORTH_MAP_CONNECTION PALLET_TOWN, PALLET_TOWN_WIDTH, PALLET_TOWN_HEIGHT, 0, 0, PALLET_TOWN_WIDTH, PalletTownBlocks + SOUTH_MAP_CONNECTION CINNABAR_ISLAND, CINNABAR_ISLAND_WIDTH, 0, 0, CINNABAR_ISLAND_WIDTH, CinnabarIslandBlocks, ROUTE_21_WIDTH, ROUTE_21_HEIGHT + dw Route21Object ; objects diff --git a/data/mapHeaders/route22.asm b/data/mapHeaders/route22.asm new file mode 100755 index 00000000..566a5cbe --- /dev/null +++ b/data/mapHeaders/route22.asm @@ -0,0 +1,8 @@ +Route22_h: ; 0x50000 to 0x50022 (34 bytes) (id=33) + db OVERWORLD ; tileset + db ROUTE_22_HEIGHT, ROUTE_22_WIDTH ; dimensions (y, x) + dw Route22Blocks, Route22TextPointers, Route22Script ; blocks, texts, scripts + db NORTH | EAST ; connections + NORTH_MAP_CONNECTION ROUTE_23, ROUTE_23_WIDTH, ROUTE_23_HEIGHT, 0, 0, ROUTE_23_WIDTH, Route23Blocks + EAST_MAP_CONNECTION VIRIDIAN_CITY, VIRIDIAN_CITY_WIDTH, -3, 1, VIRIDIAN_CITY_HEIGHT - 3, ViridianCityBlocks, ROUTE_22_WIDTH + dw Route22Object ; objects diff --git a/data/mapHeaders/route22gate.asm b/data/mapHeaders/route22gate.asm new file mode 100755 index 00000000..3daa30a3 --- /dev/null +++ b/data/mapHeaders/route22gate.asm @@ -0,0 +1,6 @@ +Route22Gate_h: ; 0x1e677 to 0x1e683 (12 bytes) (bank=7) (id=193) + db GATE ; tileset + db ROUTE_22_GATE_HEIGHT, ROUTE_22_GATE_WIDTH ; dimensions (y, x) + dw Route22GateBlocks, Route22GateTextPointers, Route22GateScript ; blocks, texts, scripts + db $00 ; connections + dw Route22GateObject ; objects diff --git a/data/mapHeaders/route23.asm b/data/mapHeaders/route23.asm new file mode 100755 index 00000000..2e469096 --- /dev/null +++ b/data/mapHeaders/route23.asm @@ -0,0 +1,8 @@ +Route23_h: ; 0x5033f to 0x50361 (34 bytes) (id=34) + db PLATEAU ; tileset + db ROUTE_23_HEIGHT, ROUTE_23_WIDTH ; dimensions (y, x) + dw Route23Blocks, Route23TextPointers, Route23Script ; blocks, texts, scripts + db NORTH | SOUTH ; connections + NORTH_MAP_CONNECTION INDIGO_PLATEAU, INDIGO_PLATEAU_WIDTH, INDIGO_PLATEAU_HEIGHT, 0, 0, INDIGO_PLATEAU_WIDTH, IndigoPlateauBlocks + SOUTH_MAP_CONNECTION ROUTE_22, ROUTE_22_WIDTH, 0, 0, ROUTE_22_WIDTH - 7, Route22Blocks, ROUTE_23_WIDTH, ROUTE_23_HEIGHT + dw Route23Object ; objects diff --git a/data/mapHeaders/route24.asm b/data/mapHeaders/route24.asm new file mode 100755 index 00000000..3194be91 --- /dev/null +++ b/data/mapHeaders/route24.asm @@ -0,0 +1,8 @@ +Route24_h: ; 0x50682 to 0x506a4 (34 bytes) (id=35) + db OVERWORLD ; tileset + db ROUTE_24_HEIGHT, ROUTE_24_WIDTH ; dimensions (y, x) + dw Route24Blocks, Route24TextPointers, Route24Script ; blocks, texts, scripts + db SOUTH | EAST ; connections + SOUTH_MAP_CONNECTION CERULEAN_CITY, CERULEAN_CITY_WIDTH, -3, 2, CERULEAN_CITY_WIDTH - 4, CeruleanCityBlocks, ROUTE_24_WIDTH, ROUTE_24_HEIGHT + EAST_MAP_CONNECTION ROUTE_25, ROUTE_25_WIDTH, 0, 0, ROUTE_25_HEIGHT, Route25Blocks, ROUTE_24_WIDTH + dw Route24Object ; objects diff --git a/data/mapHeaders/route25.asm b/data/mapHeaders/route25.asm new file mode 100755 index 00000000..2e86f6d5 --- /dev/null +++ b/data/mapHeaders/route25.asm @@ -0,0 +1,7 @@ +Route25_h: ; 0x5079b to 0x507b2 (23 bytes) (id=36) + db OVERWORLD ; tileset + db ROUTE_25_HEIGHT, ROUTE_25_WIDTH ; dimensions (y, x) + dw Route25Blocks, Route25TextPointers, Route25Script ; blocks, texts, scripts + db WEST ; connections + WEST_MAP_CONNECTION ROUTE_24, ROUTE_24_WIDTH, 0, 0, ROUTE_24_HEIGHT - 6, Route24Blocks, ROUTE_25_WIDTH + dw Route25Object ; objects diff --git a/data/mapHeaders/route2gate.asm b/data/mapHeaders/route2gate.asm new file mode 100755 index 00000000..343c0f09 --- /dev/null +++ b/data/mapHeaders/route2gate.asm @@ -0,0 +1,6 @@ +Route2Gate_h: ; 0x5d5c8 to 0x5d5d4 (12 bytes) (id=49) + db GATE ; tileset + db ROUTE_2_GATE_HEIGHT, ROUTE_2_GATE_WIDTH ; dimensions (y, x) + dw Route2GateBlocks, Route2GateTextPointers, Route2GateScript ; blocks, texts, scripts + db $00 ; connections + dw Route2GateObject ; objects diff --git a/data/mapHeaders/route2house.asm b/data/mapHeaders/route2house.asm new file mode 100755 index 00000000..f99a365d --- /dev/null +++ b/data/mapHeaders/route2house.asm @@ -0,0 +1,6 @@ +Route2House_h: ; 0x1dee1 to 0x1deed (12 bytes) (bank=7) (id=48) + db HOUSE ; tileset + db ROUTE_2_HOUSE_HEIGHT, ROUTE_2_HOUSE_WIDTH ; dimensions (y, x) + dw Route2HouseBlocks, Route2HouseTextPointers, Route2HouseScript ; blocks, texts, scripts + db $00 ; connections + dw Route2HouseObject ; objects diff --git a/data/mapHeaders/route3.asm b/data/mapHeaders/route3.asm new file mode 100755 index 00000000..942e9e54 --- /dev/null +++ b/data/mapHeaders/route3.asm @@ -0,0 +1,8 @@ +Route3_h: ; 0x541e6 to 0x54208 (34 bytes) (id=14) + db OVERWORLD ; tileset + db ROUTE_3_HEIGHT, ROUTE_3_WIDTH ; dimensions (y, x) + dw Route3Blocks, Route3TextPointers, Route3Script ; blocks, texts, scripts + db NORTH | WEST ; connections + NORTH_MAP_CONNECTION ROUTE_4, ROUTE_4_WIDTH, ROUTE_4_HEIGHT, 25, 0, ROUTE_4_WIDTH - 32, Route4Blocks + WEST_MAP_CONNECTION PEWTER_CITY, PEWTER_CITY_WIDTH, -3, 1, PEWTER_CITY_HEIGHT - 3, PewterCityBlocks, ROUTE_3_WIDTH + dw Route3Object ; objects diff --git a/data/mapHeaders/route4.asm b/data/mapHeaders/route4.asm new file mode 100755 index 00000000..c2fe6379 --- /dev/null +++ b/data/mapHeaders/route4.asm @@ -0,0 +1,8 @@ +Route4_h: ; 0x54390 to 0x543b2 (34 bytes) (id=15) + db OVERWORLD ; tileset + db ROUTE_4_HEIGHT, ROUTE_4_WIDTH ; dimensions (y, x) + dw Route4Blocks, Route4TextPointers, Route4Script; blocks, texts, scripts + db SOUTH | EAST ; connections + SOUTH_MAP_CONNECTION ROUTE_3, ROUTE_3_WIDTH, -3, 22, ROUTE_3_WIDTH - 22, Route3Blocks, ROUTE_4_WIDTH, ROUTE_4_HEIGHT + EAST_MAP_CONNECTION CERULEAN_CITY, CERULEAN_CITY_WIDTH, -3, 1, CERULEAN_CITY_HEIGHT - 3, CeruleanCityBlocks, ROUTE_4_WIDTH + dw Route4Object ; objects diff --git a/data/mapHeaders/route5.asm b/data/mapHeaders/route5.asm new file mode 100755 index 00000000..148eeb8d --- /dev/null +++ b/data/mapHeaders/route5.asm @@ -0,0 +1,8 @@ +Route5_h: ; 0x54581 to 0x545a3 (34 bytes) (id=16) + db OVERWORLD ; tileset + db ROUTE_5_HEIGHT, ROUTE_5_WIDTH ; dimensions (y, x) + dw Route5Blocks, Route5TextPointers, Route5Script ; blocks, texts, scripts + db NORTH | SOUTH ; connections + NORTH_MAP_CONNECTION CERULEAN_CITY, CERULEAN_CITY_WIDTH, CERULEAN_CITY_HEIGHT, -3, 2, CERULEAN_CITY_WIDTH - 4, CeruleanCityBlocks + SOUTH_MAP_CONNECTION SAFFRON_CITY, SAFFRON_CITY_WIDTH, -3, 2, SAFFRON_CITY_WIDTH - 4, SaffronCityBlocks, ROUTE_5_WIDTH, ROUTE_5_HEIGHT + dw Route5Object ; objects diff --git a/data/mapHeaders/route5gate.asm b/data/mapHeaders/route5gate.asm new file mode 100755 index 00000000..79a44874 --- /dev/null +++ b/data/mapHeaders/route5gate.asm @@ -0,0 +1,6 @@ +Route5Gate_h: ; 0x1df27 to 0x1df33 (12 bytes) (bank=7) (id=70) + db GATE ; tileset + db ROUTE_5_GATE_HEIGHT, ROUTE_5_GATE_WIDTH ; dimensions (y, x) + dw Route5GateBlocks, Route5GateTextPointers, Route5GateScript ; blocks, texts, scripts + db $00 ; connections + dw Route5GateObject ; objects diff --git a/data/mapHeaders/route6.asm b/data/mapHeaders/route6.asm new file mode 100755 index 00000000..b6f5fe70 --- /dev/null +++ b/data/mapHeaders/route6.asm @@ -0,0 +1,8 @@ +Route6_h: ; 0x58000 to 0x58022 (34 bytes) (id=17) + db OVERWORLD ; tileset + db ROUTE_6_HEIGHT, ROUTE_6_WIDTH ; dimensions (y, x) + dw Route6Blocks, Route6TextPointers, Route6Script ; blocks, texts, scripts + db NORTH | SOUTH ; connections + NORTH_MAP_CONNECTION SAFFRON_CITY, SAFFRON_CITY_WIDTH, SAFFRON_CITY_HEIGHT, -3, 2, SAFFRON_CITY_WIDTH - 4, SaffronCityBlocks + SOUTH_MAP_CONNECTION VERMILION_CITY, VERMILION_CITY_WIDTH, -3, 2, VERMILION_CITY_WIDTH - 4, VermilionCityBlocks, ROUTE_6_WIDTH, ROUTE_6_HEIGHT + dw Route6Object ; objects diff --git a/data/mapHeaders/route6gate.asm b/data/mapHeaders/route6gate.asm new file mode 100755 index 00000000..3bafb448 --- /dev/null +++ b/data/mapHeaders/route6gate.asm @@ -0,0 +1,6 @@ +Route6Gate_h: ; 0x1e031 to 0x1e03d (12 bytes) (bank=7) (id=73) + db GATE ; tileset + db ROUTE_6_GATE_HEIGHT, ROUTE_6_GATE_WIDTH ; dimensions (y, x) + dw Route6GateBlocks, Route6GateTextPointers, Route6GateScript ; blocks, texts, scripts + db $00 ; connections + dw Route6GateObject ; objects diff --git a/data/mapHeaders/route7.asm b/data/mapHeaders/route7.asm new file mode 100755 index 00000000..b90004e6 --- /dev/null +++ b/data/mapHeaders/route7.asm @@ -0,0 +1,8 @@ +Route7_h: ; 0x48000 to 0x48022 (34 bytes) (bank=12) (id=18) + db OVERWORLD ; tileset + db ROUTE_7_HEIGHT, ROUTE_7_WIDTH ; dimensions (y, x) + dw Route7Blocks, Route7TextPointers, Route7Script ; blocks, texts, scripts + db WEST | EAST ; connections + WEST_MAP_CONNECTION CELADON_CITY, CELADON_CITY_WIDTH, -3, 1, CELADON_CITY_HEIGHT - 3, CeladonCityBlocks, ROUTE_7_WIDTH + EAST_MAP_CONNECTION SAFFRON_CITY, SAFFRON_CITY_WIDTH, -3, 1, SAFFRON_CITY_HEIGHT - 3, SaffronCityBlocks, ROUTE_7_WIDTH + dw Route7Object ; objects diff --git a/data/mapHeaders/route7gate.asm b/data/mapHeaders/route7gate.asm new file mode 100755 index 00000000..b5d26672 --- /dev/null +++ b/data/mapHeaders/route7gate.asm @@ -0,0 +1,6 @@ +Route7Gate_h: ; 0x1e0f4 to 0x1e100 (12 bytes) (bank=7) (id=76) + db GATE ; tileset + db ROUTE_7_GATE_HEIGHT, ROUTE_7_GATE_WIDTH ; dimensions (y, x) + dw Route7GateBlocks, Route7GateTextPointers, Route7GateScript ; blocks, texts, scripts + db $00 ; connections + dw Route7GateObject ; objects diff --git a/data/mapHeaders/route8.asm b/data/mapHeaders/route8.asm new file mode 100755 index 00000000..dd9a717b --- /dev/null +++ b/data/mapHeaders/route8.asm @@ -0,0 +1,8 @@ +Route8_h: ; 0x5812d to 0x5814f (34 bytes) (id=19) + db OVERWORLD ; tileset + db ROUTE_8_HEIGHT, ROUTE_8_WIDTH ; dimensions (y, x) + dw Route8Blocks, Route8TextPointers, Route8Script ; blocks, texts, scripts + db WEST | EAST ; connections + WEST_MAP_CONNECTION SAFFRON_CITY, SAFFRON_CITY_WIDTH, -3, 1, SAFFRON_CITY_HEIGHT - 3, SaffronCityBlocks, ROUTE_8_WIDTH + EAST_MAP_CONNECTION LAVENDER_TOWN, LAVENDER_TOWN_WIDTH, 0, 0, LAVENDER_TOWN_HEIGHT, LavenderTownBlocks, ROUTE_8_WIDTH + dw Route8Object ; objects diff --git a/data/mapHeaders/route8gate.asm b/data/mapHeaders/route8gate.asm new file mode 100755 index 00000000..2bd505a2 --- /dev/null +++ b/data/mapHeaders/route8gate.asm @@ -0,0 +1,6 @@ +Route8Gate_h: ; 0x1e1bb to 0x1e1c7 (12 bytes) (bank=7) (id=79) + db GATE ; tileset + db ROUTE_8_GATE_HEIGHT, ROUTE_8_GATE_WIDTH ; dimensions (y, x) + dw Route8GateBlocks, Route8GateTextPointers, Route8GateScript ; blocks, texts, scripts + db $00 ; connections + dw Route8GateObject ; objects diff --git a/data/mapHeaders/route9.asm b/data/mapHeaders/route9.asm new file mode 100755 index 00000000..f6cbd9af --- /dev/null +++ b/data/mapHeaders/route9.asm @@ -0,0 +1,8 @@ +Route9_h: ; 0x54686 to 0x546a8 (34 bytes) (id=20) + db OVERWORLD ; tileset + db ROUTE_9_HEIGHT, ROUTE_9_WIDTH ; dimensions (y, x) + dw Route9Blocks, Route9TextPointers, Route9Script ; blocks, texts, scripts + db WEST | EAST ; connections + WEST_MAP_CONNECTION CERULEAN_CITY, CERULEAN_CITY_WIDTH, -3, 1, CERULEAN_CITY_HEIGHT - 3, CeruleanCityBlocks, ROUTE_9_WIDTH + EAST_MAP_CONNECTION ROUTE_10, ROUTE_10_WIDTH, 0, 0, ROUTE_10_HEIGHT - 24, Route10Blocks, ROUTE_9_WIDTH + dw Route9Object ; objects diff --git a/data/mapHeaders/safarizonecenter.asm b/data/mapHeaders/safarizonecenter.asm new file mode 100755 index 00000000..a1388fa1 --- /dev/null +++ b/data/mapHeaders/safarizonecenter.asm @@ -0,0 +1,6 @@ +SafariZoneCenter_h: ; 0x45ba6 to 0x45bb2 (12 bytes) (bank=11) (id=220) + db FOREST ; tileset + db SAFARI_ZONE_CENTER_HEIGHT, SAFARI_ZONE_CENTER_WIDTH ; dimensions (y, x) + dw SafariZoneCenterBlocks, SafariZoneCenterTextPointers, SafariZoneCenterScript ; blocks, texts, scripts + db $00 ; connections + dw SafariZoneCenterObject ; objects diff --git a/data/mapHeaders/safarizoneeast.asm b/data/mapHeaders/safarizoneeast.asm new file mode 100755 index 00000000..dec95d2a --- /dev/null +++ b/data/mapHeaders/safarizoneeast.asm @@ -0,0 +1,6 @@ +SafariZoneEast_h: ; 0x4585f to 0x4586b (12 bytes) (bank=11) (id=217) + db FOREST ; tileset + db SAFARI_ZONE_EAST_HEIGHT, SAFARI_ZONE_EAST_WIDTH ; dimensions (y, x) + dw SafariZoneEastBlocks, SafariZoneEastTextPointers, SafariZoneEastScript ; blocks, texts, scripts + db $00 ; connections + dw SafariZoneEastObject ; objects diff --git a/data/mapHeaders/safarizoneentrance.asm b/data/mapHeaders/safarizoneentrance.asm new file mode 100755 index 00000000..e7340c4a --- /dev/null +++ b/data/mapHeaders/safarizoneentrance.asm @@ -0,0 +1,6 @@ +SafariZoneEntrance_h: ; 0x751c1 to 0x751cd (12 bytes) (id=156) + db GATE ; tileset + db SAFARI_ZONE_ENTRANCE_HEIGHT, SAFARI_ZONE_ENTRANCE_WIDTH ; dimensions (y, x) + dw SafariZoneEntranceBlocks, SafariZoneEntranceTextPointers, SafariZoneEntranceScript ; blocks, texts, scripts + db $00 ; connections + dw SafariZoneEntranceObject ; objects diff --git a/data/mapHeaders/safarizonenorth.asm b/data/mapHeaders/safarizonenorth.asm new file mode 100755 index 00000000..310ead4c --- /dev/null +++ b/data/mapHeaders/safarizonenorth.asm @@ -0,0 +1,6 @@ +SafariZoneNorth_h: ; 0x4599f to 0x459ab (12 bytes) (bank=11) (id=218) + db FOREST ; tileset + db SAFARI_ZONE_NORTH_HEIGHT, SAFARI_ZONE_NORTH_WIDTH ; dimensions (y, x) + dw SafariZoneNorthBlocks, SafariZoneNorthTextPointers, SafariZoneNorthScript ; blocks, texts, scripts + db $00 ; connections + dw SafariZoneNorthObject ; objects diff --git a/data/mapHeaders/safarizoneresthouse1.asm b/data/mapHeaders/safarizoneresthouse1.asm new file mode 100755 index 00000000..f788b6c4 --- /dev/null +++ b/data/mapHeaders/safarizoneresthouse1.asm @@ -0,0 +1,6 @@ +SafariZoneRestHouse1_h: ; 0x45ce1 to 0x45ced (12 bytes) (bank=11) (id=221) + db GATE ; tileset + db SAFARI_ZONE_REST_HOUSE_1_HEIGHT, SAFARI_ZONE_REST_HOUSE_1_WIDTH ; dimensions (y, x) + dw SafariZoneRestHouse1Blocks, SafariZoneRestHouse1TextPointers, SafariZoneRestHouse1Script ; blocks, texts, scripts + db $00 ; connections + dw SafariZoneRestHouse1Object ; objects diff --git a/data/mapHeaders/safarizoneresthouse2.asm b/data/mapHeaders/safarizoneresthouse2.asm new file mode 100755 index 00000000..5ccdb947 --- /dev/null +++ b/data/mapHeaders/safarizoneresthouse2.asm @@ -0,0 +1,6 @@ +SafariZoneRestHouse2_h: ; 0x45d1e to 0x45d2a (12 bytes) (bank=11) (id=223) + db GATE ; tileset + db SAFARI_ZONE_REST_HOUSE_2_HEIGHT, SAFARI_ZONE_REST_HOUSE_2_WIDTH ; dimensions (y, x) + dw SafariZoneRestHouse2Blocks, SafariZoneRestHouse2TextPointers, SafariZoneRestHouse2Script ; blocks, texts, scripts + db $00 ; connections + dw SafariZoneRestHouse2Object ; objects diff --git a/data/mapHeaders/safarizoneresthouse3.asm b/data/mapHeaders/safarizoneresthouse3.asm new file mode 100755 index 00000000..acf87854 --- /dev/null +++ b/data/mapHeaders/safarizoneresthouse3.asm @@ -0,0 +1,6 @@ +SafariZoneRestHouse3_h: ; 0x45d69 to 0x45d75 (12 bytes) (bank=11) (id=224) + db GATE ; tileset + db SAFARI_ZONE_REST_HOUSE_3_HEIGHT, SAFARI_ZONE_REST_HOUSE_3_WIDTH ; dimensions (y, x) + dw SafariZoneRestHouse3Blocks, SafariZoneRestHouse3TextPointers, SafariZoneRestHouse3Script ; blocks, texts, scripts + db $00 ; connections + dw SafariZoneRestHouse3Object ; objects diff --git a/data/mapHeaders/safarizoneresthouse4.asm b/data/mapHeaders/safarizoneresthouse4.asm new file mode 100755 index 00000000..8a1ad30f --- /dev/null +++ b/data/mapHeaders/safarizoneresthouse4.asm @@ -0,0 +1,6 @@ +SafariZoneRestHouse4_h: ; 0x45db4 to 0x45dc0 (12 bytes) (bank=11) (id=225) + db GATE ; tileset + db SAFARI_ZONE_REST_HOUSE_4_HEIGHT, SAFARI_ZONE_REST_HOUSE_4_WIDTH ; dimensions (y, x) + dw SafariZoneRestHouse4Blocks, SafariZoneRestHouse4TextPointers, SafariZoneRestHouse4Script ; blocks, texts, scripts + db $00 ; connections + dw SafariZoneRestHouse4Object ; objects diff --git a/data/mapHeaders/safarizonesecrethouse.asm b/data/mapHeaders/safarizonesecrethouse.asm new file mode 100755 index 00000000..7fa71fe4 --- /dev/null +++ b/data/mapHeaders/safarizonesecrethouse.asm @@ -0,0 +1,6 @@ +SafariZoneSecretHouse_h: ; 0x4a30b to 0x4a317 (12 bytes) (id=222) + db LAB ; tileset + db SAFARI_ZONE_SECRET_HOUSE_HEIGHT, SAFARI_ZONE_SECRET_HOUSE_WIDTH ; dimensions (y, x) + dw SafariZoneSecretHouseBlocks, SafariZoneSecretHouseTextPointers, SafariZoneSecretHouseScript ; blocks, texts, scripts + db $00 ; connections + dw SafariZoneSecretHouseObject ; objects diff --git a/data/mapHeaders/safarizonewest.asm b/data/mapHeaders/safarizonewest.asm new file mode 100755 index 00000000..590ae21d --- /dev/null +++ b/data/mapHeaders/safarizonewest.asm @@ -0,0 +1,6 @@ +SafariZoneWest_h: ; 0x4a1a9 to 0x4a1b5 (12 bytes) (id=219) + db FOREST ; tileset + db SAFARI_ZONE_WEST_HEIGHT, SAFARI_ZONE_WEST_WIDTH ; dimensions (y, x) + dw SafariZoneWestBlocks, SafariZoneWestTextPointers, SafariZoneWestScript ; blocks, texts, scripts + db $00 ; connections + dw SafariZoneWestObject ; objects diff --git a/data/mapHeaders/saffroncity.asm b/data/mapHeaders/saffroncity.asm new file mode 100755 index 00000000..4c1d2d61 --- /dev/null +++ b/data/mapHeaders/saffroncity.asm @@ -0,0 +1,10 @@ +SaffronCity_h: ; 0x509a4 to 0x509dc (56 bytes) (id=10) + db OVERWORLD ; tileset + db SAFFRON_CITY_HEIGHT, SAFFRON_CITY_WIDTH ; dimensions (y, x) + dw SaffronCityBlocks, SaffronCityTextPointers, SaffronCityScript ; blocks, texts, scripts + db NORTH | SOUTH | WEST | EAST ; connections + NORTH_MAP_CONNECTION ROUTE_5, ROUTE_5_WIDTH, ROUTE_5_HEIGHT, 5, 0, ROUTE_5_WIDTH, Route5Blocks + SOUTH_MAP_CONNECTION ROUTE_6, ROUTE_6_WIDTH, 5, 0, ROUTE_6_WIDTH, Route6Blocks, SAFFRON_CITY_WIDTH, SAFFRON_CITY_HEIGHT + WEST_MAP_CONNECTION ROUTE_7, ROUTE_7_WIDTH, 4, 0, ROUTE_7_HEIGHT, Route7Blocks, SAFFRON_CITY_WIDTH + EAST_MAP_CONNECTION ROUTE_8, ROUTE_8_WIDTH, 4, 0, ROUTE_8_HEIGHT, Route8Blocks, SAFFRON_CITY_WIDTH + dw SaffronCityObject ; objects diff --git a/data/mapHeaders/saffrongym.asm b/data/mapHeaders/saffrongym.asm new file mode 100755 index 00000000..23601c75 --- /dev/null +++ b/data/mapHeaders/saffrongym.asm @@ -0,0 +1,6 @@ +SaffronGym_h: ; 0x5d001 to 0x5d00d (12 bytes) (id=178) + db FACILITY ; tileset + db SAFFRON_GYM_HEIGHT, SAFFRON_GYM_WIDTH ; dimensions (y, x) + dw SaffronGymBlocks, SaffronGymTextPointers, SaffronGymScript ; blocks, texts, scripts + db $00 ; connections + dw SaffronGymObject ; objects diff --git a/data/mapHeaders/saffronhouse1.asm b/data/mapHeaders/saffronhouse1.asm new file mode 100755 index 00000000..71cd5395 --- /dev/null +++ b/data/mapHeaders/saffronhouse1.asm @@ -0,0 +1,6 @@ +SaffronHouse1_h: ; 0x1ddd1 to 0x1dddd (12 bytes) (bank=7) (id=179) + db HOUSE ; tileset + db SAFFRON_HOUSE_1_HEIGHT, SAFFRON_HOUSE_1_WIDTH ; dimensions (y, x) + dw SaffronHouse1Blocks, SaffronHouse1TextPointers, SaffronHouse1Script ; blocks, texts, scripts + db $00 ; connections + dw SaffronHouse1Object ; objects diff --git a/data/mapHeaders/saffronhouse2.asm b/data/mapHeaders/saffronhouse2.asm new file mode 100755 index 00000000..a91bcaec --- /dev/null +++ b/data/mapHeaders/saffronhouse2.asm @@ -0,0 +1,6 @@ +SaffronHouse2_h: ; 0x1de30 to 0x1de3c (12 bytes) (bank=7) (id=183) + db HOUSE ; tileset + db SAFFRON_HOUSE_2_HEIGHT, SAFFRON_HOUSE_2_WIDTH ; dimensions (y, x) + dw SaffronHouse2Blocks, SaffronHouse2TextPointers, SaffronHouse2Script ; blocks, texts, scripts + db $00 ; connections + dw SaffronHouse2Object ; objects diff --git a/data/mapHeaders/saffronmart.asm b/data/mapHeaders/saffronmart.asm new file mode 100755 index 00000000..0c6fc1d8 --- /dev/null +++ b/data/mapHeaders/saffronmart.asm @@ -0,0 +1,6 @@ +SaffronMart_h: ; 0x5d3fd to 0x5d409 (12 bytes) (id=180) + db MART ; tileset + db SAFFRON_MART_HEIGHT, SAFFRON_MART_WIDTH ; dimensions (y, x) + dw SaffronMartBlocks, SaffronMartTextPointers, SaffronMartScript ; blocks, texts, scripts + db $00 ; connections + dw SaffronMartObject ; objects diff --git a/data/mapHeaders/saffronpokecenter.asm b/data/mapHeaders/saffronpokecenter.asm new file mode 100755 index 00000000..341b415a --- /dev/null +++ b/data/mapHeaders/saffronpokecenter.asm @@ -0,0 +1,6 @@ +SaffronPokecenter_h: ; 0x5d529 to 0x5d535 (12 bytes) (id=182) + db POKECENTER ; tileset + db SAFFRON_POKECENTER_HEIGHT, SAFFRON_POKECENTER_WIDTH ; dimensions (y, x) + dw SaffronPokecenterBlocks, SaffronPokecenterTextPointers, SaffronPokecenterScript ; blocks, texts, scripts + db $00 ; connections + dw SaffronPokecenterObject ; objects diff --git a/data/mapHeaders/school.asm b/data/mapHeaders/school.asm new file mode 100755 index 00000000..336ce26e --- /dev/null +++ b/data/mapHeaders/school.asm @@ -0,0 +1,6 @@ +School_h: ; 0x1d540 to 0x1d54c (12 bytes) (bank=7) (id=43) + db HOUSE ; tileset + db VIRIDIAN_SCHOOL_HEIGHT, VIRIDIAN_SCHOOL_WIDTH ; dimensions (y, x) + dw SchoolBlocks, SchoolTextPointers, SchoolScript ; blocks, texts, scripts + db $00 ; connections + dw SchoolObject ; objects diff --git a/data/mapHeaders/seafoamislands1.asm b/data/mapHeaders/seafoamislands1.asm new file mode 100755 index 00000000..8cb1c847 --- /dev/null +++ b/data/mapHeaders/seafoamislands1.asm @@ -0,0 +1,6 @@ +SeafoamIslands1_h: ; 0x447dd to 0x447e9 (12 bytes) (bank=11) (id=192) + db CAVERN ; tileset + db SEAFOAM_ISLANDS_1_HEIGHT, SEAFOAM_ISLANDS_1_WIDTH ; dimensions (y, x) + dw SeafoamIslands1Blocks, SeafoamIslands1TextPointers, SeafoamIslands1Script ; blocks, texts, scripts + db $00 ; connections + dw SeafoamIslands1Object ; objects diff --git a/data/mapHeaders/seafoamislands2.asm b/data/mapHeaders/seafoamislands2.asm new file mode 100755 index 00000000..9edbcc72 --- /dev/null +++ b/data/mapHeaders/seafoamislands2.asm @@ -0,0 +1,6 @@ +SeafoamIslands2_h: ; 0x46309 to 0x46315 (12 bytes) (bank=11) (id=159) + db CAVERN ; tileset + db SEAFOAM_ISLANDS_2_HEIGHT, SEAFOAM_ISLANDS_2_WIDTH ; dimensions (y, x) + dw SeafoamIslands2Blocks, SeafoamIslands2TextPointers, SeafoamIslands2Script ; blocks, texts, scripts + db $00 ; connections + dw SeafoamIslands2Object ; objects diff --git a/data/mapHeaders/seafoamislands3.asm b/data/mapHeaders/seafoamislands3.asm new file mode 100755 index 00000000..6ff1d8ff --- /dev/null +++ b/data/mapHeaders/seafoamislands3.asm @@ -0,0 +1,6 @@ +SeafoamIslands3_h: ; 0x46445 to 0x46451 (12 bytes) (bank=11) (id=160) + db CAVERN ; tileset + db SEAFOAM_ISLANDS_3_HEIGHT, SEAFOAM_ISLANDS_3_WIDTH ; dimensions (y, x) + dw SeafoamIslands3Blocks, SeafoamIslands3TextPointers, SeafoamIslands3Script ; blocks, texts, scripts + db $00 ; connections + dw SeafoamIslands3Object ; objects diff --git a/data/mapHeaders/seafoamislands4.asm b/data/mapHeaders/seafoamislands4.asm new file mode 100755 index 00000000..d3b6fca0 --- /dev/null +++ b/data/mapHeaders/seafoamislands4.asm @@ -0,0 +1,6 @@ +SeafoamIslands4_h: ; 0x46581 to 0x4658d (12 bytes) (bank=11) (id=161) + db CAVERN ; tileset + db SEAFOAM_ISLANDS_4_HEIGHT, SEAFOAM_ISLANDS_4_WIDTH ; dimensions (y, x) + dw SeafoamIslands4Blocks, SeafoamIslands4TextPointers, SeafoamIslands4Script ; blocks, texts, scripts + db $00 ; connections + dw SeafoamIslands4Object ; objects diff --git a/data/mapHeaders/seafoamislands5.asm b/data/mapHeaders/seafoamislands5.asm new file mode 100755 index 00000000..330b1d0e --- /dev/null +++ b/data/mapHeaders/seafoamislands5.asm @@ -0,0 +1,6 @@ +SeafoamIslands5_h: ; 0x4678d to 0x46799 (12 bytes) (bank=11) (id=162) + db CAVERN ; tileset + db SEAFOAM_ISLANDS_5_HEIGHT, SEAFOAM_ISLANDS_5_WIDTH ; dimensions (y, x) + dw SeafoamIslands5Blocks, SeafoamIslands5TextPointers, SeafoamIslands5Script ; blocks, texts, scripts + db $00 ; connections + dw SeafoamIslands5Object ; objects diff --git a/data/mapHeaders/silphco1.asm b/data/mapHeaders/silphco1.asm new file mode 100755 index 00000000..eecb49b6 --- /dev/null +++ b/data/mapHeaders/silphco1.asm @@ -0,0 +1,6 @@ +SilphCo1_h: ; 0x5d442 to 0x5d44e (12 bytes) (id=181) + db FACILITY ; tileset + db SILPH_CO_1F_HEIGHT, SILPH_CO_1F_WIDTH ; dimensions (y, x) + dw SilphCo1Blocks, SilphCo1TextPointers, SilphCo1Script ; blocks, texts, scripts + db $00 ; connections + dw SilphCo1Object ; objects diff --git a/data/mapHeaders/silphco10.asm b/data/mapHeaders/silphco10.asm new file mode 100755 index 00000000..efef2235 --- /dev/null +++ b/data/mapHeaders/silphco10.asm @@ -0,0 +1,6 @@ +SilphCo10_h: ; 0x5a12d to 0x5a139 (12 bytes) (id=234) + db FACILITY ; tileset + db SILPH_CO_10F_HEIGHT, SILPH_CO_10F_WIDTH ; dimensions (y, x) + dw SilphCo10Blocks, SilphCo10TextPointers, SilphCo10Script ; blocks, texts, scripts + db $00 ; connections + dw SilphCo10Object ; objects diff --git a/data/mapHeaders/silphco11.asm b/data/mapHeaders/silphco11.asm new file mode 100755 index 00000000..829fc9de --- /dev/null +++ b/data/mapHeaders/silphco11.asm @@ -0,0 +1,6 @@ +SilphCo11_h: ; 0x620ee to 0x620fa (12 bytes) (id=235) + db INTERIOR ; tileset + db SILPH_CO_11F_HEIGHT, SILPH_CO_11F_WIDTH ; dimensions (y, x) + dw SilphCo11Blocks, SilphCo11TextPointers, SilphCo11Script ; blocks, texts, scripts + db $00 ; connections + dw SilphCo11Object ; objects diff --git a/data/mapHeaders/silphco2.asm b/data/mapHeaders/silphco2.asm new file mode 100755 index 00000000..1f345127 --- /dev/null +++ b/data/mapHeaders/silphco2.asm @@ -0,0 +1,6 @@ +SilphCo2_h: ; 0x59ce5 to 0x59cf1 (12 bytes) (id=207) + db FACILITY ; tileset + db SILPH_CO_2F_HEIGHT, SILPH_CO_2F_WIDTH ; dimensions (y, x) + dw SilphCo2Blocks, SilphCo2TextPointers, SilphCo2Script ; blocks, texts, scripts + db $00 ; connections + dw SilphCo2Object ; objects diff --git a/data/mapHeaders/silphco3.asm b/data/mapHeaders/silphco3.asm new file mode 100755 index 00000000..56119f41 --- /dev/null +++ b/data/mapHeaders/silphco3.asm @@ -0,0 +1,6 @@ +SilphCo3_h: ; 0x59f4f to 0x59f5b (12 bytes) (id=208) + db FACILITY ; tileset + db SILPH_CO_3F_HEIGHT, SILPH_CO_3F_WIDTH ; dimensions (y, x) + dw SilphCo3Blocks, SilphCo3TextPointers, SilphCo3Script ; blocks, texts, scripts + db $00 ; connections + dw SilphCo3Object ; objects diff --git a/data/mapHeaders/silphco4.asm b/data/mapHeaders/silphco4.asm new file mode 100755 index 00000000..3d6289cf --- /dev/null +++ b/data/mapHeaders/silphco4.asm @@ -0,0 +1,6 @@ +SilphCo4_h: ; 0x19cff to 0x19d0b (12 bytes) (bank=6) (id=209) + db FACILITY ; tileset + db SILPH_CO_4F_HEIGHT, SILPH_CO_4F_WIDTH ; dimensions (y, x) + dw SilphCo4Blocks, SilphCo4TextPointers, SilphCo4Script ; blocks, texts, scripts + db $00 ; connections + dw SilphCo4Object ; objects diff --git a/data/mapHeaders/silphco5.asm b/data/mapHeaders/silphco5.asm new file mode 100755 index 00000000..aa40ca2f --- /dev/null +++ b/data/mapHeaders/silphco5.asm @@ -0,0 +1,6 @@ +SilphCo5_h: ; 0x19f2b to 0x19f37 (12 bytes) (bank=6) (id=210) + db FACILITY ; tileset + db SILPH_CO_5F_HEIGHT, SILPH_CO_5F_WIDTH ; dimensions (y, x) + dw SilphCo5Blocks, SilphCo5TextPointers, SilphCo5Script ; blocks, texts, scripts + db $00 ; connections + dw SilphCo5Object ; objects diff --git a/data/mapHeaders/silphco6.asm b/data/mapHeaders/silphco6.asm new file mode 100755 index 00000000..af9b3d6b --- /dev/null +++ b/data/mapHeaders/silphco6.asm @@ -0,0 +1,6 @@ +SilphCo6_h: ; 0x1a19d to 0x1a1a9 (12 bytes) (bank=6) (id=211) + db FACILITY ; tileset + db SILPH_CO_6F_HEIGHT, SILPH_CO_6F_WIDTH ; dimensions (y, x) + dw SilphCo6Blocks, SilphCo6TextPointers, SilphCo6Script ; blocks, texts, scripts + db $00 ; connections + dw SilphCo6Object ; objects diff --git a/data/mapHeaders/silphco7.asm b/data/mapHeaders/silphco7.asm new file mode 100755 index 00000000..335d3b6b --- /dev/null +++ b/data/mapHeaders/silphco7.asm @@ -0,0 +1,6 @@ +SilphCo7_h: ; 0x51b55 to 0x51b61 (12 bytes) (id=212) + db FACILITY ; tileset + db SILPH_CO_7F_HEIGHT, SILPH_CO_7F_WIDTH ; dimensions (y, x) + dw SilphCo7Blocks, SilphCo7TextPointers, SilphCo7Script ; blocks, texts, scripts + db $00 ; connections + dw SilphCo7Object ; objects diff --git a/data/mapHeaders/silphco8.asm b/data/mapHeaders/silphco8.asm new file mode 100755 index 00000000..31c9617c --- /dev/null +++ b/data/mapHeaders/silphco8.asm @@ -0,0 +1,6 @@ +SilphCo8_h: ; 0x564f8 to 0x56504 (12 bytes) (id=213) + db FACILITY ; tileset + db SILPH_CO_8F_HEIGHT, SILPH_CO_8F_WIDTH ; dimensions (y, x) + dw SilphCo8Blocks, SilphCo8TextPointers, SilphCo8Script ; blocks, texts, scripts + db $00 ; connections + dw SilphCo8Object ; objects diff --git a/data/mapHeaders/silphco9.asm b/data/mapHeaders/silphco9.asm new file mode 100755 index 00000000..1cc8b3f2 --- /dev/null +++ b/data/mapHeaders/silphco9.asm @@ -0,0 +1,6 @@ +SilphCo9_h: ; 0x5d7af to 0x5d7bb (12 bytes) (id=233) + db FACILITY ; tileset + db SILPH_CO_9F_HEIGHT, SILPH_CO_9F_WIDTH ; dimensions (y, x) + dw SilphCo9Blocks, SilphCo9TextPointers, SilphCo9Script ; blocks, texts, scripts + db $00 ; connections + dw SilphCo9Object ; objects diff --git a/data/mapHeaders/silphcoelevator.asm b/data/mapHeaders/silphcoelevator.asm new file mode 100755 index 00000000..b8a59b7a --- /dev/null +++ b/data/mapHeaders/silphcoelevator.asm @@ -0,0 +1,6 @@ +SilphCoElevator_h: ; 0x457b4 to 0x457c0 (12 bytes) (bank=11) (id=236) + db LOBBY ; tileset + db SILPH_CO_ELEVATOR_HEIGHT, SILPH_CO_ELEVATOR_WIDTH ; dimensions (y, x) + dw SilphCoElevatorBlocks, SilphCoElevatorTextPointers, SilphCoElevatorScript ; blocks, texts, scripts + db $00 ; connections + dw SilphCoElevatorObject ; objects diff --git a/data/mapHeaders/ssanne1.asm b/data/mapHeaders/ssanne1.asm new file mode 100755 index 00000000..c31de5d4 --- /dev/null +++ b/data/mapHeaders/ssanne1.asm @@ -0,0 +1,6 @@ +SSAnne1_h: ; 0x61259 to 0x61265 (12 bytes) (id=95) + db SHIP ; tileset + db SS_ANNE_1_HEIGHT, SS_ANNE_1_WIDTH ; dimensions (y, x) + dw SSAnne1Blocks, SSAnne1TextPointers, SSAnne1Script ; blocks, texts, scripts + db $00 ; connections + dw SSAnne1Object ; objects diff --git a/data/mapHeaders/ssanne10.asm b/data/mapHeaders/ssanne10.asm new file mode 100755 index 00000000..e0e5c6a7 --- /dev/null +++ b/data/mapHeaders/ssanne10.asm @@ -0,0 +1,6 @@ +SSAnne10_h: ; 0x61d49 to 0x61d55 (12 bytes) (id=104) + db SHIP ; tileset + db SS_ANNE_10_HEIGHT, SS_ANNE_10_WIDTH ; dimensions (y, x) + dw SSAnne10Blocks, SSAnne10TextPointers, SSAnne10Script ; blocks, texts, scripts + db $00 ; connections + dw SSAnne10Object ; objects diff --git a/data/mapHeaders/ssanne2.asm b/data/mapHeaders/ssanne2.asm new file mode 100755 index 00000000..50ca0562 --- /dev/null +++ b/data/mapHeaders/ssanne2.asm @@ -0,0 +1,6 @@ +SSAnne2_h: ; 0x61393 to 0x6139f (12 bytes) (id=96) + db SHIP ; tileset + db SS_ANNE_2_HEIGHT, SS_ANNE_2_WIDTH ; dimensions (y, x) + dw SSAnne2Blocks, SSAnne2TextPointers, SSAnne2Script ; blocks, texts, scripts + db $00 ; connections + dw SSAnne2Object ; objects diff --git a/data/mapHeaders/ssanne3.asm b/data/mapHeaders/ssanne3.asm new file mode 100755 index 00000000..acde90a2 --- /dev/null +++ b/data/mapHeaders/ssanne3.asm @@ -0,0 +1,6 @@ +SSAnne3_h: ; 0x44926 to 0x44932 (12 bytes) (bank=11) (id=97) + db SHIP ; tileset + db SS_ANNE_3_HEIGHT, SS_ANNE_3_WIDTH ; dimensions (y, x) + dw SSAnne3Blocks, SSAnne3TextPointers, SSAnne3Script ; blocks, texts, scripts + db $00 ; connections + dw SSAnne3Object ; objects diff --git a/data/mapHeaders/ssanne4.asm b/data/mapHeaders/ssanne4.asm new file mode 100755 index 00000000..7f3e9ab2 --- /dev/null +++ b/data/mapHeaders/ssanne4.asm @@ -0,0 +1,6 @@ +SSAnne4_h: ; 0x61622 to 0x6162e (12 bytes) (id=98) + db SHIP ; tileset + db SS_ANNE_4_HEIGHT, SS_ANNE_4_WIDTH ; dimensions (y, x) + dw SSAnne4Blocks, SSAnne4TextPointers, SSAnne4Script ; blocks, texts, scripts + db $00 ; connections + dw SSAnne4Object ; objects diff --git a/data/mapHeaders/ssanne5.asm b/data/mapHeaders/ssanne5.asm new file mode 100755 index 00000000..7da4a6bf --- /dev/null +++ b/data/mapHeaders/ssanne5.asm @@ -0,0 +1,6 @@ +SSAnne5_h: ; 0x616a2 to 0x616ae (12 bytes) (id=99) + db SHIP ; tileset + db SS_ANNE_5_HEIGHT, SS_ANNE_5_WIDTH ; dimensions (y, x) + dw SSAnne5Blocks, SSAnne5TextPointers, SSAnne5Script ; blocks, texts, scripts + db $00 ; connections + dw SSAnne5Object ; objects diff --git a/data/mapHeaders/ssanne6.asm b/data/mapHeaders/ssanne6.asm new file mode 100755 index 00000000..6d27509e --- /dev/null +++ b/data/mapHeaders/ssanne6.asm @@ -0,0 +1,6 @@ +SSAnne6_h: ; 0x617a7 to 0x617b3 (12 bytes) (id=100) + db SHIP ; tileset + db SS_ANNE_6_HEIGHT, SS_ANNE_6_WIDTH ; dimensions (y, x) + dw SSAnne6Blocks, SSAnne6TextPointers, SSAnne6Script ; blocks, texts, scripts + db $00 ; connections + dw SSAnne6Object ; objects diff --git a/data/mapHeaders/ssanne7.asm b/data/mapHeaders/ssanne7.asm new file mode 100755 index 00000000..66da59c0 --- /dev/null +++ b/data/mapHeaders/ssanne7.asm @@ -0,0 +1,6 @@ +SSAnne7_h: ; 0x61889 to 0x61895 (12 bytes) (id=101) + db SHIP ; tileset + db SS_ANNE_7_HEIGHT, SS_ANNE_7_WIDTH ; dimensions (y, x) + dw SSAnne7Blocks, SSAnne7TextPointers, SSAnne7Script ; blocks, texts, scripts + db $00 ; connections + dw SSAnne7Object ; objects diff --git a/data/mapHeaders/ssanne8.asm b/data/mapHeaders/ssanne8.asm new file mode 100755 index 00000000..dcb12993 --- /dev/null +++ b/data/mapHeaders/ssanne8.asm @@ -0,0 +1,6 @@ +SSAnne8_h: ; 0x6196a to 0x61976 (12 bytes) (id=102) + db SHIP ; tileset + db SS_ANNE_8_HEIGHT, SS_ANNE_8_WIDTH ; dimensions (y, x) + dw SSAnne8Blocks, SSAnne8TextPointers, SSAnne8Script ; blocks, texts, scripts + db $00 ; connections + dw SSAnne8Object ; objects diff --git a/data/mapHeaders/ssanne9.asm b/data/mapHeaders/ssanne9.asm new file mode 100755 index 00000000..5a293576 --- /dev/null +++ b/data/mapHeaders/ssanne9.asm @@ -0,0 +1,6 @@ +SSAnne9_h: ; 0x61b3f to 0x61b4b (12 bytes) (id=103) + db SHIP ; tileset + db SS_ANNE_9_HEIGHT, SS_ANNE_9_WIDTH ; dimensions (y, x) + dw SSAnne9Blocks, SSAnne9TextPointers, SSAnne9Script ; blocks, texts, scripts + db $00 ; connections + dw SSAnne9Object ; objects diff --git a/data/mapHeaders/tradecenterm.asm b/data/mapHeaders/tradecenterm.asm new file mode 100755 index 00000000..59eb5095 --- /dev/null +++ b/data/mapHeaders/tradecenterm.asm @@ -0,0 +1,6 @@ +TradeCenterM_h: ; 0x4fd71 to 0x4fd7d (12 bytes) (id=240) + db CLUB ; tileset + db TRADE_CENTER_HEIGHT, TRADE_CENTER_WIDTH ; dimensions (y, x) + dw TradeCenterMBlocks, TradeCenterMTextPointers, TradeCenterMScript ; blocks, texts, scripts + db $00 ; connections + dw TradeCenterMObject ; objects diff --git a/data/mapHeaders/undergroundpathentranceroute5.asm b/data/mapHeaders/undergroundpathentranceroute5.asm new file mode 100755 index 00000000..75e881ba --- /dev/null +++ b/data/mapHeaders/undergroundpathentranceroute5.asm @@ -0,0 +1,6 @@ +UndergroundPathEntranceRoute5_h: ; 0x5d69d to 0x5d6a9 (12 bytes) (id=71) + db GATE ; tileset + db PATH_ENTRANCE_ROUTE_5_HEIGHT, PATH_ENTRANCE_ROUTE_5_WIDTH ; dimensions (y, x) + dw UndergroundPathEntranceRoute5Blocks, UndergroundPathEntranceRoute5TextPointers, UndergroundPathEntranceRoute5Script ; blocks, texts, scripts + db $00 ; connections + dw UndergroundPathEntranceRoute5Object ; objects diff --git a/data/mapHeaders/undergroundpathentranceroute6.asm b/data/mapHeaders/undergroundpathentranceroute6.asm new file mode 100755 index 00000000..91835507 --- /dev/null +++ b/data/mapHeaders/undergroundpathentranceroute6.asm @@ -0,0 +1,6 @@ +UndergroundPathEntranceRoute6_h: ; 0x5d6e3 to 0x5d6ef (12 bytes) (id=74) + db GATE ; tileset + db PATH_ENTRANCE_ROUTE_6_HEIGHT, PATH_ENTRANCE_ROUTE_6_WIDTH ; dimensions (y, x) + dw UndergroundPathEntranceRoute6Blocks, UndergroundPathEntranceRoute6TextPointers, UndergroundPathEntranceRoute6Script ; blocks, texts, scripts + db $00 ; connections + dw UndergroundPathEntranceRoute6Object ; objects diff --git a/data/mapHeaders/undergroundpathentranceroute7.asm b/data/mapHeaders/undergroundpathentranceroute7.asm new file mode 100755 index 00000000..1ad53899 --- /dev/null +++ b/data/mapHeaders/undergroundpathentranceroute7.asm @@ -0,0 +1,6 @@ +UndergroundPathEntranceRoute7_h: ; 0x5d720 to 0x5d72c (12 bytes) (id=77) + db GATE ; tileset + db PATH_ENTRANCE_ROUTE_7_HEIGHT, PATH_ENTRANCE_ROUTE_7_WIDTH ; dimensions (y, x) + dw UndergroundPathEntranceRoute7Blocks, UndergroundPathEntranceRoute7TextPointers, UndergroundPathEntranceRoute7Script ; blocks, texts, scripts + db $00 ; connections + dw UndergroundPathEntranceRoute7Object ; objects diff --git a/data/mapHeaders/undergroundpathentranceroute7copy.asm b/data/mapHeaders/undergroundpathentranceroute7copy.asm new file mode 100755 index 00000000..e5e6cfa0 --- /dev/null +++ b/data/mapHeaders/undergroundpathentranceroute7copy.asm @@ -0,0 +1,6 @@ +UndergroundPathEntranceRoute7Copy_h: ; 5d75d (17:575d) + db GATE ; tileset + db PATH_ENTRANCE_ROUTE_7_HEIGHT, PATH_ENTRANCE_ROUTE_7_WIDTH ; dimensions (y, x) + dw UndergroundPathEntranceRoute7CopyBlocks, UndergroundPathEntranceRoute7CopyTextPointers, UndergroundPathEntranceRoute7CopyScript ; blocks, texts, scripts + db $00 ; connections + dw UndergroundPathEntranceRoute7CopyObject ; objects diff --git a/data/mapHeaders/undergroundpathentranceroute8.asm b/data/mapHeaders/undergroundpathentranceroute8.asm new file mode 100755 index 00000000..ac6fd87d --- /dev/null +++ b/data/mapHeaders/undergroundpathentranceroute8.asm @@ -0,0 +1,6 @@ +UndergroundPathEntranceRoute8_h: ; 0x1e27d to 0x1e289 (12 bytes) (bank=7) (id=80) + db GATE ; tileset + db PATH_ENTRANCE_ROUTE_8_HEIGHT, PATH_ENTRANCE_ROUTE_8_WIDTH ; dimensions (y, x) + dw UndergroundPathEntranceRoute8Blocks, UndergroundPathEntranceRoute8TextPointers, UndergroundPathEntranceRoute8Script ; blocks, texts, scripts + db $00 ; connections + dw UndergroundPathEntranceRoute8Object ; objects diff --git a/data/mapHeaders/undergroundpathns.asm b/data/mapHeaders/undergroundpathns.asm new file mode 100755 index 00000000..78a02053 --- /dev/null +++ b/data/mapHeaders/undergroundpathns.asm @@ -0,0 +1,6 @@ +UndergroundPathNS_h: ; 0x61f1a to 0x61f26 (12 bytes) (id=119) + db UNDERGROUND ; tileset + db UNDERGROUND_PATH_NS_HEIGHT, UNDERGROUND_PATH_NS_WIDTH ; dimensions (y, x) + dw UndergroundPathNSBlocks, UndergroundPathNSTextPointers, UndergroundPathNSScript ; blocks, texts, scripts + db $00 ; connections + dw UndergroundPathNSObject ; objects diff --git a/data/mapHeaders/undergroundpathwe.asm b/data/mapHeaders/undergroundpathwe.asm new file mode 100755 index 00000000..e5561767 --- /dev/null +++ b/data/mapHeaders/undergroundpathwe.asm @@ -0,0 +1,6 @@ +UndergroundPathWE_h: ; 0x61f3e to 0x61f4a (12 bytes) (id=121) + db UNDERGROUND ; tileset + db UNDERGROUND_PATH_WE_HEIGHT, UNDERGROUND_PATH_WE_WIDTH ; dimensions (y, x) + dw UndergroundPathWEBlocks, UndergroundPathWETextPointers, UndergroundPathWEScript ; blocks, texts, scripts + db $00 ; connections + dw UndergroundPathWEObject ; objects diff --git a/data/mapHeaders/unknowndungeon1.asm b/data/mapHeaders/unknowndungeon1.asm new file mode 100755 index 00000000..8bac389a --- /dev/null +++ b/data/mapHeaders/unknowndungeon1.asm @@ -0,0 +1,6 @@ +UnknownDungeon1_h: ; 0x74d00 to 0x74d0c (12 bytes) (id=228) + db CAVERN ; tileset + db UNKNOWN_DUNGEON_1_HEIGHT, UNKNOWN_DUNGEON_1_WIDTH ; dimensions (y, x) + dw UnknownDungeon1Blocks, UnknownDungeon1TextPointers, UnknownDungeon1Script ; blocks, texts, scripts + db $00 ; connections + dw UnknownDungeon1Object ; objects diff --git a/data/mapHeaders/unknowndungeon2.asm b/data/mapHeaders/unknowndungeon2.asm new file mode 100755 index 00000000..0bea5b16 --- /dev/null +++ b/data/mapHeaders/unknowndungeon2.asm @@ -0,0 +1,6 @@ +UnknownDungeon2_h: ; 0x45dff to 0x45e0b (12 bytes) (bank=11) (id=226) + db CAVERN ; tileset + db UNKNOWN_DUNGEON_2_HEIGHT, UNKNOWN_DUNGEON_2_WIDTH ; dimensions (y, x) + dw UnknownDungeon2Blocks, UnknownDungeon2TextPointers, UnknownDungeon2Script ; blocks, texts, scripts + db $00 ; connections + dw UnknownDungeon2Object ; objects diff --git a/data/mapHeaders/unknowndungeon3.asm b/data/mapHeaders/unknowndungeon3.asm new file mode 100755 index 00000000..a29d39dd --- /dev/null +++ b/data/mapHeaders/unknowndungeon3.asm @@ -0,0 +1,6 @@ +UnknownDungeon3_h: ; 0x45ee4 to 0x45ef0 (12 bytes) (bank=11) (id=227) + db CAVERN ; tileset + db UNKNOWN_DUNGEON_3_HEIGHT, UNKNOWN_DUNGEON_3_WIDTH ; dimensions (y, x) + dw UnknownDungeon3Blocks, UnknownDungeon3TextPointers, UnknownDungeon3Script ; blocks, texts, scripts + db $00 ; connections + dw UnknownDungeon3Object ; objects diff --git a/data/mapHeaders/vermilioncity.asm b/data/mapHeaders/vermilioncity.asm new file mode 100755 index 00000000..b7a41967 --- /dev/null +++ b/data/mapHeaders/vermilioncity.asm @@ -0,0 +1,8 @@ +VermilionCity_h: ; 0x18998 to 0x189ba (34 bytes) (bank=6) (id=5) + db OVERWORLD ; tileset + db VERMILION_CITY_HEIGHT, VERMILION_CITY_WIDTH ; dimensions (y, x) + dw VermilionCityBlocks, VermilionCityTextPointers, VermilionCityScript ; blocks, texts, scripts + db NORTH | EAST ; connections + NORTH_MAP_CONNECTION ROUTE_6, ROUTE_6_WIDTH, ROUTE_6_HEIGHT, 5, 0, ROUTE_6_WIDTH, Route6Blocks + EAST_MAP_CONNECTION ROUTE_11, ROUTE_11_WIDTH, 4, 0, ROUTE_11_HEIGHT, Route11Blocks, VERMILION_CITY_WIDTH + dw VermilionCityObject ; objects diff --git a/data/mapHeaders/vermiliondock.asm b/data/mapHeaders/vermiliondock.asm new file mode 100755 index 00000000..d8d2993c --- /dev/null +++ b/data/mapHeaders/vermiliondock.asm @@ -0,0 +1,6 @@ +VermilionDock_h: ; 0x1db46 to 0x1db52 (12 bytes) (bank=7) (id=94) + db SHIP_PORT ; tileset + db VERMILION_DOCK_HEIGHT, VERMILION_DOCK_WIDTH ; dimensions (y, x) + dw VermilionDockBlocks, VermilionDockTextPointers, VermilionDockScript ; blocks, texts, scripts + db $00 ; connections + dw VermilionDockObject ; objects diff --git a/data/mapHeaders/vermiliongym.asm b/data/mapHeaders/vermiliongym.asm new file mode 100755 index 00000000..5627257e --- /dev/null +++ b/data/mapHeaders/vermiliongym.asm @@ -0,0 +1,6 @@ +VermilionGym_h: ; 0x5ca1a to 0x5ca26 (12 bytes) (id=92) + db GYM ; tileset + db VERMILION_GYM_HEIGHT, VERMILION_GYM_WIDTH ; dimensions (y, x) + dw VermilionGymBlocks, VermilionGymTextPointers, VermilionGymScript ; blocks, texts, scripts + db $00 ; connections + dw VermilionGymObject ; objects diff --git a/data/mapHeaders/vermilionhouse1.asm b/data/mapHeaders/vermilionhouse1.asm new file mode 100755 index 00000000..34f99023 --- /dev/null +++ b/data/mapHeaders/vermilionhouse1.asm @@ -0,0 +1,6 @@ +VermilionHouse1_h: ; 0x1daf0 to 0x1dafc (12 bytes) (bank=7) (id=93) + db HOUSE ; tileset + db VERMILION_HOUSE_1_HEIGHT, VERMILION_HOUSE_1_WIDTH ; dimensions (y, x) + dw VermilionHouse1Blocks, VermilionHouse1TextPointers, VermilionHouse1Script ; blocks, texts, scripts + db $00 ; connections + dw VermilionHouse1Object ; objects diff --git a/data/mapHeaders/vermilionhouse2.asm b/data/mapHeaders/vermilionhouse2.asm new file mode 100755 index 00000000..ce810bb4 --- /dev/null +++ b/data/mapHeaders/vermilionhouse2.asm @@ -0,0 +1,6 @@ +VermilionHouse2_h: ; 0x56064 to 0x56070 (12 bytes) (id=163) + db HOUSE ; tileset + db VERMILION_HOUSE_2_HEIGHT, VERMILION_HOUSE_2_WIDTH ; dimensions (y, x) + dw VermilionHouse2Blocks, VermilionHouse2TextPointers, VermilionHouse2Script ; blocks, texts, scripts + db $00 ; connections + dw VermilionHouse2Object ; objects diff --git a/data/mapHeaders/vermilionhouse3.asm b/data/mapHeaders/vermilionhouse3.asm new file mode 100755 index 00000000..62651a4f --- /dev/null +++ b/data/mapHeaders/vermilionhouse3.asm @@ -0,0 +1,6 @@ +VermilionHouse3_h: ; 0x19c06 to 0x19c12 (12 bytes) (bank=6) (id=196) + db HOUSE ; tileset + db VERMILION_HOUSE_3_HEIGHT, VERMILION_HOUSE_3_WIDTH ; dimensions (y, x) + dw VermilionHouse3Blocks, VermilionHouse3TextPointers, VermilionHouse3Script ; blocks, texts, scripts + db $00 ; connections + dw VermilionHouse3Object ; objects diff --git a/data/mapHeaders/vermilionmart.asm b/data/mapHeaders/vermilionmart.asm new file mode 100755 index 00000000..ecf71946 --- /dev/null +++ b/data/mapHeaders/vermilionmart.asm @@ -0,0 +1,6 @@ +VermilionMart_h: ; 0x5c9d5 to 0x5c9e1 (12 bytes) (id=91) + db MART ; tileset + db VERMILION_MART_HEIGHT, VERMILION_MART_WIDTH ; dimensions (y, x) + dw VermilionMartBlocks, VermilionMartTextPointers, VermilionMartScript ; blocks, texts, scripts + db $00 ; connections + dw VermilionMartObject ; objects diff --git a/data/mapHeaders/vermilionpokecenter.asm b/data/mapHeaders/vermilionpokecenter.asm new file mode 100755 index 00000000..6033585f --- /dev/null +++ b/data/mapHeaders/vermilionpokecenter.asm @@ -0,0 +1,6 @@ +VermilionPokecenter_h: ; 0x5c983 to 0x5c98f (12 bytes) (id=89) + db POKECENTER ; tileset + db VERMILION_POKECENTER_HEIGHT, VERMILION_POKECENTER_WIDTH ; dimensions (y, x) + dw VermilionPokecenterBlocks, VermilionPokecenterTextPointers, VermilionPokecenterScript ; blocks, texts, scripts + db $00 ; connections + dw VermilionPokecenterObject ; objects diff --git a/data/mapHeaders/victoryroad1.asm b/data/mapHeaders/victoryroad1.asm new file mode 100755 index 00000000..972d3866 --- /dev/null +++ b/data/mapHeaders/victoryroad1.asm @@ -0,0 +1,6 @@ +VictoryRoad1_h: ; 0x5d9fe to 0x5da0a (12 bytes) (id=108) + db CAVERN ; tileset + db VICTORY_ROAD_1_HEIGHT, VICTORY_ROAD_1_WIDTH ; dimensions (y, x) + dw VictoryRoad1Blocks, VictoryRoad1TextPointers, VictoryRoad1Script ; blocks, texts, scripts + db $00 ; connections + dw VictoryRoad1Object ; objects diff --git a/data/mapHeaders/victoryroad2.asm b/data/mapHeaders/victoryroad2.asm new file mode 100755 index 00000000..3fb24eee --- /dev/null +++ b/data/mapHeaders/victoryroad2.asm @@ -0,0 +1,6 @@ +VictoryRoad2_h: ; 0x51791 to 0x5179d (12 bytes) (id=194) + db CAVERN ; tileset + db VICTORY_ROAD_2_HEIGHT, VICTORY_ROAD_2_WIDTH ; dimensions (y, x) + dw VictoryRoad2Blocks, VictoryRoad2TextPointers, VictoryRoad2Script ; blocks, texts, scripts + db $00 ; connections + dw VictoryRoad2Object ; objects diff --git a/data/mapHeaders/victoryroad3.asm b/data/mapHeaders/victoryroad3.asm new file mode 100755 index 00000000..e35c32c1 --- /dev/null +++ b/data/mapHeaders/victoryroad3.asm @@ -0,0 +1,6 @@ +VictoryRoad3_h: ; 0x44974 to 0x44980 (12 bytes) (bank=11) (id=198) + db CAVERN ; tileset + db VICTORY_ROAD_3_HEIGHT, VICTORY_ROAD_3_WIDTH ; dimensions (y, x) + dw VictoryRoad3Blocks, VictoryRoad3TextPointers, VictoryRoad3Script ; blocks, texts, scripts + db $00 ; connections + dw VictoryRoad3Object ; objects diff --git a/data/mapHeaders/viridiancity.asm b/data/mapHeaders/viridiancity.asm new file mode 100755 index 00000000..96aac7ca --- /dev/null +++ b/data/mapHeaders/viridiancity.asm @@ -0,0 +1,9 @@ +ViridianCity_h: ; 0x18357 to 0x18384 (45 bytes) (bank=6) (id=1) + db OVERWORLD ; tileset + db VIRIDIAN_CITY_HEIGHT, VIRIDIAN_CITY_WIDTH ; dimensions (y, x) + dw ViridianCityBlocks, ViridianCityTextPointers, ViridianCityScript ; blocks, texts, scripts + db NORTH | SOUTH | WEST ; connections + NORTH_MAP_CONNECTION ROUTE_2, ROUTE_2_WIDTH, ROUTE_2_HEIGHT, 5, 0, ROUTE_2_WIDTH, Route2Blocks + SOUTH_MAP_CONNECTION ROUTE_1, ROUTE_1_WIDTH, 5, 0, ROUTE_1_WIDTH, Route1Blocks, VIRIDIAN_CITY_WIDTH, VIRIDIAN_CITY_HEIGHT + WEST_MAP_CONNECTION ROUTE_22, ROUTE_22_WIDTH, 4, 0, ROUTE_22_HEIGHT, Route22Blocks, VIRIDIAN_CITY_WIDTH + dw ViridianCityObject ; objects diff --git a/data/mapHeaders/viridianforest.asm b/data/mapHeaders/viridianforest.asm new file mode 100755 index 00000000..43433c9e --- /dev/null +++ b/data/mapHeaders/viridianforest.asm @@ -0,0 +1,6 @@ +ViridianForest_h: ; 0x61101 to 0x6110d (12 bytes) (id=51) + db FOREST ; tileset + db VIRIDIAN_FOREST_HEIGHT, VIRIDIAN_FOREST_WIDTH ; dimensions (y, x) + dw ViridianForestBlocks, ViridianForestTextPointers, ViridianForestScript ; blocks, texts, scripts + db $00 ; connections + dw ViridianForestObject ; objects diff --git a/data/mapHeaders/viridianforestentrance.asm b/data/mapHeaders/viridianforestentrance.asm new file mode 100755 index 00000000..21fdc56b --- /dev/null +++ b/data/mapHeaders/viridianforestentrance.asm @@ -0,0 +1,6 @@ +ViridianForestEntrance_h: ; 0x5d650 to 0x5d65c (12 bytes) (id=50) + db FOREST_GATE ; tileset + db VIRIDIAN_FOREST_ENTRANCE_HEIGHT, VIRIDIAN_FOREST_ENTRANCE_WIDTH ; dimensions (y, x) + dw ViridianForestEntranceBlocks, ViridianForestEntranceTextPointers, ViridianForestEntranceScript ; blocks, texts, scripts + db $00 ; connections + dw ViridianForestEntranceObject ; objects diff --git a/data/mapHeaders/viridianforestexit.asm b/data/mapHeaders/viridianforestexit.asm new file mode 100755 index 00000000..285e6416 --- /dev/null +++ b/data/mapHeaders/viridianforestexit.asm @@ -0,0 +1,6 @@ +ViridianForestExit_h: ; 0x5d57b to 0x5d587 (12 bytes) (id=47) + db FOREST_GATE ; tileset + db VIRIDIAN_FOREST_EXIT_HEIGHT, VIRIDIAN_FOREST_EXIT_WIDTH ; dimensions (y, x) + dw ViridianForestExitBlocks, ViridianForestExitTextPointers, ViridianForestExitScript ; blocks, texts, scripts + db $00 ; connections + dw ViridianForestExitObject ; objects diff --git a/data/mapHeaders/viridiangym.asm b/data/mapHeaders/viridiangym.asm new file mode 100755 index 00000000..c983ab71 --- /dev/null +++ b/data/mapHeaders/viridiangym.asm @@ -0,0 +1,6 @@ +ViridianGym_h: ; 0x74897 to 0x748a3 (12 bytes) (id=45) + db GYM ; tileset + db VIRIDIAN_GYM_HEIGHT, VIRIDIAN_GYM_WIDTH ; dimensions (y, x) + dw ViridianGymBlocks, ViridianGymTextPointers, ViridianGymScript ; blocks, texts, scripts + db $00 ; connections + dw ViridianGymObject ; objects diff --git a/data/mapHeaders/viridianhouse.asm b/data/mapHeaders/viridianhouse.asm new file mode 100755 index 00000000..392c6a20 --- /dev/null +++ b/data/mapHeaders/viridianhouse.asm @@ -0,0 +1,8 @@ +ViridianHouse_h: ; 0x1d57d to 0x1d589 (12 bytes) (bank=7) (id=44) + db HOUSE ; tileset + db VIRIDIAN_HOUSE_HEIGHT, VIRIDIAN_HOUSE_WIDTH ; dimensions (y, x) + dw ViridianHouseBlocks, ViridianHouseTextPointers, ViridianHouseScript ; blocks, texts, scripts + db $00 ; connections + dw ViridianHouseObject ; objects + + db $0 diff --git a/data/mapHeaders/viridianmart.asm b/data/mapHeaders/viridianmart.asm new file mode 100755 index 00000000..1bbe80f0 --- /dev/null +++ b/data/mapHeaders/viridianmart.asm @@ -0,0 +1,6 @@ +ViridianMart_h: ; 0x1d462 to 0x1d46e (12 bytes) (bank=7) (id=42) + db MART ; tileset + db VIRIDIAN_MART_HEIGHT, VIRIDIAN_MART_WIDTH ; dimensions (y, x) + dw ViridianMartBlocks, ViridianMartTextPointers, ViridianMartScript ; blocks, texts, scripts + db $00 ; connections + dw ViridianMartObject ; objects diff --git a/data/mapHeaders/viridianpokecenter.asm b/data/mapHeaders/viridianpokecenter.asm new file mode 100755 index 00000000..673be44e --- /dev/null +++ b/data/mapHeaders/viridianpokecenter.asm @@ -0,0 +1,6 @@ +ViridianPokecenter_h: ; 0x44251 to 0x4425d (12 bytes) (bank=11) (id=41) + db POKECENTER ; tileset + db VIRIDIAN_POKECENTER_HEIGHT, VIRIDIAN_POKECENTER_WIDTH ; dimensions (y, x) + dw ViridianPokecenterBlocks, ViridianPokecenterTextPointers, ViridianPokeCenterScript ; blocks, texts, scripts + db $00 ; connections + dw ViridianPokecenterObject ; objects diff --git a/data/mapObjects/agatha.asm b/data/mapObjects/agatha.asm new file mode 100755 index 00000000..6c9278ce --- /dev/null +++ b/data/mapObjects/agatha.asm @@ -0,0 +1,19 @@ +AgathaObject: ; 0x76534 (size=44) + db $0 ; border block + + db $4 ; warps + db $b, $4, $2, BRUNOS_ROOM + db $b, $5, $3, BRUNOS_ROOM + db $0, $4, $0, LANCES_ROOM + db $0, $5, $0, LANCES_ROOM + + db $0 ; signs + + db $1 ; people + db SPRITE_AGATHA, $2 + 4, $5 + 4, $ff, $d0, $41, AGATHA + $C8, $1 ; trainer + + ; warp-to + EVENT_DISP AGATHAS_ROOM_WIDTH, $b, $4 ; BRUNOS_ROOM + EVENT_DISP AGATHAS_ROOM_WIDTH, $b, $5 ; BRUNOS_ROOM + EVENT_DISP AGATHAS_ROOM_WIDTH, $0, $4 ; LANCES_ROOM + EVENT_DISP AGATHAS_ROOM_WIDTH, $0, $5 ; LANCES_ROOM diff --git a/data/mapObjects/battlecenterm.asm b/data/mapObjects/battlecenterm.asm new file mode 100755 index 00000000..45d88590 --- /dev/null +++ b/data/mapObjects/battlecenterm.asm @@ -0,0 +1,9 @@ +BattleCenterMObject: ; 0x4fd53 (size=10) + db $e ; border block + + db $0 ; warps + + db $0 ; signs + + db $1 ; people + db SPRITE_RED, $2 + 4, $2 + 4, $ff, $0, $1 ; person diff --git a/data/mapObjects/bikeshop.asm b/data/mapObjects/bikeshop.asm new file mode 100755 index 00000000..5803e3fb --- /dev/null +++ b/data/mapObjects/bikeshop.asm @@ -0,0 +1,17 @@ +BikeShopObject: ; 0x1d866 (size=38) + db $e ; border block + + db $2 ; warps + db $7, $2, $4, $ff + db $7, $3, $4, $ff + + db $0 ; signs + + db $3 ; people + db SPRITE_BIKE_SHOP_GUY, $2 + 4, $6 + 4, $ff, $ff, $1 ; person + db SPRITE_MOM_GEISHA, $6 + 4, $5 + 4, $fe, $1, $2 ; person + db SPRITE_BUG_CATCHER, $3 + 4, $1 + 4, $ff, $d1, $3 ; person + + ; warp-to + EVENT_DISP BIKE_SHOP_WIDTH, $7, $2 + EVENT_DISP BIKE_SHOP_WIDTH, $7, $3 diff --git a/data/mapObjects/billshouse.asm b/data/mapObjects/billshouse.asm new file mode 100755 index 00000000..2c032bf2 --- /dev/null +++ b/data/mapObjects/billshouse.asm @@ -0,0 +1,17 @@ +BillsHouseObject: ; 0x1e8df (size=38) + db $d ; border block + + db $2 ; warps + db $7, $2, $0, $ff + db $7, $3, $0, $ff + + db $0 ; signs + + db $3 ; people + db SPRITE_SLOWBRO, $5 + 4, $6 + 4, $ff, $ff, $1 ; person + db SPRITE_BLACK_HAIR_BOY_2, $4 + 4, $4 + 4, $ff, $ff, $2 ; person + db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $6 + 4, $ff, $ff, $3 ; person + + ; warp-to + EVENT_DISP BILLS_HOUSE_WIDTH, $7, $2 + EVENT_DISP BILLS_HOUSE_WIDTH, $7, $3 diff --git a/data/mapObjects/blueshouse.asm b/data/mapObjects/blueshouse.asm new file mode 100755 index 00000000..6e801ea6 --- /dev/null +++ b/data/mapObjects/blueshouse.asm @@ -0,0 +1,17 @@ +BluesHouseObject: ; 19bce (6:5bce) + db $0A ; border block + + db 2 ; warps + db 7,2,1,$FF + db 7,3,1,$FF + + db 0 ; signs + + db 3 ; people + db $11,4+3,4+2,$FF,$D3,1 ; Daisy, sitting by map + db $11,4+4,4+6,$FE,1,ITEM|2,0 ; map on table + db $41,4+3,4+3,$FF,$FF,ITEM|3,0 ; Daisy, walking around + + ; warp-to + EVENT_DISP BLUES_HOUSE_WIDTH, 7, 2 + EVENT_DISP BLUES_HOUSE_WIDTH, 7, 3 diff --git a/data/mapObjects/bruno.asm b/data/mapObjects/bruno.asm new file mode 100755 index 00000000..b8577ac1 --- /dev/null +++ b/data/mapObjects/bruno.asm @@ -0,0 +1,19 @@ +BrunoObject: ; 0x763d7 (size=44) + db $3 ; border block + + db $4 ; warps + db $b, $4, $2, LORELEIS_ROOM + db $b, $5, $3, LORELEIS_ROOM + db $0, $4, $0, AGATHAS_ROOM + db $0, $5, $1, AGATHAS_ROOM + + db $0 ; signs + + db $1 ; people + db SPRITE_BRUNO, $2 + 4, $5 + 4, $ff, $d0, $41, BRUNO + $C8, $1 ; trainer + + ; warp-to + EVENT_DISP BRUNOS_ROOM_WIDTH, $b, $4 ; LORELEIS_ROOM + EVENT_DISP BRUNOS_ROOM_WIDTH, $b, $5 ; LORELEIS_ROOM + EVENT_DISP BRUNOS_ROOM_WIDTH, $0, $4 ; AGATHAS_ROOM + EVENT_DISP BRUNOS_ROOM_WIDTH, $0, $5 ; AGATHAS_ROOM diff --git a/data/mapObjects/celadoncity.asm b/data/mapObjects/celadoncity.asm new file mode 100755 index 00000000..b19e2f87 --- /dev/null +++ b/data/mapObjects/celadoncity.asm @@ -0,0 +1,54 @@ +CeladonCityObject: ; 0x18022 (size=189) + db $f ; border block + + db $d ; warps + db $d, $8, $0, CELADON_MART_1 + db $d, $a, $2, CELADON_MART_1 + db $9, $18, $0, CELADON_MANSION_1 + db $3, $18, $2, CELADON_MANSION_1 + db $3, $19, $2, CELADON_MANSION_1 + db $9, $29, $0, CELADON_POKECENTER + db $1b, $c, $0, CELADON_GYM + db $13, $1c, $0, GAME_CORNER + db $13, $27, $0, CELADON_MART_5 ; beta warp! no longer used + db $13, $21, $0, CELADON_PRIZE_ROOM + db $1b, $1f, $0, CELADON_DINER + db $1b, $23, $0, CELADON_HOUSE + db $1b, $2b, $0, CELADON_HOTEL + + db $9 ; signs + db $f, $1b, $a ; CeladonCityText10 + db $f, $13, $b ; CeladonCityText11 + db $9, $2a, $c ; PokeCenterSignText + db $1d, $d, $d ; CeladonCityText13 + db $9, $15, $e ; CeladonCityText14 + db $d, $c, $f ; CeladonCityText15 + db $15, $27, $10 ; CeladonCityText16 + db $15, $21, $11 ; CeladonCityText17 + db $15, $1b, $12 ; CeladonCityText18 + + db $9 ; people + db SPRITE_LITTLE_GIRL, $11 + 4, $8 + 4, $fe, $0, $1 ; person + db SPRITE_OLD_PERSON, $1c + 4, $b + 4, $ff, $d1, $2 ; person + db SPRITE_GIRL, $13 + 4, $e + 4, $fe, $1, $3 ; person + db SPRITE_OLD_PERSON, $16 + 4, $19 + 4, $ff, $d0, $4 ; person + db SPRITE_OLD_PERSON, $10 + 4, $16 + 4, $ff, $d0, $5 ; person + db SPRITE_FISHER2, $c + 4, $20 + 4, $ff, $d2, $6 ; person + db SPRITE_SLOWBRO, $c + 4, $1e + 4, $ff, $d3, $7 ; person + db SPRITE_ROCKET, $1d + 4, $20 + 4, $fe, $2, $8 ; person + db SPRITE_ROCKET, $e + 4, $2a + 4, $fe, $2, $9 ; person + + ; warp-to + EVENT_DISP CELADON_CITY_WIDTH, $d, $8 ; CELADON_MART_1 + EVENT_DISP CELADON_CITY_WIDTH, $d, $a ; CELADON_MART_1 + EVENT_DISP CELADON_CITY_WIDTH, $9, $18 ; CELADON_MANSION_1 + EVENT_DISP CELADON_CITY_WIDTH, $3, $18 ; CELADON_MANSION_1 + EVENT_DISP CELADON_CITY_WIDTH, $3, $19 ; CELADON_MANSION_1 + EVENT_DISP CELADON_CITY_WIDTH, $9, $29 ; CELADON_POKECENTER + EVENT_DISP CELADON_CITY_WIDTH, $1b, $c ; CELADON_GYM + EVENT_DISP CELADON_CITY_WIDTH, $13, $1c ; GAME_CORNER + EVENT_DISP CELADON_CITY_WIDTH, $13, $27 ; CELADON_MART_5 + EVENT_DISP CELADON_CITY_WIDTH, $13, $21 ; CELADON_PRIZE_ROOM + EVENT_DISP CELADON_CITY_WIDTH, $1b, $1f ; CELADON_DINER + EVENT_DISP CELADON_CITY_WIDTH, $1b, $23 ; CELADON_HOUSE + EVENT_DISP CELADON_CITY_WIDTH, $1b, $2b ; CELADON_HOTEL diff --git a/data/mapObjects/celadondiner.asm b/data/mapObjects/celadondiner.asm new file mode 100755 index 00000000..ffb47d50 --- /dev/null +++ b/data/mapObjects/celadondiner.asm @@ -0,0 +1,19 @@ +CeladonDinerObject: ; 0x491bc (size=50) + db $f ; border block + + db $2 ; warps + db $7, $3, $a, $ff + db $7, $4, $a, $ff + + db $0 ; signs + + db $5 ; people + db SPRITE_COOK, $5 + 4, $8 + 4, $fe, $2, $1 ; person + db SPRITE_MOM_GEISHA, $2 + 4, $7 + 4, $ff, $ff, $2 ; person + db SPRITE_FAT_BALD_GUY, $4 + 4, $1 + 4, $ff, $d0, $3 ; person + db SPRITE_FISHER2, $3 + 4, $5 + 4, $ff, $d3, $4 ; person + db SPRITE_GYM_HELPER, $1 + 4, $0 + 4, $ff, $d0, $5 ; person + + ; warp-to + EVENT_DISP CELADON_DINER_WIDTH, $7, $3 + EVENT_DISP CELADON_DINER_WIDTH, $7, $4 diff --git a/data/mapObjects/celadongamecorner.asm b/data/mapObjects/celadongamecorner.asm new file mode 100755 index 00000000..26722b76 --- /dev/null +++ b/data/mapObjects/celadongamecorner.asm @@ -0,0 +1,28 @@ +CeladonGameCornerObject: ; 0x48fa0 (size=99) + db $f ; border block + + db $3 ; warps + db $11, $f, $7, $ff + db $11, $10, $7, $ff + db $4, $11, $1, ROCKET_HIDEOUT_1 + + db $1 ; signs + db $4, $9, $c ; CeladonGameCornerText12 + + db $b ; people + db SPRITE_FOULARD_WOMAN, $6 + 4, $2 + 4, $ff, $d0, $1 ; person + db SPRITE_MART_GUY, $6 + 4, $5 + 4, $ff, $d0, $2 ; person + db SPRITE_FAT_BALD_GUY, $a + 4, $2 + 4, $ff, $d2, $3 ; person + db SPRITE_FOULARD_WOMAN, $d + 4, $2 + 4, $ff, $d2, $4 ; person + db SPRITE_FISHER, $b + 4, $5 + 4, $ff, $d3, $5 ; person + db SPRITE_MOM_GEISHA, $b + 4, $8 + 4, $ff, $d2, $6 ; person + db SPRITE_GYM_HELPER, $e + 4, $8 + 4, $ff, $d2, $7 ; person + db SPRITE_GAMBLER, $f + 4, $b + 4, $ff, $d3, $8 ; person + db SPRITE_MART_GUY, $b + 4, $e + 4, $ff, $d2, $9 ; person + db SPRITE_GENTLEMAN, $d + 4, $11 + 4, $ff, $d3, $a ; person + db SPRITE_ROCKET, $5 + 4, $9 + 4, $ff, $d1, $4b, ROCKET + $C8, $7 ; trainer + + ; warp-to + EVENT_DISP GAME_CORNER_WIDTH, $11, $f + EVENT_DISP GAME_CORNER_WIDTH, $11, $10 + EVENT_DISP GAME_CORNER_WIDTH, $4, $11 ; ROCKET_HIDEOUT_1 diff --git a/data/mapObjects/celadongym.asm b/data/mapObjects/celadongym.asm new file mode 100755 index 00000000..df3f14bc --- /dev/null +++ b/data/mapObjects/celadongym.asm @@ -0,0 +1,22 @@ +CeladonGymObject: ; 0x48b30 (size=84) + db $3 ; border block + + db $2 ; warps + db $11, $4, $6, $ff + db $11, $5, $6, $ff + + db $0 ; signs + + db $8 ; people + db SPRITE_ERIKA, $3 + 4, $4 + 4, $ff, $d0, $41, ERIKA + $C8, $1 ; trainer + db SPRITE_LASS, $b + 4, $2 + 4, $ff, $d3, $42, LASS + $C8, $11 ; trainer + db SPRITE_FOULARD_WOMAN, $a + 4, $7 + 4, $ff, $d2, $43, BEAUTY + $C8, $1 ; trainer + db SPRITE_LASS, $5 + 4, $9 + 4, $ff, $d0, $44, JR__TRAINER_F + $C8, $b ; trainer + db SPRITE_FOULARD_WOMAN, $5 + 4, $1 + 4, $ff, $d0, $45, BEAUTY + $C8, $2 ; trainer + db SPRITE_LASS, $3 + 4, $6 + 4, $ff, $d0, $46, LASS + $C8, $12 ; trainer + db SPRITE_FOULARD_WOMAN, $3 + 4, $3 + 4, $ff, $d0, $47, BEAUTY + $C8, $3 ; trainer + db SPRITE_LASS, $3 + 4, $5 + 4, $ff, $d0, $48, COOLTRAINER_F + $C8, $1 ; trainer + + ; warp-to + EVENT_DISP CELADON_GYM_WIDTH, $11, $4 + EVENT_DISP CELADON_GYM_WIDTH, $11, $5 diff --git a/data/mapObjects/celadonhotel.asm b/data/mapObjects/celadonhotel.asm new file mode 100755 index 00000000..b1052def --- /dev/null +++ b/data/mapObjects/celadonhotel.asm @@ -0,0 +1,17 @@ +CeladonHotelObject: ; 0x49281 (size=38) + db $0 ; border block + + db $2 ; warps + db $7, $3, $c, $ff + db $7, $4, $c, $ff + + db $0 ; signs + + db $3 ; people + db SPRITE_OLD_MEDIUM_WOMAN, $1 + 4, $3 + 4, $ff, $d0, $1 ; person + db SPRITE_FOULARD_WOMAN, $4 + 4, $2 + 4, $ff, $ff, $2 ; person + db SPRITE_BLACK_HAIR_BOY_2, $4 + 4, $8 + 4, $fe, $2, $3 ; person + + ; warp-to + EVENT_DISP CELADON_HOTEL_WIDTH, $7, $3 + EVENT_DISP CELADON_HOTEL_WIDTH, $7, $4 diff --git a/data/mapObjects/celadonhouse.asm b/data/mapObjects/celadonhouse.asm new file mode 100755 index 00000000..19be473b --- /dev/null +++ b/data/mapObjects/celadonhouse.asm @@ -0,0 +1,17 @@ +CeladonHouseObject: ; 0x49227 (size=38) + db $f ; border block + + db $2 ; warps + db $7, $2, $b, $ff + db $7, $3, $b, $ff + + db $0 ; signs + + db $3 ; people + db SPRITE_OLD_PERSON, $2 + 4, $4 + 4, $ff, $d0, $1 ; person + db SPRITE_ROCKET, $4 + 4, $1 + 4, $fe, $0, $2 ; person + db SPRITE_SAILOR, $6 + 4, $5 + 4, $ff, $d2, $3 ; person + + ; warp-to + EVENT_DISP CELADON_HOUSE_WIDTH, $7, $2 + EVENT_DISP CELADON_HOUSE_WIDTH, $7, $3 diff --git a/data/mapObjects/celadonmansion1.asm b/data/mapObjects/celadonmansion1.asm new file mode 100755 index 00000000..decb14e7 --- /dev/null +++ b/data/mapObjects/celadonmansion1.asm @@ -0,0 +1,25 @@ +CeladonMansion1Object: ; 0x486cf (size=71) + db $f ; border block + + db $5 ; warps + db $b, $4, $2, $ff + db $b, $5, $2, $ff + db $0, $4, $4, $ff + db $1, $7, $1, CELADON_MANSION_2 + db $1, $2, $2, CELADON_MANSION_2 + + db $1 ; signs + db $9, $4, $5 ; CeladonMansion1Text5 + + db $4 ; people + db SPRITE_SLOWBRO, $5 + 4, $0 + 4, $ff, $d3, $1 ; person + db SPRITE_OLD_MEDIUM_WOMAN, $5 + 4, $1 + 4, $ff, $d0, $2 ; person + db SPRITE_CLEFAIRY, $8 + 4, $1 + 4, $fe, $2, $3 ; person + db SPRITE_SLOWBRO, $4 + 4, $4 + 4, $fe, $1, $4 ; person + + ; warp-to + EVENT_DISP CELADON_MANSION_1_WIDTH, $b, $4 + EVENT_DISP CELADON_MANSION_1_WIDTH, $b, $5 + EVENT_DISP CELADON_MANSION_1_WIDTH, $0, $4 + EVENT_DISP CELADON_MANSION_1_WIDTH, $1, $7 ; CELADON_MANSION_2 + EVENT_DISP CELADON_MANSION_1_WIDTH, $1, $2 ; CELADON_MANSION_2 diff --git a/data/mapObjects/celadonmansion2.asm b/data/mapObjects/celadonmansion2.asm new file mode 100755 index 00000000..3ed15a66 --- /dev/null +++ b/data/mapObjects/celadonmansion2.asm @@ -0,0 +1,19 @@ +CeladonMansion2Object: ; 0x48745 (size=39) + db $f ; border block + + db $4 ; warps + db $1, $6, $0, CELADON_MANSION_3 + db $1, $7, $3, CELADON_MANSION_1 + db $1, $2, $4, CELADON_MANSION_1 + db $1, $4, $3, CELADON_MANSION_3 + + db $1 ; signs + db $9, $4, $1 ; CeladonMansion2Text1 + + db $0 ; people + + ; warp-to + EVENT_DISP CELADON_MANSION_2_WIDTH, $1, $6 ; CELADON_MANSION_3 + EVENT_DISP CELADON_MANSION_2_WIDTH, $1, $7 ; CELADON_MANSION_1 + EVENT_DISP CELADON_MANSION_2_WIDTH, $1, $2 ; CELADON_MANSION_1 + EVENT_DISP CELADON_MANSION_2_WIDTH, $1, $4 ; CELADON_MANSION_3 diff --git a/data/mapObjects/celadonmansion3.asm b/data/mapObjects/celadonmansion3.asm new file mode 100755 index 00000000..e64bac61 --- /dev/null +++ b/data/mapObjects/celadonmansion3.asm @@ -0,0 +1,26 @@ +CeladonMansion3Object: ; 0x487ff (size=72) + db $f ; border block + + db $4 ; warps + db $1, $6, $0, CELADON_MANSION_2 + db $1, $7, $0, CELADON_MANSION_4 + db $1, $2, $1, CELADON_MANSION_4 + db $1, $4, $3, CELADON_MANSION_2 + + db $4 ; signs + db $3, $1, $5 ; CeladonMansion3Text5 + db $3, $4, $6 ; CeladonMansion3Text6 + db $6, $1, $7 ; CeladonMansion3Text7 + db $9, $4, $8 ; CeladonMansion3Text8 + + db $4 ; people + db SPRITE_BIKE_SHOP_GUY, $4 + 4, $0 + 4, $ff, $d1, $1 ; person + db SPRITE_MART_GUY, $4 + 4, $3 + 4, $ff, $d1, $2 ; person + db SPRITE_BLACK_HAIR_BOY_2, $7 + 4, $0 + 4, $ff, $d1, $3 ; person + db SPRITE_LAPRAS_GIVER, $3 + 4, $2 + 4, $ff, $ff, $4 ; person + + ; warp-to + EVENT_DISP CELADON_MANSION_3_WIDTH, $1, $6 ; CELADON_MANSION_2 + EVENT_DISP CELADON_MANSION_3_WIDTH, $1, $7 ; CELADON_MANSION_4 + EVENT_DISP CELADON_MANSION_3_WIDTH, $1, $2 ; CELADON_MANSION_4 + EVENT_DISP CELADON_MANSION_3_WIDTH, $1, $4 ; CELADON_MANSION_2 diff --git a/data/mapObjects/celadonmansion4.asm b/data/mapObjects/celadonmansion4.asm new file mode 100755 index 00000000..4181bd17 --- /dev/null +++ b/data/mapObjects/celadonmansion4.asm @@ -0,0 +1,17 @@ +CeladonMansion4Object: ; 0x48875 (size=31) + db $9 ; border block + + db $3 ; warps + db $1, $6, $1, CELADON_MANSION_3 + db $1, $2, $2, CELADON_MANSION_3 + db $7, $2, $0, CELADON_MANSION_5 + + db $1 ; signs + db $7, $3, $1 ; CeladonMansion4Text1 + + db $0 ; people + + ; warp-to + EVENT_DISP CELADON_MANSION_4_WIDTH, $1, $6 ; CELADON_MANSION_3 + EVENT_DISP CELADON_MANSION_4_WIDTH, $1, $2 ; CELADON_MANSION_3 + EVENT_DISP CELADON_MANSION_4_WIDTH, $7, $2 ; CELADON_MANSION_5 diff --git a/data/mapObjects/celadonmansion5.asm b/data/mapObjects/celadonmansion5.asm new file mode 100755 index 00000000..efc74275 --- /dev/null +++ b/data/mapObjects/celadonmansion5.asm @@ -0,0 +1,16 @@ +CeladonMansion5Object: ; 0x1dd5c (size=32) + db $a ; border block + + db $2 ; warps + db $7, $2, $2, CELADON_MANSION_4 + db $7, $3, $2, CELADON_MANSION_4 + + db $0 ; signs + + db $2 ; people + db SPRITE_HIKER, $2 + 4, $2 + 4, $ff, $d0, $1 ; person + db SPRITE_BALL, $3 + 4, $4 + 4, $ff, $ff, $2 ; person + + ; warp-to + EVENT_DISP CELADON_MANSION_5_WIDTH, $7, $2 ; CELADON_MANSION_4 + EVENT_DISP CELADON_MANSION_5_WIDTH, $7, $3 ; CELADON_MANSION_4 diff --git a/data/mapObjects/celadonmart1.asm b/data/mapObjects/celadonmart1.asm new file mode 100755 index 00000000..10593f46 --- /dev/null +++ b/data/mapObjects/celadonmart1.asm @@ -0,0 +1,25 @@ +CeladonMart1Object: ; 0x60f9e (size=64) + db $f ; border block + + db $6 ; warps + db $7, $2, $0, $ff + db $7, $3, $0, $ff + db $7, $10, $1, $ff + db $7, $11, $1, $ff + db $1, $c, $0, CELADON_MART_2 + db $1, $1, $0, CELADON_MART_ELEVATOR + + db $2 ; signs + db $4, $b, $2 ; CeladonMart1Text2 + db $1, $e, $3 ; CeladonMart1Text3 + + db $1 ; people + db SPRITE_CABLE_CLUB_WOMAN, $3 + 4, $8 + 4, $ff, $d0, $1 ; person + + ; warp-to + EVENT_DISP CELADON_MART_1_WIDTH, $7, $2 + EVENT_DISP CELADON_MART_1_WIDTH, $7, $3 + EVENT_DISP CELADON_MART_1_WIDTH, $7, $10 + EVENT_DISP CELADON_MART_1_WIDTH, $7, $11 + EVENT_DISP CELADON_MART_1_WIDTH, $1, $c ; CELADON_MART_2 + EVENT_DISP CELADON_MART_1_WIDTH, $1, $1 ; CELADON_MART_ELEVATOR diff --git a/data/mapObjects/celadonmart2.asm b/data/mapObjects/celadonmart2.asm new file mode 100755 index 00000000..6b40ed11 --- /dev/null +++ b/data/mapObjects/celadonmart2.asm @@ -0,0 +1,21 @@ +CeladonMart2Object: ; 0x56111 (size=55) + db $f ; border block + + db $3 ; warps + db $1, $c, $4, CELADON_MART_1 + db $1, $10, $1, CELADON_MART_3 + db $1, $1, $0, CELADON_MART_ELEVATOR + + db $1 ; signs + db $1, $e, $5 ; CeladonMart2Text5 + + db $4 ; people + db SPRITE_MART_GUY, $3 + 4, $5 + 4, $ff, $d0, $1 ; person + db SPRITE_MART_GUY, $3 + 4, $6 + 4, $ff, $d0, $2 ; person + db SPRITE_FAT_BALD_GUY, $5 + 4, $13 + 4, $ff, $ff, $3 ; person + db SPRITE_GIRL, $4 + 4, $e + 4, $fe, $1, $4 ; person + + ; warp-to + EVENT_DISP CELADON_MART_2_WIDTH, $1, $c ; CELADON_MART_1 + EVENT_DISP CELADON_MART_2_WIDTH, $1, $10 ; CELADON_MART_3 + EVENT_DISP CELADON_MART_2_WIDTH, $1, $1 ; CELADON_MART_ELEVATOR diff --git a/data/mapObjects/celadonmart3.asm b/data/mapObjects/celadonmart3.asm new file mode 100755 index 00000000..8ffbf823 --- /dev/null +++ b/data/mapObjects/celadonmart3.asm @@ -0,0 +1,33 @@ +CeladonMart3Object: ; 0x482c4 (size=94) + db $f ; border block + + db $3 ; warps + db $1, $c, $0, CELADON_MART_4 + db $1, $10, $1, CELADON_MART_2 + db $1, $1, $0, CELADON_MART_ELEVATOR + + db $c ; signs + db $4, $2, $6 ; CeladonMart3Text6 + db $4, $3, $7 ; CeladonMart3Text7 + db $4, $5, $8 ; CeladonMart3Text8 + db $4, $6, $9 ; CeladonMart3Text9 + db $6, $2, $a ; CeladonMart3Text10 + db $6, $3, $b ; CeladonMart3Text11 + db $6, $5, $c ; CeladonMart3Text12 + db $6, $6, $d ; CeladonMart3Text13 + db $1, $e, $e ; CeladonMart3Text14 + db $1, $4, $f ; CeladonMart3Text15 + db $1, $6, $10 ; CeladonMart3Text16 + db $1, $a, $11 ; CeladonMart3Text17 + + db $5 ; people + db SPRITE_MART_GUY, $5 + 4, $10 + 4, $ff, $ff, $1 ; person + db SPRITE_GAMEBOY_KID_COPY, $6 + 4, $b + 4, $ff, $d3, $2 ; person + db SPRITE_GAMEBOY_KID_COPY, $2 + 4, $7 + 4, $ff, $d0, $3 ; person + db SPRITE_GAMEBOY_KID_COPY, $2 + 4, $8 + 4, $ff, $d0, $4 ; person + db SPRITE_YOUNG_BOY, $5 + 4, $2 + 4, $ff, $d1, $5 ; person + + ; warp-to + EVENT_DISP CELADON_MART_3_WIDTH, $1, $c ; CELADON_MART_4 + EVENT_DISP CELADON_MART_3_WIDTH, $1, $10 ; CELADON_MART_2 + EVENT_DISP CELADON_MART_3_WIDTH, $1, $1 ; CELADON_MART_ELEVATOR diff --git a/data/mapObjects/celadonmart4.asm b/data/mapObjects/celadonmart4.asm new file mode 100755 index 00000000..5bdbbf4a --- /dev/null +++ b/data/mapObjects/celadonmart4.asm @@ -0,0 +1,20 @@ +CeladonMart4Object: ; 0x48370 (size=49) + db $f ; border block + + db $3 ; warps + db $1, $c, $0, CELADON_MART_3 + db $1, $10, $1, CELADON_MART_5 + db $1, $1, $0, CELADON_MART_ELEVATOR + + db $1 ; signs + db $1, $e, $4 ; CeladonMart4Text4 + + db $3 ; people + db SPRITE_MART_GUY, $7 + 4, $5 + 4, $ff, $ff, $1 ; person + db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $f + 4, $fe, $2, $2 ; person + db SPRITE_BUG_CATCHER, $2 + 4, $5 + 4, $fe, $2, $3 ; person + + ; warp-to + EVENT_DISP CELADON_MART_4_WIDTH, $1, $c ; CELADON_MART_3 + EVENT_DISP CELADON_MART_4_WIDTH, $1, $10 ; CELADON_MART_5 + EVENT_DISP CELADON_MART_4_WIDTH, $1, $1 ; CELADON_MART_ELEVATOR diff --git a/data/mapObjects/celadonmart5.asm b/data/mapObjects/celadonmart5.asm new file mode 100755 index 00000000..9914d51b --- /dev/null +++ b/data/mapObjects/celadonmart5.asm @@ -0,0 +1,21 @@ +CeladonMart5Object: ; 0x49085 (size=55) + db $f ; border block + + db $3 ; warps + db $1, $c, $0, CELADON_MART_ROOF + db $1, $10, $1, CELADON_MART_4 + db $1, $1, $0, CELADON_MART_ELEVATOR + + db $1 ; signs + db $1, $e, $5 ; CeladonMart5Text5 + + db $4 ; people + db SPRITE_GENTLEMAN, $5 + 4, $e + 4, $fe, $1, $1 ; person + db SPRITE_SAILOR, $6 + 4, $2 + 4, $ff, $ff, $2 ; person + db SPRITE_MART_GUY, $3 + 4, $5 + 4, $ff, $d0, $3 ; person + db SPRITE_MART_GUY, $3 + 4, $6 + 4, $ff, $d0, $4 ; person + + ; warp-to + EVENT_DISP CELADON_MART_5_WIDTH, $1, $c ; CELADON_MART_ROOF + EVENT_DISP CELADON_MART_5_WIDTH, $1, $10 ; CELADON_MART_4 + EVENT_DISP CELADON_MART_5_WIDTH, $1, $1 ; CELADON_MART_ELEVATOR diff --git a/data/mapObjects/celadonmartelevator.asm b/data/mapObjects/celadonmartelevator.asm new file mode 100755 index 00000000..ca9a8f08 --- /dev/null +++ b/data/mapObjects/celadonmartelevator.asm @@ -0,0 +1,15 @@ +CeladonMartElevatorObject: ; 0x4866d (size=23) + db $f ; border block + + db $2 ; warps + db $3, $1, $5, CELADON_MART_1 + db $3, $2, $5, CELADON_MART_1 + + db $1 ; signs + db $0, $3, $1 ; CeladonMartElevatorText1 + + db $0 ; people + + ; warp-to + EVENT_DISP CELADON_MART_ELEVATOR_WIDTH, $3, $1 ; CELADON_MART_1 + EVENT_DISP CELADON_MART_ELEVATOR_WIDTH, $3, $2 ; CELADON_MART_1 diff --git a/data/mapObjects/celadonmartroof.asm b/data/mapObjects/celadonmartroof.asm new file mode 100755 index 00000000..119eb4f8 --- /dev/null +++ b/data/mapObjects/celadonmartroof.asm @@ -0,0 +1,18 @@ +CeladonMartRoofObject: ; 0x485a8 (size=36) + db $42 ; border block + + db $1 ; warps + db $2, $f, $0, CELADON_MART_5 + + db $4 ; signs + db $1, $a, $3 ; CeladonMartRoofText3 + db $1, $b, $4 ; CeladonMartRoofText4 + db $2, $c, $5 ; CeladonMartRoofText5 + db $2, $d, $6 ; CeladonMartRoofText6 + + db $2 ; people + db SPRITE_BLACK_HAIR_BOY_2, $4 + 4, $a + 4, $ff, $d2, $1 ; person + db SPRITE_LITTLE_GIRL, $5 + 4, $5 + 4, $fe, $0, $2 ; person + + ; warp-to + EVENT_DISP CELADON_MART_ROOF_WIDTH, $2, $f ; CELADON_MART_5 diff --git a/data/mapObjects/celadonpokecenter.asm b/data/mapObjects/celadonpokecenter.asm new file mode 100755 index 00000000..dcfeceb7 --- /dev/null +++ b/data/mapObjects/celadonpokecenter.asm @@ -0,0 +1,18 @@ +CeladonPokecenterObject: ; 0x488d2 (size=44) + db $0 ; border block + + db $2 ; warps + db $7, $3, $5, $ff + db $7, $4, $5, $ff + + db $0 ; signs + + db $4 ; people + db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person + db SPRITE_GENTLEMAN, $3 + 4, $7 + 4, $fe, $2, $2 ; person + db SPRITE_FOULARD_WOMAN, $5 + 4, $a + 4, $fe, $0, $3 ; person + db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person + + ; warp-to + EVENT_DISP CELADON_POKECENTER_WIDTH, $7, $3 + EVENT_DISP CELADON_POKECENTER_WIDTH, $7, $4 diff --git a/data/mapObjects/celadonprizeroom.asm b/data/mapObjects/celadonprizeroom.asm new file mode 100755 index 00000000..f280b050 --- /dev/null +++ b/data/mapObjects/celadonprizeroom.asm @@ -0,0 +1,19 @@ +CeladonPrizeRoomObject: ; 0x49108 (size=41) + db $f ; border block + + db $2 ; warps + db $7, $4, $9, $ff + db $7, $5, $9, $ff + + db $3 ; signs + db $2, $2, $3 ; CeladonPrizeRoomText3 + db $2, $4, $4 ; CeladonPrizeRoomText4 + db $2, $6, $5 ; CeladonPrizeRoomText5 + + db $2 ; people + db SPRITE_BALDING_GUY, $4 + 4, $1 + 4, $ff, $ff, $1 ; person + db SPRITE_GAMBLER, $3 + 4, $7 + 4, $fe, $2, $2 ; person + + ; warp-to + EVENT_DISP CELADON_PRIZE_ROOM_WIDTH, $7, $4 + EVENT_DISP CELADON_PRIZE_ROOM_WIDTH, $7, $5 diff --git a/data/mapObjects/ceruleancity.asm b/data/mapObjects/ceruleancity.asm new file mode 100755 index 00000000..950e45e1 --- /dev/null +++ b/data/mapObjects/ceruleancity.asm @@ -0,0 +1,47 @@ +CeruleanCityObject: ; 0x18786 (size=170) + db $f ; border block + + db $a ; warps + db $b, $1b, $0, TRASHED_HOUSE + db $f, $d, $0, CERULEAN_HOUSE + db $11, $13, $0, CERULEAN_POKECENTER + db $13, $1e, $0, CERULEAN_GYM + db $19, $d, $0, BIKE_SHOP + db $19, $19, $0, CERULEAN_MART + db $b, $4, $0, UNKNOWN_DUNGEON_1 + db $9, $1b, $2, TRASHED_HOUSE + db $b, $9, $1, CERULEAN_HOUSE_3 + db $9, $9, $0, CERULEAN_HOUSE_3 + + db $6 ; signs + db $13, $17, $c ; CeruleanCityText12 + db $1d, $11, $d ; CeruleanCityText13 + db $19, $1a, $e ; MartSignText + db $11, $14, $f ; PokeCenterSignText + db $19, $b, $10 ; CeruleanCityText16 + db $15, $1b, $11 ; CeruleanCityText17 + + db $b ; people + db SPRITE_BLUE, $2 + 4, $14 + 4, $ff, $d0, $1 ; person + db SPRITE_ROCKET, $8 + 4, $1e + 4, $ff, $ff, $42, ROCKET + $C8, $5 ; trainer + db SPRITE_BLACK_HAIR_BOY_1, $14 + 4, $1f + 4, $ff, $d0, $3 ; person + db SPRITE_BLACK_HAIR_BOY_2, $12 + 4, $f + 4, $fe, $1, $4 ; person + db SPRITE_BLACK_HAIR_BOY_2, $15 + 4, $9 + 4, $fe, $2, $5 ; person + db SPRITE_GUARD, $c + 4, $1c + 4, $ff, $d0, $6 ; person + db SPRITE_LASS, $1a + 4, $1d + 4, $ff, $d2, $7 ; person + db SPRITE_SLOWBRO, $1a + 4, $1c + 4, $ff, $d0, $8 ; person + db SPRITE_LASS, $1b + 4, $9 + 4, $fe, $2, $9 ; person + db SPRITE_BLACK_HAIR_BOY_2, $c + 4, $4 + 4, $ff, $d0, $a ; person + db SPRITE_GUARD, $c + 4, $1b + 4, $ff, $d0, $b ; person + + ; warp-to + EVENT_DISP CERULEAN_CITY_WIDTH, $b, $1b ; TRASHED_HOUSE + EVENT_DISP CERULEAN_CITY_WIDTH, $f, $d ; CERULEAN_HOUSE + EVENT_DISP CERULEAN_CITY_WIDTH, $11, $13 ; CERULEAN_POKECENTER + EVENT_DISP CERULEAN_CITY_WIDTH, $13, $1e ; CERULEAN_GYM + EVENT_DISP CERULEAN_CITY_WIDTH, $19, $d ; BIKE_SHOP + EVENT_DISP CERULEAN_CITY_WIDTH, $19, $19 ; CERULEAN_MART + EVENT_DISP CERULEAN_CITY_WIDTH, $b, $4 ; UNKNOWN_DUNGEON_1 + EVENT_DISP CERULEAN_CITY_WIDTH, $9, $1b ; TRASHED_HOUSE + EVENT_DISP CERULEAN_CITY_WIDTH, $b, $9 ; CERULEAN_HOUSE_3 + EVENT_DISP CERULEAN_CITY_WIDTH, $9, $9 ; CERULEAN_HOUSE_3 diff --git a/data/mapObjects/ceruleangym.asm b/data/mapObjects/ceruleangym.asm new file mode 100755 index 00000000..8edb90fa --- /dev/null +++ b/data/mapObjects/ceruleangym.asm @@ -0,0 +1,18 @@ +CeruleanGymObject: ; 0x5c834 (size=50) + db $3 ; border block + + db $2 ; warps + db $d, $4, $3, $ff + db $d, $5, $3, $ff + + db $0 ; signs + + db $4 ; people + db SPRITE_BRUNETTE_GIRL, $2 + 4, $4 + 4, $ff, $d0, $41, MISTY + $C8, $1 ; trainer + db SPRITE_LASS, $3 + 4, $2 + 4, $ff, $d3, $42, JR__TRAINER_F + $C8, $1 ; trainer + db SPRITE_SWIMMER, $7 + 4, $8 + 4, $ff, $d2, $43, SWIMMER + $C8, $1 ; trainer + db SPRITE_GYM_HELPER, $a + 4, $7 + 4, $ff, $d0, $4 ; person + + ; warp-to + EVENT_DISP CERULEAN_GYM_WIDTH, $d, $4 + EVENT_DISP CERULEAN_GYM_WIDTH, $d, $5 diff --git a/data/mapObjects/ceruleanhouse1.asm b/data/mapObjects/ceruleanhouse1.asm new file mode 100755 index 00000000..a5d10033 --- /dev/null +++ b/data/mapObjects/ceruleanhouse1.asm @@ -0,0 +1,16 @@ +CeruleanHouse1Object: ; 0x1d710 (size=32) + db $a ; border block + + db $2 ; warps + db $7, $2, $1, $ff + db $7, $3, $1, $ff + + db $0 ; signs + + db $2 ; people + db SPRITE_OLD_MEDIUM_WOMAN, $4 + 4, $5 + 4, $ff, $d2, $1 ; person + db SPRITE_GAMBLER, $2 + 4, $1 + 4, $ff, $ff, $2 ; person + + ; warp-to + EVENT_DISP CERULEAN_HOUSE_1_WIDTH, $7, $2 + EVENT_DISP CERULEAN_HOUSE_1_WIDTH, $7, $3 diff --git a/data/mapObjects/ceruleanhouse2.asm b/data/mapObjects/ceruleanhouse2.asm new file mode 100755 index 00000000..c8c4ee51 --- /dev/null +++ b/data/mapObjects/ceruleanhouse2.asm @@ -0,0 +1,17 @@ +CeruleanHouse2Object: ; 0x74ebe (size=34) + db $c ; border block + + db $3 ; warps + db $0, $2, $9, $ff + db $7, $2, $8, $ff + db $7, $3, $8, $ff + + db $0 ; signs + + db $1 ; people + db SPRITE_FAT_BALD_GUY, $3 + 4, $5 + 4, $ff, $d3, $1 ; person + + ; warp-to + EVENT_DISP CERULEAN_HOUSE_2_WIDTH, $0, $2 + EVENT_DISP CERULEAN_HOUSE_2_WIDTH, $7, $2 + EVENT_DISP CERULEAN_HOUSE_2_WIDTH, $7, $3 diff --git a/data/mapObjects/ceruleanhousetrashed.asm b/data/mapObjects/ceruleanhousetrashed.asm new file mode 100755 index 00000000..ce5e0e69 --- /dev/null +++ b/data/mapObjects/ceruleanhousetrashed.asm @@ -0,0 +1,19 @@ +CeruleanHouseTrashedObject: ; 0x1d6bf (size=43) + db $a ; border block + + db $3 ; warps + db $7, $2, $0, $ff + db $7, $3, $0, $ff + db $0, $3, $7, $ff + + db $1 ; signs + db $0, $3, $3 ; CeruleanHouseTrashedText3 + + db $2 ; people + db SPRITE_FISHER, $1 + 4, $2 + 4, $ff, $d0, $1 ; person + db SPRITE_GIRL, $6 + 4, $5 + 4, $fe, $2, $2 ; person + + ; warp-to + EVENT_DISP TRASHED_HOUSE_WIDTH, $7, $2 + EVENT_DISP TRASHED_HOUSE_WIDTH, $7, $3 + EVENT_DISP TRASHED_HOUSE_WIDTH, $0, $3 diff --git a/data/mapObjects/ceruleanmart.asm b/data/mapObjects/ceruleanmart.asm new file mode 100755 index 00000000..bc8c4818 --- /dev/null +++ b/data/mapObjects/ceruleanmart.asm @@ -0,0 +1,17 @@ +CeruleanMartObject: ; 0x5c8a8 (size=38) + db $0 ; border block + + db $2 ; warps + db $7, $3, $5, $ff + db $7, $4, $5, $ff + + db $0 ; signs + + db $3 ; people + db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person + db SPRITE_BLACK_HAIR_BOY_1, $4 + 4, $3 + 4, $fe, $1, $2 ; person + db SPRITE_LASS, $2 + 4, $6 + 4, $fe, $2, $3 ; person + + ; warp-to + EVENT_DISP CERULEAN_MART_WIDTH, $7, $3 + EVENT_DISP CERULEAN_MART_WIDTH, $7, $4 diff --git a/data/mapObjects/ceruleanpokecenter.asm b/data/mapObjects/ceruleanpokecenter.asm new file mode 100755 index 00000000..c7e8cb8b --- /dev/null +++ b/data/mapObjects/ceruleanpokecenter.asm @@ -0,0 +1,18 @@ +CeruleanPokecenterObject: ; 0x5c65f (size=44) + db $0 ; border block + + db $2 ; warps + db $7, $3, $2, $ff + db $7, $4, $2, $ff + + db $0 ; signs + + db $4 ; people + db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person + db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $a + 4, $fe, $0, $2 ; person + db SPRITE_GENTLEMAN, $3 + 4, $4 + 4, $ff, $d0, $3 ; person + db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person + + ; warp-to + EVENT_DISP CERULEAN_POKECENTER_WIDTH, $7, $3 + EVENT_DISP CERULEAN_POKECENTER_WIDTH, $7, $4 diff --git a/data/mapObjects/cinnabargym.asm b/data/mapObjects/cinnabargym.asm new file mode 100755 index 00000000..3965272a --- /dev/null +++ b/data/mapObjects/cinnabargym.asm @@ -0,0 +1,23 @@ +CinnabarGymObject: ; 0x75acc (size=90) + db $2e ; border block + + db $2 ; warps + db $11, $10, $1, $ff + db $11, $11, $1, $ff + + db $0 ; signs + + db $9 ; people + db SPRITE_FAT_BALD_GUY, $3 + 4, $3 + 4, $ff, $d0, $41, BLAINE + $C8, $1 ; trainer + db SPRITE_BLACK_HAIR_BOY_2, $2 + 4, $11 + 4, $ff, $d0, $42, SUPER_NERD + $C8, $9 ; trainer + db SPRITE_BLACK_HAIR_BOY_2, $8 + 4, $11 + 4, $ff, $d0, $43, BURGLAR + $C8, $4 ; trainer + db SPRITE_BLACK_HAIR_BOY_2, $4 + 4, $b + 4, $ff, $d0, $44, SUPER_NERD + $C8, $a ; trainer + db SPRITE_BLACK_HAIR_BOY_2, $8 + 4, $b + 4, $ff, $d0, $45, BURGLAR + $C8, $5 ; trainer + db SPRITE_BLACK_HAIR_BOY_2, $e + 4, $b + 4, $ff, $d0, $46, SUPER_NERD + $C8, $b ; trainer + db SPRITE_BLACK_HAIR_BOY_2, $e + 4, $3 + 4, $ff, $d0, $47, BURGLAR + $C8, $6 ; trainer + db SPRITE_BLACK_HAIR_BOY_2, $8 + 4, $3 + 4, $ff, $d0, $48, SUPER_NERD + $C8, $c ; trainer + db SPRITE_GYM_HELPER, $d + 4, $10 + 4, $ff, $d0, $9 ; person + + ; warp-to + EVENT_DISP CINNABAR_GYM_WIDTH, $11, $10 + EVENT_DISP CINNABAR_GYM_WIDTH, $11, $11 diff --git a/data/mapObjects/cinnabarisland.asm b/data/mapObjects/cinnabarisland.asm new file mode 100755 index 00000000..f2a53d7c --- /dev/null +++ b/data/mapObjects/cinnabarisland.asm @@ -0,0 +1,27 @@ +CinnabarIslandObject: ; 0x1c022 (size=71) + db $43 ; border block + + db $5 ; warps + db $3, $6, $1, MANSION_1 + db $3, $12, $0, CINNABAR_GYM + db $9, $6, $0, CINNABAR_LAB_1 + db $b, $b, $0, CINNABAR_POKECENTER + db $b, $f, $0, CINNABAR_MART + + db $5 ; signs + db $5, $9, $3 ; CinnabarIslandText3 + db $b, $10, $4 ; MartSignText + db $b, $c, $5 ; PokeCenterSignText + db $b, $9, $6 ; CinnabarIslandText6 + db $3, $d, $7 ; CinnabarIslandText7 + + db $2 ; people + db SPRITE_GIRL, $5 + 4, $c + 4, $fe, $2, $1 ; person + db SPRITE_GAMBLER, $6 + 4, $e + 4, $ff, $ff, $2 ; person + + ; warp-to + EVENT_DISP CINNABAR_ISLAND_WIDTH, $3, $6 ; MANSION_1 + EVENT_DISP CINNABAR_ISLAND_WIDTH, $3, $12 ; CINNABAR_GYM + EVENT_DISP CINNABAR_ISLAND_WIDTH, $9, $6 ; CINNABAR_LAB_1 + EVENT_DISP CINNABAR_ISLAND_WIDTH, $b, $b ; CINNABAR_POKECENTER + EVENT_DISP CINNABAR_ISLAND_WIDTH, $b, $f ; CINNABAR_MART diff --git a/data/mapObjects/cinnabarmart.asm b/data/mapObjects/cinnabarmart.asm new file mode 100755 index 00000000..b976d0be --- /dev/null +++ b/data/mapObjects/cinnabarmart.asm @@ -0,0 +1,17 @@ +CinnabarMartObject: ; 0x75e91 (size=38) + db $0 ; border block + + db $2 ; warps + db $7, $3, $4, $ff + db $7, $4, $4, $ff + + db $0 ; signs + + db $3 ; people + db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person + db SPRITE_ERIKA, $2 + 4, $6 + 4, $ff, $ff, $2 ; person + db SPRITE_OAK_AIDE, $4 + 4, $3 + 4, $ff, $ff, $3 ; person + + ; warp-to + EVENT_DISP CINNABAR_MART_WIDTH, $7, $3 + EVENT_DISP CINNABAR_MART_WIDTH, $7, $4 diff --git a/data/mapObjects/cinnabarpokecenter.asm b/data/mapObjects/cinnabarpokecenter.asm new file mode 100755 index 00000000..35a344e2 --- /dev/null +++ b/data/mapObjects/cinnabarpokecenter.asm @@ -0,0 +1,18 @@ +CinnabarPokecenterObject: ; 0x75e46 (size=44) + db $0 ; border block + + db $2 ; warps + db $7, $3, $3, $ff + db $7, $4, $3, $ff + + db $0 ; signs + + db $4 ; people + db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person + db SPRITE_LASS, $4 + 4, $9 + 4, $fe, $0, $2 ; person + db SPRITE_GENTLEMAN, $6 + 4, $2 + 4, $ff, $ff, $3 ; person + db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person + + ; warp-to + EVENT_DISP CINNABAR_POKECENTER_WIDTH, $7, $3 + EVENT_DISP CINNABAR_POKECENTER_WIDTH, $7, $4 diff --git a/data/mapObjects/copycatshouse1f.asm b/data/mapObjects/copycatshouse1f.asm new file mode 100755 index 00000000..ccd839f8 --- /dev/null +++ b/data/mapObjects/copycatshouse1f.asm @@ -0,0 +1,19 @@ +CopycatsHouse1FObject: ; 0x75ee3 (size=46) + db $a ; border block + + db $3 ; warps + db $7, $2, $0, $ff + db $7, $3, $0, $ff + db $1, $7, $0, COPYCATS_HOUSE_2F + + db $0 ; signs + + db $3 ; people + db SPRITE_MOM_GEISHA, $2 + 4, $2 + 4, $ff, $d0, $1 ; person + db SPRITE_FAT_BALD_GUY, $4 + 4, $5 + 4, $ff, $d2, $2 ; person + db SPRITE_CLEFAIRY, $4 + 4, $1 + 4, $fe, $1, $3 ; person + + ; warp-to + EVENT_DISP COPYCATS_HOUSE_1F_WIDTH, $7, $2 + EVENT_DISP COPYCATS_HOUSE_1F_WIDTH, $7, $3 + EVENT_DISP COPYCATS_HOUSE_1F_WIDTH, $1, $7 ; COPYCATS_HOUSE_2F diff --git a/data/mapObjects/copycatshouse2f.asm b/data/mapObjects/copycatshouse2f.asm new file mode 100755 index 00000000..3d0432c6 --- /dev/null +++ b/data/mapObjects/copycatshouse2f.asm @@ -0,0 +1,19 @@ +CopycatsHouse2FObject: ; 0x5cd21 (size=48) + db $a ; border block + + db $1 ; warps + db $1, $7, $2, COPYCATS_HOUSE_1F + + db $2 ; signs + db $5, $3, $6 ; CopycatsHouse2FText6 + db $1, $0, $7 ; CopycatsHouse2FText7 + + db $5 ; people + db SPRITE_BRUNETTE_GIRL, $3 + 4, $4 + 4, $fe, $0, $1 ; person + db SPRITE_BIRD, $6 + 4, $4 + 4, $fe, $2, $2 ; person + db SPRITE_SLOWBRO, $1 + 4, $5 + 4, $ff, $d0, $3 ; person + db SPRITE_BIRD, $0 + 4, $2 + 4, $ff, $d0, $4 ; person + db SPRITE_CLEFAIRY, $6 + 4, $1 + 4, $ff, $d3, $5 ; person + + ; warp-to + EVENT_DISP COPYCATS_HOUSE_2F_WIDTH, $1, $7 ; COPYCATS_HOUSE_1F diff --git a/data/mapObjects/daycarem.asm b/data/mapObjects/daycarem.asm new file mode 100755 index 00000000..8311853a --- /dev/null +++ b/data/mapObjects/daycarem.asm @@ -0,0 +1,15 @@ +DayCareMObject: ; 0x56459 (size=26) + db $a ; border block + + db $2 ; warps + db $7, $2, $4, $ff + db $7, $3, $4, $ff + + db $0 ; signs + + db $1 ; people + db SPRITE_GENTLEMAN, $3 + 4, $2 + 4, $ff, $d3, $1 ; person + + ; warp-to + EVENT_DISP DAYCAREM_WIDTH, $7, $2 + EVENT_DISP DAYCAREM_WIDTH, $7, $3 diff --git a/data/mapObjects/diglettscave.asm b/data/mapObjects/diglettscave.asm new file mode 100755 index 00000000..858005ce --- /dev/null +++ b/data/mapObjects/diglettscave.asm @@ -0,0 +1,14 @@ +DiglettsCaveObject: ; 0x61f72 (size=20) + db $19 ; border block + + db $2 ; warps + db $5, $5, $2, DIGLETTS_CAVE_EXIT + db $1f, $25, $2, DIGLETTS_CAVE_ENTRANCE + + db $0 ; signs + + db $0 ; people + + ; warp-to + EVENT_DISP DIGLETTS_CAVE_WIDTH, $5, $5 ; DIGLETTS_CAVE_EXIT + EVENT_DISP DIGLETTS_CAVE_WIDTH, $1f, $25 ; DIGLETTS_CAVE_ENTRANCE diff --git a/data/mapObjects/diglettscaveroute11.asm b/data/mapObjects/diglettscaveroute11.asm new file mode 100755 index 00000000..e232b1cc --- /dev/null +++ b/data/mapObjects/diglettscaveroute11.asm @@ -0,0 +1,17 @@ +DiglettsCaveEntranceRoute11Object: ; 0x1e5ca (size=34) + db $7d ; border block + + db $3 ; warps + db $7, $2, $4, $ff + db $7, $3, $4, $ff + db $4, $4, $1, DIGLETTS_CAVE + + db $0 ; signs + + db $1 ; people + db SPRITE_GAMBLER, $3 + 4, $2 + 4, $ff, $ff, $1 ; person + + ; warp-to + EVENT_DISP DIGLETTS_CAVE_ENTRANCE_WIDTH, $7, $2 + EVENT_DISP DIGLETTS_CAVE_ENTRANCE_WIDTH, $7, $3 + EVENT_DISP DIGLETTS_CAVE_ENTRANCE_WIDTH, $4, $4 ; DIGLETTS_CAVE diff --git a/data/mapObjects/diglettscaveroute2.asm b/data/mapObjects/diglettscaveroute2.asm new file mode 100755 index 00000000..2e86600f --- /dev/null +++ b/data/mapObjects/diglettscaveroute2.asm @@ -0,0 +1,17 @@ +DiglettsCaveRoute2Object: ; 0x1debf (size=34) + db $7d ; border block + + db $3 ; warps + db $7, $2, $0, $ff + db $7, $3, $0, $ff + db $4, $4, $0, DIGLETTS_CAVE + + db $0 ; signs + + db $1 ; people + db SPRITE_FISHER, $3 + 4, $3 + 4, $ff, $ff, $1 ; person + + ; warp-to + EVENT_DISP DIGLETTS_CAVE_EXIT_WIDTH, $7, $2 + EVENT_DISP DIGLETTS_CAVE_EXIT_WIDTH, $7, $3 + EVENT_DISP DIGLETTS_CAVE_EXIT_WIDTH, $4, $4 ; DIGLETTS_CAVE diff --git a/data/mapObjects/fanclub.asm b/data/mapObjects/fanclub.asm new file mode 100755 index 00000000..15b9a89f --- /dev/null +++ b/data/mapObjects/fanclub.asm @@ -0,0 +1,22 @@ +FanClubObject: ; 0x59c97 (size=62) + db $d ; border block + + db $2 ; warps + db $7, $2, $1, $ff + db $7, $3, $1, $ff + + db $2 ; signs + db $0, $1, $7 ; FanClubText7 + db $0, $6, $8 ; FanClubText8 + + db $6 ; people + db SPRITE_FISHER2, $3 + 4, $6 + 4, $ff, $d2, $1 ; person + db SPRITE_GIRL, $3 + 4, $1 + 4, $ff, $d3, $2 ; person + db SPRITE_CLEFAIRY, $4 + 4, $6 + 4, $ff, $d2, $3 ; person + db SPRITE_SEEL, $4 + 4, $1 + 4, $ff, $d3, $4 ; person + db SPRITE_GENTLEMAN, $1 + 4, $3 + 4, $ff, $d0, $5 ; person + db SPRITE_CABLE_CLUB_WOMAN, $1 + 4, $5 + 4, $ff, $d0, $6 ; person + + ; warp-to + EVENT_DISP POKEMON_FAN_CLUB_WIDTH, $7, $2 + EVENT_DISP POKEMON_FAN_CLUB_WIDTH, $7, $3 diff --git a/data/mapObjects/fightingdojo.asm b/data/mapObjects/fightingdojo.asm new file mode 100755 index 00000000..2a82c12c --- /dev/null +++ b/data/mapObjects/fightingdojo.asm @@ -0,0 +1,21 @@ +FightingDojoObject: ; 0x5cf9b (size=72) + db $3 ; border block + + db $2 ; warps + db $b, $4, $1, $ff + db $b, $5, $1, $ff + + db $0 ; signs + + db $7 ; people + db SPRITE_HIKER, $3 + 4, $5 + 4, $ff, $d0, $41, BLACKBELT + $C8, $1 ; trainer + db SPRITE_HIKER, $4 + 4, $3 + 4, $ff, $d3, $42, BLACKBELT + $C8, $2 ; trainer + db SPRITE_HIKER, $6 + 4, $3 + 4, $ff, $d3, $43, BLACKBELT + $C8, $3 ; trainer + db SPRITE_HIKER, $5 + 4, $5 + 4, $ff, $d2, $44, BLACKBELT + $C8, $4 ; trainer + db SPRITE_HIKER, $7 + 4, $5 + 4, $ff, $d2, $45, BLACKBELT + $C8, $5 ; trainer + db SPRITE_BALL, $1 + 4, $4 + 4, $ff, $ff, $6 ; person + db SPRITE_BALL, $1 + 4, $5 + 4, $ff, $ff, $7 ; person + + ; warp-to + EVENT_DISP FIGHTING_DOJO_WIDTH, $b, $4 + EVENT_DISP FIGHTING_DOJO_WIDTH, $b, $5 diff --git a/data/mapObjects/fuchsiacity.asm b/data/mapObjects/fuchsiacity.asm new file mode 100755 index 00000000..f6ce2ec3 --- /dev/null +++ b/data/mapObjects/fuchsiacity.asm @@ -0,0 +1,52 @@ +FuchsiaCityObject: ; 0x18bd4 (size=178) + db $f ; border block + + db $9 ; warps + db $d, $5, $0, FUCHSIA_MART + db $1b, $b, $0, FUCHSIA_HOUSE_1 + db $1b, $13, $0, FUCHSIA_POKECENTER + db $1b, $1b, $0, FUCHSIA_HOUSE_2 + db $3, $12, $0, SAFARI_ZONE_ENTRANCE + db $1b, $5, $0, FUCHSIA_GYM + db $d, $16, $0, FUCHSIA_MEETING_ROOM + db $1b, $1f, $1, FUCHSIA_HOUSE_3 + db $18, $1f, $0, FUCHSIA_HOUSE_3 + + db $e ; signs + db $17, $f, $b ; FuchsiaCityText11 + db $f, $19, $c ; FuchsiaCityText12 + db $5, $11, $d ; FuchsiaCityText13 + db $d, $6, $e ; MartSignText + db $1b, $14, $f ; PokeCenterSignText + db $1d, $1b, $10 ; FuchsiaCityText16 + db $f, $15, $11 ; FuchsiaCityText17 + db $1d, $5, $12 ; FuchsiaCityText18 + db $7, $21, $13 ; FuchsiaCityText19 + db $7, $1b, $14 ; FuchsiaCityText20 + db $7, $d, $15 ; FuchsiaCityText21 + db $d, $1f, $16 ; FuchsiaCityText22 + db $f, $d, $17 ; FuchsiaCityText23 + db $7, $7, $18 ; FuchsiaCityText24 + + db $a ; people + db SPRITE_BUG_CATCHER, $c + 4, $a + 4, $fe, $2, $1 ; person + db SPRITE_GAMBLER, $11 + 4, $1c + 4, $fe, $2, $2 ; person + db SPRITE_FISHER2, $e + 4, $1e + 4, $ff, $d0, $3 ; person + db SPRITE_BUG_CATCHER, $8 + 4, $18 + 4, $ff, $d1, $4 ; person + db SPRITE_CLEFAIRY, $5 + 4, $1f + 4, $fe, $0, $5 ; person + db SPRITE_BALL, $6 + 4, $19 + 4, $ff, $ff, $6 ; person + db SPRITE_SLOWBRO, $6 + 4, $c + 4, $fe, $2, $7 ; person + db SPRITE_SLOWBRO, $c + 4, $1e + 4, $fe, $2, $8 ; person + db SPRITE_SEEL, $11 + 4, $8 + 4, $fe, $0, $9 ; person + db SPRITE_OMANYTE, $5 + 4, $6 + 4, $ff, $ff, $a ; person + + ; warp-to + EVENT_DISP FUCHSIA_CITY_WIDTH, $d, $5 ; FUCHSIA_MART + EVENT_DISP FUCHSIA_CITY_WIDTH, $1b, $b ; FUCHSIA_HOUSE_1 + EVENT_DISP FUCHSIA_CITY_WIDTH, $1b, $13 ; FUCHSIA_POKECENTER + EVENT_DISP FUCHSIA_CITY_WIDTH, $1b, $1b ; FUCHSIA_HOUSE_2 + EVENT_DISP FUCHSIA_CITY_WIDTH, $3, $12 ; SAFARI_ZONE_ENTRANCE + EVENT_DISP FUCHSIA_CITY_WIDTH, $1b, $5 ; FUCHSIA_GYM + EVENT_DISP FUCHSIA_CITY_WIDTH, $d, $16 ; FUCHSIA_MEETING_ROOM + EVENT_DISP FUCHSIA_CITY_WIDTH, $1b, $1f ; FUCHSIA_HOUSE_3 + EVENT_DISP FUCHSIA_CITY_WIDTH, $18, $1f ; FUCHSIA_HOUSE_3 diff --git a/data/mapObjects/fuchsiagym.asm b/data/mapObjects/fuchsiagym.asm new file mode 100755 index 00000000..2ee62951 --- /dev/null +++ b/data/mapObjects/fuchsiagym.asm @@ -0,0 +1,22 @@ +FuchsiaGymObject: ; 0x75658 (size=82) + db $3 ; border block + + db $2 ; warps + db $11, $4, $5, $ff + db $11, $5, $5, $ff + + db $0 ; signs + + db $8 ; people + db SPRITE_BLACKBELT, $a + 4, $4 + 4, $ff, $d0, $41, KOGA + $C8, $1 ; trainer + db SPRITE_ROCKER, $d + 4, $8 + 4, $ff, $d0, $42, JUGGLER + $C8, $7 ; trainer + db SPRITE_ROCKER, $8 + 4, $7 + 4, $ff, $d3, $43, JUGGLER + $C8, $3 ; trainer + db SPRITE_ROCKER, $c + 4, $1 + 4, $ff, $d0, $44, JUGGLER + $C8, $8 ; trainer + db SPRITE_ROCKER, $5 + 4, $3 + 4, $ff, $d1, $45, TAMER + $C8, $1 ; trainer + db SPRITE_ROCKER, $2 + 4, $8 + 4, $ff, $d0, $46, TAMER + $C8, $2 ; trainer + db SPRITE_ROCKER, $7 + 4, $2 + 4, $ff, $d2, $47, JUGGLER + $C8, $4 ; trainer + db SPRITE_GYM_HELPER, $f + 4, $7 + 4, $ff, $d0, $8 ; person + + ; warp-to + EVENT_DISP FUCHSIA_GYM_WIDTH, $11, $4 + EVENT_DISP FUCHSIA_GYM_WIDTH, $11, $5 diff --git a/data/mapObjects/fuchsiahouse1.asm b/data/mapObjects/fuchsiahouse1.asm new file mode 100755 index 00000000..4e3ec676 --- /dev/null +++ b/data/mapObjects/fuchsiahouse1.asm @@ -0,0 +1,17 @@ +FuchsiaHouse1Object: ; 0x75031 (size=38) + db $a ; border block + + db $2 ; warps + db $7, $2, $1, $ff + db $7, $3, $1, $ff + + db $0 ; signs + + db $3 ; people + db SPRITE_MOM_GEISHA, $3 + 4, $2 + 4, $ff, $d3, $1 ; person + db SPRITE_GAMBLER, $2 + 4, $7 + 4, $ff, $d1, $2 ; person + db SPRITE_BUG_CATCHER, $5 + 4, $5 + 4, $ff, $ff, $3 ; person + + ; warp-to + EVENT_DISP FUCHSIA_HOUSE_1_WIDTH, $7, $2 + EVENT_DISP FUCHSIA_HOUSE_1_WIDTH, $7, $3 diff --git a/data/mapObjects/fuchsiahouse2.asm b/data/mapObjects/fuchsiahouse2.asm new file mode 100755 index 00000000..0f32eebe --- /dev/null +++ b/data/mapObjects/fuchsiahouse2.asm @@ -0,0 +1,19 @@ +FuchsiaHouse2Object: ; 0x75180 (size=45) + db $17 ; border block + + db $2 ; warps + db $7, $4, $3, $ff + db $7, $5, $3, $ff + + db $2 ; signs + db $3, $4, $4 ; FuchsiaHouse2Text4 + db $3, $5, $5 ; FuchsiaHouse2Text5 + + db $3 ; people + db SPRITE_WARDEN, $3 + 4, $2 + 4, $ff, $ff, $1 ; person + db SPRITE_BALL, $3 + 4, $8 + 4, $ff, $ff, $82, RARE_CANDY ; item + db SPRITE_BOULDER, $4 + 4, $8 + 4, $ff, $10, $3 ; person + + ; warp-to + EVENT_DISP FUCHSIA_HOUSE_2_WIDTH, $7, $4 + EVENT_DISP FUCHSIA_HOUSE_2_WIDTH, $7, $5 diff --git a/data/mapObjects/fuchsiahouse3.asm b/data/mapObjects/fuchsiahouse3.asm new file mode 100755 index 00000000..141f895f --- /dev/null +++ b/data/mapObjects/fuchsiahouse3.asm @@ -0,0 +1,17 @@ +FuchsiaHouse3Object: ; 0x56221 (size=34) + db $c ; border block + + db $3 ; warps + db $0, $2, $8, $ff + db $7, $2, $7, $ff + db $7, $3, $7, $ff + + db $0 ; signs + + db $1 ; people + db SPRITE_FISHER, $3 + 4, $5 + 4, $ff, $d3, $1 ; person + + ; warp-to + EVENT_DISP FUCHSIA_HOUSE_3_WIDTH, $0, $2 + EVENT_DISP FUCHSIA_HOUSE_3_WIDTH, $7, $2 + EVENT_DISP FUCHSIA_HOUSE_3_WIDTH, $7, $3 diff --git a/data/mapObjects/fuchsiamart.asm b/data/mapObjects/fuchsiamart.asm new file mode 100755 index 00000000..cb859734 --- /dev/null +++ b/data/mapObjects/fuchsiamart.asm @@ -0,0 +1,17 @@ +FuchsiaMartObject: ; 0x1dd9b (size=38) + db $0 ; border block + + db $2 ; warps + db $7, $3, $0, $ff + db $7, $4, $0, $ff + + db $0 ; signs + + db $3 ; people + db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person + db SPRITE_FAT_BALD_GUY, $2 + 4, $4 + 4, $ff, $ff, $2 ; person + db SPRITE_LASS, $5 + 4, $6 + 4, $fe, $1, $3 ; person + + ; warp-to + EVENT_DISP FUCHSIA_MART_WIDTH, $7, $3 + EVENT_DISP FUCHSIA_MART_WIDTH, $7, $4 diff --git a/data/mapObjects/fuchsiameetingroom.asm b/data/mapObjects/fuchsiameetingroom.asm new file mode 100755 index 00000000..fb243f4b --- /dev/null +++ b/data/mapObjects/fuchsiameetingroom.asm @@ -0,0 +1,17 @@ +FuchsiaMeetingRoomObject: ; 0x756fc (size=38) + db $17 ; border block + + db $2 ; warps + db $7, $4, $6, $ff + db $7, $5, $6, $ff + + db $0 ; signs + + db $3 ; people + db SPRITE_WHITE_PLAYER, $1 + 4, $4 + 4, $ff, $d0, $1 ; person + db SPRITE_WHITE_PLAYER, $2 + 4, $0 + 4, $ff, $d1, $2 ; person + db SPRITE_WHITE_PLAYER, $1 + 4, $a + 4, $ff, $d0, $3 ; person + + ; warp-to + EVENT_DISP FUCHSIA_MEETING_ROOM_WIDTH, $7, $4 + EVENT_DISP FUCHSIA_MEETING_ROOM_WIDTH, $7, $5 diff --git a/data/mapObjects/fuchsiapokecenter.asm b/data/mapObjects/fuchsiapokecenter.asm new file mode 100755 index 00000000..1efcd255 --- /dev/null +++ b/data/mapObjects/fuchsiapokecenter.asm @@ -0,0 +1,18 @@ +FuchsiaPokecenterObject: ; 0x7507d (size=44) + db $0 ; border block + + db $2 ; warps + db $7, $3, $2, $ff + db $7, $4, $2, $ff + + db $0 ; signs + + db $4 ; people + db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person + db SPRITE_ROCKER, $3 + 4, $2 + 4, $ff, $ff, $2 ; person + db SPRITE_LASS, $5 + 4, $6 + 4, $fe, $2, $3 ; person + db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person + + ; warp-to + EVENT_DISP FUCHSIA_POKECENTER_WIDTH, $7, $3 + EVENT_DISP FUCHSIA_POKECENTER_WIDTH, $7, $4 diff --git a/data/mapObjects/gary.asm b/data/mapObjects/gary.asm new file mode 100755 index 00000000..e94ad9b3 --- /dev/null +++ b/data/mapObjects/gary.asm @@ -0,0 +1,20 @@ +GaryObject: ; 0x7612f (size=48) + db $3 ; border block + + db $4 ; warps + db $7, $3, $1, LANCES_ROOM + db $7, $4, $2, LANCES_ROOM + db $0, $3, $0, HALL_OF_FAME + db $0, $4, $0, HALL_OF_FAME + + db $0 ; signs + + db $2 ; people + db SPRITE_BLUE, $2 + 4, $4 + 4, $ff, $d0, $1 ; person + db SPRITE_OAK, $7 + 4, $3 + 4, $ff, $d1, $2 ; person + + ; warp-to + EVENT_DISP CHAMPIONS_ROOM_WIDTH, $7, $3 ; LANCES_ROOM + EVENT_DISP CHAMPIONS_ROOM_WIDTH, $7, $4 ; LANCES_ROOM + EVENT_DISP CHAMPIONS_ROOM_WIDTH, $0, $3 ; HALL_OF_FAME + EVENT_DISP CHAMPIONS_ROOM_WIDTH, $0, $4 ; HALL_OF_FAME diff --git a/data/mapObjects/halloffameroom.asm b/data/mapObjects/halloffameroom.asm new file mode 100755 index 00000000..6d528135 --- /dev/null +++ b/data/mapObjects/halloffameroom.asm @@ -0,0 +1,15 @@ +HallofFameRoomObject: ; 0x5a571 (size=26) + db $3 ; border block + + db $2 ; warps + db $7, $4, $2, CHAMPIONS_ROOM + db $7, $5, $3, CHAMPIONS_ROOM + + db $0 ; signs + + db $1 ; people + db SPRITE_OAK, $2 + 4, $5 + 4, $ff, $d0, $1 ; person + + ; warp-to + EVENT_DISP HALL_OF_FAME_WIDTH, $7, $4 ; CHAMPIONS_ROOM + EVENT_DISP HALL_OF_FAME_WIDTH, $7, $5 ; CHAMPIONS_ROOM diff --git a/data/mapObjects/indigoplateau.asm b/data/mapObjects/indigoplateau.asm new file mode 100755 index 00000000..6970963f --- /dev/null +++ b/data/mapObjects/indigoplateau.asm @@ -0,0 +1,14 @@ +IndigoPlateauObject: ; 0x50936 (size=20) + db $e ; border block + + db $2 ; warps + db $5, $9, $0, INDIGO_PLATEAU_LOBBY + db $5, $a, $0, INDIGO_PLATEAU_LOBBY + + db $0 ; signs + + db $0 ; people + + ; warp-to + EVENT_DISP INDIGO_PLATEAU_WIDTH, $5, $9 ; INDIGO_PLATEAU_LOBBY + EVENT_DISP INDIGO_PLATEAU_WIDTH, $5, $a ; INDIGO_PLATEAU_LOBBY diff --git a/data/mapObjects/indigoplateaulobby.asm b/data/mapObjects/indigoplateaulobby.asm new file mode 100755 index 00000000..6b9c1e99 --- /dev/null +++ b/data/mapObjects/indigoplateaulobby.asm @@ -0,0 +1,21 @@ +IndigoPlateauLobbyObject: ; 0x19c95 (size=58) + db $0 ; border block + + db $3 ; warps + db $b, $7, $0, $ff + db $b, $8, $1, $ff + db $0, $8, $0, LORELEIS_ROOM + + db $0 ; signs + + db $5 ; people + db SPRITE_NURSE, $5 + 4, $7 + 4, $ff, $d0, $1 ; person + db SPRITE_GYM_HELPER, $9 + 4, $4 + 4, $ff, $d3, $2 ; person + db SPRITE_LASS, $1 + 4, $5 + 4, $ff, $d0, $3 ; person + db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $4 ; person + db SPRITE_CABLE_CLUB_WOMAN, $6 + 4, $d + 4, $ff, $d0, $5 ; person + + ; warp-to + EVENT_DISP INDIGO_PLATEAU_LOBBY_WIDTH, $b, $7 + EVENT_DISP INDIGO_PLATEAU_LOBBY_WIDTH, $b, $8 + EVENT_DISP INDIGO_PLATEAU_LOBBY_WIDTH, $0, $8 ; LORELEIS_ROOM diff --git a/data/mapObjects/lab1.asm b/data/mapObjects/lab1.asm new file mode 100755 index 00000000..52db2e24 --- /dev/null +++ b/data/mapObjects/lab1.asm @@ -0,0 +1,25 @@ +Lab1Object: ; 0x75bb3 (size=62) + db $17 ; border block + + db $5 ; warps + db $7, $2, $2, $ff + db $7, $3, $2, $ff + db $4, $8, $0, CINNABAR_LAB_2 + db $4, $c, $0, CINNABAR_LAB_3 + db $4, $10, $0, CINNABAR_LAB_4 + + db $4 ; signs + db $2, $3, $2 ; Lab1Text2 + db $4, $9, $3 ; Lab1Text3 + db $4, $d, $4 ; Lab1Text4 + db $4, $11, $5 ; Lab1Text5 + + db $1 ; people + db SPRITE_FISHER, $3 + 4, $1 + 4, $ff, $ff, $1 ; person + + ; warp-to + EVENT_DISP CINNABAR_LAB_1_WIDTH, $7, $2 + EVENT_DISP CINNABAR_LAB_1_WIDTH, $7, $3 + EVENT_DISP CINNABAR_LAB_1_WIDTH, $4, $8 ; CINNABAR_LAB_2 + EVENT_DISP CINNABAR_LAB_1_WIDTH, $4, $c ; CINNABAR_LAB_3 + EVENT_DISP CINNABAR_LAB_1_WIDTH, $4, $10 ; CINNABAR_LAB_4 diff --git a/data/mapObjects/lab2.asm b/data/mapObjects/lab2.asm new file mode 100755 index 00000000..52556c69 --- /dev/null +++ b/data/mapObjects/lab2.asm @@ -0,0 +1,17 @@ +Lab2Object: ; 0x75c45 (size=38) + db $17 ; border block + + db $2 ; warps + db $7, $2, $2, CINNABAR_LAB_1 + db $7, $3, $2, CINNABAR_LAB_1 + + db $0 ; signs + + db $3 ; people + db SPRITE_BLACK_HAIR_BOY_2, $2 + 4, $3 + 4, $ff, $d0, $1 ; person + db SPRITE_OLD_PERSON, $4 + 4, $1 + 4, $ff, $ff, $2 ; person + db SPRITE_FOULARD_WOMAN, $5 + 4, $5 + 4, $ff, $d1, $3 ; person + + ; warp-to + EVENT_DISP CINNABAR_LAB_2_WIDTH, $7, $2 ; CINNABAR_LAB_1 + EVENT_DISP CINNABAR_LAB_2_WIDTH, $7, $3 ; CINNABAR_LAB_1 diff --git a/data/mapObjects/lab3.asm b/data/mapObjects/lab3.asm new file mode 100755 index 00000000..8b4396cc --- /dev/null +++ b/data/mapObjects/lab3.asm @@ -0,0 +1,19 @@ +Lab3Object: ; 0x75cec (size=41) + db $17 ; border block + + db $2 ; warps + db $7, $2, $3, CINNABAR_LAB_1 + db $7, $3, $3, CINNABAR_LAB_1 + + db $3 ; signs + db $4, $0, $3 ; Lab3Text3 + db $4, $1, $4 ; Lab3Text4 + db $1, $2, $5 ; Lab3Text5 + + db $2 ; people + db SPRITE_OAK_AIDE, $2 + 4, $7 + 4, $ff, $d0, $1 ; person + db SPRITE_OAK_AIDE, $3 + 4, $2 + 4, $fe, $2, $2 ; person + + ; warp-to + EVENT_DISP CINNABAR_LAB_3_WIDTH, $7, $2 ; CINNABAR_LAB_1 + EVENT_DISP CINNABAR_LAB_3_WIDTH, $7, $3 ; CINNABAR_LAB_1 diff --git a/data/mapObjects/lab4.asm b/data/mapObjects/lab4.asm new file mode 100755 index 00000000..66b73ebd --- /dev/null +++ b/data/mapObjects/lab4.asm @@ -0,0 +1,16 @@ +Lab4Object: ; 0x75df0 (size=32) + db $17 ; border block + + db $2 ; warps + db $7, $2, $4, CINNABAR_LAB_1 + db $7, $3, $4, CINNABAR_LAB_1 + + db $0 ; signs + + db $2 ; people + db SPRITE_OAK_AIDE, $2 + 4, $5 + 4, $fe, $2, $1 ; person + db SPRITE_OAK_AIDE, $6 + 4, $7 + 4, $ff, $d1, $2 ; person + + ; warp-to + EVENT_DISP CINNABAR_LAB_4_WIDTH, $7, $2 ; CINNABAR_LAB_1 + EVENT_DISP CINNABAR_LAB_4_WIDTH, $7, $3 ; CINNABAR_LAB_1 diff --git a/data/mapObjects/lance.asm b/data/mapObjects/lance.asm new file mode 100755 index 00000000..60d8815a --- /dev/null +++ b/data/mapObjects/lance.asm @@ -0,0 +1,17 @@ +LanceObject: ; 0x5a3c5 (size=36) + db $3 ; border block + + db $3 ; warps + db $10, $18, $2, AGATHAS_ROOM + db $0, $5, $0, CHAMPIONS_ROOM + db $0, $6, $0, CHAMPIONS_ROOM + + db $0 ; signs + + db $1 ; people + db SPRITE_LANCE, $1 + 4, $6 + 4, $ff, $d0, $41, LANCE + $C8, $1 ; trainer + + ; warp-to + EVENT_DISP LANCES_ROOM_WIDTH, $10, $18 ; AGATHAS_ROOM + EVENT_DISP LANCES_ROOM_WIDTH, $0, $5 ; CHAMPIONS_ROOM + EVENT_DISP LANCES_ROOM_WIDTH, $0, $6 ; CHAMPIONS_ROOM diff --git a/data/mapObjects/lavenderhouse1.asm b/data/mapObjects/lavenderhouse1.asm new file mode 100755 index 00000000..4472c7ed --- /dev/null +++ b/data/mapObjects/lavenderhouse1.asm @@ -0,0 +1,20 @@ +LavenderHouse1Object: ; 0x1d96a (size=56) + db $a ; border block + + db $2 ; warps + db $7, $2, $2, $ff + db $7, $3, $2, $ff + + db $0 ; signs + + db $6 ; people + db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $3 + 4, $ff, $ff, $1 ; person + db SPRITE_LITTLE_GIRL, $3 + 4, $6 + 4, $ff, $d0, $2 ; person + db SPRITE_SLOWBRO, $4 + 4, $6 + 4, $ff, $d1, $3 ; person + db SPRITE_SLOWBRO, $3 + 4, $1 + 4, $ff, $ff, $4 ; person + db SPRITE_MR_FUJI, $1 + 4, $3 + 4, $ff, $ff, $5 ; person + db SPRITE_BOOK_MAP_DEX, $3 + 4, $3 + 4, $ff, $ff, $6 ; person + + ; warp-to + EVENT_DISP LAVENDER_HOUSE_1_WIDTH, $7, $2 + EVENT_DISP LAVENDER_HOUSE_1_WIDTH, $7, $3 diff --git a/data/mapObjects/lavenderhouse2.asm b/data/mapObjects/lavenderhouse2.asm new file mode 100755 index 00000000..cbb7dda7 --- /dev/null +++ b/data/mapObjects/lavenderhouse2.asm @@ -0,0 +1,16 @@ +LavenderHouse2Object: ; 0x1d9e6 (size=32) + db $a ; border block + + db $2 ; warps + db $7, $2, $4, $ff + db $7, $3, $4, $ff + + db $0 ; signs + + db $2 ; people + db SPRITE_SLOWBRO, $5 + 4, $3 + 4, $ff, $d1, $1 ; person + db SPRITE_BRUNETTE_GIRL, $4 + 4, $2 + 4, $ff, $d3, $2 ; person + + ; warp-to + EVENT_DISP LAVENDER_HOUSE_2_WIDTH, $7, $2 + EVENT_DISP LAVENDER_HOUSE_2_WIDTH, $7, $3 diff --git a/data/mapObjects/lavendermart.asm b/data/mapObjects/lavendermart.asm new file mode 100755 index 00000000..79d80c35 --- /dev/null +++ b/data/mapObjects/lavendermart.asm @@ -0,0 +1,17 @@ +LavenderMartObject: ; 0x5c95d (size=38) + db $0 ; border block + + db $2 ; warps + db $7, $3, $3, $ff + db $7, $4, $3, $ff + + db $0 ; signs + + db $3 ; people + db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person + db SPRITE_BALDING_GUY, $4 + 4, $3 + 4, $ff, $ff, $2 ; person + db SPRITE_BLACK_HAIR_BOY_1, $2 + 4, $7 + 4, $ff, $ff, $3 ; person + + ; warp-to + EVENT_DISP LAVENDER_MART_WIDTH, $7, $3 + EVENT_DISP LAVENDER_MART_WIDTH, $7, $4 diff --git a/data/mapObjects/lavenderpokecenter.asm b/data/mapObjects/lavenderpokecenter.asm new file mode 100755 index 00000000..a35bf4dc --- /dev/null +++ b/data/mapObjects/lavenderpokecenter.asm @@ -0,0 +1,18 @@ +LavenderPokecenterObject: ; 0x5c8f4 (size=44) + db $0 ; border block + + db $2 ; warps + db $7, $3, $0, $ff + db $7, $4, $0, $ff + + db $0 ; signs + + db $4 ; people + db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person + db SPRITE_GENTLEMAN, $3 + 4, $5 + 4, $ff, $ff, $2 ; person + db SPRITE_LITTLE_GIRL, $6 + 4, $2 + 4, $fe, $1, $3 ; person + db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person + + ; warp-to + EVENT_DISP LAVENDER_POKECENTER_WIDTH, $7, $3 + EVENT_DISP LAVENDER_POKECENTER_WIDTH, $7, $4 diff --git a/data/mapObjects/lavendertown.asm b/data/mapObjects/lavendertown.asm new file mode 100755 index 00000000..7dc75512 --- /dev/null +++ b/data/mapObjects/lavendertown.asm @@ -0,0 +1,31 @@ +LavenderTownObject: ; 0x4402d (size=88) + db $2c ; border block + + db $6 ; warps + db $5, $3, $0, LAVENDER_POKECENTER + db $5, $e, $0, POKEMONTOWER_1 + db $9, $7, $0, LAVENDER_HOUSE_1 + db $d, $f, $0, LAVENDER_MART + db $d, $3, $0, LAVENDER_HOUSE_2 + db $d, $7, $0, NAME_RATERS_HOUSE + + db $6 ; signs + db $9, $b, $4 ; LavenderTownText4 + db $3, $9, $5 ; LavenderTownText5 + db $d, $10, $6 ; MartSignText + db $5, $4, $7 ; PokeCenterSignText + db $9, $5, $8 ; LavenderTownText8 + db $7, $11, $9 ; LavenderTownText9 + + db $3 ; people + db SPRITE_LITTLE_GIRL, $9 + 4, $f + 4, $fe, $0, $1 ; person + db SPRITE_BLACK_HAIR_BOY_1, $a + 4, $9 + 4, $ff, $ff, $2 ; person + db SPRITE_BLACK_HAIR_BOY_2, $7 + 4, $8 + 4, $fe, $2, $3 ; person + + ; warp-to + EVENT_DISP LAVENDER_TOWN_WIDTH, $5, $3 ; LAVENDER_POKECENTER + EVENT_DISP LAVENDER_TOWN_WIDTH, $5, $e ; POKEMONTOWER_1 + EVENT_DISP LAVENDER_TOWN_WIDTH, $9, $7 ; LAVENDER_HOUSE_1 + EVENT_DISP LAVENDER_TOWN_WIDTH, $d, $f ; LAVENDER_MART + EVENT_DISP LAVENDER_TOWN_WIDTH, $d, $3 ; LAVENDER_HOUSE_2 + EVENT_DISP LAVENDER_TOWN_WIDTH, $d, $7 ; NAME_RATERS_HOUSE diff --git a/data/mapObjects/lorelei.asm b/data/mapObjects/lorelei.asm new file mode 100755 index 00000000..3cf1f450 --- /dev/null +++ b/data/mapObjects/lorelei.asm @@ -0,0 +1,19 @@ +LoreleiObject: ; 0x76280 (size=44) + db $3 ; border block + + db $4 ; warps + db $b, $4, $2, INDIGO_PLATEAU_LOBBY + db $b, $5, $2, INDIGO_PLATEAU_LOBBY + db $0, $4, $0, BRUNOS_ROOM + db $0, $5, $1, BRUNOS_ROOM + + db $0 ; signs + + db $1 ; people + db SPRITE_LORELEI, $2 + 4, $5 + 4, $ff, $d0, $41, LORELEI + $C8, $1 ; trainer + + ; warp-to + EVENT_DISP LORELEIS_ROOM_WIDTH, $b, $4 ; INDIGO_PLATEAU_LOBBY + EVENT_DISP LORELEIS_ROOM_WIDTH, $b, $5 ; INDIGO_PLATEAU_LOBBY + EVENT_DISP LORELEIS_ROOM_WIDTH, $0, $4 ; BRUNOS_ROOM + EVENT_DISP LORELEIS_ROOM_WIDTH, $0, $5 ; BRUNOS_ROOM diff --git a/data/mapObjects/mansion1.asm b/data/mapObjects/mansion1.asm new file mode 100755 index 00000000..426be00b --- /dev/null +++ b/data/mapObjects/mansion1.asm @@ -0,0 +1,29 @@ +Mansion1Object: ; 0x443a4 (size=90) + db $2e ; border block + + db $8 ; warps + db $1b, $4, $0, $ff + db $1b, $5, $0, $ff + db $1b, $6, $0, $ff + db $1b, $7, $0, $ff + db $a, $5, $0, MANSION_2 + db $17, $15, $0, MANSION_4 + db $1b, $1a, $0, $ff + db $1b, $1b, $0, $ff + + db $0 ; signs + + db $3 ; people + db SPRITE_OAK_AIDE, $11 + 4, $11 + 4, $ff, $d2, $41, SCIENTIST + $C8, $4 ; trainer + db SPRITE_BALL, $3 + 4, $e + 4, $ff, $ff, $82, ESCAPE_ROPE ; item + db SPRITE_BALL, $15 + 4, $12 + 4, $ff, $ff, $83, CARBOS ; item + + ; warp-to + EVENT_DISP MANSION_1_WIDTH, $1b, $4 + EVENT_DISP MANSION_1_WIDTH, $1b, $5 + EVENT_DISP MANSION_1_WIDTH, $1b, $6 + EVENT_DISP MANSION_1_WIDTH, $1b, $7 + EVENT_DISP MANSION_1_WIDTH, $a, $5 ; MANSION_2 + EVENT_DISP MANSION_1_WIDTH, $17, $15 ; MANSION_4 + EVENT_DISP MANSION_1_WIDTH, $1b, $1a + EVENT_DISP MANSION_1_WIDTH, $1b, $1b diff --git a/data/mapObjects/mansion2.asm b/data/mapObjects/mansion2.asm new file mode 100755 index 00000000..c8621ba4 --- /dev/null +++ b/data/mapObjects/mansion2.asm @@ -0,0 +1,22 @@ +Mansion2Object: ; 0x520d1 (size=63) + db $1 ; border block + + db $4 ; warps + db $a, $5, $4, MANSION_1 + db $a, $7, $0, MANSION_3 + db $e, $19, $2, MANSION_3 + db $1, $6, $1, MANSION_3 + + db $0 ; signs + + db $4 ; people + db SPRITE_BLACK_HAIR_BOY_2, $11 + 4, $3 + 4, $fe, $2, $41, BURGLAR + $C8, $7 ; trainer + db SPRITE_BALL, $7 + 4, $1c + 4, $ff, $ff, $82, CALCIUM ; item + db SPRITE_BOOK_MAP_DEX, $2 + 4, $12 + 4, $ff, $ff, $3 ; person + db SPRITE_BOOK_MAP_DEX, $16 + 4, $3 + 4, $ff, $ff, $4 ; person + + ; warp-to + EVENT_DISP MANSION_2_WIDTH, $a, $5 ; MANSION_1 + EVENT_DISP MANSION_2_WIDTH, $a, $7 ; MANSION_3 + EVENT_DISP MANSION_2_WIDTH, $e, $19 ; MANSION_3 + EVENT_DISP MANSION_2_WIDTH, $1, $6 ; MANSION_3 diff --git a/data/mapObjects/mansion3.asm b/data/mapObjects/mansion3.asm new file mode 100755 index 00000000..b8eb7b5c --- /dev/null +++ b/data/mapObjects/mansion3.asm @@ -0,0 +1,21 @@ +Mansion3Object: ; 0x522e6 (size=64) + db $1 ; border block + + db $3 ; warps + db $a, $7, $1, MANSION_2 + db $1, $6, $3, MANSION_2 + db $e, $19, $2, MANSION_2 + + db $0 ; signs + + db $5 ; people + db SPRITE_BLACK_HAIR_BOY_2, $b + 4, $5 + 4, $fe, $2, $41, BURGLAR + $C8, $8 ; trainer + db SPRITE_OAK_AIDE, $b + 4, $14 + 4, $ff, $d2, $42, SCIENTIST + $C8, $c ; trainer + db SPRITE_BALL, $10 + 4, $1 + 4, $ff, $ff, $83, MAX_POTION ; item + db SPRITE_BALL, $5 + 4, $19 + 4, $ff, $ff, $84, IRON ; item + db SPRITE_BOOK_MAP_DEX, $c + 4, $6 + 4, $ff, $ff, $5 ; person + + ; warp-to + EVENT_DISP MANSION_3_WIDTH, $a, $7 ; MANSION_2 + EVENT_DISP MANSION_3_WIDTH, $1, $6 ; MANSION_2 + EVENT_DISP MANSION_3_WIDTH, $e, $19 ; MANSION_2 diff --git a/data/mapObjects/mansion4.asm b/data/mapObjects/mansion4.asm new file mode 100755 index 00000000..03f226d0 --- /dev/null +++ b/data/mapObjects/mansion4.asm @@ -0,0 +1,20 @@ +Mansion4Object: ; 0x52498 (size=69) + db $1 ; border block + + db $1 ; warps + db $16, $17, $5, MANSION_1 + + db $0 ; signs + + db $8 ; people + db SPRITE_BLACK_HAIR_BOY_2, $17 + 4, $10 + 4, $ff, $ff, $41, BURGLAR + $C8, $9 ; trainer + db SPRITE_OAK_AIDE, $b + 4, $1b + 4, $ff, $d0, $42, SCIENTIST + $C8, $d ; trainer + db SPRITE_BALL, $2 + 4, $a + 4, $ff, $ff, $83, RARE_CANDY ; item + db SPRITE_BALL, $16 + 4, $1 + 4, $ff, $ff, $84, FULL_RESTORE ; item + db SPRITE_BALL, $19 + 4, $13 + 4, $ff, $ff, $85, TM_14 ; item + db SPRITE_BALL, $4 + 4, $5 + 4, $ff, $ff, $86, TM_22 ; item + db SPRITE_BOOK_MAP_DEX, $14 + 4, $10 + 4, $ff, $ff, $7 ; person + db SPRITE_BALL, $d + 4, $5 + 4, $ff, $ff, $88, SECRET_KEY ; item + + ; warp-to + EVENT_DISP MANSION_4_WIDTH, $16, $17 ; MANSION_1 diff --git a/data/mapObjects/mtmoon1.asm b/data/mapObjects/mtmoon1.asm new file mode 100755 index 00000000..afb83686 --- /dev/null +++ b/data/mapObjects/mtmoon1.asm @@ -0,0 +1,34 @@ +MtMoon1Object: ; 0x49b06 (size=145) + db $3 ; border block + + db $5 ; warps + db $23, $e, $1, $ff + db $23, $f, $1, $ff + db $5, $5, $0, MT_MOON_2 + db $b, $11, $2, MT_MOON_2 + db $f, $19, $3, MT_MOON_2 + + db $1 ; signs + db $17, $f, $e ; MtMoon1Text14 + + db $d ; people + db SPRITE_HIKER, $6 + 4, $5 + 4, $ff, $d0, $41, HIKER + $C8, $1 ; trainer + db SPRITE_BUG_CATCHER, $10 + 4, $c + 4, $ff, $d3, $42, YOUNGSTER + $C8, $3 ; trainer + db SPRITE_LASS, $4 + 4, $1e + 4, $ff, $d0, $43, LASS + $C8, $5 ; trainer + db SPRITE_BLACK_HAIR_BOY_2, $1f + 4, $18 + 4, $ff, $d1, $44, SUPER_NERD + $C8, $1 ; trainer + db SPRITE_LASS, $17 + 4, $10 + 4, $ff, $d0, $45, LASS + $C8, $6 ; trainer + db SPRITE_BUG_CATCHER, $16 + 4, $7 + 4, $ff, $d0, $46, BUG_CATCHER + $C8, $7 ; trainer + db SPRITE_BUG_CATCHER, $1b + 4, $1e + 4, $ff, $d3, $47, BUG_CATCHER + $C8, $8 ; trainer + db SPRITE_BALL, $14 + 4, $2 + 4, $ff, $ff, $88, POTION ; item + db SPRITE_BALL, $2 + 4, $2 + 4, $ff, $ff, $89, MOON_STONE ; item + db SPRITE_BALL, $1f + 4, $23 + 4, $ff, $ff, $8a, RARE_CANDY ; item + db SPRITE_BALL, $17 + 4, $24 + 4, $ff, $ff, $8b, ESCAPE_ROPE ; item + db SPRITE_BALL, $21 + 4, $14 + 4, $ff, $ff, $8c, POTION ; item + db SPRITE_BALL, $20 + 4, $5 + 4, $ff, $ff, $8d, TM_12 ; item + + ; warp-to + EVENT_DISP MT_MOON_1_WIDTH, $23, $e + EVENT_DISP MT_MOON_1_WIDTH, $23, $f + EVENT_DISP MT_MOON_1_WIDTH, $5, $5 ; MT_MOON_2 + EVENT_DISP MT_MOON_1_WIDTH, $b, $11 ; MT_MOON_2 + EVENT_DISP MT_MOON_1_WIDTH, $f, $19 ; MT_MOON_2 diff --git a/data/mapObjects/mtmoon2.asm b/data/mapObjects/mtmoon2.asm new file mode 100755 index 00000000..33313f17 --- /dev/null +++ b/data/mapObjects/mtmoon2.asm @@ -0,0 +1,26 @@ +MtMoon2Object: ; 0x51a4d (size=68) + db $3 ; border block + + db $8 ; warps + db $5, $5, $2, MT_MOON_1 + db $b, $11, $0, MT_MOON_3 + db $9, $19, $3, MT_MOON_1 + db $f, $19, $4, MT_MOON_1 + db $11, $15, $1, MT_MOON_3 + db $1b, $d, $2, MT_MOON_3 + db $3, $17, $3, MT_MOON_3 + db $3, $1b, $2, $ff + + db $0 ; signs + + db $0 ; people + + ; warp-to + EVENT_DISP MT_MOON_2_WIDTH, $5, $5 ; MT_MOON_1 + EVENT_DISP MT_MOON_2_WIDTH, $b, $11 ; MT_MOON_3 + EVENT_DISP MT_MOON_2_WIDTH, $9, $19 ; MT_MOON_1 + EVENT_DISP MT_MOON_2_WIDTH, $f, $19 ; MT_MOON_1 + EVENT_DISP MT_MOON_2_WIDTH, $11, $15 ; MT_MOON_3 + EVENT_DISP MT_MOON_2_WIDTH, $1b, $d ; MT_MOON_3 + EVENT_DISP MT_MOON_2_WIDTH, $3, $17 ; MT_MOON_3 + EVENT_DISP MT_MOON_2_WIDTH, $3, $1b diff --git a/data/mapObjects/mtmoon3.asm b/data/mapObjects/mtmoon3.asm new file mode 100755 index 00000000..7872c9db --- /dev/null +++ b/data/mapObjects/mtmoon3.asm @@ -0,0 +1,27 @@ +MtMoon3Object: ; 0x49fdb (size=102) + db $3 ; border block + + db $4 ; warps + db $9, $19, $1, MT_MOON_2 + db $11, $15, $4, MT_MOON_2 + db $1b, $f, $5, MT_MOON_2 + db $7, $5, $6, MT_MOON_2 + + db $0 ; signs + + db $9 ; people + db SPRITE_BLACK_HAIR_BOY_2, $8 + 4, $c + 4, $ff, $d3, $41, SUPER_NERD + $C8, $2 ; trainer + db SPRITE_ROCKET, $10 + 4, $b + 4, $ff, $d0, $42, ROCKET + $C8, $1 ; trainer + db SPRITE_ROCKET, $16 + 4, $f + 4, $ff, $d0, $43, ROCKET + $C8, $2 ; trainer + db SPRITE_ROCKET, $b + 4, $1d + 4, $ff, $d1, $44, ROCKET + $C8, $3 ; trainer + db SPRITE_ROCKET, $11 + 4, $1d + 4, $ff, $d2, $45, ROCKET + $C8, $4 ; trainer + db SPRITE_OMANYTE, $6 + 4, $c + 4, $ff, $ff, $6 ; person + db SPRITE_OMANYTE, $6 + 4, $d + 4, $ff, $ff, $7 ; person + db SPRITE_BALL, $15 + 4, $19 + 4, $ff, $ff, $88, HP_UP ; item + db SPRITE_BALL, $5 + 4, $1d + 4, $ff, $ff, $89, TM_01 ; item + + ; warp-to + EVENT_DISP MT_MOON_3_WIDTH, $9, $19 ; MT_MOON_2 + EVENT_DISP MT_MOON_3_WIDTH, $11, $15 ; MT_MOON_2 + EVENT_DISP MT_MOON_3_WIDTH, $1b, $f ; MT_MOON_2 + EVENT_DISP MT_MOON_3_WIDTH, $7, $5 ; MT_MOON_2 diff --git a/data/mapObjects/mtmoonpokecenter.asm b/data/mapObjects/mtmoonpokecenter.asm new file mode 100755 index 00000000..f5f52f65 --- /dev/null +++ b/data/mapObjects/mtmoonpokecenter.asm @@ -0,0 +1,20 @@ +MtMoonPokecenterObject: ; 0x49376 (size=56) + db $0 ; border block + + db $2 ; warps + db $7, $3, $0, $ff + db $7, $4, $0, $ff + + db $0 ; signs + + db $6 ; people + db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person + db SPRITE_BUG_CATCHER, $3 + 4, $4 + 4, $ff, $d1, $2 ; person + db SPRITE_GENTLEMAN, $3 + 4, $7 + 4, $ff, $d1, $3 ; person + db SPRITE_FAT_BALD_GUY, $6 + 4, $a + 4, $fe, $2, $4 ; person + db SPRITE_CLIPBOARD, $2 + 4, $7 + 4, $ff, $ff, $5 ; person + db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $6 ; person + + ; warp-to + EVENT_DISP MT_MOON_POKECENTER_WIDTH, $7, $3 + EVENT_DISP MT_MOON_POKECENTER_WIDTH, $7, $4 diff --git a/data/mapObjects/museum1f.asm b/data/mapObjects/museum1f.asm new file mode 100755 index 00000000..c6fb4b5a --- /dev/null +++ b/data/mapObjects/museum1f.asm @@ -0,0 +1,25 @@ +Museum1FObject: ; 0x5c2c1 (size=74) + db $a ; border block + + db $5 ; warps + db $7, $a, $0, $ff + db $7, $b, $0, $ff + db $7, $10, $1, $ff + db $7, $11, $1, $ff + db $7, $7, $0, MUSEUM_2F + + db $0 ; signs + + db $5 ; people + db SPRITE_OAK_AIDE, $4 + 4, $c + 4, $ff, $d2, $1 ; person + db SPRITE_GAMBLER, $4 + 4, $1 + 4, $ff, $ff, $2 ; person + db SPRITE_OAK_AIDE, $2 + 4, $f + 4, $ff, $d0, $3 ; person + db SPRITE_OAK_AIDE, $4 + 4, $11 + 4, $ff, $ff, $4 ; person + db SPRITE_OLD_AMBER, $2 + 4, $10 + 4, $ff, $ff, $5 ; person + + ; warp-to + EVENT_DISP MUSEUM_1F_WIDTH, $7, $a + EVENT_DISP MUSEUM_1F_WIDTH, $7, $b + EVENT_DISP MUSEUM_1F_WIDTH, $7, $10 + EVENT_DISP MUSEUM_1F_WIDTH, $7, $11 + EVENT_DISP MUSEUM_1F_WIDTH, $7, $7 ; MUSEUM_2F diff --git a/data/mapObjects/museum2f.asm b/data/mapObjects/museum2f.asm new file mode 100755 index 00000000..88ee827c --- /dev/null +++ b/data/mapObjects/museum2f.asm @@ -0,0 +1,19 @@ +Museum2FObject: ; 0x5c34b (size=48) + db $a ; border block + + db $1 ; warps + db $7, $7, $4, MUSEUM_1F + + db $2 ; signs + db $2, $b, $6 ; Museum2FText6 + db $5, $2, $7 ; Museum2FText7 + + db $5 ; people + db SPRITE_BUG_CATCHER, $7 + 4, $1 + 4, $fe, $2, $1 ; person + db SPRITE_OLD_PERSON, $5 + 4, $0 + 4, $ff, $d0, $2 ; person + db SPRITE_OAK_AIDE, $5 + 4, $7 + 4, $ff, $d0, $3 ; person + db SPRITE_BRUNETTE_GIRL, $5 + 4, $b + 4, $ff, $ff, $4 ; person + db SPRITE_HIKER, $5 + 4, $c + 4, $ff, $d0, $5 ; person + + ; warp-to + EVENT_DISP MUSEUM_2F_WIDTH, $7, $7 ; MUSEUM_1F diff --git a/data/mapObjects/namerater.asm b/data/mapObjects/namerater.asm new file mode 100755 index 00000000..b0999d61 --- /dev/null +++ b/data/mapObjects/namerater.asm @@ -0,0 +1,15 @@ +NameRaterObject: ; 0x1dad6 (size=26) + db $a ; border block + + db $2 ; warps + db $7, $2, $5, $ff + db $7, $3, $5, $ff + + db $0 ; signs + + db $1 ; people + db SPRITE_MR_MASTERBALL, $3 + 4, $5 + 4, $ff, $d2, $1 ; person + + ; warp-to + EVENT_DISP NAME_RATERS_HOUSE_WIDTH, $7, $2 + EVENT_DISP NAME_RATERS_HOUSE_WIDTH, $7, $3 diff --git a/data/mapObjects/oakslab.asm b/data/mapObjects/oakslab.asm new file mode 100755 index 00000000..917c24e2 --- /dev/null +++ b/data/mapObjects/oakslab.asm @@ -0,0 +1,25 @@ +OaksLabObject: ; 0x1d40a (size=88) + db $3 ; border block + + db $2 ; warps + db $b, $4, $2, $ff + db $b, $5, $2, $ff + + db $0 ; signs + + db $b ; people + db SPRITE_BLUE, $3 + 4, $4 + 4, $ff, $ff, $41, SONY1 + $C8, $1 ; trainer + db SPRITE_BALL, $3 + 4, $6 + 4, $ff, $ff, $2 ; person + db SPRITE_BALL, $3 + 4, $7 + 4, $ff, $ff, $3 ; person + db SPRITE_BALL, $3 + 4, $8 + 4, $ff, $ff, $4 ; person + db SPRITE_OAK, $2 + 4, $5 + 4, $ff, $d0, $5 ; person + db SPRITE_BOOK_MAP_DEX, $1 + 4, $2 + 4, $ff, $ff, $6 ; person + db SPRITE_BOOK_MAP_DEX, $1 + 4, $3 + 4, $ff, $ff, $7 ; person + db SPRITE_OAK, $a + 4, $5 + 4, $ff, $d1, $8 ; person + db SPRITE_GIRL, $9 + 4, $1 + 4, $fe, $1, $9 ; person + db SPRITE_OAK_AIDE, $a + 4, $2 + 4, $ff, $ff, $a ; person + db SPRITE_OAK_AIDE, $a + 4, $8 + 4, $ff, $ff, $b ; person + + ; warp-to + EVENT_DISP OAKS_LAB_WIDTH, $b, $4 + EVENT_DISP OAKS_LAB_WIDTH, $b, $5 diff --git a/data/mapObjects/pallettown.asm b/data/mapObjects/pallettown.asm new file mode 100755 index 00000000..cef66431 --- /dev/null +++ b/data/mapObjects/pallettown.asm @@ -0,0 +1,23 @@ +PalletTownObject: ; 0x182c3 (size=58) + db $b ; border block + + db $3 ; warps + db $5, $5, $0, REDS_HOUSE_1F + db $5, $d, $0, BLUES_HOUSE + db $b, $c, $1, OAKS_LAB + + db $4 ; signs + db $d, $d, $4 ; PalletTownText4 + db $9, $7, $5 ; PalletTownText5 + db $5, $3, $6 ; PalletTownText6 + db $5, $b, $7 ; PalletTownText7 + + db $3 ; people + db SPRITE_OAK, $5 + 4, $8 + 4, $ff, $ff, $1 ; person + db SPRITE_GIRL, $8 + 4, $3 + 4, $fe, $0, $2 ; person + db SPRITE_FISHER2, $e + 4, $b + 4, $fe, $0, $3 ; person + + ; warp-to + EVENT_DISP PALLET_TOWN_WIDTH, $5, $5 ; REDS_HOUSE_1F + EVENT_DISP PALLET_TOWN_WIDTH, $5, $d ; BLUES_HOUSE + EVENT_DISP PALLET_TOWN_WIDTH, $b, $c ; OAKS_LAB diff --git a/data/mapObjects/pewtercity.asm b/data/mapObjects/pewtercity.asm new file mode 100755 index 00000000..e971ad50 --- /dev/null +++ b/data/mapObjects/pewtercity.asm @@ -0,0 +1,36 @@ +PewterCityObject: ; 0x18577 (size=111) + db $a ; border block + + db $7 ; warps + db $7, $e, $0, MUSEUM_1F + db $5, $13, $2, MUSEUM_1F + db $11, $10, $0, PEWTER_GYM + db $d, $1d, $0, PEWTER_HOUSE_1 + db $11, $17, $0, PEWTER_MART + db $1d, $7, $0, PEWTER_HOUSE_2 + db $19, $d, $0, PEWTER_POKECENTER + + db $7 ; signs + db $1d, $13, $6 ; PewterCityText6 + db $13, $21, $7 ; PewterCityText7 + db $11, $18, $8 ; MartSignText + db $19, $e, $9 ; PokeCenterSignText + db $9, $f, $a ; PewterCityText10 + db $11, $b, $b ; PewterCityText11 + db $17, $19, $c ; PewterCityText12 + + db $5 ; people + db SPRITE_LASS, $f + 4, $8 + 4, $ff, $ff, $1 ; person + db SPRITE_BLACK_HAIR_BOY_1, $19 + 4, $11 + 4, $ff, $ff, $2 ; person + db SPRITE_BLACK_HAIR_BOY_2, $11 + 4, $1b + 4, $ff, $ff, $3 ; person + db SPRITE_BLACK_HAIR_BOY_2, $19 + 4, $1a + 4, $fe, $2, $4 ; person + db SPRITE_BUG_CATCHER, $10 + 4, $23 + 4, $ff, $d0, $5 ; person + + ; warp-to + EVENT_DISP PEWTER_CITY_WIDTH, $7, $e ; MUSEUM_1F + EVENT_DISP PEWTER_CITY_WIDTH, $5, $13 ; MUSEUM_1F + EVENT_DISP PEWTER_CITY_WIDTH, $11, $10 ; PEWTER_GYM + EVENT_DISP PEWTER_CITY_WIDTH, $d, $1d ; PEWTER_HOUSE_1 + EVENT_DISP PEWTER_CITY_WIDTH, $11, $17 ; PEWTER_MART + EVENT_DISP PEWTER_CITY_WIDTH, $1d, $7 ; PEWTER_HOUSE_2 + EVENT_DISP PEWTER_CITY_WIDTH, $19, $d ; PEWTER_POKECENTER diff --git a/data/mapObjects/pewtergym.asm b/data/mapObjects/pewtergym.asm new file mode 100755 index 00000000..32694fd1 --- /dev/null +++ b/data/mapObjects/pewtergym.asm @@ -0,0 +1,17 @@ +PewterGymObject: ; 0x5c52e (size=42) + db $3 ; border block + + db $2 ; warps + db $d, $4, $2, $ff + db $d, $5, $2, $ff + + db $0 ; signs + + db $3 ; people + db SPRITE_BLACK_HAIR_BOY_2, $1 + 4, $4 + 4, $ff, $d0, $41, BROCK + $C8, $1 ; trainer + db SPRITE_BLACK_HAIR_BOY_1, $6 + 4, $3 + 4, $ff, $d3, $42, JR__TRAINER_M + $C8, $1 ; trainer + db SPRITE_GYM_HELPER, $a + 4, $7 + 4, $ff, $d0, $3 ; person + + ; warp-to + EVENT_DISP PEWTER_GYM_WIDTH, $d, $4 + EVENT_DISP PEWTER_GYM_WIDTH, $d, $5 diff --git a/data/mapObjects/pewterhouse1.asm b/data/mapObjects/pewterhouse1.asm new file mode 100755 index 00000000..9af4d71b --- /dev/null +++ b/data/mapObjects/pewterhouse1.asm @@ -0,0 +1,17 @@ +PewterHouse1Object: ; 0x1d616 (size=38) + db $a ; border block + + db $2 ; warps + db $7, $2, $3, $ff + db $7, $3, $3, $ff + + db $0 ; signs + + db $3 ; people + db SPRITE_SLOWBRO, $5 + 4, $4 + 4, $ff, $d2, $1 ; person + db SPRITE_YOUNG_BOY, $5 + 4, $3 + 4, $ff, $d3, $2 ; person + db SPRITE_FAT_BALD_GUY, $2 + 4, $1 + 4, $ff, $ff, $3 ; person + + ; warp-to + EVENT_DISP PEWTER_HOUSE_1_WIDTH, $7, $2 + EVENT_DISP PEWTER_HOUSE_1_WIDTH, $7, $3 diff --git a/data/mapObjects/pewterhouse2.asm b/data/mapObjects/pewterhouse2.asm new file mode 100755 index 00000000..aa48c5bc --- /dev/null +++ b/data/mapObjects/pewterhouse2.asm @@ -0,0 +1,16 @@ +PewterHouse2Object: ; 0x1d659 (size=32) + db $a ; border block + + db $2 ; warps + db $7, $2, $5, $ff + db $7, $3, $5, $ff + + db $0 ; signs + + db $2 ; people + db SPRITE_GAMBLER, $3 + 4, $2 + 4, $ff, $d3, $1 ; person + db SPRITE_BUG_CATCHER, $5 + 4, $4 + 4, $ff, $ff, $2 ; person + + ; warp-to + EVENT_DISP PEWTER_HOUSE_2_WIDTH, $7, $2 + EVENT_DISP PEWTER_HOUSE_2_WIDTH, $7, $3 diff --git a/data/mapObjects/pewtermart.asm b/data/mapObjects/pewtermart.asm new file mode 100755 index 00000000..343f70c1 --- /dev/null +++ b/data/mapObjects/pewtermart.asm @@ -0,0 +1,17 @@ +PewterMartObject: ; 0x74cda (size=38) + db $0 ; border block + + db $2 ; warps + db $7, $3, $4, $ff + db $7, $4, $4, $ff + + db $0 ; signs + + db $3 ; people + db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person + db SPRITE_BUG_CATCHER, $3 + 4, $3 + 4, $fe, $1, $2 ; person + db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $5 + 4, $ff, $ff, $3 ; person + + ; warp-to + EVENT_DISP PEWTER_MART_WIDTH, $7, $3 + EVENT_DISP PEWTER_MART_WIDTH, $7, $4 diff --git a/data/mapObjects/pewterpokecenter.asm b/data/mapObjects/pewterpokecenter.asm new file mode 100755 index 00000000..a9a03272 --- /dev/null +++ b/data/mapObjects/pewterpokecenter.asm @@ -0,0 +1,18 @@ +PewterPokecenterObject: ; 0x5c60d (size=44) + db $0 ; border block + + db $2 ; warps + db $7, $3, $6, $ff + db $7, $4, $6, $ff + + db $0 ; signs + + db $4 ; people + db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person + db SPRITE_GENTLEMAN, $7 + 4, $b + 4, $ff, $d2, $2 ; person + db SPRITE_CLEFAIRY, $3 + 4, $1 + 4, $ff, $d0, $3 ; person + db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person + + ; warp-to + EVENT_DISP PEWTER_POKECENTER_WIDTH, $7, $3 + EVENT_DISP PEWTER_POKECENTER_WIDTH, $7, $4 diff --git a/data/mapObjects/pokemontower1.asm b/data/mapObjects/pokemontower1.asm new file mode 100755 index 00000000..30fb9cbc --- /dev/null +++ b/data/mapObjects/pokemontower1.asm @@ -0,0 +1,21 @@ +PokemonTower1Object: ; 0x60452 (size=58) + db $1 ; border block + + db $3 ; warps + db $11, $a, $1, $ff + db $11, $b, $1, $ff + db $9, $12, $1, POKEMONTOWER_2 + + db $0 ; signs + + db $5 ; people + db SPRITE_CABLE_CLUB_WOMAN, $d + 4, $f + 4, $ff, $d1, $1 ; person + db SPRITE_MOM_GEISHA, $8 + 4, $6 + 4, $ff, $ff, $2 ; person + db SPRITE_BALDING_GUY, $c + 4, $8 + 4, $ff, $ff, $3 ; person + db SPRITE_GIRL, $7 + 4, $d + 4, $ff, $ff, $4 ; person + db SPRITE_MEDIUM, $7 + 4, $11 + 4, $ff, $d2, $5 ; person + + ; warp-to + EVENT_DISP POKEMONTOWER_1_WIDTH, $11, $a + EVENT_DISP POKEMONTOWER_1_WIDTH, $11, $b + EVENT_DISP POKEMONTOWER_1_WIDTH, $9, $12 ; POKEMONTOWER_2 diff --git a/data/mapObjects/pokemontower2.asm b/data/mapObjects/pokemontower2.asm new file mode 100755 index 00000000..a255065f --- /dev/null +++ b/data/mapObjects/pokemontower2.asm @@ -0,0 +1,16 @@ +PokemonTower2Object: ; 0x60646 (size=32) + db $1 ; border block + + db $2 ; warps + db $9, $3, $0, POKEMONTOWER_3 + db $9, $12, $2, POKEMONTOWER_1 + + db $0 ; signs + + db $2 ; people + db SPRITE_BLUE, $5 + 4, $e + 4, $ff, $ff, $1 ; person + db SPRITE_MEDIUM, $7 + 4, $3 + 4, $ff, $d3, $2 ; person + + ; warp-to + EVENT_DISP POKEMONTOWER_2_WIDTH, $9, $3 ; POKEMONTOWER_3 + EVENT_DISP POKEMONTOWER_2_WIDTH, $9, $12 ; POKEMONTOWER_1 diff --git a/data/mapObjects/pokemontower3.asm b/data/mapObjects/pokemontower3.asm new file mode 100755 index 00000000..f2341155 --- /dev/null +++ b/data/mapObjects/pokemontower3.asm @@ -0,0 +1,18 @@ +PokemonTower3Object: ; 0x6075d (size=51) + db $1 ; border block + + db $2 ; warps + db $9, $3, $0, POKEMONTOWER_2 + db $9, $12, $1, POKEMONTOWER_4 + + db $0 ; signs + + db $4 ; people + db SPRITE_MEDIUM, $3 + 4, $c + 4, $ff, $d2, $41, CHANNELER + $C8, $5 ; trainer + db SPRITE_MEDIUM, $8 + 4, $9 + 4, $ff, $d0, $42, CHANNELER + $C8, $6 ; trainer + db SPRITE_MEDIUM, $d + 4, $a + 4, $ff, $d0, $43, CHANNELER + $C8, $8 ; trainer + db SPRITE_BALL, $1 + 4, $c + 4, $ff, $ff, $84, ESCAPE_ROPE ; item + + ; warp-to + EVENT_DISP POKEMONTOWER_3_WIDTH, $9, $3 ; POKEMONTOWER_2 + EVENT_DISP POKEMONTOWER_3_WIDTH, $9, $12 ; POKEMONTOWER_4 diff --git a/data/mapObjects/pokemontower4.asm b/data/mapObjects/pokemontower4.asm new file mode 100755 index 00000000..e2328243 --- /dev/null +++ b/data/mapObjects/pokemontower4.asm @@ -0,0 +1,20 @@ +PokemonTower4Object: ; 0x6088b (size=65) + db $1 ; border block + + db $2 ; warps + db $9, $3, $0, POKEMONTOWER_5 + db $9, $12, $1, POKEMONTOWER_3 + + db $0 ; signs + + db $6 ; people + db SPRITE_MEDIUM, $a + 4, $5 + 4, $ff, $d3, $41, CHANNELER + $C8, $9 ; trainer + db SPRITE_MEDIUM, $7 + 4, $f + 4, $ff, $d0, $42, CHANNELER + $C8, $a ; trainer + db SPRITE_MEDIUM, $c + 4, $e + 4, $ff, $d2, $43, CHANNELER + $C8, $c ; trainer + db SPRITE_BALL, $a + 4, $c + 4, $ff, $ff, $84, ELIXER ; item + db SPRITE_BALL, $a + 4, $9 + 4, $ff, $ff, $85, AWAKENING ; item + db SPRITE_BALL, $10 + 4, $c + 4, $ff, $ff, $86, HP_UP ; item + + ; warp-to + EVENT_DISP POKEMONTOWER_4_WIDTH, $9, $3 ; POKEMONTOWER_5 + EVENT_DISP POKEMONTOWER_4_WIDTH, $9, $12 ; POKEMONTOWER_3 diff --git a/data/mapObjects/pokemontower5.asm b/data/mapObjects/pokemontower5.asm new file mode 100755 index 00000000..16d09771 --- /dev/null +++ b/data/mapObjects/pokemontower5.asm @@ -0,0 +1,20 @@ +PokemonTower5Object: ; 0x60a48 (size=65) + db $1 ; border block + + db $2 ; warps + db $9, $3, $0, POKEMONTOWER_4 + db $9, $12, $0, POKEMONTOWER_6 + + db $0 ; signs + + db $6 ; people + db SPRITE_MEDIUM, $8 + 4, $c + 4, $ff, $ff, $1 ; person + db SPRITE_MEDIUM, $7 + 4, $11 + 4, $ff, $d2, $42, CHANNELER + $C8, $e ; trainer + db SPRITE_MEDIUM, $3 + 4, $e + 4, $ff, $d2, $43, CHANNELER + $C8, $10 ; trainer + db SPRITE_MEDIUM, $a + 4, $6 + 4, $ff, $d3, $44, CHANNELER + $C8, $11 ; trainer + db SPRITE_MEDIUM, $10 + 4, $9 + 4, $ff, $d3, $45, CHANNELER + $C8, $12 ; trainer + db SPRITE_BALL, $e + 4, $6 + 4, $ff, $ff, $86, NUGGET ; item + + ; warp-to + EVENT_DISP POKEMONTOWER_5_WIDTH, $9, $3 ; POKEMONTOWER_4 + EVENT_DISP POKEMONTOWER_5_WIDTH, $9, $12 ; POKEMONTOWER_6 diff --git a/data/mapObjects/pokemontower6.asm b/data/mapObjects/pokemontower6.asm new file mode 100755 index 00000000..3e9839e3 --- /dev/null +++ b/data/mapObjects/pokemontower6.asm @@ -0,0 +1,19 @@ +PokemonTower6Object: ; 0x60c5b (size=58) + db $1 ; border block + + db $2 ; warps + db $9, $12, $1, POKEMONTOWER_5 + db $10, $9, $0, POKEMONTOWER_7 + + db $0 ; signs + + db $5 ; people + db SPRITE_MEDIUM, $a + 4, $c + 4, $ff, $d3, $41, CHANNELER + $C8, $13 ; trainer + db SPRITE_MEDIUM, $5 + 4, $9 + 4, $ff, $d0, $42, CHANNELER + $C8, $14 ; trainer + db SPRITE_MEDIUM, $5 + 4, $10 + 4, $ff, $d2, $43, CHANNELER + $C8, $15 ; trainer + db SPRITE_BALL, $8 + 4, $6 + 4, $ff, $ff, $84, RARE_CANDY ; item + db SPRITE_BALL, $e + 4, $e + 4, $ff, $ff, $85, X_ACCURACY ; item + + ; warp-to + EVENT_DISP POKEMONTOWER_6_WIDTH, $9, $12 ; POKEMONTOWER_5 + EVENT_DISP POKEMONTOWER_6_WIDTH, $10, $9 ; POKEMONTOWER_7 diff --git a/data/mapObjects/pokemontower7.asm b/data/mapObjects/pokemontower7.asm new file mode 100755 index 00000000..b6815a64 --- /dev/null +++ b/data/mapObjects/pokemontower7.asm @@ -0,0 +1,16 @@ +PokemonTower7Object: ; 0x60ef6 (size=42) + db $1 ; border block + + db $1 ; warps + db $10, $9, $1, POKEMONTOWER_6 + + db $0 ; signs + + db $4 ; people + db SPRITE_ROCKET, $b + 4, $9 + 4, $ff, $d3, $41, ROCKET + $C8, $13 ; trainer + db SPRITE_ROCKET, $9 + 4, $c + 4, $ff, $d2, $42, ROCKET + $C8, $14 ; trainer + db SPRITE_ROCKET, $7 + 4, $9 + 4, $ff, $d3, $43, ROCKET + $C8, $15 ; trainer + db SPRITE_MR_FUJI, $3 + 4, $a + 4, $ff, $d0, $4 ; person + + ; warp-to + EVENT_DISP POKEMONTOWER_7_WIDTH, $10, $9 ; POKEMONTOWER_6 diff --git a/data/mapObjects/powerplant.asm b/data/mapObjects/powerplant.asm new file mode 100755 index 00000000..b5d656ff --- /dev/null +++ b/data/mapObjects/powerplant.asm @@ -0,0 +1,30 @@ +PowerPlantObject: ; 0x1e3bf (size=135) + db $2e ; border block + + db $3 ; warps + db $23, $4, $3, $ff + db $23, $5, $3, $ff + db $b, $0, $3, $ff + + db $0 ; signs + + db $e ; people + db SPRITE_BALL, $14 + 4, $9 + 4, $ff, $ff, $41, VOLTORB, 40 ; trainer + db SPRITE_BALL, $12 + 4, $20 + 4, $ff, $ff, $42, VOLTORB, 40 ; trainer + db SPRITE_BALL, $19 + 4, $15 + 4, $ff, $ff, $43, VOLTORB, 40 ; trainer + db SPRITE_BALL, $12 + 4, $19 + 4, $ff, $ff, $44, ELECTRODE, 43 ; trainer + db SPRITE_BALL, $22 + 4, $17 + 4, $ff, $ff, $45, VOLTORB, 40 ; trainer + db SPRITE_BALL, $1c + 4, $1a + 4, $ff, $ff, $46, VOLTORB, 40 ; trainer + db SPRITE_BALL, $e + 4, $15 + 4, $ff, $ff, $47, ELECTRODE, 43 ; trainer + db SPRITE_BALL, $20 + 4, $25 + 4, $ff, $ff, $48, VOLTORB, 40 ; trainer + db SPRITE_BIRD, $9 + 4, $4 + 4, $ff, $d1, $49, ZAPDOS, 50 ; trainer + db SPRITE_BALL, $19 + 4, $7 + 4, $ff, $ff, $8a, CARBOS ; item + db SPRITE_BALL, $3 + 4, $1c + 4, $ff, $ff, $8b, HP_UP ; item + db SPRITE_BALL, $3 + 4, $22 + 4, $ff, $ff, $8c, RARE_CANDY ; item + db SPRITE_BALL, $20 + 4, $1a + 4, $ff, $ff, $8d, TM_25 ; item + db SPRITE_BALL, $20 + 4, $14 + 4, $ff, $ff, $8e, TM_33 ; item + + ; warp-to + EVENT_DISP POWER_PLANT_WIDTH, $23, $4 + EVENT_DISP POWER_PLANT_WIDTH, $23, $5 + EVENT_DISP POWER_PLANT_WIDTH, $b, $0 diff --git a/data/mapObjects/redshouse1f.asm b/data/mapObjects/redshouse1f.asm new file mode 100755 index 00000000..41ebb709 --- /dev/null +++ b/data/mapObjects/redshouse1f.asm @@ -0,0 +1,18 @@ +RedsHouse1FObject: ; 481e4 (12:41e4) + db $0A ; border block + + db 3 ; warps + db 7,2,0,$FF ; exit1 + db 7,3,0,$FF ; exit2 + db 1,7,0,$26 ; staircase + + db 1 ; signs + db 1,3,2 ; TV + + db 1 ; people + db $33,4+4,5+4,$FF,$D2,1 ; Mom + + ; warp-to + EVENT_DISP REDS_HOUSE_1F_WIDTH, 7, 2 + EVENT_DISP REDS_HOUSE_1F_WIDTH, 7, 3 + EVENT_DISP REDS_HOUSE_1F_WIDTH, 1, 7 diff --git a/data/mapObjects/redshouse2f.asm b/data/mapObjects/redshouse2f.asm new file mode 100755 index 00000000..5d59f8e5 --- /dev/null +++ b/data/mapObjects/redshouse2f.asm @@ -0,0 +1,12 @@ +RedsHouse2FObject: ; 0x5c0d0 ? + db $0A ; border block + + db 1 ; warps + db 1, 7, 2, REDS_HOUSE_1F + + db 0 ; signs + + db 0 ; people + + ; warp-to + EVENT_DISP REDS_HOUSE_2F_WIDTH, 1, 7 diff --git a/data/mapObjects/rockethideout1.asm b/data/mapObjects/rockethideout1.asm new file mode 100755 index 00000000..5ae38850 --- /dev/null +++ b/data/mapObjects/rockethideout1.asm @@ -0,0 +1,27 @@ +RocketHideout1Object: ; 0x44ce7 (size=98) + db $2e ; border block + + db $5 ; warps + db $2, $17, $0, ROCKET_HIDEOUT_2 + db $2, $15, $2, GAME_CORNER + db $13, $18, $0, ROCKET_HIDEOUT_ELEVATOR + db $18, $15, $3, ROCKET_HIDEOUT_2 + db $13, $19, $1, ROCKET_HIDEOUT_ELEVATOR + + db $0 ; signs + + db $7 ; people + db SPRITE_ROCKET, $8 + 4, $1a + 4, $ff, $d2, $41, ROCKET + $C8, $8 ; trainer + db SPRITE_ROCKET, $6 + 4, $c + 4, $ff, $d3, $42, ROCKET + $C8, $9 ; trainer + db SPRITE_ROCKET, $11 + 4, $12 + 4, $ff, $d0, $43, ROCKET + $C8, $a ; trainer + db SPRITE_ROCKET, $19 + 4, $f + 4, $ff, $d3, $44, ROCKET + $C8, $b ; trainer + db SPRITE_ROCKET, $12 + 4, $1c + 4, $ff, $d2, $45, ROCKET + $C8, $c ; trainer + db SPRITE_BALL, $e + 4, $b + 4, $ff, $ff, $86, ESCAPE_ROPE ; item + db SPRITE_BALL, $11 + 4, $9 + 4, $ff, $ff, $87, HYPER_POTION ; item + + ; warp-to + EVENT_DISP ROCKET_HIDEOUT_1_WIDTH, $2, $17 ; ROCKET_HIDEOUT_2 + EVENT_DISP ROCKET_HIDEOUT_1_WIDTH, $2, $15 ; GAME_CORNER + EVENT_DISP ROCKET_HIDEOUT_1_WIDTH, $13, $18 ; ROCKET_HIDEOUT_ELEVATOR + EVENT_DISP ROCKET_HIDEOUT_1_WIDTH, $18, $15 ; ROCKET_HIDEOUT_2 + EVENT_DISP ROCKET_HIDEOUT_1_WIDTH, $13, $19 ; ROCKET_HIDEOUT_ELEVATOR diff --git a/data/mapObjects/rockethideout2.asm b/data/mapObjects/rockethideout2.asm new file mode 100755 index 00000000..6c374654 --- /dev/null +++ b/data/mapObjects/rockethideout2.asm @@ -0,0 +1,25 @@ +RocketHideout2Object: ; 0x450f7 (size=80) + db $2e ; border block + + db $5 ; warps + db $8, $1b, $0, ROCKET_HIDEOUT_1 + db $8, $15, $0, ROCKET_HIDEOUT_3 + db $13, $18, $0, ROCKET_HIDEOUT_ELEVATOR + db $16, $15, $3, ROCKET_HIDEOUT_1 + db $13, $19, $1, ROCKET_HIDEOUT_ELEVATOR + + db $0 ; signs + + db $5 ; people + db SPRITE_ROCKET, $c + 4, $14 + 4, $ff, $d0, $41, ROCKET + $C8, $d ; trainer + db SPRITE_BALL, $b + 4, $1 + 4, $ff, $ff, $82, MOON_STONE ; item + db SPRITE_BALL, $8 + 4, $10 + 4, $ff, $ff, $83, NUGGET ; item + db SPRITE_BALL, $c + 4, $6 + 4, $ff, $ff, $84, TM_07 ; item + db SPRITE_BALL, $15 + 4, $3 + 4, $ff, $ff, $85, SUPER_POTION ; item + + ; warp-to + EVENT_DISP ROCKET_HIDEOUT_2_WIDTH, $8, $1b ; ROCKET_HIDEOUT_1 + EVENT_DISP ROCKET_HIDEOUT_2_WIDTH, $8, $15 ; ROCKET_HIDEOUT_3 + EVENT_DISP ROCKET_HIDEOUT_2_WIDTH, $13, $18 ; ROCKET_HIDEOUT_ELEVATOR + EVENT_DISP ROCKET_HIDEOUT_2_WIDTH, $16, $15 ; ROCKET_HIDEOUT_1 + EVENT_DISP ROCKET_HIDEOUT_2_WIDTH, $13, $19 ; ROCKET_HIDEOUT_ELEVATOR diff --git a/data/mapObjects/rockethideout3.asm b/data/mapObjects/rockethideout3.asm new file mode 100755 index 00000000..105abea0 --- /dev/null +++ b/data/mapObjects/rockethideout3.asm @@ -0,0 +1,18 @@ +RocketHideout3Object: ; 0x4534d (size=50) + db $2e ; border block + + db $2 ; warps + db $6, $19, $1, ROCKET_HIDEOUT_2 + db $12, $13, $0, ROCKET_HIDEOUT_4 + + db $0 ; signs + + db $4 ; people + db SPRITE_ROCKET, $16 + 4, $a + 4, $ff, $d3, $41, ROCKET + $C8, $e ; trainer + db SPRITE_ROCKET, $c + 4, $1a + 4, $ff, $d1, $42, ROCKET + $C8, $f ; trainer + db SPRITE_BALL, $11 + 4, $1a + 4, $ff, $ff, $83, TM_10 ; item + db SPRITE_BALL, $e + 4, $14 + 4, $ff, $ff, $84, RARE_CANDY ; item + + ; warp-to + EVENT_DISP ROCKET_HIDEOUT_3_WIDTH, $6, $19 ; ROCKET_HIDEOUT_2 + EVENT_DISP ROCKET_HIDEOUT_3_WIDTH, $12, $13 ; ROCKET_HIDEOUT_4 diff --git a/data/mapObjects/rockethideout4.asm b/data/mapObjects/rockethideout4.asm new file mode 100755 index 00000000..3f9ecc62 --- /dev/null +++ b/data/mapObjects/rockethideout4.asm @@ -0,0 +1,25 @@ +RocketHideout4Object: ; 0x455f1 (size=95) + db $2e ; border block + + db $3 ; warps + db $a, $13, $1, ROCKET_HIDEOUT_3 + db $f, $18, $0, ROCKET_HIDEOUT_ELEVATOR + db $f, $19, $1, ROCKET_HIDEOUT_ELEVATOR + + db $0 ; signs + + db $9 ; people + db SPRITE_GIOVANNI, $3 + 4, $19 + 4, $ff, $d0, $41, GIOVANNI + $C8, $1 ; trainer + db SPRITE_ROCKET, $c + 4, $17 + 4, $ff, $d0, $42, ROCKET + $C8, $10 ; trainer + db SPRITE_ROCKET, $c + 4, $1a + 4, $ff, $d0, $43, ROCKET + $C8, $11 ; trainer + db SPRITE_ROCKET, $2 + 4, $b + 4, $ff, $d0, $44, ROCKET + $C8, $12 ; trainer + db SPRITE_BALL, $c + 4, $a + 4, $ff, $ff, $85, HP_UP ; item + db SPRITE_BALL, $4 + 4, $9 + 4, $ff, $ff, $86, TM_02 ; item + db SPRITE_BALL, $14 + 4, $c + 4, $ff, $ff, $87, IRON ; item + db SPRITE_BALL, $2 + 4, $19 + 4, $ff, $ff, $88, SILPH_SCOPE ; item + db SPRITE_BALL, $2 + 4, $a + 4, $ff, $ff, $89, LIFT_KEY ; item + + ; warp-to + EVENT_DISP ROCKET_HIDEOUT_4_WIDTH, $a, $13 ; ROCKET_HIDEOUT_3 + EVENT_DISP ROCKET_HIDEOUT_4_WIDTH, $f, $18 ; ROCKET_HIDEOUT_ELEVATOR + EVENT_DISP ROCKET_HIDEOUT_4_WIDTH, $f, $19 ; ROCKET_HIDEOUT_ELEVATOR diff --git a/data/mapObjects/rockethideoutelevator.asm b/data/mapObjects/rockethideoutelevator.asm new file mode 100755 index 00000000..e4653a4c --- /dev/null +++ b/data/mapObjects/rockethideoutelevator.asm @@ -0,0 +1,15 @@ +RocketHideoutElevatorObject: ; 0x45791 (size=23) + db $f ; border block + + db $2 ; warps + db $1, $2, $2, ROCKET_HIDEOUT_1 + db $1, $3, $4, ROCKET_HIDEOUT_1 + + db $1 ; signs + db $1, $1, $1 ; RocketHideoutElevatorText1 + + db $0 ; people + + ; warp-to + EVENT_DISP ROCKET_HIDEOUT_ELEVATOR_WIDTH, $1, $2 ; ROCKET_HIDEOUT_1 + EVENT_DISP ROCKET_HIDEOUT_ELEVATOR_WIDTH, $1, $3 ; ROCKET_HIDEOUT_1 diff --git a/data/mapObjects/rocktunnel1.asm b/data/mapObjects/rocktunnel1.asm new file mode 100755 index 00000000..2701b3e0 --- /dev/null +++ b/data/mapObjects/rocktunnel1.asm @@ -0,0 +1,34 @@ +RockTunnel1Object: ; 0x445f6 (size=127) + db $3 ; border block + + db $8 ; warps + db $3, $f, $1, $ff + db $0, $f, $1, $ff + db $21, $f, $2, $ff + db $23, $f, $2, $ff + db $3, $25, $0, ROCK_TUNNEL_2 + db $3, $5, $1, ROCK_TUNNEL_2 + db $b, $11, $2, ROCK_TUNNEL_2 + db $11, $25, $3, ROCK_TUNNEL_2 + + db $1 ; signs + db $1d, $b, $8 ; RockTunnel1Text8 + + db $7 ; people + db SPRITE_HIKER, $5 + 4, $7 + 4, $ff, $d0, $41, HIKER + $C8, $c ; trainer + db SPRITE_HIKER, $10 + 4, $5 + 4, $ff, $d0, $42, HIKER + $C8, $d ; trainer + db SPRITE_HIKER, $f + 4, $11 + 4, $ff, $d2, $43, HIKER + $C8, $e ; trainer + db SPRITE_BLACK_HAIR_BOY_2, $8 + 4, $17 + 4, $ff, $d2, $44, POKEMANIAC + $C8, $7 ; trainer + db SPRITE_LASS, $15 + 4, $25 + 4, $ff, $d2, $45, JR__TRAINER_F + $C8, $11 ; trainer + db SPRITE_LASS, $18 + 4, $16 + 4, $ff, $d0, $46, JR__TRAINER_F + $C8, $12 ; trainer + db SPRITE_LASS, $18 + 4, $20 + 4, $ff, $d3, $47, JR__TRAINER_F + $C8, $13 ; trainer + + ; warp-to + EVENT_DISP ROCK_TUNNEL_1_WIDTH, $3, $f + EVENT_DISP ROCK_TUNNEL_1_WIDTH, $0, $f + EVENT_DISP ROCK_TUNNEL_1_WIDTH, $21, $f + EVENT_DISP ROCK_TUNNEL_1_WIDTH, $23, $f + EVENT_DISP ROCK_TUNNEL_1_WIDTH, $3, $25 ; ROCK_TUNNEL_2 + EVENT_DISP ROCK_TUNNEL_1_WIDTH, $3, $5 ; ROCK_TUNNEL_2 + EVENT_DISP ROCK_TUNNEL_1_WIDTH, $b, $11 ; ROCK_TUNNEL_2 + EVENT_DISP ROCK_TUNNEL_1_WIDTH, $11, $25 ; ROCK_TUNNEL_2 diff --git a/data/mapObjects/rocktunnel2.asm b/data/mapObjects/rocktunnel2.asm new file mode 100755 index 00000000..e98f581a --- /dev/null +++ b/data/mapObjects/rocktunnel2.asm @@ -0,0 +1,26 @@ +RockTunnel2Object: ; 0x4613d (size=100) + db $3 ; border block + + db $4 ; warps + db $19, $21, $4, ROCK_TUNNEL_1 + db $3, $1b, $5, ROCK_TUNNEL_1 + db $b, $17, $6, ROCK_TUNNEL_1 + db $3, $3, $7, ROCK_TUNNEL_1 + + db $0 ; signs + + db $8 ; people + db SPRITE_LASS, $d + 4, $b + 4, $ff, $d0, $41, JR__TRAINER_F + $C8, $9 ; trainer + db SPRITE_HIKER, $a + 4, $6 + 4, $ff, $d0, $42, HIKER + $C8, $9 ; trainer + db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $3 + 4, $ff, $d0, $43, POKEMANIAC + $C8, $3 ; trainer + db SPRITE_BLACK_HAIR_BOY_2, $15 + 4, $14 + 4, $ff, $d3, $44, POKEMANIAC + $C8, $4 ; trainer + db SPRITE_HIKER, $a + 4, $1e + 4, $ff, $d0, $45, HIKER + $C8, $a ; trainer + db SPRITE_LASS, $1c + 4, $e + 4, $ff, $d3, $46, JR__TRAINER_F + $C8, $a ; trainer + db SPRITE_HIKER, $5 + 4, $21 + 4, $ff, $d3, $47, HIKER + $C8, $b ; trainer + db SPRITE_BLACK_HAIR_BOY_2, $1e + 4, $1a + 4, $ff, $d0, $48, POKEMANIAC + $C8, $5 ; trainer + + ; warp-to + EVENT_DISP ROCK_TUNNEL_2_WIDTH, $19, $21 ; ROCK_TUNNEL_1 + EVENT_DISP ROCK_TUNNEL_2_WIDTH, $3, $1b ; ROCK_TUNNEL_1 + EVENT_DISP ROCK_TUNNEL_2_WIDTH, $b, $17 ; ROCK_TUNNEL_1 + EVENT_DISP ROCK_TUNNEL_2_WIDTH, $3, $3 ; ROCK_TUNNEL_1 diff --git a/data/mapObjects/rocktunnelpokecenter.asm b/data/mapObjects/rocktunnelpokecenter.asm new file mode 100755 index 00000000..2dd7b71d --- /dev/null +++ b/data/mapObjects/rocktunnelpokecenter.asm @@ -0,0 +1,18 @@ +RockTunnelPokecenterObject: ; 0x493d4 (size=44) + db $0 ; border block + + db $2 ; warps + db $7, $3, $0, $ff + db $7, $4, $0, $ff + + db $0 ; signs + + db $4 ; people + db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person + db SPRITE_GENTLEMAN, $3 + 4, $7 + 4, $fe, $2, $2 ; person + db SPRITE_FISHER2, $5 + 4, $2 + 4, $ff, $ff, $3 ; person + db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person + + ; warp-to + EVENT_DISP ROCK_TUNNEL_POKECENTER_WIDTH, $7, $3 + EVENT_DISP ROCK_TUNNEL_POKECENTER_WIDTH, $7, $4 diff --git a/data/mapObjects/route1.asm b/data/mapObjects/route1.asm new file mode 100755 index 00000000..c16738f3 --- /dev/null +++ b/data/mapObjects/route1.asm @@ -0,0 +1,14 @@ +Route1Object: ; 0x1c0e5 (size=19) + db $b ; border block + + db $0 ; warps + + db $1 ; signs + db $1b, $9, $3 ; Route1Text3 + + db $2 ; people + db SPRITE_BUG_CATCHER, $18 + 4, $5 + 4, $fe, $1, $1 ; person + db SPRITE_BUG_CATCHER, $d + 4, $f + 4, $fe, $2, $2 ; person + + ; warp-to (unused) + EVENT_DISP $4, $7, $2 diff --git a/data/mapObjects/route10.asm b/data/mapObjects/route10.asm new file mode 100755 index 00000000..32e568dd --- /dev/null +++ b/data/mapObjects/route10.asm @@ -0,0 +1,28 @@ +Route10Object: ; 0x582f6 (size=96) + db $2c ; border block + + db $4 ; warps + db $13, $b, $0, ROCK_TUNNEL_POKECENTER + db $11, $8, $0, ROCK_TUNNEL_1 + db $35, $8, $2, ROCK_TUNNEL_1 + db $27, $6, $0, POWER_PLANT + + db $4 ; signs + db $13, $7, $7 ; Route10Text7 + db $13, $c, $8 ; PokeCenterSignText + db $37, $9, $9 ; Route10Text9 + db $29, $5, $a ; Route10Text10 + + db $6 ; people + db SPRITE_BLACK_HAIR_BOY_2, $2c + 4, $a + 4, $ff, $d2, $41, POKEMANIAC + $C8, $1 ; trainer + db SPRITE_HIKER, $39 + 4, $3 + 4, $ff, $d1, $42, HIKER + $C8, $7 ; trainer + db SPRITE_BLACK_HAIR_BOY_2, $40 + 4, $e + 4, $ff, $d2, $43, POKEMANIAC + $C8, $2 ; trainer + db SPRITE_LASS, $19 + 4, $7 + 4, $ff, $d2, $44, JR__TRAINER_F + $C8, $7 ; trainer + db SPRITE_HIKER, $3d + 4, $3 + 4, $ff, $d0, $45, HIKER + $C8, $8 ; trainer + db SPRITE_LASS, $36 + 4, $7 + 4, $ff, $d0, $46, JR__TRAINER_F + $C8, $8 ; trainer + + ; warp-to + EVENT_DISP ROUTE_10_WIDTH, $13, $b ; ROCK_TUNNEL_POKECENTER + EVENT_DISP ROUTE_10_WIDTH, $11, $8 ; ROCK_TUNNEL_1 + EVENT_DISP ROUTE_10_WIDTH, $35, $8 ; ROCK_TUNNEL_1 + EVENT_DISP ROUTE_10_WIDTH, $27, $6 ; POWER_PLANT diff --git a/data/mapObjects/route11.asm b/data/mapObjects/route11.asm new file mode 100755 index 00000000..88fda61f --- /dev/null +++ b/data/mapObjects/route11.asm @@ -0,0 +1,31 @@ +Route11Object: ; 0x584e0 (size=127) + db $f ; border block + + db $5 ; warps + db $8, $31, $0, ROUTE_11_GATE_1F + db $9, $31, $1, ROUTE_11_GATE_1F + db $8, $3a, $2, ROUTE_11_GATE_1F + db $9, $3a, $3, ROUTE_11_GATE_1F + db $5, $4, $0, DIGLETTS_CAVE_ENTRANCE + + db $1 ; signs + db $5, $1, $b ; Route11Text11 + + db $a ; people + db SPRITE_GAMBLER, $e + 4, $a + 4, $ff, $d0, $41, GAMBLER + $C8, $1 ; trainer + db SPRITE_GAMBLER, $9 + 4, $1a + 4, $ff, $d0, $42, GAMBLER + $C8, $2 ; trainer + db SPRITE_BUG_CATCHER, $5 + 4, $d + 4, $ff, $d2, $43, YOUNGSTER + $C8, $9 ; trainer + db SPRITE_BLACK_HAIR_BOY_2, $b + 4, $24 + 4, $ff, $d0, $44, ENGINEER + $C8, $2 ; trainer + db SPRITE_BUG_CATCHER, $4 + 4, $16 + 4, $ff, $d1, $45, YOUNGSTER + $C8, $a ; trainer + db SPRITE_GAMBLER, $7 + 4, $2d + 4, $ff, $d0, $46, GAMBLER + $C8, $3 ; trainer + db SPRITE_GAMBLER, $3 + 4, $21 + 4, $ff, $d1, $47, GAMBLER + $C8, $4 ; trainer + db SPRITE_BUG_CATCHER, $5 + 4, $2b + 4, $ff, $d3, $48, YOUNGSTER + $C8, $b ; trainer + db SPRITE_BLACK_HAIR_BOY_2, $10 + 4, $2d + 4, $ff, $d2, $49, ENGINEER + $C8, $3 ; trainer + db SPRITE_BUG_CATCHER, $c + 4, $16 + 4, $ff, $d1, $4a, YOUNGSTER + $C8, $c ; trainer + + ; warp-to + EVENT_DISP ROUTE_11_WIDTH, $8, $31 ; ROUTE_11_GATE_1F + EVENT_DISP ROUTE_11_WIDTH, $9, $31 ; ROUTE_11_GATE_1F + EVENT_DISP ROUTE_11_WIDTH, $8, $3a ; ROUTE_11_GATE_1F + EVENT_DISP ROUTE_11_WIDTH, $9, $3a ; ROUTE_11_GATE_1F + EVENT_DISP ROUTE_11_WIDTH, $5, $4 ; DIGLETTS_CAVE_ENTRANCE diff --git a/data/mapObjects/route11gate.asm b/data/mapObjects/route11gate.asm new file mode 100755 index 00000000..5ebfb13d --- /dev/null +++ b/data/mapObjects/route11gate.asm @@ -0,0 +1,21 @@ +Route11GateObject: ; 0x49416 (size=50) + db $a ; border block + + db $5 ; warps + db $4, $0, $0, $ff + db $5, $0, $1, $ff + db $4, $7, $2, $ff + db $5, $7, $3, $ff + db $8, $6, $0, ROUTE_11_GATE_2F + + db $0 ; signs + + db $1 ; people + db SPRITE_GUARD, $1 + 4, $4 + 4, $ff, $ff, $1 ; person + + ; warp-to + EVENT_DISP ROUTE_11_GATE_1F_WIDTH, $4, $0 + EVENT_DISP ROUTE_11_GATE_1F_WIDTH, $5, $0 + EVENT_DISP ROUTE_11_GATE_1F_WIDTH, $4, $7 + EVENT_DISP ROUTE_11_GATE_1F_WIDTH, $5, $7 + EVENT_DISP ROUTE_11_GATE_1F_WIDTH, $8, $6 ; ROUTE_11_GATE_2F diff --git a/data/mapObjects/route11gateupstairs.asm b/data/mapObjects/route11gateupstairs.asm new file mode 100755 index 00000000..8ee0f8fa --- /dev/null +++ b/data/mapObjects/route11gateupstairs.asm @@ -0,0 +1,16 @@ +Route11GateUpstairsObject: ; 0x494da (size=30) + db $a ; border block + + db $1 ; warps + db $7, $7, $4, ROUTE_11_GATE_1F + + db $2 ; signs + db $2, $1, $3 ; Route11GateUpstairsText3 + db $2, $6, $4 ; Route11GateUpstairsText4 + + db $2 ; people + db SPRITE_BUG_CATCHER, $2 + 4, $4 + 4, $fe, $2, $1 ; person + db SPRITE_OAK_AIDE, $6 + 4, $2 + 4, $ff, $ff, $2 ; person + + ; warp-to + EVENT_DISP ROUTE_11_GATE_2F_WIDTH, $7, $7 ; ROUTE_11_GATE_1F diff --git a/data/mapObjects/route12.asm b/data/mapObjects/route12.asm new file mode 100755 index 00000000..75d1907f --- /dev/null +++ b/data/mapObjects/route12.asm @@ -0,0 +1,30 @@ +Route12Object: ; 0x5869a (size=118) + db $43 ; border block + + db $4 ; warps + db $f, $a, $0, ROUTE_12_GATE_1F + db $f, $b, $1, ROUTE_12_GATE_1F + db $15, $a, $2, ROUTE_12_GATE_1F + db $4d, $b, $0, ROUTE_12_HOUSE + + db $2 ; signs + db $d, $d, $b ; Route12Text11 + db $3f, $b, $c ; Route12Text12 + + db $a ; people + db SPRITE_SNORLAX, $3e + 4, $a + 4, $ff, $d0, $1 ; person + db SPRITE_FISHER2, $1f + 4, $e + 4, $ff, $d2, $42, FISHER + $C8, $3 ; trainer + db SPRITE_FISHER2, $27 + 4, $5 + 4, $ff, $d1, $43, FISHER + $C8, $4 ; trainer + db SPRITE_BLACK_HAIR_BOY_1, $5c + 4, $b + 4, $ff, $d2, $44, JR__TRAINER_M + $C8, $9 ; trainer + db SPRITE_BLACK_HAIR_BOY_2, $4c + 4, $e + 4, $ff, $d1, $45, ROCKER + $C8, $2 ; trainer + db SPRITE_FISHER2, $28 + 4, $c + 4, $ff, $d2, $46, FISHER + $C8, $5 ; trainer + db SPRITE_FISHER2, $34 + 4, $9 + 4, $ff, $d3, $47, FISHER + $C8, $6 ; trainer + db SPRITE_FISHER2, $57 + 4, $6 + 4, $ff, $d0, $48, FISHER + $C8, $b ; trainer + db SPRITE_BALL, $23 + 4, $e + 4, $ff, $ff, $89, TM_16 ; item + db SPRITE_BALL, $59 + 4, $5 + 4, $ff, $ff, $8a, IRON ; item + + ; warp-to + EVENT_DISP ROUTE_12_WIDTH, $f, $a ; ROUTE_12_GATE_1F + EVENT_DISP ROUTE_12_WIDTH, $f, $b ; ROUTE_12_GATE_1F + EVENT_DISP ROUTE_12_WIDTH, $15, $a ; ROUTE_12_GATE_1F + EVENT_DISP ROUTE_12_WIDTH, $4d, $b ; ROUTE_12_HOUSE diff --git a/data/mapObjects/route12gate.asm b/data/mapObjects/route12gate.asm new file mode 100755 index 00000000..fc70b763 --- /dev/null +++ b/data/mapObjects/route12gate.asm @@ -0,0 +1,21 @@ +Route12GateObject: ; 0x4950e (size=50) + db $a ; border block + + db $5 ; warps + db $0, $4, $0, $ff + db $0, $5, $1, $ff + db $7, $4, $2, $ff + db $7, $5, $2, $ff + db $6, $8, $0, ROUTE_12_GATE_2F + + db $0 ; signs + + db $1 ; people + db SPRITE_GUARD, $3 + 4, $1 + 4, $ff, $ff, $1 ; person + + ; warp-to + EVENT_DISP ROUTE_12_GATE_1F_WIDTH, $0, $4 + EVENT_DISP ROUTE_12_GATE_1F_WIDTH, $0, $5 + EVENT_DISP ROUTE_12_GATE_1F_WIDTH, $7, $4 + EVENT_DISP ROUTE_12_GATE_1F_WIDTH, $7, $5 + EVENT_DISP ROUTE_12_GATE_1F_WIDTH, $6, $8 ; ROUTE_12_GATE_2F diff --git a/data/mapObjects/route12gateupstairs.asm b/data/mapObjects/route12gateupstairs.asm new file mode 100755 index 00000000..012dedda --- /dev/null +++ b/data/mapObjects/route12gateupstairs.asm @@ -0,0 +1,15 @@ +Route12GateUpstairsObject: ; 0x495de (size=24) + db $a ; border block + + db $1 ; warps + db $7, $7, $4, ROUTE_12_GATE_1F + + db $2 ; signs + db $2, $1, $2 ; Route12GateUpstairsText2 + db $2, $6, $3 ; Route12GateUpstairsText3 + + db $1 ; people + db SPRITE_BRUNETTE_GIRL, $4 + 4, $3 + 4, $fe, $1, $1 ; person + + ; warp-to + EVENT_DISP ROUTE_12_GATE_2F_WIDTH, $7, $7 ; ROUTE_12_GATE_1F diff --git a/data/mapObjects/route12house.asm b/data/mapObjects/route12house.asm new file mode 100755 index 00000000..74ae5bc7 --- /dev/null +++ b/data/mapObjects/route12house.asm @@ -0,0 +1,15 @@ +Route12HouseObject: ; 0x564de (size=26) + db $a ; border block + + db $2 ; warps + db $7, $2, $3, $ff + db $7, $3, $3, $ff + + db $0 ; signs + + db $1 ; people + db SPRITE_FISHER, $4 + 4, $2 + 4, $ff, $d3, $1 ; person + + ; warp-to + EVENT_DISP ROUTE_12_HOUSE_WIDTH, $7, $2 + EVENT_DISP ROUTE_12_HOUSE_WIDTH, $7, $3 diff --git a/data/mapObjects/route13.asm b/data/mapObjects/route13.asm new file mode 100755 index 00000000..2c83847a --- /dev/null +++ b/data/mapObjects/route13.asm @@ -0,0 +1,21 @@ +Route13Object: ; 0x5482e (size=93) + db $43 ; border block + + db $0 ; warps + + db $3 ; signs + db $d, $f, $b ; Route13Text11 + db $5, $21, $c ; Route13Text12 + db $b, $1f, $d ; Route13Text13 + + db $a ; people + db SPRITE_BLACK_HAIR_BOY_1, $a + 4, $31 + 4, $ff, $d3, $41, BIRD_KEEPER + $C8, $1 ; trainer + db SPRITE_LASS, $a + 4, $30 + 4, $ff, $d0, $42, JR__TRAINER_F + $C8, $c ; trainer + db SPRITE_LASS, $9 + 4, $1b + 4, $ff, $d0, $43, JR__TRAINER_F + $C8, $d ; trainer + db SPRITE_LASS, $a + 4, $17 + 4, $ff, $d2, $44, JR__TRAINER_F + $C8, $e ; trainer + db SPRITE_LASS, $5 + 4, $32 + 4, $ff, $d0, $45, JR__TRAINER_F + $C8, $f ; trainer + db SPRITE_BLACK_HAIR_BOY_1, $4 + 4, $c + 4, $ff, $d3, $46, BIRD_KEEPER + $C8, $2 ; trainer + db SPRITE_FOULARD_WOMAN, $6 + 4, $21 + 4, $ff, $d0, $47, BEAUTY + $C8, $4 ; trainer + db SPRITE_FOULARD_WOMAN, $6 + 4, $20 + 4, $ff, $d0, $48, BEAUTY + $C8, $5 ; trainer + db SPRITE_BIKER, $7 + 4, $a + 4, $ff, $d1, $49, BIKER + $C8, $1 ; trainer + db SPRITE_BLACK_HAIR_BOY_1, $d + 4, $7 + 4, $ff, $d1, $4a, BIRD_KEEPER + $C8, $3 ; trainer diff --git a/data/mapObjects/route14.asm b/data/mapObjects/route14.asm new file mode 100755 index 00000000..eb397a16 --- /dev/null +++ b/data/mapObjects/route14.asm @@ -0,0 +1,19 @@ +Route14Object: ; 0x549bb (size=87) + db $43 ; border block + + db $0 ; warps + + db $1 ; signs + db $d, $11, $b ; Route14Text11 + + db $a ; people + db SPRITE_BLACK_HAIR_BOY_1, $4 + 4, $4 + 4, $ff, $d0, $41, BIRD_KEEPER + $C8, $e ; trainer + db SPRITE_BLACK_HAIR_BOY_1, $6 + 4, $f + 4, $ff, $d0, $42, BIRD_KEEPER + $C8, $f ; trainer + db SPRITE_BLACK_HAIR_BOY_1, $b + 4, $c + 4, $ff, $d0, $43, BIRD_KEEPER + $C8, $10 ; trainer + db SPRITE_BLACK_HAIR_BOY_1, $f + 4, $e + 4, $ff, $d1, $44, BIRD_KEEPER + $C8, $11 ; trainer + db SPRITE_BLACK_HAIR_BOY_1, $1f + 4, $f + 4, $ff, $d2, $45, BIRD_KEEPER + $C8, $4 ; trainer + db SPRITE_BLACK_HAIR_BOY_1, $31 + 4, $6 + 4, $ff, $d1, $46, BIRD_KEEPER + $C8, $5 ; trainer + db SPRITE_BIKER, $27 + 4, $5 + 4, $ff, $d0, $47, BIKER + $C8, $d ; trainer + db SPRITE_BIKER, $1e + 4, $4 + 4, $ff, $d3, $48, BIKER + $C8, $e ; trainer + db SPRITE_BIKER, $1e + 4, $f + 4, $ff, $d2, $49, BIKER + $C8, $f ; trainer + db SPRITE_BIKER, $1f + 4, $4 + 4, $ff, $d3, $4a, BIKER + $C8, $2 ; trainer diff --git a/data/mapObjects/route15.asm b/data/mapObjects/route15.asm new file mode 100755 index 00000000..de91b7d9 --- /dev/null +++ b/data/mapObjects/route15.asm @@ -0,0 +1,30 @@ +Route15Object: ; 0x5894e (size=126) + db $43 ; border block + + db $4 ; warps + db $8, $7, $0, ROUTE_15_GATE_1F + db $9, $7, $1, ROUTE_15_GATE_1F + db $8, $e, $2, ROUTE_15_GATE_1F + db $9, $e, $3, ROUTE_15_GATE_1F + + db $1 ; signs + db $9, $27, $c ; Route15Text12 + + db $b ; people + db SPRITE_LASS, $b + 4, $29 + 4, $ff, $d0, $41, JR__TRAINER_F + $C8, $14 ; trainer + db SPRITE_LASS, $a + 4, $35 + 4, $ff, $d2, $42, JR__TRAINER_F + $C8, $15 ; trainer + db SPRITE_BLACK_HAIR_BOY_1, $d + 4, $1f + 4, $ff, $d1, $43, BIRD_KEEPER + $C8, $6 ; trainer + db SPRITE_BLACK_HAIR_BOY_1, $d + 4, $23 + 4, $ff, $d1, $44, BIRD_KEEPER + $C8, $7 ; trainer + db SPRITE_FOULARD_WOMAN, $b + 4, $35 + 4, $ff, $d0, $45, BEAUTY + $C8, $9 ; trainer + db SPRITE_FOULARD_WOMAN, $a + 4, $29 + 4, $ff, $d3, $46, BEAUTY + $C8, $a ; trainer + db SPRITE_BIKER, $a + 4, $30 + 4, $ff, $d0, $47, BIKER + $C8, $3 ; trainer + db SPRITE_BIKER, $a + 4, $2e + 4, $ff, $d0, $48, BIKER + $C8, $4 ; trainer + db SPRITE_LASS, $5 + 4, $25 + 4, $ff, $d3, $49, JR__TRAINER_F + $C8, $16 ; trainer + db SPRITE_LASS, $d + 4, $12 + 4, $ff, $d1, $4a, JR__TRAINER_F + $C8, $17 ; trainer + db SPRITE_BALL, $5 + 4, $12 + 4, $ff, $ff, $8b, TM_20 ; item + + ; warp-to + EVENT_DISP ROUTE_15_WIDTH, $8, $7 ; ROUTE_15_GATE_1F + EVENT_DISP ROUTE_15_WIDTH, $9, $7 ; ROUTE_15_GATE_1F + EVENT_DISP ROUTE_15_WIDTH, $8, $e ; ROUTE_15_GATE_1F + EVENT_DISP ROUTE_15_WIDTH, $9, $e ; ROUTE_15_GATE_1F diff --git a/data/mapObjects/route15gate.asm b/data/mapObjects/route15gate.asm new file mode 100755 index 00000000..e0278fbe --- /dev/null +++ b/data/mapObjects/route15gate.asm @@ -0,0 +1,21 @@ +Route15GateObject: ; 0x4960c (size=50) + db $a ; border block + + db $5 ; warps + db $4, $0, $0, $ff + db $5, $0, $1, $ff + db $4, $7, $2, $ff + db $5, $7, $3, $ff + db $8, $6, $0, ROUTE_15_GATE_2F + + db $0 ; signs + + db $1 ; people + db SPRITE_GUARD, $1 + 4, $4 + 4, $ff, $ff, $1 ; person + + ; warp-to + EVENT_DISP ROUTE_15_GATE_1F_WIDTH, $4, $0 + EVENT_DISP ROUTE_15_GATE_1F_WIDTH, $5, $0 + EVENT_DISP ROUTE_15_GATE_1F_WIDTH, $4, $7 + EVENT_DISP ROUTE_15_GATE_1F_WIDTH, $5, $7 + EVENT_DISP ROUTE_15_GATE_1F_WIDTH, $8, $6 ; ROUTE_15_GATE_2F diff --git a/data/mapObjects/route15gateupstairs.asm b/data/mapObjects/route15gateupstairs.asm new file mode 100755 index 00000000..dd7a0b2c --- /dev/null +++ b/data/mapObjects/route15gateupstairs.asm @@ -0,0 +1,14 @@ +Route15GateUpstairsObject: ; 4969d (12:569d) + db $a ; border block + + db $1 ; warps + db $7, $7, $4, ROUTE_15_GATE_1F + + db $1 ; signs + db $2, $6, $2 ; Route15GateUpstairsText2 + + db $1 ; people + db SPRITE_OAK_AIDE, $2 + 4, $4 + 4, $ff, $d0, $1 + + ; warp-to + EVENT_DISP ROUTE_15_GATE_2F_WIDTH, $7, $7 ; ROUTE_15_GATE_1F diff --git a/data/mapObjects/route16.asm b/data/mapObjects/route16.asm new file mode 100755 index 00000000..323ce018 --- /dev/null +++ b/data/mapObjects/route16.asm @@ -0,0 +1,37 @@ +Route16Object: ; 0x58afc (size=136) + db $f ; border block + + db $9 ; warps + db $a, $11, $0, ROUTE_16_GATE_1F + db $b, $11, $1, ROUTE_16_GATE_1F + db $a, $18, $2, ROUTE_16_GATE_1F + db $b, $18, $3, ROUTE_16_GATE_1F + db $4, $11, $4, ROUTE_16_GATE_1F + db $5, $11, $5, ROUTE_16_GATE_1F + db $4, $18, $6, ROUTE_16_GATE_1F + db $5, $18, $7, ROUTE_16_GATE_1F + db $5, $7, $0, ROUTE_16_HOUSE + + db $2 ; signs + db $b, $1b, $8 ; Route16Text8 + db $11, $5, $9 ; Route16Text9 + + db $7 ; people + db SPRITE_BIKER, $c + 4, $11 + 4, $ff, $d2, $41, BIKER + $C8, $5 ; trainer + db SPRITE_BIKER, $d + 4, $e + 4, $ff, $d3, $42, CUE_BALL + $C8, $1 ; trainer + db SPRITE_BIKER, $c + 4, $b + 4, $ff, $d1, $43, CUE_BALL + $C8, $2 ; trainer + db SPRITE_BIKER, $b + 4, $9 + 4, $ff, $d2, $44, BIKER + $C8, $6 ; trainer + db SPRITE_BIKER, $a + 4, $6 + 4, $ff, $d3, $45, CUE_BALL + $C8, $3 ; trainer + db SPRITE_BIKER, $c + 4, $3 + 4, $ff, $d3, $46, BIKER + $C8, $7 ; trainer + db SPRITE_SNORLAX, $a + 4, $1a + 4, $ff, $d0, $7 ; person + + ; warp-to + EVENT_DISP ROUTE_16_WIDTH, $a, $11 ; ROUTE_16_GATE_1F + EVENT_DISP ROUTE_16_WIDTH, $b, $11 ; ROUTE_16_GATE_1F + EVENT_DISP ROUTE_16_WIDTH, $a, $18 ; ROUTE_16_GATE_1F + EVENT_DISP ROUTE_16_WIDTH, $b, $18 ; ROUTE_16_GATE_1F + EVENT_DISP ROUTE_16_WIDTH, $4, $11 ; ROUTE_16_GATE_1F + EVENT_DISP ROUTE_16_WIDTH, $5, $11 ; ROUTE_16_GATE_1F + EVENT_DISP ROUTE_16_WIDTH, $4, $18 ; ROUTE_16_GATE_1F + EVENT_DISP ROUTE_16_WIDTH, $5, $18 ; ROUTE_16_GATE_1F + EVENT_DISP ROUTE_16_WIDTH, $5, $7 ; ROUTE_16_HOUSE diff --git a/data/mapObjects/route16gate.asm b/data/mapObjects/route16gate.asm new file mode 100755 index 00000000..3b493cca --- /dev/null +++ b/data/mapObjects/route16gate.asm @@ -0,0 +1,30 @@ +Route16GateObject: ; 0x4978b (size=88) + db $a ; border block + + db $9 ; warps + db $8, $0, $0, $ff + db $9, $0, $1, $ff + db $8, $7, $2, $ff + db $9, $7, $2, $ff + db $2, $0, $4, $ff + db $3, $0, $5, $ff + db $2, $7, $6, $ff + db $3, $7, $7, $ff + db $c, $6, $0, ROUTE_16_GATE_2F + + db $0 ; signs + + db $2 ; people + db SPRITE_GUARD, $5 + 4, $4 + 4, $ff, $d0, $1 ; person + db SPRITE_GAMBLER, $3 + 4, $4 + 4, $ff, $ff, $2 ; person + + ; warp-to + EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $8, $0 + EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $9, $0 + EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $8, $7 + EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $9, $7 + EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $2, $0 + EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $3, $0 + EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $2, $7 + EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $3, $7 + EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $c, $6 ; ROUTE_16_GATE_2F diff --git a/data/mapObjects/route16gateupstairs.asm b/data/mapObjects/route16gateupstairs.asm new file mode 100755 index 00000000..ee9df620 --- /dev/null +++ b/data/mapObjects/route16gateupstairs.asm @@ -0,0 +1,16 @@ +Route16GateUpstairsObject: ; 0x4984c (size=30) + db $a ; border block + + db $1 ; warps + db $7, $7, $8, ROUTE_16_GATE_1F + + db $2 ; signs + db $2, $1, $3 ; Route16GateUpstairsText3 + db $2, $6, $4 ; Route16GateUpstairsText4 + + db $2 ; people + db SPRITE_YOUNG_BOY, $2 + 4, $4 + 4, $ff, $ff, $1 ; person + db SPRITE_LITTLE_GIRL, $5 + 4, $2 + 4, $fe, $2, $2 ; person + + ; warp-to + EVENT_DISP ROUTE_16_GATE_2F_WIDTH, $7, $7 ; ROUTE_16_GATE_1F diff --git a/data/mapObjects/route16house.asm b/data/mapObjects/route16house.asm new file mode 100755 index 00000000..816c0e69 --- /dev/null +++ b/data/mapObjects/route16house.asm @@ -0,0 +1,16 @@ +Route16HouseObject: ; 0x1e657 (size=32) + db $a ; border block + + db $2 ; warps + db $7, $2, $8, $ff + db $7, $3, $8, $ff + + db $0 ; signs + + db $2 ; people + db SPRITE_BRUNETTE_GIRL, $3 + 4, $2 + 4, $ff, $d3, $1 ; person + db SPRITE_BIRD, $4 + 4, $6 + 4, $fe, $0, $2 ; person + + ; warp-to + EVENT_DISP ROUTE_16_HOUSE_WIDTH, $7, $2 + EVENT_DISP ROUTE_16_HOUSE_WIDTH, $7, $3 diff --git a/data/mapObjects/route17.asm b/data/mapObjects/route17.asm new file mode 100755 index 00000000..2957d2db --- /dev/null +++ b/data/mapObjects/route17.asm @@ -0,0 +1,24 @@ +Route17Object: ; 0x54b42 (size=102) + db $43 ; border block + + db $0 ; warps + + db $6 ; signs + db $33, $9, $b ; Route17Text11 + db $3f, $9, $c ; Route17Text12 + db $4b, $9, $d ; Route17Text13 + db $57, $9, $e ; Route17Text14 + db $6f, $9, $f ; Route17Text15 + db $8d, $9, $10 ; Route17Text16 + + db $a ; people + db SPRITE_BIKER, $13 + 4, $c + 4, $ff, $d2, $41, CUE_BALL + $C8, $4 ; trainer + db SPRITE_BIKER, $10 + 4, $b + 4, $ff, $d3, $42, CUE_BALL + $C8, $5 ; trainer + db SPRITE_BIKER, $12 + 4, $4 + 4, $ff, $d1, $43, BIKER + $C8, $8 ; trainer + db SPRITE_BIKER, $20 + 4, $7 + 4, $ff, $d2, $44, BIKER + $C8, $9 ; trainer + db SPRITE_BIKER, $22 + 4, $e + 4, $ff, $d3, $45, BIKER + $C8, $a ; trainer + db SPRITE_BIKER, $3a + 4, $11 + 4, $ff, $d2, $46, CUE_BALL + $C8, $6 ; trainer + db SPRITE_BIKER, $44 + 4, $2 + 4, $ff, $d3, $47, CUE_BALL + $C8, $7 ; trainer + db SPRITE_BIKER, $62 + 4, $e + 4, $ff, $d3, $48, CUE_BALL + $C8, $8 ; trainer + db SPRITE_BIKER, $62 + 4, $5 + 4, $ff, $d2, $49, BIKER + $C8, $b ; trainer + db SPRITE_BIKER, $76 + 4, $a + 4, $ff, $d0, $4a, BIKER + $C8, $c ; trainer diff --git a/data/mapObjects/route18.asm b/data/mapObjects/route18.asm new file mode 100755 index 00000000..68fd4298 --- /dev/null +++ b/data/mapObjects/route18.asm @@ -0,0 +1,23 @@ +Route18Object: ; 0x58c5a (size=66) + db $43 ; border block + + db $4 ; warps + db $8, $21, $0, ROUTE_18_GATE_1F + db $9, $21, $1, ROUTE_18_GATE_1F + db $8, $28, $2, ROUTE_18_GATE_1F + db $9, $28, $3, ROUTE_18_GATE_1F + + db $2 ; signs + db $7, $2b, $4 ; Route18Text4 + db $5, $21, $5 ; Route18Text5 + + db $3 ; people + db SPRITE_BLACK_HAIR_BOY_1, $b + 4, $24 + 4, $ff, $d3, $41, BIRD_KEEPER + $C8, $8 ; trainer + db SPRITE_BLACK_HAIR_BOY_1, $f + 4, $28 + 4, $ff, $d2, $42, BIRD_KEEPER + $C8, $9 ; trainer + db SPRITE_BLACK_HAIR_BOY_1, $d + 4, $2a + 4, $ff, $d2, $43, BIRD_KEEPER + $C8, $a ; trainer + + ; warp-to + EVENT_DISP ROUTE_18_WIDTH, $8, $21 ; ROUTE_18_GATE_1F + EVENT_DISP ROUTE_18_WIDTH, $9, $21 ; ROUTE_18_GATE_1F + EVENT_DISP ROUTE_18_WIDTH, $8, $28 ; ROUTE_18_GATE_1F + EVENT_DISP ROUTE_18_WIDTH, $9, $28 ; ROUTE_18_GATE_1F diff --git a/data/mapObjects/route18gate.asm b/data/mapObjects/route18gate.asm new file mode 100755 index 00000000..62816061 --- /dev/null +++ b/data/mapObjects/route18gate.asm @@ -0,0 +1,21 @@ +Route18GateObject: ; 0x49937 (size=50) + db $a ; border block + + db $5 ; warps + db $4, $0, $0, $ff + db $5, $0, $1, $ff + db $4, $7, $2, $ff + db $5, $7, $3, $ff + db $8, $6, $0, ROUTE_18_GATE_2F + + db $0 ; signs + + db $1 ; people + db SPRITE_GUARD, $1 + 4, $4 + 4, $ff, $d0, $1 ; person + + ; warp-to + EVENT_DISP ROUTE_18_GATE_1F_WIDTH, $4, $0 + EVENT_DISP ROUTE_18_GATE_1F_WIDTH, $5, $0 + EVENT_DISP ROUTE_18_GATE_1F_WIDTH, $4, $7 + EVENT_DISP ROUTE_18_GATE_1F_WIDTH, $5, $7 + EVENT_DISP ROUTE_18_GATE_1F_WIDTH, $8, $6 ; ROUTE_18_GATE_2F diff --git a/data/mapObjects/route18gateupstairs.asm b/data/mapObjects/route18gateupstairs.asm new file mode 100755 index 00000000..d2b55e7f --- /dev/null +++ b/data/mapObjects/route18gateupstairs.asm @@ -0,0 +1,15 @@ +Route18GateUpstairsObject: ; 0x499a4 (size=24) + db $a ; border block + + db $1 ; warps + db $7, $7, $4, ROUTE_18_GATE_1F + + db $2 ; signs + db $2, $1, $2 ; Route18GateUpstairsText2 + db $2, $6, $3 ; Route18GateUpstairsText3 + + db $1 ; people + db SPRITE_BUG_CATCHER, $2 + 4, $4 + 4, $fe, $2, $1 ; person + + ; warp-to + EVENT_DISP ROUTE_18_GATE_2F_WIDTH, $7, $7 ; ROUTE_18_GATE_1F diff --git a/data/mapObjects/route19.asm b/data/mapObjects/route19.asm new file mode 100755 index 00000000..037d7702 --- /dev/null +++ b/data/mapObjects/route19.asm @@ -0,0 +1,30 @@ +Route19Object: ; 0x54e9a (size=87) + db $43 ; border block + + IF _YELLOW + db $1 ; warps + db $9, $5, $0, $f8 ; SURF_HOUSE + ENDC + IF !_YELLOW + db $0 ; warps + ENDC + + db $1 ; signs + db $9, $b, $b ; Route19Text11 + + db $a ; people + db SPRITE_BLACK_HAIR_BOY_1, $7 + 4, $8 + 4, $ff, $d2, $41, SWIMMER + $C8, $2 ; trainer + db SPRITE_BLACK_HAIR_BOY_1, $7 + 4, $d + 4, $ff, $d2, $42, SWIMMER + $C8, $3 ; trainer + db SPRITE_SWIMMER, $19 + 4, $d + 4, $ff, $d2, $43, SWIMMER + $C8, $4 ; trainer + db SPRITE_SWIMMER, $1b + 4, $4 + 4, $ff, $d3, $44, SWIMMER + $C8, $5 ; trainer + db SPRITE_SWIMMER, $1f + 4, $10 + 4, $ff, $d1, $45, SWIMMER + $C8, $6 ; trainer + db SPRITE_SWIMMER, $b + 4, $9 + 4, $ff, $d0, $46, SWIMMER + $C8, $7 ; trainer + db SPRITE_SWIMMER, $2b + 4, $8 + 4, $ff, $d2, $47, BEAUTY + $C8, $c ; trainer + db SPRITE_SWIMMER, $2b + 4, $b + 4, $ff, $d3, $48, BEAUTY + $C8, $d ; trainer + db SPRITE_SWIMMER, $2a + 4, $9 + 4, $ff, $d1, $49, SWIMMER + $C8, $8 ; trainer + db SPRITE_SWIMMER, $2c + 4, $a + 4, $ff, $d0, $4a, BEAUTY + $C8, $e ; trainer + + ; warp-to + IF _YELLOW + EVENT_DISP ROUTE_19_WIDTH, $9, $5 ; SURF_HOUSE + ENDC diff --git a/data/mapObjects/route2.asm b/data/mapObjects/route2.asm new file mode 100755 index 00000000..385c9825 --- /dev/null +++ b/data/mapObjects/route2.asm @@ -0,0 +1,33 @@ +Route2Object: ; 0x54022 (size=72) + db $f ; border block + + db $6 ; warps + db $9, $c, $0, DIGLETTS_CAVE_EXIT + db $b, $3, $1, VIRIDIAN_FOREST_EXIT + db $13, $f, $0, ROUTE_2_HOUSE + db $23, $10, $1, ROUTE_2_GATE + db $27, $f, $2, ROUTE_2_GATE + db $2b, $3, $2, VIRIDIAN_FOREST_ENTRANCE + + db $2 ; signs + db $41, $5, $3 ; Route2Text3 + db $b, $b, $4 ; Route2Text4 + + db $2 ; people + db SPRITE_BALL, $36 + 4, $d + 4, $ff, $ff, $81, MOON_STONE ; item + db SPRITE_BALL, $2d + 4, $d + 4, $ff, $ff, $82, HP_UP ; item + + ; warp-to + EVENT_DISP ROUTE_2_WIDTH, $9, $c ; DIGLETTS_CAVE_EXIT + EVENT_DISP ROUTE_2_WIDTH, $b, $3 ; VIRIDIAN_FOREST_EXIT + EVENT_DISP ROUTE_2_WIDTH, $13, $f ; ROUTE_2_HOUSE + EVENT_DISP ROUTE_2_WIDTH, $23, $10 ; ROUTE_2_GATE + EVENT_DISP ROUTE_2_WIDTH, $27, $f ; ROUTE_2_GATE + EVENT_DISP ROUTE_2_WIDTH, $2b, $3 ; VIRIDIAN_FOREST_ENTRANCE + + ; unused + EVENT_DISP $4, $7, $2 + db $12, $c7, $9, $7 + EVENT_DISP $4, $7, $2 + EVENT_DISP $4, $7, $2 + EVENT_DISP $4, $7, $2 diff --git a/data/mapObjects/route20.asm b/data/mapObjects/route20.asm new file mode 100755 index 00000000..89fa4ad4 --- /dev/null +++ b/data/mapObjects/route20.asm @@ -0,0 +1,26 @@ +Route20Object: ; 0x50113 (size=106) + db $43 ; border block + + db $2 ; warps + db $5, $30, $0, SEAFOAM_ISLANDS_1 + db $9, $3a, $2, SEAFOAM_ISLANDS_1 + + db $2 ; signs + db $7, $33, $b ; Route20Text11 + db $b, $39, $c ; Route20Text12 + + db $a ; people + db SPRITE_SWIMMER, $8 + 4, $57 + 4, $ff, $d1, $41, SWIMMER + $C8, $9 ; trainer + db SPRITE_SWIMMER, $b + 4, $44 + 4, $ff, $d1, $42, BEAUTY + $C8, $f ; trainer + db SPRITE_SWIMMER, $a + 4, $2d + 4, $ff, $d0, $43, BEAUTY + $C8, $6 ; trainer + db SPRITE_SWIMMER, $e + 4, $37 + 4, $ff, $d3, $44, JR__TRAINER_F + $C8, $18 ; trainer + db SPRITE_SWIMMER, $d + 4, $26 + 4, $ff, $d0, $45, SWIMMER + $C8, $a ; trainer + db SPRITE_SWIMMER, $d + 4, $57 + 4, $ff, $d1, $46, SWIMMER + $C8, $b ; trainer + db SPRITE_BLACK_HAIR_BOY_1, $9 + 4, $22 + 4, $ff, $d1, $47, BIRD_KEEPER + $C8, $b ; trainer + db SPRITE_SWIMMER, $7 + 4, $19 + 4, $ff, $d1, $48, BEAUTY + $C8, $7 ; trainer + db SPRITE_SWIMMER, $c + 4, $18 + 4, $ff, $d0, $49, JR__TRAINER_F + $C8, $10 ; trainer + db SPRITE_SWIMMER, $8 + 4, $f + 4, $ff, $d1, $4a, BEAUTY + $C8, $8 ; trainer + + ; warp-to + EVENT_DISP ROUTE_20_WIDTH, $5, $30 ; SEAFOAM_ISLANDS_1 + EVENT_DISP ROUTE_20_WIDTH, $9, $3a ; SEAFOAM_ISLANDS_1 diff --git a/data/mapObjects/route21.asm b/data/mapObjects/route21.asm new file mode 100755 index 00000000..9bb6d92f --- /dev/null +++ b/data/mapObjects/route21.asm @@ -0,0 +1,17 @@ +Route21Object: ; 0x55021 (size=76) + db $43 ; border block + + db $0 ; warps + + db $0 ; signs + + db $9 ; people + db SPRITE_FISHER2, $18 + 4, $4 + 4, $ff, $d2, $41, FISHER + $C8, $7 ; trainer + db SPRITE_FISHER2, $19 + 4, $6 + 4, $ff, $d0, $42, FISHER + $C8, $9 ; trainer + db SPRITE_SWIMMER, $1f + 4, $a + 4, $ff, $d1, $43, SWIMMER + $C8, $c ; trainer + db SPRITE_SWIMMER, $1e + 4, $c + 4, $ff, $d3, $44, CUE_BALL + $C8, $9 ; trainer + db SPRITE_SWIMMER, $3f + 4, $10 + 4, $ff, $d0, $45, SWIMMER + $C8, $d ; trainer + db SPRITE_SWIMMER, $47 + 4, $5 + 4, $ff, $d3, $46, SWIMMER + $C8, $e ; trainer + db SPRITE_SWIMMER, $47 + 4, $f + 4, $ff, $d2, $47, SWIMMER + $C8, $f ; trainer + db SPRITE_FISHER2, $38 + 4, $e + 4, $ff, $d2, $48, FISHER + $C8, $8 ; trainer + db SPRITE_FISHER2, $39 + 4, $11 + 4, $ff, $d3, $49, FISHER + $C8, $a ; trainer diff --git a/data/mapObjects/route22.asm b/data/mapObjects/route22.asm new file mode 100755 index 00000000..ac67ed9f --- /dev/null +++ b/data/mapObjects/route22.asm @@ -0,0 +1,15 @@ +Route22Object: ; 0x50022 (size=27) + db $2c ; border block + + db $1 ; warps + db $5, $8, $0, ROUTE_22_GATE + + db $1 ; signs + db $b, $7, $3 ; Route22FrontGateText + + db $2 ; people + db SPRITE_BLUE, $5 + 4, $19 + 4, $ff, $ff, $1 ; person + db SPRITE_BLUE, $5 + 4, $19 + 4, $ff, $ff, $2 ; person + + ; warp-to + EVENT_DISP ROUTE_22_WIDTH, $5, $8 ; ROUTE_22_GATE diff --git a/data/mapObjects/route22gate.asm b/data/mapObjects/route22gate.asm new file mode 100755 index 00000000..cafc47ce --- /dev/null +++ b/data/mapObjects/route22gate.asm @@ -0,0 +1,19 @@ +Route22GateObject: ; 0x1e720 (size=42) + db $a ; border block + + db $4 ; warps + db $7, $4, $0, $ff + db $7, $5, $0, $ff + db $0, $4, $0, $ff + db $0, $5, $1, $ff + + db $0 ; signs + + db $1 ; people + db SPRITE_GUARD, $2 + 4, $6 + 4, $ff, $d2, $1 ; person + + ; warp-to + EVENT_DISP ROUTE_22_GATE_WIDTH, $7, $4 + EVENT_DISP ROUTE_22_GATE_WIDTH, $7, $5 + EVENT_DISP ROUTE_22_GATE_WIDTH, $0, $4 + EVENT_DISP ROUTE_22_GATE_WIDTH, $0, $5 diff --git a/data/mapObjects/route23.asm b/data/mapObjects/route23.asm new file mode 100755 index 00000000..15591ae1 --- /dev/null +++ b/data/mapObjects/route23.asm @@ -0,0 +1,26 @@ +Route23Object: ; 0x50361 (size=81) + db $f ; border block + + db $4 ; warps + db $8b, $7, $2, ROUTE_22_GATE + db $8b, $8, $3, ROUTE_22_GATE + db $1f, $4, $0, VICTORY_ROAD_1 + db $1f, $e, $1, VICTORY_ROAD_2 + + db $1 ; signs + db $21, $3, $8 ; Route23Text8 + + db $7 ; people + db SPRITE_GUARD, $23 + 4, $4 + 4, $ff, $d0, $1 ; person + db SPRITE_GUARD, $38 + 4, $a + 4, $ff, $d0, $2 ; person + db SPRITE_SWIMMER, $55 + 4, $8 + 4, $ff, $d0, $3 ; person + db SPRITE_SWIMMER, $60 + 4, $b + 4, $ff, $d0, $4 ; person + db SPRITE_GUARD, $69 + 4, $c + 4, $ff, $d0, $5 ; person + db SPRITE_GUARD, $77 + 4, $8 + 4, $ff, $d0, $6 ; person + db SPRITE_GUARD, $88 + 4, $8 + 4, $ff, $d0, $7 ; person + + ; warp-to + EVENT_DISP ROUTE_23_WIDTH, $8b, $7 ; ROUTE_22_GATE + EVENT_DISP ROUTE_23_WIDTH, $8b, $8 ; ROUTE_22_GATE + EVENT_DISP ROUTE_23_WIDTH, $1f, $4 ; VICTORY_ROAD_1 + EVENT_DISP ROUTE_23_WIDTH, $1f, $e ; VICTORY_ROAD_2 diff --git a/data/mapObjects/route24.asm b/data/mapObjects/route24.asm new file mode 100755 index 00000000..69764d3d --- /dev/null +++ b/data/mapObjects/route24.asm @@ -0,0 +1,16 @@ +Route24Object: ; 0x506a4 (size=67) + db $2c ; border block + + db $0 ; warps + + db $0 ; signs + + db $8 ; people + db SPRITE_BLACK_HAIR_BOY_1, $f + 4, $b + 4, $ff, $d2, $41, ROCKET + $C8, $6 ; trainer + db SPRITE_BLACK_HAIR_BOY_1, $14 + 4, $5 + 4, $ff, $d1, $42, JR__TRAINER_M + $C8, $2 ; trainer + db SPRITE_BLACK_HAIR_BOY_1, $13 + 4, $b + 4, $ff, $d2, $43, JR__TRAINER_M + $C8, $3 ; trainer + db SPRITE_LASS, $16 + 4, $a + 4, $ff, $d3, $44, LASS + $C8, $7 ; trainer + db SPRITE_BUG_CATCHER, $19 + 4, $b + 4, $ff, $d2, $45, YOUNGSTER + $C8, $4 ; trainer + db SPRITE_LASS, $1c + 4, $a + 4, $ff, $d3, $46, LASS + $C8, $8 ; trainer + db SPRITE_BUG_CATCHER, $1f + 4, $b + 4, $ff, $d2, $47, BUG_CATCHER + $C8, $9 ; trainer + db SPRITE_BALL, $5 + 4, $a + 4, $ff, $ff, $88, TM_45 ; item diff --git a/data/mapObjects/route25.asm b/data/mapObjects/route25.asm new file mode 100755 index 00000000..8040d7e0 --- /dev/null +++ b/data/mapObjects/route25.asm @@ -0,0 +1,23 @@ +Route25Object: ; 0x507b2 (size=94) + db $2c ; border block + + db $1 ; warps + db $3, $2d, $0, BILLS_HOUSE + + db $1 ; signs + db $3, $2b, $b ; Route25Text11 + + db $a ; people + db SPRITE_BUG_CATCHER, $2 + 4, $e + 4, $ff, $d0, $41, YOUNGSTER + $C8, $5 ; trainer + db SPRITE_BUG_CATCHER, $5 + 4, $12 + 4, $ff, $d1, $42, YOUNGSTER + $C8, $6 ; trainer + db SPRITE_BLACK_HAIR_BOY_1, $4 + 4, $18 + 4, $ff, $d0, $43, JR__TRAINER_M + $C8, $2 ; trainer + db SPRITE_LASS, $8 + 4, $12 + 4, $ff, $d3, $44, LASS + $C8, $9 ; trainer + db SPRITE_BUG_CATCHER, $3 + 4, $20 + 4, $ff, $d2, $45, YOUNGSTER + $C8, $7 ; trainer + db SPRITE_LASS, $4 + 4, $25 + 4, $ff, $d0, $46, LASS + $C8, $a ; trainer + db SPRITE_HIKER, $4 + 4, $8 + 4, $ff, $d3, $47, HIKER + $C8, $2 ; trainer + db SPRITE_HIKER, $9 + 4, $17 + 4, $ff, $d1, $48, HIKER + $C8, $3 ; trainer + db SPRITE_HIKER, $7 + 4, $d + 4, $ff, $d3, $49, HIKER + $C8, $4 ; trainer + db SPRITE_BALL, $2 + 4, $16 + 4, $ff, $ff, $8a, TM_19 ; item + + ; warp-to + EVENT_DISP ROUTE_25_WIDTH, $3, $2d ; BILLS_HOUSE diff --git a/data/mapObjects/route2gate.asm b/data/mapObjects/route2gate.asm new file mode 100755 index 00000000..a1bcc687 --- /dev/null +++ b/data/mapObjects/route2gate.asm @@ -0,0 +1,20 @@ +Route2GateObject: ; 0x5d620 (size=48) + db $a ; border block + + db $4 ; warps + db $0, $4, $3, $ff + db $0, $5, $3, $ff + db $7, $4, $4, $ff + db $7, $5, $4, $ff + + db $0 ; signs + + db $2 ; people + db SPRITE_OAK_AIDE, $4 + 4, $1 + 4, $ff, $d2, $1 ; person + db SPRITE_BUG_CATCHER, $4 + 4, $5 + 4, $fe, $2, $2 ; person + + ; warp-to + EVENT_DISP ROUTE_2_GATE_WIDTH, $0, $4 + EVENT_DISP ROUTE_2_GATE_WIDTH, $0, $5 + EVENT_DISP ROUTE_2_GATE_WIDTH, $7, $4 + EVENT_DISP ROUTE_2_GATE_WIDTH, $7, $5 diff --git a/data/mapObjects/route2house.asm b/data/mapObjects/route2house.asm new file mode 100755 index 00000000..26adfcf4 --- /dev/null +++ b/data/mapObjects/route2house.asm @@ -0,0 +1,16 @@ +Route2HouseObject: ; 0x1df07 (size=32) + db $a ; border block + + db $2 ; warps + db $7, $2, $2, $ff + db $7, $3, $2, $ff + + db $0 ; signs + + db $2 ; people + db SPRITE_OAK_AIDE, $4 + 4, $2 + 4, $ff, $d3, $1 ; person + db SPRITE_GAMEBOY_KID_COPY, $1 + 4, $4 + 4, $ff, $d0, $2 ; person + + ; warp-to + EVENT_DISP ROUTE_2_HOUSE_WIDTH, $7, $2 + EVENT_DISP ROUTE_2_HOUSE_WIDTH, $7, $3 diff --git a/data/mapObjects/route3.asm b/data/mapObjects/route3.asm new file mode 100755 index 00000000..1a8f1ce8 --- /dev/null +++ b/data/mapObjects/route3.asm @@ -0,0 +1,18 @@ +Route3Object: ; 0x54208 (size=77) + db $2c ; border block + + db $0 ; warps + + db $1 ; signs + db $9, $3b, $a ; Route3Text10 + + db $9 ; people + db SPRITE_BLACK_HAIR_BOY_2, $b + 4, $39 + 4, $ff, $ff, $1 ; person + db SPRITE_BUG_CATCHER, $6 + 4, $a + 4, $ff, $d3, $42, BUG_CATCHER + $C8, $4 ; trainer + db SPRITE_BUG_CATCHER, $4 + 4, $e + 4, $ff, $d0, $43, YOUNGSTER + $C8, $1 ; trainer + db SPRITE_LASS, $9 + 4, $10 + 4, $ff, $d2, $44, LASS + $C8, $1 ; trainer + db SPRITE_BUG_CATCHER, $5 + 4, $13 + 4, $ff, $d0, $45, BUG_CATCHER + $C8, $5 ; trainer + db SPRITE_LASS, $4 + 4, $17 + 4, $ff, $d2, $46, LASS + $C8, $2 ; trainer + db SPRITE_BUG_CATCHER, $9 + 4, $16 + 4, $ff, $d2, $47, YOUNGSTER + $C8, $2 ; trainer + db SPRITE_BUG_CATCHER, $6 + 4, $18 + 4, $ff, $d3, $48, BUG_CATCHER + $C8, $6 ; trainer + db SPRITE_LASS, $a + 4, $21 + 4, $ff, $d1, $49, LASS + $C8, $3 ; trainer diff --git a/data/mapObjects/route4.asm b/data/mapObjects/route4.asm new file mode 100755 index 00000000..f8d70476 --- /dev/null +++ b/data/mapObjects/route4.asm @@ -0,0 +1,22 @@ +Route4Object: ; 0x543b2 (size=58) + db $2c ; border block + + db $3 ; warps + db $5, $b, $0, MT_MOON_POKECENTER + db $5, $12, $0, MT_MOON_1 + db $5, $18, $7, MT_MOON_2 + + db $3 ; signs + db $5, $c, $4 ; PokeCenterSignText + db $7, $11, $5 ; Route4Text5 + db $7, $1b, $6 ; Route4Text6 + + db $3 ; people + db SPRITE_LASS, $8 + 4, $9 + 4, $fe, $0, $1 ; person + db SPRITE_LASS, $3 + 4, $3f + 4, $ff, $d3, $42, LASS + $C8, $4 ; trainer + db SPRITE_BALL, $3 + 4, $39 + 4, $ff, $ff, $83, TM_04 ; item + + ; warp-to + EVENT_DISP ROUTE_4_WIDTH, $5, $b ; MT_MOON_POKECENTER + EVENT_DISP ROUTE_4_WIDTH, $5, $12 ; MT_MOON_1 + EVENT_DISP ROUTE_4_WIDTH, $5, $18 ; MT_MOON_2 diff --git a/data/mapObjects/route5.asm b/data/mapObjects/route5.asm new file mode 100755 index 00000000..c7481faa --- /dev/null +++ b/data/mapObjects/route5.asm @@ -0,0 +1,21 @@ +Route5Object: ; 0x545a3 (size=47) + db $a ; border block + + db $5 ; warps + db $1d, $a, $3, ROUTE_5_GATE + db $1d, $9, $2, ROUTE_5_GATE + db $21, $a, $0, ROUTE_5_GATE + db $1b, $11, $0, PATH_ENTRANCE_ROUTE_5 + db $15, $a, $0, DAYCAREM + + db $1 ; signs + db $1d, $11, $1 ; Route5Text1 + + db $0 ; people + + ; warp-to + EVENT_DISP ROUTE_5_WIDTH, $1d, $a ; ROUTE_5_GATE + EVENT_DISP ROUTE_5_WIDTH, $1d, $9 ; ROUTE_5_GATE + EVENT_DISP ROUTE_5_WIDTH, $21, $a ; ROUTE_5_GATE + EVENT_DISP ROUTE_5_WIDTH, $1b, $11 ; PATH_ENTRANCE_ROUTE_5 + EVENT_DISP ROUTE_5_WIDTH, $15, $a ; DAYCAREM diff --git a/data/mapObjects/route5gate.asm b/data/mapObjects/route5gate.asm new file mode 100755 index 00000000..f71e3e64 --- /dev/null +++ b/data/mapObjects/route5gate.asm @@ -0,0 +1,19 @@ +Route5GateObject: ; 0x1dffb (size=42) + db $a ; border block + + db $4 ; warps + db $5, $3, $2, $ff + db $5, $4, $2, $ff + db $0, $3, $1, $ff + db $0, $4, $0, $ff + + db $0 ; signs + + db $1 ; people + db SPRITE_GUARD, $3 + 4, $1 + 4, $ff, $d3, $1 ; person + + ; warp-to + EVENT_DISP ROUTE_5_GATE_WIDTH, $5, $3 + EVENT_DISP ROUTE_5_GATE_WIDTH, $5, $4 + EVENT_DISP ROUTE_5_GATE_WIDTH, $0, $3 + EVENT_DISP ROUTE_5_GATE_WIDTH, $0, $4 diff --git a/data/mapObjects/route6.asm b/data/mapObjects/route6.asm new file mode 100755 index 00000000..bca89fb5 --- /dev/null +++ b/data/mapObjects/route6.asm @@ -0,0 +1,25 @@ +Route6Object: ; 0x58022 (size=87) + db $f ; border block + + db $4 ; warps + db $1, $9, $2, ROUTE_6_GATE + db $1, $a, $2, ROUTE_6_GATE + db $7, $a, $0, ROUTE_6_GATE + db $d, $11, $0, PATH_ENTRANCE_ROUTE_6 + + db $1 ; signs + db $f, $13, $7 ; Route6Text7 + + db $6 ; people + db SPRITE_BLACK_HAIR_BOY_1, $15 + 4, $a + 4, $ff, $d3, $41, JR__TRAINER_M + $C8, $4 ; trainer + db SPRITE_LASS, $15 + 4, $b + 4, $ff, $d2, $42, JR__TRAINER_F + $C8, $2 ; trainer + db SPRITE_BUG_CATCHER, $f + 4, $0 + 4, $ff, $d3, $43, BUG_CATCHER + $C8, $a ; trainer + db SPRITE_BLACK_HAIR_BOY_1, $1f + 4, $b + 4, $ff, $d2, $44, JR__TRAINER_M + $C8, $5 ; trainer + db SPRITE_LASS, $1e + 4, $b + 4, $ff, $d2, $45, JR__TRAINER_F + $C8, $3 ; trainer + db SPRITE_BUG_CATCHER, $1a + 4, $13 + 4, $ff, $d2, $46, BUG_CATCHER + $C8, $b ; trainer + + ; warp-to + EVENT_DISP ROUTE_6_WIDTH, $1, $9 ; ROUTE_6_GATE + EVENT_DISP ROUTE_6_WIDTH, $1, $a ; ROUTE_6_GATE + EVENT_DISP ROUTE_6_WIDTH, $7, $a ; ROUTE_6_GATE + EVENT_DISP ROUTE_6_WIDTH, $d, $11 ; PATH_ENTRANCE_ROUTE_6 diff --git a/data/mapObjects/route6gate.asm b/data/mapObjects/route6gate.asm new file mode 100755 index 00000000..068b1cc3 --- /dev/null +++ b/data/mapObjects/route6gate.asm @@ -0,0 +1,19 @@ +Route6GateObject: ; 0x1e0be (size=42) + db $a ; border block + + db $4 ; warps + db $5, $3, $2, $ff + db $5, $4, $2, $ff + db $0, $3, $1, $ff + db $0, $4, $1, $ff + + db $0 ; signs + + db $1 ; people + db SPRITE_GUARD, $2 + 4, $6 + 4, $ff, $d2, $1 ; person + + ; warp-to + EVENT_DISP ROUTE_6_GATE_WIDTH, $5, $3 + EVENT_DISP ROUTE_6_GATE_WIDTH, $5, $4 + EVENT_DISP ROUTE_6_GATE_WIDTH, $0, $3 + EVENT_DISP ROUTE_6_GATE_WIDTH, $0, $4 diff --git a/data/mapObjects/route7.asm b/data/mapObjects/route7.asm new file mode 100755 index 00000000..43425a11 --- /dev/null +++ b/data/mapObjects/route7.asm @@ -0,0 +1,21 @@ +Route7Object: ; 0x48022 (size=47) + db $f ; border block + + db $5 ; warps + db $9, $12, $2, ROUTE_7_GATE + db $a, $12, $3, ROUTE_7_GATE + db $9, $b, $0, ROUTE_7_GATE + db $a, $b, $1, ROUTE_7_GATE + db $d, $5, $0, PATH_ENTRANCE_ROUTE_7 + + db $1 ; signs + db $d, $3, $1 ; Route7Text1 + + db $0 ; people + + ; warp-to + EVENT_DISP ROUTE_7_WIDTH, $9, $12 ; ROUTE_7_GATE + EVENT_DISP ROUTE_7_WIDTH, $a, $12 ; ROUTE_7_GATE + EVENT_DISP ROUTE_7_WIDTH, $9, $b ; ROUTE_7_GATE + EVENT_DISP ROUTE_7_WIDTH, $a, $b ; ROUTE_7_GATE + EVENT_DISP ROUTE_7_WIDTH, $d, $5 ; PATH_ENTRANCE_ROUTE_7 diff --git a/data/mapObjects/route7gate.asm b/data/mapObjects/route7gate.asm new file mode 100755 index 00000000..752b53f9 --- /dev/null +++ b/data/mapObjects/route7gate.asm @@ -0,0 +1,19 @@ +Route7GateObject: ; 0x1e185 (size=42) + db $a ; border block + + db $4 ; warps + db $3, $0, $3, $ff + db $4, $0, $3, $ff + db $3, $5, $0, $ff + db $4, $5, $1, $ff + + db $0 ; signs + + db $1 ; people + db SPRITE_GUARD, $1 + 4, $3 + 4, $ff, $d0, $1 ; person + + ; warp-to + EVENT_DISP ROUTE_7_GATE_WIDTH, $3, $0 + EVENT_DISP ROUTE_7_GATE_WIDTH, $4, $0 + EVENT_DISP ROUTE_7_GATE_WIDTH, $3, $5 + EVENT_DISP ROUTE_7_GATE_WIDTH, $4, $5 diff --git a/data/mapObjects/route8.asm b/data/mapObjects/route8.asm new file mode 100755 index 00000000..f0e2434b --- /dev/null +++ b/data/mapObjects/route8.asm @@ -0,0 +1,30 @@ +Route8Object: ; 0x5814f (size=119) + db $2c ; border block + + db $5 ; warps + db $9, $1, $0, ROUTE_8_GATE + db $a, $1, $1, ROUTE_8_GATE + db $9, $8, $2, ROUTE_8_GATE + db $a, $8, $3, ROUTE_8_GATE + db $3, $d, $0, PATH_ENTRANCE_ROUTE_8 + + db $1 ; signs + db $3, $11, $a ; Route8Text10 + + db $9 ; people + db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $8 + 4, $ff, $d3, $41, SUPER_NERD + $C8, $3 ; trainer + db SPRITE_GAMBLER, $9 + 4, $d + 4, $ff, $d1, $42, GAMBLER + $C8, $5 ; trainer + db SPRITE_BLACK_HAIR_BOY_2, $6 + 4, $2a + 4, $ff, $d1, $43, SUPER_NERD + $C8, $4 ; trainer + db SPRITE_LASS, $3 + 4, $1a + 4, $ff, $d2, $44, LASS + $C8, $d ; trainer + db SPRITE_BLACK_HAIR_BOY_2, $4 + 4, $1a + 4, $ff, $d3, $45, SUPER_NERD + $C8, $5 ; trainer + db SPRITE_LASS, $5 + 4, $1a + 4, $ff, $d2, $46, LASS + $C8, $e ; trainer + db SPRITE_LASS, $6 + 4, $1a + 4, $ff, $d3, $47, LASS + $C8, $f ; trainer + db SPRITE_GAMBLER, $d + 4, $2e + 4, $ff, $d0, $48, GAMBLER + $C8, $7 ; trainer + db SPRITE_LASS, $c + 4, $33 + 4, $ff, $d2, $49, LASS + $C8, $10 ; trainer + + ; warp-to + EVENT_DISP ROUTE_8_WIDTH, $9, $1 ; ROUTE_8_GATE + EVENT_DISP ROUTE_8_WIDTH, $a, $1 ; ROUTE_8_GATE + EVENT_DISP ROUTE_8_WIDTH, $9, $8 ; ROUTE_8_GATE + EVENT_DISP ROUTE_8_WIDTH, $a, $8 ; ROUTE_8_GATE + EVENT_DISP ROUTE_8_WIDTH, $3, $d ; PATH_ENTRANCE_ROUTE_8 diff --git a/data/mapObjects/route8gate.asm b/data/mapObjects/route8gate.asm new file mode 100755 index 00000000..c38eed26 --- /dev/null +++ b/data/mapObjects/route8gate.asm @@ -0,0 +1,19 @@ +Route8GateObject: ; 0x1e247 (size=42) + db $a ; border block + + db $4 ; warps + db $3, $0, $0, $ff + db $4, $0, $1, $ff + db $3, $5, $2, $ff + db $4, $5, $3, $ff + + db $0 ; signs + + db $1 ; people + db SPRITE_GUARD, $1 + 4, $2 + 4, $ff, $d0, $1 ; person + + ; warp-to + EVENT_DISP ROUTE_8_GATE_WIDTH, $3, $0 + EVENT_DISP ROUTE_8_GATE_WIDTH, $4, $0 + EVENT_DISP ROUTE_8_GATE_WIDTH, $3, $5 + EVENT_DISP ROUTE_8_GATE_WIDTH, $4, $5 diff --git a/data/mapObjects/route9.asm b/data/mapObjects/route9.asm new file mode 100755 index 00000000..f0fc9eeb --- /dev/null +++ b/data/mapObjects/route9.asm @@ -0,0 +1,19 @@ +Route9Object: ; 0x546a8 (size=86) + db $2c ; border block + + db $0 ; warps + + db $1 ; signs + db $7, $19, $b ; Route9Text11 + + db $a ; people + db SPRITE_LASS, $a + 4, $d + 4, $ff, $d2, $41, JR__TRAINER_F + $C8, $5 ; trainer + db SPRITE_BLACK_HAIR_BOY_1, $7 + 4, $18 + 4, $ff, $d2, $42, JR__TRAINER_M + $C8, $7 ; trainer + db SPRITE_BLACK_HAIR_BOY_1, $7 + 4, $1f + 4, $ff, $d3, $43, JR__TRAINER_M + $C8, $8 ; trainer + db SPRITE_LASS, $8 + 4, $30 + 4, $ff, $d3, $44, JR__TRAINER_F + $C8, $6 ; trainer + db SPRITE_HIKER, $f + 4, $10 + 4, $ff, $d2, $45, HIKER + $C8, $b ; trainer + db SPRITE_HIKER, $3 + 4, $2b + 4, $ff, $d2, $46, HIKER + $C8, $6 ; trainer + db SPRITE_BUG_CATCHER, $2 + 4, $16 + 4, $ff, $d0, $47, BUG_CATCHER + $C8, $d ; trainer + db SPRITE_HIKER, $f + 4, $2d + 4, $ff, $d3, $48, HIKER + $C8, $5 ; trainer + db SPRITE_BUG_CATCHER, $8 + 4, $28 + 4, $ff, $d3, $49, BUG_CATCHER + $C8, $e ; trainer + db SPRITE_BALL, $f + 4, $a + 4, $ff, $ff, $8a, TM_30 ; item diff --git a/data/mapObjects/safarizonecenter.asm b/data/mapObjects/safarizonecenter.asm new file mode 100755 index 00000000..1dbcd567 --- /dev/null +++ b/data/mapObjects/safarizonecenter.asm @@ -0,0 +1,31 @@ +SafariZoneCenterObject: ; 0x45bc5 (size=89) + db $0 ; border block + + db $9 ; warps + db $19, $e, $2, SAFARI_ZONE_ENTRANCE + db $19, $f, $3, SAFARI_ZONE_ENTRANCE + db $a, $0, $4, SAFARI_ZONE_WEST + db $b, $0, $5, SAFARI_ZONE_WEST + db $0, $e, $4, SAFARI_ZONE_NORTH + db $0, $f, $5, SAFARI_ZONE_NORTH + db $a, $1d, $2, SAFARI_ZONE_EAST + db $b, $1d, $3, SAFARI_ZONE_EAST + db $13, $11, $0, SAFARI_ZONE_REST_HOUSE_1 + + db $2 ; signs + db $14, $12, $2 ; SafariZoneCenterText2 + db $16, $e, $3 ; SafariZoneCenterText3 + + db $1 ; people + db SPRITE_BALL, $a + 4, $e + 4, $ff, $ff, $81, NUGGET ; item + + ; warp-to + EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $19, $e ; SAFARI_ZONE_ENTRANCE + EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $19, $f ; SAFARI_ZONE_ENTRANCE + EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $a, $0 ; SAFARI_ZONE_WEST + EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $b, $0 ; SAFARI_ZONE_WEST + EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $0, $e ; SAFARI_ZONE_NORTH + EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $0, $f ; SAFARI_ZONE_NORTH + EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $a, $1d ; SAFARI_ZONE_EAST + EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $b, $1d ; SAFARI_ZONE_EAST + EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $13, $11 ; SAFARI_ZONE_REST_HOUSE_1 diff --git a/data/mapObjects/safarizoneeast.asm b/data/mapObjects/safarizoneeast.asm new file mode 100755 index 00000000..678276a9 --- /dev/null +++ b/data/mapObjects/safarizoneeast.asm @@ -0,0 +1,27 @@ +SafariZoneEastObject: ; 0x4588b (size=81) + db $0 ; border block + + db $5 ; warps + db $4, $0, $6, SAFARI_ZONE_NORTH + db $5, $0, $7, SAFARI_ZONE_NORTH + db $16, $0, $6, SAFARI_ZONE_CENTER + db $17, $0, $6, SAFARI_ZONE_CENTER + db $9, $19, $0, SAFARI_ZONE_REST_HOUSE_3 + + db $3 ; signs + db $a, $1a, $5 ; SafariZoneEastText5 + db $4, $6, $6 ; SafariZoneEastText6 + db $17, $5, $7 ; SafariZoneEastText7 + + db $4 ; people + db SPRITE_BALL, $a + 4, $15 + 4, $ff, $ff, $81, FULL_RESTORE ; item + db SPRITE_BALL, $7 + 4, $3 + 4, $ff, $ff, $82, MAX_POTION ; item + db SPRITE_BALL, $d + 4, $14 + 4, $ff, $ff, $83, CARBOS ; item + db SPRITE_BALL, $c + 4, $f + 4, $ff, $ff, $84, TM_37 ; item + + ; warp-to + EVENT_DISP SAFARI_ZONE_EAST_WIDTH, $4, $0 ; SAFARI_ZONE_NORTH + EVENT_DISP SAFARI_ZONE_EAST_WIDTH, $5, $0 ; SAFARI_ZONE_NORTH + EVENT_DISP SAFARI_ZONE_EAST_WIDTH, $16, $0 ; SAFARI_ZONE_CENTER + EVENT_DISP SAFARI_ZONE_EAST_WIDTH, $17, $0 ; SAFARI_ZONE_CENTER + EVENT_DISP SAFARI_ZONE_EAST_WIDTH, $9, $19 ; SAFARI_ZONE_REST_HOUSE_3 diff --git a/data/mapObjects/safarizoneentrance.asm b/data/mapObjects/safarizoneentrance.asm new file mode 100755 index 00000000..c252109c --- /dev/null +++ b/data/mapObjects/safarizoneentrance.asm @@ -0,0 +1,20 @@ +SafariZoneEntranceObject: ; 0x753f5 (size=48) + db $a ; border block + + db $4 ; warps + db $5, $3, $4, $ff + db $5, $4, $4, $ff + db $0, $3, $0, SAFARI_ZONE_CENTER + db $0, $4, $1, SAFARI_ZONE_CENTER + + db $0 ; signs + + db $2 ; people + db SPRITE_WHITE_PLAYER, $2 + 4, $6 + 4, $ff, $d2, $1 ; person + db SPRITE_WHITE_PLAYER, $4 + 4, $1 + 4, $ff, $d3, $2 ; person + + ; warp-to + EVENT_DISP SAFARI_ZONE_ENTRANCE_WIDTH, $5, $3 + EVENT_DISP SAFARI_ZONE_ENTRANCE_WIDTH, $5, $4 + EVENT_DISP SAFARI_ZONE_ENTRANCE_WIDTH, $0, $3 ; SAFARI_ZONE_CENTER + EVENT_DISP SAFARI_ZONE_ENTRANCE_WIDTH, $0, $4 ; SAFARI_ZONE_CENTER diff --git a/data/mapObjects/safarizonenorth.asm b/data/mapObjects/safarizonenorth.asm new file mode 100755 index 00000000..4b9a4786 --- /dev/null +++ b/data/mapObjects/safarizonenorth.asm @@ -0,0 +1,35 @@ +SafariZoneNorthObject: ; 0x459d5 (size=105) + db $0 ; border block + + db $9 ; warps + db $23, $2, $0, SAFARI_ZONE_WEST + db $23, $3, $1, SAFARI_ZONE_WEST + db $23, $8, $2, SAFARI_ZONE_WEST + db $23, $9, $3, SAFARI_ZONE_WEST + db $23, $14, $4, SAFARI_ZONE_CENTER + db $23, $15, $5, SAFARI_ZONE_CENTER + db $1e, $27, $0, SAFARI_ZONE_EAST + db $1f, $27, $1, SAFARI_ZONE_EAST + db $3, $23, $0, SAFARI_ZONE_REST_HOUSE_4 + + db $5 ; signs + db $4, $24, $3 ; SafariZoneNorthText3 + db $19, $4, $4 ; SafariZoneNorthText4 + db $1f, $d, $5 ; SafariZoneNorthText5 + db $21, $13, $6 ; SafariZoneNorthText6 + db $1c, $1a, $7 ; SafariZoneNorthText7 + + db $2 ; people + db SPRITE_BALL, $1 + 4, $19 + 4, $ff, $ff, $81, PROTEIN ; item + db SPRITE_BALL, $7 + 4, $13 + 4, $ff, $ff, $82, TM_40 ; item + + ; warp-to + EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $23, $2 ; SAFARI_ZONE_WEST + EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $23, $3 ; SAFARI_ZONE_WEST + EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $23, $8 ; SAFARI_ZONE_WEST + EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $23, $9 ; SAFARI_ZONE_WEST + EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $23, $14 ; SAFARI_ZONE_CENTER + EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $23, $15 ; SAFARI_ZONE_CENTER + EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $1e, $27 ; SAFARI_ZONE_EAST + EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $1f, $27 ; SAFARI_ZONE_EAST + EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $3, $23 ; SAFARI_ZONE_REST_HOUSE_4 diff --git a/data/mapObjects/safarizoneresthouse1.asm b/data/mapObjects/safarizoneresthouse1.asm new file mode 100755 index 00000000..492f8f38 --- /dev/null +++ b/data/mapObjects/safarizoneresthouse1.asm @@ -0,0 +1,16 @@ +SafariZoneRestHouse1Object: ; 0x45cfe (size=32) + db $a ; border block + + db $2 ; warps + db $7, $2, $8, SAFARI_ZONE_CENTER + db $7, $3, $8, SAFARI_ZONE_CENTER + + db $0 ; signs + + db $2 ; people + db SPRITE_GIRL, $2 + 4, $3 + 4, $ff, $d0, $1 ; person + db SPRITE_OAK_AIDE, $4 + 4, $1 + 4, $fe, $1, $2 ; person + + ; warp-to + EVENT_DISP SAFARI_ZONE_REST_HOUSE_1_WIDTH, $7, $2 ; SAFARI_ZONE_CENTER + EVENT_DISP SAFARI_ZONE_REST_HOUSE_1_WIDTH, $7, $3 ; SAFARI_ZONE_CENTER diff --git a/data/mapObjects/safarizoneresthouse2.asm b/data/mapObjects/safarizoneresthouse2.asm new file mode 100755 index 00000000..f6918eed --- /dev/null +++ b/data/mapObjects/safarizoneresthouse2.asm @@ -0,0 +1,17 @@ +SafariZoneRestHouse2Object: ; 0x45d43 (size=38) + db $a ; border block + + db $2 ; warps + db $7, $2, $7, SAFARI_ZONE_WEST + db $7, $3, $7, SAFARI_ZONE_WEST + + db $0 ; signs + + db $3 ; people + db SPRITE_OAK_AIDE, $4 + 4, $4 + 4, $fe, $0, $1 ; person + db SPRITE_BLACK_HAIR_BOY_1, $2 + 4, $0 + 4, $ff, $d3, $2 ; person + db SPRITE_ERIKA, $2 + 4, $6 + 4, $ff, $d0, $3 ; person + + ; warp-to + EVENT_DISP SAFARI_ZONE_REST_HOUSE_2_WIDTH, $7, $2 ; SAFARI_ZONE_WEST + EVENT_DISP SAFARI_ZONE_REST_HOUSE_2_WIDTH, $7, $3 ; SAFARI_ZONE_WEST diff --git a/data/mapObjects/safarizoneresthouse3.asm b/data/mapObjects/safarizoneresthouse3.asm new file mode 100755 index 00000000..70365365 --- /dev/null +++ b/data/mapObjects/safarizoneresthouse3.asm @@ -0,0 +1,17 @@ +SafariZoneRestHouse3Object: ; 0x45d8e (size=38) + db $a ; border block + + db $2 ; warps + db $7, $2, $4, SAFARI_ZONE_EAST + db $7, $3, $4, SAFARI_ZONE_EAST + + db $0 ; signs + + db $3 ; people + db SPRITE_OAK_AIDE, $3 + 4, $1 + 4, $fe, $1, $1 ; person + db SPRITE_ROCKER, $2 + 4, $4 + 4, $ff, $ff, $2 ; person + db SPRITE_LAPRAS_GIVER, $2 + 4, $5 + 4, $ff, $ff, $3 ; person + + ; warp-to + EVENT_DISP SAFARI_ZONE_REST_HOUSE_3_WIDTH, $7, $2 ; SAFARI_ZONE_EAST + EVENT_DISP SAFARI_ZONE_REST_HOUSE_3_WIDTH, $7, $3 ; SAFARI_ZONE_EAST diff --git a/data/mapObjects/safarizoneresthouse4.asm b/data/mapObjects/safarizoneresthouse4.asm new file mode 100755 index 00000000..53beef42 --- /dev/null +++ b/data/mapObjects/safarizoneresthouse4.asm @@ -0,0 +1,17 @@ +SafariZoneRestHouse4Object: ; 0x45dd9 (size=38) + db $a ; border block + + db $2 ; warps + db $7, $2, $8, SAFARI_ZONE_NORTH + db $7, $3, $8, SAFARI_ZONE_NORTH + + db $0 ; signs + + db $3 ; people + db SPRITE_OAK_AIDE, $3 + 4, $6 + 4, $fe, $2, $1 ; person + db SPRITE_WHITE_PLAYER, $4 + 4, $3 + 4, $ff, $ff, $2 ; person + db SPRITE_GENTLEMAN, $5 + 4, $1 + 4, $fe, $1, $3 ; person + + ; warp-to + EVENT_DISP SAFARI_ZONE_REST_HOUSE_4_WIDTH, $7, $2 ; SAFARI_ZONE_NORTH + EVENT_DISP SAFARI_ZONE_REST_HOUSE_4_WIDTH, $7, $3 ; SAFARI_ZONE_NORTH diff --git a/data/mapObjects/safarizonesecrethouse.asm b/data/mapObjects/safarizonesecrethouse.asm new file mode 100755 index 00000000..79032c70 --- /dev/null +++ b/data/mapObjects/safarizonesecrethouse.asm @@ -0,0 +1,15 @@ +SafariZoneSecretHouseObject: ; 0x4a365 (size=26) + db $17 ; border block + + db $2 ; warps + db $7, $2, $6, SAFARI_ZONE_WEST + db $7, $3, $6, SAFARI_ZONE_WEST + + db $0 ; signs + + db $1 ; people + db SPRITE_FISHER, $3 + 4, $3 + 4, $ff, $d0, $1 ; person + + ; warp-to + EVENT_DISP SAFARI_ZONE_SECRET_HOUSE_WIDTH, $7, $2 ; SAFARI_ZONE_WEST + EVENT_DISP SAFARI_ZONE_SECRET_HOUSE_WIDTH, $7, $3 ; SAFARI_ZONE_WEST diff --git a/data/mapObjects/safarizonewest.asm b/data/mapObjects/safarizonewest.asm new file mode 100755 index 00000000..5cdae65c --- /dev/null +++ b/data/mapObjects/safarizonewest.asm @@ -0,0 +1,34 @@ +SafariZoneWestObject: ; 0x4a1dc (size=108) + db $0 ; border block + + db $8 ; warps + db $0, $14, $0, SAFARI_ZONE_NORTH + db $0, $15, $1, SAFARI_ZONE_NORTH + db $0, $1a, $2, SAFARI_ZONE_NORTH + db $0, $1b, $3, SAFARI_ZONE_NORTH + db $16, $1d, $2, SAFARI_ZONE_CENTER + db $17, $1d, $3, SAFARI_ZONE_CENTER + db $3, $3, $0, SAFARI_ZONE_SECRET_HOUSE + db $b, $b, $0, SAFARI_ZONE_REST_HOUSE_2 + + db $4 ; signs + db $c, $c, $5 ; SafariZoneWestText5 + db $3, $11, $6 ; SafariZoneWestText6 + db $4, $1a, $7 ; SafariZoneWestText7 + db $16, $18, $8 ; SafariZoneWestText8 + + db $4 ; people + db SPRITE_BALL, $14 + 4, $8 + 4, $ff, $ff, $81, MAX_POTION ; item + db SPRITE_BALL, $7 + 4, $9 + 4, $ff, $ff, $82, TM_32 ; item + db SPRITE_BALL, $12 + 4, $12 + 4, $ff, $ff, $83, MAX_REVIVE ; item + db SPRITE_BALL, $7 + 4, $13 + 4, $ff, $ff, $84, GOLD_TEETH ; item + + ; warp-to + EVENT_DISP SAFARI_ZONE_WEST_WIDTH, $0, $14 ; SAFARI_ZONE_NORTH + EVENT_DISP SAFARI_ZONE_WEST_WIDTH, $0, $15 ; SAFARI_ZONE_NORTH + EVENT_DISP SAFARI_ZONE_WEST_WIDTH, $0, $1a ; SAFARI_ZONE_NORTH + EVENT_DISP SAFARI_ZONE_WEST_WIDTH, $0, $1b ; SAFARI_ZONE_NORTH + EVENT_DISP SAFARI_ZONE_WEST_WIDTH, $16, $1d ; SAFARI_ZONE_CENTER + EVENT_DISP SAFARI_ZONE_WEST_WIDTH, $17, $1d ; SAFARI_ZONE_CENTER + EVENT_DISP SAFARI_ZONE_WEST_WIDTH, $3, $3 ; SAFARI_ZONE_SECRET_HOUSE + EVENT_DISP SAFARI_ZONE_WEST_WIDTH, $b, $b ; SAFARI_ZONE_REST_HOUSE_2 diff --git a/data/mapObjects/saffroncity.asm b/data/mapObjects/saffroncity.asm new file mode 100755 index 00000000..5ec54aff --- /dev/null +++ b/data/mapObjects/saffroncity.asm @@ -0,0 +1,51 @@ +SaffronCityObject: ; 0x509dc (size=188) + db $f ; border block + + db $8 ; warps + db $5, $7, $0, COPYCATS_HOUSE_1F + db $3, $1a, $0, FIGHTING_DOJO + db $3, $22, $0, SAFFRON_GYM + db $b, $d, $0, SAFFRON_HOUSE_1 + db $b, $19, $0, SAFFRON_MART + db $15, $12, $0, SILPH_CO_1F + db $1d, $9, $0, SAFFRON_POKECENTER + db $1d, $1d, $0, SAFFRON_HOUSE_2 + + db $a ; signs + db $5, $11, $10 ; SaffronCityText16 + db $5, $1b, $11 ; SaffronCityText17 + db $5, $23, $12 ; SaffronCityText18 + db $b, $1a, $13 ; MartSignText + db $13, $27, $14 ; SaffronCityText20 + db $15, $5, $15 ; SaffronCityText21 + db $15, $f, $16 ; SaffronCityText22 + db $1d, $a, $17 ; PokeCenterSignText + db $1d, $1b, $18 ; SaffronCityText24 + db $13, $1, $19 ; SaffronCityText25 + + db $f ; people + db SPRITE_ROCKET, $6 + 4, $7 + 4, $ff, $ff, $1 ; person + db SPRITE_ROCKET, $8 + 4, $14 + 4, $fe, $2, $2 ; person + db SPRITE_ROCKET, $4 + 4, $22 + 4, $ff, $ff, $3 ; person + db SPRITE_ROCKET, $c + 4, $d + 4, $ff, $ff, $4 ; person + db SPRITE_ROCKET, $19 + 4, $b + 4, $fe, $2, $5 ; person + db SPRITE_ROCKET, $d + 4, $20 + 4, $fe, $2, $6 ; person + db SPRITE_ROCKET, $1e + 4, $12 + 4, $fe, $2, $7 ; person + db SPRITE_OAK_AIDE, $e + 4, $8 + 4, $fe, $0, $8 ; person + db SPRITE_LAPRAS_GIVER, $17 + 4, $17 + 4, $ff, $ff, $9 ; person + db SPRITE_ERIKA, $1e + 4, $11 + 4, $fe, $2, $a ; person + db SPRITE_GENTLEMAN, $c + 4, $1e + 4, $ff, $d0, $b ; person + db SPRITE_BIRD, $c + 4, $1f + 4, $ff, $d0, $c ; person + db SPRITE_ROCKER, $8 + 4, $12 + 4, $ff, $d1, $d ; person + db SPRITE_ROCKET, $16 + 4, $12 + 4, $ff, $d0, $e ; person + db SPRITE_ROCKET, $16 + 4, $13 + 4, $ff, $d0, $f ; person + + ; warp-to + EVENT_DISP SAFFRON_CITY_WIDTH, $5, $7 ; COPYCATS_HOUSE_1F + EVENT_DISP SAFFRON_CITY_WIDTH, $3, $1a ; FIGHTING_DOJO + EVENT_DISP SAFFRON_CITY_WIDTH, $3, $22 ; SAFFRON_GYM + EVENT_DISP SAFFRON_CITY_WIDTH, $b, $d ; SAFFRON_HOUSE_1 + EVENT_DISP SAFFRON_CITY_WIDTH, $b, $19 ; SAFFRON_MART + EVENT_DISP SAFFRON_CITY_WIDTH, $15, $12 ; SILPH_CO_1F + EVENT_DISP SAFFRON_CITY_WIDTH, $1d, $9 ; SAFFRON_POKECENTER + EVENT_DISP SAFFRON_CITY_WIDTH, $1d, $1d ; SAFFRON_HOUSE_2 diff --git a/data/mapObjects/saffrongym.asm b/data/mapObjects/saffrongym.asm new file mode 100755 index 00000000..b7d8d0f6 --- /dev/null +++ b/data/mapObjects/saffrongym.asm @@ -0,0 +1,83 @@ +SaffronGymObject: ; 0x5d259 (size=330) + db $2e ; border block + + db $20 ; warps + db $11, $8, $2, $ff + db $11, $9, $2, $ff + db $3, $1, $16, SAFFRON_GYM + db $3, $5, $f, SAFFRON_GYM + db $5, $1, $12, SAFFRON_GYM + db $5, $5, $8, SAFFRON_GYM + db $9, $1, $1b, SAFFRON_GYM + db $9, $5, $10, SAFFRON_GYM + db $b, $1, $5, SAFFRON_GYM + db $b, $5, $d, SAFFRON_GYM + db $f, $1, $17, SAFFRON_GYM + db $f, $5, $1e, SAFFRON_GYM + db $11, $1, $11, SAFFRON_GYM + db $11, $5, $9, SAFFRON_GYM + db $3, $9, $1a, SAFFRON_GYM + db $3, $b, $3, SAFFRON_GYM + db $5, $9, $7, SAFFRON_GYM + db $5, $b, $c, SAFFRON_GYM + db $b, $b, $4, SAFFRON_GYM + db $f, $b, $1f, SAFFRON_GYM + db $3, $f, $18, SAFFRON_GYM + db $3, $13, $1c, SAFFRON_GYM + db $5, $f, $2, SAFFRON_GYM + db $5, $13, $a, SAFFRON_GYM + db $9, $f, $14, SAFFRON_GYM + db $9, $13, $1d, SAFFRON_GYM + db $b, $f, $e, SAFFRON_GYM + db $b, $13, $6, SAFFRON_GYM + db $f, $f, $15, SAFFRON_GYM + db $f, $13, $19, SAFFRON_GYM + db $11, $f, $b, SAFFRON_GYM + db $11, $13, $13, SAFFRON_GYM + + db $0 ; signs + + db $9 ; people + db SPRITE_GIRL, $8 + 4, $9 + 4, $ff, $d0, $41, SABRINA + $C8, $1 ; trainer + db SPRITE_MEDIUM, $1 + 4, $a + 4, $ff, $d0, $42, CHANNELER + $C8, $16 ; trainer + db SPRITE_BUG_CATCHER, $1 + 4, $11 + 4, $ff, $d0, $43, PSYCHIC_TR + $C8, $1 ; trainer + db SPRITE_MEDIUM, $7 + 4, $3 + 4, $ff, $d0, $44, CHANNELER + $C8, $17 ; trainer + db SPRITE_BUG_CATCHER, $7 + 4, $11 + 4, $ff, $d0, $45, PSYCHIC_TR + $C8, $2 ; trainer + db SPRITE_MEDIUM, $d + 4, $3 + 4, $ff, $d0, $46, CHANNELER + $C8, $18 ; trainer + db SPRITE_BUG_CATCHER, $d + 4, $11 + 4, $ff, $d0, $47, PSYCHIC_TR + $C8, $3 ; trainer + db SPRITE_BUG_CATCHER, $1 + 4, $3 + 4, $ff, $d0, $48, PSYCHIC_TR + $C8, $4 ; trainer + db SPRITE_GYM_HELPER, $f + 4, $a + 4, $ff, $d0, $9 ; person + + ; warp-to + EVENT_DISP SAFFRON_GYM_WIDTH, $11, $8 + EVENT_DISP SAFFRON_GYM_WIDTH, $11, $9 + EVENT_DISP SAFFRON_GYM_WIDTH, $3, $1 ; SAFFRON_GYM + EVENT_DISP SAFFRON_GYM_WIDTH, $3, $5 ; SAFFRON_GYM + EVENT_DISP SAFFRON_GYM_WIDTH, $5, $1 ; SAFFRON_GYM + EVENT_DISP SAFFRON_GYM_WIDTH, $5, $5 ; SAFFRON_GYM + EVENT_DISP SAFFRON_GYM_WIDTH, $9, $1 ; SAFFRON_GYM + EVENT_DISP SAFFRON_GYM_WIDTH, $9, $5 ; SAFFRON_GYM + EVENT_DISP SAFFRON_GYM_WIDTH, $b, $1 ; SAFFRON_GYM + EVENT_DISP SAFFRON_GYM_WIDTH, $b, $5 ; SAFFRON_GYM + EVENT_DISP SAFFRON_GYM_WIDTH, $f, $1 ; SAFFRON_GYM + EVENT_DISP SAFFRON_GYM_WIDTH, $f, $5 ; SAFFRON_GYM + EVENT_DISP SAFFRON_GYM_WIDTH, $11, $1 ; SAFFRON_GYM + EVENT_DISP SAFFRON_GYM_WIDTH, $11, $5 ; SAFFRON_GYM + EVENT_DISP SAFFRON_GYM_WIDTH, $3, $9 ; SAFFRON_GYM + EVENT_DISP SAFFRON_GYM_WIDTH, $3, $b ; SAFFRON_GYM + EVENT_DISP SAFFRON_GYM_WIDTH, $5, $9 ; SAFFRON_GYM + EVENT_DISP SAFFRON_GYM_WIDTH, $5, $b ; SAFFRON_GYM + EVENT_DISP SAFFRON_GYM_WIDTH, $b, $b ; SAFFRON_GYM + EVENT_DISP SAFFRON_GYM_WIDTH, $f, $b ; SAFFRON_GYM + EVENT_DISP SAFFRON_GYM_WIDTH, $3, $f ; SAFFRON_GYM + EVENT_DISP SAFFRON_GYM_WIDTH, $3, $13 ; SAFFRON_GYM + EVENT_DISP SAFFRON_GYM_WIDTH, $5, $f ; SAFFRON_GYM + EVENT_DISP SAFFRON_GYM_WIDTH, $5, $13 ; SAFFRON_GYM + EVENT_DISP SAFFRON_GYM_WIDTH, $9, $f ; SAFFRON_GYM + EVENT_DISP SAFFRON_GYM_WIDTH, $9, $13 ; SAFFRON_GYM + EVENT_DISP SAFFRON_GYM_WIDTH, $b, $f ; SAFFRON_GYM + EVENT_DISP SAFFRON_GYM_WIDTH, $b, $13 ; SAFFRON_GYM + EVENT_DISP SAFFRON_GYM_WIDTH, $f, $f ; SAFFRON_GYM + EVENT_DISP SAFFRON_GYM_WIDTH, $f, $13 ; SAFFRON_GYM + EVENT_DISP SAFFRON_GYM_WIDTH, $11, $f ; SAFFRON_GYM + EVENT_DISP SAFFRON_GYM_WIDTH, $11, $13 ; SAFFRON_GYM diff --git a/data/mapObjects/saffronhouse1.asm b/data/mapObjects/saffronhouse1.asm new file mode 100755 index 00000000..991caa7d --- /dev/null +++ b/data/mapObjects/saffronhouse1.asm @@ -0,0 +1,18 @@ +SaffronHouse1Object: ; 0x1de04 (size=44) + db $a ; border block + + db $2 ; warps + db $7, $2, $3, $ff + db $7, $3, $3, $ff + + db $0 ; signs + + db $4 ; people + db SPRITE_BRUNETTE_GIRL, $3 + 4, $2 + 4, $ff, $d3, $1 ; person + db SPRITE_BIRD, $4 + 4, $0 + 4, $fe, $1, $2 ; person + db SPRITE_BUG_CATCHER, $1 + 4, $4 + 4, $ff, $d0, $3 ; person + db SPRITE_PAPER_SHEET, $3 + 4, $3 + 4, $ff, $ff, $4 ; person + + ; warp-to + EVENT_DISP SAFFRON_HOUSE_1_WIDTH, $7, $2 + EVENT_DISP SAFFRON_HOUSE_1_WIDTH, $7, $3 diff --git a/data/mapObjects/saffronhouse2.asm b/data/mapObjects/saffronhouse2.asm new file mode 100755 index 00000000..e9b68e7c --- /dev/null +++ b/data/mapObjects/saffronhouse2.asm @@ -0,0 +1,15 @@ +SaffronHouse2Object: ; 0x1de8a (size=26) + db $a ; border block + + db $2 ; warps + db $7, $2, $7, $ff + db $7, $3, $7, $ff + + db $0 ; signs + + db $1 ; people + db SPRITE_FISHER, $3 + 4, $5 + 4, $ff, $d2, $1 ; person + + ; warp-to + EVENT_DISP SAFFRON_HOUSE_2_WIDTH, $7, $2 + EVENT_DISP SAFFRON_HOUSE_2_WIDTH, $7, $3 diff --git a/data/mapObjects/saffronmart.asm b/data/mapObjects/saffronmart.asm new file mode 100755 index 00000000..30951c12 --- /dev/null +++ b/data/mapObjects/saffronmart.asm @@ -0,0 +1,17 @@ +SaffronMartObject: ; 0x5d41c (size=38) + db $0 ; border block + + db $2 ; warps + db $7, $3, $4, $ff + db $7, $4, $4, $ff + + db $0 ; signs + + db $3 ; people + db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person + db SPRITE_BLACK_HAIR_BOY_2, $2 + 4, $4 + 4, $ff, $ff, $2 ; person + db SPRITE_LASS, $5 + 4, $6 + 4, $fe, $0, $3 ; person + + ; warp-to + EVENT_DISP SAFFRON_MART_WIDTH, $7, $3 + EVENT_DISP SAFFRON_MART_WIDTH, $7, $4 diff --git a/data/mapObjects/saffronpokecenter.asm b/data/mapObjects/saffronpokecenter.asm new file mode 100755 index 00000000..251aeea5 --- /dev/null +++ b/data/mapObjects/saffronpokecenter.asm @@ -0,0 +1,18 @@ +SaffronPokecenterObject: ; 0x5d54f (size=44) + db $0 ; border block + + db $2 ; warps + db $7, $3, $6, $ff + db $7, $4, $6, $ff + + db $0 ; signs + + db $4 ; people + db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person + db SPRITE_FOULARD_WOMAN, $5 + 4, $5 + 4, $ff, $ff, $2 ; person + db SPRITE_GENTLEMAN, $3 + 4, $8 + 4, $ff, $d0, $3 ; person + db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person + + ; warp-to + EVENT_DISP SAFFRON_POKECENTER_WIDTH, $7, $3 + EVENT_DISP SAFFRON_POKECENTER_WIDTH, $7, $4 diff --git a/data/mapObjects/school.asm b/data/mapObjects/school.asm new file mode 100755 index 00000000..c26844a4 --- /dev/null +++ b/data/mapObjects/school.asm @@ -0,0 +1,16 @@ +SchoolObject: ; 0x1d55d (size=32) + db $a ; border block + + db $2 ; warps + db $7, $2, $2, $ff + db $7, $3, $2, $ff + + db $0 ; signs + + db $2 ; people + db SPRITE_BRUNETTE_GIRL, $5 + 4, $3 + 4, $ff, $d1, $1 ; person + db SPRITE_LASS, $1 + 4, $4 + 4, $ff, $d0, $2 ; person + + ; warp-to + EVENT_DISP VIRIDIAN_SCHOOL_WIDTH, $7, $2 + EVENT_DISP VIRIDIAN_SCHOOL_WIDTH, $7, $3 diff --git a/data/mapObjects/seafoamislands1.asm b/data/mapObjects/seafoamislands1.asm new file mode 100755 index 00000000..85f344e8 --- /dev/null +++ b/data/mapObjects/seafoamislands1.asm @@ -0,0 +1,30 @@ +SeafoamIslands1Object: ; 0x4484f (size=72) + db $7d ; border block + + db $7 ; warps + db $11, $4, $0, $ff + db $11, $5, $0, $ff + db $11, $1a, $1, $ff + db $11, $1b, $1, $ff + db $5, $7, $1, SEAFOAM_ISLANDS_2 + db $3, $19, $6, SEAFOAM_ISLANDS_2 + db $f, $17, $4, SEAFOAM_ISLANDS_2 + + db $0 ; signs + + db $2 ; people + db SPRITE_BOULDER, $a + 4, $12 + 4, $ff, $10, $1 ; person + db SPRITE_BOULDER, $7 + 4, $1a + 4, $ff, $10, $2 ; person + + ; warp-to + EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $11, $4 + EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $11, $5 + EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $11, $1a + EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $11, $1b + EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $5, $7 ; SEAFOAM_ISLANDS_2 + EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $3, $19 ; SEAFOAM_ISLANDS_2 + EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $f, $17 ; SEAFOAM_ISLANDS_2 + + ; holes + EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $6, $11 + EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $6, $18 diff --git a/data/mapObjects/seafoamislands2.asm b/data/mapObjects/seafoamislands2.asm new file mode 100755 index 00000000..56251d1c --- /dev/null +++ b/data/mapObjects/seafoamislands2.asm @@ -0,0 +1,26 @@ +SeafoamIslands2Object: ; 0x46376 (size=72) + db $7d ; border block + + db $7 ; warps + db $2, $4, $0, SEAFOAM_ISLANDS_3 + db $5, $7, $4, SEAFOAM_ISLANDS_1 + db $7, $d, $2, SEAFOAM_ISLANDS_3 + db $f, $13, $3, SEAFOAM_ISLANDS_3 + db $f, $17, $6, SEAFOAM_ISLANDS_1 + db $b, $19, $5, SEAFOAM_ISLANDS_3 + db $3, $19, $5, SEAFOAM_ISLANDS_1 + + db $0 ; signs + + db $2 ; people + db SPRITE_BOULDER, $6 + 4, $11 + 4, $ff, $10, $1 ; person + db SPRITE_BOULDER, $6 + 4, $16 + 4, $ff, $10, $2 ; person + + ; warp-to + EVENT_DISP SEAFOAM_ISLANDS_2_WIDTH, $2, $4 ; SEAFOAM_ISLANDS_3 + EVENT_DISP SEAFOAM_ISLANDS_2_WIDTH, $5, $7 ; SEAFOAM_ISLANDS_1 + EVENT_DISP SEAFOAM_ISLANDS_2_WIDTH, $7, $d ; SEAFOAM_ISLANDS_3 + EVENT_DISP SEAFOAM_ISLANDS_2_WIDTH, $f, $13 ; SEAFOAM_ISLANDS_3 + EVENT_DISP SEAFOAM_ISLANDS_2_WIDTH, $f, $17 ; SEAFOAM_ISLANDS_1 + EVENT_DISP SEAFOAM_ISLANDS_2_WIDTH, $b, $19 ; SEAFOAM_ISLANDS_3 + EVENT_DISP SEAFOAM_ISLANDS_2_WIDTH, $3, $19 ; SEAFOAM_ISLANDS_1 diff --git a/data/mapObjects/seafoamislands3.asm b/data/mapObjects/seafoamislands3.asm new file mode 100755 index 00000000..82d963a1 --- /dev/null +++ b/data/mapObjects/seafoamislands3.asm @@ -0,0 +1,26 @@ +SeafoamIslands3Object: ; 0x464b2 (size=72) + db $7d ; border block + + db $7 ; warps + db $3, $5, $0, SEAFOAM_ISLANDS_2 + db $d, $5, $0, SEAFOAM_ISLANDS_4 + db $7, $d, $2, SEAFOAM_ISLANDS_2 + db $f, $13, $3, SEAFOAM_ISLANDS_2 + db $3, $19, $3, SEAFOAM_ISLANDS_4 + db $b, $19, $5, SEAFOAM_ISLANDS_2 + db $e, $19, $4, SEAFOAM_ISLANDS_4 + + db $0 ; signs + + db $2 ; people + db SPRITE_BOULDER, $6 + 4, $12 + 4, $ff, $10, $1 ; person + db SPRITE_BOULDER, $6 + 4, $17 + 4, $ff, $10, $2 ; person + + ; warp-to + EVENT_DISP SEAFOAM_ISLANDS_3_WIDTH, $3, $5 ; SEAFOAM_ISLANDS_2 + EVENT_DISP SEAFOAM_ISLANDS_3_WIDTH, $d, $5 ; SEAFOAM_ISLANDS_4 + EVENT_DISP SEAFOAM_ISLANDS_3_WIDTH, $7, $d ; SEAFOAM_ISLANDS_2 + EVENT_DISP SEAFOAM_ISLANDS_3_WIDTH, $f, $13 ; SEAFOAM_ISLANDS_2 + EVENT_DISP SEAFOAM_ISLANDS_3_WIDTH, $3, $19 ; SEAFOAM_ISLANDS_4 + EVENT_DISP SEAFOAM_ISLANDS_3_WIDTH, $b, $19 ; SEAFOAM_ISLANDS_2 + EVENT_DISP SEAFOAM_ISLANDS_3_WIDTH, $e, $19 ; SEAFOAM_ISLANDS_4 diff --git a/data/mapObjects/seafoamislands4.asm b/data/mapObjects/seafoamislands4.asm new file mode 100755 index 00000000..aa18110a --- /dev/null +++ b/data/mapObjects/seafoamislands4.asm @@ -0,0 +1,30 @@ +SeafoamIslands4Object: ; 0x466a6 (size=96) + db $7d ; border block + + db $7 ; warps + db $c, $5, $1, SEAFOAM_ISLANDS_3 + db $6, $8, $2, SEAFOAM_ISLANDS_5 + db $4, $19, $3, SEAFOAM_ISLANDS_5 + db $3, $19, $4, SEAFOAM_ISLANDS_3 + db $e, $19, $6, SEAFOAM_ISLANDS_3 + db $11, $14, $0, SEAFOAM_ISLANDS_5 + db $11, $15, $1, SEAFOAM_ISLANDS_5 + + db $0 ; signs + + db $6 ; people + db SPRITE_BOULDER, $e + 4, $5 + 4, $ff, $10, $1 ; person + db SPRITE_BOULDER, $f + 4, $3 + 4, $ff, $10, $2 ; person + db SPRITE_BOULDER, $e + 4, $8 + 4, $ff, $10, $3 ; person + db SPRITE_BOULDER, $e + 4, $9 + 4, $ff, $10, $4 ; person + db SPRITE_BOULDER, $6 + 4, $12 + 4, $ff, $ff, $5 ; person + db SPRITE_BOULDER, $6 + 4, $13 + 4, $ff, $ff, $6 ; person + + ; warp-to + EVENT_DISP SEAFOAM_ISLANDS_4_WIDTH, $c, $5 ; SEAFOAM_ISLANDS_3 + EVENT_DISP SEAFOAM_ISLANDS_4_WIDTH, $6, $8 ; SEAFOAM_ISLANDS_5 + EVENT_DISP SEAFOAM_ISLANDS_4_WIDTH, $4, $19 ; SEAFOAM_ISLANDS_5 + EVENT_DISP SEAFOAM_ISLANDS_4_WIDTH, $3, $19 ; SEAFOAM_ISLANDS_3 + EVENT_DISP SEAFOAM_ISLANDS_4_WIDTH, $e, $19 ; SEAFOAM_ISLANDS_3 + EVENT_DISP SEAFOAM_ISLANDS_4_WIDTH, $11, $14 ; SEAFOAM_ISLANDS_5 + EVENT_DISP SEAFOAM_ISLANDS_4_WIDTH, $11, $15 ; SEAFOAM_ISLANDS_5 diff --git a/data/mapObjects/seafoamislands5.asm b/data/mapObjects/seafoamislands5.asm new file mode 100755 index 00000000..27246d20 --- /dev/null +++ b/data/mapObjects/seafoamislands5.asm @@ -0,0 +1,23 @@ +SeafoamIslands5Object: ; 0x468bc (size=62) + db $7d ; border block + + db $4 ; warps + db $11, $14, $5, SEAFOAM_ISLANDS_4 + db $11, $15, $6, SEAFOAM_ISLANDS_4 + db $7, $b, $1, SEAFOAM_ISLANDS_4 + db $4, $19, $2, SEAFOAM_ISLANDS_4 + + db $2 ; signs + db $f, $9, $4 ; SeafoamIslands5Text4 + db $1, $17, $5 ; SeafoamIslands5Text5 + + db $3 ; people + db SPRITE_BOULDER, $f + 4, $4 + 4, $ff, $ff, $1 ; person + db SPRITE_BOULDER, $f + 4, $5 + 4, $ff, $ff, $2 ; person + db SPRITE_BIRD, $1 + 4, $6 + 4, $ff, $d0, $43, ARTICUNO, 50 ; trainer + + ; warp-to + EVENT_DISP SEAFOAM_ISLANDS_5_WIDTH, $11, $14 ; SEAFOAM_ISLANDS_4 + EVENT_DISP SEAFOAM_ISLANDS_5_WIDTH, $11, $15 ; SEAFOAM_ISLANDS_4 + EVENT_DISP SEAFOAM_ISLANDS_5_WIDTH, $7, $b ; SEAFOAM_ISLANDS_4 + EVENT_DISP SEAFOAM_ISLANDS_5_WIDTH, $4, $19 ; SEAFOAM_ISLANDS_4 diff --git a/data/mapObjects/silphco1.asm b/data/mapObjects/silphco1.asm new file mode 100755 index 00000000..0d599ca6 --- /dev/null +++ b/data/mapObjects/silphco1.asm @@ -0,0 +1,21 @@ +SilphCo1Object: ; 0x5d470 (size=50) + db $2e ; border block + + db $5 ; warps + db $11, $a, $5, $ff + db $11, $b, $5, $ff + db $0, $1a, $0, SILPH_CO_2F + db $0, $14, $0, SILPH_CO_ELEVATOR + db $a, $10, $6, SILPH_CO_3F + + db $0 ; signs + + db $1 ; people + db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $4 + 4, $ff, $d0, $1 ; person + + ; warp-to + EVENT_DISP SILPH_CO_1F_WIDTH, $11, $a + EVENT_DISP SILPH_CO_1F_WIDTH, $11, $b + EVENT_DISP SILPH_CO_1F_WIDTH, $0, $1a ; SILPH_CO_2F + EVENT_DISP SILPH_CO_1F_WIDTH, $0, $14 ; SILPH_CO_ELEVATOR + EVENT_DISP SILPH_CO_1F_WIDTH, $a, $10 ; SILPH_CO_3F diff --git a/data/mapObjects/silphco10.asm b/data/mapObjects/silphco10.asm new file mode 100755 index 00000000..50e84b79 --- /dev/null +++ b/data/mapObjects/silphco10.asm @@ -0,0 +1,28 @@ +SilphCo10Object: ; 0x5a1fb (size=95) + db $2e ; border block + + db $6 ; warps + db $0, $8, $0, SILPH_CO_9F + db $0, $a, $0, SILPH_CO_11F + db $0, $c, $0, SILPH_CO_ELEVATOR + db $b, $9, $3, SILPH_CO_4F + db $f, $d, $5, SILPH_CO_4F + db $7, $d, $6, SILPH_CO_4F + + db $0 ; signs + + db $6 ; people + db SPRITE_ROCKET, $9 + 4, $1 + 4, $ff, $d3, $41, ROCKET + $C8, $27 ; trainer + db SPRITE_OAK_AIDE, $2 + 4, $a + 4, $ff, $d2, $42, SCIENTIST + $C8, $b ; trainer + db SPRITE_ERIKA, $f + 4, $9 + 4, $fe, $0, $3 ; person + db SPRITE_BALL, $c + 4, $2 + 4, $ff, $ff, $84, TM_26 ; item + db SPRITE_BALL, $e + 4, $4 + 4, $ff, $ff, $85, RARE_CANDY ; item + db SPRITE_BALL, $b + 4, $5 + 4, $ff, $ff, $86, CARBOS ; item + + ; warp-to + EVENT_DISP SILPH_CO_10F_WIDTH, $0, $8 ; SILPH_CO_9F + EVENT_DISP SILPH_CO_10F_WIDTH, $0, $a ; SILPH_CO_11F + EVENT_DISP SILPH_CO_10F_WIDTH, $0, $c ; SILPH_CO_ELEVATOR + EVENT_DISP SILPH_CO_10F_WIDTH, $b, $9 ; SILPH_CO_4F + EVENT_DISP SILPH_CO_10F_WIDTH, $f, $d ; SILPH_CO_4F + EVENT_DISP SILPH_CO_10F_WIDTH, $7, $d ; SILPH_CO_4F diff --git a/data/mapObjects/silphco11.asm b/data/mapObjects/silphco11.asm new file mode 100755 index 00000000..c575d10f --- /dev/null +++ b/data/mapObjects/silphco11.asm @@ -0,0 +1,23 @@ +SilphCo11Object: ; 0x62380 (size=72) + db $d ; border block + + db $4 ; warps + db $0, $9, $1, SILPH_CO_10F + db $0, $d, $0, SILPH_CO_ELEVATOR + db $5, $5, $9, $ff + db $2, $3, $3, SILPH_CO_7F + + db $0 ; signs + + db $5 ; people + db SPRITE_MR_MASTERBALL, $5 + 4, $7 + 4, $ff, $d0, $1 ; person + db SPRITE_FOULARD_WOMAN, $5 + 4, $a + 4, $ff, $d0, $2 ; person + db SPRITE_GIOVANNI, $9 + 4, $6 + 4, $ff, $d0, $43, GIOVANNI + $C8, $2 ; trainer + db SPRITE_ROCKET, $10 + 4, $3 + 4, $ff, $d1, $44, ROCKET + $C8, $29 ; trainer + db SPRITE_ROCKET, $9 + 4, $f + 4, $ff, $d1, $45, ROCKET + $C8, $28 ; trainer + + ; warp-to + EVENT_DISP SILPH_CO_11F_WIDTH, $0, $9 ; SILPH_CO_10F + EVENT_DISP SILPH_CO_11F_WIDTH, $0, $d ; SILPH_CO_ELEVATOR + EVENT_DISP SILPH_CO_11F_WIDTH, $5, $5 + EVENT_DISP SILPH_CO_11F_WIDTH, $2, $3 ; SILPH_CO_7F diff --git a/data/mapObjects/silphco2.asm b/data/mapObjects/silphco2.asm new file mode 100755 index 00000000..78c175a6 --- /dev/null +++ b/data/mapObjects/silphco2.asm @@ -0,0 +1,29 @@ +SilphCo2Object: ; 0x59e66 (size=98) + db $2e ; border block + + db $7 ; warps + db $0, $18, $2, SILPH_CO_1F + db $0, $1a, $0, SILPH_CO_3F + db $0, $14, $0, SILPH_CO_ELEVATOR + db $3, $3, $6, SILPH_CO_3F + db $3, $d, $4, SILPH_CO_8F + db $f, $1b, $5, SILPH_CO_8F + db $f, $9, $4, SILPH_CO_6F + + db $0 ; signs + + db $5 ; people + db SPRITE_ERIKA, $1 + 4, $a + 4, $ff, $d1, $1 ; person + db SPRITE_OAK_AIDE, $c + 4, $5 + 4, $ff, $d0, $42, SCIENTIST + $C8, $2 ; trainer + db SPRITE_OAK_AIDE, $d + 4, $18 + 4, $ff, $d2, $43, SCIENTIST + $C8, $3 ; trainer + db SPRITE_ROCKET, $b + 4, $10 + 4, $ff, $d1, $44, ROCKET + $C8, $17 ; trainer + db SPRITE_ROCKET, $7 + 4, $18 + 4, $ff, $d1, $45, ROCKET + $C8, $18 ; trainer + + ; warp-to + EVENT_DISP SILPH_CO_2F_WIDTH, $0, $18 ; SILPH_CO_1F + EVENT_DISP SILPH_CO_2F_WIDTH, $0, $1a ; SILPH_CO_3F + EVENT_DISP SILPH_CO_2F_WIDTH, $0, $14 ; SILPH_CO_ELEVATOR + EVENT_DISP SILPH_CO_2F_WIDTH, $3, $3 ; SILPH_CO_3F + EVENT_DISP SILPH_CO_2F_WIDTH, $3, $d ; SILPH_CO_8F + EVENT_DISP SILPH_CO_2F_WIDTH, $f, $1b ; SILPH_CO_8F + EVENT_DISP SILPH_CO_2F_WIDTH, $f, $9 ; SILPH_CO_6F diff --git a/data/mapObjects/silphco3.asm b/data/mapObjects/silphco3.asm new file mode 100755 index 00000000..af7d0aa2 --- /dev/null +++ b/data/mapObjects/silphco3.asm @@ -0,0 +1,34 @@ +SilphCo3Object: ; 0x5a035 (size=113) + db $2e ; border block + + db $a ; warps + db $0, $1a, $1, SILPH_CO_2F + db $0, $18, $0, SILPH_CO_4F + db $0, $14, $0, SILPH_CO_ELEVATOR + db $b, $17, $9, SILPH_CO_3F + db $3, $3, $5, SILPH_CO_5F + db $f, $3, $6, SILPH_CO_5F + db $3, $1b, $3, SILPH_CO_2F + db $b, $3, $3, SILPH_CO_9F + db $b, $b, $4, SILPH_CO_7F + db $f, $1b, $3, SILPH_CO_3F + + db $0 ; signs + + db $4 ; people + db SPRITE_LAPRAS_GIVER, $8 + 4, $18 + 4, $ff, $ff, $1 ; person + db SPRITE_ROCKET, $7 + 4, $14 + 4, $ff, $d2, $42, ROCKET + $C8, $19 ; trainer + db SPRITE_OAK_AIDE, $9 + 4, $7 + 4, $ff, $d0, $43, SCIENTIST + $C8, $4 ; trainer + db SPRITE_BALL, $5 + 4, $8 + 4, $ff, $ff, $84, HYPER_POTION ; item + + ; warp-to + EVENT_DISP SILPH_CO_3F_WIDTH, $0, $1a ; SILPH_CO_2F + EVENT_DISP SILPH_CO_3F_WIDTH, $0, $18 ; SILPH_CO_4F + EVENT_DISP SILPH_CO_3F_WIDTH, $0, $14 ; SILPH_CO_ELEVATOR + EVENT_DISP SILPH_CO_3F_WIDTH, $b, $17 ; SILPH_CO_3F + EVENT_DISP SILPH_CO_3F_WIDTH, $3, $3 ; SILPH_CO_5F + EVENT_DISP SILPH_CO_3F_WIDTH, $f, $3 ; SILPH_CO_5F + EVENT_DISP SILPH_CO_3F_WIDTH, $3, $1b ; SILPH_CO_2F + EVENT_DISP SILPH_CO_3F_WIDTH, $b, $3 ; SILPH_CO_9F + EVENT_DISP SILPH_CO_3F_WIDTH, $b, $b ; SILPH_CO_7F + EVENT_DISP SILPH_CO_3F_WIDTH, $f, $1b ; SILPH_CO_3F diff --git a/data/mapObjects/silphco4.asm b/data/mapObjects/silphco4.asm new file mode 100755 index 00000000..4677d302 --- /dev/null +++ b/data/mapObjects/silphco4.asm @@ -0,0 +1,31 @@ +SilphCo4Object: ; 0x19e35 (size=111) + db $2e ; border block + + db $7 ; warps + db $0, $18, $1, SILPH_CO_3F + db $0, $1a, $1, SILPH_CO_5F + db $0, $14, $0, SILPH_CO_ELEVATOR + db $7, $b, $3, SILPH_CO_10F + db $3, $11, $3, SILPH_CO_6F + db $f, $3, $4, SILPH_CO_10F + db $b, $11, $5, SILPH_CO_10F + + db $0 ; signs + + db $7 ; people + db SPRITE_LAPRAS_GIVER, $2 + 4, $6 + 4, $ff, $ff, $1 ; person + db SPRITE_ROCKET, $e + 4, $9 + 4, $ff, $d3, $42, ROCKET + $C8, $1a ; trainer + db SPRITE_OAK_AIDE, $6 + 4, $e + 4, $ff, $d2, $43, SCIENTIST + $C8, $5 ; trainer + db SPRITE_ROCKET, $a + 4, $1a + 4, $ff, $d1, $44, ROCKET + $C8, $1b ; trainer + db SPRITE_BALL, $9 + 4, $3 + 4, $ff, $ff, $85, FULL_HEAL ; item + db SPRITE_BALL, $7 + 4, $4 + 4, $ff, $ff, $86, MAX_REVIVE ; item + db SPRITE_BALL, $8 + 4, $5 + 4, $ff, $ff, $87, ESCAPE_ROPE ; item + + ; warp-to + EVENT_DISP SILPH_CO_4F_WIDTH, $0, $18 ; SILPH_CO_3F + EVENT_DISP SILPH_CO_4F_WIDTH, $0, $1a ; SILPH_CO_5F + EVENT_DISP SILPH_CO_4F_WIDTH, $0, $14 ; SILPH_CO_ELEVATOR + EVENT_DISP SILPH_CO_4F_WIDTH, $7, $b ; SILPH_CO_10F + EVENT_DISP SILPH_CO_4F_WIDTH, $3, $11 ; SILPH_CO_6F + EVENT_DISP SILPH_CO_4F_WIDTH, $f, $3 ; SILPH_CO_10F + EVENT_DISP SILPH_CO_4F_WIDTH, $b, $11 ; SILPH_CO_10F diff --git a/data/mapObjects/silphco5.asm b/data/mapObjects/silphco5.asm new file mode 100755 index 00000000..f5874371 --- /dev/null +++ b/data/mapObjects/silphco5.asm @@ -0,0 +1,35 @@ +SilphCo5Object: ; 0x1a08d (size=137) + db $2e ; border block + + db $7 ; warps + db $0, $18, $1, SILPH_CO_6F + db $0, $1a, $1, SILPH_CO_4F + db $0, $14, $0, SILPH_CO_ELEVATOR + db $3, $1b, $5, SILPH_CO_7F + db $f, $9, $4, SILPH_CO_9F + db $5, $b, $4, SILPH_CO_3F + db $f, $3, $5, SILPH_CO_3F + + db $0 ; signs + + db $b ; people + db SPRITE_LAPRAS_GIVER, $9 + 4, $d + 4, $ff, $ff, $1 ; person + db SPRITE_ROCKET, $10 + 4, $8 + 4, $ff, $d3, $42, ROCKET + $C8, $1c ; trainer + db SPRITE_OAK_AIDE, $3 + 4, $8 + 4, $ff, $d3, $43, SCIENTIST + $C8, $6 ; trainer + db SPRITE_ROCKER, $a + 4, $12 + 4, $ff, $d1, $44, JUGGLER + $C8, $1 ; trainer + db SPRITE_ROCKET, $4 + 4, $1c + 4, $ff, $d1, $45, ROCKET + $C8, $1d ; trainer + db SPRITE_BALL, $d + 4, $2 + 4, $ff, $ff, $86, TM_09 ; item + db SPRITE_BALL, $6 + 4, $4 + 4, $ff, $ff, $87, PROTEIN ; item + db SPRITE_BALL, $10 + 4, $15 + 4, $ff, $ff, $88, CARD_KEY ; item + db SPRITE_CLIPBOARD, $c + 4, $16 + 4, $ff, $ff, $9 ; person + db SPRITE_CLIPBOARD, $a + 4, $19 + 4, $ff, $ff, $a ; person + db SPRITE_CLIPBOARD, $6 + 4, $18 + 4, $ff, $ff, $b ; person + + ; warp-to + EVENT_DISP SILPH_CO_5F_WIDTH, $0, $18 ; SILPH_CO_6F + EVENT_DISP SILPH_CO_5F_WIDTH, $0, $1a ; SILPH_CO_4F + EVENT_DISP SILPH_CO_5F_WIDTH, $0, $14 ; SILPH_CO_ELEVATOR + EVENT_DISP SILPH_CO_5F_WIDTH, $3, $1b ; SILPH_CO_7F + EVENT_DISP SILPH_CO_5F_WIDTH, $f, $9 ; SILPH_CO_9F + EVENT_DISP SILPH_CO_5F_WIDTH, $5, $b ; SILPH_CO_3F + EVENT_DISP SILPH_CO_5F_WIDTH, $f, $3 ; SILPH_CO_3F diff --git a/data/mapObjects/silphco6.asm b/data/mapObjects/silphco6.asm new file mode 100755 index 00000000..89239aa1 --- /dev/null +++ b/data/mapObjects/silphco6.asm @@ -0,0 +1,30 @@ +SilphCo6Object: ; 0x1a2fb (size=112) + db $2e ; border block + + db $5 ; warps + db $0, $10, $1, SILPH_CO_7F + db $0, $e, $0, SILPH_CO_5F + db $0, $12, $0, SILPH_CO_ELEVATOR + db $3, $3, $4, SILPH_CO_4F + db $3, $17, $6, SILPH_CO_2F + + db $0 ; signs + + db $a ; people + db SPRITE_LAPRAS_GIVER, $6 + 4, $a + 4, $ff, $ff, $1 ; person + db SPRITE_LAPRAS_GIVER, $6 + 4, $14 + 4, $ff, $ff, $2 ; person + db SPRITE_ERIKA, $6 + 4, $15 + 4, $ff, $d0, $3 ; person + db SPRITE_ERIKA, $a + 4, $b + 4, $ff, $d3, $4 ; person + db SPRITE_LAPRAS_GIVER, $d + 4, $12 + 4, $ff, $d1, $5 ; person + db SPRITE_ROCKET, $3 + 4, $11 + 4, $ff, $d3, $46, ROCKET + $C8, $1e ; trainer + db SPRITE_OAK_AIDE, $8 + 4, $7 + 4, $ff, $d0, $47, SCIENTIST + $C8, $7 ; trainer + db SPRITE_ROCKET, $f + 4, $e + 4, $ff, $d2, $48, ROCKET + $C8, $1f ; trainer + db SPRITE_BALL, $c + 4, $3 + 4, $ff, $ff, $89, HP_UP ; item + db SPRITE_BALL, $f + 4, $2 + 4, $ff, $ff, $8a, X_ACCURACY ; item + + ; warp-to + EVENT_DISP SILPH_CO_6F_WIDTH, $0, $10 ; SILPH_CO_7F + EVENT_DISP SILPH_CO_6F_WIDTH, $0, $e ; SILPH_CO_5F + EVENT_DISP SILPH_CO_6F_WIDTH, $0, $12 ; SILPH_CO_ELEVATOR + EVENT_DISP SILPH_CO_6F_WIDTH, $3, $3 ; SILPH_CO_4F + EVENT_DISP SILPH_CO_6F_WIDTH, $3, $17 ; SILPH_CO_2F diff --git a/data/mapObjects/silphco7.asm b/data/mapObjects/silphco7.asm new file mode 100755 index 00000000..de97b8de --- /dev/null +++ b/data/mapObjects/silphco7.asm @@ -0,0 +1,33 @@ +SilphCo7Object: ; 0x51ed7 (size=128) + db $2e ; border block + + db $6 ; warps + db $0, $10, $1, SILPH_CO_8F + db $0, $16, $0, SILPH_CO_6F + db $0, $12, $0, SILPH_CO_ELEVATOR + db $7, $5, $3, SILPH_CO_11F + db $3, $5, $8, SILPH_CO_3F + db $f, $15, $3, SILPH_CO_5F + + db $0 ; signs + + db $b ; people + db SPRITE_LAPRAS_GIVER, $5 + 4, $1 + 4, $ff, $ff, $1 ; person + db SPRITE_LAPRAS_GIVER, $d + 4, $d + 4, $ff, $d1, $2 ; person + db SPRITE_LAPRAS_GIVER, $a + 4, $7 + 4, $ff, $ff, $3 ; person + db SPRITE_ERIKA, $8 + 4, $a + 4, $ff, $ff, $4 ; person + db SPRITE_ROCKET, $1 + 4, $d + 4, $ff, $d0, $45, ROCKET + $C8, $20 ; trainer + db SPRITE_OAK_AIDE, $d + 4, $2 + 4, $ff, $d0, $46, SCIENTIST + $C8, $8 ; trainer + db SPRITE_ROCKET, $2 + 4, $14 + 4, $ff, $d2, $47, ROCKET + $C8, $21 ; trainer + db SPRITE_ROCKET, $e + 4, $13 + 4, $ff, $d3, $48, ROCKET + $C8, $22 ; trainer + db SPRITE_BLUE, $7 + 4, $3 + 4, $ff, $d1, $9 ; person + db SPRITE_BALL, $9 + 4, $1 + 4, $ff, $ff, $8a, CALCIUM ; item + db SPRITE_BALL, $b + 4, $18 + 4, $ff, $ff, $8b, TM_03 ; item + + ; warp-to + EVENT_DISP SILPH_CO_7F_WIDTH, $0, $10 ; SILPH_CO_8F + EVENT_DISP SILPH_CO_7F_WIDTH, $0, $16 ; SILPH_CO_6F + EVENT_DISP SILPH_CO_7F_WIDTH, $0, $12 ; SILPH_CO_ELEVATOR + EVENT_DISP SILPH_CO_7F_WIDTH, $7, $5 ; SILPH_CO_11F + EVENT_DISP SILPH_CO_7F_WIDTH, $3, $5 ; SILPH_CO_3F + EVENT_DISP SILPH_CO_7F_WIDTH, $f, $15 ; SILPH_CO_5F diff --git a/data/mapObjects/silphco8.asm b/data/mapObjects/silphco8.asm new file mode 100755 index 00000000..92d9d061 --- /dev/null +++ b/data/mapObjects/silphco8.asm @@ -0,0 +1,28 @@ +SilphCo8Object: ; 0x56613 (size=90) + db $2e ; border block + + db $7 ; warps + db $0, $10, $1, SILPH_CO_9F + db $0, $e, $0, SILPH_CO_7F + db $0, $12, $0, SILPH_CO_ELEVATOR + db $b, $3, $6, SILPH_CO_8F + db $f, $3, $4, SILPH_CO_2F + db $5, $b, $5, SILPH_CO_2F + db $9, $b, $3, SILPH_CO_8F + + db $0 ; signs + + db $4 ; people + db SPRITE_LAPRAS_GIVER, $2 + 4, $4 + 4, $ff, $ff, $1 ; person + db SPRITE_ROCKET, $2 + 4, $13 + 4, $ff, $d2, $42, ROCKET + $C8, $23 ; trainer + db SPRITE_OAK_AIDE, $2 + 4, $a + 4, $ff, $d0, $43, SCIENTIST + $C8, $9 ; trainer + db SPRITE_ROCKET, $f + 4, $c + 4, $ff, $d3, $44, ROCKET + $C8, $24 ; trainer + + ; warp-to + EVENT_DISP SILPH_CO_8F_WIDTH, $0, $10 ; SILPH_CO_9F + EVENT_DISP SILPH_CO_8F_WIDTH, $0, $e ; SILPH_CO_7F + EVENT_DISP SILPH_CO_8F_WIDTH, $0, $12 ; SILPH_CO_ELEVATOR + EVENT_DISP SILPH_CO_8F_WIDTH, $b, $3 ; SILPH_CO_8F + EVENT_DISP SILPH_CO_8F_WIDTH, $f, $3 ; SILPH_CO_2F + EVENT_DISP SILPH_CO_8F_WIDTH, $5, $b ; SILPH_CO_2F + EVENT_DISP SILPH_CO_8F_WIDTH, $9, $b ; SILPH_CO_8F_WIDTH diff --git a/data/mapObjects/silphco9.asm b/data/mapObjects/silphco9.asm new file mode 100755 index 00000000..c4047708 --- /dev/null +++ b/data/mapObjects/silphco9.asm @@ -0,0 +1,24 @@ +SilphCo9Object: ; 0x5d93f (size=74) + db $2e ; border block + + db $5 ; warps + db $0, $e, $0, SILPH_CO_10F + db $0, $10, $0, SILPH_CO_8F + db $0, $12, $0, SILPH_CO_ELEVATOR + db $3, $9, $7, SILPH_CO_3F + db $f, $11, $4, SILPH_CO_5F + + db $0 ; signs + + db $4 ; people + db SPRITE_NURSE, $e + 4, $3 + 4, $ff, $d0, $1 ; person + db SPRITE_ROCKET, $4 + 4, $2 + 4, $ff, $d1, $42, ROCKET + $C8, $25 ; trainer + db SPRITE_OAK_AIDE, $d + 4, $15 + 4, $ff, $d0, $43, SCIENTIST + $C8, $a ; trainer + db SPRITE_ROCKET, $10 + 4, $d + 4, $ff, $d1, $44, ROCKET + $C8, $26 ; trainer + + ; warp-to + EVENT_DISP SILPH_CO_9F_WIDTH, $0, $e ; SILPH_CO_10F + EVENT_DISP SILPH_CO_9F_WIDTH, $0, $10 ; SILPH_CO_8F + EVENT_DISP SILPH_CO_9F_WIDTH, $0, $12 ; SILPH_CO_ELEVATOR + EVENT_DISP SILPH_CO_9F_WIDTH, $3, $9 ; SILPH_CO_3F + EVENT_DISP SILPH_CO_9F_WIDTH, $f, $11 ; SILPH_CO_5F diff --git a/data/mapObjects/silphcoelevator.asm b/data/mapObjects/silphcoelevator.asm new file mode 100755 index 00000000..ced554eb --- /dev/null +++ b/data/mapObjects/silphcoelevator.asm @@ -0,0 +1,15 @@ +SilphCoElevatorObject: ; 0x45844 (size=23) + db $f ; border block + + db $2 ; warps + db $3, $1, $0, $ed + db $3, $2, $0, $ed + + db $1 ; signs + db $0, $3, $1 ; SilphCoElevatorText1 + + db $0 ; people + + ; warp-to + EVENT_DISP SILPH_CO_ELEVATOR_WIDTH, $3, $1 + EVENT_DISP SILPH_CO_ELEVATOR_WIDTH, $3, $2 diff --git a/data/mapObjects/ssanne1.asm b/data/mapObjects/ssanne1.asm new file mode 100755 index 00000000..a1688f5c --- /dev/null +++ b/data/mapObjects/ssanne1.asm @@ -0,0 +1,34 @@ +SSAnne1Object: ; 0x61277 (size=104) + db $c ; border block + + db $b ; warps + db $0, $1a, $1, VERMILION_DOCK + db $0, $1b, $1, VERMILION_DOCK + db $8, $1f, $0, SS_ANNE_8 + db $8, $17, $1, SS_ANNE_8 + db $8, $13, $2, SS_ANNE_8 + db $8, $f, $3, SS_ANNE_8 + db $8, $b, $4, SS_ANNE_8 + db $8, $7, $5, SS_ANNE_8 + db $6, $2, $6, SS_ANNE_2 + db $f, $25, $5, SS_ANNE_4 + db $10, $3, $0, SS_ANNE_6 + + db $0 ; signs + + db $2 ; people + db SPRITE_WAITER, $6 + 4, $c + 4, $fe, $2, $1 ; person + db SPRITE_SAILOR, $5 + 4, $1b + 4, $ff, $ff, $2 ; person + + ; warp-to + EVENT_DISP SS_ANNE_1_WIDTH, $0, $1a ; VERMILION_DOCK + EVENT_DISP SS_ANNE_1_WIDTH, $0, $1b ; VERMILION_DOCK + EVENT_DISP SS_ANNE_1_WIDTH, $8, $1f ; SS_ANNE_8 + EVENT_DISP SS_ANNE_1_WIDTH, $8, $17 ; SS_ANNE_8 + EVENT_DISP SS_ANNE_1_WIDTH, $8, $13 ; SS_ANNE_8 + EVENT_DISP SS_ANNE_1_WIDTH, $8, $f ; SS_ANNE_8 + EVENT_DISP SS_ANNE_1_WIDTH, $8, $b ; SS_ANNE_8 + EVENT_DISP SS_ANNE_1_WIDTH, $8, $7 ; SS_ANNE_8 + EVENT_DISP SS_ANNE_1_WIDTH, $6, $2 ; SS_ANNE_2 + EVENT_DISP SS_ANNE_1_WIDTH, $f, $25 ; SS_ANNE_4 + EVENT_DISP SS_ANNE_1_WIDTH, $10, $3 ; SS_ANNE_6 diff --git a/data/mapObjects/ssanne10.asm b/data/mapObjects/ssanne10.asm new file mode 100755 index 00000000..3a190cf4 --- /dev/null +++ b/data/mapObjects/ssanne10.asm @@ -0,0 +1,41 @@ +SSAnne10Object: ; 0x61e75 (size=165) + db $c ; border block + + db $a ; warps + db $5, $2, $4, SS_ANNE_4 + db $5, $3, $4, SS_ANNE_4 + db $5, $c, $3, SS_ANNE_4 + db $5, $d, $3, SS_ANNE_4 + db $5, $16, $2, SS_ANNE_4 + db $5, $17, $2, SS_ANNE_4 + db $f, $2, $1, SS_ANNE_4 + db $f, $3, $1, SS_ANNE_4 + db $f, $c, $0, SS_ANNE_4 + db $f, $d, $0, SS_ANNE_4 + + db $0 ; signs + + db $b ; people + db SPRITE_SAILOR, $d + 4, $0 + 4, $ff, $d0, $41, SAILOR + $C8, $3 ; trainer + db SPRITE_SAILOR, $b + 4, $2 + 4, $ff, $d0, $42, SAILOR + $C8, $4 ; trainer + db SPRITE_SAILOR, $3 + 4, $c + 4, $ff, $d2, $43, SAILOR + $C8, $5 ; trainer + db SPRITE_SAILOR, $2 + 4, $16 + 4, $ff, $d0, $44, SAILOR + $C8, $6 ; trainer + db SPRITE_SAILOR, $2 + 4, $0 + 4, $ff, $d3, $45, SAILOR + $C8, $7 ; trainer + db SPRITE_FISHER2, $4 + 4, $0 + 4, $ff, $d3, $46, FISHER + $C8, $2 ; trainer + db SPRITE_BLACK_HAIR_BOY_2, $d + 4, $a + 4, $ff, $d3, $7 ; person + db SPRITE_SLOWBRO, $c + 4, $b + 4, $ff, $ff, $8 ; person + db SPRITE_BALL, $2 + 4, $14 + 4, $ff, $ff, $89, ETHER ; item + db SPRITE_BALL, $2 + 4, $a + 4, $ff, $ff, $8a, TM_44 ; item + db SPRITE_BALL, $b + 4, $c + 4, $ff, $ff, $8b, MAX_POTION ; item + + ; warp-to + EVENT_DISP SS_ANNE_10_WIDTH, $5, $2 ; SS_ANNE_4 + EVENT_DISP SS_ANNE_10_WIDTH, $5, $3 ; SS_ANNE_4 + EVENT_DISP SS_ANNE_10_WIDTH, $5, $c ; SS_ANNE_4 + EVENT_DISP SS_ANNE_10_WIDTH, $5, $d ; SS_ANNE_4 + EVENT_DISP SS_ANNE_10_WIDTH, $5, $16 ; SS_ANNE_4 + EVENT_DISP SS_ANNE_10_WIDTH, $5, $17 ; SS_ANNE_4 + EVENT_DISP SS_ANNE_10_WIDTH, $f, $2 ; SS_ANNE_4 + EVENT_DISP SS_ANNE_10_WIDTH, $f, $3 ; SS_ANNE_4 + EVENT_DISP SS_ANNE_10_WIDTH, $f, $c ; SS_ANNE_4 + EVENT_DISP SS_ANNE_10_WIDTH, $f, $d ; SS_ANNE_4 diff --git a/data/mapObjects/ssanne2.asm b/data/mapObjects/ssanne2.asm new file mode 100755 index 00000000..74b18262 --- /dev/null +++ b/data/mapObjects/ssanne2.asm @@ -0,0 +1,30 @@ +SSAnne2Object: ; 0x61514 (size=90) + db $c ; border block + + db $9 ; warps + db $b, $9, $0, SS_ANNE_9 + db $b, $d, $2, SS_ANNE_9 + db $b, $11, $4, SS_ANNE_9 + db $b, $15, $6, SS_ANNE_9 + db $b, $19, $8, SS_ANNE_9 + db $b, $1d, $a, SS_ANNE_9 + db $4, $2, $8, SS_ANNE_1 + db $c, $2, $1, SS_ANNE_3 + db $4, $24, $0, SS_ANNE_7 + + db $0 ; signs + + db $2 ; people + db SPRITE_WAITER, $7 + 4, $3 + 4, $fe, $1, $1 ; person + db SPRITE_BLUE, $4 + 4, $24 + 4, $ff, $d0, $42, SONY1 + $C8, $1 ; trainer + + ; warp-to + EVENT_DISP SS_ANNE_2_WIDTH, $b, $9 ; SS_ANNE_9 + EVENT_DISP SS_ANNE_2_WIDTH, $b, $d ; SS_ANNE_9 + EVENT_DISP SS_ANNE_2_WIDTH, $b, $11 ; SS_ANNE_9 + EVENT_DISP SS_ANNE_2_WIDTH, $b, $15 ; SS_ANNE_9 + EVENT_DISP SS_ANNE_2_WIDTH, $b, $19 ; SS_ANNE_9 + EVENT_DISP SS_ANNE_2_WIDTH, $b, $1d ; SS_ANNE_9 + EVENT_DISP SS_ANNE_2_WIDTH, $4, $2 ; SS_ANNE_1 + EVENT_DISP SS_ANNE_2_WIDTH, $c, $2 ; SS_ANNE_3 + EVENT_DISP SS_ANNE_2_WIDTH, $4, $24 ; SS_ANNE_7 diff --git a/data/mapObjects/ssanne3.asm b/data/mapObjects/ssanne3.asm new file mode 100755 index 00000000..2068304d --- /dev/null +++ b/data/mapObjects/ssanne3.asm @@ -0,0 +1,15 @@ +SSAnne3Object: ; 0x4493c (size=26) + db $c ; border block + + db $2 ; warps + db $3, $0, $0, SS_ANNE_5 + db $3, $13, $7, SS_ANNE_2 + + db $0 ; signs + + db $1 ; people + db SPRITE_SAILOR, $3 + 4, $9 + 4, $fe, $2, $1 ; person + + ; warp-to + EVENT_DISP SS_ANNE_3_WIDTH, $3, $0 ; SS_ANNE_5 + EVENT_DISP SS_ANNE_3_WIDTH, $3, $13 ; SS_ANNE_2 diff --git a/data/mapObjects/ssanne4.asm b/data/mapObjects/ssanne4.asm new file mode 100755 index 00000000..a2abc2cf --- /dev/null +++ b/data/mapObjects/ssanne4.asm @@ -0,0 +1,22 @@ +SSAnne4Object: ; 0x61632 (size=52) + db $c ; border block + + db $6 ; warps + db $3, $17, $8, SS_ANNE_10 + db $3, $13, $6, SS_ANNE_10 + db $3, $f, $4, SS_ANNE_10 + db $3, $b, $2, SS_ANNE_10 + db $3, $7, $0, SS_ANNE_10 + db $5, $1b, $9, SS_ANNE_1 + + db $0 ; signs + + db $0 ; people + + ; warp-to + EVENT_DISP SS_ANNE_4_WIDTH, $3, $17 ; SS_ANNE_10 + EVENT_DISP SS_ANNE_4_WIDTH, $3, $13 ; SS_ANNE_10 + EVENT_DISP SS_ANNE_4_WIDTH, $3, $f ; SS_ANNE_10 + EVENT_DISP SS_ANNE_4_WIDTH, $3, $b ; SS_ANNE_10 + EVENT_DISP SS_ANNE_4_WIDTH, $3, $7 ; SS_ANNE_10 + EVENT_DISP SS_ANNE_4_WIDTH, $5, $1b ; SS_ANNE_1 diff --git a/data/mapObjects/ssanne5.asm b/data/mapObjects/ssanne5.asm new file mode 100755 index 00000000..b9ce302b --- /dev/null +++ b/data/mapObjects/ssanne5.asm @@ -0,0 +1,19 @@ +SSAnne5Object: ; 0x6172b (size=54) + db $23 ; border block + + db $2 ; warps + db $6, $d, $0, SS_ANNE_3 + db $7, $d, $0, SS_ANNE_3 + + db $0 ; signs + + db $5 ; people + db SPRITE_BLACK_HAIR_BOY_2, $2 + 4, $5 + 4, $ff, $d1, $1 ; person + db SPRITE_SAILOR, $9 + 4, $4 + 4, $ff, $ff, $2 ; person + db SPRITE_BLACK_HAIR_BOY_1, $b + 4, $7 + 4, $ff, $ff, $3 ; person + db SPRITE_SAILOR, $4 + 4, $4 + 4, $ff, $d0, $44, SAILOR + $C8, $1 ; trainer + db SPRITE_SAILOR, $8 + 4, $a + 4, $ff, $d1, $45, SAILOR + $C8, $2 ; trainer + + ; warp-to + EVENT_DISP SS_ANNE_5_WIDTH, $6, $d ; SS_ANNE_3 + EVENT_DISP SS_ANNE_5_WIDTH, $7, $d ; SS_ANNE_3 diff --git a/data/mapObjects/ssanne6.asm b/data/mapObjects/ssanne6.asm new file mode 100755 index 00000000..7724ab5c --- /dev/null +++ b/data/mapObjects/ssanne6.asm @@ -0,0 +1,19 @@ +SSAnne6Object: ; 0x6181b (size=54) + db $c ; border block + + db $1 ; warps + db $0, $6, $a, SS_ANNE_1 + + db $0 ; signs + + db $7 ; people + db SPRITE_COOK, $8 + 4, $1 + 4, $fe, $1, $1 ; person + db SPRITE_COOK, $8 + 4, $5 + 4, $fe, $1, $2 ; person + db SPRITE_COOK, $7 + 4, $9 + 4, $fe, $1, $3 ; person + db SPRITE_COOK, $6 + 4, $d + 4, $ff, $ff, $4 ; person + db SPRITE_COOK, $8 + 4, $d + 4, $ff, $ff, $5 ; person + db SPRITE_COOK, $a + 4, $d + 4, $ff, $ff, $6 ; person + db SPRITE_COOK, $d + 4, $b + 4, $ff, $d1, $7 ; person + + ; warp-to + EVENT_DISP SS_ANNE_6_WIDTH, $0, $6 ; SS_ANNE_1 diff --git a/data/mapObjects/ssanne7.asm b/data/mapObjects/ssanne7.asm new file mode 100755 index 00000000..c40bcfec --- /dev/null +++ b/data/mapObjects/ssanne7.asm @@ -0,0 +1,15 @@ +SSAnne7Object: ; 0x61946 (size=24) + db $c ; border block + + db $1 ; warps + db $7, $0, $8, SS_ANNE_2 + + db $2 ; signs + db $1, $4, $2 ; SSAnne7Text2 + db $2, $1, $3 ; SSAnne7Text3 + + db $1 ; people + db SPRITE_SS_CAPTAIN, $2 + 4, $4 + 4, $ff, $d1, $1 ; person + + ; warp-to + EVENT_DISP SS_ANNE_7_WIDTH, $7, $0 ; SS_ANNE_2 diff --git a/data/mapObjects/ssanne8.asm b/data/mapObjects/ssanne8.asm new file mode 100755 index 00000000..f3d081eb --- /dev/null +++ b/data/mapObjects/ssanne8.asm @@ -0,0 +1,33 @@ +SSAnne8Object: ; 0x61a60 (size=127) + db $c ; border block + + db $6 ; warps + db $0, $0, $2, SS_ANNE_1 + db $0, $a, $3, SS_ANNE_1 + db $0, $14, $4, SS_ANNE_1 + db $a, $0, $5, SS_ANNE_1 + db $a, $a, $6, SS_ANNE_1 + db $a, $14, $7, SS_ANNE_1 + + db $0 ; signs + + db $b ; people + db SPRITE_GENTLEMAN, $3 + 4, $2 + 4, $ff, $d2, $41, GENTLEMAN + $C8, $1 ; trainer + db SPRITE_GENTLEMAN, $4 + 4, $b + 4, $ff, $d1, $42, GENTLEMAN + $C8, $2 ; trainer + db SPRITE_BUG_CATCHER, $e + 4, $b + 4, $ff, $d1, $43, YOUNGSTER + $C8, $8 ; trainer + db SPRITE_LASS, $b + 4, $d + 4, $ff, $d2, $44, LASS + $C8, $b ; trainer + db SPRITE_GIRL, $3 + 4, $16 + 4, $fe, $1, $5 ; person + db SPRITE_FAT_BALD_GUY, $e + 4, $0 + 4, $ff, $ff, $6 ; person + db SPRITE_LITTLE_GIRL, $b + 4, $2 + 4, $ff, $d0, $7 ; person + db SPRITE_CLEFAIRY, $b + 4, $3 + 4, $ff, $d0, $8 ; person + db SPRITE_GIRL, $d + 4, $a + 4, $ff, $d3, $9 ; person + db SPRITE_BALL, $f + 4, $c + 4, $ff, $ff, $8a, TM_08 ; item + db SPRITE_GENTLEMAN, $d + 4, $15 + 4, $fe, $2, $b ; person + + ; warp-to + EVENT_DISP SS_ANNE_8_WIDTH, $0, $0 ; SS_ANNE_1 + EVENT_DISP SS_ANNE_8_WIDTH, $0, $a ; SS_ANNE_1 + EVENT_DISP SS_ANNE_8_WIDTH, $0, $14 ; SS_ANNE_1 + EVENT_DISP SS_ANNE_8_WIDTH, $a, $0 ; SS_ANNE_1 + EVENT_DISP SS_ANNE_8_WIDTH, $a, $a ; SS_ANNE_1 + EVENT_DISP SS_ANNE_8_WIDTH, $a, $14 ; SS_ANNE_1 diff --git a/data/mapObjects/ssanne9.asm b/data/mapObjects/ssanne9.asm new file mode 100755 index 00000000..6c5b5fc1 --- /dev/null +++ b/data/mapObjects/ssanne9.asm @@ -0,0 +1,47 @@ +SSAnne9Object: ; 0x61c8d (size=188) + db $c ; border block + + db $c ; warps + db $5, $2, $0, SS_ANNE_2 + db $5, $3, $0, SS_ANNE_2 + db $5, $c, $1, SS_ANNE_2 + db $5, $d, $1, SS_ANNE_2 + db $5, $16, $2, SS_ANNE_2 + db $5, $17, $2, SS_ANNE_2 + db $f, $2, $3, SS_ANNE_2 + db $f, $3, $3, SS_ANNE_2 + db $f, $c, $4, SS_ANNE_2 + db $f, $d, $4, SS_ANNE_2 + db $f, $16, $5, SS_ANNE_2 + db $f, $17, $5, SS_ANNE_2 + + db $0 ; signs + + db $d ; people + db SPRITE_GENTLEMAN, $2 + 4, $a + 4, $ff, $d3, $41, GENTLEMAN + $C8, $3 ; trainer + db SPRITE_FISHER2, $4 + 4, $d + 4, $ff, $d2, $42, FISHER + $C8, $1 ; trainer + db SPRITE_GENTLEMAN, $e + 4, $0 + 4, $ff, $d3, $43, GENTLEMAN + $C8, $5 ; trainer + db SPRITE_LASS, $b + 4, $2 + 4, $ff, $d0, $44, LASS + $C8, $c ; trainer + db SPRITE_GENTLEMAN, $2 + 4, $1 + 4, $ff, $d0, $5 ; person + db SPRITE_BALL, $1 + 4, $c + 4, $ff, $ff, $86, MAX_ETHER ; item + db SPRITE_GENTLEMAN, $2 + 4, $15 + 4, $ff, $d0, $7 ; person + db SPRITE_OLD_PERSON, $1 + 4, $16 + 4, $ff, $d0, $8 ; person + db SPRITE_BALL, $c + 4, $0 + 4, $ff, $ff, $89, RARE_CANDY ; item + db SPRITE_GENTLEMAN, $c + 4, $c + 4, $ff, $d0, $a ; person + db SPRITE_YOUNG_BOY, $e + 4, $b + 4, $ff, $ff, $b ; person + db SPRITE_BRUNETTE_GIRL, $c + 4, $16 + 4, $ff, $d2, $c ; person + db SPRITE_FOULARD_WOMAN, $c + 4, $14 + 4, $ff, $d3, $d ; person + + ; warp-to + EVENT_DISP SS_ANNE_9_WIDTH, $5, $2 ; SS_ANNE_2 + EVENT_DISP SS_ANNE_9_WIDTH, $5, $3 ; SS_ANNE_2 + EVENT_DISP SS_ANNE_9_WIDTH, $5, $c ; SS_ANNE_2 + EVENT_DISP SS_ANNE_9_WIDTH, $5, $d ; SS_ANNE_2 + EVENT_DISP SS_ANNE_9_WIDTH, $5, $16 ; SS_ANNE_2 + EVENT_DISP SS_ANNE_9_WIDTH, $5, $17 ; SS_ANNE_2 + EVENT_DISP SS_ANNE_9_WIDTH, $f, $2 ; SS_ANNE_2 + EVENT_DISP SS_ANNE_9_WIDTH, $f, $3 ; SS_ANNE_2 + EVENT_DISP SS_ANNE_9_WIDTH, $f, $c ; SS_ANNE_2 + EVENT_DISP SS_ANNE_9_WIDTH, $f, $d ; SS_ANNE_2 + EVENT_DISP SS_ANNE_9_WIDTH, $f, $16 ; SS_ANNE_2 + EVENT_DISP SS_ANNE_9_WIDTH, $f, $17 ; SS_ANNE_2 diff --git a/data/mapObjects/tradecenterm.asm b/data/mapObjects/tradecenterm.asm new file mode 100755 index 00000000..104b9c0b --- /dev/null +++ b/data/mapObjects/tradecenterm.asm @@ -0,0 +1,9 @@ +TradeCenterMObject: ; 0x4fd87 (size=10) + db $e ; border block + + db $0 ; warps + + db $0 ; signs + + db $1 ; people + db SPRITE_RED, $2 + 4, $2 + 4, $ff, $0, $1 ; person diff --git a/data/mapObjects/undergroundpathentranceroute5.asm b/data/mapObjects/undergroundpathentranceroute5.asm new file mode 100755 index 00000000..f782636c --- /dev/null +++ b/data/mapObjects/undergroundpathentranceroute5.asm @@ -0,0 +1,17 @@ +UndergroundPathEntranceRoute5Object: ; 0x5d6c1 (size=34) + db $a ; border block + + db $3 ; warps + db $7, $3, $3, $ff + db $7, $4, $3, $ff + db $4, $4, $0, UNDERGROUND_PATH_NS + + db $0 ; signs + + db $1 ; people + db SPRITE_LITTLE_GIRL, $3 + 4, $2 + 4, $ff, $ff, $1 ; person + + ; warp-to + EVENT_DISP PATH_ENTRANCE_ROUTE_5_WIDTH, $7, $3 + EVENT_DISP PATH_ENTRANCE_ROUTE_5_WIDTH, $7, $4 + EVENT_DISP PATH_ENTRANCE_ROUTE_5_WIDTH, $4, $4 ; UNDERGROUND_PATH_NS diff --git a/data/mapObjects/undergroundpathentranceroute6.asm b/data/mapObjects/undergroundpathentranceroute6.asm new file mode 100755 index 00000000..624381a9 --- /dev/null +++ b/data/mapObjects/undergroundpathentranceroute6.asm @@ -0,0 +1,17 @@ +UndergroundPathEntranceRoute6Object: ; 0x5d6fe (size=34) + db $a ; border block + + db $3 ; warps + db $7, $3, $3, $ff + db $7, $4, $3, $ff + db $4, $4, $1, UNDERGROUND_PATH_NS + + db $0 ; signs + + db $1 ; people + db SPRITE_GIRL, $3 + 4, $2 + 4, $ff, $ff, $1 ; person + + ; warp-to + EVENT_DISP PATH_ENTRANCE_ROUTE_6_WIDTH, $7, $3 + EVENT_DISP PATH_ENTRANCE_ROUTE_6_WIDTH, $7, $4 + EVENT_DISP PATH_ENTRANCE_ROUTE_6_WIDTH, $4, $4 ; UNDERGROUND_PATH_NS diff --git a/data/mapObjects/undergroundpathentranceroute7.asm b/data/mapObjects/undergroundpathentranceroute7.asm new file mode 100755 index 00000000..d0e51c8a --- /dev/null +++ b/data/mapObjects/undergroundpathentranceroute7.asm @@ -0,0 +1,17 @@ +UndergroundPathEntranceRoute7Object: ; 0x5d73b (size=34) + db $a ; border block + + db $3 ; warps + db $7, $3, $4, $ff + db $7, $4, $4, $ff + db $4, $4, $0, UNDERGROUND_PATH_WE + + db $0 ; signs + + db $1 ; people + db SPRITE_FAT_BALD_GUY, $4 + 4, $2 + 4, $ff, $ff, $1 ; person + + ; warp-to + EVENT_DISP PATH_ENTRANCE_ROUTE_7_WIDTH, $7, $3 + EVENT_DISP PATH_ENTRANCE_ROUTE_7_WIDTH, $7, $4 + EVENT_DISP PATH_ENTRANCE_ROUTE_7_WIDTH, $4, $4 ; UNDERGROUND_PATH_WE diff --git a/data/mapObjects/undergroundpathentranceroute7copy.asm b/data/mapObjects/undergroundpathentranceroute7copy.asm new file mode 100755 index 00000000..53972ce9 --- /dev/null +++ b/data/mapObjects/undergroundpathentranceroute7copy.asm @@ -0,0 +1,18 @@ +UndergroundPathEntranceRoute7CopyObject: ; 5d787 (17:5787) + db $a ; border block + + db $3 ; warps + db $7, $3, $5, $ff + db $7, $4, $5, $ff + db $4, $4, $0, UNDERGROUND_PATH_WE + + db $0 ; signs + + db $2 ; people + db SPRITE_GIRL, $2 + 4, $3 + 4, $ff, $ff, $1 ; person + db SPRITE_FAT_BALD_GUY, $4 + 4, $2 + 4, $ff, $ff, $2 ; person + + ; warp-to + EVENT_DISP PATH_ENTRANCE_ROUTE_7_COPY_WIDTH, $7, $3 + EVENT_DISP PATH_ENTRANCE_ROUTE_7_COPY_WIDTH, $7, $4 + EVENT_DISP PATH_ENTRANCE_ROUTE_7_COPY_WIDTH, $4, $4 ; UNDERGROUND_PATH_WE diff --git a/data/mapObjects/undergroundpathentranceroute8.asm b/data/mapObjects/undergroundpathentranceroute8.asm new file mode 100755 index 00000000..a59e017b --- /dev/null +++ b/data/mapObjects/undergroundpathentranceroute8.asm @@ -0,0 +1,17 @@ +UndergroundPathEntranceRoute8Object: ; 0x1e298 (size=34) + db $a ; border block + + db $3 ; warps + db $7, $3, $4, $ff + db $7, $4, $4, $ff + db $4, $4, $1, UNDERGROUND_PATH_WE + + db $0 ; signs + + db $1 ; people + db SPRITE_GIRL, $4 + 4, $3 + 4, $ff, $ff, $1 ; person + + ; warp-to + EVENT_DISP PATH_ENTRANCE_ROUTE_8_WIDTH, $7, $3 + EVENT_DISP PATH_ENTRANCE_ROUTE_8_WIDTH, $7, $4 + EVENT_DISP PATH_ENTRANCE_ROUTE_8_WIDTH, $4, $4 ; UNDERGROUND_PATH_WE diff --git a/data/mapObjects/undergroundpathns.asm b/data/mapObjects/undergroundpathns.asm new file mode 100755 index 00000000..7dac9b95 --- /dev/null +++ b/data/mapObjects/undergroundpathns.asm @@ -0,0 +1,14 @@ +UndergroundPathNSObject: ; 0x61f2a (size=20) + db $1 ; border block + + db $2 ; warps + db $4, $5, $2, PATH_ENTRANCE_ROUTE_5 + db $29, $2, $2, PATH_ENTRANCE_ROUTE_6 + + db $0 ; signs + + db $0 ; people + + ; warp-to + EVENT_DISP UNDERGROUND_PATH_NS_WIDTH, $4, $5 ; PATH_ENTRANCE_ROUTE_5 + EVENT_DISP UNDERGROUND_PATH_NS_WIDTH, $29, $2 ; PATH_ENTRANCE_ROUTE_6 diff --git a/data/mapObjects/undergroundpathwe.asm b/data/mapObjects/undergroundpathwe.asm new file mode 100755 index 00000000..ad3c51f7 --- /dev/null +++ b/data/mapObjects/undergroundpathwe.asm @@ -0,0 +1,14 @@ +UndergroundPathWEObject: ; 0x61f4e (size=20) + db $1 ; border block + + db $2 ; warps + db $5, $2, $2, PATH_ENTRANCE_ROUTE_7 + db $2, $2f, $2, PATH_ENTRANCE_ROUTE_8 + + db $0 ; signs + + db $0 ; people + + ; warp-to + EVENT_DISP UNDERGROUND_PATH_WE_WIDTH, $5, $2 ; PATH_ENTRANCE_ROUTE_7 + EVENT_DISP UNDERGROUND_PATH_WE_WIDTH, $2, $2f ; PATH_ENTRANCE_ROUTE_8 diff --git a/data/mapObjects/unknowndungeon1.asm b/data/mapObjects/unknowndungeon1.asm new file mode 100755 index 00000000..af686897 --- /dev/null +++ b/data/mapObjects/unknowndungeon1.asm @@ -0,0 +1,31 @@ +UnknownDungeon1Object: ; 0x74d15 (size=97) + db $7d ; border block + + db $9 ; warps + db $11, $18, $6, $ff + db $11, $19, $6, $ff + db $1, $1b, $0, UNKNOWN_DUNGEON_2 + db $7, $17, $1, UNKNOWN_DUNGEON_2 + db $9, $12, $2, UNKNOWN_DUNGEON_2 + db $1, $7, $3, UNKNOWN_DUNGEON_2 + db $3, $1, $4, UNKNOWN_DUNGEON_2 + db $b, $3, $5, UNKNOWN_DUNGEON_2 + db $6, $0, $0, UNKNOWN_DUNGEON_3 + + db $0 ; signs + + db $3 ; people + db SPRITE_BALL, $d + 4, $7 + 4, $ff, $ff, $81, FULL_RESTORE ; item + db SPRITE_BALL, $3 + 4, $13 + 4, $ff, $ff, $82, MAX_ELIXER ; item + db SPRITE_BALL, $0 + 4, $5 + 4, $ff, $ff, $83, NUGGET ; item + + ; warp-to + EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $11, $18 + EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $11, $19 + EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $1, $1b ; UNKNOWN_DUNGEON_2 + EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $7, $17 ; UNKNOWN_DUNGEON_2 + EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $9, $12 ; UNKNOWN_DUNGEON_2 + EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $1, $7 ; UNKNOWN_DUNGEON_2 + EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $3, $1 ; UNKNOWN_DUNGEON_2 + EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $b, $3 ; UNKNOWN_DUNGEON_2 + EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $6, $0 ; UNKNOWN_DUNGEON_3 diff --git a/data/mapObjects/unknowndungeon2.asm b/data/mapObjects/unknowndungeon2.asm new file mode 100755 index 00000000..4900c450 --- /dev/null +++ b/data/mapObjects/unknowndungeon2.asm @@ -0,0 +1,25 @@ +UnknownDungeon2Object: ; 0x45e14 (size=73) + db $7d ; border block + + db $6 ; warps + db $1, $1d, $2, UNKNOWN_DUNGEON_1 + db $6, $16, $3, UNKNOWN_DUNGEON_1 + db $7, $13, $4, UNKNOWN_DUNGEON_1 + db $1, $9, $5, UNKNOWN_DUNGEON_1 + db $3, $1, $6, UNKNOWN_DUNGEON_1 + db $b, $3, $7, UNKNOWN_DUNGEON_1 + + db $0 ; signs + + db $3 ; people + db SPRITE_BALL, $9 + 4, $1d + 4, $ff, $ff, $81, PP_UP ; item + db SPRITE_BALL, $f + 4, $4 + 4, $ff, $ff, $82, ULTRA_BALL ; item + db SPRITE_BALL, $6 + 4, $d + 4, $ff, $ff, $83, FULL_RESTORE ; item + + ; warp-to + EVENT_DISP UNKNOWN_DUNGEON_2_WIDTH, $1, $1d ; UNKNOWN_DUNGEON_1 + EVENT_DISP UNKNOWN_DUNGEON_2_WIDTH, $6, $16 ; UNKNOWN_DUNGEON_1 + EVENT_DISP UNKNOWN_DUNGEON_2_WIDTH, $7, $13 ; UNKNOWN_DUNGEON_1 + EVENT_DISP UNKNOWN_DUNGEON_2_WIDTH, $1, $9 ; UNKNOWN_DUNGEON_1 + EVENT_DISP UNKNOWN_DUNGEON_2_WIDTH, $3, $1 ; UNKNOWN_DUNGEON_1 + EVENT_DISP UNKNOWN_DUNGEON_2_WIDTH, $b, $3 ; UNKNOWN_DUNGEON_1 diff --git a/data/mapObjects/unknowndungeon3.asm b/data/mapObjects/unknowndungeon3.asm new file mode 100755 index 00000000..ce5bab57 --- /dev/null +++ b/data/mapObjects/unknowndungeon3.asm @@ -0,0 +1,15 @@ +UnknownDungeon3Object: ; 0x45f36 (size=34) + db $7d ; border block + + db $1 ; warps + db $6, $3, $8, UNKNOWN_DUNGEON_1 + + db $0 ; signs + + db $3 ; people + db SPRITE_SLOWBRO, $d + 4, $1b + 4, $ff, $d0, $41, MEWTWO, 70 ; trainer + db SPRITE_BALL, $9 + 4, $10 + 4, $ff, $ff, $82, ULTRA_BALL ; item + db SPRITE_BALL, $1 + 4, $12 + 4, $ff, $ff, $83, MAX_REVIVE ; item + + ; warp-to + EVENT_DISP UNKNOWN_DUNGEON_3_WIDTH, $6, $3 ; UNKNOWN_DUNGEON_1 diff --git a/data/mapObjects/vermilioncity.asm b/data/mapObjects/vermilioncity.asm new file mode 100755 index 00000000..a7a6a6b4 --- /dev/null +++ b/data/mapObjects/vermilioncity.asm @@ -0,0 +1,41 @@ +VermilionCityObject: ; 0x189ba (size=133) + db $43 ; border block + + db $9 ; warps + db $3, $b, $0, VERMILION_POKECENTER + db $d, $9, $0, POKEMON_FAN_CLUB + db $d, $17, $0, VERMILION_MART + db $13, $c, $0, VERMILION_GYM + db $13, $17, $0, VERMILION_HOUSE_1 + db $1f, $12, $0, VERMILION_DOCK + db $1f, $13, $0, VERMILION_DOCK + db $d, $f, $0, VERMILION_HOUSE_3 + db $3, $7, $0, VERMILION_HOUSE_2 + + db $7 ; signs + db $3, $1b, $7 ; VermilionCityText7 + db $d, $25, $8 ; VermilionCityText8 + db $d, $18, $9 ; MartSignText + db $3, $c, $a ; PokeCenterSignText + db $d, $7, $b ; VermilionCityText11 + db $13, $7, $c ; VermilionCityText12 + db $f, $1d, $d ; VermilionCityText13 + + db $6 ; people + db SPRITE_FOULARD_WOMAN, $7 + 4, $13 + 4, $fe, $2, $1 ; person + db SPRITE_GAMBLER, $6 + 4, $e + 4, $ff, $ff, $2 ; person + db SPRITE_SAILOR, $1e + 4, $13 + 4, $ff, $d1, $3 ; person + db SPRITE_GAMBLER, $7 + 4, $1e + 4, $ff, $ff, $4 ; person + db SPRITE_SLOWBRO, $9 + 4, $1d + 4, $fe, $1, $5 ; person + db SPRITE_SAILOR, $1b + 4, $19 + 4, $fe, $2, $6 ; person + + ; warp-to + EVENT_DISP VERMILION_CITY_WIDTH, $3, $b ; VERMILION_POKECENTER + EVENT_DISP VERMILION_CITY_WIDTH, $d, $9 ; POKEMON_FAN_CLUB + EVENT_DISP VERMILION_CITY_WIDTH, $d, $17 ; VERMILION_MART + EVENT_DISP VERMILION_CITY_WIDTH, $13, $c ; VERMILION_GYM + EVENT_DISP VERMILION_CITY_WIDTH, $13, $17 ; VERMILION_HOUSE_1 + EVENT_DISP VERMILION_CITY_WIDTH, $1f, $12 ; VERMILION_DOCK + EVENT_DISP VERMILION_CITY_WIDTH, $1f, $13 ; VERMILION_DOCK + EVENT_DISP VERMILION_CITY_WIDTH, $d, $f ; VERMILION_HOUSE_3 + EVENT_DISP VERMILION_CITY_WIDTH, $3, $7 ; VERMILION_HOUSE_2 diff --git a/data/mapObjects/vermiliondock.asm b/data/mapObjects/vermiliondock.asm new file mode 100755 index 00000000..4c49e966 --- /dev/null +++ b/data/mapObjects/vermiliondock.asm @@ -0,0 +1,14 @@ +VermilionDockObject: ; 0x1dcc6 (size=20) + db $f ; border block + + db $2 ; warps + db $0, $e, $5, $ff + db $2, $e, $1, SS_ANNE_1 + + db $0 ; signs + + db $0 ; people + + ; warp-to + EVENT_DISP VERMILION_DOCK_WIDTH, $0, $e + EVENT_DISP VERMILION_DOCK_WIDTH, $2, $e ; SS_ANNE_1 diff --git a/data/mapObjects/vermiliongym.asm b/data/mapObjects/vermiliongym.asm new file mode 100755 index 00000000..e90602ab --- /dev/null +++ b/data/mapObjects/vermiliongym.asm @@ -0,0 +1,19 @@ +VermilionGymObject: ; 0x5cbfe (size=58) + db $3 ; border block + + db $2 ; warps + db $11, $4, $3, $ff + db $11, $5, $3, $ff + + db $0 ; signs + + db $5 ; people + db SPRITE_ROCKER, $1 + 4, $5 + 4, $ff, $d0, $41, LT__SURGE + $C8, $1 ; trainer + db SPRITE_GENTLEMAN, $6 + 4, $9 + 4, $ff, $d2, $42, GENTLEMAN + $C8, $3 ; trainer + db SPRITE_BLACK_HAIR_BOY_2, $8 + 4, $3 + 4, $ff, $d2, $43, ROCKER + $C8, $1 ; trainer + db SPRITE_SAILOR, $a + 4, $0 + 4, $ff, $d3, $44, SAILOR + $C8, $8 ; trainer + db SPRITE_GYM_HELPER, $e + 4, $4 + 4, $ff, $d0, $5 ; person + + ; warp-to + EVENT_DISP VERMILION_GYM_WIDTH, $11, $4 + EVENT_DISP VERMILION_GYM_WIDTH, $11, $5 diff --git a/data/mapObjects/vermilionhouse1.asm b/data/mapObjects/vermilionhouse1.asm new file mode 100755 index 00000000..e6104944 --- /dev/null +++ b/data/mapObjects/vermilionhouse1.asm @@ -0,0 +1,17 @@ +VermilionHouse1Object: ; 0x1db20 (size=38) + db $a ; border block + + db $2 ; warps + db $7, $2, $4, $ff + db $7, $3, $4, $ff + + db $0 ; signs + + db $3 ; people + db SPRITE_BUG_CATCHER, $3 + 4, $5 + 4, $ff, $d2, $1 ; person + db SPRITE_BIRD, $5 + 4, $3 + 4, $fe, $2, $2 ; person + db SPRITE_PAPER_SHEET, $3 + 4, $4 + 4, $ff, $ff, $3 ; person + + ; warp-to + EVENT_DISP VERMILION_HOUSE_1_WIDTH, $7, $2 + EVENT_DISP VERMILION_HOUSE_1_WIDTH, $7, $3 diff --git a/data/mapObjects/vermilionhouse2.asm b/data/mapObjects/vermilionhouse2.asm new file mode 100755 index 00000000..aab505cb --- /dev/null +++ b/data/mapObjects/vermilionhouse2.asm @@ -0,0 +1,15 @@ +VermilionHouse2Object: ; 0x560cf (size=26) + db $a ; border block + + db $2 ; warps + db $7, $2, $8, $ff + db $7, $3, $8, $ff + + db $0 ; signs + + db $1 ; people + db SPRITE_FISHER, $4 + 4, $2 + 4, $ff, $d3, $1 ; person + + ; warp-to + EVENT_DISP VERMILION_HOUSE_2_WIDTH, $7, $2 + EVENT_DISP VERMILION_HOUSE_2_WIDTH, $7, $3 diff --git a/data/mapObjects/vermilionhouse3.asm b/data/mapObjects/vermilionhouse3.asm new file mode 100755 index 00000000..b23a741b --- /dev/null +++ b/data/mapObjects/vermilionhouse3.asm @@ -0,0 +1,15 @@ +VermilionHouse3Object: ; 0x19c25 (size=26) + db $a ; border block + + db $2 ; warps + db $7, $2, $7, $ff + db $7, $3, $7, $ff + + db $0 ; signs + + db $1 ; people + db SPRITE_LITTLE_GIRL, $5 + 4, $3 + 4, $ff, $d1, $1 ; person + + ; warp-to + EVENT_DISP VERMILION_HOUSE_3_WIDTH, $7, $2 + EVENT_DISP VERMILION_HOUSE_3_WIDTH, $7, $3 diff --git a/data/mapObjects/vermilionmart.asm b/data/mapObjects/vermilionmart.asm new file mode 100755 index 00000000..f57adde8 --- /dev/null +++ b/data/mapObjects/vermilionmart.asm @@ -0,0 +1,17 @@ +VermilionMartObject: ; 0x5c9f4 (size=38) + db $0 ; border block + + db $2 ; warps + db $7, $3, $2, $ff + db $7, $4, $2, $ff + + db $0 ; signs + + db $3 ; people + db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person + db SPRITE_BLACK_HAIR_BOY_1, $6 + 4, $5 + 4, $ff, $ff, $2 ; person + db SPRITE_LASS, $3 + 4, $3 + 4, $fe, $2, $3 ; person + + ; warp-to + EVENT_DISP VERMILION_MART_WIDTH, $7, $3 + EVENT_DISP VERMILION_MART_WIDTH, $7, $4 diff --git a/data/mapObjects/vermilionpokecenter.asm b/data/mapObjects/vermilionpokecenter.asm new file mode 100755 index 00000000..97b86520 --- /dev/null +++ b/data/mapObjects/vermilionpokecenter.asm @@ -0,0 +1,18 @@ +VermilionPokecenterObject: ; 0x5c9a9 (size=44) + db $0 ; border block + + db $2 ; warps + db $7, $3, $0, $ff + db $7, $4, $0, $ff + + db $0 ; signs + + db $4 ; people + db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person + db SPRITE_FISHER, $5 + 4, $a + 4, $ff, $ff, $2 ; person + db SPRITE_SAILOR, $4 + 4, $5 + 4, $ff, $ff, $3 ; person + db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person + + ; warp-to + EVENT_DISP VERMILION_POKECENTER_WIDTH, $7, $3 + EVENT_DISP VERMILION_POKECENTER_WIDTH, $7, $4 diff --git a/data/mapObjects/victoryroad1.asm b/data/mapObjects/victoryroad1.asm new file mode 100755 index 00000000..35b13bd3 --- /dev/null +++ b/data/mapObjects/victoryroad1.asm @@ -0,0 +1,23 @@ +VictoryRoad1Object: ; 0x5dab8 (size=76) + db $7d ; border block + + db $3 ; warps + db $11, $8, $2, $ff + db $11, $9, $2, $ff + db $1, $1, $0, VICTORY_ROAD_2 + + db $0 ; signs + + db $7 ; people + db SPRITE_LASS, $5 + 4, $7 + 4, $ff, $d3, $41, COOLTRAINER_F + $C8, $5 ; trainer + db SPRITE_BLACK_HAIR_BOY_1, $2 + 4, $3 + 4, $ff, $d0, $42, COOLTRAINER_M + $C8, $5 ; trainer + db SPRITE_BALL, $0 + 4, $b + 4, $ff, $ff, $83, TM_43 ; item + db SPRITE_BALL, $2 + 4, $9 + 4, $ff, $ff, $84, RARE_CANDY ; item + db SPRITE_BOULDER, $f + 4, $5 + 4, $ff, $10, $5 ; person + db SPRITE_BOULDER, $2 + 4, $e + 4, $ff, $10, $6 ; person + db SPRITE_BOULDER, $a + 4, $2 + 4, $ff, $10, $7 ; person + + ; warp-to + EVENT_DISP VICTORY_ROAD_1_WIDTH, $11, $8 + EVENT_DISP VICTORY_ROAD_1_WIDTH, $11, $9 + EVENT_DISP VICTORY_ROAD_1_WIDTH, $1, $1 ; VICTORY_ROAD_2 diff --git a/data/mapObjects/victoryroad2.asm b/data/mapObjects/victoryroad2.asm new file mode 100755 index 00000000..ff6bac82 --- /dev/null +++ b/data/mapObjects/victoryroad2.asm @@ -0,0 +1,37 @@ +VictoryRoad2Object: ; 0x51915 (size=154) + db $7d ; border block + + db $7 ; warps + db $8, $0, $2, VICTORY_ROAD_1 + db $7, $1d, $3, $ff + db $8, $1d, $3, $ff + db $7, $17, $0, VICTORY_ROAD_3 + db $e, $19, $2, VICTORY_ROAD_3 + db $7, $1b, $1, VICTORY_ROAD_3 + db $1, $1, $3, VICTORY_ROAD_3 + + db $0 ; signs + + db $d ; people + db SPRITE_HIKER, $9 + 4, $c + 4, $ff, $d2, $41, BLACKBELT + $C8, $9 ; trainer + db SPRITE_BLACK_HAIR_BOY_2, $d + 4, $15 + 4, $ff, $d2, $42, JUGGLER + $C8, $2 ; trainer + db SPRITE_BLACK_HAIR_BOY_1, $8 + 4, $13 + 4, $ff, $d0, $43, TAMER + $C8, $5 ; trainer + db SPRITE_BLACK_HAIR_BOY_2, $2 + 4, $4 + 4, $ff, $d0, $44, POKEMANIAC + $C8, $6 ; trainer + db SPRITE_BLACK_HAIR_BOY_2, $3 + 4, $1a + 4, $ff, $d2, $45, JUGGLER + $C8, $5 ; trainer + db SPRITE_BIRD, $5 + 4, $b + 4, $ff, $d1, $46, MOLTRES, 50 ; trainer + db SPRITE_BALL, $5 + 4, $1b + 4, $ff, $ff, $87, TM_17 ; item + db SPRITE_BALL, $9 + 4, $12 + 4, $ff, $ff, $88, FULL_HEAL ; item + db SPRITE_BALL, $b + 4, $9 + 4, $ff, $ff, $89, TM_05 ; item + db SPRITE_BALL, $0 + 4, $b + 4, $ff, $ff, $8a, GUARD_SPEC_ ; item + db SPRITE_BOULDER, $e + 4, $4 + 4, $ff, $10, $b ; person + db SPRITE_BOULDER, $5 + 4, $5 + 4, $ff, $10, $c ; person + db SPRITE_BOULDER, $10 + 4, $17 + 4, $ff, $10, $d ; person + + ; warp-to + EVENT_DISP VICTORY_ROAD_2_WIDTH, $8, $0 ; VICTORY_ROAD_1 + EVENT_DISP VICTORY_ROAD_2_WIDTH, $7, $1d + EVENT_DISP VICTORY_ROAD_2_WIDTH, $8, $1d + EVENT_DISP VICTORY_ROAD_2_WIDTH, $7, $17 ; VICTORY_ROAD_3 + EVENT_DISP VICTORY_ROAD_2_WIDTH, $e, $19 ; VICTORY_ROAD_3 + EVENT_DISP VICTORY_ROAD_2_WIDTH, $7, $1b ; VICTORY_ROAD_3 + EVENT_DISP VICTORY_ROAD_2_WIDTH, $1, $1 ; VICTORY_ROAD_3 diff --git a/data/mapObjects/victoryroad3.asm b/data/mapObjects/victoryroad3.asm new file mode 100755 index 00000000..44f0f2ca --- /dev/null +++ b/data/mapObjects/victoryroad3.asm @@ -0,0 +1,28 @@ +VictoryRoad3Object: ; 0x44acd (size=106) + db $7d ; border block + + db $4 ; warps + db $7, $17, $3, VICTORY_ROAD_2 + db $8, $1a, $5, VICTORY_ROAD_2 + db $f, $1b, $4, VICTORY_ROAD_2 + db $0, $2, $6, VICTORY_ROAD_2 + + db $0 ; signs + + db $a ; people + db SPRITE_BLACK_HAIR_BOY_1, $5 + 4, $1c + 4, $ff, $d2, $41, COOLTRAINER_M + $C8, $2 ; trainer + db SPRITE_LASS, $d + 4, $7 + 4, $ff, $d3, $42, COOLTRAINER_F + $C8, $2 ; trainer + db SPRITE_BLACK_HAIR_BOY_1, $e + 4, $6 + 4, $ff, $d2, $43, COOLTRAINER_M + $C8, $3 ; trainer + db SPRITE_LASS, $3 + 4, $d + 4, $ff, $d3, $44, COOLTRAINER_F + $C8, $3 ; trainer + db SPRITE_BALL, $5 + 4, $1a + 4, $ff, $ff, $85, MAX_REVIVE ; item + db SPRITE_BALL, $7 + 4, $7 + 4, $ff, $ff, $86, TM_47 ; item + db SPRITE_BOULDER, $3 + 4, $16 + 4, $ff, $10, $7 ; person + db SPRITE_BOULDER, $c + 4, $d + 4, $ff, $10, $8 ; person + db SPRITE_BOULDER, $a + 4, $18 + 4, $ff, $10, $9 ; person + db SPRITE_BOULDER, $f + 4, $16 + 4, $ff, $10, $a ; person + + ; warp-to + EVENT_DISP VICTORY_ROAD_3_WIDTH, $7, $17 ; VICTORY_ROAD_2 + EVENT_DISP VICTORY_ROAD_3_WIDTH, $8, $1a ; VICTORY_ROAD_2 + EVENT_DISP VICTORY_ROAD_3_WIDTH, $f, $1b ; VICTORY_ROAD_2 + EVENT_DISP VICTORY_ROAD_3_WIDTH, $0, $2 ; VICTORY_ROAD_2 diff --git a/data/mapObjects/viridiancity.asm b/data/mapObjects/viridiancity.asm new file mode 100755 index 00000000..37cb42e2 --- /dev/null +++ b/data/mapObjects/viridiancity.asm @@ -0,0 +1,33 @@ +ViridianCityObject: ; 0x18384 (size=104) + db $f ; border block + + db $5 ; warps + db $19, $17, $0, VIRIDIAN_POKECENTER + db $13, $1d, $0, VIRIDIAN_MART + db $f, $15, $0, VIRIDIAN_SCHOOL + db $9, $15, $0, VIRIDIAN_HOUSE + db $7, $20, $0, VIRIDIAN_GYM + + db $6 ; signs + db $11, $11, $8 ; ViridianCityText8 + db $1, $13, $9 ; ViridianCityText9 + db $1d, $15, $a ; ViridianCityText10 + db $13, $1e, $b ; MartSignText + db $19, $18, $c ; PokeCenterSignText + db $7, $1b, $d ; ViridianCityText13 + + db $7 ; people + db SPRITE_BUG_CATCHER, $14 + 4, $d + 4, $fe, $0, $1 ; person + db SPRITE_GAMBLER, $8 + 4, $1e + 4, $ff, $ff, $2 ; person + db SPRITE_BUG_CATCHER, $19 + 4, $1e + 4, $fe, $0, $3 ; person + db SPRITE_GIRL, $9 + 4, $11 + 4, $ff, $d3, $4 ; person + db SPRITE_LYING_OLD_MAN, $9 + 4, $12 + 4, $ff, $ff, $5 ; person + db SPRITE_FISHER2, $17 + 4, $6 + 4, $ff, $d0, $6 ; person + db SPRITE_GAMBLER, $5 + 4, $11 + 4, $fe, $2, $7 ; person + + ; warp-to + EVENT_DISP VIRIDIAN_CITY_WIDTH, $19, $17 ; VIRIDIAN_POKECENTER + EVENT_DISP VIRIDIAN_CITY_WIDTH, $13, $1d ; VIRIDIAN_MART + EVENT_DISP VIRIDIAN_CITY_WIDTH, $f, $15 ; VIRIDIAN_SCHOOL + EVENT_DISP VIRIDIAN_CITY_WIDTH, $9, $15 ; VIRIDIAN_HOUSE + EVENT_DISP VIRIDIAN_CITY_WIDTH, $7, $20 ; VIRIDIAN_GYM diff --git a/data/mapObjects/viridianforest.asm b/data/mapObjects/viridianforest.asm new file mode 100755 index 00000000..f6008e21 --- /dev/null +++ b/data/mapObjects/viridianforest.asm @@ -0,0 +1,36 @@ +ViridianForestObject: ; 0x611da (size=127) + db $3 ; border block + + db $6 ; warps + db $0, $1, $2, VIRIDIAN_FOREST_EXIT + db $0, $2, $3, VIRIDIAN_FOREST_EXIT + db $2f, $f, $1, VIRIDIAN_FOREST_ENTRANCE + db $2f, $10, $1, VIRIDIAN_FOREST_ENTRANCE + db $2f, $11, $1, VIRIDIAN_FOREST_ENTRANCE + db $2f, $12, $1, VIRIDIAN_FOREST_ENTRANCE + + db $6 ; signs + db $28, $18, $9 ; ViridianForestText9 + db $20, $10, $a ; ViridianForestText10 + db $11, $1a, $b ; ViridianForestText11 + db $18, $4, $c ; ViridianForestText12 + db $2d, $12, $d ; ViridianForestText13 + db $1, $2, $e ; ViridianForestText14 + + db $8 ; people + db SPRITE_BUG_CATCHER, $2b + 4, $10 + 4, $ff, $ff, $1 ; person + db SPRITE_BUG_CATCHER, $21 + 4, $1e + 4, $ff, $d2, $42, BUG_CATCHER + $C8, $1 ; trainer + db SPRITE_BUG_CATCHER, $13 + 4, $1e + 4, $ff, $d2, $43, BUG_CATCHER + $C8, $2 ; trainer + db SPRITE_BUG_CATCHER, $12 + 4, $2 + 4, $ff, $d2, $44, BUG_CATCHER + $C8, $3 ; trainer + db SPRITE_BALL, $b + 4, $19 + 4, $ff, $ff, $85, ANTIDOTE ; item + db SPRITE_BALL, $1d + 4, $c + 4, $ff, $ff, $86, POTION ; item + db SPRITE_BALL, $1f + 4, $1 + 4, $ff, $ff, $87, POKE_BALL ; item + db SPRITE_BUG_CATCHER, $28 + 4, $1b + 4, $ff, $ff, $8 ; person + + ; warp-to + EVENT_DISP VIRIDIAN_FOREST_WIDTH, $0, $1 ; VIRIDIAN_FOREST_EXIT + EVENT_DISP VIRIDIAN_FOREST_WIDTH, $0, $2 ; VIRIDIAN_FOREST_EXIT + EVENT_DISP VIRIDIAN_FOREST_WIDTH, $2f, $f ; VIRIDIAN_FOREST_ENTRANCE + EVENT_DISP VIRIDIAN_FOREST_WIDTH, $2f, $10 ; VIRIDIAN_FOREST_ENTRANCE + EVENT_DISP VIRIDIAN_FOREST_WIDTH, $2f, $11 ; VIRIDIAN_FOREST_ENTRANCE + EVENT_DISP VIRIDIAN_FOREST_WIDTH, $2f, $12 ; VIRIDIAN_FOREST_ENTRANCE diff --git a/data/mapObjects/viridianforestentrance.asm b/data/mapObjects/viridianforestentrance.asm new file mode 100755 index 00000000..ce0aaae5 --- /dev/null +++ b/data/mapObjects/viridianforestentrance.asm @@ -0,0 +1,20 @@ +ViridianForestEntranceObject: ; 0x5d66d (size=48) + db $a ; border block + + db $4 ; warps + db $0, $4, $3, VIRIDIAN_FOREST + db $0, $5, $4, VIRIDIAN_FOREST + db $7, $4, $5, $ff + db $7, $5, $5, $ff + + db $0 ; signs + + db $2 ; people + db SPRITE_GIRL, $4 + 4, $8 + 4, $ff, $d2, $1 ; person + db SPRITE_LITTLE_GIRL, $4 + 4, $2 + 4, $fe, $1, $2 ; person + + ; warp-to + EVENT_DISP VIRIDIAN_FOREST_ENTRANCE_WIDTH, $0, $4 ; VIRIDIAN_FOREST + EVENT_DISP VIRIDIAN_FOREST_ENTRANCE_WIDTH, $0, $5 ; VIRIDIAN_FOREST + EVENT_DISP VIRIDIAN_FOREST_ENTRANCE_WIDTH, $7, $4 + EVENT_DISP VIRIDIAN_FOREST_ENTRANCE_WIDTH, $7, $5 diff --git a/data/mapObjects/viridianforestexit.asm b/data/mapObjects/viridianforestexit.asm new file mode 100755 index 00000000..a96d5270 --- /dev/null +++ b/data/mapObjects/viridianforestexit.asm @@ -0,0 +1,20 @@ +ViridianForestExitObject: ; 0x5d598 (size=48) + db $a ; border block + + db $4 ; warps + db $0, $4, $1, $ff + db $0, $5, $1, $ff + db $7, $4, $0, VIRIDIAN_FOREST + db $7, $5, $0, VIRIDIAN_FOREST + + db $0 ; signs + + db $2 ; people + db SPRITE_BLACK_HAIR_BOY_2, $2 + 4, $3 + 4, $ff, $ff, $1 ; person + db SPRITE_OLD_PERSON, $5 + 4, $2 + 4, $ff, $ff, $2 ; person + + ; warp-to + EVENT_DISP VIRIDIAN_FOREST_EXIT_WIDTH, $0, $4 + EVENT_DISP VIRIDIAN_FOREST_EXIT_WIDTH, $0, $5 + EVENT_DISP VIRIDIAN_FOREST_EXIT_WIDTH, $7, $4 ; VIRIDIAN_FOREST + EVENT_DISP VIRIDIAN_FOREST_EXIT_WIDTH, $7, $5 ; VIRIDIAN_FOREST diff --git a/data/mapObjects/viridiangym.asm b/data/mapObjects/viridiangym.asm new file mode 100755 index 00000000..b6ec5140 --- /dev/null +++ b/data/mapObjects/viridiangym.asm @@ -0,0 +1,25 @@ +ViridianGymObject: ; 0x74bde (size=105) + db $3 ; border block + + db $2 ; warps + db $11, $10, $4, $ff + db $11, $11, $4, $ff + + db $0 ; signs + + db $b ; people + db SPRITE_GIOVANNI, $1 + 4, $2 + 4, $ff, $d0, $41, GIOVANNI + $C8, $3 ; trainer + db SPRITE_BLACK_HAIR_BOY_1, $7 + 4, $c + 4, $ff, $d0, $42, COOLTRAINER_M + $C8, $9 ; trainer + db SPRITE_HIKER, $b + 4, $b + 4, $ff, $d1, $43, BLACKBELT + $C8, $6 ; trainer + db SPRITE_ROCKER, $7 + 4, $a + 4, $ff, $d0, $44, TAMER + $C8, $3 ; trainer + db SPRITE_HIKER, $7 + 4, $3 + 4, $ff, $d2, $45, BLACKBELT + $C8, $7 ; trainer + db SPRITE_BLACK_HAIR_BOY_1, $5 + 4, $d + 4, $ff, $d3, $46, COOLTRAINER_M + $C8, $a ; trainer + db SPRITE_HIKER, $1 + 4, $a + 4, $ff, $d0, $47, BLACKBELT + $C8, $8 ; trainer + db SPRITE_ROCKER, $10 + 4, $2 + 4, $ff, $d3, $48, TAMER + $C8, $4 ; trainer + db SPRITE_BLACK_HAIR_BOY_1, $5 + 4, $6 + 4, $ff, $d0, $49, COOLTRAINER_M + $C8, $1 ; trainer + db SPRITE_GYM_HELPER, $f + 4, $10 + 4, $ff, $d0, $a ; person + db SPRITE_BALL, $9 + 4, $10 + 4, $ff, $ff, $8b, REVIVE ; item + + ; warp-to + EVENT_DISP VIRIDIAN_GYM_WIDTH, $11, $10 + EVENT_DISP VIRIDIAN_GYM_WIDTH, $11, $11 diff --git a/data/mapObjects/viridianhouse.asm b/data/mapObjects/viridianhouse.asm new file mode 100755 index 00000000..dd2d6069 --- /dev/null +++ b/data/mapObjects/viridianhouse.asm @@ -0,0 +1,18 @@ +ViridianHouseObject: ; 0x1d5bb (size=44) + db $a ; border block + + db $2 ; warps + db $7, $2, $3, $ff + db $7, $3, $3, $ff + + db $0 ; signs + + db $4 ; people + db SPRITE_BALDING_GUY, $3 + 4, $5 + 4, $ff, $ff, $1 ; person + db SPRITE_LITTLE_GIRL, $4 + 4, $1 + 4, $fe, $1, $2 ; person + db SPRITE_BIRD, $5 + 4, $5 + 4, $fe, $2, $3 ; person + db SPRITE_CLIPBOARD, $0 + 4, $4 + 4, $ff, $ff, $4 ; person + + ; warp-to + EVENT_DISP VIRIDIAN_HOUSE_WIDTH, $7, $2 + EVENT_DISP VIRIDIAN_HOUSE_WIDTH, $7, $3 diff --git a/data/mapObjects/viridianmart.asm b/data/mapObjects/viridianmart.asm new file mode 100755 index 00000000..b1b367c7 --- /dev/null +++ b/data/mapObjects/viridianmart.asm @@ -0,0 +1,17 @@ +ViridianMartObject: ; 0x1d50a (size=38) + db $0 ; border block + + db $2 ; warps + db $7, $3, $1, $ff + db $7, $4, $1, $ff + + db $0 ; signs + + db $3 ; people + db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person + db SPRITE_BUG_CATCHER, $5 + 4, $5 + 4, $fe, $1, $2 ; person + db SPRITE_BLACK_HAIR_BOY_1, $3 + 4, $3 + 4, $ff, $ff, $3 ; person + + ; warp-to + EVENT_DISP VIRIDIAN_MART_WIDTH, $7, $3 + EVENT_DISP VIRIDIAN_MART_WIDTH, $7, $4 diff --git a/data/mapObjects/viridianpokecenter.asm b/data/mapObjects/viridianpokecenter.asm new file mode 100755 index 00000000..6631a814 --- /dev/null +++ b/data/mapObjects/viridianpokecenter.asm @@ -0,0 +1,18 @@ +ViridianPokecenterObject: ; 0x44277 (size=44) + db $0 ; border block + + db $2 ; warps + db $7, $3, $0, $ff + db $7, $4, $0, $ff + + db $0 ; signs + + db $4 ; people + db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person + db SPRITE_GENTLEMAN, $5 + 4, $a + 4, $fe, $1, $2 ; person + db SPRITE_BLACK_HAIR_BOY_1, $3 + 4, $4 + 4, $ff, $ff, $3 ; person + db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person + + ; warp-to + EVENT_DISP VIRIDIAN_POKECENTER_WIDTH, $7, $3 + EVENT_DISP VIRIDIAN_POKECENTER_WIDTH, $7, $4 diff --git a/data/map_songs.asm b/data/map_songs.asm new file mode 100755 index 00000000..c551a76d --- /dev/null +++ b/data/map_songs.asm @@ -0,0 +1,249 @@ +MapSongBanks: ; c04d (3:404d) + db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ;PALLET_TOWN + db MUSIC_CITIES1, BANK(Music_Cities1) ; VIRIDIAN_CITY + db MUSIC_CITIES1, BANK(Music_Cities1) ; PEWTER_CITY + db MUSIC_CITIES2, BANK(Music_Cities2) ; CERULEAN_CITY + db MUSIC_LAVENDER, BANK(Music_Lavender) ; LAVENDER_TOWN + db MUSIC_VERMILION, BANK(Music_Vermilion) ; VERMILION_CITY + db MUSIC_CELADON, BANK(Music_Celadon) ; CELADON_CITY + db MUSIC_CITIES2, BANK(Music_Cities2) ; FUCHSIA_CITY + db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; CINNABAR_ISLAND + db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; INDIGO_PLATEAU + db MUSIC_CITIES1, BANK(Music_Cities1) ; SAFFRON_CITY + db MUSIC_CITIES1, BANK(Music_Cities1) ; unused + db MUSIC_ROUTES1, BANK(Music_Routes1) ; ROUTE_1 + db MUSIC_ROUTES1, BANK(Music_Routes1) ; ROUTE_2 + db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_3 + db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_4 + db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_5 + db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_6 + db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_7 + db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_8 + db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_9 + db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_10 + db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_11 + db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_12 + db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_13 + db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_14 + db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_15 + db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_16 + db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_17 + db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_18 + db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_19 + db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_20 + db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_21 + db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_22 + db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; ROUTE_23 + db MUSIC_ROUTES2, BANK(Music_Routes2) ; ROUTE_24 + db MUSIC_ROUTES2, BANK(Music_Routes2) ; ROUTE_25 + db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; RedsHouse1F + db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; RedsHouse2F + db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; BluesHouse + db MUSIC_OAKS_LAB, BANK(Music_OaksLab) ; OaksLab + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; ViridianPokecenter + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; ViridianMart + db MUSIC_CITIES1, BANK(Music_Cities1) ; School + db MUSIC_CITIES1, BANK(Music_Cities1) ; ViridianHouse + db MUSIC_GYM, BANK(Music_Gym) ; ViridianGym + db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; DiglettsCaveRoute2 + db MUSIC_CITIES1, BANK(Music_Cities1) ; ViridianForestExit + db MUSIC_CITIES1, BANK(Music_Cities1) ; Route2House + db MUSIC_CITIES1, BANK(Music_Cities1) ; Route2Gate + db MUSIC_CITIES1, BANK(Music_Cities1) ; ViridianForestEntrance + db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; ViridianForest + db MUSIC_CITIES1, BANK(Music_Cities1) ; Museum1F + db MUSIC_CITIES1, BANK(Music_Cities1) ; Museum2F + db MUSIC_GYM, BANK(Music_Gym) ; PewterGym + db MUSIC_CITIES1, BANK(Music_Cities1) ; PewterHouse1 + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; PewterMart + db MUSIC_CITIES1, BANK(Music_Cities1) ; PewterHouse2 + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; PewterPokecenter + db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; MtMoon1 + db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; MtMoon2 + db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; MtMoon3 + db MUSIC_CITIES2, BANK(Music_Cities2) ; CeruleanHouseTrashed + db MUSIC_CITIES2, BANK(Music_Cities2) ; CeruleanHouse1 + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeruleanPokecenter + db MUSIC_GYM, BANK(Music_Gym) ; CeruleanGym + db MUSIC_CITIES2, BANK(Music_Cities2) ; BikeShop + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeruleanMart + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; MtMoonPokecenter + db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; CeruleanHouseTrashed + db MUSIC_CITIES1, BANK(Music_Cities1) ; Route5Gate + db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundTunnelEntranceRoute5 + db MUSIC_CITIES1, BANK(Music_Cities1) ; DayCareM + db MUSIC_CITIES1, BANK(Music_Cities1) ; Route6Gate + db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundTunnelEntranceRoute6 + db MUSIC_VERMILION, BANK(Music_Vermilion) ; FREEZE + db MUSIC_CITIES1, BANK(Music_Cities1) ; Route7Gate + db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundPathEntranceRoute7 + db MUSIC_CELADON, BANK(Music_Celadon) ;FREEZE + db MUSIC_CITIES1, BANK(Music_Cities1) ; Route8Gate + db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundPathEntranceRoute8 + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; RockTunnelPokecenter + db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; RockTunnel1 + db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; PowerPlant + db MUSIC_VERMILION, BANK(Music_Vermilion) ; Route11Gate + db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; DiglettsCaveEntranceRoute11 + db MUSIC_VERMILION, BANK(Music_Vermilion) ; Route11GateUpstairs + db MUSIC_CITIES1, BANK(Music_Cities1) ; Route12Gate + db MUSIC_CITIES2, BANK(Music_Cities2) ; BillsHouse + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; VermilionPokecenter + db MUSIC_VERMILION, BANK(Music_Vermilion) ; FanClub + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; VermilionMart + db MUSIC_GYM, BANK(Music_Gym) ; VermilionGym + db MUSIC_VERMILION, BANK(Music_Vermilion) ; VermilionHouse1 + db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; VermilionDock + db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne1 + db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne2 + db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne3 + db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne4 + db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne5 + db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne6 + db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne7 + db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne8 + db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne9 + db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne10 + db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ;unused + db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ;unused + db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused + db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; VictoryRoad1 + db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ;unused + db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ;unused + db MUSIC_SILPH_CO, BANK(Music_SilphCo) ;unused + db MUSIC_SILPH_CO, BANK(Music_SilphCo) ;unused + db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; Lance + db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused + db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused + db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused + db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused + db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; HallofFameRoom + db MUSIC_ROUTES1, BANK(Music_Routes1) ; UndergroundPathNS + db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; Gary + db MUSIC_ROUTES1, BANK(Music_Routes1) ; UndergroundPathWE + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart1 + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart2 + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart3 + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart4 + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMartRoof + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMartElevator + db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion1 + db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion2 + db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion3 + db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion4 + db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion5 + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonPokecenter + db MUSIC_GYM, BANK(Music_Gym) ; CeladonGym + db MUSIC_GAME_CORNER, BANK(Music_GameCorner) ; CeladonGameCorner + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart5 + db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonPrizeRoom + db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonDiner + db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonHouse + db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonHotel + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; LavenderPokecenter + db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower1 + db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower2 + db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower3 + db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower4 + db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower5 + db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower6 + db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower7 + db MUSIC_LAVENDER, BANK(Music_Lavender) ; LavenderHouse1 + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; LavenderMart + db MUSIC_LAVENDER, BANK(Music_Lavender) ; LavenderHouse2 + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; FuchsiaMart + db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaHouse1 + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; FuchsiaPokecenter + db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaHouse2 + db MUSIC_CITIES2, BANK(Music_Cities2) ; SafariZoneEntrance + db MUSIC_GYM, BANK(Music_Gym) ; FuchsiaGym + db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaMeetingRoom + db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands2 + db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands3 + db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands4 + db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands5 + db MUSIC_CITIES2, BANK(Music_Cities2) ; VermilionHouse2 + db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaHouse3 + db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion1 + db MUSIC_GYM, BANK(Music_Gym) ; CinnabarGym + db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab1 + db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab2 + db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab3 + db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab4 + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CinnabarPokecenter + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CinnabarMart + db MUSIC_CINNABAR, BANK(Music_Cinnabar) + db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; IndigoPlateauLobby + db MUSIC_CITIES1, BANK(Music_Cities1) ; CopycatsHouse1F + db MUSIC_CITIES1, BANK(Music_Cities1) ; CopycatsHouse2F + db MUSIC_CITIES1, BANK(Music_Cities1) ; FightingDojo + db MUSIC_GYM, BANK(Music_Gym) ; SaffronGym + db MUSIC_CITIES1, BANK(Music_Cities1) ; SaffronHouse1 + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; SaffronMart + db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo1 + db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; SaffronPokecenter + db MUSIC_CITIES1, BANK(Music_Cities1) ; SaffronHouse2 + db MUSIC_CITIES1, BANK(Music_Cities1) ; Route15Gate + db MUSIC_CITIES1, BANK(Music_Cities1) ; Route15GateUpstairs + db MUSIC_CITIES1, BANK(Music_Cities1) ; Route16Gate + db MUSIC_CITIES1, BANK(Music_Cities1) ; Route16GateUpstairs + db MUSIC_CELADON, BANK(Music_Celadon) ; Route16House + db MUSIC_CELADON, BANK(Music_Celadon) ; Route12House + db MUSIC_CITIES1, BANK(Music_Cities1) ; Route18Gate + db MUSIC_CITIES1, BANK(Music_Cities1) ; Route18GateUpstairs + db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands1 + db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; Route22Gate + db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; VictoryRoad2 + db MUSIC_CITIES1, BANK(Music_Cities1) ; Route12GateUpstairs + db MUSIC_VERMILION, BANK(Music_Vermilion) ; VermilionHouse3 + db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; DiglettsCave + db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; VictoryRoad3 + db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout1 + db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout2 + db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout3 + db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout4 + db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideoutElevator + db MUSIC_DUNGEON1, BANK(Music_Dungeon1) + db MUSIC_DUNGEON1, BANK(Music_Dungeon1) + db MUSIC_DUNGEON1, BANK(Music_Dungeon1) + db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo2 + db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo3 + db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo4 + db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo5 + db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo6 + db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo7 + db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo8 + db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion2 + db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion3 + db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion4 + db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneEast + db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneNorth + db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneWest + db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneCenter + db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse1 + db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneSecretHouse + db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse2 + db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse3 + db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse4 + db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; UnknownDungeon2 + db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; UnknownDungeon3 + db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; UnknownDungeon1 + db MUSIC_CITIES2, BANK(Music_Cities2) ; NameRater + db MUSIC_CITIES1, BANK(Music_Cities1) ; CeruleanHouse2 + db MUSIC_CINNABAR, BANK(Music_Cinnabar) + db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; RockTunnel2 + db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo9 + db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo10 + db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo11 + db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCoElevator + db MUSIC_SILPH_CO, BANK(Music_SilphCo) + db MUSIC_SILPH_CO, BANK(Music_SilphCo) + db MUSIC_CELADON, BANK(Music_Celadon) ; BattleCenterM + db MUSIC_CELADON, BANK(Music_Celadon) ; TradeCenterM + db MUSIC_SILPH_CO, BANK(Music_SilphCo) + db MUSIC_SILPH_CO, BANK(Music_SilphCo) + db MUSIC_SILPH_CO, BANK(Music_SilphCo) + db MUSIC_SILPH_CO, BANK(Music_SilphCo) + db MUSIC_GYM, BANK(Music_Gym) ; Lorelei + db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; Bruno + db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; Agatha diff --git a/data/mart_inventories.asm b/data/mart_inventories.asm new file mode 100755 index 00000000..4389a1a3 --- /dev/null +++ b/data/mart_inventories.asm @@ -0,0 +1,75 @@ +; mart inventories are below +; they are texts +; first byte $FE, next byte # of items, last byte $FF + +; Viridian +ViridianMartText6:: ; 2442 (0:2442) + db $FE,4,POKE_BALL,ANTIDOTE,PARLYZ_HEAL,BURN_HEAL,$FF + +; Pewter +PewterMartText1:: ; 2449 (0:2449) + db $FE,7,POKE_BALL,POTION,ESCAPE_ROPE,ANTIDOTE,BURN_HEAL,AWAKENING + db PARLYZ_HEAL,$FF + +; Cerulean +CeruleanMartText1:: ; 2453 (0:2453) + db $FE,7,POKE_BALL,POTION,REPEL,ANTIDOTE,BURN_HEAL,AWAKENING + db PARLYZ_HEAL,$FF + +; Bike shop + db $FE,1,BICYCLE,$FF + +; Vermilion +VermilionMartText1:: ; 2461 (0:2461) + db $FE,6,POKE_BALL,SUPER_POTION,ICE_HEAL,AWAKENING,PARLYZ_HEAL + db REPEL,$FF + +; Lavender +LavenderMartText1:: ; 246a (0:246a) + db $FE,9,GREAT_BALL,SUPER_POTION,REVIVE,ESCAPE_ROPE,SUPER_REPEL + db ANTIDOTE,BURN_HEAL,ICE_HEAL,PARLYZ_HEAL,$FF + +; Celadon Dept. Store 2F (1) +CeladonMart2Text1:: ; 2476 (0:2476) + db $FE,9,GREAT_BALL,SUPER_POTION,REVIVE,SUPER_REPEL,ANTIDOTE + db BURN_HEAL,ICE_HEAL,AWAKENING,PARLYZ_HEAL,$FF + +; Celadon Dept. Store 2F (2) +CeladonMart2Text2:: ; 2482 (0:2482) + db $FE,9,TM_32,TM_33,TM_02,TM_07,TM_37,TM_01,TM_05,TM_09,TM_17,$FF + +; Celadon Dept. Store 4F +CeladonMart4Text1:: ; 248e (0:248e) + db $FE,5,POKE_DOLL,FIRE_STONE,THUNDER_STONE,WATER_STONE,LEAF_STONE,$FF + +; Celadon Dept. Store 5F (1) +CeladonMart5Text3:: ; 2496 (0:2496) + db $FE,7,X_ACCURACY,GUARD_SPEC_,DIRE_HIT,X_ATTACK,X_DEFEND,X_SPEED + db X_SPECIAL,$FF + +; Celadon Dept. Store 5F (2) +CeladonMart5Text4:: ; 24a0 (0:24a0) + db $FE,5,HP_UP,PROTEIN,IRON,CARBOS,CALCIUM,$FF + +; Fuchsia +FuchsiaMartText1:: ; 24a8 (0:24a8) + db $FE,6,ULTRA_BALL,GREAT_BALL,SUPER_POTION,REVIVE,FULL_HEAL + db SUPER_REPEL,$FF + +; unused? 24b1 + db $FE,5,GREAT_BALL,HYPER_POTION,SUPER_POTION,FULL_HEAL,REVIVE,$FF + +; Cinnabar +CinnabarMartText1:: ; 24b9 (0:24b9) + db $FE,7,ULTRA_BALL,GREAT_BALL,HYPER_POTION,MAX_REPEL,ESCAPE_ROPE + db FULL_HEAL,REVIVE,$FF + +; Saffron +SaffronMartText1:: ; 24c3 (0:24c3) + db $FE,6,GREAT_BALL,HYPER_POTION,MAX_REPEL,ESCAPE_ROPE,FULL_HEAL + db REVIVE,$FF + +; Indigo +IndigoPlateauLobbyText4:: ; 24cc (0:24cc) + db $FE,7,ULTRA_BALL,GREAT_BALL,FULL_RESTORE,MAX_POTION,FULL_HEAL + db REVIVE,MAX_REPEL,$FF diff --git a/data/mon_palettes.asm b/data/mon_palettes.asm new file mode 100755 index 00000000..f6763d7d --- /dev/null +++ b/data/mon_palettes.asm @@ -0,0 +1,153 @@ +MonsterPalettes: ; 725c8 (1c:65c8) + db PAL_MEWMON ; MISSINGNO + db PAL_GREENMON ; BULBASAUR + db PAL_GREENMON ; IVYSAUR + db PAL_GREENMON ; VENUSAUR + db PAL_REDMON ; CHARMANDER + db PAL_REDMON ; CHARMELEON + db PAL_REDMON ; CHARIZARD + db PAL_CYANMON ; SQUIRTLE + db PAL_CYANMON ; WARTORTLE + db PAL_CYANMON ; BLASTOISE + db PAL_GREENMON ; CATERPIE + db PAL_GREENMON ; METAPOD + db PAL_CYANMON ; BUTTERFREE + db PAL_YELLOWMON ; WEEDLE + db PAL_YELLOWMON ; KAKUNA + db PAL_YELLOWMON ; BEEDRILL + db PAL_BROWNMON ; PIDGEY + db PAL_BROWNMON ; PIDGEOTTO + db PAL_BROWNMON ; PIDGEOT + db PAL_GREYMON ; RATTATA + db PAL_GREYMON ; RATICATE + db PAL_BROWNMON ; SPEAROW + db PAL_BROWNMON ; FEAROW + db PAL_PURPLEMON ; EKANS + db PAL_PURPLEMON ; ARBOK + db PAL_YELLOWMON ; PIKACHU + db PAL_YELLOWMON ; RAICHU + db PAL_BROWNMON ; SANDSHREW + db PAL_BROWNMON ; SANDSLASH + db PAL_BLUEMON ; NIDORAN_F + db PAL_BLUEMON ; NIDORINA + db PAL_BLUEMON ; NIDOQUEEN + db PAL_PURPLEMON ; NIDORAN_M + db PAL_PURPLEMON ; NIDORINO + db PAL_PURPLEMON ; NIDOKING + db PAL_PINKMON ; CLEFAIRY + db PAL_PINKMON ; CLEFABLE + db PAL_REDMON ; VULPIX + db PAL_YELLOWMON ; NINETALES + db PAL_PINKMON ; JIGGLYPUFF + db PAL_PINKMON ; WIGGLYTUFF + db PAL_BLUEMON ; ZUBAT + db PAL_BLUEMON ; GOLBAT + db PAL_GREENMON ; ODDISH + db PAL_REDMON ; GLOOM + db PAL_REDMON ; VILEPLUME + db PAL_REDMON ; PARAS + db PAL_REDMON ; PARASECT + db PAL_PURPLEMON ; VENONAT + db PAL_PURPLEMON ; VENOMOTH + db PAL_BROWNMON ; DIGLETT + db PAL_BROWNMON ; DUGTRIO + db PAL_YELLOWMON ; MEOWTH + db PAL_YELLOWMON ; PERSIAN + db PAL_YELLOWMON ; PSYDUCK + db PAL_CYANMON ; GOLDUCK + db PAL_BROWNMON ; MANKEY + db PAL_BROWNMON ; PRIMEAPE + db PAL_BROWNMON ; GROWLITHE + db PAL_REDMON ; ARCANINE + db PAL_BLUEMON ; POLIWAG + db PAL_BLUEMON ; POLIWHIRL + db PAL_BLUEMON ; POLIWRATH + db PAL_YELLOWMON ; ABRA + db PAL_YELLOWMON ; KADABRA + db PAL_YELLOWMON ; ALAKAZAM + db PAL_GREYMON ; MACHOP + db PAL_GREYMON ; MACHOKE + db PAL_GREYMON ; MACHAMP + db PAL_GREENMON ; BELLSPROUT + db PAL_GREENMON ; WEEPINBELL + db PAL_GREENMON ; VICTREEBEL + db PAL_CYANMON ; TENTACOOL + db PAL_CYANMON ; TENTACRUEL + db PAL_GREYMON ; GEODUDE + db PAL_GREYMON ; GRAVELER + db PAL_GREYMON ; GOLEM + db PAL_REDMON ; PONYTA + db PAL_REDMON ; RAPIDASH + db PAL_PINKMON ; SLOWPOKE + db PAL_PINKMON ; SLOWBRO + db PAL_GREYMON ; MAGNEMITE + db PAL_GREYMON ; MAGNETON + db PAL_BROWNMON ; FARFETCH_D + db PAL_BROWNMON ; DODUO + db PAL_BROWNMON ; DODRIO + db PAL_BLUEMON ; SEEL + db PAL_BLUEMON ; DEWGONG + db PAL_PURPLEMON ; GRIMER + db PAL_PURPLEMON ; MUK + db PAL_GREYMON ; SHELLDER + db PAL_GREYMON ; CLOYSTER + db PAL_PURPLEMON ; GASTLY + db PAL_PURPLEMON ; HAUNTER + db PAL_PURPLEMON ; GENGAR + db PAL_GREYMON ; ONIX + db PAL_YELLOWMON ; DROWZEE + db PAL_YELLOWMON ; HYPNO + db PAL_REDMON ; KRABBY + db PAL_REDMON ; KINGLER + db PAL_YELLOWMON ; VOLTORB + db PAL_YELLOWMON ; ELECTRODE + db PAL_PINKMON ; EXEGGCUTE + db PAL_GREENMON ; EXEGGUTOR + db PAL_GREYMON ; CUBONE + db PAL_GREYMON ; MAROWAK + db PAL_BROWNMON ; HITMONLEE + db PAL_BROWNMON ; HITMONCHAN + db PAL_PINKMON ; LICKITUNG + db PAL_PURPLEMON ; KOFFING + db PAL_PURPLEMON ; WEEZING + db PAL_GREYMON ; RHYHORN + db PAL_GREYMON ; RHYDON + db PAL_PINKMON ; CHANSEY + db PAL_BLUEMON ; TANGELA + db PAL_BROWNMON ; KANGASKHAN + db PAL_CYANMON ; HORSEA + db PAL_CYANMON ; SEADRA + db PAL_REDMON ; GOLDEEN + db PAL_REDMON ; SEAKING + db PAL_REDMON ; STARYU + db PAL_GREYMON ; STARMIE + db PAL_PINKMON ; MR_MIME + db PAL_GREENMON ; SCYTHER + db PAL_MEWMON ; JYNX + db PAL_YELLOWMON ; ELECTABUZZ + db PAL_REDMON ; MAGMAR + db PAL_BROWNMON ; PINSIR + db PAL_GREYMON ; TAUROS + db PAL_REDMON ; MAGIKARP + db PAL_BLUEMON ; GYARADOS + db PAL_CYANMON ; LAPRAS + db PAL_GREYMON ; DITTO + db PAL_GREYMON ; EEVEE + db PAL_CYANMON ; VAPOREON + db PAL_YELLOWMON ; JOLTEON + db PAL_REDMON ; FLAREON + db PAL_GREYMON ; PORYGON + db PAL_BLUEMON ; OMANYTE + db PAL_BLUEMON ; OMASTAR + db PAL_BROWNMON ; KABUTO + db PAL_BROWNMON ; KABUTOPS + db PAL_GREYMON ; AERODACTYL + db PAL_PINKMON ; SNORLAX + db PAL_BLUEMON ; ARTICUNO + db PAL_YELLOWMON ; ZAPDOS + db PAL_REDMON ; MOLTRES + db PAL_GREYMON ; DRATINI + db PAL_BLUEMON ; DRAGONAIR + db PAL_BROWNMON ; DRAGONITE + db PAL_MEWMON ; MEWTWO + db PAL_MEWMON ; MEW diff --git a/data/mon_party_sprites.asm b/data/mon_party_sprites.asm new file mode 100755 index 00000000..b7839570 --- /dev/null +++ b/data/mon_party_sprites.asm @@ -0,0 +1,77 @@ +MonOverworldData: ; 7190d (1c:590d) + dn SPRITE_GRASS, SPRITE_GRASS ;Bulbasaur/Ivysaur + dn SPRITE_GRASS, SPRITE_MON ;Venusaur/Charmander + dn SPRITE_MON, SPRITE_MON ;Charmeleon/Charizard + dn SPRITE_WATER, SPRITE_WATER ;Squirtle/Wartortle + dn SPRITE_WATER, SPRITE_BUG ;Blastoise/Caterpie + dn SPRITE_BUG, SPRITE_BUG ;Metapod/Butterfree + dn SPRITE_BUG, SPRITE_BUG ;Weedle/Kakuna + dn SPRITE_BUG, SPRITE_BIRD_M ;Beedrill/Pidgey + dn SPRITE_BIRD_M, SPRITE_BIRD_M ;Pidgeotto/Pidgeot + dn SPRITE_QUADRUPED, SPRITE_QUADRUPED ;Rattata/Raticate + dn SPRITE_BIRD_M, SPRITE_BIRD_M ;Spearow/Fearow + dn SPRITE_SNAKE, SPRITE_SNAKE ;Ekans/Arbok + dn SPRITE_FAIRY, SPRITE_FAIRY ;Pikachu/Raichu + dn SPRITE_MON, SPRITE_MON ;Sandshrew/Sandslash + dn SPRITE_MON, SPRITE_MON ;Nidoran?/Nidorina + dn SPRITE_MON, SPRITE_MON ;Nidoqueen/Nidoran? + dn SPRITE_MON, SPRITE_MON ;Nidorino/Nidoking + dn SPRITE_FAIRY, SPRITE_FAIRY ;Clefairy/Clefable + dn SPRITE_QUADRUPED, SPRITE_QUADRUPED ;Vulpix/Ninetales + dn SPRITE_FAIRY, SPRITE_FAIRY ;Jigglypuff/Wigglytuff + dn SPRITE_MON, SPRITE_MON ;Zubat/Golbat + dn SPRITE_GRASS, SPRITE_GRASS ;Oddish/Gloom + dn SPRITE_GRASS, SPRITE_BUG ;Vileplume/Paras + dn SPRITE_BUG, SPRITE_BUG ;Parasect/Venonat + dn SPRITE_BUG, SPRITE_MON ;Venomoth/Diglett + dn SPRITE_MON, SPRITE_MON ;Dugtrio/Meowth + dn SPRITE_MON, SPRITE_MON ;Persian/Psyduck + dn SPRITE_MON, SPRITE_MON ;Golduck/Mankey + dn SPRITE_MON, SPRITE_QUADRUPED ;Primeape/Growlithe + dn SPRITE_QUADRUPED, SPRITE_MON ;Arcanine/Poliwag + dn SPRITE_MON, SPRITE_MON ;Poliwhirl/Poliwrath + dn SPRITE_MON, SPRITE_MON ;Abra/Kadabra + dn SPRITE_MON, SPRITE_MON ;Alakazam/Machop + dn SPRITE_MON, SPRITE_MON ;Machoke/Machamp + dn SPRITE_GRASS, SPRITE_GRASS ;Bellsprout/Weepinbell + dn SPRITE_GRASS, SPRITE_WATER ;Victreebel/Tentacool + dn SPRITE_WATER, SPRITE_MON ;Tentacruel/Geodude + dn SPRITE_MON, SPRITE_MON ;Graveler/Golem + dn SPRITE_QUADRUPED, SPRITE_QUADRUPED ;Ponyta/Rapidash + dn SPRITE_QUADRUPED, SPRITE_MON ;Slowpoke/Slowbro + dn SPRITE_BALL_M, SPRITE_BALL_M ;Magnemite/Magneton + dn SPRITE_BIRD_M, SPRITE_BIRD_M ;Farfetch'd/Doduo + dn SPRITE_BIRD_M, SPRITE_WATER ;Dodrio/Seel + dn SPRITE_WATER, SPRITE_MON ;Dewgong/Grimer + dn SPRITE_MON, SPRITE_HELIX ;Muk/Shellder + dn SPRITE_HELIX, SPRITE_MON ;Cloyster/Gastly + dn SPRITE_MON, SPRITE_MON ;Haunter/Gengar + dn SPRITE_SNAKE, SPRITE_MON ;Onix/Drowzee + dn SPRITE_MON, SPRITE_WATER ;Hypno/Krabby + dn SPRITE_WATER, SPRITE_BALL_M ;Kingler/Voltorb + dn SPRITE_BALL_M, SPRITE_GRASS ;Electrode/Exeggcute + dn SPRITE_GRASS, SPRITE_MON ;Exeggutor/Cubone + dn SPRITE_MON, SPRITE_MON ;Marowak/Hitmonlee + dn SPRITE_MON, SPRITE_MON ;Hitmonchan/Lickitung + dn SPRITE_MON, SPRITE_MON ;Koffing/Weezing + dn SPRITE_QUADRUPED, SPRITE_MON ;Rhyhorn/Rhydon + dn SPRITE_FAIRY, SPRITE_GRASS ;Chansey/Tangela + dn SPRITE_MON, SPRITE_WATER ;Kangaskhan/Horsea + dn SPRITE_WATER, SPRITE_WATER ;Seadra/Goldeen + dn SPRITE_WATER, SPRITE_HELIX ;Seaking/Staryu + dn SPRITE_HELIX, SPRITE_MON ;Starmie/Mr.Mime + dn SPRITE_BUG, SPRITE_MON ;Scyther/Jynx + dn SPRITE_MON, SPRITE_MON ;Electabuzz/Magmar + dn SPRITE_BUG, SPRITE_QUADRUPED ;Pinsir/Tauros + dn SPRITE_WATER, SPRITE_SNAKE ;Magikarp/Gyarados + dn SPRITE_WATER, SPRITE_MON ;Lapras/Ditto + dn SPRITE_QUADRUPED, SPRITE_QUADRUPED ;Eevee/Vaporeon + dn SPRITE_QUADRUPED, SPRITE_QUADRUPED ;Jolteon/Flareon + dn SPRITE_MON, SPRITE_HELIX ;Porygon/Omanyte + dn SPRITE_HELIX, SPRITE_HELIX ;Omastar/Kabuto + dn SPRITE_HELIX, SPRITE_BIRD_M ;Kabutops/Aerodactyl + dn SPRITE_MON, SPRITE_BIRD_M ;Snorlax/Articuno + dn SPRITE_BIRD_M, SPRITE_BIRD_M ;Zapdos/Moltres + dn SPRITE_SNAKE, SPRITE_SNAKE ;Dratini/Dragonair + dn SPRITE_SNAKE, SPRITE_MON ;Dragonite/Mewtwo + dn SPRITE_MON, 0 ;Mew/Padding diff --git a/data/moves.asm b/data/moves.asm new file mode 100755 index 00000000..08da533d --- /dev/null +++ b/data/moves.asm @@ -0,0 +1,168 @@ +Moves: ; 38000 (e:4000) +; characteristics of each move +; animation, effect, power, type, accuracy, PP + db POUND ,NO_ADDITIONAL_EFFECT ,$28,NORMAL, $FF,35 + db KARATE_CHOP ,NO_ADDITIONAL_EFFECT ,$32,NORMAL, $FF,25 + db DOUBLESLAP ,TWO_TO_FIVE_ATTACKS_EFFECT,$0F,NORMAL, $D8,10 + db COMET_PUNCH ,TWO_TO_FIVE_ATTACKS_EFFECT,$12,NORMAL, $D8,15 + db MEGA_PUNCH ,NO_ADDITIONAL_EFFECT ,$50,NORMAL, $D8,20 + db PAY_DAY ,PAY_DAY_EFFECT ,$28,NORMAL, $FF,20 + db FIRE_PUNCH ,BURN_SIDE_EFFECT1 ,$4B,FIRE, $FF,15 + db ICE_PUNCH ,FREEZE_SIDE_EFFECT ,$4B,ICE, $FF,15 + db THUNDERPUNCH,PARALYZE_SIDE_EFFECT1 ,$4B,ELECTRIC,$FF,15 + db SCRATCH ,NO_ADDITIONAL_EFFECT ,$28,NORMAL, $FF,35 + db VICEGRIP ,NO_ADDITIONAL_EFFECT ,$37,NORMAL, $FF,30 + db GUILLOTINE ,OHKO_EFFECT ,$01,NORMAL, $4C,5 + db RAZOR_WIND ,CHARGE_EFFECT ,$50,NORMAL, $BF,10 + db SWORDS_DANCE,ATTACK_UP2_EFFECT ,$00,NORMAL, $FF,30 + db CUT ,NO_ADDITIONAL_EFFECT ,$32,NORMAL, $F2,30 + db GUST ,NO_ADDITIONAL_EFFECT ,$28,NORMAL, $FF,35 + db WING_ATTACK ,NO_ADDITIONAL_EFFECT ,$23,FLYING, $FF,35 + db WHIRLWIND ,SWITCH_AND_TELEPORT_EFFECT,$00,NORMAL, $D8,20 + db FLY ,FLY_EFFECT ,$46,FLYING, $F2,15 + db BIND ,TRAPPING_EFFECT ,$0F,NORMAL, $BF,20 + db SLAM ,NO_ADDITIONAL_EFFECT ,$50,NORMAL, $BF,20 + db VINE_WHIP ,NO_ADDITIONAL_EFFECT ,$23,GRASS, $FF,10 + db STOMP ,FLINCH_SIDE_EFFECT2 ,$41,NORMAL, $FF,20 + db DOUBLE_KICK ,ATTACK_TWICE_EFFECT ,$1E,FIGHTING,$FF,30 + db MEGA_KICK ,NO_ADDITIONAL_EFFECT ,$78,NORMAL, $BF,5 + db JUMP_KICK ,JUMP_KICK_EFFECT ,$46,FIGHTING,$F2,25 + db ROLLING_KICK,FLINCH_SIDE_EFFECT2 ,$3C,FIGHTING,$D8,15 + db SAND_ATTACK ,ACCURACY_DOWN1_EFFECT ,$00,NORMAL, $FF,15 + db HEADBUTT ,FLINCH_SIDE_EFFECT2 ,$46,NORMAL, $FF,15 + db HORN_ATTACK ,NO_ADDITIONAL_EFFECT ,$41,NORMAL, $FF,25 + db FURY_ATTACK ,TWO_TO_FIVE_ATTACKS_EFFECT,$0F,NORMAL, $D8,20 + db HORN_DRILL ,OHKO_EFFECT ,$01,NORMAL, $4C,5 + db TACKLE ,NO_ADDITIONAL_EFFECT ,$23,NORMAL, $F2,35 + db BODY_SLAM ,PARALYZE_SIDE_EFFECT2 ,$55,NORMAL, $FF,15 + db WRAP ,TRAPPING_EFFECT ,$0F,NORMAL, $D8,20 + db TAKE_DOWN ,RECOIL_EFFECT ,$5A,NORMAL, $D8,20 + db THRASH ,THRASH_PETAL_DANCE_EFFECT ,$5A,NORMAL, $FF,20 + db DOUBLE_EDGE ,RECOIL_EFFECT ,$64,NORMAL, $FF,15 + db TAIL_WHIP ,DEFENSE_DOWN1_EFFECT ,$00,NORMAL, $FF,30 + db POISON_STING,POISON_SIDE_EFFECT1 ,$0F,POISON, $FF,35 + db TWINEEDLE ,TWINEEDLE_EFFECT ,$19,BUG, $FF,20 + db PIN_MISSILE ,TWO_TO_FIVE_ATTACKS_EFFECT,$0E,BUG, $D8,20 + db LEER ,DEFENSE_DOWN1_EFFECT ,$00,NORMAL, $FF,30 + db BITE ,FLINCH_SIDE_EFFECT1 ,$3C,NORMAL, $FF,25 + db GROWL ,ATTACK_DOWN1_EFFECT ,$00,NORMAL, $FF,40 + db ROAR ,SWITCH_AND_TELEPORT_EFFECT,$00,NORMAL, $FF,20 + db SING ,SLEEP_EFFECT ,$00,NORMAL, $8C,15 + db SUPERSONIC ,CONFUSION_EFFECT ,$00,NORMAL, $8C,20 + db SONICBOOM ,SPECIAL_DAMAGE_EFFECT ,$01,NORMAL, $E5,20 + db DISABLE ,DISABLE_EFFECT ,$00,NORMAL, $8C,20 + db ACID ,DEFENSE_DOWN_SIDE_EFFECT ,$28,POISON, $FF,30 + db EMBER ,BURN_SIDE_EFFECT1 ,$28,FIRE, $FF,25 + db FLAMETHROWER,BURN_SIDE_EFFECT1 ,$5F,FIRE, $FF,15 + db MIST ,MIST_EFFECT ,$00,ICE, $FF,30 + db WATER_GUN ,NO_ADDITIONAL_EFFECT ,$28,WATER, $FF,25 + db HYDRO_PUMP ,NO_ADDITIONAL_EFFECT ,$78,WATER, $CC,5 + db SURF ,NO_ADDITIONAL_EFFECT ,$5F,WATER, $FF,15 + db ICE_BEAM ,FREEZE_SIDE_EFFECT ,$5F,ICE, $FF,10 + db BLIZZARD ,FREEZE_SIDE_EFFECT ,$78,ICE, $E5,5 + db PSYBEAM ,CONFUSION_SIDE_EFFECT ,$41,PSYCHIC, $FF,20 + db BUBBLEBEAM ,SPEED_DOWN_SIDE_EFFECT ,$41,WATER, $FF,20 + db AURORA_BEAM ,ATTACK_DOWN_SIDE_EFFECT ,$41,ICE, $FF,20 + db HYPER_BEAM ,HYPER_BEAM_EFFECT ,$96,NORMAL, $E5,5 + db PECK ,NO_ADDITIONAL_EFFECT ,$23,FLYING, $FF,35 + db DRILL_PECK ,NO_ADDITIONAL_EFFECT ,$50,FLYING, $FF,20 + db SUBMISSION ,RECOIL_EFFECT ,$50,FIGHTING,$CC,25 + db LOW_KICK ,FLINCH_SIDE_EFFECT2 ,$32,FIGHTING,$E5,20 + db COUNTER ,NO_ADDITIONAL_EFFECT ,$01,FIGHTING,$FF,20 + db SEISMIC_TOSS,SPECIAL_DAMAGE_EFFECT ,$01,FIGHTING,$FF,20 + db STRENGTH ,NO_ADDITIONAL_EFFECT ,$50,NORMAL, $FF,15 + db ABSORB ,DRAIN_HP_EFFECT ,$14,GRASS, $FF,20 + db MEGA_DRAIN ,DRAIN_HP_EFFECT ,$28,GRASS, $FF,10 + db LEECH_SEED ,LEECH_SEED_EFFECT ,$00,GRASS, $E5,10 + db GROWTH ,SPECIAL_UP1_EFFECT ,$00,NORMAL, $FF,40 + db RAZOR_LEAF ,NO_ADDITIONAL_EFFECT ,$37,GRASS, $F2,25 + db SOLARBEAM ,CHARGE_EFFECT ,$78,GRASS, $FF,10 + db POISONPOWDER,POISON_EFFECT ,$00,POISON, $BF,35 + db STUN_SPORE ,PARALYZE_EFFECT ,$00,GRASS, $BF,30 + db SLEEP_POWDER,SLEEP_EFFECT ,$00,GRASS, $BF,15 + db PETAL_DANCE ,THRASH_PETAL_DANCE_EFFECT ,$46,GRASS, $FF,20 + db STRING_SHOT ,SPEED_DOWN1_EFFECT ,$00,BUG, $F2,40 + db DRAGON_RAGE ,SPECIAL_DAMAGE_EFFECT ,$01,DRAGON, $FF,10 + db FIRE_SPIN ,TRAPPING_EFFECT ,$0F,FIRE, $B2,15 + db THUNDERSHOCK,PARALYZE_SIDE_EFFECT1 ,$28,ELECTRIC,$FF,30 + db THUNDERBOLT ,PARALYZE_SIDE_EFFECT1 ,$5F,ELECTRIC,$FF,15 + db THUNDER_WAVE,PARALYZE_EFFECT ,$00,ELECTRIC,$FF,20 + db THUNDER ,PARALYZE_SIDE_EFFECT1 ,$78,ELECTRIC,$B2,10 + db ROCK_THROW ,NO_ADDITIONAL_EFFECT ,$32,ROCK, $A5,15 + db EARTHQUAKE ,NO_ADDITIONAL_EFFECT ,$64,GROUND, $FF,10 + db FISSURE ,OHKO_EFFECT ,$01,GROUND, $4C,5 + db DIG ,CHARGE_EFFECT ,$64,GROUND, $FF,10 + db TOXIC ,POISON_EFFECT ,$00,POISON, $D8,10 + db CONFUSION ,CONFUSION_SIDE_EFFECT ,$32,PSYCHIC, $FF,25 + db PSYCHIC_M ,SPECIAL_DOWN_SIDE_EFFECT ,$5A,PSYCHIC, $FF,10 + db HYPNOSIS ,SLEEP_EFFECT ,$00,PSYCHIC, $99,20 + db MEDITATE ,ATTACK_UP1_EFFECT ,$00,PSYCHIC, $FF,40 + db AGILITY ,SPEED_UP2_EFFECT ,$00,PSYCHIC, $FF,30 + db QUICK_ATTACK,NO_ADDITIONAL_EFFECT ,$28,NORMAL, $FF,30 + db RAGE ,RAGE_EFFECT ,$14,NORMAL, $FF,20 + db TELEPORT ,SWITCH_AND_TELEPORT_EFFECT,$00,PSYCHIC, $FF,20 + db NIGHT_SHADE ,SPECIAL_DAMAGE_EFFECT ,$00,GHOST, $FF,15 + db MIMIC ,MIMIC_EFFECT ,$00,NORMAL, $FF,10 + db SCREECH ,DEFENSE_DOWN2_EFFECT ,$00,NORMAL, $D8,40 + db DOUBLE_TEAM ,EVASION_UP1_EFFECT ,$00,NORMAL, $FF,15 + db RECOVER ,HEAL_EFFECT ,$00,NORMAL, $FF,20 + db HARDEN ,DEFENSE_UP1_EFFECT ,$00,NORMAL, $FF,30 + db MINIMIZE ,EVASION_UP1_EFFECT ,$00,NORMAL, $FF,20 + db SMOKESCREEN ,ACCURACY_DOWN1_EFFECT ,$00,NORMAL, $FF,20 + db CONFUSE_RAY ,CONFUSION_EFFECT ,$00,GHOST, $FF,10 + db WITHDRAW ,DEFENSE_UP1_EFFECT ,$00,WATER, $FF,40 + db DEFENSE_CURL,DEFENSE_UP1_EFFECT ,$00,NORMAL, $FF,40 + db BARRIER ,DEFENSE_UP2_EFFECT ,$00,PSYCHIC, $FF,30 + db LIGHT_SCREEN,LIGHT_SCREEN_EFFECT ,$00,PSYCHIC, $FF,30 + db HAZE ,HAZE_EFFECT ,$00,ICE, $FF,30 + db REFLECT ,REFLECT_EFFECT ,$00,PSYCHIC, $FF,20 + db FOCUS_ENERGY,FOCUS_ENERGY_EFFECT ,$00,NORMAL, $FF,30 + db BIDE ,BIDE_EFFECT ,$00,NORMAL, $FF,10 + db METRONOME ,METRONOME_EFFECT ,$00,NORMAL, $FF,10 + db MIRROR_MOVE ,MIRROR_MOVE_EFFECT ,$00,FLYING, $FF,20 + db SELFDESTRUCT,EXPLODE_EFFECT ,$82,NORMAL, $FF,5 + db EGG_BOMB ,NO_ADDITIONAL_EFFECT ,$64,NORMAL, $BF,10 + db LICK ,PARALYZE_SIDE_EFFECT2 ,$14,GHOST, $FF,30 + db SMOG ,POISON_SIDE_EFFECT2 ,$14,POISON, $B2,20 + db SLUDGE ,POISON_SIDE_EFFECT2 ,$41,POISON, $FF,20 + db BONE_CLUB ,FLINCH_SIDE_EFFECT1 ,$41,GROUND, $D8,20 + db FIRE_BLAST ,BURN_SIDE_EFFECT2 ,$78,FIRE, $D8,5 + db WATERFALL ,NO_ADDITIONAL_EFFECT ,$50,WATER, $FF,15 + db CLAMP ,TRAPPING_EFFECT ,$23,WATER, $BF,10 + db SWIFT ,SWIFT_EFFECT ,$3C,NORMAL, $FF,20 + db SKULL_BASH ,CHARGE_EFFECT ,$64,NORMAL, $FF,15 + db SPIKE_CANNON,TWO_TO_FIVE_ATTACKS_EFFECT,$14,NORMAL, $FF,15 + db CONSTRICT ,SPEED_DOWN_SIDE_EFFECT ,$0A,NORMAL, $FF,35 + db AMNESIA ,SPECIAL_UP2_EFFECT ,$00,PSYCHIC, $FF,20 + db KINESIS ,ACCURACY_DOWN1_EFFECT ,$00,PSYCHIC, $CC,15 + db SOFTBOILED ,HEAL_EFFECT ,$00,NORMAL, $FF,10 + db HI_JUMP_KICK,JUMP_KICK_EFFECT ,$55,FIGHTING,$E5,20 + db GLARE ,PARALYZE_EFFECT ,$00,NORMAL, $BF,30 + db DREAM_EATER ,DREAM_EATER_EFFECT ,$64,PSYCHIC, $FF,15 + db POISON_GAS ,POISON_EFFECT ,$00,POISON, $8C,40 + db BARRAGE ,TWO_TO_FIVE_ATTACKS_EFFECT,$0F,NORMAL, $D8,20 + db LEECH_LIFE ,DRAIN_HP_EFFECT ,$14,BUG, $FF,15 + db LOVELY_KISS ,SLEEP_EFFECT ,$00,NORMAL, $BF,10 + db SKY_ATTACK ,CHARGE_EFFECT ,$8C,FLYING, $E5,5 + db TRANSFORM ,TRANSFORM_EFFECT ,$00,NORMAL, $FF,10 + db BUBBLE ,SPEED_DOWN_SIDE_EFFECT ,$14,WATER, $FF,30 + db DIZZY_PUNCH ,NO_ADDITIONAL_EFFECT ,$46,NORMAL, $FF,10 + db SPORE ,SLEEP_EFFECT ,$00,GRASS, $FF,15 + db FLASH ,ACCURACY_DOWN1_EFFECT ,$00,NORMAL, $B2,20 + db PSYWAVE ,SPECIAL_DAMAGE_EFFECT ,$01,PSYCHIC, $CC,15 + db SPLASH ,SPLASH_EFFECT ,$00,NORMAL, $FF,40 + db ACID_ARMOR ,DEFENSE_UP2_EFFECT ,$00,POISON, $FF,40 + db CRABHAMMER ,NO_ADDITIONAL_EFFECT ,$5A,WATER, $D8,10 + db EXPLOSION ,EXPLODE_EFFECT ,$AA,NORMAL, $FF,5 + db FURY_SWIPES ,TWO_TO_FIVE_ATTACKS_EFFECT,$12,NORMAL, $CC,15 + db BONEMERANG ,ATTACK_TWICE_EFFECT ,$32,GROUND, $E5,10 + db REST ,HEAL_EFFECT ,$00,PSYCHIC, $FF,10 + db ROCK_SLIDE ,NO_ADDITIONAL_EFFECT ,$4B,ROCK, $E5,10 + db HYPER_FANG ,FLINCH_SIDE_EFFECT1 ,$50,NORMAL, $E5,15 + db SHARPEN ,ATTACK_UP1_EFFECT ,$00,NORMAL, $FF,30 + db CONVERSION ,CONVERSION_EFFECT ,$00,NORMAL, $FF,30 + db TRI_ATTACK ,NO_ADDITIONAL_EFFECT ,$50,NORMAL, $FF,10 + db SUPER_FANG ,SUPER_FANG_EFFECT ,$01,NORMAL, $E5,10 + db SLASH ,NO_ADDITIONAL_EFFECT ,$46,NORMAL, $FF,20 + db SUBSTITUTE ,SUBSTITUTE_EFFECT ,$00,NORMAL, $FF,10 + db STRUGGLE ,RECOIL_EFFECT ,$32,NORMAL, $FF,10 diff --git a/data/pokedex_entries.asm b/data/pokedex_entries.asm new file mode 100755 index 00000000..6f06d699 --- /dev/null +++ b/data/pokedex_entries.asm @@ -0,0 +1,1259 @@ +PokedexEntryPointers: ; 4047e (10:447e) + dw RhydonDexEntry + dw KangaskhanDexEntry + dw NidoranMDexEntry + dw ClefairyDexEntry + dw SpearowDexEntry + dw VoltorbDexEntry + dw NidokingDexEntry + dw SlowbroDexEntry + dw IvysaurDexEntry + dw ExeggutorDexEntry + dw LickitungDexEntry + dw ExeggcuteDexEntry + dw GrimerDexEntry + dw GengarDexEntry + dw NidoranFDexEntry + dw NidoqueenDexEntry + dw CuboneDexEntry + dw RhyhornDexEntry + dw LaprasDexEntry + dw ArcanineDexEntry + dw MewDexEntry + dw GyaradosDexEntry + dw ShellderDexEntry + dw TentacoolDexEntry + dw GastlyDexEntry + dw ScytherDexEntry + dw StaryuDexEntry + dw BlastoiseDexEntry + dw PinsirDexEntry + dw TangelaDexEntry + dw MissingNoDexEntry + dw MissingNoDexEntry + dw GrowlitheDexEntry + dw OnixDexEntry + dw FearowDexEntry + dw PidgeyDexEntry + dw SlowpokeDexEntry + dw KadabraDexEntry + dw GravelerDexEntry + dw ChanseyDexEntry + dw MachokeDexEntry + dw MrMimeDexEntry + dw HitmonleeDexEntry + dw HitmonchanDexEntry + dw ArbokDexEntry + dw ParasectDexEntry + dw PsyduckDexEntry + dw DrowzeeDexEntry + dw GolemDexEntry + dw MissingNoDexEntry + dw MagmarDexEntry + dw MissingNoDexEntry + dw ElectabuzzDexEntry + dw MagnetonDexEntry + dw KoffingDexEntry + dw MissingNoDexEntry + dw MankeyDexEntry + dw SeelDexEntry + dw DiglettDexEntry + dw TaurosDexEntry + dw MissingNoDexEntry + dw MissingNoDexEntry + dw MissingNoDexEntry + dw FarfetchdDexEntry + dw VenonatDexEntry + dw DragoniteDexEntry + dw MissingNoDexEntry + dw MissingNoDexEntry + dw MissingNoDexEntry + dw DoduoDexEntry + dw PoliwagDexEntry + dw JynxDexEntry + dw MoltresDexEntry + dw ArticunoDexEntry + dw ZapdosDexEntry + dw DittoDexEntry + dw MeowthDexEntry + dw KrabbyDexEntry + dw MissingNoDexEntry + dw MissingNoDexEntry + dw MissingNoDexEntry + dw VulpixDexEntry + dw NinetalesDexEntry + dw PikachuDexEntry + dw RaichuDexEntry + dw MissingNoDexEntry + dw MissingNoDexEntry + dw DratiniDexEntry + dw DragonairDexEntry + dw KabutoDexEntry + dw KabutopsDexEntry + dw HorseaDexEntry + dw SeadraDexEntry + dw MissingNoDexEntry + dw MissingNoDexEntry + dw SandshrewDexEntry + dw SandslashDexEntry + dw OmanyteDexEntry + dw OmastarDexEntry + dw JigglypuffDexEntry + dw WigglytuffDexEntry + dw EeveeDexEntry + dw FlareonDexEntry + dw JolteonDexEntry + dw VaporeonDexEntry + dw MachopDexEntry + dw ZubatDexEntry + dw EkansDexEntry + dw ParasDexEntry + dw PoliwhirlDexEntry + dw PoliwrathDexEntry + dw WeedleDexEntry + dw KakunaDexEntry + dw BeedrillDexEntry + dw MissingNoDexEntry + dw DodrioDexEntry + dw PrimeapeDexEntry + dw DugtrioDexEntry + dw VenomothDexEntry + dw DewgongDexEntry + dw MissingNoDexEntry + dw MissingNoDexEntry + dw CaterpieDexEntry + dw MetapodDexEntry + dw ButterfreeDexEntry + dw MachampDexEntry + dw MissingNoDexEntry + dw GolduckDexEntry + dw HypnoDexEntry + dw GolbatDexEntry + dw MewtwoDexEntry + dw SnorlaxDexEntry + dw MagikarpDexEntry + dw MissingNoDexEntry + dw MissingNoDexEntry + dw MukDexEntry + dw MissingNoDexEntry + dw KinglerDexEntry + dw CloysterDexEntry + dw MissingNoDexEntry + dw ElectrodeDexEntry + dw ClefableDexEntry + dw WeezingDexEntry + dw PersianDexEntry + dw MarowakDexEntry + dw MissingNoDexEntry + dw HaunterDexEntry + dw AbraDexEntry + dw AlakazamDexEntry + dw PidgeottoDexEntry + dw PidgeotDexEntry + dw StarmieDexEntry + dw BulbasaurDexEntry + dw VenusaurDexEntry + dw TentacruelDexEntry + dw MissingNoDexEntry + dw GoldeenDexEntry + dw SeakingDexEntry + dw MissingNoDexEntry + dw MissingNoDexEntry + dw MissingNoDexEntry + dw MissingNoDexEntry + dw PonytaDexEntry + dw RapidashDexEntry + dw RattataDexEntry + dw RaticateDexEntry + dw NidorinoDexEntry + dw NidorinaDexEntry + dw GeodudeDexEntry + dw PorygonDexEntry + dw AerodactylDexEntry + dw MissingNoDexEntry + dw MagnemiteDexEntry + dw MissingNoDexEntry + dw MissingNoDexEntry + dw CharmanderDexEntry + dw SquirtleDexEntry + dw CharmeleonDexEntry + dw WartortleDexEntry + dw CharizardDexEntry + dw MissingNoDexEntry + dw MissingNoDexEntry + dw MissingNoDexEntry + dw MissingNoDexEntry + dw OddishDexEntry + dw GloomDexEntry + dw VileplumeDexEntry + dw BellsproutDexEntry + dw WeepinbellDexEntry + dw VictreebelDexEntry + +; string: species name +; height in feet, inches +; weight in pounds +; text entry + +RhydonDexEntry: ; 405fa (10:45fa) + db "DRILL@" + db 6,3 + dw 2650 + TX_FAR _RhydonDexEntry + db "@" + +KangaskhanDexEntry: ; 40609 (10:4609) + db "PARENT@" + db 7,3 + dw 1760 + TX_FAR _KangaskhanDexEntry + db "@" + +NidoranMDexEntry: ; 40619 (10:4619) + db "POISON PIN@" + db 1,8 + dw 200 + TX_FAR _NidoranMDexEntry + db "@" + +ClefairyDexEntry: ; 4062d (10:462d) + db "FAIRY@" + db 2,0 + dw 170 + TX_FAR _ClefairyDexEntry + db "@" + +SpearowDexEntry: ; 4063c (10:463c) + db "TINY BIRD@" + db 1,0 + dw 40 + TX_FAR _SpearowDexEntry + db "@" + +VoltorbDexEntry: ; 4064f (10:464f) + db "BALL@" + db 1,8 + dw 230 + TX_FAR _VoltorbDexEntry + db "@" + +NidokingDexEntry: ; 4065d (10:465d) + db "DRILL@" + db 4,7 + dw 1370 + TX_FAR _NidokingDexEntry + db "@" + +SlowbroDexEntry: ; 4066c (10:466c) + db "HERMITCRAB@" + db 5,3 + dw 1730 + TX_FAR _SlowbroDexEntry + db "@" + +IvysaurDexEntry: ; 40680 (10:4680) + db "SEED@" + db 3,3 + dw 290 + TX_FAR _IvysaurDexEntry + db "@" + +ExeggutorDexEntry: ; 4068e (10:468e) + db "COCONUT@" + db 6,7 + dw 2650 + TX_FAR _ExeggutorDexEntry + db "@" + +LickitungDexEntry: ; 4069f (10:469f) + db "LICKING@" + db 3,11 + dw 1440 + TX_FAR _LickitungDexEntry + db "@" + +ExeggcuteDexEntry: ; 406b0 (10:46b0) + db "EGG@" + db 1,4 + dw 60 + TX_FAR _ExeggcuteDexEntry + db "@" + +GrimerDexEntry: ; 406bd (10:46bd) + db "SLUDGE@" + db 2,11 + dw 660 + TX_FAR _GrimerDexEntry + db "@" + +GengarDexEntry: ; 406cd (10:46cd) + db "SHADOW@" + db 4,11 + dw 890 + TX_FAR _GengarDexEntry + db "@" + +NidoranFDexEntry: ; 406dd (10:46dd) + db "POISON PIN@" + db 1,4 + dw 150 + TX_FAR _NidoranFDexEntry + db "@" + +NidoqueenDexEntry: ; 406f1 (10:46f1) + db "DRILL@" + db 4,3 + dw 1320 + TX_FAR _NidoqueenDexEntry + db "@" + +CuboneDexEntry: ; 40700 (10:4700) + db "LONELY@" + db 1,4 + dw 140 + TX_FAR _CuboneDexEntry + db "@" + +RhyhornDexEntry: ; 40710 (10:4710) + db "SPIKES@" + db 3,3 + dw 2540 + TX_FAR _RhyhornDexEntry + db "@" + +LaprasDexEntry: ; 40720 (10:4720) + db "TRANSPORT@" + db 8,2 + dw 4850 + TX_FAR _LaprasDexEntry + db "@" + +ArcanineDexEntry: ; 40733 (10:4733) + db "LEGENDARY@" + db 6,3 + dw 3420 + TX_FAR _ArcanineDexEntry + db "@" + +MewDexEntry: ; 40746 (10:4746) + db "NEW SPECIE@" + db 1,4 + dw 90 + TX_FAR _MewDexEntry + db "@" + +GyaradosDexEntry: ; 4075a (10:475a) + db "ATROCIOUS@" + db 21,4 + dw 5180 + TX_FAR _GyaradosDexEntry + db "@" + +ShellderDexEntry: ; 4076d (10:476d) + db "BIVALVE@" + db 1,0 + dw 90 + TX_FAR _ShellderDexEntry + db "@" + +TentacoolDexEntry: ; 4077e (10:477e) + db "JELLYFISH@" + db 2,11 + dw 1000 + TX_FAR _TentacoolDexEntry + db "@" + +GastlyDexEntry: ; 40791 (10:4791) + db "GAS@" + db 4,3 + dw 2 + TX_FAR _GastlyDexEntry + db "@" + +ScytherDexEntry: ; 4079e (10:479e) + db "MANTIS@" + db 4,11 + dw 1230 + TX_FAR _ScytherDexEntry + db "@" + +StaryuDexEntry: ; 407ae (10:47ae) + db "STARSHAPE@" + db 2,7 + dw 760 + TX_FAR _StaryuDexEntry + db "@" + +BlastoiseDexEntry: ; 407c1 (10:47c1) + db "SHELLFISH@" + db 5,3 + dw 1890 + TX_FAR _BlastoiseDexEntry + db "@" + +PinsirDexEntry: ; 407d4 (10:47d4) + db "STAGBEETLE@" + db 4,11 + dw 1210 + TX_FAR _PinsirDexEntry + db "@" + +TangelaDexEntry: ; 407e8 (10:47e8) + db "VINE@" + db 3,3 + dw 770 + TX_FAR _TangelaDexEntry + db "@" + +GrowlitheDexEntry: ; 407f6 (10:47f6) + db "PUPPY@" + db 2,4 + dw 420 + TX_FAR _GrowlitheDexEntry + db "@" + +OnixDexEntry: ; 40805 (10:4805) + db "ROCK SNAKE@" + db 28,10 + dw 4630 + TX_FAR _OnixDexEntry + db "@" + +FearowDexEntry: ; 40819 (10:4819) + db "BEAK@" + db 3,11 + dw 840 + TX_FAR _FearowDexEntry + db "@" + +PidgeyDexEntry: ; 40827 (10:4827) + db "TINY BIRD@" + db 1,0 + dw 40 + TX_FAR _PidgeyDexEntry + db "@" + +SlowpokeDexEntry: ; 4083a (10:483a) + db "DOPEY@" + db 3,11 + dw 790 + TX_FAR _SlowpokeDexEntry + db "@" + +KadabraDexEntry: ; 40849 (10:4849) + db "PSI@" + db 4,3 + dw 1250 + TX_FAR _KadabraDexEntry + db "@" + +GravelerDexEntry: ; 40856 (10:4856) + db "ROCK@" + db 3,3 + dw 2320 + TX_FAR _GravelerDexEntry + db "@" + +ChanseyDexEntry: ; 40864 (10:4864) + db "EGG@" + db 3,7 + dw 760 + TX_FAR _ChanseyDexEntry + db "@" + +MachokeDexEntry: ; 40871 (10:4871) + db "SUPERPOWER@" + db 4,11 + dw 1550 + TX_FAR _MachokeDexEntry + db "@" + +MrMimeDexEntry: ; 40885 (10:4885) + db "BARRIER@" + db 4,3 + dw 1200 + TX_FAR _MrMimeDexEntry + db "@" + +HitmonleeDexEntry: ; 40896 (10:4896) + db "KICKING@" + db 4,11 + dw 1100 + TX_FAR _HitmonleeDexEntry + db "@" + +HitmonchanDexEntry: ; 408a7 (10:48a7) + db "PUNCHING@" + db 4,7 + dw 1110 + TX_FAR _HitmonchanDexEntry + db "@" + +ArbokDexEntry: ; 408b9 (10:48b9) + db "COBRA@" + db 11,6 + dw 1430 + TX_FAR _ArbokDexEntry + db "@" + +ParasectDexEntry: ; 408c8 (10:48c8) + db "MUSHROOM@" + db 3,3 + dw 650 + TX_FAR _ParasectDexEntry + db "@" + +PsyduckDexEntry: ; 408da (10:48da) + db "DUCK@" + db 2,7 + dw 430 + TX_FAR _PsyduckDexEntry + db "@" + +DrowzeeDexEntry: ; 408e8 (10:48e8) + db "HYPNOSIS@" + db 3,3 + dw 710 + TX_FAR _DrowzeeDexEntry + db "@" + +GolemDexEntry: ; 408fa (10:48fa) + db "MEGATON@" + db 4,7 + dw 6620 + TX_FAR _GolemDexEntry + db "@" + +MagmarDexEntry: ; 4090b (10:490b) + db "SPITFIRE@" + db 4,3 + dw 980 + TX_FAR _MagmarDexEntry + db "@" + +ElectabuzzDexEntry: ; 4091d (10:491d) + db "ELECTRIC@" + db 3,7 + dw 660 + TX_FAR _ElectabuzzDexEntry + db "@" + +MagnetonDexEntry: ; 4092f (10:492f) + db "MAGNET@" + db 3,3 + dw 1320 + TX_FAR _MagnetonDexEntry + db "@" + +KoffingDexEntry: ; 4093f (10:493f) + db "POISON GAS@" + db 2,0 + dw 20 + TX_FAR _KoffingDexEntry + db "@" + +MankeyDexEntry: ; 40953 (10:4953) + db "PIG MONKEY@" + db 1,8 + dw 620 + TX_FAR _MankeyDexEntry + db "@" + +SeelDexEntry: ; 40967 (10:4967) + db "SEA LION@" + db 3,7 + dw 1980 + TX_FAR _SeelDexEntry + db "@" + +DiglettDexEntry: ; 40979 (10:4979) + db "MOLE@" + db 0,8 + dw 20 + TX_FAR _DiglettDexEntry + db "@" + +TaurosDexEntry: ; 40987 (10:4987) + db "WILD BULL@" + db 4,7 + dw 1950 + TX_FAR _TaurosDexEntry + db "@" + +FarfetchdDexEntry: ; 4099a (10:499a) + db "WILD DUCK@" + db 2,7 + dw 330 + TX_FAR _FarfetchdDexEntry + db "@" + +VenonatDexEntry: ; 409ad (10:49ad) + db "INSECT@" + db 3,3 + dw 660 + TX_FAR _VenonatDexEntry + db "@" + +DragoniteDexEntry: ; 409bd (10:49bd) + db "DRAGON@" + db 7,3 + dw 4630 + TX_FAR _DragoniteDexEntry + db "@" + +DoduoDexEntry: ; 409cd (10:49cd) + db "TWIN BIRD@" + db 4,7 + dw 860 + TX_FAR _DoduoDexEntry + db "@" + +PoliwagDexEntry: ; 409e0 (10:49e0) + db "TADPOLE@" + db 2,0 + dw 270 + TX_FAR _PoliwagDexEntry + db "@" + +JynxDexEntry: ; 409f1 (10:49f1) + db "HUMANSHAPE@" + db 4,7 + dw 900 + TX_FAR _JynxDexEntry + db "@" + +MoltresDexEntry: ; 40a05 (10:4a05) + db "FLAME@" + db 6,7 + dw 1320 + TX_FAR _MoltresDexEntry + db "@" + +ArticunoDexEntry: ; 40a14 (10:4a14) + db "FREEZE@" + db 5,7 + dw 1220 + TX_FAR _ArticunoDexEntry + db "@" + +ZapdosDexEntry: ; 40a24 (10:4a24) + db "ELECTRIC@" + db 5,3 + dw 1160 + TX_FAR _ZapdosDexEntry + db "@" + +DittoDexEntry: ; 40a36 (10:4a36) + db "TRANSFORM@" + db 1,0 + dw 90 + TX_FAR _DittoDexEntry + db "@" + +MeowthDexEntry: ; 40a49 (10:4a49) + db "SCRATCHCAT@" + db 1,4 + dw 90 + TX_FAR _MeowthDexEntry + db "@" + +KrabbyDexEntry: ; 40a5d (10:4a5d) + db "RIVER CRAB@" + db 1,4 + dw 140 + TX_FAR _KrabbyDexEntry + db "@" + +VulpixDexEntry: ; 40a71 (10:4a71) + db "FOX@" + db 2,0 + dw 220 + TX_FAR _VulpixDexEntry + db "@" + +NinetalesDexEntry: ; 40a7e (10:4a7e) + db "FOX@" + db 3,7 + dw 440 + TX_FAR _NinetalesDexEntry + db "@" + +PikachuDexEntry: ; 40a8b (10:4a8b) + db "MOUSE@" + db 1,4 + dw 130 + TX_FAR _PikachuDexEntry + db "@" + +RaichuDexEntry: ; 40a9a (10:4a9a) + db "MOUSE@" + db 2,7 + dw 660 + TX_FAR _RaichuDexEntry + db "@" + +DratiniDexEntry: ; 40aa9 (10:4aa9) + db "DRAGON@" + db 5,11 + dw 70 + TX_FAR _DratiniDexEntry + db "@" + +DragonairDexEntry: ; 40ab9 (10:4ab9) + db "DRAGON@" + db 13,1 + dw 360 + TX_FAR _DragonairDexEntry + db "@" + +KabutoDexEntry: ; 40ac9 (10:4ac9) + db "SHELLFISH@" + db 1,8 + dw 250 + TX_FAR _KabutoDexEntry + db "@" + +KabutopsDexEntry: ; 40adc (10:4adc) + db "SHELLFISH@" + db 4,3 + dw 890 + TX_FAR _KabutopsDexEntry + db "@" + +HorseaDexEntry: ; 40aef (10:4aef) + db "DRAGON@" + db 1,4 + dw 180 + TX_FAR _HorseaDexEntry + db "@" + +SeadraDexEntry: ; 40aff (10:4aff) + db "DRAGON@" + db 3,11 + dw 550 + TX_FAR _SeadraDexEntry + db "@" + +SandshrewDexEntry: ; 40b0f (10:4b0f) + db "MOUSE@" + db 2,0 + dw 260 + TX_FAR _SandshrewDexEntry + db "@" + +SandslashDexEntry: ; 40b1e (10:4b1e) + db "MOUSE@" + db 3,3 + dw 650 + TX_FAR _SandslashDexEntry + db "@" + +OmanyteDexEntry: ; 40b2d (10:4b2d) + db "SPIRAL@" + db 1,4 + dw 170 + TX_FAR _OmanyteDexEntry + db "@" + +OmastarDexEntry: ; 40b3d (10:4b3d) + db "SPIRAL@" + db 3,3 + dw 770 + TX_FAR _OmastarDexEntry + db "@" + +JigglypuffDexEntry: ; 40b4d (10:4b4d) + db "BALLOON@" + db 1,8 + dw 120 + TX_FAR _JigglypuffDexEntry + db "@" + +WigglytuffDexEntry: ; 40b5e (10:4b5e) + db "BALLOON@" + db 3,3 + dw 260 + TX_FAR _WigglytuffDexEntry + db "@" + +EeveeDexEntry: ; 40b6f (10:4b6f) + db "EVOLUTION@" + db 1,0 + dw 140 + TX_FAR _EeveeDexEntry + db "@" + +FlareonDexEntry: ; 40b82 (10:4b82) + db "FLAME@" + db 2,11 + dw 550 + TX_FAR _FlareonDexEntry + db "@" + +JolteonDexEntry: ; 40b91 (10:4b91) + db "LIGHTNING@" + db 2,7 + dw 540 + TX_FAR _JolteonDexEntry + db "@" + +VaporeonDexEntry: ; 40ba4 (10:4ba4) + db "BUBBLE JET@" + db 3,3 + dw 640 + TX_FAR _VaporeonDexEntry + db "@" + +MachopDexEntry: ; 40bb8 (10:4bb8) + db "SUPERPOWER@" + db 2,7 + dw 430 + TX_FAR _MachopDexEntry + db "@" + +ZubatDexEntry: ; 40bcc (10:4bcc) + db "BAT@" + db 2,7 + dw 170 + TX_FAR _ZubatDexEntry + db "@" + +EkansDexEntry: ; 40bd9 (10:4bd9) + db "SNAKE@" + db 6,7 + dw 150 + TX_FAR _EkansDexEntry + db "@" + +ParasDexEntry: ; 40be8 (10:4be8) + db "MUSHROOM@" + db 1,0 + dw 120 + TX_FAR _ParasDexEntry + db "@" + +PoliwhirlDexEntry: ; 40bfa (10:4bfa) + db "TADPOLE@" + db 3,3 + dw 440 + TX_FAR _PoliwhirlDexEntry + db "@" + +PoliwrathDexEntry: ; 40c0b (10:4c0b) + db "TADPOLE@" + db 4,3 + dw 1190 + TX_FAR _PoliwrathDexEntry + db "@" + +WeedleDexEntry: ; 40c1c (10:4c1c) + db "HAIRY BUG@" + db 1,0 + dw 70 + TX_FAR _WeedleDexEntry + db "@" + +KakunaDexEntry: ; 40c2f (10:4c2f) + db "COCOON@" + db 2,0 + dw 220 + TX_FAR _KakunaDexEntry + db "@" + +BeedrillDexEntry: ; 40c3f (10:4c3f) + db "POISON BEE@" + db 3,3 + dw 650 + TX_FAR _BeedrillDexEntry + db "@" + +DodrioDexEntry: ; 40c53 (10:4c53) + db "TRIPLEBIRD@" + db 5,11 + dw 1880 + TX_FAR _DodrioDexEntry + db "@" + +PrimeapeDexEntry: ; 40c67 (10:4c67) + db "PIG MONKEY@" + db 3,3 + dw 710 + TX_FAR _PrimeapeDexEntry + db "@" + +DugtrioDexEntry: ; 40c7b (10:4c7b) + db "MOLE@" + db 2,4 + dw 730 + TX_FAR _DugtrioDexEntry + db "@" + +VenomothDexEntry: ; 40c89 (10:4c89) + db "POISONMOTH@" + db 4,11 + dw 280 + TX_FAR _VenomothDexEntry + db "@" + +DewgongDexEntry: ; 40c9d (10:4c9d) + db "SEA LION@" + db 5,7 + dw 2650 + TX_FAR _DewgongDexEntry + db "@" + +CaterpieDexEntry: ; 40caf (10:4caf) + db "WORM@" + db 1,0 + dw 60 + TX_FAR _CaterpieDexEntry + db "@" + +MetapodDexEntry: ; 40cbd (10:4cbd) + db "COCOON@" + db 2,4 + dw 220 + TX_FAR _MetapodDexEntry + db "@" + +ButterfreeDexEntry: ; 40ccd (10:4ccd) + db "BUTTERFLY@" + db 3,7 + dw 710 + TX_FAR _ButterfreeDexEntry + db "@" + +MachampDexEntry: ; 40ce0 (10:4ce0) + db "SUPERPOWER@" + db 5,3 + dw 2870 + TX_FAR _MachampDexEntry + db "@" + +GolduckDexEntry: ; 40cf4 (10:4cf4) + db "DUCK@" + db 5,7 + dw 1690 + TX_FAR _GolduckDexEntry + db "@" + +HypnoDexEntry: ; 40d02 (10:4d02) + db "HYPNOSIS@" + db 5,3 + dw 1670 + TX_FAR _HypnoDexEntry + db "@" + +GolbatDexEntry: ; 40d14 (10:4d14) + db "BAT@" + db 5,3 + dw 1210 + TX_FAR _GolbatDexEntry + db "@" + +MewtwoDexEntry: ; 40d21 (10:4d21) + db "GENETIC@" + db 6,7 + dw 2690 + TX_FAR _MewtwoDexEntry + db "@" + +SnorlaxDexEntry: ; 40d32 (10:4d32) + db "SLEEPING@" + db 6,11 + dw 10140 + TX_FAR _SnorlaxDexEntry + db "@" + +MagikarpDexEntry: ; 40d44 (10:4d44) + db "FISH@" + db 2,11 + dw 220 + TX_FAR _MagikarpDexEntry + db "@" + +MukDexEntry: ; 40d52 (10:4d52) + db "SLUDGE@" + db 3,11 + dw 660 + TX_FAR _MukDexEntry + db "@" + +KinglerDexEntry: ; 40d62 (10:4d62) + db "PINCER@" + db 4,3 + dw 1320 + TX_FAR _KinglerDexEntry + db "@" + +CloysterDexEntry: ; 40d72 (10:4d72) + db "BIVALVE@" + db 4,11 + dw 2920 + TX_FAR _CloysterDexEntry + db "@" + +ElectrodeDexEntry: ; 40d83 (10:4d83) + db "BALL@" + db 3,11 + dw 1470 + TX_FAR _ElectrodeDexEntry + db "@" + +ClefableDexEntry: ; 40d91 (10:4d91) + db "FAIRY@" + db 4,3 + dw 880 + TX_FAR _ClefableDexEntry + db "@" + +WeezingDexEntry: ; 40da0 (10:4da0) + db "POISON GAS@" + db 3,11 + dw 210 + TX_FAR _WeezingDexEntry + db "@" + +PersianDexEntry: ; 40db4 (10:4db4) + db "CLASSY CAT@" + db 3,3 + dw 710 + TX_FAR _PersianDexEntry + db "@" + +MarowakDexEntry: ; 40dc8 (10:4dc8) + db "BONEKEEPER@" + db 3,3 + dw 990 + TX_FAR _MarowakDexEntry + db "@" + +HaunterDexEntry: ; 40ddc (10:4ddc) + db "GAS@" + db 5,3 + dw 2 + TX_FAR _HaunterDexEntry + db "@" + +AbraDexEntry: ; 40de9 (10:4de9) + db "PSI@" + db 2,11 + dw 430 + TX_FAR _AbraDexEntry + db "@" + +AlakazamDexEntry: ; 40df6 (10:4df6) + db "PSI@" + db 4,11 + dw 1060 + TX_FAR _AlakazamDexEntry + db "@" + +PidgeottoDexEntry: ; 40e03 (10:4e03) + db "BIRD@" + db 3,7 + dw 660 + TX_FAR _PidgeottoDexEntry + db "@" + +PidgeotDexEntry: ; 40e11 (10:4e11) + db "BIRD@" + db 4,11 + dw 870 + TX_FAR _PidgeotDexEntry + db "@" + +StarmieDexEntry: ; 40e1f (10:4e1f) + db "MYSTERIOUS@" + db 3,7 + dw 1760 + TX_FAR _StarmieDexEntry + db "@" + +BulbasaurDexEntry: ; 40e33 (10:4e33) + db "SEED@" + db 2,4 + dw 150 + TX_FAR _BulbasaurDexEntry + db "@" + +VenusaurDexEntry: ; 40e41 (10:4e41) + db "SEED@" + db 6,7 + dw 2210 + TX_FAR _VenusaurDexEntry + db "@" + +TentacruelDexEntry: ; 40e4f (10:4e4f) + db "JELLYFISH@" + db 5,3 + dw 1210 + TX_FAR _TentacruelDexEntry + db "@" + +GoldeenDexEntry: ; 40e62 (10:4e62) + db "GOLDFISH@" + db 2,0 + dw 330 + TX_FAR _GoldeenDexEntry + db "@" + +SeakingDexEntry: ; 40e74 (10:4e74) + db "GOLDFISH@" + db 4,3 + dw 860 + TX_FAR _SeakingDexEntry + db "@" + +PonytaDexEntry: ; 40e86 (10:4e86) + db "FIRE HORSE@" + db 3,3 + dw 660 + TX_FAR _PonytaDexEntry + db "@" + +RapidashDexEntry: ; 40e9a (10:4e9a) + db "FIRE HORSE@" + db 5,7 + dw 2090 + TX_FAR _RapidashDexEntry + db "@" + +RattataDexEntry: ; 40eae (10:4eae) + db "RAT@" + db 1,0 + dw 80 + TX_FAR _RattataDexEntry + db "@" + +RaticateDexEntry: ; 40ebb (10:4ebb) + db "RAT@" + db 2,4 + dw 410 + TX_FAR _RaticateDexEntry + db "@" + +NidorinoDexEntry: ; 40ec8 (10:4ec8) + db "POISON PIN@" + db 2,11 + dw 430 + TX_FAR _NidorinoDexEntry + db "@" + +NidorinaDexEntry: ; 40edc (10:4edc) + db "POISON PIN@" + db 2,7 + dw 440 + TX_FAR _NidorinaDexEntry + db "@" + +GeodudeDexEntry: ; 40ef0 (10:4ef0) + db "ROCK@" + db 1,4 + dw 440 + TX_FAR _GeodudeDexEntry + db "@" + +PorygonDexEntry: ; 40efe (10:4efe) + db "VIRTUAL@" + db 2,7 + dw 800 + TX_FAR _PorygonDexEntry + db "@" + +AerodactylDexEntry: ; 40f0f (10:4f0f) + db "FOSSIL@" + db 5,11 + dw 1300 + TX_FAR _AerodactylDexEntry + db "@" + +MagnemiteDexEntry: ; 40f1f (10:4f1f) + db "MAGNET@" + db 1,0 + dw 130 + TX_FAR _MagnemiteDexEntry + db "@" + +CharmanderDexEntry: ; 40f2f (10:4f2f) + db "LIZARD@" + db 2,0 + dw 190 + TX_FAR _CharmanderDexEntry + db "@" + +SquirtleDexEntry: ; 40f3f (10:4f3f) + db "TINYTURTLE@" + db 1,8 + dw 200 + TX_FAR _SquirtleDexEntry + db "@" + +CharmeleonDexEntry: ; 40f53 (10:4f53) + db "FLAME@" + db 3,7 + dw 420 + TX_FAR _CharmeleonDexEntry + db "@" + +WartortleDexEntry: ; 40f62 (10:4f62) + db "TURTLE@" + db 3,3 + dw 500 + TX_FAR _WartortleDexEntry + db "@" + +CharizardDexEntry: ; 40f72 (10:4f72) + db "FLAME@" + db 5,7 + dw 2000 + TX_FAR _CharizardDexEntry + db "@" + +OddishDexEntry: ; 40f81 (10:4f81) + db "WEED@" + db 1,8 + dw 120 + TX_FAR _OddishDexEntry + db "@" + +GloomDexEntry: ; 40f8f (10:4f8f) + db "WEED@" + db 2,7 + dw 190 + TX_FAR _GloomDexEntry + db "@" + +VileplumeDexEntry: ; 40f9d (10:4f9d) + db "FLOWER@" + db 3,11 + dw 410 + TX_FAR _VileplumeDexEntry + db "@" + +BellsproutDexEntry: ; 40fad (10:4fad) + db "FLOWER@" + db 2,4 + dw 90 + TX_FAR _BellsproutDexEntry + db "@" + +WeepinbellDexEntry: ; 40fbd (10:4fbd) + db "FLYCATCHER@" + db 3,3 + dw 140 + TX_FAR _WeepinbellDexEntry + db "@" + +VictreebelDexEntry: ; 40fd1 (10:4fd1) + db "FLYCATCHER@" + db 5,7 + dw 340 + TX_FAR _VictreebelDexEntry + db "@" + +MissingNoDexEntry: ; 40fe5 (10:4fe5) + db "???@" + db 10 ; 1.0 m + db 100 ; 10.0 kg + db 0,"コメント さくせいちゅう@" ; コメント作成中 (Comment to be written) diff --git a/data/pokedex_order.asm b/data/pokedex_order.asm new file mode 100755 index 00000000..46a1717a --- /dev/null +++ b/data/pokedex_order.asm @@ -0,0 +1,191 @@ +PokedexOrder: ; 41024 (10:5024) + db DEX_RHYDON + db DEX_KANGASKHAN + db DEX_NIDORAN_M + db DEX_CLEFAIRY + db DEX_SPEAROW + db DEX_VOLTORB + db DEX_NIDOKING + db DEX_SLOWBRO + db DEX_IVYSAUR + db DEX_EXEGGUTOR + db DEX_LICKITUNG + db DEX_EXEGGCUTE + db DEX_GRIMER + db DEX_GENGAR + db DEX_NIDORAN_F + db DEX_NIDOQUEEN + db DEX_CUBONE + db DEX_RHYHORN + db DEX_LAPRAS + db DEX_ARCANINE + db DEX_MEW + db DEX_GYARADOS + db DEX_SHELLDER + db DEX_TENTACOOL + db DEX_GASTLY + db DEX_SCYTHER + db DEX_STARYU + db DEX_BLASTOISE + db DEX_PINSIR + db DEX_TANGELA + db 0 ; MISSINGNO. + db 0 ; MISSINGNO. + db DEX_GROWLITHE + db DEX_ONIX + db DEX_FEAROW + db DEX_PIDGEY + db DEX_SLOWPOKE + db DEX_KADABRA + db DEX_GRAVELER + db DEX_CHANSEY + db DEX_MACHOKE + db DEX_MR_MIME + db DEX_HITMONLEE + db DEX_HITMONCHAN + db DEX_ARBOK + db DEX_PARASECT + db DEX_PSYDUCK + db DEX_DROWZEE + db DEX_GOLEM + db 0 ; MISSINGNO. + db DEX_MAGMAR + db 0 ; MISSINGNO. + db DEX_ELECTABUZZ + db DEX_MAGNETON + db DEX_KOFFING + db 0 ; MISSINGNO. + db DEX_MANKEY + db DEX_SEEL + db DEX_DIGLETT + db DEX_TAUROS + db 0 ; MISSINGNO. + db 0 ; MISSINGNO. + db 0 ; MISSINGNO. + db DEX_FARFETCH_D + db DEX_VENONAT + db DEX_DRAGONITE + db 0 ; MISSINGNO. + db 0 ; MISSINGNO. + db 0 ; MISSINGNO. + db DEX_DODUO + db DEX_POLIWAG + db DEX_JYNX + db DEX_MOLTRES + db DEX_ARTICUNO + db DEX_ZAPDOS + db DEX_DITTO + db DEX_MEOWTH + db DEX_KRABBY + db 0 ; MISSINGNO. + db 0 ; MISSINGNO. + db 0 ; MISSINGNO. + db DEX_VULPIX + db DEX_NINETALES + db DEX_PIKACHU + db DEX_RAICHU + db 0 ; MISSINGNO. + db 0 ; MISSINGNO. + db DEX_DRATINI + db DEX_DRAGONAIR + db DEX_KABUTO + db DEX_KABUTOPS + db DEX_HORSEA + db DEX_SEADRA + db 0 ; MISSINGNO. + db 0 ; MISSINGNO. + db DEX_SANDSHREW + db DEX_SANDSLASH + db DEX_OMANYTE + db DEX_OMASTAR + db DEX_JIGGLYPUFF + db DEX_WIGGLYTUFF + db DEX_EEVEE + db DEX_FLAREON + db DEX_JOLTEON + db DEX_VAPOREON + db DEX_MACHOP + db DEX_ZUBAT + db DEX_EKANS + db DEX_PARAS + db DEX_POLIWHIRL + db DEX_POLIWRATH + db DEX_WEEDLE + db DEX_KAKUNA + db DEX_BEEDRILL + db 0 ; MISSINGNO. + db DEX_DODRIO + db DEX_PRIMEAPE + db DEX_DUGTRIO + db DEX_VENOMOTH + db DEX_DEWGONG + db 0 ; MISSINGNO. + db 0 ; MISSINGNO. + db DEX_CATERPIE + db DEX_METAPOD + db DEX_BUTTERFREE + db DEX_MACHAMP + db 0 ; MISSINGNO. + db DEX_GOLDUCK + db DEX_HYPNO + db DEX_GOLBAT + db DEX_MEWTWO + db DEX_SNORLAX + db DEX_MAGIKARP + db 0 ; MISSINGNO. + db 0 ; MISSINGNO. + db DEX_MUK + db 0 ; MISSINGNO. + db DEX_KINGLER + db DEX_CLOYSTER + db 0 ; MISSINGNO. + db DEX_ELECTRODE + db DEX_CLEFABLE + db DEX_WEEZING + db DEX_PERSIAN + db DEX_MAROWAK + db 0 ; MISSINGNO. + db DEX_HAUNTER + db DEX_ABRA + db DEX_ALAKAZAM + db DEX_PIDGEOTTO + db DEX_PIDGEOT + db DEX_STARMIE + db DEX_BULBASAUR + db DEX_VENUSAUR + db DEX_TENTACRUEL + db 0 ; MISSINGNO. + db DEX_GOLDEEN + db DEX_SEAKING + db 0 ; MISSINGNO. + db 0 ; MISSINGNO. + db 0 ; MISSINGNO. + db 0 ; MISSINGNO. + db DEX_PONYTA + db DEX_RAPIDASH + db DEX_RATTATA + db DEX_RATICATE + db DEX_NIDORINO + db DEX_NIDORINA + db DEX_GEODUDE + db DEX_PORYGON + db DEX_AERODACTYL + db 0 ; MISSINGNO. + db DEX_MAGNEMITE + db 0 ; MISSINGNO. + db 0 ; MISSINGNO. + db DEX_CHARMANDER + db DEX_SQUIRTLE + db DEX_CHARMELEON + db DEX_WARTORTLE + db DEX_CHARIZARD + db 0 ; MISSINGNO. + db 0 ; MISSINGNO. + db 0 ; MISSINGNO. + db 0 ; MISSINGNO. + db DEX_ODDISH + db DEX_GLOOM + db DEX_VILEPLUME + db DEX_BELLSPROUT + db DEX_WEEPINBELL + db DEX_VICTREEBEL diff --git a/data/prize_mon_levels.asm b/data/prize_mon_levels.asm new file mode 100755 index 00000000..6b10eb2f --- /dev/null +++ b/data/prize_mon_levels.asm @@ -0,0 +1,19 @@ +PrizeMonLevelDictionary: ; 5298a (14:698a) +IF _RED + db ABRA,9 + db CLEFAIRY,8 + db NIDORINA,17 + + db DRATINI,18 + db SCYTHER,25 + db PORYGON,26 +ENDC +IF _BLUE + db ABRA,6 + db CLEFAIRY,12 + db NIDORINO,17 + + db PINSIR,20 + db DRATINI,24 + db PORYGON,18 +ENDC diff --git a/data/prizes.asm b/data/prizes.asm new file mode 100755 index 00000000..1fab54fc --- /dev/null +++ b/data/prizes.asm @@ -0,0 +1,69 @@ +PrizeDifferentMenuPtrs: ; 52843 (14:6843) + dw PrizeMenuMon1Entries + dw PrizeMenuMon1Cost + + dw PrizeMenuMon2Entries + dw PrizeMenuMon2Cost + + dw PrizeMenuTMsEntries + dw PrizeMenuTMsCost + +NoThanksText: ; 5284f (14:684f) + db "NO THANKS@" + +PrizeMenuMon1Entries: ; 52859 (14:6859) + db ABRA + db CLEFAIRY +IF _RED + db NIDORINA +ENDC +IF _BLUE + db NIDORINO +ENDC + db "@" +PrizeMenuMon1Cost: ; 5285d (14:685d) +IF _RED + db $01,$80 + db $05,$00 +ENDC +IF _BLUE + db $01,$20 + db $07,$50 +ENDC + db $12,$00 + db "@" + +PrizeMenuMon2Entries: ; 52864 (14:6864) +IF _RED + db DRATINI + db SCYTHER +ENDC +IF _BLUE + db PINSIR + db DRATINI +ENDC + db PORYGON + db "@" +PrizeMenuMon2Cost: ; 52868 (14:6868) +IF _RED + db $28,$00 + db $55,$00 + db $99,$99 +ENDC +IF _BLUE + db $25,$00 + db $46,$00 + db $65,$00 +ENDC + db "@" + +PrizeMenuTMsEntries: ; 5286f (14:686f) + db TM_23 + db TM_15 + db TM_50 + db "@" +PrizeMenuTMsCost: ; 52873 (14:6873) + db $33,$00 ; 3300 Coins + db $55,$00 ; 5500 Coins + db $77,$00 ; 7700 Coins + db "@" diff --git a/data/sgb_border.asm b/data/sgb_border.asm new file mode 100755 index 00000000..716a991e --- /dev/null +++ b/data/sgb_border.asm @@ -0,0 +1,62 @@ +BorderPalettes: ; 72788 (1c:6788) +IF _RED + INCBIN "gfx/red/sgbborder.map" +ENDC +IF _BLUE + INCBIN "gfx/blue/sgbborder.map" +ENDC + + ds $100 + +IF _RED + RGB 30,29,29 ; PAL_SGB1 + RGB 25,22,25 + RGB 25,17,21 + RGB 24,14,12 +ENDC +IF _BLUE + RGB 0,0,0 ; PAL_SGB1 (the first color is not defined, but if used, turns up as 30,29,29... o_O) + RGB 10,17,26 + RGB 5,9,20 + RGB 16,20,27 +ENDC + + ds $18 + +IF _RED + RGB 30,29,29 ; PAL_SGB2 + RGB 22,31,16 + RGB 27,20,6 + RGB 15,15,15 +ENDC +IF _BLUE + RGB 30,29,29 ; PAL_SGB2 + RGB 27,11,6 + RGB 5,9,20 + RGB 28,25,15 +ENDC + + ds $18 + +IF _RED + RGB 30,29,29 ; PAL_SGB3 + RGB 31,31,17 + RGB 18,21,29 + RGB 15,15,15 +ENDC +IF _BLUE + RGB 30,29,29 ; PAL_SGB3 + RGB 12,15,11 + RGB 5,9,20 + RGB 14,22,17 +ENDC + + ds $18 + +SGBBorderGraphics: ; 72fe8 (1c:6fe8) +IF _RED + INCBIN "gfx/red/sgbborder.w128.2bpp" +ENDC +IF _BLUE + INCBIN "gfx/blue/sgbborder.w128.2bpp" +ENDC diff --git a/data/sgb_packets.asm b/data/sgb_packets.asm new file mode 100755 index 00000000..92bea812 --- /dev/null +++ b/data/sgb_packets.asm @@ -0,0 +1,142 @@ +BlkPacket_WholeScreen: ; 7219e (1c:619e) + db $21,$01,$03,$00,$00,$00,$13,$11,$00,$00,$00,$00,$00,$00,$00,$00 + db $03,$00,$00,$13,$11,$00,$00 + +BlkPacket_Battle: ; 721b5 (1c:61b5) + db $22,$05,$07,$0a,$00,$0c,$13,$11,$03,$05,$01,$00,$0a,$03,$03,$00 + db $0a,$07,$13,$0a,$03,$0a,$00,$04,$08,$0b,$03,$0f,$0b,$00,$13,$06 + db $03,$00,$00,$13,$0b,$00,$03,$00,$0c,$13,$11,$02,$03,$01,$00,$0a + db $03,$01,$03,$0a,$08,$13,$0a,$00,$03,$00,$04,$08,$0b,$02,$03,$0b + db $00,$13,$07,$03,$00 + +BlkPacket_StatusScreen: ; 721fa (1c:61fa) + db $21,$01,$07,$05,$01,$00,$07,$06,$00,$00,$00,$00,$00,$00,$00,$00 + db $02,$00,$00,$11,$00,$03,$01,$00,$07,$06,$01,$03,$01,$07,$13,$11 + db $00,$03,$08,$00,$13,$06,$00,$00 + +BlkPacket_Pokedex: ; 72222 (1c:6222) + db $21,$01,$07,$05,$01,$01,$08,$08,$00,$00,$00,$00,$00,$00,$00,$00 + db $02,$00,$00,$11,$00,$01,$00,$01,$13,$00,$03,$01,$01,$08,$08,$01 + db $03,$01,$09,$08,$11,$00,$03,$09,$01,$13,$11,$00,$00 + +BlkPacket_Slots: ; 7224f (1c:624f) + db $22,$05,$03,$05,$00,$00,$13,$0b,$03,$0a,$00,$04,$13,$09,$02,$0f + db $00,$06,$13,$07,$03,$00,$04,$04,$0f,$09,$03,$00,$00,$0c,$13,$11 + db $03,$00,$00,$13,$0b,$01,$03,$00,$04,$13,$09,$02,$03,$00,$06,$13 + db $07,$03,$03,$04,$04,$0f,$09,$00,$03,$00,$0c,$13,$11,$00,$00 + +BlkPacket_Titlescreen: ; 7228e (1c:628e) + db $22,$03,$03,$00,$00,$00,$13,$07,$02,$05,$00,$08,$13,$09,$03,$0a + db $00,$0a,$13,$11,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + db $03,$00,$00,$13,$07,$00,$03,$00,$08,$13,$09,$01,$03,$00,$0a,$13 + db $11,$02,$00 + +BlkPacket_NidorinoIntro: ; 722c1 (1c:62c1) + db $22,$03,$03,$05,$00,$00,$13,$03,$03,$00,$00,$04,$13,$0d,$03,$05 + db $00,$0e,$13,$11,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + db $03,$00,$00,$13,$03,$01,$03,$00,$04,$13,$0d,$00,$03,$00,$0e,$13 + db $11,$01,$00 + +BlkPacket_PartyMenu: ; 722f4 (1c:62f4) + db $23,$07,$06,$10,$01,$00,$02,$0c,$02,$00,$05,$01,$0b,$01,$02,$00 + db $05,$03,$0b,$03,$02,$00,$05,$05,$0b,$05,$02,$00,$05,$07,$0b,$07 + db $02,$00,$05,$09,$0b,$09,$02,$00,$05,$0b,$0b,$0b,$00,$00,$00,$00 + db $02,$00,$00,$11,$01,$03,$01,$00,$02,$0c,$00,$03,$01,$0d,$02,$11 + db $01,$03,$03,$00,$13,$11,$01,$03,$0c,$00,$12,$01,$00,$03,$0c,$02 + db $12,$03,$00,$03,$0c,$04,$12,$05,$00,$03,$0c,$06,$12,$07,$00,$03 + db $0c,$08,$12,$09,$00,$03,$0c,$0a,$12,$0b,$00,$00 + +BlkPacket_TrainerCard: ; 72360 (1c:6360) + db $24,$0a,$02,$00,$03,$0c,$04,$0d,$02,$05,$07,$0c,$08,$0d,$02,$0f + db $0b,$0c,$0c,$0d,$02,$0a,$10,$0b,$11,$0c,$02,$05,$0e,$0d,$0f,$0e + db $02,$0f,$10,$0d,$11,$0e,$02,$0a,$03,$0f,$04,$10,$02,$0f,$07,$0f + db $08,$10,$02,$0a,$0b,$0f,$0c,$10,$02,$05,$0f,$0f,$10,$10,$00,$00 + db $03,$03,$0c,$04,$0d,$00,$03,$07,$0c,$08,$0d,$01,$03,$0b,$0c,$0c + db $0d,$03,$03,$10,$0b,$11,$0c,$02,$03,$0e,$0d,$0f,$0e,$01,$03,$10 + db $0d,$11,$0e,$03,$03,$03,$0f,$04,$10,$02,$03,$07,$0f,$08,$10,$03 + db $03,$0b,$0f,$0c,$10,$02,$03,$0f,$0f,$10,$10,$01,$00 + +BlkPacket_GameFreakIntro: ; 723dd (1c:63dd) + db $22,$03,$07,$05,$05,$0b,$07,$0d,$02,$0a,$08,$0b,$09,$0d,$03,$0f + db $0c,$0b,$0e,$0d,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + db $03,$00,$00,$13,$0a,$00,$03,$00,$0b,$04,$0d,$00,$03,$05,$0b,$07 + db $0d,$01,$03,$08,$0b,$13,$0d,$00,$03,$00,$0e,$13,$11,$00,$03,$08 + db $0b,$09,$0d,$02,$03,$0c,$0b,$0e,$0d,$03,$00 + +PalPacket_Empty: ; 72428 (1c:6428) + db $51,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + +PalPacket_PartyMenu: ; 72438 (1c:6438) + db $51,PAL_MEWMON,$00,PAL_GREENBAR,$00,PAL_YELLOWBAR,$00,PAL_REDBAR,$00,$00,$00,$00,$00,$00,$00,$00 + +PalPacket_Black: ; 72448 (1c:6448) + db $51,PAL_BLACK,$00,PAL_BLACK,$00,PAL_BLACK,$00,PAL_BLACK,$00,$00,$00,$00,$00,$00,$00,$00 + +PalPacket_TownMap: ; 72458 (1c:6458) + db $51,PAL_TOWNMAP,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + +PalPacket_Pokedex: ; 72468 (1c:6468) + db $51,PAL_BROWNMON,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + +PalPacket_Slots: ; 72478 (1c:6478) + db $51,PAL_SLOTS1,$00,PAL_SLOTS2,$00,PAL_SLOTS3,$00,PAL_SLOTS4,$00,$00,$00,$00,$00,$00,$00,$00 + +PalPacket_Titlescreen: ; 72488 (1c:6488) + db $51,PAL_LOGO2,$00,PAL_LOGO1,$00,PAL_MEWMON,$00,PAL_PURPLEMON,$00,$00,$00,$00,$00,$00,$00,$00 + +PalPacket_TrainerCard: ; 72498 (1c:6498) + db $51,PAL_MEWMON,$00,PAL_BADGE,$00,PAL_REDMON,$00,PAL_YELLOWMON,$00,$00,$00,$00,$00,$00,$00,$00 + +PalPacket_Generic: ; 724a8 (1c:64a8) + db $51,PAL_MEWMON,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + +PalPacket_NidorinoIntro: ; 724b8 (1c:64b8) + db $51,PAL_PURPLEMON,$00,PAL_BLACK,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + +PalPacket_GameFreakIntro: ; 724c8 (1c:64c8) + db $51,PAL_GAMEFREAK,$00,PAL_REDMON,$00,PAL_VIRIDIAN,$00,PAL_BLUEMON,$00,$00,$00,$00,$00,$00,$00,$00 + +PalPacket_724d8: ; 724d8 (1c:64d8) + db $59,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + +PalPacket_724e8: ; 724e8 (1c:64e8) + db $89,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + +PalPacket_724f8: ; 724f8 (1c:64f8) + db $89,$01,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + +PalPacket_72508: ; 72508 (1c:6508) + db $99,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + +PalPacket_72518: ; 72518 (1c:6518) + db $A1,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + +PalPacket_72528: ; 72528 (1c:6528) + db $B9,$01,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + +PalPacket_72538: ; 72538 (1c:6538) + db $B9,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + +PalPacket_72548: ; 72548 (1c:6548) + db $79,$5D,$08,$00,$0B,$8C,$D0,$F4,$60,$00,$00,$00,$00,$00,$00,$00 + +PalPacket_72558: ; 72558 (1c:6558) + db $79,$52,$08,$00,$0B,$A9,$E7,$9F,$01,$C0,$7E,$E8,$E8,$E8,$E8,$E0 + +PalPacket_72568: ; 72568 (1c:6568) + db $79,$47,$08,$00,$0B,$C4,$D0,$16,$A5,$CB,$C9,$05,$D0,$10,$A2,$28 + +PalPacket_72578: ; 72578 (1c:6578) + db $79,$3C,$08,$00,$0B,$F0,$12,$A5,$C9,$C9,$C8,$D0,$1C,$A5,$CA,$C9 + +PalPacket_72588: ; 72588 (1c:6588) + db $79,$31,$08,$00,$0B,$0C,$A5,$CA,$C9,$7E,$D0,$06,$A5,$CB,$C9,$7E + +PalPacket_72598: ; 72598 (1c:6598) + db $79,$26,$08,$00,$0B,$39,$CD,$48,$0C,$D0,$34,$A5,$C9,$C9,$80,$D0 + +PalPacket_725a8: ; 725a8 (1c:65a8) + db $79,$1B,$08,$00,$0B,$EA,$EA,$EA,$EA,$EA,$A9,$01,$CD,$4F,$0C,$D0 + +PalPacket_725b8: ; 725b8 (1c:65b8) + db $79,$10,$08,$00,$0B,$4C,$20,$08,$EA,$EA,$EA,$EA,$EA,$60,$EA,$EA diff --git a/data/slot_machine_wheels.asm b/data/slot_machine_wheels.asm new file mode 100755 index 00000000..8f300152 --- /dev/null +++ b/data/slot_machine_wheels.asm @@ -0,0 +1,59 @@ +SlotMachineWheel1: ; 379e5 (d:79e5) + dw SLOTS7 + dw SLOTSMOUSE + dw SLOTSFISH + dw SLOTSBAR + dw SLOTSCHERRY + dw SLOTS7 + dw SLOTSFISH + dw SLOTSBIRD + dw SLOTSBAR + dw SLOTSCHERRY + dw SLOTS7 + dw SLOTSMOUSE + dw SLOTSBIRD + dw SLOTSBAR + dw SLOTSCHERRY + dw SLOTS7 + dw SLOTSMOUSE + dw SLOTSFISH + +SlotMachineWheel2: ; 37a09 (d:7a09) + dw SLOTS7 + dw SLOTSFISH + dw SLOTSCHERRY + dw SLOTSBIRD + dw SLOTSMOUSE + dw SLOTSBAR + dw SLOTSCHERRY + dw SLOTSFISH + dw SLOTSBIRD + dw SLOTSCHERRY + dw SLOTSBAR + dw SLOTSFISH + dw SLOTSBIRD + dw SLOTSCHERRY + dw SLOTSMOUSE + dw SLOTS7 + dw SLOTSFISH + dw SLOTSCHERRY + +SlotMachineWheel3: ; 37a2d (d:7a2d) + dw SLOTS7 + dw SLOTSBIRD + dw SLOTSFISH + dw SLOTSCHERRY + dw SLOTSMOUSE + dw SLOTSBIRD + dw SLOTSFISH + dw SLOTSCHERRY + dw SLOTSMOUSE + dw SLOTSBIRD + dw SLOTSFISH + dw SLOTSCHERRY + dw SLOTSMOUSE + dw SLOTSBIRD + dw SLOTSBAR + dw SLOTS7 + dw SLOTSBIRD + dw SLOTSFISH diff --git a/data/special_warps.asm b/data/special_warps.asm new file mode 100755 index 00000000..418b57f2 --- /dev/null +++ b/data/special_warps.asm @@ -0,0 +1,116 @@ +DungeonWarpList: ; 63bf (1:63bf) + db SEAFOAM_ISLANDS_2,$01 + db SEAFOAM_ISLANDS_2,$02 + db SEAFOAM_ISLANDS_3,$01 + db SEAFOAM_ISLANDS_3,$02 + db SEAFOAM_ISLANDS_4,$01 + db SEAFOAM_ISLANDS_4,$02 + db SEAFOAM_ISLANDS_5,$01 + db SEAFOAM_ISLANDS_5,$02 + db VICTORY_ROAD_2,$02 + db MANSION_1,$01 + db MANSION_1,$02 + db MANSION_2,$03 + db $FF + +DungeonWarpData: ; 63d8 (1:63d8) + FLYWARP_DATA SEAFOAM_ISLANDS_2_WIDTH,7,18 + FLYWARP_DATA SEAFOAM_ISLANDS_2_WIDTH,7,23 + FLYWARP_DATA SEAFOAM_ISLANDS_3_WIDTH,7,19 + FLYWARP_DATA SEAFOAM_ISLANDS_3_WIDTH,7,22 + FLYWARP_DATA SEAFOAM_ISLANDS_4_WIDTH,7,18 + FLYWARP_DATA SEAFOAM_ISLANDS_4_WIDTH,7,19 + FLYWARP_DATA SEAFOAM_ISLANDS_5_WIDTH,14,4 + FLYWARP_DATA SEAFOAM_ISLANDS_5_WIDTH,14,5 + FLYWARP_DATA VICTORY_ROAD_2_WIDTH,16,22 + FLYWARP_DATA MANSION_1_WIDTH,14,16 + FLYWARP_DATA MANSION_1_WIDTH,14,16 + FLYWARP_DATA MANSION_2_WIDTH,14,18 + +;Format: +; db Map_id +; FLYWARP_DATA [Map Width][Y-pos][X-pos] +; db Tileset_id +FirstMapSpec: ; 6420 (1:6420) + db REDS_HOUSE_2F + FLYWARP_DATA REDS_HOUSE_2F_WIDTH,6,3 + db REDS_HOUSE_2 + +BattleCenterSpec1: ; 6428 (1:6428) + db BATTLE_CENTER + FLYWARP_DATA BATTLE_CENTER_WIDTH,4,3 + db CLUB + +BattleCenterSpec2: ; 6430 (1:6430) + db BATTLE_CENTER + FLYWARP_DATA BATTLE_CENTER_WIDTH,4,6 + db CLUB + +TradeCenterSpec1: ; 6438 (1:6438) + db TRADE_CENTER + FLYWARP_DATA TRADE_CENTER_WIDTH,4,3 + db CLUB + +TradeCenterSpec2: ; 6440 (1:6440) + db TRADE_CENTER + FLYWARP_DATA TRADE_CENTER_WIDTH,4,6 + db CLUB + +FlyWarpDataPtr: ; 6448 (1:6448) + db PALLET_TOWN, 0 + dw PalletTownFlyWarp + db VIRIDIAN_CITY, 0 + dw ViridianCityFlyWarp + db PEWTER_CITY, 0 + dw PewterCityFlyWarp + db CERULEAN_CITY, 0 + dw CeruleanCityFlyWarp + db LAVENDER_TOWN, 0 + dw LavenderTownFlyWarp + db VERMILION_CITY, 0 + dw VermilionCityFlyWarp + db CELADON_CITY, 0 + dw CeladonCityFlyWarp + db FUCHSIA_CITY, 0 + dw FuchsiaCityFlyWarp + db CINNABAR_ISLAND, 0 + dw CinnabarIslandFlyWarp + db INDIGO_PLATEAU, 0 + dw IndigoPlateauFlyWarp + db SAFFRON_CITY, 0 + dw SaffronCityFlyWarp + db ROUTE_4, 0 + dw Route4FlyWarp + db ROUTE_10, 0 + dw Route10FlyWarp + +; Original Format: +; [Event Displacement][Y-block][X-block][Y-sub_block][X-sub_block] +; Macro Format: +; FLYWARP_DATA [Map Width][Y-pos][X-pos] +PalletTownFlyWarp: ; 647c (1:647c) + FLYWARP_DATA PALLET_TOWN_WIDTH, 6, 5 +ViridianCityFlyWarp: ; 6482 (1:6482) + FLYWARP_DATA VIRIDIAN_CITY_WIDTH, 26, 23 +PewterCityFlyWarp: ; 6488 (1:6488) + FLYWARP_DATA PEWTER_CITY_WIDTH, 26, 13 +CeruleanCityFlyWarp: ; 648e (1:648e) + FLYWARP_DATA CERULEAN_CITY_WIDTH, 18, 19 +LavenderTownFlyWarp: ; 6494 (1:6494) + FLYWARP_DATA LAVENDER_TOWN_WIDTH, 6, 3 +VermilionCityFlyWarp: ; 649a (1:649a) + FLYWARP_DATA VERMILION_CITY_WIDTH, 4, 11 +CeladonCityFlyWarp: ; 64a0 (1:64a0) + FLYWARP_DATA CELADON_CITY_WIDTH, 10, 41 +FuchsiaCityFlyWarp: ; 64a6 (1:64a6) + FLYWARP_DATA FUCHSIA_CITY_WIDTH, 28, 19 +CinnabarIslandFlyWarp: ; 64ac (1:64ac) + FLYWARP_DATA CINNABAR_ISLAND_WIDTH, 12, 11 +IndigoPlateauFlyWarp: ; 64b2 (1:64b2) + FLYWARP_DATA INDIGO_PLATEAU_WIDTH, 6, 9 +SaffronCityFlyWarp: ; 64b8 (1:64b8) + FLYWARP_DATA SAFFRON_CITY_WIDTH, 30, 9 +Route4FlyWarp: ; 64be (1:64be) + FLYWARP_DATA ROUTE_4_WIDTH, 6, 11 +Route10FlyWarp: ; 64c4 (1:64c4) + FLYWARP_DATA ROUTE_10_WIDTH, 20, 11 diff --git a/data/sprite_sets.asm b/data/sprite_sets.asm new file mode 100755 index 00000000..c5e2d29e --- /dev/null +++ b/data/sprite_sets.asm @@ -0,0 +1,551 @@ +MapSpriteSets: ; 17a64 (5:7a64) + db $01 ; PALLET_TOWN + db $01 ; VIRIDIAN_CITY + db $02 ; PEWTER_CITY + db $02 ; CERULEAN_CITY + db $03 ; LAVENDER_TOWN + db $04 ; VERMILION_CITY + db $05 ; CELADON_CITY + db $0a ; FUCHSIA_CITY + db $01 ; CINNABAR_ISLAND + db $06 ; INDIGO_PLATEAU + db $07 ; SAFFRON_CITY + db $01 ; unused map ID + db $01 ; ROUTE_1 + db $f1 ; ROUTE_2 + db $02 ; ROUTE_3 + db $02 ; ROUTE_4 + db $f9 ; ROUTE_5 + db $fa ; ROUTE_6 + db $fb ; ROUTE_7 + db $fc ; ROUTE_8 + db $02 ; ROUTE_9 + db $f2 ; ROUTE_10 + db $f3 ; ROUTE_11 + db $f4 ; ROUTE_12 + db $08 ; ROUTE_13 + db $08 ; ROUTE_14 + db $f5 ; ROUTE_15 + db $f6 ; ROUTE_16 + db $09 ; ROUTE_17 + db $f7 ; ROUTE_18 + db $0a ; ROUTE_19 + db $f8 ; ROUTE_20 + db $01 ; ROUTE_21 + db $01 ; ROUTE_22 + db $06 ; ROUTE_23 + db $02 ; ROUTE_24 + db $02 ; ROUTE_25 + +; Format: +; 00: determines whether the map is split East/West or North/South +; $01 = East/West divide +; $02 = North/South divide +; 01: coordinate of dividing line +; 02: sprite set ID if in the West or North side +; 03: sprite set ID if in the East or South side +SplitMapSpriteSets: ; 17a89 (5:7a89) + db $02,$25,$02,$01 ; $f1 + db $02,$32,$02,$03 ; $f2 + db $01,$39,$04,$08 ; $f3 + db $02,$15,$03,$08 ; $f4 + db $01,$08,$0A,$08 ; $f5 + db $01,$18,$09,$05 ; $f6 + db $01,$22,$09,$0A ; $f7 + db $01,$35,$01,$0A ; $f8 + db $02,$21,$02,$07 ; $f9 + db $02,$02,$07,$04 ; $fa + db $01,$11,$05,$07 ; $fb + db $01,$03,$07,$03 ; $fc + +SpriteSets: ; 17ab9 (5:7ab9) +; sprite set $01 + db SPRITE_BLUE + db SPRITE_BUG_CATCHER + db SPRITE_GIRL + db SPRITE_FISHER2 + db SPRITE_BLACK_HAIR_BOY_1 + db SPRITE_GAMBLER + db SPRITE_SEEL + db SPRITE_OAK + db SPRITE_SWIMMER + db SPRITE_BALL + db SPRITE_LYING_OLD_MAN + +; sprite set $02 + db SPRITE_BUG_CATCHER + db SPRITE_ROCKET + db SPRITE_BLACK_HAIR_BOY_2 + db SPRITE_HIKER + db SPRITE_SLOWBRO + db SPRITE_BLUE + db SPRITE_GUARD + db SPRITE_LASS + db SPRITE_BLACK_HAIR_BOY_1 + db SPRITE_BALL + db SPRITE_LYING_OLD_MAN_UNUSED_2 + +; sprite set $03 + db SPRITE_LITTLE_GIRL + db SPRITE_GIRL + db SPRITE_BLACK_HAIR_BOY_2 + db SPRITE_HIKER + db SPRITE_GAMBLER + db SPRITE_SLOWBRO + db SPRITE_LASS + db SPRITE_BLACK_HAIR_BOY_1 + db SPRITE_GUARD + db SPRITE_BALL + db SPRITE_LYING_OLD_MAN_UNUSED_2 + +; sprite set $04 + db SPRITE_FOULARD_WOMAN + db SPRITE_BLACK_HAIR_BOY_2 + db SPRITE_BUG_CATCHER + db SPRITE_GAMBLER + db SPRITE_SLOWBRO + db SPRITE_GUARD + db SPRITE_SAILOR + db SPRITE_LASS + db SPRITE_BLACK_HAIR_BOY_1 + db SPRITE_BALL + db SPRITE_LYING_OLD_MAN_UNUSED_2 + +; sprite set $05 + db SPRITE_LITTLE_GIRL + db SPRITE_YOUNG_BOY + db SPRITE_GIRL + db SPRITE_FISHER2 + db SPRITE_FAT_BALD_GUY + db SPRITE_OLD_PERSON + db SPRITE_SLOWBRO + db SPRITE_GUARD + db SPRITE_ROCKET + db SPRITE_BALL + db SPRITE_SNORLAX + +; sprite set $06 + db SPRITE_BUG_CATCHER + db SPRITE_GYM_HELPER + db SPRITE_SLOWBRO + db SPRITE_BLUE + db SPRITE_LASS + db SPRITE_BLACK_HAIR_BOY_1 + db SPRITE_SWIMMER + db SPRITE_GUARD + db SPRITE_GAMBLER + db SPRITE_BALL + db SPRITE_LYING_OLD_MAN_UNUSED_2 + +; sprite set $07 + db SPRITE_ROCKET + db SPRITE_OAK_AIDE + db SPRITE_LAPRAS_GIVER + db SPRITE_ERIKA + db SPRITE_GENTLEMAN + db SPRITE_BIRD + db SPRITE_ROCKER + db SPRITE_BLACK_HAIR_BOY_1 + db SPRITE_SLOWBRO + db SPRITE_BALL + db SPRITE_LYING_OLD_MAN_UNUSED_2 + +; sprite set $08 + db SPRITE_BIKER + db SPRITE_BLACK_HAIR_BOY_2 + db SPRITE_FAT_BALD_GUY + db SPRITE_LASS + db SPRITE_BLACK_HAIR_BOY_1 + db SPRITE_FOULARD_WOMAN + db SPRITE_FISHER2 + db SPRITE_ROCKER + db SPRITE_SLOWBRO + db SPRITE_BALL + db SPRITE_SNORLAX + +; sprite set $09 + db SPRITE_BIKER + db SPRITE_BLACK_HAIR_BOY_1 + db SPRITE_LAPRAS_GIVER + db SPRITE_FISHER2 + db SPRITE_ROCKER + db SPRITE_HIKER + db SPRITE_GAMBLER + db SPRITE_FAT_BALD_GUY + db SPRITE_BLACK_HAIR_BOY_2 + db SPRITE_BALL + db SPRITE_SNORLAX + +; sprite set $0a + db SPRITE_BIRD + db SPRITE_BLACK_HAIR_BOY_1 + db SPRITE_CLEFAIRY + db SPRITE_FISHER2 + db SPRITE_GAMBLER + db SPRITE_SLOWBRO + db SPRITE_SEEL + db SPRITE_SWIMMER + db SPRITE_BUG_CATCHER + db SPRITE_BALL + db SPRITE_OMANYTE + +SpriteSheetPointerTable: ; 17b27 (5:7b27) + ; SPRITE_RED + dw RedSprite + db $c0 ; byte count + db BANK(RedSprite) + + ; SPRITE_BLUE + dw BlueSprite + db $c0 ; byte count + db BANK(BlueSprite) + + ; SPRITE_OAK + dw OakSprite + db $c0 ; byte count + db BANK(OakSprite) + + ; SPRITE_BUG_CATCHER + dw BugCatcherSprite + db $c0 ; byte count + db BANK(BugCatcherSprite) + + ; SPRITE_SLOWBRO + dw SlowbroSprite + db $c0 ; byte count + db BANK(SlowbroSprite) + + ; SPRITE_LASS + dw LassSprite + db $c0 ; byte count + db BANK(LassSprite) + + ; SPRITE_BLACK_HAIR_BOY_1 + dw BlackHairBoy1Sprite + db $c0 ; byte count + db BANK(BlackHairBoy1Sprite) + + ; SPRITE_LITTLE_GIRL + dw LittleGirlSprite + db $c0 ; byte count + db BANK(LittleGirlSprite) + + ; SPRITE_BIRD + dw BirdSprite + db $c0 ; byte count + db BANK(BirdSprite) + + ; SPRITE_FAT_BALD_GUY + dw FatBaldGuySprite + db $c0 ; byte count + db BANK(FatBaldGuySprite) + + ; SPRITE_GAMBLER + dw GamblerSprite + db $c0 ; byte count + db BANK(GamblerSprite) + + ; SPRITE_BLACK_HAIR_BOY_2 + dw BlackHairBoy2Sprite + db $c0 ; byte count + db BANK(BlackHairBoy2Sprite) + + ; SPRITE_GIRL + dw GirlSprite + db $c0 ; byte count + db BANK(GirlSprite) + + ; SPRITE_HIKER + dw HikerSprite + db $c0 ; byte count + db BANK(HikerSprite) + + ; SPRITE_FOULARD_WOMAN + dw FoulardWomanSprite + db $c0 ; byte count + db BANK(FoulardWomanSprite) + + ; SPRITE_GENTLEMAN + dw GentlemanSprite + db $c0 ; byte count + db BANK(GentlemanSprite) + + ; SPRITE_DAISY + dw DaisySprite + db $c0 ; byte count + db BANK(DaisySprite) + + ; SPRITE_BIKER + dw BikerSprite + db $c0 ; byte count + db BANK(BikerSprite) + + ; SPRITE_SAILOR + dw SailorSprite + db $c0 ; byte count + db BANK(SailorSprite) + + ; SPRITE_COOK + dw CookSprite + db $c0 ; byte count + db BANK(CookSprite) + + ; SPRITE_BIKE_SHOP_GUY + dw BikeShopGuySprite + db $c0 ; byte count + db BANK(BikeShopGuySprite) + + ; SPRITE_MR_FUJI + dw MrFujiSprite + db $c0 ; byte count + db BANK(MrFujiSprite) + + ; SPRITE_GIOVANNI + dw GiovanniSprite + db $c0 ; byte count + db BANK(GiovanniSprite) + + ; SPRITE_ROCKET + dw RocketSprite + db $c0 ; byte count + db BANK(RocketSprite) + + ; SPRITE_MEDIUM + dw MediumSprite + db $c0 ; byte count + db BANK(MediumSprite) + + ; SPRITE_WAITER + dw WaiterSprite + db $c0 ; byte count + db BANK(WaiterSprite) + + ; SPRITE_ERIKA + dw ErikaSprite + db $c0 ; byte count + db BANK(ErikaSprite) + + ; SPRITE_MOM_GEISHA + dw MomGeishaSprite + db $c0 ; byte count + db BANK(MomGeishaSprite) + + ; SPRITE_BRUNETTE_GIRL + dw BrunetteGirlSprite + db $c0 ; byte count + db BANK(BrunetteGirlSprite) + + ; SPRITE_LANCE + dw LanceSprite + db $c0 ; byte count + db BANK(LanceSprite) + + ; SPRITE_OAK_SCIENTIST_AIDE + dw OakAideSprite + db $c0 ; byte count + db BANK(OakAideSprite) + + ; SPRITE_OAK_AIDE + dw OakAideSprite + db $c0 ; byte count + db BANK(OakAideSprite) + + ; SPRITE_ROCKER + dw RockerSprite + db $c0 ; byte count + db BANK(RockerSprite) + + ; SPRITE_SWIMMER + dw SwimmerSprite + db $c0 ; byte count + db BANK(SwimmerSprite) + + ; SPRITE_WHITE_PLAYER + dw WhitePlayerSprite + db $c0 ; byte count + db BANK(WhitePlayerSprite) + + ; SPRITE_GYM_HELPER + dw GymHelperSprite + db $c0 ; byte count + db BANK(GymHelperSprite) + + ; SPRITE_OLD_PERSON + dw OldPersonSprite + db $c0 ; byte count + db BANK(OldPersonSprite) + + ; SPRITE_MART_GUY + dw MartGuySprite + db $c0 ; byte count + db BANK(MartGuySprite) + + ; SPRITE_FISHER + dw FisherSprite + db $c0 ; byte count + db BANK(FisherSprite) + + ; SPRITE_OLD_MEDIUM_WOMAN + dw OldMediumWomanSprite + db $c0 ; byte count + db BANK(OldMediumWomanSprite) + + ; SPRITE_NURSE + dw NurseSprite + db $c0 ; byte count + db BANK(NurseSprite) + + ; SPRITE_CABLE_CLUB_WOMAN + dw CableClubWomanSprite + db $c0 ; byte count + db BANK(CableClubWomanSprite) + + ; SPRITE_MR_MASTERBALL + dw MrMasterballSprite + db $c0 ; byte count + db BANK(MrMasterballSprite) + + ; SPRITE_LAPRAS_GIVER + dw LaprasGiverSprite + db $c0 ; byte count + db BANK(LaprasGiverSprite) + + ; SPRITE_WARDEN + dw WardenSprite + db $c0 ; byte count + db BANK(WardenSprite) + + ; SPRITE_SS_CAPTAIN + dw SsCaptainSprite + db $c0 ; byte count + db BANK(SsCaptainSprite) + + ; SPRITE_FISHER2 + dw Fisher2Sprite + db $c0 ; byte count + db BANK(Fisher2Sprite) + + ; SPRITE_BLACKBELT + dw BlackbeltSprite + db $c0 ; byte count + db BANK(BlackbeltSprite) + + ; SPRITE_GUARD + dw GuardSprite + db $c0 ; byte count + db BANK(GuardSprite) + + ; $32 + dw GuardSprite + db $c0 ; byte count + db BANK(GuardSprite) + + ; SPRITE_MOM + dw MomSprite + db $c0 ; byte count + db BANK(MomSprite) + + ; SPRITE_BALDING_GUY + dw BaldingGuySprite + db $c0 ; byte count + db BANK(BaldingGuySprite) + + ; SPRITE_YOUNG_BOY + dw YoungBoySprite + db $c0 ; byte count + db BANK(YoungBoySprite) + + ; SPRITE_GAMEBOY_KID + dw GameboyKidSprite + db $c0 ; byte count + db BANK(GameboyKidSprite) + + ; SPRITE_GAMEBOY_KID_COPY + dw GameboyKidSprite + db $c0 ; byte count + db BANK(GameboyKidSprite) + + ; SPRITE_CLEFAIRY + dw ClefairySprite + db $c0 ; byte count + db BANK(ClefairySprite) + + ; SPRITE_AGATHA + dw AgathaSprite + db $c0 ; byte count + db BANK(AgathaSprite) + + ; SPRITE_BRUNO + dw BrunoSprite + db $c0 ; byte count + db BANK(BrunoSprite) + + ; SPRITE_LORELEI + dw LoreleiSprite + db $c0 ; byte count + db BANK(LoreleiSprite) + + ; SPRITE_SEEL + dw SeelSprite + db $c0 ; byte count + db BANK(SeelSprite) + + ; SPRITE_BALL + dw BallSprite + db $40 ; byte count + db BANK(BallSprite) + + ; SPRITE_OMANYTE + dw OmanyteSprite + db $40 ; byte count + db BANK(OmanyteSprite) + + ; SPRITE_BOULDER + dw BoulderSprite + db $40 ; byte count + db BANK(BoulderSprite) + + ; SPRITE_PAPER_SHEET + dw PaperSheetSprite + db $40 ; byte count + db BANK(PaperSheetSprite) + + ; SPRITE_BOOK_MAP_DEX + dw BookMapDexSprite + db $40 ; byte count + db BANK(BookMapDexSprite) + + ; SPRITE_CLIPBOARD + dw ClipboardSprite + db $40 ; byte count + db BANK(ClipboardSprite) + + ; SPRITE_SNORLAX + dw SnorlaxSprite + db $40 ; byte count + db BANK(SnorlaxSprite) + + ; SPRITE_OLD_AMBER_COPY + dw OldAmberSprite + db $40 ; byte count + db BANK(OldAmberSprite) + + ; SPRITE_OLD_AMBER + dw OldAmberSprite + db $40 ; byte count + db BANK(OldAmberSprite) + + ; SPRITE_LYING_OLD_MAN_UNUSED_1 + dw LyingOldManSprite + db $40 ; byte count + db BANK(LyingOldManSprite) + + ; SPRITE_LYING_OLD_MAN_UNUSED_2 + dw LyingOldManSprite + db $40 ; byte count + db BANK(LyingOldManSprite) + + ; SPRITE_LYING_OLD_MAN + dw LyingOldManSprite + db $40 ; byte count + db BANK(LyingOldManSprite) diff --git a/data/super_palettes.asm b/data/super_palettes.asm new file mode 100755 index 00000000..6ab708be --- /dev/null +++ b/data/super_palettes.asm @@ -0,0 +1,174 @@ +; palettes for overworlds, title screen, monsters +SuperPalettes: ; 72660 (1c:6660) + RGB 31,29,31 ; PAL_ROUTE + RGB 21,28,11 + RGB 20,26,31 + RGB 3,2,2 + RGB 31,29,31 ; PAL_PALLET + RGB 25,28,27 + RGB 20,26,31 + RGB 3,2,2 + RGB 31,29,31 ; PAL_VIRIDIAN + RGB 17,26,3 + RGB 20,26,31 + RGB 3,2,2 + RGB 31,29,31 ; PAL_PEWTER + RGB 23,25,16 + RGB 20,26,31 + RGB 3,2,2 + RGB 31,29,31 ; PAL_CERULEAN + RGB 17,20,30 + RGB 20,26,31 + RGB 3,2,2 + RGB 31,29,31 ; PAL_LAVENDER + RGB 27,20,27 + RGB 20,26,31 + RGB 3,2,2 + RGB 31,29,31 ; PAL_VERMILION + RGB 30,18,0 + RGB 20,26,31 + RGB 3,2,2 + RGB 31,29,31 ; PAL_CELADON + RGB 16,30,22 + RGB 20,26,31 + RGB 3,2,2 + RGB 31,29,31 ; PAL_FUCHSIA + RGB 31,15,22 + RGB 20,26,31 + RGB 3,2,2 + RGB 31,29,31 ; PAL_CINNABAR + RGB 26,10,6 + RGB 20,26,31 + RGB 3,2,2 + RGB 31,29,31 ; PAL_INDIGO + RGB 22,14,24 + RGB 20,26,31 + RGB 3,2,2 + RGB 31,29,31 ; PAL_SAFFRON + RGB 27,27,3 + RGB 20,26,31 + RGB 3,2,2 + RGB 31,29,31 ; PAL_TOWNMAP + RGB 20,26,31 + RGB 17,23,10 + RGB 3,2,2 +IF _RED + RGB 31,29,31 ; PAL_LOGO1 + RGB 30,30,17 + RGB 17,23,10 + RGB 21,0,4 +ENDC +IF _BLUE + RGB 31,29,31 ; PAL_LOGO1 + RGB 30,30,17 + RGB 21,0,4 + RGB 14,19,29 +ENDC + RGB 31,29,31 ; PAL_LOGO2 + RGB 30,30,17 + RGB 18,18,24 + RGB 7,7,16 + RGB 31,29,31 ; PAL_0F + RGB 24,20,30 + RGB 11,20,30 + RGB 3,2,2 + RGB 31,29,31 ; PAL_MEWMON + RGB 30,22,17 + RGB 16,14,19 + RGB 3,2,2 + RGB 31,29,31 ; PAL_BLUEMON + RGB 18,20,27 + RGB 11,15,23 + RGB 3,2,2 + RGB 31,29,31 ; PAL_REDMON + RGB 31,20,10 + RGB 26,10,6 + RGB 3,2,2 + RGB 31,29,31 ; PAL_CYANMON + RGB 21,25,29 + RGB 14,19,25 + RGB 3,2,2 + RGB 31,29,31 ; PAL_PURPLEMON + RGB 27,22,24 + RGB 21,15,23 + RGB 3,2,2 + RGB 31,29,31 ; PAL_BROWNMON + RGB 28,20,15 + RGB 21,14,9 + RGB 3,2,2 + RGB 31,29,31 ; PAL_GREENMON + RGB 20,26,16 + RGB 9,20,11 + RGB 3,2,2 + RGB 31,29,31 ; PAL_PINKMON + RGB 30,22,24 + RGB 28,15,21 + RGB 3,2,2 + RGB 31,29,31 ; PAL_YELLOWMON + RGB 31,28,14 + RGB 26,20,0 + RGB 3,2,2 + RGB 31,29,31 ; PAL_GREYMON + RGB 26,21,22 + RGB 15,15,18 + RGB 3,2,2 + RGB 31,29,31 ; PAL_SLOTS1 + RGB 26,21,22 + RGB 27,20,6 + RGB 3,2,2 + RGB 31,29,31 ; PAL_SLOTS2 + RGB 31,31,17 +IF _RED + RGB 25,17,21 +ENDC +IF _BLUE + RGB 16,19,29 +ENDC + RGB 3,2,2 + RGB 31,29,31 ; PAL_SLOTS3 + RGB 22,31,16 +IF _RED + RGB 25,17,21 +ENDC +IF _BLUE + RGB 16,19,29 +ENDC + RGB 3,2,2 + RGB 31,29,31 ; PAL_SLOTS4 +IF _RED + RGB 16,19,29 + RGB 25,17,21 +ENDC +IF _BLUE + RGB 25,17,21 + RGB 16,19,29 +ENDC + RGB 3,2,2 + RGB 31,29,31 ; PAL_BLACK + RGB 7,7,7 + RGB 2,3,3 + RGB 3,2,2 + RGB 31,29,31 ; PAL_GREENBAR + RGB 30,26,15 + RGB 9,20,11 + RGB 3,2,2 + RGB 31,29,31 ; PAL_YELLOWBAR + RGB 30,26,15 + RGB 26,20,0 + RGB 3,2,2 + RGB 31,29,31 ; PAL_REDBAR + RGB 30,26,15 + RGB 26,10,6 + RGB 3,2,2 + RGB 31,29,31 ; PAL_BADGE + RGB 30,22,17 + RGB 11,15,23 + RGB 3,2,2 + RGB 31,29,31 ; PAL_CAVE + RGB 21,14,9 + RGB 18,24,22 + RGB 3,2,2 + RGB 31,29,31 ; PAL_GAMEFREAK + RGB 31,28,14 + RGB 24,20,10 + RGB 3,2,2 diff --git a/data/super_rod.asm b/data/super_rod.asm new file mode 100755 index 00000000..ead970d8 --- /dev/null +++ b/data/super_rod.asm @@ -0,0 +1,101 @@ +; super rod data +; format: map, pointer to fishing group +SuperRodData: ; e919 (3:6919) + dbw PALLET_TOWN, FishingGroup1 + dbw VIRIDIAN_CITY, FishingGroup1 + dbw CERULEAN_CITY, FishingGroup3 + dbw VERMILION_CITY, FishingGroup4 + dbw CELADON_CITY, FishingGroup5 + dbw FUCHSIA_CITY, FishingGroup10 + dbw CINNABAR_ISLAND, FishingGroup8 + dbw ROUTE_4, FishingGroup3 + dbw ROUTE_6, FishingGroup4 + dbw ROUTE_10, FishingGroup5 + dbw ROUTE_11, FishingGroup4 + dbw ROUTE_12, FishingGroup7 + dbw ROUTE_13, FishingGroup7 + dbw ROUTE_17, FishingGroup7 + dbw ROUTE_18, FishingGroup7 + dbw ROUTE_19, FishingGroup8 + dbw ROUTE_20, FishingGroup8 + dbw ROUTE_21, FishingGroup8 + dbw ROUTE_22, FishingGroup2 + dbw ROUTE_23, FishingGroup9 + dbw ROUTE_24, FishingGroup3 + dbw ROUTE_25, FishingGroup3 + dbw CERULEAN_GYM, FishingGroup3 + dbw VERMILION_DOCK, FishingGroup4 +;XXX syntax errors on the rest? + dbw $A1, FishingGroup8 ; SEAFOAM_ISLANDS_4 + dbw $A2, FishingGroup8 ; SEAFOAM_ISLANDS_5 + dbw SAFARI_ZONE_EAST, FishingGroup6 + dbw $DA, FishingGroup6 ; SAFARI_ZONE_NORTH + dbw SAFARI_ZONE_WEST, FishingGroup6 + dbw $DC, FishingGroup6 ; SAFARI_ZONE_CENTER + dbw $E2, FishingGroup9 ; UNKNOWN_DUNGEON_2 + dbw $E3, FishingGroup9 ; UNKNOWN_DUNGEON_3 + dbw $E4, FishingGroup9 ; UNKNOWN_DUNGEON_1 + db $FF + +; fishing groups +; number of monsters, followed by level/monster pairs +FishingGroup1: ; e97d (3:697d) + db 2 + db 15,TENTACOOL + db 15,POLIWAG + +FishingGroup2: ; e982 (3:6982) + db 2 + db 15,GOLDEEN + db 15,POLIWAG + +FishingGroup3: ; e987 (3:6987) + db 3 + db 15,PSYDUCK + db 15,GOLDEEN + db 15,KRABBY + +FishingGroup4: ; e98e (3:698e) + db 2 + db 15,KRABBY + db 15,SHELLDER + +FishingGroup5: ; e993 (3:6993) + db 2 + db 23,POLIWHIRL + db 15,SLOWPOKE + +FishingGroup6: ; e998 (3:6998) + db 4 + db 15,DRATINI + db 15,KRABBY + db 15,PSYDUCK + db 15,SLOWPOKE + +FishingGroup7: ; e9a1 (3:69a1) + db 4 + db 5,TENTACOOL + db 15,KRABBY + db 15,GOLDEEN + db 15,MAGIKARP + +FishingGroup8: ; e9aa (3:69aa) + db 4 + db 15,STARYU + db 15,HORSEA + db 15,SHELLDER + db 15,GOLDEEN + +FishingGroup9: ; e9b3 (3:69b3) + db 4 + db 23,SLOWBRO + db 23,SEAKING + db 23,KINGLER + db 23,SEADRA + +FishingGroup10: ; e9bc (3:69bc) + db 4 + db 23,SEAKING + db 15,KRABBY + db 15,GOLDEEN + db 15,MAGIKARP diff --git a/data/tileset_headers.asm b/data/tileset_headers.asm new file mode 100755 index 00000000..84cfaffd --- /dev/null +++ b/data/tileset_headers.asm @@ -0,0 +1,25 @@ +Tilesets: ; c7be (3:47be) + tileset Overworld_Block, Overworld_GFX, Overworld_Coll, $FF,$FF,$FF, $52, OUTDOOR + tileset RedsHouse1_Block, RedsHouse1_GFX, RedsHouse1_Coll, $FF,$FF,$FF, $FF, INDOOR + tileset Mart_Block, Mart_GFX, Mart_Coll, $18,$19,$1E, $FF, INDOOR + tileset Forest_Block, Forest_GFX, Forest_Coll, $FF,$FF,$FF, $20, CAVE + tileset RedsHouse2_Block, RedsHouse2_GFX, RedsHouse2_Coll, $FF,$FF,$FF, $FF, INDOOR + tileset Dojo_Block, Dojo_GFX, Dojo_Coll, $3A,$FF,$FF, $FF, OUTDOOR + tileset Pokecenter_Block, Pokecenter_GFX, Pokecenter_Coll, $18,$19,$1E, $FF, INDOOR + tileset Gym_Block, Gym_GFX, Gym_Coll, $3A,$FF,$FF, $FF, OUTDOOR + tileset House_Block, House_GFX, House_Coll, $FF,$FF,$FF, $FF, INDOOR + tileset ForestGate_Block, ForestGate_GFX, ForestGate_Coll, $17,$32,$FF, $FF, INDOOR + tileset Museum_Block, Museum_GFX, Museum_Coll, $17,$32,$FF, $FF, INDOOR + tileset Underground_Block, Underground_GFX, Underground_Coll, $FF,$FF,$FF, $FF, INDOOR + tileset Gate_Block, Gate_GFX, Gate_Coll, $17,$32,$FF, $FF, INDOOR + tileset Ship_Block, Ship_GFX, Ship_Coll, $FF,$FF,$FF, $FF, CAVE + tileset ShipPort_Block, ShipPort_GFX, ShipPort_Coll, $FF,$FF,$FF, $FF, CAVE + tileset Cemetery_Block, Cemetery_GFX, Cemetery_Coll, $12,$FF,$FF, $FF, INDOOR + tileset Interior_Block, Interior_GFX, Interior_Coll, $FF,$FF,$FF, $FF, INDOOR + tileset Cavern_Block, Cavern_GFX, Cavern_Coll, $FF,$FF,$FF, $FF, CAVE + tileset Lobby_Block, Lobby_GFX, Lobby_Coll, $15,$36,$FF, $FF, INDOOR + tileset Mansion_Block, Mansion_GFX, Mansion_Coll, $FF,$FF,$FF, $FF, INDOOR + tileset Lab_Block, Lab_GFX, Lab_Coll, $FF,$FF,$FF, $FF, INDOOR + tileset Club_Block, Club_GFX, Club_Coll, $07,$17,$FF, $FF, INDOOR + tileset Facility_Block, Facility_GFX, Facility_Coll, $12,$FF,$FF, $FF, CAVE + tileset Plateau_Block, Plateau_GFX, Plateau_Coll, $FF,$FF,$FF, $45, CAVE diff --git a/data/title_mons.asm b/data/title_mons.asm new file mode 100755 index 00000000..2781b78d --- /dev/null +++ b/data/title_mons.asm @@ -0,0 +1,56 @@ +TitleMons: ; 4588 (1:4588) +; mons on the title screen are randomly chosen from here +IF _RED + db CHARMANDER + db SQUIRTLE + db BULBASAUR + db WEEDLE + db NIDORAN_M + db SCYTHER + db PIKACHU + db CLEFAIRY + db RHYDON + db ABRA + db GASTLY + db DITTO + db PIDGEOTTO + db ONIX + db PONYTA + db MAGIKARP +ENDC +IF _GREEN + db BULBASAUR + db CHARMANDER + db SQUIRTLE + db CATERPIE + db NIDORAN_F + db PINSIR + db PIKACHU + db CLEFAIRY + db RHYDON + db ABRA + db GASTLY + db DITTO + db PIDGEOTTO + db ONIX + db PONYTA + db MAGIKARP +ENDC +IF _BLUE + db SQUIRTLE + db CHARMANDER + db BULBASAUR + db MANKEY + db HITMONLEE + db VULPIX + db CHANSEY + db AERODACTYL + db JOLTEON + db SNORLAX + db GLOOM + db POLIWAG + db DODUO + db PORYGON + db GENGAR + db RAICHU +ENDC diff --git a/data/tm_prices.asm b/data/tm_prices.asm new file mode 100755 index 00000000..4fce3f60 --- /dev/null +++ b/data/tm_prices.asm @@ -0,0 +1,7 @@ +TechnicalMachinePrices: ; 7bfa7 (1e:7fa7) +; In thousands (nybbles). + db $32, $21, $34, $24, $34 + db $21, $45, $55, $32, $32 + db $55, $52, $54, $52, $41 + db $21, $12, $42, $25, $24 + db $22, $52, $24, $34, $42 diff --git a/data/tms.asm b/data/tms.asm new file mode 100755 index 00000000..23630691 --- /dev/null +++ b/data/tms.asm @@ -0,0 +1,56 @@ +TechnicalMachines: ; 13773 (4:7773) + db MEGA_PUNCH + db RAZOR_WIND + db SWORDS_DANCE + db WHIRLWIND + db MEGA_KICK + db TOXIC + db HORN_DRILL + db BODY_SLAM + db TAKE_DOWN + db DOUBLE_EDGE + db BUBBLEBEAM + db WATER_GUN + db ICE_BEAM + db BLIZZARD + db HYPER_BEAM + db PAY_DAY + db SUBMISSION + db COUNTER + db SEISMIC_TOSS + db RAGE + db MEGA_DRAIN + db SOLARBEAM + db DRAGON_RAGE + db THUNDERBOLT + db THUNDER + db EARTHQUAKE + db FISSURE + db DIG + db PSYCHIC_M + db TELEPORT + db MIMIC + db DOUBLE_TEAM + db REFLECT + db BIDE + db METRONOME + db SELFDESTRUCT + db EGG_BOMB + db FIRE_BLAST + db SWIFT + db SKULL_BASH + db SOFTBOILED + db DREAM_EATER + db SKY_ATTACK + db REST + db THUNDER_WAVE + db PSYWAVE + db EXPLOSION + db ROCK_SLIDE + db TRI_ATTACK + db SUBSTITUTE + db CUT + db FLY + db SURF + db STRENGTH + db FLASH diff --git a/data/town_map_entries.asm b/data/town_map_entries.asm new file mode 100755 index 00000000..d2edd949 --- /dev/null +++ b/data/town_map_entries.asm @@ -0,0 +1,101 @@ +ExternalMapEntries: ; 71313 (1c:5313) + EMAP $2,$B,PalletTownName + EMAP $2,$8,ViridianCityName + EMAP $2,$3,PewterCityName + EMAP $A,$2,CeruleanCityName + EMAP $E,$5,LavenderTownName + EMAP $A,$9,VermilionCityName + EMAP $7,$5,CeladonCityName + EMAP $8,$D,FuchsiaCityName + EMAP $2,$F,CinnabarIslandName + EMAP $0,$2,IndigoPlateauName + EMAP $A,$5,SaffronCityName + EMAP $0,$0,PalletTownName ; unused + EMAP $2,$A,Route1Name + EMAP $2,$6,Route2Name + EMAP $4,$3,Route3Name + EMAP $8,$2,Route4Name + EMAP $A,$3,Route5Name + EMAP $A,$8,Route6Name + EMAP $8,$5,Route7Name + EMAP $D,$5,Route8Name + EMAP $D,$2,Route9Name + EMAP $E,$4,Route10Name + EMAP $C,$9,Route11Name + EMAP $E,$9,Route12Name + EMAP $D,$B,Route13Name + EMAP $B,$C,Route14Name + EMAP $A,$D,Route15Name + EMAP $5,$5,Route16Name + EMAP $4,$8,Route17Name + EMAP $6,$D,Route18Name + EMAP $6,$F,Route19Name + EMAP $4,$F,Route20Name + EMAP $2,$D,Route21Name + EMAP $0,$8,Route22Name + EMAP $0,$6,Route23Name + EMAP $A,$1,Route24Name + EMAP $B,$0,Route25Name + +InternalMapEntries: ; 71382 (1c:5382) + IMAP $29,$2,$B,PalletTownName + IMAP $2E,$2,$8,ViridianCityName + IMAP $33,$2,$6,Route2Name + IMAP $34,$2,$4,ViridianForestName + IMAP $3B,$2,$3,PewterCityName + IMAP $3E,$6,$2,MountMoonName + IMAP $44,$A,$2,CeruleanCityName + IMAP $45,$5,$2,Route4Name + IMAP $46,$A,$2,CeruleanCityName + IMAP $49,$A,$4,Route5Name + IMAP $4C,$A,$6,Route6Name + IMAP $4F,$9,$5,Route7Name + IMAP $51,$B,$5,Route8Name + IMAP $53,$E,$3,RockTunnelName + IMAP $54,$F,$4,PowerPlantName + IMAP $57,$D,$9,Route11Name + IMAP $58,$E,$7,Route12Name + IMAP $59,$C,$0,SeaCottageName + IMAP $5F,$A,$9,VermilionCityName + IMAP $69,$9,$A,SSAnneName + IMAP $6D,$0,$4,VictoryRoadName + IMAP $77,$0,$2,PokemonLeagueName + IMAP $78,$A,$5,UndergroundPathName + IMAP $79,$0,$2,PokemonLeagueName + IMAP $7A,$A,$5,UndergroundPathName + IMAP $8D,$7,$5,CeladonCityName + IMAP $8E,$E,$5,LavenderTownName + IMAP $95,$F,$5,PokemonTowerName + IMAP $98,$E,$5,LavenderTownName + IMAP $9C,$8,$D,FuchsiaCityName + IMAP $9D,$8,$C,SafariZoneName + IMAP $9F,$8,$D,FuchsiaCityName + IMAP $A3,$5,$F,SeafoamIslandsName + IMAP $A4,$A,$9,VermilionCityName + IMAP $A5,$8,$D,FuchsiaCityName + IMAP $A6,$2,$F,PokemonMansionName + IMAP $AE,$2,$F,CinnabarIslandName + IMAP $AF,$0,$2,IndigoPlateauName + IMAP $B8,$A,$5,SaffronCityName + IMAP $BA,$9,$D,Route15Name + IMAP $BD,$4,$5,Route16Name + IMAP $BE,$E,$A,Route12Name + IMAP $C0,$7,$D,Route18Name + IMAP $C1,$5,$F,SeafoamIslandsName + IMAP $C2,$0,$7,Route22Name + IMAP $C3,$0,$4,VictoryRoadName + IMAP $C4,$E,$7,Route12Name + IMAP $C5,$A,$9,VermilionCityName + IMAP $C6,$3,$4,DiglettsCaveName + IMAP $C7,$0,$4,VictoryRoadName + IMAP $CF,$7,$5,RocketHQName + IMAP $D6,$A,$5,SilphCoName + IMAP $D9,$2,$F,PokemonMansionName + IMAP $E2,$8,$C,SafariZoneName + IMAP $E5,$9,$1,CeruleanCaveName + IMAP $E6,$E,$5,LavenderTownName + IMAP $E7,$A,$2,CeruleanCityName + IMAP $E9,$E,$3,RockTunnelName + IMAP $ED,$A,$5,SilphCoName + IMAP $F8,$0,$2,PokemonLeagueName + db $FF diff --git a/data/town_map_order.asm b/data/town_map_order.asm new file mode 100755 index 00000000..3bd8c223 --- /dev/null +++ b/data/town_map_order.asm @@ -0,0 +1,48 @@ +TownMapOrder: ; 70f11 (1c:4f11) + db PALLET_TOWN + db ROUTE_1 + db VIRIDIAN_CITY + db ROUTE_2 + db VIRIDIAN_FOREST + db DIGLETTS_CAVE + db PEWTER_CITY + db ROUTE_3 + db MT_MOON_1 + db ROUTE_4 + db CERULEAN_CITY + db ROUTE_24 + db ROUTE_25 + db BILLS_HOUSE + db ROUTE_5 + db ROUTE_6 + db VERMILION_CITY + db SS_ANNE_1 + db ROUTE_9 + db ROCK_TUNNEL_POKECENTER + db ROUTE_10 + db LAVENDER_TOWN + db POKEMONTOWER_2 + db ROUTE_8 + db ROUTE_7 + db CELADON_CITY + db SAFFRON_CITY + db ROUTE_11 + db ROUTE_12 + db ROUTE_13 + db ROUTE_14 + db ROUTE_15 + db ROUTE_16 + db ROUTE_17 + db ROUTE_18 + db FUCHSIA_CITY + db SAFARI_ZONE_EAST + db ROUTE_19 + db SEAFOAM_ISLANDS_2 + db ROUTE_20 + db CINNABAR_ISLAND + db ROUTE_21 + db ROUTE_22 + db ROUTE_23 + db VICTORY_ROAD_3 + db INDIGO_PLATEAU + db POWER_PLANT diff --git a/data/trades.asm b/data/trades.asm new file mode 100755 index 00000000..2593f01c --- /dev/null +++ b/data/trades.asm @@ -0,0 +1,12 @@ +TradeMons: ; 71b7b (1c:5b7b) +; givemonster, getmonster, textstring, nickname (11 bytes), 14 bytes total + db NIDORINO, NIDORINA, 0,"TERRY@@@@@@" + db ABRA, MR_MIME, 0,"MARCEL@@@@@" + db BUTTERFREE,BEEDRILL, 2,"CHIKUCHIKU@" + db PONYTA, SEEL, 0,"SAILOR@@@@@" + db SPEAROW, FARFETCH_D,2,"DUX@@@@@@@@" + db SLOWBRO, LICKITUNG, 0,"MARC@@@@@@@" + db POLIWHIRL, JYNX, 1,"LOLA@@@@@@@" + db RAICHU, ELECTRODE, 1,"DORIS@@@@@@" + db VENONAT, TANGELA, 2,"CRINKLES@@@" + db NIDORAN_M, NIDORAN_F, 2,"SPOT@@@@@@@" diff --git a/data/trainer_moves.asm b/data/trainer_moves.asm new file mode 100755 index 00000000..61a3d650 --- /dev/null +++ b/data/trainer_moves.asm @@ -0,0 +1,194 @@ +LoneMoves: ; 39d22 (e:5d22) +; these are used for gym leaders. +; this is not automatic! you have to write the number you want to W_LONEATTACKNO +; first. e.g., erika's script writes 4 to W_LONEATTACKNO to get mega drain, +; the fourth entry in the list. + +; first byte: pokemon in the trainer's party that gets the move +; second byte: move +; unterminated + db 1,BIDE + db 1,BUBBLEBEAM + db 2,THUNDERBOLT + db 2,MEGA_DRAIN + db 3,TOXIC + db 3,PSYWAVE + db 3,FIRE_BLAST + db 4,FISSURE + +TeamMoves: ; 39d32 (e:5d32) +; these are used for elite four. +; this is automatic, based on trainer class. +; don't be confused by LoneMoves above, the two data structures are + ; _completely_ unrelated. + +; first byte: trainer (all trainers in this class have this move) +; second byte: move +; ff-terminated + db LORELEI,BLIZZARD + db BRUNO,FISSURE + db AGATHA,TOXIC + db LANCE,BARRIER + db $FF + +if _YELLOW +; different format from above. + +; entry ≔ trainerclass, trainerid, moveset+, 0 +; moveset ≔ partymon, partymon'smove, moveid + + db BUG_CATCHER,$f + db 2,2,TACKLE + db 2,3,STRING_SHOT + db 0 + + db YOUNGSTER,$e + db 1,4,FISSURE + db 0 + + db BROCK,$1 + db 2,3,BIND + db 2,4,BIDE + db 0 + + db MISTY,$1 + db 2,4,BUBBLEBEAM + db 0 + + db LT__SURGE,$1 + db 1,1,THUNDERBOLT + db 1,2,MEGA_PUNCH + db 1,3,MEGA_KICK + db 1,4,GROWL + db 0 + + db ERIKA,$1 + db 1,3,MEGA_DRAIN + db 2,1,RAZOR_LEAF + db 3,1,PETAL_DANCE + db 0 + + db KOGA,$1 + db 1,1,TOXIC + db 1,2,TACKLE + db 2,1,TOXIC + db 2,3,SUPERSONIC + db 3,1,TOXIC + db 3,2,DOUBLE_EDGE + db 4,1,LEECH_LIFE + db 4,2,DOUBLE_TEAM + db 4,3,PSYCHIC_M + db 4,4,TOXIC + db 0 + + db BLAINE,$1 + db 1,1,FLAMETHROWER + db 1,4,CONFUSE_RAY + db 3,1,FLAMETHROWER + db 3,2,FIRE_BLAST + db 3,3,REFLECT + db 0 + + db SABRINA,$1 + db 1,1,FLASH + db 2,1,KINESIS + db 2,4,PSYWAVE + db 3,1,PSYWAVE + db 0 + + db GIOVANNI,$3 + db 1,3,FISSURE + db 2,2,DOUBLE_TEAM + db 3,1,EARTHQUAKE + db 3,3,THUNDER + db 4,1,EARTHQUAKE + db 4,2,LEER + db 4,3,THUNDER + db 5,1,ROCK_SLIDE + db 5,4,EARTHQUAKE + db 0 + + db LORELEI,$1 + db 1,1,BUBBLEBEAM + db 2,3,ICE_BEAM + db 3,1,PSYCHIC_M + db 3,2,SURF + db 4,3,LOVELY_KISS + db 5,3,BLIZZARD + db 0 + + db BRUNO,$1 + db 1,1,ROCK_SLIDE + db 1,2,SCREECH + db 1,4,DIG + db 2,3,FIRE_PUNCH + db 2,4,DOUBLE_TEAM + db 3,1,DOUBLE_KICK + db 3,2,MEGA_KICK + db 3,4,DOUBLE_TEAM + db 4,1,ROCK_SLIDE + db 4,2,SCREECH + db 4,4,EARTHQUAKE + db 5,2,KARATE_CHOP + db 5,3,STRENGTH + db 0 + + db AGATHA,$1 + db 1,2,SUBSTITUTE + db 1,3,LICK + db 1,4,MEGA_DRAIN + db 2,2,TOXIC + db 2,4,LEECH_LIFE + db 3,2,LICK + db 4,1,WRAP + db 5,2,PSYCHIC_M + db 0 + + db LANCE,$1 + db 1,1,DRAGON_RAGE + db 2,1,THUNDER_WAVE + db 2,3,THUNDERBOLT + db 3,1,BUBBLEBEAM + db 3,2,WRAP + db 3,3,ICE_BEAM + db 4,1,WING_ATTACK + db 4,2,SWIFT + db 4,3,FLY + db 5,1,BLIZZARD + db 5,2,FIRE_BLAST + db 5,3,THUNDER + db 0 + + db SONY3,$1 + db 1,3,EARTHQUAKE + db 2,4,KINESIS + db 3,4,LEECH_SEED + db 4,1,ICE_BEAM + db 5,1,CONFUSE_RAY + db 5,4,FIRE_SPIN + db 6,3,QUICK_ATTACK + db 0 + + db SONY3,$2 + db 1,3,EARTHQUAKE + db 2,4,KINESIS + db 3,4,LEECH_SEED + db 4,1,THUNDERBOLT + db 5,1,ICE_BEAM + db 6,2,REFLECT + db 6,3,QUICK_ATTACK + db 0 + + db SONY3,$3 + db 1,3,EARTHQUAKE + db 2,4,KINESIS + db 3,4,LEECH_SEED + db 4,1,CONFUSE_RAY + db 4,4,FIRE_SPIN + db 5,1,THUNDERBOLT + db 6,1,AURORA_BEAM + db 6,3,QUICK_ATTACK + db 0 + + db $ff +endc diff --git a/data/trainer_parties.asm b/data/trainer_parties.asm new file mode 100755 index 00000000..5b60bb29 --- /dev/null +++ b/data/trainer_parties.asm @@ -0,0 +1,592 @@ +TrainerDataPointers: ; 39d3b (e:5d3b) + dw YoungsterData,BugCatcherData,LassData,SailorData,JrTrainerMData + dw JrTrainerFData,PokemaniacData,SuperNerdData,HikerData,BikerData + dw BurglarData,EngineerData,Juggler1Data,FisherData,SwimmerData + dw CueBallData,GamblerData,BeautyData,PsychicData,RockerData + dw JugglerData,TamerData,BirdKeeperData,BlackbeltData,Green1Data + dw ProfOakData,ChiefData,ScientistData,GiovanniData,RocketData + dw CooltrainerMData,CooltrainerFData,BrunoData,BrockData,MistyData + dw LtSurgeData,ErikaData,KogaData,BlaineData,SabrinaData + dw GentlemanData,Green2Data,Green3Data,LoreleiData,ChannelerData + dw AgathaData,LanceData + +; if first byte != FF, then + ; first byte is level (of all pokemon on this team) + ; all the next bytes are pokemon species + ; null-terminated +; if first byte == FF, then + ; first byte is FF (obviously) + ; every next two bytes are a level and species + ; null-terminated + +YoungsterData: ; 39d99 (e:5d99) + db 11,RATTATA,EKANS,0 + db 14,SPEAROW,0 + db 10,RATTATA,RATTATA,ZUBAT,0 + db 14,RATTATA,EKANS,ZUBAT,0 + db 15,RATTATA,SPEAROW,0 + db 17,SLOWPOKE,0 + db 14,EKANS,SANDSHREW,0 + db 21,NIDORAN_M,0 + db 21,EKANS,0 + db 19,SANDSHREW,ZUBAT,0 + db 17,RATTATA,RATTATA,RATICATE,0 + db 18,NIDORAN_M,NIDORINO,0 + db 17,SPEAROW,RATTATA,RATTATA,SPEAROW,0 +if _YELLOW + db 24,SANDSHREW,0 +endc +BugCatcherData: ; 39dce (e:5dce) +if _YELLOW + db 7,CATERPIE,CATERPIE,0 + db 6,METAPOD,CATERPIE,METAPOD,0 + db 10,CATERPIE,0 +else + db 6,WEEDLE,CATERPIE,0 + db 7,WEEDLE,KAKUNA,WEEDLE,0 + db 9,WEEDLE,0 +endc + db 10,CATERPIE,WEEDLE,CATERPIE,0 + db 9,WEEDLE,KAKUNA,CATERPIE,METAPOD,0 + db 11,CATERPIE,METAPOD,0 + db 11,WEEDLE,KAKUNA,0 + db 10,CATERPIE,METAPOD,CATERPIE,0 + db 14,CATERPIE,WEEDLE,0 + db 16,WEEDLE,CATERPIE,WEEDLE,0 + db 20,BUTTERFREE,0 + db 18,METAPOD,CATERPIE,VENONAT,0 + db 19,BEEDRILL,BEEDRILL,0 + db 20,CATERPIE,WEEDLE,VENONAT,0 +if _YELLOW + db 8,CATERPIE,METAPOD,0 +endc +LassData: ; 39e0c (e:5e0c) + db 9,PIDGEY,PIDGEY,0 + db 10,RATTATA,NIDORAN_M,0 + db 14,JIGGLYPUFF,0 + db 31,PARAS,PARAS,PARASECT,0 + db 11,ODDISH,BELLSPROUT,0 + db 14,CLEFAIRY,0 + db 16,PIDGEY,NIDORAN_F,0 + db 14,PIDGEY,NIDORAN_F,0 + db 15,NIDORAN_M,NIDORAN_F,0 + db 13,ODDISH,PIDGEY,ODDISH,0 + db 18,PIDGEY,NIDORAN_F,0 +if _YELLOW + db 20,JIGGLYPUFF,0 +else + db 18,RATTATA,PIKACHU,0 +endc + db 23,NIDORAN_F,NIDORINA,0 + db 24,MEOWTH,MEOWTH,MEOWTH,0 +if _YELLOW + db 19,PIDGEY,RATTATA,NIDORAN_F,MEOWTH,NIDORAN_M,0 +else + db 19,PIDGEY,RATTATA,NIDORAN_M,MEOWTH,PIKACHU,0 +endc + db 22,CLEFAIRY,CLEFAIRY,0 + db 23,BELLSPROUT,WEEPINBELL,0 + db 23,ODDISH,GLOOM,0 +if _YELLOW + db 6,NIDORAN_F,NIDORAN_M,0 +endc +SailorData: ; 39e58 (e:5e58) + db 18,MACHOP,SHELLDER,0 + db 17,MACHOP,TENTACOOL,0 + db 21,SHELLDER,0 + db 17,HORSEA,SHELLDER,TENTACOOL,0 + db 18,TENTACOOL,STARYU,0 + db 17,HORSEA,HORSEA,HORSEA,0 + db 20,MACHOP,0 +if _YELLOW + db 24,MAGNEMITE,0 +else + db 21,PIKACHU,PIKACHU,0 +endc +JrTrainerMData: ; 39e78 (e:5e78) +if _YELLOW + db 9,DIGLETT,SANDSHREW,0 +else + db 11,DIGLETT,SANDSHREW,0 +endc + db 14,RATTATA,EKANS,0 + db 18,MANKEY,0 + db 20,SQUIRTLE,0 + db 16,SPEAROW,RATICATE,0 + db 18,DIGLETT,DIGLETT,SANDSHREW,0 + db 21,GROWLITHE,CHARMANDER,0 + db 19,RATTATA,DIGLETT,EKANS,SANDSHREW,0 + db 29,NIDORAN_M,NIDORINO,0 +if _YELLOW + db 16,WEEPINBELL,0 +endc +JrTrainerFData: ; 39e9d (e:5e9d) + db 19,GOLDEEN,0 +if _YELLOW + db 16,ODDISH,BELLSPROUT,0 +else + db 16,RATTATA,PIKACHU,0 +endc + db 16,PIDGEY,PIDGEY,PIDGEY,0 + db 22,BULBASAUR,0 + db 18,ODDISH,BELLSPROUT,ODDISH,BELLSPROUT,0 + db 23,MEOWTH,0 +if _YELLOW + db 20,JIGGLYPUFF,CLEFAIRY,0 +else + db 20,PIKACHU,CLEFAIRY,0 +endc + db 21,PIDGEY,PIDGEOTTO,0 + db 21,JIGGLYPUFF,PIDGEY,MEOWTH,0 + db 22,ODDISH,BULBASAUR,0 + db 24,BULBASAUR,IVYSAUR,0 +if _YELLOW + db 24,PIDGEY,MEOWTH,RATTATA,PIDGEY,MEOWTH,0 +else + db 24,PIDGEY,MEOWTH,RATTATA,PIKACHU,MEOWTH,0 +endc + db 30,POLIWAG,POLIWAG,0 + db 27,PIDGEY,MEOWTH,PIDGEY,PIDGEOTTO,0 + db 28,GOLDEEN,POLIWAG,HORSEA,0 + db 31,GOLDEEN,SEAKING,0 + db 22,BELLSPROUT,CLEFAIRY,0 + db 20,MEOWTH,ODDISH,PIDGEY,0 + db 19,PIDGEY,RATTATA,RATTATA,BELLSPROUT,0 + db 28,GLOOM,ODDISH,ODDISH,0 +if _YELLOW + db 29,PIDGEY,PIDGEOTTO,0 +else + db 29,PIKACHU,RAICHU,0 +endc + db 33,CLEFAIRY,0 + db 29,BELLSPROUT,ODDISH,TANGELA,0 + db 30,TENTACOOL,HORSEA,SEEL,0 +if _YELLOW + db 20,CUBONE,0 +endc +PokemaniacData: ; 39f09 (e:5f09) + db 30,RHYHORN,LICKITUNG,0 + db 20,CUBONE,SLOWPOKE,0 + db 20,SLOWPOKE,SLOWPOKE,SLOWPOKE,0 + db 22,CHARMANDER,CUBONE,0 + db 25,SLOWPOKE,0 + db 40,CHARMELEON,LAPRAS,LICKITUNG,0 + db 23,CUBONE,SLOWPOKE,0 +SuperNerdData: ; 39f26 (e:5f26) + db 11,MAGNEMITE,VOLTORB,0 + db 12,GRIMER,VOLTORB,KOFFING,0 + db 20,VOLTORB,KOFFING,VOLTORB,MAGNEMITE,0 + db 22,GRIMER,MUK,GRIMER,0 + db 26,KOFFING,0 + db 22,KOFFING,MAGNEMITE,WEEZING,0 + db 20,MAGNEMITE,MAGNEMITE,KOFFING,MAGNEMITE,0 + db 24,MAGNEMITE,VOLTORB,0 + db 36,VULPIX,VULPIX,NINETALES,0 + db 34,PONYTA,CHARMANDER,VULPIX,GROWLITHE,0 + db 41,RAPIDASH,0 + db 37,GROWLITHE,VULPIX,0 +HikerData: ; 39f5e (e:5f5e) + db 10,GEODUDE,GEODUDE,ONIX,0 + db 15,MACHOP,GEODUDE,0 + db 13,GEODUDE,GEODUDE,MACHOP,GEODUDE,0 + db 17,ONIX,0 + db 21,GEODUDE,ONIX,0 + db 20,GEODUDE,MACHOP,GEODUDE,0 + db 21,GEODUDE,ONIX,0 + db 19,ONIX,GRAVELER,0 + db 21,GEODUDE,GEODUDE,GRAVELER,0 + db 25,GEODUDE,0 + db 20,MACHOP,ONIX,0 + db 19,GEODUDE,MACHOP,GEODUDE,GEODUDE,0 + db 20,ONIX,ONIX,GEODUDE,0 + db 21,GEODUDE,GRAVELER,0 +BikerData: ; 39f9c (e:5f9c) + db 28,KOFFING,KOFFING,KOFFING,0 + db 29,KOFFING,GRIMER,0 + db 25,KOFFING,KOFFING,WEEZING,KOFFING,GRIMER,0 + db 28,KOFFING,GRIMER,WEEZING,0 + db 29,GRIMER,KOFFING,0 + db 33,WEEZING,0 + db 26,GRIMER,GRIMER,GRIMER,GRIMER,0 + db 28,WEEZING,KOFFING,WEEZING,0 + db 33,MUK,0 + db 29,VOLTORB,VOLTORB,0 + db 29,WEEZING,MUK,0 + db 25,KOFFING,WEEZING,KOFFING,KOFFING,WEEZING,0 + db 26,KOFFING,KOFFING,GRIMER,KOFFING,0 + db 28,GRIMER,GRIMER,KOFFING,0 + db 29,KOFFING,MUK,0 +BurglarData: ; 39fe4 (e:5fe4) + db 29,GROWLITHE,VULPIX,0 + db 33,GROWLITHE,0 + db 28,VULPIX,CHARMANDER,PONYTA,0 + db 36,GROWLITHE,VULPIX,NINETALES,0 + db 41,PONYTA,0 + db 37,VULPIX,GROWLITHE,0 + db 34,CHARMANDER,CHARMELEON,0 + db 38,NINETALES,0 + db 34,GROWLITHE,PONYTA,0 +EngineerData: ; 3a007 (e:6007) + db 21,VOLTORB,MAGNEMITE,0 + db 21,MAGNEMITE,0 + db 18,MAGNEMITE,MAGNEMITE,MAGNETON,0 +Juggler1Data: ; 3a013 (e:6013) +; none +FisherData: ; 3a013 (e:6013) + db 17,GOLDEEN,TENTACOOL,GOLDEEN,0 + db 17,TENTACOOL,STARYU,SHELLDER,0 + db 22,GOLDEEN,POLIWAG,GOLDEEN,0 + db 24,TENTACOOL,GOLDEEN,0 + db 27,GOLDEEN,0 + db 21,POLIWAG,SHELLDER,GOLDEEN,HORSEA,0 + db 28,SEAKING,GOLDEEN,SEAKING,SEAKING,0 + db 31,SHELLDER,CLOYSTER,0 + db 27,MAGIKARP,MAGIKARP,MAGIKARP,MAGIKARP,MAGIKARP,MAGIKARP,0 + db 33,SEAKING,GOLDEEN,0 + db 24,MAGIKARP,MAGIKARP,0 +SwimmerData: ; 3a049 (e:6049) + db 16,HORSEA,SHELLDER,0 + db 30,TENTACOOL,SHELLDER,0 + db 29,GOLDEEN,HORSEA,STARYU,0 + db 30,POLIWAG,POLIWHIRL,0 + db 27,HORSEA,TENTACOOL,TENTACOOL,GOLDEEN,0 + db 29,GOLDEEN,SHELLDER,SEAKING,0 + db 30,HORSEA,HORSEA,0 + db 27,TENTACOOL,TENTACOOL,STARYU,HORSEA,TENTACRUEL,0 + db 31,SHELLDER,CLOYSTER,0 + db 35,STARYU,0 + db 28,HORSEA,HORSEA,SEADRA,HORSEA,0 + db 33,SEADRA,TENTACRUEL,0 + db 37,STARMIE,0 + db 33,STARYU,WARTORTLE,0 + db 32,POLIWHIRL,TENTACOOL,SEADRA,0 +CueBallData: ; 3a08d (e:608d) + db 28,MACHOP,MANKEY,MACHOP,0 + db 29,MANKEY,MACHOP,0 + db 33,MACHOP,0 + db 29,MANKEY,PRIMEAPE,0 + db 29,MACHOP,MACHOKE,0 + db 33,MACHOKE,0 + db 26,MANKEY,MANKEY,MACHOKE,MACHOP,0 + db 29,PRIMEAPE,MACHOKE,0 + db 31,TENTACOOL,TENTACOOL,TENTACRUEL,0 +GamblerData: ; 3a0b3 (e:60b3) + db 18,POLIWAG,HORSEA,0 + db 18,BELLSPROUT,ODDISH,0 + db 18,VOLTORB,MAGNEMITE,0 + db 18,GROWLITHE,VULPIX,0 + db 22,POLIWAG,POLIWAG,POLIWHIRL,0 + db 22,ONIX,GEODUDE,GRAVELER,0 + db 24,GROWLITHE,VULPIX,0 +BeautyData: ; 3a0d1 (e:60d1) + db 21,ODDISH,BELLSPROUT,ODDISH,BELLSPROUT,0 + db 24,BELLSPROUT,BELLSPROUT,0 + db 26,EXEGGCUTE,0 +if _YELLOW + db 27,RATTATA,VULPIX,RATTATA,0 +else + db 27,RATTATA,PIKACHU,RATTATA,0 +endc + db 29,CLEFAIRY,MEOWTH,0 + db 35,SEAKING,0 + db 30,SHELLDER,SHELLDER,CLOYSTER,0 + db 31,POLIWAG,SEAKING,0 + db 29,PIDGEOTTO,WIGGLYTUFF,0 + db 29,BULBASAUR,IVYSAUR,0 + db 33,WEEPINBELL,BELLSPROUT,WEEPINBELL,0 + db 27,POLIWAG,GOLDEEN,SEAKING,GOLDEEN,POLIWAG,0 + db 30,GOLDEEN,SEAKING,0 + db 29,STARYU,STARYU,STARYU,0 + db 30,SEADRA,HORSEA,SEADRA,0 +PsychicData: ; 3a115 (e:6115) + db 31,KADABRA,SLOWPOKE,MR_MIME,KADABRA,0 + db 34,MR_MIME,KADABRA,0 + db 33,SLOWPOKE,SLOWPOKE,SLOWBRO,0 + db 38,SLOWBRO,0 +RockerData: ; 3a127 (e:6127) +if _YELLOW + db 20,VOLTORB,VOLTORB,VOLTORB,0 +else + db 20,VOLTORB,MAGNEMITE,VOLTORB,0 +endc + db 29,VOLTORB,ELECTRODE,0 +JugglerData: ; 3a130 (e:6130) + db 29,KADABRA,MR_MIME,0 + db 41,DROWZEE,HYPNO,KADABRA,KADABRA,0 + db 31,DROWZEE,DROWZEE,KADABRA,DROWZEE,0 + db 34,DROWZEE,HYPNO,0 + db 48,MR_MIME,0 + db 33,HYPNO,0 + db 38,HYPNO,0 + db 34,DROWZEE,KADABRA,0 +TamerData: ; 3a151 (e:6151) + db 34,SANDSLASH,ARBOK,0 + db 33,ARBOK,SANDSLASH,ARBOK,0 + db 43,RHYHORN,0 + db 39,ARBOK,TAUROS,0 + db 44,PERSIAN,GOLDUCK,0 + db 42,RHYHORN,PRIMEAPE,ARBOK,TAUROS,0 +BirdKeeperData: ; 3a16b (e:616b) + db 29,PIDGEY,PIDGEOTTO,0 + db 25,SPEAROW,PIDGEY,PIDGEY,SPEAROW,SPEAROW,0 + db 26,PIDGEY,PIDGEOTTO,SPEAROW,FEAROW,0 + db 33,FARFETCH_D,0 + db 29,SPEAROW,FEAROW,0 + db 26,PIDGEOTTO,FARFETCH_D,DODUO,PIDGEY,0 + db 28,DODRIO,DODUO,DODUO,0 + db 29,SPEAROW,FEAROW,0 + db 34,DODRIO,0 + db 26,SPEAROW,SPEAROW,FEAROW,SPEAROW,0 + db 30,FEAROW,FEAROW,PIDGEOTTO,0 + db 39,PIDGEOTTO,PIDGEOTTO,PIDGEY,PIDGEOTTO,0 + db 42,FARFETCH_D,FEAROW,0 + db 28,PIDGEY,DODUO,PIDGEOTTO,0 + db 26,PIDGEY,SPEAROW,PIDGEY,FEAROW,0 + db 29,PIDGEOTTO,FEAROW,0 + db 28,SPEAROW,DODUO,FEAROW,0 +BlackbeltData: ; 3a1be (e:61be) + db 37,HITMONLEE,HITMONCHAN,0 + db 31,MANKEY,MANKEY,PRIMEAPE,0 + db 32,MACHOP,MACHOKE,0 + db 36,PRIMEAPE,0 + db 31,MACHOP,MANKEY,PRIMEAPE,0 + db 40,MACHOP,MACHOKE,0 + db 43,MACHOKE,0 + db 38,MACHOKE,MACHOP,MACHOKE,0 + db 43,MACHOKE,MACHOP,MACHOKE,0 +Green1Data: ; 3a1e4 (e:61e4) +if _YELLOW + db 5,EEVEE,0 + db $FF,9,SPEAROW,8,EEVEE,0 + db $FF,18,SPEAROW,15,SANDSHREW,15,RATTATA,17,EEVEE,0 +else + db 5,SQUIRTLE,0 + db 5,BULBASAUR,0 + db 5,CHARMANDER,0 + db $FF,9,PIDGEY,8,SQUIRTLE,0 + db $FF,9,PIDGEY,8,BULBASAUR,0 + db $FF,9,PIDGEY,8,CHARMANDER,0 + db $FF,18,PIDGEOTTO,15,ABRA,15,RATTATA,17,SQUIRTLE,0 + db $FF,18,PIDGEOTTO,15,ABRA,15,RATTATA,17,BULBASAUR,0 + db $FF,18,PIDGEOTTO,15,ABRA,15,RATTATA,17,CHARMANDER,0 +endc +ProfOakData: ; 3a21d (e:621d) + db $FF,66,TAUROS,67,EXEGGUTOR,68,ARCANINE,69,BLASTOISE,70,GYARADOS,0 + db $FF,66,TAUROS,67,EXEGGUTOR,68,ARCANINE,69,VENUSAUR,70,GYARADOS,0 + db $FF,66,TAUROS,67,EXEGGUTOR,68,ARCANINE,69,CHARIZARD,70,GYARADOS,0 +ChiefData: ; 3a241 (e:6241) +; none +ScientistData: ; 3a241 (e:6241) + db 34,KOFFING,VOLTORB,0 + db 26,GRIMER,WEEZING,KOFFING,WEEZING,0 + db 28,MAGNEMITE,VOLTORB,MAGNETON,0 + db 29,ELECTRODE,WEEZING,0 + db 33,ELECTRODE,0 + db 26,MAGNETON,KOFFING,WEEZING,MAGNEMITE,0 + db 25,VOLTORB,KOFFING,MAGNETON,MAGNEMITE,KOFFING,0 + db 29,ELECTRODE,MUK,0 + db 29,GRIMER,ELECTRODE,0 + db 28,VOLTORB,KOFFING,MAGNETON,0 + db 29,MAGNEMITE,KOFFING,0 + db 33,MAGNEMITE,MAGNETON,VOLTORB,0 + db 34,MAGNEMITE,ELECTRODE,0 +GiovanniData: ; 3a27e (e:627e) +if _YELLOW + db $FF,25,ONIX,24,RHYHORN,29,PERSIAN,0 + db $FF,37,NIDORINO,35,PERSIAN,37,RHYHORN,41,NIDOQUEEN,0 + db $FF,50,DUGTRIO,53,PERSIAN,53,NIDOQUEEN,55,NIDOKING,55,RHYDON,0 +else + db $FF,25,ONIX,24,RHYHORN,29,KANGASKHAN,0 + db $FF,37,NIDORINO,35,KANGASKHAN,37,RHYHORN,41,NIDOQUEEN,0 + db $FF,45,RHYHORN,42,DUGTRIO,44,NIDOQUEEN,45,NIDOKING,50,RHYDON,0 +endc +RocketData: ; 3a29c (e:629c) + db 13,RATTATA,ZUBAT,0 + db 11,SANDSHREW,RATTATA,ZUBAT,0 + db 12,ZUBAT,EKANS,0 + db 16,RATICATE,0 + db 17,MACHOP,DROWZEE,0 + db 15,EKANS,ZUBAT,0 + db 20,RATICATE,ZUBAT,0 + db 21,DROWZEE,MACHOP,0 + db 21,RATICATE,RATICATE,0 + db 20,GRIMER,KOFFING,KOFFING,0 + db 19,RATTATA,RATICATE,RATICATE,RATTATA,0 + db 22,GRIMER,KOFFING,0 + db 17,ZUBAT,KOFFING,GRIMER,ZUBAT,RATICATE,0 + db 20,RATTATA,RATICATE,DROWZEE,0 + db 21,MACHOP,MACHOP,0 + db 23,SANDSHREW,EKANS,SANDSLASH,0 + db 23,EKANS,SANDSHREW,ARBOK,0 + db 21,KOFFING,ZUBAT,0 + db 25,ZUBAT,ZUBAT,GOLBAT,0 + db 26,KOFFING,DROWZEE,0 + db 23,ZUBAT,RATTATA,RATICATE,ZUBAT,0 + db 26,DROWZEE,KOFFING,0 + db 29,CUBONE,ZUBAT,0 + db 25,GOLBAT,ZUBAT,ZUBAT,RATICATE,ZUBAT,0 + db 28,RATICATE,HYPNO,RATICATE,0 + db 29,MACHOP,DROWZEE,0 + db 28,EKANS,ZUBAT,CUBONE,0 + db 33,ARBOK,0 + db 33,HYPNO,0 + db 29,MACHOP,MACHOKE,0 + db 28,ZUBAT,ZUBAT,GOLBAT,0 + db 26,RATICATE,ARBOK,KOFFING,GOLBAT,0 + db 29,CUBONE,CUBONE,0 + db 29,SANDSHREW,SANDSLASH,0 + db 26,RATICATE,ZUBAT,GOLBAT,RATTATA,0 + db 28,WEEZING,GOLBAT,KOFFING,0 + db 28,DROWZEE,GRIMER,MACHOP,0 + db 28,GOLBAT,DROWZEE,HYPNO,0 + db 33,MACHOKE,0 + db 25,RATTATA,RATTATA,ZUBAT,RATTATA,EKANS,0 + db 32,CUBONE,DROWZEE,MAROWAK,0 +if _YELLOW +JessieJamesData: + db 14,EKANS,MEOWTH,KOFFING,0 + db 25,KOFFING,MEOWTH,EKANS,0 + db 27,MEOWTH,ARBOK,WEEZING,0 + db 31,WEEZING,ARBOK,MEOWTH,0 + db 16,KOFFING,0 + db 27,KOFFING,0 + db 29,WEEZING,0 + db 33,WEEZING,0 +endc +CooltrainerMData: ; 3a35a (e:635a) + db 39,NIDORINO,NIDOKING,0 + db 43,EXEGGUTOR,CLOYSTER,ARCANINE,0 + db 43,KINGLER,TENTACRUEL,BLASTOISE,0 + db 45,KINGLER,STARMIE,0 + db 42,IVYSAUR,WARTORTLE,CHARMELEON,CHARIZARD,0 + db 44,IVYSAUR,WARTORTLE,CHARMELEON,0 + db 49,NIDOKING,0 + db 44,KINGLER,CLOYSTER,0 + db 39,SANDSLASH,DUGTRIO,0 + db 43,RHYHORN,0 +CooltrainerFData: ; 3a385 (e:6385) + db 24,WEEPINBELL,GLOOM,IVYSAUR,0 + db 43,BELLSPROUT,WEEPINBELL,VICTREEBEL,0 + db 43,PARASECT,DEWGONG,CHANSEY,0 + db 46,VILEPLUME,BUTTERFREE,0 + db 44,PERSIAN,NINETALES,0 + db 45,IVYSAUR,VENUSAUR,0 + db 45,NIDORINA,NIDOQUEEN,0 + db 43,PERSIAN,NINETALES,RAICHU,0 +BrunoData: ; 3a3a9 (e:63a9) + db $FF,53,ONIX,55,HITMONCHAN,55,HITMONLEE,56,ONIX,58,MACHAMP,0 +BrockData: ; 3a3b5 (e:63b5) +if _YELLOW + db $FF,10,GEODUDE,12,ONIX,0 +else + db $FF,12,GEODUDE,14,ONIX,0 +endc +MistyData: ; 3a3bb (e:63bb) + db $FF,18,STARYU,21,STARMIE,0 +LtSurgeData: ; 3a3c1 (e:63c1) +if _YELLOW + db $FF,28,RAICHU,0 +else + db $FF,21,VOLTORB,18,PIKACHU,24,RAICHU,0 +endc +ErikaData: ; 3a3c9 (e:63c9) +if _YELLOW + db $FF,30,TANGELA,32,WEEPINBELL,32,GLOOM,0 +else + db $FF,29,VICTREEBEL,24,TANGELA,29,VILEPLUME,0 +endc +KogaData: ; 3a3d1 (e:63d1) +if _YELLOW + db $FF,44,VENONAT,46,VENONAT,48,VENONAT,50,VENOMOTH,0 +else + db $FF,37,KOFFING,39,MUK,37,KOFFING,43,WEEZING,0 +endc +BlaineData: ; 3a3db (e:63db) +if _YELLOW + db $FF,48,NINETALES,50,RAPIDASH,54,ARCANINE,0 +else + db $FF,42,GROWLITHE,40,PONYTA,42,RAPIDASH,47,ARCANINE,0 +endc +SabrinaData: ; 3a3e5 (e:63e5) +if _YELLOW + db $FF,50,ABRA,50,KADABRA,50,ALAKAZAM,0 +else + db $FF,38,KADABRA,37,MR_MIME,38,VENOMOTH,43,ALAKAZAM,0 +endc +GentlemanData: ; 3a3ef (e:63ef) + db 18,GROWLITHE,GROWLITHE,0 + db 19,NIDORAN_M,NIDORAN_F,0 +if _YELLOW + db 22,VOLTORB,MAGNEMITE,0 +else + db 23,PIKACHU,0 +endc + db 48,PRIMEAPE,0 + db 17,GROWLITHE,PONYTA,0 +Green2Data: ; 3a401 (e:6401) +if _YELLOW + db $FF,19,SPEAROW,16,RATTATA,18,SANDSHREW,20,EEVEE,0 + db $FF,25,FEAROW,23,SHELLDER,22,VULPIX,20,SANDSHREW,25,EEVEE,0 + db $FF,25,FEAROW,23,MAGNEMITE,22,SHELLDER,20,SANDSHREW,25,EEVEE,0 + db $FF,25,FEAROW,23,VULPIX,22,MAGNEMITE,20,SANDSHREW,25,EEVEE,0 + db $FF,38,SANDSLASH,35,NINETALES,37,CLOYSTER,35,KADABRA,40,JOLTEON,0 + db $FF,38,SANDSLASH,35,CLOYSTER,37,MAGNETON,35,KADABRA,40,FLAREON,0 + db $FF,38,SANDSLASH,35,MAGNETON,37,NINETALES,35,KADABRA,40,VAPOREON,0 + db $FF,47,SANDSLASH,45,EXEGGCUTE,45,NINETALES,47,CLOYSTER,50,KADABRA,53,JOLTEON,0 + db $FF,47,SANDSLASH,45,EXEGGCUTE,45,CLOYSTER,47,MAGNETON,50,KADABRA,53,FLAREON,0 + db $FF,47,SANDSLASH,45,EXEGGCUTE,45,MAGNETON,47,NINETALES,50,KADABRA,53,VAPOREON,0 +else + db $FF,19,PIDGEOTTO,16,RATICATE,18,KADABRA,20,WARTORTLE,0 + db $FF,19,PIDGEOTTO,16,RATICATE,18,KADABRA,20,IVYSAUR,0 + db $FF,19,PIDGEOTTO,16,RATICATE,18,KADABRA,20,CHARMELEON,0 + db $FF,25,PIDGEOTTO,23,GROWLITHE,22,EXEGGCUTE,20,KADABRA,25,WARTORTLE,0 + db $FF,25,PIDGEOTTO,23,GYARADOS,22,GROWLITHE,20,KADABRA,25,IVYSAUR,0 + db $FF,25,PIDGEOTTO,23,EXEGGCUTE,22,GYARADOS,20,KADABRA,25,CHARMELEON,0 + db $FF,37,PIDGEOT,38,GROWLITHE,35,EXEGGCUTE,35,ALAKAZAM,40,BLASTOISE,0 + db $FF,37,PIDGEOT,38,GYARADOS,35,GROWLITHE,35,ALAKAZAM,40,VENUSAUR,0 + db $FF,37,PIDGEOT,38,EXEGGCUTE,35,GYARADOS,35,ALAKAZAM,40,CHARIZARD,0 + db $FF,47,PIDGEOT,45,RHYHORN,45,GROWLITHE,47,EXEGGCUTE,50,ALAKAZAM,53,BLASTOISE,0 + db $FF,47,PIDGEOT,45,RHYHORN,45,GYARADOS,47,GROWLITHE,50,ALAKAZAM,53,VENUSAUR,0 + db $FF,47,PIDGEOT,45,RHYHORN,45,EXEGGCUTE,47,GYARADOS,50,ALAKAZAM,53,CHARIZARD,0 +endc +Green3Data: ; 3a491 (e:6491) +if _YELLOW + db $FF,61,SANDSLASH,59,ALAKAZAM,61,EXEGGUTOR,61,CLOYSTER,63,NINETALES,65,JOLTEON,0 + db $FF,61,SANDSLASH,59,ALAKAZAM,61,EXEGGUTOR,61,MAGNETON,63,CLOYSTER,65,FLAREON,0 + db $FF,61,SANDSLASH,59,ALAKAZAM,61,EXEGGUTOR,61,NINETALES,63,MAGNETON,65,VAPOREON,0 +else + db $FF,61,PIDGEOT,59,ALAKAZAM,61,RHYDON,61,ARCANINE,63,EXEGGUTOR,65,BLASTOISE,0 + db $FF,61,PIDGEOT,59,ALAKAZAM,61,RHYDON,61,GYARADOS,63,ARCANINE,65,VENUSAUR,0 + db $FF,61,PIDGEOT,59,ALAKAZAM,61,RHYDON,61,EXEGGUTOR,63,GYARADOS,65,CHARIZARD,0 +endc +LoreleiData: ; 3a4bb (e:64bb) + db $FF,54,DEWGONG,53,CLOYSTER,54,SLOWBRO,56,JYNX,56,LAPRAS,0 +ChannelerData: ; 3a4c7 (e:64c7) + db 22,GASTLY,0 + db 24,GASTLY,0 + db 23,GASTLY,GASTLY,0 + db 24,GASTLY,0 + db 23,GASTLY,0 + db 24,GASTLY,0 + db 24,HAUNTER,0 + db 22,GASTLY,0 + db 24,GASTLY,0 + db 23,GASTLY,GASTLY,0 + db 24,GASTLY,0 + db 22,GASTLY,0 + db 24,GASTLY,0 + db 23,HAUNTER,0 + db 24,GASTLY,0 + db 22,GASTLY,0 + db 24,GASTLY,0 + db 22,HAUNTER,0 + db 22,GASTLY,GASTLY,GASTLY,0 + db 24,GASTLY,0 + db 24,GASTLY,0 + db 34,GASTLY,HAUNTER,0 + db 38,HAUNTER,0 + db 33,GASTLY,GASTLY,HAUNTER,0 +AgathaData: ; 3a516 (e:6516) + db $FF,56,GENGAR,56,GOLBAT,55,HAUNTER,58,ARBOK,60,GENGAR,0 +LanceData: ; 3a522 (e:6522) + db $FF,58,GYARADOS,56,DRAGONAIR,56,DRAGONAIR,60,AERODACTYL,62,DRAGONITE,0 diff --git a/data/trainer_types.asm b/data/trainer_types.asm new file mode 100755 index 00000000..5ad1dbd0 --- /dev/null +++ b/data/trainer_types.asm @@ -0,0 +1,17 @@ +FemaleTrainerList:: ; 3434 (0:3434) + db $c8+LASS + db $c8+JR__TRAINER_F + db $c8+BEAUTY + db $c8+COOLTRAINER_F + db $FF + +EvilTrainerList:: ; 3439 (0:3439) + db $c8+JUGGLER_X + db $c8+GAMBLER + db $c8+ROCKER + db $c8+JUGGLER + db $c8+CHIEF + db $c8+SCIENTIST + db $c8+GIOVANNI + db $c8+ROCKET + db $FF diff --git a/data/type_effects.asm b/data/type_effects.asm new file mode 100755 index 00000000..b3207c84 --- /dev/null +++ b/data/type_effects.asm @@ -0,0 +1,89 @@ +TypeEffects: ; 3e474 (f:6474) +; format: attacking type, defending type, damage multiplier +; the multiplier is a (decimal) fixed-point number: +; 20 is ×2.0 +; 05 is ×0.5 +; 00 is ×0 + db WATER,FIRE,20 + db FIRE,GRASS,20 + db FIRE,ICE,20 + db GRASS,WATER,20 + db ELECTRIC,WATER,20 + db WATER,ROCK,20 + db GROUND,FLYING,00 + db WATER,WATER,05 + db FIRE,FIRE,05 + db ELECTRIC,ELECTRIC,05 + db ICE,ICE,05 + db GRASS,GRASS,05 + db PSYCHIC,PSYCHIC,05 + db FIRE,WATER,05 + db GRASS,FIRE,05 + db WATER,GRASS,05 + db ELECTRIC,GRASS,05 + db NORMAL,ROCK,05 + db NORMAL,GHOST,00 + db GHOST,GHOST,20 + db FIRE,BUG,20 + db FIRE,ROCK,05 + db WATER,GROUND,20 + db ELECTRIC,GROUND,00 + db ELECTRIC,FLYING,20 + db GRASS,GROUND,20 + db GRASS,BUG,05 + db GRASS,POISON,05 + db GRASS,ROCK,20 + db GRASS,FLYING,05 + db ICE,WATER,05 + db ICE,GRASS,20 + db ICE,GROUND,20 + db ICE,FLYING,20 + db FIGHTING,NORMAL,20 + db FIGHTING,POISON,05 + db FIGHTING,FLYING,05 + db FIGHTING,PSYCHIC,05 + db FIGHTING,BUG,05 + db FIGHTING,ROCK,20 + db FIGHTING,ICE,20 + db FIGHTING,GHOST,00 + db POISON,GRASS,20 + db POISON,POISON,05 + db POISON,GROUND,05 + db POISON,BUG,20 + db POISON,ROCK,05 + db POISON,GHOST,05 + db GROUND,FIRE,20 + db GROUND,ELECTRIC,20 + db GROUND,GRASS,05 + db GROUND,BUG,05 + db GROUND,ROCK,20 + db GROUND,POISON,20 + db FLYING,ELECTRIC,05 + db FLYING,FIGHTING,20 + db FLYING,BUG,20 + db FLYING,GRASS,20 + db FLYING,ROCK,05 + db PSYCHIC,FIGHTING,20 + db PSYCHIC,POISON,20 + db BUG,FIRE,05 + db BUG,GRASS,20 + db BUG,FIGHTING,05 + db BUG,FLYING,05 + db BUG,PSYCHIC,20 + db BUG,GHOST,05 + db BUG,POISON,20 + db ROCK,FIRE,20 + db ROCK,FIGHTING,05 + db ROCK,GROUND,05 + db ROCK,FLYING,20 + db ROCK,BUG,20 + db ROCK,ICE,20 + db GHOST,NORMAL,00 + db GHOST,PSYCHIC,00 + db FIRE,DRAGON,05 + db WATER,DRAGON,05 + db ELECTRIC,DRAGON,05 + db GRASS,DRAGON,05 + db ICE,DRAGON,20 + db DRAGON,DRAGON,20 + db $FF diff --git a/data/warp_tile_ids.asm b/data/warp_tile_ids.asm new file mode 100755 index 00000000..aa725d00 --- /dev/null +++ b/data/warp_tile_ids.asm @@ -0,0 +1,85 @@ +WarpTileIDPointers: ; c4cc (3:44cc) + dw OverworldWarpTileIDs + dw RedsHouse1WarpTileIDs + dw MartWarpTileIDs + dw ForestWarpTileIDs + dw RedsHouse2WarpTileIDs + dw DojoWarpTileIDs + dw PokecenterWarpTileIDs + dw GymWarpTileIDs + dw HouseWarpTileIDs + dw ForestGateWarpTileIDs + dw MuseumWarpTileIDs + dw UndergroundWarpTileIDs + dw GateWarpTileIDs + dw ShipWarpTileIDs + dw ShipPortWarpTileIDs + dw CemeteryWarpTileIDs + dw InteriorWarpTileIDs + dw CavernWarpTileIDs + dw LobbyWarpTileIDs + dw MansionWarpTileIDs + dw LabWarpTileIDs + dw ClubWarpTileIDs + dw FacilityWarpTileIDs + dw PlateauWarpTileIDs + +OverworldWarpTileIDs: ; c4fc (3:44fc) + db $1B,$58,$FF + +ForestGateWarpTileIDs: ; c4ff (3:44ff) +MuseumWarpTileIDs: ; c4ff (3:44ff) +GateWarpTileIDs: ; c4ff (3:44ff) + db $3B + +RedsHouse1WarpTileIDs: ; c500 (3:4500) +RedsHouse2WarpTileIDs: ; c500 (3:4500) + db $1A,$1C,$FF + +MartWarpTileIDs: ; c503 (3:4503) +PokecenterWarpTileIDs: ; c503 (3:4503) + db $5E,$FF + +ForestWarpTileIDs: ; c505 (3:4505) + db $5A,$5C,$3A,$FF + +DojoWarpTileIDs: ; c509 (3:4509) +GymWarpTileIDs: ; c509 (3:4509) + db $4A,$FF + +HouseWarpTileIDs: ; c50b (3:450b) + db $54,$5C,$32,$FF + +ShipWarpTileIDs: ; c50f (3:450f) + db $37,$39,$1E,$4A,$FF + +InteriorWarpTileIDs: ; c514 (3:4514) + db $15,$55,$04,$FF + +CavernWarpTileIDs: ; c518 (3:4518) + db $18,$1A,$22,$FF + +LobbyWarpTileIDs: ; c51c (3:451c) + db $1A,$1C,$38,$FF + +MansionWarpTileIDs: ; c520 (3:4520) + db $1A,$1C,$53,$FF + +LabWarpTileIDs: ; c524 (3:4524) + db $34,$FF + +FacilityWarpTileIDs: ; c526 (3:4526) + db $43,$58,$20 + +CemeteryWarpTileIDs: ; c529 (3:4529) + db $1B + +UndergroundWarpTileIDs: ; c52a (3:452a) + db $13,$FF + +PlateauWarpTileIDs: ; c52c (3:452c) + db $1B,$3B + +ShipPortWarpTileIDs: ; c52e (3:452e) +ClubWarpTileIDs: ; c52e (3:452e) + db $FF diff --git a/data/wildPokemon/diglettscave.asm b/data/wildPokemon/diglettscave.asm new file mode 100755 index 00000000..0b8ec1c7 --- /dev/null +++ b/data/wildPokemon/diglettscave.asm @@ -0,0 +1,14 @@ +CaveMons: + db $14 + db 18,DIGLETT + db 19,DIGLETT + db 17,DIGLETT + db 20,DIGLETT + db 16,DIGLETT + db 15,DIGLETT + db 21,DIGLETT + db 22,DIGLETT + db 29,DUGTRIO + db 31,DUGTRIO + db $00 + diff --git a/data/wildPokemon/fishinggroup1.asm b/data/wildPokemon/fishinggroup1.asm new file mode 100755 index 00000000..32dacef7 --- /dev/null +++ b/data/wildPokemon/fishinggroup1.asm @@ -0,0 +1,4 @@ +FishingGroup1: ; e97d (3:697d) + db 2 + db 15,TENTACOOL + db 15,POLIWAG diff --git a/data/wildPokemon/fishinggroup10.asm b/data/wildPokemon/fishinggroup10.asm new file mode 100755 index 00000000..5b815af4 --- /dev/null +++ b/data/wildPokemon/fishinggroup10.asm @@ -0,0 +1,6 @@ +FishingGroup10: ; e9bc (3:69bc) + db 4 + db 23,SEAKING + db 15,KRABBY + db 15,GOLDEEN + db 15,MAGIKARP diff --git a/data/wildPokemon/fishinggroup2.asm b/data/wildPokemon/fishinggroup2.asm new file mode 100755 index 00000000..758db30a --- /dev/null +++ b/data/wildPokemon/fishinggroup2.asm @@ -0,0 +1,4 @@ +FishingGroup2: ; e982 (3:6982) + db 2 + db 15,GOLDEEN + db 15,POLIWAG diff --git a/data/wildPokemon/fishinggroup3.asm b/data/wildPokemon/fishinggroup3.asm new file mode 100755 index 00000000..2c1911fa --- /dev/null +++ b/data/wildPokemon/fishinggroup3.asm @@ -0,0 +1,5 @@ +FishingGroup3: ; e987 (3:6987) + db 3 + db 15,PSYDUCK + db 15,GOLDEEN + db 15,KRABBY diff --git a/data/wildPokemon/fishinggroup4.asm b/data/wildPokemon/fishinggroup4.asm new file mode 100755 index 00000000..ae9a73ed --- /dev/null +++ b/data/wildPokemon/fishinggroup4.asm @@ -0,0 +1,4 @@ +FishingGroup4: ; e98e (3:698e) + db 2 + db 15,KRABBY + db 15,SHELLDER diff --git a/data/wildPokemon/fishinggroup5.asm b/data/wildPokemon/fishinggroup5.asm new file mode 100755 index 00000000..ad856b27 --- /dev/null +++ b/data/wildPokemon/fishinggroup5.asm @@ -0,0 +1,4 @@ +FishingGroup5: ; e993 (3:6993) + db 2 + db 23,POLIWHIRL + db 15,SLOWPOKE diff --git a/data/wildPokemon/fishinggroup6.asm b/data/wildPokemon/fishinggroup6.asm new file mode 100755 index 00000000..581060d4 --- /dev/null +++ b/data/wildPokemon/fishinggroup6.asm @@ -0,0 +1,6 @@ +FishingGroup6: ; e998 (3:6998) + db 4 + db 15,DRATINI + db 15,KRABBY + db 15,PSYDUCK + db 15,SLOWPOKE diff --git a/data/wildPokemon/fishinggroup7.asm b/data/wildPokemon/fishinggroup7.asm new file mode 100755 index 00000000..69c3fc25 --- /dev/null +++ b/data/wildPokemon/fishinggroup7.asm @@ -0,0 +1,6 @@ +FishingGroup7: ; e9a1 (3:69a1) + db 4 + db 5,TENTACOOL + db 15,KRABBY + db 15,GOLDEEN + db 15,MAGIKARP diff --git a/data/wildPokemon/fishinggroup8.asm b/data/wildPokemon/fishinggroup8.asm new file mode 100755 index 00000000..04cc1632 --- /dev/null +++ b/data/wildPokemon/fishinggroup8.asm @@ -0,0 +1,6 @@ +FishingGroup8: ; e9aa (3:69aa) + db 4 + db 15,STARYU + db 15,HORSEA + db 15,SHELLDER + db 15,GOLDEEN diff --git a/data/wildPokemon/fishinggroup9.asm b/data/wildPokemon/fishinggroup9.asm new file mode 100755 index 00000000..8c02cd00 --- /dev/null +++ b/data/wildPokemon/fishinggroup9.asm @@ -0,0 +1,6 @@ +FishingGroup9: ; e9b3 (3:69b3) + db 4 + db 23,SLOWBRO + db 23,SEAKING + db 23,KINGLER + db 23,SEADRA diff --git a/data/wildPokemon/mansion1.asm b/data/wildPokemon/mansion1.asm new file mode 100755 index 00000000..0a333398 --- /dev/null +++ b/data/wildPokemon/mansion1.asm @@ -0,0 +1,43 @@ +MansionMons1: + db $0A + IF _RED + db 32,KOFFING + db 30,KOFFING + db 34,PONYTA + db 30,PONYTA + db 34,GROWLITHE + db 32,PONYTA + db 30,GRIMER + db 28,PONYTA + db 37,WEEZING + db 39,MUK + ENDC + + IF _GREEN || _BLUE + db 32,GRIMER + db 30,GRIMER + db 34,PONYTA + db 30,PONYTA + db 34,VULPIX + db 32,PONYTA + db 30,KOFFING + db 28,PONYTA + db 37,MUK + db 39,WEEZING + ENDC + + IF _YELLOW + db 34,RATTATA + db 34,RATICATE + db 23,GRIMER + db 26,GROWLITHE + db 37,RATTATA + db 37,RATICATE + db 30,GROWLITHE + db 26,GRIMER + db 34,GROWLITHE + db 38,GROWLITHE + ENDC + + db $00 + diff --git a/data/wildPokemon/mansion2.asm b/data/wildPokemon/mansion2.asm new file mode 100755 index 00000000..07ddc947 --- /dev/null +++ b/data/wildPokemon/mansion2.asm @@ -0,0 +1,56 @@ +MansionMons2: + db $0A + IF _RED + db 32,GROWLITHE + db 34,KOFFING + db 34,KOFFING + db 30,PONYTA + db 30,KOFFING + db 32,PONYTA + db 30,GRIMER + db 28,PONYTA + db 39,WEEZING + db 37,MUK + ENDC + + IF _GREEN || !_JAPAN && _BLUE + db 32,VULPIX + db 34,GRIMER + db 34,GRIMER + db 30,PONYTA + db 30,GRIMER + db 32,PONYTA + db 30,KOFFING + db 28,PONYTA + db 39,MUK + db 37,WEEZING + ENDC + + IF _JAPAN && _BLUE + db 32,GROWLITHE + db 34,GRIMER + db 34,GRIMER + db 30,PONYTA + db 30,GRIMER + db 32,PONYTA + db 30,KOFFING + db 28,PONYTA + db 39,MUK + db 37,WEEZING + ENDC + + IF _YELLOW + db 37,RATTATA + db 37,RATICATE + db 26,GRIMER + db 29,GRIMER + db 40,RATTATA + db 40,RATICATE + db 32,GRIMER + db 35,GRIMER + db 35,MUK + db 38,MUK + ENDC + + db $00 + diff --git a/data/wildPokemon/mansion3.asm b/data/wildPokemon/mansion3.asm new file mode 100755 index 00000000..c0df4020 --- /dev/null +++ b/data/wildPokemon/mansion3.asm @@ -0,0 +1,56 @@ +MansionMons3: + db $0A + IF _RED + db 31,KOFFING + db 33,GROWLITHE + db 35,KOFFING + db 32,PONYTA + db 34,PONYTA + db 40,WEEZING + db 34,GRIMER + db 38,WEEZING + db 36,PONYTA + db 42,MUK + ENDC + + IF _GREEN || !_JAPAN && _BLUE + db 31,GRIMER + db 33,VULPIX + db 35,GRIMER + db 32,PONYTA + db 34,MAGMAR + db 40,MUK + db 34,KOFFING + db 38,MUK + db 36,PONYTA + db 42,WEEZING + ENDC + + IF _JAPAN && _BLUE + db 31,GRIMER + db 33,GROWLITHE + db 35,GRIMER + db 32,PONYTA + db 34,PONYTA + db 40,MUK + db 34,KOFFING + db 38,MUK + db 36,PONYTA + db 42,WEEZING + ENDC + + IF _YELLOW + db 40,RATTATA + db 40,RATICATE + db 32,GRIMER + db 35,GRIMER + db 43,RATTATA + db 43,RATICATE + db 38,GRIMER + db 38,GRIMER + db 38,MUK + db 41,MUK + ENDC + + db $00 + diff --git a/data/wildPokemon/mansionb1.asm b/data/wildPokemon/mansionb1.asm new file mode 100755 index 00000000..9b90d211 --- /dev/null +++ b/data/wildPokemon/mansionb1.asm @@ -0,0 +1,56 @@ +MansionMonsB1: + db $0A + IF _RED + db 33,KOFFING + db 31,KOFFING + db 35,GROWLITHE + db 32,PONYTA + db 31,KOFFING + db 40,WEEZING + db 34,PONYTA + db 35,GRIMER + db 42,WEEZING + db 42,MUK + ENDC + + IF _GREEN || !_JAPAN && _BLUE + db 33,GRIMER + db 31,GRIMER + db 35,VULPIX + db 32,PONYTA + db 31,GRIMER + db 40,MUK + db 34,PONYTA + db 35,KOFFING + db 38,MAGMAR + db 42,WEEZING + ENDC + + IF _JAPAN && _BLUE + db 33,GRIMER + db 31,GRIMER + db 35,GROWLITHE + db 32,PONYTA + db 31,GRIMER + db 40,MUK + db 34,PONYTA + db 35,KOFFING + db 38,MUK + db 42,WEEZING + ENDC + + IF _YELLOW + db 35,GRIMER + db 38,GRIMER + db 37,RATICATE + db 40,RATICATE + db 41,MUK + db 43,RATICATE + db 24,DITTO + db 46,RATICATE + db 18,DITTO + db 12,DITTO + ENDC + + db $00 + diff --git a/data/wildPokemon/mtmoon1.asm b/data/wildPokemon/mtmoon1.asm new file mode 100755 index 00000000..3f69ae3f --- /dev/null +++ b/data/wildPokemon/mtmoon1.asm @@ -0,0 +1,28 @@ +MoonMons1: + db $0A + IF !_YELLOW + db 8,ZUBAT + db 7,ZUBAT + db 9,ZUBAT + db 8,GEODUDE + db 6,ZUBAT + db 10,ZUBAT + db 10,GEODUDE + db 8,PARAS + db 11,ZUBAT + db 8,CLEFAIRY + ENDC + IF _YELLOW + db 8,ZUBAT + db 9,ZUBAT + db 10,GEODUDE + db 6,ZUBAT + db 7,ZUBAT + db 10,ZUBAT + db 10,GEODUDE + db 11,ZUBAT + db 12,SANDSHREW + db 11,CLEFAIRY + ENDC + db $00 + diff --git a/data/wildPokemon/mtmoonb1.asm b/data/wildPokemon/mtmoonb1.asm new file mode 100755 index 00000000..30d9a4ce --- /dev/null +++ b/data/wildPokemon/mtmoonb1.asm @@ -0,0 +1,28 @@ +MoonMonsB1: + db $0A + IF !_YELLOW + db 8,ZUBAT + db 7,ZUBAT + db 7,GEODUDE + db 8,GEODUDE + db 9,ZUBAT + db 10,PARAS + db 10,ZUBAT + db 11,ZUBAT + db 9,CLEFAIRY + db 9,GEODUDE + ENDC + IF _YELLOW + db 8,ZUBAT + db 9,ZUBAT + db 10,GEODUDE + db 6,ZUBAT + db 7,ZUBAT + db 10,ZUBAT + db 10,GEODUDE + db 11,ZUBAT + db 12,SANDSHREW + db 11,CLEFAIRY + ENDC + db $00 + diff --git a/data/wildPokemon/mtmoonb2.asm b/data/wildPokemon/mtmoonb2.asm new file mode 100755 index 00000000..36266724 --- /dev/null +++ b/data/wildPokemon/mtmoonb2.asm @@ -0,0 +1,28 @@ +MoonMonsB2: + db $0A + IF !_YELLOW + db 9,ZUBAT + db 9,GEODUDE + db 10,ZUBAT + db 10,GEODUDE + db 11,ZUBAT + db 10,PARAS + db 12,PARAS + db 10,CLEFAIRY + db 12,ZUBAT + db 12,CLEFAIRY + ENDC + IF _YELLOW + db 10,ZUBAT + db 11,GEODUDE + db 13,PARAS + db 11,ZUBAT + db 11,ZUBAT + db 12,ZUBAT + db 13,ZUBAT + db 9,CLEFAIRY + db 11,CLEFAIRY + db 13,CLEFAIRY + ENDC + db $00 + diff --git a/data/wildPokemon/nomons.asm b/data/wildPokemon/nomons.asm new file mode 100755 index 00000000..895cf2e0 --- /dev/null +++ b/data/wildPokemon/nomons.asm @@ -0,0 +1,4 @@ +NoMons: + db $00 + db $00 + diff --git a/data/wildPokemon/pokemontower1.asm b/data/wildPokemon/pokemontower1.asm new file mode 100755 index 00000000..bdf0abc1 --- /dev/null +++ b/data/wildPokemon/pokemontower1.asm @@ -0,0 +1,4 @@ +TowerMons1: + db $00 + db $00 + diff --git a/data/wildPokemon/pokemontower2.asm b/data/wildPokemon/pokemontower2.asm new file mode 100755 index 00000000..1d0eddaf --- /dev/null +++ b/data/wildPokemon/pokemontower2.asm @@ -0,0 +1,4 @@ +TowerMons2: + db $00 + db $00 + diff --git a/data/wildPokemon/pokemontower3.asm b/data/wildPokemon/pokemontower3.asm new file mode 100755 index 00000000..7d1abf59 --- /dev/null +++ b/data/wildPokemon/pokemontower3.asm @@ -0,0 +1,31 @@ +TowerMons3: + db $0A + + IF !_YELLOW + db 20,GASTLY + db 21,GASTLY + db 22,GASTLY + db 23,GASTLY + db 19,GASTLY + db 18,GASTLY + db 24,GASTLY + db 20,CUBONE + db 22,CUBONE + db 25,HAUNTER + ENDC + + IF _YELLOW + db 20,GASTLY + db 21,GASTLY + db 22,GASTLY + db 23,GASTLY + db 24,GASTLY + db 19,GASTLY + db 18,GASTLY + db 25,GASTLY + db 20,HAUNTER + db 25,HAUNTER + ENDC + + db $00 + diff --git a/data/wildPokemon/pokemontower4.asm b/data/wildPokemon/pokemontower4.asm new file mode 100755 index 00000000..462e5034 --- /dev/null +++ b/data/wildPokemon/pokemontower4.asm @@ -0,0 +1,31 @@ +TowerMons4: + db $0A + + IF !_YELLOW + db 20,GASTLY + db 21,GASTLY + db 22,GASTLY + db 23,GASTLY + db 19,GASTLY + db 18,GASTLY + db 25,HAUNTER + db 20,CUBONE + db 22,CUBONE + db 24,GASTLY + ENDC + + IF _YELLOW + db 20,GASTLY + db 21,GASTLY + db 22,GASTLY + db 23,GASTLY + db 24,GASTLY + db 19,GASTLY + db 18,GASTLY + db 25,GASTLY + db 20,HAUNTER + db 25,HAUNTER + ENDC + + db $00 + diff --git a/data/wildPokemon/pokemontower5.asm b/data/wildPokemon/pokemontower5.asm new file mode 100755 index 00000000..6976937a --- /dev/null +++ b/data/wildPokemon/pokemontower5.asm @@ -0,0 +1,31 @@ +TowerMons5: + db $0A + + IF !_YELLOW + db 20,GASTLY + db 21,GASTLY + db 22,GASTLY + db 23,GASTLY + db 19,GASTLY + db 18,GASTLY + db 25,HAUNTER + db 20,CUBONE + db 22,CUBONE + db 24,GASTLY + ENDC + + IF _YELLOW + db 22,GASTLY + db 23,GASTLY + db 24,GASTLY + db 25,GASTLY + db 26,GASTLY + db 21,GASTLY + db 20,CUBONE + db 27,GASTLY + db 22,HAUNTER + db 27,HAUNTER + ENDC + + db $00 + diff --git a/data/wildPokemon/pokemontower6.asm b/data/wildPokemon/pokemontower6.asm new file mode 100755 index 00000000..4f2d9594 --- /dev/null +++ b/data/wildPokemon/pokemontower6.asm @@ -0,0 +1,31 @@ +TowerMons6: + db $0F + + IF !_YELLOW + db 21,GASTLY + db 22,GASTLY + db 23,GASTLY + db 24,GASTLY + db 20,GASTLY + db 19,GASTLY + db 26,HAUNTER + db 22,CUBONE + db 24,CUBONE + db 28,HAUNTER + ENDC + + IF _YELLOW + db 22,GASTLY + db 23,GASTLY + db 24,GASTLY + db 25,GASTLY + db 26,GASTLY + db 21,GASTLY + db 22,CUBONE + db 27,GASTLY + db 22,HAUNTER + db 27,HAUNTER + ENDC + + db $00 + diff --git a/data/wildPokemon/pokemontower7.asm b/data/wildPokemon/pokemontower7.asm new file mode 100755 index 00000000..6c9afbd4 --- /dev/null +++ b/data/wildPokemon/pokemontower7.asm @@ -0,0 +1,32 @@ +TowerMons7: + db $0F + + IF !_YELLOW + db 21,GASTLY + db 22,GASTLY + db 23,GASTLY + db 24,GASTLY + db 20,GASTLY + db 28,HAUNTER + db 22,CUBONE + db 24,CUBONE + db 28,HAUNTER + db 30,HAUNTER + + ENDC + + IF _YELLOW + db 24,GASTLY + db 25,GASTLY + db 26,GASTLY + db 27,GASTLY + db 28,GASTLY + db 23,GASTLY + db 24,CUBONE + db 29,GASTLY + db 24,HAUNTER + db 29,HAUNTER + ENDC + + db $00 + diff --git a/data/wildPokemon/powerplant.asm b/data/wildPokemon/powerplant.asm new file mode 100755 index 00000000..741232c3 --- /dev/null +++ b/data/wildPokemon/powerplant.asm @@ -0,0 +1,37 @@ +PowerPlantMons: + db $0A + IF !_YELLOW + + db 21,VOLTORB + db 21,MAGNEMITE + db 20,PIKACHU + db 24,PIKACHU + db 23,MAGNEMITE + db 23,VOLTORB + db 32,MAGNETON + db 35,MAGNETON + IF _RED + db 33,ELECTABUZZ + db 36,ELECTABUZZ + ENDC + IF _GREEN || _BLUE + db 33,RAICHU + db 36,RAICHU + ENDC + ENDC + + IF _YELLOW + db 30,MAGNEMITE + db 35,MAGNEMITE + db 33,MAGNETON + db 33,VOLTORB + db 37,VOLTORB + db 33,GRIMER + db 37,GRIMER + db 38,MAGNETON + db 33,MUK + db 37,MUK + ENDC + + db $00 + diff --git a/data/wildPokemon/rocktunnel1.asm b/data/wildPokemon/rocktunnel1.asm new file mode 100755 index 00000000..20416c5f --- /dev/null +++ b/data/wildPokemon/rocktunnel1.asm @@ -0,0 +1,36 @@ +TunnelMonsB1: + db $0F + + IF !_YELLOW + db 16,ZUBAT + db 17,ZUBAT + db 17,GEODUDE + db 15,MACHOP + db 16,GEODUDE + IF _RED || _GREEN || (_BLUE && !_JAPAN) + db 18,ZUBAT + ENDC + IF (_BLUE && _JAPAN) + db 18,DITTO + ENDC + db 15,ZUBAT + db 17,MACHOP + db 13,ONIX + db 15,ONIX + ENDC + + IF _YELLOW + db 15,ZUBAT + db 16,GEODUDE + db 17,ZUBAT + db 19,ZUBAT + db 18,GEODUDE + db 20,GEODUDE + db 21,ZUBAT + db 17,MACHOP + db 19,MACHOP + db 21,MACHOP + ENDC + + db $00 + diff --git a/data/wildPokemon/rocktunnel2.asm b/data/wildPokemon/rocktunnel2.asm new file mode 100755 index 00000000..b1ca24fd --- /dev/null +++ b/data/wildPokemon/rocktunnel2.asm @@ -0,0 +1,35 @@ +TunnelMonsB2: + db $0F + IF !_YELLOW + db 16,ZUBAT + db 17,ZUBAT + db 17,GEODUDE + db 15,MACHOP + db 16,GEODUDE + IF _RED || _GREEN || (_BLUE && !_JAPAN) + db 18,ZUBAT + ENDC + IF (_BLUE && _JAPAN) + db 18,DITTO + ENDC + db 17,MACHOP + db 17,ONIX + db 13,ONIX + db 18,GEODUDE + ENDC + + IF _YELLOW + db 20,ZUBAT + db 17,GEODUDE + db 18,MACHOP + db 21,ZUBAT + db 22,ZUBAT + db 21,GEODUDE + db 20,MACHOP + db 14,ONIX + db 18,ONIX + db 22,ONIX + ENDC + + db $00 + diff --git a/data/wildPokemon/route1.asm b/data/wildPokemon/route1.asm new file mode 100755 index 00000000..94469880 --- /dev/null +++ b/data/wildPokemon/route1.asm @@ -0,0 +1,28 @@ +Route1Mons: + db $19 + IF !_YELLOW + db 3,PIDGEY + db 3,RATTATA + db 3,RATTATA + db 2,RATTATA + db 2,PIDGEY + db 3,PIDGEY + db 3,PIDGEY + db 4,RATTATA + db 4,PIDGEY + db 5,PIDGEY + ENDC + IF _YELLOW + db 3,PIDGEY + db 4,PIDGEY + db 2,RATTATA + db 3,RATTATA + db 2,PIDGEY + db 3,PIDGEY + db 5,PIDGEY + db 4,RATTATA + db 6,PIDGEY + db 7,PIDGEY + ENDC + db $00 + diff --git a/data/wildPokemon/route10.asm b/data/wildPokemon/route10.asm new file mode 100755 index 00000000..69651380 --- /dev/null +++ b/data/wildPokemon/route10.asm @@ -0,0 +1,44 @@ +Route10Mons: + db $0F + + IF _RED + db 16,VOLTORB + db 16,SPEAROW + db 14,VOLTORB + db 11,EKANS + db 13,SPEAROW + db 15,EKANS + db 17,VOLTORB + db 17,SPEAROW + db 13,EKANS + db 17,EKANS + ENDC + + IF !_RED + db 16,VOLTORB + db 16,SPEAROW + db 14,VOLTORB + db 11,SANDSHREW + db 13,SPEAROW + db 15,SANDSHREW + db 17,VOLTORB + db 17,SPEAROW + db 13,SANDSHREW + db 17,SANDSHREW + ENDC + + IF _YELLOW + db 16,MAGNEMITE + db 18,RATTATA + db 18,MAGNEMITE + db 20,MAGNEMITE + db 17,NIDORAN_M + db 17,NIDORAN_F + db 22,MAGNEMITE + db 20,RATICATE + db 16,MACHOP + db 18,MACHOP + ENDC + + db $00 + diff --git a/data/wildPokemon/route11.asm b/data/wildPokemon/route11.asm new file mode 100755 index 00000000..afe72dd2 --- /dev/null +++ b/data/wildPokemon/route11.asm @@ -0,0 +1,44 @@ +Route11Mons: + db $0F + + IF _RED + db 14,EKANS + db 15,SPEAROW + db 12,EKANS + db 9,DROWZEE + db 13,SPEAROW + db 13,DROWZEE + db 15,EKANS + db 17,SPEAROW + db 11,DROWZEE + db 15,DROWZEE + ENDC + + IF _GREEN || _BLUE + db 14,SANDSHREW + db 15,SPEAROW + db 12,SANDSHREW + db 9,DROWZEE + db 13,SPEAROW + db 13,DROWZEE + db 15,SANDSHREW + db 17,SPEAROW + db 11,DROWZEE + db 15,DROWZEE + ENDC + + IF _YELLOW + db 16,PIDGEY + db 15,RATTATA + db 18,PIDGEY + db 15,DROWZEE + db 17,RATTATA + db 17,DROWZEE + db 18,PIDGEOTTO + db 20,PIDGEOTTO + db 19,DROWZEE + db 17,RATICATE + ENDC + + db $00 + diff --git a/data/wildPokemon/route12.asm b/data/wildPokemon/route12.asm new file mode 100755 index 00000000..e16b407b --- /dev/null +++ b/data/wildPokemon/route12.asm @@ -0,0 +1,56 @@ +Route12Mons: + db $0F + + IF _RED || (_JAPAN && _BLUE) + db 24,ODDISH + db 25,PIDGEY + db 23,PIDGEY + db 24,VENONAT + db 22,ODDISH + db 26,VENONAT + db 26,ODDISH + db 27,PIDGEY + db 28,GLOOM + db 30,GLOOM + db $00 + ENDC + + IF _GREEN || (!_JAPAN && _BLUE) + db 24,BELLSPROUT + db 25,PIDGEY + db 23,PIDGEY + db 24,VENONAT + db 22,BELLSPROUT + db 26,VENONAT + db 26,BELLSPROUT + db 27,PIDGEY + db 28,WEEPINBELL + db 30,WEEPINBELL + db $00 + ENDC + + IF _YELLOW + db 25,ODDISH + db 25,BELLSPROUT + db 28,PIDGEY + db 28,PIDGEOTTO + db 27,ODDISH + db 27,BELLSPROUT + db 29,GLOOM + db 29,WEEPINBELL + db 26,FARFETCH_D + db 31,FARFETCH_D + + db $03 + db 15,SLOWPOKE + db 15,SLOWPOKE + db 15,SLOWPOKE + db 15,SLOWPOKE + db 15,SLOWPOKE + db 15,SLOWPOKE + db 15,SLOWPOKE + db 15,SLOWPOKE + db 15,SLOWBRO + db 20,SLOWBRO + ENDC + diff --git a/data/wildPokemon/route13.asm b/data/wildPokemon/route13.asm new file mode 100755 index 00000000..96e53229 --- /dev/null +++ b/data/wildPokemon/route13.asm @@ -0,0 +1,57 @@ +Route13Mons: + IF _RED || (_JAPAN && _BLUE) + db $14 + db 24,ODDISH + db 25,PIDGEY + db 27,PIDGEY + db 24,VENONAT + db 22,ODDISH + db 26,VENONAT + db 26,ODDISH + db 25,DITTO + db 28,GLOOM + db 30,GLOOM + db $00 + ENDC + + IF _GREEN || (!_JAPAN && _BLUE) + db $14 + db 24,BELLSPROUT + db 25,PIDGEY + db 27,PIDGEY + db 24,VENONAT + db 22,BELLSPROUT + db 26,VENONAT + db 26,BELLSPROUT + db 25,DITTO + db 28,WEEPINBELL + db 30,WEEPINBELL + db $00 + ENDC + + IF _YELLOW + db $0F + db 25,ODDISH + db 25,BELLSPROUT + db 28,PIDGEOTTO + db 28,PIDGEY + db 27,ODDISH + db 27,BELLSPROUT + db 29,GLOOM + db 29,WEEPINBELL + db 26,FARFETCH_D + db 31,FARFETCH_D + + db $03 + db 15,SLOWPOKE + db 15,SLOWPOKE + db 15,SLOWPOKE + db 15,SLOWPOKE + db 15,SLOWPOKE + db 15,SLOWPOKE + db 15,SLOWPOKE + db 15,SLOWPOKE + db 15,SLOWBRO + db 20,SLOWBRO + ENDC + diff --git a/data/wildPokemon/route14.asm b/data/wildPokemon/route14.asm new file mode 100755 index 00000000..c3e0743b --- /dev/null +++ b/data/wildPokemon/route14.asm @@ -0,0 +1,43 @@ +Route14Mons: + db $0F + IF _RED || (_JAPAN && _BLUE) + db 24,ODDISH + db 26,PIDGEY + db 23,DITTO + db 24,VENONAT + db 22,ODDISH + db 26,VENONAT + db 26,ODDISH + db 30,GLOOM + db 28,PIDGEOTTO + db 30,PIDGEOTTO + ENDC + + IF _GREEN || (!_JAPAN && _BLUE) + db 24,BELLSPROUT + db 26,PIDGEY + db 23,DITTO + db 24,VENONAT + db 22,BELLSPROUT + db 26,VENONAT + db 26,BELLSPROUT + db 30,WEEPINBELL + db 28,PIDGEOTTO + db 30,PIDGEOTTO + ENDC + + IF _YELLOW + db 26,ODDISH + db 26,BELLSPROUT + db 24,VENONAT + db 30,PIDGEOTTO + db 28,ODDISH + db 28,BELLSPROUT + db 30,GLOOM + db 30,WEEPINBELL + db 27,VENONAT + db 30,VENOMOTH + ENDC + + db $00 + diff --git a/data/wildPokemon/route15.asm b/data/wildPokemon/route15.asm new file mode 100755 index 00000000..a8215cd3 --- /dev/null +++ b/data/wildPokemon/route15.asm @@ -0,0 +1,43 @@ +Route15Mons: + db $0F + IF _RED || (_JAPAN && _BLUE) + db 24,ODDISH + db 26,DITTO + db 23,PIDGEY + db 26,VENONAT + db 22,ODDISH + db 28,VENONAT + db 26,ODDISH + db 30,GLOOM + db 28,PIDGEOTTO + db 30,PIDGEOTTO + ENDC + + IF _GREEN || (!_JAPAN && _BLUE) + db 24,BELLSPROUT + db 26,DITTO + db 23,PIDGEY + db 26,VENONAT + db 22,BELLSPROUT + db 28,VENONAT + db 26,BELLSPROUT + db 30,WEEPINBELL + db 28,PIDGEOTTO + db 30,PIDGEOTTO + ENDC + + IF _YELLOW + db 26,ODDISH + db 26,BELLSPROUT + db 24,VENONAT + db 32,PIDGEOTTO + db 28,ODDISH + db 28,BELLSPROUT + db 30,GLOOM + db 30,WEEPINBELL + db 27,VENONAT + db 30,VENOMOTH + ENDC + + db $00 + diff --git a/data/wildPokemon/route16.asm b/data/wildPokemon/route16.asm new file mode 100755 index 00000000..23aadb6c --- /dev/null +++ b/data/wildPokemon/route16.asm @@ -0,0 +1,30 @@ +Route16Mons: + db $19 + IF !_YELLOW + db 20,SPEAROW + db 22,SPEAROW + db 18,RATTATA + db 20,DODUO + db 20,RATTATA + db 18,DODUO + db 22,DODUO + db 22,RATTATA + db 23,RATICATE + db 25,RATICATE + ENDC + + IF _YELLOW + db 22,SPEAROW + db 22,DODUO + db 23,RATTATA + db 24,DODUO + db 24,RATTATA + db 26,DODUO + db 23,SPEAROW + db 24,FEAROW + db 25,RATICATE + db 26,RATICATE + ENDC + + db $00 + diff --git a/data/wildPokemon/route17.asm b/data/wildPokemon/route17.asm new file mode 100755 index 00000000..9cdb18b3 --- /dev/null +++ b/data/wildPokemon/route17.asm @@ -0,0 +1,30 @@ +Route17Mons: + db $19 + IF !_YELLOW + db 20,SPEAROW + db 22,SPEAROW + db 25,RATICATE + db 24,DODUO + db 27,RATICATE + db 26,DODUO + db 28,DODUO + db 29,RATICATE + db 25,FEAROW + db 27,FEAROW + ENDC + + IF _YELLOW + db 26,DODUO + db 27,FEAROW + db 27,DODUO + db 28,DODUO + db 28,PONYTA + db 30,PONYTA + db 29,FEAROW + db 28,DODUO + db 32,PONYTA + db 29,DODRIO + ENDC + + db $00 + diff --git a/data/wildPokemon/route18.asm b/data/wildPokemon/route18.asm new file mode 100755 index 00000000..9d2b08cf --- /dev/null +++ b/data/wildPokemon/route18.asm @@ -0,0 +1,30 @@ +Route18Mons: + db $19 + IF !_YELLOW + db 20,SPEAROW + db 22,SPEAROW + db 25,RATICATE + db 24,DODUO + db 25,FEAROW + db 26,DODUO + db 28,DODUO + db 29,RATICATE + db 27,FEAROW + db 29,FEAROW + ENDC + + IF _YELLOW + db 22,SPEAROW + db 22,DODUO + db 23,RATTATA + db 24,DODUO + db 24,RATTATA + db 26,DODUO + db 23,SPEAROW + db 24,FEAROW + db 25,RATICATE + db 26,RATICATE + ENDC + + db $00 + diff --git a/data/wildPokemon/route2.asm b/data/wildPokemon/route2.asm new file mode 100755 index 00000000..e63f5028 --- /dev/null +++ b/data/wildPokemon/route2.asm @@ -0,0 +1,40 @@ +Route2Mons: + db $19 + + IF !_YELLOW + db 3,RATTATA + db 3,PIDGEY + db 4,PIDGEY + db 4,RATTATA + db 5,PIDGEY + if _RED + db 3,WEEDLE + ENDC + if _BLUE + db 3,CATERPIE + ENDC + db 2,RATTATA + db 5,RATTATA + if _RED + db 4,WEEDLE + db 5,WEEDLE + ENDC + if _BLUE + db 4,CATERPIE + db 5,CATERPIE + ENDC + ENDC + IF _YELLOW + db 3,RATTATA + db 3,PIDGEY + db 4,RATTATA + db 4,NIDORAN_M + db 4,NIDORAN_F + db 5,PIDGEY + db 6,NIDORAN_M + db 6,NIDORAN_F + db 7,PIDGEY + db 7,PIDGEY + ENDC + db $00 + diff --git a/data/wildPokemon/route21.asm b/data/wildPokemon/route21.asm new file mode 100755 index 00000000..26a590da --- /dev/null +++ b/data/wildPokemon/route21.asm @@ -0,0 +1,40 @@ +Route21Mons: + db $19 + IF !_YELLOW + db 21,RATTATA + db 23,PIDGEY + db 30,RATICATE + db 23,RATTATA + db 21,PIDGEY + db 30,PIDGEOTTO + db 32,PIDGEOTTO + db 28,TANGELA + db 30,TANGELA + db 32,TANGELA + ENDC + + IF _YELLOW + db 15,PIDGEY + db 13,RATTATA + db 13,PIDGEY + db 11,PIDGEY + db 17,PIDGEY + db 15,RATTATA + db 15,RATICATE + db 17,PIDGEOTTO + db 19,PIDGEOTTO + db 15,PIDGEOTTO + ENDC + + db $05 + db 5,TENTACOOL + db 10,TENTACOOL + db 15,TENTACOOL + db 5,TENTACOOL + db 10,TENTACOOL + db 15,TENTACOOL + db 20,TENTACOOL + db 30,TENTACOOL + db 35,TENTACOOL + db 40,TENTACOOL + diff --git a/data/wildPokemon/route22.asm b/data/wildPokemon/route22.asm new file mode 100755 index 00000000..e78c02c9 --- /dev/null +++ b/data/wildPokemon/route22.asm @@ -0,0 +1,40 @@ +Route22Mons: + db $19 + IF _RED || (_JAPAN && _BLUE) + db 3,RATTATA + db 3,NIDORAN_M + db 4,RATTATA + db 4,NIDORAN_M + db 2,RATTATA + db 2,NIDORAN_M + db 3,SPEAROW + db 5,SPEAROW + db 3,NIDORAN_F + db 4,NIDORAN_F + ENDC + IF _GREEN || (!_JAPAN && _BLUE) + db 3,RATTATA + db 3,NIDORAN_F + db 4,RATTATA + db 4,NIDORAN_F + db 2,RATTATA + db 2,NIDORAN_F + db 3,SPEAROW + db 5,SPEAROW + db 3,NIDORAN_M + db 4,NIDORAN_M + ENDC + IF _YELLOW + db 2,NIDORAN_M + db 2,NIDORAN_F + db 3,MANKEY + db 3,RATTATA + db 4,NIDORAN_M + db 4,NIDORAN_F + db 5,MANKEY + db 2,SPEAROW + db 4,SPEAROW + db 6,SPEAROW + ENDC + db $00 + diff --git a/data/wildPokemon/route23.asm b/data/wildPokemon/route23.asm new file mode 100755 index 00000000..3cd2ca9d --- /dev/null +++ b/data/wildPokemon/route23.asm @@ -0,0 +1,40 @@ +Route23Mons: + db $0A + IF !_YELLOW + IF _RED + db 26,EKANS + ENDC + IF !_RED + db 26,SANDSHREW + ENDC + db 33,DITTO + db 26,SPEAROW + db 38,FEAROW + db 38,DITTO + db 38,FEAROW + IF _RED + db 41,ARBOK + ENDC + IF !_RED + db 41,SANDSLASH + ENDC + db 43,DITTO + db 41,FEAROW + db 43,FEAROW + ENDC + + IF _YELLOW + db 41,NIDORINO + db 41,NIDORINA + db 36,MANKEY + db 44,NIDORINO + db 44,NIDORINA + db 40,FEAROW + db 41,MANKEY + db 45,FEAROW + db 41,PRIMEAPE + db 46,PRIMEAPE + ENDC + + db $00 + diff --git a/data/wildPokemon/route24.asm b/data/wildPokemon/route24.asm new file mode 100755 index 00000000..28af9916 --- /dev/null +++ b/data/wildPokemon/route24.asm @@ -0,0 +1,57 @@ +Route24Mons: + db $19 + + IF _RED + db 7,WEEDLE + db 8,KAKUNA + db 12,PIDGEY + db 12,ODDISH + db 13,ODDISH + db 10,ABRA + db 14,ODDISH + db 13,PIDGEY + db 8,ABRA + db 12,ABRA + ENDC + + IF _GREEN || !_JAPAN && _BLUE + db 7,CATERPIE + db 8,METAPOD + db 12,PIDGEY + db 12,BELLSPROUT + db 13,BELLSPROUT + db 10,ABRA + db 14,BELLSPROUT + db 13,PIDGEY + db 8,ABRA + db 12,ABRA + ENDC + + IF _JAPAN && _BLUE + db 7,CATERPIE + db 8,METAPOD + db 12,PIDGEY + db 12,ODDISH + db 13,ODDISH + db 10,ABRA + db 14,ODDISH + db 13,PIDGEY + db 8,ABRA + db 12,ABRA + ENDC + + IF _YELLOW + db 12,ODDISH + db 12,BELLSPROUT + db 13,PIDGEY + db 14,ODDISH + db 14,BELLSPROUT + db 15,PIDGEY + db 13,VENONAT + db 16,VENONAT + db 17,PIDGEY + db 17,PIDGEOTTO + ENDC + + db $00 + diff --git a/data/wildPokemon/route25.asm b/data/wildPokemon/route25.asm new file mode 100755 index 00000000..1aac115f --- /dev/null +++ b/data/wildPokemon/route25.asm @@ -0,0 +1,57 @@ +Route25Mons: + db $0F + + IF _RED + db 8,WEEDLE + db 9,KAKUNA + db 13,PIDGEY + db 12,ODDISH + db 13,ODDISH + db 12,ABRA + db 14,ODDISH + db 10,ABRA + db 7,METAPOD + db 8,CATERPIE + ENDC + + IF _GREEN || !_JAPAN && _BLUE + db 8,CATERPIE + db 9,METAPOD + db 13,PIDGEY + db 12,BELLSPROUT + db 13,BELLSPROUT + db 12,ABRA + db 14,BELLSPROUT + db 10,ABRA + db 7,KAKUNA + db 8,WEEDLE + ENDC + + IF _JAPAN && _BLUE + db 8,CATERPIE + db 9,METAPOD + db 13,PIDGEY + db 12,ODDISH + db 13,ODDISH + db 12,ABRA + db 14,ODDISH + db 10,ABRA + db 7,KAKUNA + db 8,WEEDLE + ENDC + + IF _YELLOW + db 12,ODDISH + db 12,BELLSPROUT + db 13,PIDGEY + db 14,ODDISH + db 14,BELLSPROUT + db 15,PIDGEY + db 13,VENONAT + db 16,VENONAT + db 17,PIDGEY + db 17,PIDGEOTTO + ENDC + + db $00 + diff --git a/data/wildPokemon/route3.asm b/data/wildPokemon/route3.asm new file mode 100755 index 00000000..1b555138 --- /dev/null +++ b/data/wildPokemon/route3.asm @@ -0,0 +1,28 @@ +Route3Mons: + db $14 + IF !_YELLOW + db 6,PIDGEY + db 5,SPEAROW + db 7,PIDGEY + db 6,SPEAROW + db 7,SPEAROW + db 8,PIDGEY + db 8,SPEAROW + db 3,JIGGLYPUFF + db 5,JIGGLYPUFF + db 7,JIGGLYPUFF + ENDC + IF _YELLOW + db 8,SPEAROW + db 9,SPEAROW + db 9,MANKEY + db 10,SPEAROW + db 8,SANDSHREW + db 10,RATTATA + db 10,SANDSHREW + db 12,RATTATA + db 11,SPEAROW + db 12,SPEAROW + ENDC + db $00 + diff --git a/data/wildPokemon/route4.asm b/data/wildPokemon/route4.asm new file mode 100755 index 00000000..22610dc6 --- /dev/null +++ b/data/wildPokemon/route4.asm @@ -0,0 +1,44 @@ +Route4Mons: + db $14 + + IF _RED + db 10,RATTATA + db 10,SPEAROW + db 8,RATTATA + db 6,EKANS + db 8,SPEAROW + db 10,EKANS + db 12,RATTATA + db 12,SPEAROW + db 8,EKANS + db 12,EKANS + ENDC + + IF !_RED + db 10,RATTATA + db 10,SPEAROW + db 8,RATTATA + db 6,SANDSHREW + db 8,SPEAROW + db 10,SANDSHREW + db 12,RATTATA + db 12,SPEAROW + db 8,SANDSHREW + db 12,SANDSHREW + ENDC + + IF _YELLOW + db 8,SPEAROW + db 9,SPEAROW + db 9,MANKEY + db 10,SPEAROW + db 8,SANDSHREW + db 10,RATTATA + db 10,SANDSHREW + db 12,RATTATA + db 11,SPEAROW + db 12,SPEAROW + ENDC + + db $00 + diff --git a/data/wildPokemon/route5.asm b/data/wildPokemon/route5.asm new file mode 100755 index 00000000..c08b51a4 --- /dev/null +++ b/data/wildPokemon/route5.asm @@ -0,0 +1,57 @@ +Route5Mons: + db $0F + + IF _RED + db 13,ODDISH + db 13,PIDGEY + db 15,PIDGEY + db 10,MANKEY + db 12,MANKEY + db 15,ODDISH + db 16,ODDISH + db 16,PIDGEY + db 14,MANKEY + db 16,MANKEY + ENDC + + IF _GREEN || !_JAPAN && _BLUE + db 13,BELLSPROUT + db 13,PIDGEY + db 15,PIDGEY + db 10,MEOWTH + db 12,MEOWTH + db 15,BELLSPROUT + db 16,BELLSPROUT + db 16,PIDGEY + db 14,MEOWTH + db 16,MEOWTH + ENDC + + IF _JAPAN && _BLUE + db 13,ODDISH + db 13,PIDGEY + db 15,PIDGEY + db 10,MEOWTH + db 12,MEOWTH + db 15,ODDISH + db 16,ODDISH + db 16,PIDGEY + db 14,MEOWTH + db 16,MEOWTH + ENDC + + IF _YELLOW + db 15,PIDGEY + db 14,RATTATA + db 7,ABRA + db 16,PIDGEY + db 16,RATTATA + db 17,PIDGEY + db 17,PIDGEOTTO + db 3,JIGGLYPUFF + db 5,JIGGLYPUFF + db 7,JIGGLYPUFF + ENDC + + db $00 + diff --git a/data/wildPokemon/route6.asm b/data/wildPokemon/route6.asm new file mode 100755 index 00000000..a2e0f4d0 --- /dev/null +++ b/data/wildPokemon/route6.asm @@ -0,0 +1,70 @@ +Route6Mons: + db $0F + + IF _RED + db 13,ODDISH + db 13,PIDGEY + db 15,PIDGEY + db 10,MANKEY + db 12,MANKEY + db 15,ODDISH + db 16,ODDISH + db 16,PIDGEY + db 14,MANKEY + db 16,MANKEY + db $00 + ENDC + + IF _GREEN || !_JAPAN && _BLUE + db 13,BELLSPROUT + db 13,PIDGEY + db 15,PIDGEY + db 10,MEOWTH + db 12,MEOWTH + db 15,BELLSPROUT + db 16,BELLSPROUT + db 16,PIDGEY + db 14,MEOWTH + db 16,MEOWTH + db $00 + ENDC + + IF _JAPAN && _BLUE + db 13,ODDISH + db 13,PIDGEY + db 15,PIDGEY + db 10,MEOWTH + db 12,MEOWTH + db 15,ODDISH + db 16,ODDISH + db 16,PIDGEY + db 14,MEOWTH + db 16,MEOWTH + db $00 + ENDC + + IF _YELLOW + db 15,PIDGEY + db 14,RATTATA + db 7,ABRA + db 16,PIDGEY + db 16,RATTATA + db 17,PIDGEY + db 17,PIDGEOTTO + db 3,JIGGLYPUFF + db 5,JIGGLYPUFF + db 7,JIGGLYPUFF + + db $03 + db 15,PSYDUCK + db 15,PSYDUCK + db 15,PSYDUCK + db 15,PSYDUCK + db 15,PSYDUCK + db 15,PSYDUCK + db 15,PSYDUCK + db 15,PSYDUCK + db 15,GOLDUCK + db 20,GOLDUCK + ENDC + diff --git a/data/wildPokemon/route7.asm b/data/wildPokemon/route7.asm new file mode 100755 index 00000000..ecda56aa --- /dev/null +++ b/data/wildPokemon/route7.asm @@ -0,0 +1,57 @@ +Route7Mons: + db $0F + + IF _RED + db 19,PIDGEY + db 19,ODDISH + db 17,MANKEY + db 22,ODDISH + db 22,PIDGEY + db 18,MANKEY + db 18,GROWLITHE + db 20,GROWLITHE + db 19,MANKEY + db 20,MANKEY + ENDC + + IF _GREEN || !_JAPAN && _BLUE + db 19,PIDGEY + db 19,BELLSPROUT + db 17,MEOWTH + db 22,BELLSPROUT + db 22,PIDGEY + db 18,MEOWTH + db 18,VULPIX + db 20,VULPIX + db 19,MEOWTH + db 20,MEOWTH + ENDC + + IF _JAPAN && _BLUE + db 19,PIDGEY + db 19,ODDISH + db 17,MEOWTH + db 22,ODDISH + db 22,PIDGEY + db 18,MEOWTH + db 18,GROWLITHE + db 20,GROWLITHE + db 19,MEOWTH + db 20,MEOWTH + ENDC + + IF _YELLOW + db 20,PIDGEY + db 22,PIDGEY + db 20,RATTATA + db 15,ABRA + db 19,ABRA + db 24,PIDGEOTTO + db 26,ABRA + db 19,JIGGLYPUFF + db 24,JIGGLYPUFF + db 24,JIGGLYPUFF + ENDC + + db $00 + diff --git a/data/wildPokemon/route8.asm b/data/wildPokemon/route8.asm new file mode 100755 index 00000000..97260649 --- /dev/null +++ b/data/wildPokemon/route8.asm @@ -0,0 +1,57 @@ +Route8Mons: + db $0F + + IF _RED + db 18,PIDGEY + db 18,MANKEY + db 17,EKANS + db 16,GROWLITHE + db 20,PIDGEY + db 20,MANKEY + db 19,EKANS + db 17,GROWLITHE + db 15,GROWLITHE + db 18,GROWLITHE + ENDC + + IF _GREEN || !_JAPAN && _BLUE + db 18,PIDGEY + db 18,MEOWTH + db 17,SANDSHREW + db 16,VULPIX + db 20,PIDGEY + db 20,MEOWTH + db 19,SANDSHREW + db 17,VULPIX + db 15,VULPIX + db 18,VULPIX + ENDC + + IF _JAPAN && _BLUE + db 18,PIDGEY + db 18,MEOWTH + db 17,SANDSHREW + db 16,GROWLITHE + db 20,PIDGEY + db 20,MEOWTH + db 19,SANDSHREW + db 17,GROWLITHE + db 15,GROWLITHE + db 18,GROWLITHE + ENDC + + IF _YELLOW + db 20,PIDGEY + db 22,PIDGEY + db 20,RATTATA + db 15,ABRA + db 19,ABRA + db 24,PIDGEOTTO + db 19,JIGGLYPUFF + db 24,JIGGLYPUFF + db 20,KADABRA + db 27,KADABRA + ENDC + + db $00 + diff --git a/data/wildPokemon/route9.asm b/data/wildPokemon/route9.asm new file mode 100755 index 00000000..c7c65186 --- /dev/null +++ b/data/wildPokemon/route9.asm @@ -0,0 +1,44 @@ +Route9Mons: + db $0F + + IF _RED + db 16,RATTATA + db 16,SPEAROW + db 14,RATTATA + db 11,EKANS + db 13,SPEAROW + db 15,EKANS + db 17,RATTATA + db 17,SPEAROW + db 13,EKANS + db 17,EKANS + ENDC + + IF !_RED && !_YELLOW + db 16,RATTATA + db 16,SPEAROW + db 14,RATTATA + db 11,SANDSHREW + db 13,SPEAROW + db 15,SANDSHREW + db 17,RATTATA + db 17,SPEAROW + db 13,SANDSHREW + db 17,SANDSHREW + ENDC + + IF _YELLOW + db 16,NIDORAN_M + db 16,NIDORAN_F + db 18,RATTATA + db 18,NIDORAN_M + db 18,NIDORAN_F + db 17,SPEAROW + db 18,NIDORINO + db 18,NIDORINA + db 20,RATICATE + db 19,FEAROW + ENDC + + db $00 + diff --git a/data/wildPokemon/safarizone1.asm b/data/wildPokemon/safarizone1.asm new file mode 100755 index 00000000..1e2f463c --- /dev/null +++ b/data/wildPokemon/safarizone1.asm @@ -0,0 +1,48 @@ +ZoneMons1: + db $1E + IF _RED || (_JAPAN && _BLUE) + db 24,NIDORAN_M + db 26,DODUO + db 22,PARAS + db 25,EXEGGCUTE + db 33,NIDORINO + db 23,EXEGGCUTE + db 24,NIDORAN_F + db 25,PARASECT + IF _RED + db 25,KANGASKHAN + ENDC + IF _JAPAN && _BLUE + db 25,LICKITUNG + ENDC + db 28,SCYTHER + ENDC + + IF _GREEN || (!_JAPAN && _BLUE) + db 24,NIDORAN_F + db 26,DODUO + db 22,PARAS + db 25,EXEGGCUTE + db 33,NIDORINA + db 23,EXEGGCUTE + db 24,NIDORAN_M + db 25,PARASECT + db 25,KANGASKHAN + db 28,PINSIR + ENDC + + IF _YELLOW + db 21,NIDORAN_M + db 29,NIDORAN_F + db 22,EXEGGCUTE + db 21,TAUROS + db 32,NIDORINA + db 19,CUBONE + db 26,EXEGGCUTE + db 24,MAROWAK + db 21,CHANSEY + db 15,SCYTHER + ENDC + + db $00 + diff --git a/data/wildPokemon/safarizone2.asm b/data/wildPokemon/safarizone2.asm new file mode 100755 index 00000000..ac35d4e4 --- /dev/null +++ b/data/wildPokemon/safarizone2.asm @@ -0,0 +1,50 @@ +ZoneMons2: + db $1E + IF !_YELLOW + IF _RED || (_JAPAN && _BLUE) + db 22,NIDORAN_M + ENDC + IF _GREEN || (!_JAPAN && _BLUE) + db 22,NIDORAN_F + ENDC + db 26,RHYHORN + db 23,PARAS + db 25,EXEGGCUTE + IF _RED || (_JAPAN && _BLUE) + db 30,NIDORINO + ENDC + IF _GREEN || (!_JAPAN && _BLUE) + db 30,NIDORINA + ENDC + db 27,EXEGGCUTE + IF _RED || (_JAPAN && _BLUE) + db 30,NIDORINA + ENDC + IF _GREEN || (!_JAPAN && _BLUE) + db 30,NIDORINO + ENDC + db 32,VENOMOTH + db 26,CHANSEY + IF _RED || _GREEN || (!_JAPAN && _BLUE) + db 28,TAUROS + ENDC + IF (_JAPAN && _BLUE) + db 28,PINSIR + ENDC + ENDC + + IF _YELLOW + db 36,NIDORAN_M + db 14,NIDORAN_F + db 20,EXEGGCUTE + db 25,RHYHORN + db 23,NIDORINA + db 28,KANGASKHAN + db 16,CUBONE + db 33,KANGASKHAN + db 25,SCYTHER + db 15,PINSIR + ENDC + + db $00 + diff --git a/data/wildPokemon/safarizone3.asm b/data/wildPokemon/safarizone3.asm new file mode 100755 index 00000000..497efd24 --- /dev/null +++ b/data/wildPokemon/safarizone3.asm @@ -0,0 +1,56 @@ +ZoneMons3: + db $1E + IF _RED + db 25,NIDORAN_M + db 26,DODUO + db 23,VENONAT + db 24,EXEGGCUTE + db 33,NIDORINO + db 26,EXEGGCUTE + db 25,NIDORAN_F + db 31,VENOMOTH + db 26,TAUROS + db 28,KANGASKHAN + ENDC + + IF _GREEN || (!_JAPAN && _BLUE) + db 25,NIDORAN_F + db 26,DODUO + db 23,VENONAT + db 24,EXEGGCUTE + db 33,NIDORINA + db 26,EXEGGCUTE + db 25,NIDORAN_M + db 31,VENOMOTH + db 26,TAUROS + db 28,KANGASKHAN + ENDC + + IF _JAPAN && _BLUE + db 25,NIDORAN_M + db 26,DODUO + db 23,VENONAT + db 24,EXEGGCUTE + db 33,NIDORINO + db 26,EXEGGCUTE + db 25,NIDORAN_F + db 31,VENOMOTH + db 26,PINSIR + db 28,LICKITUNG + ENDC + + IF _YELLOW + db 29,NIDORAN_M + db 21,NIDORAN_F + db 22,EXEGGCUTE + db 21,TAUROS + db 32,NIDORINO + db 19,CUBONE + db 26,EXEGGCUTE + db 24,MAROWAK + db 25,PINSIR + db 27,TANGELA + ENDC + + db $00 + diff --git a/data/wildPokemon/safarizonecenter.asm b/data/wildPokemon/safarizonecenter.asm new file mode 100755 index 00000000..d8c74a76 --- /dev/null +++ b/data/wildPokemon/safarizonecenter.asm @@ -0,0 +1,56 @@ +ZoneMonsCenter: + db $1E + IF _RED + db 22,NIDORAN_M + db 25,RHYHORN + db 22,VENONAT + db 24,EXEGGCUTE + db 31,NIDORINO + db 25,EXEGGCUTE + db 31,NIDORINA + db 30,PARASECT + db 23,SCYTHER + db 23,CHANSEY + ENDC + + IF _GREEN || (!_JAPAN && _BLUE) + db 22,NIDORAN_F + db 25,RHYHORN + db 22,VENONAT + db 24,EXEGGCUTE + db 31,NIDORINA + db 25,EXEGGCUTE + db 31,NIDORINO + db 30,PARASECT + db 23,PINSIR + db 23,CHANSEY + ENDC + + IF _JAPAN && _BLUE + db 22,NIDORAN_M + db 25,RHYHORN + db 22,VENONAT + db 24,EXEGGCUTE + db 31,NIDORINO + db 25,EXEGGCUTE + db 31,NIDORINA + db 30,PARASECT + db 23,SCYTHER + db 23,CHANSEY + ENDC + + IF _YELLOW + db 14,NIDORAN_M + db 36,NIDORAN_F + db 24,EXEGGCUTE + db 20,RHYHORN + db 23,NIDORINO + db 27,PARASECT + db 27,PARAS + db 32,PARASECT + db 22,TANGELA + db 7,CHANSEY + ENDC + + db $00 + diff --git a/data/wildPokemon/seafoamisland1.asm b/data/wildPokemon/seafoamisland1.asm new file mode 100755 index 00000000..472af2e1 --- /dev/null +++ b/data/wildPokemon/seafoamisland1.asm @@ -0,0 +1,56 @@ +IslandMons1: + db $0F + IF _RED + db 30,SEEL + db 30,SLOWPOKE + db 30,SHELLDER + db 30,HORSEA + db 28,HORSEA + db 21,ZUBAT + db 29,GOLBAT + db 28,PSYDUCK + db 28,SHELLDER + db 38,GOLDUCK + ENDC + + IF _GREEN || !_JAPAN && _BLUE + db 30,SEEL + db 30,PSYDUCK + db 30,STARYU + db 30,KRABBY + db 28,KRABBY + db 21,ZUBAT + db 29,GOLBAT + db 28,SLOWPOKE + db 28,STARYU + db 38,SLOWBRO + ENDC + + IF _JAPAN && _BLUE + db 30,SEEL + db 30,HORSEA + db 30,STARYU + db 30,KRABBY + db 28,KRABBY + db 21,ZUBAT + db 29,GOLBAT + db 28,SLOWPOKE + db 28,STARYU + db 38,SLOWBRO + ENDC + + IF _YELLOW + db 18,ZUBAT + db 25,KRABBY + db 27,KRABBY + db 27,ZUBAT + db 36,ZUBAT + db 28,SLOWPOKE + db 30,SLOWPOKE + db 9,ZUBAT + db 27,GOLBAT + db 36,GOLBAT + ENDC + + db $00 + diff --git a/data/wildPokemon/seafoamislandb1.asm b/data/wildPokemon/seafoamislandb1.asm new file mode 100755 index 00000000..9b49bc46 --- /dev/null +++ b/data/wildPokemon/seafoamislandb1.asm @@ -0,0 +1,56 @@ +IslandMonsB1: + db $0A + IF _RED + db 30,STARYU + db 30,HORSEA + db 32,SHELLDER + db 32,HORSEA + db 28,SLOWPOKE + db 30,SEEL + db 30,SLOWPOKE + db 28,SEEL + db 38,DEWGONG + db 37,SEADRA + ENDC + + IF _GREEN || !_JAPAN && _BLUE + db 30,SHELLDER + db 30,KRABBY + db 32,STARYU + db 32,KRABBY + db 28,PSYDUCK + db 30,SEEL + db 30,PSYDUCK + db 28,SEEL + db 38,DEWGONG + db 37,KINGLER + ENDC + + IF _JAPAN && _BLUE + db 30,SHELLDER + db 30,KRABBY + db 32,STARYU + db 32,KRABBY + db 28,HORSEA + db 30,SEEL + db 30,HORSEA + db 28,SEEL + db 38,DEWGONG + db 37,KINGLER + ENDC + + IF _YELLOW + db 27,ZUBAT + db 26,KRABBY + db 36,ZUBAT + db 28,KRABBY + db 27,GOLBAT + db 29,SLOWPOKE + db 18,ZUBAT + db 28,KINGLER + db 22,SEEL + db 26,SEEL + ENDC + + db $00 + diff --git a/data/wildPokemon/seafoamislandb2.asm b/data/wildPokemon/seafoamislandb2.asm new file mode 100755 index 00000000..4cad1012 --- /dev/null +++ b/data/wildPokemon/seafoamislandb2.asm @@ -0,0 +1,56 @@ +IslandMonsB2: + db $0A + IF _RED + db 30,SEEL + db 30,SLOWPOKE + db 32,SEEL + db 32,SLOWPOKE + db 28,HORSEA + db 30,STARYU + db 30,HORSEA + db 28,SHELLDER + db 30,GOLBAT + db 37,SLOWBRO + ENDC + + IF _GREEN || !_JAPAN && _BLUE + db 30,SEEL + db 30,PSYDUCK + db 32,SEEL + db 32,PSYDUCK + db 28,KRABBY + db 30,SHELLDER + db 30,KRABBY + db 28,STARYU + db 30,GOLBAT + db 37,GOLDUCK + ENDC + + IF _JAPAN && _BLUE + db 30,SEEL + db 30,HORSEA + db 32,SEEL + db 32,HORSEA + db 28,KRABBY + db 30,SHELLDER + db 30,KRABBY + db 28,STARYU + db 30,GOLBAT + db 37,JYNX + ENDC + + IF _YELLOW + db 27,ZUBAT + db 27,KRABBY + db 36,ZUBAT + db 27,GOLBAT + db 28,KINGLER + db 24,SEEL + db 29,KRABBY + db 36,GOLBAT + db 31,SLOWPOKE + db 31,SLOWBRO + ENDC + + db $00 + diff --git a/data/wildPokemon/seafoamislandb3.asm b/data/wildPokemon/seafoamislandb3.asm new file mode 100755 index 00000000..55d806a9 --- /dev/null +++ b/data/wildPokemon/seafoamislandb3.asm @@ -0,0 +1,68 @@ +IslandMonsB3: + db $0A + IF _RED + db 31,SLOWPOKE + db 31,SEEL + db 33,SLOWPOKE + db 33,SEEL + db 29,HORSEA + db 31,SHELLDER + db 31,HORSEA + db 29,SHELLDER + db 39,SEADRA + db 37,DEWGONG + ENDC + + IF _GREEN || !_JAPAN && _BLUE + db 31,PSYDUCK + db 31,SEEL + db 33,PSYDUCK + db 33,SEEL + db 29,KRABBY + db 31,STARYU + db 31,KRABBY + db 29,STARYU + db 39,KINGLER + db 37,DEWGONG + ENDC + + IF _JAPAN && _BLUE + db 31,HORSEA + db 31,SEEL + db 33,HORSEA + db 33,SEEL + db 29,KRABBY + db 31,STARYU + db 31,KRABBY + db 29,STARYU + db 39,KINGLER + db 37,DEWGONG + ENDC + + IF _YELLOW + db 27,GOLBAT + db 36,ZUBAT + db 29,KRABBY + db 27,ZUBAT + db 30,KINGLER + db 26,SEEL + db 31,KRABBY + db 30,SEEL + db 28,DEWGONG + db 32,DEWGONG + + db $05 + db 25,TENTACOOL + db 30,TENTACOOL + db 20,TENTACOOL + db 30,STARYU + db 35,TENTACOOL + db 30,STARYU + db 40,TENTACOOL + db 30,STARYU + db 30,STARYU + db 30,STARYU + ENDC + + db $00 + diff --git a/data/wildPokemon/seafoamislandb4.asm b/data/wildPokemon/seafoamislandb4.asm new file mode 100755 index 00000000..9596ab5b --- /dev/null +++ b/data/wildPokemon/seafoamislandb4.asm @@ -0,0 +1,68 @@ +IslandMonsB4: + db $0A + IF _RED + db 31,HORSEA + db 31,SHELLDER + db 33,HORSEA + db 33,SHELLDER + db 29,SLOWPOKE + db 31,SEEL + db 31,SLOWPOKE + db 29,SEEL + db 39,SLOWBRO + db 32,GOLBAT + ENDC + + IF _GREEN || !_JAPAN && _BLUE + db 31,KRABBY + db 31,STARYU + db 33,KRABBY + db 33,STARYU + db 29,PSYDUCK + db 31,SEEL + db 31,PSYDUCK + db 29,SEEL + db 39,GOLDUCK + db 32,GOLBAT + ENDC + + IF _JAPAN && _BLUE + db 31,KRABBY + db 31,STARYU + db 33,KRABBY + db 33,STARYU + db 29,HORSEA + db 31,SEEL + db 31,HORSEA + db 29,SEEL + db 39,JYNX + db 32,GOLBAT + ENDC + + IF _YELLOW + db 36,GOLBAT + db 36,ZUBAT + db 30,KRABBY + db 32,KINGLER + db 28,SEEL + db 32,SEEL + db 27,GOLBAT + db 45,ZUBAT + db 30,DEWGONG + db 34,DEWGONG + + db $05 + db 25,TENTACOOL + db 30,TENTACOOL + db 20,TENTACOOL + db 30,STARYU + db 35,TENTACOOL + db 30,STARYU + db 40,TENTACOOL + db 30,STARYU + db 30,STARYU + db 30,STARYU + ENDC + + db $00 + diff --git a/data/wildPokemon/unknowndungeon1.asm b/data/wildPokemon/unknowndungeon1.asm new file mode 100755 index 00000000..2c23dcc8 --- /dev/null +++ b/data/wildPokemon/unknowndungeon1.asm @@ -0,0 +1,40 @@ +DungeonMons1: + db $0A + IF !_YELLOW + db 46,GOLBAT + db 46,HYPNO + db 46,MAGNETON + IF _RED || _GREEN || (!_JAPAN && _BLUE) + db 49,DODRIO + ENDC + IF _JAPAN && _BLUE + db 49,RAPIDASH + ENDC + db 49,VENOMOTH + IF _RED + db 52,ARBOK + ENDC + IF !_RED + db 52,SANDSLASH + ENDC + db 49,KADABRA + db 52,PARASECT + db 53,RAICHU + db 53,DITTO + ENDC + + IF _YELLOW + db 50,GOLBAT + db 55,GOLBAT + db 45,GRAVELER + db 55,GLOOM + db 55,WEEPINBELL + db 52,SANDSLASH + db 54,VENOMOTH + db 54,PARASECT + db 55,DITTO + db 60,DITTO + ENDC + + db $00 + diff --git a/data/wildPokemon/unknowndungeon2.asm b/data/wildPokemon/unknowndungeon2.asm new file mode 100755 index 00000000..c3971b86 --- /dev/null +++ b/data/wildPokemon/unknowndungeon2.asm @@ -0,0 +1,35 @@ +DungeonMons2: + db $0F + IF !_YELLOW + db 51,DODRIO + db 51,VENOMOTH + db 51,KADABRA + db 52,RHYDON + IF _RED || _GREEN || (_BLUE && !_JAPAN) + db 52,MAROWAK + ENDC + IF (_BLUE && _JAPAN) + db 52,MAROWAK + ENDC + db 52,ELECTRODE + db 56,CHANSEY + db 54,WIGGLYTUFF + db 55,DITTO + db 60,DITTO + ENDC + + IF _YELLOW + db 52,GOLBAT + db 57,GOLBAT + db 50,GRAVELER + db 56,SANDSLASH + db 50,RHYHORN + db 60,DITTO + db 58,GLOOM + db 58,WEEPINBELL + db 60,RHYDON + db 58,RHYDON + ENDC + + db $00 + diff --git a/data/wildPokemon/unknowndungeonb1.asm b/data/wildPokemon/unknowndungeonb1.asm new file mode 100755 index 00000000..8a66d2a9 --- /dev/null +++ b/data/wildPokemon/unknowndungeonb1.asm @@ -0,0 +1,35 @@ +DungeonMonsB1: + db $19 + IF !_YELLOW + db 55,RHYDON + db 55,MAROWAK + db 55,ELECTRODE + db 64,CHANSEY + db 64,PARASECT + db 64,RAICHU + IF _RED + db 57,ARBOK + ENDC + IF !_RED + db 57,SANDSLASH + ENDC + db 65,DITTO + db 63,DITTO + db 67,DITTO + ENDC + + IF _YELLOW + db 54,GOLBAT + db 59,GOLBAT + db 55,GRAVELER + db 52,RHYHORN + db 62,RHYDON + db 60,DITTO + db 56,CHANSEY + db 65,DITTO + db 55,LICKITUNG + db 50,LICKITUNG + ENDC + + db $00 + diff --git a/data/wildPokemon/victoryroad1.asm b/data/wildPokemon/victoryroad1.asm new file mode 100755 index 00000000..c39d1ff5 --- /dev/null +++ b/data/wildPokemon/victoryroad1.asm @@ -0,0 +1,30 @@ +PlateauMons1: + db $0F + IF !_YELLOW + db 24,MACHOP + db 26,GEODUDE + db 22,ZUBAT + db 36,ONIX + db 39,ONIX + db 42,ONIX + db 41,GRAVELER + db 41,GOLBAT + db 42,MACHOKE + db 43,MAROWAK + ENDC + + IF _YELLOW + db 26,GEODUDE + db 31,GEODUDE + db 36,GEODUDE + db 39,ZUBAT + db 44,ZUBAT + db 41,GEODUDE + db 43,ONIX + db 45,ONIX + db 41,GRAVELER + db 47,GRAVELER + ENDC + + db $00 + diff --git a/data/wildPokemon/victoryroad2.asm b/data/wildPokemon/victoryroad2.asm new file mode 100755 index 00000000..1832b83b --- /dev/null +++ b/data/wildPokemon/victoryroad2.asm @@ -0,0 +1,30 @@ +PlateauMons2: + db $0A + IF !_YELLOW + db 22,MACHOP + db 24,GEODUDE + db 26,ZUBAT + db 36,ONIX + db 39,ONIX + db 42,ONIX + db 41,MACHOKE + db 40,GOLBAT + db 40,MAROWAK + db 43,GRAVELER + ENDC + + IF _YELLOW + db 31,GEODUDE + db 36,GEODUDE + db 41,GEODUDE + db 44,ZUBAT + db 39,GOLBAT + db 44,GRAVELER + db 45,ONIX + db 47,ONIX + db 39,MACHOKE + db 42,MACHOKE + ENDC + + db $00 + diff --git a/data/wildPokemon/victoryroad3.asm b/data/wildPokemon/victoryroad3.asm new file mode 100755 index 00000000..e2ebf0db --- /dev/null +++ b/data/wildPokemon/victoryroad3.asm @@ -0,0 +1,30 @@ +PlateauMons3: + db $0F + IF !_YELLOW + db 24,MACHOP + db 26,GEODUDE + db 22,ZUBAT + db 42,ONIX + db 40,VENOMOTH + db 45,ONIX + db 43,GRAVELER + db 41,GOLBAT + db 42,MACHOKE + db 45,MACHOKE + ENDC + + IF _YELLOW + db 36,GEODUDE + db 44,GOLBAT + db 41,GEODUDE + db 49,ONIX + db 46,GEODUDE + db 41,GRAVELER + db 42,MACHOKE + db 45,MACHOKE + db 47,GRAVELER + db 47,GRAVELER + ENDC + + db $00 + diff --git a/data/wildPokemon/viridianforest.asm b/data/wildPokemon/viridianforest.asm new file mode 100755 index 00000000..e80ba681 --- /dev/null +++ b/data/wildPokemon/viridianforest.asm @@ -0,0 +1,44 @@ +ForestMons: ; + IF !_YELLOW + db $08 + IF _RED + db 4,WEEDLE + db 5,KAKUNA + db 3,WEEDLE + db 5,WEEDLE + db 4,KAKUNA + db 6,KAKUNA + db 4,METAPOD + db 3,CATERPIE + ENDC + IF _BLUE || _GREEN + db 4,CATERPIE + db 5,METAPOD + db 3,CATERPIE + db 5,CATERPIE + db 4,METAPOD + db 6,METAPOD + db 4,KAKUNA + db 3,WEEDLE + ENDC + + db 3,PIKACHU + db 5,PIKACHU + ENDC + + IF _YELLOW + db $19 + db 3,CATERPIE + db 4,METAPOD + db 4,CATERPIE + db 5,CATERPIE + db 4,PIDGEY + db 6,PIDGEY + db 6,CATERPIE + db 6,METAPOD + db 8,PIDGEY + db 9,PIDGEOTTO + ENDC + + db $00 + diff --git a/data/wildPokemon/waterpokemon.asm b/data/wildPokemon/waterpokemon.asm new file mode 100755 index 00000000..b45a94d6 --- /dev/null +++ b/data/wildPokemon/waterpokemon.asm @@ -0,0 +1,15 @@ +WaterMons: ; + db $00 + + db $05 + db 5,TENTACOOL + db 10,TENTACOOL + db 15,TENTACOOL + db 5,TENTACOOL + db 10,TENTACOOL + db 15,TENTACOOL + db 20,TENTACOOL + db 30,TENTACOOL + db 35,TENTACOOL + db 40,TENTACOOL + diff --git a/data/wild_mons.asm b/data/wild_mons.asm new file mode 100755 index 00000000..2bc062f3 --- /dev/null +++ b/data/wild_mons.asm @@ -0,0 +1,324 @@ +WildDataPointers: ; ceeb (3:4eeb) + dw NoMons ; PALLET_TOWN + dw NoMons ; VIRIDIAN_CITY + dw NoMons ; PEWTER_CITY + dw NoMons ; CERULEAN_CITY + dw NoMons ; LAVENDER_TOWN + dw NoMons ; VERMILION_CITY + dw NoMons ; CELADON_CITY + dw NoMons ; FUCHSIA_CITY + dw NoMons ; CINNABAR_ISLAND + dw NoMons ; INDIGO_PLATEAU + dw NoMons ; SAFFRON_CITY + dw NoMons ; unused + dw Route1Mons ; ROUTE_1 + dw Route2Mons ; ROUTE_2 + dw Route3Mons ; ROUTE_3 + dw Route4Mons ; ROUTE_4 + dw Route5Mons ; ROUTE_5 + dw Route6Mons ; ROUTE_6 + dw Route7Mons ; ROUTE_7 + dw Route8Mons ; ROUTE_8 + dw Route9Mons ; ROUTE_9 + dw Route10Mons ; ROUTE_10 + dw Route11Mons ; ROUTE_11 + dw Route12Mons ; ROUTE_12 + dw Route13Mons ; ROUTE_13 + dw Route14Mons ; ROUTE_14 + dw Route15Mons ; ROUTE_15 + dw Route16Mons ; ROUTE_16 + dw Route17Mons ; ROUTE_17 + dw Route18Mons ; ROUTE_18 + dw WaterMons ; ROUTE_19 + dw WaterMons ; ROUTE_20 + dw Route21Mons ; ROUTE_21 + dw Route22Mons ; ROUTE_22 + dw Route23Mons ; ROUTE_23 + dw Route24Mons ; ROUTE_24 + dw Route25Mons ; ROUTE_25 + dw NoMons ; REDS_HOUSE_1F + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw ForestMons ; ViridianForest + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw MoonMons1 + dw MoonMonsB1 + dw MoonMonsB2 + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw TunnelMonsB1 + dw PowerPlantMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw PlateauMons1 + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw TowerMons1 + dw TowerMons2 + dw TowerMons3 + dw TowerMons4 + dw TowerMons5 + dw TowerMons6 + dw TowerMons7 + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw IslandMonsB1 + dw IslandMonsB2 + dw IslandMonsB3 + dw IslandMonsB4 + dw NoMons + dw NoMons + dw MansionMons1 + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw IslandMons1 + dw NoMons + dw PlateauMons2 + dw NoMons + dw NoMons + dw CaveMons + dw PlateauMons3 + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw MansionMons2 + dw MansionMons3 + dw MansionMonsB1 + dw ZoneMons1 + dw ZoneMons2 + dw ZoneMons3 + dw ZoneMonsCenter + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw DungeonMons2 + dw DungeonMonsB1 + dw DungeonMons1 + dw NoMons + dw NoMons + dw NoMons + dw TunnelMonsB2 + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + dw NoMons + IF _YELLOW + dw NoMons + ENDC + dw $FFFF + +; wild pokemon data is divided into two parts. +; first part: pokemon found in grass +; second part: pokemon found while surfing +; each part goes as follows: + ; if first byte == 00, then + ; no wild pokemon on this map + ; if first byte != 00, then + ; first byte is encounter rate + ; followed by 20 bytes: + ; level, species (ten times) + +INCLUDE "data/wildPokemon/nomons.asm" +INCLUDE "data/wildPokemon/route1.asm" +INCLUDE "data/wildPokemon/route2.asm" +INCLUDE "data/wildPokemon/route22.asm" +INCLUDE "data/wildPokemon/viridianforest.asm" +INCLUDE "data/wildPokemon/route3.asm" +INCLUDE "data/wildPokemon/mtmoon1.asm" +INCLUDE "data/wildPokemon/mtmoonb1.asm" +INCLUDE "data/wildPokemon/mtmoonb2.asm" +INCLUDE "data/wildPokemon/route4.asm" +INCLUDE "data/wildPokemon/route24.asm" +INCLUDE "data/wildPokemon/route25.asm" +INCLUDE "data/wildPokemon/route9.asm" +INCLUDE "data/wildPokemon/route5.asm" +INCLUDE "data/wildPokemon/route6.asm" +INCLUDE "data/wildPokemon/route11.asm" +INCLUDE "data/wildPokemon/rocktunnel1.asm" +INCLUDE "data/wildPokemon/rocktunnel2.asm" +INCLUDE "data/wildPokemon/route10.asm" +INCLUDE "data/wildPokemon/route12.asm" +INCLUDE "data/wildPokemon/route8.asm" +INCLUDE "data/wildPokemon/route7.asm" +INCLUDE "data/wildPokemon/pokemontower1.asm" +INCLUDE "data/wildPokemon/pokemontower2.asm" +INCLUDE "data/wildPokemon/pokemontower3.asm" +INCLUDE "data/wildPokemon/pokemontower4.asm" +INCLUDE "data/wildPokemon/pokemontower5.asm" +INCLUDE "data/wildPokemon/pokemontower6.asm" +INCLUDE "data/wildPokemon/pokemontower7.asm" +INCLUDE "data/wildPokemon/route13.asm" +INCLUDE "data/wildPokemon/route14.asm" +INCLUDE "data/wildPokemon/route15.asm" +INCLUDE "data/wildPokemon/route16.asm" +INCLUDE "data/wildPokemon/route17.asm" +INCLUDE "data/wildPokemon/route18.asm" +INCLUDE "data/wildPokemon/safarizonecenter.asm" +INCLUDE "data/wildPokemon/safarizone1.asm" +INCLUDE "data/wildPokemon/safarizone2.asm" +INCLUDE "data/wildPokemon/safarizone3.asm" +INCLUDE "data/wildPokemon/waterpokemon.asm" +INCLUDE "data/wildPokemon/seafoamisland1.asm" +INCLUDE "data/wildPokemon/seafoamislandb1.asm" +INCLUDE "data/wildPokemon/seafoamislandb2.asm" +INCLUDE "data/wildPokemon/seafoamislandb3.asm" +INCLUDE "data/wildPokemon/seafoamislandb4.asm" +INCLUDE "data/wildPokemon/mansion1.asm" +INCLUDE "data/wildPokemon/mansion2.asm" +INCLUDE "data/wildPokemon/mansion3.asm" +INCLUDE "data/wildPokemon/mansionb1.asm" +INCLUDE "data/wildPokemon/route21.asm" +INCLUDE "data/wildPokemon/unknowndungeon1.asm" +INCLUDE "data/wildPokemon/unknowndungeon2.asm" +INCLUDE "data/wildPokemon/unknowndungeonb1.asm" +INCLUDE "data/wildPokemon/powerplant.asm" +INCLUDE "data/wildPokemon/route23.asm" +INCLUDE "data/wildPokemon/victoryroad2.asm" +INCLUDE "data/wildPokemon/victoryroad3.asm" +INCLUDE "data/wildPokemon/victoryroad1.asm" +INCLUDE "data/wildPokemon/diglettscave.asm" @@ -254,11 +254,11 @@ MapHeaderPointers:: ; 01ae (0:01ae) dw MtMoonPokecenter_h dw CeruleanHouseTrashed_h ; copy dw Route5Gate_h - dw UndergroundTunnelEntranceRoute5_h + dw UndergroundPathEntranceRoute5_h dw DayCareM_h dw Route6Gate_h - dw UndergroundTunnelEntranceRoute6_h - dw UndergroundTunnelEntranceRoute6_h ; unused + dw UndergroundPathEntranceRoute6_h + dw UndergroundPathEntranceRoute6_h ; unused dw Route7Gate_h dw UndergroundPathEntranceRoute7_h dw UndergroundPathEntranceRoute7Copy_h @@ -692,7 +692,7 @@ OverworldLoopLessDelay:: ; 0402 (0:0402) ld a,[$d736] bit 7,a jr z,.noSpinning - callba Func_44fd7 ; spin while moving + callba LoadSpinnerArrowTiles ; spin while moving .noSpinning call UpdateSprites ; move sprites .moveAhead2 @@ -1276,8 +1276,7 @@ IsBikeRidingAllowed:: ; 09c5 (0:09c5) scf ret -BikeRidingTilesets:: ; 09e2 (0:09e2) - db OVERWORLD, FOREST, UNDERGROUND, SHIP_PORT, CAVERN, $FF +INCLUDE "data/bike_riding_tilesets.asm" ; load the tile pattern data of the current tileset into VRAM LoadTilesetTilePatternData:: ; 09e8 (0:09e8) @@ -3664,7 +3663,6 @@ Facility_Coll:: ; 17dd (0:17dd) INCBIN "gfx/tilesets/facility.tilecoll" Plateau_Coll:: ; 17f0 (0:17f0) INCBIN "gfx/tilesets/plateau.tilecoll" -;Tile Collision ends 0x17f7 ; does the same thing as FarCopyData at 009D ; only difference is that it uses [$ff8b] instead of [$cee9] for a temp value @@ -5936,81 +5934,7 @@ UpdateSprites:: ; 2429 (0:2429) ld [$2000], a ret -; mart inventories are below -; they are texts -; first byte $FE, next byte # of items, last byte $FF - -; Viridian -ViridianMartText6:: ; 2442 (0:2442) - db $FE,4,POKE_BALL,ANTIDOTE,PARLYZ_HEAL,BURN_HEAL,$FF - -; Pewter -PewterMartText1:: ; 2449 (0:2449) - db $FE,7,POKE_BALL,POTION,ESCAPE_ROPE,ANTIDOTE,BURN_HEAL,AWAKENING - db PARLYZ_HEAL,$FF - -; Cerulean -CeruleanMartText1:: ; 2453 (0:2453) - db $FE,7,POKE_BALL,POTION,REPEL,ANTIDOTE,BURN_HEAL,AWAKENING - db PARLYZ_HEAL,$FF - -; Bike shop - db $FE,1,BICYCLE,$FF - -; Vermilion -VermilionMartText1:: ; 2461 (0:2461) - db $FE,6,POKE_BALL,SUPER_POTION,ICE_HEAL,AWAKENING,PARLYZ_HEAL - db REPEL,$FF - -; Lavender -LavenderMartText1:: ; 246a (0:246a) - db $FE,9,GREAT_BALL,SUPER_POTION,REVIVE,ESCAPE_ROPE,SUPER_REPEL - db ANTIDOTE,BURN_HEAL,ICE_HEAL,PARLYZ_HEAL,$FF - -; Celadon Dept. Store 2F (1) -CeladonMart2Text1:: ; 2476 (0:2476) - db $FE,9,GREAT_BALL,SUPER_POTION,REVIVE,SUPER_REPEL,ANTIDOTE - db BURN_HEAL,ICE_HEAL,AWAKENING,PARLYZ_HEAL,$FF - -; Celadon Dept. Store 2F (2) -CeladonMart2Text2:: ; 2482 (0:2482) - db $FE,9,TM_32,TM_33,TM_02,TM_07,TM_37,TM_01,TM_05,TM_09,TM_17,$FF - -; Celadon Dept. Store 4F -CeladonMart4Text1:: ; 248e (0:248e) - db $FE,5,POKE_DOLL,FIRE_STONE,THUNDER_STONE,WATER_STONE,LEAF_STONE,$FF - -; Celadon Dept. Store 5F (1) -CeladonMart5Text3:: ; 2496 (0:2496) - db $FE,7,X_ACCURACY,GUARD_SPEC_,DIRE_HIT,X_ATTACK,X_DEFEND,X_SPEED - db X_SPECIAL,$FF - -; Celadon Dept. Store 5F (2) -CeladonMart5Text4:: ; 24a0 (0:24a0) - db $FE,5,HP_UP,PROTEIN,IRON,CARBOS,CALCIUM,$FF - -; Fuchsia -FuchsiaMartText1:: ; 24a8 (0:24a8) - db $FE,6,ULTRA_BALL,GREAT_BALL,SUPER_POTION,REVIVE,FULL_HEAL - db SUPER_REPEL,$FF - -; unused? 24b1 - db $FE,5,GREAT_BALL,HYPER_POTION,SUPER_POTION,FULL_HEAL,REVIVE,$FF - -; Cinnabar -CinnabarMartText1:: ; 24b9 (0:24b9) - db $FE,7,ULTRA_BALL,GREAT_BALL,HYPER_POTION,MAX_REPEL,ESCAPE_ROPE - db FULL_HEAL,REVIVE,$FF - -; Saffron -SaffronMartText1:: ; 24c3 (0:24c3) - db $FE,6,GREAT_BALL,HYPER_POTION,MAX_REPEL,ESCAPE_ROPE,FULL_HEAL - db REVIVE,$FF - -; Indigo -IndigoPlateauLobbyText4:: ; 24cc (0:24cc) - db $FE,7,ULTRA_BALL,GREAT_BALL,FULL_RESTORE,MAX_POTION,FULL_HEAL - db REVIVE,MAX_REPEL,$FF +INCLUDE "data/mart_inventories.asm" TextScriptEndingChar:: ; 24d6 (0:24d6) db "@" @@ -6018,12 +5942,12 @@ TextScriptEnd:: ; 24d7 (0:24d7) ld hl,TextScriptEndingChar ret -UnnamedText_24db:: ; 24db (0:24db) - TX_FAR _UnnamedText_24db +ExclamationText:: ; 24db (0:24db) + TX_FAR _ExclamationText db "@" -UnnamedText_24e0:: ; 24e0 (0:24e0) - TX_FAR _UnnamedText_24e0 +GroundRoseText:: ; 24e0 (0:24e0) + TX_FAR _GroundRoseText db "@" BoulderText:: ; 24e5 (0:24e5) @@ -6121,7 +6045,7 @@ UncompressSpriteDataLoop:: ; 2556 (0:2556) .unpackingMode0 ld [W_SPRITEUNPACKMODE], a .startDecompression - call ReadNextInputBit + call ReadNextInputBit and a jr z, .readRLEncodedZeros ; if first bit is 0, the input starts with zeroes, otherwise with (non-zero) input .readNextInput @@ -6153,7 +6077,7 @@ UncompressSpriteDataLoop:: ; 2556 (0:2556) inc h .noCarry ld a, [hli] ; read offset that is added to the number later on - ld e, a ; adding an offset of 2^length - 1 makes every integer uniquely + ld e, a ; adding an offset of 2^length - 1 makes every integer uniquely ld d, [hl] ; representable in the length encoding and saves bits push de inc c @@ -7830,8 +7754,8 @@ ReloadTilesetTilePatterns:: ; 3090 (0:3090) ChooseFlyDestination:: ; 30a9 (0:30a9) ld hl,$d72e res 4,[hl] - ld b, BANK(Func_70f90) - ld hl, Func_70f90 + ld b, BANK(LoadTownMap_Fly) + ld hl, LoadTownMap_Fly jp Bankswitch ; causes the text box to close waithout waiting for a button press after displaying text @@ -8314,7 +8238,7 @@ Func_3381:: ; 3381 (0:3381) ld [$2000], a push hl callba SaveTrainerName - ld hl, UnnamedText_33cf + ld hl, TrainerNameText call PrintText pop hl pop af @@ -8339,8 +8263,8 @@ Func_33b7:: ; 33b7 (0:33b7) ld l, a ret -UnnamedText_33cf:: ; 33cf (0:33cf) - TX_FAR _UnnamedText_33cf +TrainerNameText:: ; 33cf (0:33cf) + TX_FAR _TrainerNameText db $08 Func_33d4:: ; 33d4 (0:33d4) @@ -8401,23 +8325,7 @@ PlayTrainerMusic:: ; 33e8 (0:33e8) ld [$c0ee], a jp PlaySound -FemaleTrainerList:: ; 3434 (0:3434) - db $c8+LASS - db $c8+JR__TRAINER_F - db $c8+BEAUTY - db $c8+COOLTRAINER_F - db $FF - -EvilTrainerList:: ; 3439 (0:3439) - db $c8+JUGGLER_X - db $c8+GAMBLER - db $c8+ROCKER - db $c8+JUGGLER - db $c8+CHIEF - db $c8+SCIENTIST - db $c8+GIOVANNI - db $c8+ROCKET - db $FF +INCLUDE "data/trainer_types.asm" Func_3442:: ; 3442 (0:3442) ld a, [hli] @@ -8928,7 +8836,7 @@ FillMemory:: ; 36e0 (0:36e0) dec bc ld a, b or c - jr nz, .loop + jr nz, .loop pop de ret @@ -9208,7 +9116,7 @@ GetJoypadStateLowSensitivity:: ; 3831 (0:3831) and a jr nz,.setShortDelay xor a - ld [$ffb5],a + ld [$ffb5],a .setShortDelay ld a,5 ; 1/12 of a second delay ld [H_FRAMECOUNTER],a @@ -9700,7 +9608,7 @@ HandleMenuInputPokemonSelection:: ; 3ac2 (0:3ac2) ld a,[$d09b] and a ; is it a pokemon selection menu? jr z,.getJoypadState - callba Func_716ff ; shake mini sprite of selected pokemon + callba AnimatePartyMon ; shake mini sprite of selected pokemon .getJoypadState pop hl call GetJoypadStateLowSensitivity @@ -10355,8 +10263,8 @@ GivePokemon:: ; 3e48 (0:3e48) ld [$d127], a xor a ld [$cc49], a - ld b, BANK(Func_4fda5) - ld hl, Func_4fda5 + ld b, BANK(_GivePokemon) + ld hl, _GivePokemon jp Bankswitch GenRandom:: ; 3e5c (0:3e5c) @@ -10492,9 +10400,9 @@ PointerTable_3f22:: ; 3f22 (0:3f22) dw CardKeyFailText ; id = 02 dw Route15UpstairsLeftBinoculars ; id = 03 dw RedBedroomSNESText ; id = 04 - dw UnnamedText_1e960 ; id = 05 - dw UnnamedText_1e97e ; id = 06 - dw UnnamedText_1e983 ; id = 07 + dw PushStartText ; id = 05 + dw SaveOptionText ; id = 06 + dw StrengthsAndWeaknessesText ; id = 07 dw OakLabEmailText ; id = 08 dw AerodactylFossilText ; id = 09 dw Route15UpstairsBinocularsText ; id = 0A @@ -10517,11 +10425,11 @@ PointerTable_3f22:: ; 3f22 (0:3f22) dw UnnamedText_624c1 ; id = 1B dw UnnamedText_624c6 ; id = 1C dw UnnamedText_624cb ; id = 1D - dw Unknown_62508 ; id = 1E + dw TerminatorText_62508 ; id = 1E dw Unknown_62529 ; id = 1F dw ViridianSchoolNotebook ; id = 20 dw ViridianSchoolBlackboard ; id = 21 - dw UnnamedText_21865 ; id = 22 + dw JustAMomentText ; id = 22 dw Unknown_21878 ; id = 23 dw FoundHiddenItemText ; id = 24 dw HiddenItemBagFullText ; id = 25 @@ -10535,7 +10443,7 @@ PointerTable_3f22:: ; 3f22 (0:3f22) dw BillsHouseMonitorText ; id = 2D dw BillsHouseInitiatedText ; id = 2E dw BillsHousePokemonList ; id = 2F - dw UnnamedText_1eb69 ; id = 30 + dw MagazinesText ; id = 30 dw CinnabarGymQuiz ; id = 31 dw GameCornerNoCoinsText ; id = 32 dw GameCornerCoinCaseText ; id = 33 @@ -10664,41 +10572,7 @@ MewPicFront: ; 4112 (1:4112) MewPicBack: ; 4205 (1:4205) INCBIN "pic/monback/mewb.pic" -MewBaseStats: ; 425b (1:425b) - db DEX_MEW ; pokedex id - db 100 ; base hp - db 100 ; base attack - db 100 ; base defense - db 100 ; base speed - db 100 ; base special - - db PSYCHIC ; species type 1 - db PSYCHIC ; species type 2 - - db 45 ; catch rate - db 64 ; base exp yield - db $55 ; sprite dimensions - - dw MewPicFront - dw MewPicBack - - ; attacks known at lvl 0 - db POUND - db 0 - db 0 - db 0 - - db 3 ; growth rate - - ; include learnset directly - db %11111111 - db %11111111 - db %11111111 - db %11111111 - db %11111111 - db %11111111 - db %11111111 - db %11111111 ; usually spacing +INCLUDE "data/baseStats/mew.asm" Func_4277: ; 4277 (1:4277) ld hl, $cce9 @@ -10706,7 +10580,7 @@ Func_4277: ; 4277 (1:4277) and a jr z, .asm_4284 dec [hl] - ld hl, UnnamedText_42a7 ; $42a7 + ld hl, SafariZoneEatingText jr .asm_429f .asm_4284 dec hl @@ -10714,7 +10588,7 @@ Func_4277: ; 4277 (1:4277) and a ret z dec [hl] - ld hl, UnnamedText_42ac ; $42ac + ld hl, SafariZoneAngryText jr nz, .asm_429f push hl ld a, [$cfe5] @@ -10729,12 +10603,12 @@ Func_4277: ; 4277 (1:4277) pop hl jp PrintText -UnnamedText_42a7: ; 42a7 (1:42a7) - TX_FAR SafariZoneEatingText +SafariZoneEatingText: ; 42a7 (1:42a7) + TX_FAR _SafariZoneEatingText db "@" -UnnamedText_42ac: ; 42ac (1:42ac) - TX_FAR SafariZoneAngryText +SafariZoneAngryText: ; 42ac (1:42ac) + TX_FAR _SafariZoneAngryText db "@" ; copy text of fixed length $b (like player name, rival name, mon names, ...) @@ -10760,7 +10634,7 @@ Func_42b7: ; 42b7 (1:42b7) ld [$c0ef], a ld [$c0f0], a -Func_42dd: ; 42dd (1:42dd) +LoadTitlescreenGraphics: ; 42dd (1:42dd) call GBPalWhiteOut ld a, $1 ld [H_AUTOBGTRANSFERENABLED], a ; $ffba @@ -11116,68 +10990,13 @@ CopyrightTextString: ; 4556 (1:4556) next $60,$61,$62,$61,$63,$61,$64,$7F,$73,$74,$75,$76,$77,$78,$79,$7A,$7B ; ©'95.'96.'98 GAME FREAK inc. db "@" -TitleMons: ; 4588 (1:4588) -; mons on the title screen are randomly chosen from here -IF _RED - db CHARMANDER - db SQUIRTLE - db BULBASAUR - db WEEDLE - db NIDORAN_M - db SCYTHER - db PIKACHU - db CLEFAIRY - db RHYDON - db ABRA - db GASTLY - db DITTO - db PIDGEOTTO - db ONIX - db PONYTA - db MAGIKARP -ENDC -IF _GREEN - db BULBASAUR - db CHARMANDER - db SQUIRTLE - db CATERPIE - db NIDORAN_F - db PINSIR - db PIKACHU - db CLEFAIRY - db RHYDON - db ABRA - db GASTLY - db DITTO - db PIDGEOTTO - db ONIX - db PONYTA - db MAGIKARP -ENDC -IF _BLUE - db SQUIRTLE - db CHARMANDER - db BULBASAUR - db MANKEY - db HITMONLEE - db VULPIX - db CHANSEY - db AERODACTYL - db JOLTEON - db SNORLAX - db GLOOM - db POLIWAG - db DODUO - db PORYGON - db GENGAR - db RAICHU -ENDC +INCLUDE "data/title_mons.asm" ; prints version text (red, blue) PrintGameVersionOnTitleScreen: ; 4598 (1:4598) FuncCoord 7, 8 ; $c447 ld hl, Coord - ld de, VersionOnTitleScreenText ; $45a1 + ld de, VersionOnTitleScreenText jp PlaceString ; these point to special tiles specifically loaded for that purpose and are not usual text @@ -11242,203 +11061,9 @@ LoadMonData_: ; 45b6 (1:45b6) ld bc,44 jp CopyData -ItemPrices: ; 4608 (1:4608) - db $00,$00,$00 - db $00,$12,$00 - db $00,$06,$00 - db $00,$02,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$10,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$01,$00 - db $00,$02,$50 - db $00,$02,$50 - db $00,$02,$00 - db $00,$02,$00 - db $00,$30,$00 - db $00,$25,$00 - db $00,$15,$00 - db $00,$07,$00 - db $00,$03,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$05,$50 - db $00,$03,$50 - db $00,$00,$00 - db $00,$21,$00 - db $00,$21,$00 - db $00,$21,$00 - db $00,$98,$00 - db $00,$98,$00 - db $00,$98,$00 - db $00,$98,$00 - db $00,$98,$00 - db $00,$48,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$09,$50 - db $00,$21,$00 - db $00,$00,$00 - db $01,$00,$00 - db $00,$98,$00 - db $00,$10,$00 - db $00,$06,$00 - db $00,$15,$00 - db $00,$40,$00 - db $00,$07,$00 - db $00,$05,$00 - db $00,$07,$00 - db $00,$06,$50 - db $00,$00,$10 - db $00,$02,$00 - db $00,$03,$00 - db $00,$03,$50 - db $00,$00,$00 - db $00,$00,$00 - db $00,$05,$00 - db $00,$05,$50 - db $00,$03,$50 - db $00,$03,$50 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - db $00,$00,$00 - -ItemNames: ; 472b (1:472b) - db "MASTER BALL@" - db "ULTRA BALL@" - db "GREAT BALL@" - db "POKé BALL@" - db "TOWN MAP@" - db "BICYCLE@" - db "?????@" - db "SAFARI BALL@" - db "POKéDEX@" - db "MOON STONE@" - db "ANTIDOTE@" - db "BURN HEAL@" - db "ICE HEAL@" - db "AWAKENING@" - db "PARLYZ HEAL@" - db "FULL RESTORE@" - db "MAX POTION@" - db "HYPER POTION@" - db "SUPER POTION@" - db "POTION@" - db "BOULDERBADGE@" - db "CASCADEBADGE@" - db "THUNDERBADGE@" - db "RAINBOWBADGE@" - db "SOULBADGE@" - db "MARSHBADGE@" - db "VOLCANOBADGE@" - db "EARTHBADGE@" - db "ESCAPE ROPE@" - db "REPEL@" - db "OLD AMBER@" - db "FIRE STONE@" - db "THUNDERSTONE@" - db "WATER STONE@" - db "HP UP@" - db "PROTEIN@" - db "IRON@" - db "CARBOS@" - db "CALCIUM@" - db "RARE CANDY@" - db "DOME FOSSIL@" - db "HELIX FOSSIL@" - db "SECRET KEY@" - db "?????@" - db "BIKE VOUCHER@" - db "X ACCURACY@" - db "LEAF STONE@" - db "CARD KEY@" - db "NUGGET@" - db "PP UP@" - db "POKé DOLL@" - db "FULL HEAL@" - db "REVIVE@" - db "MAX REVIVE@" - db "GUARD SPEC.@" - db "SUPER REPEL@" - db "MAX REPEL@" - db "DIRE HIT@" - db "COIN@" - db "FRESH WATER@" - db "SODA POP@" - db "LEMONADE@" - db "S.S.TICKET@" - db "GOLD TEETH@" - db "X ATTACK@" - db "X DEFEND@" - db "X SPEED@" - db "X SPECIAL@" - db "COIN CASE@" - db "OAK's PARCEL@" - db "ITEMFINDER@" - db "SILPH SCOPE@" - db "POKé FLUTE@" - db "LIFT KEY@" - db "EXP.ALL@" - db "OLD ROD@" - db "GOOD ROD@" - db "SUPER ROD@" - db "PP UP@" - db "ETHER@" - db "MAX ETHER@" - db "ELIXER@" - db "MAX ELIXER@" - db "B2F@" - db "B1F@" - db "1F@" - db "2F@" - db "3F@" - db "4F@" - db "5F@" - db "6F@" - db "7F@" - db "8F@" - db "9F@" - db "10F@" - db "11F@" - db "B4F@" +INCLUDE "data/item_prices.asm" + +INCLUDE "text/item_names.asm" UnusedNames: ; 4a92 (1:4a92) db "かみなりバッヂ@" @@ -11654,7 +11279,7 @@ Func_4c05: ; 4c05 (1:4c05) .asm_4c1a FuncCoord 4, 11 ; $c480 ld hl, Coord - ld de, WaitingText ; $4c28 + ld de, WaitingText call PlaceString ld c, $32 jp DelayFrames @@ -11929,13 +11554,13 @@ Func_4da6: ; 4da6 (1:4da6) ld [hl], a ld a, $1 ld [$cf91], a - ld a, $14 + ld a, 20 ld [W_CURENEMYLVL], a xor a ld [$cc49], a ld [W_CURMAP], a call AddPokemonToParty - ld a, $1 + ld a, RHYDON ld [W_CUROPPONENT], a ld a, $2c call Predef @@ -12618,7 +12243,7 @@ CanWalkOntoTile: ; 516e (1:516e) add $2 ld l, a ld a, [hli] ; c2x2 (sprite Y displacement, initialized at $8, keep track of where a sprite did go) - bit 7, d ; check if going upwards (d=$ff) + bit 7, d ; check if going upwards (d=$ff) jr nz, .upwards add d cp $5 @@ -12630,7 +12255,7 @@ CanWalkOntoTile: ; 516e (1:516e) .checkHorizontal ld d, a ld a, [hl] ; c2x3 (sprite X displacement, initialized at $8, keep track of where a sprite did go) - bit 7, e ; check if going left (e=$ff) + bit 7, e ; check if going left (e=$ff) jr nz, .left add e cp $5 ; compare, but no conditional jump like in the vertical check above (bug?) @@ -12861,7 +12486,7 @@ Func_5317: ; 5317 (1:5317) call UpdateSprites call LoadFontTilePatterns call LoadHpBarAndStatusTilePatterns - call Func_5ae6 + call LoadTrainerInfoTextBoxTiles FuncCoord 3, 8 ; $c443 ld hl, Coord ld b, $2 @@ -13123,7 +12748,7 @@ Func_5345: ; 5345 jr nz, .asm_5506 ld a, $4 ld [W_ISLINKBATTLE], a ; $d12b - ld a, $e1 + ld a, SONY1 + $c8 ld [W_CUROPPONENT], a ; $d059 call ClearScreen call Delay3 @@ -13148,7 +12773,7 @@ Func_551c: ld b, $0 ld a, [$cc38] cp $ff - jp z, Func_42dd + jp z, LoadTitlescreenGraphics add a ld c, a add hl, bc @@ -13159,7 +12784,7 @@ Func_551c: Func_5530 call ClearScreen - call Func_5ae6 + call LoadTrainerInfoTextBoxTiles call Func_57f2 call Func_57a2 xor a @@ -13471,7 +13096,7 @@ Func_57d6: ld a, $37 call Predef call GBPalNormal - call Func_5ae6 + call LoadTrainerInfoTextBoxTiles call Func_57f2 jp Func_57a2 @@ -13692,7 +13317,7 @@ Func_5849: .asm_59de callab Func_3ad0e call ClearScreen - call Func_5ae6 + call LoadTrainerInfoTextBoxTiles call Func_226e ld c, $28 call DelayFrames @@ -13815,7 +13440,7 @@ Func_5ae0: ; 5ae0 (1:5ae0) jr nz, .asm_5ae1 ret -Func_5ae6: ; 5ae6 (1:5ae6) +LoadTrainerInfoTextBoxTiles: ; 5ae6 (1:5ae6) ld de, TrainerInfoTextBoxTileGraphics ; $7b98 ld hl, $9760 ld bc, (BANK(TrainerInfoTextBoxTileGraphics) << 8) +$09 @@ -13864,7 +13489,7 @@ MainMenu: ; 5af2 (1:5af2) call TextBoxBorder FuncCoord 2,2 ld hl,Coord - ld de,ContinueText ; $5d7e + ld de,ContinueText call PlaceString jr .next2 .next1 @@ -13875,7 +13500,7 @@ MainMenu: ; 5af2 (1:5af2) call TextBoxBorder FuncCoord 2,2 ld hl,Coord - ld de,NewGameText ; $5d87 + ld de,NewGameText call PlaceString .next2 ld hl,$D730 @@ -13895,7 +13520,7 @@ MainMenu: ; 5af2 (1:5af2) ld [$CC28],a call HandleMenuInput bit 1,a - jp nz,Func_42dd ; load title screen (gfx and arrangement) + jp nz,LoadTitlescreenGraphics ; load title screen (gfx and arrangement) ld c,20 call DelayFrames ld a,[$CC26] @@ -13964,7 +13589,7 @@ Func_5c0a: ; 5c0a (1:5c0a) ld hl, TextTerminator_6b20 ; $6b20 call PrintText call SaveScreenTilesToBuffer1 - ld hl, UnnamedText_5d43 ; $5d43 + ld hl, WhereWouldYouLikeText call PrintText FuncCoord 5, 5 ; $c409 ld hl, Coord @@ -13974,7 +13599,7 @@ Func_5c0a: ; 5c0a (1:5c0a) call UpdateSprites FuncCoord 7, 7 ; $c433 ld hl, Coord - ld de, TradeCenterText ; $5d97 + ld de, TradeCenterText call PlaceString xor a ld [$cd37], a @@ -14088,7 +13713,7 @@ Func_5c0a: ; 5c0a (1:5c0a) ld a, BATTLE_CENTER .asm_5cfc ld [$d72d], a - ld hl, UnnamedText_5d48 ; $5d48 + ld hl, PleaseWaitText call PrintText ld c, $32 call DelayFrames @@ -14111,22 +13736,22 @@ Func_5c0a: ; 5c0a (1:5c0a) ld [wMenuJoypadPollCount], a ; $cc34 call Delay3 call Func_72d7 - ld hl, UnnamedText_5d4d ; $5d4d + ld hl, LinkCanceledText call PrintText ld hl, $d72e res 6, [hl] ret -UnnamedText_5d43: ; 5d43 (1:5d43) - TX_FAR _UnnamedText_5d43 +WhereWouldYouLikeText: ; 5d43 (1:5d43) + TX_FAR _WhereWouldYouLikeText db "@" -UnnamedText_5d48: ; 5d48 (1:5d48) - TX_FAR _UnnamedText_5d48 +PleaseWaitText: ; 5d48 (1:5d48) + TX_FAR _PleaseWaitText db "@" -UnnamedText_5d4d: ; 5d4d (1:5d4d) - TX_FAR _UnnamedText_5d4d +LinkCanceledText: ; 5d4d (1:5d4d) + TX_FAR _LinkCanceledText db "@" Func_5d52: ; 5d52 (1:5d52) @@ -14174,7 +13799,7 @@ Func_5db5: ; 5db5 (1:5db5) call TextBoxBorder FuncCoord 5, 9 ; $c459 ld hl, Coord - ld de, SaveScreenInfoText ; $5e6a + ld de, SaveScreenInfoText call PlaceString FuncCoord 12, 9 ; $c460 ld hl, Coord @@ -14572,11 +14197,11 @@ Func_60ca: ; 60ca (1:60ca) ld a, [$d08a] and a call z, Func_5bff - ld hl, NintenText ; $45aa + ld hl, NintenText ld de, W_PLAYERNAME ; $d158 ld bc, $b call CopyData - ld hl, SonyText ; $45b1 + ld hl, SonyText ld de, W_RIVALNAME ; $d34a ld bc, $b jp CopyData @@ -14813,7 +14438,7 @@ Func_62ce: ; 62ce (1:62ce) ld hl,$D732 bit 4,[hl] ret nz - ld [$D365],a + ld [wLastMap],a ret Func_62ff: ; 62ff (1:62ff) @@ -14932,122 +14557,7 @@ Func_62ff: ; 62ff (1:62ff) ld [$d42f], a ret -DungeonWarpList: ; 63bf (1:63bf) - db SEAFOAM_ISLANDS_2,$01 - db SEAFOAM_ISLANDS_2,$02 - db SEAFOAM_ISLANDS_3,$01 - db SEAFOAM_ISLANDS_3,$02 - db SEAFOAM_ISLANDS_4,$01 - db SEAFOAM_ISLANDS_4,$02 - db SEAFOAM_ISLANDS_5,$01 - db SEAFOAM_ISLANDS_5,$02 - db VICTORY_ROAD_2,$02 - db MANSION_1,$01 - db MANSION_1,$02 - db MANSION_2,$03 - db $FF - -DungeonWarpData: ; 63d8 (1:63d8) - FLYWARP_DATA SEAFOAM_ISLANDS_2_WIDTH,7,18 - FLYWARP_DATA SEAFOAM_ISLANDS_2_WIDTH,7,23 - FLYWARP_DATA SEAFOAM_ISLANDS_3_WIDTH,7,19 - FLYWARP_DATA SEAFOAM_ISLANDS_3_WIDTH,7,22 - FLYWARP_DATA SEAFOAM_ISLANDS_4_WIDTH,7,18 - FLYWARP_DATA SEAFOAM_ISLANDS_4_WIDTH,7,19 - FLYWARP_DATA SEAFOAM_ISLANDS_5_WIDTH,14,4 - FLYWARP_DATA SEAFOAM_ISLANDS_5_WIDTH,14,5 - FLYWARP_DATA VICTORY_ROAD_2_WIDTH,16,22 - FLYWARP_DATA MANSION_1_WIDTH,14,16 - FLYWARP_DATA MANSION_1_WIDTH,14,16 - FLYWARP_DATA MANSION_2_WIDTH,14,18 - -;Format: -; db Map_id -; FLYWARP_DATA [Map Width][Y-pos][X-pos] -; db Tileset_id -FirstMapSpec: ; 6420 (1:6420) - db REDS_HOUSE_2F - FLYWARP_DATA REDS_HOUSE_2F_WIDTH,6,3 - db REDS_HOUSE_2 - -BattleCenterSpec1: ; 6428 (1:6428) - db BATTLE_CENTER - FLYWARP_DATA BATTLE_CENTER_WIDTH,4,3 - db CLUB - -BattleCenterSpec2: ; 6430 (1:6430) - db BATTLE_CENTER - FLYWARP_DATA BATTLE_CENTER_WIDTH,4,6 - db CLUB - -TradeCenterSpec1: ; 6438 (1:6438) - db TRADE_CENTER - FLYWARP_DATA TRADE_CENTER_WIDTH,4,3 - db CLUB - -TradeCenterSpec2: ; 6440 (1:6440) - db TRADE_CENTER - FLYWARP_DATA TRADE_CENTER_WIDTH,4,6 - db CLUB - -FlyWarpDataPtr: ; 6448 (1:6448) - db PALLET_TOWN, 0 - dw PalletTownFlyWarp - db VIRIDIAN_CITY, 0 - dw ViridianCityFlyWarp - db PEWTER_CITY, 0 - dw PewterCityFlyWarp - db CERULEAN_CITY, 0 - dw CeruleanCityFlyWarp - db LAVENDER_TOWN, 0 - dw LavenderTownFlyWarp - db VERMILION_CITY, 0 - dw VermilionCityFlyWarp - db CELADON_CITY, 0 - dw CeladonCityFlyWarp - db FUCHSIA_CITY, 0 - dw FuchsiaCityFlyWarp - db CINNABAR_ISLAND, 0 - dw CinnabarIslandFlyWarp - db INDIGO_PLATEAU, 0 - dw IndigoPlateauFlyWarp - db SAFFRON_CITY, 0 - dw SaffronCityFlyWarp - db ROUTE_4, 0 - dw Route4FlyWarp - db ROUTE_10, 0 - dw Route10FlyWarp - -; Original Format: -; [Event Displacement][Y-block][X-block][Y-sub_block][X-sub_block] -; Macro Format: -; FLYWARP_DATA [Map Width][Y-pos][X-pos] -PalletTownFlyWarp: ; 647c (1:647c) - FLYWARP_DATA PALLET_TOWN_WIDTH, 6, 5 -ViridianCityFlyWarp: ; 6482 (1:6482) - FLYWARP_DATA VIRIDIAN_CITY_WIDTH, 26, 23 -PewterCityFlyWarp: ; 6488 (1:6488) - FLYWARP_DATA PEWTER_CITY_WIDTH, 26, 13 -CeruleanCityFlyWarp: ; 648e (1:648e) - FLYWARP_DATA CERULEAN_CITY_WIDTH, 18, 19 -LavenderTownFlyWarp: ; 6494 (1:6494) - FLYWARP_DATA LAVENDER_TOWN_WIDTH, 6, 3 -VermilionCityFlyWarp: ; 649a (1:649a) - FLYWARP_DATA VERMILION_CITY_WIDTH, 4, 11 -CeladonCityFlyWarp: ; 64a0 (1:64a0) - FLYWARP_DATA CELADON_CITY_WIDTH, 10, 41 -FuchsiaCityFlyWarp: ; 64a6 (1:64a6) - FLYWARP_DATA FUCHSIA_CITY_WIDTH, 28, 19 -CinnabarIslandFlyWarp: ; 64ac (1:64ac) - FLYWARP_DATA CINNABAR_ISLAND_WIDTH, 12, 11 -IndigoPlateauFlyWarp: ; 64b2 (1:64b2) - FLYWARP_DATA INDIGO_PLATEAU_WIDTH, 6, 9 -SaffronCityFlyWarp: ; 64b8 (1:64b8) - FLYWARP_DATA SAFFRON_CITY_WIDTH, 30, 9 -Route4FlyWarp: ; 64be (1:64be) - FLYWARP_DATA ROUTE_4_WIDTH, 6, 11 -Route10FlyWarp: ; 64c4 (1:64c4) - FLYWARP_DATA ROUTE_10_WIDTH, 20, 11 +INCLUDE "data/special_warps.asm" ; This function appears to never be used. ; It is likely a debugging feature to give the player Tsunekazu Ishihara's @@ -15096,7 +14606,7 @@ AskForMonNickname: ; 64eb (1:64eb) ld a, [$cf91] ld [$d11e], a call GetMonName - ld hl, DoYouWantToNicknameText ; $6557 + ld hl, DoYouWantToNicknameText call PrintText FuncCoord 14, 7 ; $c43a ld hl, Coord @@ -15115,7 +14625,7 @@ AskForMonNickname: ; 64eb (1:64eb) push hl ld a, $2 ld [$d07d], a - call Func_6596 + call DisplayNamingScreen ld a, [W_ISINBATTLE] ; $d057 and a jr nz, .asm_653e @@ -15145,7 +14655,7 @@ Func_655c: ; 655c (1:655c) ld [$cfcb], a ld a, $2 ld [$d07d], a - call Func_6596 + call DisplayNamingScreen call GBPalWhiteOutWithDelay3 call Func_3dbe call LoadGBPal @@ -15167,7 +14677,7 @@ Func_655c: ; 655c (1:655c) scf ret -Func_6596: ; 6596 (1:6596) +DisplayNamingScreen: ; 6596 (1:6596) push hl ld hl, $d730 set 6, [hl] @@ -15177,14 +14687,14 @@ Func_6596: ; 6596 (1:6596) ld b, $8 call GoPAL_SET call LoadHpBarAndStatusTilePatterns - call Func_675b + call LoadEDTile callba Func_7176c FuncCoord 0, 4 ; $c3f0 ld hl, Coord ld b, $9 ld c, $12 call TextBoxBorder - call Func_68f8 + call PrintNamingText ld a, $3 ld [wTopMenuItemY], a ; $cc24 ld a, $1 @@ -15203,7 +14713,7 @@ Func_6596: ; 6596 (1:6596) ld [hli], a ld [W_SUBANIMTRANSFORM], a ; $d08b .asm_65ed - call Func_676f + call PrintAlphabet call GBPalNormal .asm_65f3 ld a, [$ceea] @@ -15215,7 +14725,7 @@ Func_6596: ; 6596 (1:6596) .asm_65ff ld a, [wCurrentMenuItem] ; $cc26 push af - callba Func_716f7 + callba AnimatePartyMon_ForceSpeed1 pop af ld [wCurrentMenuItem], a ; $cc26 call GetJoypadStateLowSensitivity @@ -15315,7 +14825,7 @@ Func_6596: ; 6596 (1:6596) inc hl ld a, [hl] ld [$ceed], a - call Func_68eb + call CalcStringLength ld a, [$ceed] cp $e5 ld de, Dakutens ; $6885 @@ -15352,7 +14862,7 @@ Func_6596: ; 6596 (1:6596) ld a, [$cee9] and a ret z - call Func_68eb + call CalcStringLength dec hl ld [hl], $50 ret @@ -15408,7 +14918,7 @@ Func_6596: ; 6596 (1:6596) ld [wTopMenuItemX], a ; $cc25 jp EraseMenuCursor -Func_675b: ; 675b (1:675b) +LoadEDTile: ; 675b (1:675b) ld de, ED_Tile ld hl, $8f00 ld bc, $1 @@ -15417,7 +14927,7 @@ Func_675b: ; 675b (1:675b) ED_Tile: ; 6767 (1:6767) INCBIN "gfx/ED_tile.1bpp" -Func_676f: ; 676f (1:676f) +PrintAlphabet: ; 676f (1:676f) xor a ld [H_AUTOBGTRANSFERENABLED], a ; $ffba ld a, [$ceeb] @@ -15455,7 +14965,7 @@ UpperCaseAlphabet: ; 67d6 (1:67d6) db "ABCDEFGHIJKLMNOPQRSTUVWXYZ ×():;[]",$e1,$e2,"-?!♂♀/",$f2,",¥lower case@" Func_680e: ; 680e (1:680e) - call Func_68eb + call CalcStringLength ld a, c ld [$cee9], a FuncCoord 10, 2 ; $c3d2 @@ -15512,7 +15022,7 @@ Func_680e: ; 680e (1:680e) Func_6871: ; 6871 (1:6871) push de - call Func_68eb + call CalcStringLength dec hl ld a, [hl] pop hl @@ -15540,7 +15050,8 @@ Handakutens: ; 68d6 (1:68d6) db "ハパ", "ヒピ", "フプ", "へぺ", "ホポ" db $ff -Func_68eb: ; 68eb (1:68eb) +; calculates the length of the string at $cf4b and stores it in c +CalcStringLength: ; 68eb (1:68eb) ld hl, $cf4b ld c, $0 .asm_68f0 @@ -15551,16 +15062,16 @@ Func_68eb: ; 68eb (1:68eb) inc c jr .asm_68f0 -Func_68f8: ; 68f8 (1:68f8) +PrintNamingText: ; 68f8 (1:68f8) FuncCoord 0, 1 ; $c3b4 ld hl, Coord ld a, [$d07d] ld de, YourTextString ; $693f and a - jr z, .asm_6934 + jr z, .notNickname ld de, RivalsTextString ; $6945 dec a - jr z, .asm_6934 + jr z, .notNickname ld a, [$cf91] ld [$cd5d], a push af @@ -15577,13 +15088,13 @@ Func_68f8: ; 68f8 (1:68f8) FuncCoord 1, 3 ; $c3dd ld hl, Coord ld de, NicknameTextString ; $6953 - jr .asm_693c -.asm_6934 + jr .placeString +.notNickname call PlaceString ld l, c ld h, b ld de, NameTextString ; $694d -.asm_693c +.placeString jp PlaceString YourTextString: ; 693f (1:693f) @@ -15614,7 +15125,7 @@ Func_695d: ; 695d (1:695d) ld hl, W_PLAYERNAME ; $d158 xor a ld [$d07d], a - call Func_6596 + call DisplayNamingScreen ld a, [$cf4b] cp $50 jr z, .asm_697a @@ -15624,11 +15135,11 @@ Func_695d: ; 695d (1:695d) ld b, BANK(RedPicFront) call IntroPredef3B .asm_6999 - ld hl, UnnamedText_699f ; $699f + ld hl, YourNameIsText jp PrintText -UnnamedText_699f: ; 699f (1:699f) - TX_FAR _UnnamedText_699f +YourNameIsText: ; 699f (1:699f) + TX_FAR _YourNameIsText db "@" Func_69a4: ; 69a4 (1:69a4) @@ -15647,7 +15158,7 @@ Func_69a4: ; 69a4 (1:69a4) ld hl, W_RIVALNAME ; $d34a ld a, $1 ld [$d07d], a - call Func_6596 + call DisplayNamingScreen ld a, [$cf4b] cp $50 jr z, .asm_69c1 @@ -15657,11 +15168,11 @@ Func_69a4: ; 69a4 (1:69a4) ld b, $13 call IntroPredef3B .asm_69e1 - ld hl, UnnamedText_69e7 ; $69e7 + ld hl, HisNameIsText jp PrintText -UnnamedText_69e7: ; 69e7 (1:69e7) - TX_FAR _UnnamedText_69e7 +HisNameIsText: ; 69e7 (1:69e7) + TX_FAR _HisNameIsText db "@" Func_69ec: ; 69ec (1:69ec) @@ -16099,7 +15610,7 @@ DisplayPokemartDialogue_: ; 6c20 (1:6c20) call DisplayChooseQuantityMenu inc a jr z,.sellMenuLoop ; if the player closed the choose quantity menu with the B button - ld hl,PokemartTellSellPrice + ld hl,PokemartTellSellPriceText ld bc,$0e01 call PrintText FuncCoord 14,7 @@ -16172,7 +15683,7 @@ DisplayPokemartDialogue_: ; 6c20 (1:6c20) ld [$d11e],a ; store item ID for GetItemName call GetItemName call CopyStringToCF4B ; copy name to $cf4b - ld hl,PokemartTellBuyPrice + ld hl,PokemartTellBuyPriceText call PrintText FuncCoord 14,7 ld hl,Coord @@ -16240,8 +15751,8 @@ PokemartBuyingGreetingText: ; 6e0c (1:6e0c) TX_FAR _PokemartBuyingGreetingText db "@" -PokemartTellBuyPrice: ; 6e11 (1:6e11) - TX_FAR _PokemartTellBuyPrice +PokemartTellBuyPriceText: ; 6e11 (1:6e11) + TX_FAR _PokemartTellBuyPriceText db "@" PokemartBoughtItemText: ; 6e16 (1:6e16) @@ -16260,8 +15771,8 @@ PokemonSellingGreetingText: ; 6e25 (1:6e25) TX_FAR _PokemonSellingGreetingText db "@" -PokemartTellSellPrice: ; 6e2a (1:6e2a) - TX_FAR _PokemartTellSellPrice +PokemartTellSellPriceText: ; 6e2a (1:6e2a) + TX_FAR _PokemartTellSellPriceText db "@" PokemartItemBagEmptyText: ; 6e2f (1:6e2f) @@ -16313,7 +15824,7 @@ Func_6e5b: ; 6e5b (1:6e5b) push de ld [$d11e], a call GetMoveName - ld hl, UnnamedText_6fc8 ; $6fc8 + ld hl, OneTwoAndText call PrintText pop de pop hl @@ -16356,7 +15867,7 @@ Func_6e5b: ; 6e5b (1:6e5b) jp Func_6efe Func_6eda: ; 6eda (1:6eda) - ld hl, UnnamedText_6fb9 ; $6fb9 + ld hl, AbandonLearningText call PrintText FuncCoord 14, 7 ; $c43a ld hl, Coord @@ -16367,20 +15878,20 @@ Func_6eda: ; 6eda (1:6eda) ld a, [wCurrentMenuItem] ; $cc26 and a jp nz, Func_6e5b - ld hl, UnnamedText_6fbe ; $6fbe + ld hl, DidNotLearnText call PrintText ld b, $0 ret Func_6efe: ; 6efe (1:6efe) - ld hl, UnnamedText_6fad ; $6fad + ld hl, LearnedMove1Text call PrintText ld b, $1 ret Func_6f07: ; 6f07 (1:6f07) push hl - ld hl, UnnamedText_6fc3 ; $6fc3 + ld hl, TryingToLearnText call PrintText FuncCoord 14, 7 ; $c43a ld hl, Coord @@ -16402,7 +15913,7 @@ Func_6f07: ; 6f07 (1:6f07) pop hl .asm_6f39 push hl - ld hl, UnnamedText_6fb4 ; $6fb4 + ld hl, WhichMoveToForgetText call PrintText FuncCoord 4, 7 ; $c430 ld hl, Coord @@ -16461,7 +15972,7 @@ Func_6f07: ; 6f07 (1:6f07) and a ret .asm_6fa2 - ld hl, UnnamedText_6fe1 ; $6fe1 + ld hl, HMCantDeleteText call PrintText pop hl jr .asm_6f39 @@ -16469,44 +15980,44 @@ Func_6f07: ; 6f07 (1:6f07) scf ret -UnnamedText_6fad: ; 6fb4 (1:6fb4) - TX_FAR UnnamedText_a273b +LearnedMove1Text: ; 6fb4 (1:6fb4) + TX_FAR _LearnedMove1Text db $b,6,"@" -UnnamedText_6fb4: ; 6fb4 (1:6fb4) - TX_FAR _UnnamedText_6fb4 +WhichMoveToForgetText: ; 6fb4 (1:6fb4) + TX_FAR _WhichMoveToForgetText db "@" -UnnamedText_6fb9: ; 6fb9 (1:6fb9) - TX_FAR _UnnamedText_6fb9 +AbandonLearningText: ; 6fb9 (1:6fb9) + TX_FAR _AbandonLearningText db "@" -UnnamedText_6fbe: ; 6fbe (1:6fbe) - TX_FAR _UnnamedText_6fbe +DidNotLearnText: ; 6fbe (1:6fbe) + TX_FAR _DidNotLearnText db "@" -UnnamedText_6fc3: ; 6fc3 (1:6fc3) - TX_FAR _UnnamedText_6fc3 +TryingToLearnText: ; 6fc3 (1:6fc3) + TX_FAR _TryingToLearnText db "@" -UnnamedText_6fc8: ; 6fc8 (1:6fc8) - TX_FAR _UnnamedText_6fc8 ; 0xa2819 +OneTwoAndText: ; 6fc8 (1:6fc8) + TX_FAR _OneTwoAndText db $a db $8 ld a, (SFX_02_58 - SFX_Headers_02) / 3 call PlaySoundWaitForCurrent - ld hl, UnnamedText_6fd7 ; $6fd7 + ld hl, PoofText ret -UnnamedText_6fd7: ; 6fd7 (1:6fd7) - TX_FAR _UnnamedText_6fd7 ; 0xa2827 - db $a ; 0x6fdb -UnnamedText_6fdc: ; 6fdc (1:6fdc) - TX_FAR _UnnamedText_6fdc +PoofText: ; 6fd7 (1:6fd7) + TX_FAR _PoofText + db $a +ForgotAndText: ; 6fdc (1:6fdc) + TX_FAR _ForgotAndText db "@" -UnnamedText_6fe1: ; 6fe1 (1:6fe1) - TX_FAR _UnnamedText_6fe1 +HMCantDeleteText: ; 6fe1 (1:6fe1) + TX_FAR _HMCantDeleteText db "@" DisplayPokemonCenterDialogue_: ; 6fe6 (1:6fe6) @@ -16533,7 +16044,7 @@ DisplayPokemonCenterDialogue_: ; 6fe6 (1:6fe6) ld [$c112], a ; make the nurse turn to face the machine call Delay3 PREDEF HealPartyPredef - callba Func_70433 ; do the healing machine animation + callba AnimateHealingMachine ; do the healing machine animation xor a ld [wMusicHeaderPointer], a ld a, [$c0f0] @@ -16787,14 +16298,14 @@ PrintStartMenuItem: ; 71bb (1:71bb) ret CableClubNPC: ; 71c5 (1:71c5) - ld hl, CableClubNPCText1 ; $72b8 + ld hl, CableClubNPCText1 call PrintText ld a, [$d74b] bit 5, a jp nz, Func_71e1 ld c, $3c call DelayFrames - ld hl, CableClubNPCText6 ; $72d2 + ld hl, CableClubNPCText6 call PrintText jp Func_7298 @@ -16833,7 +16344,7 @@ Func_71e1: ; 71e1 (1:71e1) call Func_22ed ld c, $32 call DelayFrames - ld hl, CableClubNPCText2 ; $72bd + ld hl, CableClubNPCText2 call PrintText xor a ld [$cc34], a @@ -16847,7 +16358,7 @@ Func_71e1: ; 71e1 (1:71e1) call WaitForSoundToFinish ld a, (SFX_02_5d - SFX_Headers_02) / 3 call PlaySoundWaitForCurrent - ld hl, CableClubNPCText3 ; $72c2 + ld hl, CableClubNPCText3 call PrintText ld hl, $cc47 ld a, $3 @@ -16871,16 +16382,16 @@ Func_71e1: ; 71e1 (1:71e1) dec b jr nz, .asm_7273 ; 0x727a $f7 call Func_72d7 - ld hl, CableClubNPCText4 ; $72c8 + ld hl, CableClubNPCText4 call PrintText jr Func_7298 ; 0x7285 $11 .asm_7287 - ld hl, CableClubNPCText7 ; $72b3 + ld hl, CableClubNPCText7 call PrintText jr Func_7298 ; 0x728d $9 .asm_728f call Func_72d7 - ld hl, CableClubNPCText5 ; $72cd + ld hl, CableClubNPCText5 call PrintText ; fall through @@ -17668,14 +17179,14 @@ GetMonFieldMoves: ; 77d6 (1:77d6) ; "SOFTBOILED" is $08 because it has 4 more letters than "SURF", for example, whose value is $0C FieldMoveDisplayData: ; 7823 (1:7823) db CUT, $01, $0C - db FLY, $02, $0C + db FLY, $02, $0C db $B4, $03, $0C ; unused field move - db SURF, $04, $0C - db STRENGTH, $05, $0A - db FLASH, $06, $0C - db DIG, $07, $0C - db TELEPORT, $08, $0A - db SOFTBOILED, $09, $08 + db SURF, $04, $0C + db STRENGTH, $05, $0A + db FLASH, $06, $0C + db DIG, $07, $0C + db TELEPORT, $08, $0A + db SOFTBOILED, $09, $08 db $ff ; list terminator @@ -17773,7 +17284,7 @@ Func_7861: ; 7861 (1:7861) .asm_78d2 cp DREAM_EATER_EFFECT jr nz, .asm_78d9 - ld hl, DreamEatenText ; $78e1 + ld hl, DreamWasEatenText .asm_78d9 jp PrintText @@ -17781,8 +17292,8 @@ SuckedHealthText: ; 78dc (1:78dc) TX_FAR _SuckedHealthText db "@" -DreamEatenText: ; 78e1 (1:78e1) - TX_FAR _DreamEatenText +DreamWasEatenText: ; 78e1 (1:78e1) + TX_FAR _DreamWasEatenText db "@" Func_78e6: ; 78e6 (1:78e6) @@ -17799,7 +17310,7 @@ Func_78e6: ; 78e6 (1:78e6) jr nz, Func_790c ld a, (SFX_02_45 - SFX_Headers_02) / 3 call PlaySound - ld hl, UnnamedText_7b22 ; $7b22 + ld hl, TurnedOnPC2Text call PrintText Func_790c: ; 790c (1:790c) @@ -17834,7 +17345,7 @@ Func_790c: ; 790c (1:790c) ld [hli], a ld [hl], a ld [wPlayerMonNumber], a ; $cc2f - ld hl, UnnamedText_7b27 ; $7b27 + ld hl, WhatDoYouWantText call PrintText call HandleMenuInput bit 1, a @@ -17876,12 +17387,12 @@ Func_7995: ; 7995 (1:7995) ld a, [wNumBagItems] ; $d31d and a jr nz, Func_79ab - ld hl, UnnamedText_7b3b ; $7b3b + ld hl, NothingToDepositText call PrintText jp Func_790c Func_79ab: ; 79ab (1:79ab) - ld hl, UnnamedText_7b2c ; $7b2c + ld hl, WhatToDepositText call PrintText ld hl, wNumBagItems ; $d31d ld a, l @@ -17900,7 +17411,7 @@ Func_79ab: ; 79ab (1:79ab) ld a, [$d124] and a jr nz, .asm_79e7 - ld hl, UnnamedText_7b31 ; $7b31 + ld hl, DepositHowManyText call PrintText call DisplayChooseQuantityMenu cp $ff @@ -17909,7 +17420,7 @@ Func_79ab: ; 79ab (1:79ab) ld hl, wNumBoxItems ; $d53a call AddItemToInventory jr c, .asm_79f8 - ld hl, UnnamedText_7b40 ; $7b40 + ld hl, NoRoomToStoreText call PrintText jp Func_79ab .asm_79f8 @@ -17919,7 +17430,7 @@ Func_79ab: ; 79ab (1:79ab) ld a, (SFX_02_55 - SFX_Headers_02) / 3 call PlaySound call WaitForSoundToFinish - ld hl, UnnamedText_7b36 ; $7b36 + ld hl, ItemWasStoredText call PrintText jp Func_79ab @@ -17930,12 +17441,12 @@ Func_7a12: ; 7a12 (1:7a12) ld a, [wNumBoxItems] ; $d53a and a jr nz, Func_7a28 - ld hl, UnnamedText_7b54 ; $7b54 + ld hl, NothingStoredText call PrintText jp Func_790c Func_7a28: ; 7a28 (1:7a28) - ld hl, UnnamedText_7b45 ; $7b45 + ld hl, WhatToWithdrawText call PrintText ld hl, wNumBoxItems ; $d53a ld a, l @@ -17954,7 +17465,7 @@ Func_7a28: ; 7a28 (1:7a28) ld a, [$d124] and a jr nz, .asm_7a64 - ld hl, UnnamedText_7b4a ; $7b4a + ld hl, WithdrawHowManyText call PrintText call DisplayChooseQuantityMenu cp $ff @@ -17963,7 +17474,7 @@ Func_7a28: ; 7a28 (1:7a28) ld hl, wNumBagItems ; $d31d call AddItemToInventory jr c, .asm_7a75 - ld hl, UnnamedText_7b59 ; $7b59 + ld hl, CantCarryMoreText call PrintText jp Func_7a28 .asm_7a75 @@ -17973,7 +17484,7 @@ Func_7a28: ; 7a28 (1:7a28) ld a, (SFX_02_55 - SFX_Headers_02) / 3 call PlaySound call WaitForSoundToFinish - ld hl, UnnamedText_7b4f ; $7b4f + ld hl, WithdrewItemText call PrintText jp Func_7a28 @@ -17984,12 +17495,12 @@ Func_7a8f: ; 7a8f (1:7a8f) ld a, [wNumBoxItems] ; $d53a and a jr nz, Func_7aa5 - ld hl, UnnamedText_7b54 ; $7b54 + ld hl, NothingStoredText call PrintText jp Func_790c Func_7aa5: ; 7aa5 (1:7aa5) - ld hl, UnnamedText_7b5e ; $7b5e + ld hl, WhatToTossText call PrintText ld hl, wNumBoxItems ; $d53a ld a, l @@ -18016,7 +17527,7 @@ Func_7aa5: ; 7aa5 (1:7aa5) call IsItemHM jr c, .asm_7aef push hl - ld hl, UnnamedText_7b63 ; $7b63 + ld hl, TossHowManyText call PrintText call DisplayChooseQuantityMenu pop hl @@ -18032,60 +17543,60 @@ PlayersPCMenuEntries: ; 7af5 (1:7af5) next "TOSS ITEM" next "LOG OFF@" -UnnamedText_7b22: ; 7b22 (1:7b22) - TX_FAR _UnnamedText_7b22 +TurnedOnPC2Text: ; 7b22 (1:7b22) + TX_FAR _TurnedOnPC2Text db "@" -UnnamedText_7b27: ; 7b27 (1:7b27) - TX_FAR _UnnamedText_7b27 +WhatDoYouWantText: ; 7b27 (1:7b27) + TX_FAR _WhatDoYouWantText db "@" -UnnamedText_7b2c: ; 7b2c (1:7b2c) - TX_FAR _UnnamedText_7b2c +WhatToDepositText: ; 7b2c (1:7b2c) + TX_FAR _WhatToDepositText db "@" -UnnamedText_7b31: ; 7b31 (1:7b31) - TX_FAR _UnnamedText_7b31 +DepositHowManyText: ; 7b31 (1:7b31) + TX_FAR _DepositHowManyText db "@" -UnnamedText_7b36: ; 7b36 (1:7b36) - TX_FAR _UnnamedText_7b36 +ItemWasStoredText: ; 7b36 (1:7b36) + TX_FAR _ItemWasStoredText db "@" -UnnamedText_7b3b: ; 7b3b (1:7b3b) - TX_FAR _UnnamedText_7b3b +NothingToDepositText: ; 7b3b (1:7b3b) + TX_FAR _NothingToDepositText db "@" -UnnamedText_7b40: ; 7b40 (1:7b40) - TX_FAR _UnnamedText_7b40 +NoRoomToStoreText: ; 7b40 (1:7b40) + TX_FAR _NoRoomToStoreText db "@" -UnnamedText_7b45: ; 7b45 (1:7b45) - TX_FAR _UnnamedText_7b45 +WhatToWithdrawText: ; 7b45 (1:7b45) + TX_FAR _WhatToWithdrawText db "@" -UnnamedText_7b4a: ; 7b4a (1:7b4a) - TX_FAR _UnnamedText_7b4a +WithdrawHowManyText: ; 7b4a (1:7b4a) + TX_FAR _WithdrawHowManyText db "@" -UnnamedText_7b4f: ; 7b4f (1:7b4f) - TX_FAR _UnnamedText_7b4f +WithdrewItemText: ; 7b4f (1:7b4f) + TX_FAR _WithdrewItemText db "@" -UnnamedText_7b54: ; 7b54 (1:7b54) - TX_FAR _UnnamedText_7b54 +NothingStoredText: ; 7b54 (1:7b54) + TX_FAR _NothingStoredText db "@" -UnnamedText_7b59: ; 7b59 (1:7b59) - TX_FAR _UnnamedText_7b59 +CantCarryMoreText: ; 7b59 (1:7b59) + TX_FAR _CantCarryMoreText db "@" -UnnamedText_7b5e: ; 7b5e (1:7b5e) - TX_FAR _UnnamedText_7b5e +WhatToTossText: ; 7b5e (1:7b5e) + TX_FAR _WhatToTossText db "@" -UnnamedText_7b63: ; 7b63 (1:7b63) - TX_FAR _UnnamedText_7b63 +TossHowManyText: ; 7b63 (1:7b63) + TX_FAR _TossHowManyText db "@" _RemovePokemon: ; 7b68 (1:7b68) @@ -18261,255 +17772,7 @@ HandleJoypadResetButtons: ; c03c (3:403c) jp z, SoftReset jp GetJoypadState -MapSongBanks: ; c04d (3:404d) - db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ;PALLET_TOWN - db MUSIC_CITIES1, BANK(Music_Cities1) ; VIRIDIAN_CITY - db MUSIC_CITIES1, BANK(Music_Cities1) ; PEWTER_CITY - db MUSIC_CITIES2, BANK(Music_Cities2) ; CERULEAN_CITY - db MUSIC_LAVENDER, BANK(Music_Lavender) ; LAVENDER_TOWN - db MUSIC_VERMILION, BANK(Music_Vermilion) ; VERMILION_CITY - db MUSIC_CELADON, BANK(Music_Celadon) ; CELADON_CITY - db MUSIC_CITIES2, BANK(Music_Cities2) ; FUCHSIA_CITY - db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; CINNABAR_ISLAND - db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; INDIGO_PLATEAU - db MUSIC_CITIES1, BANK(Music_Cities1) ; SAFFRON_CITY - db MUSIC_CITIES1, BANK(Music_Cities1) ; unused - db MUSIC_ROUTES1, BANK(Music_Routes1) ; ROUTE_1 - db MUSIC_ROUTES1, BANK(Music_Routes1) ; ROUTE_2 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_3 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_4 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_5 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_6 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_7 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_8 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_9 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_10 - db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_11 - db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_12 - db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_13 - db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_14 - db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_15 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_16 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_17 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_18 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_19 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_20 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_21 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_22 - db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; ROUTE_23 - db MUSIC_ROUTES2, BANK(Music_Routes2) ; ROUTE_24 - db MUSIC_ROUTES2, BANK(Music_Routes2) ; ROUTE_25 - db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; RedsHouse1F - db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; RedsHouse2F - db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; BluesHouse - db MUSIC_OAKS_LAB, BANK(Music_OaksLab) ; OaksLab - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; ViridianPokecenter - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; ViridianMart - db MUSIC_CITIES1, BANK(Music_Cities1) ; School - db MUSIC_CITIES1, BANK(Music_Cities1) ; ViridianHouse - db MUSIC_GYM, BANK(Music_Gym) ; ViridianGym - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; DiglettsCaveRoute2 - db MUSIC_CITIES1, BANK(Music_Cities1) ; ViridianForestExit - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route2House - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route2Gate - db MUSIC_CITIES1, BANK(Music_Cities1) ; ViridianForestEntrance - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; ViridianForest - db MUSIC_CITIES1, BANK(Music_Cities1) ; Museum1F - db MUSIC_CITIES1, BANK(Music_Cities1) ; Museum2F - db MUSIC_GYM, BANK(Music_Gym) ; PewterGym - db MUSIC_CITIES1, BANK(Music_Cities1) ; PewterHouse1 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; PewterMart - db MUSIC_CITIES1, BANK(Music_Cities1) ; PewterHouse2 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; PewterPokecenter - db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; MtMoon1 - db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; MtMoon2 - db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; MtMoon3 - db MUSIC_CITIES2, BANK(Music_Cities2) ; CeruleanHouseTrashed - db MUSIC_CITIES2, BANK(Music_Cities2) ; CeruleanHouse1 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeruleanPokecenter - db MUSIC_GYM, BANK(Music_Gym) ; CeruleanGym - db MUSIC_CITIES2, BANK(Music_Cities2) ; BikeShop - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeruleanMart - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; MtMoonPokecenter - db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; CeruleanHouseTrashed - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route5Gate - db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundTunnelEntranceRoute5 - db MUSIC_CITIES1, BANK(Music_Cities1) ; DayCareM - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route6Gate - db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundTunnelEntranceRoute6 - db MUSIC_VERMILION, BANK(Music_Vermilion) ; FREEZE - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route7Gate - db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundPathEntranceRoute7 - db MUSIC_CELADON, BANK(Music_Celadon) ;FREEZE - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route8Gate - db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundPathEntranceRoute8 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; RockTunnelPokecenter - db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; RockTunnel1 - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; PowerPlant - db MUSIC_VERMILION, BANK(Music_Vermilion) ; Route11Gate - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; DiglettsCaveEntranceRoute11 - db MUSIC_VERMILION, BANK(Music_Vermilion) ; Route11GateUpstairs - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route12Gate - db MUSIC_CITIES2, BANK(Music_Cities2) ; BillsHouse - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; VermilionPokecenter - db MUSIC_VERMILION, BANK(Music_Vermilion) ; FanClub - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; VermilionMart - db MUSIC_GYM, BANK(Music_Gym) ; VermilionGym - db MUSIC_VERMILION, BANK(Music_Vermilion) ; VermilionHouse1 - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; VermilionDock - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne1 - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne2 - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne3 - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne4 - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne5 - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne6 - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne7 - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne8 - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne9 - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne10 - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ;unused - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ;unused - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused - db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; VictoryRoad1 - db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ;unused - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ;unused - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ;unused - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ;unused - db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; Lance - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused - db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; HallofFameRoom - db MUSIC_ROUTES1, BANK(Music_Routes1) ; UndergroundPathNS - db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; Gary - db MUSIC_ROUTES1, BANK(Music_Routes1) ; UndergroundPathWE - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart1 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart2 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart3 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart4 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMartRoof - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMartElevator - db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion1 - db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion2 - db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion3 - db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion4 - db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion5 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonPokecenter - db MUSIC_GYM, BANK(Music_Gym) ; CeladonGym - db MUSIC_GAME_CORNER, BANK(Music_GameCorner) ; CeladonGameCorner - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart5 - db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonPrizeRoom - db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonDiner - db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonHouse - db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonHotel - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; LavenderPokecenter - db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower1 - db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower2 - db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower3 - db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower4 - db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower5 - db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower6 - db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower7 - db MUSIC_LAVENDER, BANK(Music_Lavender) ; LavenderHouse1 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; LavenderMart - db MUSIC_LAVENDER, BANK(Music_Lavender) ; LavenderHouse2 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; FuchsiaMart - db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaHouse1 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; FuchsiaPokecenter - db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaHouse2 - db MUSIC_CITIES2, BANK(Music_Cities2) ; SafariZoneEntrance - db MUSIC_GYM, BANK(Music_Gym) ; FuchsiaGym - db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaMeetingRoom - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands2 - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands3 - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands4 - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands5 - db MUSIC_CITIES2, BANK(Music_Cities2) ; VermilionHouse2 - db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaHouse3 - db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion1 - db MUSIC_GYM, BANK(Music_Gym) ; CinnabarGym - db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab1 - db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab2 - db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab3 - db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab4 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CinnabarPokecenter - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CinnabarMart - db MUSIC_CINNABAR, BANK(Music_Cinnabar) - db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; IndigoPlateauLobby - db MUSIC_CITIES1, BANK(Music_Cities1) ; CopycatsHouse1F - db MUSIC_CITIES1, BANK(Music_Cities1) ; CopycatsHouse2F - db MUSIC_CITIES1, BANK(Music_Cities1) ; FightingDojo - db MUSIC_GYM, BANK(Music_Gym) ; SaffronGym - db MUSIC_CITIES1, BANK(Music_Cities1) ; SaffronHouse1 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; SaffronMart - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo1 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; SaffronPokecenter - db MUSIC_CITIES1, BANK(Music_Cities1) ; SaffronHouse2 - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route15Gate - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route15GateUpstairs - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route16Gate - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route16GateUpstairs - db MUSIC_CELADON, BANK(Music_Celadon) ; Route16House - db MUSIC_CELADON, BANK(Music_Celadon) ; Route12House - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route18Gate - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route18GateUpstairs - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands1 - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; Route22Gate - db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; VictoryRoad2 - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route12GateUpstairs - db MUSIC_VERMILION, BANK(Music_Vermilion) ; VermilionHouse3 - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; DiglettsCave - db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; VictoryRoad3 - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout1 - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout2 - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout3 - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout4 - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideoutElevator - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo2 - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo3 - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo4 - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo5 - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo6 - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo7 - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo8 - db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion2 - db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion3 - db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion4 - db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneEast - db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneNorth - db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneWest - db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneCenter - db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse1 - db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneSecretHouse - db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse2 - db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse3 - db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse4 - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; UnknownDungeon2 - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; UnknownDungeon3 - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; UnknownDungeon1 - db MUSIC_CITIES2, BANK(Music_Cities2) ; NameRater - db MUSIC_CITIES1, BANK(Music_Cities1) ; CeruleanHouse2 - db MUSIC_CINNABAR, BANK(Music_Cinnabar) - db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; RockTunnel2 - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo9 - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo10 - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo11 - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCoElevator - db MUSIC_SILPH_CO, BANK(Music_SilphCo) - db MUSIC_SILPH_CO, BANK(Music_SilphCo) - db MUSIC_CELADON, BANK(Music_Celadon) ; BattleCenterM - db MUSIC_CELADON, BANK(Music_Celadon) ; TradeCenterM - db MUSIC_SILPH_CO, BANK(Music_SilphCo) - db MUSIC_SILPH_CO, BANK(Music_SilphCo) - db MUSIC_SILPH_CO, BANK(Music_SilphCo) - db MUSIC_SILPH_CO, BANK(Music_SilphCo) - db MUSIC_GYM, BANK(Music_Gym) ; Lorelei - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; Bruno - db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; Agatha +INCLUDE "data/map_songs.asm" ; see also MapHeaderPointers MapHeaderBanks: ; c23d (3:423d) @@ -18584,11 +17847,11 @@ MapHeaderBanks: ; c23d (3:423d) db BANK(MtMoonPokecenter_h) db BANK(CeruleanHouseTrashed_h) db BANK(Route5Gate_h) - db BANK(UndergroundTunnelEntranceRoute5_h) + db BANK(UndergroundPathEntranceRoute5_h) db BANK(DayCareM_h) db BANK(Route6Gate_h) - db BANK(UndergroundTunnelEntranceRoute6_h) - db BANK(UndergroundTunnelEntranceRoute6_h) ;FREEZE + db BANK(UndergroundPathEntranceRoute6_h) + db BANK(UndergroundPathEntranceRoute6_h) ;FREEZE db BANK(Route7Gate_h) db BANK(UndergroundPathEntranceRoute7_h) db BANK(UndergroundPathEntranceRoute7Copy_h) ;FREEZE @@ -18866,17 +18129,7 @@ CheckForceBikeOrSurf: ; c38b (3:438b) ld [$d11a], a jp ForceBikeOrSurf -ForcedBikeOrSurfMaps: ; c3e6 (3:43e6) -; map id, y, x - db ROUTE_16,$0A,$11 - db ROUTE_16,$0B,$11 - db ROUTE_18,$08,$21 - db ROUTE_18,$09,$21 - db SEAFOAM_ISLANDS_4,$07,$12 - db SEAFOAM_ISLANDS_4,$07,$13 - db SEAFOAM_ISLANDS_5,$0E,$04 - db SEAFOAM_ISLANDS_5,$0E,$05 - db $FF ;end +INCLUDE "data/force_bike_surf.asm" Func_c3ff: ; c3ff (3:43ff) push hl @@ -19026,91 +18279,7 @@ Func_c49d: ; c49d (3:449d) pop hl ret -WarpTileIDPointers: ; c4cc (3:44cc) - dw OverworldWarpTileIDs - dw RedsHouse1WarpTileIDs - dw MartWarpTileIDs - dw ForestWarpTileIDs - dw RedsHouse2WarpTileIDs - dw DojoWarpTileIDs - dw PokecenterWarpTileIDs - dw GymWarpTileIDs - dw HouseWarpTileIDs - dw ForestGateWarpTileIDs - dw MuseumWarpTileIDs - dw UndergroundWarpTileIDs - dw GateWarpTileIDs - dw ShipWarpTileIDs - dw ShipPortWarpTileIDs - dw CemeteryWarpTileIDs - dw InteriorWarpTileIDs - dw CavernWarpTileIDs - dw LobbyWarpTileIDs - dw MansionWarpTileIDs - dw LabWarpTileIDs - dw ClubWarpTileIDs - dw FacilityWarpTileIDs - dw PlateauWarpTileIDs - -OverworldWarpTileIDs: ; c4fc (3:44fc) - db $1B,$58,$FF - -ForestGateWarpTileIDs: ; c4ff (3:44ff) -MuseumWarpTileIDs: ; c4ff (3:44ff) -GateWarpTileIDs: ; c4ff (3:44ff) - db $3B - -RedsHouse1WarpTileIDs: ; c500 (3:4500) -RedsHouse2WarpTileIDs: ; c500 (3:4500) - db $1A,$1C,$FF - -MartWarpTileIDs: ; c503 (3:4503) -PokecenterWarpTileIDs: ; c503 (3:4503) - db $5E,$FF - -ForestWarpTileIDs: ; c505 (3:4505) - db $5A,$5C,$3A,$FF - -DojoWarpTileIDs: ; c509 (3:4509) -GymWarpTileIDs: ; c509 (3:4509) - db $4A,$FF - -HouseWarpTileIDs: ; c50b (3:450b) - db $54,$5C,$32,$FF - -ShipWarpTileIDs: ; c50f (3:450f) - db $37,$39,$1E,$4A,$FF - -InteriorWarpTileIDs: ; c514 (3:4514) - db $15,$55,$04,$FF - -CavernWarpTileIDs: ; c518 (3:4518) - db $18,$1A,$22,$FF - -LobbyWarpTileIDs: ; c51c (3:451c) - db $1A,$1C,$38,$FF - -MansionWarpTileIDs: ; c520 (3:4520) - db $1A,$1C,$53,$FF - -LabWarpTileIDs: ; c524 (3:4524) - db $34,$FF - -FacilityWarpTileIDs: ; c526 (3:4526) - db $43,$58,$20 - -CemeteryWarpTileIDs: ; c529 (3:4529) - db $1B - -UndergroundWarpTileIDs: ; c52a (3:452a) - db $13,$FF - -PlateauWarpTileIDs: ; c52c (3:452c) - db $1B,$3B - -ShipPortWarpTileIDs: ; c52e (3:452e) -ClubWarpTileIDs: ; c52e (3:452e) - db $FF +INCLUDE "data/warp_tile_ids.asm" Func_c52f: ; c52f (3:452f) ld a, [W_CURMAP] ; $d35e @@ -19133,7 +18302,7 @@ Func_c52f: ; c52f (3:452f) call PlaceString FuncCoord 1, 3 ; $c3dd ld hl, Coord - ld de, SafariBallText ; $457e + ld de, SafariBallText call PlaceString ld a, [W_NUMSAFARIBALLS] ; $da47 cp $a @@ -19512,34 +18681,9 @@ Func_c754: ; c754 (3:4754) .asm_c7b1 ret -DungeonTilesets: ; c7b2 (3:47b2) - db FOREST, MUSEUM, SHIP, CAVERN, LOBBY, MANSION, GATE, LAB, FACILITY, CEMETERY, GYM, $FF - -Tilesets: ; c7be (3:47be) - tileset Overworld_Block, Overworld_GFX, Overworld_Coll, $FF,$FF,$FF, $52, OUTDOOR - tileset RedsHouse1_Block, RedsHouse1_GFX, RedsHouse1_Coll, $FF,$FF,$FF, $FF, INDOOR - tileset Mart_Block, Mart_GFX, Mart_Coll, $18,$19,$1E, $FF, INDOOR - tileset Forest_Block, Forest_GFX, Forest_Coll, $FF,$FF,$FF, $20, CAVE - tileset RedsHouse2_Block, RedsHouse2_GFX, RedsHouse2_Coll, $FF,$FF,$FF, $FF, INDOOR - tileset Dojo_Block, Dojo_GFX, Dojo_Coll, $3A,$FF,$FF, $FF, OUTDOOR - tileset Pokecenter_Block, Pokecenter_GFX, Pokecenter_Coll, $18,$19,$1E, $FF, INDOOR - tileset Gym_Block, Gym_GFX, Gym_Coll, $3A,$FF,$FF, $FF, OUTDOOR - tileset House_Block, House_GFX, House_Coll, $FF,$FF,$FF, $FF, INDOOR - tileset ForestGate_Block, ForestGate_GFX, ForestGate_Coll, $17,$32,$FF, $FF, INDOOR - tileset Museum_Block, Museum_GFX, Museum_Coll, $17,$32,$FF, $FF, INDOOR - tileset Underground_Block, Underground_GFX, Underground_Coll, $FF,$FF,$FF, $FF, INDOOR - tileset Gate_Block, Gate_GFX, Gate_Coll, $17,$32,$FF, $FF, INDOOR - tileset Ship_Block, Ship_GFX, Ship_Coll, $FF,$FF,$FF, $FF, CAVE - tileset ShipPort_Block, ShipPort_GFX, ShipPort_Coll, $FF,$FF,$FF, $FF, CAVE - tileset Cemetery_Block, Cemetery_GFX, Cemetery_Coll, $12,$FF,$FF, $FF, INDOOR - tileset Interior_Block, Interior_GFX, Interior_Coll, $FF,$FF,$FF, $FF, INDOOR - tileset Cavern_Block, Cavern_GFX, Cavern_Coll, $FF,$FF,$FF, $FF, CAVE - tileset Lobby_Block, Lobby_GFX, Lobby_Coll, $15,$36,$FF, $FF, INDOOR - tileset Mansion_Block, Mansion_GFX, Mansion_Coll, $FF,$FF,$FF, $FF, INDOOR - tileset Lab_Block, Lab_GFX, Lab_Coll, $FF,$FF,$FF, $FF, INDOOR - tileset Club_Block, Club_GFX, Club_Coll, $07,$17,$FF, $FF, INDOOR - tileset Facility_Block, Facility_GFX, Facility_Coll, $12,$FF,$FF, $FF, CAVE - tileset Plateau_Block, Plateau_GFX, Plateau_Coll, $FF,$FF,$FF, $45, CAVE +INCLUDE "data/dungeon_tilesets.asm" + +INCLUDE "data/tileset_headers.asm" Func_c8de: ; c8de (3:48de) ld a, [W_DAYCARE_IN_USE] @@ -19560,590 +18704,14 @@ Func_c8de: ; c8de (3:48de) ld [hl], a ret -; data for default hidden/shown -; objects for each map ($00-$F8) - -; Table of 2-Byte pointers, one pointer per map, -; goes up to Map_F7, ends with $FFFF. -; points to table listing all missable object in the area -MapHSPointers: ; c8f5 (3:48f5) - dw MapHS00 - dw MapHS01 - dw MapHS02 - dw MapHS03 - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHS0A - dw MapHSXX - dw MapHSXX - dw MapHS0D - dw MapHSXX - dw MapHS0F - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHS14 - dw MapHSXX - dw MapHSXX - dw MapHS17 - dw MapHSXX - dw MapHSXX - dw MapHS1A - dw MapHS1B - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHS21 - dw MapHSXX - dw MapHS23 - dw MapHS24 - dw MapHSXX - dw MapHSXX - dw MapHS27 - dw MapHS28 - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHS2D - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHS33 - dw MapHS34 - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHS3B - dw MapHSXX - dw MapHS3D - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHS53 - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHS58 - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHS60 - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHS66 - dw MapHS67 - dw MapHS68 - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHS6C - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHS78 - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHS84 - dw MapHSXX - dw MapHSXX - dw MapHS87 - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHS8F - dw MapHS90 - dw MapHS91 - dw MapHS92 - dw MapHS93 - dw MapHS94 - dw MapHS95 - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHS9B - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHS9F - dw MapHSA0 - dw MapHSA1 - dw MapHSA2 - dw MapHSXX - dw MapHSXX - dw MapHSA5 - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSB1 - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSB5 - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSC0 - dw MapHSXX - dw MapHSC2 - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSC6 - dw MapHSC7 - dw MapHSC8 - dw MapHSC9 - dw MapHSCA - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSCF - dw MapHSD0 - dw MapHSD1 - dw MapHSD2 - dw MapHSD3 - dw MapHSD4 - dw MapHSD5 - dw MapHSD6 - dw MapHSD7 - dw MapHSD8 - dw MapHSD9 - dw MapHSDA - dw MapHSDB - dw MapHSDC - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSE2 - dw MapHSE3 - dw MapHSE4 - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSE9 - dw MapHSEA - dw MapHSEB - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSF4 - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw $FFFF - -; Structure: -; 3 bytes per object -; [Map_ID][Object_ID][H/S] -; -; Program stops reading when either: -; a) Map_ID = $FF -; b) Map_ID ≠ currentMapID -; -; This Data is loaded into RAM at $D5CE-$D5F?. (W_MISSABLEOBJECTLIST) - -; These constants come from the bytes for Predef functions: -Hide equ $11 -Show equ $15 - -MapHSXX: ; cae7 (3:4ae7) - db $FF,$FF,$FF -MapHS00: ; caea (3:4aea) - db PALLET_TOWN,$01,Hide -MapHS01: ; caed (3:4aed) - db VIRIDIAN_CITY,$05,Show - db VIRIDIAN_CITY,$07,Hide -MapHS02: ; caf3 (3:4af3) - db PEWTER_CITY,$03,Show - db PEWTER_CITY,$05,Show -MapHS03: ; caf9 (3:4af9) - db CERULEAN_CITY,$01,Hide - db CERULEAN_CITY,$02,Show - db CERULEAN_CITY,$06,Hide - db CERULEAN_CITY,$0A,Show - db CERULEAN_CITY,$0B,Show -MapHS0A: ; cb08 (3:4b08) - db SAFFRON_CITY,$01,Show - db SAFFRON_CITY,$02,Show - db SAFFRON_CITY,$03,Show - db SAFFRON_CITY,$04,Show - db SAFFRON_CITY,$05,Show - db SAFFRON_CITY,$06,Show - db SAFFRON_CITY,$07,Show - db SAFFRON_CITY,$08,Hide - db SAFFRON_CITY,$09,Hide - db SAFFRON_CITY,$0A,Hide - db SAFFRON_CITY,$0B,Hide - db SAFFRON_CITY,$0C,Hide - db SAFFRON_CITY,$0D,Hide - db SAFFRON_CITY,$0E,Show - db SAFFRON_CITY,$0F,Hide -MapHS0D: ; cb35 (3:4b35) - db ROUTE_2,$01,Show - db ROUTE_2,$02,Show -MapHS0F: ; cb3b (3:4b3b) - db ROUTE_4,$03,Show -MapHS14: ; cb3e (3:4b3e) - db ROUTE_9,$0A,Show -MapHS17: ; cb41 (3:4b41) - db ROUTE_12,$01,Show - db ROUTE_12,$09,Show - db ROUTE_12,$0A,Show -MapHS1A: ; cb4a (3:4b4a) - db ROUTE_15,$0B,Show -MapHS1B: ; cb4d (3:4b4d) - db ROUTE_16,$07,Show -MapHS21: ; cb50 (3:4b50) - db ROUTE_22,$01,Hide - db ROUTE_22,$02,Hide -MapHS23: ; cb56 (3:4b56) - db ROUTE_24,$01,Show - db ROUTE_24,$08,Show -MapHS24: ; cb5c (3:4b5c) - db ROUTE_25,$0A,Show -MapHS27: ; cb5f (3:4b5f) - db BLUES_HOUSE,$01,Show - db BLUES_HOUSE,$02,Hide - db BLUES_HOUSE,$03,Show -MapHS28: ; cb68 (3:4b68) - db OAKS_LAB,$01,Show - db OAKS_LAB,$02,Show - db OAKS_LAB,$03,Show - db OAKS_LAB,$04,Show - db OAKS_LAB,$05,Hide - db OAKS_LAB,$06,Show - db OAKS_LAB,$07,Show - db OAKS_LAB,$08,Hide -MapHS2D: ; cb80 (3:4b80) - db VIRIDIAN_GYM,$01,Show - db VIRIDIAN_GYM,$0B,Show -MapHS34: ; cb86 (3:4b86) - db MUSEUM_1F,$05,Show -MapHSE4: ; cb89 (3:4b89) - db UNKNOWN_DUNGEON_1,$01,Show - db UNKNOWN_DUNGEON_1,$02,Show - db UNKNOWN_DUNGEON_1,$03,Show -MapHS8F: ; cb92 (3:4b92) - db POKEMONTOWER_2,$01,Show -MapHS90: ; cb95 (3:4b95) - db POKEMONTOWER_3,$04,Show -MapHS91: ; cb98 (3:4b98) - db POKEMONTOWER_4,$04,Show - db POKEMONTOWER_4,$05,Show - db POKEMONTOWER_4,$06,Show -MapHS92: ; cba1 (3:4ba1) - db POKEMONTOWER_5,$06,Show -MapHS93: ; cba4 (3:4ba4) - db POKEMONTOWER_6,$04,Show - db POKEMONTOWER_6,$05,Show -MapHS94: ; cbaa (3:4baa) - db POKEMONTOWER_7,$01,Show - db POKEMONTOWER_7,$02,Show - db POKEMONTOWER_7,$03,Show - db POKEMONTOWER_7,$04,Show -MapHS95: ; cbb6 (3:4bb6) - db LAVENDER_HOUSE_1,$05,Hide -MapHS84: ; cbb9 (3:4bb9) - db CELADON_MANSION_5,$02,Show -MapHS87: ; cbbc (3:4bbc) - db GAME_CORNER,$0B,Show -MapHS9B: ; cbbf (3:4bbf) - db FUCHSIA_HOUSE_2,$02,Show -MapHSA5: ; cbc2 (3:4bc2) - db MANSION_1,$02,Show - db MANSION_1,$03,Show -MapHSB1: ; cbc8 (3:4bc8) - db FIGHTING_DOJO,$06,Show - db FIGHTING_DOJO,$07,Show -MapHSB5: ; cbce (3:4bce) - db SILPH_CO_1F,$01,Hide -MapHS53: ; cbd1 (3:4bd1) - db POWER_PLANT,$01,Show - db POWER_PLANT,$02,Show - db POWER_PLANT,$03,Show - db POWER_PLANT,$04,Show - db POWER_PLANT,$05,Show - db POWER_PLANT,$06,Show - db POWER_PLANT,$07,Show - db POWER_PLANT,$08,Show - db POWER_PLANT,$09,Show - db POWER_PLANT,$0A,Show - db POWER_PLANT,$0B,Show - db POWER_PLANT,$0C,Show - db POWER_PLANT,$0D,Show - db POWER_PLANT,$0E,Show -MapHSC2: ; cbfb (3:4bfb) - db VICTORY_ROAD_2,$06,Show - db VICTORY_ROAD_2,$07,Show - db VICTORY_ROAD_2,$08,Show - db VICTORY_ROAD_2,$09,Show - db VICTORY_ROAD_2,$0A,Show - db VICTORY_ROAD_2,$0D,Show -MapHS58: ; cc0d (3:4c0d) - db BILLS_HOUSE,$01,Show - db BILLS_HOUSE,$02,Hide - db BILLS_HOUSE,$03,Hide -MapHS33: ; cc16 (3:4c16) - db VIRIDIAN_FOREST,$05,Show - db VIRIDIAN_FOREST,$06,Show - db VIRIDIAN_FOREST,$07,Show -MapHS3B: ; cc1f (3:4c1f) - db MT_MOON_1,$08,Show - db MT_MOON_1,$09,Show - db MT_MOON_1,$0A,Show - db MT_MOON_1,$0B,Show - db MT_MOON_1,$0C,Show - db MT_MOON_1,$0D,Show -MapHS3D: ; cc31 (3:4c31) - db MT_MOON_3,$06,Show - db MT_MOON_3,$07,Show - db MT_MOON_3,$08,Show - db MT_MOON_3,$09,Show -MapHS60: ; cc3d (3:4c3d) - db SS_ANNE_2,$02,Hide -MapHS66: ; cc40 (3:4c40) - db SS_ANNE_8,$0A,Show -MapHS67: ; cc43 (3:4c43) - db SS_ANNE_9,$06,Show - db SS_ANNE_9,$09,Show -MapHS68: ; cc49 (3:4c49) - db SS_ANNE_10,$09,Show - db SS_ANNE_10,$0A,Show - db SS_ANNE_10,$0B,Show -MapHSC6: ; cc52 (3:4c52) - db VICTORY_ROAD_3,$05,Show - db VICTORY_ROAD_3,$06,Show - db VICTORY_ROAD_3,$0A,Show -MapHSC7: ; cc5b (3:4c5b) - db ROCKET_HIDEOUT_1,$06,Show - db ROCKET_HIDEOUT_1,$07,Show -MapHSC8: ; cc61 (3:4c61) - db ROCKET_HIDEOUT_2,$02,Show - db ROCKET_HIDEOUT_2,$03,Show - db ROCKET_HIDEOUT_2,$04,Show - db ROCKET_HIDEOUT_2,$05,Show -MapHSC9: ; cc6d (3:4c6d) - db ROCKET_HIDEOUT_3,$03,Show - db ROCKET_HIDEOUT_3,$04,Show -MapHSCA: ; cc73 (3:4c73) - db ROCKET_HIDEOUT_4,$01,Show - db ROCKET_HIDEOUT_4,$05,Show - db ROCKET_HIDEOUT_4,$06,Show - db ROCKET_HIDEOUT_4,$07,Show - db ROCKET_HIDEOUT_4,$08,Hide - db ROCKET_HIDEOUT_4,$09,Hide -MapHSCF: ; cc85 (3:4c85) - db SILPH_CO_2F,$01,Show - db SILPH_CO_2F,$02,Show - db SILPH_CO_2F,$03,Show - db SILPH_CO_2F,$04,Show - db SILPH_CO_2F,$05,Show -MapHSD0: ; cc94 (3:4c94) - db SILPH_CO_3F,$02,Show - db SILPH_CO_3F,$03,Show - db SILPH_CO_3F,$04,Show -MapHSD1: ; cc9d (3:4c9d) - db SILPH_CO_4F,$02,Show - db SILPH_CO_4F,$03,Show - db SILPH_CO_4F,$04,Show - db SILPH_CO_4F,$05,Show - db SILPH_CO_4F,$06,Show - db SILPH_CO_4F,$07,Show -MapHSD2: ; ccaf (3:4caf) - db SILPH_CO_5F,$02,Show - db SILPH_CO_5F,$03,Show - db SILPH_CO_5F,$04,Show - db SILPH_CO_5F,$05,Show - db SILPH_CO_5F,$06,Show - db SILPH_CO_5F,$07,Show - db SILPH_CO_5F,$08,Show -MapHSD3: ; ccc4 (3:4cc4) - db SILPH_CO_6F,$06,Show - db SILPH_CO_6F,$07,Show - db SILPH_CO_6F,$08,Show - db SILPH_CO_6F,$09,Show - db SILPH_CO_6F,$0A,Show -MapHSD4: ; ccd3 (3:4cd3) - db SILPH_CO_7F,$05,Show - db SILPH_CO_7F,$06,Show - db SILPH_CO_7F,$07,Show - db SILPH_CO_7F,$08,Show - db SILPH_CO_7F,$09,Show - db SILPH_CO_7F,$0A,Show - db SILPH_CO_7F,$0B,Show - db SILPH_CO_7F,$0C,Show -MapHSD5: ; cceb (3:4ceb) - db SILPH_CO_8F,$02,Show - db SILPH_CO_8F,$03,Show - db SILPH_CO_8F,$04,Show -MapHSE9: ; ccf4 (3:4cf4) - db SILPH_CO_9F,$02,Show - db SILPH_CO_9F,$03,Show - db SILPH_CO_9F,$04,Show -MapHSEA: ; ccfd (3:4cfd) - db SILPH_CO_10F,$01,Show - db SILPH_CO_10F,$02,Show - db SILPH_CO_10F,$03,Show - db SILPH_CO_10F,$04,Show - db SILPH_CO_10F,$05,Show - db SILPH_CO_10F,$06,Show -MapHSEB: ; cd0f (3:4d0f) - db SILPH_CO_11F,$03,Show - db SILPH_CO_11F,$04,Show - db SILPH_CO_11F,$05,Show -MapHSF4: ; cd18 (3:4d18) - db $F4,$02,Show -MapHSD6: ; cd1b (3:4d1b) - db MANSION_2,$02,Show -MapHSD7: ; cd1e (3:4d1e) - db MANSION_3,$03,Show - db MANSION_3,$04,Show -MapHSD8: ; cd24 (3:4d24) - db MANSION_4,$03,Show - db MANSION_4,$04,Show - db MANSION_4,$05,Show - db MANSION_4,$06,Show - db MANSION_4,$08,Show -MapHSD9: ; cd33 (3:4d33) - db SAFARI_ZONE_EAST,$01,Show - db SAFARI_ZONE_EAST,$02,Show - db SAFARI_ZONE_EAST,$03,Show - db SAFARI_ZONE_EAST,$04,Show -MapHSDA: ; cd3f (3:4d3f) - db SAFARI_ZONE_NORTH,$01,Show - db SAFARI_ZONE_NORTH,$02,Show -MapHSDB: ; cd45 (3:4d45) - db SAFARI_ZONE_WEST,$01,Show - db SAFARI_ZONE_WEST,$02,Show - db SAFARI_ZONE_WEST,$03,Show - db SAFARI_ZONE_WEST,$04,Show -MapHSDC: ; cd51 (3:4d51) - db SAFARI_ZONE_CENTER,$01,Show -MapHSE2: ; cd54 (3:4d54) - db UNKNOWN_DUNGEON_2,$01,Show - db UNKNOWN_DUNGEON_2,$02,Show - db UNKNOWN_DUNGEON_2,$03,Show -MapHSE3: ; cd5d (3:4d5d) - db UNKNOWN_DUNGEON_3,$01,Show - db UNKNOWN_DUNGEON_3,$02,Show - db UNKNOWN_DUNGEON_3,$03,Show -MapHS6C: ; cd66 (3:4d66) - db VICTORY_ROAD_1,$03,Show - db VICTORY_ROAD_1,$04,Show -MapHS78: ; cd6c (3:4d6c) - db CHAMPIONS_ROOM,$02,Hide -MapHSC0: ; cd6f (3:4d6f) - db SEAFOAM_ISLANDS_1,$01,Show - db SEAFOAM_ISLANDS_1,$02,Show -MapHS9F: ; cd75 (3:4d75) - db SEAFOAM_ISLANDS_2,$01,Hide - db SEAFOAM_ISLANDS_2,$02,Hide -MapHSA0: ; cd7b (3:4d7b) - db SEAFOAM_ISLANDS_3,$01,Hide - db SEAFOAM_ISLANDS_3,$02,Hide -MapHSA1: ; cd81 (3:4d81) - db SEAFOAM_ISLANDS_4,$02,Show - db SEAFOAM_ISLANDS_4,$03,Show - db SEAFOAM_ISLANDS_4,$05,Hide - db SEAFOAM_ISLANDS_4,$06,Hide -MapHSA2: ; cd8d (3:4d8d) - db SEAFOAM_ISLANDS_5,$01,Hide - db SEAFOAM_ISLANDS_5,$02,Hide - db SEAFOAM_ISLANDS_5,$03,Show - - db $FF,$01,Show +INCLUDE "data/hide_show_data.asm" Func_cd99: ; cd99 (3:4d99) ld hl, $d728 set 0, [hl] - ld hl, UsedStrengthText ; $4daa + ld hl, UsedStrengthText call PrintText - ld hl, UnnamedText_cdbb ; $4dbb + ld hl, CanMoveBouldersText jp PrintText UsedStrengthText: ; cdaa (3:4daa) @@ -20154,8 +18722,8 @@ UsedStrengthText: ; cdaa (3:4daa) call Delay3 jp TextScriptEnd -UnnamedText_cdbb: ; cdbb (3:4dbb) - TX_FAR _UnnamedText_cdbb +CanMoveBouldersText: ; cdbb (3:4dbb) + TX_FAR _CanMoveBouldersText db "@" Func_cdc0: ; cdc0 (3:4dc0) @@ -20176,23 +18744,23 @@ Func_cdc0: ; cdc0 (3:4dc0) ret nc ld hl, $d728 res 1, [hl] - ld hl, UnnamedText_cdfa ; $4dfa + ld hl, CurrentTooFastText jp PrintText .asm_cdec ld hl, $d728 res 1, [hl] - ld hl, UnnamedText_cdff ; $4dff + ld hl, CyclingIsFunText jp PrintText CoordsData_cdf7: ; cdf7 (3:4df7) db $0B,$07,$FF -UnnamedText_cdfa: ; cdfa (3:4dfa) - TX_FAR _UnnamedText_cdfa +CurrentTooFastText: ; cdfa (3:4dfa) + TX_FAR _CurrentTooFastText db "@" -UnnamedText_cdff: ; cdff (3:4dff) - TX_FAR _UnnamedText_cdff +CyclingIsFunText: ; cdff (3:4dff) + TX_FAR _CyclingIsFunText db "@" ; function to add an item (in varying quantities) to the player's bag or PC box @@ -20380,3816 +18948,7 @@ LoadWildData: ; ceb8 (3:4eb8) ld bc,$0014 jp CopyData -WildDataPointers: ; ceeb (3:4eeb) - dw NoMons ; PALLET_TOWN - dw NoMons ; VIRIDIAN_CITY - dw NoMons ; PEWTER_CITY - dw NoMons ; CERULEAN_CITY - dw NoMons ; LAVENDER_TOWN - dw NoMons ; VERMILION_CITY - dw NoMons ; CELADON_CITY - dw NoMons ; FUCHSIA_CITY - dw NoMons ; CINNABAR_ISLAND - dw NoMons ; INDIGO_PLATEAU - dw NoMons ; SAFFRON_CITY - dw NoMons ; unused - dw Route1Mons ; ROUTE_1 - dw Route2Mons ; ROUTE_2 - dw Route3Mons ; ROUTE_3 - dw Route4Mons ; ROUTE_4 - dw Route5Mons ; ROUTE_5 - dw Route6Mons ; ROUTE_6 - dw Route7Mons ; ROUTE_7 - dw Route8Mons ; ROUTE_8 - dw Route9Mons ; ROUTE_9 - dw Route10Mons ; ROUTE_10 - dw Route11Mons ; ROUTE_11 - dw Route12Mons ; ROUTE_12 - dw Route13Mons ; ROUTE_13 - dw Route14Mons ; ROUTE_14 - dw Route15Mons ; ROUTE_15 - dw Route16Mons ; ROUTE_16 - dw Route17Mons ; ROUTE_17 - dw Route18Mons ; ROUTE_18 - dw WaterMons ; ROUTE_19 - dw WaterMons ; ROUTE_20 - dw Route21Mons ; ROUTE_21 - dw Route22Mons ; ROUTE_22 - dw Route23Mons ; ROUTE_23 - dw Route24Mons ; ROUTE_24 - dw Route25Mons ; ROUTE_25 - dw NoMons ; REDS_HOUSE_1F - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw ForestMons ; ViridianForest - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw MoonMons1 - dw MoonMonsB1 - dw MoonMonsB2 - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw TunnelMonsB1 - dw PowerPlantMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw PlateauMons1 - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw TowerMons1 - dw TowerMons2 - dw TowerMons3 - dw TowerMons4 - dw TowerMons5 - dw TowerMons6 - dw TowerMons7 - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw IslandMonsB1 - dw IslandMonsB2 - dw IslandMonsB3 - dw IslandMonsB4 - dw NoMons - dw NoMons - dw MansionMons1 - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw IslandMons1 - dw NoMons - dw PlateauMons2 - dw NoMons - dw NoMons - dw CaveMons - dw PlateauMons3 - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw MansionMons2 - dw MansionMons3 - dw MansionMonsB1 - dw ZoneMons1 - dw ZoneMons2 - dw ZoneMons3 - dw ZoneMonsCenter - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw DungeonMons2 - dw DungeonMonsB1 - dw DungeonMons1 - dw NoMons - dw NoMons - dw NoMons - dw TunnelMonsB2 - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw $FFFF - -; wild pokemon data is divided into two parts. -; first part: pokemon found in grass -; second part: pokemon found while surfing -; each part goes as follows: - ; if first byte == 00, then - ; no wild pokemon on this map - ; if first byte != 00, then - ; first byte is encounter rate - ; followed by 20 bytes: - ; level, species (ten times) - -IF _RED -NoMons: ; d0dd (3:50dd) - db $00 - - db $00 - -Route1Mons: ; d0df (3:50df) - db $19 - db 3,PIDGEY - db 3,RATTATA - db 3,RATTATA - db 2,RATTATA - db 2,PIDGEY - db 3,PIDGEY - db 3,PIDGEY - db 4,RATTATA - db 4,PIDGEY - db 5,PIDGEY - - db $00 - -Route2Mons: ; d0f5 (3:50f5) - db $19 - db 3,RATTATA - db 3,PIDGEY - db 4,PIDGEY - db 4,RATTATA - db 5,PIDGEY - db 3,WEEDLE - db 2,RATTATA - db 5,RATTATA - db 4,WEEDLE - db 5,WEEDLE - - db $00 - -Route22Mons: ; d10b (3:510b) - db $19 - db 3,RATTATA - db 3,NIDORAN_M - db 4,RATTATA - db 4,NIDORAN_M - db 2,RATTATA - db 2,NIDORAN_M - db 3,SPEAROW - db 5,SPEAROW - db 3,NIDORAN_F - db 4,NIDORAN_F - - db $00 - -ForestMons: ; d121 (3:5121) - db $08 - db 4,WEEDLE - db 5,KAKUNA - db 3,WEEDLE - db 5,WEEDLE - db 4,KAKUNA - db 6,KAKUNA - db 4,METAPOD - db 3,CATERPIE - db 3,PIKACHU - db 5,PIKACHU - - db $00 - -Route3Mons: ; d137 (3:5137) - db $14 - db 6,PIDGEY - db 5,SPEAROW - db 7,PIDGEY - db 6,SPEAROW - db 7,SPEAROW - db 8,PIDGEY - db 8,SPEAROW - db 3,JIGGLYPUFF - db 5,JIGGLYPUFF - db 7,JIGGLYPUFF - - db $00 - -MoonMons1: ; d14d (3:514d) - db $0A - db 8,ZUBAT - db 7,ZUBAT - db 9,ZUBAT - db 8,GEODUDE - db 6,ZUBAT - db 10,ZUBAT - db 10,GEODUDE - db 8,PARAS - db 11,ZUBAT - db 8,CLEFAIRY - - db $00 - -MoonMonsB1: ; d163 (3:5163) - db $0A - db 8,ZUBAT - db 7,ZUBAT - db 7,GEODUDE - db 8,GEODUDE - db 9,ZUBAT - db 10,PARAS - db 10,ZUBAT - db 11,ZUBAT - db 9,CLEFAIRY - db 9,GEODUDE - - db $00 - -MoonMonsB2: ; d179 (3:5179) - db $0A - db 9,ZUBAT - db 9,GEODUDE - db 10,ZUBAT - db 10,GEODUDE - db 11,ZUBAT - db 10,PARAS - db 12,PARAS - db 10,CLEFAIRY - db 12,ZUBAT - db 12,CLEFAIRY - - db $00 - -Route4Mons: ; d18f (3:518f) - db $14 - db 10,RATTATA - db 10,SPEAROW - db 8,RATTATA - db 6,EKANS - db 8,SPEAROW - db 10,EKANS - db 12,RATTATA - db 12,SPEAROW - db 8,EKANS - db 12,EKANS - - db $00 - -Route24Mons: ; d1a5 (3:51a5) - db $19 - db 7,WEEDLE - db 8,KAKUNA - db 12,PIDGEY - db 12,ODDISH - db 13,ODDISH - db 10,ABRA - db 14,ODDISH - db 13,PIDGEY - db 8,ABRA - db 12,ABRA - - db $00 - -Route25Mons: ; d1bb (3:51bb) - db $0F - db 8,WEEDLE - db 9,KAKUNA - db 13,PIDGEY - db 12,ODDISH - db 13,ODDISH - db 12,ABRA - db 14,ODDISH - db 10,ABRA - db 7,METAPOD - db 8,CATERPIE - - db $00 - -Route9Mons: ; d1d1 (3:51d1) - db $0F - db 16,RATTATA - db 16,SPEAROW - db 14,RATTATA - db 11,EKANS - db 13,SPEAROW - db 15,EKANS - db 17,RATTATA - db 17,SPEAROW - db 13,EKANS - db 17,EKANS - - db $00 - -Route5Mons: ; d1e7 (3:51e7) - db $0F - db 13,ODDISH - db 13,PIDGEY - db 15,PIDGEY - db 10,MANKEY - db 12,MANKEY - db 15,ODDISH - db 16,ODDISH - db 16,PIDGEY - db 14,MANKEY - db 16,MANKEY - - db $00 - -Route6Mons: ; d1fd (3:51fd) - db $0F - db 13,ODDISH - db 13,PIDGEY - db 15,PIDGEY - db 10,MANKEY - db 12,MANKEY - db 15,ODDISH - db 16,ODDISH - db 16,PIDGEY - db 14,MANKEY - db 16,MANKEY - - db $00 - -Route11Mons: ; d213 (3:5213) - db $0F - db 14,EKANS - db 15,SPEAROW - db 12,EKANS - db 9,DROWZEE - db 13,SPEAROW - db 13,DROWZEE - db 15,EKANS - db 17,SPEAROW - db 11,DROWZEE - db 15,DROWZEE - - db $00 - -TunnelMonsB1: ; d229 (3:5229) - db $0F - db 16,ZUBAT - db 17,ZUBAT - db 17,GEODUDE - db 15,MACHOP - db 16,GEODUDE - db 18,ZUBAT - db 15,ZUBAT - db 17,MACHOP - db 13,ONIX - db 15,ONIX - - db $00 - -TunnelMonsB2: ; d23f (3:523f) - db $0F - db 16,ZUBAT - db 17,ZUBAT - db 17,GEODUDE - db 15,MACHOP - db 16,GEODUDE - db 18,ZUBAT - db 17,MACHOP - db 17,ONIX - db 13,ONIX - db 18,GEODUDE - - db $00 - -Route10Mons: ; d255 (3:5255) - db $0F - db 16,VOLTORB - db 16,SPEAROW - db 14,VOLTORB - db 11,EKANS - db 13,SPEAROW - db 15,EKANS - db 17,VOLTORB - db 17,SPEAROW - db 13,EKANS - db 17,EKANS - - db $00 - -Route12Mons: ; d26b (3:526b) - db $0F - db 24,ODDISH - db 25,PIDGEY - db 23,PIDGEY - db 24,VENONAT - db 22,ODDISH - db 26,VENONAT - db 26,ODDISH - db 27,PIDGEY - db 28,GLOOM - db 30,GLOOM - - db $00 - -Route8Mons: ; d281 (3:5281) - db $0F - db 18,PIDGEY - db 18,MANKEY - db 17,EKANS - db 16,GROWLITHE - db 20,PIDGEY - db 20,MANKEY - db 19,EKANS - db 17,GROWLITHE - db 15,GROWLITHE - db 18,GROWLITHE - - db $00 - -Route7Mons: ; d297 (3:5297) - db $0F - db 19,PIDGEY - db 19,ODDISH - db 17,MANKEY - db 22,ODDISH - db 22,PIDGEY - db 18,MANKEY - db 18,GROWLITHE - db 20,GROWLITHE - db 19,MANKEY - db 20,MANKEY - - db $00 - -TowerMons1: ; d2ad (3:52ad) - db $00 - - db $00 - -TowerMons2: ; d2af (3:52af) - db $00 - - db $00 - -TowerMons3: ; d2b1 (3:52b1) - db $0A - db 20,GASTLY - db 21,GASTLY - db 22,GASTLY - db 23,GASTLY - db 19,GASTLY - db 18,GASTLY - db 24,GASTLY - db 20,CUBONE - db 22,CUBONE - db 25,HAUNTER - - db $00 - -TowerMons4: ; d2c7 (3:52c7) - db $0A - db 20,GASTLY - db 21,GASTLY - db 22,GASTLY - db 23,GASTLY - db 19,GASTLY - db 18,GASTLY - db 25,HAUNTER - db 20,CUBONE - db 22,CUBONE - db 24,GASTLY - - db $00 - -TowerMons5: ; d2dd (3:52dd) - db $0A - db 20,GASTLY - db 21,GASTLY - db 22,GASTLY - db 23,GASTLY - db 19,GASTLY - db 18,GASTLY - db 25,HAUNTER - db 20,CUBONE - db 22,CUBONE - db 24,GASTLY - - db $00 - -TowerMons6: ; d2f3 (3:52f3) - db $0F - db 21,GASTLY - db 22,GASTLY - db 23,GASTLY - db 24,GASTLY - db 20,GASTLY - db 19,GASTLY - db 26,HAUNTER - db 22,CUBONE - db 24,CUBONE - db 28,HAUNTER - - db $00 - -TowerMons7: ; d309 (3:5309) - db $0F - db 21,GASTLY - db 22,GASTLY - db 23,GASTLY - db 24,GASTLY - db 20,GASTLY - db 28,HAUNTER - db 22,CUBONE - db 24,CUBONE - db 28,HAUNTER - db 30,HAUNTER - - db $00 - -Route13Mons: ; d31f (3:531f) - db $14 - db 24,ODDISH - db 25,PIDGEY - db 27,PIDGEY - db 24,VENONAT - db 22,ODDISH - db 26,VENONAT - db 26,ODDISH - db 25,DITTO - db 28,GLOOM - db 30,GLOOM - - db $00 - -Route14Mons: ; d335 (3:5335) - db $0F - db 24,ODDISH - db 26,PIDGEY - db 23,DITTO - db 24,VENONAT - db 22,ODDISH - db 26,VENONAT - db 26,ODDISH - db 30,GLOOM - db 28,PIDGEOTTO - db 30,PIDGEOTTO - - db $00 - -Route15Mons: ; d34b (3:534b) - db $0F - db 24,ODDISH - db 26,DITTO - db 23,PIDGEY - db 26,VENONAT - db 22,ODDISH - db 28,VENONAT - db 26,ODDISH - db 30,GLOOM - db 28,PIDGEOTTO - db 30,PIDGEOTTO - - db $00 - -Route16Mons: ; d361 (3:5361) - db $19 - db 20,SPEAROW - db 22,SPEAROW - db 18,RATTATA - db 20,DODUO - db 20,RATTATA - db 18,DODUO - db 22,DODUO - db 22,RATTATA - db 23,RATICATE - db 25,RATICATE - - db $00 - -Route17Mons: ; d377 (3:5377) - db $19 - db 20,SPEAROW - db 22,SPEAROW - db 25,RATICATE - db 24,DODUO - db 27,RATICATE - db 26,DODUO - db 28,DODUO - db 29,RATICATE - db 25,FEAROW - db 27,FEAROW - - db $00 - -Route18Mons: ; d38d (3:538d) - db $19 - db 20,SPEAROW - db 22,SPEAROW - db 25,RATICATE - db 24,DODUO - db 25,FEAROW - db 26,DODUO - db 28,DODUO - db 29,RATICATE - db 27,FEAROW - db 29,FEAROW - - db $00 - -ZoneMonsCenter: ; d3a3 (3:53a3) - db $1E - db 22,NIDORAN_M - db 25,RHYHORN - db 22,VENONAT - db 24,EXEGGCUTE - db 31,NIDORINO - db 25,EXEGGCUTE - db 31,NIDORINA - db 30,PARASECT - db 23,SCYTHER - db 23,CHANSEY - - db $00 - -ZoneMons1: ; d3b9 (3:53b9) - db $1E - db 24,NIDORAN_M - db 26,DODUO - db 22,PARAS - db 25,EXEGGCUTE - db 33,NIDORINO - db 23,EXEGGCUTE - db 24,NIDORAN_F - db 25,PARASECT - db 25,KANGASKHAN - db 28,SCYTHER - - db $00 - -ZoneMons2: ; d3cf (3:53cf) - db $1E - db 22,NIDORAN_M - db 26,RHYHORN - db 23,PARAS - db 25,EXEGGCUTE - db 30,NIDORINO - db 27,EXEGGCUTE - db 30,NIDORINA - db 32,VENOMOTH - db 26,CHANSEY - db 28,TAUROS - - db $00 - -ZoneMons3: ; d3e5 (3:53e5) - db $1E - db 25,NIDORAN_M - db 26,DODUO - db 23,VENONAT - db 24,EXEGGCUTE - db 33,NIDORINO - db 26,EXEGGCUTE - db 25,NIDORAN_F - db 31,VENOMOTH - db 26,TAUROS - db 28,KANGASKHAN - - db $00 - -WaterMons: ; d3fb (3:53fb) - db $00 - - db $05 - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 20,TENTACOOL - db 30,TENTACOOL - db 35,TENTACOOL - db 40,TENTACOOL - -IslandMons1: ; d411 (3:5411) - db $0F - db 30,SEEL - db 30,SLOWPOKE - db 30,SHELLDER - db 30,HORSEA - db 28,HORSEA - db 21,ZUBAT - db 29,GOLBAT - db 28,PSYDUCK - db 28,SHELLDER - db 38,GOLDUCK - - db $00 - -IslandMonsB1: ; d427 (3:5427) - db $0A - db 30,STARYU - db 30,HORSEA - db 32,SHELLDER - db 32,HORSEA - db 28,SLOWPOKE - db 30,SEEL - db 30,SLOWPOKE - db 28,SEEL - db 38,DEWGONG - db 37,SEADRA - - db $00 - -IslandMonsB2: ; d43d (3:543d) - db $0A - db 30,SEEL - db 30,SLOWPOKE - db 32,SEEL - db 32,SLOWPOKE - db 28,HORSEA - db 30,STARYU - db 30,HORSEA - db 28,SHELLDER - db 30,GOLBAT - db 37,SLOWBRO - - db $00 - -IslandMonsB3: ; d453 (3:5453) - db $0A - db 31,SLOWPOKE - db 31,SEEL - db 33,SLOWPOKE - db 33,SEEL - db 29,HORSEA - db 31,SHELLDER - db 31,HORSEA - db 29,SHELLDER - db 39,SEADRA - db 37,DEWGONG - - db $00 - -IslandMonsB4: ; d469 (3:5469) - db $0A - db 31,HORSEA - db 31,SHELLDER - db 33,HORSEA - db 33,SHELLDER - db 29,SLOWPOKE - db 31,SEEL - db 31,SLOWPOKE - db 29,SEEL - db 39,SLOWBRO - db 32,GOLBAT - - db $00 - -MansionMons1: ; d47f (3:547f) - db $0A - db 32,KOFFING - db 30,KOFFING - db 34,PONYTA - db 30,PONYTA - db 34,GROWLITHE - db 32,PONYTA - db 30,GRIMER - db 28,PONYTA - db 37,WEEZING - db 39,MUK - - db $00 - -MansionMons2: ; d495 (3:5495) - db $0A - db 32,GROWLITHE - db 34,KOFFING - db 34,KOFFING - db 30,PONYTA - db 30,KOFFING - db 32,PONYTA - db 30,GRIMER - db 28,PONYTA - db 39,WEEZING - db 37,MUK - - db $00 - -MansionMons3: ; d4ab (3:54ab) - db $0A - db 31,KOFFING - db 33,GROWLITHE - db 35,KOFFING - db 32,PONYTA - db 34,PONYTA - db 40,WEEZING - db 34,GRIMER - db 38,WEEZING - db 36,PONYTA - db 42,MUK - - db $00 - -MansionMonsB1: ; d4c1 (3:54c1) - db $0A - db 33,KOFFING - db 31,KOFFING - db 35,GROWLITHE - db 32,PONYTA - db 31,KOFFING - db 40,WEEZING - db 34,PONYTA - db 35,GRIMER - db 42,WEEZING - db 42,MUK - - db $00 - -Route21Mons: ; d4d7 (3:54d7) - db $19 - db 21,RATTATA - db 23,PIDGEY - db 30,RATICATE - db 23,RATTATA - db 21,PIDGEY - db 30,PIDGEOTTO - db 32,PIDGEOTTO - db 28,TANGELA - db 30,TANGELA - db 32,TANGELA - - db $05 - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 20,TENTACOOL - db 30,TENTACOOL - db 35,TENTACOOL - db 40,TENTACOOL - -DungeonMons1: ; d501 (3:5501) - db $0A - db 46,GOLBAT - db 46,HYPNO - db 46,MAGNETON - db 49,DODRIO - db 49,VENOMOTH - db 52,ARBOK - db 49,KADABRA - db 52,PARASECT - db 53,RAICHU - db 53,DITTO - - db $00 - -DungeonMons2: ; d517 (3:5517) - db $0F - db 51,DODRIO - db 51,VENOMOTH - db 51,KADABRA - db 52,RHYDON - db 52,MAROWAK - db 52,ELECTRODE - db 56,CHANSEY - db 54,WIGGLYTUFF - db 55,DITTO - db 60,DITTO - - db $00 - -DungeonMonsB1: ; d52d (3:552d) - db $19 - db 55,RHYDON - db 55,MAROWAK - db 55,ELECTRODE - db 64,CHANSEY - db 64,PARASECT - db 64,RAICHU - db 57,ARBOK - db 65,DITTO - db 63,DITTO - db 67,DITTO - - db $00 - -PowerPlantMons: ; d543 (3:5543) - db $0A - db 21,VOLTORB - db 21,MAGNEMITE - db 20,PIKACHU - db 24,PIKACHU - db 23,MAGNEMITE - db 23,VOLTORB - db 32,MAGNETON - db 35,MAGNETON - db 33,ELECTABUZZ - db 36,ELECTABUZZ - - db $00 - -Route23Mons: ; d559 (3:5559) - db $0A - db 26,EKANS - db 33,DITTO - db 26,SPEAROW - db 38,FEAROW - db 38,DITTO - db 38,FEAROW - db 41,ARBOK - db 43,DITTO - db 41,FEAROW - db 43,FEAROW - - db $00 - -PlateauMons2: ; d56f (3:556f) - db $0A - db 22,MACHOP - db 24,GEODUDE - db 26,ZUBAT - db 36,ONIX - db 39,ONIX - db 42,ONIX - db 41,MACHOKE - db 40,GOLBAT - db 40,MAROWAK - db 43,GRAVELER - - db $00 - -PlateauMons3: ; d585 (3:5585) - db $0F - db 24,MACHOP - db 26,GEODUDE - db 22,ZUBAT - db 42,ONIX - db 40,VENOMOTH - db 45,ONIX - db 43,GRAVELER - db 41,GOLBAT - db 42,MACHOKE - db 45,MACHOKE - - db $00 - -PlateauMons1: ; d59b (3:559b) - db $0F - db 24,MACHOP - db 26,GEODUDE - db 22,ZUBAT - db 36,ONIX - db 39,ONIX - db 42,ONIX - db 41,GRAVELER - db 41,GOLBAT - db 42,MACHOKE - db 43,MAROWAK - - db $00 - -CaveMons: ; d5b1 (3:55b1) - db $14 - db 18,DIGLETT - db 19,DIGLETT - db 17,DIGLETT - db 20,DIGLETT - db 16,DIGLETT - db 15,DIGLETT - db 21,DIGLETT - db 22,DIGLETT - db 29,DUGTRIO - db 31,DUGTRIO - - db $00 - -ENDC -IF _GREEN || !_JAPAN && _BLUE -NoMons: ; d0dd (3:50dd) - db $00 - - db $00 - -Route1Mons: ; d0df (3:50df) - db $19 - db 3,PIDGEY - db 3,RATTATA - db 3,RATTATA - db 2,RATTATA - db 2,PIDGEY - db 3,PIDGEY - db 3,PIDGEY - db 4,RATTATA - db 4,PIDGEY - db 5,PIDGEY - - db $00 - -Route2Mons: ; d0f5 (3:50f5) - db $19 - db 3,RATTATA - db 3,PIDGEY - db 4,PIDGEY - db 4,RATTATA - db 5,PIDGEY - db 3,CATERPIE - db 2,RATTATA - db 5,RATTATA - db 4,CATERPIE - db 5,CATERPIE - - db $00 - -Route22Mons: ; d10b (3:510b) - db $19 - db 3,RATTATA - db 3,NIDORAN_F - db 4,RATTATA - db 4,NIDORAN_F - db 2,RATTATA - db 2,NIDORAN_F - db 3,SPEAROW - db 5,SPEAROW - db 3,NIDORAN_M - db 4,NIDORAN_M - - db $00 - -ForestMons: ; d121 (3:5121) - db $08 - db 4,CATERPIE - db 5,METAPOD - db 3,CATERPIE - db 5,CATERPIE - db 4,METAPOD - db 6,METAPOD - db 4,KAKUNA - db 3,WEEDLE - db 3,PIKACHU - db 5,PIKACHU - - db $00 - -Route3Mons: ; d137 (3:5137) - db $14 - db 6,PIDGEY - db 5,SPEAROW - db 7,PIDGEY - db 6,SPEAROW - db 7,SPEAROW - db 8,PIDGEY - db 8,SPEAROW - db 3,JIGGLYPUFF - db 5,JIGGLYPUFF - db 7,JIGGLYPUFF - - db $00 - -MoonMons1: ; d14d (3:514d) - db $0A - db 8,ZUBAT - db 7,ZUBAT - db 9,ZUBAT - db 8,GEODUDE - db 6,ZUBAT - db 10,ZUBAT - db 10,GEODUDE - db 8,PARAS - db 11,ZUBAT - db 8,CLEFAIRY - - db $00 - -MoonMonsB1: ; d163 (3:5163) - db $0A - db 8,ZUBAT - db 7,ZUBAT - db 7,GEODUDE - db 8,GEODUDE - db 9,ZUBAT - db 10,PARAS - db 10,ZUBAT - db 11,ZUBAT - db 9,CLEFAIRY - db 9,GEODUDE - - db $00 - -MoonMonsB2: ; d179 (3:5179) - db $0A - db 9,ZUBAT - db 9,GEODUDE - db 10,ZUBAT - db 10,GEODUDE - db 11,ZUBAT - db 10,PARAS - db 12,PARAS - db 10,CLEFAIRY - db 12,ZUBAT - db 12,CLEFAIRY - - db $00 - -Route4Mons: ; d18f (3:518f) - db $14 - db 10,RATTATA - db 10,SPEAROW - db 8,RATTATA - db 6,SANDSHREW - db 8,SPEAROW - db 10,SANDSHREW - db 12,RATTATA - db 12,SPEAROW - db 8,SANDSHREW - db 12,SANDSHREW - - db $00 - -Route24Mons: ; d1a5 (3:51a5) - db $19 - db 7,CATERPIE - db 8,METAPOD - db 12,PIDGEY - db 12,BELLSPROUT - db 13,BELLSPROUT - db 10,ABRA - db 14,BELLSPROUT - db 13,PIDGEY - db 8,ABRA - db 12,ABRA - - db $00 - -Route25Mons: ; d1bb (3:51bb) - db $0F - db 8,CATERPIE - db 9,METAPOD - db 13,PIDGEY - db 12,BELLSPROUT - db 13,BELLSPROUT - db 12,ABRA - db 14,BELLSPROUT - db 10,ABRA - db 7,KAKUNA - db 8,WEEDLE - - db $00 - -Route9Mons: ; d1d1 (3:51d1) - db $0F - db 16,RATTATA - db 16,SPEAROW - db 14,RATTATA - db 11,SANDSHREW - db 13,SPEAROW - db 15,SANDSHREW - db 17,RATTATA - db 17,SPEAROW - db 13,SANDSHREW - db 17,SANDSHREW - - db $00 - -Route5Mons: ; d1e7 (3:51e7) - db $0F - db 13,BELLSPROUT - db 13,PIDGEY - db 15,PIDGEY - db 10,MEOWTH - db 12,MEOWTH - db 15,BELLSPROUT - db 16,BELLSPROUT - db 16,PIDGEY - db 14,MEOWTH - db 16,MEOWTH - - db $00 - -Route6Mons: ; d1fd (3:51fd) - db $0F - db 13,BELLSPROUT - db 13,PIDGEY - db 15,PIDGEY - db 10,MEOWTH - db 12,MEOWTH - db 15,BELLSPROUT - db 16,BELLSPROUT - db 16,PIDGEY - db 14,MEOWTH - db 16,MEOWTH - - db $00 - -Route11Mons: ; d213 (3:5213) - db $0F - db 14,SANDSHREW - db 15,SPEAROW - db 12,SANDSHREW - db 9,DROWZEE - db 13,SPEAROW - db 13,DROWZEE - db 15,SANDSHREW - db 17,SPEAROW - db 11,DROWZEE - db 15,DROWZEE - - db $00 - -TunnelMonsB1: ; d229 (3:5229) - db $0F - db 16,ZUBAT - db 17,ZUBAT - db 17,GEODUDE - db 15,MACHOP - db 16,GEODUDE - db 18,ZUBAT - db 15,ZUBAT - db 17,MACHOP - db 13,ONIX - db 15,ONIX - - db $00 - -TunnelMonsB2: ; d23f (3:523f) - db $0F - db 16,ZUBAT - db 17,ZUBAT - db 17,GEODUDE - db 15,MACHOP - db 16,GEODUDE - db 18,ZUBAT - db 17,MACHOP - db 17,ONIX - db 13,ONIX - db 18,GEODUDE - - db $00 - -Route10Mons: ; d255 (3:5255) - db $0F - db 16,VOLTORB - db 16,SPEAROW - db 14,VOLTORB - db 11,SANDSHREW - db 13,SPEAROW - db 15,SANDSHREW - db 17,VOLTORB - db 17,SPEAROW - db 13,SANDSHREW - db 17,SANDSHREW - - db $00 - -Route12Mons: ; d26b (3:526b) - db $0F - db 24,BELLSPROUT - db 25,PIDGEY - db 23,PIDGEY - db 24,VENONAT - db 22,BELLSPROUT - db 26,VENONAT - db 26,BELLSPROUT - db 27,PIDGEY - db 28,WEEPINBELL - db 30,WEEPINBELL - - db $00 - -Route8Mons: ; d281 (3:5281) - db $0F - db 18,PIDGEY - db 18,MEOWTH - db 17,SANDSHREW - db 16,VULPIX - db 20,PIDGEY - db 20,MEOWTH - db 19,SANDSHREW - db 17,VULPIX - db 15,VULPIX - db 18,VULPIX - - db $00 - -Route7Mons: ; d297 (3:5297) - db $0F - db 19,PIDGEY - db 19,BELLSPROUT - db 17,MEOWTH - db 22,BELLSPROUT - db 22,PIDGEY - db 18,MEOWTH - db 18,VULPIX - db 20,VULPIX - db 19,MEOWTH - db 20,MEOWTH - - db $00 - -TowerMons1: ; d2ad (3:52ad) - db $00 - - db $00 - -TowerMons2: ; d2af (3:52af) - db $00 - - db $00 - -TowerMons3: ; d2b1 (3:52b1) - db $0A - db 20,GASTLY - db 21,GASTLY - db 22,GASTLY - db 23,GASTLY - db 19,GASTLY - db 18,GASTLY - db 24,GASTLY - db 20,CUBONE - db 22,CUBONE - db 25,HAUNTER - - db $00 - -TowerMons4: ; d2c7 (3:52c7) - db $0A - db 20,GASTLY - db 21,GASTLY - db 22,GASTLY - db 23,GASTLY - db 19,GASTLY - db 18,GASTLY - db 25,HAUNTER - db 20,CUBONE - db 22,CUBONE - db 24,GASTLY - - db $00 - -TowerMons5: ; d2dd (3:52dd) - db $0A - db 20,GASTLY - db 21,GASTLY - db 22,GASTLY - db 23,GASTLY - db 19,GASTLY - db 18,GASTLY - db 25,HAUNTER - db 20,CUBONE - db 22,CUBONE - db 24,GASTLY - - db $00 - -TowerMons6: ; d2f3 (3:52f3) - db $0F - db 21,GASTLY - db 22,GASTLY - db 23,GASTLY - db 24,GASTLY - db 20,GASTLY - db 19,GASTLY - db 26,HAUNTER - db 22,CUBONE - db 24,CUBONE - db 28,HAUNTER - - db $00 - -TowerMons7: ; d309 (3:5309) - db $0F - db 21,GASTLY - db 22,GASTLY - db 23,GASTLY - db 24,GASTLY - db 20,GASTLY - db 28,HAUNTER - db 22,CUBONE - db 24,CUBONE - db 28,HAUNTER - db 30,HAUNTER - - db $00 - -Route13Mons: ; d31f (3:531f) - db $14 - db 24,BELLSPROUT - db 25,PIDGEY - db 27,PIDGEY - db 24,VENONAT - db 22,BELLSPROUT - db 26,VENONAT - db 26,BELLSPROUT - db 25,DITTO - db 28,WEEPINBELL - db 30,WEEPINBELL - - db $00 - -Route14Mons: ; d335 (3:5335) - db $0F - db 24,BELLSPROUT - db 26,PIDGEY - db 23,DITTO - db 24,VENONAT - db 22,BELLSPROUT - db 26,VENONAT - db 26,BELLSPROUT - db 30,WEEPINBELL - db 28,PIDGEOTTO - db 30,PIDGEOTTO - - db $00 - -Route15Mons: ; d34b (3:534b) - db $0F - db 24,BELLSPROUT - db 26,DITTO - db 23,PIDGEY - db 26,VENONAT - db 22,BELLSPROUT - db 28,VENONAT - db 26,BELLSPROUT - db 30,WEEPINBELL - db 28,PIDGEOTTO - db 30,PIDGEOTTO - - db $00 - -Route16Mons: ; d361 (3:5361) - db $19 - db 20,SPEAROW - db 22,SPEAROW - db 18,RATTATA - db 20,DODUO - db 20,RATTATA - db 18,DODUO - db 22,DODUO - db 22,RATTATA - db 23,RATICATE - db 25,RATICATE - - db $00 - -Route17Mons: ; d377 (3:5377) - db $19 - db 20,SPEAROW - db 22,SPEAROW - db 25,RATICATE - db 24,DODUO - db 27,RATICATE - db 26,DODUO - db 28,DODUO - db 29,RATICATE - db 25,FEAROW - db 27,FEAROW - - db $00 - -Route18Mons: ; d38d (3:538d) - db $19 - db 20,SPEAROW - db 22,SPEAROW - db 25,RATICATE - db 24,DODUO - db 25,FEAROW - db 26,DODUO - db 28,DODUO - db 29,RATICATE - db 27,FEAROW - db 29,FEAROW - - db $00 - -ZoneMonsCenter: ; d3a3 (3:53a3) - db $1E - db 22,NIDORAN_F - db 25,RHYHORN - db 22,VENONAT - db 24,EXEGGCUTE - db 31,NIDORINA - db 25,EXEGGCUTE - db 31,NIDORINO - db 30,PARASECT - db 23,PINSIR - db 23,CHANSEY - - db $00 - -ZoneMons1: ; d3b9 (3:53b9) - db $1E - db 24,NIDORAN_F - db 26,DODUO - db 22,PARAS - db 25,EXEGGCUTE - db 33,NIDORINA - db 23,EXEGGCUTE - db 24,NIDORAN_M - db 25,PARASECT - db 25,KANGASKHAN - db 28,PINSIR - - db $00 - -ZoneMons2: ; d3cf (3:53cf) - db $1E - db 22,NIDORAN_F - db 26,RHYHORN - db 23,PARAS - db 25,EXEGGCUTE - db 30,NIDORINA - db 27,EXEGGCUTE - db 30,NIDORINO - db 32,VENOMOTH - db 26,CHANSEY - db 28,TAUROS - - db $00 - -ZoneMons3: ; d3e5 (3:53e5) - db $1E - db 25,NIDORAN_F - db 26,DODUO - db 23,VENONAT - db 24,EXEGGCUTE - db 33,NIDORINA - db 26,EXEGGCUTE - db 25,NIDORAN_M - db 31,VENOMOTH - db 26,TAUROS - db 28,KANGASKHAN - - db $00 - -WaterMons: ; d3fb (3:53fb) - db $00 - - db $05 - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 20,TENTACOOL - db 30,TENTACOOL - db 35,TENTACOOL - db 40,TENTACOOL - -IslandMons1: ; d411 (3:5411) - db $0F - db 30,SEEL - db 30,PSYDUCK - db 30,STARYU - db 30,KRABBY - db 28,KRABBY - db 21,ZUBAT - db 29,GOLBAT - db 28,SLOWPOKE - db 28,STARYU - db 38,SLOWBRO - - db $00 - -IslandMonsB1: ; d427 (3:5427) - db $0A - db 30,SHELLDER - db 30,KRABBY - db 32,STARYU - db 32,KRABBY - db 28,PSYDUCK - db 30,SEEL - db 30,PSYDUCK - db 28,SEEL - db 38,DEWGONG - db 37,KINGLER - - db $00 - -IslandMonsB2: ; d43d (3:543d) - db $0A - db 30,SEEL - db 30,PSYDUCK - db 32,SEEL - db 32,PSYDUCK - db 28,KRABBY - db 30,SHELLDER - db 30,KRABBY - db 28,STARYU - db 30,GOLBAT - db 37,GOLDUCK - - db $00 - -IslandMonsB3: ; d453 (3:5453) - db $0A - db 31,PSYDUCK - db 31,SEEL - db 33,PSYDUCK - db 33,SEEL - db 29,KRABBY - db 31,STARYU - db 31,KRABBY - db 29,STARYU - db 39,KINGLER - db 37,DEWGONG - - db $00 - -IslandMonsB4: ; d469 (3:5469) - db $0A - db 31,KRABBY - db 31,STARYU - db 33,KRABBY - db 33,STARYU - db 29,PSYDUCK - db 31,SEEL - db 31,PSYDUCK - db 29,SEEL - db 39,GOLDUCK - db 32,GOLBAT - - db $00 - -MansionMons1: ; d47f (3:547f) - db $0A - db 32,GRIMER - db 30,GRIMER - db 34,PONYTA - db 30,PONYTA - db 34,VULPIX - db 32,PONYTA - db 30,KOFFING - db 28,PONYTA - db 37,MUK - db 39,WEEZING - - db $00 - -MansionMons2: ; d495 (3:5495) - db $0A - db 32,VULPIX - db 34,GRIMER - db 34,GRIMER - db 30,PONYTA - db 30,GRIMER - db 32,PONYTA - db 30,KOFFING - db 28,PONYTA - db 39,MUK - db 37,WEEZING - - db $00 - -MansionMons3: ; d4ab (3:54ab) - db $0A - db 31,GRIMER - db 33,VULPIX - db 35,GRIMER - db 32,PONYTA - db 34,MAGMAR - db 40,MUK - db 34,KOFFING - db 38,MUK - db 36,PONYTA - db 42,WEEZING - - db $00 - -MansionMonsB1: ; d4c1 (3:54c1) - db $0A - db 33,GRIMER - db 31,GRIMER - db 35,VULPIX - db 32,PONYTA - db 31,GRIMER - db 40,MUK - db 34,PONYTA - db 35,KOFFING - db 38,MAGMAR - db 42,WEEZING - - db $00 - -Route21Mons: ; d4d7 (3:54d7) - db $19 - db 21,RATTATA - db 23,PIDGEY - db 30,RATICATE - db 23,RATTATA - db 21,PIDGEY - db 30,PIDGEOTTO - db 32,PIDGEOTTO - db 28,TANGELA - db 30,TANGELA - db 32,TANGELA - - db $05 - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 20,TENTACOOL - db 30,TENTACOOL - db 35,TENTACOOL - db 40,TENTACOOL - -DungeonMons1: ; d501 (3:5501) - db $0A - db 46,GOLBAT - db 46,HYPNO - db 46,MAGNETON - db 49,DODRIO - db 49,VENOMOTH - db 52,SANDSLASH - db 49,KADABRA - db 52,PARASECT - db 53,RAICHU - db 53,DITTO - - db $00 - -DungeonMons2: ; d517 (3:5517) - db $0F - db 51,DODRIO - db 51,VENOMOTH - db 51,KADABRA - db 52,RHYDON - db 52,MAROWAK - db 52,ELECTRODE - db 56,CHANSEY - db 54,WIGGLYTUFF - db 55,DITTO - db 60,DITTO - - db $00 - -DungeonMonsB1: ; d52d (3:552d) - db $19 - db 55,RHYDON - db 55,MAROWAK - db 55,ELECTRODE - db 64,CHANSEY - db 64,PARASECT - db 64,RAICHU - db 57,SANDSLASH - db 65,DITTO - db 63,DITTO - db 67,DITTO - - db $00 - -PowerPlantMons: ; d543 (3:5543) - db $0A - db 21,VOLTORB - db 21,MAGNEMITE - db 20,PIKACHU - db 24,PIKACHU - db 23,MAGNEMITE - db 23,VOLTORB - db 32,MAGNETON - db 35,MAGNETON - db 33,RAICHU - db 36,RAICHU - - db $00 - -Route23Mons: ; d559 (3:5559) - db $0A - db 26,SANDSHREW - db 33,DITTO - db 26,SPEAROW - db 38,FEAROW - db 38,DITTO - db 38,FEAROW - db 41,SANDSLASH - db 43,DITTO - db 41,FEAROW - db 43,FEAROW - - db $00 - -PlateauMons2: ; d56f (3:556f) - db $0A - db 22,MACHOP - db 24,GEODUDE - db 26,ZUBAT - db 36,ONIX - db 39,ONIX - db 42,ONIX - db 41,MACHOKE - db 40,GOLBAT - db 40,MAROWAK - db 43,GRAVELER - - db $00 - -PlateauMons3: ; d585 (3:5585) - db $0F - db 24,MACHOP - db 26,GEODUDE - db 22,ZUBAT - db 42,ONIX - db 40,VENOMOTH - db 45,ONIX - db 43,GRAVELER - db 41,GOLBAT - db 42,MACHOKE - db 45,MACHOKE - - db $00 - -PlateauMons1: ; d59b (3:559b) - db $0F - db 24,MACHOP - db 26,GEODUDE - db 22,ZUBAT - db 36,ONIX - db 39,ONIX - db 42,ONIX - db 41,GRAVELER - db 41,GOLBAT - db 42,MACHOKE - db 43,MAROWAK - - db $00 - -CaveMons: ; d5b1 (3:55b1) - db $14 - db 18,DIGLETT - db 19,DIGLETT - db 17,DIGLETT - db 20,DIGLETT - db 16,DIGLETT - db 15,DIGLETT - db 21,DIGLETT - db 22,DIGLETT - db 29,DUGTRIO - db 31,DUGTRIO - - db $00 - -ENDC -IF _JAPAN && _BLUE -NoMons: ; d0dd (3:50dd) - db $00 - - db $00 - -Route1Mons: ; d0df (3:50df) - db $19 - db 3,PIDGEY - db 3,RATTATA - db 3,RATTATA - db 2,RATTATA - db 2,PIDGEY - db 3,PIDGEY - db 3,PIDGEY - db 4,RATTATA - db 4,PIDGEY - db 5,PIDGEY - - db $00 - -Route2Mons: ; d0f5 (3:50f5) - db $19 - db 3,RATTATA - db 3,PIDGEY - db 4,PIDGEY - db 4,RATTATA - db 5,PIDGEY - db 3,CATERPIE - db 2,RATTATA - db 5,RATTATA - db 4,CATERPIE - db 5,CATERPIE - - db $00 - -Route22Mons: ; d10b (3:510b) - db $19 - db 3,RATTATA - db 3,NIDORAN_M - db 4,RATTATA - db 4,NIDORAN_M - db 2,RATTATA - db 2,NIDORAN_M - db 3,SPEAROW - db 5,SPEAROW - db 3,NIDORAN_F - db 4,NIDORAN_F - - db $00 - -ForestMons: ; d121 (3:5121) - db $08 - db 4,CATERPIE - db 5,METAPOD - db 3,CATERPIE - db 5,CATERPIE - db 4,METAPOD - db 6,METAPOD - db 4,KAKUNA - db 3,WEEDLE - db 3,PIKACHU - db 5,PIKACHU - - db $00 - -Route3Mons: ; d137 (3:5137) - db $14 - db 6,PIDGEY - db 5,SPEAROW - db 7,PIDGEY - db 6,SPEAROW - db 7,SPEAROW - db 8,PIDGEY - db 8,SPEAROW - db 3,JIGGLYPUFF - db 5,JIGGLYPUFF - db 7,JIGGLYPUFF - - db $00 - -MoonMons1: ; d14d (3:514d) - db $0A - db 8,ZUBAT - db 7,ZUBAT - db 9,ZUBAT - db 8,GEODUDE - db 6,ZUBAT - db 10,ZUBAT - db 10,GEODUDE - db 8,PARAS - db 11,ZUBAT - db 8,CLEFAIRY - - db $00 - -MoonMonsB1: ; d163 (3:5163) - db $0A - db 8,ZUBAT - db 7,ZUBAT - db 7,GEODUDE - db 8,GEODUDE - db 9,ZUBAT - db 10,PARAS - db 10,ZUBAT - db 11,ZUBAT - db 9,CLEFAIRY - db 9,GEODUDE - - db $00 - -MoonMonsB2: ; d179 (3:5179) - db $0A - db 9,ZUBAT - db 9,GEODUDE - db 10,ZUBAT - db 10,GEODUDE - db 11,ZUBAT - db 10,PARAS - db 12,PARAS - db 10,CLEFAIRY - db 12,ZUBAT - db 12,CLEFAIRY - - db $00 - -Route4Mons: ; d18f (3:518f) - db $14 - db 10,RATTATA - db 10,SPEAROW - db 8,RATTATA - db 6,SANDSHREW - db 8,SPEAROW - db 10,SANDSHREW - db 12,RATTATA - db 12,SPEAROW - db 8,SANDSHREW - db 12,SANDSHREW - - db $00 - -Route24Mons: ; d1a5 (3:51a5) - db $19 - db 7,CATERPIE - db 8,METAPOD - db 12,PIDGEY - db 12,ODDISH - db 13,ODDISH - db 10,ABRA - db 14,ODDISH - db 13,PIDGEY - db 8,ABRA - db 12,ABRA - - db $00 - -Route25Mons: ; d1bb (3:51bb) - db $0F - db 8,CATERPIE - db 9,METAPOD - db 13,PIDGEY - db 12,ODDISH - db 13,ODDISH - db 12,ABRA - db 14,ODDISH - db 10,ABRA - db 7,KAKUNA - db 8,WEEDLE - - db $00 - -Route9Mons: ; d1d1 (3:51d1) - db $0F - db 16,RATTATA - db 16,SPEAROW - db 14,RATTATA - db 11,SANDSHREW - db 13,SPEAROW - db 15,SANDSHREW - db 17,RATTATA - db 17,SPEAROW - db 13,SANDSHREW - db 17,SANDSHREW - - db $00 - -Route5Mons: ; d1e7 (3:51e7) - db $0F - db 13,ODDISH - db 13,PIDGEY - db 15,PIDGEY - db 10,MEOWTH - db 12,MEOWTH - db 15,ODDISH - db 16,ODDISH - db 16,PIDGEY - db 14,MEOWTH - db 16,MEOWTH - - db $00 - -Route6Mons: ; d1fd (3:51fd) - db $0F - db 13,ODDISH - db 13,PIDGEY - db 15,PIDGEY - db 10,MEOWTH - db 12,MEOWTH - db 15,ODDISH - db 16,ODDISH - db 16,PIDGEY - db 14,MEOWTH - db 16,MEOWTH - - db $00 - -Route11Mons: ; d213 (3:5213) - db $0F - db 14,SANDSHREW - db 15,SPEAROW - db 12,SANDSHREW - db 9,DROWZEE - db 13,SPEAROW - db 13,DROWZEE - db 15,SANDSHREW - db 17,SPEAROW - db 11,DROWZEE - db 15,DROWZEE - - db $00 - -TunnelMonsB1: ; d229 (3:5229) - db $0F - db 16,ZUBAT - db 17,ZUBAT - db 17,GEODUDE - db 15,MACHOP - db 16,GEODUDE - db 18,DITTO - db 15,ZUBAT - db 17,MACHOP - db 13,ONIX - db 15,ONIX - - db $00 - -TunnelMonsB2: ; d23f (3:523f) - db $0F - db 16,ZUBAT - db 17,ZUBAT - db 17,GEODUDE - db 15,MACHOP - db 16,GEODUDE - db 18,DITTO - db 17,MACHOP - db 17,ONIX - db 13,ONIX - db 18,GEODUDE - - db $00 - -Route10Mons: ; d255 (3:5255) - db $0F - db 16,VOLTORB - db 16,SPEAROW - db 14,VOLTORB - db 11,SANDSHREW - db 13,SPEAROW - db 15,SANDSHREW - db 17,VOLTORB - db 17,SPEAROW - db 13,SANDSHREW - db 17,SANDSHREW - - db $00 - -Route12Mons: ; d26b (3:526b) - db $0F - db 24,ODDISH - db 25,PIDGEY - db 23,PIDGEY - db 24,VENONAT - db 22,ODDISH - db 26,VENONAT - db 26,ODDISH - db 27,PIDGEY - db 28,GLOOM - db 30,GLOOM - - db $00 - -Route8Mons: ; d281 (3:5281) - db $0F - db 18,PIDGEY - db 18,MEOWTH - db 17,SANDSHREW - db 16,GROWLITHE - db 20,PIDGEY - db 20,MEOWTH - db 19,SANDSHREW - db 17,GROWLITHE - db 15,GROWLITHE - db 18,GROWLITHE - - db $00 - -Route7Mons: ; d297 (3:5297) - db $0F - db 19,PIDGEY - db 19,ODDISH - db 17,MEOWTH - db 22,ODDISH - db 22,PIDGEY - db 18,MEOWTH - db 18,GROWLITHE - db 20,GROWLITHE - db 19,MEOWTH - db 20,MEOWTH - - db $00 - -TowerMons1: ; d2ad (3:52ad) - db $00 - - db $00 - -TowerMons2: ; d2af (3:52af) - db $00 - - db $00 - -TowerMons3: ; d2b1 (3:52b1) - db $0A - db 20,GASTLY - db 21,GASTLY - db 22,GASTLY - db 23,GASTLY - db 19,GASTLY - db 18,GASTLY - db 24,GASTLY - db 20,CUBONE - db 22,CUBONE - db 25,HAUNTER - - db $00 - -TowerMons4: ; d2c7 (3:52c7) - db $0A - db 20,GASTLY - db 21,GASTLY - db 22,GASTLY - db 23,GASTLY - db 19,GASTLY - db 18,GASTLY - db 25,HAUNTER - db 20,CUBONE - db 22,CUBONE - db 24,GASTLY - - db $00 - -TowerMons5: ; d2dd (3:52dd) - db $0A - db 20,GASTLY - db 21,GASTLY - db 22,GASTLY - db 23,GASTLY - db 19,GASTLY - db 18,GASTLY - db 25,HAUNTER - db 20,CUBONE - db 22,CUBONE - db 24,GASTLY - - db $00 - -TowerMons6: ; d2f3 (3:52f3) - db $0F - db 21,GASTLY - db 22,GASTLY - db 23,GASTLY - db 24,GASTLY - db 20,GASTLY - db 19,GASTLY - db 26,HAUNTER - db 22,CUBONE - db 24,CUBONE - db 28,HAUNTER - - db $00 - -TowerMons7: ; d309 (3:5309) - db $0F - db 21,GASTLY - db 22,GASTLY - db 23,GASTLY - db 24,GASTLY - db 20,GASTLY - db 28,HAUNTER - db 22,CUBONE - db 24,CUBONE - db 28,HAUNTER - db 30,HAUNTER - - db $00 - -Route13Mons: ; d31f (3:531f) - db $14 - db 24,ODDISH - db 25,PIDGEY - db 27,PIDGEY - db 24,VENONAT - db 22,ODDISH - db 26,VENONAT - db 26,ODDISH - db 25,DITTO - db 28,GLOOM - db 30,GLOOM - - db $00 - -Route14Mons: ; d335 (3:5335) - db $0F - db 24,ODDISH - db 26,PIDGEY - db 23,DITTO - db 24,VENONAT - db 22,ODDISH - db 26,VENONAT - db 26,ODDISH - db 30,GLOOM - db 28,PIDGEOTTO - db 30,PIDGEOTTO - - db $00 - -Route15Mons: ; d34b (3:534b) - db $0F - db 24,ODDISH - db 26,DITTO - db 23,PIDGEY - db 26,VENONAT - db 22,ODDISH - db 28,VENONAT - db 26,ODDISH - db 30,GLOOM - db 28,PIDGEOTTO - db 30,PIDGEOTTO - - db $00 - -Route16Mons: ; d361 (3:5361) - db $19 - db 20,SPEAROW - db 22,SPEAROW - db 18,RATTATA - db 20,DODUO - db 20,RATTATA - db 18,DODUO - db 22,DODUO - db 22,RATTATA - db 23,RATICATE - db 25,RATICATE - - db $00 - -Route17Mons: ; d377 (3:5377) - db $19 - db 20,SPEAROW - db 22,SPEAROW - db 25,RATICATE - db 24,DODUO - db 27,RATICATE - db 26,DODUO - db 28,DODUO - db 29,RATICATE - db 25,FEAROW - db 27,FEAROW - - db $00 - -Route18Mons: ; d38d (3:538d) - db $19 - db 20,SPEAROW - db 22,SPEAROW - db 25,RATICATE - db 24,DODUO - db 25,FEAROW - db 26,DODUO - db 28,DODUO - db 29,RATICATE - db 27,FEAROW - db 29,FEAROW - - db $00 - -ZoneMonsCenter: ; d3a3 (3:53a3) - db $1E - db 22,NIDORAN_M - db 25,RHYHORN - db 22,VENONAT - db 24,EXEGGCUTE - db 31,NIDORINO - db 25,EXEGGCUTE - db 31,NIDORINA - db 30,PARASECT - db 23,SCYTHER - db 23,CHANSEY - - db $00 - -ZoneMons1: ; d3b9 (3:53b9) - db $1E - db 24,NIDORAN_M - db 26,DODUO - db 22,PARAS - db 25,EXEGGCUTE - db 33,NIDORINO - db 23,EXEGGCUTE - db 24,NIDORAN_F - db 25,PARASECT - db 25,LICKITUNG - db 28,SCYTHER - - db $00 - -ZoneMons2: ; d3cf (3:53cf) - db $1E - db 22,NIDORAN_M - db 26,RHYHORN - db 23,PARAS - db 25,EXEGGCUTE - db 30,NIDORINO - db 27,EXEGGCUTE - db 30,NIDORINA - db 32,VENOMOTH - db 26,CHANSEY - db 28,PINSIR - - db $00 - -ZoneMons3: ; d3e5 (3:53e5) - db $1E - db 25,NIDORAN_M - db 26,DODUO - db 23,VENONAT - db 24,EXEGGCUTE - db 33,NIDORINO - db 26,EXEGGCUTE - db 25,NIDORAN_F - db 31,VENOMOTH - db 26,PINSIR - db 28,LICKITUNG - - db $00 - -WaterMons: ; d3fb (3:53fb) - db $00 - - db $05 - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 20,TENTACOOL - db 30,TENTACOOL - db 35,TENTACOOL - db 40,TENTACOOL - -WaterMons: ; d3fb (3:53fb) - db $00 - - db $05 - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 20,TENTACOOL - db 30,TENTACOOL - db 35,TENTACOOL - db 40,TENTACOOL - -IslandMons1: ; d411 (3:5411) - db $0F - db 30,SEEL - db 30,HORSEA - db 30,STARYU - db 30,KRABBY - db 28,KRABBY - db 21,ZUBAT - db 29,GOLBAT - db 28,SLOWPOKE - db 28,STARYU - db 38,SLOWBRO - - db $00 - -IslandMonsB1: ; d427 (3:5427) - db $0A - db 30,SHELLDER - db 30,KRABBY - db 32,STARYU - db 32,KRABBY - db 28,HORSEA - db 30,SEEL - db 30,HORSEA - db 28,SEEL - db 38,DEWGONG - db 37,KINGLER - - db $00 - -IslandMonsB2: ; d43d (3:543d) - db $0A - db 30,SEEL - db 30,HORSEA - db 32,SEEL - db 32,HORSEA - db 28,KRABBY - db 30,SHELLDER - db 30,KRABBY - db 28,STARYU - db 30,GOLBAT - db 37,JYNX - - db $00 - -IslandMonsB3: ; d453 (3:5453) - db $0A - db 31,HORSEA - db 31,SEEL - db 33,HORSEA - db 33,SEEL - db 29,KRABBY - db 31,STARYU - db 31,KRABBY - db 29,STARYU - db 39,KINGLER - db 37,DEWGONG - - db $00 - -IslandMonsB4: ; d469 (3:5469) - db $0A - db 31,KRABBY - db 31,STARYU - db 33,KRABBY - db 33,STARYU - db 29,HORSEA - db 31,SEEL - db 31,HORSEA - db 29,SEEL - db 39,JYNX - db 32,GOLBAT - - db $00 - -MansionMons1: ; d47f (3:547f) - db $0A - db 32,GRIMER - db 30,GRIMER - db 34,PONYTA - db 30,PONYTA - db 34,GROWLITHE - db 32,PONYTA - db 30,KOFFING - db 28,PONYTA - db 37,MUK - db 39,WEEZING - - db $00 - -MansionMons2: ; d495 (3:5495) - db $0A - db 32,GROWLITHE - db 34,GRIMER - db 34,GRIMER - db 30,PONYTA - db 30,GRIMER - db 32,PONYTA - db 30,KOFFING - db 28,PONYTA - db 39,MUK - db 37,WEEZING - - db $00 - -MansionMons3: ; d4ab (3:54ab) - db $0A - db 31,GRIMER - db 33,GROWLITHE - db 35,GRIMER - db 32,PONYTA - db 34,PONYTA - db 40,MUK - db 34,KOFFING - db 38,MUK - db 36,PONYTA - db 42,WEEZING - - db $00 - -MansionMonsB1: ; d4c1 (3:54c1) - db $0A - db 33,GRIMER - db 31,GRIMER - db 35,GROWLITHE - db 32,PONYTA - db 31,GRIMER - db 40,MUK - db 34,PONYTA - db 35,KOFFING - db 38,MUK - db 42,WEEZING - - db $00 - -Route21Mons: ; d4d7 (3:54d7) - db $19 - db 21,RATTATA - db 23,PIDGEY - db 30,RATICATE - db 23,RATTATA - db 21,PIDGEY - db 30,PIDGEOTTO - db 32,PIDGEOTTO - db 28,TANGELA - db 30,TANGELA - db 32,TANGELA - - db $05 - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 20,TENTACOOL - db 30,TENTACOOL - db 35,TENTACOOL - db 40,TENTACOOL - -DungeonMons1: ; d501 (3:5501) - db $0A - db 46,GOLBAT - db 46,HYPNO - db 46,MAGNETON - db 49,RAPIDASH - db 49,VENOMOTH - db 52,SANDSLASH - db 49,KADABRA - db 52,PARASECT - db 53,RAICHU - db 53,DITTO - - db $00 - -DungeonMons2: ; d517 (3:5517) - db $0F - db 51,DODRIO - db 51,VENOMOTH - db 51,KADABRA - db 52,RHYDON - db 52,RATICATE - db 52,ELECTRODE - db 56,CHANSEY - db 54,WIGGLYTUFF - db 55,DITTO - db 60,DITTO - - db $00 - -DungeonMonsB1: ; d52d (3:552d) - db $19 - db 55,RHYDON - db 55,MAROWAK - db 55,ELECTRODE - db 64,CLEFAIRY - db 64,PARASECT - db 64,RAICHU - db 57,SANDSLASH - db 65,DITTO - db 63,DITTO - db 67,DITTO - - db $00 - -PowerPlantMons: ; d543 (3:5543) - db $0A - db 21,VOLTORB - db 21,MAGNEMITE - db 20,PIKACHU - db 24,PIKACHU - db 23,MAGNEMITE - db 23,VOLTORB - db 32,MAGNETON - db 35,MAGNETON - db 33,RAICHU - db 36,RAICHU - - db $00 - -Route23Mons: ; d559 (3:5559) - db $0A - db 26,SANDSHREW - db 33,DITTO - db 26,SPEAROW - db 38,FEAROW - db 38,DITTO - db 38,FEAROW - db 41,SANDSLASH - db 43,DITTO - db 41,FEAROW - db 43,FEAROW - - db $00 - -PlateauMons2: ; d56f (3:556f) - db $0A - db 22,MACHOP - db 24,GEODUDE - db 26,ZUBAT - db 36,ONIX - db 39,ONIX - db 42,ONIX - db 41,MACHOKE - db 40,GOLBAT - db 40,MAROWAK - db 43,GRAVELER - - db $00 - -PlateauMons3: ; d585 (3:5585) - db $0F - db 24,MACHOP - db 26,GEODUDE - db 22,ZUBAT - db 42,ONIX - db 40,VENOMOTH - db 45,ONIX - db 43,GRAVELER - db 41,GOLBAT - db 42,MACHOKE - db 45,MACHOKE - - db $00 - -PlateauMons1: ; d59b (3:559b) - db $0F - db 24,MACHOP - db 26,GEODUDE - db 22,ZUBAT - db 36,ONIX - db 39,ONIX - db 42,ONIX - db 41,GRAVELER - db 41,GOLBAT - db 42,MACHOKE - db 43,MAROWAK - - db $00 - -CaveMons: ; d5b1 (3:55b1) - db $14 - db 18,DIGLETT - db 19,DIGLETT - db 17,DIGLETT - db 20,DIGLETT - db 16,DIGLETT - db 15,DIGLETT - db 21,DIGLETT - db 22,DIGLETT - db 29,DUGTRIO - db 31,DUGTRIO - - db $00 - -ENDC -IF _YELLOW -NoMons: ; d0dd (3:50dd) - db $00 - - db $00 - -Route1Mons: ; d0df (3:50df) - db $19 - db 3,PIDGEY - db 4,PIDGEY - db 2,RATTATA - db 3,RATTATA - db 2,PIDGEY - db 3,PIDGEY - db 5,PIDGEY - db 4,RATTATA - db 6,PIDGEY - db 7,PIDGEY - - db $00 - -Route2Mons: ; d0f5 (3:50f5) - db $19 - db 3,RATTATA - db 3,PIDGEY - db 4,RATTATA - db 4,NIDORAN_M - db 4,NIDORAN_F - db 5,PIDGEY - db 6,NIDORAN_M - db 6,NIDORAN_F - db 7,PIDGEY - db 7,PIDGEY - - db $00 - -Route22Mons: ; d10b (3:510b) - db $19 - db 2,NIDORAN_M - db 2,NIDORAN_F - db 3,MANKEY - db 3,RATTATA - db 4,NIDORAN_M - db 4,NIDORAN_F - db 5,MANKEY - db 2,SPEAROW - db 4,SPEAROW - db 6,SPEAROW - - db $00 - -ForestMons: ; d121 (3:5121) - db $19 - db 3,CATERPIE - db 4,METAPOD - db 4,CATERPIE - db 5,CATERPIE - db 4,PIDGEY - db 6,PIDGEY - db 6,CATERPIE - db 6,METAPOD - db 8,PIDGEY - db 9,PIDGEOTTO - - db $00 - -Route3Mons: ; d137 (3:5137) - db $14 - db 8,SPEAROW - db 9,SPEAROW - db 9,MANKEY - db 10,SPEAROW - db 8,SANDSHREW - db 10,RATTATA - db 10,SANDSHREW - db 12,RATTATA - db 11,SPEAROW - db 12,SPEAROW - - db $00 - -MoonMons1: ; d14d (3:514d) - db $0A - db 8,ZUBAT - db 9,ZUBAT - db 10,GEODUDE - db 6,ZUBAT - db 7,ZUBAT - db 10,ZUBAT - db 10,GEODUDE - db 11,ZUBAT - db 12,SANDSHREW - db 11,CLEFAIRY - - db $00 - -MoonMonsB1: ; d163 (3:5163) - db $0A - db 8,ZUBAT - db 9,ZUBAT - db 10,ZUBAT - db 10,GEODUDE - db 11,GEODUDE - db 11,ZUBAT - db 9,PARAS - db 11,PARAS - db 10,CLEFAIRY - db 12,CLEFAIRY - - db $00 - -MoonMonsB2: ; d179 (3:5179) - db $0A - db 10,ZUBAT - db 11,GEODUDE - db 13,PARAS - db 11,ZUBAT - db 11,ZUBAT - db 12,ZUBAT - db 13,ZUBAT - db 9,CLEFAIRY - db 11,CLEFAIRY - db 13,CLEFAIRY - - db $00 - -Route4Mons: ; d18f (3:518f) - db $14 - db 8,SPEAROW - db 9,SPEAROW - db 9,MANKEY - db 10,SPEAROW - db 8,SANDSHREW - db 10,RATTATA - db 10,SANDSHREW - db 12,RATTATA - db 11,SPEAROW - db 12,SPEAROW - - db $00 - -Route24Mons: ; d1a5 (3:51a5) - db $19 - db 12,ODDISH - db 12,BELLSPROUT - db 13,PIDGEY - db 14,ODDISH - db 14,BELLSPROUT - db 15,PIDGEY - db 13,VENONAT - db 16,VENONAT - db 17,PIDGEY - db 17,PIDGEOTTO - - db $00 - -Route25Mons: ; d1bb (3:51bb) - db $0F - db 12,ODDISH - db 12,BELLSPROUT - db 13,PIDGEY - db 14,ODDISH - db 14,BELLSPROUT - db 15,PIDGEY - db 13,VENONAT - db 16,VENONAT - db 17,PIDGEY - db 17,PIDGEOTTO - - db $00 - -Route9Mons: ; d1d1 (3:51d1) - db $0F - db 16,NIDORAN_M - db 16,NIDORAN_F - db 18,RATTATA - db 18,NIDORAN_M - db 18,NIDORAN_F - db 17,SPEAROW - db 18,NIDORINO - db 18,NIDORINA - db 20,RATICATE - db 19,FEAROW - - db $00 - -Route5Mons: ; d1e7 (3:51e7) - db $0F - db 15,PIDGEY - db 14,RATTATA - db 7,ABRA - db 16,PIDGEY - db 16,RATTATA - db 17,PIDGEY - db 17,PIDGEOTTO - db 3,JIGGLYPUFF - db 5,JIGGLYPUFF - db 7,JIGGLYPUFF - - db $00 - -Route6Mons: ; d1fd (3:51fd) - db $0F - db 15,PIDGEY - db 14,RATTATA - db 7,ABRA - db 16,PIDGEY - db 16,RATTATA - db 17,PIDGEY - db 17,PIDGEOTTO - db 3,JIGGLYPUFF - db 5,JIGGLYPUFF - db 7,JIGGLYPUFF - - db $03 - db 15,PSYDUCK - db 15,PSYDUCK - db 15,PSYDUCK - db 15,PSYDUCK - db 15,PSYDUCK - db 15,PSYDUCK - db 15,PSYDUCK - db 15,PSYDUCK - db 15,GOLDUCK - db 20,GOLDUCK - -Route11Mons: ; d213 (3:5213) - db $0F - db 16,PIDGEY - db 15,RATTATA - db 18,PIDGEY - db 15,DROWZEE - db 17,RATTATA - db 17,DROWZEE - db 18,PIDGEOTTO - db 20,PIDGEOTTO - db 19,DROWZEE - db 17,RATICATE - - db $00 - -TunnelMonsB1: ; d229 (3:5229) - db $0F - db 15,ZUBAT - db 16,GEODUDE - db 17,ZUBAT - db 19,ZUBAT - db 18,GEODUDE - db 20,GEODUDE - db 21,ZUBAT - db 17,MACHOP - db 19,MACHOP - db 21,MACHOP - - db $00 - -TunnelMonsB2: ; d23f (3:523f) - db $0F - db 20,ZUBAT - db 17,GEODUDE - db 18,MACHOP - db 21,ZUBAT - db 22,ZUBAT - db 21,GEODUDE - db 20,MACHOP - db 14,ONIX - db 18,ONIX - db 22,ONIX - - db $00 - -Route10Mons: ; d255 (3:5255) - db $0F - db 16,MAGNEMITE - db 18,RATTATA - db 18,MAGNEMITE - db 20,MAGNEMITE - db 17,NIDORAN_M - db 17,NIDORAN_F - db 22,MAGNEMITE - db 20,RATICATE - db 16,MACHOP - db 18,MACHOP - - db $00 - -Route12Mons: ; d26b (3:526b) - db $0F - db 25,ODDISH - db 25,BELLSPROUT - db 28,PIDGEY - db 28,PIDGEOTTO - db 27,ODDISH - db 27,BELLSPROUT - db 29,GLOOM - db 29,WEEPINBELL - db 26,FARFETCH_D - db 31,FARFETCH_D - - db $03 - db 15,SLOWPOKE - db 15,SLOWPOKE - db 15,SLOWPOKE - db 15,SLOWPOKE - db 15,SLOWPOKE - db 15,SLOWPOKE - db 15,SLOWPOKE - db 15,SLOWPOKE - db 15,SLOWBRO - db 20,SLOWBRO - -Route8Mons: ; d281 (3:5281) - db $0F - db 20,PIDGEY - db 22,PIDGEY - db 20,RATTATA - db 15,ABRA - db 19,ABRA - db 24,PIDGEOTTO - db 19,JIGGLYPUFF - db 24,JIGGLYPUFF - db 20,KADABRA - db 27,KADABRA - - db $00 - -Route7Mons: ; d297 (3:5297) - db $0F - db 20,PIDGEY - db 22,PIDGEY - db 20,RATTATA - db 15,ABRA - db 19,ABRA - db 24,PIDGEOTTO - db 26,ABRA - db 19,JIGGLYPUFF - db 24,JIGGLYPUFF - db 24,JIGGLYPUFF - - db $00 - -TowerMons1: ; d2ad (3:52ad) - db $00 - - db $00 - -TowerMons2: ; d2af (3:52af) - db $00 - - db $00 - -TowerMons3: ; d2b1 (3:52b1) - db $0A - db 20,GASTLY - db 21,GASTLY - db 22,GASTLY - db 23,GASTLY - db 24,GASTLY - db 19,GASTLY - db 18,GASTLY - db 25,GASTLY - db 20,HAUNTER - db 25,HAUNTER - - db $00 - -TowerMons4: ; d2c7 (3:52c7) - db $0A - db 20,GASTLY - db 21,GASTLY - db 22,GASTLY - db 23,GASTLY - db 24,GASTLY - db 19,GASTLY - db 18,GASTLY - db 25,GASTLY - db 20,HAUNTER - db 25,HAUNTER - - db $00 - -TowerMons5: ; d2dd (3:52dd) - db $0F - db 22,GASTLY - db 23,GASTLY - db 24,GASTLY - db 25,GASTLY - db 26,GASTLY - db 21,GASTLY - db 20,CUBONE - db 27,GASTLY - db 22,HAUNTER - db 27,HAUNTER - - db $00 - -TowerMons6: ; d2f3 (3:52f3) - db $0F - db 22,GASTLY - db 23,GASTLY - db 24,GASTLY - db 25,GASTLY - db 26,GASTLY - db 21,GASTLY - db 22,CUBONE - db 27,GASTLY - db 22,HAUNTER - db 27,HAUNTER - - db $00 - -TowerMons7: ; d309 (3:5309) - db $14 - db 24,GASTLY - db 25,GASTLY - db 26,GASTLY - db 27,GASTLY - db 28,GASTLY - db 23,GASTLY - db 24,CUBONE - db 29,GASTLY - db 24,HAUNTER - db 29,HAUNTER - - db $00 - -Route13Mons: ; d31f (3:531f) - db $0F - db 25,ODDISH - db 25,BELLSPROUT - db 28,PIDGEOTTO - db 28,PIDGEY - db 27,ODDISH - db 27,BELLSPROUT - db 29,GLOOM - db 29,WEEPINBELL - db 26,FARFETCH_D - db 31,FARFETCH_D - - db $03 - db 15,SLOWPOKE - db 15,SLOWPOKE - db 15,SLOWPOKE - db 15,SLOWPOKE - db 15,SLOWPOKE - db 15,SLOWPOKE - db 15,SLOWPOKE - db 15,SLOWPOKE - db 15,SLOWBRO - db 20,SLOWBRO - -Route14Mons: ; d335 (3:5335) - db $0F - db 26,ODDISH - db 26,BELLSPROUT - db 24,VENONAT - db 30,PIDGEOTTO - db 28,ODDISH - db 28,BELLSPROUT - db 30,GLOOM - db 30,WEEPINBELL - db 27,VENONAT - db 30,VENOMOTH - - db $00 - -Route15Mons: ; d34b (3:534b) - db $0F - db 26,ODDISH - db 26,BELLSPROUT - db 24,VENONAT - db 32,PIDGEOTTO - db 28,ODDISH - db 28,BELLSPROUT - db 30,GLOOM - db 30,WEEPINBELL - db 27,VENONAT - db 30,VENOMOTH - - db $00 - -Route16Mons: ; d361 (3:5361) - db $19 - db 22,SPEAROW - db 22,DODUO - db 23,RATTATA - db 24,DODUO - db 24,RATTATA - db 26,DODUO - db 23,SPEAROW - db 24,FEAROW - db 25,RATICATE - db 26,RATICATE - - db $00 - -Route17Mons: ; d377 (3:5377) - db $19 - db 26,DODUO - db 27,FEAROW - db 27,DODUO - db 28,DODUO - db 28,PONYTA - db 30,PONYTA - db 29,FEAROW - db 28,DODUO - db 32,PONYTA - db 29,DODRIO - - db $00 - -Route18Mons: ; d38d (3:538d) - db $19 - db 22,SPEAROW - db 22,DODUO - db 23,RATTATA - db 24,DODUO - db 24,RATTATA - db 26,DODUO - db 23,SPEAROW - db 24,FEAROW - db 25,RATICATE - db 26,RATICATE - - db $00 - -ZoneMonsCenter: ; d3a3 (3:53a3) - db $1E - db 14,NIDORAN_M - db 36,NIDORAN_F - db 24,EXEGGCUTE - db 20,RHYHORN - db 23,NIDORINO - db 27,PARASECT - db 27,PARAS - db 32,PARASECT - db 22,TANGELA - db 7,CHANSEY - - db $00 - -ZoneMons1: ; d3b9 (3:53b9) - db $1E - db 21,NIDORAN_M - db 29,NIDORAN_F - db 22,EXEGGCUTE - db 21,TAUROS - db 32,NIDORINA - db 19,CUBONE - db 26,EXEGGCUTE - db 24,MAROWAK - db 21,CHANSEY - db 15,SCYTHER - - db $00 - -ZoneMons2: ; d3cf (3:53cf) - db $1E - db 36,NIDORAN_M - db 14,NIDORAN_F - db 20,EXEGGCUTE - db 25,RHYHORN - db 23,NIDORINA - db 28,KANGASKHAN - db 16,CUBONE - db 33,KANGASKHAN - db 25,SCYTHER - db 15,PINSIR - - db $00 - -ZoneMons3: ; d3e5 (3:53e5) - db $1E - db 29,NIDORAN_M - db 21,NIDORAN_F - db 22,EXEGGCUTE - db 21,TAUROS - db 32,NIDORINO - db 19,CUBONE - db 26,EXEGGCUTE - db 24,MAROWAK - db 25,PINSIR - db 27,TANGELA - - db $00 - -WaterMons: ; d3fb (3:53fb) - db $00 - - db $05 - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 20,TENTACOOL - db 30,TENTACOOL - db 35,TENTACOOL - db 40,TENTACOOL - -WaterMons: ; d3fb (3:53fb) - db $00 - - db $05 - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 20,TENTACOOL - db 30,TENTACOOL - db 35,TENTACOOL - db 40,TENTACOOL - -IslandMons1: ; d411 (3:5411) - db $0F - db 18,ZUBAT - db 25,KRABBY - db 27,KRABBY - db 27,ZUBAT - db 36,ZUBAT - db 28,SLOWPOKE - db 30,SLOWPOKE - db 9,ZUBAT - db 27,GOLBAT - db 36,GOLBAT - - db $00 - -IslandMonsB1: ; d427 (3:5427) - db $0A - db 27,ZUBAT - db 26,KRABBY - db 36,ZUBAT - db 28,KRABBY - db 27,GOLBAT - db 29,SLOWPOKE - db 18,ZUBAT - db 28,KINGLER - db 22,SEEL - db 26,SEEL - - db $00 - -IslandMonsB2: ; d43d (3:543d) - db $0A - db 27,ZUBAT - db 27,KRABBY - db 36,ZUBAT - db 27,GOLBAT - db 28,KINGLER - db 24,SEEL - db 29,KRABBY - db 36,GOLBAT - db 31,SLOWPOKE - db 31,SLOWBRO - - db $00 - -IslandMonsB3: ; d453 (3:5453) - db $0A - db 27,GOLBAT - db 36,ZUBAT - db 29,KRABBY - db 27,ZUBAT - db 30,KINGLER - db 26,SEEL - db 31,KRABBY - db 30,SEEL - db 28,DEWGONG - db 32,DEWGONG - - db $05 - db 25,TENTACOOL - db 30,TENTACOOL - db 20,TENTACOOL - db 30,STARYU - db 35,TENTACOOL - db 30,STARYU - db 40,TENTACOOL - db 30,STARYU - db 30,STARYU - db 30,STARYU - -IslandMonsB4: ; d469 (3:5469) - db $0A - db 36,GOLBAT - db 36,ZUBAT - db 30,KRABBY - db 32,KINGLER - db 28,SEEL - db 32,SEEL - db 27,GOLBAT - db 45,ZUBAT - db 30,DEWGONG - db 34,DEWGONG - - db $05 - db 25,TENTACOOL - db 30,TENTACOOL - db 20,TENTACOOL - db 30,STARYU - db 35,TENTACOOL - db 30,STARYU - db 40,TENTACOOL - db 30,STARYU - db 30,STARYU - db 30,STARYU - -MansionMons1: ; d47f (3:547f) - db $0A - db 34,RATTATA - db 34,RATICATE - db 23,GRIMER - db 26,GROWLITHE - db 37,RATTATA - db 37,RATICATE - db 30,GROWLITHE - db 26,GRIMER - db 34,GROWLITHE - db 38,GROWLITHE - - db $00 - -MansionMons2: ; d495 (3:5495) - db $0A - db 37,RATTATA - db 37,RATICATE - db 26,GRIMER - db 29,GRIMER - db 40,RATTATA - db 40,RATICATE - db 32,GRIMER - db 35,GRIMER - db 35,MUK - db 38,MUK - - db $00 - -MansionMons3: ; d4ab (3:54ab) - db $0A - db 40,RATTATA - db 40,RATICATE - db 32,GRIMER - db 35,GRIMER - db 43,RATTATA - db 43,RATICATE - db 38,GRIMER - db 38,GRIMER - db 38,MUK - db 41,MUK - - db $00 - -MansionMonsB1: ; d4c1 (3:54c1) - db $0A - db 35,GRIMER - db 38,GRIMER - db 37,RATICATE - db 40,RATICATE - db 41,MUK - db 43,RATICATE - db 24,DITTO - db 46,RATICATE - db 18,DITTO - db 12,DITTO - - db $00 - -Route21Mons: ; d4d7 (3:54d7) - db $19 - db 15,PIDGEY - db 13,RATTATA - db 13,PIDGEY - db 11,PIDGEY - db 17,PIDGEY - db 15,RATTATA - db 15,RATICATE - db 17,PIDGEOTTO - db 19,PIDGEOTTO - db 15,PIDGEOTTO - - db $05 - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 20,TENTACOOL - db 30,TENTACOOL - db 35,TENTACOOL - db 40,TENTACOOL - -DungeonMons1: ; d501 (3:5501) - db $0A - db 50,GOLBAT - db 55,GOLBAT - db 45,GRAVELER - db 55,GLOOM - db 55,WEEPINBELL - db 52,SANDSLASH - db 54,VENOMOTH - db 54,PARASECT - db 55,DITTO - db 60,DITTO - - db $00 - -DungeonMons2: ; d517 (3:5517) - db $0F - db 52,GOLBAT - db 57,GOLBAT - db 50,GRAVELER - db 56,SANDSLASH - db 50,RHYHORN - db 60,DITTO - db 58,GLOOM - db 58,WEEPINBELL - db 60,RHYDON - db 58,RHYDON - - db $00 - -DungeonMonsB1: ; d52d (3:552d) - db $19 - db 54,GOLBAT - db 59,GOLBAT - db 55,GRAVELER - db 52,RHYHORN - db 62,RHYDON - db 60,DITTO - db 56,CHANSEY - db 65,DITTO - db 55,LICKITUNG - db 50,LICKITUNG - - db $00 - -PowerPlantMons: ; d543 (3:5543) - db $0A - db 30,MAGNEMITE - db 35,MAGNEMITE - db 33,MAGNETON - db 33,VOLTORB - db 37,VOLTORB - db 33,GRIMER - db 37,GRIMER - db 38,MAGNETON - db 33,MUK - db 37,MUK - - db $00 - -Route23Mons: ; d559 (3:5559) - db $0A - db 41,NIDORINO - db 41,NIDORINA - db 36,MANKEY - db 44,NIDORINO - db 44,NIDORINA - db 40,FEAROW - db 41,MANKEY - db 45,FEAROW - db 41,PRIMEAPE - db 46,PRIMEAPE - - db $00 - -PlateauMons2: ; d56f (3:556f) - db $0A - db 31,GEODUDE - db 36,GEODUDE - db 41,GEODUDE - db 44,ZUBAT - db 39,GOLBAT - db 44,GRAVELER - db 45,ONIX - db 47,ONIX - db 39,MACHOKE - db 42,MACHOKE - - db $00 - -PlateauMons3: ; d585 (3:5585) - db $0F - db 36,GEODUDE - db 44,GOLBAT - db 41,GEODUDE - db 49,ONIX - db 46,GEODUDE - db 41,GRAVELER - db 42,MACHOKE - db 45,MACHOKE - db 47,GRAVELER - db 47,GRAVELER - - db $00 - -PlateauMons1: ; d59b (3:559b) - db $0F - db 26,GEODUDE - db 31,GEODUDE - db 36,GEODUDE - db 39,ZUBAT - db 44,ZUBAT - db 41,GEODUDE - db 43,ONIX - db 45,ONIX - db 41,GRAVELER - db 47,GRAVELER - - db $00 - -CaveMons: ; d5b1 (3:55b1) - db $14 - db 18,DIGLETT - db 19,DIGLETT - db 17,DIGLETT - db 20,DIGLETT - db 16,DIGLETT - db 15,DIGLETT - db 21,DIGLETT - db 22,DIGLETT - db 29,DUGTRIO - db 31,DUGTRIO - - db $00 - -ENDC +INCLUDE "data/wild_mons.asm" UseItem_: ; d5c7 (3:55c7) ld a,1 @@ -24326,7 +19085,7 @@ ItemUseBall: ; d687 (3:5687) call LoadScreenTilesFromBuffer1 ;restore screenBuffer from Backup ld hl,ItemUseText00 call PrintText - callab Func_3d83a + callab IsGhostBattle ld b,$10 jp z,.next12 ld a,[W_BATTLETYPE] @@ -25933,7 +20692,7 @@ PlayedFluteHadEffectText: ; e215 (3:6215) .musicWaitLoop ; wait for music to finish playing ld a,[$c028] cp a,$b8 - jr z,.musicWaitLoop + jr z,.musicWaitLoop call Func_2307 ; start playing normal music again .done jp TextScriptEnd ; end text @@ -25982,9 +20741,7 @@ GoodRodCode: ; e259 (3:6259) xor 1 jr RodResponse -GoodRodMons: ; e27f (3:627f) - db 10,GOLDEEN - db 10,POLIWAG +INCLUDE "data/good_rod.asm" SuperRodCode: ; e283 (3:6283) call FishingInit @@ -26364,7 +21121,7 @@ ItemUseTMHM: ; e479 (3:6479) call PrintText jr .chooseMon .checkIfAlreadyLearnedMove - callab Func_2fe18 ; check if the pokemon already knows the move + callab CheckIfMoveIsKnown ; check if the pokemon already knows the move jr c,.chooseMon ld a,$1b call Predef ; teach move @@ -26782,18 +21539,7 @@ IsKeyItem_: ; e764 (3:6764) ld [$d124],a ret -KeyItemBitfield: ; e799 (3:6799) - db %11110000 - db %00000001 - db %11110000 - db %01001111 - db %00000000 - db %10011111 - db %00000000 - db %11000000 - db %11110000 - db %00111011 - db %00000000 +INCLUDE "data/key_items.asm" Func_e7a4: ; e7a4 (3:67a4) ld de, W_NUMINBOX ; $da80 @@ -27039,107 +21785,7 @@ ReadSuperRodData: ; e8ea (3:68ea) ld e, $1 ; $1 if there's a bite ret -; super rod data -; format: map, pointer to fishing group -SuperRodData: ; e919 (3:6919) - dbw PALLET_TOWN, FishingGroup1 - dbw VIRIDIAN_CITY, FishingGroup1 - dbw CERULEAN_CITY, FishingGroup3 - dbw VERMILION_CITY, FishingGroup4 - dbw CELADON_CITY, FishingGroup5 - dbw FUCHSIA_CITY, FishingGroup10 - dbw CINNABAR_ISLAND, FishingGroup8 - dbw ROUTE_4, FishingGroup3 - dbw ROUTE_6, FishingGroup4 - dbw ROUTE_10, FishingGroup5 - dbw ROUTE_11, FishingGroup4 - dbw ROUTE_12, FishingGroup7 - dbw ROUTE_13, FishingGroup7 - dbw ROUTE_17, FishingGroup7 - dbw ROUTE_18, FishingGroup7 - dbw ROUTE_19, FishingGroup8 - dbw ROUTE_20, FishingGroup8 - dbw ROUTE_21, FishingGroup8 - dbw ROUTE_22, FishingGroup2 - dbw ROUTE_23, FishingGroup9 - dbw ROUTE_24, FishingGroup3 - dbw ROUTE_25, FishingGroup3 - dbw CERULEAN_GYM, FishingGroup3 - dbw VERMILION_DOCK, FishingGroup4 -;XXX syntax errors on the rest? - dbw $A1, FishingGroup8 ; SEAFOAM_ISLANDS_4 - dbw $A2, FishingGroup8 ; SEAFOAM_ISLANDS_5 - dbw SAFARI_ZONE_EAST, FishingGroup6 - dbw $DA, FishingGroup6 ; SAFARI_ZONE_NORTH - dbw SAFARI_ZONE_WEST, FishingGroup6 - dbw $DC, FishingGroup6 ; SAFARI_ZONE_CENTER - dbw $E2, FishingGroup9 ; UNKNOWN_DUNGEON_2 - dbw $E3, FishingGroup9 ; UNKNOWN_DUNGEON_3 - dbw $E4, FishingGroup9 ; UNKNOWN_DUNGEON_1 - db $FF - -; fishing groups -; number of monsters, followed by level/monster pairs -FishingGroup1: ; e97d (3:697d) - db 2 - db 15,TENTACOOL - db 15,POLIWAG - -FishingGroup2: ; e982 (3:6982) - db 2 - db 15,GOLDEEN - db 15,POLIWAG - -FishingGroup3: ; e987 (3:6987) - db 3 - db 15,PSYDUCK - db 15,GOLDEEN - db 15,KRABBY - -FishingGroup4: ; e98e (3:698e) - db 2 - db 15,KRABBY - db 15,SHELLDER - -FishingGroup5: ; e993 (3:6993) - db 2 - db 23,POLIWHIRL - db 15,SLOWPOKE - -FishingGroup6: ; e998 (3:6998) - db 4 - db 15,DRATINI - db 15,KRABBY - db 15,PSYDUCK - db 15,SLOWPOKE - -FishingGroup7: ; e9a1 (3:69a1) - db 4 - db 5,TENTACOOL - db 15,KRABBY - db 15,GOLDEEN - db 15,MAGIKARP - -FishingGroup8: ; e9aa (3:69aa) - db 4 - db 15,STARYU - db 15,HORSEA - db 15,SHELLDER - db 15,GOLDEEN - -FishingGroup9: ; e9b3 (3:69b3) - db 4 - db 23,SLOWBRO - db 23,SEAKING - db 23,KINGLER - db 23,SEADRA - -FishingGroup10: ; e9bc (3:69bc) - db 4 - db 23,SEAKING - db 15,KRABBY - db 15,GOLDEEN - db 15,MAGIKARP +INCLUDE "data/super_rod.asm" ; reloads map view and processes sprite data ; for items that cause the overworld to be displayed @@ -27459,11 +22105,11 @@ Func_ef54: ; ef54 (3:6f54) cp $52 ; grass jr z, asm_ef82 .asm_ef77 - ld hl, UnnamedText_ef7d ; $6f7d + ld hl, NothingToCutText jp PrintText -UnnamedText_ef7d: ; ef7d (3:6f7d) - TX_FAR _UnnamedText_ef7d +NothingToCutText: ; ef7d (3:6f7d) + TX_FAR _NothingToCutText db "@" asm_ef82: ; ef82 (3:6f82) @@ -27487,7 +22133,7 @@ asm_ef82: ; ef82 (3:6f82) call Delay3 xor a ld [$ffb0], a - ld hl, UsedCutText ; $6ff2 + ld hl, UsedCutText call PrintText call LoadScreenTilesFromBuffer2 ld hl, $d730 @@ -27688,15 +22334,15 @@ CutTreeBlockSwaps: ; f100 (3:7100) ; first byte = tileset block containing the cut tree ; second byte = corresponding tileset block after the cut animation happens db $32, $6D - db $33, $6C - db $34, $6F - db $35, $4C - db $60, $6E - db $0B, $0A - db $3C, $35 + db $33, $6C + db $34, $6F + db $35, $4C + db $60, $6E + db $0B, $0A + db $3C, $35 db $3F, $35 - db $3D, $36 - db $FF ; list terminator + db $3D, $36 + db $FF ; list terminator Func_f113: ; f113 (3:7113) ld a, [W_CURMAP] ; $d35e @@ -30187,7 +24833,7 @@ RedrawPartyMenu_: ; 12ce3 (4:6ce3) cp a,$04 jp z,.printMessage call ErasePartyMenuCursors - callba Func_71fb6 ; loads some data to $cf2e + callba SendBlkPacket_PartyMenu ; loads some data to $cf2e FuncCoord 3,0 ld hl,Coord ld de,W_PARTYMON1 @@ -31430,62 +26076,7 @@ TMToMove: ; 13763 (4:7763) ld [$d11e], a ret -TechnicalMachines: ; 13773 (4:7773) - db MEGA_PUNCH - db RAZOR_WIND - db SWORDS_DANCE - db WHIRLWIND - db MEGA_KICK - db TOXIC - db HORN_DRILL - db BODY_SLAM - db TAKE_DOWN - db DOUBLE_EDGE - db BUBBLEBEAM - db WATER_GUN - db ICE_BEAM - db BLIZZARD - db HYPER_BEAM - db PAY_DAY - db SUBMISSION - db COUNTER - db SEISMIC_TOSS - db RAGE - db MEGA_DRAIN - db SOLARBEAM - db DRAGON_RAGE - db THUNDERBOLT - db THUNDER - db EARTHQUAKE - db FISSURE - db DIG - db PSYCHIC_M - db TELEPORT - db MIMIC - db DOUBLE_TEAM - db REFLECT - db BIDE - db METRONOME - db SELFDESTRUCT - db EGG_BOMB - db FIRE_BLAST - db SWIFT - db SKULL_BASH - db SOFTBOILED - db DREAM_EATER - db SKY_ATTACK - db REST - db THUNDER_WAVE - db PSYWAVE - db EXPLOSION - db ROCK_SLIDE - db TRI_ATTACK - db SUBSTITUTE - db CUT - db FLY - db SURF - db STRENGTH - db FLASH +INCLUDE "data/tms.asm" Func_137aa: ; 137aa (4:77aa) ld a, [W_ISLINKBATTLE] ; $d12b @@ -31501,11 +26092,11 @@ Func_137aa: ; 137aa (4:77aa) callab Func_372d6 ld a, [$cf0b] cp $1 - ld de, YouWinText ; $7853 + ld de, YouWinText jr c, .asm_137de - ld de, YouLoseText ; $785b + ld de, YouLoseText jr z, .asm_137de - ld de, DrawText ; $7864 + ld de, DrawText .asm_137de FuncCoord 6, 8 ; $c446 ld hl, Coord @@ -31527,7 +26118,7 @@ Func_137aa: ; 137aa (4:77aa) ld c, $3 ld a, $b call Predef ; indirect jump to Func_f81d (f81d (3:781d)) - ld hl, UnnamedText_1386b ; $786b + ld hl, PickUpPayDayMoneyText call PrintText .asm_1380a xor a @@ -31574,8 +26165,8 @@ YouLoseText: ; 1385b (4:785b) DrawText: ; 13864 (4:7864) db " DRAW@" -UnnamedText_1386b: ; 1386b (4:786b) - TX_FAR _UnnamedText_1386b +PickUpPayDayMoneyText: ; 1386b (4:786b) + TX_FAR _PickUpPayDayMoneyText db "@" Func_13870: ; 13870 (4:7870) @@ -31674,8 +26265,8 @@ Func_13870: ; 13870 (4:7870) WildMonEncounterSlotChances: ; 13918 (4:7918) ; There are 10 slots for wild pokemon, and this is the table that defines how common each of -; those 10 slots is. A random number is generated and then the first byte of each pair in this -; table is compared against that random number. If the random number is less than or equal +; those 10 slots is. A random number is generated and then the first byte of each pair in this +; table is compared against that random number. If the random number is less than or equal ; to the first byte, then that slot is chosen. The second byte is double the slot number. db $32, $00 ; 51/256 = 19.9% chance of slot 0 db $65, $02 ; 51/256 = 19.9% chance of slot 1 @@ -31999,7 +26590,7 @@ LoadPokedexTilePatterns: ; 17840 (5:7840) call LoadHpBarAndStatusTilePatterns ld de,PokedexTileGraphics ; $6488 ld hl,$9600 - ld bc,(BANK(PokedexTileGraphics) << 8) + $12 + ld bc,(BANK(PokedexTileGraphics) << 8) + $12 call CopyVideoData ld de,PokeballTileGraphics ; $697e ld hl,$9720 @@ -32445,559 +27036,9 @@ GetSplitMapSpriteSetID: ; 17a1a (5:7a1a) ld a,$01 ret -MapSpriteSets: ; 17a64 (5:7a64) - db $01 ; PALLET_TOWN - db $01 ; VIRIDIAN_CITY - db $02 ; PEWTER_CITY - db $02 ; CERULEAN_CITY - db $03 ; LAVENDER_TOWN - db $04 ; VERMILION_CITY - db $05 ; CELADON_CITY - db $0a ; FUCHSIA_CITY - db $01 ; CINNABAR_ISLAND - db $06 ; INDIGO_PLATEAU - db $07 ; SAFFRON_CITY - db $01 ; unused map ID - db $01 ; ROUTE_1 - db $f1 ; ROUTE_2 - db $02 ; ROUTE_3 - db $02 ; ROUTE_4 - db $f9 ; ROUTE_5 - db $fa ; ROUTE_6 - db $fb ; ROUTE_7 - db $fc ; ROUTE_8 - db $02 ; ROUTE_9 - db $f2 ; ROUTE_10 - db $f3 ; ROUTE_11 - db $f4 ; ROUTE_12 - db $08 ; ROUTE_13 - db $08 ; ROUTE_14 - db $f5 ; ROUTE_15 - db $f6 ; ROUTE_16 - db $09 ; ROUTE_17 - db $f7 ; ROUTE_18 - db $0a ; ROUTE_19 - db $f8 ; ROUTE_20 - db $01 ; ROUTE_21 - db $01 ; ROUTE_22 - db $06 ; ROUTE_23 - db $02 ; ROUTE_24 - db $02 ; ROUTE_25 - -; Format: -; 00: determines whether the map is split East/West or North/South -; $01 = East/West divide -; $02 = North/South divide -; 01: coordinate of dividing line -; 02: sprite set ID if in the West or North side -; 03: sprite set ID if in the East or South side -SplitMapSpriteSets: ; 17a89 (5:7a89) - db $02,$25,$02,$01 ; $f1 - db $02,$32,$02,$03 ; $f2 - db $01,$39,$04,$08 ; $f3 - db $02,$15,$03,$08 ; $f4 - db $01,$08,$0A,$08 ; $f5 - db $01,$18,$09,$05 ; $f6 - db $01,$22,$09,$0A ; $f7 - db $01,$35,$01,$0A ; $f8 - db $02,$21,$02,$07 ; $f9 - db $02,$02,$07,$04 ; $fa - db $01,$11,$05,$07 ; $fb - db $01,$03,$07,$03 ; $fc - -SpriteSets: ; 17ab9 (5:7ab9) -; sprite set $01 - db SPRITE_BLUE - db SPRITE_BUG_CATCHER - db SPRITE_GIRL - db SPRITE_FISHER2 - db SPRITE_BLACK_HAIR_BOY_1 - db SPRITE_GAMBLER - db SPRITE_SEEL - db SPRITE_OAK - db SPRITE_SWIMMER - db SPRITE_BALL - db SPRITE_LYING_OLD_MAN - -; sprite set $02 - db SPRITE_BUG_CATCHER - db SPRITE_ROCKET - db SPRITE_BLACK_HAIR_BOY_2 - db SPRITE_HIKER - db SPRITE_SLOWBRO - db SPRITE_BLUE - db SPRITE_GUARD - db SPRITE_LASS - db SPRITE_BLACK_HAIR_BOY_1 - db SPRITE_BALL - db SPRITE_LYING_OLD_MAN_UNUSED_2 - -; sprite set $03 - db SPRITE_LITTLE_GIRL - db SPRITE_GIRL - db SPRITE_BLACK_HAIR_BOY_2 - db SPRITE_HIKER - db SPRITE_GAMBLER - db SPRITE_SLOWBRO - db SPRITE_LASS - db SPRITE_BLACK_HAIR_BOY_1 - db SPRITE_GUARD - db SPRITE_BALL - db SPRITE_LYING_OLD_MAN_UNUSED_2 - -; sprite set $04 - db SPRITE_FOULARD_WOMAN - db SPRITE_BLACK_HAIR_BOY_2 - db SPRITE_BUG_CATCHER - db SPRITE_GAMBLER - db SPRITE_SLOWBRO - db SPRITE_GUARD - db SPRITE_SAILOR - db SPRITE_LASS - db SPRITE_BLACK_HAIR_BOY_1 - db SPRITE_BALL - db SPRITE_LYING_OLD_MAN_UNUSED_2 - -; sprite set $05 - db SPRITE_LITTLE_GIRL - db SPRITE_YOUNG_BOY - db SPRITE_GIRL - db SPRITE_FISHER2 - db SPRITE_FAT_BALD_GUY - db SPRITE_OLD_PERSON - db SPRITE_SLOWBRO - db SPRITE_GUARD - db SPRITE_ROCKET - db SPRITE_BALL - db SPRITE_SNORLAX - -; sprite set $06 - db SPRITE_BUG_CATCHER - db SPRITE_GYM_HELPER - db SPRITE_SLOWBRO - db SPRITE_BLUE - db SPRITE_LASS - db SPRITE_BLACK_HAIR_BOY_1 - db SPRITE_SWIMMER - db SPRITE_GUARD - db SPRITE_GAMBLER - db SPRITE_BALL - db SPRITE_LYING_OLD_MAN_UNUSED_2 - -; sprite set $07 - db SPRITE_ROCKET - db SPRITE_OAK_AIDE - db SPRITE_LAPRAS_GIVER - db SPRITE_ERIKA - db SPRITE_GENTLEMAN - db SPRITE_BIRD - db SPRITE_ROCKER - db SPRITE_BLACK_HAIR_BOY_1 - db SPRITE_SLOWBRO - db SPRITE_BALL - db SPRITE_LYING_OLD_MAN_UNUSED_2 - -; sprite set $08 - db SPRITE_BIKER - db SPRITE_BLACK_HAIR_BOY_2 - db SPRITE_FAT_BALD_GUY - db SPRITE_LASS - db SPRITE_BLACK_HAIR_BOY_1 - db SPRITE_FOULARD_WOMAN - db SPRITE_FISHER2 - db SPRITE_ROCKER - db SPRITE_SLOWBRO - db SPRITE_BALL - db SPRITE_SNORLAX - -; sprite set $09 - db SPRITE_BIKER - db SPRITE_BLACK_HAIR_BOY_1 - db SPRITE_LAPRAS_GIVER - db SPRITE_FISHER2 - db SPRITE_ROCKER - db SPRITE_HIKER - db SPRITE_GAMBLER - db SPRITE_FAT_BALD_GUY - db SPRITE_BLACK_HAIR_BOY_2 - db SPRITE_BALL - db SPRITE_SNORLAX - -; sprite set $0a - db SPRITE_BIRD - db SPRITE_BLACK_HAIR_BOY_1 - db SPRITE_CLEFAIRY - db SPRITE_FISHER2 - db SPRITE_GAMBLER - db SPRITE_SLOWBRO - db SPRITE_SEEL - db SPRITE_SWIMMER - db SPRITE_BUG_CATCHER - db SPRITE_BALL - db SPRITE_OMANYTE - -SpriteSheetPointerTable: ; 17b27 (5:7b27) - ; SPRITE_RED - dw RedSprite - db $c0 ; byte count - db BANK(RedSprite) - - ; SPRITE_BLUE - dw BlueSprite - db $c0 ; byte count - db BANK(BlueSprite) - - ; SPRITE_OAK - dw OakSprite - db $c0 ; byte count - db BANK(OakSprite) - - ; SPRITE_BUG_CATCHER - dw BugCatcherSprite - db $c0 ; byte count - db BANK(BugCatcherSprite) - - ; SPRITE_SLOWBRO - dw SlowbroSprite - db $c0 ; byte count - db BANK(SlowbroSprite) - - ; SPRITE_LASS - dw LassSprite - db $c0 ; byte count - db BANK(LassSprite) - - ; SPRITE_BLACK_HAIR_BOY_1 - dw BlackHairBoy1Sprite - db $c0 ; byte count - db BANK(BlackHairBoy1Sprite) - - ; SPRITE_LITTLE_GIRL - dw LittleGirlSprite - db $c0 ; byte count - db BANK(LittleGirlSprite) - - ; SPRITE_BIRD - dw BirdSprite - db $c0 ; byte count - db BANK(BirdSprite) - - ; SPRITE_FAT_BALD_GUY - dw FatBaldGuySprite - db $c0 ; byte count - db BANK(FatBaldGuySprite) - - ; SPRITE_GAMBLER - dw GamblerSprite - db $c0 ; byte count - db BANK(GamblerSprite) - - ; SPRITE_BLACK_HAIR_BOY_2 - dw BlackHairBoy2Sprite - db $c0 ; byte count - db BANK(BlackHairBoy2Sprite) - - ; SPRITE_GIRL - dw GirlSprite - db $c0 ; byte count - db BANK(GirlSprite) - - ; SPRITE_HIKER - dw HikerSprite - db $c0 ; byte count - db BANK(HikerSprite) - - ; SPRITE_FOULARD_WOMAN - dw FoulardWomanSprite - db $c0 ; byte count - db BANK(FoulardWomanSprite) - - ; SPRITE_GENTLEMAN - dw GentlemanSprite - db $c0 ; byte count - db BANK(GentlemanSprite) - - ; SPRITE_DAISY - dw DaisySprite - db $c0 ; byte count - db BANK(DaisySprite) - - ; SPRITE_BIKER - dw BikerSprite - db $c0 ; byte count - db BANK(BikerSprite) - - ; SPRITE_SAILOR - dw SailorSprite - db $c0 ; byte count - db BANK(SailorSprite) - - ; SPRITE_COOK - dw CookSprite - db $c0 ; byte count - db BANK(CookSprite) - - ; SPRITE_BIKE_SHOP_GUY - dw BikeShopGuySprite - db $c0 ; byte count - db BANK(BikeShopGuySprite) - - ; SPRITE_MR_FUJI - dw MrFujiSprite - db $c0 ; byte count - db BANK(MrFujiSprite) - - ; SPRITE_GIOVANNI - dw GiovanniSprite - db $c0 ; byte count - db BANK(GiovanniSprite) - - ; SPRITE_ROCKET - dw RocketSprite - db $c0 ; byte count - db BANK(RocketSprite) - - ; SPRITE_MEDIUM - dw MediumSprite - db $c0 ; byte count - db BANK(MediumSprite) - - ; SPRITE_WAITER - dw WaiterSprite - db $c0 ; byte count - db BANK(WaiterSprite) - - ; SPRITE_ERIKA - dw ErikaSprite - db $c0 ; byte count - db BANK(ErikaSprite) - - ; SPRITE_MOM_GEISHA - dw MomGeishaSprite - db $c0 ; byte count - db BANK(MomGeishaSprite) - - ; SPRITE_BRUNETTE_GIRL - dw BrunetteGirlSprite - db $c0 ; byte count - db BANK(BrunetteGirlSprite) - - ; SPRITE_LANCE - dw LanceSprite - db $c0 ; byte count - db BANK(LanceSprite) - - ; SPRITE_OAK_SCIENTIST_AIDE - dw OakAideSprite - db $c0 ; byte count - db BANK(OakAideSprite) - - ; SPRITE_OAK_AIDE - dw OakAideSprite - db $c0 ; byte count - db BANK(OakAideSprite) - - ; SPRITE_ROCKER - dw RockerSprite - db $c0 ; byte count - db BANK(RockerSprite) - - ; SPRITE_SWIMMER - dw SwimmerSprite - db $c0 ; byte count - db BANK(SwimmerSprite) - - ; SPRITE_WHITE_PLAYER - dw WhitePlayerSprite - db $c0 ; byte count - db BANK(WhitePlayerSprite) - - ; SPRITE_GYM_HELPER - dw GymHelperSprite - db $c0 ; byte count - db BANK(GymHelperSprite) - - ; SPRITE_OLD_PERSON - dw OldPersonSprite - db $c0 ; byte count - db BANK(OldPersonSprite) - - ; SPRITE_MART_GUY - dw MartGuySprite - db $c0 ; byte count - db BANK(MartGuySprite) - - ; SPRITE_FISHER - dw FisherSprite - db $c0 ; byte count - db BANK(FisherSprite) - - ; SPRITE_OLD_MEDIUM_WOMAN - dw OldMediumWomanSprite - db $c0 ; byte count - db BANK(OldMediumWomanSprite) - - ; SPRITE_NURSE - dw NurseSprite - db $c0 ; byte count - db BANK(NurseSprite) - - ; SPRITE_CABLE_CLUB_WOMAN - dw CableClubWomanSprite - db $c0 ; byte count - db BANK(CableClubWomanSprite) - - ; SPRITE_MR_MASTERBALL - dw MrMasterballSprite - db $c0 ; byte count - db BANK(MrMasterballSprite) - - ; SPRITE_LAPRAS_GIVER - dw LaprasGiverSprite - db $c0 ; byte count - db BANK(LaprasGiverSprite) - - ; SPRITE_WARDEN - dw WardenSprite - db $c0 ; byte count - db BANK(WardenSprite) - - ; SPRITE_SS_CAPTAIN - dw SsCaptainSprite - db $c0 ; byte count - db BANK(SsCaptainSprite) - - ; SPRITE_FISHER2 - dw Fisher2Sprite - db $c0 ; byte count - db BANK(Fisher2Sprite) - - ; SPRITE_BLACKBELT - dw BlackbeltSprite - db $c0 ; byte count - db BANK(BlackbeltSprite) - - ; SPRITE_GUARD - dw GuardSprite - db $c0 ; byte count - db BANK(GuardSprite) - - ; $32 - dw GuardSprite - db $c0 ; byte count - db BANK(GuardSprite) - - ; SPRITE_MOM - dw MomSprite - db $c0 ; byte count - db BANK(MomSprite) - - ; SPRITE_BALDING_GUY - dw BaldingGuySprite - db $c0 ; byte count - db BANK(BaldingGuySprite) - - ; SPRITE_YOUNG_BOY - dw YoungBoySprite - db $c0 ; byte count - db BANK(YoungBoySprite) - - ; SPRITE_GAMEBOY_KID - dw GameboyKidSprite - db $c0 ; byte count - db BANK(GameboyKidSprite) - - ; SPRITE_GAMEBOY_KID_COPY - dw GameboyKidSprite - db $c0 ; byte count - db BANK(GameboyKidSprite) - - ; SPRITE_CLEFAIRY - dw ClefairySprite - db $c0 ; byte count - db BANK(ClefairySprite) - - ; SPRITE_AGATHA - dw AgathaSprite - db $c0 ; byte count - db BANK(AgathaSprite) - - ; SPRITE_BRUNO - dw BrunoSprite - db $c0 ; byte count - db BANK(BrunoSprite) - - ; SPRITE_LORELEI - dw LoreleiSprite - db $c0 ; byte count - db BANK(LoreleiSprite) +INCLUDE "data/sprite_sets.asm" - ; SPRITE_SEEL - dw SeelSprite - db $c0 ; byte count - db BANK(SeelSprite) - - ; SPRITE_BALL - dw BallSprite - db $40 ; byte count - db BANK(BallSprite) - - ; SPRITE_OMANYTE - dw OmanyteSprite - db $40 ; byte count - db BANK(OmanyteSprite) - - ; SPRITE_BOULDER - dw BoulderSprite - db $40 ; byte count - db BANK(BoulderSprite) - - ; SPRITE_PAPER_SHEET - dw PaperSheetSprite - db $40 ; byte count - db BANK(PaperSheetSprite) - - ; SPRITE_BOOK_MAP_DEX - dw BookMapDexSprite - db $40 ; byte count - db BANK(BookMapDexSprite) - - ; SPRITE_CLIPBOARD - dw ClipboardSprite - db $40 ; byte count - db BANK(ClipboardSprite) - - ; SPRITE_SNORLAX - dw SnorlaxSprite - db $40 ; byte count - db BANK(SnorlaxSprite) - - ; SPRITE_OLD_AMBER_COPY - dw OldAmberSprite - db $40 ; byte count - db BANK(OldAmberSprite) - - ; SPRITE_OLD_AMBER - dw OldAmberSprite - db $40 ; byte count - db BANK(OldAmberSprite) - - ; SPRITE_LYING_OLD_MAN_UNUSED_1 - dw LyingOldManSprite - db $40 ; byte count - db BANK(LyingOldManSprite) - - ; SPRITE_LYING_OLD_MAN_UNUSED_2 - dw LyingOldManSprite - db $40 ; byte count - db BANK(LyingOldManSprite) - - ; SPRITE_LYING_OLD_MAN - dw LyingOldManSprite - db $40 ; byte count - db BANK(LyingOldManSprite) - -Func_17c47: ; 17c47 (5:7c47) +PrintEmotionBubble: ; 17c47 (5:7c47) ld a, [$cd50] ld c, a ld b, $0 @@ -33164,36 +27205,36 @@ SubstituteEffectHandler: ; 17dad (5:7dad) ld b, BANK(AnimationSubstitute) .animationEnabled call Bankswitch ;jump to routine depending on animation setting - ld hl, UnnamedText_17e1d ;"it created a substitute" + ld hl, SubstituteText call PrintText ld hl, Func_3cd5a ld b, BANK(Func_3cd5a) jp Bankswitch .alreadyHasSubstitute - ld hl, UnnamedText_17e22 ;"x has a substitute" + ld hl, HasSubstituteText jr .printText .notEnoughHP - ld hl, UnnamedText_17e27 ;"too weak to make substitute" + ld hl, TooWeakSubstituteText .printText jp PrintText -UnnamedText_17e1d: ; 17e1d (5:7e1d) - TX_FAR _UnnamedText_17e1d +SubstituteText: ; 17e1d (5:7e1d) + TX_FAR _SubstituteText db "@" -UnnamedText_17e22: ; 17e22 (5:7e22) - TX_FAR _UnnamedText_17e22 +HasSubstituteText: ; 17e22 (5:7e22) + TX_FAR _HasSubstituteText db "@" -UnnamedText_17e27: ; 17e27 (5:7e27) - TX_FAR _UnnamedText_17e27 +TooWeakSubstituteText: ; 17e27 (5:7e27) + TX_FAR _TooWeakSubstituteText db "@" ActivatePC: ; 17e2c (5:7e2c) call SaveScreenTilesToBuffer2 ;XXX: copy background from wTileMap to wTileMapBackup2 ld a, (SFX_02_45 - SFX_Headers_02) / 3 call PlaySound ;XXX: play sound or stop music - ld hl, UnnamedText_17f23 ;player turned on PC + ld hl, TurnedOnPC1Text call PrintText call WaitForSoundToFinish ;XXX: wait for sound to be done ld hl, wFlags_0xcd60 @@ -33245,7 +27286,7 @@ PCMainMenu: ; 17e48 (5:7e48) ld a, (SFX_02_47 - SFX_Headers_02) / 3 call PlaySound ;XXX: play sound or stop music call WaitForSoundToFinish ;XXX: wait for sound to be done - ld hl, UnnamedText_17f32 ;accessed players pc + ld hl, AccessedMyPCText call PrintText callba Func_78e6 jr ReloadMainMenu @@ -33268,10 +27309,10 @@ BillsPC: ; 17ee4 (5:7ee4) ld a, [$D7F1] ;has to do with having met Bill bit 0, a jr nz, .billsPC ;if you've met bill, use that bill's instead of someone's - ld hl, UnnamedText_17f2d ;accessed someone's pc + ld hl, AccessedSomeonesPCText jr .printText .billsPC - ld hl, UnnamedText_17f28 ;accessed bill's pc + ld hl, AccessedBillsPCText .printText call PrintText callba BillsPC_ @@ -33290,20 +27331,20 @@ LogOff: ; 17f13 (5:7f13) res 5, [hl] ret -UnnamedText_17f23: ; 17f23 (5:7f23) - TX_FAR _UnnamedText_17f23 +TurnedOnPC1Text: ; 17f23 (5:7f23) + TX_FAR _TurnedOnPC1Text db "@" -UnnamedText_17f28: ; 17f28 (5:7f28) - TX_FAR _UnnamedText_17f28 +AccessedBillsPCText: ; 17f28 (5:7f28) + TX_FAR _AccessedBillsPCText db "@" -UnnamedText_17f2d: ; 17f2d (5:7f2d) - TX_FAR _UnnamedText_17f2d +AccessedSomeonesPCText: ; 17f2d (5:7f2d) + TX_FAR _AccessedSomeonesPCText db "@" -UnnamedText_17f32: ; 17f32 (5:7f32) - TX_FAR _UnnamedText_17f32 +AccessedMyPCText: ; 17f32 (5:7f32) + TX_FAR _AccessedMyPCText db "@" ; removes one of the specified item ID [$FFdb] from bag (if existent) @@ -33334,385 +27375,51 @@ RemoveItemByID: ; 17f37 (5:7f37) SECTION "bank6",ROMX,BANK[$6] -CeladonCity_h: ; 18000 (6:4000) - db OVERWORLD ; tileset - db CELADON_CITY_HEIGHT, CELADON_CITY_WIDTH ; dimensions (y, x) - dw CeladonCityBlocks, CeladonCityTextPointers, CeladonCityScript ; blocks, texts, scripts - db WEST | EAST ; connections - WEST_MAP_CONNECTION ROUTE_16, ROUTE_16_WIDTH, 4, 0, ROUTE_16_HEIGHT, Route16Blocks, CELADON_CITY_WIDTH - EAST_MAP_CONNECTION ROUTE_7, ROUTE_7_WIDTH, 4, 0, ROUTE_7_HEIGHT, Route7Blocks, CELADON_CITY_WIDTH - dw CeladonCityObject ; objects - -CeladonCityObject: ; 0x18022 (size=189) - db $f ; border tile - - db $d ; warps - db $d, $8, $0, CELADON_MART_1 - db $d, $a, $2, CELADON_MART_1 - db $9, $18, $0, CELADON_MANSION_1 - db $3, $18, $2, CELADON_MANSION_1 - db $3, $19, $2, CELADON_MANSION_1 - db $9, $29, $0, CELADON_POKECENTER - db $1b, $c, $0, CELADON_GYM - db $13, $1c, $0, GAME_CORNER - db $13, $27, $0, CELADON_MART_5 ; beta warp! no longer used - db $13, $21, $0, CELADON_PRIZE_ROOM - db $1b, $1f, $0, CELADON_DINER - db $1b, $23, $0, CELADON_HOUSE - db $1b, $2b, $0, CELADON_HOTEL - - db $9 ; signs - db $f, $1b, $a ; CeladonCityText10 - db $f, $13, $b ; CeladonCityText11 - db $9, $2a, $c ; PokeCenterSignText - db $1d, $d, $d ; CeladonCityText13 - db $9, $15, $e ; CeladonCityText14 - db $d, $c, $f ; CeladonCityText15 - db $15, $27, $10 ; CeladonCityText16 - db $15, $21, $11 ; CeladonCityText17 - db $15, $1b, $12 ; CeladonCityText18 - - db $9 ; people - db SPRITE_LITTLE_GIRL, $11 + 4, $8 + 4, $fe, $0, $1 ; person - db SPRITE_OLD_PERSON, $1c + 4, $b + 4, $ff, $d1, $2 ; person - db SPRITE_GIRL, $13 + 4, $e + 4, $fe, $1, $3 ; person - db SPRITE_OLD_PERSON, $16 + 4, $19 + 4, $ff, $d0, $4 ; person - db SPRITE_OLD_PERSON, $10 + 4, $16 + 4, $ff, $d0, $5 ; person - db SPRITE_FISHER2, $c + 4, $20 + 4, $ff, $d2, $6 ; person - db SPRITE_SLOWBRO, $c + 4, $1e + 4, $ff, $d3, $7 ; person - db SPRITE_ROCKET, $1d + 4, $20 + 4, $fe, $2, $8 ; person - db SPRITE_ROCKET, $e + 4, $2a + 4, $fe, $2, $9 ; person - - ; warp-to - EVENT_DISP CELADON_CITY_WIDTH, $d, $8 ; CELADON_MART_1 - EVENT_DISP CELADON_CITY_WIDTH, $d, $a ; CELADON_MART_1 - EVENT_DISP CELADON_CITY_WIDTH, $9, $18 ; CELADON_MANSION_1 - EVENT_DISP CELADON_CITY_WIDTH, $3, $18 ; CELADON_MANSION_1 - EVENT_DISP CELADON_CITY_WIDTH, $3, $19 ; CELADON_MANSION_1 - EVENT_DISP CELADON_CITY_WIDTH, $9, $29 ; CELADON_POKECENTER - EVENT_DISP CELADON_CITY_WIDTH, $1b, $c ; CELADON_GYM - EVENT_DISP CELADON_CITY_WIDTH, $13, $1c ; GAME_CORNER - EVENT_DISP CELADON_CITY_WIDTH, $13, $27 ; CELADON_MART_5 - EVENT_DISP CELADON_CITY_WIDTH, $13, $21 ; CELADON_PRIZE_ROOM - EVENT_DISP CELADON_CITY_WIDTH, $1b, $1f ; CELADON_DINER - EVENT_DISP CELADON_CITY_WIDTH, $1b, $23 ; CELADON_HOUSE - EVENT_DISP CELADON_CITY_WIDTH, $1b, $2b ; CELADON_HOTEL +INCLUDE "data/mapHeaders/celadoncity.asm" + +INCLUDE "data/mapObjects/celadoncity.asm" CeladonCityBlocks: ; 180df (6:40df) INCBIN "maps/celadoncity.blk" -PalletTown_h: ; 182a1 (6:42a1) - db OVERWORLD ; tileset - db PALLET_TOWN_HEIGHT, PALLET_TOWN_WIDTH ; dimensions - dw PalletTownBlocks, PalletTownTextPointers, PalletTownScript - db NORTH | SOUTH ; connections - NORTH_MAP_CONNECTION ROUTE_1, ROUTE_1_WIDTH, ROUTE_1_HEIGHT, 0, 0, ROUTE_1_WIDTH, Route1Blocks - SOUTH_MAP_CONNECTION ROUTE_21, ROUTE_21_WIDTH, 0, 0, ROUTE_21_WIDTH, Route21Blocks, PALLET_TOWN_WIDTH, PALLET_TOWN_HEIGHT - dw PalletTownObject - -PalletTownObject: ; 0x182c3 (size=58) - db $b ; border tile - - db $3 ; warps - db $5, $5, $0, REDS_HOUSE_1F - db $5, $d, $0, BLUES_HOUSE - db $b, $c, $1, OAKS_LAB - - db $4 ; signs - db $d, $d, $4 ; PalletTownText4 - db $9, $7, $5 ; PalletTownText5 - db $5, $3, $6 ; PalletTownText6 - db $5, $b, $7 ; PalletTownText7 - - db $3 ; people - db SPRITE_OAK, $5 + 4, $8 + 4, $ff, $ff, $1 ; person - db SPRITE_GIRL, $8 + 4, $3 + 4, $fe, $0, $2 ; person - db SPRITE_FISHER2, $e + 4, $b + 4, $fe, $0, $3 ; person - - ; warp-to - EVENT_DISP PALLET_TOWN_WIDTH, $5, $5 ; REDS_HOUSE_1F - EVENT_DISP PALLET_TOWN_WIDTH, $5, $d ; BLUES_HOUSE - EVENT_DISP PALLET_TOWN_WIDTH, $b, $c ; OAKS_LAB +INCLUDE "data/mapHeaders/pallettown.asm" + +INCLUDE "data/mapObjects/pallettown.asm" PalletTownBlocks: ; 182fd (6:42fd) INCBIN "maps/pallettown.blk" -ViridianCity_h: ; 0x18357 to 0x18384 (45 bytes) (bank=6) (id=1) - db OVERWORLD ; tileset - db VIRIDIAN_CITY_HEIGHT, VIRIDIAN_CITY_WIDTH ; dimensions (y, x) - dw ViridianCityBlocks, ViridianCityTextPointers, ViridianCityScript ; blocks, texts, scripts - db NORTH | SOUTH | WEST ; connections - NORTH_MAP_CONNECTION ROUTE_2, ROUTE_2_WIDTH, ROUTE_2_HEIGHT, 5, 0, ROUTE_2_WIDTH, Route2Blocks - SOUTH_MAP_CONNECTION ROUTE_1, ROUTE_1_WIDTH, 5, 0, ROUTE_1_WIDTH, Route1Blocks, VIRIDIAN_CITY_WIDTH, VIRIDIAN_CITY_HEIGHT - WEST_MAP_CONNECTION ROUTE_22, ROUTE_22_WIDTH, 4, 0, ROUTE_22_HEIGHT, Route22Blocks, VIRIDIAN_CITY_WIDTH - dw ViridianCityObject ; objects - -ViridianCityObject: ; 0x18384 (size=104) - db $f ; border tile - - db $5 ; warps - db $19, $17, $0, VIRIDIAN_POKECENTER - db $13, $1d, $0, VIRIDIAN_MART - db $f, $15, $0, VIRIDIAN_SCHOOL - db $9, $15, $0, VIRIDIAN_HOUSE - db $7, $20, $0, VIRIDIAN_GYM - - db $6 ; signs - db $11, $11, $8 ; ViridianCityText8 - db $1, $13, $9 ; ViridianCityText9 - db $1d, $15, $a ; ViridianCityText10 - db $13, $1e, $b ; MartSignText - db $19, $18, $c ; PokeCenterSignText - db $7, $1b, $d ; ViridianCityText13 - - db $7 ; people - db SPRITE_BUG_CATCHER, $14 + 4, $d + 4, $fe, $0, $1 ; person - db SPRITE_GAMBLER, $8 + 4, $1e + 4, $ff, $ff, $2 ; person - db SPRITE_BUG_CATCHER, $19 + 4, $1e + 4, $fe, $0, $3 ; person - db SPRITE_GIRL, $9 + 4, $11 + 4, $ff, $d3, $4 ; person - db SPRITE_LYING_OLD_MAN, $9 + 4, $12 + 4, $ff, $ff, $5 ; person - db SPRITE_FISHER2, $17 + 4, $6 + 4, $ff, $d0, $6 ; person - db SPRITE_GAMBLER, $5 + 4, $11 + 4, $fe, $2, $7 ; person - - ; warp-to - EVENT_DISP VIRIDIAN_CITY_WIDTH, $19, $17 ; VIRIDIAN_POKECENTER - EVENT_DISP VIRIDIAN_CITY_WIDTH, $13, $1d ; VIRIDIAN_MART - EVENT_DISP VIRIDIAN_CITY_WIDTH, $f, $15 ; VIRIDIAN_SCHOOL - EVENT_DISP VIRIDIAN_CITY_WIDTH, $9, $15 ; VIRIDIAN_HOUSE - EVENT_DISP VIRIDIAN_CITY_WIDTH, $7, $20 ; VIRIDIAN_GYM +INCLUDE "data/mapHeaders/viridiancity.asm" + +INCLUDE "data/mapObjects/viridiancity.asm" ViridianCityBlocks: ; 183ec (6:43ec) INCBIN "maps/viridiancity.blk" -PewterCity_h: ; 0x18554 to 0x18576 (34 bytes) (bank=6) (id=2) - db OVERWORLD ; tileset - db PEWTER_CITY_HEIGHT, PEWTER_CITY_WIDTH ; dimensions (y, x) - dw PewterCityBlocks, PewterCityTextPointers, PewterCityScript ; blocks, texts, scripts - db SOUTH | EAST ; connections - SOUTH_MAP_CONNECTION ROUTE_2, ROUTE_2_WIDTH, 5, 0, ROUTE_2_WIDTH, Route2Blocks, PEWTER_CITY_WIDTH, PEWTER_CITY_HEIGHT - EAST_MAP_CONNECTION ROUTE_3, ROUTE_3_WIDTH, 4, 0, ROUTE_3_HEIGHT, Route3Blocks, PEWTER_CITY_WIDTH - dw PewterCityObject ; objects - - db $0 - -PewterCityObject: ; 0x18577 (size=111) - db $a ; border tile - - db $7 ; warps - db $7, $e, $0, MUSEUM_1F - db $5, $13, $2, MUSEUM_1F - db $11, $10, $0, PEWTER_GYM - db $d, $1d, $0, PEWTER_HOUSE_1 - db $11, $17, $0, PEWTER_MART - db $1d, $7, $0, PEWTER_HOUSE_2 - db $19, $d, $0, PEWTER_POKECENTER - - db $7 ; signs - db $1d, $13, $6 ; PewterCityText6 - db $13, $21, $7 ; PewterCityText7 - db $11, $18, $8 ; MartSignText - db $19, $e, $9 ; PokeCenterSignText - db $9, $f, $a ; PewterCityText10 - db $11, $b, $b ; PewterCityText11 - db $17, $19, $c ; PewterCityText12 - - db $5 ; people - db SPRITE_LASS, $f + 4, $8 + 4, $ff, $ff, $1 ; person - db SPRITE_BLACK_HAIR_BOY_1, $19 + 4, $11 + 4, $ff, $ff, $2 ; person - db SPRITE_BLACK_HAIR_BOY_2, $11 + 4, $1b + 4, $ff, $ff, $3 ; person - db SPRITE_BLACK_HAIR_BOY_2, $19 + 4, $1a + 4, $fe, $2, $4 ; person - db SPRITE_BUG_CATCHER, $10 + 4, $23 + 4, $ff, $d0, $5 ; person - - ; warp-to - EVENT_DISP PEWTER_CITY_WIDTH, $7, $e ; MUSEUM_1F - EVENT_DISP PEWTER_CITY_WIDTH, $5, $13 ; MUSEUM_1F - EVENT_DISP PEWTER_CITY_WIDTH, $11, $10 ; PEWTER_GYM - EVENT_DISP PEWTER_CITY_WIDTH, $d, $1d ; PEWTER_HOUSE_1 - EVENT_DISP PEWTER_CITY_WIDTH, $11, $17 ; PEWTER_MART - EVENT_DISP PEWTER_CITY_WIDTH, $1d, $7 ; PEWTER_HOUSE_2 - EVENT_DISP PEWTER_CITY_WIDTH, $19, $d ; PEWTER_POKECENTER +INCLUDE "data/mapHeaders/pewtercity.asm" + +INCLUDE "data/mapObjects/pewtercity.asm" PewterCityBlocks: ; 185e6 (6:45e6) INCBIN "maps/pewtercity.blk" -CeruleanCity_h: ; 0x1874e to 0x18786 (56 bytes) (bank=6) (id=3) - db OVERWORLD ; tileset - db CERULEAN_CITY_HEIGHT, CERULEAN_CITY_WIDTH ; dimensions (y, x) - dw CeruleanCityBlocks, CeruleanCityTextPointers, CeruleanCityScript ; blocks, texts, scripts - db NORTH | SOUTH | WEST | EAST ; connections - NORTH_MAP_CONNECTION ROUTE_24, ROUTE_24_WIDTH, ROUTE_24_HEIGHT, 5, 0, ROUTE_24_WIDTH, Route24Blocks - SOUTH_MAP_CONNECTION ROUTE_5, ROUTE_5_WIDTH, 5, 0, ROUTE_5_WIDTH, Route5Blocks, CERULEAN_CITY_WIDTH, CERULEAN_CITY_HEIGHT - WEST_MAP_CONNECTION ROUTE_4, ROUTE_4_WIDTH, 4, 0, ROUTE_4_HEIGHT, Route4Blocks, CERULEAN_CITY_WIDTH - EAST_MAP_CONNECTION ROUTE_9, ROUTE_9_WIDTH, 4, 0, ROUTE_9_HEIGHT, Route9Blocks, CERULEAN_CITY_WIDTH - dw CeruleanCityObject ; objects - -CeruleanCityObject: ; 0x18786 (size=170) - db $f ; border tile - - db $a ; warps - db $b, $1b, $0, TRASHED_HOUSE - db $f, $d, $0, CERULEAN_HOUSE - db $11, $13, $0, CERULEAN_POKECENTER - db $13, $1e, $0, CERULEAN_GYM - db $19, $d, $0, BIKE_SHOP - db $19, $19, $0, CERULEAN_MART - db $b, $4, $0, UNKNOWN_DUNGEON_1 - db $9, $1b, $2, TRASHED_HOUSE - db $b, $9, $1, CERULEAN_HOUSE_3 - db $9, $9, $0, CERULEAN_HOUSE_3 - - db $6 ; signs - db $13, $17, $c ; CeruleanCityText12 - db $1d, $11, $d ; CeruleanCityText13 - db $19, $1a, $e ; MartSignText - db $11, $14, $f ; PokeCenterSignText - db $19, $b, $10 ; CeruleanCityText16 - db $15, $1b, $11 ; CeruleanCityText17 - - db $b ; people - db SPRITE_BLUE, $2 + 4, $14 + 4, $ff, $d0, $1 ; person - db SPRITE_ROCKET, $8 + 4, $1e + 4, $ff, $ff, $42, ROCKET + $C8, $5 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $14 + 4, $1f + 4, $ff, $d0, $3 ; person - db SPRITE_BLACK_HAIR_BOY_2, $12 + 4, $f + 4, $fe, $1, $4 ; person - db SPRITE_BLACK_HAIR_BOY_2, $15 + 4, $9 + 4, $fe, $2, $5 ; person - db SPRITE_GUARD, $c + 4, $1c + 4, $ff, $d0, $6 ; person - db SPRITE_LASS, $1a + 4, $1d + 4, $ff, $d2, $7 ; person - db SPRITE_SLOWBRO, $1a + 4, $1c + 4, $ff, $d0, $8 ; person - db SPRITE_LASS, $1b + 4, $9 + 4, $fe, $2, $9 ; person - db SPRITE_BLACK_HAIR_BOY_2, $c + 4, $4 + 4, $ff, $d0, $a ; person - db SPRITE_GUARD, $c + 4, $1b + 4, $ff, $d0, $b ; person - - ; warp-to - EVENT_DISP CERULEAN_CITY_WIDTH, $b, $1b ; TRASHED_HOUSE - EVENT_DISP CERULEAN_CITY_WIDTH, $f, $d ; CERULEAN_HOUSE - EVENT_DISP CERULEAN_CITY_WIDTH, $11, $13 ; CERULEAN_POKECENTER - EVENT_DISP CERULEAN_CITY_WIDTH, $13, $1e ; CERULEAN_GYM - EVENT_DISP CERULEAN_CITY_WIDTH, $19, $d ; BIKE_SHOP - EVENT_DISP CERULEAN_CITY_WIDTH, $19, $19 ; CERULEAN_MART - EVENT_DISP CERULEAN_CITY_WIDTH, $b, $4 ; UNKNOWN_DUNGEON_1 - EVENT_DISP CERULEAN_CITY_WIDTH, $9, $1b ; TRASHED_HOUSE - EVENT_DISP CERULEAN_CITY_WIDTH, $b, $9 ; CERULEAN_HOUSE_3 - EVENT_DISP CERULEAN_CITY_WIDTH, $9, $9 ; CERULEAN_HOUSE_3 +INCLUDE "data/mapHeaders/ceruleancity.asm" + +INCLUDE "data/mapObjects/ceruleancity.asm" CeruleanCityBlocks: ; 18830 (6:4830) INCBIN "maps/ceruleancity.blk" -VermilionCity_h: ; 0x18998 to 0x189ba (34 bytes) (bank=6) (id=5) - db OVERWORLD ; tileset - db VERMILION_CITY_HEIGHT, VERMILION_CITY_WIDTH ; dimensions (y, x) - dw VermilionCityBlocks, VermilionCityTextPointers, VermilionCityScript ; blocks, texts, scripts - db NORTH | EAST ; connections - NORTH_MAP_CONNECTION ROUTE_6, ROUTE_6_WIDTH, ROUTE_6_HEIGHT, 5, 0, ROUTE_6_WIDTH, Route6Blocks - EAST_MAP_CONNECTION ROUTE_11, ROUTE_11_WIDTH, 4, 0, ROUTE_11_HEIGHT, Route11Blocks, VERMILION_CITY_WIDTH - dw VermilionCityObject ; objects - -VermilionCityObject: ; 0x189ba (size=133) - db $43 ; border tile - - db $9 ; warps - db $3, $b, $0, VERMILION_POKECENTER - db $d, $9, $0, POKEMON_FAN_CLUB - db $d, $17, $0, VERMILION_MART - db $13, $c, $0, VERMILION_GYM - db $13, $17, $0, VERMILION_HOUSE_1 - db $1f, $12, $0, VERMILION_DOCK - db $1f, $13, $0, VERMILION_DOCK - db $d, $f, $0, VERMILION_HOUSE_3 - db $3, $7, $0, VERMILION_HOUSE_2 - - db $7 ; signs - db $3, $1b, $7 ; VermilionCityText7 - db $d, $25, $8 ; VermilionCityText8 - db $d, $18, $9 ; MartSignText - db $3, $c, $a ; PokeCenterSignText - db $d, $7, $b ; VermilionCityText11 - db $13, $7, $c ; VermilionCityText12 - db $f, $1d, $d ; VermilionCityText13 - - db $6 ; people - db SPRITE_FOULARD_WOMAN, $7 + 4, $13 + 4, $fe, $2, $1 ; person - db SPRITE_GAMBLER, $6 + 4, $e + 4, $ff, $ff, $2 ; person - db SPRITE_SAILOR, $1e + 4, $13 + 4, $ff, $d1, $3 ; person - db SPRITE_GAMBLER, $7 + 4, $1e + 4, $ff, $ff, $4 ; person - db SPRITE_SLOWBRO, $9 + 4, $1d + 4, $fe, $1, $5 ; person - db SPRITE_SAILOR, $1b + 4, $19 + 4, $fe, $2, $6 ; person - - ; warp-to - EVENT_DISP VERMILION_CITY_WIDTH, $3, $b ; VERMILION_POKECENTER - EVENT_DISP VERMILION_CITY_WIDTH, $d, $9 ; POKEMON_FAN_CLUB - EVENT_DISP VERMILION_CITY_WIDTH, $d, $17 ; VERMILION_MART - EVENT_DISP VERMILION_CITY_WIDTH, $13, $c ; VERMILION_GYM - EVENT_DISP VERMILION_CITY_WIDTH, $13, $17 ; VERMILION_HOUSE_1 - EVENT_DISP VERMILION_CITY_WIDTH, $1f, $12 ; VERMILION_DOCK - EVENT_DISP VERMILION_CITY_WIDTH, $1f, $13 ; VERMILION_DOCK - EVENT_DISP VERMILION_CITY_WIDTH, $d, $f ; VERMILION_HOUSE_3 - EVENT_DISP VERMILION_CITY_WIDTH, $3, $7 ; VERMILION_HOUSE_2 +INCLUDE "data/mapHeaders/vermilioncity.asm" + +INCLUDE "data/mapObjects/vermilioncity.asm" VermilionCityBlocks: ; 18a3f (6:4a3f) INCBIN "maps/vermilioncity.blk" -FuchsiaCity_h: ; 0x18ba7 to 0x18bd4 (45 bytes) (bank=6) (id=7) - db OVERWORLD ; tileset - db FUCHSIA_CITY_HEIGHT, FUCHSIA_CITY_WIDTH ; dimensions (y, x) - dw FuchsiaCityBlocks, FuchsiaCityTextPointers, FuchsiaCityScript ; blocks, texts, scripts - db SOUTH | WEST | EAST ; connections - SOUTH_MAP_CONNECTION ROUTE_19, ROUTE_19_WIDTH, 5, 0, ROUTE_19_WIDTH, Route19Blocks, FUCHSIA_CITY_WIDTH, FUCHSIA_CITY_HEIGHT - WEST_MAP_CONNECTION ROUTE_18, ROUTE_18_WIDTH, 4, 0, ROUTE_18_HEIGHT, Route18Blocks, FUCHSIA_CITY_WIDTH - EAST_MAP_CONNECTION ROUTE_15, ROUTE_15_WIDTH, 4, 0, ROUTE_15_HEIGHT, Route15Blocks, FUCHSIA_CITY_WIDTH - dw FuchsiaCityObject ; objects - -FuchsiaCityObject: ; 0x18bd4 (size=178) - db $f ; border tile - - db $9 ; warps - db $d, $5, $0, FUCHSIA_MART - db $1b, $b, $0, FUCHSIA_HOUSE_1 - db $1b, $13, $0, FUCHSIA_POKECENTER - db $1b, $1b, $0, FUCHSIA_HOUSE_2 - db $3, $12, $0, SAFARI_ZONE_ENTRANCE - db $1b, $5, $0, FUCHSIA_GYM - db $d, $16, $0, FUCHSIA_MEETING_ROOM - db $1b, $1f, $1, FUCHSIA_HOUSE_3 - db $18, $1f, $0, FUCHSIA_HOUSE_3 - - db $e ; signs - db $17, $f, $b ; FuchsiaCityText11 - db $f, $19, $c ; FuchsiaCityText12 - db $5, $11, $d ; FuchsiaCityText13 - db $d, $6, $e ; MartSignText - db $1b, $14, $f ; PokeCenterSignText - db $1d, $1b, $10 ; FuchsiaCityText16 - db $f, $15, $11 ; FuchsiaCityText17 - db $1d, $5, $12 ; FuchsiaCityText18 - db $7, $21, $13 ; FuchsiaCityText19 - db $7, $1b, $14 ; FuchsiaCityText20 - db $7, $d, $15 ; FuchsiaCityText21 - db $d, $1f, $16 ; FuchsiaCityText22 - db $f, $d, $17 ; FuchsiaCityText23 - db $7, $7, $18 ; FuchsiaCityText24 - - db $a ; people - db SPRITE_BUG_CATCHER, $c + 4, $a + 4, $fe, $2, $1 ; person - db SPRITE_GAMBLER, $11 + 4, $1c + 4, $fe, $2, $2 ; person - db SPRITE_FISHER2, $e + 4, $1e + 4, $ff, $d0, $3 ; person - db SPRITE_BUG_CATCHER, $8 + 4, $18 + 4, $ff, $d1, $4 ; person - db SPRITE_CLEFAIRY, $5 + 4, $1f + 4, $fe, $0, $5 ; person - db SPRITE_BALL, $6 + 4, $19 + 4, $ff, $ff, $6 ; person - db SPRITE_SLOWBRO, $6 + 4, $c + 4, $fe, $2, $7 ; person - db SPRITE_SLOWBRO, $c + 4, $1e + 4, $fe, $2, $8 ; person - db SPRITE_SEEL, $11 + 4, $8 + 4, $fe, $0, $9 ; person - db SPRITE_OMANYTE, $5 + 4, $6 + 4, $ff, $ff, $a ; person - - ; warp-to - EVENT_DISP FUCHSIA_CITY_WIDTH, $d, $5 ; FUCHSIA_MART - EVENT_DISP FUCHSIA_CITY_WIDTH, $1b, $b ; FUCHSIA_HOUSE_1 - EVENT_DISP FUCHSIA_CITY_WIDTH, $1b, $13 ; FUCHSIA_POKECENTER - EVENT_DISP FUCHSIA_CITY_WIDTH, $1b, $1b ; FUCHSIA_HOUSE_2 - EVENT_DISP FUCHSIA_CITY_WIDTH, $3, $12 ; SAFARI_ZONE_ENTRANCE - EVENT_DISP FUCHSIA_CITY_WIDTH, $1b, $5 ; FUCHSIA_GYM - EVENT_DISP FUCHSIA_CITY_WIDTH, $d, $16 ; FUCHSIA_MEETING_ROOM - EVENT_DISP FUCHSIA_CITY_WIDTH, $1b, $1f ; FUCHSIA_HOUSE_3 - EVENT_DISP FUCHSIA_CITY_WIDTH, $18, $1f ; FUCHSIA_HOUSE_3 +INCLUDE "data/mapHeaders/fuchsiacity.asm" + +INCLUDE "data/mapObjects/fuchsiacity.asm" FuchsiaCityBlocks: ; 18c86 (6:4c86) INCBIN "maps/fuchsiacity.blk" @@ -33779,2918 +27486,70 @@ Func_18e36: ; 18e36 (6:4e36) ld [H_CURRENTPRESSEDBUTTONS], a ret -PalletTownScript: ; 18e5b (6:4e5b) - ld a,[$D74B] - bit 4,a - jr z,.next - ld hl,$D747 - set 6,[hl] -.next - call EnableAutoTextBoxDrawing - ld hl,PalletTownScriptPointers - ld a,[W_PALLETTOWNCURSCRIPT] - jp CallFunctionInTable - -PalletTownScriptPointers: ; 18e73 (6:4e73) - dw PalletTownScript0 - dw PalletTownScript1 - dw PalletTownScript2 - dw PalletTownScript3 - dw PalletTownScript4 - dw PalletTownScript5 - dw PalletTownScript6 - -PalletTownScript0: ; 18e81 (6:4e81) - ld a,[$D747] - bit 0,a - ret nz - ld a,[W_YCOORD] - cp 1 ; is player near north exit? - ret nz - xor a - ld [H_CURRENTPRESSEDBUTTONS],a - ld a,4 - ld [$D528],a - ld a,$FF - call PlaySound ; stop music - ld a, BANK(Music_MeetProfOak) - ld c,a ; song bank - ld a, MUSIC_MEET_PROF_OAK ; “oak appears” music - call PlayMusic ; plays music - ld a,$FC - ld [wJoypadForbiddenButtonsMask],a - ld hl,$D74B - set 7,[hl] - - ; trigger the next script - ld a,1 - ld [W_PALLETTOWNCURSCRIPT],a - ret - -PalletTownScript1: ; 18eb2 (6:4eb2) - xor a - ld [$CF0D],a - ld a,1 - ld [$FF8C],a - call DisplayTextID - ld a,$FF - ld [wJoypadForbiddenButtonsMask],a - ld a,0 - ld [$CC4D],a - ld a,$15 - call Predef - - ; trigger the next script - ld a,2 - ld [W_PALLETTOWNCURSCRIPT],a - ret - -PalletTownScript2: ; 18ed2 (6:4ed2) - ld a,1 - ld [$FF8C],a - ld a,4 - ld [$FF8D],a - call Func_34a6 - call Delay3 - ld a,1 - ld [W_YCOORD],a - ld a,1 - ld [$FF9B],a - ld a,1 - swap a - ld [$FF95],a - ld a,$22 - call Predef - ld hl,$FF95 - dec [hl] - ld a,$20 - call Predef ; load Oak’s movement into $CC97 - ld de,$CC97 - ld a,1 ; oak - ld [$FF8C],a - call MoveSprite - ld a,$FF - ld [wJoypadForbiddenButtonsMask],a - - ; trigger the next script - ld a,3 - ld [W_PALLETTOWNCURSCRIPT],a - ret - -PalletTownScript3: ; 18f12 (6:4f12) - ld a,[$D730] - bit 0,a - ret nz - xor a - ld [$C109],a - ld a,1 - ld [$CF0D],a - ld a,$FC - ld [wJoypadForbiddenButtonsMask],a - ld a,1 - ld [$FF8C],a - call DisplayTextID - ld a,$FF - ld [wJoypadForbiddenButtonsMask],a - ld a,1 - ld [$CF13],a - xor a - ld [$CF10],a - ld a,1 - ld [$CC57],a - ld a,[H_LOADEDROMBANK] - ld [$CC58],a - - ; trigger the next script - ld a,4 - ld [W_PALLETTOWNCURSCRIPT],a - ret - -PalletTownScript4: ; 18f4b (6:4f4b) - ld a,[$CC57] - and a - ret nz - - ; trigger the next script - ld a,5 - ld [W_PALLETTOWNCURSCRIPT],a - ret - -PalletTownScript5: ; 18f56 (6:4f56) - ld a,[$D74A] - bit 2,a - jr nz,.next - and 3 - cp 3 - jr nz,.next - ld hl,$D74A - set 2,[hl] - ld a,$27 - ld [$CC4D],a - ld a,$11 - call Predef - ld a,$28 - ld [$CC4D],a - ld a,$15 - jp Predef -.next - ld a,[$D74B] - bit 4,a - ret z - ld hl,$D74B - set 6,[hl] -PalletTownScript6: ; 18f87 (6:4f87) - ret +INCLUDE "scripts/pallettown.asm" -PalletTownTextPointers: ; 18f88 (6:4f88) - dw PalletTownText1 - dw PalletTownText2 - dw PalletTownText3 - dw PalletTownText4 - dw PalletTownText5 - dw PalletTownText6 - dw PalletTownText7 +INCLUDE "scripts/viridiancity.asm" -PalletTownText1: ; 18f96 (6:4f96) - db 8 - ld a,[$CF0D] - and a - jr nz,.next - ld a,1 - ld [$CC3C],a - ld hl,OakAppearsText - jr .done -.next - ld hl,OakWalksUpText -.done - call PrintText - jp TextScriptEnd +INCLUDE "scripts/pewtercity.asm" -OakAppearsText: ; 18fb0 (6:4fb0) - TX_FAR _OakAppearsText - db 8 - ld c,10 - call DelayFrames - xor a - ld [$CD4F],a - ld [$CD50],a - ld a,$4C - call Predef ; display ! over head - ld a,4 - ld [$D528],a - jp TextScriptEnd +INCLUDE "scripts/ceruleancity.asm" -OakWalksUpText: ; 18fce (6:4fce) - TX_FAR _OakWalksUpText - db "@" +INCLUDE "scripts/vermilioncity.asm" -PalletTownText2: ; 0x18fd3 girl - TX_FAR _PalletTownText2 ; dc 42 29 pointing to 0xa42dc - db "@" +INCLUDE "scripts/celadoncity.asm" -PalletTownText3: ; 0x18fd8 fat man - TX_FAR _PalletTownText3 - db "@" +INCLUDE "scripts/fuchsiacity.asm" -PalletTownText4: ; 0x18fdd sign by lab - TX_FAR _PalletTownText4 - db "@" +INCLUDE "data/mapHeaders/blueshouse.asm" -PalletTownText5: ; 0x18fe2 sign by fence - TX_FAR _PalletTownText5 - db "@" - -PalletTownText6: ; 0x18fe7 sign by Red’s house - TX_FAR _PalletTownText6 - db "@" - -PalletTownText7: ; 0x18fec sign by Blue’s house - TX_FAR _PalletTownText7 - db "@" +INCLUDE "scripts/blueshouse.asm" -ViridianCityScript: ; 18ff1 (6:4ff1) - call EnableAutoTextBoxDrawing - ld hl, ViridianCityScriptPointers - ld a, [W_VIRIDIANCITYCURSCRIPT] - jp CallFunctionInTable - -ViridianCityScriptPointers: ; 18ffd (6:4ffd) - dw ViridianCityScript0 - dw ViridianCityScript1 - dw ViridianCityScript2 - dw ViridianCityScript3 - -ViridianCityScript0: ; 19005 (6:5005) - call ViridianCityScript_1900b - jp ViridianCityScript_1903d - -ViridianCityScript_1900b: ; 1900b (6:500b) - ld a, [$d74c] - bit 0, a - ret nz - ld a, [W_OBTAINEDBADGES] - cp %01111111 - jr nz, .asm_1901e ; 0x19016 $6 - ld hl, $d74c - set 0, [hl] - ret -.asm_1901e - ld a, [W_YCOORD] - cp $8 - ret nz - ld a, [W_XCOORD] - cp $20 - ret nz - ld a, $e - ld [$ff8c], a - call DisplayTextID - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - call ViridianCityScript_190cf - ld a, $3 - ld [W_VIRIDIANCITYCURSCRIPT], a - ret - -ViridianCityScript_1903d: ; 1903d (6:503d) - ld a, [$d74b] - bit 5, a - ret nz - ld a, [W_YCOORD] - cp $9 - ret nz - ld a, [W_XCOORD] - cp $13 - ret nz - ld a, $5 - ld [$ff8c], a - call DisplayTextID - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - call ViridianCityScript_190cf - ld a, $3 - ld [W_VIRIDIANCITYCURSCRIPT], a - ret - -ViridianCityScript1: ; 19062 (6:5062) - ld a, [$c134] - ld [$ffeb], a - ld a, [$c136] - ld [$ffec], a - ld a, [$c234] - ld [$ffed], a - ld a, [$c235] - ld [$ffee], a - xor a - ld [wListScrollOffset], a - - ; set up battle for Old Man - ld a, $1 - ld [W_BATTLETYPE], a - ld a, 5 - ld [W_CURENEMYLVL], a - ld a, WEEDLE - ld [W_CUROPPONENT], a - ld a, $2 - ld [W_VIRIDIANCITYCURSCRIPT], a - ret - -ViridianCityScript2: ; 1908f (6:508f) - ld a, [$ffeb] - ld [$c134], a - ld a, [$ffec] - ld [$c136], a - ld a, [$ffed] - ld [$c234], a - ld a, [$ffee] - ld [$c235], a - call UpdateSprites - call Delay3 - xor a - ld [wJoypadForbiddenButtonsMask], a - ld a, $f - ld [$ff8c], a - call DisplayTextID - xor a - ld [W_BATTLETYPE], a - ld [wJoypadForbiddenButtonsMask], a - ld a, $0 - ld [W_VIRIDIANCITYCURSCRIPT], a - ret - -ViridianCityScript3: ; 190c1 (6:50c1) - ld a, [$cd38] - and a - ret nz - call Delay3 - ld a, 0 - ld [W_VIRIDIANCITYCURSCRIPT], a - ret - -ViridianCityScript_190cf: ; 190cf (6:50cf) - call Func_3486 - ld a, $1 - ld [$cd38], a - ld a, $80 - ld [$ccd3], a - xor a - ld [$c109], a - ld [wJoypadForbiddenButtonsMask], a - ret - -ViridianCityTextPointers: ; 190e4 (6:50e4) - dw ViridianCityText1 - dw ViridianCityText2 - dw ViridianCityText3 - dw ViridianCityText4 - dw ViridianCityText5 - dw ViridianCityText6 - dw ViridianCityText7 - dw ViridianCityText8 - dw ViridianCityText9 - dw ViridianCityText10 - dw MartSignText - dw PokeCenterSignText - dw ViridianCityText13 - dw ViridianCityText14 - dw ViridianCityText15 - -ViridianCityText1: ; 19102 (6:5102) - TX_FAR _ViridianCityText1 - db "@" - -ViridianCityText2: ; 19107 (6:5107) - db $08 ; asm - ld a, [W_OBTAINEDBADGES] - cp %01111111 - ld hl, UnnamedText_19127 - jr z, .asm_ae9fe ; 0x19110 - ld a, [$d751] - bit 1, a - jr nz, .asm_ae9fe ; 0x19117 - ld hl, UnnamedText_19122 -.asm_ae9fe ; 0x1911c - call PrintText - jp TextScriptEnd - -UnnamedText_19122: ; 19122 (6:5122) - TX_FAR _UnnamedText_19122 - db "@" - -UnnamedText_19127: ; 19127 (6:5127) - TX_FAR _UnnamedText_19127 - db "@" - -ViridianCityText3: ; 1912c (6:512c) - db $08 ; asm - ld hl, UnnamedText_1914d - call PrintText - call YesNoChoice - ld a, [$cc26] - and a - jr nz, .asm_6dfea ; 0x1913a - ld hl, UnnamedText_19157 - call PrintText - jr .asm_d611f ; 0x19142 -.asm_6dfea ; 0x19144 - ld hl, UnnamedText_19152 - call PrintText -.asm_d611f ; 0x1914a - jp TextScriptEnd - -UnnamedText_1914d: ; 1914d (6:514d) - TX_FAR _UnnamedText_1914d - db "@" - -UnnamedText_19152: ; 19152 (6:5152) - TX_FAR _UnnamedText_19152 - db "@" - -UnnamedText_19157: ; 19157 (6:5157) - TX_FAR _UnnamedText_19157 - db "@" - -ViridianCityText4: ; 1915c (6:515c) - db $08 ; asm - ld a, [$d74b] - bit 5, a - jr nz, .asm_83894 ; 0x19162 - ld hl, UnnamedText_19175 - call PrintText - jr .asm_700a6 ; 0x1916a -.asm_83894 ; 0x1916c - ld hl, UnnamedText_1917a - call PrintText -.asm_700a6 ; 0x19172 - jp TextScriptEnd - -UnnamedText_19175: ; 19175 (6:5175) - TX_FAR _UnnamedText_19175 - db "@" - -UnnamedText_1917a: ; 1917a (6:517a) - TX_FAR _UnnamedText_1917a - db "@" - -ViridianCityText5: ; 1917f (6:517f) - db $08 ; asm - ld hl, UnnamedText_19191 - call PrintText - call ViridianCityScript_190cf - ld a, $3 - ld [W_VIRIDIANCITYCURSCRIPT], a - jp TextScriptEnd - -UnnamedText_19191: ; 19191 (6:5191) - TX_FAR _UnnamedText_19191 - db "@" - -ViridianCityText6: ; 19196 (6:5196) - db $08 ; asm - ld a, [$d74c] - bit 1, a - jr nz, .asm_4e5a0 ; 0x1919c - ld hl, UnnamedText_191ca - call PrintText - ld bc, (TM_42 << 8) | 1 - call GiveItem - jr nc, .BagFull - ld hl, ReceivedTM42Text - call PrintText - ld hl, $d74c - set 1, [hl] - jr .asm_3c73c ; 0x191b7 -.BagFull - ld hl, TM42NoRoomText - call PrintText - jr .asm_3c73c ; 0x191bf -.asm_4e5a0 ; 0x191c1 - ld hl, TM42Explanation - call PrintText -.asm_3c73c ; 0x191c7 - jp TextScriptEnd - -UnnamedText_191ca: ; 191ca (6:51ca) - TX_FAR _UnnamedText_191ca - db "@" - -ReceivedTM42Text: ; 191cf (6:51cf) - TX_FAR _ReceivedTM42Text ; 0xa469a - db $10, "@" - -TM42Explanation: ; 191d5 (6:51d5) - TX_FAR _TM42Explanation - db "@" - -TM42NoRoomText: ; 191da (6:51da) - TX_FAR _TM42NoRoomText - db "@" - -ViridianCityText7: ; 191df (6:51df) - db $08 ; asm - ld hl, UnnamedText_1920a - call PrintText - ld c, $2 - call DelayFrames - call YesNoChoice - ld a, [$cc26] - and a - jr z, .asm_42f68 ; 0x191f2 - ld hl, UnnamedText_1920f - call PrintText - ld a, $1 - ld [W_VIRIDIANCITYCURSCRIPT], a - jr .asm_2413a ; 0x191ff -.asm_42f68 ; 0x19201 - ld hl, UnnamedText_19214 - call PrintText -.asm_2413a ; 0x19207 - jp TextScriptEnd - -UnnamedText_1920a: ; 1920a (6:520a) - TX_FAR _UnnamedText_1920a - db "@" - -UnnamedText_1920f: ; 1920f (6:520f) - TX_FAR _UnnamedText_1920f - db "@" - -UnnamedText_19214: ; 19214 (6:5214) - TX_FAR _UnnamedText_19214 - db "@" - -ViridianCityText15: ; 19219 (6:5219) - TX_FAR _UnnamedText_19219 - db "@" - -ViridianCityText8: ; 1921e (6:521e) - TX_FAR _ViridianCityText8 - db "@" - -ViridianCityText9: ; 19223 (6:5223) - TX_FAR _ViridianCityText9 - db "@" - -ViridianCityText10: ; 19228 (6:5228) - TX_FAR _ViridianCityText10 - db "@" - -ViridianCityText13: ; 1922d (6:522d) - TX_FAR _ViridianCityText13 - db "@" - -ViridianCityText14: ; 19232 (6:5232) - TX_FAR _ViridianCityText14 - db "@" - -PewterCityScript: ; 19237 (6:5237) - call EnableAutoTextBoxDrawing - ld hl, PewterCityScriptPointers - ld a, [W_PEWTERCITYCURSCRIPT] - jp CallFunctionInTable - -PewterCityScriptPointers: ; 19243 (6:5243) - dw PewterCityScript0 - dw PewterCityScript1 - dw PewterCityScript2 - dw PewterCityScript3 - dw PewterCityScript4 - dw PewterCityScript5 - dw PewterCityScript6 - -PewterCityScript0: ; 19251 (6:5251) - xor a - ld [W_MUSEUM1FCURSCRIPT], a - ld hl, $d754 - res 0, [hl] - call PewterCityScript_1925e - ret - -PewterCityScript_1925e: ; 1925e (6:525e) - ld a, [$d755] - bit 7, a - ret nz - ld hl, CoordsData_19277 - call ArePlayerCoordsInArray - ret nc - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - ld a, $5 - ld [$ff8c], a - jp DisplayTextID - -CoordsData_19277: ; 19277 (6:5277) - db $11,$23 - db $11,$24 - db $12,$25 - db $13,$25 - db $ff - -PewterCityScript1: ; 19280 (6:5280) - ld a, [$cc57] - and a - ret nz - ld a, $3 - ld [$ff8c], a - ld a, $4 - ld [$ff8d], a - call Func_34a6 - ld a, $34 - ld [$ff8d], a - call Func_34b9 - call Func_2307 - ld hl, wFlags_0xcd60 - set 4, [hl] - ld a, $d - ld [$ff8c], a - call DisplayTextID - ld a, $3c - ld [$ffeb], a - ld a, $30 - ld [$ffec], a - ld a, $c - ld [$ffed], a - ld a, $11 - ld [$ffee], a - ld a, $3 - ld [$cf13], a - call Func_32f9 - ld a, $3 - ld [$ff8c], a - ld de, MovementData_PewterMuseumGuyExit ; $52ce - call MoveSprite - ld a, $2 - ld [W_PEWTERCITYCURSCRIPT], a - ret - -MovementData_PewterMuseumGuyExit: ; 192ce (6:52ce) - db $00,$00,$00,$00,$FF - -PewterCityScript2: ; 192d3 (6:52d3) - ld a, [$d730] - bit 0, a - ret nz - ld a, $3 - ld [$cc4d], a - ld a, $11 - call Predef - ld a, $3 - ld [W_PEWTERCITYCURSCRIPT], a - ret - -PewterCityScript3: ; 192e9 (6:52e9) - ld a, $3 - ld [$cf13], a - call Func_32fe - ld a, $3 - ld [$cc4d], a - ld a, $15 - call Predef - xor a - ld [wJoypadForbiddenButtonsMask], a - ld a, $0 - ld [W_PEWTERCITYCURSCRIPT], a - ret - -PewterCityScript4: ; 19305 (6:5305) - ld a, [$cc57] - and a - ret nz - ld a, $5 - ld [$ff8c], a - ld a, $8 - ld [$ff8d], a - call Func_34a6 - ld a, $18 - ld [$ff8d], a - call Func_34b9 - call Func_2307 - ld hl, wFlags_0xcd60 - set 4, [hl] - ld a, $e - ld [$ff8c], a - call DisplayTextID - ld a, $3c - ld [$ffeb], a - ld a, $40 - ld [$ffec], a - ld a, $16 - ld [$ffed], a - ld a, $10 - ld [$ffee], a - ld a, $5 - ld [$cf13], a - call Func_32f9 - ld a, $5 - ld [$ff8c], a - ld de, MovementData_PewterGymGuyExit - call MoveSprite - ld a, $5 - ld [W_PEWTERCITYCURSCRIPT], a - ret - -MovementData_PewterGymGuyExit: ; 19353 (6:5353) - db $C0,$C0,$C0,$C0,$C0,$FF - -PewterCityScript5: ; 19359 (6:5359) - ld a, [$d730] - bit 0, a - ret nz - ld a, $4 - ld [$cc4d], a - ld a, $11 - call Predef - ld a, $6 - ld [W_PEWTERCITYCURSCRIPT], a - ret - -PewterCityScript6: ; 1936f (6:536f) - ld a, $5 - ld [$cf13], a - call Func_32fe - ld a, $4 - ld [$cc4d], a - ld a, $15 - call Predef - xor a - ld [wJoypadForbiddenButtonsMask], a - ld a, $0 - ld [W_PEWTERCITYCURSCRIPT], a - ret - -PewterCityTextPointers: ; 1938b (6:538b) - dw PewterCityText1 - dw PewterCityText2 - dw PewterCityText3 - dw PewterCityText4 - dw PewterCityText5 - dw PewterCityText6 - dw PewterCityText7 - dw MartSignText - dw PokeCenterSignText - dw PewterCityText10 - dw PewterCityText11 - dw PewterCityText12 - dw PewterCityText13 - dw PewterCityText14 - -PewterCityText1: ; 193a7 (6:53a7) - TX_FAR _PewterCityText1 - db "@" - -PewterCityText2: ; 193ac (6:53ac) - TX_FAR _PewterCityText2 - db "@" - -PewterCityText3: ; 193b1 (6:53b1) - db $08 ; asm - ld hl, UnnamedText_193f1 - call PrintText - call YesNoChoice - ld a, [$cc26] - and a - jr nz, .asm_f46a9 ; 0x193bf - ld hl, UnnamedText_193f6 - call PrintText - jr .asm_ac429 ; 0x193c7 -.asm_f46a9 ; 0x193c9 - ld hl, UnnamedText_193fb - call PrintText - xor a - ldh [$b3], a - ldh [$b4], a - ld [$cf10], a - ld a, $2 - ld [$cc57], a - ldh a, [$b8] - ld [$cc58], a - ld a, $3 - ld [$cf13], a - call Func_32f4 - ld a, $1 - ld [W_PEWTERCITYCURSCRIPT], a -.asm_ac429 ; 0x193ee - jp TextScriptEnd - -UnnamedText_193f1: ; 193f1 (6:53f1) - TX_FAR _UnnamedText_193f1 - db "@" - -UnnamedText_193f6: ; 193f6 (6:53f6) - TX_FAR _UnnamedText_193f6 - db "@" - -UnnamedText_193fb: ; 193fb (6:53fb) - TX_FAR _UnnamedText_193fb - db "@" - -PewterCityText13: ; 19400 (6:5400) - TX_FAR _PewterCityText13 - db "@" - -PewterCityText4: ; 19405 (6:5405) - db $8 - ld hl, UnnamedText_19427 - call PrintText - call YesNoChoice - ld a, [$cc26] - cp $0 - jr nz, .asm_e4603 - ld hl, UnnamedText_1942c - call PrintText - jr .asm_e4604 ; 0x1941c $6 -.asm_e4603 - ld hl, UnnamedText_19431 - call PrintText -.asm_e4604 ; 0x19424 - jp TextScriptEnd - -UnnamedText_19427: ; 19427 (6:5427) - TX_FAR _UnnamedText_19427 - db "@" - -UnnamedText_1942c: ; 1942c (6:542c) - TX_FAR _UnnamedText_1942c - db "@" - -UnnamedText_19431: ; 19431 (6:5431) - TX_FAR _UnnamedText_19431 - db "@" - -PewterCityText5: ; 19436 (6:5436) - db $08 ; asm - ld hl, UnnamedText_1945d - call PrintText - xor a - ldh [$b4], a - ld [$cf10], a - ld a, $3 - ld [$cc57], a - ldh a, [$b8] - ld [$cc58], a - ld a, $5 - ld [$cf13], a - call Func_32f4 - ld a, $4 - ld [W_PEWTERCITYCURSCRIPT], a - jp TextScriptEnd - -UnnamedText_1945d: ; 1945d (6:545d) - TX_FAR _UnnamedText_1945d - db "@" - -PewterCityText14: ; 19462 (6:5462) - -UnnamedText_19462: ; 19462 (6:5462) - TX_FAR _UnnamedText_19462 - db "@" - -PewterCityText6: ; 19467 (6:5467) - TX_FAR _PewterCityText6 - db "@" - -PewterCityText7: ; 1946c (6:546c) - TX_FAR _PewterCityText7 - db "@" - -PewterCityText10: ; 19471 (6:5471) - TX_FAR _PewterCityText10 - db "@" - -PewterCityText11: ; 19476 (6:5476) - TX_FAR _PewterCityText11 - db "@" - -PewterCityText12: ; 1947b (6:547b) - TX_FAR _PewterCityText12 - db "@" - -CeruleanCityScript: ; 19480 (6:5480) - call EnableAutoTextBoxDrawing - ld hl, CeruleanCityScriptPointers - ld a, [W_CERULEANCITYCURSCRIPT] - jp CallFunctionInTable - -CeruleanCityScript_1948c: ; 1948c (6:548c) - xor a - ld [wJoypadForbiddenButtonsMask], a - ld [W_CERULEANCITYCURSCRIPT], a - ld a, $5 - ld [$cc4d], a - ld a, $11 - jp Predef - -CeruleanCityScriptPointers: ; 1949d (6:549d) - dw CeruleanCityScript0 - dw CeruleanCityScript1 - dw CeruleanCityScript2 - dw CeruleanCityScript3 - dw CeruleanCityScript4 - -CeruleanCityScript4: ; 194a7 (6:54a7) - ld a, [W_ISINBATTLE] - cp $ff - jp z, CeruleanCityScript_1948c - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - ld hl, $d75b - set 7, [hl] - ld a, $2 - ld [$ff8c], a - call DisplayTextID - xor a - ld [wJoypadForbiddenButtonsMask], a - ld [W_CERULEANCITYCURSCRIPT], a - ret - -CeruleanCityScript0: ; 194c8 (6:54c8) - ld a, [$d75b] - bit 7, a - jr nz, .asm_194f7 ; 0x194cd $28 - ld hl, CeruleanCityCoords1 - call ArePlayerCoordsInArray - jr nc, .asm_194f7 ; 0x194d5 $20 - ld a, [$cd3d] - cp $1 - ld a, $8 - ld b, $0 - jr nz, .asm_194e6 ; 0x194e0 $4 - ld a, $4 - ld b, $4 -.asm_194e6 - ld [$d528], a - ld a, b - ld [$c129], a - call Delay3 - ld a, $2 - ld [$ff8c], a - jp DisplayTextID -.asm_194f7 - ld a, [$d75a] - bit 0, a - ret nz - ld hl, CeruleanCityCoords2 - call ArePlayerCoordsInArray - ret nc - ld a, [$d700] - and a - jr z, .asm_19512 ; 0x19508 $8 - ld a, $ff - ld [$c0ee], a - call PlaySound -.asm_19512 - ld c, BANK(Music_MeetRival) - ld a, MUSIC_MEET_RIVAL - call PlayMusic - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - ld a, [$d362] - cp $14 - jr z, .asm_19535 ; 0x19526 $d - ld a, $1 - ld [$ff8c], a - ld a, $5 - ld [$ff8b], a - call Func_3500 - ld [hl], $19 -.asm_19535 - ld a, $5 - ld [$cc4d], a - ld a, $15 - call Predef - ld de, CeruleanCityMovement1 - ld a, $1 - ld [$ff8c], a - call MoveSprite - ld a, $1 - ld [W_CERULEANCITYCURSCRIPT], a - ret - -CeruleanCityCoords1: ; 1954f (6:554f) - db $07,$1e - db $09,$1e - db $ff - -CeruleanCityCoords2: ; 19554 (6:5554) - db $06,$14 - db $06,$15 - db $ff - -CeruleanCityMovement1: ; 19559 (6:5559) - db $00,$00,$00,$FF - -CeruleanCityScript_1955d: ; 1955d (6:555d) - ld a,1 - ld [$ff8c],a - xor a - ld [$ff8d],a - jp Func_34a6 ; face object - -CeruleanCityScript1: ; 19567 (6:5567) - ld a, [$d730] - bit 0, a - ret nz - xor a - ld [wJoypadForbiddenButtonsMask], a - ld a, $1 - ld [$ff8c], a - call DisplayTextID - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, UnnamedText_1966d - ld de, UnnamedText_19672 - call PreBattleSaveRegisters - ld a, $e1 - ld [$d059], a - - ; select which team to use during the encounter - ld a, [W_RIVALSTARTER] - cp SQUIRTLE - jr nz, .NotSquirtle ; 0x19592 $4 - ld a, $7 - jr .done -.NotSquirtle - cp BULBASAUR - jr nz, .Charmander ; 0x1959a $4 - ld a, $8 - jr .done -.Charmander - ld a, $9 -.done - ld [W_TRAINERNO], a - - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - call CeruleanCityScript_1955d - ld a, $2 - ld [W_CERULEANCITYCURSCRIPT], a - ret - -CeruleanCityScript2: ; 195b1 (6:55b1) - ld a, [$d057] - cp $ff - jp z, CeruleanCityScript_1948c - call CeruleanCityScript_1955d - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - ld hl, $d75a - set 0, [hl] - ld a, $1 - ld [$ff8c], a - call DisplayTextID - ld a, $ff - ld [$c0ee], a - call PlaySound - callba Music_RivalAlternateStart - ld a, $1 - ld [$ff8c], a - call SetSpriteMovementBytesToFF - ld a, [$d362] - cp $14 - jr nz, .asm_195f0 ; 0x195e9 $5 - ld de, CeruleanCityMovement4 - jr .asm_195f3 ; 0x195ee $3 -.asm_195f0 - ld de, CeruleanCityMovement3 -.asm_195f3 - ld a, $1 - ld [$ff8c], a - call MoveSprite - ld a, $3 - ld [W_CERULEANCITYCURSCRIPT], a - ret - -CeruleanCityMovement3: ; 19600 (6:5600) - db $80,$00,$00,$00,$00,$00,$00,$FF - -CeruleanCityMovement4: ; 19608 (6:5608) - db $c0,$00,$00,$00,$00,$00,$00,$FF - -CeruleanCityScript3: ; 19610 (6:5610) - ld a, [$d730] - bit 0, a - ret nz - ld a, $5 - ld [$cc4d], a - ld a, $11 - call Predef - xor a - ld [wJoypadForbiddenButtonsMask], a - call Func_2307 - ld a, $0 - ld [W_CERULEANCITYCURSCRIPT], a - ret - -CeruleanCityTextPointers: ; 1962d (6:562d) - dw CeruleanCityText1 - dw CeruleanCityText2 - dw CeruleanCityText3 - dw CeruleanCityText4 - dw CeruleanCityText5 - dw CeruleanCityText6 - dw CeruleanCityText7 - dw CeruleanCityText8 - dw CeruleanCityText9 - dw CeruleanCityText10 - dw CeruleanCityText11 - dw CeruleanCityText12 - dw CeruleanCityText13 - dw MartSignText - dw PokeCenterSignText - dw CeruleanCityText16 - dw CeruleanCityText17 - -CeruleanCityText1: ; 1964f (6:564f) - db $08 ; asm - ld a, [$d75a] ; rival battle flag - bit 0, a - ; do pre-battle text - jr z, .PreBattleText - ; or talk about bill - ld hl, UnnamedText_19677 - call PrintText - jr .end ; 0x1965d -.PreBattleText ; 0x1965f - ld hl, UnnamedText_19668 - call PrintText -.end ; 0x19665 - jp TextScriptEnd - -UnnamedText_19668: ; 19668 (6:5668) - TX_FAR _UnnamedText_19668 - db "@" - -UnnamedText_1966d: ; 1966d (6:566d) - TX_FAR _UnnamedText_1966d - db "@" - -UnnamedText_19672: ; 19672 (6:5672) - TX_FAR _UnnamedText_19672 - db "@" - -UnnamedText_19677: ; 19677 (6:5677) - TX_FAR _UnnamedText_19677 - db "@" - -CeruleanCityText2: ; 1967c (6:567c) - db $8 - ld a, [$d75b] - bit 7, a - jr nz, .asm_4ca20 ; 0x19682 $29 - ld hl, UnnamedText_196d9 - call PrintText - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, UnnamedText_196ee - ld de, UnnamedText_196ee - call PreBattleSaveRegisters - ld a, [$ff8c] - ld [$cf13], a - call EngageMapTrainer - call InitBattleEnemyParameters - ld a, $4 - ld [W_CERULEANCITYCURSCRIPT], a - jp TextScriptEnd -.asm_4ca20 ; 0x196ad - ld hl, UnnamedText_196f3 - call PrintText - ld bc, $e401 - call GiveItem - jr c, .Success - ld hl, TM28NoRoomText - call PrintText - jr .Done -.Success - ld a, $1 - ld [$cc3c], a - ld hl, ReceivedTM28Text - call PrintText - callba Func_74872 -.Done - jp TextScriptEnd - -UnnamedText_196d9: ; 196d9 (6:56d9) - TX_FAR _UnnamedText_196d9 - db "@" - -ReceivedTM28Text: ; 196de (6:56de) - TX_FAR _ReceivedTM28Text ; 0xa4f82 - db $0B - TX_FAR _ReceivedTM28Text2 ; 0xa4f96 - db $0D, "@" - -TM28NoRoomText: ; 196e9 (6:56e9) - TX_FAR _TM28NoRoomText - db "@" - -UnnamedText_196ee: ; 196ee (6:56ee) - TX_FAR _UnnamedText_196ee - db "@" - -UnnamedText_196f3: ; 196f3 (6:56f3) - TX_FAR _UnnamedText_196f3 - db "@" - -CeruleanCityText3: ; 196f8 (6:56f8) - TX_FAR _CeruleanCityText3 - db "@" - -CeruleanCityText4: ; 196fd (6:56fd) - TX_FAR _CeruleanCityText4 - db "@" - -CeruleanCityText5: ; 19702 (6:5702) - TX_FAR _CeruleanCityText5 - db "@" - -CeruleanCityText11: ; 19707 (6:5707) -CeruleanCityText6: ; 19707 (6:5707) - TX_FAR _CeruleanCityText6 - db "@" - -CeruleanCityText7: ; 1970c (6:570c) - db $08 ; asm - ldh a, [$d3] - cp $b4 - jr c, .asm_e9fc9 ; 0x19711 - ld hl, UnnamedText_19730 - call PrintText - jr .asm_d486e ; 0x19719 -.asm_e9fc9 ; 0x1971b - cp $64 - jr c, .asm_df99b ; 0x1971d - ld hl, UnnamedText_19735 - call PrintText - jr .asm_d486e ; 0x19725 -.asm_df99b ; 0x19727 - ld hl, UnnamedText_1973a - call PrintText -.asm_d486e ; 0x1972d - jp TextScriptEnd - -UnnamedText_19730: ; 19730 (6:5730) - TX_FAR _UnnamedText_19730 - db "@" - -UnnamedText_19735: ; 19735 (6:5735) - TX_FAR _UnnamedText_19735 - db "@" - -UnnamedText_1973a: ; 1973a (6:573a) - TX_FAR _UnnamedText_1973a - db "@" - -CeruleanCityText8: ; 1973f (6:573f) - db $08 ; asm - ldh a, [$d3] - cp $b4 - jr c, .asm_e28da ; 0x19744 - ld hl, UnnamedText_1976f - call PrintText - jr .asm_f2f38 ; 0x1974c -.asm_e28da ; 0x1974e - cp $78 - jr c, .asm_15d08 ; 0x19750 - ld hl, UnnamedText_19774 - call PrintText - jr .asm_f2f38 ; 0x19758 -.asm_15d08 ; 0x1975a - cp $3c - jr c, .asm_d7fea ; 0x1975c - ld hl, UnnamedText_19779 - call PrintText - jr .asm_f2f38 ; 0x19764 -.asm_d7fea ; 0x19766 - ld hl, UnnamedText_1977e - call PrintText -.asm_f2f38 ; 0x1976c - jp TextScriptEnd - -UnnamedText_1976f: ; 1976f (6:576f) - TX_FAR _UnnamedText_1976f - db "@" - -UnnamedText_19774: ; 19774 (6:5774) - TX_FAR _UnnamedText_19774 - db "@" - -UnnamedText_19779: ; 19779 (6:5779) - TX_FAR _UnnamedText_19779 - db "@" - -UnnamedText_1977e: ; 1977e (6:577e) - TX_FAR _UnnamedText_1977e - db "@" - -CeruleanCityText9: ; 19783 (6:5783) - TX_FAR _CeruleanCityText9 - db "@" - -CeruleanCityText10: ; 19788 (6:5788) - TX_FAR _CeruleanCityText10 - db "@" - -CeruleanCityText12: ; 1978d (6:578d) - TX_FAR _CeruleanCityText12 - db "@" - -CeruleanCityText13: ; 19792 (6:5792) - TX_FAR _CeruleanCityText13 - db "@" - -CeruleanCityText16: ; 19797 (6:5797) - TX_FAR _CeruleanCityText16 - db "@" - -CeruleanCityText17: ; 1979c (6:579c) - TX_FAR _CeruleanCityText17 - db "@" - -VermilionCityScript: ; 197a1 (6:57a1) - call EnableAutoTextBoxDrawing - ld hl, $d126 - bit 6, [hl] - res 6, [hl] - push hl - call nz, VermilionCityScript_197cb - pop hl - bit 5, [hl] - res 5, [hl] - call nz, VermilionCityScript_197c0 - ld hl, VermilionCityScriptPointers - ld a, [W_VERMILIONCITYCURSCRIPT] - jp CallFunctionInTable - -VermilionCityScript_197c0: ; 197c0 (6:57c0) - call GenRandom - ld a, [$ffd4] - and $e - ld [$d743], a - ret - -VermilionCityScript_197cb: ; 197cb (6:57cb) - ld hl, $d803 - bit 2, [hl] - ret z - bit 3, [hl] - set 3, [hl] - ret nz - ld a, $2 - ld [W_VERMILIONCITYCURSCRIPT], a - ret - -VermilionCityScriptPointers: ; 197dc (6:57dc) - dw VermilionCityScript0 - dw VermilionCityScript1 - dw VermilionCityScript2 - dw VermilionCityScript3 - dw VermilionCityScript4 - -VermilionCityScript0: ; 197e6 (6:57e6) - ld a, [$c109] - and a - ret nz - ld hl, CoordsData_19823 - call ArePlayerCoordsInArray - ret nc - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - ld [$cf0d], a - ld a, $3 - ld [$ff8c], a - call DisplayTextID - ld a, [$d803] - bit 2, a - jr nz, .asm_19810 ; 0x19804 $a - ld b, $3f - ld a, $1c - call Predef - ld a, b - and a - ret nz -.asm_19810 - ld a, $40 - ld [$ccd3], a - ld a, $1 - ld [$cd38], a - call Func_3486 - ld a, $1 - ld [W_VERMILIONCITYCURSCRIPT], a - ret - -CoordsData_19823: ; 19823 (6:5823) - db $1e,$12 - db $ff - -VermilionCityScript4: ; 19826 (6:5826) - ld hl, CoordsData_19823 - call ArePlayerCoordsInArray - ret c - ld a, $0 - ld [W_VERMILIONCITYCURSCRIPT], a - ret - -VermilionCityScript2: ; 19833 (6:5833) - ld a, $ff - ld [wJoypadForbiddenButtonsMask], a - ld a, $40 - ld [$ccd3], a - ld [$ccd4], a - ld a, $2 - ld [$cd38], a - call Func_3486 - ld a, $3 - ld [W_VERMILIONCITYCURSCRIPT], a - ret - -VermilionCityScript3: ; 1984e (6:584e) - ld a, [$cd38] - and a - ret nz - xor a - ld [wJoypadForbiddenButtonsMask], a - ld [H_CURRENTPRESSEDBUTTONS], a - ld a, $0 - ld [W_VERMILIONCITYCURSCRIPT], a - ret - -VermilionCityScript1: ; 1985f (6:585f) - ld a, [$cd38] - and a - ret nz - ld c, $a - call DelayFrames - ld a, $0 - ld [W_VERMILIONCITYCURSCRIPT], a - ret - -VermilionCityTextPointers: ; 1986f (6:586f) - dw VermilionCityText1 - dw VermilionCityText2 - dw VermilionCityText3 - dw VermilionCityText4 - dw VermilionCityText5 - dw VermilionCityText6 - dw VermilionCityText7 - dw VermilionCityText8 - dw MartSignText - dw PokeCenterSignText - dw VermilionCityText11 - dw VermilionCityText12 - dw VermilionCityText13 - -VermilionCityText1: ; 19889 (6:5889) - TX_FAR _VermilionCityText1 - db "@" - -VermilionCityText2: ; 1988e (6:588e) - db $08 ; asm - ld a, [$d803] - bit 2, a - jr nz, .asm_359bd ; 0x19894 - ld hl, UnnamedText_198a7 - call PrintText - jr .asm_735d9 ; 0x1989c -.asm_359bd ; 0x1989e - ld hl, UnnamedText_198ac - call PrintText -.asm_735d9 ; 0x198a4 - jp TextScriptEnd - -UnnamedText_198a7: ; 198a7 (6:58a7) - TX_FAR _UnnamedText_198a7 - db "@" - -UnnamedText_198ac: ; 198ac (6:58ac) - TX_FAR _UnnamedText_198ac - db "@" - -VermilionCityText3: ; 198b1 (6:58b1) - db $08 ; asm - ld a, [$d803] - bit 2, a - jr nz, .asm_3e0e9 ; 0x198b7 - ld a, [$c109] - cp $c - jr z, .asm_07af3 ; 0x198be - ld hl, VermilionCityCoords1 - call ArePlayerCoordsInArray - jr nc, .asm_57b73 ; 0x198c6 -.asm_07af3 ; 0x198c8 - ld hl, SSAnneWelcomeText4 - call PrintText - jr .asm_79bd1 ; 0x198ce -.asm_57b73 ; 0x198d0 - ld hl, SSAnneWelcomeText9 - call PrintText - ld b, $3f - ld a, $1c - call Predef - ld a, b - and a - jr nz, .asm_0419b ; 0x198df - ld hl, SSAnneNoTicketText - call PrintText - jr .asm_79bd1 ; 0x198e7 -.asm_0419b ; 0x198e9 - ld hl, SSAnneFlashedTicketText - call PrintText - ld a, $4 - ld [W_VERMILIONCITYCURSCRIPT], a - jr .asm_79bd1 ; 0x198f4 -.asm_3e0e9 ; 0x198f6 - ld hl, SSAnneNotHereText - call PrintText -.asm_79bd1 ; 0x198fc - jp TextScriptEnd - -VermilionCityCoords1: ; 198ff (6:58ff) - db $1d,$13 - db $1f,$13 - db $ff - -SSAnneWelcomeText4: ; 19904 (6:5904) - TX_FAR _SSAnneWelcomeText4 - db "@" - -SSAnneWelcomeText9: ; 19909 (6:5909) - TX_FAR _SSAnneWelcomeText9 - db "@" - -SSAnneFlashedTicketText: ; 1990e (6:590e) - TX_FAR _SSAnneFlashedTicketText - db "@" - -SSAnneNoTicketText: ; 19913 (6:5913) - TX_FAR _SSAnneNoTicketText - db "@" - -SSAnneNotHereText: ; 19918 (6:5918) - TX_FAR _SSAnneNotHereText - db "@" - -VermilionCityText4: ; 1991d (6:591d) - TX_FAR _VermilionCityText4 - db "@" - -VermilionCityText5: ; 19922 (6:5922) - TX_FAR _VermilionCityText5 - db $08 ; asm - ld a, MACHOP - call PlayCry - call WaitForSoundToFinish - ld hl, VermilionCityText14 ; $5933 - ret - -VermilionCityText14: ; 19933 (6:5933) - TX_FAR _VermilionCityText14 - db "@" - -VermilionCityText6: ; 19938 (6:5938) - TX_FAR _VermilionCityText6 - db "@" - -VermilionCityText7: ; 1993d (6:593d) - TX_FAR _VermilionCityText7 - db "@" - -VermilionCityText8: ; 19942 (6:5942) - TX_FAR _VermilionCityText8 - db "@" - -VermilionCityText11: ; 19947 (6:5947) - TX_FAR _VermilionCityText11 - db "@" - -VermilionCityText12: ; 1994c (6:594c) - TX_FAR _VermilionCityText12 - db "@" - -VermilionCityText13: ; 19951 (6:5951) - TX_FAR _VermilionCityText13 - db "@" - -CeladonCityScript: ; 19956 (6:5956) - call EnableAutoTextBoxDrawing - ld hl, $d77e - res 0, [hl] - res 7, [hl] - ld hl, $d816 - res 7, [hl] - ret - -CeladonCityTextPointers: ; 19966 (6:5966) - dw CeladonCityText1 - dw CeladonCityText2 - dw CeladonCityText3 - dw CeladonCityText4 - dw CeladonCityText5 - dw CeladonCityText6 - dw CeladonCityText7 - dw CeladonCityText8 - dw CeladonCityText9 - dw CeladonCityText10 - dw CeladonCityText11 - dw PokeCenterSignText - dw CeladonCityText13 - dw CeladonCityText14 - dw CeladonCityText15 - dw CeladonCityText16 - dw CeladonCityText17 - dw CeladonCityText18 - -CeladonCityText1: ; 1998a (6:598a) - TX_FAR _CeladonCityText1 - db "@" - -CeladonCityText2: ; 1998f (6:598f) - TX_FAR _CeladonCityText2 - db "@" - -CeladonCityText3: ; 19994 (6:5994) - TX_FAR _CeladonCityText3 - db "@" - -CeladonCityText4: ; 19999 (6:5999) - TX_FAR _CeladonCityText4 - db "@" - -CeladonCityText5: ; 1999e (6:599e) - db $08 ; asm - ld a, [$d777] - bit 0, a - jr nz, .asm_7053f ; 0x199a4 - ld hl, TM41PreText - call PrintText - ld bc, (TM_41 << 8) | 1 - call GiveItem - jr c, .Success - ld hl, TM41NoRoomText - call PrintText - jr .Done -.Success - ld hl, ReceivedTM41Text - call PrintText - ld hl, $d777 - set 0, [hl] - jr .Done -.asm_7053f ; 0x199c9 - ld hl, TM41ExplanationText - call PrintText -.Done - jp TextScriptEnd - -TM41PreText: ; 199d2 (6:59d2) - TX_FAR _TM41PreText - db "@" - -ReceivedTM41Text: ; 199d7 (6:59d7) - TX_FAR _ReceivedTM41Text ; 0xa5b5a - db $0B, "@" - -TM41ExplanationText: ; 199dd (6:59dd) - TX_FAR _TM41ExplanationText - db "@" - -TM41NoRoomText: ; 199e2 (6:59e2) - TX_FAR _TM41NoRoomText - db "@" - -CeladonCityText6: ; 199e7 (6:59e7) - TX_FAR _CeladonCityText6 - db "@" - -CeladonCityText7: ; 199ec (6:59ec) - TX_FAR _CeladonCityText7 - db $08 ; asm - ld a, POLIWRATH - call PlayCry - jp TextScriptEnd - -CeladonCityText8: ; 199f9 (6:59f9) - TX_FAR _CeladonCityText8 - db "@" - -CeladonCityText9: ; 199fe (6:59fe) - TX_FAR _CeladonCityText9 - db "@" - -CeladonCityText10: ; 19a03 (6:5a03) - TX_FAR _CeladonCityText10 - db "@" - -CeladonCityText11: ; 19a08 (6:5a08) - TX_FAR _CeladonCityText11 - db "@" - -CeladonCityText13: ; 19a0d (6:5a0d) - TX_FAR _CeladonCityText13 - db "@" - -CeladonCityText14: ; 19a12 (6:5a12) - TX_FAR _CeladonCityText14 - db "@" - -CeladonCityText15: ; 19a17 (6:5a17) - TX_FAR _CeladonCityText15 - db "@" - -CeladonCityText16: ; 19a1c (6:5a1c) - TX_FAR _CeladonCityText16 - db "@" - -CeladonCityText17: ; 19a21 (6:5a21) - TX_FAR _CeladonCityText17 - db "@" - -CeladonCityText18: ; 19a26 (6:5a26) - TX_FAR _CeladonCityText18 - db "@" - -FuchsiaCityScript: ; 19a2b (6:5a2b) - jp EnableAutoTextBoxDrawing - -FuchsiaCityTextPointers: ; 19a2e (6:5a2e) - dw FuchsiaCityText1 - dw FuchsiaCityText2 - dw FuchsiaCityText3 - dw FuchsiaCityText4 - dw FuchsiaCityText5 - dw FuchsiaCityText6 - dw FuchsiaCityText7 - dw FuchsiaCityText8 - dw FuchsiaCityText9 - dw FuchsiaCityText10 - dw FuchsiaCityText11 - dw FuchsiaCityText12 - dw FuchsiaCityText13 - dw MartSignText - dw PokeCenterSignText - dw FuchsiaCityText16 - dw FuchsiaCityText17 - dw FuchsiaCityText18 - dw FuchsiaCityText19 - dw FuchsiaCityText20 - dw FuchsiaCityText21 - dw FuchsiaCityText22 - dw FuchsiaCityText23 - dw FuchsiaCityText24 - -FuchsiaCityText1: ; 19a5e (6:5a5e) - TX_FAR _FuchsiaCityText1 - db "@" - -FuchsiaCityText2: ; 19a63 (6:5a63) - TX_FAR _FuchsiaCityText2 - db "@" - -FuchsiaCityText3: ; 19a68 (6:5a68) - TX_FAR _FuchsiaCityText3 - db "@" - -FuchsiaCityText4: ; 19a6d (6:5a6d) - TX_FAR _FuchsiaCityText4 - db "@" - -FuchsiaCityText5: ; 19a72 (6:5a72) -FuchsiaCityText6: ; 19a72 (6:5a72) -FuchsiaCityText7: ; 19a72 (6:5a72) -FuchsiaCityText8: ; 19a72 (6:5a72) -FuchsiaCityText9: ; 19a72 (6:5a72) -FuchsiaCityText10: ; 19a72 (6:5a72) - TX_FAR _FuchsiaCityText5 - db "@" - -FuchsiaCityText12: ; 19a77 (6:5a77) -FuchsiaCityText11: ; 19a77 (6:5a77) - TX_FAR _FuchsiaCityText11 - db "@" - -FuchsiaCityText13: ; 19a7c (6:5a7c) - TX_FAR _FuchsiaCityText13 - db "@" - -FuchsiaCityText16: ; 19a81 (6:5a81) - TX_FAR _FuchsiaCityText16 - db "@" - -FuchsiaCityText17: ; 19a86 (6:5a86) - TX_FAR _FuchsiaCityText17 - db "@" - -FuchsiaCityText18: ; 19a8b (6:5a8b) - TX_FAR _FuchsiaCityText18 - db "@" - -FuchsiaCityText19: ; 19a90 (6:5a90) - db $08 ; asm - ld hl, FuchsiaCityChanseyText - call PrintText - ld a, CHANSEY - call DisplayPokedex - jp TextScriptEnd - -FuchsiaCityChanseyText: ; 19a9f (6:5a9f) - TX_FAR _FuchsiaCityChanseyText - db "@" - -FuchsiaCityText20: ; 19aa4 (6:5aa4) - db $08 ; asm - ld hl, FuchsiaCityVoltorbText - call PrintText - ld a, VOLTORB - call DisplayPokedex - jp TextScriptEnd - -FuchsiaCityVoltorbText: ; 19ab3 (6:5ab3) - TX_FAR _FuchsiaCityVoltorbText - db "@" - -FuchsiaCityText21: ; 19ab8 (6:5ab8) - db $08 ; asm - ld hl, FuchsiaCityKangaskhanText - call PrintText - ld a, KANGASKHAN - call DisplayPokedex - jp TextScriptEnd - -FuchsiaCityKangaskhanText: ; 19ac7 (6:5ac7) - TX_FAR _FuchsiaCityKangaskhanText - db "@" - -FuchsiaCityText22: ; 19acc (6:5acc) - db $08 ; asm - ld hl, FuchsiaCitySlowpokeText - call PrintText - ld a, SLOWPOKE - call DisplayPokedex - jp TextScriptEnd - -FuchsiaCitySlowpokeText: ; 19adb (6:5adb) - TX_FAR _FuchsiaCitySlowpokeText - db "@" - -FuchsiaCityText23: ; 19ae0 (6:5ae0) - db $08 ; asm - ld hl, FuchsiaCityLaprasText - call PrintText - ld a, LAPRAS - call DisplayPokedex - jp TextScriptEnd - -FuchsiaCityLaprasText: ; 19aef (6:5aef) - TX_FAR _FuchsiaCityLaprasText - db "@" - -FuchsiaCityText24: ; 19af4 (6:5af4) - db $08 ; asm - ld a, [$d7f6] - bit 6, a - jr nz, .asm_3b4e8 ; 0x19afa - bit 7, a - jr nz, .asm_667d5 ; 0x19afe - ld hl, UnnamedText_19b2a - call PrintText - jr .asm_4343f ; 0x19b06 -.asm_3b4e8 ; 0x19b08 - ld hl, FuchsiaCityOmanyteText - call PrintText - ld a, $62 - jr .asm_81556 ; 0x19b10 -.asm_667d5 ; 0x19b12 - ld hl, FuchsiaCityKabutoText - call PrintText - ld a, KABUTO -.asm_81556 ; 0x19b1a - call DisplayPokedex -.asm_4343f ; 0x19b1d - jp TextScriptEnd - -FuchsiaCityOmanyteText: ; 19b20 (6:5b20) - TX_FAR _FuchsiaCityOmanyteText - db "@" - -FuchsiaCityKabutoText: ; 19b25 (6:5b25) - TX_FAR _FuchsiaCityKabutoText - db "@" - -UnnamedText_19b2a: ; 19b2a (6:5b2a) - TX_FAR _UnnamedText_19b2a - db "@" - -BluesHouse_h: ; 0x19b2f id=39 - db HOUSE ; tileset - db BLUES_HOUSE_HEIGHT, BLUES_HOUSE_WIDTH ; dimensions - dw BluesHouseBlocks, BluesHouseTextPointers, BluesHouseScript - db 0 - dw BluesHouseObject - -BluesHouseScript: ; 19b3b (6:5b3b) - call EnableAutoTextBoxDrawing - ld hl,BluesHouseScriptPointers - ld a,[W_BLUESHOUSECURSCRIPT] - jp CallFunctionInTable - -BluesHouseScriptPointers: ; 19b47 (6:5b47) - dw BluesHouseScript0 - dw BluesHouseScript1 - -BluesHouseScript0: ; 19b4b (6:5b4b) - ld hl,$D74A - set 1,[hl] - - ; trigger the next script - ld a,1 - ld [W_BLUESHOUSECURSCRIPT],a - ret - -BluesHouseScript1: ; 19b56 (6:5b56) - ret - -BluesHouseTextPointers: ; 19b57 (6:5b57) - dw BluesHouseText1 - dw BluesHouseText2 - dw BluesHouseText3 - -BluesHouseText1: ; 19b5d (6:5b5d) - db 8 - ld a,[$D74A] - bit 0,a - jr nz,.GotMap - ld a,[$D74B] - bit 5,a - jr nz,.GiveMap - ld hl,DaisyInitialText - call PrintText - jr .done -.GiveMap - ld hl,DaisyOfferMapText - call PrintText - ld bc,(TOWN_MAP << 8) | 1 - call GiveItem - jr nc, .BagFull - ld a,$29 - ld [$CC4D],a - ld a,$11 - call Predef ; hide table map object - ld hl,GotMapText - call PrintText - ld hl,$D74A - set 0,[hl] - jr .done -.GotMap - ld hl,DaisyUseMapText - call PrintText - jr .done -.BagFull - ld hl,DaisyBagFullText - call PrintText -.done - jp TextScriptEnd - -DaisyInitialText: ; 19baa (6:5baa) - TX_FAR _DaisyInitialText - db "@" - -DaisyOfferMapText: ; 19baf (6:5baf) - TX_FAR _DaisyOfferMapText - db "@" - -GotMapText: ; 19bb4 (6:5bb4) - TX_FAR _GotMapText - db $11,"@" - -DaisyBagFullText: ; 19bba (6:5bba) - TX_FAR _DaisyBagFullText - db "@" - -DaisyUseMapText: ; 19bbf (6:5bbf) - TX_FAR _DaisyUseMapText - db "@" - -BluesHouseText2: ; 0x19bc4 Daisy, walking around - TX_FAR _BluesHouseText2 - db "@" - -BluesHouseText3: ; 0x19bc9 map on table - TX_FAR _BluesHouseText3 - db "@" - -BluesHouseObject: ; 19bce (6:5bce) - db $0A ; border tile - - db 2 ; warps - db 7,2,1,$FF - db 7,3,1,$FF - - db 0 ; signs - - db 3 ; people - db $11,4+3,4+2,$FF,$D3,1 ; Daisy, sitting by map - db $11,4+4,4+6,$FE,1,ITEM|2,0 ; map on table - db $41,4+3,4+3,$FF,$FF,ITEM|3,0 ; Daisy, walking around - - ; warp-to - EVENT_DISP BLUES_HOUSE_WIDTH, 7, 2 - EVENT_DISP BLUES_HOUSE_WIDTH, 7, 3 +INCLUDE "data/mapObjects/blueshouse.asm" BluesHouseBlocks: ; 19bf6 (6:5bf6) INCBIN "maps/blueshouse.blk" -VermilionHouse3_h: ; 0x19c06 to 0x19c12 (12 bytes) (bank=6) (id=196) - db HOUSE ; tileset - db VERMILION_HOUSE_3_HEIGHT, VERMILION_HOUSE_3_WIDTH ; dimensions (y, x) - dw VermilionHouse3Blocks, VermilionHouse3TextPointers, VermilionHouse3Script ; blocks, texts, scripts - db $00 ; connections - dw VermilionHouse3Object ; objects - -VermilionHouse3Script: ; 19c12 (6:5c12) - jp EnableAutoTextBoxDrawing - -VermilionHouse3TextPointers: ; 19c15 (6:5c15) - dw VermilionHouse3Text1 - -VermilionHouse3Text1: ; 19c17 (6:5c17) - db $08 ; asm - ld a, $4 - ld [wWhichTrade], a - ld a, $54 - call Predef - jp TextScriptEnd - -VermilionHouse3Object: ; 0x19c25 (size=26) - db $a ; border tile +INCLUDE "data/mapHeaders/vermilionhouse3.asm" - db $2 ; warps - db $7, $2, $7, $ff - db $7, $3, $7, $ff +INCLUDE "scripts/vermilionhouse3.asm" - db $0 ; signs - - db $1 ; people - db SPRITE_LITTLE_GIRL, $5 + 4, $3 + 4, $ff, $d1, $1 ; person - - ; warp-to - EVENT_DISP VERMILION_HOUSE_3_WIDTH, $7, $2 - EVENT_DISP VERMILION_HOUSE_3_WIDTH, $7, $3 +INCLUDE "data/mapObjects/vermilionhouse3.asm" VermilionHouse3Blocks: ; 19c3f (6:5c3f) INCBIN "maps/vermilionhouse3.blk" -IndigoPlateauLobby_h: ; 0x19c4f to 0x19c5b (12 bytes) (bank=6) (id=174) - db MART ; tileset - db INDIGO_PLATEAU_LOBBY_HEIGHT, INDIGO_PLATEAU_LOBBY_WIDTH ; dimensions (y, x) - dw IndigoPlateauLobbyBlocks, IndigoPlateauLobbyTextPointers, IndigoPlateauLobbyScript ; blocks, texts, scripts - db $00 ; connections - dw IndigoPlateauLobbyObject ; objects +INCLUDE "data/mapHeaders/indigoplateaulobby.asm" -IndigoPlateauLobbyScript: ; 19c5b (6:5c5b) - call Func_22fa - call EnableAutoTextBoxDrawing - ld hl, $d126 - bit 6, [hl] - res 6, [hl] - ret z - ld hl, $d869 - res 7, [hl] - ld hl, $d734 - bit 1, [hl] - res 1, [hl] - ret z - ld hl, $d863 - xor a - ld [hli], a - ld [hli], a - ld [hli], a - ld [hl], a - ret - -IndigoPlateauLobbyTextPointers: ; 19c7f (6:5c7f) - dw IndigoPlateauLobbyText1 - dw IndigoPlateauLobbyText2 - dw IndigoPlateauLobbyText3 - dw IndigoPlateauLobbyText4 - dw IndigoPlateauLobbyText5 - -IndigoPlateauLobbyText1: ; 19c89 (6:5c89) - db $ff - -IndigoPlateauLobbyText2: ; 19c8a (6:5c8a) - TX_FAR _IndigoPlateauLobbyText1 - db "@" +INCLUDE "scripts/indigoplateaulobby.asm" -IndigoPlateauLobbyText3: ; 19c8f (6:5c8f) - TX_FAR _IndigoPlateauLobbyText3 - db "@" - -IndigoPlateauLobbyText5: ; 19c94 (6:5c94) - db $f6 - -IndigoPlateauLobbyObject: ; 0x19c95 (size=58) - db $0 ; border tile - - db $3 ; warps - db $b, $7, $0, $ff - db $b, $8, $1, $ff - db $0, $8, $0, LORELEIS_ROOM - - db $0 ; signs - - db $5 ; people - db SPRITE_NURSE, $5 + 4, $7 + 4, $ff, $d0, $1 ; person - db SPRITE_GYM_HELPER, $9 + 4, $4 + 4, $ff, $d3, $2 ; person - db SPRITE_LASS, $1 + 4, $5 + 4, $ff, $d0, $3 ; person - db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $4 ; person - db SPRITE_CABLE_CLUB_WOMAN, $6 + 4, $d + 4, $ff, $d0, $5 ; person - - ; warp-to - EVENT_DISP INDIGO_PLATEAU_LOBBY_WIDTH, $b, $7 - EVENT_DISP INDIGO_PLATEAU_LOBBY_WIDTH, $b, $8 - EVENT_DISP INDIGO_PLATEAU_LOBBY_WIDTH, $0, $8 ; LORELEIS_ROOM +INCLUDE "data/mapObjects/indigoplateaulobby.asm" IndigoPlateauLobbyBlocks: ; 19ccf (6:5ccf) INCBIN "maps/indigoplateaulobby.blk" -SilphCo4_h: ; 0x19cff to 0x19d0b (12 bytes) (bank=6) (id=209) - db FACILITY ; tileset - db SILPH_CO_4F_HEIGHT, SILPH_CO_4F_WIDTH ; dimensions (y, x) - dw SilphCo4Blocks, SilphCo4TextPointers, SilphCo4Script ; blocks, texts, scripts - db $00 ; connections - dw SilphCo4Object ; objects - -SilphCo4Script: ; 19d0b (6:5d0b) - call SilphCo4Script_19d21 - call EnableAutoTextBoxDrawing - ld hl, SilphCo4TrainerHeaders - ld de, SilphCo4ScriptPointers - ld a, [W_SILPHCO4CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_SILPHCO4CURSCRIPT], a - ret - -SilphCo4Script_19d21: ; 19d21 (6:5d21) - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - ret z - ld hl, SilphCo4Data19d58 - call SilphCo4Script_19d5d - call SilphCo4Script_19d89 - ld a, [$d82a] - bit 0, a - jr nz, .asm_19d48 - push af - ld a, $54 - ld [$d09f], a - ld bc, $0602 - ld a, $17 - call Predef - pop af -.asm_19d48 - bit 1, a - ret nz - ld a, $54 - ld [$d09f], a - ld bc, $0406 - ld a, $17 - jp Predef - -SilphCo4Data19d58: ; 19d58 (6:5d58) - db $06, $02, $04, $06, $ff +INCLUDE "data/mapHeaders/silphco4.asm" -SilphCo4Script_19d5d: ; 19d5d (6:5d5d) - push hl - ld hl, $d73f - ld a, [hli] - ld b, a - ld a, [hl] - ld c, a - xor a - ld [$ffe0], a - pop hl -.asm_19d69 - ld a, [hli] - cp $ff - jr z, .asm_19d85 ; 0x19d6c $17 - push hl - ld hl, $ffe0 - inc [hl] - pop hl - cp b - jr z, .asm_19d7a ; 0x19d75 $3 - inc hl - jr .asm_19d69 ; 0x19d78 $ef -.asm_19d7a - ld a, [hli] - cp c - jr nz, .asm_19d69 ; 0x19d7c $eb - ld hl, $d73f - xor a - ld [hli], a - ld [hl], a - ret -.asm_19d85 - xor a - ld [$ffe0], a - ret - -SilphCo4Script_19d89: ; 19d89 (6:5d89) - ld hl, $d82a - ld a, [$ffe0] - and a - ret z - cp $1 - jr nz, .asm_19d97 ; 0x19d92 $3 - set 0, [hl] - ret -.asm_19d97 - set 1, [hl] - ret - -SilphCo4ScriptPointers: ; 19d9a (6:5d9a) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -SilphCo4TextPointers: ; 19da0 (6:5da0) - dw SilphCo4Text1 - dw SilphCo4Text2 - dw SilphCo4Text3 - dw SilphCo4Text4 - dw Predef5CText - dw Predef5CText - dw Predef5CText - -SilphCo4TrainerHeaders: ; 19dae (6:5dae) -SilphCo4TrainerHeader0: ; 19dae (6:5dae) - db $2 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d829 ; flag's byte - dw SilphCo4BattleText2 ; 0x5df4 TextBeforeBattle - dw SilphCo4AfterBattleText2 ; 0x5dfe TextAfterBattle - dw SilphCo4EndBattleText2 ; 0x5df9 TextEndBattle - dw SilphCo4EndBattleText2 ; 0x5df9 TextEndBattle - -SilphCo4TrainerHeader2: ; 19dba (6:5dba) - db $3 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d829 ; flag's byte - dw SilphCo4BattleText3 ; 0x5e0d TextBeforeBattle - dw SilphCo4AfterBattleText3 ; 0x5e17 TextAfterBattle - dw SilphCo4EndBattleText3 ; 0x5e12 TextEndBattle - dw SilphCo4EndBattleText3 ; 0x5e12 TextEndBattle - -SilphCo4TrainerHeader3: ; 19dc6 (6:5dc6) - db $4 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d829 ; flag's byte - dw SilphCo4BattleText4 ; 0x5e26 TextBeforeBattle - dw SilphCo4AfterBattleText4 ; 0x5e30 TextAfterBattle - dw SilphCo4EndBattleText4 ; 0x5e2b TextEndBattle - dw SilphCo4EndBattleText4 ; 0x5e2b TextEndBattle - - db $ff - -SilphCo4Text1: ; 19dd3 (6:5dd3) - db $08 ; asm - ld hl, UnnamedText_19de0 ; $5de0 - ld de, UnnamedText_19de5 ; $5de5 - call SilphCo6Script_1a22f - jp TextScriptEnd - -UnnamedText_19de0: ; 19de0 (6:5de0) - TX_FAR _UnnamedText_19de0 - db "@" - -UnnamedText_19de5: ; 19de5 (6:5de5) - TX_FAR _UnnamedText_19de5 - db "@" +INCLUDE "scripts/silphco4.asm" -SilphCo4Text2: ; 19dea (6:5dea) - db $08 ; asm - ld hl, SilphCo4TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -SilphCo4BattleText2: ; 19df4 (6:5df4) - TX_FAR _SilphCo4BattleText2 - db "@" - -SilphCo4EndBattleText2: ; 19df9 (6:5df9) - TX_FAR _SilphCo4EndBattleText2 - db "@" - -SilphCo4AfterBattleText2: ; 19dfe (6:5dfe) - TX_FAR _SilphCo4AfterBattleText2 - db "@" - -SilphCo4Text3: ; 19e03 (6:5e03) - db $08 ; asm - ld hl, SilphCo4TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -SilphCo4BattleText3: ; 19e0d (6:5e0d) - TX_FAR _SilphCo4BattleText3 - db "@" - -SilphCo4EndBattleText3: ; 19e12 (6:5e12) - TX_FAR _SilphCo4EndBattleText3 - db "@" - -SilphCo4AfterBattleText3: ; 19e17 (6:5e17) - TX_FAR _SilphCo4AfterBattleText3 - db "@" - -SilphCo4Text4: ; 19e1c (6:5e1c) - db $08 ; asm - ld hl, SilphCo4TrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -SilphCo4BattleText4: ; 19e26 (6:5e26) - TX_FAR _SilphCo4BattleText4 - db "@" - -SilphCo4EndBattleText4: ; 19e2b (6:5e2b) - TX_FAR _SilphCo4EndBattleText4 - db "@" - -SilphCo4AfterBattleText4: ; 19e30 (6:5e30) - TX_FAR _SilphCo4AfterBattleText4 - db "@" - -SilphCo4Object: ; 0x19e35 (size=111) - db $2e ; border tile - - db $7 ; warps - db $0, $18, $1, SILPH_CO_3F - db $0, $1a, $1, SILPH_CO_5F - db $0, $14, $0, SILPH_CO_ELEVATOR - db $7, $b, $3, SILPH_CO_10F - db $3, $11, $3, SILPH_CO_6F - db $f, $3, $4, SILPH_CO_10F - db $b, $11, $5, SILPH_CO_10F - - db $0 ; signs - - db $7 ; people - db SPRITE_LAPRAS_GIVER, $2 + 4, $6 + 4, $ff, $ff, $1 ; person - db SPRITE_ROCKET, $e + 4, $9 + 4, $ff, $d3, $42, ROCKET + $C8, $1a ; trainer - db SPRITE_OAK_AIDE, $6 + 4, $e + 4, $ff, $d2, $43, SCIENTIST + $C8, $5 ; trainer - db SPRITE_ROCKET, $a + 4, $1a + 4, $ff, $d1, $44, ROCKET + $C8, $1b ; trainer - db SPRITE_BALL, $9 + 4, $3 + 4, $ff, $ff, $85, FULL_HEAL ; item - db SPRITE_BALL, $7 + 4, $4 + 4, $ff, $ff, $86, MAX_REVIVE ; item - db SPRITE_BALL, $8 + 4, $5 + 4, $ff, $ff, $87, ESCAPE_ROPE ; item - - ; warp-to - EVENT_DISP SILPH_CO_4F_WIDTH, $0, $18 ; SILPH_CO_3F - EVENT_DISP SILPH_CO_4F_WIDTH, $0, $1a ; SILPH_CO_5F - EVENT_DISP SILPH_CO_4F_WIDTH, $0, $14 ; SILPH_CO_ELEVATOR - EVENT_DISP SILPH_CO_4F_WIDTH, $7, $b ; SILPH_CO_10F - EVENT_DISP SILPH_CO_4F_WIDTH, $3, $11 ; SILPH_CO_6F - EVENT_DISP SILPH_CO_4F_WIDTH, $f, $3 ; SILPH_CO_10F - EVENT_DISP SILPH_CO_4F_WIDTH, $b, $11 ; SILPH_CO_10F +INCLUDE "data/mapObjects/silphco4.asm" SilphCo4Blocks: ; 19ea4 (6:5ea4) INCBIN "maps/silphco4.blk" -SilphCo5_h: ; 0x19f2b to 0x19f37 (12 bytes) (bank=6) (id=210) - db FACILITY ; tileset - db SILPH_CO_5F_HEIGHT, SILPH_CO_5F_WIDTH ; dimensions (y, x) - dw SilphCo5Blocks, SilphCo5TextPointers, SilphCo5Script ; blocks, texts, scripts - db $00 ; connections - dw SilphCo5Object ; objects - -SilphCo5Script: ; 19f37 (6:5f37) - call SilphCo5Script_19f4d - call EnableAutoTextBoxDrawing - ld hl, SilphCo5TrainerHeaders - ld de, SilphCo5ScriptPointers - ld a, [W_SILPHCO5CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_SILPHCO5CURSCRIPT], a - ret - -SilphCo5Script_19f4d: ; 19f4d (6:5f4d) - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - ret z - ld hl, SilphCo5Coords - call SilphCo4Script_19d5d - call SilphCo5Script_19f9e - ld a, [$d82c] - bit 0, a - jr nz, .asm_19f74 ; 0x19f63 $f - push af - ld a, $5f - ld [$d09f], a - ld bc, $0203 - ld a, $17 - call Predef - pop af -.asm_19f74 - bit 1, a - jr nz, .asm_19f87 ; 0x19f76 $f - push af - ld a, $5f - ld [$d09f], a - ld bc, $0603 - ld a, $17 - call Predef - pop af -.asm_19f87 - bit 2, a - ret nz - ld a, $5f - ld [$d09f], a - ld bc, $0507 - ld a, $17 - jp Predef - -SilphCo5Coords: ; 19f97 (6:5f97) ; coords? - db $02, $03, $06, $03, $05, $07, $ff +INCLUDE "data/mapHeaders/silphco5.asm" -SilphCo5Script_19f9e: ; 19f9e (6:5f9e) - ld hl, $d82c - ld a, [$ffe0] - and a - ret z - cp $1 - jr nz, .asm_19fac ; 0x19fa7 $3 - set 0, [hl] - ret -.asm_19fac - cp $2 - jr nz, .asm_19fb3 ; 0x19fae $3 - set 1, [hl] - ret -.asm_19fb3 - set 2, [hl] - ret +INCLUDE "scripts/silphco5.asm" -SilphCo5ScriptPointers: ; 19fb6 (6:5fb6) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -SilphCo5TextPointers: ; 19fbc (6:5fbc) - dw SilphCo5Text1 - dw SilphCo5Text2 - dw SilphCo5Text3 - dw SilphCo5Text4 - dw SilphCo5Text5 - dw Predef5CText - dw Predef5CText - dw Predef5CText - dw SilphCo5Text9 - dw SilphCo5Text10 - dw SilphCo5Text11 - -SilphCo5TrainerHeaders: ; 19fd2 (6:5fd2) -Silphco5TrainerHeader0: ; 19fd2 (6:5fd2) - db $2 ; flag's bit - db ($1 << 4) ; trainer's view range - dw $d82b ; flag's byte - dw SilphCo5BattleText2 ; 0x6024 TextBeforeBattle - dw SilphCo5AfterBattleText2 ; 0x602e TextAfterBattle - dw SilphCo5EndBattleText2 ; 0x6029 TextEndBattle - dw SilphCo5EndBattleText2 ; 0x6029 TextEndBattle - -Silphco5TrainerHeader2: ; 19fde (6:5fde) - db $3 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d82b ; flag's byte - dw SilphCo5BattleText3 ; 0x603d TextBeforeBattle - dw SilphCo5AfterBattleText3 ; 0x6047 TextAfterBattle - dw SilphCo5EndBattleText3 ; 0x6042 TextEndBattle - dw SilphCo5EndBattleText3 ; 0x6042 TextEndBattle - -Silphco5TrainerHeader3: ; 19fea (6:5fea) - db $4 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d82b ; flag's byte - dw SilphCo5BattleText4 ; 0x6056 TextBeforeBattle - dw SilphCo5AfterBattleText4 ; 0x6060 TextAfterBattle - dw SilphCo5EndBattleText4 ; 0x605b TextEndBattle - dw SilphCo5EndBattleText4 ; 0x605b TextEndBattle - -Silphco5TrainerHeader4: ; 19ff6 (6:5ff6) - db $5 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d82b ; flag's byte - dw SilphCo5BattleText5 ; 0x606f TextBeforeBattle - dw SilphCo5AfterBattleText5 ; 0x6079 TextAfterBattle - dw SilphCo5EndBattleText5 ; 0x6074 TextEndBattle - dw SilphCo5EndBattleText5 ; 0x6074 TextEndBattle - - db $ff - -SilphCo5Text1: ; 1a003 (6:6003) - db $08 ; asm - ld hl, UnnamedText_1a010 ; $6010 - ld de, UnnamedText_1a015 ; $6015 - call SilphCo6Script_1a22f - jp TextScriptEnd - -UnnamedText_1a010: ; 1a010 (6:6010) - TX_FAR _UnnamedText_1a010 - db "@" - -UnnamedText_1a015: ; 1a015 (6:6015) - TX_FAR _UnnamedText_1a015 - db "@" - -SilphCo5Text2: ; 1a01a (6:601a) - db $08 ; asm - ld hl, Silphco5TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -SilphCo5BattleText2: ; 1a024 (6:6024) - TX_FAR _SilphCo5BattleText2 - db "@" - -SilphCo5EndBattleText2: ; 1a029 (6:6029) - TX_FAR _SilphCo5EndBattleText2 - db "@" - -SilphCo5AfterBattleText2: ; 1a02e (6:602e) - TX_FAR _SilphCo5AfterBattleText2 - db "@" - -SilphCo5Text3: ; 1a033 (6:6033) - db $08 ; asm - ld hl, Silphco5TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -SilphCo5BattleText3: ; 1a03d (6:603d) - TX_FAR _SilphCo5BattleText3 - db "@" - -SilphCo5EndBattleText3: ; 1a042 (6:6042) - TX_FAR _SilphCo5EndBattleText3 - db "@" - -SilphCo5AfterBattleText3: ; 1a047 (6:6047) - TX_FAR _SilphCo5AfterBattleText3 - db "@" - -SilphCo5Text4: ; 1a04c (6:604c) - db $08 ; asm - ld hl, Silphco5TrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -SilphCo5BattleText4: ; 1a056 (6:6056) - TX_FAR _SilphCo5BattleText4 - db "@" - -SilphCo5EndBattleText4: ; 1a05b (6:605b) - TX_FAR _SilphCo5EndBattleText4 - db "@" - -SilphCo5AfterBattleText4: ; 1a060 (6:6060) - TX_FAR _SilphCo5AfterBattleText4 - db "@" - -SilphCo5Text5: ; 1a065 (6:6065) - db $08 ; asm - ld hl, Silphco5TrainerHeader4 - call TalkToTrainer - jp TextScriptEnd - -SilphCo5BattleText5: ; 1a06f (6:606f) - TX_FAR _SilphCo5BattleText5 - db "@" - -SilphCo5EndBattleText5: ; 1a074 (6:6074) - TX_FAR _SilphCo5EndBattleText5 - db "@" - -SilphCo5AfterBattleText5: ; 1a079 (6:6079) - TX_FAR _SilphCo5AfterBattleText5 - db "@" - -SilphCo5Text9: ; 1a07e (6:607e) - TX_FAR _SilphCo5Text9 - db "@" - -SilphCo5Text10: ; 1a083 (6:6083) - TX_FAR _SilphCo5Text10 - db "@" - -SilphCo5Text11: ; 1a088 (6:6088) - TX_FAR _SilphCo5Text11 - db "@" - -SilphCo5Object: ; 0x1a08d (size=137) - db $2e ; border tile - - db $7 ; warps - db $0, $18, $1, SILPH_CO_6F - db $0, $1a, $1, SILPH_CO_4F - db $0, $14, $0, SILPH_CO_ELEVATOR - db $3, $1b, $5, SILPH_CO_7F - db $f, $9, $4, SILPH_CO_9F - db $5, $b, $4, SILPH_CO_3F - db $f, $3, $5, SILPH_CO_3F - - db $0 ; signs - - db $b ; people - db SPRITE_LAPRAS_GIVER, $9 + 4, $d + 4, $ff, $ff, $1 ; person - db SPRITE_ROCKET, $10 + 4, $8 + 4, $ff, $d3, $42, ROCKET + $C8, $1c ; trainer - db SPRITE_OAK_AIDE, $3 + 4, $8 + 4, $ff, $d3, $43, SCIENTIST + $C8, $6 ; trainer - db SPRITE_ROCKER, $a + 4, $12 + 4, $ff, $d1, $44, JUGGLER + $C8, $1 ; trainer - db SPRITE_ROCKET, $4 + 4, $1c + 4, $ff, $d1, $45, ROCKET + $C8, $1d ; trainer - db SPRITE_BALL, $d + 4, $2 + 4, $ff, $ff, $86, TM_09 ; item - db SPRITE_BALL, $6 + 4, $4 + 4, $ff, $ff, $87, PROTEIN ; item - db SPRITE_BALL, $10 + 4, $15 + 4, $ff, $ff, $88, CARD_KEY ; item - db SPRITE_CLIPBOARD, $c + 4, $16 + 4, $ff, $ff, $9 ; person - db SPRITE_CLIPBOARD, $a + 4, $19 + 4, $ff, $ff, $a ; person - db SPRITE_CLIPBOARD, $6 + 4, $18 + 4, $ff, $ff, $b ; person - - ; warp-to - EVENT_DISP SILPH_CO_5F_WIDTH, $0, $18 ; SILPH_CO_6F - EVENT_DISP SILPH_CO_5F_WIDTH, $0, $1a ; SILPH_CO_4F - EVENT_DISP SILPH_CO_5F_WIDTH, $0, $14 ; SILPH_CO_ELEVATOR - EVENT_DISP SILPH_CO_5F_WIDTH, $3, $1b ; SILPH_CO_7F - EVENT_DISP SILPH_CO_5F_WIDTH, $f, $9 ; SILPH_CO_9F - EVENT_DISP SILPH_CO_5F_WIDTH, $5, $b ; SILPH_CO_3F - EVENT_DISP SILPH_CO_5F_WIDTH, $f, $3 ; SILPH_CO_3F +INCLUDE "data/mapObjects/silphco5.asm" SilphCo5Blocks: ; 1a116 (6:6116) INCBIN "maps/silphco5.blk" -SilphCo6_h: ; 0x1a19d to 0x1a1a9 (12 bytes) (bank=6) (id=211) - db FACILITY ; tileset - db SILPH_CO_6F_HEIGHT, SILPH_CO_6F_WIDTH ; dimensions (y, x) - dw SilphCo6Blocks, SilphCo6TextPointers, SilphCo6Script ; blocks, texts, scripts - db $00 ; connections - dw SilphCo6Object ; objects +INCLUDE "data/mapHeaders/silphco6.asm" -SilphCo6Script: ; 1a1a9 (6:61a9) - call SilphCo6Script_1a1bf - call EnableAutoTextBoxDrawing - ld hl, SilphCo6TrainerHeaders - ld de, SilphCo6ScriptPointers - ld a, [W_SILPHCO6CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_SILPHCO6CURSCRIPT], a - ret +INCLUDE "scripts/silphco6.asm" -SilphCo6Script_1a1bf: ; 1a1bf (6:61bf) - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - ret z - ld hl, SilphCo6Coords1 - call SilphCo4Script_19d5d - call SilphCo6Script_1a1e6 - ld a, [$d82e] - bit 7, a - ret nz - ld a, $5f - ld [$d09f], a - ld bc, $0602 - ld a, $17 - jp Predef - -SilphCo6Coords1: ; 1a1e3 (6:61e3) - db $06, $02 - db $ff - -SilphCo6Script_1a1e6: ; 1a1e6 (6:61e6) - ld a, [$ffe0] - and a - ret z - ld hl, $d82e - set 7, [hl] - ret - -SilphCo6ScriptPointers: ; 1a1f0 (6:61f0) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -SilphCo6TextPointers: ; 1a1f6 (6:61f6) - dw SilphCo6Text1 - dw SilphCo6Text2 - dw SilphCo6Text3 - dw SilphCo6Text4 - dw SilphCo6Text5 - dw SilphCo6Text6 - dw SilphCo6Text7 - dw SilphCo6Text8 - dw Predef5CText - dw Predef5CText - -SilphCo6TrainerHeaders: ; 1a20a (6:620a) -SilphCo6TrainerHeader0: ; 1a20a (6:620a) - db $6 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d82d ; flag's byte - dw SilphCo6BattleText2 ; 0x62ba TextBeforeBattle - dw SilphCo6AfterBattleText2 ; 0x62c4 TextAfterBattle - dw SilphCo6EndBattleText2 ; 0x62bf TextEndBattle - dw SilphCo6EndBattleText2 ; 0x62bf TextEndBattle - -SilphCo6TrainerHeader2: ; 1a216 (6:6216) - db $7 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d82d ; flag's byte - dw SilphCo6BattleText3 ; 0x62d3 TextBeforeBattle - dw SilphCo6AfterBattleText3 ; 0x62dd TextAfterBattle - dw SilphCo6EndBattleText3 ; 0x62d8 TextEndBattle - dw SilphCo6EndBattleText3 ; 0x62d8 TextEndBattle - -SilphCo6TrainerHeader3: ; 1a222 (6:6222) - db $8 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d82d ; flag's byte - dw SilphCo6BattleText4 ; 0x62ec TextBeforeBattle - dw SilphCo6AfterBattleText4 ; 0x62f6 TextAfterBattle - dw SilphCo6EndBattleText4 ; 0x62f1 TextEndBattle - dw SilphCo6EndBattleText4 ; 0x62f1 TextEndBattle - - db $ff - -SilphCo6Script_1a22f: ; 1a22f (6:622f) - ld a, [$d838] - bit 7, a - jr nz, .asm_1a238 ; 0x1a234 $2 - jr .asm_1a23a ; 0x1a236 $2 -.asm_1a238 - ld h, d - ld l, e -.asm_1a23a - jp PrintText - -SilphCo6Text1: ; 1a23d (6:623d) - db $08 ; asm - ld hl, UnnamedText_1a24a - ld de, UnnamedText_1a24f - call SilphCo6Script_1a22f - jp TextScriptEnd - -UnnamedText_1a24a: ; 1a24a (6:624a) - TX_FAR _UnnamedText_1a24a - db "@" - -UnnamedText_1a24f: ; 1a24f (6:624f) - TX_FAR _UnnamedText_1a24f - db "@" - -SilphCo6Text2: ; 1a254 (6:6254) - db $08 ; asm - ld hl, UnnamedText_1a261 - ld de, UnnamedText_1a266 - call SilphCo6Script_1a22f - jp TextScriptEnd - -UnnamedText_1a261: ; 1a261 (6:6261) - TX_FAR _UnnamedText_1a261 - db "@" - -UnnamedText_1a266: ; 1a266 (6:6266) - TX_FAR _UnnamedText_1a266 - db "@" - -SilphCo6Text3: ; 1a26b (6:626b) - db $08 ; asm - ld hl, UnnamedText_1a278 - ld de, UnnamedText_1a27d - call SilphCo6Script_1a22f - jp TextScriptEnd - -UnnamedText_1a278: ; 1a278 (6:6278) - TX_FAR _UnnamedText_1a278 - db "@" - -UnnamedText_1a27d: ; 1a27d (6:627d) - TX_FAR _UnnamedText_1a27d - db "@" - -SilphCo6Text4: ; 1a282 (6:6282) - db $08 ; asm - ld hl, UnnamedText_1a28f - ld de, UnnamedText_1a294 - call SilphCo6Script_1a22f - jp TextScriptEnd - -UnnamedText_1a28f: ; 1a28f (6:628f) - TX_FAR _UnnamedText_1a28f - db "@" - -UnnamedText_1a294: ; 1a294 (6:6294) - TX_FAR _UnnamedText_1a294 - db "@" - -SilphCo6Text5: ; 1a299 (6:6299) - db $08 ; asm - ld hl, UnnamedText_1a2a6 - ld de, UnnamedText_1a2ab - call SilphCo6Script_1a22f - jp TextScriptEnd - -UnnamedText_1a2a6: ; 1a2a6 (6:62a6) - TX_FAR _UnnamedText_1a2a6 - db "@" - -UnnamedText_1a2ab: ; 1a2ab (6:62ab) - TX_FAR _UnnamedText_1a2ab - db "@" - -SilphCo6Text6: ; 1a2b0 (6:62b0) - db $08 ; asm - ld hl, SilphCo6TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -SilphCo6BattleText2: ; 1a2ba (6:62ba) - TX_FAR _SilphCo6BattleText2 - db "@" - -SilphCo6EndBattleText2: ; 1a2bf (6:62bf) - TX_FAR _SilphCo6EndBattleText2 - db "@" - -SilphCo6AfterBattleText2: ; 1a2c4 (6:62c4) - TX_FAR _SilphCo6AfterBattleText2 - db "@" - -SilphCo6Text7: ; 1a2c9 (6:62c9) - db $08 ; asm - ld hl, SilphCo6TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -SilphCo6BattleText3: ; 1a2d3 (6:62d3) - TX_FAR _SilphCo6BattleText3 - db "@" - -SilphCo6EndBattleText3: ; 1a2d8 (6:62d8) - TX_FAR _SilphCo6EndBattleText3 - db "@" - -SilphCo6AfterBattleText3: ; 1a2dd (6:62dd) - TX_FAR _SilphCo6AfterBattleText3 - db "@" - -SilphCo6Text8: ; 1a2e2 (6:62e2) - db $08 ; asm - ld hl, SilphCo6TrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -SilphCo6BattleText4: ; 1a2ec (6:62ec) - TX_FAR _SilphCo6BattleText4 - db "@" - -SilphCo6EndBattleText4: ; 1a2f1 (6:62f1) - TX_FAR _SilphCo6EndBattleText4 - db "@" - -SilphCo6AfterBattleText4: ; 1a2f6 (6:62f6) - TX_FAR _SilphCo6AfterBattleText4 - db "@" - -SilphCo6Object: ; 0x1a2fb (size=112) - db $2e ; border tile - - db $5 ; warps - db $0, $10, $1, SILPH_CO_7F - db $0, $e, $0, SILPH_CO_5F - db $0, $12, $0, SILPH_CO_ELEVATOR - db $3, $3, $4, SILPH_CO_4F - db $3, $17, $6, SILPH_CO_2F - - db $0 ; signs - - db $a ; people - db SPRITE_LAPRAS_GIVER, $6 + 4, $a + 4, $ff, $ff, $1 ; person - db SPRITE_LAPRAS_GIVER, $6 + 4, $14 + 4, $ff, $ff, $2 ; person - db SPRITE_ERIKA, $6 + 4, $15 + 4, $ff, $d0, $3 ; person - db SPRITE_ERIKA, $a + 4, $b + 4, $ff, $d3, $4 ; person - db SPRITE_LAPRAS_GIVER, $d + 4, $12 + 4, $ff, $d1, $5 ; person - db SPRITE_ROCKET, $3 + 4, $11 + 4, $ff, $d3, $46, ROCKET + $C8, $1e ; trainer - db SPRITE_OAK_AIDE, $8 + 4, $7 + 4, $ff, $d0, $47, SCIENTIST + $C8, $7 ; trainer - db SPRITE_ROCKET, $f + 4, $e + 4, $ff, $d2, $48, ROCKET + $C8, $1f ; trainer - db SPRITE_BALL, $c + 4, $3 + 4, $ff, $ff, $89, HP_UP ; item - db SPRITE_BALL, $f + 4, $2 + 4, $ff, $ff, $8a, X_ACCURACY ; item - - ; warp-to - EVENT_DISP SILPH_CO_6F_WIDTH, $0, $10 ; SILPH_CO_7F - EVENT_DISP SILPH_CO_6F_WIDTH, $0, $e ; SILPH_CO_5F - EVENT_DISP SILPH_CO_6F_WIDTH, $0, $12 ; SILPH_CO_ELEVATOR - EVENT_DISP SILPH_CO_6F_WIDTH, $3, $3 ; SILPH_CO_4F - EVENT_DISP SILPH_CO_6F_WIDTH, $3, $17 ; SILPH_CO_2F +INCLUDE "data/mapObjects/silphco6.asm" SilphCo6Blocks: ; 1a36b (6:636b) INCBIN "maps/silphco6.blk" @@ -37129,7 +27988,7 @@ Func_1a672: ; 1a672 (6:6672) ld [$ccd4], a ld a, $2 ld [$cd38], a - call Func_1a6f0 + call LoadHoppingShadowOAM ld a, (SFX_02_4e - SFX_Headers_02) / 3 call PlaySound ret @@ -37146,7 +28005,7 @@ LedgeTiles: ; 1a6cf (6:66cf) db $0C,$39,$0D,$10 db $FF -Func_1a6f0: ; 1a6f0 (6:66f0) +LoadHoppingShadowOAM: ; 1a6f0 (6:66f0) ld hl, $8ff0 ld de, LedgeHoppingShadow ; $6708 ld bc, (BANK(LedgeHoppingShadow) << 8) + $01 @@ -37166,69 +28025,16 @@ LedgeHoppingShadowOAM: ; 1a710 (6:6710) SECTION "bank7",ROMX,BANK[$7] -CinnabarIsland_h: ; 0x1c000 to 0x1c022 (34 bytes) (bank=7) (id=8) - db OVERWORLD ; tileset - db CINNABAR_ISLAND_HEIGHT, CINNABAR_ISLAND_WIDTH ; dimensions (y, x) - dw CinnabarIslandBlocks, CinnabarIslandTextPointers, CinnabarIslandScript ; blocks, texts, scripts - db NORTH | EAST ; connections - NORTH_MAP_CONNECTION ROUTE_21, ROUTE_21_WIDTH, ROUTE_21_HEIGHT, 0, 0, ROUTE_21_WIDTH, Route21Blocks - EAST_MAP_CONNECTION ROUTE_20, ROUTE_20_WIDTH, 0, 0, ROUTE_20_HEIGHT, Route20Blocks, CINNABAR_ISLAND_WIDTH - dw CinnabarIslandObject ; objects - -CinnabarIslandObject: ; 0x1c022 (size=71) - db $43 ; border tile - - db $5 ; warps - db $3, $6, $1, MANSION_1 - db $3, $12, $0, CINNABAR_GYM - db $9, $6, $0, CINNABAR_LAB_1 - db $b, $b, $0, CINNABAR_POKECENTER - db $b, $f, $0, CINNABAR_MART - - db $5 ; signs - db $5, $9, $3 ; CinnabarIslandText3 - db $b, $10, $4 ; MartSignText - db $b, $c, $5 ; PokeCenterSignText - db $b, $9, $6 ; CinnabarIslandText6 - db $3, $d, $7 ; CinnabarIslandText7 - - db $2 ; people - db SPRITE_GIRL, $5 + 4, $c + 4, $fe, $2, $1 ; person - db SPRITE_GAMBLER, $6 + 4, $e + 4, $ff, $ff, $2 ; person - - ; warp-to - EVENT_DISP CINNABAR_ISLAND_WIDTH, $3, $6 ; MANSION_1 - EVENT_DISP CINNABAR_ISLAND_WIDTH, $3, $12 ; CINNABAR_GYM - EVENT_DISP CINNABAR_ISLAND_WIDTH, $9, $6 ; CINNABAR_LAB_1 - EVENT_DISP CINNABAR_ISLAND_WIDTH, $b, $b ; CINNABAR_POKECENTER - EVENT_DISP CINNABAR_ISLAND_WIDTH, $b, $f ; CINNABAR_MART +INCLUDE "data/mapHeaders/cinnabarisland.asm" + +INCLUDE "data/mapObjects/cinnabarisland.asm" CinnabarIslandBlocks: ; 1c069 (7:4069) INCBIN "maps/cinnabarisland.blk" -Route1_h: ; 0x1c0c3 to 0x1c0e5 (34 bytes) (bank=7) (id=12) - db OVERWORLD ; tileset - db ROUTE_1_HEIGHT, ROUTE_1_WIDTH ; dimensions (y, x) - dw Route1Blocks, Route1TextPointers, Route1Script ; blocks, texts, scripts - db NORTH | SOUTH ; connections - NORTH_MAP_CONNECTION VIRIDIAN_CITY, VIRIDIAN_CITY_WIDTH, VIRIDIAN_CITY_HEIGHT, -3, 2, VIRIDIAN_CITY_WIDTH - 4, ViridianCityBlocks - SOUTH_MAP_CONNECTION PALLET_TOWN, PALLET_TOWN_WIDTH, 0, 0, PALLET_TOWN_WIDTH, PalletTownBlocks, ROUTE_1_WIDTH, ROUTE_1_HEIGHT - dw Route1Object ; objects - -Route1Object: ; 0x1c0e5 (size=19) - db $b ; border tile - - db $0 ; warps +INCLUDE "data/mapHeaders/route1.asm" - db $1 ; signs - db $1b, $9, $3 ; Route1Text3 - - db $2 ; people - db SPRITE_BUG_CATCHER, $18 + 4, $5 + 4, $fe, $1, $1 ; person - db SPRITE_BUG_CATCHER, $d + 4, $f + 4, $fe, $2, $2 ; person - - ; warp-to (unused) - EVENT_DISP $4, $7, $2 +INCLUDE "data/mapObjects/route1.asm" Route1Blocks: ; 1c0fc (7:40fc) INCBIN "maps/route1.blk" @@ -37264,204 +28070,14 @@ DiglettsCaveEntranceRoute11Blocks: ; 1c20e (7:420e) DiglettsCaveRoute2Blocks: ; 0x1c20e size=16 INCBIN "maps/diglettscaveroute2.blk" -MonsterNames: ; 1c21e (7:421e) - db "RHYDON@@@@" - db "KANGASKHAN" - db "NIDORAN♂@@" - db "CLEFAIRY@@" - db "SPEAROW@@@" - db "VOLTORB@@@" - db "NIDOKING@@" - db "SLOWBRO@@@" - db "IVYSAUR@@@" - db "EXEGGUTOR@" - db "LICKITUNG@" - db "EXEGGCUTE@" - db "GRIMER@@@@" - db "GENGAR@@@@" - db "NIDORAN♀@@" - db "NIDOQUEEN@" - db "CUBONE@@@@" - db "RHYHORN@@@" - db "LAPRAS@@@@" - db "ARCANINE@@" - db "MEW@@@@@@@" - db "GYARADOS@@" - db "SHELLDER@@" - db "TENTACOOL@" - db "GASTLY@@@@" - db "SCYTHER@@@" - db "STARYU@@@@" - db "BLASTOISE@" - db "PINSIR@@@@" - db "TANGELA@@@" - db "MISSINGNO." - db "MISSINGNO." - db "GROWLITHE@" - db "ONIX@@@@@@" - db "FEAROW@@@@" - db "PIDGEY@@@@" - db "SLOWPOKE@@" - db "KADABRA@@@" - db "GRAVELER@@" - db "CHANSEY@@@" - db "MACHOKE@@@" - db "MR.MIME@@@" - db "HITMONLEE@" - db "HITMONCHAN" - db "ARBOK@@@@@" - db "PARASECT@@" - db "PSYDUCK@@@" - db "DROWZEE@@@" - db "GOLEM@@@@@" - db "MISSINGNO." - db "MAGMAR@@@@" - db "MISSINGNO." - db "ELECTABUZZ" - db "MAGNETON@@" - db "KOFFING@@@" - db "MISSINGNO." - db "MANKEY@@@@" - db "SEEL@@@@@@" - db "DIGLETT@@@" - db "TAUROS@@@@" - db "MISSINGNO." - db "MISSINGNO." - db "MISSINGNO." - db "FARFETCH'D" - db "VENONAT@@@" - db "DRAGONITE@" - db "MISSINGNO." - db "MISSINGNO." - db "MISSINGNO." - db "DODUO@@@@@" - db "POLIWAG@@@" - db "JYNX@@@@@@" - db "MOLTRES@@@" - db "ARTICUNO@@" - db "ZAPDOS@@@@" - db "DITTO@@@@@" - db "MEOWTH@@@@" - db "KRABBY@@@@" - db "MISSINGNO." - db "MISSINGNO." - db "MISSINGNO." - db "VULPIX@@@@" - db "NINETALES@" - db "PIKACHU@@@" - db "RAICHU@@@@" - db "MISSINGNO." - db "MISSINGNO." - db "DRATINI@@@" - db "DRAGONAIR@" - db "KABUTO@@@@" - db "KABUTOPS@@" - db "HORSEA@@@@" - db "SEADRA@@@@" - db "MISSINGNO." - db "MISSINGNO." - db "SANDSHREW@" - db "SANDSLASH@" - db "OMANYTE@@@" - db "OMASTAR@@@" - db "JIGGLYPUFF" - db "WIGGLYTUFF" - db "EEVEE@@@@@" - db "FLAREON@@@" - db "JOLTEON@@@" - db "VAPOREON@@" - db "MACHOP@@@@" - db "ZUBAT@@@@@" - db "EKANS@@@@@" - db "PARAS@@@@@" - db "POLIWHIRL@" - db "POLIWRATH@" - db "WEEDLE@@@@" - db "KAKUNA@@@@" - db "BEEDRILL@@" - db "MISSINGNO." - db "DODRIO@@@@" - db "PRIMEAPE@@" - db "DUGTRIO@@@" - db "VENOMOTH@@" - db "DEWGONG@@@" - db "MISSINGNO." - db "MISSINGNO." - db "CATERPIE@@" - db "METAPOD@@@" - db "BUTTERFREE" - db "MACHAMP@@@" - db "MISSINGNO." - db "GOLDUCK@@@" - db "HYPNO@@@@@" - db "GOLBAT@@@@" - db "MEWTWO@@@@" - db "SNORLAX@@@" - db "MAGIKARP@@" - db "MISSINGNO." - db "MISSINGNO." - db "MUK@@@@@@@" - db "MISSINGNO." - db "KINGLER@@@" - db "CLOYSTER@@" - db "MISSINGNO." - db "ELECTRODE@" - db "CLEFABLE@@" - db "WEEZING@@@" - db "PERSIAN@@@" - db "MAROWAK@@@" - db "MISSINGNO." - db "HAUNTER@@@" - db "ABRA@@@@@@" - db "ALAKAZAM@@" - db "PIDGEOTTO@" - db "PIDGEOT@@@" - db "STARMIE@@@" - db "BULBASAUR@" - db "VENUSAUR@@" - db "TENTACRUEL" - db "MISSINGNO." - db "GOLDEEN@@@" - db "SEAKING@@@" - db "MISSINGNO." - db "MISSINGNO." - db "MISSINGNO." - db "MISSINGNO." - db "PONYTA@@@@" - db "RAPIDASH@@" - db "RATTATA@@@" - db "RATICATE@@" - db "NIDORINO@@" - db "NIDORINA@@" - db "GEODUDE@@@" - db "PORYGON@@@" - db "AERODACTYL" - db "MISSINGNO." - db "MAGNEMITE@" - db "MISSINGNO." - db "MISSINGNO." - db "CHARMANDER" - db "SQUIRTLE@@" - db "CHARMELEON" - db "WARTORTLE@" - db "CHARIZARD@" - db "MISSINGNO." - db "MISSINGNO." - db "MISSINGNO." - db "MISSINGNO." - db "ODDISH@@@@" - db "GLOOM@@@@@" - db "VILEPLUME@" - db "BELLSPROUT" - db "WEEPINBELL" - db "VICTREEBEL" +INCLUDE "text/monster_names.asm" Func_1c98a: ; 1c98a (7:498a) call ClearScreen call GoPAL_SET_CF1C call LoadFontTilePatterns call LoadTextBoxTilePatterns - ld hl, UnnamedText_1c9c1 ; $49c1 + ld hl, ClearSaveDataText call PrintText FuncCoord 14, 7 ; $c43a ld hl, Coord @@ -37477,12 +28093,12 @@ Func_1c98a: ; 1c98a (7:498a) callba Func_73b6a jp InitGame -UnnamedText_1c9c1: ; 1c9c1 (7:49c1) - TX_FAR _UnnamedText_1c9c1 +ClearSaveDataText: ; 1c9c1 (7:49c1) + TX_FAR _ClearSaveDataText db "@" Func_1c9c6: ; 1c9c6 (7:49c6) - ld hl, UnnamedText_1ca14 ; $4a14 + ld hl, WhichFloorText call PrintText ld hl, $cf7b ld a, l @@ -37526,4137 +28142,232 @@ Func_1ca0d: ; 1ca0d (7:4a0d) ld [hli], a ret -UnnamedText_1ca14: ; 1ca14 (7:4a14) - TX_FAR _UnnamedText_1ca14 - db "@" - -CinnabarIslandScript: ; 1ca19 (7:4a19) - call EnableAutoTextBoxDrawing - ld hl, $d126 - set 5, [hl] - ld hl, $d796 - res 0, [hl] - ld hl, $d7a3 - res 1, [hl] - ld hl, CinnabarIslandScriptPointers - ld a, [W_CINNABARISLANDCURSCRIPT] - jp CallFunctionInTable - -CinnabarIslandScriptPointers: ; 1ca34 (7:4a34) - dw CinnabarIslandScript0 - dw CinnabarIslandScript1 - -CinnabarIslandScript0: ; 1ca38 (7:4a38) - ld b, SECRET_KEY - call IsItemInBag - ret nz - ld a, [$d361] - cp $4 - ret nz - ld a, [$d362] - cp $12 - ret nz - ld a, $8 - ld [$d528], a - ld a, $8 - ld [$ff8c], a - call DisplayTextID - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - ld a, $1 - ld [$cd38], a - ld a, $80 - ld [$ccd3], a - call Func_3486 - xor a - ld [$c109], a - ld [wJoypadForbiddenButtonsMask], a - ld a, $1 - ld [W_CINNABARISLANDCURSCRIPT], a - ret - -CinnabarIslandScript1: ; 1ca73 (7:4a73) - ld a, [$cd38] - and a - ret nz - call Delay3 - ld a, $0 - ld [W_CINNABARISLANDCURSCRIPT], a - ret - -CinnabarIslandTextPointers: ; 1ca81 (7:4a81) - dw CinnabarIslandText1 - dw CinnabarIslandText2 - dw CinnabarIslandText3 - dw MartSignText - dw PokeCenterSignText - dw CinnabarIslandText6 - dw CinnabarIslandText7 - dw CinnabarIslandText8 - -CinnabarIslandText8: ; 1ca91 (7:4a91) - TX_FAR _CinnabarIslandText8 - db "@" - -CinnabarIslandText1: ; 1ca96 (7:4a96) - TX_FAR _CinnabarIslandText1 - db "@" - -CinnabarIslandText2: ; 1ca9b (7:4a9b) - TX_FAR _CinnabarIslandText2 - db "@" - -CinnabarIslandText3: ; 1caa0 (7:4aa0) - TX_FAR _CinnabarIslandText3 - db "@" - -CinnabarIslandText6: ; 1caa5 (7:4aa5) - TX_FAR _CinnabarIslandText6 - db "@" - -CinnabarIslandText7: ; 1caaa (7:4aaa) - TX_FAR _CinnabarIslandText7 - db "@" - -Route1Script: ; 1caaf (7:4aaf) - jp EnableAutoTextBoxDrawing - -Route1TextPointers: ; 1cab2 (7:4ab2) - dw Route1Text1 - dw Route1Text2 - dw Route1Text3 - -Route1Text1: ; 1cab8 (7:4ab8) - db $08 ; asm - ld hl, $d7bf - bit 0, [hl] - set 0, [hl] - jr nz, .asm_02840 ; 0x1cac0 - ld hl, Route1ViridianMartSampleText - call PrintText - ld bc, (POTION << 8) | 1 - call GiveItem - jr nc, .BagFull - ld hl, UnnamedText_1cae8 ; $4ae8 - jr .asm_46d43 ; 0x1cad3 -.BagFull - ld hl, UnnamedText_1caf3 ; $4af3 - jr .asm_46d43 ; 0x1cad8 -.asm_02840 ; 0x1cada - ld hl, UnnamedText_1caee ; $4aee -.asm_46d43 ; 0x1cadd - call PrintText - jp TextScriptEnd - -Route1ViridianMartSampleText: ; 1cae3 (7:4ae3) - TX_FAR _Route1ViridianMartSampleText - db "@" - -UnnamedText_1cae8: ; 1cae8 (7:4ae8) - TX_FAR _UnnamedText_1cae8 - db $0b,"@" - -UnnamedText_1caee: ; 1caee (7:4aee) - TX_FAR _UnnamedText_1caee - db "@" - -UnnamedText_1caf3: ; 1caf3 (7:4af3) - TX_FAR _UnnamedText_1caf3 - db "@" - -Route1Text2: ; 1caf8 (7:4af8) - TX_FAR _Route1Text2 - db "@" - -Route1Text3: ; 1cafd (7:4afd) - TX_FAR _Route1Text3 - db "@" - -OaksLab_h: ; 0x1cb02 to 0x1cb0e (12 bytes) (bank=7) (id=40) - db DOJO ; tileset - db OAKS_LAB_HEIGHT, OAKS_LAB_WIDTH ; dimensions (y, x) - dw OaksLabBlocks, OaksLabTextPointers, OaksLabScript ; blocks, texts, scripts - db $00 ; connections - dw OaksLabObject ; objects - -OaksLabScript: ; 1cb0e (7:4b0e) - ld a, [$d74b] - bit 6, a - call nz, OaksLabScript_1d076 - ld a, $1 - ld [$cf0c], a - xor a - ld [$cc3c], a - ld hl, OaksLabScriptPointers - ld a, [W_OAKSLABCURSCRIPT] - jp CallFunctionInTable - -OaksLabScriptPointers: ; 1cb28 (7:4b28) - dw OaksLabScript0 - dw OaksLabScript1 - dw OaksLabScript2 - dw OaksLabScript3 - dw OaksLabScript4 - dw OaksLabScript5 - dw OaksLabScript6 - dw OaksLabScript7 - dw OaksLabScript8 - dw OaksLabScript9 - dw OaksLabScript10 - dw OaksLabScript11 - dw OaksLabScript12 - dw OaksLabScript13 - dw OaksLabScript14 - dw OaksLabScript15 - dw OaksLabScript16 - dw OaksLabScript17 - dw OaksLabScript18 - -OaksLabScript0: ; 1cb4e (7:4b4e) - ld a, [$d74b] - bit 7, a - ret z - ld a, [$cf10] - and a - ret nz - ld a, $31 - ld [$cc4d], a - ld a, $15 - call Predef - ld hl, $d72e - res 4, [hl] - - ld a, $1 - ld [W_OAKSLABCURSCRIPT], a - ret - -OaksLabScript1: ; 1cb6e (7:4b6e) - ld a, $8 - ld [$ff8c], a - ld de, OakEntryMovement - call MoveSprite - - ld a, $2 - ld [W_OAKSLABCURSCRIPT], a - ret - -OakEntryMovement: ; 1cb7e (7:4b7e) - db $40,$40,$40,$FF - -OaksLabScript2: ; 1cb82 (7:4b82) - ld a, [$d730] - bit 0, a - ret nz - ld a, $31 - ld [$cc4d], a - ld a, $11 - call Predef - ld a, $2e - ld [$cc4d], a - ld a, $15 - call Predef - - ld a, $3 - ld [W_OAKSLABCURSCRIPT], a - ret - -OaksLabScript3: ; 1cba2 (7:4ba2) - call Delay3 - ld hl, $ccd3 - ld de, PlayerEntryMovementRLE - call DecodeRLEList - dec a - ld [$cd38], a - call Func_3486 - ld a, $1 - ld [$ff8c], a - xor a - ld [$ff8d], a - call Func_34a6 ; face object - ld a, $5 - ld [$ff8c], a - xor a - ld [$ff8d], a - call Func_34a6 ; face object - - ld a, $4 - ld [W_OAKSLABCURSCRIPT], a - ret - -PlayerEntryMovementRLE: ; 1cbcf (7:4bcf) - db $40, $8, $ff - -OaksLabScript4: ; 1cbd2 (7:4bd2) - ld a, [$cd38] - and a - ret nz - ld hl, $d747 - set 0, [hl] - ld hl, $d74b - set 0, [hl] - ld a, $1 - ld [$ff8c], a - ld a, $4 - ld [$ff8d], a - call Func_34a6 ; face object - call UpdateSprites - ld hl, W_FLAGS_D733 - res 1, [hl] - call Func_2307 - - ld a, $5 - ld [W_OAKSLABCURSCRIPT], a - ret - -OaksLabScript5: ; 1cbfd (7:4bfd) - ld a, $fc - ld [wJoypadForbiddenButtonsMask], a - ld a, $11 - ld [$ff8c], a - call DisplayTextID - call Delay3 - ld a, $12 - ld [$ff8c], a - call DisplayTextID - call Delay3 - ld a, $13 - ld [$ff8c], a - call DisplayTextID - call Delay3 - ld a, $14 - ld [$ff8c], a - call DisplayTextID - ld hl, $d74b - set 1, [hl] - xor a - ld [wJoypadForbiddenButtonsMask], a - - ld a, $6 - ld [W_OAKSLABCURSCRIPT], a - ret - -OaksLabScript6: ; 1cc36 (7:4c36) - ld a, [W_YCOORD] - cp $6 - ret nz - ld a, $5 - ld [$ff8c], a - xor a - ld [$ff8d], a - call Func_34a6 ; face object - ld a, $1 - ld [$ff8c], a - xor a - ld [$ff8d], a - call Func_34a6 ; face object - call UpdateSprites - ld a, $c - ld [$ff8c], a - call DisplayTextID - ld a, $1 - ld [$cd38], a - ld a, $40 - ld [$ccd3], a - call Func_3486 - ld a, $8 - ld [$d528], a - - ld a, $7 - ld [W_OAKSLABCURSCRIPT], a - ret - -OaksLabScript7: ; 1cc72 (7:4c72) - ld a, [$cd38] - and a - ret nz - call Delay3 - - ld a, $6 - ld [W_OAKSLABCURSCRIPT], a - ret - -OaksLabScript8: ; 1cc80 (7:4c80) - ld a, [W_PLAYERSTARTER] - cp CHARMANDER - jr z, .Charmander ; 0x1cc85 $6 - cp SQUIRTLE - jr z, .Squirtle ; 0x1cc89 $1d - jr .Bulbasaur ; 0x1cc8b $38 -.Charmander - ld de, .MiddleBallMovement1 - ld a, [W_YCOORD] - cp $4 ; is the player standing below the table? - jr z, .asm_1ccf3 ; 0x1cc95 $5c - ld de, .MiddleBallMovement2 - jr .asm_1ccf3 ; 0x1cc9a $57 - -.MiddleBallMovement1 - db 0,0,$C0,$C0,$C0,$40,$FF -.MiddleBallMovement2 - db 0,$C0,$C0,$C0,$FF - -.Squirtle - ld de, .RightBallMovement1 - ld a, [W_YCOORD] - cp $4 ; is the player standing below the table? - jr z, .asm_1ccf3 ; 0x1ccb0 $41 - ld de, .RightBallMovement2 - jr .asm_1ccf3 ; 0x1ccb5 $3c - -.RightBallMovement1 - db 0,0,$C0,$C0,$C0,$C0,$40,$FF -.RightBallMovement2 - db 0,$C0,$C0,$C0,$C0,$FF - -.Bulbasaur - ld de, .LeftBallMovement1 - ld a, [W_XCOORD] - cp $9 ; is the player standing to the right of the table? - jr nz, .asm_1ccf3 ; 0x1cccd $24 - push hl - ld a, $1 - ld [$ff8c], a - ld a, $4 - ld [$ff8b], a - call Func_34fc - push hl - ld [hl], $4c - inc hl - inc hl - ld [hl], $0 - pop hl - inc h - ld [hl], $8 - inc hl - ld [hl], $9 - ld de, .LeftBallMovement2 ; the rival is not currently onscreen, so account for that - pop hl - jr .asm_1ccf3 ; 0x1cced $4 - -.LeftBallMovement1 - db $00,$C0 ; not yet terminated! -.LeftBallMovement2 - db $C0,$FF - -.asm_1ccf3 - ld a, $1 - ld [$ff8c], a - call MoveSprite - - ld a, $9 - ld [W_OAKSLABCURSCRIPT], a - ret - -OaksLabScript9: ; 1cd00 (7:4d00) - ld a, [$d730] - bit 0, a - ret nz - ld a, $fc - ld [wJoypadForbiddenButtonsMask], a - ld a, $1 - ld [$ff8c], a - ld a, $4 - ld [$ff8d], a - call Func_34a6 ; face object - ld a, $d - ld [$ff8c], a - call DisplayTextID - ld a, [$cd3e] - cp $2 - jr nz, .asm_1cd28 ; 0x1cd22 $4 - ld a, $2b - jr .asm_1cd32 ; 0x1cd26 $a -.asm_1cd28 - cp $3 - jr nz, .asm_1cd30 ; 0x1cd2a $4 - ld a, $2c - jr .asm_1cd32 ; 0x1cd2e $2 -.asm_1cd30 - ld a, $2d -.asm_1cd32 - ld [$cc4d], a - ld a, $11 - call Predef - call Delay3 - ld a, [$cd3d] - ld [W_RIVALSTARTER], a - ld [$cf91], a - ld [$d11e], a - call GetMonName - ld a, $1 - ld [$ff8c], a - ld a, $4 - ld [$ff8d], a - call Func_34a6 ; face object - ld a, $e - ld [$ff8c], a - call DisplayTextID - ld hl, $d74b - set 2, [hl] - xor a - ld [wJoypadForbiddenButtonsMask], a - - ld a, $a - ld [W_OAKSLABCURSCRIPT], a - ret - -OaksLabScript10: ; 1cd6d (7:4d6d) - ld a, [W_YCOORD] - cp $6 - ret nz - ld a, $1 - ld [$ff8c], a - xor a - ld [$ff8d], a - call Func_34a6 ; face object - ld a, $8 - ld [$d528], a - ld c, BANK(Music_MeetRival) - ld a, MUSIC_MEET_RIVAL - call PlayMusic ; play music - ld a, $f - ld [$ff8c], a - call DisplayTextID - ld a, $1 - ld [$ff9b], a - ld a, $1 - swap a - ld [$ff95], a - ld a, $22 - call Predef - ld a, [$ff95] - dec a - ld [$ff95], a - ld a, $20 - call Predef - ld de, $cc97 - ld a, $1 - ld [$ff8c], a - call MoveSprite - - ld a, $b - ld [W_OAKSLABCURSCRIPT], a - ret - -OaksLabScript11: ; 1cdb9 (7:4db9) - ld a, [$d730] - bit 0, a - ret nz - - ; define which team rival uses, and fight it - ld a, SONY1 + $C8 - ld [W_CUROPPONENT], a - ld a, [W_RIVALSTARTER] - cp SQUIRTLE - jr nz, .NotSquirtle ; 0x1cdc9 $4 - ld a, $1 - jr .done ; 0x1cdcd $a -.NotSquirtle - cp BULBASAUR - jr nz, .Charmander ; 0x1cdd1 $4 - ld a, $2 - jr .done ; 0x1cdd5 $2 -.Charmander - ld a, $3 -.done - ld [W_TRAINERNO], a - ld a, $1 - ld [$cf13], a - call Func_32ef - ld hl, UnnamedText_1d3be - ld de, UnnamedText_1d3c3 - call PreBattleSaveRegisters - ld hl, $d72d - set 6, [hl] - set 7, [hl] - xor a - ld [wJoypadForbiddenButtonsMask], a - ld a, $8 - ld [$d528], a - ld a, $c - ld [W_OAKSLABCURSCRIPT], a - ret - -OaksLabScript12: ; 1ce03 (7:4e03) - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - ld a, $8 - ld [$d528], a - call UpdateSprites - ld a, $1 - ld [$cf13], a - call Func_32f9 - ld a, $1 - ld [$ff8c], a - xor a - ld [$ff8d], a - call Func_34a6 ; face object - ld a, $7 - call Predef - ld hl, $d74b - set 3, [hl] - - ld a, $d - ld [W_OAKSLABCURSCRIPT], a - ret - -OaksLabScript13: ; 1ce32 (7:4e32) - ld c, $14 - call DelayFrames - ld a, $10 - ld [$ff8c], a - call DisplayTextID - callba Music_RivalAlternateStart - ld a, $1 - ld [$ff8c], a - ld de, .RivalExitMovement - call MoveSprite - ld a, [W_XCOORD] - cp $4 - ; move left or right depending on where the player is standing - jr nz, .asm_1ce5b ; 0x1ce55 $4 - ld a, $c0 - jr .asm_1ce5d ; 0x1ce59 $2 -.asm_1ce5b - ld a, $80 -.asm_1ce5d - ld [$cc5b], a - - ld a, $e - ld [W_OAKSLABCURSCRIPT], a - ret - -.RivalExitMovement - db $E0,$00,$00,$00,$00,$00,$FF - -OaksLabScript14: ; 1ce6d (7:4e6d) - ld a, [$d730] - bit 0, a - jr nz, .asm_1ce8c ; 0x1ce72 $18 - ld a, $2a - ld [$cc4d], a - ld a, $11 - call Predef - xor a - ld [wJoypadForbiddenButtonsMask], a - call Func_2307 ; reset to map music - ld a, $12 - ld [W_OAKSLABCURSCRIPT], a - jr .done ; 0x1ce8a $23 -.asm_1ce8c - ld a, [$cf0f] - cp $5 - jr nz, .asm_1cea8 ; 0x1ce91 $15 - ld a, [$d362] - cp $4 - jr nz, .asm_1cea1 ; 0x1ce98 $7 - ld a, $c - ld [$c109], a - jr .done ; 0x1ce9f $e -.asm_1cea1 - ld a, $8 - ld [$c109], a - jr .done ; 0x1cea6 $7 -.asm_1cea8 - cp $4 - ret nz - xor a - ld [$c109], a -.done - ret - -OaksLabScript15: ; 1ceb0 (7:4eb0) - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - call EnableAutoTextBoxDrawing - ld a, $ff - ld [$c0ee], a - call PlaySound - callba Music_RivalAlternateStart - ld a, $15 - ld [$ff8c], a - call DisplayTextID - call OaksLabScript_1d02b - ld a, $2a - ld [$cc4d], a - ld a, $15 - call Predef - ld a, [$cd37] - ld [$d157], a - ld b, $0 - ld c, a - ld hl, $cc97 - ld a, $40 - call FillMemory - ld [hl], $ff - ld a, $1 - ld [$ff8c], a - ld de, $cc97 - call MoveSprite - - ld a, $10 - ld [W_OAKSLABCURSCRIPT], a - ret - -OaksLabScript_1cefd ; 1cefd (7:4efd) - ld a, $1 - ld [$ff8c], a - ld a, $4 - ld [$ff8d], a - call Func_34a6 ; face object - ld a, $8 - ld [$ff8c], a - xor a - ld [$ff8d], a - jp Func_34a6 ; face object - -OaksLabScript16: ; 1cf12 (7:4f12) - ld a, [$d730] - bit 0, a - ret nz - call EnableAutoTextBoxDrawing - call Func_2307 - ld a, $fc - ld [wJoypadForbiddenButtonsMask], a - call OaksLabScript_1cefd - ld a, $16 - ld [$ff8c], a - call DisplayTextID - call DelayFrame - call OaksLabScript_1cefd - ld a, $17 - ld [$ff8c], a - call DisplayTextID - call DelayFrame - call OaksLabScript_1cefd - ld a, $18 - ld [$ff8c], a - call DisplayTextID - call DelayFrame - ld a, $19 - ld [$ff8c], a - call DisplayTextID - call Delay3 - ld a, $2f - ld [$cc4d], a - ld a, $11 - call Predef - ld a, $30 - ld [$cc4d], a - ld a, $11 - call Predef - call OaksLabScript_1cefd - ld a, $1a - ld [$ff8c], a - call DisplayTextID - ld a, $1 - ld [$ff8c], a - ld a, $c - ld [$ff8d], a - call Func_34a6 ; face object - call Delay3 - ld a, $1b - ld [$ff8c], a - call DisplayTextID - ld hl, $d74b - set 5, [hl] - ld hl, $d74e - set 0, [hl] - ld a, $1 - ld [$cc4d], a - ld a, $11 - call Predef - ld a, $2 - ld [$cc4d], a - ld a, $15 - call Predef - ld a, [$d157] - ld b, $0 - ld c, a - ld hl, $cc97 - xor a - call FillMemory - ld [hl], $ff - ld a, $ff - ld [$c0ee], a - call PlaySound - callba Music_RivalAlternateStart - ld a, $1 - ld [$ff8c], a - ld de, $cc97 - call MoveSprite - - ld a, $11 - ld [W_OAKSLABCURSCRIPT], a - ret - -OaksLabScript17: ; 1cfd4 (7:4fd4) - ld a, [$d730] - bit 0, a - ret nz - call Func_2307 - ld a, $2a - ld [$cc4d], a - ld a, $11 - call Predef - ld hl, $d7eb - set 0, [hl] - res 1, [hl] - set 7, [hl] - ld a, $22 - ld [$cc4d], a - ld a, $15 - call Predef - ld a, $5 - ld [W_PALLETTOWNCURSCRIPT], a - xor a - ld [wJoypadForbiddenButtonsMask], a - - ld a, $12 - ld [W_OAKSLABCURSCRIPT], a - ret - -OaksLabScript18: ; 1d009 (7:5009) - ret - -OaksLabScript_1d00a: ; 1d00a (7:500a) - ld hl, wBagItems - ld bc, $0000 -.asm_1d010 - ld a, [hli] - cp $ff - ret z - cp OAKS_PARCEL - jr z, .GotParcel ; 0x1d016 $4 - inc hl - inc c - jr .asm_1d010 ; 0x1d01a $f4 -.GotParcel - ld hl, $d31d - ld a, c - ld [wWhichPokemon], a - ld a, $1 - ld [$cf96], a - jp RemoveItemFromInventory - -OaksLabScript_1d02b: ; 1d02b (7:502b) - ld a, $7c - ld [$ffeb], a - ld a, $8 - ld [$ffee], a - ld a, [$d361] - cp $3 - jr nz, .asm_1d045 ; 0x1d038 $b - ld a, $4 - ld [$cd37], a - ld a, $30 - ld b, $b - jr .asm_1d068 ; 0x1d043 $23 -.asm_1d045 - cp $1 - jr nz, .asm_1d054 ; 0x1d047 $b - ld a, $2 - ld [$cd37], a - ld a, $30 - ld b, $9 - jr .asm_1d068 ; 0x1d052 $14 -.asm_1d054 - ld a, $3 - ld [$cd37], a - ld b, $a - ld a, [$d362] - cp $4 - jr nz, .asm_1d066 ; 0x1d060 $4 - ld a, $40 - jr .asm_1d068 ; 0x1d064 $2 -.asm_1d066 - ld a, $20 -.asm_1d068 - ld [$ffec], a - ld a, b - ld [$ffed], a - ld a, $1 - ld [$cf13], a - call Func_32f9 - ret - -OaksLabScript_1d076: ; 1d076 (7:5076) - ld hl, OaksLabTextPointers + $36 ; $50b8 ; starts at OaksLabText28 - ld a, l - ld [W_MAPTEXTPTR], a - ld a, h - ld [W_MAPTEXTPTR+1], a - ret - -OaksLabTextPointers: ; 1d082 (7:5082) - dw OaksLabText1 - dw OaksLabText2 - dw OaksLabText3 - dw OaksLabText4 - dw OaksLabText5 - dw OaksLabText6 - dw OaksLabText7 - dw OaksLabText8 - dw OaksLabText9 - dw OaksLabText10 - dw OaksLabText11 - dw OaksLabText12 - dw OaksLabText13 - dw OaksLabText14 - dw OaksLabText15 - dw OaksLabText16 - dw OaksLabText17 - dw OaksLabText18 - dw OaksLabText19 - dw OaksLabText20 - dw OaksLabText21 - dw OaksLabText22 - dw OaksLabText23 - dw OaksLabText24 - dw OaksLabText25 - dw OaksLabText26 - dw OaksLabText27 - dw OaksLabText28 - dw OaksLabText29 - dw OaksLabText30 - dw OaksLabText31 - dw OaksLabText32 - dw OaksLabText33 - dw OaksLabText34 - dw OaksLabText35 - dw OaksLabText36 - dw OaksLabText37 - dw OaksLabText38 - -OaksLabText28: ; 1d0ce (7:50ce) -OaksLabText1: ; 1d0ce (7:50ce) - db $08 ; asm - ld a, [$d74b] - bit 0, a - jr nz, .asm_1d0de ; 0x1d0d4 - ld hl, OaksLabGaryText1 - call PrintText - jr .asm_1d0f0 ; 0x1d0dc -.asm_1d0de ; 0x1d0de - bit 2, a - jr nz, .asm_1d0ea ; 0x1d0e0 - ld hl, OaksLabText40 - call PrintText - jr .asm_1d0f0 ; 0x1d0e8 -.asm_1d0ea ; 0x1d0ea - ld hl, OaksLabText41 - call PrintText -.asm_1d0f0 ; 0x1d0f0 - jp TextScriptEnd - -OaksLabGaryText1: ; 1d0f3 (7:50f3) - TX_FAR _OaksLabGaryText1 - db "@" - -OaksLabText40: ; 1d0f8 (7:50f8) - TX_FAR _OaksLabText40 - db "@" - -OaksLabText41: ; 1d0fd (7:50fd) - TX_FAR _OaksLabText41 - db "@" - -OaksLabText29: ; 1d102 (7:5102) -OaksLabText2: ; 1d102 (7:5102) - db $8 - ld a, SQUIRTLE - ld [$cd3d], a - ld a, $3 - ld [$cd3e], a - ld a, CHARMANDER - ld b, $2 - jr OaksLabScript_1d133 ; 0x1d111 $20 - -OaksLabText30: ; 1d113 (7:5113) -OaksLabText3: ; 1d113 (7:5113) - db $8 - ld a, BULBASAUR - ld [$cd3d], a - ld a, $4 - ld [$cd3e], a - ld a, SQUIRTLE - ld b, $3 - jr OaksLabScript_1d133 ; 0x1d122 $f - -OaksLabText31: ; 1d124 (7:5124) -OaksLabText4: ; 1d124 (7:5124) - db $8 - ld a, CHARMANDER - ld [$cd3d], a - ld a, $2 - ld [$cd3e], a - ld a, BULBASAUR - ld b, $4 - -OaksLabScript_1d133: ; 1d133 (7:5133) - ld [$cf91], a - ld [$d11e], a - ld a, b - ld [$cf13], a - ld a, [$d74b] - bit 2, a - jp nz, OaksLabScript_1d22d - bit 1, a - jr nz, OaksLabScript_1d157 ; 0x1d147 $e - ld hl, OaksLabText39 - call PrintText - jp TextScriptEnd - -OaksLabText39: ; 1d152 (7:5152) - TX_FAR _OaksLabText39 - db "@" - -OaksLabScript_1d157: ; 1d157 (7:5157) - ld a, $5 - ld [$ff8c], a - ld a, $9 - ld [$ff8b], a - call Func_34fc - ld [hl], $0 - ; manually fixed some disassembler issues around here - ld a, $1 - ld [$FF8c], a - ld a, $9 - ld [$ff8b], a - call Func_34fc - ld [hl], $c - ld hl, $d730 - set 6, [hl] - ld a, $46 - call Predef - ld hl, $d730 - res 6, [hl] - call ReloadMapData - ld c, $a - call DelayFrames - ld a, [$cf13] - cp $2 - jr z, OaksLabLookAtCharmander - cp $3 - jr z, OaksLabLookAtSquirtle - jr OaksLabLookAtBulbasaur - -OaksLabLookAtCharmander ; 0x1d195 - ld hl, OaksLabCharmanderText - jr OaksLabMonChoiceMenu -OaksLabCharmanderText: ; 1d19a (7:519a) - TX_FAR _OaksLabCharmanderText ; 0x94e06 - db "@" - -OaksLabLookAtSquirtle: ; 1d19f (7:519f) - ld hl, OaksLabSquirtleText - jr OaksLabMonChoiceMenu -OaksLabSquirtleText: ; 1d1a4 (7:51a4) - TX_FAR _OaksLabSquirtleText ; 0x94e2f - db "@" - -OaksLabLookAtBulbasaur: ; 1d1a9 (7:51a9) - ld hl, OaksLabBulbasaurText - jr OaksLabMonChoiceMenu -OaksLabBulbasaurText: ; 1d1ae (7:51ae) - TX_FAR _OaksLabBulbasaurText ; 0x94e57 - db "@" - -OaksLabMonChoiceMenu: ; 1d1b3 (7:51b3) - call PrintText - ld a, $1 - ld [$cc3c], a - call YesNoChoice ; yes/no menu - ld a, [$cc26] - and a - jr nz, OaksLabMonChoiceEnd - ld a, [$cf91] - ld [$d717], a - ld [$d11e], a - call GetMonName - ld a, [$cf13] - cp $2 - jr nz, asm_1d1db ; 0x1d1d5 $4 - ld a, $2b - jr asm_1d1e5 ; 0x1d1d9 $a -asm_1d1db: ; 1d1db (7:51db) - cp $3 - jr nz, asm_1d1e3 ; 0x1d1dd $4 - ld a, $2c - jr asm_1d1e5 ; 0x1d1e1 $2 -asm_1d1e3: ; 1d1e3 (7:51e3) - ld a, $2d -asm_1d1e5: ; 1d1e5 (7:51e5) - ld [$cc4d], a - ld a, $11 - call Predef - ld a, $1 - ld [$cc3c], a - ld hl, OaksLabMonEnergeticText - call PrintText - ld hl, OaksLabReceivedMonText - call PrintText - xor a - ld [$cc49], a - ld a, $5 - ld [$d127], a - ld a, [$cf91] - ld [$d11e], a - call AddPokemonToParty - ld hl, $d72e - set 3, [hl] - ld a, $fc - ld [wJoypadForbiddenButtonsMask], a - ld a, $8 - ld [W_OAKSLABCURSCRIPT], a -OaksLabMonChoiceEnd: ; 1d21f (7:521f) - jp TextScriptEnd - -OaksLabMonEnergeticText: ; 1d222 (7:5222) - TX_FAR _OaksLabMonEnergeticText - db "@" - -OaksLabReceivedMonText: ; 1d227 (7:5227) - TX_FAR _OaksLabReceivedMonText ; 0x94ea0 - db $11, "@" - -OaksLabScript_1d22d: ; 1d22d (7:522d) - ld a, $5 - ld [$ff8c], a - ld a, $9 - ld [$ff8b], a - call Func_34fc - ld [hl], $0 - ld hl, OaksLabLastMonText ; $5243 - call PrintText - jp TextScriptEnd - -OaksLabLastMonText: ; 1d243 (7:5243) - TX_FAR _OaksLabLastMonText - db "@" - -OaksLabText32: ; 1d248 (7:5248) -OaksLabText5: ; 1d248 (7:5248) - db $08 ; asm - ld a, [$d747] - bit 6, a - jr nz, .asm_50e81 ; 0x1d24e - ld hl, $d2f7 - ld b, $13 - call CountSetBits - ld a, [$d11e] - cp $2 - jr c, .asm_b28b0 ; 0x1d25d - ld a, [$d74b] - bit 5, a - jr z, .asm_b28b0 ; 0x1d264 -.asm_50e81 ; 0x1d266 - ld hl, UnnamedText_1d31d - call PrintText - ld a, $1 - ld [$cc3c], a - ld a, $56 - call Predef - jp .asm_0f042 -.asm_b28b0 ; 0x1d279 - ld b,POKE_BALL - call IsItemInBag - jr nz, .asm_17c30 ; 0x1d27e - ld a, [$d7eb] - bit 5, a - jr nz, .asm_f1adc ; 0x1d285 - ld a, [$d74b] - bit 5, a - jr nz, .asm_333a2 ; 0x1d28c - bit 3, a - jr nz, .asm_76269 ; 0x1d290 - ld a, [$d72e] - bit 3, a - jr nz, .asm_4a5e0 ; 0x1d297 - ld hl, UnnamedText_1d2f0 - call PrintText - jr .asm_0f042 ; 0x1d29f -.asm_4a5e0 ; 0x1d2a1 - ld hl, UnnamedText_1d2f5 - call PrintText - jr .asm_0f042 ; 0x1d2a7 -.asm_76269 ; 0x1d2a9 - ld b, OAKS_PARCEL - call IsItemInBag - jr nz, .asm_a8fcf ; 0x1d2ae - ld hl, UnnamedText_1d2fa - call PrintText - jr .asm_0f042 ; 0x1d2b6 -.asm_a8fcf ; 0x1d2b8 - ld hl, OaksLabDeliverParcelText - call PrintText - call OaksLabScript_1d00a - ld a, $f - ld [W_OAKSLABCURSCRIPT], a - jr .asm_0f042 ; 0x1d2c6 -.asm_333a2 ; 0x1d2c8 - ld hl, OaksLabAroundWorldText - call PrintText - jr .asm_0f042 ; 0x1d2ce -.asm_f1adc ; 0x1d2d0 - ld hl, $d74b - bit 4, [hl] - set 4, [hl] - jr nz, .asm_17c30 ; 0x1d2d7 - ld bc, (POKE_BALL << 8) | 5 - call GiveItem - ld hl, OaksLabGivePokeballsText - call PrintText - jr .asm_0f042 ; 0x1d2e5 -.asm_17c30 ; 0x1d2e7 - ld hl, OaksLabPleaseVisitText - call PrintText -.asm_0f042 ; 0x1d2ed - jp TextScriptEnd - -UnnamedText_1d2f0: ; 1d2f0 (7:52f0) - TX_FAR _UnnamedText_1d2f0 - db "@" - -UnnamedText_1d2f5: ; 1d2f5 (7:52f5) - TX_FAR _UnnamedText_1d2f5 - db "@" - -UnnamedText_1d2fa: ; 1d2fa (7:52fa) - TX_FAR _UnnamedText_1d2fa - db "@" - -OaksLabDeliverParcelText: ; 1d2ff (7:52ff) - TX_FAR _OaksLabDeliverParcelText1 ; 0x94f69 - db $11 - TX_FAR _OaksLabDeliverParcelText2 - db "@" - -OaksLabAroundWorldText: ; 1d309 (7:5309) - TX_FAR _OaksLabAroundWorldText - db "@" - -OaksLabGivePokeballsText: ; 1d30e (7:530e) - TX_FAR _OaksLabGivePokeballsText1 ; 0x9506d - db $11 - TX_FAR _OaksLabGivePokeballsText2 - db "@" - -OaksLabPleaseVisitText: ; 1d318 (7:5318) - TX_FAR _OaksLabPleaseVisitText - db "@" - -UnnamedText_1d31d: ; 1d31d (7:531d) - TX_FAR _UnnamedText_1d31d - db "@" - -OaksLabText34: ; 1d322 (7:5322) -OaksLabText33: ; 1d322 (7:5322) -OaksLabText7: ; 1d322 (7:5322) -OaksLabText6: ; 1d322 (7:5322) - db $08 ; asm - ld hl, UnnamedText_1d32c - call PrintText - jp TextScriptEnd - -UnnamedText_1d32c: ; 1d32c (7:532c) - TX_FAR _UnnamedText_1d32c - db "@" - -OaksLabText35: ; 1d331 (7:5331) -OaksLabText8: ; 1d331 (7:5331) - TX_FAR _OaksLabText8 - db "@" - -OaksLabText36: ; 1d336 (7:5336) -OaksLabText9: ; 1d336 (7:5336) - db $08 ; asm - ld hl, UnnamedText_1d340 - call PrintText - jp TextScriptEnd - -UnnamedText_1d340: ; 1d340 (7:5340) - TX_FAR _UnnamedText_1d340 - db "@" - -OaksLabText17: ; 1d345 (7:5345) - db $8 - ld hl, OaksLabRivalWaitingText - call PrintText - jp TextScriptEnd - -OaksLabRivalWaitingText: ; 1d34f (7:534f) - TX_FAR _OaksLabRivalWaitingText - db "@" - -OaksLabText18: ; 1d354 (7:5354) - db $8 - ld hl, OaksLabChooseMonText - call PrintText - jp TextScriptEnd - -OaksLabChooseMonText: ; 1d35e (7:535e) - TX_FAR _OaksLabChooseMonText - db "@" - -OaksLabText19: ; 1d363 (7:5363) - db $8 - ld hl, OaksLabRivalInterjectionText - call PrintText - jp TextScriptEnd - -OaksLabRivalInterjectionText: ; 1d36d (7:536d) - TX_FAR _OaksLabRivalInterjectionText - db "@" - -OaksLabText20: ; 1d372 (7:5372) - db $8 - ld hl, OaksLabBePatientText - call PrintText - jp TextScriptEnd - -OaksLabBePatientText: ; 1d37c (7:537c) - TX_FAR _OaksLabBePatientText - db "@" - -OaksLabText12: ; 1d381 (7:5381) - db $8 - ld hl, OaksLabLeavingText - call PrintText - jp TextScriptEnd - -OaksLabLeavingText: ; 1d38b (7:538b) - TX_FAR _OaksLabLeavingText - db "@" - -OaksLabText13: ; 1d390 (7:5390) - db $8 - ld hl, OaksLabRivalPickingMonText - call PrintText - jp TextScriptEnd - -OaksLabRivalPickingMonText: ; 1d39a (7:539a) - TX_FAR _OaksLabRivalPickingMonText - db "@" - -OaksLabText14: ; 1d39f (7:539f) - db $8 - ld hl, OaksLabRivalReceivedMonText - call PrintText - jp TextScriptEnd - -OaksLabRivalReceivedMonText: ; 1d3a9 (7:53a9) - TX_FAR _OaksLabRivalReceivedMonText ; 0x95461 - db $11, "@" - -OaksLabText15: ; 1d3af (7:53af) - db $8 - ld hl, OaksLabRivalChallengeText - call PrintText - jp TextScriptEnd - -OaksLabRivalChallengeText: ; 1d3b9 (7:53b9) - TX_FAR _OaksLabRivalChallengeText - db "@" - -UnnamedText_1d3be: ; 1d3be (7:53be) - TX_FAR _UnnamedText_1d3be - db "@" - -UnnamedText_1d3c3: ; 1d3c3 (7:53c3) - TX_FAR _UnnamedText_1d3c3 - db "@" - -OaksLabText16: ; 1d3c8 (7:53c8) - db $8 - ld hl, OaksLabRivalToughenUpText - call PrintText - jp TextScriptEnd - -OaksLabRivalToughenUpText: ; 1d3d2 (7:53d2) - TX_FAR _OaksLabRivalToughenUpText - db "@" - -OaksLabText21: ; 1d3d7 (7:53d7) - TX_FAR _OaksLabText21 - db "@" - -OaksLabText22: ; 1d3dc (7:53dc) - TX_FAR _OaksLabText22 - db "@" - -OaksLabText23: ; 1d3e1 (7:53e1) - TX_FAR _OaksLabText23 - db "@" - -OaksLabText24: ; 1d3e6 (7:53e6) - TX_FAR _OaksLabText24 - db "@" - -OaksLabText25: ; 1d3eb (7:53eb) - TX_FAR _OaksLabText25 - db $11, "@" - -OaksLabText26: ; 1d3f1 (7:53f1) - TX_FAR _OaksLabText26 - db "@" - -OaksLabText27: ; 1d3f6 (7:53f6) - TX_FAR _OaksLabText27 - db "@" - -OaksLabText38: ; 1d3fb (7:53fb) -OaksLabText37: ; 1d3fb (7:53fb) -OaksLabText11: ; 1d3fb (7:53fb) -OaksLabText10: ; 1d3fb (7:53fb) - db $08 ; asm - ld hl, UnnamedText_1d405 - call PrintText - jp TextScriptEnd - -UnnamedText_1d405: ; 1d405 (7:5405) - TX_FAR _UnnamedText_1d405 - db "@" - -OaksLabObject: ; 0x1d40a (size=88) - db $3 ; border tile - - db $2 ; warps - db $b, $4, $2, $ff - db $b, $5, $2, $ff - - db $0 ; signs - - db $b ; people - db SPRITE_BLUE, $3 + 4, $4 + 4, $ff, $ff, $41, SONY1 + $C8, $1 ; trainer - db SPRITE_BALL, $3 + 4, $6 + 4, $ff, $ff, $2 ; person - db SPRITE_BALL, $3 + 4, $7 + 4, $ff, $ff, $3 ; person - db SPRITE_BALL, $3 + 4, $8 + 4, $ff, $ff, $4 ; person - db SPRITE_OAK, $2 + 4, $5 + 4, $ff, $d0, $5 ; person - db SPRITE_BOOK_MAP_DEX, $1 + 4, $2 + 4, $ff, $ff, $6 ; person - db SPRITE_BOOK_MAP_DEX, $1 + 4, $3 + 4, $ff, $ff, $7 ; person - db SPRITE_OAK, $a + 4, $5 + 4, $ff, $d1, $8 ; person - db SPRITE_GIRL, $9 + 4, $1 + 4, $fe, $1, $9 ; person - db SPRITE_OAK_AIDE, $a + 4, $2 + 4, $ff, $ff, $a ; person - db SPRITE_OAK_AIDE, $a + 4, $8 + 4, $ff, $ff, $b ; person - - ; warp-to - EVENT_DISP OAKS_LAB_WIDTH, $b, $4 - EVENT_DISP OAKS_LAB_WIDTH, $b, $5 - -ViridianMart_h: ; 0x1d462 to 0x1d46e (12 bytes) (bank=7) (id=42) - db MART ; tileset - db VIRIDIAN_MART_HEIGHT, VIRIDIAN_MART_WIDTH ; dimensions (y, x) - dw ViridianMartBlocks, ViridianMartTextPointers, ViridianMartScript ; blocks, texts, scripts - db $00 ; connections - dw ViridianMartObject ; objects - -ViridianMartScript: ; 1d46e (7:546e) - call ViridianMartScript_1d47d - call EnableAutoTextBoxDrawing - ld hl, ViridianMartScriptPointers - ld a, [W_VIRIDIANMARKETCURSCRIPT] - jp CallFunctionInTable - -ViridianMartScript_1d47d: ; 1d47d (7:547d) - ld a, [$d74e] - bit 0, a - jr nz, .asm_1d489 ; 0x1d482 $5 - ld hl, ViridianMartTextPointers ; $54e0 - jr .asm_1d48c ; 0x1d487 $3 -.asm_1d489 - ld hl, ViridianMartTextPointers + $a ; $54ea ; starts at ViridianMartText6 -.asm_1d48c - ld a, l - ld [W_MAPTEXTPTR], a - ld a, h - ld [W_MAPTEXTPTR+1], a - ret - -ViridianMartScriptPointers: ; 1d495 (7:5495) - dw ViridianMartScript0 - dw ViridianMartScript1 - dw ViridianMartScript2 - -ViridianMartScript0: ; 1d49b (7:549b) - call UpdateSprites - ld a, $4 - ld [$ff8c], a - call DisplayTextID - ld hl, $ccd3 - ld de, RLEMovement1d4bb - call DecodeRLEList - dec a - ld [$cd38], a - call Func_3486 - ld a, $1 - ld [W_VIRIDIANMARKETCURSCRIPT], a - ret - -RLEMovement1d4bb: ; 1d4bb (7:54bb) - db $20, $01 - db $40, $02 - db $ff - -ViridianMartScript1: ; 1d4c0 (7:54c0) - ld a, [$cd38] - and a - ret nz - call Delay3 - ld a, $5 - ld [$ff8c], a - call DisplayTextID - ld bc, (OAKS_PARCEL << 8) + 1 - call GiveItem - ld hl, $d74e - set 1, [hl] - ld a, $2 - ld [W_VIRIDIANMARKETCURSCRIPT], a - ; fallthrough -ViridianMartScript2: ; 1d4df (7:54df) - ret - -ViridianMartTextPointers: ; 1d4e0 (7:54e0) - dw ViridianMartText1 - dw ViridianMartText2 - dw ViridianMartText3 - dw ViridianMartText4 - dw ViridianMartText5 - dw ViridianMartText6 - dw ViridianMartText2 - dw ViridianMartText3 - -ViridianMartText1: ; 1d4f0 (7:54f0) - TX_FAR _ViridianMartText1 +WhichFloorText: ; 1ca14 (7:4a14) + TX_FAR _WhichFloorText db "@" -ViridianMartText4: ; 1d4f5 (7:54f5) - TX_FAR _ViridianMartText4 - db "@" +INCLUDE "scripts/cinnabarisland.asm" -ViridianMartText5: ; 1d4fa (7:54fa) - TX_FAR ViridianMartParcelQuestText - db $11 - db "@" +INCLUDE "scripts/route1.asm" -ViridianMartText2: ; 1d500 (7:5500) - TX_FAR _ViridianMartText2 - db "@" +INCLUDE "data/mapHeaders/oakslab.asm" -ViridianMartText3: ; 1d505 (7:5505) - TX_FAR _ViridianMartText3 - db "@" - -ViridianMartObject: ; 0x1d50a (size=38) - db $0 ; border tile +INCLUDE "scripts/oakslab.asm" - db $2 ; warps - db $7, $3, $1, $ff - db $7, $4, $1, $ff +INCLUDE "data/mapObjects/oakslab.asm" - db $0 ; signs +INCLUDE "data/mapHeaders/viridianmart.asm" - db $3 ; people - db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person - db SPRITE_BUG_CATCHER, $5 + 4, $5 + 4, $fe, $1, $2 ; person - db SPRITE_BLACK_HAIR_BOY_1, $3 + 4, $3 + 4, $ff, $ff, $3 ; person +INCLUDE "scripts/viridianmart.asm" - ; warp-to - EVENT_DISP VIRIDIAN_MART_WIDTH, $7, $3 - EVENT_DISP VIRIDIAN_MART_WIDTH, $7, $4 +INCLUDE "data/mapObjects/viridianmart.asm" ViridianMartBlocks: ; 1d530 (7:5530) INCBIN "maps/viridianmart.blk" -School_h: ; 0x1d540 to 0x1d54c (12 bytes) (bank=7) (id=43) - db HOUSE ; tileset - db VIRIDIAN_SCHOOL_HEIGHT, VIRIDIAN_SCHOOL_WIDTH ; dimensions (y, x) - dw SchoolBlocks, SchoolTextPointers, SchoolScript ; blocks, texts, scripts - db $00 ; connections - dw SchoolObject ; objects - -SchoolScript: ; 1d54c (7:554c) - jp EnableAutoTextBoxDrawing - -SchoolTextPointers: ; 1d54f (7:554f) - dw SchoolText1 - dw SchoolText2 +INCLUDE "data/mapHeaders/school.asm" -SchoolText1: ; 1d553 (7:5553) - TX_FAR _SchoolText1 - db "@" - -SchoolText2: ; 1d558 (7:5558) - TX_FAR _SchoolText2 - db "@" +INCLUDE "scripts/school.asm" -SchoolObject: ; 0x1d55d (size=32) - db $a ; border tile +INCLUDE "data/mapObjects/school.asm" - db $2 ; warps - db $7, $2, $2, $ff - db $7, $3, $2, $ff +INCLUDE "data/mapHeaders/viridianhouse.asm" - db $0 ; signs +INCLUDE "scripts/viridianhouse.asm" - db $2 ; people - db SPRITE_BRUNETTE_GIRL, $5 + 4, $3 + 4, $ff, $d1, $1 ; person - db SPRITE_LASS, $1 + 4, $4 + 4, $ff, $d0, $2 ; person +INCLUDE "data/mapObjects/viridianhouse.asm" - ; warp-to - EVENT_DISP VIRIDIAN_SCHOOL_WIDTH, $7, $2 - EVENT_DISP VIRIDIAN_SCHOOL_WIDTH, $7, $3 +INCLUDE "data/mapHeaders/pewterhouse1.asm" -ViridianHouse_h: ; 0x1d57d to 0x1d589 (12 bytes) (bank=7) (id=44) - db HOUSE ; tileset - db VIRIDIAN_HOUSE_HEIGHT, VIRIDIAN_HOUSE_WIDTH ; dimensions (y, x) - dw ViridianHouseBlocks, ViridianHouseTextPointers, ViridianHouseScript ; blocks, texts, scripts - db $00 ; connections - dw ViridianHouseObject ; objects +INCLUDE "scripts/pewterhouse1.asm" - db $0 +INCLUDE "data/mapObjects/pewterhouse1.asm" -ViridianHouseScript: ; 1d58a (7:558a) - jp EnableAutoTextBoxDrawing +INCLUDE "data/mapHeaders/pewterhouse2.asm" -ViridianHouseTextPointers: ; 1d58d (7:558d) - dw ViridianHouseText1 - dw ViridianHouseText2 - dw ViridianHouseText3 - dw ViridianHouseText4 +INCLUDE "scripts/pewterhouse2.asm" -ViridianHouseText1: ; 1d595 (7:5595) - TX_FAR _ViridianHouseText1 - db "@" +INCLUDE "data/mapObjects/pewterhouse2.asm" -ViridianHouseText2: ; 1d59a (7:559a) - TX_FAR _ViridianHouseText2 - db "@" +INCLUDE "data/mapHeaders/ceruleanhousetrashed.asm" -ViridianHouseText3: ; 1d59f (7:559f) - db $08 ; asm - ld hl, UnnamedText_1d5b1 - call PrintText - ld a, SPEAROW - call PlayCry - call WaitForSoundToFinish - jp TextScriptEnd +INCLUDE "scripts/ceruleanhousetrashed.asm" -UnnamedText_1d5b1: ; 1d5b1 (7:55b1) - TX_FAR _UnnamedText_1d5b1 - db "@" +INCLUDE "data/mapObjects/ceruleanhousetrashed.asm" -ViridianHouseText4: ; 1d5b6 (7:55b6) - TX_FAR _ViridianHouseText4 - db "@" +INCLUDE "data/mapHeaders/ceruleanhouse1.asm" -ViridianHouseObject: ; 0x1d5bb (size=44) - db $a ; border tile +INCLUDE "scripts/ceruleanhouse1.asm" - db $2 ; warps - db $7, $2, $3, $ff - db $7, $3, $3, $ff - - db $0 ; signs - - db $4 ; people - db SPRITE_BALDING_GUY, $3 + 4, $5 + 4, $ff, $ff, $1 ; person - db SPRITE_LITTLE_GIRL, $4 + 4, $1 + 4, $fe, $1, $2 ; person - db SPRITE_BIRD, $5 + 4, $5 + 4, $fe, $2, $3 ; person - db SPRITE_CLIPBOARD, $0 + 4, $4 + 4, $ff, $ff, $4 ; person - - ; warp-to - EVENT_DISP VIRIDIAN_HOUSE_WIDTH, $7, $2 - EVENT_DISP VIRIDIAN_HOUSE_WIDTH, $7, $3 - -PewterHouse1_h: ; 0x1d5e7 to 0x1d5f3 (12 bytes) (bank=7) (id=55) - db HOUSE ; tileset - db PEWTER_HOUSE_1_HEIGHT, PEWTER_HOUSE_1_WIDTH ; dimensions (y, x) - dw PewterHouse1Blocks, PewterHouse1TextPointers, PewterHouse1Script ; blocks, texts, scripts - db $00 ; connections - dw PewterHouse1Object ; objects - -PewterHouse1Script: ; 1d5f3 (7:55f3) - jp EnableAutoTextBoxDrawing - -PewterHouse1TextPointers: ; 1d5f6 (7:55f6) - dw PewterHouse1Text1 - dw PewterHouse1Text2 - dw PewterHouse1Text3 - -PewterHouse1Text1: ; 1d5fc (7:55fc) - TX_FAR _PewterHouse1Text1 - db $08 ; asm - ld a, NIDORAN_M - call PlayCry - call WaitForSoundToFinish - jp TextScriptEnd - -PewterHouse1Text2: ; 1d60c (7:560c) - TX_FAR _PewterHouse1Text2 - db "@" - -PewterHouse1Text3: ; 1d611 (7:5611) - TX_FAR _PewterHouse1Text3 - db "@" +INCLUDE "data/mapObjects/ceruleanhouse1.asm" -PewterHouse1Object: ; 0x1d616 (size=38) - db $a ; border tile +INCLUDE "data/mapHeaders/bikeshop.asm" - db $2 ; warps - db $7, $2, $3, $ff - db $7, $3, $3, $ff +INCLUDE "scripts/bikeshop.asm" - db $0 ; signs - - db $3 ; people - db SPRITE_SLOWBRO, $5 + 4, $4 + 4, $ff, $d2, $1 ; person - db SPRITE_YOUNG_BOY, $5 + 4, $3 + 4, $ff, $d3, $2 ; person - db SPRITE_FAT_BALD_GUY, $2 + 4, $1 + 4, $ff, $ff, $3 ; person - - ; warp-to - EVENT_DISP PEWTER_HOUSE_1_WIDTH, $7, $2 - EVENT_DISP PEWTER_HOUSE_1_WIDTH, $7, $3 - -PewterHouse2_h: ; 0x1d63c to 0x1d648 (12 bytes) (bank=7) (id=57) - db HOUSE ; tileset - db PEWTER_HOUSE_2_HEIGHT, PEWTER_HOUSE_2_WIDTH ; dimensions (y, x) - dw PewterHouse2Blocks, PewterHouse2TextPointers, PewterHouse2Script ; blocks, texts, scripts - db $00 ; connections - dw PewterHouse2Object ; objects - -PewterHouse2Script: ; 1d648 (7:5648) - jp EnableAutoTextBoxDrawing - -PewterHouse2TextPointers: ; 1d64b (7:564b) - dw PewterHouse2Text1 - dw PewterHouse2Text2 - -PewterHouse2Text1: ; 1d64f (7:564f) - TX_FAR _PewterHouse2Text1 - db "@" - -PewterHouse2Text2: ; 1d654 (7:5654) - TX_FAR _PewterHouse2Text2 - db "@" - -PewterHouse2Object: ; 0x1d659 (size=32) - db $a ; border tile - - db $2 ; warps - db $7, $2, $5, $ff - db $7, $3, $5, $ff - - db $0 ; signs - - db $2 ; people - db SPRITE_GAMBLER, $3 + 4, $2 + 4, $ff, $d3, $1 ; person - db SPRITE_BUG_CATCHER, $5 + 4, $4 + 4, $ff, $ff, $2 ; person - - ; warp-to - EVENT_DISP PEWTER_HOUSE_2_WIDTH, $7, $2 - EVENT_DISP PEWTER_HOUSE_2_WIDTH, $7, $3 - -CeruleanHouseTrashed_h: ; 0x1d679 to 0x1d685 (12 bytes) (bank=7) (id=62) - db HOUSE ; tileset - db TRASHED_HOUSE_HEIGHT, TRASHED_HOUSE_WIDTH ; dimensions (y, x) - dw CeruleanHouseTrashedBlocks, CeruleanHouseTrashedTextPointers, CeruleanHouseTrashedScript ; blocks, texts, scripts - db $00 ; connections - dw CeruleanHouseTrashedObject ; objects - -CeruleanHouseTrashedScript: ; 1d685 (7:5685) - call EnableAutoTextBoxDrawing - ret - -CeruleanHouseTrashedTextPointers: ; 1d689 (7:5689) - dw CeruleanHouseTrashedText1 - dw CeruleanHouseTrashedText2 - dw CeruleanHouseTrashedText3 - -CeruleanHouseTrashedText1: ; 1d68f (7:568f) - db $08 ; asm - ld b, $e4 - ld a, $1c - call Predef - and b - jr z, .asm_f8734 ; 0x1d698 - ld hl, UnnamedText_1d6b0 - call PrintText - jr .asm_8dfe9 ; 0x1d6a0 -.asm_f8734 ; 0x1d6a2 - ld hl, UnnamedText_1d6ab - call PrintText -.asm_8dfe9 ; 0x1d6a8 - jp TextScriptEnd - -UnnamedText_1d6ab: ; 1d6ab (7:56ab) - TX_FAR _UnnamedText_1d6ab - db "@" - -UnnamedText_1d6b0: ; 1d6b0 (7:56b0) - TX_FAR _UnnamedText_1d6b0 - db "@" - -CeruleanHouseTrashedText2: ; 1d6b5 (7:56b5) - TX_FAR _CeruleanHouseTrashedText2 - db "@" - -CeruleanHouseTrashedText3: ; 1d6ba (7:56ba) - TX_FAR _CeruleanHouseTrashedText3 - db "@" - -CeruleanHouseTrashedObject: ; 0x1d6bf (size=43) - db $a ; border tile - - db $3 ; warps - db $7, $2, $0, $ff - db $7, $3, $0, $ff - db $0, $3, $7, $ff - - db $1 ; signs - db $0, $3, $3 ; CeruleanHouseTrashedText3 - - db $2 ; people - db SPRITE_FISHER, $1 + 4, $2 + 4, $ff, $d0, $1 ; person - db SPRITE_GIRL, $6 + 4, $5 + 4, $fe, $2, $2 ; person - - ; warp-to - EVENT_DISP TRASHED_HOUSE_WIDTH, $7, $2 - EVENT_DISP TRASHED_HOUSE_WIDTH, $7, $3 - EVENT_DISP TRASHED_HOUSE_WIDTH, $0, $3 - -CeruleanHouse1_h: ; 0x1d6ea to 0x1d6f6 (12 bytes) (bank=7) (id=63) - db HOUSE ; tileset - db CERULEAN_HOUSE_1_HEIGHT, CERULEAN_HOUSE_1_WIDTH ; dimensions (y, x) - dw CeruleanHouse1Blocks, CeruleanHouse1TextPointers, CeruleanHouse1Script ; blocks, texts, scripts - db $00 ; connections - dw CeruleanHouse1Object ; objects - -CeruleanHouse1Script: ; 1d6f6 (7:56f6) - jp EnableAutoTextBoxDrawing - -CeruleanHouse1TextPointers: ; 1d6f9 (7:56f9) - dw CeruleanHouse1Text1 - dw CeruleanHouse1Text2 - -CeruleanHouse1Text1: ; 1d6fd (7:56fd) - TX_FAR _CeruleanHouse1Text1 - db "@" - -CeruleanHouse1Text2: ; 1d702 (7:5702) - db $08 ; asm - ld a, $6 - ld [wWhichTrade], a - ld a, $54 - call Predef - jp TextScriptEnd - -CeruleanHouse1Object: ; 0x1d710 (size=32) - db $a ; border tile - - db $2 ; warps - db $7, $2, $1, $ff - db $7, $3, $1, $ff - - db $0 ; signs - - db $2 ; people - db SPRITE_OLD_MEDIUM_WOMAN, $4 + 4, $5 + 4, $ff, $d2, $1 ; person - db SPRITE_GAMBLER, $2 + 4, $1 + 4, $ff, $ff, $2 ; person - - ; warp-to - EVENT_DISP CERULEAN_HOUSE_1_WIDTH, $7, $2 - EVENT_DISP CERULEAN_HOUSE_1_WIDTH, $7, $3 - -BikeShop_h: ; 0x1d730 to 0x1d73c (12 bytes) (bank=7) (id=66) - db CLUB ; tileset - db BIKE_SHOP_HEIGHT, BIKE_SHOP_WIDTH ; dimensions (y, x) - dw BikeShopBlocks, BikeShopTextPointers, BikeShopScript ; blocks, texts, scripts - db $00 ; connections - dw BikeShopObject ; objects - -BikeShopScript: ; 1d73c (7:573c) - jp EnableAutoTextBoxDrawing - -BikeShopTextPointers: ; 1d73f (7:573f) - dw BikeShopText1 - dw BikeShopText2 - dw BikeShopText3 - -BikeShopText1: ; 1d745 (7:5745) - db $08 ; asm - ld a, [$d75f] - bit 0, a - jr z, .asm_260d4 ; 0x1d74b - ld hl, UnnamedText_1d82f - call PrintText - jp .Done -.asm_260d4 ; 0x1d756 - ld b, BIKE_VOUCHER - call IsItemInBag - jr z, .asm_41190 ; 0x1d75b - ld hl, UnnamedText_1d81f - call PrintText - ld bc, (BICYCLE << 8) | 1 - call GiveItem - jr nc, .BagFull - ld a, BIKE_VOUCHER - ldh [$db], a - callba RemoveItemByID - ld hl, $d75f - set 0, [hl] - ld hl, UnnamedText_1d824 - call PrintText - jr .Done -.BagFull - ld hl, UnnamedText_1d834 - call PrintText - jr .Done -.asm_41190 ; 0x1d78c - ld hl, UnnamedText_1d810 - call PrintText - xor a - ld [$cc26], a - ld [$cc2a], a - ld a, $3 - ld [$cc29], a - ld a, $1 - ld [$cc28], a - ld a, $2 - ld [$cc24], a - ld a, $1 - ld [$cc25], a - ld hl, $d730 - set 6, [hl] - ld hl, wTileMap - ld b, $4 - ld c, $f - call TextBoxBorder - call UpdateSprites - FuncCoord 2, 2 ; $c3ca - ld hl, Coord - ld de, BikeShopMenuText - call PlaceString - FuncCoord 8, 3 ; $c3e4 - ld hl, Coord - ld de, BikeShopMenuPrice - call PlaceString - ld hl, UnnamedText_1d815 - call PrintText - call HandleMenuInput - bit 1, a - jr nz, .asm_b7579 ; 0x1d7dc - ld hl, $d730 - res 6, [hl] - ld a, [$cc26] - and a - jr nz, .asm_b7579 ; 0x1d7e7 - ld hl, UnnamedText_1d81a - call PrintText -.asm_b7579 ; 0x1d7ef - ld hl, UnnamedText_1d82a - call PrintText -.Done - jp TextScriptEnd - -BikeShopMenuText: ; 1d7f8 (7:57f8) - db "BICYCLE" - next "CANCEL@" - -BikeShopMenuPrice: ; 1d807 (7:5807) - db "¥1000000@" - -UnnamedText_1d810: ; 1d810 (7:5810) - TX_FAR _UnnamedText_1d810 - db "@" - -UnnamedText_1d815: ; 1d815 (7:5815) - TX_FAR _UnnamedText_1d815 - db "@" - -UnnamedText_1d81a: ; 1d81a (7:581a) - TX_FAR _UnnamedText_1d81a - db "@" - -UnnamedText_1d81f: ; 1d81f (7:581f) - TX_FAR _UnnamedText_1d81f - db "@" - -UnnamedText_1d824: ; 1d824 (7:5824) - TX_FAR _UnnamedText_1d824 ; 0x98eb2 - db $11, "@" - -UnnamedText_1d82a: ; 1d82a (7:582a) - TX_FAR _UnnamedText_1d82a - db "@" - -UnnamedText_1d82f: ; 1d82f (7:582f) - TX_FAR _UnnamedText_1d82f - db "@" - -UnnamedText_1d834: ; 1d834 (7:5834) - TX_FAR _UnnamedText_1d834 - db "@" - -BikeShopText2: ; 1d839 (7:5839) - db $08 ; asm - ld hl, UnnamedText_1d843 - call PrintText - jp TextScriptEnd - -UnnamedText_1d843: ; 1d843 (7:5843) - TX_FAR _UnnamedText_1d843 - db "@" - -BikeShopText3: ; 1d848 (7:5848) - db $08 ; asm - ld a, [$d75f] - bit 0, a - ld hl, UnnamedText_1d861 - jr nz, .asm_34d2d ; 0x1d851 - ld hl, UnnamedText_1d85c -.asm_34d2d ; 0x1d856 - call PrintText - jp TextScriptEnd - -UnnamedText_1d85c: ; 1d85c (7:585c) - TX_FAR _UnnamedText_1d85c - db "@" - -UnnamedText_1d861: ; 1d861 (7:5861) - TX_FAR _UnnamedText_1d861 - db "@" - -BikeShopObject: ; 0x1d866 (size=38) - db $e ; border tile - - db $2 ; warps - db $7, $2, $4, $ff - db $7, $3, $4, $ff - - db $0 ; signs - - db $3 ; people - db SPRITE_BIKE_SHOP_GUY, $2 + 4, $6 + 4, $ff, $ff, $1 ; person - db SPRITE_MOM_GEISHA, $6 + 4, $5 + 4, $fe, $1, $2 ; person - db SPRITE_BUG_CATCHER, $3 + 4, $1 + 4, $ff, $d1, $3 ; person - - ; warp-to - EVENT_DISP BIKE_SHOP_WIDTH, $7, $2 - EVENT_DISP BIKE_SHOP_WIDTH, $7, $3 +INCLUDE "data/mapObjects/bikeshop.asm" BikeShopBlocks: ; 1d88c (7:588c) INCBIN "maps/bikeshop.blk" -LavenderHouse1_h: ; 0x1d89c to 0x1d8a8 (12 bytes) (bank=7) (id=149) - db HOUSE ; tileset - db LAVENDER_HOUSE_1_HEIGHT, LAVENDER_HOUSE_1_WIDTH ; dimensions (y, x) - dw LavenderHouse1Blocks, LavenderHouse1TextPointers, LavenderHouse1Script ; blocks, texts, scripts - db $00 ; connections - dw LavenderHouse1Object ; objects +INCLUDE "data/mapHeaders/lavenderhouse1.asm" -LavenderHouse1Script: ; 1d8a8 (7:58a8) - call EnableAutoTextBoxDrawing - ret +INCLUDE "scripts/lavenderhouse1.asm" -LavenderHouse1TextPointers: ; 1d8ac (7:58ac) - dw LavenderHouse1Text1 - dw LavenderHouse1Text2 - dw LavenderHouse1Text3 - dw LavenderHouse1Text4 - dw LavenderHouse1Text5 - dw LavenderHouse1Text6 - -LavenderHouse1Text1: ; 1d8b8 (7:58b8) - db $08 ; asm - ld a, [$d7e0] - bit 7, a - jr nz, .asm_72e5d ; 0x1d8be - ld hl, UnnamedText_1d8d1 - call PrintText - jr .asm_6957f ; 0x1d8c6 -.asm_72e5d ; 0x1d8c8 - ld hl, UnnamedText_1d8d6 - call PrintText -.asm_6957f ; 0x1d8ce - jp TextScriptEnd - -UnnamedText_1d8d1: ; 1d8d1 (7:58d1) - TX_FAR _UnnamedText_1d8d1 - db "@" - -UnnamedText_1d8d6: ; 1d8d6 (7:58d6) - TX_FAR _UnnamedText_1d8d6 - db "@" - -LavenderHouse1Text2: ; 1d8db (7:58db) - db $08 ; asm - ld a, [$d7e0] - bit 7, a - jr nz, .asm_06470 ; 0x1d8e1 - ld hl, UnnamedText_1d8f4 - call PrintText - jr .asm_3d208 ; 0x1d8e9 -.asm_06470 ; 0x1d8eb - ld hl, UnnamedText_1d8f9 - call PrintText -.asm_3d208 ; 0x1d8f1 - jp TextScriptEnd - -UnnamedText_1d8f4: ; 1d8f4 (7:58f4) - TX_FAR _UnnamedText_1d8f4 - db "@" - -UnnamedText_1d8f9: ; 1d8f9 (7:58f9) - TX_FAR _UnnamedText_1d8f9 - db "@" - -LavenderHouse1Text3: ; 1d8fe (7:58fe) - TX_FAR _LavenderHouse1Text3 - db $8 - ld a, PSYDUCK - call PlayCry - jp TextScriptEnd - -LavenderHouse1Text4: ; 1d90b (7:590b) - TX_FAR _LavenderHouse1Text4 - db $8 - ld a, NIDORINO - call PlayCry - jp TextScriptEnd - -LavenderHouse1Text5: ; 1d918 (7:5918) - db $08 ; asm - ld a, [$d76c] - bit 0, a - jr nz, .asm_15ac2 ; 0x1d91e - ld hl, UnnamedText_1d94c - call PrintText - ld bc, (POKE_FLUTE << 8) | 1 - call GiveItem - jr nc, .BagFull - ld hl, ReceivedFluteText - call PrintText - ld hl, $d76c - set 0, [hl] - jr .asm_da749 ; 0x1d939 -.BagFull - ld hl, FluteNoRoomText - call PrintText - jr .asm_da749 ; 0x1d941 -.asm_15ac2 ; 0x1d943 - ld hl, MrFujiAfterFluteText - call PrintText -.asm_da749 ; 0x1d949 - jp TextScriptEnd - -UnnamedText_1d94c: ; 1d94c (7:594c) - TX_FAR _UnnamedText_1d94c - db "@" - -ReceivedFluteText: ; 1d951 (7:5951) - TX_FAR _ReceivedFluteText ; 0x99ffb - db $11 - TX_FAR _FluteExplanationText ; 0x9a011 - db "@" - -FluteNoRoomText: ; 1d95b (7:595b) - TX_FAR _FluteNoRoomText - db "@" - -MrFujiAfterFluteText: ; 1d960 (7:5960) - TX_FAR _MrFujiAfterFluteText - db "@" - -LavenderHouse1Text6: ; 1d965 (7:5965) - TX_FAR _LavenderHouse1Text6 - db "@" - -LavenderHouse1Object: ; 0x1d96a (size=56) - db $a ; border tile - - db $2 ; warps - db $7, $2, $2, $ff - db $7, $3, $2, $ff - - db $0 ; signs - - db $6 ; people - db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $3 + 4, $ff, $ff, $1 ; person - db SPRITE_LITTLE_GIRL, $3 + 4, $6 + 4, $ff, $d0, $2 ; person - db SPRITE_SLOWBRO, $4 + 4, $6 + 4, $ff, $d1, $3 ; person - db SPRITE_SLOWBRO, $3 + 4, $1 + 4, $ff, $ff, $4 ; person - db SPRITE_MR_FUJI, $1 + 4, $3 + 4, $ff, $ff, $5 ; person - db SPRITE_BOOK_MAP_DEX, $3 + 4, $3 + 4, $ff, $ff, $6 ; person - - ; warp-to - EVENT_DISP LAVENDER_HOUSE_1_WIDTH, $7, $2 - EVENT_DISP LAVENDER_HOUSE_1_WIDTH, $7, $3 - -LavenderHouse2_h: ; 0x1d9a2 to 0x1d9ae (12 bytes) (bank=7) (id=151) - db HOUSE ; tileset - db LAVENDER_HOUSE_2_HEIGHT, LAVENDER_HOUSE_2_WIDTH ; dimensions (y, x) - dw LavenderHouse2Blocks, LavenderHouse2TextPointers, LavenderHouse2Script ; blocks, texts, scripts - db $00 ; connections - dw LavenderHouse2Object ; objects - -LavenderHouse2Script: ; 1d9ae (7:59ae) - call EnableAutoTextBoxDrawing - ret - -LavenderHouse2TextPointers: ; 1d9b2 (7:59b2) - dw LavenderHouse2Text1 - dw LavenderHouse2Text2 - -LavenderHouse2Text1: ; 1d9b6 (7:59b6) - TX_FAR _LavenderHouse2Text1 - db $8 - ld a, CUBONE - call PlayCry - jp TextScriptEnd - -LavenderHouse2Text2: ; 1d9c3 (7:59c3) - db $08 ; asm - ld a, [$d7e0] - bit 7, a - jr nz, .asm_65711 ; 0x1d9c9 - ld hl, UnnamedText_1d9dc - call PrintText - jr .asm_64be1 ; 0x1d9d1 -.asm_65711 ; 0x1d9d3 - ld hl, UnnamedText_1d9e1 - call PrintText -.asm_64be1 ; 0x1d9d9 - jp TextScriptEnd - -UnnamedText_1d9dc: ; 1d9dc (7:59dc) - TX_FAR _UnnamedText_1d9dc - db "@" - -UnnamedText_1d9e1: ; 1d9e1 (7:59e1) - TX_FAR _UnnamedText_1d9e1 - db "@" - -LavenderHouse2Object: ; 0x1d9e6 (size=32) - db $a ; border tile - - db $2 ; warps - db $7, $2, $4, $ff - db $7, $3, $4, $ff - - db $0 ; signs - - db $2 ; people - db SPRITE_SLOWBRO, $5 + 4, $3 + 4, $ff, $d1, $1 ; person - db SPRITE_BRUNETTE_GIRL, $4 + 4, $2 + 4, $ff, $d3, $2 ; person - - ; warp-to - EVENT_DISP LAVENDER_HOUSE_2_WIDTH, $7, $2 - EVENT_DISP LAVENDER_HOUSE_2_WIDTH, $7, $3 - -NameRater_h: ; 0x1da06 to 0x1da12 (12 bytes) (bank=7) (id=229) - db HOUSE ; tileset - db NAME_RATERS_HOUSE_HEIGHT, NAME_RATERS_HOUSE_WIDTH ; dimensions (y, x) - dw NameRaterBlocks, NameRaterTextPointers, NameRaterScript ; blocks, texts, scripts - db $00 ; connections - dw NameRaterObject ; objects - -NameRaterScript: ; 1da12 (7:5a12) - jp EnableAutoTextBoxDrawing - -Func_1da15: ; 1da15 (7:5a15) - call PrintText - call YesNoChoice - ld a, [$cc26] - and a - ret - -Func_1da20: ; 1da20 (7:5a20) - ld hl, W_PARTYMON1OT - ld bc, $000b - ld a, [wWhichPokemon] - call AddNTimes - ld de, W_PLAYERNAME - ld c, $b - call .asm_1da47 - jr c, .asm_1da52 ; 0x1da34 $1c - ld hl, $d177 - ld bc, $002c - ld a, [wWhichPokemon] - call AddNTimes - ld de, $d359 - ld c, $2 -.asm_1da47 - ld a, [de] - cp [hl] - jr nz, .asm_1da52 ; 0x1da49 $7 - inc hl - inc de - dec c - jr nz, .asm_1da47 ; 0x1da4e $f7 - and a - ret -.asm_1da52 - scf - ret - -NameRaterTextPointers: ; 1da54 (7:5a54) - dw NameRaterText1 - -NameRaterText1: ; 1da56 (7:5a56) - db $8 - call SaveScreenTilesToBuffer2 - ld hl, UnnamedText_1dab3 - call Func_1da15 - jr nz, .asm_1daae ; 0x1da60 $4c - ld hl, UnnamedText_1dab8 - call PrintText - xor a - ld [$d07d], a - ld [$cfcb], a - ld [$cc35], a - call DisplayPartyMenu - push af - call GBPalWhiteOutWithDelay3 - call Func_3dbe - call LoadGBPal - pop af - jr c, .asm_1daae ; 0x1da80 $2c - call GetPartyMonName2 - call Func_1da20 - ld hl, UnnamedText_1dad1 - jr c, .asm_1daa8 ; 0x1da8b $1b - ld hl, UnnamedText_1dabd - call Func_1da15 - jr nz, .asm_1daae ; 0x1da93 $19 - ld hl, UnnamedText_1dac2 - call PrintText - callba Func_655c - jr c, .asm_1daae ; 0x1daa3 $9 - ld hl, UnnamedText_1dac7 -.asm_1daa8 - call PrintText - jp TextScriptEnd -.asm_1daae - ld hl, UnnamedText_1dacc - jr .asm_1daa8 ; 0x1dab1 $f5 - -UnnamedText_1dab3: ; 1dab3 (7:5ab3) - TX_FAR _UnnamedText_1dab3 - db "@" - -UnnamedText_1dab8: ; 1dab8 (7:5ab8) - TX_FAR _UnnamedText_1dab8 - db "@" - -UnnamedText_1dabd: ; 1dabd (7:5abd) - TX_FAR _UnnamedText_1dabd - db "@" - -UnnamedText_1dac2: ; 1dac2 (7:5ac2) - TX_FAR _UnnamedText_1dac2 - db "@" - -UnnamedText_1dac7: ; 1dac7 (7:5ac7) - TX_FAR _UnnamedText_1dac7 - db "@" - -UnnamedText_1dacc: ; 1dacc (7:5acc) - TX_FAR _UnnamedText_1dacc - db "@" - -UnnamedText_1dad1: ; 1dad1 (7:5ad1) - TX_FAR _UnnamedText_1dad1 - db "@" - -NameRaterObject: ; 0x1dad6 (size=26) - db $a ; border tile - - db $2 ; warps - db $7, $2, $5, $ff - db $7, $3, $5, $ff - - db $0 ; signs - - db $1 ; people - db SPRITE_MR_MASTERBALL, $3 + 4, $5 + 4, $ff, $d2, $1 ; person - - ; warp-to - EVENT_DISP NAME_RATERS_HOUSE_WIDTH, $7, $2 - EVENT_DISP NAME_RATERS_HOUSE_WIDTH, $7, $3 - -VermilionHouse1_h: ; 0x1daf0 to 0x1dafc (12 bytes) (bank=7) (id=93) - db HOUSE ; tileset - db VERMILION_HOUSE_1_HEIGHT, VERMILION_HOUSE_1_WIDTH ; dimensions (y, x) - dw VermilionHouse1Blocks, VermilionHouse1TextPointers, VermilionHouse1Script ; blocks, texts, scripts - db $00 ; connections - dw VermilionHouse1Object ; objects - -VermilionHouse1Script: ; 1dafc (7:5afc) - call EnableAutoTextBoxDrawing - ret - -VermilionHouse1TextPointers: ; 1db00 (7:5b00) - dw VermilionHouse1Text1 - dw VermilionHouse1Text2 - dw VermilionHouse1Text3 - -VermilionHouse1Text1: ; 1db06 (7:5b06) - TX_FAR _VermilionHouse1Text1 - db "@" - -VermilionHouse1Text2: ; 1db0b (7:5b0b) - TX_FAR _VermilionHouse1Text2 - db $08 ; asm - ld a, PIDGEY - call PlayCry - call WaitForSoundToFinish - jp TextScriptEnd - -VermilionHouse1Text3: ; 1db1b (7:5b1b) - TX_FAR _VermilionHouse1Text3 - db "@" - -VermilionHouse1Object: ; 0x1db20 (size=38) - db $a ; border tile - - db $2 ; warps - db $7, $2, $4, $ff - db $7, $3, $4, $ff - - db $0 ; signs - - db $3 ; people - db SPRITE_BUG_CATCHER, $3 + 4, $5 + 4, $ff, $d2, $1 ; person - db SPRITE_BIRD, $5 + 4, $3 + 4, $fe, $2, $2 ; person - db SPRITE_PAPER_SHEET, $3 + 4, $4 + 4, $ff, $ff, $3 ; person - - ; warp-to - EVENT_DISP VERMILION_HOUSE_1_WIDTH, $7, $2 - EVENT_DISP VERMILION_HOUSE_1_WIDTH, $7, $3 - -VermilionDock_h: ; 0x1db46 to 0x1db52 (12 bytes) (bank=7) (id=94) - db SHIP_PORT ; tileset - db VERMILION_DOCK_HEIGHT, VERMILION_DOCK_WIDTH ; dimensions (y, x) - dw VermilionDockBlocks, VermilionDockTextPointers, VermilionDockScript ; blocks, texts, scripts - db $00 ; connections - dw VermilionDockObject ; objects - -VermilionDockScript: ; 1db52 (7:5b52) - call EnableAutoTextBoxDrawing - ld hl, $d803 - bit 4, [hl] - jr nz, .asm_1db8d ; 0x1db5a $31 - bit 0, [hl] - ret z - ld a, [$d42f] - cp $1 - ret nz - bit 2, [hl] - jp z, VermilionDock_1db9b - set 4, [hl] - call Delay3 - ld hl, $d730 - set 7, [hl] - ld hl, $ccd3 - ld a, $40 - ld [hli], a - ld [hli], a - ld [hl], a - ld a, $3 - ld [$cd38], a - xor a - ld [$c206], a - ld [$cd3b], a - dec a - ld [wJoypadForbiddenButtonsMask], a - ret -.asm_1db8d - bit 5, [hl] - ret nz - ld a, [$cd38] - and a - ret nz - ld [wJoypadForbiddenButtonsMask], a - set 5, [hl] - ret - -VermilionDock_1db9b: ; 1db9b (7:5b9b) - set 2, [hl] - ld a, $ff - ld [wJoypadForbiddenButtonsMask], a - ld [$c0ee], a - call PlaySound - ld c, BANK(Music_Surfing) - ld a, MUSIC_SURFING - call PlayMusic - callba Func_79fc0 - xor a - ld [$c102], a - ld c, $78 - call DelayFrames - ld b, $9c - call CopyScreenTileBufferToVRAM - FuncCoord 0, 10 ; $c468 - ld hl, Coord - ld bc, $0078 - ld a, $14 - call FillMemory - ld a, $1 - ld [$ffba], a - call Delay3 - xor a - ld [$ffba], a - ld [$cd3d], a - ld [$ff49], a - ld a, $58 - ld [$cd3e], a - ld hl, $d526 - ld c, [hl] - inc hl - ld b, [hl] - push bc - push hl - ld a, (SFX_02_54 - SFX_Headers_02) / 3 - call PlaySoundWaitForCurrent - ld a, $ff - ld [$cfcb], a - ld d, $0 - ld e, $8 -.asm_1dbfa - ld hl, $0002 - add hl, bc - ld a, l - ld [$d526], a - ld a, h - ld [$d527], a - push hl - push de - call ScheduleEastColumnRedraw - call VermilionDock_1dc59 - pop de - ld b, $10 -.asm_1dc11 - call VermilionDock_1dc42 - ld c, $8 -.asm_1dc16 - call VermilionDock_1dc7c - dec c - jr nz, .asm_1dc16 ; 0x1dc1a $fa - inc d - dec b - jr nz, .asm_1dc11 ; 0x1dc1e $f1 - pop bc - dec e - jr nz, .asm_1dbfa ; 0x1dc22 $d6 - xor a - ld [$ff4a], a - ld [$ffb0], a - call VermilionDock_1dc94 - ld a, $90 - ld [$ffb0], a - ld a, $1 - ld [$cfcb], a - pop hl - pop bc - ld [hl], b - dec hl - ld [hl], c - call LoadPlayerSpriteGraphics - ld hl, $d3ae - dec [hl] - ret +INCLUDE "data/mapObjects/lavenderhouse1.asm" -VermilionDock_1dc42: ; 1dc42 (7:5c42) - push bc - push de - ld hl, $c311 - ld a, [$cd3d] - swap a - ld c, a - ld de, $0004 -.asm_1dc50 - inc [hl] - inc [hl] - add hl, de - dec c - jr nz, .asm_1dc50 ; 0x1dc54 $fa - pop de - pop bc - ret +INCLUDE "data/mapHeaders/lavenderhouse2.asm" -VermilionDock_1dc59: ; 1dc59 (7:5c59) - ld a, [$cd3e] - sub $10 - ld [$cd3e], a - ld c, a - ld b, $64 - ld a, [$cd3d] - inc a - ld [$cd3d], a - ld a, $1 - ld de, VermilionDockOAMBlock - call WriteOAMBlock - ret +INCLUDE "scripts/lavenderhouse2.asm" -VermilionDockOAMBlock: ; 1dc74 (7:5c74) - db $fc, $10 - db $fd, $10 - db $fe, $10 - db $ff, $10 +INCLUDE "data/mapObjects/lavenderhouse2.asm" -VermilionDock_1dc7c: ; 1dc7c (7:5c7c) - ld h, d - ld l, $50 - call .asm_1dc86 - ld h, $0 - ld l, $80 -.asm_1dc86 - ld a, [$ff44] - cp l - jr nz, .asm_1dc86 ; 0x1dc89 $fb - ld a, h - ld [$ff43], a -.asm_1dc8e - ld a, [$ff44] - cp h - jr z, .asm_1dc8e ; 0x1dc91 $fb - ret +INCLUDE "data/mapHeaders/namerater.asm" -VermilionDock_1dc94: ; 1dc94 (7:5c94) - ld hl, $cc5b - ld bc, $00b4 - ld a, $14 - call FillMemory - ld hl, $9940 - ld de, $cc5b - ld bc, $000c - call CopyVideoData - ld hl, $c754 - ld a, $d - ld [hli], a - ld [hli], a - ld [hli], a - ld [hl], a - ld a, (SFX_02_54 - SFX_Headers_02) / 3 - call PlaySound - ld c, $78 - call DelayFrames - ret +INCLUDE "scripts/namerater.asm" -VermilionDockTextPointers: ; 1dcbf (7:5cbf) - dw VermilionDockText1 +INCLUDE "data/mapObjects/namerater.asm" -VermilionDockText1: ; 1dcc1 (7:5cc1) - TX_FAR _VermilionDockText1 - db "@" +INCLUDE "data/mapHeaders/vermilionhouse1.asm" -VermilionDockObject: ; 0x1dcc6 (size=20) - db $f ; border tile +INCLUDE "scripts/vermilionhouse1.asm" - db $2 ; warps - db $0, $e, $5, $ff - db $2, $e, $1, SS_ANNE_1 +INCLUDE "data/mapObjects/vermilionhouse1.asm" - db $0 ; signs +INCLUDE "data/mapHeaders/vermiliondock.asm" - db $0 ; people +INCLUDE "scripts/vermiliondock.asm" - ; warp-to - EVENT_DISP VERMILION_DOCK_WIDTH, $0, $e - EVENT_DISP VERMILION_DOCK_WIDTH, $2, $e ; SS_ANNE_1 +INCLUDE "data/mapObjects/vermiliondock.asm" VermilionDockBlocks: ; 1dcda (7:5cda) INCBIN "maps/vermiliondock.blk" -CeladonMansion5_h: ; 0x1dd2e to 0x1dd3a (12 bytes) (bank=7) (id=132) - db HOUSE ; tileset - db CELADON_MANSION_5_HEIGHT, CELADON_MANSION_5_WIDTH ; dimensions (y, x) - dw CeladonMansion5Blocks, CeladonMansion5TextPointers, CeladonMansion5Script ; blocks, texts, scripts - db $00 ; connections - dw CeladonMansion5Object ; objects - -CeladonMansion5Script: ; 1dd3a (7:5d3a) - jp EnableAutoTextBoxDrawing - -CeladonMansion5TextPointers: ; 1dd3d (7:5d3d) - dw CeladonMansion5Text1 - dw CeladonMansion5Text2 - -CeladonMansion5Text1: ; 1dd41 (7:5d41) - TX_FAR _CeladonMansion5Text1 - db "@" - -CeladonMansion5Text2: ; 1dd46 (7:5d46) - db $08 ; asm - ld bc,(EEVEE << 8) | 25 - call GivePokemon - jr nc, .asm_24365 ; 0x1dd4d - ld a, $45 - ld [$cc4d], a - ld a, $11 - call Predef -.asm_24365 ; 0x1dd59 - jp TextScriptEnd - -CeladonMansion5Object: ; 0x1dd5c (size=32) - db $a ; border tile - - db $2 ; warps - db $7, $2, $2, CELADON_MANSION_4 - db $7, $3, $2, CELADON_MANSION_4 +INCLUDE "data/mapHeaders/celadonmansion5.asm" - db $0 ; signs +INCLUDE "scripts/celadonmansion5.asm" - db $2 ; people - db SPRITE_HIKER, $2 + 4, $2 + 4, $ff, $d0, $1 ; person - db SPRITE_BALL, $3 + 4, $4 + 4, $ff, $ff, $2 ; person +INCLUDE "data/mapObjects/celadonmansion5.asm" - ; warp-to - EVENT_DISP CELADON_MANSION_5_WIDTH, $7, $2 ; CELADON_MANSION_4 - EVENT_DISP CELADON_MANSION_5_WIDTH, $7, $3 ; CELADON_MANSION_4 +INCLUDE "data/mapHeaders/fuchsiamart.asm" -FuchsiaMart_h: ; 0x1dd7c to 0x1dd88 (12 bytes) (bank=7) (id=152) - db MART ; tileset - db FUCHSIA_MART_HEIGHT, FUCHSIA_MART_WIDTH ; dimensions (y, x) - dw FuchsiaMartBlocks, FuchsiaMartTextPointers, FuchsiaMartScript ; blocks, texts, scripts - db $00 ; connections - dw FuchsiaMartObject ; objects +INCLUDE "scripts/fuchsiamart.asm" -FuchsiaMartScript: ; 1dd88 (7:5d88) - jp EnableAutoTextBoxDrawing - -FuchsiaMartTextPointers: ; 1dd8b (7:5d8b) - dw FuchsiaMartText1 - dw FuchsiaMartText2 - dw FuchsiaMartText3 - -FuchsiaMartText2: ; 1dd91 (7:5d91) - TX_FAR _FuchsiaMartText2 - db "@" - -FuchsiaMartText3: ; 1dd96 (7:5d96) - TX_FAR _FuchsiaMartText3 - db "@" - -FuchsiaMartObject: ; 0x1dd9b (size=38) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $0, $ff - db $7, $4, $0, $ff - - db $0 ; signs - - db $3 ; people - db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person - db SPRITE_FAT_BALD_GUY, $2 + 4, $4 + 4, $ff, $ff, $2 ; person - db SPRITE_LASS, $5 + 4, $6 + 4, $fe, $1, $3 ; person - - ; warp-to - EVENT_DISP FUCHSIA_MART_WIDTH, $7, $3 - EVENT_DISP FUCHSIA_MART_WIDTH, $7, $4 +INCLUDE "data/mapObjects/fuchsiamart.asm" FuchsiaMartBlocks: ; 1ddc1 (7:5dc1) INCBIN "maps/fuchsiamart.blk" -SaffronHouse1_h: ; 0x1ddd1 to 0x1dddd (12 bytes) (bank=7) (id=179) - db HOUSE ; tileset - db SAFFRON_HOUSE_1_HEIGHT, SAFFRON_HOUSE_1_WIDTH ; dimensions (y, x) - dw SaffronHouse1Blocks, SaffronHouse1TextPointers, SaffronHouse1Script ; blocks, texts, scripts - db $00 ; connections - dw SaffronHouse1Object ; objects +INCLUDE "data/mapHeaders/saffronhouse1.asm" -SaffronHouse1Script: ; 1dddd (7:5ddd) - jp EnableAutoTextBoxDrawing +INCLUDE "scripts/saffronhouse1.asm" -SaffronHouse1TextPointers: ; 1dde0 (7:5de0) - dw SaffronHouse1Text1 - dw SaffronHouse1Text2 - dw SaffronHouse1Text3 - dw SaffronHouse1Text4 +INCLUDE "data/mapObjects/saffronhouse1.asm" -SaffronHouse1Text1: ; 1dde8 (7:5de8) - TX_FAR _SaffronHouse1Text1 - db "@" +INCLUDE "data/mapHeaders/saffronhouse2.asm" -SaffronHouse1Text2: ; 1dded (7:5ded) - TX_FAR _SaffronHouse1Text2 - db $8 - ld a, PIDGEY - call PlayCry - jp TextScriptEnd +INCLUDE "scripts/saffronhouse2.asm" -SaffronHouse1Text3: ; 1ddfa (7:5dfa) - TX_FAR _SaffronHouse1Text3 - db "@" - -SaffronHouse1Text4: ; 1ddff (7:5dff) - TX_FAR _SaffronHouse1Text4 - db "@" +INCLUDE "data/mapObjects/saffronhouse2.asm" -SaffronHouse1Object: ; 0x1de04 (size=44) - db $a ; border tile +INCLUDE "data/mapHeaders/diglettscaveroute2.asm" - db $2 ; warps - db $7, $2, $3, $ff - db $7, $3, $3, $ff +INCLUDE "scripts/diglettscaveroute2.asm" - db $0 ; signs +INCLUDE "data/mapObjects/diglettscaveroute2.asm" - db $4 ; people - db SPRITE_BRUNETTE_GIRL, $3 + 4, $2 + 4, $ff, $d3, $1 ; person - db SPRITE_BIRD, $4 + 4, $0 + 4, $fe, $1, $2 ; person - db SPRITE_BUG_CATCHER, $1 + 4, $4 + 4, $ff, $d0, $3 ; person - db SPRITE_PAPER_SHEET, $3 + 4, $3 + 4, $ff, $ff, $4 ; person +INCLUDE "data/mapHeaders/route2house.asm" - ; warp-to - EVENT_DISP SAFFRON_HOUSE_1_WIDTH, $7, $2 - EVENT_DISP SAFFRON_HOUSE_1_WIDTH, $7, $3 +INCLUDE "scripts/route2house.asm" -SaffronHouse2_h: ; 0x1de30 to 0x1de3c (12 bytes) (bank=7) (id=183) - db HOUSE ; tileset - db SAFFRON_HOUSE_2_HEIGHT, SAFFRON_HOUSE_2_WIDTH ; dimensions (y, x) - dw SaffronHouse2Blocks, SaffronHouse2TextPointers, SaffronHouse2Script ; blocks, texts, scripts - db $00 ; connections - dw SaffronHouse2Object ; objects +INCLUDE "data/mapObjects/route2house.asm" -SaffronHouse2Script: ; 1de3c (7:5e3c) - jp EnableAutoTextBoxDrawing - -SaffronHouse2TextPointers: ; 1de3f (7:5e3f) - dw SaffronHouse2Text1 - -SaffronHouse2Text1: ; 1de41 (7:5e41) - db $08 ; asm - ld a, [$d7bd] - bit 0, a - jr nz, .asm_9e72b ; 0x1de47 - ld hl, TM29PreReceiveText - call PrintText - ld bc,(TM_29 << 8) | 1 - call GiveItem - jr nc, .BagFull - ld hl, ReceivedTM29Text - call PrintText - ld hl, $d7bd - set 0, [hl] - jr .asm_fe4e1 ; 0x1de62 -.BagFull - ld hl, TM29NoRoomText - call PrintText - jr .asm_fe4e1 ; 0x1de6a -.asm_9e72b ; 0x1de6c - ld hl, TM29ExplanationText - call PrintText -.asm_fe4e1 ; 0x1de72 - jp TextScriptEnd - -TM29PreReceiveText: ; 1de75 (7:5e75) - TX_FAR _TM29PreReceiveText - db "@" - -ReceivedTM29Text: ; 1de7a (7:5e7a) - TX_FAR _ReceivedTM29Text ; 0xa252a - db $0B, "@" - -TM29ExplanationText: ; 1de80 (7:5e80) - TX_FAR _TM29ExplanationText - db "@" - -TM29NoRoomText: ; 1de85 (7:5e85) - TX_FAR _TM29NoRoomText - db "@" - -SaffronHouse2Object: ; 0x1de8a (size=26) - db $a ; border tile - - db $2 ; warps - db $7, $2, $7, $ff - db $7, $3, $7, $ff - - db $0 ; signs - - db $1 ; people - db SPRITE_FISHER, $3 + 4, $5 + 4, $ff, $d2, $1 ; person - - ; warp-to - EVENT_DISP SAFFRON_HOUSE_2_WIDTH, $7, $2 - EVENT_DISP SAFFRON_HOUSE_2_WIDTH, $7, $3 - -DiglettsCaveRoute2_h: ; 0x1dea4 to 0x1deb0 (12 bytes) (bank=7) (id=46) - db CAVERN ; tileset - db DIGLETTS_CAVE_EXIT_HEIGHT, DIGLETTS_CAVE_EXIT_WIDTH ; dimensions (y, x) - dw DiglettsCaveRoute2Blocks, DiglettsCaveRoute2TextPointers, DiglettsCaveRoute2Script ; blocks, texts, scripts - db $00 ; connections - dw DiglettsCaveRoute2Object ; objects - -DiglettsCaveRoute2Script: ; 1deb0 (7:5eb0) - ld a, ROUTE_2 - ld [wLastMap], a - jp EnableAutoTextBoxDrawing - -DiglettsCaveRoute2TextPointers: ; 1deb8 (7:5eb8) - dw DiglettsCaveRoute2Text1 - -DiglettsCaveRoute2Text1: ; 1deba (7:5eba) - TX_FAR _DiglettsCaveRoute2Text1 - db "@" +INCLUDE "data/mapHeaders/route5gate.asm" -DiglettsCaveRoute2Object: ; 0x1debf (size=34) - db $7d ; border tile +INCLUDE "scripts/route5gate.asm" - db $3 ; warps - db $7, $2, $0, $ff - db $7, $3, $0, $ff - db $4, $4, $0, DIGLETTS_CAVE - - db $0 ; signs - - db $1 ; people - db SPRITE_FISHER, $3 + 4, $3 + 4, $ff, $ff, $1 ; person - - ; warp-to - EVENT_DISP DIGLETTS_CAVE_EXIT_WIDTH, $7, $2 - EVENT_DISP DIGLETTS_CAVE_EXIT_WIDTH, $7, $3 - EVENT_DISP DIGLETTS_CAVE_EXIT_WIDTH, $4, $4 ; DIGLETTS_CAVE - -Route2House_h: ; 0x1dee1 to 0x1deed (12 bytes) (bank=7) (id=48) - db HOUSE ; tileset - db ROUTE_2_HOUSE_HEIGHT, ROUTE_2_HOUSE_WIDTH ; dimensions (y, x) - dw Route2HouseBlocks, Route2HouseTextPointers, Route2HouseScript ; blocks, texts, scripts - db $00 ; connections - dw Route2HouseObject ; objects - -Route2HouseScript: ; 1deed (7:5eed) - jp EnableAutoTextBoxDrawing - -Route2HouseTextPointers: ; 1def0 (7:5ef0) - dw Route2HouseText1 - dw Route2HouseText2 - -Route2HouseText1: ; 1def4 (7:5ef4) - TX_FAR _Route2HouseText1 - db "@" - -Route2HouseText2: ; 1def9 (7:5ef9) - db $08 ; asm - ld a, $1 - ld [wWhichTrade], a - ld a, $54 - call Predef - jp TextScriptEnd - -Route2HouseObject: ; 0x1df07 (size=32) - db $a ; border tile - - db $2 ; warps - db $7, $2, $2, $ff - db $7, $3, $2, $ff - - db $0 ; signs - - db $2 ; people - db SPRITE_OAK_AIDE, $4 + 4, $2 + 4, $ff, $d3, $1 ; person - db SPRITE_GAMEBOY_KID_COPY, $1 + 4, $4 + 4, $ff, $d0, $2 ; person - - ; warp-to - EVENT_DISP ROUTE_2_HOUSE_WIDTH, $7, $2 - EVENT_DISP ROUTE_2_HOUSE_WIDTH, $7, $3 - -Route5Gate_h: ; 0x1df27 to 0x1df33 (12 bytes) (bank=7) (id=70) - db GATE ; tileset - db ROUTE_5_GATE_HEIGHT, ROUTE_5_GATE_WIDTH ; dimensions (y, x) - dw Route5GateBlocks, Route5GateTextPointers, Route5GateScript ; blocks, texts, scripts - db $00 ; connections - dw Route5GateObject ; objects - -Route5GateScript: ; 1df33 (7:5f33) - call EnableAutoTextBoxDrawing - ld a, [W_ROUTE5GATECURSCRIPT] - ld hl, Route5GateScriptPointers - jp CallFunctionInTable - -Route5GateScriptPointers: ; 1df3f (7:5f3f) - dw Route5GateScript0 - dw Route5GateScript1 - -Route5GateScript_1df43: ; 1df43 (7:5f43) - ld a, $40 - ld [$ccd3], a - ld a, $1 - ld [$cd38], a - jp Func_3486 - -Route5GateScript0: ; 1df50 (7:5f50) - ld a, [$d728] - bit 6, a - ret nz - ld hl, CoordsData_1df8f - call ArePlayerCoordsInArray - ret nc - ld a, $2 - ld [$d528], a - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - callba RemoveGuardDrink - ld a, [$ffdb] - and a - jr nz, .asm_1df82 ; 0x1df70 $10 - ld a, $2 - ld [$ff8c], a - call DisplayTextID - call Route5GateScript_1df43 - ld a, $1 - ld [W_ROUTE5GATECURSCRIPT], a - ret -.asm_1df82 - ld a, $3 - ld [$ff8c], a - call DisplayTextID - ld hl, $d728 - set 6, [hl] - ret - -CoordsData_1df8f: ; 1df8f (7:5f8f) - db 3,3 - db 3,4 - db $ff - -Route5GateScript1: ; 1df94 (7:5f94) - ld a, [$cd38] - and a - ret nz - call Delay3 - xor a - ld [wJoypadForbiddenButtonsMask], a - ld [W_ROUTE5GATECURSCRIPT], a - ret - -Route5GateTextPointers: ; 1dfa4 (7:5fa4) - dw Route5GateText1 - dw Route5GateText2 - dw Route5GateText3 - -Route8GateText1: ; 1dfaa (7:5faa) -Route7GateText1: ; 1dfaa (7:5faa) -Route6GateText1: ; 1dfaa (7:5faa) -Route5GateText1: ; 1dfaa (7:5faa) - db $8 - ld a, [$d728] - bit 6, a - jr nz, .asm_88856 ; 0x1dfb0 $2c - callba RemoveGuardDrink - ld a, [$ffdb] - and a - jr nz, .asm_768a2 ; 0x1dfbd $11 - ld hl, UnnamedText_1dfe7 - call PrintText - call Route5GateScript_1df43 - ld a, $1 - ld [W_ROUTE5GATECURSCRIPT], a - jp TextScriptEnd -.asm_768a2 ; 0x1dfd0 - ld hl, UnnamedText_1dfec - call PrintText - ld hl, $d728 - set 6, [hl] - jp TextScriptEnd -.asm_88856 ; 0x1dfde - ld hl, UnnamedText_1dff6 - call PrintText - jp TextScriptEnd - -Route8GateText2: ; 1dfe7 (7:5fe7) -Route7GateText2: ; 1dfe7 (7:5fe7) -Route6GateText2: ; 1dfe7 (7:5fe7) -Route5GateText2: ; 1dfe7 (7:5fe7) -UnnamedText_1dfe7: ; 1dfe7 (7:5fe7) - TX_FAR _UnnamedText_1dfe7 - db "@" - -Route8GateText3: ; 1dfec (7:5fec) -Route7GateText3: ; 1dfec (7:5fec) -Route6GateText3: ; 1dfec (7:5fec) -Route5GateText3: ; 1dfec (7:5fec) -UnnamedText_1dfec: ; 1dfec (7:5fec) - TX_FAR _UnnamedText_8aaa9 ; 0x8aaa9 - db $11 - TX_FAR _UnnamedText_1dff1 ; 0x8aaef - db "@" - -UnnamedText_1dff6: ; 1dff6 (7:5ff6) - TX_FAR _UnnamedText_1dff6 - db "@" - -Route5GateObject: ; 0x1dffb (size=42) - db $a ; border tile - - db $4 ; warps - db $5, $3, $2, $ff - db $5, $4, $2, $ff - db $0, $3, $1, $ff - db $0, $4, $0, $ff - - db $0 ; signs - - db $1 ; people - db SPRITE_GUARD, $3 + 4, $1 + 4, $ff, $d3, $1 ; person - - ; warp-to - EVENT_DISP ROUTE_5_GATE_WIDTH, $5, $3 - EVENT_DISP ROUTE_5_GATE_WIDTH, $5, $4 - EVENT_DISP ROUTE_5_GATE_WIDTH, $0, $3 - EVENT_DISP ROUTE_5_GATE_WIDTH, $0, $4 +INCLUDE "data/mapObjects/route5gate.asm" Route5GateBlocks: ; 1e025 (7:6025) INCBIN "maps/route5gate.blk" -Route6Gate_h: ; 0x1e031 to 0x1e03d (12 bytes) (bank=7) (id=73) - db GATE ; tileset - db ROUTE_6_GATE_HEIGHT, ROUTE_6_GATE_WIDTH ; dimensions (y, x) - dw Route6GateBlocks, Route6GateTextPointers, Route6GateScript ; blocks, texts, scripts - db $00 ; connections - dw Route6GateObject ; objects +INCLUDE "data/mapHeaders/route6gate.asm" -Route6GateScript: ; 1e03d (7:603d) - call EnableAutoTextBoxDrawing - ld hl, Route6GateScriptPointers - ld a, [W_ROUTE6GATECURSCRIPT] - call CallFunctionInTable - ret +INCLUDE "scripts/route6gate.asm" -Route6GateScriptPointers: ; 1e04a (7:604a) - dw Route6GateScript0 - dw Route6GateScript1 - -Route6GateScript0: ; 1e04e (7:604e) - ld a, [$d728] - bit 6, a - ret nz - ld hl, CoordsData_1e08c - call ArePlayerCoordsInArray - ret nc - ld a, $1 - ld [$d528], a - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - callba RemoveGuardDrink - ld a, [$ffdb] - and a - jr nz, .asm_1e080 ; 0x1e06e $10 - ld a, $2 - ld [$ff8c], a - call DisplayTextID - call Func_1e0a1 - ld a, $1 - ld [W_ROUTE6GATECURSCRIPT], a - ret -.asm_1e080 - ld hl, $d728 - set 6, [hl] - ld a, $3 - ld [$ff8c], a - jp DisplayTextID - -CoordsData_1e08c: ; 1e08c (7:608c) - db $02,$03 - db $02,$04,$FF - -Route6GateScript1: ; 1e091 (7:6091) - ld a, [$cd38] - and a - ret nz - call Delay3 - xor a - ld [wJoypadForbiddenButtonsMask], a - ld [W_ROUTE6GATECURSCRIPT], a - ret - -Func_1e0a1: ; 1e0a1 (7:60a1) - ld hl, $d730 - set 7, [hl] - ld a, $80 - ld [$ccd3], a - ld a, $1 - ld [$cd38], a - xor a - ld [$c206], a - ld [$cd3b], a - ret - -Route6GateTextPointers: ; 1e0b8 (7:60b8) - dw Route6GateText1 - dw Route6GateText2 - dw Route6GateText3 - -Route6GateObject: ; 0x1e0be (size=42) - db $a ; border tile - - db $4 ; warps - db $5, $3, $2, $ff - db $5, $4, $2, $ff - db $0, $3, $1, $ff - db $0, $4, $1, $ff - - db $0 ; signs - - db $1 ; people - db SPRITE_GUARD, $2 + 4, $6 + 4, $ff, $d2, $1 ; person - - ; warp-to - EVENT_DISP ROUTE_6_GATE_WIDTH, $5, $3 - EVENT_DISP ROUTE_6_GATE_WIDTH, $5, $4 - EVENT_DISP ROUTE_6_GATE_WIDTH, $0, $3 - EVENT_DISP ROUTE_6_GATE_WIDTH, $0, $4 +INCLUDE "data/mapObjects/route6gate.asm" Route6GateBlocks: ; 1e0e8 (7:60e8) INCBIN "maps/route6gate.blk" -Route7Gate_h: ; 0x1e0f4 to 0x1e100 (12 bytes) (bank=7) (id=76) - db GATE ; tileset - db ROUTE_7_GATE_HEIGHT, ROUTE_7_GATE_WIDTH ; dimensions (y, x) - dw Route7GateBlocks, Route7GateTextPointers, Route7GateScript ; blocks, texts, scripts - db $00 ; connections - dw Route7GateObject ; objects - -Route7GateScript: ; 1e100 (7:6100) - call EnableAutoTextBoxDrawing - ld a, [W_ROUTE7GATECURSCRIPT] - ld hl, Route7GateScriptPointers - call CallFunctionInTable - ret - -Route7GateScriptPointers: ; 1e10d (7:610d) - dw Route7GateScript0 - dw Route7GateScript1 - -Route7GateScript_1e111: ; 1e111 (7:6111) - ld hl, $d730 - set 7, [hl] - ld a, $20 - ld [$ccd3], a - ld a, $1 - ld [$cd38], a - xor a - ld [$c206], a - ld [$cd3b], a - ret - -Route7GateScript0: ; 1e128 (7:6128) - ld a, [$d728] - bit 6, a - ret nz - ld hl, CoordsData_1e167 - call ArePlayerCoordsInArray - ret nc - ld a, $8 - ld [$d528], a - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - callba RemoveGuardDrink - ld a, [$ffdb] - and a - jr nz, .asm_1e15a ; 0x1e148 $10 - ld a, $2 - ld [$ff8c], a - call DisplayTextID - call Route7GateScript_1e111 - ld a, $1 - ld [W_ROUTE7GATECURSCRIPT], a - ret -.asm_1e15a - ld a, $3 - ld [$ff8c], a - call DisplayTextID - ld hl, $d728 - set 6, [hl] - ret - -CoordsData_1e167: ; 1e167 (7:6167) - db 3,3 - db 4,3 - db $ff - -Route7GateScript1: ; 1e16c (7:616c) - ld a, [$cd38] - and a - ret nz - call Delay3 - xor a - ld [wJoypadForbiddenButtonsMask], a - ld [W_ROUTE7GATECURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -Route7GateTextPointers: ; 1e17f (7:617f) - dw Route7GateText1 - dw Route7GateText2 - dw Route7GateText3 - -Route7GateObject: ; 0x1e185 (size=42) - db $a ; border tile - - db $4 ; warps - db $3, $0, $3, $ff - db $4, $0, $3, $ff - db $3, $5, $0, $ff - db $4, $5, $1, $ff +INCLUDE "data/mapHeaders/route7gate.asm" - db $0 ; signs +INCLUDE "scripts/route7gate.asm" - db $1 ; people - db SPRITE_GUARD, $1 + 4, $3 + 4, $ff, $d0, $1 ; person - - ; warp-to - EVENT_DISP ROUTE_7_GATE_WIDTH, $3, $0 - EVENT_DISP ROUTE_7_GATE_WIDTH, $4, $0 - EVENT_DISP ROUTE_7_GATE_WIDTH, $3, $5 - EVENT_DISP ROUTE_7_GATE_WIDTH, $4, $5 +INCLUDE "data/mapObjects/route7gate.asm" Route7GateBlocks: ; 1e1af (7:61af) INCBIN "maps/route7gate.blk" -Route8Gate_h: ; 0x1e1bb to 0x1e1c7 (12 bytes) (bank=7) (id=79) - db GATE ; tileset - db ROUTE_8_GATE_HEIGHT, ROUTE_8_GATE_WIDTH ; dimensions (y, x) - dw Route8GateBlocks, Route8GateTextPointers, Route8GateScript ; blocks, texts, scripts - db $00 ; connections - dw Route8GateObject ; objects +INCLUDE "data/mapHeaders/route8gate.asm" -Route8GateScript: ; 1e1c7 (7:61c7) - call EnableAutoTextBoxDrawing - ld hl, Route8GateScriptPointers - ld a, [W_ROUTE8GATECURSCRIPT] - jp CallFunctionInTable +INCLUDE "scripts/route8gate.asm" -Route8GateScriptPointers: ; 1e1d3 (7:61d3) - dw Route8GateScript0 - dw Route8GateScript1 - -Route8GateScript_1e1d7: ; 1e1d7 (7:61d7) - ld hl, $d730 - set 7, [hl] - ld a, $10 - ld [$ccd3], a - ld a, $1 - ld [$cd38], a - xor a - ld [$c206], a - ld [$cd3b], a - ret - -Route8GateScript0: ; 1e1ee (7:61ee) - ld a, [$d728] - bit 6, a - ret nz - ld hl, CoordsData_1e22c - call ArePlayerCoordsInArray - ret nc - ld a, $2 - ld [$d528], a - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - callba RemoveGuardDrink - ld a, [$ffdb] - and a - jr nz, .asm_1e220 ; 0x1e20e $10 - ld a, $2 - ld [$ff8c], a - call DisplayTextID - call Route8GateScript_1e1d7 - ld a, $1 - ld [W_ROUTE8GATECURSCRIPT], a - ret -.asm_1e220 - ld hl, $d728 - set 6, [hl] - ld a, $3 - ld [$ff8c], a - jp DisplayTextID - -CoordsData_1e22c: ; 1e22c (7:622c) - db 3,2 - db 4,2 - db $ff - -Route8GateScript1: ; 1e231 (7:6231) - ld a, [$cd38] - and a - ret nz - call Delay3 - xor a - ld [wJoypadForbiddenButtonsMask], a - ld [W_ROUTE8GATECURSCRIPT], a - ret - -Route8GateTextPointers: ; 1e241 (7:6241) - dw Route8GateText1 - dw Route8GateText2 - dw Route8GateText3 - -Route8GateObject: ; 0x1e247 (size=42) - db $a ; border tile - - db $4 ; warps - db $3, $0, $0, $ff - db $4, $0, $1, $ff - db $3, $5, $2, $ff - db $4, $5, $3, $ff - - db $0 ; signs - - db $1 ; people - db SPRITE_GUARD, $1 + 4, $2 + 4, $ff, $d0, $1 ; person - - ; warp-to - EVENT_DISP ROUTE_8_GATE_WIDTH, $3, $0 - EVENT_DISP ROUTE_8_GATE_WIDTH, $4, $0 - EVENT_DISP ROUTE_8_GATE_WIDTH, $3, $5 - EVENT_DISP ROUTE_8_GATE_WIDTH, $4, $5 +INCLUDE "data/mapObjects/route8gate.asm" Route8GateBlocks: ; 1e271 (7:6271) INCBIN "maps/route8gate.blk" -UndergroundPathEntranceRoute8_h: ; 0x1e27d to 0x1e289 (12 bytes) (bank=7) (id=80) - db GATE ; tileset - db PATH_ENTRANCE_ROUTE_8_HEIGHT, PATH_ENTRANCE_ROUTE_8_WIDTH ; dimensions (y, x) - dw UndergroundPathEntranceRoute8Blocks, UndergroundPathEntranceRoute8TextPointers, UndergroundPathEntranceRoute8Script ; blocks, texts, scripts - db $00 ; connections - dw UndergroundPathEntranceRoute8Object ; objects - -UndergroundPathEntranceRoute8Script: ; 1e289 (7:6289) - ld a, ROUTE_8 - ld [wLastMap], a - jp EnableAutoTextBoxDrawing - -UndergroundPathEntranceRoute8TextPointers: ; 1e291 (7:6291) - dw UndergroundPathEntranceRoute8Text1 - -UndergroundPathEntranceRoute8Text1: ; 1e293 (7:6293) - TX_FAR _UndergroundPathEntRoute8Text1 - db "@" - -UndergroundPathEntranceRoute8Object: ; 0x1e298 (size=34) - db $a ; border tile - - db $3 ; warps - db $7, $3, $4, $ff - db $7, $4, $4, $ff - db $4, $4, $1, UNDERGROUND_PATH_WE - - db $0 ; signs - - db $1 ; people - db SPRITE_GIRL, $4 + 4, $3 + 4, $ff, $ff, $1 ; person - - ; warp-to - EVENT_DISP PATH_ENTRANCE_ROUTE_8_WIDTH, $7, $3 - EVENT_DISP PATH_ENTRANCE_ROUTE_8_WIDTH, $7, $4 - EVENT_DISP PATH_ENTRANCE_ROUTE_8_WIDTH, $4, $4 ; UNDERGROUND_PATH_WE +INCLUDE "data/mapHeaders/undergroundpathentranceroute8.asm" -PowerPlant_h: ; 0x1e2ba to 0x1e2c6 (12 bytes) (bank=7) (id=83) - db FACILITY ; tileset - db POWER_PLANT_HEIGHT, POWER_PLANT_WIDTH ; dimensions (y, x) - dw PowerPlantBlocks, PowerPlantTextPointers, PowerPlantScript ; blocks, texts, scripts - db $00 ; connections - dw PowerPlantObject ; objects +INCLUDE "scripts/undergroundpathentranceroute8.asm" -PowerPlantScript: ; 1e2c6 (7:62c6) - call EnableAutoTextBoxDrawing - ld hl, PowerPlantTrainerHeaders - ld de, PowerPlantScriptPointers - ld a, [W_POWERPLANTCURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_POWERPLANTCURSCRIPT], a - ret - -PowerPlantScriptPointers: ; 1e2d9 (7:62d9) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -PowerPlantTextPointers: ; 1e2df (7:62df) - dw PowerPlantText1 - dw PowerPlantText2 - dw PowerPlantText3 - dw PowerPlantText4 - dw PowerPlantText5 - dw PowerPlantText6 - dw PowerPlantText7 - dw PowerPlantText8 - dw PowerPlantText9 - dw Predef5CText - dw Predef5CText - dw Predef5CText - dw Predef5CText - dw Predef5CText - -PowerPlantTrainerHeaders: ; 1e2fb (7:62fb) -PowerPlantTrainerHeader0: ; 1e2fb (7:62fb) - db 1 ; flag's bit - db 0 ; view range - dw $d7d3 ; flag's byte - dw VoltorbBattleText ; TextBeforeBattle - dw VoltorbBattleText ; TextAfterBattle - dw VoltorbBattleText ; TextEndBattle - dw VoltorbBattleText ; TextEndBattle - -PowerPlantTrainerHeader1: ; 1e307 (7:6307) - db 2 ; flag's bit - db 0 ; view range - dw $d7d3 ; flag's byte - dw VoltorbBattleText ; TextBeforeBattle - dw VoltorbBattleText ; TextAfterBattle - dw VoltorbBattleText ; TextEndBattle - dw VoltorbBattleText ; TextEndBattle - -PowerPlantTrainerHeader2: ; 1e313 (7:6313) - db 3 ; flag's bit - db 0 ; view range - dw $d7d3 ; flag's byte - dw VoltorbBattleText ; TextBeforeBattle - dw VoltorbBattleText ; TextAfterBattle - dw VoltorbBattleText ; TextEndBattle - dw VoltorbBattleText ; TextEndBattle - -PowerPlantTrainerHeader3: ; 1e31f (7:631f) - db 4 ; flag's bit - db 0 ; view range - dw $d7d3 ; flag's byte - dw VoltorbBattleText ; TextBeforeBattle - dw VoltorbBattleText ; TextAfterBattle - dw VoltorbBattleText ; TextEndBattle - dw VoltorbBattleText ; TextEndBattle - -PowerPlantTrainerHeader4: ; 1e32b (7:632b) - db 5 ; flag's bit - db 0 ; view range - dw $d7d3 ; flag's byte - dw VoltorbBattleText ; TextBeforeBattle - dw VoltorbBattleText ; TextAfterBattle - dw VoltorbBattleText ; TextEndBattle - dw VoltorbBattleText ; TextEndBattle - -PowerPlantTrainerHeader5: ; 1e337 (7:6337) - db 6 ; flag's bit - db 0 ; view range - dw $d7d3 ; flag's byte - dw VoltorbBattleText ; TextBeforeBattle - dw VoltorbBattleText ; TextAfterBattle - dw VoltorbBattleText ; TextEndBattle - dw VoltorbBattleText ; TextEndBattle - -PowerPlantTrainerHeader6: ; 1e343 (7:6343) - db 7 ; flag's bit - db 0 ; view range - dw $d7d3 ; flag's byte - dw VoltorbBattleText ; TextBeforeBattle - dw VoltorbBattleText ; TextAfterBattle - dw VoltorbBattleText ; TextEndBattle - dw VoltorbBattleText ; TextEndBattle - -PowerPlantTrainerHeader7: ; 1e34f (7:634f) - db 8 ; flag's bit - db 0 ; view range - dw $d7d3 ; flag's byte - dw VoltorbBattleText ; TextBeforeBattle - dw VoltorbBattleText ; TextAfterBattle - dw VoltorbBattleText ; TextEndBattle - dw VoltorbBattleText ; TextEndBattle - -PowerPlantTrainerHeader8: ; 1e35b (7:635b) - db 9 ; flag's bit - db 0 ; view range - dw $d7d3 ; flag's byte - dw ZapdosBattleText ; TextBeforeBattle - dw ZapdosBattleText ; TextAfterBattle - dw ZapdosBattleText ; TextEndBattle - dw ZapdosBattleText ; TextEndBattle - - db $ff - -asm_234cc: ; 1e368 (7:6368) - call TalkToTrainer - ld a, [W_CURMAPSCRIPT] - ld [W_POWERPLANTCURSCRIPT], a - jp TextScriptEnd - -PowerPlantText1: ; 1e374 (7:6374) - db $8 ; asm - ld hl, PowerPlantTrainerHeader0 ; $62fb - jr asm_234cc ; 0x1e378 $ee +INCLUDE "data/mapObjects/undergroundpathentranceroute8.asm" -PowerPlantText2: ; 1e37a (7:637a) - db $8 ; asm - ld hl, PowerPlantTrainerHeader1 ; $6307 - jr asm_234cc ; 0x1e37e $e8 - -PowerPlantText3: ; 1e380 (7:6380) - db $8 ; asm - ld hl, PowerPlantTrainerHeader2 ; $6313 - jr asm_234cc ; 0x1e384 $e2 - -PowerPlantText4: ; 1e386 (7:6386) - db $8 ; asm - ld hl, PowerPlantTrainerHeader3 ; $631f - jr asm_234cc ; 0x1e38a $dc +INCLUDE "data/mapHeaders/powerplant.asm" -PowerPlantText5: ; 1e38c (7:638c) - db $8 ; asm - ld hl, PowerPlantTrainerHeader4 ; $632b - jr asm_234cc ; 0x1e390 $d6 +INCLUDE "scripts/powerplant.asm" -PowerPlantText6: ; 1e392 (7:6392) - db $8 ; asm - ld hl, PowerPlantTrainerHeader5 ; $6337 - jr asm_234cc ; 0x1e396 $d0 - -PowerPlantText7: ; 1e398 (7:6398) - db $8 ; asm - ld hl, PowerPlantTrainerHeader6 ; $6343 - jr asm_234cc ; 0x1e39c $ca - -PowerPlantText8: ; 1e39e (7:639e) - db $8 ; asm - ld hl, PowerPlantTrainerHeader7 ; $634f - jr asm_234cc ; 0x1e3a2 $c4 - -PowerPlantText9: ; 1e3a4 (7:63a4) - db $8 ; asm - ld hl, PowerPlantTrainerHeader8 ; $635b - jr asm_234cc ; 0x1e3a8 $be - -VoltorbBattleText: ; 1e3aa (7:63aa) - TX_FAR _VoltorbBattleText ; 0x8c5e2 - db "@" - -ZapdosBattleText: ; 1e3af (7:63af) - TX_FAR _ZapdosBattleText ; 0x8c5ea - db $8 - ld a, ZAPDOS - call PlayCry - call WaitForSoundToFinish - jp TextScriptEnd - -PowerPlantObject: ; 0x1e3bf (size=135) - db $2e ; border tile - - db $3 ; warps - db $23, $4, $3, $ff - db $23, $5, $3, $ff - db $b, $0, $3, $ff - - db $0 ; signs - - db $e ; people - db SPRITE_BALL, $14 + 4, $9 + 4, $ff, $ff, $41, VOLTORB, 40 ; trainer - db SPRITE_BALL, $12 + 4, $20 + 4, $ff, $ff, $42, VOLTORB, 40 ; trainer - db SPRITE_BALL, $19 + 4, $15 + 4, $ff, $ff, $43, VOLTORB, 40 ; trainer - db SPRITE_BALL, $12 + 4, $19 + 4, $ff, $ff, $44, ELECTRODE, 43 ; trainer - db SPRITE_BALL, $22 + 4, $17 + 4, $ff, $ff, $45, VOLTORB, 40 ; trainer - db SPRITE_BALL, $1c + 4, $1a + 4, $ff, $ff, $46, VOLTORB, 40 ; trainer - db SPRITE_BALL, $e + 4, $15 + 4, $ff, $ff, $47, ELECTRODE, 43 ; trainer - db SPRITE_BALL, $20 + 4, $25 + 4, $ff, $ff, $48, VOLTORB, 40 ; trainer - db SPRITE_BIRD, $9 + 4, $4 + 4, $ff, $d1, $49, ZAPDOS, 50 ; trainer - db SPRITE_BALL, $19 + 4, $7 + 4, $ff, $ff, $8a, CARBOS ; item - db SPRITE_BALL, $3 + 4, $1c + 4, $ff, $ff, $8b, HP_UP ; item - db SPRITE_BALL, $3 + 4, $22 + 4, $ff, $ff, $8c, RARE_CANDY ; item - db SPRITE_BALL, $20 + 4, $1a + 4, $ff, $ff, $8d, TM_25 ; item - db SPRITE_BALL, $20 + 4, $14 + 4, $ff, $ff, $8e, TM_33 ; item - - ; warp-to - EVENT_DISP POWER_PLANT_WIDTH, $23, $4 - EVENT_DISP POWER_PLANT_WIDTH, $23, $5 - EVENT_DISP POWER_PLANT_WIDTH, $b, $0 +INCLUDE "data/mapObjects/powerplant.asm" PowerPlantBlocks: ; 1e446 (7:6446) INCBIN "maps/powerplant.blk" -DiglettsCaveEntranceRoute11_h: ; 0x1e5ae to 0x1e5ba (12 bytes) (bank=7) (id=85) - db CAVERN ; tileset - db DIGLETTS_CAVE_ENTRANCE_HEIGHT, DIGLETTS_CAVE_ENTRANCE_WIDTH ; dimensions (y, x) - dw DiglettsCaveEntranceRoute11Blocks, DiglettsCaveEntranceRoute11TextPointers, DiglettsCaveEntranceRoute11Script ; blocks, texts, scripts - db $00 ; connections - dw DiglettsCaveEntranceRoute11Object ; objects - -DiglettsCaveEntranceRoute11Script: ; 1e5ba (7:65ba) - call EnableAutoTextBoxDrawing - ld a, ROUTE_11 - ld [wLastMap], a - ret - -DiglettsCaveEntranceRoute11TextPointers: ; 1e5c3 (7:65c3) - dw DiglettsCaveEntranceRoute11Text1 - -DiglettsCaveEntranceRoute11Text1: ; 1e5c5 (7:65c5) - TX_FAR _DiglettsCaveEntRoute11Text1 - db "@" - -DiglettsCaveEntranceRoute11Object: ; 0x1e5ca (size=34) - db $7d ; border tile - - db $3 ; warps - db $7, $2, $4, $ff - db $7, $3, $4, $ff - db $4, $4, $1, DIGLETTS_CAVE - - db $0 ; signs - - db $1 ; people - db SPRITE_GAMBLER, $3 + 4, $2 + 4, $ff, $ff, $1 ; person - - ; warp-to - EVENT_DISP DIGLETTS_CAVE_ENTRANCE_WIDTH, $7, $2 - EVENT_DISP DIGLETTS_CAVE_ENTRANCE_WIDTH, $7, $3 - EVENT_DISP DIGLETTS_CAVE_ENTRANCE_WIDTH, $4, $4 ; DIGLETTS_CAVE - -Route16House_h: ; 0x1e5ec to 0x1e5f8 (12 bytes) (bank=7) (id=188) - db HOUSE ; tileset - db ROUTE_16_HOUSE_HEIGHT, ROUTE_16_HOUSE_WIDTH ; dimensions (y, x) - dw Route16HouseBlocks, Route16HouseTextPointers, Route16HouseScript ; blocks, texts, scripts - db $00 ; connections - dw Route16HouseObject ; objects - -Route16HouseScript: ; 1e5f8 (7:65f8) - jp EnableAutoTextBoxDrawing - -Route16HouseTextPointers: ; 1e5fb (7:65fb) - dw Route16HouseText1 - dw Route16HouseText2 - -Route16HouseText1: ; 1e5ff (7:65ff) - db $08 ; asm - ld a, [$d7e0] - bit 6, a - ld hl, HM02ExplanationText - jr nz, .asm_13616 ; 0x1e608 - ld hl, Route16HouseText3 - call PrintText - ld bc, (HM_02 << 8) | 1 - call GiveItem - jr nc, .BagFull - ld hl, $d7e0 - set 6, [hl] - ld hl, ReceivedHM02Text - jr .asm_13616 ; 0x1e620 -.BagFull - ld hl, HM02NoRoomText -.asm_13616 ; 0x1e625 - call PrintText - jp TextScriptEnd - -Route16HouseText3: ; 1e62b (7:662b) - TX_FAR _Route16HouseText3 - db "@" - -ReceivedHM02Text: ; 1e630 (7:6630) - TX_FAR _ReceivedHM02Text ; 0x8ce66 - db $11, "@" - -HM02ExplanationText: ; 1e636 (7:6636) - TX_FAR _HM02ExplanationText - db "@" - -HM02NoRoomText: ; 1e63b (7:663b) - TX_FAR _HM02NoRoomText - db "@" - -Route16HouseText2: ; 1e640 (7:6640) - db $08 ; asm - ld hl, UnnamedText_1e652 - call PrintText - ld a, FEAROW - call PlayCry - call WaitForSoundToFinish - jp TextScriptEnd - -UnnamedText_1e652: ; 1e652 (7:6652) - TX_FAR _UnnamedText_1e652 - db "@" +INCLUDE "data/mapHeaders/diglettscaveroute11.asm" -Route16HouseObject: ; 0x1e657 (size=32) - db $a ; border tile +INCLUDE "scripts/diglettscaveroute11.asm" - db $2 ; warps - db $7, $2, $8, $ff - db $7, $3, $8, $ff +INCLUDE "data/mapObjects/diglettscaveroute11.asm" - db $0 ; signs +INCLUDE "data/mapHeaders/route16house.asm" - db $2 ; people - db SPRITE_BRUNETTE_GIRL, $3 + 4, $2 + 4, $ff, $d3, $1 ; person - db SPRITE_BIRD, $4 + 4, $6 + 4, $fe, $0, $2 ; person +INCLUDE "scripts/route16house.asm" - ; warp-to - EVENT_DISP ROUTE_16_HOUSE_WIDTH, $7, $2 - EVENT_DISP ROUTE_16_HOUSE_WIDTH, $7, $3 +INCLUDE "data/mapObjects/route16house.asm" -Route22Gate_h: ; 0x1e677 to 0x1e683 (12 bytes) (bank=7) (id=193) - db GATE ; tileset - db ROUTE_22_GATE_HEIGHT, ROUTE_22_GATE_WIDTH ; dimensions (y, x) - dw Route22GateBlocks, Route22GateTextPointers, Route22GateScript ; blocks, texts, scripts - db $00 ; connections - dw Route22GateObject ; objects +INCLUDE "data/mapHeaders/route22gate.asm" -Route22GateScript: ; 1e683 (7:6683) - call EnableAutoTextBoxDrawing - ld hl, Route22GateScriptPointers - ld a, [W_ROUTE22GATECURSCRIPT] - call CallFunctionInTable - ld a, [$d361] - cp $4 - ld a, ROUTE_23 - jr c, .asm_1e69a ; 0x1e696 $2 - ld a, ROUTE_22 -.asm_1e69a - ld [wLastMap], a - ret +INCLUDE "scripts/route22gate.asm" -Route22GateScriptPointers: ; 1e69e (7:669e) - dw Route22GateScript0 - dw Route22GateScript1 - dw Route22GateScript2 - -Route22GateScript0: ; 1e6a4 (7:66a4) - ld hl, Route22GateScriptCoords - call ArePlayerCoordsInArray - ret nc - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - ld a, $1 - ld [$ff8c], a - jp DisplayTextID - -Route22GateScriptCoords: ; 1e6b5 (7:66b5) - db 2,4 - db 2,5 - db $ff - -Func_1e6ba: ; 1e6ba (7:66ba) - ld a, $1 - ld [$cd38], a - ld a, $80 - ld [$ccd3], a - ld [$c109], a - ld [wJoypadForbiddenButtonsMask], a - jp Func_3486 - -Route22GateScript1: ; 1e6cd (7:66cd) - ld a, [$cd38] - and a - ret nz - xor a - ld [wJoypadForbiddenButtonsMask], a - call Delay3 - ld a, $0 - ld [W_ROUTE22GATECURSCRIPT], a -Route22GateScript2: ; 1e6de (7:66de) - ret - -Route22GateTextPointers: ; 1e6df (7:66df) - dw Route22GateText1 - -Route22GateText1: ; 1e6e1 (7:66e1) - db $8 - ld a, [W_OBTAINEDBADGES] - bit 0, a - jr nz, .asm_8a809 ; 0x1e6e7 $d - ld hl, UnnamedText_1e704 - call PrintText - call Func_1e6ba - ld a, $1 - jr .asm_20f7e ; 0x1e6f4 $8 -.asm_8a809 ; 0x1e6f6 - ld hl, UnnamedText_1e71a - call PrintText - ld a, $2 -.asm_20f7e ; 0x1e6fe - ld [W_ROUTE22GATECURSCRIPT], a - jp TextScriptEnd - -UnnamedText_1e704: ; 1e704 (7:6704) - TX_FAR _UnnamedText_1e704 ; 0x8cfbb - db $8 - ld a, (SFX_02_51 - SFX_Headers_02) / 3 - call PlaySoundWaitForCurrent - call WaitForSoundToFinish - ld hl, UnnamedText_1e715 ; $6715 - ret - -UnnamedText_1e715: ; 1e715 (7:6715) - TX_FAR _UnnamedText_1e715 - db "@" - -UnnamedText_1e71a: ; 1e71a (7:671a) - TX_FAR _UnnamedText_1e71a ; 0x8d03e - db $0B, "@" - -Route22GateObject: ; 0x1e720 (size=42) - db $a ; border tile - - db $4 ; warps - db $7, $4, $0, $ff - db $7, $5, $0, $ff - db $0, $4, $0, $ff - db $0, $5, $1, $ff - - db $0 ; signs - - db $1 ; people - db SPRITE_GUARD, $2 + 4, $6 + 4, $ff, $d2, $1 ; person - - ; warp-to - EVENT_DISP ROUTE_22_GATE_WIDTH, $7, $4 - EVENT_DISP ROUTE_22_GATE_WIDTH, $7, $5 - EVENT_DISP ROUTE_22_GATE_WIDTH, $0, $4 - EVENT_DISP ROUTE_22_GATE_WIDTH, $0, $5 +INCLUDE "data/mapObjects/route22gate.asm" Route22GateBlocks: ; 1e74a (7:674a) INCBIN "maps/route22gate.blk" -BillsHouse_h: ; 0x1e75e to 0x1e76a (12 bytes) (bank=7) (id=88) - db INTERIOR ; tileset - db BILLS_HOUSE_HEIGHT, BILLS_HOUSE_WIDTH ; dimensions (y, x) - dw BillsHouseBlocks, BillsHouseTextPointers, BillsHouseScript ; blocks, texts, scripts - db $00 ; connections - dw BillsHouseObject ; objects +INCLUDE "data/mapHeaders/billshouse.asm" -BillsHouseScript: ; 1e76a (7:676a) - call EnableAutoTextBoxDrawing - ld a, [W_BILLSHOUSECURSCRIPT] - ld hl, BillsHouseScriptPointers - jp CallFunctionInTable +INCLUDE "scripts/billshouse.asm" -BillsHouseScriptPointers: ; 1e776 (7:6776) - dw BillsHouseScript0 - dw BillsHouseScript1 - dw BillsHouseScript2 - dw BillsHouseScript3 - dw BillsHouseScript4 - dw BillsHouseScript5 - -BillsHouseScript0: ; 1e782 (7:6782) - ret - -BillsHouseScript1: ; 1e783 (7:6783) - ld a, [$c109] - and a - ld de, MovementData_1e79c - jr nz, .asm_1e78f ; 0x1e78a $3 - ld de, MovementData_1e7a0 -.asm_1e78f - ld a, $1 - ld [$ff8c], a - call MoveSprite - ld a, $2 - ld [W_BILLSHOUSECURSCRIPT], a - ret - -MovementData_1e79c: ; 1e79c (7:679c) - db $40,$40,$40,$FF - -MovementData_1e7a0: ; 1e7a0 (7:67a0) - db $C0,$40,$40,$80,$40,$FF - -BillsHouseScript2: ; 1e7a6 (7:67a6) - ld a, [$d730] - bit 0, a - ret nz - ld a, $61 - ld [$cc4d], a - ld a, $11 - call Predef - ld hl, $d7f2 - set 6, [hl] - xor a - ld [wJoypadForbiddenButtonsMask], a - ld a, $3 - ld [W_BILLSHOUSECURSCRIPT], a - ret - -BillsHouseScript3: ; 1e7c5 (7:67c5) - ld a, [$d7f2] - bit 3, a - ret z - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - ld a, $2 - ld [$cf13], a - ld a, $c - ld [$ffeb], a - ld a, $40 - ld [$ffec], a - ld a, $6 - ld [$ffed], a - ld a, $5 - ld [$ffee], a - call Func_32f9 - ld a, $62 - ld [$cc4d], a - ld a, $15 - call Predef - ld c, $8 - call DelayFrames - ld a, $2 - ld [$ff8c], a - ld de, MovementData_1e807 - call MoveSprite - ld a, $4 - ld [W_BILLSHOUSECURSCRIPT], a - ret - -MovementData_1e807: ; 1e807 (7:6807) - db $00,$C0,$C0,$C0,$00,$FF - -BillsHouseScript4: ; 1e80d (7:680d) - ld a, [$d730] - bit 0, a - ret nz - xor a - ld [wJoypadForbiddenButtonsMask], a - ld hl, $d7f2 - set 5, [hl] - ld hl, $d7f1 - set 0, [hl] - ld a, $0 - ld [W_BILLSHOUSECURSCRIPT], a - ret - -BillsHouseScript5: ; 1e827 (7:6827) - ld a, $4 - ld [$ff8c], a - call DisplayTextID - ld a, $0 - ld [W_BILLSHOUSECURSCRIPT], a - ret - -BillsHouseTextPointers: ; 1e834 (7:6834) - dw BillsHouseText1 - dw BillsHouseText2 - dw BillsHouseText3 - dw BillsHouseText4 - -BillsHouseText4: ; 1e83c (7:683c) - db $fd - -BillsHouseText1: ; 1e83d (7:683d) - db $8 - ld hl, UnnamedText_1e865 - call PrintText - call YesNoChoice - ld a, [$cc26] - and a - jr nz, asm_6b196 ; 0x1e84b $d -asm_4d03c: ; 1e84d (7:684d) - ld hl, UnnamedText_1e86a - call PrintText - ld a, $1 - ld [W_BILLSHOUSECURSCRIPT], a - jr asm_fd4e2 ; 0x1e858 $8 -asm_6b196: ; 1e85a (7:685a) - ld hl, UnnamedText_1e86f - call PrintText - jr asm_4d03c ; 0x1e860 $eb -asm_fd4e2 ; 0x1e862 - jp TextScriptEnd - -UnnamedText_1e865: ; 1e865 (7:6865) - TX_FAR _UnnamedText_1e865 ; 0x8d267 - db "@" - -UnnamedText_1e86a: ; 1e86a (7:686a) - TX_FAR _UnnamedText_1e86a ; 0x8d345 - db "@" - -UnnamedText_1e86f: ; 1e86f (7:686f) - TX_FAR _UnnamedText_1e86f ; 0x8d391 - db "@" - -BillsHouseText2: ; 1e874 (7:6874) - db $08 ; asm - ld a, [$d7f2] - bit 4, a - jr nz, .asm_5491f ; 0x1e87a - ld hl, BillThankYouText - call PrintText - ld bc, (S_S__TICKET << 8) | 1 - call GiveItem - jr nc, .BagFull - ld hl, SSTicketReceivedText - call PrintText - ld hl, $d7f2 - set 4, [hl] - ld a, $7 - ld [$cc4d], a - ld a, $15 - call Predef - ld a, $9 - ld [$cc4d], a - ld a, $11 - call Predef -.asm_5491f ; 0x1e8a9 - ld hl, UnnamedText_1e8cb - call PrintText - jr .asm_bd408 ; 0x1e8af -.BagFull - ld hl, SSTicketNoRoomText - call PrintText -.asm_bd408 ; 0x1e8b7 - jp TextScriptEnd - -BillThankYouText: ; 1e8ba (7:68ba) - TX_FAR _BillThankYouText - db "@" - -SSTicketReceivedText: ; 1e8bf (7:68bf) - TX_FAR _SSTicketReceivedText ; 0x8d499 - db $11, $6, "@" - -SSTicketNoRoomText: ; 1e8c6 (7:68c6) - TX_FAR _SSTicketNoRoomText - db "@" - -UnnamedText_1e8cb: ; 1e8cb (7:68cb) - TX_FAR _UnnamedText_1e8cb - db "@" - -BillsHouseText3: ; 1e8d0 (7:68d0) - db $08 ; asm - ld hl, UnnamedText_1e8da - call PrintText - jp TextScriptEnd - -UnnamedText_1e8da: ; 1e8da (7:68da) - TX_FAR _UnnamedText_1e8da - db "@" - -BillsHouseObject: ; 0x1e8df (size=38) - db $d ; border tile - - db $2 ; warps - db $7, $2, $0, $ff - db $7, $3, $0, $ff - - db $0 ; signs - - db $3 ; people - db SPRITE_SLOWBRO, $5 + 4, $6 + 4, $ff, $ff, $1 ; person - db SPRITE_BLACK_HAIR_BOY_2, $4 + 4, $4 + 4, $ff, $ff, $2 ; person - db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $6 + 4, $ff, $ff, $3 ; person - - ; warp-to - EVENT_DISP BILLS_HOUSE_WIDTH, $7, $2 - EVENT_DISP BILLS_HOUSE_WIDTH, $7, $3 +INCLUDE "data/mapObjects/billshouse.asm" BillsHouseBlocks: ; 1e905 (7:6905) INCBIN "maps/billshouse.blk" Func_1e915: ; 1e915 (7:6915) call SaveScreenTilesToBuffer2 - ld hl, UnnamedText_1e946 ; $6946 + ld hl, AccessedOaksPCText call PrintText - ld hl, UnnamedText_1e93b ; $693b + ld hl, GetDexRatedText call PrintText call YesNoChoice ld a, [wCurrentMenuItem] ; $cc26 @@ -41665,20 +28376,20 @@ Func_1e915: ; 1e915 (7:6915) ld a, $56 call Predef ; indirect jump to DisplayDexRating (44169 (11:4169)) .asm_1e932 - ld hl, UnnamedText_1e940 ; $6940 + ld hl, ClosedOaksPCText call PrintText jp LoadScreenTilesFromBuffer2 -UnnamedText_1e93b: ; 1e93b (7:693b) - TX_FAR _UnnamedText_1e93b +GetDexRatedText: ; 1e93b (7:693b) + TX_FAR _GetDexRatedText db "@" -UnnamedText_1e940: ; 1e940 (7:6940) - TX_FAR _UnnamedText_1e940 +ClosedOaksPCText: ; 1e940 (7:6940) + TX_FAR _ClosedOaksPCText db $0d,"@" -UnnamedText_1e946: ; 1e946 (7:6946) - TX_FAR _UnnamedText_1e946 +AccessedOaksPCText: ; 1e946 (7:6946) + TX_FAR _AccessedOaksPCText db "@" Func_1e94b: ; 1e94b (7:694b) @@ -41695,29 +28406,29 @@ Func_1e958: ; 1e958 (7:6958) ld a, $05 jp Func_3ef5 -UnnamedText_1e960: ; 1e960 (7:6960) - TX_FAR _UnnamedText_1e960 +PushStartText: ; 1e960 (7:6960) + TX_FAR _PushStartText db "@" Func_1e965: ; 1e965 (7:6965) call EnableAutoTextBoxDrawing - ld hl, $d2f7 - ld b, $13 - call CountSetBits - ld a, [$d11e] - cp $2 - ld a, $6 - jr c, .asm_1e97b - ld a, $7 + ld hl, $d2f7 + ld b, $13 + call CountSetBits + ld a, [$d11e] + cp $2 + ld a, $6 + jr c, .asm_1e97b + ld a, $7 .asm_1e97b - jp Func_3ef5 + jp Func_3ef5 -UnnamedText_1e97e: ; 1e97e (7:697e) - TX_FAR _UnnamedText_1e97e +SaveOptionText: ; 1e97e (7:697e) + TX_FAR _SaveOptionText db "@" -UnnamedText_1e983: ; 1e983 (7:6983) - TX_FAR _UnnamedText_1e983 +StrengthsAndWeaknessesText: ; 1e983 (7:6983) + TX_FAR _StrengthsAndWeaknessesText db "@" Func_1e988: ; 1e988 (7:6988) @@ -41778,27 +28489,27 @@ asm_1e9b0: ; 1e9b0 (7:69b0) Func_1e9ed: ; 1e9ed (7:69ed) xor a ld [wJoypadForbiddenButtonsMask], a - ld hl, UnnamedText_1e9f7 ; $69f7 + ld hl, SafariGameOverText jp PrintText -UnnamedText_1e9f7: ; 1e9f7 (7:69f7) +SafariGameOverText: ; 1e9f7 (7:69f7) db $08 ; asm ld a, [W_NUMSAFARIBALLS] ; $da47 and a jr z, .asm_1ea04 - ld hl, UnnamedText_1ea0d ; $6a0d + ld hl, TimesUpText call PrintText .asm_1ea04 - ld hl, UnnamedText_1ea12 ; $6a12 + ld hl, GameOverText call PrintText jp TextScriptEnd -UnnamedText_1ea0d: ; 1ea0d (7:6a0d) - TX_FAR _UnnamedText_1ea0d +TimesUpText: ; 1ea0d (7:6a0d) + TX_FAR _TimesUpText db "@" -UnnamedText_1ea12: ; 1ea12 (7:6a12) - TX_FAR _UnnamedText_1ea12 +GameOverText: ; 1ea12 (7:6a12) + TX_FAR _GameOverText db "@" Func_1eaa17: ; 1ea17 (7:6a17) @@ -41821,14 +28532,14 @@ CinnabarGymQuiz: ; 1ea25 (7:6a25) and $f0 swap a ld [$ffdc], a - ld hl, CinnabarGymQuizIntroText ; $6a5b + ld hl, CinnabarGymQuizIntroText call PrintText ld a, [$ffdb] dec a add a ld d, $0 ld e, a - ld hl, CinnabarQuizQuestions ; $6a60 + ld hl, CinnabarQuizQuestions add hl, de ld a, [hli] ld h, [hl] @@ -41891,7 +28602,7 @@ Func_1ea92: ; 1ea92 (7:6a92) set 5, [hl] ld a, [$ffdb] ld [$ffe0], a - ld hl, CinnabarGymQuizCorrectText ; $6ae3 + ld hl, CinnabarGymQuizCorrectText call PrintText ld a, [$ffe0] ld c, a @@ -41903,7 +28614,7 @@ Func_1ea92: ; 1ea92 (7:6a92) ld a, (SFX_02_51 - SFX_Headers_02) / 3 call PlaySound call WaitForSoundToFinish - ld hl, CinnabarGymQuizIncorrectText ; $6b05 + ld hl, CinnabarGymQuizIncorrectText call PrintText ld a, [$ffdb] add $2 @@ -41995,12 +28706,12 @@ CinnabarGymGateCoords: ; 1eb48 (7:6b48) Func_1eb60: ; 1eb60 (7:6b60) call EnableAutoTextBoxDrawing - ld a, $30 - call Func_3ef5 - ret + ld a, $30 + call Func_3ef5 + ret -UnnamedText_1eb69: ; 1eb69 (7:6b69) - TX_FAR _UnnamedText_1eb69 +MagazinesText: ; 1eb69 (7:6b69) + TX_FAR _MagazinesText db "@" Func_1eb6e: ; 1eb6e (7:6b6e) @@ -42108,7 +28819,7 @@ BillsHousePokemonList: ; 1ec05 (7:6c05) bit 1, a jr nz, .asm_1ec74 ld a, [$cc26] - add $66 + add EEVEE cp EEVEE jr z, .asm_1ec6c cp FLAREON @@ -42319,67 +29030,7 @@ asm_27d9f: ; 27d9f (9:7d9f) pop hl jp PlaceString -TypeNamePointers: ; 27dae (9:7dae) - dw Type00Name - dw Type01Name - dw Type02Name - dw Type03Name - dw Type04Name - dw Type05Name - dw Type06Name - dw Type07Name - dw Type08Name - dw Type00Name - dw Type00Name - dw Type00Name - dw Type00Name - dw Type00Name - dw Type00Name - dw Type00Name - dw Type00Name - dw Type00Name - dw Type00Name - dw Type00Name - dw Type14Name - dw Type15Name - dw Type16Name - dw Type17Name - dw Type18Name - dw Type19Name - dw Type1AName - -Type00Name: ; 27de4 (9:7de4) - db "NORMAL@" -Type01Name: ; 27deb (9:7deb) - db "FIGHTING@" -Type02Name: ; 27df4 (9:7df4) - db "FLYING@" -Type03Name: ; 27dfb (9:7dfb) - db "POISON@" -Type14Name: ; 27e02 (9:7e02) - db "FIRE@" -Type15Name: ; 27e07 (9:7e07) - db "WATER@" -Type16Name: ; 27e0d (9:7e0d) - db "GRASS@" -Type17Name: ; 27e13 (9:7e13) - db "ELECTRIC@" -Type18Name: ; 27e1c (9:7e1c) - db "PSYCHIC@" -Type19Name: ; 27e24 (9:7e24) - db "ICE@" -Type04Name: ; 27e28 (9:7e28) - db "GROUND@" -Type05Name: ; 27e2f (9:7e2f) - db "ROCK@" -Type06Name: ; 27e34 (9:7e34) - db "BIRD@" -Type07Name: ; 27e39 (9:7e39) - db "BUG@" -Type08Name: ; 27e3d (9:7e3d) - db "GHOST@" -Type1AName: ; 27e43 (9:7e43) - db "DRAGON@" +INCLUDE "text/type_names.asm" SaveTrainerName: ; 27e4a (9:7e4a) ld hl,TrainerNamePointers @@ -42663,11 +29314,11 @@ LeechSeedEffect_: ; 2bea9 (a:7ea9) ld de, W_PLAYERMONTYPE1 ; $d019 (aliases: W_PLAYERMONTYPES) .asm_2bec8 ld a, [de] - cp $16 + cp GRASS jr z, .asm_2bee7 inc de ld a, [de] - cp $16 + cp GRASS jr z, .asm_2bee7 bit 7, [hl] jr nz, .asm_2bee7 @@ -42834,18 +29485,18 @@ DisplayEffectiveness: ; 2fb7b (b:7b7b) and a, $7F cp a, $0A ret z - ld hl, UnnamedText_2fb8e ; It's super effective! + ld hl, SupperEffectiveText jr nc, .done - ld hl, UnnamedText_2fb93 ; It's not very effective... + ld hl, NotVeryEffectiveText .done jp PrintText -UnnamedText_2fb8e: ; 2fb8e (b:7b8e) - TX_FAR _UnnamedText_2fb8e +SupperEffectiveText: ; 2fb8e (b:7b8e) + TX_FAR _SupperEffectiveText db "@" -UnnamedText_2fb93: ; 2fb93 (b:7b93) - TX_FAR _UnnamedText_2fb93 +NotVeryEffectiveText: ; 2fb93 (b:7b93) + TX_FAR _NotVeryEffectiveText db "@" TrainerInfoTextBoxTileGraphics: ; 2fb98 (b:7b98) @@ -42860,30 +29511,31 @@ CircleTile: ; 2fd88 (b:7d88) BadgeNumbersTileGraphics: ; 2fd98 (b:7d98) INCBIN "gfx/badge_numbers.2bpp" -Func_2fe18: ; 2fe18 (b:7e18) - ld a, [wWhichPokemon] ; $cf92 - ld hl, W_PARTYMON1_MOVE1 ; $d173 +; checks if the mon in wWhichPokemon already knows the move in $d0e0 +CheckIfMoveIsKnown: ; 2fe18 (b:7e18) + ld a, [wWhichPokemon] + ld hl, W_PARTYMON1_MOVE1 ld bc, $2c call AddNTimes ld a, [$d0e0] ld b, a - ld c, $4 -.asm_2fe2a + ld c, $4 ; nubmer of moves +.loop ld a, [hli] cp b - jr z, .asm_2fe33 + jr z, .alreadyKnown ; found a match dec c - jr nz, .asm_2fe2a + jr nz, .loop and a ret -.asm_2fe33 - ld hl, UnnamedText_2fe3b ; $7e3b +.alreadyKnown + ld hl, AlreadyKnowsText call PrintText scf ret -UnnamedText_2fe3b: ; 2fe3b (b:7e3b) - TX_FAR _UnnamedText_2fe3b +AlreadyKnowsText: ; 2fe3b (b:7e3b) + TX_FAR _AlreadyKnowsText db "@" ; scales both uncompressed sprite chunks by two in every dimension (creating 2x2 output pixels per input pixel) @@ -43021,7 +29673,7 @@ Func_2ff09 ; 2ff09 (b:7f09) ld a, [$c102] and $8 jr z, .asm_2ff2e - ld b, $45 + ld b, COIN_CASE ld a, $1c call Predef ld a, b @@ -43511,7 +30163,7 @@ Func_3730e: ; 3730e (d:730e) ld a, $4c call Predef call GBPalWhiteOutWithDelay3 - call Func_378a8 + call LoadSlotMachineTiles call LoadFontTilePatterns ld b, $5 call GoPAL_SET @@ -43880,7 +30532,7 @@ Func_37588: ; 37588 (d:7588) dec [hl] jr nz, .skip4 .skip3 - ld hl, UnnamedText_3769d + ld hl, NotThisTimeText call PrintText .loop xor a @@ -43938,7 +30590,7 @@ Func_37588: ; 37588 (d:7588) inc hl ld [hl], e call Func_3775f - ld hl, UnnamedText_37665 + ld hl, SlotsMachineText_37665 call PrintText call WaitForTextScrollButtonPress call Func_3776b @@ -43947,11 +30599,11 @@ Func_37588: ; 37588 (d:7588) ld [$ff48], a jp .loop -UnnamedText_37665: ; 37665 (d:7665) +SlotsMachineText_37665: ; 37665 (d:7665) db $08 ; asm push bc call Func_37728 - ld hl, UnnamedText_37673 + ld hl, LinedUpText pop bc inc bc inc bc @@ -43959,8 +30611,8 @@ UnnamedText_37665: ; 37665 (d:7665) inc bc ret -UnnamedText_37673: ; 37673 (d:7673) - TX_FAR _UnnamedText_37673 +LinedUpText: ; 37673 (d:7673) + TX_FAR _LinedUpText db "@" SlotRewardPointers: ; 37678 (d:7678) @@ -43989,8 +30641,8 @@ SlotReward8Text: ; 37698 (d:7698) SlotReward15Text: ; 3769a (d:769a) db "15@" -UnnamedText_3769d: ; 3769d (d:769d) - TX_FAR _UnnamedText_3769d +NotThisTimeText: ; 3769d (d:769d) + TX_FAR _NotThisTimeText db "@" Func_376a2: ; 376a2 (d:76a2) @@ -44064,7 +30716,7 @@ SlotReward100Func: ; 376f3 (d:76f3) ret SlotReward300Func: ; 37702 (d:7702) - ld hl, UnnamedText_37722 + ld hl, YeahText call PrintText ld a, (SFX_1f_3b - SFX_Headers_1f) / 3 call PlaySound @@ -44079,8 +30731,8 @@ SlotReward300Func: ; 37702 (d:7702) ld de, 300 ret -UnnamedText_37722: ; 37722 (d:7722) - TX_FAR _UnnamedText_37722 +YeahText: ; 37722 (d:7722) + TX_FAR _YeahText db $0a, "@" Func_37728: ; 37728 (d:7728) @@ -44311,7 +30963,7 @@ Func_37882: ; 37882 (d:7882) ret nz jr .loop -Func_378a8: ; 378a8 (d:78a8) +LoadSlotMachineTiles: ; 378a8 (d:78a8) call DisableLCD ld hl, SlotMachineTiles2 ld de, $8000 @@ -44352,65 +31004,7 @@ SLOTSFISH EQU $0E0C SLOTSBIRD EQU $1210 SLOTSMOUSE EQU $1614 -SlotMachineWheel1: ; 379e5 (d:79e5) - dw SLOTS7 - dw SLOTSMOUSE - dw SLOTSFISH - dw SLOTSBAR - dw SLOTSCHERRY - dw SLOTS7 - dw SLOTSFISH - dw SLOTSBIRD - dw SLOTSBAR - dw SLOTSCHERRY - dw SLOTS7 - dw SLOTSMOUSE - dw SLOTSBIRD - dw SLOTSBAR - dw SLOTSCHERRY - dw SLOTS7 - dw SLOTSMOUSE - dw SLOTSFISH - -SlotMachineWheel2: ; 37a09 (d:7a09) - dw SLOTS7 - dw SLOTSFISH - dw SLOTSCHERRY - dw SLOTSBIRD - dw SLOTSMOUSE - dw SLOTSBAR - dw SLOTSCHERRY - dw SLOTSFISH - dw SLOTSBIRD - dw SLOTSCHERRY - dw SLOTSBAR - dw SLOTSFISH - dw SLOTSBIRD - dw SLOTSCHERRY - dw SLOTSMOUSE - dw SLOTS7 - dw SLOTSFISH - dw SLOTSCHERRY - -SlotMachineWheel3: ; 37a2d (d:7a2d) - dw SLOTS7 - dw SLOTSBIRD - dw SLOTSFISH - dw SLOTSCHERRY - dw SLOTSMOUSE - dw SLOTSBIRD - dw SLOTSFISH - dw SLOTSCHERRY - dw SLOTSMOUSE - dw SLOTSBIRD - dw SLOTSFISH - dw SLOTSCHERRY - dw SLOTSMOUSE - dw SLOTSBIRD - dw SLOTSBAR - dw SLOTS7 - dw SLOTSBIRD - dw SLOTSFISH +INCLUDE "data/slot_machine_wheels.asm" SlotMachineTiles1: ; 37a51 (d:7a51) IF _RED @@ -44724,5917 +31318,11 @@ GameCornerSomeonesKeysText: ; 37e83 (d:7e83) SECTION "bankE",ROMX,BANK[$E] -Moves: ; 38000 (e:4000) -; characteristics of each move -; animation, effect, power, type, accuracy, PP - db POUND ,NO_ADDITIONAL_EFFECT ,$28,NORMAL, $FF,35 - db KARATE_CHOP ,NO_ADDITIONAL_EFFECT ,$32,NORMAL, $FF,25 - db DOUBLESLAP ,TWO_TO_FIVE_ATTACKS_EFFECT,$0F,NORMAL, $D8,10 - db COMET_PUNCH ,TWO_TO_FIVE_ATTACKS_EFFECT,$12,NORMAL, $D8,15 - db MEGA_PUNCH ,NO_ADDITIONAL_EFFECT ,$50,NORMAL, $D8,20 - db PAY_DAY ,PAY_DAY_EFFECT ,$28,NORMAL, $FF,20 - db FIRE_PUNCH ,BURN_SIDE_EFFECT1 ,$4B,FIRE, $FF,15 - db ICE_PUNCH ,FREEZE_SIDE_EFFECT ,$4B,ICE, $FF,15 - db THUNDERPUNCH,PARALYZE_SIDE_EFFECT1 ,$4B,ELECTRIC,$FF,15 - db SCRATCH ,NO_ADDITIONAL_EFFECT ,$28,NORMAL, $FF,35 - db VICEGRIP ,NO_ADDITIONAL_EFFECT ,$37,NORMAL, $FF,30 - db GUILLOTINE ,OHKO_EFFECT ,$01,NORMAL, $4C,5 - db RAZOR_WIND ,CHARGE_EFFECT ,$50,NORMAL, $BF,10 - db SWORDS_DANCE,ATTACK_UP2_EFFECT ,$00,NORMAL, $FF,30 - db CUT ,NO_ADDITIONAL_EFFECT ,$32,NORMAL, $F2,30 - db GUST ,NO_ADDITIONAL_EFFECT ,$28,NORMAL, $FF,35 - db WING_ATTACK ,NO_ADDITIONAL_EFFECT ,$23,FLYING, $FF,35 - db WHIRLWIND ,SWITCH_AND_TELEPORT_EFFECT,$00,NORMAL, $D8,20 - db FLY ,FLY_EFFECT ,$46,FLYING, $F2,15 - db BIND ,TRAPPING_EFFECT ,$0F,NORMAL, $BF,20 - db SLAM ,NO_ADDITIONAL_EFFECT ,$50,NORMAL, $BF,20 - db VINE_WHIP ,NO_ADDITIONAL_EFFECT ,$23,GRASS, $FF,10 - db STOMP ,FLINCH_SIDE_EFFECT2 ,$41,NORMAL, $FF,20 - db DOUBLE_KICK ,ATTACK_TWICE_EFFECT ,$1E,FIGHTING,$FF,30 - db MEGA_KICK ,NO_ADDITIONAL_EFFECT ,$78,NORMAL, $BF,5 - db JUMP_KICK ,JUMP_KICK_EFFECT ,$46,FIGHTING,$F2,25 - db ROLLING_KICK,FLINCH_SIDE_EFFECT2 ,$3C,FIGHTING,$D8,15 - db SAND_ATTACK ,ACCURACY_DOWN1_EFFECT ,$00,NORMAL, $FF,15 - db HEADBUTT ,FLINCH_SIDE_EFFECT2 ,$46,NORMAL, $FF,15 - db HORN_ATTACK ,NO_ADDITIONAL_EFFECT ,$41,NORMAL, $FF,25 - db FURY_ATTACK ,TWO_TO_FIVE_ATTACKS_EFFECT,$0F,NORMAL, $D8,20 - db HORN_DRILL ,OHKO_EFFECT ,$01,NORMAL, $4C,5 - db TACKLE ,NO_ADDITIONAL_EFFECT ,$23,NORMAL, $F2,35 - db BODY_SLAM ,PARALYZE_SIDE_EFFECT2 ,$55,NORMAL, $FF,15 - db WRAP ,TRAPPING_EFFECT ,$0F,NORMAL, $D8,20 - db TAKE_DOWN ,RECOIL_EFFECT ,$5A,NORMAL, $D8,20 - db THRASH ,THRASH_PETAL_DANCE_EFFECT ,$5A,NORMAL, $FF,20 - db DOUBLE_EDGE ,RECOIL_EFFECT ,$64,NORMAL, $FF,15 - db TAIL_WHIP ,DEFENSE_DOWN1_EFFECT ,$00,NORMAL, $FF,30 - db POISON_STING,POISON_SIDE_EFFECT1 ,$0F,POISON, $FF,35 - db TWINEEDLE ,TWINEEDLE_EFFECT ,$19,BUG, $FF,20 - db PIN_MISSILE ,TWO_TO_FIVE_ATTACKS_EFFECT,$0E,BUG, $D8,20 - db LEER ,DEFENSE_DOWN1_EFFECT ,$00,NORMAL, $FF,30 - db BITE ,FLINCH_SIDE_EFFECT1 ,$3C,NORMAL, $FF,25 - db GROWL ,ATTACK_DOWN1_EFFECT ,$00,NORMAL, $FF,40 - db ROAR ,SWITCH_AND_TELEPORT_EFFECT,$00,NORMAL, $FF,20 - db SING ,SLEEP_EFFECT ,$00,NORMAL, $8C,15 - db SUPERSONIC ,CONFUSION_EFFECT ,$00,NORMAL, $8C,20 - db SONICBOOM ,SPECIAL_DAMAGE_EFFECT ,$01,NORMAL, $E5,20 - db DISABLE ,DISABLE_EFFECT ,$00,NORMAL, $8C,20 - db ACID ,DEFENSE_DOWN_SIDE_EFFECT ,$28,POISON, $FF,30 - db EMBER ,BURN_SIDE_EFFECT1 ,$28,FIRE, $FF,25 - db FLAMETHROWER,BURN_SIDE_EFFECT1 ,$5F,FIRE, $FF,15 - db MIST ,MIST_EFFECT ,$00,ICE, $FF,30 - db WATER_GUN ,NO_ADDITIONAL_EFFECT ,$28,WATER, $FF,25 - db HYDRO_PUMP ,NO_ADDITIONAL_EFFECT ,$78,WATER, $CC,5 - db SURF ,NO_ADDITIONAL_EFFECT ,$5F,WATER, $FF,15 - db ICE_BEAM ,FREEZE_SIDE_EFFECT ,$5F,ICE, $FF,10 - db BLIZZARD ,FREEZE_SIDE_EFFECT ,$78,ICE, $E5,5 - db PSYBEAM ,CONFUSION_SIDE_EFFECT ,$41,PSYCHIC, $FF,20 - db BUBBLEBEAM ,SPEED_DOWN_SIDE_EFFECT ,$41,WATER, $FF,20 - db AURORA_BEAM ,ATTACK_DOWN_SIDE_EFFECT ,$41,ICE, $FF,20 - db HYPER_BEAM ,HYPER_BEAM_EFFECT ,$96,NORMAL, $E5,5 - db PECK ,NO_ADDITIONAL_EFFECT ,$23,FLYING, $FF,35 - db DRILL_PECK ,NO_ADDITIONAL_EFFECT ,$50,FLYING, $FF,20 - db SUBMISSION ,RECOIL_EFFECT ,$50,FIGHTING,$CC,25 - db LOW_KICK ,FLINCH_SIDE_EFFECT2 ,$32,FIGHTING,$E5,20 - db COUNTER ,NO_ADDITIONAL_EFFECT ,$01,FIGHTING,$FF,20 - db SEISMIC_TOSS,SPECIAL_DAMAGE_EFFECT ,$01,FIGHTING,$FF,20 - db STRENGTH ,NO_ADDITIONAL_EFFECT ,$50,NORMAL, $FF,15 - db ABSORB ,DRAIN_HP_EFFECT ,$14,GRASS, $FF,20 - db MEGA_DRAIN ,DRAIN_HP_EFFECT ,$28,GRASS, $FF,10 - db LEECH_SEED ,LEECH_SEED_EFFECT ,$00,GRASS, $E5,10 - db GROWTH ,SPECIAL_UP1_EFFECT ,$00,NORMAL, $FF,40 - db RAZOR_LEAF ,NO_ADDITIONAL_EFFECT ,$37,GRASS, $F2,25 - db SOLARBEAM ,CHARGE_EFFECT ,$78,GRASS, $FF,10 - db POISONPOWDER,POISON_EFFECT ,$00,POISON, $BF,35 - db STUN_SPORE ,PARALYZE_EFFECT ,$00,GRASS, $BF,30 - db SLEEP_POWDER,SLEEP_EFFECT ,$00,GRASS, $BF,15 - db PETAL_DANCE ,THRASH_PETAL_DANCE_EFFECT ,$46,GRASS, $FF,20 - db STRING_SHOT ,SPEED_DOWN1_EFFECT ,$00,BUG, $F2,40 - db DRAGON_RAGE ,SPECIAL_DAMAGE_EFFECT ,$01,DRAGON, $FF,10 - db FIRE_SPIN ,TRAPPING_EFFECT ,$0F,FIRE, $B2,15 - db THUNDERSHOCK,PARALYZE_SIDE_EFFECT1 ,$28,ELECTRIC,$FF,30 - db THUNDERBOLT ,PARALYZE_SIDE_EFFECT1 ,$5F,ELECTRIC,$FF,15 - db THUNDER_WAVE,PARALYZE_EFFECT ,$00,ELECTRIC,$FF,20 - db THUNDER ,PARALYZE_SIDE_EFFECT1 ,$78,ELECTRIC,$B2,10 - db ROCK_THROW ,NO_ADDITIONAL_EFFECT ,$32,ROCK, $A5,15 - db EARTHQUAKE ,NO_ADDITIONAL_EFFECT ,$64,GROUND, $FF,10 - db FISSURE ,OHKO_EFFECT ,$01,GROUND, $4C,5 - db DIG ,CHARGE_EFFECT ,$64,GROUND, $FF,10 - db TOXIC ,POISON_EFFECT ,$00,POISON, $D8,10 - db CONFUSION ,CONFUSION_SIDE_EFFECT ,$32,PSYCHIC, $FF,25 - db PSYCHIC_M ,SPECIAL_DOWN_SIDE_EFFECT ,$5A,PSYCHIC, $FF,10 - db HYPNOSIS ,SLEEP_EFFECT ,$00,PSYCHIC, $99,20 - db MEDITATE ,ATTACK_UP1_EFFECT ,$00,PSYCHIC, $FF,40 - db AGILITY ,SPEED_UP2_EFFECT ,$00,PSYCHIC, $FF,30 - db QUICK_ATTACK,NO_ADDITIONAL_EFFECT ,$28,NORMAL, $FF,30 - db RAGE ,RAGE_EFFECT ,$14,NORMAL, $FF,20 - db TELEPORT ,SWITCH_AND_TELEPORT_EFFECT,$00,PSYCHIC, $FF,20 - db NIGHT_SHADE ,SPECIAL_DAMAGE_EFFECT ,$00,GHOST, $FF,15 - db MIMIC ,MIMIC_EFFECT ,$00,NORMAL, $FF,10 - db SCREECH ,DEFENSE_DOWN2_EFFECT ,$00,NORMAL, $D8,40 - db DOUBLE_TEAM ,EVASION_UP1_EFFECT ,$00,NORMAL, $FF,15 - db RECOVER ,HEAL_EFFECT ,$00,NORMAL, $FF,20 - db HARDEN ,DEFENSE_UP1_EFFECT ,$00,NORMAL, $FF,30 - db MINIMIZE ,EVASION_UP1_EFFECT ,$00,NORMAL, $FF,20 - db SMOKESCREEN ,ACCURACY_DOWN1_EFFECT ,$00,NORMAL, $FF,20 - db CONFUSE_RAY ,CONFUSION_EFFECT ,$00,GHOST, $FF,10 - db WITHDRAW ,DEFENSE_UP1_EFFECT ,$00,WATER, $FF,40 - db DEFENSE_CURL,DEFENSE_UP1_EFFECT ,$00,NORMAL, $FF,40 - db BARRIER ,DEFENSE_UP2_EFFECT ,$00,PSYCHIC, $FF,30 - db LIGHT_SCREEN,LIGHT_SCREEN_EFFECT ,$00,PSYCHIC, $FF,30 - db HAZE ,HAZE_EFFECT ,$00,ICE, $FF,30 - db REFLECT ,REFLECT_EFFECT ,$00,PSYCHIC, $FF,20 - db FOCUS_ENERGY,FOCUS_ENERGY_EFFECT ,$00,NORMAL, $FF,30 - db BIDE ,BIDE_EFFECT ,$00,NORMAL, $FF,10 - db METRONOME ,METRONOME_EFFECT ,$00,NORMAL, $FF,10 - db MIRROR_MOVE ,MIRROR_MOVE_EFFECT ,$00,FLYING, $FF,20 - db SELFDESTRUCT,EXPLODE_EFFECT ,$82,NORMAL, $FF,5 - db EGG_BOMB ,NO_ADDITIONAL_EFFECT ,$64,NORMAL, $BF,10 - db LICK ,PARALYZE_SIDE_EFFECT2 ,$14,GHOST, $FF,30 - db SMOG ,POISON_SIDE_EFFECT2 ,$14,POISON, $B2,20 - db SLUDGE ,POISON_SIDE_EFFECT2 ,$41,POISON, $FF,20 - db BONE_CLUB ,FLINCH_SIDE_EFFECT1 ,$41,GROUND, $D8,20 - db FIRE_BLAST ,BURN_SIDE_EFFECT2 ,$78,FIRE, $D8,5 - db WATERFALL ,NO_ADDITIONAL_EFFECT ,$50,WATER, $FF,15 - db CLAMP ,TRAPPING_EFFECT ,$23,WATER, $BF,10 - db SWIFT ,SWIFT_EFFECT ,$3C,NORMAL, $FF,20 - db SKULL_BASH ,CHARGE_EFFECT ,$64,NORMAL, $FF,15 - db SPIKE_CANNON,TWO_TO_FIVE_ATTACKS_EFFECT,$14,NORMAL, $FF,15 - db CONSTRICT ,SPEED_DOWN_SIDE_EFFECT ,$0A,NORMAL, $FF,35 - db AMNESIA ,SPECIAL_UP2_EFFECT ,$00,PSYCHIC, $FF,20 - db KINESIS ,ACCURACY_DOWN1_EFFECT ,$00,PSYCHIC, $CC,15 - db SOFTBOILED ,HEAL_EFFECT ,$00,NORMAL, $FF,10 - db HI_JUMP_KICK,JUMP_KICK_EFFECT ,$55,FIGHTING,$E5,20 - db GLARE ,PARALYZE_EFFECT ,$00,NORMAL, $BF,30 - db DREAM_EATER ,DREAM_EATER_EFFECT ,$64,PSYCHIC, $FF,15 - db POISON_GAS ,POISON_EFFECT ,$00,POISON, $8C,40 - db BARRAGE ,TWO_TO_FIVE_ATTACKS_EFFECT,$0F,NORMAL, $D8,20 - db LEECH_LIFE ,DRAIN_HP_EFFECT ,$14,BUG, $FF,15 - db LOVELY_KISS ,SLEEP_EFFECT ,$00,NORMAL, $BF,10 - db SKY_ATTACK ,CHARGE_EFFECT ,$8C,FLYING, $E5,5 - db TRANSFORM ,TRANSFORM_EFFECT ,$00,NORMAL, $FF,10 - db BUBBLE ,SPEED_DOWN_SIDE_EFFECT ,$14,WATER, $FF,30 - db DIZZY_PUNCH ,NO_ADDITIONAL_EFFECT ,$46,NORMAL, $FF,10 - db SPORE ,SLEEP_EFFECT ,$00,GRASS, $FF,15 - db FLASH ,ACCURACY_DOWN1_EFFECT ,$00,NORMAL, $B2,20 - db PSYWAVE ,SPECIAL_DAMAGE_EFFECT ,$01,PSYCHIC, $CC,15 - db SPLASH ,SPLASH_EFFECT ,$00,NORMAL, $FF,40 - db ACID_ARMOR ,DEFENSE_UP2_EFFECT ,$00,POISON, $FF,40 - db CRABHAMMER ,NO_ADDITIONAL_EFFECT ,$5A,WATER, $D8,10 - db EXPLOSION ,EXPLODE_EFFECT ,$AA,NORMAL, $FF,5 - db FURY_SWIPES ,TWO_TO_FIVE_ATTACKS_EFFECT,$12,NORMAL, $CC,15 - db BONEMERANG ,ATTACK_TWICE_EFFECT ,$32,GROUND, $E5,10 - db REST ,HEAL_EFFECT ,$00,PSYCHIC, $FF,10 - db ROCK_SLIDE ,NO_ADDITIONAL_EFFECT ,$4B,ROCK, $E5,10 - db HYPER_FANG ,FLINCH_SIDE_EFFECT1 ,$50,NORMAL, $E5,15 - db SHARPEN ,ATTACK_UP1_EFFECT ,$00,NORMAL, $FF,30 - db CONVERSION ,CONVERSION_EFFECT ,$00,NORMAL, $FF,30 - db TRI_ATTACK ,NO_ADDITIONAL_EFFECT ,$50,NORMAL, $FF,10 - db SUPER_FANG ,SUPER_FANG_EFFECT ,$01,NORMAL, $E5,10 - db SLASH ,NO_ADDITIONAL_EFFECT ,$46,NORMAL, $FF,20 - db SUBSTITUTE ,SUBSTITUTE_EFFECT ,$00,NORMAL, $FF,10 - db STRUGGLE ,RECOIL_EFFECT ,$32,NORMAL, $FF,10 - -BulbasaurBaseStats: ; 383de (e:43de) - db DEX_BULBASAUR ; pokedex id - db 45 ; base hp - db 49 ; base attack - db 49 ; base defense - db 45 ; base speed - db 65 ; base special - - db GRASS ; species type 1 - db POISON ; species type 2 - - db 45 ; catch rate - db 64 ; base exp yield - db $55 ; sprite dimensions - - dw BulbasaurPicFront - dw BulbasaurPicBack - - ; attacks known at lvl 0 - db TACKLE - db GROWL - db 0 - db 0 - - db 3 ; growth rate - - ; learnset - db %10100100 - db %00000011 - db %00111000 - db %11000000 - db %00000011 - db %00001000 - db %00000110 - - db 0 ; padding - -IvysaurBaseStats: ; 383fa (e:43fa) - db DEX_IVYSAUR ; pokedex id - db 60 ; base hp - db 62 ; base attack - db 63 ; base defense - db 60 ; base speed - db 80 ; base special - - db GRASS ; species type 1 - db POISON ; species type 2 - - db 45 ; catch rate - db 141 ; base exp yield - db $66 ; sprite dimensions - - dw IvysaurPicFront - dw IvysaurPicBack - - ; attacks known at lvl 0 - db TACKLE - db GROWL - db LEECH_SEED - db 0 - - db 3 ; growth rate - - ; learnset - db %10100100 - db %00000011 - db %00111000 - db %11000000 - db %00000011 - db %00001000 - db %00000110 - - db 0 ; padding - -VenusaurBaseStats: ; 38416 (e:4416) - db DEX_VENUSAUR ; pokedex id - db 80 ; base hp - db 82 ; base attack - db 83 ; base defense - db 80 ; base speed - db 100 ; base special - - db GRASS ; species type 1 - db POISON ; species type 2 - - db 45 ; catch rate - db 208 ; base exp yield - db $77 ; sprite dimensions - - dw VenusaurPicFront - dw VenusaurPicBack - - ; attacks known at lvl 0 - db TACKLE - db GROWL - db LEECH_SEED - db VINE_WHIP - - db 3 ; growth rate - - ; learnset - db %10100100 - db %01000011 - db %00111000 - db %11000000 - db %00000011 - db %00001000 - db %00000110 - - db 0 ; padding - -CharmanderBaseStats: ; 38432 (e:4432) - db DEX_CHARMANDER ; pokedex id - db 39 ; base hp - db 52 ; base attack - db 43 ; base defense - db 65 ; base speed - db 50 ; base special - - db FIRE ; species type 1 - db FIRE ; species type 2 - - db 45 ; catch rate - db 65 ; base exp yield - db $55 ; sprite dimensions - - dw CharmanderPicFront - dw CharmanderPicBack - - ; attacks known at lvl 0 - db SCRATCH - db GROWL - db 0 - db 0 - - db 3 ; growth rate - - ; learnset - db %10110101 - db %00000011 - db %01001111 - db %11001000 - db %11100011 - db %00001000 - db %00100110 - - db 0 ; padding - -CharmeleonBaseStats: ; 3844e (e:444e) - db DEX_CHARMELEON ; pokedex id - db 58 ; base hp - db 64 ; base attack - db 58 ; base defense - db 80 ; base speed - db 65 ; base special - - db FIRE ; species type 1 - db FIRE ; species type 2 - - db 45 ; catch rate - db 142 ; base exp yield - db $66 ; sprite dimensions - - dw CharmeleonPicFront - dw CharmeleonPicBack - - ; attacks known at lvl 0 - db SCRATCH - db GROWL - db EMBER - db 0 - - db 3 ; growth rate - - ; learnset - db %10110101 - db %00000011 - db %01001111 - db %11001000 - db %11100011 - db %00001000 - db %00100110 - - db 0 ; padding - -CharizardBaseStats: ; 3846a (e:446a) - db DEX_CHARIZARD ; pokedex id - db 78 ; base hp - db 84 ; base attack - db 78 ; base defense - db 100 ; base speed - db 85 ; base special - - db FIRE ; species type 1 - db FLYING ; species type 2 - - db 45 ; catch rate - db 209 ; base exp yield - db $77 ; sprite dimensions - - dw CharizardPicFront - dw CharizardPicBack - - ; attacks known at lvl 0 - db SCRATCH - db GROWL - db EMBER - db LEER - - db 3 ; growth rate - - ; learnset - db %10110101 - db %01000011 - db %01001111 - db %11001110 - db %11100011 - db %00001000 - db %00100110 - - db 0 ; padding - -SquirtleBaseStats: ; 38486 (e:4486) - db DEX_SQUIRTLE ; pokedex id - db 44 ; base hp - db 48 ; base attack - db 65 ; base defense - db 43 ; base speed - db 50 ; base special - - db WATER ; species type 1 - db WATER ; species type 2 - - db 45 ; catch rate - db 66 ; base exp yield - db $55 ; sprite dimensions - - dw SquirtlePicFront - dw SquirtlePicBack - - ; attacks known at lvl 0 - db TACKLE - db TAIL_WHIP - db 0 - db 0 - - db 3 ; growth rate - - ; learnset - db %10110001 - db %00111111 - db %00001111 - db %11001000 - db %10000011 - db %00001000 - db %00110010 - - db 0 ; padding - -WartortleBaseStats: ; 384a2 (e:44a2) - db DEX_WARTORTLE ; pokedex id - db 59 ; base hp - db 63 ; base attack - db 80 ; base defense - db 58 ; base speed - db 65 ; base special - - db WATER ; species type 1 - db WATER ; species type 2 - - db 45 ; catch rate - db 143 ; base exp yield - db $66 ; sprite dimensions - - dw WartortlePicFront - dw WartortlePicBack - - ; attacks known at lvl 0 - db TACKLE - db TAIL_WHIP - db BUBBLE - db 0 - - db 3 ; growth rate - - ; learnset - db %10110001 - db %00111111 - db %00001111 - db %11001000 - db %10000011 - db %00001000 - db %00110010 - - db 0 ; padding - -BlastoiseBaseStats: ; 384be (e:44be) - db DEX_BLASTOISE ; pokedex id - db 79 ; base hp - db 83 ; base attack - db 100 ; base defense - db 78 ; base speed - db 85 ; base special - - db WATER ; species type 1 - db WATER ; species type 2 - - db 45 ; catch rate - db 210 ; base exp yield - db $77 ; sprite dimensions - - dw BlastoisePicFront - dw BlastoisePicBack - - ; attacks known at lvl 0 - db TACKLE - db TAIL_WHIP - db BUBBLE - db WATER_GUN - - db 3 ; growth rate - - ; learnset - db %10110001 - db %01111111 - db %00001111 - db %11001110 - db %10000011 - db %00001000 - db %00110010 - - db 0 ; padding - -CaterpieBaseStats: ; 384da (e:44da) - db DEX_CATERPIE ; pokedex id - db 45 ; base hp - db 30 ; base attack - db 35 ; base defense - db 45 ; base speed - db 20 ; base special - - db BUG ; species type 1 - db BUG ; species type 2 - - db 255 ; catch rate - db 53 ; base exp yield - db $55 ; sprite dimensions - - dw CaterpiePicFront - dw CaterpiePicBack - - ; attacks known at lvl 0 - db TACKLE - db STRING_SHOT - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %00000000 - db %00000000 - db %00000000 - db %00000000 - db %00000000 - db %00000000 - db %00000000 - - db 0 ; padding - -MetapodBaseStats: ; 384f6 (e:44f6) - db DEX_METAPOD ; pokedex id - db 50 ; base hp - db 20 ; base attack - db 55 ; base defense - db 30 ; base speed - db 25 ; base special - - db BUG ; species type 1 - db BUG ; species type 2 - - db 120 ; catch rate - db 72 ; base exp yield - db $55 ; sprite dimensions - - dw MetapodPicFront - dw MetapodPicBack - - ; attacks known at lvl 0 - db HARDEN - db 0 - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %00000000 - db %00000000 - db %00000000 - db %00000000 - db %00000000 - db %00000000 - db %00000000 - - db 0 ; padding - -ButterfreeBaseStats: ; 38512 (e:4512) - db DEX_BUTTERFREE ; pokedex id - db 60 ; base hp - db 45 ; base attack - db 50 ; base defense - db 70 ; base speed - db 80 ; base special - - db BUG ; species type 1 - db FLYING ; species type 2 - - db 45 ; catch rate - db 160 ; base exp yield - db $77 ; sprite dimensions - - dw ButterfreePicFront - dw ButterfreePicBack - - ; attacks known at lvl 0 - db CONFUSION - db 0 - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %00101010 - db %01000011 - db %00111000 - db %11110000 - db %01000011 - db %00101000 - db %00000010 +INCLUDE "data/moves.asm" - db 0 ; padding +INCLUDE "data/base_stats.asm" -WeedleBaseStats: ; 3852e (e:452e) - db DEX_WEEDLE ; pokedex id - db 40 ; base hp - db 35 ; base attack - db 30 ; base defense - db 50 ; base speed - db 20 ; base special - - db BUG ; species type 1 - db POISON ; species type 2 - - db 255 ; catch rate - db 52 ; base exp yield - db $55 ; sprite dimensions - - dw WeedlePicFront - dw WeedlePicBack - - ; attacks known at lvl 0 - db POISON_STING - db STRING_SHOT - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %00000000 - db %00000000 - db %00000000 - db %00000000 - db %00000000 - db %00000000 - db %00000000 - - db 0 ; padding - -KakunaBaseStats: ; 3854a (e:454a) - db DEX_KAKUNA ; pokedex id - db 45 ; base hp - db 25 ; base attack - db 50 ; base defense - db 35 ; base speed - db 25 ; base special - - db BUG ; species type 1 - db POISON ; species type 2 - - db 120 ; catch rate - db 71 ; base exp yield - db $55 ; sprite dimensions - - dw KakunaPicFront - dw KakunaPicBack - - ; attacks known at lvl 0 - db HARDEN - db 0 - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %00000000 - db %00000000 - db %00000000 - db %00000000 - db %00000000 - db %00000000 - db %00000000 - - db 0 ; padding - -BeedrillBaseStats: ; 38566 (e:4566) - db DEX_BEEDRILL ; pokedex id - db 65 ; base hp - db 80 ; base attack - db 40 ; base defense - db 75 ; base speed - db 45 ; base special - - db BUG ; species type 1 - db POISON ; species type 2 - - db 45 ; catch rate - db 159 ; base exp yield - db $77 ; sprite dimensions - - dw BeedrillPicFront - dw BeedrillPicBack - - ; attacks known at lvl 0 - db FURY_ATTACK - db 0 - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %00100100 - db %01000011 - db %00011000 - db %11000000 - db %11000011 - db %00001000 - db %00000110 - - db 0 ; padding - -PidgeyBaseStats: ; 38582 (e:4582) - db DEX_PIDGEY ; pokedex id - db 40 ; base hp - db 45 ; base attack - db 40 ; base defense - db 56 ; base speed - db 35 ; base special - - db NORMAL ; species type 1 - db FLYING ; species type 2 - - db 255 ; catch rate - db 55 ; base exp yield - db $55 ; sprite dimensions - - dw PidgeyPicFront - dw PidgeyPicBack - - ; attacks known at lvl 0 - db GUST - db 0 - db 0 - db 0 - - db 3 ; growth rate - - ; learnset - db %00101010 - db %00000011 - db %00001000 - db %11000000 - db %01000011 - db %00001100 - db %00001010 - - db 0 ; padding - -PidgeottoBaseStats: ; 3859e (e:459e) - db DEX_PIDGEOTTO ; pokedex id - db 63 ; base hp - db 60 ; base attack - db 55 ; base defense - db 71 ; base speed - db 50 ; base special - - db NORMAL ; species type 1 - db FLYING ; species type 2 - - db 120 ; catch rate - db 113 ; base exp yield - db $66 ; sprite dimensions - - dw PidgeottoPicFront - dw PidgeottoPicBack - - ; attacks known at lvl 0 - db GUST - db SAND_ATTACK - db 0 - db 0 - - db 3 ; growth rate - - ; learnset - db %00101010 - db %00000011 - db %00001000 - db %11000000 - db %01000011 - db %00001100 - db %00001010 - - db 0 ; padding - -PidgeotBaseStats: ; 385ba (e:45ba) - db DEX_PIDGEOT ; pokedex id - db 83 ; base hp - db 80 ; base attack - db 75 ; base defense - db 91 ; base speed - db 70 ; base special - - db NORMAL ; species type 1 - db FLYING ; species type 2 - - db 45 ; catch rate - db 172 ; base exp yield - db $77 ; sprite dimensions - - dw PidgeotPicFront - dw PidgeotPicBack - - ; attacks known at lvl 0 - db GUST - db SAND_ATTACK - db QUICK_ATTACK - db 0 - - db 3 ; growth rate - - ; learnset - db %00101010 - db %01000011 - db %00001000 - db %11000000 - db %01000011 - db %00001100 - db %00001010 - - db 0 ; padding - -RattataBaseStats: ; 385d6 (e:45d6) - db DEX_RATTATA ; pokedex id - db 30 ; base hp - db 56 ; base attack - db 35 ; base defense - db 72 ; base speed - db 25 ; base special - - db NORMAL ; species type 1 - db NORMAL ; species type 2 - - db 255 ; catch rate - db 57 ; base exp yield - db $55 ; sprite dimensions - - dw RattataPicFront - dw RattataPicBack - - ; attacks known at lvl 0 - db TACKLE - db TAIL_WHIP - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %10100000 - db %00101111 - db %10001000 - db %11001001 - db %11000010 - db %00001000 - db %00000010 - - db 0 ; padding - -RaticateBaseStats: ; 385f2 (e:45f2) - db DEX_RATICATE ; pokedex id - db 55 ; base hp - db 81 ; base attack - db 60 ; base defense - db 97 ; base speed - db 50 ; base special - - db NORMAL ; species type 1 - db NORMAL ; species type 2 - - db 90 ; catch rate - db 116 ; base exp yield - db $66 ; sprite dimensions - - dw RaticatePicFront - dw RaticatePicBack - - ; attacks known at lvl 0 - db TACKLE - db TAIL_WHIP - db QUICK_ATTACK - db 0 - - db 0 ; growth rate - - ; learnset - db %10100000 - db %01111111 - db %10001000 - db %11001001 - db %11000010 - db %00001000 - db %00000010 - - db 0 ; padding - -SpearowBaseStats: ; 3860e (e:460e) - db DEX_SPEAROW ; pokedex id - db 40 ; base hp - db 60 ; base attack - db 30 ; base defense - db 70 ; base speed - db 31 ; base special - - db NORMAL ; species type 1 - db FLYING ; species type 2 - - db 255 ; catch rate - db 58 ; base exp yield - db $55 ; sprite dimensions - - dw SpearowPicFront - dw SpearowPicBack - - ; attacks known at lvl 0 - db PECK - db GROWL - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %00101010 - db %00000011 - db %00001000 - db %11000000 - db %01000010 - db %00001100 - db %00001010 - - db 0 ; padding - -FearowBaseStats: ; 3862a (e:462a) - db DEX_FEAROW ; pokedex id - db 65 ; base hp - db 90 ; base attack - db 65 ; base defense - db 100 ; base speed - db 61 ; base special - - db NORMAL ; species type 1 - db FLYING ; species type 2 - - db 90 ; catch rate - db 162 ; base exp yield - db $77 ; sprite dimensions - - dw FearowPicFront - dw FearowPicBack - - ; attacks known at lvl 0 - db PECK - db GROWL - db LEER - db 0 - - db 0 ; growth rate - - ; learnset - db %00101010 - db %01000011 - db %00001000 - db %11000000 - db %01000010 - db %00001100 - db %00001010 - - db 0 ; padding - -EkansBaseStats: ; 38646 (e:4646) - db DEX_EKANS ; pokedex id - db 35 ; base hp - db 60 ; base attack - db 44 ; base defense - db 55 ; base speed - db 40 ; base special - - db POISON ; species type 1 - db POISON ; species type 2 - - db 255 ; catch rate - db 62 ; base exp yield - db $55 ; sprite dimensions - - dw EkansPicFront - dw EkansPicBack - - ; attacks known at lvl 0 - db WRAP - db LEER - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %10100000 - db %00000011 - db %00011000 - db %11001110 - db %10000010 - db %10001000 - db %00100010 - - db 0 ; padding - -ArbokBaseStats: ; 38662 (e:4662) - db DEX_ARBOK ; pokedex id - db 60 ; base hp - db 85 ; base attack - db 69 ; base defense - db 80 ; base speed - db 65 ; base special - - db POISON ; species type 1 - db POISON ; species type 2 - - db 90 ; catch rate - db 147 ; base exp yield - db $77 ; sprite dimensions - - dw ArbokPicFront - dw ArbokPicBack - - ; attacks known at lvl 0 - db WRAP - db LEER - db POISON_STING - db 0 - - db 0 ; growth rate - - ; learnset - db %10100000 - db %01000011 - db %00011000 - db %11001110 - db %10000010 - db %10001000 - db %00100010 - - db 0 ; padding - -PikachuBaseStats: ; 3867e (e:467e) - db DEX_PIKACHU ; pokedex id - db 35 ; base hp - db 55 ; base attack - db 30 ; base defense - db 90 ; base speed - db 50 ; base special - - db ELECTRIC ; species type 1 - db ELECTRIC ; species type 2 - - db 190 ; catch rate - db 82 ; base exp yield - db $55 ; sprite dimensions - - dw PikachuPicFront - dw PikachuPicBack - - ; attacks known at lvl 0 - db THUNDERSHOCK - db GROWL - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %10110001 - db %10000011 - db %10001101 - db %11000001 - db %11000011 - db %00011000 - db %01000010 - - db 0 ; padding - -RaichuBaseStats: ; 3869a (e:469a) - db DEX_RAICHU ; pokedex id - db 60 ; base hp - db 90 ; base attack - db 55 ; base defense - db 100 ; base speed - db 90 ; base special - - db ELECTRIC ; species type 1 - db ELECTRIC ; species type 2 - - db 75 ; catch rate - db 122 ; base exp yield - db $77 ; sprite dimensions - - dw RaichuPicFront - dw RaichuPicBack - - ; attacks known at lvl 0 - db THUNDERSHOCK - db GROWL - db THUNDER_WAVE - db 0 - - db 0 ; growth rate - - ; learnset - db %10110001 - db %11000011 - db %10001101 - db %11000001 - db %11000011 - db %00011000 - db %01000010 - - db 0 ; padding - -SandshrewBaseStats: ; 386b6 (e:46b6) - db DEX_SANDSHREW ; pokedex id - db 50 ; base hp - db 75 ; base attack - db 85 ; base defense - db 40 ; base speed - db 30 ; base special - - db GROUND ; species type 1 - db GROUND ; species type 2 - - db 255 ; catch rate - db 93 ; base exp yield - db $55 ; sprite dimensions - - dw SandshrewPicFront - dw SandshrewPicBack - - ; attacks known at lvl 0 - db SCRATCH - db 0 - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %10100100 - db %00000011 - db %00001101 - db %11001110 - db %11000010 - db %10001000 - db %00100110 - - db 0 ; padding - -SandslashBaseStats: ; 386d2 (e:46d2) - db DEX_SANDSLASH ; pokedex id - db 75 ; base hp - db 100 ; base attack - db 110 ; base defense - db 65 ; base speed - db 55 ; base special - - db GROUND ; species type 1 - db GROUND ; species type 2 - - db 90 ; catch rate - db 163 ; base exp yield - db $66 ; sprite dimensions - - dw SandslashPicFront - dw SandslashPicBack - - ; attacks known at lvl 0 - db SCRATCH - db SAND_ATTACK - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %10100100 - db %01000011 - db %00001101 - db %11001110 - db %11000010 - db %10001000 - db %00100110 - - db 0 ; padding - -NidoranFBaseStats: ; 386ee (e:46ee) - db DEX_NIDORAN_F ; pokedex id - db 55 ; base hp - db 47 ; base attack - db 52 ; base defense - db 41 ; base speed - db 40 ; base special - - db POISON ; species type 1 - db POISON ; species type 2 - - db 235 ; catch rate - db 59 ; base exp yield - db $55 ; sprite dimensions - - dw NidoranFPicFront - dw NidoranFPicBack - - ; attacks known at lvl 0 - db GROWL - db TACKLE - db 0 - db 0 - - db 3 ; growth rate - - ; learnset - db %10100000 - db %00100011 - db %10001000 - db %11000001 - db %10000011 - db %00001000 - db %00000010 - - db 0 ; padding - -NidorinaBaseStats: ; 3870a (e:470a) - db DEX_NIDORINA ; pokedex id - db 70 ; base hp - db 62 ; base attack - db 67 ; base defense - db 56 ; base speed - db 55 ; base special - - db POISON ; species type 1 - db POISON ; species type 2 - - db 120 ; catch rate - db 117 ; base exp yield - db $66 ; sprite dimensions - - dw NidorinaPicFront - dw NidorinaPicBack - - ; attacks known at lvl 0 - db GROWL - db TACKLE - db SCRATCH - db 0 - - db 3 ; growth rate - - ; learnset - db %11100000 - db %00111111 - db %10001000 - db %11000001 - db %10000011 - db %00001000 - db %00000010 - - db 0 ; padding - -NidoqueenBaseStats: ; 38726 (e:4726) - db DEX_NIDOQUEEN ; pokedex id - db 90 ; base hp - db 82 ; base attack - db 87 ; base defense - db 76 ; base speed - db 75 ; base special - - db POISON ; species type 1 - db GROUND ; species type 2 - - db 45 ; catch rate - db 194 ; base exp yield - db $77 ; sprite dimensions - - dw NidoqueenPicFront - dw NidoqueenPicBack - - ; attacks known at lvl 0 - db TACKLE - db SCRATCH - db TAIL_WHIP - db BODY_SLAM - - db 3 ; growth rate - - ; learnset - db %11110001 - db %11111111 - db %10001111 - db %11000111 - db %10100011 - db %10001000 - db %00110010 - - db 0 ; padding - -NidoranMBaseStats: ; 38742 (e:4742) - db DEX_NIDORAN_M ; pokedex id - db 46 ; base hp - db 57 ; base attack - db 40 ; base defense - db 50 ; base speed - db 40 ; base special - - db POISON ; species type 1 - db POISON ; species type 2 - - db 235 ; catch rate - db 60 ; base exp yield - db $55 ; sprite dimensions - - dw NidoranMPicFront - dw NidoranMPicBack - - ; attacks known at lvl 0 - db LEER - db TACKLE - db 0 - db 0 - - db 3 ; growth rate - - ; learnset - db %11100000 - db %00100011 - db %10001000 - db %11000001 - db %10000011 - db %00001000 - db %00000010 - - db 0 ; padding - -NidorinoBaseStats: ; 3875e (e:475e) - db DEX_NIDORINO ; pokedex id - db 61 ; base hp - db 72 ; base attack - db 57 ; base defense - db 65 ; base speed - db 55 ; base special - - db POISON ; species type 1 - db POISON ; species type 2 - - db 120 ; catch rate - db 118 ; base exp yield - db $66 ; sprite dimensions - - dw NidorinoPicFront - dw NidorinoPicBack - - ; attacks known at lvl 0 - db LEER - db TACKLE - db HORN_ATTACK - db 0 - - db 3 ; growth rate - - ; learnset - db %11100000 - db %00111111 - db %10001000 - db %11000001 - db %10000011 - db %00001000 - db %00000010 - - db 0 ; padding - -NidokingBaseStats: ; 3877a (e:477a) - db DEX_NIDOKING ; pokedex id - db 81 ; base hp - db 92 ; base attack - db 77 ; base defense - db 85 ; base speed - db 75 ; base special - - db POISON ; species type 1 - db GROUND ; species type 2 - - db 45 ; catch rate - db 195 ; base exp yield - db $77 ; sprite dimensions - - dw NidokingPicFront - dw NidokingPicBack - - ; attacks known at lvl 0 - db TACKLE - db HORN_ATTACK - db POISON_STING - db THRASH - - db 3 ; growth rate - - ; learnset - db %11110001 - db %11111111 - db %10001111 - db %11000111 - db %10100011 - db %10001000 - db %00110010 - - db 0 ; padding - -ClefairyBaseStats: ; 38796 (e:4796) - db DEX_CLEFAIRY ; pokedex id - db 70 ; base hp - db 45 ; base attack - db 48 ; base defense - db 35 ; base speed - db 60 ; base special - - db NORMAL ; species type 1 - db NORMAL ; species type 2 - - db 150 ; catch rate - db 68 ; base exp yield - db $55 ; sprite dimensions - - dw ClefairyPicFront - dw ClefairyPicBack - - ; attacks known at lvl 0 - db POUND - db GROWL - db 0 - db 0 - - db 4 ; growth rate - - ; learnset - db %10110001 - db %00111111 - db %10101111 - db %11110001 - db %10100111 - db %00111000 - db %01100011 - - db 0 ; padding - -ClefableBaseStats: ; 387b2 (e:47b2) - db DEX_CLEFABLE ; pokedex id - db 95 ; base hp - db 70 ; base attack - db 73 ; base defense - db 60 ; base speed - db 85 ; base special - - db NORMAL ; species type 1 - db NORMAL ; species type 2 - - db 25 ; catch rate - db 129 ; base exp yield - db $66 ; sprite dimensions - - dw ClefablePicFront - dw ClefablePicBack - - ; attacks known at lvl 0 - db SING - db DOUBLESLAP - db MINIMIZE - db METRONOME - - db 4 ; growth rate - - ; learnset - db %10110001 - db %01111111 - db %10101111 - db %11110001 - db %10100111 - db %00111000 - db %01100011 - - db 0 ; padding - -VulpixBaseStats: ; 387ce (e:47ce) - db DEX_VULPIX ; pokedex id - db 38 ; base hp - db 41 ; base attack - db 40 ; base defense - db 65 ; base speed - db 65 ; base special - - db FIRE ; species type 1 - db FIRE ; species type 2 - - db 190 ; catch rate - db 63 ; base exp yield - db $66 ; sprite dimensions - - dw VulpixPicFront - dw VulpixPicBack - - ; attacks known at lvl 0 - db EMBER - db TAIL_WHIP - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %10100000 - db %00000011 - db %00001000 - db %11001000 - db %11100011 - db %00001000 - db %00000010 - - db 0 ; padding - -NinetalesBaseStats: ; 387ea (e:47ea) - db DEX_NINETALES ; pokedex id - db 73 ; base hp - db 76 ; base attack - db 75 ; base defense - db 100 ; base speed - db 100 ; base special - - db FIRE ; species type 1 - db FIRE ; species type 2 - - db 75 ; catch rate - db 178 ; base exp yield - db $77 ; sprite dimensions - - dw NinetalesPicFront - dw NinetalesPicBack - - ; attacks known at lvl 0 - db EMBER - db TAIL_WHIP - db QUICK_ATTACK - db ROAR - - db 0 ; growth rate - - ; learnset - db %10100000 - db %01000011 - db %00001000 - db %11001000 - db %11100011 - db %00001000 - db %00000010 - - db 0 ; padding - -JigglypuffBaseStats: ; 38806 (e:4806) - db DEX_JIGGLYPUFF ; pokedex id - db 115 ; base hp - db 45 ; base attack - db 20 ; base defense - db 20 ; base speed - db 25 ; base special - - db NORMAL ; species type 1 - db NORMAL ; species type 2 - - db 170 ; catch rate - db 76 ; base exp yield - db $55 ; sprite dimensions - - dw JigglypuffPicFront - dw JigglypuffPicBack - - ; attacks known at lvl 0 - db SING - db 0 - db 0 - db 0 - - db 4 ; growth rate - - ; learnset - db %10110001 - db %00111111 - db %10101111 - db %11110001 - db %10100011 - db %00111000 - db %01100011 - - db 0 ; padding - -WigglytuffBaseStats: ; 38822 (e:4822) - db DEX_WIGGLYTUFF ; pokedex id - db 140 ; base hp - db 70 ; base attack - db 45 ; base defense - db 45 ; base speed - db 50 ; base special - - db NORMAL ; species type 1 - db NORMAL ; species type 2 - - db 50 ; catch rate - db 109 ; base exp yield - db $66 ; sprite dimensions - - dw WigglytuffPicFront - dw WigglytuffPicBack - - ; attacks known at lvl 0 - db SING - db DISABLE - db DEFENSE_CURL - db DOUBLESLAP - - db 4 ; growth rate - - ; learnset - db %10110001 - db %01111111 - db %10101111 - db %11110001 - db %10100011 - db %00111000 - db %01100011 - - db 0 ; padding - -ZubatBaseStats: ; 3883e (e:483e) - db DEX_ZUBAT ; pokedex id - db 40 ; base hp - db 45 ; base attack - db 35 ; base defense - db 55 ; base speed - db 40 ; base special - - db POISON ; species type 1 - db FLYING ; species type 2 - - db 255 ; catch rate - db 54 ; base exp yield - db $55 ; sprite dimensions - - dw ZubatPicFront - dw ZubatPicBack - - ; attacks known at lvl 0 - db LEECH_LIFE - db 0 - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %00101010 - db %00000011 - db %00011000 - db %11000000 - db %01000010 - db %00001000 - db %00000010 - - db 0 ; padding - -GolbatBaseStats: ; 3885a (e:485a) - db DEX_GOLBAT ; pokedex id - db 75 ; base hp - db 80 ; base attack - db 70 ; base defense - db 90 ; base speed - db 75 ; base special - - db POISON ; species type 1 - db FLYING ; species type 2 - - db 90 ; catch rate - db 171 ; base exp yield - db $77 ; sprite dimensions - - dw GolbatPicFront - dw GolbatPicBack - - ; attacks known at lvl 0 - db LEECH_LIFE - db SCREECH - db BITE - db 0 - - db 0 ; growth rate - - ; learnset - db %00101010 - db %01000011 - db %00011000 - db %11000000 - db %01000010 - db %00001000 - db %00000010 - - db 0 ; padding - -OddishBaseStats: ; 38876 (e:4876) - db DEX_ODDISH ; pokedex id - db 45 ; base hp - db 50 ; base attack - db 55 ; base defense - db 30 ; base speed - db 75 ; base special - - db GRASS ; species type 1 - db POISON ; species type 2 - - db 255 ; catch rate - db 78 ; base exp yield - db $55 ; sprite dimensions - - dw OddishPicFront - dw OddishPicBack - - ; attacks known at lvl 0 - db ABSORB - db 0 - db 0 - db 0 - - db 3 ; growth rate - - ; learnset - db %00100100 - db %00000011 - db %00111000 - db %11000000 - db %00000011 - db %00001000 - db %00000110 - - db 0 ; padding - -GloomBaseStats: ; 38892 (e:4892) - db DEX_GLOOM ; pokedex id - db 60 ; base hp - db 65 ; base attack - db 70 ; base defense - db 40 ; base speed - db 85 ; base special - - db GRASS ; species type 1 - db POISON ; species type 2 - - db 120 ; catch rate - db 132 ; base exp yield - db $66 ; sprite dimensions - - dw GloomPicFront - dw GloomPicBack - - ; attacks known at lvl 0 - db ABSORB - db POISONPOWDER - db STUN_SPORE - db 0 - - db 3 ; growth rate - - ; learnset - db %00100100 - db %00000011 - db %00111000 - db %11000000 - db %00000011 - db %00001000 - db %00000110 - - db 0 ; padding - -VileplumeBaseStats: ; 388ae (e:48ae) - db DEX_VILEPLUME ; pokedex id - db 75 ; base hp - db 80 ; base attack - db 85 ; base defense - db 50 ; base speed - db 100 ; base special - - db GRASS ; species type 1 - db POISON ; species type 2 - - db 45 ; catch rate - db 184 ; base exp yield - db $77 ; sprite dimensions - - dw VileplumePicFront - dw VileplumePicBack - - ; attacks known at lvl 0 - db STUN_SPORE - db SLEEP_POWDER - db ACID - db PETAL_DANCE - - db 3 ; growth rate - - ; learnset - db %10100100 - db %01000011 - db %00111000 - db %11000000 - db %00000011 - db %00001000 - db %00000110 - - db 0 ; padding - -ParasBaseStats: ; 388ca (e:48ca) - db DEX_PARAS ; pokedex id - db 35 ; base hp - db 70 ; base attack - db 55 ; base defense - db 25 ; base speed - db 55 ; base special - - db BUG ; species type 1 - db GRASS ; species type 2 - - db 190 ; catch rate - db 70 ; base exp yield - db $55 ; sprite dimensions - - dw ParasPicFront - dw ParasPicBack - - ; attacks known at lvl 0 - db SCRATCH - db 0 - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %10100100 - db %00000011 - db %00111000 - db %11001000 - db %10000011 - db %00001000 - db %00000110 - - db 0 ; padding - -ParasectBaseStats: ; 388e6 (e:48e6) - db DEX_PARASECT ; pokedex id - db 60 ; base hp - db 95 ; base attack - db 80 ; base defense - db 30 ; base speed - db 80 ; base special - - db BUG ; species type 1 - db GRASS ; species type 2 - - db 75 ; catch rate - db 128 ; base exp yield - db $77 ; sprite dimensions - - dw ParasectPicFront - dw ParasectPicBack - - ; attacks known at lvl 0 - db SCRATCH - db STUN_SPORE - db LEECH_LIFE - db 0 - - db 0 ; growth rate - - ; learnset - db %10100100 - db %01000011 - db %00111000 - db %11001000 - db %10000011 - db %00001000 - db %00000110 - - db 0 ; padding - -VenonatBaseStats: ; 38902 (e:4902) - db DEX_VENONAT ; pokedex id - db 60 ; base hp - db 55 ; base attack - db 50 ; base defense - db 45 ; base speed - db 40 ; base special - - db BUG ; species type 1 - db POISON ; species type 2 - - db 190 ; catch rate - db 75 ; base exp yield - db $55 ; sprite dimensions - - dw VenonatPicFront - dw VenonatPicBack - - ; attacks known at lvl 0 - db TACKLE - db DISABLE - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %00100000 - db %00000011 - db %00111000 - db %11010000 - db %00000011 - db %00101000 - db %00000010 - - db 0 ; padding - -VenomothBaseStats: ; 3891e (e:491e) - db DEX_VENOMOTH ; pokedex id - db 70 ; base hp - db 65 ; base attack - db 60 ; base defense - db 90 ; base speed - db 90 ; base special - - db BUG ; species type 1 - db POISON ; species type 2 - - db 75 ; catch rate - db 138 ; base exp yield - db $77 ; sprite dimensions - - dw VenomothPicFront - dw VenomothPicBack - - ; attacks known at lvl 0 - db TACKLE - db DISABLE - db POISONPOWDER - db LEECH_LIFE - - db 0 ; growth rate - - ; learnset - db %00101010 - db %01000011 - db %00111000 - db %11110000 - db %01000011 - db %00101000 - db %00000010 - - db 0 ; padding - -DiglettBaseStats: ; 3893a (e:493a) - db DEX_DIGLETT ; pokedex id - db 10 ; base hp - db 55 ; base attack - db 25 ; base defense - db 95 ; base speed - db 45 ; base special - - db GROUND ; species type 1 - db GROUND ; species type 2 - - db 255 ; catch rate - db 81 ; base exp yield - db $55 ; sprite dimensions - - dw DiglettPicFront - dw DiglettPicBack - - ; attacks known at lvl 0 - db SCRATCH - db 0 - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %10100000 - db %00000011 - db %00001000 - db %11001110 - db %00000010 - db %10001000 - db %00000010 - - db 0 ; padding - -DugtrioBaseStats: ; 38956 (e:4956) - db DEX_DUGTRIO ; pokedex id - db 35 ; base hp - db 80 ; base attack - db 50 ; base defense - db 120 ; base speed - db 70 ; base special - - db GROUND ; species type 1 - db GROUND ; species type 2 - - db 50 ; catch rate - db 153 ; base exp yield - db $66 ; sprite dimensions - - dw DugtrioPicFront - dw DugtrioPicBack - - ; attacks known at lvl 0 - db SCRATCH - db GROWL - db DIG - db 0 - - db 0 ; growth rate - - ; learnset - db %10100000 - db %01000011 - db %00001000 - db %11001110 - db %00000010 - db %10001000 - db %00000010 - - db 0 ; padding - -MeowthBaseStats: ; 38972 (e:4972) - db DEX_MEOWTH ; pokedex id - db 40 ; base hp - db 45 ; base attack - db 35 ; base defense - db 90 ; base speed - db 40 ; base special - - db NORMAL ; species type 1 - db NORMAL ; species type 2 - - db 255 ; catch rate - db 69 ; base exp yield - db $55 ; sprite dimensions - - dw MeowthPicFront - dw MeowthPicBack - - ; attacks known at lvl 0 - db SCRATCH - db GROWL - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %10100000 - db %10001111 - db %10001000 - db %11000001 - db %11000010 - db %00001000 - db %00000010 - - db 0 ; padding - -PersianBaseStats: ; 3898e (e:498e) - db DEX_PERSIAN ; pokedex id - db 65 ; base hp - db 70 ; base attack - db 60 ; base defense - db 115 ; base speed - db 65 ; base special - - db NORMAL ; species type 1 - db NORMAL ; species type 2 - - db 90 ; catch rate - db 148 ; base exp yield - db $77 ; sprite dimensions - - dw PersianPicFront - dw PersianPicBack - - ; attacks known at lvl 0 - db SCRATCH - db GROWL - db BITE - db SCREECH - - db 0 ; growth rate - - ; learnset - db %10100000 - db %11001111 - db %10001000 - db %11000001 - db %11000010 - db %00001000 - db %00000010 - - db 0 ; padding - -PsyduckBaseStats: ; 389aa (e:49aa) - db DEX_PSYDUCK ; pokedex id - db 50 ; base hp - db 52 ; base attack - db 48 ; base defense - db 55 ; base speed - db 50 ; base special - - db WATER ; species type 1 - db WATER ; species type 2 - - db 190 ; catch rate - db 80 ; base exp yield - db $55 ; sprite dimensions - - dw PsyduckPicFront - dw PsyduckPicBack - - ; attacks known at lvl 0 - db SCRATCH - db 0 - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %10110001 - db %10111111 - db %00001111 - db %11001000 - db %11000010 - db %00001000 - db %00110010 - - db 0 ; padding - -GolduckBaseStats: ; 389c6 (e:49c6) - db DEX_GOLDUCK ; pokedex id - db 80 ; base hp - db 82 ; base attack - db 78 ; base defense - db 85 ; base speed - db 80 ; base special - - db WATER ; species type 1 - db WATER ; species type 2 - - db 75 ; catch rate - db 174 ; base exp yield - db $77 ; sprite dimensions - - dw GolduckPicFront - dw GolduckPicBack - - ; attacks known at lvl 0 - db SCRATCH - db TAIL_WHIP - db DISABLE - db 0 - - db 0 ; growth rate - - ; learnset - db %10110001 - db %11111111 - db %00001111 - db %11001000 - db %11000010 - db %00001000 - db %00110010 - - db 0 ; padding - -MankeyBaseStats: ; 389e2 (e:49e2) - db DEX_MANKEY ; pokedex id - db 40 ; base hp - db 80 ; base attack - db 35 ; base defense - db 70 ; base speed - db 35 ; base special - - db FIGHTING ; species type 1 - db FIGHTING ; species type 2 - - db 190 ; catch rate - db 74 ; base exp yield - db $55 ; sprite dimensions - - dw MankeyPicFront - dw MankeyPicBack - - ; attacks known at lvl 0 - db SCRATCH - db LEER - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %10110001 - db %10000011 - db %10001111 - db %11001001 - db %11000110 - db %10001000 - db %00100010 - - db 0 ; padding - -PrimeapeBaseStats: ; 389fe (e:49fe) - db DEX_PRIMEAPE ; pokedex id - db 65 ; base hp - db 105 ; base attack - db 60 ; base defense - db 95 ; base speed - db 60 ; base special - - db FIGHTING ; species type 1 - db FIGHTING ; species type 2 - - db 75 ; catch rate - db 149 ; base exp yield - db $77 ; sprite dimensions - - dw PrimeapePicFront - dw PrimeapePicBack - - ; attacks known at lvl 0 - db SCRATCH - db LEER - db KARATE_CHOP - db FURY_SWIPES - - db 0 ; growth rate - - ; learnset - db %10110001 - db %11000011 - db %10001111 - db %11001001 - db %11000110 - db %10001000 - db %00100010 - - db 0 ; padding - -GrowlitheBaseStats: ; 38a1a (e:4a1a) - db DEX_GROWLITHE ; pokedex id - db 55 ; base hp - db 70 ; base attack - db 45 ; base defense - db 60 ; base speed - db 50 ; base special - - db FIRE ; species type 1 - db FIRE ; species type 2 - - db 190 ; catch rate - db 91 ; base exp yield - db $55 ; sprite dimensions - - dw GrowlithePicFront - dw GrowlithePicBack - - ; attacks known at lvl 0 - db BITE - db ROAR - db 0 - db 0 - - db 5 ; growth rate - - ; learnset - db %10100000 - db %00000011 - db %01001000 - db %11001000 - db %11100011 - db %00001000 - db %00000010 - - db 0 ; padding - -ArcanineBaseStats: ; 38a36 (e:4a36) - db DEX_ARCANINE ; pokedex id - db 90 ; base hp - db 110 ; base attack - db 80 ; base defense - db 95 ; base speed - db 80 ; base special - - db FIRE ; species type 1 - db FIRE ; species type 2 - - db 75 ; catch rate - db 213 ; base exp yield - db $77 ; sprite dimensions - - dw ArcaninePicFront - dw ArcaninePicBack - - ; attacks known at lvl 0 - db ROAR - db EMBER - db LEER - db TAKE_DOWN - - db 5 ; growth rate - - ; learnset - db %10100000 - db %01000011 - db %01001000 - db %11101000 - db %11100011 - db %00001000 - db %00000010 - - db 0 ; padding - -PoliwagBaseStats: ; 38a52 (e:4a52) - db DEX_POLIWAG ; pokedex id - db 40 ; base hp - db 50 ; base attack - db 40 ; base defense - db 90 ; base speed - db 40 ; base special - - db WATER ; species type 1 - db WATER ; species type 2 - - db 255 ; catch rate - db 77 ; base exp yield - db $55 ; sprite dimensions - - dw PoliwagPicFront - dw PoliwagPicBack - - ; attacks known at lvl 0 - db BUBBLE - db 0 - db 0 - db 0 - - db 3 ; growth rate - - ; learnset - db %10100000 - db %00111111 - db %00001000 - db %11010000 - db %10000010 - db %00101000 - db %00010010 - - db 0 ; padding - -PoliwhirlBaseStats: ; 38a6e (e:4a6e) - db DEX_POLIWHIRL ; pokedex id - db 65 ; base hp - db 65 ; base attack - db 65 ; base defense - db 90 ; base speed - db 50 ; base special - - db WATER ; species type 1 - db WATER ; species type 2 - - db 120 ; catch rate - db 131 ; base exp yield - db $66 ; sprite dimensions - - dw PoliwhirlPicFront - dw PoliwhirlPicBack - - ; attacks known at lvl 0 - db BUBBLE - db HYPNOSIS - db WATER_GUN - db 0 - - db 3 ; growth rate - - ; learnset - db %10110001 - db %00111111 - db %00001111 - db %11010110 - db %10000110 - db %00101000 - db %00110010 - - db 0 ; padding - -PoliwrathBaseStats: ; 38a8a (e:4a8a) - db DEX_POLIWRATH ; pokedex id - db 90 ; base hp - db 85 ; base attack - db 95 ; base defense - db 70 ; base speed - db 70 ; base special - - db WATER ; species type 1 - db FIGHTING ; species type 2 - - db 45 ; catch rate - db 185 ; base exp yield - db $77 ; sprite dimensions - - dw PoliwrathPicFront - dw PoliwrathPicBack - - ; attacks known at lvl 0 - db HYPNOSIS - db WATER_GUN - db DOUBLESLAP - db BODY_SLAM - - db 3 ; growth rate - - ; learnset - db %10110001 - db %01111111 - db %00001111 - db %11010110 - db %10000110 - db %00101000 - db %00110010 - - db 0 ; padding - -AbraBaseStats: ; 38aa6 (e:4aa6) - db DEX_ABRA ; pokedex id - db 25 ; base hp - db 20 ; base attack - db 15 ; base defense - db 90 ; base speed - db 105 ; base special - - db PSYCHIC ; species type 1 - db PSYCHIC ; species type 2 - - db 200 ; catch rate - db 73 ; base exp yield - db $55 ; sprite dimensions - - dw AbraPicFront - dw AbraPicBack - - ; attacks known at lvl 0 - db TELEPORT - db 0 - db 0 - db 0 - - db 3 ; growth rate - - ; learnset - db %10110001 - db %00000011 - db %00001111 - db %11110000 - db %10000111 - db %00111000 - db %01000011 - - db 0 ; padding - -KadabraBaseStats: ; 38ac2 (e:4ac2) - db DEX_KADABRA ; pokedex id - db 40 ; base hp - db 35 ; base attack - db 30 ; base defense - db 105 ; base speed - db 120 ; base special - - db PSYCHIC ; species type 1 - db PSYCHIC ; species type 2 - - db 100 ; catch rate - db 145 ; base exp yield - db $66 ; sprite dimensions - - dw KadabraPicFront - dw KadabraPicBack - - ; attacks known at lvl 0 - db TELEPORT - db CONFUSION - db DISABLE - db 0 - - db 3 ; growth rate - - ; learnset - db %10110001 - db %00000011 - db %00001111 - db %11111000 - db %10000111 - db %00111000 - db %01000011 - - db 0 ; padding - -AlakazamBaseStats: ; 38ade (e:4ade) - db DEX_ALAKAZAM ; pokedex id - db 55 ; base hp - db 50 ; base attack - db 45 ; base defense - db 120 ; base speed - db 135 ; base special - - db PSYCHIC ; species type 1 - db PSYCHIC ; species type 2 - - db 50 ; catch rate - db 186 ; base exp yield - db $77 ; sprite dimensions - - dw AlakazamPicFront - dw AlakazamPicBack - - ; attacks known at lvl 0 - db TELEPORT - db CONFUSION - db DISABLE - db 0 - - db 3 ; growth rate - - ; learnset - db %10110001 - db %01000011 - db %00001111 - db %11111000 - db %10000111 - db %00111000 - db %01000011 - - db 0 ; padding - -MachopBaseStats: ; 38afa (e:4afa) - db DEX_MACHOP ; pokedex id - db 70 ; base hp - db 80 ; base attack - db 50 ; base defense - db 35 ; base speed - db 35 ; base special - - db FIGHTING ; species type 1 - db FIGHTING ; species type 2 - - db 180 ; catch rate - db 88 ; base exp yield - db $55 ; sprite dimensions - - dw MachopPicFront - dw MachopPicBack - - ; attacks known at lvl 0 - db KARATE_CHOP - db 0 - db 0 - db 0 - - db 3 ; growth rate - - ; learnset - db %10110001 - db %00000011 - db %00001111 - db %11001110 - db %10100110 - db %10001000 - db %00100010 - - db 0 ; padding - -MachokeBaseStats: ; 38b16 (e:4b16) - db DEX_MACHOKE ; pokedex id - db 80 ; base hp - db 100 ; base attack - db 70 ; base defense - db 45 ; base speed - db 50 ; base special - - db FIGHTING ; species type 1 - db FIGHTING ; species type 2 - - db 90 ; catch rate - db 146 ; base exp yield - db $77 ; sprite dimensions - - dw MachokePicFront - dw MachokePicBack - - ; attacks known at lvl 0 - db KARATE_CHOP - db LOW_KICK - db LEER - db 0 - - db 3 ; growth rate - - ; learnset - db %10110001 - db %00000011 - db %00001111 - db %11001110 - db %10100110 - db %10001000 - db %00100010 - - db 0 ; padding - -MachampBaseStats: ; 38b32 (e:4b32) - db DEX_MACHAMP ; pokedex id - db 90 ; base hp - db 130 ; base attack - db 80 ; base defense - db 55 ; base speed - db 65 ; base special - - db FIGHTING ; species type 1 - db FIGHTING ; species type 2 - - db 45 ; catch rate - db 193 ; base exp yield - db $77 ; sprite dimensions - - dw MachampPicFront - dw MachampPicBack - - ; attacks known at lvl 0 - db KARATE_CHOP - db LOW_KICK - db LEER - db 0 - - db 3 ; growth rate - - ; learnset - db %10110001 - db %01000011 - db %00001111 - db %11001110 - db %10100110 - db %10001000 - db %00100010 - - db 0 ; padding - -BellsproutBaseStats: ; 38b4e (e:4b4e) - db DEX_BELLSPROUT ; pokedex id - db 50 ; base hp - db 75 ; base attack - db 35 ; base defense - db 40 ; base speed - db 70 ; base special - - db GRASS ; species type 1 - db POISON ; species type 2 - - db 255 ; catch rate - db 84 ; base exp yield - db $55 ; sprite dimensions - - dw BellsproutPicFront - dw BellsproutPicBack - - ; attacks known at lvl 0 - db VINE_WHIP - db GROWTH - db 0 - db 0 - - db 3 ; growth rate - - ; learnset - db %00100100 - db %00000011 - db %00111000 - db %11000000 - db %00000011 - db %00001000 - db %00000110 - - db 0 ; padding - -WeepinbellBaseStats: ; 38b6a (e:4b6a) - db DEX_WEEPINBELL ; pokedex id - db 65 ; base hp - db 90 ; base attack - db 50 ; base defense - db 55 ; base speed - db 85 ; base special - - db GRASS ; species type 1 - db POISON ; species type 2 - - db 120 ; catch rate - db 151 ; base exp yield - db $66 ; sprite dimensions - - dw WeepinbellPicFront - dw WeepinbellPicBack - - ; attacks known at lvl 0 - db VINE_WHIP - db GROWTH - db WRAP - db 0 - - db 3 ; growth rate - - ; learnset - db %00100100 - db %00000011 - db %00111000 - db %11000000 - db %00000011 - db %00001000 - db %00000110 - - db 0 ; padding - -VictreebelBaseStats: ; 38b86 (e:4b86) - db DEX_VICTREEBEL ; pokedex id - db 80 ; base hp - db 105 ; base attack - db 65 ; base defense - db 70 ; base speed - db 100 ; base special - - db GRASS ; species type 1 - db POISON ; species type 2 - - db 45 ; catch rate - db 191 ; base exp yield - db $77 ; sprite dimensions - - dw VictreebelPicFront - dw VictreebelPicBack - - ; attacks known at lvl 0 - db SLEEP_POWDER - db STUN_SPORE - db ACID - db RAZOR_LEAF - - db 3 ; growth rate - - ; learnset - db %10100100 - db %01000011 - db %00111000 - db %11000000 - db %00000011 - db %00001000 - db %00000110 - - db 0 ; padding - -TentacoolBaseStats: ; 38ba2 (e:4ba2) - db DEX_TENTACOOL ; pokedex id - db 40 ; base hp - db 40 ; base attack - db 35 ; base defense - db 70 ; base speed - db 100 ; base special - - db WATER ; species type 1 - db POISON ; species type 2 - - db 190 ; catch rate - db 105 ; base exp yield - db $55 ; sprite dimensions - - dw TentacoolPicFront - dw TentacoolPicBack - - ; attacks known at lvl 0 - db ACID - db 0 - db 0 - db 0 - - db 5 ; growth rate - - ; learnset - db %00100100 - db %00111111 - db %00011000 - db %11000000 - db %10000011 - db %00001000 - db %00010110 - - db 0 ; padding - -TentacruelBaseStats: ; 38bbe (e:4bbe) - db DEX_TENTACRUEL ; pokedex id - db 80 ; base hp - db 70 ; base attack - db 65 ; base defense - db 100 ; base speed - db 120 ; base special - - db WATER ; species type 1 - db POISON ; species type 2 - - db 60 ; catch rate - db 205 ; base exp yield - db $66 ; sprite dimensions - - dw TentacruelPicFront - dw TentacruelPicBack - - ; attacks known at lvl 0 - db ACID - db SUPERSONIC - db WRAP - db 0 - - db 5 ; growth rate - - ; learnset - db %00100100 - db %01111111 - db %00011000 - db %11000000 - db %10000011 - db %00001000 - db %00010110 - - db 0 ; padding - -GeodudeBaseStats: ; 38bda (e:4bda) - db DEX_GEODUDE ; pokedex id - db 40 ; base hp - db 80 ; base attack - db 100 ; base defense - db 20 ; base speed - db 30 ; base special - - db ROCK ; species type 1 - db GROUND ; species type 2 - - db 255 ; catch rate - db 86 ; base exp yield - db $55 ; sprite dimensions - - dw GeodudePicFront - dw GeodudePicBack - - ; attacks known at lvl 0 - db TACKLE - db 0 - db 0 - db 0 - - db 3 ; growth rate - - ; learnset - db %10100001 - db %00000011 - db %00001111 - db %11001110 - db %00101110 - db %11001000 - db %00100010 - - db 0 ; padding - -GravelerBaseStats: ; 38bf6 (e:4bf6) - db DEX_GRAVELER ; pokedex id - db 55 ; base hp - db 95 ; base attack - db 115 ; base defense - db 35 ; base speed - db 45 ; base special - - db ROCK ; species type 1 - db GROUND ; species type 2 - - db 120 ; catch rate - db 134 ; base exp yield - db $66 ; sprite dimensions - - dw GravelerPicFront - dw GravelerPicBack - - ; attacks known at lvl 0 - db TACKLE - db DEFENSE_CURL - db 0 - db 0 - - db 3 ; growth rate - - ; learnset - db %10100001 - db %00000011 - db %00001111 - db %11001110 - db %00101110 - db %11001000 - db %00100010 - - db 0 ; padding - -GolemBaseStats: ; 38c12 (e:4c12) - db DEX_GOLEM ; pokedex id - db 80 ; base hp - db 110 ; base attack - db 130 ; base defense - db 45 ; base speed - db 55 ; base special - - db ROCK ; species type 1 - db GROUND ; species type 2 - - db 45 ; catch rate - db 177 ; base exp yield - db $66 ; sprite dimensions - - dw GolemPicFront - dw GolemPicBack - - ; attacks known at lvl 0 - db TACKLE - db DEFENSE_CURL - db 0 - db 0 - - db 3 ; growth rate - - ; learnset - db %10110001 - db %01000011 - db %00001111 - db %11001110 - db %00101110 - db %11001000 - db %00100010 - - db 0 ; padding - -PonytaBaseStats: ; 38c2e (e:4c2e) - db DEX_PONYTA ; pokedex id - db 50 ; base hp - db 85 ; base attack - db 55 ; base defense - db 90 ; base speed - db 65 ; base special - - db FIRE ; species type 1 - db FIRE ; species type 2 - - db 190 ; catch rate - db 152 ; base exp yield - db $66 ; sprite dimensions - - dw PonytaPicFront - dw PonytaPicBack - - ; attacks known at lvl 0 - db EMBER - db 0 - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %11100000 - db %00000011 - db %00001000 - db %11000000 - db %11100011 - db %00001000 - db %00000010 - - db 0 ; padding - -RapidashBaseStats: ; 38c4a (e:4c4a) - db DEX_RAPIDASH ; pokedex id - db 65 ; base hp - db 100 ; base attack - db 70 ; base defense - db 105 ; base speed - db 80 ; base special - - db FIRE ; species type 1 - db FIRE ; species type 2 - - db 60 ; catch rate - db 192 ; base exp yield - db $77 ; sprite dimensions - - dw RapidashPicFront - dw RapidashPicBack - - ; attacks known at lvl 0 - db EMBER - db TAIL_WHIP - db STOMP - db GROWL - - db 0 ; growth rate - - ; learnset - db %11100000 - db %01000011 - db %00001000 - db %11000000 - db %11100011 - db %00001000 - db %00000010 - - db 0 ; padding - -SlowpokeBaseStats: ; 38c66 (e:4c66) - db DEX_SLOWPOKE ; pokedex id - db 90 ; base hp - db 65 ; base attack - db 65 ; base defense - db 15 ; base speed - db 40 ; base special - - db WATER ; species type 1 - db PSYCHIC ; species type 2 - - db 190 ; catch rate - db 99 ; base exp yield - db $55 ; sprite dimensions - - dw SlowpokePicFront - dw SlowpokePicBack - - ; attacks known at lvl 0 - db CONFUSION - db 0 - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %10100000 - db %10111111 - db %00001000 - db %11111110 - db %11100011 - db %00111000 - db %01110011 - - db 0 ; padding - -SlowbroBaseStats: ; 38c82 (e:4c82) - db DEX_SLOWBRO ; pokedex id - db 95 ; base hp - db 75 ; base attack - db 110 ; base defense - db 30 ; base speed - db 80 ; base special - - db WATER ; species type 1 - db PSYCHIC ; species type 2 - - db 75 ; catch rate - db 164 ; base exp yield - db $77 ; sprite dimensions - - dw SlowbroPicFront - dw SlowbroPicBack - - ; attacks known at lvl 0 - db CONFUSION - db DISABLE - db HEADBUTT - db 0 - - db 0 ; growth rate - - ; learnset - db %10110001 - db %11111111 - db %00001111 - db %11111110 - db %11100011 - db %00111000 - db %01110011 - - db 0 ; padding - -MagnemiteBaseStats: ; 38c9e (e:4c9e) - db DEX_MAGNEMITE ; pokedex id - db 25 ; base hp - db 35 ; base attack - db 70 ; base defense - db 45 ; base speed - db 95 ; base special - - db ELECTRIC ; species type 1 - db ELECTRIC ; species type 2 - - db 190 ; catch rate - db 89 ; base exp yield - db $55 ; sprite dimensions - - dw MagnemitePicFront - dw MagnemitePicBack - - ; attacks known at lvl 0 - db TACKLE - db 0 - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %00100000 - db %00000011 - db %10001000 - db %11100001 - db %01000011 - db %00011000 - db %01000010 - - db 0 ; padding - -MagnetonBaseStats: ; 38cba (e:4cba) - db DEX_MAGNETON ; pokedex id - db 50 ; base hp - db 60 ; base attack - db 95 ; base defense - db 70 ; base speed - db 120 ; base special - - db ELECTRIC ; species type 1 - db ELECTRIC ; species type 2 - - db 60 ; catch rate - db 161 ; base exp yield - db $66 ; sprite dimensions - - dw MagnetonPicFront - dw MagnetonPicBack - - ; attacks known at lvl 0 - db TACKLE - db SONICBOOM - db THUNDERSHOCK - db 0 - - db 0 ; growth rate - - ; learnset - db %00100000 - db %01000011 - db %10001000 - db %11100001 - db %01000011 - db %00011000 - db %01000010 - - db 0 ; padding - -FarfetchdBaseStats: ; 38cd6 (e:4cd6) - db DEX_FARFETCH_D ; pokedex id - db 52 ; base hp - db 65 ; base attack - db 55 ; base defense - db 60 ; base speed - db 58 ; base special - - db NORMAL ; species type 1 - db FLYING ; species type 2 - - db 45 ; catch rate - db 94 ; base exp yield - db $66 ; sprite dimensions - - dw FarfetchdPicFront - dw FarfetchdPicBack - - ; attacks known at lvl 0 - db PECK - db SAND_ATTACK - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %10101110 - db %00000011 - db %00001000 - db %11000000 - db %11000011 - db %00001000 - db %00001110 - - db 0 ; padding - -DoduoBaseStats: ; 38cf2 (e:4cf2) - db DEX_DODUO ; pokedex id - db 35 ; base hp - db 85 ; base attack - db 45 ; base defense - db 75 ; base speed - db 35 ; base special - - db NORMAL ; species type 1 - db FLYING ; species type 2 - - db 190 ; catch rate - db 96 ; base exp yield - db $55 ; sprite dimensions - - dw DoduoPicFront - dw DoduoPicBack - - ; attacks known at lvl 0 - db PECK - db 0 - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %10101000 - db %00000011 - db %00001000 - db %11000000 - db %10000011 - db %00001100 - db %00001011 - - db 0 ; padding - -DodrioBaseStats: ; 38d0e (e:4d0e) - db DEX_DODRIO ; pokedex id - db 60 ; base hp - db 110 ; base attack - db 70 ; base defense - db 100 ; base speed - db 60 ; base special - - db NORMAL ; species type 1 - db FLYING ; species type 2 - - db 45 ; catch rate - db 158 ; base exp yield - db $77 ; sprite dimensions - - dw DodrioPicFront - dw DodrioPicBack - - ; attacks known at lvl 0 - db PECK - db GROWL - db FURY_ATTACK - db 0 - - db 0 ; growth rate - - ; learnset - db %10101000 - db %01000011 - db %00001000 - db %11000000 - db %10000011 - db %00001100 - db %00001011 - - db 0 ; padding - -SeelBaseStats: ; 38d2a (e:4d2a) - db DEX_SEEL ; pokedex id - db 65 ; base hp - db 45 ; base attack - db 55 ; base defense - db 45 ; base speed - db 70 ; base special - - db WATER ; species type 1 - db WATER ; species type 2 - - db 190 ; catch rate - db 100 ; base exp yield - db $66 ; sprite dimensions - - dw SeelPicFront - dw SeelPicBack - - ; attacks known at lvl 0 - db HEADBUTT - db 0 - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %11100000 - db %10111111 - db %00001000 - db %11000000 - db %10000010 - db %00001000 - db %00110010 - - db 0 ; padding - -DewgongBaseStats: ; 38d46 (e:4d46) - db DEX_DEWGONG ; pokedex id - db 90 ; base hp - db 70 ; base attack - db 80 ; base defense - db 70 ; base speed - db 95 ; base special - - db WATER ; species type 1 - db ICE ; species type 2 - - db 75 ; catch rate - db 176 ; base exp yield - db $66 ; sprite dimensions - - dw DewgongPicFront - dw DewgongPicBack - - ; attacks known at lvl 0 - db HEADBUTT - db GROWL - db AURORA_BEAM - db 0 - - db 0 ; growth rate - - ; learnset - db %11100000 - db %11111111 - db %00001000 - db %11000000 - db %10000010 - db %00001000 - db %00110010 - - db 0 ; padding - -GrimerBaseStats: ; 38d62 (e:4d62) - db DEX_GRIMER ; pokedex id - db 80 ; base hp - db 80 ; base attack - db 50 ; base defense - db 25 ; base speed - db 40 ; base special - - db POISON ; species type 1 - db POISON ; species type 2 - - db 190 ; catch rate - db 90 ; base exp yield - db $55 ; sprite dimensions - - dw GrimerPicFront - dw GrimerPicBack - - ; attacks known at lvl 0 - db POUND - db DISABLE - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %10100000 - db %00000000 - db %10011000 - db %11000001 - db %00101010 - db %01001000 - db %00000010 - - db 0 ; padding - -MukBaseStats: ; 38d7e (e:4d7e) - db DEX_MUK ; pokedex id - db 105 ; base hp - db 105 ; base attack - db 75 ; base defense - db 50 ; base speed - db 65 ; base special - - db POISON ; species type 1 - db POISON ; species type 2 - - db 75 ; catch rate - db 157 ; base exp yield - db $77 ; sprite dimensions - - dw MukPicFront - dw MukPicBack - - ; attacks known at lvl 0 - db POUND - db DISABLE - db POISON_GAS - db 0 - - db 0 ; growth rate - - ; learnset - db %10100000 - db %01000000 - db %10011000 - db %11000001 - db %00101010 - db %01001000 - db %00000010 - - db 0 ; padding - -ShellderBaseStats: ; 38d9a (e:4d9a) - db DEX_SHELLDER ; pokedex id - db 30 ; base hp - db 65 ; base attack - db 100 ; base defense - db 40 ; base speed - db 45 ; base special - - db WATER ; species type 1 - db WATER ; species type 2 - - db 190 ; catch rate - db 97 ; base exp yield - db $55 ; sprite dimensions - - dw ShellderPicFront - dw ShellderPicBack - - ; attacks known at lvl 0 - db TACKLE - db WITHDRAW - db 0 - db 0 - - db 5 ; growth rate - - ; learnset - db %00100000 - db %00111111 - db %00001000 - db %11100000 - db %01001011 - db %01001000 - db %00010011 - - db 0 ; padding - -CloysterBaseStats: ; 38db6 (e:4db6) - db DEX_CLOYSTER ; pokedex id - db 50 ; base hp - db 95 ; base attack - db 180 ; base defense - db 70 ; base speed - db 85 ; base special - - db WATER ; species type 1 - db ICE ; species type 2 - - db 60 ; catch rate - db 203 ; base exp yield - db $77 ; sprite dimensions - - dw CloysterPicFront - dw CloysterPicBack - - ; attacks known at lvl 0 - db WITHDRAW - db SUPERSONIC - db CLAMP - db AURORA_BEAM - - db 5 ; growth rate - - ; learnset - db %00100000 - db %01111111 - db %00001000 - db %11100000 - db %01001011 - db %01001000 - db %00010011 - - db 0 ; padding - -GastlyBaseStats: ; 38dd2 (e:4dd2) - db DEX_GASTLY ; pokedex id - db 30 ; base hp - db 35 ; base attack - db 30 ; base defense - db 80 ; base speed - db 100 ; base special - - db GHOST ; species type 1 - db POISON ; species type 2 - - db 190 ; catch rate - db 95 ; base exp yield - db $77 ; sprite dimensions - - dw GastlyPicFront - dw GastlyPicBack - - ; attacks known at lvl 0 - db LICK - db CONFUSE_RAY - db NIGHT_SHADE - db 0 - - db 3 ; growth rate - - ; learnset - db %00100000 - db %00000000 - db %10011000 - db %11010001 - db %00001010 - db %01101010 - db %00000010 - - db 0 ; padding - -HaunterBaseStats: ; 38dee (e:4dee) - db DEX_HAUNTER ; pokedex id - db 45 ; base hp - db 50 ; base attack - db 45 ; base defense - db 95 ; base speed - db 115 ; base special - - db GHOST ; species type 1 - db POISON ; species type 2 - - db 90 ; catch rate - db 126 ; base exp yield - db $66 ; sprite dimensions - - dw HaunterPicFront - dw HaunterPicBack - - ; attacks known at lvl 0 - db LICK - db CONFUSE_RAY - db NIGHT_SHADE - db 0 - - db 3 ; growth rate - - ; learnset - db %00100000 - db %00000000 - db %10011000 - db %11010001 - db %00001010 - db %01101010 - db %00000010 - - db 0 ; padding - -GengarBaseStats: ; 38e0a (e:4e0a) - db DEX_GENGAR ; pokedex id - db 60 ; base hp - db 65 ; base attack - db 60 ; base defense - db 110 ; base speed - db 130 ; base special - - db GHOST ; species type 1 - db POISON ; species type 2 - - db 45 ; catch rate - db 190 ; base exp yield - db $66 ; sprite dimensions - - dw GengarPicFront - dw GengarPicBack - - ; attacks known at lvl 0 - db LICK - db CONFUSE_RAY - db NIGHT_SHADE - db 0 - - db 3 ; growth rate - - ; learnset - db %10110001 - db %01000011 - db %10011111 - db %11010001 - db %10001110 - db %01101010 - db %00100010 - - db 0 ; padding - -OnixBaseStats: ; 38e26 (e:4e26) - db DEX_ONIX ; pokedex id - db 35 ; base hp - db 45 ; base attack - db 160 ; base defense - db 70 ; base speed - db 30 ; base special - - db ROCK ; species type 1 - db GROUND ; species type 2 - - db 45 ; catch rate - db 108 ; base exp yield - db $77 ; sprite dimensions - - dw OnixPicFront - dw OnixPicBack - - ; attacks known at lvl 0 - db TACKLE - db SCREECH - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %10100000 - db %00000011 - db %00001000 - db %11001110 - db %10001010 - db %11001000 - db %00100010 - - db 0 ; padding - -DrowzeeBaseStats: ; 38e42 (e:4e42) - db DEX_DROWZEE ; pokedex id - db 60 ; base hp - db 48 ; base attack - db 45 ; base defense - db 42 ; base speed - db 90 ; base special - - db PSYCHIC ; species type 1 - db PSYCHIC ; species type 2 - - db 190 ; catch rate - db 102 ; base exp yield - db $66 ; sprite dimensions - - dw DrowzeePicFront - dw DrowzeePicBack - - ; attacks known at lvl 0 - db POUND - db HYPNOSIS - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %10110001 - db %00000011 - db %00001111 - db %11110000 - db %10000111 - db %00111010 - db %01000011 - - db 0 ; padding - -HypnoBaseStats: ; 38e5e (e:4e5e) - db DEX_HYPNO ; pokedex id - db 85 ; base hp - db 73 ; base attack - db 70 ; base defense - db 67 ; base speed - db 115 ; base special - - db PSYCHIC ; species type 1 - db PSYCHIC ; species type 2 - - db 75 ; catch rate - db 165 ; base exp yield - db $77 ; sprite dimensions - - dw HypnoPicFront - dw HypnoPicBack - - ; attacks known at lvl 0 - db POUND - db HYPNOSIS - db DISABLE - db CONFUSION - - db 0 ; growth rate - - ; learnset - db %10110001 - db %01000011 - db %00001111 - db %11110000 - db %10000111 - db %00111010 - db %01000011 - - db 0 ; padding - -KrabbyBaseStats: ; 38e7a (e:4e7a) - db DEX_KRABBY ; pokedex id - db 30 ; base hp - db 105 ; base attack - db 90 ; base defense - db 50 ; base speed - db 25 ; base special - - db WATER ; species type 1 - db WATER ; species type 2 - - db 225 ; catch rate - db 115 ; base exp yield - db $55 ; sprite dimensions - - dw KrabbyPicFront - dw KrabbyPicBack - - ; attacks known at lvl 0 - db BUBBLE - db LEER - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %10100100 - db %00111111 - db %00001000 - db %11000000 - db %00000010 - db %00001000 - db %00110110 - - db 0 ; padding - -KinglerBaseStats: ; 38e96 (e:4e96) - db DEX_KINGLER ; pokedex id - db 55 ; base hp - db 130 ; base attack - db 115 ; base defense - db 75 ; base speed - db 50 ; base special - - db WATER ; species type 1 - db WATER ; species type 2 - - db 60 ; catch rate - db 206 ; base exp yield - db $77 ; sprite dimensions - - dw KinglerPicFront - dw KinglerPicBack - - ; attacks known at lvl 0 - db BUBBLE - db LEER - db VICEGRIP - db 0 - - db 0 ; growth rate - - ; learnset - db %10100100 - db %01111111 - db %00001000 - db %11000000 - db %00000010 - db %00001000 - db %00110110 - - db 0 ; padding - -VoltorbBaseStats: ; 38eb2 (e:4eb2) - db DEX_VOLTORB ; pokedex id - db 40 ; base hp - db 30 ; base attack - db 50 ; base defense - db 100 ; base speed - db 55 ; base special - - db ELECTRIC ; species type 1 - db ELECTRIC ; species type 2 - - db 190 ; catch rate - db 103 ; base exp yield - db $55 ; sprite dimensions - - dw VoltorbPicFront - dw VoltorbPicBack - - ; attacks known at lvl 0 - db TACKLE - db SCREECH - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %00100000 - db %00000001 - db %10001000 - db %11100001 - db %01001011 - db %01011000 - db %01000010 - - db 0 ; padding - -ElectrodeBaseStats: ; 38ece (e:4ece) - db DEX_ELECTRODE ; pokedex id - db 60 ; base hp - db 50 ; base attack - db 70 ; base defense - db 140 ; base speed - db 80 ; base special - - db ELECTRIC ; species type 1 - db ELECTRIC ; species type 2 - - db 60 ; catch rate - db 150 ; base exp yield - db $55 ; sprite dimensions - - dw ElectrodePicFront - dw ElectrodePicBack - - ; attacks known at lvl 0 - db TACKLE - db SCREECH - db SONICBOOM - db 0 - - db 0 ; growth rate - - ; learnset - db %00100000 - db %01000001 - db %10001000 - db %11100001 - db %11001011 - db %01011000 - db %01000010 - - db 0 ; padding - -ExeggcuteBaseStats: ; 38eea (e:4eea) - db DEX_EXEGGCUTE ; pokedex id - db 60 ; base hp - db 40 ; base attack - db 80 ; base defense - db 40 ; base speed - db 60 ; base special - - db GRASS ; species type 1 - db PSYCHIC ; species type 2 - - db 90 ; catch rate - db 98 ; base exp yield - db $77 ; sprite dimensions - - dw ExeggcutePicFront - dw ExeggcutePicBack - - ; attacks known at lvl 0 - db BARRAGE - db HYPNOSIS - db 0 - db 0 - - db 5 ; growth rate - - ; learnset - db %00100000 - db %00000011 - db %00001000 - db %11110000 - db %00011011 - db %01101000 - db %00000010 - - db 0 ; padding - -ExeggutorBaseStats: ; 38f06 (e:4f06) - db DEX_EXEGGUTOR ; pokedex id - db 95 ; base hp - db 95 ; base attack - db 85 ; base defense - db 55 ; base speed - db 125 ; base special - - db GRASS ; species type 1 - db PSYCHIC ; species type 2 - - db 45 ; catch rate - db 212 ; base exp yield - db $77 ; sprite dimensions - - dw ExeggutorPicFront - dw ExeggutorPicBack - - ; attacks known at lvl 0 - db BARRAGE - db HYPNOSIS - db 0 - db 0 - - db 5 ; growth rate - - ; learnset - db %00100000 - db %01000011 - db %00111000 - db %11110000 - db %00011011 - db %01101000 - db %00100010 - - db 0 ; padding - -CuboneBaseStats: ; 38f22 (e:4f22) - db DEX_CUBONE ; pokedex id - db 50 ; base hp - db 50 ; base attack - db 95 ; base defense - db 35 ; base speed - db 40 ; base special - - db GROUND ; species type 1 - db GROUND ; species type 2 - - db 190 ; catch rate - db 87 ; base exp yield - db $55 ; sprite dimensions - - dw CubonePicFront - dw CubonePicBack - - ; attacks known at lvl 0 - db BONE_CLUB - db GROWL - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %10110001 - db %00111111 - db %00001111 - db %11001110 - db %10100010 - db %00001000 - db %00100010 - - db 0 ; padding - -MarowakBaseStats: ; 38f3e (e:4f3e) - db DEX_MAROWAK ; pokedex id - db 60 ; base hp - db 80 ; base attack - db 110 ; base defense - db 45 ; base speed - db 50 ; base special - - db GROUND ; species type 1 - db GROUND ; species type 2 - - db 75 ; catch rate - db 124 ; base exp yield - db $66 ; sprite dimensions - - dw MarowakPicFront - dw MarowakPicBack - - ; attacks known at lvl 0 - db BONE_CLUB - db GROWL - db LEER - db FOCUS_ENERGY - - db 0 ; growth rate - - ; learnset - db %10110001 - db %01111111 - db %00001111 - db %11001110 - db %10100010 - db %00001000 - db %00100010 - - db 0 ; padding - -HitmonleeBaseStats: ; 38f5a (e:4f5a) - db DEX_HITMONLEE ; pokedex id - db 50 ; base hp - db 120 ; base attack - db 53 ; base defense - db 87 ; base speed - db 35 ; base special - - db FIGHTING ; species type 1 - db FIGHTING ; species type 2 - - db 45 ; catch rate - db 139 ; base exp yield - db $77 ; sprite dimensions - - dw HitmonleePicFront - dw HitmonleePicBack - - ; attacks known at lvl 0 - db DOUBLE_KICK - db MEDITATE - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %10110001 - db %00000011 - db %00001111 - db %11000000 - db %11000110 - db %00001000 - db %00100010 - - db 0 ; padding - -HitmonchanBaseStats: ; 38f76 (e:4f76) - db DEX_HITMONCHAN ; pokedex id - db 50 ; base hp - db 105 ; base attack - db 79 ; base defense - db 76 ; base speed - db 35 ; base special - - db FIGHTING ; species type 1 - db FIGHTING ; species type 2 - - db 45 ; catch rate - db 140 ; base exp yield - db $66 ; sprite dimensions - - dw HitmonchanPicFront - dw HitmonchanPicBack - - ; attacks known at lvl 0 - db COMET_PUNCH - db AGILITY - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %10110001 - db %00000011 - db %00001111 - db %11000000 - db %11000110 - db %00001000 - db %00100010 - - db 0 ; padding - -LickitungBaseStats: ; 38f92 (e:4f92) - db DEX_LICKITUNG ; pokedex id - db 90 ; base hp - db 55 ; base attack - db 75 ; base defense - db 30 ; base speed - db 60 ; base special - - db NORMAL ; species type 1 - db NORMAL ; species type 2 - - db 45 ; catch rate - db 127 ; base exp yield - db $77 ; sprite dimensions - - dw LickitungPicFront - dw LickitungPicBack - - ; attacks known at lvl 0 - db WRAP - db SUPERSONIC - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %10110101 - db %01111111 - db %10001111 - db %11000111 - db %10100010 - db %00001000 - db %00110110 - - db 0 ; padding - -KoffingBaseStats: ; 38fae (e:4fae) - db DEX_KOFFING ; pokedex id - db 40 ; base hp - db 65 ; base attack - db 95 ; base defense - db 35 ; base speed - db 60 ; base special - - db POISON ; species type 1 - db POISON ; species type 2 - - db 190 ; catch rate - db 114 ; base exp yield - db $66 ; sprite dimensions - - dw KoffingPicFront - dw KoffingPicBack - - ; attacks known at lvl 0 - db TACKLE - db SMOG - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %00100000 - db %00000000 - db %10001000 - db %11000001 - db %00101010 - db %01001000 - db %00000010 - - db 0 ; padding - -WeezingBaseStats: ; 38fca (e:4fca) - db DEX_WEEZING ; pokedex id - db 65 ; base hp - db 90 ; base attack - db 120 ; base defense - db 60 ; base speed - db 85 ; base special - - db POISON ; species type 1 - db POISON ; species type 2 - - db 60 ; catch rate - db 173 ; base exp yield - db $77 ; sprite dimensions - - dw WeezingPicFront - dw WeezingPicBack - - ; attacks known at lvl 0 - db TACKLE - db SMOG - db SLUDGE - db 0 - - db 0 ; growth rate - - ; learnset - db %00100000 - db %01000000 - db %10001000 - db %11000001 - db %00101010 - db %01001000 - db %00000010 - - db 0 ; padding - -RhyhornBaseStats: ; 38fe6 (e:4fe6) - db DEX_RHYHORN ; pokedex id - db 80 ; base hp - db 85 ; base attack - db 95 ; base defense - db 25 ; base speed - db 30 ; base special - - db GROUND ; species type 1 - db ROCK ; species type 2 - - db 120 ; catch rate - db 135 ; base exp yield - db $77 ; sprite dimensions - - dw RhyhornPicFront - dw RhyhornPicBack - - ; attacks known at lvl 0 - db HORN_ATTACK - db 0 - db 0 - db 0 - - db 5 ; growth rate - - ; learnset - db %11100000 - db %00000011 - db %10001000 - db %11001111 - db %10100010 - db %10001000 - db %00100010 - - db 0 ; padding - -RhydonBaseStats: ; 39002 (e:5002) - db DEX_RHYDON ; pokedex id - db 105 ; base hp - db 130 ; base attack - db 120 ; base defense - db 40 ; base speed - db 45 ; base special - - db GROUND ; species type 1 - db ROCK ; species type 2 - - db 60 ; catch rate - db 204 ; base exp yield - db $77 ; sprite dimensions - - dw RhydonPicFront - dw RhydonPicBack - - ; attacks known at lvl 0 - db HORN_ATTACK - db STOMP - db TAIL_WHIP - db FURY_ATTACK - - db 5 ; growth rate - - ; learnset - db %11110001 - db %11111111 - db %10001111 - db %11001111 - db %10100010 - db %10001000 - db %00110010 - - db 0 ; padding - -ChanseyBaseStats: ; 3901e (e:501e) - db DEX_CHANSEY ; pokedex id - db 250 ; base hp - db 5 ; base attack - db 5 ; base defense - db 50 ; base speed - db 105 ; base special - - db NORMAL ; species type 1 - db NORMAL ; species type 2 - - db 30 ; catch rate - db 255 ; base exp yield - db $66 ; sprite dimensions - - dw ChanseyPicFront - dw ChanseyPicBack - - ; attacks known at lvl 0 - db POUND - db DOUBLESLAP - db 0 - db 0 - - db 4 ; growth rate - - ; learnset - db %10110001 - db %01111111 - db %10101111 - db %11110001 - db %10110111 - db %00111001 - db %01100011 - - db 0 ; padding - -TangelaBaseStats: ; 3903a (e:503a) - db DEX_TANGELA ; pokedex id - db 65 ; base hp - db 55 ; base attack - db 115 ; base defense - db 60 ; base speed - db 100 ; base special - - db GRASS ; species type 1 - db GRASS ; species type 2 - - db 45 ; catch rate - db 166 ; base exp yield - db $66 ; sprite dimensions - - dw TangelaPicFront - dw TangelaPicBack - - ; attacks known at lvl 0 - db CONSTRICT - db BIND - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %10100100 - db %01000011 - db %00111000 - db %11000000 - db %10000010 - db %00001000 - db %00000110 - - db 0 ; padding - -KangaskhanBaseStats: ; 39056 (e:5056) - db DEX_KANGASKHAN ; pokedex id - db 105 ; base hp - db 95 ; base attack - db 80 ; base defense - db 90 ; base speed - db 40 ; base special - - db NORMAL ; species type 1 - db NORMAL ; species type 2 - - db 45 ; catch rate - db 175 ; base exp yield - db $77 ; sprite dimensions - - dw KangaskhanPicFront - dw KangaskhanPicBack - - ; attacks known at lvl 0 - db COMET_PUNCH - db RAGE - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %10110001 - db %01111111 - db %10001111 - db %11000111 - db %10100010 - db %10001000 - db %00110010 - - db 0 ; padding - -HorseaBaseStats: ; 39072 (e:5072) - db DEX_HORSEA ; pokedex id - db 30 ; base hp - db 40 ; base attack - db 70 ; base defense - db 60 ; base speed - db 70 ; base special - - db WATER ; species type 1 - db WATER ; species type 2 - - db 225 ; catch rate - db 83 ; base exp yield - db $55 ; sprite dimensions - - dw HorseaPicFront - dw HorseaPicBack - - ; attacks known at lvl 0 - db BUBBLE - db 0 - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %00100000 - db %00111111 - db %00001000 - db %11000000 - db %11000010 - db %00001000 - db %00010010 - - db 0 ; padding - -SeadraBaseStats: ; 3908e (e:508e) - db DEX_SEADRA ; pokedex id - db 55 ; base hp - db 65 ; base attack - db 95 ; base defense - db 85 ; base speed - db 95 ; base special - - db WATER ; species type 1 - db WATER ; species type 2 - - db 75 ; catch rate - db 155 ; base exp yield - db $66 ; sprite dimensions - - dw SeadraPicFront - dw SeadraPicBack - - ; attacks known at lvl 0 - db BUBBLE - db SMOKESCREEN - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %00100000 - db %01111111 - db %00001000 - db %11000000 - db %11000010 - db %00001000 - db %00010010 - - db 0 ; padding - -GoldeenBaseStats: ; 390aa (e:50aa) - db DEX_GOLDEEN ; pokedex id - db 45 ; base hp - db 67 ; base attack - db 60 ; base defense - db 63 ; base speed - db 50 ; base special - - db WATER ; species type 1 - db WATER ; species type 2 - - db 225 ; catch rate - db 111 ; base exp yield - db $66 ; sprite dimensions - - dw GoldeenPicFront - dw GoldeenPicBack - - ; attacks known at lvl 0 - db PECK - db TAIL_WHIP - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %01100000 - db %00111111 - db %00001000 - db %11000000 - db %11000010 - db %00001000 - db %00010010 - - db 0 ; padding - -SeakingBaseStats: ; 390c6 (e:50c6) - db DEX_SEAKING ; pokedex id - db 80 ; base hp - db 92 ; base attack - db 65 ; base defense - db 68 ; base speed - db 80 ; base special - - db WATER ; species type 1 - db WATER ; species type 2 - - db 60 ; catch rate - db 170 ; base exp yield - db $77 ; sprite dimensions - - dw SeakingPicFront - dw SeakingPicBack - - ; attacks known at lvl 0 - db PECK - db TAIL_WHIP - db SUPERSONIC - db 0 - - db 0 ; growth rate - - ; learnset - db %01100000 - db %01111111 - db %00001000 - db %11000000 - db %11000010 - db %00001000 - db %00010010 - - db 0 ; padding - -StaryuBaseStats: ; 390e2 (e:50e2) - db DEX_STARYU ; pokedex id - db 30 ; base hp - db 45 ; base attack - db 55 ; base defense - db 85 ; base speed - db 70 ; base special - - db WATER ; species type 1 - db WATER ; species type 2 - - db 225 ; catch rate - db 106 ; base exp yield - db $66 ; sprite dimensions - - dw StaryuPicFront - dw StaryuPicBack - - ; attacks known at lvl 0 - db TACKLE - db 0 - db 0 - db 0 - - db 5 ; growth rate - - ; learnset - db %00100000 - db %00111111 - db %10001000 - db %11110001 - db %11000011 - db %00111000 - db %01010011 - - db 0 ; padding - -StarmieBaseStats: ; 390fe (e:50fe) - db DEX_STARMIE ; pokedex id - db 60 ; base hp - db 75 ; base attack - db 85 ; base defense - db 115 ; base speed - db 100 ; base special - - db WATER ; species type 1 - db PSYCHIC ; species type 2 - - db 60 ; catch rate - db 207 ; base exp yield - db $66 ; sprite dimensions - - dw StarmiePicFront - dw StarmiePicBack - - ; attacks known at lvl 0 - db TACKLE - db WATER_GUN - db HARDEN - db 0 - - db 5 ; growth rate - - ; learnset - db %00100000 - db %01111111 - db %10001000 - db %11110001 - db %11000011 - db %00111000 - db %01010011 - - db 0 ; padding - -MrMimeBaseStats: ; 3911a (e:511a) - db DEX_MR_MIME ; pokedex id - db 40 ; base hp - db 45 ; base attack - db 65 ; base defense - db 90 ; base speed - db 100 ; base special - - db PSYCHIC ; species type 1 - db PSYCHIC ; species type 2 - - db 45 ; catch rate - db 136 ; base exp yield - db $66 ; sprite dimensions - - dw MrMimePicFront - dw MrMimePicBack - - ; attacks known at lvl 0 - db CONFUSION - db BARRIER - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %10110001 - db %01000011 - db %10101111 - db %11110001 - db %10000111 - db %00111000 - db %01000010 - - db 0 ; padding - -ScytherBaseStats: ; 39136 (e:5136) - db DEX_SCYTHER ; pokedex id - db 70 ; base hp - db 110 ; base attack - db 80 ; base defense - db 105 ; base speed - db 55 ; base special - - db BUG ; species type 1 - db FLYING ; species type 2 - - db 45 ; catch rate - db 187 ; base exp yield - db $77 ; sprite dimensions - - dw ScytherPicFront - dw ScytherPicBack - - ; attacks known at lvl 0 - db QUICK_ATTACK - db 0 - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %00100100 - db %01000011 - db %00001000 - db %11000000 - db %11000010 - db %00001000 - db %00000110 - - db 0 ; padding - -JynxBaseStats: ; 39152 (e:5152) - db DEX_JYNX ; pokedex id - db 65 ; base hp - db 50 ; base attack - db 35 ; base defense - db 95 ; base speed - db 95 ; base special - - db ICE ; species type 1 - db PSYCHIC ; species type 2 - - db 45 ; catch rate - db 137 ; base exp yield - db $66 ; sprite dimensions - - dw JynxPicFront - dw JynxPicBack - - ; attacks known at lvl 0 - db POUND - db LOVELY_KISS - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %10110001 - db %01111111 - db %00001111 - db %11110000 - db %10000111 - db %00101000 - db %00000010 - - db 0 ; padding - -ElectabuzzBaseStats: ; 3916e (e:516e) - db DEX_ELECTABUZZ ; pokedex id - db 65 ; base hp - db 83 ; base attack - db 57 ; base defense - db 105 ; base speed - db 85 ; base special - - db ELECTRIC ; species type 1 - db ELECTRIC ; species type 2 - - db 45 ; catch rate - db 156 ; base exp yield - db $66 ; sprite dimensions - - dw ElectabuzzPicFront - dw ElectabuzzPicBack - - ; attacks known at lvl 0 - db QUICK_ATTACK - db LEER - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %10110001 - db %01000011 - db %10001111 - db %11110001 - db %11000111 - db %00111000 - db %01100010 - - db 0 ; padding - -MagmarBaseStats: ; 3918a (e:518a) - db DEX_MAGMAR ; pokedex id - db 65 ; base hp - db 95 ; base attack - db 57 ; base defense - db 93 ; base speed - db 85 ; base special - - db FIRE ; species type 1 - db FIRE ; species type 2 - - db 45 ; catch rate - db 167 ; base exp yield - db $66 ; sprite dimensions - - dw MagmarPicFront - dw MagmarPicBack - - ; attacks known at lvl 0 - db EMBER - db 0 - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %10110001 - db %01000011 - db %00001111 - db %11110000 - db %10100110 - db %00101000 - db %00100010 - - db 0 ; padding - -PinsirBaseStats: ; 391a6 (e:51a6) - db DEX_PINSIR ; pokedex id - db 65 ; base hp - db 125 ; base attack - db 100 ; base defense - db 85 ; base speed - db 55 ; base special - - db BUG ; species type 1 - db BUG ; species type 2 - - db 45 ; catch rate - db 200 ; base exp yield - db $77 ; sprite dimensions - - dw PinsirPicFront - dw PinsirPicBack - - ; attacks known at lvl 0 - db VICEGRIP - db 0 - db 0 - db 0 - - db 5 ; growth rate - - ; learnset - db %10100100 - db %01000011 - db %00001101 - db %11000000 - db %00000010 - db %00001000 - db %00100110 - - db 0 ; padding - -TaurosBaseStats: ; 391c2 (e:51c2) - db DEX_TAUROS ; pokedex id - db 75 ; base hp - db 100 ; base attack - db 95 ; base defense - db 110 ; base speed - db 70 ; base special - - db NORMAL ; species type 1 - db NORMAL ; species type 2 - - db 45 ; catch rate - db 211 ; base exp yield - db $77 ; sprite dimensions - - dw TaurosPicFront - dw TaurosPicBack - - ; attacks known at lvl 0 - db TACKLE - db 0 - db 0 - db 0 - - db 5 ; growth rate - - ; learnset - db %11100000 - db %01110011 - db %10001000 - db %11000111 - db %10100010 - db %00001000 - db %00100010 - - db 0 ; padding - -MagikarpBaseStats: ; 391de (e:51de) - db DEX_MAGIKARP ; pokedex id - db 20 ; base hp - db 10 ; base attack - db 55 ; base defense - db 80 ; base speed - db 20 ; base special - - db WATER ; species type 1 - db WATER ; species type 2 - - db 255 ; catch rate - db 20 ; base exp yield - db $66 ; sprite dimensions - - dw MagikarpPicFront - dw MagikarpPicBack - - ; attacks known at lvl 0 - db SPLASH - db 0 - db 0 - db 0 - - db 5 ; growth rate - - ; learnset - db %00000000 - db %00000000 - db %00000000 - db %00000000 - db %00000000 - db %00000000 - db %00000000 - - db 0 ; padding - -GyaradosBaseStats: ; 391fa (e:51fa) - db DEX_GYARADOS ; pokedex id - db 95 ; base hp - db 125 ; base attack - db 79 ; base defense - db 81 ; base speed - db 100 ; base special - - db WATER ; species type 1 - db FLYING ; species type 2 - - db 45 ; catch rate - db 214 ; base exp yield - db $77 ; sprite dimensions - - dw GyaradosPicFront - dw GyaradosPicBack - - ; attacks known at lvl 0 - db BITE - db DRAGON_RAGE - db LEER - db HYDRO_PUMP - - db 5 ; growth rate - - ; learnset - db %10100000 - db %01111111 - db %11001000 - db %11000001 - db %10100011 - db %00001000 - db %00110010 - - db 0 ; padding - -LaprasBaseStats: ; 39216 (e:5216) - db DEX_LAPRAS ; pokedex id - db 130 ; base hp - db 85 ; base attack - db 80 ; base defense - db 60 ; base speed - db 95 ; base special - - db WATER ; species type 1 - db ICE ; species type 2 - - db 45 ; catch rate - db 219 ; base exp yield - db $77 ; sprite dimensions - - dw LaprasPicFront - dw LaprasPicBack - - ; attacks known at lvl 0 - db WATER_GUN - db GROWL - db 0 - db 0 - - db 5 ; growth rate - - ; learnset - db %11100000 - db %01111111 - db %11101000 - db %11010001 - db %10000011 - db %00101000 - db %00110010 - - db 0 ; padding - -DittoBaseStats: ; 39232 (e:5232) - db DEX_DITTO ; pokedex id - db 48 ; base hp - db 48 ; base attack - db 48 ; base defense - db 48 ; base speed - db 48 ; base special - - db NORMAL ; species type 1 - db NORMAL ; species type 2 - - db 35 ; catch rate - db 61 ; base exp yield - db $55 ; sprite dimensions - - dw DittoPicFront - dw DittoPicBack - - ; attacks known at lvl 0 - db TRANSFORM - db 0 - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %00000000 - db %00000000 - db %00000000 - db %00000000 - db %00000000 - db %00000000 - db %00000000 - - db 0 ; padding - -EeveeBaseStats: ; 3924e (e:524e) - db DEX_EEVEE ; pokedex id - db 55 ; base hp - db 55 ; base attack - db 50 ; base defense - db 55 ; base speed - db 65 ; base special - - db NORMAL ; species type 1 - db NORMAL ; species type 2 - - db 45 ; catch rate - db 92 ; base exp yield - db $55 ; sprite dimensions - - dw EeveePicFront - dw EeveePicBack - - ; attacks known at lvl 0 - db TACKLE - db SAND_ATTACK - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %10100000 - db %00000011 - db %00001000 - db %11000000 - db %11000011 - db %00001000 - db %00000010 - - db 0 ; padding - -VaporeonBaseStats: ; 3926a (e:526a) - db DEX_VAPOREON ; pokedex id - db 130 ; base hp - db 65 ; base attack - db 60 ; base defense - db 65 ; base speed - db 110 ; base special - - db WATER ; species type 1 - db WATER ; species type 2 - - db 45 ; catch rate - db 196 ; base exp yield - db $66 ; sprite dimensions - - dw VaporeonPicFront - dw VaporeonPicBack - - ; attacks known at lvl 0 - db TACKLE - db SAND_ATTACK - db QUICK_ATTACK - db WATER_GUN - - db 0 ; growth rate - - ; learnset - db %10100000 - db %01111111 - db %00001000 - db %11000000 - db %11000011 - db %00001000 - db %00010010 - - db 0 ; padding - -JolteonBaseStats: ; 39286 (e:5286) - db DEX_JOLTEON ; pokedex id - db 65 ; base hp - db 65 ; base attack - db 60 ; base defense - db 130 ; base speed - db 110 ; base special - - db ELECTRIC ; species type 1 - db ELECTRIC ; species type 2 - - db 45 ; catch rate - db 197 ; base exp yield - db $66 ; sprite dimensions - - dw JolteonPicFront - dw JolteonPicBack - - ; attacks known at lvl 0 - db TACKLE - db SAND_ATTACK - db QUICK_ATTACK - db THUNDERSHOCK - - db 0 ; growth rate - - ; learnset - db %10100000 - db %01000011 - db %10001000 - db %11000001 - db %11000011 - db %00011000 - db %01000010 - - db 0 ; padding - -FlareonBaseStats: ; 392a2 (e:52a2) - db DEX_FLAREON ; pokedex id - db 65 ; base hp - db 130 ; base attack - db 60 ; base defense - db 65 ; base speed - db 110 ; base special - - db FIRE ; species type 1 - db FIRE ; species type 2 - - db 45 ; catch rate - db 198 ; base exp yield - db $66 ; sprite dimensions - - dw FlareonPicFront - dw FlareonPicBack - - ; attacks known at lvl 0 - db TACKLE - db SAND_ATTACK - db QUICK_ATTACK - db EMBER - - db 0 ; growth rate - - ; learnset - db %10100000 - db %01000011 - db %00001000 - db %11000000 - db %11100011 - db %00001000 - db %00000010 - - db 0 ; padding - -PorygonBaseStats: ; 392be (e:52be) - db DEX_PORYGON ; pokedex id - db 65 ; base hp - db 60 ; base attack - db 70 ; base defense - db 40 ; base speed - db 75 ; base special - - db NORMAL ; species type 1 - db NORMAL ; species type 2 - - db 45 ; catch rate - db 130 ; base exp yield - db $66 ; sprite dimensions - - dw PorygonPicFront - dw PorygonPicBack - - ; attacks known at lvl 0 - db TACKLE - db SHARPEN - db CONVERSION - db 0 - - db 0 ; growth rate - - ; learnset - db %00100000 - db %01110011 - db %10001000 - db %11110001 - db %11000011 - db %00111000 - db %01000011 - - db 0 ; padding - -OmanyteBaseStats: ; 392da (e:52da) - db DEX_OMANYTE ; pokedex id - db 35 ; base hp - db 40 ; base attack - db 100 ; base defense - db 35 ; base speed - db 90 ; base special - - db ROCK ; species type 1 - db WATER ; species type 2 - - db 45 ; catch rate - db 120 ; base exp yield - db $55 ; sprite dimensions - - dw OmanytePicFront - dw OmanytePicBack - - ; attacks known at lvl 0 - db WATER_GUN - db WITHDRAW - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %10100000 - db %00111111 - db %00001000 - db %11000000 - db %00000011 - db %00001000 - db %00010010 - - db 0 ; padding - -OmastarBaseStats: ; 392f6 (e:52f6) - db DEX_OMASTAR ; pokedex id - db 70 ; base hp - db 60 ; base attack - db 125 ; base defense - db 55 ; base speed - db 115 ; base special - - db ROCK ; species type 1 - db WATER ; species type 2 - - db 45 ; catch rate - db 199 ; base exp yield - db $66 ; sprite dimensions - - dw OmastarPicFront - dw OmastarPicBack - - ; attacks known at lvl 0 - db WATER_GUN - db WITHDRAW - db HORN_ATTACK - db 0 - - db 0 ; growth rate - - ; learnset - db %11100000 - db %01111111 - db %00001101 - db %11000000 - db %10000011 - db %00001000 - db %00010010 - - db 0 ; padding - -KabutoBaseStats: ; 39312 (e:5312) - db DEX_KABUTO ; pokedex id - db 30 ; base hp - db 80 ; base attack - db 90 ; base defense - db 55 ; base speed - db 45 ; base special - - db ROCK ; species type 1 - db WATER ; species type 2 - - db 45 ; catch rate - db 119 ; base exp yield - db $55 ; sprite dimensions - - dw KabutoPicFront - dw KabutoPicBack - - ; attacks known at lvl 0 - db SCRATCH - db HARDEN - db 0 - db 0 - - db 0 ; growth rate - - ; learnset - db %10100000 - db %00111111 - db %00001000 - db %11000000 - db %00000011 - db %00001000 - db %00010010 - - db 0 ; padding - -KabutopsBaseStats: ; 3932e (e:532e) - db DEX_KABUTOPS ; pokedex id - db 60 ; base hp - db 115 ; base attack - db 105 ; base defense - db 80 ; base speed - db 70 ; base special - - db ROCK ; species type 1 - db WATER ; species type 2 - - db 45 ; catch rate - db 201 ; base exp yield - db $66 ; sprite dimensions - - dw KabutopsPicFront - dw KabutopsPicBack - - ; attacks known at lvl 0 - db SCRATCH - db HARDEN - db ABSORB - db 0 - - db 0 ; growth rate - - ; learnset - db %10110110 - db %01111111 - db %00001101 - db %11000000 - db %10000011 - db %00001000 - db %00010010 - - db 0 ; padding - -AerodactylBaseStats: ; 3934a (e:534a) - db DEX_AERODACTYL ; pokedex id - db 80 ; base hp - db 105 ; base attack - db 65 ; base defense - db 130 ; base speed - db 60 ; base special - - db ROCK ; species type 1 - db FLYING ; species type 2 - - db 45 ; catch rate - db 202 ; base exp yield - db $77 ; sprite dimensions - - dw AerodactylPicFront - dw AerodactylPicBack - - ; attacks known at lvl 0 - db WING_ATTACK - db AGILITY - db 0 - db 0 - - db 5 ; growth rate - - ; learnset - db %00101010 - db %01000011 - db %01001000 - db %11000000 - db %01100011 - db %00001100 - db %00001010 - - db 0 ; padding - -SnorlaxBaseStats: ; 39366 (e:5366) - db DEX_SNORLAX ; pokedex id - db 160 ; base hp - db 110 ; base attack - db 65 ; base defense - db 30 ; base speed - db 65 ; base special - - db NORMAL ; species type 1 - db NORMAL ; species type 2 - - db 25 ; catch rate - db 154 ; base exp yield - db $77 ; sprite dimensions - - dw SnorlaxPicFront - dw SnorlaxPicBack - - ; attacks known at lvl 0 - db HEADBUTT - db AMNESIA - db REST - db 0 - - db 5 ; growth rate - - ; learnset - db %10110001 - db %11111111 - db %10101111 - db %11010111 - db %10101111 - db %10101000 - db %00110010 - - db 0 ; padding - -ArticunoBaseStats: ; 39382 (e:5382) - db DEX_ARTICUNO ; pokedex id - db 90 ; base hp - db 85 ; base attack - db 100 ; base defense - db 85 ; base speed - db 125 ; base special - - db ICE ; species type 1 - db FLYING ; species type 2 - - db 3 ; catch rate - db 215 ; base exp yield - db $77 ; sprite dimensions - - dw ArticunoPicFront - dw ArticunoPicBack - - ; attacks known at lvl 0 - db PECK - db ICE_BEAM - db 0 - db 0 - - db 5 ; growth rate - - ; learnset - db %00101010 - db %01111111 - db %00001000 - db %11000000 - db %01000011 - db %00001100 - db %00001010 - - db 0 ; padding - -ZapdosBaseStats: ; 3939e (e:539e) - db DEX_ZAPDOS ; pokedex id - db 90 ; base hp - db 90 ; base attack - db 85 ; base defense - db 100 ; base speed - db 125 ; base special - - db ELECTRIC ; species type 1 - db FLYING ; species type 2 - - db 3 ; catch rate - db 216 ; base exp yield - db $77 ; sprite dimensions - - dw ZapdosPicFront - dw ZapdosPicBack - - ; attacks known at lvl 0 - db THUNDERSHOCK - db DRILL_PECK - db 0 - db 0 - - db 5 ; growth rate - - ; learnset - db %00101010 - db %01000011 - db %10001000 - db %11000001 - db %01000011 - db %00011100 - db %01001010 - - db 0 ; padding - -MoltresBaseStats: ; 393ba (e:53ba) - db DEX_MOLTRES ; pokedex id - db 90 ; base hp - db 100 ; base attack - db 90 ; base defense - db 90 ; base speed - db 125 ; base special - - db FIRE ; species type 1 - db FLYING ; species type 2 - - db 3 ; catch rate - db 217 ; base exp yield - db $77 ; sprite dimensions - - dw MoltresPicFront - dw MoltresPicBack - - ; attacks known at lvl 0 - db PECK - db FIRE_SPIN - db 0 - db 0 - - db 5 ; growth rate - - ; learnset - db %00101010 - db %01000011 - db %00001000 - db %11000000 - db %01100011 - db %00001100 - db %00001010 - - db 0 ; padding - -DratiniBaseStats: ; 393d6 (e:53d6) - db DEX_DRATINI ; pokedex id - db 41 ; base hp - db 64 ; base attack - db 45 ; base defense - db 50 ; base speed - db 50 ; base special - - db DRAGON ; species type 1 - db DRAGON ; species type 2 - - db 45 ; catch rate - db 67 ; base exp yield - db $55 ; sprite dimensions - - dw DratiniPicFront - dw DratiniPicBack - - ; attacks known at lvl 0 - db WRAP - db LEER - db 0 - db 0 - - db 5 ; growth rate - - ; learnset - db %10100000 - db %00111111 - db %11001000 - db %11000001 - db %11100011 - db %00011000 - db %00010010 - - db 0 ; padding - -DragonairBaseStats: ; 393f2 (e:53f2) - db DEX_DRAGONAIR ; pokedex id - db 61 ; base hp - db 84 ; base attack - db 65 ; base defense - db 70 ; base speed - db 70 ; base special - - db DRAGON ; species type 1 - db DRAGON ; species type 2 - - db 45 ; catch rate - db 144 ; base exp yield - db $66 ; sprite dimensions - - dw DragonairPicFront - dw DragonairPicBack - - ; attacks known at lvl 0 - db WRAP - db LEER - db THUNDER_WAVE - db 0 - - db 5 ; growth rate - - ; learnset - db %11100000 - db %00111111 - db %11001000 - db %11000001 - db %11100011 - db %00011000 - db %00010010 - - db 0 ; padding - -DragoniteBaseStats: ; 3940e (e:540e) - db DEX_DRAGONITE ; pokedex id - db 91 ; base hp - db 134 ; base attack - db 95 ; base defense - db 80 ; base speed - db 100 ; base special - - db DRAGON ; species type 1 - db FLYING ; species type 2 - - db 45 ; catch rate - db 218 ; base exp yield - db $77 ; sprite dimensions - - dw DragonitePicFront - dw DragonitePicBack - - ; attacks known at lvl 0 - db WRAP - db LEER - db THUNDER_WAVE - db AGILITY - - db 5 ; growth rate - - ; learnset - db %11100010 - db %01111111 - db %11001000 - db %11000001 - db %11100011 - db %00011000 - db %00110010 - - db 0 ; padding - -MewtwoBaseStats: ; 3942a (e:542a) - db DEX_MEWTWO ; pokedex id - db 106 ; base hp - db 110 ; base attack - db 90 ; base defense - db 130 ; base speed - db 154 ; base special - - db PSYCHIC ; species type 1 - db PSYCHIC ; species type 2 - - db 3 ; catch rate - db 220 ; base exp yield - db $77 ; sprite dimensions - - dw MewtwoPicFront - dw MewtwoPicBack - - ; attacks known at lvl 0 - db CONFUSION - db DISABLE - db SWIFT - db PSYCHIC_M - - db 5 ; growth rate - - ; learnset - db %10110001 - db %11111111 - db %10101111 - db %11110001 - db %10101111 - db %00111000 - db %01100011 - - db 0 ; padding - -CryData: ; 39446 (e:5446) - ;$BaseCry, $Pitch, $Length - db $11, $00, $80; Rhydon - db $03, $00, $80; Kangaskhan - db $00, $00, $80; Nidoran♂ - db $19, $CC, $01; Clefairy - db $10, $00, $80; Spearow - db $06, $ED, $80; Voltorb - db $09, $00, $80; Nidoking - db $1F, $00, $80; Slowbro - db $0F, $20, $80; Ivysaur - db $0D, $00, $80; Exeggutor - db $0C, $00, $80; Lickitung - db $0B, $00, $80; Exeggcute - db $05, $00, $80; Grimer - db $07, $00, $FF; Gengar - db $01, $00, $80; Nidoran♀ - db $0A, $00, $80; Nidoqueen - db $19, $00, $80; Cubone - db $04, $00, $80; Rhyhorn - db $1B, $00, $80; Lapras - db $15, $00, $80; Arcanine - db $1E, $EE, $FF; Mew - db $17, $00, $80; Gyarados - db $18, $00, $80; Shellder - db $1A, $00, $80; Tentacool - db $1C, $00, $80; Gastly - db $16, $00, $80; Scyther - db $1E, $02, $20; Staryu - db $13, $00, $80; Blastoise - db $14, $00, $80; Pinsir - db $12, $00, $80; Tangela - db $00, $00, $00; MissingNo. - db $00, $00, $00; MissingNo. - db $1F, $20, $40; Growlithe - db $17, $FF, $C0; Onix - db $18, $40, $A0; Fearow - db $0E, $DF, $04; Pidgey - db $02, $00, $80; Slowpoke - db $1C, $A8, $C0; Kadabra - db $24, $00, $80; Graveler - db $14, $0A, $C0; Chansey - db $1F, $48, $60; Machoke - db $20, $08, $40; Mr.Mime - db $12, $80, $C0; Hitmonlee - db $0C, $EE, $C0; Hitmonchan - db $17, $E0, $10; Arbok - db $1E, $42, $FF; Parasect - db $21, $20, $60; Psyduck - db $0D, $88, $20; Drowzee - db $12, $E0, $40; Golem - db $00, $00, $00; MissingNo. - db $04, $FF, $30; Magmar - db $00, $00, $00; MissingNo. - db $06, $8F, $FF; Electabuzz - db $1C, $20, $C0; Magneton - db $12, $E6, $DD; Koffing - db $00, $00, $00; MissingNo. - db $0A, $DD, $60; Mankey - db $0C, $88, $C0; Seel - db $0B, $AA, $01; Diglett - db $1D, $11, $40; Tauros - db $00, $00, $00; MissingNo. - db $00, $00, $00; MissingNo. - db $00, $00, $00; MissingNo. - db $10, $DD, $01; Farfetch'd - db $1A, $44, $40; Venonat - db $0F, $3C, $C0; Dragonite - db $00, $80, $10; MissingNo. - db $00, $00, $00; MissingNo. - db $1D, $E0, $80; MissingNo. - db $0B, $BB, $01; Doduo - db $0E, $FF, $FF; Poliwag - db $0D, $FF, $FF; Jynx - db $09, $F8, $40; Moltres - db $09, $80, $40; Articuno - db $18, $FF, $80; Zapdos - db $0E, $FF, $FF; Ditto - db $19, $77, $10; Meowth - db $20, $20, $E0; Krabby - db $22, $FF, $40; MissingNo. - db $00, $00, $00; MissingNo. - db $0E, $E0, $60; MissingNo. - db $24, $4F, $10; Vulpix - db $24, $88, $60; Ninetales - db $0F, $EE, $01; Pikachu - db $09, $EE, $08; Raichu - db $00, $00, $00; MissingNo. - db $00, $00, $00; MissingNo. - db $0F, $60, $40; Dratini - db $0F, $40, $80; Dragonair - db $16, $BB, $40; Kabuto - db $18, $EE, $01; Kabutops - db $19, $99, $10; Horsea - db $19, $3C, $01; Seadra - db $0F, $40, $C0; MissingNo. - db $0F, $20, $C0; MissingNo. - db $00, $20, $40; Sandshrew - db $00, $FF, $FF; Sandslash - db $1F, $F0, $01; Omanyte - db $1F, $FF, $40; Omastar - db $0E, $FF, $35; Jigglypuff - db $0E, $68, $60; Wigglytuff - db $1A, $88, $60; Eevee - db $1A, $10, $20; Flareon - db $1A, $3D, $80; Jolteon - db $1A, $AA, $FF; Vaporeon - db $1F, $EE, $01; Machop - db $1D, $E0, $80; Zubat - db $17, $12, $40; Ekans - db $1E, $20, $E0; Paras - db $0E, $77, $60; Poliwhirl - db $0E, $00, $FF; Poliwrath - db $15, $EE, $01; Weedle - db $13, $FF, $01; Kakuna - db $13, $60, $80; Beedrill - db $00, $00, $00; MissingNo. - db $0B, $99, $20; Dodrio - db $0A, $AF, $40; Primeape - db $0B, $2A, $10; Dugtrio - db $1A, $29, $80; Venomoth - db $0C, $23, $FF; Dewgong - db $00, $00, $00; MissingNo. - db $00, $00, $00; MissingNo. - db $16, $80, $20; Caterpie - db $1C, $CC, $01; Metapod - db $16, $77, $40; Butterfree - db $1F, $08, $C0; Machamp - db $11, $20, $10; MissingNo. - db $21, $FF, $40; Golduck - db $0D, $EE, $40; Hypno - db $1D, $FA, $80; Golbat - db $1E, $99, $FF; Mewtwo - db $05, $55, $01; Snorlax - db $17, $80, $00; Magikarp - db $00, $00, $00; MissingNo. - db $00, $00, $00; MissingNo. - db $07, $EF, $FF; Muk - db $0F, $40, $80; MissingNo. - db $20, $EE, $E0; Kingler - db $18, $6F, $E0; Cloyster - db $00, $00, $00; MissingNo. - db $06, $A8, $90; Electrode - db $19, $AA, $20; Clefable - db $12, $FF, $FF; Weezing - db $19, $99, $FF; Persian - db $08, $4F, $60; Marowak - db $00, $00, $00; MissingNo. - db $1C, $30, $40; Haunter - db $1C, $C0, $01; Abra - db $1C, $98, $FF; Alakazam - db $14, $28, $C0; Pidgeotto - db $14, $11, $FF; Pidgeot - db $1E, $00, $80; Starmie - db $0F, $80, $01; Bulbasaur - db $0F, $00, $C0; Venusaur - db $1A, $EE, $FF; Tentacruel - db $00, $00, $00; MissingNo. - db $16, $80, $40; Goldeen - db $16, $10, $FF; Seaking - db $00, $00, $00; MissingNo. - db $00, $00, $00; MissingNo. - db $00, $00, $00; MissingNo. - db $00, $00, $00; MissingNo. - db $25, $00, $80; Ponyta - db $25, $20, $C0; Rapidash - db $22, $00, $80; Rattata - db $22, $20, $FF; Raticate - db $00, $2C, $C0; Nidorino - db $01, $2C, $E0; Nidorina - db $24, $F0, $10; Geodude - db $25, $AA, $FF; Porygon - db $23, $20, $F0; Aerodactyl - db $00, $00, $00; MissingNo. - db $1C, $80, $60; Magnemite - db $00, $00, $00; MissingNo. - db $00, $00, $00; MissingNo. - db $04, $60, $40; Charmander - db $1D, $60, $40; Squirtle - db $04, $20, $40; Charmeleon - db $1D, $20, $40; Wartortle - db $04, $00, $80; Charizard - db $1D, $00, $80; MissingNo. - db $00, $00, $00; MissingNo. - db $00, $00, $00; MissingNo. - db $00, $00, $00; MissingNo. - db $08, $DD, $01; Oddish - db $08, $AA, $40; Gloom - db $23, $22, $FF; Vileplume - db $21, $55, $01; Bellsprout - db $25, $44, $20; Weepinbell - db $25, $66, $CC; Victreebel +INCLUDE "data/cries.asm" Func_39680: ; 39680 (e:5680) ld a, [H_WHOSETURN] ; $fff3 @@ -51214,54 +31902,7 @@ TrainerPicAndMoneyPointers: ; 39914 (e:5914) dw LancePic db 0,$99,0 -TrainerNames: ; 399ff (e:59ff) - db "YOUNGSTER@" - db "BUG CATCHER@" - db "LASS@" - db "SAILOR@" - db "JR.TRAINER♂@" - db "JR.TRAINER♀@" - db "POKéMANIAC@" - db "SUPER NERD@" - db "HIKER@" - db "BIKER@" - db "BURGLAR@" - db "ENGINEER@" - db "JUGGLER@" - db "FISHERMAN@" - db "SWIMMER@" - db "CUE BALL@" - db "GAMBLER@" - db "BEAUTY@" - db "PSYCHIC@" - db "ROCKER@" - db "JUGGLER@" - db "TAMER@" - db "BIRD KEEPER@" - db "BLACKBELT@" - db "RIVAL1@" - db "PROF.OAK@" - db "CHIEF@" - db "SCIENTIST@" - db "GIOVANNI@" - db "ROCKET@" - db "COOLTRAINER♂@" - db "COOLTRAINER♀@" - db "BRUNO@" - db "BROCK@" - db "MISTY@" - db "LT.SURGE@" - db "ERIKA@" - db "KOGA@" - db "BLAINE@" - db "SABRINA@" - db "GENTLEMAN@" - db "RIVAL2@" - db "RIVAL3@" - db "LORELEI@" - db "CHANNELER@" - db "AGATHA@" - db "LANCE@" +INCLUDE "text/trainer_names.asm" Func_39b87: ; 39b87 (e:5b87) ld hl, $d0dc @@ -51485,7 +32126,7 @@ ReadTrainer: ; 39c53 (e:5c53) ; check if our trainer's team has special moves ; get trainer class number - ld a,[$D059] + ld a,[W_CUROPPONENT] sub $C8 ld b,a ld hl,TeamMoves @@ -51549,793 +32190,9 @@ ReadTrainer: ; 39c53 (e:5c53) jr nz,.LastLoop ret -LoneMoves: ; 39d22 (e:5d22) -; these are used for gym leaders. -; this is not automatic! you have to write the number you want to W_LONEATTACKNO -; first. e.g., erika's script writes 4 to W_LONEATTACKNO to get mega drain, -; the fourth entry in the list. - -; first byte: pokemon in the trainer's party that gets the move -; second byte: move -; unterminated - db 1,BIDE - db 1,BUBBLEBEAM - db 2,THUNDERBOLT - db 2,MEGA_DRAIN - db 3,TOXIC - db 3,PSYWAVE - db 3,FIRE_BLAST - db 4,FISSURE - -TeamMoves: ; 39d32 (e:5d32) -; these are used for elite four. -; this is automatic, based on trainer class. -; don't be confused by LoneMoves above, the two data structures are - ; _completely_ unrelated. - -; first byte: trainer (all trainers in this class have this move) -; second byte: move -; ff-terminated - db LORELEI,BLIZZARD - db BRUNO,FISSURE - db AGATHA,TOXIC - db LANCE,BARRIER - db $FF +INCLUDE "data/trainer_moves.asm" -if _YELLOW -; different format from above. - -; entry ≔ trainerclass, trainerid, moveset+, 0 -; moveset ≔ partymon, partymon'smove, moveid - - db BUG_CATCHER,$f - db 2,2,TACKLE - db 2,3,STRING_SHOT - db 0 - - db YOUNGSTER,$e - db 1,4,FISSURE - db 0 - - db BROCK,$1 - db 2,3,BIND - db 2,4,BIDE - db 0 - - db MISTY,$1 - db 2,4,BUBBLEBEAM - db 0 - - db LT__SURGE,$1 - db 1,1,THUNDERBOLT - db 1,2,MEGA_PUNCH - db 1,3,MEGA_KICK - db 1,4,GROWL - db 0 - - db ERIKA,$1 - db 1,3,MEGA_DRAIN - db 2,1,RAZOR_LEAF - db 3,1,PETAL_DANCE - db 0 - - db KOGA,$1 - db 1,1,TOXIC - db 1,2,TACKLE - db 2,1,TOXIC - db 2,3,SUPERSONIC - db 3,1,TOXIC - db 3,2,DOUBLE_EDGE - db 4,1,LEECH_LIFE - db 4,2,DOUBLE_TEAM - db 4,3,PSYCHIC_M - db 4,4,TOXIC - db 0 - - db BLAINE,$1 - db 1,1,FLAMETHROWER - db 1,4,CONFUSE_RAY - db 3,1,FLAMETHROWER - db 3,2,FIRE_BLAST - db 3,3,REFLECT - db 0 - - db SABRINA,$1 - db 1,1,FLASH - db 2,1,KINESIS - db 2,4,PSYWAVE - db 3,1,PSYWAVE - db 0 - - db GIOVANNI,$3 - db 1,3,FISSURE - db 2,2,DOUBLE_TEAM - db 3,1,EARTHQUAKE - db 3,3,THUNDER - db 4,1,EARTHQUAKE - db 4,2,LEER - db 4,3,THUNDER - db 5,1,ROCK_SLIDE - db 5,4,EARTHQUAKE - db 0 - - db LORELEI,$1 - db 1,1,BUBBLEBEAM - db 2,3,ICE_BEAM - db 3,1,PSYCHIC_M - db 3,2,SURF - db 4,3,LOVELY_KISS - db 5,3,BLIZZARD - db 0 - - db BRUNO,$1 - db 1,1,ROCK_SLIDE - db 1,2,SCREECH - db 1,4,DIG - db 2,3,FIRE_PUNCH - db 2,4,DOUBLE_TEAM - db 3,1,DOUBLE_KICK - db 3,2,MEGA_KICK - db 3,4,DOUBLE_TEAM - db 4,1,ROCK_SLIDE - db 4,2,SCREECH - db 4,4,EARTHQUAKE - db 5,2,KARATE_CHOP - db 5,3,STRENGTH - db 0 - - db AGATHA,$1 - db 1,2,SUBSTITUTE - db 1,3,LICK - db 1,4,MEGA_DRAIN - db 2,2,TOXIC - db 2,4,LEECH_LIFE - db 3,2,LICK - db 4,1,WRAP - db 5,2,PSYCHIC_M - db 0 - - db LANCE,$1 - db 1,1,DRAGON_RAGE - db 2,1,THUNDER_WAVE - db 2,3,THUNDERBOLT - db 3,1,BUBBLEBEAM - db 3,2,WRAP - db 3,3,ICE_BEAM - db 4,1,WING_ATTACK - db 4,2,SWIFT - db 4,3,FLY - db 5,1,BLIZZARD - db 5,2,FIRE_BLAST - db 5,3,THUNDER - db 0 - - db SONY3,$1 - db 1,3,EARTHQUAKE - db 2,4,KINESIS - db 3,4,LEECH_SEED - db 4,1,ICE_BEAM - db 5,1,CONFUSE_RAY - db 5,4,FIRE_SPIN - db 6,3,QUICK_ATTACK - db 0 - - db SONY3,$2 - db 1,3,EARTHQUAKE - db 2,4,KINESIS - db 3,4,LEECH_SEED - db 4,1,THUNDERBOLT - db 5,1,ICE_BEAM - db 6,2,REFLECT - db 6,3,QUICK_ATTACK - db 0 - - db SONY3,$3 - db 1,3,EARTHQUAKE - db 2,4,KINESIS - db 3,4,LEECH_SEED - db 4,1,CONFUSE_RAY - db 4,4,FIRE_SPIN - db 5,1,THUNDERBOLT - db 6,1,AURORA_BEAM - db 6,3,QUICK_ATTACK - db 0 - - db $ff -endc - -TrainerDataPointers: ; 39d3b (e:5d3b) - dw YoungsterData,BugCatcherData,LassData,SailorData,JrTrainerMData - dw JrTrainerFData,PokemaniacData,SuperNerdData,HikerData,BikerData - dw BurglarData,EngineerData,Juggler1Data,FisherData,SwimmerData - dw CueBallData,GamblerData,BeautyData,PsychicData,RockerData - dw JugglerData,TamerData,BirdKeeperData,BlackbeltData,Green1Data - dw ProfOakData,ChiefData,ScientistData,GiovanniData,RocketData - dw CooltrainerMData,CooltrainerFData,BrunoData,BrockData,MistyData - dw LtSurgeData,ErikaData,KogaData,BlaineData,SabrinaData - dw GentlemanData,Green2Data,Green3Data,LoreleiData,ChannelerData - dw AgathaData,LanceData - -; if first byte != FF, then - ; first byte is level (of all pokemon on this team) - ; all the next bytes are pokemon species - ; null-terminated -; if first byte == FF, then - ; first byte is FF (obviously) - ; every next two bytes are a level and species - ; null-terminated - -YoungsterData: ; 39d99 (e:5d99) - db 11,RATTATA,EKANS,0 - db 14,SPEAROW,0 - db 10,RATTATA,RATTATA,ZUBAT,0 - db 14,RATTATA,EKANS,ZUBAT,0 - db 15,RATTATA,SPEAROW,0 - db 17,SLOWPOKE,0 - db 14,EKANS,SANDSHREW,0 - db 21,NIDORAN_M,0 - db 21,EKANS,0 - db 19,SANDSHREW,ZUBAT,0 - db 17,RATTATA,RATTATA,RATICATE,0 - db 18,NIDORAN_M,NIDORINO,0 - db 17,SPEAROW,RATTATA,RATTATA,SPEAROW,0 -if _YELLOW - db 24,SANDSHREW,0 -endc -BugCatcherData: ; 39dce (e:5dce) -if _YELLOW - db 7,CATERPIE,CATERPIE,0 - db 6,METAPOD,CATERPIE,METAPOD,0 - db 10,CATERPIE,0 -else - db 6,WEEDLE,CATERPIE,0 - db 7,WEEDLE,KAKUNA,WEEDLE,0 - db 9,WEEDLE,0 -endc - db 10,CATERPIE,WEEDLE,CATERPIE,0 - db 9,WEEDLE,KAKUNA,CATERPIE,METAPOD,0 - db 11,CATERPIE,METAPOD,0 - db 11,WEEDLE,KAKUNA,0 - db 10,CATERPIE,METAPOD,CATERPIE,0 - db 14,CATERPIE,WEEDLE,0 - db 16,WEEDLE,CATERPIE,WEEDLE,0 - db 20,BUTTERFREE,0 - db 18,METAPOD,CATERPIE,VENONAT,0 - db 19,BEEDRILL,BEEDRILL,0 - db 20,CATERPIE,WEEDLE,VENONAT,0 -if _YELLOW - db 8,CATERPIE,METAPOD,0 -endc -LassData: ; 39e0c (e:5e0c) - db 9,PIDGEY,PIDGEY,0 - db 10,RATTATA,NIDORAN_M,0 - db 14,JIGGLYPUFF,0 - db 31,PARAS,PARAS,PARASECT,0 - db 11,ODDISH,BELLSPROUT,0 - db 14,CLEFAIRY,0 - db 16,PIDGEY,NIDORAN_F,0 - db 14,PIDGEY,NIDORAN_F,0 - db 15,NIDORAN_M,NIDORAN_F,0 - db 13,ODDISH,PIDGEY,ODDISH,0 - db 18,PIDGEY,NIDORAN_F,0 -if _YELLOW - db 20,JIGGLYPUFF,0 -else - db 18,RATTATA,PIKACHU,0 -endc - db 23,NIDORAN_F,NIDORINA,0 - db 24,MEOWTH,MEOWTH,MEOWTH,0 -if _YELLOW - db 19,PIDGEY,RATTATA,NIDORAN_F,MEOWTH,NIDORAN_M,0 -else - db 19,PIDGEY,RATTATA,NIDORAN_M,MEOWTH,PIKACHU,0 -endc - db 22,CLEFAIRY,CLEFAIRY,0 - db 23,BELLSPROUT,WEEPINBELL,0 - db 23,ODDISH,GLOOM,0 -if _YELLOW - db 6,NIDORAN_F,NIDORAN_M,0 -endc -SailorData: ; 39e58 (e:5e58) - db 18,MACHOP,SHELLDER,0 - db 17,MACHOP,TENTACOOL,0 - db 21,SHELLDER,0 - db 17,HORSEA,SHELLDER,TENTACOOL,0 - db 18,TENTACOOL,STARYU,0 - db 17,HORSEA,HORSEA,HORSEA,0 - db 20,MACHOP,0 -if _YELLOW - db 24,MAGNEMITE,0 -else - db 21,PIKACHU,PIKACHU,0 -endc -JrTrainerMData: ; 39e78 (e:5e78) -if _YELLOW - db 9,DIGLETT,SANDSHREW,0 -else - db 11,DIGLETT,SANDSHREW,0 -endc - db 14,RATTATA,EKANS,0 - db 18,MANKEY,0 - db 20,SQUIRTLE,0 - db 16,SPEAROW,RATICATE,0 - db 18,DIGLETT,DIGLETT,SANDSHREW,0 - db 21,GROWLITHE,CHARMANDER,0 - db 19,RATTATA,DIGLETT,EKANS,SANDSHREW,0 - db 29,NIDORAN_M,NIDORINO,0 -if _YELLOW - db 16,WEEPINBELL,0 -endc -JrTrainerFData: ; 39e9d (e:5e9d) - db 19,GOLDEEN,0 -if _YELLOW - db 16,ODDISH,BELLSPROUT,0 -else - db 16,RATTATA,PIKACHU,0 -endc - db 16,PIDGEY,PIDGEY,PIDGEY,0 - db 22,BULBASAUR,0 - db 18,ODDISH,BELLSPROUT,ODDISH,BELLSPROUT,0 - db 23,MEOWTH,0 -if _YELLOW - db 20,JIGGLYPUFF,CLEFAIRY,0 -else - db 20,PIKACHU,CLEFAIRY,0 -endc - db 21,PIDGEY,PIDGEOTTO,0 - db 21,JIGGLYPUFF,PIDGEY,MEOWTH,0 - db 22,ODDISH,BULBASAUR,0 - db 24,BULBASAUR,IVYSAUR,0 -if _YELLOW - db 24,PIDGEY,MEOWTH,RATTATA,PIDGEY,MEOWTH,0 -else - db 24,PIDGEY,MEOWTH,RATTATA,PIKACHU,MEOWTH,0 -endc - db 30,POLIWAG,POLIWAG,0 - db 27,PIDGEY,MEOWTH,PIDGEY,PIDGEOTTO,0 - db 28,GOLDEEN,POLIWAG,HORSEA,0 - db 31,GOLDEEN,SEAKING,0 - db 22,BELLSPROUT,CLEFAIRY,0 - db 20,MEOWTH,ODDISH,PIDGEY,0 - db 19,PIDGEY,RATTATA,RATTATA,BELLSPROUT,0 - db 28,GLOOM,ODDISH,ODDISH,0 -if _YELLOW - db 29,PIDGEY,PIDGEOTTO,0 -else - db 29,PIKACHU,RAICHU,0 -endc - db 33,CLEFAIRY,0 - db 29,BELLSPROUT,ODDISH,TANGELA,0 - db 30,TENTACOOL,HORSEA,SEEL,0 -if _YELLOW - db 20,CUBONE,0 -endc -PokemaniacData: ; 39f09 (e:5f09) - db 30,RHYHORN,LICKITUNG,0 - db 20,CUBONE,SLOWPOKE,0 - db 20,SLOWPOKE,SLOWPOKE,SLOWPOKE,0 - db 22,CHARMANDER,CUBONE,0 - db 25,SLOWPOKE,0 - db 40,CHARMELEON,LAPRAS,LICKITUNG,0 - db 23,CUBONE,SLOWPOKE,0 -SuperNerdData: ; 39f26 (e:5f26) - db 11,MAGNEMITE,VOLTORB,0 - db 12,GRIMER,VOLTORB,KOFFING,0 - db 20,VOLTORB,KOFFING,VOLTORB,MAGNEMITE,0 - db 22,GRIMER,MUK,GRIMER,0 - db 26,KOFFING,0 - db 22,KOFFING,MAGNEMITE,WEEZING,0 - db 20,MAGNEMITE,MAGNEMITE,KOFFING,MAGNEMITE,0 - db 24,MAGNEMITE,VOLTORB,0 - db 36,VULPIX,VULPIX,NINETALES,0 - db 34,PONYTA,CHARMANDER,VULPIX,GROWLITHE,0 - db 41,RAPIDASH,0 - db 37,GROWLITHE,VULPIX,0 -HikerData: ; 39f5e (e:5f5e) - db 10,GEODUDE,GEODUDE,ONIX,0 - db 15,MACHOP,GEODUDE,0 - db 13,GEODUDE,GEODUDE,MACHOP,GEODUDE,0 - db 17,ONIX,0 - db 21,GEODUDE,ONIX,0 - db 20,GEODUDE,MACHOP,GEODUDE,0 - db 21,GEODUDE,ONIX,0 - db 19,ONIX,GRAVELER,0 - db 21,GEODUDE,GEODUDE,GRAVELER,0 - db 25,GEODUDE,0 - db 20,MACHOP,ONIX,0 - db 19,GEODUDE,MACHOP,GEODUDE,GEODUDE,0 - db 20,ONIX,ONIX,GEODUDE,0 - db 21,GEODUDE,GRAVELER,0 -BikerData: ; 39f9c (e:5f9c) - db 28,KOFFING,KOFFING,KOFFING,0 - db 29,KOFFING,GRIMER,0 - db 25,KOFFING,KOFFING,WEEZING,KOFFING,GRIMER,0 - db 28,KOFFING,GRIMER,WEEZING,0 - db 29,GRIMER,KOFFING,0 - db 33,WEEZING,0 - db 26,GRIMER,GRIMER,GRIMER,GRIMER,0 - db 28,WEEZING,KOFFING,WEEZING,0 - db 33,MUK,0 - db 29,VOLTORB,VOLTORB,0 - db 29,WEEZING,MUK,0 - db 25,KOFFING,WEEZING,KOFFING,KOFFING,WEEZING,0 - db 26,KOFFING,KOFFING,GRIMER,KOFFING,0 - db 28,GRIMER,GRIMER,KOFFING,0 - db 29,KOFFING,MUK,0 -BurglarData: ; 39fe4 (e:5fe4) - db 29,GROWLITHE,VULPIX,0 - db 33,GROWLITHE,0 - db 28,VULPIX,CHARMANDER,PONYTA,0 - db 36,GROWLITHE,VULPIX,NINETALES,0 - db 41,PONYTA,0 - db 37,VULPIX,GROWLITHE,0 - db 34,CHARMANDER,CHARMELEON,0 - db 38,NINETALES,0 - db 34,GROWLITHE,PONYTA,0 -EngineerData: ; 3a007 (e:6007) - db 21,VOLTORB,MAGNEMITE,0 - db 21,MAGNEMITE,0 - db 18,MAGNEMITE,MAGNEMITE,MAGNETON,0 -Juggler1Data: ; 3a013 (e:6013) -; none -FisherData: ; 3a013 (e:6013) - db 17,GOLDEEN,TENTACOOL,GOLDEEN,0 - db 17,TENTACOOL,STARYU,SHELLDER,0 - db 22,GOLDEEN,POLIWAG,GOLDEEN,0 - db 24,TENTACOOL,GOLDEEN,0 - db 27,GOLDEEN,0 - db 21,POLIWAG,SHELLDER,GOLDEEN,HORSEA,0 - db 28,SEAKING,GOLDEEN,SEAKING,SEAKING,0 - db 31,SHELLDER,CLOYSTER,0 - db 27,MAGIKARP,MAGIKARP,MAGIKARP,MAGIKARP,MAGIKARP,MAGIKARP,0 - db 33,SEAKING,GOLDEEN,0 - db 24,MAGIKARP,MAGIKARP,0 -SwimmerData: ; 3a049 (e:6049) - db 16,HORSEA,SHELLDER,0 - db 30,TENTACOOL,SHELLDER,0 - db 29,GOLDEEN,HORSEA,STARYU,0 - db 30,POLIWAG,POLIWHIRL,0 - db 27,HORSEA,TENTACOOL,TENTACOOL,GOLDEEN,0 - db 29,GOLDEEN,SHELLDER,SEAKING,0 - db 30,HORSEA,HORSEA,0 - db 27,TENTACOOL,TENTACOOL,STARYU,HORSEA,TENTACRUEL,0 - db 31,SHELLDER,CLOYSTER,0 - db 35,STARYU,0 - db 28,HORSEA,HORSEA,SEADRA,HORSEA,0 - db 33,SEADRA,TENTACRUEL,0 - db 37,STARMIE,0 - db 33,STARYU,WARTORTLE,0 - db 32,POLIWHIRL,TENTACOOL,SEADRA,0 -CueBallData: ; 3a08d (e:608d) - db 28,MACHOP,MANKEY,MACHOP,0 - db 29,MANKEY,MACHOP,0 - db 33,MACHOP,0 - db 29,MANKEY,PRIMEAPE,0 - db 29,MACHOP,MACHOKE,0 - db 33,MACHOKE,0 - db 26,MANKEY,MANKEY,MACHOKE,MACHOP,0 - db 29,PRIMEAPE,MACHOKE,0 - db 31,TENTACOOL,TENTACOOL,TENTACRUEL,0 -GamblerData: ; 3a0b3 (e:60b3) - db 18,POLIWAG,HORSEA,0 - db 18,BELLSPROUT,ODDISH,0 - db 18,VOLTORB,MAGNEMITE,0 - db 18,GROWLITHE,VULPIX,0 - db 22,POLIWAG,POLIWAG,POLIWHIRL,0 - db 22,ONIX,GEODUDE,GRAVELER,0 - db 24,GROWLITHE,VULPIX,0 -BeautyData: ; 3a0d1 (e:60d1) - db 21,ODDISH,BELLSPROUT,ODDISH,BELLSPROUT,0 - db 24,BELLSPROUT,BELLSPROUT,0 - db 26,EXEGGCUTE,0 -if _YELLOW - db 27,RATTATA,VULPIX,RATTATA,0 -else - db 27,RATTATA,PIKACHU,RATTATA,0 -endc - db 29,CLEFAIRY,MEOWTH,0 - db 35,SEAKING,0 - db 30,SHELLDER,SHELLDER,CLOYSTER,0 - db 31,POLIWAG,SEAKING,0 - db 29,PIDGEOTTO,WIGGLYTUFF,0 - db 29,BULBASAUR,IVYSAUR,0 - db 33,WEEPINBELL,BELLSPROUT,WEEPINBELL,0 - db 27,POLIWAG,GOLDEEN,SEAKING,GOLDEEN,POLIWAG,0 - db 30,GOLDEEN,SEAKING,0 - db 29,STARYU,STARYU,STARYU,0 - db 30,SEADRA,HORSEA,SEADRA,0 -PsychicData: ; 3a115 (e:6115) - db 31,KADABRA,SLOWPOKE,MR_MIME,KADABRA,0 - db 34,MR_MIME,KADABRA,0 - db 33,SLOWPOKE,SLOWPOKE,SLOWBRO,0 - db 38,SLOWBRO,0 -RockerData: ; 3a127 (e:6127) -if _YELLOW - db 20,VOLTORB,VOLTORB,VOLTORB,0 -else - db 20,VOLTORB,MAGNEMITE,VOLTORB,0 -endc - db 29,VOLTORB,ELECTRODE,0 -JugglerData: ; 3a130 (e:6130) - db 29,KADABRA,MR_MIME,0 - db 41,DROWZEE,HYPNO,KADABRA,KADABRA,0 - db 31,DROWZEE,DROWZEE,KADABRA,DROWZEE,0 - db 34,DROWZEE,HYPNO,0 - db 48,MR_MIME,0 - db 33,HYPNO,0 - db 38,HYPNO,0 - db 34,DROWZEE,KADABRA,0 -TamerData: ; 3a151 (e:6151) - db 34,SANDSLASH,ARBOK,0 - db 33,ARBOK,SANDSLASH,ARBOK,0 - db 43,RHYHORN,0 - db 39,ARBOK,TAUROS,0 - db 44,PERSIAN,GOLDUCK,0 - db 42,RHYHORN,PRIMEAPE,ARBOK,TAUROS,0 -BirdKeeperData: ; 3a16b (e:616b) - db 29,PIDGEY,PIDGEOTTO,0 - db 25,SPEAROW,PIDGEY,PIDGEY,SPEAROW,SPEAROW,0 - db 26,PIDGEY,PIDGEOTTO,SPEAROW,FEAROW,0 - db 33,FARFETCH_D,0 - db 29,SPEAROW,FEAROW,0 - db 26,PIDGEOTTO,FARFETCH_D,DODUO,PIDGEY,0 - db 28,DODRIO,DODUO,DODUO,0 - db 29,SPEAROW,FEAROW,0 - db 34,DODRIO,0 - db 26,SPEAROW,SPEAROW,FEAROW,SPEAROW,0 - db 30,FEAROW,FEAROW,PIDGEOTTO,0 - db 39,PIDGEOTTO,PIDGEOTTO,PIDGEY,PIDGEOTTO,0 - db 42,FARFETCH_D,FEAROW,0 - db 28,PIDGEY,DODUO,PIDGEOTTO,0 - db 26,PIDGEY,SPEAROW,PIDGEY,FEAROW,0 - db 29,PIDGEOTTO,FEAROW,0 - db 28,SPEAROW,DODUO,FEAROW,0 -BlackbeltData: ; 3a1be (e:61be) - db 37,HITMONLEE,HITMONCHAN,0 - db 31,MANKEY,MANKEY,PRIMEAPE,0 - db 32,MACHOP,MACHOKE,0 - db 36,PRIMEAPE,0 - db 31,MACHOP,MANKEY,PRIMEAPE,0 - db 40,MACHOP,MACHOKE,0 - db 43,MACHOKE,0 - db 38,MACHOKE,MACHOP,MACHOKE,0 - db 43,MACHOKE,MACHOP,MACHOKE,0 -Green1Data: ; 3a1e4 (e:61e4) -if _YELLOW - db 5,EEVEE,0 - db $FF,9,SPEAROW,8,EEVEE,0 - db $FF,18,SPEAROW,15,SANDSHREW,15,RATTATA,17,EEVEE,0 -else - db 5,SQUIRTLE,0 - db 5,BULBASAUR,0 - db 5,CHARMANDER,0 - db $FF,9,PIDGEY,8,SQUIRTLE,0 - db $FF,9,PIDGEY,8,BULBASAUR,0 - db $FF,9,PIDGEY,8,CHARMANDER,0 - db $FF,18,PIDGEOTTO,15,ABRA,15,RATTATA,17,SQUIRTLE,0 - db $FF,18,PIDGEOTTO,15,ABRA,15,RATTATA,17,BULBASAUR,0 - db $FF,18,PIDGEOTTO,15,ABRA,15,RATTATA,17,CHARMANDER,0 -endc -ProfOakData: ; 3a21d (e:621d) - db $FF,66,TAUROS,67,EXEGGUTOR,68,ARCANINE,69,BLASTOISE,70,GYARADOS,0 - db $FF,66,TAUROS,67,EXEGGUTOR,68,ARCANINE,69,VENUSAUR,70,GYARADOS,0 - db $FF,66,TAUROS,67,EXEGGUTOR,68,ARCANINE,69,CHARIZARD,70,GYARADOS,0 -ChiefData: ; 3a241 (e:6241) -; none -ScientistData: ; 3a241 (e:6241) - db 34,KOFFING,VOLTORB,0 - db 26,GRIMER,WEEZING,KOFFING,WEEZING,0 - db 28,MAGNEMITE,VOLTORB,MAGNETON,0 - db 29,ELECTRODE,WEEZING,0 - db 33,ELECTRODE,0 - db 26,MAGNETON,KOFFING,WEEZING,MAGNEMITE,0 - db 25,VOLTORB,KOFFING,MAGNETON,MAGNEMITE,KOFFING,0 - db 29,ELECTRODE,MUK,0 - db 29,GRIMER,ELECTRODE,0 - db 28,VOLTORB,KOFFING,MAGNETON,0 - db 29,MAGNEMITE,KOFFING,0 - db 33,MAGNEMITE,MAGNETON,VOLTORB,0 - db 34,MAGNEMITE,ELECTRODE,0 -GiovanniData: ; 3a27e (e:627e) -if _YELLOW - db $FF,25,ONIX,24,RHYHORN,29,PERSIAN,0 - db $FF,37,NIDORINO,35,PERSIAN,37,RHYHORN,41,NIDOQUEEN,0 - db $FF,50,DUGTRIO,53,PERSIAN,53,NIDOQUEEN,55,NIDOKING,55,RHYDON,0 -else - db $FF,25,ONIX,24,RHYHORN,29,KANGASKHAN,0 - db $FF,37,NIDORINO,35,KANGASKHAN,37,RHYHORN,41,NIDOQUEEN,0 - db $FF,45,RHYHORN,42,DUGTRIO,44,NIDOQUEEN,45,NIDOKING,50,RHYDON,0 -endc -RocketData: ; 3a29c (e:629c) - db 13,RATTATA,ZUBAT,0 - db 11,SANDSHREW,RATTATA,ZUBAT,0 - db 12,ZUBAT,EKANS,0 - db 16,RATICATE,0 - db 17,MACHOP,DROWZEE,0 - db 15,EKANS,ZUBAT,0 - db 20,RATICATE,ZUBAT,0 - db 21,DROWZEE,MACHOP,0 - db 21,RATICATE,RATICATE,0 - db 20,GRIMER,KOFFING,KOFFING,0 - db 19,RATTATA,RATICATE,RATICATE,RATTATA,0 - db 22,GRIMER,KOFFING,0 - db 17,ZUBAT,KOFFING,GRIMER,ZUBAT,RATICATE,0 - db 20,RATTATA,RATICATE,DROWZEE,0 - db 21,MACHOP,MACHOP,0 - db 23,SANDSHREW,EKANS,SANDSLASH,0 - db 23,EKANS,SANDSHREW,ARBOK,0 - db 21,KOFFING,ZUBAT,0 - db 25,ZUBAT,ZUBAT,GOLBAT,0 - db 26,KOFFING,DROWZEE,0 - db 23,ZUBAT,RATTATA,RATICATE,ZUBAT,0 - db 26,DROWZEE,KOFFING,0 - db 29,CUBONE,ZUBAT,0 - db 25,GOLBAT,ZUBAT,ZUBAT,RATICATE,ZUBAT,0 - db 28,RATICATE,HYPNO,RATICATE,0 - db 29,MACHOP,DROWZEE,0 - db 28,EKANS,ZUBAT,CUBONE,0 - db 33,ARBOK,0 - db 33,HYPNO,0 - db 29,MACHOP,MACHOKE,0 - db 28,ZUBAT,ZUBAT,GOLBAT,0 - db 26,RATICATE,ARBOK,KOFFING,GOLBAT,0 - db 29,CUBONE,CUBONE,0 - db 29,SANDSHREW,SANDSLASH,0 - db 26,RATICATE,ZUBAT,GOLBAT,RATTATA,0 - db 28,WEEZING,GOLBAT,KOFFING,0 - db 28,DROWZEE,GRIMER,MACHOP,0 - db 28,GOLBAT,DROWZEE,HYPNO,0 - db 33,MACHOKE,0 - db 25,RATTATA,RATTATA,ZUBAT,RATTATA,EKANS,0 - db 32,CUBONE,DROWZEE,MAROWAK,0 -if _YELLOW -JessieJamesData: - db 14,EKANS,MEOWTH,KOFFING,0 - db 25,KOFFING,MEOWTH,EKANS,0 - db 27,MEOWTH,ARBOK,WEEZING,0 - db 31,WEEZING,ARBOK,MEOWTH,0 - db 16,KOFFING,0 - db 27,KOFFING,0 - db 29,WEEZING,0 - db 33,WEEZING,0 -endc -CooltrainerMData: ; 3a35a (e:635a) - db 39,NIDORINO,NIDOKING,0 - db 43,EXEGGUTOR,CLOYSTER,ARCANINE,0 - db 43,KINGLER,TENTACRUEL,BLASTOISE,0 - db 45,KINGLER,STARMIE,0 - db 42,IVYSAUR,WARTORTLE,CHARMELEON,CHARIZARD,0 - db 44,IVYSAUR,WARTORTLE,CHARMELEON,0 - db 49,NIDOKING,0 - db 44,KINGLER,CLOYSTER,0 - db 39,SANDSLASH,DUGTRIO,0 - db 43,RHYHORN,0 -CooltrainerFData: ; 3a385 (e:6385) - db 24,WEEPINBELL,GLOOM,IVYSAUR,0 - db 43,BELLSPROUT,WEEPINBELL,VICTREEBEL,0 - db 43,PARASECT,DEWGONG,CHANSEY,0 - db 46,VILEPLUME,BUTTERFREE,0 - db 44,PERSIAN,NINETALES,0 - db 45,IVYSAUR,VENUSAUR,0 - db 45,NIDORINA,NIDOQUEEN,0 - db 43,PERSIAN,NINETALES,RAICHU,0 -BrunoData: ; 3a3a9 (e:63a9) - db $FF,53,ONIX,55,HITMONCHAN,55,HITMONLEE,56,ONIX,58,MACHAMP,0 -BrockData: ; 3a3b5 (e:63b5) -if _YELLOW - db $FF,10,GEODUDE,12,ONIX,0 -else - db $FF,12,GEODUDE,14,ONIX,0 -endc -MistyData: ; 3a3bb (e:63bb) - db $FF,18,STARYU,21,STARMIE,0 -LtSurgeData: ; 3a3c1 (e:63c1) -if _YELLOW - db $FF,28,RAICHU,0 -else - db $FF,21,VOLTORB,18,PIKACHU,24,RAICHU,0 -endc -ErikaData: ; 3a3c9 (e:63c9) -if _YELLOW - db $FF,30,TANGELA,32,WEEPINBELL,32,GLOOM,0 -else - db $FF,29,VICTREEBEL,24,TANGELA,29,VILEPLUME,0 -endc -KogaData: ; 3a3d1 (e:63d1) -if _YELLOW - db $FF,44,VENONAT,46,VENONAT,48,VENONAT,50,VENOMOTH,0 -else - db $FF,37,KOFFING,39,MUK,37,KOFFING,43,WEEZING,0 -endc -BlaineData: ; 3a3db (e:63db) -if _YELLOW - db $FF,48,NINETALES,50,RAPIDASH,54,ARCANINE,0 -else - db $FF,42,GROWLITHE,40,PONYTA,42,RAPIDASH,47,ARCANINE,0 -endc -SabrinaData: ; 3a3e5 (e:63e5) -if _YELLOW - db $FF,50,ABRA,50,KADABRA,50,ALAKAZAM,0 -else - db $FF,38,KADABRA,37,MR_MIME,38,VENOMOTH,43,ALAKAZAM,0 -endc -GentlemanData: ; 3a3ef (e:63ef) - db 18,GROWLITHE,GROWLITHE,0 - db 19,NIDORAN_M,NIDORAN_F,0 -if _YELLOW - db 22,VOLTORB,MAGNEMITE,0 -else - db 23,PIKACHU,0 -endc - db 48,PRIMEAPE,0 - db 17,GROWLITHE,PONYTA,0 -Green2Data: ; 3a401 (e:6401) -if _YELLOW - db $FF,19,SPEAROW,16,RATTATA,18,SANDSHREW,20,EEVEE,0 - db $FF,25,FEAROW,23,SHELLDER,22,VULPIX,20,SANDSHREW,25,EEVEE,0 - db $FF,25,FEAROW,23,MAGNEMITE,22,SHELLDER,20,SANDSHREW,25,EEVEE,0 - db $FF,25,FEAROW,23,VULPIX,22,MAGNEMITE,20,SANDSHREW,25,EEVEE,0 - db $FF,38,SANDSLASH,35,NINETALES,37,CLOYSTER,35,KADABRA,40,JOLTEON,0 - db $FF,38,SANDSLASH,35,CLOYSTER,37,MAGNETON,35,KADABRA,40,FLAREON,0 - db $FF,38,SANDSLASH,35,MAGNETON,37,NINETALES,35,KADABRA,40,VAPOREON,0 - db $FF,47,SANDSLASH,45,EXEGGCUTE,45,NINETALES,47,CLOYSTER,50,KADABRA,53,JOLTEON,0 - db $FF,47,SANDSLASH,45,EXEGGCUTE,45,CLOYSTER,47,MAGNETON,50,KADABRA,53,FLAREON,0 - db $FF,47,SANDSLASH,45,EXEGGCUTE,45,MAGNETON,47,NINETALES,50,KADABRA,53,VAPOREON,0 -else - db $FF,19,PIDGEOTTO,16,RATICATE,18,KADABRA,20,WARTORTLE,0 - db $FF,19,PIDGEOTTO,16,RATICATE,18,KADABRA,20,IVYSAUR,0 - db $FF,19,PIDGEOTTO,16,RATICATE,18,KADABRA,20,CHARMELEON,0 - db $FF,25,PIDGEOTTO,23,GROWLITHE,22,EXEGGCUTE,20,KADABRA,25,WARTORTLE,0 - db $FF,25,PIDGEOTTO,23,GYARADOS,22,GROWLITHE,20,KADABRA,25,IVYSAUR,0 - db $FF,25,PIDGEOTTO,23,EXEGGCUTE,22,GYARADOS,20,KADABRA,25,CHARMELEON,0 - db $FF,37,PIDGEOT,38,GROWLITHE,35,EXEGGCUTE,35,ALAKAZAM,40,BLASTOISE,0 - db $FF,37,PIDGEOT,38,GYARADOS,35,GROWLITHE,35,ALAKAZAM,40,VENUSAUR,0 - db $FF,37,PIDGEOT,38,EXEGGCUTE,35,GYARADOS,35,ALAKAZAM,40,CHARIZARD,0 - db $FF,47,PIDGEOT,45,RHYHORN,45,GROWLITHE,47,EXEGGCUTE,50,ALAKAZAM,53,BLASTOISE,0 - db $FF,47,PIDGEOT,45,RHYHORN,45,GYARADOS,47,GROWLITHE,50,ALAKAZAM,53,VENUSAUR,0 - db $FF,47,PIDGEOT,45,RHYHORN,45,EXEGGCUTE,47,GYARADOS,50,ALAKAZAM,53,CHARIZARD,0 -endc -Green3Data: ; 3a491 (e:6491) -if _YELLOW - db $FF,61,SANDSLASH,59,ALAKAZAM,61,EXEGGUTOR,61,CLOYSTER,63,NINETALES,65,JOLTEON,0 - db $FF,61,SANDSLASH,59,ALAKAZAM,61,EXEGGUTOR,61,MAGNETON,63,CLOYSTER,65,FLAREON,0 - db $FF,61,SANDSLASH,59,ALAKAZAM,61,EXEGGUTOR,61,NINETALES,63,MAGNETON,65,VAPOREON,0 -else - db $FF,61,PIDGEOT,59,ALAKAZAM,61,RHYDON,61,ARCANINE,63,EXEGGUTOR,65,BLASTOISE,0 - db $FF,61,PIDGEOT,59,ALAKAZAM,61,RHYDON,61,GYARADOS,63,ARCANINE,65,VENUSAUR,0 - db $FF,61,PIDGEOT,59,ALAKAZAM,61,RHYDON,61,EXEGGUTOR,63,GYARADOS,65,CHARIZARD,0 -endc -LoreleiData: ; 3a4bb (e:64bb) - db $FF,54,DEWGONG,53,CLOYSTER,54,SLOWBRO,56,JYNX,56,LAPRAS,0 -ChannelerData: ; 3a4c7 (e:64c7) - db 22,GASTLY,0 - db 24,GASTLY,0 - db 23,GASTLY,GASTLY,0 - db 24,GASTLY,0 - db 23,GASTLY,0 - db 24,GASTLY,0 - db 24,HAUNTER,0 - db 22,GASTLY,0 - db 24,GASTLY,0 - db 23,GASTLY,GASTLY,0 - db 24,GASTLY,0 - db 22,GASTLY,0 - db 24,GASTLY,0 - db 23,HAUNTER,0 - db 24,GASTLY,0 - db 22,GASTLY,0 - db 24,GASTLY,0 - db 22,HAUNTER,0 - db 22,GASTLY,GASTLY,GASTLY,0 - db 24,GASTLY,0 - db 24,GASTLY,0 - db 34,GASTLY,HAUNTER,0 - db 38,HAUNTER,0 - db 33,GASTLY,GASTLY,HAUNTER,0 -AgathaData: ; 3a516 (e:6516) - db $FF,56,GENGAR,56,GOLBAT,55,HAUNTER,58,ARBOK,60,GENGAR,0 -LanceData: ; 3a522 (e:6522) - db $FF,58,GYARADOS,56,DRAGONAIR,56,DRAGONAIR,60,AERODACTYL,62,DRAGONITE,0 +INCLUDE "data/trainer_parties.asm" TrainerAI: ; 3a52e (e:652e) ;XXX called at 34964, 3c342, 3c398 @@ -52837,8 +32694,7 @@ AIBattleUseItemText: ; 3a844 (e:6844) TX_FAR _AIBattleUseItemText db "@" -Func_3a849: ; 3a849 (e:6849) -DrawAllPokeballs: ; 0x3a849 +DrawAllPokeballs: ; 3a849 (e:6849) call LoadPartyPokeballGfx call SetupOwnPartyPokeballs ld a, [W_ISINBATTLE] ; $d057 @@ -53153,7 +33009,7 @@ Func_3ad71: ; 3ad71 (e:6d71) ld hl, W_PARTYMON1NAME ; $d2b5 call GetPartyMonName call CopyStringToCF4B - ld hl, UnnamedText_3af4d ; $6f4d + ld hl, IsEvolvingText call PrintText ld c, $32 call DelayFrames @@ -53169,7 +33025,7 @@ Func_3ad71: ; 3ad71 (e:6d71) call CleanLCD_OAM callab Func_7bde9 jp c, Func_3af2e - ld hl, UnnamedText_3af3e ; $6f3e + ld hl, EvolvedText call PrintText pop hl ld a, [hl] @@ -53182,7 +33038,7 @@ Func_3ad71: ; 3ad71 (e:6d71) ld [$d0b7], a call GetName push hl - ld hl, UnnamedText_3af43 ; $6f43 + ld hl, IntoText call Func_3c59 ld a, (SFX_02_3b - SFX_Headers_02) / 3 call PlaySoundWaitForCurrent @@ -53327,27 +33183,27 @@ Func_3aef7: ; 3aef7 (e:6ef7) jp CopyData Func_3af2e: ; 3af2e (e:6f2e) - ld hl, UnnamedText_3af48 ; $6f48 + ld hl, StoppedEvolvingText call PrintText call ClearScreen pop hl call Func_3af52 jp asm_3ad2e -UnnamedText_3af3e: ; 3af3e (e:6f3e) - TX_FAR _UnnamedText_3af3e +EvolvedText: ; 3af3e (e:6f3e) + TX_FAR _EvolvedText db "@" -UnnamedText_3af43: ; 3af43 (e:6f43) - TX_FAR _UnnamedText_3af43 +IntoText: ; 3af43 (e:6f43) + TX_FAR _IntoText db "@" -UnnamedText_3af48: ; 3af48 (e:6f48) - TX_FAR _UnnamedText_3af48 +StoppedEvolvingText: ; 3af48 (e:6f48) + TX_FAR _StoppedEvolvingText db "@" -UnnamedText_3af4d: ; 3af4d (e:6f4d) - TX_FAR _UnnamedText_3af4d +IsEvolvingText: ; 3af4d (e:6f4d) + TX_FAR _IsEvolvingText db "@" Func_3af52: ; 3af52 (e:6f52) @@ -53535,2177 +33391,7 @@ Func_3b057: ; 3b057 (e:7057) ld a, $10 jp Predef ; indirect jump to HandleBitArray (f666 (3:7666)) -EvosMovesPointerTable: ; 3b05c (e:705c) - dw Mon112_EvosMoves - dw Mon115_EvosMoves - dw Mon032_EvosMoves - dw Mon035_EvosMoves - dw Mon021_EvosMoves - dw Mon100_EvosMoves - dw Mon034_EvosMoves - dw Mon080_EvosMoves - dw Mon002_EvosMoves - dw Mon103_EvosMoves - dw Mon108_EvosMoves - dw Mon102_EvosMoves - dw Mon088_EvosMoves - dw Mon094_EvosMoves - dw Mon029_EvosMoves - dw Mon031_EvosMoves - dw Mon104_EvosMoves - dw Mon111_EvosMoves - dw Mon131_EvosMoves - dw Mon059_EvosMoves - dw Mon151_EvosMoves - dw Mon130_EvosMoves - dw Mon090_EvosMoves - dw Mon072_EvosMoves - dw Mon092_EvosMoves - dw Mon123_EvosMoves - dw Mon120_EvosMoves - dw Mon009_EvosMoves - dw Mon127_EvosMoves - dw Mon114_EvosMoves - dw Mon152_EvosMoves ;MissingNo - dw Mon153_EvosMoves ;MissingNo - dw Mon058_EvosMoves - dw Mon095_EvosMoves - dw Mon022_EvosMoves - dw Mon016_EvosMoves - dw Mon079_EvosMoves - dw Mon064_EvosMoves - dw Mon075_EvosMoves - dw Mon113_EvosMoves - dw Mon067_EvosMoves - dw Mon122_EvosMoves - dw Mon106_EvosMoves - dw Mon107_EvosMoves - dw Mon024_EvosMoves - dw Mon047_EvosMoves - dw Mon054_EvosMoves - dw Mon096_EvosMoves - dw Mon076_EvosMoves - dw Mon154_EvosMoves ;MissingNo - dw Mon126_EvosMoves - dw Mon155_EvosMoves ;MissingNo - dw Mon125_EvosMoves - dw Mon082_EvosMoves - dw Mon109_EvosMoves - dw Mon156_EvosMoves ;MissingNo - dw Mon056_EvosMoves - dw Mon086_EvosMoves - dw Mon050_EvosMoves - dw Mon128_EvosMoves - dw Mon157_EvosMoves ;MissingNo - dw Mon158_EvosMoves ;MissingNo - dw Mon159_EvosMoves ;MissingNo - dw Mon083_EvosMoves - dw Mon048_EvosMoves - dw Mon149_EvosMoves - dw Mon160_EvosMoves ;MissingNo - dw Mon161_EvosMoves ;MissingNo - dw Mon162_EvosMoves ;MissingNo - dw Mon084_EvosMoves - dw Mon060_EvosMoves - dw Mon124_EvosMoves - dw Mon146_EvosMoves - dw Mon144_EvosMoves - dw Mon145_EvosMoves - dw Mon132_EvosMoves - dw Mon052_EvosMoves - dw Mon098_EvosMoves - dw Mon163_EvosMoves ;MissingNo - dw Mon164_EvosMoves ;MissingNo - dw Mon165_EvosMoves ;MissingNo - dw Mon037_EvosMoves - dw Mon038_EvosMoves - dw Mon025_EvosMoves - dw Mon026_EvosMoves - dw Mon166_EvosMoves ;MissingNo - dw Mon167_EvosMoves ;MissingNo - dw Mon147_EvosMoves - dw Mon148_EvosMoves - dw Mon140_EvosMoves - dw Mon141_EvosMoves - dw Mon116_EvosMoves - dw Mon117_EvosMoves - dw Mon168_EvosMoves ;MissingNo - dw Mon169_EvosMoves ;MissingNo - dw Mon027_EvosMoves - dw Mon028_EvosMoves - dw Mon138_EvosMoves - dw Mon139_EvosMoves - dw Mon039_EvosMoves - dw Mon040_EvosMoves - dw Mon133_EvosMoves - dw Mon136_EvosMoves - dw Mon135_EvosMoves - dw Mon134_EvosMoves - dw Mon066_EvosMoves - dw Mon041_EvosMoves - dw Mon023_EvosMoves - dw Mon046_EvosMoves - dw Mon061_EvosMoves - dw Mon062_EvosMoves - dw Mon013_EvosMoves - dw Mon014_EvosMoves - dw Mon015_EvosMoves - dw Mon170_EvosMoves ;MissingNo - dw Mon085_EvosMoves - dw Mon057_EvosMoves - dw Mon051_EvosMoves - dw Mon049_EvosMoves - dw Mon087_EvosMoves - dw Mon171_EvosMoves ;MissingNo - dw Mon172_EvosMoves ;MissingNo - dw Mon010_EvosMoves - dw Mon011_EvosMoves - dw Mon012_EvosMoves - dw Mon068_EvosMoves - dw Mon173_EvosMoves ;MissingNo - dw Mon055_EvosMoves - dw Mon097_EvosMoves - dw Mon042_EvosMoves - dw Mon150_EvosMoves - dw Mon143_EvosMoves - dw Mon129_EvosMoves - dw Mon174_EvosMoves ;MissingNo - dw Mon175_EvosMoves ;MissingNo - dw Mon089_EvosMoves - dw Mon176_EvosMoves ;MissingNo - dw Mon099_EvosMoves - dw Mon091_EvosMoves - dw Mon177_EvosMoves ;MissingNo - dw Mon101_EvosMoves - dw Mon036_EvosMoves - dw Mon110_EvosMoves - dw Mon053_EvosMoves - dw Mon105_EvosMoves - dw Mon178_EvosMoves ;MissingNo - dw Mon093_EvosMoves - dw Mon063_EvosMoves - dw Mon065_EvosMoves - dw Mon017_EvosMoves - dw Mon018_EvosMoves - dw Mon121_EvosMoves - dw Mon001_EvosMoves - dw Mon003_EvosMoves - dw Mon073_EvosMoves - dw Mon179_EvosMoves ;MissingNo - dw Mon118_EvosMoves - dw Mon119_EvosMoves - dw Mon180_EvosMoves ;MissingNo - dw Mon181_EvosMoves ;MissingNo - dw Mon182_EvosMoves ;MissingNo - dw Mon183_EvosMoves ;MissingNo - dw Mon077_EvosMoves - dw Mon078_EvosMoves - dw Mon019_EvosMoves - dw Mon020_EvosMoves - dw Mon033_EvosMoves - dw Mon030_EvosMoves - dw Mon074_EvosMoves - dw Mon137_EvosMoves - dw Mon142_EvosMoves - dw Mon184_EvosMoves ;MissingNo - dw Mon081_EvosMoves - dw Mon185_EvosMoves ;MissingNo - dw Mon186_EvosMoves ;MissingNo - dw Mon004_EvosMoves - dw Mon007_EvosMoves - dw Mon005_EvosMoves - dw Mon008_EvosMoves - dw Mon006_EvosMoves - dw Mon187_EvosMoves ;MissingNo - dw Mon188_EvosMoves ;MissingNo - dw Mon189_EvosMoves ;MissingNo - dw Mon190_EvosMoves ;MissingNo - dw Mon043_EvosMoves - dw Mon044_EvosMoves - dw Mon045_EvosMoves - dw Mon069_EvosMoves - dw Mon070_EvosMoves - dw Mon071_EvosMoves - -Mon112_EvosMoves: ; 3b1d8 (e:71d8) -;RHYDON -;Evolutions - db 0 -;Learnset - db 30,STOMP - db 35,TAIL_WHIP - db 40,FURY_ATTACK - db 48,HORN_DRILL - db 55,LEER - db 64,TAKE_DOWN - db 0 -Mon115_EvosMoves: ; 3b1e6 (e:71e6) -;KANGASKHAN -;Evolutions - db 0 -;Learnset - db 26,BITE - db 31,TAIL_WHIP - db 36,MEGA_PUNCH - db 41,LEER - db 46,DIZZY_PUNCH - db 0 -Mon032_EvosMoves: ; 3b1f2 (e:71f2) -;NIDORAN_M -;Evolutions - db EV_LEVEL,16,NIDORINO - db 0 -;Learnset - db 8,HORN_ATTACK - db 14,POISON_STING - db 21,FOCUS_ENERGY - db 29,FURY_ATTACK - db 36,HORN_DRILL - db 43,DOUBLE_KICK - db 0 -Mon035_EvosMoves: ; 3b203 (e:7203) -;CLEFAIRY -;Evolutions - db EV_ITEM,MOON_STONE,1,CLEFABLE - db 0 -;Learnset - db 13,SING - db 18,DOUBLESLAP - db 24,MINIMIZE - db 31,METRONOME - db 39,DEFENSE_CURL - db 48,LIGHT_SCREEN - db 0 -Mon021_EvosMoves: ; 3b215 (e:7215) -;SPEAROW -;Evolutions - db EV_LEVEL,20,FEAROW - db 0 -;Learnset - db 9,LEER - db 15,FURY_ATTACK - db 22,MIRROR_MOVE - db 29,DRILL_PECK - db 36,AGILITY - db 0 -Mon100_EvosMoves: ; 3b224 (e:7224) -;VOLTORB -;Evolutions - db EV_LEVEL,30,ELECTRODE - db 0 -;Learnset - db 17,SONICBOOM - db 22,SELFDESTRUCT - db 29,LIGHT_SCREEN - db 36,SWIFT - db 43,EXPLOSION - db 0 -Mon034_EvosMoves: ; 3b233 (e:7233) -;NIDOKING -;Evolutions - db 0 -;Learnset - db 8,HORN_ATTACK - db 14,POISON_STING - db 23,THRASH - db 0 -Mon080_EvosMoves: ; 3b23b (e:723b) -;SLOWBRO -;Evolutions - db 0 -;Learnset - db 18,DISABLE - db 22,HEADBUTT - db 27,GROWL - db 33,WATER_GUN - db 37,WITHDRAW - db 44,AMNESIA - db 55,PSYCHIC_M - db 0 -Mon002_EvosMoves: ; 3b24b (e:724b) -;IVYSAUR -;Evolutions - db EV_LEVEL,32,VENUSAUR - db 0 -;Learnset - db 7,LEECH_SEED - db 13,VINE_WHIP - db 22,POISONPOWDER - db 30,RAZOR_LEAF - db 38,GROWTH - db 46,SLEEP_POWDER - db 54,SOLARBEAM - db 0 -Mon103_EvosMoves: ; 3b25e (e:725e) -;EXEGGUTOR -;Evolutions - db 0 -;Learnset - db 28,STOMP - db 0 -Mon108_EvosMoves: ; 3b262 (e:7262) -;LICKITUNG -;Evolutions - db 0 -;Learnset - db 7,STOMP - db 15,DISABLE - db 23,DEFENSE_CURL - db 31,SLAM - db 39,SCREECH - db 0 -Mon102_EvosMoves: ; 3b26e (e:726e) -;EXEGGCUTE -;Evolutions - db EV_ITEM,LEAF_STONE ,1,EXEGGUTOR - db 0 -;Learnset - db 25,REFLECT - db 28,LEECH_SEED - db 32,STUN_SPORE - db 37,POISONPOWDER - db 42,SOLARBEAM - db 48,SLEEP_POWDER - db 0 -Mon088_EvosMoves: ; 3b280 (e:7280) -;GRIMER -;Evolutions - db EV_LEVEL,38,MUK - db 0 -;Learnset - db 30,POISON_GAS - db 33,MINIMIZE - db 37,SLUDGE - db 42,HARDEN - db 48,SCREECH - db 55,ACID_ARMOR - db 0 -Mon094_EvosMoves: ; 3b291 (e:7291) -;GENGAR -;Evolutions - db 0 -;Learnset - db 29,HYPNOSIS - db 38,DREAM_EATER - db 0 -Mon029_EvosMoves: ; 3b297 (e:7297) -;NIDORAN_F -;Evolutions - db EV_LEVEL,16,NIDORINA - db 0 -;Learnset - db 8,SCRATCH - db 14,POISON_STING - db 21,TAIL_WHIP - db 29,BITE - db 36,FURY_SWIPES - db 43,DOUBLE_KICK - db 0 -Mon031_EvosMoves: ; 3b2a8 (e:72a8) -;NIDOQUEEN -;Evolutions - db 0 -;Learnset - db 8,SCRATCH - db 14,POISON_STING - db 23,BODY_SLAM - db 0 -Mon104_EvosMoves: ; 3b2b0 (e:72b0) -;CUBONE -;Evolutions - db EV_LEVEL,28,MAROWAK - db 0 -;Learnset - db 25,LEER - db 31,FOCUS_ENERGY - db 38,THRASH - db 43,BONEMERANG - db 46,RAGE - db 0 -Mon111_EvosMoves: ; 3b2bf (e:72bf) -;RHYHORN -;Evolutions - db EV_LEVEL,42,RHYDON - db 0 -;Learnset - db 30,STOMP - db 35,TAIL_WHIP - db 40,FURY_ATTACK - db 45,HORN_DRILL - db 50,LEER - db 55,TAKE_DOWN - db 0 -Mon131_EvosMoves: ; 3b2d0 (e:72d0) -;LAPRAS -;Evolutions - db 0 -;Learnset - db 16,SING - db 20,MIST - db 25,BODY_SLAM - db 31,CONFUSE_RAY - db 38,ICE_BEAM - db 46,HYDRO_PUMP - db 0 -Mon059_EvosMoves: ; 3b2de (e:72de) -;ARCANINE -;Evolutions - db 0 -;Learnset - db 0 -Mon151_EvosMoves: ; 3b2e0 (e:72e0) -;MEW -;Evolutions - db 0 -;Learnset - db 10,TRANSFORM - db 20,MEGA_PUNCH - db 30,METRONOME - db 40,PSYCHIC_M - db 0 -Mon130_EvosMoves: ; 3b2ea (e:72ea) -;GYARADOS -;Evolutions - db 0 -;Learnset - db 20,BITE - db 25,DRAGON_RAGE - db 32,LEER - db 41,HYDRO_PUMP - db 52,HYPER_BEAM - db 0 -Mon090_EvosMoves: ; 3b2f6 (e:72f6) -;SHELLDER -;Evolutions - db EV_ITEM,WATER_STONE ,1,CLOYSTER - db 0 -;Learnset - db 18,SUPERSONIC - db 23,CLAMP - db 30,AURORA_BEAM - db 39,LEER - db 50,ICE_BEAM - db 0 -Mon072_EvosMoves: ; 3b306 (e:7306) -;TENTACOOL -;Evolutions - db EV_LEVEL,30,TENTACRUEL - db 0 -;Learnset - db 7,SUPERSONIC - db 13,WRAP - db 18,POISON_STING - db 22,WATER_GUN - db 27,CONSTRICT - db 33,BARRIER - db 40,SCREECH - db 48,HYDRO_PUMP - db 0 -Mon092_EvosMoves: ; 3b31b (e:731b) -;GASTLY -;Evolutions - db EV_LEVEL,25,HAUNTER - db 0 -;Learnset - db 27,HYPNOSIS - db 35,DREAM_EATER - db 0 -Mon123_EvosMoves: ; 3b324 (e:7324) -;SCYTHER -;Evolutions - db 0 -;Learnset - db 17,LEER - db 20,FOCUS_ENERGY - db 24,DOUBLE_TEAM - db 29,SLASH - db 35,SWORDS_DANCE - db 42,AGILITY - db 0 -Mon120_EvosMoves: ; 3b332 (e:7332) -;STARYU -;Evolutions - db EV_ITEM,WATER_STONE ,1,STARMIE - db 0 -;Learnset - db 17,WATER_GUN - db 22,HARDEN - db 27,RECOVER - db 32,SWIFT - db 37,MINIMIZE - db 42,LIGHT_SCREEN - db 47,HYDRO_PUMP - db 0 -Mon009_EvosMoves: ; 3b346 (e:7346) -;BLASTOISE -;Evolutions - db 0 -;Learnset - db 8,BUBBLE - db 15,WATER_GUN - db 24,BITE - db 31,WITHDRAW - db 42,SKULL_BASH - db 52,HYDRO_PUMP - db 0 -Mon127_EvosMoves: ; 3b354 (e:7354) -;PINSIR -;Evolutions - db 0 -;Learnset - db 25,SEISMIC_TOSS - db 30,GUILLOTINE - db 36,FOCUS_ENERGY - db 43,HARDEN - db 49,SLASH - db 54,SWORDS_DANCE - db 0 -Mon114_EvosMoves: ; 3b362 (e:7362) -;TANGELA -;Evolutions - db 0 -;Learnset - db 29,ABSORB - db 32,POISONPOWDER - db 36,STUN_SPORE - db 39,SLEEP_POWDER - db 45,SLAM - db 49,GROWTH - db 0 - -Mon152_EvosMoves: ; 3b370 (e:7370) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon153_EvosMoves: ; 3b372 (e:7372) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon058_EvosMoves: ; 3b374 (e:7374) -;GROWLITHE -;Evolutions - db EV_ITEM,FIRE_STONE,1,ARCANINE - db 0 -;Learnset - db 18,EMBER - db 23,LEER - db 30,TAKE_DOWN - db 39,AGILITY - db 50,FLAMETHROWER - db 0 -Mon095_EvosMoves: ; 3b384 (e:7384) -;ONIX -;Evolutions - db 0 -;Learnset - db 15,BIND - db 19,ROCK_THROW - db 25,RAGE - db 33,SLAM - db 43,HARDEN - db 0 -Mon022_EvosMoves: ; 3b390 (e:7390) -;FEAROW -;Evolutions - db 0 -;Learnset - db 9,LEER - db 15,FURY_ATTACK - db 25,MIRROR_MOVE - db 34,DRILL_PECK - db 43,AGILITY - db 0 -Mon016_EvosMoves: ; 3b39c (e:739c) -;PIDGEY -;Evolutions - db EV_LEVEL,18,PIDGEOTTO - db 0 -;Learnset - db 5,SAND_ATTACK - db 12,QUICK_ATTACK - db 19,WHIRLWIND - db 28,WING_ATTACK - db 36,AGILITY - db 44,MIRROR_MOVE - db 0 -Mon079_EvosMoves: ; 3b3ad (e:73ad) -;SLOWPOKE -;Evolutions - db EV_LEVEL,37,SLOWBRO - db 0 -;Learnset - db 18,DISABLE - db 22,HEADBUTT - db 27,GROWL - db 33,WATER_GUN - db 40,AMNESIA - db 48,PSYCHIC_M - db 0 -Mon064_EvosMoves: ; 3b3be (e:73be) -;KADABRA -;Evolutions - db EV_TRADE,1,ALAKAZAM - db 0 -;Learnset - db 16,CONFUSION - db 20,DISABLE - db 27,PSYBEAM - db 31,RECOVER - db 38,PSYCHIC_M - db 42,REFLECT - db 0 -Mon075_EvosMoves: ; 3b3cf (e:73cf) -;GRAVELER -;Evolutions - db EV_TRADE,1,GOLEM - db 0 -;Learnset - db 11,DEFENSE_CURL - db 16,ROCK_THROW - db 21,SELFDESTRUCT - db 29,HARDEN - db 36,EARTHQUAKE - db 43,EXPLOSION - db 0 -Mon113_EvosMoves: ; 3b3e0 (e:73e0) -;CHANSEY -;Evolutions - db 0 -;Learnset - db 24,SING - db 30,GROWL - db 38,MINIMIZE - db 44,DEFENSE_CURL - db 48,LIGHT_SCREEN - db 54,DOUBLE_EDGE - db 0 -Mon067_EvosMoves: ; 3b3ee (e:73ee) -;MACHOKE -;Evolutions - db EV_TRADE,1,MACHAMP - db 0 -;Learnset - db 20,LOW_KICK - db 25,LEER - db 36,FOCUS_ENERGY - db 44,SEISMIC_TOSS - db 52,SUBMISSION - db 0 -Mon122_EvosMoves: ; 3b3fd (e:73fd) -;MR_MIME -;Evolutions - db 0 -;Learnset - db 15,CONFUSION - db 23,LIGHT_SCREEN - db 31,DOUBLESLAP - db 39,MEDITATE - db 47,SUBSTITUTE - db 0 -Mon106_EvosMoves: ; 3b409 (e:7409) -;HITMONLEE -;Evolutions - db 0 -;Learnset - db 33,ROLLING_KICK - db 38,JUMP_KICK - db 43,FOCUS_ENERGY - db 48,HI_JUMP_KICK - db 53,MEGA_KICK - db 0 -Mon107_EvosMoves: ; 3b415 (e:7415) -;HITMONCHAN -;Evolutions - db 0 -;Learnset - db 33,FIRE_PUNCH - db 38,ICE_PUNCH - db 43,THUNDERPUNCH - db 48,MEGA_PUNCH - db 53,COUNTER - db 0 -Mon024_EvosMoves: ; 3b421 (e:7421) -;ARBOK -;Evolutions - db 0 -;Learnset - db 10,POISON_STING - db 17,BITE - db 27,GLARE - db 36,SCREECH - db 47,ACID - db 0 -Mon047_EvosMoves: ; 3b42d (e:742d) -;PARASECT -;Evolutions - db 0 -;Learnset - db 13,STUN_SPORE - db 20,LEECH_LIFE - db 30,SPORE - db 39,SLASH - db 48,GROWTH - db 0 -Mon054_EvosMoves: ; 3b439 (e:7439) -;PSYDUCK -;Evolutions - db EV_LEVEL,33,GOLDUCK - db 0 -;Learnset - db 28,TAIL_WHIP - db 31,DISABLE - db 36,CONFUSION - db 43,FURY_SWIPES - db 52,HYDRO_PUMP - db 0 -Mon096_EvosMoves: ; 3b448 (e:7448) -;DROWZEE -;Evolutions - db EV_LEVEL,26,HYPNO - db 0 -;Learnset - db 12,DISABLE - db 17,CONFUSION - db 24,HEADBUTT - db 29,POISON_GAS - db 32,PSYCHIC_M - db 37,MEDITATE - db 0 -Mon076_EvosMoves: ; 3b459 (e:7459) -;GOLEM -;Evolutions - db 0 -;Learnset - db 11,DEFENSE_CURL - db 16,ROCK_THROW - db 21,SELFDESTRUCT - db 29,HARDEN - db 36,EARTHQUAKE - db 43,EXPLOSION - db 0 - -Mon154_EvosMoves: ; 3b467 (e:7467) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon126_EvosMoves: ; 3b469 (e:7469) -;MAGMAR -;Evolutions - db 0 -;Learnset - db 36,LEER - db 39,CONFUSE_RAY - db 43,FIRE_PUNCH - db 48,SMOKESCREEN - db 52,SMOG - db 55,FLAMETHROWER - db 0 - -Mon155_EvosMoves: ; 3b477 (e:7477) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon125_EvosMoves: ; 3b479 (e:7479) -;ELECTABUZZ -;Evolutions - db 0 -;Learnset - db 34,THUNDERSHOCK - db 37,SCREECH - db 42,THUNDERPUNCH - db 49,LIGHT_SCREEN - db 54,THUNDER - db 0 -Mon082_EvosMoves: ; 3b485 (e:7485) -;MAGNETON -;Evolutions - db 0 -;Learnset - db 21,SONICBOOM - db 25,THUNDERSHOCK - db 29,SUPERSONIC - db 38,THUNDER_WAVE - db 46,SWIFT - db 54,SCREECH - db 0 -Mon109_EvosMoves: ; 3b493 (e:7493) -;KOFFING -;Evolutions - db EV_LEVEL,35,WEEZING - db 0 -;Learnset - db 32,SLUDGE - db 37,SMOKESCREEN - db 40,SELFDESTRUCT - db 45,HAZE - db 48,EXPLOSION - db 0 - -Mon156_EvosMoves: ; 3b4a2 (e:74a2) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon056_EvosMoves: ; 3b4a4 (e:74a4) -;MANKEY -;Evolutions - db EV_LEVEL,28,PRIMEAPE - db 0 -;Learnset - db 15,KARATE_CHOP - db 21,FURY_SWIPES - db 27,FOCUS_ENERGY - db 33,SEISMIC_TOSS - db 39,THRASH - db 0 -Mon086_EvosMoves: ; 3b4b3 (e:74b3) -;SEEL -;Evolutions - db EV_LEVEL,34,DEWGONG - db 0 -;Learnset - db 30,GROWL - db 35,AURORA_BEAM - db 40,REST - db 45,TAKE_DOWN - db 50,ICE_BEAM - db 0 -Mon050_EvosMoves: ; 3b4c2 (e:74c2) -;DIGLETT -;Evolutions - db EV_LEVEL,26,DUGTRIO - db 0 -;Learnset - db 15,GROWL - db 19,DIG - db 24,SAND_ATTACK - db 31,SLASH - db 40,EARTHQUAKE - db 0 -Mon128_EvosMoves: ; 3b4d1 (e:74d1) -;TAUROS -;Evolutions - db 0 -;Learnset - db 21,STOMP - db 28,TAIL_WHIP - db 35,LEER - db 44,RAGE - db 51,TAKE_DOWN - db 0 - -Mon157_EvosMoves: ; 3b4dd (e:74dd) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon158_EvosMoves: ; 3b4df (e:74df) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon159_EvosMoves: ; 3b4e1 (e:74e1) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon083_EvosMoves: ; 3b4e3 (e:74e3) -;FARFETCH_D -;Evolutions - db 0 -;Learnset - db 7,LEER - db 15,FURY_ATTACK - db 23,SWORDS_DANCE - db 31,AGILITY - db 39,SLASH - db 0 -Mon048_EvosMoves: ; 3b4ef (e:74ef) -;VENONAT -;Evolutions - db EV_LEVEL,31,VENOMOTH - db 0 -;Learnset - db 24,POISONPOWDER - db 27,LEECH_LIFE - db 30,STUN_SPORE - db 35,PSYBEAM - db 38,SLEEP_POWDER - db 43,PSYCHIC_M - db 0 -Mon149_EvosMoves: ; 3b500 (e:7500) -;DRAGONITE -;Evolutions - db 0 -;Learnset - db 10,THUNDER_WAVE - db 20,AGILITY - db 35,SLAM - db 45,DRAGON_RAGE - db 60,HYPER_BEAM - db 0 - -Mon160_EvosMoves: ; 3b50c (e:750c) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon161_EvosMoves: ; 3b50e (e:750e) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon162_EvosMoves: ; 3b510 (e:7510) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon084_EvosMoves: ; 3b512 (e:7512) -;DODUO -;Evolutions - db EV_LEVEL,31,DODRIO - db 0 -;Learnset - db 20,GROWL - db 24,FURY_ATTACK - db 30,DRILL_PECK - db 36,RAGE - db 40,TRI_ATTACK - db 44,AGILITY - db 0 -Mon060_EvosMoves: ; 3b523 (e:7523) -;POLIWAG -;Evolutions - db EV_LEVEL,25,POLIWHIRL - db 0 -;Learnset - db 16,HYPNOSIS - db 19,WATER_GUN - db 25,DOUBLESLAP - db 31,BODY_SLAM - db 38,AMNESIA - db 45,HYDRO_PUMP - db 0 -Mon124_EvosMoves: ; 3b534 (e:7534) -;JYNX -;Evolutions - db 0 -;Learnset - db 18,LICK - db 23,DOUBLESLAP - db 31,ICE_PUNCH - db 39,BODY_SLAM - db 47,THRASH - db 58,BLIZZARD - db 0 -Mon146_EvosMoves: ; 3b542 (e:7542) -;MOLTRES -;Evolutions - db 0 -;Learnset - db 51,LEER - db 55,AGILITY - db 60,SKY_ATTACK - db 0 -Mon144_EvosMoves: ; 3b54a (e:754a) -;ARTICUNO -;Evolutions - db 0 -;Learnset - db 51,BLIZZARD - db 55,AGILITY - db 60,MIST - db 0 -Mon145_EvosMoves: ; 3b552 (e:7552) -;ZAPDOS -;Evolutions - db 0 -;Learnset - db 51,THUNDER - db 55,AGILITY - db 60,LIGHT_SCREEN - db 0 -Mon132_EvosMoves: ; 3b55a (e:755a) -;DITTO -;Evolutions - db 0 -;Learnset - db 0 -Mon052_EvosMoves: ; 3b55c (e:755c) -;MEOWTH -;Evolutions - db EV_LEVEL,28,PERSIAN - db 0 -;Learnset - db 12,BITE - db 17,PAY_DAY - db 24,SCREECH - db 33,FURY_SWIPES - db 44,SLASH - db 0 -Mon098_EvosMoves: ; 3b56b (e:756b) -;KRABBY -;Evolutions - db EV_LEVEL,28,KINGLER - db 0 -;Learnset - db 20,VICEGRIP - db 25,GUILLOTINE - db 30,STOMP - db 35,CRABHAMMER - db 40,HARDEN - db 0 - -Mon163_EvosMoves: ; 3b57a (e:757a) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon164_EvosMoves: ; 3b57c (e:757c) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon165_EvosMoves: ; 3b57e (e:757e) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon037_EvosMoves: ; 3b580 (e:7580) -;VULPIX -;Evolutions - db EV_ITEM,FIRE_STONE,1,NINETALES - db 0 -;Learnset - db 16,QUICK_ATTACK - db 21,ROAR - db 28,CONFUSE_RAY - db 35,FLAMETHROWER - db 42,FIRE_SPIN - db 0 -Mon038_EvosMoves: ; 3b590 (e:7590) -;NINETALES -;Evolutions - db 0 -;Learnset - db 0 -Mon025_EvosMoves: ; 3b592 (e:7592) -;PIKACHU -;Evolutions - db EV_ITEM,THUNDER_STONE ,1,RAICHU - db 0 -;Learnset - db 9,THUNDER_WAVE - db 16,QUICK_ATTACK - db 26,SWIFT - db 33,AGILITY - db 43,THUNDER - db 0 -Mon026_EvosMoves: ; 3b5a2 (e:75a2) -;RAICHU -;Evolutions - db 0 -;Learnset - db 0 - -Mon166_EvosMoves: ; 3b5a4 (e:75a4) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon167_EvosMoves: ; 3b5a6 (e:75a6) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon147_EvosMoves: ; 3b5a8 (e:75a8) -;DRATINI -;Evolutions - db EV_LEVEL,30,DRAGONAIR - db 0 -;Learnset - db 10,THUNDER_WAVE - db 20,AGILITY - db 30,SLAM - db 40,DRAGON_RAGE - db 50,HYPER_BEAM - db 0 -Mon148_EvosMoves: ; 3b5b7 (e:75b7) -;DRAGONAIR -;Evolutions - db EV_LEVEL,55,DRAGONITE - db 0 -;Learnset - db 10,THUNDER_WAVE - db 20,AGILITY - db 35,SLAM - db 45,DRAGON_RAGE - db 55,HYPER_BEAM - db 0 -Mon140_EvosMoves: ; 3b5c6 (e:75c6) -;KABUTO -;Evolutions - db EV_LEVEL,40,KABUTOPS - db 0 -;Learnset - db 34,ABSORB - db 39,SLASH - db 44,LEER - db 49,HYDRO_PUMP - db 0 -Mon141_EvosMoves: ; 3b5d3 (e:75d3) -;KABUTOPS -;Evolutions - db 0 -;Learnset - db 34,ABSORB - db 39,SLASH - db 46,LEER - db 53,HYDRO_PUMP - db 0 -Mon116_EvosMoves: ; 3b5dd (e:75dd) -;HORSEA -;Evolutions - db EV_LEVEL,32,SEADRA - db 0 -;Learnset - db 19,SMOKESCREEN - db 24,LEER - db 30,WATER_GUN - db 37,AGILITY - db 45,HYDRO_PUMP - db 0 -Mon117_EvosMoves: ; 3b5ec (e:75ec) -;SEADRA -;Evolutions - db 0 -;Learnset - db 19,SMOKESCREEN - db 24,LEER - db 30,WATER_GUN - db 41,AGILITY - db 52,HYDRO_PUMP - db 0 - -Mon168_EvosMoves: ; 3b5f8 (e:75f8) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon169_EvosMoves: ; 3b5fa (e:75fa) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon027_EvosMoves: ; 3b5fc (e:75fc) -;SANDSHREW -;Evolutions - db EV_LEVEL,22,SANDSLASH - db 0 -;Learnset - db 10,SAND_ATTACK - db 17,SLASH - db 24,POISON_STING - db 31,SWIFT - db 38,FURY_SWIPES - db 0 -Mon028_EvosMoves: ; 3b60b (e:760b) -;SANDSLASH -;Evolutions - db 0 -;Learnset - db 10,SAND_ATTACK - db 17,SLASH - db 27,POISON_STING - db 36,SWIFT - db 47,FURY_SWIPES - db 0 -Mon138_EvosMoves: ; 3b617 (e:7617) -;OMANYTE -;Evolutions - db EV_LEVEL,40,OMASTAR - db 0 -;Learnset - db 34,HORN_ATTACK - db 39,LEER - db 46,SPIKE_CANNON - db 53,HYDRO_PUMP - db 0 -Mon139_EvosMoves: ; 3b624 (e:7624) -;OMASTAR -;Evolutions - db 0 -;Learnset - db 34,HORN_ATTACK - db 39,LEER - db 44,SPIKE_CANNON - db 49,HYDRO_PUMP - db 0 -Mon039_EvosMoves: ; 3b62e (e:762e) -;JIGGLYPUFF -;Evolutions - db EV_ITEM,MOON_STONE,1,WIGGLYTUFF - db 0 -;Learnset - db 9,POUND - db 14,DISABLE - db 19,DEFENSE_CURL - db 24,DOUBLESLAP - db 29,REST - db 34,BODY_SLAM - db 39,DOUBLE_EDGE - db 0 -Mon040_EvosMoves: ; 3b642 (e:7642) -;WIGGLYTUFF -;Evolutions - db 0 -;Learnset - db 0 -Mon133_EvosMoves: ; 3b644 (e:7644) -;EEVEE -;Evolutions - db EV_ITEM,FIRE_STONE,1,FLAREON - db EV_ITEM,THUNDER_STONE ,1,JOLTEON - db EV_ITEM,WATER_STONE ,1,VAPOREON - db 0 -;Learnset - db 27,QUICK_ATTACK - db 31,TAIL_WHIP - db 37,BITE - db 45,TAKE_DOWN - db 0 -Mon136_EvosMoves: ; 3b65a (e:765a) -;FLAREON -;Evolutions - db 0 -;Learnset - db 27,QUICK_ATTACK - db 31,EMBER - db 37,TAIL_WHIP - db 40,BITE - db 42,LEER - db 44,FIRE_SPIN - db 48,RAGE - db 54,FLAMETHROWER - db 0 -Mon135_EvosMoves: ; 3b66c (e:766c) -;JOLTEON -;Evolutions - db 0 -;Learnset - db 27,QUICK_ATTACK - db 31,THUNDERSHOCK - db 37,TAIL_WHIP - db 40,THUNDER_WAVE - db 42,DOUBLE_KICK - db 44,AGILITY - db 48,PIN_MISSILE - db 54,THUNDER - db 0 -Mon134_EvosMoves: ; 3b67e (e:767e) -;VAPOREON -;Evolutions - db 0 -;Learnset - db 27,QUICK_ATTACK - db 31,WATER_GUN - db 37,TAIL_WHIP - db 40,BITE - db 42,ACID_ARMOR - db 44,HAZE - db 48,MIST - db 54,HYDRO_PUMP - db 0 -Mon066_EvosMoves: ; 3b690 (e:7690) -;MACHOP -;Evolutions - db EV_LEVEL,28,MACHOKE - db 0 -;Learnset - db 20,LOW_KICK - db 25,LEER - db 32,FOCUS_ENERGY - db 39,SEISMIC_TOSS - db 46,SUBMISSION - db 0 -Mon041_EvosMoves: ; 3b69f (e:769f) -;ZUBAT -;Evolutions - db EV_LEVEL,22,GOLBAT - db 0 -;Learnset - db 10,SUPERSONIC - db 15,BITE - db 21,CONFUSE_RAY - db 28,WING_ATTACK - db 36,HAZE - db 0 -Mon023_EvosMoves: ; 3b6ae (e:76ae) -;EKANS -;Evolutions - db EV_LEVEL,22,ARBOK - db 0 -;Learnset - db 10,POISON_STING - db 17,BITE - db 24,GLARE - db 31,SCREECH - db 38,ACID - db 0 -Mon046_EvosMoves: ; 3b6bd (e:76bd) -;PARAS -;Evolutions - db EV_LEVEL,24,PARASECT - db 0 -;Learnset - db 13,STUN_SPORE - db 20,LEECH_LIFE - db 27,SPORE - db 34,SLASH - db 41,GROWTH - db 0 -Mon061_EvosMoves: ; 3b6cc (e:76cc) -;POLIWHIRL -;Evolutions - db EV_ITEM,WATER_STONE ,1,POLIWRATH - db 0 -;Learnset - db 16,HYPNOSIS - db 19,WATER_GUN - db 26,DOUBLESLAP - db 33,BODY_SLAM - db 41,AMNESIA - db 49,HYDRO_PUMP - db 0 -Mon062_EvosMoves: ; 3b6de (e:76de) -;POLIWRATH -;Evolutions - db 0 -;Learnset - db 16,HYPNOSIS - db 19,WATER_GUN - db 0 -Mon013_EvosMoves: ; 3b6e4 (e:76e4) -;WEEDLE -;Evolutions - db EV_LEVEL,7,KAKUNA - db 0 -;Learnset - db 0 -Mon014_EvosMoves: ; 3b6e9 (e:76e9) -;KAKUNA -;Evolutions - db EV_LEVEL,10,BEEDRILL - db 0 -;Learnset - db 0 -Mon015_EvosMoves: ; 3b6ee (e:76ee) -;BEEDRILL -;Evolutions - db 0 -;Learnset - db 12,FURY_ATTACK - db 16,FOCUS_ENERGY - db 20,TWINEEDLE - db 25,RAGE - db 30,PIN_MISSILE - db 35,AGILITY - db 0 - -Mon170_EvosMoves: ; 3b6fc (e:76fc) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon085_EvosMoves: ; 3b6fe (e:76fe) -;DODRIO -;Evolutions - db 0 -;Learnset - db 20,GROWL - db 24,FURY_ATTACK - db 30,DRILL_PECK - db 39,RAGE - db 45,TRI_ATTACK - db 51,AGILITY - db 0 -Mon057_EvosMoves: ; 3b70c (e:770c) -;PRIMEAPE -;Evolutions - db 0 -;Learnset - db 15,KARATE_CHOP - db 21,FURY_SWIPES - db 27,FOCUS_ENERGY - db 37,SEISMIC_TOSS - db 46,THRASH - db 0 -Mon051_EvosMoves: ; 3b718 (e:7718) -;DUGTRIO -;Evolutions - db 0 -;Learnset - db 15,GROWL - db 19,DIG - db 24,SAND_ATTACK - db 35,SLASH - db 47,EARTHQUAKE - db 0 -Mon049_EvosMoves: ; 3b724 (e:7724) -;VENOMOTH -;Evolutions - db 0 -;Learnset - db 24,POISONPOWDER - db 27,LEECH_LIFE - db 30,STUN_SPORE - db 38,PSYBEAM - db 43,SLEEP_POWDER - db 50,PSYCHIC_M - db 0 -Mon087_EvosMoves: ; 3b732 (e:7732) -;DEWGONG -;Evolutions - db 0 -;Learnset - db 30,GROWL - db 35,AURORA_BEAM - db 44,REST - db 50,TAKE_DOWN - db 56,ICE_BEAM - db 0 - -Mon171_EvosMoves: ; 3b73e (e:773e) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon172_EvosMoves: ; 3b740 (e:7740) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon010_EvosMoves: ; 3b742 (e:7742) -;CATERPIE -;Evolutions - db EV_LEVEL,7,METAPOD - db 0 -;Learnset - db 0 -Mon011_EvosMoves: ; 3b747 (e:7747) -;METAPOD -;Evolutions - db EV_LEVEL,10,BUTTERFREE - db 0 -;Learnset - db 0 -Mon012_EvosMoves: ; 3b74c (e:774c) -;BUTTERFREE -;Evolutions - db 0 -;Learnset - db 12,CONFUSION - db 15,POISONPOWDER - db 16,STUN_SPORE - db 17,SLEEP_POWDER - db 21,SUPERSONIC - db 26,WHIRLWIND - db 32,PSYBEAM - db 0 -Mon068_EvosMoves: ; 3b75c (e:775c) -;MACHAMP -;Evolutions - db 0 -;Learnset - db 20,LOW_KICK - db 25,LEER - db 36,FOCUS_ENERGY - db 44,SEISMIC_TOSS - db 52,SUBMISSION - db 0 - -Mon173_EvosMoves: ; 3b768 (e:7768) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon055_EvosMoves: ; 3b76a (e:776a) -;GOLDUCK -;Evolutions - db 0 -;Learnset - db 28,TAIL_WHIP - db 31,DISABLE - db 39,CONFUSION - db 48,FURY_SWIPES - db 59,HYDRO_PUMP - db 0 -Mon097_EvosMoves: ; 3b776 (e:7776) -;HYPNO -;Evolutions - db 0 -;Learnset - db 12,DISABLE - db 17,CONFUSION - db 24,HEADBUTT - db 33,POISON_GAS - db 37,PSYCHIC_M - db 43,MEDITATE - db 0 -Mon042_EvosMoves: ; 3b784 (e:7784) -;GOLBAT -;Evolutions - db 0 -;Learnset - db 10,SUPERSONIC - db 15,BITE - db 21,CONFUSE_RAY - db 32,WING_ATTACK - db 43,HAZE - db 0 -Mon150_EvosMoves: ; 3b790 (e:7790) -;MEWTWO -;Evolutions - db 0 -;Learnset - db 63,BARRIER - db 66,PSYCHIC_M - db 70,RECOVER - db 75,MIST - db 81,AMNESIA - db 0 -Mon143_EvosMoves: ; 3b79c (e:779c) -;SNORLAX -;Evolutions - db 0 -;Learnset - db 35,BODY_SLAM - db 41,HARDEN - db 48,DOUBLE_EDGE - db 56,HYPER_BEAM - db 0 -Mon129_EvosMoves: ; 3b7a6 (e:77a6) -;MAGIKARP -;Evolutions - db EV_LEVEL,20,GYARADOS - db 0 -;Learnset - db 15,TACKLE - db 0 - -Mon174_EvosMoves: ; 3b7ad (e:77ad) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon175_EvosMoves: ; 3b7af (e:77af) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon089_EvosMoves: ; 3b7b1 (e:77b1) -;MUK -;Evolutions - db 0 -;Learnset - db 30,POISON_GAS - db 33,MINIMIZE - db 37,SLUDGE - db 45,HARDEN - db 53,SCREECH - db 60,ACID_ARMOR - db 0 - -Mon176_EvosMoves: ; 3b7bf (e:77bf) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon099_EvosMoves: ; 3b7c1 (e:77c1) -;KINGLER -;Evolutions - db 0 -;Learnset - db 20,VICEGRIP - db 25,GUILLOTINE - db 34,STOMP - db 42,CRABHAMMER - db 49,HARDEN - db 0 -Mon091_EvosMoves: ; 3b7cd (e:77cd) -;CLOYSTER -;Evolutions - db 0 -;Learnset - db 50,SPIKE_CANNON - db 0 - -Mon177_EvosMoves: ; 3b7d1 (e:77d1) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon101_EvosMoves: ; 3b7d3 (e:77d3) -;ELECTRODE -;Evolutions - db 0 -;Learnset - db 17,SONICBOOM - db 22,SELFDESTRUCT - db 29,LIGHT_SCREEN - db 40,SWIFT - db 50,EXPLOSION - db 0 -Mon036_EvosMoves: ; 3b7df (e:77df) -;CLEFABLE -;Evolutions - db 0 -;Learnset - db 0 -Mon110_EvosMoves: ; 3b7e1 (e:77e1) -;WEEZING -;Evolutions - db 0 -;Learnset - db 32,SLUDGE - db 39,SMOKESCREEN - db 43,SELFDESTRUCT - db 49,HAZE - db 53,EXPLOSION - db 0 -Mon053_EvosMoves: ; 3b7ed (e:77ed) -;PERSIAN -;Evolutions - db 0 -;Learnset - db 12,BITE - db 17,PAY_DAY - db 24,SCREECH - db 37,FURY_SWIPES - db 51,SLASH - db 0 -Mon105_EvosMoves: ; 3b7f9 (e:77f9) -;MAROWAK -;Evolutions - db 0 -;Learnset - db 25,LEER - db 33,FOCUS_ENERGY - db 41,THRASH - db 48,BONEMERANG - db 55,RAGE - db 0 - -Mon178_EvosMoves: ; 3b805 (e:7805) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon093_EvosMoves: ; 3b807 (e:7807) -;HAUNTER -;Evolutions - db EV_TRADE,1,GENGAR - db 0 -;Learnset - db 29,HYPNOSIS - db 38,DREAM_EATER - db 0 -Mon063_EvosMoves: ; 3b810 (e:7810) -;ABRA -;Evolutions - db EV_LEVEL,16,KADABRA - db 0 -;Learnset - db 0 -Mon065_EvosMoves: ; 3b815 (e:7815) -;ALAKAZAM -;Evolutions - db 0 -;Learnset - db 16,CONFUSION - db 20,DISABLE - db 27,PSYBEAM - db 31,RECOVER - db 38,PSYCHIC_M - db 42,REFLECT - db 0 -Mon017_EvosMoves: ; 3b823 (e:7823) -;PIDGEOTTO -;Evolutions - db EV_LEVEL,36,PIDGEOT - db 0 -;Learnset - db 5,SAND_ATTACK - db 12,QUICK_ATTACK - db 21,WHIRLWIND - db 31,WING_ATTACK - db 40,AGILITY - db 49,MIRROR_MOVE - db 0 -Mon018_EvosMoves: ; 3b834 (e:7834) -;PIDGEOT -;Evolutions - db 0 -;Learnset - db 5,SAND_ATTACK - db 12,QUICK_ATTACK - db 21,WHIRLWIND - db 31,WING_ATTACK - db 44,AGILITY - db 54,MIRROR_MOVE - db 0 -Mon121_EvosMoves: ; 3b842 (e:7842) -;STARMIE -;Evolutions - db 0 -;Learnset - db 0 -Mon001_EvosMoves: ; 3b844 (e:7844) -;BULBASAUR -;Evolutions - db EV_LEVEL,16,IVYSAUR - db 0 -;Learnset - db 7,LEECH_SEED - db 13,VINE_WHIP - db 20,POISONPOWDER - db 27,RAZOR_LEAF - db 34,GROWTH - db 41,SLEEP_POWDER - db 48,SOLARBEAM - db 0 -Mon003_EvosMoves: ; 3b857 (e:7857) -;VENUSAUR -;Evolutions - db 0 -;Learnset - db 7,LEECH_SEED - db 13,VINE_WHIP - db 22,POISONPOWDER - db 30,RAZOR_LEAF - db 43,GROWTH - db 55,SLEEP_POWDER - db 65,SOLARBEAM - db 0 -Mon073_EvosMoves: ; 3b867 (e:7867) -;TENTACRUEL -;Evolutions - db 0 -;Learnset - db 7,SUPERSONIC - db 13,WRAP - db 18,POISON_STING - db 22,WATER_GUN - db 27,CONSTRICT - db 35,BARRIER - db 43,SCREECH - db 50,HYDRO_PUMP - db 0 - -Mon179_EvosMoves: ; 3b879 (e:7879) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon118_EvosMoves: ; 3b87b (e:787b) -;GOLDEEN -;Evolutions - db EV_LEVEL,33,SEAKING - db 0 -;Learnset - db 19,SUPERSONIC - db 24,HORN_ATTACK - db 30,FURY_ATTACK - db 37,WATERFALL - db 45,HORN_DRILL - db 54,AGILITY - db 0 -Mon119_EvosMoves: ; 3b88c (e:788c) -;SEAKING -;Evolutions - db 0 -;Learnset - db 19,SUPERSONIC - db 24,HORN_ATTACK - db 30,FURY_ATTACK - db 39,WATERFALL - db 48,HORN_DRILL - db 54,AGILITY - db 0 - -Mon180_EvosMoves: ; 3b89a (e:789a) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon181_EvosMoves: ; 3b89c (e:789c) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon182_EvosMoves: ; 3b89e (e:789e) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon183_EvosMoves: ; 3b8a0 (e:78a0) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon077_EvosMoves: ; 3b8a2 (e:78a2) -;PONYTA -;Evolutions - db EV_LEVEL,40,RAPIDASH - db 0 -;Learnset - db 30,TAIL_WHIP - db 32,STOMP - db 35,GROWL - db 39,FIRE_SPIN - db 43,TAKE_DOWN - db 48,AGILITY - db 0 -Mon078_EvosMoves: ; 3b8b3 (e:78b3) -;RAPIDASH -;Evolutions - db 0 -;Learnset - db 30,TAIL_WHIP - db 32,STOMP - db 35,GROWL - db 39,FIRE_SPIN - db 47,TAKE_DOWN - db 55,AGILITY - db 0 -Mon019_EvosMoves: ; 3b8c1 (e:78c1) -;RATTATA -;Evolutions - db EV_LEVEL,20,RATICATE - db 0 -;Learnset - db 7,QUICK_ATTACK - db 14,HYPER_FANG - db 23,FOCUS_ENERGY - db 34,SUPER_FANG - db 0 -Mon020_EvosMoves: ; 3b8ce (e:78ce) -;RATICATE -;Evolutions - db 0 -;Learnset - db 7,QUICK_ATTACK - db 14,HYPER_FANG - db 27,FOCUS_ENERGY - db 41,SUPER_FANG - db 0 -Mon033_EvosMoves: ; 3b8d8 (e:78d8) -;NIDORINO -;Evolutions - db EV_ITEM,MOON_STONE,1,NIDOKING - db 0 -;Learnset - db 8,HORN_ATTACK - db 14,POISON_STING - db 23,FOCUS_ENERGY - db 32,FURY_ATTACK - db 41,HORN_DRILL - db 50,DOUBLE_KICK - db 0 -Mon030_EvosMoves: ; 3b8ea (e:78ea) -;NIDORINA -;Evolutions - db EV_ITEM,MOON_STONE,1,NIDOQUEEN - db 0 -;Learnset - db 8,SCRATCH - db 14,POISON_STING - db 23,TAIL_WHIP - db 32,BITE - db 41,FURY_SWIPES - db 50,DOUBLE_KICK - db 0 -Mon074_EvosMoves: ; 3b8fc (e:78fc) -;GEODUDE -;Evolutions - db EV_LEVEL,25,GRAVELER - db 0 -;Learnset - db 11,DEFENSE_CURL - db 16,ROCK_THROW - db 21,SELFDESTRUCT - db 26,HARDEN - db 31,EARTHQUAKE - db 36,EXPLOSION - db 0 -Mon137_EvosMoves: ; 3b90d (e:790d) -;PORYGON -;Evolutions - db 0 -;Learnset - db 23,PSYBEAM - db 28,RECOVER - db 35,AGILITY - db 42,TRI_ATTACK - db 0 -Mon142_EvosMoves: ; 3b917 (e:7917) -;AERODACTYL -;Evolutions - db 0 -;Learnset - db 33,SUPERSONIC - db 38,BITE - db 45,TAKE_DOWN - db 54,HYPER_BEAM - db 0 - -Mon184_EvosMoves: ; 3b921 (e:7921) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon081_EvosMoves: ; 3b923 (e:7923) -;MAGNEMITE -;Evolutions - db EV_LEVEL,30,MAGNETON - db 0 -;Learnset - db 21,SONICBOOM - db 25,THUNDERSHOCK - db 29,SUPERSONIC - db 35,THUNDER_WAVE - db 41,SWIFT - db 47,SCREECH - db 0 - -Mon185_EvosMoves: ; 3b934 (e:7934) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon186_EvosMoves: ; 3b936 (e:7936) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon004_EvosMoves: ; 3b938 (e:7938) -;CHARMANDER -;Evolutions - db EV_LEVEL,16,CHARMELEON - db 0 -;Learnset - db 9,EMBER - db 15,LEER - db 22,RAGE - db 30,SLASH - db 38,FLAMETHROWER - db 46,FIRE_SPIN - db 0 -Mon007_EvosMoves: ; 3b949 (e:7949) -;SQUIRTLE -;Evolutions - db EV_LEVEL,16,WARTORTLE - db 0 -;Learnset - db 8,BUBBLE - db 15,WATER_GUN - db 22,BITE - db 28,WITHDRAW - db 35,SKULL_BASH - db 42,HYDRO_PUMP - db 0 -Mon005_EvosMoves: ; 3b95a (e:795a) -;CHARMELEON -;Evolutions - db EV_LEVEL,36,CHARIZARD - db 0 -;Learnset - db 9,EMBER - db 15,LEER - db 24,RAGE - db 33,SLASH - db 42,FLAMETHROWER - db 56,FIRE_SPIN - db 0 -Mon008_EvosMoves: ; 3b96b (e:796b) -;WARTORTLE -;Evolutions - db EV_LEVEL,36,BLASTOISE - db 0 -;Learnset - db 8,BUBBLE - db 15,WATER_GUN - db 24,BITE - db 31,WITHDRAW - db 39,SKULL_BASH - db 47,HYDRO_PUMP - db 0 -Mon006_EvosMoves: ; 3b97c (e:797c) -;CHARIZARD -;Evolutions - db 0 -;Learnset - db 9,EMBER - db 15,LEER - db 24,RAGE - db 36,SLASH - db 46,FLAMETHROWER - db 55,FIRE_SPIN - db 0 - -Mon187_EvosMoves: ; 3b98a (e:798a) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon188_EvosMoves: ; 3b98c (e:798c) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon189_EvosMoves: ; 3b98e (e:798e) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon190_EvosMoves: ; 3b990 (e:7990) -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon043_EvosMoves: ; 3b992 (e:7992) -;ODDISH -;Evolutions - db EV_LEVEL,21,GLOOM - db 0 -;Learnset - db 15,POISONPOWDER - db 17,STUN_SPORE - db 19,SLEEP_POWDER - db 24,ACID - db 33,PETAL_DANCE - db 46,SOLARBEAM - db 0 -Mon044_EvosMoves: ; 3b9a3 (e:79a3) -;GLOOM -;Evolutions - db EV_ITEM,LEAF_STONE ,1,VILEPLUME - db 0 -;Learnset - db 15,POISONPOWDER - db 17,STUN_SPORE - db 19,SLEEP_POWDER - db 28,ACID - db 38,PETAL_DANCE - db 52,SOLARBEAM - db 0 -Mon045_EvosMoves: ; 3b9b5 (e:79b5) -;VILEPLUME -;Evolutions - db 0 -;Learnset - db 15,POISONPOWDER - db 17,STUN_SPORE - db 19,SLEEP_POWDER - db 0 -Mon069_EvosMoves: ; 3b9bd (e:79bd) -;BELLSPROUT -;Evolutions - db EV_LEVEL,21,WEEPINBELL - db 0 -;Learnset - db 13,WRAP - db 15,POISONPOWDER - db 18,SLEEP_POWDER - db 21,STUN_SPORE - db 26,ACID - db 33,RAZOR_LEAF - db 42,SLAM - db 0 -Mon070_EvosMoves: ; 3b9d0 (e:79d0) -;WEEPINBELL -;Evolutions - db EV_ITEM,LEAF_STONE ,1,VICTREEBEL - db 0 -;Learnset - db 13,WRAP - db 15,POISONPOWDER - db 18,SLEEP_POWDER - db 23,STUN_SPORE - db 29,ACID - db 38,RAZOR_LEAF - db 49,SLAM - db 0 -Mon071_EvosMoves: ; 3b9e4 (e:79e4) -;VICTREEBEL -;Evolutions - db 0 -;Learnset - db 13,WRAP - db 15,POISONPOWDER - db 18,SLEEP_POWDER - db 0 +INCLUDE "data/evos_moves.asm" HealEffect_: ; 3b9ec (e:79ec) ld a, [H_WHOSETURN] ; $fff3 @@ -56276,7 +33962,7 @@ Func_3c11e: ; 3c11e (f:411e) and a jr nz, .asm_3c17a call LoadScreenTilesFromBuffer1 - ld hl, UnnamedText_3c1a8 ; $41a8 + ld hl, OutOfSafariBallsText jp PrintText .asm_3c17a callab Func_4277 @@ -56302,8 +33988,8 @@ Func_3c11e: ; 3c11e (f:411e) jr nc, .asm_3c14f jr asm_3c202 -UnnamedText_3c1a8: ; 3c1a8 (f:41a8) - TX_FAR _UnnamedText_3c1a8 +OutOfSafariBallsText: ; 3c1a8 (f:41a8) + TX_FAR _OutOfSafariBallsText db "@" Func_3c1ad: ; 3c1ad (f:41ad) @@ -56351,11 +34037,11 @@ asm_3c202: ; 3c202 (f:4202) call LoadScreenTilesFromBuffer1 ld a, [W_ISLINKBATTLE] ; $d12b cp $4 - ld hl, UnnamedText_3c229 ; $4229 + ld hl, WildRanText jr nz, .asm_3c216 xor a ld [$cf0b], a - ld hl, UnnamedText_3c22e ; $422e + ld hl, EnemyRanText .asm_3c216 call PrintText ld a, (SFX_08_44 - SFX_Headers_08) / 3 @@ -56366,12 +34052,12 @@ asm_3c202: ; 3c202 (f:4202) ld b, BANK(AnimationSlideEnemyMonOut) jp Bankswitch -UnnamedText_3c229: ; 3c229 (f:4229) - TX_FAR _UnnamedText_3c229 +WildRanText: ; 3c229 (f:4229) + TX_FAR _WildRanText db "@" -UnnamedText_3c22e: ; 3c22e (f:422e) - TX_FAR _UnnamedText_3c22e +EnemyRanText: ; 3c22e (f:422e) + TX_FAR _EnemyRanText db "@" MainInBattleLoop: ; 3c233 (f:4233) @@ -56891,7 +34577,7 @@ FaintEnemyPokemon ; 0x3c567 ld a, d and a ret z - ld hl, EnemyMonFainted ; $463e + ld hl, EnemyMonFaintedText call PrintText call Func_3ee94 call SaveScreenTilesToBuffer1 @@ -56929,8 +34615,8 @@ FaintEnemyPokemon ; 0x3c567 ld b, BANK(Func_5524f) jp Bankswitch -EnemyMonFainted: ; 0x3c63e - TX_FAR _EnemyMonFainted +EnemyMonFaintedText: ; 0x3c63e + TX_FAR _EnemyMonFaintedText db "@" Func_3c643: ; 3c643 (f:4643) @@ -56999,7 +34685,7 @@ TrainerBattleVictory: ; 3c696 (f:4696) cp $4 ld a, b call nz, Func_3c6ee - ld hl, TrainerDefeatedText ; $46e9 + ld hl, TrainerDefeatedText call PrintText ld a, [W_ISLINKBATTLE] ; $d12b cp $4 @@ -57008,7 +34694,7 @@ TrainerBattleVictory: ; 3c696 (f:4696) ld c, $28 call DelayFrames call Func_3381 - ld hl, MoneyForWinningText ; $46e4 + ld hl, MoneyForWinningText call PrintText ld de, wPlayerMoney + 2 ; $d349 ld hl, $d07b @@ -57116,7 +34802,7 @@ Func_3c79b: ; 3c79b (f:479b) and a dec a ret nz - ld hl, UnnamedText_3c7d3 ; $47d3 + ld hl, UseNextMonText call PrintText .asm_3c7ad FuncCoord 13, 9 ; $c461 @@ -57138,8 +34824,8 @@ Func_3c79b: ; 3c79b (f:479b) ld de, W_ENEMYMONSPEED jp Func_3cab9 -UnnamedText_3c7d3: ; 3c7d3 (f:47d3) - TX_FAR _UnnamedText_3c7d3 +UseNextMonText: ; 3c7d3 (f:47d3) + TX_FAR _UseNextMonText db "@" Func_3c7d8: ; 3c7d8 (f:47d8) @@ -57270,7 +34956,7 @@ Func_3c893: ; 3c893 (f:4893) jr nz, .asm_3c8a3 ld bc, $14 add hl, bc - ld de, SevenSpacesText ; $48d7 + ld de, SevenSpacesText call PlaceString ld c, $2 call DelayFrames @@ -57451,7 +35137,7 @@ Func_3c92a: ; 3c92a (f:492a) ld a,[wWhichPokemon] cp [hl] jr nz,.next6 - ld hl,UnnamedText_3d1f5 ; $51f5 + ld hl,AlreadyOutText call PrintText .next8 call GoBackToPartyMenu @@ -57536,18 +35222,18 @@ Func_3ca97: ; 3ca97 (f:4a97) ld a, [$d11d] and a jr nz, .asm_3cab2 - ld hl, UnnamedText_3cab4 ; $4ab4 + ld hl, NoWillText call PrintText .asm_3cab2 xor a ret -UnnamedText_3cab4: ; 3cab4 (f:4ab4) - TX_FAR _UnnamedText_3cab4 +NoWillText: ; 3cab4 (f:4ab4) + TX_FAR _NoWillText db "@" Func_3cab9: ; 3cab9 (f:4ab9) - call Func_3d83a + call IsGhostBattle jp z, .asm_3cb5c ld a, [W_BATTLETYPE] ; $d05a cp $2 @@ -57619,10 +35305,10 @@ Func_3cab9: ; 3cab9 (f:4ab9) jr nc, .asm_3cb5c ld a, $1 ld [$cd6a], a - ld hl, UnnamedText_3cb97 ; $4b97 + ld hl, CantEscapeText jr .asm_3cb4f .asm_3cb4c - ld hl, UnnamedText_3cb9c ; $4b9c + ld hl, NoRunningText .asm_3cb4f call PrintText ld a, $1 @@ -57651,23 +35337,23 @@ Func_3cab9: ; 3cab9 (f:4ab9) ld [$cf0b], a ld a, (SFX_08_44 - SFX_Headers_08) / 3 call PlaySoundWaitForCurrent - ld hl, UnnamedText_3cba1 ; $4ba1 + ld hl, GotAwayText call PrintText call WaitForSoundToFinish call SaveScreenTilesToBuffer1 scf ret -UnnamedText_3cb97: ; 3cb97 (f:4b97) - TX_FAR _UnnamedText_3cb97 +CantEscapeText: ; 3cb97 (f:4b97) + TX_FAR _CantEscapeText db "@" -UnnamedText_3cb9c: ; 3cb9c (f:4b9c) - TX_FAR _UnnamedText_3cb9c +NoRunningText: ; 3cb9c (f:4b9c) + TX_FAR _NoRunningText db "@" -UnnamedText_3cba1: ; 3cba1 (f:4ba1) - TX_FAR _UnnamedText_3cba1 +GotAwayText: ; 3cba1 (f:4ba1) + TX_FAR _GotAwayText db "@" Func_3cba6: ; 3cba6 (f:4ba6) @@ -58228,7 +35914,7 @@ Func_3cfe8: ; 3cfe8 (f:4fe8) ld a, [W_ISLINKBATTLE] ; $d12b cp $4 jr nz, .asm_3cffd - ld hl, ItemsCantBeUsedHere + ld hl, ItemsCantBeUsedHereText call PrintText jp InitBattleMenu .asm_3cffd ; bag? @@ -58328,8 +36014,8 @@ asm_3d05f: ; 3d05f (f:505f) scf ret -ItemsCantBeUsedHere: ; 3d0c5 (f:50c5) - TX_FAR ItemsCantBeUsedHere_ +ItemsCantBeUsedHereText: ; 3d0c5 (f:50c5) + TX_FAR _ItemsCantBeUsedHereText db "@" Func_3d0ca: ; 3d0ca (f:50ca) @@ -58431,7 +36117,7 @@ Func_3d119: ; 3d119 (f:5119) ld a, [wWhichPokemon] ; $cf92 cp d jr nz, .asm_3d19d - ld hl, UnnamedText_3d1f5 ; $51f5 + ld hl, AlreadyOutText call PrintText jp Func_3d105 .asm_3d19d @@ -58471,8 +36157,8 @@ Func_3d1ba: ; 3d1ba (f:51ba) and a ret -UnnamedText_3d1f5: ; 3d1f5 (f:51f5) - TX_FAR _UnnamedText_3d1f5 +AlreadyOutText: ; 3d1f5 (f:51f5) + TX_FAR _AlreadyOutText db "@" Func_3d1fa: ; 3d1fa (f:51fa) @@ -58781,15 +36467,15 @@ Func_3d3f5: ; 3d3f5 (f:53f5) and a ret nz .asm_3d423 - ld hl, UnnamedText_3d430 ; $5430 + ld hl, NoMovesLeftText call PrintText ld c, $3c call DelayFrames xor a ret -UnnamedText_3d430: ; 3d430 (f:5430) - TX_FAR _UnnamedText_3d430 +NoMovesLeftText: ; 3d430 (f:5430) + TX_FAR _NoMovesLeftText db "@" Func_3d435: ; 3d435 (f:5435) @@ -58887,7 +36573,7 @@ Func_3d4b6: ; 3d4b6 (f:54b6) jr nz, .asm_3d4df FuncCoord 1, 10 ; $c469 ld hl, Coord - ld de, DisabledText ; $5555 + ld de, DisabledText call PlaceString jr .asm_3d54e .asm_3d4df @@ -58918,7 +36604,7 @@ Func_3d4b6: ; 3d4b6 (f:54b6) ld [$cd6d], a FuncCoord 1, 9 ; $c455 ld hl, Coord - ld de, TypeText ; $555f + ld de, TypeText call PlaceString FuncCoord 7, 11 ; $c483 ld hl, Coord @@ -59105,7 +36791,7 @@ Func_3d65e: ; 3d65e (f:565e) ld a, [$cd6a] and a jp nz, Func_3d80a - call Func_3d811 + call PrintGhostText jp z, Func_3d80a call Func_3d854 jr nz, .asm_3d68a @@ -59132,7 +36818,7 @@ asm_3d6a9: ; 3d6a9 (f:56a9) res 4,[hl] res 6,[hl] asm_3d6b0: ; 3d6b0 (f:56b0) - call Func_3daf5 + call PrintMonName1Text ld hl,DecrementPP ld de,$CCDC ; pointer to the move just used ld b,BANK(DecrementPP) @@ -59233,7 +36919,7 @@ asm_3d766 ld a,[W_MOVEMISSED] and a jr z,.next8 ; 57A6 - call Func_3dbe2 + call PrintMoveFailureText ld a,[W_PLAYERMOVEEFFECT] cp a,EXPLODE_EFFECT jr z,.next9 ; 57B9 @@ -59290,9 +36976,9 @@ Func_3d80a: ; 3d80a (f:580a) ld b,1 ret -Func_3d811: ; 3d811 (f:5811) +PrintGhostText: ; 3d811 (f:5811) ; print the ghost battle messages - call Func_3d83a + call IsGhostBattle ret nz ld a,[H_WHOSETURN] and a @@ -59318,7 +37004,7 @@ GetOutText: ; 3d835 (f:5835) TX_FAR _GetOutText db "@" -Func_3d83a: ; 3d83a (f:583a) +IsGhostBattle: ; 3d83a (f:583a) ld a,[W_ISINBATTLE] dec a ret nz @@ -59365,7 +37051,7 @@ Func_3d854: ; 3d854 (f:5854) .FrozenCheck bit FRZ,[hl] ; frozen? jr z,.HeldInPlaceCheck ; to 5898 - ld hl,FrozenText + ld hl,IsFrozenText call PrintText xor a ld [$CCF1],a @@ -59439,7 +37125,7 @@ HyperBeamCheck: ; 3d8c2 (f:58c2) ld a,[hl] and a,$80 ; confused ld [hl],a - call Func_3daad + call PrintHurtItselfText jr .next5 ; 5952 .next3 ld a,[$CCEE] @@ -59448,7 +37134,7 @@ HyperBeamCheck: ; 3d8c2 (f:58c2) ld hl,$CCDC cp [hl] jr nz,.ParalysisCheck - call Func_3da88 + call PrintMoveIsDisabledText ld hl,Func_3d80a ; $580a jp Func_3da37 .ParalysisCheck @@ -59592,8 +37278,8 @@ WokeUpText: ; 3da42 (f:5a42) TX_FAR _WokeUpText db "@" -FrozenText: ; 3da47 (f:5a47) - TX_FAR _FrozenText +IsFrozenText: ; 3da47 (f:5a47) + TX_FAR _IsFrozenText db "@" FullyParalyzedText: ; 3da4c (f:5a4c) @@ -59644,7 +37330,7 @@ CantMoveText: ; 3da83 (f:5a83) TX_FAR _CantMoveText db "@" -Func_3da88: ; 3da88 (f:5a88) +PrintMoveIsDisabledText: ; 3da88 (f:5a88) ld hl, wPlayerSelectedMove ; $ccdc ld de, W_PLAYERBATTSTATUS1 ; $d062 ld a, [H_WHOSETURN] ; $fff3 @@ -59659,15 +37345,15 @@ Func_3da88: ; 3da88 (f:5a88) ld a, [hl] ld [$d11e], a call GetMoveName - ld hl, UnnamedText_3daa8 ; $5aa8 + ld hl, MoveIsDisabledText jp PrintText -UnnamedText_3daa8: ; 3daa8 (f:5aa8) - TX_FAR _UnnamedText_3daa8 +MoveIsDisabledText: ; 3daa8 (f:5aa8) + TX_FAR _MoveIsDisabledText db "@" -Func_3daad: ; 3daad (f:5aad) - ld hl, HurtItselfText ; $5a65 +PrintHurtItselfText: ; 3daad (f:5aad) + ld hl, HurtItselfText call PrintText ld hl, W_ENEMYMONDEFENSE ; $cff8 ld a, [hli] @@ -59709,12 +37395,12 @@ Func_3daad: ; 3daad (f:5aad) ld [H_WHOSETURN], a ; $fff3 jp ApplyDamageToPlayerPokemon -Func_3daf5: ; 3daf5 (f:5af5) - ld hl, UnnamedText_3dafb ; $5afb +PrintMonName1Text: ; 3daf5 (f:5af5) + ld hl, MonName1Text jp PrintText -UnnamedText_3dafb: ; 3dafb (f:5afb) - TX_FAR _UnnamedText_3dafb +MonName1Text: ; 3dafb (f:5afb) + TX_FAR _MonName1Text db $08 ; asm ld a, [H_WHOSETURN] ; $fff3 and a @@ -59729,43 +37415,43 @@ UnnamedText_3dafb: ; 3dafb (f:5afb) call Func_3db85 ld a, [$cced] and a - ld hl, UnnamedText_3db34 ; $5b34 + ld hl, Used2Text ret nz ld a, [$d11e] cp DOUBLESLAP - ld hl, UnnamedText_3db34 ; $5b34 + ld hl, Used2Text ret c - ld hl, UnnamedText_3db2d ; $5b2d + ld hl, Used1Text ret -UnnamedText_3db2d: ; 3db2d (f:5b2d) - TX_FAR _UnnamedText_3db2d +Used1Text: ; 3db2d (f:5b2d) + TX_FAR _Used1Text db $08 ; asm - jr Func_3db39 + jr PrintInsteadText -UnnamedText_3db34: ; 3db34 (f:5b34) - TX_FAR _UnnamedText_3db34 +Used2Text: ; 3db34 (f:5b34) + TX_FAR _Used2Text db $08 ; asm -Func_3db39: ; 3db39 (f:5b39) +PrintInsteadText: ; 3db39 (f:5b39) ld a, [$cced] and a - jr z, Func_3db48 - ld hl, UnnamedText_3db43 ; $5b43 + jr z, PrintCF4BText + ld hl, InsteadText ret -UnnamedText_3db43: ; 3db43 (f:5b43) - TX_FAR _UnnamedText_3db43 +InsteadText: ; 3db43 (f:5b43) + TX_FAR _InsteadText db $08 ; asm -Func_3db48: ; 3db48 (f:5b48) - ld hl, UnnamedText_3db4c ; $5b4c +PrintCF4BText: ; 3db48 (f:5b48) + ld hl, CF4BText ret -UnnamedText_3db4c: ; 3db4c (f:5b4c) - TX_FAR _UnnamedText_3db4c +CF4BText: ; 3db4c (f:5b4c) + TX_FAR _CF4BText db $08 ; asm - ld hl, TextPointerTable_3db62 + ld hl, ExclamationPointPointerTable ld a, [$d11e] add a push bc @@ -59778,31 +37464,31 @@ UnnamedText_3db4c: ; 3db4c (f:5b4c) ld l, a ret -TextPointerTable_3db62: ; 3db62 (f:5b62) - dw UnnamedText_3db6c - dw UnnamedText_3db71 - dw UnnamedText_3db76 - dw UnnamedText_3db7b - dw UnnamedText_3db80 +ExclamationPointPointerTable: ; 3db62 (f:5b62) + dw ExclamationPoint1Text + dw ExclamationPoint2Text + dw ExclamationPoint3Text + dw ExclamationPoint4Text + dw ExclamationPoint5Text -UnnamedText_3db6c: ; 3db6c (f:5b6c) - TX_FAR _UnnamedText_3db6c +ExclamationPoint1Text: ; 3db6c (f:5b6c) + TX_FAR _ExclamationPoint1Text db "@" -UnnamedText_3db71: ; 3db71 (f:5b71) - TX_FAR _UnnamedText_3db71 +ExclamationPoint2Text: ; 3db71 (f:5b71) + TX_FAR _ExclamationPoint2Text db "@" -UnnamedText_3db76: ; 3db76 (f:5b76) - TX_FAR _UnnamedText_3db76 +ExclamationPoint3Text: ; 3db76 (f:5b76) + TX_FAR _ExclamationPoint3Text db "@" -UnnamedText_3db7b: ; 3db7b (f:5b7b) - TX_FAR _UnnamedText_3db7b +ExclamationPoint4Text: ; 3db7b (f:5b7b) + TX_FAR _ExclamationPoint4Text db "@" -UnnamedText_3db80: ; 3db80 (f:5b80) - TX_FAR _UnnamedText_3db80 +ExclamationPoint5Text: ; 3db80 (f:5b80) + TX_FAR _ExclamationPoint5Text db "@" Func_3db85: ; 3db85 (f:5b85) @@ -59839,10 +37525,10 @@ UnknownMovesList_3dba3: ; 3dba3 (f:5ba3) db STRENGTH, ABSORB, STRING_SHOT, EARTHQUAKE, FISSURE, DIG, TOXIC, SCREECH, HARDEN db MINIMIZE, WITHDRAW, DEFENSE_CURL, METRONOME, LICK, CLAMP, CONSTRICT, POISON_GAS db LEECH_LIFE, BUBBLE, FLASH, SPLASH, ACID_ARMOR, FURY_SWIPES, REST, SHARPEN, SLASH, SUBSTITUTE - db $00 + db $00 db $FF ; terminator -Func_3dbe2: ; 3dbe2 (f:5be2) +PrintMoveFailureText: ; 3dbe2 (f:5be2) ld de, W_PLAYERMOVEEFFECT ; $cfd3 ld a, [H_WHOSETURN] ; $fff3 and a @@ -59910,7 +37596,7 @@ UnaffectedText: ; 3dc4c (f:5c4c) TX_FAR _UnaffectedText db "@" -Func_3dc51: ; 3dc51 (f:5c51) +PrintDoesntAffectText: ; 3dc51 (f:5c51) ld hl, DoesntAffectMonText ; $5c57 jp PrintText @@ -59924,7 +37610,7 @@ Func_3dc5c: ; 3dc5c (f:5c5c) jr z, .asm_3dc75 dec a add a - ld hl, TextPointerTable_3dc7a ; $5c7a + ld hl, CriticalOHKOTextPointers ; $5c7a ld b, $0 ld c, a add hl, bc @@ -59938,16 +37624,16 @@ Func_3dc5c: ; 3dc5c (f:5c5c) ld c, $14 jp DelayFrames -TextPointerTable_3dc7a: ; 3dc7a (f:5c7a) - dw UnnamedText_3dc7e - dw UnnamedText_3dc83 +CriticalOHKOTextPointers: ; 3dc7a (f:5c7a) + dw CriticalHitText + dw OHKOText -UnnamedText_3dc7e: ; 3dc7e (f:5c7e) - TX_FAR _UnnamedText_3dc7e +CriticalHitText: ; 3dc7e (f:5c7e) + TX_FAR _CriticalHitText db "@" -UnnamedText_3dc83: ; 3dc83 (f:5c83) - TX_FAR _UnnamedText_3dc83 +OHKOText: ; 3dc83 (f:5c83) + TX_FAR _OHKOText db "@" Func_3dc88: ; 3dc88 (f:5c88) @@ -60022,9 +37708,9 @@ Func_3dc88: ; 3dc88 (f:5c88) jr c, .asm_3dd0e cp b jr nc, .asm_3dd20 - ld hl, UnnamedText_3ddc0 ; $5dc0 + ld hl, WontObeyText call PrintText - call Func_3daad + call PrintHurtItselfText jp Func_3ddb4 .asm_3dd0e call GenRandomInBattle @@ -60033,21 +37719,21 @@ Func_3dc88: ; 3dc88 (f:5c88) and $7 jr z, .asm_3dd0e ld [W_PLAYERMONSTATUS], a ; $d018 - ld hl, UnnamedText_3ddbb ; $5dbb + ld hl, BeganToNapText jr .asm_3dd3a .asm_3dd20 call GenRandomInBattle and $3 - ld hl, UnnamedText_3ddb6 ; $5db6 + ld hl, LoafingAroundText and a jr z, .asm_3dd3a - ld hl, UnnamedText_3ddc0 ; $5dc0 + ld hl, WontObeyText dec a jr z, .asm_3dd3a - ld hl, UnnamedText_3ddc5 ; $5dc5 + ld hl, TurnedAwayText dec a jr z, .asm_3dd3a - ld hl, UnnamedText_3ddca ; $5dca + ld hl, IgnoredOrdersText .asm_3dd3a call PrintText jr Func_3ddb4 @@ -60128,24 +37814,24 @@ Func_3ddb4: ; 3ddb4 (f:5db4) xor a ret -UnnamedText_3ddb6: ; 3ddb6 (f:5db6) - TX_FAR _UnnamedText_3ddb6 +LoafingAroundText: ; 3ddb6 (f:5db6) + TX_FAR _LoafingAroundText db "@" -UnnamedText_3ddbb: ; 3ddbb (f:5dbb) - TX_FAR _UnnamedText_3ddbb +BeganToNapText: ; 3ddbb (f:5dbb) + TX_FAR _BeganToNapText db "@" -UnnamedText_3ddc0: ; 3ddc0 (f:5dc0) - TX_FAR _UnnamedText_3ddc0 +WontObeyText: ; 3ddc0 (f:5dc0) + TX_FAR _WontObeyText db "@" -UnnamedText_3ddc5: ; 3ddc5 (f:5dc5) - TX_FAR _UnnamedText_3ddc5 +TurnedAwayText: ; 3ddc5 (f:5dc5) + TX_FAR _TurnedAwayText db "@" -UnnamedText_3ddca: ; 3ddca (f:5dca) - TX_FAR _UnnamedText_3ddca +IgnoredOrdersText: ; 3ddca (f:5dca) + TX_FAR _IgnoredOrdersText db "@" CalculateDamage: ; 3ddcf (f:5dcf) @@ -60609,7 +38295,7 @@ CriticalHitTest: ; 3e023 (f:6023) .Loop ld a, [hli] ; read move from move table cp c ; does it match the move about to be used? - jr z, .HighCritical ; if so, the move about to be used is a high critical hit ratio move + jr z, .HighCritical ; if so, the move about to be used is a high critical hit ratio move inc a ; move on to the next move, FF terminates loop jr nz, .Loop ; check the next move in HighCriticalMoves srl b ; /2 for regular move (effective (base speed / 2)) @@ -61302,95 +38988,7 @@ AIGetTypeEffectiveness: ; 3e449 (f:6449) ld [$d11e],a ; store damage multiplier ret -TypeEffects: ; 3e474 (f:6474) -; format: attacking type, defending type, damage multiplier -; the multiplier is a (decimal) fixed-point number: -; 20 is ×2.0 -; 05 is ×0.5 -; 00 is ×0 - db WATER,FIRE,20 - db FIRE,GRASS,20 - db FIRE,ICE,20 - db GRASS,WATER,20 - db ELECTRIC,WATER,20 - db WATER,ROCK,20 - db GROUND,FLYING,00 - db WATER,WATER,05 - db FIRE,FIRE,05 - db ELECTRIC,ELECTRIC,05 - db ICE,ICE,05 - db GRASS,GRASS,05 - db PSYCHIC,PSYCHIC,05 - db FIRE,WATER,05 - db GRASS,FIRE,05 - db WATER,GRASS,05 - db ELECTRIC,GRASS,05 - db NORMAL,ROCK,05 - db NORMAL,GHOST,00 - db GHOST,GHOST,20 - db FIRE,BUG,20 - db FIRE,ROCK,05 - db WATER,GROUND,20 - db ELECTRIC,GROUND,00 - db ELECTRIC,FLYING,20 - db GRASS,GROUND,20 - db GRASS,BUG,05 - db GRASS,POISON,05 - db GRASS,ROCK,20 - db GRASS,FLYING,05 - db ICE,WATER,05 - db ICE,GRASS,20 - db ICE,GROUND,20 - db ICE,FLYING,20 - db FIGHTING,NORMAL,20 - db FIGHTING,POISON,05 - db FIGHTING,FLYING,05 - db FIGHTING,PSYCHIC,05 - db FIGHTING,BUG,05 - db FIGHTING,ROCK,20 - db FIGHTING,ICE,20 - db FIGHTING,GHOST,00 - db POISON,GRASS,20 - db POISON,POISON,05 - db POISON,GROUND,05 - db POISON,BUG,20 - db POISON,ROCK,05 - db POISON,GHOST,05 - db GROUND,FIRE,20 - db GROUND,ELECTRIC,20 - db GROUND,GRASS,05 - db GROUND,BUG,05 - db GROUND,ROCK,20 - db GROUND,POISON,20 - db FLYING,ELECTRIC,05 - db FLYING,FIGHTING,20 - db FLYING,BUG,20 - db FLYING,GRASS,20 - db FLYING,ROCK,05 - db PSYCHIC,FIGHTING,20 - db PSYCHIC,POISON,20 - db BUG,FIRE,05 - db BUG,GRASS,20 - db BUG,FIGHTING,05 - db BUG,FLYING,05 - db BUG,PSYCHIC,20 - db BUG,GHOST,05 - db BUG,POISON,20 - db ROCK,FIRE,20 - db ROCK,FIGHTING,05 - db ROCK,GROUND,05 - db ROCK,FLYING,20 - db ROCK,BUG,20 - db ROCK,ICE,20 - db GHOST,NORMAL,00 - db GHOST,PSYCHIC,00 - db FIRE,DRAGON,05 - db WATER,DRAGON,05 - db ELECTRIC,DRAGON,05 - db GRASS,DRAGON,05 - db ICE,DRAGON,20 - db DRAGON,DRAGON,20 - db $FF +INCLUDE "data/type_effects.asm" ; some tests that need to pass for a move to hit MoveHitTest: ; 3e56b (f:656b) @@ -61620,7 +39218,7 @@ Func_3e6bc: ; 3e6bc (f:66bc) ld a, [wEnemySelectedMove] ; $ccdd inc a jp z, Func_3e88c - call Func_3d811 + call PrintGhostText jp z, Func_3e88c ld a, [W_ISLINKBATTLE] ; $d12b cp $4 @@ -61671,7 +39269,7 @@ asm_3e70b: ; 3e70b (f:670b) asm_3e72b: ; 3e72b (f:672b) xor a ld [$cced], a - call Func_3daf5 + call PrintMonName1Text ld a, [W_ENEMYMOVEEFFECT] ; $cfcd ld hl, EffectsArray1 ; $4000 ld de, $1 @@ -61779,7 +39377,7 @@ asm_3e7ef: ; 3e7ef (f:67ef) ld a, [W_MOVEMISSED] ; $d05f and a jr z, .asm_3e82b - call Func_3dbe2 + call PrintMoveFailureText ld a, [W_ENEMYMOVEEFFECT] ; $cfcd cp EXPLODE_EFFECT jr z, .asm_3e83e @@ -61842,7 +39440,7 @@ Func_3e88f: ; 3e88f (f:688f) ld [W_ENEMYMONSTATUS], a ; $cfe9 and a jr z, .asm_3e8af - ld hl, FastAsleepText ; $5a3d + ld hl, FastAsleepText call PrintText xor a ld [$cc5b], a @@ -61850,7 +39448,7 @@ Func_3e88f: ; 3e88f (f:688f) call PlayMoveAnimation jr .asm_3e8b5 .asm_3e8af - ld hl, WokeUpText ; $5a42 + ld hl, WokeUpText call PrintText .asm_3e8b5 xor a @@ -61860,7 +39458,7 @@ Func_3e88f: ; 3e88f (f:688f) .asm_3e8bf bit 5, [hl] jr z, .asm_3e8d3 - ld hl, FrozenText ; $5a47 + ld hl, IsFrozenText call PrintText xor a ld [$ccf2], a @@ -61870,7 +39468,7 @@ Func_3e88f: ; 3e88f (f:688f) ld a, [W_PLAYERBATTSTATUS1] ; $d062 bit 5, a jp z, Func_3e8e7 - ld hl, CantMoveText ; $5a83 + ld hl, CantMoveText call PrintText ld hl, Func_3e88c ; $688c jp Func_3eab8 @@ -61880,7 +39478,7 @@ Func_3e8e7: ; 3e8e7 (f:68e7) bit 3, [hl] jp z, Func_3e8fd res 3, [hl] - ld hl, FlinchedText ; $5a51 + ld hl, FlinchedText call PrintText ld hl, Func_3e88c ; $688c jp Func_3eab8 @@ -61890,7 +39488,7 @@ Func_3e8fd: ; 3e8fd (f:68fd) bit 5, [hl] jr z, .asm_3e912 res 5, [hl] - ld hl, MustRechargeText ; $5a56 + ld hl, MustRechargeText call PrintText ld hl, Func_3e88c ; $688c jp Func_3eab8 @@ -61905,7 +39503,7 @@ Func_3e8fd: ; 3e8fd (f:68fd) jr nz, .asm_3e929 ld [hl], a ld [$ccef], a - ld hl, DisabledNoMoreText ; $5a5b + ld hl, DisabledNoMoreText call PrintText .asm_3e929 ld a, [W_ENEMYBATTSTATUS1] ; $d067 @@ -61916,11 +39514,11 @@ Func_3e8fd: ; 3e8fd (f:68fd) jr nz, .asm_3e944 ld hl, W_ENEMYBATTSTATUS1 ; $d067 res 7, [hl] - ld hl, ConfusedNoMoreText ; $5a6a + ld hl, ConfusedNoMoreText call PrintText jp Func_3e9aa .asm_3e944 - ld hl, IsConfusedText ; $5a60 + ld hl, IsConfusedText call PrintText xor a ld [$cc5b], a @@ -61933,7 +39531,7 @@ Func_3e8fd: ; 3e8fd (f:68fd) ld a, [hl] and $80 ld [hl], a - ld hl, HurtItselfText ; $5a65 + ld hl, HurtItselfText call PrintText ld hl, W_PLAYERMONDEF ld a, [hli] @@ -61982,7 +39580,7 @@ Func_3e9aa: ; 3e9aa (f:69aa) ld hl, wEnemySelectedMove ; $ccdd cp [hl] jr nz, .asm_3e9bf - call Func_3da88 + call PrintMoveIsDisabledText ld hl, Func_3e88c ; $688c jp Func_3eab8 .asm_3e9bf @@ -61992,7 +39590,7 @@ Func_3e9aa: ; 3e9aa (f:69aa) call GenRandomInBattle cp $3f jr nc, asm_3e9f6 - ld hl, FullyParalyzedText ; $5a4c + ld hl, FullyParalyzedText call PrintText asm_3e9d3: ; 3e9d3 (f:69d3) ld hl, W_ENEMYBATTSTATUS1 ; $d067 @@ -62038,7 +39636,7 @@ asm_3e9f6: ; 3e9f6 (f:69f6) .asm_3ea1c ld hl, W_ENEMYBATTSTATUS1 ; $d067 res 0, [hl] - ld hl, UnleashedEnergyText ; $5a74 + ld hl, UnleashedEnergyText call PrintText ld a, $1 ld [W_ENEMYMOVEPOWER], a ; $cfce @@ -62068,7 +39666,7 @@ asm_3e9f6: ; 3e9f6 (f:69f6) jr z, .asm_3ea83 ld a, THRASH ld [W_ENEMYMOVENUM], a ; $cfcc - ld hl, ThrashingAboutText ; $5a79 + ld hl, ThrashingAboutText call PrintText ld hl, $d06f dec [hl] @@ -62088,7 +39686,7 @@ asm_3e9f6: ; 3e9f6 (f:69f6) .asm_3ea83 bit 5, [hl] ; is mon using multi-turn move? jp z, Func_3ea9b - ld hl, AttackContinuesText ; $5a7e + ld hl, AttackContinuesText call PrintText ld hl, $d06f dec [hl] @@ -62823,7 +40421,7 @@ Func_3ef8b: ; 3ef8b (f:6f8b) ld a, [W_CUROPPONENT] ; $d059 cp MAROWAK jr z, .isGhost - call Func_3d83a + call IsGhostBattle jr nz, .isNoGhost .isGhost ld hl, W_MONHSPRITEDIM @@ -63181,7 +40779,7 @@ Func_3f20e: ; 3f20e (f:720e) ld b, a and $7 jr z, .asm_3f222 - ld hl, AlreadyAsleepText ; $724a + ld hl, AlreadyAsleepText jp PrintText .asm_3f222 ld a, b @@ -63199,10 +40797,10 @@ Func_3f20e: ; 3f20e (f:720e) jr z, .asm_3f231 ld [de], a call Func_3fb89 - ld hl, FellAsleepText ; $7245 + ld hl, FellAsleepText jp PrintText .asm_3f242 - jp Func_3fb5e + jp PrintDidntAffectText FellAsleepText: ; 3f245 (f:7245) TX_FAR _FellAsleepText @@ -63274,10 +40872,10 @@ PoisonEffect: ; 3f24f (f:724f) set 0, [hl] xor a ld [de], a - ld hl, BadlyPoisonedText ; $72e4 + ld hl, BadlyPoisonedText jr .asm_3f2c0 .asm_3f2bd - ld hl, PoisonedText ; $72df + ld hl, PoisonedText .asm_3f2c0 pop de ld a, [de] @@ -63296,7 +40894,7 @@ PoisonEffect: ; 3f24f (f:724f) .asm_3f2d7 ld c, $32 call DelayFrames - jp Func_3fb5e + jp PrintDidntAffectText PoisonedText: ; 3f2df (f:72df) TX_FAR _PoisonedText @@ -63373,14 +40971,14 @@ FreezeBurnParalyzeEffect: ; 3f30c (f:730c) call Func_3ed27 ;quarter speed of affected monster ld a, $a9 call Func_3fbb9 ;animation - jp Func_3fb6e ;print paralysis text + jp PrintMayNotAttackText ;print paralysis text .burn ld a, 1 << BRN ld [W_ENEMYMONSTATUS], a call Func_3ed64 ld a, $a9 call Func_3fbb9 ;animation - ld hl, UnnamedText_3f3d8 + ld hl, BurnedText jp PrintText .freeze call Func_3f9cf ;resets bit 5 of the D063/D068 flags @@ -63388,7 +40986,7 @@ FreezeBurnParalyzeEffect: ; 3f30c (f:730c) ld [W_ENEMYMONSTATUS], a ld a, $a9 call Func_3fbb9 ;animation - ld hl, UnnamedText_3f3dd + ld hl, FrozenText jp PrintText opponentAttacker: ; 3f382 (f:7382) ld a, [W_PLAYERMONSTATUS] ;this appears to the same as above with addresses swapped for opponent @@ -63422,25 +41020,25 @@ opponentAttacker: ; 3f382 (f:7382) ld a, 1 << PAR ld [W_PLAYERMONSTATUS], a call Func_3ed27 - jp Func_3fb6e + jp PrintMayNotAttackText .burn ld a, 1 << BRN ld [W_PLAYERMONSTATUS], a call Func_3ed64 - ld hl, UnnamedText_3f3d8 + ld hl, BurnedText jp PrintText .freeze ld a, 1 << FRZ ld [W_PLAYERMONSTATUS], a - ld hl, UnnamedText_3f3dd + ld hl, FrozenText jp PrintText -UnnamedText_3f3d8: ; 3f3d8 (f:73d8) - TX_FAR _UnnamedText_3f3d8 +BurnedText: ; 3f3d8 (f:73d8) + TX_FAR _BurnedText db "@" -UnnamedText_3f3dd: ; 3f3dd (f:73dd) - TX_FAR _UnnamedText_3f3dd +FrozenText: ; 3f3dd (f:73dd) + TX_FAR _FrozenText db "@" CheckDefrost: ; 3f3e2 (f:73e2) @@ -63462,7 +41060,7 @@ CheckDefrost: ; 3f3e2 (f:73e2) call AddNTimes xor a ld [hl], a ;clear status in roster - ld hl, UnnamedText_3f423 + ld hl, FireDefrostedText jr .common .opponent ld a, [W_ENEMYMOVETYPE] ;same as above with addresses swapped @@ -63475,12 +41073,12 @@ CheckDefrost: ; 3f3e2 (f:73e2) call AddNTimes xor a ld [hl], a - ld hl, UnnamedText_3f423 + ld hl, FireDefrostedText .common jp PrintText -UnnamedText_3f423: ; 3f423 (f:7423) - TX_FAR _UnnamedText_3f423 +FireDefrostedText: ; 3f423 (f:7423) + TX_FAR _FireDefrostedText db "@" StatModifierUpEffect: ; 3f428 (f:7428) @@ -63627,7 +41225,7 @@ asm_3f4ca: ; 3f4ca (f:74ca) ld a, [H_WHOSETURN] ; $fff3 and a call z, Func_3ee19 - ld hl, UnnamedText_3f528 ; $7528 + ld hl, MonsStatsRoseText call PrintText call Func_3ed27 jp Func_3ed64 @@ -63637,13 +41235,13 @@ Func_3f520: ; 3f520 (f:7520) dec [hl] Func_3f522: ; 3f522 (f:7522) - ld hl, UnnamedText_3fb3e ; $7b3e + ld hl, NothingHappenedText jp PrintText -UnnamedText_3f528: ; 3f528 (f:7528) - TX_FAR _UnnamedText_3f528 +MonsStatsRoseText: ; 3f528 (f:7528) + TX_FAR _MonsStatsRoseText db $08 ; asm - ld hl, UnnamedText_3f542 ; $7542 + ld hl, GreatlyRoseText ld a, [H_WHOSETURN] ; $fff3 and a ld a, [W_PLAYERMOVEEFFECT] ; $cfd3 @@ -63652,15 +41250,15 @@ UnnamedText_3f528: ; 3f528 (f:7528) .asm_3f53b cp ATTACK_DOWN1_EFFECT ret nc - ld hl, UnnamedText_3f547 ; $7547 + ld hl, RoseText ret -UnnamedText_3f542: ; 3f542 (f:7542) +GreatlyRoseText: ; 3f542 (f:7542) db $0a - TX_FAR _UnnamedText_3f542 + TX_FAR _GreatlyRoseText -UnnamedText_3f547: ; 3f547 (f:7547) - TX_FAR _UnnamedText_3f547 +RoseText: ; 3f547 (f:7547) + TX_FAR _RoseText db "@" StatModifierDownEffect: ; 3f54c (f:754c) @@ -63812,7 +41410,7 @@ asm_3f62c: ; 3f62c (f:762c) ld a, [H_WHOSETURN] ; $fff3 and a call nz, Func_3ee19 - ld hl, UnnamedText_3f661 ; $7661 + ld hl, MonsStatsFellText call PrintText call Func_3ed27 jp Func_3ed64 @@ -63826,7 +41424,7 @@ Func_3f650: ; 3f650 (f:7650) ld a, [de] cp ATTACK_DOWN_SIDE_EFFECT ret nc - ld hl, UnnamedText_3fb3e ; $7b3e + ld hl, NothingHappenedText jp PrintText Func_3f65a: ; 3f65a (f:765a) @@ -63835,10 +41433,10 @@ Func_3f65a: ; 3f65a (f:765a) ret nc jp Func_3fb4e -UnnamedText_3f661: ; 3f661 (f:7661) - TX_FAR _UnnamedText_3f661 +MonsStatsFellText: ; 3f661 (f:7661) + TX_FAR _MonsStatsFellText db $08 ; asm - ld hl, UnnamedText_3f683 ; $7683 + ld hl, FellText ld a, [H_WHOSETURN] ; $fff3 and a ld a, [W_PLAYERMOVEEFFECT] ; $cfd3 @@ -63849,19 +41447,19 @@ UnnamedText_3f661: ; 3f661 (f:7661) ret c cp $44 ret nc - ld hl, UnnamedText_3f67e ; $767e + ld hl, GreatlyFellText ret -UnnamedText_3f67e: ; 3f67e (f:767e) +GreatlyFellText: ; 3f67e (f:767e) db $0a - TX_FAR _UnnamedText_3f67e + TX_FAR _GreatlyFellText -UnnamedText_3f683: ; 3f683 (f:7683) - TX_FAR _UnnamedText_3f683 +FellText: ; 3f683 (f:7683) + TX_FAR _FellText db "@" Func_3f688: ; 3f688 (f:7688) - ld hl, StatsTextStrings ; $769f + ld hl, StatsTextStrings ld c, $50 .asm_3f68d dec b @@ -63973,7 +41571,7 @@ SwitchAndTeleportEffect: ; 3f739 (f:7739) call DelayFrames ld a, [W_PLAYERMOVENUM] ; $cfd2 cp TELEPORT - jp nz, Func_3fb5e + jp nz, PrintDidntAffectText jp PrintButItFailedText_ .asm_3f76e call ReadPlayerMonCurHPAndStatus @@ -63986,7 +41584,7 @@ SwitchAndTeleportEffect: ; 3f739 (f:7739) .asm_3f77e ld c, $32 call DelayFrames - ld hl, IsUnaffectedText ; $7b69 + ld hl, IsUnaffectedText ld a, [W_PLAYERMOVENUM] ; $cfd2 cp TELEPORT jp nz, PrintText @@ -64015,7 +41613,7 @@ SwitchAndTeleportEffect: ; 3f739 (f:7739) call DelayFrames ld a, [W_ENEMYMOVENUM] ; $cfcc cp TELEPORT - jp nz, Func_3fb5e + jp nz, PrintDidntAffectText jp PrintButItFailedText_ .asm_3f7c1 call ReadPlayerMonCurHPAndStatus @@ -64028,7 +41626,7 @@ SwitchAndTeleportEffect: ; 3f739 (f:7739) .asm_3f7d1 ld c, $32 call DelayFrames - ld hl, IsUnaffectedText ; $7b69 + ld hl, IsUnaffectedText ld a, [W_ENEMYMOVENUM] ; $cfcc cp TELEPORT jp nz, PrintText @@ -64431,7 +42029,7 @@ LeechSeedEffect: ; 3fa7c (f:7a7c) SplashEffect: ; 3fa84 (f:7a84) call Func_3fba8 - jp Func_3fb43 + jp PrintNoEffectText DisableEffect: ; 3fa8a (f:7a8a) call MoveHitTest @@ -64547,11 +42145,11 @@ ReflectLightScreenEffect: ; 3fb36 (f:7b36) ld b, BANK(ReflectLightScreenEffect_) jp Bankswitch -UnnamedText_3fb3e: ; 3fb3e (f:7b3e) - TX_FAR _UnnamedText_3fb3e +NothingHappenedText: ; 3fb3e (f:7b3e) + TX_FAR _NothingHappenedText db "@" -Func_3fb43: ; 3fb43 (f:7b43) +PrintNoEffectText: ; 3fb43 (f:7b43) ld hl, NoEffectText jp PrintText @@ -64565,15 +42163,15 @@ Func_3fb4e: ; 3fb4e (f:7b4e) ret nz PrintButItFailedText_: ; 3fb53 (f:7b53) - ld hl, ButItFailedText ; $7b59 + ld hl, ButItFailedText jp PrintText ButItFailedText: ; 3fb59 (f:7b59) TX_FAR _ButItFailedText db "@" -Func_3fb5e: ; 3fb5e (f:7b5e) - ld hl, DidntAffectText ; $7b64 +PrintDidntAffectText: ; 3fb5e (f:7b5e) + ld hl, DidntAffectText jp PrintText DidntAffectText: ; 3fb64 (f:7b64) @@ -64584,7 +42182,7 @@ IsUnaffectedText: ; 3fb69 (f:7b69) TX_FAR _IsUnaffectedText db "@" -Func_3fb6e: ; 3fb6e (f:7b6e) +PrintMayNotAttackText: ; 3fb6e (f:7b6e) ld hl, ParalyzedMayNotAttackText ; $7b74 jp PrintText @@ -65289,1265 +42887,7 @@ DrawTileLine: ; 40474 (10:4474) pop bc ret -PokedexEntryPointers: ; 4047e (10:447e) - dw RhydonDexEntry - dw KangaskhanDexEntry - dw NidoranMDexEntry - dw ClefairyDexEntry - dw SpearowDexEntry - dw VoltorbDexEntry - dw NidokingDexEntry - dw SlowbroDexEntry - dw IvysaurDexEntry - dw ExeggutorDexEntry - dw LickitungDexEntry - dw ExeggcuteDexEntry - dw GrimerDexEntry - dw GengarDexEntry - dw NidoranFDexEntry - dw NidoqueenDexEntry - dw CuboneDexEntry - dw RhyhornDexEntry - dw LaprasDexEntry - dw ArcanineDexEntry - dw MewDexEntry - dw GyaradosDexEntry - dw ShellderDexEntry - dw TentacoolDexEntry - dw GastlyDexEntry - dw ScytherDexEntry - dw StaryuDexEntry - dw BlastoiseDexEntry - dw PinsirDexEntry - dw TangelaDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw GrowlitheDexEntry - dw OnixDexEntry - dw FearowDexEntry - dw PidgeyDexEntry - dw SlowpokeDexEntry - dw KadabraDexEntry - dw GravelerDexEntry - dw ChanseyDexEntry - dw MachokeDexEntry - dw MrMimeDexEntry - dw HitmonleeDexEntry - dw HitmonchanDexEntry - dw ArbokDexEntry - dw ParasectDexEntry - dw PsyduckDexEntry - dw DrowzeeDexEntry - dw GolemDexEntry - dw MissingNoDexEntry - dw MagmarDexEntry - dw MissingNoDexEntry - dw ElectabuzzDexEntry - dw MagnetonDexEntry - dw KoffingDexEntry - dw MissingNoDexEntry - dw MankeyDexEntry - dw SeelDexEntry - dw DiglettDexEntry - dw TaurosDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw FarfetchdDexEntry - dw VenonatDexEntry - dw DragoniteDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw DoduoDexEntry - dw PoliwagDexEntry - dw JynxDexEntry - dw MoltresDexEntry - dw ArticunoDexEntry - dw ZapdosDexEntry - dw DittoDexEntry - dw MeowthDexEntry - dw KrabbyDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw VulpixDexEntry - dw NinetalesDexEntry - dw PikachuDexEntry - dw RaichuDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw DratiniDexEntry - dw DragonairDexEntry - dw KabutoDexEntry - dw KabutopsDexEntry - dw HorseaDexEntry - dw SeadraDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw SandshrewDexEntry - dw SandslashDexEntry - dw OmanyteDexEntry - dw OmastarDexEntry - dw JigglypuffDexEntry - dw WigglytuffDexEntry - dw EeveeDexEntry - dw FlareonDexEntry - dw JolteonDexEntry - dw VaporeonDexEntry - dw MachopDexEntry - dw ZubatDexEntry - dw EkansDexEntry - dw ParasDexEntry - dw PoliwhirlDexEntry - dw PoliwrathDexEntry - dw WeedleDexEntry - dw KakunaDexEntry - dw BeedrillDexEntry - dw MissingNoDexEntry - dw DodrioDexEntry - dw PrimeapeDexEntry - dw DugtrioDexEntry - dw VenomothDexEntry - dw DewgongDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw CaterpieDexEntry - dw MetapodDexEntry - dw ButterfreeDexEntry - dw MachampDexEntry - dw MissingNoDexEntry - dw GolduckDexEntry - dw HypnoDexEntry - dw GolbatDexEntry - dw MewtwoDexEntry - dw SnorlaxDexEntry - dw MagikarpDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw MukDexEntry - dw MissingNoDexEntry - dw KinglerDexEntry - dw CloysterDexEntry - dw MissingNoDexEntry - dw ElectrodeDexEntry - dw ClefableDexEntry - dw WeezingDexEntry - dw PersianDexEntry - dw MarowakDexEntry - dw MissingNoDexEntry - dw HaunterDexEntry - dw AbraDexEntry - dw AlakazamDexEntry - dw PidgeottoDexEntry - dw PidgeotDexEntry - dw StarmieDexEntry - dw BulbasaurDexEntry - dw VenusaurDexEntry - dw TentacruelDexEntry - dw MissingNoDexEntry - dw GoldeenDexEntry - dw SeakingDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw PonytaDexEntry - dw RapidashDexEntry - dw RattataDexEntry - dw RaticateDexEntry - dw NidorinoDexEntry - dw NidorinaDexEntry - dw GeodudeDexEntry - dw PorygonDexEntry - dw AerodactylDexEntry - dw MissingNoDexEntry - dw MagnemiteDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw CharmanderDexEntry - dw SquirtleDexEntry - dw CharmeleonDexEntry - dw WartortleDexEntry - dw CharizardDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw OddishDexEntry - dw GloomDexEntry - dw VileplumeDexEntry - dw BellsproutDexEntry - dw WeepinbellDexEntry - dw VictreebelDexEntry - -; string: species name -; height in feet, inches -; weight in pounds -; text entry - -RhydonDexEntry: ; 405fa (10:45fa) - db "DRILL@" - db 6,3 - dw 2650 - TX_FAR _RhydonDexEntry - db "@" - -KangaskhanDexEntry: ; 40609 (10:4609) - db "PARENT@" - db 7,3 - dw 1760 - TX_FAR _KangaskhanDexEntry - db "@" - -NidoranMDexEntry: ; 40619 (10:4619) - db "POISON PIN@" - db 1,8 - dw 200 - TX_FAR _NidoranMDexEntry - db "@" - -ClefairyDexEntry: ; 4062d (10:462d) - db "FAIRY@" - db 2,0 - dw 170 - TX_FAR _ClefairyDexEntry - db "@" - -SpearowDexEntry: ; 4063c (10:463c) - db "TINY BIRD@" - db 1,0 - dw 40 - TX_FAR _SpearowDexEntry - db "@" - -VoltorbDexEntry: ; 4064f (10:464f) - db "BALL@" - db 1,8 - dw 230 - TX_FAR _VoltorbDexEntry - db "@" - -NidokingDexEntry: ; 4065d (10:465d) - db "DRILL@" - db 4,7 - dw 1370 - TX_FAR _NidokingDexEntry - db "@" - -SlowbroDexEntry: ; 4066c (10:466c) - db "HERMITCRAB@" - db 5,3 - dw 1730 - TX_FAR _SlowbroDexEntry - db "@" - -IvysaurDexEntry: ; 40680 (10:4680) - db "SEED@" - db 3,3 - dw 290 - TX_FAR _IvysaurDexEntry - db "@" - -ExeggutorDexEntry: ; 4068e (10:468e) - db "COCONUT@" - db 6,7 - dw 2650 - TX_FAR _ExeggutorDexEntry - db "@" - -LickitungDexEntry: ; 4069f (10:469f) - db "LICKING@" - db 3,11 - dw 1440 - TX_FAR _LickitungDexEntry - db "@" - -ExeggcuteDexEntry: ; 406b0 (10:46b0) - db "EGG@" - db 1,4 - dw 60 - TX_FAR _ExeggcuteDexEntry - db "@" - -GrimerDexEntry: ; 406bd (10:46bd) - db "SLUDGE@" - db 2,11 - dw 660 - TX_FAR _GrimerDexEntry - db "@" - -GengarDexEntry: ; 406cd (10:46cd) - db "SHADOW@" - db 4,11 - dw 890 - TX_FAR _GengarDexEntry - db "@" - -NidoranFDexEntry: ; 406dd (10:46dd) - db "POISON PIN@" - db 1,4 - dw 150 - TX_FAR _NidoranFDexEntry - db "@" - -NidoqueenDexEntry: ; 406f1 (10:46f1) - db "DRILL@" - db 4,3 - dw 1320 - TX_FAR _NidoqueenDexEntry - db "@" - -CuboneDexEntry: ; 40700 (10:4700) - db "LONELY@" - db 1,4 - dw 140 - TX_FAR _CuboneDexEntry - db "@" - -RhyhornDexEntry: ; 40710 (10:4710) - db "SPIKES@" - db 3,3 - dw 2540 - TX_FAR _RhyhornDexEntry - db "@" - -LaprasDexEntry: ; 40720 (10:4720) - db "TRANSPORT@" - db 8,2 - dw 4850 - TX_FAR _LaprasDexEntry - db "@" - -ArcanineDexEntry: ; 40733 (10:4733) - db "LEGENDARY@" - db 6,3 - dw 3420 - TX_FAR _ArcanineDexEntry - db "@" - -MewDexEntry: ; 40746 (10:4746) - db "NEW SPECIE@" - db 1,4 - dw 90 - TX_FAR _MewDexEntry - db "@" - -GyaradosDexEntry: ; 4075a (10:475a) - db "ATROCIOUS@" - db 21,4 - dw 5180 - TX_FAR _GyaradosDexEntry - db "@" - -ShellderDexEntry: ; 4076d (10:476d) - db "BIVALVE@" - db 1,0 - dw 90 - TX_FAR _ShellderDexEntry - db "@" - -TentacoolDexEntry: ; 4077e (10:477e) - db "JELLYFISH@" - db 2,11 - dw 1000 - TX_FAR _TentacoolDexEntry - db "@" - -GastlyDexEntry: ; 40791 (10:4791) - db "GAS@" - db 4,3 - dw 2 - TX_FAR _GastlyDexEntry - db "@" - -ScytherDexEntry: ; 4079e (10:479e) - db "MANTIS@" - db 4,11 - dw 1230 - TX_FAR _ScytherDexEntry - db "@" - -StaryuDexEntry: ; 407ae (10:47ae) - db "STARSHAPE@" - db 2,7 - dw 760 - TX_FAR _StaryuDexEntry - db "@" - -BlastoiseDexEntry: ; 407c1 (10:47c1) - db "SHELLFISH@" - db 5,3 - dw 1890 - TX_FAR _BlastoiseDexEntry - db "@" - -PinsirDexEntry: ; 407d4 (10:47d4) - db "STAGBEETLE@" - db 4,11 - dw 1210 - TX_FAR _PinsirDexEntry - db "@" - -TangelaDexEntry: ; 407e8 (10:47e8) - db "VINE@" - db 3,3 - dw 770 - TX_FAR _TangelaDexEntry - db "@" - -GrowlitheDexEntry: ; 407f6 (10:47f6) - db "PUPPY@" - db 2,4 - dw 420 - TX_FAR _GrowlitheDexEntry - db "@" - -OnixDexEntry: ; 40805 (10:4805) - db "ROCK SNAKE@" - db 28,10 - dw 4630 - TX_FAR _OnixDexEntry - db "@" - -FearowDexEntry: ; 40819 (10:4819) - db "BEAK@" - db 3,11 - dw 840 - TX_FAR _FearowDexEntry - db "@" - -PidgeyDexEntry: ; 40827 (10:4827) - db "TINY BIRD@" - db 1,0 - dw 40 - TX_FAR _PidgeyDexEntry - db "@" - -SlowpokeDexEntry: ; 4083a (10:483a) - db "DOPEY@" - db 3,11 - dw 790 - TX_FAR _SlowpokeDexEntry - db "@" - -KadabraDexEntry: ; 40849 (10:4849) - db "PSI@" - db 4,3 - dw 1250 - TX_FAR _KadabraDexEntry - db "@" - -GravelerDexEntry: ; 40856 (10:4856) - db "ROCK@" - db 3,3 - dw 2320 - TX_FAR _GravelerDexEntry - db "@" - -ChanseyDexEntry: ; 40864 (10:4864) - db "EGG@" - db 3,7 - dw 760 - TX_FAR _ChanseyDexEntry - db "@" - -MachokeDexEntry: ; 40871 (10:4871) - db "SUPERPOWER@" - db 4,11 - dw 1550 - TX_FAR _MachokeDexEntry - db "@" - -MrMimeDexEntry: ; 40885 (10:4885) - db "BARRIER@" - db 4,3 - dw 1200 - TX_FAR _MrMimeDexEntry - db "@" - -HitmonleeDexEntry: ; 40896 (10:4896) - db "KICKING@" - db 4,11 - dw 1100 - TX_FAR _HitmonleeDexEntry - db "@" - -HitmonchanDexEntry: ; 408a7 (10:48a7) - db "PUNCHING@" - db 4,7 - dw 1110 - TX_FAR _HitmonchanDexEntry - db "@" - -ArbokDexEntry: ; 408b9 (10:48b9) - db "COBRA@" - db 11,6 - dw 1430 - TX_FAR _ArbokDexEntry - db "@" - -ParasectDexEntry: ; 408c8 (10:48c8) - db "MUSHROOM@" - db 3,3 - dw 650 - TX_FAR _ParasectDexEntry - db "@" - -PsyduckDexEntry: ; 408da (10:48da) - db "DUCK@" - db 2,7 - dw 430 - TX_FAR _PsyduckDexEntry - db "@" - -DrowzeeDexEntry: ; 408e8 (10:48e8) - db "HYPNOSIS@" - db 3,3 - dw 710 - TX_FAR _DrowzeeDexEntry - db "@" - -GolemDexEntry: ; 408fa (10:48fa) - db "MEGATON@" - db 4,7 - dw 6620 - TX_FAR _GolemDexEntry - db "@" - -MagmarDexEntry: ; 4090b (10:490b) - db "SPITFIRE@" - db 4,3 - dw 980 - TX_FAR _MagmarDexEntry - db "@" - -ElectabuzzDexEntry: ; 4091d (10:491d) - db "ELECTRIC@" - db 3,7 - dw 660 - TX_FAR _ElectabuzzDexEntry - db "@" - -MagnetonDexEntry: ; 4092f (10:492f) - db "MAGNET@" - db 3,3 - dw 1320 - TX_FAR _MagnetonDexEntry - db "@" - -KoffingDexEntry: ; 4093f (10:493f) - db "POISON GAS@" - db 2,0 - dw 20 - TX_FAR _KoffingDexEntry - db "@" - -MankeyDexEntry: ; 40953 (10:4953) - db "PIG MONKEY@" - db 1,8 - dw 620 - TX_FAR _MankeyDexEntry - db "@" - -SeelDexEntry: ; 40967 (10:4967) - db "SEA LION@" - db 3,7 - dw 1980 - TX_FAR _SeelDexEntry - db "@" - -DiglettDexEntry: ; 40979 (10:4979) - db "MOLE@" - db 0,8 - dw 20 - TX_FAR _DiglettDexEntry - db "@" - -TaurosDexEntry: ; 40987 (10:4987) - db "WILD BULL@" - db 4,7 - dw 1950 - TX_FAR _TaurosDexEntry - db "@" - -FarfetchdDexEntry: ; 4099a (10:499a) - db "WILD DUCK@" - db 2,7 - dw 330 - TX_FAR _FarfetchdDexEntry - db "@" - -VenonatDexEntry: ; 409ad (10:49ad) - db "INSECT@" - db 3,3 - dw 660 - TX_FAR _VenonatDexEntry - db "@" - -DragoniteDexEntry: ; 409bd (10:49bd) - db "DRAGON@" - db 7,3 - dw 4630 - TX_FAR _DragoniteDexEntry - db "@" - -DoduoDexEntry: ; 409cd (10:49cd) - db "TWIN BIRD@" - db 4,7 - dw 860 - TX_FAR _DoduoDexEntry - db "@" - -PoliwagDexEntry: ; 409e0 (10:49e0) - db "TADPOLE@" - db 2,0 - dw 270 - TX_FAR _PoliwagDexEntry - db "@" - -JynxDexEntry: ; 409f1 (10:49f1) - db "HUMANSHAPE@" - db 4,7 - dw 900 - TX_FAR _JynxDexEntry - db "@" - -MoltresDexEntry: ; 40a05 (10:4a05) - db "FLAME@" - db 6,7 - dw 1320 - TX_FAR _MoltresDexEntry - db "@" - -ArticunoDexEntry: ; 40a14 (10:4a14) - db "FREEZE@" - db 5,7 - dw 1220 - TX_FAR _ArticunoDexEntry - db "@" - -ZapdosDexEntry: ; 40a24 (10:4a24) - db "ELECTRIC@" - db 5,3 - dw 1160 - TX_FAR _ZapdosDexEntry - db "@" - -DittoDexEntry: ; 40a36 (10:4a36) - db "TRANSFORM@" - db 1,0 - dw 90 - TX_FAR _DittoDexEntry - db "@" - -MeowthDexEntry: ; 40a49 (10:4a49) - db "SCRATCHCAT@" - db 1,4 - dw 90 - TX_FAR _MeowthDexEntry - db "@" - -KrabbyDexEntry: ; 40a5d (10:4a5d) - db "RIVER CRAB@" - db 1,4 - dw 140 - TX_FAR _KrabbyDexEntry - db "@" - -VulpixDexEntry: ; 40a71 (10:4a71) - db "FOX@" - db 2,0 - dw 220 - TX_FAR _VulpixDexEntry - db "@" - -NinetalesDexEntry: ; 40a7e (10:4a7e) - db "FOX@" - db 3,7 - dw 440 - TX_FAR _NinetalesDexEntry - db "@" - -PikachuDexEntry: ; 40a8b (10:4a8b) - db "MOUSE@" - db 1,4 - dw 130 - TX_FAR _PikachuDexEntry - db "@" - -RaichuDexEntry: ; 40a9a (10:4a9a) - db "MOUSE@" - db 2,7 - dw 660 - TX_FAR _RaichuDexEntry - db "@" - -DratiniDexEntry: ; 40aa9 (10:4aa9) - db "DRAGON@" - db 5,11 - dw 70 - TX_FAR _DratiniDexEntry - db "@" - -DragonairDexEntry: ; 40ab9 (10:4ab9) - db "DRAGON@" - db 13,1 - dw 360 - TX_FAR _DragonairDexEntry - db "@" - -KabutoDexEntry: ; 40ac9 (10:4ac9) - db "SHELLFISH@" - db 1,8 - dw 250 - TX_FAR _KabutoDexEntry - db "@" - -KabutopsDexEntry: ; 40adc (10:4adc) - db "SHELLFISH@" - db 4,3 - dw 890 - TX_FAR _KabutopsDexEntry - db "@" - -HorseaDexEntry: ; 40aef (10:4aef) - db "DRAGON@" - db 1,4 - dw 180 - TX_FAR _HorseaDexEntry - db "@" - -SeadraDexEntry: ; 40aff (10:4aff) - db "DRAGON@" - db 3,11 - dw 550 - TX_FAR _SeadraDexEntry - db "@" - -SandshrewDexEntry: ; 40b0f (10:4b0f) - db "MOUSE@" - db 2,0 - dw 260 - TX_FAR _SandshrewDexEntry - db "@" - -SandslashDexEntry: ; 40b1e (10:4b1e) - db "MOUSE@" - db 3,3 - dw 650 - TX_FAR _SandslashDexEntry - db "@" - -OmanyteDexEntry: ; 40b2d (10:4b2d) - db "SPIRAL@" - db 1,4 - dw 170 - TX_FAR _OmanyteDexEntry - db "@" - -OmastarDexEntry: ; 40b3d (10:4b3d) - db "SPIRAL@" - db 3,3 - dw 770 - TX_FAR _OmastarDexEntry - db "@" - -JigglypuffDexEntry: ; 40b4d (10:4b4d) - db "BALLOON@" - db 1,8 - dw 120 - TX_FAR _JigglypuffDexEntry - db "@" - -WigglytuffDexEntry: ; 40b5e (10:4b5e) - db "BALLOON@" - db 3,3 - dw 260 - TX_FAR _WigglytuffDexEntry - db "@" - -EeveeDexEntry: ; 40b6f (10:4b6f) - db "EVOLUTION@" - db 1,0 - dw 140 - TX_FAR _EeveeDexEntry - db "@" - -FlareonDexEntry: ; 40b82 (10:4b82) - db "FLAME@" - db 2,11 - dw 550 - TX_FAR _FlareonDexEntry - db "@" - -JolteonDexEntry: ; 40b91 (10:4b91) - db "LIGHTNING@" - db 2,7 - dw 540 - TX_FAR _JolteonDexEntry - db "@" - -VaporeonDexEntry: ; 40ba4 (10:4ba4) - db "BUBBLE JET@" - db 3,3 - dw 640 - TX_FAR _VaporeonDexEntry - db "@" - -MachopDexEntry: ; 40bb8 (10:4bb8) - db "SUPERPOWER@" - db 2,7 - dw 430 - TX_FAR _MachopDexEntry - db "@" - -ZubatDexEntry: ; 40bcc (10:4bcc) - db "BAT@" - db 2,7 - dw 170 - TX_FAR _ZubatDexEntry - db "@" - -EkansDexEntry: ; 40bd9 (10:4bd9) - db "SNAKE@" - db 6,7 - dw 150 - TX_FAR _EkansDexEntry - db "@" - -ParasDexEntry: ; 40be8 (10:4be8) - db "MUSHROOM@" - db 1,0 - dw 120 - TX_FAR _ParasDexEntry - db "@" - -PoliwhirlDexEntry: ; 40bfa (10:4bfa) - db "TADPOLE@" - db 3,3 - dw 440 - TX_FAR _PoliwhirlDexEntry - db "@" - -PoliwrathDexEntry: ; 40c0b (10:4c0b) - db "TADPOLE@" - db 4,3 - dw 1190 - TX_FAR _PoliwrathDexEntry - db "@" - -WeedleDexEntry: ; 40c1c (10:4c1c) - db "HAIRY BUG@" - db 1,0 - dw 70 - TX_FAR _WeedleDexEntry - db "@" - -KakunaDexEntry: ; 40c2f (10:4c2f) - db "COCOON@" - db 2,0 - dw 220 - TX_FAR _KakunaDexEntry - db "@" - -BeedrillDexEntry: ; 40c3f (10:4c3f) - db "POISON BEE@" - db 3,3 - dw 650 - TX_FAR _BeedrillDexEntry - db "@" - -DodrioDexEntry: ; 40c53 (10:4c53) - db "TRIPLEBIRD@" - db 5,11 - dw 1880 - TX_FAR _DodrioDexEntry - db "@" - -PrimeapeDexEntry: ; 40c67 (10:4c67) - db "PIG MONKEY@" - db 3,3 - dw 710 - TX_FAR _PrimeapeDexEntry - db "@" - -DugtrioDexEntry: ; 40c7b (10:4c7b) - db "MOLE@" - db 2,4 - dw 730 - TX_FAR _DugtrioDexEntry - db "@" - -VenomothDexEntry: ; 40c89 (10:4c89) - db "POISONMOTH@" - db 4,11 - dw 280 - TX_FAR _VenomothDexEntry - db "@" - -DewgongDexEntry: ; 40c9d (10:4c9d) - db "SEA LION@" - db 5,7 - dw 2650 - TX_FAR _DewgongDexEntry - db "@" - -CaterpieDexEntry: ; 40caf (10:4caf) - db "WORM@" - db 1,0 - dw 60 - TX_FAR _CaterpieDexEntry - db "@" - -MetapodDexEntry: ; 40cbd (10:4cbd) - db "COCOON@" - db 2,4 - dw 220 - TX_FAR _MetapodDexEntry - db "@" - -ButterfreeDexEntry: ; 40ccd (10:4ccd) - db "BUTTERFLY@" - db 3,7 - dw 710 - TX_FAR _ButterfreeDexEntry - db "@" - -MachampDexEntry: ; 40ce0 (10:4ce0) - db "SUPERPOWER@" - db 5,3 - dw 2870 - TX_FAR _MachampDexEntry - db "@" - -GolduckDexEntry: ; 40cf4 (10:4cf4) - db "DUCK@" - db 5,7 - dw 1690 - TX_FAR _GolduckDexEntry - db "@" - -HypnoDexEntry: ; 40d02 (10:4d02) - db "HYPNOSIS@" - db 5,3 - dw 1670 - TX_FAR _HypnoDexEntry - db "@" - -GolbatDexEntry: ; 40d14 (10:4d14) - db "BAT@" - db 5,3 - dw 1210 - TX_FAR _GolbatDexEntry - db "@" - -MewtwoDexEntry: ; 40d21 (10:4d21) - db "GENETIC@" - db 6,7 - dw 2690 - TX_FAR _MewtwoDexEntry - db "@" - -SnorlaxDexEntry: ; 40d32 (10:4d32) - db "SLEEPING@" - db 6,11 - dw 10140 - TX_FAR _SnorlaxDexEntry - db "@" - -MagikarpDexEntry: ; 40d44 (10:4d44) - db "FISH@" - db 2,11 - dw 220 - TX_FAR _MagikarpDexEntry - db "@" - -MukDexEntry: ; 40d52 (10:4d52) - db "SLUDGE@" - db 3,11 - dw 660 - TX_FAR _MukDexEntry - db "@" - -KinglerDexEntry: ; 40d62 (10:4d62) - db "PINCER@" - db 4,3 - dw 1320 - TX_FAR _KinglerDexEntry - db "@" - -CloysterDexEntry: ; 40d72 (10:4d72) - db "BIVALVE@" - db 4,11 - dw 2920 - TX_FAR _CloysterDexEntry - db "@" - -ElectrodeDexEntry: ; 40d83 (10:4d83) - db "BALL@" - db 3,11 - dw 1470 - TX_FAR _ElectrodeDexEntry - db "@" - -ClefableDexEntry: ; 40d91 (10:4d91) - db "FAIRY@" - db 4,3 - dw 880 - TX_FAR _ClefableDexEntry - db "@" - -WeezingDexEntry: ; 40da0 (10:4da0) - db "POISON GAS@" - db 3,11 - dw 210 - TX_FAR _WeezingDexEntry - db "@" - -PersianDexEntry: ; 40db4 (10:4db4) - db "CLASSY CAT@" - db 3,3 - dw 710 - TX_FAR _PersianDexEntry - db "@" - -MarowakDexEntry: ; 40dc8 (10:4dc8) - db "BONEKEEPER@" - db 3,3 - dw 990 - TX_FAR _MarowakDexEntry - db "@" - -HaunterDexEntry: ; 40ddc (10:4ddc) - db "GAS@" - db 5,3 - dw 2 - TX_FAR _HaunterDexEntry - db "@" - -AbraDexEntry: ; 40de9 (10:4de9) - db "PSI@" - db 2,11 - dw 430 - TX_FAR _AbraDexEntry - db "@" - -AlakazamDexEntry: ; 40df6 (10:4df6) - db "PSI@" - db 4,11 - dw 1060 - TX_FAR _AlakazamDexEntry - db "@" - -PidgeottoDexEntry: ; 40e03 (10:4e03) - db "BIRD@" - db 3,7 - dw 660 - TX_FAR _PidgeottoDexEntry - db "@" - -PidgeotDexEntry: ; 40e11 (10:4e11) - db "BIRD@" - db 4,11 - dw 870 - TX_FAR _PidgeotDexEntry - db "@" - -StarmieDexEntry: ; 40e1f (10:4e1f) - db "MYSTERIOUS@" - db 3,7 - dw 1760 - TX_FAR _StarmieDexEntry - db "@" - -BulbasaurDexEntry: ; 40e33 (10:4e33) - db "SEED@" - db 2,4 - dw 150 - TX_FAR _BulbasaurDexEntry - db "@" - -VenusaurDexEntry: ; 40e41 (10:4e41) - db "SEED@" - db 6,7 - dw 2210 - TX_FAR _VenusaurDexEntry - db "@" - -TentacruelDexEntry: ; 40e4f (10:4e4f) - db "JELLYFISH@" - db 5,3 - dw 1210 - TX_FAR _TentacruelDexEntry - db "@" - -GoldeenDexEntry: ; 40e62 (10:4e62) - db "GOLDFISH@" - db 2,0 - dw 330 - TX_FAR _GoldeenDexEntry - db "@" - -SeakingDexEntry: ; 40e74 (10:4e74) - db "GOLDFISH@" - db 4,3 - dw 860 - TX_FAR _SeakingDexEntry - db "@" - -PonytaDexEntry: ; 40e86 (10:4e86) - db "FIRE HORSE@" - db 3,3 - dw 660 - TX_FAR _PonytaDexEntry - db "@" - -RapidashDexEntry: ; 40e9a (10:4e9a) - db "FIRE HORSE@" - db 5,7 - dw 2090 - TX_FAR _RapidashDexEntry - db "@" - -RattataDexEntry: ; 40eae (10:4eae) - db "RAT@" - db 1,0 - dw 80 - TX_FAR _RattataDexEntry - db "@" - -RaticateDexEntry: ; 40ebb (10:4ebb) - db "RAT@" - db 2,4 - dw 410 - TX_FAR _RaticateDexEntry - db "@" - -NidorinoDexEntry: ; 40ec8 (10:4ec8) - db "POISON PIN@" - db 2,11 - dw 430 - TX_FAR _NidorinoDexEntry - db "@" - -NidorinaDexEntry: ; 40edc (10:4edc) - db "POISON PIN@" - db 2,7 - dw 440 - TX_FAR _NidorinaDexEntry - db "@" - -GeodudeDexEntry: ; 40ef0 (10:4ef0) - db "ROCK@" - db 1,4 - dw 440 - TX_FAR _GeodudeDexEntry - db "@" - -PorygonDexEntry: ; 40efe (10:4efe) - db "VIRTUAL@" - db 2,7 - dw 800 - TX_FAR _PorygonDexEntry - db "@" - -AerodactylDexEntry: ; 40f0f (10:4f0f) - db "FOSSIL@" - db 5,11 - dw 1300 - TX_FAR _AerodactylDexEntry - db "@" - -MagnemiteDexEntry: ; 40f1f (10:4f1f) - db "MAGNET@" - db 1,0 - dw 130 - TX_FAR _MagnemiteDexEntry - db "@" - -CharmanderDexEntry: ; 40f2f (10:4f2f) - db "LIZARD@" - db 2,0 - dw 190 - TX_FAR _CharmanderDexEntry - db "@" - -SquirtleDexEntry: ; 40f3f (10:4f3f) - db "TINYTURTLE@" - db 1,8 - dw 200 - TX_FAR _SquirtleDexEntry - db "@" - -CharmeleonDexEntry: ; 40f53 (10:4f53) - db "FLAME@" - db 3,7 - dw 420 - TX_FAR _CharmeleonDexEntry - db "@" - -WartortleDexEntry: ; 40f62 (10:4f62) - db "TURTLE@" - db 3,3 - dw 500 - TX_FAR _WartortleDexEntry - db "@" - -CharizardDexEntry: ; 40f72 (10:4f72) - db "FLAME@" - db 5,7 - dw 2000 - TX_FAR _CharizardDexEntry - db "@" - -OddishDexEntry: ; 40f81 (10:4f81) - db "WEED@" - db 1,8 - dw 120 - TX_FAR _OddishDexEntry - db "@" - -GloomDexEntry: ; 40f8f (10:4f8f) - db "WEED@" - db 2,7 - dw 190 - TX_FAR _GloomDexEntry - db "@" - -VileplumeDexEntry: ; 40f9d (10:4f9d) - db "FLOWER@" - db 3,11 - dw 410 - TX_FAR _VileplumeDexEntry - db "@" - -BellsproutDexEntry: ; 40fad (10:4fad) - db "FLOWER@" - db 2,4 - dw 90 - TX_FAR _BellsproutDexEntry - db "@" - -WeepinbellDexEntry: ; 40fbd (10:4fbd) - db "FLYCATCHER@" - db 3,3 - dw 140 - TX_FAR _WeepinbellDexEntry - db "@" - -VictreebelDexEntry: ; 40fd1 (10:4fd1) - db "FLYCATCHER@" - db 5,7 - dw 340 - TX_FAR _VictreebelDexEntry - db "@" - -MissingNoDexEntry: ; 40fe5 (10:4fe5) - db "???@" - db 10 ; 1.0 m - db 100 ; 10.0 kg - db 0,"コメント さくせいちゅう@" ; コメント作成中 (Comment to be written) +INCLUDE "data/pokedex_entries.asm" PokedexToIndex: ; 40ff9 (10:4ff9) ; converts the Pokédex number at $D11E to an index @@ -66586,197 +42926,7 @@ IndexToPokedex: ; 41010 (10:5010) pop bc ret -PokedexOrder: ; 41024 (10:5024) - db DEX_RHYDON - db DEX_KANGASKHAN - db DEX_NIDORAN_M - db DEX_CLEFAIRY - db DEX_SPEAROW - db DEX_VOLTORB - db DEX_NIDOKING - db DEX_SLOWBRO - db DEX_IVYSAUR - db DEX_EXEGGUTOR - db DEX_LICKITUNG - db DEX_EXEGGCUTE - db DEX_GRIMER - db DEX_GENGAR - db DEX_NIDORAN_F - db DEX_NIDOQUEEN - db DEX_CUBONE - db DEX_RHYHORN - db DEX_LAPRAS - db DEX_ARCANINE - db DEX_MEW - db DEX_GYARADOS - db DEX_SHELLDER - db DEX_TENTACOOL - db DEX_GASTLY - db DEX_SCYTHER - db DEX_STARYU - db DEX_BLASTOISE - db DEX_PINSIR - db DEX_TANGELA - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db DEX_GROWLITHE - db DEX_ONIX - db DEX_FEAROW - db DEX_PIDGEY - db DEX_SLOWPOKE - db DEX_KADABRA - db DEX_GRAVELER - db DEX_CHANSEY - db DEX_MACHOKE - db DEX_MR_MIME - db DEX_HITMONLEE - db DEX_HITMONCHAN - db DEX_ARBOK - db DEX_PARASECT - db DEX_PSYDUCK - db DEX_DROWZEE - db DEX_GOLEM - db 0 ; MISSINGNO. - db DEX_MAGMAR - db 0 ; MISSINGNO. - db DEX_ELECTABUZZ - db DEX_MAGNETON - db DEX_KOFFING - db 0 ; MISSINGNO. - db DEX_MANKEY - db DEX_SEEL - db DEX_DIGLETT - db DEX_TAUROS - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db DEX_FARFETCH_D - db DEX_VENONAT - db DEX_DRAGONITE - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db DEX_DODUO - db DEX_POLIWAG - db DEX_JYNX - db DEX_MOLTRES - db DEX_ARTICUNO - db DEX_ZAPDOS - db DEX_DITTO - db DEX_MEOWTH - db DEX_KRABBY - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db DEX_VULPIX - db DEX_NINETALES - db DEX_PIKACHU - db DEX_RAICHU - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db DEX_DRATINI - db DEX_DRAGONAIR - db DEX_KABUTO - db DEX_KABUTOPS - db DEX_HORSEA - db DEX_SEADRA - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db DEX_SANDSHREW - db DEX_SANDSLASH - db DEX_OMANYTE - db DEX_OMASTAR - db DEX_JIGGLYPUFF - db DEX_WIGGLYTUFF - db DEX_EEVEE - db DEX_FLAREON - db DEX_JOLTEON - db DEX_VAPOREON - db DEX_MACHOP - db DEX_ZUBAT - db DEX_EKANS - db DEX_PARAS - db DEX_POLIWHIRL - db DEX_POLIWRATH - db DEX_WEEDLE - db DEX_KAKUNA - db DEX_BEEDRILL - db 0 ; MISSINGNO. - db DEX_DODRIO - db DEX_PRIMEAPE - db DEX_DUGTRIO - db DEX_VENOMOTH - db DEX_DEWGONG - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db DEX_CATERPIE - db DEX_METAPOD - db DEX_BUTTERFREE - db DEX_MACHAMP - db 0 ; MISSINGNO. - db DEX_GOLDUCK - db DEX_HYPNO - db DEX_GOLBAT - db DEX_MEWTWO - db DEX_SNORLAX - db DEX_MAGIKARP - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db DEX_MUK - db 0 ; MISSINGNO. - db DEX_KINGLER - db DEX_CLOYSTER - db 0 ; MISSINGNO. - db DEX_ELECTRODE - db DEX_CLEFABLE - db DEX_WEEZING - db DEX_PERSIAN - db DEX_MAROWAK - db 0 ; MISSINGNO. - db DEX_HAUNTER - db DEX_ABRA - db DEX_ALAKAZAM - db DEX_PIDGEOTTO - db DEX_PIDGEOT - db DEX_STARMIE - db DEX_BULBASAUR - db DEX_VENUSAUR - db DEX_TENTACRUEL - db 0 ; MISSINGNO. - db DEX_GOLDEEN - db DEX_SEAKING - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db DEX_PONYTA - db DEX_RAPIDASH - db DEX_RATTATA - db DEX_RATICATE - db DEX_NIDORINO - db DEX_NIDORINA - db DEX_GEODUDE - db DEX_PORYGON - db DEX_AERODACTYL - db 0 ; MISSINGNO. - db DEX_MAGNEMITE - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db DEX_CHARMANDER - db DEX_SQUIRTLE - db DEX_CHARMELEON - db DEX_WARTORTLE - db DEX_CHARIZARD - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db DEX_ODDISH - db DEX_GLOOM - db DEX_VILEPLUME - db DEX_BELLSPROUT - db DEX_WEEPINBELL - db DEX_VICTREEBEL +INCLUDE "data/pokedex_order.asm" Func_410e2: ; 410e2 (10:50e2) ld a, [wWhichTrade] ; $cd3d @@ -66840,7 +42990,7 @@ PointerIDs_41149: ; 41149 (10:5149) db $00,$08,$0D,$0B,$10,$05,$10,$08,$02,$04,$0F,$01,$02,$03,$10,$06,$10,$07,$08,$09,$0E,$FF PointerTable_4115f: ; 4115f (10:515f) - dw Func_411a1 + dw LoadTradingGFXAndMonNames dw Func_41245 dw Func_41298 dw Func_412d2 @@ -66880,7 +43030,7 @@ Func_41196: ; 41196 (10:5196) ld a, $7f jp FillMemory -Func_411a1: ; 411a1 (10:51a1) +LoadTradingGFXAndMonNames: ; 411a1 (10:51a1) call Func_41196 call DisableLCD ld hl, TradingAnimationGraphics ; $69be @@ -67474,72 +43624,72 @@ Func_415df: ; 415df (10:55df) ret Func_415fe: ; 415fe (10:55fe) - ld hl, UnnamedText_4160c ; $560c + ld hl, TradeWentToText call PrintText ld c, $c8 call DelayFrames jp Func_415df -UnnamedText_4160c: ; 4160c (10:560c) - TX_FAR _UnnamedText_4160c +TradeWentToText: ; 4160c (10:560c) + TX_FAR _TradeWentToText db "@" Func_41611: ; 41611 (10:5611) - ld hl, UnnamedText_41623 ; $5623 + ld hl, TradeForText call PrintText call Delay50 - ld hl, UnnamedText_41628 ; $5628 + ld hl, TradeSendsText call PrintText jp Delay50 -UnnamedText_41623: ; 41623 (10:5623) - TX_FAR _UnnamedText_41623 +TradeForText: ; 41623 (10:5623) + TX_FAR _TradeForText db "@" -UnnamedText_41628: ; 41628 (10:5628) - TX_FAR _UnnamedText_41628 +TradeSendsText: ; 41628 (10:5628) + TX_FAR _TradeSendsText db "@" Func_4162d: ; 4162d (10:562d) - ld hl, UnnamedText_41642 ; $5642 + ld hl, TradeWavesFarewellText call PrintText call Delay50 - ld hl, UnnamedText_41647 ; $5647 + ld hl, TradeTransferredText call PrintText call Delay50 jp Func_415df -UnnamedText_41642: ; 41642 (10:5642) - TX_FAR _UnnamedText_41642 +TradeWavesFarewellText: ; 41642 (10:5642) + TX_FAR _TradeWavesFarewellText db "@" -UnnamedText_41647: ; 41647 (10:5647) - TX_FAR _UnnamedText_41647 +TradeTransferredText: ; 41647 (10:5647) + TX_FAR _TradeTransferredText db "@" Func_4164c: ; 4164c (10:564c) - ld hl, UnnamedText_41655 ; $5655 + ld hl, TradeTakeCareText call PrintText jp Delay50 -UnnamedText_41655: ; 41655 (10:5655) - TX_FAR _UnnamedText_41655 +TradeTakeCareText: ; 41655 (10:5655) + TX_FAR _TradeTakeCareText db "@" Func_4165a: ; 4165a (10:565a) - ld hl, UnnamedText_4166c + ld hl, TradeWillTradeText call PrintText call Delay50 - ld hl, UnnamedText_41671 + ld hl, TradeforText call PrintText jp Delay50 -UnnamedText_4166c: ; 4166c (10:566c) - TX_FAR _UnnamedText_4166c +TradeWillTradeText: ; 4166c (10:566c) + TX_FAR _TradeWillTradeText db "@" -UnnamedText_41671: ; 41671 (10:5671) - TX_FAR _UnnamedText_41671 +TradeforText: ; 41671 (10:5671) + TX_FAR _TradeforText db "@" Func_41676: ; 41676 (10:5676) @@ -67824,7 +43974,7 @@ Func_41849: ; 41849 (10:5849) ld a, b jp PlaySound -Func_41852: ; 41852 (10:5852) +LoadIntroGraphics: ; 41852 (10:5852) ld hl, FightIntroBackMon ; $5a99 ld de, $9000 ld bc, $600 @@ -67859,14 +44009,14 @@ Func_4188a: ; 4188a (10:588a) xor a ld [W_CUROPPONENT], a ; $d059 call Func_418e9 - call Func_41852 + call LoadIntroGraphics call EnableLCD ld hl, rLCDC ; $ff40 res 5, [hl] set 3, [hl] ld c, $40 call DelayFrames - callba Func_70044 + callba AnimateShootingStar push af pop af jr c, .asm_418d0 @@ -67907,7 +44057,7 @@ IntroNidorinoAnimation0: ; 4190d (10:590d) db $50 IntroNidorinoAnimation1: ; 41910 (10:5910) -; This is a sequence of pixel movements for part of the Nidorino animation. This +; This is a sequence of pixel movements for part of the Nidorino animation. This ; list describes how Nidorino should hop. ; First byte is y movement, second byte is x movement db 0, 0 @@ -67915,7 +44065,7 @@ IntroNidorinoAnimation1: ; 41910 (10:5910) db -1, 2 db 1, 2 db 2, 2 - db $50 ; list terminator + db $50 ; list terminator IntroNidorinoAnimation2: ; 4191b (10:591b) ; This is a sequence of pixel movements for part of the Nidorino animation. @@ -67935,7 +44085,7 @@ IntroNidorinoAnimation3: ; 41926 (10:5926) db -8, 6 db 8, 6 db 12, 6 - db $50 ; list terminator + db $50 ; list terminator IntroNidorinoAnimation4: ; 41931 (10:5931) ; This is a sequence of pixel movements for part of the Nidorino animation. @@ -67973,7 +44123,7 @@ IntroNidorinoAnimation7: ; 41950 (10:5950) db -7, -14 db -6, -12 db -4, -10 - db $50 ; list terminator + db $50 ; list terminator GameFreakIntro: ; 41959 (10:5959) INCBIN "gfx/gamefreak_intro.h8.2bpp" @@ -68063,47 +44213,9 @@ OTString67E5: ; 427e5 (10:67e5) SECTION "bank11",ROMX,BANK[$11] -LavenderTown_h: ; 0x44000 to 0x4402d (45 bytes) (bank=11) (id=4) - db OVERWORLD ; tileset - db LAVENDER_TOWN_HEIGHT, LAVENDER_TOWN_WIDTH ; dimensions (y, x) - dw LavenderTownBlocks, LavenderTownTextPointers, LavenderTownScript ; blocks, texts, scripts - db NORTH | SOUTH | WEST ; connections - NORTH_MAP_CONNECTION ROUTE_10, ROUTE_10_WIDTH, ROUTE_10_HEIGHT, 0, 0, ROUTE_10_WIDTH, Route10Blocks - SOUTH_MAP_CONNECTION ROUTE_12, ROUTE_12_WIDTH, 0, 0, ROUTE_12_WIDTH, Route12Blocks, LAVENDER_TOWN_WIDTH, LAVENDER_TOWN_HEIGHT - WEST_MAP_CONNECTION ROUTE_8, ROUTE_8_WIDTH, 0, 0, ROUTE_8_HEIGHT, Route8Blocks, LAVENDER_TOWN_WIDTH - dw LavenderTownObject ; objects - -LavenderTownObject: ; 0x4402d (size=88) - db $2c ; border tile - - db $6 ; warps - db $5, $3, $0, LAVENDER_POKECENTER - db $5, $e, $0, POKEMONTOWER_1 - db $9, $7, $0, LAVENDER_HOUSE_1 - db $d, $f, $0, LAVENDER_MART - db $d, $3, $0, LAVENDER_HOUSE_2 - db $d, $7, $0, NAME_RATERS_HOUSE - - db $6 ; signs - db $9, $b, $4 ; LavenderTownText4 - db $3, $9, $5 ; LavenderTownText5 - db $d, $10, $6 ; MartSignText - db $5, $4, $7 ; PokeCenterSignText - db $9, $5, $8 ; LavenderTownText8 - db $7, $11, $9 ; LavenderTownText9 - - db $3 ; people - db SPRITE_LITTLE_GIRL, $9 + 4, $f + 4, $fe, $0, $1 ; person - db SPRITE_BLACK_HAIR_BOY_1, $a + 4, $9 + 4, $ff, $ff, $2 ; person - db SPRITE_BLACK_HAIR_BOY_2, $7 + 4, $8 + 4, $fe, $2, $3 ; person - - ; warp-to - EVENT_DISP LAVENDER_TOWN_WIDTH, $5, $3 ; LAVENDER_POKECENTER - EVENT_DISP LAVENDER_TOWN_WIDTH, $5, $e ; POKEMONTOWER_1 - EVENT_DISP LAVENDER_TOWN_WIDTH, $9, $7 ; LAVENDER_HOUSE_1 - EVENT_DISP LAVENDER_TOWN_WIDTH, $d, $f ; LAVENDER_MART - EVENT_DISP LAVENDER_TOWN_WIDTH, $d, $3 ; LAVENDER_HOUSE_2 - EVENT_DISP LAVENDER_TOWN_WIDTH, $d, $7 ; NAME_RATERS_HOUSE +INCLUDE "data/mapHeaders/lavendertown.asm" + +INCLUDE "data/mapObjects/lavendertown.asm" LavenderTownBlocks: ; 44085 (11:4085) INCBIN "maps/lavendertown.blk" @@ -68117,69 +44229,7 @@ SafariZoneRestHouse3Blocks: ; 440fb (11:40fb) SafariZoneRestHouse4Blocks: ; 440fb (11:40fb) INCBIN "maps/safarizoneresthouse1.blk" -LavenderTownScript: ; 4410b (11:410b) - jp EnableAutoTextBoxDrawing - -LavenderTownTextPointers: ; 4410e (11:410e) - dw LavenderTownText1 - dw LavenderTownText2 - dw LavenderTownText3 - dw LavenderTownText4 - dw LavenderTownText5 - dw MartSignText - dw PokeCenterSignText - dw LavenderTownText8 - dw LavenderTownText9 - -LavenderTownText1: ; 44120 (11:4120) - db $08 ; asm - ld hl, UnnamedText_4413c - call PrintText - call YesNoChoice - ld a, [$cc26] - and a - ld hl, UnnamedText_44146 - jr nz, .asm_40831 ; 0x44131 - ld hl, UnnamedText_44141 -.asm_40831 ; 0x44136 - call PrintText - jp TextScriptEnd - -UnnamedText_4413c: ; 4413c (11:413c) - TX_FAR _UnnamedText_4413c - db "@" - -UnnamedText_44141: ; 44141 (11:4141) - TX_FAR _UnnamedText_44141 - db "@" - -UnnamedText_44146: ; 44146 (11:4146) - TX_FAR _UnnamedText_44146 - db "@" - -LavenderTownText2: ; 4414b (11:414b) - TX_FAR _LavenderTownText2 - db "@" - -LavenderTownText3: ; 44150 (11:4150) - TX_FAR _LavenderTownText3 - db "@" - -LavenderTownText4: ; 44155 (11:4155) - TX_FAR _LavenderTownText4 - db "@" - -LavenderTownText5: ; 4415a (11:415a) - TX_FAR _LavenderTownText5 - db "@" - -LavenderTownText8: ; 4415f (11:415f) - TX_FAR _LavenderTownText8 - db "@" - -LavenderTownText9: ; 44164 (11:4164) - TX_FAR _LavenderTownText9 - db "@" +INCLUDE "scripts/lavendertown.asm" DisplayDexRating: ; 44169 (11:4169) ld hl, wPokedexSeen @@ -68212,7 +44262,7 @@ DisplayDexRating: ; 44169 (11:4169) ld [$D747], a jr nz, .label3 push hl - ld hl, UnnamedText_441cc + ld hl, PokedexRatingText_441cc call PrintText pop hl call PrintText @@ -68237,3806 +44287,323 @@ DisplayDexRating: ; 44169 (11:4169) ld [de], a ret -UnnamedText_441cc: ; 441cc (11:41cc) - TX_FAR _UnnamedText_441cc +PokedexRatingText_441cc: ; 441cc (11:41cc) + TX_FAR _OaksLabText_441cc db "@" DexRatingsTable: ; 441d1 (11:41d1) db 10 - dw UnnamedText_44201 + dw PokedexRatingText_44201 db 20 - dw UnnamedText_44206 + dw PokedexRatingText_44206 db 30 - dw UnnamedText_4420b + dw PokedexRatingText_4420b db 40 - dw UnnamedText_44210 + dw PokedexRatingText_44210 db 50 - dw UnnamedText_44215 + dw PokedexRatingText_44215 db 60 - dw UnnamedText_4421a + dw PokedexRatingText_4421a db 70 - dw UnnamedText_4421f + dw PokedexRatingText_4421f db 80 - dw UnnamedText_44224 + dw PokedexRatingText_44224 db 90 - dw UnnamedText_44229 + dw PokedexRatingText_44229 db 100 - dw UnnamedText_4422e + dw PokedexRatingText_4422e db 110 - dw UnnamedText_44233 + dw PokedexRatingText_44233 db 120 - dw UnnamedText_44238 + dw PokedexRatingText_44238 db 130 - dw UnnamedText_4423d + dw PokedexRatingText_4423d db 140 - dw UnnamedText_44242 + dw PokedexRatingText_44242 db 150 - dw UnnamedText_44247 + dw PokedexRatingText_44247 db 152 - dw UnnamedText_4424c - -UnnamedText_44201: ; 44201 (11:4201) - TX_FAR _UnnamedText_44201 - db "@" + dw PokedexRatingText_4424c -UnnamedText_44206: ; 44206 (11:4206) - TX_FAR _UnnamedText_44206 +PokedexRatingText_44201: ; 44201 (11:4201) + TX_FAR _OaksLabText_44201 db "@" -UnnamedText_4420b: ; 4420b (11:420b) - TX_FAR _UnnamedText_4420b +PokedexRatingText_44206: ; 44206 (11:4206) + TX_FAR _OaksLabText_44206 db "@" -UnnamedText_44210: ; 44210 (11:4210) - TX_FAR _UnnamedText_44210 +PokedexRatingText_4420b: ; 4420b (11:420b) + TX_FAR _OaksLabText_4420b db "@" -UnnamedText_44215: ; 44215 (11:4215) - TX_FAR _UnnamedText_44215 +PokedexRatingText_44210: ; 44210 (11:4210) + TX_FAR _OaksLabText_44210 db "@" -UnnamedText_4421a: ; 4421a (11:421a) - TX_FAR _UnnamedText_4421a +PokedexRatingText_44215: ; 44215 (11:4215) + TX_FAR _OaksLabText_44215 db "@" -UnnamedText_4421f: ; 4421f (11:421f) - TX_FAR _UnnamedText_4421f +PokedexRatingText_4421a: ; 4421a (11:421a) + TX_FAR _OaksLabText_4421a db "@" -UnnamedText_44224: ; 44224 (11:4224) - TX_FAR _UnnamedText_44224 +PokedexRatingText_4421f: ; 4421f (11:421f) + TX_FAR _OaksLabText_4421f db "@" -UnnamedText_44229: ; 44229 (11:4229) - TX_FAR _UnnamedText_44229 +PokedexRatingText_44224: ; 44224 (11:4224) + TX_FAR _OaksLabText_44224 db "@" -UnnamedText_4422e: ; 4422e (11:422e) - TX_FAR _UnnamedText_4422e +PokedexRatingText_44229: ; 44229 (11:4229) + TX_FAR _OaksLabText_44229 db "@" -UnnamedText_44233: ; 44233 (11:4233) - TX_FAR _UnnamedText_44233 +PokedexRatingText_4422e: ; 4422e (11:422e) + TX_FAR _OaksLabText_4422e db "@" -UnnamedText_44238: ; 44238 (11:4238) - TX_FAR _UnnamedText_44238 +PokedexRatingText_44233: ; 44233 (11:4233) + TX_FAR _OaksLabText_44233 db "@" -UnnamedText_4423d: ; 4423d (11:423d) - TX_FAR _UnnamedText_4423d +PokedexRatingText_44238: ; 44238 (11:4238) + TX_FAR _OaksLabText_44238 db "@" -UnnamedText_44242: ; 44242 (11:4242) - TX_FAR _UnnamedText_44242 +PokedexRatingText_4423d: ; 4423d (11:423d) + TX_FAR _OaksLabText_4423d db "@" -UnnamedText_44247: ; 44247 (11:4247) - TX_FAR _UnnamedText_44247 +PokedexRatingText_44242: ; 44242 (11:4242) + TX_FAR _OaksLabText_44242 db "@" -UnnamedText_4424c: ; 4424c (11:424c) - TX_FAR _UnnamedText_4424c - db "@" - -ViridianPokecenter_h: ; 0x44251 to 0x4425d (12 bytes) (bank=11) (id=41) - db POKECENTER ; tileset - db VIRIDIAN_POKECENTER_HEIGHT, VIRIDIAN_POKECENTER_WIDTH ; dimensions (y, x) - dw ViridianPokecenterBlocks, ViridianPokecenterTextPointers, ViridianPokeCenterScript ; blocks, texts, scripts - db $00 ; connections - dw ViridianPokecenterObject ; objects - -ViridianPokeCenterScript: ; 4425d (11:425d) - call Func_22fa - jp EnableAutoTextBoxDrawing - -ViridianPokecenterTextPointers: ; 44263 (11:4263) - dw ViridianPokeCenterText1 - dw ViridianPokeCenterText2 - dw ViridianPokeCenterText3 - dw ViridianPokeCenterText4 - -ViridianPokeCenterText1: ; 4426b (11:426b) - db $ff - -ViridianPokeCenterText2: ; 4426c (11:426c) - TX_FAR _ViridianPokeCenterText1 - db "@" - -ViridianPokeCenterText3: ; 44271 (11:4271) - TX_FAR _ViridianPokeCenterText3 - db "@" - -ViridianPokeCenterText4: ; 44276 (11:4276) - db $f6 - -ViridianPokecenterObject: ; 0x44277 (size=44) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $0, $ff - db $7, $4, $0, $ff - - db $0 ; signs - - db $4 ; people - db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person - db SPRITE_GENTLEMAN, $5 + 4, $a + 4, $fe, $1, $2 ; person - db SPRITE_BLACK_HAIR_BOY_1, $3 + 4, $4 + 4, $ff, $ff, $3 ; person - db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person - - ; warp-to - EVENT_DISP VIRIDIAN_POKECENTER_WIDTH, $7, $3 - EVENT_DISP VIRIDIAN_POKECENTER_WIDTH, $7, $4 - -Mansion1_h: ; 0x442a3 to 0x442af (12 bytes) (bank=11) (id=165) - db FACILITY ; tileset - db MANSION_1_HEIGHT, MANSION_1_WIDTH ; dimensions (y, x) - dw Mansion1Blocks, Mansion1TextPointers, Mansion1Script ; blocks, texts, scripts - db $00 ; connections - dw Mansion1Object ; objects - -Mansion1Script: ; 442af (11:42af) - call Mansion1Subscript1 - call EnableAutoTextBoxDrawing - ld hl, Mansion1TrainerHeaders - ld de, Mansion1ScriptPointers - ld a, [W_MANSION1CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_MANSION1CURSCRIPT], a - ret - -Mansion1Subscript1: ; 442c5 (11:42c5) - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - ret z - ld a, [$d796] - bit 0, a - jr nz, .asm_442ec ; 0x442d2 $18 - ld bc, $060c - call Func_4430b - ld bc, $0308 - call Func_44304 - ld bc, $080a - call Func_44304 - ld bc, $0d0d - jp Func_44304 -.asm_442ec - ld bc, $060c - call Func_44304 - ld bc, $0308 - call Func_4430b - ld bc, $080a - call Func_4430b - ld bc, $0d0d - jp Func_4430b - -Func_44304: ; 44304 (11:4304) - ld a, $2d - ld [$d09f], a - jr asm_44310 - -Func_4430b: ; 4430b (11:430b) - ld a, $e - ld [$d09f], a -asm_44310: ; 44310 (11:4310) - ld a, $17 - call Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) - ret - -Func_44316: ; 44316 (11:4316) - ld a, [$c109] - cp $4 - ret nz - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - ld a, $4 - ld [H_SPRITEHEIGHT], a - jp DisplayTextID - -Mansion1ScriptPointers: ; 44326 (11:4326) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -Mansion1TextPointers: ; 4432c (11:432c) - dw Mansion1Text1 - dw Predef5CText - dw Predef5CText - dw Mansion1Text4 - -Mansion1TrainerHeaders: ; 44334 (11:4334) -Mansion1TrainerHeader0: ; 44334 (11:4334) - db $1 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d798 ; flag's byte - dw Mansion1BattleText2 ; 0x434b TextBeforeBattle - dw Mansion1AfterBattleText2 ; 0x4355 TextAfterBattle - dw Mansion1EndBattleText2 ; 0x4350 TextEndBattle - dw Mansion1EndBattleText2 ; 0x4350 TextEndBattle - - db $ff - -Mansion1Text1: ; 44341 (11:4341) - db $08 ; asm - ld hl, Mansion1TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -Mansion1BattleText2: ; 4434b (11:434b) - TX_FAR _Mansion1BattleText2 +PokedexRatingText_44247: ; 44247 (11:4247) + TX_FAR _OaksLabText_44247 db "@" -Mansion1EndBattleText2: ; 44350 (11:4350) - TX_FAR _Mansion1EndBattleText2 +PokedexRatingText_4424c: ; 4424c (11:424c) + TX_FAR _OaksLabText_4424c db "@" -Mansion1AfterBattleText2: ; 44355 (11:4355) - TX_FAR _Mansion1AfterBattleText2 - db "@" +INCLUDE "data/mapHeaders/viridianpokecenter.asm" -Mansion1Text4: ; 4435a (11:435a) - db $8 - ld hl, MansionSwitchText - call PrintText - call YesNoChoice - ld a, [$cc26] - and a - jr nz, .asm_4438c ; 0x44368 $22 - ld a, $1 - ld [$cc3c], a - ld hl, $d126 - set 5, [hl] - ld hl, MansionSwitchPressedText - call PrintText - ld a, (SFX_02_57 - SFX_Headers_02) / 3 - call PlaySound - ld hl, $d796 - bit 0, [hl] - set 0, [hl] - jr z, .asm_44392 ; 0x44386 $a - res 0, [hl] - jr .asm_44392 ; 0x4438a $6 -.asm_4438c - ld hl, MansionSwitchNotPressedText - call PrintText -.asm_44392 - jp TextScriptEnd +INCLUDE "scripts/viridianpokecenter.asm" -MansionSwitchText: ; 44395 (11:4395) - TX_FAR _MansionSwitchText - db "@" +INCLUDE "data/mapObjects/viridianpokecenter.asm" -MansionSwitchPressedText: ; 4439a (11:439a) - TX_FAR _MansionSwitchPressedText - db "@" +INCLUDE "data/mapHeaders/mansion1.asm" -MansionSwitchNotPressedText: ; 4439f (11:439f) - TX_FAR _MansionSwitchNotPressedText - db "@" +INCLUDE "scripts/mansion1.asm" -Mansion1Object: ; 0x443a4 (size=90) - db $2e ; border tile - - db $8 ; warps - db $1b, $4, $0, $ff - db $1b, $5, $0, $ff - db $1b, $6, $0, $ff - db $1b, $7, $0, $ff - db $a, $5, $0, MANSION_2 - db $17, $15, $0, MANSION_4 - db $1b, $1a, $0, $ff - db $1b, $1b, $0, $ff - - db $0 ; signs - - db $3 ; people - db SPRITE_OAK_AIDE, $11 + 4, $11 + 4, $ff, $d2, $41, SCIENTIST + $C8, $4 ; trainer - db SPRITE_BALL, $3 + 4, $e + 4, $ff, $ff, $82, ESCAPE_ROPE ; item - db SPRITE_BALL, $15 + 4, $12 + 4, $ff, $ff, $83, CARBOS ; item - - ; warp-to - EVENT_DISP MANSION_1_WIDTH, $1b, $4 - EVENT_DISP MANSION_1_WIDTH, $1b, $5 - EVENT_DISP MANSION_1_WIDTH, $1b, $6 - EVENT_DISP MANSION_1_WIDTH, $1b, $7 - EVENT_DISP MANSION_1_WIDTH, $a, $5 ; MANSION_2 - EVENT_DISP MANSION_1_WIDTH, $17, $15 ; MANSION_4 - EVENT_DISP MANSION_1_WIDTH, $1b, $1a - EVENT_DISP MANSION_1_WIDTH, $1b, $1b +INCLUDE "data/mapObjects/mansion1.asm" Mansion1Blocks: ; 443fe (11:43fe) INCBIN "maps/mansion1.blk" -RockTunnel1_h: ; 0x444d0 to 0x444dc (12 bytes) (bank=11) (id=82) - db CAVERN ; tileset - db ROCK_TUNNEL_1_HEIGHT, ROCK_TUNNEL_1_WIDTH ; dimensions (y, x) - dw RockTunnel1Blocks, RockTunnel1TextPointers, RockTunnel1Script ; blocks, texts, scripts - db $00 ; connections - dw RockTunnel1Object ; objects - -RockTunnel1Script: ; 444dc (11:44dc) - call EnableAutoTextBoxDrawing - ld hl, RockTunnel1TrainerHeaders - ld de, RockTunnel1ScriptPointers - ld a, [W_ROCKTUNNEL1CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_ROCKTUNNEL1CURSCRIPT], a - ret - -RockTunnel1ScriptPointers: ; 444ef (11:44ef) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -RockTunnel1TextPointers: ; 444f5 (11:44f5) - dw RockTunnel1Text1 - dw RockTunnel1Text2 - dw RockTunnel1Text3 - dw RockTunnel1Text4 - dw RockTunnel1Text5 - dw RockTunnel1Text6 - dw RockTunnel1Text7 - dw RockTunnel1Text8 - -RockTunnel1TrainerHeaders: ; 44505 (11:4505) -RockTunnel1TrainerHeader1: ; 44505 (11:4505) - db $1 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7d2 ; flag's byte - dw RockTunnel1BattleText1 ; 0x4588 TextBeforeBattle - dw RockTunnel1AfterBattleText1 ; 0x4592 TextAfterBattle - dw RockTunnel1EndBattleText1 ; 0x458d TextEndBattle - dw RockTunnel1EndBattleText1 ; 0x458d TextEndBattle - -RockTunnel1TrainerHeader2: ; 44511 (11:4511) - db $2 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7d2 ; flag's byte - dw RockTunnel1BattleText2 ; 0x4597 TextBeforeBattle - dw RockTunnel1AfterBattleText2 ; 0x45a1 TextAfterBattle - dw RockTunnel1EndBattleText2 ; 0x459c TextEndBattle - dw RockTunnel1EndBattleText2 ; 0x459c TextEndBattle - -RockTunnel1TrainerHeader3: ; 4451d (11:451d) - db $3 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7d2 ; flag's byte - dw RockTunnel1BattleText3 ; 0x45a6 TextBeforeBattle - dw RockTunnel1AfterBattleText3 ; 0x45b0 TextAfterBattle - dw RockTunnel1EndBattleText3 ; 0x45ab TextEndBattle - dw RockTunnel1EndBattleText3 ; 0x45ab TextEndBattle - -RockTunnel1TrainerHeader4: ; 44529 (11:4529) - db $4 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7d2 ; flag's byte - dw RockTunnel1BattleText4 ; 0x45b5 TextBeforeBattle - dw RockTunnel1AfterBattleText4 ; 0x45bf TextAfterBattle - dw RockTunnel1EndBattleText4 ; 0x45ba TextEndBattle - dw RockTunnel1EndBattleText4; 0x45ba TextEndBattle - -RockTunnel1TrainerHeader5: ; 44535 (11:4535) - db $5 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7d2 ; flag's byte - dw RockTunnel1BattleText5 ; 0x45c4 TextBeforeBattle - dw RockTunnel1AfterBattleText5 ; 0x45ce TextAfterBattle - dw RockTunnel1EndBattleText5 ; 0x45c9 TextEndBattle - dw RockTunnel1EndBattleText5 ; 0x45c9 TextEndBattle - -RockTunnel1TrainerHeader6: ; 44541 (11:4541) - db $6 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7d2 ; flag's byte - dw RockTunnel1BattleText6 ; 0x45d3 TextBeforeBattle - dw RockTunnel1AfterBattleText6 ; 0x45dd TextAfterBattle - dw RockTunnel1EndBattleText6 ; 0x45d8 TextEndBattle - dw RockTunnel1EndBattleText6 ; 0x45d8 TextEndBattle - -RockTunnel1TrainerHeader7: ; 4454d (11:454d) - db $7 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7d2 ; flag's byte - dw RockTunnel1BattleText7; 0x45e2 TextBeforeBattle - dw RockTunnel1AfterBattleText7 ; 0x45ec TextAfterBattle - dw RockTunnel1EndBattleText7 ; 0x45e7 TextEndBattle - dw RockTunnel1EndBattleText7 ; 0x45e7 TextEndBattle - - db $ff - -RockTunnel1Text1: ; 4455a (11:455a) - db $8 - ld hl, RockTunnel1TrainerHeader1 ; $4505 - jr asm_0c916 ; 0x4455e $22 - -RockTunnel1Text2: ; 44560 (11:4560) - db $8 - ld hl, RockTunnel1TrainerHeader2 ; $4511 - jr asm_0c916 ; 0x44564 $1c - -RockTunnel1Text3: ; 44566 (11:4566) - db $8 - ld hl, RockTunnel1TrainerHeader3 ; $451d - jr asm_0c916 ; 0x4456a $16 - -RockTunnel1Text4: ; 4456c (11:456c) - db $8 - ld hl, RockTunnel1TrainerHeader4 ; $4529 - jr asm_0c916 ; 0x44570 $10 - -RockTunnel1Text5: ; 44572 (11:4572) - db $8 - ld hl, RockTunnel1TrainerHeader5 ; $4535 - jr asm_0c916 ; 0x44576 $a - -RockTunnel1Text6: ; 44578 (11:4578) - db $8 - ld hl, RockTunnel1TrainerHeader6 ; $4541 - jr asm_0c916 ; 0x4457c $4 - -RockTunnel1Text7: ; 4457e (11:457e) - db $8 - ld hl, RockTunnel1TrainerHeader7 ; $454d -asm_0c916: ; 44582 (11:4582) - call TalkToTrainer - jp TextScriptEnd - -RockTunnel1BattleText1: ; 44588 (11:4588) - TX_FAR _RockTunnel1BattleText1 - db "@" - -RockTunnel1EndBattleText1: ; 4458d (11:458d) - TX_FAR _RockTunnel1EndBattleText1 - db "@" - -RockTunnel1AfterBattleText1: ; 44592 (11:4592) - TX_FAR _RockTunnel1AfterBattleText1 - db "@" - -RockTunnel1BattleText2: ; 44597 (11:4597) - TX_FAR _RockTunnel1BattleText2 - db "@" - -RockTunnel1EndBattleText2: ; 4459c (11:459c) - TX_FAR _RockTunnel1EndBattleText2 - db "@" - -RockTunnel1AfterBattleText2: ; 445a1 (11:45a1) - TX_FAR _RockTunnel1AfterBattleText2 - db "@" - -RockTunnel1BattleText3: ; 445a6 (11:45a6) - TX_FAR _RockTunnel1BattleText3 - db "@" - -RockTunnel1EndBattleText3: ; 445ab (11:45ab) - TX_FAR _RockTunnel1EndBattleText3 - db "@" - -RockTunnel1AfterBattleText3: ; 445b0 (11:45b0) - TX_FAR _RockTunnel1AfterBattleText3 - db "@" - -RockTunnel1BattleText4: ; 445b5 (11:45b5) - TX_FAR _RockTunnel1BattleText4 - db "@" - -RockTunnel1EndBattleText4: ; 445ba (11:45ba) - TX_FAR _RockTunnel1EndBattleText4 - db "@" - -RockTunnel1AfterBattleText4: ; 445bf (11:45bf) - TX_FAR _RockTunnel1AfterBattleText4 - db "@" - -RockTunnel1BattleText5: ; 445c4 (11:45c4) - TX_FAR _RockTunnel1BattleText5 - db "@" - -RockTunnel1EndBattleText5: ; 445c9 (11:45c9) - TX_FAR _RockTunnel1EndBattleText5 - db "@" - -RockTunnel1AfterBattleText5: ; 445ce (11:45ce) - TX_FAR _RockTunnel1AfterBattleText5 - db "@" - -RockTunnel1BattleText6: ; 445d3 (11:45d3) - TX_FAR _RockTunnel1BattleText6 - db "@" - -RockTunnel1EndBattleText6: ; 445d8 (11:45d8) - TX_FAR _RockTunnel1EndBattleText6 - db "@" +INCLUDE "data/mapHeaders/rocktunnel1.asm" -RockTunnel1AfterBattleText6: ; 445dd (11:45dd) - TX_FAR _RockTunnel1AfterBattleText6 - db "@" +INCLUDE "scripts/rocktunnel1.asm" -RockTunnel1BattleText7: ; 445e2 (11:45e2) - TX_FAR _RockTunnel1BattleText7 - db "@" - -RockTunnel1EndBattleText7: ; 445e7 (11:45e7) - TX_FAR _RockTunnel1EndBattleText7 - db "@" - -RockTunnel1AfterBattleText7: ; 445ec (11:45ec) - TX_FAR _RockTunnel1AfterBattleText7 - db "@" - -RockTunnel1Text8: ; 445f1 (11:45f1) - TX_FAR _RockTunnel1Text8 - db "@" - -RockTunnel1Object: ; 0x445f6 (size=127) - db $3 ; border tile - - db $8 ; warps - db $3, $f, $1, $ff - db $0, $f, $1, $ff - db $21, $f, $2, $ff - db $23, $f, $2, $ff - db $3, $25, $0, ROCK_TUNNEL_2 - db $3, $5, $1, ROCK_TUNNEL_2 - db $b, $11, $2, ROCK_TUNNEL_2 - db $11, $25, $3, ROCK_TUNNEL_2 - - db $1 ; signs - db $1d, $b, $8 ; RockTunnel1Text8 - - db $7 ; people - db SPRITE_HIKER, $5 + 4, $7 + 4, $ff, $d0, $41, HIKER + $C8, $c ; trainer - db SPRITE_HIKER, $10 + 4, $5 + 4, $ff, $d0, $42, HIKER + $C8, $d ; trainer - db SPRITE_HIKER, $f + 4, $11 + 4, $ff, $d2, $43, HIKER + $C8, $e ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $8 + 4, $17 + 4, $ff, $d2, $44, POKEMANIAC + $C8, $7 ; trainer - db SPRITE_LASS, $15 + 4, $25 + 4, $ff, $d2, $45, JR__TRAINER_F + $C8, $11 ; trainer - db SPRITE_LASS, $18 + 4, $16 + 4, $ff, $d0, $46, JR__TRAINER_F + $C8, $12 ; trainer - db SPRITE_LASS, $18 + 4, $20 + 4, $ff, $d3, $47, JR__TRAINER_F + $C8, $13 ; trainer - - ; warp-to - EVENT_DISP ROCK_TUNNEL_1_WIDTH, $3, $f - EVENT_DISP ROCK_TUNNEL_1_WIDTH, $0, $f - EVENT_DISP ROCK_TUNNEL_1_WIDTH, $21, $f - EVENT_DISP ROCK_TUNNEL_1_WIDTH, $23, $f - EVENT_DISP ROCK_TUNNEL_1_WIDTH, $3, $25 ; ROCK_TUNNEL_2 - EVENT_DISP ROCK_TUNNEL_1_WIDTH, $3, $5 ; ROCK_TUNNEL_2 - EVENT_DISP ROCK_TUNNEL_1_WIDTH, $b, $11 ; ROCK_TUNNEL_2 - EVENT_DISP ROCK_TUNNEL_1_WIDTH, $11, $25 ; ROCK_TUNNEL_2 +INCLUDE "data/mapObjects/rocktunnel1.asm" RockTunnel1Blocks: ; 44675 (11:4675) INCBIN "maps/rocktunnel1.blk" -SeafoamIslands1_h: ; 0x447dd to 0x447e9 (12 bytes) (bank=11) (id=192) - db CAVERN ; tileset - db SEAFOAM_ISLANDS_1_HEIGHT, SEAFOAM_ISLANDS_1_WIDTH ; dimensions (y, x) - dw SeafoamIslands1Blocks, SeafoamIslands1TextPointers, SeafoamIslands1Script ; blocks, texts, scripts - db $00 ; connections - dw SeafoamIslands1Object ; objects +INCLUDE "data/mapHeaders/seafoamislands1.asm" -SeafoamIslands1Script: ; 447e9 (11:47e9) - call EnableAutoTextBoxDrawing - ld hl, $d7e7 - set 0, [hl] - ld hl, wFlags_0xcd60 - bit 7, [hl] - res 7, [hl] - jr z, .asm_4483b ; 0x447f8 $41 - ld hl, Seafoam1HolesCoords - call CheckBoulderCoords - ret nc - ld hl, $d7e8 - ld a, [$cd3d] - cp $1 - jr nz, .asm_44819 ; 0x44809 $e - set 6, [hl] - ld a, $d7 - ld [$d079], a - ld a, $d9 - ld [$d07a], a - jr .asm_44825 ; 0x44817 $c -.asm_44819 - set 7, [hl] - ld a, $d8 - ld [$d079], a - ld a, $da - ld [$d07a], a -.asm_44825 - ld a, [$d079] - ld [$cc4d], a - ld a, $11 - call Predef - ld a, [$d07a] - ld [$cc4d], a - ld a, $15 - jp Predef -.asm_4483b - ld a, $9f - ld [$d71d], a - ld hl, Seafoam1HolesCoords - jp Func_46981 - -Seafoam1HolesCoords: ; 44846 (11:4846) - db $06,$11 - db $06,$18 - db $ff +INCLUDE "scripts/seafoamislands1.asm" -SeafoamIslands1TextPointers: ; 4484b (11:484b) - dw BoulderText - dw BoulderText - -SeafoamIslands1Object: ; 0x4484f (size=72) - db $7d ; border tile - - db $7 ; warps - db $11, $4, $0, $ff - db $11, $5, $0, $ff - db $11, $1a, $1, $ff - db $11, $1b, $1, $ff - db $5, $7, $1, SEAFOAM_ISLANDS_2 - db $3, $19, $6, SEAFOAM_ISLANDS_2 - db $f, $17, $4, SEAFOAM_ISLANDS_2 - - db $0 ; signs - - db $2 ; people - db SPRITE_BOULDER, $a + 4, $12 + 4, $ff, $10, $1 ; person - db SPRITE_BOULDER, $7 + 4, $1a + 4, $ff, $10, $2 ; person - - ; warp-to - EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $11, $4 - EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $11, $5 - EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $11, $1a - EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $11, $1b - EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $5, $7 ; SEAFOAM_ISLANDS_2 - EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $3, $19 ; SEAFOAM_ISLANDS_2 - EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $f, $17 ; SEAFOAM_ISLANDS_2 - - ; holes - EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $6, $11 - EVENT_DISP SEAFOAM_ISLANDS_1_WIDTH, $6, $18 +INCLUDE "data/mapObjects/seafoamislands1.asm" SeafoamIslands1Blocks: ; 4489f (11:489f) INCBIN "maps/seafoamislands1.blk" -SSAnne3_h: ; 0x44926 to 0x44932 (12 bytes) (bank=11) (id=97) - db SHIP ; tileset - db SS_ANNE_3_HEIGHT, SS_ANNE_3_WIDTH ; dimensions (y, x) - dw SSAnne3Blocks, SSAnne3TextPointers, SSAnne3Script ; blocks, texts, scripts - db $00 ; connections - dw SSAnne3Object ; objects - -SSAnne3Script: ; 44932 (11:4932) - jp EnableAutoTextBoxDrawing - -SSAnne3TextPointers: ; 44935 (11:4935) - dw SSAnne3Text1 - -SSAnne3Text1: ; 44937 (11:4937) - TX_FAR _SSAnne3Text1 - db "@" - -SSAnne3Object: ; 0x4493c (size=26) - db $c ; border tile - - db $2 ; warps - db $3, $0, $0, SS_ANNE_5 - db $3, $13, $7, SS_ANNE_2 +INCLUDE "data/mapHeaders/ssanne3.asm" - db $0 ; signs +INCLUDE "scripts/ssanne3.asm" - db $1 ; people - db SPRITE_SAILOR, $3 + 4, $9 + 4, $fe, $2, $1 ; person - - ; warp-to - EVENT_DISP SS_ANNE_3_WIDTH, $3, $0 ; SS_ANNE_5 - EVENT_DISP SS_ANNE_3_WIDTH, $3, $13 ; SS_ANNE_2 +INCLUDE "data/mapObjects/ssanne3.asm" SSAnne3Blocks: ; 44956 (11:4956) INCBIN "maps/ssanne3.blk" -VictoryRoad3_h: ; 0x44974 to 0x44980 (12 bytes) (bank=11) (id=198) - db CAVERN ; tileset - db VICTORY_ROAD_3_HEIGHT, VICTORY_ROAD_3_WIDTH ; dimensions (y, x) - dw VictoryRoad3Blocks, VictoryRoad3TextPointers, VictoryRoad3Script ; blocks, texts, scripts - db $00 ; connections - dw VictoryRoad3Object ; objects - -VictoryRoad3Script: ; 44980 (11:4980) - call VictoryRoad3Script_44996 - call EnableAutoTextBoxDrawing - ld hl, VictoryRoad3TrainerHeaders - ld de, VictoryRoad3ScriptPointers - ld a, [W_VICTORYROAD3CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_VICTORYROAD3CURSCRIPT], a - ret - -VictoryRoad3Script_44996: ; 44996 (11:4996) - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - ret z - ld hl, $d813 - bit 0, [hl] - ret z - ld a, $1d - ld [$d09f], a - ld bc, $503 - ld a, $17 - jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) - -VictoryRoad3ScriptPointers: ; 449b1 (11:49b1) - dw VictoryRoad3Script0 - dw Func_324c - dw EndTrainerBattle - -VictoryRoad3Script0: ; 449b7 (11:49b7) - ld hl, wFlags_0xcd60 - bit 7, [hl] - res 7, [hl] - jp z, .asm_449fe - ld hl, .coordsData_449f9 ; $49f9 - call CheckBoulderCoords - jp nc, .asm_449fe - ld a, [wWhichTrade] ; $cd3d - cp $1 - jr nz, .asm_449dc - ld hl, $d126 - set 5, [hl] - ld hl, $d813 - set 0, [hl] - ret -.asm_449dc - ld hl, $d813 - bit 6, [hl] - set 6, [hl] - jr nz, .asm_449fe - ld a, $7a - ld [$cc4d], a - ld a, $11 - call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7)) - ld a, $60 - ld [$cc4d], a - ld a, $15 - jp Predef ; indirect jump to AddMissableObject (f1c8 (3:71c8)) - -.coordsData_449f9: ; 449f9 (11:49f9) - db $05,$03 - db $0F,$17 - db $FF - -.asm_449fe - ld a, $c2 - ld [$d71d], a - ld hl, .coordsData_449f9 ; $49f9 - call Func_46981 - ld a, [wWhichTrade] ; $cd3d - cp $1 - jr nz, .asm_44a1b - ld hl, $d72d - res 4, [hl] - ld hl, $d732 - res 4, [hl] - ret -.asm_44a1b - ld a, [$d72d] - bit 4, a - jp z, CheckFightingMapTrainers - ret - -VictoryRoad3TextPointers: ; 44a24 (11:4a24) - dw VictoryRoad3Text1 - dw VictoryRoad3Text2 - dw VictoryRoad3Text3 - dw VictoryRoad3Text4 - dw Predef5CText - dw Predef5CText - dw BoulderText - dw BoulderText - dw BoulderText - dw BoulderText - -VictoryRoad3TrainerHeaders: ; 44a38 (11:4a38) -VictoryRoad3TrainerHeader0: ; 44a38 (11:4a38) - db $1 ; flag's bit - db ($1 << 4) ; trainer's view range - dw $d813 ; flag's byte - dw VictoryRoad3BattleText2 ; 0x4a91 TextBeforeBattle - dw VictoryRoad3AfterBattleText2 ; 0x4a9b TextAfterBattle - dw VictoryRoad3EndBattleText2 ; 0x4a96 TextEndBattle - dw VictoryRoad3EndBattleText2 ; 0x4a96 TextEndBattle - -VictoryRoad3TrainerHeader2: ; 44a44 (11:4a44) - db $2 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d813 ; flag's byte - dw VictoryRoad3BattleText3 ; 0x4aa0 TextBeforeBattle - dw VictoryRoad3AfterBattleText3 ; 0x4aaa TextAfterBattle - dw VictoryRoad3EndBattleText3 ; 0x4aa5 TextEndBattle - dw VictoryRoad3EndBattleText3 ; 0x4aa5 TextEndBattle - -VictoryRoad3TrainerHeader3: ; 44a50 (11:4a50) - db $3 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d813 ; flag's byte - dw VictoryRoad3BattleText4 ; 0x4aaf TextBeforeBattle - dw VictoryRoad3AfterBattleText4 ; 0x4ab9 TextAfterBattle - dw VictoryRoad3EndBattleText4 ; 0x4ab4 TextEndBattle - dw VictoryRoad3EndBattleText4 ; 0x4ab4 TextEndBattle - -VictoryRoad3TrainerHeader4: ; 44a5c (11:4a5c) - db $4 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d813 ; flag's byte - dw VictoryRoad3BattleText5 ; 0x4abe TextBeforeBattle - dw VictoryRoad3AfterBattleText5 ; 0x4ac8 TextAfterBattle - dw VictoryRoad3EndBattleText5 ; 0x4ac3 TextEndBattle - dw VictoryRoad3EndBattleText5 ; 0x4ac3 TextEndBattle - - db $ff - -VictoryRoad3Text1: ; 44a69 (11:4a69) - db $08 ; asm - ld hl, VictoryRoad3TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -VictoryRoad3Text2: ; 44a73 (11:4a73) - db $08 ; asm - ld hl, VictoryRoad3TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -VictoryRoad3Text3: ; 44a7d (11:4a7d) - db $08 ; asm - ld hl, VictoryRoad3TrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -VictoryRoad3Text4: ; 44a87 (11:4a87) - db $08 ; asm - ld hl, VictoryRoad3TrainerHeader4 - call TalkToTrainer - jp TextScriptEnd - -VictoryRoad3BattleText2: ; 44a91 (11:4a91) - TX_FAR _VictoryRoad3BattleText2 - db "@" - -VictoryRoad3EndBattleText2: ; 44a96 (11:4a96) - TX_FAR _VictoryRoad3EndBattleText2 - db "@" - -VictoryRoad3AfterBattleText2: ; 44a9b (11:4a9b) - TX_FAR _VictoryRoad3AfterBattleText2 - db "@" - -VictoryRoad3BattleText3: ; 44aa0 (11:4aa0) - TX_FAR _VictoryRoad3BattleText3 - db "@" - -VictoryRoad3EndBattleText3: ; 44aa5 (11:4aa5) - TX_FAR _VictoryRoad3EndBattleText3 - db "@" - -VictoryRoad3AfterBattleText3: ; 44aaa (11:4aaa) - TX_FAR _VictoryRoad3AfterBattleText3 - db "@" - -VictoryRoad3BattleText4: ; 44aaf (11:4aaf) - TX_FAR _VictoryRoad3BattleText4 - db "@" - -VictoryRoad3EndBattleText4: ; 44ab4 (11:4ab4) - TX_FAR _VictoryRoad3EndBattleText4 - db "@" - -VictoryRoad3AfterBattleText4: ; 44ab9 (11:4ab9) - TX_FAR _VictoryRoad3AfterBattleText4 - db "@" - -VictoryRoad3BattleText5: ; 44abe (11:4abe) - TX_FAR _VictoryRoad3BattleText5 - db "@" - -VictoryRoad3EndBattleText5: ; 44ac3 (11:4ac3) - TX_FAR _VictoryRoad3EndBattleText5 - db "@" +INCLUDE "data/mapHeaders/victoryroad3.asm" -VictoryRoad3AfterBattleText5: ; 44ac8 (11:4ac8) - TX_FAR _VictoryRoad3AfterBattleText5 - db "@" +INCLUDE "scripts/victoryroad3.asm" -VictoryRoad3Object: ; 0x44acd (size=106) - db $7d ; border tile - - db $4 ; warps - db $7, $17, $3, VICTORY_ROAD_2 - db $8, $1a, $5, VICTORY_ROAD_2 - db $f, $1b, $4, VICTORY_ROAD_2 - db $0, $2, $6, VICTORY_ROAD_2 - - db $0 ; signs - - db $a ; people - db SPRITE_BLACK_HAIR_BOY_1, $5 + 4, $1c + 4, $ff, $d2, $41, COOLTRAINER_M + $C8, $2 ; trainer - db SPRITE_LASS, $d + 4, $7 + 4, $ff, $d3, $42, COOLTRAINER_F + $C8, $2 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $e + 4, $6 + 4, $ff, $d2, $43, COOLTRAINER_M + $C8, $3 ; trainer - db SPRITE_LASS, $3 + 4, $d + 4, $ff, $d3, $44, COOLTRAINER_F + $C8, $3 ; trainer - db SPRITE_BALL, $5 + 4, $1a + 4, $ff, $ff, $85, MAX_REVIVE ; item - db SPRITE_BALL, $7 + 4, $7 + 4, $ff, $ff, $86, TM_47 ; item - db SPRITE_BOULDER, $3 + 4, $16 + 4, $ff, $10, $7 ; person - db SPRITE_BOULDER, $c + 4, $d + 4, $ff, $10, $8 ; person - db SPRITE_BOULDER, $a + 4, $18 + 4, $ff, $10, $9 ; person - db SPRITE_BOULDER, $f + 4, $16 + 4, $ff, $10, $a ; person - - ; warp-to - EVENT_DISP VICTORY_ROAD_3_WIDTH, $7, $17 ; VICTORY_ROAD_2 - EVENT_DISP VICTORY_ROAD_3_WIDTH, $8, $1a ; VICTORY_ROAD_2 - EVENT_DISP VICTORY_ROAD_3_WIDTH, $f, $1b ; VICTORY_ROAD_2 - EVENT_DISP VICTORY_ROAD_3_WIDTH, $0, $2 ; VICTORY_ROAD_2 +INCLUDE "data/mapObjects/victoryroad3.asm" VictoryRoad3Blocks: ; 44b37 (11:4b37) INCBIN "maps/victoryroad3.blk" -RocketHideout1_h: ; 0x44bbe to 0x44bca (12 bytes) (bank=11) (id=199) - db FACILITY ; tileset - db ROCKET_HIDEOUT_1_HEIGHT, ROCKET_HIDEOUT_1_WIDTH ; dimensions (y, x) - dw RocketHideout1Blocks, RocketHideout1TextPointers, RocketHideout1Script ; blocks, texts, scripts - db $00 ; connections - dw RocketHideout1Object ; objects - -RocketHideout1Script: ; 44bca (11:4bca) - call Func_44be0 - call EnableAutoTextBoxDrawing - ld hl, RocketHideout1TrainerHeaders - ld de, RocketHideout1ScriptPointers - ld a, [W_ROCKETHIDEOUT1CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_ROCKETHIDEOUT1CURSCRIPT], a - ret - -Func_44be0: ; 44be0 (11:4be0) - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - ret z - ld a, [$d815] - bit 7, a - jr nz, .asm_44c01 - bit 5, a - jr nz, .asm_44bf7 - ld a, $54 - jr .asm_44c03 -.asm_44bf7 - ld a, (SFX_02_57 - SFX_Headers_02) / 3 - call PlaySound - ld hl, $d815 - bit 7, [hl] -.asm_44c01 - ld a, $e -.asm_44c03 - ld [$d09f], a - ld bc, $080c - ld a, $17 - jp Predef - -RocketHideout1ScriptPointers: ; 44c0e (11:4c0e) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -RocketHideout1TextPointers: ; 44c14 (11:4c14) - dw RocketHideout1Text1 - dw RocketHideout1Text2 - dw RocketHideout1Text3 - dw RocketHideout1Text4 - dw RocketHideout1Text5 - dw Predef5CText - dw Predef5CText - -RocketHideout1TrainerHeaders: ; 44c22 (11:4c22) -RocketHideout1TrainerHeader0: ; 44c22 (11:4c22) - db $1 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d815 ; flag's byte - dw RocketHideout1BattleText2 ; 0x4ca1 TextBeforeBattle - dw RocketHideout1AfterBattleTxt2 ; 0x4cab TextAfterBattle - dw RocketHideout1EndBattleText2 ; 0x4ca6 TextEndBattle - dw RocketHideout1EndBattleText2 ; 0x4ca6 TextEndBattle - -RocketHideout1TrainerHeader2: ; 44c2e (11:4c2e) - db $2 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d815 ; flag's byte - dw RocketHideout1BattleText3 ; 0x4cb0 TextBeforeBattle - dw RocketHideout1AfterBattleTxt3 ; 0x4cba TextAfterBattle - dw RocketHideout1EndBattleText3 ; 0x4cb5 TextEndBattle - dw RocketHideout1EndBattleText3 ; 0x4cb5 TextEndBattle - -RocketHideout1TrainerHeader3: ; 44c3a (11:4c3a) - db $3 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d815 ; flag's byte - dw RocketHideout1BattleText4 ; 0x4cbf TextBeforeBattle - dw RocketHideout1AfterBattleTxt4 ; 0x4cc9 TextAfterBattle - dw RocketHideout1EndBattleText4 ; 0x4cc4 TextEndBattle - dw RocketHideout1EndBattleText4 ; 0x4cc4 TextEndBattle - -RocketHideout1TrainerHeader4: ; 44c46 (11:4c46) - db $4 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d815 ; flag's byte - dw RocketHideout1BattleText5 ; 0x4cce TextBeforeBattle - dw RocketHideout1AfterBattleTxt5 ; 0x4cd8 TextAfterBattle - dw RocketHideout1EndBattleText5 ; 0x4cd3 TextEndBattle - dw RocketHideout1EndBattleText5 ; 0x4cd3 TextEndBattle - -RocketHideout1TrainerHeader5: ; 44c52 (11:4c52) - db $5 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d815 ; flag's byte - dw RocketHideout1BattleText6 ; 0x4cdd TextBeforeBattle - dw RocketHideout1AfterBattleTxt6 ; 0x4ce2 TextAfterBattle - dw RocketHideout1EndBattleText6 ; 0x4c91 TextEndBattle - dw RocketHideout1EndBattleText6 ; 0x4c91 TextEndBattle - - db $ff - -RocketHideout1Text1: ; 44c5f (11:4c5f) - db $08 ; asm - ld hl, RocketHideout1TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -RocketHideout1Text2: ; 44c69 (11:4c69) - db $08 ; asm - ld hl, RocketHideout1TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -RocketHideout1Text3: ; 44c73 (11:4c73) - db $08 ; asm - ld hl, RocketHideout1TrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -RocketHideout1Text4: ; 44c7d (11:4c7d) - db $08 ; asm - ld hl, RocketHideout1TrainerHeader4 - call TalkToTrainer - jp TextScriptEnd - -RocketHideout1Text5: ; 44c87 (11:4c87) - db $08 ; asm - ld hl, RocketHideout1TrainerHeader5 - call TalkToTrainer - jp TextScriptEnd - -RocketHideout1EndBattleText6: ; 44c91 (11:4c91) - TX_FAR _RocketHideout1EndBattleText6 ; 0x81f2a - db $8 - ld hl, $d815 - set 5, [hl] - ld hl, UnnamedText_44c9f - ret +INCLUDE "data/mapHeaders/rockethideout1.asm" -UnnamedText_44c9f: ; 44c9f (11:4c9f) - db $6, $50 +INCLUDE "scripts/rockethideout1.asm" -RocketHideout1BattleText2: ; 44ca1 (11:4ca1) - TX_FAR _RocketHideout1BattleText2 - db "@" - -RocketHideout1EndBattleText2: ; 44ca6 (11:4ca6) - TX_FAR _RocketHideout1EndBattleText2 - db "@" - -RocketHideout1AfterBattleTxt2: ; 44cab (11:4cab) - TX_FAR _RocketHideout1AfterBattleTxt2 - db "@" - -RocketHideout1BattleText3: ; 44cb0 (11:4cb0) - TX_FAR _RocketHideout1BattleText3 - db "@" - -RocketHideout1EndBattleText3: ; 44cb5 (11:4cb5) - TX_FAR _RocketHideout1EndBattleText3 - db "@" - -RocketHideout1AfterBattleTxt3: ; 44cba (11:4cba) - TX_FAR _RocketHideout1AfterBattleTxt3 - db "@" - -RocketHideout1BattleText4: ; 44cbf (11:4cbf) - TX_FAR _RocketHideout1BattleText4 - db "@" - -RocketHideout1EndBattleText4: ; 44cc4 (11:4cc4) - TX_FAR _RocketHideout1EndBattleText4 - db "@" - -RocketHideout1AfterBattleTxt4: ; 44cc9 (11:4cc9) - TX_FAR _RocketHideout1AfterBattleTxt4 - db "@" - -RocketHideout1BattleText5: ; 44cce (11:4cce) - TX_FAR _RocketHideout1BattleText5 - db "@" - -RocketHideout1EndBattleText5: ; 44cd3 (11:4cd3) - TX_FAR _RocketHideout1EndBattleText5 - db "@" - -RocketHideout1AfterBattleTxt5: ; 44cd8 (11:4cd8) - TX_FAR _RocketHideout1AfterBattleTxt5 - db "@" - -RocketHideout1BattleText6: ; 44cdd (11:4cdd) - TX_FAR _RocketHideout1BattleText6 - db "@" - -RocketHideout1AfterBattleTxt6: ; 44ce2 (11:4ce2) - TX_FAR _RocketHideout1AfterBattleTxt6 - db "@" - -RocketHideout1Object: ; 0x44ce7 (size=98) - db $2e ; border tile - - db $5 ; warps - db $2, $17, $0, ROCKET_HIDEOUT_2 - db $2, $15, $2, GAME_CORNER - db $13, $18, $0, ROCKET_HIDEOUT_ELEVATOR - db $18, $15, $3, ROCKET_HIDEOUT_2 - db $13, $19, $1, ROCKET_HIDEOUT_ELEVATOR - - db $0 ; signs - - db $7 ; people - db SPRITE_ROCKET, $8 + 4, $1a + 4, $ff, $d2, $41, ROCKET + $C8, $8 ; trainer - db SPRITE_ROCKET, $6 + 4, $c + 4, $ff, $d3, $42, ROCKET + $C8, $9 ; trainer - db SPRITE_ROCKET, $11 + 4, $12 + 4, $ff, $d0, $43, ROCKET + $C8, $a ; trainer - db SPRITE_ROCKET, $19 + 4, $f + 4, $ff, $d3, $44, ROCKET + $C8, $b ; trainer - db SPRITE_ROCKET, $12 + 4, $1c + 4, $ff, $d2, $45, ROCKET + $C8, $c ; trainer - db SPRITE_BALL, $e + 4, $b + 4, $ff, $ff, $86, ESCAPE_ROPE ; item - db SPRITE_BALL, $11 + 4, $9 + 4, $ff, $ff, $87, HYPER_POTION ; item - - ; warp-to - EVENT_DISP ROCKET_HIDEOUT_1_WIDTH, $2, $17 ; ROCKET_HIDEOUT_2 - EVENT_DISP ROCKET_HIDEOUT_1_WIDTH, $2, $15 ; GAME_CORNER - EVENT_DISP ROCKET_HIDEOUT_1_WIDTH, $13, $18 ; ROCKET_HIDEOUT_ELEVATOR - EVENT_DISP ROCKET_HIDEOUT_1_WIDTH, $18, $15 ; ROCKET_HIDEOUT_2 - EVENT_DISP ROCKET_HIDEOUT_1_WIDTH, $13, $19 ; ROCKET_HIDEOUT_ELEVATOR +INCLUDE "data/mapObjects/rockethideout1.asm" RocketHideout1Blocks: ; 44d49 (11:4d49) INCBIN "maps/rockethideout1.blk" -RocketHideout2_h: ; 0x44e1b to 0x44e27 (12 bytes) (bank=11) (id=200) - db FACILITY ; tileset - db ROCKET_HIDEOUT_2_HEIGHT, ROCKET_HIDEOUT_2_WIDTH ; dimensions (y, x) - dw RocketHideout2Blocks, RocketHideout2TextPointers, RocketHideout2Script ; blocks, texts, scripts - db $00 ; connections - dw RocketHideout2Object ; objects +INCLUDE "data/mapHeaders/rockethideout2.asm" -RocketHideout2Script: ; 44e27 (11:4e27) - call EnableAutoTextBoxDrawing - ld hl, RocketHideout2TrainerHeaders - ld de, RocketHideout2ScriptPointers - ld a, [W_ROCKETHIDEOUT2CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_ROCKETHIDEOUT2CURSCRIPT], a - ret +INCLUDE "scripts/rockethideout2.asm" -RocketHideout2ScriptPointers: ; 44e3a (11:4e3a) - dw RocketHideout2Script0 - dw Func_324c - dw EndTrainerBattle - dw RocketHideout2Script3 - -RocketHideout2Script0: ; 44e42 (11:4e42) - ld a, [W_YCOORD] - ld b, a - ld a, [W_XCOORD] - ld c, a - ld hl, RocketHideout2ArrowTilePlayerMovement - call Func_3442 - cp $ff - jp z, CheckFightingMapTrainers - ld hl, $d736 - set 7, [hl] - call Func_3486 - ld a, (SFX_02_52 - SFX_Headers_02) / 3 - call PlaySound - ld a, $ff - ld [wJoypadForbiddenButtonsMask], a - ld a, $3 - ld [W_CURMAPSCRIPT], a - ret - -;format: -;db y,x -;dw pointer to movement -RocketHideout2ArrowTilePlayerMovement: ; 44e6d (11:4e6d) - db $9,$4 - dw RocketHideout2ArrowMovement1 - db $b,$4 - dw RocketHideout2ArrowMovement2 - db $f,$4 - dw RocketHideout2ArrowMovement3 - db $10,$4 - dw RocketHideout2ArrowMovement4 - db $13,$4 - dw RocketHideout2ArrowMovement1 - db $16,$4 - dw RocketHideout2ArrowMovement5 - db $e,$5 - dw RocketHideout2ArrowMovement6 - db $16,$6 - dw RocketHideout2ArrowMovement7 - db $18,$6 - dw RocketHideout2ArrowMovement8 - db $9,$8 - dw RocketHideout2ArrowMovement9 - db $c,$8 - dw RocketHideout2ArrowMovement10 - db $f,$8 - dw RocketHideout2ArrowMovement8 - db $13,$8 - dw RocketHideout2ArrowMovement9 - db $17,$8 - dw RocketHideout2ArrowMovement11 - db $e,$9 - dw RocketHideout2ArrowMovement12 - db $16,$9 - dw RocketHideout2ArrowMovement12 - db $9,$a - dw RocketHideout2ArrowMovement13 - db $a,$a - dw RocketHideout2ArrowMovement14 - db $f,$a - dw RocketHideout2ArrowMovement15 - db $11,$a - dw RocketHideout2ArrowMovement16 - db $13,$a - dw RocketHideout2ArrowMovement17 - db $19,$a - dw RocketHideout2ArrowMovement2 - db $e,$b - dw RocketHideout2ArrowMovement18 - db $10,$b - dw RocketHideout2ArrowMovement19 - db $12,$b - dw RocketHideout2ArrowMovement12 - db $9,$c - dw RocketHideout2ArrowMovement20 - db $b,$c - dw RocketHideout2ArrowMovement21 - db $d,$c - dw RocketHideout2ArrowMovement22 - db $11,$c - dw RocketHideout2ArrowMovement23 - db $a,$d - dw RocketHideout2ArrowMovement24 - db $c,$d - dw RocketHideout2ArrowMovement25 - db $10,$d - dw RocketHideout2ArrowMovement26 - db $12,$d - dw RocketHideout2ArrowMovement27 - db $13,$d - dw RocketHideout2ArrowMovement28 - db $16,$d - dw RocketHideout2ArrowMovement29 - db $17,$d - dw RocketHideout2ArrowMovement30 - db $11,$e - dw RocketHideout2ArrowMovement31 - db $10,$f - dw RocketHideout2ArrowMovement12 - db $e,$10 - dw RocketHideout2ArrowMovement32 - db $10,$10 - dw RocketHideout2ArrowMovement33 - db $12,$10 - dw RocketHideout2ArrowMovement34 - db $a,$11 - dw RocketHideout2ArrowMovement35 - db $b,$11 - dw RocketHideout2ArrowMovement36 - db $FF - -;format: direction, count -;right: $10 -;left: $20 -;up: $40 -;down: $80 -;each list is read starting from the $FF and working backwards -RocketHideout2ArrowMovement1: ; 44f1a (11:4f1a) - db $20,$02 - db $FF - -RocketHideout2ArrowMovement2: ; 44f1d (11:4f1d) - db $10,$04 - db $FF - -RocketHideout2ArrowMovement3: ; 44f20 (11:4f20) - db $40,$04 - db $10,$04 - db $FF - -RocketHideout2ArrowMovement4: ; 44f25 (11:4f25) - db $40,$04 - db $10,$04 - db $40,$01 - db $FF - -RocketHideout2ArrowMovement5: ; 44f2c (11:4f2c) - db $20,$02 - db $40,$03 - db $FF - -RocketHideout2ArrowMovement6: ; 44f31 (11:4f31) - db $80,$02 - db $10,$04 - db $FF - -RocketHideout2ArrowMovement7: ; 44f36 (11:4f36) - db $40,$02 - db $FF - -RocketHideout2ArrowMovement8: ; 44f39 (11:4f39) - db $40,$04 - db $FF - -RocketHideout2ArrowMovement9: ; 44f3c (11:4f3c) - db $20,$06 - db $FF - -RocketHideout2ArrowMovement10: ; 44f3f (11:4f3f) - db $40,$01 - db $FF - -RocketHideout2ArrowMovement11: ; 44f42 (11:4f42) - db $20,$06 - db $40,$04 - db $FF - -RocketHideout2ArrowMovement12: ; 44f47 (11:4f47) - db $80,$02 - db $FF - -RocketHideout2ArrowMovement13: ; 44f4a (11:4f4a) - db $20,$08 - db $FF - -RocketHideout2ArrowMovement14: ; 44f4d (11:4f4d) - db $20,$08 - db $40,$01 - db $FF - -RocketHideout2ArrowMovement15: ; 44f52 (11:4f52) - db $20,$08 - db $40,$06 - db $FF - -RocketHideout2ArrowMovement16: ; 44f57 (11:4f57) - db $40,$02 - db $10,$04 - db $FF - -RocketHideout2ArrowMovement17: ; 44f5c (11:4f5c) - db $40,$02 - db $10,$04 - db $40,$02 - db $FF - -RocketHideout2ArrowMovement18: ; 44f63 (11:4f63) - db $80,$02 - db $10,$04 - db $80,$02 - db $FF - -RocketHideout2ArrowMovement19: ; 44f6a (11:4f6a) - db $80,$02 - db $10,$04 - db $FF - -RocketHideout2ArrowMovement20: ; 44f6f (11:4f6f) - db $20,$0A - db $FF - -RocketHideout2ArrowMovement21: ; 44f72 (11:4f72) - db $20,$0A - db $40,$02 - db $FF - -RocketHideout2ArrowMovement22: ; 44f77 (11:4f77) - db $20,$0A - db $40,$04 - db $FF - -RocketHideout2ArrowMovement23: ; 44f7c (11:4f7c) - db $40,$02 - db $10,$02 - db $FF - -RocketHideout2ArrowMovement24: ; 44f81 (11:4f81) - db $10,$01 - db $80,$02 - db $FF - -RocketHideout2ArrowMovement25: ; 44f86 (11:4f86) - db $10,$01 - db $FF - -RocketHideout2ArrowMovement26: ; 44f89 (11:4f89) - db $80,$02 - db $10,$02 - db $FF - -RocketHideout2ArrowMovement27: ; 44f8e (11:4f8e) - db $80,$02 - db $20,$02 - db $FF - -RocketHideout2ArrowMovement28: ; 44f93 (11:4f93) - db $40,$02 - db $10,$04 - db $40,$02 - db $20,$03 - db $FF - -RocketHideout2ArrowMovement29: ; 44f9c (11:4f9c) - db $80,$02 - db $20,$04 - db $FF - -RocketHideout2ArrowMovement30: ; 44fa1 (11:4fa1) - db $20,$06 - db $40,$04 - db $20,$05 - db $FF - -RocketHideout2ArrowMovement31: ; 44fa8 (11:4fa8) - db $40,$02 - db $FF - -RocketHideout2ArrowMovement32: ; 44fab (11:4fab) - db $40,$01 - db $FF - -RocketHideout2ArrowMovement33: ; 44fae (11:4fae) - db $40,$03 - db $FF - -RocketHideout2ArrowMovement34: ; 44fb1 (11:4fb1) - db $40,$05 - db $FF - -RocketHideout2ArrowMovement35: ; 44fb4 (11:4fb4) - db $10,$01 - db $80,$02 - db $20,$04 - db $FF - -RocketHideout2ArrowMovement36: ; 44fbb (11:4fbb) - db $20,$0A - db $40,$02 - db $20,$05 - db $FF - -RocketHideout2Script3: ; 44fc2 (11:4fc2) - ld a, [$cd38] - and a - jr nz, Func_44fd7 - xor a - ld [wJoypadForbiddenButtonsMask], a - ld hl, $d736 - res 7, [hl] - ld a, $0 - ld [W_CURMAPSCRIPT], a - ret - -Func_44fd7: ; 44fd7 (11:4fd7) - ld a, [$c102] - srl a - srl a - ld hl, SpinnerPlayerFacingDirections ; $5083 - ld c, a - ld b, $0 - add hl, bc - ld a, [hl] - ld [$c102], a - ld a, [W_CURMAPTILESET] ; $d367 - cp FACILITY - ld hl, SpinnerArrowTilePointers1 ; $5023 - jr z, .asm_44ff6 - ld hl, SpinnerArrowTilePointers2 ; $5053 -.asm_44ff6 - ld a, [$cd38] - bit 0, a - jr nz, .asm_45001 - ld de, $18 - add hl, de -.asm_45001 - ld a, $4 - ld bc, $0 -.asm_45006 - push af - push hl - push bc - add hl, bc - ld a, [hli] - ld e, a - ld a, [hli] - ld d, a - ld a, [hli] - ld c, a - ld a, [hli] - ld b, a - ld a, [hli] - ld h, [hl] - ld l, a - call CopyVideoData - pop bc - ld a, $6 - add c - ld c, a - pop hl - pop af - dec a - jr nz, .asm_45006 - ret - -SpinnerArrowTilePointers1: ; 45023 (11:5023) - dw SpinnerArrowAnimTiles ;address from within tileset graphics - db 1 ;number of tiles to copy? - db BANK(SpinnerArrowAnimTiles) ;bank of tileset graphics - dw $9200 ;where to load in VRAM - - dw SpinnerArrowAnimTiles + $10 - db 1 - db BANK(SpinnerArrowAnimTiles) - dw $9210 - - dw SpinnerArrowAnimTiles + $20 - db 1 - db BANK(SpinnerArrowAnimTiles) - dw $9300 - - dw SpinnerArrowAnimTiles + $30 - db 1 - db BANK(SpinnerArrowAnimTiles) - dw $9310 - - dw Facility_GFX + $200 - db 1 - db BANK(Facility_GFX) - dw $9200 - - dw Facility_GFX + $210 - db 1 - db BANK(Facility_GFX) - dw $9210 - - dw Facility_GFX + $300 - db 1 - db BANK(Facility_GFX) - dw $9300 - - dw Facility_GFX + $310 - db 1 - db BANK(Facility_GFX) - dw $9310 - -SpinnerArrowTilePointers2: ; 45053 (11:5053) - dw SpinnerArrowAnimTiles + $10 - db 1 - db BANK(SpinnerArrowAnimTiles) - dw $93C0 - - dw SpinnerArrowAnimTiles + $30 - db 1 - db BANK(SpinnerArrowAnimTiles) - dw $93D0 - - dw SpinnerArrowAnimTiles - db 1 - db BANK(SpinnerArrowAnimTiles) - dw $94C0 - - dw SpinnerArrowAnimTiles + $20 - db 1 - db BANK(SpinnerArrowAnimTiles) - dw $94D0 - - dw Gym_GFX + $3C0 - db 1 - db BANK(Facility_GFX) - dw $93C0 - - dw Gym_GFX + $3D0 - db 1 - db BANK(Facility_GFX) - dw $93D0 - - dw Gym_GFX + $4C0 - db 1 - db BANK(Facility_GFX) - dw $94C0 - - dw Gym_GFX + $4D0 - db 1 - db BANK(Facility_GFX) - dw $94D0 - -SpinnerPlayerFacingDirections: ; 45083 (11:5083) -; This isn't the order of the facing directions. Rather, it's a list of -; the facing directions that come next. For example, when the player is -; facing down (00), the next facing direction is left (08). - db $08 ; down -> left - db $0C ; up -> right - db $04 ; left -> up - db $00 ; right -> down - -; these tiles are the animation for the tiles that push the player in dungeons like Rocket HQ -SpinnerArrowAnimTiles: ; 45087 (11:5087) - INCBIN "gfx/spinner_arrow.2bpp" - -RocketHideout2TextPointers: ; 450c7 (11:50c7) - dw RocketHideout2Text1 - dw Predef5CText - dw Predef5CText - dw Predef5CText - dw Predef5CText - -RocketHideout2TrainerHeaders: ; 450d1 (11:50d1) -RocketHideout2TrainerHeader0: ; 450d1 (11:50d1) - db $1 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d817 ; flag's byte - dw RocketHideout2BattleText2 ; 0x50e8 TextBeforeBattle - dw RocketHideout2AfterBattleTxt2 ; 0x50f2 TextAfterBattle - dw RocketHideout2EndBattleText2 ; 0x50ed TextEndBattle - dw RocketHideout2EndBattleText2 ; 0x50ed TextEndBattle - - db $ff - -RocketHideout2Text1: ; 450de (11:50de) - db $08 ; asm - ld hl, RocketHideout2TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -RocketHideout2BattleText2: ; 450e8 (11:50e8) - TX_FAR _RocketHideout2BattleText2 - db "@" - -RocketHideout2EndBattleText2: ; 450ed (11:50ed) - TX_FAR _RocketHideout2EndBattleText2 - db "@" - -RocketHideout2AfterBattleTxt2: ; 450f2 (11:50f2) - TX_FAR _RocketHideout2AfterBattleTxt2 - db "@" - -RocketHideout2Object: ; 0x450f7 (size=80) - db $2e ; border tile - - db $5 ; warps - db $8, $1b, $0, ROCKET_HIDEOUT_1 - db $8, $15, $0, ROCKET_HIDEOUT_3 - db $13, $18, $0, ROCKET_HIDEOUT_ELEVATOR - db $16, $15, $3, ROCKET_HIDEOUT_1 - db $13, $19, $1, ROCKET_HIDEOUT_ELEVATOR - - db $0 ; signs - - db $5 ; people - db SPRITE_ROCKET, $c + 4, $14 + 4, $ff, $d0, $41, ROCKET + $C8, $d ; trainer - db SPRITE_BALL, $b + 4, $1 + 4, $ff, $ff, $82, MOON_STONE ; item - db SPRITE_BALL, $8 + 4, $10 + 4, $ff, $ff, $83, NUGGET ; item - db SPRITE_BALL, $c + 4, $6 + 4, $ff, $ff, $84, TM_07 ; item - db SPRITE_BALL, $15 + 4, $3 + 4, $ff, $ff, $85, SUPER_POTION ; item - - ; warp-to - EVENT_DISP ROCKET_HIDEOUT_2_WIDTH, $8, $1b ; ROCKET_HIDEOUT_1 - EVENT_DISP ROCKET_HIDEOUT_2_WIDTH, $8, $15 ; ROCKET_HIDEOUT_3 - EVENT_DISP ROCKET_HIDEOUT_2_WIDTH, $13, $18 ; ROCKET_HIDEOUT_ELEVATOR - EVENT_DISP ROCKET_HIDEOUT_2_WIDTH, $16, $15 ; ROCKET_HIDEOUT_1 - EVENT_DISP ROCKET_HIDEOUT_2_WIDTH, $13, $19 ; ROCKET_HIDEOUT_ELEVATOR +INCLUDE "data/mapObjects/rockethideout2.asm" RocketHideout2Blocks: ; 45147 (11:5147) INCBIN "maps/rockethideout2.blk" -RocketHideout3_h: ; 0x45219 to 0x45225 (12 bytes) (bank=11) (id=201) - db FACILITY ; tileset - db ROCKET_HIDEOUT_3_HEIGHT, ROCKET_HIDEOUT_3_WIDTH ; dimensions (y, x) - dw RocketHideout3Blocks, RocketHideout3TextPointers, RocketHideout3Script ; blocks, texts, scripts - db $00 ; connections - dw RocketHideout3Object ; objects +INCLUDE "data/mapHeaders/rockethideout3.asm" -RocketHideout3Script: ; 45225 (11:5225) - call EnableAutoTextBoxDrawing - ld hl, RocketHideout3TrainerHeaders - ld de, RocketHideout3ScriptPointers - ld a, [W_ROCKETHIDEOUT3CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_ROCKETHIDEOUT3CURSCRIPT], a - ret +INCLUDE "scripts/rockethideout3.asm" -RocketHideout3ScriptPointers: ; 45238 (11:5238) - dw RocketHideout3Script0 - dw Func_324c - dw EndTrainerBattle - dw RocketHideout3Script3 - -RocketHideout3Script0: ; 45240 (11:5240) - ld a, [W_YCOORD] - ld b, a - ld a, [W_XCOORD] - ld c, a - ld hl, RocketHideout3ArrowTilePlayerMovement - call Func_3442 - cp $ff - jp z, CheckFightingMapTrainers - ld hl, $d736 - set 7, [hl] - call Func_3486 - ld a, (SFX_02_52 - SFX_Headers_02) / 3 - call PlaySound - ld a, $ff - ld [wJoypadForbiddenButtonsMask], a - ld a, $3 - ld [W_CURMAPSCRIPT], a - ret - -;format: -;db y,x -;dw pointer to movement -RocketHideout3ArrowTilePlayerMovement: ; 4526b (11:526b) - db $d,$a - dw RocketHideout3ArrowMovement6 - db $13,$a - dw RocketHideout3ArrowMovement1 - db $12,$b - dw RocketHideout3ArrowMovement2 - db $b,$c - dw RocketHideout3ArrowMovement3 - db $11,$c - dw RocketHideout3ArrowMovement4 - db $14,$c - dw RocketHideout3ArrowMovement5 - db $10,$d - dw RocketHideout3ArrowMovement6 - db $b,$e - dw RocketHideout3ArrowMovement7 - db $f,$e - dw RocketHideout3ArrowMovement6 - db $11,$e - dw RocketHideout3ArrowMovement8 - db $13,$e - dw RocketHideout3ArrowMovement9 - db $10,$f - dw RocketHideout3ArrowMovement7 - db $12,$f - dw RocketHideout3ArrowMovement10 - db $d,$10 - dw RocketHideout3ArrowMovement11 - db $c,$11 - dw RocketHideout3ArrowMovement10 - db $10,$12 - dw RocketHideout3ArrowMovement12 - db $FF - -;format: direction, count -;right: $10 -;left: $20 -;up: $40 -;down: $80 -;each list is read starting from the $FF and working backwards -RocketHideout3ArrowMovement1: ; 452ac (11:52ac) - db $10,$04 - db $40,$04 - db $10,$04 - db $FF - -RocketHideout3ArrowMovement2: ; 452b3 (11:52b3) - db $80,$04 - db $10,$04 - db $FF - -RocketHideout3ArrowMovement3: ; 452b8 (11:52b8) - db $20,$02 - db $FF - -RocketHideout3ArrowMovement4: ; 452bb (11:52bb) - db $10,$04 - db $40,$02 - db $10,$02 - db $FF - -RocketHideout3ArrowMovement5: ; 452c2 (11:52c2) - db $10,$04 - db $40,$02 - db $10,$02 - db $40,$03 - db $FF - -RocketHideout3ArrowMovement6: ; 452cb (11:52cb) - db $10,$04 - db $FF - -RocketHideout3ArrowMovement7: ; 452ce (11:52ce) - db $10,$02 - db $FF - -RocketHideout3ArrowMovement8: ; 452d1 (11:52d1) - db $10,$04 - db $40,$02 - db $FF - -RocketHideout3ArrowMovement9: ; 452d6 (11:52d6) - db $10,$04 - db $40,$04 - db $FF - -RocketHideout3ArrowMovement10: ; 452db (11:52db) - db $80,$04 - db $FF - -RocketHideout3ArrowMovement11: ; 452de (11:52de) - db $40,$02 - db $FF - -RocketHideout3ArrowMovement12: ; 452e1 (11:52e1) - db $40,$01 - db $FF - -RocketHideout3Script3 ; 452e4 (11:452e4) - ld a, [$cd38] - and a - jp nz, Func_44fd7 - xor a - ld [wJoypadForbiddenButtonsMask], a - ld hl, $d736 - res 7, [hl] - ld a, $0 - ld [W_CURMAPSCRIPT], a - ret - -RocketHideout3TextPointers: ; 452fa (11:52fa) - dw RocketHideout3Text1 - dw RocketHideout3Text2 - dw Predef5CText - dw Predef5CText - -RocketHideout3TrainerHeaders: ; 45302 (11:5302) -RocketHideout3TrainerHeader0: ; 45302 (11:5302) - db $1 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d819 ; flag's byte - dw RocketHideout3BattleText2 ; 0x5325 TextBeforeBattle - dw RocketHideout3AfterBattleTxt2 ; 0x532f TextAfterBattle - dw RocketHideout3EndBattleText2 ; 0x532a TextEndBattle - dw RocketHideout3EndBattleText2 ; 0x532a TextEndBattle - -RocketHideout3TrainerHeader2: ; 4530e (11:530e) - db $2 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d819 ; flag's byte - dw RocketHideout3BattleTxt ; 0x533e TextBeforeBattle - dw RocketHideout3AfterBattleText3 ; 0x5348 TextAfterBattle - dw RocketHideout3EndBattleText3 ; 0x5343 TextEndBattle - dw RocketHideout3EndBattleText3 ; 0x5343 TextEndBattle - - db $ff - -RocketHideout3Text1: ; 4531b (11:531b) - db $08 ; asm - ld hl, RocketHideout3TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -RocketHideout3BattleText2: ; 45325 (11:5325) - TX_FAR _RocketHideout3BattleText2 - db "@" - -RocketHideout3EndBattleText2: ; 4532a (11:532a) - TX_FAR _RocketHideout3EndBattleText2 - db "@" - -RocketHideout3AfterBattleTxt2: ; 4532f (11:532f) - TX_FAR _RocketHideout3AfterBattleTxt2 - db "@" - -RocketHideout3Text2: ; 45334 (11:5334) - db $08 ; asm - ld hl, RocketHideout3TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -RocketHideout3BattleTxt: ; 4533e (11:533e) - TX_FAR _RocketHideout3BattleTxt - db "@" - -RocketHideout3EndBattleText3: ; 45343 (11:5343) - TX_FAR _RocketHideout3EndBattleText3 - db "@" - -RocketHideout3AfterBattleText3: ; 45348 (11:5348) - TX_FAR _RocketHide3AfterBattleText3 - db "@" - -RocketHideout3Object: ; 0x4534d (size=50) - db $2e ; border tile - - db $2 ; warps - db $6, $19, $1, ROCKET_HIDEOUT_2 - db $12, $13, $0, ROCKET_HIDEOUT_4 - - db $0 ; signs - - db $4 ; people - db SPRITE_ROCKET, $16 + 4, $a + 4, $ff, $d3, $41, ROCKET + $C8, $e ; trainer - db SPRITE_ROCKET, $c + 4, $1a + 4, $ff, $d1, $42, ROCKET + $C8, $f ; trainer - db SPRITE_BALL, $11 + 4, $1a + 4, $ff, $ff, $83, TM_10 ; item - db SPRITE_BALL, $e + 4, $14 + 4, $ff, $ff, $84, RARE_CANDY ; item - - ; warp-to - EVENT_DISP ROCKET_HIDEOUT_3_WIDTH, $6, $19 ; ROCKET_HIDEOUT_2 - EVENT_DISP ROCKET_HIDEOUT_3_WIDTH, $12, $13 ; ROCKET_HIDEOUT_4 +INCLUDE "data/mapObjects/rockethideout3.asm" RocketHideout3Blocks: ; 4537f (11:537f) INCBIN "maps/rockethideout3.blk" -RocketHideout4_h: ; 0x45451 to 0x4545d (12 bytes) (bank=11) (id=202) - db FACILITY ; tileset - db ROCKET_HIDEOUT_4_HEIGHT, ROCKET_HIDEOUT_4_WIDTH ; dimensions (y, x) - dw RocketHideout4Blocks, RocketHideout4TextPointers, RocketHideout4Script ; blocks, texts, scripts - db $00 ; connections - dw RocketHideout4Object ; objects - -RocketHideout4Script: ; 4545d (11:545d) - call Func_45473 - call EnableAutoTextBoxDrawing - ld hl, RocketHideout4TrainerHeader0 - ld de, RocketHideout4ScriptPointers - ld a, [W_ROCKETHIDEOUT4CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_ROCKETHIDEOUT4CURSCRIPT], a - ret - -Func_45473: ; 45473 (11:5473) - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - ret z - ld a, [$d81b] - bit 5, a - jr nz, .asm_45496 - and $c - cp $c - jr z, .asm_4548c - ld a, $2d - jr .asm_45498 -.asm_4548c - ld a, (SFX_02_57 - SFX_Headers_02) / 3 - call PlaySound - ld hl, $d81b - set 5, [hl] -.asm_45496 - ld a, $e -.asm_45498 - ld [$d09f], a - ld bc, $050c - ld a, $17 - jp Predef - -Func_454a3: ; 454a3 (11:54a3) - xor a - ld [wJoypadForbiddenButtonsMask], a - ld [W_ROCKETHIDEOUT4CURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -RocketHideout4ScriptPointers: ; 454ae (11:54ae)c - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - dw RocketHideout4Script3 - -RocketHideout4Script3: ; 454b6 (11:54b6) - ld a, [W_ISINBATTLE] - cp $ff - jp z, Func_454a3 - call UpdateSprites - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - ld hl, $d81b - set 7, [hl] - ld a, $a - ld [H_SPRITEHEIGHT], a - call DisplayTextID - call GBFadeIn1 - ld a, $83 - ld [$cc4d], a - ld a, $11 - call Predef - ld a, $87 - ld [$cc4d], a - ld a, $15 - call Predef - call UpdateSprites - call GBFadeOut1 - xor a - ld [wJoypadForbiddenButtonsMask], a - ld hl, $d126 - set 5, [hl] - ld a, $0 - ld [W_ROCKETHIDEOUT4CURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -RocketHideout4TextPointers: ; 45501 (11:5501) - dw RocketHideout4Text1 - dw RocketHideout4Text2 - dw RocketHideout4Text3 - dw RocketHideout4Text4 - dw Predef5CText - dw Predef5CText - dw Predef5CText - dw Predef5CText - dw Predef5CText - dw RocketHideout4Text10 - -RocketHideout4TrainerHeaders: ; 45515 (11:5515) -RocketHideout4TrainerHeader0: ; 45515 (11:5515) - db $2 ; flag's bit - db ($0 << 4) ; trainer's view range - dw $d81b ; flag's byte - dw RocketHideout4BattleText2 ; 0x5593 TextBeforeBattle - dw RocketHideout4AfterBattleText2 ; 0x559d TextAfterBattle - dw RocketHideout4EndBattleText2 ; 0x5598 TextEndBattle - dw RocketHideout4EndBattleText2 ; 0x5598 TextEndBattle - -RocketHideout4TrainerHeader2: ; 45521 (11:5521) - db $3 ; flag's bit - db ($0 << 4) ; trainer's view range - dw $d81b ; flag's byte - dw RocketHideout4BattleText3 ; 0x55ac TextBeforeBattle - dw RocketHideout4AfterBattleText3 ; 0x55b6 TextAfterBattle - dw RocketHideout4EndBattleText3 ; 0x55b1 TextEndBattle - dw RocketHideout4EndBattleText3 ; 0x55b1 TextEndBattle - -RocketHideout4TrainerHeader3: ; 4552d (11:552d) - db $4 ; flag's bit - db ($1 << 4) ; trainer's view range - dw $d81b ; flag's byte - dw RocketHideout4BattleText4 ; 0x55c5 TextBeforeBattle - dw RocketHideout4AfterBattleText4 ; 0x55cf TextAfterBattle - dw RocketHideout4EndBattleText4 ; 0x55ca TextEndBattle - dw RocketHideout4EndBattleText4 ; 0x55ca TextEndBattle - - db $ff - -RocketHideout4Text1: ; 4553a (11:553a) - db $08 ; asm - ld a, [$d81b] - bit 7, a - jp nz, .asm_545571 - ld hl, UnnamedText_4557a - call PrintText - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, UnnamedText_4557f - ld de, UnnamedText_4557f - call PreBattleSaveRegisters - ldh a, [$8c] - ld [$cf13], a - call EngageMapTrainer - call InitBattleEnemyParameters - xor a - ldh [$b4], a - ld a, $3 - ld [W_ROCKETHIDEOUT4CURSCRIPT], a - ld [W_CURMAPSCRIPT], a - jr .asm_209f0 ; 0x4556f -.asm_545571 - ld hl, RocketHideout4Text10 - call PrintText -.asm_209f0 ; 0x45577 - jp TextScriptEnd - -UnnamedText_4557a: ; 4557a (11:557a) - TX_FAR _UnnamedText_4557a - db "@" +INCLUDE "data/mapHeaders/rockethideout4.asm" -UnnamedText_4557f: ; 4557f (11:557f) - TX_FAR _UnnamedText_4557f - db "@" +INCLUDE "scripts/rockethideout4.asm" -RocketHideout4Text10: ; 45584 (11:5584) - TX_FAR _UnnamedText_45584 - db "@" - -RocketHideout4Text2: ; 45589 (11:5589) - db $08 ; asm - ld hl, RocketHideout4TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -RocketHideout4BattleText2: ; 45593 (11:5593) - TX_FAR _RocketHideout4BattleText2 - db "@" - -RocketHideout4EndBattleText2: ; 45598 (11:5598) - TX_FAR _RocketHideout4EndBattleText2 - db "@" - -RocketHideout4AfterBattleText2: ; 4559d (11:559d) - TX_FAR _RocketHide4AfterBattleText2 - db "@" - -RocketHideout4Text3: ; 455a2 (11:55a2) - db $08 ; asm - ld hl, RocketHideout4TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -RocketHideout4BattleText3: ; 455ac (11:55ac) - TX_FAR _RocketHideout4BattleText3 - db "@" - -RocketHideout4EndBattleText3: ; 455b1 (11:55b1) - TX_FAR _RocketHideout4EndBattleText3 - db "@" - -RocketHideout4AfterBattleText3: ; 455b6 (11:55b6) - TX_FAR _RocketHide4AfterBattleText3 - db "@" - -RocketHideout4Text4: ; 455bb (11:55bb) - db $08 ; asm - ld hl, RocketHideout4TrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -RocketHideout4BattleText4: ; 455c5 (11:55c5) - TX_FAR _RocketHideout4BattleText4 - db "@" - -RocketHideout4EndBattleText4: ; 455ca (11:55ca) - TX_FAR _RocketHideout4EndBattleText4 - db "@" - -RocketHideout4AfterBattleText4: ; 455cf (11:55cf) - db $8 - ld hl, UnnamedText_455ec ; $55ec - call PrintText - ld hl, $d81b - bit 6, [hl] - set 6, [hl] - jr nz, .asm_455e9 ; 0x455dd $a - ld a, $88 - ld [$cc4d], a - ld a, $15 - call Predef -.asm_455e9 - jp TextScriptEnd - -UnnamedText_455ec: ; 455ec (11:55ec) - TX_FAR _UnnamedText_455ec - db "@" - -RocketHideout4Object: ; 0x455f1 (size=95) - db $2e ; border tile - - db $3 ; warps - db $a, $13, $1, ROCKET_HIDEOUT_3 - db $f, $18, $0, ROCKET_HIDEOUT_ELEVATOR - db $f, $19, $1, ROCKET_HIDEOUT_ELEVATOR - - db $0 ; signs - - db $9 ; people - db SPRITE_GIOVANNI, $3 + 4, $19 + 4, $ff, $d0, $41, GIOVANNI + $C8, $1 ; trainer - db SPRITE_ROCKET, $c + 4, $17 + 4, $ff, $d0, $42, ROCKET + $C8, $10 ; trainer - db SPRITE_ROCKET, $c + 4, $1a + 4, $ff, $d0, $43, ROCKET + $C8, $11 ; trainer - db SPRITE_ROCKET, $2 + 4, $b + 4, $ff, $d0, $44, ROCKET + $C8, $12 ; trainer - db SPRITE_BALL, $c + 4, $a + 4, $ff, $ff, $85, HP_UP ; item - db SPRITE_BALL, $4 + 4, $9 + 4, $ff, $ff, $86, TM_02 ; item - db SPRITE_BALL, $14 + 4, $c + 4, $ff, $ff, $87, IRON ; item - db SPRITE_BALL, $2 + 4, $19 + 4, $ff, $ff, $88, SILPH_SCOPE ; item - db SPRITE_BALL, $2 + 4, $a + 4, $ff, $ff, $89, LIFT_KEY ; item - - ; warp-to - EVENT_DISP ROCKET_HIDEOUT_4_WIDTH, $a, $13 ; ROCKET_HIDEOUT_3 - EVENT_DISP ROCKET_HIDEOUT_4_WIDTH, $f, $18 ; ROCKET_HIDEOUT_ELEVATOR - EVENT_DISP ROCKET_HIDEOUT_4_WIDTH, $f, $19 ; ROCKET_HIDEOUT_ELEVATOR +INCLUDE "data/mapObjects/rockethideout4.asm" RocketHideout4Blocks: ; 45650 (11:5650) INCBIN "maps/rockethideout4.blk" -RocketHideoutElevator_h: ; 0x45704 to 0x45710 (12 bytes) (bank=11) (id=203) - db LOBBY ; tileset - db ROCKET_HIDEOUT_ELEVATOR_HEIGHT, ROCKET_HIDEOUT_ELEVATOR_WIDTH ; dimensions (y, x) - dw RocketHideoutElevatorBlocks, RocketHideoutElevatorTextPointers, RocketHideoutElevatorScript ; blocks, texts, scripts - db $00 ; connections - dw RocketHideoutElevatorObject ; objects - -RocketHideoutElevatorScript: ; 45710 (11:5710) - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - push hl - call nz, RocketHideoutElevatorScript_4572c - pop hl - bit 7, [hl] - res 7, [hl] - call nz, Func_4575f - xor a - ld [$cf0c], a - inc a - ld [$cc3c], a - ret - -RocketHideoutElevatorScript_4572c: ; 4572c (11:572c) - ld hl, $d3af - ld a, [$d73b] - ld b, a - ld a, [$d73c] - ld c, a - call RocketHideoutElevatorScript_4573a +INCLUDE "data/mapHeaders/rockethideoutelevator.asm" -RocketHideoutElevatorScript_4573a: ; 4573a (11:573a) - inc hl - inc hl - ld a, b - ld [hli], a - ld a, c - ld [hli], a - ret +INCLUDE "scripts/rockethideoutelevator.asm" -RocketHideoutElevatorScript_45741: ; 45741 (11:5741) - ld hl, RocketHideoutElavatorFloors ; $5754 - call LoadItemList - ld hl, RocketHideoutElevatorWarpMaps ; $5759 - ld de, $cc5b - ld bc, $0006 - call CopyData - ret - -RocketHideoutElavatorFloors: ; 45754 (11:5754) - db $03 ; num elements in list - db $55, $54, $61 ; "B1F", "B2F", "B4F" - db $FF ; terminator - -RocketHideoutElevatorWarpMaps: ; 45759 (11:5759) -; first byte is warp number -; second byte is map number -; These specify where the player goes after getting out of the elevator. - db $04, ROCKET_HIDEOUT_1 - db $04, ROCKET_HIDEOUT_2 - db $02, ROCKET_HIDEOUT_4 - -Func_4575f: ; 4575f (11:575f) - call Delay3 - callba Func_7bf15 - ret - -RocketHideoutElevatorTextPointers: ; 4576b (11:576b) - dw RocketHideoutElevatorText1 - -RocketHideoutElevatorText1: ; 4576d (11:576d) - db $08 ; asm - ld b, LIFT_KEY - call IsItemInBag - jr z, .asm_8d8f0 ; 0x45773 - call RocketHideoutElevatorScript_45741 - ld hl, RocketHideoutElevatorWarpMaps ; $5759 - ld a, $61 - call Predef - jr .asm_46c43 ; 0x45780 -.asm_8d8f0 ; 0x45782 - ld hl, UnnamedText_4578b - call PrintText -.asm_46c43 ; 0x45788 - jp TextScriptEnd - -UnnamedText_4578b: ; 4578b (11:578b) - TX_FAR _UnnamedText_4578b ; 0x82438 - db $d, "@" - -RocketHideoutElevatorObject: ; 0x45791 (size=23) - db $f ; border tile - - db $2 ; warps - db $1, $2, $2, ROCKET_HIDEOUT_1 - db $1, $3, $4, ROCKET_HIDEOUT_1 - - db $1 ; signs - db $1, $1, $1 ; RocketHideoutElevatorText1 - - db $0 ; people - - ; warp-to - EVENT_DISP ROCKET_HIDEOUT_ELEVATOR_WIDTH, $1, $2 ; ROCKET_HIDEOUT_1 - EVENT_DISP ROCKET_HIDEOUT_ELEVATOR_WIDTH, $1, $3 ; ROCKET_HIDEOUT_1 +INCLUDE "data/mapObjects/rockethideoutelevator.asm" RocketHideoutElevatorBlocks: ; 457a8 (11:57a8) INCBIN "maps/rockethideoutelevator.blk" -SilphCoElevator_h: ; 0x457b4 to 0x457c0 (12 bytes) (bank=11) (id=236) - db LOBBY ; tileset - db SILPH_CO_ELEVATOR_HEIGHT, SILPH_CO_ELEVATOR_WIDTH ; dimensions (y, x) - dw SilphCoElevatorBlocks, SilphCoElevatorTextPointers, SilphCoElevatorScript ; blocks, texts, scripts - db $00 ; connections - dw SilphCoElevatorObject ; objects - -SilphCoElevatorScript: ; 457c0 (11:57c0) - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - push hl - call nz, SilphCoElevatorScript_457dc - pop hl - bit 7, [hl] - res 7, [hl] - call nz, Func_45827 - xor a - ld [$cf0c], a - inc a - ld [$cc3c], a - ret - -SilphCoElevatorScript_457dc: ; 457dc (11:57dc) - ld hl, $d3af - ld a, [$d73b] - ld b, a - ld a, [$d73c] - ld c, a - call SilphCoElevatorScript_457ea - -SilphCoElevatorScript_457ea: ; 457ea (11:57ea) - inc hl - inc hl - ld a, b - ld [hli], a - ld a, c - ld [hli], a - ret +INCLUDE "data/mapHeaders/silphcoelevator.asm" -SilphCoElevatorScript_457f1: ; 457f1 (11:57f1) - ld hl, SilphCoElavatorFloors ; $5804 - call LoadItemList - ld hl, SilphCoElevatorWarpMaps ; $5811 - ld de, $cc5b - ld bc, $16 - call CopyData - ret +INCLUDE "scripts/silphcoelevator.asm" -SilphCoElavatorFloors: ; 45804 (11:45804) - db $0B ; num elements in list - db $56, $57, $58, $59, $5A, $5B, $5C, $5D, $5E, $5F, $60 ; "1F", "2F", "3F", "4F", ... , "11F" - db $FF ; terminator - -SilphCoElevatorWarpMaps: ; 45811 (11:45811) -; first byte is warp number -; second byte is map number -; These specify where the player goes after getting out of the elevator. - db $03, SILPH_CO_1F - db $02, SILPH_CO_2F - db $02, SILPH_CO_3F - db $02, SILPH_CO_4F - db $02, SILPH_CO_5F - db $02, SILPH_CO_6F - db $02, SILPH_CO_7F - db $02, SILPH_CO_8F - db $02, SILPH_CO_9F - db $02, SILPH_CO_10F - db $01, SILPH_CO_11F - -Func_45827: ; 45827 (11:5827) - call Delay3 - callba Func_7bf15 - ret - -SilphCoElevatorTextPointers: ; 45833 (11:5833) - dw SilphCoElevatorText1 - -SilphCoElevatorText1: ; 45835 (11:5835) - db $08 ; asm - call SilphCoElevatorScript_457f1 - ld hl, SilphCoElevatorWarpMaps ; $5811 - ld a, $61 - call Predef - jp TextScriptEnd - -SilphCoElevatorObject: ; 0x45844 (size=23) - db $f ; border tile - - db $2 ; warps - db $3, $1, $0, $ed - db $3, $2, $0, $ed - - db $1 ; signs - db $0, $3, $1 ; SilphCoElevatorText1 - - db $0 ; people - - ; warp-to - EVENT_DISP SILPH_CO_ELEVATOR_WIDTH, $3, $1 - EVENT_DISP SILPH_CO_ELEVATOR_WIDTH, $3, $2 +INCLUDE "data/mapObjects/silphcoelevator.asm" SilphCoElevatorBlocks: ; 4585b (11:585b) INCBIN "maps/silphcoelevator.blk" -SafariZoneEast_h: ; 0x4585f to 0x4586b (12 bytes) (bank=11) (id=217) - db FOREST ; tileset - db SAFARI_ZONE_EAST_HEIGHT, SAFARI_ZONE_EAST_WIDTH ; dimensions (y, x) - dw SafariZoneEastBlocks, SafariZoneEastTextPointers, SafariZoneEastScript ; blocks, texts, scripts - db $00 ; connections - dw SafariZoneEastObject ; objects - -SafariZoneEastScript: ; 4586b (11:586b) - jp EnableAutoTextBoxDrawing - -SafariZoneEastTextPointers: ; 4586e (11:586e) - dw Predef5CText - dw Predef5CText - dw Predef5CText - dw Predef5CText - dw SafariZoneEastText5 - dw SafariZoneEastText6 - dw SafariZoneEastText7 - -SafariZoneEastText5: ; 4587c (11:587c) - TX_FAR _SafariZoneEastText5 - db "@" - -SafariZoneEastText6: ; 45881 (11:5881) - TX_FAR _SafariZoneEastText6 - db "@" +INCLUDE "data/mapHeaders/safarizoneeast.asm" -SafariZoneEastText7: ; 45886 (11:5886) - TX_FAR _SafariZoneEastText7 - db "@" +INCLUDE "scripts/safarizoneeast.asm" -SafariZoneEastObject: ; 0x4588b (size=81) - db $0 ; border tile - - db $5 ; warps - db $4, $0, $6, SAFARI_ZONE_NORTH - db $5, $0, $7, SAFARI_ZONE_NORTH - db $16, $0, $6, SAFARI_ZONE_CENTER - db $17, $0, $6, SAFARI_ZONE_CENTER - db $9, $19, $0, SAFARI_ZONE_REST_HOUSE_3 - - db $3 ; signs - db $a, $1a, $5 ; SafariZoneEastText5 - db $4, $6, $6 ; SafariZoneEastText6 - db $17, $5, $7 ; SafariZoneEastText7 - - db $4 ; people - db SPRITE_BALL, $a + 4, $15 + 4, $ff, $ff, $81, FULL_RESTORE ; item - db SPRITE_BALL, $7 + 4, $3 + 4, $ff, $ff, $82, MAX_POTION ; item - db SPRITE_BALL, $d + 4, $14 + 4, $ff, $ff, $83, CARBOS ; item - db SPRITE_BALL, $c + 4, $f + 4, $ff, $ff, $84, TM_37 ; item - - ; warp-to - EVENT_DISP SAFARI_ZONE_EAST_WIDTH, $4, $0 ; SAFARI_ZONE_NORTH - EVENT_DISP SAFARI_ZONE_EAST_WIDTH, $5, $0 ; SAFARI_ZONE_NORTH - EVENT_DISP SAFARI_ZONE_EAST_WIDTH, $16, $0 ; SAFARI_ZONE_CENTER - EVENT_DISP SAFARI_ZONE_EAST_WIDTH, $17, $0 ; SAFARI_ZONE_CENTER - EVENT_DISP SAFARI_ZONE_EAST_WIDTH, $9, $19 ; SAFARI_ZONE_REST_HOUSE_3 +INCLUDE "data/mapObjects/safarizoneeast.asm" SafariZoneEastBlocks: ; 458dc (11:58dc) INCBIN "maps/safarizoneeast.blk" -SafariZoneNorth_h: ; 0x4599f to 0x459ab (12 bytes) (bank=11) (id=218) - db FOREST ; tileset - db SAFARI_ZONE_NORTH_HEIGHT, SAFARI_ZONE_NORTH_WIDTH ; dimensions (y, x) - dw SafariZoneNorthBlocks, SafariZoneNorthTextPointers, SafariZoneNorthScript ; blocks, texts, scripts - db $00 ; connections - dw SafariZoneNorthObject ; objects - -SafariZoneNorthScript: ; 459ab (11:59ab) - jp EnableAutoTextBoxDrawing - -SafariZoneNorthTextPointers: ; 459ae (11:59ae) - dw Predef5CText - dw Predef5CText - dw SafariZoneNorthText3 - dw SafariZoneNorthText4 - dw SafariZoneNorthText5 - dw SafariZoneNorthText6 - dw SafariZoneNorthText7 - -SafariZoneNorthText3: ; 459bc (11:59bc) - TX_FAR _SafariZoneNorthText3 - db "@" - -SafariZoneNorthText4: ; 459c1 (11:59c1) - TX_FAR _SafariZoneNorthText4 - db "@" - -SafariZoneNorthText5: ; 459c6 (11:59c6) - TX_FAR _SafariZoneNorthText5 - db "@" - -SafariZoneNorthText6: ; 459cb (11:59cb) - TX_FAR _SafariZoneNorthText6 - db "@" +INCLUDE "data/mapHeaders/safarizonenorth.asm" -SafariZoneNorthText7: ; 459d0 (11:59d0) - TX_FAR _SafariZoneNorthText7 - db "@" +INCLUDE "scripts/safarizonenorth.asm" -SafariZoneNorthObject: ; 0x459d5 (size=105) - db $0 ; border tile - - db $9 ; warps - db $23, $2, $0, SAFARI_ZONE_WEST - db $23, $3, $1, SAFARI_ZONE_WEST - db $23, $8, $2, SAFARI_ZONE_WEST - db $23, $9, $3, SAFARI_ZONE_WEST - db $23, $14, $4, SAFARI_ZONE_CENTER - db $23, $15, $5, SAFARI_ZONE_CENTER - db $1e, $27, $0, SAFARI_ZONE_EAST - db $1f, $27, $1, SAFARI_ZONE_EAST - db $3, $23, $0, SAFARI_ZONE_REST_HOUSE_4 - - db $5 ; signs - db $4, $24, $3 ; SafariZoneNorthText3 - db $19, $4, $4 ; SafariZoneNorthText4 - db $1f, $d, $5 ; SafariZoneNorthText5 - db $21, $13, $6 ; SafariZoneNorthText6 - db $1c, $1a, $7 ; SafariZoneNorthText7 - - db $2 ; people - db SPRITE_BALL, $1 + 4, $19 + 4, $ff, $ff, $81, PROTEIN ; item - db SPRITE_BALL, $7 + 4, $13 + 4, $ff, $ff, $82, TM_40 ; item - - ; warp-to - EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $23, $2 ; SAFARI_ZONE_WEST - EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $23, $3 ; SAFARI_ZONE_WEST - EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $23, $8 ; SAFARI_ZONE_WEST - EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $23, $9 ; SAFARI_ZONE_WEST - EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $23, $14 ; SAFARI_ZONE_CENTER - EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $23, $15 ; SAFARI_ZONE_CENTER - EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $1e, $27 ; SAFARI_ZONE_EAST - EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $1f, $27 ; SAFARI_ZONE_EAST - EVENT_DISP SAFARI_ZONE_NORTH_WIDTH, $3, $23 ; SAFARI_ZONE_REST_HOUSE_4 +INCLUDE "data/mapObjects/safarizonenorth.asm" SafariZoneNorthBlocks: ; 45a3e (11:5a3e) INCBIN "maps/safarizonenorth.blk" -SafariZoneCenter_h: ; 0x45ba6 to 0x45bb2 (12 bytes) (bank=11) (id=220) - db FOREST ; tileset - db SAFARI_ZONE_CENTER_HEIGHT, SAFARI_ZONE_CENTER_WIDTH ; dimensions (y, x) - dw SafariZoneCenterBlocks, SafariZoneCenterTextPointers, SafariZoneCenterScript ; blocks, texts, scripts - db $00 ; connections - dw SafariZoneCenterObject ; objects - -SafariZoneCenterScript: ; 45bb2 (11:5bb2) - jp EnableAutoTextBoxDrawing - -SafariZoneCenterTextPointers: ; 45bb5 (11:5bb5) - dw Predef5CText - dw SafariZoneCenterText2 - dw SafariZoneCenterText3 +INCLUDE "data/mapHeaders/safarizonecenter.asm" -SafariZoneCenterText2: ; 45bbb (11:5bbb) - TX_FAR _SafariZoneCenterText2 - db "@" - -SafariZoneCenterText3: ; 45bc0 (11:5bc0) - TX_FAR _SafariZoneCenterText3 - db "@" +INCLUDE "scripts/safarizonecenter.asm" -SafariZoneCenterObject: ; 0x45bc5 (size=89) - db $0 ; border tile - - db $9 ; warps - db $19, $e, $2, SAFARI_ZONE_ENTRANCE - db $19, $f, $3, SAFARI_ZONE_ENTRANCE - db $a, $0, $4, SAFARI_ZONE_WEST - db $b, $0, $5, SAFARI_ZONE_WEST - db $0, $e, $4, SAFARI_ZONE_NORTH - db $0, $f, $5, SAFARI_ZONE_NORTH - db $a, $1d, $2, SAFARI_ZONE_EAST - db $b, $1d, $3, SAFARI_ZONE_EAST - db $13, $11, $0, SAFARI_ZONE_REST_HOUSE_1 - - db $2 ; signs - db $14, $12, $2 ; SafariZoneCenterText2 - db $16, $e, $3 ; SafariZoneCenterText3 - - db $1 ; people - db SPRITE_BALL, $a + 4, $e + 4, $ff, $ff, $81, NUGGET ; item - - ; warp-to - EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $19, $e ; SAFARI_ZONE_ENTRANCE - EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $19, $f ; SAFARI_ZONE_ENTRANCE - EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $a, $0 ; SAFARI_ZONE_WEST - EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $b, $0 ; SAFARI_ZONE_WEST - EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $0, $e ; SAFARI_ZONE_NORTH - EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $0, $f ; SAFARI_ZONE_NORTH - EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $a, $1d ; SAFARI_ZONE_EAST - EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $b, $1d ; SAFARI_ZONE_EAST - EVENT_DISP SAFARI_ZONE_CENTER_WIDTH, $13, $11 ; SAFARI_ZONE_REST_HOUSE_1 +INCLUDE "data/mapObjects/safarizonecenter.asm" SafariZoneCenterBlocks: ; 45c1e (11:5c1e) INCBIN "maps/safarizonecenter.blk" -SafariZoneRestHouse1_h: ; 0x45ce1 to 0x45ced (12 bytes) (bank=11) (id=221) - db GATE ; tileset - db SAFARI_ZONE_REST_HOUSE_1_HEIGHT, SAFARI_ZONE_REST_HOUSE_1_WIDTH ; dimensions (y, x) - dw SafariZoneRestHouse1Blocks, SafariZoneRestHouse1TextPointers, SafariZoneRestHouse1Script ; blocks, texts, scripts - db $00 ; connections - dw SafariZoneRestHouse1Object ; objects +INCLUDE "data/mapHeaders/safarizoneresthouse1.asm" -SafariZoneRestHouse1Script: ; 45ced (11:5ced) - jp EnableAutoTextBoxDrawing +INCLUDE "scripts/safarizoneresthouse1.asm" -SafariZoneRestHouse1TextPointers: ; 45cf0 (11:5cf0) - dw SafariZoneRestHouse1Text1 - dw SafariZoneRestHouse1Text2 +INCLUDE "data/mapObjects/safarizoneresthouse1.asm" -SafariZoneRestHouse1Text1: ; 45cf4 (11:5cf4) - TX_FAR _SafariZoneRestHouse1Text1 - db "@" +INCLUDE "data/mapHeaders/safarizoneresthouse2.asm" -SafariZoneRestHouse1Text2: ; 45cf9 (11:5cf9) - TX_FAR _SafariZoneRestHouse1Text2 - db "@" - -SafariZoneRestHouse1Object: ; 0x45cfe (size=32) - db $a ; border tile +INCLUDE "scripts/safarizoneresthouse2.asm" - db $2 ; warps - db $7, $2, $8, SAFARI_ZONE_CENTER - db $7, $3, $8, SAFARI_ZONE_CENTER +INCLUDE "data/mapObjects/safarizoneresthouse2.asm" - db $0 ; signs +INCLUDE "data/mapHeaders/safarizoneresthouse3.asm" - db $2 ; people - db SPRITE_GIRL, $2 + 4, $3 + 4, $ff, $d0, $1 ; person - db SPRITE_OAK_AIDE, $4 + 4, $1 + 4, $fe, $1, $2 ; person +INCLUDE "scripts/safarizoneresthouse3.asm" - ; warp-to - EVENT_DISP SAFARI_ZONE_REST_HOUSE_1_WIDTH, $7, $2 ; SAFARI_ZONE_CENTER - EVENT_DISP SAFARI_ZONE_REST_HOUSE_1_WIDTH, $7, $3 ; SAFARI_ZONE_CENTER +INCLUDE "data/mapObjects/safarizoneresthouse3.asm" -SafariZoneRestHouse2_h: ; 0x45d1e to 0x45d2a (12 bytes) (bank=11) (id=223) - db GATE ; tileset - db SAFARI_ZONE_REST_HOUSE_2_HEIGHT, SAFARI_ZONE_REST_HOUSE_2_WIDTH ; dimensions (y, x) - dw SafariZoneRestHouse2Blocks, SafariZoneRestHouse2TextPointers, SafariZoneRestHouse2Script ; blocks, texts, scripts - db $00 ; connections - dw SafariZoneRestHouse2Object ; objects - -SafariZoneRestHouse2Script: ; 45d2a (11:5d2a) - call EnableAutoTextBoxDrawing - ret +INCLUDE "data/mapHeaders/safarizoneresthouse4.asm" -SafariZoneRestHouse2TextPointers: ; 45d2e (11:5d2e) - dw SafariZoneRestHouse2Text1 - dw SafariZoneRestHouse2Text2 - dw SafariZoneRestHouse2Text3 +INCLUDE "scripts/safarizoneresthouse4.asm" -SafariZoneRestHouse2Text1: ; 45d34 (11:5d34) - TX_FAR _SafariZoneRestHouse2Text1 - db "@" +INCLUDE "data/mapObjects/safarizoneresthouse4.asm" -SafariZoneRestHouse2Text2: ; 45d39 (11:5d39) - TX_FAR _SafariZoneRestHouse2Text2 - db "@" +INCLUDE "data/mapHeaders/unknowndungeon2.asm" -SafariZoneRestHouse2Text3: ; 45d3e (11:5d3e) - TX_FAR _SafariZoneRestHouse2Text3 - db "@" +INCLUDE "scripts/unknowndungeon2.asm" -SafariZoneRestHouse2Object: ; 0x45d43 (size=38) - db $a ; border tile - - db $2 ; warps - db $7, $2, $7, SAFARI_ZONE_WEST - db $7, $3, $7, SAFARI_ZONE_WEST - - db $0 ; signs - - db $3 ; people - db SPRITE_OAK_AIDE, $4 + 4, $4 + 4, $fe, $0, $1 ; person - db SPRITE_BLACK_HAIR_BOY_1, $2 + 4, $0 + 4, $ff, $d3, $2 ; person - db SPRITE_ERIKA, $2 + 4, $6 + 4, $ff, $d0, $3 ; person - - ; warp-to - EVENT_DISP SAFARI_ZONE_REST_HOUSE_2_WIDTH, $7, $2 ; SAFARI_ZONE_WEST - EVENT_DISP SAFARI_ZONE_REST_HOUSE_2_WIDTH, $7, $3 ; SAFARI_ZONE_WEST - -SafariZoneRestHouse3_h: ; 0x45d69 to 0x45d75 (12 bytes) (bank=11) (id=224) - db GATE ; tileset - db SAFARI_ZONE_REST_HOUSE_3_HEIGHT, SAFARI_ZONE_REST_HOUSE_3_WIDTH ; dimensions (y, x) - dw SafariZoneRestHouse3Blocks, SafariZoneRestHouse3TextPointers, SafariZoneRestHouse3Script ; blocks, texts, scripts - db $00 ; connections - dw SafariZoneRestHouse3Object ; objects - -SafariZoneRestHouse3Script: ; 45d75 (11:5d75) - call EnableAutoTextBoxDrawing - ret - -SafariZoneRestHouse3TextPointers: ; 45d79 (11:5d79) - dw SafariZoneRestHouse3Text1 - dw SafariZoneRestHouse3Text2 - dw SafariZoneRestHouse3Text3 - -SafariZoneRestHouse3Text1: ; 45d7f (11:5d7f) - TX_FAR _SafariZoneRestHouse3Text1 - db "@" - -SafariZoneRestHouse3Text2: ; 45d84 (11:5d84) - TX_FAR _SafariZoneRestHouse3Text2 - db "@" - -SafariZoneRestHouse3Text3: ; 45d89 (11:5d89) - TX_FAR _SafariZoneRestHouse3Text3 - db "@" - -SafariZoneRestHouse3Object: ; 0x45d8e (size=38) - db $a ; border tile - - db $2 ; warps - db $7, $2, $4, SAFARI_ZONE_EAST - db $7, $3, $4, SAFARI_ZONE_EAST - - db $0 ; signs - - db $3 ; people - db SPRITE_OAK_AIDE, $3 + 4, $1 + 4, $fe, $1, $1 ; person - db SPRITE_ROCKER, $2 + 4, $4 + 4, $ff, $ff, $2 ; person - db SPRITE_LAPRAS_GIVER, $2 + 4, $5 + 4, $ff, $ff, $3 ; person - - ; warp-to - EVENT_DISP SAFARI_ZONE_REST_HOUSE_3_WIDTH, $7, $2 ; SAFARI_ZONE_EAST - EVENT_DISP SAFARI_ZONE_REST_HOUSE_3_WIDTH, $7, $3 ; SAFARI_ZONE_EAST - -SafariZoneRestHouse4_h: ; 0x45db4 to 0x45dc0 (12 bytes) (bank=11) (id=225) - db GATE ; tileset - db SAFARI_ZONE_REST_HOUSE_4_HEIGHT, SAFARI_ZONE_REST_HOUSE_4_WIDTH ; dimensions (y, x) - dw SafariZoneRestHouse4Blocks, SafariZoneRestHouse4TextPointers, SafariZoneRestHouse4Script ; blocks, texts, scripts - db $00 ; connections - dw SafariZoneRestHouse4Object ; objects - -SafariZoneRestHouse4Script: ; 45dc0 (11:5dc0) - call EnableAutoTextBoxDrawing - ret - -SafariZoneRestHouse4TextPointers: ; 45dc4 (11:5dc4) - dw SafariZoneRestHouse4Text1 - dw SafariZoneRestHouse4Text2 - dw SafariZoneRestHouse4Text3 - -SafariZoneRestHouse4Text1: ; 45dca (11:5dca) - TX_FAR _SafariZoneRestHouse4Text1 - db "@" - -SafariZoneRestHouse4Text2: ; 45dcf (11:5dcf) - TX_FAR _SafariZoneRestHouse4Text2 - db "@" - -SafariZoneRestHouse4Text3: ; 45dd4 (11:5dd4) - TX_FAR _SafariZoneRestHouse4Text3 - db "@" - -SafariZoneRestHouse4Object: ; 0x45dd9 (size=38) - db $a ; border tile - - db $2 ; warps - db $7, $2, $8, SAFARI_ZONE_NORTH - db $7, $3, $8, SAFARI_ZONE_NORTH - - db $0 ; signs - - db $3 ; people - db SPRITE_OAK_AIDE, $3 + 4, $6 + 4, $fe, $2, $1 ; person - db SPRITE_WHITE_PLAYER, $4 + 4, $3 + 4, $ff, $ff, $2 ; person - db SPRITE_GENTLEMAN, $5 + 4, $1 + 4, $fe, $1, $3 ; person - - ; warp-to - EVENT_DISP SAFARI_ZONE_REST_HOUSE_4_WIDTH, $7, $2 ; SAFARI_ZONE_NORTH - EVENT_DISP SAFARI_ZONE_REST_HOUSE_4_WIDTH, $7, $3 ; SAFARI_ZONE_NORTH - -UnknownDungeon2_h: ; 0x45dff to 0x45e0b (12 bytes) (bank=11) (id=226) - db CAVERN ; tileset - db UNKNOWN_DUNGEON_2_HEIGHT, UNKNOWN_DUNGEON_2_WIDTH ; dimensions (y, x) - dw UnknownDungeon2Blocks, UnknownDungeon2TextPointers, UnknownDungeon2Script ; blocks, texts, scripts - db $00 ; connections - dw UnknownDungeon2Object ; objects - -UnknownDungeon2Script: ; 45e0b (11:5e0b) - jp EnableAutoTextBoxDrawing - -UnknownDungeon2TextPointers: ; 45e0e (11:5e0e) - dw Predef5CText - dw Predef5CText - dw Predef5CText - -UnknownDungeon2Object: ; 0x45e14 (size=73) - db $7d ; border tile - - db $6 ; warps - db $1, $1d, $2, UNKNOWN_DUNGEON_1 - db $6, $16, $3, UNKNOWN_DUNGEON_1 - db $7, $13, $4, UNKNOWN_DUNGEON_1 - db $1, $9, $5, UNKNOWN_DUNGEON_1 - db $3, $1, $6, UNKNOWN_DUNGEON_1 - db $b, $3, $7, UNKNOWN_DUNGEON_1 - - db $0 ; signs - - db $3 ; people - db SPRITE_BALL, $9 + 4, $1d + 4, $ff, $ff, $81, PP_UP ; item - db SPRITE_BALL, $f + 4, $4 + 4, $ff, $ff, $82, ULTRA_BALL ; item - db SPRITE_BALL, $6 + 4, $d + 4, $ff, $ff, $83, FULL_RESTORE ; item - - ; warp-to - EVENT_DISP UNKNOWN_DUNGEON_2_WIDTH, $1, $1d ; UNKNOWN_DUNGEON_1 - EVENT_DISP UNKNOWN_DUNGEON_2_WIDTH, $6, $16 ; UNKNOWN_DUNGEON_1 - EVENT_DISP UNKNOWN_DUNGEON_2_WIDTH, $7, $13 ; UNKNOWN_DUNGEON_1 - EVENT_DISP UNKNOWN_DUNGEON_2_WIDTH, $1, $9 ; UNKNOWN_DUNGEON_1 - EVENT_DISP UNKNOWN_DUNGEON_2_WIDTH, $3, $1 ; UNKNOWN_DUNGEON_1 - EVENT_DISP UNKNOWN_DUNGEON_2_WIDTH, $b, $3 ; UNKNOWN_DUNGEON_1 +INCLUDE "data/mapObjects/unknowndungeon2.asm" UnknownDungeon2Blocks: ; 45e5d (11:5e5d) INCBIN "maps/unknowndungeon2.blk" -UnknownDungeon3_h: ; 0x45ee4 to 0x45ef0 (12 bytes) (bank=11) (id=227) - db CAVERN ; tileset - db UNKNOWN_DUNGEON_3_HEIGHT, UNKNOWN_DUNGEON_3_WIDTH ; dimensions (y, x) - dw UnknownDungeon3Blocks, UnknownDungeon3TextPointers, UnknownDungeon3Script ; blocks, texts, scripts - db $00 ; connections - dw UnknownDungeon3Object ; objects +INCLUDE "data/mapHeaders/unknowndungeon3.asm" -UnknownDungeon3Script: ; 45ef0 (11:5ef0) - call EnableAutoTextBoxDrawing - ld hl, UnknownDungeon3TrainerHeaders - ld de, UnknownDungeon3ScriptPointers - ld a, [W_UNKNOWNDUNGEON3CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_UNKNOWNDUNGEON3CURSCRIPT], a - ret - -UnknownDungeon3ScriptPointers: ; 45f03 (11:5f03) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -UnknownDungeon3TextPointers: ; 45f09 (11:5f09) - dw UnknownDungeon3Text1 - dw Predef5CText - dw Predef5CText - -UnknownDungeon3TrainerHeaders: ; 45f0f (11:5f0f) -UnknownDungeon3TrainerHeader0: ; 45f0f (11:5f0f) - db $1 ; flag's bit - db ($0 << 4) ; trainer's view range - dw $d85f ; flag's byte - dw UnknownDungeon3MewtwoText ; 0x5f26 TextBeforeBattle - dw UnknownDungeon3MewtwoText ; 0x5f26 TextAfterBattle - dw UnknownDungeon3MewtwoText ; 0x5f26 TextEndBattle - dw UnknownDungeon3MewtwoText ; 0x5f26 TextEndBattle +INCLUDE "scripts/unknowndungeon3.asm" - db $ff - -UnknownDungeon3Text1: ; 45f1c (11:5f1c) - db $08 ; asm - ld hl, UnknownDungeon3TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -UnknownDungeon3MewtwoText: ; 45f26 (11:5f26) - TX_FAR _UnknownDungeon3MewtwoText ; 0x85c72 - db $8 - ld a, MEWTWO - call PlayCry - call WaitForSoundToFinish - jp TextScriptEnd - -UnknownDungeon3Object: ; 0x45f36 (size=34) - db $7d ; border tile - - db $1 ; warps - db $6, $3, $8, UNKNOWN_DUNGEON_1 - - db $0 ; signs - - db $3 ; people - db SPRITE_SLOWBRO, $d + 4, $1b + 4, $ff, $d0, $41, MEWTWO, 70 ; trainer - db SPRITE_BALL, $9 + 4, $10 + 4, $ff, $ff, $82, ULTRA_BALL ; item - db SPRITE_BALL, $1 + 4, $12 + 4, $ff, $ff, $83, MAX_REVIVE ; item - - ; warp-to - EVENT_DISP UNKNOWN_DUNGEON_3_WIDTH, $6, $3 ; UNKNOWN_DUNGEON_1 +INCLUDE "data/mapObjects/unknowndungeon3.asm" UnknownDungeon3Blocks: ; 45f58 (11:5f58) INCBIN "maps/unknowndungeon3.blk" -RockTunnel2_h: ; 0x45fdf to 0x45feb (12 bytes) (bank=11) (id=232) - db CAVERN ; tileset - db ROCK_TUNNEL_2_HEIGHT, ROCK_TUNNEL_2_WIDTH ; dimensions (y, x) - dw RockTunnel2Blocks, RockTunnel2TextPointers, RockTunnel2Script ; blocks, texts, scripts - db $00 ; connections - dw RockTunnel2Object ; objects - -RockTunnel2Script: ; 45feb (11:5feb) - call EnableAutoTextBoxDrawing - ld hl, RockTunnel2TrainerHeaders - ld de, RockTunnel2ScriptPointers - ld a, [W_ROCKTUNNEL2CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_ROCKTUNNEL2CURSCRIPT], a - ret - -RockTunnel2ScriptPointers: ; 45ffe (11:5ffe) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -RockTunnel2TextPointers: ; 46004 (11:6004) - dw RockTunnel2Text1 - dw RockTunnel2Text2 - dw RockTunnel2Text3 - dw RockTunnel2Text4 - dw RockTunnel2Text5 - dw RockTunnel2Text6 - dw RockTunnel2Text7 - dw RockTunnel2Text8 - -RockTunnel2TrainerHeaders: ; 46014 (11:6014) -RockTunnel2TrainerHeader0: ; 46014 (11:6014) - db $1 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d87d ; flag's byte - dw RockTunnel2BattleText2 ; 0x60c5 TextBeforeBattle - dw RockTunnel2AfterBattleText2 ; 0x60cf TextAfterBattle - dw RockTunnel2EndBattleText2 ; 0x60ca TextEndBattle - dw RockTunnel2EndBattleText2 ; 0x60ca TextEndBattle - -RockTunnel2TrainerHeader2: ; 46020 (11:6020) - db $2 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d87d ; flag's byte - dw RockTunnel2BattleText3 ; 0x60d4 TextBeforeBattle - dw RockTunnel2AfterBattleText3 ; 0x60de TextAfterBattle - dw RockTunnel2EndBattleText3 ; 0x60d9 TextEndBattle - dw RockTunnel2EndBattleText3 ; 0x60d9 TextEndBattle - -RockTunnel2TrainerHeader3: ; 4602c (11:602c) - db $3 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d87d ; flag's byte - dw RockTunnel2BattleText4 ; 0x60e3 TextBeforeBattle - dw RockTunnel2AfterBattleText4 ; 0x60ed TextAfterBattle - dw RockTunnel2EndBattleText4 ; 0x60e8 TextEndBattle - dw RockTunnel2EndBattleText4 ; 0x60e8 TextEndBattle - -RockTunnel2TrainerHeader4: ; 46038 (11:6038) - db $4 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d87d ; flag's byte - dw RockTunnel2BattleText5 ; 0x60f2 TextBeforeBattle - dw RockTunnel2AfterBattleText5 ; 0x60fc TextAfterBattle - dw RockTunnel2EndBattleText5 ; 0x60f7 TextEndBattle - dw RockTunnel2EndBattleText5 ; 0x60f7 TextEndBattle - -RockTunnel2TrainerHeader5: ; 46044 (11:6044) - db $5 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d87d ; flag's byte - dw RockTunnel2BattleText6 ; 0x6101 TextBeforeBattle - dw RockTunnel2AfterBattleText6 ; 0x610b TextAfterBattle - dw RockTunnel2EndBattleText6 ; 0x6106 TextEndBattle - dw RockTunnel2EndBattleText6 ; 0x6106 TextEndBattle - -RockTunnel2TrainerHeader6: ; 46050 (11:6050) - db $6 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d87d ; flag's byte - dw RockTunnel2BattleText7 ; 0x6110 TextBeforeBattle - dw RockTunnel2AfterBattleText7 ; 0x611a TextAfterBattle - dw RockTunnel2EndBattleText7 ; 0x6115 TextEndBattle - dw RockTunnel2EndBattleText7 ; 0x6115 TextEndBattle - -RockTunnel2TrainerHeader7: ; 4605c (11:605c) - db $7 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d87d ; flag's byte - dw RockTunnel2BattleText8 ; 0x611f TextBeforeBattle - dw RockTunnel2AfterBattleText8 ; 0x6129 TextAfterBattle - dw RockTunnel2EndBattleText8 ; 0x6124 TextEndBattle - dw RockTunnel2EndBattleText8 ; 0x6124 TextEndBattle - -RockTunnel2TrainerHeader8: ; 46068 (11:6068) - db $8 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d87d ; flag's byte - dw RockTunnel2BattleText9 ; 0x612e TextBeforeBattle - dw RockTunnel2AfterBattleText9 ; 0x6138 TextAfterBattle - dw RockTunnel2EndBattleText9 ; 0x6133 TextEndBattle - dw RockTunnel2EndBattleText9 ; 0x6133 TextEndBattle - - db $ff - -RockTunnel2Text1: ; 46075 (11:6075) - db $08 ; asm - ld hl, RockTunnel2TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -RockTunnel2Text2: ; 4607f (11:607f) - db $08 ; asm - ld hl, RockTunnel2TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd +INCLUDE "data/mapHeaders/rocktunnel2.asm" -RockTunnel2Text3: ; 46089 (11:6089) - db $08 ; asm - ld hl, RockTunnel2TrainerHeader3 - call TalkToTrainer - jp TextScriptEnd +INCLUDE "scripts/rocktunnel2.asm" -RockTunnel2Text4: ; 46093 (11:6093) - db $08 ; asm - ld hl, RockTunnel2TrainerHeader4 - call TalkToTrainer - jp TextScriptEnd - -RockTunnel2Text5: ; 4609d (11:609d) - db $08 ; asm - ld hl, RockTunnel2TrainerHeader5 - call TalkToTrainer - jp TextScriptEnd - -RockTunnel2Text6: ; 460a7 (11:60a7) - db $08 ; asm - ld hl, RockTunnel2TrainerHeader6 - call TalkToTrainer - jp TextScriptEnd - -RockTunnel2Text7: ; 460b1 (11:60b1) - db $08 ; asm - ld hl, RockTunnel2TrainerHeader7 - call TalkToTrainer - jp TextScriptEnd - -RockTunnel2Text8: ; 460bb (11:60bb) - db $08 ; asm - ld hl, RockTunnel2TrainerHeader8 - call TalkToTrainer - jp TextScriptEnd - -RockTunnel2BattleText2: ; 460c5 (11:60c5) - TX_FAR _RockTunnel2BattleText2 - db "@" - -RockTunnel2EndBattleText2: ; 460ca (11:60ca) - TX_FAR _RockTunnel2EndBattleText2 - db "@" - -RockTunnel2AfterBattleText2: ; 460cf (11:60cf) - TX_FAR _RockTunnel2AfterBattleText2 - db "@" - -RockTunnel2BattleText3: ; 460d4 (11:60d4) - TX_FAR _RockTunnel2BattleText3 - db "@" - -RockTunnel2EndBattleText3: ; 460d9 (11:60d9) - TX_FAR _RockTunnel2EndBattleText3 - db "@" - -RockTunnel2AfterBattleText3: ; 460de (11:60de) - TX_FAR _RockTunnel2AfterBattleText3 - db "@" - -RockTunnel2BattleText4: ; 460e3 (11:60e3) - TX_FAR _RockTunnel2BattleText4 - db "@" - -RockTunnel2EndBattleText4: ; 460e8 (11:60e8) - TX_FAR _RockTunnel2EndBattleText4 - db "@" - -RockTunnel2AfterBattleText4: ; 460ed (11:60ed) - TX_FAR _RockTunnel2AfterBattleText4 - db "@" - -RockTunnel2BattleText5: ; 460f2 (11:60f2) - TX_FAR _RockTunnel2BattleText5 - db "@" - -RockTunnel2EndBattleText5: ; 460f7 (11:60f7) - TX_FAR _RockTunnel2EndBattleText5 - db "@" - -RockTunnel2AfterBattleText5: ; 460fc (11:60fc) - TX_FAR _RockTunnel2AfterBattleText5 - db "@" - -RockTunnel2BattleText6: ; 46101 (11:6101) - TX_FAR _RockTunnel2BattleText6 - db "@" - -RockTunnel2EndBattleText6: ; 46106 (11:6106) - TX_FAR _RockTunnel2EndBattleText6 - db "@" - -RockTunnel2AfterBattleText6: ; 4610b (11:610b) - TX_FAR _RockTunnel2AfterBattleText6 - db "@" - -RockTunnel2BattleText7: ; 46110 (11:6110) - TX_FAR _RockTunnel2BattleText7 - db "@" - -RockTunnel2EndBattleText7: ; 46115 (11:6115) - TX_FAR _RockTunnel2EndBattleText7 - db "@" - -RockTunnel2AfterBattleText7: ; 4611a (11:611a) - TX_FAR _RockTunnel2AfterBattleText7 - db "@" - -RockTunnel2BattleText8: ; 4611f (11:611f) - TX_FAR _RockTunnel2BattleText8 - db "@" - -RockTunnel2EndBattleText8: ; 46124 (11:6124) - TX_FAR _RockTunnel2EndBattleText8 - db "@" - -RockTunnel2AfterBattleText8: ; 46129 (11:6129) - TX_FAR _RockTunnel2AfterBattleText8 - db "@" - -RockTunnel2BattleText9: ; 4612e (11:612e) - TX_FAR _RockTunnel2BattleText9 - db "@" - -RockTunnel2EndBattleText9: ; 46133 (11:6133) - TX_FAR _RockTunnel2EndBattleText9 - db "@" - -RockTunnel2AfterBattleText9: ; 46138 (11:6138) - TX_FAR _RockTunnel2AfterBattleText9 - db "@" - -RockTunnel2Object: ; 0x4613d (size=100) - db $3 ; border tile - - db $4 ; warps - db $19, $21, $4, ROCK_TUNNEL_1 - db $3, $1b, $5, ROCK_TUNNEL_1 - db $b, $17, $6, ROCK_TUNNEL_1 - db $3, $3, $7, ROCK_TUNNEL_1 - - db $0 ; signs - - db $8 ; people - db SPRITE_LASS, $d + 4, $b + 4, $ff, $d0, $41, JR__TRAINER_F + $C8, $9 ; trainer - db SPRITE_HIKER, $a + 4, $6 + 4, $ff, $d0, $42, HIKER + $C8, $9 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $3 + 4, $ff, $d0, $43, POKEMANIAC + $C8, $3 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $15 + 4, $14 + 4, $ff, $d3, $44, POKEMANIAC + $C8, $4 ; trainer - db SPRITE_HIKER, $a + 4, $1e + 4, $ff, $d0, $45, HIKER + $C8, $a ; trainer - db SPRITE_LASS, $1c + 4, $e + 4, $ff, $d3, $46, JR__TRAINER_F + $C8, $a ; trainer - db SPRITE_HIKER, $5 + 4, $21 + 4, $ff, $d3, $47, HIKER + $C8, $b ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $1e + 4, $1a + 4, $ff, $d0, $48, POKEMANIAC + $C8, $5 ; trainer - - ; warp-to - EVENT_DISP ROCK_TUNNEL_2_WIDTH, $19, $21 ; ROCK_TUNNEL_1 - EVENT_DISP ROCK_TUNNEL_2_WIDTH, $3, $1b ; ROCK_TUNNEL_1 - EVENT_DISP ROCK_TUNNEL_2_WIDTH, $b, $17 ; ROCK_TUNNEL_1 - EVENT_DISP ROCK_TUNNEL_2_WIDTH, $3, $3 ; ROCK_TUNNEL_1 +INCLUDE "data/mapObjects/rocktunnel2.asm" RockTunnel2Blocks: ; 461a1 (11:61a1) INCBIN "maps/rocktunnel2.blk" -SeafoamIslands2_h: ; 0x46309 to 0x46315 (12 bytes) (bank=11) (id=159) - db CAVERN ; tileset - db SEAFOAM_ISLANDS_2_HEIGHT, SEAFOAM_ISLANDS_2_WIDTH ; dimensions (y, x) - dw SeafoamIslands2Blocks, SeafoamIslands2TextPointers, SeafoamIslands2Script ; blocks, texts, scripts - db $00 ; connections - dw SeafoamIslands2Object ; objects - -SeafoamIslands2Script: ; 46315 (11:6315) - call EnableAutoTextBoxDrawing - ld hl, wFlags_0xcd60 - bit 7, [hl] - res 7, [hl] - jr z, .asm_46362 ; 0x4631f $41 - ld hl, Seafoam2HolesCoords - call CheckBoulderCoords - ret nc - ld hl, $d87f - ld a, [$cd3d] - cp $1 - jr nz, .asm_46340 ; 0x46330 $e - set 0, [hl] - ld a, $d9 - ld [$d079], a - ld a, $db - ld [$d07a], a - jr .asm_4634c ; 0x4633e $c -.asm_46340 - set 1, [hl] - ld a, $da - ld [$d079], a - ld a, $dc - ld [$d07a], a -.asm_4634c - ld a, [$d079] - ld [$cc4d], a - ld a, $11 - call Predef - ld a, [$d07a] - ld [$cc4d], a - ld a, $15 - jp Predef -.asm_46362 - ld a, $a0 - ld [$d71d], a - ld hl, Seafoam2HolesCoords - jp Func_46981 +INCLUDE "data/mapHeaders/seafoamislands2.asm" -Seafoam2HolesCoords: ; 4636d (11:636d) - db $06,$12 - db $06,$17 - db $ff +INCLUDE "scripts/seafoamislands2.asm" -SeafoamIslands2TextPointers: ; 46372 (11:6372) - dw BoulderText - dw BoulderText - -SeafoamIslands2Object: ; 0x46376 (size=72) - db $7d ; border tile - - db $7 ; warps - db $2, $4, $0, SEAFOAM_ISLANDS_3 - db $5, $7, $4, SEAFOAM_ISLANDS_1 - db $7, $d, $2, SEAFOAM_ISLANDS_3 - db $f, $13, $3, SEAFOAM_ISLANDS_3 - db $f, $17, $6, SEAFOAM_ISLANDS_1 - db $b, $19, $5, SEAFOAM_ISLANDS_3 - db $3, $19, $5, SEAFOAM_ISLANDS_1 - - db $0 ; signs - - db $2 ; people - db SPRITE_BOULDER, $6 + 4, $11 + 4, $ff, $10, $1 ; person - db SPRITE_BOULDER, $6 + 4, $16 + 4, $ff, $10, $2 ; person - - ; warp-to - EVENT_DISP SEAFOAM_ISLANDS_2_WIDTH, $2, $4 ; SEAFOAM_ISLANDS_3 - EVENT_DISP SEAFOAM_ISLANDS_2_WIDTH, $5, $7 ; SEAFOAM_ISLANDS_1 - EVENT_DISP SEAFOAM_ISLANDS_2_WIDTH, $7, $d ; SEAFOAM_ISLANDS_3 - EVENT_DISP SEAFOAM_ISLANDS_2_WIDTH, $f, $13 ; SEAFOAM_ISLANDS_3 - EVENT_DISP SEAFOAM_ISLANDS_2_WIDTH, $f, $17 ; SEAFOAM_ISLANDS_1 - EVENT_DISP SEAFOAM_ISLANDS_2_WIDTH, $b, $19 ; SEAFOAM_ISLANDS_3 - EVENT_DISP SEAFOAM_ISLANDS_2_WIDTH, $3, $19 ; SEAFOAM_ISLANDS_1 +INCLUDE "data/mapObjects/seafoamislands2.asm" SeafoamIslands2Blocks: ; 463be (11:63be) INCBIN "maps/seafoamislands2.blk" -SeafoamIslands3_h: ; 0x46445 to 0x46451 (12 bytes) (bank=11) (id=160) - db CAVERN ; tileset - db SEAFOAM_ISLANDS_3_HEIGHT, SEAFOAM_ISLANDS_3_WIDTH ; dimensions (y, x) - dw SeafoamIslands3Blocks, SeafoamIslands3TextPointers, SeafoamIslands3Script ; blocks, texts, scripts - db $00 ; connections - dw SeafoamIslands3Object ; objects +INCLUDE "data/mapHeaders/seafoamislands3.asm" -SeafoamIslands3Script: ; 46451 (11:6451) - call EnableAutoTextBoxDrawing - ld hl, wFlags_0xcd60 - bit 7, [hl] - res 7, [hl] - jr z, .asm_4649e ; 0x4645b $41 - ld hl, Seafoam3HolesCoords - call CheckBoulderCoords - ret nc - ld hl, $d880 - ld a, [$cd3d] - cp $1 - jr nz, .asm_4647c ; 0x4646c $e - set 0, [hl] - ld a, $db - ld [$d079], a - ld a, $df - ld [$d07a], a - jr .asm_46488 ; 0x4647a $c -.asm_4647c - set 1, [hl] - ld a, $dc - ld [$d079], a - ld a, $e0 - ld [$d07a], a -.asm_46488 - ld a, [$d079] - ld [$cc4d], a - ld a, $11 - call Predef - ld a, [$d07a] - ld [$cc4d], a - ld a, $15 - jp Predef -.asm_4649e - ld a, $a1 - ld [$d71d], a - ld hl, Seafoam3HolesCoords - jp Func_46981 - -Seafoam3HolesCoords: ; 464a9 (11:64a9) - db $06,$13 - db $06,$16 - db $ff +INCLUDE "scripts/seafoamislands3.asm" -SeafoamIslands3TextPointers: ; 464ae (11:64ae) - dw BoulderText - dw BoulderText - -SeafoamIslands3Object: ; 0x464b2 (size=72) - db $7d ; border tile - - db $7 ; warps - db $3, $5, $0, SEAFOAM_ISLANDS_2 - db $d, $5, $0, SEAFOAM_ISLANDS_4 - db $7, $d, $2, SEAFOAM_ISLANDS_2 - db $f, $13, $3, SEAFOAM_ISLANDS_2 - db $3, $19, $3, SEAFOAM_ISLANDS_4 - db $b, $19, $5, SEAFOAM_ISLANDS_2 - db $e, $19, $4, SEAFOAM_ISLANDS_4 - - db $0 ; signs - - db $2 ; people - db SPRITE_BOULDER, $6 + 4, $12 + 4, $ff, $10, $1 ; person - db SPRITE_BOULDER, $6 + 4, $17 + 4, $ff, $10, $2 ; person - - ; warp-to - EVENT_DISP SEAFOAM_ISLANDS_3_WIDTH, $3, $5 ; SEAFOAM_ISLANDS_2 - EVENT_DISP SEAFOAM_ISLANDS_3_WIDTH, $d, $5 ; SEAFOAM_ISLANDS_4 - EVENT_DISP SEAFOAM_ISLANDS_3_WIDTH, $7, $d ; SEAFOAM_ISLANDS_2 - EVENT_DISP SEAFOAM_ISLANDS_3_WIDTH, $f, $13 ; SEAFOAM_ISLANDS_2 - EVENT_DISP SEAFOAM_ISLANDS_3_WIDTH, $3, $19 ; SEAFOAM_ISLANDS_4 - EVENT_DISP SEAFOAM_ISLANDS_3_WIDTH, $b, $19 ; SEAFOAM_ISLANDS_2 - EVENT_DISP SEAFOAM_ISLANDS_3_WIDTH, $e, $19 ; SEAFOAM_ISLANDS_4 +INCLUDE "data/mapObjects/seafoamislands3.asm" SeafoamIslands3Blocks: ; 464fa (11:64fa) INCBIN "maps/seafoamislands3.blk" -SeafoamIslands4_h: ; 0x46581 to 0x4658d (12 bytes) (bank=11) (id=161) - db CAVERN ; tileset - db SEAFOAM_ISLANDS_4_HEIGHT, SEAFOAM_ISLANDS_4_WIDTH ; dimensions (y, x) - dw SeafoamIslands4Blocks, SeafoamIslands4TextPointers, SeafoamIslands4Script ; blocks, texts, scripts - db $00 ; connections - dw SeafoamIslands4Object ; objects +INCLUDE "data/mapHeaders/seafoamislands4.asm" -SeafoamIslands4Script: ; 4658d (11:658d) - call EnableAutoTextBoxDrawing - ld hl, wFlags_0xcd60 - bit 7, [hl] - res 7, [hl] - jr z, .asm_465dc ; 0x46597 $43 - ld hl, Seafoam4HolesCoords - call CheckBoulderCoords - ret nc - ld hl, $d881 - ld a, [$cd3d] - cp $1 - jr nz, .asm_465b8 ; 0x465a8 $e - set 0, [hl] - ld a, $dd - ld [$d079], a - ld a, $e1 - ld [$d07a], a - jr .asm_465c4 ; 0x465b6 $c -.asm_465b8 - set 1, [hl] - ld a, $de - ld [$d079], a - ld a, $e2 - ld [$d07a], a -.asm_465c4 - ld a, [$d079] - ld [$cc4d], a - ld a, $11 - call Predef - ld a, [$d07a] - ld [$cc4d], a - ld a, $15 - call Predef - jr .asm_465ed ; 0x465da $11 -.asm_465dc - ld a, $a2 - ld [$d71d], a - ld hl, Seafoam4HolesCoords - call Func_46981 - ld a, [$d732] - bit 4, a - ret nz -.asm_465ed - ld hl, SeafoamIslands4ScriptPointers - ld a, [W_SEAFOAMISLANDS4CURSCRIPT] - jp CallFunctionInTable - -Seafoam4HolesCoords: ; 465f6 (11:65f6) - db $10,$03 - db $10,$06 - db $ff +INCLUDE "scripts/seafoamislands4.asm" -SeafoamIslands4ScriptPointers: ; 465fb (11:65fb) - dw SeafoamIslands4Script0 - dw SeafoamIslands4Script1 - dw SeafoamIslands4Script2 - dw SeafoamIslands4Script3 - -SeafoamIslands4Script0: ; 46603 (11:6603) - ld a, [$d880] - and $3 - cp $3 - ret z - ld a, [$d361] - cp $8 - ret nz - ld a, [$d362] - cp $f - ret nz - ld hl, $ccd3 - ld de, RLEMovement46632 - call DecodeRLEList - dec a - ld [$cd38], a - call Func_3486 - ld hl, W_FLAGS_D733 - set 2, [hl] - ld a, $1 - ld [W_SEAFOAMISLANDS4CURSCRIPT], a - ret - -RLEMovement46632: ; 46632 (11:6632) - db $80,6 - db $10,5 - db $80,3 - db $ff - -SeafoamIslands4Script1: ; 46639 (11:6639) - ld a, [$cd38] - and a - ret nz - ld a, $0 - ld [W_SEAFOAMISLANDS4CURSCRIPT], a - ret - -SeafoamIslands4Script2: ; 46644 (11:6644) - ld a, [$d880] - and $3 - cp $3 - ret z - ld a, [W_XCOORD] - cp $12 - jr z, .asm_4665e - cp $13 - ld a, $0 - jr nz, .asm_4667b - ld de, RLEData_4667f - jr .asm_46661 -.asm_4665e - ld de, RLEData_46688 -.asm_46661 - ld hl, $ccd3 - call DecodeRLEList - dec a - ld [$cd38], a - xor a - ld [$c206], a - ld hl, $d730 - set 7, [hl] - ld hl, W_FLAGS_D733 - set 2, [hl] - ld a, $3 -.asm_4667b - ld [W_SEAFOAMISLANDS4CURSCRIPT], a - ret - -RLEData_4667f: ; 4667f (11:667f) - db $80,$06,$10,$02,$80,$04,$20,$01,$FF - -RLEData_46688: ; 46688 (11:6688) - db $80,$06,$10,$02,$80,$04,$FF - -SeafoamIslands4Script3: ; 4668f (11:668f) - ld a, [$cd38] - and a - ret nz - ld a, $0 - ld [W_SEAFOAMISLANDS4CURSCRIPT], a - ret - -SeafoamIslands4TextPointers: ; 4669a (11:669a) - dw BoulderText - dw BoulderText - dw BoulderText - dw BoulderText - dw BoulderText - dw BoulderText - -SeafoamIslands4Object: ; 0x466a6 (size=96) - db $7d ; border tile - - db $7 ; warps - db $c, $5, $1, SEAFOAM_ISLANDS_3 - db $6, $8, $2, SEAFOAM_ISLANDS_5 - db $4, $19, $3, SEAFOAM_ISLANDS_5 - db $3, $19, $4, SEAFOAM_ISLANDS_3 - db $e, $19, $6, SEAFOAM_ISLANDS_3 - db $11, $14, $0, SEAFOAM_ISLANDS_5 - db $11, $15, $1, SEAFOAM_ISLANDS_5 - - db $0 ; signs - - db $6 ; people - db SPRITE_BOULDER, $e + 4, $5 + 4, $ff, $10, $1 ; person - db SPRITE_BOULDER, $f + 4, $3 + 4, $ff, $10, $2 ; person - db SPRITE_BOULDER, $e + 4, $8 + 4, $ff, $10, $3 ; person - db SPRITE_BOULDER, $e + 4, $9 + 4, $ff, $10, $4 ; person - db SPRITE_BOULDER, $6 + 4, $12 + 4, $ff, $ff, $5 ; person - db SPRITE_BOULDER, $6 + 4, $13 + 4, $ff, $ff, $6 ; person - - ; warp-to - EVENT_DISP SEAFOAM_ISLANDS_4_WIDTH, $c, $5 ; SEAFOAM_ISLANDS_3 - EVENT_DISP SEAFOAM_ISLANDS_4_WIDTH, $6, $8 ; SEAFOAM_ISLANDS_5 - EVENT_DISP SEAFOAM_ISLANDS_4_WIDTH, $4, $19 ; SEAFOAM_ISLANDS_5 - EVENT_DISP SEAFOAM_ISLANDS_4_WIDTH, $3, $19 ; SEAFOAM_ISLANDS_3 - EVENT_DISP SEAFOAM_ISLANDS_4_WIDTH, $e, $19 ; SEAFOAM_ISLANDS_3 - EVENT_DISP SEAFOAM_ISLANDS_4_WIDTH, $11, $14 ; SEAFOAM_ISLANDS_5 - EVENT_DISP SEAFOAM_ISLANDS_4_WIDTH, $11, $15 ; SEAFOAM_ISLANDS_5 +INCLUDE "data/mapObjects/seafoamislands4.asm" SeafoamIslands4Blocks: ; 46706 (11:6706) INCBIN "maps/seafoamislands4.blk" -SeafoamIslands5_h: ; 0x4678d to 0x46799 (12 bytes) (bank=11) (id=162) - db CAVERN ; tileset - db SEAFOAM_ISLANDS_5_HEIGHT, SEAFOAM_ISLANDS_5_WIDTH ; dimensions (y, x) - dw SeafoamIslands5Blocks, SeafoamIslands5TextPointers, SeafoamIslands5Script ; blocks, texts, scripts - db $00 ; connections - dw SeafoamIslands5Object ; objects - -SeafoamIslands5Script: ; 46799 (11:6799) - call EnableAutoTextBoxDrawing - ld a, [W_SEAFOAMISLANDS5CURSCRIPT] - ld hl, SeafoamIslands5ScriptPointers - jp CallFunctionInTable - -SeafoamIslands5Script_467a5: ; 467a5 (11:67a5) - xor a - ld [W_SEAFOAMISLANDS5CURSCRIPT], a - ld [wJoypadForbiddenButtonsMask], a - ret - -SeafoamIslands5ScriptPointers: ; 467ad (11:67ad) - dw SeafoamIslands5Script0 - dw SeafoamIslands5Script1 - dw SeafoamIslands5Script2 - dw SeafoamIslands5Script3 - dw SeafoamIslands5Script4 - -SeafoamIslands5Script4: ; 467b7 (11:67b7) - ld a, [W_ISINBATTLE] - cp $ff - jr z, SeafoamIslands5Script_467a5 - call EndTrainerBattle - ld a, $0 - ld [W_SEAFOAMISLANDS5CURSCRIPT], a - ret - -SeafoamIslands5Script0: ; 467c7 (11:67c7) - ld a, [$d880] - and $3 - cp $3 - ret z - ld hl, CoordsData_467fe - call ArePlayerCoordsInArray - ret nc - ld a, [$cd3d] - cp $3 - jr nc, .asm_467e6 - ld a, $40 - ld [$ccd4], a - ld a, $2 - jr .asm_467e8 -.asm_467e6 - ld a, $1 -.asm_467e8 - ld [$cd38], a - ld a, $40 - ld [$ccd3], a - call Func_3486 - ld hl, W_FLAGS_D733 - res 2, [hl] - ld a, $1 - ld [W_SEAFOAMISLANDS5CURSCRIPT], a - ret - -CoordsData_467fe: ; 467fe (11:67fe) - db $11,$14 - db $11,$15 - db $10,$14 - db $10,$15 - db $FF - -SeafoamIslands5Script1: ; 46807 (11:6807) - ld a, [$cd38] - and a - ret nz - xor a - ld [wJoypadForbiddenButtonsMask], a - ld a, $0 - ld [W_SEAFOAMISLANDS5CURSCRIPT], a - ret - -SeafoamIslands5Script2: ; 46816 (11:6816) - ld a, [$d881] - and $3 - cp $3 - ld a, $0 - jr z, .asm_46849 - ld hl, CoordsData_4684d - call ArePlayerCoordsInArray - ld a, $0 - jr nc, .asm_46849 - ld a, [$cd3d] - cp $1 - jr nz, .asm_46837 - ld de, RLEMovementData_46859 - jr .asm_4683a -.asm_46837 - ld de, RLEMovementData_46852 -.asm_4683a - ld hl, $ccd3 - call DecodeRLEList - dec a - ld [$cd38], a - call Func_3486 - ld a, $3 -.asm_46849 - ld [W_SEAFOAMISLANDS5CURSCRIPT], a - ret - -CoordsData_4684d: ; 4684d (11:684d) - db $0E,$04 - db $0E,$05 - db $FF - -RLEMovementData_46852: ; 46852 (11:6852) - db $40,$03 - db $10,$02 - db $40,$01 - db $FF - -RLEMovementData_46859: ; 46859 (11:6859) - db $40,$03 - db $10,$03 - db $40,$01 - db $FF - -SeafoamIslands5Script3: ; 46860 (11:6860) - ld a, [$cd38] - ld b, a - cp $1 - call z, SeaFoamIslands5Script_46872 - ld a, b - and a - ret nz - ld a, $0 - ld [W_SEAFOAMISLANDS5CURSCRIPT], a - ret - -SeaFoamIslands5Script_46872: ; 46872 (11:6872) - xor a - ld [$d700], a - ld [$d11a], a - jp ForceBikeOrSurf - -SeafoamIslands5TextPointers: ; 4687c (11:687c) - dw BoulderText - dw BoulderText - dw SeafoamIslands5Text3 - dw SeafoamIslands5Text4 - dw SeafoamIslands5Text5 - -SeafoamIslands5TrainerHeaders: ; 46886 (11:6886) -SeafoamIslands5TrainerHeader0: ; 46886 (11:6886) - db $2 ; flag's bit - db ($0 << 4) ; trainer's view range - dw $d882 ; flag's byte - dw SeafoamIslands5BattleText2 ; 0x68a2 TextBeforeBattle - dw SeafoamIslands5BattleText2 ; 0x68a2 TextAfterBattle - dw SeafoamIslands5BattleText2 ; 0x68a2 TextEndBattle - dw SeafoamIslands5BattleText2 ; 0x68a2 TextEndBattle +INCLUDE "data/mapHeaders/seafoamislands5.asm" - db $ff +INCLUDE "scripts/seafoamislands5.asm" -SeafoamIslands5Text3: ; 46893 (11:6893) - db $08 ; asm - ld hl, SeafoamIslands5TrainerHeader0 - call TalkToTrainer - ld a, $4 - ld [W_SEAFOAMISLANDS5CURSCRIPT], a - jp TextScriptEnd - -SeafoamIslands5BattleText2: ; 468a2 (11:68a2) - TX_FAR _SeafoamIslands5BattleText2 ; 0x88075 - db $8 - ld a, ARTICUNO - call PlayCry - call WaitForSoundToFinish - jp TextScriptEnd - -SeafoamIslands5Text4: ; 468b2 (11:68b2) - TX_FAR _SeafoamIslands5Text4 - db "@" - -SeafoamIslands5Text5: ; 468b7 (11:68b7) - TX_FAR _SeafoamIslands5Text5 - db "@" - -SeafoamIslands5Object: ; 0x468bc (size=62) - db $7d ; border tile - - db $4 ; warps - db $11, $14, $5, SEAFOAM_ISLANDS_4 - db $11, $15, $6, SEAFOAM_ISLANDS_4 - db $7, $b, $1, SEAFOAM_ISLANDS_4 - db $4, $19, $2, SEAFOAM_ISLANDS_4 - - db $2 ; signs - db $f, $9, $4 ; SeafoamIslands5Text4 - db $1, $17, $5 ; SeafoamIslands5Text5 - - db $3 ; people - db SPRITE_BOULDER, $f + 4, $4 + 4, $ff, $ff, $1 ; person - db SPRITE_BOULDER, $f + 4, $5 + 4, $ff, $ff, $2 ; person - db SPRITE_BIRD, $1 + 4, $6 + 4, $ff, $d0, $43, ARTICUNO, 50 ; trainer - - ; warp-to - EVENT_DISP SEAFOAM_ISLANDS_5_WIDTH, $11, $14 ; SEAFOAM_ISLANDS_4 - EVENT_DISP SEAFOAM_ISLANDS_5_WIDTH, $11, $15 ; SEAFOAM_ISLANDS_4 - EVENT_DISP SEAFOAM_ISLANDS_5_WIDTH, $7, $b ; SEAFOAM_ISLANDS_4 - EVENT_DISP SEAFOAM_ISLANDS_5_WIDTH, $4, $19 ; SEAFOAM_ISLANDS_4 +INCLUDE "data/mapObjects/seafoamislands5.asm" SeafoamIslands5Blocks: ; 468fa (11:68fa) INCBIN "maps/seafoamislands5.blk" @@ -72169,819 +44736,13 @@ Func_46a01: ; 46a01 (11:6a01) ld [$ffea], a ret -HiddenObjectMaps: ; 46a40 (11:6a40) - db REDS_HOUSE_2F - db BLUES_HOUSE - db OAKS_LAB - db VIRIDIAN_POKECENTER - db VIRIDIAN_MART - db VIRIDIAN_SCHOOL - db VIRIDIAN_GYM - db MUSEUM_1F - db PEWTER_GYM - db PEWTER_MART - db PEWTER_POKECENTER - db CERULEAN_POKECENTER - db CERULEAN_GYM - db CERULEAN_MART - db LAVENDER_POKECENTER - db VERMILION_POKECENTER - db VERMILION_GYM - db CELADON_MANSION_2 - db CELADON_POKECENTER - db CELADON_GYM - db GAME_CORNER - db CELADON_HOTEL - db FUCHSIA_POKECENTER - db FUCHSIA_GYM - db CINNABAR_GYM - db CINNABAR_POKECENTER - db SAFFRON_GYM - db MT_MOON_POKECENTER - db ROCK_TUNNEL_POKECENTER - db BATTLE_CENTER - db TRADE_CENTER - db VIRIDIAN_FOREST - db MT_MOON_3 - db INDIGO_PLATEAU - db ROUTE_25 - db ROUTE_9 - db SS_ANNE_6 - db SS_ANNE_10 - db ROCKET_HIDEOUT_1 - db ROCKET_HIDEOUT_3 - db ROCKET_HIDEOUT_4 - db SAFFRON_POKECENTER - db POKEMONTOWER_5 - db ROUTE_13 - db SAFARI_ZONE_ENTRANCE - db SAFARI_ZONE_WEST - db SILPH_CO_5F - db SILPH_CO_9F - db COPYCATS_HOUSE_2F - db UNKNOWN_DUNGEON_1 - db UNKNOWN_DUNGEON_3 - db POWER_PLANT - db SEAFOAM_ISLANDS_3 - db SEAFOAM_ISLANDS_5 - db MANSION_1 - db MANSION_3 - db ROUTE_23 - db VICTORY_ROAD_2 - db $6F - db BILLS_HOUSE - db VIRIDIAN_CITY - db SAFARI_ZONE_REST_HOUSE_2 - db SAFARI_ZONE_REST_HOUSE_3 - db SAFARI_ZONE_REST_HOUSE_4 - db $B9 - db LAVENDER_HOUSE_1 - db CELADON_MANSION_5 - db FIGHTING_DOJO - db ROUTE_10 - db INDIGO_PLATEAU_LOBBY - db CINNABAR_LAB_4 - db BIKE_SHOP - db ROUTE_11 - db ROUTE_12 - db MANSION_2 - db MANSION_4 - db SILPH_CO_11F - db ROUTE_17 - db UNDERGROUND_PATH_NS - db UNDERGROUND_PATH_WE - db CELADON_CITY - db SEAFOAM_ISLANDS_4 - db VERMILION_CITY - db CERULEAN_CITY - db ROUTE_4 - db $FF - -HiddenObjectPointers: ; 46a96 (11:6a96) -; each of these pointers is for the corresponding map in HiddenObjectMaps - dw RedsHouse2FHiddenObjects - dw BluesHouseHiddenObjects - dw OaksLabHiddenObjects - dw ViridianPokecenterHiddenObjects - dw ViridianMartHiddenObjects - dw ViridianSchoolHiddenObjects - dw ViridianGymHiddenObjects - dw Museum1FHiddenObjects - dw PewterGymHiddenObjects - dw PewterMartHiddenObjects - dw PewterPokecenterHiddenObjects - dw CeruleanPokecenterHiddenObjects - dw CeruleanGymHiddenObjects - dw CeruleanMartHiddenObjects - dw LavenderPokecenterHiddenObjects - dw VermilionPokecenterHiddenObjects - dw VermilionGymHiddenObjects - dw CeladonMansion2HiddenObjects - dw CeladonPokecenterHiddenObjects - dw CeladonGymHiddenObjects - dw GameCornerHiddenObjects - dw CeladonHotelHiddenObjects - dw FuchsiaPokecenterHiddenObjects - dw FuchsiaGymHiddenObjects - dw CinnabarGymHiddenObjects - dw CinnabarPokecenterHiddenObjects - dw SaffronGymHiddenObjects - dw MtMoonPokecenterHiddenObjects - dw RockTunnelPokecenterHiddenObjects - dw BattleCenterHiddenObjects - dw TradeCenterHiddenObjects - dw ViridianForestHiddenObjects - dw MtMoon3HiddenObjects - dw IndigoPlateauHiddenObjects - dw Route25HiddenObjects - dw Route9HiddenObjects - dw SSAnne6HiddenObjects - dw SSAnne10HiddenObjects - dw RocketHideout1HiddenObjects - dw RocketHideout3HiddenObjects - dw RocketHideout4HiddenObjects - dw SaffronPokecenterHiddenObjects - dw PokemonTower5HiddenObjects - dw Route13HiddenObjects - dw SafariZoneEntranceHiddenObjects - dw SafariZoneWestHiddenObjects - dw SilphCo5FHiddenObjects - dw SilphCo9FHiddenObjects - dw CopycatsHouse2FHiddenObjects - dw UnknownDungeon1HiddenObjects - dw UnknownDungeon3HiddenObjects - dw PowerPlantHiddenObjects - dw SeafoamIslands3HiddenObjects - dw SeafoamIslands5HiddenObjects - dw Mansion1HiddenObjects - dw Mansion3HiddenObjects - dw Route23HiddenObjects - dw VictoryRoad2HiddenObjects - dw Unused6FHiddenObjects - dw BillsHouseHiddenObjects - dw ViridianCityHiddenObjects - dw SafariZoneRestHouse2HiddenObjects - dw SafariZoneRestHouse3HiddenObjects - dw SafariZoneRestHouse4HiddenObjects - dw UnusedB9HiddenObjects - dw LavenderHouse1HiddenObjects - dw CeladonMansion5HiddenObjects - dw FightingDojoHiddenObjects - dw Route10HiddenObjects - dw IndigoPlateauLobbyHiddenObjects - dw CinnabarLab4HiddenObjects - dw BikeShopHiddenObjects - dw Route11HiddenObjects - dw Route12HiddenObjects - dw Mansion2HiddenObjects - dw Mansion4HiddenObjects - dw SilphCo11FHiddenObjects - dw Route17HiddenObjects - dw UndergroundPathNsHiddenObjects - dw UndergroundPathWeHiddenObjects - dw CeladonCityHiddenObjects - dw SeafoamIslands4HiddenObjects - dw VermilionCityHiddenObjects - dw CeruleanCityHiddenObjects - dw Route4HiddenObjects - -BattleCenterHiddenObjects: ; 46b40 (11:6b40) - db $04,$05,$d0 ; XXX, y, x - dbw Bank(Func_21845), Func_21845 - db $04,$04,$d0 ; XXX, y, x - dbw Bank(Func_21825), Func_21825 - db $FF -TradeCenterHiddenObjects: ; 46b4d (11:6b4d) - db $04,$05,$d0 ; XXX, y, x - dbw Bank(Func_21845), Func_21845 - db $04,$04,$d0 ; XXX, y, x - dbw Bank(Func_21825), Func_21825 - db $FF -RedsHouse2FHiddenObjects: ; 46b5a (11:6b5a) - db $01,$00,$04 ; XXX, y, x - dbw Bank(Func_5db86), Func_5db86 - db $05,$03,$d0 ; XXX, y, x - dbw Bank(Func_5db79), Func_5db79 - db $FF -BluesHouseHiddenObjects: ; 46b67 (11:6b67) - db $01,$00,$04 ; XXX, y, x - dbw Bank(Func_62509), Func_62509 - db $01,$01,$04 ; XXX, y, x - dbw Bank(Func_62509), Func_62509 - db $01,$07,$04 ; XXX, y, x - dbw Bank(Func_62509), Func_62509 - db $FF -OaksLabHiddenObjects: ; 46b7a (11:6b7a) - db $00,$04,$04 ; XXX, y, x - dbw Bank(Func_1e958), Func_1e958 - db $00,$05,$04 ; XXX, y, x - dbw Bank(Func_1e965), Func_1e965 - db $01,$00,$04 ; XXX, y, x - dbw Bank(Func_1ecaf), Func_1ecaf - db $01,$01,$04 ; XXX, y, x - dbw Bank(Func_1ecaf), Func_1ecaf - db $FF -ViridianPokecenterHiddenObjects: ; 46b93 (11:6b93) - db $04,$00,$08 ; XXX, y, x - dbw Bank(Func_6245d), Func_6245d - db $03,$0d,$04 ; XXX, y, x - dbw Bank(Func_62516), Func_62516 - db $FF -ViridianMartHiddenObjects: ; 46ba0 (11:6ba0) - db $FF -ViridianSchoolHiddenObjects: ; 46ba1 (11:6ba1) - db $04,$03,$20 ; XXX, y, x - dbw Bank(Func_52996), Func_52996 - db $00,$03,$21 ; XXX, y, x - dbw Bank(Func_5dc1a), Func_5dc1a - db $FF -ViridianGymHiddenObjects: ; 46bae (11:6bae) - db $0f,$0f,$04 ; XXX, y, x - dbw BANK(GymStatues),GymStatues - db $0f,$12,$04 ; XXX, y, x - dbw BANK(GymStatues),GymStatues - db $FF -Museum1FHiddenObjects: ; 46bbb (11:6bbb) - db $03,$02,$04 ; XXX, y, x - dbw Bank(AerodactylFossil), AerodactylFossil - db $06,$02,$04 ; XXX, y, x - dbw Bank(KabutopsFossil), KabutopsFossil - db $FF -PewterGymHiddenObjects: ; 46bc8 (11:6bc8) - db $0a,$03,$04 ; XXX, y, x - dbw BANK(GymStatues),GymStatues - db $0a,$06,$04 ; XXX, y, x - dbw BANK(GymStatues),GymStatues - db $FF -PewterMartHiddenObjects: ; 46bd5 (11:6bd5) - db $FF -PewterPokecenterHiddenObjects: ; 46bd6 (11:6bd6) - db $04,$00,$08 ; XXX, y, x - dbw Bank(Func_6245d), Func_6245d - db $03,$0d,$04 ; XXX, y, x - dbw Bank(Func_62516), Func_62516 - db $FF -CeruleanPokecenterHiddenObjects: ; 46be3 (11:6be3) - db $04,$00,$08 ; XXX, y, x - dbw Bank(Func_6245d), Func_6245d - db $03,$0d,$04 ; XXX, y, x - dbw Bank(Func_62516), Func_62516 - db $FF -CeruleanGymHiddenObjects: ; 46bf0 (11:6bf0) - db $0b,$03,$04 ; XXX, y, x - dbw BANK(GymStatues),GymStatues - db $0b,$06,$04 ; XXX, y, x - dbw BANK(GymStatues),GymStatues - db $FF -CeruleanMartHiddenObjects: ; 46bfd (11:6bfd) - db $FF -LavenderPokecenterHiddenObjects: ; 46bfe (11:6bfe) - db $04,$00,$08 ; XXX, y, x - dbw Bank(Func_6245d), Func_6245d - db $03,$0d,$04 ; XXX, y, x - dbw Bank(Func_62516), Func_62516 - db $FF -VermilionPokecenterHiddenObjects: ; 46c0b (11:6c0b) - db $03,$0d,$04 ; XXX, y, x - dbw Bank(Func_62516), Func_62516 - db $04,$00,$04 ; XXX, y, x - dbw Bank(Func_6245d), Func_6245d - db $FF -VermilionGymHiddenObjects: ; 46c18 (11:6c18) - db $0e,$03,$04 ; XXX, y, x - dbw BANK(GymStatues), GymStatues - db $0e,$06,$04 ; XXX, y, x - dbw BANK(GymStatues), GymStatues - db $01,$06,$00 ; XXX, y, x - dbw Bank(Func_5ddef), Func_5ddef - db $07,$01,$00 ; XXX, y, x - dbw Bank(GymTrashScript), GymTrashScript - db $09,$01,$01 ; XXX, y, x - dbw Bank(GymTrashScript), GymTrashScript - db $0b,$01,$02 ; XXX, y, x - dbw Bank(GymTrashScript), GymTrashScript - db $07,$03,$03 ; XXX, y, x - dbw Bank(GymTrashScript), GymTrashScript - db $09,$03,$04 ; XXX, y, x - dbw Bank(GymTrashScript), GymTrashScript - db $0b,$03,$05 ; XXX, y, x - dbw Bank(GymTrashScript), GymTrashScript - db $07,$05,$06 ; XXX, y, x - dbw Bank(GymTrashScript), GymTrashScript - db $09,$05,$07 ; XXX, y, x - dbw Bank(GymTrashScript), GymTrashScript - db $0b,$05,$08 ; XXX, y, x - dbw Bank(GymTrashScript), GymTrashScript - db $07,$07,$09 ; XXX, y, x - dbw Bank(GymTrashScript), GymTrashScript - db $09,$07,$0a ; XXX, y, x - dbw Bank(GymTrashScript), GymTrashScript - db $0b,$07,$0b ; XXX, y, x - dbw Bank(GymTrashScript), GymTrashScript - db $07,$09,$0c ; XXX, y, x - dbw Bank(GymTrashScript), GymTrashScript - db $09,$09,$0d ; XXX, y, x - dbw Bank(GymTrashScript), GymTrashScript - db $0b,$09,$0e ; XXX, y, x - dbw Bank(GymTrashScript), GymTrashScript - db $FF -CeladonMansion2HiddenObjects: ; 46c85 (11:6c85) - db $05,$00,$04 ; XXX, y, x - dbw Bank(Func_62516), Func_62516 - db $FF -CeladonPokecenterHiddenObjects: ; 46c8c (11:6c8c) - db $04,$00,$08 ; XXX, y, x - dbw Bank(Func_6245d), Func_6245d - db $03,$0d,$04 ; XXX, y, x - dbw Bank(Func_62516), Func_62516 - db $FF -CeladonGymHiddenObjects: ; 46c99 (11:6c99) - db $0f,$03,$04 ; XXX, y, x - dbw BANK(GymStatues),GymStatues - db $0f,$06,$04 ; XXX, y, x - dbw BANK(GymStatues),GymStatues - db $FF -GameCornerHiddenObjects: ; 46ca6 (11:6ca6) - db $0f,$12,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0e,$12,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0d,$12,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0c,$12,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0b,$12,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0a,$12,$ff ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0a,$0d,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0b,$0d,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0c,$0d,$fe ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0d,$0d,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0e,$0d,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0f,$0d,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0f,$0c,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0e,$0c,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0d,$0c,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0c,$0c,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0b,$0c,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0a,$0c,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0a,$07,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0b,$07,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0c,$07,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0d,$07,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0e,$07,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0f,$07,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0f,$06,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0e,$06,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0d,$06,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0c,$06,$fd ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0b,$06,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0a,$06,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0a,$01,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0b,$01,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0c,$01,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0d,$01,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0e,$01,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $0f,$01,$d0 ; XXX, y, x - dbw Bank(Func_37e2d), Func_37e2d - db $08,$00,COIN+10 - dbw BANK(HiddenCoins),HiddenCoins - db $10,$01,COIN+10 - dbw BANK(HiddenCoins),HiddenCoins - db $0b,$03,COIN+20 - dbw BANK(HiddenCoins),HiddenCoins - db $0e,$03,COIN+10 - dbw BANK(HiddenCoins),HiddenCoins - db $0c,$04,COIN+10 - dbw BANK(HiddenCoins),HiddenCoins - db $0c,$09,COIN+20 - dbw BANK(HiddenCoins),HiddenCoins - db $0f,$09,COIN+10 - dbw BANK(HiddenCoins),HiddenCoins - db $0e,$10,COIN+10 - dbw BANK(HiddenCoins),HiddenCoins - db $10,$0a,COIN+10 - dbw BANK(HiddenCoins),HiddenCoins - db $07,$0b,COIN+40 - dbw BANK(HiddenCoins),HiddenCoins - db $08,$0f,COIN+100 - dbw BANK(HiddenCoins),HiddenCoins - db $0f,$0c,COIN+10 - dbw BANK(HiddenCoins),HiddenCoins - db $FF -CeladonHotelHiddenObjects: ; 46dc7 (11:6dc7) - db $03,$0d,$04 ; XXX, y, x - dbw Bank(Func_62516), Func_62516 - db $04,$00,$08 ; XXX, y, x - dbw Bank(Func_6245d), Func_6245d - db $FF -FuchsiaPokecenterHiddenObjects: ; 46dd4 (11:6dd4) - db $03,$0d,$04 ; XXX, y, x - dbw Bank(Func_62516), Func_62516 - db $04,$00,$04 ; XXX, y, x - dbw Bank(Func_6245d), Func_6245d - db $FF -FuchsiaGymHiddenObjects: ; 46de1 (11:6de1) - db $0f,$03,$04 ; XXX, y, x - dbw BANK(GymStatues),GymStatues - db $0f,$06,$04 ; XXX, y, x - dbw BANK(GymStatues),GymStatues - db $FF -CinnabarGymHiddenObjects: ; 46dee (11:6dee) - db $0d,$11,$04 ; XXX, y, x - dbw BANK(GymStatues),GymStatues - db $07,$0f,$01 ; XXX, y, x - dbw Bank(Func_1eaa17), Func_1eaa17 - db $01,$0a,$12 ; XXX, y, x - dbw Bank(Func_1eaa17), Func_1eaa17 - db $07,$09,$13 ; XXX, y, x - dbw Bank(Func_1eaa17), Func_1eaa17 - db $0d,$09,$14 ; XXX, y, x - dbw Bank(Func_1eaa17), Func_1eaa17 - db $0d,$01,$05 ; XXX, y, x - dbw Bank(Func_1eaa17), Func_1eaa17 - db $07,$01,$16 ; XXX, y, x - dbw Bank(Func_1eaa17), Func_1eaa17 - db $FF -CinnabarPokecenterHiddenObjects: ; 46e19 (11:6e19) - db $04,$00,$04 ; XXX, y, x - dbw Bank(Func_6245d), Func_6245d - db $03,$0d,$04 ; XXX, y, x - dbw Bank(Func_62516), Func_62516 - db $FF -SaffronGymHiddenObjects: ; 46e26 (11:6e26) - db $0f,$09,$04 ; XXX, y, x - dbw BANK(GymStatues),GymStatues - db $FF -MtMoonPokecenterHiddenObjects: ; 46e2d (11:6e2d) - db $04,$00,$08 ; XXX, y, x - dbw Bank(Func_6245d), Func_6245d - db $03,$0d,$04 ; XXX, y, x - dbw Bank(Func_62516), Func_62516 - db $FF -RockTunnelPokecenterHiddenObjects: ; 46e3a (11:6e3a) - db $04,$00,$08 ; XXX, y, x - dbw Bank(Func_6245d), Func_6245d - db $03,$0d,$04 ; XXX, y, x - dbw Bank(Func_62516), Func_62516 - db $FF -ViridianForestHiddenObjects: ; 46e47 (11:6e47) - db $12,$01,POTION - dbw BANK(HiddenItems),HiddenItems - db $2a,$10,ANTIDOTE - dbw BANK(HiddenItems),HiddenItems - db $FF -MtMoon3HiddenObjects: ; 46e54 (11:6e54) - db $0c,$12,MOON_STONE - dbw BANK(HiddenItems),HiddenItems - db $09,$21,ETHER - dbw BANK(HiddenItems),HiddenItems - db $FF -IndigoPlateauHiddenObjects: ; 46e61 (11:6e61) - db $0d,$08,$ff ; XXX, y, x - dbw Bank(Func_52a2f), Func_52a2f - db $0d,$0b,$00 ; XXX, y, x - dbw Bank(Func_52a2f), Func_52a2f - db $FF -Route25HiddenObjects: ; 46e6e (11:6e6e) - db $03,$26,ETHER - dbw BANK(HiddenItems),HiddenItems - db $01,$0a,ELIXER - dbw BANK(HiddenItems),HiddenItems - db $FF -Route9HiddenObjects: ; 46e7b (11:6e7b) - db $07,$0e,ETHER - dbw BANK(HiddenItems),HiddenItems - db $FF -SSAnne6HiddenObjects: ; 46e82 (11:6e82) - db $05,$0d,$00 ; XXX, y, x - dbw Bank(Func_5ddef), Func_5ddef - db $07,$0d,$00 ; XXX, y, x - dbw Bank(Func_5ddef), Func_5ddef - db $09,$0d,GREAT_BALL - dbw BANK(HiddenItems),HiddenItems - db $FF -SSAnne10HiddenObjects: ; 46e95 (11:6e95) - db $01,$03,HYPER_POTION - dbw BANK(HiddenItems),HiddenItems - db $FF -Route10HiddenObjects: ; 46e9c (11:6e9c) - db $11,$09,SUPER_POTION - dbw BANK(HiddenItems),HiddenItems - db $35,$10,MAX_ETHER - dbw BANK(HiddenItems),HiddenItems - db $FF -RocketHideout1HiddenObjects: ; 46ea9 (11:6ea9) - db $0f,$15,PP_UP - dbw BANK(HiddenItems),HiddenItems - db $FF -RocketHideout3HiddenObjects: ; 46eb0 (11:6eb0) - db $11,$1b,NUGGET - dbw BANK(HiddenItems),HiddenItems - db $FF -RocketHideout4HiddenObjects: ; 46eb7 (11:6eb7) - db $01,$19,SUPER_POTION - dbw BANK(HiddenItems),HiddenItems - db $FF -SaffronPokecenterHiddenObjects: ; 46ebe (11:6ebe) - db $04,$00,$04 ; XXX, y, x - dbw Bank(Func_6245d), Func_6245d - db $03,$0d,$04 ; XXX, y, x - dbw Bank(Func_62516), Func_62516 - db $FF -PokemonTower5HiddenObjects: ; 46ecb (11:6ecb) - db $0c,$04,ELIXER - dbw BANK(HiddenItems),HiddenItems - db $FF -Route13HiddenObjects: ; 46ed2 (11:6ed2) - db $0e,$01,PP_UP - dbw BANK(HiddenItems),HiddenItems - db $0d,$10,CALCIUM - dbw BANK(HiddenItems),HiddenItems - db $FF -SafariZoneEntranceHiddenObjects: ; 46edf (11:6edf) - db $01,$0a,NUGGET - dbw BANK(HiddenItems),HiddenItems - db $FF -SafariZoneWestHiddenObjects: ; 46ee6 (11:6ee6) - db $05,$06,REVIVE - dbw BANK(HiddenItems),HiddenItems - db $FF -SilphCo5FHiddenObjects: ; 46eed (11:6eed) - db $03,$0c,ELIXER - dbw BANK(HiddenItems),HiddenItems - db $FF -SilphCo9FHiddenObjects: ; 46ef4 (11:6ef4) - db $0f,$02,MAX_POTION - dbw BANK(HiddenItems),HiddenItems - db $FF -CopycatsHouse2FHiddenObjects: ; 46efb (11:6efb) - db $01,$01,NUGGET - dbw BANK(HiddenItems),HiddenItems - db $FF -UnknownDungeon1HiddenObjects: ; 46f02 (11:6f02) - db $0b,$0e,RARE_CANDY - dbw BANK(HiddenItems),HiddenItems - db $FF -UnknownDungeon3HiddenObjects: ; 46f09 (11:6f09) - db $03,$1b,ULTRA_BALL - dbw BANK(HiddenItems),HiddenItems - db $FF -PowerPlantHiddenObjects: ; 46f10 (11:6f10) - db $10,$11,MAX_ELIXER - dbw BANK(HiddenItems),HiddenItems - db $01,$0c,PP_UP - dbw BANK(HiddenItems),HiddenItems - db $FF -SeafoamIslands3HiddenObjects: ; 46f1d (11:6f1d) - db $0f,$0f,NUGGET - dbw BANK(HiddenItems),HiddenItems - db $FF -SeafoamIslands5HiddenObjects: ; 46f24 (11:6f24) - db $11,$19,ULTRA_BALL - dbw BANK(HiddenItems),HiddenItems - db $FF -Mansion1HiddenObjects: ; 46f2b (11:6f2b) - db $10,$08,MOON_STONE - dbw BANK(HiddenItems),HiddenItems - db $05,$02,$04 ; XXX, y, x - dbw BANK(Func_44316),Func_44316 - db $FF -Mansion2HiddenObjects: ; 46f38 (11:6f38) - db $0b,$02,$04 ; XXX, y, x - dbw Bank(Func_52037), Func_52037 - db $FF -Mansion3HiddenObjects: ; 46f3f (11:6f3f) - db $09,$01,MAX_REVIVE - dbw BANK(HiddenItems),HiddenItems - db $05,$0a,$04 ; XXX, y, x - dbw Bank(Func_5227a), Func_5227a - db $FF -Mansion4HiddenObjects: ; 46f4c (11:6f4c) - db $09,$01,RARE_CANDY - dbw BANK(HiddenItems),HiddenItems - db $03,$14,$04 ; XXX, y, x - dbw Bank(Func_52420), Func_52420 - db $19,$12,$04 ; XXX, y, x - dbw Bank(Func_52420), Func_52420 - db $FF -Route23HiddenObjects: ; 46f5f (11:6f5f) - db $2c,$09,FULL_RESTORE - dbw BANK(HiddenItems),HiddenItems - db $46,$13,ULTRA_BALL - dbw BANK(HiddenItems),HiddenItems - db $5a,$08,MAX_ETHER - dbw BANK(HiddenItems),HiddenItems - db $FF -VictoryRoad2HiddenObjects: ; 46f72 (11:6f72) - db $02,$05,ULTRA_BALL - dbw BANK(HiddenItems),HiddenItems - db $07,$1a,FULL_RESTORE - dbw BANK(HiddenItems),HiddenItems - db $FF -Unused6FHiddenObjects: ; 46f7f (11:6f7f) - db $0b,$0e,MAX_ELIXER - dbw BANK(HiddenItems),HiddenItems - db $FF -BillsHouseHiddenObjects: ; 46f86 (11:6f86) - db $04,$01,$04 ; XXX, y, x - dbw Bank(Func_1eb6e), Func_1eb6e - db $FF -ViridianCityHiddenObjects: ; 46f8d (11:6f8d) - db $04,$0e,POTION - dbw BANK(HiddenItems),HiddenItems - db $FF -SafariZoneRestHouse2HiddenObjects: ; 46f94 (11:6f94) - db $04,$00,$08 ; XXX, y, x - dbw Bank(Func_6245d), Func_6245d - db $03,$0d,$04 ; XXX, y, x - dbw Bank(Func_62516), Func_62516 - db $FF -SafariZoneRestHouse3HiddenObjects: ; 46fa1 (11:6fa1) - db $04,$00,$08 ; XXX, y, x - dbw Bank(Func_6245d), Func_6245d - db $03,$0d,$04 ; XXX, y, x - dbw Bank(Func_62516), Func_62516 - db $FF -SafariZoneRestHouse4HiddenObjects: ; 46fae (11:6fae) - db $04,$00,$08 ; XXX, y, x - dbw Bank(Func_6245d), Func_6245d - db $03,$0d,$04 ; XXX, y, x - dbw Bank(Func_62516), Func_62516 - db $FF -UnusedB9HiddenObjects: ; 46fbb (11:6fbb) - db $02,$01,$04 ; XXX, y, x - dbw Bank(Func_5db8f), Func_5db8f - db $FF -LavenderHouse1HiddenObjects: ; 46fc2 (11:6fc2) - db $01,$00,$00 ; XXX, y, x - dbw Bank(Func_1eb60), Func_1eb60 - db $01,$01,$00 ; XXX, y, x - dbw Bank(Func_1eb60), Func_1eb60 - db $01,$07,$00 ; XXX, y, x - dbw Bank(Func_1eb60), Func_1eb60 - db $FF -CeladonMansion5HiddenObjects: ; 46fd5 (11:6fd5) - db $00,$03,$34 ; XXX, y, x - dbw Bank(Func_5dc1a), Func_5dc1a - db $00,$04,$34 ; XXX, y, x - dbw Bank(Func_5dc1a), Func_5dc1a - db $04,$03,$35 ; XXX, y, x - dbw Bank(Func_52996), Func_52996 - db $FF -FightingDojoHiddenObjects: ; 46fe8 (11:6fe8) - db $09,$03,$04 ; XXX, y, x - dbw Bank(Func_52a22), Func_52a22 - db $09,$06,$04 ; XXX, y, x - dbw Bank(Func_52a22), Func_52a22 - db $00,$04,$04 ; XXX, y, x - dbw Bank(Func_52a08), Func_52a08 - db $00,$05,$04 ; XXX, y, x - dbw Bank(Func_52a15), Func_52a15 - db $FF -IndigoPlateauLobbyHiddenObjects: ; 47001 (11:7001) - db $07,$0f,$04 ; XXX, y, x - dbw Bank(Func_62516), Func_62516 - db $FF -CinnabarLab4HiddenObjects: ; 47008 (11:7008) - db $04,$00,$04 ; XXX, y, x - dbw Bank(Func_62516), Func_62516 - db $04,$02,$04 ; XXX, y, x - dbw Bank(Func_62516), Func_62516 - db $FF -BikeShopHiddenObjects: ; 47015 (11:7015) - db $00,$01,$d0 ; XXX, y, x - dbw Bank(Func_1e94b), Func_1e94b - db $01,$02,$d0 ; XXX, y, x - dbw Bank(Func_1e94b), Func_1e94b - db $02,$01,$d0 ; XXX, y, x - dbw Bank(Func_1e94b), Func_1e94b - db $02,$03,$d0 ; XXX, y, x - dbw Bank(Func_1e94b), Func_1e94b - db $04,$00,$d0 ; XXX, y, x - dbw Bank(Func_1e94b), Func_1e94b - db $05,$01,$d0 ; XXX, y, x - dbw Bank(Func_1e94b), Func_1e94b - db $FF -Route11HiddenObjects: ; 4703a (11:703a) - db $05,$30,ESCAPE_ROPE - dbw BANK(HiddenItems),HiddenItems - db $FF -Route12HiddenObjects: ; 47041 (11:7041) - db $3f,$02,HYPER_POTION - dbw BANK(HiddenItems),HiddenItems - db $FF -SilphCo11FHiddenObjects: ; 47048 (11:7048) - db $0c,$0a,$04 ; XXX, y, x - dbw Bank(Func_62516), Func_62516 - db $FF -Route17HiddenObjects: ; 4704f (11:704f) - db $0e,$0f,RARE_CANDY - dbw BANK(HiddenItems),HiddenItems - db $2d,$08,FULL_RESTORE - dbw BANK(HiddenItems),HiddenItems - db $48,$11,PP_UP - dbw BANK(HiddenItems),HiddenItems - db $5b,$04,MAX_REVIVE - dbw BANK(HiddenItems),HiddenItems - db $79,$08,MAX_ELIXER - dbw BANK(HiddenItems),HiddenItems - db $FF -UndergroundPathNsHiddenObjects: ; 4706e (11:706e) - db $04,$03,FULL_RESTORE - dbw BANK(HiddenItems),HiddenItems - db $22,$04,X_SPECIAL - dbw BANK(HiddenItems),HiddenItems - db $FF -UndergroundPathWeHiddenObjects: ; 4707b (11:707b) - db $02,$0c,NUGGET - dbw BANK(HiddenItems),HiddenItems - db $05,$15,ELIXER - dbw BANK(HiddenItems),HiddenItems - db $FF -CeladonCityHiddenObjects: ; 47088 (11:7088) - db $0f,$30,PP_UP - dbw BANK(HiddenItems),HiddenItems - db $FF -SeafoamIslands4HiddenObjects: ; 4708f (11:708f) - db $10,$09,MAX_ELIXER - dbw BANK(HiddenItems),HiddenItems - db $FF -VermilionCityHiddenObjects: ; 47096 (11:7096) - db $0b,$0e,MAX_ETHER - dbw BANK(HiddenItems),HiddenItems - db $FF -CeruleanCityHiddenObjects: ; 4709d (11:709d) - db $08,$0f,RARE_CANDY - dbw BANK(HiddenItems),HiddenItems - db $FF -Route4HiddenObjects: ; 470a4 (11:70a4) - db $03,$28,GREAT_BALL - dbw BANK(HiddenItems),HiddenItems - db $FF +INCLUDE "data/hidden_objects.asm" SECTION "bank12",ROMX,BANK[$12] -Route7_h: ; 0x48000 to 0x48022 (34 bytes) (bank=12) (id=18) - db OVERWORLD ; tileset - db ROUTE_7_HEIGHT, ROUTE_7_WIDTH ; dimensions (y, x) - dw Route7Blocks, Route7TextPointers, Route7Script ; blocks, texts, scripts - db WEST | EAST ; connections - WEST_MAP_CONNECTION CELADON_CITY, CELADON_CITY_WIDTH, -3, 1, CELADON_CITY_HEIGHT - 3, CeladonCityBlocks, ROUTE_7_WIDTH - EAST_MAP_CONNECTION SAFFRON_CITY, SAFFRON_CITY_WIDTH, -3, 1, SAFFRON_CITY_HEIGHT - 3, SaffronCityBlocks, ROUTE_7_WIDTH - dw Route7Object ; objects - -Route7Object: ; 0x48022 (size=47) - db $f ; border tile - - db $5 ; warps - db $9, $12, $2, ROUTE_7_GATE - db $a, $12, $3, ROUTE_7_GATE - db $9, $b, $0, ROUTE_7_GATE - db $a, $b, $1, ROUTE_7_GATE - db $d, $5, $0, PATH_ENTRANCE_ROUTE_7 - - db $1 ; signs - db $d, $3, $1 ; Route7Text1 - - db $0 ; people - - ; warp-to - EVENT_DISP ROUTE_7_WIDTH, $9, $12 ; ROUTE_7_GATE - EVENT_DISP ROUTE_7_WIDTH, $a, $12 ; ROUTE_7_GATE - EVENT_DISP ROUTE_7_WIDTH, $9, $b ; ROUTE_7_GATE - EVENT_DISP ROUTE_7_WIDTH, $a, $b ; ROUTE_7_GATE - EVENT_DISP ROUTE_7_WIDTH, $d, $5 ; PATH_ENTRANCE_ROUTE_7 +INCLUDE "data/mapHeaders/route7.asm" + +INCLUDE "data/mapObjects/route7.asm" Route7Blocks: ; 48051 (12:4051) INCBIN "maps/route7.blk" @@ -73068,4155 +44829,268 @@ Func_4813f: ; 4813f (12:413f) ld c, $4 jp DelayFrames -Route7Script: ; 48152 (12:4152) - jp EnableAutoTextBoxDrawing - -Route7TextPointers: ; 48155 (12:4155) - dw Route7Text1 - -Route7Text1: ; 48157 (12:4157) - TX_FAR _Route7Text1 - db "@" - -RedsHouse1F_h: ; 4815c (12:415c) - db REDS_HOUSE_1 ; tileset - db REDS_HOUSE_1F_HEIGHT, REDS_HOUSE_1F_WIDTH ; dimensions - dw RedsHouse1FBlocks, RedsHouse1FTextPointers, RedsHouse1FScript - db 0 ; no connections - dw RedsHouse1FObject - -RedsHouse1FScript: ; 48168 (12:4168) - jp EnableAutoTextBoxDrawing - -RedsHouse1FTextPointers: ; 4816b (12:416b) - dw RedsHouse1FText1 - dw RedsHouse1FText2 - -RedsHouse1FText1: ; 4816f (12:416f) ; 416F Mom - db 8 - ld a, [$D72E] - bit 3, a - jr nz, .heal ; if player has received a Pokémon from Oak, heal team - ld hl, MomWakeUpText - call PrintText - jr .done -.heal - call MomHealPokemon -.done - jp TextScriptEnd - -MomWakeUpText: ; 48185 (12:4185) - TX_FAR _MomWakeUpText - db "@" - -MomHealPokemon: ; 4818a (12:418a) - ld hl, MomHealText1 - call PrintText - call GBFadeOut2 - call ReloadMapData - PREDEF HealPartyPredef - ld a, MUSIC_PKMN_HEALED - ld [$C0EE], a - call PlaySound ; play sound? -.next - ld a, [$C026] - cp MUSIC_PKMN_HEALED - jr z, .next - ld a, [$D35B] - ld [$C0EE], a - call PlaySound - call GBFadeIn2 - ld hl, MomHealText2 - jp PrintText - -MomHealText1: ; 481bc (12:41bc) - TX_FAR _MomHealText1 - db "@" -MomHealText2: ; 481c1 (12:41c1) - TX_FAR _MomHealText2 - db "@" - -RedsHouse1FText2: ; 0x481c6 TV - db 8 - ld a,[$C109] - cp 4 - ld hl,TVWrongSideText - jr nz,.done ; if player is not facing up - ld hl,StandByMeText -.done - call PrintText - jp TextScriptEnd - -StandByMeText: ; 481da (12:41da) - TX_FAR _StandByMeText - db "@" - -TVWrongSideText: ; 481df (12:41df) - TX_FAR _TVWrongSideText - db "@" - -RedsHouse1FObject: ; 481e4 (12:41e4) - db $0A ; border tile - - db 3 ; warps - db 7,2,0,$FF ; exit1 - db 7,3,0,$FF ; exit2 - db 1,7,0,$26 ; staircase +INCLUDE "scripts/route7.asm" - db 1 ; signs - db 1,3,2 ; TV +INCLUDE "data/mapHeaders/redshouse1f.asm" - db 1 ; people - db $33,4+4,5+4,$FF,$D2,1 ; Mom +INCLUDE "scripts/redshouse1f.asm" - ; warp-to - EVENT_DISP REDS_HOUSE_1F_WIDTH, 7, 2 - EVENT_DISP REDS_HOUSE_1F_WIDTH, 7, 3 - EVENT_DISP REDS_HOUSE_1F_WIDTH, 1, 7 +INCLUDE "data/mapObjects/redshouse1f.asm" RedsHouse1FBlocks: ; 48209 (12:4209) INCBIN "maps/redshouse1f.blk" -CeladonMart3_h: ; 0x48219 to 0x48225 (12 bytes) (bank=12) (id=124) - db LOBBY ; tileset - db CELADON_MART_3_HEIGHT, CELADON_MART_3_WIDTH ; dimensions (y, x) - dw CeladonMart3Blocks, CeladonMart3TextPointers, CeladonMart3Script ; blocks, texts, scripts - db $00 ; connections - dw CeladonMart3Object ; objects - -CeladonMart3Script: ; 48225 (12:4225) - jp EnableAutoTextBoxDrawing - -CeladonMart3TextPointers: ; 48228 (12:4228) - dw CeladonMart3Text1 - dw CeladonMart3Text2 - dw CeladonMart3Text3 - dw CeladonMart3Text4 - dw CeladonMart3Text5 - dw CeladonMart3Text6 - dw CeladonMart3Text7 - dw CeladonMart3Text8 - dw CeladonMart3Text9 - dw CeladonMart3Text10 - dw CeladonMart3Text11 - dw CeladonMart3Text12 - dw CeladonMart3Text13 - dw CeladonMart3Text14 - dw CeladonMart3Text15 - dw CeladonMart3Text16 - dw CeladonMart3Text17 - -CeladonMart3Text1: ; 4824a (12:424a) - db $08 ; asm - ld a, [$d778] - bit 7, a - jr nz, .asm_a5463 ; 0x48250 - ld hl, TM18PreReceiveText - call PrintText - ld bc, (TM_18 << 8) | 1 - call GiveItem - jr nc, .BagFull - ld hl, $d778 - set 7, [hl] - ld hl, ReceivedTM18Text - jr .asm_81359 ; 0x48268 -.BagFull - ld hl, TM18NoRoomText - jr .asm_81359 ; 0x4826d -.asm_a5463 ; 0x4826f - ld hl, TM18ExplanationText -.asm_81359 ; 0x48272 - call PrintText - jp TextScriptEnd +INCLUDE "data/mapHeaders/celadonmart3.asm" -TM18PreReceiveText: ; 48278 (12:4278) - TX_FAR _TM18PreReceiveText - db "@" +INCLUDE "scripts/celadonmart3.asm" -ReceivedTM18Text: ; 4827d (12:427d) - TX_FAR _ReceivedTM18Text ; 0x9c85a - db $0B, "@" - -TM18ExplanationText: ; 48283 (12:4283) - TX_FAR _TM18ExplanationText - db "@" - -TM18NoRoomText: ; 48288 (12:4288) - TX_FAR _TM18NoRoomText - db "@" - -CeladonMart3Text2: ; 4828d (12:428d) - TX_FAR _CeladonMart3Text2 - db "@" - -CeladonMart3Text3: ; 48292 (12:4292) - TX_FAR _CeladonMart3Text3 - db "@" - -CeladonMart3Text4: ; 48297 (12:4297) - TX_FAR _CeladonMart3Text4 - db "@" - -CeladonMart3Text5: ; 4829c (12:429c) - TX_FAR _CeladonMart3Text5 - db "@" - -CeladonMart3Text12 -CeladonMart3Text10: ; 482a1 (12:42a1) -CeladonMart3Text8: ; 482a1 (12:42a1) -CeladonMart3Text6: ; 482a1 (12:42a1) - TX_FAR _CeladonMart3Text6 - db "@" - -CeladonMart3Text7: ; 482a6 (12:42a6) - TX_FAR _CeladonMart3Text7 - db "@" - -CeladonMart3Text9: ; 482ab (12:42ab) - TX_FAR _CeladonMart3Text9 - db "@" - -CeladonMart3Text11: ; 482b0 (12:42b0) - TX_FAR _CeladonMart3Text11 - db "@" - -CeladonMart3Text13: ; 482b5 (12:42b5) - TX_FAR _CeladonMart3Text13 - db "@" - -CeladonMart3Text14: ; 482ba (12:42ba) - TX_FAR _CeladonMart3Text14 - db "@" - -CeladonMart3Text17: ; 482bf (12:42bf) -CeladonMart3Text16: ; 482bf (12:42bf) -CeladonMart3Text15: ; 482bf (12:42bf) - TX_FAR _CeladonMart3Text15 - db "@" - -CeladonMart3Object: ; 0x482c4 (size=94) - db $f ; border tile - - db $3 ; warps - db $1, $c, $0, CELADON_MART_4 - db $1, $10, $1, CELADON_MART_2 - db $1, $1, $0, CELADON_MART_ELEVATOR - - db $c ; signs - db $4, $2, $6 ; CeladonMart3Text6 - db $4, $3, $7 ; CeladonMart3Text7 - db $4, $5, $8 ; CeladonMart3Text8 - db $4, $6, $9 ; CeladonMart3Text9 - db $6, $2, $a ; CeladonMart3Text10 - db $6, $3, $b ; CeladonMart3Text11 - db $6, $5, $c ; CeladonMart3Text12 - db $6, $6, $d ; CeladonMart3Text13 - db $1, $e, $e ; CeladonMart3Text14 - db $1, $4, $f ; CeladonMart3Text15 - db $1, $6, $10 ; CeladonMart3Text16 - db $1, $a, $11 ; CeladonMart3Text17 - - db $5 ; people - db SPRITE_MART_GUY, $5 + 4, $10 + 4, $ff, $ff, $1 ; person - db SPRITE_GAMEBOY_KID_COPY, $6 + 4, $b + 4, $ff, $d3, $2 ; person - db SPRITE_GAMEBOY_KID_COPY, $2 + 4, $7 + 4, $ff, $d0, $3 ; person - db SPRITE_GAMEBOY_KID_COPY, $2 + 4, $8 + 4, $ff, $d0, $4 ; person - db SPRITE_YOUNG_BOY, $5 + 4, $2 + 4, $ff, $d1, $5 ; person - - ; warp-to - EVENT_DISP CELADON_MART_3_WIDTH, $1, $c ; CELADON_MART_4 - EVENT_DISP CELADON_MART_3_WIDTH, $1, $10 ; CELADON_MART_2 - EVENT_DISP CELADON_MART_3_WIDTH, $1, $1 ; CELADON_MART_ELEVATOR +INCLUDE "data/mapObjects/celadonmart3.asm" CeladonMart3Blocks: ; 48322 (12:4322) INCBIN "maps/celadonmart3.blk" -CeladonMart4_h: ; 0x4834a to 0x48356 (12 bytes) (bank=12) (id=125) - db LOBBY ; tileset - db CELADON_MART_4_HEIGHT, CELADON_MART_4_WIDTH ; dimensions (y, x) - dw CeladonMart4Blocks, CeladonMart4TextPointers, CeladonMart4Script ; blocks, texts, scripts - db $00 ; connections - dw CeladonMart4Object ; objects - -CeladonMart4Script: ; 48356 (12:4356) - jp EnableAutoTextBoxDrawing - -CeladonMart4TextPointers: ; 48359 (12:4359) - dw CeladonMart4Text1 - dw CeladonMart4Text2 - dw CeladonMart4Text3 - dw CeladonMart4Text4 - -CeladonMart4Text2: ; 48361 (12:4361) - TX_FAR _CeladonMart4Text2 - db "@" - -CeladonMart4Text3: ; 48366 (12:4366) - TX_FAR _CeladonMart4Text3 - db "@" - -CeladonMart4Text4: ; 4836b (12:436b) - TX_FAR _CeladonMart4Text4 - db "@" - -CeladonMart4Object: ; 0x48370 (size=49) - db $f ; border tile - - db $3 ; warps - db $1, $c, $0, CELADON_MART_3 - db $1, $10, $1, CELADON_MART_5 - db $1, $1, $0, CELADON_MART_ELEVATOR - - db $1 ; signs - db $1, $e, $4 ; CeladonMart4Text4 +INCLUDE "data/mapHeaders/celadonmart4.asm" - db $3 ; people - db SPRITE_MART_GUY, $7 + 4, $5 + 4, $ff, $ff, $1 ; person - db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $f + 4, $fe, $2, $2 ; person - db SPRITE_BUG_CATCHER, $2 + 4, $5 + 4, $fe, $2, $3 ; person +INCLUDE "scripts/celadonmart4.asm" - ; warp-to - EVENT_DISP CELADON_MART_4_WIDTH, $1, $c ; CELADON_MART_3 - EVENT_DISP CELADON_MART_4_WIDTH, $1, $10 ; CELADON_MART_5 - EVENT_DISP CELADON_MART_4_WIDTH, $1, $1 ; CELADON_MART_ELEVATOR +INCLUDE "data/mapObjects/celadonmart4.asm" CeladonMart4Blocks: ; 483a1 (12:43a1) INCBIN "maps/celadonmart4.blk" -CeladonMartRoof_h: ; 0x483c9 to 0x483d5 (12 bytes) (bank=12) (id=126) - db LOBBY ; tileset - db CELADON_MART_ROOF_HEIGHT, CELADON_MART_ROOF_WIDTH ; dimensions (y, x) - dw CeladonMartRoofBlocks, CeladonMartRoofTextPointers, CeladonMartRoofScript ; blocks, texts, scripts - db $00 ; connections - dw CeladonMartRoofObject ; objects +INCLUDE "data/mapHeaders/celadonmartroof.asm" -CeladonMartRoofScript: ; 483d5 (12:43d5) - jp EnableAutoTextBoxDrawing +INCLUDE "scripts/celadonmartroof.asm" -CeladonMartRoofScript_483d8: ; 483d8 (12:43d8) - xor a - ld [$cd37], a - ld de, $cc5b - ld hl, CeladonMartRoofDrinkList ; $4408 -.asm_483e2 - ld a, [hli] - and a - jr z, .asm_48404 - push hl - push de - ld [$d11e], a - ld b, a - ld a, $1c - call Predef ; indirect jump to Func_f8a5 (f8a5 (3:78a5)) - pop de - pop hl - ld a, b - and a - jr z, .asm_483e2 - ld a, [$d11e] - ld [de], a - inc de - push hl - ld hl, $cd37 - inc [hl] - pop hl - jr .asm_483e2 -.asm_48404 - ld a, $ff - ld [de], a - ret - -CeladonMartRoofDrinkList: ; 48408 (12:4408) - db FRESH_WATER - db SODA_POP - db LEMONADE - db $00 - -CeladonMartRoofScript_4840c: ; 4840c (12:440c) - ld hl, $d730 - set 6, [hl] - ld hl, UnnamedText_484ee ; $44ee - call PrintText - xor a - ld [wCurrentMenuItem], a ; $cc26 - ld a, $3 - ld [wMenuWatchedKeys], a ; $cc29 - ld a, [$cd37] - dec a - ld [wMaxMenuItem], a ; $cc28 - ld a, $2 - ld [wTopMenuItemY], a ; $cc24 - ld a, $1 - ld [wTopMenuItemX], a ; $cc25 - ld a, [$cd37] - dec a - ld bc, $2 - ld hl, $3 - call AddNTimes - dec l - ld b, l - ld c, $c - ld hl, wTileMap - call TextBoxBorder - call UpdateSprites - call CeladonMartRoofScript_48532 - ld hl, $d730 - res 6, [hl] - call HandleMenuInput - bit 1, a - ret nz - ld hl, $cc5b - ld a, [wCurrentMenuItem] ; $cc26 - ld d, $0 - ld e, a - add hl, de - ld a, [hl] - ld [$ffdb], a - cp FRESH_WATER - jr z, .asm_484b6 - cp SODA_POP - jr z, .asm_48492 - ld a, [$d778] - bit 6, a - jr nz, .asm_484e0 - ld hl, UnnamedText_48515 ; $4515 - call PrintText - call RemoveItemByIDBank12 - ld bc, (TM_49 << 8) | 1 - call GiveItem - jr nc, .BagFull - ld hl, ReceivedTM49Text ; $451b - call PrintText - ld hl, $d778 - set 6, [hl] - ret -.asm_48492 - ld a, [$d778] - bit 5, a - jr nz, .asm_484e0 - ld hl, UnnamedText_48504 ; $4504 - call PrintText - call RemoveItemByIDBank12 - ld bc, (TM_48 << 8) | 1 - call GiveItem - jr nc, .BagFull - ld hl, UnnamedText_4850a ; $450a - call PrintText - ld hl, $d778 - set 5, [hl] - ret -.asm_484b6 - ld a, [$d778] - bit 4, a - jr nz, .asm_484e0 - ld hl, UnnamedText_484f3 ; $44f3 - call PrintText - call RemoveItemByIDBank12 - ld bc, (TM_13 << 8) | 1 - call GiveItem - jr nc, .BagFull - ld hl, UnnamedText_484f9 ; $44f9 - call PrintText - ld hl, $d778 - set 4, [hl] - ret -.BagFull - ld hl, UnnamedText_48526 ; $4526 - jp PrintText -.asm_484e0 - ld hl, UnnamedText_4852c ; $452c - jp PrintText - -RemoveItemByIDBank12: ; 484e6 (12:44e6) - ld b, BANK(RemoveItemByID) - ld hl, RemoveItemByID - jp Bankswitch - -UnnamedText_484ee: ; 484ee (12:44ee) - TX_FAR _UnnamedText_484ee - db "@" - -UnnamedText_484f3: ; 484f3 (12:44f3) - TX_FAR _UnnamedText_484f3 - db $0d - db "@" - -UnnamedText_484f9: ; 484f9 (12:44f9) - TX_FAR _UnnamedText_484f9 - db $0b - TX_FAR _UnnamedText_484fe - db $0d - db "@" - -UnnamedText_48504: ; 48504 (12:4504) - TX_FAR _UnnamedText_48504 - db $0d - db "@" - -UnnamedText_4850a: ; 4850a (12:450a) - TX_FAR _UnnamedText_4850a - db $0b - TX_FAR _UnnamedText_4850f - db $0d - db "@" - -UnnamedText_48515: ; 48515 (12:4515) - TX_FAR _UnnamedText_48515 - db $0d - db "@" - -ReceivedTM49Text: ; 4851b (12:451b) - TX_FAR _ReceivedTM49Text - db $0b - TX_FAR _UnnamedText_48520 - db $0d - db "@" - -UnnamedText_48526: ; 48526 (12:4526) - TX_FAR _UnnamedText_48526 - db $0d - db "@" - -UnnamedText_4852c: ; 4852c (12:452c) - TX_FAR _UnnamedText_4852c - db $0d - db "@" - -CeladonMartRoofScript_48532: ; 48532 (12:4532) - ld hl, $cc5b - xor a - ld [$ffdb], a -.asm_48538 - ld a, [hli] - cp $ff - ret z - push hl - ld [$d11e], a - call GetItemName - FuncCoord 2, 2 ; $c3ca - ld hl, Coord - ld a, [$ffdb] - ld bc, $28 - call AddNTimes - ld de, $cd6d - call PlaceString - ld hl, $ffdb - inc [hl] - pop hl - jr .asm_48538 - -CeladonMartRoofTextPointers: ; 4855b (12:455b) - dw CeladonMartRoofText1 - dw CeladonMartRoofText2 - dw CeladonMartRoofText5 - dw CeladonMartRoofText5 - dw CeladonMartRoofText5 - dw CeladonMartRoofText6 - -CeladonMartRoofText1: ; 48567 (12:4567) - TX_FAR _CeladonMartRoofText1 - db "@" - -CeladonMartRoofText2: ; 4856c (12:456c) - db $08 ; asm - call CeladonMartRoofScript_483d8 - ld a, [$cd37] - and a - jr z, .asm_914b9 ; 0x48574 - ld a, $1 - ld [$cc3c], a - ld hl, CeladonMartRoofText4 - call PrintText - call YesNoChoice - ld a, [$cc26] - and a - jr nz, .asm_05aa4 ; 0x48588 - call CeladonMartRoofScript_4840c - jr .asm_05aa4 ; 0x4858d -.asm_914b9 ; 0x4858f - ld hl, CeladonMartRoofText3 - call PrintText -.asm_05aa4 ; 0x48595 - jp TextScriptEnd - -CeladonMartRoofText3: ; 48598 (12:4598) - TX_FAR _UnnamedText_48598 - db "@" - -CeladonMartRoofText4: ; 4859d (12:459d) - TX_FAR _CeladonMartRoofText4 - db "@" - -CeladonMartRoofText5: ; 485a2 (12:45a2) - db $f5 - -CeladonMartRoofText6: ; 485a3 (12:45a3) - TX_FAR _CeladonMartRoofText6 - db "@" - -CeladonMartRoofObject: ; 0x485a8 (size=36) - db $42 ; border tile - - db $1 ; warps - db $2, $f, $0, CELADON_MART_5 - - db $4 ; signs - db $1, $a, $3 ; CeladonMartRoofText3 - db $1, $b, $4 ; CeladonMartRoofText4 - db $2, $c, $5 ; CeladonMartRoofText5 - db $2, $d, $6 ; CeladonMartRoofText6 - - db $2 ; people - db SPRITE_BLACK_HAIR_BOY_2, $4 + 4, $a + 4, $ff, $d2, $1 ; person - db SPRITE_LITTLE_GIRL, $5 + 4, $5 + 4, $fe, $0, $2 ; person - - ; warp-to - EVENT_DISP CELADON_MART_ROOF_WIDTH, $2, $f ; CELADON_MART_5 +INCLUDE "data/mapObjects/celadonmartroof.asm" CeladonMartRoofBlocks: ; 485cc (12:45cc) INCBIN "maps/celadonmartroof.blk" -CeladonMartElevator_h: ; 0x485f4 to 0x48600 (12 bytes) (bank=12) (id=127) - db LOBBY ; tileset - db CELADON_MART_ELEVATOR_HEIGHT, CELADON_MART_ELEVATOR_WIDTH ; dimensions (y, x) - dw CeladonMartElevatorBlocks, CeladonMartElevatorTextPointers, CeladonMartElevatorScript ; blocks, texts, scripts - db $00 ; connections - dw CeladonMartElevatorObject ; objects +INCLUDE "data/mapHeaders/celadonmartelevator.asm" -CeladonMartElevatorScript: ; 48600 (12:4600) - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - push hl - call nz, CeladonMartElevatorScript_4861c - pop hl - bit 7, [hl] - res 7, [hl] - call nz, Func_48654 - xor a - ld [$cf0c], a - inc a - ld [$cc3c], a - ret +INCLUDE "scripts/celadonmartelevator.asm" -CeladonMartElevatorScript_4861c: ; 4861c (12:461c) - ld hl, $d3af - ld a, [$d73b] - ld b, a - ld a, [$d73c] - ld c, a - call CeladonMartElevatorScript_4862a - -CeladonMartElevatorScript_4862a: ; 4862a (12:462a) - inc hl - inc hl - ld a, b - ld [hli], a - ld a, c - ld [hli], a - ret - -CeladonMartElevatorScript_48631: ; 48631 (12:4631) - ld hl, CeladonMartElavatorFloors ; $4643 - call LoadItemList - ld hl, CeldaonMartElevatorWarpMaps ; $464a - ld de, $cc5b - ld bc, $000a - jp CopyData - -CeladonMartElavatorFloors: ; 48643 (12:4643) - db $05 ; num elements in list - db $56, $57, $58, $59, $5A ; "1F", "2F", "3F", "4F, "5F" - db $FF ; terminator - -CeldaonMartElevatorWarpMaps: ; 4864a (12:464a) -; first byte is warp number -; second byte is map number -; These specify where the player goes after getting out of the elevator. - db $05, CELADON_MART_1 - db $02, CELADON_MART_2 - db $02, CELADON_MART_3 - db $02, CELADON_MART_4 - db $02, CELADON_MART_5 - -Func_48654: ; 48654 (12:4654) - ld b, BANK(Func_7bf15) - ld hl, Func_7bf15 - jp Bankswitch - -CeladonMartElevatorTextPointers: ; 4865c (12:465c) - dw CeladonMartElevatorText1 - -CeladonMartElevatorText1: ; 4865e (12:465e) - db $08 ; asm - call CeladonMartElevatorScript_48631 - ld hl, CeldaonMartElevatorWarpMaps ; $464a - ld a, $61 - call Predef - jp TextScriptEnd - -CeladonMartElevatorObject: ; 0x4866d (size=23) - db $f ; border tile - - db $2 ; warps - db $3, $1, $5, CELADON_MART_1 - db $3, $2, $5, CELADON_MART_1 - - db $1 ; signs - db $0, $3, $1 ; CeladonMartElevatorText1 - - db $0 ; people - - ; warp-to - EVENT_DISP CELADON_MART_ELEVATOR_WIDTH, $3, $1 ; CELADON_MART_1 - EVENT_DISP CELADON_MART_ELEVATOR_WIDTH, $3, $2 ; CELADON_MART_1 +INCLUDE "data/mapObjects/celadonmartelevator.asm" CeladonMartElevatorBlocks: ; 48684 (12:4684) INCBIN "maps/celadonmartelevator.blk" -CeladonMansion1_h: ; 0x48688 to 0x48694 (12 bytes) (bank=12) (id=128) - db MANSION ; tileset - db CELADON_MANSION_1_HEIGHT, CELADON_MANSION_1_WIDTH ; dimensions (y, x) - dw CeladonMansion1Blocks, CeladonMansion1TextPointers, CeladonMansion1Script ; blocks, texts, scripts - db $00 ; connections - dw CeladonMansion1Object ; objects - -CeladonMansion1Script: ; 48694 (12:4694) - jp EnableAutoTextBoxDrawing +INCLUDE "data/mapHeaders/celadonmansion1.asm" -CeladonMansion1TextPointers: ; 48697 (12:4697) - dw CeladonMansion1Text1 - dw CeladonMansion1Text2 - dw CeladonMansion1Text3 - dw CeladonMansion1Text4 - dw CeladonMansion1Text5 +INCLUDE "scripts/celadonmansion1.asm" -Func_486a1: ; 486a1 (12:46a1) - call PlayCry - jp TextScriptEnd - -CeladonMansion1Text1: ; 486a7 (12:46a7) - TX_FAR _CeladonMansion1Text1 - db $08 ; asm - ld a, $4d - jp Func_486a1 - -CeladonMansion1Text2: ; 486b1 (12:46b1) - TX_FAR _CeladonMansion1Text2 - db "@" - -CeladonMansion1Text3: ; 486b6 (12:46b6) - TX_FAR _CeladonMansion1Text3 - db $8 - ld a, $4 - jp Func_486a1 - -CeladonMansion1Text4: ; 486c0 (12:46c0) - TX_FAR _CeladonMansion1Text4 - db $8 - ld a, $f - jp Func_486a1 - -CeladonMansion1Text5: ; 486ca (12:46ca) - TX_FAR _CeladonMansion1Text5 - db "@" - -CeladonMansion1Object: ; 0x486cf (size=71) - db $f ; border tile - - db $5 ; warps - db $b, $4, $2, $ff - db $b, $5, $2, $ff - db $0, $4, $4, $ff - db $1, $7, $1, CELADON_MANSION_2 - db $1, $2, $2, CELADON_MANSION_2 - - db $1 ; signs - db $9, $4, $5 ; CeladonMansion1Text5 - - db $4 ; people - db SPRITE_SLOWBRO, $5 + 4, $0 + 4, $ff, $d3, $1 ; person - db SPRITE_OLD_MEDIUM_WOMAN, $5 + 4, $1 + 4, $ff, $d0, $2 ; person - db SPRITE_CLEFAIRY, $8 + 4, $1 + 4, $fe, $2, $3 ; person - db SPRITE_SLOWBRO, $4 + 4, $4 + 4, $fe, $1, $4 ; person - - ; warp-to - EVENT_DISP CELADON_MANSION_1_WIDTH, $b, $4 - EVENT_DISP CELADON_MANSION_1_WIDTH, $b, $5 - EVENT_DISP CELADON_MANSION_1_WIDTH, $0, $4 - EVENT_DISP CELADON_MANSION_1_WIDTH, $1, $7 ; CELADON_MANSION_2 - EVENT_DISP CELADON_MANSION_1_WIDTH, $1, $2 ; CELADON_MANSION_2 +INCLUDE "data/mapObjects/celadonmansion1.asm" CeladonMansion1Blocks: ; 48716 (12:4716) INCBIN "maps/celadonmansion1.blk" -CeladonMansion2_h: ; 0x4872e to 0x4873a (12 bytes) (bank=12) (id=129) - db MANSION ; tileset - db CELADON_MANSION_2_HEIGHT, CELADON_MANSION_2_WIDTH ; dimensions (y, x) - dw CeladonMansion2Blocks, CeladonMansion2TextPointers, CeladonMansion2Script ; blocks, texts, scripts - db $00 ; connections - dw CeladonMansion2Object ; objects +INCLUDE "data/mapHeaders/celadonmansion2.asm" -CeladonMansion2Script: ; 4873a (12:473a) - call EnableAutoTextBoxDrawing - ret +INCLUDE "scripts/celadonmansion2.asm" -CeladonMansion2TextPointers: ; 4873e (12:473e) - dw CeladonMansion2Text1 - -CeladonMansion2Text1: ; 48740 (12:4740) - TX_FAR _CeladonMansion2Text1 - db "@" - -CeladonMansion2Object: ; 0x48745 (size=39) - db $f ; border tile - - db $4 ; warps - db $1, $6, $0, CELADON_MANSION_3 - db $1, $7, $3, CELADON_MANSION_1 - db $1, $2, $4, CELADON_MANSION_1 - db $1, $4, $3, CELADON_MANSION_3 - - db $1 ; signs - db $9, $4, $1 ; CeladonMansion2Text1 - - db $0 ; people - - ; warp-to - EVENT_DISP CELADON_MANSION_2_WIDTH, $1, $6 ; CELADON_MANSION_3 - EVENT_DISP CELADON_MANSION_2_WIDTH, $1, $7 ; CELADON_MANSION_1 - EVENT_DISP CELADON_MANSION_2_WIDTH, $1, $2 ; CELADON_MANSION_1 - EVENT_DISP CELADON_MANSION_2_WIDTH, $1, $4 ; CELADON_MANSION_3 +INCLUDE "data/mapObjects/celadonmansion2.asm" CeladonMansion2Blocks: ; 4876c (12:476c) INCBIN "maps/celadonmansion2.blk" -CeladonMansion3_h: ; 0x48784 to 0x48790 (12 bytes) (bank=12) (id=130) - db MANSION ; tileset - db CELADON_MANSION_3_HEIGHT, CELADON_MANSION_3_WIDTH ; dimensions (y, x) - dw CeladonMansion3Blocks, CeladonMansion3TextPointers, CeladonMansion3Script ; blocks, texts, scripts - db $00 ; connections - dw CeladonMansion3Object ; objects - -CeladonMansion3Script: ; 48790 (12:4790) - jp EnableAutoTextBoxDrawing - -CeladonMansion3TextPointers: ; 48793 (12:4793) - dw ProgrammerText - dw GraphicArtistText - dw WriterText - dw DirectorText - dw GameFreakPCText1 - dw GameFreakPCText2 - dw GameFreakPCText3 - dw GameFreakSignText - -ProgrammerText: ; 487a3 (12:47a3) - TX_FAR _ProgrammerText - db "@" +INCLUDE "data/mapHeaders/celadonmansion3.asm" -GraphicArtistText: ; 487a8 (12:47a8) - TX_FAR _GraphicArtistText - db "@" +INCLUDE "scripts/celadonmansion3.asm" -WriterText: ; 487ad (12:47ad) - TX_FAR _WriterText - db "@" - -DirectorText: ; 487b2 (12:47b2) - db $08 ; asm - - ; check pokédex - ld hl, wPokedexOwned - ld b, wPokedexOwnedEnd - wPokedexOwned - call CountSetBits - ld a, [$d11e] - cp 150 - jr nc, .CompletedDex - ld hl, .GameDesigner - jr .done -.CompletedDex - ld hl, .CompletedDexText -.done - call PrintText - jp TextScriptEnd - -.GameDesigner ; 487d0 (12:47d0) - TX_FAR _GameDesignerText - db "@" - -.CompletedDexText - TX_FAR _CompletedDexText ; 0x9d0ad - db $6 - db $8 ; asm - callab DisplayDiploma - ld a, $1 - ld [$cc3c], a - jp TextScriptEnd - -GameFreakPCText1: ; 487eb (12:47eb) - TX_FAR _CeladonMansion3Text5 - db "@" - -GameFreakPCText2: ; 487f0 (12:47f0) - TX_FAR _CeladonMansion3Text6 - db "@" - -GameFreakPCText3: ; 487f5 (12:47f5) - TX_FAR _CeladonMansion3Text7 - db "@" - -GameFreakSignText: ; 487fa (12:47fa) - TX_FAR _CeladonMansion3Text8 - db "@" - -CeladonMansion3Object: ; 0x487ff (size=72) - db $f ; border tile - - db $4 ; warps - db $1, $6, $0, CELADON_MANSION_2 - db $1, $7, $0, CELADON_MANSION_4 - db $1, $2, $1, CELADON_MANSION_4 - db $1, $4, $3, CELADON_MANSION_2 - - db $4 ; signs - db $3, $1, $5 ; CeladonMansion3Text5 - db $3, $4, $6 ; CeladonMansion3Text6 - db $6, $1, $7 ; CeladonMansion3Text7 - db $9, $4, $8 ; CeladonMansion3Text8 - - db $4 ; people - db SPRITE_BIKE_SHOP_GUY, $4 + 4, $0 + 4, $ff, $d1, $1 ; person - db SPRITE_MART_GUY, $4 + 4, $3 + 4, $ff, $d1, $2 ; person - db SPRITE_BLACK_HAIR_BOY_2, $7 + 4, $0 + 4, $ff, $d1, $3 ; person - db SPRITE_LAPRAS_GIVER, $3 + 4, $2 + 4, $ff, $ff, $4 ; person - - ; warp-to - EVENT_DISP CELADON_MANSION_3_WIDTH, $1, $6 ; CELADON_MANSION_2 - EVENT_DISP CELADON_MANSION_3_WIDTH, $1, $7 ; CELADON_MANSION_4 - EVENT_DISP CELADON_MANSION_3_WIDTH, $1, $2 ; CELADON_MANSION_4 - EVENT_DISP CELADON_MANSION_3_WIDTH, $1, $4 ; CELADON_MANSION_2 +INCLUDE "data/mapObjects/celadonmansion3.asm" CeladonMansion3Blocks: ; 48847 (12:4847) INCBIN "maps/celadonmansion3.blk" -CeladonMansion4_h: ; 0x4885f to 0x4886b (12 bytes) (bank=12) (id=131) - db MANSION ; tileset - db CELADON_MANSION_4_HEIGHT, CELADON_MANSION_4_WIDTH ; dimensions (y, x) - dw CeladonMansion4Blocks, CeladonMansion4TextPointers, CeladonMansion4Script ; blocks, texts, scripts - db $00 ; connections - dw CeladonMansion4Object ; objects - -CeladonMansion4Script: ; 4886b (12:486b) - jp EnableAutoTextBoxDrawing - -CeladonMansion4TextPointers: ; 4886e (12:486e) - dw CeladonMansion4Text1 - -CeladonMansion4Text1: ; 48870 (12:4870) - TX_FAR _CeladonMansion4Text1 - db "@" - -CeladonMansion4Object: ; 0x48875 (size=31) - db $9 ; border tile - - db $3 ; warps - db $1, $6, $1, CELADON_MANSION_3 - db $1, $2, $2, CELADON_MANSION_3 - db $7, $2, $0, CELADON_MANSION_5 - - db $1 ; signs - db $7, $3, $1 ; CeladonMansion4Text1 +INCLUDE "data/mapHeaders/celadonmansion4.asm" - db $0 ; people +INCLUDE "scripts/celadonmansion4.asm" - ; warp-to - EVENT_DISP CELADON_MANSION_4_WIDTH, $1, $6 ; CELADON_MANSION_3 - EVENT_DISP CELADON_MANSION_4_WIDTH, $1, $2 ; CELADON_MANSION_3 - EVENT_DISP CELADON_MANSION_4_WIDTH, $7, $2 ; CELADON_MANSION_5 +INCLUDE "data/mapObjects/celadonmansion4.asm" CeladonMansion4Blocks: ; 48894 (12:4894) INCBIN "maps/celadonmansion4.blk" -CeladonPokecenter_h: ; 0x488ac to 0x488b8 (12 bytes) (bank=12) (id=133) - db POKECENTER ; tileset - db CELADON_POKECENTER_HEIGHT, CELADON_POKECENTER_WIDTH ; dimensions (y, x) - dw CeladonPokecenterBlocks, CeladonPokecenterTextPointers, CeladonPokecenterScript ; blocks, texts, scripts - db $00 ; connections - dw CeladonPokecenterObject ; objects - -CeladonPokecenterScript: ; 488b8 (12:48b8) - call Func_22fa - jp EnableAutoTextBoxDrawing - -CeladonPokecenterTextPointers: ; 488be (12:48be) - dw CeladonPokecenterText1 - dw CeladonPokecenterText2 - dw CeladonPokecenterText3 - dw CeladonPokecenterText4 - -CeladonPokecenterText4: ; 488c6 (12:48c6) - db $f6 - -CeladonPokecenterText1: ; 488c7 (12:48c7) - db $ff - -CeladonPokecenterText2: ; 488c8 (12:48c8) - TX_FAR _CeladonPokecenterText2 - db "@" - -CeladonPokecenterText3: ; 488cd (12:48cd) - TX_FAR _CeladonPokecenterText3 - db "@" - -CeladonPokecenterObject: ; 0x488d2 (size=44) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $5, $ff - db $7, $4, $5, $ff - - db $0 ; signs - - db $4 ; people - db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person - db SPRITE_GENTLEMAN, $3 + 4, $7 + 4, $fe, $2, $2 ; person - db SPRITE_FOULARD_WOMAN, $5 + 4, $a + 4, $fe, $0, $3 ; person - db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person - - ; warp-to - EVENT_DISP CELADON_POKECENTER_WIDTH, $7, $3 - EVENT_DISP CELADON_POKECENTER_WIDTH, $7, $4 - -CeladonGym_h: ; 0x488fe to 0x4890a (12 bytes) (bank=12) (id=134) - db GYM ; tileset - db CELADON_GYM_HEIGHT, CELADON_GYM_WIDTH ; dimensions (y, x) - dw CeladonGymBlocks, CeladonGymTextPointers, CeladonGymScript ; blocks, texts, scripts - db $00 ; connections - dw CeladonGymObject ; objects - -CeladonGymScript: ; 4890a (12:490a) - ld hl, $d126 - bit 6, [hl] - res 6, [hl] - call nz, CeladonGymScript_48927 - call EnableAutoTextBoxDrawing - ld hl, CeladonGymTrainerHeaders - ld de, CeladonGymScriptPointers - ld a, [W_CELADONGYMCURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_CELADONGYMCURSCRIPT], a - ret - -CeladonGymScript_48927: ; 48927 (12:4927) - ld hl, Gym4CityName ; $4930 - ld de, Gym4LeaderName ; $493d - jp LoadGymLeaderAndCityName - -Gym4CityName: ; 48930 (12:4930) - db "CELADON CITY@" - -Gym4LeaderName: ; 4893d (12:493d) - db "ERIKA@" - -Func_48943: ; 48943 (12:4943) - xor a - ld [wJoypadForbiddenButtonsMask], a - ld [W_CELADONGYMCURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -CeladonGymScriptPointers: ; 4894e (12:494e) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - dw CeladonGymScript3 - -CeladonGymScript3: ; 48956 (12:4956) - ld a, [W_ISINBATTLE] ; $d057 - cp $ff - jp z, Func_48943 - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - -Func_48963: ; 48963 (12:4963) - ld a, $9 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - ld hl, $d77c - set 1, [hl] - ld bc, (TM_21 << 8) | 1 - call GiveItem - jr nc, .BagFull - ld a, $a - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - ld hl, $d77c - set 0, [hl] - jr .asm_4898c -.BagFull - ld a, $b - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID -.asm_4898c - ld hl, W_OBTAINEDBADGES - set 3, [hl] - ld hl, $d72a - set 3, [hl] - - ; deactivate gym trainers - ld a, [$d77c] - or %11111100 - ld [$d77c], a - ld hl, $d77d - set 0, [hl] - - jp Func_48943 - -CeladonGymTextPointers: ; 489a6 (12:49a6) - dw CeladonGymText1 - dw CeladonGymText2 - dw CeladonGymText3 - dw CeladonGymText4 - dw CeladonGymText5 - dw CeladonGymText6 - dw CeladonGymText7 - dw CeladonGymText8 - dw CeladonGymText9 - dw TM21Text - dw TM21NoRoomText - -CeladonGymTrainerHeaders: ; 489bc (12:49bc) -CeladonGymTrainerHeader0: ; 489bc (12:49bc) - db $2 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d77c ; flag's byte - dw CeladonGymBattleText2 ; 0x4a8b TextBeforeBattle - dw CeladonGymAfterBattleText2 ; 0x4a95 TextAfterBattle - dw CeladonGymEndBattleText2 ; 0x4a90 TextEndBattle - dw CeladonGymEndBattleText2 ; 0x4a90 TextEndBattle - -CeladonGymTrainerHeader2: ; 489c8 (12:49c8) - db $3 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d77c ; flag's byte - dw CeladonGymBattleText3 ; 0x4aa4 TextBeforeBattle - dw CeladonGymAfterBattleText3 ; 0x4aae TextAfterBattle - dw CeladonGymEndBattleText3 ; 0x4aa9 TextEndBattle - dw CeladonGymEndBattleText3 ; 0x4aa9 TextEndBattle - -CeladonGymTrainerHeader3: ; 489d4 (12:49d4) - db $4 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d77c ; flag's byte - dw CeladonGymBattleText4 ; 0x4abd TextBeforeBattle - dw CeladonGymAfterBattleText4 ; 0x4ac7 TextAfterBattle - dw CeladonGymEndBattleText4 ; 0x4ac2 TextEndBattle - dw CeladonGymEndBattleText4 ; 0x4ac2 TextEndBattle - -CeladonGymTrainerHeader4: ; 489e0 (12:49e0) - db $5 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d77c ; flag's byte - dw CeladonGymBattleText5 ; 0x4ad6 TextBeforeBattle - dw CeladonGymAfterBattleText5 ; 0x4ae0 TextAfterBattle - dw CeladonGymEndBattleText5 ; 0x4adb TextEndBattle - dw CeladonGymEndBattleText5 ; 0x4adb TextEndBattle - -CeladonGymTrainerHeader5: ; 489ec (12:49ec) - db $6 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d77c ; flag's byte - dw CeladonGymBattleText6 ; 0x4aef TextBeforeBattle - dw CeladonGymAfterBattleText6 ; 0x4af9 TextAfterBattle - dw CeladonGymEndBattleText6 ; 0x4af4 TextEndBattle - dw CeladonGymEndBattleText6 ; 0x4af4 TextEndBattle - -CeladonGymTrainerHeader6: ; 489f8 (12:49f8) - db $7 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d77c ; flag's byte - dw CeladonGymBattleText7 ; 0x4b08 TextBeforeBattle - dw CeladonGymAfterBattleText7 ; 0x4b12 TextAfterBattle - dw CeladonGymEndBattleText7 ; 0x4b0d TextEndBattle - dw CeladonGymEndBattleText7 ; 0x4b0d TextEndBattle - -CeladonGymTrainerHeader7: ; 48a04 (12:4a04) - db $8 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d77c ; flag's byte - dw CeladonGymBattleText8 ; 0x4b21 TextBeforeBattle - dw CeladonGymAfterBattleText8 ; 0x4b2b TextAfterBattle - dw CeladonGymEndBattleText8 ; 0x4b26 TextEndBattle - dw CeladonGymEndBattleText8 ; 0x4b26 TextEndBattle - - db $ff - -CeladonGymText1: ; 48a11 (12:4a11) - db $08 ; asm - ld a, [$d77c] - bit 1, a - jr z, .asm_16064 ; 0x48a17 - bit 0, a - jr nz, .asm_3b22c ; 0x48a1b - call z, Func_48963 - call DisableWaitingAfterTextDisplay - jr .asm_96252 ; 0x48a23 -.asm_3b22c ; 0x48a25 - ld hl, UnnamedText_48a68 - call PrintText - jr .asm_96252 ; 0x48a2b -.asm_16064 ; 0x48a2d - ld hl, UnnamedText_48a5e - call PrintText - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, UnnamedText_48a63 - ld de, UnnamedText_48a63 - call PreBattleSaveRegisters - ldh a, [$8c] - ld [$cf13], a - call EngageMapTrainer - call InitBattleEnemyParameters - ld a, $4 - ld [$d05c], a - ld a, $3 - ld [W_CELADONGYMCURSCRIPT], a - ld [W_CURMAPSCRIPT], a -.asm_96252 ; 0x48a5b - jp TextScriptEnd - -UnnamedText_48a5e: ; 48a5e (12:4a5e) - TX_FAR _UnnamedText_48a5e - db "@" - -UnnamedText_48a63: ; 48a63 (12:4a63) - TX_FAR _UnnamedText_48a63 - db "@" - -UnnamedText_48a68: ; 48a68 (12:4a68) - TX_FAR _UnnamedText_48a68 - db "@" - -CeladonGymText9: ; 48a6d (12:4a6d) -UnnamedText_48a6d: ; 48a6d (12:4a6d) - TX_FAR _UnnamedText_48a6d - db "@" - -TM21Text: ; 48a72 (12:4a72) - TX_FAR _ReceivedTM21Text ; 0x9d50c - db $0B - TX_FAR _TM21ExplanationText ; 0x9d520 - db "@" - -TM21NoRoomText: ; 48a7c (12:4a7c) - TX_FAR _TM21NoRoomText - db "@" - -CeladonGymText2: ; 48a81 (12:4a81) - db $08 ; asm - ld hl, CeladonGymTrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -CeladonGymBattleText2: ; 48a8b (12:4a8b) - TX_FAR _CeladonGymBattleText2 - db "@" - -CeladonGymEndBattleText2: ; 48a90 (12:4a90) - TX_FAR _CeladonGymEndBattleText2 - db "@" - -CeladonGymAfterBattleText2: ; 48a95 (12:4a95) - TX_FAR _CeladonGymAfterBattleText2 - db "@" - -CeladonGymText3: ; 48a9a (12:4a9a) - db $08 ; asm - ld hl, CeladonGymTrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -CeladonGymBattleText3: ; 48aa4 (12:4aa4) - TX_FAR _CeladonGymBattleText3 - db "@" - -CeladonGymEndBattleText3: ; 48aa9 (12:4aa9) - TX_FAR _CeladonGymEndBattleText3 - db "@" - -CeladonGymAfterBattleText3: ; 48aae (12:4aae) - TX_FAR _CeladonGymAfterBattleText3 - db "@" - -CeladonGymText4: ; 48ab3 (12:4ab3) - db $08 ; asm - ld hl, CeladonGymTrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -CeladonGymBattleText4: ; 48abd (12:4abd) - TX_FAR _CeladonGymBattleText4 - db "@" - -CeladonGymEndBattleText4: ; 48ac2 (12:4ac2) - TX_FAR _CeladonGymEndBattleText4 - db "@" - -CeladonGymAfterBattleText4: ; 48ac7 (12:4ac7) - TX_FAR _CeladonGymAfterBattleText4 - db "@" - -CeladonGymText5: ; 48acc (12:4acc) - db $08 ; asm - ld hl, CeladonGymTrainerHeader4 - call TalkToTrainer - jp TextScriptEnd - -CeladonGymBattleText5: ; 48ad6 (12:4ad6) - TX_FAR _CeladonGymBattleText5 - db "@" - -CeladonGymEndBattleText5: ; 48adb (12:4adb) - TX_FAR _CeladonGymEndBattleText5 - db "@" - -CeladonGymAfterBattleText5: ; 48ae0 (12:4ae0) - TX_FAR _CeladonGymAfterBattleText5 - db "@" - -CeladonGymText6: ; 48ae5 (12:4ae5) - db $08 ; asm - ld hl, CeladonGymTrainerHeader5 - call TalkToTrainer - jp TextScriptEnd - -CeladonGymBattleText6: ; 48aef (12:4aef) - TX_FAR _CeladonGymBattleText6 - db "@" - -CeladonGymEndBattleText6: ; 48af4 (12:4af4) - TX_FAR _CeladonGymEndBattleText6 - db "@" - -CeladonGymAfterBattleText6: ; 48af9 (12:4af9) - TX_FAR _CeladonGymAfterBattleText6 - db "@" - -CeladonGymText7: ; 48afe (12:4afe) - db $08 ; asm - ld hl, CeladonGymTrainerHeader6 - call TalkToTrainer - jp TextScriptEnd - -CeladonGymBattleText7: ; 48b08 (12:4b08) - TX_FAR _CeladonGymBattleText7 - db "@" - -CeladonGymEndBattleText7: ; 48b0d (12:4b0d) - TX_FAR _CeladonGymEndBattleText7 - db "@" - -CeladonGymAfterBattleText7: ; 48b12 (12:4b12) - TX_FAR _CeladonGymAfterBattleText7 - db "@" - -CeladonGymText8: ; 48b17 (12:4b17) - db $08 ; asm - ld hl, CeladonGymTrainerHeader7 - call TalkToTrainer - jp TextScriptEnd - -CeladonGymBattleText8: ; 48b21 (12:4b21) - TX_FAR _CeladonGymBattleText8 - db "@" - -CeladonGymEndBattleText8: ; 48b26 (12:4b26) - TX_FAR _CeladonGymEndBattleText8 - db "@" - -CeladonGymAfterBattleText8: ; 48b2b (12:4b2b) - TX_FAR _CeladonGymAfterBattleText8 - db "@" +INCLUDE "data/mapHeaders/celadonpokecenter.asm" -CeladonGymObject: ; 0x48b30 (size=84) - db $3 ; border tile +INCLUDE "scripts/celadonpokecenter.asm" - db $2 ; warps - db $11, $4, $6, $ff - db $11, $5, $6, $ff +INCLUDE "data/mapObjects/celadonpokecenter.asm" - db $0 ; signs +INCLUDE "data/mapHeaders/celadongym.asm" - db $8 ; people - db SPRITE_ERIKA, $3 + 4, $4 + 4, $ff, $d0, $41, ERIKA + $C8, $1 ; trainer - db SPRITE_LASS, $b + 4, $2 + 4, $ff, $d3, $42, LASS + $C8, $11 ; trainer - db SPRITE_FOULARD_WOMAN, $a + 4, $7 + 4, $ff, $d2, $43, BEAUTY + $C8, $1 ; trainer - db SPRITE_LASS, $5 + 4, $9 + 4, $ff, $d0, $44, JR__TRAINER_F + $C8, $b ; trainer - db SPRITE_FOULARD_WOMAN, $5 + 4, $1 + 4, $ff, $d0, $45, BEAUTY + $C8, $2 ; trainer - db SPRITE_LASS, $3 + 4, $6 + 4, $ff, $d0, $46, LASS + $C8, $12 ; trainer - db SPRITE_FOULARD_WOMAN, $3 + 4, $3 + 4, $ff, $d0, $47, BEAUTY + $C8, $3 ; trainer - db SPRITE_LASS, $3 + 4, $5 + 4, $ff, $d0, $48, COOLTRAINER_F + $C8, $1 ; trainer +INCLUDE "scripts/celadongym.asm" - ; warp-to - EVENT_DISP CELADON_GYM_WIDTH, $11, $4 - EVENT_DISP CELADON_GYM_WIDTH, $11, $5 +INCLUDE "data/mapObjects/celadongym.asm" CeladonGymBlocks: ; 48b84 (12:4b84) INCBIN "maps/celadongym.blk" -CeladonGameCorner_h: ; 0x48bb1 to 0x48bbd (12 bytes) (bank=12) (id=135) - db LOBBY ; tileset - db GAME_CORNER_HEIGHT, GAME_CORNER_WIDTH ; dimensions (y, x) - dw CeladonGameCornerBlocks, CeladonGameCornerTextPointers, CeladonGameCornerScript ; blocks, texts, scripts - db $00 ; connections - dw CeladonGameCornerObject ; objects - -CeladonGameCornerScript: ; 48bbd (12:4bbd) - call CeladonGameCornerScript_48bcf - call Func_48bec - call EnableAutoTextBoxDrawing - ld hl, CeladonGameCornerScriptPointers - ld a, [W_CELADONGAMECORNERCURSCRIPT] - jp CallFunctionInTable +INCLUDE "data/mapHeaders/celadongamecorner.asm" -CeladonGameCornerScript_48bcf: ; 48bcf (12:4bcf) - ld hl, $d126 - bit 6, [hl] - res 6, [hl] - ret z - call GenRandom - ld a, [$ffd3] - cp $7 - jr nc, .asm_48be2 - ld a, $8 -.asm_48be2 - srl a - srl a - srl a - ld [$cd05], a - ret +INCLUDE "scripts/celadongamecorner.asm" -Func_48bec: ; 48bec (12:4bec) - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - ret z - ld a, [$d77e] - bit 1, a - ret nz - ld a, $2a - ld [$d09f], a - ld bc, $0208 - ld a, $17 - jp Predef - -CeladonGameCornerScript_48c07: ; 48c07 (12:4c07) - xor a - ld [wJoypadForbiddenButtonsMask], a - ld [W_CELADONGAMECORNERCURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -CeladonGameCornerScriptPointers: ; 48c12 (12:4c12) - dw CeladonGameCornerScript0 - dw CeladonGameCornerScript1 - dw CeladonGameCornerScript2 - -CeladonGameCornerScript0: ; 48c18 (12:4c18) - ret - -CeladonGameCornerScript1: ; 48c19 (12:4c19) - ld a, [W_ISINBATTLE] - cp $ff - jp z, CeladonGameCornerScript_48c07 - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - ld a, $d - ld [H_SPRITEHEIGHT], a - call DisplayTextID - ld a, $b - ld [H_SPRITEHEIGHT], a - call SetSpriteMovementBytesToFF - ld de, MovementData_48c5a - ld a, [$d361] - cp $6 - jr nz, .asm_48c43 - ld de, MovementData_48c63 - jr .asm_48c4d -.asm_48c43 - ld a, [$d362] - cp $8 - jr nz, .asm_48c4d - ld de, MovementData_48c63 -.asm_48c4d - ld a, $b - ld [H_DOWNARROWBLINKCNT2], a - call MoveSprite - ld a, $2 - ld [W_CELADONGAMECORNERCURSCRIPT], a - ret - -MovementData_48c5a: ; 48c5a (12:4c5a) - db $00,$C0,$C0,$40,$C0,$C0,$C0,$C0,$FF - -MovementData_48c63: ; 48c63 (12:4c63) - db $C0,$C0,$C0,$C0,$C0,$FF - -CeladonGameCornerScript2: ; 48c69 (12:4c69) - ld a, [$d730] - bit 0, a - ret nz - xor a - ld [wJoypadForbiddenButtonsMask], a - ld a, $46 - ld [$cc4d], a - ld a, $11 - call Predef - ld hl, $d126 - set 5, [hl] - set 6, [hl] - ld a, $0 - ld [W_CELADONGAMECORNERCURSCRIPT], a - ret - -CeladonGameCornerTextPointers: ; 48c8a (12:4c8a) - dw CeladonGameCornerText1 - dw CeladonGameCornerText2 - dw CeladonGameCornerText3 - dw CeladonGameCornerText4 - dw CeladonGameCornerText5 - dw CeladonGameCornerText6 - dw CeladonGameCornerText7 - dw CeladonGameCornerText8 - dw CeladonGameCornerText9 - dw CeladonGameCornerText10 - dw CeladonGameCornerText11 - dw CeladonGameCornerText12 - dw CeladonGameCornerText13 - -CeladonGameCornerText1: ; 48ca4 (12:4ca4) - TX_FAR _CeladonGameCornerText1 - db "@" - -CeladonGameCornerText2: ; 48ca9 (12:4ca9) - db $08 ; asm - call Func_48f1e - ld hl, UnnamedText_48d22 - call PrintText - call YesNoChoice - ld a, [$cc26] - and a - jr nz, .asm_c650b ; 0x48cba - ld b,COIN_CASE - call IsItemInBag - jr z, .asm_ed086 ; 0x48cc1 - call Has9990Coins - jr nc, .asm_31338 ; 0x48cc6 - xor a - ldh [$9f], a - ldh [$a1], a - ld a, $10 - ldh [$a0], a - call HasEnoughMoney - jr nc, .asm_b6ef0 ; 0x48cd4 - ld hl, UnnamedText_48d31 ; $4d31 - jr .asm_e2afd ; 0x48cd9 -.asm_b6ef0 ; 0x48cdb - xor a - ldh [$9f], a - ldh [$a1], a - ld a, $10 - ldh [$a0], a - ld hl, $ffa1 - ld de, $d349 - ld c, $3 - ld a, $c - call Predef - xor a - ldh [$9f], a - ldh [$a0], a - ld a, $50 - ldh [$a1], a - ld de, $d5a5 - ld hl, $ffa1 - ld c, $2 - ld a, $b - call Predef - call Func_48f1e - ld hl, UnnamedText_48d27 - jr .asm_e2afd ; 0x48d0d -.asm_c650b ; 0x48d0f - ld hl, UnnamedText_48d2c - jr .asm_e2afd ; 0x48d12 -.asm_31338 ; 0x48d14 - ld hl, UnnamedText_48d36 - jr .asm_e2afd ; 0x48d17 -.asm_ed086 ; 0x48d19 - ld hl, UnnamedText_48d3b -.asm_e2afd ; 0x48d1c - call PrintText - jp TextScriptEnd - -UnnamedText_48d22: ; 48d22 (12:4d22) - TX_FAR _UnnamedText_48d22 - db "@" - -UnnamedText_48d27: ; 48d27 (12:4d27) - TX_FAR _UnnamedText_48d27 - db "@" - -UnnamedText_48d2c: ; 48d2c (12:4d2c) - TX_FAR _UnnamedText_48d2c - db "@" - -UnnamedText_48d31: ; 48d31 (12:4d31) - TX_FAR _UnnamedText_48d31 - db "@" - -UnnamedText_48d36: ; 48d36 (12:4d36) - TX_FAR _UnnamedText_48d36 - db "@" - -UnnamedText_48d3b: ; 48d3b (12:4d3b) - TX_FAR _UnnamedText_48d3b - db "@" - -CeladonGameCornerText3: ; 48d40 (12:4d40) - TX_FAR _CeladonGameCornerText3 - db "@" - -CeladonGameCornerText4: ; 48d45 (12:4d45) - TX_FAR _CeladonGameCornerText4 - db "@" - -CeladonGameCornerText5: ; 48d4a (12:4d4a) - db $08 ; asm - ld a, [$d77e] - bit 2, a - jr nz, .asm_d0957 ; 0x48d50 - ld hl, UnnamedText_48d9c - call PrintText - ld b, COIN_CASE - call IsItemInBag - jr z, .asm_5aef9 ; 0x48d5d - call Has9990Coins - jr nc, .asm_98546 ; 0x48d62 - xor a - ldh [$9f], a - ldh [$a0], a - ld a, $10 - ldh [$a1], a - ld de, $d5a5 - ld hl, $ffa1 - ld c, $2 - ld a, $b - call Predef - ld hl, $d77e - set 2, [hl] - ld a, $1 - ld [$cc3c], a - ld hl, Received10CoinsText - jr .asm_c7d1a ; 0x48d87 -.asm_d0957 ; 0x48d89 - ld hl, UnnamedText_48dac - jr .asm_c7d1a ; 0x48d8c -.asm_98546 ; 0x48d8e - ld hl, UnnamedText_48da7 - jr .asm_c7d1a ; 0x48d91 -.asm_5aef9 ; 0x48d93 - ld hl, UnnamedText_48f19 -.asm_c7d1a ; 0x48d96 - call PrintText - jp TextScriptEnd - -UnnamedText_48d9c: ; 48d9c (12:4d9c) - TX_FAR _UnnamedText_48d9c - db "@" - -Received10CoinsText: ; 48da1 (12:4da1) - TX_FAR _Received10CoinsText ; 0x9daa9 - db $0B, "@" - -UnnamedText_48da7: ; 48da7 (12:4da7) - TX_FAR _UnnamedText_48da7 - db "@" - -UnnamedText_48dac: ; 48dac (12:4dac) - TX_FAR _UnnamedText_48dac - db "@" - -CeladonGameCornerText6: ; 48db1 (12:4db1) - TX_FAR _CeladonGameCornerText6 - db "@" - -CeladonGameCornerText7: ; 48db6 (12:4db6) - db $08 ; asm - ld a, [$d77c] - bit 1, a - ld hl, UnnamedText_48dca ; $4dca - jr z, .asm_be3fd ; 0x48dbf - ld hl, UnnamedText_48dcf ; $4dcf -.asm_be3fd ; 0x48dc4 - call PrintText - jp TextScriptEnd - -UnnamedText_48dca: ; 48dca (12:4dca) - TX_FAR _UnnamedText_48dca - db "@" - -UnnamedText_48dcf: ; 48dcf (12:4dcf) - TX_FAR _UnnamedText_48dcf - db "@" - -CeladonGameCornerText8: ; 48dd4 (12:4dd4) - TX_FAR _CeladonGameCornerText8 - db "@" - -CeladonGameCornerText9: ; 48dd9 (12:4dd9) - db $08 ; asm - ld a, [$d77e] - bit 4, a - jr nz, .asm_ed8bc ; 0x48ddf - ld hl, UnnamedText_48e26 - call PrintText - ld b, COIN_CASE - call IsItemInBag - jr z, .asm_df794 ; 0x48dec - call Has9990Coins - jr nc, .asm_f17c3 ; 0x48df1 - xor a - ldh [$9f], a - ldh [$a0], a - ld a, $20 - ldh [$a1], a - ld de, $d5a5 - ld hl, $ffa1 - ld c, $2 - ld a, $b - call Predef - ld hl, $d77e - set 4, [hl] - ld hl, Received20CoinsText - jr .asm_0ddc2 ; 0x48e11 -.asm_ed8bc ; 0x48e13 - ld hl, UnnamedText_48e36 - jr .asm_0ddc2 ; 0x48e16 -.asm_f17c3 ; 0x48e18 - ld hl, UnnamedText_48e31 - jr .asm_0ddc2 ; 0x48e1b -.asm_df794 ; 0x48e1d - ld hl, UnnamedText_48f19 -.asm_0ddc2 ; 0x48e20 - call PrintText - jp TextScriptEnd - -UnnamedText_48e26: ; 48e26 (12:4e26) - TX_FAR _UnnamedText_48e26 - db "@" - -Received20CoinsText: ; 48e2b (12:4e2b) - TX_FAR _Received20CoinsText ; 0x9dc4f - db $0B, "@" - -UnnamedText_48e31: ; 48e31 (12:4e31) - TX_FAR _UnnamedText_48e31 - db "@" - -UnnamedText_48e36: ; 48e36 (12:4e36) - TX_FAR _UnnamedText_48e36 - db "@" - -CeladonGameCornerText10: ; 48e3b (12:4e3b) - db $08 ; asm - ld a, [$d77e] - bit 3, a - jr nz, .asm_ff080 ; 0x48e41 - ld hl, UnnamedText_48e88 ; $4e88 - call PrintText - ld b,COIN_CASE - call IsItemInBag - jr z, .asm_4fb0c ; 0x48e4e - call Has9990Coins - jr z, .asm_9505a ; 0x48e53 - xor a - ldh [$9f], a - ldh [$a0], a - ld a, $20 - ldh [$a1], a - ld de, $d5a5 - ld hl, $ffa1 - ld c, $2 - ld a, $b - call Predef - ld hl, $d77e - set 3, [hl] - ld hl, UnnamedText_48e8d - jr .asm_78d65 ; 0x48e73 -.asm_ff080 ; 0x48e75 - ld hl, UnnamedText_48e98 - jr .asm_78d65 ; 0x48e78 -.asm_9505a ; 0x48e7a - ld hl, UnnamedText_48e93 - jr .asm_78d65 ; 0x48e7d -.asm_4fb0c ; 0x48e7f - ld hl, UnnamedText_48f19 -.asm_78d65 ; 0x48e82 - call PrintText - jp TextScriptEnd - -UnnamedText_48e88: ; 48e88 (12:4e88) - TX_FAR _UnnamedText_48e88 - db "@" - -UnnamedText_48e8d: ; 48e8d (12:4e8d) - TX_FAR _UnnamedText_48e8d ; 0x9dceb - db $0B, "@" - -UnnamedText_48e93: ; 48e93 (12:4e93) - TX_FAR _UnnamedText_48e93 - db "@" - -UnnamedText_48e98: ; 48e98 (12:4e98) - TX_FAR _UnnamedText_48e98 - db "@" - -CeladonGameCornerText11: ; 48e9d (12:4e9d) - db $08 ; asm - ld hl, UnnamedText_48ece - call PrintText - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, UnnamedText_48ed3 - ld de, UnnamedText_48ed3 - call PreBattleSaveRegisters - ldh a, [$8c] - ld [$cf13], a - call EngageMapTrainer - call InitBattleEnemyParameters - xor a - ldh [$b4], a - ldh [$b3], a - ldh [$b2], a - ld a, $1 - ld [W_CELADONGAMECORNERCURSCRIPT], a - jp TextScriptEnd - -UnnamedText_48ece: ; 48ece (12:4ece) - TX_FAR _UnnamedText_48ece - db "@" - -UnnamedText_48ed3: ; 48ed3 (12:4ed3) - TX_FAR _UnnamedText_48ed3 - db "@" - -CeladonGameCornerText13: ; 48ed8 (12:4ed8) - TX_FAR _UnnamedText_48ed8 - db "@" - -CeladonGameCornerText12: ; 48edd (12:4edd) - db $08 ; asm - ld a, $1 - ld [$cc3c], a - ld hl, UnnamedText_48f09 - call PrintText - call WaitForSoundToFinish - ld a, (SFX_02_57 - SFX_Headers_02) / 3 - call PlaySound - call WaitForSoundToFinish - ld hl, $d77e - set 1, [hl] - ld a, $43 - ld [$d09f], a - ld bc, $0208 - ld a, $17 - call Predef - jp TextScriptEnd - -UnnamedText_48f09: ; 48f09 (12:4f09) - TX_FAR _UnnamedText_48f09 ; 0x9ddb0 - db $8 - ld a, (SFX_02_49 - SFX_Headers_02) / 3 - call PlaySound - call WaitForSoundToFinish - jp TextScriptEnd - -UnnamedText_48f19: ; 48f19 (12:4f19) - TX_FAR _UnnamedText_48f19 - db "@" - -Func_48f1e: ; 48f1e (12:4f1e) - ld hl, $d730 - set 6, [hl] - FuncCoord 11, 0 ; $c3ab - ld hl, Coord - ld b, $5 - ld c, $7 - call TextBoxBorder - call UpdateSprites - FuncCoord 12, 1 ; $c3c0 - ld hl, Coord - ld b, $4 - ld c, $7 - call ClearScreenArea - FuncCoord 12, 2 ; $c3d4 - ld hl, Coord - ld de, GameCornerMoneyText ; $4f7a - call PlaceString - FuncCoord 12, 3 ; $c3e8 - ld hl, Coord - ld de, GameCornerBlankText1 ; $4f85 - call PlaceString - FuncCoord 12, 3 ; $c3e8 - ld hl, Coord - ld de, $d347 - ld c, $a3 - call PrintBCDNumber - FuncCoord 12, 4 ; $c3fc - ld hl, Coord - ld de, GameCornerCoinText ; $4f80 - call PlaceString - FuncCoord 12, 5 ; $c410 - ld hl, Coord - ld de, GameCornerBlankText2 ; $4f8d - call PlaceString - FuncCoord 15, 5 ; $c413 - ld hl, Coord - ld de, $d5a4 - ld c, $82 - call PrintBCDNumber - ld hl, $d730 - res 6, [hl] - ret - -GameCornerMoneyText: ; 48f7a (12:4f7a) - db "MONEY@" - -GameCornerCoinText: ; 48f80 (12:4f80) - db "COIN@" - -GameCornerBlankText1: ; 48f85 (12:4f85) - db " @" - -GameCornerBlankText2: ; 48f8d (12:4f8d) - db " @" - -Has9990Coins: ; 48f95 (12:4f95) - ld a, $99 - ld [$ffa0], a - ld a, $90 - ld [$ffa1], a - jp HasEnoughCoins - -CeladonGameCornerObject: ; 0x48fa0 (size=99) - db $f ; border tile - - db $3 ; warps - db $11, $f, $7, $ff - db $11, $10, $7, $ff - db $4, $11, $1, ROCKET_HIDEOUT_1 - - db $1 ; signs - db $4, $9, $c ; CeladonGameCornerText12 - - db $b ; people - db SPRITE_FOULARD_WOMAN, $6 + 4, $2 + 4, $ff, $d0, $1 ; person - db SPRITE_MART_GUY, $6 + 4, $5 + 4, $ff, $d0, $2 ; person - db SPRITE_FAT_BALD_GUY, $a + 4, $2 + 4, $ff, $d2, $3 ; person - db SPRITE_FOULARD_WOMAN, $d + 4, $2 + 4, $ff, $d2, $4 ; person - db SPRITE_FISHER, $b + 4, $5 + 4, $ff, $d3, $5 ; person - db SPRITE_MOM_GEISHA, $b + 4, $8 + 4, $ff, $d2, $6 ; person - db SPRITE_GYM_HELPER, $e + 4, $8 + 4, $ff, $d2, $7 ; person - db SPRITE_GAMBLER, $f + 4, $b + 4, $ff, $d3, $8 ; person - db SPRITE_MART_GUY, $b + 4, $e + 4, $ff, $d2, $9 ; person - db SPRITE_GENTLEMAN, $d + 4, $11 + 4, $ff, $d3, $a ; person - db SPRITE_ROCKET, $5 + 4, $9 + 4, $ff, $d1, $4b, ROCKET + $C8, $7 ; trainer - - ; warp-to - EVENT_DISP GAME_CORNER_WIDTH, $11, $f - EVENT_DISP GAME_CORNER_WIDTH, $11, $10 - EVENT_DISP GAME_CORNER_WIDTH, $4, $11 ; ROCKET_HIDEOUT_1 +INCLUDE "data/mapObjects/celadongamecorner.asm" CeladonGameCornerBlocks: ; 49003 (12:5003) INCBIN "maps/celadongamecorner.blk" -CeladonMart5_h: ; 0x4905d to 0x49069 (12 bytes) (bank=12) (id=136) - db LOBBY ; tileset - db CELADON_MART_5_HEIGHT, CELADON_MART_5_WIDTH ; dimensions (y, x) - dw CeladonMart5Blocks, CeladonMart5TextPointers, CeladonMart5Script ; blocks, texts, scripts - db $00 ; connections - dw CeladonMart5Object ; objects - -CeladonMart5Script: ; 49069 (12:5069) - jp EnableAutoTextBoxDrawing - -CeladonMart5TextPointers: ; 4906c (12:506c) - dw CeladonMart5Text1 - dw CeladonMart5Text2 - dw CeladonMart5Text3 - dw CeladonMart5Text4 - dw CeladonMart5Text5 - -CeladonMart5Text1: ; 49076 (12:5076) - TX_FAR _CeladonMart5Text1 - db "@" - -CeladonMart5Text2: ; 4907b (12:507b) - TX_FAR _CeladonMart5Text2 - db "@" - -CeladonMart5Text5: ; 49080 (12:5080) - TX_FAR _CeladonMart5Text5 - db "@" - -CeladonMart5Object: ; 0x49085 (size=55) - db $f ; border tile - - db $3 ; warps - db $1, $c, $0, CELADON_MART_ROOF - db $1, $10, $1, CELADON_MART_4 - db $1, $1, $0, CELADON_MART_ELEVATOR - - db $1 ; signs - db $1, $e, $5 ; CeladonMart5Text5 +INCLUDE "data/mapHeaders/celadonmart5.asm" - db $4 ; people - db SPRITE_GENTLEMAN, $5 + 4, $e + 4, $fe, $1, $1 ; person - db SPRITE_SAILOR, $6 + 4, $2 + 4, $ff, $ff, $2 ; person - db SPRITE_MART_GUY, $3 + 4, $5 + 4, $ff, $d0, $3 ; person - db SPRITE_MART_GUY, $3 + 4, $6 + 4, $ff, $d0, $4 ; person +INCLUDE "scripts/celadonmart5.asm" - ; warp-to - EVENT_DISP CELADON_MART_5_WIDTH, $1, $c ; CELADON_MART_ROOF - EVENT_DISP CELADON_MART_5_WIDTH, $1, $10 ; CELADON_MART_4 - EVENT_DISP CELADON_MART_5_WIDTH, $1, $1 ; CELADON_MART_ELEVATOR +INCLUDE "data/mapObjects/celadonmart5.asm" CeladonMart5Blocks: ; 490bc (12:50bc) INCBIN "maps/celadonmart5.blk" -CeladonPrizeRoom_h: ; 0x490e4 to 0x490f0 (12 bytes) (bank=12) (id=137) - db LOBBY ; tileset - db CELADON_PRIZE_ROOM_HEIGHT, CELADON_PRIZE_ROOM_WIDTH ; dimensions (y, x) - dw CeladonPrizeRoomBlocks, CeladonPrizeRoomTextPointers, CeladonPrizeRoomScript ; blocks, texts, scripts - db $00 ; connections - dw CeladonPrizeRoomObject ; objects - -CeladonPrizeRoomScript: ; 490f0 (12:50f0) - jp EnableAutoTextBoxDrawing - -CeladonPrizeRoomTextPointers: ; 490f3 (12:50f3) - dw CeladonPrizeRoomText1 - dw CeladonPrizeRoomText2 - dw CeladonPrizeRoomText3 - dw CeladonPrizeRoomText3 - dw CeladonPrizeRoomText3 - -CeladonPrizeRoomText1: ; 490fd (12:50fd) - TX_FAR _CeladonPrizeRoomText1 - db "@" - -CeladonPrizeRoomText2: ; 49102 (12:5102) - TX_FAR _CeladonPrizeRoomText2 - db "@" - -CeladonPrizeRoomText3: ; 49107 (12:5107) - db $f7 +INCLUDE "data/mapHeaders/celadonprizeroom.asm" -CeladonPrizeRoomObject: ; 0x49108 (size=41) - db $f ; border tile +INCLUDE "scripts/celadonprizeroom.asm" - db $2 ; warps - db $7, $4, $9, $ff - db $7, $5, $9, $ff - - db $3 ; signs - db $2, $2, $3 ; CeladonPrizeRoomText3 - db $2, $4, $4 ; CeladonPrizeRoomText4 - db $2, $6, $5 ; CeladonPrizeRoomText5 - - db $2 ; people - db SPRITE_BALDING_GUY, $4 + 4, $1 + 4, $ff, $ff, $1 ; person - db SPRITE_GAMBLER, $3 + 4, $7 + 4, $fe, $2, $2 ; person - - ; warp-to - EVENT_DISP CELADON_PRIZE_ROOM_WIDTH, $7, $4 - EVENT_DISP CELADON_PRIZE_ROOM_WIDTH, $7, $5 +INCLUDE "data/mapObjects/celadonprizeroom.asm" CeladonPrizeRoomBlocks: ; 49131 (12:5131) INCBIN "maps/celadonprizeroom.blk" -CeladonDiner_h: ; 0x49145 to 0x49151 (12 bytes) (bank=12) (id=138) - db LOBBY ; tileset - db CELADON_DINER_HEIGHT, CELADON_DINER_WIDTH ; dimensions (y, x) - dw CeladonDinerBlocks, CeladonDinerTextPointers, CeladonDinerScript ; blocks, texts, scripts - db $00 ; connections - dw CeladonDinerObject ; objects - -CeladonDinerScript: ; 49151 (12:5151) - call EnableAutoTextBoxDrawing - ret +INCLUDE "data/mapHeaders/celadondiner.asm" -CeladonDinerTextPointers: ; 49155 (12:5155) - dw CeladonDinerText1 - dw CeladonDinerText2 - dw CeladonDinerText3 - dw CeladonDinerText4 - dw CeladonDinerText5 +INCLUDE "scripts/celadondiner.asm" -CeladonDinerText1: ; 4915f (12:515f) - TX_FAR _CeladonDinerText1 - db "@" - -CeladonDinerText2: ; 49164 (12:5164) - TX_FAR _CeladonDinerText2 - db "@" - -CeladonDinerText3: ; 49169 (12:5169) - TX_FAR _CeladonDinerText3 - db "@" - -CeladonDinerText4: ; 4916e (12:516e) - TX_FAR _CeladonDinerText4 - db "@" - -CeladonDinerText5: ; 49173 (12:5173) - db $08 ; asm - ld a, [$d783] - bit 0, a - jr nz, .asm_eb14d ; 0x49179 - ld hl, UnnamedText_491a7 - call PrintText - ld bc, (COIN_CASE << 8) | 1 - call GiveItem - jr nc, .BagFull - ld hl, $d783 - set 0, [hl] - ld hl, ReceivedCoinCaseText - call PrintText - jr .asm_68b61 ; 0x49194 -.BagFull - ld hl, CoinCaseNoRoomText - call PrintText - jr .asm_68b61 ; 0x4919c -.asm_eb14d ; 0x4919e - ld hl, UnnamedText_491b7 - call PrintText -.asm_68b61 ; 0x491a4 - jp TextScriptEnd - -UnnamedText_491a7: ; 491a7 (12:51a7) - TX_FAR _UnnamedText_491a7 - db "@" - -ReceivedCoinCaseText: ; 491ac (12:51ac) - TX_FAR _ReceivedCoinCaseText ; 0x9e07a - db $11, "@" - -CoinCaseNoRoomText: ; 491b2 (12:51b2) - TX_FAR _CoinCaseNoRoomText - db "@" - -UnnamedText_491b7: ; 491b7 (12:51b7) - TX_FAR _UnnamedText_491b7 - db "@" - -CeladonDinerObject: ; 0x491bc (size=50) - db $f ; border tile - - db $2 ; warps - db $7, $3, $a, $ff - db $7, $4, $a, $ff - - db $0 ; signs - - db $5 ; people - db SPRITE_COOK, $5 + 4, $8 + 4, $fe, $2, $1 ; person - db SPRITE_MOM_GEISHA, $2 + 4, $7 + 4, $ff, $ff, $2 ; person - db SPRITE_FAT_BALD_GUY, $4 + 4, $1 + 4, $ff, $d0, $3 ; person - db SPRITE_FISHER2, $3 + 4, $5 + 4, $ff, $d3, $4 ; person - db SPRITE_GYM_HELPER, $1 + 4, $0 + 4, $ff, $d0, $5 ; person - - ; warp-to - EVENT_DISP CELADON_DINER_WIDTH, $7, $3 - EVENT_DISP CELADON_DINER_WIDTH, $7, $4 +INCLUDE "data/mapObjects/celadondiner.asm" CeladonDinerBlocks: ; 491ee (12:51ee) INCBIN "maps/celadondiner.blk" -CeladonHouse_h: ; 0x49202 to 0x4920e (12 bytes) (bank=12) (id=139) - db MANSION ; tileset - db CELADON_HOUSE_HEIGHT, CELADON_HOUSE_WIDTH ; dimensions (y, x) - dw CeladonHouseBlocks, CeladonHouseTextPointers, CeladonHouseScript ; blocks, texts, scripts - db $00 ; connections - dw CeladonHouseObject ; objects - -CeladonHouseScript: ; 4920e (12:520e) - call EnableAutoTextBoxDrawing - ret - -CeladonHouseTextPointers: ; 49212 (12:5212) - dw CeladonHouseText1 - dw CeladonHouseText2 - dw CeladonHouseText3 - -CeladonHouseText1: ; 49218 (12:5218) - TX_FAR _CeladonHouseText1 - db "@" - -CeladonHouseText2: ; 4921d (12:521d) - TX_FAR _CeladonHouseText2 - db "@" - -CeladonHouseText3: ; 49222 (12:5222) - TX_FAR _CeladonHouseText3 - db "@" - -CeladonHouseObject: ; 0x49227 (size=38) - db $f ; border tile - - db $2 ; warps - db $7, $2, $b, $ff - db $7, $3, $b, $ff +INCLUDE "data/mapHeaders/celadonhouse.asm" - db $0 ; signs +INCLUDE "scripts/celadonhouse.asm" - db $3 ; people - db SPRITE_OLD_PERSON, $2 + 4, $4 + 4, $ff, $d0, $1 ; person - db SPRITE_ROCKET, $4 + 4, $1 + 4, $fe, $0, $2 ; person - db SPRITE_SAILOR, $6 + 4, $5 + 4, $ff, $d2, $3 ; person - - ; warp-to - EVENT_DISP CELADON_HOUSE_WIDTH, $7, $2 - EVENT_DISP CELADON_HOUSE_WIDTH, $7, $3 +INCLUDE "data/mapObjects/celadonhouse.asm" CeladonHouseBlocks: ; 4924d (12:524d) INCBIN "maps/celadonhouse.blk" -CeladonHotel_h: ; 0x4925d to 0x49269 (12 bytes) (bank=12) (id=140) - db POKECENTER ; tileset - db CELADON_HOTEL_HEIGHT, CELADON_HOTEL_WIDTH ; dimensions (y, x) - dw CeladonHotelBlocks, CeladonHotelTextPointers, CeladonHotelScript ; blocks, texts, scripts - db $00 ; connections - dw CeladonHotelObject ; objects - -CeladonHotelScript: ; 49269 (12:5269) - jp EnableAutoTextBoxDrawing - -CeladonHotelTextPointers: ; 4926c (12:526c) - dw CeladonHotelText1 - dw CeladonHotelText2 - dw CeladonHotelText3 - -CeladonHotelText1: ; 49272 (12:5272) - TX_FAR _CeladonHotelText1 - db "@" - -CeladonHotelText2: ; 49277 (12:5277) - TX_FAR _CeladonHotelText2 - db "@" - -CeladonHotelText3: ; 4927c (12:527c) - TX_FAR _CeladonHotelText3 - db "@" - -CeladonHotelObject: ; 0x49281 (size=38) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $c, $ff - db $7, $4, $c, $ff - - db $0 ; signs +INCLUDE "data/mapHeaders/celadonhotel.asm" - db $3 ; people - db SPRITE_OLD_MEDIUM_WOMAN, $1 + 4, $3 + 4, $ff, $d0, $1 ; person - db SPRITE_FOULARD_WOMAN, $4 + 4, $2 + 4, $ff, $ff, $2 ; person - db SPRITE_BLACK_HAIR_BOY_2, $4 + 4, $8 + 4, $fe, $2, $3 ; person +INCLUDE "scripts/celadonhotel.asm" - ; warp-to - EVENT_DISP CELADON_HOTEL_WIDTH, $7, $3 - EVENT_DISP CELADON_HOTEL_WIDTH, $7, $4 +INCLUDE "data/mapObjects/celadonhotel.asm" CeladonHotelBlocks: ; 492a7 (12:52a7) INCBIN "maps/celadonhotel.blk" -MtMoonPokecenter_h: ; 0x492c3 to 0x492cf (12 bytes) (bank=12) (id=68) - db POKECENTER ; tileset - db MT_MOON_POKECENTER_HEIGHT, MT_MOON_POKECENTER_WIDTH ; dimensions (y, x) - dw MtMoonPokecenterBlocks, MtMoonPokecenterTextPointers, MtMoonPokecenterScript ; blocks, texts, scripts - db $00 ; connections - dw MtMoonPokecenterObject ; objects - -MtMoonPokecenterScript: ; 492cf (12:52cf) - call Func_22fa - jp EnableAutoTextBoxDrawing - -MtMoonPokecenterTextPointers: ; 492d5 (12:52d5) - dw MtMoonPokecenterText1 - dw MtMoonPokecenterText2 - dw MtMoonPokecenterText3 - dw MtMoonPokecenterText4 - dw MtMoonPokecenterText5 - dw MtMoonPokecenterText6 - -MtMoonPokecenterText1: ; 492e1 (12:52e1) - db $ff - -MtMoonPokecenterText2: ; 492e2 (12:52e2) - TX_FAR _MtMoonPokecenterText1 - db "@" - -MtMoonPokecenterText3: ; 492e7 (12:52e7) - TX_FAR _MtMoonPokecenterText3 - db "@" - -MtMoonPokecenterText4: ; 492ec (12:52ec) - db $08 ; asm - ld a, [$d7c6] - add a - jp c, .asm_49353 - ld hl, UnnamedText_4935c - call PrintText - ld a, $13 - ld [$d125], a - call DisplayTextBoxID - call YesNoChoice - ld a, [$cc26] - and a - jp nz, .asm_4934e - ldh [$9f], a - ldh [$a1], a - ld a, $5 - ldh [$a0], a - call HasEnoughMoney - jr nc, .asm_faa09 ; 0x49317 - ld hl, UnnamedText_49366 - jr .asm_49356 ; 0x4931c -.asm_faa09 ; 0x4931e - ld bc,(MAGIKARP << 8) | 5 - call GivePokemon - jr nc, .asm_49359 ; 0x49324 - xor a - ld [wWhichTrade], a - ld [$cd3f], a - ld a, $5 - ld [$cd3e], a - ld hl, $cd3f - ld de, $d349 - ld c, $3 - ld a, $c - call Predef - ld a, $13 - ld [$d125], a - call DisplayTextBoxID - ld hl, $d7c6 - set 7, [hl] - jr .asm_49359 ; 0x4934c -.asm_4934e ; 0x4934e - ld hl, UnnamedText_49361 - jr .asm_49356 ; 0x49351 -.asm_49353 ; 0x49353 - ld hl, UnnamedText_4936b -.asm_49356 ; 0x49356 - call PrintText -.asm_49359 ; 0x49359 - jp TextScriptEnd - -UnnamedText_4935c: ; 4935c (12:535c) - TX_FAR _UnnamedText_4935c - db "@" - -UnnamedText_49361: ; 49361 (12:5361) - TX_FAR _UnnamedText_49361 - db "@" - -UnnamedText_49366: ; 49366 (12:5366) - TX_FAR _UnnamedText_49366 - db "@" - -UnnamedText_4936b: ; 4936b (12:536b) - TX_FAR _UnnamedText_4936b - db "@" - -MtMoonPokecenterText5: ; 49370 (12:5370) - TX_FAR _MtMoonPokecenterText5 - db "@" - -MtMoonPokecenterText6: ; 49375 (12:5375) - db $f6 - -MtMoonPokecenterObject: ; 0x49376 (size=56) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $0, $ff - db $7, $4, $0, $ff - - db $0 ; signs - - db $6 ; people - db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person - db SPRITE_BUG_CATCHER, $3 + 4, $4 + 4, $ff, $d1, $2 ; person - db SPRITE_GENTLEMAN, $3 + 4, $7 + 4, $ff, $d1, $3 ; person - db SPRITE_FAT_BALD_GUY, $6 + 4, $a + 4, $fe, $2, $4 ; person - db SPRITE_CLIPBOARD, $2 + 4, $7 + 4, $ff, $ff, $5 ; person - db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $6 ; person - - ; warp-to - EVENT_DISP MT_MOON_POKECENTER_WIDTH, $7, $3 - EVENT_DISP MT_MOON_POKECENTER_WIDTH, $7, $4 - -RockTunnelPokecenter_h: ; 0x493ae to 0x493ba (12 bytes) (id=81) - db POKECENTER ; tileset - db ROCK_TUNNEL_POKECENTER_HEIGHT, ROCK_TUNNEL_POKECENTER_WIDTH ; dimensions (y, x) - dw RockTunnelPokecenterBlocks, RockTunnelPokecenterTextPointers, RockTunnelPokecenterScript ; blocks, texts, scripts - db $00 ; connections - dw RockTunnelPokecenterObject ; objects - -RockTunnelPokecenterScript: ; 493ba (12:53ba) - call Func_22fa - jp EnableAutoTextBoxDrawing - -RockTunnelPokecenterTextPointers: ; 493c0 (12:53c0) - dw RockTunnelPokecenterText1 - dw RockTunnelPokecenterText2 - dw RockTunnelPokecenterText3 - dw RockTunnelPokecenterText4 - -RockTunnelPokecenterText1: ; 493c8 (12:53c8) - db $ff - -RockTunnelPokecenterText2: ; 493c9 (12:53c9) - TX_FAR _RockTunnelPokecenterText1 - db "@" - -RockTunnelPokecenterText3: ; 493ce (12:53ce) - TX_FAR _RockTunnelPokecenterText3 - db "@" - -RockTunnelPokecenterText4: ; 493d3 (12:53d3) - db $f6 - -RockTunnelPokecenterObject: ; 0x493d4 (size=44) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $0, $ff - db $7, $4, $0, $ff - - db $0 ; signs - - db $4 ; people - db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person - db SPRITE_GENTLEMAN, $3 + 4, $7 + 4, $fe, $2, $2 ; person - db SPRITE_FISHER2, $5 + 4, $2 + 4, $ff, $ff, $3 ; person - db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person - - ; warp-to - EVENT_DISP ROCK_TUNNEL_POKECENTER_WIDTH, $7, $3 - EVENT_DISP ROCK_TUNNEL_POKECENTER_WIDTH, $7, $4 - -Route11Gate_h: ; 0x49400 to 0x4940c (12 bytes) (id=84) - db GATE ; tileset - db ROUTE_11_GATE_1F_HEIGHT, ROUTE_11_GATE_1F_WIDTH ; dimensions (y, x) - dw Route11GateBlocks, Route11GateTextPointers, Route11GateScript ; blocks, texts, scripts - db $00 ; connections - dw Route11GateObject ; objects - -Route11GateScript: ; 4940c (12:540c) - jp EnableAutoTextBoxDrawing - -Route11GateTextPointers: ; 4940f (12:540f) - dw Route11GateText1 - -Route11GateText1: ; 49411 (12:5411) - TX_FAR _Route11GateText1 - db "@" - -Route11GateObject: ; 0x49416 (size=50) - db $a ; border tile - - db $5 ; warps - db $4, $0, $0, $ff - db $5, $0, $1, $ff - db $4, $7, $2, $ff - db $5, $7, $3, $ff - db $8, $6, $0, ROUTE_11_GATE_2F - - db $0 ; signs - - db $1 ; people - db SPRITE_GUARD, $1 + 4, $4 + 4, $ff, $ff, $1 ; person - - ; warp-to - EVENT_DISP ROUTE_11_GATE_1F_WIDTH, $4, $0 - EVENT_DISP ROUTE_11_GATE_1F_WIDTH, $5, $0 - EVENT_DISP ROUTE_11_GATE_1F_WIDTH, $4, $7 - EVENT_DISP ROUTE_11_GATE_1F_WIDTH, $5, $7 - EVENT_DISP ROUTE_11_GATE_1F_WIDTH, $8, $6 ; ROUTE_11_GATE_2F - -Route11GateUpstairs_h: ; 0x49448 to 0x49454 (12 bytes) (id=86) - db GATE ; tileset - db ROUTE_11_GATE_2F_HEIGHT, ROUTE_11_GATE_2F_WIDTH ; dimensions (y, x) - dw Route11GateUpstairsBlocks, Route11GateUpstairsTextPointers, Route11GateUpstairsScript ; blocks, texts, scripts - db $00 ; connections - dw Route11GateUpstairsObject ; objects - -Route11GateUpstairsScript: ; 49454 (12:5454) - jp DisableAutoTextBoxDrawing - -Route11GateUpstairsTextPointers: ; 49457 (12:5457) - dw Route11GateUpstairsText1 - dw Route11GateUpstairsText2 - dw Route11GateUpstairsText3 - dw Route11GateUpstairsText4 - -Route11GateUpstairsText1: ; 4945f (12:545f) - db $08 ; asm - xor a - ld [wWhichTrade], a - ld a, $54 - call Predef -asm_49469: ; 49469 (12:5469) - jp TextScriptEnd - -Route11GateUpstairsText2: ; 4946c (12:546c) - db $8 - ld a, [$d7d6] - add a - jr c, .asm_4949b ; 0x49471 $28 - ld a, $1e - ld [$ffdb], a - ld a, $47 - ld [$ffdc], a - ld [$d11e], a - call GetItemName - ld h, d - ld l, e - ld de, $cc5b - ld bc, $000d - call CopyData - ld a, $62 - call Predef - ld a, [$ffdb] - dec a - jr nz, .asm_494a1 ; 0x49494 $b - ld hl, $d7d6 - set 7, [hl] -.asm_4949b - ld hl, UnnamedText_494a3 - call PrintText -.asm_494a1 - jr asm_49469 ; 0x494a1 $c6 - -UnnamedText_494a3: ; 494a3 (12:54a3) - TX_FAR _UnnamedText_494a3 - db "@" - -Route11GateUpstairsText3: ; 494a8 (12:54a8) - db $08 ; asm - ld a, [$c109] - cp $4 - jp nz, Func_55c9 - ld a, [$d7d8] - bit 7, a ; fought snorlax? - ld hl, BinocularsSnorlaxText - jr z, .print - ld hl, BinocularsNoSnorlaxText -.print - call PrintText - jp TextScriptEnd - -BinocularsSnorlaxText: - TX_FAR _BinocularsSnorlaxText - db "@" - -BinocularsNoSnorlaxText: - TX_FAR _BinocularsNoSnorlaxText - db "@" - -Route11GateUpstairsText4: ; 494ce (12:54ce) - db $8 - ld hl, UnnamedText_494d5 ; $54d5 - jp Func_55c9 - -UnnamedText_494d5: ; 494d5 (12:54d5) - TX_FAR _UnnamedText_494d5 - db "@" +INCLUDE "data/mapHeaders/mtmoonpokecenter.asm" -Route11GateUpstairsObject: ; 0x494da (size=30) - db $a ; border tile +INCLUDE "scripts/mtmoonpokecenter.asm" - db $1 ; warps - db $7, $7, $4, ROUTE_11_GATE_1F +INCLUDE "data/mapObjects/mtmoonpokecenter.asm" - db $2 ; signs - db $2, $1, $3 ; Route11GateUpstairsText3 - db $2, $6, $4 ; Route11GateUpstairsText4 +INCLUDE "data/mapHeaders/rocktunnelpokecenter.asm" - db $2 ; people - db SPRITE_BUG_CATCHER, $2 + 4, $4 + 4, $fe, $2, $1 ; person - db SPRITE_OAK_AIDE, $6 + 4, $2 + 4, $ff, $ff, $2 ; person +INCLUDE "scripts/rocktunnelpokecenter.asm" - ; warp-to - EVENT_DISP ROUTE_11_GATE_2F_WIDTH, $7, $7 ; ROUTE_11_GATE_1F +INCLUDE "data/mapObjects/rocktunnelpokecenter.asm" -Route12Gate_h: ; 0x494f8 to 0x49504 (12 bytes) (id=87) - db GATE ; tileset - db ROUTE_12_GATE_1F_HEIGHT, ROUTE_12_GATE_1F_WIDTH ; dimensions (y, x) - dw Route12GateBlocks, Route12GateTextPointers, Route12GateScript ; blocks, texts, scripts - db $00 ; connections - dw Route12GateObject ; objects +INCLUDE "data/mapHeaders/route11gate.asm" -Route12GateScript: ; 49504 (12:5504) - jp EnableAutoTextBoxDrawing +INCLUDE "scripts/route11gate.asm" -Route12GateTextPointers: ; 49507 (12:5507) - dw Route12GateText1 +INCLUDE "data/mapObjects/route11gate.asm" -Route12GateText1: ; 49509 (12:5509) - TX_FAR _Route12GateText1 - db "@" +INCLUDE "data/mapHeaders/route11gateupstairs.asm" -Route12GateObject: ; 0x4950e (size=50) - db $a ; border tile +INCLUDE "scripts/route11gateupstairs.asm" - db $5 ; warps - db $0, $4, $0, $ff - db $0, $5, $1, $ff - db $7, $4, $2, $ff - db $7, $5, $2, $ff - db $6, $8, $0, ROUTE_12_GATE_2F +INCLUDE "data/mapObjects/route11gateupstairs.asm" - db $0 ; signs +INCLUDE "data/mapHeaders/route12gate.asm" - db $1 ; people - db SPRITE_GUARD, $3 + 4, $1 + 4, $ff, $ff, $1 ; person +INCLUDE "scripts/route12gate.asm" - ; warp-to - EVENT_DISP ROUTE_12_GATE_1F_WIDTH, $0, $4 - EVENT_DISP ROUTE_12_GATE_1F_WIDTH, $0, $5 - EVENT_DISP ROUTE_12_GATE_1F_WIDTH, $7, $4 - EVENT_DISP ROUTE_12_GATE_1F_WIDTH, $7, $5 - EVENT_DISP ROUTE_12_GATE_1F_WIDTH, $6, $8 ; ROUTE_12_GATE_2F +INCLUDE "data/mapObjects/route12gate.asm" Route12GateBlocks: ; 49540 (12:5540) INCBIN "maps/route12gate.blk" -Route12GateUpstairs_h: ; 0x49554 to 0x49560 (12 bytes) (id=195) - db GATE ; tileset - db ROUTE_12_GATE_2F_HEIGHT, ROUTE_12_GATE_2F_WIDTH ; dimensions (y, x) - dw Route12GateUpstairsBlocks, Route12GateUpstairsTextPointers, Route12GateUpstairsScript ; blocks, texts, scripts - db $00 ; connections - dw Route12GateUpstairsObject ; objects - -Route12GateUpstairsScript: ; 49560 (12:5560) - jp DisableAutoTextBoxDrawing - -Route12GateUpstairsTextPointers: ; 49563 (12:5563) - dw Route12GateUpstairsText1 - dw Route12GateUpstairsText2 - dw Route12GateUpstairsText3 - -Route12GateUpstairsText1: ; 49569 (12:5569) - db $08 ; asm - ld a, [$d7d7] - rrca - jr c, .asm_0ad3c ; 0x4956e - ld hl, TM39PreReceiveText - call PrintText - ld bc, (TM_39 << 8) | 1 - call GiveItem - jr nc, .BagFull - ld hl, ReceivedTM39Text - call PrintText - ld hl, $d7d7 - set 0, [hl] - jr .asm_4ba56 ; 0x49589 -.BagFull - ld hl, TM39NoRoomText - call PrintText - jr .asm_4ba56 ; 0x49591 -.asm_0ad3c ; 0x49593 - ld hl, TM39ExplanationText - call PrintText -.asm_4ba56 ; 0x49599 - jp TextScriptEnd - -TM39PreReceiveText: ; 4959c (12:559c) - TX_FAR _TM39PreReceiveText - db "@" - -ReceivedTM39Text: ; 495a1 (12:55a1) - TX_FAR _ReceivedTM39Text ; 0x8c8c6 - db $0B, "@" - -TM39ExplanationText: ; 495a7 (12:55a7) - TX_FAR _TM39ExplanationText - db "@" - -TM39NoRoomText: ; 495ac (12:55ac) - TX_FAR _TM39NoRoomText - db "@" - -Route12GateUpstairsText2: ; 495b1 (12:55b1) - db $08 ; asm - ld hl, UnnamedText_495b8 - jp Func_55c9 - -UnnamedText_495b8: ; 495b8 (12:55b8) - TX_FAR _UnnamedText_495b8 ; 0x8c95a - db "@" - -Route12GateUpstairsText3: ; 495bd (12:55bd) - db $8 - ld hl, UnnamedText_495c4 - jp Func_55c9 - -UnnamedText_495c4: ; 495c4 (12:55c4) - TX_FAR _UnnamedText_495c4 - db "@" - -Func_55c9: ; 495c9 (12:55c9) - ld a, [$c109] - cp $4 - jr z, .asm_495d4 ; 0x495ce $4 - ld a, $1 - jr .asm_495d8 ; 0x495d2 $4 -.asm_495d4 - call PrintText - xor a -.asm_495d8 - ld [$cc3c], a - jp TextScriptEnd - -Route12GateUpstairsObject: ; 0x495de (size=24) - db $a ; border tile - - db $1 ; warps - db $7, $7, $4, ROUTE_12_GATE_1F +INCLUDE "data/mapHeaders/route12gateupstairs.asm" - db $2 ; signs - db $2, $1, $2 ; Route12GateUpstairsText2 - db $2, $6, $3 ; Route12GateUpstairsText3 +INCLUDE "scripts/route12gateupstairs.asm" - db $1 ; people - db SPRITE_BRUNETTE_GIRL, $4 + 4, $3 + 4, $fe, $1, $1 ; person +INCLUDE "data/mapObjects/route12gateupstairs.asm" - ; warp-to - EVENT_DISP ROUTE_12_GATE_2F_WIDTH, $7, $7 ; ROUTE_12_GATE_1F +INCLUDE "data/mapHeaders/route15gate.asm" -Route15Gate_h: ; 0x495f6 to 0x49602 (12 bytes) (id=184) - db GATE ; tileset - db ROUTE_15_GATE_1F_HEIGHT, ROUTE_15_GATE_1F_WIDTH ; dimensions (y, x) - dw Route15GateBlocks, Route15GateTextPointers, Route15GateScript ; blocks, texts, scripts - db $00 ; connections - dw Route15GateObject ; objects - -Route15GateScript: ; 49602 (12:5602) - jp EnableAutoTextBoxDrawing - -Route15GateTextPointers: ; 49605 (12:5605) - dw Route15GateText1 - -Route15GateText1: ; 49607 (12:5607) - TX_FAR _Route15GateText1 - db "@" +INCLUDE "scripts/route15gate.asm" -Route15GateObject: ; 0x4960c (size=50) - db $a ; border tile +INCLUDE "data/mapObjects/route15gate.asm" - db $5 ; warps - db $4, $0, $0, $ff - db $5, $0, $1, $ff - db $4, $7, $2, $ff - db $5, $7, $3, $ff - db $8, $6, $0, ROUTE_15_GATE_2F +INCLUDE "data/mapHeaders/route15gateupstairs.asm" - db $0 ; signs +INCLUDE "scripts/route15gateupstairs.asm" - db $1 ; people - db SPRITE_GUARD, $1 + 4, $4 + 4, $ff, $ff, $1 ; person +INCLUDE "data/mapObjects/route15gateupstairs.asm" - ; warp-to - EVENT_DISP ROUTE_15_GATE_1F_WIDTH, $4, $0 - EVENT_DISP ROUTE_15_GATE_1F_WIDTH, $5, $0 - EVENT_DISP ROUTE_15_GATE_1F_WIDTH, $4, $7 - EVENT_DISP ROUTE_15_GATE_1F_WIDTH, $5, $7 - EVENT_DISP ROUTE_15_GATE_1F_WIDTH, $8, $6 ; ROUTE_15_GATE_2F +INCLUDE "data/mapHeaders/route16gate.asm" -Route15GateUpstairs_h: ; 4963e (12:563e) - db GATE ; tileset - db ROUTE_15_GATE_2F_HEIGHT, ROUTE_15_GATE_2F_WIDTH ; dimensions (y, x) - dw Route15GateUpstairsBlocks, Route15GateUpstairsTextPointers, Route15GateUpstairsScript ; blocks, texts, scripts - db $00 ; connections - dw Route15GateUpstairsObject ; objects +INCLUDE "scripts/route16gate.asm" -Route15GateUpstairsScript: ; 4964a (12:564a) - jp DisableAutoTextBoxDrawing - -Route15GateUpstairsTextPointers: ; 4964d (12:564d) - dw Route15GateUpstairsText1 - dw Route15GateUpstairsText2 - -Route15GateUpstairsText1: ; 49651 (12:5651) - db $8 - ld a, [$d7dd] - bit 0, a - jr nz, .asm_49683 ; 0x49657 $2a - ld a, $32 - ld [$ffdb], a - ld a, $4b - ld [$ffdc], a - ld [$d11e], a - call GetItemName - ld hl, $cd6d - ld de, $cc5b - ld bc, $000d - call CopyData - ld a, $62 - call Predef - ld a, [$ffdb] - cp $1 - jr nz, .asm_49689 ; 0x4967c $b - ld hl, $d7dd - set 0, [hl] -.asm_49683 - ld hl, UnnamedText_4968c - call PrintText -.asm_49689 - jp TextScriptEnd - -UnnamedText_4968c: ; 4968c (12:568c) - TX_FAR _UnnamedText_4968c - db "@" - -Route15GateUpstairsText2: ; 49691 (12:5691) - db $8 - ld hl, UnnamedText_49698 - jp Func_55c9 - -UnnamedText_49698: ; 49698 (12:5698) - TX_FAR _UnnamedText_49698 - db "@" - -Route15GateUpstairsObject: ; 4969d (12:569d) - db $a ; border tile - - db $1 ; warps - db $7, $7, $4, ROUTE_15_GATE_1F - - db $1 ; signs - db $2, $6, $2 ; Route15GateUpstairsText2 - - db $1 ; people - db SPRITE_OAK_AIDE, $2 + 4, $4 + 4, $ff, $d0, $1 - - ; warp-to - EVENT_DISP ROUTE_15_GATE_2F_WIDTH, $7, $7 ; ROUTE_15_GATE_1F - -Route16Gate_h: ; 0x496b2 to 0x496be (12 bytes) (id=186) - db GATE ; tileset - db ROUTE_16_GATE_1F_HEIGHT, ROUTE_16_GATE_1F_WIDTH ; dimensions (y, x) - dw Route16GateBlocks, Route16GateTextPointers, Route16GateScript ; blocks, texts, scripts - db $00 ; connections - dw Route16GateObject ; objects - -Route16GateScript: ; 496be (12:56be) - ld hl, $d732 - res 5, [hl] - call EnableAutoTextBoxDrawing - ld a, [W_ROUTE16GATECURSCRIPT] - ld hl, Route16GateScriptPointers - jp CallFunctionInTable - -Route16GateScriptPointers: ; 496cf (12:56cf) - dw Route16GateScript0 - dw Route16GateScript1 - dw Route16GateScript2 - dw Route16GateScript3 - -Route16GateScript0: ; 496d7 (12:56d7) - call Func_49755 - ret nz - ld hl, CoordsData_49714 - call ArePlayerCoordsInArray - ret nc - ld a, $3 - ld [$ff8c], a - call DisplayTextID - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - ld a, [$cd3d] - cp $1 - jr z, .asm_4970e ; 0x496f1 $1b - ld a, [$cd3d] - dec a - ld [$cd38], a - ld b, $0 - ld c, a - ld a, $40 - ld hl, $ccd3 - call FillMemory - call Func_3486 - ld a, $1 - ld [W_ROUTE16GATECURSCRIPT], a - ret -.asm_4970e - ld a, $2 - ld [W_ROUTE16GATECURSCRIPT], a - ret - -CoordsData_49714: ; 49714 (12:5714) - db $07,$04 - db $08,$04 - db $09,$04 - db $0A,$04 - db $FF - -Route16GateScript1: ; 4971d (12:571d) - ld a, [$cd38] - and a - ret nz - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - -Route16GateScript2: ; 49727 (12:5727) - ld a, $1 - ld [H_SPRITEHEIGHT], a - call DisplayTextID - ld a, $1 - ld [$cd38], a - ld a, $10 - ld [$ccd3], a - call Func_3486 - ld a, $3 - ld [W_ROUTE16GATECURSCRIPT], a - ret - -Route16GateScript3: ; 49741 (12:5741) - ld a, [$cd38] - and a - ret nz - xor a - ld [wJoypadForbiddenButtonsMask], a - ld hl, $d730 - res 7, [hl] - ld a, $0 - ld [W_ROUTE16GATECURSCRIPT], a - ret - -Func_49755: ; 49755 (12:5755) - ld b, BICYCLE - jp IsItemInBag - -Route16GateTextPointers: ; 4975a (12:575a) - dw Route16GateText1 - dw Route16GateText2 - dw Route16GateText3 - -Route16GateText1: ; 49760 (12:5760) - db $08 ; asm - call Func_49755 - jr z, .asm_0bdf3 ; 0x49764 - ld hl, UnnamedText_4977c - call PrintText - jr .asm_56c9d ; 0x4976c -.asm_0bdf3 ; 0x4976e - ld hl, UnnamedText_49777 - call PrintText -.asm_56c9d ; 0x49774 - jp TextScriptEnd - -UnnamedText_49777: ; 49777 (12:5777) - TX_FAR _UnnamedText_49777 - db "@" - -UnnamedText_4977c: ; 4977c (12:577c) - TX_FAR _UnnamedText_4977c - db "@" - -Route16GateText3: ; 49781 (12:5781) - TX_FAR _UnnamedText_49781 - db "@" - -Route16GateText2: ; 49786 (12:5786) - TX_FAR _Route16GateText2 - db "@" - -Route16GateObject: ; 0x4978b (size=88) - db $a ; border tile - - db $9 ; warps - db $8, $0, $0, $ff - db $9, $0, $1, $ff - db $8, $7, $2, $ff - db $9, $7, $2, $ff - db $2, $0, $4, $ff - db $3, $0, $5, $ff - db $2, $7, $6, $ff - db $3, $7, $7, $ff - db $c, $6, $0, ROUTE_16_GATE_2F - - db $0 ; signs - - db $2 ; people - db SPRITE_GUARD, $5 + 4, $4 + 4, $ff, $d0, $1 ; person - db SPRITE_GAMBLER, $3 + 4, $4 + 4, $ff, $ff, $2 ; person - - ; warp-to - EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $8, $0 - EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $9, $0 - EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $8, $7 - EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $9, $7 - EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $2, $0 - EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $3, $0 - EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $2, $7 - EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $3, $7 - EVENT_DISP ROUTE_16_GATE_1F_WIDTH, $c, $6 ; ROUTE_16_GATE_2F +INCLUDE "data/mapObjects/route16gate.asm" Route16GateBlocks: ; 497e3 (12:57e3) INCBIN "maps/route16gate.blk" -Route16GateUpstairs_h: ; 0x497ff to 0x4980b (12 bytes) (id=187) - db GATE ; tileset - db ROUTE_16_GATE_2F_HEIGHT, ROUTE_16_GATE_2F_WIDTH ; dimensions (y, x) - dw Route16GateUpstairsBlocks, Route16GateUpstairsTextPointers, Route16GateUpstairsScript ; blocks, texts, scripts - db $00 ; connections - dw Route16GateUpstairsObject ; objects - -Route16GateUpstairsScript: ; 4980b (12:580b) - jp DisableAutoTextBoxDrawing - -Route16GateUpstairsTextPointers: ; 4980e (12:580e) - dw Route16GateUpstairsText1 - dw Route16GateUpstairsText2 - dw Route16GateUpstairsText3 - dw Route16GateUpstairsText4 - -Route16GateUpstairsText1: ; 49816 (12:5816) - db $08 ; asm - ld hl, UnnamedText_49820 - call PrintText - jp TextScriptEnd - -UnnamedText_49820: ; 49820 (12:5820) - TX_FAR _UnnamedText_49820 - db "@" - -Route16GateUpstairsText2: ; 49825 (12:5825) - db $08 ; asm - ld hl, UnnamedText_4982f - call PrintText - jp TextScriptEnd - -UnnamedText_4982f: ; 4982f (12:582f) - TX_FAR _UnnamedText_4982f - db "@" - -Route16GateUpstairsText3: ; 49834 (12:5834) - db $8 - ld hl, UnnamedText_4983b - jp Func_55c9 - -UnnamedText_4983b: ; 4983b (12:583b) - TX_FAR _UnnamedText_4983b - db "@" - -Route16GateUpstairsText4: ; 49840 (12:5840) - db $8 - ld hl, UnnamedText_49847 ; $5847 - jp Func_55c9 - -UnnamedText_49847: ; 49847 (12:5847) - TX_FAR _UnnamedText_49847 - db "@" - -Route16GateUpstairsObject: ; 0x4984c (size=30) - db $a ; border tile - - db $1 ; warps - db $7, $7, $8, ROUTE_16_GATE_1F - - db $2 ; signs - db $2, $1, $3 ; Route16GateUpstairsText3 - db $2, $6, $4 ; Route16GateUpstairsText4 - - db $2 ; people - db SPRITE_YOUNG_BOY, $2 + 4, $4 + 4, $ff, $ff, $1 ; person - db SPRITE_LITTLE_GIRL, $5 + 4, $2 + 4, $fe, $2, $2 ; person - - ; warp-to - EVENT_DISP ROUTE_16_GATE_2F_WIDTH, $7, $7 ; ROUTE_16_GATE_1F - -Route18Gate_h: ; 0x4986a to 0x49876 (12 bytes) (id=190) - db GATE ; tileset - db ROUTE_18_GATE_1F_HEIGHT, ROUTE_18_GATE_1F_WIDTH ; dimensions (y, x) - dw Route18GateBlocks, Route18GateTextPointers, Route18GateScript ; blocks, texts, scripts - db $00 ; connections - dw Route18GateObject ; objects - -Route18GateScript: ; 49876 (12:5876) - ld hl, $d732 - res 5, [hl] - call EnableAutoTextBoxDrawing - ld a, [W_ROUTE18GATECURSCRIPT] - ld hl, Route18GateScriptPointers - jp CallFunctionInTable - -Route18GateScriptPointers: ; 49887 (12:5887) - dw Route18GateScript0 - dw Route18GateScript1 - dw Route18GateScript2 - dw Route18GateScript3 - -Route18GateScript0: ; 4988f (12:588f) - call Func_49755 - ret nz - ld hl, CoordsData_498cc - call ArePlayerCoordsInArray - ret nc - ld a, $2 - ld [$ff8c], a - call DisplayTextID - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - ld a, [$cd3d] - cp $1 - jr z, .asm_498c6 ; 0x498a9 $1b - ld a, [$cd3d] - dec a - ld [$cd38], a - ld b, $0 - ld c, a - ld a, $40 - ld hl, $ccd3 - call FillMemory - call Func_3486 - ld a, $1 - ld [W_ROUTE18GATECURSCRIPT], a - ret -.asm_498c6 - ld a, $2 - ld [W_ROUTE18GATECURSCRIPT], a - ret - -CoordsData_498cc: ; 498cc (12:58cc) - db $03,$04 - db $04,$04 - db $05,$04 - db $06,$04 - db $FF +INCLUDE "data/mapHeaders/route16gateupstairs.asm" -Route18GateScript1: ; 498d5 (12:58d5) - ld a, [$cd38] - and a - ret nz - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a +INCLUDE "scripts/route16gateupstairs.asm" -Route18GateScript2: ; 498df (12:58df) - ld a, $1 - ld [H_SPRITEHEIGHT], a - call DisplayTextID - ld a, $1 - ld [$cd38], a - ld a, $10 - ld [$ccd3], a - call Func_3486 - ld a, $3 - ld [W_ROUTE18GATECURSCRIPT], a - ret - -Route18GateScript3: ; 498f9 (12:58f9) - ld a, [$cd38] - and a - ret nz - xor a - ld [wJoypadForbiddenButtonsMask], a - ld hl, $d730 - res 7, [hl] - ld a, $0 - ld [W_ROUTE18GATECURSCRIPT], a - ret - -Route18GateTextPointers: ; 4990d (12:590d) - dw Route18GateText1 - dw Route18GateText2 +INCLUDE "data/mapObjects/route16gateupstairs.asm" -Route18GateText1: ; 49911 (12:5911) - db $08 ; asm - call Func_49755 - jr z, .asm_3c84d ; 0x49915 - ld hl, UnnamedText_4992d - call PrintText - jr .asm_a8410 ; 0x4991d -.asm_3c84d ; 0x4991f - ld hl, UnnamedText_49928 - call PrintText -.asm_a8410 ; 0x49925 - jp TextScriptEnd +INCLUDE "data/mapHeaders/route18gate.asm" -UnnamedText_49928: ; 49928 (12:5928) - TX_FAR _UnnamedText_49928 - db "@" - -UnnamedText_4992d: ; 4992d (12:592d) - TX_FAR _UnnamedText_4992d - db "@" +INCLUDE "scripts/route18gate.asm" -Route18GateText2: ; 49932 (12:5932) - TX_FAR _UnnamedText_49932 - db "@" +INCLUDE "data/mapObjects/route18gate.asm" -Route18GateObject: ; 0x49937 (size=50) - db $a ; border tile +INCLUDE "data/mapHeaders/route18gateupstairs.asm" - db $5 ; warps - db $4, $0, $0, $ff - db $5, $0, $1, $ff - db $4, $7, $2, $ff - db $5, $7, $3, $ff - db $8, $6, $0, ROUTE_18_GATE_2F +INCLUDE "scripts/route18gateupstairs.asm" - db $0 ; signs +INCLUDE "data/mapObjects/route18gateupstairs.asm" - db $1 ; people - db SPRITE_GUARD, $1 + 4, $4 + 4, $ff, $d0, $1 ; person +INCLUDE "data/mapHeaders/mtmoon1.asm" - ; warp-to - EVENT_DISP ROUTE_18_GATE_1F_WIDTH, $4, $0 - EVENT_DISP ROUTE_18_GATE_1F_WIDTH, $5, $0 - EVENT_DISP ROUTE_18_GATE_1F_WIDTH, $4, $7 - EVENT_DISP ROUTE_18_GATE_1F_WIDTH, $5, $7 - EVENT_DISP ROUTE_18_GATE_1F_WIDTH, $8, $6 ; ROUTE_18_GATE_2F +INCLUDE "scripts/mtmoon1.asm" -Route18GateUpstairs_h: ; 0x49969 to 0x49975 (12 bytes) (id=191) - db GATE ; tileset - db ROUTE_18_GATE_2F_HEIGHT, ROUTE_18_GATE_2F_WIDTH ; dimensions (y, x) - dw Route18GateUpstairsBlocks, Route18GateUpstairsTextPointers, Route18GateUpstairsScript ; blocks, texts, scripts - db $00 ; connections - dw Route18GateUpstairsObject ; objects - -Route18GateUpstairsScript: ; 49975 (12:5975) - jp DisableAutoTextBoxDrawing - -Route18GateUpstairsTextPointers: ; 49978 (12:5978) - dw Route18GateUpstairsText1 - dw Route18GateUpstairsText2 - dw Route18GateUpstairsText3 - -Route18GateUpstairsText1: ; 4997e (12:597e) - db $08 ; asm - ld a, $5 - ld [wWhichTrade], a - ld a, $54 - call Predef - jp TextScriptEnd - -Route18GateUpstairsText2: ; 4998c (12:598c) - db $8 - ld hl, UnnamedText_49993 ; $5993 - jp Func_55c9 - -UnnamedText_49993: ; 49993 (12:5993) - TX_FAR _UnnamedText_49993 - db "@" - -Route18GateUpstairsText3: ; 49998 (12:5998) - db $8 - ld hl, UnnamedText_4999f ; $599f - jp Func_55c9 - -UnnamedText_4999f: ; 4999f (12:599f) - TX_FAR _UnnamedText_4999f - db "@" - -Route18GateUpstairsObject: ; 0x499a4 (size=24) - db $a ; border tile - - db $1 ; warps - db $7, $7, $4, ROUTE_18_GATE_1F - - db $2 ; signs - db $2, $1, $2 ; Route18GateUpstairsText2 - db $2, $6, $3 ; Route18GateUpstairsText3 - - db $1 ; people - db SPRITE_BUG_CATCHER, $2 + 4, $4 + 4, $fe, $2, $1 ; person - - ; warp-to - EVENT_DISP ROUTE_18_GATE_2F_WIDTH, $7, $7 ; ROUTE_18_GATE_1F - -MtMoon1_h: ; 0x499bc to 0x499c8 (12 bytes) (id=59) - db CAVERN ; tileset - db MT_MOON_1_HEIGHT, MT_MOON_1_WIDTH ; dimensions (y, x) - dw MtMoon1Blocks, MtMoon1TextPointers, MtMoon1Script ; blocks, texts, scripts - db $00 ; connections - dw MtMoon1Object ; objects - -MtMoon1Script: ; 499c8 (12:59c8) - call EnableAutoTextBoxDrawing - ld hl, MtMoon1TrainerHeader0 - ld de, MtMoon1ScriptPointers - ld a, [W_MTMOON1CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_MTMOON1CURSCRIPT], a - ret - -MtMoon1ScriptPointers: ; 499db (12:59db) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -MtMoon1TextPointers: ; 499e1 (12:59e1) - dw MtMoon1Text1 - dw MtMoon1Text2 - dw MtMoon1Text3 - dw MtMoon1Text4 - dw MtMoon1Text5 - dw MtMoon1Text6 - dw MtMoon1Text7 - dw Predef5CText - dw Predef5CText - dw Predef5CText - dw Predef5CText - dw Predef5CText - dw Predef5CText - dw MtMoon1Text14 - -MtMoon1TrainerHeaders: ; 499fd (12:59fd) -MtMoon1TrainerHeader0: ; 499fd (12:59fd) - db $1 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7f5 ; flag's byte - dw MtMoon1BattleText2 ; 0x5a98 TextBeforeBattle - dw MtMoon1AfterBattleText2 ; 0x5aa2 TextAfterBattle - dw MtMoon1EndBattleText2 ; 0x5a9d TextEndBattle - dw MtMoon1EndBattleText2 ; 0x5a9d TextEndBattle - -MtMoon1TrainerHeader2: ; 49a09 (12:5a09) - db $2 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7f5 ; flag's byte - dw MtMoon1BattleText3 ; 0x5aa7 TextBeforeBattle - dw MtMoon1AfterBattleText3 ; 0x5ab1 TextAfterBattle - dw MtMoon1EndBattleText3 ; 0x5aac TextEndBattle - dw MtMoon1EndBattleText3 ; 0x5aac TextEndBattle - -MtMoon1TrainerHeader3: ; 49a15 (12:5a15) - db $3 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7f5 ; flag's byte - dw MtMoon1BattleText4 ; 0x5ab6 TextBeforeBattle - dw MtMoon1AfterBattleText4 ; 0x5ac0 TextAfterBattle - dw MtMoon1EndBattleText4 ; 0x5abb TextEndBattle - dw MtMoon1EndBattleText4 ; 0x5abb TextEndBattle - -MtMoon1TrainerHeader4: ; 49a21 (12:5a21) - db $4 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7f5 ; flag's byte - dw MtMoon1BattleText5 ; 0x5ac5 TextBeforeBattle - dw MtMoon1AfterBattleText5 ; 0x5acf TextAfterBattle - dw MtMoon1EndBattleText5 ; 0x5aca TextEndBattle - dw MtMoon1EndBattleText5 ; 0x5aca TextEndBattle - -MtMoon1TrainerHeader5: ; 49a2d (12:5a2d) - db $5 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7f5 ; flag's byte - dw MtMoon1BattleText6 ; 0x5ad4 TextBeforeBattle - dw MtMoon1AfterBattleText6 ; 0x5ade TextAfterBattle - dw MtMoon1EndBattleText6 ; 0x5ad9 TextEndBattle - dw MtMoon1EndBattleText6 ; 0x5ad9 TextEndBattle - -MtMoon1TrainerHeader6: ; 49a39 (12:5a39) - db $6 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7f5 ; flag's byte - dw MtMoon1BattleText7 ; 0x5ae3 TextBeforeBattle - dw MtMoon1AfterBattleText7 ; 0x5aed TextAfterBattle - dw MtMoon1EndBattleText7 ; 0x5ae8 TextEndBattle - dw MtMoon1EndBattleText7 ; 0x5ae8 TextEndBattle - -MtMoon1TrainerHeader7: ; 49a45 (12:5a45) - db $7 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7f5 ; flag's byte - dw MtMoon1BattleText8 ; 0x5af2 TextBeforeBattle - dw MtMoon1AfterBattleText8 ; 0x5afc TextAfterBattle - dw MtMoon1EndBattleText8 ; 0x5af7 TextEndBattle - dw MtMoon1EndBattleText8 ; 0x5af7 TextEndBattle - - db $ff - -MtMoon1Text1: ; 49a52 (12:5a52) - db $08 ; asm - ld hl, MtMoon1TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -MtMoon1Text2: ; 49a5c (12:5a5c) - db $08 ; asm - ld hl, MtMoon1TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -MtMoon1Text3: ; 49a66 (12:5a66) - db $08 ; asm - ld hl, MtMoon1TrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -MtMoon1Text4: ; 49a70 (12:5a70) - db $08 ; asm - ld hl, MtMoon1TrainerHeader4 - call TalkToTrainer - jp TextScriptEnd - -MtMoon1Text5: ; 49a7a (12:5a7a) - db $08 ; asm - ld hl, MtMoon1TrainerHeader5 - call TalkToTrainer - jp TextScriptEnd - -MtMoon1Text6: ; 49a84 (12:5a84) - db $08 ; asm - ld hl, MtMoon1TrainerHeader6 - call TalkToTrainer - jp TextScriptEnd - -MtMoon1Text7: ; 49a8e (12:5a8e) - db $08 ; asm - ld hl, MtMoon1TrainerHeader7 - call TalkToTrainer - jp TextScriptEnd - -MtMoon1BattleText2: ; 49a98 (12:5a98) - TX_FAR _MtMoon1BattleText2 - db "@" - -MtMoon1EndBattleText2: ; 49a9d (12:5a9d) - TX_FAR _MtMoon1EndBattleText2 - db "@" - -MtMoon1AfterBattleText2: ; 49aa2 (12:5aa2) - TX_FAR _MtMoon1AfterBattleText2 - db "@" - -MtMoon1BattleText3: ; 49aa7 (12:5aa7) - TX_FAR _MtMoon1BattleText3 - db "@" - -MtMoon1EndBattleText3: ; 49aac (12:5aac) - TX_FAR _MtMoon1EndBattleText3 - db "@" - -MtMoon1AfterBattleText3: ; 49ab1 (12:5ab1) - TX_FAR _MtMoon1AfterBattleText3 - db "@" - -MtMoon1BattleText4: ; 49ab6 (12:5ab6) - TX_FAR _MtMoon1BattleText4 - db "@" - -MtMoon1EndBattleText4: ; 49abb (12:5abb) - TX_FAR _MtMoon1EndBattleText4 - db "@" - -MtMoon1AfterBattleText4: ; 49ac0 (12:5ac0) - TX_FAR _MtMoon1AfterBattleText4 - db "@" - -MtMoon1BattleText5: ; 49ac5 (12:5ac5) - TX_FAR _MtMoon1BattleText5 - db "@" - -MtMoon1EndBattleText5: ; 49aca (12:5aca) - TX_FAR _MtMoon1EndBattleText5 - db "@" - -MtMoon1AfterBattleText5: ; 49acf (12:5acf) - TX_FAR _MtMoon1AfterBattleText5 - db "@" - -MtMoon1BattleText6: ; 49ad4 (12:5ad4) - TX_FAR _MtMoon1BattleText6 - db "@" - -MtMoon1EndBattleText6: ; 49ad9 (12:5ad9) - TX_FAR _MtMoon1EndBattleText6 - db "@" - -MtMoon1AfterBattleText6: ; 49ade (12:5ade) - TX_FAR _MtMoon1AfterBattleText6 - db "@" - -MtMoon1BattleText7: ; 49ae3 (12:5ae3) - TX_FAR _MtMoon1BattleText7 - db "@" - -MtMoon1EndBattleText7: ; 49ae8 (12:5ae8) - TX_FAR _MtMoon1EndBattleText7 - db "@" - -MtMoon1AfterBattleText7: ; 49aed (12:5aed) - TX_FAR _MtMoon1AfterBattleText7 - db "@" - -MtMoon1BattleText8: ; 49af2 (12:5af2) - TX_FAR _MtMoon1BattleText8 - db "@" - -MtMoon1EndBattleText8: ; 49af7 (12:5af7) - TX_FAR _MtMoon1EndBattleText8 - db "@" - -MtMoon1AfterBattleText8: ; 49afc (12:5afc) - TX_FAR _MtMoon1AfterBattleText8 - db "@" - -MtMoon1Text14: ; 49b01 (12:5b01) - TX_FAR _MtMoon1Text14 - db "@" - -MtMoon1Object: ; 0x49b06 (size=145) - db $3 ; border tile - - db $5 ; warps - db $23, $e, $1, $ff - db $23, $f, $1, $ff - db $5, $5, $0, MT_MOON_2 - db $b, $11, $2, MT_MOON_2 - db $f, $19, $3, MT_MOON_2 - - db $1 ; signs - db $17, $f, $e ; MtMoon1Text14 - - db $d ; people - db SPRITE_HIKER, $6 + 4, $5 + 4, $ff, $d0, $41, HIKER + $C8, $1 ; trainer - db SPRITE_BUG_CATCHER, $10 + 4, $c + 4, $ff, $d3, $42, YOUNGSTER + $C8, $3 ; trainer - db SPRITE_LASS, $4 + 4, $1e + 4, $ff, $d0, $43, LASS + $C8, $5 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $1f + 4, $18 + 4, $ff, $d1, $44, SUPER_NERD + $C8, $1 ; trainer - db SPRITE_LASS, $17 + 4, $10 + 4, $ff, $d0, $45, LASS + $C8, $6 ; trainer - db SPRITE_BUG_CATCHER, $16 + 4, $7 + 4, $ff, $d0, $46, BUG_CATCHER + $C8, $7 ; trainer - db SPRITE_BUG_CATCHER, $1b + 4, $1e + 4, $ff, $d3, $47, BUG_CATCHER + $C8, $8 ; trainer - db SPRITE_BALL, $14 + 4, $2 + 4, $ff, $ff, $88, POTION ; item - db SPRITE_BALL, $2 + 4, $2 + 4, $ff, $ff, $89, MOON_STONE ; item - db SPRITE_BALL, $1f + 4, $23 + 4, $ff, $ff, $8a, RARE_CANDY ; item - db SPRITE_BALL, $17 + 4, $24 + 4, $ff, $ff, $8b, ESCAPE_ROPE ; item - db SPRITE_BALL, $21 + 4, $14 + 4, $ff, $ff, $8c, POTION ; item - db SPRITE_BALL, $20 + 4, $5 + 4, $ff, $ff, $8d, TM_12 ; item - - ; warp-to - EVENT_DISP MT_MOON_1_WIDTH, $23, $e - EVENT_DISP MT_MOON_1_WIDTH, $23, $f - EVENT_DISP MT_MOON_1_WIDTH, $5, $5 ; MT_MOON_2 - EVENT_DISP MT_MOON_1_WIDTH, $b, $11 ; MT_MOON_2 - EVENT_DISP MT_MOON_1_WIDTH, $f, $19 ; MT_MOON_2 +INCLUDE "data/mapObjects/mtmoon1.asm" MtMoon1Blocks: ; 49b97 (12:5b97) INCBIN "maps/mtmoon1.blk" -MtMoon3_h: ; 0x49cff to 0x49d0b (12 bytes) (id=61) - db CAVERN ; tileset - db MT_MOON_3_HEIGHT, MT_MOON_3_WIDTH ; dimensions (y, x) - dw MtMoon3Blocks, MtMoon3TextPointers, MtMoon3Script ; blocks, texts, scripts - db $00 ; connections - dw MtMoon3Object ; objects - -MtMoon3Script: ; 49d0b (12:5d0b) - call EnableAutoTextBoxDrawing - ld hl, MtMoon3TrainerHeader0 ; $5e48 - ld de, MtMoon3ScriptPointers - ld a, [W_MTMOON3CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_MTMOON3CURSCRIPT], a - ld a, [$d7f6] - bit 1, a - ret z - ld hl, CoordsData_49d37 - call ArePlayerCoordsInArray - jr nc, .asm_49d31 ; 0x49d29 $6 - ld hl, $d72e - set 4, [hl] - ret -.asm_49d31 - ld hl, $d72e - res 4, [hl] - ret - -CoordsData_49d37: ; 49d37 (12:5d37) - db $05,$0B - db $05,$0C - db $05,$0D - db $05,$0E - db $06,$0B - db $06,$0C - db $06,$0D - db $06,$0E - db $07,$0B - db $07,$0C - db $07,$0D - db $07,$0E - db $08,$0B - db $08,$0C - db $08,$0D - db $08,$0E - db $FF - -Func_49d58: ; 49d58 (12:5d58) - xor a - ld [wJoypadForbiddenButtonsMask], a - ld [W_MTMOON3CURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -MtMoon3ScriptPointers: ; 49d63 (12:5d63) - dw MtMoon3Script0 - dw Func_324c - dw EndTrainerBattle - dw MtMoon3Script3 - dw MtMoon3Script4 - dw MtMoon3Script5 - -MtMoon3Script0: ; 49d6f (12:5d6f) - ld a, [$d7f6] - bit 1, a - jp nz, Func_49d91 - ld a, [W_YCOORD] ; $d361 - cp $8 - jp nz, Func_49d91 - ld a, [W_XCOORD] ; $d362 - cp $d - jp nz, Func_49d91 - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - ld a, $1 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - jp DisplayTextID - -Func_49d91: ; 49d91 (12:5d91) - ld a, [$d7f6] - and $c0 - jp z, CheckFightingMapTrainers - ret - -MtMoon3Script3: ; 49d9a (12:5d9a) - ld a, [W_ISINBATTLE] ; $d057 - cp $ff - jp z, Func_49d58 - call UpdateSprites - call Delay3 - ld hl, $d7f6 - set 1, [hl] - xor a - ld [wJoypadForbiddenButtonsMask], a - ld a, $0 - ld [W_MTMOON3CURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -MtMoon3Script4: ; 49dba (12:5dba) - ld a, $1 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call SetSpriteMovementBytesToFF - ld hl, CoordsData_49dea - call ArePlayerCoordsInArray - jr c, .asm_49dd7 - ld hl, CoordsData_49df1 - call ArePlayerCoordsInArray - jp nc, CheckFightingMapTrainers - ld de, MovementData_49df9 - jr .asm_49dda -.asm_49dd7 - ld de, MovementData_49df8 -.asm_49dda - ld a, $1 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call MoveSprite - ld a, $5 - ld [W_MTMOON3CURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -CoordsData_49dea: ; 49dea (12:5dea) - db $07,$0C - db $06,$0B - db $05,$0C - db $FF - -CoordsData_49df1: ; 49df1 (12:5df1) - db $07,$0D - db $06,$0E - db $05,$0E - db $FF - -MovementData_49df8: ; 49df8 (12:5df8) - db $C0 - -MovementData_49df9: ; 49df9 (12:5df9) - db $40,$FF - -MtMoon3Script5: ; 49dfb (12:5dfb) - ld a, [$d730] - bit 0, a - ret nz - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - ld a, $1 - ld [$cc3c], a - ld a, $a - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - ld a, [$d7f6] - bit 6, a - jr z, .asm_49e1d - ld a, $6e - jr .asm_49e1f -.asm_49e1d - ld a, $6d -.asm_49e1f - ld [$cc4d], a - ld a, $11 - call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7)) - xor a - ld [wJoypadForbiddenButtonsMask], a - ld a, $0 - ld [W_MTMOON3CURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -MtMoon3TextPointers: ; 49e34 (12:5e34) - dw MtMoon3Text1 - dw MtMoon3Text2 - dw MtMoon3Text3 - dw MtMoon3Text4 - dw MtMoon3Text5 - dw MtMoon3Text6 - dw MtMoon3Text7 - dw Predef5CText - dw Predef5CText - dw UnnamedText_49f99 - -MtMoon3TrainerHeaders: ; 49e48 (12:5e48) -MtMoon3TrainerHeader0: ; 49e48 (12:5e48) - db $2 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7f6 ; flag's byte - dw MtMoon3BattleText2 ; 0x5f9f TextBeforeBattle - dw MtMoon3AfterBattleText2 ; 0x5fa9 TextAfterBattle - dw MtMoon3EndBattleText2 ; 0x5fa4 TextEndBattle - dw MtMoon3EndBattleText2 ; 0x5fa4 TextEndBattle - -MtMoon3TrainerHeader2: ; 49e54 (12:5e54) - db $3 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7f6 ; flag's byte - dw MtMoon3BattleText3 ; 0x5fae TextBeforeBattle - dw MtMoon3AfterBattleText3 ; 0x5fb8 TextAfterBattle - dw MtMoon3EndBattleText3 ; 0x5fb3 TextEndBattle - dw MtMoon3EndBattleText3 ; 0x5fb3 TextEndBattle - -MtMoon3TrainerHeader3: ; 49e60 (12:5e60) - db $4 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7f6 ; flag's byte - dw MtMoon3BattleText4 ; 0x5fbd TextBeforeBattle - dw MtMoon3AfterBattleText4 ; 0x5fc7 TextAfterBattle - dw MtMoon3EndBattleText4 ; 0x5fc2 TextEndBattle - dw MtMoon3EndBattleText4 ; 0x5fc2 TextEndBattle - -MtMoon3TrainerHeader4: ; 49e6c (12:5e6c) - db $5 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7f6 ; flag's byte - dw MtMoon3BattleText5 ; 0x5fcc TextBeforeBattle - dw MtMoon3AfterBattleText5 ; 0x5fd6 TextAfterBattle - dw MtMoon3EndBattleText5 ; 0x5fd1 TextEndBattle - dw MtMoon3EndBattleText5 ; 0x5fd1 TextEndBattle - - db $ff - -MtMoon3Text1: ; 49e79 (12:5e79) - db $08 ; asm - ld a, [$d7f6] - bit 1, a - jr z, .asm_be1e0 ; 0x49e7f - and $c0 - jr nz, .asm_f8cd4 ; 0x49e83 - ld hl, UnnamedText_49f8f - call PrintText - jr .asm_f1fba ; 0x49e8b -.asm_be1e0 ; 0x49e8d - ld hl, UnnamedText_49f85 - call PrintText - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, UnnamedText_49f8a - ld de, UnnamedText_49f8a - call PreBattleSaveRegisters - ldh a, [$8c] - ld [$cf13], a - call EngageMapTrainer - call InitBattleEnemyParameters - ld a, $3 - ld [W_MTMOON3CURSCRIPT], a - ld [W_CURMAPSCRIPT], a - jr .asm_f1fba ; 0x49eb6 -.asm_f8cd4 ; 0x49eb8 - ld hl, UnnamedText_49f94 - call PrintText -.asm_f1fba ; 0x49ebe - jp TextScriptEnd - -MtMoon3Text2: ; 49ec1 (12:5ec1) - db $08 ; asm - ld hl, MtMoon3TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -MtMoon3Text3: ; 49ecb (12:5ecb) - db $08 ; asm - ld hl, MtMoon3TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -MtMoon3Text4: ; 49ed5 (12:5ed5) - db $08 ; asm - ld hl, MtMoon3TrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -MtMoon3Text5: ; 49edf (12:5edf) - db $08 ; asm - ld hl, MtMoon3TrainerHeader4 ; $5e6c - call TalkToTrainer - jp TextScriptEnd - -MtMoon3Text6: ; 49ee9 (12:5ee9) - db $08 ; asm - ld a, $1 - ld [$cc3c], a - ld hl, UnnamedText_49f24 - call PrintText - call YesNoChoice - ld a, [$cc26] - and a - jr nz, .asm_1fa5e ; 0x49efc - ld bc,(DOME_FOSSIL << 8) | 1 - call GiveItem - jp nc, Func_49f76 - call Func_49f69 - ld a, $6d - ld [$cc4d], a - ld a, $11 - call Predef - ld hl, $d7f6 - set 6, [hl] - ld a, $4 - ld [W_MTMOON3CURSCRIPT], a - ld [W_CURMAPSCRIPT], a -.asm_1fa5e ; 0x49f21 - jp TextScriptEnd - -UnnamedText_49f24: ; 49f24 (12:5f24) - TX_FAR _UnnamedText_49f24 - db "@" - -MtMoon3Text7: ; 49f29 (12:5f29) - db $08 ; asm - ld a, $1 - ld [$cc3c], a - ld hl, UnnamedText_49f64 - call PrintText - call YesNoChoice - ld a, [$cc26] - and a - jr nz, .asm_8e988 ; 0x49f3c - ld bc, (HELIX_FOSSIL << 8) | 1 - call GiveItem - jp nc, Func_49f76 - call Func_49f69 - ld a, $6e - ld [$cc4d], a - ld a, $11 - call Predef - ld hl, $d7f6 - set 7, [hl] - ld a, $4 - ld [W_MTMOON3CURSCRIPT], a - ld [W_CURMAPSCRIPT], a -.asm_8e988 ; 0x49f61 - jp TextScriptEnd - -UnnamedText_49f64: ; 49f64 (12:5f64) - TX_FAR _UnnamedText_49f64 - db "@" - -Func_49f69: ; 49f69 (12:5f69) - ld hl, UnnamedText_49f6f - jp PrintText - -UnnamedText_49f6f: ; 49f6f (12:5f6f) - TX_FAR _UnnamedText_49f6f ; 0x80995 - db $11, $d, "@" - -Func_49f76: ; 49f76 (12:5f76) - ld hl, UnnamedText_49f7f - call PrintText - jp TextScriptEnd - -UnnamedText_49f7f: ; 49f7f (12:5f7f) - TX_FAR _UnnamedText_49f7f ; 0x809a8 - db $d, "@" - -UnnamedText_49f85: ; 49f85 (12:5f85) - TX_FAR _UnnamedText_49f85 - db "@" - -UnnamedText_49f8a: ; 49f8a (12:5f8a) - TX_FAR _UnnamedText_49f8a - db "@" - -UnnamedText_49f8f: ; 49f8f (12:5f8f) - TX_FAR _UnnamedText_49f8f - db "@" - -UnnamedText_49f94: ; 49f94 (12:5f94) - TX_FAR _UnnamedText_49f94 - db "@" - -UnnamedText_49f99: ; 49f99 (12:5f99) - TX_FAR _UnnamedText_49f99 - db $11, "@" - -MtMoon3BattleText2: ; 49f9f (12:5f9f) - TX_FAR _MtMoon3BattleText2 - db "@" - -MtMoon3EndBattleText2: ; 49fa4 (12:5fa4) - TX_FAR _MtMoon3EndBattleText2 - db "@" - -MtMoon3AfterBattleText2: ; 49fa9 (12:5fa9) - TX_FAR _MtMoon3AfterBattleText2 - db "@" +INCLUDE "data/mapHeaders/mtmoon3.asm" -MtMoon3BattleText3: ; 49fae (12:5fae) - TX_FAR _MtMoon3BattleText3 - db "@" +INCLUDE "scripts/mtmoon3.asm" -MtMoon3EndBattleText3: ; 49fb3 (12:5fb3) - TX_FAR _MtMoon3EndBattleText3 - db "@" - -MtMoon3AfterBattleText3: ; 49fb8 (12:5fb8) - TX_FAR _MtMoon3AfterBattleText3 - db "@" - -MtMoon3BattleText4: ; 49fbd (12:5fbd) - TX_FAR _MtMoon3BattleText4 - db "@" - -MtMoon3EndBattleText4: ; 49fc2 (12:5fc2) - TX_FAR _MtMoon3EndBattleText4 - db "@" - -MtMoon3AfterBattleText4: ; 49fc7 (12:5fc7) - TX_FAR _MtMoon3AfterBattleText4 - db "@" - -MtMoon3BattleText5: ; 49fcc (12:5fcc) - TX_FAR _MtMoon3BattleText5 - db "@" - -MtMoon3EndBattleText5: ; 49fd1 (12:5fd1) - TX_FAR _MtMoon3EndBattleText5 - db "@" - -MtMoon3AfterBattleText5: ; 49fd6 (12:5fd6) - TX_FAR _MtMoon3AfterBattleText5 - db "@" - -MtMoon3Object: ; 0x49fdb (size=102) - db $3 ; border tile - - db $4 ; warps - db $9, $19, $1, MT_MOON_2 - db $11, $15, $4, MT_MOON_2 - db $1b, $f, $5, MT_MOON_2 - db $7, $5, $6, MT_MOON_2 - - db $0 ; signs - - db $9 ; people - db SPRITE_BLACK_HAIR_BOY_2, $8 + 4, $c + 4, $ff, $d3, $41, SUPER_NERD + $C8, $2 ; trainer - db SPRITE_ROCKET, $10 + 4, $b + 4, $ff, $d0, $42, ROCKET + $C8, $1 ; trainer - db SPRITE_ROCKET, $16 + 4, $f + 4, $ff, $d0, $43, ROCKET + $C8, $2 ; trainer - db SPRITE_ROCKET, $b + 4, $1d + 4, $ff, $d1, $44, ROCKET + $C8, $3 ; trainer - db SPRITE_ROCKET, $11 + 4, $1d + 4, $ff, $d2, $45, ROCKET + $C8, $4 ; trainer - db SPRITE_OMANYTE, $6 + 4, $c + 4, $ff, $ff, $6 ; person - db SPRITE_OMANYTE, $6 + 4, $d + 4, $ff, $ff, $7 ; person - db SPRITE_BALL, $15 + 4, $19 + 4, $ff, $ff, $88, HP_UP ; item - db SPRITE_BALL, $5 + 4, $1d + 4, $ff, $ff, $89, TM_01 ; item - - ; warp-to - EVENT_DISP MT_MOON_3_WIDTH, $9, $19 ; MT_MOON_2 - EVENT_DISP MT_MOON_3_WIDTH, $11, $15 ; MT_MOON_2 - EVENT_DISP MT_MOON_3_WIDTH, $1b, $f ; MT_MOON_2 - EVENT_DISP MT_MOON_3_WIDTH, $7, $5 ; MT_MOON_2 +INCLUDE "data/mapObjects/mtmoon3.asm" MtMoon3Blocks: ; 4a041 (12:6041) INCBIN "maps/mtmoon3.blk" -SafariZoneWest_h: ; 0x4a1a9 to 0x4a1b5 (12 bytes) (id=219) - db FOREST ; tileset - db SAFARI_ZONE_WEST_HEIGHT, SAFARI_ZONE_WEST_WIDTH ; dimensions (y, x) - dw SafariZoneWestBlocks, SafariZoneWestTextPointers, SafariZoneWestScript ; blocks, texts, scripts - db $00 ; connections - dw SafariZoneWestObject ; objects - -SafariZoneWestScript: ; 4a1b5 (12:61b5) - jp EnableAutoTextBoxDrawing - -SafariZoneWestTextPointers: ; 4a1b8 (12:61b8) - dw Predef5CText - dw Predef5CText - dw Predef5CText - dw Predef5CText - dw SafariZoneWestText5 - dw SafariZoneWestText6 - dw SafariZoneWestText7 - dw SafariZoneWestText8 - -SafariZoneWestText5: ; 4a1c8 (12:61c8) - TX_FAR _SafariZoneWestText5 - db "@" - -SafariZoneWestText6: ; 4a1cd (12:61cd) - TX_FAR _SafariZoneWestText6 - db "@" - -SafariZoneWestText7: ; 4a1d2 (12:61d2) - TX_FAR _SafariZoneWestText7 - db "@" +INCLUDE "data/mapHeaders/safarizonewest.asm" -SafariZoneWestText8: ; 4a1d7 (12:61d7) - TX_FAR _SafariZoneWestText8 - db "@" +INCLUDE "scripts/safarizonewest.asm" -SafariZoneWestObject: ; 0x4a1dc (size=108) - db $0 ; border tile - - db $8 ; warps - db $0, $14, $0, SAFARI_ZONE_NORTH - db $0, $15, $1, SAFARI_ZONE_NORTH - db $0, $1a, $2, SAFARI_ZONE_NORTH - db $0, $1b, $3, SAFARI_ZONE_NORTH - db $16, $1d, $2, SAFARI_ZONE_CENTER - db $17, $1d, $3, SAFARI_ZONE_CENTER - db $3, $3, $0, SAFARI_ZONE_SECRET_HOUSE - db $b, $b, $0, SAFARI_ZONE_REST_HOUSE_2 - - db $4 ; signs - db $c, $c, $5 ; SafariZoneWestText5 - db $3, $11, $6 ; SafariZoneWestText6 - db $4, $1a, $7 ; SafariZoneWestText7 - db $16, $18, $8 ; SafariZoneWestText8 - - db $4 ; people - db SPRITE_BALL, $14 + 4, $8 + 4, $ff, $ff, $81, MAX_POTION ; item - db SPRITE_BALL, $7 + 4, $9 + 4, $ff, $ff, $82, TM_32 ; item - db SPRITE_BALL, $12 + 4, $12 + 4, $ff, $ff, $83, MAX_REVIVE ; item - db SPRITE_BALL, $7 + 4, $13 + 4, $ff, $ff, $84, GOLD_TEETH ; item - - ; warp-to - EVENT_DISP SAFARI_ZONE_WEST_WIDTH, $0, $14 ; SAFARI_ZONE_NORTH - EVENT_DISP SAFARI_ZONE_WEST_WIDTH, $0, $15 ; SAFARI_ZONE_NORTH - EVENT_DISP SAFARI_ZONE_WEST_WIDTH, $0, $1a ; SAFARI_ZONE_NORTH - EVENT_DISP SAFARI_ZONE_WEST_WIDTH, $0, $1b ; SAFARI_ZONE_NORTH - EVENT_DISP SAFARI_ZONE_WEST_WIDTH, $16, $1d ; SAFARI_ZONE_CENTER - EVENT_DISP SAFARI_ZONE_WEST_WIDTH, $17, $1d ; SAFARI_ZONE_CENTER - EVENT_DISP SAFARI_ZONE_WEST_WIDTH, $3, $3 ; SAFARI_ZONE_SECRET_HOUSE - EVENT_DISP SAFARI_ZONE_WEST_WIDTH, $b, $b ; SAFARI_ZONE_REST_HOUSE_2 +INCLUDE "data/mapObjects/safarizonewest.asm" SafariZoneWestBlocks: ; 4a248 (12:6248) INCBIN "maps/safarizonewest.blk" -SafariZoneSecretHouse_h: ; 0x4a30b to 0x4a317 (12 bytes) (id=222) - db LAB ; tileset - db SAFARI_ZONE_SECRET_HOUSE_HEIGHT, SAFARI_ZONE_SECRET_HOUSE_WIDTH ; dimensions (y, x) - dw SafariZoneSecretHouseBlocks, SafariZoneSecretHouseTextPointers, SafariZoneSecretHouseScript ; blocks, texts, scripts - db $00 ; connections - dw SafariZoneSecretHouseObject ; objects +INCLUDE "data/mapHeaders/safarizonesecrethouse.asm" -SafariZoneSecretHouseScript: ; 4a317 (12:6317) - jp EnableAutoTextBoxDrawing +INCLUDE "scripts/safarizonesecrethouse.asm" -SafariZoneSecretHouseTextPointers: ; 4a31a (12:631a) - dw SafariZoneSecretHouseText1 - -SafariZoneSecretHouseText1: ; 4a31c (12:631c) - db $08 ; asm - ld a, [$d857] - bit 0, a - jr nz, .asm_20a9b ; 0x4a322 - ld hl, UnnamedText_4a350 - call PrintText - ld bc, (HM_03 << 8) | 1 - call GiveItem - jr nc, .BagFull - ld hl, ReceivedHM03Text - call PrintText - ld hl, $d857 - set 0, [hl] - jr .asm_8f1fc ; 0x4a33d -.BagFull - ld hl, HM03NoRoomText - call PrintText - jr .asm_8f1fc ; 0x4a345 -.asm_20a9b ; 0x4a347 - ld hl, HM03ExplanationText - call PrintText -.asm_8f1fc ; 0x4a34d - jp TextScriptEnd - -UnnamedText_4a350: ; 4a350 (12:6350) - TX_FAR _UnnamedText_4a350 - db "@" - -ReceivedHM03Text: ; 4a355 (12:6355) - TX_FAR _ReceivedHM03Text ; 0x85943 - db $0B, "@" - -HM03ExplanationText: ; 4a35b (12:635b) - TX_FAR _HM03ExplanationText - db "@" - -HM03NoRoomText: ; 4a360 (12:6360) - TX_FAR _HM03NoRoomText - db "@" - -SafariZoneSecretHouseObject: ; 0x4a365 (size=26) - db $17 ; border tile - - db $2 ; warps - db $7, $2, $6, SAFARI_ZONE_WEST - db $7, $3, $6, SAFARI_ZONE_WEST - - db $0 ; signs - - db $1 ; people - db SPRITE_FISHER, $3 + 4, $3 + 4, $ff, $d0, $1 ; person - - ; warp-to - EVENT_DISP SAFARI_ZONE_SECRET_HOUSE_WIDTH, $7, $2 ; SAFARI_ZONE_WEST - EVENT_DISP SAFARI_ZONE_SECRET_HOUSE_WIDTH, $7, $3 ; SAFARI_ZONE_WEST +INCLUDE "data/mapObjects/safarizonesecrethouse.asm" SafariZoneSecretHouseBlocks: ; 4a37f (12:637f) INCBIN "maps/safarizonesecrethouse.blk" @@ -77317,96 +45191,25 @@ AgathaPic: ; 4fa71 (13:7a71) LancePic: ; 4fba2 (13:7ba2) INCBIN "pic/trainer/lance.pic" -BattleCenterM_h: ; 0x4fd04 to 0x4fd10 (12 bytes) (id=239) - db CLUB ; tileset - db BATTLE_CENTER_HEIGHT, BATTLE_CENTER_WIDTH ; dimensions (y, x) - dw BattleCenterMBlocks, BattleCenterMTextPointers, BattleCenterMScript ; blocks, texts, scripts - db $00 ; connections - dw BattleCenterMObject ; objects +INCLUDE "data/mapHeaders/battlecenterm.asm" -BattleCenterMScript: ; 4fd10 (13:7d10) - call EnableAutoTextBoxDrawing - ld a, [$ffaa] - cp $2 - ld a, $8 - jr z, .asm_4fd1d ; 0x4fd19 $2 - ld a, $c -.asm_4fd1d - ld [$ff8d], a - ld a, $1 - ld [$ff8c], a - call Func_34ae - ld hl, $d72d - bit 0, [hl] - set 0, [hl] - ret nz - ld hl, $c214 - ld a, $8 - ld [hli], a - ld a, $a - ld [hl], a - ld a, $8 - ld [$c119], a - ld a, [$ffaa] - cp $2 - ret z - ld a, $7 - ld [$c215], a - ld a, $c - ld [$c119], a - ret +INCLUDE "scripts/battlecenterm.asm" -BattleCenterMTextPointers: ; 4fd4c (13:7d4c) - dw BattleCenterMText1 - -BattleCenterMText1: ; 4fd4e (13:7d4e) - TX_FAR _BattleCenterMText1 - db "@" - -BattleCenterMObject: ; 0x4fd53 (size=10) - db $e ; border tile - - db $0 ; warps - - db $0 ; signs - - db $1 ; people - db SPRITE_RED, $2 + 4, $2 + 4, $ff, $0, $1 ; person +INCLUDE "data/mapObjects/battlecenterm.asm" BattleCenterMBlocks: ; 4fd5d (13:7d5d) INCBIN "maps/battlecenterm.blk" -TradeCenterM_h: ; 0x4fd71 to 0x4fd7d (12 bytes) (id=240) - db CLUB ; tileset - db TRADE_CENTER_HEIGHT, TRADE_CENTER_WIDTH ; dimensions (y, x) - dw TradeCenterMBlocks, TradeCenterMTextPointers, TradeCenterMScript ; blocks, texts, scripts - db $00 ; connections - dw TradeCenterMObject ; objects +INCLUDE "data/mapHeaders/tradecenterm.asm" -TradeCenterMScript: ; 4fd7d (13:7d7d) - jp BattleCenterMScript - -TradeCenterMTextPointers: ; 4fd80 (13:7d80) - dw TradeCenterMText1 - -TradeCenterMText1: ; 4fd82 (13:7d82) - TX_FAR _TradeCenterMText1 - db "@" +INCLUDE "scripts/tradecenterm.asm" -TradeCenterMObject: ; 0x4fd87 (size=10) - db $e ; border tile - - db $0 ; warps - - db $0 ; signs - - db $1 ; people - db SPRITE_RED, $2 + 4, $2 + 4, $ff, $0, $1 ; person +INCLUDE "data/mapObjects/tradecenterm.asm" TradeCenterMBlocks: ; 4fd91 (13:7d91) INCBIN "maps/tradecenterm.blk" -Func_4fda5: ; 4fda5 (13:7da5) +_GivePokemon: ; 4fda5 (13:7da5) call EnableAutoTextBoxDrawing xor a ld [$ccd3], a @@ -77438,12 +45241,12 @@ Func_4fda5: ; 4fda5 (13:7da5) .asm_4fdee ld [hli], a ld [hl], $50 - ld hl, UnnamedText_4fe3f ; $7e3f + ld hl, SetToBoxText call PrintText scf ret .asm_4fdf9 - ld hl, UnnamedText_4fe44 ; $7e44 + ld hl, BoxIsFullText call PrintText and a ret @@ -77472,20 +45275,20 @@ Func_4fe11: ; 4fe11 (13:7e11) pop af ld [$d11e], a call GetMonName - ld hl, UnnamedText_4fe39 ; $7e39 + ld hl, GotMonText jp PrintText -UnnamedText_4fe39: ; 4fe39 (13:7e39) - TX_FAR _UnnamedText_4fe39 +GotMonText: ; 4fe39 (13:7e39) + TX_FAR _GotMonText db $0b db "@" -UnnamedText_4fe3f: ; 4fe3f (13:7e3f) - TX_FAR _UnnamedText_4fe3f +SetToBoxText: ; 4fe3f (13:7e3f) + TX_FAR _SetToBoxText db "@" -UnnamedText_4fe44: ; 4fe44 (13:7e44) - TX_FAR _UnnamedText_4fe44 +BoxIsFullText: ; 4fe44 (13:7e44) + TX_FAR _BoxIsFullText db "@" GetPredefPointer: ; 4fe49 (13:7e49) @@ -77567,7 +45370,7 @@ MoveAnimationPredef: ; 4fe91 (13:7e91) dbw BANK(Func_f71e),Func_f71e dbw BANK(Func_f71e),Func_f71e db BANK(InitializePlayerData) - dw InitializePlayerData + dw InitializePlayerData dbw BANK(HandleBitArray),HandleBitArray db BANK(RemoveMissableObject) dw RemoveMissableObject @@ -77582,7 +45385,7 @@ MoveAnimationPredef: ; 4fe91 (13:7e91) dw AddMissableObject dbw BANK(Func_ee9e),Func_ee9e db BANK(InitializePlayerData) - dw InitializePlayerData + dw InitializePlayerData dbw BANK(Func_c754),Func_c754 dbw BANK(Func_3af5b),Func_3af5b dbw BANK(Func_6e43),Func_6e43 @@ -77624,7 +45427,8 @@ MoveAnimationPredef: ; 4fe91 (13:7e91) dbw BANK(ShowPokedexData),ShowPokedexData dbw BANK(WriteMonMoves),WriteMonMoves dbw BANK(SaveSAV),SaveSAV - dbw BANK(Func_7202b),Func_7202b + db BANK(LoadSGBBorderAndPalettes) + dw LoadSGBBorderAndPalettes dbw BANK(Func_f113),Func_f113 dbw BANK(SetPartyMonTypes),SetPartyMonTypes db BANK(TestMonMoveCompatibility) @@ -77636,9 +45440,10 @@ MoveAnimationPredef: ; 4fe91 (13:7e91) dw _AddPokemonToParty dbw BANK(UpdateHPBar),UpdateHPBar dbw BANK(Func_3cdec),Func_3cdec - dbw BANK(Func_70f60),Func_70f60 + dbw BANK(LoadTownMap_Nest),LoadTownMap_Nest dbw BANK(Func_27d6b),Func_27d6b - dbw BANK(Func_17c47),Func_17c47; 4C player exclamation + db BANK(PrintEmotionBubble) + dw PrintEmotionBubble; 4C player exclamation dbw BANK(Func_5aaf),Func_5aaf; return immediately db BANK(AskForMonNickname) dw AskForMonNickname @@ -77668,3508 +45473,119 @@ DrawHPBarPredef: ; 4ff96 (13:7f96) SECTION "bank14",ROMX,BANK[$14] -Route22_h: ; 0x50000 to 0x50022 (34 bytes) (id=33) - db OVERWORLD ; tileset - db ROUTE_22_HEIGHT, ROUTE_22_WIDTH ; dimensions (y, x) - dw Route22Blocks, Route22TextPointers, Route22Script ; blocks, texts, scripts - db NORTH | EAST ; connections - NORTH_MAP_CONNECTION ROUTE_23, ROUTE_23_WIDTH, ROUTE_23_HEIGHT, 0, 0, ROUTE_23_WIDTH, Route23Blocks - EAST_MAP_CONNECTION VIRIDIAN_CITY, VIRIDIAN_CITY_WIDTH, -3, 1, VIRIDIAN_CITY_HEIGHT - 3, ViridianCityBlocks, ROUTE_22_WIDTH - dw Route22Object ; objects - -Route22Object: ; 0x50022 (size=27) - db $2c ; border tile +INCLUDE "data/mapHeaders/route22.asm" - db $1 ; warps - db $5, $8, $0, ROUTE_22_GATE - - db $1 ; signs - db $b, $7, $3 ; Route22FrontGateText - - db $2 ; people - db SPRITE_BLUE, $5 + 4, $19 + 4, $ff, $ff, $1 ; person - db SPRITE_BLUE, $5 + 4, $19 + 4, $ff, $ff, $2 ; person - - ; warp-to - EVENT_DISP ROUTE_22_WIDTH, $5, $8 ; ROUTE_22_GATE +INCLUDE "data/mapObjects/route22.asm" Route22Blocks: ; 5003d (14:403d) INCBIN "maps/route22.blk" -Route20_h: ; 0x500f1 to 0x50113 (34 bytes) (id=31) - db OVERWORLD ; tileset - db ROUTE_20_HEIGHT, ROUTE_20_WIDTH ; dimensions (y, x) - dw Route20Blocks, Route20TextPointers, Route20Script ; blocks, texts, scripts - db WEST | EAST ; connections - WEST_MAP_CONNECTION CINNABAR_ISLAND, CINNABAR_ISLAND_WIDTH, 0, 0, CINNABAR_ISLAND_HEIGHT, CinnabarIslandBlocks, ROUTE_20_WIDTH - EAST_MAP_CONNECTION ROUTE_19, ROUTE_19_WIDTH, -3, 15, ROUTE_19_HEIGHT - 15, Route19Blocks, ROUTE_20_WIDTH - dw Route20Object ; objects - -Route20Object: ; 0x50113 (size=106) - db $43 ; border tile - - db $2 ; warps - db $5, $30, $0, SEAFOAM_ISLANDS_1 - db $9, $3a, $2, SEAFOAM_ISLANDS_1 - - db $2 ; signs - db $7, $33, $b ; Route20Text11 - db $b, $39, $c ; Route20Text12 - - db $a ; people - db SPRITE_SWIMMER, $8 + 4, $57 + 4, $ff, $d1, $41, SWIMMER + $C8, $9 ; trainer - db SPRITE_SWIMMER, $b + 4, $44 + 4, $ff, $d1, $42, BEAUTY + $C8, $f ; trainer - db SPRITE_SWIMMER, $a + 4, $2d + 4, $ff, $d0, $43, BEAUTY + $C8, $6 ; trainer - db SPRITE_SWIMMER, $e + 4, $37 + 4, $ff, $d3, $44, JR__TRAINER_F + $C8, $18 ; trainer - db SPRITE_SWIMMER, $d + 4, $26 + 4, $ff, $d0, $45, SWIMMER + $C8, $a ; trainer - db SPRITE_SWIMMER, $d + 4, $57 + 4, $ff, $d1, $46, SWIMMER + $C8, $b ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $9 + 4, $22 + 4, $ff, $d1, $47, BIRD_KEEPER + $C8, $b ; trainer - db SPRITE_SWIMMER, $7 + 4, $19 + 4, $ff, $d1, $48, BEAUTY + $C8, $7 ; trainer - db SPRITE_SWIMMER, $c + 4, $18 + 4, $ff, $d0, $49, JR__TRAINER_F + $C8, $10 ; trainer - db SPRITE_SWIMMER, $8 + 4, $f + 4, $ff, $d1, $4a, BEAUTY + $C8, $8 ; trainer - - ; warp-to - EVENT_DISP ROUTE_20_WIDTH, $5, $30 ; SEAFOAM_ISLANDS_1 - EVENT_DISP ROUTE_20_WIDTH, $9, $3a ; SEAFOAM_ISLANDS_1 +INCLUDE "data/mapHeaders/route20.asm" + +INCLUDE "data/mapObjects/route20.asm" Route20Blocks: ; 5017d (14:417d) INCBIN "maps/route20.blk" -Route23_h: ; 0x5033f to 0x50361 (34 bytes) (id=34) - db PLATEAU ; tileset - db ROUTE_23_HEIGHT, ROUTE_23_WIDTH ; dimensions (y, x) - dw Route23Blocks, Route23TextPointers, Route23Script ; blocks, texts, scripts - db NORTH | SOUTH ; connections - NORTH_MAP_CONNECTION INDIGO_PLATEAU, INDIGO_PLATEAU_WIDTH, INDIGO_PLATEAU_HEIGHT, 0, 0, INDIGO_PLATEAU_WIDTH, IndigoPlateauBlocks - SOUTH_MAP_CONNECTION ROUTE_22, ROUTE_22_WIDTH, 0, 0, ROUTE_22_WIDTH - 7, Route22Blocks, ROUTE_23_WIDTH, ROUTE_23_HEIGHT - dw Route23Object ; objects - -Route23Object: ; 0x50361 (size=81) - db $f ; border tile - - db $4 ; warps - db $8b, $7, $2, ROUTE_22_GATE - db $8b, $8, $3, ROUTE_22_GATE - db $1f, $4, $0, VICTORY_ROAD_1 - db $1f, $e, $1, VICTORY_ROAD_2 - - db $1 ; signs - db $21, $3, $8 ; Route23Text8 - - db $7 ; people - db SPRITE_GUARD, $23 + 4, $4 + 4, $ff, $d0, $1 ; person - db SPRITE_GUARD, $38 + 4, $a + 4, $ff, $d0, $2 ; person - db SPRITE_SWIMMER, $55 + 4, $8 + 4, $ff, $d0, $3 ; person - db SPRITE_SWIMMER, $60 + 4, $b + 4, $ff, $d0, $4 ; person - db SPRITE_GUARD, $69 + 4, $c + 4, $ff, $d0, $5 ; person - db SPRITE_GUARD, $77 + 4, $8 + 4, $ff, $d0, $6 ; person - db SPRITE_GUARD, $88 + 4, $8 + 4, $ff, $d0, $7 ; person - - ; warp-to - EVENT_DISP ROUTE_23_WIDTH, $8b, $7 ; ROUTE_22_GATE - EVENT_DISP ROUTE_23_WIDTH, $8b, $8 ; ROUTE_22_GATE - EVENT_DISP ROUTE_23_WIDTH, $1f, $4 ; VICTORY_ROAD_1 - EVENT_DISP ROUTE_23_WIDTH, $1f, $e ; VICTORY_ROAD_2 +INCLUDE "data/mapHeaders/route23.asm" + +INCLUDE "data/mapObjects/route23.asm" Route23Blocks: ; 503b2 (14:43b2) INCBIN "maps/route23.blk" -Route24_h: ; 0x50682 to 0x506a4 (34 bytes) (id=35) - db OVERWORLD ; tileset - db ROUTE_24_HEIGHT, ROUTE_24_WIDTH ; dimensions (y, x) - dw Route24Blocks, Route24TextPointers, Route24Script ; blocks, texts, scripts - db SOUTH | EAST ; connections - SOUTH_MAP_CONNECTION CERULEAN_CITY, CERULEAN_CITY_WIDTH, -3, 2, CERULEAN_CITY_WIDTH - 4, CeruleanCityBlocks, ROUTE_24_WIDTH, ROUTE_24_HEIGHT - EAST_MAP_CONNECTION ROUTE_25, ROUTE_25_WIDTH, 0, 0, ROUTE_25_HEIGHT, Route25Blocks, ROUTE_24_WIDTH - dw Route24Object ; objects - -Route24Object: ; 0x506a4 (size=67) - db $2c ; border tile - - db $0 ; warps - - db $0 ; signs +INCLUDE "data/mapHeaders/route24.asm" - db $8 ; people - db SPRITE_BLACK_HAIR_BOY_1, $f + 4, $b + 4, $ff, $d2, $41, ROCKET + $C8, $6 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $14 + 4, $5 + 4, $ff, $d1, $42, JR__TRAINER_M + $C8, $2 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $13 + 4, $b + 4, $ff, $d2, $43, JR__TRAINER_M + $C8, $3 ; trainer - db SPRITE_LASS, $16 + 4, $a + 4, $ff, $d3, $44, LASS + $C8, $7 ; trainer - db SPRITE_BUG_CATCHER, $19 + 4, $b + 4, $ff, $d2, $45, YOUNGSTER + $C8, $4 ; trainer - db SPRITE_LASS, $1c + 4, $a + 4, $ff, $d3, $46, LASS + $C8, $8 ; trainer - db SPRITE_BUG_CATCHER, $1f + 4, $b + 4, $ff, $d2, $47, BUG_CATCHER + $C8, $9 ; trainer - db SPRITE_BALL, $5 + 4, $a + 4, $ff, $ff, $88, TM_45 ; item +INCLUDE "data/mapObjects/route24.asm" Route24Blocks: ; 506e7 (14:46e7) INCBIN "maps/route24.blk" -Route25_h: ; 0x5079b to 0x507b2 (23 bytes) (id=36) - db OVERWORLD ; tileset - db ROUTE_25_HEIGHT, ROUTE_25_WIDTH ; dimensions (y, x) - dw Route25Blocks, Route25TextPointers, Route25Script ; blocks, texts, scripts - db WEST ; connections - WEST_MAP_CONNECTION ROUTE_24, ROUTE_24_WIDTH, 0, 0, ROUTE_24_HEIGHT - 6, Route24Blocks, ROUTE_25_WIDTH - dw Route25Object ; objects - -Route25Object: ; 0x507b2 (size=94) - db $2c ; border tile - - db $1 ; warps - db $3, $2d, $0, BILLS_HOUSE - - db $1 ; signs - db $3, $2b, $b ; Route25Text11 - - db $a ; people - db SPRITE_BUG_CATCHER, $2 + 4, $e + 4, $ff, $d0, $41, YOUNGSTER + $C8, $5 ; trainer - db SPRITE_BUG_CATCHER, $5 + 4, $12 + 4, $ff, $d1, $42, YOUNGSTER + $C8, $6 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $4 + 4, $18 + 4, $ff, $d0, $43, JR__TRAINER_M + $C8, $2 ; trainer - db SPRITE_LASS, $8 + 4, $12 + 4, $ff, $d3, $44, LASS + $C8, $9 ; trainer - db SPRITE_BUG_CATCHER, $3 + 4, $20 + 4, $ff, $d2, $45, YOUNGSTER + $C8, $7 ; trainer - db SPRITE_LASS, $4 + 4, $25 + 4, $ff, $d0, $46, LASS + $C8, $a ; trainer - db SPRITE_HIKER, $4 + 4, $8 + 4, $ff, $d3, $47, HIKER + $C8, $2 ; trainer - db SPRITE_HIKER, $9 + 4, $17 + 4, $ff, $d1, $48, HIKER + $C8, $3 ; trainer - db SPRITE_HIKER, $7 + 4, $d + 4, $ff, $d3, $49, HIKER + $C8, $4 ; trainer - db SPRITE_BALL, $2 + 4, $16 + 4, $ff, $ff, $8a, TM_19 ; item - - ; warp-to - EVENT_DISP ROUTE_25_WIDTH, $3, $2d ; BILLS_HOUSE +INCLUDE "data/mapHeaders/route25.asm" + +INCLUDE "data/mapObjects/route25.asm" Route25Blocks: ; 50810 (14:4810) INCBIN "maps/route25.blk" -IndigoPlateau_h: ; 0x5091e to 0x50935 (23 bytes) (id=9) - db PLATEAU ; tileset - db INDIGO_PLATEAU_HEIGHT, INDIGO_PLATEAU_WIDTH ; dimensions (y, x) - dw IndigoPlateauBlocks, IndigoPlateauTextPointers, IndigoPlateauScript ; blocks, texts, scripts - db SOUTH ; connections - SOUTH_MAP_CONNECTION ROUTE_23, ROUTE_23_WIDTH, 0, 0, ROUTE_23_WIDTH, Route23Blocks, INDIGO_PLATEAU_WIDTH, INDIGO_PLATEAU_HEIGHT - dw IndigoPlateauObject ; objects - -IndigoPlateauScript: ; 50935 (14:4935) - ret - -IndigoPlateauTextPointers: ; 50936 (14:4936) -IndigoPlateauObject: ; 0x50936 (size=20) - db $e ; border tile - - db $2 ; warps - db $5, $9, $0, INDIGO_PLATEAU_LOBBY - db $5, $a, $0, INDIGO_PLATEAU_LOBBY +INCLUDE "data/mapHeaders/indigoplateau.asm" - db $0 ; signs +INCLUDE "scripts/indigoplateau.asm" - db $0 ; people - - ; warp-to - EVENT_DISP INDIGO_PLATEAU_WIDTH, $5, $9 ; INDIGO_PLATEAU_LOBBY - EVENT_DISP INDIGO_PLATEAU_WIDTH, $5, $a ; INDIGO_PLATEAU_LOBBY +INCLUDE "data/mapObjects/indigoplateau.asm" IndigoPlateauBlocks: ; 5094a (14:494a) INCBIN "maps/indigoplateau.blk" -SaffronCity_h: ; 0x509a4 to 0x509dc (56 bytes) (id=10) - db OVERWORLD ; tileset - db SAFFRON_CITY_HEIGHT, SAFFRON_CITY_WIDTH ; dimensions (y, x) - dw SaffronCityBlocks, SaffronCityTextPointers, SaffronCityScript ; blocks, texts, scripts - db NORTH | SOUTH | WEST | EAST ; connections - NORTH_MAP_CONNECTION ROUTE_5, ROUTE_5_WIDTH, ROUTE_5_HEIGHT, 5, 0, ROUTE_5_WIDTH, Route5Blocks - SOUTH_MAP_CONNECTION ROUTE_6, ROUTE_6_WIDTH, 5, 0, ROUTE_6_WIDTH, Route6Blocks, SAFFRON_CITY_WIDTH, SAFFRON_CITY_HEIGHT - WEST_MAP_CONNECTION ROUTE_7, ROUTE_7_WIDTH, 4, 0, ROUTE_7_HEIGHT, Route7Blocks, SAFFRON_CITY_WIDTH - EAST_MAP_CONNECTION ROUTE_8, ROUTE_8_WIDTH, 4, 0, ROUTE_8_HEIGHT, Route8Blocks, SAFFRON_CITY_WIDTH - dw SaffronCityObject ; objects - -SaffronCityObject: ; 0x509dc (size=188) - db $f ; border tile - - db $8 ; warps - db $5, $7, $0, COPYCATS_HOUSE_1F - db $3, $1a, $0, FIGHTING_DOJO - db $3, $22, $0, SAFFRON_GYM - db $b, $d, $0, SAFFRON_HOUSE_1 - db $b, $19, $0, SAFFRON_MART - db $15, $12, $0, SILPH_CO_1F - db $1d, $9, $0, SAFFRON_POKECENTER - db $1d, $1d, $0, SAFFRON_HOUSE_2 - - db $a ; signs - db $5, $11, $10 ; SaffronCityText16 - db $5, $1b, $11 ; SaffronCityText17 - db $5, $23, $12 ; SaffronCityText18 - db $b, $1a, $13 ; MartSignText - db $13, $27, $14 ; SaffronCityText20 - db $15, $5, $15 ; SaffronCityText21 - db $15, $f, $16 ; SaffronCityText22 - db $1d, $a, $17 ; PokeCenterSignText - db $1d, $1b, $18 ; SaffronCityText24 - db $13, $1, $19 ; SaffronCityText25 - - db $f ; people - db SPRITE_ROCKET, $6 + 4, $7 + 4, $ff, $ff, $1 ; person - db SPRITE_ROCKET, $8 + 4, $14 + 4, $fe, $2, $2 ; person - db SPRITE_ROCKET, $4 + 4, $22 + 4, $ff, $ff, $3 ; person - db SPRITE_ROCKET, $c + 4, $d + 4, $ff, $ff, $4 ; person - db SPRITE_ROCKET, $19 + 4, $b + 4, $fe, $2, $5 ; person - db SPRITE_ROCKET, $d + 4, $20 + 4, $fe, $2, $6 ; person - db SPRITE_ROCKET, $1e + 4, $12 + 4, $fe, $2, $7 ; person - db SPRITE_OAK_AIDE, $e + 4, $8 + 4, $fe, $0, $8 ; person - db SPRITE_LAPRAS_GIVER, $17 + 4, $17 + 4, $ff, $ff, $9 ; person - db SPRITE_ERIKA, $1e + 4, $11 + 4, $fe, $2, $a ; person - db SPRITE_GENTLEMAN, $c + 4, $1e + 4, $ff, $d0, $b ; person - db SPRITE_BIRD, $c + 4, $1f + 4, $ff, $d0, $c ; person - db SPRITE_ROCKER, $8 + 4, $12 + 4, $ff, $d1, $d ; person - db SPRITE_ROCKET, $16 + 4, $12 + 4, $ff, $d0, $e ; person - db SPRITE_ROCKET, $16 + 4, $13 + 4, $ff, $d0, $f ; person - - ; warp-to - EVENT_DISP SAFFRON_CITY_WIDTH, $5, $7 ; COPYCATS_HOUSE_1F - EVENT_DISP SAFFRON_CITY_WIDTH, $3, $1a ; FIGHTING_DOJO - EVENT_DISP SAFFRON_CITY_WIDTH, $3, $22 ; SAFFRON_GYM - EVENT_DISP SAFFRON_CITY_WIDTH, $b, $d ; SAFFRON_HOUSE_1 - EVENT_DISP SAFFRON_CITY_WIDTH, $b, $19 ; SAFFRON_MART - EVENT_DISP SAFFRON_CITY_WIDTH, $15, $12 ; SILPH_CO_1F - EVENT_DISP SAFFRON_CITY_WIDTH, $1d, $9 ; SAFFRON_POKECENTER - EVENT_DISP SAFFRON_CITY_WIDTH, $1d, $1d ; SAFFRON_HOUSE_2 +INCLUDE "data/mapHeaders/saffroncity.asm" + +INCLUDE "data/mapObjects/saffroncity.asm" SaffronCityBlocks: ; 50a98 (14:4a98) INCBIN "maps/saffroncity.blk" -SaffronCityScript: ; 50c00 (14:4c00) - jp EnableAutoTextBoxDrawing - -SaffronCityTextPointers: ; 50c03 (14:4c03) - dw SaffronCityText1 - dw SaffronCityText2 - dw SaffronCityText3 - dw SaffronCityText4 - dw SaffronCityText5 - dw SaffronCityText6 - dw SaffronCityText7 - dw SaffronCityText8 - dw SaffronCityText9 - dw SaffronCityText10 - dw SaffronCityText11 - dw SaffronCityText12 - dw SaffronCityText13 - dw SaffronCityText14 - dw SaffronCityText15 - dw SaffronCityText16 - dw SaffronCityText17 - dw SaffronCityText18 - dw MartSignText - dw SaffronCityText20 - dw SaffronCityText21 - dw SaffronCityText22 - dw PokeCenterSignText - dw SaffronCityText24 - dw SaffronCityText25 - -SaffronCityText1: ; 50c35 (14:4c35) - TX_FAR _SaffronCityText1 - db "@" - -SaffronCityText2: ; 50c3a (14:4c3a) - TX_FAR _SaffronCityText2 - db "@" - -SaffronCityText3: ; 50c3f (14:4c3f) - TX_FAR _SaffronCityText3 - db "@" - -SaffronCityText4: ; 50c44 (14:4c44) - TX_FAR _SaffronCityText4 - db "@" - -SaffronCityText5: ; 50c49 (14:4c49) - TX_FAR _SaffronCityText5 - db "@" - -SaffronCityText6: ; 50c4e (14:4c4e) - TX_FAR _SaffronCityText6 - db "@" - -SaffronCityText7: ; 50c53 (14:4c53) - TX_FAR _SaffronCityText7 - db "@" - -SaffronCityText8: ; 50c58 (14:4c58) - TX_FAR _SaffronCityText8 - db "@" - -SaffronCityText9: ; 50c5d (14:4c5d) - TX_FAR _SaffronCityText9 - db "@" - -SaffronCityText10: ; 50c62 (14:4c62) - TX_FAR _SaffronCityText10 - db "@" - -SaffronCityText11: ; 50c67 (14:4c67) - TX_FAR _SaffronCityText11 - db "@" - -SaffronCityText12: ; 50c6c (14:4c6c) - TX_FAR _SaffronCityText12 - db $15, "@" - -SaffronCityText13: ; 50c72 (14:4c72) - TX_FAR _SaffronCityText13 - db "@" - -SaffronCityText14: ; 50c77 (14:4c77) - TX_FAR _SaffronCityText14 - db "@" - -SaffronCityText15: ; 50c7c (14:4c7c) - TX_FAR _SaffronCityText15 - db "@" - -SaffronCityText16: ; 50c81 (14:4c81) - TX_FAR _SaffronCityText16 - db "@" - -SaffronCityText17: ; 50c86 (14:4c86) - TX_FAR _SaffronCityText17 - db "@" - -SaffronCityText18: ; 50c8b (14:4c8b) - TX_FAR _SaffronCityText18 - db "@" - -SaffronCityText20: ; 50c90 (14:4c90) - TX_FAR _SaffronCityText20 - db "@" - -SaffronCityText21: ; 50c95 (14:4c95) - TX_FAR _SaffronCityText21 - db "@" - -SaffronCityText22: ; 50c9a (14:4c9a) - TX_FAR _SaffronCityText22 - db "@" - -SaffronCityText24: ; 50c9f (14:4c9f) - TX_FAR _SaffronCityText24 - db "@" - -SaffronCityText25: ; 50ca4 (14:4ca4) - TX_FAR _SaffronCityText25 - db "@" - -Route20Script: ; 50ca9 (14:4ca9) - ld hl, $d7e7 - bit 0, [hl] - res 0, [hl] - call nz, Func_50cc6 - call EnableAutoTextBoxDrawing - ld hl, Route20TrainerHeader0 ; $4d3a - ld de, Route20ScriptPointers - ld a, [W_ROUTE20CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_ROUTE20CURSCRIPT], a - ret - -Func_50cc6: ; 50cc6 (14:4cc6) - ld a, [$d880] - and $3 - cp $3 - jr z, .asm_50cef - ld a, $d7 - call Func_50d0c - ld a, $d8 - call Func_50d0c - ld hl, .MissableObjectIDs ; $4ce8 -.asm_50cdc - ld a, [hli] - cp $ff - jr z, .asm_50cef - push hl - call Func_50d14 - pop hl - jr .asm_50cdc - -.MissableObjectIDs: ; 50ce8 (14:4ce8) - db $D9,$DA,$DB,$DC,$DF,$E0,$FF - -.asm_50cef - ld a, [$d881] - and $3 - cp $3 - ret z - ld a, $dd - call Func_50d0c - ld a, $de - call Func_50d0c - ld a, $e1 - call Func_50d14 - ld a, $e2 - call Func_50d14 - ret - -Func_50d0c: ; 50d0c (14:4d0c) - ld [$cc4d], a - ld a, $15 - jp Predef ; indirect jump to AddMissableObject (f1c8 (3:71c8)) - -Func_50d14: ; 50d14 (14:4d14) - ld [$cc4d], a - ld a, $11 - jp Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7)) - -Route20ScriptPointers: ; 50d1c (14:4d1c) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -Route20TextPointers: ; 50d22 (14:4d22) - dw Route20Text1 - dw Route20Text2 - dw Route20Text3 - dw Route20Text4 - dw Route20Text5 - dw Route20Text6 - dw Route20Text7 - dw Route20Text8 - dw Route20Text9 - dw Route20Text10 - dw Route20Text11 - dw Route20Text12 - -Route20TrainerHeaders: ; 50d3a (14:4d3a) -Route20TrainerHeader0: ; 50d3a (14:4d3a) - db $1 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7e7 ; flag's byte - dw Route20BattleText1 ; 0x4e17 TextBeforeBattle - dw Route20AfterBattleText1 ; 0x4e21 TextAfterBattle - dw Route20EndBattleText1 ; 0x4e1c TextEndBattle - dw Route20EndBattleText1 ; 0x4e1c TextEndBattle - -Route20TrainerHeader2: ; 50d46 (14:4d46) - db $2 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7e7 ; flag's byte - dw Route20BattleText2 ; 0x4e26 TextBeforeBattle - dw Route20AfterBattleText2 ; 0x4e30 TextAfterBattle - dw Route20EndBattleText2 ; 0x4e2b TextEndBattle - dw Route20EndBattleText2 ; 0x4e2b TextEndBattle - -Route20TrainerHeader3: ; 50d52 (14:4d52) - db $3 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7e7 ; flag's byte - dw Route20BattleText3 ; 0x4e35 TextBeforeBattle - dw Route20AfterBattleText3 ; 0x4e3f TextAfterBattle - dw Route20EndBattleText3 ; 0x4e3a TextEndBattle - dw Route20EndBattleText3 ; 0x4e3a TextEndBattle - -Route20TrainerHeader4: ; 50d5e (14:4d5e) - db $4 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7e7 ; flag's byte - dw Route20BattleText4 ; 0x4e44 TextBeforeBattle - dw Route20AfterBattleText4 ; 0x4e4e TextAfterBattle - dw Route20EndBattleText4 ; 0x4e49 TextEndBattle - dw Route20EndBattleText4 ; 0x4e49 TextEndBattle - -Route20TrainerHeader5: ; 50d6a (14:4d6a) - db $5 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7e7 ; flag's byte - dw Route20BattleText5 ; 0x4e53 TextBeforeBattle - dw Route20AfterBattleText5 ; 0x4e5d TextAfterBattle - dw Route20EndBattleText5 ; 0x4e58 TextEndBattle - dw Route20EndBattleText5 ; 0x4e58 TextEndBattle - -Route20TrainerHeader6: ; 50d76 (14:4d76) - db $6 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7e7 ; flag's byte - dw Route20BattleText6 ; 0x4e62 TextBeforeBattle - dw Route20AfterBattleText6 ; 0x4e6c TextAfterBattle - dw Route20EndBattleText6 ; 0x4e67 TextEndBattle - dw Route20EndBattleText6 ; 0x4e67 TextEndBattle - -Route20TrainerHeader7: ; 50d82 (14:4d82) - db $7 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7e7 ; flag's byte - dw Route20BattleText7 ; 0x4e71 TextBeforeBattle - dw Route20AfterBattleText7 ; 0x4e7b TextAfterBattle - dw Route20EndBattleText7 ; 0x4e76 TextEndBattle - dw Route20EndBattleText7 ; 0x4e76 TextEndBattle - -Route20TrainerHeader8: ; 50d8e (14:4d8e) - db $8 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7e7 ; flag's byte - dw Route20BattleText8 ; 0x4e80 TextBeforeBattle - dw Route20AfterBattleText8 ; 0x4e8a TextAfterBattle - dw Route20EndBattleText8 ; 0x4e85 TextEndBattle - dw Route20EndBattleText8 ; 0x4e85 TextEndBattle - -Route20TrainerHeader9: ; 50d9a (14:4d9a) - db $9 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7e7 ; flag's byte - dw Route20BattleText9 ; 0x4e8f TextBeforeBattle - dw Route20AfterBattleText9 ; 0x4e99 TextAfterBattle - dw Route20EndBattleText9 ; 0x4e94 TextEndBattle - dw Route20EndBattleText9 ; 0x4e94 TextEndBattle - -Route20TrainerHeader10: ; 50da6 (14:4da6) - db $a ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7e7 ; flag's byte - dw Route20BattleText10 ; 0x4e9e TextBeforeBattle - dw Route20AfterBattleText10 ; 0x4ea8 TextAfterBattle - dw Route20EndBattleText10 ; 0x4ea3 TextEndBattle - dw Route20EndBattleText10 ; 0x4ea3 TextEndBattle - - db $ff - -Route20Text1: ; 50db3 (14:4db3) - db $08 ; asm - ld hl, Route20TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -Route20Text2: ; 50dbd (14:4dbd) - db $08 ; asm - ld hl, Route20TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -Route20Text3: ; 50dc7 (14:4dc7) - db $08 ; asm - ld hl, Route20TrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -Route20Text4: ; 50dd1 (14:4dd1) - db $08 ; asm - ld hl, Route20TrainerHeader4 - call TalkToTrainer - jp TextScriptEnd - -Route20Text5: ; 50ddb (14:4ddb) - db $08 ; asm - ld hl, Route20TrainerHeader5 - call TalkToTrainer - jp TextScriptEnd - -Route20Text6: ; 50de5 (14:4de5) - db $08 ; asm - ld hl, Route20TrainerHeader6 - call TalkToTrainer - jp TextScriptEnd - -Route20Text7: ; 50def (14:4def) - db $08 ; asm - ld hl, Route20TrainerHeader7 - call TalkToTrainer - jp TextScriptEnd - -Route20Text8: ; 50df9 (14:4df9) - db $08 ; asm - ld hl, Route20TrainerHeader8 - call TalkToTrainer - jp TextScriptEnd - -Route20Text9: ; 50e03 (14:4e03) - db $08 ; asm - ld hl, Route20TrainerHeader9 - call TalkToTrainer - jp TextScriptEnd - -Route20Text10: ; 50e0d (14:4e0d) - db $08 ; asm - ld hl, Route20TrainerHeader10 - call TalkToTrainer - jp TextScriptEnd - -Route20BattleText1: ; 50e17 (14:4e17) - TX_FAR _Route20BattleText1 - db "@" - -Route20EndBattleText1: ; 50e1c (14:4e1c) - TX_FAR _Route20EndBattleText1 - db "@" - -Route20AfterBattleText1: ; 50e21 (14:4e21) - TX_FAR _Route20AfterBattleText1 - db "@" - -Route20BattleText2: ; 50e26 (14:4e26) - TX_FAR _Route20BattleText2 - db "@" - -Route20EndBattleText2: ; 50e2b (14:4e2b) - TX_FAR _Route20EndBattleText2 - db "@" - -Route20AfterBattleText2: ; 50e30 (14:4e30) - TX_FAR _Route20AfterBattleText2 - db "@" - -Route20BattleText3: ; 50e35 (14:4e35) - TX_FAR _Route20BattleText3 - db "@" - -Route20EndBattleText3: ; 50e3a (14:4e3a) - TX_FAR _Route20EndBattleText3 - db "@" - -Route20AfterBattleText3: ; 50e3f (14:4e3f) - TX_FAR _Route20AfterBattleText3 - db "@" - -Route20BattleText4: ; 50e44 (14:4e44) - TX_FAR _Route20BattleText4 - db "@" - -Route20EndBattleText4: ; 50e49 (14:4e49) - TX_FAR _Route20EndBattleText4 - db "@" - -Route20AfterBattleText4: ; 50e4e (14:4e4e) - TX_FAR _Route20AfterBattleText4 - db "@" - -Route20BattleText5: ; 50e53 (14:4e53) - TX_FAR _Route20BattleText5 - db "@" - -Route20EndBattleText5: ; 50e58 (14:4e58) - TX_FAR _Route20EndBattleText5 - db "@" - -Route20AfterBattleText5: ; 50e5d (14:4e5d) - TX_FAR _Route20AfterBattleText5 - db "@" - -Route20BattleText6: ; 50e62 (14:4e62) - TX_FAR _Route20BattleText6 - db "@" - -Route20EndBattleText6: ; 50e67 (14:4e67) - TX_FAR _Route20EndBattleText6 - db "@" - -Route20AfterBattleText6: ; 50e6c (14:4e6c) - TX_FAR _Route20AfterBattleText6 - db "@" - -Route20BattleText7: ; 50e71 (14:4e71) - TX_FAR _Route20BattleText7 - db "@" - -Route20EndBattleText7: ; 50e76 (14:4e76) - TX_FAR _Route20EndBattleText7 - db "@" - -Route20AfterBattleText7: ; 50e7b (14:4e7b) - TX_FAR _Route20AfterBattleText7 - db "@" - -Route20BattleText8: ; 50e80 (14:4e80) - TX_FAR _Route20BattleText8 - db "@" - -Route20EndBattleText8: ; 50e85 (14:4e85) - TX_FAR _Route20EndBattleText8 - db "@" - -Route20AfterBattleText8: ; 50e8a (14:4e8a) - TX_FAR _Route20AfterBattleText8 - db "@" - -Route20BattleText9: ; 50e8f (14:4e8f) - TX_FAR _Route20BattleText9 - db "@" - -Route20EndBattleText9: ; 50e94 (14:4e94) - TX_FAR _Route20EndBattleText9 - db "@" - -Route20AfterBattleText9: ; 50e99 (14:4e99) - TX_FAR _Route20AfterBattleText9 - db "@" - -Route20BattleText10: ; 50e9e (14:4e9e) - TX_FAR _Route20BattleText10 - db "@" - -Route20EndBattleText10: ; 50ea3 (14:4ea3) - TX_FAR _Route20EndBattleText10 - db "@" - -Route20AfterBattleText10: ; 50ea8 (14:4ea8) - TX_FAR _Route20AfterBattleText10 - db "@" - -Route20Text12: ; 50ead (14:4ead) -Route20Text11: ; 50ead (14:4ead) - TX_FAR _Route20Text11 - db "@" - -Route22Script: ; 50eb2 (14:4eb2) - call EnableAutoTextBoxDrawing - ld hl, Route22ScriptPointers - ld a, [W_ROUTE22CURSCRIPT] - jp CallFunctionInTable - -Route22ScriptPointers: ; 50ebe (14:4ebe) - dw Route22Script0 - dw Route22Script1 - dw Route22Script2 - dw Route22Script3 - dw Route22Script4 - dw Route22Script5 - dw Route22Script6 - dw Route22Script7 - -Func_50ece: ; 50ece (14:4ece) - xor a - ld [wJoypadForbiddenButtonsMask], a - ld [W_ROUTE22CURSCRIPT], a -Route22Script7: ; 50ed5 (14:4ed5) - ret - -Func_50ed6: ; 50ed6 (14:4ed6) - ld a, [W_RIVALSTARTER] ; $d715 - ld b, a -.asm_50eda - ld a, [hli] - cp b - jr z, .asm_50ee1 - inc hl - jr .asm_50eda -.asm_50ee1 - ld a, [hl] - ld [W_TRAINERNO], a ; $d05d - ret - -Route22MoveRivalSprite: ; 50ee6 (14:4ee6) - ld de, Route22RivalMovementData ; $4efb - ld a, [$cf0d] - cp $1 - jr z, .asm_50ef1 - inc de -.asm_50ef1 - call MoveSprite - ld a, $c - ld [$ff8d], a - jp Func_34a6 - -Route22RivalMovementData: ; 50efb (14:4efb) - db $C0,$C0,$C0,$C0,$FF ; move right 4 times - -Route22Script0: ; 50f00 (14:4f00) - ld a, [$d7eb] - bit 7, a - ret z - ld hl, .Route22RivalBattleCoords ; $4f2d - call ArePlayerCoordsInArray - ret nc - ld a, [$cd3d] - ld [$cf0d], a - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - ld a, $2 - ld [$d528], a - ld a, [$d7eb] - bit 0, a ; is this the rival battle at the beginning of the game? - jr nz, .firstRivalBattle ; 0x50f25 $b - bit 1, a ; is this the rival at the end of the game? - jp nz, Func_5104e - ret - -.Route22RivalBattleCoords - db $04, $1D - db $05, $1D - db $FF - -.firstRivalBattle - ld a, $1 - ld [$cd4f], a - xor a - ld [$cd50], a - ld a, $4c - call Predef - ld a, [$d700] - and a - jr z, .asm_50f4e ; 0x50f44 $8 - ld a, $ff - ld [$c0ee], a - call PlaySound -.asm_50f4e - ld c, BANK(Music_MeetRival) - ld a, MUSIC_MEET_RIVAL - call PlayMusic - ld a, $1 - ld [$ff8c], a - call Route22MoveRivalSprite - ld a, $1 - ld [W_ROUTE22CURSCRIPT], a - ret - -Route22Script1: ; 50f62 (14:4f62) - ld a, [$d730] - bit 0, a - ret nz - ld a, [$cf0d] - cp $1 - jr nz, .asm_50f78 ; 0x50f6d $9 - ld a, $4 - ld [$d528], a - ld a, $4 - jr .asm_50f7a ; 0x50f76 $2 -.asm_50f78 - ld a, $c -.asm_50f7a - ld [$ff8d], a - ld a, $1 - ld [$ff8c], a - call Func_34a6 - xor a - ld [wJoypadForbiddenButtonsMask], a - ld a, $1 - ld [$ff8c], a - call DisplayTextID - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, Route22RivalDefeatedText1 - ld de, UnnamedText_511bc - call PreBattleSaveRegisters - ld a, SONY1 + $C8 - ld [$d059], a - ld hl, StarterMons_50faf ; $4faf - call Func_50ed6 - ld a, $2 - ld [W_ROUTE22CURSCRIPT], a - ret - -StarterMons_50faf: ; 50faf (14:4faf) -; starter the rival picked, rival trainer number - db SQUIRTLE,$04 - db BULBASAUR,$05 - db CHARMANDER,$06 - -Route22Script2: ; 50fb5 (14:4fb5) - ld a, [$d057] - cp $ff - jp z, Func_50ece - ld a, [$c109] - and a - jr nz, .asm_50fc7 ; 0x50fc1 $4 - ld a, $4 - jr .asm_50fc9 ; 0x50fc5 $2 -.asm_50fc7 - ld a, $c -.asm_50fc9 - ld [$ff8d], a - ld a, $1 - ld [$ff8c], a - call Func_34a6 - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - ld hl, $d7eb - set 5, [hl] - ld a, $1 - ld [$ff8c], a - call DisplayTextID - ld a, $ff - ld [$c0ee], a - call PlaySound - callba Music_RivalAlternateStart - ld a, [$cf0d] - cp $1 - jr nz, .asm_50fff ; 0x50ff8 $5 - call Func_51008 - jr .asm_51002 ; 0x50ffd $3 -.asm_50fff - call Func_5100d -.asm_51002 - ld a, $3 - ld [W_ROUTE22CURSCRIPT], a - ret - -Func_51008: ; 51008 (14:5008) - ld de, Route22RivalExitMovementData1 ; $5017 - jr asm_51010 - -Func_5100d: ; 5100d (14:500d) - ld de, Route22RivalExitMovementData2 ; $501f -asm_51010 - ld a, $1 - ld [H_SPRITEHEIGHT], a - jp MoveSprite - -Route22RivalExitMovementData1: ; 51017 (14:5017) - db $C0,$C0,$00,$00,$00,$00,$00,$FF ; right x2, down x5 - -Route22RivalExitMovementData2: ; 5101f (14:501f) - db $40,$C0,$C0,$C0,$00,$00,$00,$00,$00,$00,$FF ; up x1, right x3, down x6 - -Route22Script3: ; 5102a (14:502a) - ld a, [$d730] - bit 0, a - ret nz - xor a - ld [wJoypadForbiddenButtonsMask], a - ld a, $22 - ld [$cc4d], a - ld a, $11 - call Predef - call Func_2307 - ld hl, $d7eb - res 0, [hl] - res 7, [hl] - ld a, $0 - ld [W_ROUTE22CURSCRIPT], a - ret - -Func_5104e: ; 5104e (14:504e) - ld a, $2 - ld [$cd4f], a - xor a - ld [$cd50], a - ld a, $4c - call Predef ; indirect jump to Func_17c47 (17c47 (5:7c47)) - ld a, [$d700] - and a - jr z, .skipYVisibilityTesta - ld a, $ff - ld [$c0ee], a - call PlaySound -.skipYVisibilityTesta - ld a, $ff - ld [$c0ee], a - call PlaySound - callba Music_RivalAlternateTempo - ld a, $2 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call Route22MoveRivalSprite - ld a, $4 - ld [W_ROUTE22CURSCRIPT], a - ret - -Route22Script4: ; 51087 (14:5087) - ld a, [$d730] - bit 0, a - ret nz - ld a, $2 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - ld a, [$cf0d] - cp $1 - jr nz, .asm_510a1 - ld a, $4 - ld [$d528], a - ld a, $4 - jr .asm_510a8 -.asm_510a1 - ld a, $2 - ld [$d528], a - ld a, $c -.asm_510a8 - ld [$ff8d], a - call Func_34a6 - xor a - ld [wJoypadForbiddenButtonsMask], a - ld a, $2 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, Route22RivalDefeatedText2 ; $51cb - ld de, UnnamedText_511d0 ; $51d0 - call PreBattleSaveRegisters - ld a, $f2 - ld [W_CUROPPONENT], a ; $d059 - ld hl, StarterMons_510d9 ; $50d9 - call Func_50ed6 - ld a, $5 - ld [W_ROUTE22CURSCRIPT], a - ret - -StarterMons_510d9: ; 510d9 (14:50d9) - db SQUIRTLE,$0a - db BULBASAUR,$0b - db CHARMANDER,$0c - -Route22Script5: ; 510df (14:50df) - ld a, [W_ISINBATTLE] ; $d057 - cp $ff - jp z, Func_50ece - ld a, $2 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - ld a, [$cf0d] - cp $1 - jr nz, .asm_510fb - ld a, $4 - ld [$d528], a - ld a, $4 - jr .asm_51102 -.asm_510fb - ld a, $2 - ld [$d528], a - ld a, $c -.asm_51102 - ld [$ff8d], a - call Func_34a6 - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - ld hl, $d7eb - set 6, [hl] - ld a, $2 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - ld a, $ff - ld [$c0ee], a - call PlaySound - callba Music_RivalAlternateStartAndTempo - ld a, [$cf0d] - cp $1 - jr nz, .asm_51134 - call Func_5113d - jr .asm_51137 -.asm_51134 - call Func_51142 -.asm_51137 - ld a, $6 - ld [W_ROUTE22CURSCRIPT], a - ret - -Func_5113d: ; 5113d (14:513d) - ld de, MovementData_5114c ; $514c - jr asm_51145 - -Func_51142: ; 51142 (14:5142) - ld de, MovementData_5114d ; $514d -asm_51145: ; 51145 (14:5145) - ld a, $2 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - jp MoveSprite - -MovementData_5114c: ; 5114c (14:514c) - db $80 ; left - -MovementData_5114d: ; 5114d (14:514d) - db $80,$80,$80,$FF ; left x3 - -Route22Script6: ; 51151 (14:5151) - ld a, [$d730] - bit 0, a - ret nz - xor a - ld [wJoypadForbiddenButtonsMask], a - ld a, $23 - ld [$cc4d], a - ld a, $11 - call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7)) - call Func_2307 - ld hl, $d7eb - res 1, [hl] - res 7, [hl] - ld a, $7 - ld [W_ROUTE22CURSCRIPT], a - ret - -Route22TextPointers: ; 51175 (14:5175) - dw Route22Text1 - dw Route22Text2 - dw Route22FrontGateText - -Route22Text1: ; 5117b (14:517b) - db $08 ; asm - ld a, [$d7eb] - bit 5, a - jr z, .asm_a88cf ; 0x51181 - ld hl, Route22RivalAfterBattleText1 - call PrintText - jr .asm_48088 ; 0x51189 -.asm_a88cf ; 0x5118b - ld hl, Route22RivalBeforeBattleText1 - call PrintText -.asm_48088 ; 0x51191 - jp TextScriptEnd - -Route22Text2: ; 51194 (14:5194) - db $08 ; asm - ld a, [$d7eb] - bit 6, a - jr z, .asm_58c0a ; 0x5119a - ld hl, Route22RivalAfterBattleText2 - call PrintText - jr .asm_673ee ; 0x511a2 -.asm_58c0a ; 0x511a4 - ld hl, Route22RivalBeforeBattleText2 - call PrintText -.asm_673ee ; 0x511aa - jp TextScriptEnd - -Route22RivalBeforeBattleText1: ; 511ad (14:51ad) - TX_FAR _Route22RivalBeforeBattleText1 - db "@" - -Route22RivalAfterBattleText1: ; 511b2 (14:51b2) - TX_FAR _Route22RivalAfterBattleText1 - db "@" - -Route22RivalDefeatedText1: ; 511b7 (14:51b7) - TX_FAR _Route22RivalDefeatedText1 - db "@" - -UnnamedText_511bc: ; 511bc (14:51bc) - TX_FAR _UnnamedText_511bc - db "@" - -Route22RivalBeforeBattleText2: ; 511c1 (14:51c1) - TX_FAR _Route22RivalBeforeBattleText2 - db "@" - -Route22RivalAfterBattleText2: ; 511c6 (14:51c6) - TX_FAR _Route22RivalAfterBattleText2 - db "@" - -Route22RivalDefeatedText2: ; 511cb (14:51cb) - TX_FAR _Route22RivalDefeatedText2 - db "@" - -UnnamedText_511d0: ; 511d0 (14:51d0) - TX_FAR _UnnamedText_511d0 - db "@" - -Route22FrontGateText: ; 511d5 (14:51d5) - TX_FAR _Route22FrontGateText - db "@" - -Route23Script: ; 511da (14:51da) - call Func_511e9 - call EnableAutoTextBoxDrawing - ld hl, Route23ScriptPointers - ld a, [W_ROUTE23CURSCRIPT] - jp CallFunctionInTable - -Func_511e9: ; 511e9 (14:51e9) - ld hl, $d126 - bit 6, [hl] - res 6, [hl] - ret z - ld hl, $d7ee - res 0, [hl] - res 7, [hl] - ld hl, $d813 - res 0, [hl] - res 6, [hl] - ld a, $7a - ld [$cc4d], a - ld a, $15 - call Predef ; indirect jump to AddMissableObject (f1c8 (3:71c8)) - ld a, $60 - ld [$cc4d], a - ld a, $11 - jp Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7)) - -Route23ScriptPointers: ; 51213 (14:5213) - dw Route23Script0 - dw Route23Script1 - dw Route23Script2 - -Route23Script0: ; 51219 (14:5219) - ld hl, YCoordsData_51255 ; $5255 - ld a, [W_YCOORD] - ld b, a - ld e, $0 - ld c, $7 -.asm_51224 - ld a, [hli] - cp $ff - ret z - inc e - dec c - cp b - jr nz, .asm_51224 ; 0x5122b $f7 - cp $23 - jr nz, .asm_51237 ; 0x5122f $6 - ld a, [W_XCOORD] - cp $e - ret nc -.asm_51237 - ld a, e - ld [$ff8c], a - ld a, c - ld [$cd3d], a - ld b, $2 - ld hl, $d7ed - ld a, $10 - call Predef - ld a, c - and a - ret nz - call Func_5125d - call DisplayTextID - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - ret - -YCoordsData_51255: ; 51255 (14:5255) - db $23,$38,$55,$60,$69,$77,$88,$FF - -Func_5125d: ; 5125d (14:525d) - ld hl, BadgeTextPointers ; $5276 - ld a, [wWhichTrade] ; $cd3d - ld c, a - ld b, $0 - add hl, bc - add hl, bc - ld a, [hli] - ld h, [hl] - ld l, a - ld de, $cd6d -.asm_5126e - ld a, [hli] - ld [de], a - inc de - cp $50 - jr nz, .asm_5126e - ret - -BadgeTextPointers: ; 51276 (14:5276) - dw CascadeBadgeText - dw ThunderBadgeText - dw RainbowBadgeText - dw SoulBadgeText - dw MarshBadgeText - dw VolcanoBadgeText - dw EarthBadgeText - -EarthBadgeText: ; 51284 (14:5284) - db "EARTHBADGE@" - -VolcanoBadgeText: ; 5128f (14:528f) - db "VOLCANOBADGE@" - -MarshBadgeText: ; 5129c (14:529c) - db "MARSHBADGE@" - -SoulBadgeText: ; 512a7 (14:52a7) - db "SOULBADGE@" - -RainbowBadgeText: ; 512b1 (14:52b1) - db "RAINBOWBADGE@" - -ThunderBadgeText: ; 512be (14:52be) - db "THUNDERBADGE@" - -CascadeBadgeText: ; 512cb (14:52cb) - db "CASCADEBADGE@" - -Func_512d8: ; 512d8 (14:52d8) - ld a, $1 - ld [$cd38], a - ld a, $80 - ld [$ccd3], a - xor a - ld [$c109], a - ld [wJoypadForbiddenButtonsMask], a - jp Func_3486 - -Route23Script1: ; 512ec (14:52ec) - ld a, [$cd38] - and a - ret nz -Route23Script2: ; 512f1 (14:52f1) - ld a, $0 - ld [W_ROUTE23CURSCRIPT], a - ret - -Route23TextPointers: ; 512f7 (14:52f7) - dw Route23Text1 - dw Route23Text2 - dw Route23Text3 - dw Route23Text4 - dw Route23Text5 - dw Route23Text6 - dw Route23Text7 - dw Route23Text8 - -Route23Text1: ; 51307 (14:5307) - db $08 ; asm - ld a, $6 - call Func_51346 - jp TextScriptEnd - -Route23Text2: ; 51310 (14:5310) - db $08 ; asm - ld a, $5 - call Func_51346 - jp TextScriptEnd - -Route23Text3: ; 51319 (14:5319) - db $08 ; asm - ld a, $4 - call Func_51346 - jp TextScriptEnd - -Route23Text4: ; 51322 (14:5322) - db $08 ; asm - ld a, $3 - call Func_51346 - jp TextScriptEnd - -Route23Text5: ; 5132b (14:532b) - db $08 ; asm - ld a, $2 - call Func_51346 - jp TextScriptEnd - -Route23Text6: ; 51334 (14:5334) - db $08 ; asm - ld a, $1 - call Func_51346 - jp TextScriptEnd - -Route23Text7: ; 5133d (14:533d) - db $8 - ld a, $0 - call Func_51346 - jp TextScriptEnd - -Func_51346: ; 51346 (14:5346) - ld [wWhichTrade], a ; $cd3d - call Func_5125d - ld a, [wWhichTrade] ; $cd3d - inc a - ld c, a - ld b, $2 - ld hl, W_OBTAINEDBADGES - ld a, $10 - call Predef ; indirect jump to HandleBitArray (f666 (3:7666)) - ld a, c - and a - jr nz, .asm_5136e - ld hl, VictoryRoadGuardText1 ; $538e - call PrintText - call Func_512d8 - ld a, $1 - ld [W_ROUTE23CURSCRIPT], a - ret -.asm_5136e - ld hl, VictoryRoadGuardText2 ; $539e - call PrintText - ld a, [wWhichTrade] ; $cd3d - ld c, a - ld b, $1 - ld hl, $d7ed - ld a, $10 - call Predef ; indirect jump to HandleBitArray (f666 (3:7666)) - ld a, $2 - ld [W_ROUTE23CURSCRIPT], a - ret - -Func_51388: ; 51388 (14:5388) - ld hl, VictoryRoadGuardText2 - jp PrintText - -VictoryRoadGuardText1: ; 5138e (14:538e) - TX_FAR _VictoryRoadGuardText1 - db $08 ; asm - ld a, (SFX_02_51 - SFX_Headers_02) / 3 - call PlaySoundWaitForCurrent - call WaitForSoundToFinish - jp TextScriptEnd - -VictoryRoadGuardText2: ; 5139e (14:539e) - TX_FAR _VictoryRoadGuardText2 - db $b - TX_FAR _UnnamedText_513a3 - db "@" - -Route23Text8: ; 513a8 (14:53a8) - TX_FAR _Route23Text8 - db "@" - -Route24Script: ; 513ad (14:53ad) - call EnableAutoTextBoxDrawing - ld hl, Route24TrainerHeaders - ld de, Route24ScriptPointers - ld a, [W_ROUTE24CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_ROUTE24CURSCRIPT], a - ret - -Func_513c0: ; 513c0 (14:53c0) - xor a - ld [wJoypadForbiddenButtonsMask], a - ld [W_ROUTE24CURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -Route24ScriptPointers: ; 513cb (14:53cb) - dw Route24Script0 - dw Func_324c - dw EndTrainerBattle - dw Route24Script3 - dw Route24Script4 - -Route24Script0: ; 513d5 (14:53d5) - ld a, [$d7ef] - bit 0, a - jp nz, CheckFightingMapTrainers - ld hl, CoordsData_5140e ; $540e - call ArePlayerCoordsInArray - jp nc, CheckFightingMapTrainers - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - ld a, $1 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - ld hl, $d7f0 - bit 1, [hl] - res 1, [hl] - ret z - ld a, $80 - ld [$ccd3], a - ld a, $1 - ld [$cd38], a - call Func_3486 - ld a, $4 - ld [W_ROUTE24CURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -CoordsData_5140e: ; 5140e (14:540e) - db $0F,$0A,$FF - -Route24Script4: ; 51411 (14:5411) - ld a, [$cd38] - and a - ret nz - call Delay3 - ld a, $0 - ld [W_ROUTE24CURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -Route24Script3: ; 51422 (14:5422) - ld a, [W_ISINBATTLE] ; $d057 - cp $ff - jp z, Func_513c0 - call UpdateSprites - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - ld hl, $d7ef - set 1, [hl] - ld a, $1 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - xor a - ld [wJoypadForbiddenButtonsMask], a - ld a, $0 - ld [W_ROUTE24CURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -Route24TextPointers: ; 5144b (14:544b) - dw Route24Text1 - dw Route24Text2 - dw Route24Text3 - dw Route24Text4 - dw Route24Text5 - dw Route24Text6 - dw Route24Text7 - dw Predef5CText - -Route24TrainerHeaders: ; 5145b (14:545b) -Route24TrainerHeader0: ; 5145b (14:545b) - db $2 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7ef ; flag's byte - dw Route24BattleText1 ; 0x5571 TextBeforeBattle - dw Route24AfterBattleText1 ; 0x557b TextAfterBattle - dw Route24EndBattleText1 ; 0x5576 TextEndBattle - dw Route24EndBattleText1 ; 0x5576 TextEndBattle - -Route24TrainerHeader2: ; 51467 (14:5467) - db $3 ; flag's bit - db ($1 << 4) ; trainer's view range - dw $d7ef ; flag's byte - dw Route24BattleText2 ; 0x5580 TextBeforeBattle - dw Route24AfterBattleText2 ; 0x558a TextAfterBattle - dw Route24EndBattleText2 ; 0x5585 TextEndBattle - dw Route24EndBattleText2 ; 0x5585 TextEndBattle - -Route24TrainerHeader3: ; 51473 (14:5473) - db $4 ; flag's bit - db ($1 << 4) ; trainer's view range - dw $d7ef ; flag's byte - dw Route24BattleText3 ; 0x558f TextBeforeBattle - dw Route24AfterBattleText3 ; 0x5599 TextAfterBattle - dw Route24EndBattleText3 ; 0x5594 TextEndBattle - dw Route24EndBattleText3 ; 0x5594 TextEndBattle - -Route24TrainerHeader4: ; 5147f (14:547f) - db $5 ; flag's bit - db ($1 << 4) ; trainer's view range - dw $d7ef ; flag's byte - dw Route24BattleText4 ; 0x559e TextBeforeBattle - dw Route24AfterBattleText4 ; 0x55a8 TextAfterBattle - dw Route24EndBattleText4 ; 0x55a3 TextEndBattle - dw Route24EndBattleText4 ; 0x55a3 TextEndBattle - -Route24TrainerHeader5: ; 5148b (14:548b) - db $6 ; flag's bit - db ($1 << 4) ; trainer's view range - dw $d7ef ; flag's byte - dw Route24BattleText5 ; 0x55ad TextBeforeBattle - dw Route24AfterBattleText5 ; 0x55b7 TextAfterBattle - dw Route24EndBattleText5 ; 0x55b2 TextEndBattle - dw Route24EndBattleText5 ; 0x55b2 TextEndBattle - -Route24TrainerHeader6: ; 51497 (14:5497) - db $7 ; flag's bit - db ($1 << 4) ; trainer's view range - dw $d7ef ; flag's byte - dw Route24BattleText6 ; 0x55bc TextBeforeBattle - dw Route24AfterBattleText6 ; 0x55c6 TextAfterBattle - dw Route24EndBattleText6 ; 0x55c1 TextEndBattle - dw Route24EndBattleText6 ; 0x55c1 TextEndBattle - - db $ff - -Route24Text1: ; 514a4 (14:54a4) - db $8 - ld hl, $d7f0 - res 1, [hl] - ld a, [$d7ef] - bit 0, a - jr nz, .asm_a03f5 ; 0x514af $48 - ld hl, UnnamedText_51510 - call PrintText - ld bc, (NUGGET << 8) | 1 - call GiveItem - jr nc, .BagFull - ld hl, $d7ef - set 0, [hl] - ld hl, UnnamedText_5151a - call PrintText - ld hl, UnnamedText_51526 - call PrintText - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, UnnamedText_5152b - ld de, UnnamedText_5152b - call PreBattleSaveRegisters - ld a, [$ff8c] - ld [$cf13], a - call EngageMapTrainer - call InitBattleEnemyParameters - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - ld a, $3 - ld [W_ROUTE24CURSCRIPT], a - ld [W_CURMAPSCRIPT], a - jp TextScriptEnd -.asm_a03f5 ; 0x514f9 - ld hl, UnnamedText_51530 - call PrintText - jp TextScriptEnd -.BagFull - ld hl, UnnamedText_51521 - call PrintText - ld hl, $d7f0 - set 1, [hl] - jp TextScriptEnd - -UnnamedText_51510: ; 51510 (14:5510) - TX_FAR _UnnamedText_51510 ; 0x92721 - db $0B - TX_FAR _UnnamedText_51515 ; 0x92755 - db "@" - -UnnamedText_5151a: ; 5151a (14:551a) - TX_FAR _UnnamedText_5151a ; 0x92779 - db $0B, $6, "@" - -UnnamedText_51521: ; 51521 (14:5521) - TX_FAR _UnnamedText_51521 - db "@" - -UnnamedText_51526: ; 51526 (14:5526) - TX_FAR _UnnamedText_51526 - db "@" - -UnnamedText_5152b: ; 5152b (14:552b) - TX_FAR _UnnamedText_5152b - db "@" - -UnnamedText_51530: ; 51530 (14:5530) - TX_FAR _UnnamedText_51530 - db "@" - -Route24Text2: ; 51535 (14:5535) - db $08 ; asm - ld hl, Route24TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -Route24Text3: ; 5153f (14:553f) - db $08 ; asm - ld hl, Route24TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -Route24Text4: ; 51549 (14:5549) - db $08 ; asm - ld hl, Route24TrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -Route24Text5: ; 51553 (14:5553) - db $08 ; asm - ld hl, Route24TrainerHeader4 - call TalkToTrainer - jp TextScriptEnd - -Route24Text6: ; 5155d (14:555d) - db $08 ; asm - ld hl, Route24TrainerHeader5 - call TalkToTrainer - jp TextScriptEnd - -Route24Text7: ; 51567 (14:5567) - db $08 ; asm - ld hl, Route24TrainerHeader6 - call TalkToTrainer - jp TextScriptEnd - -Route24BattleText1: ; 51571 (14:5571) - TX_FAR _Route24BattleText1 - db "@" - -Route24EndBattleText1: ; 51576 (14:5576) - TX_FAR _Route24EndBattleText1 - db "@" - -Route24AfterBattleText1: ; 5157b (14:557b) - TX_FAR _Route24AfterBattleText1 - db "@" +INCLUDE "scripts/saffroncity.asm" -Route24BattleText2: ; 51580 (14:5580) - TX_FAR _Route24BattleText2 - db "@" +INCLUDE "scripts/route20.asm" -Route24EndBattleText2: ; 51585 (14:5585) - TX_FAR _Route24EndBattleText2 - db "@" +INCLUDE "scripts/route22.asm" -Route24AfterBattleText2: ; 5158a (14:558a) - TX_FAR _Route24AfterBattleText2 - db "@" +INCLUDE "scripts/route23.asm" -Route24BattleText3: ; 5158f (14:558f) - TX_FAR _Route24BattleText3 - db "@" +INCLUDE "scripts/route24.asm" -Route24EndBattleText3: ; 51594 (14:5594) - TX_FAR _Route24EndBattleText3 - db "@" +INCLUDE "scripts/route25.asm" -Route24AfterBattleText3: ; 51599 (14:5599) - TX_FAR _Route24AfterBattleText3 - db "@" +INCLUDE "data/mapHeaders/victoryroad2.asm" -Route24BattleText4: ; 5159e (14:559e) - TX_FAR _Route24BattleText4 - db "@" +INCLUDE "scripts/victoryroad2.asm" -Route24EndBattleText4: ; 515a3 (14:55a3) - TX_FAR _Route24EndBattleText4 - db "@" - -Route24AfterBattleText4: ; 515a8 (14:55a8) - TX_FAR _Route24AfterBattleText4 - db "@" - -Route24BattleText5: ; 515ad (14:55ad) - TX_FAR _Route24BattleText5 - db "@" - -Route24EndBattleText5: ; 515b2 (14:55b2) - TX_FAR _Route24EndBattleText5 - db "@" - -Route24AfterBattleText5: ; 515b7 (14:55b7) - TX_FAR _Route24AfterBattleText5 - db "@" - -Route24BattleText6: ; 515bc (14:55bc) - TX_FAR _Route24BattleText6 - db "@" - -Route24EndBattleText6: ; 515c1 (14:55c1) - TX_FAR _Route24EndBattleText6 - db "@" - -Route24AfterBattleText6: ; 515c6 (14:55c6) - TX_FAR _Route24AfterBattleText6 - db "@" - -Route25Script: ; 515cb (14:55cb) - call Route25Script_515e1 - call EnableAutoTextBoxDrawing - ld hl, Route25TrainerHeaders - ld de, Route25ScriptPointers - ld a, [W_ROUTE25CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_ROUTE25CURSCRIPT], a - ret - -Route25Script_515e1: ; 515e1 (14:55e1) - ld hl, $d126 - bit 6, [hl] - res 6, [hl] - ret z - ld hl, $d7f2 - bit 7, [hl] - ret nz - bit 5, [hl] - jr nz, .asm_515ff - res 6, [hl] - ld a, $61 - ld [$cc4d], a - ld a, $15 - jp Predef ; indirect jump to AddMissableObject (f1c8 (3:71c8)) -.asm_515ff - bit 4, [hl] - ret z - set 7, [hl] - ld a, $24 - ld [$cc4d], a - ld a, $11 - call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7)) - ld a, $62 - ld [$cc4d], a - ld a, $11 - call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7)) - ld a, $63 - ld [$cc4d], a - ld a, $15 - jp Predef ; indirect jump to AddMissableObject (f1c8 (3:71c8)) - -Route25ScriptPointers: ; 51622 (14:5622) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -Route25TextPointers: ; 51628 (14:5628) - dw Route25Text1 - dw Route25Text2 - dw Route25Text3 - dw Route25Text4 - dw Route25Text5 - dw Route25Text6 - dw Route25Text7 - dw Route25Text8 - dw Route25Text9 - dw Predef5CText - dw Route25Text11 - -Route25TrainerHeaders: ; 5163e (14:563e) -Route25TrainerHeader0: ; 5163e (14:563e) - db $1 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7f1 ; flag's byte - dw Route25BattleText1 ; 0x5705 TextBeforeBattle - dw Route25AfterBattleText1 ; 0x570f TextAfterBattle - dw Route25EndBattleText1 ; 0x570a TextEndBattle - dw Route25EndBattleText1 ; 0x570a TextEndBattle - -Route25TrainerHeader2: ; 5164a (14:564a) - db $2 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7f1 ; flag's byte - dw Route25BattleText2 ; 0x5714 TextBeforeBattle - dw Route25AfterBattleText2 ; 0x571e TextAfterBattle - dw Route25EndBattleText2 ; 0x5719 TextEndBattle - dw Route25EndBattleText2 ; 0x5719 TextEndBattle - -Route25TrainerHeader3: ; 51656 (14:5656) - db $3 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7f1 ; flag's byte - dw Route25BattleText3 ; 0x5723 TextBeforeBattle - dw Route25AfterBattleText3 ; 0x572d TextAfterBattle - dw Route25EndBattleText3 ; 0x5728 TextEndBattle - dw Route25EndBattleText3 ; 0x5728 TextEndBattle - -Route25TrainerHeader4: ; 51662 (14:5662) - db $4 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7f1 ; flag's byte - dw Route25BattleText4 ; 0x5732 TextBeforeBattle - dw Route25AfterBattleText4 ; 0x573c TextAfterBattle - dw Route25EndBattleText4 ; 0x5737 TextEndBattle - dw Route25EndBattleText4 ; 0x5737 TextEndBattle - -Route25TrainerHeader5: ; 5166e (14:566e) - db $5 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7f1 ; flag's byte - dw Route25BattleText5 ; 0x5741 TextBeforeBattle - dw Route25AfterBattleText5 ; 0x574b TextAfterBattle - dw Route25EndBattleText5 ; 0x5746 TextEndBattle - dw Route25EndBattleText5 ; 0x5746 TextEndBattle - -Route25TrainerHeader6: ; 5167a (14:567a) - db $6 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7f1 ; flag's byte - dw Route25BattleText6 ; 0x5750 TextBeforeBattle - dw Route25AfterBattleText6 ; 0x575a TextAfterBattle - dw Route25EndBattleText6 ; 0x5755 TextEndBattle - dw Route25EndBattleText6 ; 0x5755 TextEndBattle - -Route25TrainerHeader7: ; 51686 (14:5686) - db $7 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7f1 ; flag's byte - dw Route25BattleText7 ; 0x575f TextBeforeBattle - dw Route25AfterBattleText7 ; 0x5769 TextAfterBattle - dw Route25EndBattleText7 ; 0x5764 TextEndBattle - dw Route25EndBattleText7 ; 0x5764 TextEndBattle - -Route25TrainerHeader8: ; 51692 (14:5692) - db $8 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7f1 ; flag's byte - dw Route25BattleText8 ; 0x576e TextBeforeBattle - dw Route25AfterBattleText8 ; 0x5778 TextAfterBattle - dw Route25EndBattleText8 ; 0x5773 TextEndBattle - dw Route25EndBattleText8 ; 0x5773 TextEndBattle - -Route25TrainerHeader9: ; 5169e (14:569e) - db $9 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7f1 ; flag's byte - dw Route25BattleText9 ; 0x577d TextBeforeBattle - dw Route25AfterBattleText9 ; 0x5787 TextAfterBattle - dw Route25EndBattleText9 ; 0x5782 TextEndBattle - dw Route25EndBattleText9 ; 0x5782 TextEndBattle - - db $ff - -Route25Text1: ; 516ab (14:56ab) - db $08 ; asm - ld hl, Route25TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -Route25Text2: ; 516b5 (14:56b5) - db $08 ; asm - ld hl, Route25TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -Route25Text3: ; 516bf (14:56bf) - db $08 ; asm - ld hl, Route25TrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -Route25Text4: ; 516c9 (14:56c9) - db $08 ; asm - ld hl, Route25TrainerHeader4 - call TalkToTrainer - jp TextScriptEnd - -Route25Text5: ; 516d3 (14:56d3) - db $08 ; asm - ld hl, Route25TrainerHeader5 - call TalkToTrainer - jp TextScriptEnd - -Route25Text6: ; 516dd (14:56dd) - db $08 ; asm - ld hl, Route25TrainerHeader6 - call TalkToTrainer - jp TextScriptEnd - -Route25Text7: ; 516e7 (14:56e7) - db $08 ; asm - ld hl, Route25TrainerHeader7 - call TalkToTrainer - jp TextScriptEnd - -Route25Text8: ; 516f1 (14:56f1) - db $08 ; asm - ld hl, Route25TrainerHeader8 - call TalkToTrainer - jp TextScriptEnd - -Route25Text9: ; 516fb (14:56fb) - db $08 ; asm - ld hl, Route25TrainerHeader9 - call TalkToTrainer - jp TextScriptEnd - -Route25BattleText1: ; 51705 (14:5705) - TX_FAR _Route25BattleText1 - db "@" - -Route25EndBattleText1: ; 5170a (14:570a) - TX_FAR _Route25EndBattleText1 - db "@" - -Route25AfterBattleText1: ; 5170f (14:570f) - TX_FAR _Route25AfterBattleText1 - db "@" - -Route25BattleText2: ; 51714 (14:5714) - TX_FAR _Route25BattleText2 - db "@" - -Route25EndBattleText2: ; 51719 (14:5719) - TX_FAR _Route25EndBattleText2 - db "@" - -Route25AfterBattleText2: ; 5171e (14:571e) - TX_FAR _Route25AfterBattleText2 - db "@" - -Route25BattleText3: ; 51723 (14:5723) - TX_FAR _Route25BattleText3 - db "@" - -Route25EndBattleText3: ; 51728 (14:5728) - TX_FAR _Route25EndBattleText3 - db "@" - -Route25AfterBattleText3: ; 5172d (14:572d) - TX_FAR _Route25AfterBattleText3 - db "@" - -Route25BattleText4: ; 51732 (14:5732) - TX_FAR _Route25BattleText4 - db "@" - -Route25EndBattleText4: ; 51737 (14:5737) - TX_FAR _Route25EndBattleText4 - db "@" - -Route25AfterBattleText4: ; 5173c (14:573c) - TX_FAR _Route25AfterBattleText4 - db "@" - -Route25BattleText5: ; 51741 (14:5741) - TX_FAR _Route25BattleText5 - db "@" - -Route25EndBattleText5: ; 51746 (14:5746) - TX_FAR _Route25EndBattleText5 - db "@" - -Route25AfterBattleText5: ; 5174b (14:574b) - TX_FAR _Route25AfterBattleText5 - db "@" - -Route25BattleText6: ; 51750 (14:5750) - TX_FAR _Route25BattleText6 - db "@" - -Route25EndBattleText6: ; 51755 (14:5755) - TX_FAR _Route25EndBattleText6 - db "@" - -Route25AfterBattleText6: ; 5175a (14:575a) - TX_FAR _Route25AfterBattleText6 - db "@" - -Route25BattleText7: ; 5175f (14:575f) - TX_FAR _Route25BattleText7 - db "@" - -Route25EndBattleText7: ; 51764 (14:5764) - TX_FAR _Route25EndBattleText7 - db "@" - -Route25AfterBattleText7: ; 51769 (14:5769) - TX_FAR _Route25AfterBattleText7 - db "@" - -Route25BattleText8: ; 5176e (14:576e) - TX_FAR _Route25BattleText8 - db "@" - -Route25EndBattleText8: ; 51773 (14:5773) - TX_FAR _Route25EndBattleText8 - db "@" - -Route25AfterBattleText8: ; 51778 (14:5778) - TX_FAR _Route25AfterBattleText8 - db "@" - -Route25BattleText9: ; 5177d (14:577d) - TX_FAR _Route25BattleText9 - db "@" - -Route25EndBattleText9: ; 51782 (14:5782) - TX_FAR _Route25EndBattleText9 - db "@" - -Route25AfterBattleText9: ; 51787 (14:5787) - TX_FAR _Route25AfterBattleText9 - db "@" - -Route25Text11: ; 5178c (14:578c) - TX_FAR _Route25Text11 - db "@" - -VictoryRoad2_h: ; 0x51791 to 0x5179d (12 bytes) (id=194) - db CAVERN ; tileset - db VICTORY_ROAD_2_HEIGHT, VICTORY_ROAD_2_WIDTH ; dimensions (y, x) - dw VictoryRoad2Blocks, VictoryRoad2TextPointers, VictoryRoad2Script ; blocks, texts, scripts - db $00 ; connections - dw VictoryRoad2Object ; objects - -VictoryRoad2Script: ; 5179d (14:579d) - ld hl, $d126 - bit 6, [hl] - res 6, [hl] - call nz, VictoryRoad2Script_517c4 - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - call nz, Func_517c9 - call EnableAutoTextBoxDrawing - ld hl, VictoryRoad2TrainerHeaders - ld de, VictoryRoad2ScriptPointers - ld a, [W_VICTORYROAD2CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_VICTORYROAD2CURSCRIPT], a - ret - -VictoryRoad2Script_517c4: ; 517c4 (14:57c4) - ld hl, $d869 - res 7, [hl] - -Func_517c9: ; 517c9 (14:57c9) - ld a, [$d7ee] - bit 0, a - jr z, .asm_517da - push af - ld a, $15 - ld bc, $403 - call Func_517e2 - pop af -.asm_517da - bit 7, a - ret z - ld a, $1d - ld bc, $70b - -Func_517e2: ; 517e2 (14:57e2) - ld [$d09f], a - ld a, $17 - call Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) - ret - -VictoryRoad2ScriptPointers: ; 517eb (14:57eb) - dw VictoryRoad2Script0 - dw Func_324c - dw EndTrainerBattle - -VictoryRoad2Script0: ; 517f1 (14:57f1) - ld hl, CoordsData_51816 ; $5816 - call CheckBoulderCoords - jp nc, CheckFightingMapTrainers - ld hl, $d7ee - ld a, [wWhichTrade] ; $cd3d - cp $2 - jr z, .asm_5180b - bit 0, [hl] - set 0, [hl] - ret nz - jr .asm_51810 -.asm_5180b - bit 7, [hl] - set 7, [hl] - ret nz -.asm_51810 - ld hl, $d126 - set 5, [hl] - ret - -CoordsData_51816: ; 51816 (14:5816) - db $10,$01 - db $10,$09 - db $FF - -VictoryRoad2TextPointers: ; 5181b (14:581b) - dw VictoryRoad2Text1 - dw VictoryRoad2Text2 - dw VictoryRoad2Text3 - dw VictoryRoad2Text4 - dw VictoryRoad2Text5 - dw VictoryRoad2Text6 - dw Predef5CText - dw Predef5CText - dw Predef5CText - dw Predef5CText - dw BoulderText - dw BoulderText - dw BoulderText - -VictoryRoad2TrainerHeaders: ; 51835 (14:5835) -VictoryRoad2TrainerHeader0: ; 51835 (14:5835) - db $1 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7ee ; flag's byte - dw VictoryRoad2BattleText1 ; 0x58ca TextBeforeBattle - dw VictoryRoad2AfterBattleText1 ; 0x58d4 TextAfterBattle - dw VictoryRoad2EndBattleText1 ; 0x58cf TextEndBattle - dw VictoryRoad2EndBattleText1 ; 0x58cf TextEndBattle - -VictoryRoad2TrainerHeader2: ; 51841 (14:5841) - db $2 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7ee ; flag's byte - dw VictoryRoad2BattleText2 ; 0x58d9 TextBeforeBattle - dw VictoryRoad2AfterBattleText2 ; 0x58e3 TextAfterBattle - dw VictoryRoad2EndBattleText2 ; 0x58de TextEndBattle - dw VictoryRoad2EndBattleText2 ; 0x58de TextEndBattle - -VictoryRoad2TrainerHeader3: ; 5184d (14:584d) - db $3 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7ee ; flag's byte - dw VictoryRoad2BattleText3 ; 0x58e8 TextBeforeBattle - dw VictoryRoad2AfterBattleText3 ; 0x58f2 TextAfterBattle - dw VictoryRoad2EndBattleText3 ; 0x58ed TextEndBattle - dw VictoryRoad2EndBattleText3 ; 0x58ed TextEndBattle - -VictoryRoad2TrainerHeader4: ; 51859 (14:5859) - db $4 ; flag's bit - db ($1 << 4) ; trainer's view range - dw $d7ee ; flag's byte - dw VictoryRoad2BattleText4 ; 0x58f7 TextBeforeBattle - dw VictoryRoad2AfterBattleText4 ; 0x5901 TextAfterBattle - dw VictoryRoad2EndBattleText4 ; 0x58fc TextEndBattle - dw VictoryRoad2EndBattleText4 ; 0x58fc TextEndBattle - -VictoryRoad2TrainerHeader5: ; 51865 (14:5865) - db $5 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7ee ; flag's byte - dw VictoryRoad2BattleText5 ; 0x5906 TextBeforeBattle - dw VictoryRoad2AfterBattleText5 ; 0x5910 TextAfterBattle - dw VictoryRoad2EndBattleText5 ; 0x590b TextEndBattle - dw VictoryRoad2EndBattleText5 ; 0x590b TextEndBattle - -VictoryRoad2TrainerHeader6: ; 51871 (14:5871) - db $6 ; flag's bit - db ($0 << 4) ; trainer's view range - dw $d7ee ; flag's byte - dw VictoryRoad2BattleText6 ; 0x58ba TextBeforeBattle - dw VictoryRoad2BattleText6 ; 0x58ba TextAfterBattle - dw VictoryRoad2BattleText6 ; 0x58ba TextEndBattle - dw VictoryRoad2BattleText6 ; 0x58ba TextEndBattle - - db $ff - -VictoryRoad2Text1: ; 5187e (14:587e) - db $08 ; asm - ld hl, VictoryRoad2TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -VictoryRoad2Text2: ; 51888 (14:5888) - db $08 ; asm - ld hl, VictoryRoad2TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -VictoryRoad2Text3: ; 51892 (14:5892) - db $08 ; asm - ld hl, VictoryRoad2TrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -VictoryRoad2Text4: ; 5189c (14:589c) - db $08 ; asm - ld hl, VictoryRoad2TrainerHeader4 - call TalkToTrainer - jp TextScriptEnd - -VictoryRoad2Text5: ; 518a6 (14:58a6) - db $08 ; asm - ld hl, VictoryRoad2TrainerHeader5 - call TalkToTrainer - jp TextScriptEnd - -VictoryRoad2Text6: ; 518b0 (14:58b0) - db $08 ; asm - ld hl, VictoryRoad2TrainerHeader6 - call TalkToTrainer - jp TextScriptEnd - -VictoryRoad2BattleText6: ; 518ba (14:58ba) - TX_FAR _VictoryRoad2BattleText6 ; 0x8d06e - db $8 - ld a, MOLTRES - call PlayCry - call WaitForSoundToFinish - jp TextScriptEnd - -VictoryRoad2BattleText1: ; 518ca (14:58ca) - TX_FAR _VictoryRoad2BattleText1 - db "@" - -VictoryRoad2EndBattleText1: ; 518cf (14:58cf) - TX_FAR _VictoryRoad2EndBattleText1 - db "@" - -VictoryRoad2AfterBattleText1: ; 518d4 (14:58d4) - TX_FAR _VictoryRoad2AfterBattleText1 - db "@" - -VictoryRoad2BattleText2: ; 518d9 (14:58d9) - TX_FAR _VictoryRoad2BattleText2 - db "@" - -VictoryRoad2EndBattleText2: ; 518de (14:58de) - TX_FAR _VictoryRoad2EndBattleText2 - db "@" - -VictoryRoad2AfterBattleText2: ; 518e3 (14:58e3) - TX_FAR _VictoryRoad2AfterBattleText2 - db "@" - -VictoryRoad2BattleText3: ; 518e8 (14:58e8) - TX_FAR _VictoryRoad2BattleText3 - db "@" - -VictoryRoad2EndBattleText3: ; 518ed (14:58ed) - TX_FAR _VictoryRoad2EndBattleText3 - db "@" - -VictoryRoad2AfterBattleText3: ; 518f2 (14:58f2) - TX_FAR _VictoryRoad2AfterBattleText3 - db "@" - -VictoryRoad2BattleText4: ; 518f7 (14:58f7) - TX_FAR _VictoryRoad2BattleText4 - db "@" - -VictoryRoad2EndBattleText4: ; 518fc (14:58fc) - TX_FAR _VictoryRoad2EndBattleText4 - db "@" - -VictoryRoad2AfterBattleText4: ; 51901 (14:5901) - TX_FAR _VictoryRoad2AfterBattleText4 - db "@" - -VictoryRoad2BattleText5: ; 51906 (14:5906) - TX_FAR _VictoryRoad2BattleText5 - db "@" - -VictoryRoad2EndBattleText5: ; 5190b (14:590b) - TX_FAR _VictoryRoad2EndBattleText5 - db "@" - -VictoryRoad2AfterBattleText5: ; 51910 (14:5910) - TX_FAR _VictoryRoad2AfterBattleText5 - db "@" - -VictoryRoad2Object: ; 0x51915 (size=154) - db $7d ; border tile - - db $7 ; warps - db $8, $0, $2, VICTORY_ROAD_1 - db $7, $1d, $3, $ff - db $8, $1d, $3, $ff - db $7, $17, $0, VICTORY_ROAD_3 - db $e, $19, $2, VICTORY_ROAD_3 - db $7, $1b, $1, VICTORY_ROAD_3 - db $1, $1, $3, VICTORY_ROAD_3 - - db $0 ; signs - - db $d ; people - db SPRITE_HIKER, $9 + 4, $c + 4, $ff, $d2, $41, BLACKBELT + $C8, $9 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $d + 4, $15 + 4, $ff, $d2, $42, JUGGLER + $C8, $2 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $8 + 4, $13 + 4, $ff, $d0, $43, TAMER + $C8, $5 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $2 + 4, $4 + 4, $ff, $d0, $44, POKEMANIAC + $C8, $6 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $3 + 4, $1a + 4, $ff, $d2, $45, JUGGLER + $C8, $5 ; trainer - db SPRITE_BIRD, $5 + 4, $b + 4, $ff, $d1, $46, MOLTRES, 50 ; trainer - db SPRITE_BALL, $5 + 4, $1b + 4, $ff, $ff, $87, TM_17 ; item - db SPRITE_BALL, $9 + 4, $12 + 4, $ff, $ff, $88, FULL_HEAL ; item - db SPRITE_BALL, $b + 4, $9 + 4, $ff, $ff, $89, TM_05 ; item - db SPRITE_BALL, $0 + 4, $b + 4, $ff, $ff, $8a, GUARD_SPEC_ ; item - db SPRITE_BOULDER, $e + 4, $4 + 4, $ff, $10, $b ; person - db SPRITE_BOULDER, $5 + 4, $5 + 4, $ff, $10, $c ; person - db SPRITE_BOULDER, $10 + 4, $17 + 4, $ff, $10, $d ; person - - ; warp-to - EVENT_DISP VICTORY_ROAD_2_WIDTH, $8, $0 ; VICTORY_ROAD_1 - EVENT_DISP VICTORY_ROAD_2_WIDTH, $7, $1d - EVENT_DISP VICTORY_ROAD_2_WIDTH, $8, $1d - EVENT_DISP VICTORY_ROAD_2_WIDTH, $7, $17 ; VICTORY_ROAD_3 - EVENT_DISP VICTORY_ROAD_2_WIDTH, $e, $19 ; VICTORY_ROAD_3 - EVENT_DISP VICTORY_ROAD_2_WIDTH, $7, $1b ; VICTORY_ROAD_3 - EVENT_DISP VICTORY_ROAD_2_WIDTH, $1, $1 ; VICTORY_ROAD_3 +INCLUDE "data/mapObjects/victoryroad2.asm" VictoryRoad2Blocks: ; 519af (14:59af) INCBIN "maps/victoryroad2.blk" -MtMoon2_h: ; 0x51a36 to 0x51a42 (12 bytes) (id=60) - db CAVERN ; tileset - db MT_MOON_2_HEIGHT, MT_MOON_2_WIDTH ; dimensions (y, x) - dw MtMoon2Blocks, MtMoon2TextPointers, MtMoon2Script ; blocks, texts, scripts - db $00 ; connections - dw MtMoon2Object ; objects +INCLUDE "data/mapHeaders/mtmoon2.asm" -MtMoon2Script: ; 51a42 (14:5a42) - call EnableAutoTextBoxDrawing - ret - -MtMoon2TextPointers: ; 51a46 (14:5a46) - dw MtMoonText1 - -MtMoonText1: ; 51a48 (14:5a48) - TX_FAR _UnnamedText_51a48 - db "@" +INCLUDE "scripts/mtmoon2.asm" -MtMoon2Object: ; 0x51a4d (size=68) - db $3 ; border tile - - db $8 ; warps - db $5, $5, $2, MT_MOON_1 - db $b, $11, $0, MT_MOON_3 - db $9, $19, $3, MT_MOON_1 - db $f, $19, $4, MT_MOON_1 - db $11, $15, $1, MT_MOON_3 - db $1b, $d, $2, MT_MOON_3 - db $3, $17, $3, MT_MOON_3 - db $3, $1b, $2, $ff - - db $0 ; signs - - db $0 ; people - - ; warp-to - EVENT_DISP MT_MOON_2_WIDTH, $5, $5 ; MT_MOON_1 - EVENT_DISP MT_MOON_2_WIDTH, $b, $11 ; MT_MOON_3 - EVENT_DISP MT_MOON_2_WIDTH, $9, $19 ; MT_MOON_1 - EVENT_DISP MT_MOON_2_WIDTH, $f, $19 ; MT_MOON_1 - EVENT_DISP MT_MOON_2_WIDTH, $11, $15 ; MT_MOON_3 - EVENT_DISP MT_MOON_2_WIDTH, $1b, $d ; MT_MOON_3 - EVENT_DISP MT_MOON_2_WIDTH, $3, $17 ; MT_MOON_3 - EVENT_DISP MT_MOON_2_WIDTH, $3, $1b +INCLUDE "data/mapObjects/mtmoon2.asm" MtMoon2Blocks: ; 51a91 (14:5a91) INCBIN "maps/mtmoon2.blk" -SilphCo7_h: ; 0x51b55 to 0x51b61 (12 bytes) (id=212) - db FACILITY ; tileset - db SILPH_CO_7F_HEIGHT, SILPH_CO_7F_WIDTH ; dimensions (y, x) - dw SilphCo7Blocks, SilphCo7TextPointers, SilphCo7Script ; blocks, texts, scripts - db $00 ; connections - dw SilphCo7Object ; objects +INCLUDE "data/mapHeaders/silphco7.asm" -SilphCo7Script: ; 51b61 (14:5b61) - call SilphCo7Script_51b77 - call EnableAutoTextBoxDrawing - ld hl, SilphCo7TrainerHeaders - ld de, SilphCo7ScriptPointers - ld a, [W_SILPHCO7CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_SILPHCO7CURSCRIPT], a - ret +INCLUDE "scripts/silphco7.asm" -SilphCo7Script_51b77: ; 51b77 (14:5b77) - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - ret z - ld hl, DataTable_51bc1 ; $5bc1 - call Func_51bc8 - call Func_51bf4 - ld a, [$d830] - bit 4, a - jr nz, .asm_51b9e - push af - ld a, $54 - ld [$d09f], a - ld bc, $305 - ld a, $17 - call Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) - pop af -.asm_51b9e - bit 5, a - jr nz, .asm_51bb1 - push af - ld a, $54 - ld [$d09f], a - ld bc, $20a - ld a, $17 - call Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) - pop af -.asm_51bb1 - bit 6, a - ret nz - ld a, $54 - ld [$d09f], a - ld bc, $60a - ld a, $17 - jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) - -DataTable_51bc1: ; 51bc1 (14:5bc1) - db $03,$05,$02,$0A,$06,$0A,$FF - -Func_51bc8: ; 51bc8 (14:5bc8) - push hl - ld hl, $d73f - ld a, [hli] - ld b, a - ld a, [hl] - ld c, a - xor a - ld [$ffe0], a - pop hl -.asm_51bd4 - ld a, [hli] - cp $ff - jr z, .asm_51bf0 - push hl - ld hl, $ffe0 - inc [hl] - pop hl - cp b - jr z, .asm_51be5 - inc hl - jr .asm_51bd4 -.asm_51be5 - ld a, [hli] - cp c - jr nz, .asm_51bd4 - ld hl, $d73f - xor a - ld [hli], a - ld [hl], a - ret -.asm_51bf0 - xor a - ld [$ffe0], a - ret - -Func_51bf4: ; 51bf4 (14:5bf4) - ld hl, $d830 - ld a, [$ffe0] - and a - ret z - cp $1 - jr nz, .asm_51c02 - set 4, [hl] - ret -.asm_51c02 - cp $2 - jr nz, .asm_51c09 - set 5, [hl] - ret -.asm_51c09 - set 6, [hl] - ret - -Func_51c0c: ; 51c0c (14:5c0c) - xor a - ld [wJoypadForbiddenButtonsMask], a - -Func_51c10: ; 51c10 (14:5c10) - ld [W_SILPHCO7CURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -SilphCo7ScriptPointers: ; 51c17 (14:5c17) - dw SilphCo7Script0 - dw Func_324c - dw EndTrainerBattle - dw SilphCo7Script3 - dw SilphCo7Script4 - dw SilphCo7Script5 - -SilphCo7Script0: ; 51c23 (14:5c23) - ld a, [$d82f] - bit 0, a - jp nz, CheckFightingMapTrainers - ld hl, CoordsData_51c78 - call ArePlayerCoordsInArray - jp nc, CheckFightingMapTrainers - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - ld a, $4 - ld [$d528], a - ld a, $ff - ld [$c0ee], a - call PlaySound - ld c, BANK(Music_MeetRival) - ld a, MUSIC_MEET_RIVAL - call PlayMusic - ld a, $9 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - ld a, $9 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call SetSpriteMovementBytesToFF - ld de, MovementData_51c7d - ld a, [wWhichTrade] ; $cd3d - ld [$cf0d], a - cp $1 - jr z, .asm_51c6c - inc de -.asm_51c6c - ld a, $9 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call MoveSprite - ld a, $3 - jp Func_51c10 - -CoordsData_51c78: ; 51c78 (14:5c78) - db $02,$03 - db $03,$03 - db $FF - -MovementData_51c7d: ; 51c7d (14:5c7d) - db $40,$40,$40,$40,$FF - -SilphCo7Script3: ; 51c82 (14:5c82) - ld a, [$d730] - bit 0, a - ret nz - xor a - ld [wJoypadForbiddenButtonsMask], a - ld a, $d - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - call Delay3 - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, SilphCo7Text14 ; $5ec8 - ld de, UnnamedText_51ecd ; $5ecd - call PreBattleSaveRegisters - ld a, $f2 - ld [W_CUROPPONENT], a ; $d059 - ld a, [W_RIVALSTARTER] ; $d715 - cp $b1 - jr nz, .asm_51cb6 - ld a, $7 - jr .asm_51cc0 -.asm_51cb6 - cp $99 - jr nz, .asm_51cbe - ld a, $8 - jr .asm_51cc0 -.asm_51cbe - ld a, $9 -.asm_51cc0 - ld [W_TRAINERNO], a ; $d05d - ld a, $4 - jp Func_51c10 - -SilphCo7Script4: ; 51cc8 (14:5cc8) - ld a, [W_ISINBATTLE] ; $d057 - cp $ff - jp z, Func_51c0c - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - ld hl, $d82f - set 0, [hl] - ld a, $4 - ld [$d528], a - ld a, $9 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - ld a, $4 - ld [$ff8d], a - call Func_34a6 - ld a, $f - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - ld a, $ff - ld [$c0ee], a - call PlaySound - callba Music_RivalAlternateStart - ld de, MovementData_51d1d - ld a, [$cf0d] - cp $1 - jr nz, .asm_51d0e - ld de, MovementData_51d1a -.asm_51d0e - ld a, $9 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call MoveSprite - ld a, $5 - jp Func_51c10 - -MovementData_51d1a: ; 51d1a (14:5d1a) - db $C0,$C0,$FF - -MovementData_51d1d: ; 51d1d (14:5d1d) - db $80,$40,$40,$C0,$C0,$C0,$00,$FF - -SilphCo7Script5: ; 51d25 (14:5d25) - ld a, [$d730] - bit 0, a - ret nz - ld a, $a7 - ld [$cc4d], a - ld a, $11 - call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7)) - call Func_2307 - xor a - ld [wJoypadForbiddenButtonsMask], a - jp Func_51c10 - -SilphCo7TextPointers: ; 51d3f (14:5d3f) - dw SilphCo7Text1 - dw SilphCo7Text2 - dw SilphCo7Text3 - dw SilphCo7Text4 - dw SilphCo7Text5 - dw SilphCo7Text6 - dw SilphCo7Text7 - dw SilphCo7Text8 - dw SilphCo7Text9 - dw Predef5CText - dw Predef5CText - dw Predef5CText - dw SilphCo7Text13 - dw SilphCo7Text14 - dw SilphCo7Text15 - -SilphCo7TrainerHeaders: ; 51d5d (14:5d5d) -SilphCo7TrainerHeader0: ; 51d5d (14:5d5d) - db $5 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d82f ; flag's byte - dw SilphCo7BattleText1 ; 0x5e5a TextBeforeBattle - dw SilphCo7AfterBattleText1 ; 0x5e64 TextAfterBattle - dw SilphCo7EndBattleText1 ; 0x5e5f TextEndBattle - dw SilphCo7EndBattleText1 ; 0x5e5f TextEndBattle - -SilphCo7TrainerHeader2: ; 51d69 (14:5d69) - db $6 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d82f ; flag's byte - dw SilphCo7BattleText2 ; 0x5e73 TextBeforeBattle - dw SilphCo7AfterBattleText2 ; 0x5e7d TextAfterBattle - dw SilphCo7EndBattleText2 ; 0x5e78 TextEndBattle - dw SilphCo7EndBattleText2 ; 0x5e78 TextEndBattle - -SilphCo7TrainerHeader3: ; 51d75 (14:5d75) - db $7 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d82f ; flag's byte - dw SilphCo7BattleText3 ; 0x5e8c TextBeforeBattle - dw SilphCo7AfterBattleText3 ; 0x5e96 TextAfterBattle - dw SilphCo7EndBattleText3 ; 0x5e91 TextEndBattle - dw SilphCo7EndBattleText3 ; 0x5e91 TextEndBattle - -SilphCo7TrainerHeader4: ; 51d81 (14:5d81) - db $8 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d82f ; flag's byte - dw SilphCo7BattleText4 ; 0x5ea5 TextBeforeBattle - dw SilphCo7AfterBattleText4 ; 0x5eaf TextAfterBattle - dw SilphCo7EndBattleText4 ; 0x5eaa TextEndBattle - dw SilphCo7EndBattleText4 ; 0x5eaa TextEndBattle - - db $ff - -SilphCo7Text1: -; lapras guy - db $08 ; asm - ld a, [$d72e] - bit 0, a ; got lapras? - jr z, .givelapras - ld a, [$d838] - bit 7, a ; saved silph? - jr nz, .savedsilph - ld hl, .LaprasGuyText - call PrintText - jr .done -.givelapras - ld hl, .MeetLaprasGuyText - call PrintText - ld bc, (LAPRAS << 8) | 15 - call GivePokemon - jr nc, .done - ld a, [$ccd3] - and a - call z, WaitForTextScrollButtonPress - call EnableAutoTextBoxDrawing - ld hl, .HeresYourLaprasText - call PrintText - ld hl, $d72e - set 0, [hl] - jr .done -.savedsilph - ld hl, .LaprasGuySavedText - call PrintText -.done - jp TextScriptEnd - -.MeetLaprasGuyText - TX_FAR _MeetLaprasGuyText - db "@" - -.HeresYourLaprasText - TX_FAR _HeresYourLaprasText - db "@" - -.LaprasGuyText - TX_FAR _LaprasGuyText - db "@" - -.LaprasGuySavedText - TX_FAR _LaprasGuySavedText - db "@" - -SilphCo7Text2: - db $8 - ld a, [$d838] - bit 7, a ; saved silph? - jr nz, .savedsilph - ld hl, .rockettext - call PrintText - jr .done -.savedsilph - ld hl, .savedtext - call PrintText -.done - jp TextScriptEnd - -.rockettext - TX_FAR _UnnamedText_51e00 - db "@" - -.savedtext - TX_FAR _CanceledMasterBallText - db "@" - -SilphCo7Text3: - db $08 ; asm - ld a, [$d838] - bit 7, a ; saved silph? - jr nz, .savedsilph - ld hl, .rockettext - call PrintText - jr .done -.savedsilph - ld hl, .savedtext - call PrintText -.done - jp TextScriptEnd - -.rockettext - TX_FAR _UnnamedText_51e23 - db "@" - -.savedtext - TX_FAR _UnnamedText_51e28 - db "@" - -SilphCo7Text4: - db $08 ; asm - ld a, [$d838] - bit 7, a ; saved silph? - jr nz, .savedsilph - ld hl, .rockettext - call PrintText - jr .done -.savedsilph - ld hl, .savedtext - call PrintText -.done - jp TextScriptEnd - -.rockettext - TX_FAR _UnnamedText_51e46 - db "@" - -.savedtext - TX_FAR _UnnamedText_51e4b - db "@" - -SilphCo7Text5: ; 51e50 (14:5e50) - db $08 ; asm - ld hl, SilphCo7TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -SilphCo7BattleText1: ; 51e5a (14:5e5a) - TX_FAR _SilphCo7BattleText1 - db "@" - -SilphCo7EndBattleText1: ; 51e5f (14:5e5f) - TX_FAR _SilphCo7EndBattleText1 - db "@" - -SilphCo7AfterBattleText1: ; 51e64 (14:5e64) - TX_FAR _SilphCo7AfterBattleText1 - db "@" - -SilphCo7Text6: ; 51e69 (14:5e69) - db $08 ; asm - ld hl, SilphCo7TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -SilphCo7BattleText2: ; 51e73 (14:5e73) - TX_FAR _SilphCo7BattleText2 - db "@" - -SilphCo7EndBattleText2: ; 51e78 (14:5e78) - TX_FAR _SilphCo7EndBattleText2 - db "@" - -SilphCo7AfterBattleText2: ; 51e7d (14:5e7d) - TX_FAR _SilphCo7AfterBattleText2 - db "@" - -SilphCo7Text7: ; 51e82 (14:5e82) - db $08 ; asm - ld hl, SilphCo7TrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -SilphCo7BattleText3: ; 51e8c (14:5e8c) - TX_FAR _SilphCo7BattleText3 - db "@" - -SilphCo7EndBattleText3: ; 51e91 (14:5e91) - TX_FAR _SilphCo7EndBattleText3 - db "@" - -SilphCo7AfterBattleText3: ; 51e96 (14:5e96) - TX_FAR _SilphCo7AfterBattleText3 - db "@" - -SilphCo7Text8: ; 51e9b (14:5e9b) - db $08 ; asm - ld hl, SilphCo7TrainerHeader4 - call TalkToTrainer - jp TextScriptEnd - -SilphCo7BattleText4: ; 51ea5 (14:5ea5) - TX_FAR _SilphCo7BattleText4 - db "@" - -SilphCo7EndBattleText4: ; 51eaa (14:5eaa) - TX_FAR _SilphCo7EndBattleText4 - db "@" - -SilphCo7AfterBattleText4: ; 51eaf (14:5eaf) - TX_FAR _SilphCo7AfterBattleText4 - db "@" - -SilphCo7Text9: ; 51eb4 (14:5eb4) - db $08 ; asm - ld hl, UnnamedText_51ebe - call PrintText - jp TextScriptEnd - -UnnamedText_51ebe: ; 51ebe (14:5ebe) - TX_FAR _UnnamedText_51ebe - db "@" - -SilphCo7Text13: ; 51ec3 (14:5ec3) - TX_FAR _UnnamedText_51ec3 - db "@" - -SilphCo7Text14: ; 51ec8 (14:5ec8) - TX_FAR _UnnamedText_51ec8 - db "@" - -UnnamedText_51ecd: ; 51ecd (14:5ecd) - TX_FAR _UnnamedText_51ecd - db "@" - -SilphCo7Text15: ; 51ed2 (14:5ed2) - TX_FAR _UnnamedText_51ed2 - db "@" - -SilphCo7Object: ; 0x51ed7 (size=128) - db $2e ; border tile - - db $6 ; warps - db $0, $10, $1, SILPH_CO_8F - db $0, $16, $0, SILPH_CO_6F - db $0, $12, $0, SILPH_CO_ELEVATOR - db $7, $5, $3, SILPH_CO_11F - db $3, $5, $8, SILPH_CO_3F - db $f, $15, $3, SILPH_CO_5F - - db $0 ; signs - - db $b ; people - db SPRITE_LAPRAS_GIVER, $5 + 4, $1 + 4, $ff, $ff, $1 ; person - db SPRITE_LAPRAS_GIVER, $d + 4, $d + 4, $ff, $d1, $2 ; person - db SPRITE_LAPRAS_GIVER, $a + 4, $7 + 4, $ff, $ff, $3 ; person - db SPRITE_ERIKA, $8 + 4, $a + 4, $ff, $ff, $4 ; person - db SPRITE_ROCKET, $1 + 4, $d + 4, $ff, $d0, $45, ROCKET + $C8, $20 ; trainer - db SPRITE_OAK_AIDE, $d + 4, $2 + 4, $ff, $d0, $46, SCIENTIST + $C8, $8 ; trainer - db SPRITE_ROCKET, $2 + 4, $14 + 4, $ff, $d2, $47, ROCKET + $C8, $21 ; trainer - db SPRITE_ROCKET, $e + 4, $13 + 4, $ff, $d3, $48, ROCKET + $C8, $22 ; trainer - db SPRITE_BLUE, $7 + 4, $3 + 4, $ff, $d1, $9 ; person - db SPRITE_BALL, $9 + 4, $1 + 4, $ff, $ff, $8a, CALCIUM ; item - db SPRITE_BALL, $b + 4, $18 + 4, $ff, $ff, $8b, TM_03 ; item - - ; warp-to - EVENT_DISP SILPH_CO_7F_WIDTH, $0, $10 ; SILPH_CO_8F - EVENT_DISP SILPH_CO_7F_WIDTH, $0, $16 ; SILPH_CO_6F - EVENT_DISP SILPH_CO_7F_WIDTH, $0, $12 ; SILPH_CO_ELEVATOR - EVENT_DISP SILPH_CO_7F_WIDTH, $7, $5 ; SILPH_CO_11F - EVENT_DISP SILPH_CO_7F_WIDTH, $3, $5 ; SILPH_CO_3F - EVENT_DISP SILPH_CO_7F_WIDTH, $f, $15 ; SILPH_CO_5F +INCLUDE "data/mapObjects/silphco7.asm" SilphCo7Blocks: ; 51f57 (14:5f57) INCBIN "maps/silphco7.blk" -Mansion2_h: ; 0x51fcc to 0x51fd8 (12 bytes) (id=214) - db FACILITY ; tileset - db MANSION_2_HEIGHT, MANSION_2_WIDTH ; dimensions (y, x) - dw Mansion2Blocks, Mansion2TextPointers, Mansion2Script ; blocks, texts, scripts - db $00 ; connections - dw Mansion2Object ; objects - -Mansion2Script: ; 51fd8 (14:5fd8) - call Mansion2Script_51fee - call EnableAutoTextBoxDrawing - ld hl, Mansion2TrainerHeaders - ld de, Mansion2ScriptPointers - ld a, [W_MANSION2CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_MANSION2CURSCRIPT], a - ret - -Mansion2Script_51fee: ; 51fee (14:5fee) - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - ret z - ld a, [$d796] - bit 0, a - jr nz, .asm_52016 - ld a, $e - ld bc, $204 - call Func_5202f - ld a, $54 - ld bc, $409 - call Func_5202f - ld a, $5f - ld bc, $b03 - call Func_5202f - ret -.asm_52016 - ld a, $5f - ld bc, $204 - call Func_5202f - ld a, $e - ld bc, $409 - call Func_5202f - ld a, $e - ld bc, $b03 - call Func_5202f - ret - -Func_5202f: ; 5202f (14:602f) - ld [$d09f], a - ld a, $17 - jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) - -Func_52037: ; 52037 (14:6037) - ld a, [$c109] - cp $4 - ret nz - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - ld a, $5 - ld [H_SPRITEHEIGHT], a - jp DisplayTextID - -Mansion2ScriptPointers: ; 52047 (14:6047) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -Mansion2TextPointers: ; 5204d (14:604d) - dw Mansion2Text1 - dw Predef5CText - dw Mansion2Text3 - dw Mansion2Text4 - dw Mansion2Text5 - -Mansion2TrainerHeaders: ; 52057 (14:6057) -Mansion2TrainerHeader0: ; 52057 (14:6057) - db $1 ; flag's bit - db ($0 << 4) ; trainer's view range - dw $d847 ; flag's byte - dw Mansion2BattleText1 ; 0x606e TextBeforeBattle - dw Mansion2AfterBattleText1 ; 0x6078 TextAfterBattle - dw Mansion2EndBattleText1 ; 0x6073 TextEndBattle - dw Mansion2EndBattleText1 ; 0x6073 TextEndBattle - - db $ff - -Mansion2Text1: ; 52064 (14:6064) - db $08 ; asm - ld hl, Mansion2TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -Mansion2BattleText1: ; 5206e (14:606e) - TX_FAR _Mansion2BattleText1 - db "@" - -Mansion2EndBattleText1: ; 52073 (14:6073) - TX_FAR _Mansion2EndBattleText1 - db "@" - -Mansion2AfterBattleText1: ; 52078 (14:6078) - TX_FAR _Mansion2AfterBattleText1 - db "@" - -Mansion2Text3: ; 5207d (14:607d) - TX_FAR _Mansion2Text3 - db "@" - -Mansion2Text4: ; 52082 (14:6082) - TX_FAR _Mansion2Text4 - db "@" - -Mansion3Text6: ; 52087 (14:6087) -Mansion2Text5: ; 52087 (14:6087) - db $8 - ld hl, UnnamedText_520c2 - call PrintText - call YesNoChoice - ld a, [$cc26] - and a - jr nz, .asm_520b9 ; 0x52095 $22 - ld a, $1 - ld [$cc3c], a - ld hl, $d126 - set 5, [hl] - ld hl, UnnamedText_520c7 - call PrintText - ld a, (SFX_02_57 - SFX_Headers_02) / 3 - call PlaySound - ld hl, $d796 - bit 0, [hl] - set 0, [hl] - jr z, .asm_520bf ; 0x520b3 $a - res 0, [hl] - jr .asm_520bf ; 0x520b7 $6 -.asm_520b9 - ld hl, UnnamedText_520cc - call PrintText -.asm_520bf - jp TextScriptEnd - -UnnamedText_520c2: ; 520c2 (14:60c2) - TX_FAR _UnnamedText_520c2 - db "@" - -UnnamedText_520c7: ; 520c7 (14:60c7) - TX_FAR _UnnamedText_520c7 - db "@" - -UnnamedText_520cc: ; 520cc (14:60cc) - TX_FAR _UnnamedText_520cc - db "@" - -Mansion2Object: ; 0x520d1 (size=63) - db $1 ; border tile +INCLUDE "data/mapHeaders/mansion2.asm" - db $4 ; warps - db $a, $5, $4, MANSION_1 - db $a, $7, $0, MANSION_3 - db $e, $19, $2, MANSION_3 - db $1, $6, $1, MANSION_3 +INCLUDE "scripts/mansion2.asm" - db $0 ; signs - - db $4 ; people - db SPRITE_BLACK_HAIR_BOY_2, $11 + 4, $3 + 4, $fe, $2, $41, BURGLAR + $C8, $7 ; trainer - db SPRITE_BALL, $7 + 4, $1c + 4, $ff, $ff, $82, CALCIUM ; item - db SPRITE_BOOK_MAP_DEX, $2 + 4, $12 + 4, $ff, $ff, $3 ; person - db SPRITE_BOOK_MAP_DEX, $16 + 4, $3 + 4, $ff, $ff, $4 ; person - - ; warp-to - EVENT_DISP MANSION_2_WIDTH, $a, $5 ; MANSION_1 - EVENT_DISP MANSION_2_WIDTH, $a, $7 ; MANSION_3 - EVENT_DISP MANSION_2_WIDTH, $e, $19 ; MANSION_3 - EVENT_DISP MANSION_2_WIDTH, $1, $6 ; MANSION_3 +INCLUDE "data/mapObjects/mansion2.asm" Mansion2Blocks: ; 52110 (14:6110) INCBIN "maps/mansion2.blk" -Mansion3_h: ; 0x521e2 to 0x521ee (12 bytes) (id=215) - db FACILITY ; tileset - db MANSION_3_HEIGHT, MANSION_3_WIDTH ; dimensions (y, x) - dw Mansion3Blocks, Mansion3TextPointers, Mansion3Script ; blocks, texts, scripts - db $00 ; connections - dw Mansion3Object ; objects - -Mansion3Script: ; 521ee (14:61ee) - call Mansion3Script_52204 - call EnableAutoTextBoxDrawing - ld hl, Mansion3TrainerHeader0 - ld de, Mansion3ScriptPointers - ld a, [W_MANSION3CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_MANSION3CURSCRIPT], a - ret - -Mansion3Script_52204: ; 52204 (14:6204) - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - ret z - ld a, [$d796] - bit 0, a - jr nz, .asm_52224 - ld a, $e - ld bc, $207 - call Func_5202f - ld a, $5f - ld bc, $507 - call Func_5202f - ret -.asm_52224 - ld a, $5f - ld bc, $207 - call Func_5202f - ld a, $e - ld bc, $507 - call Func_5202f - ret - -Mansion3ScriptPointers: ; 52235 (14:6235) - dw Mansion3Script0 - dw Func_324c - dw EndTrainerBattle - -Mansion3Script0: ; 5223b (14:623b) - ld hl, CoordsData_52254 - call Func_5225b - ld a, [$d71e] - and a - jp z, CheckFightingMapTrainers - cp $3 - ld a, $a5 - jr nz, .asm_52250 - ld a, $d6 -.asm_52250 - ld [$d71d], a - ret - -CoordsData_52254: ; 52254 (14:6254) - db $0E,$10 - db $0E,$11 - db $0E,$13 - db $FF - -Func_5225b: ; 5225b (14:625b) - xor a - ld [$d71e], a - ld a, [$d72d] - bit 4, a - ret nz - call ArePlayerCoordsInArray - ret nc - ld a, [wWhichTrade] ; $cd3d - ld [$d71e], a - ld hl, $d72d - set 4, [hl] - ld hl, $d732 - set 4, [hl] - ret - -Func_5227a: ; 5227a (14:627a) - ld a, [$c109] - cp $4 - ret nz - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - ld a, $6 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - jp DisplayTextID - -Mansion3TextPointers: ; 5228a (14:628a) - dw Mansion3Text1 - dw Mansion3Text2 - dw Predef5CText - dw Predef5CText - dw Mansion3Text5 - dw Mansion3Text6 - -Mansion3TrainerHeaders: ; 52296 (14:6296) -Mansion3TrainerHeader0: ; 52296 (14:6296) - db $1 ; flag's bit - db ($0 << 4) ; trainer's view range - dw $d849 ; flag's byte - dw Mansion3BattleText1 ; 0x62c3 TextBeforeBattle - dw Mansion3AfterBattleText1 ; 0x62cd TextAfterBattle - dw Mansion3EndBattleText1 ; 0x62c8 TextEndBattle - dw Mansion3EndBattleText1 ; 0x62c8 TextEndBattle - -Mansion3TrainerHeader2: ; 522a2 (14:62a2) - db $2 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d849 ; flag's byte - dw Mansion3BattleText2 ; 0x62d2 TextBeforeBattle - dw Mansion3AfterBattleText2 ; 0x62dc TextAfterBattle - dw Mansion3EndBattleText2 ; 0x62d7 TextEndBattle - dw Mansion3EndBattleText2 ; 0x62d7 TextEndBattle - - db $ff - -Mansion3Text1: ; 522af (14:62af) - db $08 ; asm - ld hl, Mansion3TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -Mansion3Text2: ; 522b9 (14:62b9) - db $08 ; asm - ld hl, Mansion3TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -Mansion3BattleText1: ; 522c3 (14:62c3) - TX_FAR _Mansion3BattleText1 - db "@" - -Mansion3EndBattleText1: ; 522c8 (14:62c8) - TX_FAR _Mansion3EndBattleText1 - db "@" - -Mansion3AfterBattleText1: ; 522cd (14:62cd) - TX_FAR _Mansion3AfterBattleText1 - db "@" - -Mansion3BattleText2: ; 522d2 (14:62d2) - TX_FAR _Mansion3BattleText2 - db "@" - -Mansion3EndBattleText2: ; 522d7 (14:62d7) - TX_FAR _Mansion3EndBattleText2 - db "@" - -Mansion3AfterBattleText2: ; 522dc (14:62dc) - TX_FAR _Mansion3AfterBattleText2 - db "@" - -Mansion3Text5: ; 522e1 (14:62e1) - TX_FAR _Mansion3Text5 - db "@" - -Mansion3Object: ; 0x522e6 (size=64) - db $1 ; border tile - - db $3 ; warps - db $a, $7, $1, MANSION_2 - db $1, $6, $3, MANSION_2 - db $e, $19, $2, MANSION_2 +INCLUDE "data/mapHeaders/mansion3.asm" - db $0 ; signs +INCLUDE "scripts/mansion3.asm" - db $5 ; people - db SPRITE_BLACK_HAIR_BOY_2, $b + 4, $5 + 4, $fe, $2, $41, BURGLAR + $C8, $8 ; trainer - db SPRITE_OAK_AIDE, $b + 4, $14 + 4, $ff, $d2, $42, SCIENTIST + $C8, $c ; trainer - db SPRITE_BALL, $10 + 4, $1 + 4, $ff, $ff, $83, MAX_POTION ; item - db SPRITE_BALL, $5 + 4, $19 + 4, $ff, $ff, $84, IRON ; item - db SPRITE_BOOK_MAP_DEX, $c + 4, $6 + 4, $ff, $ff, $5 ; person - - ; warp-to - EVENT_DISP MANSION_3_WIDTH, $a, $7 ; MANSION_2 - EVENT_DISP MANSION_3_WIDTH, $1, $6 ; MANSION_2 - EVENT_DISP MANSION_3_WIDTH, $e, $19 ; MANSION_2 +INCLUDE "data/mapObjects/mansion3.asm" Mansion3Blocks: ; 52326 (14:6326) INCBIN "maps/mansion3.blk" -Mansion4_h: ; 0x523ad to 0x523b9 (12 bytes) (id=216) - db FACILITY ; tileset - db MANSION_4_HEIGHT, MANSION_4_WIDTH ; dimensions (y, x) - dw Mansion4Blocks, Mansion4TextPointers, Mansion4Script ; blocks, texts, scripts - db $00 ; connections - dw Mansion4Object ; objects +INCLUDE "data/mapHeaders/mansion4.asm" -Mansion4Script: ; 523b9 (14:63b9) - call Mansion4Script_523cf - call EnableAutoTextBoxDrawing - ld hl, Mansion4TrainerHeader0 - ld de, Mansion4ScriptPointers - ld a, [W_MANSION4CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_MANSION4CURSCRIPT], a - ret +INCLUDE "scripts/mansion4.asm" -Mansion4Script_523cf: ; 523cf (14:63cf) - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - ret z - ld a, [$d796] - bit 0, a - jr nz, .asm_523ff - ld a, $e - ld bc, $80d - call Func_5202f - ld a, $e - ld bc, $b06 - call Func_5202f - ld a, $5f - ld bc, $304 - call Func_5202f - ld a, $54 - ld bc, $808 - call Func_5202f - ret -.asm_523ff - ld a, $2d - ld bc, $80d - call Func_5202f - ld a, $5f - ld bc, $b06 - call Func_5202f - ld a, $e - ld bc, $304 - call Func_5202f - ld a, $e - ld bc, $808 - call Func_5202f - ret - -Func_52420: ; 52420 (14:6420) - ld a, [$c109] - cp $4 - ret nz - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - ld a, $9 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - jp DisplayTextID - -Mansion4ScriptPointers: ; 52430 (14:6430) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -Mansion4TextPointers: ; 52436 (14:6436) - dw Mansion4Text1 - dw Mansion4Text2 - dw Predef5CText - dw Predef5CText - dw Predef5CText - dw Predef5CText - dw Mansion4Text7 - dw Predef5CText - dw Mansion3Text6 - -Mansion4TrainerHeaders: ; 52448 (14:6448) -Mansion4TrainerHeader0: ; 52448 (14:6448) - db $1 ; flag's bit - db ($0 << 4) ; trainer's view range - dw $d84b ; flag's byte - dw Mansion4BattleText1 ; 0x6475 TextBeforeBattle - dw Mansion4AfterBattleText1 ; 0x647f TextAfterBattle - dw Mansion4EndBattleText1 ; 0x647a TextEndBattle - dw Mansion4EndBattleText1 ; 0x647a TextEndBattle - -Mansion4TrainerHeader2: ; 52454 (14:6454) - db $2 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d84b ; flag's byte - dw Mansion4BattleText2 ; 0x6484 TextBeforeBattle - dw Mansion4AfterBattleText2 ; 0x648e TextAfterBattle - dw Mansion4EndBattleText2 ; 0x6489 TextEndBattle - dw Mansion4EndBattleText2 ; 0x6489 TextEndBattle - - db $ff - -Mansion4Text1: ; 52461 (14:6461) - db $08 ; asm - ld hl, Mansion4TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -Mansion4Text2: ; 5246b (14:646b) - db $08 ; asm - ld hl, Mansion4TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -Mansion4BattleText1: ; 52475 (14:6475) - TX_FAR _Mansion4BattleText1 - db "@" - -Mansion4EndBattleText1: ; 5247a (14:647a) - TX_FAR _Mansion4EndBattleText1 - db "@" - -Mansion4AfterBattleText1: ; 5247f (14:647f) - TX_FAR _Mansion4AfterBattleText1 - db "@" - -Mansion4BattleText2: ; 52484 (14:6484) - TX_FAR _Mansion4BattleText2 - db "@" - -Mansion4EndBattleText2: ; 52489 (14:6489) - TX_FAR _Mansion4EndBattleText2 - db "@" - -Mansion4AfterBattleText2: ; 5248e (14:648e) - TX_FAR _Mansion4AfterBattleText2 - db "@" - -Mansion4Text7: ; 52493 (14:6493) - TX_FAR _Mansion4Text7 - db "@" - -Mansion4Object: ; 0x52498 (size=69) - db $1 ; border tile - - db $1 ; warps - db $16, $17, $5, MANSION_1 - - db $0 ; signs - - db $8 ; people - db SPRITE_BLACK_HAIR_BOY_2, $17 + 4, $10 + 4, $ff, $ff, $41, BURGLAR + $C8, $9 ; trainer - db SPRITE_OAK_AIDE, $b + 4, $1b + 4, $ff, $d0, $42, SCIENTIST + $C8, $d ; trainer - db SPRITE_BALL, $2 + 4, $a + 4, $ff, $ff, $83, RARE_CANDY ; item - db SPRITE_BALL, $16 + 4, $1 + 4, $ff, $ff, $84, FULL_RESTORE ; item - db SPRITE_BALL, $19 + 4, $13 + 4, $ff, $ff, $85, TM_14 ; item - db SPRITE_BALL, $4 + 4, $5 + 4, $ff, $ff, $86, TM_22 ; item - db SPRITE_BOOK_MAP_DEX, $14 + 4, $10 + 4, $ff, $ff, $7 ; person - db SPRITE_BALL, $d + 4, $5 + 4, $ff, $ff, $88, SECRET_KEY ; item - - ; warp-to - EVENT_DISP MANSION_4_WIDTH, $16, $17 ; MANSION_1 +INCLUDE "data/mapObjects/mansion4.asm" Mansion4Blocks: ; 524dd (14:64dd) INCBIN "maps/mansion4.blk" @@ -81253,20 +45669,20 @@ Func_52613: ; 52613 (14:6613) ld c, $1e call DelayFrames callab Func_3fba8 - ld hl, Func_3fb6e - ld b, BANK(Func_3fb6e) + ld hl, PrintMayNotAttackText + ld b, BANK(PrintMayNotAttackText) jp Bankswitch .asm_52659 ld c, $32 call DelayFrames - ld hl, Func_3fb5e - ld b, BANK(Func_3fb5e) + ld hl, PrintDidntAffectText + ld b, BANK(PrintDidntAffectText) jp Bankswitch .asm_52666 ld c, $32 call DelayFrames - ld hl, Func_3dc51 - ld b, BANK(Func_3dc51) + ld hl, PrintDoesntAffectText + ld b, BANK(PrintDoesntAffectText) jp Bankswitch Func_52673: ; 52673 (14:6673) @@ -81424,16 +45840,16 @@ CeladonPrizeMenu: ; 5271b (14:671b) ret RequireCoinCaseTextPtr: ; 5277e (14:677e) - TX_FAR _RequireCoinCaseText ; 22:628E + TX_FAR _RequireCoinCaseText db $0D db "@" ExchangeCoinsForPrizesTextPtr: ; 52784 (14:6784) - TX_FAR _ExchangeCoinsForPrizesText ; 22:62A9 + TX_FAR _ExchangeCoinsForPrizesText db "@" WhichPrizeTextPtr: ; 52789 (14:6789) - TX_FAR _WhichPrizeText ; 22:62CD + TX_FAR _WhichPrizeText db "@" GetPrizeMenuId: ; 5278e (14:678e) @@ -81536,75 +45952,7 @@ GetPrizeMenuId: ; 5278e (14:678e) ld c,(1 << 7 | 2) jp PrintBCDNumber -PrizeDifferentMenuPtrs: ; 52843 (14:6843) - dw PrizeMenuMon1Entries - dw PrizeMenuMon1Cost - - dw PrizeMenuMon2Entries - dw PrizeMenuMon2Cost - - dw PrizeMenuTMsEntries - dw PrizeMenuTMsCost - -NoThanksText: ; 5284f (14:684f) - db "NO THANKS@" - -PrizeMenuMon1Entries: ; 52859 (14:6859) - db ABRA - db CLEFAIRY -IF _RED - db NIDORINA -ENDC -IF _BLUE - db NIDORINO -ENDC - db "@" -PrizeMenuMon1Cost: ; 5285d (14:685d) -IF _RED - db $01,$80 - db $05,$00 -ENDC -IF _BLUE - db $01,$20 - db $07,$50 -ENDC - db $12,$00 - db "@" - -PrizeMenuMon2Entries: ; 52864 (14:6864) -IF _RED - db DRATINI - db SCYTHER -ENDC -IF _BLUE - db PINSIR - db DRATINI -ENDC - db PORYGON - db "@" -PrizeMenuMon2Cost: ; 52868 (14:6868) -IF _RED - db $28,$00 - db $55,$00 - db $99,$99 -ENDC -IF _BLUE - db $25,$00 - db $46,$00 - db $65,$00 -ENDC - db "@" - -PrizeMenuTMsEntries: ; 5286f (14:686f) - db TM_23 - db TM_15 - db TM_50 - db "@" -PrizeMenuTMsCost: ; 52873 (14:6873) - db $33,$00 ; 3300 Coins - db $55,$00 ; 5500 Coins - db $77,$00 ; 7700 Coins - db "@" +INCLUDE "data/prizes.asm" PrintPrizePrice: ; 5287a (14:687a) FuncCoord 11,0 @@ -81712,7 +46060,7 @@ HandlePrizeChoice: ; 528c6 (14:68c6) ld hl,PrizeRoomBagIsFullTextPtr jp PrintText .NotEnoughCoins ; 14:6945 - ld hl,SorryNeedMoreCoinsTextPtr + ld hl,SorryNeedMoreCoinsText jp PrintText .PrintOhFineThen ; 14:694B ld hl,OhFineThenTextPtr @@ -81723,26 +46071,26 @@ UnknownData52951: ; 52951 (14:6951) db $00,$01,$00,$01,$00,$01,$00,$00,$01 HereYouGoTextPtr: ; 5295a (14:695a) - TX_FAR _HereYouGoText ; 22:62E7 + TX_FAR _HereYouGoText db $0D db "@" SoYouWantPrizeTextPtr: ; 52960 (14:6960) - TX_FAR _SoYouWantPrizeText ; 22:62F6 + TX_FAR _SoYouWantPrizeText db "@" -SorryNeedMoreCoinsTextPtr: ; 52965 (14:6965) - TX_FAR _SorryNeedMoreCoins ; 22:630B +SorryNeedMoreCoinsText: ; 52965 (14:6965) + TX_FAR _SorryNeedMoreCoinsText db $0D db "@" PrizeRoomBagIsFullTextPtr: ; 5296b (14:696b) - TX_FAR _OopsYouDontHaveEnoughRoomText ; 22:6329 + TX_FAR _OopsYouDontHaveEnoughRoomText db $0D db "@" OhFineThenTextPtr: ; 52971 (14:6971) - TX_FAR _OhFineThenText; 22:634C + TX_FAR _OhFineThenText db $0D ; wait keypress (A/B) without blink db "@" @@ -81761,25 +46109,7 @@ GetPrizeMonLevel: ; 52977 (14:6977) ld [$D127],a ret -PrizeMonLevelDictionary: ; 5298a (14:698a) -IF _RED - db ABRA,9 - db CLEFAIRY,8 - db NIDORINA,17 - - db DRATINI,18 - db SCYTHER,25 - db PORYGON,26 -ENDC -IF _BLUE - db ABRA,6 - db CLEFAIRY,12 - db NIDORINO,17 - - db PINSIR,20 - db DRATINI,24 - db PORYGON,18 -ENDC +INCLUDE "data/prize_mon_levels.asm" Func_52996: ; 52996 (14:6996) call EnableAutoTextBoxDrawing @@ -81888,345 +46218,72 @@ IndigoPlateauHQText: ; 52a3d (14:6a3d) SECTION "bank15",ROMX,BANK[$15] -Route2_h: ; 54000 (15:4000) - db 00 ; Tileset - db ROUTE_2_HEIGHT,ROUTE_2_WIDTH ;Height,Width blocks (1 block = 4x4 tiles) - dw Route2Blocks, Route2TextPointers, Route2Script - db NORTH | SOUTH ;Connection Byte - NORTH_MAP_CONNECTION PEWTER_CITY, PEWTER_CITY_WIDTH, PEWTER_CITY_HEIGHT, -3, 2, PEWTER_CITY_WIDTH - 4, PewterCityBlocks - SOUTH_MAP_CONNECTION VIRIDIAN_CITY, VIRIDIAN_CITY_WIDTH, -3, 2, VIRIDIAN_CITY_WIDTH - 4, ViridianCityBlocks, ROUTE_2_WIDTH, ROUTE_2_HEIGHT - dw Route2Object ;Object Data Pointer - -Route2Object: ; 0x54022 (size=72) - db $f ; border tile - - db $6 ; warps - db $9, $c, $0, DIGLETTS_CAVE_EXIT - db $b, $3, $1, VIRIDIAN_FOREST_EXIT - db $13, $f, $0, ROUTE_2_HOUSE - db $23, $10, $1, ROUTE_2_GATE - db $27, $f, $2, ROUTE_2_GATE - db $2b, $3, $2, VIRIDIAN_FOREST_ENTRANCE - - db $2 ; signs - db $41, $5, $3 ; Route2Text3 - db $b, $b, $4 ; Route2Text4 - - db $2 ; people - db SPRITE_BALL, $36 + 4, $d + 4, $ff, $ff, $81, MOON_STONE ; item - db SPRITE_BALL, $2d + 4, $d + 4, $ff, $ff, $82, HP_UP ; item - - ; warp-to - EVENT_DISP ROUTE_2_WIDTH, $9, $c ; DIGLETTS_CAVE_EXIT - EVENT_DISP ROUTE_2_WIDTH, $b, $3 ; VIRIDIAN_FOREST_EXIT - EVENT_DISP ROUTE_2_WIDTH, $13, $f ; ROUTE_2_HOUSE - EVENT_DISP ROUTE_2_WIDTH, $23, $10 ; ROUTE_2_GATE - EVENT_DISP ROUTE_2_WIDTH, $27, $f ; ROUTE_2_GATE - EVENT_DISP ROUTE_2_WIDTH, $2b, $3 ; VIRIDIAN_FOREST_ENTRANCE - - ; unused - EVENT_DISP $4, $7, $2 - db $12, $c7, $9, $7 - EVENT_DISP $4, $7, $2 - EVENT_DISP $4, $7, $2 - EVENT_DISP $4, $7, $2 +INCLUDE "data/mapHeaders/route2.asm" + +INCLUDE "data/mapObjects/route2.asm" Route2Blocks: ; 5407e (15:407e) INCBIN "maps/route2.blk" -Route3_h: ; 0x541e6 to 0x54208 (34 bytes) (id=14) - db OVERWORLD ; tileset - db ROUTE_3_HEIGHT, ROUTE_3_WIDTH ; dimensions (y, x) - dw Route3Blocks, Route3TextPointers, Route3Script ; blocks, texts, scripts - db NORTH | WEST ; connections - NORTH_MAP_CONNECTION ROUTE_4, ROUTE_4_WIDTH, ROUTE_4_HEIGHT, 25, 0, ROUTE_4_WIDTH - 32, Route4Blocks - WEST_MAP_CONNECTION PEWTER_CITY, PEWTER_CITY_WIDTH, -3, 1, PEWTER_CITY_HEIGHT - 3, PewterCityBlocks, ROUTE_3_WIDTH - dw Route3Object ; objects - -Route3Object: ; 0x54208 (size=77) - db $2c ; border tile - - db $0 ; warps - - db $1 ; signs - db $9, $3b, $a ; Route3Text10 - - db $9 ; people - db SPRITE_BLACK_HAIR_BOY_2, $b + 4, $39 + 4, $ff, $ff, $1 ; person - db SPRITE_BUG_CATCHER, $6 + 4, $a + 4, $ff, $d3, $42, BUG_CATCHER + $C8, $4 ; trainer - db SPRITE_BUG_CATCHER, $4 + 4, $e + 4, $ff, $d0, $43, YOUNGSTER + $C8, $1 ; trainer - db SPRITE_LASS, $9 + 4, $10 + 4, $ff, $d2, $44, LASS + $C8, $1 ; trainer - db SPRITE_BUG_CATCHER, $5 + 4, $13 + 4, $ff, $d0, $45, BUG_CATCHER + $C8, $5 ; trainer - db SPRITE_LASS, $4 + 4, $17 + 4, $ff, $d2, $46, LASS + $C8, $2 ; trainer - db SPRITE_BUG_CATCHER, $9 + 4, $16 + 4, $ff, $d2, $47, YOUNGSTER + $C8, $2 ; trainer - db SPRITE_BUG_CATCHER, $6 + 4, $18 + 4, $ff, $d3, $48, BUG_CATCHER + $C8, $6 ; trainer - db SPRITE_LASS, $a + 4, $21 + 4, $ff, $d1, $49, LASS + $C8, $3 ; trainer +INCLUDE "data/mapHeaders/route3.asm" + +INCLUDE "data/mapObjects/route3.asm" Route3Blocks: ; 54255 (15:4255) INCBIN "maps/route3.blk" -Route4_h: ; 0x54390 to 0x543b2 (34 bytes) (id=15) - db OVERWORLD ; tileset - db ROUTE_4_HEIGHT, ROUTE_4_WIDTH ; dimensions (y, x) - dw Route4Blocks, Route4TextPointers, Route4Script; blocks, texts, scripts - db SOUTH | EAST ; connections - SOUTH_MAP_CONNECTION ROUTE_3, ROUTE_3_WIDTH, -3, 22, ROUTE_3_WIDTH - 22, Route3Blocks, ROUTE_4_WIDTH, ROUTE_4_HEIGHT - EAST_MAP_CONNECTION CERULEAN_CITY, CERULEAN_CITY_WIDTH, -3, 1, CERULEAN_CITY_HEIGHT - 3, CeruleanCityBlocks, ROUTE_4_WIDTH - dw Route4Object ; objects - -Route4Object: ; 0x543b2 (size=58) - db $2c ; border tile - - db $3 ; warps - db $5, $b, $0, MT_MOON_POKECENTER - db $5, $12, $0, MT_MOON_1 - db $5, $18, $7, MT_MOON_2 - - db $3 ; signs - db $5, $c, $4 ; PokeCenterSignText - db $7, $11, $5 ; Route4Text5 - db $7, $1b, $6 ; Route4Text6 - - db $3 ; people - db SPRITE_LASS, $8 + 4, $9 + 4, $fe, $0, $1 ; person - db SPRITE_LASS, $3 + 4, $3f + 4, $ff, $d3, $42, LASS + $C8, $4 ; trainer - db SPRITE_BALL, $3 + 4, $39 + 4, $ff, $ff, $83, TM_04 ; item - - ; warp-to - EVENT_DISP ROUTE_4_WIDTH, $5, $b ; MT_MOON_POKECENTER - EVENT_DISP ROUTE_4_WIDTH, $5, $12 ; MT_MOON_1 - EVENT_DISP ROUTE_4_WIDTH, $5, $18 ; MT_MOON_2 +INCLUDE "data/mapHeaders/route4.asm" + +INCLUDE "data/mapObjects/route4.asm" Route4Blocks: ; 543ec (15:43ec) INCBIN "maps/route4.blk" -Route5_h: ; 0x54581 to 0x545a3 (34 bytes) (id=16) - db OVERWORLD ; tileset - db ROUTE_5_HEIGHT, ROUTE_5_WIDTH ; dimensions (y, x) - dw Route5Blocks, Route5TextPointers, Route5Script ; blocks, texts, scripts - db NORTH | SOUTH ; connections - NORTH_MAP_CONNECTION CERULEAN_CITY, CERULEAN_CITY_WIDTH, CERULEAN_CITY_HEIGHT, -3, 2, CERULEAN_CITY_WIDTH - 4, CeruleanCityBlocks - SOUTH_MAP_CONNECTION SAFFRON_CITY, SAFFRON_CITY_WIDTH, -3, 2, SAFFRON_CITY_WIDTH - 4, SaffronCityBlocks, ROUTE_5_WIDTH, ROUTE_5_HEIGHT - dw Route5Object ; objects - -Route5Object: ; 0x545a3 (size=47) - db $a ; border tile - - db $5 ; warps - db $1d, $a, $3, ROUTE_5_GATE - db $1d, $9, $2, ROUTE_5_GATE - db $21, $a, $0, ROUTE_5_GATE - db $1b, $11, $0, PATH_ENTRANCE_ROUTE_5 - db $15, $a, $0, DAYCAREM - - db $1 ; signs - db $1d, $11, $1 ; Route5Text1 - - db $0 ; people - - ; warp-to - EVENT_DISP ROUTE_5_WIDTH, $1d, $a ; ROUTE_5_GATE - EVENT_DISP ROUTE_5_WIDTH, $1d, $9 ; ROUTE_5_GATE - EVENT_DISP ROUTE_5_WIDTH, $21, $a ; ROUTE_5_GATE - EVENT_DISP ROUTE_5_WIDTH, $1b, $11 ; PATH_ENTRANCE_ROUTE_5 - EVENT_DISP ROUTE_5_WIDTH, $15, $a ; DAYCAREM +INCLUDE "data/mapHeaders/route5.asm" + +INCLUDE "data/mapObjects/route5.asm" Route5Blocks: ; 545d2 (15:45d2) INCBIN "maps/route5.blk" -Route9_h: ; 0x54686 to 0x546a8 (34 bytes) (id=20) - db OVERWORLD ; tileset - db ROUTE_9_HEIGHT, ROUTE_9_WIDTH ; dimensions (y, x) - dw Route9Blocks, Route9TextPointers, Route9Script ; blocks, texts, scripts - db WEST | EAST ; connections - WEST_MAP_CONNECTION CERULEAN_CITY, CERULEAN_CITY_WIDTH, -3, 1, CERULEAN_CITY_HEIGHT - 3, CeruleanCityBlocks, ROUTE_9_WIDTH - EAST_MAP_CONNECTION ROUTE_10, ROUTE_10_WIDTH, 0, 0, ROUTE_10_HEIGHT - 24, Route10Blocks, ROUTE_9_WIDTH - dw Route9Object ; objects - -Route9Object: ; 0x546a8 (size=86) - db $2c ; border tile - - db $0 ; warps - - db $1 ; signs - db $7, $19, $b ; Route9Text11 - - db $a ; people - db SPRITE_LASS, $a + 4, $d + 4, $ff, $d2, $41, JR__TRAINER_F + $C8, $5 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $7 + 4, $18 + 4, $ff, $d2, $42, JR__TRAINER_M + $C8, $7 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $7 + 4, $1f + 4, $ff, $d3, $43, JR__TRAINER_M + $C8, $8 ; trainer - db SPRITE_LASS, $8 + 4, $30 + 4, $ff, $d3, $44, JR__TRAINER_F + $C8, $6 ; trainer - db SPRITE_HIKER, $f + 4, $10 + 4, $ff, $d2, $45, HIKER + $C8, $b ; trainer - db SPRITE_HIKER, $3 + 4, $2b + 4, $ff, $d2, $46, HIKER + $C8, $6 ; trainer - db SPRITE_BUG_CATCHER, $2 + 4, $16 + 4, $ff, $d0, $47, BUG_CATCHER + $C8, $d ; trainer - db SPRITE_HIKER, $f + 4, $2d + 4, $ff, $d3, $48, HIKER + $C8, $5 ; trainer - db SPRITE_BUG_CATCHER, $8 + 4, $28 + 4, $ff, $d3, $49, BUG_CATCHER + $C8, $e ; trainer - db SPRITE_BALL, $f + 4, $a + 4, $ff, $ff, $8a, TM_30 ; item +INCLUDE "data/mapHeaders/route9.asm" + +INCLUDE "data/mapObjects/route9.asm" Route9Blocks: ; 546fe (15:46fe) INCBIN "maps/route9.blk" -Route13_h: ; 0x5480c to 0x5482e (34 bytes) (id=24) - db OVERWORLD ; tileset - db ROUTE_13_HEIGHT, ROUTE_13_WIDTH ; dimensions (y, x) - dw Route13Blocks, Route13TextPointers, Route13Script ; blocks, texts, scripts - db NORTH | WEST ; connections - NORTH_MAP_CONNECTION ROUTE_12, ROUTE_12_WIDTH, ROUTE_12_HEIGHT, 20, 0, ROUTE_12_WIDTH, Route12Blocks - WEST_MAP_CONNECTION ROUTE_14, ROUTE_14_WIDTH, 0, 0, ROUTE_14_HEIGHT - 15, Route14Blocks, ROUTE_13_WIDTH - dw Route13Object ; objects - -Route13Object: ; 0x5482e (size=93) - db $43 ; border tile - - db $0 ; warps - - db $3 ; signs - db $d, $f, $b ; Route13Text11 - db $5, $21, $c ; Route13Text12 - db $b, $1f, $d ; Route13Text13 - - db $a ; people - db SPRITE_BLACK_HAIR_BOY_1, $a + 4, $31 + 4, $ff, $d3, $41, BIRD_KEEPER + $C8, $1 ; trainer - db SPRITE_LASS, $a + 4, $30 + 4, $ff, $d0, $42, JR__TRAINER_F + $C8, $c ; trainer - db SPRITE_LASS, $9 + 4, $1b + 4, $ff, $d0, $43, JR__TRAINER_F + $C8, $d ; trainer - db SPRITE_LASS, $a + 4, $17 + 4, $ff, $d2, $44, JR__TRAINER_F + $C8, $e ; trainer - db SPRITE_LASS, $5 + 4, $32 + 4, $ff, $d0, $45, JR__TRAINER_F + $C8, $f ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $4 + 4, $c + 4, $ff, $d3, $46, BIRD_KEEPER + $C8, $2 ; trainer - db SPRITE_FOULARD_WOMAN, $6 + 4, $21 + 4, $ff, $d0, $47, BEAUTY + $C8, $4 ; trainer - db SPRITE_FOULARD_WOMAN, $6 + 4, $20 + 4, $ff, $d0, $48, BEAUTY + $C8, $5 ; trainer - db SPRITE_BIKER, $7 + 4, $a + 4, $ff, $d1, $49, BIKER + $C8, $1 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $d + 4, $7 + 4, $ff, $d1, $4a, BIRD_KEEPER + $C8, $3 ; trainer +INCLUDE "data/mapHeaders/route13.asm" + +INCLUDE "data/mapObjects/route13.asm" Route13Blocks: ; 5488b (15:488b) INCBIN "maps/route13.blk" -Route14_h: ; 0x54999 to 0x549bb (34 bytes) (id=25) - db OVERWORLD ; tileset - db ROUTE_14_HEIGHT, ROUTE_14_WIDTH ; dimensions (y, x) - dw Route14Blocks, Route14TextPointers, Route14Script ; blocks, texts, scripts - db WEST | EAST ; connections - WEST_MAP_CONNECTION ROUTE_15, ROUTE_15_WIDTH, 18, 0, ROUTE_15_HEIGHT, Route15Blocks, ROUTE_14_WIDTH - EAST_MAP_CONNECTION ROUTE_13, ROUTE_13_WIDTH, 0, 0, ROUTE_13_HEIGHT, Route13Blocks, ROUTE_14_WIDTH - dw Route14Object ; objects - -Route14Object: ; 0x549bb (size=87) - db $43 ; border tile - - db $0 ; warps - - db $1 ; signs - db $d, $11, $b ; Route14Text11 - - db $a ; people - db SPRITE_BLACK_HAIR_BOY_1, $4 + 4, $4 + 4, $ff, $d0, $41, BIRD_KEEPER + $C8, $e ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $6 + 4, $f + 4, $ff, $d0, $42, BIRD_KEEPER + $C8, $f ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $b + 4, $c + 4, $ff, $d0, $43, BIRD_KEEPER + $C8, $10 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $f + 4, $e + 4, $ff, $d1, $44, BIRD_KEEPER + $C8, $11 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $1f + 4, $f + 4, $ff, $d2, $45, BIRD_KEEPER + $C8, $4 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $31 + 4, $6 + 4, $ff, $d1, $46, BIRD_KEEPER + $C8, $5 ; trainer - db SPRITE_BIKER, $27 + 4, $5 + 4, $ff, $d0, $47, BIKER + $C8, $d ; trainer - db SPRITE_BIKER, $1e + 4, $4 + 4, $ff, $d3, $48, BIKER + $C8, $e ; trainer - db SPRITE_BIKER, $1e + 4, $f + 4, $ff, $d2, $49, BIKER + $C8, $f ; trainer - db SPRITE_BIKER, $1f + 4, $4 + 4, $ff, $d3, $4a, BIKER + $C8, $2 ; trainer +INCLUDE "data/mapHeaders/route14.asm" + +INCLUDE "data/mapObjects/route14.asm" Route14Blocks: ; 54a12 (15:4a12) INCBIN "maps/route14.blk" -Route17_h: ; 0x54b20 to 0x54b42 (34 bytes) (id=28) - db OVERWORLD ; tileset - db ROUTE_17_HEIGHT, ROUTE_17_WIDTH ; dimensions (y, x) - dw Route17Blocks, Route17TextPointers, Route17Script ; blocks, texts, scripts - db NORTH | SOUTH ; connections - NORTH_MAP_CONNECTION ROUTE_16, ROUTE_16_WIDTH, ROUTE_16_HEIGHT, 0, 0, ROUTE_16_WIDTH - 7, Route16Blocks - SOUTH_MAP_CONNECTION ROUTE_18, ROUTE_18_WIDTH, 0, 0, ROUTE_18_WIDTH - 12, Route18Blocks, ROUTE_17_WIDTH, ROUTE_17_HEIGHT - dw Route17Object ; objects - -Route17Object: ; 0x54b42 (size=102) - db $43 ; border tile - - db $0 ; warps - - db $6 ; signs - db $33, $9, $b ; Route17Text11 - db $3f, $9, $c ; Route17Text12 - db $4b, $9, $d ; Route17Text13 - db $57, $9, $e ; Route17Text14 - db $6f, $9, $f ; Route17Text15 - db $8d, $9, $10 ; Route17Text16 - - db $a ; people - db SPRITE_BIKER, $13 + 4, $c + 4, $ff, $d2, $41, CUE_BALL + $C8, $4 ; trainer - db SPRITE_BIKER, $10 + 4, $b + 4, $ff, $d3, $42, CUE_BALL + $C8, $5 ; trainer - db SPRITE_BIKER, $12 + 4, $4 + 4, $ff, $d1, $43, BIKER + $C8, $8 ; trainer - db SPRITE_BIKER, $20 + 4, $7 + 4, $ff, $d2, $44, BIKER + $C8, $9 ; trainer - db SPRITE_BIKER, $22 + 4, $e + 4, $ff, $d3, $45, BIKER + $C8, $a ; trainer - db SPRITE_BIKER, $3a + 4, $11 + 4, $ff, $d2, $46, CUE_BALL + $C8, $6 ; trainer - db SPRITE_BIKER, $44 + 4, $2 + 4, $ff, $d3, $47, CUE_BALL + $C8, $7 ; trainer - db SPRITE_BIKER, $62 + 4, $e + 4, $ff, $d3, $48, CUE_BALL + $C8, $8 ; trainer - db SPRITE_BIKER, $62 + 4, $5 + 4, $ff, $d2, $49, BIKER + $C8, $b ; trainer - db SPRITE_BIKER, $76 + 4, $a + 4, $ff, $d0, $4a, BIKER + $C8, $c ; trainer +INCLUDE "data/mapHeaders/route17.asm" + +INCLUDE "data/mapObjects/route17.asm" Route17Blocks: ; 54ba8 (15:4ba8) INCBIN "maps/route17.blk" -Route19_h: ; 0x54e78 to 0x54e9a (34 bytes) (id=30) - db OVERWORLD ; tileset - db ROUTE_19_HEIGHT, ROUTE_19_WIDTH ; dimensions (y, x) - dw Route19Blocks, Route19TextPointers, Route19Script ; blocks, texts, scripts - db NORTH | WEST ; connections - NORTH_MAP_CONNECTION FUCHSIA_CITY, FUCHSIA_CITY_WIDTH, FUCHSIA_CITY_HEIGHT, -3, 2, FUCHSIA_CITY_WIDTH - 4, FuchsiaCityBlocks - WEST_MAP_CONNECTION ROUTE_20, ROUTE_20_WIDTH, 18, 0, ROUTE_20_HEIGHT, Route20Blocks, ROUTE_19_WIDTH - dw Route19Object ; objects - -Route19Object: ; 0x54e9a (size=87) - db $43 ; border tile - - db $0 ; warps - - db $1 ; signs - db $9, $b, $b ; Route19Text11 - - db $a ; people - db SPRITE_BLACK_HAIR_BOY_1, $7 + 4, $8 + 4, $ff, $d2, $41, SWIMMER + $C8, $2 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $7 + 4, $d + 4, $ff, $d2, $42, SWIMMER + $C8, $3 ; trainer - db SPRITE_SWIMMER, $19 + 4, $d + 4, $ff, $d2, $43, SWIMMER + $C8, $4 ; trainer - db SPRITE_SWIMMER, $1b + 4, $4 + 4, $ff, $d3, $44, SWIMMER + $C8, $5 ; trainer - db SPRITE_SWIMMER, $1f + 4, $10 + 4, $ff, $d1, $45, SWIMMER + $C8, $6 ; trainer - db SPRITE_SWIMMER, $b + 4, $9 + 4, $ff, $d0, $46, SWIMMER + $C8, $7 ; trainer - db SPRITE_SWIMMER, $2b + 4, $8 + 4, $ff, $d2, $47, BEAUTY + $C8, $c ; trainer - db SPRITE_SWIMMER, $2b + 4, $b + 4, $ff, $d3, $48, BEAUTY + $C8, $d ; trainer - db SPRITE_SWIMMER, $2a + 4, $9 + 4, $ff, $d1, $49, SWIMMER + $C8, $8 ; trainer - db SPRITE_SWIMMER, $2c + 4, $a + 4, $ff, $d0, $4a, BEAUTY + $C8, $e ; trainer +INCLUDE "data/mapHeaders/route19.asm" + +INCLUDE "data/mapObjects/route19.asm" Route19Blocks: ; 54ef1 (15:4ef1) INCBIN "maps/route19.blk" -Route21_h: ; 0x54fff to 0x55021 (34 bytes) (id=32) - db OVERWORLD ; tileset - db ROUTE_21_HEIGHT, ROUTE_21_WIDTH ; dimensions (y, x) - dw Route21Blocks, Route21TextPointers, Route21Script ; blocks, texts, scripts - db NORTH | SOUTH ; connections - NORTH_MAP_CONNECTION PALLET_TOWN, PALLET_TOWN_WIDTH, PALLET_TOWN_HEIGHT, 0, 0, PALLET_TOWN_WIDTH, PalletTownBlocks - SOUTH_MAP_CONNECTION CINNABAR_ISLAND, CINNABAR_ISLAND_WIDTH, 0, 0, CINNABAR_ISLAND_WIDTH, CinnabarIslandBlocks, ROUTE_21_WIDTH, ROUTE_21_HEIGHT - dw Route21Object ; objects - -Route21Object: ; 0x55021 (size=76) - db $43 ; border tile - - db $0 ; warps - - db $0 ; signs - - db $9 ; people - db SPRITE_FISHER2, $18 + 4, $4 + 4, $ff, $d2, $41, FISHER + $C8, $7 ; trainer - db SPRITE_FISHER2, $19 + 4, $6 + 4, $ff, $d0, $42, FISHER + $C8, $9 ; trainer - db SPRITE_SWIMMER, $1f + 4, $a + 4, $ff, $d1, $43, SWIMMER + $C8, $c ; trainer - db SPRITE_SWIMMER, $1e + 4, $c + 4, $ff, $d3, $44, CUE_BALL + $C8, $9 ; trainer - db SPRITE_SWIMMER, $3f + 4, $10 + 4, $ff, $d0, $45, SWIMMER + $C8, $d ; trainer - db SPRITE_SWIMMER, $47 + 4, $5 + 4, $ff, $d3, $46, SWIMMER + $C8, $e ; trainer - db SPRITE_SWIMMER, $47 + 4, $f + 4, $ff, $d2, $47, SWIMMER + $C8, $f ; trainer - db SPRITE_FISHER2, $38 + 4, $e + 4, $ff, $d2, $48, FISHER + $C8, $8 ; trainer - db SPRITE_FISHER2, $39 + 4, $11 + 4, $ff, $d3, $49, FISHER + $C8, $a ; trainer +INCLUDE "data/mapHeaders/route21.asm" + +INCLUDE "data/mapObjects/route21.asm" Route21Blocks: ; 5506d (15:506d) INCBIN "maps/route21.blk" @@ -82384,7 +46441,7 @@ Func_5525f: ; 5525f (15:525f) ld a, [wWhichPokemon] ; $cf92 ld hl, W_PARTYMON1NAME ; $d2b5 call GetPartyMonName - ld hl, UnnamedText_554b2 ; $54b2 + ld hl, GainedText call PrintText xor a ld [$cc49], a @@ -82473,7 +46530,7 @@ Func_5525f: ; 5525f (15:525f) callab Func_3ee94 call SaveScreenTilesToBuffer1 .asm_553f7 - ld hl, UnnamedText_554dd ; $54dd + ld hl, GrewLevelText call PrintText xor a ld [$cc49], a @@ -82574,3006 +46631,96 @@ Func_5549f: ; 5549f (15:549f) ld [$ff97], a ret -UnnamedText_554b2: ; 554b2 (15:54b2) - TX_FAR _UnnamedText_554b2 +GainedText: ; 554b2 (15:54b2) + TX_FAR _GainedText db $08 ; asm ld a, [$cc5b] - ld hl, UnnamedText_554cb + ld hl, WithExpAllText and a ret nz - ld hl, UnnamedText_554d8 + ld hl, ExpPointsText ld a, [$cf4d] and a ret z - ld hl, UnnamedText_554d4 + ld hl, BoostedText ret -UnnamedText_554cb: ; 554cb (15:54cb) - TX_FAR _UnnamedText_554cb +WithExpAllText: ; 554cb (15:54cb) + TX_FAR _WithExpAllText db $08 ; asm - ld hl, UnnamedText_554d8 + ld hl, ExpPointsText ret -UnnamedText_554d4: ; 554d4 (15:54d4) - TX_FAR _UnnamedText_554d4 +BoostedText: ; 554d4 (15:54d4) + TX_FAR _BoostedText -UnnamedText_554d8: ; 554d8 (15:54d8) - TX_FAR _UnnamedText_554d8 +ExpPointsText: ; 554d8 (15:54d8) + TX_FAR _ExpPointsText db "@" -UnnamedText_554dd: ; 554dd (15:54dd) - TX_FAR UnnamedText_89c01 +GrewLevelText: ; 554dd (15:54dd) + TX_FAR _GrewLevelText db $0b db "@" -Route2Script: ; 554e3 (15:54e3) - jp EnableAutoTextBoxDrawing - -Route2TextPointers: ; 554e6 (15:54e6) - dw Predef5CText - dw Predef5CText - dw Route2Text3 - dw Route2Text4 - -Route2Text3: ; 554ee (15:54ee) - TX_FAR _Route2Text3 - db "@" - -Route2Text4: ; 554f3 (15:54f3) - TX_FAR _Route2Text4 - db "@" - -Route3Script: ; 554f8 (15:54f8) - call EnableAutoTextBoxDrawing - ld hl, Route3TrainerHeader0 - ld de, Route3ScriptPointers - ld a, [W_ROUTE3CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_ROUTE3CURSCRIPT], a - ret - -Route3ScriptPointers: ; 5550b (15:550b) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -Route3TextPointers: ; 55511 (15:5511) - dw Route3Text1 - dw Route3Text2 - dw Route3Text3 - dw Route3Text4 - dw Route3Text5 - dw Route3Text6 - dw Route3Text7 - dw Route3Text8 - dw Route3Text9 - dw Route3Text10 - -Route3TrainerHeaders: ; 55525 (15:5525) -Route3TrainerHeader0: ; 55525 (15:5525) - db $2 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7c3 ; flag's byte - dw Route3BattleText1 ; 0x5595 TextBeforeBattle - dw Route3AfterBattleText1 ; 0x559f TextAfterBattle - dw Route3EndBattleText1 ; 0x559a TextEndBattle - dw Route3EndBattleText1 ; 0x559a TextEndBattle - -Route3TrainerHeader2: ; 55531 (15:5531) - db $3 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7c3 ; flag's byte - dw Route3BattleText2 ; 0x55ae TextBeforeBattle - dw Route3AfterBattleText2 ; 0x55b8 TextAfterBattle - dw Route3EndBattleText2 ; 0x55b3 TextEndBattle - dw Route3EndBattleText2 ; 0x55b3 TextEndBattle - -Route3TrainerHeader3: ; 5553d (15:553d) - db $4 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7c3 ; flag's byte - dw Route3BattleText3 ; 0x55c7 TextBeforeBattle - dw Route3AfterBattleText3 ; 0x55d1 TextAfterBattle - dw Route3EndBattleText3 ; 0x55cc TextEndBattle - dw Route3EndBattleText3 ; 0x55cc TextEndBattle - -Route3TrainerHeader4: ; 55549 (15:5549) - db $5 ; flag's bit - db ($1 << 4) ; trainer's view range - dw $d7c3 ; flag's byte - dw Route3BattleText4 ; 0x55e0 TextBeforeBattle - dw Route3AfterBattleText4 ; 0x55ea TextAfterBattle - dw Route3EndBattleText4 ; 0x55e5 TextEndBattle - dw Route3EndBattleText4 ; 0x55e5 TextEndBattle - -Route3TrainerHeader5: ; 55555 (15:5555) - db $6 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7c3 ; flag's byte - dw Route3BattleText5 ; 0x55f9 TextBeforeBattle - dw Route3AfterBattleText5 ; 0x5603 TextAfterBattle - dw Route3EndBattleText5 ; 0x55fe TextEndBattle - dw Route3EndBattleText5 ; 0x55fe TextEndBattle - -Route3TrainerHeader6: ; 55561 (15:5561) - db $7 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7c3 ; flag's byte - dw Route3BattleText6 ; 0x5612 TextBeforeBattle - dw Route3AfterBattleText6 ; 0x561c TextAfterBattle - dw Route3EndBattleText6 ; 0x5617 TextEndBattle - dw Route3EndBattleText6 ; 0x5617 TextEndBattle - -Route3TrainerHeader7: ; 5556d (15:556d) - db $8 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7c3 ; flag's byte - dw Route3BattleText7 ; 0x562b TextBeforeBattle - dw Route3AfterBattleText7 ; 0x5635 TextAfterBattle - dw Route3EndBattleText7 ; 0x5630 TextEndBattle - dw Route3EndBattleText7 ; 0x5630 TextEndBattle - -Route3TrainerHeader8: ; 55579 (15:5579) - db $9 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7c3 ; flag's byte - dw Route3BattleText8 ; 0x5644 TextBeforeBattle - dw Route3AfterBattleText8 ; 0x564e TextAfterBattle - dw Route3EndBattleText8 ; 0x5649 TextEndBattle - dw Route3EndBattleText8 ; 0x5649 TextEndBattle - - db $ff - -Route3Text1: ; 55586 (15:5586) - TX_FAR _Route3Text1 - db "@" - -Route3Text2: ; 5558b (15:558b) - db $08 ; asm - ld hl, Route3TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -Route3BattleText1: ; 55595 (15:5595) - TX_FAR _Route3BattleText1 - db "@" - -Route3EndBattleText1: ; 5559a (15:559a) - TX_FAR _Route3EndBattleText1 - db "@" - -Route3AfterBattleText1: ; 5559f (15:559f) - TX_FAR _Route3AfterBattleText1 - db "@" - -Route3Text3: ; 555a4 (15:55a4) - db $08 ; asm - ld hl, Route3TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -Route3BattleText2: ; 555ae (15:55ae) - TX_FAR _Route3BattleText2 - db "@" - -Route3EndBattleText2: ; 555b3 (15:55b3) - TX_FAR _Route3EndBattleText2 - db "@" - -Route3AfterBattleText2: ; 555b8 (15:55b8) - TX_FAR _Route3AfterBattleText2 - db "@" - -Route3Text4: ; 555bd (15:55bd) - db $08 ; asm - ld hl, Route3TrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -Route3BattleText3: ; 555c7 (15:55c7) - TX_FAR _Route3BattleText3 - db "@" - -Route3EndBattleText3: ; 555cc (15:55cc) - TX_FAR _Route3EndBattleText3 - db "@" - -Route3AfterBattleText3: ; 555d1 (15:55d1) - TX_FAR _Route3AfterBattleText3 - db "@" - -Route3Text5: ; 555d6 (15:55d6) - db $08 ; asm - ld hl, Route3TrainerHeader4 - call TalkToTrainer - jp TextScriptEnd - -Route3BattleText4: ; 555e0 (15:55e0) - TX_FAR _Route3BattleText4 - db "@" - -Route3EndBattleText4: ; 555e5 (15:55e5) - TX_FAR _Route3EndBattleText4 - db "@" - -Route3AfterBattleText4: ; 555ea (15:55ea) - TX_FAR _Route3AfterBattleText4 - db "@" - -Route3Text6: ; 555ef (15:55ef) - db $08 ; asm - ld hl, Route3TrainerHeader5 - call TalkToTrainer - jp TextScriptEnd - -Route3BattleText5: ; 555f9 (15:55f9) - TX_FAR _Route3BattleText5 - db "@" - -Route3EndBattleText5: ; 555fe (15:55fe) - TX_FAR _Route3EndBattleText5 - db "@" - -Route3AfterBattleText5: ; 55603 (15:5603) - TX_FAR _Route3AfterBattleText5 - db "@" - -Route3Text7: ; 55608 (15:5608) - db $08 ; asm - ld hl, Route3TrainerHeader6 - call TalkToTrainer - jp TextScriptEnd - -Route3BattleText6: ; 55612 (15:5612) - TX_FAR _Route3BattleText6 - db "@" - -Route3EndBattleText6: ; 55617 (15:5617) - TX_FAR _Route3EndBattleText6 - db "@" - -Route3AfterBattleText6: ; 5561c (15:561c) - TX_FAR _Route3AfterBattleText6 - db "@" - -Route3Text8: ; 55621 (15:5621) - db $08 ; asm - ld hl, Route3TrainerHeader7 - call TalkToTrainer - jp TextScriptEnd - -Route3BattleText7: ; 5562b (15:562b) - TX_FAR _Route3BattleText7 - db "@" - -Route3EndBattleText7: ; 55630 (15:5630) - TX_FAR _Route3EndBattleText7 - db "@" - -Route3AfterBattleText7: ; 55635 (15:5635) - TX_FAR _Route3AfterBattleText7 - db "@" - -Route3Text9: ; 5563a (15:563a) - db $08 ; asm - ld hl, Route3TrainerHeader8 - call TalkToTrainer - jp TextScriptEnd - -Route3BattleText8: ; 55644 (15:5644) - TX_FAR _Route3BattleText8 - db "@" - -Route3EndBattleText8: ; 55649 (15:5649) - TX_FAR _Route3EndBattleText8 - db "@" - -Route3AfterBattleText8: ; 5564e (15:564e) - TX_FAR _Route3AfterBattleText8 - db "@" - -Route3Text10: ; 55653 (15:5653) - TX_FAR _Route3Text10 - db "@" - -Route4Script: ; 55658 (15:5658) - call EnableAutoTextBoxDrawing - ld hl, Route4TrainerHeaders - ld de, Route4ScriptPointers - ld a, [W_ROUTE4CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_ROUTE4CURSCRIPT], a - ret - -Route4ScriptPointers: ; 5566b (15:566b) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -Route4TextPointers: ; 55671 (15:5671) - dw Route4Text1 - dw Route4Text2 - dw Predef5CText - dw PokeCenterSignText - dw Route4Text5 - dw Route4Text6 - -Route4TrainerHeaders: ; 5567d (15:567d) -Route4TrainerHeader0: ; 5567d (15:567d) - db $2 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7c5 ; flag's byte - dw Route4BattleText1 ; 0x5699 TextBeforeBattle - dw Route4AfterBattleText1 ; 0x56a3 TextAfterBattle - dw Route4EndBattleText1 ; 0x569e TextEndBattle - dw Route4EndBattleText1 ; 0x569e TextEndBattle - - db $ff - -Route4Text1: ; 5568a (15:568a) - TX_FAR _Route4Text1 - db "@" - -Route4Text2: ; 5568f (15:568f) - db $08 ; asm - ld hl, Route4TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -Route4BattleText1: ; 55699 (15:5699) - TX_FAR _Route4BattleText1 - db "@" - -Route4EndBattleText1: ; 5569e (15:569e) - TX_FAR _Route4EndBattleText1 - db "@" - -Route4AfterBattleText1: ; 556a3 (15:56a3) - TX_FAR _Route4AfterBattleText1 - db "@" - -Route4Text5: ; 556a8 (15:56a8) - TX_FAR _Route4Text5 - db "@" - -Route4Text6: ; 556ad (15:56ad) - TX_FAR _Route4Text6 - db "@" - -Route5Script: ; 556b2 (15:56b2) - jp EnableAutoTextBoxDrawing - -Route5TextPointers: ; 556b5 (15:56b5) - dw Route5Text1 - -Route5Text1: ; 556b7 (15:56b7) - TX_FAR _Route5Text1 - db "@" - -Route9Script: ; 556bc (15:56bc) - call EnableAutoTextBoxDrawing - ld hl, Route9TrainerHeaders - ld de, Route9ScriptPointers - ld a, [W_ROUTE9CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_ROUTE9CURSCRIPT], a - ret - -Route9ScriptPointers: ; 556cf (15:56cf) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -Route9TextPointers: ; 556d5 (15:56d5) - dw Route9Text1 - dw Route9Text2 - dw Route9Text3 - dw Route9Text4 - dw Route9Text5 - dw Route9Text6 - dw Route9Text7 - dw Route9Text8 - dw Route9Text9 - dw Predef5CText - dw Route9Text11 - -Route9TrainerHeaders: ; 556eb (15:56eb) -Route9TrainerHeader0: ; 556eb (15:56eb) - db $1 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7cf ; flag's byte - dw Route9BattleText1 ; 0x5792 TextBeforeBattle - dw Route9AfterBattleText1 ; 0x579c TextAfterBattle - dw Route9EndBattleText1 ; 0x5797 TextEndBattle - dw Route9EndBattleText1 ; 0x5797 TextEndBattle - -Route9TrainerHeader2: ; 556f7 (15:56f7) - db $2 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7cf ; flag's byte - dw Route9BattleText2 ; 0x57a1 TextBeforeBattle - dw Route9AfterBattleText2 ; 0x57ab TextAfterBattle - dw Route9EndBattleText2 ; 0x57a6 TextEndBattle - dw Route9EndBattleText2 ; 0x57a6 TextEndBattle - -Route9TrainerHeader3: ; 55703 (15:5703) - db $3 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7cf ; flag's byte - dw Route9BattleText3 ; 0x57b0 TextBeforeBattle - dw Route9AfterBattleText3 ; 0x57ba TextAfterBattle - dw Route9EndBattleText3 ; 0x57b5 TextEndBattle - dw Route9EndBattleText3 ; 0x57b5 TextEndBattle - -Route9TrainerHeader4: ; 5570f (15:570f) - db $4 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7cf ; flag's byte - dw Route9BattleText4 ; 0x57bf TextBeforeBattle - dw Route9AfterBattleText4 ; 0x57c9 TextAfterBattle - dw Route9EndBattleText4 ; 0x57c4 TextEndBattle - dw Route9EndBattleText4 ; 0x57c4 TextEndBattle - -Route9TrainerHeader5: ; 5571b (15:571b) - db $5 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7cf ; flag's byte - dw Route9BattleText5 ; 0x57ce TextBeforeBattle - dw Route9AfterBattleText5 ; 0x57d8 TextAfterBattle - dw Route9EndBattleText5 ; 0x57d3 TextEndBattle - dw Route9EndBattleText5 ; 0x57d3 TextEndBattle - -Route9TrainerHeader6: ; 55727 (15:5727) - db $6 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7cf ; flag's byte - dw Route9BattleText6 ; 0x57dd TextBeforeBattle - dw Route9AfterBattleText6 ; 0x57e7 TextAfterBattle - dw Route9EndBattleText6 ; 0x57e2 TextEndBattle - dw Route9EndBattleText6 ; 0x57e2 TextEndBattle - -Route9TrainerHeader7: ; 55733 (15:5733) - db $7 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7cf ; flag's byte - dw Route9BattleText7 ; 0x57ec TextBeforeBattle - dw Route9AfterBattleText7 ; 0x57f6 TextAfterBattle - dw Route9EndBattleText7 ; 0x57f1 TextEndBattle - dw Route9EndBattleText7 ; 0x57f1 TextEndBattle - -Route9TrainerHeader8: ; 5573f (15:573f) - db $8 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7cf ; flag's byte - dw Route9BattleText8 ; 0x57fb TextBeforeBattle - dw Route9AfterBattleText8 ; 0x5805 TextAfterBattle - dw Route9EndBattleText8 ; 0x5800 TextEndBattle - dw Route9EndBattleText8 ; 0x5800 TextEndBattle - -Route9TrainerHeader9: ; 5574b (15:574b) - db $9 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7cf ; flag's byte - dw Route9BattleText9 ; 0x580a TextBeforeBattle - dw Route9AfterBattleText9 ; 0x5814 TextAfterBattle - dw Route9EndBattleText9 ; 0x580f TextEndBattle - dw Route9EndBattleText9 ; 0x580f TextEndBattle - - db $ff - -Route9Text1: ; 55758 (15:5758) - db $8 ; asm - ld hl, Route9TrainerHeader0 - jr asm_8be3d ; 0x5575c $2e - -Route9Text2: ; 5575e (15:575e) - db $8 ; asm - ld hl, Route9TrainerHeader2 - jr asm_8be3d ; 0x55762 $28 - -Route9Text3: ; 55764 (15:5764) - db $8 ; asm - ld hl, Route9TrainerHeader3 - jr asm_8be3d ; 0x55768 $22 - -Route9Text4: ; 5576a (15:576a) - db $8 ; asm - ld hl, Route9TrainerHeader4 - jr asm_8be3d ; 0x5576e $1c - -Route9Text5: ; 55770 (15:5770) - db $8 ; asm - ld hl, Route9TrainerHeader5 - jr asm_8be3d ; 0x55774 $16 - -Route9Text6: ; 55776 (15:5776) - db $8 ; asm - ld hl, Route9TrainerHeader6 - jr asm_8be3d ; 0x5577a $10 - -Route9Text7: ; 5577c (15:577c) - db $8 ; asm - ld hl, Route9TrainerHeader7 - jr asm_8be3d ; 0x55780 $a - -Route9Text8: ; 55782 (15:5782) - db $8 ; asm - ld hl, Route9TrainerHeader8 - jr asm_8be3d ; 0x55786 $4 - -Route9Text9: ; 55788 (15:5788) - db $8 ; asm - ld hl, Route9TrainerHeader9 -asm_8be3d: ; 5578c (15:578c) - call TalkToTrainer - jp TextScriptEnd - -Route9BattleText1: ; 55792 (15:5792) - TX_FAR _Route9BattleText1 - db "@" - -Route9EndBattleText1: ; 55797 (15:5797) - TX_FAR _Route9EndBattleText1 - db "@" - -Route9AfterBattleText1: ; 5579c (15:579c) - TX_FAR _Route9AfterBattleText1 - db "@" - -Route9BattleText2: ; 557a1 (15:57a1) - TX_FAR _Route9BattleText2 - db "@" - -Route9EndBattleText2: ; 557a6 (15:57a6) - TX_FAR _Route9EndBattleText2 - db "@" - -Route9AfterBattleText2: ; 557ab (15:57ab) - TX_FAR _Route9AfterBattleText2 - db "@" - -Route9BattleText3: ; 557b0 (15:57b0) - TX_FAR _Route9BattleText3 - db "@" - -Route9EndBattleText3: ; 557b5 (15:57b5) - TX_FAR _Route9EndBattleText3 - db "@" - -Route9AfterBattleText3: ; 557ba (15:57ba) - TX_FAR _Route9AfterBattleText3 - db "@" - -Route9BattleText4: ; 557bf (15:57bf) - TX_FAR _Route9BattleText4 - db "@" - -Route9EndBattleText4: ; 557c4 (15:57c4) - TX_FAR _Route9EndBattleText4 - db "@" - -Route9AfterBattleText4: ; 557c9 (15:57c9) - TX_FAR _Route9AfterBattleText4 - db "@" - -Route9BattleText5: ; 557ce (15:57ce) - TX_FAR _Route9BattleText5 - db "@" - -Route9EndBattleText5: ; 557d3 (15:57d3) - TX_FAR _Route9EndBattleText5 - db "@" - -Route9AfterBattleText5: ; 557d8 (15:57d8) - TX_FAR _Route9AfterBattleText5 - db "@" - -Route9BattleText6: ; 557dd (15:57dd) - TX_FAR _Route9BattleText6 - db "@" - -Route9EndBattleText6: ; 557e2 (15:57e2) - TX_FAR _Route9EndBattleText6 - db "@" - -Route9AfterBattleText6: ; 557e7 (15:57e7) - TX_FAR _Route9AfterBattleText6 - db "@" - -Route9BattleText7: ; 557ec (15:57ec) - TX_FAR _Route9BattleText7 - db "@" - -Route9EndBattleText7: ; 557f1 (15:57f1) - TX_FAR _Route9EndBattleText7 - db "@" - -Route9AfterBattleText7: ; 557f6 (15:57f6) - TX_FAR _Route9AfterBattleText7 - db "@" - -Route9BattleText8: ; 557fb (15:57fb) - TX_FAR _Route9BattleText8 - db "@" - -Route9EndBattleText8: ; 55800 (15:5800) - TX_FAR _Route9EndBattleText8 - db "@" - -Route9AfterBattleText8: ; 55805 (15:5805) - TX_FAR _Route9AfterBattleText8 - db "@" - -Route9BattleText9: ; 5580a (15:580a) - TX_FAR _Route9BattleText9 - db "@" - -Route9EndBattleText9: ; 5580f (15:580f) - TX_FAR _Route9EndBattleText9 - db "@" - -Route9AfterBattleText9: ; 55814 (15:5814) - TX_FAR _Route9AfterBattleText9 - db "@" - -Route9Text11: ; 55819 (15:5819) - TX_FAR _Route9Text11 - db "@" - -Route13Script: ; 5581e (15:581e) - call EnableAutoTextBoxDrawing - ld hl, Route13TrainerHeaders - ld de, Route13ScriptPointers - ld a, [W_ROUTE13CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_ROUTE13CURSCRIPT], a - ret - -Route13ScriptPointers: ; 55831 (15:5831) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -Route13TextPointers: ; 55837 (15:5837) - dw Route13Text1 - dw Route13Text2 - dw Route13Text3 - dw Route13Text4 - dw Route13Text5 - dw Route13Text6 - dw Route13Text7 - dw Route13Text8 - dw Route13Text9 - dw Route13Text10 - dw Route13Text11 - dw Route13Text12 - dw Route13Text13 - -Route13TrainerHeaders: ; 55851 (15:5851) -Route13TrainerHeader0: ; 55851 (15:5851) - db $1 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7d9 ; flag's byte - dw Route13BattleText2 ; 0x58d4 TextBeforeBattle - dw Route13AfterBattleText2 ; 0x58de TextAfterBattle - dw Route13EndBattleText2 ; 0x58d9 TextEndBattle - dw Route13EndBattleText2 ; 0x58d9 TextEndBattle - -Route13TrainerHeader2: ; 5585d (15:585d) - db $2 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7d9 ; flag's byte - dw Route13BattleText3 ; 0x58ed TextBeforeBattle - dw Route13AfterBattleText3 ; 0x58f7 TextAfterBattle - dw Route13EndBattleText3 ; 0x58f2 TextEndBattle - dw Route13EndBattleText3 ; 0x58f2 TextEndBattle - -Route13TrainerHeader3: ; 55869 (15:5869) - db $3 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7d9 ; flag's byte - dw Route13BattleText4 ; 0x5906 TextBeforeBattle - dw Route13AfterBattleText4 ; 0x5910 TextAfterBattle - dw Route13EndBattleText4 ; 0x590b TextEndBattle - dw Route13EndBattleText4 ; 0x590b TextEndBattle - -Route13TrainerHeader4: ; 55875 (15:5875) - db $4 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7d9 ; flag's byte - dw Route13BattleText5 ; 0x591f TextBeforeBattle - dw Route13AfterBattleText5 ; 0x5929 TextAfterBattle - dw Route13EndBattleText5 ; 0x5924 TextEndBattle - dw Route13EndBattleText5 ; 0x5924 TextEndBattle - -Route13TrainerHeader5: ; 55881 (15:5881) - db $5 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7d9 ; flag's byte - dw Route13BattleText6 ; 0x5938 TextBeforeBattle - dw Route13AfterBattleText6 ; 0x5942 TextAfterBattle - dw Route13EndBattleText6 ; 0x593d TextEndBattle - dw Route13EndBattleText6 ; 0x593d TextEndBattle - -Route13TrainerHeader6: ; 5588d (15:588d) - db $6 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7d9 ; flag's byte - dw Route13BattleText7 ; 0x5951 TextBeforeBattle - dw Route13AfterBattleText7 ; 0x595b TextAfterBattle - dw Route13EndBattleText7 ; 0x5956 TextEndBattle - dw Route13EndBattleText7 ; 0x5956 TextEndBattle - -Route13TrainerHeader7: ; 55899 (15:5899) - db $7 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7d9 ; flag's byte - dw Route13BattleText8 ; 0x596a TextBeforeBattle - dw Route13AfterBattleText8 ; 0x5974 TextAfterBattle - dw Route13EndBattleText8 ; 0x596f TextEndBattle - dw Route13EndBattleText8 ; 0x596f TextEndBattle - -Route13TrainerHeader8: ; 558a5 (15:58a5) - db $8 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7d9 ; flag's byte - dw Route13BattleText9 ; 0x5983 TextBeforeBattle - dw Route13AfterBattleText9 ; 0x598d TextAfterBattle - dw Route13EndBattleText9 ; 0x5988 TextEndBattle - dw Route13EndBattleText9 ; 0x5988 TextEndBattle - -Route13TrainerHeader9: ; 558b1 (15:58b1) - db $9 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7d9 ; flag's byte - dw Route13BattleText10 ; 0x599c TextBeforeBattle - dw Route13AfterBattleText10 ; 0x59a6 TextAfterBattle - dw Route13EndBattleText10 ; 0x59a1 TextEndBattle - dw Route13EndBattleText10 ; 0x59a1 TextEndBattle - -Route13TrainerHeader10: ; 558bd (15:58bd) - db $a ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7d9 ; flag's byte - dw Route13BattleText11 ; 0x59b5 TextBeforeBattle - dw Route13AfterBattleText11 ; 0x59bf TextAfterBattle - dw Route13EndBattleText11 ; 0x59ba TextEndBattle - dw Route13EndBattleText11 ; 0x59ba TextEndBattle - - db $ff - -Route13Text1: ; 558ca (15:58ca) - db $08 ; asm - ld hl, Route13TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -Route13BattleText2: ; 558d4 (15:58d4) - TX_FAR _Route13BattleText2 - db "@" - -Route13EndBattleText2: ; 558d9 (15:58d9) - TX_FAR _Route13EndBattleText2 - db "@" - -Route13AfterBattleText2: ; 558de (15:58de) - TX_FAR _Route13AfterBattleText2 - db "@" - -Route13Text2: ; 558e3 (15:58e3) - db $08 ; asm - ld hl, Route13TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -Route13BattleText3: ; 558ed (15:58ed) - TX_FAR _Route13BattleText3 - db "@" - -Route13EndBattleText3: ; 558f2 (15:58f2) - TX_FAR _Route13EndBattleText3 - db "@" - -Route13AfterBattleText3: ; 558f7 (15:58f7) - TX_FAR _Route13AfterBattleText3 - db "@" - -Route13Text3: ; 558fc (15:58fc) - db $08 ; asm - ld hl, Route13TrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -Route13BattleText4: ; 55906 (15:5906) - TX_FAR _Route13BattleText4 - db "@" - -Route13EndBattleText4: ; 5590b (15:590b) - TX_FAR _Route13EndBattleText4 - db "@" - -Route13AfterBattleText4: ; 55910 (15:5910) - TX_FAR _Route13AfterBattleText4 - db "@" - -Route13Text4: ; 55915 (15:5915) - db $08 ; asm - ld hl, Route13TrainerHeader4 - call TalkToTrainer - jp TextScriptEnd - -Route13BattleText5: ; 5591f (15:591f) - TX_FAR _Route13BattleText5 - db "@" - -Route13EndBattleText5: ; 55924 (15:5924) - TX_FAR _Route13EndBattleText5 - db "@" - -Route13AfterBattleText5: ; 55929 (15:5929) - TX_FAR _Route13AfterBattleText5 - db "@" - -Route13Text5: ; 5592e (15:592e) - db $08 ; asm - ld hl, Route13TrainerHeader5 - call TalkToTrainer - jp TextScriptEnd - -Route13BattleText6: ; 55938 (15:5938) - TX_FAR _Route13BattleText6 - db "@" - -Route13EndBattleText6: ; 5593d (15:593d) - TX_FAR _Route13EndBattleText6 - db "@" - -Route13AfterBattleText6: ; 55942 (15:5942) - TX_FAR _Route13AfterBattleText6 - db "@" - -Route13Text6: ; 55947 (15:5947) - db $08 ; asm - ld hl, Route13TrainerHeader6 - call TalkToTrainer - jp TextScriptEnd - -Route13BattleText7: ; 55951 (15:5951) - TX_FAR _Route13BattleText7 - db "@" - -Route13EndBattleText7: ; 55956 (15:5956) - TX_FAR _Route13EndBattleText7 - db "@" - -Route13AfterBattleText7: ; 5595b (15:595b) - TX_FAR _Route13AfterBattleText7 - db "@" - -Route13Text7: ; 55960 (15:5960) - db $08 ; asm - ld hl, Route13TrainerHeader7 - call TalkToTrainer - jp TextScriptEnd - -Route13BattleText8: ; 5596a (15:596a) - TX_FAR _Route13BattleText8 - db "@" - -Route13EndBattleText8: ; 5596f (15:596f) - TX_FAR _Route13EndBattleText8 - db "@" - -Route13AfterBattleText8: ; 55974 (15:5974) - TX_FAR _Route13AfterBattleText8 - db "@" - -Route13Text8: ; 55979 (15:5979) - db $08 ; asm - ld hl, Route13TrainerHeader8 - call TalkToTrainer - jp TextScriptEnd - -Route13BattleText9: ; 55983 (15:5983) - TX_FAR _Route13BattleText9 - db "@" - -Route13EndBattleText9: ; 55988 (15:5988) - TX_FAR _Route13EndBattleText9 - db "@" - -Route13AfterBattleText9: ; 5598d (15:598d) - TX_FAR _Route13AfterBattleText9 - db "@" - -Route13Text9: ; 55992 (15:5992) - db $08 ; asm - ld hl, Route13TrainerHeader9 - call TalkToTrainer - jp TextScriptEnd - -Route13BattleText10: ; 5599c (15:599c) - TX_FAR _Route13BattleText10 - db "@" - -Route13EndBattleText10: ; 559a1 (15:59a1) - TX_FAR _Route13EndBattleText10 - db "@" - -Route13AfterBattleText10: ; 559a6 (15:59a6) - TX_FAR _Route13AfterBattleText10 - db "@" - -Route13Text10: ; 559ab (15:59ab) - db $08 ; asm - ld hl, Route13TrainerHeader10 - call TalkToTrainer - jp TextScriptEnd - -Route13BattleText11: ; 559b5 (15:59b5) - TX_FAR _Route13BattleText11 - db "@" - -Route13EndBattleText11: ; 559ba (15:59ba) - TX_FAR _Route13EndBattleText11 - db "@" - -Route13AfterBattleText11: ; 559bf (15:59bf) - TX_FAR _Route13AfterBattleText11 - db "@" - -Route13Text11: ; 559c4 (15:59c4) - TX_FAR _Route13Text11 - db "@" - -Route13Text12: ; 559c9 (15:59c9) - TX_FAR _Route13Text12 - db "@" - -Route13Text13: ; 559ce (15:59ce) - TX_FAR _Route13Text13 - db "@" - -Route14Script: ; 559d3 (15:59d3) - call EnableAutoTextBoxDrawing - ld hl, Route14TrainerHeaders - ld de, Route14ScriptPointers - ld a, [W_ROUTE14CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_ROUTE14CURSCRIPT], a - ret - -Route14ScriptPointers: ; 559e6 (15:59e6) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -Route14TextPointers: ; 559ec (15:59ec) - dw Route14Text1 - dw Route14Text2 - dw Route14Text3 - dw Route14Text4 - dw Route14Text5 - dw Route14Text6 - dw Route14Text7 - dw Route14Text8 - dw Route14Text9 - dw Route14Text10 - dw Route14Text11 - -Route14TrainerHeaders: ; 55a02 (15:5a02) -Route14TrainerHeader0: ; 55a02 (15:5a02) - db $1 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7db ; flag's byte - dw Route14BattleText1 ; 0x5a85 TextBeforeBattle - dw Route14AfterBattleText1 ; 0x5a8f TextAfterBattle - dw Route14EndBattleText1 ; 0x5a8a TextEndBattle - dw Route14EndBattleText1 ; 0x5a8a TextEndBattle - -Route14TrainerHeader1: ; 55a0e (15:5a0e) - db $2 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7db ; flag's byte - dw Route14BattleText2 ; 0x5a9e TextBeforeBattle - dw Route14AfterBattleText2 ; 0x5aa8 TextAfterBattle - dw Route14EndBattleText2 ; 0x5aa3 TextEndBattle - dw Route14EndBattleText2 ; 0x5aa3 TextEndBattle - -Route14TrainerHeader2: ; 55a1a (15:5a1a) - db $3 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7db ; flag's byte - dw Route14BattleText3 ; 0x5ab7 TextBeforeBattle - dw Route14AfterBattleText3 ; 0x5ac1 TextAfterBattle - dw Route14EndBattleText3 ; 0x5abc TextEndBattle - dw Route14EndBattleText3 ; 0x5abc TextEndBattle - -Route14TrainerHeader3: ; 55a26 (15:5a26) - db $4 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7db ; flag's byte - dw Route14BattleText4 ; 0x5ad0 TextBeforeBattle - dw Route14AfterBattleText4 ; 0x5ada TextAfterBattle - dw Route14EndBattleText4 ; 0x5ad5 TextEndBattle - dw Route14EndBattleText4 ; 0x5ad5 TextEndBattle - -Route14TrainerHeader4: ; 55a32 (15:5a32) - db $5 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7db ; flag's byte - dw Route14BattleText5 ; 0x5ae9 TextBeforeBattle - dw Route14AfterBattleText5 ; 0x5af3 TextAfterBattle - dw Route14EndBattleText5 ; 0x5aee TextEndBattle - dw Route14EndBattleText5 ; 0x5aee TextEndBattle - -Route14TrainerHeader5: ; 55a3e (15:5a3e) - db $6 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7db ; flag's byte - dw Route14BattleText6 ; 0x5b02 TextBeforeBattle - dw Route14AfterBattleText6 ; 0x5b0c TextAfterBattle - dw Route14EndBattleText6 ; 0x5b07 TextEndBattle - dw Route14EndBattleText6 ; 0x5b07 TextEndBattle - -Route14TrainerHeader6: ; 55a4a (15:5a4a) - db $7 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7db ; flag's byte - dw Route14BattleText7 ; 0x5b1b TextBeforeBattle - dw Route14AfterBattleText7 ; 0x5b25 TextAfterBattle - dw Route14EndBattleText7 ; 0x5b20 TextEndBattle - dw Route14EndBattleText7 ; 0x5b20 TextEndBattle - -Route14TrainerHeader7: ; 55a56 (15:5a56) - db $8 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7db ; flag's byte - dw Route14BattleText8 ; 0x5b34 TextBeforeBattle - dw Route14AfterBattleText8 ; 0x5b3e TextAfterBattle - dw Route14EndBattleText8 ; 0x5b39 TextEndBattle - dw Route14EndBattleText8 ; 0x5b39 TextEndBattle - -Route14TrainerHeader8: ; 55a62 (15:5a62) - db $9 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7db ; flag's byte - dw Route14BattleText9 ; 0x5b4d TextBeforeBattle - dw Route14AfterBattleText9 ; 0x5b57 TextAfterBattle - dw Route14EndBattleText9 ; 0x5b52 TextEndBattle - dw Route14EndBattleText9 ; 0x5b52 TextEndBattle - -Route14TrainerHeader9: ; 55a6e (15:5a6e) - db $a ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7db ; flag's byte - dw Route14BattleText10 ; 0x5b66 TextBeforeBattle - dw Route14AfterBattleText10 ; 0x5b70 TextAfterBattle - dw Route14EndBattleText10 ; 0x5b6b TextEndBattle - dw Route14EndBattleText10 ; 0x5b6b TextEndBattle - - db $ff - -Route14Text1: ; 55a7b (15:5a7b) - db $08 ; asm - ld hl, Route14TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -Route14BattleText1: ; 55a85 (15:5a85) - TX_FAR _Route14BattleText1 - db "@" - -Route14EndBattleText1: ; 55a8a (15:5a8a) - TX_FAR _Route14EndBattleText1 - db "@" - -Route14AfterBattleText1: ; 55a8f (15:5a8f) - TX_FAR _Route14AfterBattleText1 - db "@" - -Route14Text2: ; 55a94 (15:5a94) - db $08 ; asm - ld hl, Route14TrainerHeader1 - call TalkToTrainer - jp TextScriptEnd - -Route14BattleText2: ; 55a9e (15:5a9e) - TX_FAR _Route14BattleText2 - db "@" - -Route14EndBattleText2: ; 55aa3 (15:5aa3) - TX_FAR _Route14EndBattleText2 - db "@" - -Route14AfterBattleText2: ; 55aa8 (15:5aa8) - TX_FAR _Route14AfterBattleText2 - db "@" - -Route14Text3: ; 55aad (15:5aad) - db $08 ; asm - ld hl, Route14TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -Route14BattleText3: ; 55ab7 (15:5ab7) - TX_FAR _Route14BattleText3 - db "@" - -Route14EndBattleText3: ; 55abc (15:5abc) - TX_FAR _Route14EndBattleText3 - db "@" - -Route14AfterBattleText3: ; 55ac1 (15:5ac1) - TX_FAR _Route14AfterBattleText3 - db "@" - -Route14Text4: ; 55ac6 (15:5ac6) - db $08 ; asm - ld hl, Route14TrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -Route14BattleText4: ; 55ad0 (15:5ad0) - TX_FAR _Route14BattleText4 - db "@" - -Route14EndBattleText4: ; 55ad5 (15:5ad5) - TX_FAR _Route14EndBattleText4 - db "@" - -Route14AfterBattleText4: ; 55ada (15:5ada) - TX_FAR _Route14AfterBattleText4 - db "@" - -Route14Text5: ; 55adf (15:5adf) - db $08 ; asm - ld hl, Route14TrainerHeader4 - call TalkToTrainer - jp TextScriptEnd - -Route14BattleText5: ; 55ae9 (15:5ae9) - TX_FAR _Route14BattleText5 - db "@" - -Route14EndBattleText5: ; 55aee (15:5aee) - TX_FAR _Route14EndBattleText5 - db "@" - -Route14AfterBattleText5: ; 55af3 (15:5af3) - TX_FAR _Route14AfterBattleText5 - db "@" - -Route14Text6: ; 55af8 (15:5af8) - db $08 ; asm - ld hl, Route14TrainerHeader5 - call TalkToTrainer - jp TextScriptEnd - -Route14BattleText6: ; 55b02 (15:5b02) - TX_FAR _Route14BattleText6 - db "@" - -Route14EndBattleText6: ; 55b07 (15:5b07) - TX_FAR _Route14EndBattleText6 - db "@" - -Route14AfterBattleText6: ; 55b0c (15:5b0c) - TX_FAR _Route14AfterBattleText6 - db "@" - -Route14Text7: ; 55b11 (15:5b11) - db $08 ; asm - ld hl, Route14TrainerHeader6 - call TalkToTrainer - jp TextScriptEnd - -Route14BattleText7: ; 55b1b (15:5b1b) - TX_FAR _Route14BattleText7 - db "@" - -Route14EndBattleText7: ; 55b20 (15:5b20) - TX_FAR _Route14EndBattleText7 - db "@" - -Route14AfterBattleText7: ; 55b25 (15:5b25) - TX_FAR _Route14AfterBattleText7 - db "@" - -Route14Text8: ; 55b2a (15:5b2a) - db $08 ; asm - ld hl, Route14TrainerHeader7 - call TalkToTrainer - jp TextScriptEnd - -Route14BattleText8: ; 55b34 (15:5b34) - TX_FAR _Route14BattleText8 - db "@" - -Route14EndBattleText8: ; 55b39 (15:5b39) - TX_FAR _Route14EndBattleText8 - db "@" - -Route14AfterBattleText8: ; 55b3e (15:5b3e) - TX_FAR _Route14AfterBattleText8 - db "@" - -Route14Text9: ; 55b43 (15:5b43) - db $08 ; asm - ld hl, Route14TrainerHeader8 - call TalkToTrainer - jp TextScriptEnd - -Route14BattleText9: ; 55b4d (15:5b4d) - TX_FAR _Route14BattleText9 - db "@" - -Route14EndBattleText9: ; 55b52 (15:5b52) - TX_FAR _Route14EndBattleText9 - db "@" - -Route14AfterBattleText9: ; 55b57 (15:5b57) - TX_FAR _Route14AfterBattleText9 - db "@" - -Route14Text10: ; 55b5c (15:5b5c) - db $08 ; asm - ld hl, Route14TrainerHeader9 - call TalkToTrainer - jp TextScriptEnd - -Route14BattleText10: ; 55b66 (15:5b66) - TX_FAR _Route14BattleText10 - db "@" - -Route14EndBattleText10: ; 55b6b (15:5b6b) - TX_FAR _Route14EndBattleText10 - db "@" - -Route14AfterBattleText10: ; 55b70 (15:5b70) - TX_FAR _Route14AfterBattleText10 - db "@" - -Route14Text11: ; 55b75 (15:5b75) - TX_FAR _Route14Text11 - db "@" - -Route17Script: ; 55b7a (15:5b7a) - call EnableAutoTextBoxDrawing - ld hl, Route17TrainerHeaders - ld de, Route17ScriptPointers - ld a, [W_ROUTE17CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_ROUTE17CURSCRIPT], a - ret - -Route17ScriptPointers: ; 55b8d (15:5b8d) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -Route17TextPointers: ; 55b93 (15:5b93) - dw Route17Text1 - dw Route17Text2 - dw Route17Text3 - dw Route17Text4 - dw Route17Text5 - dw Route17Text6 - dw Route17Text7 - dw Route17Text8 - dw Route17Text9 - dw Route17Text10 - dw Route17Text11 - dw Route17Text12 - dw Route17Text13 - dw Route17Text14 - dw Route17Text15 - dw Route17Text16 - -Route17TrainerHeaders: ; 55bb3 (15:5bb3) -Route17TrainerHeader0: ; 55bb3 (15:5bb3) - db $1 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7e1 ; flag's byte - dw Route17BattleText1 ; 0x5c36 TextBeforeBattle - dw Route17AfterBattleText1 ; 0x5c40 TextAfterBattle - dw Route17EndBattleText1 ; 0x5c3b TextEndBattle - dw Route17EndBattleText1 ; 0x5c3b TextEndBattle - -Route17TrainerHeader1: ; 55bbf (15:5bbf) - db $2 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7e1 ; flag's byte - dw Route17BattleText2 ; 0x5c4f TextBeforeBattle - dw Route17AfterBattleText2 ; 0x5c59 TextAfterBattle - dw Route17EndBattleText2 ; 0x5c54 TextEndBattle - dw Route17EndBattleText2 ; 0x5c54 TextEndBattle - -Route17TrainerHeader2: ; 55bcb (15:5bcb) - db $3 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7e1 ; flag's byte - dw Route17BattleText3 ; 0x5c68 TextBeforeBattle - dw Route17AfterBattleText3 ; 0x5c72 TextAfterBattle - dw Route17EndBattleText3 ; 0x5c6d TextEndBattle - dw Route17EndBattleText3 ; 0x5c6d TextEndBattle - -Route17TrainerHeader3: ; 55bd7 (15:5bd7) - db $4 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7e1 ; flag's byte - dw Route17BattleText4 ; 0x5c81 TextBeforeBattle - dw Route17AfterBattleText4 ; 0x5c8b TextAfterBattle - dw Route17EndBattleText4 ; 0x5c86 TextEndBattle - dw Route17EndBattleText4 ; 0x5c86 TextEndBattle - -Route17TrainerHeader4: ; 55be3 (15:5be3) - db $5 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7e1 ; flag's byte - dw Route17BattleText5 ; 0x5c9a TextBeforeBattle - dw Route17AfterBattleText5 ; 0x5ca4 TextAfterBattle - dw Route17EndBattleText5 ; 0x5c9f TextEndBattle - dw Route17EndBattleText5 ; 0x5c9f TextEndBattle - -Route17TrainerHeader5: ; 55bef (15:5bef) - db $6 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7e1 ; flag's byte - dw Route17BattleText6 ; 0x5cb3 TextBeforeBattle - dw Route17AfterBattleText6 ; 0x5cbd TextAfterBattle - dw Route17EndBattleText6 ; 0x5cb8 TextEndBattle - dw Route17EndBattleText6 ; 0x5cb8 TextEndBattle - -Route17TrainerHeader6: ; 55bfb (15:5bfb) - db $7 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7e1 ; flag's byte - dw Route17BattleText7 ; 0x5ccc TextBeforeBattle - dw Route17AfterBattleText7 ; 0x5cd6 TextAfterBattle - dw Route17EndBattleText7 ; 0x5cd1 TextEndBattle - dw Route17EndBattleText7 ; 0x5cd1 TextEndBattle - -Route17TrainerHeader7: ; 55c07 (15:5c07) - db $8 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7e1 ; flag's byte - dw Route17BattleText8 ; 0x5ce5 TextBeforeBattle - dw Route17AfterBattleText8 ; 0x5cef TextAfterBattle - dw Route17EndBattleText8 ; 0x5cea TextEndBattle - dw Route17EndBattleText8 ; 0x5cea TextEndBattle - -Route17TrainerHeader8: ; 55c13 (15:5c13) - db $9 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7e1 ; flag's byte - dw Route17BattleText9 ; 0x5cfe TextBeforeBattle - dw Route17AfterBattleText9 ; 0x5d08 TextAfterBattle - dw Route17EndBattleText9 ; 0x5d03 TextEndBattle - dw Route17EndBattleText9 ; 0x5d03 TextEndBattle - -Route17TrainerHeader9: ; 55c1f (15:5c1f) - db $a ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7e1 ; flag's byte - dw Route17BattleText10 ; 0x5d17 TextBeforeBattle - dw Route17AfterBattleText10 ; 0x5d21 TextAfterBattle - dw Route17EndBattleText10 ; 0x5d1c TextEndBattle - dw Route17EndBattleText10 ; 0x5d1c TextEndBattle - - db $ff - -Route17Text1: ; 55c2c (15:5c2c) - db $08 ; asm - ld hl, Route17TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -Route17BattleText1: ; 55c36 (15:5c36) - TX_FAR _Route17BattleText1 - db "@" - -Route17EndBattleText1: ; 55c3b (15:5c3b) - TX_FAR _Route17EndBattleText1 - db "@" - -Route17AfterBattleText1: ; 55c40 (15:5c40) - TX_FAR _Route17AfterBattleText1 - db "@" - -Route17Text2: ; 55c45 (15:5c45) - db $08 ; asm - ld hl, Route17TrainerHeader1 - call TalkToTrainer - jp TextScriptEnd - -Route17BattleText2: ; 55c4f (15:5c4f) - TX_FAR _Route17BattleText2 - db "@" - -Route17EndBattleText2: ; 55c54 (15:5c54) - TX_FAR _Route17EndBattleText2 - db "@" - -Route17AfterBattleText2: ; 55c59 (15:5c59) - TX_FAR _Route17AfterBattleText2 - db "@" - -Route17Text3: ; 55c5e (15:5c5e) - db $08 ; asm - ld hl, Route17TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -Route17BattleText3: ; 55c68 (15:5c68) - TX_FAR _Route17BattleText3 - db "@" - -Route17EndBattleText3: ; 55c6d (15:5c6d) - TX_FAR _Route17EndBattleText3 - db "@" - -Route17AfterBattleText3: ; 55c72 (15:5c72) - TX_FAR _Route17AfterBattleText3 - db "@" - -Route17Text4: ; 55c77 (15:5c77) - db $08 ; asm - ld hl, Route17TrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -Route17BattleText4: ; 55c81 (15:5c81) - TX_FAR _Route17BattleText4 - db "@" - -Route17EndBattleText4: ; 55c86 (15:5c86) - TX_FAR _Route17EndBattleText4 - db "@" - -Route17AfterBattleText4: ; 55c8b (15:5c8b) - TX_FAR _Route17AfterBattleText4 - db "@" - -Route17Text5: ; 55c90 (15:5c90) - db $08 ; asm - ld hl, Route17TrainerHeader4 - call TalkToTrainer - jp TextScriptEnd - -Route17BattleText5: ; 55c9a (15:5c9a) - TX_FAR _Route17BattleText5 - db "@" - -Route17EndBattleText5: ; 55c9f (15:5c9f) - TX_FAR _Route17EndBattleText5 - db "@" - -Route17AfterBattleText5: ; 55ca4 (15:5ca4) - TX_FAR _Route17AfterBattleText5 - db "@" - -Route17Text6: ; 55ca9 (15:5ca9) - db $08 ; asm - ld hl, Route17TrainerHeader5 - call TalkToTrainer - jp TextScriptEnd - -Route17BattleText6: ; 55cb3 (15:5cb3) - TX_FAR _Route17BattleText6 - db "@" - -Route17EndBattleText6: ; 55cb8 (15:5cb8) - TX_FAR _Route17EndBattleText6 - db "@" - -Route17AfterBattleText6: ; 55cbd (15:5cbd) - TX_FAR _Route17AfterBattleText6 - db "@" - -Route17Text7: ; 55cc2 (15:5cc2) - db $08 ; asm - ld hl, Route17TrainerHeader6 - call TalkToTrainer - jp TextScriptEnd - -Route17BattleText7: ; 55ccc (15:5ccc) - TX_FAR _Route17BattleText7 - db "@" - -Route17EndBattleText7: ; 55cd1 (15:5cd1) - TX_FAR _Route17EndBattleText7 - db "@" - -Route17AfterBattleText7: ; 55cd6 (15:5cd6) - TX_FAR _Route17AfterBattleText7 - db "@" - -Route17Text8: ; 55cdb (15:5cdb) - db $08 ; asm - ld hl, Route17TrainerHeader7 - call TalkToTrainer - jp TextScriptEnd - -Route17BattleText8: ; 55ce5 (15:5ce5) - TX_FAR _Route17BattleText8 - db "@" - -Route17EndBattleText8: ; 55cea (15:5cea) - TX_FAR _Route17EndBattleText8 - db "@" - -Route17AfterBattleText8: ; 55cef (15:5cef) - TX_FAR _Route17AfterBattleText8 - db "@" - -Route17Text9: ; 55cf4 (15:5cf4) - db $08 ; asm - ld hl, Route17TrainerHeader8 - call TalkToTrainer - jp TextScriptEnd - -Route17BattleText9: ; 55cfe (15:5cfe) - TX_FAR _Route17BattleText9 - db "@" - -Route17EndBattleText9: ; 55d03 (15:5d03) - TX_FAR _Route17EndBattleText9 - db "@" - -Route17AfterBattleText9: ; 55d08 (15:5d08) - TX_FAR _Route17AfterBattleText9 - db "@" - -Route17Text10: ; 55d0d (15:5d0d) - db $08 ; asm - ld hl, Route17TrainerHeader9 - call TalkToTrainer - jp TextScriptEnd +INCLUDE "scripts/route2.asm" -Route17BattleText10: ; 55d17 (15:5d17) - TX_FAR _Route17BattleText10 - db "@" +INCLUDE "scripts/route3.asm" -Route17EndBattleText10: ; 55d1c (15:5d1c) - TX_FAR _Route17EndBattleText10 - db "@" +INCLUDE "scripts/route4.asm" -Route17AfterBattleText10: ; 55d21 (15:5d21) - TX_FAR _Route17AfterBattleText10 - db "@" +INCLUDE "scripts/route5.asm" -Route17Text11: ; 55d26 (15:5d26) - TX_FAR _Route17Text11 - db "@" +INCLUDE "scripts/route9.asm" -Route17Text12: ; 55d2b (15:5d2b) - TX_FAR _Route17Text12 - db "@" +INCLUDE "scripts/route13.asm" -Route17Text13: ; 55d30 (15:5d30) - TX_FAR _Route17Text13 - db "@" +INCLUDE "scripts/route14.asm" -Route17Text14: ; 55d35 (15:5d35) - TX_FAR _Route17Text14 - db "@" +INCLUDE "scripts/route17.asm" -Route17Text15: ; 55d3a (15:5d3a) - TX_FAR _Route17Text15 - db "@" +INCLUDE "scripts/route19.asm" -Route17Text16: ; 55d3f (15:5d3f) - TX_FAR _Route17Text16 - db "@" +INCLUDE "scripts/route21.asm" -Route19Script: ; 55d44 (15:5d44) - call EnableAutoTextBoxDrawing - ld hl, Route19TrainerHeaders - ld de, Route19ScriptPointers - ld a, [W_ROUTE19CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_ROUTE19CURSCRIPT], a - ret - -Route19ScriptPointers: ; 55d57 (15:5d57) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -Route19TextPointers: ; 55d5d (15:5d5d) - dw Route19Text1 - dw Route19Text2 - dw Route19Text3 - dw Route19Text4 - dw Route19Text5 - dw Route19Text6 - dw Route19Text7 - dw Route19Text8 - dw Route19Text9 - dw Route19Text10 - dw Route19Text11 - -Route19TrainerHeaders: ; 55d73 (15:5d73) -Route19TrainerHeader0: ; 55d73 (15:5d73) - db $1 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7e5 ; flag's byte - dw Route19BattleText1 ; 0x5e50 TextBeforeBattle - dw Route19AfterBattleText1 ; 0x5e5a TextAfterBattle - dw Route19EndBattleText1 ; 0x5e55 TextEndBattle - dw Route19EndBattleText1 ; 0x5e55 TextEndBattle - -Route19TrainerHeader1: ; 55d7f (15:5d7f) - db $2 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7e5 ; flag's byte - dw Route19BattleText2 ; 0x5e5f TextBeforeBattle - dw Route19AfterBattleText2 ; 0x5e69 TextAfterBattle - dw Route19EndBattleText2 ; 0x5e64 TextEndBattle - dw Route19EndBattleText2 ; 0x5e64 TextEndBattle - -Route19TrainerHeader2: ; 55d8b (15:5d8b) - db $3 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7e5 ; flag's byte - dw Route19BattleText3 ; 0x5e6e TextBeforeBattle - dw Route19AfterBattleText3 ; 0x5e78 TextAfterBattle - dw Route19EndBattleText3 ; 0x5e73 TextEndBattle - dw Route19EndBattleText3 ; 0x5e73 TextEndBattle - -Route19TrainerHeader3: ; 55d97 (15:5d97) - db $4 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7e5 ; flag's byte - dw Route19BattleText4 ; 0x5e7d TextBeforeBattle - dw Route19AfterBattleText4 ; 0x5e87 TextAfterBattle - dw Route19EndBattleText4 ; 0x5e82 TextEndBattle - dw Route19EndBattleText4 ; 0x5e82 TextEndBattle - -Route19TrainerHeader4: ; 55da3 (15:5da3) - db $5 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7e5 ; flag's byte - dw Route19BattleText5 ; 0x5e8c TextBeforeBattle - dw Route19AfterBattleText5 ; 0x5e96 TextAfterBattle - dw Route19EndBattleText5 ; 0x5e91 TextEndBattle - dw Route19EndBattleText5 ; 0x5e91 TextEndBattle - -Route19TrainerHeader5: ; 55daf (15:5daf) - db $6 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7e5 ; flag's byte - dw Route19BattleText6 ; 0x5e9b TextBeforeBattle - dw Route19AfterBattleText6 ; 0x5ea5 TextAfterBattle - dw Route19EndBattleText6 ; 0x5ea0 TextEndBattle - dw Route19EndBattleText6 ; 0x5ea0 TextEndBattle - -Route19TrainerHeader6: ; 55dbb (15:5dbb) - db $7 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7e5 ; flag's byte - dw Route19BattleText7 ; 0x5eaa TextBeforeBattle - dw Route19AfterBattleText7 ; 0x5eb4 TextAfterBattle - dw Route19EndBattleText7 ; 0x5eaf TextEndBattle - dw Route19EndBattleText7 ; 0x5eaf TextEndBattle - -Route19TrainerHeader7: ; 55dc7 (15:5dc7) - db $8 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7e5 ; flag's byte - dw Route19BattleText8 ; 0x5eb9 TextBeforeBattle - dw Route19AfterBattleText8 ; 0x5ec3 TextAfterBattle - dw Route19EndBattleText8 ; 0x5ebe TextEndBattle - dw Route19EndBattleText8 ; 0x5ebe TextEndBattle - -Route19TrainerHeader8: ; 55dd3 (15:5dd3) - db $9 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7e5 ; flag's byte - dw Route19BattleText9 ; 0x5ec8 TextBeforeBattle - dw Route19AfterBattleText9 ; 0x5ed2 TextAfterBattle - dw Route19EndBattleText9 ; 0x5ecd TextEndBattle - dw Route19EndBattleText9 ; 0x5ecd TextEndBattle - -Route19TrainerHeader9: ; 55ddf (15:5ddf) - db $a ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7e5 ; flag's byte - dw Route19BattleText10 ; 0x5ed7 TextBeforeBattle - dw Route19AfterBattleText10 ; 0x5ee1 TextAfterBattle - dw Route19EndBattleText10 ; 0x5edc TextEndBattle - dw Route19EndBattleText10 ; 0x5edc TextEndBattle +INCLUDE "data/mapHeaders/vermilionhouse2.asm" - db $ff +INCLUDE "scripts/vermilionhouse2.asm" -Route19Text1: ; 55dec (15:5dec) - db $08 ; asm - ld hl, Route19TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd +INCLUDE "data/mapObjects/vermilionhouse2.asm" -Route19Text2: ; 55df6 (15:5df6) - db $08 ; asm - ld hl, Route19TrainerHeader1 - call TalkToTrainer - jp TextScriptEnd - -Route19Text3: ; 55e00 (15:5e00) - db $08 ; asm - ld hl, Route19TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd +INCLUDE "data/mapHeaders/celadonmart2.asm" -Route19Text4: ; 55e0a (15:5e0a) - db $08 ; asm - ld hl, Route19TrainerHeader3 - call TalkToTrainer - jp TextScriptEnd +INCLUDE "scripts/celadonmart2.asm" -Route19Text5: ; 55e14 (15:5e14) - db $08 ; asm - ld hl, Route19TrainerHeader4 - call TalkToTrainer - jp TextScriptEnd - -Route19Text6: ; 55e1e (15:5e1e) - db $08 ; asm - ld hl, Route19TrainerHeader5 - call TalkToTrainer - jp TextScriptEnd - -Route19Text7: ; 55e28 (15:5e28) - db $08 ; asm - ld hl, Route19TrainerHeader6 - call TalkToTrainer - jp TextScriptEnd - -Route19Text8: ; 55e32 (15:5e32) - db $08 ; asm - ld hl, Route19TrainerHeader7 - call TalkToTrainer - jp TextScriptEnd - -Route19Text9: ; 55e3c (15:5e3c) - db $08 ; asm - ld hl, Route19TrainerHeader8 - call TalkToTrainer - jp TextScriptEnd - -Route19Text10: ; 55e46 (15:5e46) - db $08 ; asm - ld hl, Route19TrainerHeader9 - call TalkToTrainer - jp TextScriptEnd - -Route19BattleText1: ; 55e50 (15:5e50) - TX_FAR _Route19BattleText1 - db "@" - -Route19EndBattleText1: ; 55e55 (15:5e55) - TX_FAR _Route19EndBattleText1 - db "@" - -Route19AfterBattleText1: ; 55e5a (15:5e5a) - TX_FAR _Route19AfterBattleText1 - db "@" - -Route19BattleText2: ; 55e5f (15:5e5f) - TX_FAR _Route19BattleText2 - db "@" - -Route19EndBattleText2: ; 55e64 (15:5e64) - TX_FAR _Route19EndBattleText2 - db "@" - -Route19AfterBattleText2: ; 55e69 (15:5e69) - TX_FAR _Route19AfterBattleText2 - db "@" - -Route19BattleText3: ; 55e6e (15:5e6e) - TX_FAR _Route19BattleText3 - db "@" - -Route19EndBattleText3: ; 55e73 (15:5e73) - TX_FAR _Route19EndBattleText3 - db "@" - -Route19AfterBattleText3: ; 55e78 (15:5e78) - TX_FAR _Route19AfterBattleText3 - db "@" - -Route19BattleText4: ; 55e7d (15:5e7d) - TX_FAR _Route19BattleText4 - db "@" - -Route19EndBattleText4: ; 55e82 (15:5e82) - TX_FAR _Route19EndBattleText4 - db "@" - -Route19AfterBattleText4: ; 55e87 (15:5e87) - TX_FAR _Route19AfterBattleText4 - db "@" - -Route19BattleText5: ; 55e8c (15:5e8c) - TX_FAR _Route19BattleText5 - db "@" - -Route19EndBattleText5: ; 55e91 (15:5e91) - TX_FAR _Route19EndBattleText5 - db "@" - -Route19AfterBattleText5: ; 55e96 (15:5e96) - TX_FAR _Route19AfterBattleText5 - db "@" - -Route19BattleText6: ; 55e9b (15:5e9b) - TX_FAR _Route19BattleText6 - db "@" - -Route19EndBattleText6: ; 55ea0 (15:5ea0) - TX_FAR _Route19EndBattleText6 - db "@" - -Route19AfterBattleText6: ; 55ea5 (15:5ea5) - TX_FAR _Route19AfterBattleText6 - db "@" - -Route19BattleText7: ; 55eaa (15:5eaa) - TX_FAR _Route19BattleText7 - db "@" - -Route19EndBattleText7: ; 55eaf (15:5eaf) - TX_FAR _Route19EndBattleText7 - db "@" - -Route19AfterBattleText7: ; 55eb4 (15:5eb4) - TX_FAR _Route19AfterBattleText7 - db "@" - -Route19BattleText8: ; 55eb9 (15:5eb9) - TX_FAR _Route19BattleText8 - db "@" - -Route19EndBattleText8: ; 55ebe (15:5ebe) - TX_FAR _Route19EndBattleText8 - db "@" - -Route19AfterBattleText8: ; 55ec3 (15:5ec3) - TX_FAR _Route19AfterBattleText8 - db "@" - -Route19BattleText9: ; 55ec8 (15:5ec8) - TX_FAR _Route19BattleText9 - db "@" - -Route19EndBattleText9: ; 55ecd (15:5ecd) - TX_FAR _Route19EndBattleText9 - db "@" - -Route19AfterBattleText9: ; 55ed2 (15:5ed2) - TX_FAR _Route19AfterBattleText9 - db "@" - -Route19BattleText10: ; 55ed7 (15:5ed7) - TX_FAR _Route19BattleText10 - db "@" - -Route19EndBattleText10: ; 55edc (15:5edc) - TX_FAR _Route19EndBattleText10 - db "@" - -Route19AfterBattleText10: ; 55ee1 (15:5ee1) - TX_FAR _Route19AfterBattleText10 - db "@" - -Route19Text11: ; 55ee6 (15:5ee6) - TX_FAR _Route19Text11 - db "@" - -Route21Script: ; 55eeb (15:5eeb) - call EnableAutoTextBoxDrawing - ld hl, Route21TrainerHeaders - ld de, Route21ScriptPointers - ld a, [W_ROUTE21CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_ROUTE21CURSCRIPT], a - ret - -Route21ScriptPointers: ; 55efe (15:5efe) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -Route21TextPointers: ; 55f04 (15:5f04) - dw Route21Text1 - dw Route21Text2 - dw Route21Text3 - dw Route21Text4 - dw Route21Text5 - dw Route21Text6 - dw Route21Text7 - dw Route21Text8 - dw Route21Text9 - -Route21TrainerHeaders: ; 55f16 (15:5f16) -Route21TrainerHeader0: ; 55f16 (15:5f16) - db $1 ; flag's bit - db ($0 << 4) ; trainer's view range - dw $d7e9 ; flag's byte - dw Route21BattleText1 ; 0x5fdd TextBeforeBattle - dw Route21AfterBattleText1 ; 0x5fe7 TextAfterBattle - dw Route21EndBattleText1 ; 0x5fe2 TextEndBattle - dw Route21EndBattleText1 ; 0x5fe2 TextEndBattle - -Route21TrainerHeader1: ; 55f22 (15:5f22) - db $2 ; flag's bit - db ($0 << 4) ; trainer's view range - dw $d7e9 ; flag's byte - dw Route21BattleText2 ; 0x5fec TextBeforeBattle - dw Route21AfterBattleText2 ; 0x5ff6 TextAfterBattle - dw Route21EndBattleText2 ; 0x5ff1 TextEndBattle - dw Route21EndBattleText2 ; 0x5ff1 TextEndBattle - -Route21TrainerHeader2: ; 55f2e (15:5f2e) - db $3 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7e9 ; flag's byte - dw Route21BattleText3 ; 0x5ffb TextBeforeBattle - dw Route21AfterBattleText3 ; 0x6005 TextAfterBattle - dw Route21EndBattleText3 ; 0x6000 TextEndBattle - dw Route21EndBattleText3 ; 0x6000 TextEndBattle - -Route21TrainerHeader3: ; 55f3a (15:5f3a) - db $4 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7e9 ; flag's byte - dw Route21BattleText4 ; 0x600a TextBeforeBattle - dw Route21AfterBattleText4 ; 0x6014 TextAfterBattle - dw Route21EndBattleText4 ; 0x600f TextEndBattle - dw Route21EndBattleText4 ; 0x600f TextEndBattle - -Route21TrainerHeader4: ; 55f46 (15:5f46) - db $5 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7e9 ; flag's byte - dw Route21BattleText5 ; 0x6019 TextBeforeBattle - dw Route21AfterBattleText5 ; 0x6023 TextAfterBattle - dw Route21EndBattleText5 ; 0x601e TextEndBattle - dw Route21EndBattleText5 ; 0x601e TextEndBattle - -Route21TrainerHeader5: ; 55f52 (15:5f52) - db $6 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7e9 ; flag's byte - dw Route21BattleText6 ; 0x6028 TextBeforeBattle - dw Route21AfterBattleText6 ; 0x6032 TextAfterBattle - dw Route21EndBattleText6 ; 0x602d TextEndBattle - dw Route21EndBattleText6 ; 0x602d TextEndBattle - -Route21TrainerHeader6: ; 55f5e (15:5f5e) - db $7 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7e9 ; flag's byte - dw Route21BattleText7 ; 0x6037 TextBeforeBattle - dw Route21AfterBattleText7 ; 0x6041 TextAfterBattle - dw Route21EndBattleText7 ; 0x603c TextEndBattle - dw Route21EndBattleText7 ; 0x603c TextEndBattle - -Route21TrainerHeader7: ; 55f6a (15:5f6a) - db $8 ; flag's bit - db ($0 << 4) ; trainer's view range - dw $d7e9 ; flag's byte - dw Route21BattleText8 ; 0x6046 TextBeforeBattle - dw Route21AfterBattleText8 ; 0x6050 TextAfterBattle - dw Route21EndBattleText8 ; 0x604b TextEndBattle - dw Route21EndBattleText8 ; 0x604b TextEndBattle - -Route21TrainerHeader8: ; 55f76 (15:5f76) - db $9 ; flag's bit - db ($0 << 4) ; trainer's view range - dw $d7e9 ; flag's byte - dw Route21BattleText9 ; 0x6055 TextBeforeBattle - dw Route21AfterBattleText9 ; 0x605f TextAfterBattle - dw Route21EndBattleText9 ; 0x605a TextEndBattle - dw Route21EndBattleText9 ; 0x605a TextEndBattle - - db $ff - -Route21Text1: ; 55f83 (15:5f83) - db $08 ; asm - ld hl, Route21TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -Route21Text2: ; 55f8d (15:5f8d) - db $08 ; asm - ld hl, Route21TrainerHeader1 - call TalkToTrainer - jp TextScriptEnd - -Route21Text3: ; 55f97 (15:5f97) - db $08 ; asm - ld hl, Route21TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -Route21Text4: ; 55fa1 (15:5fa1) - db $08 ; asm - ld hl, Route21TrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -Route21Text5: ; 55fab (15:5fab) - db $08 ; asm - ld hl, Route21TrainerHeader4 - call TalkToTrainer - jp TextScriptEnd - -Route21Text6: ; 55fb5 (15:5fb5) - db $08 ; asm - ld hl, Route21TrainerHeader5 - call TalkToTrainer - jp TextScriptEnd - -Route21Text7: ; 55fbf (15:5fbf) - db $08 ; asm - ld hl, Route21TrainerHeader6 - call TalkToTrainer - jp TextScriptEnd - -Route21Text8: ; 55fc9 (15:5fc9) - db $08 ; asm - ld hl, Route21TrainerHeader7 - call TalkToTrainer - jp TextScriptEnd - -Route21Text9: ; 55fd3 (15:5fd3) - db $08 ; asm - ld hl, Route21TrainerHeader8 - call TalkToTrainer - jp TextScriptEnd - -Route21BattleText1: ; 55fdd (15:5fdd) - TX_FAR _Route21BattleText1 - db "@" - -Route21EndBattleText1: ; 55fe2 (15:5fe2) - TX_FAR _Route21EndBattleText1 - db "@" - -Route21AfterBattleText1: ; 55fe7 (15:5fe7) - TX_FAR _Route21AfterBattleText1 - db "@" - -Route21BattleText2: ; 55fec (15:5fec) - TX_FAR _Route21BattleText2 - db "@" - -Route21EndBattleText2: ; 55ff1 (15:5ff1) - TX_FAR _Route21EndBattleText2 - db "@" - -Route21AfterBattleText2: ; 55ff6 (15:5ff6) - TX_FAR _Route21AfterBattleText2 - db "@" - -Route21BattleText3: ; 55ffb (15:5ffb) - TX_FAR _Route21BattleText3 - db "@" - -Route21EndBattleText3: ; 56000 (15:6000) - TX_FAR _Route21EndBattleText3 - db "@" - -Route21AfterBattleText3: ; 56005 (15:6005) - TX_FAR _Route21AfterBattleText3 - db "@" - -Route21BattleText4: ; 5600a (15:600a) - TX_FAR _Route21BattleText4 - db "@" - -Route21EndBattleText4: ; 5600f (15:600f) - TX_FAR _Route21EndBattleText4 - db "@" - -Route21AfterBattleText4: ; 56014 (15:6014) - TX_FAR _Route21AfterBattleText4 - db "@" - -Route21BattleText5: ; 56019 (15:6019) - TX_FAR _Route21BattleText5 - db "@" - -Route21EndBattleText5: ; 5601e (15:601e) - TX_FAR _Route21EndBattleText5 - db "@" - -Route21AfterBattleText5: ; 56023 (15:6023) - TX_FAR _Route21AfterBattleText5 - db "@" - -Route21BattleText6: ; 56028 (15:6028) - TX_FAR _Route21BattleText6 - db "@" - -Route21EndBattleText6: ; 5602d (15:602d) - TX_FAR _Route21EndBattleText6 - db "@" - -Route21AfterBattleText6: ; 56032 (15:6032) - TX_FAR _Route21AfterBattleText6 - db "@" - -Route21BattleText7: ; 56037 (15:6037) - TX_FAR _Route21BattleText7 - db "@" - -Route21EndBattleText7: ; 5603c (15:603c) - TX_FAR _Route21EndBattleText7 - db "@" - -Route21AfterBattleText7: ; 56041 (15:6041) - TX_FAR _Route21AfterBattleText7 - db "@" - -Route21BattleText8: ; 56046 (15:6046) - TX_FAR _Route21BattleText8 - db "@" - -Route21EndBattleText8: ; 5604b (15:604b) - TX_FAR _Route21EndBattleText8 - db "@" - -Route21AfterBattleText8: ; 56050 (15:6050) - TX_FAR _Route21AfterBattleText8 - db "@" - -Route21BattleText9: ; 56055 (15:6055) - TX_FAR _Route21BattleText9 - db "@" - -Route21EndBattleText9: ; 5605a (15:605a) - TX_FAR _Route21EndBattleText9 - db "@" - -Route21AfterBattleText9: ; 5605f (15:605f) - TX_FAR _Route21AfterBattleText9 - db "@" - -VermilionHouse2_h: ; 0x56064 to 0x56070 (12 bytes) (id=163) - db HOUSE ; tileset - db VERMILION_HOUSE_2_HEIGHT, VERMILION_HOUSE_2_WIDTH ; dimensions (y, x) - dw VermilionHouse2Blocks, VermilionHouse2TextPointers, VermilionHouse2Script ; blocks, texts, scripts - db $00 ; connections - dw VermilionHouse2Object ; objects - -VermilionHouse2Script: ; 56070 (15:6070) - jp EnableAutoTextBoxDrawing - -VermilionHouse2TextPointers: ; 56073 (15:6073) - dw VermilionHouse2Text1 - -VermilionHouse2Text1: ; 56075 (15:6075) - db $08 ; asm - ld a, [$d728] - bit 3, a - jr nz, asm_03ef5 ; 0x5607b - ld hl, UnnamedText_560b1 - call PrintText - call YesNoChoice - ld a, [$cc26] - and a - jr nz, asm_eb1b7 ; 0x5608a - ld bc, (OLD_ROD << 8) | 1 - call GiveItem - jr nc, .BagFull - ld hl, $d728 - set 3, [hl] - ld hl, UnnamedText_560b6 - jr asm_5dd95 ; 0x5609c -.BagFull - ld hl, UnnamedText_560ca - jr asm_5dd95 ; 0x560a1 -asm_eb1b7 ; 0x560a3 - ld hl, UnnamedText_560c0 - jr asm_5dd95 ; 0x560a6 -asm_03ef5 ; 0x560a8 - ld hl, UnnamedText_560c5 -asm_5dd95 ; 0x560ab - call PrintText - jp TextScriptEnd - -UnnamedText_560b1: ; 560b1 (15:60b1) - TX_FAR _UnnamedText_560b1 - db "@" - -UnnamedText_560b6: ; 560b6 (15:60b6) - TX_FAR _UnnamedText_560b6 ; 0x9c554 - db $0B - TX_FAR _UnnamedText_560bb ; 0x9c5a4 - db "@" - -UnnamedText_560c0: ; 560c0 (15:60c0) - TX_FAR _UnnamedText_560c0 - db "@" - -UnnamedText_560c5: ; 560c5 (15:60c5) - TX_FAR _UnnamedText_560c5 - db "@" - -UnnamedText_560ca: ; 560ca (15:60ca) - TX_FAR _UnnamedText_560ca - db "@" - -VermilionHouse2Object: ; 0x560cf (size=26) - db $a ; border tile - - db $2 ; warps - db $7, $2, $8, $ff - db $7, $3, $8, $ff - - db $0 ; signs - - db $1 ; people - db SPRITE_FISHER, $4 + 4, $2 + 4, $ff, $d3, $1 ; person - - ; warp-to - EVENT_DISP VERMILION_HOUSE_2_WIDTH, $7, $2 - EVENT_DISP VERMILION_HOUSE_2_WIDTH, $7, $3 - -CeladonMart2_h: ; 0x560e9 to 0x560f5 (12 bytes) (id=123) - db LOBBY ; tileset - db CELADON_MART_2_HEIGHT, CELADON_MART_2_WIDTH ; dimensions (y, x) - dw CeladonMart2Blocks, CeladonMart2TextPointers, CeladonMart2Script ; blocks, texts, scripts - db $00 ; connections - dw CeladonMart2Object ; objects - -CeladonMart2Script: ; 560f5 (15:60f5) - jp EnableAutoTextBoxDrawing - -CeladonMart2TextPointers: ; 560f8 (15:60f8) - dw CeladonMart2Text1 - dw CeladonMart2Text2 - dw CeladonMart2Text3 - dw CeladonMart2Text4 - dw CeladonMart2Text5 - -CeladonMart2Text3: ; 56102 (15:6102) - TX_FAR _CeladonMart2Text3 - db "@" - -CeladonMart2Text4: ; 56107 (15:6107) - TX_FAR _CeladonMart2Text4 - db "@" - -CeladonMart2Text5: ; 5610c (15:610c) - TX_FAR _CeladonMart2Text5 - db "@" - -CeladonMart2Object: ; 0x56111 (size=55) - db $f ; border tile - - db $3 ; warps - db $1, $c, $4, CELADON_MART_1 - db $1, $10, $1, CELADON_MART_3 - db $1, $1, $0, CELADON_MART_ELEVATOR - - db $1 ; signs - db $1, $e, $5 ; CeladonMart2Text5 - - db $4 ; people - db SPRITE_MART_GUY, $3 + 4, $5 + 4, $ff, $d0, $1 ; person - db SPRITE_MART_GUY, $3 + 4, $6 + 4, $ff, $d0, $2 ; person - db SPRITE_FAT_BALD_GUY, $5 + 4, $13 + 4, $ff, $ff, $3 ; person - db SPRITE_GIRL, $4 + 4, $e + 4, $fe, $1, $4 ; person - - ; warp-to - EVENT_DISP CELADON_MART_2_WIDTH, $1, $c ; CELADON_MART_1 - EVENT_DISP CELADON_MART_2_WIDTH, $1, $10 ; CELADON_MART_3 - EVENT_DISP CELADON_MART_2_WIDTH, $1, $1 ; CELADON_MART_ELEVATOR +INCLUDE "data/mapObjects/celadonmart2.asm" CeladonMart2Blocks: ; 56148 (15:6148) INCBIN "maps/celadonmart2.blk" -FuchsiaHouse3_h: ; 0x56170 to 0x5617c (12 bytes) (id=164) - db SHIP ; tileset - db FUCHSIA_HOUSE_3_HEIGHT, FUCHSIA_HOUSE_3_WIDTH ; dimensions (y, x) - dw FuchsiaHouse3Blocks, FuchsiaHouse3TextPointers, FuchsiaHouse3Script ; blocks, texts, scripts - db $00 ; connections - dw FuchsiaHouse3Object ; objects - -FuchsiaHouse3Script: ; 5617c (15:617c) - jp EnableAutoTextBoxDrawing - -FuchsiaHouse3TextPointers: ; 5617f (15:617f) - dw FuchsiaHouse3Text1 - -FuchsiaHouse3Text1: ; 56181 (15:6181) - db $08 ; asm - ld a, [$d728] - bit 4, a - jr nz, .after - - ld hl, UnnamedText_561bd - call PrintText - - call YesNoChoice - ld a, [$cc26] - and a - jr nz, .refused - - ld bc, (GOOD_ROD << 8) | 1 - call GiveItem - jr nc, .full - - ld hl, $d728 - set 4, [hl] - - ld hl, UnnamedText_561c2 - jr .talk - -.full - ld hl, UnnamedText_5621c - jr .talk - -.refused - ld hl, UnnamedText_56212 - jr .talk - -.after - ld hl, UnnamedText_56217 - -.talk - call PrintText - jp TextScriptEnd - -UnnamedText_561bd: ; 561bd (15:61bd) - TX_FAR _UnnamedText_561bd - db "@" - -UnnamedText_561c2: ; 561c2 (15:61c2) - TX_FAR _UnnamedText_561c2 ; 0xa06e8 - db $0B - db "@" - -UnnamedText_561c8: ; 561c8 - para "つり こそ" - line "おとこの ロマン だ!" - - para "へぼいつりざおは" - line "コイキングしか つれ なんだが" - line "この いいつりざおなら" - line "もっと いいもんが つれるんじゃ!" - done - -UnnamedText_56212: ; 56212 (15:6212) - TX_FAR _UnnamedText_56212 - db "@" - -UnnamedText_56217: ; 56217 (15:6217) - TX_FAR _UnnamedText_56217 - db "@" - -UnnamedText_5621c: ; 5621c (15:621c) - TX_FAR _UnnamedText_5621c - db "@" - -FuchsiaHouse3Object: ; 0x56221 (size=34) - db $c ; border tile - - db $3 ; warps - db $0, $2, $8, $ff - db $7, $2, $7, $ff - db $7, $3, $7, $ff - - db $0 ; signs - - db $1 ; people - db SPRITE_FISHER, $3 + 4, $5 + 4, $ff, $d3, $1 ; person - - ; warp-to - EVENT_DISP FUCHSIA_HOUSE_3_WIDTH, $0, $2 - EVENT_DISP FUCHSIA_HOUSE_3_WIDTH, $7, $2 - EVENT_DISP FUCHSIA_HOUSE_3_WIDTH, $7, $3 - -DayCareM_h: ; 0x56243 to 0x5624f (12 bytes) (id=72) - db HOUSE ; tileset - db DAYCAREM_HEIGHT, DAYCAREM_WIDTH ; dimensions (y, x) - dw DayCareMBlocks, DayCareMTextPointers, DayCareMScript ; blocks, texts, scripts - db $00 ; connections - dw DayCareMObject ; objects - -DayCareMScript: ; 5624f (15:624f) - jp EnableAutoTextBoxDrawing - -DayCareMTextPointers: ; 56252 (15:6252) - dw DayCareMText1 - -DayCareMText1: ; 56254 (15:6254) - db $8 - call SaveScreenTilesToBuffer2 - ld a, [W_DAYCARE_IN_USE] - and a - jp nz, Func_562e1 - ld hl, UnnamedText_5640f - call PrintText - call YesNoChoice - ld a, [$cc26] - and a - ld hl, UnnamedText_5643b - jp nz, Func_56409 - ld a, [$d163] - dec a - ld hl, UnnamedText_56445 - jp z, Func_56409 - ld hl, UnnamedText_56414 - call PrintText - xor a - ld [$cfcb], a - ld [$d07d], a - ld [$cc35], a - call DisplayPartyMenu - push af - call GBPalWhiteOutWithDelay3 - call Func_3dbe - call LoadGBPal - pop af - ld hl, UnnamedText_56437 - jp c, Func_56409 - callab Func_2171b - ld hl, UnnamedText_5644a - jp c, Func_56409 - xor a - ld [$cc2b], a - ld a, [wWhichPokemon] - ld hl, $d2b5 - call GetPartyMonName - ld hl, UnnamedText_56419 - call PrintText - ld a, $1 - ld [W_DAYCARE_IN_USE], a - ld a, $3 - ld [$cf95], a - call Func_3a68 - xor a - ld [$cf95], a - call RemovePokemon - ld a, [$cf91] - call PlayCry - ld hl, UnnamedText_5641e - jp Func_56409 - -Func_562e1: ; 562e1 (15:62e1) - xor a - ld hl, W_DAYCAREMONNAME - call GetPartyMonName - ld a, $3 - ld [$cc49], a - call LoadMonData - callab Func_58f43 - ld a, d - cp $64 - jr c, .asm_56315 - ld d, $64 - callab CalcExperience - ld hl, $da6d - ld a, [H_NUMTOPRINT] - ld [hli], a - ld a, [$ff97] - ld [hli], a - ld a, [$ff98] - ld [hl], a - ld d, $64 - -.asm_56315 - xor a - ld [wTrainerEngageDistance], a - ld hl, $da62 - ld a, [hl] - ld [wTrainerSpriteOffset], a - cp d - ld [hl], d - ld hl, UnnamedText_56432 - jr z, .asm_56333 - ld a, [wTrainerSpriteOffset] - ld b, a - ld a, d - sub b - ld [wTrainerEngageDistance], a - ld hl, UnnamedText_56423 - -.asm_56333 - call PrintText - ld a, [W_NUMINPARTY] - cp $6 - ld hl, UnnamedText_56440 - jp z, .asm_56403 - ld de, wTrainerFacingDirection - xor a - ld [de], a - inc de - ld [de], a - ld hl, wTrainerScreenX - ld a, $1 - ld [hli], a - ld [hl], $0 - ld a, [wTrainerEngageDistance] - inc a - ld b, a - ld c, $2 -.asm_56357 - push hl - push de - push bc - ld a, $b - call Predef - pop bc - pop de - pop hl - dec b - jr nz, .asm_56357 - ld hl, UnnamedText_56428 - call PrintText - ld a, $13 - ld [$d125], a - call DisplayTextBoxID - call YesNoChoice - ld hl, UnnamedText_56437 - ld a, [wCurrentMenuItem] - and a - jp nz, .asm_56403 - ld hl, wTrainerFacingDirection - ld [$ff9f], a - ld a, [hli] - ld [$ffa0], a - ld a, [hl] - ld [$ffa1], a - call HasEnoughMoney - jr nc, .asm_56396 - ld hl, UnnamedText_56454 - jp .asm_56403 - -.asm_56396 - xor a - ld [W_DAYCARE_IN_USE], a - ld hl, wTrainerEngageDistance - ld [hli], a - inc hl - ld de, $d349 - ld c, $3 - ld a, $c - call Predef - ld a, (SFX_02_5a - SFX_Headers_02) / 3 - call PlaySoundWaitForCurrent - ld a, $13 - ld [$d125], a - call DisplayTextBoxID - ld hl, UnnamedText_5644f - call PrintText - ld a, $2 - ld [$cf95], a - call Func_3a68 - ld a, [W_DAYCAREMONDATA] - ld [$cf91], a - ld a, [W_NUMINPARTY] - dec a - push af - ld bc, $002c - push bc - ld hl, W_PARTYMON1_MOVE1 - call AddNTimes - ld d, h - ld e, l - ld a, $1 - ld [wHPBarMaxHP], a - ld a, $3e - call Predef - pop bc - pop af - ld hl, W_PARTYMON1_HP - call AddNTimes - ld d, h - ld e, l - ld bc, $0021 - add hl, bc - ld a, [hli] - ld [de], a - inc de - ld a, [hl] - ld [de], a - ld a, [$cf91] - call PlayCry - ld hl, UnnamedText_5642d - jr Func_56409 - -.asm_56403 - ld a, [wTrainerSpriteOffset] - ld [$da62], a +INCLUDE "data/mapHeaders/fuchsiahouse3.asm" -Func_56409: ; 56409 (15:6409) - call PrintText - jp TextScriptEnd - -UnnamedText_5640f: ; 5640f (15:640f) - TX_FAR _UnnamedText_5640f - db "@" - -UnnamedText_56414: ; 56414 (15:6414) - TX_FAR _UnnamedText_56414 - db "@" - -UnnamedText_56419: ; 56419 (15:6419) - TX_FAR _UnnamedText_56419 - db "@" - -UnnamedText_5641e: ; 5641e (15:641e) - TX_FAR _UnnamedText_5641e - db "@" - -UnnamedText_56423: ; 56423 (15:6423) - TX_FAR _UnnamedText_56423 - db "@" - -UnnamedText_56428: ; 56428 (15:6428) - TX_FAR _UnnamedText_56428 - db "@" - -UnnamedText_5642d: ; 5642d (15:642d) - TX_FAR _UnnamedText_5642d - db "@" +INCLUDE "scripts/fuchsiahouse3.asm" -UnnamedText_56432: ; 56432 (15:6432) - TX_FAR _UnnamedText_56432 - db "@" +INCLUDE "data/mapObjects/fuchsiahouse3.asm" -UnnamedText_56437: ; 56437 (15:6437) - TX_FAR _UnnamedText_56437 ; 0x8c000 -UnnamedText_5643b: ; 5643b (15:643b) - TX_FAR _UnnamedText_5643b ; 0x8c013 - db "@" +INCLUDE "data/mapHeaders/daycarem.asm" -UnnamedText_56440: ; 56440 (15:6440) - TX_FAR _UnnamedText_56440 - db "@" +INCLUDE "scripts/daycarem.asm" -UnnamedText_56445: ; 56445 (15:6445) - TX_FAR _UnnamedText_56445 - db "@" +INCLUDE "data/mapObjects/daycarem.asm" -UnnamedText_5644a: ; 5644a (15:644a) - TX_FAR _UnnamedText_5644a - db "@" +INCLUDE "data/mapHeaders/route12house.asm" -UnnamedText_5644f: ; 5644f (15:644f) - TX_FAR _UnnamedText_5644f - db "@" +INCLUDE "scripts/route12house.asm" -UnnamedText_56454: ; 56454 (15:6454) - TX_FAR _UnnamedText_56454 - db "@" +INCLUDE "data/mapObjects/route12house.asm" -DayCareMObject: ; 0x56459 (size=26) - db $a ; border tile +INCLUDE "data/mapHeaders/silphco8.asm" - db $2 ; warps - db $7, $2, $4, $ff - db $7, $3, $4, $ff +INCLUDE "scripts/silphco8.asm" - db $0 ; signs - - db $1 ; people - db SPRITE_GENTLEMAN, $3 + 4, $2 + 4, $ff, $d3, $1 ; person - - ; warp-to - EVENT_DISP DAYCAREM_WIDTH, $7, $2 - EVENT_DISP DAYCAREM_WIDTH, $7, $3 - -Route12House_h: ; 0x56473 to 0x5647f (12 bytes) (id=189) - db HOUSE ; tileset - db ROUTE_12_HOUSE_HEIGHT, ROUTE_12_HOUSE_WIDTH ; dimensions (y, x) - dw Route12HouseBlocks, Route12HouseTextPointers, Route12HouseScript ; blocks, texts, scripts - db $00 ; connections - dw Route12HouseObject ; objects - -Route12HouseScript: ; 5647f (15:647f) - jp EnableAutoTextBoxDrawing - -Route12HouseTextPointers: ; 56482 (15:6482) - dw Route12HouseText1 - -Route12HouseText1: ; 56484 (15:6484) - db $08 ; asm - ld a, [$d728] - bit 5, a - jr nz, asm_b4cad ; 0x5648a - ld hl, UnnamedText_564c0 - call PrintText - call YesNoChoice - ld a, [$cc26] - and a - jr nz, asm_a2d76 ; 0x56499 - ld bc, (SUPER_ROD << 8) | 1 - call GiveItem - jr nc, .BagFull - ld hl, $d728 - set 5, [hl] - ld hl, UnnamedText_564c5 - jr asm_df984 ; 0x564ab -.BagFull - ld hl, UnnamedText_564d9 - jr asm_df984 ; 0x564b0 -asm_a2d76 ; 0x564b2 - ld hl, UnnamedText_564cf - jr asm_df984 ; 0x564b5 -asm_b4cad ; 0x564b7 - ld hl, UnnamedText_564d4 -asm_df984 ; 0x564ba - call PrintText - jp TextScriptEnd - -UnnamedText_564c0: ; 564c0 (15:64c0) - TX_FAR _UnnamedText_564c0 - db "@" - -UnnamedText_564c5: ; 564c5 (15:64c5) - TX_FAR _UnnamedText_564c5 ; 0x8ca00 - db $0B - TX_FAR _UnnamedText_564ca ; 0x8ca4f - db "@" - -UnnamedText_564cf: ; 564cf (15:64cf) - TX_FAR _UnnamedText_564cf - db "@" - -UnnamedText_564d4: ; 564d4 (15:64d4) - TX_FAR _UnnamedText_564d4 - db "@" - -UnnamedText_564d9: ; 564d9 (15:64d9) - TX_FAR _UnnamedText_564d9 - db "@" - -Route12HouseObject: ; 0x564de (size=26) - db $a ; border tile - - db $2 ; warps - db $7, $2, $3, $ff - db $7, $3, $3, $ff - - db $0 ; signs - - db $1 ; people - db SPRITE_FISHER, $4 + 4, $2 + 4, $ff, $d3, $1 ; person - - ; warp-to - EVENT_DISP ROUTE_12_HOUSE_WIDTH, $7, $2 - EVENT_DISP ROUTE_12_HOUSE_WIDTH, $7, $3 - -SilphCo8_h: ; 0x564f8 to 0x56504 (12 bytes) (id=213) - db FACILITY ; tileset - db SILPH_CO_8F_HEIGHT, SILPH_CO_8F_WIDTH ; dimensions (y, x) - dw SilphCo8Blocks, SilphCo8TextPointers, SilphCo8Script ; blocks, texts, scripts - db $00 ; connections - dw SilphCo8Object ; objects - -SilphCo8Script: ; 56504 (15:6504) - call SilphCo8Script_5651a - call EnableAutoTextBoxDrawing - ld hl, SilphCo8TrainerHeader0 - ld de, SilphCo8ScriptPointers - ld a, [W_SILPHCO8CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_SILPHCO8CURSCRIPT], a - ret - -SilphCo8Script_5651a: ; 5651a (15:651a) - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - ret z - ld hl, DataTable_5653e ; $653e - call Func_56541 - call Func_5656d - ld a, [$d832] - bit 0, a - ret nz - ld a, $5f - ld [$d09f], a - ld bc, $403 - ld a, $17 - jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) - -DataTable_5653e: ; 5653e (15:653e) - db $04,$03,$FF - -Func_56541: ; 56541 (15:6541) - push hl - ld hl, $d73f - ld a, [hli] - ld b, a - ld a, [hl] - ld c, a - xor a - ld [$ffe0], a - pop hl -.asm_5654d - ld a, [hli] - cp $ff - jr z, .asm_56569 - push hl - ld hl, $ffe0 - inc [hl] - pop hl - cp b - jr z, .asm_5655e - inc hl - jr .asm_5654d -.asm_5655e - ld a, [hli] - cp c - jr nz, .asm_5654d - ld hl, $d73f - xor a - ld [hli], a - ld [hl], a - ret -.asm_56569 - xor a - ld [$ffe0], a - ret - -Func_5656d: ; 5656d (15:656d) - ld a, [$ffe0] - and a - ret z - ld hl, $d832 - set 0, [hl] - ret - -SilphCo8ScriptPointers: ; 56577 (15:6577) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -SilphCo8TextPointers: ; 5657d (15:657d) - dw SilphCo8Text1 - dw SilphCo8Text2 - dw SilphCo8Text3 - dw SilphCo8Text4 - -SilphCo8TrainerHeaders: ; 56585 (15:6585) -SilphCo8TrainerHeader0: ; 56585 (15:6585) - db $2 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d831 ; flag's byte - dw SilphCo8BattleText1 ; 0x65e6 TextBeforeBattle - dw SilphCo8AfterBattleText1 ; 0x65f0 TextAfterBattle - dw SilphCo8EndBattleText1 ; 0x65eb TextEndBattle - dw SilphCo8EndBattleText1 ; 0x65eb TextEndBattle - -SilphCo8TrainerHeader1: ; 56591 (15:6591) - db $3 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d831 ; flag's byte - dw SilphCo8BattleText2 ; 0x65f5 TextBeforeBattle - dw SilphCo8AfterBattleText2 ; 0x65ff TextAfterBattle - dw SilphCo8EndBattleText2 ; 0x65fa TextEndBattle - dw SilphCo8EndBattleText2 ; 0x65fa TextEndBattle - -SilphCo8TrainerHeader2: ; 5659d (15:659d) - db $4 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d831 ; flag's byte - dw SilphCo8BattleText3 ; 0x6604 TextBeforeBattle - dw SilphCo8AfterBattleText3 ; 0x660e TextAfterBattle - dw SilphCo8EndBattleText3 ; 0x6609 TextEndBattle - dw SilphCo8EndBattleText3 ; 0x6609 TextEndBattle - - db $ff - -SilphCo8Text1: ; 565aa (15:65aa) - db $08 ; asm - ld a, [$d838] - bit 7, a - ld hl, UnnamedText_565c3 - jr nz, asm_a468f ; 0x565b3 - ld hl, UnnamedText_565be -asm_a468f ; 0x565b8 - call PrintText - jp TextScriptEnd - -UnnamedText_565be: ; 565be (15:65be) - TX_FAR _UnnamedText_565be - db "@" - -UnnamedText_565c3: ; 565c3 (15:65c3) - TX_FAR _UnnamedText_565c3 - db "@" - -SilphCo8Text2: ; 565c8 (15:65c8) - db $08 ; asm - ld hl, SilphCo8TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -SilphCo8Text3: ; 565d2 (15:65d2) - db $08 ; asm - ld hl, SilphCo8TrainerHeader1 - call TalkToTrainer - jp TextScriptEnd - -SilphCo8Text4: ; 565dc (15:65dc) - db $08 ; asm - ld hl, SilphCo8TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -SilphCo8BattleText1: ; 565e6 (15:65e6) - TX_FAR _SilphCo8BattleText1 - db "@" - -SilphCo8EndBattleText1: ; 565eb (15:65eb) - TX_FAR _SilphCo8EndBattleText1 - db "@" - -SilphCo8AfterBattleText1: ; 565f0 (15:65f0) - TX_FAR _SilphCo8AfterBattleText1 - db "@" - -SilphCo8BattleText2: ; 565f5 (15:65f5) - TX_FAR _SilphCo8BattleText2 - db "@" - -SilphCo8EndBattleText2: ; 565fa (15:65fa) - TX_FAR _SilphCo8EndBattleText2 - db "@" - -SilphCo8AfterBattleText2: ; 565ff (15:65ff) - TX_FAR _SilphCo8AfterBattleText2 - db "@" - -SilphCo8BattleText3: ; 56604 (15:6604) - TX_FAR _SilphCo8BattleText3 - db "@" - -SilphCo8EndBattleText3: ; 56609 (15:6609) - TX_FAR _SilphCo8EndBattleText3 - db "@" - -SilphCo8AfterBattleText3: ; 5660e (15:660e) - TX_FAR _SilphCo8AfterBattleText3 - db "@" - -SilphCo8Object: ; 0x56613 (size=90) - db $2e ; border tile - - db $7 ; warps - db $0, $10, $1, SILPH_CO_9F - db $0, $e, $0, SILPH_CO_7F - db $0, $12, $0, SILPH_CO_ELEVATOR - db $b, $3, $6, SILPH_CO_8F - db $f, $3, $4, SILPH_CO_2F - db $5, $b, $5, SILPH_CO_2F - db $9, $b, $3, SILPH_CO_8F - - db $0 ; signs - - db $4 ; people - db SPRITE_LAPRAS_GIVER, $2 + 4, $4 + 4, $ff, $ff, $1 ; person - db SPRITE_ROCKET, $2 + 4, $13 + 4, $ff, $d2, $42, ROCKET + $C8, $23 ; trainer - db SPRITE_OAK_AIDE, $2 + 4, $a + 4, $ff, $d0, $43, SCIENTIST + $C8, $9 ; trainer - db SPRITE_ROCKET, $f + 4, $c + 4, $ff, $d3, $44, ROCKET + $C8, $24 ; trainer - - ; warp-to - EVENT_DISP SILPH_CO_8F_WIDTH, $0, $10 ; SILPH_CO_9F - EVENT_DISP SILPH_CO_8F_WIDTH, $0, $e ; SILPH_CO_7F - EVENT_DISP SILPH_CO_8F_WIDTH, $0, $12 ; SILPH_CO_ELEVATOR - EVENT_DISP SILPH_CO_8F_WIDTH, $b, $3 ; SILPH_CO_8F - EVENT_DISP SILPH_CO_8F_WIDTH, $f, $3 ; SILPH_CO_2F - EVENT_DISP SILPH_CO_8F_WIDTH, $5, $b ; SILPH_CO_2F - EVENT_DISP SILPH_CO_8F_WIDTH, $9, $b ; SILPH_CO_8F +INCLUDE "data/mapObjects/silphco8.asm" SilphCo8Blocks: ; 5666d (15:666d) INCBIN "maps/silphco8.blk" @@ -85632,7 +46779,7 @@ DisplayDiploma: ; 566e2 (15:66e2) dec c jr nz, .asm_5673e ; 0x56747 $f5 call EnableLCD - callba Func_5ae6 + callba LoadTrainerInfoTextBoxTiles ld b, $8 call GoPAL_SET call Delay3 @@ -86038,341 +47185,58 @@ CheckPlayerIsInFrontOfSprite: ; 569e3 (15:69e3) SECTION "bank16",ROMX,BANK[$16] -Route6_h: ; 0x58000 to 0x58022 (34 bytes) (id=17) - db OVERWORLD ; tileset - db ROUTE_6_HEIGHT, ROUTE_6_WIDTH ; dimensions (y, x) - dw Route6Blocks, Route6TextPointers, Route6Script ; blocks, texts, scripts - db NORTH | SOUTH ; connections - NORTH_MAP_CONNECTION SAFFRON_CITY, SAFFRON_CITY_WIDTH, SAFFRON_CITY_HEIGHT, -3, 2, SAFFRON_CITY_WIDTH - 4, SaffronCityBlocks - SOUTH_MAP_CONNECTION VERMILION_CITY, VERMILION_CITY_WIDTH, -3, 2, VERMILION_CITY_WIDTH - 4, VermilionCityBlocks, ROUTE_6_WIDTH, ROUTE_6_HEIGHT - dw Route6Object ; objects - -Route6Object: ; 0x58022 (size=87) - db $f ; border tile - - db $4 ; warps - db $1, $9, $2, ROUTE_6_GATE - db $1, $a, $2, ROUTE_6_GATE - db $7, $a, $0, ROUTE_6_GATE - db $d, $11, $0, PATH_ENTRANCE_ROUTE_6 - - db $1 ; signs - db $f, $13, $7 ; Route6Text7 - - db $6 ; people - db SPRITE_BLACK_HAIR_BOY_1, $15 + 4, $a + 4, $ff, $d3, $41, JR__TRAINER_M + $C8, $4 ; trainer - db SPRITE_LASS, $15 + 4, $b + 4, $ff, $d2, $42, JR__TRAINER_F + $C8, $2 ; trainer - db SPRITE_BUG_CATCHER, $f + 4, $0 + 4, $ff, $d3, $43, BUG_CATCHER + $C8, $a ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $1f + 4, $b + 4, $ff, $d2, $44, JR__TRAINER_M + $C8, $5 ; trainer - db SPRITE_LASS, $1e + 4, $b + 4, $ff, $d2, $45, JR__TRAINER_F + $C8, $3 ; trainer - db SPRITE_BUG_CATCHER, $1a + 4, $13 + 4, $ff, $d2, $46, BUG_CATCHER + $C8, $b ; trainer - - ; warp-to - EVENT_DISP ROUTE_6_WIDTH, $1, $9 ; ROUTE_6_GATE - EVENT_DISP ROUTE_6_WIDTH, $1, $a ; ROUTE_6_GATE - EVENT_DISP ROUTE_6_WIDTH, $7, $a ; ROUTE_6_GATE - EVENT_DISP ROUTE_6_WIDTH, $d, $11 ; PATH_ENTRANCE_ROUTE_6 +INCLUDE "data/mapHeaders/route6.asm" + +INCLUDE "data/mapObjects/route6.asm" Route6Blocks: ; 58079 (16:4079) INCBIN "maps/route6.blk" -Route8_h: ; 0x5812d to 0x5814f (34 bytes) (id=19) - db OVERWORLD ; tileset - db ROUTE_8_HEIGHT, ROUTE_8_WIDTH ; dimensions (y, x) - dw Route8Blocks, Route8TextPointers, Route8Script ; blocks, texts, scripts - db WEST | EAST ; connections - WEST_MAP_CONNECTION SAFFRON_CITY, SAFFRON_CITY_WIDTH, -3, 1, SAFFRON_CITY_HEIGHT - 3, SaffronCityBlocks, ROUTE_8_WIDTH - EAST_MAP_CONNECTION LAVENDER_TOWN, LAVENDER_TOWN_WIDTH, 0, 0, LAVENDER_TOWN_HEIGHT, LavenderTownBlocks, ROUTE_8_WIDTH - dw Route8Object ; objects - -Route8Object: ; 0x5814f (size=119) - db $2c ; border tile - - db $5 ; warps - db $9, $1, $0, ROUTE_8_GATE - db $a, $1, $1, ROUTE_8_GATE - db $9, $8, $2, ROUTE_8_GATE - db $a, $8, $3, ROUTE_8_GATE - db $3, $d, $0, PATH_ENTRANCE_ROUTE_8 - - db $1 ; signs - db $3, $11, $a ; Route8Text10 - - db $9 ; people - db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $8 + 4, $ff, $d3, $41, SUPER_NERD + $C8, $3 ; trainer - db SPRITE_GAMBLER, $9 + 4, $d + 4, $ff, $d1, $42, GAMBLER + $C8, $5 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $6 + 4, $2a + 4, $ff, $d1, $43, SUPER_NERD + $C8, $4 ; trainer - db SPRITE_LASS, $3 + 4, $1a + 4, $ff, $d2, $44, LASS + $C8, $d ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $4 + 4, $1a + 4, $ff, $d3, $45, SUPER_NERD + $C8, $5 ; trainer - db SPRITE_LASS, $5 + 4, $1a + 4, $ff, $d2, $46, LASS + $C8, $e ; trainer - db SPRITE_LASS, $6 + 4, $1a + 4, $ff, $d3, $47, LASS + $C8, $f ; trainer - db SPRITE_GAMBLER, $d + 4, $2e + 4, $ff, $d0, $48, GAMBLER + $C8, $7 ; trainer - db SPRITE_LASS, $c + 4, $33 + 4, $ff, $d2, $49, LASS + $C8, $10 ; trainer - - ; warp-to - EVENT_DISP ROUTE_8_WIDTH, $9, $1 ; ROUTE_8_GATE - EVENT_DISP ROUTE_8_WIDTH, $a, $1 ; ROUTE_8_GATE - EVENT_DISP ROUTE_8_WIDTH, $9, $8 ; ROUTE_8_GATE - EVENT_DISP ROUTE_8_WIDTH, $a, $8 ; ROUTE_8_GATE - EVENT_DISP ROUTE_8_WIDTH, $3, $d ; PATH_ENTRANCE_ROUTE_8 +INCLUDE "data/mapHeaders/route8.asm" + +INCLUDE "data/mapObjects/route8.asm" Route8Blocks: ; 581c6 (16:41c6) INCBIN "maps/route8.blk" -Route10_h: ; 0x582d4 to 0x582f6 (34 bytes) (id=21) - db OVERWORLD ; tileset - db ROUTE_10_HEIGHT, ROUTE_10_WIDTH ; dimensions (y, x) - dw Route10Blocks, Route10TextPointers, Route10Script ; blocks, texts, scripts - db SOUTH | WEST ; connections - SOUTH_MAP_CONNECTION LAVENDER_TOWN, LAVENDER_TOWN_WIDTH, 0, 0, LAVENDER_TOWN_WIDTH, LavenderTownBlocks, ROUTE_10_WIDTH, ROUTE_10_HEIGHT - WEST_MAP_CONNECTION ROUTE_9, ROUTE_9_WIDTH, 0, 0, ROUTE_9_HEIGHT, Route9Blocks, ROUTE_10_WIDTH - dw Route10Object ; objects - -Route10Object: ; 0x582f6 (size=96) - db $2c ; border tile - - db $4 ; warps - db $13, $b, $0, ROCK_TUNNEL_POKECENTER - db $11, $8, $0, ROCK_TUNNEL_1 - db $35, $8, $2, ROCK_TUNNEL_1 - db $27, $6, $0, POWER_PLANT - - db $4 ; signs - db $13, $7, $7 ; Route10Text7 - db $13, $c, $8 ; PokeCenterSignText - db $37, $9, $9 ; Route10Text9 - db $29, $5, $a ; Route10Text10 - - db $6 ; people - db SPRITE_BLACK_HAIR_BOY_2, $2c + 4, $a + 4, $ff, $d2, $41, POKEMANIAC + $C8, $1 ; trainer - db SPRITE_HIKER, $39 + 4, $3 + 4, $ff, $d1, $42, HIKER + $C8, $7 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $40 + 4, $e + 4, $ff, $d2, $43, POKEMANIAC + $C8, $2 ; trainer - db SPRITE_LASS, $19 + 4, $7 + 4, $ff, $d2, $44, JR__TRAINER_F + $C8, $7 ; trainer - db SPRITE_HIKER, $3d + 4, $3 + 4, $ff, $d0, $45, HIKER + $C8, $8 ; trainer - db SPRITE_LASS, $36 + 4, $7 + 4, $ff, $d0, $46, JR__TRAINER_F + $C8, $8 ; trainer - - ; warp-to - EVENT_DISP ROUTE_10_WIDTH, $13, $b ; ROCK_TUNNEL_POKECENTER - EVENT_DISP ROUTE_10_WIDTH, $11, $8 ; ROCK_TUNNEL_1 - EVENT_DISP ROUTE_10_WIDTH, $35, $8 ; ROCK_TUNNEL_1 - EVENT_DISP ROUTE_10_WIDTH, $27, $6 ; POWER_PLANT +INCLUDE "data/mapHeaders/route10.asm" + +INCLUDE "data/mapObjects/route10.asm" Route10Blocks: ; 58356 (16:4356) INCBIN "maps/route10.blk" -Route11_h: ; 0x584be to 0x584e0 (34 bytes) (id=22) - db OVERWORLD ; tileset - db ROUTE_11_HEIGHT, ROUTE_11_WIDTH ; dimensions (y, x) - dw Route11Blocks, Route11TextPointers, Route11Script ; blocks, texts, scripts - db WEST | EAST ; connections - WEST_MAP_CONNECTION VERMILION_CITY, VERMILION_CITY_WIDTH, -3, 1, VERMILION_CITY_HEIGHT - 3, VermilionCityBlocks, ROUTE_11_WIDTH - EAST_MAP_CONNECTION ROUTE_12, ROUTE_12_WIDTH, -3, 24, ROUTE_12_HEIGHT - 39, Route12Blocks, ROUTE_11_WIDTH - dw Route11Object ; objects - -Route11Object: ; 0x584e0 (size=127) - db $f ; border tile - - db $5 ; warps - db $8, $31, $0, ROUTE_11_GATE_1F - db $9, $31, $1, ROUTE_11_GATE_1F - db $8, $3a, $2, ROUTE_11_GATE_1F - db $9, $3a, $3, ROUTE_11_GATE_1F - db $5, $4, $0, DIGLETTS_CAVE_ENTRANCE - - db $1 ; signs - db $5, $1, $b ; Route11Text11 - - db $a ; people - db SPRITE_GAMBLER, $e + 4, $a + 4, $ff, $d0, $41, GAMBLER + $C8, $1 ; trainer - db SPRITE_GAMBLER, $9 + 4, $1a + 4, $ff, $d0, $42, GAMBLER + $C8, $2 ; trainer - db SPRITE_BUG_CATCHER, $5 + 4, $d + 4, $ff, $d2, $43, YOUNGSTER + $C8, $9 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $b + 4, $24 + 4, $ff, $d0, $44, ENGINEER + $C8, $2 ; trainer - db SPRITE_BUG_CATCHER, $4 + 4, $16 + 4, $ff, $d1, $45, YOUNGSTER + $C8, $a ; trainer - db SPRITE_GAMBLER, $7 + 4, $2d + 4, $ff, $d0, $46, GAMBLER + $C8, $3 ; trainer - db SPRITE_GAMBLER, $3 + 4, $21 + 4, $ff, $d1, $47, GAMBLER + $C8, $4 ; trainer - db SPRITE_BUG_CATCHER, $5 + 4, $2b + 4, $ff, $d3, $48, YOUNGSTER + $C8, $b ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $10 + 4, $2d + 4, $ff, $d2, $49, ENGINEER + $C8, $3 ; trainer - db SPRITE_BUG_CATCHER, $c + 4, $16 + 4, $ff, $d1, $4a, YOUNGSTER + $C8, $c ; trainer - - ; warp-to - EVENT_DISP ROUTE_11_WIDTH, $8, $31 ; ROUTE_11_GATE_1F - EVENT_DISP ROUTE_11_WIDTH, $9, $31 ; ROUTE_11_GATE_1F - EVENT_DISP ROUTE_11_WIDTH, $8, $3a ; ROUTE_11_GATE_1F - EVENT_DISP ROUTE_11_WIDTH, $9, $3a ; ROUTE_11_GATE_1F - EVENT_DISP ROUTE_11_WIDTH, $5, $4 ; DIGLETTS_CAVE_ENTRANCE +INCLUDE "data/mapHeaders/route11.asm" + +INCLUDE "data/mapObjects/route11.asm" Route11Blocks: ; 5855f (16:455f) INCBIN "maps/route11.blk" -Route12_h: ; 0x5866d to 0x5869a (45 bytes) (id=23) - db OVERWORLD ; tileset - db ROUTE_12_HEIGHT, ROUTE_12_WIDTH ; dimensions (y, x) - dw Route12Blocks, Route12TextPointers, Route12Script ; blocks, texts, scripts - db NORTH | SOUTH | WEST ; connections - NORTH_MAP_CONNECTION LAVENDER_TOWN, LAVENDER_TOWN_WIDTH, LAVENDER_TOWN_HEIGHT, 0, 0, LAVENDER_TOWN_WIDTH, LavenderTownBlocks - SOUTH_MAP_CONNECTION ROUTE_13, ROUTE_13_WIDTH, -3, 17, ROUTE_13_WIDTH - 17, Route13Blocks, ROUTE_12_WIDTH, ROUTE_12_HEIGHT - WEST_MAP_CONNECTION ROUTE_11, ROUTE_11_WIDTH, 27, 0, ROUTE_11_HEIGHT, Route11Blocks, ROUTE_12_WIDTH - dw Route12Object ; objects - -Route12Object: ; 0x5869a (size=118) - db $43 ; border tile - - db $4 ; warps - db $f, $a, $0, ROUTE_12_GATE_1F - db $f, $b, $1, ROUTE_12_GATE_1F - db $15, $a, $2, ROUTE_12_GATE_1F - db $4d, $b, $0, ROUTE_12_HOUSE - - db $2 ; signs - db $d, $d, $b ; Route12Text11 - db $3f, $b, $c ; Route12Text12 - - db $a ; people - db SPRITE_SNORLAX, $3e + 4, $a + 4, $ff, $d0, $1 ; person - db SPRITE_FISHER2, $1f + 4, $e + 4, $ff, $d2, $42, FISHER + $C8, $3 ; trainer - db SPRITE_FISHER2, $27 + 4, $5 + 4, $ff, $d1, $43, FISHER + $C8, $4 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $5c + 4, $b + 4, $ff, $d2, $44, JR__TRAINER_M + $C8, $9 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $4c + 4, $e + 4, $ff, $d1, $45, ROCKER + $C8, $2 ; trainer - db SPRITE_FISHER2, $28 + 4, $c + 4, $ff, $d2, $46, FISHER + $C8, $5 ; trainer - db SPRITE_FISHER2, $34 + 4, $9 + 4, $ff, $d3, $47, FISHER + $C8, $6 ; trainer - db SPRITE_FISHER2, $57 + 4, $6 + 4, $ff, $d0, $48, FISHER + $C8, $b ; trainer - db SPRITE_BALL, $23 + 4, $e + 4, $ff, $ff, $89, TM_16 ; item - db SPRITE_BALL, $59 + 4, $5 + 4, $ff, $ff, $8a, IRON ; item - - ; warp-to - EVENT_DISP ROUTE_12_WIDTH, $f, $a ; ROUTE_12_GATE_1F - EVENT_DISP ROUTE_12_WIDTH, $f, $b ; ROUTE_12_GATE_1F - EVENT_DISP ROUTE_12_WIDTH, $15, $a ; ROUTE_12_GATE_1F - EVENT_DISP ROUTE_12_WIDTH, $4d, $b ; ROUTE_12_HOUSE +INCLUDE "data/mapHeaders/route12.asm" + +INCLUDE "data/mapObjects/route12.asm" Route12Blocks: ; 58710 (16:4710) INCBIN "maps/route12.blk" -Route15_h: ; 0x5892c to 0x5894e (34 bytes) (id=26) - db OVERWORLD ; tileset - db ROUTE_15_HEIGHT, ROUTE_15_WIDTH ; dimensions (y, x) - dw Route15Blocks, Route15TextPointers, Route15Script ; blocks, texts, scripts - db WEST | EAST ; connections - WEST_MAP_CONNECTION FUCHSIA_CITY, FUCHSIA_CITY_WIDTH, -3, 1, FUCHSIA_CITY_HEIGHT - 3, FuchsiaCityBlocks, ROUTE_15_WIDTH - EAST_MAP_CONNECTION ROUTE_14, ROUTE_14_WIDTH, -3, 15, ROUTE_14_HEIGHT - 15, Route14Blocks, ROUTE_15_WIDTH - dw Route15Object ; objects - -Route15Object: ; 0x5894e (size=126) - db $43 ; border tile - - db $4 ; warps - db $8, $7, $0, ROUTE_15_GATE_1F - db $9, $7, $1, ROUTE_15_GATE_1F - db $8, $e, $2, ROUTE_15_GATE_1F - db $9, $e, $3, ROUTE_15_GATE_1F - - db $1 ; signs - db $9, $27, $c ; Route15Text12 - - db $b ; people - db SPRITE_LASS, $b + 4, $29 + 4, $ff, $d0, $41, JR__TRAINER_F + $C8, $14 ; trainer - db SPRITE_LASS, $a + 4, $35 + 4, $ff, $d2, $42, JR__TRAINER_F + $C8, $15 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $d + 4, $1f + 4, $ff, $d1, $43, BIRD_KEEPER + $C8, $6 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $d + 4, $23 + 4, $ff, $d1, $44, BIRD_KEEPER + $C8, $7 ; trainer - db SPRITE_FOULARD_WOMAN, $b + 4, $35 + 4, $ff, $d0, $45, BEAUTY + $C8, $9 ; trainer - db SPRITE_FOULARD_WOMAN, $a + 4, $29 + 4, $ff, $d3, $46, BEAUTY + $C8, $a ; trainer - db SPRITE_BIKER, $a + 4, $30 + 4, $ff, $d0, $47, BIKER + $C8, $3 ; trainer - db SPRITE_BIKER, $a + 4, $2e + 4, $ff, $d0, $48, BIKER + $C8, $4 ; trainer - db SPRITE_LASS, $5 + 4, $25 + 4, $ff, $d3, $49, JR__TRAINER_F + $C8, $16 ; trainer - db SPRITE_LASS, $d + 4, $12 + 4, $ff, $d1, $4a, JR__TRAINER_F + $C8, $17 ; trainer - db SPRITE_BALL, $5 + 4, $12 + 4, $ff, $ff, $8b, TM_20 ; item - - ; warp-to - EVENT_DISP ROUTE_15_WIDTH, $8, $7 ; ROUTE_15_GATE_1F - EVENT_DISP ROUTE_15_WIDTH, $9, $7 ; ROUTE_15_GATE_1F - EVENT_DISP ROUTE_15_WIDTH, $8, $e ; ROUTE_15_GATE_1F - EVENT_DISP ROUTE_15_WIDTH, $9, $e ; ROUTE_15_GATE_1F +INCLUDE "data/mapHeaders/route15.asm" + +INCLUDE "data/mapObjects/route15.asm" Route15Blocks: ; 589cc (16:49cc) INCBIN "maps/route15.blk" -Route16_h: ; 0x58ada to 0x58afc (34 bytes) (id=27) - db OVERWORLD ; tileset - db ROUTE_16_HEIGHT, ROUTE_16_WIDTH ; dimensions (y, x) - dw Route16Blocks, Route16TextPointers, Route16Script ; blocks, texts, scripts - db SOUTH | EAST ; connections - SOUTH_MAP_CONNECTION ROUTE_17, ROUTE_17_WIDTH, 0, 0, ROUTE_17_WIDTH, Route17Blocks, ROUTE_16_WIDTH, ROUTE_16_HEIGHT - EAST_MAP_CONNECTION CELADON_CITY, CELADON_CITY_WIDTH, -3, 1, CELADON_CITY_HEIGHT - 3, CeladonCityBlocks, ROUTE_16_WIDTH - dw Route16Object ; objects - -Route16Object: ; 0x58afc (size=136) - db $f ; border tile - - db $9 ; warps - db $a, $11, $0, ROUTE_16_GATE_1F - db $b, $11, $1, ROUTE_16_GATE_1F - db $a, $18, $2, ROUTE_16_GATE_1F - db $b, $18, $3, ROUTE_16_GATE_1F - db $4, $11, $4, ROUTE_16_GATE_1F - db $5, $11, $5, ROUTE_16_GATE_1F - db $4, $18, $6, ROUTE_16_GATE_1F - db $5, $18, $7, ROUTE_16_GATE_1F - db $5, $7, $0, ROUTE_16_HOUSE - - db $2 ; signs - db $b, $1b, $8 ; Route16Text8 - db $11, $5, $9 ; Route16Text9 - - db $7 ; people - db SPRITE_BIKER, $c + 4, $11 + 4, $ff, $d2, $41, BIKER + $C8, $5 ; trainer - db SPRITE_BIKER, $d + 4, $e + 4, $ff, $d3, $42, CUE_BALL + $C8, $1 ; trainer - db SPRITE_BIKER, $c + 4, $b + 4, $ff, $d1, $43, CUE_BALL + $C8, $2 ; trainer - db SPRITE_BIKER, $b + 4, $9 + 4, $ff, $d2, $44, BIKER + $C8, $6 ; trainer - db SPRITE_BIKER, $a + 4, $6 + 4, $ff, $d3, $45, CUE_BALL + $C8, $3 ; trainer - db SPRITE_BIKER, $c + 4, $3 + 4, $ff, $d3, $46, BIKER + $C8, $7 ; trainer - db SPRITE_SNORLAX, $a + 4, $1a + 4, $ff, $d0, $7 ; person - - ; warp-to - EVENT_DISP ROUTE_16_WIDTH, $a, $11 ; ROUTE_16_GATE_1F - EVENT_DISP ROUTE_16_WIDTH, $b, $11 ; ROUTE_16_GATE_1F - EVENT_DISP ROUTE_16_WIDTH, $a, $18 ; ROUTE_16_GATE_1F - EVENT_DISP ROUTE_16_WIDTH, $b, $18 ; ROUTE_16_GATE_1F - EVENT_DISP ROUTE_16_WIDTH, $4, $11 ; ROUTE_16_GATE_1F - EVENT_DISP ROUTE_16_WIDTH, $5, $11 ; ROUTE_16_GATE_1F - EVENT_DISP ROUTE_16_WIDTH, $4, $18 ; ROUTE_16_GATE_1F - EVENT_DISP ROUTE_16_WIDTH, $5, $18 ; ROUTE_16_GATE_1F - EVENT_DISP ROUTE_16_WIDTH, $5, $7 ; ROUTE_16_HOUSE +INCLUDE "data/mapHeaders/route16.asm" + +INCLUDE "data/mapObjects/route16.asm" Route16Blocks: ; 58b84 (16:4b84) INCBIN "maps/route16.blk" -Route18_h: ; 0x58c38 to 0x58c5a (34 bytes) (id=29) - db OVERWORLD ; tileset - db ROUTE_18_HEIGHT, ROUTE_18_WIDTH ; dimensions (y, x) - dw Route18Blocks, Route18TextPointers, Route18Script ; blocks, texts, scripts - db NORTH | EAST ; connections - NORTH_MAP_CONNECTION ROUTE_17, ROUTE_17_WIDTH, ROUTE_17_HEIGHT, 0, 0, ROUTE_17_WIDTH, Route17Blocks - EAST_MAP_CONNECTION FUCHSIA_CITY, FUCHSIA_CITY_WIDTH, -3, 1, FUCHSIA_CITY_HEIGHT - 3, FuchsiaCityBlocks, ROUTE_18_WIDTH - dw Route18Object ; objects - -Route18Object: ; 0x58c5a (size=66) - db $43 ; border tile - - db $4 ; warps - db $8, $21, $0, ROUTE_18_GATE_1F - db $9, $21, $1, ROUTE_18_GATE_1F - db $8, $28, $2, ROUTE_18_GATE_1F - db $9, $28, $3, ROUTE_18_GATE_1F - - db $2 ; signs - db $7, $2b, $4 ; Route18Text4 - db $5, $21, $5 ; Route18Text5 - - db $3 ; people - db SPRITE_BLACK_HAIR_BOY_1, $b + 4, $24 + 4, $ff, $d3, $41, BIRD_KEEPER + $C8, $8 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $f + 4, $28 + 4, $ff, $d2, $42, BIRD_KEEPER + $C8, $9 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $d + 4, $2a + 4, $ff, $d2, $43, BIRD_KEEPER + $C8, $a ; trainer - - ; warp-to - EVENT_DISP ROUTE_18_WIDTH, $8, $21 ; ROUTE_18_GATE_1F - EVENT_DISP ROUTE_18_WIDTH, $9, $21 ; ROUTE_18_GATE_1F - EVENT_DISP ROUTE_18_WIDTH, $8, $28 ; ROUTE_18_GATE_1F - EVENT_DISP ROUTE_18_WIDTH, $9, $28 ; ROUTE_18_GATE_1F +INCLUDE "data/mapHeaders/route18.asm" + +INCLUDE "data/mapObjects/route18.asm" Route18Blocks: ; 58c9c (16:4c9c) INCBIN "maps/route18.blk" @@ -86391,21 +47255,21 @@ Func_58d99: ; 58d99 (16:4d99) .asm_58daa ld a, [W_ENEMYMONID] call PlayCry - ld hl, UnnamedText_58e3b ; $4e3b + ld hl, WildMonAppearedText ld a, [W_MOVEMISSED] ; $d05f and a jr z, .asm_58dbc - ld hl, UnnamedText_58e40 ; $4e40 + ld hl, HookedMonAttackedText .asm_58dbc jr .asm_58dc9 .asm_58dbe call Func_58e29 ld c, $14 call DelayFrames - ld hl, UnnamedText_58e4a ; $4e4a + ld hl, TrainerWantsToFightText .asm_58dc9 push hl - callab Func_3a849 + callab DrawAllPokeballs pop hl call PrintText jr asm_58e3a @@ -86422,22 +47286,22 @@ Func_58d99: ; 58d99 (16:4d99) callab Func_3eb01 jr .asm_58daa .asm_58df5 - ld hl, UnnamedText_58e45 ; $4e45 + ld hl, EnemyAppearedText call PrintText - ld hl, UnnamedText_58e54 ; $4e54 + ld hl, GhostCantBeIDdText call PrintText jr asm_58e3a .asm_58e03 ld a, b and a jr z, .asm_58df5 - ld hl, UnnamedText_58e45 ; $4e45 + ld hl, EnemyAppearedText call PrintText - ld hl, UnnamedText_58e4f ; $4e4f + ld hl, UnveiledGhostText call PrintText callab Func_3eb01 callab Func_708ca - ld hl, UnnamedText_58e3b ; $4e3b + ld hl, WildMonAppearedText call PrintText Func_58e29: ; 58e29 (16:4e29) @@ -86451,35 +47315,35 @@ Func_58e29: ; 58e29 (16:4e29) asm_58e3a: ; 58e3a (16:4e3a) ret -UnnamedText_58e3b: ; 58e3b (16:4e3b) - TX_FAR _UnnamedText_58e3b +WildMonAppearedText: ; 58e3b (16:4e3b) + TX_FAR _WildMonAppearedText db "@" -UnnamedText_58e40: ; 58e40 (16:4e40) - TX_FAR _UnnamedText_58e40 +HookedMonAttackedText: ; 58e40 (16:4e40) + TX_FAR _HookedMonAttackedText db "@" -UnnamedText_58e45: ; 58e45 (16:4e45) - TX_FAR _UnnamedText_58e45 +EnemyAppearedText: ; 58e45 (16:4e45) + TX_FAR _EnemyAppearedText db "@" -UnnamedText_58e4a: ; 58e4a (16:4e4a) - TX_FAR _UnnamedText_58e4a +TrainerWantsToFightText: ; 58e4a (16:4e4a) + TX_FAR _TrainerWantsToFightText db "@" -UnnamedText_58e4f: ; 58e4f (16:4e4f) - TX_FAR _UnnamedText_58e4f +UnveiledGhostText: ; 58e4f (16:4e4f) + TX_FAR _UnveiledGhostText db "@" -UnnamedText_58e54: ; 58e54 (16:4e54) - TX_FAR _UnnamedText_58e54 +GhostCantBeIDdText: ; 58e54 (16:4e54) + TX_FAR _GhostCantBeIDdText db "@" Func_58e59: ; 58e59 (16:4e59) ld hl, W_ENEMYMONCURHP ; $cfe6 ld a, [hli] or [hl] - ld hl, UnnamedText_58eae ; $4eae + ld hl, GoText jr z, .asm_58eab xor a ld [H_NUMTOPRINT], a ; $ff96 (aliases: H_MULTIPLICAND) @@ -86505,52 +47369,52 @@ Func_58e59: ; 58e59 (16:4e59) ld [H_REMAINDER], a ; $ff99 (aliases: H_DIVISOR, H_MULTIPLIER, H_POWEROFTEN) call Divide ld a, [$ff98] - ld hl, UnnamedText_58eae ; $4eae + ld hl, GoText cp $46 jr nc, .asm_58eab - ld hl, UnnamedText_58eb5 ; $4eb5 + ld hl, DoItText cp $28 jr nc, .asm_58eab - ld hl, UnnamedText_58ebc ; $4ebc + ld hl, GetmText cp $a jr nc, .asm_58eab - ld hl, UnnamedText_58ec3 ; $4ec3 + ld hl, EnemysWeakText .asm_58eab jp PrintText -UnnamedText_58eae: ; 58eae (16:4eae) - TX_FAR _UnnamedText_58eae +GoText: ; 58eae (16:4eae) + TX_FAR _GoText db $08 ; asm jr Func_58ec8 -UnnamedText_58eb5: ; 58eb5 (16:4eb5) - TX_FAR _UnnamedText_58eb5 +DoItText: ; 58eb5 (16:4eb5) + TX_FAR _DoItText db $08 ; asm jr Func_58ec8 -UnnamedText_58ebc: ; 58ebc (16:4ebc) - TX_FAR _UnnamedText_58ebc +GetmText: ; 58ebc (16:4ebc) + TX_FAR _GetmText db $08 ; asm jr Func_58ec8 -UnnamedText_58ec3: ; 58ec3 (16:4ec3) - TX_FAR _UnnamedText_58ec3 +EnemysWeakText: ; 58ec3 (16:4ec3) + TX_FAR _EnemysWeakText db $08 ; asm Func_58ec8 - ld hl, UnnamedText_58ecc ; $4ecc + ld hl, PlayerMon1Text ret -UnnamedText_58ecc: ; 58ecc (16:4ecc) - TX_FAR _UnnamedText_58ecc +PlayerMon1Text: ; 58ecc (16:4ecc) + TX_FAR _PlayerMon1Text db "@" Func_58ed1: ; 58ed1 (16:4ed1) - ld hl, UnnamedText_58ed7 ; $4ed7 + ld hl, PlayerMon2Text jp PrintText -UnnamedText_58ed7: ; 58ed7 (16:4ed7) - TX_FAR _UnnamedText_58ed7 +PlayerMon2Text: ; 58ed7 (16:4ed7) + TX_FAR _PlayerMon2Text db $08 ; asm push de push bc @@ -86583,39 +47447,39 @@ UnnamedText_58ed7: ; 58ed7 (16:4ed7) pop bc pop de ld a, [$ff98] - ld hl, UnnamedText_58f25 + ld hl, EnoughText and a ret z - ld hl, UnnamedText_58f3e + ld hl, ComeBackText cp $1e ret c - ld hl, UnnamedText_58f2c + ld hl, OKExclamationText cp $46 ret c - ld hl, UnnamedText_58f33 + ld hl, GoodText ret -UnnamedText_58f25: ; 58f25 (16:4f25) - TX_FAR _UnnamedText_58f25 +EnoughText: ; 58f25 (16:4f25) + TX_FAR _EnoughText db $08 ; asm jr Func_58f3a -UnnamedText_58f2c: ; 58f2c (16:4f2c) - TX_FAR _UnnamedText_58f2c +OKExclamationText: ; 58f2c (16:4f2c) + TX_FAR _OKExclamationText db $08 ; asm jr Func_58f3a -UnnamedText_58f33: ; 58f33 (16:4f33) - TX_FAR _UnnamedText_58f33 +GoodText: ; 58f33 (16:4f33) + TX_FAR _GoodText db $08 ; asm jr Func_58f3a Func_58f3a: ; 58f3a (16:4f3a) - ld hl, UnnamedText_58f3e + ld hl, ComeBackText ret -UnnamedText_58f3e: ; 58f3e (16:4f3e) - TX_FAR _UnnamedText_58f3e +ComeBackText: ; 58f3e (16:4f3e) + TX_FAR _ComeBackText db "@" Func_58f43: ; 58f43 (16:4f43) @@ -86762,7 +47626,7 @@ CalcDSquared: ; 59010 (16:5010) ; each entry has the following scheme: ; %AAAABBBB %SCCCCCCC %DDDDDDDD %EEEEEEEE -; resulting in +; resulting in ; (a*n^3)/b + sign*c*n^2 + d*n - e ; where sign = -1 <=> S=1 GrowthRateTable: ; 5901d (16:501d) @@ -86774,7 +47638,7 @@ GrowthRateTable: ; 5901d (16:501d) db $54,$00,$00,$00 ; slow: 5/4 n^3 Func_59035 ; 0x59035 - ld hl, UnnamedText_59091 ; $5091 + ld hl, OaksAideHiText call PrintText call YesNoChoice ld a, [$cc26] @@ -86791,3185 +47655,126 @@ Func_59035 ; 0x59035 jr z, .asm_59059 ; 0x59055 $2 jr nc, .asm_5907c ; 0x59057 $23 .asm_59059 - ld hl, UnnamedText_590a0 ; $50a0 + ld hl, OaksAideHereYouGoText call PrintText ld a, [$ffdc] ld b, a ld c, 1 call GiveItem jr nc, .BagFull - ld hl, UnnamedText_590a5 ; $50a5 + ld hl, OaksAideGotItemText call PrintText ld a, $1 jr .asm_5908e ; 0x59071 $1b .BagFull - ld hl, UnnamedText_590ab ; $50ab + ld hl, OaksAideNoRoomText call PrintText xor a jr .asm_5908e ; 0x5907a $12 .asm_5907c - ld hl, UnnamedText_59096 ; $5096 + ld hl, OaksAideUhOhText call PrintText ld a, $80 jr .asm_5908e ; 0x59084 $8 .asm_59086 - ld hl, UnnamedText_5909b ; $509b + ld hl, OaksAideComeBackText call PrintText ld a, $ff .asm_5908e ld [$ffdb], a ret -UnnamedText_59091: ; 59091 (16:5091) - TX_FAR _UnnamedText_59091 +OaksAideHiText: ; 59091 (16:5091) + TX_FAR _OaksAideHiText db "@" -UnnamedText_59096: ; 59096 (16:5096) - TX_FAR _UnnamedText_59096 +OaksAideUhOhText: ; 59096 (16:5096) + TX_FAR _OaksAideUhOhText db "@" -UnnamedText_5909b: ; 5909b (16:509b) - TX_FAR _UnnamedText_5909b +OaksAideComeBackText: ; 5909b (16:509b) + TX_FAR _OaksAideComeBackText db "@" -UnnamedText_590a0: ; 590a0 (16:50a0) - TX_FAR _UnnamedText_590a0 +OaksAideHereYouGoText: ; 590a0 (16:50a0) + TX_FAR _OaksAideHereYouGoText db "@" -UnnamedText_590a5: ; 590a5 (16:50a5) - TX_FAR _UnnamedText_590a5 +OaksAideGotItemText: ; 590a5 (16:50a5) + TX_FAR _OaksAideGotItemText db $0b db "@" -UnnamedText_590ab: ; 590ab (16:50ab) - TX_FAR _UnnamedText_590ab - db "@" - -Route6Script: ; 590b0 (16:50b0) - call EnableAutoTextBoxDrawing - ld hl, Route6TrainerHeaders - ld de, Route6ScriptPointers - ld a, [W_ROUTE6CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_ROUTE6CURSCRIPT], a - ret - -Route6ScriptPointers: ; 590c3 (16:50c3) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -Route6TextPointers: ; 590c9 (16:50c9) - dw Route6Text1 - dw Route6Text2 - dw Route6Text3 - dw Route6Text4 - dw Route6Text5 - dw Route6Text6 - dw Route6Text7 - -Route6TrainerHeaders: ; 590d7 (16:50d7) -Route6TrainerHeader0: ; 590d7 (16:50d7) - db $1 ; flag's bit - db ($0 << 4) ; trainer's view range - dw $d7c9 ; flag's byte - dw Route6BattleText1 ; 0x512a TextBeforeBattle - dw Route6AfterBattleText1 ; 0x5134 TextAfterBattle - dw Route6EndBattleText1 ; 0x512f TextEndBattle - dw Route6EndBattleText1 ; 0x512f TextEndBattle - -Route6TrainerHeader1: ; 590e3 (16:50e3) - db $2 ; flag's bit - db ($0 << 4) ; trainer's view range - dw $d7c9 ; flag's byte - dw Route6BattleText2 ; 0x5143 TextBeforeBattle - dw Route6AfterBattleText1 ; 0x5134 TextAfterBattle - dw Route6EndBattleText2 ; 0x5148 TextEndBattle - dw Route6EndBattleText2 ; 0x5148 TextEndBattle - -Route6TrainerHeader2: ; 590ef (16:50ef) - db $3 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7c9 ; flag's byte - dw Route6BattleText3 ; 0x5157 TextBeforeBattle - dw Route6AfterBattleText3 ; 0x5161 TextAfterBattle - dw Route6EndBattleText3 ; 0x515c TextEndBattle - dw Route6EndBattleText3 ; 0x515c TextEndBattle - -Route6TrainerHeader3: ; 590fb (16:50fb) - db $4 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7c9 ; flag's byte - dw Route6BattleText4 ; 0x5170 TextBeforeBattle - dw Route6AfterBattleText4 ; 0x517a TextAfterBattle - dw Route6EndBattleText4 ; 0x5175 TextEndBattle - dw Route6EndBattleText4 ; 0x5175 TextEndBattle - -Route6TrainerHeader4: ; 59107 (16:5107) - db $5 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7c9 ; flag's byte - dw Route6BattleText5 ; 0x5189 TextBeforeBattle - dw Route6AfterBattleText5 ; 0x5193 TextAfterBattle - dw Route6EndBattleText5 ; 0x518e TextEndBattle - dw Route6EndBattleText5 ; 0x518e TextEndBattle - -Route6TrainerHeader5: ; 59113 (16:5113) - db $6 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7c9 ; flag's byte - dw Route6BattleText6 ; 0x51a2 TextBeforeBattle - dw Route6AfterBattleText6 ; 0x51ac TextAfterBattle - dw Route6EndBattleText6 ; 0x51a7 TextEndBattle - dw Route6EndBattleText6 ; 0x51a7 TextEndBattle - - db $ff - -Route6Text1: ; 59120 (16:5120) - db $8 - ld hl, Route6TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -Route6BattleText1: ; 5912a (16:512a) - TX_FAR _Route6BattleText1 - db "@" - -Route6EndBattleText1: ; 5912f (16:512f) - TX_FAR _Route6EndBattleText1 - db "@" - -Route6AfterBattleText1: ; 59134 (16:5134) - TX_FAR _Route6AfterBattleText1 - db "@" - -Route6Text2: ; 59139 (16:5139) - db $08 ; asm - ld hl, Route6TrainerHeader1 - call TalkToTrainer - jp TextScriptEnd - -Route6BattleText2: ; 59143 (16:5143) - TX_FAR _Route6BattleText2 - db "@" - -Route6EndBattleText2: ; 59148 (16:5148) - TX_FAR _Route6EndBattleText2 - db "@" - -Route6Text3: ; 5914d (16:514d) - db $08 ; asm - ld hl, Route6TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -Route6BattleText3: ; 59157 (16:5157) - TX_FAR _Route6BattleText3 - db "@" - -Route6EndBattleText3: ; 5915c (16:515c) - TX_FAR _Route6EndBattleText3 - db "@" - -Route6AfterBattleText3: ; 59161 (16:5161) - TX_FAR _Route6AfterBattleText3 - db "@" - -Route6Text4: ; 59166 (16:5166) - db $08 ; asm - ld hl, Route6TrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -Route6BattleText4: ; 59170 (16:5170) - TX_FAR _Route6BattleText4 - db "@" - -Route6EndBattleText4: ; 59175 (16:5175) - TX_FAR _Route6EndBattleText4 - db "@" - -Route6AfterBattleText4: ; 5917a (16:517a) - TX_FAR _Route6AfterBattleText4 - db "@" - -Route6Text5: ; 5917f (16:517f) - db $08 ; asm - ld hl, Route6TrainerHeader4 - call TalkToTrainer - jp TextScriptEnd - -Route6BattleText5: ; 59189 (16:5189) - TX_FAR _Route6BattleText5 - db "@" - -Route6EndBattleText5: ; 5918e (16:518e) - TX_FAR _Route6EndBattleText5 - db "@" - -Route6AfterBattleText5: ; 59193 (16:5193) - TX_FAR _Route6AfterBattleText5 - db "@" - -Route6Text6: ; 59198 (16:5198) - db $08 ; asm - ld hl, Route6TrainerHeader5 - call TalkToTrainer - jp TextScriptEnd - -Route6BattleText6: ; 591a2 (16:51a2) - TX_FAR _Route6BattleText6 - db "@" - -Route6EndBattleText6: ; 591a7 (16:51a7) - TX_FAR _Route6EndBattleText6 - db "@" - -Route6AfterBattleText6: ; 591ac (16:51ac) - TX_FAR _Route6AfterBattleText6 - db "@" - -Route6Text7: ; 591b1 (16:51b1) - TX_FAR _Route6Text7 - db "@" - -Route8Script: ; 591b6 (16:51b6) - call EnableAutoTextBoxDrawing - ld hl, Route8TrainerHeaders - ld de, Route8ScriptPointers - ld a, [W_ROUTE8CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_ROUTE8CURSCRIPT], a - ret - -Route8ScriptPointers: ; 591c9 (16:51c9) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -Route8TextPointers: ; 591cf (16:51cf) - dw Route8Text1 - dw Route8Text2 - dw Route8Text3 - dw Route8Text4 - dw Route8Text5 - dw Route8Text6 - dw Route8Text7 - dw Route8Text8 - dw Route8Text9 - dw Route8Text10 - -Route8TrainerHeaders: ; 591e3 (16:51e3) -Route8TrainerHeader0: ; 591e3 (16:51e3) - db $1 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7cd ; flag's byte - dw Route8BattleText1 ; 0x525a TextBeforeBattle - dw Route8AfterBattleText1 ; 0x5264 TextAfterBattle - dw Route8EndBattleText1 ; 0x525f TextEndBattle - dw Route8EndBattleText1 ; 0x525f TextEndBattle - -Route8TrainerHeader1: ; 591ef (16:51ef) - db $2 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7cd ; flag's byte - dw Route8BattleText2 ; 0x5273 TextBeforeBattle - dw Route8AfterBattleText2 ; 0x527d TextAfterBattle - dw Route8EndBattleText2 ; 0x5278 TextEndBattle - dw Route8EndBattleText2 ; 0x5278 TextEndBattle - -Route8TrainerHeader2: ; 591fb (16:51fb) - db $3 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7cd ; flag's byte - dw Route8BattleText3 ; 0x528c TextBeforeBattle - dw Route8AfterBattleText3 ; 0x5296 TextAfterBattle - dw Route8EndBattleText3 ; 0x5291 TextEndBattle - dw Route8EndBattleText3 ; 0x5291 TextEndBattle - -Route8TrainerHeader3: ; 59207 (16:5207) - db $4 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7cd ; flag's byte - dw Route8BattleText4 ; 0x52a5 TextBeforeBattle - dw Route8AfterBattleText4 ; 0x52af TextAfterBattle - dw Route8EndBattleText4 ; 0x52aa TextEndBattle - dw Route8EndBattleText4 ; 0x52aa TextEndBattle - -Route8TrainerHeader4: ; 59213 (16:5213) - db $5 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7cd ; flag's byte - dw Route8BattleText5 ; 0x52be TextBeforeBattle - dw Route8AfterBattleText5 ; 0x52c8 TextAfterBattle - dw Route8EndBattleText5 ; 0x52c3 TextEndBattle - dw Route8EndBattleText5 ; 0x52c3 TextEndBattle - -Route8TrainerHeader5: ; 5921f (16:521f) - db $6 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7cd ; flag's byte - dw Route8BattleText6 ; 0x52d7 TextBeforeBattle - dw Route8AfterBattleText6 ; 0x52e1 TextAfterBattle - dw Route8EndBattleText6 ; 0x52dc TextEndBattle - dw Route8EndBattleText6 ; 0x52dc TextEndBattle - -Route8TrainerHeader6: ; 5922b (16:522b) - db $7 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7cd ; flag's byte - dw Route8BattleText7 ; 0x52f0 TextBeforeBattle - dw Route8AfterBattleText7 ; 0x52fa TextAfterBattle - dw Route8EndBattleText7 ; 0x52f5 TextEndBattle - dw Route8EndBattleText7 ; 0x52f5 TextEndBattle - -Route8TrainerHeader7: ; 59237 (16:5237) - db $8 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7cd ; flag's byte - dw Route8BattleText8 ; 0x5309 TextBeforeBattle - dw Route8AfterBattleText8 ; 0x5313 TextAfterBattle - dw Route8EndBattleText8 ; 0x530e TextEndBattle - dw Route8EndBattleText8 ; 0x530e TextEndBattle - -Route8TrainerHeader8: ; 59243 (16:5243) - db $9 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7cd ; flag's byte - dw Route8BattleText9 ; 0x5322 TextBeforeBattle - dw Route8AfterBattleText9 ; 0x532c TextAfterBattle - dw Route8EndBattleText9 ; 0x5327 TextEndBattle - dw Route8EndBattleText9 ; 0x5327 TextEndBattle - - db $ff - -Route8Text1: ; 59250 (16:5250) - db $8 - ld hl, Route8TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -Route8BattleText1: ; 5925a (16:525a) - TX_FAR _Route8BattleText1 - db "@" - -Route8EndBattleText1: ; 5925f (16:525f) - TX_FAR _Route8EndBattleText1 - db "@" - -Route8AfterBattleText1: ; 59264 (16:5264) - TX_FAR _Route8AfterBattleText1 - db "@" - -Route8Text2: ; 59269 (16:5269) - db $08 ; asm - ld hl, Route8TrainerHeader1 - call TalkToTrainer - jp TextScriptEnd - -Route8BattleText2: ; 59273 (16:5273) - TX_FAR _Route8BattleText2 - db "@" - -Route8EndBattleText2: ; 59278 (16:5278) - TX_FAR _Route8EndBattleText2 - db "@" - -Route8AfterBattleText2: ; 5927d (16:527d) - TX_FAR _Route8AfterBattleText2 - db "@" - -Route8Text3: ; 59282 (16:5282) - db $08 ; asm - ld hl, Route8TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -Route8BattleText3: ; 5928c (16:528c) - TX_FAR _Route8BattleText3 - db "@" - -Route8EndBattleText3: ; 59291 (16:5291) - TX_FAR _Route8EndBattleText3 - db "@" - -Route8AfterBattleText3: ; 59296 (16:5296) - TX_FAR _Route8AfterBattleText3 - db "@" - -Route8Text4: ; 5929b (16:529b) - db $08 ; asm - ld hl, Route8TrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -Route8BattleText4: ; 592a5 (16:52a5) - TX_FAR _Route8BattleText4 - db "@" - -Route8EndBattleText4: ; 592aa (16:52aa) - TX_FAR _Route8EndBattleText4 - db "@" - -Route8AfterBattleText4: ; 592af (16:52af) - TX_FAR _Route8AfterBattleText4 - db "@" - -Route8Text5: ; 592b4 (16:52b4) - db $08 ; asm - ld hl, Route8TrainerHeader4 - call TalkToTrainer - jp TextScriptEnd - -Route8BattleText5: ; 592be (16:52be) - TX_FAR _Route8BattleText5 - db "@" - -Route8EndBattleText5: ; 592c3 (16:52c3) - TX_FAR _Route8EndBattleText5 - db "@" - -Route8AfterBattleText5: ; 592c8 (16:52c8) - TX_FAR _Route8AfterBattleText5 - db "@" - -Route8Text6: ; 592cd (16:52cd) - db $08 ; asm - ld hl, Route8TrainerHeader5 - call TalkToTrainer - jp TextScriptEnd - -Route8BattleText6: ; 592d7 (16:52d7) - TX_FAR _Route8BattleText6 - db "@" - -Route8EndBattleText6: ; 592dc (16:52dc) - TX_FAR _Route8EndBattleText6 - db "@" - -Route8AfterBattleText6: ; 592e1 (16:52e1) - TX_FAR _Route8AfterBattleText6 - db "@" - -Route8Text7: ; 592e6 (16:52e6) - db $08 ; asm - ld hl, Route8TrainerHeader6 - call TalkToTrainer - jp TextScriptEnd - -Route8BattleText7: ; 592f0 (16:52f0) - TX_FAR _Route8BattleText7 - db "@" - -Route8EndBattleText7: ; 592f5 (16:52f5) - TX_FAR _Route8EndBattleText7 - db "@" - -Route8AfterBattleText7: ; 592fa (16:52fa) - TX_FAR _Route8AfterBattleText7 - db "@" - -Route8Text8: ; 592ff (16:52ff) - db $08 ; asm - ld hl, Route8TrainerHeader7 - call TalkToTrainer - jp TextScriptEnd - -Route8BattleText8: ; 59309 (16:5309) - TX_FAR _Route8BattleText8 - db "@" - -Route8EndBattleText8: ; 5930e (16:530e) - TX_FAR _Route8EndBattleText8 - db "@" - -Route8AfterBattleText8: ; 59313 (16:5313) - TX_FAR _Route8AfterBattleText8 - db "@" - -Route8Text9: ; 59318 (16:5318) - db $08 ; asm - ld hl, Route8TrainerHeader8 - call TalkToTrainer - jp TextScriptEnd - -Route8BattleText9: ; 59322 (16:5322) - TX_FAR _Route8BattleText9 - db "@" - -Route8EndBattleText9: ; 59327 (16:5327) - TX_FAR _Route8EndBattleText9 - db "@" - -Route8AfterBattleText9: ; 5932c (16:532c) - TX_FAR _Route8AfterBattleText9 - db "@" - -Route8Text10: ; 59331 (16:5331) - TX_FAR _Route8Text10 - db "@" - -Route10Script: ; 59336 (16:5336) - call EnableAutoTextBoxDrawing - ld hl, Route10TrainerHeaders - ld de, Route10ScriptPointers - ld a, [W_ROUTE10CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_ROUTE10CURSCRIPT], a - ret - -Route10ScriptPointers: ; 59349 (16:5349) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -Route10TextPointers: ; 5934f (16:534f) - dw Route10Text1 - dw Route10Text2 - dw Route10Text3 - dw Route10Text4 - dw Route10Text5 - dw Route10Text6 - dw Route10Text7 - dw PokeCenterSignText - dw Route10Text9 - dw Route10Text10 - -Route10TrainerHeaders: ; 59363 (16:5363) -Route10TrainerHeader0: ; 59363 (16:5363) - db $1 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7d1 ; flag's byte - dw Route10BattleText1 ; 0x53b6 TextBeforeBattle - dw Route10AfterBattleText1 ; 0x53c0 TextAfterBattle - dw Route10EndBattleText1 ; 0x53bb TextEndBattle - dw Route10EndBattleText1 ; 0x53bb TextEndBattle - -Route10TrainerHeader1: ; 5936f (16:536f) - db $2 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7d1 ; flag's byte - dw Route10BattleText2 ; 0x53cf TextBeforeBattle - dw Route10AfterBattleText2 ; 0x53d9 TextAfterBattle - dw Route10EndBattleText2 ; 0x53d4 TextEndBattle - dw Route10EndBattleText2 ; 0x53d4 TextEndBattle - -Route10TrainerHeader2: ; 5937b (16:537b) - db $3 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7d1 ; flag's byte - dw Route10BattleText3 ; 0x53e8 TextBeforeBattle - dw Route10AfterBattleText3 ; 0x53f2 TextAfterBattle - dw Route10EndBattleText3 ; 0x53ed TextEndBattle - dw Route10EndBattleText3 ; 0x53ed TextEndBattle - -Route10TrainerHeader3: ; 59387 (16:5387) - db $4 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7d1 ; flag's byte - dw Route10BattleText4 ; 0x5401 TextBeforeBattle - dw Route10AfterBattleText4 ; 0x540b TextAfterBattle - dw Route10EndBattleText4 ; 0x5406 TextEndBattle - dw Route10EndBattleText4 ; 0x5406 TextEndBattle - -Route10TrainerHeader4: ; 59393 (16:5393) - db $5 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7d1 ; flag's byte - dw Route10BattleText5 ; 0x541a TextBeforeBattle - dw Route10AfterBattleText5 ; 0x5424 TextAfterBattle - dw Route10EndBattleText5 ; 0x541f TextEndBattle - dw Route10EndBattleText5 ; 0x541f TextEndBattle - -Route10TrainerHeader5: ; 5939f (16:539f) - db $6 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7d1 ; flag's byte - dw Route10BattleText6 ; 0x5433 TextBeforeBattle - dw Route10AfterBattleText6 ; 0x543d TextAfterBattle - dw Route10EndBattleText6 ; 0x5438 TextEndBattle - dw Route10EndBattleText6 ; 0x5438 TextEndBattle - - db $ff - -Route10Text1: ; 593ac (16:53ac) - db $08 ; asm - ld hl, Route10TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -Route10BattleText1: ; 593b6 (16:53b6) - TX_FAR _Route10BattleText1 - db "@" - -Route10EndBattleText1: ; 593bb (16:53bb) - TX_FAR _Route10EndBattleText1 - db "@" - -Route10AfterBattleText1: ; 593c0 (16:53c0) - TX_FAR _Route10AfterBattleText1 - db "@" - -Route10Text2: ; 593c5 (16:53c5) - db $08 ; asm - ld hl, Route10TrainerHeader1 - call TalkToTrainer - jp TextScriptEnd - -Route10BattleText2: ; 593cf (16:53cf) - TX_FAR _Route10BattleText2 - db "@" - -Route10EndBattleText2: ; 593d4 (16:53d4) - TX_FAR _Route10EndBattleText2 - db "@" - -Route10AfterBattleText2: ; 593d9 (16:53d9) - TX_FAR _Route10AfterBattleText2 - db "@" - -Route10Text3: ; 593de (16:53de) - db $08 ; asm - ld hl, Route10TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -Route10BattleText3: ; 593e8 (16:53e8) - TX_FAR _Route10BattleText3 - db "@" - -Route10EndBattleText3: ; 593ed (16:53ed) - TX_FAR _Route10EndBattleText3 - db "@" - -Route10AfterBattleText3: ; 593f2 (16:53f2) - TX_FAR _Route10AfterBattleText3 - db "@" - -Route10Text4: ; 593f7 (16:53f7) - db $08 ; asm - ld hl, Route10TrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -Route10BattleText4: ; 59401 (16:5401) - TX_FAR _Route10BattleText4 - db "@" - -Route10EndBattleText4: ; 59406 (16:5406) - TX_FAR _Route10EndBattleText4 - db "@" - -Route10AfterBattleText4: ; 5940b (16:540b) - TX_FAR _Route10AfterBattleText4 - db "@" - -Route10Text5: ; 59410 (16:5410) - db $08 ; asm - ld hl, Route10TrainerHeader4 - call TalkToTrainer - jp TextScriptEnd - -Route10BattleText5: ; 5941a (16:541a) - TX_FAR _Route10BattleText5 - db "@" - -Route10EndBattleText5: ; 5941f (16:541f) - TX_FAR _Route10EndBattleText5 - db "@" - -Route10AfterBattleText5: ; 59424 (16:5424) - TX_FAR _Route10AfterBattleText5 - db "@" - -Route10Text6: ; 59429 (16:5429) - db $08 ; asm - ld hl, Route10TrainerHeader5 - call TalkToTrainer - jp TextScriptEnd - -Route10BattleText6: ; 59433 (16:5433) - TX_FAR _Route10BattleText6 - db "@" - -Route10EndBattleText6: ; 59438 (16:5438) - TX_FAR _Route10EndBattleText6 - db "@" - -Route10AfterBattleText6: ; 5943d (16:543d) - TX_FAR _Route10AfterBattleText6 - db "@" - -Route10Text9: ; 59442 (16:5442) -Route10Text7: ; 59442 (16:5442) - TX_FAR _Route10Text7 ; _Route10Text9 - db "@" - -Route10Text10: ; 59447 (16:5447) - TX_FAR _Route10Text10 - db "@" - -Route11Script: ; 5944c (16:544c) - call EnableAutoTextBoxDrawing - ld hl, Route11TrainerHeaders - ld de, Route11ScriptPointers - ld a, [W_ROUTE11CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_ROUTE11CURSCRIPT], a - ret - -Route11ScriptPointers: ; 5945f (16:545f) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -Route11TextPointers: ; 59465 (16:5465) - dw Route11Text1 - dw Route11Text2 - dw Route11Text3 - dw Route11Text4 - dw Route11Text5 - dw Route11Text6 - dw Route11Text7 - dw Route11Text8 - dw Route11Text9 - dw Route11Text10 - dw Route11Text11 - -Route11TrainerHeaders: ; 5947b (16:547b) -Route11TrainerHeader0: ; 5947b (16:547b) - db $1 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7d5 ; flag's byte - dw Route11BattleText1 ; 0x54fe TextBeforeBattle - dw Route11AfterBattleText1 ; 0x5508 TextAfterBattle - dw Route11EndBattleText1 ; 0x5503 TextEndBattle - dw Route11EndBattleText1 ; 0x5503 TextEndBattle - -Route11TrainerHeader1: ; 59487 (16:5487) - db $2 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7d5 ; flag's byte - dw Route11BattleText2 ; 0x5517 TextBeforeBattle - dw Route11AfterBattleText2 ; 0x5521 TextAfterBattle - dw Route11EndBattleText2 ; 0x551c TextEndBattle - dw Route11EndBattleText2 ; 0x551c TextEndBattle - -Route11TrainerHeader2: ; 59493 (16:5493) - db $3 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7d5 ; flag's byte - dw Route11BattleText3 ; 0x5530 TextBeforeBattle - dw Route11AfterBattleText3 ; 0x553a TextAfterBattle - dw Route11EndBattleText3 ; 0x5535 TextEndBattle - dw Route11EndBattleText3 ; 0x5535 TextEndBattle - -Route11TrainerHeader3: ; 5949f (16:549f) - db $4 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7d5 ; flag's byte - dw Route11BattleText4 ; 0x5549 TextBeforeBattle - dw Route11AfterBattleText4 ; 0x5553 TextAfterBattle - dw Route11EndBattleText4 ; 0x554e TextEndBattle - dw Route11EndBattleText4 ; 0x554e TextEndBattle - -Route11TrainerHeader4: ; 594ab (16:54ab) - db $5 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7d5 ; flag's byte - dw Route11BattleText5 ; 0x5562 TextBeforeBattle - dw Route11AfterBattleText5 ; 0x556c TextAfterBattle - dw Route11EndBattleText5 ; 0x5567 TextEndBattle - dw Route11EndBattleText5 ; 0x5567 TextEndBattle - -Route11TrainerHeader5: ; 594b7 (16:54b7) - db $6 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7d5 ; flag's byte - dw Route11BattleText6 ; 0x557b TextBeforeBattle - dw Route11AfterBattleText6 ; 0x5585 TextAfterBattle - dw Route11EndBattleText6 ; 0x5580 TextEndBattle - dw Route11EndBattleText6 ; 0x5580 TextEndBattle - -Route11TrainerHeader6: ; 594c3 (16:54c3) - db $7 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7d5 ; flag's byte - dw Route11BattleText7 ; 0x5594 TextBeforeBattle - dw Route11AfterBattleText7 ; 0x559e TextAfterBattle - dw Route11EndBattleText7 ; 0x5599 TextEndBattle - dw Route11EndBattleText7 ; 0x5599 TextEndBattle - -Route11TrainerHeader7: ; 594cf (16:54cf) - db $8 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7d5 ; flag's byte - dw Route11BattleText8 ; 0x55ad TextBeforeBattle - dw Route11AfterBattleText8 ; 0x55b7 TextAfterBattle - dw Route11EndBattleText8 ; 0x55b2 TextEndBattle - dw Route11EndBattleText8 ; 0x55b2 TextEndBattle - -Route11TrainerHeader8: ; 594db (16:54db) - db $9 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7d5 ; flag's byte - dw Route11BattleText9 ; 0x55c6 TextBeforeBattle - dw Route11AfterBattleText9 ; 0x55d0 TextAfterBattle - dw Route11EndBattleText9 ; 0x55cb TextEndBattle - dw Route11EndBattleText9 ; 0x55cb TextEndBattle - -Route11TrainerHeader9: ; 594e7 (16:54e7) - db $a ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7d5 ; flag's byte - dw Route11BattleText10 ; 0x55df TextBeforeBattle - dw Route11AfterBattleText10 ; 0x55e9 TextAfterBattle - dw Route11EndBattleText10 ; 0x55e4 TextEndBattle - dw Route11EndBattleText10 ; 0x55e4 TextEndBattle - - db $ff - -Route11Text1: ; 594f4 (16:54f4) - db $8 - ld hl, Route11TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -Route11BattleText1: ; 594fe (16:54fe) - TX_FAR _Route11BattleText1 - db "@" - -Route11EndBattleText1: ; 59503 (16:5503) - TX_FAR _Route11EndBattleText1 - db "@" - -Route11AfterBattleText1: ; 59508 (16:5508) - TX_FAR _Route11AfterBattleText1 - db "@" - -Route11Text2: ; 5950d (16:550d) - db $08 ; asm - ld hl, Route11TrainerHeader1 - call TalkToTrainer - jp TextScriptEnd - -Route11BattleText2: ; 59517 (16:5517) - TX_FAR _Route11BattleText2 - db "@" - -Route11EndBattleText2: ; 5951c (16:551c) - TX_FAR _Route11EndBattleText2 - db "@" - -Route11AfterBattleText2: ; 59521 (16:5521) - TX_FAR _Route11AfterBattleText2 - db "@" - -Route11Text3: ; 59526 (16:5526) - db $08 ; asm - ld hl, Route11TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -Route11BattleText3: ; 59530 (16:5530) - TX_FAR _Route11BattleText3 - db "@" - -Route11EndBattleText3: ; 59535 (16:5535) - TX_FAR _Route11EndBattleText3 - db "@" - -Route11AfterBattleText3: ; 5953a (16:553a) - TX_FAR _Route11AfterBattleText3 - db "@" - -Route11Text4: ; 5953f (16:553f) - db $08 ; asm - ld hl, Route11TrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -Route11BattleText4: ; 59549 (16:5549) - TX_FAR _Route11BattleText4 - db "@" - -Route11EndBattleText4: ; 5954e (16:554e) - TX_FAR _Route11EndBattleText4 - db "@" - -Route11AfterBattleText4: ; 59553 (16:5553) - TX_FAR _Route11AfterBattleText4 - db "@" - -Route11Text5: ; 59558 (16:5558) - db $08 ; asm - ld hl, Route11TrainerHeader4 - call TalkToTrainer - jp TextScriptEnd - -Route11BattleText5: ; 59562 (16:5562) - TX_FAR _Route11BattleText5 - db "@" - -Route11EndBattleText5: ; 59567 (16:5567) - TX_FAR _Route11EndBattleText5 - db "@" - -Route11AfterBattleText5: ; 5956c (16:556c) - TX_FAR _Route11AfterBattleText5 - db "@" - -Route11Text6: ; 59571 (16:5571) - db $08 ; asm - ld hl, Route11TrainerHeader5 - call TalkToTrainer - jp TextScriptEnd - -Route11BattleText6: ; 5957b (16:557b) - TX_FAR _Route11BattleText6 - db "@" - -Route11EndBattleText6: ; 59580 (16:5580) - TX_FAR _Route11EndBattleText6 - db "@" - -Route11AfterBattleText6: ; 59585 (16:5585) - TX_FAR _Route11AfterBattleText6 - db "@" - -Route11Text7: ; 5958a (16:558a) - db $08 ; asm - ld hl, Route11TrainerHeader6 - call TalkToTrainer - jp TextScriptEnd - -Route11BattleText7: ; 59594 (16:5594) - TX_FAR _Route11BattleText7 - db "@" - -Route11EndBattleText7: ; 59599 (16:5599) - TX_FAR _Route11EndBattleText7 - db "@" - -Route11AfterBattleText7: ; 5959e (16:559e) - TX_FAR _Route11AfterBattleText7 - db "@" - -Route11Text8: ; 595a3 (16:55a3) - db $08 ; asm - ld hl, Route11TrainerHeader7 - call TalkToTrainer - jp TextScriptEnd - -Route11BattleText8: ; 595ad (16:55ad) - TX_FAR _Route11BattleText8 - db "@" - -Route11EndBattleText8: ; 595b2 (16:55b2) - TX_FAR _Route11EndBattleText8 - db "@" - -Route11AfterBattleText8: ; 595b7 (16:55b7) - TX_FAR _Route11AfterBattleText8 - db "@" - -Route11Text9: ; 595bc (16:55bc) - db $08 ; asm - ld hl, Route11TrainerHeader8 - call TalkToTrainer - jp TextScriptEnd - -Route11BattleText9: ; 595c6 (16:55c6) - TX_FAR _Route11BattleText9 - db "@" - -Route11EndBattleText9: ; 595cb (16:55cb) - TX_FAR _Route11EndBattleText9 - db "@" - -Route11AfterBattleText9: ; 595d0 (16:55d0) - TX_FAR _Route11AfterBattleText9 - db "@" - -Route11Text10: ; 595d5 (16:55d5) - db $08 ; asm - ld hl, Route11TrainerHeader9 - call TalkToTrainer - jp TextScriptEnd - -Route11BattleText10: ; 595df (16:55df) - TX_FAR _Route11BattleText10 - db "@" - -Route11EndBattleText10: ; 595e4 (16:55e4) - TX_FAR _Route11EndBattleText10 - db "@" - -Route11AfterBattleText10: ; 595e9 (16:55e9) - TX_FAR _Route11AfterBattleText10 - db "@" - -Route11Text11: ; 595ee (16:55ee) - TX_FAR _Route11Text11 - db "@" - -Route12Script: ; 595f3 (16:55f3) - call EnableAutoTextBoxDrawing - ld hl, Route12TrainerHeaders - ld de, Route12ScriptPointers - ld a, [W_ROUTE12CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_ROUTE12CURSCRIPT], a - ret - -Route12Script_59606: ; 59606 (16:5606) - xor a - ld [wJoypadForbiddenButtonsMask], a - ld [W_ROUTE12CURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -Route12ScriptPointers: ; 59611 (16:5611) - dw Route12Script0 - dw Func_324c - dw EndTrainerBattle - dw Route12Script3 - -Route12Script0: ; 59619 (16:5619) - ld hl, $d7d8 - bit 7, [hl] - jp nz, CheckFightingMapTrainers - bit 6, [hl] - res 6, [hl] - jp z, CheckFightingMapTrainers - ld a, $d - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - ld a, SNORLAX - ld [W_CUROPPONENT], a ; $d059 - ld a, 30 - ld [W_CURENEMYLVL], a ; $d127 - ld a, $1d - ld [$cc4d], a - ld a, $11 - call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7)) - ld a, $3 - ld [W_ROUTE12CURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -Route12Script3: ; 5964c (16:564c) - ld a, [W_ISINBATTLE] ; $d057 - cp $ff - jr z, Route12Script_59606 - call UpdateSprites - ld a, [$cf0b] - cp $2 - jr z, .asm_59664 - ld a, $e - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID -.asm_59664 - ld hl, $d7d8 - set 7, [hl] - call Delay3 - ld a, $0 - ld [W_ROUTE12CURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -Route12TextPointers: ; 59675 (16:5675) - dw Route12Text1 - dw Route12Text2 - dw Route12Text3 - dw Route12Text4 - dw Route12Text5 - dw Route12Text6 - dw Route12Text7 - dw Route12Text8 - dw Predef5CText - dw Predef5CText - dw Route12Text11 - dw Route12Text12 - dw Route12Text13 - dw Route12Text14 - -Route12TrainerHeaders: ; 59691 (16:5691) -Route12TrainerHeader0: ; 59691 (16:5691) - db $2 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7d7 ; flag's byte - dw Route12BattleText1 ; 0x56ff TextBeforeBattle - dw Route12AfterBattleText1 ; 0x5709 TextAfterBattle - dw Route12EndBattleText1 ; 0x5704 TextEndBattle - dw Route12EndBattleText1 ; 0x5704 TextEndBattle - -Route12TrainerHeader1: ; 5969d (16:569d) - db $3 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7d7 ; flag's byte - dw Route12BattleText2 ; 0x5718 TextBeforeBattle - dw Route12AfterBattleText2 ; 0x5722 TextAfterBattle - dw Route12EndBattleText2 ; 0x571d TextEndBattle - dw Route12EndBattleText2 ; 0x571d TextEndBattle - -Route12TrainerHeader2: ; 596a9 (16:56a9) - db $4 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7d7 ; flag's byte - dw Route12BattleText3 ; 0x5731 TextBeforeBattle - dw Route12AfterBattleText3 ; 0x573b TextAfterBattle - dw Route12EndBattleText3 ; 0x5736 TextEndBattle - dw Route12EndBattleText3 ; 0x5736 TextEndBattle - -Route12TrainerHeader3: ; 596b5 (16:56b5) - db $5 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7d7 ; flag's byte - dw Route12BattleText4 ; 0x574a TextBeforeBattle - dw Route12AfterBattleText4 ; 0x5754 TextAfterBattle - dw Route12EndBattleText4 ; 0x574f TextEndBattle - dw Route12EndBattleText4 ; 0x574f TextEndBattle - -Route12TrainerHeader4: ; 596c1 (16:56c1) - db $6 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7d7 ; flag's byte - dw Route12BattleText5 ; 0x5763 TextBeforeBattle - dw Route12AfterBattleText5 ; 0x576d TextAfterBattle - dw Route12EndBattleText5 ; 0x5768 TextEndBattle - dw Route12EndBattleText5 ; 0x5768 TextEndBattle - -Route12TrainerHeader5: ; 596cd (16:56cd) - db $7 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7d7 ; flag's byte - dw Route12BattleText6 ; 0x577c TextBeforeBattle - dw Route12AfterBattleText6 ; 0x5786 TextAfterBattle - dw Route12EndBattleText6 ; 0x5781 TextEndBattle - dw Route12EndBattleText6 ; 0x5781 TextEndBattle - -Route12TrainerHeader6: ; 596d9 (16:56d9) - db $8 ; flag's bit - db ($1 << 4) ; trainer's view range - dw $d7d7 ; flag's byte - dw Route12BattleText7 ; 0x5795 TextBeforeBattle - dw Route12AfterBattleText7 ; 0x579f TextAfterBattle - dw Route12EndBattleText7 ; 0x579a TextEndBattle - dw Route12EndBattleText7 ; 0x579a TextEndBattle - - db $ff - -Route12Text1: ; 596e6 (16:56e6) - TX_FAR _Route12Text1 - db "@" - -Route12Text13: ; 596eb (16:56eb) -UnnamedText_596eb: ; 596eb (16:56eb) - TX_FAR _UnnamedText_596eb - db "@" - -Route12Text14: ; 596f0 (16:56f0) -UnnamedText_596f0: ; 596f0 (16:56f0) - TX_FAR _UnnamedText_596f0 - db "@" - -Route12Text2: ; 596f5 (16:56f5) - db $08 ; asm - ld hl, Route12TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -Route12BattleText1: ; 596ff (16:56ff) - TX_FAR _Route12BattleText1 - db "@" - -Route12EndBattleText1: ; 59704 (16:5704) - TX_FAR _Route12EndBattleText1 - db "@" - -Route12AfterBattleText1: ; 59709 (16:5709) - TX_FAR _Route12AfterBattleText1 - db "@" - -Route12Text3: ; 5970e (16:570e) - db $08 ; asm - ld hl, Route12TrainerHeader1 - call TalkToTrainer - jp TextScriptEnd - -Route12BattleText2: ; 59718 (16:5718) - TX_FAR _Route12BattleText2 - db "@" - -Route12EndBattleText2: ; 5971d (16:571d) - TX_FAR _Route12EndBattleText2 - db "@" - -Route12AfterBattleText2: ; 59722 (16:5722) - TX_FAR _Route12AfterBattleText2 - db "@" - -Route12Text4: ; 59727 (16:5727) - db $08 ; asm - ld hl, Route12TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -Route12BattleText3: ; 59731 (16:5731) - TX_FAR _Route12BattleText3 - db "@" - -Route12EndBattleText3: ; 59736 (16:5736) - TX_FAR _Route12EndBattleText3 - db "@" - -Route12AfterBattleText3: ; 5973b (16:573b) - TX_FAR _Route12AfterBattleText3 - db "@" - -Route12Text5: ; 59740 (16:5740) - db $08 ; asm - ld hl, Route12TrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -Route12BattleText4: ; 5974a (16:574a) - TX_FAR _Route12BattleText4 - db "@" - -Route12EndBattleText4: ; 5974f (16:574f) - TX_FAR _Route12EndBattleText4 - db "@" - -Route12AfterBattleText4: ; 59754 (16:5754) - TX_FAR _Route12AfterBattleText4 - db "@" - -Route12Text6: ; 59759 (16:5759) - db $08 ; asm - ld hl, Route12TrainerHeader4 - call TalkToTrainer - jp TextScriptEnd - -Route12BattleText5: ; 59763 (16:5763) - TX_FAR _Route12BattleText5 - db "@" - -Route12EndBattleText5: ; 59768 (16:5768) - TX_FAR _Route12EndBattleText5 +OaksAideNoRoomText: ; 590ab (16:50ab) + TX_FAR _OaksAideNoRoomText db "@" -Route12AfterBattleText5: ; 5976d (16:576d) - TX_FAR _Route12AfterBattleText5 - db "@" - -Route12Text7: ; 59772 (16:5772) - db $08 ; asm - ld hl, Route12TrainerHeader5 - call TalkToTrainer - jp TextScriptEnd +INCLUDE "scripts/route6.asm" -Route12BattleText6: ; 5977c (16:577c) - TX_FAR _Route12BattleText6 - db "@" - -Route12EndBattleText6: ; 59781 (16:5781) - TX_FAR _Route12EndBattleText6 - db "@" +INCLUDE "scripts/route8.asm" -Route12AfterBattleText6: ; 59786 (16:5786) - TX_FAR _Route12AfterBattleText6 - db "@" +INCLUDE "scripts/route10.asm" -Route12Text8: ; 5978b (16:578b) - db $08 ; asm - ld hl, Route12TrainerHeader6 - call TalkToTrainer - jp TextScriptEnd +INCLUDE "scripts/route11.asm" -Route12BattleText7: ; 59795 (16:5795) - TX_FAR _Route12BattleText7 - db "@" +INCLUDE "scripts/route12.asm" -Route12EndBattleText7: ; 5979a (16:579a) - TX_FAR _Route12EndBattleText7 - db "@" +INCLUDE "scripts/route15.asm" -Route12AfterBattleText7: ; 5979f (16:579f) - TX_FAR _Route12AfterBattleText7 - db "@" +INCLUDE "scripts/route16.asm" -Route12Text11: ; 597a4 (16:57a4) - TX_FAR _Route12Text11 - db "@" +INCLUDE "scripts/route18.asm" -Route12Text12: ; 597a9 (16:57a9) - TX_FAR _Route12Text12 - db "@" +INCLUDE "data/mapHeaders/fanclub.asm" -Route15Script: ; 597ae (16:57ae) - call EnableAutoTextBoxDrawing - ld hl, Route15TrainerHeaders - ld de, Route15ScriptPointers - ld a, [W_ROUTE15CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_ROUTE15CURSCRIPT], a - ret - -Route15ScriptPointers: ; 597c1 (16:57c1) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -Route15TextPointers: ; 597c7 (16:57c7) - dw Route15Text1 - dw Route15Text2 - dw Route15Text3 - dw Route15Text4 - dw Route15Text5 - dw Route15Text6 - dw Route15Text7 - dw Route15Text8 - dw Route15Text9 - dw Route15Text10 - dw Predef5CText - dw Route15Text12 - -Route15TrainerHeaders: ; 597df (16:57df) -Route15TrainerHeader0: ; 597df (16:57df) - db $1 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7dd ; flag's byte - dw Route15BattleText1 ; 0x5898 TextBeforeBattle - dw Route15AfterBattleText1 ; 0x58a2 TextAfterBattle - dw Route15EndBattleText1 ; 0x589d TextEndBattle - dw Route15EndBattleText1 ; 0x589d TextEndBattle - -Route15TrainerHeader1: ; 597eb (16:57eb) - db $2 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7dd ; flag's byte - dw Route15BattleText2 ; 0x58a7 TextBeforeBattle - dw Route15AfterBattleText2 ; 0x58b1 TextAfterBattle - dw Route15EndBattleText2 ; 0x58ac TextEndBattle - dw Route15EndBattleText2 ; 0x58ac TextEndBattle - -Route15TrainerHeader2: ; 597f7 (16:57f7) - db $3 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7dd ; flag's byte - dw Route15BattleText3 ; 0x58b6 TextBeforeBattle - dw Route15AfterBattleText3 ; 0x58c0 TextAfterBattle - dw Route15EndBattleText3 ; 0x58bb TextEndBattle - dw Route15EndBattleText3 ; 0x58bb TextEndBattle - -Route15TrainerHeader3: ; 59803 (16:5803) - db $4 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7dd ; flag's byte - dw Route15BattleText4 ; 0x58c5 TextBeforeBattle - dw Route15AfterBattleText4 ; 0x58cf TextAfterBattle - dw Route15EndBattleText4 ; 0x58ca TextEndBattle - dw Route15EndBattleText4 ; 0x58ca TextEndBattle - -Route15TrainerHeader4: ; 5980f (16:580f) - db $5 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7dd ; flag's byte - dw Route15BattleText5 ; 0x58d4 TextBeforeBattle - dw Route15AfterBattleText5 ; 0x58de TextAfterBattle - dw Route15EndBattleText5 ; 0x58d9 TextEndBattle - dw Route15EndBattleText5 ; 0x58d9 TextEndBattle - -Route15TrainerHeader5: ; 5981b (16:581b) - db $6 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7dd ; flag's byte - dw Route15BattleText6 ; 0x58e3 TextBeforeBattle - dw Route15AfterBattleText6 ; 0x58ed TextAfterBattle - dw Route15EndBattleText6 ; 0x58e8 TextEndBattle - dw Route15EndBattleText6 ; 0x58e8 TextEndBattle - -Route15TrainerHeader6: ; 59827 (16:5827) - db $7 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7dd ; flag's byte - dw Route15BattleText7 ; 0x58f2 TextBeforeBattle - dw Route15AfterBattleText7 ; 0x58fc TextAfterBattle - dw Route15EndBattleText7 ; 0x58f7 TextEndBattle - dw Route15EndBattleText7 ; 0x58f7 TextEndBattle - -Route15TrainerHeader7: ; 59833 (16:5833) - db $8 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7dd ; flag's byte - dw Route15BattleText8 ; 0x5901 TextBeforeBattle - dw Route15AfterBattleText8 ; 0x590b TextAfterBattle - dw Route15EndBattleText8 ; 0x5906 TextEndBattle - dw Route15EndBattleText8 ; 0x5906 TextEndBattle - -Route15TrainerHeader8: ; 5983f (16:583f) - db $9 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7dd ; flag's byte - dw Route15BattleText9 ; 0x5910 TextBeforeBattle - dw Route15AfterBattleText9 ; 0x591a TextAfterBattle - dw Route15EndBattleText9 ; 0x5915 TextEndBattle - dw Route15EndBattleText9 ; 0x5915 TextEndBattle - -Route15TrainerHeader9: ; 5984b (16:584b) - db $a ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7dd ; flag's byte - dw Route15BattleText10 ; 0x591f TextBeforeBattle - dw Route15AfterBattleText10 ; 0x5929 TextAfterBattle - dw Route15EndBattleText10 ; 0x5924 TextEndBattle - dw Route15EndBattleText10 ; 0x5924 TextEndBattle +INCLUDE "scripts/fanclub.asm" - db $ff - -Route15Text1: ; 59858 (16:5858) - db $8 ; asm - ld hl, Route15TrainerHeader0 - jr asm_33cb7 ; 0x5985c $34 - -Route15Text2: ; 5985e (16:585e) - db $8 ; asm - ld hl, Route15TrainerHeader1 - jr asm_33cb7 ; 0x59862 $2e - -Route15Text3: ; 59864 (16:5864) - db $8 ; asm - ld hl, Route15TrainerHeader2 - jr asm_33cb7 ; 0x59868 $28 - -Route15Text4: ; 5986a (16:586a) - db $8 ; asm - ld hl, Route15TrainerHeader3 - jr asm_33cb7 ; 0x5986e $22 - -Route15Text5: ; 59870 (16:5870) - db $8 ; asm - ld hl, Route15TrainerHeader4 - jr asm_33cb7 ; 0x59874 $1c - -Route15Text6: ; 59876 (16:5876) - db $8 ; asm - ld hl, Route15TrainerHeader5 - jr asm_33cb7 ; 0x5987a $16 - -Route15Text7: ; 5987c (16:587c) - db $8 ; asm - ld hl, Route15TrainerHeader6 - jr asm_33cb7 ; 0x59880 $10 - -Route15Text8: ; 59882 (16:5882) - db $8 ; asm - ld hl, Route15TrainerHeader7 - jr asm_33cb7 ; 0x59886 $a - -Route15Text9: ; 59888 (16:5888) - db $8 ; asm - ld hl, Route15TrainerHeader8 - jr asm_33cb7 ; 0x5988c $4 - -Route15Text10: ; 5988e (16:588e) - db $8 ; asm - ld hl, Route15TrainerHeader9 -asm_33cb7: ; 59892 (16:5892) - call TalkToTrainer - jp TextScriptEnd - -Route15BattleText1: ; 59898 (16:5898) - TX_FAR _Route15BattleText1 - db "@" - -Route15EndBattleText1: ; 5989d (16:589d) - TX_FAR _Route15EndBattleText1 - db "@" - -Route15AfterBattleText1: ; 598a2 (16:58a2) - TX_FAR _Route15AfterBattleText1 - db "@" - -Route15BattleText2: ; 598a7 (16:58a7) - TX_FAR _Route15BattleText2 - db "@" - -Route15EndBattleText2: ; 598ac (16:58ac) - TX_FAR _Route15EndBattleText2 - db "@" - -Route15AfterBattleText2: ; 598b1 (16:58b1) - TX_FAR _Route15AfterBattleText2 - db "@" - -Route15BattleText3: ; 598b6 (16:58b6) - TX_FAR _Route15BattleText3 - db "@" - -Route15EndBattleText3: ; 598bb (16:58bb) - TX_FAR _Route15EndBattleText3 - db "@" - -Route15AfterBattleText3: ; 598c0 (16:58c0) - TX_FAR _Route15AfterBattleText3 - db "@" - -Route15BattleText4: ; 598c5 (16:58c5) - TX_FAR _Route15BattleText4 - db "@" - -Route15EndBattleText4: ; 598ca (16:58ca) - TX_FAR _Route15EndBattleText4 - db "@" - -Route15AfterBattleText4: ; 598cf (16:58cf) - TX_FAR _Route15AfterBattleText4 - db "@" - -Route15BattleText5: ; 598d4 (16:58d4) - TX_FAR _Route15BattleText5 - db "@" - -Route15EndBattleText5: ; 598d9 (16:58d9) - TX_FAR _Route15EndBattleText5 - db "@" - -Route15AfterBattleText5: ; 598de (16:58de) - TX_FAR _Route15AfterBattleText5 - db "@" - -Route15BattleText6: ; 598e3 (16:58e3) - TX_FAR _Route15BattleText6 - db "@" - -Route15EndBattleText6: ; 598e8 (16:58e8) - TX_FAR _Route15EndBattleText6 - db "@" - -Route15AfterBattleText6: ; 598ed (16:58ed) - TX_FAR _Route15AfterBattleText6 - db "@" - -Route15BattleText7: ; 598f2 (16:58f2) - TX_FAR _Route15BattleText7 - db "@" - -Route15EndBattleText7: ; 598f7 (16:58f7) - TX_FAR _Route15EndBattleText7 - db "@" - -Route15AfterBattleText7: ; 598fc (16:58fc) - TX_FAR _Route15AfterBattleText7 - db "@" - -Route15BattleText8: ; 59901 (16:5901) - TX_FAR _Route15BattleText8 - db "@" - -Route15EndBattleText8: ; 59906 (16:5906) - TX_FAR _Route15EndBattleText8 - db "@" - -Route15AfterBattleText8: ; 5990b (16:590b) - TX_FAR _Route15AfterBattleText8 - db "@" - -Route15BattleText9: ; 59910 (16:5910) - TX_FAR _Route15BattleText9 - db "@" - -Route15EndBattleText9: ; 59915 (16:5915) - TX_FAR _Route15EndBattleText9 - db "@" - -Route15AfterBattleText9: ; 5991a (16:591a) - TX_FAR _Route15AfterBattleText9 - db "@" - -Route15BattleText10: ; 5991f (16:591f) - TX_FAR _Route15BattleText10 - db "@" - -Route15EndBattleText10: ; 59924 (16:5924) - TX_FAR _Route15EndBattleText10 - db "@" - -Route15AfterBattleText10: ; 59929 (16:5929) - TX_FAR _Route15AfterBattleText10 - db "@" - -Route15Text12: ; 5992e (16:592e) - TX_FAR _Route15Text12 - db "@" - -Route16Script: ; 59933 (16:5933) - call EnableAutoTextBoxDrawing - ld hl, Route16TrainerHeaders - ld de, Route16ScriptPointers - ld a, [W_ROUTE16CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_ROUTE16CURSCRIPT], a - ret - -Func_59946: ; 59946 (16:5946) - xor a - ld [wJoypadForbiddenButtonsMask], a - ld [W_ROUTE16CURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -Route16ScriptPointers: ; 59951 (16:5951) - dw Route16Script0 - dw Func_324c - dw EndTrainerBattle - dw Route16Script3 - -Route16Script0: ; 59959 (16:5959) - ld hl, $d7e0 - bit 1, [hl] - jp nz, CheckFightingMapTrainers - bit 0, [hl] - res 0, [hl] - jp z, CheckFightingMapTrainers - ld a, $a - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - ld a, $84 - ld [W_CUROPPONENT], a ; $d059 - ld a, $1e - ld [W_CURENEMYLVL], a ; $d127 - ld a, $21 - ld [$cc4d], a - ld a, $11 - call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7)) - call UpdateSprites - ld a, $3 - ld [W_ROUTE16CURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -Route16Script3: ; 5998f (16:598f) - ld a, [W_ISINBATTLE] ; $d057 - cp $ff - jp z, Func_59946 - call UpdateSprites - ld a, [$cf0b] - cp $2 - jr z, .asm_599a8 - ld a, $b - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID -.asm_599a8 - ld hl, $d7e0 - set 1, [hl] - call Delay3 - ld a, $0 - ld [W_ROUTE16CURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -Route16TextPointers: ; 599b9 (16:59b9) - dw Route16Text1 - dw Route16Text2 - dw Route16Text3 - dw Route16Text4 - dw Route16Text5 - dw Route16Text6 - dw Route16Text7 - dw Route16Text8 - dw Route16Text9 - dw Route16Text10 - dw Route16Text11 - -Route16TrainerHeaders: ; 599cf (16:59cf) -Route16TrainerHeader0: ; 599cf (16:59cf) - db $1 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7df ; flag's byte - dw Route16BattleText1 ; 0x5a22 TextBeforeBattle - dw Route16AfterBattleText1 ; 0x5a2c TextAfterBattle - dw Route16EndBattleText1 ; 0x5a27 TextEndBattle - dw Route16EndBattleText1 ; 0x5a27 TextEndBattle - -Route16TrainerHeader1: ; 599db (16:59db) - db $2 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7df ; flag's byte - dw Route16BattleText2 ; 0x5a3b TextBeforeBattle - dw Route16AfterBattleText2 ; 0x5a45 TextAfterBattle - dw Route16EndBattleText2 ; 0x5a40 TextEndBattle - dw Route16EndBattleText2 ; 0x5a40 TextEndBattle - -Route16TrainerHeader2: ; 599e7 (16:59e7) - db $3 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7df ; flag's byte - dw Route16BattleText3 ; 0x5a54 TextBeforeBattle - dw Route16AfterBattleText3 ; 0x5a5e TextAfterBattle - dw Route16EndBattleText3 ; 0x5a59 TextEndBattle - dw Route16EndBattleText3 ; 0x5a59 TextEndBattle - -Route16TrainerHeader3: ; 599f3 (16:59f3) - db $4 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7df ; flag's byte - dw Route16BattleText4 ; 0x5a6d TextBeforeBattle - dw Route16AfterBattleText4 ; 0x5a77 TextAfterBattle - dw Route16EndBattleText4 ; 0x5a72 TextEndBattle - dw Route16EndBattleText4 ; 0x5a72 TextEndBattle - -Route16TrainerHeader4: ; 599ff (16:59ff) - db $5 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d7df ; flag's byte - dw Route16BattleText5 ; 0x5a86 TextBeforeBattle - dw Route16AfterBattleText5 ; 0x5a90 TextAfterBattle - dw Route16EndBattleText5 ; 0x5a8b TextEndBattle - dw Route16EndBattleText5 ; 0x5a8b TextEndBattle - -Route16TrainerHeader5: ; 59a0b (16:5a0b) - db $6 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7df ; flag's byte - dw Route16BattleText6 ; 0x5a9f TextBeforeBattle - dw Route16AfterBattleText6 ; 0x5aa9 TextAfterBattle - dw Route16EndBattleText6 ; 0x5aa4 TextEndBattle - dw Route16EndBattleText6 ; 0x5aa4 TextEndBattle - - db $ff - -Route16Text1: ; 59a18 (16:5a18) - db $08 ; asm - ld hl, Route16TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -Route16BattleText1: ; 59a22 (16:5a22) - TX_FAR _Route16BattleText1 - db "@" - -Route16EndBattleText1: ; 59a27 (16:5a27) - TX_FAR _Route16EndBattleText1 - db "@" - -Route16AfterBattleText1: ; 59a2c (16:5a2c) - TX_FAR _Route16AfterBattleText1 - db "@" - -Route16Text2: ; 59a31 (16:5a31) - db $08 ; asm - ld hl, Route16TrainerHeader1 - call TalkToTrainer - jp TextScriptEnd - -Route16BattleText2: ; 59a3b (16:5a3b) - TX_FAR _Route16BattleText2 - db "@" - -Route16EndBattleText2: ; 59a40 (16:5a40) - TX_FAR _Route16EndBattleText2 - db "@" - -Route16AfterBattleText2: ; 59a45 (16:5a45) - TX_FAR _Route16AfterBattleText2 - db "@" - -Route16Text3: ; 59a4a (16:5a4a) - db $08 ; asm - ld hl, Route16TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -Route16BattleText3: ; 59a54 (16:5a54) - TX_FAR _Route16BattleText3 - db "@" - -Route16EndBattleText3: ; 59a59 (16:5a59) - TX_FAR _Route16EndBattleText3 - db "@" - -Route16AfterBattleText3: ; 59a5e (16:5a5e) - TX_FAR _Route16AfterBattleText3 - db "@" - -Route16Text4: ; 59a63 (16:5a63) - db $08 ; asm - ld hl, Route16TrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -Route16BattleText4: ; 59a6d (16:5a6d) - TX_FAR _Route16BattleText4 - db "@" - -Route16EndBattleText4: ; 59a72 (16:5a72) - TX_FAR _Route16EndBattleText4 - db "@" - -Route16AfterBattleText4: ; 59a77 (16:5a77) - TX_FAR _Route16AfterBattleText4 - db "@" - -Route16Text5: ; 59a7c (16:5a7c) - db $08 ; asm - ld hl, Route16TrainerHeader4 - call TalkToTrainer - jp TextScriptEnd - -Route16BattleText5: ; 59a86 (16:5a86) - TX_FAR _Route16BattleText5 - db "@" - -Route16EndBattleText5: ; 59a8b (16:5a8b) - TX_FAR _Route16EndBattleText5 - db "@" - -Route16AfterBattleText5: ; 59a90 (16:5a90) - TX_FAR _Route16AfterBattleText5 - db "@" - -Route16Text6: ; 59a95 (16:5a95) - db $08 ; asm - ld hl, Route16TrainerHeader5 - call TalkToTrainer - jp TextScriptEnd - -Route16BattleText6: ; 59a9f (16:5a9f) - TX_FAR _Route16BattleText6 - db "@" - -Route16EndBattleText6: ; 59aa4 (16:5aa4) - TX_FAR _Route16EndBattleText6 - db "@" - -Route16AfterBattleText6: ; 59aa9 (16:5aa9) - TX_FAR _Route16AfterBattleText6 - db "@" - -Route16Text7: ; 59aae (16:5aae) - TX_FAR _Route16Text7 - db "@" - -Route16Text10: ; 59ab3 (16:5ab3) - TX_FAR _UnnamedText_59ab3 - db "@" - -Route16Text11: ; 59ab8 (16:5ab8) - TX_FAR _UnnamedText_59ab8 - db "@" - -Route16Text8: ; 59abd (16:5abd) - TX_FAR _Route16Text8 - db "@" - -Route16Text9: ; 59ac2 (16:5ac2) - TX_FAR _Route16Text9 - db "@" - -Route18Script: ; 59ac7 (16:5ac7) - call EnableAutoTextBoxDrawing - ld hl, Route18TrainerHeaders - ld de, Route18ScriptPointers - ld a, [W_ROUTE18CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_ROUTE18CURSCRIPT], a - ret - -Route18ScriptPointers: ; 59ada (16:5ada) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -Route18TextPointers: ; 59ae0 (16:5ae0) - dw Route18Text1 - dw Route18Text2 - dw Route18Text3 - dw Route18Text4 - dw Route18Text5 - -Route18TrainerHeaders: ; 59aea (16:5aea) -Route18TrainerHeader0: ; 59aea (16:5aea) - db $1 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7e3 ; flag's byte - dw Route18BattleText1 ; 0x5b19 TextBeforeBattle - dw Route18AfterBattleText1 ; 0x5b23 TextAfterBattle - dw Route18EndBattleText1 ; 0x5b1e TextEndBattle - dw Route18EndBattleText1 ; 0x5b1e TextEndBattle - -Route18TrainerHeader1: ; 59af6 (16:5af6) - db $2 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7e3 ; flag's byte - dw Route18BattleText2 ; 0x5b32 TextBeforeBattle - dw Route18AfterBattleText2 ; 0x5b3c TextAfterBattle - dw Route18EndBattleText2 ; 0x5b37 TextEndBattle - dw Route18EndBattleText2 ; 0x5b37 TextEndBattle - -Route18TrainerHeader2: ; 59b02 (16:5b02) - db $3 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7e3 ; flag's byte - dw Route18BattleText3 ; 0x5b4b TextBeforeBattle - dw Route18AfterBattleText3 ; 0x5b55 TextAfterBattle - dw Route18EndBattleText3 ; 0x5b50 TextEndBattle - dw Route18EndBattleText3 ; 0x5b50 TextEndBattle - - db $ff - -Route18Text1: ; 59b0f (16:5b0f) - db $08 ; asm - ld hl, Route18TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -Route18BattleText1: ; 59b19 (16:5b19) - TX_FAR _Route18BattleText1 - db "@" - -Route18EndBattleText1: ; 59b1e (16:5b1e) - TX_FAR _Route18EndBattleText1 - db "@" - -Route18AfterBattleText1: ; 59b23 (16:5b23) - TX_FAR _Route18AfterBattleText1 - db "@" - -Route18Text2: ; 59b28 (16:5b28) - db $08 ; asm - ld hl, Route18TrainerHeader1 - call TalkToTrainer - jp TextScriptEnd - -Route18BattleText2: ; 59b32 (16:5b32) - TX_FAR _Route18BattleText2 - db "@" - -Route18EndBattleText2: ; 59b37 (16:5b37) - TX_FAR _Route18EndBattleText2 - db "@" - -Route18AfterBattleText2: ; 59b3c (16:5b3c) - TX_FAR _Route18AfterBattleText2 - db "@" - -Route18Text3: ; 59b41 (16:5b41) - db $08 ; asm - ld hl, Route18TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -Route18BattleText3: ; 59b4b (16:5b4b) - TX_FAR _Route18BattleText3 - db "@" - -Route18EndBattleText3: ; 59b50 (16:5b50) - TX_FAR _Route18EndBattleText3 - db "@" - -Route18AfterBattleText3: ; 59b55 (16:5b55) - TX_FAR _Route18AfterBattleText3 - db "@" - -Route18Text4: ; 59b5a (16:5b5a) - TX_FAR _Route18Text4 - db "@" - -Route18Text5: ; 59b5f (16:5b5f) - TX_FAR _Route18Text5 - db "@" - -FanClub_h: ; 0x59b64 to 0x59b70 (12 bytes) (id=90) - db INTERIOR ; tileset - db POKEMON_FAN_CLUB_HEIGHT, POKEMON_FAN_CLUB_WIDTH ; dimensions (y, x) - dw FanClubBlocks, FanClubTextPointers, FanClubScript ; blocks, texts, scripts - db $00 ; connections - dw FanClubObject ; objects - -FanClubScript: ; 59b70 (16:5b70) - jp EnableAutoTextBoxDrawing - -FanClubBikeInBag: -; check if any bike paraphernalia in bag - ld a, [$d771] - bit 1, a ; got bike voucher? - ret nz - ld b, BICYCLE - call IsItemInBag - ret nz - ld b, BIKE_VOUCHER - jp IsItemInBag - -FanClubTextPointers: ; 59b84 (16:5b84) - dw FanClubText1 - dw FanClubText2 - dw FanClubText3 - dw FanClubText4 - dw FanClubText5 - dw FanClubText6 - dw FanClubText7 - dw FanClubText8 - -FanClubText1: -; pikachu fan - db $08 ; asm - ld a, [$d771] - bit 7, a - jr nz, .mineisbetter - ld hl, .normaltext - call PrintText - ld hl, $d771 - set 6, [hl] - jr .done -.mineisbetter - ld hl, .bettertext - call PrintText - ld hl, $d771 - res 7, [hl] -.done - jp TextScriptEnd - -.normaltext - TX_FAR PikachuFanText - db "@" - -.bettertext - TX_FAR PikachuFanBetterText - db "@" - -FanClubText2: -; seel fan - db $08 ; asm - ld a, [$d771] - bit 6, a - jr nz, .mineisbetter - ld hl, .normaltext - call PrintText - ld hl, $d771 - set 7, [hl] - jr .done -.mineisbetter - ld hl, .bettertext - call PrintText - ld hl, $d771 - res 6, [hl] -.done - jp TextScriptEnd - -.normaltext - TX_FAR SeelFanText - db "@" - -.bettertext - TX_FAR SeelFanBetterText - db "@" - -FanClubText3: -; pikachu - db $8 - ld hl, .text - call PrintText - ld a, PIKACHU - call PlayCry - call WaitForSoundToFinish - jp TextScriptEnd - -.text - TX_FAR FanClubPikachuText - db "@" - -FanClubText4: -; seel - db $08 ; asm - ld hl, .text - call PrintText - ld a, SEEL - call PlayCry - call WaitForSoundToFinish - jp TextScriptEnd - -.text - TX_FAR FanClubSeelText - db "@" - -FanClubText5: -; chair - db $08 ; asm - call FanClubBikeInBag - jr nz, .nothingleft - - ld hl, .meetchairtext - call PrintText - call YesNoChoice - ld a, [$cc26] - and a - jr nz, .nothanks - - ; tell the story - ld hl, .storytext - call PrintText - ld bc, (BIKE_VOUCHER << 8) | 1 - call GiveItem - jr nc, .BagFull - ld hl, .receivedvouchertext - call PrintText - ld hl, $d771 - set 1, [hl] - jr .done -.BagFull - ld hl, .bagfulltext - call PrintText - jr .done -.nothanks - ld hl, .nostorytext - call PrintText - jr .done -.nothingleft - ld hl, .finaltext - call PrintText -.done - jp TextScriptEnd - -.meetchairtext - TX_FAR FanClubMeetChairText - db "@" - -.storytext - TX_FAR FanClubChairStoryText - db "@" - -.receivedvouchertext - TX_FAR ReceivedBikeVoucherText - db $11 - TX_FAR ExplainBikeVoucherText - db "@" - -.nostorytext - TX_FAR FanClubNoStoryText - db "@" - -.finaltext - TX_FAR FanClubChairFinalText - db "@" - -.bagfulltext - TX_FAR FanClubBagFullText - db "@" - -FanClubText6: ; 59c88 (16:5c88) - TX_FAR _FanClubText6 - db "@" - -FanClubText7: ; 59c8d (16:5c8d) - TX_FAR _FanClubText7 - db "@" - -FanClubText8: ; 59c92 (16:5c92) - TX_FAR _FanClubText8 - db "@" - -FanClubObject: ; 0x59c97 (size=62) - db $d ; border tile - - db $2 ; warps - db $7, $2, $1, $ff - db $7, $3, $1, $ff - - db $2 ; signs - db $0, $1, $7 ; FanClubText7 - db $0, $6, $8 ; FanClubText8 - - db $6 ; people - db SPRITE_FISHER2, $3 + 4, $6 + 4, $ff, $d2, $1 ; person - db SPRITE_GIRL, $3 + 4, $1 + 4, $ff, $d3, $2 ; person - db SPRITE_CLEFAIRY, $4 + 4, $6 + 4, $ff, $d2, $3 ; person - db SPRITE_SEEL, $4 + 4, $1 + 4, $ff, $d3, $4 ; person - db SPRITE_GENTLEMAN, $1 + 4, $3 + 4, $ff, $d0, $5 ; person - db SPRITE_CABLE_CLUB_WOMAN, $1 + 4, $5 + 4, $ff, $d0, $6 ; person - - ; warp-to - EVENT_DISP POKEMON_FAN_CLUB_WIDTH, $7, $2 - EVENT_DISP POKEMON_FAN_CLUB_WIDTH, $7, $3 +INCLUDE "data/mapObjects/fanclub.asm" FanClubBlocks: ; 59cd5 (16:5cd5) INCBIN "maps/fanclub.blk" -SilphCo2_h: ; 0x59ce5 to 0x59cf1 (12 bytes) (id=207) - db FACILITY ; tileset - db SILPH_CO_2F_HEIGHT, SILPH_CO_2F_WIDTH ; dimensions (y, x) - dw SilphCo2Blocks, SilphCo2TextPointers, SilphCo2Script ; blocks, texts, scripts - db $00 ; connections - dw SilphCo2Object ; objects - -SilphCo2Script: ; 59cf1 (16:5cf1) - call SilphCo2Script_59d07 - call EnableAutoTextBoxDrawing - ld hl, SilphCo2TrainerHeaders - ld de, SilphCo2ScriptPointers - ld a, [W_SILPHCO2CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_SILPHCO2CURSCRIPT], a - ret - -SilphCo2Script_59d07: ; 59d07 (16:5d07) - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - ret z - ld hl, DataTable_59d3e - call Func_59d43 - call Func_59d6f - ld a, [$d826] - bit 5, a - jr nz, .asm_59d2e - push af - ld a, $54 - ld [$d09f], a - ld bc, $0202 - ld a, $17 - call Predef - pop af -.asm_59d2e - bit 6, a - ret nz - ld a, $54 - ld [$d09f], a - ld bc, $0502 - ld a, $17 - jp Predef - -DataTable_59d3e: ; 59d3e (16:5d3e) - db $02,$02,$05,$02,$FF - -Func_59d43: ; 59d43 (16:5d43) - push hl - ld hl, $d73f - ld a, [hli] - ld b, a - ld a, [hl] - ld c, a - xor a - ld [$ffe0], a - pop hl -.asm_59d4f - ld a, [hli] - cp $ff - jr z, .asm_59d6b - push hl - ld hl, $ffe0 - inc [hl] - pop hl - cp b - jr z, .asm_59d60 - inc hl - jr .asm_59d4f -.asm_59d60 - ld a, [hli] - cp c - jr nz, .asm_59d4f - ld hl, $d73f - xor a - ld [hli], a - ld [hl], a - ret -.asm_59d6b - xor a - ld [$ffe0], a - ret - -Func_59d6f: ; 59d6f (16:5d6f) - ld hl, $d826 - ld a, [$ffe0] - and a - ret z - cp $1 - jr nz, .asm_59d7d - set 5, [hl] - ret -.asm_59d7d - set 6, [hl] - ret - -SilphCo2ScriptPointers: ; 59d80 (16:5d80) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -SilphCo2TextPointers: ; 59d86 (16:5d86) - dw SilphCo2Text1 - dw SilphCo2Text2 - dw SilphCo2Text3 - dw SilphCo2Text4 - dw SilphCo2Text5 - -SilphCo2TrainerHeaders: ; 59d90 (16:5d90) -SilphCo2TrainerHeader0: ; 59d90 (16:5d90) - db $2 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d825 ; flag's byte - dw SilphCo2BattleText1 ; 0x5e2a TextBeforeBattle - dw SilphCo2AfterBattleText1 ; 0x5e34 TextAfterBattle - dw SilphCo2EndBattleText1 ; 0x5e2f TextEndBattle - dw SilphCo2EndBattleText1 ; 0x5e2f TextEndBattle - -SilphCo2TrainerHeader1: ; 59d9c (16:5d9c) - db $3 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d825 ; flag's byte - dw SilphCo2BattleText2 ; 0x5e39 TextBeforeBattle - dw SilphCo2AfterBattleText2 ; 0x5e43 TextAfterBattle - dw SilphCo2EndBattleText2 ; 0x5e3e TextEndBattle - dw SilphCo2EndBattleText2 ; 0x5e3e TextEndBattle - -SilphCo2TrainerHeader2: ; 59da8 (16:5da8) - db $4 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d825 ; flag's byte - dw SilphCo2BattleText3 ; 0x5e48 TextBeforeBattle - dw SilphCo2AfterBattleText3 ; 0x5e52 TextAfterBattle - dw SilphCo2EndBattleText3 ; 0x5e4d TextEndBattle - dw SilphCo2EndBattleText3 ; 0x5e4d TextEndBattle - -SilphCo2TrainerHeader3: ; 59db4 (16:5db4) - db $5 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d825 ; flag's byte - dw SilphCo2BattleText4 ; 0x5e57 TextBeforeBattle - dw SilphCo2AfterBattleText4 ; 0x5e61 TextAfterBattle - dw SilphCo2EndBattleText4 ; 0x5e5c TextEndBattle - dw SilphCo2EndBattleText4 ; 0x5e5c TextEndBattle +INCLUDE "data/mapHeaders/silphco2.asm" - db $ff - -SilphCo2Text1: ; 59dc1 (16:5dc1) - db $08 ; asm - ld a, [$d826] - bit 7, a - jr nz, asm_b8a0d ; 0x59dc7 - ld hl, UnnamedText_59ded - call PrintText - ld bc, (TM_36 << 8) | 1 - call GiveItem - ld hl, TM36NoRoomText - jr nc, asm_2c1e0 ; 0x59dd8 - ld hl, $d826 - set 7, [hl] - ld hl, ReceivedTM36Text - jr asm_2c1e0 ; 0x59de2 -asm_b8a0d ; 0x59de4 - ld hl, TM36ExplanationText -asm_2c1e0 ; 0x59de7 - call PrintText - jp TextScriptEnd - -UnnamedText_59ded: ; 59ded (16:5ded) - TX_FAR _UnnamedText_59ded - db "@" - -ReceivedTM36Text: ; 59df2 (16:5df2) - TX_FAR _ReceivedTM36Text ; 0x824ba - db $0B, "@" - -TM36ExplanationText: ; 59df8 (16:5df8) - TX_FAR _TM36ExplanationText - db "@" - -TM36NoRoomText: ; 59dfd (16:5dfd) - TX_FAR _TM36NoRoomText - db "@" +INCLUDE "scripts/silphco2.asm" -SilphCo2Text2: ; 59e02 (16:5e02) - db $08 ; asm - ld hl, SilphCo2TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -SilphCo2Text3: ; 59e0c (16:5e0c) - db $08 ; asm - ld hl, SilphCo2TrainerHeader1 - call TalkToTrainer - jp TextScriptEnd - -SilphCo2Text4: ; 59e16 (16:5e16) - db $08 ; asm - ld hl, SilphCo2TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -SilphCo2Text5: ; 59e20 (16:5e20) - db $08 ; asm - ld hl, SilphCo2TrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -SilphCo2BattleText1: ; 59e2a (16:5e2a) - TX_FAR _SilphCo2BattleText1 - db "@" - -SilphCo2EndBattleText1: ; 59e2f (16:5e2f) - TX_FAR _SilphCo2EndBattleText1 - db "@" - -SilphCo2AfterBattleText1: ; 59e34 (16:5e34) - TX_FAR _SilphCo2AfterBattleText1 - db "@" - -SilphCo2BattleText2: ; 59e39 (16:5e39) - TX_FAR _SilphCo2BattleText2 - db "@" - -SilphCo2EndBattleText2: ; 59e3e (16:5e3e) - TX_FAR _SilphCo2EndBattleText2 - db "@" - -SilphCo2AfterBattleText2: ; 59e43 (16:5e43) - TX_FAR _SilphCo2AfterBattleText2 - db "@" - -SilphCo2BattleText3: ; 59e48 (16:5e48) - TX_FAR _SilphCo2BattleText3 - db "@" - -SilphCo2EndBattleText3: ; 59e4d (16:5e4d) - TX_FAR _SilphCo2EndBattleText3 - db "@" - -SilphCo2AfterBattleText3: ; 59e52 (16:5e52) - TX_FAR _SilphCo2AfterBattleText3 - db "@" - -SilphCo2BattleText4: ; 59e57 (16:5e57) - TX_FAR _SilphCo2BattleText4 - db "@" - -SilphCo2EndBattleText4: ; 59e5c (16:5e5c) - TX_FAR _SilphCo2EndBattleText4 - db "@" - -SilphCo2AfterBattleText4: ; 59e61 (16:5e61) - TX_FAR _SilphCo2AfterBattleText4 - db "@" - -SilphCo2Object: ; 0x59e66 (size=98) - db $2e ; border tile - - db $7 ; warps - db $0, $18, $2, SILPH_CO_1F - db $0, $1a, $0, SILPH_CO_3F - db $0, $14, $0, SILPH_CO_ELEVATOR - db $3, $3, $6, SILPH_CO_3F - db $3, $d, $4, SILPH_CO_8F - db $f, $1b, $5, SILPH_CO_8F - db $f, $9, $4, SILPH_CO_6F - - db $0 ; signs - - db $5 ; people - db SPRITE_ERIKA, $1 + 4, $a + 4, $ff, $d1, $1 ; person - db SPRITE_OAK_AIDE, $c + 4, $5 + 4, $ff, $d0, $42, SCIENTIST + $C8, $2 ; trainer - db SPRITE_OAK_AIDE, $d + 4, $18 + 4, $ff, $d2, $43, SCIENTIST + $C8, $3 ; trainer - db SPRITE_ROCKET, $b + 4, $10 + 4, $ff, $d1, $44, ROCKET + $C8, $17 ; trainer - db SPRITE_ROCKET, $7 + 4, $18 + 4, $ff, $d1, $45, ROCKET + $C8, $18 ; trainer - - ; warp-to - EVENT_DISP SILPH_CO_2F_WIDTH, $0, $18 ; SILPH_CO_1F - EVENT_DISP SILPH_CO_2F_WIDTH, $0, $1a ; SILPH_CO_3F - EVENT_DISP SILPH_CO_2F_WIDTH, $0, $14 ; SILPH_CO_ELEVATOR - EVENT_DISP SILPH_CO_2F_WIDTH, $3, $3 ; SILPH_CO_3F - EVENT_DISP SILPH_CO_2F_WIDTH, $3, $d ; SILPH_CO_8F - EVENT_DISP SILPH_CO_2F_WIDTH, $f, $1b ; SILPH_CO_8F - EVENT_DISP SILPH_CO_2F_WIDTH, $f, $9 ; SILPH_CO_6F +INCLUDE "data/mapObjects/silphco2.asm" SilphCo2Blocks: ; 59ec8 (16:5ec8) INCBIN "maps/silphco2.blk" -SilphCo3_h: ; 0x59f4f to 0x59f5b (12 bytes) (id=208) - db FACILITY ; tileset - db SILPH_CO_3F_HEIGHT, SILPH_CO_3F_WIDTH ; dimensions (y, x) - dw SilphCo3Blocks, SilphCo3TextPointers, SilphCo3Script ; blocks, texts, scripts - db $00 ; connections - dw SilphCo3Object ; objects - -SilphCo3Script: ; 59f5b (16:5f5b) - call SilphCo3Script_59f71 - call EnableAutoTextBoxDrawing - ld hl, SilphCo3TrainerHeaders - ld de, SilphCo3ScriptPointers - ld a, [W_SILPHCO3CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_SILPHCO3CURSCRIPT], a - ret - -SilphCo3Script_59f71: ; 59f71 (16:5f71) - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - ret z - ld hl, DataTable_59fa8 ; $5fa8 - call Func_59d43 - call Func_59fad - ld a, [$d828] - bit 0, a - jr nz, .asm_59f98 - push af - ld a, $5f - ld [$d09f], a - ld bc, $404 - ld a, $17 - call Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) - pop af -.asm_59f98 - bit 1, a - ret nz - ld a, $5f - ld [$d09f], a - ld bc, $408 - ld a, $17 - jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) - -DataTable_59fa8: ; 59fa8 (16:5fa8) - db $04,$04,$04,$08,$FF - -Func_59fad: ; 59fad (16:5fad) - ld hl, $d828 - ld a, [$ffe0] - and a - ret z - cp $1 - jr nz, .asm_59fbb - set 0, [hl] - ret -.asm_59fbb - set 1, [hl] - ret - -SilphCo3ScriptPointers: ; 59fbe (16:5fbe) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -SilphCo3TextPointers: ; 59fc4 (16:5fc4) - dw SilphCo3Text1 - dw SilphCo3Text2 - dw SilphCo3Text3 - dw Predef5CText - -SilphCo3TrainerHeaders: ; 59fcc (16:5fcc) -SilphCo3TrainerHeader0: ; 59fcc (16:5fcc) - db $2 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d827 ; flag's byte - dw SilphCo3BattleText1 ; 0x600d TextBeforeBattle - dw SilphCo3AfterBattleText1 ; 0x6017 TextAfterBattle - dw SilphCo3EndBattleText1 ; 0x6012 TextEndBattle - dw SilphCo3EndBattleText1 ; 0x6012 TextEndBattle - -SilphCo3TrainerHeader1: ; 59fd8 (16:5fd8) - db $3 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d827 ; flag's byte - dw SilphCo3BattleText2 ; 0x6026 TextBeforeBattle - dw SilphCo3AfterBattleText2 ; 0x6030 TextAfterBattle - dw SilphCo3EndBattleText2 ; 0x602b TextEndBattle - dw SilphCo3EndBattleText2 ; 0x602b TextEndBattle - - db $ff - -SilphCo3Text1: ; 59fe5 (16:5fe5) - db $08 ; asm - ld a, [$d838] - bit 7, a - ld hl, UnnamedText_59ffe - jr nz, asm_8c56f ; 0x59fee - ld hl, UnnamedText_59ff9 -asm_8c56f ; 0x59ff3 - call PrintText - jp TextScriptEnd - -UnnamedText_59ff9: ; 59ff9 (16:5ff9) - TX_FAR _UnnamedText_59ff9 - db "@" - -UnnamedText_59ffe: ; 59ffe (16:5ffe) - TX_FAR _UnnamedText_59ffe - db "@" - -SilphCo3Text2: ; 5a003 (16:6003) - db $08 ; asm - ld hl, SilphCo3TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -SilphCo3BattleText1: ; 5a00d (16:600d) - TX_FAR _SilphCo3BattleText1 - db "@" +INCLUDE "data/mapHeaders/silphco3.asm" -SilphCo3EndBattleText1: ; 5a012 (16:6012) - TX_FAR _SilphCo3EndBattleText1 - db "@" - -SilphCo3AfterBattleText1: ; 5a017 (16:6017) - TX_FAR _SilphCo3AfterBattleText1 - db "@" - -SilphCo3Text3: ; 5a01c (16:601c) - db $08 ; asm - ld hl, SilphCo3TrainerHeader1 - call TalkToTrainer - jp TextScriptEnd +INCLUDE "scripts/silphco3.asm" -SilphCo3BattleText2: ; 5a026 (16:6026) - TX_FAR _SilphCo3BattleText2 - db "@" - -SilphCo3EndBattleText2: ; 5a02b (16:602b) - TX_FAR _SilphCo3EndBattleText2 - db "@" - -SilphCo3AfterBattleText2: ; 5a030 (16:6030) - TX_FAR _SilphCo3AfterBattleText2 - db "@" - -SilphCo3Object: ; 0x5a035 (size=113) - db $2e ; border tile - - db $a ; warps - db $0, $1a, $1, SILPH_CO_2F - db $0, $18, $0, SILPH_CO_4F - db $0, $14, $0, SILPH_CO_ELEVATOR - db $b, $17, $9, SILPH_CO_3F - db $3, $3, $5, SILPH_CO_5F - db $f, $3, $6, SILPH_CO_5F - db $3, $1b, $3, SILPH_CO_2F - db $b, $3, $3, SILPH_CO_9F - db $b, $b, $4, SILPH_CO_7F - db $f, $1b, $3, SILPH_CO_3F - - db $0 ; signs - - db $4 ; people - db SPRITE_LAPRAS_GIVER, $8 + 4, $18 + 4, $ff, $ff, $1 ; person - db SPRITE_ROCKET, $7 + 4, $14 + 4, $ff, $d2, $42, ROCKET + $C8, $19 ; trainer - db SPRITE_OAK_AIDE, $9 + 4, $7 + 4, $ff, $d0, $43, SCIENTIST + $C8, $4 ; trainer - db SPRITE_BALL, $5 + 4, $8 + 4, $ff, $ff, $84, HYPER_POTION ; item - - ; warp-to - EVENT_DISP SILPH_CO_3F_WIDTH, $0, $1a ; SILPH_CO_2F - EVENT_DISP SILPH_CO_3F_WIDTH, $0, $18 ; SILPH_CO_4F - EVENT_DISP SILPH_CO_3F_WIDTH, $0, $14 ; SILPH_CO_ELEVATOR - EVENT_DISP SILPH_CO_3F_WIDTH, $b, $17 ; SILPH_CO_3F - EVENT_DISP SILPH_CO_3F_WIDTH, $3, $3 ; SILPH_CO_5F - EVENT_DISP SILPH_CO_3F_WIDTH, $f, $3 ; SILPH_CO_5F - EVENT_DISP SILPH_CO_3F_WIDTH, $3, $1b ; SILPH_CO_2F - EVENT_DISP SILPH_CO_3F_WIDTH, $b, $3 ; SILPH_CO_9F - EVENT_DISP SILPH_CO_3F_WIDTH, $b, $b ; SILPH_CO_7F - EVENT_DISP SILPH_CO_3F_WIDTH, $f, $1b ; SILPH_CO_3F +INCLUDE "data/mapObjects/silphco3.asm" SilphCo3Blocks: ; 5a0a6 (16:60a6) INCBIN "maps/silphco3.blk" -SilphCo10_h: ; 0x5a12d to 0x5a139 (12 bytes) (id=234) - db FACILITY ; tileset - db SILPH_CO_10F_HEIGHT, SILPH_CO_10F_WIDTH ; dimensions (y, x) - dw SilphCo10Blocks, SilphCo10TextPointers, SilphCo10Script ; blocks, texts, scripts - db $00 ; connections - dw SilphCo10Object ; objects +INCLUDE "data/mapHeaders/silphco10.asm" -SilphCo10Script: ; 5a139 (16:6139) - call SilphCo10Script_5a14f - call EnableAutoTextBoxDrawing - ld hl, SilphCo10TrainerHeaders - ld de, SilphCo10ScriptPointers - ld a, [W_SILPHCO10CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_SILPHCO10CURSCRIPT], a - ret +INCLUDE "scripts/silphco10.asm" -SilphCo10Script_5a14f: ; 5a14f (16:614f) - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - ret z - ld hl, DataTable_5a173 ; $6173 - call Func_59d43 - call Func_5a176 - ld a, [$d836] - bit 0, a - ret nz - ld a, $54 - ld [$d09f], a - ld bc, $405 - ld a, $17 - jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) - -DataTable_5a173: ; 5a173 (16:6173) - db $04,$05,$FF - -Func_5a176: ; 5a176 (16:6176) - ld a, [$ffe0] - and a - ret z - ld hl, $d836 - set 0, [hl] - ret - -SilphCo10ScriptPointers: ; 5a180 (16:6180) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -SilphCo10TextPointers: ; 5a186 (16:6186) - dw SilphCo10Text1 - dw SilphCo10Text2 - dw SilphCo10Text3 - dw Predef5CText - dw Predef5CText - dw Predef5CText - -SilphCo10TrainerHeaders: ; 5a192 (16:6192) -SilphCo10TrainerHeader0: ; 5a192 (16:6192) - db $1 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d835 ; flag's byte - dw SilphCo10BattleText1 ; 0x61dd TextBeforeBattle - dw SilphCo10AfterBattleText1 ; 0x61e7 TextAfterBattle - dw SilphCo10EndBattleText1 ; 0x61e2 TextEndBattle - dw SilphCo10EndBattleText1 ; 0x61e2 TextEndBattle - -SilphCo10TrainerHeader1: ; 5a19e (16:619e) - db $2 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d835 ; flag's byte - dw SilphCo10BattleText2 ; 0x61ec TextBeforeBattle - dw SilphCo10AfterBattleText2 ; 0x61f6 TextAfterBattle - dw SilphCo10EndBattleText2 ; 0x61f1 TextEndBattle - dw SilphCo10EndBattleText2 ; 0x61f1 TextEndBattle - - db $ff - -SilphCo10Text1: ; 5a1ab (16:61ab) - db $08 ; asm - ld hl, SilphCo10TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -SilphCo10Text2: ; 5a1b5 (16:61b5) - db $08 ; asm - ld hl, SilphCo10TrainerHeader1 - call TalkToTrainer - jp TextScriptEnd - -SilphCo10Text3: ; 5a1bf (16:61bf) - db $08 ; asm - ld a, [$d838] - bit 7, a - ld hl, UnnamedText_5a1d8 - jr nz, .asm_cf85f - ld hl, UnnamedText_5a1d3 -.asm_cf85f - call PrintText - jp TextScriptEnd - -UnnamedText_5a1d3: ; 5a1d3 (16:61d3) - TX_FAR _UnnamedText_5a1d3 - db "@" - -UnnamedText_5a1d8: ; 5a1d8 (16:61d8) - TX_FAR _UnnamedText_5a1d8 - db "@" - -SilphCo10BattleText1: ; 5a1dd (16:61dd) - TX_FAR _SilphCo10BattleText1 - db "@" - -SilphCo10EndBattleText1: ; 5a1e2 (16:61e2) - TX_FAR _SilphCo10EndBattleText1 - db "@" - -SilphCo10AfterBattleText1: ; 5a1e7 (16:61e7) - TX_FAR _SilphCo10AfterBattleText1 - db "@" - -SilphCo10BattleText2: ; 5a1ec (16:61ec) - TX_FAR _SilphCo10BattleText2 - db "@" - -SilphCo10EndBattleText2: ; 5a1f1 (16:61f1) - TX_FAR _SilphCo10EndBattleText2 - db "@" - -SilphCo10AfterBattleText2: ; 5a1f6 (16:61f6) - TX_FAR _SilphCo10AfterBattleText2 - db "@" - -SilphCo10Object: ; 0x5a1fb (size=95) - db $2e ; border tile - - db $6 ; warps - db $0, $8, $0, SILPH_CO_9F - db $0, $a, $0, SILPH_CO_11F - db $0, $c, $0, SILPH_CO_ELEVATOR - db $b, $9, $3, SILPH_CO_4F - db $f, $d, $5, SILPH_CO_4F - db $7, $d, $6, SILPH_CO_4F - - db $0 ; signs - - db $6 ; people - db SPRITE_ROCKET, $9 + 4, $1 + 4, $ff, $d3, $41, ROCKET + $C8, $27 ; trainer - db SPRITE_OAK_AIDE, $2 + 4, $a + 4, $ff, $d2, $42, SCIENTIST + $C8, $b ; trainer - db SPRITE_ERIKA, $f + 4, $9 + 4, $fe, $0, $3 ; person - db SPRITE_BALL, $c + 4, $2 + 4, $ff, $ff, $84, TM_26 ; item - db SPRITE_BALL, $e + 4, $4 + 4, $ff, $ff, $85, RARE_CANDY ; item - db SPRITE_BALL, $b + 4, $5 + 4, $ff, $ff, $86, CARBOS ; item - - ; warp-to - EVENT_DISP SILPH_CO_10F_WIDTH, $0, $8 ; SILPH_CO_9F - EVENT_DISP SILPH_CO_10F_WIDTH, $0, $a ; SILPH_CO_11F - EVENT_DISP SILPH_CO_10F_WIDTH, $0, $c ; SILPH_CO_ELEVATOR - EVENT_DISP SILPH_CO_10F_WIDTH, $b, $9 ; SILPH_CO_4F - EVENT_DISP SILPH_CO_10F_WIDTH, $f, $d ; SILPH_CO_4F - EVENT_DISP SILPH_CO_10F_WIDTH, $7, $d ; SILPH_CO_4F +INCLUDE "data/mapObjects/silphco10.asm" SilphCo10Blocks: ; 5a25a (16:625a) INCBIN "maps/silphco10.blk" -Lance_h: ; 0x5a2a2 to 0x5a2ae (12 bytes) (id=113) - db DOJO ; tileset - db LANCES_ROOM_HEIGHT, LANCES_ROOM_WIDTH ; dimensions (y, x) - dw LanceBlocks, LanceTextPointers, LanceScript ; blocks, texts, scripts - db $00 ; connections - dw LanceObject ; objects - -LanceScript: ; 5a2ae (16:62ae) - call LanceScript_5a2c4 - call EnableAutoTextBoxDrawing - ld hl, LanceTrainerHeaders - ld de, LanceScriptPointers - ld a, [W_LANCECURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_LANCECURSCRIPT], a - ret - -LanceScript_5a2c4: ; 5a2c4 (16:62c4) - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - ret z - ld a, [$d866] - bit 7, a - jr nz, .asm_5a2da - ld a, $31 - ld b, $32 - jp Func_5a2de -.asm_5a2da - ld a, $72 - ld b, $73 - -Func_5a2de: ; 5a2de (16:62de) - push bc - ld [$d09f], a - ld bc, $602 - call Func_5a2f0 - pop bc - ld a, b - ld [$d09f], a - ld bc, $603 +INCLUDE "data/mapHeaders/lance.asm" -Func_5a2f0: ; 5a2f0 (16:62f0) - ld a, $17 - jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) +INCLUDE "scripts/lance.asm" -Func_5a2f5: ; 5a2f5 (16:62f5) - xor a - ld [W_LANCECURSCRIPT], a - ret - -LanceScriptPointers: ; 5a2fa (16:62fa) - dw LanceScript0 - dw Func_324c - dw LanceScript2 - dw LanceScript3 - dw LanceScript4 - -LanceScript4: ; 5a304 (16:6304) - ret - -LanceScript0: ; 5a305 (16:6305) - ld a, [$d866] - bit 6, a - ret nz - ld hl, CoordsData_5a33e - call ArePlayerCoordsInArray - jp nc, CheckFightingMapTrainers - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - ld a, [wWhichTrade] ; $cd3d - cp $3 - jr nc, .asm_5a325 - ld a, $1 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - jp DisplayTextID -.asm_5a325 - cp $5 - jr z, Func_5a35b - ld hl, $d866 - bit 7, [hl] - set 7, [hl] - ret nz - ld hl, $d126 - set 5, [hl] - ld a, (SFX_02_57 - SFX_Headers_02) / 3 - call PlaySound - jp LanceScript_5a2c4 - -CoordsData_5a33e: ; 5a33e (16:633e) - db $01,$05 - db $02,$06 - db $0B,$05 - db $0B,$06 - db $10,$18 - db $FF - -LanceScript2: ; 5a349 (16:6349) - call EndTrainerBattle - ld a, [W_ISINBATTLE] ; $d057 - cp $ff - jp z, Func_5a2f5 - ld a, $1 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - jp DisplayTextID - -Func_5a35b: ; 5a35b (16:635b) - ld a, $ff - ld [wJoypadForbiddenButtonsMask], a - ld hl, $ccd3 - ld de, RLEList_5a379 - call DecodeRLEList - dec a - ld [$cd38], a - call Func_3486 - ld a, $3 - ld [W_LANCECURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -RLEList_5a379: ; 5a379 (16:6379) - db $40, $0C - db $20, $0C - db $80, $07 - db $20, $06 - db $FF - -LanceScript3: ; 5a382 (16:6382) - ld a, [$cd38] - and a - ret nz - call Delay3 - xor a - ld [wJoypadForbiddenButtonsMask], a - ld [W_LANCECURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -LanceTextPointers: ; 5a395 (16:6395) - dw LanceText1 - -LanceTrainerHeaders: ; 5a397 (16:6397) -LanceTrainerHeader0: ; 5a397 (16:6397) - db $1 ; flag's bit - db ($0 << 4) ; trainer's view range - dw $d866 ; flag's byte - dw LanceBeforeBattleText ; 0x63ae TextBeforeBattle - dw LanceAfterBattleText ; 0x63b8 TextAfterBattle - dw LanceEndBattleText ; 0x63b3 TextEndBattle - dw LanceEndBattleText ; 0x63b3 TextEndBattle - - db $ff - -LanceText1: ; 5a3a4 (16:63a4) - db $08 ; asm - ld hl, LanceTrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -LanceBeforeBattleText: ; 5a3ae (16:63ae) - TX_FAR _LanceBeforeBattleText - db "@" - -LanceEndBattleText: ; 5a3b3 (16:63b3) - TX_FAR _LanceEndBattleText - db "@" - -LanceAfterBattleText: ; 5a3b8 (16:63b8) - TX_FAR _LanceAfterBattleText ; 0x85e9e - db $8 - ld hl, $d866 - set 6, [hl] - jp TextScriptEnd - -LanceObject: ; 0x5a3c5 (size=36) - db $3 ; border tile - - db $3 ; warps - db $10, $18, $2, AGATHAS_ROOM - db $0, $5, $0, CHAMPIONS_ROOM - db $0, $6, $0, CHAMPIONS_ROOM - - db $0 ; signs - - db $1 ; people - db SPRITE_LANCE, $1 + 4, $6 + 4, $ff, $d0, $41, LANCE + $C8, $1 ; trainer - - ; warp-to - EVENT_DISP LANCES_ROOM_WIDTH, $10, $18 ; AGATHAS_ROOM - EVENT_DISP LANCES_ROOM_WIDTH, $0, $5 ; CHAMPIONS_ROOM - EVENT_DISP LANCES_ROOM_WIDTH, $0, $6 ; CHAMPIONS_ROOM +INCLUDE "data/mapObjects/lance.asm" LanceBlocks: ; 5a3e9 (16:63e9) INCBIN "maps/lance.blk" -HallofFameRoom_h: ; 0x5a492 to 0x5a49e (12 bytes) (id=118) - db GYM ; tileset - db HALL_OF_FAME_HEIGHT, HALL_OF_FAME_WIDTH ; dimensions (y, x) - dw HallofFameRoomBlocks, HallofFameRoomTextPointers, HallofFameRoomScript ; blocks, texts, scripts - db $00 ; connections - dw HallofFameRoomObject ; objects +INCLUDE "data/mapHeaders/halloffameroom.asm" -HallofFameRoomScript: ; 5a49e (16:649e) - call EnableAutoTextBoxDrawing - ld hl, HallofFameRoomScriptPointers - ld a, [W_HALLOFFAMEROOMCURSCRIPT] - jp CallFunctionInTable - -Func_5a4aa: ; 5a4aa (16:64aa) - xor a - ld [wJoypadForbiddenButtonsMask], a - ld [W_HALLOFFAMEROOMCURSCRIPT], a - ret - -HallofFameRoomScriptPointers: ; 5a4b2 (16:64b2) - dw HallofFameRoomScript0 - dw HallofFameRoomScript1 - dw HallofFameRoomScript2 - dw HallofFameRoomScript3 +INCLUDE "scripts/halloffameroom.asm" -HallofFameRoomScript3: ; 5a4ba (16:64ba) - ret - -HallofFameRoomScript2: ; 5a4bb (16:64bb) - call Delay3 - ld a, [$d358] - push af - xor a - ld [wJoypadForbiddenButtonsMask], a - ld a, $55 - call Predef - pop af - ld [$d358], a - ld hl, W_FLAGS_D733 - res 1, [hl] - inc hl - set 0, [hl] - xor a - ld hl, W_LORELEICURSCRIPT - ld [hli], a - ld [hli], a - ld [hl], a - ld [W_LANCECURSCRIPT], a - ld [W_HALLOFFAMEROOMCURSCRIPT], a - ld hl, $d863 - ld [hli], a - ld [hli], a - ld [hli], a - ld [hli], a - ld [hl], a - xor a - ld [W_HALLOFFAMEROOMCURSCRIPT], a - ld a, PALLET_TOWN - ld [wLastBlackoutMap], a - callba SaveSAVtoSRAM - ld b, 5 -.asm_5a4ff - ld c, 600 / 5 - call DelayFrames - dec b - jr nz, .asm_5a4ff ; 0x5a505 $f8 - call WaitForTextScrollButtonPress - jp InitGame - -HallofFameRoomScript0: ; 5a50d (16:650d) - ld a, $ff - ld [wJoypadForbiddenButtonsMask], a - ld hl, $ccd3 - ld de, RLEMovement5a528 - call DecodeRLEList - dec a - ld [$cd38], a - call Func_3486 - ld a, $1 - ld [W_HALLOFFAMEROOMCURSCRIPT], a - ret - -RLEMovement5a528: ; 5a528 (16:6528) - db $40,$5 - db $ff - -HallofFameRoomScript1: ; 5a52b (16:652b) - ld a, [$cd38] - and a - ret nz - ld a, $1 - ld [$d528], a - ld a, $1 - ld [$ff8c], a - call SetSpriteMovementBytesToFF - ld a, $8 - ld [$ff8d], a - call Func_34a6 - call Delay3 - xor a - ld [wJoypadForbiddenButtonsMask], a - inc a - ld [$d528], a - ld a, $1 - ld [$ff8c], a - call DisplayTextID - ld a, $ff - ld [wJoypadForbiddenButtonsMask], a - ld a, $8 - ld [$cc4d], a - ld a, $11 - call Predef - ld a, $2 - ld [W_HALLOFFAMEROOMCURSCRIPT], a - ret - -HallofFameRoomTextPointers: ; 5a56a (16:656a) - dw HallofFameRoomText1 - -HallofFameRoomText1: ; 5a56c (16:656c) - TX_FAR _HallofFameRoomText1 - db "@" - -HallofFameRoomObject: ; 0x5a571 (size=26) - db $3 ; border tile - - db $2 ; warps - db $7, $4, $2, CHAMPIONS_ROOM - db $7, $5, $3, CHAMPIONS_ROOM - - db $0 ; signs - - db $1 ; people - db SPRITE_OAK, $2 + 4, $5 + 4, $ff, $d0, $1 ; person - - ; warp-to - EVENT_DISP HALL_OF_FAME_WIDTH, $7, $4 ; CHAMPIONS_ROOM - EVENT_DISP HALL_OF_FAME_WIDTH, $7, $5 ; CHAMPIONS_ROOM +INCLUDE "data/mapObjects/halloffameroom.asm" HallofFameRoomBlocks: ; 5a58b (16:658b) INCBIN "maps/halloffameroom.blk" @@ -90017,61 +47822,22 @@ LavenderPokecenterBlocks: ; 5c064 (17:4064) PewterPokecenterBlocks: ; 5c064 (17:4064) INCBIN "maps/pewterpokecenter.blk" -UndergroundTunnelEntranceRoute7Blocks: ; 5c080 (17:4080) -UndergroundTunnelEntranceRoute7CopyBlocks: ; 5c080 (17:4080) -UndergroundTunnelEntranceRoute6Blocks: ; 5c080 (17:4080) -UndergroundTunnelEntranceRoute5Blocks: ; 5c080 (17:4080) - INCBIN "maps/undergroundtunnelentranceroute5.blk" +UndergroundPathEntranceRoute7Blocks: ; 5c080 (17:4080) +UndergroundPathEntranceRoute7CopyBlocks: ; 5c080 (17:4080) +UndergroundPathEntranceRoute6Blocks: ; 5c080 (17:4080) +UndergroundPathEntranceRoute5Blocks: ; 5c080 (17:4080) + INCBIN "maps/undergroundpathentranceroute5.blk" Route2GateBlocks: ; 5c090 (17:4090) ViridianForestEntranceBlocks: ; 5c090 (17:4090) ViridianForestExitBlocks: ; 5c090 (17:4090) INCBIN "maps/viridianforestexit.blk" -RedsHouse2F_h: ; 5c0a4 (17:40a4) - db REDS_HOUSE_2 ; tileset - db REDS_HOUSE_2F_HEIGHT, REDS_HOUSE_2F_WIDTH ; dimensions - dw RedsHouse2FBlocks, RedsHouse2FTextPointers, RedsHouse2FScript - db $00 ; no connections - dw RedsHouse2FObject +INCLUDE "data/mapHeaders/redshouse2f.asm" -RedsHouse2FScript: ; 5c0b0 (17:40b0) - call EnableAutoTextBoxDrawing - ld hl,RedsHouse2FScriptPointers - ld a,[W_REDSHOUSE2CURSCRIPT] - jp CallFunctionInTable +INCLUDE "scripts/redshouse2f.asm" -RedsHouse2FScriptPointers: ; 5c0bc (17:40bc) - dw RedsHouse2FScript0 - dw RedsHouse2FScript1 - -RedsHouse2FScript0: ; 5c0c0 (17:40c0) - xor a - ld [H_CURRENTPRESSEDBUTTONS],a - ld a,8 - ld [$D528],a - ld a,1 - ld [W_REDSHOUSE2CURSCRIPT],a - ret - -RedsHouse2FScript1: ; 5c0ce (17:40ce) - ret - -RedsHouse2FTextPointers: ; 5c0cf (17:40cf) - db "@" - -RedsHouse2FObject: ; 0x5c0d0 ? - db $0A ; border tile - - db 1 ; warps - db 1, 7, 2, REDS_HOUSE_1F - - db 0 ; signs - - db 0 ; people - - ; warp-to - EVENT_DISP REDS_HOUSE_2F_WIDTH, 1, 7 +INCLUDE "data/mapObjects/redshouse2f.asm" Func_5c0dc: ; 5c0dc (17:40dc) ld a, $4b @@ -90082,3438 +47848,191 @@ Func_5c0dc: ; 5c0dc (17:40dc) ld [wPokedexOwned], a ; $d2f7 ret -Museum1F_h: ; 0x5c0eb to 0x5c0f7 (12 bytes) (id=52) - db MUSEUM ; tileset - db MUSEUM_1F_HEIGHT, MUSEUM_1F_WIDTH ; dimensions (y, x) - dw Museum1FBlocks, Museum1FTextPointers, Museum1FScript ; blocks, texts, scripts - db $00 ; connections - dw Museum1FObject ; objects - -Museum1FScript: ; 5c0f7 (17:40f7) - ld a, $1 - ld [$cf0c], a - xor a - ld [$cc3c], a - ld hl, Museum1FScriptPointers - ld a, [W_MUSEUM1FCURSCRIPT] - jp CallFunctionInTable - -Museum1FScriptPointers: ; 5c109 (17:4109) - dw Museum1FScript0 - dw Museum1FScript1 - -Museum1FScript0: ; 5c10d (17:410d) - ld a, [$d361] - cp $4 - ret nz - ld a, [$d362] - cp $9 - jr z, .asm_5c120 ; 0x5c118 $6 - ld a, [$d362] - cp $a - ret nz -.asm_5c120 - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - ld a, $1 - ld [$ff8c], a - jp DisplayTextID - -Museum1FScript1: ; 5c12a (17:412a) - ret - -Museum1FTextPointers: ; 5c12b (17:412b) - dw Museum1FText1 - dw Museum1FText2 - dw Museum1FText3 - dw Museum1FText4 - dw Museum1FText5 - -Museum1FText1: ; 5c135 (17:4135) - db $8 - ld a, [$d361] - cp $4 - jr nz, asm_8774b ; 0x5c13b $a - ld a, [$d362] - cp $d - jp z, Func_5c1f9 - jr asm_b8709 ; 0x5c145 $1c -asm_8774b: ; 5c147 (17:4147) - cp $3 - jr nz, asm_d49e7 ; 0x5c149 $8 - ld a, [$d362] - cp $c - jp z, Func_5c1f9 -asm_d49e7: ; 5c153 (17:4153) - ld a, [$d754] - bit 0, a - jr nz, asm_31a16 ; 0x5c158 $10 - ld hl, UnnamedText_5c23d - call PrintText - jp asm_d1145 -asm_b8709: ; 5c163 (17:4163) - ld a, [$d754] - bit 0, a - jr z, asm_3ded4 ; 0x5c168 $9 -asm_31a16: ; 5c16a (17:416a) - ld hl, UnnamedText_5c242 - call PrintText - jp asm_d1145 -asm_3ded4: ; 5c173 (17:4173) - ld a, $13 - ld [$d125], a - call DisplayTextBoxID - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - ld hl, UnnamedText_5c21f - call PrintText - call YesNoChoice - ld a, [$cc26] - and a - jr nz, asm_de133 ; 0x5c18b $4d - xor a - ld [$ff9f], a - ld [$ffa0], a - ld a, $50 - ld [$ffa1], a - call HasEnoughMoney - jr nc, asm_0f3e3 ; 0x5c199 $9 - ld hl, UnnamedText_5c229 - call PrintText - jp asm_de133 -asm_0f3e3: ; 5c1a4 (17:41a4) - ld hl, UnnamedText_5c224 - call PrintText - ld hl, $d754 - set 0, [hl] - xor a - ld [$cd3d], a - ld [$cd3e], a - ld a, $50 - ld [$cd3f], a - ld hl, $cd3f - ld de, $d349 - ld c, $3 - ld a, $c - call Predef - ld a, $13 - ld [$d125], a - call DisplayTextBoxID - ld a, (SFX_02_5a - SFX_Headers_02) / 3 - call PlaySoundWaitForCurrent - call WaitForSoundToFinish - jr asm_0b094 ; 0x5c1d8 $18 -asm_de133: ; 5c1da (17:41da) - ld hl, UnnamedText_5c21a ; $421a - call PrintText - ld a, $1 - ld [$cd38], a - ld a, $80 - ld [$ccd3], a - call Func_3486 - call UpdateSprites - jr asm_d1145 ; 0x5c1f0 $25 -asm_0b094: ; 5c1f2 (17:41f2) - ld a, $1 - ld [W_MUSEUM1FCURSCRIPT], a - jr asm_d1145 ; 0x5c1f7 $1e - -Func_5c1f9: ; 5c1f9 (17:41f9) - ld hl, UnnamedText_5c22e - call PrintText - call YesNoChoice - ld a, [$cc26] - cp $0 - jr nz, asm_d1144 - ld hl, UnnamedText_5c233 - call PrintText - jr asm_d1145 ; 0x5c20f $6 -asm_d1144: ; 5c211 (17:4211) - ld hl, UnnamedText_5c238 - call PrintText -asm_d1145: ; 5c217 (17:4217) - jp TextScriptEnd - -UnnamedText_5c21a: ; 5c21a (17:421a) - TX_FAR _UnnamedText_5c21a - db "@" - -UnnamedText_5c21f: ; 5c21f (17:421f) - TX_FAR _UnnamedText_5c21f - db "@" - -UnnamedText_5c224: ; 5c224 (17:4224) - TX_FAR _UnnamedText_5c224 - db "@" - -UnnamedText_5c229: ; 5c229 (17:4229) - TX_FAR _UnnamedText_5c229 - db "@" - -UnnamedText_5c22e: ; 5c22e (17:422e) - TX_FAR _UnnamedText_5c22e - db "@" - -UnnamedText_5c233: ; 5c233 (17:4233) - TX_FAR _UnnamedText_5c233 - db "@" - -UnnamedText_5c238: ; 5c238 (17:4238) - TX_FAR _UnnamedText_5c238 - db "@" - -UnnamedText_5c23d: ; 5c23d (17:423d) - TX_FAR _UnnamedText_5c23d - db "@" - -UnnamedText_5c242: ; 5c242 (17:4242) - TX_FAR _UnnamedText_5c242 - db "@" - -Museum1FText2: ; 5c247 (17:4247) - db $08 ; asm - ld hl, UnnamedText_5c251 - call PrintText - jp TextScriptEnd - -UnnamedText_5c251: ; 5c251 (17:4251) - TX_FAR _UnnamedText_5c251 - db "@" - -Museum1FText3: ; 5c256 (17:4256) - db $08 ; asm - ld a, [$d754] - bit 1, a - jr nz, .asm_16599 ; 0x5c25c - ld hl, UnnamedText_5c28e - call PrintText - ld bc, (OLD_AMBER << 8) | 1 - call GiveItem - jr nc, .BagFull - ld hl, $d754 - set 1, [hl] - ld a, $34 - ld [$cc4d], a - ld a, $11 - call Predef - ld hl, ReceivedOldAmberText - jr .asm_52e0f ; 0x5c27e -.BagFull - ld hl, UnnamedText_5c29e - jr .asm_52e0f ; 0x5c283 -.asm_16599 ; 0x5c285 - ld hl, UnnamedText_5c299 -.asm_52e0f ; 0x5c288 - call PrintText - jp TextScriptEnd - -UnnamedText_5c28e: ; 5c28e (17:428e) - TX_FAR _UnnamedText_5c28e - db "@" - -ReceivedOldAmberText: ; 5c293 (17:4293) - TX_FAR _ReceivedOldAmberText ; 0x96790 - db $0B, "@" - -UnnamedText_5c299: ; 5c299 (17:4299) - TX_FAR _UnnamedText_5c299 - db "@" - -UnnamedText_5c29e: ; 5c29e (17:429e) - TX_FAR _UnnamedText_5c29e - db "@" - -Museum1FText4: ; 5c2a3 (17:42a3) - db $08 ; asm - ld hl, UnnamedText_5c2ad - call PrintText - jp TextScriptEnd - -UnnamedText_5c2ad: ; 5c2ad (17:42ad) - TX_FAR _UnnamedText_5c2ad - db "@" - -Museum1FText5: ; 5c2b2 (17:42b2) - db $08 ; asm - ld hl, UnnamedText_5c2bc - call PrintText - jp TextScriptEnd - -UnnamedText_5c2bc: ; 5c2bc (17:42bc) - TX_FAR _UnnamedText_5c2bc - db "@" - -Museum1FObject: ; 0x5c2c1 (size=74) - db $a ; border tile - - db $5 ; warps - db $7, $a, $0, $ff - db $7, $b, $0, $ff - db $7, $10, $1, $ff - db $7, $11, $1, $ff - db $7, $7, $0, MUSEUM_2F - - db $0 ; signs - - db $5 ; people - db SPRITE_OAK_AIDE, $4 + 4, $c + 4, $ff, $d2, $1 ; person - db SPRITE_GAMBLER, $4 + 4, $1 + 4, $ff, $ff, $2 ; person - db SPRITE_OAK_AIDE, $2 + 4, $f + 4, $ff, $d0, $3 ; person - db SPRITE_OAK_AIDE, $4 + 4, $11 + 4, $ff, $ff, $4 ; person - db SPRITE_OLD_AMBER, $2 + 4, $10 + 4, $ff, $ff, $5 ; person - - ; warp-to - EVENT_DISP MUSEUM_1F_WIDTH, $7, $a - EVENT_DISP MUSEUM_1F_WIDTH, $7, $b - EVENT_DISP MUSEUM_1F_WIDTH, $7, $10 - EVENT_DISP MUSEUM_1F_WIDTH, $7, $11 - EVENT_DISP MUSEUM_1F_WIDTH, $7, $7 ; MUSEUM_2F - -Museum2F_h: ; 0x5c30b to 0x5c317 (12 bytes) (id=53) - db MUSEUM ; tileset - db MUSEUM_2F_HEIGHT, MUSEUM_2F_WIDTH ; dimensions (y, x) - dw Museum2FBlocks, Museum2FTextPointers, Museum2FScript ; blocks, texts, scripts - db $00 ; connections - dw Museum2FObject ; objects - -Museum2FScript: ; 5c317 (17:4317) - jp EnableAutoTextBoxDrawing - -Museum2FTextPointers: ; 5c31a (17:431a) - dw Museum2FText1 - dw Museum2FText2 - dw Museum2FText3 - dw Museum2FText4 - dw Museum2FText5 - dw Museum2FText6 - dw Museum2FText7 - -Museum2FText1: ; 5c328 (17:4328) - TX_FAR _Museum2FText1 - db "@" - -Museum2FText2: ; 5c32d (17:432d) - TX_FAR _Museum2FText2 - db "@" - -Museum2FText3: ; 5c332 (17:4332) - TX_FAR _Museum2FText3 - db "@" - -Museum2FText4: ; 5c337 (17:4337) - TX_FAR _Museum2FText4 - db "@" - -Museum2FText5: ; 5c33c (17:433c) - TX_FAR _Museum2FText5 - db "@" - -Museum2FText6: ; 5c341 (17:4341) - TX_FAR _Museum2FText6 - db "@" - -Museum2FText7: ; 5c346 (17:4346) - TX_FAR _Museum2FText7 - db "@" - -Museum2FObject: ; 0x5c34b (size=48) - db $a ; border tile - - db $1 ; warps - db $7, $7, $4, MUSEUM_1F - - db $2 ; signs - db $2, $b, $6 ; Museum2FText6 - db $5, $2, $7 ; Museum2FText7 - - db $5 ; people - db SPRITE_BUG_CATCHER, $7 + 4, $1 + 4, $fe, $2, $1 ; person - db SPRITE_OLD_PERSON, $5 + 4, $0 + 4, $ff, $d0, $2 ; person - db SPRITE_OAK_AIDE, $5 + 4, $7 + 4, $ff, $d0, $3 ; person - db SPRITE_BRUNETTE_GIRL, $5 + 4, $b + 4, $ff, $ff, $4 ; person - db SPRITE_HIKER, $5 + 4, $c + 4, $ff, $d0, $5 ; person - - ; warp-to - EVENT_DISP MUSEUM_2F_WIDTH, $7, $7 ; MUSEUM_1F - -PewterGym_h: ; 0x5c37b to 0x5c387 (12 bytes) (id=54) - db GYM ; tileset - db PEWTER_GYM_HEIGHT, PEWTER_GYM_WIDTH ; dimensions (y, x) - dw PewterGymBlocks, PewterGymTextPointers, PewterGymScript ; blocks, texts, scripts - db $00 ; connections - dw PewterGymObject ; objects - -PewterGymScript: ; 5c387 (17:4387) - ld hl, $d126 - bit 6, [hl] - res 6, [hl] - call nz, PewterGymScript_5c3a4 - call EnableAutoTextBoxDrawing - ld hl, PewterGymTrainerHeaders - ld de, PewterGymScriptPointers - ld a, [W_PEWTERGYMCURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_PEWTERGYMCURSCRIPT], a - ret - -PewterGymScript_5c3a4: ; 5c3a4 (17:43a4) - ld hl, Gym1CityName ; $43ad - ld de, Gym1LeaderName ; $43b9 - jp LoadGymLeaderAndCityName - -Gym1CityName: ; 5c3ad (17:43ad) - db "PEWTER CITY@" - -Gym1LeaderName: ; 5c3b9 (17:43b9) - db "BROCK@" - -Func_5c3bf: ; 5c3bf (17:43bf) - xor a - ld [wJoypadForbiddenButtonsMask], a - ld [W_PEWTERGYMCURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -PewterGymScriptPointers: ; 5c3ca (17:43ca) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - dw PewterGymScript3 - -PewterGymScript3: ; 5c3d2 (17:43d2) - ld a, [W_ISINBATTLE] ; $d057 - cp $ff - jp z, Func_5c3bf - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - -Func_5c3df: ; 5c3df (17:43df) - ld a, $4 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - ld hl, $d755 - set 7, [hl] - ld bc, (TM_34 << 8) | 1 - call GiveItem - jr nc, .BagFull - ld a, $5 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - ld hl, $d755 - set 6, [hl] - jr .asm_5c408 -.BagFull - ld a, $6 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID -.asm_5c408 - ld hl, W_OBTAINEDBADGES - set 0, [hl] - ld hl, $d72a - set 0, [hl] - - ld a, $4 - ld [$cc4d], a - ld a, $11 - call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7)) - ld a, $22 - ld [$cc4d], a - ld a, $11 - call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7)) - - ld hl, $d7eb - res 0, [hl] - res 7, [hl] - - ; deactivate gym trainers - ld hl, $d755 - set 2, [hl] - - jp Func_5c3bf - -PewterGymTextPointers: ; 5c435 (17:4435) - dw PewterGymText1 - dw PewterGymText2 - dw PewterGymText3 - dw PewterGymText4 - dw PewterGymText5 - dw PewterGymText6 - -PewterGymTrainerHeaders: ; 5c441 (17:4441) -PewterGymTrainerHeader0: ; 5c441 (17:4441) - db $2 ; flag's bit - db ($5 << 4) ; trainer's view range - dw $d755 ; flag's byte - dw PewterGymBattleText1 ; 0x44d0 TextBeforeBattle - dw PewterGymAfterBattleText1 ; 0x44da TextAfterBattle - dw PewterGymEndBattleText1 ; 0x44d5 TextEndBattle - dw PewterGymEndBattleText1 ; 0x44d5 TextEndBattle - - db $ff - -PewterGymText1: ; 5c44e (17:444e) - db $08 ; asm - ld a, [$d755] - bit 7, a - jr z, .asm_4a735 ; 0x5c454 - bit 6, a - jr nz, .asm_ff7d0 ; 0x5c458 - call z, Func_5c3df - call DisableWaitingAfterTextDisplay - jr .asm_e0ffb ; 0x5c460 -.asm_ff7d0 ; 0x5c462 - ld hl, UnnamedText_5c4a3 - call PrintText - jr .asm_e0ffb ; 0x5c468 -.asm_4a735 ; 0x5c46a - ld hl, UnnamedText_5c49e - call PrintText - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, UnnamedText_5c4bc - ld de, UnnamedText_5c4bc - call PreBattleSaveRegisters - ldh a, [$8c] - ld [$cf13], a - call EngageMapTrainer - call InitBattleEnemyParameters - ld a, $1 - ld [$d05c], a - xor a - ldh [$b4], a - ld a, $3 - ld [W_PEWTERGYMCURSCRIPT], a - ld [W_CURMAPSCRIPT], a -.asm_e0ffb ; 0x5c49b - jp TextScriptEnd - -UnnamedText_5c49e: ; 5c49e (17:449e) - TX_FAR _UnnamedText_5c49e - db "@" - -UnnamedText_5c4a3: ; 5c4a3 (17:44a3) - TX_FAR _UnnamedText_5c4a3 - db "@" - -PewterGymText4: ; 5c4a8 (17:44a8) - TX_FAR _TM34PreReceiveText - db "@" - -PewterGymText5: ; 5c4ad (17:44ad) - TX_FAR _ReceivedTM34Text ; 0x980ad - db $0B - TX_FAR _TM34ExplanationText ; 0x980c0 - db "@" +INCLUDE "data/mapHeaders/museum1f.asm" -PewterGymText6: ; 5c4b7 (17:44b7) - TX_FAR _TM34NoRoomText - db "@" +INCLUDE "scripts/museum1f.asm" -UnnamedText_5c4bc: ; 5c4bc (17:44bc) - TX_FAR _UnnamedText_5c4bc ; 0x981c9 - db $0B - TX_FAR _UnnamedText_5c4c1 ; 0x98232 - db "@" +INCLUDE "data/mapObjects/museum1f.asm" -PewterGymText2: ; 5c4c6 (17:44c6) - db $08 ; asm - ld hl, PewterGymTrainerHeader0 - call TalkToTrainer - jp TextScriptEnd +INCLUDE "data/mapHeaders/museum2f.asm" -PewterGymBattleText1: ; 5c4d0 (17:44d0) - TX_FAR _PewterGymBattleText1 - db "@" +INCLUDE "scripts/museum2f.asm" -PewterGymEndBattleText1: ; 5c4d5 (17:44d5) - TX_FAR _PewterGymEndBattleText1 - db "@" +INCLUDE "data/mapObjects/museum2f.asm" -PewterGymAfterBattleText1: ; 5c4da (17:44da) - TX_FAR _PewterGymAfterBattleText1 - db "@" +INCLUDE "data/mapHeaders/pewtergym.asm" -PewterGymText3: ; 5c4df (17:44df) - db $08 ; asm - ld a, [$d72a] - bit 0, a - jr nz, .asm_71369 ; 0x5c4e5 - ld hl, UnnamedText_5c515 - call PrintText - call YesNoChoice - ld a, [$cc26] - and a - jr nz, .asm_6123a ; 0x5c4f4 - ld hl, UnnamedText_5c51a - call PrintText - jr .asm_d1578 ; 0x5c4fc -.asm_6123a ; 0x5c4fe - ld hl, UnnamedText_5c524 - call PrintText -.asm_d1578 ; 0x5c504 - ld hl, UnnamedText_5c51f - call PrintText - jr .asm_07013 ; 0x5c50a -.asm_71369 ; 0x5c50c - ld hl, UnnamedText_5c529 - call PrintText -.asm_07013 ; 0x5c512 - jp TextScriptEnd +INCLUDE "scripts/pewtergym.asm" -UnnamedText_5c515: ; 5c515 (17:4515) - TX_FAR _UnnamedText_5c515 - db "@" - -UnnamedText_5c51a: ; 5c51a (17:451a) - TX_FAR _UnnamedText_5c51a - db "@" - -UnnamedText_5c51f: ; 5c51f (17:451f) - TX_FAR _UnnamedText_5c51f - db "@" - -UnnamedText_5c524: ; 5c524 (17:4524) - TX_FAR _UnnamedText_5c524 - db "@" - -UnnamedText_5c529: ; 5c529 (17:4529) - TX_FAR _UnnamedText_5c529 - db "@" - -PewterGymObject: ; 0x5c52e (size=42) - db $3 ; border tile - - db $2 ; warps - db $d, $4, $2, $ff - db $d, $5, $2, $ff - - db $0 ; signs - - db $3 ; people - db SPRITE_BLACK_HAIR_BOY_2, $1 + 4, $4 + 4, $ff, $d0, $41, BROCK + $C8, $1 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $6 + 4, $3 + 4, $ff, $d3, $42, JR__TRAINER_M + $C8, $1 ; trainer - db SPRITE_GYM_HELPER, $a + 4, $7 + 4, $ff, $d0, $3 ; person - - ; warp-to - EVENT_DISP PEWTER_GYM_WIDTH, $d, $4 - EVENT_DISP PEWTER_GYM_WIDTH, $d, $5 +INCLUDE "data/mapObjects/pewtergym.asm" PewterGymBlocks: ; 5c558 (17:4558) INCBIN "maps/pewtergym.blk" -PewterPokecenter_h: ; 0x5c57b to 0x5c587 (12 bytes) (id=58) - db POKECENTER ; tileset - db PEWTER_POKECENTER_HEIGHT, PEWTER_POKECENTER_WIDTH ; dimensions (y, x) - dw PewterPokecenterBlocks, PewterPokecenterTextPointers, PewterPokecenterScript ; blocks, texts, scripts - db $00 ; connections - dw PewterPokecenterObject ; objects +INCLUDE "data/mapHeaders/pewterpokecenter.asm" -PewterPokecenterScript: ; 5c587 (17:4587) - call Func_22fa - jp EnableAutoTextBoxDrawing +INCLUDE "scripts/pewterpokecenter.asm" -PewterPokecenterTextPointers: ; 5c58d (17:458d) - dw PewterPokecenterText1 - dw PewterPokecenterText2 - dw PewterPokecenterText3 - dw PewterPokecenterText4 +INCLUDE "data/mapObjects/pewterpokecenter.asm" -PewterPokecenterText1: ; 5c595 (17:4595) - db $ff +INCLUDE "data/mapHeaders/ceruleanpokecenter.asm" -PewterPokecenterText2: ; 5c596 (17:4596) - TX_FAR _PewterPokecenterText1 - db "@" +INCLUDE "scripts/ceruleanpokecenter.asm" -PewterPokecenterText3: ; 5c59b (17:459b) - db $8 - ld a, $1 - ld [$cc3c], a - ld hl, PewterPokecenterText5 - call PrintText - ld a, $ff - call PlaySound - ld c, $20 - call DelayFrames - ld hl, Unknown_5c608 ; $4608 - ld de, $cd3f - ld bc, $0004 - call CopyData - ld a, [$c132] - ld hl, $cd3f -.asm_5c5c3 - cp [hl] - inc hl - jr nz, .asm_5c5c3 ; 0x5c5c5 $fc - dec hl - push hl - ld c, BANK(Music_JigglypuffSong) - ld a, MUSIC_JIGGLYPUFF_SONG - call PlayMusic - pop hl -.asm_5c5d1 - ld a, [hl] - ld [$c132], a - push hl - ld hl, $cd3f - ld de, $cd3e - ld bc, $0004 - call CopyData - ld a, [$cd3e] - ld [$cd42], a - pop hl - ld c, $18 - call DelayFrames - ld a, [$c026] - ld b, a - ld a, [$c027] - or b - jr nz, .asm_5c5d1 ; 0x5c5f6 $d9 - ld c, $30 - call DelayFrames - call Func_2307 - jp TextScriptEnd - -PewterPokecenterText5: ; 5c603 (17:4603) - TX_FAR _PewterPokecenterText5 ; 0x98744 - db "@" - -Unknown_5c608: ; 5c608 (17:4608) - db $30, $38, $34, $3c - -PewterPokecenterText4: ; 5c60c (17:460c) - db $f6 - -PewterPokecenterObject: ; 0x5c60d (size=44) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $6, $ff - db $7, $4, $6, $ff - - db $0 ; signs - - db $4 ; people - db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person - db SPRITE_GENTLEMAN, $7 + 4, $b + 4, $ff, $d2, $2 ; person - db SPRITE_CLEFAIRY, $3 + 4, $1 + 4, $ff, $d0, $3 ; person - db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person - - ; warp-to - EVENT_DISP PEWTER_POKECENTER_WIDTH, $7, $3 - EVENT_DISP PEWTER_POKECENTER_WIDTH, $7, $4 - -CeruleanPokecenter_h: ; 0x5c639 to 0x5c645 (12 bytes) (id=64) - db POKECENTER ; tileset - db CERULEAN_POKECENTER_HEIGHT, CERULEAN_POKECENTER_WIDTH ; dimensions (y, x) - dw CeruleanPokecenterBlocks, CeruleanPokecenterTextPointers, CeruleanPokecenterScript ; blocks, texts, scripts - db $00 ; connections - dw CeruleanPokecenterObject ; objects - -CeruleanPokecenterScript: ; 5c645 (17:4645) - call Func_22fa - jp EnableAutoTextBoxDrawing - -CeruleanPokecenterTextPointers: ; 5c64b (17:464b) - dw CeruleanPokecenterText1 - dw CeruleanPokecenterText2 - dw CeruleanPokecenterText3 - dw CeruleanPokecenterText4 - -CeruleanPokecenterText4: ; 5c653 (17:4653) - db $f6 - -CeruleanPokecenterText1: ; 5c654 (17:4654) - db $ff - -CeruleanPokecenterText2: ; 5c655 (17:4655) - TX_FAR _CeruleanPokecenterText1 - db "@" - -CeruleanPokecenterText3: ; 5c65a (17:465a) - TX_FAR _CeruleanPokecenterText3 - db "@" - -CeruleanPokecenterObject: ; 0x5c65f (size=44) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $2, $ff - db $7, $4, $2, $ff - - db $0 ; signs - - db $4 ; people - db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person - db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $a + 4, $fe, $0, $2 ; person - db SPRITE_GENTLEMAN, $3 + 4, $4 + 4, $ff, $d0, $3 ; person - db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person - - ; warp-to - EVENT_DISP CERULEAN_POKECENTER_WIDTH, $7, $3 - EVENT_DISP CERULEAN_POKECENTER_WIDTH, $7, $4 +INCLUDE "data/mapObjects/ceruleanpokecenter.asm" CeruleanPokecenterBlocks: ; 5c68b (17:468b) INCBIN "maps/ceruleanpokecenter.blk" -CeruleanGym_h: ; 0x5c6a7 to 0x5c6b3 (12 bytes) (id=65) - db GYM ; tileset - db CERULEAN_GYM_HEIGHT, CERULEAN_GYM_WIDTH ; dimensions (y, x) - dw CeruleanGymBlocks, CeruleanGymTextPointers, CeruleanGymScript ; blocks, texts, scripts - db $00 ; connections - dw CeruleanGymObject ; objects - -CeruleanGymScript: ; 5c6b3 (17:46b3) - ld hl, $d126 - bit 6, [hl] - res 6, [hl] - call nz, CeruleanGymScript_5c6d0 - call EnableAutoTextBoxDrawing - ld hl, CeruleanGymTrainerHeaders - ld de, CeruleanGymScriptPointers - ld a, [W_CERULEANGYMCURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_CERULEANGYMCURSCRIPT], a - ret - -CeruleanGymScript_5c6d0: ; 5c6d0 (17:46d0) - ld hl, Gym2CityName ; $46d9 - ld de, Gym2LeaderName ; $46e7 - jp LoadGymLeaderAndCityName - -Gym2CityName: ; 5c6d9 (17:46d9) - db "CERULEAN CITY@" - -Gym2LeaderName: ; 5c6e7 (17:46e7) - db "MISTY@" - -Func_5c6ed: ; 5c6ed (17:46ed) - xor a - ld [wJoypadForbiddenButtonsMask], a - ld [W_CERULEANGYMCURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -CeruleanGymScriptPointers: ; 5c6f8 (17:46f8) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - dw CeruleanGymScript3 - -CeruleanGymScript3: ; 5c700 (17:4700) - ld a, [W_ISINBATTLE] ; $d057 - cp $ff - jp z, Func_5c6ed - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - -Func_5c70d: ; 5c70d (17:470d) - ld a, $5 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - ld hl, $d75e - set 7, [hl] - ld bc, (TM_11 << 8) | 1 - call GiveItem - jr nc, .BagFull - ld a, $6 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - ld hl, $d75e - set 6, [hl] - jr .asm_5c736 -.BagFull - ld a, $7 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID -.asm_5c736 - ld hl, W_OBTAINEDBADGES - set 1, [hl] - ld hl, $d72a - set 1, [hl] - - ; deactivate gym trainers - ld hl, $d75e - set 2, [hl] - set 3, [hl] - - jp Func_5c6ed - -CeruleanGymTextPointers: ; 5c74a (17:474a) - dw CeruleanGymText1 - dw CeruleanGymText2 - dw CeruleanGymText3 - dw CeruleanGymText4 - dw CeruleanGymText5 - dw CeruleanGymText6 - dw CeruleanGymText7 - -CeruleanGymTrainerHeaders: ; 5c758 (17:4758) -CeruleanGymTrainerHeader0: ; 5c758 (17:4758) - db $2 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d75e ; flag's byte - dw CeruleanGymBattleText1 ; 0x47e9 TextBeforeBattle - dw CeruleanGymAfterBattleText1 ; 0x47f3 TextAfterBattle - dw CeruleanGymEndBattleText1 ; 0x47ee TextEndBattle - dw CeruleanGymEndBattleText1 ; 0x47ee TextEndBattle - -CeruleanGymTrainerHeader1: ; 5c764 (17:4764) - db $3 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d75e ; flag's byte - dw CeruleanGymBattleText2 ; 0x4802 TextBeforeBattle - dw CeruleanGymAfterBattleText2 ; 0x480c TextAfterBattle - dw CeruleanGymEndBattleText2 ; 0x4807 TextEndBattle - dw CeruleanGymEndBattleText2 ; 0x4807 TextEndBattle - - db $ff - -CeruleanGymText1: ; 5c771 (17:4771) - db $08 ; asm - ld a, [$d75e] - bit 7, a - jr z, .asm_10854 ; 0x5c777 - bit 6, a - jr nz, .asm_37a1b ; 0x5c77b - call z, Func_5c70d - call DisableWaitingAfterTextDisplay - jr .asm_95b04 ; 0x5c783 -.asm_37a1b ; 0x5c785 - ld hl, UnnamedText_5c7c3 - call PrintText - jr .asm_95b04 ; 0x5c78b -.asm_10854 ; 0x5c78d - ld hl, UnnamedText_5c7be - call PrintText - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, UnnamedText_5c7d8 - ld de, UnnamedText_5c7d8 - call PreBattleSaveRegisters - ldh a, [$8c] - ld [$cf13], a - call EngageMapTrainer - call InitBattleEnemyParameters - ld a, $2 - ld [$d05c], a - xor a - ldh [$b4], a - ld a, $3 - ld [W_CERULEANGYMCURSCRIPT], a -.asm_95b04 ; 0x5c7bb - jp TextScriptEnd - -UnnamedText_5c7be: ; 5c7be (17:47be) - TX_FAR _UnnamedText_5c7be - db "@" - -UnnamedText_5c7c3: ; 5c7c3 (17:47c3) - TX_FAR _UnnamedText_5c7c3 - db "@" - -CeruleanGymText5: ; 5c7c8 (17:47c8) - TX_FAR _UnnamedText_5c7c8 - db "@" - -CeruleanGymText6: ; 5c7cd (17:47cd) -ReceivedTM11Text: ; 5c7cd (17:47cd) - TX_FAR _ReceivedTM11Text ; 0x98b7d - db $0B, "@" +INCLUDE "data/mapHeaders/ceruleangym.asm" -CeruleanGymText7: ; 5c7d3 (17:47d3) - TX_FAR _UnnamedText_5c7d3 - db "@" +INCLUDE "scripts/ceruleangym.asm" -UnnamedText_5c7d8: ; 5c7d8 (17:47d8) - TX_FAR _UnnamedText_5c7d8 ; 0x98bb0 - db $11, $6, "@" - -CeruleanGymText2: ; 5c7df (17:47df) - db $08 ; asm - ld hl, CeruleanGymTrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -CeruleanGymBattleText1: ; 5c7e9 (17:47e9) - TX_FAR _CeruleanGymBattleText1 - db "@" - -CeruleanGymEndBattleText1: ; 5c7ee (17:47ee) - TX_FAR _CeruleanGymEndBattleText1 - db "@" - -CeruleanGymAfterBattleText1: ; 5c7f3 (17:47f3) - TX_FAR _CeruleanGymAfterBattleText1 - db "@" - -CeruleanGymText3: ; 5c7f8 (17:47f8) - db $08 ; asm - ld hl, CeruleanGymTrainerHeader1 - call TalkToTrainer - jp TextScriptEnd - -CeruleanGymBattleText2: ; 5c802 (17:4802) - TX_FAR _CeruleanGymBattleText2 - db "@" - -CeruleanGymEndBattleText2: ; 5c807 (17:4807) - TX_FAR _CeruleanGymEndBattleText2 - db "@" - -CeruleanGymAfterBattleText2: ; 5c80c (17:480c) - TX_FAR _CeruleanGymAfterBattleText2 - db "@" - -CeruleanGymText4: ; 5c811 (17:4811) - db $08 ; asm - ld a, [$d75e] - bit 7, a - jr nz, .asm_f80ce ; 0x5c817 - ld hl, UnnamedText_5c82a - call PrintText - jr .asm_18a31 ; 0x5c81f -.asm_f80ce ; 0x5c821 - ld hl, UnnamedText_5c82f - call PrintText -.asm_18a31 ; 0x5c827 - jp TextScriptEnd - -UnnamedText_5c82a: ; 5c82a (17:482a) - TX_FAR _UnnamedText_5c82a - db "@" - -UnnamedText_5c82f: ; 5c82f (17:482f) - TX_FAR _UnnamedText_5c82f - db "@" - -CeruleanGymObject: ; 0x5c834 (size=50) - db $3 ; border tile - - db $2 ; warps - db $d, $4, $3, $ff - db $d, $5, $3, $ff - - db $0 ; signs - - db $4 ; people - db SPRITE_BRUNETTE_GIRL, $2 + 4, $4 + 4, $ff, $d0, $41, MISTY + $C8, $1 ; trainer - db SPRITE_LASS, $3 + 4, $2 + 4, $ff, $d3, $42, JR__TRAINER_F + $C8, $1 ; trainer - db SPRITE_SWIMMER, $7 + 4, $8 + 4, $ff, $d2, $43, SWIMMER + $C8, $1 ; trainer - db SPRITE_GYM_HELPER, $a + 4, $7 + 4, $ff, $d0, $4 ; person - - ; warp-to - EVENT_DISP CERULEAN_GYM_WIDTH, $d, $4 - EVENT_DISP CERULEAN_GYM_WIDTH, $d, $5 +INCLUDE "data/mapObjects/ceruleangym.asm" CeruleanGymBlocks: ; 5c866 (17:4866) INCBIN "maps/ceruleangym.blk" -CeruleanMart_h: ; 0x5c889 to 0x5c895 (12 bytes) (id=67) - db MART ; tileset - db CERULEAN_MART_HEIGHT, CERULEAN_MART_WIDTH ; dimensions (y, x) - dw CeruleanMartBlocks, CeruleanMartTextPointers, CeruleanMartScript ; blocks, texts, scripts - db $00 ; connections - dw CeruleanMartObject ; objects - -CeruleanMartScript: ; 5c895 (17:4895) - jp EnableAutoTextBoxDrawing +INCLUDE "data/mapHeaders/ceruleanmart.asm" -CeruleanMartTextPointers: ; 5c898 (17:4898) - dw CeruleanMartText1 - dw CeruleanMartText2 - dw CeruleanMartText3 - -CeruleanMartText2: ; 5c89e (17:489e) - TX_FAR _CeruleanMartText2 - db "@" +INCLUDE "scripts/ceruleanmart.asm" -CeruleanMartText3: ; 5c8a3 (17:48a3) - TX_FAR _CeruleanMartText3 - db "@" +INCLUDE "data/mapObjects/ceruleanmart.asm" -CeruleanMartObject: ; 0x5c8a8 (size=38) - db $0 ; border tile +INCLUDE "data/mapHeaders/lavenderpokecenter.asm" - db $2 ; warps - db $7, $3, $5, $ff - db $7, $4, $5, $ff +INCLUDE "scripts/lavenderpokecenter.asm" - db $0 ; signs +INCLUDE "data/mapObjects/lavenderpokecenter.asm" - db $3 ; people - db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person - db SPRITE_BLACK_HAIR_BOY_1, $4 + 4, $3 + 4, $fe, $1, $2 ; person - db SPRITE_LASS, $2 + 4, $6 + 4, $fe, $2, $3 ; person +INCLUDE "data/mapHeaders/lavendermart.asm" - ; warp-to - EVENT_DISP CERULEAN_MART_WIDTH, $7, $3 - EVENT_DISP CERULEAN_MART_WIDTH, $7, $4 +INCLUDE "scripts/lavendermart.asm" -LavenderPokecenter_h: ; 0x5c8ce to 0x5c8da (12 bytes) (id=141) - db POKECENTER ; tileset - db LAVENDER_POKECENTER_HEIGHT, LAVENDER_POKECENTER_WIDTH ; dimensions (y, x) - dw LavenderPokecenterBlocks, LavenderPokecenterTextPointers, LavenderPokecenterScript ; blocks, texts, scripts - db $00 ; connections - dw LavenderPokecenterObject ; objects +INCLUDE "data/mapObjects/lavendermart.asm" -LavenderPokecenterScript: ; 5c8da (17:48da) - call Func_22fa - jp EnableAutoTextBoxDrawing +INCLUDE "data/mapHeaders/vermilionpokecenter.asm" -LavenderPokecenterTextPointers: ; 5c8e0 (17:48e0) - dw LavenderPokecenterText1 - dw LavenderPokecenterText2 - dw LavenderPokecenterText3 - dw LavenderPokecenterText4 +INCLUDE "scripts/vermilionpokecenter.asm" -LavenderPokecenterText4: ; 5c8e8 (17:48e8) - db $f6 +INCLUDE "data/mapObjects/vermilionpokecenter.asm" -LavenderPokecenterText1: ; 5c8e9 (17:48e9) - db $ff +INCLUDE "data/mapHeaders/vermilionmart.asm" -LavenderPokecenterText2: ; 5c8ea (17:48ea) - TX_FAR _LavenderPokecenterText1 - db "@" +INCLUDE "scripts/vermilionmart.asm" -LavenderPokecenterText3: ; 5c8ef (17:48ef) - TX_FAR _LavenderPokecenterText3 - db "@" +INCLUDE "data/mapObjects/vermilionmart.asm" -LavenderPokecenterObject: ; 0x5c8f4 (size=44) - db $0 ; border tile +INCLUDE "data/mapHeaders/vermiliongym.asm" - db $2 ; warps - db $7, $3, $0, $ff - db $7, $4, $0, $ff +INCLUDE "scripts/vermiliongym.asm" - db $0 ; signs - - db $4 ; people - db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person - db SPRITE_GENTLEMAN, $3 + 4, $5 + 4, $ff, $ff, $2 ; person - db SPRITE_LITTLE_GIRL, $6 + 4, $2 + 4, $fe, $1, $3 ; person - db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person - - ; warp-to - EVENT_DISP LAVENDER_POKECENTER_WIDTH, $7, $3 - EVENT_DISP LAVENDER_POKECENTER_WIDTH, $7, $4 - -LavenderMart_h: ; 0x5c920 to 0x5c92c (12 bytes) (id=150) - db MART ; tileset - db LAVENDER_MART_HEIGHT, LAVENDER_MART_WIDTH ; dimensions (y, x) - dw LavenderMartBlocks, LavenderMartTextPointers, LavenderMartScript ; blocks, texts, scripts - db $00 ; connections - dw LavenderMartObject ; objects - -LavenderMartScript: ; 5c92c (17:492c) - jp EnableAutoTextBoxDrawing - -LavenderMartTextPointers: ; 5c92f (17:492f) - dw LavenderMartText1 - dw LavenderMartText2 - dw LavenderMartText3 - -LavenderMartText2: ; 5c935 (17:4935) - TX_FAR _LavenderMartText2 - db "@" - -LavenderMartText3: ; 5c93a (17:493a) - db $08 ; asm - ld a, [$d7e0] - bit 7, a - jr nz, .asm_c88d4 ; 0x5c940 - ld hl, UnnamedText_5c953 - call PrintText - jr .asm_6d225 ; 0x5c948 -.asm_c88d4 ; 0x5c94a - ld hl, UnnamedText_5c958 - call PrintText -.asm_6d225 ; 0x5c950 - jp TextScriptEnd - -UnnamedText_5c953: ; 5c953 (17:4953) - TX_FAR _UnnamedText_5c953 - db "@" - -UnnamedText_5c958: ; 5c958 (17:4958) - TX_FAR _UnnamedText_5c958 - db "@" - -LavenderMartObject: ; 0x5c95d (size=38) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $3, $ff - db $7, $4, $3, $ff - - db $0 ; signs - - db $3 ; people - db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person - db SPRITE_BALDING_GUY, $4 + 4, $3 + 4, $ff, $ff, $2 ; person - db SPRITE_BLACK_HAIR_BOY_1, $2 + 4, $7 + 4, $ff, $ff, $3 ; person - - ; warp-to - EVENT_DISP LAVENDER_MART_WIDTH, $7, $3 - EVENT_DISP LAVENDER_MART_WIDTH, $7, $4 - -VermilionPokecenter_h: ; 0x5c983 to 0x5c98f (12 bytes) (id=89) - db POKECENTER ; tileset - db VERMILION_POKECENTER_HEIGHT, VERMILION_POKECENTER_WIDTH ; dimensions (y, x) - dw VermilionPokecenterBlocks, VermilionPokecenterTextPointers, VermilionPokecenterScript ; blocks, texts, scripts - db $00 ; connections - dw VermilionPokecenterObject ; objects - -VermilionPokecenterScript: ; 5c98f (17:498f) - call Func_22fa - jp EnableAutoTextBoxDrawing - -VermilionPokecenterTextPointers: ; 5c995 (17:4995) - dw VermilionPokecenterText1 - dw VermilionPokecenterText2 - dw VermilionPokecenterText3 - dw VermilionPokecenterText4 - -VermilionPokecenterText1: ; 5c99d (17:499d) - db $ff - -VermilionPokecenterText2: ; 5c99e (17:499e) - TX_FAR _VermilionPokecenterText1 - db "@" - -VermilionPokecenterText3: ; 5c9a3 (17:49a3) - TX_FAR _VermilionPokecenterText3 - db "@" - -VermilionPokecenterText4: ; 5c9a8 (17:49a8) - db $f6 - -VermilionPokecenterObject: ; 0x5c9a9 (size=44) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $0, $ff - db $7, $4, $0, $ff - - db $0 ; signs - - db $4 ; people - db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person - db SPRITE_FISHER, $5 + 4, $a + 4, $ff, $ff, $2 ; person - db SPRITE_SAILOR, $4 + 4, $5 + 4, $ff, $ff, $3 ; person - db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person - - ; warp-to - EVENT_DISP VERMILION_POKECENTER_WIDTH, $7, $3 - EVENT_DISP VERMILION_POKECENTER_WIDTH, $7, $4 - -VermilionMart_h: ; 0x5c9d5 to 0x5c9e1 (12 bytes) (id=91) - db MART ; tileset - db VERMILION_MART_HEIGHT, VERMILION_MART_WIDTH ; dimensions (y, x) - dw VermilionMartBlocks, VermilionMartTextPointers, VermilionMartScript ; blocks, texts, scripts - db $00 ; connections - dw VermilionMartObject ; objects - -VermilionMartScript: ; 5c9e1 (17:49e1) - jp EnableAutoTextBoxDrawing - -VermilionMartTextPointers: ; 5c9e4 (17:49e4) - dw VermilionMartText1 - dw VermilionMartText2 - dw VermilionMartText3 - -VermilionMartText2: ; 5c9ea (17:49ea) - TX_FAR _VermilionMartText2 - db "@" - -VermilionMartText3: ; 5c9ef (17:49ef) - TX_FAR _VermilionMartText3 - db "@" - -VermilionMartObject: ; 0x5c9f4 (size=38) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $2, $ff - db $7, $4, $2, $ff - - db $0 ; signs - - db $3 ; people - db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person - db SPRITE_BLACK_HAIR_BOY_1, $6 + 4, $5 + 4, $ff, $ff, $2 ; person - db SPRITE_LASS, $3 + 4, $3 + 4, $fe, $2, $3 ; person - - ; warp-to - EVENT_DISP VERMILION_MART_WIDTH, $7, $3 - EVENT_DISP VERMILION_MART_WIDTH, $7, $4 - -VermilionGym_h: ; 0x5ca1a to 0x5ca26 (12 bytes) (id=92) - db GYM ; tileset - db VERMILION_GYM_HEIGHT, VERMILION_GYM_WIDTH ; dimensions (y, x) - dw VermilionGymBlocks, VermilionGymTextPointers, VermilionGymScript ; blocks, texts, scripts - db $00 ; connections - dw VermilionGymObject ; objects - -VermilionGymScript: ; 5ca26 (17:4a26) - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - push hl - call nz, VermilionGymScript_5ca4c - pop hl - bit 6, [hl] - res 6, [hl] - call nz, VermilionGymScript_5ca6d - call EnableAutoTextBoxDrawing - ld hl, VermilionGymTrainerHeader0 - ld de, VermilionGymScriptPointers - ld a, [W_VERMILIONGYMCURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_VERMILIONGYMCURSCRIPT], a - ret - -VermilionGymScript_5ca4c: ; 5ca4c (17:4a4c) - ld hl, Gym3CityName ; $4a55 - ld de, Gym3LeaderName ; $4a64 - jp LoadGymLeaderAndCityName - -Gym3CityName: ; 5ca55 (17:4a55) - db "VERMILION CITY@" - -Gym3LeaderName: ; 5ca64 (17:4a64) - db "LT.SURGE@" - -VermilionGymScript_5ca6d: ; 5ca6d (17:4a6d) - ld a, [$d773] - bit 0, a - jr nz, .asm_5ca78 - ld a, $24 - jr .asm_5ca7f -.asm_5ca78 - ld a, (SFX_02_57 - SFX_Headers_02) / 3 - call PlaySound - ld a, $5 -.asm_5ca7f - ld [$d09f], a - ld bc, $202 - ld a, $17 - jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) - -VermilionGymScript_5ca8a: ; 5ca8a (17:4a8a) - xor a - ld [wJoypadForbiddenButtonsMask], a - ld [W_VERMILIONGYMCURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -VermilionGymScriptPointers: ; 5ca95 (17:4a95) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - dw VermilionGymScript3 - -VermilionGymScript3: ; 5ca9d (17:4a9d) - ld a, [W_ISINBATTLE] ; $d057 - cp $ff - jp z, VermilionGymScript_5ca8a - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - -Func_5caaa: ; 5caaa (17:4aaa) - ld a, $6 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - ld hl, $d773 - set 7, [hl] - ld bc, (TM_24 << 8) | 1 - call GiveItem - jr nc, .BagFull - ld a, $7 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - ld hl, $d773 - set 6, [hl] - jr .asm_5cad3 -.BagFull - ld a, $8 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID -.asm_5cad3 - ld hl, W_OBTAINEDBADGES - set 2, [hl] - ld hl, $d72a - set 2, [hl] - - ; deactivate gym trainers - ld a, [$d773] - or %00011100 - ld [$d773], a - - jp VermilionGymScript_5ca8a - -VermilionGymTextPointers: ; 5cae8 (17:4ae8) - dw VermilionGymText1 - dw VermilionGymText2 - dw VermilionGymText3 - dw VermilionGymText4 - dw VermilionGymText5 - dw VermilionGymText6 - dw VermilionGymText7 - dw VermilionGymText8 - -VermilionGymTrainerHeaders: ; 5caf8 (17:4af8) -VermilionGymTrainerHeader0: ; 5caf8 (17:4af8) - db $2 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d773 ; flag's byte - dw VermilionGymBattleText1 ; 0x4b9a TextBeforeBattle - dw VermilionGymAfterBattleText1 ; 0x4ba4 TextAfterBattle - dw VermilionGymEndBattleText1 ; 0x4b9f TextEndBattle - dw VermilionGymEndBattleText1 ; 0x4b9f TextEndBattle - -VermilionGymTrainerHeader1: ; 5cb04 (17:4b04) - db $3 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d773 ; flag's byte - dw VermilionGymBattleText2 ; 0x4bb3 TextBeforeBattle - dw VermilionGymAfterBattleText2 ; 0x4bbd TextAfterBattle - dw VermilionGymEndBattleText2 ; 0x4bb8 TextEndBattle - dw VermilionGymEndBattleText2 ; 0x4bb8 TextEndBattle - -VermilionGymTrainerHeader2: ; 5cb10 (17:4b10) - db $4 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d773 ; flag's byte - dw VermilionGymBattleText3 ; 0x4bcc TextBeforeBattle - dw VermilionGymAfterBattleText3 ; 0x4bd6 TextAfterBattle - dw VermilionGymEndBattleText3 ; 0x4bd1 TextEndBattle - dw VermilionGymEndBattleText3 ; 0x4bd1 TextEndBattle - - db $ff - -VermilionGymText1: ; 5cb1d (17:4b1d) - db $08 ; asm - ld a, [$d773] - bit 7, a - jr z, .asm_7cc29 ; 0x5cb23 - bit 6, a - jr nz, .asm_41203 ; 0x5cb27 - call z, Func_5caaa - call DisableWaitingAfterTextDisplay - jr .asm_23621 ; 0x5cb2f -.asm_41203 ; 0x5cb31 - ld hl, UnnamedText_5cb72 - call PrintText - jr .asm_23621 ; 0x5cb37 -.asm_7cc29 ; 0x5cb39 - ld hl, UnnamedText_5cb6d - call PrintText - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, ReceivedThunderbadgeText - ld de, ReceivedThunderbadgeText - call PreBattleSaveRegisters - ldh a, [$8c] - ld [$cf13], a - call EngageMapTrainer - call InitBattleEnemyParameters - ld a, $3 - ld [$d05c], a - xor a - ldh [$b4], a - ld a, $3 - ld [W_VERMILIONGYMCURSCRIPT], a - ld [W_CURMAPSCRIPT], a -.asm_23621 ; 0x5cb6a - jp TextScriptEnd - -UnnamedText_5cb6d: ; 5cb6d (17:4b6d) - TX_FAR _UnnamedText_5cb6d - db "@" - -UnnamedText_5cb72: ; 5cb72 (17:4b72) - TX_FAR _UnnamedText_5cb72 - db "@" - -VermilionGymText6: ; 5cb77 (17:4b77) - TX_FAR _UnnamedText_5cb77 - db "@" - -VermilionGymText7: ; 5cb7c (17:4b7c) - TX_FAR _ReceivedTM24Text ; 0x9c0e0 - db $11 - TX_FAR _TM24ExplanationText ; 0x9c0f5 - db "@" - -VermilionGymText8: ; 5cb86 (17:4b86) - TX_FAR _TM24NoRoomText - db "@" - -ReceivedThunderbadgeText: ; 5cb8b (17:4b8b) - TX_FAR _ReceivedThunderbadgeText - db "@" - -VermilionGymText2: ; 5cb90 (17:4b90) - db $08 ; asm - ld hl, VermilionGymTrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -VermilionGymBattleText1: ; 5cb9a (17:4b9a) - TX_FAR _VermilionGymBattleText1 - db "@" - -VermilionGymEndBattleText1: ; 5cb9f (17:4b9f) - TX_FAR _VermilionGymEndBattleText1 - db "@" - -VermilionGymAfterBattleText1: ; 5cba4 (17:4ba4) - TX_FAR _VermilionGymAfterBattleText1 - db "@" - -VermilionGymText3: ; 5cba9 (17:4ba9) - db $08 ; asm - ld hl, VermilionGymTrainerHeader1 - call TalkToTrainer - jp TextScriptEnd - -VermilionGymBattleText2: ; 5cbb3 (17:4bb3) - TX_FAR _VermilionGymBattleText2 - db "@" - -VermilionGymEndBattleText2: ; 5cbb8 (17:4bb8) - TX_FAR _VermilionGymEndBattleText2 - db "@" - -VermilionGymAfterBattleText2: ; 5cbbd (17:4bbd) - TX_FAR _VermilionGymAfterBattleText2 - db "@" - -VermilionGymText4: ; 5cbc2 (17:4bc2) - db $08 ; asm - ld hl, VermilionGymTrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -VermilionGymBattleText3: ; 5cbcc (17:4bcc) - TX_FAR _VermilionGymBattleText3 - db "@" - -VermilionGymEndBattleText3: ; 5cbd1 (17:4bd1) - TX_FAR _VermilionGymEndBattleText3 - db "@" - -VermilionGymAfterBattleText3: ; 5cbd6 (17:4bd6) - TX_FAR _VermilionGymAfterBattleText3 - db "@" - -VermilionGymText5: ; 5cbdb (17:4bdb) - db $08 ; asm - ld a, [$d72a] - bit 2, a - jr nz, .asm_13b67 ; 0x5cbe1 - ld hl, UnnamedText_5cbf4 - call PrintText - jr .asm_c2b38 ; 0x5cbe9 -.asm_13b67 ; 0x5cbeb - ld hl, UnnamedText_5cbf9 - call PrintText -.asm_c2b38 ; 0x5cbf1 - jp TextScriptEnd - -UnnamedText_5cbf4: ; 5cbf4 (17:4bf4) - TX_FAR _UnnamedText_5cbf4 - db "@" - -UnnamedText_5cbf9: ; 5cbf9 (17:4bf9) - TX_FAR _UnnamedText_5cbf9 - db "@" - -VermilionGymObject: ; 0x5cbfe (size=58) - db $3 ; border tile - - db $2 ; warps - db $11, $4, $3, $ff - db $11, $5, $3, $ff - - db $0 ; signs - - db $5 ; people - db SPRITE_ROCKER, $1 + 4, $5 + 4, $ff, $d0, $41, LT__SURGE + $C8, $1 ; trainer - db SPRITE_GENTLEMAN, $6 + 4, $9 + 4, $ff, $d2, $42, GENTLEMAN + $C8, $3 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $8 + 4, $3 + 4, $ff, $d2, $43, ROCKER + $C8, $1 ; trainer - db SPRITE_SAILOR, $a + 4, $0 + 4, $ff, $d3, $44, SAILOR + $C8, $8 ; trainer - db SPRITE_GYM_HELPER, $e + 4, $4 + 4, $ff, $d0, $5 ; person - - ; warp-to - EVENT_DISP VERMILION_GYM_WIDTH, $11, $4 - EVENT_DISP VERMILION_GYM_WIDTH, $11, $5 +INCLUDE "data/mapObjects/vermiliongym.asm" VermilionGymBlocks: ; 5cc38 (17:4c38) INCBIN "maps/vermiliongym.blk" -CopycatsHouse2F_h: ; 0x5cc65 to 0x5cc71 (12 bytes) (id=176) - db REDS_HOUSE_2 ; tileset - db COPYCATS_HOUSE_2F_HEIGHT, COPYCATS_HOUSE_2F_WIDTH ; dimensions (y, x) - dw CopycatsHouse2FBlocks, CopycatsHouse2FTextPointers, CopycatsHouse2FScript ; blocks, texts, scripts - db $00 ; connections - dw CopycatsHouse2FObject ; objects - -CopycatsHouse2FScript: ; 5cc71 (17:4c71) - jp EnableAutoTextBoxDrawing - -CopycatsHouse2FTextPointers: ; 5cc74 (17:4c74) - dw CopycatsHouse2FText1 - dw CopycatsHouse2FText2 - dw CopycatsHouse2FText3 - dw CopycatsHouse2FText4 - dw CopycatsHouse2FText5 - dw CopycatsHouse2FText6 - dw CopycatsHouse2FText7 - -CopycatsHouse2FText1: ; 5cc82 (17:4c82) - db $08 ; asm - ld a, [$d7af] - bit 0, a - jr nz, .asm_7ccf3 ; 0x5cc88 - ld a, $1 - ld [$cc3c], a - ld hl, UnnamedText_5ccd4 - call PrintText - ld b, POKE_DOLL - call IsItemInBag - jr z, .asm_62ecd ; 0x5cc9a - ld hl, TM31PreReceiveText - call PrintText - ld bc, (TM_31 << 8) | 1 - call GiveItem - jr nc, .BagFull - ld hl, ReceivedTM31Text - call PrintText - ld a, $33 - ldh [$db], a - callba RemoveItemByID - ld hl, $d7af - set 0, [hl] - jr .asm_62ecd ; 0x5ccc1 -.BagFull - ld hl, TM31NoRoomText - call PrintText - jr .asm_62ecd ; 0x5ccc9 -.asm_7ccf3 ; 0x5cccb - ld hl, TM31ExplanationText2 - call PrintText -.asm_62ecd ; 0x5ccd1 - jp TextScriptEnd - -UnnamedText_5ccd4: ; 5ccd4 (17:4cd4) - TX_FAR _UnnamedText_5ccd4 - db "@" - -TM31PreReceiveText: ; 5ccd9 (17:4cd9) - TX_FAR _TM31PreReceiveText - db "@" +INCLUDE "data/mapHeaders/copycatshouse2f.asm" -ReceivedTM31Text: ; 5ccde (17:4cde) - TX_FAR _ReceivedTM31Text ; 0xa1675 - db $0B -TM31ExplanationText1: ; 5cce3 (17:4ce3) - TX_FAR _TM31ExplanationText1 ; 0xa1689 - db $d, "@" +INCLUDE "scripts/copycatshouse2f.asm" -TM31ExplanationText2: ; 5cce9 (17:4ce9) - TX_FAR _TM31ExplanationText2 ; 0xa16c5 - db "@" +INCLUDE "data/mapObjects/copycatshouse2f.asm" -TM31NoRoomText: ; 5ccee (17:4cee) - TX_FAR _TM31NoRoomText ; 0xa1733 - db $d, "@" +INCLUDE "data/mapHeaders/fightingdojo.asm" -CopycatsHouse2FText2: ; 5ccf4 (17:4cf4) - TX_FAR _CopycatsHouse2FText2 - db "@" - -CopycatsHouse2FText5: ; 5ccf9 (17:4cf9) -CopycatsHouse2FText4: ; 5ccf9 (17:4cf9) -CopycatsHouse2FText3: ; 5ccf9 (17:4cf9) - TX_FAR _CopycatsHouse2FText3 - db "@" - -CopycatsHouse2FText6: ; 5ccfe (17:4cfe) - TX_FAR _CopycatsHouse2FText6 - db "@" - -CopycatsHouse2FText7: ; 5cd03 (17:4d03) - db $08 ; asm - ld a, [$c109] - cp $4 - ld hl, UnnamedText_5cd1c - jr nz, .asm_399a4 ; 0x5cd0c - ld hl, UnnamedText_5cd17 -.asm_399a4 ; 0x5cd11 - call PrintText - jp TextScriptEnd - -UnnamedText_5cd17: ; 5cd17 (17:4d17) - TX_FAR _UnnamedText_5cd17 - db "@" - -UnnamedText_5cd1c: ; 5cd1c (17:4d1c) - TX_FAR _UnnamedText_5cd1c - db "@" +INCLUDE "scripts/fightingdojo.asm" -CopycatsHouse2FObject: ; 0x5cd21 (size=48) - db $a ; border tile - - db $1 ; warps - db $1, $7, $2, COPYCATS_HOUSE_1F - - db $2 ; signs - db $5, $3, $6 ; CopycatsHouse2FText6 - db $1, $0, $7 ; CopycatsHouse2FText7 - - db $5 ; people - db SPRITE_BRUNETTE_GIRL, $3 + 4, $4 + 4, $fe, $0, $1 ; person - db SPRITE_BIRD, $6 + 4, $4 + 4, $fe, $2, $2 ; person - db SPRITE_SLOWBRO, $1 + 4, $5 + 4, $ff, $d0, $3 ; person - db SPRITE_BIRD, $0 + 4, $2 + 4, $ff, $d0, $4 ; person - db SPRITE_CLEFAIRY, $6 + 4, $1 + 4, $ff, $d3, $5 ; person - - ; warp-to - EVENT_DISP COPYCATS_HOUSE_2F_WIDTH, $1, $7 ; COPYCATS_HOUSE_1F - -FightingDojo_h: ; 0x5cd51 to 0x5cd5d (12 bytes) (id=177) - db DOJO ; tileset - db FIGHTING_DOJO_HEIGHT, FIGHTING_DOJO_WIDTH ; dimensions (y, x) - dw FightingDojoBlocks, FightingDojoTextPointers, FightingDojoScript ; blocks, texts, scripts - db $00 ; connections - dw FightingDojoObject ; objects - -FightingDojoScript: ; 5cd5d (17:4d5d) - call EnableAutoTextBoxDrawing - ld hl, FightingDojoTrainerHeaders - ld de, FightingDojoScriptPointers - ld a, [W_FIGHTINGDOJOCURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_FIGHTINGDOJOCURSCRIPT], a - ret - -FightingDojoScript_5cd70: ; 5cd70 (17:4d70) - xor a - ld [$cd6b], a - ld [$d642], a - ld [$da39], a - ret - -FightingDojoScriptPointers: ; 5cd7b (17:4d7b) - dw FightingDojoScript1 - dw Func_324c - dw EndTrainerBattle - dw FightingDojoScript3 - -FightingDojoScript1: ; 5cd83 (17:4d83) - ld a, [$d7b1] - bit 0, a - ret nz - call CheckFightingMapTrainers - ld a, [wTrainerHeaderFlagBit] - and a - ret nz - ld a, [$d7b1] - bit 1, a - ret nz - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - ld [$cf0d], a - ld a, [W_YCOORD] - cp $3 - ret nz - ld a, [W_XCOORD] - cp $4 - ret nz - ld a, $1 - ld [$cf0d], a - ld a, $1 - ld [$d528], a - ld a, $1 - ld [$ff8c], a - ld a, $8 - ld [$ff8d], a - call Func_34a6 - ld a, $1 - ld [$ff8c], a - call DisplayTextID - ret - -FightingDojoScript3: ; 5cdc6 (17:4dc6) - ld a, [$d057] - cp $ff - jp z, FightingDojoScript_5cd70 - ld a, [$cf0d] - and a - jr z, .asm_5cde4 - ld a, $1 - ld [$d528], a - ld a, $1 - ld [$ff8c], a - ld a, $8 - ld [$ff8d], a - call Func_34a6 - -.asm_5cde4 - ld a, $f0 - ld [$cd6b], a - ld a, [$d7b1] - or $3e - ld [$d7b1], a - ld a, $8 - ld [$ff8c], a - call DisplayTextID - xor a - ld [$cd6b], a - ld [$d642], a - ld [$da39], a - ret - -FightingDojoTextPointers: ; 5ce03 (17:4e03) - dw FightingDojoText1 - dw FightingDojoText2 - dw FightingDojoText3 - dw FightingDojoText4 - dw FightingDojoText5 - dw FightingDojoText6 - dw FightingDojoText7 - dw FightingDojoText8 - -FightingDojoTrainerHeaders: ; 5ce13 (17:4e13) -FightingDojoTrainerHeader0: ; 5ce13 (17:4e13) - db $2 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7b1 ; flag's byte - dw FightingDojoBattleText1 ; 0x4eac TextBeforeBattle - dw FightingDojoAfterBattleText1 ; 0x4eb6 TextAfterBattle - dw FightingDojoEndBattleText1 ; 0x4eb1 TextEndBattle - dw FightingDojoEndBattleText1 ; 0x4eb1 TextEndBattle - -FightingDojoTrainerHeader1: ; 5ce1f (17:4e1f) - db $3 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7b1 ; flag's byte - dw FightingDojoBattleText2 ; 0x4ec5 TextBeforeBattle - dw FightingDojoAfterBattleText2 ; 0x4ecf TextAfterBattle - dw FightingDojoEndBattleText2 ; 0x4eca TextEndBattle - dw FightingDojoEndBattleText2 ; 0x4eca TextEndBattle - -FightingDojoTrainerHeader2: ; 5ce2b (17:4e2b) - db $4 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7b1 ; flag's byte - dw FightingDojoBattleText3 ; 0x4ede TextBeforeBattle - dw FightingDojoAfterBattleText3 ; 0x4ee8 TextAfterBattle - dw FightingDojoEndBattleText3 ; 0x4ee3 TextEndBattle - dw FightingDojoEndBattleText3 ; 0x4ee3 TextEndBattle - -FightingDojoTrainerHeader3: ; 5ce37 (17:4e37) - db $5 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7b1 ; flag's byte - dw FightingDojoBattleText4 ; 0x4ef7 TextBeforeBattle - dw FightingDojoAfterBattleText4 ; 0x4f01 TextAfterBattle - dw FightingDojoEndBattleText4 ; 0x4efc TextEndBattle - dw FightingDojoEndBattleText4 ; 0x4efc TextEndBattle - - db $ff - -FightingDojoText1: ; 5ce44 (17:4e44) - db $08 ; asm - ld a, [$d7b1] - bit 0, a - jp nz, .continue1 - bit 1, a - jp nz, .continue2 - ld hl, UnnamedText_5ce8e - call PrintText - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, UnnamedText_5ce93 - ld de, UnnamedText_5ce93 - call PreBattleSaveRegisters - ldh a, [$8c] - ld [$cf13], a - call EngageMapTrainer - call InitBattleEnemyParameters - ld a, $3 - ld [W_FIGHTINGDOJOCURSCRIPT], a - ld [W_CURMAPSCRIPT], a - jr .asm_9dba4 ; 0x5ce7b -.continue1 ; 0x5ce7d - ld hl, UnnamedText_5ce9d - call PrintText - jr .asm_9dba4 ; 0x5ce83 -.continue2 ; 0x5ce85f - ld hl, FightingDojoText8 - call PrintText -.asm_9dba4 ; 0x5ce8b - jp TextScriptEnd - -UnnamedText_5ce8e: ; 5ce8e (17:4e8e) - TX_FAR _UnnamedText_5ce8e - db "@" - -UnnamedText_5ce93: ; 5ce93 (17:4e93) - TX_FAR _UnnamedText_5ce93 - db "@" - -FightingDojoText8: ; 5ce98 (17:4e98) - TX_FAR _UnnamedText_5ce98 - db "@" - -UnnamedText_5ce9d: ; 5ce9d (17:4e9d) - TX_FAR _UnnamedText_5ce9d - db "@" - -FightingDojoText2: ; 5cea2 (17:4ea2) - db $08 ; asm - ld hl, FightingDojoTrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -FightingDojoBattleText1: ; 5ceac (17:4eac) - TX_FAR _FightingDojoBattleText1 - db "@" - -FightingDojoEndBattleText1: ; 5ceb1 (17:4eb1) - TX_FAR _FightingDojoEndBattleText1 - db "@" - -FightingDojoAfterBattleText1: ; 5ceb6 (17:4eb6) - TX_FAR _FightingDojoAfterBattleText1 - db "@" - -FightingDojoText3: ; 5cebb (17:4ebb) - db $08 ; asm - ld hl, FightingDojoTrainerHeader1 - call TalkToTrainer - jp TextScriptEnd - -FightingDojoBattleText2: ; 5cec5 (17:4ec5) - TX_FAR _FightingDojoBattleText2 - db "@" - -FightingDojoEndBattleText2: ; 5ceca (17:4eca) - TX_FAR _FightingDojoEndBattleText2 - db "@" - -FightingDojoAfterBattleText2: ; 5cecf (17:4ecf) - TX_FAR _FightingDojoAfterBattleText2 - db "@" - -FightingDojoText4: ; 5ced4 (17:4ed4) - db $08 ; asm - ld hl, FightingDojoTrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -FightingDojoBattleText3: ; 5cede (17:4ede) - TX_FAR _FightingDojoBattleText3 - db "@" - -FightingDojoEndBattleText3: ; 5cee3 (17:4ee3) - TX_FAR _FightingDojoEndBattleText3 - db "@" - -FightingDojoAfterBattleText3: ; 5cee8 (17:4ee8) - TX_FAR _FightingDojoAfterBattleText3 - db "@" - -FightingDojoText5: ; 5ceed (17:4eed) - db $08 ; asm - ld hl, FightingDojoTrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -FightingDojoBattleText4: ; 5cef7 (17:4ef7) - TX_FAR _FightingDojoBattleText4 - db "@" - -FightingDojoEndBattleText4: ; 5cefc (17:4efc) - TX_FAR _FightingDojoEndBattleText4 - db "@" - -FightingDojoAfterBattleText4: ; 5cf01 (17:4f01) - TX_FAR _FightingDojoAfterBattleText4 - db "@" - -FightingDojoText6: ; 5cf06 (17:4f06) -; Hitmonlee Poké Ball - db $08 ; asm - ld a, [$d7b1] - and %11000000 - jr z, .GetMon - ld hl, OtherHitmonText - call PrintText - jr .done -.GetMon - ld a, HITMONLEE - call DisplayPokedex - ld hl, WantHitmonleeText - call PrintText - call YesNoChoice - ld a, [$cc26] - and a - jr nz, .done - ld a, [$cf91] - ld b, a - ld c, 30 - call GivePokemon - jr nc, .done - - ; once Poké Ball is taken, hide sprite - ld a, $4a - ld [$cc4d], a - ld a, $11 - call Predef - ld hl, $d7b1 - set 6, [hl] - set 0, [hl] -.done - jp TextScriptEnd - -WantHitmonleeText: ; 5cf49 (17:4f49) - TX_FAR _WantHitmonleeText - db "@" - -FightingDojoText7: ; 5cf4e (17:4f4e) -; Hitmonchan Poké Ball - db $08 ; asm - ld a, [$d7b1] - and %11000000 - jr z, .GetMon - ld hl, OtherHitmonText - call PrintText - jr .done -.GetMon - ld a, HITMONCHAN - call DisplayPokedex - ld hl, WantHitmonchanText - call PrintText - call YesNoChoice - ld a, [$cc26] - and a - jr nz, .done - ld a, [$cf91] - ld b, a - ld c,30 - call GivePokemon - jr nc, .done - ld hl, $d7b1 - set 7, [hl] - set 0, [hl] - - ; once Poké Ball is taken, hide sprite - ld a, $4b - ld [$cc4d], a - ld a, $11 - call Predef -.done - jp TextScriptEnd - -WantHitmonchanText: ; 5cf91 (17:4f91) - TX_FAR _WantHitmonchanText - db "@" - -OtherHitmonText: ; 5cf96 (17:4f96) - TX_FAR _OtherHitmonText - db "@" - -FightingDojoObject: ; 0x5cf9b (size=72) - db $3 ; border tile - - db $2 ; warps - db $b, $4, $1, $ff - db $b, $5, $1, $ff - - db $0 ; signs - - db $7 ; people - db SPRITE_HIKER, $3 + 4, $5 + 4, $ff, $d0, $41, BLACKBELT + $C8, $1 ; trainer - db SPRITE_HIKER, $4 + 4, $3 + 4, $ff, $d3, $42, BLACKBELT + $C8, $2 ; trainer - db SPRITE_HIKER, $6 + 4, $3 + 4, $ff, $d3, $43, BLACKBELT + $C8, $3 ; trainer - db SPRITE_HIKER, $5 + 4, $5 + 4, $ff, $d2, $44, BLACKBELT + $C8, $4 ; trainer - db SPRITE_HIKER, $7 + 4, $5 + 4, $ff, $d2, $45, BLACKBELT + $C8, $5 ; trainer - db SPRITE_BALL, $1 + 4, $4 + 4, $ff, $ff, $6 ; person - db SPRITE_BALL, $1 + 4, $5 + 4, $ff, $ff, $7 ; person - - ; warp-to - EVENT_DISP FIGHTING_DOJO_WIDTH, $b, $4 - EVENT_DISP FIGHTING_DOJO_WIDTH, $b, $5 +INCLUDE "data/mapObjects/fightingdojo.asm" FightingDojoBlocks: ; 5cfe3 (17:4fe3) INCBIN "maps/fightingdojo.blk" -SaffronGym_h: ; 0x5d001 to 0x5d00d (12 bytes) (id=178) - db FACILITY ; tileset - db SAFFRON_GYM_HEIGHT, SAFFRON_GYM_WIDTH ; dimensions (y, x) - dw SaffronGymBlocks, SaffronGymTextPointers, SaffronGymScript ; blocks, texts, scripts - db $00 ; connections - dw SaffronGymObject ; objects - -SaffronGymScript: ; 5d00d (17:500d) - ld hl, $d126 - bit 6, [hl] - res 6, [hl] - call nz, .extra - call EnableAutoTextBoxDrawing - ld hl, SaffronGymTrainerHeader0 - ld de, SaffronGymScriptPointers - ld a, [W_SAFFRONGYMCURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_SAFFRONGYMCURSCRIPT], a - ret - -.extra - ld hl, Gym6CityName ; $5033 - ld de, Gym6LeaderName ; $5040 - jp LoadGymLeaderAndCityName - -Gym6CityName: ; 5d033 (17:5033) - db "SAFFRON CITY@" - -Gym6LeaderName: ; 5d040 (17:5040) - db "SABRINA@" - -Func_5d048: ; 5d048 (17:5048) - xor a - ld [wJoypadForbiddenButtonsMask], a - ld [W_SAFFRONGYMCURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -SaffronGymScriptPointers: ; 5d053 (17:5053) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - dw SaffronGymScript3 - -SaffronGymScript3: ; 5d05b (17:505b) - ld a, [W_ISINBATTLE] ; $d057 - cp $ff - jp z, Func_5d048 - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - -Func_5d068: ; 5d068 (17:5068) - ld a, $a - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - ld hl, $d7b3 - set 1, [hl] - ld bc, (TM_46 << 8) | 1 - call GiveItem - jr nc, .BagFull - ld a, $b - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - ld hl, $d7b3 - set 0, [hl] - jr .asm_5d091 -.BagFull - ld a, $c - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID -.asm_5d091 - ld hl, W_OBTAINEDBADGES - set 5, [hl] - ld hl, $d72a - set 5, [hl] - - ; deactivate gym trainers - ld a, [$d7b3] - or %11111100 - ld [$d7b3], a - ld hl, $d7b4 - set 0, [hl] - - jp Func_5d048 - -SaffronGymTextPointers: ; 5d0ab (17:50ab) - dw SaffronGymText1 - dw SaffronGymText2 - dw SaffronGymText3 - dw SaffronGymText4 - dw SaffronGymText5 - dw SaffronGymText6 - dw SaffronGymText7 - dw SaffronGymText8 - dw SaffronGymText9 - dw SaffronGymText10 - dw SaffronGymText11 - dw SaffronGymText12 - -SaffronGymTrainerHeaders: ; 5d0c3 (17:50c3) -SaffronGymTrainerHeader0: ; 5d0c3 (17:50c3) - db $2 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7b3 ; flag's byte - dw SaffronGymBattleText1 ; 0x51f0 TextBeforeBattle - dw SaffronGymAfterBattleText1 ; 0x51fa TextAfterBattle - dw SaffronGymEndBattleText1 ; 0x51f5 TextEndBattle - dw SaffronGymEndBattleText1 ; 0x51f5 TextEndBattle - -SaffronGymTrainerHeader1: ; 5d0cf (17:50cf) - db $3 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7b3 ; flag's byte - dw SaffronGymBattleText2 ; 0x51ff TextBeforeBattle - dw SaffronGymAfterBattleText2 ; 0x5209 TextAfterBattle - dw SaffronGymEndBattleText2 ; 0x5204 TextEndBattle - dw SaffronGymEndBattleText2 ; 0x5204 TextEndBattle - -SaffronGymTrainerHeader2: ; 5d0db (17:50db) - db $4 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7b3 ; flag's byte - dw SaffronGymBattleText3 ; 0x520e TextBeforeBattle - dw SaffronGymAfterBattleText3 ; 0x5218 TextAfterBattle - dw SaffronGymEndBattleText3 ; 0x5213 TextEndBattle - dw SaffronGymEndBattleText3 ; 0x5213 TextEndBattle - -SaffronGymTrainerHeader3: ; 5d0e7 (17:50e7) - db $5 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7b3 ; flag's byte - dw SaffronGymBattleText4 ; 0x521d TextBeforeBattle - dw SaffronGymAfterBattleText4 ; 0x5227 TextAfterBattle - dw SaffronGymEndBattleText4 ; 0x5222 TextEndBattle - dw SaffronGymEndBattleText4 ; 0x5222 TextEndBattle - -SaffronGymTrainerHeader4: ; 5d0f3 (17:50f3) - db $6 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7b3 ; flag's byte - dw SaffronGymBattleText5 ; 0x522c TextBeforeBattle - dw SaffronGymAfterBattleText5 ; 0x5236 TextAfterBattle - dw SaffronGymEndBattleText5 ; 0x5231 TextEndBattle - dw SaffronGymEndBattleText5 ; 0x5231 TextEndBattle - -SaffronGymTrainerHeader5: ; 5d0ff (17:50ff) - db $7 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7b3 ; flag's byte - dw SaffronGymBattleText6 ; 0x523b TextBeforeBattle - dw SaffronGymAfterBattleText6 ; 0x5245 TextAfterBattle - dw SaffronGymEndBattleText6 ; 0x5240 TextEndBattle - dw SaffronGymEndBattleText6 ; 0x5240 TextEndBattle - -SaffronGymTrainerHeader6: ; 5d10b (17:510b) - db $8 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7b3 ; flag's byte - dw SaffronGymBattleText7 ; 0x524a TextBeforeBattle - dw SaffronGymAfterBattleText7 ; 0x5254 TextAfterBattle - dw SaffronGymEndBattleText7 ; 0x524f TextEndBattle - dw SaffronGymEndBattleText7 ; 0x524f TextEndBattle - - db $ff - -SaffronGymText1: ; 5d118 (17:5118) - db $08 ; asm - ld a, [$d7b3] - bit 1, a - jr z, .asm_e3544 ; 0x5d11e - bit 0, a - jr nz, .asm_8d2f6 ; 0x5d122 - call z, Func_5d068 - call DisableWaitingAfterTextDisplay - jr .asm_34c2c ; 0x5d12a -.asm_8d2f6 ; 0x5d12c - ld hl, UnnamedText_5d16e - call PrintText - jr .asm_34c2c ; 0x5d132 -.asm_e3544 ; 0x5d134 - ld hl, UnnamedText_5d162 - call PrintText - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, UnnamedText_5d167 - ld de, UnnamedText_5d167 - call PreBattleSaveRegisters - ldh a, [$8c] - ld [$cf13], a - call EngageMapTrainer - call InitBattleEnemyParameters - ld a, $6 - ld [$d05c], a - ld a, $3 - ld [W_SAFFRONGYMCURSCRIPT], a -.asm_34c2c ; 0x5d15f - jp TextScriptEnd +INCLUDE "data/mapHeaders/saffrongym.asm" -UnnamedText_5d162: ; 5d162 (17:5162) - TX_FAR _UnnamedText_5d162 - db "@" +INCLUDE "scripts/saffrongym.asm" -UnnamedText_5d167: ; 5d167 (17:5167) - TX_FAR _UnnamedText_5d167 ; 0xa1c73 - db $11 ; play same sound as red giving oak parcel - db $6 ; wait for keypress - db "@" - -UnnamedText_5d16e: ; 5d16e (17:516e) - TX_FAR _UnnamedText_5d16e - db "@" - -SaffronGymText10: ; 5d173 (17:5173) - TX_FAR _UnnamedText_5d173 - db "@" - -SaffronGymText11: ; 5d178 (17:5178) - TX_FAR ReceivedTM46Text - db $b - TX_FAR _TM46ExplanationText - db "@" - -SaffronGymText12: ; 5d182 (17:5182) - TX_FAR _TM46NoRoomText ; pack full - db "@" - -SaffronGymText2: ; 5d187 (17:5187) - db $08 ; asm - ld hl, SaffronGymTrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -SaffronGymText3: ; 5d191 (17:5191) - db $08 ; asm - ld hl, SaffronGymTrainerHeader1 - call TalkToTrainer - jp TextScriptEnd - -SaffronGymText4: ; 5d19b (17:519b) - db $08 ; asm - ld hl, SaffronGymTrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -SaffronGymText5: ; 5d1a5 (17:51a5) - db $08 ; asm - ld hl, SaffronGymTrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -SaffronGymText6: ; 5d1af (17:51af) - db $08 ; asm - ld hl, SaffronGymTrainerHeader4 - call TalkToTrainer - jp TextScriptEnd - -SaffronGymText7: ; 5d1b9 (17:51b9) - db $08 ; asm - ld hl, SaffronGymTrainerHeader5 - call TalkToTrainer - jp TextScriptEnd - -SaffronGymText8: ; 5d1c3 (17:51c3) - db $08 ; asm - ld hl, SaffronGymTrainerHeader6 - call TalkToTrainer - jp TextScriptEnd - -SaffronGymText9: ; 5d1cd (17:51cd) - db $08 ; asm - ld a, [$d7b3] - bit 1, a - jr nz, .asm_13f3c ; 0x5d1d3 - ld hl, UnnamedText_5d1e6 - call PrintText - jr .asm_e9907 ; 0x5d1db -.asm_13f3c ; 0x5d1dd - ld hl, UnnamedText_5d1eb - call PrintText -.asm_e9907 ; 0x5d1e3 - jp TextScriptEnd - -UnnamedText_5d1e6: ; 5d1e6 (17:51e6) - TX_FAR _UnnamedText_5d1e6 - db "@" - -UnnamedText_5d1eb: ; 5d1eb (17:51eb) - TX_FAR _UnnamedText_5d1eb - db "@" - -SaffronGymBattleText1: ; 5d1f0 (17:51f0) - TX_FAR _SaffronGymBattleText1 - db "@" - -SaffronGymEndBattleText1: ; 5d1f5 (17:51f5) - TX_FAR _SaffronGymEndBattleText1 - db "@" - -SaffronGymAfterBattleText1: ; 5d1fa (17:51fa) - TX_FAR _SaffronGymAfterBattleText1 - db "@" - -SaffronGymBattleText2: ; 5d1ff (17:51ff) - TX_FAR _SaffronGymBattleText2 - db "@" - -SaffronGymEndBattleText2: ; 5d204 (17:5204) - TX_FAR _SaffronGymEndBattleText2 - db "@" - -SaffronGymAfterBattleText2: ; 5d209 (17:5209) - TX_FAR _SaffronGymAfterBattleText2 - db "@" - -SaffronGymBattleText3: ; 5d20e (17:520e) - TX_FAR _SaffronGymBattleText3 - db "@" - -SaffronGymEndBattleText3: ; 5d213 (17:5213) - TX_FAR _SaffronGymEndBattleText3 - db "@" - -SaffronGymAfterBattleText3: ; 5d218 (17:5218) - TX_FAR _SaffronGymAfterBattleText3 - db "@" - -SaffronGymBattleText4: ; 5d21d (17:521d) - TX_FAR _SaffronGymBattleText4 - db "@" - -SaffronGymEndBattleText4: ; 5d222 (17:5222) - TX_FAR _SaffronGymEndBattleText4 - db "@" - -SaffronGymAfterBattleText4: ; 5d227 (17:5227) - TX_FAR _SaffronGymAfterBattleText4 - db "@" - -SaffronGymBattleText5: ; 5d22c (17:522c) - TX_FAR _SaffronGymBattleText5 - db "@" - -SaffronGymEndBattleText5: ; 5d231 (17:5231) - TX_FAR _SaffronGymEndBattleText5 - db "@" - -SaffronGymAfterBattleText5: ; 5d236 (17:5236) - TX_FAR _SaffronGymAfterBattleText5 - db "@" - -SaffronGymBattleText6: ; 5d23b (17:523b) - TX_FAR _SaffronGymBattleText6 - db "@" - -SaffronGymEndBattleText6: ; 5d240 (17:5240) - TX_FAR _SaffronGymEndBattleText6 - db "@" - -SaffronGymAfterBattleText6: ; 5d245 (17:5245) - TX_FAR _SaffronGymAfterBattleText6 - db "@" - -SaffronGymBattleText7: ; 5d24a (17:524a) - TX_FAR _SaffronGymBattleText7 - db "@" - -SaffronGymEndBattleText7: ; 5d24f (17:524f) - TX_FAR _SaffronGymEndBattleText7 - db "@" - -SaffronGymAfterBattleText7: ; 5d254 (17:5254) - TX_FAR _SaffronGymAfterBattleText7 - db "@" - -SaffronGymObject: ; 0x5d259 (size=330) - db $2e ; border tile - - db $20 ; warps - db $11, $8, $2, $ff - db $11, $9, $2, $ff - db $3, $1, $16, SAFFRON_GYM - db $3, $5, $f, SAFFRON_GYM - db $5, $1, $12, SAFFRON_GYM - db $5, $5, $8, SAFFRON_GYM - db $9, $1, $1b, SAFFRON_GYM - db $9, $5, $10, SAFFRON_GYM - db $b, $1, $5, SAFFRON_GYM - db $b, $5, $d, SAFFRON_GYM - db $f, $1, $17, SAFFRON_GYM - db $f, $5, $1e, SAFFRON_GYM - db $11, $1, $11, SAFFRON_GYM - db $11, $5, $9, SAFFRON_GYM - db $3, $9, $1a, SAFFRON_GYM - db $3, $b, $3, SAFFRON_GYM - db $5, $9, $7, SAFFRON_GYM - db $5, $b, $c, SAFFRON_GYM - db $b, $b, $4, SAFFRON_GYM - db $f, $b, $1f, SAFFRON_GYM - db $3, $f, $18, SAFFRON_GYM - db $3, $13, $1c, SAFFRON_GYM - db $5, $f, $2, SAFFRON_GYM - db $5, $13, $a, SAFFRON_GYM - db $9, $f, $14, SAFFRON_GYM - db $9, $13, $1d, SAFFRON_GYM - db $b, $f, $e, SAFFRON_GYM - db $b, $13, $6, SAFFRON_GYM - db $f, $f, $15, SAFFRON_GYM - db $f, $13, $19, SAFFRON_GYM - db $11, $f, $b, SAFFRON_GYM - db $11, $13, $13, SAFFRON_GYM - - db $0 ; signs - - db $9 ; people - db SPRITE_GIRL, $8 + 4, $9 + 4, $ff, $d0, $41, SABRINA + $C8, $1 ; trainer - db SPRITE_MEDIUM, $1 + 4, $a + 4, $ff, $d0, $42, CHANNELER + $C8, $16 ; trainer - db SPRITE_BUG_CATCHER, $1 + 4, $11 + 4, $ff, $d0, $43, PSYCHIC_TR + $C8, $1 ; trainer - db SPRITE_MEDIUM, $7 + 4, $3 + 4, $ff, $d0, $44, CHANNELER + $C8, $17 ; trainer - db SPRITE_BUG_CATCHER, $7 + 4, $11 + 4, $ff, $d0, $45, PSYCHIC_TR + $C8, $2 ; trainer - db SPRITE_MEDIUM, $d + 4, $3 + 4, $ff, $d0, $46, CHANNELER + $C8, $18 ; trainer - db SPRITE_BUG_CATCHER, $d + 4, $11 + 4, $ff, $d0, $47, PSYCHIC_TR + $C8, $3 ; trainer - db SPRITE_BUG_CATCHER, $1 + 4, $3 + 4, $ff, $d0, $48, PSYCHIC_TR + $C8, $4 ; trainer - db SPRITE_GYM_HELPER, $f + 4, $a + 4, $ff, $d0, $9 ; person - - ; warp-to - EVENT_DISP SAFFRON_GYM_WIDTH, $11, $8 - EVENT_DISP SAFFRON_GYM_WIDTH, $11, $9 - EVENT_DISP SAFFRON_GYM_WIDTH, $3, $1 ; SAFFRON_GYM - EVENT_DISP SAFFRON_GYM_WIDTH, $3, $5 ; SAFFRON_GYM - EVENT_DISP SAFFRON_GYM_WIDTH, $5, $1 ; SAFFRON_GYM - EVENT_DISP SAFFRON_GYM_WIDTH, $5, $5 ; SAFFRON_GYM - EVENT_DISP SAFFRON_GYM_WIDTH, $9, $1 ; SAFFRON_GYM - EVENT_DISP SAFFRON_GYM_WIDTH, $9, $5 ; SAFFRON_GYM - EVENT_DISP SAFFRON_GYM_WIDTH, $b, $1 ; SAFFRON_GYM - EVENT_DISP SAFFRON_GYM_WIDTH, $b, $5 ; SAFFRON_GYM - EVENT_DISP SAFFRON_GYM_WIDTH, $f, $1 ; SAFFRON_GYM - EVENT_DISP SAFFRON_GYM_WIDTH, $f, $5 ; SAFFRON_GYM - EVENT_DISP SAFFRON_GYM_WIDTH, $11, $1 ; SAFFRON_GYM - EVENT_DISP SAFFRON_GYM_WIDTH, $11, $5 ; SAFFRON_GYM - EVENT_DISP SAFFRON_GYM_WIDTH, $3, $9 ; SAFFRON_GYM - EVENT_DISP SAFFRON_GYM_WIDTH, $3, $b ; SAFFRON_GYM - EVENT_DISP SAFFRON_GYM_WIDTH, $5, $9 ; SAFFRON_GYM - EVENT_DISP SAFFRON_GYM_WIDTH, $5, $b ; SAFFRON_GYM - EVENT_DISP SAFFRON_GYM_WIDTH, $b, $b ; SAFFRON_GYM - EVENT_DISP SAFFRON_GYM_WIDTH, $f, $b ; SAFFRON_GYM - EVENT_DISP SAFFRON_GYM_WIDTH, $3, $f ; SAFFRON_GYM - EVENT_DISP SAFFRON_GYM_WIDTH, $3, $13 ; SAFFRON_GYM - EVENT_DISP SAFFRON_GYM_WIDTH, $5, $f ; SAFFRON_GYM - EVENT_DISP SAFFRON_GYM_WIDTH, $5, $13 ; SAFFRON_GYM - EVENT_DISP SAFFRON_GYM_WIDTH, $9, $f ; SAFFRON_GYM - EVENT_DISP SAFFRON_GYM_WIDTH, $9, $13 ; SAFFRON_GYM - EVENT_DISP SAFFRON_GYM_WIDTH, $b, $f ; SAFFRON_GYM - EVENT_DISP SAFFRON_GYM_WIDTH, $b, $13 ; SAFFRON_GYM - EVENT_DISP SAFFRON_GYM_WIDTH, $f, $f ; SAFFRON_GYM - EVENT_DISP SAFFRON_GYM_WIDTH, $f, $13 ; SAFFRON_GYM - EVENT_DISP SAFFRON_GYM_WIDTH, $11, $f ; SAFFRON_GYM - EVENT_DISP SAFFRON_GYM_WIDTH, $11, $13 ; SAFFRON_GYM +INCLUDE "data/mapObjects/saffrongym.asm" SaffronGymBlocks: ; 5d3a3 (17:53a3) INCBIN "maps/saffrongym.blk" -SaffronMart_h: ; 0x5d3fd to 0x5d409 (12 bytes) (id=180) - db MART ; tileset - db SAFFRON_MART_HEIGHT, SAFFRON_MART_WIDTH ; dimensions (y, x) - dw SaffronMartBlocks, SaffronMartTextPointers, SaffronMartScript ; blocks, texts, scripts - db $00 ; connections - dw SaffronMartObject ; objects - -SaffronMartScript: ; 5d409 (17:5409) - jp EnableAutoTextBoxDrawing - -SaffronMartTextPointers: ; 5d40c (17:540c) - dw SaffronMartText1 - dw SaffronMartText2 - dw SaffronMartText3 - -SaffronMartText2: ; 5d412 (17:5412) - TX_FAR _SaffronMartText2 - db "@" - -SaffronMartText3: ; 5d417 (17:5417) - TX_FAR _SaffronMartText3 - db "@" - -SaffronMartObject: ; 0x5d41c (size=38) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $4, $ff - db $7, $4, $4, $ff - - db $0 ; signs - - db $3 ; people - db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person - db SPRITE_BLACK_HAIR_BOY_2, $2 + 4, $4 + 4, $ff, $ff, $2 ; person - db SPRITE_LASS, $5 + 4, $6 + 4, $fe, $0, $3 ; person - - ; warp-to - EVENT_DISP SAFFRON_MART_WIDTH, $7, $3 - EVENT_DISP SAFFRON_MART_WIDTH, $7, $4 - -SilphCo1_h: ; 0x5d442 to 0x5d44e (12 bytes) (id=181) - db FACILITY ; tileset - db SILPH_CO_1F_HEIGHT, SILPH_CO_1F_WIDTH ; dimensions (y, x) - dw SilphCo1Blocks, SilphCo1TextPointers, SilphCo1Script ; blocks, texts, scripts - db $00 ; connections - dw SilphCo1Object ; objects - -SilphCo1Script: ; 5d44e (17:544e) - call EnableAutoTextBoxDrawing - ld a, [$d838] - bit 7, a - ret z - ld hl, $d7b9 - bit 7, [hl] - set 7, [hl] - ret nz - ld a, $4c - ld [$cc4d], a - ld a, $15 - jp Predef - -SilphCo1TextPointers: ; 5d469 (17:5469) - dw SilphCo1Text1 - -SilphCo1Text1: ; 5d46b (17:546b) - TX_FAR _SilphCo1Text1 - db "@" +INCLUDE "data/mapHeaders/saffronmart.asm" -SilphCo1Object: ; 0x5d470 (size=50) - db $2e ; border tile +INCLUDE "scripts/saffronmart.asm" - db $5 ; warps - db $11, $a, $5, $ff - db $11, $b, $5, $ff - db $0, $1a, $0, SILPH_CO_2F - db $0, $14, $0, SILPH_CO_ELEVATOR - db $a, $10, $6, SILPH_CO_3F +INCLUDE "data/mapObjects/saffronmart.asm" - db $0 ; signs +INCLUDE "data/mapHeaders/silphco1.asm" - db $1 ; people - db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $4 + 4, $ff, $d0, $1 ; person +INCLUDE "scripts/silphco1.asm" - ; warp-to - EVENT_DISP SILPH_CO_1F_WIDTH, $11, $a - EVENT_DISP SILPH_CO_1F_WIDTH, $11, $b - EVENT_DISP SILPH_CO_1F_WIDTH, $0, $1a ; SILPH_CO_2F - EVENT_DISP SILPH_CO_1F_WIDTH, $0, $14 ; SILPH_CO_ELEVATOR - EVENT_DISP SILPH_CO_1F_WIDTH, $a, $10 ; SILPH_CO_3F +INCLUDE "data/mapObjects/silphco1.asm" SilphCo1Blocks: ; 5d4a2 (17:54a2) INCBIN "maps/silphco1.blk" -SaffronPokecenter_h: ; 0x5d529 to 0x5d535 (12 bytes) (id=182) - db POKECENTER ; tileset - db SAFFRON_POKECENTER_HEIGHT, SAFFRON_POKECENTER_WIDTH ; dimensions (y, x) - dw SaffronPokecenterBlocks, SaffronPokecenterTextPointers, SaffronPokecenterScript ; blocks, texts, scripts - db $00 ; connections - dw SaffronPokecenterObject ; objects - -SaffronPokecenterScript: ; 5d535 (17:5535) - call Func_22fa - jp EnableAutoTextBoxDrawing - -SaffronPokecenterTextPointers: ; 5d53b (17:553b) - dw SaffronPokecenterText1 - dw SaffronPokecenterText2 - dw SaffronPokecenterText3 - dw SaffronPokecenterText4 - -SaffronPokecenterText1: ; 5d543 (17:5543) - db $ff - -SaffronPokecenterText2: ; 5d544 (17:5544) - TX_FAR _SaffronPokecenterText1 - db "@" - -SaffronPokecenterText3: ; 5d549 (17:5549) - TX_FAR _SaffronPokecenterText3 - db "@" - -SaffronPokecenterText4: ; 5d54e (17:554e) - db $f6 - -SaffronPokecenterObject: ; 0x5d54f (size=44) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $6, $ff - db $7, $4, $6, $ff - - db $0 ; signs - - db $4 ; people - db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person - db SPRITE_FOULARD_WOMAN, $5 + 4, $5 + 4, $ff, $ff, $2 ; person - db SPRITE_GENTLEMAN, $3 + 4, $8 + 4, $ff, $d0, $3 ; person - db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person - - ; warp-to - EVENT_DISP SAFFRON_POKECENTER_WIDTH, $7, $3 - EVENT_DISP SAFFRON_POKECENTER_WIDTH, $7, $4 - -ViridianForestExit_h: ; 0x5d57b to 0x5d587 (12 bytes) (id=47) - db FOREST_GATE ; tileset - db VIRIDIAN_FOREST_EXIT_HEIGHT, VIRIDIAN_FOREST_EXIT_WIDTH ; dimensions (y, x) - dw ViridianForestExitBlocks, ViridianForestExitTextPointers, ViridianForestExitScript ; blocks, texts, scripts - db $00 ; connections - dw ViridianForestExitObject ; objects - -ViridianForestExitScript: ; 5d587 (17:5587) - jp EnableAutoTextBoxDrawing - -ViridianForestExitTextPointers: ; 5d58a (17:558a) - dw ViridianForestExitText1 - dw ViridianForestExitText2 - -ViridianForestExitText1: ; 5d58e (17:558e) - TX_FAR _ViridianForestExitText1 - db "@" - -ViridianForestExitText2: ; 5d593 (17:5593) - TX_FAR _ViridianForestExitText2 - db "@" - -ViridianForestExitObject: ; 0x5d598 (size=48) - db $a ; border tile - - db $4 ; warps - db $0, $4, $1, $ff - db $0, $5, $1, $ff - db $7, $4, $0, VIRIDIAN_FOREST - db $7, $5, $0, VIRIDIAN_FOREST - - db $0 ; signs - - db $2 ; people - db SPRITE_BLACK_HAIR_BOY_2, $2 + 4, $3 + 4, $ff, $ff, $1 ; person - db SPRITE_OLD_PERSON, $5 + 4, $2 + 4, $ff, $ff, $2 ; person - - ; warp-to - EVENT_DISP VIRIDIAN_FOREST_EXIT_WIDTH, $0, $4 - EVENT_DISP VIRIDIAN_FOREST_EXIT_WIDTH, $0, $5 - EVENT_DISP VIRIDIAN_FOREST_EXIT_WIDTH, $7, $4 ; VIRIDIAN_FOREST - EVENT_DISP VIRIDIAN_FOREST_EXIT_WIDTH, $7, $5 ; VIRIDIAN_FOREST - -Route2Gate_h: ; 0x5d5c8 to 0x5d5d4 (12 bytes) (id=49) - db GATE ; tileset - db ROUTE_2_GATE_HEIGHT, ROUTE_2_GATE_WIDTH ; dimensions (y, x) - dw Route2GateBlocks, Route2GateTextPointers, Route2GateScript ; blocks, texts, scripts - db $00 ; connections - dw Route2GateObject ; objects - -Route2GateScript: ; 5d5d4 (17:55d4) - jp EnableAutoTextBoxDrawing - -Route2GateTextPointers: ; 5d5d7 (17:55d7) - dw Route2GateText1 - dw Route2GateText2 - -Route2GateText1: ; 5d5db (17:55db) - db $08 ; asm - ld a, [$d7c2] - bit 0, a - jr nz, .asm_6592c ; 0x5d5e1 - ld a, $a - ldh [$db], a - ld a, $c8 - ldh [$dc], a - ld [$d11e], a - call GetItemName ; $2fcf - ld hl, $cd6d - ld de, $cc5b - ld bc, $000d - call CopyData - ld a, $62 - call Predef - ldh a, [$db] - cp $1 - jr nz, .asm_ad646 ; 0x5d606 - ld hl, $d7c2 - set 0, [hl] -.asm_6592c ; 0x5d60d - ld hl, UnnamedText_5d616 - call PrintText -.asm_ad646 ; 0x5d613 - jp TextScriptEnd - -UnnamedText_5d616: ; 5d616 (17:5616) - TX_FAR _UnnamedText_5d616 - db "@" - -Route2GateText2: ; 5d61b (17:561b) - TX_FAR _Route2GateText2 - db "@" - -Route2GateObject: ; 0x5d620 (size=48) - db $a ; border tile - - db $4 ; warps - db $0, $4, $3, $ff - db $0, $5, $3, $ff - db $7, $4, $4, $ff - db $7, $5, $4, $ff - - db $0 ; signs - - db $2 ; people - db SPRITE_OAK_AIDE, $4 + 4, $1 + 4, $ff, $d2, $1 ; person - db SPRITE_BUG_CATCHER, $4 + 4, $5 + 4, $fe, $2, $2 ; person - - ; warp-to - EVENT_DISP ROUTE_2_GATE_WIDTH, $0, $4 - EVENT_DISP ROUTE_2_GATE_WIDTH, $0, $5 - EVENT_DISP ROUTE_2_GATE_WIDTH, $7, $4 - EVENT_DISP ROUTE_2_GATE_WIDTH, $7, $5 - -ViridianForestEntrance_h: ; 0x5d650 to 0x5d65c (12 bytes) (id=50) - db FOREST_GATE ; tileset - db VIRIDIAN_FOREST_ENTRANCE_HEIGHT, VIRIDIAN_FOREST_ENTRANCE_WIDTH ; dimensions (y, x) - dw ViridianForestEntranceBlocks, ViridianForestEntranceTextPointers, ViridianForestEntranceScript ; blocks, texts, scripts - db $00 ; connections - dw ViridianForestEntranceObject ; objects - -ViridianForestEntranceScript: ; 5d65c (17:565c) - jp EnableAutoTextBoxDrawing - -ViridianForestEntranceTextPointers: ; 5d65f (17:565f) - dw ViridianForestEntranceText1 - dw ViridianForestEntranceText2 - -ViridianForestEntranceText1: ; 5d663 (17:5663) - TX_FAR _ViridianForestEntranceText1 - db "@" - -ViridianForestEntranceText2: ; 5d668 (17:5668) - TX_FAR _ViridianForestEntranceText2 - db "@" - -ViridianForestEntranceObject: ; 0x5d66d (size=48) - db $a ; border tile - - db $4 ; warps - db $0, $4, $3, VIRIDIAN_FOREST - db $0, $5, $4, VIRIDIAN_FOREST - db $7, $4, $5, $ff - db $7, $5, $5, $ff - - db $0 ; signs - - db $2 ; people - db SPRITE_GIRL, $4 + 4, $8 + 4, $ff, $d2, $1 ; person - db SPRITE_LITTLE_GIRL, $4 + 4, $2 + 4, $fe, $1, $2 ; person - - ; warp-to - EVENT_DISP VIRIDIAN_FOREST_ENTRANCE_WIDTH, $0, $4 ; VIRIDIAN_FOREST - EVENT_DISP VIRIDIAN_FOREST_ENTRANCE_WIDTH, $0, $5 ; VIRIDIAN_FOREST - EVENT_DISP VIRIDIAN_FOREST_ENTRANCE_WIDTH, $7, $4 - EVENT_DISP VIRIDIAN_FOREST_ENTRANCE_WIDTH, $7, $5 - -UndergroundTunnelEntranceRoute5_h: ; 0x5d69d to 0x5d6a9 (12 bytes) (id=71) - db GATE ; tileset - db PATH_ENTRANCE_ROUTE_5_HEIGHT, PATH_ENTRANCE_ROUTE_5_WIDTH ; dimensions (y, x) - dw UndergroundTunnelEntranceRoute5Blocks, UndergroundTunnelEntranceRoute5TextPointers, UndergroundTunnelEntranceRoute5Script ; blocks, texts, scripts - db $00 ; connections - dw UndergroundTunnelEntranceRoute5Object ; objects - -UndergroundTunnelEntranceRoute5Script: ; 5d6a9 (17:56a9) - ld a, ROUTE_5 - ld [wLastMap], a - ret - -UndergroundTunnelEntranceRoute5_5d6af: ; 5d6af (17:56af) - db $50 - -UndergroundTunnelEntranceRoute5TextPointers: ; 5d6b0 (17:56b0) - dw UndergroundTunnelEntranceRoute5Text1 - -UndergroundTunnelEntranceRoute5Text1: ; 5d6b2 (17:56b2) - db $08 ; asm - ld a, $9 - ld [wWhichTrade], a - ld a, $54 - call Predef - ld hl, UndergroundTunnelEntranceRoute5_5d6af - ret - -UndergroundTunnelEntranceRoute5Object: ; 0x5d6c1 (size=34) - db $a ; border tile - - db $3 ; warps - db $7, $3, $3, $ff - db $7, $4, $3, $ff - db $4, $4, $0, UNDERGROUND_PATH_NS - - db $0 ; signs - - db $1 ; people - db SPRITE_LITTLE_GIRL, $3 + 4, $2 + 4, $ff, $ff, $1 ; person - - ; warp-to - EVENT_DISP PATH_ENTRANCE_ROUTE_5_WIDTH, $7, $3 - EVENT_DISP PATH_ENTRANCE_ROUTE_5_WIDTH, $7, $4 - EVENT_DISP PATH_ENTRANCE_ROUTE_5_WIDTH, $4, $4 ; UNDERGROUND_PATH_NS - -UndergroundTunnelEntranceRoute6_h: ; 0x5d6e3 to 0x5d6ef (12 bytes) (id=74) - db GATE ; tileset - db PATH_ENTRANCE_ROUTE_6_HEIGHT, PATH_ENTRANCE_ROUTE_6_WIDTH ; dimensions (y, x) - dw UndergroundTunnelEntranceRoute6Blocks, UndergroundTunnelEntranceRoute6TextPointers, UndergroundTunnelEntranceRoute6Script ; blocks, texts, scripts - db $00 ; connections - dw UndergroundTunnelEntranceRoute6Object ; objects - -UndergroundTunnelEntranceRoute6Script: ; 5d6ef (17:56ef) - ld a, ROUTE_6 - ld [wLastMap], a - jp EnableAutoTextBoxDrawing - -UndergroundTunnelEntranceRoute6TextPointers: ; 5d6f7 (17:56f7) - dw UndergroundTunnelEntranceRoute6Text1 - -UndergroundTunnelEntranceRoute6Text1: ; 5d6f9 (17:56f9) - TX_FAR _UndergrdTunnelEntRoute6Text1 - db "@" - -UndergroundTunnelEntranceRoute6Object: ; 0x5d6fe (size=34) - db $a ; border tile - - db $3 ; warps - db $7, $3, $3, $ff - db $7, $4, $3, $ff - db $4, $4, $1, UNDERGROUND_PATH_NS - - db $0 ; signs - - db $1 ; people - db SPRITE_GIRL, $3 + 4, $2 + 4, $ff, $ff, $1 ; person - - ; warp-to - EVENT_DISP PATH_ENTRANCE_ROUTE_6_WIDTH, $7, $3 - EVENT_DISP PATH_ENTRANCE_ROUTE_6_WIDTH, $7, $4 - EVENT_DISP PATH_ENTRANCE_ROUTE_6_WIDTH, $4, $4 ; UNDERGROUND_PATH_NS - -UndergroundPathEntranceRoute7_h: ; 0x5d720 to 0x5d72c (12 bytes) (id=77) - db GATE ; tileset - db PATH_ENTRANCE_ROUTE_7_HEIGHT, PATH_ENTRANCE_ROUTE_7_WIDTH ; dimensions (y, x) - dw UndergroundTunnelEntranceRoute7Blocks, UndergroundPathEntranceRoute7TextPointers, UndergroundPathEntranceRoute7Script ; blocks, texts, scripts - db $00 ; connections - dw UndergroundPathEntranceRoute7Object ; objects - -UndergroundPathEntranceRoute7Script: ; 5d72c (17:572c) - ld a, ROUTE_7 - ld [wLastMap], a - jp EnableAutoTextBoxDrawing - -UndergroundPathEntranceRoute7TextPointers: ; 5d734 (17:5734) - dw UndergroundPathEntranceRoute7Text1 - -UndergroundPathEntranceRoute7Text1: ; 5d736 (17:5736) - TX_FAR _UndergroundPathEntRoute7Text1 - db "@" - -UndergroundPathEntranceRoute7Object: ; 0x5d73b (size=34) - db $a ; border tile - - db $3 ; warps - db $7, $3, $4, $ff - db $7, $4, $4, $ff - db $4, $4, $0, UNDERGROUND_PATH_WE - - db $0 ; signs - - db $1 ; people - db SPRITE_FAT_BALD_GUY, $4 + 4, $2 + 4, $ff, $ff, $1 ; person - - ; warp-to - EVENT_DISP PATH_ENTRANCE_ROUTE_7_WIDTH, $7, $3 - EVENT_DISP PATH_ENTRANCE_ROUTE_7_WIDTH, $7, $4 - EVENT_DISP PATH_ENTRANCE_ROUTE_7_WIDTH, $4, $4 ; UNDERGROUND_PATH_WE - -UndergroundPathEntranceRoute7Copy_h: ; 5d75d (17:575d) - db GATE ; tileset - db PATH_ENTRANCE_ROUTE_7_HEIGHT, PATH_ENTRANCE_ROUTE_7_WIDTH ; dimensions (y, x) - dw UndergroundTunnelEntranceRoute7CopyBlocks, UndergroundPathEntranceRoute7CopyTextPointers, UndergroundPathEntranceRoute7CopyScript ; blocks, texts, scripts - db $00 ; connections - dw UndergroundPathEntranceRoute7CopyObject ; objects - -UndergroundPathEntranceRoute7CopyScript: ; 5d769 (17:5769) - ld a, ROUTE_7 - ld [wLastMap], a - ret - -UndergroundPathEntranceRoute7CopyTextPointers: ; 5d76f (17:576f) - dw UnnamedText_5d773 - dw UnnamedText_5d77d - -UnnamedText_5d773: ; 5d773 (17:5773) - TX_FAR _UnnamedText_5d773 - db "@" - -UnnamedText_5d778: ; 5d778 (17:5778) - TX_FAR _UnnamedText_5d778 - db "@" - -UnnamedText_5d77d: ; 5d77d (17:577d) - TX_FAR _UnnamedText_5d77d - db "@" - -UnnamedText_5d782: ; 5d782 (17:5782) - TX_FAR _UnnamedText_5d782 - db "@" - -UndergroundPathEntranceRoute7CopyObject: ; 5d787 (17:5787) - db $a ; border tile - - db $3 ; warps - db $7, $3, $5, $ff - db $7, $4, $5, $ff - db $4, $4, $0, UNDERGROUND_PATH_WE - - db $0 ; signs - - db $2 ; people - db SPRITE_GIRL, $2 + 4, $3 + 4, $ff, $ff, $1 ; person - db SPRITE_FAT_BALD_GUY, $4 + 4, $2 + 4, $ff, $ff, $2 ; person +INCLUDE "data/mapHeaders/saffronpokecenter.asm" - ; warp-to - EVENT_DISP PATH_ENTRANCE_ROUTE_7_COPY_WIDTH, $7, $3 - EVENT_DISP PATH_ENTRANCE_ROUTE_7_COPY_WIDTH, $7, $4 - EVENT_DISP PATH_ENTRANCE_ROUTE_7_COPY_WIDTH, $4, $4 ; UNDERGROUND_PATH_WE +INCLUDE "scripts/saffronpokecenter.asm" -SilphCo9_h: ; 0x5d7af to 0x5d7bb (12 bytes) (id=233) - db FACILITY ; tileset - db SILPH_CO_9F_HEIGHT, SILPH_CO_9F_WIDTH ; dimensions (y, x) - dw SilphCo9Blocks, SilphCo9TextPointers, SilphCo9Script ; blocks, texts, scripts - db $00 ; connections - dw SilphCo9Object ; objects - -SilphCo9Script: ; 5d7bb (17:57bb) - call SilphCo9Script_5d7d1 - call EnableAutoTextBoxDrawing - ld hl, SilphCo9TrainerHeaders - ld de, SilphCo9ScriptPointers - ld a, [W_SILPHCO9CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_SILPHCO9CURSCRIPT], a - ret - -SilphCo9Script_5d7d1: ; 5d7d1 (17:57d1) - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - ret z - ld hl, DataTable_5d82e ; $582e - call Func_5d837 - call Func_5d863 - ld a, [$d834] - bit 0, a - jr nz, .asm_5d7f8 - push af - ld a, $5f - ld [$d09f], a - ld bc, $401 - ld a, $17 - call Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) - pop af -.asm_5d7f8 - bit 1, a - jr nz, .asm_5d80b - push af - ld a, $54 - ld [$d09f], a - ld bc, $209 - ld a, $17 - call Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) - pop af -.asm_5d80b - bit 2, a - jr nz, .asm_5d81e - push af - ld a, $54 - ld [$d09f], a - ld bc, $509 - ld a, $17 - call Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) - pop af -.asm_5d81e - bit 3, a - ret nz - ld a, $5f - ld [$d09f], a - ld bc, $605 - ld a, $17 - jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) - -DataTable_5d82e: ; 5d82e (17:582e) - db $04,$01,$02,$09,$05,$09,$06,$05,$FF - -Func_5d837: ; 5d837 (17:5837) - push hl - ld hl, $d73f - ld a, [hli] - ld b, a - ld a, [hl] - ld c, a - xor a - ld [$ffe0], a - pop hl -.asm_5d843 - ld a, [hli] - cp $ff - jr z, .asm_5d85f - push hl - ld hl, $ffe0 - inc [hl] - pop hl - cp b - jr z, .asm_5d854 - inc hl - jr .asm_5d843 -.asm_5d854 - ld a, [hli] - cp c - jr nz, .asm_5d843 - ld hl, $d73f - xor a - ld [hli], a - ld [hl], a - ret -.asm_5d85f - xor a - ld [$ffe0], a - ret +INCLUDE "data/mapObjects/saffronpokecenter.asm" -Func_5d863: ; 5d863 (17:5863) - ld hl, $d834 - ld a, [$ffe0] - and a - ret z - cp $1 - jr nz, .asm_5d871 - set 0, [hl] - ret -.asm_5d871 - cp $2 - jr nz, .asm_5d878 - set 1, [hl] - ret -.asm_5d878 - cp $3 - jr nz, .asm_5d87f - set 2, [hl] - ret -.asm_5d87f - cp $4 - ret nz - set 3, [hl] - ret +INCLUDE "data/mapHeaders/viridianforestexit.asm" -SilphCo9ScriptPointers: ; 5d885 (17:5885) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -SilphCo9TextPointers: ; 5d88b (17:588b) - dw SilphCo9Text1 - dw SilphCo9Text2 - dw SilphCo9Text3 - dw SilphCo9Text4 - -SilphCo9TrainerHeaders: ; 5d893 (17:5893) -SilphCo9TrainerHeader0: ; 5d893 (17:5893) - db $2 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d833 ; flag's byte - dw SilphCo9BattleText1 ; 0x5912 TextBeforeBattle - dw SilphCo9AfterBattleText1 ; 0x591c TextAfterBattle - dw SilphCo9EndBattleText1 ; 0x5917 TextEndBattle - dw SilphCo9EndBattleText1 ; 0x5917 TextEndBattle - -SilphCo9TrainerHeader1: ; 5d89f (17:589f) - db $3 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d833 ; flag's byte - dw SilphCo9BattleText2 ; 0x5921 TextBeforeBattle - dw SilphCo9AfterBattleText2 ; 0x592b TextAfterBattle - dw SilphCo9EndBattleText2 ; 0x5926 TextEndBattle - dw SilphCo9EndBattleText2 ; 0x5926 TextEndBattle - -SilphCo9TrainerHeader2: ; 5d8ab (17:58ab) - db $4 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d833 ; flag's byte - dw SilphCo9BattleText3 ; 0x5930 TextBeforeBattle - dw SilphCo9AfterBattleText3 ; 0x593a TextAfterBattle - dw SilphCo9EndBattleText3 ; 0x5935 TextEndBattle - dw SilphCo9EndBattleText3 ; 0x5935 TextEndBattle +INCLUDE "scripts/viridianforestexit.asm" - db $ff +INCLUDE "data/mapObjects/viridianforestexit.asm" -SilphCo9Text1: ; 5d8b8 (17:58b8) - db $08 ; asm - ld a, [$d838] - bit 7, a - jr nz, .asm_a14c3 ; 0x5d8be - ld hl, UnnamedText_5d8e5 - call PrintText - ld a, $7 - call Predef - call GBFadeOut2 - call Delay3 - call GBFadeIn2 - ld hl, UnnamedText_5d8ea - call PrintText - jr .asm_b6e28 ; 0x5d8da -.asm_a14c3 ; 0x5d8dc - ld hl, UnnamedText_5d8ef - call PrintText -.asm_b6e28 ; 0x5d8e2 - jp TextScriptEnd +INCLUDE "data/mapHeaders/route2gate.asm" -UnnamedText_5d8e5: ; 5d8e5 (17:58e5) - TX_FAR _UnnamedText_5d8e5 - db "@" +INCLUDE "scripts/route2gate.asm" -UnnamedText_5d8ea: ; 5d8ea (17:58ea) - TX_FAR _UnnamedText_5d8ea - db "@" +INCLUDE "data/mapObjects/route2gate.asm" -UnnamedText_5d8ef: ; 5d8ef (17:58ef) - TX_FAR _UnnamedText_5d8ef - db "@" +INCLUDE "data/mapHeaders/viridianforestentrance.asm" -SilphCo9Text2: ; 5d8f4 (17:58f4) - db $08 ; asm - ld hl, SilphCo9TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd +INCLUDE "scripts/viridianforestentrance.asm" -SilphCo9Text3: ; 5d8fe (17:58fe) - db $08 ; asm - ld hl, SilphCo9TrainerHeader1 - call TalkToTrainer - jp TextScriptEnd +INCLUDE "data/mapObjects/viridianforestentrance.asm" -SilphCo9Text4: ; 5d908 (17:5908) - db $08 ; asm - ld hl, SilphCo9TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd +INCLUDE "data/mapHeaders/undergroundpathentranceroute5.asm" -SilphCo9BattleText1: ; 5d912 (17:5912) - TX_FAR _SilphCo9BattleText1 - db "@" +INCLUDE "scripts/undergroundpathentranceroute5.asm" -SilphCo9EndBattleText1: ; 5d917 (17:5917) - TX_FAR _SilphCo9EndBattleText1 - db "@" +INCLUDE "data/mapObjects/undergroundpathentranceroute5.asm" -SilphCo9AfterBattleText1: ; 5d91c (17:591c) - TX_FAR _SilphCo9AfterBattleText1 - db "@" +INCLUDE "data/mapHeaders/undergroundpathentranceroute6.asm" -SilphCo9BattleText2: ; 5d921 (17:5921) - TX_FAR _SilphCo9BattleText2 - db "@" +INCLUDE "scripts/undergroundpathentranceroute6.asm" -SilphCo9EndBattleText2: ; 5d926 (17:5926) - TX_FAR _SilphCo9EndBattleText2 - db "@" +INCLUDE "data/mapObjects/undergroundpathentranceroute6.asm" -SilphCo9AfterBattleText2: ; 5d92b (17:592b) - TX_FAR _SilphCo9AfterBattleText2 - db "@" +INCLUDE "data/mapHeaders/undergroundpathentranceroute7.asm" -SilphCo9BattleText3: ; 5d930 (17:5930) - TX_FAR _SilphCo9BattleText3 - db "@" +INCLUDE "scripts/undergroundpathentranceroute7.asm" -SilphCo9EndBattleText3: ; 5d935 (17:5935) - TX_FAR _SilphCo9EndBattleText3 - db "@" +INCLUDE "data/mapObjects/undergroundpathentranceroute7.asm" -SilphCo9AfterBattleText3: ; 5d93a (17:593a) - TX_FAR _SilphCo9AfterBattleText3 - db "@" +INCLUDE "data/mapHeaders/undergroundpathentranceroute7copy.asm" -SilphCo9Object: ; 0x5d93f (size=74) - db $2e ; border tile +INCLUDE "scripts/undergroundpathentranceroute7copy.asm" - db $5 ; warps - db $0, $e, $0, SILPH_CO_10F - db $0, $10, $0, SILPH_CO_8F - db $0, $12, $0, SILPH_CO_ELEVATOR - db $3, $9, $7, SILPH_CO_3F - db $f, $11, $4, SILPH_CO_5F +INCLUDE "data/mapObjects/undergroundpathentranceroute7copy.asm" - db $0 ; signs +INCLUDE "data/mapHeaders/silphco9.asm" - db $4 ; people - db SPRITE_NURSE, $e + 4, $3 + 4, $ff, $d0, $1 ; person - db SPRITE_ROCKET, $4 + 4, $2 + 4, $ff, $d1, $42, ROCKET + $C8, $25 ; trainer - db SPRITE_OAK_AIDE, $d + 4, $15 + 4, $ff, $d0, $43, SCIENTIST + $C8, $a ; trainer - db SPRITE_ROCKET, $10 + 4, $d + 4, $ff, $d1, $44, ROCKET + $C8, $26 ; trainer +INCLUDE "scripts/silphco9.asm" - ; warp-to - EVENT_DISP SILPH_CO_9F_WIDTH, $0, $e ; SILPH_CO_10F - EVENT_DISP SILPH_CO_9F_WIDTH, $0, $10 ; SILPH_CO_8F - EVENT_DISP SILPH_CO_9F_WIDTH, $0, $12 ; SILPH_CO_ELEVATOR - EVENT_DISP SILPH_CO_9F_WIDTH, $3, $9 ; SILPH_CO_3F - EVENT_DISP SILPH_CO_9F_WIDTH, $f, $11 ; SILPH_CO_5F +INCLUDE "data/mapObjects/silphco9.asm" SilphCo9Blocks: ; 5d989 (17:5989) INCBIN "maps/silphco9.blk" -VictoryRoad1_h: ; 0x5d9fe to 0x5da0a (12 bytes) (id=108) - db CAVERN ; tileset - db VICTORY_ROAD_1_HEIGHT, VICTORY_ROAD_1_WIDTH ; dimensions (y, x) - dw VictoryRoad1Blocks, VictoryRoad1TextPointers, VictoryRoad1Script ; blocks, texts, scripts - db $00 ; connections - dw VictoryRoad1Object ; objects +INCLUDE "data/mapHeaders/victoryroad1.asm" -VictoryRoad1Script: ; 5da0a (17:5a0a) - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - call nz, .next - call EnableAutoTextBoxDrawing - ld hl, VictoryRoad1TrainerHeaders - ld de, VictoryRoad1ScriptPointers - ld a, [W_VICTORYROAD1CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_VICTORYROAD1CURSCRIPT], a - ret -.next - ld a, [$d869] - bit 7, a - ret z - ld a, $1d - ld [$d09f], a - ld bc, $604 - ld a, $17 - jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) +INCLUDE "scripts/victoryroad1.asm" -VictoryRoad1ScriptPointers: ; 5da3a (17:5a3a) - dw VictoryRoad1Script0 - dw Func_324c - dw EndTrainerBattle - -VictoryRoad1Script0: ; 5da40 (17:5a40) - ld a, [$d869] - bit 7, a - jp nz, CheckFightingMapTrainers - ld hl, CoordsData_5da5c ; $5a5c - call CheckBoulderCoords - jp nc, CheckFightingMapTrainers - ld hl, $d126 - set 5, [hl] - ld hl, $d869 - set 7, [hl] - ret - -CoordsData_5da5c: ; 5da5c (17:5a5c) - db $0D,$11,$FF - -VictoryRoad1TextPointers: ; 5da5f (17:5a5f) - dw VictoryRoad1Text1 - dw VictoryRoad1Text2 - dw Predef5CText - dw Predef5CText - dw BoulderText - dw BoulderText - dw BoulderText - -VictoryRoad1TrainerHeaders: ; 5da6d (17:5a6d) -VictoryRoad1TrainerHeader0: ; 5da6d (17:5a6d) - db $1 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d869 ; flag's byte - dw VictoryRoad1BattleText1 ; 0x5a9a TextBeforeBattle - dw VictoryRoad1AfterBattleText1 ; 0x5aa4 TextAfterBattle - dw VictoryRoad1EndBattleText1 ; 0x5a9f TextEndBattle - dw VictoryRoad1EndBattleText1 ; 0x5a9f TextEndBattle - -VictoryRoad1TrainerHeader1: ; 5da79 (17:5a79) - db $2 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d869 ; flag's byte - dw VictoryRoad1BattleText2 ; 0x5aa9 TextBeforeBattle - dw VictoryRoad1AfterBattleText2 ; 0x5ab3 TextAfterBattle - dw VictoryRoad1EndBattleText2 ; 0x5aae TextEndBattle - dw VictoryRoad1EndBattleText2 ; 0x5aae TextEndBattle - - db $ff - -VictoryRoad1Text1: ; 5da86 (17:5a86) - db $08 ; asm - ld hl, VictoryRoad1TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -VictoryRoad1Text2: ; 5da90 (17:5a90) - db $08 ; asm - ld hl, VictoryRoad1TrainerHeader1 - call TalkToTrainer - jp TextScriptEnd - -VictoryRoad1BattleText1: ; 5da9a (17:5a9a) - TX_FAR _VictoryRoad1BattleText1 - db "@" - -VictoryRoad1EndBattleText1: ; 5da9f (17:5a9f) - TX_FAR _VictoryRoad1EndBattleText1 - db "@" - -VictoryRoad1AfterBattleText1: ; 5daa4 (17:5aa4) - TX_FAR _VictoryRoad1AfterBattleText1 - db "@" - -VictoryRoad1BattleText2: ; 5daa9 (17:5aa9) - TX_FAR _VictoryRoad1BattleText2 - db "@" - -VictoryRoad1EndBattleText2: ; 5daae (17:5aae) - TX_FAR _VictoryRoad1EndBattleText2 - db "@" - -VictoryRoad1AfterBattleText2: ; 5dab3 (17:5ab3) - TX_FAR _VictoryRoad1AfterBattleText2 - db "@" - -VictoryRoad1Object: ; 0x5dab8 (size=76) - db $7d ; border tile - - db $3 ; warps - db $11, $8, $2, $ff - db $11, $9, $2, $ff - db $1, $1, $0, VICTORY_ROAD_2 - - db $0 ; signs - - db $7 ; people - db SPRITE_LASS, $5 + 4, $7 + 4, $ff, $d3, $41, COOLTRAINER_F + $C8, $5 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $2 + 4, $3 + 4, $ff, $d0, $42, COOLTRAINER_M + $C8, $5 ; trainer - db SPRITE_BALL, $0 + 4, $b + 4, $ff, $ff, $83, TM_43 ; item - db SPRITE_BALL, $2 + 4, $9 + 4, $ff, $ff, $84, RARE_CANDY ; item - db SPRITE_BOULDER, $f + 4, $5 + 4, $ff, $10, $5 ; person - db SPRITE_BOULDER, $2 + 4, $e + 4, $ff, $10, $6 ; person - db SPRITE_BOULDER, $a + 4, $2 + 4, $ff, $10, $7 ; person - - ; warp-to - EVENT_DISP VICTORY_ROAD_1_WIDTH, $11, $8 - EVENT_DISP VICTORY_ROAD_1_WIDTH, $11, $9 - EVENT_DISP VICTORY_ROAD_1_WIDTH, $1, $1 ; VICTORY_ROAD_2 +INCLUDE "data/mapObjects/victoryroad1.asm" VictoryRoad1Blocks: ; 5db04 (17:5b04) INCBIN "maps/victoryroad1.blk" @@ -94019,1366 +48538,76 @@ SSAnne10Blocks: ; 603c0 (18:43c0) SSAnne9Blocks: ; 603c0 (18:43c0) INCBIN "maps/ssanne9.blk" -PokemonTower1_h: ; 0x60420 to 0x6042c (12 bytes) (id=142) - db CEMETERY ; tileset - db POKEMONTOWER_1_HEIGHT, POKEMONTOWER_1_WIDTH ; dimensions (y, x) - dw PokemonTower1Blocks, PokemonTower1TextPointers, PokemonTower1Script ; blocks, texts, scripts - db $00 ; connections - dw PokemonTower1Object ; objects - -PokemonTower1Script: ; 6042c (18:442c) - jp EnableAutoTextBoxDrawing - -PokemonTower1TextPointers: ; 6042f (18:442f) - dw PokemonTower1Text1 - dw PokemonTower1Text2 - dw PokemonTower1Text3 - dw PokemonTower1Text4 - dw PokemonTower1Text5 - -PokemonTower1Text1: ; 60439 (18:4439) - TX_FAR _PokemonTower1Text1 - db "@" +INCLUDE "data/mapHeaders/pokemontower1.asm" -PokemonTower1Text2: ; 6043e (18:443e) - TX_FAR _PokemonTower1Text2 - db "@" +INCLUDE "scripts/pokemontower1.asm" -PokemonTower1Text3: ; 60443 (18:4443) - TX_FAR _PokemonTower1Text3 - db "@" - -PokemonTower1Text4: ; 60448 (18:4448) - TX_FAR _PokemonTower1Text4 - db "@" - -PokemonTower1Text5: ; 6044d (18:444d) - TX_FAR _PokemonTower1Text5 - db "@" - -PokemonTower1Object: ; 0x60452 (size=58) - db $1 ; border tile - - db $3 ; warps - db $11, $a, $1, $ff - db $11, $b, $1, $ff - db $9, $12, $1, POKEMONTOWER_2 - - db $0 ; signs - - db $5 ; people - db SPRITE_CABLE_CLUB_WOMAN, $d + 4, $f + 4, $ff, $d1, $1 ; person - db SPRITE_MOM_GEISHA, $8 + 4, $6 + 4, $ff, $ff, $2 ; person - db SPRITE_BALDING_GUY, $c + 4, $8 + 4, $ff, $ff, $3 ; person - db SPRITE_GIRL, $7 + 4, $d + 4, $ff, $ff, $4 ; person - db SPRITE_MEDIUM, $7 + 4, $11 + 4, $ff, $d2, $5 ; person - - ; warp-to - EVENT_DISP POKEMONTOWER_1_WIDTH, $11, $a - EVENT_DISP POKEMONTOWER_1_WIDTH, $11, $b - EVENT_DISP POKEMONTOWER_1_WIDTH, $9, $12 ; POKEMONTOWER_2 +INCLUDE "data/mapObjects/pokemontower1.asm" PokemonTower1Blocks: ; 6048c (18:448c) INCBIN "maps/pokemontower1.blk" -PokemonTower2_h: ; 0x604e6 to 0x604f2 (12 bytes) (id=143) - db CEMETERY ; tileset - db POKEMONTOWER_2_HEIGHT, POKEMONTOWER_2_WIDTH ; dimensions (y, x) - dw PokemonTower2Blocks, PokemonTower2TextPointers, PokemonTower2Script ; blocks, texts, scripts - db $00 ; connections - dw PokemonTower2Object ; objects - -PokemonTower2Script: ; 604f2 (18:44f2) - call EnableAutoTextBoxDrawing - ld hl, PokemonTower2ScriptPointers - ld a, [W_POKEMONTOWER2CURSCRIPT] - jp CallFunctionInTable +INCLUDE "data/mapHeaders/pokemontower2.asm" -Func_604fe: ; 604fe (18:44fe) - xor a - ld [wJoypadForbiddenButtonsMask], a - ld [W_POKEMONTOWER2CURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret +INCLUDE "scripts/pokemontower2.asm" -PokemonTower2ScriptPointers: ; 60509 (18:4509) - dw PokemonTower2Script0 - dw PokemonTower2Script1 - dw PokemonTower2Script2 - -PokemonTower2Script0: ; 6050f (18:450f) - ld a, [$d764] - bit 7, a - ret nz - ld hl, CoordsData_6055e ; $455e - call ArePlayerCoordsInArray - ret nc - ld a, $ff - ld [$c0ee], a - call PlaySound - ld c, BANK(Music_MeetRival) - ld a, MUSIC_MEET_RIVAL - call PlayMusic - ld hl, $d764 - res 6, [hl] - ld a, [$cd3d] - cp $1 - ld a, $8 - ld b, $0 - jr nz, .asm_60544 ; 0x60539 $9 - ld hl, $d764 - set 6, [hl] - ld a, $2 - ld b, $c -.asm_60544 - ld [$d528], a - ld a, $1 - ld [$ff8c], a - ld a, b - ld [$ff8d], a - call Func_34a6 - ld a, $1 - ld [$ff8c], a - call DisplayTextID - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - ld [H_NEWLYPRESSEDBUTTONS], a - 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) - ld a, [$d057] - cp $ff - jp z, Func_604fe - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - ld hl, $d764 - set 7, [hl] - ld a, $1 - ld [$ff8c], a - call DisplayTextID - ld de, MovementData_605b2 - ld a, [$d764] - bit 6, a - jr nz, .asm_60589 ; 0x60584 $3 - ld de, MovementData_605a9 -.asm_60589 - ld a, $1 - ld [$ff8c], a - call MoveSprite - ld a, $ff - ld [$c0ee], a - call PlaySound - callba Music_RivalAlternateStart - ld a, $2 - ld [W_POKEMONTOWER2CURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -MovementData_605a9: ; 605a9 (18:45a9) - db $C0,$00,$00,$C0,$00,$00,$C0,$C0,$FF - -MovementData_605b2: ; 605b2 (18:45b2) - db $00,$00,$C0,$C0,$C0,$C0,$00,$00,$FF - -PokemonTower2Script2: ; 605bb (18:45bb) - ld a, [$d730] - bit 0, a - ret nz - ld a, $38 - ld [$cc4d], a - ld a, $11 - call Predef - xor a - ld [wJoypadForbiddenButtonsMask], a - call Func_2307 - ld a, $0 - ld [W_POKEMONTOWER2CURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -PokemonTower2TextPointers: ; 605db (18:45db) - dw PokemonTower2Text1 - dw PokemonTower2Text2 - -PokemonTower2Text1: ; 605df (18:45df) - db $08 ; asm - ld a, [$d764] - bit 7, a - jr z, .asm_16f24 ; 0x605e5 - ld hl, UnnamedText_6063c - call PrintText - jr .asm_41852 ; 0x605ed -.asm_16f24 ; 0x605ef - ld hl, UnnamedText_6062d - call PrintText - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, UnnamedText_60632 - ld de, UnnamedText_60637 ; XXX $4637 - call PreBattleSaveRegisters - ld a, $f2 - ld [$d059], a - - ; select which team to use during the encounter - ld a, [W_RIVALSTARTER] - cp SQUIRTLE - jr nz, .NotSquirtle ; 0x6060f - ld a, $4 - jr .done -.NotSquirtle ; 0x60615 - cp BULBASAUR - jr nz, .Charmander ; 0x60617 - ld a, $5 - jr .done -.Charmander ; 0x6061d - ld a, $6 -.done - ld [W_TRAINERNO], a - - ld a, $1 - ld [W_POKEMONTOWER2CURSCRIPT], a - ld [W_CURMAPSCRIPT], a -.asm_41852 ; 0x6062a - jp TextScriptEnd - -UnnamedText_6062d: ; 6062d (18:462d) - TX_FAR _UnnamedText_6062d - db "@" - -UnnamedText_60632: ; 60632 (18:4632) - TX_FAR _UnnamedText_60632 - db "@" - -UnnamedText_60637: ; 60637 (18:4637) - TX_FAR _UnnamedText_60637 - db "@" - -UnnamedText_6063c: ; 6063c (18:463c) - TX_FAR _UnnamedText_6063c - db "@" - -PokemonTower2Text2: ; 60641 (18:4641) - TX_FAR _PokemonTower2Text2 - db "@" - -PokemonTower2Object: ; 0x60646 (size=32) - db $1 ; border tile - - db $2 ; warps - db $9, $3, $0, POKEMONTOWER_3 - db $9, $12, $2, POKEMONTOWER_1 - - db $0 ; signs - - db $2 ; people - db SPRITE_BLUE, $5 + 4, $e + 4, $ff, $ff, $1 ; person - db SPRITE_MEDIUM, $7 + 4, $3 + 4, $ff, $d3, $2 ; person - - ; warp-to - EVENT_DISP POKEMONTOWER_2_WIDTH, $9, $3 ; POKEMONTOWER_3 - EVENT_DISP POKEMONTOWER_2_WIDTH, $9, $12 ; POKEMONTOWER_1 +INCLUDE "data/mapObjects/pokemontower2.asm" PokemonTower2Blocks: ; 60666 (18:4666) INCBIN "maps/pokemontower2.blk" -PokemonTower3_h: ; 0x606c0 to 0x606cc (12 bytes) (id=144) - db CEMETERY ; tileset - db POKEMONTOWER_3_HEIGHT, POKEMONTOWER_3_WIDTH ; dimensions (y, x) - dw PokemonTower3Blocks, PokemonTower3TextPointers, PokemonTower3Script ; blocks, texts, scripts - db $00 ; connections - dw PokemonTower3Object ; objects +INCLUDE "data/mapHeaders/pokemontower3.asm" -PokemonTower3Script: ; 606cc (18:46cc) - call EnableAutoTextBoxDrawing - ld hl, PokemonTower3TrainerHeaders - ld de, PokemonTower3ScriptPointers - ld a, [W_POKEMONTOWER3CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_POKEMONTOWER3CURSCRIPT], a - ret - -PokemonTower3ScriptPointers: ; 606df (18:46df) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -PokemonTower3TextPointers: ; 606e5 (18:46e5) - dw PokemonTower3Text1 - dw PokemonTower3Text2 - dw PokemonTower3Text3 - dw Predef5CText - -PokemonTower3TrainerHeaders: ; 606ed (18:46ed) -PokemonTower3TrainerHeader0: ; 606ed (18:46ed) - db $1 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d765 ; flag's byte - dw PokemonTower3BattleText1 ; 0x4730 TextBeforeBattle - dw PokemonTower3AfterBattleText1 ; 0x473a TextAfterBattle - dw PokemonTower3EndBattleText1 ; 0x4735 TextEndBattle - dw PokemonTower3EndBattleText1 ; 0x4735 TextEndBattle - -PokemonTower3TrainerHeader1: ; 606f9 (18:46f9) - db $2 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d765 ; flag's byte - dw PokemonTower3BattleText2 ; 0x473f TextBeforeBattle - dw PokemonTower3AfterBattleText2 ; 0x4749 TextAfterBattle - dw PokemonTower3EndBattleText2 ; 0x4744 TextEndBattle - dw PokemonTower3EndBattleText2 ; 0x4744 TextEndBattle - -PokemonTower3TrainerHeader2: ; 60705 (18:4705) - db $3 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d765 ; flag's byte - dw PokemonTower3BattleText3 ; 0x474e TextBeforeBattle - dw PokemonTower3AfterBattleText3 ; 0x4758 TextAfterBattle - dw PokemonTower3EndBattleText3 ; 0x4753 TextEndBattle - dw PokemonTower3EndBattleText3 ; 0x4753 TextEndBattle - db $ff +INCLUDE "scripts/pokemontower3.asm" -PokemonTower3Text1: ; 60712 (18:4712) - db $08 ; asm - ld hl, PokemonTower3TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -PokemonTower3Text2: ; 6071c (18:471c) - db $08 ; asm - ld hl, PokemonTower3TrainerHeader1 - call TalkToTrainer - jp TextScriptEnd - -PokemonTower3Text3: ; 60726 (18:4726) - db $08 ; asm - ld hl, PokemonTower3TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -PokemonTower3BattleText1: ; 60730 (18:4730) - TX_FAR _PokemonTower3BattleText1 - db "@" - -PokemonTower3EndBattleText1: ; 60735 (18:4735) - TX_FAR _PokemonTower3EndBattleText1 - db "@" - -PokemonTower3AfterBattleText1: ; 6073a (18:473a) - TX_FAR _PokemonTower3AfterBattleText1 - db "@" - -PokemonTower3BattleText2: ; 6073f (18:473f) - TX_FAR _PokemonTower3BattleText2 - db "@" - -PokemonTower3EndBattleText2: ; 60744 (18:4744) - TX_FAR _PokemonTower3EndBattleText2 - db "@" - -PokemonTower3AfterBattleText2: ; 60749 (18:4749) - TX_FAR _PokemonTower3AfterBattleText2 - db "@" - -PokemonTower3BattleText3: ; 6074e (18:474e) - TX_FAR _PokemonTower3BattleText3 - db "@" - -PokemonTower3EndBattleText3: ; 60753 (18:4753) - TX_FAR _PokemonTower3EndBattleText3 - db "@" - -PokemonTower3AfterBattleText3: ; 60758 (18:4758) - TX_FAR _PokemonTower3AfterBattleText3 - db "@" - -PokemonTower3Object: ; 0x6075d (size=51) - db $1 ; border tile - - db $2 ; warps - db $9, $3, $0, POKEMONTOWER_2 - db $9, $12, $1, POKEMONTOWER_4 - - db $0 ; signs - - db $4 ; people - db SPRITE_MEDIUM, $3 + 4, $c + 4, $ff, $d2, $41, CHANNELER + $C8, $5 ; trainer - db SPRITE_MEDIUM, $8 + 4, $9 + 4, $ff, $d0, $42, CHANNELER + $C8, $6 ; trainer - db SPRITE_MEDIUM, $d + 4, $a + 4, $ff, $d0, $43, CHANNELER + $C8, $8 ; trainer - db SPRITE_BALL, $1 + 4, $c + 4, $ff, $ff, $84, ESCAPE_ROPE ; item - - ; warp-to - EVENT_DISP POKEMONTOWER_3_WIDTH, $9, $3 ; POKEMONTOWER_2 - EVENT_DISP POKEMONTOWER_3_WIDTH, $9, $12 ; POKEMONTOWER_4 +INCLUDE "data/mapObjects/pokemontower3.asm" PokemonTower3Blocks: ; 60790 (18:4790) INCBIN "maps/pokemontower3.blk" -PokemonTower4_h: ; 0x607ea to 0x607f6 (12 bytes) (id=145) - db CEMETERY ; tileset - db POKEMONTOWER_4_HEIGHT, POKEMONTOWER_4_WIDTH ; dimensions (y, x) - dw PokemonTower4Blocks, PokemonTower4TextPointers, PokemonTower4Script ; blocks, texts, scripts - db $00 ; connections - dw PokemonTower4Object ; objects +INCLUDE "data/mapHeaders/pokemontower4.asm" -PokemonTower4Script: ; 607f6 (18:47f6) - call EnableAutoTextBoxDrawing - ld hl, PokemonTower4TrainerHeaders - ld de, PokemonTower4ScriptPointers - ld a, [W_POKEMONTOWER4CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_POKEMONTOWER4CURSCRIPT], a - ret - -PokemonTower4ScriptPointers: ; 60809 (18:4809) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -PokemonTower4TextPointers: ; 6080f (18:480f) - dw PokemonTower4Text1 - dw PokemonTower4Text2 - dw PokemonTower4Text3 - dw Predef5CText - dw Predef5CText - dw Predef5CText - -PokemonTower4TrainerHeaders: ; 6081b (18:481b) -PokemonTower4TrainerHeader0: ; 6081b (18:481b) - db $1 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d766 ; flag's byte - dw PokemonTower4BattleText1 ; 0x485e TextBeforeBattle - dw PokemonTower4AfterBattleText1 ; 0x4868 TextAfterBattle - dw PokemonTower4EndBattleText1 ; 0x4863 TextEndBattle - dw PokemonTower4EndBattleText1 ; 0x4863 TextEndBattle - -PokemonTower4TrainerHeader1: ; 60827 (18:4827) - db $2 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d766 ; flag's byte - dw PokemonTower4BattleText2 ; 0x486d TextBeforeBattle - dw PokemonTower4AfterBattleText2 ; 0x4877 TextAfterBattle - dw PokemonTower4EndBattleText2 ; 0x4872 TextEndBattle - dw PokemonTower4EndBattleText2 ; 0x4872 TextEndBattle - -PokemonTower4TrainerHeader2: ; 60833 (18:4833) - db $3 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d766 ; flag's byte - dw PokemonTower4BattleText3 ; 0x487c TextBeforeBattle - dw PokemonTower4AfterBattleText3 ; 0x4886 TextAfterBattle - dw PokemonTower4EndBattleText3 ; 0x4881 TextEndBattle - dw PokemonTower4EndBattleText3 ; 0x4881 TextEndBattle +INCLUDE "scripts/pokemontower4.asm" - db $ff - -PokemonTower4Text1: ; 60840 (18:4840) - db $08 ; asm - ld hl, PokemonTower4TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -PokemonTower4Text2: ; 6084a (18:484a) - db $08 ; asm - ld hl, PokemonTower4TrainerHeader1 - call TalkToTrainer - jp TextScriptEnd - -PokemonTower4Text3: ; 60854 (18:4854) - db $08 ; asm - ld hl, PokemonTower4TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -PokemonTower4BattleText1: ; 6085e (18:485e) - TX_FAR _PokemonTower4BattleText1 - db "@" - -PokemonTower4EndBattleText1: ; 60863 (18:4863) - TX_FAR _PokemonTower4EndBattleText1 - db "@" - -PokemonTower4AfterBattleText1: ; 60868 (18:4868) - TX_FAR _PokemonTower4AfterBattleText1 - db "@" - -PokemonTower4BattleText2: ; 6086d (18:486d) - TX_FAR _PokemonTower4BattleText2 - db "@" - -PokemonTower4EndBattleText2: ; 60872 (18:4872) - TX_FAR _PokemonTower4EndBattleText2 - db "@" - -PokemonTower4AfterBattleText2: ; 60877 (18:4877) - TX_FAR _PokemonTower4AfterBattleText2 - db "@" - -PokemonTower4BattleText3: ; 6087c (18:487c) - TX_FAR _PokemonTower4BattleText3 - db "@" - -PokemonTower4EndBattleText3: ; 60881 (18:4881) - TX_FAR _PokemonTower4EndBattleText3 - db "@" - -PokemonTower4AfterBattleText3: ; 60886 (18:4886) - TX_FAR _PokemonTower4AfterBattleText3 - db "@" - -PokemonTower4Object: ; 0x6088b (size=65) - db $1 ; border tile - - db $2 ; warps - db $9, $3, $0, POKEMONTOWER_5 - db $9, $12, $1, POKEMONTOWER_3 - - db $0 ; signs - - db $6 ; people - db SPRITE_MEDIUM, $a + 4, $5 + 4, $ff, $d3, $41, CHANNELER + $C8, $9 ; trainer - db SPRITE_MEDIUM, $7 + 4, $f + 4, $ff, $d0, $42, CHANNELER + $C8, $a ; trainer - db SPRITE_MEDIUM, $c + 4, $e + 4, $ff, $d2, $43, CHANNELER + $C8, $c ; trainer - db SPRITE_BALL, $a + 4, $c + 4, $ff, $ff, $84, ELIXER ; item - db SPRITE_BALL, $a + 4, $9 + 4, $ff, $ff, $85, AWAKENING ; item - db SPRITE_BALL, $10 + 4, $c + 4, $ff, $ff, $86, HP_UP ; item - - ; warp-to - EVENT_DISP POKEMONTOWER_4_WIDTH, $9, $3 ; POKEMONTOWER_5 - EVENT_DISP POKEMONTOWER_4_WIDTH, $9, $12 ; POKEMONTOWER_3 +INCLUDE "data/mapObjects/pokemontower4.asm" PokemonTower4Blocks: ; 608cc (18:48cc) INCBIN "maps/pokemontower4.blk" -PokemonTower5_h: ; 0x60926 to 0x60932 (12 bytes) (id=146) - db CEMETERY ; tileset - db POKEMONTOWER_5_HEIGHT, POKEMONTOWER_5_WIDTH ; dimensions (y, x) - dw PokemonTower5Blocks, PokemonTower5TextPointers, PokemonTower5Script ; blocks, texts, scripts - db $00 ; connections - dw PokemonTower5Object ; objects - -PokemonTower5Script: ; 60932 (18:4932) - call EnableAutoTextBoxDrawing - ld hl, PokemonTower5TrainerHeaders - ld de, PokemonTower5ScriptPointers - ld a, [W_POKEMONTOWER5CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_POKEMONTOWER5CURSCRIPT], a - ret - -PokemonTower5ScriptPointers: ; 60945 (18:4945) - dw PokemonTower5Script0 - dw Func_324c - dw EndTrainerBattle - -PokemonTower5Script0: ; 6094b (18:494b) - ld hl, CoordsData_60992 ; $4992 - call ArePlayerCoordsInArray - jr c, .asm_60960 - ld hl, $d72e - res 4, [hl] - ld hl, $d767 - res 7, [hl] - jp CheckFightingMapTrainers -.asm_60960 - ld hl, $d767 - bit 7, [hl] - set 7, [hl] - ret nz - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - ld hl, $d72e - set 4, [hl] - ld a, $7 - call Predef ; indirect jump to HealParty (f6a5 (3:76a5)) - call GBFadeOut2 - call Delay3 - call Delay3 - call GBFadeIn2 - ld a, $7 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - xor a - ld [wJoypadForbiddenButtonsMask], a - ret - -CoordsData_60992: ; 60992 (18:4992) - db $08,$0A - db $08,$0B - db $09,$0A - db $09,$0B - db $FF - -PokemonTower5TextPointers: ; 6099b (18:499b) - dw PokemonTower5Text1 - dw PokemonTower5Text2 - dw PokemonTower5Text3 - dw PokemonTower5Text4 - dw PokemonTower5Text5 - dw Predef5CText - dw PokemonTower5Text7 - -PokemonTower5TrainerHeaders: ; 609a9 (18:49a9) -PokemonTower5TrainerHeader0: ; 609a9 (18:49a9) - db $2 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d767 ; flag's byte - dw PokemonTower5BattleText1 ; 0x49e9 TextBeforeBattle - dw PokemonTower5AfterBattleText1 ; 0x49f3 TextAfterBattle - dw PokemonTower5EndBattleText1 ; 0x49ee TextEndBattle - dw PokemonTower5EndBattleText1 ; 0x49ee TextEndBattle - -PokemonTower5TrainerHeader1: ; 609b5 (18:49b5) - db $3 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d767 ; flag's byte - dw PokemonTower5BattleText2 ; 0x4a02 TextBeforeBattle - dw PokemonTower5AfterBattleText2 ; 0x4a0c TextAfterBattle - dw PokemonTower5EndBattleText2 ; 0x4a07 TextEndBattle - dw PokemonTower5EndBattleText2 ; 0x4a07 TextEndBattle - -PokemonTower5TrainerHeader2: ; 609c1 (18:49c1) - db $4 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d767 ; flag's byte - dw PokemonTower5BattleText3 ; 0x4a1b TextBeforeBattle - dw PokemonTower5AfterBattleText3 ; 0x4a25 TextAfterBattle - dw PokemonTower5EndBattleText3 ; 0x4a20 TextEndBattle - dw PokemonTower5EndBattleText3 ; 0x4a20 TextEndBattle - -PokemonTower5TrainerHeader3: ; 609cd (18:49cd) - db $5 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d767 ; flag's byte - dw PokemonTower5BattleText4 ; 0x4a34 TextBeforeBattle - dw PokemonTower5AfterBattleText4 ; 0x4a3e TextAfterBattle - dw PokemonTower5EndBattleText4 ; 0x4a39 TextEndBattle - dw PokemonTower5EndBattleText4 ; 0x4a39 TextEndBattle - - db $ff - -PokemonTower5Text1: ; 609da (18:49da) - TX_FAR _PokemonTower5Text1 - db "@" - -PokemonTower5Text2: ; 609df (18:49df) - db $08 ; asm - ld hl, PokemonTower5TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -PokemonTower5BattleText1: ; 609e9 (18:49e9) - TX_FAR _PokemonTower5BattleText1 - db "@" - -PokemonTower5EndBattleText1: ; 609ee (18:49ee) - TX_FAR _PokemonTower5EndBattleText1 - db "@" +INCLUDE "data/mapHeaders/pokemontower5.asm" -PokemonTower5AfterBattleText1: ; 609f3 (18:49f3) - TX_FAR _PokemonTower5AfterBattleText1 - db "@" +INCLUDE "scripts/pokemontower5.asm" -PokemonTower5Text3: ; 609f8 (18:49f8) - db $08 ; asm - ld hl, PokemonTower5TrainerHeader1 - call TalkToTrainer - jp TextScriptEnd - -PokemonTower5BattleText2: ; 60a02 (18:4a02) - TX_FAR _PokemonTower5BattleText2 - db "@" - -PokemonTower5EndBattleText2: ; 60a07 (18:4a07) - TX_FAR _PokemonTower5EndBattleText2 - db "@" - -PokemonTower5AfterBattleText2: ; 60a0c (18:4a0c) - TX_FAR _PokemonTower5AfterBattleText2 - db "@" - -PokemonTower5Text4: ; 60a11 (18:4a11) - db $08 ; asm - ld hl, PokemonTower5TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -PokemonTower5BattleText3: ; 60a1b (18:4a1b) - TX_FAR _PokemonTower5BattleText3 - db "@" - -PokemonTower5EndBattleText3: ; 60a20 (18:4a20) - TX_FAR _PokemonTower5EndBattleText3 - db "@" - -PokemonTower5AfterBattleText3: ; 60a25 (18:4a25) - TX_FAR _PokemonTower5AfterBattleText3 - db "@" - -PokemonTower5Text5: ; 60a2a (18:4a2a) - db $08 ; asm - ld hl, PokemonTower5TrainerHeader3 ; $49cd - call TalkToTrainer - jp TextScriptEnd - -PokemonTower5BattleText4: ; 60a34 (18:4a34) - TX_FAR _PokemonTower5BattleText4 - db "@" - -PokemonTower5EndBattleText4: ; 60a39 (18:4a39) - TX_FAR _PokemonTower5EndBattleText4 - db "@" - -PokemonTower5AfterBattleText4: ; 60a3e (18:4a3e) - TX_FAR _PokemonTower5AfterBattleText4 - db "@" - -PokemonTower5Text7: ; 60a43 (18:4a43) - TX_FAR _UnnamedText_60a43 - db "@" - -PokemonTower5Object: ; 0x60a48 (size=65) - db $1 ; border tile - - db $2 ; warps - db $9, $3, $0, POKEMONTOWER_4 - db $9, $12, $0, POKEMONTOWER_6 - - db $0 ; signs - - db $6 ; people - db SPRITE_MEDIUM, $8 + 4, $c + 4, $ff, $ff, $1 ; person - db SPRITE_MEDIUM, $7 + 4, $11 + 4, $ff, $d2, $42, CHANNELER + $C8, $e ; trainer - db SPRITE_MEDIUM, $3 + 4, $e + 4, $ff, $d2, $43, CHANNELER + $C8, $10 ; trainer - db SPRITE_MEDIUM, $a + 4, $6 + 4, $ff, $d3, $44, CHANNELER + $C8, $11 ; trainer - db SPRITE_MEDIUM, $10 + 4, $9 + 4, $ff, $d3, $45, CHANNELER + $C8, $12 ; trainer - db SPRITE_BALL, $e + 4, $6 + 4, $ff, $ff, $86, NUGGET ; item - - ; warp-to - EVENT_DISP POKEMONTOWER_5_WIDTH, $9, $3 ; POKEMONTOWER_4 - EVENT_DISP POKEMONTOWER_5_WIDTH, $9, $12 ; POKEMONTOWER_6 +INCLUDE "data/mapObjects/pokemontower5.asm" PokemonTower5Blocks: ; 60a89 (18:4a89) INCBIN "maps/pokemontower5.blk" -PokemonTower6_h: ; 0x60ae3 to 0x60aef (12 bytes) (id=147) - db CEMETERY ; tileset - db POKEMONTOWER_6_HEIGHT, POKEMONTOWER_6_WIDTH ; dimensions (y, x) - dw PokemonTower6Blocks, PokemonTower6TextPointers, PokemonTower6Script ; blocks, texts, scripts - db $00 ; connections - dw PokemonTower6Object ; objects - -PokemonTower6Script: ; 60aef (18:4aef) - call EnableAutoTextBoxDrawing - ld hl, PokemonTower6TrainerHeaders - ld de, PokemonTower6ScriptPointers - ld a, [W_POKEMONTOWER6CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_POKEMONTOWER6CURSCRIPT], a - ret - -Func_60b02: ; 60b02 (18:4b02) - xor a - ld [wJoypadForbiddenButtonsMask], a - ld [W_POKEMONTOWER6CURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -PokemonTower6ScriptPointers: ; 60b0d (18:4b0d) - dw PokemonTower6Script0 - dw Func_324c - dw EndTrainerBattle - dw PokemonTower6Script3 - dw PokemonTower6Script4 - -PokemonTower6Script0: ; 60b17 (18:4b17) - ld a, [$d768] - bit 7, a - jp nz, CheckFightingMapTrainers - ld hl, CoordsData_60b45 ; $4b45 - call ArePlayerCoordsInArray - jp nc, CheckFightingMapTrainers - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - ld a, $6 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - ld a, $91 - ld [W_CUROPPONENT], a ; $d059 - ld a, $1e - ld [W_CURENEMYLVL], a ; $d127 - ld a, $4 - ld [W_POKEMONTOWER6CURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -CoordsData_60b45: ; 60b45 (18:4b45) - db $10,$0A,$FF - -PokemonTower6Script4: ; 60b48 (18:4b48) - ld a, [W_ISINBATTLE] ; $d057 - cp $ff - jp z, Func_60b02 - ld a, $ff - ld [wJoypadForbiddenButtonsMask], a - ld a, [$d72d] - bit 6, a - ret nz - call UpdateSprites - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - ld a, [$cf0b] - and a - jr nz, .asm_60b82 - ld hl, $d768 - set 7, [hl] - ld a, $7 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - xor a - ld [wJoypadForbiddenButtonsMask], a - ld a, $0 - ld [W_POKEMONTOWER6CURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret -.asm_60b82 - ld a, $1 - ld [$cd38], a - ld a, $10 - ld [$ccd3], a - xor a - ld [$c206], a - ld [$cd3b], a - ld hl, $d730 - set 7, [hl] - ld a, $3 - ld [W_POKEMONTOWER6CURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -PokemonTower6Script3: ; 60ba1 (18:4ba1) - ld a, [$cd38] - and a - ret nz - call Delay3 - xor a - ld [W_POKEMONTOWER6CURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -PokemonTower6TextPointers: ; 60bb1 (18:4bb1) - dw PokemonTower6Text1 - dw PokemonTower6Text2 - dw PokemonTower6Text3 - dw Predef5CText - dw Predef5CText - dw PokemonTower6Text6 - dw PokemonTower6Text7 - -PokemonTower6TrainerHeaders: ; 60bbf (18:4bbf) -PokemonTower6TrainerHeader0: ; 60bbf (18:4bbf) - db $1 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d768 ; flag's byte - dw PokemonTower6BattleText1 ; 0x4c29 TextBeforeBattle - dw PokemonTower6AfterBattleText1 ; 0x4c33 TextAfterBattle - dw PokemonTower6EndBattleText1 ; 0x4c2e TextEndBattle - dw PokemonTower6EndBattleText1 ; 0x4c2e TextEndBattle - -PokemonTower6TrainerHeader1: ; 60bcb (18:4bcb) - db $2 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d768 ; flag's byte - dw PokemonTower6BattleText2 ; 0x4c38 TextBeforeBattle - dw PokemonTower6AfterBattleText2 ; 0x4c42 TextAfterBattle - dw PokemonTower6EndBattleText2 ; 0x4c3d TextEndBattle - dw PokemonTower6EndBattleText2 ; 0x4c3d TextEndBattle - -PokemonTower6TrainerHeader2: ; 60bd7 (18:4bd7) - db $3 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d768 ; flag's byte - dw PokemonTower6BattleText3 ; 0x4c47 TextBeforeBattle - dw PokemonTower6AfterBattleText3 ; 0x4c51 TextAfterBattle - dw PokemonTower6EndBattleText3 ; 0x4c4c TextEndBattle - dw PokemonTower6EndBattleText3 ; 0x4c4c TextEndBattle - - db $ff - -PokemonTower6Text1: ; 60be4 (18:4be4) - db $08 ; asm - ld hl, PokemonTower6TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -PokemonTower6Text2: ; 60bee (18:4bee) - db $08 ; asm - ld hl, PokemonTower6TrainerHeader1 - call TalkToTrainer - jp TextScriptEnd - -PokemonTower6Text3: ; 60bf8 (18:4bf8) - db $08 ; asm - ld hl, PokemonTower6TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -PokemonTower6Text7: ; 60c02 (18:4c02) - db $8 - ld hl, UnnamedText_60c1f - call PrintText - ld a, MAROWAK - call PlayCry - call WaitForSoundToFinish - ld c, $1e - call DelayFrames - ld hl, UnnamedText_60c24 - call PrintText - jp TextScriptEnd - -UnnamedText_60c1f: ; 60c1f (18:4c1f) - TX_FAR _UnnamedText_60c1f - db "@" +INCLUDE "data/mapHeaders/pokemontower6.asm" -UnnamedText_60c24: ; 60c24 (18:4c24) - TX_FAR _UnnamedText_60c24 - db "@" +INCLUDE "scripts/pokemontower6.asm" -PokemonTower6BattleText1: ; 60c29 (18:4c29) - TX_FAR _PokemonTower6BattleText1 - db "@" - -PokemonTower6EndBattleText1: ; 60c2e (18:4c2e) - TX_FAR _PokemonTower6EndBattleText1 - db "@" - -PokemonTower6AfterBattleText1: ; 60c33 (18:4c33) - TX_FAR _PokemonTower6AfterBattleText1 - db "@" - -PokemonTower6BattleText2: ; 60c38 (18:4c38) - TX_FAR _PokemonTower6BattleText2 - db "@" - -PokemonTower6EndBattleText2: ; 60c3d (18:4c3d) - TX_FAR _PokemonTower6EndBattleText2 - db "@" - -PokemonTower6AfterBattleText2: ; 60c42 (18:4c42) - TX_FAR _PokemonTower6AfterBattleText2 - db "@" - -PokemonTower6BattleText3: ; 60c47 (18:4c47) - TX_FAR _PokemonTower6BattleText3 - db "@" - -PokemonTower6EndBattleText3: ; 60c4c (18:4c4c) - TX_FAR _PokemonTower6EndBattleText3 - db "@" - -PokemonTower6AfterBattleText3: ; 60c51 (18:4c51) - TX_FAR _PokemonTower6AfterBattleText3 - db "@" - -PokemonTower6Text6: ; 60c56 (18:4c56) - TX_FAR _UnnamedText_60c56 - db "@" - -PokemonTower6Object: ; 0x60c5b (size=58) - db $1 ; border tile - - db $2 ; warps - db $9, $12, $1, POKEMONTOWER_5 - db $10, $9, $0, POKEMONTOWER_7 - - db $0 ; signs - - db $5 ; people - db SPRITE_MEDIUM, $a + 4, $c + 4, $ff, $d3, $41, CHANNELER + $C8, $13 ; trainer - db SPRITE_MEDIUM, $5 + 4, $9 + 4, $ff, $d0, $42, CHANNELER + $C8, $14 ; trainer - db SPRITE_MEDIUM, $5 + 4, $10 + 4, $ff, $d2, $43, CHANNELER + $C8, $15 ; trainer - db SPRITE_BALL, $8 + 4, $6 + 4, $ff, $ff, $84, RARE_CANDY ; item - db SPRITE_BALL, $e + 4, $e + 4, $ff, $ff, $85, X_ACCURACY ; item - - ; warp-to - EVENT_DISP POKEMONTOWER_6_WIDTH, $9, $12 ; POKEMONTOWER_5 - EVENT_DISP POKEMONTOWER_6_WIDTH, $10, $9 ; POKEMONTOWER_7 +INCLUDE "data/mapObjects/pokemontower6.asm" PokemonTower6Blocks: ; 60c95 (18:4c95) INCBIN "maps/pokemontower6.blk" INCBIN "maps/unusedblocks60cef.blk" -PokemonTower7_h: ; 0x60cf9 to 0x60d05 (12 bytes) (id=148) - db CEMETERY ; tileset - db POKEMONTOWER_7_HEIGHT, POKEMONTOWER_7_WIDTH ; dimensions (y, x) - dw PokemonTower7Blocks, PokemonTower7TextPointers, PokemonTower7Script ; blocks, texts, scripts - db $00 ; connections - dw PokemonTower7Object ; objects - -PokemonTower7Script: ; 60d05 (18:4d05) - call EnableAutoTextBoxDrawing - ld hl, PokemonTower7TrainerHeaders - ld de, PokemonTower7ScriptPointers - ld a, [W_POKEMONTOWER7CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_POKEMONTOWER7CURSCRIPT], a - ret - -Func_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, Func_60d18 - call EndTrainerBattle - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - ld a, [$cf13] - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - call Func_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, LAVENDER_TOWN - ld [wLastMap], a - ld hl, $d72d - set 3, [hl] - ld a, $0 - ld [W_POKEMONTOWER7CURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -Func_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 +INCLUDE "data/mapHeaders/pokemontower7.asm" - db $ff +INCLUDE "scripts/pokemontower7.asm" -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, UnnamedText_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 - -UnnamedText_60ec4: ; 60ec4 (18:4ec4) - TX_FAR _UnnamedText_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 "@" - -PokemonTower7Object: ; 0x60ef6 (size=42) - db $1 ; border tile - - db $1 ; warps - db $10, $9, $1, POKEMONTOWER_6 - - db $0 ; signs - - db $4 ; people - db SPRITE_ROCKET, $b + 4, $9 + 4, $ff, $d3, $41, ROCKET + $C8, $13 ; trainer - db SPRITE_ROCKET, $9 + 4, $c + 4, $ff, $d2, $42, ROCKET + $C8, $14 ; trainer - db SPRITE_ROCKET, $7 + 4, $9 + 4, $ff, $d3, $43, ROCKET + $C8, $15 ; trainer - db SPRITE_MR_FUJI, $3 + 4, $a + 4, $ff, $d0, $4 ; person - - ; warp-to - EVENT_DISP POKEMONTOWER_7_WIDTH, $10, $9 ; POKEMONTOWER_6 +INCLUDE "data/mapObjects/pokemontower7.asm" PokemonTower7Blocks: ; 60f20 (18:4f20) INCBIN "maps/pokemontower7.blk" -CeladonMart1_h: ; 0x60f7a to 0x60f86 (12 bytes) (id=122) - db LOBBY ; tileset - db CELADON_MART_1_HEIGHT, CELADON_MART_1_WIDTH ; dimensions (y, x) - dw CeladonMart1Blocks, CeladonMart1TextPointers, CeladonMart1Script ; blocks, texts, scripts - db $00 ; connections - dw CeladonMart1Object ; objects - -CeladonMart1Script: ; 60f86 (18:4f86) - jp EnableAutoTextBoxDrawing - -CeladonMart1TextPointers: ; 60f89 (18:4f89) - dw CeladonMart1Text1 - dw CeladonMart1Text2 - dw CeladonMart1Text3 - -CeladonMart1Text1: ; 60f8f (18:4f8f) - TX_FAR _CeladonMart1Text1 - db "@" - -CeladonMart1Text2: ; 60f94 (18:4f94) - TX_FAR _CeladonMart1Text2 - db "@" - -CeladonMart1Text3: ; 60f99 (18:4f99) - TX_FAR _CeladonMart1Text3 - db "@" - -CeladonMart1Object: ; 0x60f9e (size=64) - db $f ; border tile - - db $6 ; warps - db $7, $2, $0, $ff - db $7, $3, $0, $ff - db $7, $10, $1, $ff - db $7, $11, $1, $ff - db $1, $c, $0, CELADON_MART_2 - db $1, $1, $0, CELADON_MART_ELEVATOR +INCLUDE "data/mapHeaders/celadonmart1.asm" - db $2 ; signs - db $4, $b, $2 ; CeladonMart1Text2 - db $1, $e, $3 ; CeladonMart1Text3 +INCLUDE "scripts/celadonmart1.asm" - db $1 ; people - db SPRITE_CABLE_CLUB_WOMAN, $3 + 4, $8 + 4, $ff, $d0, $1 ; person - - ; warp-to - EVENT_DISP CELADON_MART_1_WIDTH, $7, $2 - EVENT_DISP CELADON_MART_1_WIDTH, $7, $3 - EVENT_DISP CELADON_MART_1_WIDTH, $7, $10 - EVENT_DISP CELADON_MART_1_WIDTH, $7, $11 - EVENT_DISP CELADON_MART_1_WIDTH, $1, $c ; CELADON_MART_2 - EVENT_DISP CELADON_MART_1_WIDTH, $1, $1 ; CELADON_MART_ELEVATOR +INCLUDE "data/mapObjects/celadonmart1.asm" CeladonMart1Blocks: ; 60fde (18:4fde) INCBIN "maps/celadonmart1.blk" @@ -95437,42 +48666,42 @@ GiveFossilToCinnabarLab: ; 61006 (18:5006) ld a, b ld [W_FOSSILMON], a call LoadFossilItemAndMonName - ld hl, UnnamedText_610ae + ld hl, LabFossil_610ae call PrintText call YesNoChoice ld a, [wCurrentMenuItem] ; $cc26 and a jr nz, .asm_610a7 - ld hl, UnnamedText_610b3 + ld hl, LabFossil_610b3 call PrintText ld a, [W_FOSSILITEM] ld [$ffdb], a callba RemoveItemByID - ld hl, UnnamedText_610b8 + ld hl, LabFossil_610b8 call PrintText ld hl, $d7a3 set 0, [hl] set 1, [hl] ret .asm_610a7 - ld hl, UnnamedText_610bd + ld hl, LabFossil_610bd call PrintText ret -UnnamedText_610ae: ; 610ae (18:50ae) - TX_FAR _UnnamedText_610ae +LabFossil_610ae: ; 610ae (18:50ae) + TX_FAR _Lab4Text_610ae db "@" -UnnamedText_610b3: ; 610b3 (18:50b3) - TX_FAR _UnnamedText_610b3 +LabFossil_610b3: ; 610b3 (18:50b3) + TX_FAR _Lab4Text_610b3 db "@" -UnnamedText_610b8: ; 610b8 (18:50b8) - TX_FAR _UnnamedText_610b8 +LabFossil_610b8: ; 610b8 (18:50b8) + TX_FAR _Lab4Text_610b8 db "@" -UnnamedText_610bd: ; 610bd (18:50bd) - TX_FAR _UnnamedText_610bd +LabFossil_610bd: ; 610bd (18:50bd) + TX_FAR _Lab4Text_610bd db "@" Func_610c2: ; 610c2 (18:50c2) @@ -95509,2112 +48738,113 @@ LoadFossilItemAndMonName: ; 610eb (18:50eb) call GetItemName ret -ViridianForest_h: ; 0x61101 to 0x6110d (12 bytes) (id=51) - db FOREST ; tileset - db VIRIDIAN_FOREST_HEIGHT, VIRIDIAN_FOREST_WIDTH ; dimensions (y, x) - dw ViridianForestBlocks, ViridianForestTextPointers, ViridianForestScript ; blocks, texts, scripts - db $00 ; connections - dw ViridianForestObject ; objects - -ViridianForestScript: ; 6110d (18:510d) - call EnableAutoTextBoxDrawing - ld hl, ViridianForestTrainerHeaders - ld de, ViridianForestScriptPointers - ld a, [W_VIRIDIANFORESTCURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_VIRIDIANFORESTCURSCRIPT], a - ret - -ViridianForestScriptPointers: ; 61120 (18:5120) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -ViridianForestTextPointers: ; 61126 (18:5126) - dw ViridianForestText1 - dw ViridianForestText2 - dw ViridianForestText3 - dw ViridianForestText4 - dw Predef5CText - dw Predef5CText - dw Predef5CText - dw ViridianForestText8 - dw ViridianForestText9 - dw ViridianForestText10 - dw ViridianForestText11 - dw ViridianForestText12 - dw ViridianForestText13 - dw ViridianForestText14 - -ViridianForestTrainerHeaders: ; 61142 (18:5142) -ViridianForestTrainerHeader0: ; 61142 (18:5142) - db $2 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7f3 ; flag's byte - dw ViridianForestBattleText1 ; 0x518a TextBeforeBattle - dw ViridianForestAfterBattleText1 ; 0x5194 TextAfterBattle - dw ViridianForestEndBattleText1 ; 0x518f TextEndBattle - dw ViridianForestEndBattleText1 ; 0x518f TextEndBattle - -ViridianForestTrainerHeader1: ; 6114e (18:514e) - db $3 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d7f3 ; flag's byte - dw ViridianForestBattleText2 ; 0x5199 TextBeforeBattle - dw ViridianForestAfterBattleText2 ; 0x51a3 TextAfterBattle - dw ViridianForestEndBattleText2 ; 0x519e TextEndBattle - dw ViridianForestEndBattleText2 ; 0x519e TextEndBattle - -ViridianForestTrainerHeader2: ; 6115a (18:515a) - db $4 ; flag's bit - db ($1 << 4) ; trainer's view range - dw $d7f3 ; flag's byte - dw ViridianForestBattleText3 ; 0x51a8 TextBeforeBattle - dw ViridianForestAfterBattleText3 ; 0x51b2 TextAfterBattle - dw ViridianForestEndBattleText3 ; 0x51ad TextEndBattle - dw ViridianForestEndBattleText3 ; 0x51ad TextEndBattle - - db $ff - -ViridianForestText1: ; 61167 (18:5167) - TX_FAR _ViridianForestText1 - db "@" - -ViridianForestText2: ; 6116c (18:516c) - db $08 ; asm - ld hl, ViridianForestTrainerHeader0 - call TalkToTrainer - jp TextScriptEnd +INCLUDE "data/mapHeaders/viridianforest.asm" -ViridianForestText3: ; 61176 (18:5176) - db $08 ; asm - ld hl, ViridianForestTrainerHeader1 - call TalkToTrainer - jp TextScriptEnd +INCLUDE "scripts/viridianforest.asm" -ViridianForestText4: ; 61180 (18:5180) - db $08 ; asm - ld hl, ViridianForestTrainerHeader2 - call TalkToTrainer - jp TextScriptEnd +INCLUDE "data/mapObjects/viridianforest.asm" -ViridianForestBattleText1: ; 6118a (18:518a) - TX_FAR _ViridianForestBattleText1 - db "@" +INCLUDE "data/mapHeaders/ssanne1.asm" -ViridianForestEndBattleText1: ; 6118f (18:518f) - TX_FAR _ViridianForestEndBattleText1 - db "@" +INCLUDE "scripts/ssanne1.asm" -ViridianForestAfterBattleText1: ; 61194 (18:5194) - TX_FAR _ViridianFrstAfterBattleText1 - db "@" - -ViridianForestBattleText2: ; 61199 (18:5199) - TX_FAR _ViridianForestBattleText2 - db "@" - -ViridianForestEndBattleText2: ; 6119e (18:519e) - TX_FAR _ViridianForestEndBattleText2 - db "@" - -ViridianForestAfterBattleText2: ; 611a3 (18:51a3) - TX_FAR _ViridianFrstAfterBattleText2 - db "@" - -ViridianForestBattleText3: ; 611a8 (18:51a8) - TX_FAR _ViridianForestBattleText3 - db "@" - -ViridianForestEndBattleText3: ; 611ad (18:51ad) - TX_FAR _ViridianForestEndBattleText3 - db "@" - -ViridianForestAfterBattleText3: ; 611b2 (18:51b2) - TX_FAR _ViridianFrstAfterBattleText3 - db "@" - -ViridianForestText8: ; 611b7 (18:51b7) - TX_FAR _ViridianForestText8 - db "@" - -ViridianForestText9: ; 611bc (18:51bc) - TX_FAR _ViridianForestText9 - db "@" - -ViridianForestText10: ; 611c1 (18:51c1) - TX_FAR _ViridianForestText10 - db "@" - -ViridianForestText11: ; 611c6 (18:51c6) - TX_FAR _ViridianForestText11 - db "@" - -ViridianForestText12: ; 611cb (18:51cb) - TX_FAR _ViridianForestText12 - db "@" - -ViridianForestText13: ; 611d0 (18:51d0) - TX_FAR _ViridianForestText13 - db "@" - -ViridianForestText14: ; 611d5 (18:51d5) - TX_FAR _ViridianForestText14 - db "@" - -ViridianForestObject: ; 0x611da (size=127) - db $3 ; border tile - - db $6 ; warps - db $0, $1, $2, VIRIDIAN_FOREST_EXIT - db $0, $2, $3, VIRIDIAN_FOREST_EXIT - db $2f, $f, $1, VIRIDIAN_FOREST_ENTRANCE - db $2f, $10, $1, VIRIDIAN_FOREST_ENTRANCE - db $2f, $11, $1, VIRIDIAN_FOREST_ENTRANCE - db $2f, $12, $1, VIRIDIAN_FOREST_ENTRANCE - - db $6 ; signs - db $28, $18, $9 ; ViridianForestText9 - db $20, $10, $a ; ViridianForestText10 - db $11, $1a, $b ; ViridianForestText11 - db $18, $4, $c ; ViridianForestText12 - db $2d, $12, $d ; ViridianForestText13 - db $1, $2, $e ; ViridianForestText14 - - db $8 ; people - db SPRITE_BUG_CATCHER, $2b + 4, $10 + 4, $ff, $ff, $1 ; person - db SPRITE_BUG_CATCHER, $21 + 4, $1e + 4, $ff, $d2, $42, BUG_CATCHER + $C8, $1 ; trainer - db SPRITE_BUG_CATCHER, $13 + 4, $1e + 4, $ff, $d2, $43, BUG_CATCHER + $C8, $2 ; trainer - db SPRITE_BUG_CATCHER, $12 + 4, $2 + 4, $ff, $d2, $44, BUG_CATCHER + $C8, $3 ; trainer - db SPRITE_BALL, $b + 4, $19 + 4, $ff, $ff, $85, ANTIDOTE ; item - db SPRITE_BALL, $1d + 4, $c + 4, $ff, $ff, $86, POTION ; item - db SPRITE_BALL, $1f + 4, $1 + 4, $ff, $ff, $87, POKE_BALL ; item - db SPRITE_BUG_CATCHER, $28 + 4, $1b + 4, $ff, $ff, $8 ; person - - ; warp-to - EVENT_DISP VIRIDIAN_FOREST_WIDTH, $0, $1 ; VIRIDIAN_FOREST_EXIT - EVENT_DISP VIRIDIAN_FOREST_WIDTH, $0, $2 ; VIRIDIAN_FOREST_EXIT - EVENT_DISP VIRIDIAN_FOREST_WIDTH, $2f, $f ; VIRIDIAN_FOREST_ENTRANCE - EVENT_DISP VIRIDIAN_FOREST_WIDTH, $2f, $10 ; VIRIDIAN_FOREST_ENTRANCE - EVENT_DISP VIRIDIAN_FOREST_WIDTH, $2f, $11 ; VIRIDIAN_FOREST_ENTRANCE - EVENT_DISP VIRIDIAN_FOREST_WIDTH, $2f, $12 ; VIRIDIAN_FOREST_ENTRANCE - -SSAnne1_h: ; 0x61259 to 0x61265 (12 bytes) (id=95) - db SHIP ; tileset - db SS_ANNE_1_HEIGHT, SS_ANNE_1_WIDTH ; dimensions (y, x) - dw SSAnne1Blocks, SSAnne1TextPointers, SSAnne1Script ; blocks, texts, scripts - db $00 ; connections - dw SSAnne1Object ; objects - -SSAnne1Script: ; 61265 (18:5265) - call EnableAutoTextBoxDrawing - ret - -SSAnne1TextPointers: ; 61269 (18:5269) - dw SSAnne1Text1 - dw SSAnne1Text2 - -SSAnne1Text1: ; 6126d (18:526d) - TX_FAR _SSAnne1Text1 - db "@" - -SSAnne1Text2: ; 61272 (18:5272) - TX_FAR _SSAnne1Text2 - db "@" - -SSAnne1Object: ; 0x61277 (size=104) - db $c ; border tile - - db $b ; warps - db $0, $1a, $1, VERMILION_DOCK - db $0, $1b, $1, VERMILION_DOCK - db $8, $1f, $0, SS_ANNE_8 - db $8, $17, $1, SS_ANNE_8 - db $8, $13, $2, SS_ANNE_8 - db $8, $f, $3, SS_ANNE_8 - db $8, $b, $4, SS_ANNE_8 - db $8, $7, $5, SS_ANNE_8 - db $6, $2, $6, SS_ANNE_2 - db $f, $25, $5, SS_ANNE_4 - db $10, $3, $0, SS_ANNE_6 - - db $0 ; signs - - db $2 ; people - db SPRITE_WAITER, $6 + 4, $c + 4, $fe, $2, $1 ; person - db SPRITE_SAILOR, $5 + 4, $1b + 4, $ff, $ff, $2 ; person - - ; warp-to - EVENT_DISP SS_ANNE_1_WIDTH, $0, $1a ; VERMILION_DOCK - EVENT_DISP SS_ANNE_1_WIDTH, $0, $1b ; VERMILION_DOCK - EVENT_DISP SS_ANNE_1_WIDTH, $8, $1f ; SS_ANNE_8 - EVENT_DISP SS_ANNE_1_WIDTH, $8, $17 ; SS_ANNE_8 - EVENT_DISP SS_ANNE_1_WIDTH, $8, $13 ; SS_ANNE_8 - EVENT_DISP SS_ANNE_1_WIDTH, $8, $f ; SS_ANNE_8 - EVENT_DISP SS_ANNE_1_WIDTH, $8, $b ; SS_ANNE_8 - EVENT_DISP SS_ANNE_1_WIDTH, $8, $7 ; SS_ANNE_8 - EVENT_DISP SS_ANNE_1_WIDTH, $6, $2 ; SS_ANNE_2 - EVENT_DISP SS_ANNE_1_WIDTH, $f, $25 ; SS_ANNE_4 - EVENT_DISP SS_ANNE_1_WIDTH, $10, $3 ; SS_ANNE_6 +INCLUDE "data/mapObjects/ssanne1.asm" SSAnne1Blocks: ; 612df (18:52df) INCBIN "maps/ssanne1.blk" -SSAnne2_h: ; 0x61393 to 0x6139f (12 bytes) (id=96) - db SHIP ; tileset - db SS_ANNE_2_HEIGHT, SS_ANNE_2_WIDTH ; dimensions (y, x) - dw SSAnne2Blocks, SSAnne2TextPointers, SSAnne2Script ; blocks, texts, scripts - db $00 ; connections - dw SSAnne2Object ; objects - -SSAnne2Script: ; 6139f (18:539f) - call EnableAutoTextBoxDrawing - ld hl, SSAnne2ScriptPointers - ld a, [W_SSANNE2CURSCRIPT] - jp CallFunctionInTable - -SSAnne2Script_613ab: ; 613ab (18:53ab) - xor a - ld [wJoypadForbiddenButtonsMask], a - ld [W_SSANNE2CURSCRIPT], a - ret - -SSAnne2ScriptPointers: ; 613b3 (18:53b3) - dw SSAnne2Script0 - dw SSAnne2Script1 - dw SSAnne2Script2 - dw SSAnne2Script3 - dw SSAnne2Script4 - -SSAnne2Script4: ; 613bd (18:53bd) - ret - -SSAnne2Script0: ; 613be (18:53be) - ld hl, CoordsData_61411 ; $5411 - call ArePlayerCoordsInArray - ret nc - ld a, $ff - ld [$c0ee], a - call PlaySound - ld c, BANK(Music_MeetRival) - ld a, MUSIC_MEET_RIVAL - call PlayMusic - ld a, [$cd3d] - ld [$ffdb], a - ld a, $71 - ld [$cc4d], a - ld a, $15 - call Predef - call Delay3 - ld a, $2 - ld [$ff8c], a - call SetSpriteMovementBytesToFF - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - ld a, [$ffdb] - cp $2 - jr nz, .asm_61400 ; 0x613f9 $5 - ld de, MovementData_6140c - jr .asm_61403 ; 0x613fe $3 -.asm_61400 - ld de, MovementData_6140d -.asm_61403 - call MoveSprite - ld a, $1 - ld [W_SSANNE2CURSCRIPT], a - ret - -MovementData_6140c: ; 6140c (18:540c) - db $00 +INCLUDE "data/mapHeaders/ssanne2.asm" -MovementData_6140d: ; 6140d (18:540d) - db $00,$00,$00,$FF +INCLUDE "scripts/ssanne2.asm" -CoordsData_61411: ; 61411 (18:5411) - db $08,$24,$08,$25,$FF - -Func_61416: ; 61416 (18:5416) - ld a, [W_XCOORD] ; $d362 - cp $25 - jr nz, .asm_61426 - ld a, $2 - ld [$d528], a - ld a, $c - jr .asm_61427 -.asm_61426 - xor a -.asm_61427 - ld [$ff8d], a - ld a, $2 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - jp Func_34a6 - -SSAnne2Script1: ; 61430 (18:5430) - ld a, [$d730] - bit 0, a - ret nz - call Func_61416 - xor a - ld [wJoypadForbiddenButtonsMask], a - ld a, $2 - ld [$ff8c], a - call DisplayTextID - call Delay3 - ld a, $f2 - ld [$d059], a - - ; select which team to use during the encounter - ld a, [W_RIVALSTARTER] - cp SQUIRTLE - jr nz, .NotSquirtle ; 0x61451 $4 - ld a, $1 - jr .done -.NotSquirtle - cp BULBASAUR - jr nz, .Charmander ; 0x61459 $4 - ld a, $2 - jr .done -.Charmander - ld a, $3 -.done - ld [W_TRAINERNO], a - - call Func_61416 - ld a, $2 - ld [W_SSANNE2CURSCRIPT], a - ret - -SSAnne2Script2: ; 6146d (18:546d) - ld a, [$d057] - cp $ff - jp z, SSAnne2Script_613ab - call Func_61416 - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - ld a, $3 - ld [$ff8c], a - call DisplayTextID - ld a, $2 - ld [$ff8c], a - call SetSpriteMovementBytesToFF - ld a, [$d362] - cp $25 - jr nz, .asm_61497 ; 0x61490 $5 - ld de, MovementData_614b9 - jr .asm_6149a ; 0x61495 $3 -.asm_61497 - ld de, MovementData_614b7 -.asm_6149a - ld a, $2 - ld [$ff8c], a - call MoveSprite - ld a, $ff - ld [$c0ee], a - call PlaySound - callba Music_RivalAlternateStart - ld a, $3 - ld [W_SSANNE2CURSCRIPT], a - ret - -MovementData_614b7: ; 614b7 (18:54b7) - db $C0,$00 - -MovementData_614b9: ; 614b9 (18:54b9) - db $00,$00,$00,$00,$FF - -SSAnne2Script3: ; 614be (18:54be) - ld a, [$d730] - bit 0, a - ret nz - xor a - ld [wJoypadForbiddenButtonsMask], a - ld a, $71 - ld [$cc4d], a - ld a, $11 - call Predef - call Func_2307 - ld a, $4 - ld [W_SSANNE2CURSCRIPT], a - ret - -SSAnne2TextPointers: ; 614db (18:54db) - dw SSAnne2Text1 - dw SSAnne2Text2 - dw SSAnne2Text3 - -SSAnne2Text1: ; 614e1 (18:54e1) - TX_FAR _SSAnne2Text1 - db "@" - -SSAnne2Text2: ; 614e6 (18:54e6) - db $8 - ld hl, SSAnneRivalBeforeBattleText - call PrintText - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, SSAnneRivalDefeatedText - ld de, SSAnneRivalWonText - call PreBattleSaveRegisters - jp TextScriptEnd - -SSAnneRivalBeforeBattleText: ; 61500 (18:5500) - TX_FAR _SSAnneRivalBeforeBattleText - db "@" - -SSAnneRivalDefeatedText: ; 61505 (18:5505) - TX_FAR _SSAnneRivalDefeatedText - db "@" - -SSAnneRivalWonText: ; 6150a (18:550a) - TX_FAR _SSAnneRivalWonText - db "@" - -SSAnne2Text3: ; 6150f (18:550f) - TX_FAR _SSAnneRivalCaptainText - db "@" - -SSAnne2Object: ; 0x61514 (size=90) - db $c ; border tile - - db $9 ; warps - db $b, $9, $0, SS_ANNE_9 - db $b, $d, $2, SS_ANNE_9 - db $b, $11, $4, SS_ANNE_9 - db $b, $15, $6, SS_ANNE_9 - db $b, $19, $8, SS_ANNE_9 - db $b, $1d, $a, SS_ANNE_9 - db $4, $2, $8, SS_ANNE_1 - db $c, $2, $1, SS_ANNE_3 - db $4, $24, $0, SS_ANNE_7 - - db $0 ; signs - - db $2 ; people - db SPRITE_WAITER, $7 + 4, $3 + 4, $fe, $1, $1 ; person - db SPRITE_BLUE, $4 + 4, $24 + 4, $ff, $d0, $42, SONY1 + $C8, $1 ; trainer - - ; warp-to - EVENT_DISP SS_ANNE_2_WIDTH, $b, $9 ; SS_ANNE_9 - EVENT_DISP SS_ANNE_2_WIDTH, $b, $d ; SS_ANNE_9 - EVENT_DISP SS_ANNE_2_WIDTH, $b, $11 ; SS_ANNE_9 - EVENT_DISP SS_ANNE_2_WIDTH, $b, $15 ; SS_ANNE_9 - EVENT_DISP SS_ANNE_2_WIDTH, $b, $19 ; SS_ANNE_9 - EVENT_DISP SS_ANNE_2_WIDTH, $b, $1d ; SS_ANNE_9 - EVENT_DISP SS_ANNE_2_WIDTH, $4, $2 ; SS_ANNE_1 - EVENT_DISP SS_ANNE_2_WIDTH, $c, $2 ; SS_ANNE_3 - EVENT_DISP SS_ANNE_2_WIDTH, $4, $24 ; SS_ANNE_7 +INCLUDE "data/mapObjects/ssanne2.asm" SSAnne2Blocks: ; 6156e (18:556e) INCBIN "maps/ssanne2.blk" -SSAnne4_h: ; 0x61622 to 0x6162e (12 bytes) (id=98) - db SHIP ; tileset - db SS_ANNE_4_HEIGHT, SS_ANNE_4_WIDTH ; dimensions (y, x) - dw SSAnne4Blocks, SSAnne4TextPointers, SSAnne4Script ; blocks, texts, scripts - db $00 ; connections - dw SSAnne4Object ; objects +INCLUDE "data/mapHeaders/ssanne4.asm" -SSAnne4Script: ; 6162e (18:562e) - jp EnableAutoTextBoxDrawing +INCLUDE "scripts/ssanne4.asm" -SSAnne4TextPointers: ; 61631 (18:5631) - db "@" - -SSAnne4Object: ; 0x61632 (size=52) - db $c ; border tile - - db $6 ; warps - db $3, $17, $8, SS_ANNE_10 - db $3, $13, $6, SS_ANNE_10 - db $3, $f, $4, SS_ANNE_10 - db $3, $b, $2, SS_ANNE_10 - db $3, $7, $0, SS_ANNE_10 - db $5, $1b, $9, SS_ANNE_1 - - db $0 ; signs - - db $0 ; people - - ; warp-to - EVENT_DISP SS_ANNE_4_WIDTH, $3, $17 ; SS_ANNE_10 - EVENT_DISP SS_ANNE_4_WIDTH, $3, $13 ; SS_ANNE_10 - EVENT_DISP SS_ANNE_4_WIDTH, $3, $f ; SS_ANNE_10 - EVENT_DISP SS_ANNE_4_WIDTH, $3, $b ; SS_ANNE_10 - EVENT_DISP SS_ANNE_4_WIDTH, $3, $7 ; SS_ANNE_10 - EVENT_DISP SS_ANNE_4_WIDTH, $5, $1b ; SS_ANNE_1 +INCLUDE "data/mapObjects/ssanne4.asm" SSAnne4Blocks: ; 61666 (18:5666) INCBIN "maps/ssanne4.blk" -SSAnne5_h: ; 0x616a2 to 0x616ae (12 bytes) (id=99) - db SHIP ; tileset - db SS_ANNE_5_HEIGHT, SS_ANNE_5_WIDTH ; dimensions (y, x) - dw SSAnne5Blocks, SSAnne5TextPointers, SSAnne5Script ; blocks, texts, scripts - db $00 ; connections - dw SSAnne5Object ; objects - -SSAnne5Script: ; 616ae (18:56ae) - call EnableAutoTextBoxDrawing - ld hl, SSAnneTrainerHeader0 ; $56d1 - ld de, SSAnne5ScriptPointers - ld a, [W_SSANNE5CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_SSANNE5CURSCRIPT], a - ret - -SSAnne5ScriptPointers: ; 616c1 (18:56c1) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -SSAnne5TextPointers: ; 616c7 (18:56c7) - dw SSAnne5Text1 - dw SSAnne5Text2 - dw SSAnne5Text3 - dw SSAnne5Text4 - dw SSAnne5Text5 - -SSAnneTrainerHeaders: ; 616d1 (18:56d1) -SSAnneTrainerHeader0: ; 616d1 (18:56d1) - db $4 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7ff ; flag's byte - dw SSAnneBattleText1 ; 0x5703 TextBeforeBattle - dw SSAnneAfterBattleText1 ; 0x570d TextAfterBattle - dw SSAnneEndBattleText1 ; 0x5708 TextEndBattle - dw SSAnneEndBattleText1 ; 0x5708 TextEndBattle - -SSAnneTrainerHeader1: ; 616dd (18:56dd) - db $5 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d7ff ; flag's byte - dw SSAnneBattleText2 ; 0x571c TextBeforeBattle - dw SSAnneAfterBattleText2 ; 0x5726 TextAfterBattle - dw SSAnneEndBattleText2 ; 0x5721 TextEndBattle - dw SSAnneEndBattleText2 ; 0x5721 TextEndBattle - - db $ff - -SSAnne5Text1: ; 616ea (18:56ea) - TX_FAR _SSAnne5Text1 - db "@" - -SSAnne5Text2: ; 616ef (18:56ef) - TX_FAR _SSAnne5Text2 - db "@" - -SSAnne5Text3: ; 616f4 (18:56f4) - TX_FAR _SSAnne5Text3 - db "@" - -SSAnne5Text4: ; 616f9 (18:56f9) - db $08 ; asm - ld hl, SSAnneTrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -SSAnneBattleText1: ; 61703 (18:5703) - TX_FAR _SSAnneBattleText1 - db "@" - -SSAnneEndBattleText1: ; 61708 (18:5708) - TX_FAR _SSAnneEndBattleText1 - db "@" +INCLUDE "data/mapHeaders/ssanne5.asm" -SSAnneAfterBattleText1: ; 6170d (18:570d) - TX_FAR _SSAnneAfterBattleText1 - db "@" - -SSAnne5Text5: ; 61712 (18:5712) - db $08 ; asm - ld hl, SSAnneTrainerHeader1 - call TalkToTrainer - jp TextScriptEnd +INCLUDE "scripts/ssanne5.asm" -SSAnneBattleText2: ; 6171c (18:571c) - TX_FAR _SSAnneBattleText2 - db "@" - -SSAnneEndBattleText2: ; 61721 (18:5721) - TX_FAR _SSAnneEndBattleText2 - db "@" - -SSAnneAfterBattleText2: ; 61726 (18:5726) - TX_FAR _SSAnneAfterBattleText2 - db "@" - -SSAnne5Object: ; 0x6172b (size=54) - db $23 ; border tile - - db $2 ; warps - db $6, $d, $0, SS_ANNE_3 - db $7, $d, $0, SS_ANNE_3 - - db $0 ; signs - - db $5 ; people - db SPRITE_BLACK_HAIR_BOY_2, $2 + 4, $5 + 4, $ff, $d1, $1 ; person - db SPRITE_SAILOR, $9 + 4, $4 + 4, $ff, $ff, $2 ; person - db SPRITE_BLACK_HAIR_BOY_1, $b + 4, $7 + 4, $ff, $ff, $3 ; person - db SPRITE_SAILOR, $4 + 4, $4 + 4, $ff, $d0, $44, SAILOR + $C8, $1 ; trainer - db SPRITE_SAILOR, $8 + 4, $a + 4, $ff, $d1, $45, SAILOR + $C8, $2 ; trainer - - ; warp-to - EVENT_DISP SS_ANNE_5_WIDTH, $6, $d ; SS_ANNE_3 - EVENT_DISP SS_ANNE_5_WIDTH, $7, $d ; SS_ANNE_3 +INCLUDE "data/mapObjects/ssanne5.asm" SSAnne5Blocks: ; 61761 (18:5761) INCBIN "maps/ssanne5.blk" -SSAnne6_h: ; 0x617a7 to 0x617b3 (12 bytes) (id=100) - db SHIP ; tileset - db SS_ANNE_6_HEIGHT, SS_ANNE_6_WIDTH ; dimensions (y, x) - dw SSAnne6Blocks, SSAnne6TextPointers, SSAnne6Script ; blocks, texts, scripts - db $00 ; connections - dw SSAnne6Object ; objects +INCLUDE "data/mapHeaders/ssanne6.asm" -SSAnne6Script: ; 617b3 (18:57b3) - call EnableAutoTextBoxDrawing - ret +INCLUDE "scripts/ssanne6.asm" -SSAnne6TextPointers: ; 617b7 (18:57b7) - dw SSAnne6Text1 - dw SSAnne6Text2 - dw SSAnne6Text3 - dw SSAnne6Text4 - dw SSAnne6Text5 - dw SSAnne6Text6 - dw SSAnne6Text7 - -SSAnne6Text1: ; 617c5 (18:57c5) - TX_FAR _SSAnne6Text1 - db "@" - -SSAnne6Text2: ; 617ca (18:57ca) - TX_FAR _SSAnne6Text2 - db "@" - -SSAnne6Text3: ; 617cf (18:57cf) - TX_FAR _SSAnne6Text3 - db "@" - -SSAnne6Text4: ; 617d4 (18:57d4) - TX_FAR _SSAnne6Text4 - db "@" - -SSAnne6Text5: ; 617d9 (18:57d9) - TX_FAR _SSAnne6Text5 - db "@" - -SSAnne6Text6: ; 617de (18:57de) - TX_FAR _SSAnne6Text6 - db "@" - -SSAnne6Text7: ; 617e3 (18:57e3) - db $08 ; asm - ld hl, UnnamedText_61807 - call PrintText - ldh a, [$d3] - bit 7, a - jr z, .asm_93eb1 ; 0x617ee - ld hl, UnnamedText_6180c - jr .asm_63292 ; 0x617f3 -.asm_93eb1 ; 0x617f5 - bit 4, a - jr z, .asm_7436c ; 0x617f7 - ld hl, UnnamedText_61811 - jr .asm_63292 ; 0x617fc -.asm_7436c ; 0x617fe - ld hl, UnnamedText_61816 -.asm_63292 ; 0x61801 - call PrintText - jp TextScriptEnd - -UnnamedText_61807: ; 61807 (18:5807) - TX_FAR _UnnamedText_61807 - db "@" - -UnnamedText_6180c: ; 6180c (18:580c) - TX_FAR _UnnamedText_6180c - db "@" - -UnnamedText_61811: ; 61811 (18:5811) - TX_FAR _UnnamedText_61811 - db "@" - -UnnamedText_61816: ; 61816 (18:5816) - TX_FAR _UnnamedText_61816 - db "@" - -SSAnne6Object: ; 0x6181b (size=54) - db $c ; border tile - - db $1 ; warps - db $0, $6, $a, SS_ANNE_1 - - db $0 ; signs - - db $7 ; people - db SPRITE_COOK, $8 + 4, $1 + 4, $fe, $1, $1 ; person - db SPRITE_COOK, $8 + 4, $5 + 4, $fe, $1, $2 ; person - db SPRITE_COOK, $7 + 4, $9 + 4, $fe, $1, $3 ; person - db SPRITE_COOK, $6 + 4, $d + 4, $ff, $ff, $4 ; person - db SPRITE_COOK, $8 + 4, $d + 4, $ff, $ff, $5 ; person - db SPRITE_COOK, $a + 4, $d + 4, $ff, $ff, $6 ; person - db SPRITE_COOK, $d + 4, $b + 4, $ff, $d1, $7 ; person - - ; warp-to - EVENT_DISP SS_ANNE_6_WIDTH, $0, $6 ; SS_ANNE_1 +INCLUDE "data/mapObjects/ssanne6.asm" SSAnne6Blocks: ; 61851 (18:5851) INCBIN "maps/ssanne6.blk" -SSAnne7_h: ; 0x61889 to 0x61895 (12 bytes) (id=101) - db SHIP ; tileset - db SS_ANNE_7_HEIGHT, SS_ANNE_7_WIDTH ; dimensions (y, x) - dw SSAnne7Blocks, SSAnne7TextPointers, SSAnne7Script ; blocks, texts, scripts - db $00 ; connections - dw SSAnne7Object ; objects - -SSAnne7Script: ; 61895 (18:5895) - call SSAnne7Script_6189b - jp EnableAutoTextBoxDrawing - -SSAnne7Script_6189b: ; 6189b (18:589b) - ld a, [$d803] - bit 1, a - ret nz - ld hl, $d72d - set 5, [hl] - ret - -SSAnne7TextPointers: ; 618a7 (18:58a7) - dw SSAnne7Text1 - dw SSAnne7Text2 - dw SSAnne7Text3 +INCLUDE "data/mapHeaders/ssanne7.asm" -SSAnne7Text1: ; 618ad (18:58ad) - db $08 ; asm - ld a, [$d803] - bit 0, a - jr nz, .asm_797c4 ; 0x618b3 - ld hl, SSAnne7RubText - call PrintText - ld hl, ReceivingHM01Text - call PrintText - ld bc, (HM_01 << 8) | 1 - call GiveItem - jr nc, .BagFull - ld hl, ReceivedHM01Text - call PrintText - ld hl, $d803 - set 0, [hl] - jr .asm_0faf5 ; 0x618d4 -.BagFull - ld hl, HM01NoRoomText - call PrintText - ld hl, $d72d - set 5, [hl] - jr .asm_0faf5 ; 0x618e1 -.asm_797c4 ; 0x618e3 - ld hl, UnnamedText_61932 - call PrintText -.asm_0faf5 ; 0x618e9 - jp TextScriptEnd +INCLUDE "scripts/ssanne7.asm" -SSAnne7RubText: ; 618ec (18:58ec) - TX_FAR _SSAnne7RubText ; 0x812dd - db $8 - ld a, [$c0ef] - cp $1f - ld [$c0f0], a - jr nz, .asm_61908 ; 0x618f9 $d - ld a, $ff - ld [$c0ee], a - call PlaySound - ld a, Bank(Func_9876) - ld [$c0ef], a -.asm_61908 - ld a, MUSIC_PKMN_HEALED - ld [$c0ee], a - call PlaySound -.asm_61910 - ld a, [$c026] - cp MUSIC_PKMN_HEALED - jr z, .asm_61910 ; 0x61915 $f9 - call Func_2307 - ld hl, $d803 - set 1, [hl] - ld hl, $d72d - res 5, [hl] - jp TextScriptEnd - -ReceivingHM01Text: ; 61927 (18:5927) - TX_FAR _ReceivingHM01Text - db "@" - -ReceivedHM01Text: ; 6192c (18:592c) - TX_FAR _ReceivedHM01Text ; 0x8140d - db $11, "@" - -UnnamedText_61932: ; 61932 (18:5932) - TX_FAR _UnnamedText_61932 - db "@" - -HM01NoRoomText: ; 61937 (18:5937) - TX_FAR _HM01NoRoomText - db "@" - -SSAnne7Text2: ; 6193c (18:593c) - TX_FAR _SSAnne7Text2 - db "@" - -SSAnne7Text3: ; 61941 (18:5941) - TX_FAR _SSAnne7Text3 - db "@" - -SSAnne7Object: ; 0x61946 (size=24) - db $c ; border tile - - db $1 ; warps - db $7, $0, $8, SS_ANNE_2 - - db $2 ; signs - db $1, $4, $2 ; SSAnne7Text2 - db $2, $1, $3 ; SSAnne7Text3 - - db $1 ; people - db SPRITE_SS_CAPTAIN, $2 + 4, $4 + 4, $ff, $d1, $1 ; person - - ; warp-to - EVENT_DISP SS_ANNE_7_WIDTH, $7, $0 ; SS_ANNE_2 +INCLUDE "data/mapObjects/ssanne7.asm" SSAnne7Blocks: ; 6195e (18:595e) INCBIN "maps/ssanne7.blk" -SSAnne8_h: ; 0x6196a to 0x61976 (12 bytes) (id=102) - db SHIP ; tileset - db SS_ANNE_8_HEIGHT, SS_ANNE_8_WIDTH ; dimensions (y, x) - dw SSAnne8Blocks, SSAnne8TextPointers, SSAnne8Script ; blocks, texts, scripts - db $00 ; connections - dw SSAnne8Object ; objects - -SSAnne8Script: ; 61976 (18:5976) - call EnableAutoTextBoxDrawing - ld hl, SSAnne8TrainerHeaders - ld de, SSAnne8ScriptPointers - ld a, [W_SSANNE8CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_SSANNE8CURSCRIPT], a - ret - -SSAnne8ScriptPointers: ; 61989 (18:5989) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -SSAnne8TextPointers: ; 6198f (18:598f) - dw SSAnne8Text1 - dw SSAnne8Text2 - dw SSAnne8Text3 - dw SSAnne8Text4 - dw SSAnne8Text5 - dw SSAnne8Text6 - dw SSAnne8Text7 - dw SSAnne8Text8 - dw SSAnne8Text9 - dw Predef5CText - dw SSAnne8Text11 - -SSAnne8TrainerHeaders: ; 619a5 (18:59a5) -SSAnne8TrainerHeader0: ; 619a5 (18:59a5) - db $1 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d805 ; flag's byte - dw SSAnne8BattleText1 ; 0x5a0b TextBeforeBattle - dw SSAnne8AfterBattleText1 ; 0x5a15 TextAfterBattle - dw SSAnne8EndBattleText1 ; 0x5a10 TextEndBattle - dw SSAnne8EndBattleText1 ; 0x5a10 TextEndBattle - -SSAnne8TrainerHeader1: ; 619b1 (18:59b1) - db $2 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d805 ; flag's byte - dw SSAnne8BattleText2 ; 0x5a1a TextBeforeBattle - dw SSAnne8AfterBattleText2 ; 0x5a24 TextAfterBattle - dw SSAnne8EndBattleText2 ; 0x5a1f TextEndBattle - dw SSAnne8EndBattleText2 ; 0x5a1f TextEndBattle - -SSAnne8TrainerHeader2: ; 619bd (18:59bd) - db $3 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d805 ; flag's byte - dw SSAnne8BattleText3 ; 0x5a29 TextBeforeBattle - dw SSAnne8AfterBattleText3 ; 0x5a33 TextAfterBattle - dw SSAnne8EndBattleText3 ; 0x5a2e TextEndBattle - dw SSAnne8EndBattleText3 ; 0x5a2e TextEndBattle - -SSAnne8TrainerHeader3: ; 619c9 (18:59c9) - db $4 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d805 ; flag's byte - dw SSAnne8BattleText4 ; 0x5a38 TextBeforeBattle - dw SSAnne8AfterBattleText4 ; 0x5a42 TextAfterBattle - dw SSAnne8EndBattleText4 ; 0x5a3d TextEndBattle - dw SSAnne8EndBattleText4 ; 0x5a3d TextEndBattle - - db $ff - -SSAnne8Text1: ; 619d6 (18:59d6) - db $08 ; asm - ld hl, SSAnne8TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -SSAnne8Text2: ; 619e0 (18:59e0) - db $08 ; asm - ld hl, SSAnne8TrainerHeader1 - call TalkToTrainer - jp TextScriptEnd - -SSAnne8Text3: ; 619ea (18:59ea) - db $08 ; asm - ld hl, SSAnne8TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -SSAnne8Text4: ; 619f4 (18:59f4) - db $08 ; asm - ld hl, SSAnne8TrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -SSAnne8Text8: ; 619fe (18:59fe) - TX_FAR _SSAnne8Text8 - db $08 ; asm - ld a, WIGGLYTUFF - call PlayCry - jp TextScriptEnd - -SSAnne8BattleText1: ; 61a0b (18:5a0b) - TX_FAR _SSAnne8BattleText1 - db "@" - -SSAnne8EndBattleText1: ; 61a10 (18:5a10) - TX_FAR _SSAnne8EndBattleText1 - db "@" +INCLUDE "data/mapHeaders/ssanne8.asm" -SSAnne8AfterBattleText1: ; 61a15 (18:5a15) - TX_FAR _SSAnne8AfterBattleText1 - db "@" +INCLUDE "scripts/ssanne8.asm" -SSAnne8BattleText2: ; 61a1a (18:5a1a) - TX_FAR _SSAnne8BattleText2 - db "@" - -SSAnne8EndBattleText2: ; 61a1f (18:5a1f) - TX_FAR _SSAnne8EndBattleText2 - db "@" - -UnnamedText_61a24: ; 61a24 (18:5a24) - TX_FAR _UnnamedText_61a24 - db "@" - -SSAnne8BattleText3: ; 61a29 (18:5a29) - TX_FAR _SSAnne8BattleText3 - db "@" - -SSAnne8EndBattleText3: ; 61a2e (18:5a2e) - TX_FAR _SSAnne8EndBattleText3 - db "@" - -SSAnne8AfterBattleText3: ; 61a33 (18:5a33) - TX_FAR _SSAnne8AfterBattleText3 - db "@" - -SSAnne8BattleText4: ; 61a38 (18:5a38) - TX_FAR _SSAnne8BattleText4 - db "@" - -SSAnne8EndBattleText4: ; 61a3d (18:5a3d) - TX_FAR _SSAnne8EndBattleText4 - db "@" - -SSAnne8AfterBattleText4: ; 61a42 (18:5a42) - TX_FAR _SSAnne8AfterBattleText4 - db "@" - -SSAnne8Text5: ; 61a47 (18:5a47) - TX_FAR _SSAnne8Text5 - db "@" - -SSAnne8Text6: ; 61a4c (18:5a4c) - TX_FAR _SSAnne8Text6 - db "@" - -SSAnne8Text7: ; 61a51 (18:5a51) - TX_FAR _SSAnne8Text7 - db "@" - -SSAnne8Text9: ; 61a56 (18:5a56) - TX_FAR _SSAnne8Text9 - db "@" - -SSAnne8Text11: ; 61a5b (18:5a5b) - TX_FAR _SSAnne8Text11 - db "@" - -SSAnne8Object: ; 0x61a60 (size=127) - db $c ; border tile - - db $6 ; warps - db $0, $0, $2, SS_ANNE_1 - db $0, $a, $3, SS_ANNE_1 - db $0, $14, $4, SS_ANNE_1 - db $a, $0, $5, SS_ANNE_1 - db $a, $a, $6, SS_ANNE_1 - db $a, $14, $7, SS_ANNE_1 - - db $0 ; signs - - db $b ; people - db SPRITE_GENTLEMAN, $3 + 4, $2 + 4, $ff, $d2, $41, GENTLEMAN + $C8, $1 ; trainer - db SPRITE_GENTLEMAN, $4 + 4, $b + 4, $ff, $d1, $42, GENTLEMAN + $C8, $2 ; trainer - db SPRITE_BUG_CATCHER, $e + 4, $b + 4, $ff, $d1, $43, YOUNGSTER + $C8, $8 ; trainer - db SPRITE_LASS, $b + 4, $d + 4, $ff, $d2, $44, LASS + $C8, $b ; trainer - db SPRITE_GIRL, $3 + 4, $16 + 4, $fe, $1, $5 ; person - db SPRITE_FAT_BALD_GUY, $e + 4, $0 + 4, $ff, $ff, $6 ; person - db SPRITE_LITTLE_GIRL, $b + 4, $2 + 4, $ff, $d0, $7 ; person - db SPRITE_CLEFAIRY, $b + 4, $3 + 4, $ff, $d0, $8 ; person - db SPRITE_GIRL, $d + 4, $a + 4, $ff, $d3, $9 ; person - db SPRITE_BALL, $f + 4, $c + 4, $ff, $ff, $8a, TM_08 ; item - db SPRITE_GENTLEMAN, $d + 4, $15 + 4, $fe, $2, $b ; person - - ; warp-to - EVENT_DISP SS_ANNE_8_WIDTH, $0, $0 ; SS_ANNE_1 - EVENT_DISP SS_ANNE_8_WIDTH, $0, $a ; SS_ANNE_1 - EVENT_DISP SS_ANNE_8_WIDTH, $0, $14 ; SS_ANNE_1 - EVENT_DISP SS_ANNE_8_WIDTH, $a, $0 ; SS_ANNE_1 - EVENT_DISP SS_ANNE_8_WIDTH, $a, $a ; SS_ANNE_1 - EVENT_DISP SS_ANNE_8_WIDTH, $a, $14 ; SS_ANNE_1 +INCLUDE "data/mapObjects/ssanne8.asm" SSAnne8Blocks: ; 61adf (18:5adf) INCBIN "maps/ssanne8.blk" -SSAnne9_h: ; 0x61b3f to 0x61b4b (12 bytes) (id=103) - db SHIP ; tileset - db SS_ANNE_9_HEIGHT, SS_ANNE_9_WIDTH ; dimensions (y, x) - dw SSAnne9Blocks, SSAnne9TextPointers, SSAnne9Script ; blocks, texts, scripts - db $00 ; connections - dw SSAnne9Object ; objects - -SSAnne9Script: ; 61b4b (18:5b4b) - ld a, $1 - ld [$cf0c], a - xor a - ld [$cc3c], a - ld hl, SSAnne9TrainerHeaders - ld de, SSAnne9ScriptPointers - ld a, [W_SSANNE9CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_SSANNE9CURSCRIPT], a - ret - -SSAnne9ScriptPointers: ; 61b64 (18:5b64) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -SSAnne9TextPointers: ; 61b6a (18:5b6a) - dw SSAnne9Text1 - dw SSAnne9Text2 - dw SSAnne9Text3 - dw SSAnne9Text4 - dw SSAnne9Text5 - dw Predef5CText - dw SSAnne9Text7 - dw SSAnne9Text8 - dw Predef5CText - dw SSAnne9Text10 - dw SSAnne9Text11 - dw SSAnne9Text12 - dw SSAnne9Text13 - -SSAnne9TrainerHeaders: ; 61b84 (18:5b84) -SSAnne9TrainerHeader0: ; 61b84 (18:5b84) - db $1 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d807 ; flag's byte - dw SSAnne9BattleText1 ; 0x5c51 TextBeforeBattle - dw SSAnne9AfterBattleText1 ; 0x5c5b TextAfterBattle - dw SSAnne9EndBattleText1 ; 0x5c56 TextEndBattle - dw SSAnne9EndBattleText1 ; 0x5c56 TextEndBattle - -SSAnne9TrainerHeader1: ; 61b90 (18:5b90) - db $2 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d807 ; flag's byte - dw SSAnne9BattleText2 ; 0x5c60 TextBeforeBattle - dw SSAnne9AfterBattleText2 ; 0x5c6a TextAfterBattle - dw SSAnne9EndBattleText2 ; 0x5c65 TextEndBattle - dw SSAnne9EndBattleText2 ; 0x5c65 TextEndBattle - -SSAnne9TrainerHeader2: ; 61b9c (18:5b9c) - db $3 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d807 ; flag's byte - dw SSAnne9BattleText3 ; 0x5c6f TextBeforeBattle - dw SSAnne9AfterBattleText3 ; 0x5c79 TextAfterBattle - dw SSAnne9EndBattleText3 ; 0x5c74 TextEndBattle - dw SSAnne9EndBattleText3 ; 0x5c74 TextEndBattle - -SSAnne9TrainerHeader3: ; 61ba8 (18:5ba8) - db $4 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d807 ; flag's byte - dw SSAnne9BattleText4 ; 0x5c7e TextBeforeBattle - dw SSAnne9AfterBattleText4 ; 0x5c88 TextAfterBattle - dw SSAnne9EndBattleText4 ; 0x5c83 TextEndBattle - dw SSAnne9EndBattleText4 ; 0x5c83 TextEndBattle - - db $ff - -SSAnne9Text1: ; 61bb5 (18:5bb5) - db $08 ; asm - ld hl, SSAnne9TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -SSAnne9Text2: ; 61bbf (18:5bbf) - db $08 ; asm - ld hl, SSAnne9TrainerHeader1 - call TalkToTrainer - jp TextScriptEnd - -SSAnne9Text3: ; 61bc9 (18:5bc9) - db $08 ; asm - ld hl, SSAnne9TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -SSAnne9Text4: ; 61bd3 (18:5bd3) - db $08 ; asm - ld hl, SSAnne9TrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -SSAnne9Text5: ; 61bdd (18:5bdd) - db $08 ; asm - call SaveScreenTilesToBuffer1 - ld hl, UnnamedText_61bf2 - call PrintText - call LoadScreenTilesFromBuffer1 - ld a, SNORLAX - call DisplayPokedex - jp TextScriptEnd - -UnnamedText_61bf2: ; 61bf2 (18:5bf2) - TX_FAR _UnnamedText_61bf2 - db "@" - -SSAnne9Text7: ; 61bf7 (18:5bf7) - db $08 ; asm - ld hl, UnnamedText_61c01 - call PrintText - jp TextScriptEnd - -UnnamedText_61c01: ; 61c01 (18:5c01) - TX_FAR _UnnamedText_61c01 - db "@" - -SSAnne9Text8: ; 61c06 (18:5c06) - db $08 ; asm - ld hl, UnnamedText_61c10 - call PrintText - jp TextScriptEnd - -UnnamedText_61c10: ; 61c10 (18:5c10) - TX_FAR _UnnamedText_61c10 - db "@" - -SSAnne9Text10: ; 61c15 (18:5c15) - db $08 ; asm - ld hl, UnnamedText_61c1f - call PrintText - jp TextScriptEnd - -UnnamedText_61c1f: ; 61c1f (18:5c1f) - TX_FAR _UnnamedText_61c1f - db "@" - -SSAnne9Text11: ; 61c24 (18:5c24) - db $08 ; asm - ld hl, UnnamedText_61c2e - call PrintText - jp TextScriptEnd +INCLUDE "data/mapHeaders/ssanne9.asm" -UnnamedText_61c2e: ; 61c2e (18:5c2e) - TX_FAR _UnnamedText_61c2e - db "@" +INCLUDE "scripts/ssanne9.asm" -SSAnne9Text12: ; 61c33 (18:5c33) - db $08 ; asm - ld hl, UnnamedText_61c3d - call PrintText - jp TextScriptEnd +INCLUDE "data/mapObjects/ssanne9.asm" -UnnamedText_61c3d: ; 61c3d (18:5c3d) - TX_FAR _UnnamedText_61c3d - db "@" +INCLUDE "data/mapHeaders/ssanne10.asm" -SSAnne9Text13: ; 61c42 (18:5c42) - db $08 ; asm - ld hl, UnnamedText_61c4c - call PrintText - jp TextScriptEnd +INCLUDE "scripts/ssanne10.asm" -UnnamedText_61c4c: ; 61c4c (18:5c4c) - TX_FAR _UnnamedText_61c4c - db "@" +INCLUDE "data/mapObjects/ssanne10.asm" -SSAnne9BattleText1: ; 61c51 (18:5c51) - TX_FAR _SSAnne9BattleText1 - db "@" +INCLUDE "data/mapHeaders/undergroundpathns.asm" -SSAnne9EndBattleText1: ; 61c56 (18:5c56) - TX_FAR _SSAnne9EndBattleText1 - db "@" +INCLUDE "scripts/undergroundpathns.asm" -SSAnne9AfterBattleText1: ; 61c5b (18:5c5b) - TX_FAR _SSAnne9AfterBattleText1 - db "@" +INCLUDE "data/mapObjects/undergroundpathns.asm" -SSAnne9BattleText2: ; 61c60 (18:5c60) - TX_FAR _SSAnne9BattleText2 - db "@" +INCLUDE "data/mapHeaders/undergroundpathwe.asm" -SSAnne9EndBattleText2: ; 61c65 (18:5c65) - TX_FAR _SSAnne9EndBattleText2 - db "@" +INCLUDE "scripts/undergroundpathwe.asm" -SSAnne9AfterBattleText2: ; 61c6a (18:5c6a) - TX_FAR _SSAnne9AfterBattleText2 - db "@" - -SSAnne9BattleText3: ; 61c6f (18:5c6f) - TX_FAR _SSAnne9BattleText3 - db "@" - -SSAnne9EndBattleText3: ; 61c74 (18:5c74) - TX_FAR _SSAnne9EndBattleText3 - db "@" - -SSAnne9AfterBattleText3: ; 61c79 (18:5c79) - TX_FAR _SSAnne9AfterBattleText3 - db "@" +INCLUDE "data/mapObjects/undergroundpathwe.asm" -SSAnne9BattleText4: ; 61c7e (18:5c7e) - TX_FAR _SSAnne9BattleText4 - db "@" +INCLUDE "data/mapHeaders/diglettscave.asm" -SSAnne9EndBattleText4: ; 61c83 (18:5c83) - TX_FAR _SSAnne9EndBattleText4 - db "@" - -SSAnne9AfterBattleText4: ; 61c88 (18:5c88) - TX_FAR _SSAnne9AfterBattleText4 - db "@" - -SSAnne9Object: ; 0x61c8d (size=188) - db $c ; border tile - - db $c ; warps - db $5, $2, $0, SS_ANNE_2 - db $5, $3, $0, SS_ANNE_2 - db $5, $c, $1, SS_ANNE_2 - db $5, $d, $1, SS_ANNE_2 - db $5, $16, $2, SS_ANNE_2 - db $5, $17, $2, SS_ANNE_2 - db $f, $2, $3, SS_ANNE_2 - db $f, $3, $3, SS_ANNE_2 - db $f, $c, $4, SS_ANNE_2 - db $f, $d, $4, SS_ANNE_2 - db $f, $16, $5, SS_ANNE_2 - db $f, $17, $5, SS_ANNE_2 - - db $0 ; signs - - db $d ; people - db SPRITE_GENTLEMAN, $2 + 4, $a + 4, $ff, $d3, $41, GENTLEMAN + $C8, $3 ; trainer - db SPRITE_FISHER2, $4 + 4, $d + 4, $ff, $d2, $42, FISHER + $C8, $1 ; trainer - db SPRITE_GENTLEMAN, $e + 4, $0 + 4, $ff, $d3, $43, GENTLEMAN + $C8, $5 ; trainer - db SPRITE_LASS, $b + 4, $2 + 4, $ff, $d0, $44, LASS + $C8, $c ; trainer - db SPRITE_GENTLEMAN, $2 + 4, $1 + 4, $ff, $d0, $5 ; person - db SPRITE_BALL, $1 + 4, $c + 4, $ff, $ff, $86, MAX_ETHER ; item - db SPRITE_GENTLEMAN, $2 + 4, $15 + 4, $ff, $d0, $7 ; person - db SPRITE_OLD_PERSON, $1 + 4, $16 + 4, $ff, $d0, $8 ; person - db SPRITE_BALL, $c + 4, $0 + 4, $ff, $ff, $89, RARE_CANDY ; item - db SPRITE_GENTLEMAN, $c + 4, $c + 4, $ff, $d0, $a ; person - db SPRITE_YOUNG_BOY, $e + 4, $b + 4, $ff, $ff, $b ; person - db SPRITE_BRUNETTE_GIRL, $c + 4, $16 + 4, $ff, $d2, $c ; person - db SPRITE_FOULARD_WOMAN, $c + 4, $14 + 4, $ff, $d3, $d ; person - - ; warp-to - EVENT_DISP SS_ANNE_9_WIDTH, $5, $2 ; SS_ANNE_2 - EVENT_DISP SS_ANNE_9_WIDTH, $5, $3 ; SS_ANNE_2 - EVENT_DISP SS_ANNE_9_WIDTH, $5, $c ; SS_ANNE_2 - EVENT_DISP SS_ANNE_9_WIDTH, $5, $d ; SS_ANNE_2 - EVENT_DISP SS_ANNE_9_WIDTH, $5, $16 ; SS_ANNE_2 - EVENT_DISP SS_ANNE_9_WIDTH, $5, $17 ; SS_ANNE_2 - EVENT_DISP SS_ANNE_9_WIDTH, $f, $2 ; SS_ANNE_2 - EVENT_DISP SS_ANNE_9_WIDTH, $f, $3 ; SS_ANNE_2 - EVENT_DISP SS_ANNE_9_WIDTH, $f, $c ; SS_ANNE_2 - EVENT_DISP SS_ANNE_9_WIDTH, $f, $d ; SS_ANNE_2 - EVENT_DISP SS_ANNE_9_WIDTH, $f, $16 ; SS_ANNE_2 - EVENT_DISP SS_ANNE_9_WIDTH, $f, $17 ; SS_ANNE_2 - -SSAnne10_h: ; 0x61d49 to 0x61d55 (12 bytes) (id=104) - db SHIP ; tileset - db SS_ANNE_10_HEIGHT, SS_ANNE_10_WIDTH ; dimensions (y, x) - dw SSAnne10Blocks, SSAnne10TextPointers, SSAnne10Script ; blocks, texts, scripts - db $00 ; connections - dw SSAnne10Object ; objects - -SSAnne10Script: ; 61d55 (18:5d55) - call EnableAutoTextBoxDrawing - ld hl, SSAnne10TrainerHeaders - ld de, SSAnne10ScriptPointers - ld a, [W_SSANNE10CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_SSANNE10CURSCRIPT], a - ret - -SSAnne10ScriptPointers: ; 61d68 (18:5d68) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - -SSAnne10TextPointers: ; 61d6e (18:5d6e) - dw SSAnne10Text1 - dw SSAnne10Text2 - dw SSAnne10Text3 - dw SSAnne10Text4 - dw SSAnne10Text5 - dw SSAnne10Text6 - dw SSAnne10Text7 - dw SSAnne10Text8 - dw Predef5CText - dw Predef5CText - dw Predef5CText - -SSAnne10TrainerHeaders: ; 61d84 (18:5d84) -SSAnne10TrainerHeader0: ; 61d84 (18:5d84) - db $1 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d809 ; flag's byte - dw SSAnne10BattleText1 ; 0x5e16 TextBeforeBattle - dw SSAnne10AfterBattleText1 ; 0x5e20 TextAfterBattle - dw SSAnne10EndBattleText1 ; 0x5e1b TextEndBattle - dw SSAnne10EndBattleText1 ; 0x5e1b TextEndBattle - -SSAnne10TrainerHeader1: ; 61d90 (18:5d90) - db $2 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d809 ; flag's byte - dw SSAnne10BattleText2 ; 0x5e25 TextBeforeBattle - dw SSAnne10AfterBattleText2 ; 0x5e2f TextAfterBattle - dw SSAnne10EndBattleText2 ; 0x5e2a TextEndBattle - dw SSAnne10EndBattleText2 ; 0x5e2a TextEndBattle - -SSAnne10TrainerHeader2: ; 61d9c (18:5d9c) - db $3 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d809 ; flag's byte - dw SSAnne10BattleText3 ; 0x5e34 TextBeforeBattle - dw SSAnne10AfterBattleText3 ; 0x5e3e TextAfterBattle - dw SSAnne10EndBattleText3 ; 0x5e39 TextEndBattle - dw SSAnne10EndBattleText3 ; 0x5e39 TextEndBattle - -SSAnne10TrainerHeader3: ; 61da8 (18:5da8) - db $4 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d809 ; flag's byte - dw SSAnne10BattleText4 ; 0x5e43 TextBeforeBattle - dw SSAnne10AfterBattleText4 ; 0x5e4d TextAfterBattle - dw SSAnne10EndBattleText4 ; 0x5e48 TextEndBattle - dw SSAnne10EndBattleText4 ; 0x5e48 TextEndBattle - -SSAnne10TrainerHeader4: ; 61db4 (18:5db4) - db $5 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d809 ; flag's byte - dw SSAnne10BattleText5 ; 0x5e52 TextBeforeBattle - dw SSAnne10AfterBattleText5 ; 0x5e5c TextAfterBattle - dw SSAnne10EndBattleText5 ; 0x5e57 TextEndBattle - dw SSAnne10EndBattleText5 ; 0x5e57 TextEndBattle - -SSAnne10TrainerHeader5: ; 61dc0 (18:5dc0) - db $6 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d809 ; flag's byte - dw SSAnne10BattleText6 ; 0x5e61 TextBeforeBattle - dw SSAnne10AfterBattleText6 ; 0x5e6b TextAfterBattle - dw SSAnne10EndBattleText6 ; 0x5e66 TextEndBattle - dw SSAnne10EndBattleText6 ; 0x5e66 TextEndBattle - - db $ff - -SSAnne10Text1: ; 61dcd (18:5dcd) - db $08 ; asm - ld hl, SSAnne10TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -SSAnne10Text2: ; 61dd7 (18:5dd7) - db $08 ; asm - ld hl, SSAnne10TrainerHeader1 - call TalkToTrainer - jp TextScriptEnd - -SSAnne10Text3: ; 61de1 (18:5de1) - db $08 ; asm - ld hl, SSAnne10TrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -SSAnne10Text4: ; 61deb (18:5deb) - db $08 ; asm - ld hl, SSAnne10TrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -SSAnne10Text5: ; 61df5 (18:5df5) - db $08 ; asm - ld hl, SSAnne10TrainerHeader4 - call TalkToTrainer - jp TextScriptEnd - -SSAnne10Text6: ; 61dff (18:5dff) - db $08 ; asm - ld hl, SSAnne10TrainerHeader5 - call TalkToTrainer - jp TextScriptEnd - -SSAnne10Text8: ; 61e09 (18:5e09) - TX_FAR _SSAnne10Text8 - db $8 ; 0x61e0d - ld a, MACHOKE - call PlayCry - jp TextScriptEnd - -SSAnne10BattleText1: ; 61e16 (18:5e16) - TX_FAR _SSAnne10BattleText1 - db "@" - -SSAnne10EndBattleText1: ; 61e1b (18:5e1b) - TX_FAR _SSAnne10EndBattleText1 - db "@" - -SSAnne10AfterBattleText1: ; 61e20 (18:5e20) - TX_FAR _SSAnne10AfterBattleText1 - db "@" - -SSAnne10BattleText2: ; 61e25 (18:5e25) - TX_FAR _SSAnne10BattleText2 - db "@" - -SSAnne10EndBattleText2: ; 61e2a (18:5e2a) - TX_FAR _SSAnne10EndBattleText2 - db "@" - -SSAnne10AfterBattleText2: ; 61e2f (18:5e2f) - TX_FAR _SSAnne10AfterBattleText2 - db "@" - -SSAnne10BattleText3: ; 61e34 (18:5e34) - TX_FAR _SSAnne10BattleText3 - db "@" - -SSAnne10EndBattleText3: ; 61e39 (18:5e39) - TX_FAR _SSAnne10EndBattleText3 - db "@" - -SSAnne10AfterBattleText3: ; 61e3e (18:5e3e) - TX_FAR _SSAnne10AfterBattleText3 - db "@" - -SSAnne10BattleText4: ; 61e43 (18:5e43) - TX_FAR _SSAnne10BattleText4 - db "@" - -SSAnne10EndBattleText4: ; 61e48 (18:5e48) - TX_FAR _SSAnne10EndBattleText4 - db "@" - -SSAnne10AfterBattleText4: ; 61e4d (18:5e4d) - TX_FAR _SSAnne10AfterBattleText4 - db "@" - -SSAnne10BattleText5: ; 61e52 (18:5e52) - TX_FAR _SSAnne10BattleText5 - db "@" - -SSAnne10EndBattleText5: ; 61e57 (18:5e57) - TX_FAR _SSAnne10EndBattleText5 - db "@" - -SSAnne10AfterBattleText5: ; 61e5c (18:5e5c) - TX_FAR _SSAnne10AfterBattleText5 - db "@" - -SSAnne10BattleText6: ; 61e61 (18:5e61) - TX_FAR _SSAnne10BattleText6 - db "@" - -SSAnne10EndBattleText6: ; 61e66 (18:5e66) - TX_FAR _SSAnne10EndBattleText6 - db "@" - -SSAnne10AfterBattleText6: ; 61e6b (18:5e6b) - TX_FAR _SSAnne10AfterBattleText6 - db "@" - -SSAnne10Text7: ; 61e70 (18:5e70) - TX_FAR _SSAnne10Text7 - db "@" - -SSAnne10Object: ; 0x61e75 (size=165) - db $c ; border tile - - db $a ; warps - db $5, $2, $4, SS_ANNE_4 - db $5, $3, $4, SS_ANNE_4 - db $5, $c, $3, SS_ANNE_4 - db $5, $d, $3, SS_ANNE_4 - db $5, $16, $2, SS_ANNE_4 - db $5, $17, $2, SS_ANNE_4 - db $f, $2, $1, SS_ANNE_4 - db $f, $3, $1, SS_ANNE_4 - db $f, $c, $0, SS_ANNE_4 - db $f, $d, $0, SS_ANNE_4 - - db $0 ; signs - - db $b ; people - db SPRITE_SAILOR, $d + 4, $0 + 4, $ff, $d0, $41, SAILOR + $C8, $3 ; trainer - db SPRITE_SAILOR, $b + 4, $2 + 4, $ff, $d0, $42, SAILOR + $C8, $4 ; trainer - db SPRITE_SAILOR, $3 + 4, $c + 4, $ff, $d2, $43, SAILOR + $C8, $5 ; trainer - db SPRITE_SAILOR, $2 + 4, $16 + 4, $ff, $d0, $44, SAILOR + $C8, $6 ; trainer - db SPRITE_SAILOR, $2 + 4, $0 + 4, $ff, $d3, $45, SAILOR + $C8, $7 ; trainer - db SPRITE_FISHER2, $4 + 4, $0 + 4, $ff, $d3, $46, FISHER + $C8, $2 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $d + 4, $a + 4, $ff, $d3, $7 ; person - db SPRITE_SLOWBRO, $c + 4, $b + 4, $ff, $ff, $8 ; person - db SPRITE_BALL, $2 + 4, $14 + 4, $ff, $ff, $89, ETHER ; item - db SPRITE_BALL, $2 + 4, $a + 4, $ff, $ff, $8a, TM_44 ; item - db SPRITE_BALL, $b + 4, $c + 4, $ff, $ff, $8b, MAX_POTION ; item - - ; warp-to - EVENT_DISP SS_ANNE_10_WIDTH, $5, $2 ; SS_ANNE_4 - EVENT_DISP SS_ANNE_10_WIDTH, $5, $3 ; SS_ANNE_4 - EVENT_DISP SS_ANNE_10_WIDTH, $5, $c ; SS_ANNE_4 - EVENT_DISP SS_ANNE_10_WIDTH, $5, $d ; SS_ANNE_4 - EVENT_DISP SS_ANNE_10_WIDTH, $5, $16 ; SS_ANNE_4 - EVENT_DISP SS_ANNE_10_WIDTH, $5, $17 ; SS_ANNE_4 - EVENT_DISP SS_ANNE_10_WIDTH, $f, $2 ; SS_ANNE_4 - EVENT_DISP SS_ANNE_10_WIDTH, $f, $3 ; SS_ANNE_4 - EVENT_DISP SS_ANNE_10_WIDTH, $f, $c ; SS_ANNE_4 - EVENT_DISP SS_ANNE_10_WIDTH, $f, $d ; SS_ANNE_4 - -UndergroundPathNS_h: ; 0x61f1a to 0x61f26 (12 bytes) (id=119) - db UNDERGROUND ; tileset - db UNDERGROUND_PATH_NS_HEIGHT, UNDERGROUND_PATH_NS_WIDTH ; dimensions (y, x) - dw UndergroundPathNSBlocks, UndergroundPathNSTextPointers, UndergroundPathNSScript ; blocks, texts, scripts - db $00 ; connections - dw UndergroundPathNSObject ; objects - -UndergroundPathNSScript: ; 61f26 (18:5f26) - jp EnableAutoTextBoxDrawing - -UndergroundPathNSTextPointers: ; 61f29 (18:5f29) - db "@" +INCLUDE "scripts/diglettscave.asm" -UndergroundPathNSObject: ; 0x61f2a (size=20) - db $1 ; border tile - - db $2 ; warps - db $4, $5, $2, PATH_ENTRANCE_ROUTE_5 - db $29, $2, $2, PATH_ENTRANCE_ROUTE_6 - - db $0 ; signs - - db $0 ; people - - ; warp-to - EVENT_DISP UNDERGROUND_PATH_NS_WIDTH, $4, $5 ; PATH_ENTRANCE_ROUTE_5 - EVENT_DISP UNDERGROUND_PATH_NS_WIDTH, $29, $2 ; PATH_ENTRANCE_ROUTE_6 - -UndergroundPathWE_h: ; 0x61f3e to 0x61f4a (12 bytes) (id=121) - db UNDERGROUND ; tileset - db UNDERGROUND_PATH_WE_HEIGHT, UNDERGROUND_PATH_WE_WIDTH ; dimensions (y, x) - dw UndergroundPathWEBlocks, UndergroundPathWETextPointers, UndergroundPathWEScript ; blocks, texts, scripts - db $00 ; connections - dw UndergroundPathWEObject ; objects - -UndergroundPathWEScript: ; 61f4a (18:5f4a) - jp EnableAutoTextBoxDrawing - -UndergroundPathWETextPointers: ; 61f4d (18:5f4d) - db "@" - -UndergroundPathWEObject: ; 0x61f4e (size=20) - db $1 ; border tile - - db $2 ; warps - db $5, $2, $2, PATH_ENTRANCE_ROUTE_7 - db $2, $2f, $2, PATH_ENTRANCE_ROUTE_8 - - db $0 ; signs - - db $0 ; people - - ; warp-to - EVENT_DISP UNDERGROUND_PATH_WE_WIDTH, $5, $2 ; PATH_ENTRANCE_ROUTE_7 - EVENT_DISP UNDERGROUND_PATH_WE_WIDTH, $2, $2f ; PATH_ENTRANCE_ROUTE_8 - -DiglettsCave_h: ; 0x61f62 to 0x61f6e (12 bytes) (id=197) - db CAVERN ; tileset - db DIGLETTS_CAVE_HEIGHT, DIGLETTS_CAVE_WIDTH ; dimensions (y, x) - dw DiglettsCaveBlocks, DiglettsCaveTextPointers, DiglettsCaveScript ; blocks, texts, scripts - db $00 ; connections - dw DiglettsCaveObject ; objects - -DiglettsCaveScript: ; 61f6e (18:5f6e) - jp EnableAutoTextBoxDrawing - -DiglettsCaveTextPointers: ; 61f71 (18:5f71) - db "@" - -DiglettsCaveObject: ; 0x61f72 (size=20) - db $19 ; border tile - - db $2 ; warps - db $5, $5, $2, DIGLETTS_CAVE_EXIT - db $1f, $25, $2, DIGLETTS_CAVE_ENTRANCE - - db $0 ; signs - - db $0 ; people - - ; warp-to - EVENT_DISP DIGLETTS_CAVE_WIDTH, $5, $5 ; DIGLETTS_CAVE_EXIT - EVENT_DISP DIGLETTS_CAVE_WIDTH, $1f, $25 ; DIGLETTS_CAVE_ENTRANCE +INCLUDE "data/mapObjects/diglettscave.asm" DiglettsCaveBlocks: ; 61f86 (18:5f86) INCBIN "maps/diglettscave.blk" -SilphCo11_h: ; 0x620ee to 0x620fa (12 bytes) (id=235) - db INTERIOR ; tileset - db SILPH_CO_11F_HEIGHT, SILPH_CO_11F_WIDTH ; dimensions (y, x) - dw SilphCo11Blocks, SilphCo11TextPointers, SilphCo11Script ; blocks, texts, scripts - db $00 ; connections - dw SilphCo11Object ; objects - -SilphCo11Script: ; 620fa (18:60fa) - call SilphCo11Script_62110 - call EnableAutoTextBoxDrawing - ld hl, SilphCo11TrainerHeaders - ld de, SilphCo11ScriptPointers - ld a, [W_SILPHCO11CURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_SILPHCO11CURSCRIPT], a - ret - -SilphCo11Script_62110: ; 62110 (18:6110) - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - ret z - ld hl, DataTable_62134 ; $6134 - call Func_62137 - call Func_62163 - ld a, [$d838] - bit 0, a - ret nz - ld a, $20 - ld [$d09f], a - ld bc, $603 - ld a, $17 - jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) - -DataTable_62134: ; 62134 (18:6134) - db $06,$03,$FF - -Func_62137: ; 62137 (18:6137) - push hl - ld hl, $d73f - ld a, [hli] - ld b, a - ld a, [hl] - ld c, a - xor a - ld [$ffe0], a - pop hl -.asm_62143 - ld a, [hli] - cp $ff - jr z, .asm_6215f - push hl - ld hl, $ffe0 - inc [hl] - pop hl - cp b - jr z, .asm_62154 - inc hl - jr .asm_62143 -.asm_62154 - ld a, [hli] - cp c - jr nz, .asm_62143 - ld hl, $d73f - xor a - ld [hli], a - ld [hl], a - ret -.asm_6215f - xor a - ld [$ffe0], a - ret - -Func_62163: ; 62163 (18:6163) - ld a, [$ffe0] - and a - ret z - ld hl, $d838 - set 0, [hl] - ret +INCLUDE "data/mapHeaders/silphco11.asm" -Func_6216d: ; 6216d (18:616d) - ld hl, MissableObjectIDs_6219b ; $619b -.asm_62170 - ld a, [hli] - cp $ff - jr z, .asm_62181 - push hl - ld [$cc4d], a - ld a, $11 - call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7)) - pop hl - jr .asm_62170 -.asm_62181 - ld hl, MissableObjectIDs_62194 ; $6194 -.asm_62184 - ld a, [hli] - cp $ff - ret z - push hl - ld [$cc4d], a - ld a, $15 - call Predef ; indirect jump to AddMissableObject (f1c8 (3:71c8)) - pop hl - jr .asm_62184 - -MissableObjectIDs_62194: ; 62194 (18:6194) - db $11,$12,$13,$14,$15,$16,$FF +INCLUDE "scripts/silphco11.asm" -MissableObjectIDs_6219b: ; 6219b (18:619b) - db $0A,$0B,$0C,$0D,$0E,$0F,$10,$17 - db $18,$8A,$8B,$8C,$8D,$8E,$8F,$91 - db $92,$93,$97,$98,$99,$9A,$9E,$9F - db $A0,$A3,$A4,$A5,$A6,$AB,$AC,$AD - db $AE,$AF,$B0,$B1,$B2,$B7,$B8,$B9 - db $FF - -SilphCo11Script_621c4: ; 621c4 (18:61c4) - xor a - ld [wJoypadForbiddenButtonsMask], a - -SilphCo11Script_621c8: ; 621c8 (18:61c8) - ld [W_SILPHCO11CURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -SilphCo11ScriptPointers: ; 621cf (18:61cf) - dw SilphCo11Script0 - dw Func_324c - dw EndTrainerBattle - dw SilphCo11Script3 - dw SilphCo11Script4 - dw SilphCo11Script5 - -SilphCo11Script0: ; 621db (18:61db) - ld a, [$d838] - bit 7, a - ret nz - ld hl, CoordsData_62211 ; $6211 - call ArePlayerCoordsInArray - jp nc, CheckFightingMapTrainers - ld a, [wWhichTrade] ; $cd3d - ld [$cf0d], a - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - ld a, $3 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - ld a, $3 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call SetSpriteMovementBytesToFF - ld de, MovementData_62216 - call MoveSprite - ld a, $3 - jp SilphCo11Script_621c8 - -CoordsData_62211: ; 62211 (18:6211) - db $0D,$06 - db $0C,$07 - db $FF - -MovementData_62216: ; 62216 (18:6216) - db $00,$00,$00,$FF - -SilphCo11Script_6221a: ; 6221a (18:621a) - ld [$d528], a - ld a, $3 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - ld a, b - ld [$ff8d], a - jp Func_34a6 - -SilphCo11Script5: ; 62227 (18:6227) - ld a, [W_ISINBATTLE] ; $d057 - cp $ff - jp z, SilphCo11Script_621c4 - ld a, [$cf0d] - cp $1 - jr z, .asm_6223c - ld a, $2 - ld b, $c - jr .asm_62240 -.asm_6223c - ld a, $8 - ld b, $0 -.asm_62240 - call SilphCo11Script_6221a - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - ld a, $6 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - call GBFadeIn1 - call Func_6216d - call UpdateSprites - call Delay3 - call GBFadeOut1 - ld hl, $d838 - set 7, [hl] - xor a - ld [wJoypadForbiddenButtonsMask], a - jp SilphCo11Script_621c8 - -SilphCo11Script3: ; 6226a (18:626a) - ld a, [$d730] - bit 0, a - ret nz - ld a, $3 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call SetSpriteMovementBytesToFF - ld a, [$cf0d] - cp $1 - jr z, .asm_62284 - ld a, $2 - ld b, $c - jr .asm_62288 -.asm_62284 - ld a, $8 - ld b, $0 -.asm_62288 - call SilphCo11Script_6221a - call Delay3 - ld a, $4 - jp SilphCo11Script_621c8 - -SilphCo11Script4: ; 62293 (18:6293) - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, UnnamedText_62330 ; $6330 - ld de, UnnamedText_62330 ; $6330 - call PreBattleSaveRegisters - ld a, [H_DOWNARROWBLINKCNT2] ; $ff8c - ld [$cf13], a - call EngageMapTrainer - call InitBattleEnemyParameters - xor a - ld [wJoypadForbiddenButtonsMask], a - ld a, $5 - jp SilphCo11Script_621c8 - -SilphCo11TextPointers: ; 622b7 (18:62b7) - dw SilphCo11Text1 - dw SilphCo11Text2 - dw SilphCo11Text3 - dw SilphCo11Text4 - dw SilphCo11Text5 - dw SilphCo11Text6 - -SilphCo11TrainerHeaders: ; 622c3 (18:62c3) -SilphCo11TrainerHeader0: ; 622c3 (18:62c3) - db $4 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d837 ; flag's byte - dw SilphCo11BattleText1 ; 0x6344 TextBeforeBattle - dw SilphCo11AfterBattleText1 ; 0x634e TextAfterBattle - dw SilphCo11EndBattleText1 ; 0x6349 TextEndBattle - dw SilphCo11EndBattleText1 ; 0x6349 TextEndBattle - -SilphCo11TrainerHeader1: ; 622cf (18:62cf) - db $5 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d837 ; flag's byte - dw SilphCo11BattleText2 ; 0x635d TextBeforeBattle - dw SilphCo11AfterBattleText2 ; 0x6367 TextAfterBattle - dw SilphCo11EndBattleText2 ; 0x6362 TextEndBattle - dw SilphCo11EndBattleText2 ; 0x6362 TextEndBattle - - db $ff - -SilphCo11Text1: ; 622dc (18:62dc) - db $08 ; asm - ld a, [$d838] - bit 5, a - jp nz, .asm_62308 - ld hl, SilphCoPresidentText - call PrintText - ld bc, (MASTER_BALL << 8) | 1 - call GiveItem - jr nc, .BagFull - ld hl, ReceivedSilphCoMasterBallText - call PrintText - ld hl, $d838 - set 5, [hl] - jr .asm_fd405 ; 0x622fe -.BagFull - ld hl, SilphCoMasterBallNoRoomText - call PrintText - jr .asm_fd405 ; 0x62306 -.asm_62308 ; 0x62308 - ld hl, UnnamedText_6231c - call PrintText -.asm_fd405 ; 0x6230e - jp TextScriptEnd - -SilphCoPresidentText: ; 62311 (18:6311) - TX_FAR _SilphCoPresidentText - db "@" - -ReceivedSilphCoMasterBallText: ; 62316 (18:6316) - TX_FAR _ReceivedSilphCoMasterBallText ; 0x84f63 - db $11, "@" - -UnnamedText_6231c: ; 6231c (18:631c) - TX_FAR _UnnamedText_6231c - db "@" - -SilphCoMasterBallNoRoomText: ; 62321 (18:6321) - TX_FAR _SilphCoMasterBallNoRoomText - db "@" - -SilphCo11Text2: ; 62326 (18:6326) - TX_FAR _SilphCo11Text2 - db "@" - -SilphCo11Text3: ; 6232b (18:632b) - TX_FAR _SilphCo11Text3 - db "@" - -UnnamedText_62330: ; 62330 (18:6330) - TX_FAR _UnnamedText_62330 - db "@" - -SilphCo11Text6: ; 62335 (18:6335) - TX_FAR _UnnamedText_62335 - db "@" - -SilphCo11Text4: ; 6233a (18:633a) - db $08 ; asm - ld hl, SilphCo11TrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -SilphCo11BattleText1: ; 62344 (18:6344) - TX_FAR _SilphCo11BattleText1 - db "@" - -SilphCo11EndBattleText1: ; 62349 (18:6349) - TX_FAR _SilphCo11EndBattleText1 - db "@" - -SilphCo11AfterBattleText1: ; 6234e (18:634e) - TX_FAR _SilphCo11AfterBattleText1 - db "@" - -SilphCo11Text5: ; 62353 (18:6353) - db $08 ; asm - ld hl, SilphCo11TrainerHeader1 - call TalkToTrainer - jp TextScriptEnd - -SilphCo11BattleText2: ; 6235d (18:635d) - TX_FAR _SilphCo11BattleText2 - db "@" - -SilphCo11EndBattleText2: ; 62362 (18:6362) - TX_FAR _SilphCo11EndBattleText2 - db "@" - -SilphCo11AfterBattleText2: ; 62367 (18:6367) - TX_FAR _SilphCo11AfterBattleText2 - db "@" - -UnnamedText_6236c: ; 6236c (18:636c) - db $8 - ld hl, UnnamedText_6237b - call PrintText - ld a, PORYGON - call DisplayPokedex - jp TextScriptEnd - -UnnamedText_6237b: ; 6237b (18:637b) - TX_FAR _UnnamedText_6237b - db "@" - -SilphCo11Object: ; 0x62380 (size=72) - db $d ; border tile - - db $4 ; warps - db $0, $9, $1, SILPH_CO_10F - db $0, $d, $0, SILPH_CO_ELEVATOR - db $5, $5, $9, $ff - db $2, $3, $3, SILPH_CO_7F - - db $0 ; signs - - db $5 ; people - db SPRITE_MR_MASTERBALL, $5 + 4, $7 + 4, $ff, $d0, $1 ; person - db SPRITE_FOULARD_WOMAN, $5 + 4, $a + 4, $ff, $d0, $2 ; person - db SPRITE_GIOVANNI, $9 + 4, $6 + 4, $ff, $d0, $43, GIOVANNI + $C8, $2 ; trainer - db SPRITE_ROCKET, $10 + 4, $3 + 4, $ff, $d1, $44, ROCKET + $C8, $29 ; trainer - db SPRITE_ROCKET, $9 + 4, $f + 4, $ff, $d1, $45, ROCKET + $C8, $28 ; trainer - - ; warp-to - EVENT_DISP SILPH_CO_11F_WIDTH, $0, $9 ; SILPH_CO_10F - EVENT_DISP SILPH_CO_11F_WIDTH, $0, $d ; SILPH_CO_ELEVATOR - EVENT_DISP SILPH_CO_11F_WIDTH, $5, $5 - EVENT_DISP SILPH_CO_11F_WIDTH, $2, $3 ; SILPH_CO_7F +INCLUDE "data/mapObjects/silphco11.asm" SilphCo11Blocks: ; 623c8 (18:63c8) INCBIN "maps/silphco11.blk" @@ -97622,7 +48852,7 @@ SilphCo11Blocks: ; 623c8 (18:63c8) GymStatues: ; 62419 (18:6419) ; if in a gym and have the corresponding badge, a = $D and jp Func_3ef5 ; if in a gym and don’t have the corresponding badge, a = $C and jp Func_3ef5 -; else ret +; else ret call EnableAutoTextBoxDrawing ld a, [$c109] cp $4 @@ -97784,7 +49014,7 @@ CeladonCityHotelText: ; 62502 (18:6502) ret -Unknown_62508: ; 62508 (18:6508) +TerminatorText_62508: ; 62508 (18:6508) db "@" Func_62509: ; 6509 (18:6509) @@ -97865,7 +49095,7 @@ DecrementPP: ; 68000 (1a:4000) ret nz ; If it is, return. Pokemon Red stores the "current pokemon's" PP ; separately from the "Pokemon in your party's" PP. This is ; duplication -- in all cases *other* than Pokemon with Transform. - ; Normally, this means we have to go on and make the same + ; Normally, this means we have to go on and make the same ; modification to the "party's pokemon" PP that we made to the ; "current pokemon's" PP. But, if we're dealing with a Transformed ; Pokemon, it has separate PP for the move set that it copied from @@ -97957,7 +49187,7 @@ Underground_Block: ; 6fef0 (1b:7ef0) SECTION "bank1C",ROMX,BANK[$1C] -Func_70000: ; 70000 (1c:4000) +LoadShootingStarGraphics: ; 70000 (1c:4000) ld a, $f9 ld [rOBP0], a ; $ff48 ld a, $a4 @@ -97983,8 +49213,8 @@ Func_70000: ; 70000 (1c:4000) ld bc, $10 jp CopyData -Func_70044: ; 70044 (1c:4044) - call Func_70000 +AnimateShootingStar: ; 70044 (1c:4044) + call LoadShootingStarGraphics ld a, (SFX_1f_67 - SFX_Headers_1f) / 3 call PlaySound ld hl, wOAMBuffer @@ -98244,7 +49474,7 @@ Func_701a0: ; 701a0 (1c:41a0) call TextBoxBorder FuncCoord 4, 15 ; $c4d0 ld hl, Coord - ld de, HallOfFameText ; $426b + ld de, HallOfFameText call PlaceString ld c, $b4 call DelayFrames @@ -98345,7 +49575,7 @@ Func_702f0: ; 702f0 (1c:42f0) call TextBoxBorder FuncCoord 2, 6 ; $c41a ld hl, Coord - ld de, HoFMonInfoText ; $4329 + ld de, HoFMonInfoText call PlaceString FuncCoord 1, 4 ; $c3f1 ld hl, Coord @@ -98416,7 +49646,7 @@ Func_70377: ; 70377 (1c:4377) call PlaceString FuncCoord 1, 6 ; $c419 ld hl, Coord - ld de, HoFPlayTimeText ; $43ea + ld de, HoFPlayTimeText call PlaceString FuncCoord 5, 7 ; $c431 ld hl, Coord @@ -98430,16 +49660,16 @@ Func_70377: ; 70377 (1c:4377) call PrintNumber FuncCoord 1, 9 ; $c455 ld hl, Coord - ld de, HoFMoneyText ; $43f4 + ld de, HoFMoneyText call PlaceString FuncCoord 4, 10 ; $c46c ld hl, Coord ld de, wPlayerMoney ; $d347 ld c, $a3 call PrintBCDNumber - ld hl, UnnamedText_703fa ; $43fa + ld hl, DexSeenOwnedText call Func_703e2 - ld hl, UnnamedText_703ff ; $43ff + ld hl, DexRatingText call Func_703e2 ld hl, $cc5d @@ -98454,12 +49684,12 @@ HoFPlayTimeText: ; 703ea (1c:43ea) HoFMoneyText: ; 703f4 (1c:43f4) db "MONEY@" -UnnamedText_703fa: ; 703fa (1c:43fa) - TX_FAR _UnnamedText_703fa +DexSeenOwnedText: ; 703fa (1c:43fa) + TX_FAR _DexSeenOwnedText db "@" -UnnamedText_703ff: ; 703ff (1c:43ff) - TX_FAR _UnnamedText_703ff +DexRatingText: ; 703ff (1c:43ff) + TX_FAR _DexRatingText db "@" Func_70404: ; 70404 (1c:4404) @@ -98485,7 +49715,7 @@ Func_70423: ; 70423 (1c:4423) ld [wMusicHeaderPointer], a jp GBFadeOut2 -Func_70433: ; 70433 (1c:4433) +AnimateHealingMachine: ; 70433 (1c:4433) ld de, PokeCenterFlashingMonitorAndHealBall ; $44b7 ld hl, $87c0 ld bc, (BANK(PokeCenterFlashingMonitorAndHealBall) << 8) + $03 @@ -98667,7 +49897,7 @@ FlyAnimationEnterScreenCoords: ; 70592 (1c:4592) db $39, $58 db $3B, $50 db $3C, $48 - db $3C, $40 + db $3C, $40 Func_705aa: ; 705aa (1c:45aa) ld hl, wWhichTrade ; $cd3d @@ -98769,7 +49999,7 @@ FlyAnimationScreenCoords1: ; 7064f (1c:464f) db $30, $88 db $2D, $90 db $2A, $98 - db $27, $A0 + db $27, $A0 FlyAnimationScreenCoords2: ; 70667 (1c:4667) ; y, x pairs @@ -98784,9 +50014,9 @@ FlyAnimationScreenCoords2: ; 70667 (1c:4667) db $0C, $30 db $09, $20 db $05, $10 - db $00, $00 + db $00, $00 - db $F0, $00 + db $F0, $00 Func_7067d: ; 7067d (1c:467d) ld a, $ff @@ -98987,10 +50217,10 @@ Func_707b6: ; 707b6 (1c:47b6) call DelayFrames ld a, [wWhichTrade] ; $cd3d and a - ld hl, UnnamedText_70847 ; $4847 + ld hl, NoNibbleText jr z, .asm_70836 cp $2 - ld hl, UnnamedText_7084c ; $484c + ld hl, NothingHereText jr z, .asm_70836 ld b, $a .asm_707fe @@ -99012,14 +50242,14 @@ Func_707b6: ; 707b6 (1c:47b6) ld [hli], a ld [hl], a ld a, $4c - call Predef ; indirect jump to Func_17c47 (17c47 (5:7c47)) + call Predef ; indirect jump to PrintEmotionBubble (17c47 (5:7c47)) ld a, [$c102] cp $4 jr nz, .asm_70833 ld a, $44 ld [$c39c], a .asm_70833 - ld hl, UnnamedText_70851 ; $4851 + ld hl, ItsABiteText .asm_70836 call PrintText ld hl, $d736 @@ -99033,16 +50263,16 @@ Func_70842: ; 70842 (1c:4842) ld [hl], a ret -UnnamedText_70847: ; 70847 (1c:4847) - TX_FAR _UnnamedText_70847 +NoNibbleText: ; 70847 (1c:4847) + TX_FAR _NoNibbleText db "@" -UnnamedText_7084c: ; 7084c (1c:484c) - TX_FAR _UnnamedText_7084c +NothingHereText: ; 7084c (1c:484c) + TX_FAR _NothingHereText db "@" -UnnamedText_70851: ; 70851 (1c:4851) - TX_FAR _UnnamedText_70851 +ItsABiteText: ; 70851 (1c:4851) + TX_FAR _ItsABiteText db "@" FishingRodGfxProperties: ; 70856 (1c:4856) @@ -99238,7 +50468,7 @@ Func_7096d: ; 7096d (1c:496d) dec c jr nz, .asm_70998 call Delay3 - call Func_70a4d + call LoadBattleTransitionTile ld bc, $0 ld a, [W_ISLINKBATTLE] ; $d12b cp $4 @@ -99361,7 +50591,7 @@ MapIDList_70a44: ; 70a44 (1c:4a44) db UNKNOWN_DUNGEON_1 db $FF -Func_70a4d: ; 70a4d (1c:4a4d) +LoadBattleTransitionTile: ; 70a4d (1c:4a4d) ld hl, $8ff0 ld de, BattleTransitionTile ; $4a59 ld bc, (BANK(BattleTransitionTile) << 8) + $01 @@ -100023,7 +51253,7 @@ Unknown_70e2e: ; 70e2e (1c:4e2e) db $04,$00,$03,$00,$03,$00,$02,$00,$02,$00,$01,$00,$01,$00,$01,$FF DisplayTownMap: ; 70e3e (1c:4e3e) - call Func_7109b + call LoadTownMap ld hl, $cfcb ld a, [hl] push af @@ -100130,60 +51360,13 @@ Func_70e92: ; 70e92 (1c:4e92) ld [wWhichTrade], a ; $cd3d jp Func_70e7e -TownMapOrder: ; 70f11 (1c:4f11) - db PALLET_TOWN - db ROUTE_1 - db VIRIDIAN_CITY - db ROUTE_2 - db VIRIDIAN_FOREST - db DIGLETTS_CAVE - db PEWTER_CITY - db ROUTE_3 - db MT_MOON_1 - db ROUTE_4 - db CERULEAN_CITY - db ROUTE_24 - db ROUTE_25 - db BILLS_HOUSE - db ROUTE_5 - db ROUTE_6 - db VERMILION_CITY - db SS_ANNE_1 - db ROUTE_9 - db ROCK_TUNNEL_POKECENTER - db ROUTE_10 - db LAVENDER_TOWN - db POKEMONTOWER_2 - db ROUTE_8 - db ROUTE_7 - db CELADON_CITY - db SAFFRON_CITY - db ROUTE_11 - db ROUTE_12 - db ROUTE_13 - db ROUTE_14 - db ROUTE_15 - db ROUTE_16 - db ROUTE_17 - db ROUTE_18 - db FUCHSIA_CITY - db SAFARI_ZONE_EAST - db ROUTE_19 - db SEAFOAM_ISLANDS_2 - db ROUTE_20 - db CINNABAR_ISLAND - db ROUTE_21 - db ROUTE_22 - db ROUTE_23 - db VICTORY_ROAD_3 - db INDIGO_PLATEAU - db POWER_PLANT +INCLUDE "data/town_map_order.asm" TownMapCursor: ; 70f40 (1c:4f40) INCBIN "gfx/town_map_cursor.1bpp" -Func_70f60: ; 70f60 (1c:4f60) - call Func_7109b +LoadTownMap_Nest: ; 70f60 (1c:4f60) + call LoadTownMap ld hl, $cfcb ld a, [hl] push af @@ -100196,7 +51379,7 @@ Func_70f60: ; 70f60 (1c:4f60) call PlaceString ld h, b ld l, c - ld de, MonsNestText ; $4f89 + ld de, MonsNestText call PlaceString call WaitForTextScrollButtonPress call Func_711ab @@ -100208,9 +51391,9 @@ Func_70f60: ; 70f60 (1c:4f60) MonsNestText: ; 70f89 (1c:4f89) db "'s NEST@" -Func_70f90: ; 70f90 (1c:4f90) +LoadTownMap_Fly: ; 70f90 (1c:4f90) call CleanLCD_OAM - call Func_7109b + call LoadTownMap call LoadPlayerSpriteGraphics call LoadFontTilePatterns ld de, BirdSprite ; $4d80 @@ -100228,7 +51411,7 @@ Func_70f90: ; 70f90 (1c:4f90) ld [hl], $ff push hl ld hl, wTileMap - ld de, ToText ; $506d + ld de, ToText call PlaceString ld a, [W_CURMAP] ; $d35e ld b, $0 @@ -100237,7 +51420,7 @@ Func_70f90: ; 70f90 (1c:4f90) FuncCoord 18, 0 ; $c3b2 ld de, Coord -Func_70fd6: ; 70fd6 (1c:4fd6) +.townMapFlyLoop ld a, $7f ld [de], a push hl @@ -100307,10 +51490,10 @@ Func_70fd6: ; 70fd6 (1c:4fd6) jr z, .asm_71052 cp $fe jr z, .asm_71042 - jp Func_70fd6 + jp .townMapFlyLoop .asm_71052 ld hl, $cd3e - jp Func_70fd6 + jp .townMapFlyLoop .asm_71058 FuncCoord 19, 0 ; $c3b3 ld de, Coord @@ -100320,7 +51503,7 @@ Func_70fd6: ; 70fd6 (1c:4fd6) jr z, .asm_71068 cp $fe jr z, .asm_71058 - jp Func_70fd6 + jp .townMapFlyLoop .asm_71068 ld hl, $cd49 jr .asm_71058 @@ -100355,7 +51538,7 @@ Func_71070: ; 71070 (1c:5070) TownMapUpArrow: ; 71093 (1c:5093) INCBIN "gfx/up_arrow.1bpp" -Func_7109b: ; 7109b (1c:509b) +LoadTownMap: ; 7109b (1c:509b) call GBPalWhiteOutWithDelay3 call ClearScreen call UpdateSprites @@ -100480,7 +51663,7 @@ Func_711ef: ; 711ef (1c:51ef) call TextBoxBorder FuncCoord 2, 9 ; $c456 ld hl, Coord - ld de, AreaUnknownText ; $524a + ld de, AreaUnknownText call PlaceString jr .asm_7123e .asm_71236 @@ -100646,215 +51829,9 @@ Func_712f1: ; 712f1 (1c:52f1) ld l, a ret -ExternalMapEntries: ; 71313 (1c:5313) - EMAP $2,$B,PalletTownName - EMAP $2,$8,ViridianCityName - EMAP $2,$3,PewterCityName - EMAP $A,$2,CeruleanCityName - EMAP $E,$5,LavenderTownName - EMAP $A,$9,VermilionCityName - EMAP $7,$5,CeladonCityName - EMAP $8,$D,FuchsiaCityName - EMAP $2,$F,CinnabarIslandName - EMAP $0,$2,IndigoPlateauName - EMAP $A,$5,SaffronCityName - EMAP $0,$0,PalletTownName ; unused - EMAP $2,$A,Route1Name - EMAP $2,$6,Route2Name - EMAP $4,$3,Route3Name - EMAP $8,$2,Route4Name - EMAP $A,$3,Route5Name - EMAP $A,$8,Route6Name - EMAP $8,$5,Route7Name - EMAP $D,$5,Route8Name - EMAP $D,$2,Route9Name - EMAP $E,$4,Route10Name - EMAP $C,$9,Route11Name - EMAP $E,$9,Route12Name - EMAP $D,$B,Route13Name - EMAP $B,$C,Route14Name - EMAP $A,$D,Route15Name - EMAP $5,$5,Route16Name - EMAP $4,$8,Route17Name - EMAP $6,$D,Route18Name - EMAP $6,$F,Route19Name - EMAP $4,$F,Route20Name - EMAP $2,$D,Route21Name - EMAP $0,$8,Route22Name - EMAP $0,$6,Route23Name - EMAP $A,$1,Route24Name - EMAP $B,$0,Route25Name - -InternalMapEntries: ; 71382 (1c:5382) - IMAP $29,$2,$B,PalletTownName - IMAP $2E,$2,$8,ViridianCityName - IMAP $33,$2,$6,Route2Name - IMAP $34,$2,$4,ViridianForestName - IMAP $3B,$2,$3,PewterCityName - IMAP $3E,$6,$2,MountMoonName - IMAP $44,$A,$2,CeruleanCityName - IMAP $45,$5,$2,Route4Name - IMAP $46,$A,$2,CeruleanCityName - IMAP $49,$A,$4,Route5Name - IMAP $4C,$A,$6,Route6Name - IMAP $4F,$9,$5,Route7Name - IMAP $51,$B,$5,Route8Name - IMAP $53,$E,$3,RockTunnelName - IMAP $54,$F,$4,PowerPlantName - IMAP $57,$D,$9,Route11Name - IMAP $58,$E,$7,Route12Name - IMAP $59,$C,$0,SeaCottageName - IMAP $5F,$A,$9,VermilionCityName - IMAP $69,$9,$A,SSAnneName - IMAP $6D,$0,$4,VictoryRoadName - IMAP $77,$0,$2,PokemonLeagueName - IMAP $78,$A,$5,UndergroundPathName - IMAP $79,$0,$2,PokemonLeagueName - IMAP $7A,$A,$5,UndergroundPathName - IMAP $8D,$7,$5,CeladonCityName - IMAP $8E,$E,$5,LavenderTownName - IMAP $95,$F,$5,PokemonTowerName - IMAP $98,$E,$5,LavenderTownName - IMAP $9C,$8,$D,FuchsiaCityName - IMAP $9D,$8,$C,SafariZoneName - IMAP $9F,$8,$D,FuchsiaCityName - IMAP $A3,$5,$F,SeafoamIslandsName - IMAP $A4,$A,$9,VermilionCityName - IMAP $A5,$8,$D,FuchsiaCityName - IMAP $A6,$2,$F,PokemonMansionName - IMAP $AE,$2,$F,CinnabarIslandName - IMAP $AF,$0,$2,IndigoPlateauName - IMAP $B8,$A,$5,SaffronCityName - IMAP $BA,$9,$D,Route15Name - IMAP $BD,$4,$5,Route16Name - IMAP $BE,$E,$A,Route12Name - IMAP $C0,$7,$D,Route18Name - IMAP $C1,$5,$F,SeafoamIslandsName - IMAP $C2,$0,$7,Route22Name - IMAP $C3,$0,$4,VictoryRoadName - IMAP $C4,$E,$7,Route12Name - IMAP $C5,$A,$9,VermilionCityName - IMAP $C6,$3,$4,DiglettsCaveName - IMAP $C7,$0,$4,VictoryRoadName - IMAP $CF,$7,$5,RocketHQName - IMAP $D6,$A,$5,SilphCoName - IMAP $D9,$2,$F,PokemonMansionName - IMAP $E2,$8,$C,SafariZoneName - IMAP $E5,$9,$1,CeruleanCaveName - IMAP $E6,$E,$5,LavenderTownName - IMAP $E7,$A,$2,CeruleanCityName - IMAP $E9,$E,$3,RockTunnelName - IMAP $ED,$A,$5,SilphCoName - IMAP $F8,$0,$2,PokemonLeagueName - db $FF +INCLUDE "data/town_map_entries.asm" -MapNames: ; 71473 (1c:5473) -PalletTownName: ; 71473 (1c:5473) - db "PALLET TOWN@" -ViridianCityName: ; 7147f (1c:547f) - db "VIRIDIAN CITY@" -PewterCityName: ; 7148d (1c:548d) - db "PEWTER CITY@" -CeruleanCityName: ; 71499 (1c:5499) - db "CERULEAN CITY@" -LavenderTownName: ; 714a7 (1c:54a7) - db "LAVENDER TOWN@" -VermilionCityName: ; 714b5 (1c:54b5) - db "VERMILION CITY@" -CeladonCityName: ; 714c4 (1c:54c4) - db "CELADON CITY@" -FuchsiaCityName: ; 714d1 (1c:54d1) - db "FUCHSIA CITY@" -CinnabarIslandName: ; 714de (1c:54de) - db "CINNABAR ISLAND@" -IndigoPlateauName: ; 714ee (1c:54ee) - db "INDIGO PLATEAU@" -SaffronCityName: ; 714fd (1c:54fd) - db "SAFFRON CITY@" -Route1Name: ; 7150a (1c:550a) - db "ROUTE 1@" -Route2Name: ; 71512 (1c:5512) - db "ROUTE 2@" -Route3Name: ; 7151a (1c:551a) - db "ROUTE 3@" -Route4Name: ; 71522 (1c:5522) - db "ROUTE 4@" -Route5Name: ; 7152a (1c:552a) - db "ROUTE 5@" -Route6Name: ; 71532 (1c:5532) - db "ROUTE 6@" -Route7Name: ; 7153a (1c:553a) - db "ROUTE 7@" -Route8Name: ; 71542 (1c:5542) - db "ROUTE 8@" -Route9Name: ; 7154a (1c:554a) - db "ROUTE 9@" -Route10Name: ; 71552 (1c:5552) - db "ROUTE 10@" -Route11Name: ; 7155b (1c:555b) - db "ROUTE 11@" -Route12Name: ; 71564 (1c:5564) - db "ROUTE 12@" -Route13Name: ; 7156d (1c:556d) - db "ROUTE 13@" -Route14Name: ; 71576 (1c:5576) - db "ROUTE 14@" -Route15Name: ; 7157f (1c:557f) - db "ROUTE 15@" -Route16Name: ; 71588 (1c:5588) - db "ROUTE 16@" -Route17Name: ; 71591 (1c:5591) - db "ROUTE 17@" -Route18Name: ; 7159a (1c:559a) - db "ROUTE 18@" -Route19Name: ; 715a3 (1c:55a3) - db "SEA ROUTE 19@" -Route20Name: ; 715b0 (1c:55b0) - db "SEA ROUTE 20@" -Route21Name: ; 715bd (1c:55bd) - db "SEA ROUTE 21@" -Route22Name: ; 715ca (1c:55ca) - db "ROUTE 22@" -Route23Name: ; 715d3 (1c:55d3) - db "ROUTE 23@" -Route24Name: ; 715dc (1c:55dc) - db "ROUTE 24@" -Route25Name: ; 715e5 (1c:55e5) - db "ROUTE 25@" -ViridianForestName: ; 715ee (1c:55ee) - db "VIRIDIAN FOREST@" -MountMoonName: ; 715fe (1c:55fe) - db "MT.MOON@" -RockTunnelName: ; 71606 (1c:5606) - db "ROCK TUNNEL@" -SeaCottageName: ; 71612 (1c:5612) - db "SEA COTTAGE@" -SSAnneName: ; 7161e (1c:561e) - db "S.S.ANNE@" -PokemonLeagueName: ; 71627 (1c:5627) - db "#MON LEAGUE@" -UndergroundPathName: ; 71633 (1c:5633) - db "UNDERGROUND PATH@" -PokemonTowerName: ; 71644 (1c:5644) - db "#MON TOWER@" -SeafoamIslandsName: ; 7164f (1c:564f) - db "SEAFOAM ISLANDS@" -VictoryRoadName: ; 7165f (1c:565f) - db "VICTORY ROAD@" -DiglettsCaveName: ; 7166c (1c:566c) - db "DIGLETT's CAVE@" -RocketHQName: ; 7167a (1c:567a) - db "ROCKET HQ@" -SilphCoName: ; 71684 (1c:5684) - db "SILPH CO.@" -PokemonMansionName: ; 7168e (1c:568e) - db $4a," MANSION@" -SafariZoneName: ; 71698 (1c:5698) - db "SAFARI ZONE@" -CeruleanCaveName: ; 716a4 (1c:56a4) - db "CERULEAN CAVE@" -PowerPlantName: ; 716b2 (1c:56b2) - db "POWER PLANT@" +INCLUDE "text/map_names.asm" MonNestIcon: ; 716be (1c:56be) INCBIN "gfx/mon_nest_icon.1bpp" @@ -100886,23 +51863,28 @@ Func_716c6: ; 716c6 (1c:56c6) ld [W_SUBANIMTRANSFORM], a ; $d08b jp DelayFrame -Func_716f7: ; 716f7 (1c:56f7) +AnimatePartyMon_ForceSpeed1: ; 716f7 (1c:56f7) xor a ld [wCurrentMenuItem], a ; $cc26 ld b, a inc a - jr asm_7170a + jr GetAnimationSpeed -Func_716ff: ; 716ff (1c:56ff) +; $cf1f contains the party mon's health bar colors +; 0: green +; 1: yellow +; 2: red +AnimatePartyMon: ; 716ff (1c:56ff) ld hl, $cf1f - ld a, [wCurrentMenuItem] ; $cc26 + ld a, [wCurrentMenuItem] ld c, a ld b, $0 add hl, bc ld a, [hl] -asm_7170a: ; 7170a (1c:570a) + +GetAnimationSpeed: ; 7170a (1c:570a) ld c, a - ld hl, DataTable_71769 ; $5769 + ld hl, PartyMonSpeeds add hl, bc ld a, [$cf1b] xor $1 @@ -100912,18 +51894,18 @@ asm_7170a: ; 7170a (1c:570a) ld b, a ld a, [W_SUBANIMTRANSFORM] ; $d08b and a - jr z, .asm_7172c + jr z, .resetSprites cp c - jr z, .asm_7173d -.asm_71721 + jr z, .animateSprite +.incTimer inc a cp b - jr nz, .asm_71726 + jr nz, .resetTimer xor a -.asm_71726 +.resetTimer ld [W_SUBANIMTRANSFORM], a ; $d08b jp DelayFrame -.asm_7172c +.resetSprites push bc ld hl, $cc5b ld de, wOAMBuffer @@ -100931,38 +51913,40 @@ asm_7170a: ; 7170a (1c:570a) call CopyData pop bc xor a - jr .asm_71721 -.asm_7173d + jr .incTimer +.animateSprite push bc - ld hl, $c302 + ld hl, $c302 ; OAM tile id ld bc, $10 - ld a, [wCurrentMenuItem] ; $cc26 + ld a, [wCurrentMenuItem] call AddNTimes - ld c, $40 - ld a, [hl] - cp $4 - jr z, .asm_71755 - cp $8 - jr nz, .asm_71759 -.asm_71755 - dec hl + ld c, $40 ; amount to increase the tile id by + ld a, [hl] + cp $4 ; tile ID for SPRITE_BALL_M + jr z, .editCoords + cp $8 ; tile ID for SPRITE_HELIX + jr nz, .editTileIDS +; SPRITE_BALL_M and SPRITE_HELIX only shake up and down +.editCoords dec hl - ld c, $1 -.asm_71759 + dec hl ; dec hl to the OAM y coord + ld c, $1 ; amount to increase the y coord by +; otherwise, load a second sprite frame +.editTileIDS ld b, $4 ld de, $4 -.asm_7175e +.loop ld a, [hl] add c ld [hl], a add hl, de dec b - jr nz, .asm_7175e + jr nz, .loop pop bc ld a, c - jr .asm_71721 + jr .incTimer -DataTable_71769: ; 71769 (1c:5769) +PartyMonSpeeds: ; 71769 (1c:5769) db $05,$10,$20 Func_7176c: ; 7176c (1c:576c) @@ -101184,7 +52168,7 @@ Func_71868: ; 71868 (1c:5868) ld d, $0 add hl, de ld a, [hl] - call Func_718e9 + call GetPartyMonSpriteID ld [$cd5b], a call Func_718c3 pop bc @@ -101196,13 +52180,13 @@ Func_71882: ; 71882 (1c:5882) xor a ld [H_DOWNARROWBLINKCNT2], a ; $ff8c ld a, [$cd5d] - call Func_718e9 + call GetPartyMonSpriteID ld [$cd5b], a jr Func_718c3 Func_71890: ; 71890 (1c:5890) ld a, [$cf91] - call Func_718e9 + call GetPartyMonSpriteID push af ld hl, $8000 call Func_718ac @@ -101256,7 +52240,7 @@ Func_718c3: ; 718c3 (1c:58c3) ld bc, $60 jp CopyData -Func_718e9: ; 718e9 (1c:58e9) +GetPartyMonSpriteID: ; 718e9 (1c:58e9) ld [$d11e], a ld a, $3a call Predef ; indirect jump to IndexToPokedex (41010 (10:5010)) @@ -101278,83 +52262,7 @@ Func_718e9: ; 718e9 (1c:58e9) srl a ret -MonOverworldData: ; 7190d (1c:590d) - dn SPRITE_GRASS, SPRITE_GRASS ;Bulbasaur/Ivysaur - dn SPRITE_GRASS, SPRITE_MON ;Venusaur/Charmander - dn SPRITE_MON, SPRITE_MON ;Charmeleon/Charizard - dn SPRITE_WATER, SPRITE_WATER ;Squirtle/Wartortle - dn SPRITE_WATER, SPRITE_BUG ;Blastoise/Caterpie - dn SPRITE_BUG, SPRITE_BUG ;Metapod/Butterfree - dn SPRITE_BUG, SPRITE_BUG ;Weedle/Kakuna - dn SPRITE_BUG, SPRITE_BIRD_M ;Beedrill/Pidgey - dn SPRITE_BIRD_M, SPRITE_BIRD_M ;Pidgeotto/Pidgeot - dn SPRITE_QUADRUPED, SPRITE_QUADRUPED ;Rattata/Raticate - dn SPRITE_BIRD_M, SPRITE_BIRD_M ;Spearow/Fearow - dn SPRITE_SNAKE, SPRITE_SNAKE ;Ekans/Arbok - dn SPRITE_FAIRY, SPRITE_FAIRY ;Pikachu/Raichu - dn SPRITE_MON, SPRITE_MON ;Sandshrew/Sandslash - dn SPRITE_MON, SPRITE_MON ;Nidoran?/Nidorina - dn SPRITE_MON, SPRITE_MON ;Nidoqueen/Nidoran? - dn SPRITE_MON, SPRITE_MON ;Nidorino/Nidoking - dn SPRITE_FAIRY, SPRITE_FAIRY ;Clefairy/Clefable - dn SPRITE_QUADRUPED, SPRITE_QUADRUPED ;Vulpix/Ninetales - dn SPRITE_FAIRY, SPRITE_FAIRY ;Jigglypuff/Wigglytuff - dn SPRITE_MON, SPRITE_MON ;Zubat/Golbat - dn SPRITE_GRASS, SPRITE_GRASS ;Oddish/Gloom - dn SPRITE_GRASS, SPRITE_BUG ;Vileplume/Paras - dn SPRITE_BUG, SPRITE_BUG ;Parasect/Venonat - dn SPRITE_BUG, SPRITE_MON ;Venomoth/Diglett - dn SPRITE_MON, SPRITE_MON ;Dugtrio/Meowth - dn SPRITE_MON, SPRITE_MON ;Persian/Psyduck - dn SPRITE_MON, SPRITE_MON ;Golduck/Mankey - dn SPRITE_MON, SPRITE_QUADRUPED ;Primeape/Growlithe - dn SPRITE_QUADRUPED, SPRITE_MON ;Arcanine/Poliwag - dn SPRITE_MON, SPRITE_MON ;Poliwhirl/Poliwrath - dn SPRITE_MON, SPRITE_MON ;Abra/Kadabra - dn SPRITE_MON, SPRITE_MON ;Alakazam/Machop - dn SPRITE_MON, SPRITE_MON ;Machoke/Machamp - dn SPRITE_GRASS, SPRITE_GRASS ;Bellsprout/Weepinbell - dn SPRITE_GRASS, SPRITE_WATER ;Victreebel/Tentacool - dn SPRITE_WATER, SPRITE_MON ;Tentacruel/Geodude - dn SPRITE_MON, SPRITE_MON ;Graveler/Golem - dn SPRITE_QUADRUPED, SPRITE_QUADRUPED ;Ponyta/Rapidash - dn SPRITE_QUADRUPED, SPRITE_MON ;Slowpoke/Slowbro - dn SPRITE_BALL_M, SPRITE_BALL_M ;Magnemite/Magneton - dn SPRITE_BIRD_M, SPRITE_BIRD_M ;Farfetch'd/Doduo - dn SPRITE_BIRD_M, SPRITE_WATER ;Dodrio/Seel - dn SPRITE_WATER, SPRITE_MON ;Dewgong/Grimer - dn SPRITE_MON, SPRITE_HELIX ;Muk/Shellder - dn SPRITE_HELIX, SPRITE_MON ;Cloyster/Gastly - dn SPRITE_MON, SPRITE_MON ;Haunter/Gengar - dn SPRITE_SNAKE, SPRITE_MON ;Onix/Drowzee - dn SPRITE_MON, SPRITE_WATER ;Hypno/Krabby - dn SPRITE_WATER, SPRITE_BALL_M ;Kingler/Voltorb - dn SPRITE_BALL_M, SPRITE_GRASS ;Electrode/Exeggcute - dn SPRITE_GRASS, SPRITE_MON ;Exeggutor/Cubone - dn SPRITE_MON, SPRITE_MON ;Marowak/Hitmonlee - dn SPRITE_MON, SPRITE_MON ;Hitmonchan/Lickitung - dn SPRITE_MON, SPRITE_MON ;Koffing/Weezing - dn SPRITE_QUADRUPED, SPRITE_MON ;Rhyhorn/Rhydon - dn SPRITE_FAIRY, SPRITE_GRASS ;Chansey/Tangela - dn SPRITE_MON, SPRITE_WATER ;Kangaskhan/Horsea - dn SPRITE_WATER, SPRITE_WATER ;Seadra/Goldeen - dn SPRITE_WATER, SPRITE_HELIX ;Seaking/Staryu - dn SPRITE_HELIX, SPRITE_MON ;Starmie/Mr.Mime - dn SPRITE_BUG, SPRITE_MON ;Scyther/Jynx - dn SPRITE_MON, SPRITE_MON ;Electabuzz/Magmar - dn SPRITE_BUG, SPRITE_QUADRUPED ;Pinsir/Tauros - dn SPRITE_WATER, SPRITE_SNAKE ;Magikarp/Gyarados - dn SPRITE_WATER, SPRITE_MON ;Lapras/Ditto - dn SPRITE_QUADRUPED, SPRITE_QUADRUPED ;Eevee/Vaporeon - dn SPRITE_QUADRUPED, SPRITE_QUADRUPED ;Jolteon/Flareon - dn SPRITE_MON, SPRITE_HELIX ;Porygon/Omanyte - dn SPRITE_HELIX, SPRITE_HELIX ;Omastar/Kabuto - dn SPRITE_HELIX, SPRITE_BIRD_M ;Kabutops/Aerodactyl - dn SPRITE_MON, SPRITE_BIRD_M ;Snorlax/Articuno - dn SPRITE_BIRD_M, SPRITE_BIRD_M ;Zapdos/Moltres - dn SPRITE_SNAKE, SPRITE_SNAKE ;Dratini/Dragonair - dn SPRITE_SNAKE, SPRITE_MON ;Dragonite/Mewtwo - dn SPRITE_MON, 0 ;Mew/Padding +INCLUDE "data/mon_party_sprites.asm" MonOverworldSprites: ; 71959 (1c:5959) INCBIN "gfx/mon_ow_sprites.2bpp" @@ -101418,7 +52326,7 @@ Predef54: ; 71ad9 (1c:5ad9) jr nz,.asm_99bca ; 0x71b4b $b call Func_71c07 jr c,.asm_99bca ; 0x71b50 $6 - ld hl, UnnamedText_71d8d + ld hl, TradedForText call PrintText .asm_99bca ; 0x71b58 ld hl,$cd12 @@ -101444,18 +52352,7 @@ Func_71b6a: ; 71b6a (1c:5b6a) ld bc,$b jp CopyData -TradeMons: ; 71b7b (1c:5b7b) -; givemonster, getmonster, textstring, nickname (11 bytes), 14 bytes total - db NIDORINO, NIDORINA, 0,"TERRY@@@@@@" - db ABRA, MR_MIME, 0,"MARCEL@@@@@" - db BUTTERFREE,BEEDRILL, 2,"CHIKUCHIKU@" - db PONYTA, SEEL, 0,"SAILOR@@@@@" - db SPEAROW, FARFETCH_D,2,"DUX@@@@@@@@" - db SLOWBRO, LICKITUNG, 0,"MARC@@@@@@@" - db POLIWHIRL, JYNX, 1,"LOLA@@@@@@@" - db RAICHU, ELECTRODE, 1,"DORIS@@@@@@" - db VENONAT, TANGELA, 2,"CRINKLES@@@" - db NIDORAN_M, NIDORAN_F, 2,"SPOT@@@@@@@" +INCLUDE "data/trades.asm" Func_71c07: ; 71c07 (1c:5c07) xor a @@ -101486,7 +52383,7 @@ Func_71c07: ; 71c07 (1c:5c07) ld b,$1 ld a,$10 call Predef - ld hl, UnnamedText_71d88 + ld hl, ConnectCableText call PrintText ld a,[wWhichPokemon] push af @@ -101612,92 +52509,92 @@ InGameTradeTextPointers: ; 71d64 (1c:5d64) dw TradeTextPointers3 TradeTextPointers1: ; 71d6a (1c:5d6a) - dw UnnamedText_71d94 - dw UnnamedText_71d99 - dw UnnamedText_71d9e - dw UnnamedText_71da3 - dw UnnamedText_71da8 + dw WannaTrade1Text + dw NoTrade1Text + dw WrongMon1Text + dw Thanks1Text + dw AfterTrade1Text TradeTextPointers2: ; 71d74 (1c:5d74) - dw UnnamedText_71dad - dw UnnamedText_71db2 - dw UnnamedText_71db7 - dw UnnamedText_71dbc - dw UnnamedText_71dc1 + dw WannaTrade2Text + dw NoTrade2Text + dw WrongMon2Text + dw Thanks2Text + dw AfterTrade2Text TradeTextPointers3: ; 71d7e (1c:5d7e) - dw UnnamedText_71dc6 - dw UnnamedText_71dcb - dw UnnamedText_71dd0 - dw UnnamedText_71dd5 - dw UnnamedText_71dda - -UnnamedText_71d88: ; 71d88 (1c:5d88) - TX_FAR _UnnamedText_71d88 + dw WannaTrade3Text + dw NoTrade3Text + dw WrongMon3Text + dw Thanks3Text + dw AfterTrade3Text + +ConnectCableText: ; 71d88 (1c:5d88) + TX_FAR _ConnectCableText db "@" -UnnamedText_71d8d: ; 71d8d (1c:5d8d) - TX_FAR _UnnamedText_71d8d ; 0xa80bc +TradedForText: ; 71d8d (1c:5d8d) + TX_FAR _TradedForText db $11, $a, "@" -UnnamedText_71d94: ; 71d94 (1c:5d94) - TX_FAR _UnnamedText_71d94 +WannaTrade1Text: ; 71d94 (1c:5d94) + TX_FAR _WannaTrade1Text db "@" -UnnamedText_71d99: ; 71d99 (1c:5d99) - TX_FAR _UnnamedText_71d99 +NoTrade1Text: ; 71d99 (1c:5d99) + TX_FAR _NoTrade1Text db "@" -UnnamedText_71d9e: ; 71d9e (1c:5d9e) - TX_FAR _UnnamedText_71d9e +WrongMon1Text: ; 71d9e (1c:5d9e) + TX_FAR _WrongMon1Text db "@" -UnnamedText_71da3: ; 71da3 (1c:5da3) - TX_FAR _UnnamedText_71da3 +Thanks1Text: ; 71da3 (1c:5da3) + TX_FAR _Thanks1Text db "@" -UnnamedText_71da8: ; 71da8 (1c:5da8) - TX_FAR _UnnamedText_71da8 +AfterTrade1Text: ; 71da8 (1c:5da8) + TX_FAR _AfterTrade1Text db "@" -UnnamedText_71dad: ; 71dad (1c:5dad) - TX_FAR _UnnamedText_71dad +WannaTrade2Text: ; 71dad (1c:5dad) + TX_FAR _WannaTrade2Text db "@" -UnnamedText_71db2: ; 71db2 (1c:5db2) - TX_FAR _UnnamedText_71db2 +NoTrade2Text: ; 71db2 (1c:5db2) + TX_FAR _NoTrade2Text db "@" -UnnamedText_71db7: ; 71db7 (1c:5db7) - TX_FAR _UnnamedText_71db7 +WrongMon2Text: ; 71db7 (1c:5db7) + TX_FAR _WrongMon2Text db "@" -UnnamedText_71dbc: ; 71dbc (1c:5dbc) - TX_FAR _UnnamedText_71dbc +Thanks2Text: ; 71dbc (1c:5dbc) + TX_FAR _Thanks2Text db "@" -UnnamedText_71dc1: ; 71dc1 (1c:5dc1) - TX_FAR _UnnamedText_71dc1 +AfterTrade2Text: ; 71dc1 (1c:5dc1) + TX_FAR _AfterTrade2Text db "@" -UnnamedText_71dc6: ; 71dc6 (1c:5dc6) - TX_FAR _UnnamedText_71dc6 +WannaTrade3Text: ; 71dc6 (1c:5dc6) + TX_FAR _WannaTrade3Text db "@" -UnnamedText_71dcb: ; 71dcb (1c:5dcb) - TX_FAR _UnnamedText_71dcb +NoTrade3Text: ; 71dcb (1c:5dcb) + TX_FAR _NoTrade3Text db "@" -UnnamedText_71dd0: ; 71dd0 (1c:5dd0) - TX_FAR _UnnamedText_71dd0 +WrongMon3Text: ; 71dd0 (1c:5dd0) + TX_FAR _WrongMon3Text db "@" -UnnamedText_71dd5: ; 71dd5 (1c:5dd5) - TX_FAR _UnnamedText_71dd5 +Thanks3Text: ; 71dd5 (1c:5dd5) + TX_FAR _Thanks3Text db "@" -UnnamedText_71dda: ; 71dda (1c:5dda) - TX_FAR _UnnamedText_71dda +AfterTrade3Text: ; 71dda (1c:5dda) + TX_FAR _AfterTrade3Text db "@" Func_71ddf: ; 71ddf (1c:5ddf) @@ -101721,13 +52618,14 @@ Func_71ddf: ; 71ddf (1c:5ddf) push de jp [hl] -Func_71dff: ; 71dff (1c:5dff) - ld hl, PalPacket_72448 - ld de, BlkPacket_721b5 +SendPalPacket_Black: ; 71dff (1c:5dff) + ld hl, PalPacket_Black + ld de, BlkPacket_Battle ret -Func_71e06: ; 71e06 (1c:5e06) - ld hl, PalPacket_72428 +; uses PalPacket_Empty to build a packet based on mon IDs and health color +BuildBattlePalPacket: ; 71e06 (1c:5e06) + ld hl, PalPacket_Empty ld de, $cf2d ld bc, $10 call CopyData @@ -101741,11 +52639,11 @@ Func_71e06: ; 71e06 (1c:5e06) ld c, a ld hl, $cf2e ld a, [$cf1d] - add $1f + add PAL_GREENBAR ld [hli], a inc hl ld a, [$cf1e] - add $1f + add PAL_GREENBAR ld [hli], a inc hl ld a, b @@ -101754,18 +52652,19 @@ Func_71e06: ; 71e06 (1c:5e06) ld a, c ld [hl], a ld hl, $cf2d - ld de, BlkPacket_721b5 + ld de, BlkPacket_Battle ld a, $1 ld [$cf1c], a ret -Func_71e48: ; 71e48 (1c:5e48) - ld hl, PalPacket_72458 - ld de, BlkPacket_7219e +SendPalPacket_TownMap: ; 71e48 (1c:5e48) + ld hl, PalPacket_TownMap + ld de, BlkPacket_WholeScreen ret -Func_71e4f: ; 71e4f (1c:5e4f) - ld hl, PalPacket_72428 +; uses PalPacket_Empty to build a packet based the mon ID +BuildStatusScreenPalPacket: ; 71e4f (1c:5e4f) + ld hl, PalPacket_Empty ld de, $cf2d ld bc, $10 call CopyData @@ -101774,7 +52673,7 @@ Func_71e4f: ; 71e4f (1c:5e4f) jr c, .pokemon ld a, $1 ; not pokemon .pokemon - call DeterminePaletteIDOoutOfBattle + call DeterminePaletteIDOutOfBattle push af ld hl, $cf2e ld a, [$cf25] @@ -101784,56 +52683,58 @@ Func_71e4f: ; 71e4f (1c:5e4f) pop af ld [hl], a ld hl, $cf2d - ld de, BlkPacket_721fa + ld de, BlkPacket_StatusScreen ret -Func_71e7b: ; 71e7b (1c:5e7b) - ld hl, PalPacket_72438 +SendPalPacket_PartyMenu: ; 71e7b (1c:5e7b) + ld hl, PalPacket_PartyMenu ld de, $cf2e ret -Func_71e82: ; 71e82 (1c:5e82) - ld hl, PalPacket_72468 +SendPalPacket_Pokedex: ; 71e82 (1c:5e82) + ld hl, PalPacket_Pokedex ld de, $cf2d ld bc, $10 call CopyData ld a, [$cf91] - call DeterminePaletteIDOoutOfBattle + call DeterminePaletteIDOutOfBattle ld hl, $cf30 ld [hl], a ld hl, $cf2d - ld de, BlkPacket_72222 + ld de, BlkPacket_Pokedex ret -Func_71e9f: ; 71e9f (1c:5e9f) - ld hl, PalPacket_72478 - ld de, BlkPacket_7224f +SendPalPacket_Slots: ; 71e9f (1c:5e9f) + ld hl, PalPacket_Slots + ld de, BlkPacket_Slots ret -Func_71ea6: ; 71ea6 (1c:5ea6) - ld hl, PalPacket_72488 - ld de, BlkPacket_7228e +SendPalPacket_Titlescreen: ; 71ea6 (1c:5ea6) + ld hl, PalPacket_Titlescreen + ld de, BlkPacket_Titlescreen ret -Func_71ead: ; 71ead (1c:5ead) - ld hl, PalPacket_724a8 - ld de, BlkPacket_7219e +; used mostly for menus and the Oak intro +SendPalPacket_Generic: ; 71ead (1c:5ead) + ld hl, PalPacket_Generic + ld de, BlkPacket_WholeScreen ret -Func_71eb4: ; 71eb4 (1c:5eb4) - ld hl, PalPacket_724b8 - ld de, BlkPacket_722c1 +SendPalPacket_NidorinoIntro: ; 71eb4 (1c:5eb4) + ld hl, PalPacket_NidorinoIntro + ld de, BlkPacket_NidorinoIntro ret -Func_71ebb: ; 71ebb (1c:5ebb) - ld hl, PalPacket_724c8 - ld de, BlkPacket_723dd +SendPalPacket_GameFreakIntro: ; 71ebb (1c:5ebb) + ld hl, PalPacket_GameFreakIntro + ld de, BlkPacket_GameFreakIntro ld a, $8 ld [$cf1c], a ret -GetMapPaletteID: ; 71ec7 (1c:5ec7) - ld hl, PalPacket_72428 +; uses PalPacket_Empty to build a packet based on the current map +BuildOverworldPalPacket: ; 71ec7 (1c:5ec7) + ld hl, PalPacket_Empty ld de, $cf2d ld bc, $10 call CopyData @@ -101863,7 +52764,7 @@ GetMapPaletteID: ; 71ec7 (1c:5ec7) inc a ; a town's pallete ID is its map ID + 1 ld hl, $cf2e ld [hld], a - ld de, BlkPacket_7219e + ld de, BlkPacket_WholeScreen ld a, $9 ld [$cf1c], a ret @@ -101877,9 +52778,11 @@ GetMapPaletteID: ; 71ec7 (1c:5ec7) xor a jr .town -Func_71f17: ; 71f17 (1c:5f17) +; used when a Pokemon is the only thing on the screen +; such as evolution, trading and the Hall of Fame +SendPokemonPalette_WholeScreen: ; 71f17 (1c:5f17) push bc - ld hl, PalPacket_72428 + ld hl, PalPacket_Empty ld de, $cf2d ld bc, $10 call CopyData @@ -101889,15 +52792,15 @@ Func_71f17: ; 71f17 (1c:5f17) ld a, $1e jr nz, .asm_71f31 ld a, [$cf1d] - call DeterminePaletteIDOoutOfBattle + call DeterminePaletteIDOutOfBattle .asm_71f31 ld [$cf2e], a ld hl, $cf2d - ld de, BlkPacket_7219e + ld de, BlkPacket_WholeScreen ret -LoadTrainerCardBadgePalettes: ; 71f3b (1c:5f3b) - ld hl, BlkPacket_72360 +BuildTrainerCardPalPacket: ; 71f3b (1c:5f3b) + ld hl, BlkPacket_TrainerCard ld de, $cc5b ld bc, $40 call CopyData @@ -101930,25 +52833,25 @@ LoadTrainerCardBadgePalettes: ; 71f3b (1c:5f3b) inc de dec c jr nz, .asm_71f52 - ld hl, PalPacket_72498 + ld hl, PalPacket_TrainerCard ld de, $cc5b ret PointerTable_71f73: ; 71f73 (1c:5f73) - dw Func_71dff - dw Func_71e06 - dw Func_71e48 - dw Func_71e4f - dw Func_71e82 - dw Func_71e9f - dw Func_71ea6 - dw Func_71eb4 - dw Func_71ead - dw GetMapPaletteID - dw Func_71e7b - dw Func_71f17 - dw Func_71ebb - dw LoadTrainerCardBadgePalettes + dw SendPalPacket_Black + dw BuildBattlePalPacket + dw SendPalPacket_TownMap + dw BuildStatusScreenPalPacket + dw SendPalPacket_Pokedex + dw SendPalPacket_Slots + dw SendPalPacket_Titlescreen + dw SendPalPacket_NidorinoIntro + dw SendPalPacket_Generic + dw BuildOverworldPalPacket + dw SendPalPacket_PartyMenu + dw SendPokemonPalette_WholeScreen + dw SendPalPacket_GameFreakIntro + dw BuildTrainerCardPalPacket ; each byte is the number of loops to make in .asm_71f5b for each badge LoopCounts_71f8f: ; 71f8f (1c:5f8f) @@ -101959,7 +52862,7 @@ DeterminePaletteID: ; 71f97 (1c:5f97) ld a, PAL_GREYMON ; if yes, use Ditto's palette ret nz ld a, [hl] -DeterminePaletteIDOoutOfBattle: ; 71f9d (1c:5f9d) +DeterminePaletteIDOutOfBattle: ; 71f9d (1c:5f9d) ld [$D11E], a and a jr z, .idZero @@ -101976,8 +52879,8 @@ DeterminePaletteIDOoutOfBattle: ; 71f9d (1c:5f9d) ld a, [hl] ret -Func_71fb6: ; 71fb6 (1c:5fb6) - ld hl, BlkPacket_722f4 ; $62f4 +SendBlkPacket_PartyMenu: ; 71fb6 (1c:5fb6) + ld hl, BlkPacket_PartyMenu ; $62f4 ld de, $cf2e ld bc, $30 jp CopyData @@ -102075,7 +52978,7 @@ SendSGBPacket: ; 71feb (1c:5feb) ; else send 16 more bytes jr .loop2 -Func_7202b: ; 7202b (1c:602b) +LoadSGBBorderAndPalettes: ; 7202b (1c:602b) xor a ld [$cf1b], a call Func_7209b @@ -102307,540 +53210,13 @@ Func_72188: ; 72188 (1c:6188) jr nz, .asm_7218a ret -BlkPacket_7219e: ; 7219e (1c:619e) - db $21,$01,$03,$00,$00,$00,$13,$11,$00,$00,$00,$00,$00,$00,$00,$00 - db $03,$00,$00,$13,$11,$00,$00 - -BlkPacket_721b5: ; 721b5 (1c:61b5) - db $22,$05,$07,$0a,$00,$0c,$13,$11,$03,$05,$01,$00,$0a,$03,$03,$00 - db $0a,$07,$13,$0a,$03,$0a,$00,$04,$08,$0b,$03,$0f,$0b,$00,$13,$06 - db $03,$00,$00,$13,$0b,$00,$03,$00,$0c,$13,$11,$02,$03,$01,$00,$0a - db $03,$01,$03,$0a,$08,$13,$0a,$00,$03,$00,$04,$08,$0b,$02,$03,$0b - db $00,$13,$07,$03,$00 - -BlkPacket_721fa: ; 721fa (1c:61fa) - db $21,$01,$07,$05,$01,$00,$07,$06,$00,$00,$00,$00,$00,$00,$00,$00 - db $02,$00,$00,$11,$00,$03,$01,$00,$07,$06,$01,$03,$01,$07,$13,$11 - db $00,$03,$08,$00,$13,$06,$00,$00 - -BlkPacket_72222: ; 72222 (1c:6222) - db $21,$01,$07,$05,$01,$01,$08,$08,$00,$00,$00,$00,$00,$00,$00,$00 - db $02,$00,$00,$11,$00,$01,$00,$01,$13,$00,$03,$01,$01,$08,$08,$01 - db $03,$01,$09,$08,$11,$00,$03,$09,$01,$13,$11,$00,$00 +INCLUDE "data/sgb_packets.asm" -BlkPacket_7224f: ; 7224f (1c:624f) - db $22,$05,$03,$05,$00,$00,$13,$0b,$03,$0a,$00,$04,$13,$09,$02,$0f - db $00,$06,$13,$07,$03,$00,$04,$04,$0f,$09,$03,$00,$00,$0c,$13,$11 - db $03,$00,$00,$13,$0b,$01,$03,$00,$04,$13,$09,$02,$03,$00,$06,$13 - db $07,$03,$03,$04,$04,$0f,$09,$00,$03,$00,$0c,$13,$11,$00,$00 +INCLUDE "data/mon_palettes.asm" -BlkPacket_7228e: ; 7228e (1c:628e) - db $22,$03,$03,$00,$00,$00,$13,$07,$02,$05,$00,$08,$13,$09,$03,$0a - db $00,$0a,$13,$11,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 - db $03,$00,$00,$13,$07,$00,$03,$00,$08,$13,$09,$01,$03,$00,$0a,$13 - db $11,$02,$00 +INCLUDE "data/super_palettes.asm" -BlkPacket_722c1: ; 722c1 (1c:62c1) - db $22,$03,$03,$05,$00,$00,$13,$03,$03,$00,$00,$04,$13,$0d,$03,$05 - db $00,$0e,$13,$11,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 - db $03,$00,$00,$13,$03,$01,$03,$00,$04,$13,$0d,$00,$03,$00,$0e,$13 - db $11,$01,$00 - -BlkPacket_722f4: ; 722f4 (1c:62f4) - db $23,$07,$06,$10,$01,$00,$02,$0c,$02,$00,$05,$01,$0b,$01,$02,$00 - db $05,$03,$0b,$03,$02,$00,$05,$05,$0b,$05,$02,$00,$05,$07,$0b,$07 - db $02,$00,$05,$09,$0b,$09,$02,$00,$05,$0b,$0b,$0b,$00,$00,$00,$00 - db $02,$00,$00,$11,$01,$03,$01,$00,$02,$0c,$00,$03,$01,$0d,$02,$11 - db $01,$03,$03,$00,$13,$11,$01,$03,$0c,$00,$12,$01,$00,$03,$0c,$02 - db $12,$03,$00,$03,$0c,$04,$12,$05,$00,$03,$0c,$06,$12,$07,$00,$03 - db $0c,$08,$12,$09,$00,$03,$0c,$0a,$12,$0b,$00,$00 - -BlkPacket_72360: ; 72360 (1c:6360) - db $24,$0a,$02,$00,$03,$0c,$04,$0d,$02,$05,$07,$0c,$08,$0d,$02,$0f - db $0b,$0c,$0c,$0d,$02,$0a,$10,$0b,$11,$0c,$02,$05,$0e,$0d,$0f,$0e - db $02,$0f,$10,$0d,$11,$0e,$02,$0a,$03,$0f,$04,$10,$02,$0f,$07,$0f - db $08,$10,$02,$0a,$0b,$0f,$0c,$10,$02,$05,$0f,$0f,$10,$10,$00,$00 - db $03,$03,$0c,$04,$0d,$00,$03,$07,$0c,$08,$0d,$01,$03,$0b,$0c,$0c - db $0d,$03,$03,$10,$0b,$11,$0c,$02,$03,$0e,$0d,$0f,$0e,$01,$03,$10 - db $0d,$11,$0e,$03,$03,$03,$0f,$04,$10,$02,$03,$07,$0f,$08,$10,$03 - db $03,$0b,$0f,$0c,$10,$02,$03,$0f,$0f,$10,$10,$01,$00 - -BlkPacket_723dd: ; 723dd (1c:63dd) - db $22,$03,$07,$05,$05,$0b,$07,$0d,$02,$0a,$08,$0b,$09,$0d,$03,$0f - db $0c,$0b,$0e,$0d,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 - db $03,$00,$00,$13,$0a,$00,$03,$00,$0b,$04,$0d,$00,$03,$05,$0b,$07 - db $0d,$01,$03,$08,$0b,$13,$0d,$00,$03,$00,$0e,$13,$11,$00,$03,$08 - db $0b,$09,$0d,$02,$03,$0c,$0b,$0e,$0d,$03,$00 - -PalPacket_72428: ; 72428 (1c:6428) - db $51,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 - -PalPacket_72438: ; 72438 (1c:6438) - db $51,$10,$00,$1F,$00,$20,$00,$21,$00,$00,$00,$00,$00,$00,$00,$00 - -PalPacket_72448: ; 72448 (1c:6448) - db $51,$1E,$00,$1E,$00,$1E,$00,$1E,$00,$00,$00,$00,$00,$00,$00,$00 - -PalPacket_72458: ; 72458 (1c:6458) - db $51,$0C,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 - -PalPacket_72468: ; 72468 (1c:6468) - db $51,$15,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 - -PalPacket_72478: ; 72478 (1c:6478) - db $51,$1A,$00,$1B,$00,$1C,$00,$1D,$00,$00,$00,$00,$00,$00,$00,$00 - -PalPacket_72488: ; 72488 (1c:6488) - db $51,$0E,$00,$0D,$00,$10,$00,$14,$00,$00,$00,$00,$00,$00,$00,$00 - -PalPacket_72498: ; 72498 (1c:6498) - db $51,$10,$00,$22,$00,$12,$00,$18,$00,$00,$00,$00,$00,$00,$00,$00 - -PalPacket_724a8: ; 724a8 (1c:64a8) - db $51,$10,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 - -PalPacket_724b8: ; 724b8 (1c:64b8) - db $51,$14,$00,$1E,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 - -PalPacket_724c8: ; 724c8 (1c:64c8) - db $51,$24,$00,$12,$00,$02,$00,$11,$00,$00,$00,$00,$00,$00,$00,$00 - -PalPacket_724d8: ; 724d8 (1c:64d8) - db $59,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 - -PalPacket_724e8: ; 724e8 (1c:64e8) - db $89,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 - -PalPacket_724f8: ; 724f8 (1c:64f8) - db $89,$01,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 - -PalPacket_72508: ; 72508 (1c:6508) - db $99,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 - -PalPacket_72518: ; 72518 (1c:6518) - db $A1,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 - -PalPacket_72528: ; 72528 (1c:6528) - db $B9,$01,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 - -PalPacket_72538: ; 72538 (1c:6538) - db $B9,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 - -PalPacket_72548: ; 72548 (1c:6548) - db $79,$5D,$08,$00,$0B,$8C,$D0,$F4,$60,$00,$00,$00,$00,$00,$00,$00 - -PalPacket_72558: ; 72558 (1c:6558) - db $79,$52,$08,$00,$0B,$A9,$E7,$9F,$01,$C0,$7E,$E8,$E8,$E8,$E8,$E0 - -PalPacket_72568: ; 72568 (1c:6568) - db $79,$47,$08,$00,$0B,$C4,$D0,$16,$A5,$CB,$C9,$05,$D0,$10,$A2,$28 - -PalPacket_72578: ; 72578 (1c:6578) - db $79,$3C,$08,$00,$0B,$F0,$12,$A5,$C9,$C9,$C8,$D0,$1C,$A5,$CA,$C9 - -PalPacket_72588: ; 72588 (1c:6588) - db $79,$31,$08,$00,$0B,$0C,$A5,$CA,$C9,$7E,$D0,$06,$A5,$CB,$C9,$7E - -PalPacket_72598: ; 72598 (1c:6598) - db $79,$26,$08,$00,$0B,$39,$CD,$48,$0C,$D0,$34,$A5,$C9,$C9,$80,$D0 - -PalPacket_725a8: ; 725a8 (1c:65a8) - db $79,$1B,$08,$00,$0B,$EA,$EA,$EA,$EA,$EA,$A9,$01,$CD,$4F,$0C,$D0 - -PalPacket_725b8: ; 725b8 (1c:65b8) - db $79,$10,$08,$00,$0B,$4C,$20,$08,$EA,$EA,$EA,$EA,$EA,$60,$EA,$EA - -MonsterPalettes: ; 725c8 (1c:65c8) - db PAL_MEWMON ; MISSINGNO - db PAL_GREENMON ; BULBASAUR - db PAL_GREENMON ; IVYSAUR - db PAL_GREENMON ; VENUSAUR - db PAL_REDMON ; CHARMANDER - db PAL_REDMON ; CHARMELEON - db PAL_REDMON ; CHARIZARD - db PAL_CYANMON ; SQUIRTLE - db PAL_CYANMON ; WARTORTLE - db PAL_CYANMON ; BLASTOISE - db PAL_GREENMON ; CATERPIE - db PAL_GREENMON ; METAPOD - db PAL_CYANMON ; BUTTERFREE - db PAL_YELLOWMON ; WEEDLE - db PAL_YELLOWMON ; KAKUNA - db PAL_YELLOWMON ; BEEDRILL - db PAL_BROWNMON ; PIDGEY - db PAL_BROWNMON ; PIDGEOTTO - db PAL_BROWNMON ; PIDGEOT - db PAL_GREYMON ; RATTATA - db PAL_GREYMON ; RATICATE - db PAL_BROWNMON ; SPEAROW - db PAL_BROWNMON ; FEAROW - db PAL_PURPLEMON ; EKANS - db PAL_PURPLEMON ; ARBOK - db PAL_YELLOWMON ; PIKACHU - db PAL_YELLOWMON ; RAICHU - db PAL_BROWNMON ; SANDSHREW - db PAL_BROWNMON ; SANDSLASH - db PAL_BLUEMON ; NIDORAN_F - db PAL_BLUEMON ; NIDORINA - db PAL_BLUEMON ; NIDOQUEEN - db PAL_PURPLEMON ; NIDORAN_M - db PAL_PURPLEMON ; NIDORINO - db PAL_PURPLEMON ; NIDOKING - db PAL_PINKMON ; CLEFAIRY - db PAL_PINKMON ; CLEFABLE - db PAL_REDMON ; VULPIX - db PAL_YELLOWMON ; NINETALES - db PAL_PINKMON ; JIGGLYPUFF - db PAL_PINKMON ; WIGGLYTUFF - db PAL_BLUEMON ; ZUBAT - db PAL_BLUEMON ; GOLBAT - db PAL_GREENMON ; ODDISH - db PAL_REDMON ; GLOOM - db PAL_REDMON ; VILEPLUME - db PAL_REDMON ; PARAS - db PAL_REDMON ; PARASECT - db PAL_PURPLEMON ; VENONAT - db PAL_PURPLEMON ; VENOMOTH - db PAL_BROWNMON ; DIGLETT - db PAL_BROWNMON ; DUGTRIO - db PAL_YELLOWMON ; MEOWTH - db PAL_YELLOWMON ; PERSIAN - db PAL_YELLOWMON ; PSYDUCK - db PAL_CYANMON ; GOLDUCK - db PAL_BROWNMON ; MANKEY - db PAL_BROWNMON ; PRIMEAPE - db PAL_BROWNMON ; GROWLITHE - db PAL_REDMON ; ARCANINE - db PAL_BLUEMON ; POLIWAG - db PAL_BLUEMON ; POLIWHIRL - db PAL_BLUEMON ; POLIWRATH - db PAL_YELLOWMON ; ABRA - db PAL_YELLOWMON ; KADABRA - db PAL_YELLOWMON ; ALAKAZAM - db PAL_GREYMON ; MACHOP - db PAL_GREYMON ; MACHOKE - db PAL_GREYMON ; MACHAMP - db PAL_GREENMON ; BELLSPROUT - db PAL_GREENMON ; WEEPINBELL - db PAL_GREENMON ; VICTREEBEL - db PAL_CYANMON ; TENTACOOL - db PAL_CYANMON ; TENTACRUEL - db PAL_GREYMON ; GEODUDE - db PAL_GREYMON ; GRAVELER - db PAL_GREYMON ; GOLEM - db PAL_REDMON ; PONYTA - db PAL_REDMON ; RAPIDASH - db PAL_PINKMON ; SLOWPOKE - db PAL_PINKMON ; SLOWBRO - db PAL_GREYMON ; MAGNEMITE - db PAL_GREYMON ; MAGNETON - db PAL_BROWNMON ; FARFETCH_D - db PAL_BROWNMON ; DODUO - db PAL_BROWNMON ; DODRIO - db PAL_BLUEMON ; SEEL - db PAL_BLUEMON ; DEWGONG - db PAL_PURPLEMON ; GRIMER - db PAL_PURPLEMON ; MUK - db PAL_GREYMON ; SHELLDER - db PAL_GREYMON ; CLOYSTER - db PAL_PURPLEMON ; GASTLY - db PAL_PURPLEMON ; HAUNTER - db PAL_PURPLEMON ; GENGAR - db PAL_GREYMON ; ONIX - db PAL_YELLOWMON ; DROWZEE - db PAL_YELLOWMON ; HYPNO - db PAL_REDMON ; KRABBY - db PAL_REDMON ; KINGLER - db PAL_YELLOWMON ; VOLTORB - db PAL_YELLOWMON ; ELECTRODE - db PAL_PINKMON ; EXEGGCUTE - db PAL_GREENMON ; EXEGGUTOR - db PAL_GREYMON ; CUBONE - db PAL_GREYMON ; MAROWAK - db PAL_BROWNMON ; HITMONLEE - db PAL_BROWNMON ; HITMONCHAN - db PAL_PINKMON ; LICKITUNG - db PAL_PURPLEMON ; KOFFING - db PAL_PURPLEMON ; WEEZING - db PAL_GREYMON ; RHYHORN - db PAL_GREYMON ; RHYDON - db PAL_PINKMON ; CHANSEY - db PAL_BLUEMON ; TANGELA - db PAL_BROWNMON ; KANGASKHAN - db PAL_CYANMON ; HORSEA - db PAL_CYANMON ; SEADRA - db PAL_REDMON ; GOLDEEN - db PAL_REDMON ; SEAKING - db PAL_REDMON ; STARYU - db PAL_GREYMON ; STARMIE - db PAL_PINKMON ; MR_MIME - db PAL_GREENMON ; SCYTHER - db PAL_MEWMON ; JYNX - db PAL_YELLOWMON ; ELECTABUZZ - db PAL_REDMON ; MAGMAR - db PAL_BROWNMON ; PINSIR - db PAL_GREYMON ; TAUROS - db PAL_REDMON ; MAGIKARP - db PAL_BLUEMON ; GYARADOS - db PAL_CYANMON ; LAPRAS - db PAL_GREYMON ; DITTO - db PAL_GREYMON ; EEVEE - db PAL_CYANMON ; VAPOREON - db PAL_YELLOWMON ; JOLTEON - db PAL_REDMON ; FLAREON - db PAL_GREYMON ; PORYGON - db PAL_BLUEMON ; OMANYTE - db PAL_BLUEMON ; OMASTAR - db PAL_BROWNMON ; KABUTO - db PAL_BROWNMON ; KABUTOPS - db PAL_GREYMON ; AERODACTYL - db PAL_PINKMON ; SNORLAX - db PAL_BLUEMON ; ARTICUNO - db PAL_YELLOWMON ; ZAPDOS - db PAL_REDMON ; MOLTRES - db PAL_GREYMON ; DRATINI - db PAL_BLUEMON ; DRAGONAIR - db PAL_BROWNMON ; DRAGONITE - db PAL_MEWMON ; MEWTWO - db PAL_MEWMON ; MEW - -; palettes for overworlds, title screen, monsters -SuperPalettes: ; 72660 (1c:6660) - RGB 31,29,31 ; PAL_ROUTE - RGB 21,28,11 - RGB 20,26,31 - RGB 3,2,2 - RGB 31,29,31 ; PAL_PALLET - RGB 25,28,27 - RGB 20,26,31 - RGB 3,2,2 - RGB 31,29,31 ; PAL_VIRIDIAN - RGB 17,26,3 - RGB 20,26,31 - RGB 3,2,2 - RGB 31,29,31 ; PAL_PEWTER - RGB 23,25,16 - RGB 20,26,31 - RGB 3,2,2 - RGB 31,29,31 ; PAL_CERULEAN - RGB 17,20,30 - RGB 20,26,31 - RGB 3,2,2 - RGB 31,29,31 ; PAL_LAVENDER - RGB 27,20,27 - RGB 20,26,31 - RGB 3,2,2 - RGB 31,29,31 ; PAL_VERMILION - RGB 30,18,0 - RGB 20,26,31 - RGB 3,2,2 - RGB 31,29,31 ; PAL_CELADON - RGB 16,30,22 - RGB 20,26,31 - RGB 3,2,2 - RGB 31,29,31 ; PAL_FUCHSIA - RGB 31,15,22 - RGB 20,26,31 - RGB 3,2,2 - RGB 31,29,31 ; PAL_CINNABAR - RGB 26,10,6 - RGB 20,26,31 - RGB 3,2,2 - RGB 31,29,31 ; PAL_INDIGO - RGB 22,14,24 - RGB 20,26,31 - RGB 3,2,2 - RGB 31,29,31 ; PAL_SAFFRON - RGB 27,27,3 - RGB 20,26,31 - RGB 3,2,2 - RGB 31,29,31 ; PAL_TOWNMAP - RGB 20,26,31 - RGB 17,23,10 - RGB 3,2,2 -IF _RED - RGB 31,29,31 ; PAL_LOGO1 - RGB 30,30,17 - RGB 17,23,10 - RGB 21,0,4 -ENDC -IF _BLUE - RGB 31,29,31 ; PAL_LOGO1 - RGB 30,30,17 - RGB 21,0,4 - RGB 14,19,29 -ENDC - RGB 31,29,31 ; XXX - RGB 30,30,17 - RGB 18,18,24 - RGB 7,7,16 - RGB 31,29,31 ; PAL_LOGO2 - RGB 24,20,30 - RGB 11,20,30 - RGB 3,2,2 - RGB 31,29,31 ; PAL_MEWMON - RGB 30,22,17 - RGB 16,14,19 - RGB 3,2,2 - RGB 31,29,31 ; PAL_BLUEMON - RGB 18,20,27 - RGB 11,15,23 - RGB 3,2,2 - RGB 31,29,31 ; PAL_REDMON - RGB 31,20,10 - RGB 26,10,6 - RGB 3,2,2 - RGB 31,29,31 ; PAL_CYANMON - RGB 21,25,29 - RGB 14,19,25 - RGB 3,2,2 - RGB 31,29,31 ; PAL_PURPLEMON - RGB 27,22,24 - RGB 21,15,23 - RGB 3,2,2 - RGB 31,29,31 ; PAL_BROWNMON - RGB 28,20,15 - RGB 21,14,9 - RGB 3,2,2 - RGB 31,29,31 ; PAL_GREENMON - RGB 20,26,16 - RGB 9,20,11 - RGB 3,2,2 - RGB 31,29,31 ; PAL_PINKMON - RGB 30,22,24 - RGB 28,15,21 - RGB 3,2,2 - RGB 31,29,31 ; PAL_YELLOWMON - RGB 31,28,14 - RGB 26,20,0 - RGB 3,2,2 - RGB 31,29,31 ; PAL_GREYMON - RGB 26,21,22 - RGB 15,15,18 - RGB 3,2,2 - RGB 31,29,31 ; PAL_SLOTS1 - RGB 26,21,22 - RGB 27,20,6 - RGB 3,2,2 - RGB 31,29,31 ; PAL_SLOTS2 - RGB 31,31,17 -IF _RED - RGB 25,17,21 -ENDC -IF _BLUE - RGB 16,19,29 -ENDC - RGB 3,2,2 - RGB 31,29,31 ; PAL_SLOTS3 - RGB 22,31,16 -IF _RED - RGB 25,17,21 -ENDC -IF _BLUE - RGB 16,19,29 -ENDC - RGB 3,2,2 - RGB 31,29,31 ; PAL_SLOTS4 -IF _RED - RGB 16,19,29 - RGB 25,17,21 -ENDC -IF _BLUE - RGB 25,17,21 - RGB 16,19,29 -ENDC - RGB 3,2,2 - RGB 31,29,31 ; PAL_BLACK - RGB 7,7,7 - RGB 2,3,3 - RGB 3,2,2 - RGB 31,29,31 ; PAL_GREENBAR - RGB 30,26,15 - RGB 9,20,11 - RGB 3,2,2 - RGB 31,29,31 ; PAL_YELLOWBAR - RGB 30,26,15 - RGB 26,20,0 - RGB 3,2,2 - RGB 31,29,31 ; PAL_REDBAR - RGB 30,26,15 - RGB 26,10,6 - RGB 3,2,2 - RGB 31,29,31 ; PAL_BADGE - RGB 30,22,17 - RGB 11,15,23 - RGB 3,2,2 - RGB 31,29,31 ; PAL_CAVE - RGB 21,14,9 - RGB 18,24,22 - RGB 3,2,2 - RGB 31,29,31 ; XXX - RGB 31,28,14 - RGB 24,20,10 - RGB 3,2,2 - -BorderPalettes: ; 72788 (1c:6788) -IF _RED - INCBIN "gfx/red/sgbborder.map" -ENDC -IF _BLUE - INCBIN "gfx/blue/sgbborder.map" -ENDC - - ds $100 - -IF _RED - RGB 30,29,29 ; PAL_SGB1 - RGB 25,22,25 - RGB 25,17,21 - RGB 24,14,12 -ENDC -IF _BLUE - RGB 0,0,0 ; PAL_SGB1 (the first color is not defined, but if used, turns up as 30,29,29... o_O) - RGB 10,17,26 - RGB 5,9,20 - RGB 16,20,27 -ENDC - - ds $18 - -IF _RED - RGB 30,29,29 ; PAL_SGB2 - RGB 22,31,16 - RGB 27,20,6 - RGB 15,15,15 -ENDC -IF _BLUE - RGB 30,29,29 ; PAL_SGB2 - RGB 27,11,6 - RGB 5,9,20 - RGB 28,25,15 -ENDC - - ds $18 - -IF _RED - RGB 30,29,29 ; PAL_SGB3 - RGB 31,31,17 - RGB 18,21,29 - RGB 15,15,15 -ENDC -IF _BLUE - RGB 30,29,29 ; PAL_SGB3 - RGB 12,15,11 - RGB 5,9,20 - RGB 14,22,17 -ENDC - - ds $18 - -SGBBorderGraphics: ; 72fe8 (1c:6fe8) -IF _RED - INCBIN "gfx/red/sgbborder.w128.2bpp" -ENDC -IF _BLUE - INCBIN "gfx/blue/sgbborder.w128.2bpp" -ENDC +INCLUDE "data/sgb_border.asm" LoadSAV: ; 735e8 (1c:75e8) ;(if carry -> write @@ -102860,7 +53236,7 @@ LoadSAV: ; 735e8 (1c:75e8) ld hl, $d730 push hl set 6, [hl] - ld hl, FileDataDestroyedText ; $761e + ld hl, FileDataDestroyedText call PrintText ld c, $64 call DelayFrames @@ -103182,7 +53558,7 @@ PointerTable_73895: ; 73895 (1c:7895) dw $B5EA Func_738a1:: ; 738a1 (1c:78a1) - ld hl, UnnamedText_73909 ; $7909 + ld hl, WhenYouChangeBoxText call PrintText call YesNoChoice ld a, [wCurrentMenuItem] ; $cc26 @@ -103227,8 +53603,8 @@ Func_738a1:: ; 738a1 (1c:78a1) call WaitForSoundToFinish ret -UnnamedText_73909: ; 73909 (1c:7909) - TX_FAR _UnnamedText_73909 +WhenYouChangeBoxText: ; 73909 (1c:7909) + TX_FAR _WhenYouChangeBoxText db "@" Func_7390e: ; 7390e (1c:790e) @@ -103277,7 +53653,7 @@ Func_7393f: ; 7393f (1c:793f) ld b, $2 ld c, $9 call TextBoxBorder - ld hl, UnnamedText_739d4 ; $79d4 + ld hl, ChooseABoxText call PrintText FuncCoord 11, 0 ; $c3ab ld hl, Coord @@ -103309,7 +53685,7 @@ Func_7393f: ; 7393f (1c:793f) ld [Coord], a FuncCoord 1, 2 ; $c3c9 ld hl, Coord - ld de, BoxNoText ; $7a21 + ld de, BoxNoText call PlaceString call Func_73a84 FuncCoord 18, 1 ; $c3c6 @@ -103333,8 +53709,8 @@ Func_7393f: ; 7393f (1c:793f) ld [H_AUTOBGTRANSFERENABLED], a ; $ffba ret -UnnamedText_739d4: ; 739d4 (1c:79d4) - TX_FAR _UnnamedText_739d4 +ChooseABoxText: ; 739d4 (1c:79d4) + TX_FAR _ChooseABoxText db "@" BoxNames: ; 739d9 (1c:79d9) @@ -103661,22 +54037,7 @@ DisplayCreditsMon: ; 740cb (1d:40cb) ld [$FF47],a ret -CreditsMons: ; 74131 (1d:4131) - db VENUSAUR - db ARBOK - db RHYHORN - db FEAROW - db ABRA - db GRAVELER - db HITMONLEE - db TANGELA - db STARMIE - db GYARADOS - db DITTO - db OMASTAR - db VILEPLUME - db NIDOKING - db PARASECT +INCLUDE "data/credit_mons.asm" Func_74140: ; 74140 (1d:4140) ld h, b @@ -103832,246 +54193,9 @@ UnnamedText_74229: ; 74229 (1d:4229) db $60," ",$62," ",$64," ",$64," ",$66," ",$68,"@" db $61," ",$63," ",$65," ",$65," ",$67," ",$69,"@" -CreditsOrder: ; 74243 (1d:4243) -; subsequent credits elements will be displayed on separate lines. -; $FF, $FE, $FD, $FC, $FB, and $FA are commands that are used -; to go to the next set of credits texts. - db CRED_MON, CRED_VERSION, $FF - db CRED_DIRECTOR, CRED_TAJIRI, $FF - db CRED_PROGRAMMERS, CRED_TA_OOTA, CRED_MORIMOTO, $FD - db CRED_PROGRAMMERS, CRED_WATANABE, CRED_MASUDE, CRED_TAMADA, $FE - db CRED_CHAR_DESIGN, CRED_SUGIMORI, CRED_NISHIDA, $FF - db CRED_MUSIC, CRED_MASUDE, $FD - db CRED_SOUND_EFFECTS, CRED_MASUDE, $FE - db CRED_GAME_DESIGN, CRED_TAJIRI, $FF - db CRED_MONSTER_DESIGN, CRED_SUGIMORI, CRED_NISHIDA, CRED_FUZIWARA, $FD - db CRED_MONSTER_DESIGN, CRED_MORIMOTO, CRED_SA_OOTA, CRED_YOSHIKAWA, $FE - db CRED_GAME_SCENE, CRED_TAJIRI, $FD - db CRED_GAME_SCENE, CRED_TANIGUCHI, CRED_NONOMURA, CRED_ZINNAI, $FE - db CRED_PARAM, CRED_NISINO, CRED_TA_NAKAMURA, $FF - db CRED_MAP, CRED_TAJIRI, CRED_NISINO, $FD - db CRED_MAP, CRED_MATSUSIMA, CRED_NONOMURA, CRED_TANIGUCHI, $FE - db CRED_TEST, CRED_KAKEI, CRED_TSUCHIYA, $FD - db CRED_TEST, CRED_TA_NAKAMURA, CRED_YUDA, $FE - db CRED_SPECIAL, CRED_HISHIDA, CRED_SAKAI, $FD - db CRED_SPECIAL, CRED_YAMAGUCHI, CRED_YAMAMOTO, $FC - db CRED_SPECIAL, CRED_TOMISAWA, CRED_KAWAMOTO, CRED_TO_OOTA, $FE - db CRED_PRODUCERS, CRED_MIYAMOTO, $FD - db CRED_PRODUCERS, CRED_KAWAGUCHI, $FC - db CRED_PRODUCERS, CRED_ISHIHARA, $FE - db CRED_US_STAFF, $FD - db CRED_US_COORD, CRED_TILDEN, $FD - db CRED_US_COORD, CRED_KAWAKAMI, CRED_HI_NAKAMURA, $FC - db CRED_US_COORD, CRED_GIESE, CRED_OSBORNE, $FC - db CRED_TRANS, CRED_OGASAWARA, $FD - db CRED_PROGRAMMERS, CRED_MURAKAWA, CRED_FUKUI, $FD - db CRED_SPECIAL, CRED_IWATA, $FD - db CRED_SPECIAL, CRED_HARADA, $FC - db CRED_TEST, CRED_PAAD, CRED_CLUB, $FD - db CRED_PRODUCER, CRED_IZUSHI, $FD - db CRED_EXECUTIVE, CRED_YAMAUCHI, $FF - db $FB, $FF, $FA - - -CreditsTextPointers: ; 742c3 (1d:42c3) - dw CredVersion - dw CredTajiri - dw CredTaOota - dw CredMorimoto - dw CredWatanabe - dw CredMasuda - dw CredNisino - dw CredSugimori - dw CredNishida - dw CredMiyamoto - dw CredKawaguchi - dw CredIshihara - dw CredYamauchi - dw CredZinnai - dw CredHishida - dw CredSakai - dw CredYamaguchi - dw CredYamamoto - dw CredTaniguchi - dw CredNonomura - dw CredFuziwara - dw CredMatsusima - dw CredTomisawa - dw CredKawamoto - dw CredKakei - dw CredTsuchiya - dw CredTaNakamura - dw CredYuda - dw CredMon - dw CredDirector - dw CredProgrammers - dw CredCharDesign - dw CredMusic - dw CredSoundEffects - dw CredGameDesign - dw CredMonsterDesign - dw CredGameScene - dw CredParam - dw CredMap - dw CredTest - dw CredSpecial - dw CredProducers - dw CredProducer - dw CredExecutive - dw CredTamada - dw CredSaOota - dw CredYoshikawa - dw CredToOota - dw CredUSStaff - dw CredUSCoord - dw CredTilden - dw CredKawakami - dw CredHiNakamura - dw CredGiese - dw CredOsborne - dw CredTrans - dw CredOgasawara - dw CredIwata - dw CredIzushi - dw CredHarada - dw CredMurakawa - dw CredFukui - dw CredClub - dw CredPAAD - -CredVersion: ; 74343 (1d:4343) ; this 1 byte difference makes all bank addresses offset by 1 in the blue version -IF _RED - db -8, "RED VERSION STAFF@" -ENDC -IF _BLUE - db -8, "BLUE VERSION STAFF@" -ENDC -CredTajiri: ; 74356 (1d:4356) - db -6, "SATOSHI TAJIRI@" -CredTaOota: ; 74366 (1d:4366) - db -6, "TAKENORI OOTA@" -CredMorimoto: ; 74375 (1d:4375) - db -7, "SHIGEKI MORIMOTO@" -CredWatanabe: ; 74387 (1d:4387) - db -7, "TETSUYA WATANABE@" -CredMasuda: ; 74399 (1d:4399) - db -6, "JUNICHI MASUDA@" -CredNisino: ; 743a9 (1d:43a9) - db -5, "KOHJI NISINO@" -CredSugimori: ; 743b7 (1d:43b7) - db -5, "KEN SUGIMORI@" -CredNishida: ; 743c5 (1d:43c5) - db -6, "ATSUKO NISHIDA@" -CredMiyamoto: ; 743d5 (1d:43d5) - db -7, "SHIGERU MIYAMOTO@" -CredKawaguchi: ; 743e7 (1d:43e7) - db -8, "TAKASHI KAWAGUCHI@" -CredIshihara: ; 743fa (1d:43fa) - db -8, "TSUNEKAZU ISHIHARA@" -CredYamauchi: ; 7440e (1d:440e) - db -7, "HIROSHI YAMAUCHI@" -CredZinnai: ; 74420 (1d:4420) - db -7, "HIROYUKI ZINNAI@" -CredHishida: ; 74431 (1d:4431) - db -7, "TATSUYA HISHIDA@" -CredSakai: ; 74442 (1d:4442) - db -6, "YASUHIRO SAKAI@" -CredYamaguchi: ; 74452 (1d:4452) - db -7, "WATARU YAMAGUCHI@" -CredYamamoto: ; 74464 (1d:4464) - db -8, "KAZUYUKI YAMAMOTO@" -CredTaniguchi: ; 74477 (1d:4477) - db -8, "RYOHSUKE TANIGUCHI@" -CredNonomura: ; 7448b (1d:448b) - db -8, "FUMIHIRO NONOMURA@" -CredFuziwara: ; 7449e (1d:449e) - db -7, "MOTOFUMI FUZIWARA@" -CredMatsusima: ; 744b1 (1d:44b1) - db -7, "KENJI MATSUSIMA@" -CredTomisawa: ; 744c2 (1d:44c2) - db -7, "AKIHITO TOMISAWA@" -CredKawamoto: ; 744d4 (1d:44d4) - db -7, "HIROSHI KAWAMOTO@" -CredKakei: ; 744e6 (1d:44e6) - db -6, "AKIYOSHI KAKEI@" -CredTsuchiya: ; 744f6 (1d:44f6) - db -7, "KAZUKI TSUCHIYA@" -CredTaNakamura: ; 74507 (1d:4507) - db -6, "TAKEO NAKAMURA@" -CredYuda: ; 74517 (1d:4517) - db -6, "MASAMITSU YUDA@" -CredMon: ; 74527 (1d:4527) - db -3, "#MON@" -CredDirector: ; 7452d (1d:452d) - db -3, "DIRECTOR@" -CredProgrammers: ; 74537 (1d:4537) - db -5, "PROGRAMMERS@" -CredCharDesign: ; 74544 (1d:4544) - db -7, "CHARACTER DESIGN@" -CredMusic: ; 74556 (1d:4556) - db -2, "MUSIC@" -CredSoundEffects: ; 7455d (1d:455d) - db -6, "SOUND EFFECTS@" -CredGameDesign: ; 7456c (1d:456c) - db -5, "GAME DESIGN@" -CredMonsterDesign: ; 74579 (1d:4579) - db -6, "MONSTER DESIGN@" -CredGameScene: ; 74589 (1d:4589) - db -6, "GAME SCENARIO@" -CredParam: ; 74598 (1d:4598) - db -8, "PARAMETRIC DESIGN@" -CredMap: ; 745ab (1d:45ab) - db -4, "MAP DESIGN@" -CredTest: ; 745b7 (1d:45b7) - db -7, "PRODUCT TESTING@" -CredSpecial: ; 745c8 (1d:45c8) - db -6, "SPECIAL THANKS@" -CredProducers: ; 745d8 (1d:45d8) - db -4, "PRODUCERS@" -CredProducer: ; 745e3 (1d:45e3) - db -4, "PRODUCER@" -CredExecutive: ; 745ed (1d:45ed) - db -8, "EXECUTIVE PRODUCER@" -CredTamada: ; 74601 (1d:4601) - db -6, "SOUSUKE TAMADA@" -CredSaOota: ; 74611 (1d:4611) - db -5, "SATOSHI OOTA@" -CredYoshikawa: ; 7461f (1d:461f) - db -6, "RENA YOSHIKAWA@" -CredToOota: ; 7462f (1d:462f) - db -6, "TOMOMICHI OOTA@" -CredUSStaff: ; 7463f (1d:463f) - db -7, "US VERSION STAFF@" -CredUSCoord: ; 74651 (1d:4651) - db -7, "US COORDINATION@" -CredTilden: ; 74662 (1d:4662) - db -5, "GAIL TILDEN@" -CredKawakami: ; 7466f (1d:466f) - db -6, "NAOKO KAWAKAMI@" -CredHiNakamura: ; 7467f (1d:467f) - db -6, "HIRO NAKAMURA@" -CredGiese: ; 7468e (1d:468e) - db -6, "WILLIAM GIESE@" -CredOsborne: ; 7469d (1d:469d) - db -5, "SARA OSBORNE@" -CredTrans: ; 746ab (1d:46ab) - db -7, "TEXT TRANSLATION@" -CredOgasawara: ; 746bd (1d:46bd) - db -6, "NOB OGASAWARA@" -CredIwata: ; 746cc (1d:46cc) - db -5, "SATORU IWATA@" -CredIzushi: ; 746da (1d:46da) - db -7, "TAKEHIRO IZUSHI@" -CredHarada: ; 746eb (1d:46eb) - db -7, "TAKAHIRO HARADA@" -CredMurakawa: ; 746fc (1d:46fc) - db -7, "TERUKI MURAKAWA@" -CredFukui: ; 7470d (1d:470d) - db -5, "KOHTA FUKUI@" -CredClub: ; 7471a (1d:471a) - db -9, "NCL SUPER MARIO CLUB@" -CredPAAD: ; 74730 (1d:4730) - db -5, "PAAD TESTING@" +INCLUDE "data/credits_order.asm" + +INCLUDE "text/credits_text.asm" TheEndGfx: ; 7473e (1d:473e) ; 473E (473F on blue) INCBIN "gfx/theend.w40.interleave.2bpp" @@ -104149,19 +54273,19 @@ HiddenItemNear: ; 7481f (1d:481f) ld e, [hl] inc hl jr nz, .asm_74824 ; 0x74845 $dd - ld a, [$d361] + ld a, [W_YCOORD] call Func_7486b cp d jr nc, .asm_74824 ; 0x7484e $d4 - ld a, [$d361] + ld a, [W_YCOORD] add $4 cp d jr c, .asm_74824 ; 0x74856 $cc - ld a, [$d362] + ld a, [W_XCOORD] call Func_7486b cp e jr nc, .asm_74824 ; 0x7485f $c3 - ld a, [$d362] + ld a, [W_XCOORD] add $5 cp e jr c, .asm_74824 ; 0x74867 $bb @@ -104195,797 +54319,35 @@ Func_74872: ; 74872 (1d:4872) call GBFadeOut1 ret -ViridianGym_h: ; 0x74897 to 0x748a3 (12 bytes) (id=45) - db GYM ; tileset - db VIRIDIAN_GYM_HEIGHT, VIRIDIAN_GYM_WIDTH ; dimensions (y, x) - dw ViridianGymBlocks, ViridianGymTextPointers, ViridianGymScript ; blocks, texts, scripts - db $00 ; connections - dw ViridianGymObject ; objects - -ViridianGymScript: ; 748a3 (1d:48a3) - ld hl, Gym8CityName - ld de, Gym8LeaderName - call LoadGymLeaderAndCityName - call EnableAutoTextBoxDrawing - ld hl, ViridianGymTrainerHeaders - ld de, ViridianGymScriptPointers - ld a, [W_VIRIDIANGYMCURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_VIRIDIANGYMCURSCRIPT], a - ret - -Gym8CityName: ; 748bf (1d:48bf) - db "VIRIDIAN CITY@" -Gym8LeaderName: ; 748cd (1d:48cd) - db "GIOVANNI@" - -Func_748d6: ; 748d6 (1d:48d6) - xor a - ld [wJoypadForbiddenButtonsMask], a - ld [W_VIRIDIANGYMCURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -ViridianGymScriptPointers: ; 748e1 (1d:48e1) - dw ViridianGymScript0 - dw Func_324c - dw EndTrainerBattle - dw ViridianGymScript3 - dw ViridianGymScript4 - -ViridianGymScript0: ; 748eb (1d:48eb) - ld a, [W_YCOORD] ; $d361 - ld b, a - ld a, [W_XCOORD] ; $d362 - ld c, a - ld hl, ViridianGymArrowTilePlayerMovement - call Func_3442 - cp $ff - jp z, CheckFightingMapTrainers - call Func_3486 - ld hl, $d736 - set 7, [hl] - ld a, (SFX_02_52 - SFX_Headers_02) / 3 - call PlaySound - ld a, $ff - ld [wJoypadForbiddenButtonsMask], a - ld a, $4 - ld [W_CURMAPSCRIPT], a - ret - -;format: -;db y,x -;dw pointer to movement -ViridianGymArrowTilePlayerMovement: ; 74916 (1d:4916) - db $b,$13 - dw ViridianGymArrowMovement1 - db $1,$13 - dw ViridianGymArrowMovement2 - db $2,$12 - dw ViridianGymArrowMovement3 - db $2,$b - dw ViridianGymArrowMovement4 - db $a,$10 - dw ViridianGymArrowMovement5 - db $6,$4 - dw ViridianGymArrowMovement6 - db $d,$5 - dw ViridianGymArrowMovement7 - db $e,$4 - dw ViridianGymArrowMovement8 - db $f,$0 - dw ViridianGymArrowMovement9 - db $f,$1 - dw ViridianGymArrowMovement10 - db $10,$d - dw ViridianGymArrowMovement11 - db $11,$d - dw ViridianGymArrowMovement12 - db $FF - -;format: direction, count -;right: $10 -;left: $20 -;up: $40 -;down: $80 -ViridianGymArrowMovement1: ; 74947 (1d:4947) - db $40,$09,$FF - -ViridianGymArrowMovement2: ; 7494a (1d:494a) - db $20,$08,$FF - -ViridianGymArrowMovement3: ; 7494d (1d:494d) - db $80,$09,$FF - -ViridianGymArrowMovement4: ; 74950 (1d:4950) - db $10,$06,$FF - -ViridianGymArrowMovement5: ; 74953 (1d:4953) - db $80,$02,$FF - -ViridianGymArrowMovement6: ; 74956 (1d:4956) - db $80,$07,$FF - -ViridianGymArrowMovement7: ; 74959 (1d:4959) - db $10,$08,$FF - -ViridianGymArrowMovement8: ; 7495c (1d:495c) - db $10,$09,$FF - -ViridianGymArrowMovement9: ; 7495f (1d:495f) - db $40,$08,$FF - -ViridianGymArrowMovement10: ; 74962 (1d:4962) - db $40,$06,$FF - -ViridianGymArrowMovement11: ; 74965 (1d:4965) - db $20,$06,$FF - -ViridianGymArrowMovement12: ; 74968 (1d:4968) - db $20,$0C,$FF - -ViridianGymScript4: ; 7496b (1d:496b) - ld a, [$cd38] - and a - jr nz, .asm_74980 - xor a - ld [wJoypadForbiddenButtonsMask], a - ld hl, $d736 - res 7, [hl] - ld a, $0 - ld [W_CURMAPSCRIPT], a - ret -.asm_74980 - ld b, BANK(Func_44fd7) - ld hl, Func_44fd7 - jp Bankswitch - -ViridianGymScript3: ; 74988 (1d:4988) - ld a, [W_ISINBATTLE] ; $d057 - cp $ff - jp z, Func_748d6 - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a -ViridianGymScript3_74995: ; 74995 (1d:4995) - ld a, $c - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - ld hl, $d751 - set 1, [hl] - ld bc, (TM_27 << 8) | 1 - call GiveItem - jr nc, .BagFull - ld a, $d - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - ld hl, $d751 - set 0, [hl] - jr .asm_749be -.BagFull - ld a, $e - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID -.asm_749be - ld hl, W_OBTAINEDBADGES - set 7, [hl] - ld hl, $d72a - set 7, [hl] - - ; deactivate gym trainers - ld a, [$d751] - or %11111100 - ld [$d751], a - ld a, [$d752] - or %00000011 - ld [$d752], a - - ld a, $23 - ld [$cc4d], a - ld a, $15 - call Predef ; indirect jump to AddMissableObject (f1c8 (3:71c8)) - ld hl, $d7eb - set 1, [hl] - set 7, [hl] - jp Func_748d6 - -ViridianGymTextPointers: ; 749ec (1d:49ec) - dw ViridianGymText1 - dw ViridianGymText2 - dw ViridianGymText3 - dw ViridianGymText4 - dw ViridianGymText5 - dw ViridianGymText6 - dw ViridianGymText7 - dw ViridianGymText8 - dw ViridianGymText9 - dw ViridianGymText10 - dw Predef5CText - dw ViridianGymText12 - dw ViridianGymText13 - dw ViridianGymText14 - -ViridianGymTrainerHeaders: ; 74a08 (1d:4a08) -ViridianGymTrainerHeader0: ; 74a08 (1d:4a08) - db $2 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d751 ; flag's byte - dw ViridianGymBattleText1 ; 0x4afd TextBeforeBattle - dw ViridianGymAfterBattleText1 ; 0x4b07 TextAfterBattle - dw ViridianGymEndBattleText1 ; 0x4b02 TextEndBattle - dw ViridianGymEndBattleText1 ; 0x4b02 TextEndBattle - -ViridianGymTrainerHeader1: ; 74a14 (1d:4a14) - db $3 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d751 ; flag's byte - dw ViridianGymBattleText2 ; 0x4b16 TextBeforeBattle - dw ViridianGymAfterBattleText2 ; 0x4b20 TextAfterBattle - dw ViridianGymEndBattleText2 ; 0x4b1b TextEndBattle - dw ViridianGymEndBattleText2 ; 0x4b1b TextEndBattle - -ViridianGymTrainerHeader2: ; 74a20 (1d:4a20) - db $4 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d751 ; flag's byte - dw ViridianGymBattleText3 ; 0x4b2f TextBeforeBattle - dw ViridianGymAfterBattleText3 ; 0x4b39 TextAfterBattle - dw ViridianGymEndBattleText3 ; 0x4b34 TextEndBattle - dw ViridianGymEndBattleText3 ; 0x4b34 TextEndBattle - -ViridianGymTrainerHeader3: ; 74a2c (1d:4a2c) - db $5 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d751 ; flag's byte - dw ViridianGymBattleText4 ; 0x4b48 TextBeforeBattle - dw ViridianGymAfterBattleText4 ; 0x4b52 TextAfterBattle - dw ViridianGymEndBattleText4 ; 0x4b4d TextEndBattle - dw ViridianGymEndBattleText4 ; 0x4b4d TextEndBattle - -ViridianGymTrainerHeader4: ; 74a38 (1d:4a38) - db $6 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d751 ; flag's byte - dw ViridianGymBattleText5 ; 0x4b61 TextBeforeBattle - dw ViridianGymAfterBattleText5 ; 0x4b6b TextAfterBattle - dw ViridianGymEndBattleText5 ; 0x4b66 TextEndBattle - dw ViridianGymEndBattleText5 ; 0x4b66 TextEndBattle - -ViridianGymTrainerHeader5: ; 74a44 (1d:4a44) - db $7 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d751 ; flag's byte - dw ViridianGymBattleText6 ; 0x4b7a TextBeforeBattle - dw ViridianGymAfterBattleText6 ; 0x4b84 TextAfterBattle - dw ViridianGymEndBattleText6 ; 0x4b7f TextEndBattle - dw ViridianGymEndBattleText6 ; 0x4b7f TextEndBattle - -ViridianGymTrainerHeader6: ; 74a50 (1d:4a50) - db $8 ; flag's bit - db ($3 << 4) ; trainer's view range - dw $d751 ; flag's byte - dw ViridianGymBattleText7 ; 0x4b93 TextBeforeBattle - dw ViridianGymAfterBattleText7 ; 0x4b9d TextAfterBattle - dw ViridianGymEndBattleText7 ; 0x4b98 TextEndBattle - dw ViridianGymEndBattleText7 ; 0x4b98 TextEndBattle - -ViridianGymTrainerHeader7: ; 74a5c (1d:4a5c) - db $9 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d751 ; flag's byte - dw ViridianGymBattleText8 ; 0x4bac TextBeforeBattle - dw ViridianGymAfterBattleText8 ; 0x4bb6 TextAfterBattle - dw ViridianGymEndBattleText8 ; 0x4bb1 TextEndBattle - dw ViridianGymEndBattleText8 ; 0x4bb1 TextEndBattle - - db $ff - -ViridianGymText1: ; 74a69 (1d:4a69) - db $08 ; asm - ld a, [$d751] - bit 1, a - jr z, .asm_6de66 ; 0x74a6f - bit 0, a - jr nz, .asm_9fc95 ; 0x74a73 - call z, ViridianGymScript3_74995 - call DisableWaitingAfterTextDisplay - jr .asm_6dff7 ; 0x74a7b -.asm_9fc95 ; 0x74a7d - ld a, $1 - ld [$cc3c], a - ld hl, UnnamedText_74ad9 - call PrintText - call GBFadeIn1 - ld a, $32 - ld [$cc4d], a - ld a, $11 - call Predef - call UpdateSprites - call Delay3 - call GBFadeOut1 - jr .asm_6dff7 ; 0x74a9e -.asm_6de66 ; 0x74aa0 - ld hl, UnnamedText_74ace - call PrintText - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, UnnamedText_74ad3 - ld de, UnnamedText_74ad3 - call PreBattleSaveRegisters - ldh a, [$8c] - ld [$cf13], a - call EngageMapTrainer - call InitBattleEnemyParameters - ld a, $8 - ld [$d05c], a - ld a, $3 - ld [W_VIRIDIANGYMCURSCRIPT], a -.asm_6dff7 ; 0x74acb - jp TextScriptEnd - -UnnamedText_74ace: ; 74ace (1d:4ace) - TX_FAR _UnnamedText_74ace - db "@" +INCLUDE "data/mapHeaders/viridiangym.asm" -UnnamedText_74ad3: ; 74ad3 (1d:4ad3) - TX_FAR _UnnamedText_74ad3 - db $0b, "@" +INCLUDE "scripts/viridiangym.asm" -UnnamedText_74ad9: ; 74ad9 (1d:4ad9) - TX_FAR _UnnamedText_74ad9 - db $0d, "@" - -ViridianGymText12: ; 74adf (1d:4adf) - TX_FAR _ViridianGymText12 - db "@" - -ViridianGymText13: ; 74ae4 (1d:4ae4) - TX_FAR _ReceivedTM27Text - db $0b - -TM27ExplanationText: ; 74ae9 (1d:4ae9) - TX_FAR _TM27ExplanationText - db "@" - -ViridianGymText14: ; 74aee (1d:4aee) - TX_FAR _TM27NoRoomText - db "@" - -ViridianGymText2: ; 74af3 (1d:4af3) - db $08 ; asm - ld hl, ViridianGymTrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -ViridianGymBattleText1: ; 74afd (1d:4afd) - TX_FAR _ViridianGymBattleText1 - db "@" - -ViridianGymEndBattleText1: ; 74b02 (1d:4b02) - TX_FAR _ViridianGymEndBattleText1 - db "@" - -ViridianGymAfterBattleText1: ; 74b07 (1d:4b07) - TX_FAR _ViridianGymAfterBattleText1 - db "@" - -ViridianGymText3: ; 74b0c (1d:4b0c) - db $08 ; asm - ld hl, ViridianGymTrainerHeader1 - call TalkToTrainer - jp TextScriptEnd - -ViridianGymBattleText2: ; 74b16 (1d:4b16) - TX_FAR _ViridianGymBattleText2 - db "@" - -ViridianGymEndBattleText2: ; 74b1b (1d:4b1b) - TX_FAR _ViridianGymEndBattleText2 - db "@" - -ViridianGymAfterBattleText2: ; 74b20 (1d:4b20) - TX_FAR _ViridianGymAfterBattleText2 - db "@" - -ViridianGymText4: ; 74b25 (1d:4b25) - db $08 ; asm - ld hl, ViridianGymTrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -ViridianGymBattleText3: ; 74b2f (1d:4b2f) - TX_FAR _ViridianGymBattleText3 - db "@" - -ViridianGymEndBattleText3: ; 74b34 (1d:4b34) - TX_FAR _ViridianGymEndBattleText3 - db "@" - -ViridianGymAfterBattleText3: ; 74b39 (1d:4b39) - TX_FAR _ViridianGymAfterBattleText3 - db "@" - -ViridianGymText5: ; 74b3e (1d:4b3e) - db $08 ; asm - ld hl, ViridianGymTrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -ViridianGymBattleText4: ; 74b48 (1d:4b48) - TX_FAR _ViridianGymBattleText4 - db "@" - -ViridianGymEndBattleText4: ; 74b4d (1d:4b4d) - TX_FAR _ViridianGymEndBattleText4 - db "@" - -ViridianGymAfterBattleText4: ; 74b52 (1d:4b52) - TX_FAR _ViridianGymAfterBattleText4 - db "@" - -ViridianGymText6: ; 74b57 (1d:4b57) - db $08 ; asm - ld hl, ViridianGymTrainerHeader4 - call TalkToTrainer - jp TextScriptEnd - -ViridianGymBattleText5: ; 74b61 (1d:4b61) - TX_FAR _ViridianGymBattleText5 - db "@" - -ViridianGymEndBattleText5: ; 74b66 (1d:4b66) - TX_FAR _ViridianGymEndBattleText5 - db "@" - -ViridianGymAfterBattleText5: ; 74b6b (1d:4b6b) - TX_FAR _ViridianGymAfterBattleText5 - db "@" - -ViridianGymText7: ; 74b70 (1d:4b70) - db $08 ; asm - ld hl, ViridianGymTrainerHeader5 - call TalkToTrainer - jp TextScriptEnd - -ViridianGymBattleText6: ; 74b7a (1d:4b7a) - TX_FAR _ViridianGymBattleText6 - db "@" - -ViridianGymEndBattleText6: ; 74b7f (1d:4b7f) - TX_FAR _ViridianGymEndBattleText6 - db "@" - -ViridianGymAfterBattleText6: ; 74b84 (1d:4b84) - TX_FAR _ViridianGymAfterBattleText6 - db "@" - -ViridianGymText8: ; 74b89 (1d:4b89) - db $08 ; asm - ld hl, ViridianGymTrainerHeader6 - call TalkToTrainer - jp TextScriptEnd - -ViridianGymBattleText7: ; 74b93 (1d:4b93) - TX_FAR _ViridianGymBattleText7 - db "@" - -ViridianGymEndBattleText7: ; 74b98 (1d:4b98) - TX_FAR _ViridianGymEndBattleText7 - db "@" - -ViridianGymAfterBattleText7: ; 74b9d (1d:4b9d) - TX_FAR _ViridianGymAfterBattleText7 - db "@" - -ViridianGymText9: ; 74ba2 (1d:4ba2) - db $08 ; asm - ld hl, ViridianGymTrainerHeader7 - call TalkToTrainer - jp TextScriptEnd - -ViridianGymBattleText8: ; 74bac (1d:4bac) - TX_FAR _ViridianGymBattleText8 - db "@" - -ViridianGymEndBattleText8: ; 74bb1 (1d:4bb1) - TX_FAR _ViridianGymEndBattleText8 - db "@" - -ViridianGymAfterBattleText8: ; 74bb6 (1d:4bb6) - TX_FAR _ViridianGymAfterBattleText8 - db "@" - -ViridianGymText10: ; 74bbb (1d:4bbb) - db $08 ; asm - ld a, [$d751] - bit 1, a - jr nz, .asm_1abd1 ; 0x74bc1 - ld hl, UnnamedText_74bd4 - call PrintText - jr .asm_6064d ; 0x74bc9 -.asm_1abd1 ; 0x74bcb - ld hl, UnnamedText_74bd9 - call PrintText -.asm_6064d ; 0x74bd1 - jp TextScriptEnd - -UnnamedText_74bd4: ; 74bd4 (1d:4bd4) - TX_FAR _UnnamedText_74bd4 - db "@" - -UnnamedText_74bd9: ; 74bd9 (1d:4bd9) - TX_FAR _UnnamedText_74bd9 - db "@" - -ViridianGymObject: ; 0x74bde (size=105) - db $3 ; border tile - - db $2 ; warps - db $11, $10, $4, $ff - db $11, $11, $4, $ff - - db $0 ; signs - - db $b ; people - db SPRITE_GIOVANNI, $1 + 4, $2 + 4, $ff, $d0, $41, GIOVANNI + $C8, $3 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $7 + 4, $c + 4, $ff, $d0, $42, COOLTRAINER_M + $C8, $9 ; trainer - db SPRITE_HIKER, $b + 4, $b + 4, $ff, $d1, $43, BLACKBELT + $C8, $6 ; trainer - db SPRITE_ROCKER, $7 + 4, $a + 4, $ff, $d0, $44, TAMER + $C8, $3 ; trainer - db SPRITE_HIKER, $7 + 4, $3 + 4, $ff, $d2, $45, BLACKBELT + $C8, $7 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $5 + 4, $d + 4, $ff, $d3, $46, COOLTRAINER_M + $C8, $a ; trainer - db SPRITE_HIKER, $1 + 4, $a + 4, $ff, $d0, $47, BLACKBELT + $C8, $8 ; trainer - db SPRITE_ROCKER, $10 + 4, $2 + 4, $ff, $d3, $48, TAMER + $C8, $4 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $5 + 4, $6 + 4, $ff, $d0, $49, COOLTRAINER_M + $C8, $1 ; trainer - db SPRITE_GYM_HELPER, $f + 4, $10 + 4, $ff, $d0, $a ; person - db SPRITE_BALL, $9 + 4, $10 + 4, $ff, $ff, $8b, REVIVE ; item - - ; warp-to - EVENT_DISP VIRIDIAN_GYM_WIDTH, $11, $10 - EVENT_DISP VIRIDIAN_GYM_WIDTH, $11, $11 +INCLUDE "data/mapObjects/viridiangym.asm" ViridianGymBlocks: ; 74c47 (1d:4c47) INCBIN "maps/viridiangym.blk" -PewterMart_h: ; 0x74ca1 to 0x74cad (12 bytes) (id=56) - db MART ; tileset - db PEWTER_MART_HEIGHT, PEWTER_MART_WIDTH ; dimensions (y, x) - dw PewterMartBlocks, PewterMartTextPointers, PewterMartScript ; blocks, texts, scripts - db $00 ; connections - dw PewterMartObject ; objects +INCLUDE "data/mapHeaders/pewtermart.asm" -PewterMartScript: ; 74cad (1d:4cad) - call EnableAutoTextBoxDrawing - ld a, $1 - ld [$cf0c], a - ret +INCLUDE "scripts/pewtermart.asm" -PewterMartTextPointers: ; 74cb6 (1d:4cb6) - dw PewterMartText1 - dw PewterMartText2 - dw PewterMartText3 +INCLUDE "data/mapObjects/pewtermart.asm" -PewterMartText2: ; 74cbc (1d:4cbc) - db $08 ; asm - ld hl, UnnamedText_74cc6 - call PrintText - jp TextScriptEnd +INCLUDE "data/mapHeaders/unknowndungeon1.asm" -UnnamedText_74cc6: ; 74cc6 (1d:4cc6) - TX_FAR _UnnamedText_74cc6 - db "@" +INCLUDE "scripts/unknowndungeon1.asm" -PewterMartText3: ; 74ccb (1d:4ccb) - db $08 ; asm - ld hl, UnnamedText_74cd5 - call PrintText - jp TextScriptEnd - -UnnamedText_74cd5: ; 74cd5 (1d:4cd5) - TX_FAR _UnnamedText_74cd5 - db "@" - -PewterMartObject: ; 0x74cda (size=38) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $4, $ff - db $7, $4, $4, $ff - - db $0 ; signs - - db $3 ; people - db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person - db SPRITE_BUG_CATCHER, $3 + 4, $3 + 4, $fe, $1, $2 ; person - db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $5 + 4, $ff, $ff, $3 ; person - - ; warp-to - EVENT_DISP PEWTER_MART_WIDTH, $7, $3 - EVENT_DISP PEWTER_MART_WIDTH, $7, $4 - -UnknownDungeon1_h: ; 0x74d00 to 0x74d0c (12 bytes) (id=228) - db CAVERN ; tileset - db UNKNOWN_DUNGEON_1_HEIGHT, UNKNOWN_DUNGEON_1_WIDTH ; dimensions (y, x) - dw UnknownDungeon1Blocks, UnknownDungeon1TextPointers, UnknownDungeon1Script ; blocks, texts, scripts - db $00 ; connections - dw UnknownDungeon1Object ; objects - -UnknownDungeon1Script: ; 74d0c (1d:4d0c) - jp EnableAutoTextBoxDrawing - -UnknownDungeon1TextPointers: ; 74d0f (1d:4d0f) - dw Predef5CText - dw Predef5CText - dw Predef5CText - -UnknownDungeon1Object: ; 0x74d15 (size=97) - db $7d ; border tile - - db $9 ; warps - db $11, $18, $6, $ff - db $11, $19, $6, $ff - db $1, $1b, $0, UNKNOWN_DUNGEON_2 - db $7, $17, $1, UNKNOWN_DUNGEON_2 - db $9, $12, $2, UNKNOWN_DUNGEON_2 - db $1, $7, $3, UNKNOWN_DUNGEON_2 - db $3, $1, $4, UNKNOWN_DUNGEON_2 - db $b, $3, $5, UNKNOWN_DUNGEON_2 - db $6, $0, $0, UNKNOWN_DUNGEON_3 - - db $0 ; signs - - db $3 ; people - db SPRITE_BALL, $d + 4, $7 + 4, $ff, $ff, $81, FULL_RESTORE ; item - db SPRITE_BALL, $3 + 4, $13 + 4, $ff, $ff, $82, MAX_ELIXER ; item - db SPRITE_BALL, $0 + 4, $5 + 4, $ff, $ff, $83, NUGGET ; item - - ; warp-to - EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $11, $18 - EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $11, $19 - EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $1, $1b ; UNKNOWN_DUNGEON_2 - EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $7, $17 ; UNKNOWN_DUNGEON_2 - EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $9, $12 ; UNKNOWN_DUNGEON_2 - EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $1, $7 ; UNKNOWN_DUNGEON_2 - EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $3, $1 ; UNKNOWN_DUNGEON_2 - EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $b, $3 ; UNKNOWN_DUNGEON_2 - EVENT_DISP UNKNOWN_DUNGEON_1_WIDTH, $6, $0 ; UNKNOWN_DUNGEON_3 +INCLUDE "data/mapObjects/unknowndungeon1.asm" UnknownDungeon1Blocks: ; 74d76 (1d:4d76) INCBIN "maps/unknowndungeon1.blk" -CeruleanHouse2_h: ; 0x74dfd to 0x74e09 (12 bytes) (id=230) - db SHIP ; tileset - db CERULEAN_HOUSE_2_HEIGHT, CERULEAN_HOUSE_2_WIDTH ; dimensions (y, x) - dw CeruleanHouse2Blocks, CeruleanHouse2TextPointers, CeruleanHouse2Script ; blocks, texts, scripts - db $00 ; connections - dw CeruleanHouse2Object ; objects - -CeruleanHouse2Script: ; 74e09 (1d:4e09) - ld a, $1 - ld [$cf0c], a - dec a - ld [$cc3c], a - ret - -CeruleanHouse2TextPointers: ; 74e13 (1d:4e13) - dw CeruleanHouse2Text1 - -CeruleanHouse2Text1: ; 74e15 (1d:4e15) - db $8 - ld hl, UnnamedText_74e77 - call PrintText - xor a - ld [wCurrentMenuItem], a - ld [wListScrollOffset], a -.asm_74e23 - ld hl, UnnamedText_74e7c - call PrintText - ld hl, UnnamedText_74e6d - call LoadItemList - ld hl, $cf7b - ld a, l - ld [$cf8b], a - ld a, h - ld [$cf8c], a - xor a - ld [$cf93], a - ld [$cc35], a - ld a, SPECIALLISTMENU - ld [wListMenuID], a - call DisplayListMenuID - jr c, .asm_74e60 ; 0x74e49 $15 - ld hl, Unknown_74e86 - ld a, [$cf91] - sub $15 - add a - ld d, $0 - ld e, a - add hl, de - ld a, [hli] - ld h, [hl] - ld l, a - call PrintText - jr .asm_74e23 ; 0x74e5e $c3 -.asm_74e60 - xor a - ld [wListScrollOffset], a - ld hl, UnnamedText_74e81 - call PrintText - jp TextScriptEnd - -UnnamedText_74e6d: ; 74e6d (1d:4e6d) - db $8,BOULDERBADGE,CASCADEBADGE,THUNDERBADGE,RAINBOWBADGE,SOULBADGE,MARSHBADGE,VOLCANOBADGE,EARTHBADGE,$FF - -UnnamedText_74e77: ; 74e77 (1d:4e77) - TX_FAR _UnnamedText_74e77 - db "@" - -UnnamedText_74e7c: ; 74e7c (1d:4e7c) - TX_FAR _UnnamedText_74e7c - db "@" - -UnnamedText_74e81: ; 74e81 (1d:4e81) - TX_FAR _UnnamedText_74e81 - db "@" - -Unknown_74e86: ; 74e86 (1d:4e86) - dw UnnamedText_74e96 - dw UnnamedText_74e9b - dw UnnamedText_74ea0 - dw UnnamedText_74ea5 - dw UnnamedText_74eaa - dw UnnamedText_74eaf - dw UnnamedText_74eb4 - dw UnnamedText_74eb9 - -UnnamedText_74e96: ; 74e96 (1d:4e96) - TX_FAR _UnnamedText_74e96 - db "@" - -UnnamedText_74e9b: ; 74e9b (1d:4e9b) - TX_FAR _UnnamedText_74e9b - db "@" - -UnnamedText_74ea0: ; 74ea0 (1d:4ea0) - TX_FAR _UnnamedText_74ea0 - db "@" - -UnnamedText_74ea5: ; 74ea5 (1d:4ea5) - TX_FAR _UnnamedText_74ea5 - db "@" - -UnnamedText_74eaa: ; 74eaa (1d:4eaa) - TX_FAR _UnnamedText_74eaa - db "@" - -UnnamedText_74eaf: ; 74eaf (1d:4eaf) - TX_FAR _UnnamedText_74eaf - db "@" - -UnnamedText_74eb4: ; 74eb4 (1d:4eb4) - TX_FAR _UnnamedText_74eb4 - db "@" - -UnnamedText_74eb9: ; 74eb9 (1d:4eb9) - TX_FAR _UnnamedText_74eb9 - db "@" - -CeruleanHouse2Object: ; 0x74ebe (size=34) - db $c ; border tile - - db $3 ; warps - db $0, $2, $9, $ff - db $7, $2, $8, $ff - db $7, $3, $8, $ff +INCLUDE "data/mapHeaders/ceruleanhouse2.asm" - db $0 ; signs +INCLUDE "scripts/ceruleanhouse2.asm" - db $1 ; people - db SPRITE_FAT_BALD_GUY, $3 + 4, $5 + 4, $ff, $d3, $1 ; person - - ; warp-to - EVENT_DISP CERULEAN_HOUSE_2_WIDTH, $0, $2 - EVENT_DISP CERULEAN_HOUSE_2_WIDTH, $7, $2 - EVENT_DISP CERULEAN_HOUSE_2_WIDTH, $7, $3 +INCLUDE "data/mapObjects/ceruleanhouse2.asm" VendingMachineMenu: ; 74ee0 (1d:4ee0) ld hl, VendingMachineText1 @@ -105126,2904 +54488,155 @@ VendingPrices: ; 75000 (1d:5000) db SODA_POP, $00,$03,$00 db LEMONADE, $00,$03,$50 -FuchsiaHouse1_h: ; 0x7500c to 0x75018 (12 bytes) (id=153) - db HOUSE ; tileset - db FUCHSIA_HOUSE_1_HEIGHT, FUCHSIA_HOUSE_1_WIDTH ; dimensions (y, x) - dw FuchsiaHouse1Blocks, FuchsiaHouse1TextPointers, FuchsiaHouse1Script ; blocks, texts, scripts - db $00 ; connections - dw FuchsiaHouse1Object ; objects - -FuchsiaHouse1Script: ; 75018 (1d:5018) - call EnableAutoTextBoxDrawing - ret - -FuchsiaHouse1TextPointers: ; 7501c (1d:501c) - dw FuchsiaHouse1Text1 - dw FuchsiaHouse1Text2 - dw FuchsiaHouse1Text3 - -FuchsiaHouse1Text1: ; 75022 (1d:5022) - TX_FAR _FuchsiaHouse1Text1 - db "@" - -FuchsiaHouse1Text2: ; 75027 (1d:5027) - TX_FAR _FuchsiaHouse1Text2 - db "@" - -FuchsiaHouse1Text3: ; 7502c (1d:502c) - TX_FAR _FuchsiaHouse1Text3 - db "@" - -FuchsiaHouse1Object: ; 0x75031 (size=38) - db $a ; border tile - - db $2 ; warps - db $7, $2, $1, $ff - db $7, $3, $1, $ff - - db $0 ; signs - - db $3 ; people - db SPRITE_MOM_GEISHA, $3 + 4, $2 + 4, $ff, $d3, $1 ; person - db SPRITE_GAMBLER, $2 + 4, $7 + 4, $ff, $d1, $2 ; person - db SPRITE_BUG_CATCHER, $5 + 4, $5 + 4, $ff, $ff, $3 ; person +INCLUDE "data/mapHeaders/fuchsiahouse1.asm" - ; warp-to - EVENT_DISP FUCHSIA_HOUSE_1_WIDTH, $7, $2 - EVENT_DISP FUCHSIA_HOUSE_1_WIDTH, $7, $3 +INCLUDE "scripts/fuchsiahouse1.asm" -FuchsiaPokecenter_h: ; 0x75057 to 0x75063 (12 bytes) (id=154) - db POKECENTER ; tileset - db FUCHSIA_POKECENTER_HEIGHT, FUCHSIA_POKECENTER_WIDTH ; dimensions (y, x) - dw FuchsiaPokecenterBlocks, FuchsiaPokecenterTextPointers, FuchsiaPokecenterScript ; blocks, texts, scripts - db $00 ; connections - dw FuchsiaPokecenterObject ; objects +INCLUDE "data/mapObjects/fuchsiahouse1.asm" -FuchsiaPokecenterScript: ; 75063 (1d:5063) - call Func_22fa - jp EnableAutoTextBoxDrawing +INCLUDE "data/mapHeaders/fuchsiapokecenter.asm" -FuchsiaPokecenterTextPointers: ; 75069 (1d:5069) - dw FuchsiaPokecenterText1 - dw FuchsiaPokecenterText2 - dw FuchsiaPokecenterText3 - dw FuchsiaPokecenterText4 +INCLUDE "scripts/fuchsiapokecenter.asm" -FuchsiaPokecenterText1: ; 75071 (1d:5071) - db $ff - -FuchsiaPokecenterText2: ; 75072 (1d:5072) - TX_FAR _FuchsiaPokecenterText1 - db "@" - -FuchsiaPokecenterText3: ; 75077 (1d:5077) - TX_FAR _FuchsiaPokecenterText3 - db "@" - -FuchsiaPokecenterText4: ; 7507c (1d:507c) - db $f6 - -FuchsiaPokecenterObject: ; 0x7507d (size=44) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $2, $ff - db $7, $4, $2, $ff +INCLUDE "data/mapObjects/fuchsiapokecenter.asm" - db $0 ; signs +INCLUDE "data/mapHeaders/fuchsiahouse2.asm" - db $4 ; people - db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person - db SPRITE_ROCKER, $3 + 4, $2 + 4, $ff, $ff, $2 ; person - db SPRITE_LASS, $5 + 4, $6 + 4, $fe, $2, $3 ; person - db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person +INCLUDE "scripts/fuchsiahouse2.asm" - ; warp-to - EVENT_DISP FUCHSIA_POKECENTER_WIDTH, $7, $3 - EVENT_DISP FUCHSIA_POKECENTER_WIDTH, $7, $4 - -FuchsiaHouse2_h: ; 0x750a9 to 0x750b5 (12 bytes) (id=155) - db LAB ; tileset - db FUCHSIA_HOUSE_2_HEIGHT, FUCHSIA_HOUSE_2_WIDTH ; dimensions (y, x) - dw FuchsiaHouse2Blocks, FuchsiaHouse2TextPointers, FuchsiaHouse2Script ; blocks, texts, scripts - db $00 ; connections - dw FuchsiaHouse2Object ; objects - -FuchsiaHouse2Script: ; 750b5 (1d:50b5) - jp EnableAutoTextBoxDrawing - -FuchsiaHouse2TextPointers: ; 750b8 (1d:50b8) - dw FuchsiaHouse2Text1 - dw Predef5CText - dw BoulderText - dw FuchsiaHouse2Text4 - dw FuchsiaHouse2Text5 - -FuchsiaHouse2Text1: ; 750c2 (1d:50c2) - db $08 ; asm - ld a, [$d78e] - bit 0, a - jr nz, .subtract ; 0x750c8 - ld b,GOLD_TEETH - call IsItemInBag - jr nz, .asm_3f30f ; 0x750cf - ld a, [$d78e] - bit 1, a - jr nz, .asm_60cba ; 0x750d6 - ld hl, WardenGibberishText1 - call PrintText - call YesNoChoice - ld a, [$cc26] - and a - ld hl, WardenGibberishText3 - jr nz, .asm_61238 ; 0x750e8 - ld hl, WardenGibberishText2 -.asm_61238 ; 0x750ed - call PrintText - jr .asm_52039 ; 0x750f0 -.asm_3f30f ; 0x750f2 - ld hl, WardenTeethText1 - call PrintText - ld a, $40 - ldh [$db], a - callba RemoveItemByID - ld hl, $d78e - set 1, [hl] -.asm_60cba ; 0x75109 - ld hl, WardenThankYouText - call PrintText - ld bc,(HM_04 << 8) | 1 - call GiveItem - jr nc, .BagFull - ld hl, ReceivedHM04Text - call PrintText - ld hl, $d78e - set 0, [hl] - jr .asm_52039 ; 0x75122 -.subtract ; 0x75124 - ld hl, HM04ExplanationText - call PrintText - jr .asm_52039 ; 0x7512a -.BagFull - ld hl, HM04NoRoomText - call PrintText -.asm_52039 ; 0x75132 - jp TextScriptEnd - -WardenGibberishText1: ; 75135 (1d:5135) - TX_FAR _WardenGibberishText1 - db "@" - -WardenGibberishText2: ; 7513a (1d:513a) - TX_FAR _WardenGibberishText2 - db "@" - -WardenGibberishText3: ; 7513f (1d:513f) - TX_FAR _WardenGibberishText3 - db "@" - -WardenTeethText1: ; 75144 (1d:5144) - TX_FAR _WardenTeethText1 - db $0b - -WardenTeethText2: ; 75149 (1d:5149) - TX_FAR _WardenTeethText2 - db "@" - -WardenThankYouText: ; 7514e (1d:514e) - TX_FAR _WardenThankYouText - db "@" - -ReceivedHM04Text: ; 75153 (1d:5153) - TX_FAR _ReceivedHM04Text ; 0x9e5a2 - db $0B, "@" - -HM04ExplanationText: ; 75159 (1d:5159) - TX_FAR _HM04ExplanationText - db "@" - -HM04NoRoomText: ; 7515e (1d:515e) - TX_FAR _HM04NoRoomText - db "@" - -FuchsiaHouse2Text5: ; 75163 (1d:5163) -FuchsiaHouse2Text4: ; 75163 (1d:5163) - db $08 ; asm - ldh a, [$8c] - cp $4 - ld hl, UnnamedText_7517b - jr nz, .asm_4c9a2 ; 0x7516b - ld hl, UnnamedText_75176 -.asm_4c9a2 ; 0x75170 - call PrintText - jp TextScriptEnd - -UnnamedText_75176: ; 75176 (1d:5176) - TX_FAR _UnnamedText_75176 - db "@" - -UnnamedText_7517b: ; 7517b (1d:517b) - TX_FAR _UnnamedText_7517b - db "@" - -FuchsiaHouse2Object: ; 0x75180 (size=45) - db $17 ; border tile - - db $2 ; warps - db $7, $4, $3, $ff - db $7, $5, $3, $ff - - db $2 ; signs - db $3, $4, $4 ; FuchsiaHouse2Text4 - db $3, $5, $5 ; FuchsiaHouse2Text5 - - db $3 ; people - db SPRITE_WARDEN, $3 + 4, $2 + 4, $ff, $ff, $1 ; person - db SPRITE_BALL, $3 + 4, $8 + 4, $ff, $ff, $82, RARE_CANDY ; item - db SPRITE_BOULDER, $4 + 4, $8 + 4, $ff, $10, $3 ; person - - ; warp-to - EVENT_DISP FUCHSIA_HOUSE_2_WIDTH, $7, $4 - EVENT_DISP FUCHSIA_HOUSE_2_WIDTH, $7, $5 +INCLUDE "data/mapObjects/fuchsiahouse2.asm" FuchsiaHouse2Blocks: ; 751ad (1d:51ad) INCBIN "maps/fuchsiahouse2.blk" -SafariZoneEntrance_h: ; 0x751c1 to 0x751cd (12 bytes) (id=156) - db GATE ; tileset - db SAFARI_ZONE_ENTRANCE_HEIGHT, SAFARI_ZONE_ENTRANCE_WIDTH ; dimensions (y, x) - dw SafariZoneEntranceBlocks, SafariZoneEntranceTextPointers, SafariZoneEntranceScript ; blocks, texts, scripts - db $00 ; connections - dw SafariZoneEntranceObject ; objects - -SafariZoneEntranceScript: ; 751cd (1d:51cd) - call EnableAutoTextBoxDrawing - ld hl, SafariZoneEntranceScriptPointers - ld a, [W_SAFARIZONEENTRANCECURSCRIPT] - jp CallFunctionInTable - -SafariZoneEntranceScriptPointers: ; 751d9 (1d:51d9) - dw SafariZoneEntranceScript0 - dw SafariZoneEntranceScript1 - dw SafariZoneEntranceScript2 - dw SafariZoneEntranceScript3 - dw SafariZoneEntranceScript4 - dw SafariZoneEntranceScript5 - dw SafariZoneEntranceScript6 - -SafariZoneEntranceScript0: ; 751e7 (1d:51e7) - ld hl, CoordsData_75221 - call ArePlayerCoordsInArray - ret nc - ld a, $3 - ld [$ff8c], a - call DisplayTextID - ld a, $ff - ld [wJoypadForbiddenButtonsMask], a - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - ld a, $c - ld [$c109], a - ld a, [$cd3d] - cp $1 - jr z, .asm_7520f ; 0x75207 $6 - ld a, $2 - ld [W_SAFARIZONEENTRANCECURSCRIPT], a - ret -.asm_7520f - ld a, $10 - ld c, $1 - call Func_752a3 - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - ld a, $1 - ld [W_SAFARIZONEENTRANCECURSCRIPT], a - ret - -CoordsData_75221: ; 75221 (1d:5221) - db $02,$03 - db $02,$04 - db $FF - -SafariZoneEntranceScript1: ; 75226 (1d:5226) - call Func_752b4 - ret nz -SafariZoneEntranceScript2: ; 7522a (1d:522a) - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - ld [wJoypadForbiddenButtonsMask], a - call UpdateSprites - ld a, $4 - ld [$ff8c], a - call DisplayTextID - ld a, $ff - ld [wJoypadForbiddenButtonsMask], a - ret - -SafariZoneEntranceScript3: ; 75240 (1d:5240) - call Func_752b4 - ret nz - xor a - ld [wJoypadForbiddenButtonsMask], a - ld a, $5 - ld [W_SAFARIZONEENTRANCECURSCRIPT], a - ret - -SafariZoneEntranceScript5: ; 7524e (1d:524e) - ld a, $4 - ld [$d528], a - ld hl, $d790 - bit 6, [hl] - res 6, [hl] - jr z, .asm_7527f ; 0x7525a $23 - res 7, [hl] - call UpdateSprites - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - ld a, $6 - ld [$ff8c], a - call DisplayTextID - xor a - ld [$da47], a - ld a, $80 - ld c, $3 - call Func_752a3 - ld a, $4 - ld [W_SAFARIZONEENTRANCECURSCRIPT], a - jr .asm_75286 ; 0x7527d $7 -.asm_7527f - ld a, $5 - ld [$ff8c], a - call DisplayTextID -.asm_75286 - ret - -SafariZoneEntranceScript4: ; 75287 (1d:5287) - call Func_752b4 - ret nz - xor a - ld [wJoypadForbiddenButtonsMask], a - ld a, $0 - ld [W_SAFARIZONEENTRANCECURSCRIPT], a - ret - -SafariZoneEntranceScript6: ; 75295 (1d:5295) - call Func_752b4 - ret nz - call Delay3 - ld a, [$cf0d] - ld [W_SAFARIZONEENTRANCECURSCRIPT], a - ret - -Func_752a3: ; 752a3 (1d:52a3) - push af - ld b, $0 - ld a, c - ld [$cd38], a - ld hl, $ccd3 - pop af - call FillMemory - jp Func_3486 - -Func_752b4: ; 752b4 (1d:52b4) - ld a, [$cd38] - and a - ret - -SafariZoneEntranceTextPointers: ; 752b9 (1d:52b9) - dw SafariZoneEntranceText1 - dw SafariZoneEntranceText2 - dw SafariZoneEntranceText3 - dw SafariZoneEntranceText4 - dw SafariZoneEntranceText5 - dw SafariZoneEntranceText6 - -SafariZoneEntranceText3: ; 752c5 (1d:52c5) -SafariZoneEntranceText1: ; 752c5 (1d:52c5) - TX_FAR _SafariZoneEntranceText1 - db "@" - -SafariZoneEntranceText4: ; 752ca (1d:52ca) - TX_FAR UnnamedText_9e6e4 ; 0x9e6e4 - db $8 - ld a, $13 - ld [$d125], a - call DisplayTextBoxID - call YesNoChoice - ld a, [$cc26] - and a - jp nz, .asm_75346 - xor a - ld [$ff9f], a - ld a, $5 - ld [$ffa0], a - ld a, $0 - ld [$ffa1], a - call HasEnoughMoney - jr nc, .asm_752f9 ; 0x752ef $8 - ld hl, UnnamedText_7536a - call PrintText - jr .asm_7534c ; 0x752f7 $53 -.asm_752f9 - xor a - ld [$cd3d], a - ld a, $5 - ld [$cd3e], a - ld a, $0 - ld [$cd3f], a - ld hl, $cd3f - ld de, $d349 - ld c, $3 - ld a, $c - call Predef - ld a, $13 - ld [$d125], a - call DisplayTextBoxID - ld hl, UnnamedText_7535b - call PrintText - ld a, $1e - ld [$da47], a - ld a, 502 / $100 - ld [wSafariSteps], a - ld a, 502 % $100 - ld [wSafariSteps + 1], a - ld a, $40 - ld c, $3 - call Func_752a3 - ld hl, $d790 - set 7, [hl] - res 6, [hl] - ld a, $3 - ld [W_SAFARIZONEENTRANCECURSCRIPT], a - jr .asm_75358 ; 0x75344 $12 -.asm_75346 - ld hl, UnnamedText_75365 - call PrintText -.asm_7534c - ld a, $80 - ld c, $1 - call Func_752a3 - ld a, $4 - ld [W_SAFARIZONEENTRANCECURSCRIPT], a -.asm_75358 - jp TextScriptEnd - -UnnamedText_7535b: ; 7535b (1d:535b) - TX_FAR UnnamedText_9e747 ; 0x9e747 - db $0B - -UnnamedText_75360: ; 75360 (1d:5360) - TX_FAR _UnnamedText_75360 - db "@" - -UnnamedText_75365: ; 75365 (1d:5365) - TX_FAR _UnnamedText_75365 - db "@" +INCLUDE "data/mapHeaders/safarizoneentrance.asm" -UnnamedText_7536a: ; 7536a (1d:536a) - TX_FAR _UnnamedText_7536a - db "@" +INCLUDE "scripts/safarizoneentrance.asm" -SafariZoneEntranceText5: ; 7536f (1d:536f) - TX_FAR UnnamedText_9e814 ; 0x9e814 - db $8 - call YesNoChoice - ld a, [$cc26] - and a - jr nz, .asm_7539c ; 0x7537b $1f - ld hl, UnnamedText_753bb - call PrintText - xor a - ld [$c109], a - ld a, $80 - ld c, $3 - call Func_752a3 - ld hl, $d790 - res 6, [hl] - res 7, [hl] - ld a, $0 - ld [$cf0d], a - jr .asm_753b3 ; 0x7539a $17 -.asm_7539c - ld hl, UnnamedText_753c0 - call PrintText - ld a, $4 - ld [$c109], a - ld a, $40 - ld c, $1 - call Func_752a3 - ld a, $5 - ld [$cf0d], a -.asm_753b3 - ld a, $6 - ld [W_SAFARIZONEENTRANCECURSCRIPT], a - jp TextScriptEnd - -UnnamedText_753bb: ; 753bb (1d:53bb) - TX_FAR _UnnamedText_753bb - db "@" - -UnnamedText_753c0: ; 753c0 (1d:53c0) - TX_FAR _UnnamedText_753c0 - db "@" - -SafariZoneEntranceText6: ; 753c5 (1d:53c5) - TX_FAR _UnnamedText_753c5 - db "@" - -SafariZoneEntranceText2: ; 753ca (1d:53ca) - db $08 ; asm - ld hl, UnnamedText_753e6 - call PrintText - call YesNoChoice - ld a, [$cc26] - and a - ld hl, UnnamedText_753f0 - jr nz, .asm_278a6 ; 0x753db - ld hl, UnnamedText_753eb -.asm_278a6 ; 0x753e0 - call PrintText - jp TextScriptEnd - -UnnamedText_753e6: ; 753e6 (1d:53e6) - TX_FAR _UnnamedText_753e6 - db "@" - -UnnamedText_753eb: ; 753eb (1d:53eb) - TX_FAR _UnnamedText_753eb - db "@" - -UnnamedText_753f0: ; 753f0 (1d:53f0) - TX_FAR _UnnamedText_753f0 - db "@" - -SafariZoneEntranceObject: ; 0x753f5 (size=48) - db $a ; border tile - - db $4 ; warps - db $5, $3, $4, $ff - db $5, $4, $4, $ff - db $0, $3, $0, SAFARI_ZONE_CENTER - db $0, $4, $1, SAFARI_ZONE_CENTER - - db $0 ; signs - - db $2 ; people - db SPRITE_WHITE_PLAYER, $2 + 4, $6 + 4, $ff, $d2, $1 ; person - db SPRITE_WHITE_PLAYER, $4 + 4, $1 + 4, $ff, $d3, $2 ; person - - ; warp-to - EVENT_DISP SAFARI_ZONE_ENTRANCE_WIDTH, $5, $3 - EVENT_DISP SAFARI_ZONE_ENTRANCE_WIDTH, $5, $4 - EVENT_DISP SAFARI_ZONE_ENTRANCE_WIDTH, $0, $3 ; SAFARI_ZONE_CENTER - EVENT_DISP SAFARI_ZONE_ENTRANCE_WIDTH, $0, $4 ; SAFARI_ZONE_CENTER +INCLUDE "data/mapObjects/safarizoneentrance.asm" SafariZoneEntranceBlocks: ; 75425 (1d:5425) INCBIN "maps/safarizoneentrance.blk" -FuchsiaGym_h: ; 0x75431 to 0x7543d (12 bytes) (id=157) - db GYM ; tileset - db FUCHSIA_GYM_HEIGHT, FUCHSIA_GYM_WIDTH ; dimensions (y, x) - dw FuchsiaGymBlocks, FuchsiaGymTextPointers, FuchsiaGymScript ; blocks, texts, scripts - db $00 ; connections - dw FuchsiaGymObject ; objects - -FuchsiaGymScript: ; 7543d (1d:543d) - call FuchsiaGymScript_75453 - call EnableAutoTextBoxDrawing - ld hl, FuchsiaGymTrainerHeaders - ld de, FuchsiaGymScriptPointers - ld a, [W_FUCHSIAGYMCURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_FUCHSIAGYMCURSCRIPT], a - ret - -FuchsiaGymScript_75453: ; 75453 (1d:5453) - ld hl, $D126 - bit 6, [hl] - res 6, [hl] - ret z - ld hl, Gym5CityName - ld de, Gym5LeaderName - call LoadGymLeaderAndCityName - ret - -Gym5CityName: ; 75465 (1d:5465) - db "FUCHSIA CITY@" -Gym5LeaderName: ; 75472 (1d:5472) - db "KOGA@" - -Func_75477: ; 75477 (1d:5477) - xor a - ld [wJoypadForbiddenButtonsMask], a - ld [W_FUCHSIAGYMCURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -FuchsiaGymScriptPointers: ; 75482 (1d:5482) - dw CheckFightingMapTrainers - dw Func_324c - dw EndTrainerBattle - dw FuchsiaGymScript3 - -FuchsiaGymScript3: ; 7548a (1d:548a) - ld a, [W_ISINBATTLE] ; $d057 - cp $ff - jp z, Func_75477 - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a -FuchsiaGymScript3_75497: ; 75497 (1d:5497) - ld a, $9 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - ld hl, $d792 - set 1, [hl] - ld bc, (TM_06 << 8) | 1 - call GiveItem - jr nc, .BagFull - ld a, $a - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - ld hl, $d792 - set 0, [hl] - jr .asm_754c0 -.BagFull - ld a, $b - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID -.asm_754c0 - ld hl, W_OBTAINEDBADGES - set 4, [hl] - ld hl, $d72a - set 4, [hl] - - ; deactivate gym trainers - ld a, [$d792] - or %11111100 - ld [$d792], a - - jp Func_75477 - -FuchsiaGymTextPointers: ; 754d5 (1d:54d5) - dw FuchsiaGymText1 - dw FuchsiaGymText2 - dw FuchsiaGymText3 - dw FuchsiaGymText4 - dw FuchsiaGymText5 - dw FuchsiaGymText6 - dw FuchsiaGymText7 - dw FuchsiaGymText8 - dw FuchsiaGymText9 - dw FuchsiaGymText10 - dw FuchsiaGymText11 - -FuchsiaGymTrainerHeaders: ; 754eb (1d:54eb) -FuchsiaGymTrainerHeader0: ; 754eb (1d:54eb) - db $2 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d792 ; flag's byte - dw FuchsiaGymBattleText1 ; 0x55ae TextBeforeBattle - dw FuchsiaGymAfterBattleText1 ; 0x55b8 TextAfterBattle - dw FuchsiaGymEndBattleText1 ; 0x55b3 TextEndBattle - dw FuchsiaGymEndBattleText1 ; 0x55b3 TextEndBattle - -FuchsiaGymTrainerHeader2: ; 754f7 (1d:54f7) - db $3 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d792 ; flag's byte - dw FuchsiaGymBattleText2 ; 0x55c7 TextBeforeBattle - dw FuchsiaGymAfterBattleText2 ; 0x55d1 TextAfterBattle - dw FuchsiaGymEndBattleText2 ; 0x55cc TextEndBattle - dw FuchsiaGymEndBattleText2 ; 0x55cc TextEndBattle - -FuchsiaGymTrainerHeader3: ; 75503 (1d:5503) - db $4 ; flag's bit - db ($4 << 4) ; trainer's view range - dw $d792 ; flag's byte - dw FuchsiaGymBattleText3 ; 0x55e0 TextBeforeBattle - dw FuchsiaGymAfterBattleText3 ; 0x55ea TextAfterBattle - dw FuchsiaGymEndBattleText3 ; 0x55e5 TextEndBattle - dw FuchsiaGymEndBattleText3 ; 0x55e5 TextEndBattle - -FuchsiaGymTrainerHeader4: ; 7550f (1d:550f) - db $5 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d792 ; flag's byte - dw FuchsiaGymBattleText4 ; 0x55f9 TextBeforeBattle - dw FuchsiaGymAfterBattleText4 ; 0x5603 TextAfterBattle - dw FuchsiaGymEndBattleText4 ; 0x55fe TextEndBattle - dw FuchsiaGymEndBattleText4 ; 0x55fe TextEndBattle - -FuchsiaGymTrainerHeader5: ; 7551b (1d:551b) - db $6 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d792 ; flag's byte - dw FuchsiaGymBattleText5 ; 0x5612 TextBeforeBattle - dw FuchsiaGymAfterBattleText5 ; 0x561c TextAfterBattle - dw FuchsiaGymEndBattleText5 ; 0x5617 TextEndBattle - dw FuchsiaGymEndBattleText5 ; 0x5617 TextEndBattle - -FuchsiaGymTrainerHeader6: ; 75527 (1d:5527) - db $7 ; flag's bit - db ($2 << 4) ; trainer's view range - dw $d792 ; flag's byte - dw FuchsiaGymBattleText6 ; 0x562b TextBeforeBattle - dw FuchsiaGymAfterBattleText6 ; 0x5635 TextAfterBattle - dw FuchsiaGymEndBattleText6 ; 0x5630 TextEndBattle - dw FuchsiaGymEndBattleText6 ; 0x5630 TextEndBattle +INCLUDE "data/mapHeaders/fuchsiagym.asm" - db $ff +INCLUDE "scripts/fuchsiagym.asm" -FuchsiaGymText1: ; 75534 (1d:5534) - db $08 ; asm - ld a, [$d792] - bit 1, a - jr z, .asm_181b6 ; 0x7553a - bit 0, a - jr nz, .asm_adc3b ; 0x7553e - call z, FuchsiaGymScript3_75497 - call DisableWaitingAfterTextDisplay - jr .asm_e84c6 ; 0x75546 -.asm_adc3b ; 0x75548 - ld hl, UnnamedText_7558b - call PrintText - jr .asm_e84c6 ; 0x7554e -.asm_181b6 ; 0x75550 - ld hl, UnnamedText_75581 - call PrintText - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, UnnamedText_75586 - ld de, UnnamedText_75586 - call PreBattleSaveRegisters - ldh a, [$8c] - ld [$cf13], a - call EngageMapTrainer - call InitBattleEnemyParameters - ld a, $5 - ld [$d05c], a - xor a - ldh [$b4], a - ld a, $3 - ld [W_FUCHSIAGYMCURSCRIPT], a -.asm_e84c6 ; 0x7557e - jp TextScriptEnd - -UnnamedText_75581: ; 75581 (1d:5581) - TX_FAR _UnnamedText_75581 - db "@" - -UnnamedText_75586: ; 75586 (1d:5586) - TX_FAR _UnnamedText_75586 - db "@" - -UnnamedText_7558b: ; 7558b (1d:558b) - TX_FAR _UnnamedText_7558b - db "@" - -FuchsiaGymText9: ; 75590 (1d:5590) - TX_FAR _UnnamedText_75590 - db "@" - -FuchsiaGymText10: ; 75595 (1d:5595) - TX_FAR _ReceivedTM06Text ; 0xa00eb - db $11 - -TM06ExplanationText: ; 7559a (1d:559a) - TX_FAR _TM06ExplanationText - db "@" - -FuchsiaGymText11: ; 7559f (1d:559f) - TX_FAR _TM06NoRoomText - db "@" - -FuchsiaGymText2: ; 755a4 (1d:55a4) - db $08 ; asm - ld hl, FuchsiaGymTrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -FuchsiaGymBattleText1: ; 755ae (1d:55ae) - TX_FAR _FuchsiaGymBattleText1 - db "@" - -FuchsiaGymEndBattleText1: ; 755b3 (1d:55b3) - TX_FAR _FuchsiaGymEndBattleText1 - db "@" - -FuchsiaGymAfterBattleText1: ; 755b8 (1d:55b8) - TX_FAR _FuchsiaGymAfterBattleText1 - db "@" - -FuchsiaGymText3: ; 755bd (1d:55bd) - db $08 ; asm - ld hl, FuchsiaGymTrainerHeader2 - call TalkToTrainer - jp TextScriptEnd - -FuchsiaGymBattleText2: ; 755c7 (1d:55c7) - TX_FAR _FuchsiaGymBattleText2 - db "@" - -FuchsiaGymEndBattleText2: ; 755cc (1d:55cc) - TX_FAR _FuchsiaGymEndBattleText2 - db "@" - -FuchsiaGymAfterBattleText2: ; 755d1 (1d:55d1) - TX_FAR _FuchsiaGymAfterBattleText2 - db "@" - -FuchsiaGymText4: ; 755d6 (1d:55d6) - db $08 ; asm - ld hl, FuchsiaGymTrainerHeader3 - call TalkToTrainer - jp TextScriptEnd - -FuchsiaGymBattleText3: ; 755e0 (1d:55e0) - TX_FAR _FuchsiaGymBattleText3 - db "@" - -FuchsiaGymEndBattleText3: ; 755e5 (1d:55e5) - TX_FAR _FuchsiaGymEndBattleText3 - db "@" - -FuchsiaGymAfterBattleText3: ; 755ea (1d:55ea) - TX_FAR _FuchsiaGymAfterBattleText3 - db "@" - -FuchsiaGymText5: ; 755ef (1d:55ef) - db $08 ; asm - ld hl, FuchsiaGymTrainerHeader4 - call TalkToTrainer - jp TextScriptEnd - -FuchsiaGymBattleText4: ; 755f9 (1d:55f9) - TX_FAR _FuchsiaGymBattleText4 - db "@" - -FuchsiaGymEndBattleText4: ; 755fe (1d:55fe) - TX_FAR _FuchsiaGymEndBattleText4 - db "@" - -FuchsiaGymAfterBattleText4: ; 75603 (1d:5603) - TX_FAR _FuchsiaGymAfterBattleText4 - db "@" - -FuchsiaGymText6: ; 75608 (1d:5608) - db $08 ; asm - ld hl, FuchsiaGymTrainerHeader5 - call TalkToTrainer - jp TextScriptEnd - -FuchsiaGymBattleText5: ; 75612 (1d:5612) - TX_FAR _FuchsiaGymBattleText5 - db "@" - -FuchsiaGymEndBattleText5: ; 75617 (1d:5617) - TX_FAR _FuchsiaGymEndBattleText5 - db "@" - -FuchsiaGymAfterBattleText5: ; 7561c (1d:561c) - TX_FAR _FuchsiaGymAfterBattleText5 - db "@" - -FuchsiaGymText7: ; 75621 (1d:5621) - db $08 ; asm - ld hl, FuchsiaGymTrainerHeader6 - call TalkToTrainer - jp TextScriptEnd - -FuchsiaGymBattleText6: ; 7562b (1d:562b) - TX_FAR _FuchsiaGymBattleText6 - db "@" - -FuchsiaGymEndBattleText6: ; 75630 (1d:5630) - TX_FAR _FuchsiaGymEndBattleText6 - db "@" - -FuchsiaGymAfterBattleText6: ; 75635 (1d:5635) - TX_FAR _FuchsiaGymAfterBattleText6 - db "@" - -FuchsiaGymText8: ; 7563a (1d:563a) - db $08 ; asm - ld a, [$d792] - bit 1, a - ld hl, UnnamedText_75653 - jr nz, .asm_50671 ; 0x75643 - ld hl, UnnamedText_7564e -.asm_50671 ; 0x75648 - call PrintText - jp TextScriptEnd - -UnnamedText_7564e: ; 7564e (1d:564e) - TX_FAR _UnnamedText_7564e - db "@" - -UnnamedText_75653: ; 75653 (1d:5653) - TX_FAR _UnnamedText_75653 - db "@" - -FuchsiaGymObject: ; 0x75658 (size=82) - db $3 ; border tile - - db $2 ; warps - db $11, $4, $5, $ff - db $11, $5, $5, $ff - - db $0 ; signs - - db $8 ; people - db SPRITE_BLACKBELT, $a + 4, $4 + 4, $ff, $d0, $41, KOGA + $C8, $1 ; trainer - db SPRITE_ROCKER, $d + 4, $8 + 4, $ff, $d0, $42, JUGGLER + $C8, $7 ; trainer - db SPRITE_ROCKER, $8 + 4, $7 + 4, $ff, $d3, $43, JUGGLER + $C8, $3 ; trainer - db SPRITE_ROCKER, $c + 4, $1 + 4, $ff, $d0, $44, JUGGLER + $C8, $8 ; trainer - db SPRITE_ROCKER, $5 + 4, $3 + 4, $ff, $d1, $45, TAMER + $C8, $1 ; trainer - db SPRITE_ROCKER, $2 + 4, $8 + 4, $ff, $d0, $46, TAMER + $C8, $2 ; trainer - db SPRITE_ROCKER, $7 + 4, $2 + 4, $ff, $d2, $47, JUGGLER + $C8, $4 ; trainer - db SPRITE_GYM_HELPER, $f + 4, $7 + 4, $ff, $d0, $8 ; person - - ; warp-to - EVENT_DISP FUCHSIA_GYM_WIDTH, $11, $4 - EVENT_DISP FUCHSIA_GYM_WIDTH, $11, $5 +INCLUDE "data/mapObjects/fuchsiagym.asm" FuchsiaGymBlocks: ; 756aa (1d:56aa) INCBIN "maps/fuchsiagym.blk" -FuchsiaMeetingRoom_h: ; 0x756d7 to 0x756e3 (12 bytes) (id=158) - db LAB ; tileset - db FUCHSIA_MEETING_ROOM_HEIGHT, FUCHSIA_MEETING_ROOM_WIDTH ; dimensions (y, x) - dw FuchsiaMeetingRoomBlocks, FuchsiaMeetingRoomTextPointers, FuchsiaMeetingRoomScript ; blocks, texts, scripts - db $00 ; connections - dw FuchsiaMeetingRoomObject ; objects - -FuchsiaMeetingRoomScript: ; 756e3 (1d:56e3) - call EnableAutoTextBoxDrawing - ret - -FuchsiaMeetingRoomTextPointers: ; 756e7 (1d:56e7) - dw FuchsiaMeetingRoomText1 - dw FuchsiaMeetingRoomText2 - dw FuchsiaMeetingRoomText3 +INCLUDE "data/mapHeaders/fuchsiameetingroom.asm" -FuchsiaMeetingRoomText1: ; 756ed (1d:56ed) - TX_FAR _FuchsiaMeetingRoomText1 - db "@" +INCLUDE "scripts/fuchsiameetingroom.asm" -FuchsiaMeetingRoomText2: ; 756f2 (1d:56f2) - TX_FAR _FuchsiaMeetingRoomText2 - db "@" - -FuchsiaMeetingRoomText3: ; 756f7 (1d:56f7) - TX_FAR _FuchsiaMeetingRoomText3 - db "@" - -FuchsiaMeetingRoomObject: ; 0x756fc (size=38) - db $17 ; border tile - - db $2 ; warps - db $7, $4, $6, $ff - db $7, $5, $6, $ff - - db $0 ; signs - - db $3 ; people - db SPRITE_WHITE_PLAYER, $1 + 4, $4 + 4, $ff, $d0, $1 ; person - db SPRITE_WHITE_PLAYER, $2 + 4, $0 + 4, $ff, $d1, $2 ; person - db SPRITE_WHITE_PLAYER, $1 + 4, $a + 4, $ff, $d0, $3 ; person - - ; warp-to - EVENT_DISP FUCHSIA_MEETING_ROOM_WIDTH, $7, $4 - EVENT_DISP FUCHSIA_MEETING_ROOM_WIDTH, $7, $5 +INCLUDE "data/mapObjects/fuchsiameetingroom.asm" FuchsiaMeetingRoomBlocks: ; 75722 (1d:5722) INCBIN "maps/fuchsiameetingroom.blk" -CinnabarGym_h: ; 0x7573e to 0x7574a (12 bytes) (id=166) - db FACILITY ; tileset - db CINNABAR_GYM_HEIGHT, CINNABAR_GYM_WIDTH ; dimensions (y, x) - dw CinnabarGymBlocks, CinnabarGymTextPointers, CinnabarGymScript ; blocks, texts, scripts - db $00 ; connections - dw CinnabarGymObject ; objects - -CinnabarGymScript: ; 7574a (1d:574a) - call CinnabarGymScript_75759 - call EnableAutoTextBoxDrawing - ld hl, CinnabarGymScriptPointers - ld a, [W_CINNABARGYMCURSCRIPT] - jp CallFunctionInTable - -CinnabarGymScript_75759: ; 75759 (1d:5759) - ld hl, $D126 - bit 6, [hl] - res 6, [hl] - push hl - call nz, CinnabarGymScript_75772 - pop hl - bit 5, [hl] - res 5, [hl] - call nz, Func_3ead - ld hl, $D79B - res 7, [hl] - ret -CinnabarGymScript_75772: ; 75772 (1d:5772) - ld hl, Gym7CityName - ld de, Gym7LeaderName - jp LoadGymLeaderAndCityName - -Gym7CityName: ; 7577b (1d:577b) - db "CINNABAR ISLAND@" -Gym7LeaderName: ; 7578b (1d:578b) - db "BLAINE@" - -CinnabarGymScript_75792: ; 75792 (1d:5792) - xor a - ld [wJoypadForbiddenButtonsMask], a - ld [W_CINNABARGYMCURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ld [$da38], a - ret - -CinnabarGymScript_757a0: ; 757a0 (1d:57a0) - ld a, [H_DOWNARROWBLINKCNT2] ; $ff8c - ld [wTrainerHeaderFlagBit], a - ret - -CinnabarGymScriptPointers: ; 757a6 (1d:57a6) - dw CinnabarGymScript0 - dw CinnabarGymScript1 - dw CinnabarGymScript2 - dw CinnabarGymScript3 - -CinnabarGymScript0: ; 757ae (1d:57ae) - ld a, [$da38] - and a - ret z - ld [$ff8c], a - cp $4 - jr nz, .asm_757c3 ; 0x757b7 $a - ld a, $4 - ld [$d528], a - ld de, MovementData_757d7 - jr .asm_757cb ; 0x757c1 $8 -.asm_757c3 - ld de, MovementData_757da - ld a, $1 - ld [$d528], a -.asm_757cb - call MoveSprite - ld a, $1 - ld [W_CINNABARGYMCURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -MovementData_757d7: ; 757d7 (1d:57d7) - db $80,$40,$FF - -MovementData_757da: ; 757da (1d:57da) - db $80,$FF - -CinnabarGymScript1: ; 757dc (1d:57dc) - ld a, [$d730] - bit 0, a - ret nz - xor a - ld [wJoypadForbiddenButtonsMask], a - ld a, [$da38] - ld [wTrainerHeaderFlagBit], a - ld [$ff8c], a - jp DisplayTextID +INCLUDE "data/mapHeaders/cinnabargym.asm" -Func_757f1: ; 757f1 (1d:57f1) - ld a, $10 - jp Predef ; indirect jump to HandleBitArray (f666 (3:7666)) +INCLUDE "scripts/cinnabargym.asm" -CinnabarGymScript2: ; 757f6 (1d:57f6) - ld a, [$d057] - cp $ff - jp z, CinnabarGymScript_75792 - ld a, [wTrainerHeaderFlagBit] - ld [$ffdb], a - ld c, a - ld b, $2 - ld hl, $d79a - call Func_757f1 - ld a, c - and a - jr nz, .asm_7581b ; 0x7580e $b - call WaitForSoundToFinish - ld a, (SFX_02_57 - SFX_Headers_02) / 3 - call PlaySound - call WaitForSoundToFinish -.asm_7581b - ld a, [wTrainerHeaderFlagBit] - ld [$ffdb], a - ld c, a - ld b, $1 - ld hl, $d79a - call Func_757f1 - ld a, [wTrainerHeaderFlagBit] - sub $2 - ld c, a - ld b, $1 - ld hl, $d79c - call Func_757f1 - call Func_3ead - xor a - ld [wJoypadForbiddenButtonsMask], a - ld [$da38], a - ld a, $0 - ld [W_CINNABARGYMCURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -CinnabarGymScript3: ; 7584a (1d:584a) - ld a, [$d057] - cp $ff - jp z, CinnabarGymScript_75792 - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a -CinnabarGymScript3_75857: ; 75857 (1d:5857) - ld a, $a - ld [$ff8c], a - call DisplayTextID - ld hl, $d79a - set 1, [hl] - ld bc, (TM_38 << 8) | 1 - call GiveItem - jr nc, .BagFull - ld a, $b - ld [$ff8c], a - call DisplayTextID - ld hl, $d79a - set 0, [hl] - jr .asm_75880 ; 0x75877 $7 -.BagFull - ld a, $c - ld [$ff8c], a - call DisplayTextID -.asm_75880 - ld hl, W_OBTAINEDBADGES - set 6, [hl] - ld hl, $d72a - set 6, [hl] - - ; deactivate gym trainers - ld a, [$d79a] - or %11111100 - ld [$d79a], a - ld hl, $d79b - set 0, [hl] - - ld hl, $d126 - set 5, [hl] - - jp CinnabarGymScript_75792 - -CinnabarGymTextPointers: ; 7589f (1d:589f) - dw CinnabarGymText1 - dw CinnabarGymText2 - dw CinnabarGymText3 - dw CinnabarGymText4 - dw CinnabarGymText5 - dw CinnabarGymText6 - dw CinnabarGymText7 - dw CinnabarGymText8 - dw CinnabarGymText9 - dw BlaineBadgeText - dw ReceivedTM38Text - dw TM38NoRoomText - -Func_758b7: ; 758b7 (1d:58b7) - ld a, [H_DOWNARROWBLINKCNT2] ; $ff8c - ld [$cf13], a - call EngageMapTrainer - call InitBattleEnemyParameters - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld a, [$cf13] - cp $1 - jr z, .asm_758d4 - ld a, $2 - jr .asm_758d6 -.asm_758d4 - ld a, $3 -.asm_758d6 - ld [W_CINNABARGYMCURSCRIPT], a - ld [W_CURMAPSCRIPT], a - jp TextScriptEnd - -CinnabarGymText1: ; 758df (1d:58df) - db $8 - ld a, [$d79a] - bit 1, a - jr z, .asm_d9332 ; 0x758e5 $16 - bit 0, a - jr nz, .asm_3012f ; 0x758e9 $9 - call z, CinnabarGymScript3_75857 - call DisableWaitingAfterTextDisplay - jp TextScriptEnd -.asm_3012f ; 0x758f4 - ld hl, BlaineFireBlastText - call PrintText - jp TextScriptEnd -.asm_d9332 ; 0x758fd - ld hl, BlaineBattleText - call PrintText - ld hl, BlaineEndBattleText - ld de, BlaineEndBattleText - call PreBattleSaveRegisters - ld a, $7 - ld [$d05c], a - jp Func_758b7 - -BlaineBattleText: ; 75914 (1d:5914) - TX_FAR _BlaineBattleText - db "@" - -BlaineEndBattleText: ; 75919 (1d:5919) - TX_FAR _BlaineEndBattleText - db $11 - db $d - db "@" - -BlaineFireBlastText: ; 75920 (1d:5920) - TX_FAR _BlaineFireBlastText - db "@" - -BlaineBadgeText: ; 75925 (1d:5925) - TX_FAR _BlaineBadgeText - db "@" - -ReceivedTM38Text: ; 7592a (1d:592a) - TX_FAR _ReceivedTM38Text ; 0xa09a8 - db $0B - TX_FAR _TM38ExplanationText - db "@" - -TM38NoRoomText: ; 75934 (1d:5934) - TX_FAR _TM38NoRoomText - db "@" - -CinnabarGymText2: ; 75939 (1d:5939) - db $08 ; asm - call CinnabarGymScript_757a0 - ld a, [$d79a] - bit 2, a - jr nz, .asm_46bb4 ; 0x75942 - ld hl, UnnamedText_7595f - call PrintText - ld hl, UnnamedText_75964 - ld de, UnnamedText_75964 ; $5964 XXX - call PreBattleSaveRegisters - jp Func_758b7 -.asm_46bb4 ; 0x75956 - ld hl, UnnamedText_75969 - call PrintText - jp TextScriptEnd - -UnnamedText_7595f: ; 7595f (1d:595f) - TX_FAR _UnnamedText_7595f - db "@" - -UnnamedText_75964: ; 75964 (1d:5964) - TX_FAR _UnnamedText_75964 - db "@" - -UnnamedText_75969: ; 75969 (1d:5969) - TX_FAR _UnnamedText_75969 - db "@" - -CinnabarGymText3: ; 7596e (1d:596e) - db $08 ; asm - call CinnabarGymScript_757a0 - ld a, [$d79a] - bit 3, a - jr nz, .asm_4b406 ; 0x75977 - ld hl, UnnamedText_75994 - call PrintText - ld hl, UnnamedText_75999 - ld de, UnnamedText_75999 ; $5999 XXX - call PreBattleSaveRegisters - jp Func_758b7 -.asm_4b406 ; 0x7598b - ld hl, UnnamedText_7599e - call PrintText - jp TextScriptEnd - -UnnamedText_75994: ; 75994 (1d:5994) - TX_FAR _UnnamedText_75994 - db "@" - -UnnamedText_75999: ; 75999 (1d:5999) - TX_FAR _UnnamedText_75999 - db "@" - -UnnamedText_7599e: ; 7599e (1d:599e) - TX_FAR _UnnamedText_7599e - db "@" - -CinnabarGymText4: ; 759a3 (1d:59a3) - db $08 ; asm - call CinnabarGymScript_757a0 - ld a, [$d79a] - bit 4, a - jr nz, .asm_c0673 ; 0x759ac - ld hl, UnnamedText_759c9 - call PrintText - ld hl, UnnamedText_759ce - ld de, UnnamedText_759ce ; $59ce XXX - call PreBattleSaveRegisters - jp Func_758b7 -.asm_c0673 ; 0x759c0 - ld hl, UnnamedText_759d3 - call PrintText - jp TextScriptEnd - -UnnamedText_759c9: ; 759c9 (1d:59c9) - TX_FAR _UnnamedText_759c9 - db "@" - -UnnamedText_759ce: ; 759ce (1d:59ce) - TX_FAR _UnnamedText_759ce - db "@" - -UnnamedText_759d3: ; 759d3 (1d:59d3) - TX_FAR _UnnamedText_759d3 - db "@" - -CinnabarGymText5: ; 759d8 (1d:59d8) - db $08 ; asm - call CinnabarGymScript_757a0 - ld a, [$d79a] - bit 5, a - jr nz, .asm_5cfd7 ; 0x759e1 - ld hl, UnnamedText_759fe - call PrintText - ld hl, UnnamedText_75a03 - ld de, UnnamedText_75a03 ; $5a03 XXX - call PreBattleSaveRegisters - jp Func_758b7 -.asm_5cfd7 ; 0x759f5 - ld hl, UnnamedText_75a08 - call PrintText - jp TextScriptEnd - -UnnamedText_759fe: ; 759fe (1d:59fe) - TX_FAR _UnnamedText_759fe - db "@" - -UnnamedText_75a03: ; 75a03 (1d:5a03) - TX_FAR _UnnamedText_75a03 - db "@" - -UnnamedText_75a08: ; 75a08 (1d:5a08) - TX_FAR _UnnamedText_75a08 - db "@" - -CinnabarGymText6: ; 75a0d (1d:5a0d) - db $08 ; asm - call CinnabarGymScript_757a0 - ld a, [$d79a] - bit 6, a - jr nz, .asm_776b4 ; 0x75a16 - ld hl, UnnamedText_75a33 - call PrintText - ld hl, UnnamedText_75a38 - ld de, UnnamedText_75a38 - call PreBattleSaveRegisters - jp Func_758b7 -.asm_776b4 ; 0x75a2a - ld hl, UnnamedText_75a3d - call PrintText - jp TextScriptEnd - -UnnamedText_75a33: ; 75a33 (1d:5a33) - TX_FAR _UnnamedText_75a33 - db "@" - -UnnamedText_75a38: ; 75a38 (1d:5a38) - TX_FAR _UnnamedText_75a38 - db "@" - -UnnamedText_75a3d: ; 75a3d (1d:5a3d) - TX_FAR _UnnamedText_75a3d - db "@" - -CinnabarGymText7: ; 75a42 (1d:5a42) - db $08 ; asm - call CinnabarGymScript_757a0 - ld a, [$d79a] - bit 7, a - jr nz, .asm_2f755 ; 0x75a4b - ld hl, UnnamedText_75a68 - call PrintText - ld hl, UnnamedText_75a6d - ld de, UnnamedText_75a6d - call PreBattleSaveRegisters - jp Func_758b7 -.asm_2f755 ; 0x75a5f - ld hl, UnnamedText_75a72 - call PrintText - jp TextScriptEnd - -UnnamedText_75a68: ; 75a68 (1d:5a68) - TX_FAR _UnnamedText_75a68 - db "@" - -UnnamedText_75a6d: ; 75a6d (1d:5a6d) - TX_FAR _UnnamedText_75a6d - db "@" - -UnnamedText_75a72: ; 75a72 (1d:5a72) - TX_FAR _UnnamedText_75a72 - db "@" - -CinnabarGymText8: ; 75a77 (1d:5a77) - db $08 ; asm - call CinnabarGymScript_757a0 - ld a, [$d79b] - bit 0, a - jr nz, .asm_d87be ; 0x75a80 - ld hl, UnnamedText_75a9d - call PrintText - ld hl, UnnamedText_75aa2 - ld de, UnnamedText_75aa2 ; $5aa2 XXX - call PreBattleSaveRegisters - jp Func_758b7 -.asm_d87be ; 0x75a94 - ld hl, UnnamedText_75aa7 - call PrintText - jp TextScriptEnd - -UnnamedText_75a9d: ; 75a9d (1d:5a9d) - TX_FAR _UnnamedText_75a9d - db "@" - -UnnamedText_75aa2: ; 75aa2 (1d:5aa2) - TX_FAR _UnnamedText_75aa2 - db "@" - -UnnamedText_75aa7: ; 75aa7 (1d:5aa7) - TX_FAR _UnnamedText_75aa7 - db "@" - -CinnabarGymText9: ; 75aac (1d:5aac) - db $08 ; asm - ld a, [$d79a] - bit 1, a - jr nz, .asm_627d9 ; 0x75ab2 - ld hl, UnnamedText_75ac2 - jr .asm_0b11d ; 0x75ab7 -.asm_627d9 ; 0x75ab9 - ld hl, UnnamedText_75ac7 -.asm_0b11d ; 0x75abc - call PrintText - jp TextScriptEnd - -UnnamedText_75ac2: ; 75ac2 (1d:5ac2) - TX_FAR _UnnamedText_75ac2 - db "@" - -UnnamedText_75ac7: ; 75ac7 (1d:5ac7) - TX_FAR _UnnamedText_75ac7 - db "@" - -CinnabarGymObject: ; 0x75acc (size=90) - db $2e ; border tile - - db $2 ; warps - db $11, $10, $1, $ff - db $11, $11, $1, $ff - - db $0 ; signs - - db $9 ; people - db SPRITE_FAT_BALD_GUY, $3 + 4, $3 + 4, $ff, $d0, $41, BLAINE + $C8, $1 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $2 + 4, $11 + 4, $ff, $d0, $42, SUPER_NERD + $C8, $9 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $8 + 4, $11 + 4, $ff, $d0, $43, BURGLAR + $C8, $4 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $4 + 4, $b + 4, $ff, $d0, $44, SUPER_NERD + $C8, $a ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $8 + 4, $b + 4, $ff, $d0, $45, BURGLAR + $C8, $5 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $e + 4, $b + 4, $ff, $d0, $46, SUPER_NERD + $C8, $b ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $e + 4, $3 + 4, $ff, $d0, $47, BURGLAR + $C8, $6 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $8 + 4, $3 + 4, $ff, $d0, $48, SUPER_NERD + $C8, $c ; trainer - db SPRITE_GYM_HELPER, $d + 4, $10 + 4, $ff, $d0, $9 ; person - - ; warp-to - EVENT_DISP CINNABAR_GYM_WIDTH, $11, $10 - EVENT_DISP CINNABAR_GYM_WIDTH, $11, $11 +INCLUDE "data/mapObjects/cinnabargym.asm" CinnabarGymBlocks: ; 75b26 (1d:5b26) INCBIN "maps/cinnabargym.blk" -Lab1_h: ; 0x75b80 to 0x75b8c (12 bytes) (id=167) - db LAB ; tileset - db CINNABAR_LAB_1_HEIGHT, CINNABAR_LAB_1_WIDTH ; dimensions (y, x) - dw Lab1Blocks, Lab1TextPointers, Lab1Script ; blocks, texts, scripts - db $00 ; connections - dw Lab1Object ; objects +INCLUDE "data/mapHeaders/lab1.asm" -Lab1Script: ; 75b8c (1d:5b8c) - call EnableAutoTextBoxDrawing - ret +INCLUDE "scripts/lab1.asm" -Lab1TextPointers: ; 75b90 (1d:5b90) - dw Lab1Text1 - dw Lab1Text2 - dw Lab1Text3 - dw Lab1Text4 - dw Lab1Text5 - -Lab1Text1: ; 75b9a (1d:5b9a) - TX_FAR _Lab1Text1 - db "@" - -Lab1Text2: ; 75b9f (1d:5b9f) - TX_FAR _Lab1Text2 - db "@" - -Lab1Text3: ; 75ba4 (1d:5ba4) - TX_FAR _Lab1Text3 - db "@" - -Lab1Text4: ; 75ba9 (1d:5ba9) - TX_FAR _Lab1Text4 - db "@" - -Lab1Text5: ; 75bae (1d:5bae) - TX_FAR _Lab1Text5 - db "@" - -Lab1Object: ; 0x75bb3 (size=62) - db $17 ; border tile - - db $5 ; warps - db $7, $2, $2, $ff - db $7, $3, $2, $ff - db $4, $8, $0, CINNABAR_LAB_2 - db $4, $c, $0, CINNABAR_LAB_3 - db $4, $10, $0, CINNABAR_LAB_4 - - db $4 ; signs - db $2, $3, $2 ; Lab1Text2 - db $4, $9, $3 ; Lab1Text3 - db $4, $d, $4 ; Lab1Text4 - db $4, $11, $5 ; Lab1Text5 - - db $1 ; people - db SPRITE_FISHER, $3 + 4, $1 + 4, $ff, $ff, $1 ; person - - ; warp-to - EVENT_DISP CINNABAR_LAB_1_WIDTH, $7, $2 - EVENT_DISP CINNABAR_LAB_1_WIDTH, $7, $3 - EVENT_DISP CINNABAR_LAB_1_WIDTH, $4, $8 ; CINNABAR_LAB_2 - EVENT_DISP CINNABAR_LAB_1_WIDTH, $4, $c ; CINNABAR_LAB_3 - EVENT_DISP CINNABAR_LAB_1_WIDTH, $4, $10 ; CINNABAR_LAB_4 +INCLUDE "data/mapObjects/lab1.asm" Lab1Blocks: ; 75bf1 (1d:5bf1) INCBIN "maps/lab1.blk" -Lab2_h: ; 0x75c15 to 0x75c21 (12 bytes) (id=168) - db LAB ; tileset - db CINNABAR_LAB_2_HEIGHT, CINNABAR_LAB_2_WIDTH ; dimensions (y, x) - dw Lab2Blocks, Lab2TextPointers, Lab2Script ; blocks, texts, scripts - db $00 ; connections - dw Lab2Object ; objects - -Lab2Script: ; 75c21 (1d:5c21) - jp EnableAutoTextBoxDrawing - -Lab2TextPointers: ; 75c24 (1d:5c24) - dw Lab2Text1 - dw Lab2Text2 - dw Lab2Text3 - -Lab2Text1: ; 75c2a (1d:5c2a) - TX_FAR _Lab2Text1 - db "@" - -Lab2Text2: ; 75c2f (1d:5c2f) - db $8 - ld a, $7 - ld [wWhichTrade], a - jr asm_78552 ; 0x75c35 $6 - -Lab2Text3: ; 75c37 (1d:5c37) - db $8 - ld a, $8 - ld [wWhichTrade], a -asm_78552: ; 75c3d (1d:5c3d) - ld a, $54 - call Predef - jp TextScriptEnd - -Lab2Object: ; 0x75c45 (size=38) - db $17 ; border tile - - db $2 ; warps - db $7, $2, $2, CINNABAR_LAB_1 - db $7, $3, $2, CINNABAR_LAB_1 +INCLUDE "data/mapHeaders/lab2.asm" - db $0 ; signs +INCLUDE "scripts/lab2.asm" - db $3 ; people - db SPRITE_BLACK_HAIR_BOY_2, $2 + 4, $3 + 4, $ff, $d0, $1 ; person - db SPRITE_OLD_PERSON, $4 + 4, $1 + 4, $ff, $ff, $2 ; person - db SPRITE_FOULARD_WOMAN, $5 + 4, $5 + 4, $ff, $d1, $3 ; person - - ; warp-to - EVENT_DISP CINNABAR_LAB_2_WIDTH, $7, $2 ; CINNABAR_LAB_1 - EVENT_DISP CINNABAR_LAB_2_WIDTH, $7, $3 ; CINNABAR_LAB_1 +INCLUDE "data/mapObjects/lab2.asm" Lab2Blocks: ; 75c6b (1d:5c6b) INCBIN "maps/lab2.blk" -Lab3_h: ; 0x75c7b to 0x75c87 (12 bytes) (id=169) - db LAB ; tileset - db CINNABAR_LAB_3_HEIGHT, CINNABAR_LAB_3_WIDTH ; dimensions (y, x) - dw Lab3Blocks, Lab3TextPointers, Lab3Script ; blocks, texts, scripts - db $00 ; connections - dw Lab3Object ; objects - -Lab3Script: ; 75c87 (1d:5c87) - jp EnableAutoTextBoxDrawing - -Lab3TextPointers: ; 75c8a (1d:5c8a) - dw Lab3Text1 - dw Lab3Text2 - dw Lab3Text3 - dw Lab3Text4 - dw Lab3Text5 - -Lab3Text1: ; 75c94 (1d:5c94) - db $08 ; asm - ld a, [$d7a1] - bit 7, a - jr nz, .asm_e551a ; 0x75c9a - ld hl, TM35PreReceiveText - call PrintText - ld bc, (TM_35 << 8) | 1 - call GiveItem - jr nc, .BagFull - ld hl, ReceivedTM35Text - call PrintText - ld hl, $d7a1 - set 7, [hl] - jr .asm_eb896 ; 0x75cb5 -.BagFull - ld hl, TM35NoRoomText - call PrintText - jr .asm_eb896 ; 0x75cbd -.asm_e551a ; 0x75cbf - ld hl, TM35ExplanationText - call PrintText -.asm_eb896 ; 0x75cc5 - jp TextScriptEnd - -TM35PreReceiveText: ; 75cc8 (1d:5cc8) - TX_FAR _TM35PreReceiveText - db "@" - -ReceivedTM35Text: ; 75ccd (1d:5ccd) - TX_FAR _ReceivedTM35Text ; 0xa0f48 - db $0B, "@" - -TM35ExplanationText: ; 75cd3 (1d:5cd3) - TX_FAR _TM35ExplanationText - db "@" +INCLUDE "data/mapHeaders/lab3.asm" -TM35NoRoomText: ; 75cd8 (1d:5cd8) - TX_FAR _TM35NoRoomText - db "@" +INCLUDE "scripts/lab3.asm" -Lab3Text2: ; 75cdd (1d:5cdd) - TX_FAR _Lab3Text2 - db "@" - -Lab3Text4: ; 75ce2 (1d:5ce2) -Lab3Text3: ; 75ce2 (1d:5ce2) - TX_FAR _Lab3Text3 - db "@" - -Lab3Text5: ; 75ce7 (1d:5ce7) - TX_FAR _Lab3Text5 - db "@" - -Lab3Object: ; 0x75cec (size=41) - db $17 ; border tile - - db $2 ; warps - db $7, $2, $3, CINNABAR_LAB_1 - db $7, $3, $3, CINNABAR_LAB_1 - - db $3 ; signs - db $4, $0, $3 ; Lab3Text3 - db $4, $1, $4 ; Lab3Text4 - db $1, $2, $5 ; Lab3Text5 - - db $2 ; people - db SPRITE_OAK_AIDE, $2 + 4, $7 + 4, $ff, $d0, $1 ; person - db SPRITE_OAK_AIDE, $3 + 4, $2 + 4, $fe, $2, $2 ; person - - ; warp-to - EVENT_DISP CINNABAR_LAB_3_WIDTH, $7, $2 ; CINNABAR_LAB_1 - EVENT_DISP CINNABAR_LAB_3_WIDTH, $7, $3 ; CINNABAR_LAB_1 +INCLUDE "data/mapObjects/lab3.asm" Lab3Blocks: ; 75d15 (1d:5d15) INCBIN "maps/lab3.blk" -Lab4_h: ; 0x75d25 to 0x75d31 (12 bytes) (id=170) - db LAB ; tileset - db CINNABAR_LAB_4_HEIGHT, CINNABAR_LAB_4_WIDTH ; dimensions (y, x) - dw Lab4Blocks, Lab4TextPointers, Lab4Script ; blocks, texts, scripts - db $00 ; connections - dw Lab4Object ; objects - -Lab4Script: ; 75d31 (1d:5d31) - jp EnableAutoTextBoxDrawing - -Lab4TextPointers: ; 75d34 (1d:5d34) - dw Lab4Text1 - dw Lab4Text2 - -Func_75d38: ; 75d38 (1d:5d38) - xor a - ld [$cd37], a - ld de, $cc5b - ld hl, FossilsList -.asm_75d42 - ld a, [hli] - and a - jr z, .asm_75d64 - push hl - push de - ld [$d11e], a - ld b, a - ld a, $1c - call Predef ; indirect jump to Func_f8a5 (f8a5 (3:78a5)) - pop de - pop hl - ld a, b - and a - jr z, .asm_75d42 - ld a, [$d11e] - ld [de], a - inc de - push hl - ld hl, $cd37 - inc [hl] - pop hl - jr .asm_75d42 -.asm_75d64 - ld a, $ff - ld [de], a - ret - -FossilsList: ; 75d68 (1d:5d68) - db DOME_FOSSIL - db HELIX_FOSSIL - db OLD_AMBER - db $00 - -Lab4Text1: ; 75d6c (1d:5d6c) - db $8 - ld a, [$d7a3] - bit 0, a - jr nz, .asm_75d96 ; 0x75d72 $22 - ld hl, UnnamedText_75dc6 - call PrintText - call Func_75d38 - ld a, [$cd37] - and a - jr z, .asm_75d8d ; 0x75d81 $a - callba GiveFossilToCinnabarLab - jr .asm_75d93 ; 0x75d8b $6 -.asm_75d8d - ld hl, UnnamedText_75dcb - call PrintText -.asm_75d93 - jp TextScriptEnd -.asm_75d96 - bit 1, a - jr z, .asm_75da2 ; 0x75d98 $8 - ld hl, UnnamedText_75dd0 - call PrintText - jr .asm_75d93 ; 0x75da0 $f1 -.asm_75da2 - call LoadFossilItemAndMonNameBank1D - ld hl, UnnamedText_75dd5 - call PrintText - ld hl, $d7a3 - set 2, [hl] - ld a, [W_FOSSILMON] - ld b, a - ld c, $1e - call GivePokemon - jr nc, .asm_75d93 ; 0x75db9 $d8 - ld hl, $d7a3 - res 0, [hl] - res 1, [hl] - res 2, [hl] - jr .asm_75d93 ; 0x75dc4 $cd - -UnnamedText_75dc6: ; 75dc6 (1d:5dc6) - TX_FAR _UnnamedText_75dc6 - db "@" - -UnnamedText_75dcb: ; 75dcb (1d:5dcb) - TX_FAR _UnnamedText_75dcb - db "@" - -UnnamedText_75dd0: ; 75dd0 (1d:5dd0) - TX_FAR _UnnamedText_75dd0 - db "@" - -UnnamedText_75dd5: ; 75dd5 (1d:5dd5) - TX_FAR _UnnamedText_75dd5 - db "@" - -Lab4Text2: ; 75dda (1d:5dda) - db $08 ; asm - ld a, $3 - ld [wWhichTrade], a - ld a, $54 - call Predef - jp TextScriptEnd - -LoadFossilItemAndMonNameBank1D: ; 75de8 (1d:5de8) - ld b, BANK(LoadFossilItemAndMonName) - ld hl, LoadFossilItemAndMonName - jp Bankswitch - -Lab4Object: ; 0x75df0 (size=32) - db $17 ; border tile - - db $2 ; warps - db $7, $2, $4, CINNABAR_LAB_1 - db $7, $3, $4, CINNABAR_LAB_1 +INCLUDE "data/mapHeaders/lab4.asm" - db $0 ; signs +INCLUDE "scripts/lab4.asm" - db $2 ; people - db SPRITE_OAK_AIDE, $2 + 4, $5 + 4, $fe, $2, $1 ; person - db SPRITE_OAK_AIDE, $6 + 4, $7 + 4, $ff, $d1, $2 ; person - - ; warp-to - EVENT_DISP CINNABAR_LAB_4_WIDTH, $7, $2 ; CINNABAR_LAB_1 - EVENT_DISP CINNABAR_LAB_4_WIDTH, $7, $3 ; CINNABAR_LAB_1 +INCLUDE "data/mapObjects/lab4.asm" Lab4Blocks: ; 75e10 (1d:5e10) INCBIN "maps/lab4.blk" -CinnabarPokecenter_h: ; 0x75e20 to 0x75e2c (12 bytes) (id=171) - db POKECENTER ; tileset - db CINNABAR_POKECENTER_HEIGHT, CINNABAR_POKECENTER_WIDTH ; dimensions (y, x) - dw CinnabarPokecenterBlocks, CinnabarPokecenterTextPointers, CinnabarPokecenterScript ; blocks, texts, scripts - db $00 ; connections - dw CinnabarPokecenterObject ; objects - -CinnabarPokecenterScript: ; 75e2c (1d:5e2c) - call Func_22fa - jp EnableAutoTextBoxDrawing - -CinnabarPokecenterTextPointers: ; 75e32 (1d:5e32) - dw CinnabarPokecenterText1 - dw CinnabarPokecenterText2 - dw CinnabarPokecenterText3 - dw CinnabarPokecenterText4 - -CinnabarPokecenterText1: ; 75e3a (1d:5e3a) - db $ff - -CinnabarPokecenterText2: ; 75e3b (1d:5e3b) - TX_FAR _CinnabarPokecenterText1 - db "@" - -CinnabarPokecenterText3: ; 75e40 (1d:5e40) - TX_FAR _CinnabarPokecenterText3 - db "@" - -CinnabarPokecenterText4: ; 75e45 (1d:5e45) - db $f6 - -CinnabarPokecenterObject: ; 0x75e46 (size=44) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $3, $ff - db $7, $4, $3, $ff +INCLUDE "data/mapHeaders/cinnabarpokecenter.asm" - db $0 ; signs +INCLUDE "scripts/cinnabarpokecenter.asm" - db $4 ; people - db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person - db SPRITE_LASS, $4 + 4, $9 + 4, $fe, $0, $2 ; person - db SPRITE_GENTLEMAN, $6 + 4, $2 + 4, $ff, $ff, $3 ; person - db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person +INCLUDE "data/mapObjects/cinnabarpokecenter.asm" - ; warp-to - EVENT_DISP CINNABAR_POKECENTER_WIDTH, $7, $3 - EVENT_DISP CINNABAR_POKECENTER_WIDTH, $7, $4 +INCLUDE "data/mapHeaders/cinnabarmart.asm" -CinnabarMart_h: ; 0x75e72 to 0x75e7e (12 bytes) (id=172) - db MART ; tileset - db CINNABAR_MART_HEIGHT, CINNABAR_MART_WIDTH ; dimensions (y, x) - dw CinnabarMartBlocks, CinnabarMartTextPointers, CinnabarMartScript ; blocks, texts, scripts - db $00 ; connections - dw CinnabarMartObject ; objects +INCLUDE "scripts/cinnabarmart.asm" -CinnabarMartScript: ; 75e7e (1d:5e7e) - jp EnableAutoTextBoxDrawing +INCLUDE "data/mapObjects/cinnabarmart.asm" -CinnabarMartTextPointers: ; 75e81 (1d:5e81) - dw CinnabarMartText1 - dw CinnabarMartText2 - dw CinnabarMartText3 - -CinnabarMartText2: ; 75e87 (1d:5e87) - TX_FAR _CinnabarMartText2 - db "@" - -CinnabarMartText3: ; 75e8c (1d:5e8c) - TX_FAR _CinnabarMartText3 - db "@" +INCLUDE "data/mapHeaders/copycatshouse1f.asm" -CinnabarMartObject: ; 0x75e91 (size=38) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $4, $ff - db $7, $4, $4, $ff - - db $0 ; signs - - db $3 ; people - db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person - db SPRITE_ERIKA, $2 + 4, $6 + 4, $ff, $ff, $2 ; person - db SPRITE_OAK_AIDE, $4 + 4, $3 + 4, $ff, $ff, $3 ; person - - ; warp-to - EVENT_DISP CINNABAR_MART_WIDTH, $7, $3 - EVENT_DISP CINNABAR_MART_WIDTH, $7, $4 - -CopycatsHouse1F_h: ; 0x75eb7 to 0x75ec3 (12 bytes) (id=175) - db REDS_HOUSE_1 ; tileset - db COPYCATS_HOUSE_1F_HEIGHT, COPYCATS_HOUSE_1F_WIDTH ; dimensions (y, x) - dw CopycatsHouse1FBlocks, CopycatsHouse1FTextPointers, CopycatsHouse1FScript ; blocks, texts, scripts - db $00 ; connections - dw CopycatsHouse1FObject ; objects - -CopycatsHouse1FScript: ; 75ec3 (1d:5ec3) - jp EnableAutoTextBoxDrawing - -CopycatsHouse1FTextPointers: ; 75ec6 (1d:5ec6) - dw CopycatsHouse1FText1 - dw CopycatsHouse1FText2 - dw CopycatsHouse1FText3 - -CopycatsHouse1FText1: ; 75ecc (1d:5ecc) - TX_FAR _CopycatsHouse1FText1 - db "@" - -CopycatsHouse1FText2: ; 75ed1 (1d:5ed1) - TX_FAR _CopycatsHouse1FText2 - db "@" - -CopycatsHouse1FText3: ; 75ed6 (1d:5ed6) - TX_FAR _CopycatsHouse1FText3 - db $8 - ld a, CHANSEY - call PlayCry - jp TextScriptEnd +INCLUDE "scripts/copycatshouse1f.asm" -CopycatsHouse1FObject: ; 0x75ee3 (size=46) - db $a ; border tile +INCLUDE "data/mapObjects/copycatshouse1f.asm" - db $3 ; warps - db $7, $2, $0, $ff - db $7, $3, $0, $ff - db $1, $7, $0, COPYCATS_HOUSE_2F +INCLUDE "data/mapHeaders/gary.asm" - db $0 ; signs +INCLUDE "scripts/gary.asm" - db $3 ; people - db SPRITE_MOM_GEISHA, $2 + 4, $2 + 4, $ff, $d0, $1 ; person - db SPRITE_FAT_BALD_GUY, $4 + 4, $5 + 4, $ff, $d2, $2 ; person - db SPRITE_CLEFAIRY, $4 + 4, $1 + 4, $fe, $1, $3 ; person - - ; warp-to - EVENT_DISP COPYCATS_HOUSE_1F_WIDTH, $7, $2 - EVENT_DISP COPYCATS_HOUSE_1F_WIDTH, $7, $3 - EVENT_DISP COPYCATS_HOUSE_1F_WIDTH, $1, $7 ; COPYCATS_HOUSE_2F - -Gary_h: ; 75f11 (1d:5f11) - db GYM ;tileset - db CHAMPIONS_ROOM_HEIGHT, CHAMPIONS_ROOM_WIDTH ; Height, Width - dw GaryBlocks, GaryTextPointers, GaryScript - db $0 ;No Connections - dw GaryObject - -GaryScript: ; 75f1d (1d:5f1d) - call EnableAutoTextBoxDrawing - ld hl, GaryScriptPointers - ld a, [W_GARYCURSCRIPT] - jp CallFunctionInTable - -GaryScript_75f29: ; 75f29 (1d:5f29) - xor a - ld [wJoypadForbiddenButtonsMask], a - ld [W_GARYCURSCRIPT], a - ret - -GaryScriptPointers: ; 75f31 (1d:5f31) - dw GaryScript0 - dw GaryScript1 - dw GaryScript2 - dw GaryScript3 - dw GaryScript4 - dw GaryScript5 - dw GaryScript6 - dw GaryScript7 - dw GaryScript8 - dw GaryScript9 - dw GaryScript10 - -GaryScript0: ; 75f47 (1d:5f47) - ret - -GaryScript1: ; 75f48 (1d:5f48) - ld a, $ff - ld [wJoypadForbiddenButtonsMask], a - ld hl, $ccd3 - ld de, RLEMovement75f63 - call DecodeRLEList - dec a - ld [$cd38], a - call Func_3486 - ld a, $2 - ld [W_GARYCURSCRIPT], a - ret - -RLEMovement75f63: ; 75f63 (1d:5f63) - db $40,1 - db $10,1 - db $40,3 - db $ff - -GaryScript2: ; 75f6a (1d:5f6a) - ld a, [$cd38] - and a - ret nz - call Delay3 - xor a - ld [wJoypadForbiddenButtonsMask], a - ld hl, $d355 - res 7, [hl] - ld a, $1 - ld [$ff8c], a - call DisplayTextID - call Delay3 - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, UnnamedText_760f9 - ld de, UnnamedText_760fe - call PreBattleSaveRegisters - ld a, $f3 - ld [$d059], a - - ; select which team to use during the encounter - ld a, [W_RIVALSTARTER] - cp SQUIRTLE - jr nz, .NotSquirtle ; 0x75f9f $4 - ld a, $1 - jr .done -.NotSquirtle - cp BULBASAUR - jr nz, .Charmander ; 0x75fa7 $4 - ld a, $2 - jr .done -.Charmander - ld a, $3 -.done - ld [W_TRAINERNO], a - - xor a - ld [H_CURRENTPRESSEDBUTTONS], a - ld a, $3 - ld [W_GARYCURSCRIPT], a - ret - -GaryScript3: ; 75fbb (1d:5fbb) - ld a, [W_ISINBATTLE] - cp $ff - jp z, GaryScript_75f29 - call UpdateSprites ; move sprites - ld hl, $d867 - set 1, [hl] - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - ld a, $1 - ld [$ff8c], a - call GaryScript_760c8 - ld a, $1 - ld [$ff8c], a - call SetSpriteMovementBytesToFF - ld a, $4 - ld [W_GARYCURSCRIPT], a - ret - -GaryScript4: ; 75fe4 (1d:5fe4) - callba Music_Cities1AlternateTempo - ld a, $2 - ld [$ff8c], a - call GaryScript_760c8 - ld a, $2 - ld [$ff8c], a - call SetSpriteMovementBytesToFF - ld de, MovementData_76014 - ld a, $2 - ld [$ff8c], a - call MoveSprite - ld a, $d6 - ld [$cc4d], a - ld a, $15 - call Predef - ld a, $5 - ld [W_GARYCURSCRIPT], a - ret - -MovementData_76014: ; 76014 (1d:6014) - db $40,$40,$40,$40,$40,$FF - -GaryScript5: ; 7601a (1d:601a) - ld a, [$d730] - bit 0, a - ret nz - ld a, $2 - ld [$d528], a - ld a, $1 - ld [$ff8c], a - ld a, $8 - ld [$ff8d], a - call Func_34a6 - ld a, $2 - ld [$ff8c], a - xor a - ld [$ff8d], a - call Func_34a6 ; face object - ld a, $3 - ld [$ff8c], a - call GaryScript_760c8 - ld a, $6 - ld [W_GARYCURSCRIPT], a - ret - -GaryScript6: ; 76047 (1d:6047) - ld a, $2 - ld [$ff8c], a - ld a, $c - ld [$ff8d], a - call Func_34a6 ; face object - ld a, $4 - ld [$ff8c], a - call GaryScript_760c8 - ld a, $7 - ld [W_GARYCURSCRIPT], a - ret - -GaryScript7: ; 7605f (1d:605f) - ld a, $2 - ld [$ff8c], a - xor a - ld [$ff8d], a - call Func_34a6 ; face object - ld a, $5 - ld [$ff8c], a - call GaryScript_760c8 - ld de, MovementData_76080 - ld a, $2 - ld [$ff8c], a - call MoveSprite - ld a, $8 - ld [W_GARYCURSCRIPT], a - ret - -MovementData_76080: ; 76080 (1d:6080) - db $40,$40,$FF - -GaryScript8: ; 76083 (1d:6083) - ld a, [$d730] - bit 0, a - ret nz - ld a, $d6 - ld [$cc4d], a - ld a, $11 - call Predef - ld a, $9 - ld [W_GARYCURSCRIPT], a - ret - -GaryScript9: ; 76099 (1d:6099) - ld a, $ff - ld [wJoypadForbiddenButtonsMask], a - ld hl, $ccd3 - ld de, RLEMovement760b4 - call DecodeRLEList - dec a - ld [$cd38], a - call Func_3486 - ld a, $a - ld [W_GARYCURSCRIPT], a - ret - -RLEMovement760b4 ; 760b4 (1d:60b4) - db $40,4 - db $20,1 - db $ff - -GaryScript10: ; 760b9 (1d:60b9) - ld a, [$cd38] - and a - ret nz - xor a - ld [wJoypadForbiddenButtonsMask], a - ld a, $0 - ld [W_GARYCURSCRIPT], a - ret - -GaryScript_760c8 ; 760c8 (1d:60c8) - ld a, $f0 - ld [wJoypadForbiddenButtonsMask], a - call DisplayTextID - ld a, $ff - ld [wJoypadForbiddenButtonsMask], a - ret - -GaryTextPointers: ; 760d6 (1d:60d6) - dw GaryText1 - dw GaryText2 - dw GaryText3 - dw GaryText4 - dw GaryText5 - -GaryText1: ; 760e0 (1d:60e0) - db $08 ; asm - ld a, [$d867] - bit 1, a - ld hl, UnnamedText_760f4 - jr z, .asm_17e9f ; 0x760e9 - ld hl, UnnamedText_76103 -.asm_17e9f ; 0x760ee - call PrintText - jp TextScriptEnd - -UnnamedText_760f4: ; 760f4 (1d:60f4) - TX_FAR _UnnamedText_760f4 - db "@" - -UnnamedText_760f9: ; 760f9 (1d:60f9) - TX_FAR _UnnamedText_760f9 - db "@" - -UnnamedText_760fe: ; 760fe (1d:60fe) - TX_FAR _UnnamedText_760fe - db "@" - -UnnamedText_76103: ; 76103 (1d:6103) - TX_FAR _UnnamedText_76103 - db "@" - -GaryText2: ; 76108 (1d:6108) - TX_FAR _GaryText2 - db "@" - -GaryText3: ; 7610d (1d:610d) - db $8 - ld a, [$d717] - ld [$d11e], a - call GetMonName - ld hl, UnnamedText_76120 - call PrintText - jp TextScriptEnd - -UnnamedText_76120: ; 76120 (1d:6120) - TX_FAR _UnnamedText_76120 - db "@" - -GaryText4: ; 76125 (1d:6125) - TX_FAR _UnnamedText_76125 - db "@" - -GaryText5: ; 7612a (1d:612a) - TX_FAR _UnnamedText_7612a - db "@" - -GaryObject: ; 0x7612f (size=48) - db $3 ; border tile - - db $4 ; warps - db $7, $3, $1, LANCES_ROOM - db $7, $4, $2, LANCES_ROOM - db $0, $3, $0, HALL_OF_FAME - db $0, $4, $0, HALL_OF_FAME - - db $0 ; signs - - db $2 ; people - db SPRITE_BLUE, $2 + 4, $4 + 4, $ff, $d0, $1 ; person - db SPRITE_OAK, $7 + 4, $3 + 4, $ff, $d1, $2 ; person - - ; warp-to - EVENT_DISP CHAMPIONS_ROOM_WIDTH, $7, $3 ; LANCES_ROOM - EVENT_DISP CHAMPIONS_ROOM_WIDTH, $7, $4 ; LANCES_ROOM - EVENT_DISP CHAMPIONS_ROOM_WIDTH, $0, $3 ; HALL_OF_FAME - EVENT_DISP CHAMPIONS_ROOM_WIDTH, $0, $4 ; HALL_OF_FAME +INCLUDE "data/mapObjects/gary.asm" GaryBlocks: ; 7615f (1d:615f) INCBIN "maps/gary.blk" -Lorelei_h: ; 0x7616f to 0x7617b (12 bytes) (id=245) - db GYM ; tileset - db LORELEIS_ROOM_HEIGHT, LORELEIS_ROOM_WIDTH ; dimensions (y, x) - dw LoreleiBlocks, LoreleiTextPointers, LoreleiScript ; blocks, texts, scripts - db $00 ; connections - dw LoreleiObject ; objects +INCLUDE "data/mapHeaders/lorelei.asm" -LoreleiScript: ; 7617b (1d:617b) - call LoreleiScript_76191 - call EnableAutoTextBoxDrawing - ld hl, LoreleiTrainerHeaders - ld de, LoreleiScriptPointers - ld a, [W_LORELEICURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_LORELEICURSCRIPT], a - ret +INCLUDE "scripts/lorelei.asm" -LoreleiScript_76191: ; 76191 (1d:6191) - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - ret z - ld hl, $d734 - set 1, [hl] - ld a, [$d863] - bit 1, a - jr z, .asm_761a9 - ld a, $5 - jr .asm_761ab -.asm_761a9 - ld a, $24 -.asm_761ab - ld [$d09f], a - ld bc, $2 - ld a, $17 - jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) - -Func_761b6: ; 761b6 (1d:61b6) - xor a - ld [W_LORELEICURSCRIPT], a - ret - -LoreleiScriptPointers: ; 761bb (1d:61bb) - dw LoreleiScript0 - dw Func_324c - dw LoreleiScript2 - dw LoreleiScript3 - dw LoreleiScript4 - -LoreleiScript4: ; 761c5 (1d:61c5) - ret -asm_761c6: ; 761c6 (1d:61c6) - ld hl, $ccd3 - ld a, $40 - ld [hli], a - ld [hli], a - ld [hli], a - ld [hli], a - ld [hli], a - ld [hl], a - ld a, $6 - ld [$cd38], a - call Func_3486 - ld a, $3 - ld [W_LORELEICURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret -LoreleiScript0: ; 761e2 (1d:61e2) - ld hl, CoordsData_76223 - call ArePlayerCoordsInArray - jp nc, CheckFightingMapTrainers - xor a - ld [H_NEWLYPRESSEDBUTTONS], a - ld [H_CURRENTPRESSEDBUTTONS], a - ld [$ccd3], a - ld [$cd38], a - ld a, [wWhichTrade] ; $cd3d - cp $3 - jr c, .asm_76206 - ld hl, $d863 - bit 6, [hl] - set 6, [hl] - jr z, asm_761c6 -.asm_76206 - ld a, $2 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - ld a, $40 - ld [$ccd3], a - ld a, $1 - ld [$cd38], a - call Func_3486 - ld a, $3 - ld [W_LORELEICURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -CoordsData_76223: ; 76223 (1d:6223) - db $0A,$04 - db $0A,$05 - db $0B,$04 - db $0B,$05 - db $FF - -LoreleiScript3: ; 7622c (1d:622c) - ld a, [$cd38] - and a - ret nz - call Delay3 - xor a - ld [wJoypadForbiddenButtonsMask], a - ld [W_LORELEICURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret -LoreleiScript2: ; 7623f (1d:623f) - call EndTrainerBattle - ld a, [W_ISINBATTLE] ; $d057 - cp $ff - jp z, Func_761b6 - ld a, $1 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - jp DisplayTextID - -LoreleiTextPointers: ; 76251 (1d:6251) - dw LoreleiText1 - dw LoreleiText2 - -LoreleiTrainerHeaders: ; 76255 (1d:6255) -LoreleiTrainerHeader0: ; 76255 (1d:6255) - db $1 ; flag's bit - db ($0 << 4) ; trainer's view range - dw $d863 ; flag's byte - dw LoreleiBeforeBattleText ; 0x626c TextBeforeBattle - dw LoreleiAfterBattleText ; 0x6276 TextAfterBattle - dw LoreleiEndBattleText ; 0x6271 TextEndBattle - dw LoreleiEndBattleText ; 0x6271 TextEndBattle - - db $ff - -LoreleiText1: ; 76262 (1d:6262) - db $08 ; asm - ld hl, LoreleiTrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -LoreleiBeforeBattleText: ; 7626c (1d:626c) - TX_FAR _LoreleiBeforeBattleText - db "@" - -LoreleiEndBattleText: ; 76271 (1d:6271) - TX_FAR _LoreleiEndBattleText - db "@" - -LoreleiAfterBattleText: ; 76276 (1d:6276) - TX_FAR _LoreleiAfterBattleText - db "@" - -LoreleiText2: ; 7627b (1d:627b) - TX_FAR _UnnamedText_7627b - db "@" - -LoreleiObject: ; 0x76280 (size=44) - db $3 ; border tile - - db $4 ; warps - db $b, $4, $2, INDIGO_PLATEAU_LOBBY - db $b, $5, $2, INDIGO_PLATEAU_LOBBY - db $0, $4, $0, BRUNOS_ROOM - db $0, $5, $1, BRUNOS_ROOM - - db $0 ; signs - - db $1 ; people - db SPRITE_LORELEI, $2 + 4, $5 + 4, $ff, $d0, $41, LORELEI + $C8, $1 ; trainer - - ; warp-to - EVENT_DISP LORELEIS_ROOM_WIDTH, $b, $4 ; INDIGO_PLATEAU_LOBBY - EVENT_DISP LORELEIS_ROOM_WIDTH, $b, $5 ; INDIGO_PLATEAU_LOBBY - EVENT_DISP LORELEIS_ROOM_WIDTH, $0, $4 ; BRUNOS_ROOM - EVENT_DISP LORELEIS_ROOM_WIDTH, $0, $5 ; BRUNOS_ROOM +INCLUDE "data/mapObjects/lorelei.asm" LoreleiBlocks: ; 762ac (1d:62ac) INCBIN "maps/lorelei.blk" -Bruno_h: ; 0x762ca to 0x762d6 (12 bytes) (id=246) - db GYM ; tileset - db BRUNOS_ROOM_HEIGHT, BRUNOS_ROOM_WIDTH ; dimensions (y, x) - dw BrunoBlocks, BrunoTextPointers, BrunoScript ; blocks, texts, scripts - db $00 ; connections - dw BrunoObject ; objects - -BrunoScript: ; 762d6 (1d:62d6) - call BrunoScript_762ec - call EnableAutoTextBoxDrawing - ld hl, BrunoTrainerHeaders - ld de, BrunoScriptPointers - ld a, [W_BRUNOCURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_BRUNOCURSCRIPT], a - ret - -BrunoScript_762ec: ; 762ec (1d:62ec) - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - ret z - ld a, [$d864] - bit 1, a - jr z, .asm_76300 - ld a, $5 - jp Func_76302 -.asm_76300 - ld a, $24 - -Func_76302: ; 76302 (1d:6302) - ld [$d09f], a - ld bc, $2 - ld a, $17 - jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) - -Func_7630d: ; 7630d (1d:630d) - xor a - ld [W_BRUNOCURSCRIPT], a - ret - -BrunoScriptPointers: ; 76312 (1d:6312) - dw BrunoScript0 - dw Func_324c - dw BrunoScript2 - dw BrunoScript3 - dw BrunoScript4 - -BrunoScript4: ; 7631c (1d:631c) - ret -asm_7631d: ; 7631d (1d:631d) - ld hl, $ccd3 - ld a, $40 - ld [hli], a - ld [hli], a - ld [hli], a - ld [hli], a - ld [hli], a - ld [hl], a - ld a, $6 - ld [$cd38], a - call Func_3486 - ld a, $3 - ld [W_BRUNOCURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -BrunoScript0: ; 76339 (1d:6339) - ld hl, CoordsData_7637a - call ArePlayerCoordsInArray - jp nc, CheckFightingMapTrainers - xor a - ld [H_NEWLYPRESSEDBUTTONS], a - ld [H_CURRENTPRESSEDBUTTONS], a - ld [$ccd3], a - ld [$cd38], a - ld a, [wWhichTrade] ; $cd3d - cp $3 - jr c, .asm_7635d - ld hl, $d864 - bit 6, [hl] - set 6, [hl] - jr z, asm_7631d -.asm_7635d - ld a, $2 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - ld a, $40 - ld [$ccd3], a - ld a, $1 - ld [$cd38], a - call Func_3486 - ld a, $3 - ld [W_BRUNOCURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -CoordsData_7637a: ; 7637a (1d:637a) - db $0A,$04 - db $0A,$05 - db $0B,$04 - db $0B,$05 - db $FF +INCLUDE "data/mapHeaders/bruno.asm" -BrunoScript3: ; 76383 (1d:6383) - ld a, [$cd38] - and a - ret nz - call Delay3 - xor a - ld [wJoypadForbiddenButtonsMask], a - ld [W_BRUNOCURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret +INCLUDE "scripts/bruno.asm" -BrunoScript2: ; 76396 (1d:6396) - call EndTrainerBattle - ld a, [W_ISINBATTLE] ; $d057 - cp $ff - jp z, Func_7630d - ld a, $1 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - jp DisplayTextID - -BrunoTextPointers: ; 763a8 (1d:63a8) - dw BrunoText1 - dw BrunoText2 - -BrunoTrainerHeaders: ; 763ac (1d:63ac) -BrunoTrainerHeader0: ; 763ac (1d:63ac) - db $1 ; flag's bit - db ($0 << 4) ; trainer's view range - dw $d864 ; flag's byte - dw BrunoBeforeBattleText ; 0x63c3 TextBeforeBattle - dw BrunoAfterBattleText ; 0x63cd TextAfterBattle - dw BrunoEndBattleText ; 0x63c8 TextEndBattle - dw BrunoEndBattleText ; 0x63c8 TextEndBattle - - db $ff - -BrunoText1: ; 763b9 (1d:63b9) - db $08 ; asm - ld hl, BrunoTrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -BrunoBeforeBattleText: ; 763c3 (1d:63c3) - TX_FAR _BrunoBeforeBattleText - db "@" - -BrunoEndBattleText: ; 763c8 (1d:63c8) - TX_FAR _BrunoEndBattleText - db "@" - -BrunoAfterBattleText: ; 763cd (1d:63cd) - TX_FAR _BrunoAfterBattleText - db "@" - -BrunoText2: ; 763d2 (1d:63d2) - TX_FAR _UnnamedText_763d2 - db "@" - -BrunoObject: ; 0x763d7 (size=44) - db $3 ; border tile - - db $4 ; warps - db $b, $4, $2, LORELEIS_ROOM - db $b, $5, $3, LORELEIS_ROOM - db $0, $4, $0, AGATHAS_ROOM - db $0, $5, $1, AGATHAS_ROOM - - db $0 ; signs - - db $1 ; people - db SPRITE_BRUNO, $2 + 4, $5 + 4, $ff, $d0, $41, BRUNO + $C8, $1 ; trainer - - ; warp-to - EVENT_DISP BRUNOS_ROOM_WIDTH, $b, $4 ; LORELEIS_ROOM - EVENT_DISP BRUNOS_ROOM_WIDTH, $b, $5 ; LORELEIS_ROOM - EVENT_DISP BRUNOS_ROOM_WIDTH, $0, $4 ; AGATHAS_ROOM - EVENT_DISP BRUNOS_ROOM_WIDTH, $0, $5 ; AGATHAS_ROOM +INCLUDE "data/mapObjects/bruno.asm" BrunoBlocks: ; 76403 (1d:6403) INCBIN "maps/bruno.blk" -Agatha_h: ; 0x76421 to 0x7642d (12 bytes) (id=247) - db CEMETERY ; tileset - db AGATHAS_ROOM_HEIGHT, AGATHAS_ROOM_WIDTH ; dimensions (y, x) - dw AgathaBlocks, AgathaTextPointers, AgathaScript ; blocks, texts, scripts - db $00 ; connections - dw AgathaObject ; objects - -AgathaScript: ; 7642d (1d:642d) - call AgathaScript_76443 - call EnableAutoTextBoxDrawing - ld hl, AgathaTrainerHeaders - ld de, AgathaScriptPointers - ld a, [W_AGATHACURSCRIPT] - call ExecuteCurMapScriptInTable - ld [W_AGATHACURSCRIPT], a - ret - -AgathaScript_76443: ; 76443 (1d:6443) - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - ret z - ld a, [$d865] - bit 1, a - jr z, .asm_76457 - ld a, $e - jp Func_76459 -.asm_76457 - ld a, $3b - -Func_76459: ; 76459 (1d:6459) - ld [$d09f], a - ld bc, $2 - ld a, $17 - jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) - -Func_76464: ; 76464 (1d:6464) - xor a - ld [W_AGATHACURSCRIPT], a - ret - -AgathaScriptPointers: ; 76469 (1d:6469) - dw AgathaScript0 - dw Func_324c - dw AgathaScript2 - dw AgathaScript3 - dw AgathaScript4 - -AgathaScript4: ; 76473 (1d:6473) - ret -asm_76474: ; 76474 (1d:6474) - ld hl, $ccd3 - ld a, $40 - ld [hli], a - ld [hli], a - ld [hli], a - ld [hli], a - ld [hli], a - ld [hl], a - ld a, $6 - ld [$cd38], a - call Func_3486 - ld a, $3 - ld [W_AGATHACURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -AgathaScript0: ; 76490 (1d:6490) - ld hl, CoordsData_764d1 - call ArePlayerCoordsInArray - jp nc, CheckFightingMapTrainers - xor a - ld [H_NEWLYPRESSEDBUTTONS], a - ld [H_CURRENTPRESSEDBUTTONS], a - ld [$ccd3], a - ld [$cd38], a - ld a, [wWhichTrade] ; $cd3d - cp $3 - jr c, .asm_764b4 - ld hl, $d865 - bit 6, [hl] - set 6, [hl] - jr z, asm_76474 -.asm_764b4 - ld a, $2 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - ld a, $40 - ld [$ccd3], a - ld a, $1 - ld [$cd38], a - call Func_3486 - ld a, $3 - ld [W_AGATHACURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -CoordsData_764d1: ; 764d1 (1d:64d1) - db $0A,$04 - db $0A,$05 - db $0B,$04 - db $0B,$05 - db $FF - -AgathaScript3: ; 764da (1d:64da) - ld a, [$cd38] - and a - ret nz - call Delay3 - xor a - ld [wJoypadForbiddenButtonsMask], a - ld [W_AGATHACURSCRIPT], a - ld [W_CURMAPSCRIPT], a - ret - -AgathaScript2: ; 764ed (1d:64ed) - call EndTrainerBattle - ld a, [W_ISINBATTLE] ; $d057 - cp $ff - jp z, Func_76464 - ld a, $1 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c - call DisplayTextID - ld a, $1 - ld [W_GARYCURSCRIPT], a - ret - -AgathaTextPointers: ; 76505 (1d:6505) - dw AgathaText1 - dw AgathaText2 - -AgathaTrainerHeaders: ; 76509 (1d:6509) -AgathaTrainerHeader0: ; 76509 (1d:6509) - db $1 ; flag's bit - db ($0 << 4) ; trainer's view range - dw $d865 ; flag's byte - dw AgathaBeforeBattleText ; 0x6520 TextBeforeBattle - dw AgathaAfterBattleText ; 0x652a TextAfterBattle - dw AgathaEndBattleText ; 0x6525 TextEndBattle - dw AgathaEndBattleText ; 0x6525 TextEndBattle - - db $ff - -AgathaText1: ; 76516 (1d:6516) - db $08 ; asm - ld hl, AgathaTrainerHeader0 - call TalkToTrainer - jp TextScriptEnd - -AgathaBeforeBattleText: ; 76520 (1d:6520) - TX_FAR _AgathaBeforeBattleText - db "@" - -AgathaEndBattleText: ; 76525 (1d:6525) - TX_FAR _AgathaEndBattleText - db "@" - -AgathaAfterBattleText: ; 7652a (1d:652a) - TX_FAR _AgathaAfterBattleText - db "@" - -AgathaText2: ; 7652f (1d:652f) - TX_FAR _AgathaText2 - db "@" +INCLUDE "data/mapHeaders/agatha.asm" -AgathaObject: ; 0x76534 (size=44) - db $0 ; border tile +INCLUDE "scripts/agatha.asm" - db $4 ; warps - db $b, $4, $2, BRUNOS_ROOM - db $b, $5, $3, BRUNOS_ROOM - db $0, $4, $0, LANCES_ROOM - db $0, $5, $0, LANCES_ROOM - - db $0 ; signs - - db $1 ; people - db SPRITE_AGATHA, $2 + 4, $5 + 4, $ff, $d0, $41, AGATHA + $C8, $1 ; trainer - - ; warp-to - EVENT_DISP AGATHAS_ROOM_WIDTH, $b, $4 ; BRUNOS_ROOM - EVENT_DISP AGATHAS_ROOM_WIDTH, $b, $5 ; BRUNOS_ROOM - EVENT_DISP AGATHAS_ROOM_WIDTH, $0, $4 ; LANCES_ROOM - EVENT_DISP AGATHAS_ROOM_WIDTH, $0, $5 ; LANCES_ROOM +INCLUDE "data/mapObjects/agatha.asm" AgathaBlocks: ; 76560 (1d:6560) INCBIN "maps/agatha.blk" Func_7657e: ; XXX: make better (has to do with the hall of fame on the PC) ; 0x7657e - ld hl, UnnamedText_76683 + ld hl, AccessedHoFPCText call PrintText ld hl, $D730 set 6, [hl] @@ -108093,10 +54706,10 @@ Func_765e5: ; 765e5 (1d:65e5) jr nz, .third .fourth and a - ret + ret .fifth pop bc - scf + scf ret Func_76610: ; 76610 (1d:6610) @@ -108143,8 +54756,8 @@ Func_76610: ; 76610 (1d:6610) HallOfFameNoText: ; 76670 (1d:6670) db "HALL OF FAME No @" -UnnamedText_76683: ; 76683 (1d:6683) - TX_FAR _UnnamedText_76683 +AccessedHoFPCText: ; 76683 (1d:6683) + TX_FAR _AccessedHoFPCText db "@" HiddenItems: ; 76688 (1d:6688) @@ -108169,67 +54782,11 @@ HiddenItems: ; 76688 (1d:6688) ld a, $24 jp Func_3ef5 -HiddenItemCoords: ; 766b8 (1d:66b8) -; map ID, then coords - db VIRIDIAN_FOREST,$12,$01 - db VIRIDIAN_FOREST,$2a,$10 - db MT_MOON_3,$0c,$12 - db ROUTE_25,$03,$26 - db ROUTE_9,$07,$0e - db SS_ANNE_6,$09,$0d - db SS_ANNE_10,$01,$03 - db ROUTE_10,$11,$09 - db ROUTE_10,$35,$10 - db ROCKET_HIDEOUT_1,$0f,$15 - db ROCKET_HIDEOUT_3,$11,$1b - db ROCKET_HIDEOUT_4,$01,$19 - db POKEMONTOWER_5,$0c,$04 - db ROUTE_13,$0e,$01 - db ROUTE_13,$0d,$10 - db MANSION_4,$09,$01 - db SAFARI_ZONE_ENTRANCE,$01,$0a - db SAFARI_ZONE_WEST,$05,$06 - db SILPH_CO_5F,$03,$0c - db SILPH_CO_9F,$0f,$02 - db COPYCATS_HOUSE_2F,$01,$01 - db UNKNOWN_DUNGEON_1,$0b,$0e - db UNKNOWN_DUNGEON_3,$03,$1b - db POWER_PLANT,$10,$11 - db POWER_PLANT,$01,$0c - db SEAFOAM_ISLANDS_3,$0f,$0f - db SEAFOAM_ISLANDS_5,$11,$19 - db MANSION_1,$10,$08 - db MANSION_3,$09,$01 - db ROUTE_23,$2c,$09 - db ROUTE_23,$46,$13 - db ROUTE_23,$5a,$08 - db VICTORY_ROAD_2,$02,$05 - db VICTORY_ROAD_2,$07,$1a - db $6f,$0b,$0e - db VIRIDIAN_CITY,$04,$0e - db ROUTE_11,$05,$30 - db ROUTE_12,$3f,$02 - db ROUTE_17,$0e,$0f - db ROUTE_17,$2d,$08 - db ROUTE_17,$48,$11 - db ROUTE_17,$5b,$04 - db ROUTE_17,$79,$08 - db UNDERGROUND_PATH_NS,$04,$03 - db UNDERGROUND_PATH_NS,$22,$04 - db UNDERGROUND_PATH_WE,$02,$0c - db UNDERGROUND_PATH_WE,$05,$15 - db CELADON_CITY,$0f,$30 - db ROUTE_25,$01,$0a - db MT_MOON_3,$09,$21 - db SEAFOAM_ISLANDS_4,$10,$09 - db VERMILION_CITY,$0b,$0e - db CERULEAN_CITY,$08,$0f - db ROUTE_4,$03,$28 - db $ff +INCLUDE "data/hidden_item_coords.asm" FoundHiddenItemText: ; 7675b (1d:675b) ; XXX where is the pointer to this? - TX_FAR UnnamedText_894d0 + TX_FAR _FoundHiddenItemText db $8 ld a, [$cd3d] ; item ID ld b, a @@ -108255,7 +54812,7 @@ FoundHiddenItemText: ; 7675b (1d:675b) jp TextScriptEnd HiddenItemBagFullText: ; 76794 (1d:6794) - TX_FAR _UnnamedText_76794 + TX_FAR _HiddenItemBagFullText db "@" HiddenCoins: ; 76799 (1d:6799) @@ -108331,20 +54888,7 @@ HiddenCoins: ; 76799 (1d:6799) .done jp Func_3ef5 -HiddenCoinCoords: ; 76822 (1d:6822) - db GAME_CORNER,$08,$00 - db GAME_CORNER,$10,$01 - db GAME_CORNER,$0b,$03 - db GAME_CORNER,$0e,$03 - db GAME_CORNER,$0c,$04 - db GAME_CORNER,$0c,$09 - db GAME_CORNER,$0f,$09 - db GAME_CORNER,$0e,$10 - db GAME_CORNER,$10,$0a - db GAME_CORNER,$07,$0b - db GAME_CORNER,$08,$0f - db GAME_CORNER,$0f,$0c - db $ff +INCLUDE "data/hidden_coins.asm" FoundHiddenCoinsText: ; 76847 (1d:6847) TX_FAR _FoundHiddenCoinsText @@ -109478,7 +56022,7 @@ CallWithTurnFlipped: ; 79155 (1e:5155) .returnAddress pop af ld [H_WHOSETURN],a - ret + ret ; flashes the screen for an extended period (48 frames) AnimationFlashScreenLong: ; 79165 (1e:5165) @@ -109504,7 +56048,7 @@ AnimationFlashScreenLong: ; 79165 (1e:5165) ld [$D08A],a pop hl jr nz,.loop - ret + ret ; BG palettes FlashScreenLongMonochrome: ; 7918e (1e:518e) @@ -109602,7 +56146,7 @@ AnimationLightScreenPalette: ; 791f4 (1e:51f4) Func_791f9: ; 791f9 (1e:51f9) ld bc, $4040 - + Func_791fc: ; 791fc (1e:51fc) ld a, [$cf1b] and a @@ -110058,7 +56602,7 @@ SpiralBallAnimationCoordinates: ; 79476 (1e:5476) db $58, $28 db $50, $30 db $50, $28 - db $FF ; list terminator + db $FF ; list terminator AnimationSquishMonPic: ; 794a1 (1e:54a1) ; Squishes the mon's sprite horizontally making it @@ -110213,16 +56757,16 @@ AnimationShootManyBallsUpward: ; 79566 (1e:5566) jr .loop UpwardBallsAnimXCoordinatesPlayerTurn: ; 79591 (1e:5591) -; List of x coordinates for each pillar of "energy" balls in the +; List of x coordinates for each pillar of "energy" balls in the ; AnimationShootManyBallsUpward animation. It's unused in the game. - db $10, $40, $28, $18, $38, $30 + db $10, $40, $28, $18, $38, $30 db $FF ; list terminator UpwardBallsAnimXCoordinatesEnemyTurn: ; 79598 (1e:5598) -; List of x coordinates for each pillar of "energy" balls in the +; List of x coordinates for each pillar of "energy" balls in the ; AnimationShootManyBallsUpward animation. It's unused in the game. db $60, $90, $78, $68, $88, $80 - db $FF ; list terminator + db $FF ; list terminator AnimationMinimizeMon: ; 7959f (1e:559f) ; Changes the mon's sprite to a mini black sprite. Used by the @@ -110984,7 +57528,7 @@ Unknown_79c50: ; 79c50 (1e:5c50) db $43,$55,$56,$53,$53,$53,$53,$53,$53,$53,$53,$53,$43,$57,$58,$54,$54,$54,$54,$54,$54,$54,$54,$54,$43,$59,$5A,$43,$43,$43,$43,$43,$43,$43,$43,$43 AnimationLeavesFalling: ; 79c74 (1e:5c74) -; Makes leaves float down from the top of the screen. This is used +; Makes leaves float down from the top of the screen. This is used ; in Razor Leaf's animation. ld a, [$ff48] push af @@ -110999,7 +57543,7 @@ AnimationLeavesFalling: ; 79c74 (1e:5c74) ret AnimationPetalsFalling: ; 79c8a (1e:5c8a) -; Makes lots of petals fall down from the top of the screen. It's used in +; Makes lots of petals fall down from the top of the screen. It's used in ; the animation for Petal Dance. ld d, $71 ld a, $14 @@ -111395,7 +57939,7 @@ Func_79f54: ; 79f54 (1e:5f54) ld [$cfcb], a ld a, $e4 ld [rOBP1], a ; $ff49 - call Func_79fc0 + call LoadSmokeTileFourTimes callba asm_f055 ld c, $8 .asm_79f73 @@ -111452,22 +57996,22 @@ PointerTable_79fb0: ; 79fb0 (1e:5fb0) db $FF,$01 dw Func_79337 -Func_79fc0: ; 79fc0 (1e:5fc0) +LoadSmokeTileFourTimes: ; 79fc0 (1e:5fc0) ld hl, $8fc0 ld c, $4 -.asm_79fc5 +.loop push bc push hl - call Func_79fd4 + call LoadSmokeTile pop hl ld bc, $10 add hl, bc pop bc dec c - jr nz, .asm_79fc5 + jr nz, .loop ret -Func_79fd4: ; 79fd4 (1e:5fd4) +LoadSmokeTile: ; 79fd4 (1e:5fd4) ld de, SSAnneSmokePuffTile ; $5fdd ld bc, (BANK(SSAnneSmokePuffTile) << 8) + $01 jp CopyVideoData @@ -111487,3634 +58031,7 @@ RedFishingTilesSide: ; 7a02d (1e:602d) RedFishingRodTiles: ; 7a04d (1e:604d) INCBIN "gfx/red_fishingrod_tiles.2bpp" -AttackAnimationPointers: ; 7a07d (1e:607d) - dw PoundAnim - dw KarateChopAnim - dw DoubleSlapAnim - dw CometPunchAnim - dw MegaPunchAnim - dw PayDayAnim - dw FirePunchAnim - dw IcePunchAnim - dw ThunderPunchAnim - dw ScratchAnim - dw VicegripAnim - dw GuillotineAnim - dw RazorWindAnim - dw SwordsDanceAnim - dw CutAnim - dw GustAnim - dw WingAttackAnim - dw WhirlwindAnim - dw FlyAnim - dw BindAnim - dw SlamAnim - dw VineWhipAnim - dw StompAnim - dw DoubleKickAnim - dw MegaKickAnim - dw JumpKickAnim - dw RollingKickAnim - dw SandAttackAnim - dw HeatButtAnim - dw HornAttackAnim - dw FuryAttackAnim - dw HornDrillAnim - dw TackleAnim - dw BodySlamAnim - dw WrapAnim - dw TakeDownAnim - dw ThrashAnim - dw DoubleEdgeAnim - dw TailWhipAnim - dw PoisonStingAnim - dw TwineedleAnim - dw PinMissileAnim - dw LeerAnim - dw BiteAnim - dw GrowlAnim - dw RoarAnim - dw SingAnim - dw SupersonicAnim - dw SonicBoomAnim - dw DisableAnim - dw AcidAnim - dw EmberAnim - dw FlamethrowerAnim - dw MistAnim - dw WaterGunAnim - dw HydroPumpAnim - dw SurfAnim - dw IceBeamAnim - dw BlizzardAnim - dw PsyBeamAnim - dw BubbleBeamAnim - dw AuroraBeamAnim - dw HyperBeamAnim - dw PeckAnim - dw DrillPeckAnim - dw SubmissionAnim - dw LowKickAnim - dw CounterAnim - dw SeismicTossAnim - dw StrengthAnim - dw AbsorbAnim - dw MegaDrainAnim - dw LeechSeedAnim - dw GrowthAnim - dw RazorLeafAnim - dw SolarBeamAnim - dw PoisonPowderAnim - dw StunSporeAnim - dw SleepPowderAnim - dw PedalDanceAnim - dw StringShotAnim - dw DragonRageAnim - dw FireSpinAnim - dw ThunderShockAnim - dw ThunderBoltAnim - dw ThunderWaveAnim - dw ThunderAnim - dw RockThrowAnim - dw EarthquakeAnim - dw FissureAnim - dw DigAnim - dw ToxicAnim - dw ConfusionAnim - dw PsychicAnim - dw HypnosisAnim - dw MeditateAnim - dw AgilityAnim - dw QuickAttackAnim - dw RageAnim - dw TeleportAnim - dw NightShadeAnim - dw MimicAnim - dw ScreechAnim - dw DoubleTeamAnim - dw RecoverAnim - dw HardenAnim - dw MinimizeAnim - dw SmokeScreenAnim - dw ConfuseRayAnim - dw WithdrawAnim - dw DefenseCurlAnim - dw BarrierAnim - dw LightScreenAnim - dw HazeAnim - dw ReflectAnim - dw FocusEnergyAnim - dw BideAnim - dw MetronomeAnim - dw MirrorMoveAnim - dw SelfdestructAnim - dw EggBombAnim - dw LickAnim - dw SmogAnim - dw SludgeAnim - dw BoneClubAnim - dw FireBlastAnim - dw WaterfallAnim - dw ClampAnim - dw SwiftAnim - dw SkullBashAnim - dw SpikeCannonAnim - dw ConstrictAnim - dw AmnesiaAnim - dw KinesisAnim - dw SoftboiledAnim - dw HiJumpKickAnim - dw GlareAnim - dw DreamEaterAnim - dw PoisonGasAnim - dw BarrageAnim - dw LeechLifeAnim - dw LovelyKissAnim - dw SkyAttackAnim - dw TransformAnim - dw BubbleAnim - dw DizzyPunchAnim - dw SporeAnim - dw FlashAnim - dw PsywaveAnim - dw SplashAnim - dw AcidArmorAnim - dw CrabHammerAnim - dw ExplosionAnim - dw FurySwipesAnim - dw BonemerangAnim - dw RestAnim - dw RockSlideAnim - dw HyperFangAnim - dw SharpenAnim - dw ConversionAnim - dw TriAttackAnim - dw SuperFangAnim - dw SlashAnim - dw SubstituteAnim - dw StruggleAnim - dw ShowPicAnim - dw EnemyFlashAnim - dw PlayerFlashAnim - dw EnemyHUDShakeAnim - dw TradeBallDropAnim - dw TradeBallAppear1Anim - dw TradeBallAppear2Anim - dw TradeBallPoofAnim - dw XStatItemAnim - dw XStatItemAnim - dw ShrinkingSquareAnim - dw ShrinkingSquareAnim - dw XStatItemBlackAnim - dw XStatItemBlackAnim - dw ShrinkingSquareBlackAnim - dw ShrinkingSquareBlackAnim - dw UnusedAnim - dw UnusedAnim - dw ParalyzeAnim - dw ParalyzeAnim - dw PoisonAnim - dw PoisonAnim - dw SleepPlayerAnim - dw SleepEnemyAnim - dw ConfusedPlayerAnim - dw ConfusedEnemyAnim - dw FaintAnim - dw BallTossAnim - dw BallShakeAnim - dw BallPoofAnim - dw BallBlockAnim - dw GreatTossAnim - dw UltraTossAnim - dw ShakeScreenAnim - dw HidePicAnim - dw ThrowRockAnim - dw ThrowBaitAnim - dw ZigZagScreenAnim - -; each animation is a list of subanimations and special effects -; if first byte < $56 -; db tileset_and_delay, sound_id, subanimation_id -; if first byte >= $D8 -; db special_effect_id, sound_id -; $FF terminated -ZigZagScreenAnim: ; 7a213 (1e:6213) - db SE_WAVY_SCREEN, $FF - db $FF - -PoundAnim: ; 7a216 (1e:6216) -StruggleAnim: ; 7a216 (1e:6216) - db $08,$00,$01 - db $FF - -KarateChopAnim: ; 7a21a (1e:621a) - db $08,$01,$03 - db $FF - -DoubleSlapAnim: ; 7a21e (1e:621e) - db $05,$02,$01 - db $05,$02,$01 - db $FF - -CometPunchAnim: ; 7a225 (1e:6225) - db $04,$03,$02 - db $04,$03,$02 - db $FF - -MegaPunchAnim: ; 7a22c (1e:622c) - db $46,$04,$04 - db $FF - -PayDayAnim: ; 7a230 (1e:6230) - db $08,$00,$01 - db $04,$05,$52 - db $FF - -FirePunchAnim: ; 7a237 (1e:6237) - db $06,$06,$02 - db $46,$FF,$11 - db $FF - -IcePunchAnim: ; 7a23e (1e:623e) - db $06,$07,$02 - db $10,$FF,$2F - db $FF - -ThunderPunchAnim: ; 7a245 (1e:6245) - db $06,$08,$02 - db SE_DARK_SCREEN_PALETTE, $FF - db $46,$FF,$2B - db SE_RESET_SCREEN_PALETTE, $FF - db $FF - -ScratchAnim: ; 7a250 (1e:6250) - db $06,$09,$0F - db $FF - -VicegripAnim: ; 7a254 (1e:6254) - db $08,$0A,$2A - db $FF - -GuillotineAnim: ; 7a258 (1e:6258) - db $06,$0B,$2A - db $FF - -RazorWindAnim: ; 7a25c (1e:625c) - db $04,$0C,$16 - db $FF - -SwordsDanceAnim: ; 7a260 (1e:6260) - db $46,$0D,$18 - db $46,$0D,$18 - db $46,$0D,$18 - db $FF - -CutAnim: ; 7a26a (1e:626a) - db SE_DARK_SCREEN_FLASH, $0E - db $04,$FF,$16 - db $FF - -GustAnim: ; 7a270 (1e:6270) - db $46,$0F,$10 - db $06,$FF,$02 - db $FF - -WingAttackAnim: ; 7a277 (1e:6277) - db $46,$10,$04 - db $FF - -WhirlwindAnim: ; 7a27b (1e:627b) - db $46,$11,$10 - db SE_SLIDE_ENEMY_MON_OUT, $FF - db $FF - -FlyAnim: ; 7a281 (1e:6281) - db $46,$12,$04 - db SE_SHOW_MON_PIC, $FF - db $FF - -BindAnim: ; 7a287 (1e:6287) - db $04,$13,$23 - db $04,$13,$23 - db $FF - -SlamAnim: ; 7a28e (1e:628e) - db $06,$14,$02 - db $FF - -VineWhipAnim: ; 7a292 (1e:6292) - db $01,$15,$16 - db $08,$FF,$01 - db $FF - -StompAnim: ; 7a299 (1e:6299) - db $48,$16,$05 - db $FF - -DoubleKickAnim: ; 7a29d (1e:629d) - db $08,$17,$01 - db $08,$17,$01 - db $FF - -MegaKickAnim: ; 7a2a4 (1e:62a4) - db $46,$18,$04 - db $FF - -JumpKickAnim: ; 7a2a8 (1e:62a8) - db $46,$19,$04 - db $FF - -RollingKickAnim: ; 7a2ac (1e:62ac) - db SE_DARK_SCREEN_FLASH, $1A - db $46,$FF,$04 - db $FF - -SandAttackAnim: ; 7a2b2 (1e:62b2) - db $46,$1B,$28 - db $FF - -HeatButtAnim: ; 7a2b6 (1e:62b6) - db $46,$1C,$05 - db $FF - -HornAttackAnim: ; 7a2ba (1e:62ba) - db $06,$1D,$45 - db $46,$FF,$05 - db $FF - -FuryAttackAnim: ; 7a2c1 (1e:62c1) - db $02,$1E,$46 - db $02,$FF,$46 - db $FF - -HornDrillAnim: ; 7a2c8 (1e:62c8) - db $42,$1F,$05 - db $42,$FF,$05 - db $42,$FF,$05 - db $42,$FF,$05 - db $42,$FF,$05 - db $FF - -TackleAnim: ; 7a2d8 (1e:62d8) - db SE_MOVE_MON_HORIZONTALLY, $48 - db SE_RESET_MON_POSITION, $FF - db $FF - -BodySlamAnim: ; 7a2dd (1e:62dd) - db SE_MOVE_MON_HORIZONTALLY, $48 - db SE_DARK_SCREEN_FLASH, $FF - db SE_DARK_SCREEN_FLASH, $FF - db SE_RESET_MON_POSITION, $FF - db $FF - -WrapAnim: ; 7a2e6 (1e:62e6) - db $04,$22,$23 - db $04,$22,$23 - db $04,$22,$23 - db $FF - -TakeDownAnim: ; 7a2f0 (1e:62f0) - db SE_MOVE_MON_HORIZONTALLY, $48 - db SE_DARK_SCREEN_FLASH, $23 - db SE_RESET_MON_POSITION, $FF - db $FF - -ThrashAnim: ; 7a2f7 (1e:62f7) - db $46,$24,$04 - db $FF - -DoubleEdgeAnim: ; 7a2fb (1e:62fb) - db SE_LIGHT_SCREEN_PALETTE, $48 - db $06,$FF,$2D - db SE_RESET_SCREEN_PALETTE, $FF - db SE_MOVE_MON_HORIZONTALLY, $FF - db SE_DARK_SCREEN_FLASH, $25 - db SE_RESET_MON_POSITION, $FF - db $FF - -TailWhipAnim: ; 7a309 (1e:6309) - db SE_MOVE_MON_HORIZONTALLY, $84 - db SE_DELAY_ANIMATION_10, $FF - db SE_RESET_MON_POSITION, $84 - db SE_DELAY_ANIMATION_10, $FF - db SE_MOVE_MON_HORIZONTALLY, $84 - db SE_DELAY_ANIMATION_10, $FF - db SE_RESET_MON_POSITION, $84 - db $FF - -PoisonStingAnim: ; 7a318 (1e:6318) - db $06,$27,$00 - db $FF - -TwineedleAnim: ; 7a31c (1e:631c) - db $05,$28,$01 - db $05,$28,$01 - db $FF - -PinMissileAnim: ; 7a323 (1e:6323) - db $03,$29,$01 - db $FF - -LeerAnim: ; 7a327 (1e:6327) - db SE_DARK_SCREEN_PALETTE, $48 - db SE_DARK_SCREEN_FLASH, $2A - db SE_DARK_SCREEN_FLASH, $2A - db SE_RESET_SCREEN_PALETTE, $FF - db $FF - -BiteAnim: ; 7a330 (1e:6330) - db $08,$2B,$02 - db $FF - -GrowlAnim: ; 7a334 (1e:6334) - db $46,$2C,$12 - db $FF - -RoarAnim: ; 7a338 (1e:6338) - db $46,$2D,$15 - db $46,$2D,$15 - db $46,$2D,$15 - db $FF - -SingAnim: ; 7a342 (1e:6342) - db $46,$2E,$12 - db $50,$FF,$40 - db $50,$FF,$40 - db $FF - -SupersonicAnim: ; 7a34c (1e:634c) - db $06,$2F,$31 - db $FF - -SonicBoomAnim: ; 7a350 (1e:6350) - db $46,$2D,$15 - db $46,$2D,$15 - db $46,$0F,$10 - db $46,$FF,$05 - db $FF - -DisableAnim: ; 7a35d (1e:635d) - db SE_DARK_SCREEN_PALETTE, $48 - db SE_DARK_SCREEN_FLASH, $2A - db SE_DARK_SCREEN_FLASH, $2A - db SE_RESET_SCREEN_PALETTE, $FF - db $FF - -AcidAnim: ; 7a366 (1e:6366) - db $46,$32,$13 - db $46,$32,$14 - db $FF - -EmberAnim: ; 7a36d (1e:636d) - db $46,$33,$11 - db $FF - -FlamethrowerAnim: ; 7a371 (1e:6371) - db $46,$34,$1F - db $46,$34,$0C - db $46,$34,$0D - db $FF - -MistAnim: ; 7a37b (1e:637b) - db SE_LIGHT_SCREEN_PALETTE, $FF - db SE_WATER_DROPLETS_EVERYWHERE, $38 - db SE_RESET_SCREEN_PALETTE, $FF - db $FF - -WaterGunAnim: ; 7a382 (1e:6382) - db $06,$36,$2C - db $FF - -HydroPumpAnim: ; 7a386 (1e:6386) - db $06,$37,$1A - db $06,$37,$1A - db $FF - -SurfAnim: ; 7a38d (1e:638d) - db SE_WATER_DROPLETS_EVERYWHERE, $38 - db $06,$37,$1A - db $FF - -IceBeamAnim: ; 7a393 (1e:6393) - db $03,$39,$2E - db $10,$FF,$2F - db $FF - -BlizzardAnim: ; 7a39a (1e:639a) - db $04,$3A,$38 - db $04,$37,$38 - db $FF - -PsyBeamAnim: ; 7a3a1 (1e:63a1) - db $03,$3B,$2E - db SE_FLASH_SCREEN_LONG, $FF - db $FF - -BubbleBeamAnim: ; 7a3a7 (1e:63a7) - db $12,$3C,$35 - db $FF - -AuroraBeamAnim: ; 7a3ab (1e:63ab) - db $03,$3D,$2E - db SE_DELAY_ANIMATION_10, $FF - db SE_DELAY_ANIMATION_10, $FF - db $FF - -HyperBeamAnim: ; 7a3b3 (1e:63b3) - db SE_DARK_SCREEN_PALETTE, $48 - db SE_SPIRAL_BALLS_INWARD, $FF - db $02,$3E,$2E - db SE_DARK_SCREEN_FLASH, $FF - db SE_DARK_SCREEN_FLASH, $FF - db $46,$04,$04 - db SE_RESET_SCREEN_PALETTE, $FF - db $FF - -PeckAnim: ; 7a3c4 (1e:63c4) - db $08,$3F,$01 - db $FF - -DrillPeckAnim: ; 7a3c8 (1e:63c8) - db $46,$40,$04 - db $FF - -SubmissionAnim: ; 7a3cc (1e:63cc) - db SE_SLIDE_MON_OUT, $41 - db $06,$FF,$01 - db SE_SHOW_MON_PIC, $FF - db $FF - -LowKickAnim: ; 7a3d4 (1e:63d4) - db SE_SLIDE_MON_OUT, $42 - db $46,$FF,$04 - db SE_SHOW_MON_PIC, $FF - db $FF - -CounterAnim: ; 7a3dc (1e:63dc) - db SE_SLIDE_MON_OUT, $43 - db $46,$FF,$04 - db SE_SHOW_MON_PIC, $FF - db $FF - -SeismicTossAnim: ; 7a3e4 (1e:63e4) - db SE_BLINK_ENEMY_MON, $FF - db $41,$8B,$4E - db SE_HIDE_ENEMY_MON_PIC, $FF - db SE_SLIDE_MON_OUT, $FF - db $42,$44,$4F - db SE_DELAY_ANIMATION_10, $FF - db SE_DELAY_ANIMATION_10, $FF - db SE_SHOW_MON_PIC, $FF - db $41,$44,$50 - db SE_SHOW_ENEMY_MON_PIC, $FF - db SE_SHAKE_SCREEN, $FF - db $FF - -StrengthAnim: ; 7a3fe (1e:63fe) - db SE_MOVE_MON_HORIZONTALLY, $48 - db SE_RESET_MON_POSITION, $FF - db $46,$06,$04 - db $FF - -AbsorbAnim: ; 7a406 (1e:6406) - db SE_LIGHT_SCREEN_PALETTE, $46 - db $06,$FF,$21 - db $06,$FF,$22 - db SE_RESET_SCREEN_PALETTE, $FF - db $FF - -MegaDrainAnim: ; 7a411 (1e:6411) - db SE_LIGHT_SCREEN_PALETTE, $47 - db SE_DARK_SCREEN_FLASH, $FF - db $06,$FF,$21 - db $06,$FF,$22 - db SE_DARK_SCREEN_FLASH, $FF - db SE_RESET_SCREEN_PALETTE, $FF - db $FF - -LeechSeedAnim: ; 7a420 (1e:6420) - db $46,$48,$1B - db $55,$4D,$1C - db $FF - -GrowthAnim: ; 7a427 (1e:6427) - db SE_LIGHT_SCREEN_PALETTE, $49 - db SE_SPIRAL_BALLS_INWARD, $FF - db SE_RESET_SCREEN_PALETTE, $FF - db $FF - -RazorLeafAnim: ; 7a42e (1e:642e) - db SE_LEAVES_FALLING, $4A - db $41,$80,$44 - db $01,$0C,$16 - db $FF - -SolarBeamAnim: ; 7a437 (1e:6437) - db $06,$4B,$2E - db $06,$FF,$01 - db $FF - -PoisonPowderAnim: ; 7a43e (1e:643e) - db $06,$4C,$36 - db $FF - -StunSporeAnim: ; 7a442 (1e:6442) - db $06,$4D,$36 - db $FF - -SleepPowderAnim: ; 7a446 (1e:6446) - db $06,$4E,$36 - db $FF - -PedalDanceAnim: ; 7a44a (1e:644a) - db SE_LIGHT_SCREEN_PALETTE, $4F - db SE_PETALS_FALLING, $FF - db SE_RESET_SCREEN_PALETTE, $FF - db $FF - -StringShotAnim: ; 7a451 (1e:6451) - db $08,$50,$37 - db $FF - -DragonRageAnim: ; 7a455 (1e:6455) - db $46,$51,$1F - db $46,$FF,$0C - db $46,$FF,$0D - db $46,$FF,$0E - db $FF - -FireSpinAnim: ; 7a462 (1e:6462) - db $46,$52,$0C - db $46,$FF,$0D - db $46,$FF,$0E - db $FF - -ThunderShockAnim: ; 7a46c (1e:646c) - db $42,$53,$29 - db $FF - -ThunderBoltAnim: ; 7a470 (1e:6470) - db $41,$54,$29 - db $41,$54,$29 - db $FF - -ThunderWaveAnim: ; 7a477 (1e:6477) - db $42,$55,$29 - db $02,$FF,$23 - db $04,$FF,$23 - db $FF - -ThunderAnim: ; 7a481 (1e:6481) - db SE_DARK_SCREEN_PALETTE, $56 - db SE_DARK_SCREEN_FLASH, $FF - db $46,$FF,$2B - db SE_DARK_SCREEN_FLASH, $FF - db $42,$54,$29 - db SE_RESET_SCREEN_PALETTE, $FF - db $FF - -RockThrowAnim: ; 7a490 (1e:6490) - db $04,$57,$30 - db $FF - -EarthquakeAnim: ; 7a494 (1e:6494) - db SE_SHAKE_SCREEN, $58 - db SE_SHAKE_SCREEN, $58 - db $FF - -FissureAnim: ; 7a499 (1e:6499) - db SE_DARK_SCREEN_FLASH, $59 - db SE_SHAKE_SCREEN, $FF - db SE_DARK_SCREEN_FLASH, $59 - db SE_SHAKE_SCREEN, $FF - db $FF - -DigAnim: ; 7a4a2 (1e:64a2) - db $46,$5A,$04 - db SE_SLIDE_MON_UP, $FF - db $FF - -ToxicAnim: ; 7a4a8 (1e:64a8) - db SE_WATER_DROPLETS_EVERYWHERE, $38 - db $46,$5B,$14 - db $FF - -ConfusionAnim: ; 7a4ae (1e:64ae) - db SE_FLASH_SCREEN_LONG, $5C - db $FF - -PsychicAnim: ; 7a4b1 (1e:64b1) - db SE_FLASH_SCREEN_LONG, $5D - db SE_WAVY_SCREEN, $FF - db $FF - -HypnosisAnim: ; 7a4b6 (1e:64b6) - db SE_FLASH_SCREEN_LONG, $5E - db $FF - -MeditateAnim: ; 7a4b9 (1e:64b9) - db SE_LIGHT_SCREEN_PALETTE, $5F - db $46,$FF,$43 - db SE_DARK_SCREEN_FLASH, $FF - db SE_RESET_SCREEN_PALETTE, $FF - db $FF - -AgilityAnim: ; 7a4c3 (1e:64c3) - db SE_LIGHT_SCREEN_PALETTE, $60 - db SE_RESET_SCREEN_PALETTE, $FF - db $FF - -QuickAttackAnim: ; 7a4c8 (1e:64c8) - db SE_SLIDE_MON_OUT, $61 - db $46,$FF,$04 - db SE_SHOW_MON_PIC, $FF - db $FF - -RageAnim: ; 7a4d0 (1e:64d0) - db $06,$62,$01 - db $FF - -TeleportAnim: ; 7a4d4 (1e:64d4) - db SE_SQUISH_MON_PIC, $63 - db SE_SHOOT_BALLS_UPWARD, $FF - db $FF - -NightShadeAnim: ; 7a4d9 (1e:64d9) - db SE_FLASH_SCREEN_LONG, $5C - db SE_WAVY_SCREEN, $FF - db $FF - -MimicAnim: ; 7a4de (1e:64de) - db $46,$65,$21 - db $46,$65,$22 - db $FF - -ScreechAnim: ; 7a4e5 (1e:64e5) - db $46,$66,$12 - db $FF - -DoubleTeamAnim: ; 7a4e9 (1e:64e9) - db SE_DARK_SCREEN_PALETTE, $FF - db SE_DELAY_ANIMATION_10, $FF - db SE_DELAY_ANIMATION_10, $FF - db SE_DARK_SCREEN_FLASH, $FF - db SE_DARK_SCREEN_FLASH, $FF - db SE_RESET_SCREEN_PALETTE, $FF - db SE_SHAKE_BACK_AND_FORTH, $67 - db SE_SHOW_MON_PIC, $FF - db $46,$6F,$33 - db $FF - -RecoverAnim: ; 7a4fd (1e:64fd) - db SE_BLINK_MON, $68 - db SE_LIGHT_SCREEN_PALETTE, $FF - db SE_SPIRAL_BALLS_INWARD, $FF - db SE_RESET_SCREEN_PALETTE, $FF - db $FF - -HardenAnim: ; 7a506 (1e:6506) - db SE_LIGHT_SCREEN_PALETTE, $69 - db $46,$FF,$43 - db SE_DARK_SCREEN_FLASH, $FF - db SE_RESET_SCREEN_PALETTE, $FF - db $FF - -MinimizeAnim: ; 7a510 (1e:6510) - db SE_LIGHT_SCREEN_PALETTE, $6A - db SE_SPIRAL_BALLS_INWARD, $FF - db SE_MINIMIZE_MON, $FF - db SE_RESET_SCREEN_PALETTE, $FF - db $FF - -SmokeScreenAnim: ; 7a519 (1e:6519) - db $46,$6B,$28 - db $04,$FF,$0A - db SE_DARKEN_MON_PALETTE, $FF - db SE_DELAY_ANIMATION_10, $FF - db SE_DELAY_ANIMATION_10, $FF - db SE_DARK_SCREEN_PALETTE, $FF - db SE_DELAY_ANIMATION_10, $FF - db SE_DELAY_ANIMATION_10, $FF - db SE_DELAY_ANIMATION_10, $FF - db SE_DELAY_ANIMATION_10, $FF - db SE_DELAY_ANIMATION_10, $FF - db SE_DELAY_ANIMATION_10, $FF - db SE_DARKEN_MON_PALETTE, $FF - db SE_DELAY_ANIMATION_10, $FF - db SE_RESET_SCREEN_PALETTE, $FF - db $FF - -ConfuseRayAnim: ; 7a53a (1e:653a) - db SE_DARK_SCREEN_PALETTE, $6C - db $46,$FF,$3E - db SE_RESET_SCREEN_PALETTE, $FF - db $FF - -WithdrawAnim: ; 7a542 (1e:6542) - db SE_LIGHT_SCREEN_PALETTE, $6E - db SE_SLIDE_MON_DOWN, $FF - db $06,$FF,$51 - db SE_RESET_SCREEN_PALETTE, $FF - db SE_SHOW_MON_PIC, $FF - db $FF - -DefenseCurlAnim: ; 7a54e (1e:654e) - db SE_LIGHT_SCREEN_PALETTE, $6E - db $06,$FF,$43 - db SE_DARK_SCREEN_FLASH, $FF - db SE_RESET_SCREEN_PALETTE, $FF - db $FF - -BarrierAnim: ; 7a558 (1e:6558) - db $46,$6F,$33 - db $46,$6F,$33 - db $FF - -LightScreenAnim: ; 7a55f (1e:655f) - db SE_LIGHT_SCREEN_PALETTE, $FF - db $46,$70,$33 - db $46,$70,$33 - db SE_RESET_SCREEN_PALETTE, $FF - db $FF - -HazeAnim: ; 7a56a (1e:656a) - db SE_DARKEN_MON_PALETTE, $FF - db SE_WATER_DROPLETS_EVERYWHERE, $38 - db SE_RESET_SCREEN_PALETTE, $FF - db $FF - -ReflectAnim: ; 7a571 (1e:6571) - db SE_DARK_SCREEN_PALETTE, $FF - db $46,$72,$33 - db $46,$72,$33 - db SE_RESET_SCREEN_PALETTE, $FF - db $FF - -FocusEnergyAnim: ; 7a57c (1e:657c) - db SE_SPIRAL_BALLS_INWARD, $73 - db $FF - -BideAnim: ; 7a57f (1e:657f) - db $46,$74,$04 - db $FF - -MetronomeAnim: ; 7a583 (1e:6583) - db SE_MOVE_MON_HORIZONTALLY, $84 - db SE_DELAY_ANIMATION_10, $FF - db SE_RESET_MON_POSITION, $84 - db SE_DELAY_ANIMATION_10, $FF - db SE_MOVE_MON_HORIZONTALLY, $84 - db SE_DELAY_ANIMATION_10, $FF - db SE_RESET_MON_POSITION, $84 - db $FF - -MirrorMoveAnim: ; 7a592 (1e:6592) - db $08,$76,$01 - db $FF - -SelfdestructAnim: ; 7a596 (1e:6596) - db $43,$77,$34 - db $FF - -EggBombAnim: ; 7a59a (1e:659a) - db $44,$78,$41 - db $44,$78,$42 - db $FF - -LickAnim: ; 7a5a1 (1e:65a1) - db $46,$7B,$14 - db $FF - -SmogAnim: ; 7a5a5 (1e:65a5) - db SE_DARKEN_MON_PALETTE, $48 - db $46,$7A,$19 - db SE_RESET_SCREEN_PALETTE, $FF - db $FF - -SludgeAnim: ; 7a5ad (1e:65ad) - db $46,$7B,$13 - db $46,$7B,$14 - db $FF - -BoneClubAnim: ; 7a5b4 (1e:65b4) - db $08,$7C,$02 - db $FF - -FireBlastAnim: ; 7a5b8 (1e:65b8) - db $46,$7D,$1F - db $46,$FF,$20 - db $46,$FF,$20 - db $46,$FF,$0C - db $46,$FF,$0D - db $FF - -WaterfallAnim: ; 7a5c8 (1e:65c8) - db SE_SLIDE_MON_DOWN, $48 - db $06,$37,$1A - db $08,$FF,$02 - db SE_SLIDE_MON_UP, $FF - db $FF - -ClampAnim: ; 7a5d3 (1e:65d3) - db $08,$7F,$2A - db $06,$83,$23 - db $06,$83,$23 - db $FF - -SwiftAnim: ; 7a5dd (1e:65dd) - db $43,$80,$3F - db $FF - -SkullBashAnim: ; 7a5e1 (1e:65e1) - db $46,$81,$05 - db $FF - -SpikeCannonAnim: ; 7a5e5 (1e:65e5) - db $44,$82,$04 - db $FF - -ConstrictAnim: ; 7a5e9 (1e:65e9) - db $06,$83,$23 - db $06,$83,$23 - db $06,$83,$23 - db $FF - -AmnesiaAnim: ; 7a5f3 (1e:65f3) - db $08,$84,$25 - db $08,$84,$25 - db $FF - -KinesisAnim: ; 7a5fa (1e:65fa) - db $08,$85,$01 - db $FF - -SoftboiledAnim: ; 7a5fe (1e:65fe) - db SE_SLIDE_MON_HALF_LEFT, $48 - db $08,$86,$4C - db SE_LIGHT_SCREEN_PALETTE, $FF - db SE_SPIRAL_BALLS_INWARD, $FF - db SE_RESET_SCREEN_PALETTE, $FF - db SE_SHOW_MON_PIC, $FF - db $FF - -HiJumpKickAnim: ; 7a6 (1e:660c) - db $46,$87,$04 - db $FF - -GlareAnim: ; 7a610 (1e:6610) - db SE_DARK_SCREEN_PALETTE, $48 - db SE_DARK_SCREEN_FLASH, $88 - db SE_DARK_SCREEN_FLASH, $FF - db SE_RESET_SCREEN_PALETTE, $FF - db $FF - -DreamEaterAnim: ; 7a619 (1e:6619) - db SE_FLASH_SCREEN_LONG, $89 - db SE_DARK_SCREEN_PALETTE, $89 - db $08,$89,$02 - db SE_RESET_SCREEN_PALETTE, $FF - db $FF - -PoisonGasAnim: ; 7a623 (1e:6623) - db $46,$8A,$19 - db $FF - -BarrageAnim: ; 7a627 (1e:6627) - db $43,$8B,$41 - db $05,$FF,$55 - db $FF - -LeechLifeAnim: ; 7a62e (1e:662e) - db $08,$8C,$02 - db SE_DARK_SCREEN_FLASH, $FF - db $06,$FF,$21 - db $06,$FF,$22 - db SE_DARK_SCREEN_FLASH, $FF - db $FF - -LovelyKissAnim: ; 7a63c (1e:663c) - db $06,$8D,$12 - db $FF - -SkyAttackAnim: ; 7a640 (1e:6640) - db SE_SQUISH_MON_PIC, $8E - db SE_SHOOT_BALLS_UPWARD, $FF - db $46,$87,$04 - db SE_SHOW_MON_PIC, $FF - db $FF - -TransformAnim: ; 7a64a (1e:664a) - db $46,$8F,$21 - db $44,$8F,$22 - db $08,$FF,$47 - db SE_TRANSFORM_MON, $FF - db $FF - -BubbleAnim: ; 7a656 (1e:6656) - db $16,$90,$35 - db $FF - -DizzyPunchAnim: ; 7a65a (1e:665a) - db $06,$91,$17 - db $06,$91,$17 - db $06,$91,$17 - db $06,$02,$02 - db $FF - -SporeAnim: ; 7a667 (1e:6667) - db $06,$92,$36 - db $FF - -FlashAnim: ; 7a66b (1e:666b) - db SE_LIGHT_SCREEN_PALETTE, $48 - db SE_DARK_SCREEN_FLASH, $88 - db SE_DARK_SCREEN_FLASH, $FF - db SE_RESET_SCREEN_PALETTE, $FF - db $FF - -PsywaveAnim: ; 7a674 (1e:6674) - db $06,$2F,$31 - db SE_WAVY_SCREEN, $5C - db $FF - -SplashAnim: ; 7a67a (1e:667a) - db SE_BOUNCE_UP_AND_DOWN, $95 - db $FF - -AcidArmorAnim: ; 7a67d (1e:667d) - db SE_SLIDE_MON_DOWN_AND_HIDE, $96 - db $FF - -CrabHammerAnim: ; 7a680 (1e:6680) - db $46,$97,$05 - db $06,$FF,$2A - db $FF - -ExplosionAnim: ; 7a687 (1e:6687) - db $43,$98,$34 - db $FF - -FurySwipesAnim: ; 7a68b (1e:668b) - db $04,$99,$0F - db $FF - -BonemerangAnim: ; 7a68f (1e:668f) - db $06,$9A,$02 - db $FF - -RestAnim: ; 7a693 (1e:6693) - db $10,$9B,$3A - db $10,$9B,$3A - db $FF - -RockSlideAnim: ; 7a69a (1e:669a) - db $04,$9C,$1D - db $03,$9C,$1E - db $46,$9D,$04 - db $FF - -HyperFangAnim: ; 7a6a4 (1e:66a4) - db $06,$9D,$02 - db $FF - -SharpenAnim: ; 7a6a8 (1e:66a8) - db SE_LIGHT_SCREEN_PALETTE, $9E - db $46,$FF,$43 - db SE_DARK_SCREEN_FLASH, $FF - db SE_RESET_SCREEN_PALETTE, $FF - db $FF - -ConversionAnim: ; 7a6b2 (1e:66b2) - db SE_DARK_SCREEN_FLASH, $9F - db $46,$FF,$21 - db $46,$FF,$22 - db SE_DARK_SCREEN_FLASH, $FF - db $FF - -TriAttackAnim: ; 7a6bd (1e:66bd) - db SE_DARK_SCREEN_FLASH, $A0 - db $46,$FF,$4D - db SE_DARK_SCREEN_FLASH, $FF - db $FF - -SuperFangAnim: ; 7a6c5 (1e:66c5) - db SE_DARK_SCREEN_PALETTE, $48 - db $46,$A1,$04 - db SE_RESET_SCREEN_PALETTE, $FF - db $FF - -SlashAnim: ; 7a6cd (1e:66cd) - db $06,$A2,$0F - db $FF - -SubstituteAnim: ; 7a6d1 (1e:66d1) - db SE_SLIDE_MON_OUT, $A3 - db $08,$FF,$47 - db SE_SUBSTITUTE_MON, $FF - db $FF - -BallTossAnim: ; 7a6d9 (1e:66d9) - db $03,$FF,$06 - db $FF - -GreatTossAnim: ; 7a6dd (1e:66dd) - db $03,$FF,$07 - db $FF - -UltraTossAnim: ; 7a6e1 (1e:66e1) - db $02,$FF,$08 - db $FF - -BallShakeAnim: ; 7a6e5 (1e:66e5) - db $04,$FF,$09 - db $FF - -BallPoofAnim: ; 7a6e9 (1e:66e9) - db $04,$FF,$0A - db $FF - -ShowPicAnim: ; 7a6ed (1e:66ed) - db SE_SHOW_ENEMY_MON_PIC, $FF - db $FF - -HidePicAnim: ; 7a6f0 (1e:66f0) - db SE_HIDE_ENEMY_MON_PIC, $FF - db $FF - -EnemyFlashAnim: ; 7a6f3 (1e:66f3) - db SE_SHOW_MON_PIC, $FF - db $FF - -PlayerFlashAnim: ; 7a6f6 (1e:66f6) - db SE_FLASH_MON_PIC, $FF - db $FF - -EnemyHUDShakeAnim: ; 7a6f9 (1e:66f9) - db SE_SHAKE_ENEMY_HUD, $FF - db $FF - -TradeBallDropAnim: ; 7a6fc (1e:66fc) - db $86,$FF,$48 - db $FF - -TradeBallAppear1Anim: ; 7a700 (1e:6700) - db $84,$FF,$49 - db $FF - -TradeBallAppear2Anim: ; 7a704 (1e:6704) - db $86,$FF,$4A - db $FF - -TradeBallPoofAnim: ; 7a708 (1e:6708) - db $86,$FF,$4B - db $FF - -XStatItemAnim: ; 7a7c0 (1e:670c) - db SE_LIGHT_SCREEN_PALETTE, $FF - db SE_SPIRAL_BALLS_INWARD, $FF - db SE_RESET_SCREEN_PALETTE, $FF - db $FF - -ShrinkingSquareAnim: ; 7a713 (1e:6713) - db SE_LIGHT_SCREEN_PALETTE, $FF - db $46,$FF,$43 - db SE_RESET_SCREEN_PALETTE, $FF - db $FF - -XStatItemBlackAnim: ; 7a71b (1e:671b) - db SE_DARKEN_MON_PALETTE, $FF - db SE_SPIRAL_BALLS_INWARD, $FF - db SE_RESET_SCREEN_PALETTE, $FF - db $FF - -ShrinkingSquareBlackAnim: ; 7a722 (1e:6722) - db SE_DARKEN_MON_PALETTE, $FF - db $46,$FF,$43 - db SE_RESET_SCREEN_PALETTE, $FF - db $FF - -UnusedAnim: ; 7a72a (1e:672a) - db SE_LIGHT_SCREEN_PALETTE, $FF - db SE_SHOOT_MANY_BALLS_UPWARD, $FF - db SE_RESET_SCREEN_PALETTE, $FF - db $FF - -ParalyzeAnim: ; 7a731 (1e:6731) - db $04,$13,$24 - db $04,$13,$24 - db $FF - -PoisonAnim: ; 7a738 (1e:6738) - db $08,$13,$27 - db $08,$13,$27 - db $FF - -SleepPlayerAnim: ; 7a73f (1e:673f) - db $10,$9B,$3A - db $10,$9B,$3A - db $FF - -SleepEnemyAnim: ; 7a746 (1e:6746) - db $10,$9B,$3B - db $10,$9B,$3B - db $FF - -ConfusedPlayerAnim: ; 7a74d (1e:674d) - db $08,$84,$25 - db $08,$84,$25 - db $FF - -ConfusedEnemyAnim: ; 7a754 (1e:6754) - db $08,$84,$26 - db $08,$84,$26 - db $FF - -BallBlockAnim: ; 7a75b (1e:675b) - db $03,$FF,$0B - db $FF - -FaintAnim: ; 7a75f (1e:675f) - db SE_SLIDE_MON_DOWN, $5A - db $FF - -ShakeScreenAnim: ; 7a762 (1e:6762) - db SE_SHAKE_SCREEN, $FF - db $FF - -ThrowRockAnim: ; 7a765 (1e:6765) - db $03,$8B,$53 - db $FF - -ThrowBaitAnim: ; 7a769 (1e:6769) - db $03,$8B,$54 - db $FF - -SubanimationPointers: ; 7a76d (1e:676d) - dw Subanimation00 - dw Subanimation01 - dw Subanimation02 - dw Subanimation03 - dw Subanimation04 - dw Subanimation05 - dw Subanimation06 - dw Subanimation07 - dw Subanimation08 - dw Subanimation09 - dw Subanimation0a - dw Subanimation0b - dw Subanimation0c - dw Subanimation0d - dw Subanimation0e - dw Subanimation0f - dw Subanimation10 - dw Subanimation11 - dw Subanimation12 - dw Subanimation13 - dw Subanimation14 - dw Subanimation15 - dw Subanimation16 - dw Subanimation17 - dw Subanimation18 - dw Subanimation19 - dw Subanimation1a - dw Subanimation1b - dw Subanimation1c - dw Subanimation1d - dw Subanimation1e - dw Subanimation1f - dw Subanimation20 - dw Subanimation21 - dw Subanimation22 - dw Subanimation23 - dw Subanimation24 - dw Subanimation25 - dw Subanimation26 - dw Subanimation27 - dw Subanimation28 - dw Subanimation29 - dw Subanimation2a - dw Subanimation2b - dw Subanimation2c - dw Subanimation2d - dw Subanimation2e - dw Subanimation2f - dw Subanimation30 - dw Subanimation31 - dw Subanimation32 - dw Subanimation33 - dw Subanimation34 - dw Subanimation35 - dw Subanimation36 - dw Subanimation37 - dw Subanimation38 - dw Subanimation39 - dw Subanimation3a - dw Subanimation3b - dw Subanimation3c - dw Subanimation3d - dw Subanimation3e - dw Subanimation3f - dw Subanimation40 - dw Subanimation41 - dw Subanimation42 - dw Subanimation43 - dw Subanimation44 - dw Subanimation45 - dw Subanimation46 - dw Subanimation47 - dw Subanimation48 - dw Subanimation49 - dw Subanimation4a - dw Subanimation4b - dw Subanimation4c - dw Subanimation4d - dw Subanimation4e - dw Subanimation4f - dw Subanimation50 - dw Subanimation51 - dw Subanimation52 - dw Subanimation53 - dw Subanimation54 - dw Subanimation55 - -Subanimation04: ; 7a819 (1e:6819) - db $43 - db $02,$1a,$00 - db $02,$10,$00 - db $02,$03,$00 - -Subanimation05: ; 7a823 (1e:6823) - db $41 - db $02,$10,$00 - -Subanimation08: ; 7a827 (1e:6827) - db $0b - db $03,$30,$00 - db $03,$44,$00 - db $03,$94,$00 - db $03,$60,$00 - db $03,$76,$00 - db $03,$9f,$00 - db $03,$8d,$00 - db $03,$a0,$00 - db $03,$1a,$00 - db $03,$a1,$00 - db $03,$34,$00 - -Subanimation07: ; 7a849 (1e:6849) - db $0b - db $03,$30,$00 - db $03,$a2,$00 - db $03,$31,$00 - db $03,$a3,$00 - db $03,$32,$00 - db $03,$a4,$00 - db $03,$92,$00 - db $03,$a5,$00 - db $03,$15,$00 - db $03,$a6,$00 - db $03,$34,$00 - -Subanimation06: ; 7a86b (1e:686b) - db $0b - db $03,$30,$00 - db $03,$a2,$00 - db $03,$93,$00 - db $03,$61,$00 - db $03,$73,$00 - db $03,$a7,$00 - db $03,$33,$00 - db $03,$a8,$00 - db $03,$0e,$00 - db $03,$a9,$00 - db $03,$34,$00 - -Subanimation09: ; 7a88d (1e:688d) - db $04 - db $03,$21,$04 - db $04,$21,$04 - db $03,$21,$04 - db $05,$21,$04 - -Subanimation0a: ; 7a89a (1e:689a) - db $46 - db $06,$1b,$00 - db $07,$1b,$00 - db $08,$36,$00 - db $09,$36,$00 - db $0a,$15,$00 - db $0a,$15,$00 - -Subanimation0b: ; 7a8ad (1e:68ad) - db $04 - db $01,$2d,$00 - db $03,$2f,$00 - db $03,$35,$00 - db $03,$4d,$00 - -Subanimation55: ; 7a8ba (1e:68ba) - db $41 - db $01,$9d,$00 - -Subanimation11: ; 7a8be (1e:68be) - db $4c - db $0b,$26,$00 - db $0c,$26,$00 - db $0b,$26,$00 - db $0c,$26,$00 - db $0b,$28,$00 - db $0c,$28,$00 - db $0b,$28,$00 - db $0c,$28,$00 - db $0b,$27,$00 - db $0c,$27,$00 - db $0b,$27,$00 - db $0c,$27,$00 - -Subanimation2b: ; 7a8e3 (1e:68e3) - db $4b - db $0d,$03,$03 - db $0e,$03,$03 - db $0f,$03,$00 - db $0d,$11,$00 - db $0d,$11,$00 - db $0d,$37,$00 - db $0d,$37,$00 - db $10,$21,$00 - db $10,$21,$00 - db $11,$1b,$00 - db $11,$1b,$00 - -Subanimation2c: ; 7a905 (1e:6905) - db $4c - db $12,$01,$00 - db $12,$0f,$00 - db $12,$1b,$00 - db $12,$25,$00 - db $13,$38,$00 - db $13,$38,$02 - db $14,$38,$00 - db $14,$38,$02 - db $15,$38,$00 - db $15,$38,$00 - db $16,$38,$00 - db $16,$38,$00 - -Subanimation12: ; 7a92a (1e:692a) - db $69 - db $17,$30,$00 - db $17,$39,$00 - db $17,$3a,$00 - db $17,$3b,$00 - db $17,$3c,$00 - db $17,$3d,$00 - db $17,$3e,$00 - db $17,$3f,$00 - db $17,$1f,$00 - -Subanimation00: ; 7a946 (1e:6946) - db $41 - db $01,$17,$00 - -Subanimation01: ; 7a94a (1e:694a) - db $42 - db $01,$0f,$00 - db $01,$1d,$00 - -Subanimation02: ; 7a951 (1e:6951) - db $43 - db $01,$12,$00 - db $01,$15,$00 - db $01,$1c,$00 - -Subanimation03: ; 7a95b (1e:695b) - db $44 - db $01,$0b,$00 - db $01,$11,$00 - db $01,$18,$00 - db $01,$1d,$00 - -Subanimation0c: ; 7a968 (1e:6968) - db $43 - db $0c,$20,$00 - db $0c,$21,$00 - db $0c,$23,$00 - -Subanimation0d: ; 7a972 (1e:6972) - db $46 - db $0c,$20,$02 - db $0c,$15,$00 - db $0c,$21,$02 - db $0c,$17,$00 - db $0c,$23,$02 - db $0c,$19,$00 - -Subanimation0e: ; 7a985 (1e:6985) - db $49 - db $0c,$20,$02 - db $0c,$15,$02 - db $0c,$07,$00 - db $0c,$21,$02 - db $0c,$17,$02 - db $0c,$09,$00 - db $0c,$23,$02 - db $0c,$19,$02 - db $0c,$0c,$00 - -Subanimation1f: ; 7a9a1 (1e:69a1) - db $85 - db $0c,$30,$03 - db $0c,$40,$03 - db $0c,$41,$03 - db $0c,$42,$03 - db $0c,$21,$00 - -Subanimation2e: ; 7a9b1 (1e:69b1) - db $2e - db $18,$43,$02 - db $75,$52,$04 - db $19,$43,$02 - db $75,$63,$04 - db $1a,$43,$02 - db $75,$4d,$04 - db $1b,$43,$02 - db $75,$97,$04 - db $1c,$43,$02 - db $75,$98,$04 - db $1d,$43,$02 - db $75,$58,$04 - db $1e,$43,$02 - db $75,$1b,$00 - -Subanimation2f: ; 7a9dc (1e:69dc) - db $44 - db $1f,$24,$00 - db $20,$20,$00 - db $21,$1a,$00 - db $22,$15,$00 - -Subanimation30: ; 7a9e9 (1e:69e9) - db $52 - db $23,$00,$02 - db $23,$02,$02 - db $23,$04,$00 - db $23,$07,$02 - db $23,$02,$02 - db $23,$04,$00 - db $23,$0e,$02 - db $23,$02,$02 - db $23,$0c,$00 - db $25,$07,$00 - db $25,$0e,$00 - db $25,$15,$00 - db $24,$24,$02 - db $23,$1c,$02 - db $23,$23,$00 - db $23,$21,$02 - db $24,$28,$00 - db $24,$28,$00 - -Subanimation0f: ; 7aa20 (1e:6a20) - db $4c - db $26,$0e,$02 - db $26,$16,$02 - db $26,$1c,$00 - db $27,$0e,$02 - db $27,$16,$02 - db $27,$1c,$00 - db $28,$0e,$02 - db $28,$16,$02 - db $28,$1c,$00 - db $29,$0e,$02 - db $29,$16,$02 - db $29,$1c,$00 - -Subanimation16: ; 7aa45 (1e:6a45) - db $4c - db $2a,$05,$00 - db $2b,$05,$02 - db $2b,$0c,$02 - db $2a,$11,$04 - db $2b,$11,$02 - db $2b,$17,$02 - db $2a,$1b,$04 - db $2b,$1b,$02 - db $2b,$20,$02 - db $2a,$2f,$04 - db $2c,$00,$02 - db $2c,$00,$00 - -Subanimation10: ; 7aa6a (1e:6a6a) - db $88 - db $2d,$44,$00 - db $2e,$45,$00 - db $2d,$46,$00 - db $2e,$47,$00 - db $2d,$48,$00 - db $2e,$49,$00 - db $2d,$2f,$00 - db $2e,$1a,$00 - -Subanimation31: ; 7aa83 (1e:6a83) - db $2a - db $2f,$46,$00 - db $2f,$4a,$00 - db $2f,$4b,$00 - db $2f,$4c,$00 - db $2f,$4d,$00 - db $2f,$4e,$00 - db $2f,$4f,$00 - db $2f,$50,$00 - db $2f,$2e,$00 - db $2f,$51,$00 - -Subanimation13: ; 7aaa2 (1e:6aa2) - db $86 - db $30,$31,$00 - db $30,$32,$00 - db $30,$92,$00 - db $30,$0e,$00 - db $30,$0f,$00 - db $30,$10,$00 - -Subanimation14: ; 7aab5 (1e:6ab5) - db $49 - db $30,$10,$00 - db $30,$10,$03 - db $31,$1c,$04 - db $31,$21,$04 - db $31,$26,$00 - db $30,$10,$02 - db $31,$1d,$04 - db $31,$22,$04 - db $31,$27,$00 - -Subanimation41: ; 7aad1 (1e:6ad1) - db $85 - db $03,$31,$00 - db $03,$32,$00 - db $03,$92,$00 - db $03,$0e,$00 - db $03,$10,$00 - -Subanimation42: ; 7aae1 (1e:6ae1) - db $43 - db $48,$08,$00 - db $49,$08,$00 - db $5a,$08,$00 - -Subanimation15: ; 7aaeb (1e:6aeb) - db $22 - db $35,$52,$00 - db $35,$53,$00 - -Subanimation17: ; 7aaf2 (1e:6af2) - db $44 - db $36,$54,$00 - db $36,$55,$00 - db $37,$56,$00 - db $37,$57,$00 - -Subanimation18: ; 7aaff (1e:6aff) - db $a4 - db $36,$54,$00 - db $36,$55,$00 - db $37,$56,$00 - db $37,$57,$00 - -Subanimation40: ; 7ab0c (1e:6b0c) - db $46 - db $17,$54,$00 - db $17,$55,$00 - db $17,$0e,$00 - db $17,$56,$00 - db $17,$57,$00 - db $17,$13,$00 - -Subanimation19: ; 7ab1f (1e:6b1f) - db $8c - db $38,$31,$00 - db $39,$31,$00 - db $38,$32,$00 - db $39,$32,$00 - db $38,$92,$00 - db $39,$92,$00 - db $38,$0e,$00 - db $39,$0e,$00 - db $38,$0f,$00 - db $39,$0f,$00 - db $38,$10,$00 - db $39,$10,$00 - -Subanimation1a: ; 7ab44 (1e:6b44) - db $50 - db $3a,$08,$00 - db $3b,$08,$00 - db $3c,$08,$00 - db $3d,$08,$00 - db $3e,$08,$00 - db $3f,$08,$00 - db $3e,$08,$00 - db $3f,$08,$00 - db $3a,$0b,$00 - db $3b,$0b,$00 - db $3c,$0b,$00 - db $3d,$0b,$00 - db $3e,$0b,$00 - db $3f,$0b,$00 - db $3e,$0b,$00 - db $3f,$0b,$00 - -Subanimation1b: ; 7ab75 (1e:6b75) - db $84 - db $40,$31,$00 - db $40,$32,$00 - db $40,$92,$00 - db $40,$15,$00 - -Subanimation1c: ; 7ab82 (1e:6b82) - db $43 - db $41,$58,$00 - db $41,$59,$00 - db $41,$21,$00 - -Subanimation1d: ; 7ab8c (1e:6b8c) - db $af - db $24,$9a,$00 - db $23,$1b,$02 - db $24,$22,$00 - db $23,$16,$02 - db $23,$1d,$02 - db $24,$98,$00 - db $25,$2c,$04 - db $25,$2a,$04 - db $25,$99,$04 - db $25,$62,$04 - db $25,$99,$04 - db $25,$62,$04 - db $25,$99,$04 - db $25,$62,$04 - db $25,$99,$03 - -Subanimation1e: ; 7abba (1e:6bba) - db $01 - db $25,$75,$00 - -Subanimation20: ; 7abbe (1e:6bbe) - db $42 - db $42,$07,$00 - db $43,$07,$00 - -Subanimation21: ; 7abc5 (1e:6bc5) - db $43 - db $44,$00,$00 - db $45,$08,$00 - db $46,$10,$02 - -Subanimation22: ; 7abcf (1e:6bcf) - db $8b - db $47,$10,$00 - db $47,$56,$00 - db $47,$07,$00 - db $47,$aa,$00 - db $47,$ab,$00 - db $47,$ac,$00 - db $47,$ad,$00 - db $47,$ae,$00 - db $47,$af,$00 - db $47,$89,$00 - db $47,$b0,$00 - -Subanimation2d: ; 7abf1 (1e:6bf1) - db $66 - db $44,$64,$00 - db $45,$65,$00 - db $46,$66,$00 - db $47,$66,$00 - db $47,$66,$00 - db $47,$66,$00 - -Subanimation39: ; 7ac04 (1e:6c04) - db $61 - db $47,$67,$00 - -Subanimation4e: ; 7ac08 (1e:6c08) - db $41 - db $71,$0f,$03 - -Subanimation4f: ; 7ac0c (1e:6c0c) - db $47 - db $71,$0f,$00 - db $71,$08,$00 - db $71,$01,$00 - db $71,$95,$00 - db $72,$95,$00 - db $73,$95,$00 - db $74,$95,$00 - -Subanimation50: ; 7ac22 (1e:6c22) - db $48 - db $74,$95,$00 - db $73,$95,$00 - db $72,$95,$00 - db $71,$95,$00 - db $71,$01,$00 - db $71,$08,$00 - db $71,$0f,$00 - db $71,$16,$00 - -Subanimation29: ; 7ac3b (1e:6c3b) - db $5d - db $48,$0f,$00 - db $4a,$68,$03 - db $4b,$2a,$03 - db $49,$0f,$00 - db $4a,$68,$03 - db $4b,$2a,$00 - db $4c,$6a,$03 - db $4d,$69,$03 - db $49,$6b,$00 - db $4c,$6a,$03 - db $4d,$69,$00 - db $4a,$68,$03 - db $4b,$2a,$03 - db $49,$6c,$00 - db $4a,$68,$03 - db $4b,$2a,$00 - db $4c,$6a,$03 - db $4d,$69,$03 - db $49,$6d,$00 - db $4c,$6a,$03 - db $4d,$2a,$00 - db $4a,$68,$03 - db $4b,$2a,$03 - db $49,$0f,$00 - db $4a,$68,$03 - db $4b,$2a,$00 - db $4c,$6a,$03 - db $4d,$2a,$03 - db $49,$6b,$00 - -Subanimation2a: ; 7ac93 (1e:6c93) - db $44 - db $4e,$2b,$00 - db $4f,$2b,$00 - db $50,$2b,$00 - db $50,$2b,$00 - -Subanimation23: ; 7aca0 (1e:6ca0) - db $42 - db $51,$2d,$00 - db $51,$6e,$00 - -Subanimation24: ; 7aca7 (1e:6ca7) - db $a2 - db $51,$2d,$00 - db $51,$6e,$00 - -Subanimation25: ; 7acae (1e:6cae) - db $62 - db $52,$71,$00 - db $52,$72,$00 - -Subanimation26: ; 7acb5 (1e:6cb5) - db $02 - db $52,$01,$00 - db $52,$2c,$00 - -Subanimation3a: ; 7acbc (1e:6cbc) - db $63 - db $53,$71,$00 - db $53,$7f,$00 - db $53,$81,$00 - -Subanimation3b: ; 7acc6 (1e:6cc6) - db $03 - db $53,$01,$00 - db $53,$15,$00 - db $53,$2c,$00 - -Subanimation27: ; 7acd0 (1e:6cd0) - db $a2 - db $54,$01,$00 - db $54,$2c,$00 - -Subanimation28: ; 7acd7 (1e:6cd7) - db $23 - db $55,$73,$03 - db $56,$73,$03 - db $57,$73,$00 - -Subanimation32: ; 7ace1 (1e:6ce1) - db $63 - db $47,$74,$00 - db $47,$43,$00 - db $47,$75,$00 - -Subanimation33: ; 7aceb (1e:6ceb) - db $26 - db $58,$76,$00 - db $34,$76,$00 - db $58,$76,$00 - db $34,$76,$00 - db $58,$76,$00 - db $34,$76,$00 - -Subanimation3c: ; 7acfe (1e:6cfe) - db $67 - db $59,$79,$03 - db $59,$7b,$03 - db $59,$77,$03 - db $59,$7a,$03 - db $59,$78,$03 - db $59,$7c,$03 - db $59,$76,$00 - -Subanimation3d: ; 7ad14 (1e:6d14) - db $08 - db $3a,$4d,$00 - db $3b,$4d,$00 - db $3c,$4d,$00 - db $3d,$4d,$00 - db $3e,$4d,$00 - db $3f,$4d,$00 - db $3e,$4d,$00 - db $3f,$4d,$00 - -Subanimation34: ; 7ad2d (1e:6d2d) - db $35 - db $48,$7d,$00 - db $49,$7d,$00 - db $5a,$7d,$00 - db $48,$30,$00 - db $49,$30,$00 - db $5a,$30,$00 - db $48,$7e,$00 - db $49,$7e,$00 - db $5a,$7e,$00 - db $48,$7f,$00 - db $49,$7f,$00 - db $5a,$7f,$00 - db $48,$80,$00 - db $49,$80,$00 - db $5a,$80,$00 - db $48,$81,$00 - db $49,$81,$00 - db $5a,$81,$00 - db $48,$82,$00 - db $49,$82,$00 - db $5a,$82,$00 - -Subanimation35: ; 7ad6d (1e:6d6d) - db $24 - db $5b,$83,$03 - db $5c,$84,$03 - db $5d,$85,$03 - db $5e,$09,$00 - -Subanimation36: ; 7ad7a (1e:6d7a) - db $48 - db $5f,$2a,$00 - db $5f,$00,$00 - db $60,$2a,$00 - db $60,$00,$00 - db $61,$2a,$00 - db $61,$00,$00 - db $62,$2a,$00 - db $62,$00,$00 - -Subanimation37: ; 7ad93 (1e:6d93) - db $2a - db $63,$89,$00 - db $64,$75,$00 - db $63,$76,$00 - db $65,$0d,$00 - db $65,$86,$00 - db $65,$12,$00 - db $65,$87,$00 - db $65,$17,$00 - db $65,$88,$00 - db $65,$1a,$00 - -Subanimation38: ; 7adb2 (1e:6db2) - db $50 - db $66,$8a,$00 - db $66,$33,$00 - db $66,$2e,$00 - db $67,$24,$03 - db $66,$01,$04 - db $66,$10,$04 - db $66,$1d,$04 - db $67,$28,$03 - db $66,$2a,$04 - db $66,$0e,$04 - db $66,$1b,$04 - db $67,$26,$03 - db $66,$03,$04 - db $66,$12,$04 - db $66,$1e,$04 - db $67,$29,$00 - -Subanimation3e: ; 7ade3 (1e:6de3) - db $92 - db $02,$31,$00 - db $34,$31,$00 - db $02,$31,$00 - db $02,$32,$00 - db $34,$32,$00 - db $02,$32,$00 - db $02,$92,$00 - db $34,$92,$00 - db $02,$92,$00 - db $02,$0e,$00 - db $34,$0e,$00 - db $02,$0e,$00 - db $02,$0f,$00 - db $34,$0f,$00 - db $02,$0f,$00 - db $02,$10,$00 - db $34,$10,$00 - db $02,$10,$00 - -Subanimation3f: ; 7ae1a (1e:6e1a) - db $72 - db $68,$4b,$00 - db $68,$8c,$00 - db $68,$20,$00 - db $68,$1c,$00 - db $68,$19,$00 - db $68,$14,$00 - db $68,$76,$00 - db $68,$8d,$00 - db $68,$15,$00 - db $68,$10,$00 - db $68,$0c,$00 - db $68,$06,$00 - db $68,$8e,$00 - db $68,$8f,$00 - db $68,$90,$00 - db $68,$26,$00 - db $68,$23,$00 - db $68,$1f,$00 - -Subanimation44: ; 7ae51 (1e:6e51) - db $2c - db $69,$4b,$00 - db $69,$8c,$00 - db $69,$20,$00 - db $69,$1c,$00 - db $69,$19,$00 - db $69,$14,$00 - db $69,$76,$00 - db $69,$8d,$00 - db $69,$15,$00 - db $69,$10,$00 - db $69,$0c,$00 - db $69,$06,$00 - -Subanimation43: ; 7ae76 (1e:6e76) - db $a3 - db $6a,$07,$00 - db $6b,$0f,$00 - db $6c,$17,$00 - -Subanimation45: ; 7ae80 (1e:6e80) - db $24 - db $6d,$8b,$00 - db $6d,$84,$00 - db $6d,$63,$00 - db $6d,$8c,$00 - -Subanimation46: ; 7ae8d (1e:6e8d) - db $26 - db $6d,$8b,$00 - db $6d,$84,$00 - db $6d,$63,$00 - db $6d,$8c,$00 - db $6d,$0a,$00 - db $6d,$89,$00 - -Subanimation47: ; 7aea0 (1e:6ea0) - db $23 - db $06,$82,$00 - db $07,$82,$00 - db $08,$96,$00 - -Subanimation48: ; 7aeaa (1e:6eaa) - db $06 - db $03,$41,$04 - db $03,$48,$04 - db $04,$48,$04 - db $03,$48,$04 - db $05,$48,$04 - db $03,$48,$03 - -Subanimation49: ; 7aebd (1e:6ebd) - db $04 - db $04,$48,$04 - db $03,$48,$04 - db $05,$48,$04 - db $03,$48,$03 - -Subanimation4a: ; 7aeca (1e:6eca) - db $01 - db $04,$84,$03 - -Subanimation4b: ; 7aece (1e:6ece) - db $03 - db $06,$72,$00 - db $07,$72,$00 - db $08,$72,$00 - -Subanimation4c: ; 7aed8 (1e:6ed8) - db $68 - db $6f,$30,$00 - db $6e,$30,$00 - db $70,$30,$00 - db $6e,$30,$00 - db $6f,$30,$00 - db $6e,$30,$00 - db $70,$30,$00 - db $6e,$30,$00 - -Subanimation4d: ; 7aef1 (1e:6ef1) - db $26 - db $32,$4b,$00 - db $33,$4f,$00 - db $32,$20,$00 - db $33,$16,$00 - db $32,$19,$00 - db $33,$0d,$00 - -Subanimation51: ; 7af04 (1e:6f04) - db $a6 - db $76,$1b,$00 - db $34,$1b,$00 - db $76,$1b,$00 - db $34,$1b,$00 - db $76,$1b,$00 - db $34,$1b,$00 - -Subanimation52: ; 7af17 (1e:6f17) - db $47 - db $77,$25,$00 - db $77,$9b,$00 - db $77,$1a,$00 - db $77,$9c,$00 - db $77,$2f,$00 - db $77,$50,$00 - db $77,$8c,$00 - -Subanimation53: ; 7af2d (1e:6f2d) - db $0c - db $78,$30,$00 - db $78,$a2,$00 - db $78,$93,$00 - db $78,$61,$00 - db $78,$73,$00 - db $78,$a7,$00 - db $78,$33,$00 - db $78,$a8,$00 - db $78,$0e,$00 - db $78,$a9,$00 - db $78,$34,$00 - db $01,$9e,$00 - -Subanimation54: ; 7af52 (1e:6f52) - db $0b - db $79,$30,$00 - db $79,$a2,$00 - db $79,$93,$00 - db $79,$61,$00 - db $79,$73,$00 - db $79,$a7,$00 - db $79,$33,$00 - db $79,$a8,$00 - db $79,$0e,$00 - db $79,$a9,$00 - db $79,$34,$00 - -FrameBlockPointers: ; 7af74 (1e:6f74) - dw FrameBlock00 - dw FrameBlock01 - dw FrameBlock02 - dw FrameBlock03 - dw FrameBlock04 - dw FrameBlock05 - dw FrameBlock06 - dw FrameBlock07 - dw FrameBlock08 - dw FrameBlock09 - dw FrameBlock0a - dw FrameBlock0b - dw FrameBlock0c - dw FrameBlock0d - dw FrameBlock0e - dw FrameBlock0f - dw FrameBlock10 - dw FrameBlock11 - dw FrameBlock12 - dw FrameBlock13 - dw FrameBlock14 - dw FrameBlock15 - dw FrameBlock16 - dw FrameBlock17 - dw FrameBlock18 - dw FrameBlock19 - dw FrameBlock1a - dw FrameBlock1b - dw FrameBlock1c - dw FrameBlock1d - dw FrameBlock1e - dw FrameBlock1f - dw FrameBlock20 - dw FrameBlock21 - dw FrameBlock22 - dw FrameBlock23 - dw FrameBlock24 - dw FrameBlock25 - dw FrameBlock26 - dw FrameBlock27 - dw FrameBlock28 - dw FrameBlock29 - dw FrameBlock2a - dw FrameBlock2b - dw FrameBlock2c - dw FrameBlock2d - dw FrameBlock2e - dw FrameBlock2f - dw FrameBlock30 - dw FrameBlock31 - dw FrameBlock32 - dw FrameBlock33 - dw FrameBlock34 - dw FrameBlock35 - dw FrameBlock36 - dw FrameBlock37 - dw FrameBlock38 - dw FrameBlock39 - dw FrameBlock3a - dw FrameBlock3b - dw FrameBlock3c - dw FrameBlock3d - dw FrameBlock3e - dw FrameBlock3f - dw FrameBlock40 - dw FrameBlock41 - dw FrameBlock42 - dw FrameBlock43 - dw FrameBlock44 - dw FrameBlock45 - dw FrameBlock46 - dw FrameBlock47 - dw SmallBlackCircleFrameBlock - dw LargeBlockCircleFrameBlock - dw FrameBlock4a - dw FrameBlock4b - dw FrameBlock4c - dw FrameBlock4d - dw FrameBlock4e - dw FrameBlock4f - dw FrameBlock50 - dw FrameBlock51 - dw FrameBlock52 - dw FrameBlock53 - dw FrameBlock54 - dw FrameBlock55 - dw FrameBlock56 - dw FrameBlock57 - dw FrameBlock58 - dw FrameBlock59 - dw FrameBlock5a - dw FrameBlock5b - dw FrameBlock5c - dw FrameBlock5d - dw FrameBlock5e - dw FrameBlock5f - dw FrameBlock60 - dw FrameBlock61 - dw FrameBlock62 - dw FrameBlock63 - dw FrameBlock64 - dw FrameBlock65 - dw FrameBlock66 - dw FrameBlock67 - dw FrameBlock68 - dw FrameBlock69 - dw FrameBlock6a - dw FrameBlock6b - dw FrameBlock6c - dw FrameBlock6d - dw FrameBlock6e - dw FrameBlock6f - dw FrameBlock70 - dw FrameBlock71 - dw FrameBlock72 - dw FrameBlock73 - dw FrameBlock74 - dw FrameBlock75 - dw FrameBlock76 - dw FrameBlock77 - dw FrameBlock78 - dw FrameBlock79 - -; FrameBlock format is as follows: -; first byte = number of tiles in FrameBlock -; -; Next, each group of 4 bytes describes a tile in the FrameBlock -; first byte = y offset -; second byte = x offset -; third byte = tile id (it's actually tile id - $31) -; fourth byte = tile properties (xflip/yflip/etc.) -FrameBlock01: ; 7b068 (1e:7068) - db $09 - db $00,$00,$2c,$00 - db $00,$08,$2d,$00 - db $00,$10,$2c,$20 - db $08,$00,$3c,$00 - db $08,$08,$3d,$00 - db $08,$10,$3c,$20 - db $10,$00,$2c,$40 - db $10,$08,$2d,$40 - db $10,$10,$2c,$60 - -FrameBlock02: ; 7b08d (1e:708d) - db $10 - db $00,$00,$20,$00 - db $00,$08,$21,$00 - db $00,$10,$21,$20 - db $00,$18,$20,$20 - db $08,$00,$30,$00 - db $08,$08,$31,$00 - db $08,$10,$31,$20 - db $08,$18,$30,$20 - db $10,$00,$30,$40 - db $10,$08,$31,$40 - db $10,$10,$31,$60 - db $10,$18,$30,$60 - db $18,$00,$20,$40 - db $18,$08,$21,$40 - db $18,$10,$21,$60 - db $18,$18,$20,$60 - -FrameBlock03: ; 7b0ce (1e:70ce) - db $04 - db $00,$00,$02,$00 - db $00,$08,$02,$20 - db $08,$00,$12,$00 - db $08,$08,$12,$20 - -FrameBlock04: ; 7b0df (1e:70df) - db $04 - db $00,$00,$06,$00 - db $00,$08,$07,$00 - db $08,$00,$16,$00 - db $08,$08,$17,$00 - -FrameBlock05: ; 7b0f0 (1e:70f0) - db $04 - db $00,$00,$07,$20 - db $00,$08,$06,$20 - db $08,$00,$17,$20 - db $08,$08,$16,$20 - -FrameBlock06: ; 7b101 (1e:7101) - db $0c - db $00,$08,$23,$00 - db $08,$00,$32,$00 - db $08,$08,$33,$00 - db $00,$10,$23,$20 - db $08,$10,$33,$20 - db $08,$18,$32,$20 - db $10,$00,$32,$40 - db $10,$08,$33,$40 - db $18,$08,$23,$40 - db $10,$10,$33,$60 - db $10,$18,$32,$60 - db $18,$10,$23,$60 - -FrameBlock07: ; 7b132 (1e:7132) - db $10 - db $00,$00,$20,$00 - db $00,$08,$21,$00 - db $08,$00,$30,$00 - db $08,$08,$31,$00 - db $00,$10,$21,$20 - db $00,$18,$20,$20 - db $08,$10,$31,$20 - db $08,$18,$30,$20 - db $10,$00,$30,$40 - db $10,$08,$31,$40 - db $18,$00,$20,$40 - db $18,$08,$21,$40 - db $10,$10,$31,$60 - db $10,$18,$30,$60 - db $18,$10,$21,$60 - db $18,$18,$20,$60 - -FrameBlock08: ; 7b173 (1e:7173) - db $10 - db $00,$00,$20,$00 - db $00,$08,$21,$00 - db $08,$00,$30,$00 - db $08,$08,$31,$00 - db $00,$18,$21,$20 - db $00,$20,$20,$20 - db $08,$18,$31,$20 - db $08,$20,$30,$20 - db $18,$00,$30,$40 - db $18,$08,$31,$40 - db $20,$00,$20,$40 - db $20,$08,$21,$40 - db $18,$18,$31,$60 - db $18,$20,$30,$60 - db $20,$18,$21,$60 - db $20,$20,$20,$60 - -FrameBlock09: ; 7b1b4 (1e:71b4) - db $0c - db $00,$00,$24,$00 - db $00,$08,$25,$00 - db $08,$00,$34,$00 - db $00,$18,$25,$20 - db $00,$20,$24,$20 - db $08,$20,$34,$20 - db $18,$00,$34,$40 - db $20,$00,$24,$40 - db $20,$08,$25,$40 - db $18,$20,$34,$60 - db $20,$18,$25,$60 - db $20,$20,$24,$60 - -FrameBlock0a: ; 7b1e5 (1e:71e5) - db $0c - db $00,$00,$24,$00 - db $00,$08,$25,$00 - db $08,$00,$34,$00 - db $00,$20,$25,$20 - db $00,$28,$24,$20 - db $08,$28,$34,$20 - db $20,$00,$34,$40 - db $28,$00,$24,$40 - db $28,$08,$25,$40 - db $20,$28,$34,$60 - db $28,$20,$25,$60 - db $28,$28,$24,$60 - -FrameBlock0b: ; 7b216 (1e:7216) - db $04 - db $00,$00,$05,$00 - db $00,$08,$05,$20 - db $08,$00,$15,$00 - db $08,$08,$15,$20 - -FrameBlock0c: ; 7b227 (1e:7227) - db $04 - db $00,$00,$04,$00 - db $00,$08,$04,$20 - db $08,$00,$14,$00 - db $08,$08,$14,$20 - -FrameBlock0d: ; 7b238 (1e:7238) - db $08 - db $00,$00,$0c,$00 - db $00,$08,$0d,$00 - db $08,$00,$1c,$00 - db $08,$08,$1d,$00 - db $10,$00,$1d,$60 - db $10,$08,$1c,$60 - db $18,$00,$0d,$60 - db $18,$08,$0c,$60 - -FrameBlock0e: ; 7b259 (1e:7259) - db $04 - db $20,$00,$0c,$00 - db $20,$08,$0d,$00 - db $28,$00,$1c,$00 - db $28,$08,$1d,$00 - -FrameBlock0f: ; 7b26a (1e:726a) - db $04 - db $30,$00,$1d,$60 - db $30,$08,$1c,$60 - db $38,$00,$0d,$60 - db $38,$08,$0c,$60 - -FrameBlock10: ; 7b27b (1e:727b) - db $08 - db $00,$00,$0e,$00 - db $00,$08,$0f,$00 - db $08,$00,$1e,$00 - db $08,$08,$1f,$00 - db $00,$10,$0f,$20 - db $00,$18,$0e,$20 - db $08,$10,$1f,$20 - db $08,$18,$1e,$20 - -FrameBlock11: ; 7b29c (1e:729c) - db $08 - db $00,$00,$0e,$00 - db $00,$08,$0f,$00 - db $08,$00,$1e,$00 - db $08,$08,$1f,$00 - db $00,$20,$0f,$20 - db $00,$28,$0e,$20 - db $08,$20,$1f,$20 - db $08,$28,$1e,$20 - -FrameBlock12: ; 7b2bd (1e:72bd) - db $03 - db $00,$00,$37,$00 - db $08,$10,$37,$00 - db $00,$20,$37,$00 - -FrameBlock13: ; 7b2ca (1e:72ca) - db $04 - db $00,$00,$36,$00 - db $00,$08,$36,$20 - db $08,$00,$36,$40 - db $08,$08,$36,$60 - -FrameBlock14: ; 7b2db (1e:72db) - db $08 - db $00,$10,$28,$00 - db $00,$18,$28,$20 - db $08,$10,$38,$00 - db $08,$18,$38,$20 - db $00,$20,$36,$00 - db $00,$28,$36,$20 - db $08,$20,$36,$40 - db $08,$28,$36,$60 - -FrameBlock15: ; 7b2fc (1e:72fc) - db $0c - db $00,$00,$28,$00 - db $00,$08,$28,$20 - db $08,$00,$38,$00 - db $08,$08,$38,$20 - db $00,$10,$29,$00 - db $00,$18,$29,$20 - db $08,$10,$39,$00 - db $08,$18,$39,$20 - db $00,$20,$28,$00 - db $00,$28,$28,$20 - db $08,$20,$38,$00 - db $08,$28,$38,$20 - -FrameBlock16: ; 7b32d (1e:732d) - db $08 - db $00,$00,$29,$00 - db $00,$08,$29,$20 - db $08,$00,$39,$00 - db $08,$08,$39,$20 - db $00,$20,$29,$00 - db $00,$28,$29,$20 - db $08,$20,$39,$00 - db $08,$28,$39,$20 - -FrameBlock17: ; 7b34e (1e:734e) - db $04 - db $00,$00,$08,$00 - db $00,$08,$09,$00 - db $08,$00,$18,$00 - db $08,$08,$19,$00 - -FrameBlock18: ; 7b35f (1e:735f) - db $01 - db $18,$00,$45,$60 - -FrameBlock19: ; 7b364 (1e:7364) - db $02 - db $18,$08,$45,$00 - db $10,$08,$46,$60 - -FrameBlock1a: ; 7b36d (1e:736d) - db $02 - db $10,$10,$45,$60 - db $18,$10,$46,$00 - -FrameBlock1b: ; 7b376 (1e:7376) - db $02 - db $10,$18,$45,$00 - db $08,$18,$46,$60 - -FrameBlock1c: ; 7b37f (1e:737f) - db $02 - db $08,$20,$45,$60 - db $10,$20,$46,$00 - -FrameBlock1d: ; 7b388 (1e:7388) - db $02 - db $08,$28,$45,$00 - db $00,$28,$46,$60 - -FrameBlock1e: ; 7b391 (1e:7391) - db $02 - db $00,$30,$45,$60 - db $08,$30,$46,$00 - -FrameBlock75: ; 7b39a (1e:739a) - db $04 - db $00,$00,$43,$00 - db $00,$08,$43,$20 - db $08,$00,$22,$00 - db $08,$08,$43,$60 - -FrameBlock1f: ; 7b3ab (1e:73ab) - db $02 - db $00,$00,$03,$00 - db $00,$30,$03,$20 - -FrameBlock20: ; 7b3b4 (1e:73b4) - db $06 - db $00,$00,$03,$00 - db $00,$30,$03,$20 - db $08,$08,$03,$00 - db $08,$28,$03,$20 - db $08,$00,$13,$00 - db $08,$30,$13,$20 - -FrameBlock21: ; 7b3cd (1e:73cd) - db $0c - db $00,$00,$03,$00 - db $00,$30,$03,$20 - db $08,$08,$03,$00 - db $08,$28,$03,$20 - db $08,$00,$13,$00 - db $08,$30,$13,$20 - db $10,$10,$03,$00 - db $10,$20,$03,$20 - db $10,$08,$13,$00 - db $10,$28,$13,$20 - db $10,$00,$03,$00 - db $10,$30,$03,$20 - -FrameBlock22: ; 7b3fe (1e:73fe) - db $13 - db $00,$00,$03,$00 - db $08,$00,$13,$00 - db $10,$00,$03,$00 - db $18,$00,$13,$00 - db $08,$08,$03,$00 - db $10,$08,$13,$00 - db $18,$08,$03,$00 - db $10,$10,$03,$00 - db $18,$10,$13,$00 - db $18,$18,$03,$00 - db $10,$20,$03,$20 - db $18,$20,$13,$20 - db $08,$28,$03,$20 - db $10,$28,$13,$20 - db $18,$28,$03,$20 - db $00,$30,$03,$20 - db $08,$30,$13,$20 - db $10,$30,$03,$20 - db $18,$30,$13,$20 - -FrameBlock23: ; 7b44b (1e:744b) - db $04 - db $00,$00,$0a,$00 - db $00,$08,$0b,$00 - db $08,$00,$1a,$00 - db $08,$08,$1b,$00 - -FrameBlock24: ; 7b45c (1e:745c) - db $02 - db $08,$00,$0a,$00 - db $08,$08,$0b,$00 - -FrameBlock25: ; 7b465 (1e:7465) - db $0c - db $10,$00,$0a,$00 - db $10,$08,$0b,$00 - db $18,$00,$1a,$00 - db $18,$08,$1b,$00 - db $00,$10,$0a,$00 - db $00,$18,$0b,$00 - db $08,$10,$1a,$00 - db $08,$18,$1b,$00 - db $08,$20,$0a,$00 - db $08,$28,$0b,$00 - db $10,$20,$1a,$00 - db $10,$28,$1b,$00 - -FrameBlock26: ; 7b496 (1e:7496) - db $04 - db $00,$10,$44,$00 - db $00,$18,$44,$20 - db $08,$10,$44,$40 - db $08,$18,$44,$60 - -FrameBlock27: ; 7b4a7 (1e:74a7) - db $05 - db $08,$08,$44,$00 - db $08,$10,$44,$20 - db $10,$08,$44,$40 - db $10,$10,$44,$60 - db $00,$18,$47,$00 - -FrameBlock28: ; 7b4bc (1e:74bc) - db $06 - db $10,$00,$44,$00 - db $10,$08,$44,$20 - db $18,$00,$44,$40 - db $18,$08,$44,$60 - db $08,$10,$47,$00 - db $02,$16,$47,$00 - -FrameBlock29: ; 7b4d5 (1e:74d5) - db $04 - db $18,$00,$47,$00 - db $12,$06,$47,$00 - db $0c,$0c,$47,$00 - db $06,$12,$47,$00 - -FrameBlock2a: ; 7b4e6 (1e:74e6) - db $04 - db $00,$00,$44,$00 - db $00,$08,$44,$20 - db $08,$00,$44,$40 - db $08,$08,$44,$60 - -FrameBlock2b: ; 7b4f7 (1e:74f7) - db $02 - db $06,$02,$47,$00 - db $00,$08,$47,$00 - -FrameBlock2c: ; 7b500 (1e:7500) - db $01 - db $a0,$00,$4d,$00 - -FrameBlock2d: ; 7b505 (1e:7505) - db $08 - db $00,$00,$26,$00 - db $00,$08,$27,$00 - db $08,$00,$36,$00 - db $08,$08,$37,$00 - db $10,$00,$28,$00 - db $10,$08,$29,$00 - db $18,$00,$38,$00 - db $18,$08,$39,$00 - -FrameBlock2e: ; 7b526 (1e:7526) - db $08 - db $00,$00,$27,$20 - db $00,$08,$26,$20 - db $08,$00,$37,$20 - db $08,$08,$36,$20 - db $10,$00,$29,$20 - db $10,$08,$28,$20 - db $18,$00,$39,$20 - db $18,$08,$38,$20 - -FrameBlock2f: ; 7b547 (1e:7547) - db $04 - db $00,$00,$0c,$00 - db $00,$08,$0d,$00 - db $08,$00,$0c,$40 - db $08,$08,$0d,$40 - -FrameBlock30: ; 7b558 (1e:7558) - db $04 - db $00,$00,$44,$00 - db $00,$08,$44,$20 - db $08,$00,$44,$40 - db $08,$08,$44,$60 - -FrameBlock31: ; 7b569 (1e:7569) - db $01 - db $00,$00,$45,$00 - -FrameBlock32: ; 7b56e (1e:756e) - db $07 - db $00,$00,$4d,$00 - db $00,$08,$2f,$00 - db $00,$10,$4d,$20 - db $08,$00,$4e,$00 - db $08,$08,$07,$00 - db $08,$10,$4e,$20 - db $10,$08,$3f,$00 - -FrameBlock33: ; 7b58b (1e:758b) - db $07 - db $00,$08,$3f,$40 - db $08,$00,$4e,$40 - db $08,$08,$07,$40 - db $08,$10,$4e,$60 - db $10,$00,$4d,$40 - db $10,$08,$2f,$40 - db $10,$10,$4d,$60 - -FrameBlock34: ; 7b5a8 (1e:75a8) - db $01 - db $a0,$00,$00,$10 - -FrameBlock35: ; 7b5ad (1e:75ad) - db $06 - db $00,$00,$2a,$00 - db $00,$08,$2b,$00 - db $08,$00,$3a,$00 - db $10,$00,$3a,$40 - db $18,$00,$2a,$40 - db $18,$08,$2b,$40 - -FrameBlock36: ; 7b5c6 (1e:75c6) - db $04 - db $00,$00,$00,$00 - db $00,$08,$01,$00 - db $08,$00,$10,$00 - db $08,$08,$11,$00 - -FrameBlock37: ; 7b5d7 (1e:75d7) - db $04 - db $00,$00,$01,$a0 - db $00,$08,$00,$a0 - db $08,$00,$11,$a0 - db $08,$08,$10,$a0 - -FrameBlock38: ; 7b5e8 (1e:75e8) - db $04 - db $00,$00,$0a,$00 - db $00,$08,$0b,$00 - db $08,$00,$1a,$00 - db $08,$08,$1b,$00 - -FrameBlock39: ; 7b5f9 (1e:75f9) - db $04 - db $00,$00,$0b,$20 - db $00,$08,$0a,$20 - db $08,$00,$1b,$20 - db $08,$08,$1a,$20 - -FrameBlock3a: ; 7b60a (1e:760a) - db $04 - db $20,$00,$05,$00 - db $20,$08,$05,$20 - db $28,$00,$15,$00 - db $28,$08,$15,$20 - -FrameBlock3b: ; 7b61b (1e:761b) - db $05 - db $18,$00,$04,$00 - db $18,$08,$04,$20 - db $20,$00,$14,$00 - db $20,$08,$14,$20 - db $28,$04,$41,$00 - -FrameBlock3c: ; 7b630 (1e:7630) - db $06 - db $10,$00,$05,$00 - db $10,$08,$05,$20 - db $18,$00,$15,$00 - db $18,$08,$15,$20 - db $20,$04,$42,$00 - db $28,$04,$42,$00 - -FrameBlock3d: ; 7b649 (1e:7649) - db $07 - db $08,$00,$04,$00 - db $08,$08,$04,$20 - db $10,$00,$14,$00 - db $10,$08,$14,$20 - db $18,$04,$41,$00 - db $20,$04,$41,$00 - db $28,$04,$41,$00 - -FrameBlock3e: ; 7b666 (1e:7666) - db $08 - db $00,$00,$05,$00 - db $00,$08,$05,$20 - db $08,$00,$15,$00 - db $08,$08,$15,$20 - db $10,$04,$42,$00 - db $18,$04,$42,$00 - db $20,$04,$42,$00 - db $28,$04,$42,$00 - -FrameBlock3f: ; 7b687 (1e:7687) - db $08 - db $00,$00,$04,$00 - db $00,$08,$04,$20 - db $08,$00,$14,$00 - db $08,$08,$14,$20 - db $10,$04,$41,$00 - db $18,$04,$41,$00 - db $20,$04,$41,$00 - db $28,$04,$41,$00 - -FrameBlock40: ; 7b6a8 (1e:76a8) - db $03 - db $00,$00,$3d,$00 - db $00,$08,$3d,$00 - db $08,$08,$3d,$00 - -FrameBlock41: ; 7b6b5 (1e:76b5) - db $04 - db $00,$00,$06,$00 - db $00,$08,$06,$20 - db $08,$00,$16,$00 - db $08,$08,$17,$00 - -FrameBlock42: ; 7b6c6 (1e:76c6) - db $0b - db $00,$10,$42,$00 - db $08,$00,$42,$00 - db $08,$08,$42,$00 - db $08,$10,$42,$00 - db $08,$18,$42,$00 - db $08,$20,$42,$00 - db $10,$10,$42,$00 - db $18,$08,$42,$00 - db $18,$18,$42,$00 - db $20,$00,$42,$00 - db $20,$20,$42,$00 - -FrameBlock43: ; 7b6f3 (1e:76f3) - db $0b - db $00,$10,$41,$00 - db $08,$00,$41,$00 - db $08,$08,$41,$00 - db $08,$10,$41,$00 - db $08,$18,$41,$00 - db $08,$20,$41,$00 - db $10,$10,$41,$00 - db $18,$08,$41,$00 - db $18,$18,$41,$00 - db $20,$00,$41,$00 - db $20,$20,$41,$00 - -FrameBlock44: ; 7b720 (1e:7720) - db $04 - db $00,$00,$49,$00 - db $00,$28,$49,$00 - db $28,$00,$49,$00 - db $28,$28,$49,$00 - -FrameBlock45: ; 7b731 (1e:7731) - db $04 - db $00,$00,$49,$00 - db $00,$18,$49,$00 - db $18,$00,$49,$00 - db $18,$18,$49,$00 - -FrameBlock46: ; 7b742 (1e:7742) - db $04 - db $00,$00,$49,$00 - db $00,$08,$49,$00 - db $08,$00,$49,$00 - db $08,$08,$49,$00 - -FrameBlock47: ; 7b753 (1e:7753) - db $04 - db $00,$00,$43,$00 - db $00,$08,$43,$20 - db $08,$00,$43,$40 - db $08,$08,$43,$60 - -SmallBlackCircleFrameBlock: ; 7b764 (1e:7764) - db $04 - db $08,$08,$33,$00 - db $08,$10,$33,$20 - db $10,$08,$33,$40 - db $10,$10,$33,$60 - -LargeBlockCircleFrameBlock: ; 7b775 (1e:7775) - db $10 - db $00,$00,$22,$00 - db $00,$08,$23,$00 - db $00,$10,$23,$20 - db $00,$18,$22,$20 - db $08,$00,$32,$00 - db $08,$08,$43,$00 - db $08,$10,$43,$20 - db $08,$18,$32,$20 - db $10,$00,$32,$40 - db $10,$08,$43,$40 - db $10,$10,$43,$60 - db $10,$18,$32,$60 - db $18,$00,$22,$40 - db $18,$08,$23,$40 - db $18,$10,$23,$60 - db $18,$18,$22,$60 - -FrameBlock71: ; 7b7b6 (1e:77b6) - db $10 - db $00,$00,$22,$00 - db $00,$08,$3b,$00 - db $00,$10,$23,$20 - db $00,$18,$22,$20 - db $08,$00,$32,$00 - db $08,$08,$43,$00 - db $08,$10,$43,$20 - db $08,$18,$32,$20 - db $10,$00,$32,$40 - db $10,$08,$43,$40 - db $10,$10,$43,$60 - db $10,$18,$32,$60 - db $18,$00,$22,$40 - db $18,$08,$23,$40 - db $18,$10,$23,$60 - db $18,$18,$22,$60 - -FrameBlock72: ; 7b7f7 (1e:77f7) - db $0c - db $00,$00,$32,$00 - db $00,$08,$43,$00 - db $00,$10,$43,$20 - db $00,$18,$32,$20 - db $08,$00,$32,$40 - db $08,$08,$43,$40 - db $08,$10,$43,$60 - db $08,$18,$32,$60 - db $10,$00,$22,$40 - db $10,$08,$23,$40 - db $10,$10,$23,$60 - db $10,$18,$22,$60 - -FrameBlock73: ; 7b828 (1e:7828) - db $08 - db $00,$00,$32,$40 - db $00,$08,$43,$40 - db $00,$10,$43,$60 - db $00,$18,$32,$60 - db $08,$00,$22,$40 - db $08,$08,$23,$40 - db $08,$10,$23,$60 - db $08,$18,$22,$60 - -FrameBlock74: ; 7b849 (1e:7849) - db $04 - db $00,$00,$22,$40 - db $00,$08,$23,$40 - db $00,$10,$23,$60 - db $00,$18,$22,$60 - -FrameBlock4a: ; 7b85a (1e:785a) - db $04 - db $08,$18,$4c,$20 - db $20,$08,$4b,$00 - db $30,$20,$4c,$00 - db $18,$30,$4b,$40 - -FrameBlock4b: ; 7b86b (1e:786b) - db $04 - db $00,$18,$4c,$00 - db $20,$00,$4b,$40 - db $38,$20,$4c,$20 - db $18,$38,$4b,$00 - -FrameBlock4c: ; 7b87c (1e:787c) - db $04 - db $10,$08,$4a,$40 - db $30,$10,$4a,$00 - db $28,$30,$4a,$20 - db $08,$28,$4a,$60 - -FrameBlock4d: ; 7b88d (1e:788d) - db $04 - db $08,$00,$4a,$20 - db $38,$08,$4a,$60 - db $30,$38,$4a,$40 - db $00,$30,$4a,$00 - -FrameBlock4e: ; 7b89e (1e:789e) - db $08 - db $00,$30,$44,$00 - db $00,$38,$44,$20 - db $08,$30,$44,$40 - db $08,$38,$44,$60 - db $26,$0a,$44,$00 - db $26,$12,$44,$20 - db $2e,$0a,$44,$40 - db $2e,$12,$44,$60 - -FrameBlock4f: ; 7b8bf (1e:78bf) - db $0c - db $0e,$22,$44,$00 - db $0e,$2a,$44,$20 - db $16,$22,$44,$40 - db $16,$2a,$44,$60 - db $06,$32,$47,$00 - db $00,$38,$47,$00 - db $1a,$16,$44,$00 - db $1a,$1e,$44,$20 - db $22,$16,$44,$40 - db $22,$1e,$44,$60 - db $30,$08,$47,$00 - db $2a,$0e,$47,$00 - -FrameBlock50: ; 7b8f0 (1e:78f0) - db $08 - db $06,$32,$47,$00 - db $00,$38,$47,$00 - db $12,$26,$47,$00 - db $0c,$2c,$47,$00 - db $1e,$1a,$47,$00 - db $18,$20,$47,$00 - db $2a,$0e,$47,$00 - db $24,$14,$47,$00 - -FrameBlock51: ; 7b911 (1e:7911) - db $08 - db $00,$00,$35,$20 - db $08,$00,$35,$40 - db $10,$00,$35,$00 - db $18,$00,$35,$60 - db $00,$40,$35,$00 - db $08,$40,$35,$60 - db $10,$40,$35,$20 - db $18,$40,$35,$40 - -FrameBlock52: ; 7b932 (1e:7932) - db $04 - db $00,$00,$2a,$00 - db $00,$08,$2b,$00 - db $08,$00,$3a,$00 - db $08,$08,$3b,$00 - -FrameBlock53: ; 7b943 (1e:7943) - db $03 - db $00,$00,$3f,$00 - db $00,$08,$3f,$00 - db $08,$06,$3f,$00 - -FrameBlock54: ; 7b950 (1e:7950) - db $04 - db $00,$00,$0e,$00 - db $00,$08,$0e,$20 - db $08,$00,$0f,$00 - db $08,$08,$0f,$20 - -FrameBlock55: ; 7b961 (1e:7961) - db $03 - db $10,$00,$2c,$00 - db $10,$08,$3c,$00 - db $10,$10,$2d,$00 - -FrameBlock56: ; 7b96e (1e:796e) - db $06 - db $10,$10,$31,$00 - db $10,$18,$31,$00 - db $08,$10,$2c,$00 - db $08,$18,$3c,$00 - db $08,$20,$2d,$00 - db $10,$20,$2d,$00 - -FrameBlock57: ; 7b987 (1e:7987) - db $09 - db $08,$20,$31,$00 - db $10,$20,$31,$00 - db $08,$28,$31,$00 - db $10,$28,$31,$00 - db $00,$20,$2c,$00 - db $00,$28,$3c,$00 - db $00,$30,$2d,$00 - db $08,$30,$2d,$00 - db $10,$30,$2d,$00 - -FrameBlock58: ; 7b9ac (1e:79ac) - db $07 - db $00,$00,$46,$00 - db $08,$02,$47,$00 - db $10,$03,$48,$00 - db $18,$04,$48,$00 - db $20,$05,$48,$00 - db $28,$05,$48,$00 - db $30,$05,$48,$00 - -FrameBlock59: ; 7b9c9 (1e:79c9) - db $01 - db $00,$00,$42,$00 - -FrameBlock5a: ; 7b9ce (1e:79ce) - db $0c - db $00,$00,$24,$00 - db $00,$08,$25,$00 - db $08,$00,$34,$00 - db $00,$10,$25,$20 - db $00,$18,$24,$20 - db $08,$18,$34,$20 - db $10,$00,$34,$40 - db $18,$00,$24,$40 - db $18,$08,$25,$40 - db $10,$18,$34,$60 - db $18,$10,$25,$60 - db $18,$18,$24,$60 - -FrameBlock5b: ; 7b9ff (1e:79ff) - db $04 - db $00,$00,$43,$00 - db $00,$08,$43,$20 - db $08,$00,$43,$40 - db $08,$08,$43,$60 - -FrameBlock5c: ; 7ba10 (1e:7a10) - db $08 - db $00,$00,$49,$00 - db $02,$08,$49,$00 - db $18,$00,$49,$00 - db $10,$10,$49,$00 - db $08,$00,$43,$00 - db $08,$08,$43,$20 - db $10,$00,$43,$40 - db $10,$08,$43,$60 - -FrameBlock5d: ; 7ba31 (1e:7a31) - db $0b - db $00,$00,$49,$00 - db $18,$02,$49,$00 - db $14,$10,$49,$00 - db $08,$00,$43,$00 - db $00,$08,$43,$20 - db $10,$00,$43,$40 - db $10,$08,$43,$60 - db $04,$08,$43,$00 - db $04,$10,$43,$20 - db $0c,$08,$43,$40 - db $0c,$10,$43,$60 - -FrameBlock5e: ; 7ba5e (1e:7a5e) - db $0f - db $00,$08,$49,$00 - db $08,$10,$49,$00 - db $20,$00,$49,$00 - db $08,$00,$43,$00 - db $08,$08,$43,$20 - db $10,$00,$43,$40 - db $10,$08,$43,$60 - db $10,$10,$43,$00 - db $10,$18,$43,$20 - db $18,$10,$43,$40 - db $18,$18,$43,$60 - db $20,$08,$43,$00 - db $20,$10,$43,$20 - db $28,$08,$43,$40 - db $28,$10,$43,$60 - -FrameBlock5f: ; 7ba9b (1e:7a9b) - db $04 - db $00,$00,$49,$00 - db $00,$10,$49,$00 - db $00,$20,$49,$00 - db $00,$30,$49,$00 - -FrameBlock60: ; 7baac (1e:7aac) - db $08 - db $00,$00,$49,$00 - db $00,$10,$49,$00 - db $00,$20,$49,$00 - db $00,$30,$49,$00 - db $08,$08,$49,$00 - db $08,$18,$49,$00 - db $08,$28,$49,$00 - db $08,$38,$49,$00 - -FrameBlock61: ; 7bacd (1e:7acd) - db $0c - db $00,$00,$49,$00 - db $00,$10,$49,$00 - db $00,$20,$49,$00 - db $00,$30,$49,$00 - db $08,$08,$49,$00 - db $08,$18,$49,$00 - db $08,$28,$49,$00 - db $08,$38,$49,$00 - db $10,$00,$49,$00 - db $10,$10,$49,$00 - db $10,$20,$49,$00 - db $10,$30,$49,$00 - -FrameBlock62: ; 7bafe (1e:7afe) - db $0f - db $00,$00,$49,$00 - db $00,$10,$49,$00 - db $00,$20,$49,$00 - db $00,$30,$49,$00 - db $08,$08,$49,$00 - db $08,$18,$49,$00 - db $08,$28,$49,$00 - db $08,$38,$49,$00 - db $10,$00,$49,$00 - db $10,$10,$49,$00 - db $10,$20,$49,$00 - db $10,$30,$49,$00 - db $18,$08,$49,$00 - db $18,$18,$49,$00 - db $18,$28,$49,$00 - db $18,$38,$49,$00 ; unused - -FrameBlock63: ; 7bb3f (1e:7b3f) - db $06 - db $10,$00,$26,$00 - db $10,$08,$27,$00 - db $08,$10,$26,$00 - db $08,$18,$27,$00 - db $00,$20,$26,$00 - db $00,$28,$27,$00 - -FrameBlock64: ; 7bb58 (1e:7b58) - db $06 - db $18,$00,$27,$00 - db $10,$08,$26,$00 - db $10,$10,$27,$00 - db $08,$18,$26,$00 - db $08,$20,$27,$00 - db $00,$28,$26,$00 - -FrameBlock65: ; 7bb71 (1e:7b71) - db $06 - db $00,$00,$1c,$00 - db $00,$08,$1d,$00 - db $10,$00,$1c,$00 - db $10,$08,$1d,$00 - db $20,$00,$1c,$00 - db $20,$08,$1d,$00 - -FrameBlock66: ; 7bb8a (1e:7b8a) - db $02 - db $00,$00,$03,$00 - db $08,$00,$13,$00 - -FrameBlock67: ; 7bb93 (1e:7b93) - db $01 - db $00,$00,$03,$00 - -FrameBlock68: ; 7bb98 (1e:7b98) - db $04 - db $00,$00,$03,$00 - db $00,$08,$03,$20 - db $08,$00,$13,$00 - db $08,$08,$13,$20 - -FrameBlock69: ; 7bba9 (1e:7ba9) - db $01 - db $00,$00,$06,$00 - -FrameBlock6a: ; 7bbae (1e:7bae) - db $08 - db $00,$00,$2e,$00 - db $00,$30,$2e,$20 - db $30,$00,$2e,$40 - db $30,$30,$2e,$60 - db $00,$18,$2f,$00 - db $30,$18,$2f,$40 - db $18,$00,$3e,$00 - db $18,$30,$3e,$20 - -FrameBlock6b: ; 7bbcf (1e:7bcf) - db $08 - db $00,$00,$2e,$00 - db $00,$20,$2e,$20 - db $20,$00,$2e,$40 - db $20,$20,$2e,$60 - db $00,$10,$2f,$00 - db $20,$10,$2f,$40 - db $10,$00,$3e,$00 - db $10,$20,$3e,$20 - -FrameBlock6c: ; 7bbf0 (1e:7bf0) - db $08 - db $00,$00,$2e,$00 - db $00,$10,$2e,$20 - db $10,$00,$2e,$40 - db $10,$10,$2e,$60 - db $00,$08,$2f,$00 - db $10,$08,$2f,$40 - db $08,$00,$3e,$00 - db $08,$10,$3e,$20 - -FrameBlock6d: ; 7bc11 (1e:7c11) - db $02 - db $00,$00,$1e,$00 - db $00,$08,$1f,$00 - -FrameBlock6e: ; 7bc1a (1e:7c1a) - db $04 - db $00,$00,$48,$00 - db $00,$08,$48,$20 - db $08,$00,$12,$00 - db $08,$08,$12,$20 - -FrameBlock6f: ; 7bc2b (1e:7c2b) - db $04 - db $00,$00,$4a,$00 - db $00,$08,$07,$00 - db $08,$00,$16,$00 - db $08,$08,$17,$00 - -FrameBlock70: ; 7bc3c (1e:7c3c) - db $04 - db $00,$00,$07,$20 - db $00,$08,$4a,$20 - db $08,$00,$17,$20 - db $08,$08,$16,$20 - -FrameBlock76: ; 7bc4d (1e:7c4d) - db $07 - db $00,$10,$2f,$00 - db $01,$08,$2f,$00 - db $01,$18,$2f,$00 - db $02,$00,$2e,$00 - db $02,$20,$2e,$20 - db $0a,$00,$3e,$00 - db $0a,$20,$3e,$20 - -FrameBlock77: ; 7bc6a (1e:7c6a) - db $04 - db $00,$02,$4b,$00 - db $00,$0a,$4c,$00 - db $08,$00,$4c,$60 - db $08,$08,$4b,$60 - -FrameBlock78: ; 7bc7b (1e:7c7b) - db $01 - db $00,$00,$4d,$00 - -FrameBlock79: ; 7bc80 (1e:7c80) - db $01 - db $00,$00,$4e,$00 - -FrameBlockBaseCoords: ; 7bc85 (1e:7c85) - db $10,$68 - db $10,$70 - db $10,$78 - db $10,$80 - db $10,$88 - db $10,$90 - db $10,$98 - db $18,$68 - db $18,$70 - db $18,$78 - db $34,$28 - db $18,$80 - db $18,$88 - db $18,$98 - db $20,$68 - db $20,$70 - db $20,$78 - db $20,$80 - db $20,$88 - db $20,$90 - db $20,$98 - db $28,$68 - db $28,$70 - db $28,$78 - db $28,$80 - db $28,$88 - db $30,$68 - db $30,$70 - db $30,$78 - db $30,$80 - db $30,$90 - db $30,$98 - db $38,$68 - db $38,$78 - db $38,$80 - db $38,$88 - db $40,$68 - db $40,$70 - db $40,$78 - db $40,$80 - db $40,$88 - db $40,$98 - db $10,$60 - db $18,$60 - db $20,$60 - db $28,$60 - db $30,$60 - db $40,$60 - db $58,$28 - db $43,$38 - db $33,$48 - db $20,$58 - db $32,$78 - db $58,$58 - db $2C,$6C - db $34,$80 - db $48,$70 - db $42,$36 - db $38,$44 - db $40,$52 - db $48,$60 - db $3E,$6E - db $28,$7C - db $28,$8A - db $50,$3C - db $48,$50 - db $40,$64 - db $38,$38 - db $50,$30 - db $50,$38 - db $50,$40 - db $50,$48 - db $50,$50 - db $48,$58 - db $50,$44 - db $48,$48 - db $48,$4C - db $40,$50 - db $40,$54 - db $38,$58 - db $38,$5C - db $30,$64 - db $48,$40 - db $48,$39 - db $24,$88 - db $24,$70 - db $1C,$70 - db $1C,$88 - db $34,$68 - db $34,$88 - db $68,$50 - db $60,$50 - db $68,$60 - db $58,$50 - db $60,$60 - db $68,$40 - db $40,$40 - db $38,$40 - db $0B,$60 - db $44,$48 - db $40,$14 - db $48,$1C - db $50,$24 - db $4C,$24 - db $10,$62 - db $12,$62 - db $12,$60 - db $20,$72 - db $22,$72 - db $22,$70 - db $28,$62 - db $50,$0A - db $52,$0A - db $38,$30 - db $40,$48 - db $30,$48 - db $40,$30 - db $30,$40 - db $38,$48 - db $40,$4A - db $48,$4B - db $50,$4C - db $58,$4D - db $60,$4D - db $68,$4D - db $38,$10 - db $50,$10 - db $38,$28 - db $48,$18 - db $40,$20 - db $48,$20 - db $40,$3C - db $38,$50 - db $28,$64 - db $1C,$90 - db $24,$80 - db $2C,$70 - db $30,$38 - db $10,$50 - db $3C,$40 - db $40,$58 - db $30,$58 - db $58,$48 - db $50,$58 - db $48,$68 - db $40,$18 - db $28,$58 - db $40,$38 - db $48,$38 - db $08,$70 - db $44,$1C - db $3C,$58 - db $38,$60 - db $08,$60 - db $38,$70 - db $38,$6C - db $38,$64 - db $1C,$74 - db $2E,$74 - db $34,$50 - db $2F,$60 - db $31,$70 - db $4C,$30 - db $3B,$40 - db $2D,$50 - db $26,$60 - db $2D,$70 - db $28,$50 - db $1E,$60 - db $29,$70 - db $16,$60 - db $14,$58 - db $12,$54 - db $14,$50 - db $18,$4C - db $1C,$48 - db $48,$28 - -FrameBlock00: ; 7bde7 (1e:7de7) - db $00,$00 +INCLUDE "data/animations.asm" Func_7bde9: ; 7bde9 (1e:7de9) push hl @@ -115276,7 +58193,7 @@ asm_7befa: ; 7befa (1e:7efa) scf ret -Func_7bf15: ; 7bf15 (1e:7f15) +ShakeElevator: ; 7bf15 (1e:7f15) ld de, $ffe0 call Func_7bf64 ld de, $240 @@ -115287,6 +58204,7 @@ Func_7bf15: ; 7bf15 (1e:7f15) ld a, [$ffaf] ld d, a ld e, $1 + ; number of times to play collision sfx ld b, $64 .asm_7bf30 ld a, e @@ -115367,12 +58285,4 @@ GetMachinePrice: ; 7bf86 (1e:7f86) ld [$ff8d], a ret -TechnicalMachinePrices: ; 7bfa7 (1e:7fa7) -; In thousands (nybbles). - db $32, $21, $34, $24, $34 - db $21, $45, $55, $32, $32 - db $55, $52, $54, $52, $41 - db $21, $12, $42, $25, $24 - db $22, $52, $24, $34, $42 - - +INCLUDE "data/tm_prices.asm" diff --git a/maps/ceruleanhouse.blk b/maps/ceruleanhouse1.blk index 823e6053..823e6053 100644 --- a/maps/ceruleanhouse.blk +++ b/maps/ceruleanhouse1.blk diff --git a/maps/undergroundtunnelentranceroute5.blk b/maps/undergroundpathentranceroute5.blk Binary files differindex a17a7ed2..a17a7ed2 100644 --- a/maps/undergroundtunnelentranceroute5.blk +++ b/maps/undergroundpathentranceroute5.blk diff --git a/maps/undergroundtunnelentranceroute6.blk b/maps/undergroundpathentranceroute6.blk Binary files differindex a17a7ed2..a17a7ed2 100644 --- a/maps/undergroundtunnelentranceroute6.blk +++ b/maps/undergroundpathentranceroute6.blk diff --git a/menu/pc.asm b/menu/pc.asm index 41de601e..d2b633f3 100644 --- a/menu/pc.asm +++ b/menu/pc.asm @@ -570,8 +570,8 @@ Func_21845:: ; 5845 (8:5845) ld a, $22 jp Func_3ef5 -UnnamedText_21865:: ; 21865 (8:5865) - TX_FAR _UnnamedText_21865 +JustAMomentText:: ; 21865 (8:5865) + TX_FAR _JustAMomentText db "@" ld a, [$c109] diff --git a/scripts/agatha.asm b/scripts/agatha.asm new file mode 100755 index 00000000..749f84e7 --- /dev/null +++ b/scripts/agatha.asm @@ -0,0 +1,157 @@ +AgathaScript: ; 7642d (1d:642d) + call AgathaScript_76443 + call EnableAutoTextBoxDrawing + ld hl, AgathaTrainerHeaders + ld de, AgathaScriptPointers + ld a, [W_AGATHACURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_AGATHACURSCRIPT], a + ret + +AgathaScript_76443: ; 76443 (1d:6443) + ld hl, $d126 + bit 5, [hl] + res 5, [hl] + ret z + ld a, [$d865] + bit 1, a + jr z, .asm_76457 + ld a, $e + jp AgathaScript_76459 +.asm_76457 + ld a, $3b + +AgathaScript_76459: ; 76459 (1d:6459) + ld [$d09f], a + ld bc, $2 + ld a, $17 + jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) + +AgathaScript_76464: ; 76464 (1d:6464) + xor a + ld [W_AGATHACURSCRIPT], a + ret + +AgathaScriptPointers: ; 76469 (1d:6469) + dw AgathaScript0 + dw Func_324c + dw AgathaScript2 + dw AgathaScript3 + dw AgathaScript4 + +AgathaScript4: ; 76473 (1d:6473) + ret +asm_76474: ; 76474 (1d:6474) + ld hl, $ccd3 + ld a, $40 + ld [hli], a + ld [hli], a + ld [hli], a + ld [hli], a + ld [hli], a + ld [hl], a + ld a, $6 + ld [$cd38], a + call Func_3486 + ld a, $3 + ld [W_AGATHACURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +AgathaScript0: ; 76490 (1d:6490) + ld hl, CoordsData_764d1 + call ArePlayerCoordsInArray + jp nc, CheckFightingMapTrainers + xor a + ld [H_NEWLYPRESSEDBUTTONS], a + ld [H_CURRENTPRESSEDBUTTONS], a + ld [$ccd3], a + ld [$cd38], a + ld a, [wWhichTrade] ; $cd3d + cp $3 + jr c, .asm_764b4 + ld hl, $d865 + bit 6, [hl] + set 6, [hl] + jr z, asm_76474 +.asm_764b4 + ld a, $2 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + ld a, $40 + ld [$ccd3], a + ld a, $1 + ld [$cd38], a + call Func_3486 + ld a, $3 + ld [W_AGATHACURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +CoordsData_764d1: ; 764d1 (1d:64d1) + db $0A,$04 + db $0A,$05 + db $0B,$04 + db $0B,$05 + db $FF + +AgathaScript3: ; 764da (1d:64da) + ld a, [$cd38] + and a + ret nz + call Delay3 + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [W_AGATHACURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +AgathaScript2: ; 764ed (1d:64ed) + call EndTrainerBattle + ld a, [W_ISINBATTLE] ; $d057 + cp $ff + jp z, AgathaScript_76464 + ld a, $1 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + ld a, $1 + ld [W_GARYCURSCRIPT], a + ret + +AgathaTextPointers: ; 76505 (1d:6505) + dw AgathaText1 + dw AgathaText2 + +AgathaTrainerHeaders: ; 76509 (1d:6509) +AgathaTrainerHeader0: ; 76509 (1d:6509) + db $1 ; flag's bit + db ($0 << 4) ; trainer's view range + dw $d865 ; flag's byte + dw AgathaBeforeBattleText ; 0x6520 TextBeforeBattle + dw AgathaAfterBattleText ; 0x652a TextAfterBattle + dw AgathaEndBattleText ; 0x6525 TextEndBattle + dw AgathaEndBattleText ; 0x6525 TextEndBattle + + db $ff + +AgathaText1: ; 76516 (1d:6516) + db $08 ; asm + ld hl, AgathaTrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +AgathaBeforeBattleText: ; 76520 (1d:6520) + TX_FAR _AgathaBeforeBattleText + db "@" + +AgathaEndBattleText: ; 76525 (1d:6525) + TX_FAR _AgathaEndBattleText + db "@" + +AgathaAfterBattleText: ; 7652a (1d:652a) + TX_FAR _AgathaAfterBattleText + db "@" + +AgathaText2: ; 7652f (1d:652f) + TX_FAR _AgathaText2 + db "@" diff --git a/scripts/battlecenterm.asm b/scripts/battlecenterm.asm new file mode 100755 index 00000000..846b78fb --- /dev/null +++ b/scripts/battlecenterm.asm @@ -0,0 +1,38 @@ +BattleCenterMScript: ; 4fd10 (13:7d10) + call EnableAutoTextBoxDrawing + ld a, [$ffaa] + cp $2 + ld a, $8 + jr z, .asm_4fd1d ; 0x4fd19 $2 + ld a, $c +.asm_4fd1d + ld [$ff8d], a + ld a, $1 + ld [$ff8c], a + call Func_34ae + ld hl, $d72d + bit 0, [hl] + set 0, [hl] + ret nz + ld hl, $c214 + ld a, $8 + ld [hli], a + ld a, $a + ld [hl], a + ld a, $8 + ld [$c119], a + ld a, [$ffaa] + cp $2 + ret z + ld a, $7 + ld [$c215], a + ld a, $c + ld [$c119], a + ret + +BattleCenterMTextPointers: ; 4fd4c (13:7d4c) + dw BattleCenterMText1 + +BattleCenterMText1: ; 4fd4e (13:7d4e) + TX_FAR _BattleCenterMText1 + db "@" diff --git a/scripts/bikeshop.asm b/scripts/bikeshop.asm new file mode 100755 index 00000000..75714dbc --- /dev/null +++ b/scripts/bikeshop.asm @@ -0,0 +1,151 @@ +BikeShopScript: ; 1d73c (7:573c) + jp EnableAutoTextBoxDrawing + +BikeShopTextPointers: ; 1d73f (7:573f) + dw BikeShopText1 + dw BikeShopText2 + dw BikeShopText3 + +BikeShopText1: ; 1d745 (7:5745) + db $08 ; asm + ld a, [$d75f] + bit 0, a + jr z, .asm_260d4 ; 0x1d74b + ld hl, BikeShopText_1d82f + call PrintText + jp .Done +.asm_260d4 ; 0x1d756 + ld b, BIKE_VOUCHER + call IsItemInBag + jr z, .asm_41190 ; 0x1d75b + ld hl, BikeShopText_1d81f + call PrintText + ld bc, (BICYCLE << 8) | 1 + call GiveItem + jr nc, .BagFull + ld a, BIKE_VOUCHER + ldh [$db], a + callba RemoveItemByID + ld hl, $d75f + set 0, [hl] + ld hl, BikeShopText_1d824 + call PrintText + jr .Done +.BagFull + ld hl, BikeShopText_1d834 + call PrintText + jr .Done +.asm_41190 ; 0x1d78c + ld hl, BikeShopText_1d810 + call PrintText + xor a + ld [$cc26], a + ld [$cc2a], a + ld a, $3 + ld [$cc29], a + ld a, $1 + ld [$cc28], a + ld a, $2 + ld [$cc24], a + ld a, $1 + ld [$cc25], a + ld hl, $d730 + set 6, [hl] + ld hl, wTileMap + ld b, $4 + ld c, $f + call TextBoxBorder + call UpdateSprites + FuncCoord 2, 2 ; $c3ca + ld hl, Coord + ld de, BikeShopMenuText + call PlaceString + FuncCoord 8, 3 ; $c3e4 + ld hl, Coord + ld de, BikeShopMenuPrice + call PlaceString + ld hl, BikeShopText_1d815 + call PrintText + call HandleMenuInput + bit 1, a + jr nz, .asm_b7579 ; 0x1d7dc + ld hl, $d730 + res 6, [hl] + ld a, [$cc26] + and a + jr nz, .asm_b7579 ; 0x1d7e7 + ld hl, BikeShopText_1d81a + call PrintText +.asm_b7579 ; 0x1d7ef + ld hl, BikeShopText_1d82a + call PrintText +.Done + jp TextScriptEnd + +BikeShopMenuText: ; 1d7f8 (7:57f8) + db "BICYCLE" + next "CANCEL@" + +BikeShopMenuPrice: ; 1d807 (7:5807) + db "¥1000000@" + +BikeShopText_1d810: ; 1d810 (7:5810) + TX_FAR _BikeShopText_1d810 + db "@" + +BikeShopText_1d815: ; 1d815 (7:5815) + TX_FAR _BikeShopText_1d815 + db "@" + +BikeShopText_1d81a: ; 1d81a (7:581a) + TX_FAR _BikeShopText_1d81a + db "@" + +BikeShopText_1d81f: ; 1d81f (7:581f) + TX_FAR _BikeShopText_1d81f + db "@" + +BikeShopText_1d824: ; 1d824 (7:5824) + TX_FAR _BikeShopText_1d824 ; 0x98eb2 + db $11, "@" + +BikeShopText_1d82a: ; 1d82a (7:582a) + TX_FAR _BikeShopText_1d82a + db "@" + +BikeShopText_1d82f: ; 1d82f (7:582f) + TX_FAR _BikeShopText_1d82f + db "@" + +BikeShopText_1d834: ; 1d834 (7:5834) + TX_FAR _BikeShopText_1d834 + db "@" + +BikeShopText2: ; 1d839 (7:5839) + db $08 ; asm + ld hl, BikeShopText_1d843 + call PrintText + jp TextScriptEnd + +BikeShopText_1d843: ; 1d843 (7:5843) + TX_FAR _BikeShopText_1d843 + db "@" + +BikeShopText3: ; 1d848 (7:5848) + db $08 ; asm + ld a, [$d75f] + bit 0, a + ld hl, BikeShopText_1d861 + jr nz, .asm_34d2d ; 0x1d851 + ld hl, BikeShopText_1d85c +.asm_34d2d ; 0x1d856 + call PrintText + jp TextScriptEnd + +BikeShopText_1d85c: ; 1d85c (7:585c) + TX_FAR _BikeShopText_1d85c + db "@" + +BikeShopText_1d861: ; 1d861 (7:5861) + TX_FAR _BikeShopText_1d861 + db "@" diff --git a/scripts/billshouse.asm b/scripts/billshouse.asm new file mode 100755 index 00000000..6d397de1 --- /dev/null +++ b/scripts/billshouse.asm @@ -0,0 +1,208 @@ +BillsHouseScript: ; 1e76a (7:676a) + call EnableAutoTextBoxDrawing + ld a, [W_BILLSHOUSECURSCRIPT] + ld hl, BillsHouseScriptPointers + jp CallFunctionInTable + +BillsHouseScriptPointers: ; 1e776 (7:6776) + dw BillsHouseScript0 + dw BillsHouseScript1 + dw BillsHouseScript2 + dw BillsHouseScript3 + dw BillsHouseScript4 + dw BillsHouseScript5 + +BillsHouseScript0: ; 1e782 (7:6782) + ret + +BillsHouseScript1: ; 1e783 (7:6783) + ld a, [$c109] + and a + ld de, MovementData_1e79c + jr nz, .asm_1e78f ; 0x1e78a $3 + ld de, MovementData_1e7a0 +.asm_1e78f + ld a, $1 + ld [$ff8c], a + call MoveSprite + ld a, $2 + ld [W_BILLSHOUSECURSCRIPT], a + ret + +MovementData_1e79c: ; 1e79c (7:679c) + db $40,$40,$40,$FF + +MovementData_1e7a0: ; 1e7a0 (7:67a0) + db $C0,$40,$40,$80,$40,$FF + +BillsHouseScript2: ; 1e7a6 (7:67a6) + ld a, [$d730] + bit 0, a + ret nz + ld a, $61 + ld [$cc4d], a + ld a, $11 + call Predef + ld hl, $d7f2 + set 6, [hl] + xor a + ld [wJoypadForbiddenButtonsMask], a + ld a, $3 + ld [W_BILLSHOUSECURSCRIPT], a + ret + +BillsHouseScript3: ; 1e7c5 (7:67c5) + ld a, [$d7f2] + bit 3, a + ret z + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + ld a, $2 + ld [$cf13], a + ld a, $c + ld [$ffeb], a + ld a, $40 + ld [$ffec], a + ld a, $6 + ld [$ffed], a + ld a, $5 + ld [$ffee], a + call Func_32f9 + ld a, $62 + ld [$cc4d], a + ld a, $15 + call Predef + ld c, $8 + call DelayFrames + ld a, $2 + ld [$ff8c], a + ld de, MovementData_1e807 + call MoveSprite + ld a, $4 + ld [W_BILLSHOUSECURSCRIPT], a + ret + +MovementData_1e807: ; 1e807 (7:6807) + db $00,$C0,$C0,$C0,$00,$FF + +BillsHouseScript4: ; 1e80d (7:680d) + ld a, [$d730] + bit 0, a + ret nz + xor a + ld [wJoypadForbiddenButtonsMask], a + ld hl, $d7f2 + set 5, [hl] + ld hl, $d7f1 + set 0, [hl] + ld a, $0 + ld [W_BILLSHOUSECURSCRIPT], a + ret + +BillsHouseScript5: ; 1e827 (7:6827) + ld a, $4 + ld [$ff8c], a + call DisplayTextID + ld a, $0 + ld [W_BILLSHOUSECURSCRIPT], a + ret + +BillsHouseTextPointers: ; 1e834 (7:6834) + dw BillsHouseText1 + dw BillsHouseText2 + dw BillsHouseText3 + dw BillsHouseText4 + +BillsHouseText4: ; 1e83c (7:683c) + db $fd + +BillsHouseText1: ; 1e83d (7:683d) + db $8 + ld hl, BillsHouseText_1e865 + call PrintText + call YesNoChoice + ld a, [$cc26] + and a + jr nz, asm_6b196 ; 0x1e84b $d +asm_4d03c: ; 1e84d (7:684d) + ld hl, BillsHouseText_1e86a + call PrintText + ld a, $1 + ld [W_BILLSHOUSECURSCRIPT], a + jr asm_fd4e2 ; 0x1e858 $8 +asm_6b196: ; 1e85a (7:685a) + ld hl, BillsHouseText_1e86f + call PrintText + jr asm_4d03c ; 0x1e860 $eb +asm_fd4e2 ; 0x1e862 + jp TextScriptEnd + +BillsHouseText_1e865: ; 1e865 (7:6865) + TX_FAR _BillsHouseText_1e865 ; 0x8d267 + db "@" + +BillsHouseText_1e86a: ; 1e86a (7:686a) + TX_FAR _BillsHouseText_1e86a ; 0x8d345 + db "@" + +BillsHouseText_1e86f: ; 1e86f (7:686f) + TX_FAR _BillsHouseText_1e86f ; 0x8d391 + db "@" + +BillsHouseText2: ; 1e874 (7:6874) + db $08 ; asm + ld a, [$d7f2] + bit 4, a + jr nz, .asm_5491f ; 0x1e87a + ld hl, BillThankYouText + call PrintText + ld bc, (S_S__TICKET << 8) | 1 + call GiveItem + jr nc, .BagFull + ld hl, SSTicketReceivedText + call PrintText + ld hl, $d7f2 + set 4, [hl] + ld a, $7 + ld [$cc4d], a + ld a, $15 + call Predef + ld a, $9 + ld [$cc4d], a + ld a, $11 + call Predef +.asm_5491f ; 0x1e8a9 + ld hl, BillsHouseText_1e8cb + call PrintText + jr .asm_bd408 ; 0x1e8af +.BagFull + ld hl, SSTicketNoRoomText + call PrintText +.asm_bd408 ; 0x1e8b7 + jp TextScriptEnd + +BillThankYouText: ; 1e8ba (7:68ba) + TX_FAR _BillThankYouText + db "@" + +SSTicketReceivedText: ; 1e8bf (7:68bf) + TX_FAR _SSTicketReceivedText + db $11, $6, "@" + +SSTicketNoRoomText: ; 1e8c6 (7:68c6) + TX_FAR _SSTicketNoRoomText + db "@" + +BillsHouseText_1e8cb: ; 1e8cb (7:68cb) + TX_FAR _BillsHouseText_1e8cb + db "@" + +BillsHouseText3: ; 1e8d0 (7:68d0) + db $08 ; asm + ld hl, BillsHouseText_1e8da + call PrintText + jp TextScriptEnd + +BillsHouseText_1e8da: ; 1e8da (7:68da) + TX_FAR _BillsHouseText_1e8da + db "@" diff --git a/scripts/blueshouse.asm b/scripts/blueshouse.asm new file mode 100755 index 00000000..1699160f --- /dev/null +++ b/scripts/blueshouse.asm @@ -0,0 +1,90 @@ +BluesHouseScript: ; 19b3b (6:5b3b) + call EnableAutoTextBoxDrawing + ld hl,BluesHouseScriptPointers + ld a,[W_BLUESHOUSECURSCRIPT] + jp CallFunctionInTable + +BluesHouseScriptPointers: ; 19b47 (6:5b47) + dw BluesHouseScript0 + dw BluesHouseScript1 + +BluesHouseScript0: ; 19b4b (6:5b4b) + ld hl,$D74A + set 1,[hl] + + ; trigger the next script + ld a,1 + ld [W_BLUESHOUSECURSCRIPT],a + ret + +BluesHouseScript1: ; 19b56 (6:5b56) + ret + +BluesHouseTextPointers: ; 19b57 (6:5b57) + dw BluesHouseText1 + dw BluesHouseText2 + dw BluesHouseText3 + +BluesHouseText1: ; 19b5d (6:5b5d) + db 8 + ld a,[$D74A] + bit 0,a + jr nz,.GotMap + ld a,[$D74B] + bit 5,a + jr nz,.GiveMap + ld hl,DaisyInitialText + call PrintText + jr .done +.GiveMap + ld hl,DaisyOfferMapText + call PrintText + ld bc,(TOWN_MAP << 8) | 1 + call GiveItem + jr nc, .BagFull + ld a,$29 + ld [$CC4D],a + ld a,$11 + call Predef ; hide table map object + ld hl,GotMapText + call PrintText + ld hl,$D74A + set 0,[hl] + jr .done +.GotMap + ld hl,DaisyUseMapText + call PrintText + jr .done +.BagFull + ld hl,DaisyBagFullText + call PrintText +.done + jp TextScriptEnd + +DaisyInitialText: ; 19baa (6:5baa) + TX_FAR _DaisyInitialText + db "@" + +DaisyOfferMapText: ; 19baf (6:5baf) + TX_FAR _DaisyOfferMapText + db "@" + +GotMapText: ; 19bb4 (6:5bb4) + TX_FAR _GotMapText + db $11,"@" + +DaisyBagFullText: ; 19bba (6:5bba) + TX_FAR _DaisyBagFullText + db "@" + +DaisyUseMapText: ; 19bbf (6:5bbf) + TX_FAR _DaisyUseMapText + db "@" + +BluesHouseText2: ; 0x19bc4 Daisy, walking around + TX_FAR _BluesHouseText2 + db "@" + +BluesHouseText3: ; 0x19bc9 map on table + TX_FAR _BluesHouseText3 + db "@" diff --git a/scripts/bruno.asm b/scripts/bruno.asm new file mode 100755 index 00000000..60d579b2 --- /dev/null +++ b/scripts/bruno.asm @@ -0,0 +1,154 @@ +BrunoScript: ; 762d6 (1d:62d6) + call BrunoScript_762ec + call EnableAutoTextBoxDrawing + ld hl, BrunoTrainerHeaders + ld de, BrunoScriptPointers + ld a, [W_BRUNOCURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_BRUNOCURSCRIPT], a + ret + +BrunoScript_762ec: ; 762ec (1d:62ec) + ld hl, $d126 + bit 5, [hl] + res 5, [hl] + ret z + ld a, [$d864] + bit 1, a + jr z, .asm_76300 + ld a, $5 + jp BrunoScript_76302 +.asm_76300 + ld a, $24 + +BrunoScript_76302: ; 76302 (1d:6302) + ld [$d09f], a + ld bc, $2 + ld a, $17 + jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) + +BrunoScript_7630d: ; 7630d (1d:630d) + xor a + ld [W_BRUNOCURSCRIPT], a + ret + +BrunoScriptPointers: ; 76312 (1d:6312) + dw BrunoScript0 + dw Func_324c + dw BrunoScript2 + dw BrunoScript3 + dw BrunoScript4 + +BrunoScript4: ; 7631c (1d:631c) + ret +asm_7631d: ; 7631d (1d:631d) + ld hl, $ccd3 + ld a, $40 + ld [hli], a + ld [hli], a + ld [hli], a + ld [hli], a + ld [hli], a + ld [hl], a + ld a, $6 + ld [$cd38], a + call Func_3486 + ld a, $3 + ld [W_BRUNOCURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +BrunoScript0: ; 76339 (1d:6339) + ld hl, CoordsData_7637a + call ArePlayerCoordsInArray + jp nc, CheckFightingMapTrainers + xor a + ld [H_NEWLYPRESSEDBUTTONS], a + ld [H_CURRENTPRESSEDBUTTONS], a + ld [$ccd3], a + ld [$cd38], a + ld a, [wWhichTrade] ; $cd3d + cp $3 + jr c, .asm_7635d + ld hl, $d864 + bit 6, [hl] + set 6, [hl] + jr z, asm_7631d +.asm_7635d + ld a, $2 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + ld a, $40 + ld [$ccd3], a + ld a, $1 + ld [$cd38], a + call Func_3486 + ld a, $3 + ld [W_BRUNOCURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +CoordsData_7637a: ; 7637a (1d:637a) + db $0A,$04 + db $0A,$05 + db $0B,$04 + db $0B,$05 + db $FF + +BrunoScript3: ; 76383 (1d:6383) + ld a, [$cd38] + and a + ret nz + call Delay3 + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [W_BRUNOCURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +BrunoScript2: ; 76396 (1d:6396) + call EndTrainerBattle + ld a, [W_ISINBATTLE] ; $d057 + cp $ff + jp z, BrunoScript_7630d + ld a, $1 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + jp DisplayTextID + +BrunoTextPointers: ; 763a8 (1d:63a8) + dw BrunoText1 + dw BrunoText2 + +BrunoTrainerHeaders: ; 763ac (1d:63ac) +BrunoTrainerHeader0: ; 763ac (1d:63ac) + db $1 ; flag's bit + db ($0 << 4) ; trainer's view range + dw $d864 ; flag's byte + dw BrunoBeforeBattleText ; 0x63c3 TextBeforeBattle + dw BrunoAfterBattleText ; 0x63cd TextAfterBattle + dw BrunoEndBattleText ; 0x63c8 TextEndBattle + dw BrunoEndBattleText ; 0x63c8 TextEndBattle + + db $ff + +BrunoText1: ; 763b9 (1d:63b9) + db $08 ; asm + ld hl, BrunoTrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +BrunoBeforeBattleText: ; 763c3 (1d:63c3) + TX_FAR _BrunoBeforeBattleText + db "@" + +BrunoEndBattleText: ; 763c8 (1d:63c8) + TX_FAR _BrunoEndBattleText + db "@" + +BrunoAfterBattleText: ; 763cd (1d:63cd) + TX_FAR _BrunoAfterBattleText + db "@" + +BrunoText2: ; 763d2 (1d:63d2) + TX_FAR _UnnamedText_763d2 + db "@" diff --git a/scripts/celadoncity.asm b/scripts/celadoncity.asm new file mode 100755 index 00000000..2f2a3128 --- /dev/null +++ b/scripts/celadoncity.asm @@ -0,0 +1,136 @@ +CeladonCityScript: ; 19956 (6:5956) + call EnableAutoTextBoxDrawing + ld hl, $d77e + res 0, [hl] + res 7, [hl] + ld hl, $d816 + res 7, [hl] + ret + +CeladonCityTextPointers: ; 19966 (6:5966) + dw CeladonCityText1 + dw CeladonCityText2 + dw CeladonCityText3 + dw CeladonCityText4 + dw CeladonCityText5 + dw CeladonCityText6 + dw CeladonCityText7 + dw CeladonCityText8 + dw CeladonCityText9 + dw CeladonCityText10 + dw CeladonCityText11 + dw PokeCenterSignText + dw CeladonCityText13 + dw CeladonCityText14 + dw CeladonCityText15 + dw CeladonCityText16 + dw CeladonCityText17 + dw CeladonCityText18 + +CeladonCityText1: ; 1998a (6:598a) + TX_FAR _CeladonCityText1 + db "@" + +CeladonCityText2: ; 1998f (6:598f) + TX_FAR _CeladonCityText2 + db "@" + +CeladonCityText3: ; 19994 (6:5994) + TX_FAR _CeladonCityText3 + db "@" + +CeladonCityText4: ; 19999 (6:5999) + TX_FAR _CeladonCityText4 + db "@" + +CeladonCityText5: ; 1999e (6:599e) + db $08 ; asm + ld a, [$d777] + bit 0, a + jr nz, .asm_7053f ; 0x199a4 + ld hl, TM41PreText + call PrintText + ld bc, (TM_41 << 8) | 1 + call GiveItem + jr c, .Success + ld hl, TM41NoRoomText + call PrintText + jr .Done +.Success + ld hl, ReceivedTM41Text + call PrintText + ld hl, $d777 + set 0, [hl] + jr .Done +.asm_7053f ; 0x199c9 + ld hl, TM41ExplanationText + call PrintText +.Done + jp TextScriptEnd + +TM41PreText: ; 199d2 (6:59d2) + TX_FAR _TM41PreText + db "@" + +ReceivedTM41Text: ; 199d7 (6:59d7) + TX_FAR _ReceivedTM41Text + db $0B, "@" + +TM41ExplanationText: ; 199dd (6:59dd) + TX_FAR _TM41ExplanationText + db "@" + +TM41NoRoomText: ; 199e2 (6:59e2) + TX_FAR _TM41NoRoomText + db "@" + +CeladonCityText6: ; 199e7 (6:59e7) + TX_FAR _CeladonCityText6 + db "@" + +CeladonCityText7: ; 199ec (6:59ec) + TX_FAR _CeladonCityText7 + db $08 ; asm + ld a, POLIWRATH + call PlayCry + jp TextScriptEnd + +CeladonCityText8: ; 199f9 (6:59f9) + TX_FAR _CeladonCityText8 + db "@" + +CeladonCityText9: ; 199fe (6:59fe) + TX_FAR _CeladonCityText9 + db "@" + +CeladonCityText10: ; 19a03 (6:5a03) + TX_FAR _CeladonCityText10 + db "@" + +CeladonCityText11: ; 19a08 (6:5a08) + TX_FAR _CeladonCityText11 + db "@" + +CeladonCityText13: ; 19a0d (6:5a0d) + TX_FAR _CeladonCityText13 + db "@" + +CeladonCityText14: ; 19a12 (6:5a12) + TX_FAR _CeladonCityText14 + db "@" + +CeladonCityText15: ; 19a17 (6:5a17) + TX_FAR _CeladonCityText15 + db "@" + +CeladonCityText16: ; 19a1c (6:5a1c) + TX_FAR _CeladonCityText16 + db "@" + +CeladonCityText17: ; 19a21 (6:5a21) + TX_FAR _CeladonCityText17 + db "@" + +CeladonCityText18: ; 19a26 (6:5a26) + TX_FAR _CeladonCityText18 + db "@" diff --git a/scripts/celadondiner.asm b/scripts/celadondiner.asm new file mode 100755 index 00000000..06cce8fd --- /dev/null +++ b/scripts/celadondiner.asm @@ -0,0 +1,67 @@ +CeladonDinerScript: ; 49151 (12:5151) + call EnableAutoTextBoxDrawing + ret + +CeladonDinerTextPointers: ; 49155 (12:5155) + dw CeladonDinerText1 + dw CeladonDinerText2 + dw CeladonDinerText3 + dw CeladonDinerText4 + dw CeladonDinerText5 + +CeladonDinerText1: ; 4915f (12:515f) + TX_FAR _CeladonDinerText1 + db "@" + +CeladonDinerText2: ; 49164 (12:5164) + TX_FAR _CeladonDinerText2 + db "@" + +CeladonDinerText3: ; 49169 (12:5169) + TX_FAR _CeladonDinerText3 + db "@" + +CeladonDinerText4: ; 4916e (12:516e) + TX_FAR _CeladonDinerText4 + db "@" + +CeladonDinerText5: ; 49173 (12:5173) + db $08 ; asm + ld a, [$d783] + bit 0, a + jr nz, .asm_eb14d ; 0x49179 + ld hl, CeladonDinerText_491a7 + call PrintText + ld bc, (COIN_CASE << 8) | 1 + call GiveItem + jr nc, .BagFull + ld hl, $d783 + set 0, [hl] + ld hl, ReceivedCoinCaseText + call PrintText + jr .asm_68b61 ; 0x49194 +.BagFull + ld hl, CoinCaseNoRoomText + call PrintText + jr .asm_68b61 ; 0x4919c +.asm_eb14d ; 0x4919e + ld hl, CeladonDinerText_491b7 + call PrintText +.asm_68b61 ; 0x491a4 + jp TextScriptEnd + +CeladonDinerText_491a7: ; 491a7 (12:51a7) + TX_FAR _CeladonDinerText_491a7 + db "@" + +ReceivedCoinCaseText: ; 491ac (12:51ac) + TX_FAR _ReceivedCoinCaseText + db $11, "@" + +CoinCaseNoRoomText: ; 491b2 (12:51b2) + TX_FAR _CoinCaseNoRoomText + db "@" + +CeladonDinerText_491b7: ; 491b7 (12:51b7) + TX_FAR _CeladonDinerText_491b7 + db "@" diff --git a/scripts/celadongamecorner.asm b/scripts/celadongamecorner.asm new file mode 100755 index 00000000..f4e23d6e --- /dev/null +++ b/scripts/celadongamecorner.asm @@ -0,0 +1,536 @@ +CeladonGameCornerScript: ; 48bbd (12:4bbd) + call CeladonGameCornerScript_48bcf + call CeladonGameCornerScript_48bec + call EnableAutoTextBoxDrawing + ld hl, CeladonGameCornerScriptPointers + ld a, [W_CELADONGAMECORNERCURSCRIPT] + jp CallFunctionInTable + +CeladonGameCornerScript_48bcf: ; 48bcf (12:4bcf) + ld hl, $d126 + bit 6, [hl] + res 6, [hl] + ret z + call GenRandom + ld a, [$ffd3] + cp $7 + jr nc, .asm_48be2 + ld a, $8 +.asm_48be2 + srl a + srl a + srl a + ld [$cd05], a + ret + +CeladonGameCornerScript_48bec: ; 48bec (12:4bec) + ld hl, $d126 + bit 5, [hl] + res 5, [hl] + ret z + ld a, [$d77e] + bit 1, a + ret nz + ld a, $2a + ld [$d09f], a + ld bc, $0208 + ld a, $17 + jp Predef + +CeladonGameCornerScript_48c07: ; 48c07 (12:4c07) + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [W_CELADONGAMECORNERCURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +CeladonGameCornerScriptPointers: ; 48c12 (12:4c12) + dw CeladonGameCornerScript0 + dw CeladonGameCornerScript1 + dw CeladonGameCornerScript2 + +CeladonGameCornerScript0: ; 48c18 (12:4c18) + ret + +CeladonGameCornerScript1: ; 48c19 (12:4c19) + ld a, [W_ISINBATTLE] + cp $ff + jp z, CeladonGameCornerScript_48c07 + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + ld a, $d + ld [H_SPRITEHEIGHT], a + call DisplayTextID + ld a, $b + ld [H_SPRITEHEIGHT], a + call SetSpriteMovementBytesToFF + ld de, MovementData_48c5a + ld a, [W_YCOORD] + cp $6 + jr nz, .asm_48c43 + ld de, MovementData_48c63 + jr .asm_48c4d +.asm_48c43 + ld a, [W_XCOORD] + cp $8 + jr nz, .asm_48c4d + ld de, MovementData_48c63 +.asm_48c4d + ld a, $b + ld [H_DOWNARROWBLINKCNT2], a + call MoveSprite + ld a, $2 + ld [W_CELADONGAMECORNERCURSCRIPT], a + ret + +MovementData_48c5a: ; 48c5a (12:4c5a) + db $00,$C0,$C0,$40,$C0,$C0,$C0,$C0,$FF + +MovementData_48c63: ; 48c63 (12:4c63) + db $C0,$C0,$C0,$C0,$C0,$FF + +CeladonGameCornerScript2: ; 48c69 (12:4c69) + ld a, [$d730] + bit 0, a + ret nz + xor a + ld [wJoypadForbiddenButtonsMask], a + ld a, $46 + ld [$cc4d], a + ld a, $11 + call Predef + ld hl, $d126 + set 5, [hl] + set 6, [hl] + ld a, $0 + ld [W_CELADONGAMECORNERCURSCRIPT], a + ret + +CeladonGameCornerTextPointers: ; 48c8a (12:4c8a) + dw CeladonGameCornerText1 + dw CeladonGameCornerText2 + dw CeladonGameCornerText3 + dw CeladonGameCornerText4 + dw CeladonGameCornerText5 + dw CeladonGameCornerText6 + dw CeladonGameCornerText7 + dw CeladonGameCornerText8 + dw CeladonGameCornerText9 + dw CeladonGameCornerText10 + dw CeladonGameCornerText11 + dw CeladonGameCornerText12 + dw CeladonGameCornerText13 + +CeladonGameCornerText1: ; 48ca4 (12:4ca4) + TX_FAR _CeladonGameCornerText1 + db "@" + +CeladonGameCornerText2: ; 48ca9 (12:4ca9) + db $08 ; asm + call CeladonGameCornerScript_48f1e + ld hl, CeladonGameCornerText_48d22 + call PrintText + call YesNoChoice + ld a, [$cc26] + and a + jr nz, .asm_c650b ; 0x48cba + ld b,COIN_CASE + call IsItemInBag + jr z, .asm_ed086 ; 0x48cc1 + call Has9990Coins + jr nc, .asm_31338 ; 0x48cc6 + xor a + ldh [$9f], a + ldh [$a1], a + ld a, $10 + ldh [$a0], a + call HasEnoughMoney + jr nc, .asm_b6ef0 ; 0x48cd4 + ld hl, CeladonGameCornerText_48d31 ; $4d31 + jr .asm_e2afd ; 0x48cd9 +.asm_b6ef0 ; 0x48cdb + xor a + ldh [$9f], a + ldh [$a1], a + ld a, $10 + ldh [$a0], a + ld hl, $ffa1 + ld de, $d349 + ld c, $3 + ld a, $c + call Predef + xor a + ldh [$9f], a + ldh [$a0], a + ld a, $50 + ldh [$a1], a + ld de, $d5a5 + ld hl, $ffa1 + ld c, $2 + ld a, $b + call Predef + call CeladonGameCornerScript_48f1e + ld hl, CeladonGameCornerText_48d27 + jr .asm_e2afd ; 0x48d0d +.asm_c650b ; 0x48d0f + ld hl, CeladonGameCornerText_48d2c + jr .asm_e2afd ; 0x48d12 +.asm_31338 ; 0x48d14 + ld hl, CeladonGameCornerText_48d36 + jr .asm_e2afd ; 0x48d17 +.asm_ed086 ; 0x48d19 + ld hl, CeladonGameCornerText_48d3b +.asm_e2afd ; 0x48d1c + call PrintText + jp TextScriptEnd + +CeladonGameCornerText_48d22: ; 48d22 (12:4d22) + TX_FAR _CeladonGameCornerText_48d22 + db "@" + +CeladonGameCornerText_48d27: ; 48d27 (12:4d27) + TX_FAR _CeladonGameCornerText_48d27 + db "@" + +CeladonGameCornerText_48d2c: ; 48d2c (12:4d2c) + TX_FAR _CeladonGameCornerText_48d2c + db "@" + +CeladonGameCornerText_48d31: ; 48d31 (12:4d31) + TX_FAR _CeladonGameCornerText_48d31 + db "@" + +CeladonGameCornerText_48d36: ; 48d36 (12:4d36) + TX_FAR _CeladonGameCornerText_48d36 + db "@" + +CeladonGameCornerText_48d3b: ; 48d3b (12:4d3b) + TX_FAR _CeladonGameCornerText_48d3b + db "@" + +CeladonGameCornerText3: ; 48d40 (12:4d40) + TX_FAR _CeladonGameCornerText3 + db "@" + +CeladonGameCornerText4: ; 48d45 (12:4d45) + TX_FAR _CeladonGameCornerText4 + db "@" + +CeladonGameCornerText5: ; 48d4a (12:4d4a) + db $08 ; asm + ld a, [$d77e] + bit 2, a + jr nz, .asm_d0957 ; 0x48d50 + ld hl, CeladonGameCornerText_48d9c + call PrintText + ld b, COIN_CASE + call IsItemInBag + jr z, .asm_5aef9 ; 0x48d5d + call Has9990Coins + jr nc, .asm_98546 ; 0x48d62 + xor a + ldh [$9f], a + ldh [$a0], a + ld a, $10 + ldh [$a1], a + ld de, $d5a5 + ld hl, $ffa1 + ld c, $2 + ld a, $b + call Predef + ld hl, $d77e + set 2, [hl] + ld a, $1 + ld [$cc3c], a + ld hl, Received10CoinsText + jr .asm_c7d1a ; 0x48d87 +.asm_d0957 ; 0x48d89 + ld hl, CeladonGameCornerText_48dac + jr .asm_c7d1a ; 0x48d8c +.asm_98546 ; 0x48d8e + ld hl, CeladonGameCornerText_48da7 + jr .asm_c7d1a ; 0x48d91 +.asm_5aef9 ; 0x48d93 + ld hl, CeladonGameCornerText_48f19 +.asm_c7d1a ; 0x48d96 + call PrintText + jp TextScriptEnd + +CeladonGameCornerText_48d9c: ; 48d9c (12:4d9c) + TX_FAR _CeladonGameCornerText_48d9c + db "@" + +Received10CoinsText: ; 48da1 (12:4da1) + TX_FAR _Received10CoinsText + db $0B, "@" + +CeladonGameCornerText_48da7: ; 48da7 (12:4da7) + TX_FAR _CeladonGameCornerText_48da7 + db "@" + +CeladonGameCornerText_48dac: ; 48dac (12:4dac) + TX_FAR _CeladonGameCornerText_48dac + db "@" + +CeladonGameCornerText6: ; 48db1 (12:4db1) + TX_FAR _CeladonGameCornerText6 + db "@" + +CeladonGameCornerText7: ; 48db6 (12:4db6) + db $08 ; asm + ld a, [$d77c] + bit 1, a + ld hl, CeladonGameCornerText_48dca ; $4dca + jr z, .asm_be3fd ; 0x48dbf + ld hl, CeladonGameCornerText_48dcf ; $4dcf +.asm_be3fd ; 0x48dc4 + call PrintText + jp TextScriptEnd + +CeladonGameCornerText_48dca: ; 48dca (12:4dca) + TX_FAR _CeladonGameCornerText_48dca + db "@" + +CeladonGameCornerText_48dcf: ; 48dcf (12:4dcf) + TX_FAR _CeladonGameCornerText_48dcf + db "@" + +CeladonGameCornerText8: ; 48dd4 (12:4dd4) + TX_FAR _CeladonGameCornerText8 + db "@" + +CeladonGameCornerText9: ; 48dd9 (12:4dd9) + db $08 ; asm + ld a, [$d77e] + bit 4, a + jr nz, .asm_ed8bc ; 0x48ddf + ld hl, CeladonGameCornerText_48e26 + call PrintText + ld b, COIN_CASE + call IsItemInBag + jr z, .asm_df794 ; 0x48dec + call Has9990Coins + jr nc, .asm_f17c3 ; 0x48df1 + xor a + ldh [$9f], a + ldh [$a0], a + ld a, $20 + ldh [$a1], a + ld de, $d5a5 + ld hl, $ffa1 + ld c, $2 + ld a, $b + call Predef + ld hl, $d77e + set 4, [hl] + ld hl, Received20CoinsText + jr .asm_0ddc2 ; 0x48e11 +.asm_ed8bc ; 0x48e13 + ld hl, CeladonGameCornerText_48e36 + jr .asm_0ddc2 ; 0x48e16 +.asm_f17c3 ; 0x48e18 + ld hl, CeladonGameCornerText_48e31 + jr .asm_0ddc2 ; 0x48e1b +.asm_df794 ; 0x48e1d + ld hl, CeladonGameCornerText_48f19 +.asm_0ddc2 ; 0x48e20 + call PrintText + jp TextScriptEnd + +CeladonGameCornerText_48e26: ; 48e26 (12:4e26) + TX_FAR _CeladonGameCornerText_48e26 + db "@" + +Received20CoinsText: ; 48e2b (12:4e2b) + TX_FAR _Received20CoinsText + db $0B, "@" + +CeladonGameCornerText_48e31: ; 48e31 (12:4e31) + TX_FAR _CeladonGameCornerText_48e31 + db "@" + +CeladonGameCornerText_48e36: ; 48e36 (12:4e36) + TX_FAR _CeladonGameCornerText_48e36 + db "@" + +CeladonGameCornerText10: ; 48e3b (12:4e3b) + db $08 ; asm + ld a, [$d77e] + bit 3, a + jr nz, .asm_ff080 ; 0x48e41 + ld hl, CeladonGameCornerText_48e88 ; $4e88 + call PrintText + ld b,COIN_CASE + call IsItemInBag + jr z, .asm_4fb0c ; 0x48e4e + call Has9990Coins + jr z, .asm_9505a ; 0x48e53 + xor a + ldh [$9f], a + ldh [$a0], a + ld a, $20 + ldh [$a1], a + ld de, $d5a5 + ld hl, $ffa1 + ld c, $2 + ld a, $b + call Predef + ld hl, $d77e + set 3, [hl] + ld hl, CeladonGameCornerText_48e8d + jr .asm_78d65 ; 0x48e73 +.asm_ff080 ; 0x48e75 + ld hl, CeladonGameCornerText_48e98 + jr .asm_78d65 ; 0x48e78 +.asm_9505a ; 0x48e7a + ld hl, CeladonGameCornerText_48e93 + jr .asm_78d65 ; 0x48e7d +.asm_4fb0c ; 0x48e7f + ld hl, CeladonGameCornerText_48f19 +.asm_78d65 ; 0x48e82 + call PrintText + jp TextScriptEnd + +CeladonGameCornerText_48e88: ; 48e88 (12:4e88) + TX_FAR _CeladonGameCornerText_48e88 + db "@" + +CeladonGameCornerText_48e8d: ; 48e8d (12:4e8d) + TX_FAR _CeladonGameCornerText_48e8d ; 0x9dceb + db $0B, "@" + +CeladonGameCornerText_48e93: ; 48e93 (12:4e93) + TX_FAR _CeladonGameCornerText_48e93 + db "@" + +CeladonGameCornerText_48e98: ; 48e98 (12:4e98) + TX_FAR _CeladonGameCornerText_48e98 + db "@" + +CeladonGameCornerText11: ; 48e9d (12:4e9d) + db $08 ; asm + ld hl, CeladonGameCornerText_48ece + call PrintText + ld hl, $d72d + set 6, [hl] + set 7, [hl] + ld hl, CeladonGameCornerText_48ed3 + ld de, CeladonGameCornerText_48ed3 + call PreBattleSaveRegisters + ldh a, [$8c] + ld [$cf13], a + call EngageMapTrainer + call InitBattleEnemyParameters + xor a + ldh [$b4], a + ldh [$b3], a + ldh [$b2], a + ld a, $1 + ld [W_CELADONGAMECORNERCURSCRIPT], a + jp TextScriptEnd + +CeladonGameCornerText_48ece: ; 48ece (12:4ece) + TX_FAR _CeladonGameCornerText_48ece + db "@" + +CeladonGameCornerText_48ed3: ; 48ed3 (12:4ed3) + TX_FAR _CeladonGameCornerText_48ed3 + db "@" + +CeladonGameCornerText13: ; 48ed8 (12:4ed8) + TX_FAR _CeladonGameCornerText_48ed8 + db "@" + +CeladonGameCornerText12: ; 48edd (12:4edd) + db $08 ; asm + ld a, $1 + ld [$cc3c], a + ld hl, CeladonGameCornerText_48f09 + call PrintText + call WaitForSoundToFinish + ld a, (SFX_02_57 - SFX_Headers_02) / 3 + call PlaySound + call WaitForSoundToFinish + ld hl, $d77e + set 1, [hl] + ld a, $43 + ld [$d09f], a + ld bc, $0208 + ld a, $17 + call Predef + jp TextScriptEnd + +CeladonGameCornerText_48f09: ; 48f09 (12:4f09) + TX_FAR _CeladonGameCornerText_48f09 ; 0x9ddb0 + db $8 + ld a, (SFX_02_49 - SFX_Headers_02) / 3 + call PlaySound + call WaitForSoundToFinish + jp TextScriptEnd + +CeladonGameCornerText_48f19: ; 48f19 (12:4f19) + TX_FAR _CeladonGameCornerText_48f19 + db "@" + +CeladonGameCornerScript_48f1e: ; 48f1e (12:4f1e) + ld hl, $d730 + set 6, [hl] + FuncCoord 11, 0 ; $c3ab + ld hl, Coord + ld b, $5 + ld c, $7 + call TextBoxBorder + call UpdateSprites + FuncCoord 12, 1 ; $c3c0 + ld hl, Coord + ld b, $4 + ld c, $7 + call ClearScreenArea + FuncCoord 12, 2 ; $c3d4 + ld hl, Coord + ld de, GameCornerMoneyText + call PlaceString + FuncCoord 12, 3 ; $c3e8 + ld hl, Coord + ld de, GameCornerBlankText1 + call PlaceString + FuncCoord 12, 3 ; $c3e8 + ld hl, Coord + ld de, $d347 + ld c, $a3 + call PrintBCDNumber + FuncCoord 12, 4 ; $c3fc + ld hl, Coord + ld de, GameCornerCoinText + call PlaceString + FuncCoord 12, 5 ; $c410 + ld hl, Coord + ld de, GameCornerBlankText2 + call PlaceString + FuncCoord 15, 5 ; $c413 + ld hl, Coord + ld de, $d5a4 + ld c, $82 + call PrintBCDNumber + ld hl, $d730 + res 6, [hl] + ret + +GameCornerMoneyText: ; 48f7a (12:4f7a) + db "MONEY@" + +GameCornerCoinText: ; 48f80 (12:4f80) + db "COIN@" + +GameCornerBlankText1: ; 48f85 (12:4f85) + db " @" + +GameCornerBlankText2: ; 48f8d (12:4f8d) + db " @" + +Has9990Coins: ; 48f95 (12:4f95) + ld a, $99 + ld [$ffa0], a + ld a, $90 + ld [$ffa1], a + jp HasEnoughCoins diff --git a/scripts/celadongym.asm b/scripts/celadongym.asm new file mode 100755 index 00000000..67102fb7 --- /dev/null +++ b/scripts/celadongym.asm @@ -0,0 +1,343 @@ +CeladonGymScript: ; 4890a (12:490a) + ld hl, $d126 + bit 6, [hl] + res 6, [hl] + call nz, CeladonGymScript_48927 + call EnableAutoTextBoxDrawing + ld hl, CeladonGymTrainerHeaders + ld de, CeladonGymScriptPointers + ld a, [W_CELADONGYMCURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_CELADONGYMCURSCRIPT], a + ret + +CeladonGymScript_48927: ; 48927 (12:4927) + ld hl, Gym4CityName ; $4930 + ld de, Gym4LeaderName ; $493d + jp LoadGymLeaderAndCityName + +Gym4CityName: ; 48930 (12:4930) + db "CELADON CITY@" + +Gym4LeaderName: ; 4893d (12:493d) + db "ERIKA@" + +CeladonGymText_48943: ; 48943 (12:4943) + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [W_CELADONGYMCURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +CeladonGymScriptPointers: ; 4894e (12:494e) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + dw CeladonGymScript3 + +CeladonGymScript3: ; 48956 (12:4956) + ld a, [W_ISINBATTLE] ; $d057 + cp $ff + jp z, CeladonGymText_48943 + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + +CeladonGymText_48963: ; 48963 (12:4963) + ld a, $9 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + ld hl, $d77c + set 1, [hl] + ld bc, (TM_21 << 8) | 1 + call GiveItem + jr nc, .BagFull + ld a, $a + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + ld hl, $d77c + set 0, [hl] + jr .asm_4898c +.BagFull + ld a, $b + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID +.asm_4898c + ld hl, W_OBTAINEDBADGES + set 3, [hl] + ld hl, $d72a + set 3, [hl] + + ; deactivate gym trainers + ld a, [$d77c] + or %11111100 + ld [$d77c], a + ld hl, $d77d + set 0, [hl] + + jp CeladonGymText_48943 + +CeladonGymTextPointers: ; 489a6 (12:49a6) + dw CeladonGymText1 + dw CeladonGymText2 + dw CeladonGymText3 + dw CeladonGymText4 + dw CeladonGymText5 + dw CeladonGymText6 + dw CeladonGymText7 + dw CeladonGymText8 + dw CeladonGymText9 + dw TM21Text + dw TM21NoRoomText + +CeladonGymTrainerHeaders: ; 489bc (12:49bc) +CeladonGymTrainerHeader0: ; 489bc (12:49bc) + db $2 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d77c ; flag's byte + dw CeladonGymBattleText2 ; 0x4a8b TextBeforeBattle + dw CeladonGymAfterBattleText2 ; 0x4a95 TextAfterBattle + dw CeladonGymEndBattleText2 ; 0x4a90 TextEndBattle + dw CeladonGymEndBattleText2 ; 0x4a90 TextEndBattle + +CeladonGymTrainerHeader2: ; 489c8 (12:49c8) + db $3 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d77c ; flag's byte + dw CeladonGymBattleText3 ; 0x4aa4 TextBeforeBattle + dw CeladonGymAfterBattleText3 ; 0x4aae TextAfterBattle + dw CeladonGymEndBattleText3 ; 0x4aa9 TextEndBattle + dw CeladonGymEndBattleText3 ; 0x4aa9 TextEndBattle + +CeladonGymTrainerHeader3: ; 489d4 (12:49d4) + db $4 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d77c ; flag's byte + dw CeladonGymBattleText4 ; 0x4abd TextBeforeBattle + dw CeladonGymAfterBattleText4 ; 0x4ac7 TextAfterBattle + dw CeladonGymEndBattleText4 ; 0x4ac2 TextEndBattle + dw CeladonGymEndBattleText4 ; 0x4ac2 TextEndBattle + +CeladonGymTrainerHeader4: ; 489e0 (12:49e0) + db $5 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d77c ; flag's byte + dw CeladonGymBattleText5 ; 0x4ad6 TextBeforeBattle + dw CeladonGymAfterBattleText5 ; 0x4ae0 TextAfterBattle + dw CeladonGymEndBattleText5 ; 0x4adb TextEndBattle + dw CeladonGymEndBattleText5 ; 0x4adb TextEndBattle + +CeladonGymTrainerHeader5: ; 489ec (12:49ec) + db $6 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d77c ; flag's byte + dw CeladonGymBattleText6 ; 0x4aef TextBeforeBattle + dw CeladonGymAfterBattleText6 ; 0x4af9 TextAfterBattle + dw CeladonGymEndBattleText6 ; 0x4af4 TextEndBattle + dw CeladonGymEndBattleText6 ; 0x4af4 TextEndBattle + +CeladonGymTrainerHeader6: ; 489f8 (12:49f8) + db $7 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d77c ; flag's byte + dw CeladonGymBattleText7 ; 0x4b08 TextBeforeBattle + dw CeladonGymAfterBattleText7 ; 0x4b12 TextAfterBattle + dw CeladonGymEndBattleText7 ; 0x4b0d TextEndBattle + dw CeladonGymEndBattleText7 ; 0x4b0d TextEndBattle + +CeladonGymTrainerHeader7: ; 48a04 (12:4a04) + db $8 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d77c ; flag's byte + dw CeladonGymBattleText8 ; 0x4b21 TextBeforeBattle + dw CeladonGymAfterBattleText8 ; 0x4b2b TextAfterBattle + dw CeladonGymEndBattleText8 ; 0x4b26 TextEndBattle + dw CeladonGymEndBattleText8 ; 0x4b26 TextEndBattle + + db $ff + +CeladonGymText1: ; 48a11 (12:4a11) + db $08 ; asm + ld a, [$d77c] + bit 1, a + jr z, .asm_16064 ; 0x48a17 + bit 0, a + jr nz, .asm_3b22c ; 0x48a1b + call z, CeladonGymText_48963 + call DisableWaitingAfterTextDisplay + jr .asm_96252 ; 0x48a23 +.asm_3b22c ; 0x48a25 + ld hl, CeladonGymText_48a68 + call PrintText + jr .asm_96252 ; 0x48a2b +.asm_16064 ; 0x48a2d + ld hl, CeladonGymText_48a5e + call PrintText + ld hl, $d72d + set 6, [hl] + set 7, [hl] + ld hl, CeladonGymText_48a63 + ld de, CeladonGymText_48a63 + call PreBattleSaveRegisters + ldh a, [$8c] + ld [$cf13], a + call EngageMapTrainer + call InitBattleEnemyParameters + ld a, $4 + ld [$d05c], a + ld a, $3 + ld [W_CELADONGYMCURSCRIPT], a + ld [W_CURMAPSCRIPT], a +.asm_96252 ; 0x48a5b + jp TextScriptEnd + +CeladonGymText_48a5e: ; 48a5e (12:4a5e) + TX_FAR _CeladonGymText_48a5e + db "@" + +CeladonGymText_48a63: ; 48a63 (12:4a63) + TX_FAR _CeladonGymText_48a63 + db "@" + +CeladonGymText_48a68: ; 48a68 (12:4a68) + TX_FAR _CeladonGymText_48a68 + db "@" + +CeladonGymText9: ; 48a6d (12:4a6d) + TX_FAR _CeladonGymText9 + db "@" + +TM21Text: ; 48a72 (12:4a72) + TX_FAR _ReceivedTM21Text + db $0B + TX_FAR _TM21ExplanationText + db "@" + +TM21NoRoomText: ; 48a7c (12:4a7c) + TX_FAR _TM21NoRoomText + db "@" + +CeladonGymText2: ; 48a81 (12:4a81) + db $08 ; asm + ld hl, CeladonGymTrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +CeladonGymBattleText2: ; 48a8b (12:4a8b) + TX_FAR _CeladonGymBattleText2 + db "@" + +CeladonGymEndBattleText2: ; 48a90 (12:4a90) + TX_FAR _CeladonGymEndBattleText2 + db "@" + +CeladonGymAfterBattleText2: ; 48a95 (12:4a95) + TX_FAR _CeladonGymAfterBattleText2 + db "@" + +CeladonGymText3: ; 48a9a (12:4a9a) + db $08 ; asm + ld hl, CeladonGymTrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +CeladonGymBattleText3: ; 48aa4 (12:4aa4) + TX_FAR _CeladonGymBattleText3 + db "@" + +CeladonGymEndBattleText3: ; 48aa9 (12:4aa9) + TX_FAR _CeladonGymEndBattleText3 + db "@" + +CeladonGymAfterBattleText3: ; 48aae (12:4aae) + TX_FAR _CeladonGymAfterBattleText3 + db "@" + +CeladonGymText4: ; 48ab3 (12:4ab3) + db $08 ; asm + ld hl, CeladonGymTrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +CeladonGymBattleText4: ; 48abd (12:4abd) + TX_FAR _CeladonGymBattleText4 + db "@" + +CeladonGymEndBattleText4: ; 48ac2 (12:4ac2) + TX_FAR _CeladonGymEndBattleText4 + db "@" + +CeladonGymAfterBattleText4: ; 48ac7 (12:4ac7) + TX_FAR _CeladonGymAfterBattleText4 + db "@" + +CeladonGymText5: ; 48acc (12:4acc) + db $08 ; asm + ld hl, CeladonGymTrainerHeader4 + call TalkToTrainer + jp TextScriptEnd + +CeladonGymBattleText5: ; 48ad6 (12:4ad6) + TX_FAR _CeladonGymBattleText5 + db "@" + +CeladonGymEndBattleText5: ; 48adb (12:4adb) + TX_FAR _CeladonGymEndBattleText5 + db "@" + +CeladonGymAfterBattleText5: ; 48ae0 (12:4ae0) + TX_FAR _CeladonGymAfterBattleText5 + db "@" + +CeladonGymText6: ; 48ae5 (12:4ae5) + db $08 ; asm + ld hl, CeladonGymTrainerHeader5 + call TalkToTrainer + jp TextScriptEnd + +CeladonGymBattleText6: ; 48aef (12:4aef) + TX_FAR _CeladonGymBattleText6 + db "@" + +CeladonGymEndBattleText6: ; 48af4 (12:4af4) + TX_FAR _CeladonGymEndBattleText6 + db "@" + +CeladonGymAfterBattleText6: ; 48af9 (12:4af9) + TX_FAR _CeladonGymAfterBattleText6 + db "@" + +CeladonGymText7: ; 48afe (12:4afe) + db $08 ; asm + ld hl, CeladonGymTrainerHeader6 + call TalkToTrainer + jp TextScriptEnd + +CeladonGymBattleText7: ; 48b08 (12:4b08) + TX_FAR _CeladonGymBattleText7 + db "@" + +CeladonGymEndBattleText7: ; 48b0d (12:4b0d) + TX_FAR _CeladonGymEndBattleText7 + db "@" + +CeladonGymAfterBattleText7: ; 48b12 (12:4b12) + TX_FAR _CeladonGymAfterBattleText7 + db "@" + +CeladonGymText8: ; 48b17 (12:4b17) + db $08 ; asm + ld hl, CeladonGymTrainerHeader7 + call TalkToTrainer + jp TextScriptEnd + +CeladonGymBattleText8: ; 48b21 (12:4b21) + TX_FAR _CeladonGymBattleText8 + db "@" + +CeladonGymEndBattleText8: ; 48b26 (12:4b26) + TX_FAR _CeladonGymEndBattleText8 + db "@" + +CeladonGymAfterBattleText8: ; 48b2b (12:4b2b) + TX_FAR _CeladonGymAfterBattleText8 + db "@" diff --git a/scripts/celadonhotel.asm b/scripts/celadonhotel.asm new file mode 100755 index 00000000..a0f80ff6 --- /dev/null +++ b/scripts/celadonhotel.asm @@ -0,0 +1,19 @@ +CeladonHotelScript: ; 49269 (12:5269) + jp EnableAutoTextBoxDrawing + +CeladonHotelTextPointers: ; 4926c (12:526c) + dw CeladonHotelText1 + dw CeladonHotelText2 + dw CeladonHotelText3 + +CeladonHotelText1: ; 49272 (12:5272) + TX_FAR _CeladonHotelText1 + db "@" + +CeladonHotelText2: ; 49277 (12:5277) + TX_FAR _CeladonHotelText2 + db "@" + +CeladonHotelText3: ; 4927c (12:527c) + TX_FAR _CeladonHotelText3 + db "@" diff --git a/scripts/celadonhouse.asm b/scripts/celadonhouse.asm new file mode 100755 index 00000000..aa94f2fd --- /dev/null +++ b/scripts/celadonhouse.asm @@ -0,0 +1,20 @@ +CeladonHouseScript: ; 4920e (12:520e) + call EnableAutoTextBoxDrawing + ret + +CeladonHouseTextPointers: ; 49212 (12:5212) + dw CeladonHouseText1 + dw CeladonHouseText2 + dw CeladonHouseText3 + +CeladonHouseText1: ; 49218 (12:5218) + TX_FAR _CeladonHouseText1 + db "@" + +CeladonHouseText2: ; 4921d (12:521d) + TX_FAR _CeladonHouseText2 + db "@" + +CeladonHouseText3: ; 49222 (12:5222) + TX_FAR _CeladonHouseText3 + db "@" diff --git a/scripts/celadonmansion1.asm b/scripts/celadonmansion1.asm new file mode 100755 index 00000000..14832dbe --- /dev/null +++ b/scripts/celadonmansion1.asm @@ -0,0 +1,39 @@ +CeladonMansion1Script: ; 48694 (12:4694) + jp EnableAutoTextBoxDrawing + +CeladonMansion1TextPointers: ; 48697 (12:4697) + dw CeladonMansion1Text1 + dw CeladonMansion1Text2 + dw CeladonMansion1Text3 + dw CeladonMansion1Text4 + dw CeladonMansion1Text5 + +CeladonMansion1_486a1: ; 486a1 (12:46a1) + call PlayCry + jp TextScriptEnd + +CeladonMansion1Text1: ; 486a7 (12:46a7) + TX_FAR _CeladonMansion1Text1 + db $08 ; asm + ld a, MEOWTH + jp CeladonMansion1_486a1 + +CeladonMansion1Text2: ; 486b1 (12:46b1) + TX_FAR _CeladonMansion1Text2 + db "@" + +CeladonMansion1Text3: ; 486b6 (12:46b6) + TX_FAR _CeladonMansion1Text3 + db $8 + ld a, CLEFAIRY + jp CeladonMansion1_486a1 + +CeladonMansion1Text4: ; 486c0 (12:46c0) + TX_FAR _CeladonMansion1Text4 + db $8 + ld a, NIDORAN_F + jp CeladonMansion1_486a1 + +CeladonMansion1Text5: ; 486ca (12:46ca) + TX_FAR _CeladonMansion1Text5 + db "@" diff --git a/scripts/celadonmansion2.asm b/scripts/celadonmansion2.asm new file mode 100755 index 00000000..7f7e5d45 --- /dev/null +++ b/scripts/celadonmansion2.asm @@ -0,0 +1,10 @@ +CeladonMansion2Script: ; 4873a (12:473a) + call EnableAutoTextBoxDrawing + ret + +CeladonMansion2TextPointers: ; 4873e (12:473e) + dw CeladonMansion2Text1 + +CeladonMansion2Text1: ; 48740 (12:4740) + TX_FAR _CeladonMansion2Text1 + db "@" diff --git a/scripts/celadonmansion3.asm b/scripts/celadonmansion3.asm new file mode 100755 index 00000000..4c4fd67a --- /dev/null +++ b/scripts/celadonmansion3.asm @@ -0,0 +1,71 @@ +CeladonMansion3Script: ; 48790 (12:4790) + jp EnableAutoTextBoxDrawing + +CeladonMansion3TextPointers: ; 48793 (12:4793) + dw ProgrammerText + dw GraphicArtistText + dw WriterText + dw DirectorText + dw GameFreakPCText1 + dw GameFreakPCText2 + dw GameFreakPCText3 + dw GameFreakSignText + +ProgrammerText: ; 487a3 (12:47a3) + TX_FAR _ProgrammerText + db "@" + +GraphicArtistText: ; 487a8 (12:47a8) + TX_FAR _GraphicArtistText + db "@" + +WriterText: ; 487ad (12:47ad) + TX_FAR _WriterText + db "@" + +DirectorText: ; 487b2 (12:47b2) + db $08 ; asm + + ; check pokédex + ld hl, wPokedexOwned + ld b, wPokedexOwnedEnd - wPokedexOwned + call CountSetBits + ld a, [$d11e] + cp 150 + jr nc, .CompletedDex + ld hl, .GameDesigner + jr .done +.CompletedDex + ld hl, .CompletedDexText +.done + call PrintText + jp TextScriptEnd + +.GameDesigner ; 487d0 (12:47d0) + TX_FAR _GameDesignerText + db "@" + +.CompletedDexText + TX_FAR _CompletedDexText + db $6 + db $8 ; asm + callab DisplayDiploma + ld a, $1 + ld [$cc3c], a + jp TextScriptEnd + +GameFreakPCText1: ; 487eb (12:47eb) + TX_FAR _CeladonMansion3Text5 + db "@" + +GameFreakPCText2: ; 487f0 (12:47f0) + TX_FAR _CeladonMansion3Text6 + db "@" + +GameFreakPCText3: ; 487f5 (12:47f5) + TX_FAR _CeladonMansion3Text7 + db "@" + +GameFreakSignText: ; 487fa (12:47fa) + TX_FAR _CeladonMansion3Text8 + db "@" diff --git a/scripts/celadonmansion4.asm b/scripts/celadonmansion4.asm new file mode 100755 index 00000000..f9045bcd --- /dev/null +++ b/scripts/celadonmansion4.asm @@ -0,0 +1,9 @@ +CeladonMansion4Script: ; 4886b (12:486b) + jp EnableAutoTextBoxDrawing + +CeladonMansion4TextPointers: ; 4886e (12:486e) + dw CeladonMansion4Text1 + +CeladonMansion4Text1: ; 48870 (12:4870) + TX_FAR _CeladonMansion4Text1 + db "@" diff --git a/scripts/celadonmansion5.asm b/scripts/celadonmansion5.asm new file mode 100755 index 00000000..1d03ae5e --- /dev/null +++ b/scripts/celadonmansion5.asm @@ -0,0 +1,22 @@ +CeladonMansion5Script: ; 1dd3a (7:5d3a) + jp EnableAutoTextBoxDrawing + +CeladonMansion5TextPointers: ; 1dd3d (7:5d3d) + dw CeladonMansion5Text1 + dw CeladonMansion5Text2 + +CeladonMansion5Text1: ; 1dd41 (7:5d41) + TX_FAR _CeladonMansion5Text1 + db "@" + +CeladonMansion5Text2: ; 1dd46 (7:5d46) + db $08 ; asm + ld bc,(EEVEE << 8) | 25 + call GivePokemon + jr nc, .asm_24365 ; 0x1dd4d + ld a, $45 + ld [$cc4d], a + ld a, $11 + call Predef +.asm_24365 ; 0x1dd59 + jp TextScriptEnd diff --git a/scripts/celadonmart1.asm b/scripts/celadonmart1.asm new file mode 100755 index 00000000..041af8b3 --- /dev/null +++ b/scripts/celadonmart1.asm @@ -0,0 +1,19 @@ +CeladonMart1Script: ; 60f86 (18:4f86) + jp EnableAutoTextBoxDrawing + +CeladonMart1TextPointers: ; 60f89 (18:4f89) + dw CeladonMart1Text1 + dw CeladonMart1Text2 + dw CeladonMart1Text3 + +CeladonMart1Text1: ; 60f8f (18:4f8f) + TX_FAR _CeladonMart1Text1 + db "@" + +CeladonMart1Text2: ; 60f94 (18:4f94) + TX_FAR _CeladonMart1Text2 + db "@" + +CeladonMart1Text3: ; 60f99 (18:4f99) + TX_FAR _CeladonMart1Text3 + db "@" diff --git a/scripts/celadonmart2.asm b/scripts/celadonmart2.asm new file mode 100755 index 00000000..92f04399 --- /dev/null +++ b/scripts/celadonmart2.asm @@ -0,0 +1,21 @@ +CeladonMart2Script: ; 560f5 (15:60f5) + jp EnableAutoTextBoxDrawing + +CeladonMart2TextPointers: ; 560f8 (15:60f8) + dw CeladonMart2Text1 + dw CeladonMart2Text2 + dw CeladonMart2Text3 + dw CeladonMart2Text4 + dw CeladonMart2Text5 + +CeladonMart2Text3: ; 56102 (15:6102) + TX_FAR _CeladonMart2Text3 + db "@" + +CeladonMart2Text4: ; 56107 (15:6107) + TX_FAR _CeladonMart2Text4 + db "@" + +CeladonMart2Text5: ; 5610c (15:610c) + TX_FAR _CeladonMart2Text5 + db "@" diff --git a/scripts/celadonmart3.asm b/scripts/celadonmart3.asm new file mode 100755 index 00000000..969fa5f8 --- /dev/null +++ b/scripts/celadonmart3.asm @@ -0,0 +1,109 @@ +CeladonMart3Script: ; 48225 (12:4225) + jp EnableAutoTextBoxDrawing + +CeladonMart3TextPointers: ; 48228 (12:4228) + dw CeladonMart3Text1 + dw CeladonMart3Text2 + dw CeladonMart3Text3 + dw CeladonMart3Text4 + dw CeladonMart3Text5 + dw CeladonMart3Text6 + dw CeladonMart3Text7 + dw CeladonMart3Text8 + dw CeladonMart3Text9 + dw CeladonMart3Text10 + dw CeladonMart3Text11 + dw CeladonMart3Text12 + dw CeladonMart3Text13 + dw CeladonMart3Text14 + dw CeladonMart3Text15 + dw CeladonMart3Text16 + dw CeladonMart3Text17 + +CeladonMart3Text1: ; 4824a (12:424a) + db $08 ; asm + ld a, [$d778] + bit 7, a + jr nz, .asm_a5463 ; 0x48250 + ld hl, TM18PreReceiveText + call PrintText + ld bc, (TM_18 << 8) | 1 + call GiveItem + jr nc, .BagFull + ld hl, $d778 + set 7, [hl] + ld hl, ReceivedTM18Text + jr .asm_81359 ; 0x48268 +.BagFull + ld hl, TM18NoRoomText + jr .asm_81359 ; 0x4826d +.asm_a5463 ; 0x4826f + ld hl, TM18ExplanationText +.asm_81359 ; 0x48272 + call PrintText + jp TextScriptEnd + +TM18PreReceiveText: ; 48278 (12:4278) + TX_FAR _TM18PreReceiveText + db "@" + +ReceivedTM18Text: ; 4827d (12:427d) + TX_FAR _ReceivedTM18Text + db $0B, "@" + +TM18ExplanationText: ; 48283 (12:4283) + TX_FAR _TM18ExplanationText + db "@" + +TM18NoRoomText: ; 48288 (12:4288) + TX_FAR _TM18NoRoomText + db "@" + +CeladonMart3Text2: ; 4828d (12:428d) + TX_FAR _CeladonMart3Text2 + db "@" + +CeladonMart3Text3: ; 48292 (12:4292) + TX_FAR _CeladonMart3Text3 + db "@" + +CeladonMart3Text4: ; 48297 (12:4297) + TX_FAR _CeladonMart3Text4 + db "@" + +CeladonMart3Text5: ; 4829c (12:429c) + TX_FAR _CeladonMart3Text5 + db "@" + +CeladonMart3Text12 +CeladonMart3Text10: ; 482a1 (12:42a1) +CeladonMart3Text8: ; 482a1 (12:42a1) +CeladonMart3Text6: ; 482a1 (12:42a1) + TX_FAR _CeladonMart3Text6 + db "@" + +CeladonMart3Text7: ; 482a6 (12:42a6) + TX_FAR _CeladonMart3Text7 + db "@" + +CeladonMart3Text9: ; 482ab (12:42ab) + TX_FAR _CeladonMart3Text9 + db "@" + +CeladonMart3Text11: ; 482b0 (12:42b0) + TX_FAR _CeladonMart3Text11 + db "@" + +CeladonMart3Text13: ; 482b5 (12:42b5) + TX_FAR _CeladonMart3Text13 + db "@" + +CeladonMart3Text14: ; 482ba (12:42ba) + TX_FAR _CeladonMart3Text14 + db "@" + +CeladonMart3Text17: ; 482bf (12:42bf) +CeladonMart3Text16: ; 482bf (12:42bf) +CeladonMart3Text15: ; 482bf (12:42bf) + TX_FAR _CeladonMart3Text15 + db "@" diff --git a/scripts/celadonmart4.asm b/scripts/celadonmart4.asm new file mode 100755 index 00000000..dfe2b90a --- /dev/null +++ b/scripts/celadonmart4.asm @@ -0,0 +1,20 @@ +CeladonMart4Script: ; 48356 (12:4356) + jp EnableAutoTextBoxDrawing + +CeladonMart4TextPointers: ; 48359 (12:4359) + dw CeladonMart4Text1 + dw CeladonMart4Text2 + dw CeladonMart4Text3 + dw CeladonMart4Text4 + +CeladonMart4Text2: ; 48361 (12:4361) + TX_FAR _CeladonMart4Text2 + db "@" + +CeladonMart4Text3: ; 48366 (12:4366) + TX_FAR _CeladonMart4Text3 + db "@" + +CeladonMart4Text4: ; 4836b (12:436b) + TX_FAR _CeladonMart4Text4 + db "@" diff --git a/scripts/celadonmart5.asm b/scripts/celadonmart5.asm new file mode 100755 index 00000000..9bd7f991 --- /dev/null +++ b/scripts/celadonmart5.asm @@ -0,0 +1,21 @@ +CeladonMart5Script: ; 49069 (12:5069) + jp EnableAutoTextBoxDrawing + +CeladonMart5TextPointers: ; 4906c (12:506c) + dw CeladonMart5Text1 + dw CeladonMart5Text2 + dw CeladonMart5Text3 + dw CeladonMart5Text4 + dw CeladonMart5Text5 + +CeladonMart5Text1: ; 49076 (12:5076) + TX_FAR _CeladonMart5Text1 + db "@" + +CeladonMart5Text2: ; 4907b (12:507b) + TX_FAR _CeladonMart5Text2 + db "@" + +CeladonMart5Text5: ; 49080 (12:5080) + TX_FAR _CeladonMart5Text5 + db "@" diff --git a/scripts/celadonmartelevator.asm b/scripts/celadonmartelevator.asm new file mode 100755 index 00000000..9712ef04 --- /dev/null +++ b/scripts/celadonmartelevator.asm @@ -0,0 +1,71 @@ +CeladonMartElevatorScript: ; 48600 (12:4600) + ld hl, $d126 + bit 5, [hl] + res 5, [hl] + push hl + call nz, CeladonMartElevatorScript_4861c + pop hl + bit 7, [hl] + res 7, [hl] + call nz, CeladonMartElevatorScript_48654 + xor a + ld [$cf0c], a + inc a + ld [$cc3c], a + ret + +CeladonMartElevatorScript_4861c: ; 4861c (12:461c) + ld hl, $d3af + ld a, [$d73b] + ld b, a + ld a, [$d73c] + ld c, a + call CeladonMartElevatorScript_4862a + +CeladonMartElevatorScript_4862a: ; 4862a (12:462a) + inc hl + inc hl + ld a, b + ld [hli], a + ld a, c + ld [hli], a + ret + +CeladonMartElevatorScript_48631: ; 48631 (12:4631) + ld hl, CeladonMartElavatorFloors ; $4643 + call LoadItemList + ld hl, CeldaonMartElevatorWarpMaps ; $464a + ld de, $cc5b + ld bc, $000a + jp CopyData + +CeladonMartElavatorFloors: ; 48643 (12:4643) + db $05 ; num elements in list + db $56, $57, $58, $59, $5A ; "1F", "2F", "3F", "4F, "5F" + db $FF ; terminator + +CeldaonMartElevatorWarpMaps: ; 4864a (12:464a) +; first byte is warp number +; second byte is map number +; These specify where the player goes after getting out of the elevator. + db $05, CELADON_MART_1 + db $02, CELADON_MART_2 + db $02, CELADON_MART_3 + db $02, CELADON_MART_4 + db $02, CELADON_MART_5 + +CeladonMartElevatorScript_48654: ; 48654 (12:4654) + ld b, BANK(ShakeElevator) + ld hl, ShakeElevator + jp Bankswitch + +CeladonMartElevatorTextPointers: ; 4865c (12:465c) + dw CeladonMartElevatorText1 + +CeladonMartElevatorText1: ; 4865e (12:465e) + db $08 ; asm + call CeladonMartElevatorScript_48631 + ld hl, CeldaonMartElevatorWarpMaps ; $464a + ld a, $61 + call Predef + jp TextScriptEnd diff --git a/scripts/celadonmartroof.asm b/scripts/celadonmartroof.asm new file mode 100755 index 00000000..d1765575 --- /dev/null +++ b/scripts/celadonmartroof.asm @@ -0,0 +1,263 @@ +CeladonMartRoofScript: ; 483d5 (12:43d5) + jp EnableAutoTextBoxDrawing + +CeladonMartRoofScript_483d8: ; 483d8 (12:43d8) + xor a + ld [$cd37], a + ld de, $cc5b + ld hl, CeladonMartRoofDrinkList ; $4408 +.asm_483e2 + ld a, [hli] + and a + jr z, .asm_48404 + push hl + push de + ld [$d11e], a + ld b, a + ld a, $1c + call Predef ; indirect jump to Func_f8a5 (f8a5 (3:78a5)) + pop de + pop hl + ld a, b + and a + jr z, .asm_483e2 + ld a, [$d11e] + ld [de], a + inc de + push hl + ld hl, $cd37 + inc [hl] + pop hl + jr .asm_483e2 +.asm_48404 + ld a, $ff + ld [de], a + ret + +CeladonMartRoofDrinkList: ; 48408 (12:4408) + db FRESH_WATER + db SODA_POP + db LEMONADE + db $00 + +CeladonMartRoofScript_4840c: ; 4840c (12:440c) + ld hl, $d730 + set 6, [hl] + ld hl, CeladonMartRoofText_484ee ; $44ee + call PrintText + xor a + ld [wCurrentMenuItem], a ; $cc26 + ld a, $3 + ld [wMenuWatchedKeys], a ; $cc29 + ld a, [$cd37] + dec a + ld [wMaxMenuItem], a ; $cc28 + ld a, $2 + ld [wTopMenuItemY], a ; $cc24 + ld a, $1 + ld [wTopMenuItemX], a ; $cc25 + ld a, [$cd37] + dec a + ld bc, $2 + ld hl, $3 + call AddNTimes + dec l + ld b, l + ld c, $c + ld hl, wTileMap + call TextBoxBorder + call UpdateSprites + call CeladonMartRoofScript_48532 + ld hl, $d730 + res 6, [hl] + call HandleMenuInput + bit 1, a + ret nz + ld hl, $cc5b + ld a, [wCurrentMenuItem] ; $cc26 + ld d, $0 + ld e, a + add hl, de + ld a, [hl] + ld [$ffdb], a + cp FRESH_WATER + jr z, .asm_484b6 + cp SODA_POP + jr z, .asm_48492 + ld a, [$d778] + bit 6, a + jr nz, .asm_484e0 + ld hl, CeladonMartRoofText_48515 ; $4515 + call PrintText + call RemoveItemByIDBank12 + ld bc, (TM_49 << 8) | 1 + call GiveItem + jr nc, .BagFull + ld hl, ReceivedTM49Text + call PrintText + ld hl, $d778 + set 6, [hl] + ret +.asm_48492 + ld a, [$d778] + bit 5, a + jr nz, .asm_484e0 + ld hl, CeladonMartRoofText_48504 ; $4504 + call PrintText + call RemoveItemByIDBank12 + ld bc, (TM_48 << 8) | 1 + call GiveItem + jr nc, .BagFull + ld hl, CeladonMartRoofText_4850a ; $450a + call PrintText + ld hl, $d778 + set 5, [hl] + ret +.asm_484b6 + ld a, [$d778] + bit 4, a + jr nz, .asm_484e0 + ld hl, CeladonMartRoofText_484f3 ; $44f3 + call PrintText + call RemoveItemByIDBank12 + ld bc, (TM_13 << 8) | 1 + call GiveItem + jr nc, .BagFull + ld hl, CeladonMartRoofText_484f9 ; $44f9 + call PrintText + ld hl, $d778 + set 4, [hl] + ret +.BagFull + ld hl, CeladonMartRoofText_48526 ; $4526 + jp PrintText +.asm_484e0 + ld hl, CeladonMartRoofText_4852c ; $452c + jp PrintText + +RemoveItemByIDBank12: ; 484e6 (12:44e6) + ld b, BANK(RemoveItemByID) + ld hl, RemoveItemByID + jp Bankswitch + +CeladonMartRoofText_484ee: ; 484ee (12:44ee) + TX_FAR _CeladonMartRoofText_484ee + db "@" + +CeladonMartRoofText_484f3: ; 484f3 (12:44f3) + TX_FAR _CeladonMartRoofText_484f3 + db $0d + db "@" + +CeladonMartRoofText_484f9: ; 484f9 (12:44f9) + TX_FAR _CeladonMartRoofText_484f9 + db $0b + TX_FAR _CeladonMartRoofText_484fe + db $0d + db "@" + +CeladonMartRoofText_48504: ; 48504 (12:4504) + TX_FAR _CeladonMartRoofText_48504 + db $0d + db "@" + +CeladonMartRoofText_4850a: ; 4850a (12:450a) + TX_FAR _CeladonMartRoofText_4850a + db $0b + TX_FAR _CeladonMartRoofText_4850f + db $0d + db "@" + +CeladonMartRoofText_48515: ; 48515 (12:4515) + TX_FAR _CeladonMartRoofText_48515 + db $0d + db "@" + +ReceivedTM49Text: ; 4851b (12:451b) + TX_FAR _ReceivedTM49Text + db $0b + TX_FAR _CeladonMartRoofText_48520 + db $0d + db "@" + +CeladonMartRoofText_48526: ; 48526 (12:4526) + TX_FAR _CeladonMartRoofText_48526 + db $0d + db "@" + +CeladonMartRoofText_4852c: ; 4852c (12:452c) + TX_FAR _CeladonMartRoofText_4852c + db $0d + db "@" + +CeladonMartRoofScript_48532: ; 48532 (12:4532) + ld hl, $cc5b + xor a + ld [$ffdb], a +.asm_48538 + ld a, [hli] + cp $ff + ret z + push hl + ld [$d11e], a + call GetItemName + FuncCoord 2, 2 ; $c3ca + ld hl, Coord + ld a, [$ffdb] + ld bc, $28 + call AddNTimes + ld de, $cd6d + call PlaceString + ld hl, $ffdb + inc [hl] + pop hl + jr .asm_48538 + +CeladonMartRoofTextPointers: ; 4855b (12:455b) + dw CeladonMartRoofText1 + dw CeladonMartRoofText2 + dw CeladonMartRoofText5 + dw CeladonMartRoofText5 + dw CeladonMartRoofText5 + dw CeladonMartRoofText6 + +CeladonMartRoofText1: ; 48567 (12:4567) + TX_FAR _CeladonMartRoofText1 + db "@" + +CeladonMartRoofText2: ; 4856c (12:456c) + db $08 ; asm + call CeladonMartRoofScript_483d8 + ld a, [$cd37] + and a + jr z, .asm_914b9 ; 0x48574 + ld a, $1 + ld [$cc3c], a + ld hl, CeladonMartRoofText4 + call PrintText + call YesNoChoice + ld a, [$cc26] + and a + jr nz, .asm_05aa4 ; 0x48588 + call CeladonMartRoofScript_4840c + jr .asm_05aa4 ; 0x4858d +.asm_914b9 ; 0x4858f + ld hl, CeladonMartRoofText3 + call PrintText +.asm_05aa4 ; 0x48595 + jp TextScriptEnd + +CeladonMartRoofText3: ; 48598 (12:4598) + TX_FAR _CeladonMartRoofText_48598 + db "@" + +CeladonMartRoofText4: ; 4859d (12:459d) + TX_FAR _CeladonMartRoofText4 + db "@" + +CeladonMartRoofText5: ; 485a2 (12:45a2) + db $f5 + +CeladonMartRoofText6: ; 485a3 (12:45a3) + TX_FAR _CeladonMartRoofText6 + db "@" diff --git a/scripts/celadonpokecenter.asm b/scripts/celadonpokecenter.asm new file mode 100755 index 00000000..e7bfd1d2 --- /dev/null +++ b/scripts/celadonpokecenter.asm @@ -0,0 +1,23 @@ +CeladonPokecenterScript: ; 488b8 (12:48b8) + call Func_22fa + jp EnableAutoTextBoxDrawing + +CeladonPokecenterTextPointers: ; 488be (12:48be) + dw CeladonPokecenterText1 + dw CeladonPokecenterText2 + dw CeladonPokecenterText3 + dw CeladonPokecenterText4 + +CeladonPokecenterText4: ; 488c6 (12:48c6) + db $f6 + +CeladonPokecenterText1: ; 488c7 (12:48c7) + db $ff + +CeladonPokecenterText2: ; 488c8 (12:48c8) + TX_FAR _CeladonPokecenterText2 + db "@" + +CeladonPokecenterText3: ; 488cd (12:48cd) + TX_FAR _CeladonPokecenterText3 + db "@" diff --git a/scripts/celadonprizeroom.asm b/scripts/celadonprizeroom.asm new file mode 100755 index 00000000..2cfd01d0 --- /dev/null +++ b/scripts/celadonprizeroom.asm @@ -0,0 +1,20 @@ +CeladonPrizeRoomScript: ; 490f0 (12:50f0) + jp EnableAutoTextBoxDrawing + +CeladonPrizeRoomTextPointers: ; 490f3 (12:50f3) + dw CeladonPrizeRoomText1 + dw CeladonPrizeRoomText2 + dw CeladonPrizeRoomText3 + dw CeladonPrizeRoomText3 + dw CeladonPrizeRoomText3 + +CeladonPrizeRoomText1: ; 490fd (12:50fd) + TX_FAR _CeladonPrizeRoomText1 + db "@" + +CeladonPrizeRoomText2: ; 49102 (12:5102) + TX_FAR _CeladonPrizeRoomText2 + db "@" + +CeladonPrizeRoomText3: ; 49107 (12:5107) + db $f7 diff --git a/scripts/ceruleancity.asm b/scripts/ceruleancity.asm new file mode 100755 index 00000000..86e353b1 --- /dev/null +++ b/scripts/ceruleancity.asm @@ -0,0 +1,444 @@ +CeruleanCityScript: ; 19480 (6:5480) + call EnableAutoTextBoxDrawing + ld hl, CeruleanCityScriptPointers + ld a, [W_CERULEANCITYCURSCRIPT] + jp CallFunctionInTable + +CeruleanCityScript_1948c: ; 1948c (6:548c) + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [W_CERULEANCITYCURSCRIPT], a + ld a, $5 + ld [$cc4d], a + ld a, $11 + jp Predef + +CeruleanCityScriptPointers: ; 1949d (6:549d) + dw CeruleanCityScript0 + dw CeruleanCityScript1 + dw CeruleanCityScript2 + dw CeruleanCityScript3 + dw CeruleanCityScript4 + +CeruleanCityScript4: ; 194a7 (6:54a7) + ld a, [W_ISINBATTLE] + cp $ff + jp z, CeruleanCityScript_1948c + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + ld hl, $d75b + set 7, [hl] + ld a, $2 + ld [$ff8c], a + call DisplayTextID + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [W_CERULEANCITYCURSCRIPT], a + ret + +CeruleanCityScript0: ; 194c8 (6:54c8) + ld a, [$d75b] + bit 7, a + jr nz, .asm_194f7 ; 0x194cd $28 + ld hl, CeruleanCityCoords1 + call ArePlayerCoordsInArray + jr nc, .asm_194f7 ; 0x194d5 $20 + ld a, [$cd3d] + cp $1 + ld a, $8 + ld b, $0 + jr nz, .asm_194e6 ; 0x194e0 $4 + ld a, $4 + ld b, $4 +.asm_194e6 + ld [$d528], a + ld a, b + ld [$c129], a + call Delay3 + ld a, $2 + ld [$ff8c], a + jp DisplayTextID +.asm_194f7 + ld a, [$d75a] + bit 0, a + ret nz + ld hl, CeruleanCityCoords2 + call ArePlayerCoordsInArray + ret nc + ld a, [$d700] + and a + jr z, .asm_19512 ; 0x19508 $8 + ld a, $ff + ld [$c0ee], a + call PlaySound +.asm_19512 + ld c, BANK(Music_MeetRival) + ld a, MUSIC_MEET_RIVAL + call PlayMusic + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + ld a, [W_XCOORD] + cp $14 + jr z, .asm_19535 ; 0x19526 $d + ld a, $1 + ld [$ff8c], a + ld a, $5 + ld [$ff8b], a + call Func_3500 + ld [hl], $19 +.asm_19535 + ld a, $5 + ld [$cc4d], a + ld a, $15 + call Predef + ld de, CeruleanCityMovement1 + ld a, $1 + ld [$ff8c], a + call MoveSprite + ld a, $1 + ld [W_CERULEANCITYCURSCRIPT], a + ret + +CeruleanCityCoords1: ; 1954f (6:554f) + db $07,$1e + db $09,$1e + db $ff + +CeruleanCityCoords2: ; 19554 (6:5554) + db $06,$14 + db $06,$15 + db $ff + +CeruleanCityMovement1: ; 19559 (6:5559) + db $00,$00,$00,$FF + +CeruleanCityScript_1955d: ; 1955d (6:555d) + ld a,1 + ld [$ff8c],a + xor a + ld [$ff8d],a + jp Func_34a6 ; face object + +CeruleanCityScript1: ; 19567 (6:5567) + ld a, [$d730] + bit 0, a + ret nz + xor a + ld [wJoypadForbiddenButtonsMask], a + ld a, $1 + ld [$ff8c], a + call DisplayTextID + ld hl, $d72d + set 6, [hl] + set 7, [hl] + ld hl, CeruleanCityText_1966d + ld de, CeruleanCityText_19672 + call PreBattleSaveRegisters + ld a, SONY1 + $c8 + ld [W_CUROPPONENT], a + + ; select which team to use during the encounter + ld a, [W_RIVALSTARTER] + cp SQUIRTLE + jr nz, .NotSquirtle ; 0x19592 $4 + ld a, $7 + jr .done +.NotSquirtle + cp BULBASAUR + jr nz, .Charmander ; 0x1959a $4 + ld a, $8 + jr .done +.Charmander + ld a, $9 +.done + ld [W_TRAINERNO], a + + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + call CeruleanCityScript_1955d + ld a, $2 + ld [W_CERULEANCITYCURSCRIPT], a + ret + +CeruleanCityScript2: ; 195b1 (6:55b1) + ld a, [$d057] + cp $ff + jp z, CeruleanCityScript_1948c + call CeruleanCityScript_1955d + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + ld hl, $d75a + set 0, [hl] + ld a, $1 + ld [$ff8c], a + call DisplayTextID + ld a, $ff + ld [$c0ee], a + call PlaySound + callba Music_RivalAlternateStart + ld a, $1 + ld [$ff8c], a + call SetSpriteMovementBytesToFF + ld a, [W_XCOORD] + cp $14 + jr nz, .asm_195f0 ; 0x195e9 $5 + ld de, CeruleanCityMovement4 + jr .asm_195f3 ; 0x195ee $3 +.asm_195f0 + ld de, CeruleanCityMovement3 +.asm_195f3 + ld a, $1 + ld [$ff8c], a + call MoveSprite + ld a, $3 + ld [W_CERULEANCITYCURSCRIPT], a + ret + +CeruleanCityMovement3: ; 19600 (6:5600) + db $80,$00,$00,$00,$00,$00,$00,$FF + +CeruleanCityMovement4: ; 19608 (6:5608) + db $c0,$00,$00,$00,$00,$00,$00,$FF + +CeruleanCityScript3: ; 19610 (6:5610) + ld a, [$d730] + bit 0, a + ret nz + ld a, $5 + ld [$cc4d], a + ld a, $11 + call Predef + xor a + ld [wJoypadForbiddenButtonsMask], a + call Func_2307 + ld a, $0 + ld [W_CERULEANCITYCURSCRIPT], a + ret + +CeruleanCityTextPointers: ; 1962d (6:562d) + dw CeruleanCityText1 + dw CeruleanCityText2 + dw CeruleanCityText3 + dw CeruleanCityText4 + dw CeruleanCityText5 + dw CeruleanCityText6 + dw CeruleanCityText7 + dw CeruleanCityText8 + dw CeruleanCityText9 + dw CeruleanCityText10 + dw CeruleanCityText11 + dw CeruleanCityText12 + dw CeruleanCityText13 + dw MartSignText + dw PokeCenterSignText + dw CeruleanCityText16 + dw CeruleanCityText17 + +CeruleanCityText1: ; 1964f (6:564f) + db $08 ; asm + ld a, [$d75a] ; rival battle flag + bit 0, a + ; do pre-battle text + jr z, .PreBattleText + ; or talk about bill + ld hl, CeruleanCityText_19677 + call PrintText + jr .end ; 0x1965d +.PreBattleText ; 0x1965f + ld hl, CeruleanCityText_19668 + call PrintText +.end ; 0x19665 + jp TextScriptEnd + +CeruleanCityText_19668: ; 19668 (6:5668) + TX_FAR _CeruleanCityText_19668 + db "@" + +CeruleanCityText_1966d: ; 1966d (6:566d) + TX_FAR _CeruleanCityText_1966d + db "@" + +CeruleanCityText_19672: ; 19672 (6:5672) + TX_FAR _CeruleanCityText_19672 + db "@" + +CeruleanCityText_19677: ; 19677 (6:5677) + TX_FAR _CeruleanCityText_19677 + db "@" + +CeruleanCityText2: ; 1967c (6:567c) + db $8 + ld a, [$d75b] + bit 7, a + jr nz, .asm_4ca20 ; 0x19682 $29 + ld hl, CeruleanCityText_196d9 + call PrintText + ld hl, $d72d + set 6, [hl] + set 7, [hl] + ld hl, CeruleanCityText_196ee + ld de, CeruleanCityText_196ee + call PreBattleSaveRegisters + ld a, [$ff8c] + ld [$cf13], a + call EngageMapTrainer + call InitBattleEnemyParameters + ld a, $4 + ld [W_CERULEANCITYCURSCRIPT], a + jp TextScriptEnd +.asm_4ca20 ; 0x196ad + ld hl, CeruleanCityText_196f3 + call PrintText + ld bc, $e401 + call GiveItem + jr c, .Success + ld hl, TM28NoRoomText + call PrintText + jr .Done +.Success + ld a, $1 + ld [$cc3c], a + ld hl, ReceivedTM28Text + call PrintText + callba Func_74872 +.Done + jp TextScriptEnd + +CeruleanCityText_196d9: ; 196d9 (6:56d9) + TX_FAR _CeruleanCityText_196d9 + db "@" + +ReceivedTM28Text: ; 196de (6:56de) + TX_FAR _ReceivedTM28Text + db $0B + TX_FAR _ReceivedTM28Text2 + db $0D, "@" + +TM28NoRoomText: ; 196e9 (6:56e9) + TX_FAR _TM28NoRoomText + db "@" + +CeruleanCityText_196ee: ; 196ee (6:56ee) + TX_FAR _CeruleanCityText_196ee + db "@" + +CeruleanCityText_196f3: ; 196f3 (6:56f3) + TX_FAR _CeruleanCityText_196f3 + db "@" + +CeruleanCityText3: ; 196f8 (6:56f8) + TX_FAR _CeruleanCityText3 + db "@" + +CeruleanCityText4: ; 196fd (6:56fd) + TX_FAR _CeruleanCityText4 + db "@" + +CeruleanCityText5: ; 19702 (6:5702) + TX_FAR _CeruleanCityText5 + db "@" + +CeruleanCityText11: ; 19707 (6:5707) +CeruleanCityText6: ; 19707 (6:5707) + TX_FAR _CeruleanCityText6 + db "@" + +CeruleanCityText7: ; 1970c (6:570c) + db $08 ; asm + ldh a, [$d3] + cp $b4 + jr c, .asm_e9fc9 ; 0x19711 + ld hl, CeruleanCityText_19730 + call PrintText + jr .asm_d486e ; 0x19719 +.asm_e9fc9 ; 0x1971b + cp $64 + jr c, .asm_df99b ; 0x1971d + ld hl, CeruleanCityText_19735 + call PrintText + jr .asm_d486e ; 0x19725 +.asm_df99b ; 0x19727 + ld hl, CeruleanCityText_1973a + call PrintText +.asm_d486e ; 0x1972d + jp TextScriptEnd + +CeruleanCityText_19730: ; 19730 (6:5730) + TX_FAR _CeruleanCityText_19730 + db "@" + +CeruleanCityText_19735: ; 19735 (6:5735) + TX_FAR _CeruleanCityText_19735 + db "@" + +CeruleanCityText_1973a: ; 1973a (6:573a) + TX_FAR _CeruleanCityText_1973a + db "@" + +CeruleanCityText8: ; 1973f (6:573f) + db $08 ; asm + ldh a, [$d3] + cp $b4 + jr c, .asm_e28da ; 0x19744 + ld hl, CeruleanCityText_1976f + call PrintText + jr .asm_f2f38 ; 0x1974c +.asm_e28da ; 0x1974e + cp $78 + jr c, .asm_15d08 ; 0x19750 + ld hl, CeruleanCityText_19774 + call PrintText + jr .asm_f2f38 ; 0x19758 +.asm_15d08 ; 0x1975a + cp $3c + jr c, .asm_d7fea ; 0x1975c + ld hl, CeruleanCityText_19779 + call PrintText + jr .asm_f2f38 ; 0x19764 +.asm_d7fea ; 0x19766 + ld hl, CeruleanCityText_1977e + call PrintText +.asm_f2f38 ; 0x1976c + jp TextScriptEnd + +CeruleanCityText_1976f: ; 1976f (6:576f) + TX_FAR _CeruleanCityText_1976f + db "@" + +CeruleanCityText_19774: ; 19774 (6:5774) + TX_FAR _CeruleanCityText_19774 + db "@" + +CeruleanCityText_19779: ; 19779 (6:5779) + TX_FAR _CeruleanCityText_19779 + db "@" + +CeruleanCityText_1977e: ; 1977e (6:577e) + TX_FAR _CeruleanCityText_1977e + db "@" + +CeruleanCityText9: ; 19783 (6:5783) + TX_FAR _CeruleanCityText9 + db "@" + +CeruleanCityText10: ; 19788 (6:5788) + TX_FAR _CeruleanCityText10 + db "@" + +CeruleanCityText12: ; 1978d (6:578d) + TX_FAR _CeruleanCityText12 + db "@" + +CeruleanCityText13: ; 19792 (6:5792) + TX_FAR _CeruleanCityText13 + db "@" + +CeruleanCityText16: ; 19797 (6:5797) + TX_FAR _CeruleanCityText16 + db "@" + +CeruleanCityText17: ; 1979c (6:579c) + TX_FAR _CeruleanCityText17 + db "@" diff --git a/scripts/ceruleangym.asm b/scripts/ceruleangym.asm new file mode 100755 index 00000000..7d35cf71 --- /dev/null +++ b/scripts/ceruleangym.asm @@ -0,0 +1,224 @@ +CeruleanGymScript: ; 5c6b3 (17:46b3) + ld hl, $d126 + bit 6, [hl] + res 6, [hl] + call nz, CeruleanGymScript_5c6d0 + call EnableAutoTextBoxDrawing + ld hl, CeruleanGymTrainerHeaders + ld de, CeruleanGymScriptPointers + ld a, [W_CERULEANGYMCURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_CERULEANGYMCURSCRIPT], a + ret + +CeruleanGymScript_5c6d0: ; 5c6d0 (17:46d0) + ld hl, Gym2CityName ; $46d9 + ld de, Gym2LeaderName ; $46e7 + jp LoadGymLeaderAndCityName + +Gym2CityName: ; 5c6d9 (17:46d9) + db "CERULEAN CITY@" + +Gym2LeaderName: ; 5c6e7 (17:46e7) + db "MISTY@" + +CeruleanGymScript_5c6ed: ; 5c6ed (17:46ed) + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [W_CERULEANGYMCURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +CeruleanGymScriptPointers: ; 5c6f8 (17:46f8) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + dw CeruleanGymScript3 + +CeruleanGymScript3: ; 5c700 (17:4700) + ld a, [W_ISINBATTLE] ; $d057 + cp $ff + jp z, CeruleanGymScript_5c6ed + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + +CeruleanGymScript_5c70d: ; 5c70d (17:470d) + ld a, $5 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + ld hl, $d75e + set 7, [hl] + ld bc, (TM_11 << 8) | 1 + call GiveItem + jr nc, .BagFull + ld a, $6 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + ld hl, $d75e + set 6, [hl] + jr .asm_5c736 +.BagFull + ld a, $7 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID +.asm_5c736 + ld hl, W_OBTAINEDBADGES + set 1, [hl] + ld hl, $d72a + set 1, [hl] + + ; deactivate gym trainers + ld hl, $d75e + set 2, [hl] + set 3, [hl] + + jp CeruleanGymScript_5c6ed + +CeruleanGymTextPointers: ; 5c74a (17:474a) + dw CeruleanGymText1 + dw CeruleanGymText2 + dw CeruleanGymText3 + dw CeruleanGymText4 + dw CeruleanGymText5 + dw CeruleanGymText6 + dw CeruleanGymText7 + +CeruleanGymTrainerHeaders: ; 5c758 (17:4758) +CeruleanGymTrainerHeader0: ; 5c758 (17:4758) + db $2 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d75e ; flag's byte + dw CeruleanGymBattleText1 ; 0x47e9 TextBeforeBattle + dw CeruleanGymAfterBattleText1 ; 0x47f3 TextAfterBattle + dw CeruleanGymEndBattleText1 ; 0x47ee TextEndBattle + dw CeruleanGymEndBattleText1 ; 0x47ee TextEndBattle + +CeruleanGymTrainerHeader1: ; 5c764 (17:4764) + db $3 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d75e ; flag's byte + dw CeruleanGymBattleText2 ; 0x4802 TextBeforeBattle + dw CeruleanGymAfterBattleText2 ; 0x480c TextAfterBattle + dw CeruleanGymEndBattleText2 ; 0x4807 TextEndBattle + dw CeruleanGymEndBattleText2 ; 0x4807 TextEndBattle + + db $ff + +CeruleanGymText1: ; 5c771 (17:4771) + db $08 ; asm + ld a, [$d75e] + bit 7, a + jr z, .asm_10854 ; 0x5c777 + bit 6, a + jr nz, .asm_37a1b ; 0x5c77b + call z, CeruleanGymScript_5c70d + call DisableWaitingAfterTextDisplay + jr .asm_95b04 ; 0x5c783 +.asm_37a1b ; 0x5c785 + ld hl, CeruleanGymText_5c7c3 + call PrintText + jr .asm_95b04 ; 0x5c78b +.asm_10854 ; 0x5c78d + ld hl, CeruleanGymText_5c7be + call PrintText + ld hl, $d72d + set 6, [hl] + set 7, [hl] + ld hl, CeruleanGymText_5c7d8 + ld de, CeruleanGymText_5c7d8 + call PreBattleSaveRegisters + ldh a, [$8c] + ld [$cf13], a + call EngageMapTrainer + call InitBattleEnemyParameters + ld a, $2 + ld [$d05c], a + xor a + ldh [$b4], a + ld a, $3 + ld [W_CERULEANGYMCURSCRIPT], a +.asm_95b04 ; 0x5c7bb + jp TextScriptEnd + +CeruleanGymText_5c7be: ; 5c7be (17:47be) + TX_FAR _CeruleanGymText_5c7be + db "@" + +CeruleanGymText_5c7c3: ; 5c7c3 (17:47c3) + TX_FAR _CeruleanGymText_5c7c3 + db "@" + +CeruleanGymText5: ; 5c7c8 (17:47c8) + TX_FAR _CeruleanGymText_5c7c8 + db "@" + +CeruleanGymText6: ; 5c7cd (17:47cd) +ReceivedTM11Text: ; 5c7cd (17:47cd) + TX_FAR _ReceivedTM11Text + db $0B, "@" + +CeruleanGymText7: ; 5c7d3 (17:47d3) + TX_FAR _CeruleanGymText_5c7d3 + db "@" + +CeruleanGymText_5c7d8: ; 5c7d8 (17:47d8) + TX_FAR _CeruleanGymText_5c7d8 + db $11, $6, "@" + +CeruleanGymText2: ; 5c7df (17:47df) + db $08 ; asm + ld hl, CeruleanGymTrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +CeruleanGymBattleText1: ; 5c7e9 (17:47e9) + TX_FAR _CeruleanGymBattleText1 + db "@" + +CeruleanGymEndBattleText1: ; 5c7ee (17:47ee) + TX_FAR _CeruleanGymEndBattleText1 + db "@" + +CeruleanGymAfterBattleText1: ; 5c7f3 (17:47f3) + TX_FAR _CeruleanGymAfterBattleText1 + db "@" + +CeruleanGymText3: ; 5c7f8 (17:47f8) + db $08 ; asm + ld hl, CeruleanGymTrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +CeruleanGymBattleText2: ; 5c802 (17:4802) + TX_FAR _CeruleanGymBattleText2 + db "@" + +CeruleanGymEndBattleText2: ; 5c807 (17:4807) + TX_FAR _CeruleanGymEndBattleText2 + db "@" + +CeruleanGymAfterBattleText2: ; 5c80c (17:480c) + TX_FAR _CeruleanGymAfterBattleText2 + db "@" + +CeruleanGymText4: ; 5c811 (17:4811) + db $08 ; asm + ld a, [$d75e] + bit 7, a + jr nz, .asm_f80ce ; 0x5c817 + ld hl, CeruleanGymText_5c82a + call PrintText + jr .asm_18a31 ; 0x5c81f +.asm_f80ce ; 0x5c821 + ld hl, CeruleanGymText_5c82f + call PrintText +.asm_18a31 ; 0x5c827 + jp TextScriptEnd + +CeruleanGymText_5c82a: ; 5c82a (17:482a) + TX_FAR _CeruleanGymText_5c82a + db "@" + +CeruleanGymText_5c82f: ; 5c82f (17:482f) + TX_FAR _CeruleanGymText_5c82f + db "@" diff --git a/scripts/ceruleanhouse1.asm b/scripts/ceruleanhouse1.asm new file mode 100755 index 00000000..6bc1cd30 --- /dev/null +++ b/scripts/ceruleanhouse1.asm @@ -0,0 +1,18 @@ +CeruleanHouse1Script: ; 1d6f6 (7:56f6) + jp EnableAutoTextBoxDrawing + +CeruleanHouse1TextPointers: ; 1d6f9 (7:56f9) + dw CeruleanHouse1Text1 + dw CeruleanHouse1Text2 + +CeruleanHouse1Text1: ; 1d6fd (7:56fd) + TX_FAR _CeruleanHouse1Text1 + db "@" + +CeruleanHouse1Text2: ; 1d702 (7:5702) + db $08 ; asm + ld a, $6 + ld [wWhichTrade], a + ld a, $54 + call Predef + jp TextScriptEnd diff --git a/scripts/ceruleanhouse2.asm b/scripts/ceruleanhouse2.asm new file mode 100755 index 00000000..eae26047 --- /dev/null +++ b/scripts/ceruleanhouse2.asm @@ -0,0 +1,109 @@ +CeruleanHouse2Script: ; 74e09 (1d:4e09) + ld a, $1 + ld [$cf0c], a + dec a + ld [$cc3c], a + ret + +CeruleanHouse2TextPointers: ; 74e13 (1d:4e13) + dw CeruleanHouse2Text1 + +CeruleanHouse2Text1: ; 74e15 (1d:4e15) + db $8 + ld hl, CeruleanHouse2Text_74e77 + call PrintText + xor a + ld [wCurrentMenuItem], a + ld [wListScrollOffset], a +.asm_74e23 + ld hl, CeruleanHouse2Text_74e7c + call PrintText + ld hl, BadgeItemList + call LoadItemList + ld hl, $cf7b + ld a, l + ld [$cf8b], a + ld a, h + ld [$cf8c], a + xor a + ld [$cf93], a + ld [$cc35], a + ld a, SPECIALLISTMENU + ld [wListMenuID], a + call DisplayListMenuID + jr c, .asm_74e60 ; 0x74e49 $15 + ld hl, TextPointers_74e86 + ld a, [$cf91] + sub $15 + add a + ld d, $0 + ld e, a + add hl, de + ld a, [hli] + ld h, [hl] + ld l, a + call PrintText + jr .asm_74e23 ; 0x74e5e $c3 +.asm_74e60 + xor a + ld [wListScrollOffset], a + ld hl, CeruleanHouse2Text_74e81 + call PrintText + jp TextScriptEnd + +BadgeItemList: ; 74e6d (1d:4e6d) + db $8,BOULDERBADGE,CASCADEBADGE,THUNDERBADGE,RAINBOWBADGE,SOULBADGE,MARSHBADGE,VOLCANOBADGE,EARTHBADGE,$FF + +CeruleanHouse2Text_74e77: ; 74e77 (1d:4e77) + TX_FAR _CeruleanHouse2Text_74e77 + db "@" + +CeruleanHouse2Text_74e7c: ; 74e7c (1d:4e7c) + TX_FAR _CeruleanHouse2Text_74e7c + db "@" + +CeruleanHouse2Text_74e81: ; 74e81 (1d:4e81) + TX_FAR _CeruleanHouse2Text_74e81 + db "@" + +TextPointers_74e86: ; 74e86 (1d:4e86) + dw CeruleanHouse2Text_74e96 + dw CeruleanHouse2Text_74e9b + dw CeruleanHouse2Text_74ea0 + dw CeruleanHouse2Text_74ea5 + dw CeruleanHouse2Text_74eaa + dw CeruleanHouse2Text_74eaf + dw CeruleanHouse2Text_74eb4 + dw CeruleanHouse2Text_74eb9 + +CeruleanHouse2Text_74e96: ; 74e96 (1d:4e96) + TX_FAR _CeruleanHouse2Text_74e96 + db "@" + +CeruleanHouse2Text_74e9b: ; 74e9b (1d:4e9b) + TX_FAR _CeruleanHouse2Text_74e9b + db "@" + +CeruleanHouse2Text_74ea0: ; 74ea0 (1d:4ea0) + TX_FAR _CeruleanHouse2Text_74ea0 + db "@" + +CeruleanHouse2Text_74ea5: ; 74ea5 (1d:4ea5) + TX_FAR _CeruleanHouse2Text_74ea5 + db "@" + +CeruleanHouse2Text_74eaa: ; 74eaa (1d:4eaa) + TX_FAR _CeruleanHouse2Text_74eaa + db "@" + +CeruleanHouse2Text_74eaf: ; 74eaf (1d:4eaf) + TX_FAR _CeruleanHouse2Text_74eaf + db "@" + +CeruleanHouse2Text_74eb4: ; 74eb4 (1d:4eb4) + TX_FAR _CeruleanHouse2Text_74eb4 + db "@" + +CeruleanHouse2Text_74eb9: ; 74eb9 (1d:4eb9) + TX_FAR _CeruleanHouse2Text_74eb9 + db "@" diff --git a/scripts/ceruleanhousetrashed.asm b/scripts/ceruleanhousetrashed.asm new file mode 100755 index 00000000..1bb60564 --- /dev/null +++ b/scripts/ceruleanhousetrashed.asm @@ -0,0 +1,40 @@ +CeruleanHouseTrashedScript: ; 1d685 (7:5685) + call EnableAutoTextBoxDrawing + ret + +CeruleanHouseTrashedTextPointers: ; 1d689 (7:5689) + dw CeruleanHouseTrashedText1 + dw CeruleanHouseTrashedText2 + dw CeruleanHouseTrashedText3 + +CeruleanHouseTrashedText1: ; 1d68f (7:568f) + db $08 ; asm + ld b, $e4 + ld a, $1c + call Predef + and b + jr z, .asm_f8734 ; 0x1d698 + ld hl, CeruleanHouseTrashedText_1d6b0 + call PrintText + jr .asm_8dfe9 ; 0x1d6a0 +.asm_f8734 ; 0x1d6a2 + ld hl, CeruleanHouseTrashedText_1d6ab + call PrintText +.asm_8dfe9 ; 0x1d6a8 + jp TextScriptEnd + +CeruleanHouseTrashedText_1d6ab: ; 1d6ab (7:56ab) + TX_FAR _CeruleanTrashedText_1d6ab + db "@" + +CeruleanHouseTrashedText_1d6b0: ; 1d6b0 (7:56b0) + TX_FAR _CeruleanTrashedText_1d6b0 + db "@" + +CeruleanHouseTrashedText2: ; 1d6b5 (7:56b5) + TX_FAR _CeruleanHouseTrashedText2 + db "@" + +CeruleanHouseTrashedText3: ; 1d6ba (7:56ba) + TX_FAR _CeruleanHouseTrashedText3 + db "@" diff --git a/scripts/ceruleanmart.asm b/scripts/ceruleanmart.asm new file mode 100755 index 00000000..7aea6d47 --- /dev/null +++ b/scripts/ceruleanmart.asm @@ -0,0 +1,15 @@ +CeruleanMartScript: ; 5c895 (17:4895) + jp EnableAutoTextBoxDrawing + +CeruleanMartTextPointers: ; 5c898 (17:4898) + dw CeruleanMartText1 + dw CeruleanMartText2 + dw CeruleanMartText3 + +CeruleanMartText2: ; 5c89e (17:489e) + TX_FAR _CeruleanMartText2 + db "@" + +CeruleanMartText3: ; 5c8a3 (17:48a3) + TX_FAR _CeruleanMartText3 + db "@" diff --git a/scripts/ceruleanpokecenter.asm b/scripts/ceruleanpokecenter.asm new file mode 100755 index 00000000..b6f88b41 --- /dev/null +++ b/scripts/ceruleanpokecenter.asm @@ -0,0 +1,23 @@ +CeruleanPokecenterScript: ; 5c645 (17:4645) + call Func_22fa + jp EnableAutoTextBoxDrawing + +CeruleanPokecenterTextPointers: ; 5c64b (17:464b) + dw CeruleanPokecenterText1 + dw CeruleanPokecenterText2 + dw CeruleanPokecenterText3 + dw CeruleanPokecenterText4 + +CeruleanPokecenterText4: ; 5c653 (17:4653) + db $f6 + +CeruleanPokecenterText1: ; 5c654 (17:4654) + db $ff + +CeruleanPokecenterText2: ; 5c655 (17:4655) + TX_FAR _CeruleanPokecenterText1 + db "@" + +CeruleanPokecenterText3: ; 5c65a (17:465a) + TX_FAR _CeruleanPokecenterText3 + db "@" diff --git a/scripts/cinnabargym.asm b/scripts/cinnabargym.asm new file mode 100755 index 00000000..1d66a1bf --- /dev/null +++ b/scripts/cinnabargym.asm @@ -0,0 +1,483 @@ +CinnabarGymScript: ; 7574a (1d:574a) + call CinnabarGymScript_75759 + call EnableAutoTextBoxDrawing + ld hl, CinnabarGymScriptPointers + ld a, [W_CINNABARGYMCURSCRIPT] + jp CallFunctionInTable + +CinnabarGymScript_75759: ; 75759 (1d:5759) + ld hl, $D126 + bit 6, [hl] + res 6, [hl] + push hl + call nz, CinnabarGymScript_75772 + pop hl + bit 5, [hl] + res 5, [hl] + call nz, Func_3ead + ld hl, $D79B + res 7, [hl] + ret +CinnabarGymScript_75772: ; 75772 (1d:5772) + ld hl, Gym7CityName + ld de, Gym7LeaderName + jp LoadGymLeaderAndCityName + +Gym7CityName: ; 7577b (1d:577b) + db "CINNABAR ISLAND@" +Gym7LeaderName: ; 7578b (1d:578b) + db "BLAINE@" + +CinnabarGymScript_75792: ; 75792 (1d:5792) + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [W_CINNABARGYMCURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ld [$da38], a + ret + +CinnabarGymScript_757a0: ; 757a0 (1d:57a0) + ld a, [H_DOWNARROWBLINKCNT2] ; $ff8c + ld [wTrainerHeaderFlagBit], a + ret + +CinnabarGymScriptPointers: ; 757a6 (1d:57a6) + dw CinnabarGymScript0 + dw CinnabarGymScript1 + dw CinnabarGymScript2 + dw CinnabarGymScript3 + +CinnabarGymScript0: ; 757ae (1d:57ae) + ld a, [$da38] + and a + ret z + ld [$ff8c], a + cp $4 + jr nz, .asm_757c3 ; 0x757b7 $a + ld a, $4 + ld [$d528], a + ld de, MovementData_757d7 + jr .asm_757cb ; 0x757c1 $8 +.asm_757c3 + ld de, MovementData_757da + ld a, $1 + ld [$d528], a +.asm_757cb + call MoveSprite + ld a, $1 + ld [W_CINNABARGYMCURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +MovementData_757d7: ; 757d7 (1d:57d7) + db $80,$40,$FF + +MovementData_757da: ; 757da (1d:57da) + db $80,$FF + +CinnabarGymScript1: ; 757dc (1d:57dc) + ld a, [$d730] + bit 0, a + ret nz + xor a + ld [wJoypadForbiddenButtonsMask], a + ld a, [$da38] + ld [wTrainerHeaderFlagBit], a + ld [$ff8c], a + jp DisplayTextID + +CinnabarGymScript_757f1: ; 757f1 (1d:57f1) + ld a, $10 + jp Predef ; indirect jump to HandleBitArray (f666 (3:7666)) + +CinnabarGymScript2: ; 757f6 (1d:57f6) + ld a, [$d057] + cp $ff + jp z, CinnabarGymScript_75792 + ld a, [wTrainerHeaderFlagBit] + ld [$ffdb], a + ld c, a + ld b, $2 + ld hl, $d79a + call CinnabarGymScript_757f1 + ld a, c + and a + jr nz, .asm_7581b ; 0x7580e $b + call WaitForSoundToFinish + ld a, (SFX_02_57 - SFX_Headers_02) / 3 + call PlaySound + call WaitForSoundToFinish +.asm_7581b + ld a, [wTrainerHeaderFlagBit] + ld [$ffdb], a + ld c, a + ld b, $1 + ld hl, $d79a + call CinnabarGymScript_757f1 + ld a, [wTrainerHeaderFlagBit] + sub $2 + ld c, a + ld b, $1 + ld hl, $d79c + call CinnabarGymScript_757f1 + call Func_3ead + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [$da38], a + ld a, $0 + ld [W_CINNABARGYMCURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +CinnabarGymScript3: ; 7584a (1d:584a) + ld a, [$d057] + cp $ff + jp z, CinnabarGymScript_75792 + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a +CinnabarGymScript3_75857: ; 75857 (1d:5857) + ld a, $a + ld [$ff8c], a + call DisplayTextID + ld hl, $d79a + set 1, [hl] + ld bc, (TM_38 << 8) | 1 + call GiveItem + jr nc, .BagFull + ld a, $b + ld [$ff8c], a + call DisplayTextID + ld hl, $d79a + set 0, [hl] + jr .asm_75880 ; 0x75877 $7 +.BagFull + ld a, $c + ld [$ff8c], a + call DisplayTextID +.asm_75880 + ld hl, W_OBTAINEDBADGES + set 6, [hl] + ld hl, $d72a + set 6, [hl] + + ; deactivate gym trainers + ld a, [$d79a] + or %11111100 + ld [$d79a], a + ld hl, $d79b + set 0, [hl] + + ld hl, $d126 + set 5, [hl] + + jp CinnabarGymScript_75792 + +CinnabarGymTextPointers: ; 7589f (1d:589f) + dw CinnabarGymText1 + dw CinnabarGymText2 + dw CinnabarGymText3 + dw CinnabarGymText4 + dw CinnabarGymText5 + dw CinnabarGymText6 + dw CinnabarGymText7 + dw CinnabarGymText8 + dw CinnabarGymText9 + dw BlaineBadgeText + dw ReceivedTM38Text + dw TM38NoRoomText + +CinnabarGymScript_758b7: ; 758b7 (1d:58b7) + ld a, [H_DOWNARROWBLINKCNT2] ; $ff8c + ld [$cf13], a + call EngageMapTrainer + call InitBattleEnemyParameters + ld hl, $d72d + set 6, [hl] + set 7, [hl] + ld a, [$cf13] + cp $1 + jr z, .asm_758d4 + ld a, $2 + jr .asm_758d6 +.asm_758d4 + ld a, $3 +.asm_758d6 + ld [W_CINNABARGYMCURSCRIPT], a + ld [W_CURMAPSCRIPT], a + jp TextScriptEnd + +CinnabarGymText1: ; 758df (1d:58df) + db $8 + ld a, [$d79a] + bit 1, a + jr z, .asm_d9332 ; 0x758e5 $16 + bit 0, a + jr nz, .asm_3012f ; 0x758e9 $9 + call z, CinnabarGymScript3_75857 + call DisableWaitingAfterTextDisplay + jp TextScriptEnd +.asm_3012f ; 0x758f4 + ld hl, BlaineFireBlastText + call PrintText + jp TextScriptEnd +.asm_d9332 ; 0x758fd + ld hl, BlaineBattleText + call PrintText + ld hl, BlaineEndBattleText + ld de, BlaineEndBattleText + call PreBattleSaveRegisters + ld a, $7 + ld [$d05c], a + jp CinnabarGymScript_758b7 + +BlaineBattleText: ; 75914 (1d:5914) + TX_FAR _BlaineBattleText + db "@" + +BlaineEndBattleText: ; 75919 (1d:5919) + TX_FAR _BlaineEndBattleText + db $11 + db $d + db "@" + +BlaineFireBlastText: ; 75920 (1d:5920) + TX_FAR _BlaineFireBlastText + db "@" + +BlaineBadgeText: ; 75925 (1d:5925) + TX_FAR _BlaineBadgeText + db "@" + +ReceivedTM38Text: ; 7592a (1d:592a) + TX_FAR _ReceivedTM38Text + db $0B + TX_FAR _TM38ExplanationText + db "@" + +TM38NoRoomText: ; 75934 (1d:5934) + TX_FAR _TM38NoRoomText + db "@" + +CinnabarGymText2: ; 75939 (1d:5939) + db $08 ; asm + call CinnabarGymScript_757a0 + ld a, [$d79a] + bit 2, a + jr nz, .asm_46bb4 ; 0x75942 + ld hl, CinnabarGymText_7595f + call PrintText + ld hl, CinnabarGymText_75964 + ld de, CinnabarGymText_75964 ; $5964 XXX + call PreBattleSaveRegisters + jp CinnabarGymScript_758b7 +.asm_46bb4 ; 0x75956 + ld hl, CinnabarGymText_75969 + call PrintText + jp TextScriptEnd + +CinnabarGymText_7595f: ; 7595f (1d:595f) + TX_FAR _CinnabarGymText_7595f + db "@" + +CinnabarGymText_75964: ; 75964 (1d:5964) + TX_FAR _CinnabarGymText_75964 + db "@" + +CinnabarGymText_75969: ; 75969 (1d:5969) + TX_FAR _CinnabarGymText_75969 + db "@" + +CinnabarGymText3: ; 7596e (1d:596e) + db $08 ; asm + call CinnabarGymScript_757a0 + ld a, [$d79a] + bit 3, a + jr nz, .asm_4b406 ; 0x75977 + ld hl, CinnabarGymText_75994 + call PrintText + ld hl, CinnabarGymText_75999 + ld de, CinnabarGymText_75999 ; $5999 XXX + call PreBattleSaveRegisters + jp CinnabarGymScript_758b7 +.asm_4b406 ; 0x7598b + ld hl, CinnabarGymText_7599e + call PrintText + jp TextScriptEnd + +CinnabarGymText_75994: ; 75994 (1d:5994) + TX_FAR _CinnabarGymText_75994 + db "@" + +CinnabarGymText_75999: ; 75999 (1d:5999) + TX_FAR _CinnabarGymText_75999 + db "@" + +CinnabarGymText_7599e: ; 7599e (1d:599e) + TX_FAR _CinnabarGymText_7599e + db "@" + +CinnabarGymText4: ; 759a3 (1d:59a3) + db $08 ; asm + call CinnabarGymScript_757a0 + ld a, [$d79a] + bit 4, a + jr nz, .asm_c0673 ; 0x759ac + ld hl, CinnabarGymText_759c9 + call PrintText + ld hl, CinnabarGymText_759ce + ld de, CinnabarGymText_759ce ; $59ce XXX + call PreBattleSaveRegisters + jp CinnabarGymScript_758b7 +.asm_c0673 ; 0x759c0 + ld hl, CinnabarGymText_759d3 + call PrintText + jp TextScriptEnd + +CinnabarGymText_759c9: ; 759c9 (1d:59c9) + TX_FAR _CinnabarGymText_759c9 + db "@" + +CinnabarGymText_759ce: ; 759ce (1d:59ce) + TX_FAR _CinnabarGymText_759ce + db "@" + +CinnabarGymText_759d3: ; 759d3 (1d:59d3) + TX_FAR _CinnabarGymText_759d3 + db "@" + +CinnabarGymText5: ; 759d8 (1d:59d8) + db $08 ; asm + call CinnabarGymScript_757a0 + ld a, [$d79a] + bit 5, a + jr nz, .asm_5cfd7 ; 0x759e1 + ld hl, CinnabarGymText_759fe + call PrintText + ld hl, CinnabarGymText_75a03 + ld de, CinnabarGymText_75a03 ; $5a03 XXX + call PreBattleSaveRegisters + jp CinnabarGymScript_758b7 +.asm_5cfd7 ; 0x759f5 + ld hl, CinnabarGymText_75a08 + call PrintText + jp TextScriptEnd + +CinnabarGymText_759fe: ; 759fe (1d:59fe) + TX_FAR _CinnabarGymText_759fe + db "@" + +CinnabarGymText_75a03: ; 75a03 (1d:5a03) + TX_FAR _CinnabarGymText_75a03 + db "@" + +CinnabarGymText_75a08: ; 75a08 (1d:5a08) + TX_FAR _CinnabarGymText_75a08 + db "@" + +CinnabarGymText6: ; 75a0d (1d:5a0d) + db $08 ; asm + call CinnabarGymScript_757a0 + ld a, [$d79a] + bit 6, a + jr nz, .asm_776b4 ; 0x75a16 + ld hl, CinnabarGymText_75a33 + call PrintText + ld hl, CinnabarGymText_75a38 + ld de, CinnabarGymText_75a38 + call PreBattleSaveRegisters + jp CinnabarGymScript_758b7 +.asm_776b4 ; 0x75a2a + ld hl, CinnabarGymText_75a3d + call PrintText + jp TextScriptEnd + +CinnabarGymText_75a33: ; 75a33 (1d:5a33) + TX_FAR _CinnabarGymText_75a33 + db "@" + +CinnabarGymText_75a38: ; 75a38 (1d:5a38) + TX_FAR _CinnabarGymText_75a38 + db "@" + +CinnabarGymText_75a3d: ; 75a3d (1d:5a3d) + TX_FAR _CinnabarGymText_75a3d + db "@" + +CinnabarGymText7: ; 75a42 (1d:5a42) + db $08 ; asm + call CinnabarGymScript_757a0 + ld a, [$d79a] + bit 7, a + jr nz, .asm_2f755 ; 0x75a4b + ld hl, CinnabarGymText_75a68 + call PrintText + ld hl, CinnabarGymText_75a6d + ld de, CinnabarGymText_75a6d + call PreBattleSaveRegisters + jp CinnabarGymScript_758b7 +.asm_2f755 ; 0x75a5f + ld hl, CinnabarGymText_75a72 + call PrintText + jp TextScriptEnd + +CinnabarGymText_75a68: ; 75a68 (1d:5a68) + TX_FAR _CinnabarGymText_75a68 + db "@" + +CinnabarGymText_75a6d: ; 75a6d (1d:5a6d) + TX_FAR _CinnabarGymText_75a6d + db "@" + +CinnabarGymText_75a72: ; 75a72 (1d:5a72) + TX_FAR _CinnabarGymText_75a72 + db "@" + +CinnabarGymText8: ; 75a77 (1d:5a77) + db $08 ; asm + call CinnabarGymScript_757a0 + ld a, [$d79b] + bit 0, a + jr nz, .asm_d87be ; 0x75a80 + ld hl, CinnabarGymText_75a9d + call PrintText + ld hl, CinnabarGymText_75aa2 + ld de, CinnabarGymText_75aa2 ; $5aa2 XXX + call PreBattleSaveRegisters + jp CinnabarGymScript_758b7 +.asm_d87be ; 0x75a94 + ld hl, CinnabarGymText_75aa7 + call PrintText + jp TextScriptEnd + +CinnabarGymText_75a9d: ; 75a9d (1d:5a9d) + TX_FAR _CinnabarGymText_75a9d + db "@" + +CinnabarGymText_75aa2: ; 75aa2 (1d:5aa2) + TX_FAR _CinnabarGymText_75aa2 + db "@" + +CinnabarGymText_75aa7: ; 75aa7 (1d:5aa7) + TX_FAR _CinnabarGymText_75aa7 + db "@" + +CinnabarGymText9: ; 75aac (1d:5aac) + db $08 ; asm + ld a, [$d79a] + bit 1, a + jr nz, .asm_627d9 ; 0x75ab2 + ld hl, CinnabarGymText_75ac2 + jr .asm_0b11d ; 0x75ab7 +.asm_627d9 ; 0x75ab9 + ld hl, CinnabarGymText_75ac7 +.asm_0b11d ; 0x75abc + call PrintText + jp TextScriptEnd + +CinnabarGymText_75ac2: ; 75ac2 (1d:5ac2) + TX_FAR _CinnabarGymText_75ac2 + db "@" + +CinnabarGymText_75ac7: ; 75ac7 (1d:5ac7) + TX_FAR _CinnabarGymText_75ac7 + db "@" diff --git a/scripts/cinnabarisland.asm b/scripts/cinnabarisland.asm new file mode 100755 index 00000000..ab77926a --- /dev/null +++ b/scripts/cinnabarisland.asm @@ -0,0 +1,87 @@ +CinnabarIslandScript: ; 1ca19 (7:4a19) + call EnableAutoTextBoxDrawing + ld hl, $d126 + set 5, [hl] + ld hl, $d796 + res 0, [hl] + ld hl, $d7a3 + res 1, [hl] + ld hl, CinnabarIslandScriptPointers + ld a, [W_CINNABARISLANDCURSCRIPT] + jp CallFunctionInTable + +CinnabarIslandScriptPointers: ; 1ca34 (7:4a34) + dw CinnabarIslandScript0 + dw CinnabarIslandScript1 + +CinnabarIslandScript0: ; 1ca38 (7:4a38) + ld b, SECRET_KEY + call IsItemInBag + ret nz + ld a, [W_YCOORD] + cp $4 + ret nz + ld a, [W_XCOORD] + cp $12 + ret nz + ld a, $8 + ld [$d528], a + ld a, $8 + ld [$ff8c], a + call DisplayTextID + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + ld a, $1 + ld [$cd38], a + ld a, $80 + ld [$ccd3], a + call Func_3486 + xor a + ld [$c109], a + ld [wJoypadForbiddenButtonsMask], a + ld a, $1 + ld [W_CINNABARISLANDCURSCRIPT], a + ret + +CinnabarIslandScript1: ; 1ca73 (7:4a73) + ld a, [$cd38] + and a + ret nz + call Delay3 + ld a, $0 + ld [W_CINNABARISLANDCURSCRIPT], a + ret + +CinnabarIslandTextPointers: ; 1ca81 (7:4a81) + dw CinnabarIslandText1 + dw CinnabarIslandText2 + dw CinnabarIslandText3 + dw MartSignText + dw PokeCenterSignText + dw CinnabarIslandText6 + dw CinnabarIslandText7 + dw CinnabarIslandText8 + +CinnabarIslandText8: ; 1ca91 (7:4a91) + TX_FAR _CinnabarIslandText8 + db "@" + +CinnabarIslandText1: ; 1ca96 (7:4a96) + TX_FAR _CinnabarIslandText1 + db "@" + +CinnabarIslandText2: ; 1ca9b (7:4a9b) + TX_FAR _CinnabarIslandText2 + db "@" + +CinnabarIslandText3: ; 1caa0 (7:4aa0) + TX_FAR _CinnabarIslandText3 + db "@" + +CinnabarIslandText6: ; 1caa5 (7:4aa5) + TX_FAR _CinnabarIslandText6 + db "@" + +CinnabarIslandText7: ; 1caaa (7:4aaa) + TX_FAR _CinnabarIslandText7 + db "@" diff --git a/scripts/cinnabarmart.asm b/scripts/cinnabarmart.asm new file mode 100755 index 00000000..2abd7b67 --- /dev/null +++ b/scripts/cinnabarmart.asm @@ -0,0 +1,15 @@ +CinnabarMartScript: ; 75e7e (1d:5e7e) + jp EnableAutoTextBoxDrawing + +CinnabarMartTextPointers: ; 75e81 (1d:5e81) + dw CinnabarMartText1 + dw CinnabarMartText2 + dw CinnabarMartText3 + +CinnabarMartText2: ; 75e87 (1d:5e87) + TX_FAR _CinnabarMartText2 + db "@" + +CinnabarMartText3: ; 75e8c (1d:5e8c) + TX_FAR _CinnabarMartText3 + db "@" diff --git a/scripts/cinnabarpokecenter.asm b/scripts/cinnabarpokecenter.asm new file mode 100755 index 00000000..a2a41592 --- /dev/null +++ b/scripts/cinnabarpokecenter.asm @@ -0,0 +1,23 @@ +CinnabarPokecenterScript: ; 75e2c (1d:5e2c) + call Func_22fa + jp EnableAutoTextBoxDrawing + +CinnabarPokecenterTextPointers: ; 75e32 (1d:5e32) + dw CinnabarPokecenterText1 + dw CinnabarPokecenterText2 + dw CinnabarPokecenterText3 + dw CinnabarPokecenterText4 + +CinnabarPokecenterText1: ; 75e3a (1d:5e3a) + db $ff + +CinnabarPokecenterText2: ; 75e3b (1d:5e3b) + TX_FAR _CinnabarPokecenterText1 + db "@" + +CinnabarPokecenterText3: ; 75e40 (1d:5e40) + TX_FAR _CinnabarPokecenterText3 + db "@" + +CinnabarPokecenterText4: ; 75e45 (1d:5e45) + db $f6 diff --git a/scripts/copycatshouse1f.asm b/scripts/copycatshouse1f.asm new file mode 100755 index 00000000..230a3ca3 --- /dev/null +++ b/scripts/copycatshouse1f.asm @@ -0,0 +1,22 @@ +CopycatsHouse1FScript: ; 75ec3 (1d:5ec3) + jp EnableAutoTextBoxDrawing + +CopycatsHouse1FTextPointers: ; 75ec6 (1d:5ec6) + dw CopycatsHouse1FText1 + dw CopycatsHouse1FText2 + dw CopycatsHouse1FText3 + +CopycatsHouse1FText1: ; 75ecc (1d:5ecc) + TX_FAR _CopycatsHouse1FText1 + db "@" + +CopycatsHouse1FText2: ; 75ed1 (1d:5ed1) + TX_FAR _CopycatsHouse1FText2 + db "@" + +CopycatsHouse1FText3: ; 75ed6 (1d:5ed6) + TX_FAR _CopycatsHouse1FText3 + db $8 + ld a, CHANSEY + call PlayCry + jp TextScriptEnd diff --git a/scripts/copycatshouse2f.asm b/scripts/copycatshouse2f.asm new file mode 100755 index 00000000..afe589da --- /dev/null +++ b/scripts/copycatshouse2f.asm @@ -0,0 +1,102 @@ +CopycatsHouse2FScript: ; 5cc71 (17:4c71) + jp EnableAutoTextBoxDrawing + +CopycatsHouse2FTextPointers: ; 5cc74 (17:4c74) + dw CopycatsHouse2FText1 + dw CopycatsHouse2FText2 + dw CopycatsHouse2FText3 + dw CopycatsHouse2FText4 + dw CopycatsHouse2FText5 + dw CopycatsHouse2FText6 + dw CopycatsHouse2FText7 + +CopycatsHouse2FText1: ; 5cc82 (17:4c82) + db $08 ; asm + ld a, [$d7af] + bit 0, a + jr nz, .asm_7ccf3 ; 0x5cc88 + ld a, $1 + ld [$cc3c], a + ld hl, CopycatsHouse2FText_5ccd4 + call PrintText + ld b, POKE_DOLL + call IsItemInBag + jr z, .asm_62ecd ; 0x5cc9a + ld hl, TM31PreReceiveText + call PrintText + ld bc, (TM_31 << 8) | 1 + call GiveItem + jr nc, .BagFull + ld hl, ReceivedTM31Text + call PrintText + ld a, POKE_DOLL + ldh [$db], a + callba RemoveItemByID + ld hl, $d7af + set 0, [hl] + jr .asm_62ecd ; 0x5ccc1 +.BagFull + ld hl, TM31NoRoomText + call PrintText + jr .asm_62ecd ; 0x5ccc9 +.asm_7ccf3 ; 0x5cccb + ld hl, TM31ExplanationText2 + call PrintText +.asm_62ecd ; 0x5ccd1 + jp TextScriptEnd + +CopycatsHouse2FText_5ccd4: ; 5ccd4 (17:4cd4) + TX_FAR _CopycatsHouse2FText_5ccd4 + db "@" + +TM31PreReceiveText: ; 5ccd9 (17:4cd9) + TX_FAR _TM31PreReceiveText + db "@" + +ReceivedTM31Text: ; 5ccde (17:4cde) + TX_FAR _ReceivedTM31Text + db $0B +TM31ExplanationText1: ; 5cce3 (17:4ce3) + TX_FAR _TM31ExplanationText1 + db $d, "@" + +TM31ExplanationText2: ; 5cce9 (17:4ce9) + TX_FAR _TM31ExplanationText2 + db "@" + +TM31NoRoomText: ; 5ccee (17:4cee) + TX_FAR _TM31NoRoomText + db $d, "@" + +CopycatsHouse2FText2: ; 5ccf4 (17:4cf4) + TX_FAR _CopycatsHouse2FText2 + db "@" + +CopycatsHouse2FText5: ; 5ccf9 (17:4cf9) +CopycatsHouse2FText4: ; 5ccf9 (17:4cf9) +CopycatsHouse2FText3: ; 5ccf9 (17:4cf9) + TX_FAR _CopycatsHouse2FText3 + db "@" + +CopycatsHouse2FText6: ; 5ccfe (17:4cfe) + TX_FAR _CopycatsHouse2FText6 + db "@" + +CopycatsHouse2FText7: ; 5cd03 (17:4d03) + db $08 ; asm + ld a, [$c109] + cp $4 + ld hl, CopycatsHouse2FText_5cd1c + jr nz, .asm_399a4 ; 0x5cd0c + ld hl, CopycatsHouse2FText_5cd17 +.asm_399a4 ; 0x5cd11 + call PrintText + jp TextScriptEnd + +CopycatsHouse2FText_5cd17: ; 5cd17 (17:4d17) + TX_FAR _CopycatsHouse2FText_5cd17 + db "@" + +CopycatsHouse2FText_5cd1c: ; 5cd1c (17:4d1c) + TX_FAR _CopycatsHouse2FText_5cd1c + db "@" diff --git a/scripts/daycarem.asm b/scripts/daycarem.asm new file mode 100755 index 00000000..706a7bbf --- /dev/null +++ b/scripts/daycarem.asm @@ -0,0 +1,268 @@ +DayCareMScript: ; 5624f (15:624f) + jp EnableAutoTextBoxDrawing + +DayCareMTextPointers: ; 56252 (15:6252) + dw DayCareMText1 + +DayCareMText1: ; 56254 (15:6254) + db $8 + call SaveScreenTilesToBuffer2 + ld a, [W_DAYCARE_IN_USE] + and a + jp nz, DayCareMScript_562e1 + ld hl, DayCareMText_5640f + call PrintText + call YesNoChoice + ld a, [$cc26] + and a + ld hl, DayCareMText_5643b + jp nz, DayCareMScript_56409 + ld a, [$d163] + dec a + ld hl, DayCareMText_56445 + jp z, DayCareMScript_56409 + ld hl, DayCareMText_56414 + call PrintText + xor a + ld [$cfcb], a + ld [$d07d], a + ld [$cc35], a + call DisplayPartyMenu + push af + call GBPalWhiteOutWithDelay3 + call Func_3dbe + call LoadGBPal + pop af + ld hl, DayCareMText_56437 + jp c, DayCareMScript_56409 + callab Func_2171b + ld hl, DayCareMText_5644a + jp c, DayCareMScript_56409 + xor a + ld [$cc2b], a + ld a, [wWhichPokemon] + ld hl, $d2b5 + call GetPartyMonName + ld hl, DayCareMText_56419 + call PrintText + ld a, $1 + ld [W_DAYCARE_IN_USE], a + ld a, $3 + ld [$cf95], a + call Func_3a68 + xor a + ld [$cf95], a + call RemovePokemon + ld a, [$cf91] + call PlayCry + ld hl, DayCareMText_5641e + jp DayCareMScript_56409 + +DayCareMScript_562e1: ; 562e1 (15:62e1) + xor a + ld hl, W_DAYCAREMONNAME + call GetPartyMonName + ld a, $3 + ld [$cc49], a + call LoadMonData + callab Func_58f43 + ld a, d + cp $64 + jr c, .asm_56315 + ld d, $64 + callab CalcExperience + ld hl, $da6d + ld a, [H_NUMTOPRINT] + ld [hli], a + ld a, [$ff97] + ld [hli], a + ld a, [$ff98] + ld [hl], a + ld d, $64 + +.asm_56315 + xor a + ld [wTrainerEngageDistance], a + ld hl, $da62 + ld a, [hl] + ld [wTrainerSpriteOffset], a + cp d + ld [hl], d + ld hl, DayCareMText_56432 + jr z, .asm_56333 + ld a, [wTrainerSpriteOffset] + ld b, a + ld a, d + sub b + ld [wTrainerEngageDistance], a + ld hl, DayCareMText_56423 + +.asm_56333 + call PrintText + ld a, [W_NUMINPARTY] + cp $6 + ld hl, DayCareMText_56440 + jp z, .asm_56403 + ld de, wTrainerFacingDirection + xor a + ld [de], a + inc de + ld [de], a + ld hl, wTrainerScreenX + ld a, $1 + ld [hli], a + ld [hl], $0 + ld a, [wTrainerEngageDistance] + inc a + ld b, a + ld c, $2 +.asm_56357 + push hl + push de + push bc + ld a, $b + call Predef + pop bc + pop de + pop hl + dec b + jr nz, .asm_56357 + ld hl, DayCareMText_56428 + call PrintText + ld a, $13 + ld [$d125], a + call DisplayTextBoxID + call YesNoChoice + ld hl, DayCareMText_56437 + ld a, [wCurrentMenuItem] + and a + jp nz, .asm_56403 + ld hl, wTrainerFacingDirection + ld [$ff9f], a + ld a, [hli] + ld [$ffa0], a + ld a, [hl] + ld [$ffa1], a + call HasEnoughMoney + jr nc, .asm_56396 + ld hl, DayCareMText_56454 + jp .asm_56403 + +.asm_56396 + xor a + ld [W_DAYCARE_IN_USE], a + ld hl, wTrainerEngageDistance + ld [hli], a + inc hl + ld de, $d349 + ld c, $3 + ld a, $c + call Predef + ld a, (SFX_02_5a - SFX_Headers_02) / 3 + call PlaySoundWaitForCurrent + ld a, $13 + ld [$d125], a + call DisplayTextBoxID + ld hl, DayCareMText_5644f + call PrintText + ld a, $2 + ld [$cf95], a + call Func_3a68 + ld a, [W_DAYCAREMONDATA] + ld [$cf91], a + ld a, [W_NUMINPARTY] + dec a + push af + ld bc, $002c + push bc + ld hl, W_PARTYMON1_MOVE1 + call AddNTimes + ld d, h + ld e, l + ld a, $1 + ld [wHPBarMaxHP], a + ld a, $3e + call Predef + pop bc + pop af + ld hl, W_PARTYMON1_HP + call AddNTimes + ld d, h + ld e, l + ld bc, $0021 + add hl, bc + ld a, [hli] + ld [de], a + inc de + ld a, [hl] + ld [de], a + ld a, [$cf91] + call PlayCry + ld hl, DayCareMText_5642d + jr DayCareMScript_56409 + +.asm_56403 + ld a, [wTrainerSpriteOffset] + ld [$da62], a + +DayCareMScript_56409: ; 56409 (15:6409) + call PrintText + jp TextScriptEnd + +DayCareMText_5640f: ; 5640f (15:640f) + TX_FAR _DayCareMText_5640f + db "@" + +DayCareMText_56414: ; 56414 (15:6414) + TX_FAR _DayCareMText_56414 + db "@" + +DayCareMText_56419: ; 56419 (15:6419) + TX_FAR _DayCareMText_56419 + db "@" + +DayCareMText_5641e: ; 5641e (15:641e) + TX_FAR _DayCareMText_5641e + db "@" + +DayCareMText_56423: ; 56423 (15:6423) + TX_FAR _DayCareMText_56423 + db "@" + +DayCareMText_56428: ; 56428 (15:6428) + TX_FAR _DayCareMText_56428 + db "@" + +DayCareMText_5642d: ; 5642d (15:642d) + TX_FAR _DayCareMText_5642d + db "@" + +DayCareMText_56432: ; 56432 (15:6432) + TX_FAR _DayCareMText_56432 + db "@" + +DayCareMText_56437: ; 56437 (15:6437) + TX_FAR _DayCareMText_56437 ; 0x8c000 +DayCareMText_5643b: ; 5643b (15:643b) + TX_FAR _DayCareMText_5643b ; 0x8c013 + db "@" + +DayCareMText_56440: ; 56440 (15:6440) + TX_FAR _DayCareMText_56440 + db "@" + +DayCareMText_56445: ; 56445 (15:6445) + TX_FAR _DayCareMText_56445 + db "@" + +DayCareMText_5644a: ; 5644a (15:644a) + TX_FAR _DayCareMText_5644a + db "@" + +DayCareMText_5644f: ; 5644f (15:644f) + TX_FAR _DayCareMText_5644f + db "@" + +DayCareMText_56454: ; 56454 (15:6454) + TX_FAR _DayCareMText_56454 + db "@" diff --git a/scripts/diglettscave.asm b/scripts/diglettscave.asm new file mode 100755 index 00000000..efbf9713 --- /dev/null +++ b/scripts/diglettscave.asm @@ -0,0 +1,5 @@ +DiglettsCaveScript: ; 61f6e (18:5f6e) + jp EnableAutoTextBoxDrawing + +DiglettsCaveTextPointers: ; 61f71 (18:5f71) + db "@" diff --git a/scripts/diglettscaveroute11.asm b/scripts/diglettscaveroute11.asm new file mode 100755 index 00000000..43e3f24e --- /dev/null +++ b/scripts/diglettscaveroute11.asm @@ -0,0 +1,12 @@ +DiglettsCaveEntranceRoute11Script: ; 1e5ba (7:65ba) + call EnableAutoTextBoxDrawing + ld a, ROUTE_11 + ld [wLastMap], a + ret + +DiglettsCaveEntranceRoute11TextPointers: ; 1e5c3 (7:65c3) + dw DiglettsCaveEntranceRoute11Text1 + +DiglettsCaveEntranceRoute11Text1: ; 1e5c5 (7:65c5) + TX_FAR _DiglettsCaveEntRoute11Text1 + db "@" diff --git a/scripts/diglettscaveroute2.asm b/scripts/diglettscaveroute2.asm new file mode 100755 index 00000000..1bee2a1c --- /dev/null +++ b/scripts/diglettscaveroute2.asm @@ -0,0 +1,11 @@ +DiglettsCaveRoute2Script: ; 1deb0 (7:5eb0) + ld a, ROUTE_2 + ld [wLastMap], a + jp EnableAutoTextBoxDrawing + +DiglettsCaveRoute2TextPointers: ; 1deb8 (7:5eb8) + dw DiglettsCaveRoute2Text1 + +DiglettsCaveRoute2Text1: ; 1deba (7:5eba) + TX_FAR _DiglettsCaveRoute2Text1 + db "@" diff --git a/scripts/fanclub.asm b/scripts/fanclub.asm new file mode 100755 index 00000000..8ea8d36d --- /dev/null +++ b/scripts/fanclub.asm @@ -0,0 +1,181 @@ +FanClubScript: ; 59b70 (16:5b70) + jp EnableAutoTextBoxDrawing + +FanClubBikeInBag: +; check if any bike paraphernalia in bag + ld a, [$d771] + bit 1, a ; got bike voucher? + ret nz + ld b, BICYCLE + call IsItemInBag + ret nz + ld b, BIKE_VOUCHER + jp IsItemInBag + +FanClubTextPointers: ; 59b84 (16:5b84) + dw FanClubText1 + dw FanClubText2 + dw FanClubText3 + dw FanClubText4 + dw FanClubText5 + dw FanClubText6 + dw FanClubText7 + dw FanClubText8 + +FanClubText1: +; pikachu fan + db $08 ; asm + ld a, [$d771] + bit 7, a + jr nz, .mineisbetter + ld hl, .normaltext + call PrintText + ld hl, $d771 + set 6, [hl] + jr .done +.mineisbetter + ld hl, .bettertext + call PrintText + ld hl, $d771 + res 7, [hl] +.done + jp TextScriptEnd + +.normaltext + TX_FAR PikachuFanText + db "@" + +.bettertext + TX_FAR PikachuFanBetterText + db "@" + +FanClubText2: +; seel fan + db $08 ; asm + ld a, [$d771] + bit 6, a + jr nz, .mineisbetter + ld hl, .normaltext + call PrintText + ld hl, $d771 + set 7, [hl] + jr .done +.mineisbetter + ld hl, .bettertext + call PrintText + ld hl, $d771 + res 6, [hl] +.done + jp TextScriptEnd + +.normaltext + TX_FAR SeelFanText + db "@" + +.bettertext + TX_FAR SeelFanBetterText + db "@" + +FanClubText3: +; pikachu + db $8 + ld hl, .text + call PrintText + ld a, PIKACHU + call PlayCry + call WaitForSoundToFinish + jp TextScriptEnd + +.text + TX_FAR FanClubPikachuText + db "@" + +FanClubText4: +; seel + db $08 ; asm + ld hl, .text + call PrintText + ld a, SEEL + call PlayCry + call WaitForSoundToFinish + jp TextScriptEnd + +.text + TX_FAR FanClubSeelText + db "@" + +FanClubText5: +; chair + db $08 ; asm + call FanClubBikeInBag + jr nz, .nothingleft + + ld hl, .meetchairtext + call PrintText + call YesNoChoice + ld a, [$cc26] + and a + jr nz, .nothanks + + ; tell the story + ld hl, .storytext + call PrintText + ld bc, (BIKE_VOUCHER << 8) | 1 + call GiveItem + jr nc, .BagFull + ld hl, .receivedvouchertext + call PrintText + ld hl, $d771 + set 1, [hl] + jr .done +.BagFull + ld hl, .bagfulltext + call PrintText + jr .done +.nothanks + ld hl, .nostorytext + call PrintText + jr .done +.nothingleft + ld hl, .finaltext + call PrintText +.done + jp TextScriptEnd + +.meetchairtext + TX_FAR FanClubMeetChairText + db "@" + +.storytext + TX_FAR FanClubChairStoryText + db "@" + +.receivedvouchertext + TX_FAR ReceivedBikeVoucherText + db $11 + TX_FAR ExplainBikeVoucherText + db "@" + +.nostorytext + TX_FAR FanClubNoStoryText + db "@" + +.finaltext + TX_FAR FanClubChairFinalText + db "@" + +.bagfulltext + TX_FAR FanClubBagFullText + db "@" + +FanClubText6: ; 59c88 (16:5c88) + TX_FAR _FanClubText6 + db "@" + +FanClubText7: ; 59c8d (16:5c8d) + TX_FAR _FanClubText7 + db "@" + +FanClubText8: ; 59c92 (16:5c92) + TX_FAR _FanClubText8 + db "@" diff --git a/scripts/fightingdojo.asm b/scripts/fightingdojo.asm new file mode 100755 index 00000000..4dc7fe7b --- /dev/null +++ b/scripts/fightingdojo.asm @@ -0,0 +1,337 @@ +FightingDojoScript: ; 5cd5d (17:4d5d) + call EnableAutoTextBoxDrawing + ld hl, FightingDojoTrainerHeaders + ld de, FightingDojoScriptPointers + ld a, [W_FIGHTINGDOJOCURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_FIGHTINGDOJOCURSCRIPT], a + ret + +FightingDojoScript_5cd70: ; 5cd70 (17:4d70) + xor a + ld [$cd6b], a + ld [$d642], a + ld [$da39], a + ret + +FightingDojoScriptPointers: ; 5cd7b (17:4d7b) + dw FightingDojoScript1 + dw Func_324c + dw EndTrainerBattle + dw FightingDojoScript3 + +FightingDojoScript1: ; 5cd83 (17:4d83) + ld a, [$d7b1] + bit 0, a + ret nz + call CheckFightingMapTrainers + ld a, [wTrainerHeaderFlagBit] + and a + ret nz + ld a, [$d7b1] + bit 1, a + ret nz + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + ld [$cf0d], a + ld a, [W_YCOORD] + cp $3 + ret nz + ld a, [W_XCOORD] + cp $4 + ret nz + ld a, $1 + ld [$cf0d], a + ld a, $1 + ld [$d528], a + ld a, $1 + ld [$ff8c], a + ld a, $8 + ld [$ff8d], a + call Func_34a6 + ld a, $1 + ld [$ff8c], a + call DisplayTextID + ret + +FightingDojoScript3: ; 5cdc6 (17:4dc6) + ld a, [$d057] + cp $ff + jp z, FightingDojoScript_5cd70 + ld a, [$cf0d] + and a + jr z, .asm_5cde4 + ld a, $1 + ld [$d528], a + ld a, $1 + ld [$ff8c], a + ld a, $8 + ld [$ff8d], a + call Func_34a6 + +.asm_5cde4 + ld a, $f0 + ld [$cd6b], a + ld a, [$d7b1] + or $3e + ld [$d7b1], a + ld a, $8 + ld [$ff8c], a + call DisplayTextID + xor a + ld [$cd6b], a + ld [$d642], a + ld [$da39], a + ret + +FightingDojoTextPointers: ; 5ce03 (17:4e03) + dw FightingDojoText1 + dw FightingDojoText2 + dw FightingDojoText3 + dw FightingDojoText4 + dw FightingDojoText5 + dw FightingDojoText6 + dw FightingDojoText7 + dw FightingDojoText8 + +FightingDojoTrainerHeaders: ; 5ce13 (17:4e13) +FightingDojoTrainerHeader0: ; 5ce13 (17:4e13) + db $2 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7b1 ; flag's byte + dw FightingDojoBattleText1 ; 0x4eac TextBeforeBattle + dw FightingDojoAfterBattleText1 ; 0x4eb6 TextAfterBattle + dw FightingDojoEndBattleText1 ; 0x4eb1 TextEndBattle + dw FightingDojoEndBattleText1 ; 0x4eb1 TextEndBattle + +FightingDojoTrainerHeader1: ; 5ce1f (17:4e1f) + db $3 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7b1 ; flag's byte + dw FightingDojoBattleText2 ; 0x4ec5 TextBeforeBattle + dw FightingDojoAfterBattleText2 ; 0x4ecf TextAfterBattle + dw FightingDojoEndBattleText2 ; 0x4eca TextEndBattle + dw FightingDojoEndBattleText2 ; 0x4eca TextEndBattle + +FightingDojoTrainerHeader2: ; 5ce2b (17:4e2b) + db $4 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7b1 ; flag's byte + dw FightingDojoBattleText3 ; 0x4ede TextBeforeBattle + dw FightingDojoAfterBattleText3 ; 0x4ee8 TextAfterBattle + dw FightingDojoEndBattleText3 ; 0x4ee3 TextEndBattle + dw FightingDojoEndBattleText3 ; 0x4ee3 TextEndBattle + +FightingDojoTrainerHeader3: ; 5ce37 (17:4e37) + db $5 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7b1 ; flag's byte + dw FightingDojoBattleText4 ; 0x4ef7 TextBeforeBattle + dw FightingDojoAfterBattleText4 ; 0x4f01 TextAfterBattle + dw FightingDojoEndBattleText4 ; 0x4efc TextEndBattle + dw FightingDojoEndBattleText4 ; 0x4efc TextEndBattle + + db $ff + +FightingDojoText1: ; 5ce44 (17:4e44) + db $08 ; asm + ld a, [$d7b1] + bit 0, a + jp nz, .continue1 + bit 1, a + jp nz, .continue2 + ld hl, FightingDojoText_5ce8e + call PrintText + ld hl, $d72d + set 6, [hl] + set 7, [hl] + ld hl, FightingDojoText_5ce93 + ld de, FightingDojoText_5ce93 + call PreBattleSaveRegisters + ldh a, [$8c] + ld [$cf13], a + call EngageMapTrainer + call InitBattleEnemyParameters + ld a, $3 + ld [W_FIGHTINGDOJOCURSCRIPT], a + ld [W_CURMAPSCRIPT], a + jr .asm_9dba4 ; 0x5ce7b +.continue1 ; 0x5ce7d + ld hl, FightingDojoText_5ce9d + call PrintText + jr .asm_9dba4 ; 0x5ce83 +.continue2 ; 0x5ce85f + ld hl, FightingDojoText8 + call PrintText +.asm_9dba4 ; 0x5ce8b + jp TextScriptEnd + +FightingDojoText_5ce8e: ; 5ce8e (17:4e8e) + TX_FAR _FightingDojoText_5ce8e + db "@" + +FightingDojoText_5ce93: ; 5ce93 (17:4e93) + TX_FAR _FightingDojoText_5ce93 + db "@" + +FightingDojoText8: ; 5ce98 (17:4e98) + TX_FAR _FightingDojoText_5ce98 + db "@" + +FightingDojoText_5ce9d: ; 5ce9d (17:4e9d) + TX_FAR _FightingDojoText_5ce9d + db "@" + +FightingDojoText2: ; 5cea2 (17:4ea2) + db $08 ; asm + ld hl, FightingDojoTrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +FightingDojoBattleText1: ; 5ceac (17:4eac) + TX_FAR _FightingDojoBattleText1 + db "@" + +FightingDojoEndBattleText1: ; 5ceb1 (17:4eb1) + TX_FAR _FightingDojoEndBattleText1 + db "@" + +FightingDojoAfterBattleText1: ; 5ceb6 (17:4eb6) + TX_FAR _FightingDojoAfterBattleText1 + db "@" + +FightingDojoText3: ; 5cebb (17:4ebb) + db $08 ; asm + ld hl, FightingDojoTrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +FightingDojoBattleText2: ; 5cec5 (17:4ec5) + TX_FAR _FightingDojoBattleText2 + db "@" + +FightingDojoEndBattleText2: ; 5ceca (17:4eca) + TX_FAR _FightingDojoEndBattleText2 + db "@" + +FightingDojoAfterBattleText2: ; 5cecf (17:4ecf) + TX_FAR _FightingDojoAfterBattleText2 + db "@" + +FightingDojoText4: ; 5ced4 (17:4ed4) + db $08 ; asm + ld hl, FightingDojoTrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +FightingDojoBattleText3: ; 5cede (17:4ede) + TX_FAR _FightingDojoBattleText3 + db "@" + +FightingDojoEndBattleText3: ; 5cee3 (17:4ee3) + TX_FAR _FightingDojoEndBattleText3 + db "@" + +FightingDojoAfterBattleText3: ; 5cee8 (17:4ee8) + TX_FAR _FightingDojoAfterBattleText3 + db "@" + +FightingDojoText5: ; 5ceed (17:4eed) + db $08 ; asm + ld hl, FightingDojoTrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +FightingDojoBattleText4: ; 5cef7 (17:4ef7) + TX_FAR _FightingDojoBattleText4 + db "@" + +FightingDojoEndBattleText4: ; 5cefc (17:4efc) + TX_FAR _FightingDojoEndBattleText4 + db "@" + +FightingDojoAfterBattleText4: ; 5cf01 (17:4f01) + TX_FAR _FightingDojoAfterBattleText4 + db "@" + +FightingDojoText6: ; 5cf06 (17:4f06) +; Hitmonlee Poké Ball + db $08 ; asm + ld a, [$d7b1] + and %11000000 + jr z, .GetMon + ld hl, OtherHitmonText + call PrintText + jr .done +.GetMon + ld a, HITMONLEE + call DisplayPokedex + ld hl, WantHitmonleeText + call PrintText + call YesNoChoice + ld a, [$cc26] + and a + jr nz, .done + ld a, [$cf91] + ld b, a + ld c, 30 + call GivePokemon + jr nc, .done + + ; once Poké Ball is taken, hide sprite + ld a, $4a + ld [$cc4d], a + ld a, $11 + call Predef + ld hl, $d7b1 + set 6, [hl] + set 0, [hl] +.done + jp TextScriptEnd + +WantHitmonleeText: ; 5cf49 (17:4f49) + TX_FAR _WantHitmonleeText + db "@" + +FightingDojoText7: ; 5cf4e (17:4f4e) +; Hitmonchan Poké Ball + db $08 ; asm + ld a, [$d7b1] + and %11000000 + jr z, .GetMon + ld hl, OtherHitmonText + call PrintText + jr .done +.GetMon + ld a, HITMONCHAN + call DisplayPokedex + ld hl, WantHitmonchanText + call PrintText + call YesNoChoice + ld a, [$cc26] + and a + jr nz, .done + ld a, [$cf91] + ld b, a + ld c,30 + call GivePokemon + jr nc, .done + ld hl, $d7b1 + set 7, [hl] + set 0, [hl] + + ; once Poké Ball is taken, hide sprite + ld a, $4b + ld [$cc4d], a + ld a, $11 + call Predef +.done + jp TextScriptEnd + +WantHitmonchanText: ; 5cf91 (17:4f91) + TX_FAR _WantHitmonchanText + db "@" + +OtherHitmonText: ; 5cf96 (17:4f96) + TX_FAR _OtherHitmonText + db "@" diff --git a/scripts/fuchsiacity.asm b/scripts/fuchsiacity.asm new file mode 100755 index 00000000..9014dffe --- /dev/null +++ b/scripts/fuchsiacity.asm @@ -0,0 +1,170 @@ +FuchsiaCityScript: ; 19a2b (6:5a2b) + jp EnableAutoTextBoxDrawing + +FuchsiaCityTextPointers: ; 19a2e (6:5a2e) + dw FuchsiaCityText1 + dw FuchsiaCityText2 + dw FuchsiaCityText3 + dw FuchsiaCityText4 + dw FuchsiaCityText5 + dw FuchsiaCityText6 + dw FuchsiaCityText7 + dw FuchsiaCityText8 + dw FuchsiaCityText9 + dw FuchsiaCityText10 + dw FuchsiaCityText11 + dw FuchsiaCityText12 + dw FuchsiaCityText13 + dw MartSignText + dw PokeCenterSignText + dw FuchsiaCityText16 + dw FuchsiaCityText17 + dw FuchsiaCityText18 + dw FuchsiaCityText19 + dw FuchsiaCityText20 + dw FuchsiaCityText21 + dw FuchsiaCityText22 + dw FuchsiaCityText23 + dw FuchsiaCityText24 + +FuchsiaCityText1: ; 19a5e (6:5a5e) + TX_FAR _FuchsiaCityText1 + db "@" + +FuchsiaCityText2: ; 19a63 (6:5a63) + TX_FAR _FuchsiaCityText2 + db "@" + +FuchsiaCityText3: ; 19a68 (6:5a68) + TX_FAR _FuchsiaCityText3 + db "@" + +FuchsiaCityText4: ; 19a6d (6:5a6d) + TX_FAR _FuchsiaCityText4 + db "@" + +FuchsiaCityText5: ; 19a72 (6:5a72) +FuchsiaCityText6: ; 19a72 (6:5a72) +FuchsiaCityText7: ; 19a72 (6:5a72) +FuchsiaCityText8: ; 19a72 (6:5a72) +FuchsiaCityText9: ; 19a72 (6:5a72) +FuchsiaCityText10: ; 19a72 (6:5a72) + TX_FAR _FuchsiaCityText5 + db "@" + +FuchsiaCityText12: ; 19a77 (6:5a77) +FuchsiaCityText11: ; 19a77 (6:5a77) + TX_FAR _FuchsiaCityText11 + db "@" + +FuchsiaCityText13: ; 19a7c (6:5a7c) + TX_FAR _FuchsiaCityText13 + db "@" + +FuchsiaCityText16: ; 19a81 (6:5a81) + TX_FAR _FuchsiaCityText16 + db "@" + +FuchsiaCityText17: ; 19a86 (6:5a86) + TX_FAR _FuchsiaCityText17 + db "@" + +FuchsiaCityText18: ; 19a8b (6:5a8b) + TX_FAR _FuchsiaCityText18 + db "@" + +FuchsiaCityText19: ; 19a90 (6:5a90) + db $08 ; asm + ld hl, FuchsiaCityChanseyText + call PrintText + ld a, CHANSEY + call DisplayPokedex + jp TextScriptEnd + +FuchsiaCityChanseyText: ; 19a9f (6:5a9f) + TX_FAR _FuchsiaCityChanseyText + db "@" + +FuchsiaCityText20: ; 19aa4 (6:5aa4) + db $08 ; asm + ld hl, FuchsiaCityVoltorbText + call PrintText + ld a, VOLTORB + call DisplayPokedex + jp TextScriptEnd + +FuchsiaCityVoltorbText: ; 19ab3 (6:5ab3) + TX_FAR _FuchsiaCityVoltorbText + db "@" + +FuchsiaCityText21: ; 19ab8 (6:5ab8) + db $08 ; asm + ld hl, FuchsiaCityKangaskhanText + call PrintText + ld a, KANGASKHAN + call DisplayPokedex + jp TextScriptEnd + +FuchsiaCityKangaskhanText: ; 19ac7 (6:5ac7) + TX_FAR _FuchsiaCityKangaskhanText + db "@" + +FuchsiaCityText22: ; 19acc (6:5acc) + db $08 ; asm + ld hl, FuchsiaCitySlowpokeText + call PrintText + ld a, SLOWPOKE + call DisplayPokedex + jp TextScriptEnd + +FuchsiaCitySlowpokeText: ; 19adb (6:5adb) + TX_FAR _FuchsiaCitySlowpokeText + db "@" + +FuchsiaCityText23: ; 19ae0 (6:5ae0) + db $08 ; asm + ld hl, FuchsiaCityLaprasText + call PrintText + ld a, LAPRAS + call DisplayPokedex + jp TextScriptEnd + +FuchsiaCityLaprasText: ; 19aef (6:5aef) + TX_FAR _FuchsiaCityLaprasText + db "@" + +FuchsiaCityText24: ; 19af4 (6:5af4) + db $08 ; asm + ld a, [$d7f6] + bit 6, a + jr nz, .asm_3b4e8 ; 0x19afa + bit 7, a + jr nz, .asm_667d5 ; 0x19afe + ld hl, FuchsiaCityText_19b2a + call PrintText + jr .asm_4343f ; 0x19b06 +.asm_3b4e8 ; 0x19b08 + ld hl, FuchsiaCityOmanyteText + call PrintText + ld a, OMANYTE + jr .asm_81556 ; 0x19b10 +.asm_667d5 ; 0x19b12 + ld hl, FuchsiaCityKabutoText + call PrintText + ld a, KABUTO +.asm_81556 ; 0x19b1a + call DisplayPokedex +.asm_4343f ; 0x19b1d + jp TextScriptEnd + +FuchsiaCityOmanyteText: ; 19b20 (6:5b20) + TX_FAR _FuchsiaCityOmanyteText + db "@" + +FuchsiaCityKabutoText: ; 19b25 (6:5b25) + TX_FAR _FuchsiaCityKabutoText + db "@" + +FuchsiaCityText_19b2a: ; 19b2a (6:5b2a) + TX_FAR _FuchsiaCityText_19b2a + db "@" diff --git a/scripts/fuchsiagym.asm b/scripts/fuchsiagym.asm new file mode 100755 index 00000000..789c2367 --- /dev/null +++ b/scripts/fuchsiagym.asm @@ -0,0 +1,336 @@ +FuchsiaGymScript: ; 7543d (1d:543d) + call FuchsiaGymScript_75453 + call EnableAutoTextBoxDrawing + ld hl, FuchsiaGymTrainerHeaders + ld de, FuchsiaGymScriptPointers + ld a, [W_FUCHSIAGYMCURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_FUCHSIAGYMCURSCRIPT], a + ret + +FuchsiaGymScript_75453: ; 75453 (1d:5453) + ld hl, $D126 + bit 6, [hl] + res 6, [hl] + ret z + ld hl, Gym5CityName + ld de, Gym5LeaderName + call LoadGymLeaderAndCityName + ret + +Gym5CityName: ; 75465 (1d:5465) + db "FUCHSIA CITY@" +Gym5LeaderName: ; 75472 (1d:5472) + db "KOGA@" + +FuchsiaGymScript_75477: ; 75477 (1d:5477) + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [W_FUCHSIAGYMCURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +FuchsiaGymScriptPointers: ; 75482 (1d:5482) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + dw FuchsiaGymScript3 + +FuchsiaGymScript3: ; 7548a (1d:548a) + ld a, [W_ISINBATTLE] ; $d057 + cp $ff + jp z, FuchsiaGymScript_75477 + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a +FuchsiaGymScript3_75497: ; 75497 (1d:5497) + ld a, $9 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + ld hl, $d792 + set 1, [hl] + ld bc, (TM_06 << 8) | 1 + call GiveItem + jr nc, .BagFull + ld a, $a + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + ld hl, $d792 + set 0, [hl] + jr .asm_754c0 +.BagFull + ld a, $b + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID +.asm_754c0 + ld hl, W_OBTAINEDBADGES + set 4, [hl] + ld hl, $d72a + set 4, [hl] + + ; deactivate gym trainers + ld a, [$d792] + or %11111100 + ld [$d792], a + + jp FuchsiaGymScript_75477 + +FuchsiaGymTextPointers: ; 754d5 (1d:54d5) + dw FuchsiaGymText1 + dw FuchsiaGymText2 + dw FuchsiaGymText3 + dw FuchsiaGymText4 + dw FuchsiaGymText5 + dw FuchsiaGymText6 + dw FuchsiaGymText7 + dw FuchsiaGymText8 + dw FuchsiaGymText9 + dw FuchsiaGymText10 + dw FuchsiaGymText11 + +FuchsiaGymTrainerHeaders: ; 754eb (1d:54eb) +FuchsiaGymTrainerHeader0: ; 754eb (1d:54eb) + db $2 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d792 ; flag's byte + dw FuchsiaGymBattleText1 ; 0x55ae TextBeforeBattle + dw FuchsiaGymAfterBattleText1 ; 0x55b8 TextAfterBattle + dw FuchsiaGymEndBattleText1 ; 0x55b3 TextEndBattle + dw FuchsiaGymEndBattleText1 ; 0x55b3 TextEndBattle + +FuchsiaGymTrainerHeader2: ; 754f7 (1d:54f7) + db $3 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d792 ; flag's byte + dw FuchsiaGymBattleText2 ; 0x55c7 TextBeforeBattle + dw FuchsiaGymAfterBattleText2 ; 0x55d1 TextAfterBattle + dw FuchsiaGymEndBattleText2 ; 0x55cc TextEndBattle + dw FuchsiaGymEndBattleText2 ; 0x55cc TextEndBattle + +FuchsiaGymTrainerHeader3: ; 75503 (1d:5503) + db $4 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d792 ; flag's byte + dw FuchsiaGymBattleText3 ; 0x55e0 TextBeforeBattle + dw FuchsiaGymAfterBattleText3 ; 0x55ea TextAfterBattle + dw FuchsiaGymEndBattleText3 ; 0x55e5 TextEndBattle + dw FuchsiaGymEndBattleText3 ; 0x55e5 TextEndBattle + +FuchsiaGymTrainerHeader4: ; 7550f (1d:550f) + db $5 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d792 ; flag's byte + dw FuchsiaGymBattleText4 ; 0x55f9 TextBeforeBattle + dw FuchsiaGymAfterBattleText4 ; 0x5603 TextAfterBattle + dw FuchsiaGymEndBattleText4 ; 0x55fe TextEndBattle + dw FuchsiaGymEndBattleText4 ; 0x55fe TextEndBattle + +FuchsiaGymTrainerHeader5: ; 7551b (1d:551b) + db $6 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d792 ; flag's byte + dw FuchsiaGymBattleText5 ; 0x5612 TextBeforeBattle + dw FuchsiaGymAfterBattleText5 ; 0x561c TextAfterBattle + dw FuchsiaGymEndBattleText5 ; 0x5617 TextEndBattle + dw FuchsiaGymEndBattleText5 ; 0x5617 TextEndBattle + +FuchsiaGymTrainerHeader6: ; 75527 (1d:5527) + db $7 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d792 ; flag's byte + dw FuchsiaGymBattleText6 ; 0x562b TextBeforeBattle + dw FuchsiaGymAfterBattleText6 ; 0x5635 TextAfterBattle + dw FuchsiaGymEndBattleText6 ; 0x5630 TextEndBattle + dw FuchsiaGymEndBattleText6 ; 0x5630 TextEndBattle + + db $ff + +FuchsiaGymText1: ; 75534 (1d:5534) + db $08 ; asm + ld a, [$d792] + bit 1, a + jr z, .asm_181b6 ; 0x7553a + bit 0, a + jr nz, .asm_adc3b ; 0x7553e + call z, FuchsiaGymScript3_75497 + call DisableWaitingAfterTextDisplay + jr .asm_e84c6 ; 0x75546 +.asm_adc3b ; 0x75548 + ld hl, UnnamedText_7558b + call PrintText + jr .asm_e84c6 ; 0x7554e +.asm_181b6 ; 0x75550 + ld hl, UnnamedText_75581 + call PrintText + ld hl, $d72d + set 6, [hl] + set 7, [hl] + ld hl, UnnamedText_75586 + ld de, UnnamedText_75586 + call PreBattleSaveRegisters + ldh a, [$8c] + ld [$cf13], a + call EngageMapTrainer + call InitBattleEnemyParameters + ld a, $5 + ld [$d05c], a + xor a + ldh [$b4], a + ld a, $3 + ld [W_FUCHSIAGYMCURSCRIPT], a +.asm_e84c6 ; 0x7557e + jp TextScriptEnd + +UnnamedText_75581: ; 75581 (1d:5581) + TX_FAR _UnnamedText_75581 + db "@" + +UnnamedText_75586: ; 75586 (1d:5586) + TX_FAR _UnnamedText_75586 + db "@" + +UnnamedText_7558b: ; 7558b (1d:558b) + TX_FAR _UnnamedText_7558b + db "@" + +FuchsiaGymText9: ; 75590 (1d:5590) + TX_FAR _UnnamedText_75590 + db "@" + +FuchsiaGymText10: ; 75595 (1d:5595) + TX_FAR _ReceivedTM06Text + db $11 + +TM06ExplanationText: ; 7559a (1d:559a) + TX_FAR _TM06ExplanationText + db "@" + +FuchsiaGymText11: ; 7559f (1d:559f) + TX_FAR _TM06NoRoomText + db "@" + +FuchsiaGymText2: ; 755a4 (1d:55a4) + db $08 ; asm + ld hl, FuchsiaGymTrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +FuchsiaGymBattleText1: ; 755ae (1d:55ae) + TX_FAR _FuchsiaGymBattleText1 + db "@" + +FuchsiaGymEndBattleText1: ; 755b3 (1d:55b3) + TX_FAR _FuchsiaGymEndBattleText1 + db "@" + +FuchsiaGymAfterBattleText1: ; 755b8 (1d:55b8) + TX_FAR _FuchsiaGymAfterBattleText1 + db "@" + +FuchsiaGymText3: ; 755bd (1d:55bd) + db $08 ; asm + ld hl, FuchsiaGymTrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +FuchsiaGymBattleText2: ; 755c7 (1d:55c7) + TX_FAR _FuchsiaGymBattleText2 + db "@" + +FuchsiaGymEndBattleText2: ; 755cc (1d:55cc) + TX_FAR _FuchsiaGymEndBattleText2 + db "@" + +FuchsiaGymAfterBattleText2: ; 755d1 (1d:55d1) + TX_FAR _FuchsiaGymAfterBattleText2 + db "@" + +FuchsiaGymText4: ; 755d6 (1d:55d6) + db $08 ; asm + ld hl, FuchsiaGymTrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +FuchsiaGymBattleText3: ; 755e0 (1d:55e0) + TX_FAR _FuchsiaGymBattleText3 + db "@" + +FuchsiaGymEndBattleText3: ; 755e5 (1d:55e5) + TX_FAR _FuchsiaGymEndBattleText3 + db "@" + +FuchsiaGymAfterBattleText3: ; 755ea (1d:55ea) + TX_FAR _FuchsiaGymAfterBattleText3 + db "@" + +FuchsiaGymText5: ; 755ef (1d:55ef) + db $08 ; asm + ld hl, FuchsiaGymTrainerHeader4 + call TalkToTrainer + jp TextScriptEnd + +FuchsiaGymBattleText4: ; 755f9 (1d:55f9) + TX_FAR _FuchsiaGymBattleText4 + db "@" + +FuchsiaGymEndBattleText4: ; 755fe (1d:55fe) + TX_FAR _FuchsiaGymEndBattleText4 + db "@" + +FuchsiaGymAfterBattleText4: ; 75603 (1d:5603) + TX_FAR _FuchsiaGymAfterBattleText4 + db "@" + +FuchsiaGymText6: ; 75608 (1d:5608) + db $08 ; asm + ld hl, FuchsiaGymTrainerHeader5 + call TalkToTrainer + jp TextScriptEnd + +FuchsiaGymBattleText5: ; 75612 (1d:5612) + TX_FAR _FuchsiaGymBattleText5 + db "@" + +FuchsiaGymEndBattleText5: ; 75617 (1d:5617) + TX_FAR _FuchsiaGymEndBattleText5 + db "@" + +FuchsiaGymAfterBattleText5: ; 7561c (1d:561c) + TX_FAR _FuchsiaGymAfterBattleText5 + db "@" + +FuchsiaGymText7: ; 75621 (1d:5621) + db $08 ; asm + ld hl, FuchsiaGymTrainerHeader6 + call TalkToTrainer + jp TextScriptEnd + +FuchsiaGymBattleText6: ; 7562b (1d:562b) + TX_FAR _FuchsiaGymBattleText6 + db "@" + +FuchsiaGymEndBattleText6: ; 75630 (1d:5630) + TX_FAR _FuchsiaGymEndBattleText6 + db "@" + +FuchsiaGymAfterBattleText6: ; 75635 (1d:5635) + TX_FAR _FuchsiaGymAfterBattleText6 + db "@" + +FuchsiaGymText8: ; 7563a (1d:563a) + db $08 ; asm + ld a, [$d792] + bit 1, a + ld hl, UnnamedText_75653 + jr nz, .asm_50671 ; 0x75643 + ld hl, UnnamedText_7564e +.asm_50671 ; 0x75648 + call PrintText + jp TextScriptEnd + +UnnamedText_7564e: ; 7564e (1d:564e) + TX_FAR _UnnamedText_7564e + db "@" + +UnnamedText_75653: ; 75653 (1d:5653) + TX_FAR _UnnamedText_75653 + db "@" diff --git a/scripts/fuchsiahouse1.asm b/scripts/fuchsiahouse1.asm new file mode 100755 index 00000000..4d5e6eb1 --- /dev/null +++ b/scripts/fuchsiahouse1.asm @@ -0,0 +1,20 @@ +FuchsiaHouse1Script: ; 75018 (1d:5018) + call EnableAutoTextBoxDrawing + ret + +FuchsiaHouse1TextPointers: ; 7501c (1d:501c) + dw FuchsiaHouse1Text1 + dw FuchsiaHouse1Text2 + dw FuchsiaHouse1Text3 + +FuchsiaHouse1Text1: ; 75022 (1d:5022) + TX_FAR _FuchsiaHouse1Text1 + db "@" + +FuchsiaHouse1Text2: ; 75027 (1d:5027) + TX_FAR _FuchsiaHouse1Text2 + db "@" + +FuchsiaHouse1Text3: ; 7502c (1d:502c) + TX_FAR _FuchsiaHouse1Text3 + db "@" diff --git a/scripts/fuchsiahouse2.asm b/scripts/fuchsiahouse2.asm new file mode 100755 index 00000000..82957d2d --- /dev/null +++ b/scripts/fuchsiahouse2.asm @@ -0,0 +1,116 @@ +FuchsiaHouse2Script: ; 750b5 (1d:50b5) + jp EnableAutoTextBoxDrawing + +FuchsiaHouse2TextPointers: ; 750b8 (1d:50b8) + dw FuchsiaHouse2Text1 + dw Predef5CText + dw BoulderText + dw FuchsiaHouse2Text4 + dw FuchsiaHouse2Text5 + +FuchsiaHouse2Text1: ; 750c2 (1d:50c2) + db $08 ; asm + ld a, [$d78e] + bit 0, a + jr nz, .subtract ; 0x750c8 + ld b,GOLD_TEETH + call IsItemInBag + jr nz, .asm_3f30f ; 0x750cf + ld a, [$d78e] + bit 1, a + jr nz, .asm_60cba ; 0x750d6 + ld hl, WardenGibberishText1 + call PrintText + call YesNoChoice + ld a, [$cc26] + and a + ld hl, WardenGibberishText3 + jr nz, .asm_61238 ; 0x750e8 + ld hl, WardenGibberishText2 +.asm_61238 ; 0x750ed + call PrintText + jr .asm_52039 ; 0x750f0 +.asm_3f30f ; 0x750f2 + ld hl, WardenTeethText1 + call PrintText + ld a, GOLD_TEETH + ldh [$db], a + callba RemoveItemByID + ld hl, $d78e + set 1, [hl] +.asm_60cba ; 0x75109 + ld hl, WardenThankYouText + call PrintText + ld bc,(HM_04 << 8) | 1 + call GiveItem + jr nc, .BagFull + ld hl, ReceivedHM04Text + call PrintText + ld hl, $d78e + set 0, [hl] + jr .asm_52039 ; 0x75122 +.subtract ; 0x75124 + ld hl, HM04ExplanationText + call PrintText + jr .asm_52039 ; 0x7512a +.BagFull + ld hl, HM04NoRoomText + call PrintText +.asm_52039 ; 0x75132 + jp TextScriptEnd + +WardenGibberishText1: ; 75135 (1d:5135) + TX_FAR _WardenGibberishText1 + db "@" + +WardenGibberishText2: ; 7513a (1d:513a) + TX_FAR _WardenGibberishText2 + db "@" + +WardenGibberishText3: ; 7513f (1d:513f) + TX_FAR _WardenGibberishText3 + db "@" + +WardenTeethText1: ; 75144 (1d:5144) + TX_FAR _WardenTeethText1 + db $0b + +WardenTeethText2: ; 75149 (1d:5149) + TX_FAR _WardenTeethText2 + db "@" + +WardenThankYouText: ; 7514e (1d:514e) + TX_FAR _WardenThankYouText + db "@" + +ReceivedHM04Text: ; 75153 (1d:5153) + TX_FAR _ReceivedHM04Text + db $0B, "@" + +HM04ExplanationText: ; 75159 (1d:5159) + TX_FAR _HM04ExplanationText + db "@" + +HM04NoRoomText: ; 7515e (1d:515e) + TX_FAR _HM04NoRoomText + db "@" + +FuchsiaHouse2Text5: ; 75163 (1d:5163) +FuchsiaHouse2Text4: ; 75163 (1d:5163) + db $08 ; asm + ldh a, [$8c] + cp $4 + ld hl, FuchsiaHouse2Text_7517b + jr nz, .asm_4c9a2 ; 0x7516b + ld hl, FuchsiaHouse2Text_75176 +.asm_4c9a2 ; 0x75170 + call PrintText + jp TextScriptEnd + +FuchsiaHouse2Text_75176: ; 75176 (1d:5176) + TX_FAR _FuchsiaHouse2Text_75176 + db "@" + +FuchsiaHouse2Text_7517b: ; 7517b (1d:517b) + TX_FAR _FuchsiaHouse2Text_7517b + db "@" diff --git a/scripts/fuchsiahouse3.asm b/scripts/fuchsiahouse3.asm new file mode 100755 index 00000000..ec5654ba --- /dev/null +++ b/scripts/fuchsiahouse3.asm @@ -0,0 +1,75 @@ +FuchsiaHouse3Script: ; 5617c (15:617c) + jp EnableAutoTextBoxDrawing + +FuchsiaHouse3TextPointers: ; 5617f (15:617f) + dw FuchsiaHouse3Text1 + +FuchsiaHouse3Text1: ; 56181 (15:6181) + db $08 ; asm + ld a, [$d728] + bit 4, a + jr nz, .after + + ld hl, FuchsiaHouse3Text_561bd + call PrintText + + call YesNoChoice + ld a, [$cc26] + and a + jr nz, .refused + + ld bc, (GOOD_ROD << 8) | 1 + call GiveItem + jr nc, .full + + ld hl, $d728 + set 4, [hl] + + ld hl, FuchsiaHouse3Text_561c2 + jr .talk + +.full + ld hl, FuchsiaHouse3Text_5621c + jr .talk + +.refused + ld hl, FuchsiaHouse3Text_56212 + jr .talk + +.after + ld hl, FuchsiaHouse3Text_56217 + +.talk + call PrintText + jp TextScriptEnd + +FuchsiaHouse3Text_561bd: ; 561bd (15:61bd) + TX_FAR _FuchsiaHouse3Text_561bd + db "@" + +FuchsiaHouse3Text_561c2: ; 561c2 (15:61c2) + TX_FAR _FuchsiaHouse3Text_561c2 ; 0xa06e8 + db $0B + db "@" + +UnnamedText_561c8: ; 561c8 + para "つり こそ" + line "おとこの ロマン だ!" + + para "へぼいつりざおは" + line "コイキングしか つれ なんだが" + line "この いいつりざおなら" + line "もっと いいもんが つれるんじゃ!" + done + +FuchsiaHouse3Text_56212: ; 56212 (15:6212) + TX_FAR _FuchsiaHouse3Text_56212 + db "@" + +FuchsiaHouse3Text_56217: ; 56217 (15:6217) + TX_FAR _FuchsiaHouse3Text_56217 + db "@" + +FuchsiaHouse3Text_5621c: ; 5621c (15:621c) + TX_FAR _FuchsiaHouse3Text_5621c + db "@" diff --git a/scripts/fuchsiamart.asm b/scripts/fuchsiamart.asm new file mode 100755 index 00000000..792dafa2 --- /dev/null +++ b/scripts/fuchsiamart.asm @@ -0,0 +1,15 @@ +FuchsiaMartScript: ; 1dd88 (7:5d88) + jp EnableAutoTextBoxDrawing + +FuchsiaMartTextPointers: ; 1dd8b (7:5d8b) + dw FuchsiaMartText1 + dw FuchsiaMartText2 + dw FuchsiaMartText3 + +FuchsiaMartText2: ; 1dd91 (7:5d91) + TX_FAR _FuchsiaMartText2 + db "@" + +FuchsiaMartText3: ; 1dd96 (7:5d96) + TX_FAR _FuchsiaMartText3 + db "@" diff --git a/scripts/fuchsiameetingroom.asm b/scripts/fuchsiameetingroom.asm new file mode 100755 index 00000000..140a5ccc --- /dev/null +++ b/scripts/fuchsiameetingroom.asm @@ -0,0 +1,20 @@ +FuchsiaMeetingRoomScript: ; 756e3 (1d:56e3) + call EnableAutoTextBoxDrawing + ret + +FuchsiaMeetingRoomTextPointers: ; 756e7 (1d:56e7) + dw FuchsiaMeetingRoomText1 + dw FuchsiaMeetingRoomText2 + dw FuchsiaMeetingRoomText3 + +FuchsiaMeetingRoomText1: ; 756ed (1d:56ed) + TX_FAR _FuchsiaMeetingRoomText1 + db "@" + +FuchsiaMeetingRoomText2: ; 756f2 (1d:56f2) + TX_FAR _FuchsiaMeetingRoomText2 + db "@" + +FuchsiaMeetingRoomText3: ; 756f7 (1d:56f7) + TX_FAR _FuchsiaMeetingRoomText3 + db "@" diff --git a/scripts/fuchsiapokecenter.asm b/scripts/fuchsiapokecenter.asm new file mode 100755 index 00000000..621a483f --- /dev/null +++ b/scripts/fuchsiapokecenter.asm @@ -0,0 +1,23 @@ +FuchsiaPokecenterScript: ; 75063 (1d:5063) + call Func_22fa + jp EnableAutoTextBoxDrawing + +FuchsiaPokecenterTextPointers: ; 75069 (1d:5069) + dw FuchsiaPokecenterText1 + dw FuchsiaPokecenterText2 + dw FuchsiaPokecenterText3 + dw FuchsiaPokecenterText4 + +FuchsiaPokecenterText1: ; 75071 (1d:5071) + db $ff + +FuchsiaPokecenterText2: ; 75072 (1d:5072) + TX_FAR _FuchsiaPokecenterText1 + db "@" + +FuchsiaPokecenterText3: ; 75077 (1d:5077) + TX_FAR _FuchsiaPokecenterText3 + db "@" + +FuchsiaPokecenterText4: ; 7507c (1d:507c) + db $f6 diff --git a/scripts/gary.asm b/scripts/gary.asm new file mode 100755 index 00000000..48f7d950 --- /dev/null +++ b/scripts/gary.asm @@ -0,0 +1,295 @@ +GaryScript: ; 75f1d (1d:5f1d) + call EnableAutoTextBoxDrawing + ld hl, GaryScriptPointers + ld a, [W_GARYCURSCRIPT] + jp CallFunctionInTable + +GaryScript_75f29: ; 75f29 (1d:5f29) + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [W_GARYCURSCRIPT], a + ret + +GaryScriptPointers: ; 75f31 (1d:5f31) + dw GaryScript0 + dw GaryScript1 + dw GaryScript2 + dw GaryScript3 + dw GaryScript4 + dw GaryScript5 + dw GaryScript6 + dw GaryScript7 + dw GaryScript8 + dw GaryScript9 + dw GaryScript10 + +GaryScript0: ; 75f47 (1d:5f47) + ret + +GaryScript1: ; 75f48 (1d:5f48) + ld a, $ff + ld [wJoypadForbiddenButtonsMask], a + ld hl, $ccd3 + ld de, RLEMovement75f63 + call DecodeRLEList + dec a + ld [$cd38], a + call Func_3486 + ld a, $2 + ld [W_GARYCURSCRIPT], a + ret + +RLEMovement75f63: ; 75f63 (1d:5f63) + db $40,1 + db $10,1 + db $40,3 + db $ff + +GaryScript2: ; 75f6a (1d:5f6a) + ld a, [$cd38] + and a + ret nz + call Delay3 + xor a + ld [wJoypadForbiddenButtonsMask], a + ld hl, $d355 + res 7, [hl] + ld a, $1 + ld [$ff8c], a + call DisplayTextID + call Delay3 + ld hl, $d72d + set 6, [hl] + set 7, [hl] + ld hl, GaryText_760f9 + ld de, GaryText_760fe + call PreBattleSaveRegisters + ld a, SONY3 + $c8 + ld [W_CUROPPONENT], a + + ; select which team to use during the encounter + ld a, [W_RIVALSTARTER] + cp SQUIRTLE + jr nz, .NotSquirtle ; 0x75f9f $4 + ld a, $1 + jr .done +.NotSquirtle + cp BULBASAUR + jr nz, .Charmander ; 0x75fa7 $4 + ld a, $2 + jr .done +.Charmander + ld a, $3 +.done + ld [W_TRAINERNO], a + + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + ld a, $3 + ld [W_GARYCURSCRIPT], a + ret + +GaryScript3: ; 75fbb (1d:5fbb) + ld a, [W_ISINBATTLE] + cp $ff + jp z, GaryScript_75f29 + call UpdateSprites ; move sprites + ld hl, $d867 + set 1, [hl] + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + ld a, $1 + ld [$ff8c], a + call GaryScript_760c8 + ld a, $1 + ld [$ff8c], a + call SetSpriteMovementBytesToFF + ld a, $4 + ld [W_GARYCURSCRIPT], a + ret + +GaryScript4: ; 75fe4 (1d:5fe4) + callba Music_Cities1AlternateTempo + ld a, $2 + ld [$ff8c], a + call GaryScript_760c8 + ld a, $2 + ld [$ff8c], a + call SetSpriteMovementBytesToFF + ld de, MovementData_76014 + ld a, $2 + ld [$ff8c], a + call MoveSprite + ld a, $d6 + ld [$cc4d], a + ld a, $15 + call Predef + ld a, $5 + ld [W_GARYCURSCRIPT], a + ret + +MovementData_76014: ; 76014 (1d:6014) + db $40,$40,$40,$40,$40,$FF + +GaryScript5: ; 7601a (1d:601a) + ld a, [$d730] + bit 0, a + ret nz + ld a, $2 + ld [$d528], a + ld a, $1 + ld [$ff8c], a + ld a, $8 + ld [$ff8d], a + call Func_34a6 + ld a, $2 + ld [$ff8c], a + xor a + ld [$ff8d], a + call Func_34a6 ; face object + ld a, $3 + ld [$ff8c], a + call GaryScript_760c8 + ld a, $6 + ld [W_GARYCURSCRIPT], a + ret + +GaryScript6: ; 76047 (1d:6047) + ld a, $2 + ld [$ff8c], a + ld a, $c + ld [$ff8d], a + call Func_34a6 ; face object + ld a, $4 + ld [$ff8c], a + call GaryScript_760c8 + ld a, $7 + ld [W_GARYCURSCRIPT], a + ret + +GaryScript7: ; 7605f (1d:605f) + ld a, $2 + ld [$ff8c], a + xor a + ld [$ff8d], a + call Func_34a6 ; face object + ld a, $5 + ld [$ff8c], a + call GaryScript_760c8 + ld de, MovementData_76080 + ld a, $2 + ld [$ff8c], a + call MoveSprite + ld a, $8 + ld [W_GARYCURSCRIPT], a + ret + +MovementData_76080: ; 76080 (1d:6080) + db $40,$40,$FF + +GaryScript8: ; 76083 (1d:6083) + ld a, [$d730] + bit 0, a + ret nz + ld a, $d6 + ld [$cc4d], a + ld a, $11 + call Predef + ld a, $9 + ld [W_GARYCURSCRIPT], a + ret + +GaryScript9: ; 76099 (1d:6099) + ld a, $ff + ld [wJoypadForbiddenButtonsMask], a + ld hl, $ccd3 + ld de, RLEMovement760b4 + call DecodeRLEList + dec a + ld [$cd38], a + call Func_3486 + ld a, $a + ld [W_GARYCURSCRIPT], a + ret + +RLEMovement760b4 ; 760b4 (1d:60b4) + db $40,4 + db $20,1 + db $ff + +GaryScript10: ; 760b9 (1d:60b9) + ld a, [$cd38] + and a + ret nz + xor a + ld [wJoypadForbiddenButtonsMask], a + ld a, $0 + ld [W_GARYCURSCRIPT], a + ret + +GaryScript_760c8 ; 760c8 (1d:60c8) + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + call DisplayTextID + ld a, $ff + ld [wJoypadForbiddenButtonsMask], a + ret + +GaryTextPointers: ; 760d6 (1d:60d6) + dw GaryText1 + dw GaryText2 + dw GaryText3 + dw GaryText4 + dw GaryText5 + +GaryText1: ; 760e0 (1d:60e0) + db $08 ; asm + ld a, [$d867] + bit 1, a + ld hl, GaryText_760f4 + jr z, .asm_17e9f ; 0x760e9 + ld hl, GaryText_76103 +.asm_17e9f ; 0x760ee + call PrintText + jp TextScriptEnd + +GaryText_760f4: ; 760f4 (1d:60f4) + TX_FAR _GaryText_760f4 + db "@" + +GaryText_760f9: ; 760f9 (1d:60f9) + TX_FAR _GaryText_760f9 + db "@" + +GaryText_760fe: ; 760fe (1d:60fe) + TX_FAR _GaryText_760fe + db "@" + +GaryText_76103: ; 76103 (1d:6103) + TX_FAR _GaryText_76103 + db "@" + +GaryText2: ; 76108 (1d:6108) + TX_FAR _GaryText2 + db "@" + +GaryText3: ; 7610d (1d:610d) + db $8 + ld a, [$d717] + ld [$d11e], a + call GetMonName + ld hl, GaryText_76120 + call PrintText + jp TextScriptEnd + +GaryText_76120: ; 76120 (1d:6120) + TX_FAR _GaryText_76120 + db "@" + +GaryText4: ; 76125 (1d:6125) + TX_FAR _GaryText_76125 + db "@" + +GaryText5: ; 7612a (1d:612a) + TX_FAR _GaryText_7612a + db "@" diff --git a/scripts/halloffameroom.asm b/scripts/halloffameroom.asm new file mode 100755 index 00000000..962fa643 --- /dev/null +++ b/scripts/halloffameroom.asm @@ -0,0 +1,115 @@ +HallofFameRoomScript: ; 5a49e (16:649e) + call EnableAutoTextBoxDrawing + ld hl, HallofFameRoomScriptPointers + ld a, [W_HALLOFFAMEROOMCURSCRIPT] + jp CallFunctionInTable + +HallofFameRoomScript_5a4aa: ; 5a4aa (16:64aa) + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [W_HALLOFFAMEROOMCURSCRIPT], a + ret + +HallofFameRoomScriptPointers: ; 5a4b2 (16:64b2) + dw HallofFameRoomScript0 + dw HallofFameRoomScript1 + dw HallofFameRoomScript2 + dw HallofFameRoomScript3 + +HallofFameRoomScript3: ; 5a4ba (16:64ba) + ret + +HallofFameRoomScript2: ; 5a4bb (16:64bb) + call Delay3 + ld a, [$d358] + push af + xor a + ld [wJoypadForbiddenButtonsMask], a + ld a, $55 + call Predef + pop af + ld [$d358], a + ld hl, W_FLAGS_D733 + res 1, [hl] + inc hl + set 0, [hl] + xor a + ld hl, W_LORELEICURSCRIPT + ld [hli], a + ld [hli], a + ld [hl], a + ld [W_LANCECURSCRIPT], a + ld [W_HALLOFFAMEROOMCURSCRIPT], a + ld hl, $d863 + ld [hli], a + ld [hli], a + ld [hli], a + ld [hli], a + ld [hl], a + xor a + ld [W_HALLOFFAMEROOMCURSCRIPT], a + ld a, PALLET_TOWN + ld [wLastBlackoutMap], a + callba SaveSAVtoSRAM + ld b, 5 +.asm_5a4ff + ld c, 600 / 5 + call DelayFrames + dec b + jr nz, .asm_5a4ff ; 0x5a505 $f8 + call WaitForTextScrollButtonPress + jp InitGame + +HallofFameRoomScript0: ; 5a50d (16:650d) + ld a, $ff + ld [wJoypadForbiddenButtonsMask], a + ld hl, $ccd3 + ld de, RLEMovement5a528 + call DecodeRLEList + dec a + ld [$cd38], a + call Func_3486 + ld a, $1 + ld [W_HALLOFFAMEROOMCURSCRIPT], a + ret + +RLEMovement5a528: ; 5a528 (16:6528) + db $40,$5 + db $ff + +HallofFameRoomScript1: ; 5a52b (16:652b) + ld a, [$cd38] + and a + ret nz + ld a, $1 + ld [$d528], a + ld a, $1 + ld [$ff8c], a + call SetSpriteMovementBytesToFF + ld a, $8 + ld [$ff8d], a + call Func_34a6 + call Delay3 + xor a + ld [wJoypadForbiddenButtonsMask], a + inc a + ld [$d528], a + ld a, $1 + ld [$ff8c], a + call DisplayTextID + ld a, $ff + ld [wJoypadForbiddenButtonsMask], a + ld a, $8 + ld [$cc4d], a + ld a, $11 + call Predef + ld a, $2 + ld [W_HALLOFFAMEROOMCURSCRIPT], a + ret + +HallofFameRoomTextPointers: ; 5a56a (16:656a) + dw HallofFameRoomText1 + +HallofFameRoomText1: ; 5a56c (16:656c) + TX_FAR _HallofFameRoomText1 + db "@" diff --git a/scripts/indigoplateau.asm b/scripts/indigoplateau.asm new file mode 100755 index 00000000..9e4802ba --- /dev/null +++ b/scripts/indigoplateau.asm @@ -0,0 +1,4 @@ +IndigoPlateauScript: ; 50935 (14:4935) + ret + +IndigoPlateauTextPointers: ; 50936 (14:4936) diff --git a/scripts/indigoplateaulobby.asm b/scripts/indigoplateaulobby.asm new file mode 100755 index 00000000..861939b6 --- /dev/null +++ b/scripts/indigoplateaulobby.asm @@ -0,0 +1,41 @@ +IndigoPlateauLobbyScript: ; 19c5b (6:5c5b) + call Func_22fa + call EnableAutoTextBoxDrawing + ld hl, $d126 + bit 6, [hl] + res 6, [hl] + ret z + ld hl, $d869 + res 7, [hl] + ld hl, $d734 + bit 1, [hl] + res 1, [hl] + ret z + ld hl, $d863 + xor a + ld [hli], a + ld [hli], a + ld [hli], a + ld [hl], a + ret + +IndigoPlateauLobbyTextPointers: ; 19c7f (6:5c7f) + dw IndigoPlateauLobbyText1 + dw IndigoPlateauLobbyText2 + dw IndigoPlateauLobbyText3 + dw IndigoPlateauLobbyText4 + dw IndigoPlateauLobbyText5 + +IndigoPlateauLobbyText1: ; 19c89 (6:5c89) + db $ff + +IndigoPlateauLobbyText2: ; 19c8a (6:5c8a) + TX_FAR _IndigoPlateauLobbyText1 + db "@" + +IndigoPlateauLobbyText3: ; 19c8f (6:5c8f) + TX_FAR _IndigoPlateauLobbyText3 + db "@" + +IndigoPlateauLobbyText5: ; 19c94 (6:5c94) + db $f6 diff --git a/scripts/lab1.asm b/scripts/lab1.asm new file mode 100755 index 00000000..a4ec9b41 --- /dev/null +++ b/scripts/lab1.asm @@ -0,0 +1,30 @@ +Lab1Script: ; 75b8c (1d:5b8c) + call EnableAutoTextBoxDrawing + ret + +Lab1TextPointers: ; 75b90 (1d:5b90) + dw Lab1Text1 + dw Lab1Text2 + dw Lab1Text3 + dw Lab1Text4 + dw Lab1Text5 + +Lab1Text1: ; 75b9a (1d:5b9a) + TX_FAR _Lab1Text1 + db "@" + +Lab1Text2: ; 75b9f (1d:5b9f) + TX_FAR _Lab1Text2 + db "@" + +Lab1Text3: ; 75ba4 (1d:5ba4) + TX_FAR _Lab1Text3 + db "@" + +Lab1Text4: ; 75ba9 (1d:5ba9) + TX_FAR _Lab1Text4 + db "@" + +Lab1Text5: ; 75bae (1d:5bae) + TX_FAR _Lab1Text5 + db "@" diff --git a/scripts/lab2.asm b/scripts/lab2.asm new file mode 100755 index 00000000..a626de98 --- /dev/null +++ b/scripts/lab2.asm @@ -0,0 +1,26 @@ +Lab2Script: ; 75c21 (1d:5c21) + jp EnableAutoTextBoxDrawing + +Lab2TextPointers: ; 75c24 (1d:5c24) + dw Lab2Text1 + dw Lab2Text2 + dw Lab2Text3 + +Lab2Text1: ; 75c2a (1d:5c2a) + TX_FAR _Lab2Text1 + db "@" + +Lab2Text2: ; 75c2f (1d:5c2f) + db $8 + ld a, $7 + ld [wWhichTrade], a + jr asm_78552 ; 0x75c35 $6 + +Lab2Text3: ; 75c37 (1d:5c37) + db $8 + ld a, $8 + ld [wWhichTrade], a +asm_78552: ; 75c3d (1d:5c3d) + ld a, $54 + call Predef + jp TextScriptEnd diff --git a/scripts/lab3.asm b/scripts/lab3.asm new file mode 100755 index 00000000..d56aba26 --- /dev/null +++ b/scripts/lab3.asm @@ -0,0 +1,63 @@ +Lab3Script: ; 75c87 (1d:5c87) + jp EnableAutoTextBoxDrawing + +Lab3TextPointers: ; 75c8a (1d:5c8a) + dw Lab3Text1 + dw Lab3Text2 + dw Lab3Text3 + dw Lab3Text4 + dw Lab3Text5 + +Lab3Text1: ; 75c94 (1d:5c94) + db $08 ; asm + ld a, [$d7a1] + bit 7, a + jr nz, .asm_e551a ; 0x75c9a + ld hl, TM35PreReceiveText + call PrintText + ld bc, (TM_35 << 8) | 1 + call GiveItem + jr nc, .BagFull + ld hl, ReceivedTM35Text + call PrintText + ld hl, $d7a1 + set 7, [hl] + jr .asm_eb896 ; 0x75cb5 +.BagFull + ld hl, TM35NoRoomText + call PrintText + jr .asm_eb896 ; 0x75cbd +.asm_e551a ; 0x75cbf + ld hl, TM35ExplanationText + call PrintText +.asm_eb896 ; 0x75cc5 + jp TextScriptEnd + +TM35PreReceiveText: ; 75cc8 (1d:5cc8) + TX_FAR _TM35PreReceiveText + db "@" + +ReceivedTM35Text: ; 75ccd (1d:5ccd) + TX_FAR _ReceivedTM35Text + db $0B, "@" + +TM35ExplanationText: ; 75cd3 (1d:5cd3) + TX_FAR _TM35ExplanationText + db "@" + +TM35NoRoomText: ; 75cd8 (1d:5cd8) + TX_FAR _TM35NoRoomText + db "@" + +Lab3Text2: ; 75cdd (1d:5cdd) + TX_FAR _Lab3Text2 + db "@" + +Lab3Text4: ; 75ce2 (1d:5ce2) +Lab3Text3: ; 75ce2 (1d:5ce2) + TX_FAR _Lab3Text3 + db "@" + +Lab3Text5: ; 75ce7 (1d:5ce7) + TX_FAR _Lab3Text5 + db "@" diff --git a/scripts/lab4.asm b/scripts/lab4.asm new file mode 100755 index 00000000..7bd071ea --- /dev/null +++ b/scripts/lab4.asm @@ -0,0 +1,115 @@ +Lab4Script: ; 75d31 (1d:5d31) + jp EnableAutoTextBoxDrawing + +Lab4TextPointers: ; 75d34 (1d:5d34) + dw Lab4Text1 + dw Lab4Text2 + +Lab4Script_75d38: ; 75d38 (1d:5d38) + xor a + ld [$cd37], a + ld de, $cc5b + ld hl, FossilsList +.asm_75d42 + ld a, [hli] + and a + jr z, .asm_75d64 + push hl + push de + ld [$d11e], a + ld b, a + ld a, $1c + call Predef ; indirect jump to Func_f8a5 (f8a5 (3:78a5)) + pop de + pop hl + ld a, b + and a + jr z, .asm_75d42 + ld a, [$d11e] + ld [de], a + inc de + push hl + ld hl, $cd37 + inc [hl] + pop hl + jr .asm_75d42 +.asm_75d64 + ld a, $ff + ld [de], a + ret + +FossilsList: ; 75d68 (1d:5d68) + db DOME_FOSSIL + db HELIX_FOSSIL + db OLD_AMBER + db $00 + +Lab4Text1: ; 75d6c (1d:5d6c) + db $8 + ld a, [$d7a3] + bit 0, a + jr nz, .asm_75d96 ; 0x75d72 $22 + ld hl, Lab4Text_75dc6 + call PrintText + call Lab4Script_75d38 + ld a, [$cd37] + and a + jr z, .asm_75d8d ; 0x75d81 $a + callba GiveFossilToCinnabarLab + jr .asm_75d93 ; 0x75d8b $6 +.asm_75d8d + ld hl, Lab4Text_75dcb + call PrintText +.asm_75d93 + jp TextScriptEnd +.asm_75d96 + bit 1, a + jr z, .asm_75da2 ; 0x75d98 $8 + ld hl, Lab4Text_75dd0 + call PrintText + jr .asm_75d93 ; 0x75da0 $f1 +.asm_75da2 + call LoadFossilItemAndMonNameBank1D + ld hl, Lab4Text_75dd5 + call PrintText + ld hl, $d7a3 + set 2, [hl] + ld a, [W_FOSSILMON] + ld b, a + ld c, $1e + call GivePokemon + jr nc, .asm_75d93 ; 0x75db9 $d8 + ld hl, $d7a3 + res 0, [hl] + res 1, [hl] + res 2, [hl] + jr .asm_75d93 ; 0x75dc4 $cd + +Lab4Text_75dc6: ; 75dc6 (1d:5dc6) + TX_FAR _Lab4Text_75dc6 + db "@" + +Lab4Text_75dcb: ; 75dcb (1d:5dcb) + TX_FAR _Lab4Text_75dcb + db "@" + +Lab4Text_75dd0: ; 75dd0 (1d:5dd0) + TX_FAR _Lab4Text_75dd0 + db "@" + +Lab4Text_75dd5: ; 75dd5 (1d:5dd5) + TX_FAR _Lab4Text_75dd5 + db "@" + +Lab4Text2: ; 75dda (1d:5dda) + db $08 ; asm + ld a, $3 + ld [wWhichTrade], a + ld a, $54 + call Predef + jp TextScriptEnd + +LoadFossilItemAndMonNameBank1D: ; 75de8 (1d:5de8) + ld b, BANK(LoadFossilItemAndMonName) + ld hl, LoadFossilItemAndMonName + jp Bankswitch diff --git a/scripts/lance.asm b/scripts/lance.asm new file mode 100755 index 00000000..445b4052 --- /dev/null +++ b/scripts/lance.asm @@ -0,0 +1,166 @@ +LanceScript: ; 5a2ae (16:62ae) + call LanceScript_5a2c4 + call EnableAutoTextBoxDrawing + ld hl, LanceTrainerHeaders + ld de, LanceScriptPointers + ld a, [W_LANCECURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_LANCECURSCRIPT], a + ret + +LanceScript_5a2c4: ; 5a2c4 (16:62c4) + ld hl, $d126 + bit 5, [hl] + res 5, [hl] + ret z + ld a, [$d866] + bit 7, a + jr nz, .asm_5a2da + ld a, $31 + ld b, $32 + jp LanceScript_5a2de +.asm_5a2da + ld a, $72 + ld b, $73 + +LanceScript_5a2de: ; 5a2de (16:62de) + push bc + ld [$d09f], a + ld bc, $602 + call LanceScript_5a2f0 + pop bc + ld a, b + ld [$d09f], a + ld bc, $603 + +LanceScript_5a2f0: ; 5a2f0 (16:62f0) + ld a, $17 + jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) + +LanceScript_5a2f5: ; 5a2f5 (16:62f5) + xor a + ld [W_LANCECURSCRIPT], a + ret + +LanceScriptPointers: ; 5a2fa (16:62fa) + dw LanceScript0 + dw Func_324c + dw LanceScript2 + dw LanceScript3 + dw LanceScript4 + +LanceScript4: ; 5a304 (16:6304) + ret + +LanceScript0: ; 5a305 (16:6305) + ld a, [$d866] + bit 6, a + ret nz + ld hl, CoordsData_5a33e + call ArePlayerCoordsInArray + jp nc, CheckFightingMapTrainers + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + ld a, [wWhichTrade] ; $cd3d + cp $3 + jr nc, .asm_5a325 + ld a, $1 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + jp DisplayTextID +.asm_5a325 + cp $5 + jr z, LanceScript_5a35b + ld hl, $d866 + bit 7, [hl] + set 7, [hl] + ret nz + ld hl, $d126 + set 5, [hl] + ld a, (SFX_02_57 - SFX_Headers_02) / 3 + call PlaySound + jp LanceScript_5a2c4 + +CoordsData_5a33e: ; 5a33e (16:633e) + db $01,$05 + db $02,$06 + db $0B,$05 + db $0B,$06 + db $10,$18 + db $FF + +LanceScript2: ; 5a349 (16:6349) + call EndTrainerBattle + ld a, [W_ISINBATTLE] ; $d057 + cp $ff + jp z, LanceScript_5a2f5 + ld a, $1 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + jp DisplayTextID + +LanceScript_5a35b: ; 5a35b (16:635b) + ld a, $ff + ld [wJoypadForbiddenButtonsMask], a + ld hl, $ccd3 + ld de, RLEList_5a379 + call DecodeRLEList + dec a + ld [$cd38], a + call Func_3486 + ld a, $3 + ld [W_LANCECURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +RLEList_5a379: ; 5a379 (16:6379) + db $40, $0C + db $20, $0C + db $80, $07 + db $20, $06 + db $FF + +LanceScript3: ; 5a382 (16:6382) + ld a, [$cd38] + and a + ret nz + call Delay3 + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [W_LANCECURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +LanceTextPointers: ; 5a395 (16:6395) + dw LanceText1 + +LanceTrainerHeaders: ; 5a397 (16:6397) +LanceTrainerHeader0: ; 5a397 (16:6397) + db $1 ; flag's bit + db ($0 << 4) ; trainer's view range + dw $d866 ; flag's byte + dw LanceBeforeBattleText ; 0x63ae TextBeforeBattle + dw LanceAfterBattleText ; 0x63b8 TextAfterBattle + dw LanceEndBattleText ; 0x63b3 TextEndBattle + dw LanceEndBattleText ; 0x63b3 TextEndBattle + + db $ff + +LanceText1: ; 5a3a4 (16:63a4) + db $08 ; asm + ld hl, LanceTrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +LanceBeforeBattleText: ; 5a3ae (16:63ae) + TX_FAR _LanceBeforeBattleText + db "@" + +LanceEndBattleText: ; 5a3b3 (16:63b3) + TX_FAR _LanceEndBattleText + db "@" + +LanceAfterBattleText: ; 5a3b8 (16:63b8) + TX_FAR _LanceAfterBattleText + db $8 + ld hl, $d866 + set 6, [hl] + jp TextScriptEnd diff --git a/scripts/lavenderhouse1.asm b/scripts/lavenderhouse1.asm new file mode 100755 index 00000000..0f7bf417 --- /dev/null +++ b/scripts/lavenderhouse1.asm @@ -0,0 +1,116 @@ +LavenderHouse1Script: ; 1d8a8 (7:58a8) + call EnableAutoTextBoxDrawing + ret + +LavenderHouse1TextPointers: ; 1d8ac (7:58ac) + dw LavenderHouse1Text1 + dw LavenderHouse1Text2 + dw LavenderHouse1Text3 + dw LavenderHouse1Text4 + dw LavenderHouse1Text5 + dw LavenderHouse1Text6 + +LavenderHouse1Text1: ; 1d8b8 (7:58b8) + db $08 ; asm + ld a, [$d7e0] + bit 7, a + jr nz, .asm_72e5d ; 0x1d8be + ld hl, LavenderHouse1Text_1d8d1 + call PrintText + jr .asm_6957f ; 0x1d8c6 +.asm_72e5d ; 0x1d8c8 + ld hl, LavenderHouse1Text_1d8d6 + call PrintText +.asm_6957f ; 0x1d8ce + jp TextScriptEnd + +LavenderHouse1Text_1d8d1: ; 1d8d1 (7:58d1) + TX_FAR _LavenderHouse1Text_1d8d1 + db "@" + +LavenderHouse1Text_1d8d6: ; 1d8d6 (7:58d6) + TX_FAR _LavenderHouse1Text_1d8d6 + db "@" + +LavenderHouse1Text2: ; 1d8db (7:58db) + db $08 ; asm + ld a, [$d7e0] + bit 7, a + jr nz, .asm_06470 ; 0x1d8e1 + ld hl, LavenderHouse1Text_1d8f4 + call PrintText + jr .asm_3d208 ; 0x1d8e9 +.asm_06470 ; 0x1d8eb + ld hl, LavenderHouse1Text_1d8f9 + call PrintText +.asm_3d208 ; 0x1d8f1 + jp TextScriptEnd + +LavenderHouse1Text_1d8f4: ; 1d8f4 (7:58f4) + TX_FAR _LavenderHouse1Text_1d8f4 + db "@" + +LavenderHouse1Text_1d8f9: ; 1d8f9 (7:58f9) + TX_FAR _LavenderHouse1Text_1d8f9 + db "@" + +LavenderHouse1Text3: ; 1d8fe (7:58fe) + TX_FAR _LavenderHouse1Text3 + db $8 + ld a, PSYDUCK + call PlayCry + jp TextScriptEnd + +LavenderHouse1Text4: ; 1d90b (7:590b) + TX_FAR _LavenderHouse1Text4 + db $8 + ld a, NIDORINO + call PlayCry + jp TextScriptEnd + +LavenderHouse1Text5: ; 1d918 (7:5918) + db $08 ; asm + ld a, [$d76c] + bit 0, a + jr nz, .asm_15ac2 ; 0x1d91e + ld hl, LavenderHouse1Text_1d94c + call PrintText + ld bc, (POKE_FLUTE << 8) | 1 + call GiveItem + jr nc, .BagFull + ld hl, ReceivedFluteText + call PrintText + ld hl, $d76c + set 0, [hl] + jr .asm_da749 ; 0x1d939 +.BagFull + ld hl, FluteNoRoomText + call PrintText + jr .asm_da749 ; 0x1d941 +.asm_15ac2 ; 0x1d943 + ld hl, MrFujiAfterFluteText + call PrintText +.asm_da749 ; 0x1d949 + jp TextScriptEnd + +LavenderHouse1Text_1d94c: ; 1d94c (7:594c) + TX_FAR _LavenderHouse1Text_1d94c + db "@" + +ReceivedFluteText: ; 1d951 (7:5951) + TX_FAR _ReceivedFluteText + db $11 + TX_FAR _FluteExplanationText + db "@" + +FluteNoRoomText: ; 1d95b (7:595b) + TX_FAR _FluteNoRoomText + db "@" + +MrFujiAfterFluteText: ; 1d960 (7:5960) + TX_FAR _MrFujiAfterFluteText + db "@" + +LavenderHouse1Text6: ; 1d965 (7:5965) + TX_FAR _LavenderHouse1Text6 + db "@" diff --git a/scripts/lavenderhouse2.asm b/scripts/lavenderhouse2.asm new file mode 100755 index 00000000..db4f0cab --- /dev/null +++ b/scripts/lavenderhouse2.asm @@ -0,0 +1,36 @@ +LavenderHouse2Script: ; 1d9ae (7:59ae) + call EnableAutoTextBoxDrawing + ret + +LavenderHouse2TextPointers: ; 1d9b2 (7:59b2) + dw LavenderHouse2Text1 + dw LavenderHouse2Text2 + +LavenderHouse2Text1: ; 1d9b6 (7:59b6) + TX_FAR _LavenderHouse2Text1 + db $8 + ld a, CUBONE + call PlayCry + jp TextScriptEnd + +LavenderHouse2Text2: ; 1d9c3 (7:59c3) + db $08 ; asm + ld a, [$d7e0] + bit 7, a + jr nz, .asm_65711 ; 0x1d9c9 + ld hl, LavenderHouse2Text_1d9dc + call PrintText + jr .asm_64be1 ; 0x1d9d1 +.asm_65711 ; 0x1d9d3 + ld hl, LavenderHouse2Text_1d9e1 + call PrintText +.asm_64be1 ; 0x1d9d9 + jp TextScriptEnd + +LavenderHouse2Text_1d9dc: ; 1d9dc (7:59dc) + TX_FAR _LavenderHouse2Text_1d9dc + db "@" + +LavenderHouse2Text_1d9e1: ; 1d9e1 (7:59e1) + TX_FAR _LavenderHouse2Text_1d9e1 + db "@" diff --git a/scripts/lavendermart.asm b/scripts/lavendermart.asm new file mode 100755 index 00000000..78870a66 --- /dev/null +++ b/scripts/lavendermart.asm @@ -0,0 +1,33 @@ +LavenderMartScript: ; 5c92c (17:492c) + jp EnableAutoTextBoxDrawing + +LavenderMartTextPointers: ; 5c92f (17:492f) + dw LavenderMartText1 + dw LavenderMartText2 + dw LavenderMartText3 + +LavenderMartText2: ; 5c935 (17:4935) + TX_FAR _LavenderMartText2 + db "@" + +LavenderMartText3: ; 5c93a (17:493a) + db $08 ; asm + ld a, [$d7e0] + bit 7, a + jr nz, .asm_c88d4 ; 0x5c940 + ld hl, LavenderMart_5c953 + call PrintText + jr .asm_6d225 ; 0x5c948 +.asm_c88d4 ; 0x5c94a + ld hl, LavenderMart_5c958 + call PrintText +.asm_6d225 ; 0x5c950 + jp TextScriptEnd + +LavenderMart_5c953: ; 5c953 (17:4953) + TX_FAR _LavenderMart_5c953 + db "@" + +LavenderMart_5c958: ; 5c958 (17:4958) + TX_FAR _LavenderMart_5c958 + db "@" diff --git a/scripts/lavenderpokecenter.asm b/scripts/lavenderpokecenter.asm new file mode 100755 index 00000000..31a50aef --- /dev/null +++ b/scripts/lavenderpokecenter.asm @@ -0,0 +1,23 @@ +LavenderPokecenterScript: ; 5c8da (17:48da) + call Func_22fa + jp EnableAutoTextBoxDrawing + +LavenderPokecenterTextPointers: ; 5c8e0 (17:48e0) + dw LavenderPokecenterText1 + dw LavenderPokecenterText2 + dw LavenderPokecenterText3 + dw LavenderPokecenterText4 + +LavenderPokecenterText4: ; 5c8e8 (17:48e8) + db $f6 + +LavenderPokecenterText1: ; 5c8e9 (17:48e9) + db $ff + +LavenderPokecenterText2: ; 5c8ea (17:48ea) + TX_FAR _LavenderPokecenterText1 + db "@" + +LavenderPokecenterText3: ; 5c8ef (17:48ef) + TX_FAR _LavenderPokecenterText3 + db "@" diff --git a/scripts/lavendertown.asm b/scripts/lavendertown.asm new file mode 100755 index 00000000..41eb0242 --- /dev/null +++ b/scripts/lavendertown.asm @@ -0,0 +1,63 @@ +LavenderTownScript: ; 4410b (11:410b) + jp EnableAutoTextBoxDrawing + +LavenderTownTextPointers: ; 4410e (11:410e) + dw LavenderTownText1 + dw LavenderTownText2 + dw LavenderTownText3 + dw LavenderTownText4 + dw LavenderTownText5 + dw MartSignText + dw PokeCenterSignText + dw LavenderTownText8 + dw LavenderTownText9 + +LavenderTownText1: ; 44120 (11:4120) + db $08 ; asm + ld hl, LavenderTownText_4413c + call PrintText + call YesNoChoice + ld a, [$cc26] + and a + ld hl, LavenderTownText_44146 + jr nz, .asm_40831 ; 0x44131 + ld hl, LavenderTownText_44141 +.asm_40831 ; 0x44136 + call PrintText + jp TextScriptEnd + +LavenderTownText_4413c: ; 4413c (11:413c) + TX_FAR _LavenderTownText_4413c + db "@" + +LavenderTownText_44141: ; 44141 (11:4141) + TX_FAR _LavenderTownText_44141 + db "@" + +LavenderTownText_44146: ; 44146 (11:4146) + TX_FAR _LavenderTownText_44146 + db "@" + +LavenderTownText2: ; 4414b (11:414b) + TX_FAR _LavenderTownText2 + db "@" + +LavenderTownText3: ; 44150 (11:4150) + TX_FAR _LavenderTownText3 + db "@" + +LavenderTownText4: ; 44155 (11:4155) + TX_FAR _LavenderTownText4 + db "@" + +LavenderTownText5: ; 4415a (11:415a) + TX_FAR _LavenderTownText5 + db "@" + +LavenderTownText8: ; 4415f (11:415f) + TX_FAR _LavenderTownText8 + db "@" + +LavenderTownText9: ; 44164 (11:4164) + TX_FAR _LavenderTownText9 + db "@" diff --git a/scripts/lorelei.asm b/scripts/lorelei.asm new file mode 100755 index 00000000..eb2da2bd --- /dev/null +++ b/scripts/lorelei.asm @@ -0,0 +1,153 @@ +LoreleiScript: ; 7617b (1d:617b) + call LoreleiScript_76191 + call EnableAutoTextBoxDrawing + ld hl, LoreleiTrainerHeaders + ld de, LoreleiScriptPointers + ld a, [W_LORELEICURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_LORELEICURSCRIPT], a + ret + +LoreleiScript_76191: ; 76191 (1d:6191) + ld hl, $d126 + bit 5, [hl] + res 5, [hl] + ret z + ld hl, $d734 + set 1, [hl] + ld a, [$d863] + bit 1, a + jr z, .asm_761a9 + ld a, $5 + jr .asm_761ab +.asm_761a9 + ld a, $24 +.asm_761ab + ld [$d09f], a + ld bc, $2 + ld a, $17 + jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) + +LoreleiScript_761b6: ; 761b6 (1d:61b6) + xor a + ld [W_LORELEICURSCRIPT], a + ret + +LoreleiScriptPointers: ; 761bb (1d:61bb) + dw LoreleiScript0 + dw Func_324c + dw LoreleiScript2 + dw LoreleiScript3 + dw LoreleiScript4 + +LoreleiScript4: ; 761c5 (1d:61c5) + ret +asm_761c6: ; 761c6 (1d:61c6) + ld hl, $ccd3 + ld a, $40 + ld [hli], a + ld [hli], a + ld [hli], a + ld [hli], a + ld [hli], a + ld [hl], a + ld a, $6 + ld [$cd38], a + call Func_3486 + ld a, $3 + ld [W_LORELEICURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret +LoreleiScript0: ; 761e2 (1d:61e2) + ld hl, CoordsData_76223 + call ArePlayerCoordsInArray + jp nc, CheckFightingMapTrainers + xor a + ld [H_NEWLYPRESSEDBUTTONS], a + ld [H_CURRENTPRESSEDBUTTONS], a + ld [$ccd3], a + ld [$cd38], a + ld a, [wWhichTrade] ; $cd3d + cp $3 + jr c, .asm_76206 + ld hl, $d863 + bit 6, [hl] + set 6, [hl] + jr z, asm_761c6 +.asm_76206 + ld a, $2 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + ld a, $40 + ld [$ccd3], a + ld a, $1 + ld [$cd38], a + call Func_3486 + ld a, $3 + ld [W_LORELEICURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +CoordsData_76223: ; 76223 (1d:6223) + db $0A,$04 + db $0A,$05 + db $0B,$04 + db $0B,$05 + db $FF + +LoreleiScript3: ; 7622c (1d:622c) + ld a, [$cd38] + and a + ret nz + call Delay3 + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [W_LORELEICURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret +LoreleiScript2: ; 7623f (1d:623f) + call EndTrainerBattle + ld a, [W_ISINBATTLE] ; $d057 + cp $ff + jp z, LoreleiScript_761b6 + ld a, $1 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + jp DisplayTextID + +LoreleiTextPointers: ; 76251 (1d:6251) + dw LoreleiText1 + dw LoreleiText2 + +LoreleiTrainerHeaders: ; 76255 (1d:6255) +LoreleiTrainerHeader0: ; 76255 (1d:6255) + db $1 ; flag's bit + db ($0 << 4) ; trainer's view range + dw $d863 ; flag's byte + dw LoreleiBeforeBattleText ; 0x626c TextBeforeBattle + dw LoreleiAfterBattleText ; 0x6276 TextAfterBattle + dw LoreleiEndBattleText ; 0x6271 TextEndBattle + dw LoreleiEndBattleText ; 0x6271 TextEndBattle + + db $ff + +LoreleiText1: ; 76262 (1d:6262) + db $08 ; asm + ld hl, LoreleiTrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +LoreleiBeforeBattleText: ; 7626c (1d:626c) + TX_FAR _LoreleiBeforeBattleText + db "@" + +LoreleiEndBattleText: ; 76271 (1d:6271) + TX_FAR _LoreleiEndBattleText + db "@" + +LoreleiAfterBattleText: ; 76276 (1d:6276) + TX_FAR _LoreleiAfterBattleText + db "@" + +LoreleiText2: ; 7627b (1d:627b) + TX_FAR _LoreleiText2 + db "@" diff --git a/scripts/mansion1.asm b/scripts/mansion1.asm new file mode 100755 index 00000000..d68e2183 --- /dev/null +++ b/scripts/mansion1.asm @@ -0,0 +1,139 @@ +Mansion1Script: ; 442af (11:42af) + call Mansion1Subscript1 + call EnableAutoTextBoxDrawing + ld hl, Mansion1TrainerHeaders + ld de, Mansion1ScriptPointers + ld a, [W_MANSION1CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_MANSION1CURSCRIPT], a + ret + +Mansion1Subscript1: ; 442c5 (11:42c5) + ld hl, $d126 + bit 5, [hl] + res 5, [hl] + ret z + ld a, [$d796] + bit 0, a + jr nz, .asm_442ec ; 0x442d2 $18 + ld bc, $060c + call Mansion1Script_4430b + ld bc, $0308 + call Mansion1Script_44304 + ld bc, $080a + call Mansion1Script_44304 + ld bc, $0d0d + jp Mansion1Script_44304 +.asm_442ec + ld bc, $060c + call Mansion1Script_44304 + ld bc, $0308 + call Mansion1Script_4430b + ld bc, $080a + call Mansion1Script_4430b + ld bc, $0d0d + jp Mansion1Script_4430b + +Mansion1Script_44304: ; 44304 (11:4304) + ld a, $2d + ld [$d09f], a + jr asm_44310 + +Mansion1Script_4430b: ; 4430b (11:430b) + ld a, $e + ld [$d09f], a +asm_44310: ; 44310 (11:4310) + ld a, $17 + call Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) + ret + +Func_44316: ; 44316 (11:4316) + ld a, [$c109] + cp $4 + ret nz + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + ld a, $4 + ld [H_SPRITEHEIGHT], a + jp DisplayTextID + +Mansion1ScriptPointers: ; 44326 (11:4326) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +Mansion1TextPointers: ; 4432c (11:432c) + dw Mansion1Text1 + dw Predef5CText + dw Predef5CText + dw Mansion1Text4 + +Mansion1TrainerHeaders: ; 44334 (11:4334) +Mansion1TrainerHeader0: ; 44334 (11:4334) + db $1 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d798 ; flag's byte + dw Mansion1BattleText2 ; 0x434b TextBeforeBattle + dw Mansion1AfterBattleText2 ; 0x4355 TextAfterBattle + dw Mansion1EndBattleText2 ; 0x4350 TextEndBattle + dw Mansion1EndBattleText2 ; 0x4350 TextEndBattle + + db $ff + +Mansion1Text1: ; 44341 (11:4341) + db $08 ; asm + ld hl, Mansion1TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +Mansion1BattleText2: ; 4434b (11:434b) + TX_FAR _Mansion1BattleText2 + db "@" + +Mansion1EndBattleText2: ; 44350 (11:4350) + TX_FAR _Mansion1EndBattleText2 + db "@" + +Mansion1AfterBattleText2: ; 44355 (11:4355) + TX_FAR _Mansion1AfterBattleText2 + db "@" + +Mansion1Text4: ; 4435a (11:435a) + db $8 + ld hl, MansionSwitchText + call PrintText + call YesNoChoice + ld a, [$cc26] + and a + jr nz, .asm_4438c ; 0x44368 $22 + ld a, $1 + ld [$cc3c], a + ld hl, $d126 + set 5, [hl] + ld hl, MansionSwitchPressedText + call PrintText + ld a, (SFX_02_57 - SFX_Headers_02) / 3 + call PlaySound + ld hl, $d796 + bit 0, [hl] + set 0, [hl] + jr z, .asm_44392 ; 0x44386 $a + res 0, [hl] + jr .asm_44392 ; 0x4438a $6 +.asm_4438c + ld hl, MansionSwitchNotPressedText + call PrintText +.asm_44392 + jp TextScriptEnd + +MansionSwitchText: ; 44395 (11:4395) + TX_FAR _MansionSwitchText + db "@" + +MansionSwitchPressedText: ; 4439a (11:439a) + TX_FAR _MansionSwitchPressedText + db "@" + +MansionSwitchNotPressedText: ; 4439f (11:439f) + TX_FAR _MansionSwitchNotPressedText + db "@" diff --git a/scripts/mansion2.asm b/scripts/mansion2.asm new file mode 100755 index 00000000..203a3a66 --- /dev/null +++ b/scripts/mansion2.asm @@ -0,0 +1,145 @@ +Mansion2Script: ; 51fd8 (14:5fd8) + call Mansion2Script_51fee + call EnableAutoTextBoxDrawing + ld hl, Mansion2TrainerHeaders + ld de, Mansion2ScriptPointers + ld a, [W_MANSION2CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_MANSION2CURSCRIPT], a + ret + +Mansion2Script_51fee: ; 51fee (14:5fee) + ld hl, $d126 + bit 5, [hl] + res 5, [hl] + ret z + ld a, [$d796] + bit 0, a + jr nz, .asm_52016 + ld a, $e + ld bc, $204 + call Mansion2Script_5202f + ld a, $54 + ld bc, $409 + call Mansion2Script_5202f + ld a, $5f + ld bc, $b03 + call Mansion2Script_5202f + ret +.asm_52016 + ld a, $5f + ld bc, $204 + call Mansion2Script_5202f + ld a, $e + ld bc, $409 + call Mansion2Script_5202f + ld a, $e + ld bc, $b03 + call Mansion2Script_5202f + ret + +Mansion2Script_5202f: ; 5202f (14:602f) + ld [$d09f], a + ld a, $17 + jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) + +Mansion2Script_52037: ; 52037 (14:6037) + ld a, [$c109] + cp $4 + ret nz + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + ld a, $5 + ld [H_SPRITEHEIGHT], a + jp DisplayTextID + +Mansion2ScriptPointers: ; 52047 (14:6047) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +Mansion2TextPointers: ; 5204d (14:604d) + dw Mansion2Text1 + dw Predef5CText + dw Mansion2Text3 + dw Mansion2Text4 + dw Mansion2Text5 + +Mansion2TrainerHeaders: ; 52057 (14:6057) +Mansion2TrainerHeader0: ; 52057 (14:6057) + db $1 ; flag's bit + db ($0 << 4) ; trainer's view range + dw $d847 ; flag's byte + dw Mansion2BattleText1 ; 0x606e TextBeforeBattle + dw Mansion2AfterBattleText1 ; 0x6078 TextAfterBattle + dw Mansion2EndBattleText1 ; 0x6073 TextEndBattle + dw Mansion2EndBattleText1 ; 0x6073 TextEndBattle + + db $ff + +Mansion2Text1: ; 52064 (14:6064) + db $08 ; asm + ld hl, Mansion2TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +Mansion2BattleText1: ; 5206e (14:606e) + TX_FAR _Mansion2BattleText1 + db "@" + +Mansion2EndBattleText1: ; 52073 (14:6073) + TX_FAR _Mansion2EndBattleText1 + db "@" + +Mansion2AfterBattleText1: ; 52078 (14:6078) + TX_FAR _Mansion2AfterBattleText1 + db "@" + +Mansion2Text3: ; 5207d (14:607d) + TX_FAR _Mansion2Text3 + db "@" + +Mansion2Text4: ; 52082 (14:6082) + TX_FAR _Mansion2Text4 + db "@" + +Mansion3Text6: ; 52087 (14:6087) +Mansion2Text5: ; 52087 (14:6087) + db $8 + ld hl, Mansion2Text_520c2 + call PrintText + call YesNoChoice + ld a, [$cc26] + and a + jr nz, .asm_520b9 ; 0x52095 $22 + ld a, $1 + ld [$cc3c], a + ld hl, $d126 + set 5, [hl] + ld hl, Mansion2Text_520c7 + call PrintText + ld a, (SFX_02_57 - SFX_Headers_02) / 3 + call PlaySound + ld hl, $d796 + bit 0, [hl] + set 0, [hl] + jr z, .asm_520bf ; 0x520b3 $a + res 0, [hl] + jr .asm_520bf ; 0x520b7 $6 +.asm_520b9 + ld hl, Mansion2Text_520cc + call PrintText +.asm_520bf + jp TextScriptEnd + +Mansion2Text_520c2: ; 520c2 (14:60c2) + TX_FAR _Mansion2Text_520c2 + db "@" + +Mansion2Text_520c7: ; 520c7 (14:60c7) + TX_FAR _Mansion2Text_520c7 + db "@" + +Mansion2Text_520cc: ; 520cc (14:60cc) + TX_FAR _Mansion2Text_520cc + db "@" diff --git a/scripts/mansion3.asm b/scripts/mansion3.asm new file mode 100755 index 00000000..9ad9454a --- /dev/null +++ b/scripts/mansion3.asm @@ -0,0 +1,153 @@ +Mansion3Script: ; 521ee (14:61ee) + call Mansion3Script_52204 + call EnableAutoTextBoxDrawing + ld hl, Mansion3TrainerHeader0 + ld de, Mansion3ScriptPointers + ld a, [W_MANSION3CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_MANSION3CURSCRIPT], a + ret + +Mansion3Script_52204: ; 52204 (14:6204) + ld hl, $d126 + bit 5, [hl] + res 5, [hl] + ret z + ld a, [$d796] + bit 0, a + jr nz, .asm_52224 + ld a, $e + ld bc, $207 + call Mansion2Script_5202f + ld a, $5f + ld bc, $507 + call Mansion2Script_5202f + ret +.asm_52224 + ld a, $5f + ld bc, $207 + call Mansion2Script_5202f + ld a, $e + ld bc, $507 + call Mansion2Script_5202f + ret + +Mansion3ScriptPointers: ; 52235 (14:6235) + dw Mansion3Script0 + dw Func_324c + dw EndTrainerBattle + +Mansion3Script0: ; 5223b (14:623b) + ld hl, CoordsData_52254 + call Mansion3Script_5225b + ld a, [$d71e] + and a + jp z, CheckFightingMapTrainers + cp $3 + ld a, $a5 + jr nz, .asm_52250 + ld a, $d6 +.asm_52250 + ld [$d71d], a + ret + +CoordsData_52254: ; 52254 (14:6254) + db $0E,$10 + db $0E,$11 + db $0E,$13 + db $FF + +Mansion3Script_5225b: ; 5225b (14:625b) + xor a + ld [$d71e], a + ld a, [$d72d] + bit 4, a + ret nz + call ArePlayerCoordsInArray + ret nc + ld a, [wWhichTrade] ; $cd3d + ld [$d71e], a + ld hl, $d72d + set 4, [hl] + ld hl, $d732 + set 4, [hl] + ret + +Func_5227a: ; 5227a (14:627a) + ld a, [$c109] + cp $4 + ret nz + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + ld a, $6 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + jp DisplayTextID + +Mansion3TextPointers: ; 5228a (14:628a) + dw Mansion3Text1 + dw Mansion3Text2 + dw Predef5CText + dw Predef5CText + dw Mansion3Text5 + dw Mansion3Text6 + +Mansion3TrainerHeaders: ; 52296 (14:6296) +Mansion3TrainerHeader0: ; 52296 (14:6296) + db $1 ; flag's bit + db ($0 << 4) ; trainer's view range + dw $d849 ; flag's byte + dw Mansion3BattleText1 ; 0x62c3 TextBeforeBattle + dw Mansion3AfterBattleText1 ; 0x62cd TextAfterBattle + dw Mansion3EndBattleText1 ; 0x62c8 TextEndBattle + dw Mansion3EndBattleText1 ; 0x62c8 TextEndBattle + +Mansion3TrainerHeader2: ; 522a2 (14:62a2) + db $2 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d849 ; flag's byte + dw Mansion3BattleText2 ; 0x62d2 TextBeforeBattle + dw Mansion3AfterBattleText2 ; 0x62dc TextAfterBattle + dw Mansion3EndBattleText2 ; 0x62d7 TextEndBattle + dw Mansion3EndBattleText2 ; 0x62d7 TextEndBattle + + db $ff + +Mansion3Text1: ; 522af (14:62af) + db $08 ; asm + ld hl, Mansion3TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +Mansion3Text2: ; 522b9 (14:62b9) + db $08 ; asm + ld hl, Mansion3TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +Mansion3BattleText1: ; 522c3 (14:62c3) + TX_FAR _Mansion3BattleText1 + db "@" + +Mansion3EndBattleText1: ; 522c8 (14:62c8) + TX_FAR _Mansion3EndBattleText1 + db "@" + +Mansion3AfterBattleText1: ; 522cd (14:62cd) + TX_FAR _Mansion3AfterBattleText1 + db "@" + +Mansion3BattleText2: ; 522d2 (14:62d2) + TX_FAR _Mansion3BattleText2 + db "@" + +Mansion3EndBattleText2: ; 522d7 (14:62d7) + TX_FAR _Mansion3EndBattleText2 + db "@" + +Mansion3AfterBattleText2: ; 522dc (14:62dc) + TX_FAR _Mansion3AfterBattleText2 + db "@" + +Mansion3Text5: ; 522e1 (14:62e1) + TX_FAR _Mansion3Text5 + db "@" diff --git a/scripts/mansion4.asm b/scripts/mansion4.asm new file mode 100755 index 00000000..78082ced --- /dev/null +++ b/scripts/mansion4.asm @@ -0,0 +1,132 @@ +Mansion4Script: ; 523b9 (14:63b9) + call Mansion4Script_523cf + call EnableAutoTextBoxDrawing + ld hl, Mansion4TrainerHeader0 + ld de, Mansion4ScriptPointers + ld a, [W_MANSION4CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_MANSION4CURSCRIPT], a + ret + +Mansion4Script_523cf: ; 523cf (14:63cf) + ld hl, $d126 + bit 5, [hl] + res 5, [hl] + ret z + ld a, [$d796] + bit 0, a + 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 + +Func_52420: ; 52420 (14:6420) + ld a, [$c109] + cp $4 + ret nz + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + ld a, $9 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + jp DisplayTextID + +Mansion4ScriptPointers: ; 52430 (14:6430) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +Mansion4TextPointers: ; 52436 (14:6436) + dw Mansion4Text1 + dw Mansion4Text2 + dw Predef5CText + dw Predef5CText + dw Predef5CText + dw Predef5CText + dw Mansion4Text7 + dw Predef5CText + dw Mansion3Text6 + +Mansion4TrainerHeaders: ; 52448 (14:6448) +Mansion4TrainerHeader0: ; 52448 (14:6448) + db $1 ; flag's bit + db ($0 << 4) ; trainer's view range + dw $d84b ; flag's byte + dw Mansion4BattleText1 ; 0x6475 TextBeforeBattle + dw Mansion4AfterBattleText1 ; 0x647f TextAfterBattle + dw Mansion4EndBattleText1 ; 0x647a TextEndBattle + dw Mansion4EndBattleText1 ; 0x647a TextEndBattle + +Mansion4TrainerHeader2: ; 52454 (14:6454) + db $2 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d84b ; flag's byte + dw Mansion4BattleText2 ; 0x6484 TextBeforeBattle + dw Mansion4AfterBattleText2 ; 0x648e TextAfterBattle + dw Mansion4EndBattleText2 ; 0x6489 TextEndBattle + dw Mansion4EndBattleText2 ; 0x6489 TextEndBattle + + db $ff + +Mansion4Text1: ; 52461 (14:6461) + db $08 ; asm + ld hl, Mansion4TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +Mansion4Text2: ; 5246b (14:646b) + db $08 ; asm + ld hl, Mansion4TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +Mansion4BattleText1: ; 52475 (14:6475) + TX_FAR _Mansion4BattleText1 + db "@" + +Mansion4EndBattleText1: ; 5247a (14:647a) + TX_FAR _Mansion4EndBattleText1 + db "@" + +Mansion4AfterBattleText1: ; 5247f (14:647f) + TX_FAR _Mansion4AfterBattleText1 + db "@" + +Mansion4BattleText2: ; 52484 (14:6484) + TX_FAR _Mansion4BattleText2 + db "@" + +Mansion4EndBattleText2: ; 52489 (14:6489) + TX_FAR _Mansion4EndBattleText2 + db "@" + +Mansion4AfterBattleText2: ; 5248e (14:648e) + TX_FAR _Mansion4AfterBattleText2 + db "@" + +Mansion4Text7: ; 52493 (14:6493) + TX_FAR _Mansion4Text7 + db "@" diff --git a/scripts/mtmoon1.asm b/scripts/mtmoon1.asm new file mode 100755 index 00000000..1954391c --- /dev/null +++ b/scripts/mtmoon1.asm @@ -0,0 +1,225 @@ +MtMoon1Script: ; 499c8 (12:59c8) + call EnableAutoTextBoxDrawing + ld hl, MtMoon1TrainerHeader0 + ld de, MtMoon1ScriptPointers + ld a, [W_MTMOON1CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_MTMOON1CURSCRIPT], a + ret + +MtMoon1ScriptPointers: ; 499db (12:59db) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +MtMoon1TextPointers: ; 499e1 (12:59e1) + dw MtMoon1Text1 + dw MtMoon1Text2 + dw MtMoon1Text3 + dw MtMoon1Text4 + dw MtMoon1Text5 + dw MtMoon1Text6 + dw MtMoon1Text7 + dw Predef5CText + dw Predef5CText + dw Predef5CText + dw Predef5CText + dw Predef5CText + dw Predef5CText + dw MtMoon1Text14 + +MtMoon1TrainerHeaders: ; 499fd (12:59fd) +MtMoon1TrainerHeader0: ; 499fd (12:59fd) + db $1 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7f5 ; flag's byte + dw MtMoon1BattleText2 ; 0x5a98 TextBeforeBattle + dw MtMoon1AfterBattleText2 ; 0x5aa2 TextAfterBattle + dw MtMoon1EndBattleText2 ; 0x5a9d TextEndBattle + dw MtMoon1EndBattleText2 ; 0x5a9d TextEndBattle + +MtMoon1TrainerHeader2: ; 49a09 (12:5a09) + db $2 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7f5 ; flag's byte + dw MtMoon1BattleText3 ; 0x5aa7 TextBeforeBattle + dw MtMoon1AfterBattleText3 ; 0x5ab1 TextAfterBattle + dw MtMoon1EndBattleText3 ; 0x5aac TextEndBattle + dw MtMoon1EndBattleText3 ; 0x5aac TextEndBattle + +MtMoon1TrainerHeader3: ; 49a15 (12:5a15) + db $3 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7f5 ; flag's byte + dw MtMoon1BattleText4 ; 0x5ab6 TextBeforeBattle + dw MtMoon1AfterBattleText4 ; 0x5ac0 TextAfterBattle + dw MtMoon1EndBattleText4 ; 0x5abb TextEndBattle + dw MtMoon1EndBattleText4 ; 0x5abb TextEndBattle + +MtMoon1TrainerHeader4: ; 49a21 (12:5a21) + db $4 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7f5 ; flag's byte + dw MtMoon1BattleText5 ; 0x5ac5 TextBeforeBattle + dw MtMoon1AfterBattleText5 ; 0x5acf TextAfterBattle + dw MtMoon1EndBattleText5 ; 0x5aca TextEndBattle + dw MtMoon1EndBattleText5 ; 0x5aca TextEndBattle + +MtMoon1TrainerHeader5: ; 49a2d (12:5a2d) + db $5 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7f5 ; flag's byte + dw MtMoon1BattleText6 ; 0x5ad4 TextBeforeBattle + dw MtMoon1AfterBattleText6 ; 0x5ade TextAfterBattle + dw MtMoon1EndBattleText6 ; 0x5ad9 TextEndBattle + dw MtMoon1EndBattleText6 ; 0x5ad9 TextEndBattle + +MtMoon1TrainerHeader6: ; 49a39 (12:5a39) + db $6 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7f5 ; flag's byte + dw MtMoon1BattleText7 ; 0x5ae3 TextBeforeBattle + dw MtMoon1AfterBattleText7 ; 0x5aed TextAfterBattle + dw MtMoon1EndBattleText7 ; 0x5ae8 TextEndBattle + dw MtMoon1EndBattleText7 ; 0x5ae8 TextEndBattle + +MtMoon1TrainerHeader7: ; 49a45 (12:5a45) + db $7 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7f5 ; flag's byte + dw MtMoon1BattleText8 ; 0x5af2 TextBeforeBattle + dw MtMoon1AfterBattleText8 ; 0x5afc TextAfterBattle + dw MtMoon1EndBattleText8 ; 0x5af7 TextEndBattle + dw MtMoon1EndBattleText8 ; 0x5af7 TextEndBattle + + db $ff + +MtMoon1Text1: ; 49a52 (12:5a52) + db $08 ; asm + ld hl, MtMoon1TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +MtMoon1Text2: ; 49a5c (12:5a5c) + db $08 ; asm + ld hl, MtMoon1TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +MtMoon1Text3: ; 49a66 (12:5a66) + db $08 ; asm + ld hl, MtMoon1TrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +MtMoon1Text4: ; 49a70 (12:5a70) + db $08 ; asm + ld hl, MtMoon1TrainerHeader4 + call TalkToTrainer + jp TextScriptEnd + +MtMoon1Text5: ; 49a7a (12:5a7a) + db $08 ; asm + ld hl, MtMoon1TrainerHeader5 + call TalkToTrainer + jp TextScriptEnd + +MtMoon1Text6: ; 49a84 (12:5a84) + db $08 ; asm + ld hl, MtMoon1TrainerHeader6 + call TalkToTrainer + jp TextScriptEnd + +MtMoon1Text7: ; 49a8e (12:5a8e) + db $08 ; asm + ld hl, MtMoon1TrainerHeader7 + call TalkToTrainer + jp TextScriptEnd + +MtMoon1BattleText2: ; 49a98 (12:5a98) + TX_FAR _MtMoon1BattleText2 + db "@" + +MtMoon1EndBattleText2: ; 49a9d (12:5a9d) + TX_FAR _MtMoon1EndBattleText2 + db "@" + +MtMoon1AfterBattleText2: ; 49aa2 (12:5aa2) + TX_FAR _MtMoon1AfterBattleText2 + db "@" + +MtMoon1BattleText3: ; 49aa7 (12:5aa7) + TX_FAR _MtMoon1BattleText3 + db "@" + +MtMoon1EndBattleText3: ; 49aac (12:5aac) + TX_FAR _MtMoon1EndBattleText3 + db "@" + +MtMoon1AfterBattleText3: ; 49ab1 (12:5ab1) + TX_FAR _MtMoon1AfterBattleText3 + db "@" + +MtMoon1BattleText4: ; 49ab6 (12:5ab6) + TX_FAR _MtMoon1BattleText4 + db "@" + +MtMoon1EndBattleText4: ; 49abb (12:5abb) + TX_FAR _MtMoon1EndBattleText4 + db "@" + +MtMoon1AfterBattleText4: ; 49ac0 (12:5ac0) + TX_FAR _MtMoon1AfterBattleText4 + db "@" + +MtMoon1BattleText5: ; 49ac5 (12:5ac5) + TX_FAR _MtMoon1BattleText5 + db "@" + +MtMoon1EndBattleText5: ; 49aca (12:5aca) + TX_FAR _MtMoon1EndBattleText5 + db "@" + +MtMoon1AfterBattleText5: ; 49acf (12:5acf) + TX_FAR _MtMoon1AfterBattleText5 + db "@" + +MtMoon1BattleText6: ; 49ad4 (12:5ad4) + TX_FAR _MtMoon1BattleText6 + db "@" + +MtMoon1EndBattleText6: ; 49ad9 (12:5ad9) + TX_FAR _MtMoon1EndBattleText6 + db "@" + +MtMoon1AfterBattleText6: ; 49ade (12:5ade) + TX_FAR _MtMoon1AfterBattleText6 + db "@" + +MtMoon1BattleText7: ; 49ae3 (12:5ae3) + TX_FAR _MtMoon1BattleText7 + db "@" + +MtMoon1EndBattleText7: ; 49ae8 (12:5ae8) + TX_FAR _MtMoon1EndBattleText7 + db "@" + +MtMoon1AfterBattleText7: ; 49aed (12:5aed) + TX_FAR _MtMoon1AfterBattleText7 + db "@" + +MtMoon1BattleText8: ; 49af2 (12:5af2) + TX_FAR _MtMoon1BattleText8 + db "@" + +MtMoon1EndBattleText8: ; 49af7 (12:5af7) + TX_FAR _MtMoon1EndBattleText8 + db "@" + +MtMoon1AfterBattleText8: ; 49afc (12:5afc) + TX_FAR _MtMoon1AfterBattleText8 + db "@" + +MtMoon1Text14: ; 49b01 (12:5b01) + TX_FAR _MtMoon1Text14 + db "@" diff --git a/scripts/mtmoon2.asm b/scripts/mtmoon2.asm new file mode 100755 index 00000000..03e9d9cb --- /dev/null +++ b/scripts/mtmoon2.asm @@ -0,0 +1,10 @@ +MtMoon2Script: ; 51a42 (14:5a42) + call EnableAutoTextBoxDrawing + ret + +MtMoon2TextPointers: ; 51a46 (14:5a46) + dw MtMoonText1 + +MtMoonText1: ; 51a48 (14:5a48) + TX_FAR _MtMoonText1 + db "@" diff --git a/scripts/mtmoon3.asm b/scripts/mtmoon3.asm new file mode 100755 index 00000000..669d6fe4 --- /dev/null +++ b/scripts/mtmoon3.asm @@ -0,0 +1,414 @@ +MtMoon3Script: ; 49d0b (12:5d0b) + call EnableAutoTextBoxDrawing + ld hl, MtMoon3TrainerHeader0 ; $5e48 + ld de, MtMoon3ScriptPointers + ld a, [W_MTMOON3CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_MTMOON3CURSCRIPT], a + ld a, [$d7f6] + bit 1, a + ret z + ld hl, CoordsData_49d37 + call ArePlayerCoordsInArray + jr nc, .asm_49d31 ; 0x49d29 $6 + ld hl, $d72e + set 4, [hl] + ret +.asm_49d31 + ld hl, $d72e + res 4, [hl] + ret + +CoordsData_49d37: ; 49d37 (12:5d37) + db $05,$0B + db $05,$0C + db $05,$0D + db $05,$0E + db $06,$0B + db $06,$0C + db $06,$0D + db $06,$0E + db $07,$0B + db $07,$0C + db $07,$0D + db $07,$0E + db $08,$0B + db $08,$0C + db $08,$0D + db $08,$0E + db $FF + +MtMoon3Script_49d58: ; 49d58 (12:5d58) + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [W_MTMOON3CURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +MtMoon3ScriptPointers: ; 49d63 (12:5d63) + dw MtMoon3Script0 + dw Func_324c + dw EndTrainerBattle + dw MtMoon3Script3 + dw MtMoon3Script4 + dw MtMoon3Script5 + +MtMoon3Script0: ; 49d6f (12:5d6f) + ld a, [$d7f6] + bit 1, a + jp nz, MtMoon3Script_49d91 + ld a, [W_YCOORD] ; $d361 + cp $8 + jp nz, MtMoon3Script_49d91 + ld a, [W_XCOORD] ; $d362 + cp $d + jp nz, MtMoon3Script_49d91 + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + ld a, $1 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + jp DisplayTextID + +MtMoon3Script_49d91: ; 49d91 (12:5d91) + ld a, [$d7f6] + and $c0 + jp z, CheckFightingMapTrainers + ret + +MtMoon3Script3: ; 49d9a (12:5d9a) + ld a, [W_ISINBATTLE] ; $d057 + cp $ff + jp z, MtMoon3Script_49d58 + call UpdateSprites + call Delay3 + ld hl, $d7f6 + set 1, [hl] + xor a + ld [wJoypadForbiddenButtonsMask], a + ld a, $0 + ld [W_MTMOON3CURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +MtMoon3Script4: ; 49dba (12:5dba) + ld a, $1 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call SetSpriteMovementBytesToFF + ld hl, CoordsData_49dea + call ArePlayerCoordsInArray + jr c, .asm_49dd7 + ld hl, CoordsData_49df1 + call ArePlayerCoordsInArray + jp nc, CheckFightingMapTrainers + ld de, MovementData_49df9 + jr .asm_49dda +.asm_49dd7 + ld de, MovementData_49df8 +.asm_49dda + ld a, $1 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call MoveSprite + ld a, $5 + ld [W_MTMOON3CURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +CoordsData_49dea: ; 49dea (12:5dea) + db $07,$0C + db $06,$0B + db $05,$0C + db $FF + +CoordsData_49df1: ; 49df1 (12:5df1) + db $07,$0D + db $06,$0E + db $05,$0E + db $FF + +MovementData_49df8: ; 49df8 (12:5df8) + db $C0 + +MovementData_49df9: ; 49df9 (12:5df9) + db $40,$FF + +MtMoon3Script5: ; 49dfb (12:5dfb) + ld a, [$d730] + bit 0, a + ret nz + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + ld a, $1 + ld [$cc3c], a + ld a, $a + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + ld a, [$d7f6] + bit 6, a + jr z, .asm_49e1d + ld a, $6e + jr .asm_49e1f +.asm_49e1d + ld a, $6d +.asm_49e1f + ld [$cc4d], a + ld a, $11 + call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7)) + xor a + ld [wJoypadForbiddenButtonsMask], a + ld a, $0 + ld [W_MTMOON3CURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +MtMoon3TextPointers: ; 49e34 (12:5e34) + dw MtMoon3Text1 + dw MtMoon3Text2 + dw MtMoon3Text3 + dw MtMoon3Text4 + dw MtMoon3Text5 + dw MtMoon3Text6 + dw MtMoon3Text7 + dw Predef5CText + dw Predef5CText + dw MtMoon3Text_49f99 + +MtMoon3TrainerHeaders: ; 49e48 (12:5e48) +MtMoon3TrainerHeader0: ; 49e48 (12:5e48) + db $2 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7f6 ; flag's byte + dw MtMoon3BattleText2 ; 0x5f9f TextBeforeBattle + dw MtMoon3AfterBattleText2 ; 0x5fa9 TextAfterBattle + dw MtMoon3EndBattleText2 ; 0x5fa4 TextEndBattle + dw MtMoon3EndBattleText2 ; 0x5fa4 TextEndBattle + +MtMoon3TrainerHeader2: ; 49e54 (12:5e54) + db $3 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7f6 ; flag's byte + dw MtMoon3BattleText3 ; 0x5fae TextBeforeBattle + dw MtMoon3AfterBattleText3 ; 0x5fb8 TextAfterBattle + dw MtMoon3EndBattleText3 ; 0x5fb3 TextEndBattle + dw MtMoon3EndBattleText3 ; 0x5fb3 TextEndBattle + +MtMoon3TrainerHeader3: ; 49e60 (12:5e60) + db $4 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7f6 ; flag's byte + dw MtMoon3BattleText4 ; 0x5fbd TextBeforeBattle + dw MtMoon3AfterBattleText4 ; 0x5fc7 TextAfterBattle + dw MtMoon3EndBattleText4 ; 0x5fc2 TextEndBattle + dw MtMoon3EndBattleText4 ; 0x5fc2 TextEndBattle + +MtMoon3TrainerHeader4: ; 49e6c (12:5e6c) + db $5 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7f6 ; flag's byte + dw MtMoon3BattleText5 ; 0x5fcc TextBeforeBattle + dw MtMoon3AfterBattleText5 ; 0x5fd6 TextAfterBattle + dw MtMoon3EndBattleText5 ; 0x5fd1 TextEndBattle + dw MtMoon3EndBattleText5 ; 0x5fd1 TextEndBattle + + db $ff + +MtMoon3Text1: ; 49e79 (12:5e79) + db $08 ; asm + ld a, [$d7f6] + bit 1, a + jr z, .asm_be1e0 ; 0x49e7f + and $c0 + jr nz, .asm_f8cd4 ; 0x49e83 + ld hl, MtMoon3Text_49f8f + call PrintText + jr .asm_f1fba ; 0x49e8b +.asm_be1e0 ; 0x49e8d + ld hl, MtMoon3Text_49f85 + call PrintText + ld hl, $d72d + set 6, [hl] + set 7, [hl] + ld hl, MtMoon3Text_49f8a + ld de, MtMoon3Text_49f8a + call PreBattleSaveRegisters + ldh a, [$8c] + ld [$cf13], a + call EngageMapTrainer + call InitBattleEnemyParameters + ld a, $3 + ld [W_MTMOON3CURSCRIPT], a + ld [W_CURMAPSCRIPT], a + jr .asm_f1fba ; 0x49eb6 +.asm_f8cd4 ; 0x49eb8 + ld hl, MtMoon3Text_49f94 + call PrintText +.asm_f1fba ; 0x49ebe + jp TextScriptEnd + +MtMoon3Text2: ; 49ec1 (12:5ec1) + db $08 ; asm + ld hl, MtMoon3TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +MtMoon3Text3: ; 49ecb (12:5ecb) + db $08 ; asm + ld hl, MtMoon3TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +MtMoon3Text4: ; 49ed5 (12:5ed5) + db $08 ; asm + ld hl, MtMoon3TrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +MtMoon3Text5: ; 49edf (12:5edf) + db $08 ; asm + ld hl, MtMoon3TrainerHeader4 ; $5e6c + call TalkToTrainer + jp TextScriptEnd + +MtMoon3Text6: ; 49ee9 (12:5ee9) + db $08 ; asm + ld a, $1 + ld [$cc3c], a + ld hl, MtMoon3Text_49f24 + call PrintText + call YesNoChoice + ld a, [$cc26] + and a + jr nz, .asm_1fa5e ; 0x49efc + ld bc,(DOME_FOSSIL << 8) | 1 + call GiveItem + jp nc, MtMoon3Script_49f76 + call MtMoon3Script_49f69 + ld a, $6d + ld [$cc4d], a + ld a, $11 + call Predef + ld hl, $d7f6 + set 6, [hl] + ld a, $4 + ld [W_MTMOON3CURSCRIPT], a + ld [W_CURMAPSCRIPT], a +.asm_1fa5e ; 0x49f21 + jp TextScriptEnd + +MtMoon3Text_49f24: ; 49f24 (12:5f24) + TX_FAR _MtMoon3Text_49f24 + db "@" + +MtMoon3Text7: ; 49f29 (12:5f29) + db $08 ; asm + ld a, $1 + ld [$cc3c], a + ld hl, MtMoon3Text_49f64 + call PrintText + call YesNoChoice + ld a, [$cc26] + and a + jr nz, .asm_8e988 ; 0x49f3c + ld bc, (HELIX_FOSSIL << 8) | 1 + call GiveItem + jp nc, MtMoon3Script_49f76 + call MtMoon3Script_49f69 + ld a, $6e + ld [$cc4d], a + ld a, $11 + call Predef + ld hl, $d7f6 + set 7, [hl] + ld a, $4 + ld [W_MTMOON3CURSCRIPT], a + ld [W_CURMAPSCRIPT], a +.asm_8e988 ; 0x49f61 + jp TextScriptEnd + +MtMoon3Text_49f64: ; 49f64 (12:5f64) + TX_FAR _MtMoon3Text_49f64 + db "@" + +MtMoon3Script_49f69: ; 49f69 (12:5f69) + ld hl, MtMoon3Text_49f6f + jp PrintText + +MtMoon3Text_49f6f: ; 49f6f (12:5f6f) + TX_FAR _MtMoon3Text_49f6f ; 0x80995 + db $11, $d, "@" + +MtMoon3Script_49f76: ; 49f76 (12:5f76) + ld hl, MtMoon3Text_49f7f + call PrintText + jp TextScriptEnd + +MtMoon3Text_49f7f: ; 49f7f (12:5f7f) + TX_FAR _MtMoon3Text_49f7f ; 0x809a8 + db $d, "@" + +MtMoon3Text_49f85: ; 49f85 (12:5f85) + TX_FAR _MtMoon3Text_49f85 + db "@" + +MtMoon3Text_49f8a: ; 49f8a (12:5f8a) + TX_FAR _MtMoon3Text_49f8a + db "@" + +MtMoon3Text_49f8f: ; 49f8f (12:5f8f) + TX_FAR _MtMoon3Text_49f8f + db "@" + +MtMoon3Text_49f94: ; 49f94 (12:5f94) + TX_FAR _MtMoon3Text_49f94 + db "@" + +MtMoon3Text_49f99: ; 49f99 (12:5f99) + TX_FAR _MtMoon3Text_49f99 + db $11, "@" + +MtMoon3BattleText2: ; 49f9f (12:5f9f) + TX_FAR _MtMoon3BattleText2 + db "@" + +MtMoon3EndBattleText2: ; 49fa4 (12:5fa4) + TX_FAR _MtMoon3EndBattleText2 + db "@" + +MtMoon3AfterBattleText2: ; 49fa9 (12:5fa9) + TX_FAR _MtMoon3AfterBattleText2 + db "@" + +MtMoon3BattleText3: ; 49fae (12:5fae) + TX_FAR _MtMoon3BattleText3 + db "@" + +MtMoon3EndBattleText3: ; 49fb3 (12:5fb3) + TX_FAR _MtMoon3EndBattleText3 + db "@" + +MtMoon3AfterBattleText3: ; 49fb8 (12:5fb8) + TX_FAR _MtMoon3AfterBattleText3 + db "@" + +MtMoon3BattleText4: ; 49fbd (12:5fbd) + TX_FAR _MtMoon3BattleText4 + db "@" + +MtMoon3EndBattleText4: ; 49fc2 (12:5fc2) + TX_FAR _MtMoon3EndBattleText4 + db "@" + +MtMoon3AfterBattleText4: ; 49fc7 (12:5fc7) + TX_FAR _MtMoon3AfterBattleText4 + db "@" + +MtMoon3BattleText5: ; 49fcc (12:5fcc) + TX_FAR _MtMoon3BattleText5 + db "@" + +MtMoon3EndBattleText5: ; 49fd1 (12:5fd1) + TX_FAR _MtMoon3EndBattleText5 + db "@" + +MtMoon3AfterBattleText5: ; 49fd6 (12:5fd6) + TX_FAR _MtMoon3AfterBattleText5 + db "@" diff --git a/scripts/mtmoonpokecenter.asm b/scripts/mtmoonpokecenter.asm new file mode 100755 index 00000000..01272c30 --- /dev/null +++ b/scripts/mtmoonpokecenter.asm @@ -0,0 +1,97 @@ +MtMoonPokecenterScript: ; 492cf (12:52cf) + call Func_22fa + jp EnableAutoTextBoxDrawing + +MtMoonPokecenterTextPointers: ; 492d5 (12:52d5) + dw MtMoonPokecenterText1 + dw MtMoonPokecenterText2 + dw MtMoonPokecenterText3 + dw MtMoonPokecenterText4 + dw MtMoonPokecenterText5 + dw MtMoonPokecenterText6 + +MtMoonPokecenterText1: ; 492e1 (12:52e1) + db $ff + +MtMoonPokecenterText2: ; 492e2 (12:52e2) + TX_FAR _MtMoonPokecenterText1 + db "@" + +MtMoonPokecenterText3: ; 492e7 (12:52e7) + TX_FAR _MtMoonPokecenterText3 + db "@" + +MtMoonPokecenterText4: ; 492ec (12:52ec) + db $08 ; asm + ld a, [$d7c6] + add a + jp c, .asm_49353 + ld hl, MtMoonPokecenterText_4935c + call PrintText + ld a, $13 + ld [$d125], a + call DisplayTextBoxID + call YesNoChoice + ld a, [$cc26] + and a + jp nz, .asm_4934e + ldh [$9f], a + ldh [$a1], a + ld a, $5 + ldh [$a0], a + call HasEnoughMoney + jr nc, .asm_faa09 ; 0x49317 + ld hl, MtMoonPokecenterText_49366 + jr .asm_49356 ; 0x4931c +.asm_faa09 ; 0x4931e + ld bc,(MAGIKARP << 8) | 5 + call GivePokemon + jr nc, .asm_49359 ; 0x49324 + xor a + ld [wWhichTrade], a + ld [$cd3f], a + ld a, $5 + ld [$cd3e], a + ld hl, $cd3f + ld de, $d349 + ld c, $3 + ld a, $c + call Predef + ld a, $13 + ld [$d125], a + call DisplayTextBoxID + ld hl, $d7c6 + set 7, [hl] + jr .asm_49359 ; 0x4934c +.asm_4934e ; 0x4934e + ld hl, MtMoonPokecenterText_49361 + jr .asm_49356 ; 0x49351 +.asm_49353 ; 0x49353 + ld hl, MtMoonPokecenterText_4936b +.asm_49356 ; 0x49356 + call PrintText +.asm_49359 ; 0x49359 + jp TextScriptEnd + +MtMoonPokecenterText_4935c: ; 4935c (12:535c) + TX_FAR _MtMoonPokecenterText_4935c + db "@" + +MtMoonPokecenterText_49361: ; 49361 (12:5361) + TX_FAR _MtMoonPokecenterText_49361 + db "@" + +MtMoonPokecenterText_49366: ; 49366 (12:5366) + TX_FAR _MtMoonPokecenterText_49366 + db "@" + +MtMoonPokecenterText_4936b: ; 4936b (12:536b) + TX_FAR _MtMoonPokecenterText_4936b + db "@" + +MtMoonPokecenterText5: ; 49370 (12:5370) + TX_FAR _MtMoonPokecenterText5 + db "@" + +MtMoonPokecenterText6: ; 49375 (12:5375) + db $f6 diff --git a/scripts/museum1f.asm b/scripts/museum1f.asm new file mode 100755 index 00000000..04261346 --- /dev/null +++ b/scripts/museum1f.asm @@ -0,0 +1,253 @@ +Museum1FScript: ; 5c0f7 (17:40f7) + ld a, $1 + ld [$cf0c], a + xor a + ld [$cc3c], a + ld hl, Museum1FScriptPointers + ld a, [W_MUSEUM1FCURSCRIPT] + jp CallFunctionInTable + +Museum1FScriptPointers: ; 5c109 (17:4109) + dw Museum1FScript0 + dw Museum1FScript1 + +Museum1FScript0: ; 5c10d (17:410d) + ld a, [W_YCOORD] + cp $4 + ret nz + ld a, [W_XCOORD] + cp $9 + jr z, .asm_5c120 ; 0x5c118 $6 + ld a, [W_XCOORD] + cp $a + ret nz +.asm_5c120 + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + ld a, $1 + ld [$ff8c], a + jp DisplayTextID + +Museum1FScript1: ; 5c12a (17:412a) + ret + +Museum1FTextPointers: ; 5c12b (17:412b) + dw Museum1FText1 + dw Museum1FText2 + dw Museum1FText3 + dw Museum1FText4 + dw Museum1FText5 + +Museum1FText1: ; 5c135 (17:4135) + db $8 + ld a, [W_YCOORD] + cp $4 + jr nz, .asm_8774b + ld a, [W_XCOORD] + cp $d + jp z, Museum1FScript_5c1f9 + jr .asm_b8709 +.asm_8774b + cp $3 + jr nz, .asm_d49e7 + ld a, [W_XCOORD] + cp $c + jp z, Museum1FScript_5c1f9 +.asm_d49e7 + ld a, [$d754] + bit 0, a + jr nz, .asm_31a16 + ld hl, Museum1FText_5c23d + call PrintText + jp asm_d1145 +.asm_b8709 + ld a, [$d754] + bit 0, a + jr z, .asm_3ded4 +.asm_31a16 + ld hl, Museum1FText_5c242 + call PrintText + jp asm_d1145 +.asm_3ded4 + ld a, $13 + ld [$d125], a + call DisplayTextBoxID + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + ld hl, Museum1FText_5c21f + call PrintText + call YesNoChoice + ld a, [$cc26] + and a + jr nz, .asm_de133 + xor a + ld [$ff9f], a + ld [$ffa0], a + ld a, $50 + ld [$ffa1], a + call HasEnoughMoney + jr nc, .asm_0f3e3 + ld hl, Museum1FText_5c229 + call PrintText + jp .asm_de133 +.asm_0f3e3 + ld hl, Museum1FText_5c224 + call PrintText + ld hl, $d754 + set 0, [hl] + xor a + ld [$cd3d], a + ld [$cd3e], a + ld a, $50 + ld [$cd3f], a + ld hl, $cd3f + ld de, $d349 + ld c, $3 + ld a, $c + call Predef + ld a, $13 + ld [$d125], a + call DisplayTextBoxID + ld a, (SFX_02_5a - SFX_Headers_02) / 3 + call PlaySoundWaitForCurrent + call WaitForSoundToFinish + jr .asm_0b094 +.asm_de133 + ld hl, Museum1FText_5c21a ; $421a + call PrintText + ld a, $1 + ld [$cd38], a + ld a, $80 + ld [$ccd3], a + call Func_3486 + call UpdateSprites + jr asm_d1145 +.asm_0b094 + ld a, $1 + ld [W_MUSEUM1FCURSCRIPT], a + jr asm_d1145 + +Museum1FScript_5c1f9: ; 5c1f9 (17:41f9) + ld hl, Museum1FText_5c22e + call PrintText + call YesNoChoice + ld a, [$cc26] + cp $0 + jr nz, .asm_d1144 + ld hl, Museum1FText_5c233 + call PrintText + jr asm_d1145 +.asm_d1144 + ld hl, Museum1FText_5c238 + call PrintText +asm_d1145: ; 5c217 (17:4217) + jp TextScriptEnd + +Museum1FText_5c21a: ; 5c21a (17:421a) + TX_FAR _Museum1FText_5c21a + db "@" + +Museum1FText_5c21f: ; 5c21f (17:421f) + TX_FAR _Museum1FText_5c21f + db "@" + +Museum1FText_5c224: ; 5c224 (17:4224) + TX_FAR _Museum1FText_5c224 + db "@" + +Museum1FText_5c229: ; 5c229 (17:4229) + TX_FAR _Museum1FText_5c229 + db "@" + +Museum1FText_5c22e: ; 5c22e (17:422e) + TX_FAR _Museum1FText_5c22e + db "@" + +Museum1FText_5c233: ; 5c233 (17:4233) + TX_FAR _Museum1FText_5c233 + db "@" + +Museum1FText_5c238: ; 5c238 (17:4238) + TX_FAR _Museum1FText_5c238 + db "@" + +Museum1FText_5c23d: ; 5c23d (17:423d) + TX_FAR _Museum1FText_5c23d + db "@" + +Museum1FText_5c242: ; 5c242 (17:4242) + TX_FAR _Museum1FText_5c242 + db "@" + +Museum1FText2: ; 5c247 (17:4247) + db $08 ; asm + ld hl, Museum1FText_5c251 + call PrintText + jp TextScriptEnd + +Museum1FText_5c251: ; 5c251 (17:4251) + TX_FAR _Museum1FText_5c251 + db "@" + +Museum1FText3: ; 5c256 (17:4256) + db $08 ; asm + ld a, [$d754] + bit 1, a + jr nz, .asm_16599 ; 0x5c25c + ld hl, Museum1FText_5c28e + call PrintText + ld bc, (OLD_AMBER << 8) | 1 + call GiveItem + jr nc, .BagFull + ld hl, $d754 + set 1, [hl] + ld a, $34 + ld [$cc4d], a + ld a, $11 + call Predef + ld hl, ReceivedOldAmberText + jr .asm_52e0f ; 0x5c27e +.BagFull + ld hl, Museum1FText_5c29e + jr .asm_52e0f ; 0x5c283 +.asm_16599 ; 0x5c285 + ld hl, Museum1FText_5c299 +.asm_52e0f ; 0x5c288 + call PrintText + jp TextScriptEnd + +Museum1FText_5c28e: ; 5c28e (17:428e) + TX_FAR _Museum1FText_5c28e + db "@" + +ReceivedOldAmberText: ; 5c293 (17:4293) + TX_FAR _ReceivedOldAmberText + db $0B, "@" + +Museum1FText_5c299: ; 5c299 (17:4299) + TX_FAR _Museum1FText_5c299 + db "@" + +Museum1FText_5c29e: ; 5c29e (17:429e) + TX_FAR _Museum1FText_5c29e + db "@" + +Museum1FText4: ; 5c2a3 (17:42a3) + db $08 ; asm + ld hl, Museum1FText_5c2ad + call PrintText + jp TextScriptEnd + +Museum1FText_5c2ad: ; 5c2ad (17:42ad) + TX_FAR _Museum1FText_5c2ad + db "@" + +Museum1FText5: ; 5c2b2 (17:42b2) + db $08 ; asm + ld hl, Museum1FText_5c2bc + call PrintText + jp TextScriptEnd + +Museum1FText_5c2bc: ; 5c2bc (17:42bc) + TX_FAR _Museum1FText_5c2bc + db "@" diff --git a/scripts/museum2f.asm b/scripts/museum2f.asm new file mode 100755 index 00000000..0f8a63ec --- /dev/null +++ b/scripts/museum2f.asm @@ -0,0 +1,39 @@ +Museum2FScript: ; 5c317 (17:4317) + jp EnableAutoTextBoxDrawing + +Museum2FTextPointers: ; 5c31a (17:431a) + dw Museum2FText1 + dw Museum2FText2 + dw Museum2FText3 + dw Museum2FText4 + dw Museum2FText5 + dw Museum2FText6 + dw Museum2FText7 + +Museum2FText1: ; 5c328 (17:4328) + TX_FAR _Museum2FText1 + db "@" + +Museum2FText2: ; 5c32d (17:432d) + TX_FAR _Museum2FText2 + db "@" + +Museum2FText3: ; 5c332 (17:4332) + TX_FAR _Museum2FText3 + db "@" + +Museum2FText4: ; 5c337 (17:4337) + TX_FAR _Museum2FText4 + db "@" + +Museum2FText5: ; 5c33c (17:433c) + TX_FAR _Museum2FText5 + db "@" + +Museum2FText6: ; 5c341 (17:4341) + TX_FAR _Museum2FText6 + db "@" + +Museum2FText7: ; 5c346 (17:4346) + TX_FAR _Museum2FText7 + db "@" diff --git a/scripts/namerater.asm b/scripts/namerater.asm new file mode 100755 index 00000000..6e927667 --- /dev/null +++ b/scripts/namerater.asm @@ -0,0 +1,107 @@ +NameRaterScript: ; 1da12 (7:5a12) + jp EnableAutoTextBoxDrawing + +NameRaterScript_1da15: ; 1da15 (7:5a15) + call PrintText + call YesNoChoice + ld a, [$cc26] + and a + ret + +NameRaterScript_1da20: ; 1da20 (7:5a20) + ld hl, W_PARTYMON1OT + ld bc, $000b + ld a, [wWhichPokemon] + call AddNTimes + ld de, W_PLAYERNAME + ld c, $b + call .asm_1da47 + jr c, .asm_1da52 ; 0x1da34 $1c + ld hl, $d177 + ld bc, $002c + ld a, [wWhichPokemon] + call AddNTimes + ld de, $d359 + ld c, $2 +.asm_1da47 + ld a, [de] + cp [hl] + jr nz, .asm_1da52 ; 0x1da49 $7 + inc hl + inc de + dec c + jr nz, .asm_1da47 ; 0x1da4e $f7 + and a + ret +.asm_1da52 + scf + ret + +NameRaterTextPointers: ; 1da54 (7:5a54) + dw NameRaterText1 + +NameRaterText1: ; 1da56 (7:5a56) + db $8 + call SaveScreenTilesToBuffer2 + ld hl, NameRaterText_1dab3 + call NameRaterScript_1da15 + jr nz, .asm_1daae ; 0x1da60 $4c + ld hl, NameRaterText_1dab8 + call PrintText + xor a + ld [$d07d], a + ld [$cfcb], a + ld [$cc35], a + call DisplayPartyMenu + push af + call GBPalWhiteOutWithDelay3 + call Func_3dbe + call LoadGBPal + pop af + jr c, .asm_1daae ; 0x1da80 $2c + call GetPartyMonName2 + call NameRaterScript_1da20 + ld hl, NameRaterText_1dad1 + jr c, .asm_1daa8 ; 0x1da8b $1b + ld hl, NameRaterText_1dabd + call NameRaterScript_1da15 + jr nz, .asm_1daae ; 0x1da93 $19 + ld hl, NameRaterText_1dac2 + call PrintText + callba Func_655c + jr c, .asm_1daae ; 0x1daa3 $9 + ld hl, NameRaterText_1dac7 +.asm_1daa8 + call PrintText + jp TextScriptEnd +.asm_1daae + ld hl, NameRaterText_1dacc + jr .asm_1daa8 ; 0x1dab1 $f5 + +NameRaterText_1dab3: ; 1dab3 (7:5ab3) + TX_FAR _NameRaterText_1dab3 + db "@" + +NameRaterText_1dab8: ; 1dab8 (7:5ab8) + TX_FAR _NameRaterText_1dab8 + db "@" + +NameRaterText_1dabd: ; 1dabd (7:5abd) + TX_FAR _NameRaterText_1dabd + db "@" + +NameRaterText_1dac2: ; 1dac2 (7:5ac2) + TX_FAR _NameRaterText_1dac2 + db "@" + +NameRaterText_1dac7: ; 1dac7 (7:5ac7) + TX_FAR _NameRaterText_1dac7 + db "@" + +NameRaterText_1dacc: ; 1dacc (7:5acc) + TX_FAR _NameRaterText_1dacc + db "@" + +NameRaterText_1dad1: ; 1dad1 (7:5ad1) + TX_FAR _NameRaterText_1dad1 + db "@" diff --git a/scripts/oakslab.asm b/scripts/oakslab.asm new file mode 100755 index 00000000..427b1aa5 --- /dev/null +++ b/scripts/oakslab.asm @@ -0,0 +1,1238 @@ +OaksLabScript: ; 1cb0e (7:4b0e) + ld a, [$d74b] + bit 6, a + call nz, OaksLabScript_1d076 + ld a, $1 + ld [$cf0c], a + xor a + ld [$cc3c], a + ld hl, OaksLabScriptPointers + ld a, [W_OAKSLABCURSCRIPT] + jp CallFunctionInTable + +OaksLabScriptPointers: ; 1cb28 (7:4b28) + dw OaksLabScript0 + dw OaksLabScript1 + dw OaksLabScript2 + dw OaksLabScript3 + dw OaksLabScript4 + dw OaksLabScript5 + dw OaksLabScript6 + dw OaksLabScript7 + dw OaksLabScript8 + dw OaksLabScript9 + dw OaksLabScript10 + dw OaksLabScript11 + dw OaksLabScript12 + dw OaksLabScript13 + dw OaksLabScript14 + dw OaksLabScript15 + dw OaksLabScript16 + dw OaksLabScript17 + dw OaksLabScript18 + +OaksLabScript0: ; 1cb4e (7:4b4e) + ld a, [$d74b] + bit 7, a + ret z + ld a, [$cf10] + and a + ret nz + ld a, $31 + ld [$cc4d], a + ld a, $15 + call Predef + ld hl, $d72e + res 4, [hl] + + ld a, $1 + ld [W_OAKSLABCURSCRIPT], a + ret + +OaksLabScript1: ; 1cb6e (7:4b6e) + ld a, $8 + ld [$ff8c], a + ld de, OakEntryMovement + call MoveSprite + + ld a, $2 + ld [W_OAKSLABCURSCRIPT], a + ret + +OakEntryMovement: ; 1cb7e (7:4b7e) + db $40,$40,$40,$FF + +OaksLabScript2: ; 1cb82 (7:4b82) + ld a, [$d730] + bit 0, a + ret nz + ld a, $31 + ld [$cc4d], a + ld a, $11 + call Predef + ld a, $2e + ld [$cc4d], a + ld a, $15 + call Predef + + ld a, $3 + ld [W_OAKSLABCURSCRIPT], a + ret + +OaksLabScript3: ; 1cba2 (7:4ba2) + call Delay3 + ld hl, $ccd3 + ld de, PlayerEntryMovementRLE + call DecodeRLEList + dec a + ld [$cd38], a + call Func_3486 + ld a, $1 + ld [$ff8c], a + xor a + ld [$ff8d], a + call Func_34a6 ; face object + ld a, $5 + ld [$ff8c], a + xor a + ld [$ff8d], a + call Func_34a6 ; face object + + ld a, $4 + ld [W_OAKSLABCURSCRIPT], a + ret + +PlayerEntryMovementRLE: ; 1cbcf (7:4bcf) + db $40, $8, $ff + +OaksLabScript4: ; 1cbd2 (7:4bd2) + ld a, [$cd38] + and a + ret nz + ld hl, $d747 + set 0, [hl] + ld hl, $d74b + set 0, [hl] + ld a, $1 + ld [$ff8c], a + ld a, $4 + ld [$ff8d], a + call Func_34a6 ; face object + call UpdateSprites + ld hl, W_FLAGS_D733 + res 1, [hl] + call Func_2307 + + ld a, $5 + ld [W_OAKSLABCURSCRIPT], a + ret + +OaksLabScript5: ; 1cbfd (7:4bfd) + ld a, $fc + ld [wJoypadForbiddenButtonsMask], a + ld a, $11 + ld [$ff8c], a + call DisplayTextID + call Delay3 + ld a, $12 + ld [$ff8c], a + call DisplayTextID + call Delay3 + ld a, $13 + ld [$ff8c], a + call DisplayTextID + call Delay3 + ld a, $14 + ld [$ff8c], a + call DisplayTextID + ld hl, $d74b + set 1, [hl] + xor a + ld [wJoypadForbiddenButtonsMask], a + + ld a, $6 + ld [W_OAKSLABCURSCRIPT], a + ret + +OaksLabScript6: ; 1cc36 (7:4c36) + ld a, [W_YCOORD] + cp $6 + ret nz + ld a, $5 + ld [$ff8c], a + xor a + ld [$ff8d], a + call Func_34a6 ; face object + ld a, $1 + ld [$ff8c], a + xor a + ld [$ff8d], a + call Func_34a6 ; face object + call UpdateSprites + ld a, $c + ld [$ff8c], a + call DisplayTextID + ld a, $1 + ld [$cd38], a + ld a, $40 + ld [$ccd3], a + call Func_3486 + ld a, $8 + ld [$d528], a + + ld a, $7 + ld [W_OAKSLABCURSCRIPT], a + ret + +OaksLabScript7: ; 1cc72 (7:4c72) + ld a, [$cd38] + and a + ret nz + call Delay3 + + ld a, $6 + ld [W_OAKSLABCURSCRIPT], a + ret + +OaksLabScript8: ; 1cc80 (7:4c80) + ld a, [W_PLAYERSTARTER] + cp CHARMANDER + jr z, .Charmander ; 0x1cc85 $6 + cp SQUIRTLE + jr z, .Squirtle ; 0x1cc89 $1d + jr .Bulbasaur ; 0x1cc8b $38 +.Charmander + ld de, .MiddleBallMovement1 + ld a, [W_YCOORD] + cp $4 ; is the player standing below the table? + jr z, .asm_1ccf3 ; 0x1cc95 $5c + ld de, .MiddleBallMovement2 + jr .asm_1ccf3 ; 0x1cc9a $57 + +.MiddleBallMovement1 + db 0,0,$C0,$C0,$C0,$40,$FF +.MiddleBallMovement2 + db 0,$C0,$C0,$C0,$FF + +.Squirtle + ld de, .RightBallMovement1 + ld a, [W_YCOORD] + cp $4 ; is the player standing below the table? + jr z, .asm_1ccf3 ; 0x1ccb0 $41 + ld de, .RightBallMovement2 + jr .asm_1ccf3 ; 0x1ccb5 $3c + +.RightBallMovement1 + db 0,0,$C0,$C0,$C0,$C0,$40,$FF +.RightBallMovement2 + db 0,$C0,$C0,$C0,$C0,$FF + +.Bulbasaur + ld de, .LeftBallMovement1 + ld a, [W_XCOORD] + cp $9 ; is the player standing to the right of the table? + jr nz, .asm_1ccf3 ; 0x1cccd $24 + push hl + ld a, $1 + ld [$ff8c], a + ld a, $4 + ld [$ff8b], a + call Func_34fc + push hl + ld [hl], $4c + inc hl + inc hl + ld [hl], $0 + pop hl + inc h + ld [hl], $8 + inc hl + ld [hl], $9 + ld de, .LeftBallMovement2 ; the rival is not currently onscreen, so account for that + pop hl + jr .asm_1ccf3 ; 0x1cced $4 + +.LeftBallMovement1 + db $00,$C0 ; not yet terminated! +.LeftBallMovement2 + db $C0,$FF + +.asm_1ccf3 + ld a, $1 + ld [$ff8c], a + call MoveSprite + + ld a, $9 + ld [W_OAKSLABCURSCRIPT], a + ret + +OaksLabScript9: ; 1cd00 (7:4d00) + ld a, [$d730] + bit 0, a + ret nz + ld a, $fc + ld [wJoypadForbiddenButtonsMask], a + ld a, $1 + ld [$ff8c], a + ld a, $4 + ld [$ff8d], a + call Func_34a6 ; face object + ld a, $d + ld [$ff8c], a + call DisplayTextID + ld a, [$cd3e] + cp $2 + jr nz, .asm_1cd28 ; 0x1cd22 $4 + ld a, $2b + jr .asm_1cd32 ; 0x1cd26 $a +.asm_1cd28 + cp $3 + jr nz, .asm_1cd30 ; 0x1cd2a $4 + ld a, $2c + jr .asm_1cd32 ; 0x1cd2e $2 +.asm_1cd30 + ld a, $2d +.asm_1cd32 + ld [$cc4d], a + ld a, $11 + call Predef + call Delay3 + ld a, [$cd3d] + ld [W_RIVALSTARTER], a + ld [$cf91], a + ld [$d11e], a + call GetMonName + ld a, $1 + ld [$ff8c], a + ld a, $4 + ld [$ff8d], a + call Func_34a6 ; face object + ld a, $e + ld [$ff8c], a + call DisplayTextID + ld hl, $d74b + set 2, [hl] + xor a + ld [wJoypadForbiddenButtonsMask], a + + ld a, $a + ld [W_OAKSLABCURSCRIPT], a + ret + +OaksLabScript10: ; 1cd6d (7:4d6d) + ld a, [W_YCOORD] + cp $6 + ret nz + ld a, $1 + ld [$ff8c], a + xor a + ld [$ff8d], a + call Func_34a6 ; face object + ld a, $8 + ld [$d528], a + ld c, BANK(Music_MeetRival) + ld a, MUSIC_MEET_RIVAL + call PlayMusic ; play music + ld a, $f + ld [$ff8c], a + call DisplayTextID + ld a, $1 + ld [$ff9b], a + ld a, $1 + swap a + ld [$ff95], a + ld a, $22 + call Predef + ld a, [$ff95] + dec a + ld [$ff95], a + ld a, $20 + call Predef + ld de, $cc97 + ld a, $1 + ld [$ff8c], a + call MoveSprite + + ld a, $b + ld [W_OAKSLABCURSCRIPT], a + ret + +OaksLabScript11: ; 1cdb9 (7:4db9) + ld a, [$d730] + bit 0, a + ret nz + + ; define which team rival uses, and fight it + ld a, SONY1 + $C8 + ld [W_CUROPPONENT], a + ld a, [W_RIVALSTARTER] + cp SQUIRTLE + jr nz, .NotSquirtle ; 0x1cdc9 $4 + ld a, $1 + jr .done ; 0x1cdcd $a +.NotSquirtle + cp BULBASAUR + jr nz, .Charmander ; 0x1cdd1 $4 + ld a, $2 + jr .done ; 0x1cdd5 $2 +.Charmander + ld a, $3 +.done + ld [W_TRAINERNO], a + ld a, $1 + ld [$cf13], a + call Func_32ef + ld hl, OaksLabText_1d3be + ld de, OaksLabText_1d3c3 + call PreBattleSaveRegisters + ld hl, $d72d + set 6, [hl] + set 7, [hl] + xor a + ld [wJoypadForbiddenButtonsMask], a + ld a, $8 + ld [$d528], a + ld a, $c + ld [W_OAKSLABCURSCRIPT], a + ret + +OaksLabScript12: ; 1ce03 (7:4e03) + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + ld a, $8 + ld [$d528], a + call UpdateSprites + ld a, $1 + ld [$cf13], a + call Func_32f9 + ld a, $1 + ld [$ff8c], a + xor a + ld [$ff8d], a + call Func_34a6 ; face object + ld a, $7 + call Predef + ld hl, $d74b + set 3, [hl] + + ld a, $d + ld [W_OAKSLABCURSCRIPT], a + ret + +OaksLabScript13: ; 1ce32 (7:4e32) + ld c, $14 + call DelayFrames + ld a, $10 + ld [$ff8c], a + call DisplayTextID + callba Music_RivalAlternateStart + ld a, $1 + ld [$ff8c], a + ld de, .RivalExitMovement + call MoveSprite + ld a, [W_XCOORD] + cp $4 + ; move left or right depending on where the player is standing + jr nz, .asm_1ce5b ; 0x1ce55 $4 + ld a, $c0 + jr .asm_1ce5d ; 0x1ce59 $2 +.asm_1ce5b + ld a, $80 +.asm_1ce5d + ld [$cc5b], a + + ld a, $e + ld [W_OAKSLABCURSCRIPT], a + ret + +.RivalExitMovement + db $E0,$00,$00,$00,$00,$00,$FF + +OaksLabScript14: ; 1ce6d (7:4e6d) + ld a, [$d730] + bit 0, a + jr nz, .asm_1ce8c ; 0x1ce72 $18 + ld a, $2a + ld [$cc4d], a + ld a, $11 + call Predef + xor a + ld [wJoypadForbiddenButtonsMask], a + call Func_2307 ; reset to map music + ld a, $12 + ld [W_OAKSLABCURSCRIPT], a + jr .done ; 0x1ce8a $23 +.asm_1ce8c + ld a, [$cf0f] + cp $5 + jr nz, .asm_1cea8 ; 0x1ce91 $15 + ld a, [W_XCOORD] + cp $4 + jr nz, .asm_1cea1 ; 0x1ce98 $7 + ld a, $c + ld [$c109], a + jr .done ; 0x1ce9f $e +.asm_1cea1 + ld a, $8 + ld [$c109], a + jr .done ; 0x1cea6 $7 +.asm_1cea8 + cp $4 + ret nz + xor a + ld [$c109], a +.done + ret + +OaksLabScript15: ; 1ceb0 (7:4eb0) + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + call EnableAutoTextBoxDrawing + ld a, $ff + ld [$c0ee], a + call PlaySound + callba Music_RivalAlternateStart + ld a, $15 + ld [$ff8c], a + call DisplayTextID + call OaksLabScript_1d02b + ld a, $2a + ld [$cc4d], a + ld a, $15 + call Predef + ld a, [$cd37] + ld [$d157], a + ld b, $0 + ld c, a + ld hl, $cc97 + ld a, $40 + call FillMemory + ld [hl], $ff + ld a, $1 + ld [$ff8c], a + ld de, $cc97 + call MoveSprite + + ld a, $10 + ld [W_OAKSLABCURSCRIPT], a + ret + +OaksLabScript_1cefd ; 1cefd (7:4efd) + ld a, $1 + ld [$ff8c], a + ld a, $4 + ld [$ff8d], a + call Func_34a6 ; face object + ld a, $8 + ld [$ff8c], a + xor a + ld [$ff8d], a + jp Func_34a6 ; face object + +OaksLabScript16: ; 1cf12 (7:4f12) + ld a, [$d730] + bit 0, a + ret nz + call EnableAutoTextBoxDrawing + call Func_2307 + ld a, $fc + ld [wJoypadForbiddenButtonsMask], a + call OaksLabScript_1cefd + ld a, $16 + ld [$ff8c], a + call DisplayTextID + call DelayFrame + call OaksLabScript_1cefd + ld a, $17 + ld [$ff8c], a + call DisplayTextID + call DelayFrame + call OaksLabScript_1cefd + ld a, $18 + ld [$ff8c], a + call DisplayTextID + call DelayFrame + ld a, $19 + ld [$ff8c], a + call DisplayTextID + call Delay3 + ld a, $2f + ld [$cc4d], a + ld a, $11 + call Predef + ld a, $30 + ld [$cc4d], a + ld a, $11 + call Predef + call OaksLabScript_1cefd + ld a, $1a + ld [$ff8c], a + call DisplayTextID + ld a, $1 + ld [$ff8c], a + ld a, $c + ld [$ff8d], a + call Func_34a6 ; face object + call Delay3 + ld a, $1b + ld [$ff8c], a + call DisplayTextID + ld hl, $d74b + set 5, [hl] + ld hl, $d74e + set 0, [hl] + ld a, $1 + ld [$cc4d], a + ld a, $11 + call Predef + ld a, $2 + ld [$cc4d], a + ld a, $15 + call Predef + ld a, [$d157] + ld b, $0 + ld c, a + ld hl, $cc97 + xor a + call FillMemory + ld [hl], $ff + ld a, $ff + ld [$c0ee], a + call PlaySound + callba Music_RivalAlternateStart + ld a, $1 + ld [$ff8c], a + ld de, $cc97 + call MoveSprite + + ld a, $11 + ld [W_OAKSLABCURSCRIPT], a + ret + +OaksLabScript17: ; 1cfd4 (7:4fd4) + ld a, [$d730] + bit 0, a + ret nz + call Func_2307 + ld a, $2a + ld [$cc4d], a + ld a, $11 + call Predef + ld hl, $d7eb + set 0, [hl] + res 1, [hl] + set 7, [hl] + ld a, $22 + ld [$cc4d], a + ld a, $15 + call Predef + ld a, $5 + ld [W_PALLETTOWNCURSCRIPT], a + xor a + ld [wJoypadForbiddenButtonsMask], a + + ld a, $12 + ld [W_OAKSLABCURSCRIPT], a + ret + +OaksLabScript18: ; 1d009 (7:5009) + ret + +OaksLabScript_1d00a: ; 1d00a (7:500a) + ld hl, wBagItems + ld bc, $0000 +.asm_1d010 + ld a, [hli] + cp $ff + ret z + cp OAKS_PARCEL + jr z, .GotParcel ; 0x1d016 $4 + inc hl + inc c + jr .asm_1d010 ; 0x1d01a $f4 +.GotParcel + ld hl, $d31d + ld a, c + ld [wWhichPokemon], a + ld a, $1 + ld [$cf96], a + jp RemoveItemFromInventory + +OaksLabScript_1d02b: ; 1d02b (7:502b) + ld a, $7c + ld [$ffeb], a + ld a, $8 + ld [$ffee], a + ld a, [W_YCOORD] + cp $3 + jr nz, .asm_1d045 ; 0x1d038 $b + ld a, $4 + ld [$cd37], a + ld a, $30 + ld b, $b + jr .asm_1d068 ; 0x1d043 $23 +.asm_1d045 + cp $1 + jr nz, .asm_1d054 ; 0x1d047 $b + ld a, $2 + ld [$cd37], a + ld a, $30 + ld b, $9 + jr .asm_1d068 ; 0x1d052 $14 +.asm_1d054 + ld a, $3 + ld [$cd37], a + ld b, $a + ld a, [W_XCOORD] + cp $4 + jr nz, .asm_1d066 ; 0x1d060 $4 + ld a, $40 + jr .asm_1d068 ; 0x1d064 $2 +.asm_1d066 + ld a, $20 +.asm_1d068 + ld [$ffec], a + ld a, b + ld [$ffed], a + ld a, $1 + ld [$cf13], a + call Func_32f9 + ret + +OaksLabScript_1d076: ; 1d076 (7:5076) + ld hl, OaksLabTextPointers + $36 ; $50b8 ; starts at OaksLabText28 + ld a, l + ld [W_MAPTEXTPTR], a + ld a, h + ld [W_MAPTEXTPTR+1], a + ret + +OaksLabTextPointers: ; 1d082 (7:5082) + dw OaksLabText1 + dw OaksLabText2 + dw OaksLabText3 + dw OaksLabText4 + dw OaksLabText5 + dw OaksLabText6 + dw OaksLabText7 + dw OaksLabText8 + dw OaksLabText9 + dw OaksLabText10 + dw OaksLabText11 + dw OaksLabText12 + dw OaksLabText13 + dw OaksLabText14 + dw OaksLabText15 + dw OaksLabText16 + dw OaksLabText17 + dw OaksLabText18 + dw OaksLabText19 + dw OaksLabText20 + dw OaksLabText21 + dw OaksLabText22 + dw OaksLabText23 + dw OaksLabText24 + dw OaksLabText25 + dw OaksLabText26 + dw OaksLabText27 + dw OaksLabText28 + dw OaksLabText29 + dw OaksLabText30 + dw OaksLabText31 + dw OaksLabText32 + dw OaksLabText33 + dw OaksLabText34 + dw OaksLabText35 + dw OaksLabText36 + dw OaksLabText37 + dw OaksLabText38 + +OaksLabText28: ; 1d0ce (7:50ce) +OaksLabText1: ; 1d0ce (7:50ce) + db $08 ; asm + ld a, [$d74b] + bit 0, a + jr nz, .asm_1d0de ; 0x1d0d4 + ld hl, OaksLabGaryText1 + call PrintText + jr .asm_1d0f0 ; 0x1d0dc +.asm_1d0de ; 0x1d0de + bit 2, a + jr nz, .asm_1d0ea ; 0x1d0e0 + ld hl, OaksLabText40 + call PrintText + jr .asm_1d0f0 ; 0x1d0e8 +.asm_1d0ea ; 0x1d0ea + ld hl, OaksLabText41 + call PrintText +.asm_1d0f0 ; 0x1d0f0 + jp TextScriptEnd + +OaksLabGaryText1: ; 1d0f3 (7:50f3) + TX_FAR _OaksLabGaryText1 + db "@" + +OaksLabText40: ; 1d0f8 (7:50f8) + TX_FAR _OaksLabText40 + db "@" + +OaksLabText41: ; 1d0fd (7:50fd) + TX_FAR _OaksLabText41 + db "@" + +OaksLabText29: ; 1d102 (7:5102) +OaksLabText2: ; 1d102 (7:5102) + db $8 + ld a, SQUIRTLE + ld [$cd3d], a + ld a, $3 + ld [$cd3e], a + ld a, CHARMANDER + ld b, $2 + jr OaksLabScript_1d133 ; 0x1d111 $20 + +OaksLabText30: ; 1d113 (7:5113) +OaksLabText3: ; 1d113 (7:5113) + db $8 + ld a, BULBASAUR + ld [$cd3d], a + ld a, $4 + ld [$cd3e], a + ld a, SQUIRTLE + ld b, $3 + jr OaksLabScript_1d133 ; 0x1d122 $f + +OaksLabText31: ; 1d124 (7:5124) +OaksLabText4: ; 1d124 (7:5124) + db $8 + ld a, CHARMANDER + ld [$cd3d], a + ld a, $2 + ld [$cd3e], a + ld a, BULBASAUR + ld b, $4 + +OaksLabScript_1d133: ; 1d133 (7:5133) + ld [$cf91], a + ld [$d11e], a + ld a, b + ld [$cf13], a + ld a, [$d74b] + bit 2, a + jp nz, OaksLabScript_1d22d + bit 1, a + jr nz, OaksLabScript_1d157 ; 0x1d147 $e + ld hl, OaksLabText39 + call PrintText + jp TextScriptEnd + +OaksLabText39: ; 1d152 (7:5152) + TX_FAR _OaksLabText39 + db "@" + +OaksLabScript_1d157: ; 1d157 (7:5157) + ld a, $5 + ld [$ff8c], a + ld a, $9 + ld [$ff8b], a + call Func_34fc + ld [hl], $0 + ; manually fixed some disassembler issues around here + ld a, $1 + ld [$FF8c], a + ld a, $9 + ld [$ff8b], a + call Func_34fc + ld [hl], $c + ld hl, $d730 + set 6, [hl] + ld a, $46 + call Predef + ld hl, $d730 + res 6, [hl] + call ReloadMapData + ld c, $a + call DelayFrames + ld a, [$cf13] + cp $2 + jr z, OaksLabLookAtCharmander + cp $3 + jr z, OaksLabLookAtSquirtle + jr OaksLabLookAtBulbasaur + +OaksLabLookAtCharmander ; 0x1d195 + ld hl, OaksLabCharmanderText + jr OaksLabMonChoiceMenu +OaksLabCharmanderText: ; 1d19a (7:519a) + TX_FAR _OaksLabCharmanderText + db "@" + +OaksLabLookAtSquirtle: ; 1d19f (7:519f) + ld hl, OaksLabSquirtleText + jr OaksLabMonChoiceMenu +OaksLabSquirtleText: ; 1d1a4 (7:51a4) + TX_FAR _OaksLabSquirtleText + db "@" + +OaksLabLookAtBulbasaur: ; 1d1a9 (7:51a9) + ld hl, OaksLabBulbasaurText + jr OaksLabMonChoiceMenu +OaksLabBulbasaurText: ; 1d1ae (7:51ae) + TX_FAR _OaksLabBulbasaurText + db "@" + +OaksLabMonChoiceMenu: ; 1d1b3 (7:51b3) + call PrintText + ld a, $1 + ld [$cc3c], a + call YesNoChoice ; yes/no menu + ld a, [$cc26] + and a + jr nz, OaksLabMonChoiceEnd + ld a, [$cf91] + ld [$d717], a + ld [$d11e], a + call GetMonName + ld a, [$cf13] + cp $2 + jr nz, asm_1d1db ; 0x1d1d5 $4 + ld a, $2b + jr asm_1d1e5 ; 0x1d1d9 $a +asm_1d1db: ; 1d1db (7:51db) + cp $3 + jr nz, asm_1d1e3 ; 0x1d1dd $4 + ld a, $2c + jr asm_1d1e5 ; 0x1d1e1 $2 +asm_1d1e3: ; 1d1e3 (7:51e3) + ld a, $2d +asm_1d1e5: ; 1d1e5 (7:51e5) + ld [$cc4d], a + ld a, $11 + call Predef + ld a, $1 + ld [$cc3c], a + ld hl, OaksLabMonEnergeticText + call PrintText + ld hl, OaksLabReceivedMonText + call PrintText + xor a + ld [$cc49], a + ld a, $5 + ld [$d127], a + ld a, [$cf91] + ld [$d11e], a + call AddPokemonToParty + ld hl, $d72e + set 3, [hl] + ld a, $fc + ld [wJoypadForbiddenButtonsMask], a + ld a, $8 + ld [W_OAKSLABCURSCRIPT], a +OaksLabMonChoiceEnd: ; 1d21f (7:521f) + jp TextScriptEnd + +OaksLabMonEnergeticText: ; 1d222 (7:5222) + TX_FAR _OaksLabMonEnergeticText + db "@" + +OaksLabReceivedMonText: ; 1d227 (7:5227) + TX_FAR _OaksLabReceivedMonText + db $11, "@" + +OaksLabScript_1d22d: ; 1d22d (7:522d) + ld a, $5 + ld [$ff8c], a + ld a, $9 + ld [$ff8b], a + call Func_34fc + ld [hl], $0 + ld hl, OaksLabLastMonText + call PrintText + jp TextScriptEnd + +OaksLabLastMonText: ; 1d243 (7:5243) + TX_FAR _OaksLabLastMonText + db "@" + +OaksLabText32: ; 1d248 (7:5248) +OaksLabText5: ; 1d248 (7:5248) + db $08 ; asm + ld a, [$d747] + bit 6, a + jr nz, .asm_50e81 ; 0x1d24e + ld hl, $d2f7 + ld b, $13 + call CountSetBits + ld a, [$d11e] + cp $2 + jr c, .asm_b28b0 ; 0x1d25d + ld a, [$d74b] + bit 5, a + jr z, .asm_b28b0 ; 0x1d264 +.asm_50e81 ; 0x1d266 + ld hl, OaksLabText_1d31d + call PrintText + ld a, $1 + ld [$cc3c], a + ld a, $56 + call Predef + jp .asm_0f042 +.asm_b28b0 ; 0x1d279 + ld b,POKE_BALL + call IsItemInBag + jr nz, .asm_17c30 ; 0x1d27e + ld a, [$d7eb] + bit 5, a + jr nz, .asm_f1adc ; 0x1d285 + ld a, [$d74b] + bit 5, a + jr nz, .asm_333a2 ; 0x1d28c + bit 3, a + jr nz, .asm_76269 ; 0x1d290 + ld a, [$d72e] + bit 3, a + jr nz, .asm_4a5e0 ; 0x1d297 + ld hl, OaksLabText_1d2f0 + call PrintText + jr .asm_0f042 ; 0x1d29f +.asm_4a5e0 ; 0x1d2a1 + ld hl, OaksLabText_1d2f5 + call PrintText + jr .asm_0f042 ; 0x1d2a7 +.asm_76269 ; 0x1d2a9 + ld b, OAKS_PARCEL + call IsItemInBag + jr nz, .asm_a8fcf ; 0x1d2ae + ld hl, OaksLabText_1d2fa + call PrintText + jr .asm_0f042 ; 0x1d2b6 +.asm_a8fcf ; 0x1d2b8 + ld hl, OaksLabDeliverParcelText + call PrintText + call OaksLabScript_1d00a + ld a, $f + ld [W_OAKSLABCURSCRIPT], a + jr .asm_0f042 ; 0x1d2c6 +.asm_333a2 ; 0x1d2c8 + ld hl, OaksLabAroundWorldText + call PrintText + jr .asm_0f042 ; 0x1d2ce +.asm_f1adc ; 0x1d2d0 + ld hl, $d74b + bit 4, [hl] + set 4, [hl] + jr nz, .asm_17c30 ; 0x1d2d7 + ld bc, (POKE_BALL << 8) | 5 + call GiveItem + ld hl, OaksLabGivePokeballsText + call PrintText + jr .asm_0f042 ; 0x1d2e5 +.asm_17c30 ; 0x1d2e7 + ld hl, OaksLabPleaseVisitText + call PrintText +.asm_0f042 ; 0x1d2ed + jp TextScriptEnd + +OaksLabText_1d2f0: ; 1d2f0 (7:52f0) + TX_FAR _OaksLabText_1d2f0 + db "@" + +OaksLabText_1d2f5: ; 1d2f5 (7:52f5) + TX_FAR _OaksLabText_1d2f5 + db "@" + +OaksLabText_1d2fa: ; 1d2fa (7:52fa) + TX_FAR _OaksLabText_1d2fa + db "@" + +OaksLabDeliverParcelText: ; 1d2ff (7:52ff) + TX_FAR _OaksLabDeliverParcelText1 + db $11 + TX_FAR _OaksLabDeliverParcelText2 + db "@" + +OaksLabAroundWorldText: ; 1d309 (7:5309) + TX_FAR _OaksLabAroundWorldText + db "@" + +OaksLabGivePokeballsText: ; 1d30e (7:530e) + TX_FAR _OaksLabGivePokeballsText1 + db $11 + TX_FAR _OaksLabGivePokeballsText2 + db "@" + +OaksLabPleaseVisitText: ; 1d318 (7:5318) + TX_FAR _OaksLabPleaseVisitText + db "@" + +OaksLabText_1d31d: ; 1d31d (7:531d) + TX_FAR _OaksLabText_1d31d + db "@" + +OaksLabText34: ; 1d322 (7:5322) +OaksLabText33: ; 1d322 (7:5322) +OaksLabText7: ; 1d322 (7:5322) +OaksLabText6: ; 1d322 (7:5322) + db $08 ; asm + ld hl, OaksLabText_1d32c + call PrintText + jp TextScriptEnd + +OaksLabText_1d32c: ; 1d32c (7:532c) + TX_FAR _OaksLabText_1d32c + db "@" + +OaksLabText35: ; 1d331 (7:5331) +OaksLabText8: ; 1d331 (7:5331) + TX_FAR _OaksLabText8 + db "@" + +OaksLabText36: ; 1d336 (7:5336) +OaksLabText9: ; 1d336 (7:5336) + db $08 ; asm + ld hl, OaksLabText_1d340 + call PrintText + jp TextScriptEnd + +OaksLabText_1d340: ; 1d340 (7:5340) + TX_FAR _OaksLabText_1d340 + db "@" + +OaksLabText17: ; 1d345 (7:5345) + db $8 + ld hl, OaksLabRivalWaitingText + call PrintText + jp TextScriptEnd + +OaksLabRivalWaitingText: ; 1d34f (7:534f) + TX_FAR _OaksLabRivalWaitingText + db "@" + +OaksLabText18: ; 1d354 (7:5354) + db $8 + ld hl, OaksLabChooseMonText + call PrintText + jp TextScriptEnd + +OaksLabChooseMonText: ; 1d35e (7:535e) + TX_FAR _OaksLabChooseMonText + db "@" + +OaksLabText19: ; 1d363 (7:5363) + db $8 + ld hl, OaksLabRivalInterjectionText + call PrintText + jp TextScriptEnd + +OaksLabRivalInterjectionText: ; 1d36d (7:536d) + TX_FAR _OaksLabRivalInterjectionText + db "@" + +OaksLabText20: ; 1d372 (7:5372) + db $8 + ld hl, OaksLabBePatientText + call PrintText + jp TextScriptEnd + +OaksLabBePatientText: ; 1d37c (7:537c) + TX_FAR _OaksLabBePatientText + db "@" + +OaksLabText12: ; 1d381 (7:5381) + db $8 + ld hl, OaksLabLeavingText + call PrintText + jp TextScriptEnd + +OaksLabLeavingText: ; 1d38b (7:538b) + TX_FAR _OaksLabLeavingText + db "@" + +OaksLabText13: ; 1d390 (7:5390) + db $8 + ld hl, OaksLabRivalPickingMonText + call PrintText + jp TextScriptEnd + +OaksLabRivalPickingMonText: ; 1d39a (7:539a) + TX_FAR _OaksLabRivalPickingMonText + db "@" + +OaksLabText14: ; 1d39f (7:539f) + db $8 + ld hl, OaksLabRivalReceivedMonText + call PrintText + jp TextScriptEnd + +OaksLabRivalReceivedMonText: ; 1d3a9 (7:53a9) + TX_FAR _OaksLabRivalReceivedMonText + db $11, "@" + +OaksLabText15: ; 1d3af (7:53af) + db $8 + ld hl, OaksLabRivalChallengeText + call PrintText + jp TextScriptEnd + +OaksLabRivalChallengeText: ; 1d3b9 (7:53b9) + TX_FAR _OaksLabRivalChallengeText + db "@" + +OaksLabText_1d3be: ; 1d3be (7:53be) + TX_FAR _OaksLabText_1d3be + db "@" + +OaksLabText_1d3c3: ; 1d3c3 (7:53c3) + TX_FAR _OaksLabText_1d3c3 + db "@" + +OaksLabText16: ; 1d3c8 (7:53c8) + db $8 + ld hl, OaksLabRivalToughenUpText + call PrintText + jp TextScriptEnd + +OaksLabRivalToughenUpText: ; 1d3d2 (7:53d2) + TX_FAR _OaksLabRivalToughenUpText + db "@" + +OaksLabText21: ; 1d3d7 (7:53d7) + TX_FAR _OaksLabText21 + db "@" + +OaksLabText22: ; 1d3dc (7:53dc) + TX_FAR _OaksLabText22 + db "@" + +OaksLabText23: ; 1d3e1 (7:53e1) + TX_FAR _OaksLabText23 + db "@" + +OaksLabText24: ; 1d3e6 (7:53e6) + TX_FAR _OaksLabText24 + db "@" + +OaksLabText25: ; 1d3eb (7:53eb) + TX_FAR _OaksLabText25 + db $11, "@" + +OaksLabText26: ; 1d3f1 (7:53f1) + TX_FAR _OaksLabText26 + db "@" + +OaksLabText27: ; 1d3f6 (7:53f6) + TX_FAR _OaksLabText27 + db "@" + +OaksLabText38: ; 1d3fb (7:53fb) +OaksLabText37: ; 1d3fb (7:53fb) +OaksLabText11: ; 1d3fb (7:53fb) +OaksLabText10: ; 1d3fb (7:53fb) + db $08 ; asm + ld hl, OaksLabText_1d405 + call PrintText + jp TextScriptEnd + +OaksLabText_1d405: ; 1d405 (7:5405) + TX_FAR _OaksLabText_1d405 + db "@" diff --git a/scripts/pallettown.asm b/scripts/pallettown.asm new file mode 100755 index 00000000..e1b51cf6 --- /dev/null +++ b/scripts/pallettown.asm @@ -0,0 +1,228 @@ +PalletTownScript: ; 18e5b (6:4e5b) + ld a,[$D74B] + bit 4,a + jr z,.next + ld hl,$D747 + set 6,[hl] +.next + call EnableAutoTextBoxDrawing + ld hl,PalletTownScriptPointers + ld a,[W_PALLETTOWNCURSCRIPT] + jp CallFunctionInTable + +PalletTownScriptPointers: ; 18e73 (6:4e73) + dw PalletTownScript0 + dw PalletTownScript1 + dw PalletTownScript2 + dw PalletTownScript3 + dw PalletTownScript4 + dw PalletTownScript5 + dw PalletTownScript6 + +PalletTownScript0: ; 18e81 (6:4e81) + ld a,[$D747] + bit 0,a + ret nz + ld a,[W_YCOORD] + cp 1 ; is player near north exit? + ret nz + xor a + ld [H_CURRENTPRESSEDBUTTONS],a + ld a,4 + ld [$D528],a + ld a,$FF + call PlaySound ; stop music + ld a, BANK(Music_MeetProfOak) + ld c,a ; song bank + ld a, MUSIC_MEET_PROF_OAK ; “oak appears” music + call PlayMusic ; plays music + ld a,$FC + ld [wJoypadForbiddenButtonsMask],a + ld hl,$D74B + set 7,[hl] + + ; trigger the next script + ld a,1 + ld [W_PALLETTOWNCURSCRIPT],a + ret + +PalletTownScript1: ; 18eb2 (6:4eb2) + xor a + ld [$CF0D],a + ld a,1 + ld [$FF8C],a + call DisplayTextID + ld a,$FF + ld [wJoypadForbiddenButtonsMask],a + ld a,0 + ld [$CC4D],a + ld a,$15 + call Predef + + ; trigger the next script + ld a,2 + ld [W_PALLETTOWNCURSCRIPT],a + ret + +PalletTownScript2: ; 18ed2 (6:4ed2) + ld a,1 + ld [$FF8C],a + ld a,4 + ld [$FF8D],a + call Func_34a6 + call Delay3 + ld a,1 + ld [W_YCOORD],a + ld a,1 + ld [$FF9B],a + ld a,1 + swap a + ld [$FF95],a + ld a,$22 + call Predef + ld hl,$FF95 + dec [hl] + ld a,$20 + call Predef ; load Oak’s movement into $CC97 + ld de,$CC97 + ld a,1 ; oak + ld [$FF8C],a + call MoveSprite + ld a,$FF + ld [wJoypadForbiddenButtonsMask],a + + ; trigger the next script + ld a,3 + ld [W_PALLETTOWNCURSCRIPT],a + ret + +PalletTownScript3: ; 18f12 (6:4f12) + ld a,[$D730] + bit 0,a + ret nz + xor a + ld [$C109],a + ld a,1 + ld [$CF0D],a + ld a,$FC + ld [wJoypadForbiddenButtonsMask],a + ld a,1 + ld [$FF8C],a + call DisplayTextID + ld a,$FF + ld [wJoypadForbiddenButtonsMask],a + ld a,1 + ld [$CF13],a + xor a + ld [$CF10],a + ld a,1 + ld [$CC57],a + ld a,[H_LOADEDROMBANK] + ld [$CC58],a + + ; trigger the next script + ld a,4 + ld [W_PALLETTOWNCURSCRIPT],a + ret + +PalletTownScript4: ; 18f4b (6:4f4b) + ld a,[$CC57] + and a + ret nz + + ; trigger the next script + ld a,5 + ld [W_PALLETTOWNCURSCRIPT],a + ret + +PalletTownScript5: ; 18f56 (6:4f56) + ld a,[$D74A] + bit 2,a + jr nz,.next + and 3 + cp 3 + jr nz,.next + ld hl,$D74A + set 2,[hl] + ld a,$27 + ld [$CC4D],a + ld a,$11 + call Predef + ld a,$28 + ld [$CC4D],a + ld a,$15 + jp Predef +.next + ld a,[$D74B] + bit 4,a + ret z + ld hl,$D74B + set 6,[hl] +PalletTownScript6: ; 18f87 (6:4f87) + ret + +PalletTownTextPointers: ; 18f88 (6:4f88) + dw PalletTownText1 + dw PalletTownText2 + dw PalletTownText3 + dw PalletTownText4 + dw PalletTownText5 + dw PalletTownText6 + dw PalletTownText7 + +PalletTownText1: ; 18f96 (6:4f96) + db 8 + ld a,[$CF0D] + and a + jr nz,.next + ld a,1 + ld [$CC3C],a + ld hl,OakAppearsText + jr .done +.next + ld hl,OakWalksUpText +.done + call PrintText + jp TextScriptEnd + +OakAppearsText: ; 18fb0 (6:4fb0) + TX_FAR _OakAppearsText + db 8 + ld c,10 + call DelayFrames + xor a + ld [$CD4F],a + ld [$CD50],a + ld a,$4C + call Predef ; display ! over head + ld a,4 + ld [$D528],a + jp TextScriptEnd + +OakWalksUpText: ; 18fce (6:4fce) + TX_FAR _OakWalksUpText + db "@" + +PalletTownText2: ; 0x18fd3 girl + TX_FAR _PalletTownText2 + db "@" + +PalletTownText3: ; 0x18fd8 fat man + TX_FAR _PalletTownText3 + db "@" + +PalletTownText4: ; 0x18fdd sign by lab + TX_FAR _PalletTownText4 + db "@" + +PalletTownText5: ; 0x18fe2 sign by fence + TX_FAR _PalletTownText5 + db "@" + +PalletTownText6: ; 0x18fe7 sign by Red’s house + TX_FAR _PalletTownText6 + db "@" + +PalletTownText7: ; 0x18fec sign by Blue’s house + TX_FAR _PalletTownText7 + db "@" diff --git a/scripts/pewtercity.asm b/scripts/pewtercity.asm new file mode 100755 index 00000000..e738dedf --- /dev/null +++ b/scripts/pewtercity.asm @@ -0,0 +1,321 @@ +PewterCityScript: ; 19237 (6:5237) + call EnableAutoTextBoxDrawing + ld hl, PewterCityScriptPointers + ld a, [W_PEWTERCITYCURSCRIPT] + jp CallFunctionInTable + +PewterCityScriptPointers: ; 19243 (6:5243) + dw PewterCityScript0 + dw PewterCityScript1 + dw PewterCityScript2 + dw PewterCityScript3 + dw PewterCityScript4 + dw PewterCityScript5 + dw PewterCityScript6 + +PewterCityScript0: ; 19251 (6:5251) + xor a + ld [W_MUSEUM1FCURSCRIPT], a + ld hl, $d754 + res 0, [hl] + call PewterCityScript_1925e + ret + +PewterCityScript_1925e: ; 1925e (6:525e) + ld a, [$d755] + bit 7, a + ret nz + ld hl, CoordsData_19277 + call ArePlayerCoordsInArray + ret nc + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + ld a, $5 + ld [$ff8c], a + jp DisplayTextID + +CoordsData_19277: ; 19277 (6:5277) + db $11,$23 + db $11,$24 + db $12,$25 + db $13,$25 + db $ff + +PewterCityScript1: ; 19280 (6:5280) + ld a, [$cc57] + and a + ret nz + ld a, $3 + ld [$ff8c], a + ld a, $4 + ld [$ff8d], a + call Func_34a6 + ld a, $34 + ld [$ff8d], a + call Func_34b9 + call Func_2307 + ld hl, wFlags_0xcd60 + set 4, [hl] + ld a, $d + ld [$ff8c], a + call DisplayTextID + ld a, $3c + ld [$ffeb], a + ld a, $30 + ld [$ffec], a + ld a, $c + ld [$ffed], a + ld a, $11 + ld [$ffee], a + ld a, $3 + ld [$cf13], a + call Func_32f9 + ld a, $3 + ld [$ff8c], a + ld de, MovementData_PewterMuseumGuyExit ; $52ce + call MoveSprite + ld a, $2 + ld [W_PEWTERCITYCURSCRIPT], a + ret + +MovementData_PewterMuseumGuyExit: ; 192ce (6:52ce) + db $00,$00,$00,$00,$FF + +PewterCityScript2: ; 192d3 (6:52d3) + ld a, [$d730] + bit 0, a + ret nz + ld a, $3 + ld [$cc4d], a + ld a, $11 + call Predef + ld a, $3 + ld [W_PEWTERCITYCURSCRIPT], a + ret + +PewterCityScript3: ; 192e9 (6:52e9) + ld a, $3 + ld [$cf13], a + call Func_32fe + ld a, $3 + ld [$cc4d], a + ld a, $15 + call Predef + xor a + ld [wJoypadForbiddenButtonsMask], a + ld a, $0 + ld [W_PEWTERCITYCURSCRIPT], a + ret + +PewterCityScript4: ; 19305 (6:5305) + ld a, [$cc57] + and a + ret nz + ld a, $5 + ld [$ff8c], a + ld a, $8 + ld [$ff8d], a + call Func_34a6 + ld a, $18 + ld [$ff8d], a + call Func_34b9 + call Func_2307 + ld hl, wFlags_0xcd60 + set 4, [hl] + ld a, $e + ld [$ff8c], a + call DisplayTextID + ld a, $3c + ld [$ffeb], a + ld a, $40 + ld [$ffec], a + ld a, $16 + ld [$ffed], a + ld a, $10 + ld [$ffee], a + ld a, $5 + ld [$cf13], a + call Func_32f9 + ld a, $5 + ld [$ff8c], a + ld de, MovementData_PewterGymGuyExit + call MoveSprite + ld a, $5 + ld [W_PEWTERCITYCURSCRIPT], a + ret + +MovementData_PewterGymGuyExit: ; 19353 (6:5353) + db $C0,$C0,$C0,$C0,$C0,$FF + +PewterCityScript5: ; 19359 (6:5359) + ld a, [$d730] + bit 0, a + ret nz + ld a, $4 + ld [$cc4d], a + ld a, $11 + call Predef + ld a, $6 + ld [W_PEWTERCITYCURSCRIPT], a + ret + +PewterCityScript6: ; 1936f (6:536f) + ld a, $5 + ld [$cf13], a + call Func_32fe + ld a, $4 + ld [$cc4d], a + ld a, $15 + call Predef + xor a + ld [wJoypadForbiddenButtonsMask], a + ld a, $0 + ld [W_PEWTERCITYCURSCRIPT], a + ret + +PewterCityTextPointers: ; 1938b (6:538b) + dw PewterCityText1 + dw PewterCityText2 + dw PewterCityText3 + dw PewterCityText4 + dw PewterCityText5 + dw PewterCityText6 + dw PewterCityText7 + dw MartSignText + dw PokeCenterSignText + dw PewterCityText10 + dw PewterCityText11 + dw PewterCityText12 + dw PewterCityText13 + dw PewterCityText14 + +PewterCityText1: ; 193a7 (6:53a7) + TX_FAR _PewterCityText1 + db "@" + +PewterCityText2: ; 193ac (6:53ac) + TX_FAR _PewterCityText2 + db "@" + +PewterCityText3: ; 193b1 (6:53b1) + db $08 ; asm + ld hl, PewterCityText_193f1 + call PrintText + call YesNoChoice + ld a, [$cc26] + and a + jr nz, .asm_f46a9 ; 0x193bf + ld hl, PewterCityText_193f6 + call PrintText + jr .asm_ac429 ; 0x193c7 +.asm_f46a9 ; 0x193c9 + ld hl, PewterCityText_193fb + call PrintText + xor a + ldh [$b3], a + ldh [$b4], a + ld [$cf10], a + ld a, $2 + ld [$cc57], a + ldh a, [$b8] + ld [$cc58], a + ld a, $3 + ld [$cf13], a + call Func_32f4 + ld a, $1 + ld [W_PEWTERCITYCURSCRIPT], a +.asm_ac429 ; 0x193ee + jp TextScriptEnd + +PewterCityText_193f1: ; 193f1 (6:53f1) + TX_FAR _PewterCityText_193f1 + db "@" + +PewterCityText_193f6: ; 193f6 (6:53f6) + TX_FAR _PewterCityText_193f6 + db "@" + +PewterCityText_193fb: ; 193fb (6:53fb) + TX_FAR _PewterCityText_193fb + db "@" + +PewterCityText13: ; 19400 (6:5400) + TX_FAR _PewterCityText13 + db "@" + +PewterCityText4: ; 19405 (6:5405) + db $8 + ld hl, PewterCityText_19427 + call PrintText + call YesNoChoice + ld a, [$cc26] + cp $0 + jr nz, .asm_e4603 + ld hl, PewterCityText_1942c + call PrintText + jr .asm_e4604 ; 0x1941c $6 +.asm_e4603 + ld hl, PewterCityText_19431 + call PrintText +.asm_e4604 ; 0x19424 + jp TextScriptEnd + +PewterCityText_19427: ; 19427 (6:5427) + TX_FAR _PewterCityText_19427 + db "@" + +PewterCityText_1942c: ; 1942c (6:542c) + TX_FAR _PewterCityText_1942c + db "@" + +PewterCityText_19431: ; 19431 (6:5431) + TX_FAR _PewterCityText_19431 + db "@" + +PewterCityText5: ; 19436 (6:5436) + db $08 ; asm + ld hl, PewterCityText_1945d + call PrintText + xor a + ldh [$b4], a + ld [$cf10], a + ld a, $3 + ld [$cc57], a + ldh a, [$b8] + ld [$cc58], a + ld a, $5 + ld [$cf13], a + call Func_32f4 + ld a, $4 + ld [W_PEWTERCITYCURSCRIPT], a + jp TextScriptEnd + +PewterCityText_1945d: ; 1945d (6:545d) + TX_FAR _PewterCityText_1945d + db "@" + +PewterCityText14: ; 19462 (6:5462) + +PewterCityText_19462: ; 19462 (6:5462) + TX_FAR _PewterCityText_19462 + db "@" + +PewterCityText6: ; 19467 (6:5467) + TX_FAR _PewterCityText6 + db "@" + +PewterCityText7: ; 1946c (6:546c) + TX_FAR _PewterCityText7 + db "@" + +PewterCityText10: ; 19471 (6:5471) + TX_FAR _PewterCityText10 + db "@" + +PewterCityText11: ; 19476 (6:5476) + TX_FAR _PewterCityText11 + db "@" + +PewterCityText12: ; 1947b (6:547b) + TX_FAR _PewterCityText12 + db "@" diff --git a/scripts/pewtergym.asm b/scripts/pewtergym.asm new file mode 100755 index 00000000..2ba001d4 --- /dev/null +++ b/scripts/pewtergym.asm @@ -0,0 +1,237 @@ +PewterGymScript: ; 5c387 (17:4387) + ld hl, $d126 + bit 6, [hl] + res 6, [hl] + call nz, PewterGymScript_5c3a4 + call EnableAutoTextBoxDrawing + ld hl, PewterGymTrainerHeaders + ld de, PewterGymScriptPointers + ld a, [W_PEWTERGYMCURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_PEWTERGYMCURSCRIPT], a + ret + +PewterGymScript_5c3a4: ; 5c3a4 (17:43a4) + ld hl, Gym1CityName ; $43ad + ld de, Gym1LeaderName ; $43b9 + jp LoadGymLeaderAndCityName + +Gym1CityName: ; 5c3ad (17:43ad) + db "PEWTER CITY@" + +Gym1LeaderName: ; 5c3b9 (17:43b9) + db "BROCK@" + +PewterGymScript_5c3bf: ; 5c3bf (17:43bf) + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [W_PEWTERGYMCURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +PewterGymScriptPointers: ; 5c3ca (17:43ca) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + dw PewterGymScript3 + +PewterGymScript3: ; 5c3d2 (17:43d2) + ld a, [W_ISINBATTLE] ; $d057 + cp $ff + jp z, PewterGymScript_5c3bf + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + +PewterGymScript_5c3df: ; 5c3df (17:43df) + ld a, $4 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + ld hl, $d755 + set 7, [hl] + ld bc, (TM_34 << 8) | 1 + call GiveItem + jr nc, .BagFull + ld a, $5 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + ld hl, $d755 + set 6, [hl] + jr .asm_5c408 +.BagFull + ld a, $6 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID +.asm_5c408 + ld hl, W_OBTAINEDBADGES + set 0, [hl] + ld hl, $d72a + set 0, [hl] + + ld a, $4 + ld [$cc4d], a + ld a, $11 + call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7)) + ld a, $22 + ld [$cc4d], a + ld a, $11 + call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7)) + + ld hl, $d7eb + res 0, [hl] + res 7, [hl] + + ; deactivate gym trainers + ld hl, $d755 + set 2, [hl] + + jp PewterGymScript_5c3bf + +PewterGymTextPointers: ; 5c435 (17:4435) + dw PewterGymText1 + dw PewterGymText2 + dw PewterGymText3 + dw PewterGymText4 + dw PewterGymText5 + dw PewterGymText6 + +PewterGymTrainerHeaders: ; 5c441 (17:4441) +PewterGymTrainerHeader0: ; 5c441 (17:4441) + db $2 ; flag's bit + db ($5 << 4) ; trainer's view range + dw $d755 ; flag's byte + dw PewterGymBattleText1 ; 0x44d0 TextBeforeBattle + dw PewterGymAfterBattleText1 ; 0x44da TextAfterBattle + dw PewterGymEndBattleText1 ; 0x44d5 TextEndBattle + dw PewterGymEndBattleText1 ; 0x44d5 TextEndBattle + + db $ff + +PewterGymText1: ; 5c44e (17:444e) + db $08 ; asm + ld a, [$d755] + bit 7, a + jr z, .asm_4a735 ; 0x5c454 + bit 6, a + jr nz, .asm_ff7d0 ; 0x5c458 + call z, PewterGymScript_5c3df + call DisableWaitingAfterTextDisplay + jr .asm_e0ffb ; 0x5c460 +.asm_ff7d0 ; 0x5c462 + ld hl, PewterGymText_5c4a3 + call PrintText + jr .asm_e0ffb ; 0x5c468 +.asm_4a735 ; 0x5c46a + ld hl, PewterGymText_5c49e + call PrintText + ld hl, $d72d + set 6, [hl] + set 7, [hl] + ld hl, PewterGymText_5c4bc + ld de, PewterGymText_5c4bc + call PreBattleSaveRegisters + ldh a, [$8c] + ld [$cf13], a + call EngageMapTrainer + call InitBattleEnemyParameters + ld a, $1 + ld [$d05c], a + xor a + ldh [$b4], a + ld a, $3 + ld [W_PEWTERGYMCURSCRIPT], a + ld [W_CURMAPSCRIPT], a +.asm_e0ffb ; 0x5c49b + jp TextScriptEnd + +PewterGymText_5c49e: ; 5c49e (17:449e) + TX_FAR _PewterGymText_5c49e + db "@" + +PewterGymText_5c4a3: ; 5c4a3 (17:44a3) + TX_FAR _PewterGymText_5c4a3 + db "@" + +PewterGymText4: ; 5c4a8 (17:44a8) + TX_FAR _TM34PreReceiveText + db "@" + +PewterGymText5: ; 5c4ad (17:44ad) + TX_FAR _ReceivedTM34Text + db $0B + TX_FAR _TM34ExplanationText + db "@" + +PewterGymText6: ; 5c4b7 (17:44b7) + TX_FAR _TM34NoRoomText + db "@" + +PewterGymText_5c4bc: ; 5c4bc (17:44bc) + TX_FAR _PewterGymText_5c4bc + db $0B + TX_FAR _PewterGymText_5c4c1 + db "@" + +PewterGymText2: ; 5c4c6 (17:44c6) + db $08 ; asm + ld hl, PewterGymTrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +PewterGymBattleText1: ; 5c4d0 (17:44d0) + TX_FAR _PewterGymBattleText1 + db "@" + +PewterGymEndBattleText1: ; 5c4d5 (17:44d5) + TX_FAR _PewterGymEndBattleText1 + db "@" + +PewterGymAfterBattleText1: ; 5c4da (17:44da) + TX_FAR _PewterGymAfterBattleText1 + db "@" + +PewterGymText3: ; 5c4df (17:44df) + db $08 ; asm + ld a, [$d72a] + bit 0, a + jr nz, .asm_71369 ; 0x5c4e5 + ld hl, PewterGymText_5c515 + call PrintText + call YesNoChoice + ld a, [$cc26] + and a + jr nz, .asm_6123a ; 0x5c4f4 + ld hl, PewterGymText_5c51a + call PrintText + jr .asm_d1578 ; 0x5c4fc +.asm_6123a ; 0x5c4fe + ld hl, PewterGymText_5c524 + call PrintText +.asm_d1578 ; 0x5c504 + ld hl, PewterGymText_5c51f + call PrintText + jr .asm_07013 ; 0x5c50a +.asm_71369 ; 0x5c50c + ld hl, PewterGymText_5c529 + call PrintText +.asm_07013 ; 0x5c512 + jp TextScriptEnd + +PewterGymText_5c515: ; 5c515 (17:4515) + TX_FAR _PewterGymText_5c515 + db "@" + +PewterGymText_5c51a: ; 5c51a (17:451a) + TX_FAR _PewterGymText_5c51a + db "@" + +PewterGymText_5c51f: ; 5c51f (17:451f) + TX_FAR _PewterGymText_5c51f + db "@" + +PewterGymText_5c524: ; 5c524 (17:4524) + TX_FAR _PewterGymText_5c524 + db "@" + +PewterGymText_5c529: ; 5c529 (17:4529) + TX_FAR _PewterGymText_5c529 + db "@" diff --git a/scripts/pewterhouse1.asm b/scripts/pewterhouse1.asm new file mode 100755 index 00000000..05d27a14 --- /dev/null +++ b/scripts/pewterhouse1.asm @@ -0,0 +1,23 @@ +PewterHouse1Script: ; 1d5f3 (7:55f3) + jp EnableAutoTextBoxDrawing + +PewterHouse1TextPointers: ; 1d5f6 (7:55f6) + dw PewterHouse1Text1 + dw PewterHouse1Text2 + dw PewterHouse1Text3 + +PewterHouse1Text1: ; 1d5fc (7:55fc) + TX_FAR _PewterHouse1Text1 + db $08 ; asm + ld a, NIDORAN_M + call PlayCry + call WaitForSoundToFinish + jp TextScriptEnd + +PewterHouse1Text2: ; 1d60c (7:560c) + TX_FAR _PewterHouse1Text2 + db "@" + +PewterHouse1Text3: ; 1d611 (7:5611) + TX_FAR _PewterHouse1Text3 + db "@" diff --git a/scripts/pewterhouse2.asm b/scripts/pewterhouse2.asm new file mode 100755 index 00000000..92e40de2 --- /dev/null +++ b/scripts/pewterhouse2.asm @@ -0,0 +1,14 @@ +PewterHouse2Script: ; 1d648 (7:5648) + jp EnableAutoTextBoxDrawing + +PewterHouse2TextPointers: ; 1d64b (7:564b) + dw PewterHouse2Text1 + dw PewterHouse2Text2 + +PewterHouse2Text1: ; 1d64f (7:564f) + TX_FAR _PewterHouse2Text1 + db "@" + +PewterHouse2Text2: ; 1d654 (7:5654) + TX_FAR _PewterHouse2Text2 + db "@" diff --git a/scripts/pewtermart.asm b/scripts/pewtermart.asm new file mode 100755 index 00000000..3abe2a93 --- /dev/null +++ b/scripts/pewtermart.asm @@ -0,0 +1,30 @@ +PewterMartScript: ; 74cad (1d:4cad) + call EnableAutoTextBoxDrawing + ld a, $1 + ld [$cf0c], a + ret + +PewterMartTextPointers: ; 74cb6 (1d:4cb6) + dw PewterMartText1 + dw PewterMartText2 + dw PewterMartText3 + +PewterMartText2: ; 74cbc (1d:4cbc) + db $08 ; asm + ld hl, PewterMartText_74cc6 + call PrintText + jp TextScriptEnd + +PewterMartText_74cc6: ; 74cc6 (1d:4cc6) + TX_FAR _PewterMartText_74cc6 + db "@" + +PewterMartText3: ; 74ccb (1d:4ccb) + db $08 ; asm + ld hl, PewterMartText_74cd5 + call PrintText + jp TextScriptEnd + +PewterMartText_74cd5: ; 74cd5 (1d:4cd5) + TX_FAR _PewterMartText_74cd5 + db "@" diff --git a/scripts/pewterpokecenter.asm b/scripts/pewterpokecenter.asm new file mode 100755 index 00000000..4b97a01d --- /dev/null +++ b/scripts/pewterpokecenter.asm @@ -0,0 +1,75 @@ +PewterPokecenterScript: ; 5c587 (17:4587) + call Func_22fa + jp EnableAutoTextBoxDrawing + +PewterPokecenterTextPointers: ; 5c58d (17:458d) + dw PewterPokecenterText1 + dw PewterPokecenterText2 + dw PewterPokecenterText3 + dw PewterPokecenterText4 + +PewterPokecenterText1: ; 5c595 (17:4595) + db $ff + +PewterPokecenterText2: ; 5c596 (17:4596) + TX_FAR _PewterPokecenterText1 + db "@" + +PewterPokecenterText3: ; 5c59b (17:459b) + db $8 + ld a, $1 + ld [$cc3c], a + ld hl, PewterPokecenterText5 + call PrintText + ld a, $ff + call PlaySound + ld c, $20 + call DelayFrames + ld hl, Unknown_5c608 ; $4608 + ld de, $cd3f + ld bc, $0004 + call CopyData + ld a, [$c132] + ld hl, $cd3f +.asm_5c5c3 + cp [hl] + inc hl + jr nz, .asm_5c5c3 ; 0x5c5c5 $fc + dec hl + push hl + ld c, BANK(Music_JigglypuffSong) + ld a, MUSIC_JIGGLYPUFF_SONG + call PlayMusic + pop hl +.asm_5c5d1 + ld a, [hl] + ld [$c132], a + push hl + ld hl, $cd3f + ld de, $cd3e + ld bc, $0004 + call CopyData + ld a, [$cd3e] + ld [$cd42], a + pop hl + ld c, $18 + call DelayFrames + ld a, [$c026] + ld b, a + ld a, [$c027] + or b + jr nz, .asm_5c5d1 ; 0x5c5f6 $d9 + ld c, $30 + call DelayFrames + call Func_2307 + jp TextScriptEnd + +PewterPokecenterText5: ; 5c603 (17:4603) + TX_FAR _PewterPokecenterText5 + db "@" + +Unknown_5c608: ; 5c608 (17:4608) + db $30, $38, $34, $3c + +PewterPokecenterText4: ; 5c60c (17:460c) + db $f6 diff --git a/scripts/pokemontower1.asm b/scripts/pokemontower1.asm new file mode 100755 index 00000000..4887e740 --- /dev/null +++ b/scripts/pokemontower1.asm @@ -0,0 +1,29 @@ +PokemonTower1Script: ; 6042c (18:442c) + jp EnableAutoTextBoxDrawing + +PokemonTower1TextPointers: ; 6042f (18:442f) + dw PokemonTower1Text1 + dw PokemonTower1Text2 + dw PokemonTower1Text3 + dw PokemonTower1Text4 + dw PokemonTower1Text5 + +PokemonTower1Text1: ; 60439 (18:4439) + TX_FAR _PokemonTower1Text1 + db "@" + +PokemonTower1Text2: ; 6043e (18:443e) + TX_FAR _PokemonTower1Text2 + db "@" + +PokemonTower1Text3: ; 60443 (18:4443) + TX_FAR _PokemonTower1Text3 + db "@" + +PokemonTower1Text4: ; 60448 (18:4448) + TX_FAR _PokemonTower1Text4 + db "@" + +PokemonTower1Text5: ; 6044d (18:444d) + TX_FAR _PokemonTower1Text5 + db "@" diff --git a/scripts/pokemontower2.asm b/scripts/pokemontower2.asm new file mode 100755 index 00000000..dbbc8e63 --- /dev/null +++ b/scripts/pokemontower2.asm @@ -0,0 +1,178 @@ +PokemonTower2Script: ; 604f2 (18:44f2) + call EnableAutoTextBoxDrawing + ld hl, PokemonTower2ScriptPointers + ld a, [W_POKEMONTOWER2CURSCRIPT] + jp CallFunctionInTable + +PokemonTower2Script_604fe: ; 604fe (18:44fe) + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [W_POKEMONTOWER2CURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +PokemonTower2ScriptPointers: ; 60509 (18:4509) + dw PokemonTower2Script0 + dw PokemonTower2Script1 + dw PokemonTower2Script2 + +PokemonTower2Script0: ; 6050f (18:450f) + ld a, [$d764] + bit 7, a + ret nz + ld hl, CoordsData_6055e ; $455e + call ArePlayerCoordsInArray + ret nc + ld a, $ff + ld [$c0ee], a + call PlaySound + ld c, BANK(Music_MeetRival) + ld a, MUSIC_MEET_RIVAL + call PlayMusic + ld hl, $d764 + res 6, [hl] + ld a, [$cd3d] + cp $1 + ld a, $8 + ld b, $0 + jr nz, .asm_60544 ; 0x60539 $9 + ld hl, $d764 + set 6, [hl] + ld a, $2 + ld b, $c +.asm_60544 + ld [$d528], a + ld a, $1 + ld [$ff8c], a + ld a, b + ld [$ff8d], a + call Func_34a6 + ld a, $1 + ld [$ff8c], a + call DisplayTextID + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + ld [H_NEWLYPRESSEDBUTTONS], a + 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) + ld a, [$d057] + cp $ff + jp z, PokemonTower2Script_604fe + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + ld hl, $d764 + set 7, [hl] + ld a, $1 + ld [$ff8c], a + call DisplayTextID + ld de, MovementData_605b2 + ld a, [$d764] + bit 6, a + jr nz, .asm_60589 ; 0x60584 $3 + ld de, MovementData_605a9 +.asm_60589 + ld a, $1 + ld [$ff8c], a + call MoveSprite + ld a, $ff + ld [$c0ee], a + call PlaySound + callba Music_RivalAlternateStart + ld a, $2 + ld [W_POKEMONTOWER2CURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +MovementData_605a9: ; 605a9 (18:45a9) + db $C0,$00,$00,$C0,$00,$00,$C0,$C0,$FF + +MovementData_605b2: ; 605b2 (18:45b2) + db $00,$00,$C0,$C0,$C0,$C0,$00,$00,$FF + +PokemonTower2Script2: ; 605bb (18:45bb) + ld a, [$d730] + bit 0, a + ret nz + ld a, $38 + ld [$cc4d], a + ld a, $11 + call Predef + xor a + ld [wJoypadForbiddenButtonsMask], a + call Func_2307 + ld a, $0 + ld [W_POKEMONTOWER2CURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +PokemonTower2TextPointers: ; 605db (18:45db) + dw PokemonTower2Text1 + dw PokemonTower2Text2 + +PokemonTower2Text1: ; 605df (18:45df) + db $08 ; asm + ld a, [$d764] + bit 7, a + jr z, .asm_16f24 ; 0x605e5 + ld hl, PokemonTower2Text_6063c + call PrintText + jr .asm_41852 ; 0x605ed +.asm_16f24 ; 0x605ef + ld hl, PokemonTower2Text_6062d + call PrintText + ld hl, $d72d + set 6, [hl] + set 7, [hl] + ld hl, PokemonTower2Text_60632 + ld de, PokemonTower2Text_60637 ; XXX $4637 + call PreBattleSaveRegisters + ld a, SONY2 + $c8 + ld [W_CUROPPONENT], a + + ; select which team to use during the encounter + ld a, [W_RIVALSTARTER] + cp SQUIRTLE + jr nz, .NotSquirtle ; 0x6060f + ld a, $4 + jr .done +.NotSquirtle ; 0x60615 + cp BULBASAUR + jr nz, .Charmander ; 0x60617 + ld a, $5 + jr .done +.Charmander ; 0x6061d + ld a, $6 +.done + ld [W_TRAINERNO], a + + ld a, $1 + ld [W_POKEMONTOWER2CURSCRIPT], a + ld [W_CURMAPSCRIPT], a +.asm_41852 ; 0x6062a + 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 "@" diff --git a/scripts/pokemontower3.asm b/scripts/pokemontower3.asm new file mode 100755 index 00000000..74568a83 --- /dev/null +++ b/scripts/pokemontower3.asm @@ -0,0 +1,102 @@ +PokemonTower3Script: ; 606cc (18:46cc) + call EnableAutoTextBoxDrawing + ld hl, PokemonTower3TrainerHeaders + ld de, PokemonTower3ScriptPointers + ld a, [W_POKEMONTOWER3CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_POKEMONTOWER3CURSCRIPT], a + ret + +PokemonTower3ScriptPointers: ; 606df (18:46df) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +PokemonTower3TextPointers: ; 606e5 (18:46e5) + dw PokemonTower3Text1 + dw PokemonTower3Text2 + dw PokemonTower3Text3 + dw Predef5CText + +PokemonTower3TrainerHeaders: ; 606ed (18:46ed) +PokemonTower3TrainerHeader0: ; 606ed (18:46ed) + db $1 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d765 ; flag's byte + dw PokemonTower3BattleText1 ; 0x4730 TextBeforeBattle + dw PokemonTower3AfterBattleText1 ; 0x473a TextAfterBattle + dw PokemonTower3EndBattleText1 ; 0x4735 TextEndBattle + dw PokemonTower3EndBattleText1 ; 0x4735 TextEndBattle + +PokemonTower3TrainerHeader1: ; 606f9 (18:46f9) + db $2 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d765 ; flag's byte + dw PokemonTower3BattleText2 ; 0x473f TextBeforeBattle + dw PokemonTower3AfterBattleText2 ; 0x4749 TextAfterBattle + dw PokemonTower3EndBattleText2 ; 0x4744 TextEndBattle + dw PokemonTower3EndBattleText2 ; 0x4744 TextEndBattle + +PokemonTower3TrainerHeader2: ; 60705 (18:4705) + db $3 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d765 ; flag's byte + dw PokemonTower3BattleText3 ; 0x474e TextBeforeBattle + dw PokemonTower3AfterBattleText3 ; 0x4758 TextAfterBattle + dw PokemonTower3EndBattleText3 ; 0x4753 TextEndBattle + dw PokemonTower3EndBattleText3 ; 0x4753 TextEndBattle + db $ff + +PokemonTower3Text1: ; 60712 (18:4712) + db $08 ; asm + ld hl, PokemonTower3TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +PokemonTower3Text2: ; 6071c (18:471c) + db $08 ; asm + ld hl, PokemonTower3TrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +PokemonTower3Text3: ; 60726 (18:4726) + db $08 ; asm + ld hl, PokemonTower3TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +PokemonTower3BattleText1: ; 60730 (18:4730) + TX_FAR _PokemonTower3BattleText1 + db "@" + +PokemonTower3EndBattleText1: ; 60735 (18:4735) + TX_FAR _PokemonTower3EndBattleText1 + db "@" + +PokemonTower3AfterBattleText1: ; 6073a (18:473a) + TX_FAR _PokemonTower3AfterBattleText1 + db "@" + +PokemonTower3BattleText2: ; 6073f (18:473f) + TX_FAR _PokemonTower3BattleText2 + db "@" + +PokemonTower3EndBattleText2: ; 60744 (18:4744) + TX_FAR _PokemonTower3EndBattleText2 + db "@" + +PokemonTower3AfterBattleText2: ; 60749 (18:4749) + TX_FAR _PokemonTower3AfterBattleText2 + db "@" + +PokemonTower3BattleText3: ; 6074e (18:474e) + TX_FAR _PokemonTower3BattleText3 + db "@" + +PokemonTower3EndBattleText3: ; 60753 (18:4753) + TX_FAR _PokemonTower3EndBattleText3 + db "@" + +PokemonTower3AfterBattleText3: ; 60758 (18:4758) + TX_FAR _PokemonTower3AfterBattleText3 + db "@" diff --git a/scripts/pokemontower4.asm b/scripts/pokemontower4.asm new file mode 100755 index 00000000..05fcb23f --- /dev/null +++ b/scripts/pokemontower4.asm @@ -0,0 +1,105 @@ +PokemonTower4Script: ; 607f6 (18:47f6) + call EnableAutoTextBoxDrawing + ld hl, PokemonTower4TrainerHeaders + ld de, PokemonTower4ScriptPointers + ld a, [W_POKEMONTOWER4CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_POKEMONTOWER4CURSCRIPT], a + ret + +PokemonTower4ScriptPointers: ; 60809 (18:4809) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +PokemonTower4TextPointers: ; 6080f (18:480f) + dw PokemonTower4Text1 + dw PokemonTower4Text2 + dw PokemonTower4Text3 + dw Predef5CText + dw Predef5CText + dw Predef5CText + +PokemonTower4TrainerHeaders: ; 6081b (18:481b) +PokemonTower4TrainerHeader0: ; 6081b (18:481b) + db $1 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d766 ; flag's byte + dw PokemonTower4BattleText1 ; 0x485e TextBeforeBattle + dw PokemonTower4AfterBattleText1 ; 0x4868 TextAfterBattle + dw PokemonTower4EndBattleText1 ; 0x4863 TextEndBattle + dw PokemonTower4EndBattleText1 ; 0x4863 TextEndBattle + +PokemonTower4TrainerHeader1: ; 60827 (18:4827) + db $2 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d766 ; flag's byte + dw PokemonTower4BattleText2 ; 0x486d TextBeforeBattle + dw PokemonTower4AfterBattleText2 ; 0x4877 TextAfterBattle + dw PokemonTower4EndBattleText2 ; 0x4872 TextEndBattle + dw PokemonTower4EndBattleText2 ; 0x4872 TextEndBattle + +PokemonTower4TrainerHeader2: ; 60833 (18:4833) + db $3 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d766 ; flag's byte + dw PokemonTower4BattleText3 ; 0x487c TextBeforeBattle + dw PokemonTower4AfterBattleText3 ; 0x4886 TextAfterBattle + dw PokemonTower4EndBattleText3 ; 0x4881 TextEndBattle + dw PokemonTower4EndBattleText3 ; 0x4881 TextEndBattle + + db $ff + +PokemonTower4Text1: ; 60840 (18:4840) + db $08 ; asm + ld hl, PokemonTower4TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +PokemonTower4Text2: ; 6084a (18:484a) + db $08 ; asm + ld hl, PokemonTower4TrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +PokemonTower4Text3: ; 60854 (18:4854) + db $08 ; asm + ld hl, PokemonTower4TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +PokemonTower4BattleText1: ; 6085e (18:485e) + TX_FAR _PokemonTower4BattleText1 + db "@" + +PokemonTower4EndBattleText1: ; 60863 (18:4863) + TX_FAR _PokemonTower4EndBattleText1 + db "@" + +PokemonTower4AfterBattleText1: ; 60868 (18:4868) + TX_FAR _PokemonTower4AfterBattleText1 + db "@" + +PokemonTower4BattleText2: ; 6086d (18:486d) + TX_FAR _PokemonTower4BattleText2 + db "@" + +PokemonTower4EndBattleText2: ; 60872 (18:4872) + TX_FAR _PokemonTower4EndBattleText2 + db "@" + +PokemonTower4AfterBattleText2: ; 60877 (18:4877) + TX_FAR _PokemonTower4AfterBattleText2 + db "@" + +PokemonTower4BattleText3: ; 6087c (18:487c) + TX_FAR _PokemonTower4BattleText3 + db "@" + +PokemonTower4EndBattleText3: ; 60881 (18:4881) + TX_FAR _PokemonTower4EndBattleText3 + db "@" + +PokemonTower4AfterBattleText3: ; 60886 (18:4886) + TX_FAR _PokemonTower4AfterBattleText3 + db "@" diff --git a/scripts/pokemontower5.asm b/scripts/pokemontower5.asm new file mode 100755 index 00000000..5c43c7da --- /dev/null +++ b/scripts/pokemontower5.asm @@ -0,0 +1,181 @@ +PokemonTower5Script: ; 60932 (18:4932) + call EnableAutoTextBoxDrawing + ld hl, PokemonTower5TrainerHeaders + ld de, PokemonTower5ScriptPointers + ld a, [W_POKEMONTOWER5CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_POKEMONTOWER5CURSCRIPT], a + ret + +PokemonTower5ScriptPointers: ; 60945 (18:4945) + dw PokemonTower5Script0 + dw Func_324c + dw EndTrainerBattle + +PokemonTower5Script0: ; 6094b (18:494b) + ld hl, CoordsData_60992 ; $4992 + call ArePlayerCoordsInArray + jr c, .asm_60960 + ld hl, $d72e + res 4, [hl] + ld hl, $d767 + res 7, [hl] + jp CheckFightingMapTrainers +.asm_60960 + ld hl, $d767 + bit 7, [hl] + set 7, [hl] + ret nz + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + ld hl, $d72e + set 4, [hl] + ld a, $7 + call Predef ; indirect jump to HealParty (f6a5 (3:76a5)) + call GBFadeOut2 + call Delay3 + call Delay3 + call GBFadeIn2 + ld a, $7 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + xor a + ld [wJoypadForbiddenButtonsMask], a + ret + +CoordsData_60992: ; 60992 (18:4992) + db $08,$0A + db $08,$0B + db $09,$0A + db $09,$0B + db $FF + +PokemonTower5TextPointers: ; 6099b (18:499b) + dw PokemonTower5Text1 + dw PokemonTower5Text2 + dw PokemonTower5Text3 + dw PokemonTower5Text4 + dw PokemonTower5Text5 + dw Predef5CText + dw PokemonTower5Text7 + +PokemonTower5TrainerHeaders: ; 609a9 (18:49a9) +PokemonTower5TrainerHeader0: ; 609a9 (18:49a9) + db $2 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d767 ; flag's byte + dw PokemonTower5BattleText1 ; 0x49e9 TextBeforeBattle + dw PokemonTower5AfterBattleText1 ; 0x49f3 TextAfterBattle + dw PokemonTower5EndBattleText1 ; 0x49ee TextEndBattle + dw PokemonTower5EndBattleText1 ; 0x49ee TextEndBattle + +PokemonTower5TrainerHeader1: ; 609b5 (18:49b5) + db $3 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d767 ; flag's byte + dw PokemonTower5BattleText2 ; 0x4a02 TextBeforeBattle + dw PokemonTower5AfterBattleText2 ; 0x4a0c TextAfterBattle + dw PokemonTower5EndBattleText2 ; 0x4a07 TextEndBattle + dw PokemonTower5EndBattleText2 ; 0x4a07 TextEndBattle + +PokemonTower5TrainerHeader2: ; 609c1 (18:49c1) + db $4 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d767 ; flag's byte + dw PokemonTower5BattleText3 ; 0x4a1b TextBeforeBattle + dw PokemonTower5AfterBattleText3 ; 0x4a25 TextAfterBattle + dw PokemonTower5EndBattleText3 ; 0x4a20 TextEndBattle + dw PokemonTower5EndBattleText3 ; 0x4a20 TextEndBattle + +PokemonTower5TrainerHeader3: ; 609cd (18:49cd) + db $5 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d767 ; flag's byte + dw PokemonTower5BattleText4 ; 0x4a34 TextBeforeBattle + dw PokemonTower5AfterBattleText4 ; 0x4a3e TextAfterBattle + dw PokemonTower5EndBattleText4 ; 0x4a39 TextEndBattle + dw PokemonTower5EndBattleText4 ; 0x4a39 TextEndBattle + + db $ff + +PokemonTower5Text1: ; 609da (18:49da) + TX_FAR _PokemonTower5Text1 + db "@" + +PokemonTower5Text2: ; 609df (18:49df) + db $08 ; asm + ld hl, PokemonTower5TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +PokemonTower5BattleText1: ; 609e9 (18:49e9) + TX_FAR _PokemonTower5BattleText1 + db "@" + +PokemonTower5EndBattleText1: ; 609ee (18:49ee) + TX_FAR _PokemonTower5EndBattleText1 + db "@" + +PokemonTower5AfterBattleText1: ; 609f3 (18:49f3) + TX_FAR _PokemonTower5AfterBattleText1 + db "@" + +PokemonTower5Text3: ; 609f8 (18:49f8) + db $08 ; asm + ld hl, PokemonTower5TrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +PokemonTower5BattleText2: ; 60a02 (18:4a02) + TX_FAR _PokemonTower5BattleText2 + db "@" + +PokemonTower5EndBattleText2: ; 60a07 (18:4a07) + TX_FAR _PokemonTower5EndBattleText2 + db "@" + +PokemonTower5AfterBattleText2: ; 60a0c (18:4a0c) + TX_FAR _PokemonTower5AfterBattleText2 + db "@" + +PokemonTower5Text4: ; 60a11 (18:4a11) + db $08 ; asm + ld hl, PokemonTower5TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +PokemonTower5BattleText3: ; 60a1b (18:4a1b) + TX_FAR _PokemonTower5BattleText3 + db "@" + +PokemonTower5EndBattleText3: ; 60a20 (18:4a20) + TX_FAR _PokemonTower5EndBattleText3 + db "@" + +PokemonTower5AfterBattleText3: ; 60a25 (18:4a25) + TX_FAR _PokemonTower5AfterBattleText3 + db "@" + +PokemonTower5Text5: ; 60a2a (18:4a2a) + db $08 ; asm + ld hl, PokemonTower5TrainerHeader3 ; $49cd + call TalkToTrainer + jp TextScriptEnd + +PokemonTower5BattleText4: ; 60a34 (18:4a34) + TX_FAR _PokemonTower5BattleText4 + db "@" + +PokemonTower5EndBattleText4: ; 60a39 (18:4a39) + TX_FAR _PokemonTower5EndBattleText4 + db "@" + +PokemonTower5AfterBattleText4: ; 60a3e (18:4a3e) + TX_FAR _PokemonTower5AfterBattleText4 + db "@" + +PokemonTower5Text7: ; 60a43 (18:4a43) + TX_FAR _PokemonTower5Text7 + db "@" diff --git a/scripts/pokemontower6.asm b/scripts/pokemontower6.asm new file mode 100755 index 00000000..e3d8a4c4 --- /dev/null +++ b/scripts/pokemontower6.asm @@ -0,0 +1,215 @@ +PokemonTower6Script: ; 60aef (18:4aef) + call EnableAutoTextBoxDrawing + ld hl, PokemonTower6TrainerHeaders + ld de, PokemonTower6ScriptPointers + ld a, [W_POKEMONTOWER6CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_POKEMONTOWER6CURSCRIPT], a + ret + +Func_60b02: ; 60b02 (18:4b02) + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [W_POKEMONTOWER6CURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +PokemonTower6ScriptPointers: ; 60b0d (18:4b0d) + dw PokemonTower6Script0 + dw Func_324c + dw EndTrainerBattle + dw PokemonTower6Script3 + dw PokemonTower6Script4 + +PokemonTower6Script0: ; 60b17 (18:4b17) + ld a, [$d768] + bit 7, a + jp nz, CheckFightingMapTrainers + ld hl, CoordsData_60b45 ; $4b45 + call ArePlayerCoordsInArray + jp nc, CheckFightingMapTrainers + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + ld a, $6 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + ld a, MAROWAK + ld [W_CUROPPONENT], a ; $d059 + ld a, 30 + ld [W_CURENEMYLVL], a ; $d127 + ld a, $4 + ld [W_POKEMONTOWER6CURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +CoordsData_60b45: ; 60b45 (18:4b45) + db $10,$0A,$FF + +PokemonTower6Script4: ; 60b48 (18:4b48) + ld a, [W_ISINBATTLE] ; $d057 + cp $ff + jp z, Func_60b02 + ld a, $ff + ld [wJoypadForbiddenButtonsMask], a + ld a, [$d72d] + bit 6, a + ret nz + call UpdateSprites + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + ld a, [$cf0b] + and a + jr nz, .asm_60b82 + ld hl, $d768 + set 7, [hl] + ld a, $7 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + xor a + ld [wJoypadForbiddenButtonsMask], a + ld a, $0 + ld [W_POKEMONTOWER6CURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret +.asm_60b82 + ld a, $1 + ld [$cd38], a + ld a, $10 + ld [$ccd3], a + xor a + ld [$c206], a + ld [$cd3b], a + ld hl, $d730 + set 7, [hl] + ld a, $3 + ld [W_POKEMONTOWER6CURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +PokemonTower6Script3: ; 60ba1 (18:4ba1) + ld a, [$cd38] + and a + ret nz + call Delay3 + xor a + ld [W_POKEMONTOWER6CURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +PokemonTower6TextPointers: ; 60bb1 (18:4bb1) + dw PokemonTower6Text1 + dw PokemonTower6Text2 + dw PokemonTower6Text3 + dw Predef5CText + dw Predef5CText + dw PokemonTower6Text6 + dw PokemonTower6Text7 + +PokemonTower6TrainerHeaders: ; 60bbf (18:4bbf) +PokemonTower6TrainerHeader0: ; 60bbf (18:4bbf) + db $1 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d768 ; flag's byte + dw PokemonTower6BattleText1 ; 0x4c29 TextBeforeBattle + dw PokemonTower6AfterBattleText1 ; 0x4c33 TextAfterBattle + dw PokemonTower6EndBattleText1 ; 0x4c2e TextEndBattle + dw PokemonTower6EndBattleText1 ; 0x4c2e TextEndBattle + +PokemonTower6TrainerHeader1: ; 60bcb (18:4bcb) + db $2 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d768 ; flag's byte + dw PokemonTower6BattleText2 ; 0x4c38 TextBeforeBattle + dw PokemonTower6AfterBattleText2 ; 0x4c42 TextAfterBattle + dw PokemonTower6EndBattleText2 ; 0x4c3d TextEndBattle + dw PokemonTower6EndBattleText2 ; 0x4c3d TextEndBattle + +PokemonTower6TrainerHeader2: ; 60bd7 (18:4bd7) + db $3 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d768 ; flag's byte + dw PokemonTower6BattleText3 ; 0x4c47 TextBeforeBattle + dw PokemonTower6AfterBattleText3 ; 0x4c51 TextAfterBattle + dw PokemonTower6EndBattleText3 ; 0x4c4c TextEndBattle + dw PokemonTower6EndBattleText3 ; 0x4c4c TextEndBattle + + db $ff + +PokemonTower6Text1: ; 60be4 (18:4be4) + db $08 ; asm + ld hl, PokemonTower6TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +PokemonTower6Text2: ; 60bee (18:4bee) + db $08 ; asm + ld hl, PokemonTower6TrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +PokemonTower6Text3: ; 60bf8 (18:4bf8) + db $08 ; asm + ld hl, PokemonTower6TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +PokemonTower6Text7: ; 60c02 (18:4c02) + db $8 + ld hl, PokemonTower2Text_60c1f + call PrintText + ld a, MAROWAK + call PlayCry + call WaitForSoundToFinish + ld c, $1e + call DelayFrames + ld hl, PokemonTower2Text_60c24 + call PrintText + jp TextScriptEnd + +PokemonTower2Text_60c1f: ; 60c1f (18:4c1f) + TX_FAR _PokemonTower2Text_60c1f + db "@" + +PokemonTower2Text_60c24: ; 60c24 (18:4c24) + TX_FAR _PokemonTower2Text_60c24 + db "@" + +PokemonTower6BattleText1: ; 60c29 (18:4c29) + TX_FAR _PokemonTower6BattleText1 + db "@" + +PokemonTower6EndBattleText1: ; 60c2e (18:4c2e) + TX_FAR _PokemonTower6EndBattleText1 + db "@" + +PokemonTower6AfterBattleText1: ; 60c33 (18:4c33) + TX_FAR _PokemonTower6AfterBattleText1 + db "@" + +PokemonTower6BattleText2: ; 60c38 (18:4c38) + TX_FAR _PokemonTower6BattleText2 + db "@" + +PokemonTower6EndBattleText2: ; 60c3d (18:4c3d) + TX_FAR _PokemonTower6EndBattleText2 + db "@" + +PokemonTower6AfterBattleText2: ; 60c42 (18:4c42) + TX_FAR _PokemonTower6AfterBattleText2 + db "@" + +PokemonTower6BattleText3: ; 60c47 (18:4c47) + TX_FAR _PokemonTower6BattleText3 + db "@" + +PokemonTower6EndBattleText3: ; 60c4c (18:4c4c) + TX_FAR _PokemonTower6EndBattleText3 + db "@" + +PokemonTower6AfterBattleText3: ; 60c51 (18:4c51) + TX_FAR _PokemonTower6AfterBattleText3 + db "@" + +PokemonTower6Text6: ; 60c56 (18:4c56) + TX_FAR _PokemonTower6Text6 + db "@" diff --git a/scripts/pokemontower7.asm b/scripts/pokemontower7.asm new file mode 100755 index 00000000..3e1fcccb --- /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, LAVENDER_TOWN + ld [wLastMap], 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 "@" diff --git a/scripts/powerplant.asm b/scripts/powerplant.asm new file mode 100755 index 00000000..d5e126dc --- /dev/null +++ b/scripts/powerplant.asm @@ -0,0 +1,176 @@ +PowerPlantScript: ; 1e2c6 (7:62c6) + call EnableAutoTextBoxDrawing + ld hl, PowerPlantTrainerHeaders + ld de, PowerPlantScriptPointers + ld a, [W_POWERPLANTCURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_POWERPLANTCURSCRIPT], a + ret + +PowerPlantScriptPointers: ; 1e2d9 (7:62d9) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +PowerPlantTextPointers: ; 1e2df (7:62df) + dw PowerPlantText1 + dw PowerPlantText2 + dw PowerPlantText3 + dw PowerPlantText4 + dw PowerPlantText5 + dw PowerPlantText6 + dw PowerPlantText7 + dw PowerPlantText8 + dw PowerPlantText9 + dw Predef5CText + dw Predef5CText + dw Predef5CText + dw Predef5CText + dw Predef5CText + +PowerPlantTrainerHeaders: ; 1e2fb (7:62fb) +PowerPlantTrainerHeader0: ; 1e2fb (7:62fb) + db 1 ; flag's bit + db 0 ; view range + dw $d7d3 ; flag's byte + dw VoltorbBattleText ; TextBeforeBattle + dw VoltorbBattleText ; TextAfterBattle + dw VoltorbBattleText ; TextEndBattle + dw VoltorbBattleText ; TextEndBattle + +PowerPlantTrainerHeader1: ; 1e307 (7:6307) + db 2 ; flag's bit + db 0 ; view range + dw $d7d3 ; flag's byte + dw VoltorbBattleText ; TextBeforeBattle + dw VoltorbBattleText ; TextAfterBattle + dw VoltorbBattleText ; TextEndBattle + dw VoltorbBattleText ; TextEndBattle + +PowerPlantTrainerHeader2: ; 1e313 (7:6313) + db 3 ; flag's bit + db 0 ; view range + dw $d7d3 ; flag's byte + dw VoltorbBattleText ; TextBeforeBattle + dw VoltorbBattleText ; TextAfterBattle + dw VoltorbBattleText ; TextEndBattle + dw VoltorbBattleText ; TextEndBattle + +PowerPlantTrainerHeader3: ; 1e31f (7:631f) + db 4 ; flag's bit + db 0 ; view range + dw $d7d3 ; flag's byte + dw VoltorbBattleText ; TextBeforeBattle + dw VoltorbBattleText ; TextAfterBattle + dw VoltorbBattleText ; TextEndBattle + dw VoltorbBattleText ; TextEndBattle + +PowerPlantTrainerHeader4: ; 1e32b (7:632b) + db 5 ; flag's bit + db 0 ; view range + dw $d7d3 ; flag's byte + dw VoltorbBattleText ; TextBeforeBattle + dw VoltorbBattleText ; TextAfterBattle + dw VoltorbBattleText ; TextEndBattle + dw VoltorbBattleText ; TextEndBattle + +PowerPlantTrainerHeader5: ; 1e337 (7:6337) + db 6 ; flag's bit + db 0 ; view range + dw $d7d3 ; flag's byte + dw VoltorbBattleText ; TextBeforeBattle + dw VoltorbBattleText ; TextAfterBattle + dw VoltorbBattleText ; TextEndBattle + dw VoltorbBattleText ; TextEndBattle + +PowerPlantTrainerHeader6: ; 1e343 (7:6343) + db 7 ; flag's bit + db 0 ; view range + dw $d7d3 ; flag's byte + dw VoltorbBattleText ; TextBeforeBattle + dw VoltorbBattleText ; TextAfterBattle + dw VoltorbBattleText ; TextEndBattle + dw VoltorbBattleText ; TextEndBattle + +PowerPlantTrainerHeader7: ; 1e34f (7:634f) + db 8 ; flag's bit + db 0 ; view range + dw $d7d3 ; flag's byte + dw VoltorbBattleText ; TextBeforeBattle + dw VoltorbBattleText ; TextAfterBattle + dw VoltorbBattleText ; TextEndBattle + dw VoltorbBattleText ; TextEndBattle + +PowerPlantTrainerHeader8: ; 1e35b (7:635b) + db 9 ; flag's bit + db 0 ; view range + dw $d7d3 ; flag's byte + dw ZapdosBattleText ; TextBeforeBattle + dw ZapdosBattleText ; TextAfterBattle + dw ZapdosBattleText ; TextEndBattle + dw ZapdosBattleText ; TextEndBattle + + db $ff + +asm_234cc: ; 1e368 (7:6368) + call TalkToTrainer + ld a, [W_CURMAPSCRIPT] + ld [W_POWERPLANTCURSCRIPT], a + jp TextScriptEnd + +PowerPlantText1: ; 1e374 (7:6374) + db $8 ; asm + ld hl, PowerPlantTrainerHeader0 ; $62fb + jr asm_234cc ; 0x1e378 $ee + +PowerPlantText2: ; 1e37a (7:637a) + db $8 ; asm + ld hl, PowerPlantTrainerHeader1 ; $6307 + jr asm_234cc ; 0x1e37e $e8 + +PowerPlantText3: ; 1e380 (7:6380) + db $8 ; asm + ld hl, PowerPlantTrainerHeader2 ; $6313 + jr asm_234cc ; 0x1e384 $e2 + +PowerPlantText4: ; 1e386 (7:6386) + db $8 ; asm + ld hl, PowerPlantTrainerHeader3 ; $631f + jr asm_234cc ; 0x1e38a $dc + +PowerPlantText5: ; 1e38c (7:638c) + db $8 ; asm + ld hl, PowerPlantTrainerHeader4 ; $632b + jr asm_234cc ; 0x1e390 $d6 + +PowerPlantText6: ; 1e392 (7:6392) + db $8 ; asm + ld hl, PowerPlantTrainerHeader5 ; $6337 + jr asm_234cc ; 0x1e396 $d0 + +PowerPlantText7: ; 1e398 (7:6398) + db $8 ; asm + ld hl, PowerPlantTrainerHeader6 ; $6343 + jr asm_234cc ; 0x1e39c $ca + +PowerPlantText8: ; 1e39e (7:639e) + db $8 ; asm + ld hl, PowerPlantTrainerHeader7 ; $634f + jr asm_234cc ; 0x1e3a2 $c4 + +PowerPlantText9: ; 1e3a4 (7:63a4) + db $8 ; asm + ld hl, PowerPlantTrainerHeader8 ; $635b + jr asm_234cc ; 0x1e3a8 $be + +VoltorbBattleText: ; 1e3aa (7:63aa) + TX_FAR _VoltorbBattleText + db "@" + +ZapdosBattleText: ; 1e3af (7:63af) + TX_FAR _ZapdosBattleText + db $8 + ld a, ZAPDOS + call PlayCry + call WaitForSoundToFinish + jp TextScriptEnd diff --git a/scripts/redshouse1f.asm b/scripts/redshouse1f.asm new file mode 100755 index 00000000..b787669e --- /dev/null +++ b/scripts/redshouse1f.asm @@ -0,0 +1,69 @@ +RedsHouse1FScript: ; 48168 (12:4168) + jp EnableAutoTextBoxDrawing + +RedsHouse1FTextPointers: ; 4816b (12:416b) + dw RedsHouse1FText1 + dw RedsHouse1FText2 + +RedsHouse1FText1: ; 4816f (12:416f) ; 416F Mom + db 8 + ld a, [$D72E] + bit 3, a + jr nz, .heal ; if player has received a Pokémon from Oak, heal team + ld hl, MomWakeUpText + call PrintText + jr .done +.heal + call MomHealPokemon +.done + jp TextScriptEnd + +MomWakeUpText: ; 48185 (12:4185) + TX_FAR _MomWakeUpText + db "@" + +MomHealPokemon: ; 4818a (12:418a) + ld hl, MomHealText1 + call PrintText + call GBFadeOut2 + call ReloadMapData + PREDEF HealPartyPredef + ld a, MUSIC_PKMN_HEALED + ld [$C0EE], a + call PlaySound ; play sound? +.next + ld a, [$C026] + cp MUSIC_PKMN_HEALED + jr z, .next + ld a, [$D35B] + ld [$C0EE], a + call PlaySound + call GBFadeIn2 + ld hl, MomHealText2 + jp PrintText + +MomHealText1: ; 481bc (12:41bc) + TX_FAR _MomHealText1 + db "@" +MomHealText2: ; 481c1 (12:41c1) + TX_FAR _MomHealText2 + db "@" + +RedsHouse1FText2: ; 0x481c6 TV + db 8 + ld a,[$C109] + cp 4 + ld hl,TVWrongSideText + jr nz,.done ; if player is not facing up + ld hl,StandByMeText +.done + call PrintText + jp TextScriptEnd + +StandByMeText: ; 481da (12:41da) + TX_FAR _StandByMeText + db "@" + +TVWrongSideText: ; 481df (12:41df) + TX_FAR _TVWrongSideText + db "@" diff --git a/scripts/redshouse2f.asm b/scripts/redshouse2f.asm new file mode 100755 index 00000000..1004860c --- /dev/null +++ b/scripts/redshouse2f.asm @@ -0,0 +1,24 @@ +RedsHouse2FScript: ; 5c0b0 (17:40b0) + call EnableAutoTextBoxDrawing + ld hl,RedsHouse2FScriptPointers + ld a,[W_REDSHOUSE2CURSCRIPT] + jp CallFunctionInTable + +RedsHouse2FScriptPointers: ; 5c0bc (17:40bc) + dw RedsHouse2FScript0 + dw RedsHouse2FScript1 + +RedsHouse2FScript0: ; 5c0c0 (17:40c0) + xor a + ld [H_CURRENTPRESSEDBUTTONS],a + ld a,8 + ld [$D528],a + ld a,1 + ld [W_REDSHOUSE2CURSCRIPT],a + ret + +RedsHouse2FScript1: ; 5c0ce (17:40ce) + ret + +RedsHouse2FTextPointers: ; 5c0cf (17:40cf) + db "@" diff --git a/scripts/rockethideout1.asm b/scripts/rockethideout1.asm new file mode 100755 index 00000000..ce88ff90 --- /dev/null +++ b/scripts/rockethideout1.asm @@ -0,0 +1,193 @@ +RocketHideout1Script: ; 44bca (11:4bca) + call RocketHideout1Script_44be0 + call EnableAutoTextBoxDrawing + ld hl, RocketHideout1TrainerHeaders + ld de, RocketHideout1ScriptPointers + ld a, [W_ROCKETHIDEOUT1CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_ROCKETHIDEOUT1CURSCRIPT], a + ret + +RocketHideout1Script_44be0: ; 44be0 (11:4be0) + ld hl, $d126 + bit 5, [hl] + res 5, [hl] + ret z + ld a, [$d815] + bit 7, a + jr nz, .asm_44c01 + bit 5, a + jr nz, .asm_44bf7 + ld a, $54 + jr .asm_44c03 +.asm_44bf7 + ld a, (SFX_02_57 - SFX_Headers_02) / 3 + call PlaySound + ld hl, $d815 + bit 7, [hl] +.asm_44c01 + ld a, $e +.asm_44c03 + ld [$d09f], a + ld bc, $080c + ld a, $17 + jp Predef + +RocketHideout1ScriptPointers: ; 44c0e (11:4c0e) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +RocketHideout1TextPointers: ; 44c14 (11:4c14) + dw RocketHideout1Text1 + dw RocketHideout1Text2 + dw RocketHideout1Text3 + dw RocketHideout1Text4 + dw RocketHideout1Text5 + dw Predef5CText + dw Predef5CText + +RocketHideout1TrainerHeaders: ; 44c22 (11:4c22) +RocketHideout1TrainerHeader0: ; 44c22 (11:4c22) + db $1 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d815 ; flag's byte + dw RocketHideout1BattleText2 ; 0x4ca1 TextBeforeBattle + dw RocketHideout1AfterBattleTxt2 ; 0x4cab TextAfterBattle + dw RocketHideout1EndBattleText2 ; 0x4ca6 TextEndBattle + dw RocketHideout1EndBattleText2 ; 0x4ca6 TextEndBattle + +RocketHideout1TrainerHeader2: ; 44c2e (11:4c2e) + db $2 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d815 ; flag's byte + dw RocketHideout1BattleText3 ; 0x4cb0 TextBeforeBattle + dw RocketHideout1AfterBattleTxt3 ; 0x4cba TextAfterBattle + dw RocketHideout1EndBattleText3 ; 0x4cb5 TextEndBattle + dw RocketHideout1EndBattleText3 ; 0x4cb5 TextEndBattle + +RocketHideout1TrainerHeader3: ; 44c3a (11:4c3a) + db $3 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d815 ; flag's byte + dw RocketHideout1BattleText4 ; 0x4cbf TextBeforeBattle + dw RocketHideout1AfterBattleTxt4 ; 0x4cc9 TextAfterBattle + dw RocketHideout1EndBattleText4 ; 0x4cc4 TextEndBattle + dw RocketHideout1EndBattleText4 ; 0x4cc4 TextEndBattle + +RocketHideout1TrainerHeader4: ; 44c46 (11:4c46) + db $4 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d815 ; flag's byte + dw RocketHideout1BattleText5 ; 0x4cce TextBeforeBattle + dw RocketHideout1AfterBattleTxt5 ; 0x4cd8 TextAfterBattle + dw RocketHideout1EndBattleText5 ; 0x4cd3 TextEndBattle + dw RocketHideout1EndBattleText5 ; 0x4cd3 TextEndBattle + +RocketHideout1TrainerHeader5: ; 44c52 (11:4c52) + db $5 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d815 ; flag's byte + dw RocketHideout1BattleText6 ; 0x4cdd TextBeforeBattle + dw RocketHideout1AfterBattleTxt6 ; 0x4ce2 TextAfterBattle + dw RocketHideout1EndBattleText6 ; 0x4c91 TextEndBattle + dw RocketHideout1EndBattleText6 ; 0x4c91 TextEndBattle + + db $ff + +RocketHideout1Text1: ; 44c5f (11:4c5f) + db $08 ; asm + ld hl, RocketHideout1TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +RocketHideout1Text2: ; 44c69 (11:4c69) + db $08 ; asm + ld hl, RocketHideout1TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +RocketHideout1Text3: ; 44c73 (11:4c73) + db $08 ; asm + ld hl, RocketHideout1TrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +RocketHideout1Text4: ; 44c7d (11:4c7d) + db $08 ; asm + ld hl, RocketHideout1TrainerHeader4 + call TalkToTrainer + jp TextScriptEnd + +RocketHideout1Text5: ; 44c87 (11:4c87) + db $08 ; asm + ld hl, RocketHideout1TrainerHeader5 + call TalkToTrainer + jp TextScriptEnd + +RocketHideout1EndBattleText6: ; 44c91 (11:4c91) + TX_FAR _RocketHideout1EndBattleText6 + db $8 + ld hl, $d815 + set 5, [hl] + ld hl, RocketHideout1Text_44c9f + ret + +RocketHideout1Text_44c9f: ; 44c9f (11:4c9f) + db $6, "@" + +RocketHideout1BattleText2: ; 44ca1 (11:4ca1) + TX_FAR _RocketHideout1BattleText2 + db "@" + +RocketHideout1EndBattleText2: ; 44ca6 (11:4ca6) + TX_FAR _RocketHideout1EndBattleText2 + db "@" + +RocketHideout1AfterBattleTxt2: ; 44cab (11:4cab) + TX_FAR _RocketHideout1AfterBattleTxt2 + db "@" + +RocketHideout1BattleText3: ; 44cb0 (11:4cb0) + TX_FAR _RocketHideout1BattleText3 + db "@" + +RocketHideout1EndBattleText3: ; 44cb5 (11:4cb5) + TX_FAR _RocketHideout1EndBattleText3 + db "@" + +RocketHideout1AfterBattleTxt3: ; 44cba (11:4cba) + TX_FAR _RocketHideout1AfterBattleTxt3 + db "@" + +RocketHideout1BattleText4: ; 44cbf (11:4cbf) + TX_FAR _RocketHideout1BattleText4 + db "@" + +RocketHideout1EndBattleText4: ; 44cc4 (11:4cc4) + TX_FAR _RocketHideout1EndBattleText4 + db "@" + +RocketHideout1AfterBattleTxt4: ; 44cc9 (11:4cc9) + TX_FAR _RocketHideout1AfterBattleTxt4 + db "@" + +RocketHideout1BattleText5: ; 44cce (11:4cce) + TX_FAR _RocketHideout1BattleText5 + db "@" + +RocketHideout1EndBattleText5: ; 44cd3 (11:4cd3) + TX_FAR _RocketHideout1EndBattleText5 + db "@" + +RocketHideout1AfterBattleTxt5: ; 44cd8 (11:4cd8) + TX_FAR _RocketHideout1AfterBattleTxt5 + db "@" + +RocketHideout1BattleText6: ; 44cdd (11:4cdd) + TX_FAR _RocketHideout1BattleText6 + db "@" + +RocketHideout1AfterBattleTxt6: ; 44ce2 (11:4ce2) + TX_FAR _RocketHideout1AfterBattleTxt6 + db "@" diff --git a/scripts/rockethideout2.asm b/scripts/rockethideout2.asm new file mode 100755 index 00000000..ac427373 --- /dev/null +++ b/scripts/rockethideout2.asm @@ -0,0 +1,501 @@ +RocketHideout2Script: ; 44e27 (11:4e27) + call EnableAutoTextBoxDrawing + ld hl, RocketHideout2TrainerHeaders + ld de, RocketHideout2ScriptPointers + ld a, [W_ROCKETHIDEOUT2CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_ROCKETHIDEOUT2CURSCRIPT], a + ret + +RocketHideout2ScriptPointers: ; 44e3a (11:4e3a) + dw RocketHideout2Script0 + dw Func_324c + dw EndTrainerBattle + dw RocketHideout2Script3 + +RocketHideout2Script0: ; 44e42 (11:4e42) + ld a, [W_YCOORD] + ld b, a + ld a, [W_XCOORD] + ld c, a + ld hl, RocketHideout2ArrowTilePlayerMovement + call Func_3442 + cp $ff + jp z, CheckFightingMapTrainers + ld hl, $d736 + set 7, [hl] + call Func_3486 + ld a, (SFX_02_52 - SFX_Headers_02) / 3 + call PlaySound + ld a, $ff + ld [wJoypadForbiddenButtonsMask], a + ld a, $3 + ld [W_CURMAPSCRIPT], a + ret + +;format: +;db y,x +;dw pointer to movement +RocketHideout2ArrowTilePlayerMovement: ; 44e6d (11:4e6d) + db $9,$4 + dw RocketHideout2ArrowMovement1 + db $b,$4 + dw RocketHideout2ArrowMovement2 + db $f,$4 + dw RocketHideout2ArrowMovement3 + db $10,$4 + dw RocketHideout2ArrowMovement4 + db $13,$4 + dw RocketHideout2ArrowMovement1 + db $16,$4 + dw RocketHideout2ArrowMovement5 + db $e,$5 + dw RocketHideout2ArrowMovement6 + db $16,$6 + dw RocketHideout2ArrowMovement7 + db $18,$6 + dw RocketHideout2ArrowMovement8 + db $9,$8 + dw RocketHideout2ArrowMovement9 + db $c,$8 + dw RocketHideout2ArrowMovement10 + db $f,$8 + dw RocketHideout2ArrowMovement8 + db $13,$8 + dw RocketHideout2ArrowMovement9 + db $17,$8 + dw RocketHideout2ArrowMovement11 + db $e,$9 + dw RocketHideout2ArrowMovement12 + db $16,$9 + dw RocketHideout2ArrowMovement12 + db $9,$a + dw RocketHideout2ArrowMovement13 + db $a,$a + dw RocketHideout2ArrowMovement14 + db $f,$a + dw RocketHideout2ArrowMovement15 + db $11,$a + dw RocketHideout2ArrowMovement16 + db $13,$a + dw RocketHideout2ArrowMovement17 + db $19,$a + dw RocketHideout2ArrowMovement2 + db $e,$b + dw RocketHideout2ArrowMovement18 + db $10,$b + dw RocketHideout2ArrowMovement19 + db $12,$b + dw RocketHideout2ArrowMovement12 + db $9,$c + dw RocketHideout2ArrowMovement20 + db $b,$c + dw RocketHideout2ArrowMovement21 + db $d,$c + dw RocketHideout2ArrowMovement22 + db $11,$c + dw RocketHideout2ArrowMovement23 + db $a,$d + dw RocketHideout2ArrowMovement24 + db $c,$d + dw RocketHideout2ArrowMovement25 + db $10,$d + dw RocketHideout2ArrowMovement26 + db $12,$d + dw RocketHideout2ArrowMovement27 + db $13,$d + dw RocketHideout2ArrowMovement28 + db $16,$d + dw RocketHideout2ArrowMovement29 + db $17,$d + dw RocketHideout2ArrowMovement30 + db $11,$e + dw RocketHideout2ArrowMovement31 + db $10,$f + dw RocketHideout2ArrowMovement12 + db $e,$10 + dw RocketHideout2ArrowMovement32 + db $10,$10 + dw RocketHideout2ArrowMovement33 + db $12,$10 + dw RocketHideout2ArrowMovement34 + db $a,$11 + dw RocketHideout2ArrowMovement35 + db $b,$11 + dw RocketHideout2ArrowMovement36 + db $FF + +;format: direction, count +;right: $10 +;left: $20 +;up: $40 +;down: $80 +;each list is read starting from the $FF and working backwards +RocketHideout2ArrowMovement1: ; 44f1a (11:4f1a) + db $20,$02 + db $FF + +RocketHideout2ArrowMovement2: ; 44f1d (11:4f1d) + db $10,$04 + db $FF + +RocketHideout2ArrowMovement3: ; 44f20 (11:4f20) + db $40,$04 + db $10,$04 + db $FF + +RocketHideout2ArrowMovement4: ; 44f25 (11:4f25) + db $40,$04 + db $10,$04 + db $40,$01 + db $FF + +RocketHideout2ArrowMovement5: ; 44f2c (11:4f2c) + db $20,$02 + db $40,$03 + db $FF + +RocketHideout2ArrowMovement6: ; 44f31 (11:4f31) + db $80,$02 + db $10,$04 + db $FF + +RocketHideout2ArrowMovement7: ; 44f36 (11:4f36) + db $40,$02 + db $FF + +RocketHideout2ArrowMovement8: ; 44f39 (11:4f39) + db $40,$04 + db $FF + +RocketHideout2ArrowMovement9: ; 44f3c (11:4f3c) + db $20,$06 + db $FF + +RocketHideout2ArrowMovement10: ; 44f3f (11:4f3f) + db $40,$01 + db $FF + +RocketHideout2ArrowMovement11: ; 44f42 (11:4f42) + db $20,$06 + db $40,$04 + db $FF + +RocketHideout2ArrowMovement12: ; 44f47 (11:4f47) + db $80,$02 + db $FF + +RocketHideout2ArrowMovement13: ; 44f4a (11:4f4a) + db $20,$08 + db $FF + +RocketHideout2ArrowMovement14: ; 44f4d (11:4f4d) + db $20,$08 + db $40,$01 + db $FF + +RocketHideout2ArrowMovement15: ; 44f52 (11:4f52) + db $20,$08 + db $40,$06 + db $FF + +RocketHideout2ArrowMovement16: ; 44f57 (11:4f57) + db $40,$02 + db $10,$04 + db $FF + +RocketHideout2ArrowMovement17: ; 44f5c (11:4f5c) + db $40,$02 + db $10,$04 + db $40,$02 + db $FF + +RocketHideout2ArrowMovement18: ; 44f63 (11:4f63) + db $80,$02 + db $10,$04 + db $80,$02 + db $FF + +RocketHideout2ArrowMovement19: ; 44f6a (11:4f6a) + db $80,$02 + db $10,$04 + db $FF + +RocketHideout2ArrowMovement20: ; 44f6f (11:4f6f) + db $20,$0A + db $FF + +RocketHideout2ArrowMovement21: ; 44f72 (11:4f72) + db $20,$0A + db $40,$02 + db $FF + +RocketHideout2ArrowMovement22: ; 44f77 (11:4f77) + db $20,$0A + db $40,$04 + db $FF + +RocketHideout2ArrowMovement23: ; 44f7c (11:4f7c) + db $40,$02 + db $10,$02 + db $FF + +RocketHideout2ArrowMovement24: ; 44f81 (11:4f81) + db $10,$01 + db $80,$02 + db $FF + +RocketHideout2ArrowMovement25: ; 44f86 (11:4f86) + db $10,$01 + db $FF + +RocketHideout2ArrowMovement26: ; 44f89 (11:4f89) + db $80,$02 + db $10,$02 + db $FF + +RocketHideout2ArrowMovement27: ; 44f8e (11:4f8e) + db $80,$02 + db $20,$02 + db $FF + +RocketHideout2ArrowMovement28: ; 44f93 (11:4f93) + db $40,$02 + db $10,$04 + db $40,$02 + db $20,$03 + db $FF + +RocketHideout2ArrowMovement29: ; 44f9c (11:4f9c) + db $80,$02 + db $20,$04 + db $FF + +RocketHideout2ArrowMovement30: ; 44fa1 (11:4fa1) + db $20,$06 + db $40,$04 + db $20,$05 + db $FF + +RocketHideout2ArrowMovement31: ; 44fa8 (11:4fa8) + db $40,$02 + db $FF + +RocketHideout2ArrowMovement32: ; 44fab (11:4fab) + db $40,$01 + db $FF + +RocketHideout2ArrowMovement33: ; 44fae (11:4fae) + db $40,$03 + db $FF + +RocketHideout2ArrowMovement34: ; 44fb1 (11:4fb1) + db $40,$05 + db $FF + +RocketHideout2ArrowMovement35: ; 44fb4 (11:4fb4) + db $10,$01 + db $80,$02 + db $20,$04 + db $FF + +RocketHideout2ArrowMovement36: ; 44fbb (11:4fbb) + db $20,$0A + db $40,$02 + db $20,$05 + db $FF + +RocketHideout2Script3: ; 44fc2 (11:4fc2) + ld a, [$cd38] + and a + jr nz, LoadSpinnerArrowTiles + xor a + ld [wJoypadForbiddenButtonsMask], a + ld hl, $d736 + res 7, [hl] + ld a, $0 + ld [W_CURMAPSCRIPT], a + ret + +LoadSpinnerArrowTiles: ; 44fd7 (11:4fd7) + ld a, [$c102] + srl a + srl a + ld hl, SpinnerPlayerFacingDirections ; $5083 + ld c, a + ld b, $0 + add hl, bc + ld a, [hl] + ld [$c102], a + ld a, [W_CURMAPTILESET] ; $d367 + cp FACILITY + ld hl, SpinnerArrowTilePointers1 ; $5023 + jr z, .asm_44ff6 + ld hl, SpinnerArrowTilePointers2 ; $5053 +.asm_44ff6 + ld a, [$cd38] + bit 0, a + jr nz, .asm_45001 + ld de, $18 + add hl, de +.asm_45001 + ld a, $4 + ld bc, $0 +.asm_45006 + push af + push hl + push bc + add hl, bc + ld a, [hli] + ld e, a + ld a, [hli] + ld d, a + ld a, [hli] + ld c, a + ld a, [hli] + ld b, a + ld a, [hli] + ld h, [hl] + ld l, a + call CopyVideoData + pop bc + ld a, $6 + add c + ld c, a + pop hl + pop af + dec a + jr nz, .asm_45006 + ret + +SpinnerArrowTilePointers1: ; 45023 (11:5023) + dw SpinnerArrowAnimTiles ;address from within tileset graphics + db 1 ;number of tiles to copy? + db BANK(SpinnerArrowAnimTiles) ;bank of tileset graphics + dw $9200 ;where to load in VRAM + + dw SpinnerArrowAnimTiles + $10 + db 1 + db BANK(SpinnerArrowAnimTiles) + dw $9210 + + dw SpinnerArrowAnimTiles + $20 + db 1 + db BANK(SpinnerArrowAnimTiles) + dw $9300 + + dw SpinnerArrowAnimTiles + $30 + db 1 + db BANK(SpinnerArrowAnimTiles) + dw $9310 + + dw Facility_GFX + $200 + db 1 + db BANK(Facility_GFX) + dw $9200 + + dw Facility_GFX + $210 + db 1 + db BANK(Facility_GFX) + dw $9210 + + dw Facility_GFX + $300 + db 1 + db BANK(Facility_GFX) + dw $9300 + + dw Facility_GFX + $310 + db 1 + db BANK(Facility_GFX) + dw $9310 + +SpinnerArrowTilePointers2: ; 45053 (11:5053) + dw SpinnerArrowAnimTiles + $10 + db 1 + db BANK(SpinnerArrowAnimTiles) + dw $93C0 + + dw SpinnerArrowAnimTiles + $30 + db 1 + db BANK(SpinnerArrowAnimTiles) + dw $93D0 + + dw SpinnerArrowAnimTiles + db 1 + db BANK(SpinnerArrowAnimTiles) + dw $94C0 + + dw SpinnerArrowAnimTiles + $20 + db 1 + db BANK(SpinnerArrowAnimTiles) + dw $94D0 + + dw Gym_GFX + $3C0 + db 1 + db BANK(Facility_GFX) + dw $93C0 + + dw Gym_GFX + $3D0 + db 1 + db BANK(Facility_GFX) + dw $93D0 + + dw Gym_GFX + $4C0 + db 1 + db BANK(Facility_GFX) + dw $94C0 + + dw Gym_GFX + $4D0 + db 1 + db BANK(Facility_GFX) + dw $94D0 + +SpinnerPlayerFacingDirections: ; 45083 (11:5083) +; This isn't the order of the facing directions. Rather, it's a list of +; the facing directions that come next. For example, when the player is +; facing down (00), the next facing direction is left (08). + db $08 ; down -> left + db $0C ; up -> right + db $04 ; left -> up + db $00 ; right -> down + +; these tiles are the animation for the tiles that push the player in dungeons like Rocket HQ +SpinnerArrowAnimTiles: ; 45087 (11:5087) + INCBIN "gfx/spinner_arrow.2bpp" + +RocketHideout2TextPointers: ; 450c7 (11:50c7) + dw RocketHideout2Text1 + dw Predef5CText + dw Predef5CText + dw Predef5CText + dw Predef5CText + +RocketHideout2TrainerHeaders: ; 450d1 (11:50d1) +RocketHideout2TrainerHeader0: ; 450d1 (11:50d1) + db $1 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d817 ; flag's byte + dw RocketHideout2BattleText2 ; 0x50e8 TextBeforeBattle + dw RocketHideout2AfterBattleTxt2 ; 0x50f2 TextAfterBattle + dw RocketHideout2EndBattleText2 ; 0x50ed TextEndBattle + dw RocketHideout2EndBattleText2 ; 0x50ed TextEndBattle + + db $ff + +RocketHideout2Text1: ; 450de (11:50de) + db $08 ; asm + ld hl, RocketHideout2TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +RocketHideout2BattleText2: ; 450e8 (11:50e8) + TX_FAR _RocketHideout2BattleText2 + db "@" + +RocketHideout2EndBattleText2: ; 450ed (11:50ed) + TX_FAR _RocketHideout2EndBattleText2 + db "@" + +RocketHideout2AfterBattleTxt2: ; 450f2 (11:50f2) + TX_FAR _RocketHideout2AfterBattleTxt2 + db "@" diff --git a/scripts/rockethideout3.asm b/scripts/rockethideout3.asm new file mode 100755 index 00000000..d9e1d077 --- /dev/null +++ b/scripts/rockethideout3.asm @@ -0,0 +1,211 @@ +RocketHideout3Script: ; 45225 (11:5225) + call EnableAutoTextBoxDrawing + ld hl, RocketHideout3TrainerHeaders + ld de, RocketHideout3ScriptPointers + ld a, [W_ROCKETHIDEOUT3CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_ROCKETHIDEOUT3CURSCRIPT], a + ret + +RocketHideout3ScriptPointers: ; 45238 (11:5238) + dw RocketHideout3Script0 + dw Func_324c + dw EndTrainerBattle + dw RocketHideout3Script3 + +RocketHideout3Script0: ; 45240 (11:5240) + ld a, [W_YCOORD] + ld b, a + ld a, [W_XCOORD] + ld c, a + ld hl, RocketHideout3ArrowTilePlayerMovement + call Func_3442 + cp $ff + jp z, CheckFightingMapTrainers + ld hl, $d736 + set 7, [hl] + call Func_3486 + ld a, (SFX_02_52 - SFX_Headers_02) / 3 + call PlaySound + ld a, $ff + ld [wJoypadForbiddenButtonsMask], a + ld a, $3 + ld [W_CURMAPSCRIPT], a + ret + +;format: +;db y,x +;dw pointer to movement +RocketHideout3ArrowTilePlayerMovement: ; 4526b (11:526b) + db $d,$a + dw RocketHideout3ArrowMovement6 + db $13,$a + dw RocketHideout3ArrowMovement1 + db $12,$b + dw RocketHideout3ArrowMovement2 + db $b,$c + dw RocketHideout3ArrowMovement3 + db $11,$c + dw RocketHideout3ArrowMovement4 + db $14,$c + dw RocketHideout3ArrowMovement5 + db $10,$d + dw RocketHideout3ArrowMovement6 + db $b,$e + dw RocketHideout3ArrowMovement7 + db $f,$e + dw RocketHideout3ArrowMovement6 + db $11,$e + dw RocketHideout3ArrowMovement8 + db $13,$e + dw RocketHideout3ArrowMovement9 + db $10,$f + dw RocketHideout3ArrowMovement7 + db $12,$f + dw RocketHideout3ArrowMovement10 + db $d,$10 + dw RocketHideout3ArrowMovement11 + db $c,$11 + dw RocketHideout3ArrowMovement10 + db $10,$12 + dw RocketHideout3ArrowMovement12 + db $FF + +;format: direction, count +;right: $10 +;left: $20 +;up: $40 +;down: $80 +;each list is read starting from the $FF and working backwards +RocketHideout3ArrowMovement1: ; 452ac (11:52ac) + db $10,$04 + db $40,$04 + db $10,$04 + db $FF + +RocketHideout3ArrowMovement2: ; 452b3 (11:52b3) + db $80,$04 + db $10,$04 + db $FF + +RocketHideout3ArrowMovement3: ; 452b8 (11:52b8) + db $20,$02 + db $FF + +RocketHideout3ArrowMovement4: ; 452bb (11:52bb) + db $10,$04 + db $40,$02 + db $10,$02 + db $FF + +RocketHideout3ArrowMovement5: ; 452c2 (11:52c2) + db $10,$04 + db $40,$02 + db $10,$02 + db $40,$03 + db $FF + +RocketHideout3ArrowMovement6: ; 452cb (11:52cb) + db $10,$04 + db $FF + +RocketHideout3ArrowMovement7: ; 452ce (11:52ce) + db $10,$02 + db $FF + +RocketHideout3ArrowMovement8: ; 452d1 (11:52d1) + db $10,$04 + db $40,$02 + db $FF + +RocketHideout3ArrowMovement9: ; 452d6 (11:52d6) + db $10,$04 + db $40,$04 + db $FF + +RocketHideout3ArrowMovement10: ; 452db (11:52db) + db $80,$04 + db $FF + +RocketHideout3ArrowMovement11: ; 452de (11:52de) + db $40,$02 + db $FF + +RocketHideout3ArrowMovement12: ; 452e1 (11:52e1) + db $40,$01 + db $FF + +RocketHideout3Script3 ; 452e4 (11:452e4) + ld a, [$cd38] + and a + jp nz, LoadSpinnerArrowTiles + xor a + ld [wJoypadForbiddenButtonsMask], a + ld hl, $d736 + res 7, [hl] + ld a, $0 + ld [W_CURMAPSCRIPT], a + ret + +RocketHideout3TextPointers: ; 452fa (11:52fa) + dw RocketHideout3Text1 + dw RocketHideout3Text2 + dw Predef5CText + dw Predef5CText + +RocketHideout3TrainerHeaders: ; 45302 (11:5302) +RocketHideout3TrainerHeader0: ; 45302 (11:5302) + db $1 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d819 ; flag's byte + dw RocketHideout3BattleText2 ; 0x5325 TextBeforeBattle + dw RocketHideout3AfterBattleTxt2 ; 0x532f TextAfterBattle + dw RocketHideout3EndBattleText2 ; 0x532a TextEndBattle + dw RocketHideout3EndBattleText2 ; 0x532a TextEndBattle + +RocketHideout3TrainerHeader2: ; 4530e (11:530e) + db $2 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d819 ; flag's byte + dw RocketHideout3BattleTxt ; 0x533e TextBeforeBattle + dw RocketHideout3AfterBattleText3 ; 0x5348 TextAfterBattle + dw RocketHideout3EndBattleText3 ; 0x5343 TextEndBattle + dw RocketHideout3EndBattleText3 ; 0x5343 TextEndBattle + + db $ff + +RocketHideout3Text1: ; 4531b (11:531b) + db $08 ; asm + ld hl, RocketHideout3TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +RocketHideout3BattleText2: ; 45325 (11:5325) + TX_FAR _RocketHideout3BattleText2 + db "@" + +RocketHideout3EndBattleText2: ; 4532a (11:532a) + TX_FAR _RocketHideout3EndBattleText2 + db "@" + +RocketHideout3AfterBattleTxt2: ; 4532f (11:532f) + TX_FAR _RocketHideout3AfterBattleTxt2 + db "@" + +RocketHideout3Text2: ; 45334 (11:5334) + db $08 ; asm + ld hl, RocketHideout3TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +RocketHideout3BattleTxt: ; 4533e (11:533e) + TX_FAR _RocketHideout3BattleTxt + db "@" + +RocketHideout3EndBattleText3: ; 45343 (11:5343) + TX_FAR _RocketHideout3EndBattleText3 + db "@" + +RocketHideout3AfterBattleText3: ; 45348 (11:5348) + TX_FAR _RocketHide3AfterBattleText3 + db "@" diff --git a/scripts/rockethideout4.asm b/scripts/rockethideout4.asm new file mode 100755 index 00000000..5e245e8d --- /dev/null +++ b/scripts/rockethideout4.asm @@ -0,0 +1,232 @@ +RocketHideout4Script: ; 4545d (11:545d) + call RocketHideout4Script_45473 + call EnableAutoTextBoxDrawing + ld hl, RocketHideout4TrainerHeader0 + ld de, RocketHideout4ScriptPointers + ld a, [W_ROCKETHIDEOUT4CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_ROCKETHIDEOUT4CURSCRIPT], a + ret + +RocketHideout4Script_45473: ; 45473 (11:5473) + ld hl, $d126 + bit 5, [hl] + res 5, [hl] + ret z + ld a, [$d81b] + bit 5, a + jr nz, .asm_45496 + and $c + cp $c + jr z, .asm_4548c + ld a, $2d + jr .asm_45498 +.asm_4548c + ld a, (SFX_02_57 - SFX_Headers_02) / 3 + call PlaySound + ld hl, $d81b + set 5, [hl] +.asm_45496 + ld a, $e +.asm_45498 + ld [$d09f], a + ld bc, $050c + ld a, $17 + jp Predef + +RocketHideout4Script_454a3: ; 454a3 (11:54a3) + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [W_ROCKETHIDEOUT4CURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +RocketHideout4ScriptPointers: ; 454ae (11:54ae)c + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + dw RocketHideout4Script3 + +RocketHideout4Script3: ; 454b6 (11:54b6) + ld a, [W_ISINBATTLE] + cp $ff + jp z, RocketHideout4Script_454a3 + call UpdateSprites + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + ld hl, $d81b + set 7, [hl] + ld a, $a + ld [H_SPRITEHEIGHT], a + call DisplayTextID + call GBFadeIn1 + ld a, $83 + ld [$cc4d], a + ld a, $11 + call Predef + ld a, $87 + ld [$cc4d], a + ld a, $15 + call Predef + call UpdateSprites + call GBFadeOut1 + xor a + ld [wJoypadForbiddenButtonsMask], a + ld hl, $d126 + set 5, [hl] + ld a, $0 + ld [W_ROCKETHIDEOUT4CURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +RocketHideout4TextPointers: ; 45501 (11:5501) + dw RocketHideout4Text1 + dw RocketHideout4Text2 + dw RocketHideout4Text3 + dw RocketHideout4Text4 + dw Predef5CText + dw Predef5CText + dw Predef5CText + dw Predef5CText + dw Predef5CText + dw RocketHideout4Text10 + +RocketHideout4TrainerHeaders: ; 45515 (11:5515) +RocketHideout4TrainerHeader0: ; 45515 (11:5515) + db $2 ; flag's bit + db ($0 << 4) ; trainer's view range + dw $d81b ; flag's byte + dw RocketHideout4BattleText2 ; 0x5593 TextBeforeBattle + dw RocketHideout4AfterBattleText2 ; 0x559d TextAfterBattle + dw RocketHideout4EndBattleText2 ; 0x5598 TextEndBattle + dw RocketHideout4EndBattleText2 ; 0x5598 TextEndBattle + +RocketHideout4TrainerHeader2: ; 45521 (11:5521) + db $3 ; flag's bit + db ($0 << 4) ; trainer's view range + dw $d81b ; flag's byte + dw RocketHideout4BattleText3 ; 0x55ac TextBeforeBattle + dw RocketHideout4AfterBattleText3 ; 0x55b6 TextAfterBattle + dw RocketHideout4EndBattleText3 ; 0x55b1 TextEndBattle + dw RocketHideout4EndBattleText3 ; 0x55b1 TextEndBattle + +RocketHideout4TrainerHeader3: ; 4552d (11:552d) + db $4 ; flag's bit + db ($1 << 4) ; trainer's view range + dw $d81b ; flag's byte + dw RocketHideout4BattleText4 ; 0x55c5 TextBeforeBattle + dw RocketHideout4AfterBattleText4 ; 0x55cf TextAfterBattle + dw RocketHideout4EndBattleText4 ; 0x55ca TextEndBattle + dw RocketHideout4EndBattleText4 ; 0x55ca TextEndBattle + + db $ff + +RocketHideout4Text1: ; 4553a (11:553a) + db $08 ; asm + ld a, [$d81b] + bit 7, a + jp nz, .asm_545571 + ld hl, RocketHideout4Text_4557a + call PrintText + ld hl, $d72d + set 6, [hl] + set 7, [hl] + ld hl, RocketHideout4Text_4557f + ld de, RocketHideout4Text_4557f + call PreBattleSaveRegisters + ldh a, [$8c] + ld [$cf13], a + call EngageMapTrainer + call InitBattleEnemyParameters + xor a + ldh [$b4], a + ld a, $3 + ld [W_ROCKETHIDEOUT4CURSCRIPT], a + ld [W_CURMAPSCRIPT], a + jr .asm_209f0 ; 0x4556f +.asm_545571 + ld hl, RocketHideout4Text10 + call PrintText +.asm_209f0 ; 0x45577 + jp TextScriptEnd + +RocketHideout4Text_4557a: ; 4557a (11:557a) + TX_FAR _RocketHideout4Text_4557a + db "@" + +RocketHideout4Text_4557f: ; 4557f (11:557f) + TX_FAR _RocketHideout4Text_4557f + db "@" + +RocketHideout4Text10: ; 45584 (11:5584) + TX_FAR _RocketHideout4Text_45584 + db "@" + +RocketHideout4Text2: ; 45589 (11:5589) + db $08 ; asm + ld hl, RocketHideout4TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +RocketHideout4BattleText2: ; 45593 (11:5593) + TX_FAR _RocketHideout4BattleText2 + db "@" + +RocketHideout4EndBattleText2: ; 45598 (11:5598) + TX_FAR _RocketHideout4EndBattleText2 + db "@" + +RocketHideout4AfterBattleText2: ; 4559d (11:559d) + TX_FAR _RocketHide4AfterBattleText2 + db "@" + +RocketHideout4Text3: ; 455a2 (11:55a2) + db $08 ; asm + ld hl, RocketHideout4TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +RocketHideout4BattleText3: ; 455ac (11:55ac) + TX_FAR _RocketHideout4BattleText3 + db "@" + +RocketHideout4EndBattleText3: ; 455b1 (11:55b1) + TX_FAR _RocketHideout4EndBattleText3 + db "@" + +RocketHideout4AfterBattleText3: ; 455b6 (11:55b6) + TX_FAR _RocketHide4AfterBattleText3 + db "@" + +RocketHideout4Text4: ; 455bb (11:55bb) + db $08 ; asm + ld hl, RocketHideout4TrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +RocketHideout4BattleText4: ; 455c5 (11:55c5) + TX_FAR _RocketHideout4BattleText4 + db "@" + +RocketHideout4EndBattleText4: ; 455ca (11:55ca) + TX_FAR _RocketHideout4EndBattleText4 + db "@" + +RocketHideout4AfterBattleText4: ; 455cf (11:55cf) + db $8 + ld hl, RocketHideout4Text_455ec ; $55ec + call PrintText + ld hl, $d81b + bit 6, [hl] + set 6, [hl] + jr nz, .asm_455e9 ; 0x455dd $a + ld a, $88 + ld [$cc4d], a + ld a, $15 + call Predef +.asm_455e9 + jp TextScriptEnd + +RocketHideout4Text_455ec: ; 455ec (11:55ec) + TX_FAR _RocketHideout4Text_455ec + db "@" diff --git a/scripts/rockethideoutelevator.asm b/scripts/rockethideoutelevator.asm new file mode 100755 index 00000000..57e62177 --- /dev/null +++ b/scripts/rockethideoutelevator.asm @@ -0,0 +1,82 @@ +RocketHideoutElevatorScript: ; 45710 (11:5710) + ld hl, $d126 + bit 5, [hl] + res 5, [hl] + push hl + call nz, RocketHideoutElevatorScript_4572c + pop hl + bit 7, [hl] + res 7, [hl] + call nz, RocketHideoutElevatorScript_4575f + xor a + ld [$cf0c], a + inc a + ld [$cc3c], a + ret + +RocketHideoutElevatorScript_4572c: ; 4572c (11:572c) + ld hl, $d3af + ld a, [$d73b] + ld b, a + ld a, [$d73c] + ld c, a + call RocketHideoutElevatorScript_4573a + +RocketHideoutElevatorScript_4573a: ; 4573a (11:573a) + inc hl + inc hl + ld a, b + ld [hli], a + ld a, c + ld [hli], a + ret + +RocketHideoutElevatorScript_45741: ; 45741 (11:5741) + ld hl, RocketHideoutElavatorFloors ; $5754 + call LoadItemList + ld hl, RocketHideoutElevatorWarpMaps ; $5759 + ld de, $cc5b + ld bc, $0006 + call CopyData + ret + +RocketHideoutElavatorFloors: ; 45754 (11:5754) + db $03 ; num elements in list + db $55, $54, $61 ; "B1F", "B2F", "B4F" + db $FF ; terminator + +RocketHideoutElevatorWarpMaps: ; 45759 (11:5759) +; first byte is warp number +; second byte is map number +; These specify where the player goes after getting out of the elevator. + db $04, ROCKET_HIDEOUT_1 + db $04, ROCKET_HIDEOUT_2 + db $02, ROCKET_HIDEOUT_4 + +RocketHideoutElevatorScript_4575f: ; 4575f (11:575f) + call Delay3 + callba ShakeElevator + ret + +RocketHideoutElevatorTextPointers: ; 4576b (11:576b) + dw RocketHideoutElevatorText1 + +RocketHideoutElevatorText1: ; 4576d (11:576d) + db $08 ; asm + ld b, LIFT_KEY + call IsItemInBag + jr z, .asm_8d8f0 ; 0x45773 + call RocketHideoutElevatorScript_45741 + ld hl, RocketHideoutElevatorWarpMaps ; $5759 + ld a, $61 + call Predef + jr .asm_46c43 ; 0x45780 +.asm_8d8f0 ; 0x45782 + ld hl, RocketHideoutElevatorText_4578b + call PrintText +.asm_46c43 ; 0x45788 + jp TextScriptEnd + +RocketHideoutElevatorText_4578b: ; 4578b (11:578b) + TX_FAR _RocketElevatorText_4578b ; 0x82438 + db $d, "@" diff --git a/scripts/rocktunnel1.asm b/scripts/rocktunnel1.asm new file mode 100755 index 00000000..be49e494 --- /dev/null +++ b/scripts/rocktunnel1.asm @@ -0,0 +1,214 @@ +RockTunnel1Script: ; 444dc (11:44dc) + call EnableAutoTextBoxDrawing + ld hl, RockTunnel1TrainerHeaders + ld de, RockTunnel1ScriptPointers + ld a, [W_ROCKTUNNEL1CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_ROCKTUNNEL1CURSCRIPT], a + ret + +RockTunnel1ScriptPointers: ; 444ef (11:44ef) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +RockTunnel1TextPointers: ; 444f5 (11:44f5) + dw RockTunnel1Text1 + dw RockTunnel1Text2 + dw RockTunnel1Text3 + dw RockTunnel1Text4 + dw RockTunnel1Text5 + dw RockTunnel1Text6 + dw RockTunnel1Text7 + dw RockTunnel1Text8 + +RockTunnel1TrainerHeaders: ; 44505 (11:4505) +RockTunnel1TrainerHeader1: ; 44505 (11:4505) + db $1 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7d2 ; flag's byte + dw RockTunnel1BattleText1 ; 0x4588 TextBeforeBattle + dw RockTunnel1AfterBattleText1 ; 0x4592 TextAfterBattle + dw RockTunnel1EndBattleText1 ; 0x458d TextEndBattle + dw RockTunnel1EndBattleText1 ; 0x458d TextEndBattle + +RockTunnel1TrainerHeader2: ; 44511 (11:4511) + db $2 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7d2 ; flag's byte + dw RockTunnel1BattleText2 ; 0x4597 TextBeforeBattle + dw RockTunnel1AfterBattleText2 ; 0x45a1 TextAfterBattle + dw RockTunnel1EndBattleText2 ; 0x459c TextEndBattle + dw RockTunnel1EndBattleText2 ; 0x459c TextEndBattle + +RockTunnel1TrainerHeader3: ; 4451d (11:451d) + db $3 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7d2 ; flag's byte + dw RockTunnel1BattleText3 ; 0x45a6 TextBeforeBattle + dw RockTunnel1AfterBattleText3 ; 0x45b0 TextAfterBattle + dw RockTunnel1EndBattleText3 ; 0x45ab TextEndBattle + dw RockTunnel1EndBattleText3 ; 0x45ab TextEndBattle + +RockTunnel1TrainerHeader4: ; 44529 (11:4529) + db $4 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7d2 ; flag's byte + dw RockTunnel1BattleText4 ; 0x45b5 TextBeforeBattle + dw RockTunnel1AfterBattleText4 ; 0x45bf TextAfterBattle + dw RockTunnel1EndBattleText4 ; 0x45ba TextEndBattle + dw RockTunnel1EndBattleText4 ; 0x45ba TextEndBattle + +RockTunnel1TrainerHeader5: ; 44535 (11:4535) + db $5 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7d2 ; flag's byte + dw RockTunnel1BattleText5 ; 0x45c4 TextBeforeBattle + dw RockTunnel1AfterBattleText5 ; 0x45ce TextAfterBattle + dw RockTunnel1EndBattleText5 ; 0x45c9 TextEndBattle + dw RockTunnel1EndBattleText5 ; 0x45c9 TextEndBattle + +RockTunnel1TrainerHeader6: ; 44541 (11:4541) + db $6 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7d2 ; flag's byte + dw RockTunnel1BattleText6 ; 0x45d3 TextBeforeBattle + dw RockTunnel1AfterBattleText6 ; 0x45dd TextAfterBattle + dw RockTunnel1EndBattleText6 ; 0x45d8 TextEndBattle + dw RockTunnel1EndBattleText6 ; 0x45d8 TextEndBattle + +RockTunnel1TrainerHeader7: ; 4454d (11:454d) + db $7 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7d2 ; flag's byte + dw RockTunnel1BattleText7 ; 0x45e2 TextBeforeBattle + dw RockTunnel1AfterBattleText7 ; 0x45ec TextAfterBattle + dw RockTunnel1EndBattleText7 ; 0x45e7 TextEndBattle + dw RockTunnel1EndBattleText7 ; 0x45e7 TextEndBattle + + db $ff + +RockTunnel1Text1: ; 4455a (11:455a) + db $8 + ld hl, RockTunnel1TrainerHeader1 ; $4505 + jr asm_0c916 ; 0x4455e $22 + +RockTunnel1Text2: ; 44560 (11:4560) + db $8 + ld hl, RockTunnel1TrainerHeader2 ; $4511 + jr asm_0c916 ; 0x44564 $1c + +RockTunnel1Text3: ; 44566 (11:4566) + db $8 + ld hl, RockTunnel1TrainerHeader3 ; $451d + jr asm_0c916 ; 0x4456a $16 + +RockTunnel1Text4: ; 4456c (11:456c) + db $8 + ld hl, RockTunnel1TrainerHeader4 ; $4529 + jr asm_0c916 ; 0x44570 $10 + +RockTunnel1Text5: ; 44572 (11:4572) + db $8 + ld hl, RockTunnel1TrainerHeader5 ; $4535 + jr asm_0c916 ; 0x44576 $a + +RockTunnel1Text6: ; 44578 (11:4578) + db $8 + ld hl, RockTunnel1TrainerHeader6 ; $4541 + jr asm_0c916 ; 0x4457c $4 + +RockTunnel1Text7: ; 4457e (11:457e) + db $8 + ld hl, RockTunnel1TrainerHeader7 ; $454d +asm_0c916: ; 44582 (11:4582) + call TalkToTrainer + jp TextScriptEnd + +RockTunnel1BattleText1: ; 44588 (11:4588) + TX_FAR _RockTunnel1BattleText1 + db "@" + +RockTunnel1EndBattleText1: ; 4458d (11:458d) + TX_FAR _RockTunnel1EndBattleText1 + db "@" + +RockTunnel1AfterBattleText1: ; 44592 (11:4592) + TX_FAR _RockTunnel1AfterBattleText1 + db "@" + +RockTunnel1BattleText2: ; 44597 (11:4597) + TX_FAR _RockTunnel1BattleText2 + db "@" + +RockTunnel1EndBattleText2: ; 4459c (11:459c) + TX_FAR _RockTunnel1EndBattleText2 + db "@" + +RockTunnel1AfterBattleText2: ; 445a1 (11:45a1) + TX_FAR _RockTunnel1AfterBattleText2 + db "@" + +RockTunnel1BattleText3: ; 445a6 (11:45a6) + TX_FAR _RockTunnel1BattleText3 + db "@" + +RockTunnel1EndBattleText3: ; 445ab (11:45ab) + TX_FAR _RockTunnel1EndBattleText3 + db "@" + +RockTunnel1AfterBattleText3: ; 445b0 (11:45b0) + TX_FAR _RockTunnel1AfterBattleText3 + db "@" + +RockTunnel1BattleText4: ; 445b5 (11:45b5) + TX_FAR _RockTunnel1BattleText4 + db "@" + +RockTunnel1EndBattleText4: ; 445ba (11:45ba) + TX_FAR _RockTunnel1EndBattleText4 + db "@" + +RockTunnel1AfterBattleText4: ; 445bf (11:45bf) + TX_FAR _RockTunnel1AfterBattleText4 + db "@" + +RockTunnel1BattleText5: ; 445c4 (11:45c4) + TX_FAR _RockTunnel1BattleText5 + db "@" + +RockTunnel1EndBattleText5: ; 445c9 (11:45c9) + TX_FAR _RockTunnel1EndBattleText5 + db "@" + +RockTunnel1AfterBattleText5: ; 445ce (11:45ce) + TX_FAR _RockTunnel1AfterBattleText5 + db "@" + +RockTunnel1BattleText6: ; 445d3 (11:45d3) + TX_FAR _RockTunnel1BattleText6 + db "@" + +RockTunnel1EndBattleText6: ; 445d8 (11:45d8) + TX_FAR _RockTunnel1EndBattleText6 + db "@" + +RockTunnel1AfterBattleText6: ; 445dd (11:45dd) + TX_FAR _RockTunnel1AfterBattleText6 + db "@" + +RockTunnel1BattleText7: ; 445e2 (11:45e2) + TX_FAR _RockTunnel1BattleText7 + db "@" + +RockTunnel1EndBattleText7: ; 445e7 (11:45e7) + TX_FAR _RockTunnel1EndBattleText7 + db "@" + +RockTunnel1AfterBattleText7: ; 445ec (11:45ec) + TX_FAR _RockTunnel1AfterBattleText7 + db "@" + +RockTunnel1Text8: ; 445f1 (11:45f1) + TX_FAR _RockTunnel1Text8 + db "@" diff --git a/scripts/rocktunnel2.asm b/scripts/rocktunnel2.asm new file mode 100755 index 00000000..62f4fe18 --- /dev/null +++ b/scripts/rocktunnel2.asm @@ -0,0 +1,242 @@ +RockTunnel2Script: ; 45feb (11:5feb) + call EnableAutoTextBoxDrawing + ld hl, RockTunnel2TrainerHeaders + ld de, RockTunnel2ScriptPointers + ld a, [W_ROCKTUNNEL2CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_ROCKTUNNEL2CURSCRIPT], a + ret + +RockTunnel2ScriptPointers: ; 45ffe (11:5ffe) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +RockTunnel2TextPointers: ; 46004 (11:6004) + dw RockTunnel2Text1 + dw RockTunnel2Text2 + dw RockTunnel2Text3 + dw RockTunnel2Text4 + dw RockTunnel2Text5 + dw RockTunnel2Text6 + dw RockTunnel2Text7 + dw RockTunnel2Text8 + +RockTunnel2TrainerHeaders: ; 46014 (11:6014) +RockTunnel2TrainerHeader0: ; 46014 (11:6014) + db $1 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d87d ; flag's byte + dw RockTunnel2BattleText2 ; 0x60c5 TextBeforeBattle + dw RockTunnel2AfterBattleText2 ; 0x60cf TextAfterBattle + dw RockTunnel2EndBattleText2 ; 0x60ca TextEndBattle + dw RockTunnel2EndBattleText2 ; 0x60ca TextEndBattle + +RockTunnel2TrainerHeader2: ; 46020 (11:6020) + db $2 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d87d ; flag's byte + dw RockTunnel2BattleText3 ; 0x60d4 TextBeforeBattle + dw RockTunnel2AfterBattleText3 ; 0x60de TextAfterBattle + dw RockTunnel2EndBattleText3 ; 0x60d9 TextEndBattle + dw RockTunnel2EndBattleText3 ; 0x60d9 TextEndBattle + +RockTunnel2TrainerHeader3: ; 4602c (11:602c) + db $3 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d87d ; flag's byte + dw RockTunnel2BattleText4 ; 0x60e3 TextBeforeBattle + dw RockTunnel2AfterBattleText4 ; 0x60ed TextAfterBattle + dw RockTunnel2EndBattleText4 ; 0x60e8 TextEndBattle + dw RockTunnel2EndBattleText4 ; 0x60e8 TextEndBattle + +RockTunnel2TrainerHeader4: ; 46038 (11:6038) + db $4 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d87d ; flag's byte + dw RockTunnel2BattleText5 ; 0x60f2 TextBeforeBattle + dw RockTunnel2AfterBattleText5 ; 0x60fc TextAfterBattle + dw RockTunnel2EndBattleText5 ; 0x60f7 TextEndBattle + dw RockTunnel2EndBattleText5 ; 0x60f7 TextEndBattle + +RockTunnel2TrainerHeader5: ; 46044 (11:6044) + db $5 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d87d ; flag's byte + dw RockTunnel2BattleText6 ; 0x6101 TextBeforeBattle + dw RockTunnel2AfterBattleText6 ; 0x610b TextAfterBattle + dw RockTunnel2EndBattleText6 ; 0x6106 TextEndBattle + dw RockTunnel2EndBattleText6 ; 0x6106 TextEndBattle + +RockTunnel2TrainerHeader6: ; 46050 (11:6050) + db $6 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d87d ; flag's byte + dw RockTunnel2BattleText7 ; 0x6110 TextBeforeBattle + dw RockTunnel2AfterBattleText7 ; 0x611a TextAfterBattle + dw RockTunnel2EndBattleText7 ; 0x6115 TextEndBattle + dw RockTunnel2EndBattleText7 ; 0x6115 TextEndBattle + +RockTunnel2TrainerHeader7: ; 4605c (11:605c) + db $7 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d87d ; flag's byte + dw RockTunnel2BattleText8 ; 0x611f TextBeforeBattle + dw RockTunnel2AfterBattleText8 ; 0x6129 TextAfterBattle + dw RockTunnel2EndBattleText8 ; 0x6124 TextEndBattle + dw RockTunnel2EndBattleText8 ; 0x6124 TextEndBattle + +RockTunnel2TrainerHeader8: ; 46068 (11:6068) + db $8 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d87d ; flag's byte + dw RockTunnel2BattleText9 ; 0x612e TextBeforeBattle + dw RockTunnel2AfterBattleText9 ; 0x6138 TextAfterBattle + dw RockTunnel2EndBattleText9 ; 0x6133 TextEndBattle + dw RockTunnel2EndBattleText9 ; 0x6133 TextEndBattle + + db $ff + +RockTunnel2Text1: ; 46075 (11:6075) + db $08 ; asm + ld hl, RockTunnel2TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +RockTunnel2Text2: ; 4607f (11:607f) + db $08 ; asm + ld hl, RockTunnel2TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +RockTunnel2Text3: ; 46089 (11:6089) + db $08 ; asm + ld hl, RockTunnel2TrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +RockTunnel2Text4: ; 46093 (11:6093) + db $08 ; asm + ld hl, RockTunnel2TrainerHeader4 + call TalkToTrainer + jp TextScriptEnd + +RockTunnel2Text5: ; 4609d (11:609d) + db $08 ; asm + ld hl, RockTunnel2TrainerHeader5 + call TalkToTrainer + jp TextScriptEnd + +RockTunnel2Text6: ; 460a7 (11:60a7) + db $08 ; asm + ld hl, RockTunnel2TrainerHeader6 + call TalkToTrainer + jp TextScriptEnd + +RockTunnel2Text7: ; 460b1 (11:60b1) + db $08 ; asm + ld hl, RockTunnel2TrainerHeader7 + call TalkToTrainer + jp TextScriptEnd + +RockTunnel2Text8: ; 460bb (11:60bb) + db $08 ; asm + ld hl, RockTunnel2TrainerHeader8 + call TalkToTrainer + jp TextScriptEnd + +RockTunnel2BattleText2: ; 460c5 (11:60c5) + TX_FAR _RockTunnel2BattleText2 + db "@" + +RockTunnel2EndBattleText2: ; 460ca (11:60ca) + TX_FAR _RockTunnel2EndBattleText2 + db "@" + +RockTunnel2AfterBattleText2: ; 460cf (11:60cf) + TX_FAR _RockTunnel2AfterBattleText2 + db "@" + +RockTunnel2BattleText3: ; 460d4 (11:60d4) + TX_FAR _RockTunnel2BattleText3 + db "@" + +RockTunnel2EndBattleText3: ; 460d9 (11:60d9) + TX_FAR _RockTunnel2EndBattleText3 + db "@" + +RockTunnel2AfterBattleText3: ; 460de (11:60de) + TX_FAR _RockTunnel2AfterBattleText3 + db "@" + +RockTunnel2BattleText4: ; 460e3 (11:60e3) + TX_FAR _RockTunnel2BattleText4 + db "@" + +RockTunnel2EndBattleText4: ; 460e8 (11:60e8) + TX_FAR _RockTunnel2EndBattleText4 + db "@" + +RockTunnel2AfterBattleText4: ; 460ed (11:60ed) + TX_FAR _RockTunnel2AfterBattleText4 + db "@" + +RockTunnel2BattleText5: ; 460f2 (11:60f2) + TX_FAR _RockTunnel2BattleText5 + db "@" + +RockTunnel2EndBattleText5: ; 460f7 (11:60f7) + TX_FAR _RockTunnel2EndBattleText5 + db "@" + +RockTunnel2AfterBattleText5: ; 460fc (11:60fc) + TX_FAR _RockTunnel2AfterBattleText5 + db "@" + +RockTunnel2BattleText6: ; 46101 (11:6101) + TX_FAR _RockTunnel2BattleText6 + db "@" + +RockTunnel2EndBattleText6: ; 46106 (11:6106) + TX_FAR _RockTunnel2EndBattleText6 + db "@" + +RockTunnel2AfterBattleText6: ; 4610b (11:610b) + TX_FAR _RockTunnel2AfterBattleText6 + db "@" + +RockTunnel2BattleText7: ; 46110 (11:6110) + TX_FAR _RockTunnel2BattleText7 + db "@" + +RockTunnel2EndBattleText7: ; 46115 (11:6115) + TX_FAR _RockTunnel2EndBattleText7 + db "@" + +RockTunnel2AfterBattleText7: ; 4611a (11:611a) + TX_FAR _RockTunnel2AfterBattleText7 + db "@" + +RockTunnel2BattleText8: ; 4611f (11:611f) + TX_FAR _RockTunnel2BattleText8 + db "@" + +RockTunnel2EndBattleText8: ; 46124 (11:6124) + TX_FAR _RockTunnel2EndBattleText8 + db "@" + +RockTunnel2AfterBattleText8: ; 46129 (11:6129) + TX_FAR _RockTunnel2AfterBattleText8 + db "@" + +RockTunnel2BattleText9: ; 4612e (11:612e) + TX_FAR _RockTunnel2BattleText9 + db "@" + +RockTunnel2EndBattleText9: ; 46133 (11:6133) + TX_FAR _RockTunnel2EndBattleText9 + db "@" + +RockTunnel2AfterBattleText9: ; 46138 (11:6138) + TX_FAR _RockTunnel2AfterBattleText9 + db "@" diff --git a/scripts/rocktunnelpokecenter.asm b/scripts/rocktunnelpokecenter.asm new file mode 100755 index 00000000..62336edc --- /dev/null +++ b/scripts/rocktunnelpokecenter.asm @@ -0,0 +1,23 @@ +RockTunnelPokecenterScript: ; 493ba (12:53ba) + call Func_22fa + jp EnableAutoTextBoxDrawing + +RockTunnelPokecenterTextPointers: ; 493c0 (12:53c0) + dw RockTunnelPokecenterText1 + dw RockTunnelPokecenterText2 + dw RockTunnelPokecenterText3 + dw RockTunnelPokecenterText4 + +RockTunnelPokecenterText1: ; 493c8 (12:53c8) + db $ff + +RockTunnelPokecenterText2: ; 493c9 (12:53c9) + TX_FAR _RockTunnelPokecenterText1 + db "@" + +RockTunnelPokecenterText3: ; 493ce (12:53ce) + TX_FAR _RockTunnelPokecenterText3 + db "@" + +RockTunnelPokecenterText4: ; 493d3 (12:53d3) + db $f6 diff --git a/scripts/route1.asm b/scripts/route1.asm new file mode 100755 index 00000000..1faf5a48 --- /dev/null +++ b/scripts/route1.asm @@ -0,0 +1,53 @@ +Route1Script: ; 1caaf (7:4aaf) + jp EnableAutoTextBoxDrawing + +Route1TextPointers: ; 1cab2 (7:4ab2) + dw Route1Text1 + dw Route1Text2 + dw Route1Text3 + +Route1Text1: ; 1cab8 (7:4ab8) + db $08 ; asm + ld hl, $d7bf + bit 0, [hl] + set 0, [hl] + jr nz, .asm_02840 ; 0x1cac0 + ld hl, Route1ViridianMartSampleText + call PrintText + ld bc, (POTION << 8) | 1 + call GiveItem + jr nc, .BagFull + ld hl, Route1Text_1cae8 ; $4ae8 + jr .asm_46d43 ; 0x1cad3 +.BagFull + ld hl, Route1Text_1caf3 ; $4af3 + jr .asm_46d43 ; 0x1cad8 +.asm_02840 ; 0x1cada + ld hl, Route1Text_1caee ; $4aee +.asm_46d43 ; 0x1cadd + call PrintText + jp TextScriptEnd + +Route1ViridianMartSampleText: ; 1cae3 (7:4ae3) + TX_FAR _Route1ViridianMartSampleText + db "@" + +Route1Text_1cae8: ; 1cae8 (7:4ae8) + TX_FAR _Route1Text_1cae8 + db $0b,"@" + +Route1Text_1caee: ; 1caee (7:4aee) + TX_FAR _Route1Text_1caee + db "@" + +Route1Text_1caf3: ; 1caf3 (7:4af3) + TX_FAR _Route1Text_1caf3 + db "@" + +Route1Text2: ; 1caf8 (7:4af8) + TX_FAR _Route1Text2 + db "@" + +Route1Text3: ; 1cafd (7:4afd) + TX_FAR _Route1Text3 + db "@" diff --git a/scripts/route10.asm b/scripts/route10.asm new file mode 100755 index 00000000..1e0ecb91 --- /dev/null +++ b/scripts/route10.asm @@ -0,0 +1,199 @@ +Route10Script: ; 59336 (16:5336) + call EnableAutoTextBoxDrawing + ld hl, Route10TrainerHeaders + ld de, Route10ScriptPointers + ld a, [W_ROUTE10CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_ROUTE10CURSCRIPT], a + ret + +Route10ScriptPointers: ; 59349 (16:5349) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +Route10TextPointers: ; 5934f (16:534f) + dw Route10Text1 + dw Route10Text2 + dw Route10Text3 + dw Route10Text4 + dw Route10Text5 + dw Route10Text6 + dw Route10Text7 + dw PokeCenterSignText + dw Route10Text9 + dw Route10Text10 + +Route10TrainerHeaders: ; 59363 (16:5363) +Route10TrainerHeader0: ; 59363 (16:5363) + db $1 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7d1 ; flag's byte + dw Route10BattleText1 ; 0x53b6 TextBeforeBattle + dw Route10AfterBattleText1 ; 0x53c0 TextAfterBattle + dw Route10EndBattleText1 ; 0x53bb TextEndBattle + dw Route10EndBattleText1 ; 0x53bb TextEndBattle + +Route10TrainerHeader1: ; 5936f (16:536f) + db $2 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7d1 ; flag's byte + dw Route10BattleText2 ; 0x53cf TextBeforeBattle + dw Route10AfterBattleText2 ; 0x53d9 TextAfterBattle + dw Route10EndBattleText2 ; 0x53d4 TextEndBattle + dw Route10EndBattleText2 ; 0x53d4 TextEndBattle + +Route10TrainerHeader2: ; 5937b (16:537b) + db $3 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7d1 ; flag's byte + dw Route10BattleText3 ; 0x53e8 TextBeforeBattle + dw Route10AfterBattleText3 ; 0x53f2 TextAfterBattle + dw Route10EndBattleText3 ; 0x53ed TextEndBattle + dw Route10EndBattleText3 ; 0x53ed TextEndBattle + +Route10TrainerHeader3: ; 59387 (16:5387) + db $4 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7d1 ; flag's byte + dw Route10BattleText4 ; 0x5401 TextBeforeBattle + dw Route10AfterBattleText4 ; 0x540b TextAfterBattle + dw Route10EndBattleText4 ; 0x5406 TextEndBattle + dw Route10EndBattleText4 ; 0x5406 TextEndBattle + +Route10TrainerHeader4: ; 59393 (16:5393) + db $5 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7d1 ; flag's byte + dw Route10BattleText5 ; 0x541a TextBeforeBattle + dw Route10AfterBattleText5 ; 0x5424 TextAfterBattle + dw Route10EndBattleText5 ; 0x541f TextEndBattle + dw Route10EndBattleText5 ; 0x541f TextEndBattle + +Route10TrainerHeader5: ; 5939f (16:539f) + db $6 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7d1 ; flag's byte + dw Route10BattleText6 ; 0x5433 TextBeforeBattle + dw Route10AfterBattleText6 ; 0x543d TextAfterBattle + dw Route10EndBattleText6 ; 0x5438 TextEndBattle + dw Route10EndBattleText6 ; 0x5438 TextEndBattle + + db $ff + +Route10Text1: ; 593ac (16:53ac) + db $08 ; asm + ld hl, Route10TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +Route10BattleText1: ; 593b6 (16:53b6) + TX_FAR _Route10BattleText1 + db "@" + +Route10EndBattleText1: ; 593bb (16:53bb) + TX_FAR _Route10EndBattleText1 + db "@" + +Route10AfterBattleText1: ; 593c0 (16:53c0) + TX_FAR _Route10AfterBattleText1 + db "@" + +Route10Text2: ; 593c5 (16:53c5) + db $08 ; asm + ld hl, Route10TrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +Route10BattleText2: ; 593cf (16:53cf) + TX_FAR _Route10BattleText2 + db "@" + +Route10EndBattleText2: ; 593d4 (16:53d4) + TX_FAR _Route10EndBattleText2 + db "@" + +Route10AfterBattleText2: ; 593d9 (16:53d9) + TX_FAR _Route10AfterBattleText2 + db "@" + +Route10Text3: ; 593de (16:53de) + db $08 ; asm + ld hl, Route10TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +Route10BattleText3: ; 593e8 (16:53e8) + TX_FAR _Route10BattleText3 + db "@" + +Route10EndBattleText3: ; 593ed (16:53ed) + TX_FAR _Route10EndBattleText3 + db "@" + +Route10AfterBattleText3: ; 593f2 (16:53f2) + TX_FAR _Route10AfterBattleText3 + db "@" + +Route10Text4: ; 593f7 (16:53f7) + db $08 ; asm + ld hl, Route10TrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +Route10BattleText4: ; 59401 (16:5401) + TX_FAR _Route10BattleText4 + db "@" + +Route10EndBattleText4: ; 59406 (16:5406) + TX_FAR _Route10EndBattleText4 + db "@" + +Route10AfterBattleText4: ; 5940b (16:540b) + TX_FAR _Route10AfterBattleText4 + db "@" + +Route10Text5: ; 59410 (16:5410) + db $08 ; asm + ld hl, Route10TrainerHeader4 + call TalkToTrainer + jp TextScriptEnd + +Route10BattleText5: ; 5941a (16:541a) + TX_FAR _Route10BattleText5 + db "@" + +Route10EndBattleText5: ; 5941f (16:541f) + TX_FAR _Route10EndBattleText5 + db "@" + +Route10AfterBattleText5: ; 59424 (16:5424) + TX_FAR _Route10AfterBattleText5 + db "@" + +Route10Text6: ; 59429 (16:5429) + db $08 ; asm + ld hl, Route10TrainerHeader5 + call TalkToTrainer + jp TextScriptEnd + +Route10BattleText6: ; 59433 (16:5433) + TX_FAR _Route10BattleText6 + db "@" + +Route10EndBattleText6: ; 59438 (16:5438) + TX_FAR _Route10EndBattleText6 + db "@" + +Route10AfterBattleText6: ; 5943d (16:543d) + TX_FAR _Route10AfterBattleText6 + db "@" + +Route10Text9: ; 59442 (16:5442) +Route10Text7: ; 59442 (16:5442) + TX_FAR _Route10Text7 ; _Route10Text9 + db "@" + +Route10Text10: ; 59447 (16:5447) + TX_FAR _Route10Text10 + db "@" diff --git a/scripts/route11.asm b/scripts/route11.asm new file mode 100755 index 00000000..6217569e --- /dev/null +++ b/scripts/route11.asm @@ -0,0 +1,303 @@ +Route11Script: ; 5944c (16:544c) + call EnableAutoTextBoxDrawing + ld hl, Route11TrainerHeaders + ld de, Route11ScriptPointers + ld a, [W_ROUTE11CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_ROUTE11CURSCRIPT], a + ret + +Route11ScriptPointers: ; 5945f (16:545f) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +Route11TextPointers: ; 59465 (16:5465) + dw Route11Text1 + dw Route11Text2 + dw Route11Text3 + dw Route11Text4 + dw Route11Text5 + dw Route11Text6 + dw Route11Text7 + dw Route11Text8 + dw Route11Text9 + dw Route11Text10 + dw Route11Text11 + +Route11TrainerHeaders: ; 5947b (16:547b) +Route11TrainerHeader0: ; 5947b (16:547b) + db $1 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7d5 ; flag's byte + dw Route11BattleText1 ; 0x54fe TextBeforeBattle + dw Route11AfterBattleText1 ; 0x5508 TextAfterBattle + dw Route11EndBattleText1 ; 0x5503 TextEndBattle + dw Route11EndBattleText1 ; 0x5503 TextEndBattle + +Route11TrainerHeader1: ; 59487 (16:5487) + db $2 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7d5 ; flag's byte + dw Route11BattleText2 ; 0x5517 TextBeforeBattle + dw Route11AfterBattleText2 ; 0x5521 TextAfterBattle + dw Route11EndBattleText2 ; 0x551c TextEndBattle + dw Route11EndBattleText2 ; 0x551c TextEndBattle + +Route11TrainerHeader2: ; 59493 (16:5493) + db $3 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7d5 ; flag's byte + dw Route11BattleText3 ; 0x5530 TextBeforeBattle + dw Route11AfterBattleText3 ; 0x553a TextAfterBattle + dw Route11EndBattleText3 ; 0x5535 TextEndBattle + dw Route11EndBattleText3 ; 0x5535 TextEndBattle + +Route11TrainerHeader3: ; 5949f (16:549f) + db $4 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7d5 ; flag's byte + dw Route11BattleText4 ; 0x5549 TextBeforeBattle + dw Route11AfterBattleText4 ; 0x5553 TextAfterBattle + dw Route11EndBattleText4 ; 0x554e TextEndBattle + dw Route11EndBattleText4 ; 0x554e TextEndBattle + +Route11TrainerHeader4: ; 594ab (16:54ab) + db $5 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7d5 ; flag's byte + dw Route11BattleText5 ; 0x5562 TextBeforeBattle + dw Route11AfterBattleText5 ; 0x556c TextAfterBattle + dw Route11EndBattleText5 ; 0x5567 TextEndBattle + dw Route11EndBattleText5 ; 0x5567 TextEndBattle + +Route11TrainerHeader5: ; 594b7 (16:54b7) + db $6 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7d5 ; flag's byte + dw Route11BattleText6 ; 0x557b TextBeforeBattle + dw Route11AfterBattleText6 ; 0x5585 TextAfterBattle + dw Route11EndBattleText6 ; 0x5580 TextEndBattle + dw Route11EndBattleText6 ; 0x5580 TextEndBattle + +Route11TrainerHeader6: ; 594c3 (16:54c3) + db $7 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7d5 ; flag's byte + dw Route11BattleText7 ; 0x5594 TextBeforeBattle + dw Route11AfterBattleText7 ; 0x559e TextAfterBattle + dw Route11EndBattleText7 ; 0x5599 TextEndBattle + dw Route11EndBattleText7 ; 0x5599 TextEndBattle + +Route11TrainerHeader7: ; 594cf (16:54cf) + db $8 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7d5 ; flag's byte + dw Route11BattleText8 ; 0x55ad TextBeforeBattle + dw Route11AfterBattleText8 ; 0x55b7 TextAfterBattle + dw Route11EndBattleText8 ; 0x55b2 TextEndBattle + dw Route11EndBattleText8 ; 0x55b2 TextEndBattle + +Route11TrainerHeader8: ; 594db (16:54db) + db $9 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7d5 ; flag's byte + dw Route11BattleText9 ; 0x55c6 TextBeforeBattle + dw Route11AfterBattleText9 ; 0x55d0 TextAfterBattle + dw Route11EndBattleText9 ; 0x55cb TextEndBattle + dw Route11EndBattleText9 ; 0x55cb TextEndBattle + +Route11TrainerHeader9: ; 594e7 (16:54e7) + db $a ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7d5 ; flag's byte + dw Route11BattleText10 ; 0x55df TextBeforeBattle + dw Route11AfterBattleText10 ; 0x55e9 TextAfterBattle + dw Route11EndBattleText10 ; 0x55e4 TextEndBattle + dw Route11EndBattleText10 ; 0x55e4 TextEndBattle + + db $ff + +Route11Text1: ; 594f4 (16:54f4) + db $8 + ld hl, Route11TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +Route11BattleText1: ; 594fe (16:54fe) + TX_FAR _Route11BattleText1 + db "@" + +Route11EndBattleText1: ; 59503 (16:5503) + TX_FAR _Route11EndBattleText1 + db "@" + +Route11AfterBattleText1: ; 59508 (16:5508) + TX_FAR _Route11AfterBattleText1 + db "@" + +Route11Text2: ; 5950d (16:550d) + db $08 ; asm + ld hl, Route11TrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +Route11BattleText2: ; 59517 (16:5517) + TX_FAR _Route11BattleText2 + db "@" + +Route11EndBattleText2: ; 5951c (16:551c) + TX_FAR _Route11EndBattleText2 + db "@" + +Route11AfterBattleText2: ; 59521 (16:5521) + TX_FAR _Route11AfterBattleText2 + db "@" + +Route11Text3: ; 59526 (16:5526) + db $08 ; asm + ld hl, Route11TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +Route11BattleText3: ; 59530 (16:5530) + TX_FAR _Route11BattleText3 + db "@" + +Route11EndBattleText3: ; 59535 (16:5535) + TX_FAR _Route11EndBattleText3 + db "@" + +Route11AfterBattleText3: ; 5953a (16:553a) + TX_FAR _Route11AfterBattleText3 + db "@" + +Route11Text4: ; 5953f (16:553f) + db $08 ; asm + ld hl, Route11TrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +Route11BattleText4: ; 59549 (16:5549) + TX_FAR _Route11BattleText4 + db "@" + +Route11EndBattleText4: ; 5954e (16:554e) + TX_FAR _Route11EndBattleText4 + db "@" + +Route11AfterBattleText4: ; 59553 (16:5553) + TX_FAR _Route11AfterBattleText4 + db "@" + +Route11Text5: ; 59558 (16:5558) + db $08 ; asm + ld hl, Route11TrainerHeader4 + call TalkToTrainer + jp TextScriptEnd + +Route11BattleText5: ; 59562 (16:5562) + TX_FAR _Route11BattleText5 + db "@" + +Route11EndBattleText5: ; 59567 (16:5567) + TX_FAR _Route11EndBattleText5 + db "@" + +Route11AfterBattleText5: ; 5956c (16:556c) + TX_FAR _Route11AfterBattleText5 + db "@" + +Route11Text6: ; 59571 (16:5571) + db $08 ; asm + ld hl, Route11TrainerHeader5 + call TalkToTrainer + jp TextScriptEnd + +Route11BattleText6: ; 5957b (16:557b) + TX_FAR _Route11BattleText6 + db "@" + +Route11EndBattleText6: ; 59580 (16:5580) + TX_FAR _Route11EndBattleText6 + db "@" + +Route11AfterBattleText6: ; 59585 (16:5585) + TX_FAR _Route11AfterBattleText6 + db "@" + +Route11Text7: ; 5958a (16:558a) + db $08 ; asm + ld hl, Route11TrainerHeader6 + call TalkToTrainer + jp TextScriptEnd + +Route11BattleText7: ; 59594 (16:5594) + TX_FAR _Route11BattleText7 + db "@" + +Route11EndBattleText7: ; 59599 (16:5599) + TX_FAR _Route11EndBattleText7 + db "@" + +Route11AfterBattleText7: ; 5959e (16:559e) + TX_FAR _Route11AfterBattleText7 + db "@" + +Route11Text8: ; 595a3 (16:55a3) + db $08 ; asm + ld hl, Route11TrainerHeader7 + call TalkToTrainer + jp TextScriptEnd + +Route11BattleText8: ; 595ad (16:55ad) + TX_FAR _Route11BattleText8 + db "@" + +Route11EndBattleText8: ; 595b2 (16:55b2) + TX_FAR _Route11EndBattleText8 + db "@" + +Route11AfterBattleText8: ; 595b7 (16:55b7) + TX_FAR _Route11AfterBattleText8 + db "@" + +Route11Text9: ; 595bc (16:55bc) + db $08 ; asm + ld hl, Route11TrainerHeader8 + call TalkToTrainer + jp TextScriptEnd + +Route11BattleText9: ; 595c6 (16:55c6) + TX_FAR _Route11BattleText9 + db "@" + +Route11EndBattleText9: ; 595cb (16:55cb) + TX_FAR _Route11EndBattleText9 + db "@" + +Route11AfterBattleText9: ; 595d0 (16:55d0) + TX_FAR _Route11AfterBattleText9 + db "@" + +Route11Text10: ; 595d5 (16:55d5) + db $08 ; asm + ld hl, Route11TrainerHeader9 + call TalkToTrainer + jp TextScriptEnd + +Route11BattleText10: ; 595df (16:55df) + TX_FAR _Route11BattleText10 + db "@" + +Route11EndBattleText10: ; 595e4 (16:55e4) + TX_FAR _Route11EndBattleText10 + db "@" + +Route11AfterBattleText10: ; 595e9 (16:55e9) + TX_FAR _Route11AfterBattleText10 + db "@" + +Route11Text11: ; 595ee (16:55ee) + TX_FAR _Route11Text11 + db "@" diff --git a/scripts/route11gate.asm b/scripts/route11gate.asm new file mode 100755 index 00000000..e53fc63a --- /dev/null +++ b/scripts/route11gate.asm @@ -0,0 +1,9 @@ +Route11GateScript: ; 4940c (12:540c) + jp EnableAutoTextBoxDrawing + +Route11GateTextPointers: ; 4940f (12:540f) + dw Route11GateText1 + +Route11GateText1: ; 49411 (12:5411) + TX_FAR _Route11GateText1 + db "@" diff --git a/scripts/route11gateupstairs.asm b/scripts/route11gateupstairs.asm new file mode 100755 index 00000000..0ee428c4 --- /dev/null +++ b/scripts/route11gateupstairs.asm @@ -0,0 +1,81 @@ +Route11GateUpstairsScript: ; 49454 (12:5454) + jp DisableAutoTextBoxDrawing + +Route11GateUpstairsTextPointers: ; 49457 (12:5457) + dw Route11GateUpstairsText1 + dw Route11GateUpstairsText2 + dw Route11GateUpstairsText3 + dw Route11GateUpstairsText4 + +Route11GateUpstairsText1: ; 4945f (12:545f) + db $08 ; asm + xor a + ld [wWhichTrade], a + ld a, $54 + call Predef +asm_49469: ; 49469 (12:5469) + jp TextScriptEnd + +Route11GateUpstairsText2: ; 4946c (12:546c) + db $8 + ld a, [$d7d6] + add a + jr c, .asm_4949b ; 0x49471 $28 + ld a, $1e + ld [$ffdb], a + ld a, $47 + ld [$ffdc], a + ld [$d11e], a + call GetItemName + ld h, d + ld l, e + ld de, $cc5b + ld bc, $000d + call CopyData + ld a, $62 + call Predef + ld a, [$ffdb] + dec a + jr nz, .asm_494a1 ; 0x49494 $b + ld hl, $d7d6 + set 7, [hl] +.asm_4949b + ld hl, Route11GateUpstairsText_494a3 + call PrintText +.asm_494a1 + jr asm_49469 ; 0x494a1 $c6 + +Route11GateUpstairsText_494a3: ; 494a3 (12:54a3) + TX_FAR _Route11GateUpstairsText_494a3 + db "@" + +Route11GateUpstairsText3: ; 494a8 (12:54a8) + db $08 ; asm + ld a, [$c109] + cp $4 + jp nz, Route12GateUpstairsScript_495c9 + ld a, [$d7d8] + bit 7, a ; fought snorlax? + ld hl, BinocularsSnorlaxText + jr z, .print + ld hl, BinocularsNoSnorlaxText +.print + call PrintText + jp TextScriptEnd + +BinocularsSnorlaxText: + TX_FAR _BinocularsSnorlaxText + db "@" + +BinocularsNoSnorlaxText: + TX_FAR _BinocularsNoSnorlaxText + db "@" + +Route11GateUpstairsText4: ; 494ce (12:54ce) + db $8 + ld hl, Route11GateUpstairsText_494d5 ; $54d5 + jp Route12GateUpstairsScript_495c9 + +Route11GateUpstairsText_494d5: ; 494d5 (12:54d5) + TX_FAR _Route11GateUpstairsText_494d5 + db "@" diff --git a/scripts/route12.asm b/scripts/route12.asm new file mode 100755 index 00000000..5bbdac3f --- /dev/null +++ b/scripts/route12.asm @@ -0,0 +1,292 @@ +Route12Script: ; 595f3 (16:55f3) + call EnableAutoTextBoxDrawing + ld hl, Route12TrainerHeaders + ld de, Route12ScriptPointers + ld a, [W_ROUTE12CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_ROUTE12CURSCRIPT], a + ret + +Route12Script_59606: ; 59606 (16:5606) + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [W_ROUTE12CURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +Route12ScriptPointers: ; 59611 (16:5611) + dw Route12Script0 + dw Func_324c + dw EndTrainerBattle + dw Route12Script3 + +Route12Script0: ; 59619 (16:5619) + ld hl, $d7d8 + bit 7, [hl] + jp nz, CheckFightingMapTrainers + bit 6, [hl] + res 6, [hl] + jp z, CheckFightingMapTrainers + ld a, $d + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + ld a, SNORLAX + ld [W_CUROPPONENT], a ; $d059 + ld a, 30 + ld [W_CURENEMYLVL], a ; $d127 + ld a, $1d + ld [$cc4d], a + ld a, $11 + call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7)) + ld a, $3 + ld [W_ROUTE12CURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +Route12Script3: ; 5964c (16:564c) + ld a, [W_ISINBATTLE] ; $d057 + cp $ff + jr z, Route12Script_59606 + call UpdateSprites + ld a, [$cf0b] + cp $2 + jr z, .asm_59664 + ld a, $e + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID +.asm_59664 + ld hl, $d7d8 + set 7, [hl] + call Delay3 + ld a, $0 + ld [W_ROUTE12CURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +Route12TextPointers: ; 59675 (16:5675) + dw Route12Text1 + dw Route12Text2 + dw Route12Text3 + dw Route12Text4 + dw Route12Text5 + dw Route12Text6 + dw Route12Text7 + dw Route12Text8 + dw Predef5CText + dw Predef5CText + dw Route12Text11 + dw Route12Text12 + dw Route12Text13 + dw Route12Text14 + +Route12TrainerHeaders: ; 59691 (16:5691) +Route12TrainerHeader0: ; 59691 (16:5691) + db $2 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7d7 ; flag's byte + dw Route12BattleText1 ; 0x56ff TextBeforeBattle + dw Route12AfterBattleText1 ; 0x5709 TextAfterBattle + dw Route12EndBattleText1 ; 0x5704 TextEndBattle + dw Route12EndBattleText1 ; 0x5704 TextEndBattle + +Route12TrainerHeader1: ; 5969d (16:569d) + db $3 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7d7 ; flag's byte + dw Route12BattleText2 ; 0x5718 TextBeforeBattle + dw Route12AfterBattleText2 ; 0x5722 TextAfterBattle + dw Route12EndBattleText2 ; 0x571d TextEndBattle + dw Route12EndBattleText2 ; 0x571d TextEndBattle + +Route12TrainerHeader2: ; 596a9 (16:56a9) + db $4 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7d7 ; flag's byte + dw Route12BattleText3 ; 0x5731 TextBeforeBattle + dw Route12AfterBattleText3 ; 0x573b TextAfterBattle + dw Route12EndBattleText3 ; 0x5736 TextEndBattle + dw Route12EndBattleText3 ; 0x5736 TextEndBattle + +Route12TrainerHeader3: ; 596b5 (16:56b5) + db $5 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7d7 ; flag's byte + dw Route12BattleText4 ; 0x574a TextBeforeBattle + dw Route12AfterBattleText4 ; 0x5754 TextAfterBattle + dw Route12EndBattleText4 ; 0x574f TextEndBattle + dw Route12EndBattleText4 ; 0x574f TextEndBattle + +Route12TrainerHeader4: ; 596c1 (16:56c1) + db $6 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7d7 ; flag's byte + dw Route12BattleText5 ; 0x5763 TextBeforeBattle + dw Route12AfterBattleText5 ; 0x576d TextAfterBattle + dw Route12EndBattleText5 ; 0x5768 TextEndBattle + dw Route12EndBattleText5 ; 0x5768 TextEndBattle + +Route12TrainerHeader5: ; 596cd (16:56cd) + db $7 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7d7 ; flag's byte + dw Route12BattleText6 ; 0x577c TextBeforeBattle + dw Route12AfterBattleText6 ; 0x5786 TextAfterBattle + dw Route12EndBattleText6 ; 0x5781 TextEndBattle + dw Route12EndBattleText6 ; 0x5781 TextEndBattle + +Route12TrainerHeader6: ; 596d9 (16:56d9) + db $8 ; flag's bit + db ($1 << 4) ; trainer's view range + dw $d7d7 ; flag's byte + dw Route12BattleText7 ; 0x5795 TextBeforeBattle + dw Route12AfterBattleText7 ; 0x579f TextAfterBattle + dw Route12EndBattleText7 ; 0x579a TextEndBattle + dw Route12EndBattleText7 ; 0x579a TextEndBattle + + db $ff + +Route12Text1: ; 596e6 (16:56e6) + TX_FAR _Route12Text1 + db "@" + +Route12Text13: ; 596eb (16:56eb) + TX_FAR _Route12Text13 + db "@" + +Route12Text14: ; 596f0 (16:56f0) + TX_FAR _Route12Text14 + db "@" + +Route12Text2: ; 596f5 (16:56f5) + db $08 ; asm + ld hl, Route12TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +Route12BattleText1: ; 596ff (16:56ff) + TX_FAR _Route12BattleText1 + db "@" + +Route12EndBattleText1: ; 59704 (16:5704) + TX_FAR _Route12EndBattleText1 + db "@" + +Route12AfterBattleText1: ; 59709 (16:5709) + TX_FAR _Route12AfterBattleText1 + db "@" + +Route12Text3: ; 5970e (16:570e) + db $08 ; asm + ld hl, Route12TrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +Route12BattleText2: ; 59718 (16:5718) + TX_FAR _Route12BattleText2 + db "@" + +Route12EndBattleText2: ; 5971d (16:571d) + TX_FAR _Route12EndBattleText2 + db "@" + +Route12AfterBattleText2: ; 59722 (16:5722) + TX_FAR _Route12AfterBattleText2 + db "@" + +Route12Text4: ; 59727 (16:5727) + db $08 ; asm + ld hl, Route12TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +Route12BattleText3: ; 59731 (16:5731) + TX_FAR _Route12BattleText3 + db "@" + +Route12EndBattleText3: ; 59736 (16:5736) + TX_FAR _Route12EndBattleText3 + db "@" + +Route12AfterBattleText3: ; 5973b (16:573b) + TX_FAR _Route12AfterBattleText3 + db "@" + +Route12Text5: ; 59740 (16:5740) + db $08 ; asm + ld hl, Route12TrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +Route12BattleText4: ; 5974a (16:574a) + TX_FAR _Route12BattleText4 + db "@" + +Route12EndBattleText4: ; 5974f (16:574f) + TX_FAR _Route12EndBattleText4 + db "@" + +Route12AfterBattleText4: ; 59754 (16:5754) + TX_FAR _Route12AfterBattleText4 + db "@" + +Route12Text6: ; 59759 (16:5759) + db $08 ; asm + ld hl, Route12TrainerHeader4 + call TalkToTrainer + jp TextScriptEnd + +Route12BattleText5: ; 59763 (16:5763) + TX_FAR _Route12BattleText5 + db "@" + +Route12EndBattleText5: ; 59768 (16:5768) + TX_FAR _Route12EndBattleText5 + db "@" + +Route12AfterBattleText5: ; 5976d (16:576d) + TX_FAR _Route12AfterBattleText5 + db "@" + +Route12Text7: ; 59772 (16:5772) + db $08 ; asm + ld hl, Route12TrainerHeader5 + call TalkToTrainer + jp TextScriptEnd + +Route12BattleText6: ; 5977c (16:577c) + TX_FAR _Route12BattleText6 + db "@" + +Route12EndBattleText6: ; 59781 (16:5781) + TX_FAR _Route12EndBattleText6 + db "@" + +Route12AfterBattleText6: ; 59786 (16:5786) + TX_FAR _Route12AfterBattleText6 + db "@" + +Route12Text8: ; 5978b (16:578b) + db $08 ; asm + ld hl, Route12TrainerHeader6 + call TalkToTrainer + jp TextScriptEnd + +Route12BattleText7: ; 59795 (16:5795) + TX_FAR _Route12BattleText7 + db "@" + +Route12EndBattleText7: ; 5979a (16:579a) + TX_FAR _Route12EndBattleText7 + db "@" + +Route12AfterBattleText7: ; 5979f (16:579f) + TX_FAR _Route12AfterBattleText7 + db "@" + +Route12Text11: ; 597a4 (16:57a4) + TX_FAR _Route12Text11 + db "@" + +Route12Text12: ; 597a9 (16:57a9) + TX_FAR _Route12Text12 + db "@" diff --git a/scripts/route12gate.asm b/scripts/route12gate.asm new file mode 100755 index 00000000..d8f09c92 --- /dev/null +++ b/scripts/route12gate.asm @@ -0,0 +1,9 @@ +Route12GateScript: ; 49504 (12:5504) + jp EnableAutoTextBoxDrawing + +Route12GateTextPointers: ; 49507 (12:5507) + dw Route12GateText1 + +Route12GateText1: ; 49509 (12:5509) + TX_FAR _Route12GateText1 + db "@" diff --git a/scripts/route12gateupstairs.asm b/scripts/route12gateupstairs.asm new file mode 100755 index 00000000..97da1b58 --- /dev/null +++ b/scripts/route12gateupstairs.asm @@ -0,0 +1,79 @@ +Route12GateUpstairsScript: ; 49560 (12:5560) + jp DisableAutoTextBoxDrawing + +Route12GateUpstairsTextPointers: ; 49563 (12:5563) + dw Route12GateUpstairsText1 + dw Route12GateUpstairsText2 + dw Route12GateUpstairsText3 + +Route12GateUpstairsText1: ; 49569 (12:5569) + db $08 ; asm + ld a, [$d7d7] + rrca + jr c, .asm_0ad3c ; 0x4956e + ld hl, TM39PreReceiveText + call PrintText + ld bc, (TM_39 << 8) | 1 + call GiveItem + jr nc, .BagFull + ld hl, ReceivedTM39Text + call PrintText + ld hl, $d7d7 + set 0, [hl] + jr .asm_4ba56 ; 0x49589 +.BagFull + ld hl, TM39NoRoomText + call PrintText + jr .asm_4ba56 ; 0x49591 +.asm_0ad3c ; 0x49593 + ld hl, TM39ExplanationText + call PrintText +.asm_4ba56 ; 0x49599 + jp TextScriptEnd + +TM39PreReceiveText: ; 4959c (12:559c) + TX_FAR _TM39PreReceiveText + db "@" + +ReceivedTM39Text: ; 495a1 (12:55a1) + TX_FAR _ReceivedTM39Text + db $0B, "@" + +TM39ExplanationText: ; 495a7 (12:55a7) + TX_FAR _TM39ExplanationText + db "@" + +TM39NoRoomText: ; 495ac (12:55ac) + TX_FAR _TM39NoRoomText + db "@" + +Route12GateUpstairsText2: ; 495b1 (12:55b1) + db $08 ; asm + ld hl, Route12GateUpstairsText_495b8 + jp Route12GateUpstairsScript_495c9 + +Route12GateUpstairsText_495b8: ; 495b8 (12:55b8) + TX_FAR _Route12GateUpstairsText_495b8 + db "@" + +Route12GateUpstairsText3: ; 495bd (12:55bd) + db $8 + ld hl, Route12GateUpstairsText_495c4 + jp Route12GateUpstairsScript_495c9 + +Route12GateUpstairsText_495c4: ; 495c4 (12:55c4) + TX_FAR _Route12GateUpstairsText_495c4 + db "@" + +Route12GateUpstairsScript_495c9: ; 495c9 (12:55c9) + ld a, [$c109] + cp $4 + jr z, .asm_495d4 ; 0x495ce $4 + ld a, $1 + jr .asm_495d8 ; 0x495d2 $4 +.asm_495d4 + call PrintText + xor a +.asm_495d8 + ld [$cc3c], a + jp TextScriptEnd diff --git a/scripts/route12house.asm b/scripts/route12house.asm new file mode 100755 index 00000000..6b2f5e52 --- /dev/null +++ b/scripts/route12house.asm @@ -0,0 +1,57 @@ +Route12HouseScript: ; 5647f (15:647f) + jp EnableAutoTextBoxDrawing + +Route12HouseTextPointers: ; 56482 (15:6482) + dw Route12HouseText1 + +Route12HouseText1: ; 56484 (15:6484) + db $08 ; asm + ld a, [$d728] + bit 5, a + jr nz, .asm_b4cad + ld hl, Route12HouseText_564c0 + call PrintText + call YesNoChoice + ld a, [$cc26] + and a + jr nz, .asm_a2d76 + ld bc, (SUPER_ROD << 8) | 1 + call GiveItem + jr nc, .BagFull + ld hl, $d728 + set 5, [hl] + ld hl, Route12HouseText_564c5 + jr .asm_df984 +.BagFull + ld hl, Route12HouseText_564d9 + jr .asm_df984 +.asm_a2d76 + ld hl, Route12HouseText_564cf + jr .asm_df984 ; 0x564b5 +.asm_b4cad + ld hl, Route12HouseText_564d4 +.asm_df984 + call PrintText + jp TextScriptEnd + +Route12HouseText_564c0: ; 564c0 (15:64c0) + TX_FAR _Route12HouseText_564c0 + db "@" + +Route12HouseText_564c5: ; 564c5 (15:64c5) + TX_FAR _Route12HouseText_564c5 ; 0x8ca00 + db $0B + TX_FAR _Route12HouseText_564ca ; 0x8ca4f + db "@" + +Route12HouseText_564cf: ; 564cf (15:64cf) + TX_FAR _Route12HouseText_564cf + db "@" + +Route12HouseText_564d4: ; 564d4 (15:64d4) + TX_FAR _Route12HouseText_564d4 + db "@" + +Route12HouseText_564d9: ; 564d9 (15:64d9) + TX_FAR _Route12HouseText_564d9 + db "@" diff --git a/scripts/route13.asm b/scripts/route13.asm new file mode 100755 index 00000000..3c2fea04 --- /dev/null +++ b/scripts/route13.asm @@ -0,0 +1,313 @@ +Route13Script: ; 5581e (15:581e) + call EnableAutoTextBoxDrawing + ld hl, Route13TrainerHeaders + ld de, Route13ScriptPointers + ld a, [W_ROUTE13CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_ROUTE13CURSCRIPT], a + ret + +Route13ScriptPointers: ; 55831 (15:5831) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +Route13TextPointers: ; 55837 (15:5837) + dw Route13Text1 + dw Route13Text2 + dw Route13Text3 + dw Route13Text4 + dw Route13Text5 + dw Route13Text6 + dw Route13Text7 + dw Route13Text8 + dw Route13Text9 + dw Route13Text10 + dw Route13Text11 + dw Route13Text12 + dw Route13Text13 + +Route13TrainerHeaders: ; 55851 (15:5851) +Route13TrainerHeader0: ; 55851 (15:5851) + db $1 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7d9 ; flag's byte + dw Route13BattleText2 ; 0x58d4 TextBeforeBattle + dw Route13AfterBattleText2 ; 0x58de TextAfterBattle + dw Route13EndBattleText2 ; 0x58d9 TextEndBattle + dw Route13EndBattleText2 ; 0x58d9 TextEndBattle + +Route13TrainerHeader2: ; 5585d (15:585d) + db $2 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7d9 ; flag's byte + dw Route13BattleText3 ; 0x58ed TextBeforeBattle + dw Route13AfterBattleText3 ; 0x58f7 TextAfterBattle + dw Route13EndBattleText3 ; 0x58f2 TextEndBattle + dw Route13EndBattleText3 ; 0x58f2 TextEndBattle + +Route13TrainerHeader3: ; 55869 (15:5869) + db $3 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7d9 ; flag's byte + dw Route13BattleText4 ; 0x5906 TextBeforeBattle + dw Route13AfterBattleText4 ; 0x5910 TextAfterBattle + dw Route13EndBattleText4 ; 0x590b TextEndBattle + dw Route13EndBattleText4 ; 0x590b TextEndBattle + +Route13TrainerHeader4: ; 55875 (15:5875) + db $4 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7d9 ; flag's byte + dw Route13BattleText5 ; 0x591f TextBeforeBattle + dw Route13AfterBattleText5 ; 0x5929 TextAfterBattle + dw Route13EndBattleText5 ; 0x5924 TextEndBattle + dw Route13EndBattleText5 ; 0x5924 TextEndBattle + +Route13TrainerHeader5: ; 55881 (15:5881) + db $5 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7d9 ; flag's byte + dw Route13BattleText6 ; 0x5938 TextBeforeBattle + dw Route13AfterBattleText6 ; 0x5942 TextAfterBattle + dw Route13EndBattleText6 ; 0x593d TextEndBattle + dw Route13EndBattleText6 ; 0x593d TextEndBattle + +Route13TrainerHeader6: ; 5588d (15:588d) + db $6 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7d9 ; flag's byte + dw Route13BattleText7 ; 0x5951 TextBeforeBattle + dw Route13AfterBattleText7 ; 0x595b TextAfterBattle + dw Route13EndBattleText7 ; 0x5956 TextEndBattle + dw Route13EndBattleText7 ; 0x5956 TextEndBattle + +Route13TrainerHeader7: ; 55899 (15:5899) + db $7 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7d9 ; flag's byte + dw Route13BattleText8 ; 0x596a TextBeforeBattle + dw Route13AfterBattleText8 ; 0x5974 TextAfterBattle + dw Route13EndBattleText8 ; 0x596f TextEndBattle + dw Route13EndBattleText8 ; 0x596f TextEndBattle + +Route13TrainerHeader8: ; 558a5 (15:58a5) + db $8 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7d9 ; flag's byte + dw Route13BattleText9 ; 0x5983 TextBeforeBattle + dw Route13AfterBattleText9 ; 0x598d TextAfterBattle + dw Route13EndBattleText9 ; 0x5988 TextEndBattle + dw Route13EndBattleText9 ; 0x5988 TextEndBattle + +Route13TrainerHeader9: ; 558b1 (15:58b1) + db $9 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7d9 ; flag's byte + dw Route13BattleText10 ; 0x599c TextBeforeBattle + dw Route13AfterBattleText10 ; 0x59a6 TextAfterBattle + dw Route13EndBattleText10 ; 0x59a1 TextEndBattle + dw Route13EndBattleText10 ; 0x59a1 TextEndBattle + +Route13TrainerHeader10: ; 558bd (15:58bd) + db $a ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7d9 ; flag's byte + dw Route13BattleText11 ; 0x59b5 TextBeforeBattle + dw Route13AfterBattleText11 ; 0x59bf TextAfterBattle + dw Route13EndBattleText11 ; 0x59ba TextEndBattle + dw Route13EndBattleText11 ; 0x59ba TextEndBattle + + db $ff + +Route13Text1: ; 558ca (15:58ca) + db $08 ; asm + ld hl, Route13TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +Route13BattleText2: ; 558d4 (15:58d4) + TX_FAR _Route13BattleText2 + db "@" + +Route13EndBattleText2: ; 558d9 (15:58d9) + TX_FAR _Route13EndBattleText2 + db "@" + +Route13AfterBattleText2: ; 558de (15:58de) + TX_FAR _Route13AfterBattleText2 + db "@" + +Route13Text2: ; 558e3 (15:58e3) + db $08 ; asm + ld hl, Route13TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +Route13BattleText3: ; 558ed (15:58ed) + TX_FAR _Route13BattleText3 + db "@" + +Route13EndBattleText3: ; 558f2 (15:58f2) + TX_FAR _Route13EndBattleText3 + db "@" + +Route13AfterBattleText3: ; 558f7 (15:58f7) + TX_FAR _Route13AfterBattleText3 + db "@" + +Route13Text3: ; 558fc (15:58fc) + db $08 ; asm + ld hl, Route13TrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +Route13BattleText4: ; 55906 (15:5906) + TX_FAR _Route13BattleText4 + db "@" + +Route13EndBattleText4: ; 5590b (15:590b) + TX_FAR _Route13EndBattleText4 + db "@" + +Route13AfterBattleText4: ; 55910 (15:5910) + TX_FAR _Route13AfterBattleText4 + db "@" + +Route13Text4: ; 55915 (15:5915) + db $08 ; asm + ld hl, Route13TrainerHeader4 + call TalkToTrainer + jp TextScriptEnd + +Route13BattleText5: ; 5591f (15:591f) + TX_FAR _Route13BattleText5 + db "@" + +Route13EndBattleText5: ; 55924 (15:5924) + TX_FAR _Route13EndBattleText5 + db "@" + +Route13AfterBattleText5: ; 55929 (15:5929) + TX_FAR _Route13AfterBattleText5 + db "@" + +Route13Text5: ; 5592e (15:592e) + db $08 ; asm + ld hl, Route13TrainerHeader5 + call TalkToTrainer + jp TextScriptEnd + +Route13BattleText6: ; 55938 (15:5938) + TX_FAR _Route13BattleText6 + db "@" + +Route13EndBattleText6: ; 5593d (15:593d) + TX_FAR _Route13EndBattleText6 + db "@" + +Route13AfterBattleText6: ; 55942 (15:5942) + TX_FAR _Route13AfterBattleText6 + db "@" + +Route13Text6: ; 55947 (15:5947) + db $08 ; asm + ld hl, Route13TrainerHeader6 + call TalkToTrainer + jp TextScriptEnd + +Route13BattleText7: ; 55951 (15:5951) + TX_FAR _Route13BattleText7 + db "@" + +Route13EndBattleText7: ; 55956 (15:5956) + TX_FAR _Route13EndBattleText7 + db "@" + +Route13AfterBattleText7: ; 5595b (15:595b) + TX_FAR _Route13AfterBattleText7 + db "@" + +Route13Text7: ; 55960 (15:5960) + db $08 ; asm + ld hl, Route13TrainerHeader7 + call TalkToTrainer + jp TextScriptEnd + +Route13BattleText8: ; 5596a (15:596a) + TX_FAR _Route13BattleText8 + db "@" + +Route13EndBattleText8: ; 5596f (15:596f) + TX_FAR _Route13EndBattleText8 + db "@" + +Route13AfterBattleText8: ; 55974 (15:5974) + TX_FAR _Route13AfterBattleText8 + db "@" + +Route13Text8: ; 55979 (15:5979) + db $08 ; asm + ld hl, Route13TrainerHeader8 + call TalkToTrainer + jp TextScriptEnd + +Route13BattleText9: ; 55983 (15:5983) + TX_FAR _Route13BattleText9 + db "@" + +Route13EndBattleText9: ; 55988 (15:5988) + TX_FAR _Route13EndBattleText9 + db "@" + +Route13AfterBattleText9: ; 5598d (15:598d) + TX_FAR _Route13AfterBattleText9 + db "@" + +Route13Text9: ; 55992 (15:5992) + db $08 ; asm + ld hl, Route13TrainerHeader9 + call TalkToTrainer + jp TextScriptEnd + +Route13BattleText10: ; 5599c (15:599c) + TX_FAR _Route13BattleText10 + db "@" + +Route13EndBattleText10: ; 559a1 (15:59a1) + TX_FAR _Route13EndBattleText10 + db "@" + +Route13AfterBattleText10: ; 559a6 (15:59a6) + TX_FAR _Route13AfterBattleText10 + db "@" + +Route13Text10: ; 559ab (15:59ab) + db $08 ; asm + ld hl, Route13TrainerHeader10 + call TalkToTrainer + jp TextScriptEnd + +Route13BattleText11: ; 559b5 (15:59b5) + TX_FAR _Route13BattleText11 + db "@" + +Route13EndBattleText11: ; 559ba (15:59ba) + TX_FAR _Route13EndBattleText11 + db "@" + +Route13AfterBattleText11: ; 559bf (15:59bf) + TX_FAR _Route13AfterBattleText11 + db "@" + +Route13Text11: ; 559c4 (15:59c4) + TX_FAR _Route13Text11 + db "@" + +Route13Text12: ; 559c9 (15:59c9) + TX_FAR _Route13Text12 + db "@" + +Route13Text13: ; 559ce (15:59ce) + TX_FAR _Route13Text13 + db "@" diff --git a/scripts/route14.asm b/scripts/route14.asm new file mode 100755 index 00000000..0f9b49cf --- /dev/null +++ b/scripts/route14.asm @@ -0,0 +1,303 @@ +Route14Script: ; 559d3 (15:59d3) + call EnableAutoTextBoxDrawing + ld hl, Route14TrainerHeaders + ld de, Route14ScriptPointers + ld a, [W_ROUTE14CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_ROUTE14CURSCRIPT], a + ret + +Route14ScriptPointers: ; 559e6 (15:59e6) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +Route14TextPointers: ; 559ec (15:59ec) + dw Route14Text1 + dw Route14Text2 + dw Route14Text3 + dw Route14Text4 + dw Route14Text5 + dw Route14Text6 + dw Route14Text7 + dw Route14Text8 + dw Route14Text9 + dw Route14Text10 + dw Route14Text11 + +Route14TrainerHeaders: ; 55a02 (15:5a02) +Route14TrainerHeader0: ; 55a02 (15:5a02) + db $1 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7db ; flag's byte + dw Route14BattleText1 ; 0x5a85 TextBeforeBattle + dw Route14AfterBattleText1 ; 0x5a8f TextAfterBattle + dw Route14EndBattleText1 ; 0x5a8a TextEndBattle + dw Route14EndBattleText1 ; 0x5a8a TextEndBattle + +Route14TrainerHeader1: ; 55a0e (15:5a0e) + db $2 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7db ; flag's byte + dw Route14BattleText2 ; 0x5a9e TextBeforeBattle + dw Route14AfterBattleText2 ; 0x5aa8 TextAfterBattle + dw Route14EndBattleText2 ; 0x5aa3 TextEndBattle + dw Route14EndBattleText2 ; 0x5aa3 TextEndBattle + +Route14TrainerHeader2: ; 55a1a (15:5a1a) + db $3 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7db ; flag's byte + dw Route14BattleText3 ; 0x5ab7 TextBeforeBattle + dw Route14AfterBattleText3 ; 0x5ac1 TextAfterBattle + dw Route14EndBattleText3 ; 0x5abc TextEndBattle + dw Route14EndBattleText3 ; 0x5abc TextEndBattle + +Route14TrainerHeader3: ; 55a26 (15:5a26) + db $4 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7db ; flag's byte + dw Route14BattleText4 ; 0x5ad0 TextBeforeBattle + dw Route14AfterBattleText4 ; 0x5ada TextAfterBattle + dw Route14EndBattleText4 ; 0x5ad5 TextEndBattle + dw Route14EndBattleText4 ; 0x5ad5 TextEndBattle + +Route14TrainerHeader4: ; 55a32 (15:5a32) + db $5 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7db ; flag's byte + dw Route14BattleText5 ; 0x5ae9 TextBeforeBattle + dw Route14AfterBattleText5 ; 0x5af3 TextAfterBattle + dw Route14EndBattleText5 ; 0x5aee TextEndBattle + dw Route14EndBattleText5 ; 0x5aee TextEndBattle + +Route14TrainerHeader5: ; 55a3e (15:5a3e) + db $6 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7db ; flag's byte + dw Route14BattleText6 ; 0x5b02 TextBeforeBattle + dw Route14AfterBattleText6 ; 0x5b0c TextAfterBattle + dw Route14EndBattleText6 ; 0x5b07 TextEndBattle + dw Route14EndBattleText6 ; 0x5b07 TextEndBattle + +Route14TrainerHeader6: ; 55a4a (15:5a4a) + db $7 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7db ; flag's byte + dw Route14BattleText7 ; 0x5b1b TextBeforeBattle + dw Route14AfterBattleText7 ; 0x5b25 TextAfterBattle + dw Route14EndBattleText7 ; 0x5b20 TextEndBattle + dw Route14EndBattleText7 ; 0x5b20 TextEndBattle + +Route14TrainerHeader7: ; 55a56 (15:5a56) + db $8 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7db ; flag's byte + dw Route14BattleText8 ; 0x5b34 TextBeforeBattle + dw Route14AfterBattleText8 ; 0x5b3e TextAfterBattle + dw Route14EndBattleText8 ; 0x5b39 TextEndBattle + dw Route14EndBattleText8 ; 0x5b39 TextEndBattle + +Route14TrainerHeader8: ; 55a62 (15:5a62) + db $9 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7db ; flag's byte + dw Route14BattleText9 ; 0x5b4d TextBeforeBattle + dw Route14AfterBattleText9 ; 0x5b57 TextAfterBattle + dw Route14EndBattleText9 ; 0x5b52 TextEndBattle + dw Route14EndBattleText9 ; 0x5b52 TextEndBattle + +Route14TrainerHeader9: ; 55a6e (15:5a6e) + db $a ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7db ; flag's byte + dw Route14BattleText10 ; 0x5b66 TextBeforeBattle + dw Route14AfterBattleText10 ; 0x5b70 TextAfterBattle + dw Route14EndBattleText10 ; 0x5b6b TextEndBattle + dw Route14EndBattleText10 ; 0x5b6b TextEndBattle + + db $ff + +Route14Text1: ; 55a7b (15:5a7b) + db $08 ; asm + ld hl, Route14TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +Route14BattleText1: ; 55a85 (15:5a85) + TX_FAR _Route14BattleText1 + db "@" + +Route14EndBattleText1: ; 55a8a (15:5a8a) + TX_FAR _Route14EndBattleText1 + db "@" + +Route14AfterBattleText1: ; 55a8f (15:5a8f) + TX_FAR _Route14AfterBattleText1 + db "@" + +Route14Text2: ; 55a94 (15:5a94) + db $08 ; asm + ld hl, Route14TrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +Route14BattleText2: ; 55a9e (15:5a9e) + TX_FAR _Route14BattleText2 + db "@" + +Route14EndBattleText2: ; 55aa3 (15:5aa3) + TX_FAR _Route14EndBattleText2 + db "@" + +Route14AfterBattleText2: ; 55aa8 (15:5aa8) + TX_FAR _Route14AfterBattleText2 + db "@" + +Route14Text3: ; 55aad (15:5aad) + db $08 ; asm + ld hl, Route14TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +Route14BattleText3: ; 55ab7 (15:5ab7) + TX_FAR _Route14BattleText3 + db "@" + +Route14EndBattleText3: ; 55abc (15:5abc) + TX_FAR _Route14EndBattleText3 + db "@" + +Route14AfterBattleText3: ; 55ac1 (15:5ac1) + TX_FAR _Route14AfterBattleText3 + db "@" + +Route14Text4: ; 55ac6 (15:5ac6) + db $08 ; asm + ld hl, Route14TrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +Route14BattleText4: ; 55ad0 (15:5ad0) + TX_FAR _Route14BattleText4 + db "@" + +Route14EndBattleText4: ; 55ad5 (15:5ad5) + TX_FAR _Route14EndBattleText4 + db "@" + +Route14AfterBattleText4: ; 55ada (15:5ada) + TX_FAR _Route14AfterBattleText4 + db "@" + +Route14Text5: ; 55adf (15:5adf) + db $08 ; asm + ld hl, Route14TrainerHeader4 + call TalkToTrainer + jp TextScriptEnd + +Route14BattleText5: ; 55ae9 (15:5ae9) + TX_FAR _Route14BattleText5 + db "@" + +Route14EndBattleText5: ; 55aee (15:5aee) + TX_FAR _Route14EndBattleText5 + db "@" + +Route14AfterBattleText5: ; 55af3 (15:5af3) + TX_FAR _Route14AfterBattleText5 + db "@" + +Route14Text6: ; 55af8 (15:5af8) + db $08 ; asm + ld hl, Route14TrainerHeader5 + call TalkToTrainer + jp TextScriptEnd + +Route14BattleText6: ; 55b02 (15:5b02) + TX_FAR _Route14BattleText6 + db "@" + +Route14EndBattleText6: ; 55b07 (15:5b07) + TX_FAR _Route14EndBattleText6 + db "@" + +Route14AfterBattleText6: ; 55b0c (15:5b0c) + TX_FAR _Route14AfterBattleText6 + db "@" + +Route14Text7: ; 55b11 (15:5b11) + db $08 ; asm + ld hl, Route14TrainerHeader6 + call TalkToTrainer + jp TextScriptEnd + +Route14BattleText7: ; 55b1b (15:5b1b) + TX_FAR _Route14BattleText7 + db "@" + +Route14EndBattleText7: ; 55b20 (15:5b20) + TX_FAR _Route14EndBattleText7 + db "@" + +Route14AfterBattleText7: ; 55b25 (15:5b25) + TX_FAR _Route14AfterBattleText7 + db "@" + +Route14Text8: ; 55b2a (15:5b2a) + db $08 ; asm + ld hl, Route14TrainerHeader7 + call TalkToTrainer + jp TextScriptEnd + +Route14BattleText8: ; 55b34 (15:5b34) + TX_FAR _Route14BattleText8 + db "@" + +Route14EndBattleText8: ; 55b39 (15:5b39) + TX_FAR _Route14EndBattleText8 + db "@" + +Route14AfterBattleText8: ; 55b3e (15:5b3e) + TX_FAR _Route14AfterBattleText8 + db "@" + +Route14Text9: ; 55b43 (15:5b43) + db $08 ; asm + ld hl, Route14TrainerHeader8 + call TalkToTrainer + jp TextScriptEnd + +Route14BattleText9: ; 55b4d (15:5b4d) + TX_FAR _Route14BattleText9 + db "@" + +Route14EndBattleText9: ; 55b52 (15:5b52) + TX_FAR _Route14EndBattleText9 + db "@" + +Route14AfterBattleText9: ; 55b57 (15:5b57) + TX_FAR _Route14AfterBattleText9 + db "@" + +Route14Text10: ; 55b5c (15:5b5c) + db $08 ; asm + ld hl, Route14TrainerHeader9 + call TalkToTrainer + jp TextScriptEnd + +Route14BattleText10: ; 55b66 (15:5b66) + TX_FAR _Route14BattleText10 + db "@" + +Route14EndBattleText10: ; 55b6b (15:5b6b) + TX_FAR _Route14EndBattleText10 + db "@" + +Route14AfterBattleText10: ; 55b70 (15:5b70) + TX_FAR _Route14AfterBattleText10 + db "@" + +Route14Text11: ; 55b75 (15:5b75) + TX_FAR _Route14Text11 + db "@" diff --git a/scripts/route15.asm b/scripts/route15.asm new file mode 100755 index 00000000..f7eaa758 --- /dev/null +++ b/scripts/route15.asm @@ -0,0 +1,296 @@ +Route15Script: ; 597ae (16:57ae) + call EnableAutoTextBoxDrawing + ld hl, Route15TrainerHeaders + ld de, Route15ScriptPointers + ld a, [W_ROUTE15CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_ROUTE15CURSCRIPT], a + ret + +Route15ScriptPointers: ; 597c1 (16:57c1) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +Route15TextPointers: ; 597c7 (16:57c7) + dw Route15Text1 + dw Route15Text2 + dw Route15Text3 + dw Route15Text4 + dw Route15Text5 + dw Route15Text6 + dw Route15Text7 + dw Route15Text8 + dw Route15Text9 + dw Route15Text10 + dw Predef5CText + dw Route15Text12 + +Route15TrainerHeaders: ; 597df (16:57df) +Route15TrainerHeader0: ; 597df (16:57df) + db $1 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7dd ; flag's byte + dw Route15BattleText1 ; 0x5898 TextBeforeBattle + dw Route15AfterBattleText1 ; 0x58a2 TextAfterBattle + dw Route15EndBattleText1 ; 0x589d TextEndBattle + dw Route15EndBattleText1 ; 0x589d TextEndBattle + +Route15TrainerHeader1: ; 597eb (16:57eb) + db $2 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7dd ; flag's byte + dw Route15BattleText2 ; 0x58a7 TextBeforeBattle + dw Route15AfterBattleText2 ; 0x58b1 TextAfterBattle + dw Route15EndBattleText2 ; 0x58ac TextEndBattle + dw Route15EndBattleText2 ; 0x58ac TextEndBattle + +Route15TrainerHeader2: ; 597f7 (16:57f7) + db $3 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7dd ; flag's byte + dw Route15BattleText3 ; 0x58b6 TextBeforeBattle + dw Route15AfterBattleText3 ; 0x58c0 TextAfterBattle + dw Route15EndBattleText3 ; 0x58bb TextEndBattle + dw Route15EndBattleText3 ; 0x58bb TextEndBattle + +Route15TrainerHeader3: ; 59803 (16:5803) + db $4 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7dd ; flag's byte + dw Route15BattleText4 ; 0x58c5 TextBeforeBattle + dw Route15AfterBattleText4 ; 0x58cf TextAfterBattle + dw Route15EndBattleText4 ; 0x58ca TextEndBattle + dw Route15EndBattleText4 ; 0x58ca TextEndBattle + +Route15TrainerHeader4: ; 5980f (16:580f) + db $5 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7dd ; flag's byte + dw Route15BattleText5 ; 0x58d4 TextBeforeBattle + dw Route15AfterBattleText5 ; 0x58de TextAfterBattle + dw Route15EndBattleText5 ; 0x58d9 TextEndBattle + dw Route15EndBattleText5 ; 0x58d9 TextEndBattle + +Route15TrainerHeader5: ; 5981b (16:581b) + db $6 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7dd ; flag's byte + dw Route15BattleText6 ; 0x58e3 TextBeforeBattle + dw Route15AfterBattleText6 ; 0x58ed TextAfterBattle + dw Route15EndBattleText6 ; 0x58e8 TextEndBattle + dw Route15EndBattleText6 ; 0x58e8 TextEndBattle + +Route15TrainerHeader6: ; 59827 (16:5827) + db $7 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7dd ; flag's byte + dw Route15BattleText7 ; 0x58f2 TextBeforeBattle + dw Route15AfterBattleText7 ; 0x58fc TextAfterBattle + dw Route15EndBattleText7 ; 0x58f7 TextEndBattle + dw Route15EndBattleText7 ; 0x58f7 TextEndBattle + +Route15TrainerHeader7: ; 59833 (16:5833) + db $8 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7dd ; flag's byte + dw Route15BattleText8 ; 0x5901 TextBeforeBattle + dw Route15AfterBattleText8 ; 0x590b TextAfterBattle + dw Route15EndBattleText8 ; 0x5906 TextEndBattle + dw Route15EndBattleText8 ; 0x5906 TextEndBattle + +Route15TrainerHeader8: ; 5983f (16:583f) + db $9 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7dd ; flag's byte + dw Route15BattleText9 ; 0x5910 TextBeforeBattle + dw Route15AfterBattleText9 ; 0x591a TextAfterBattle + dw Route15EndBattleText9 ; 0x5915 TextEndBattle + dw Route15EndBattleText9 ; 0x5915 TextEndBattle + +Route15TrainerHeader9: ; 5984b (16:584b) + db $a ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7dd ; flag's byte + dw Route15BattleText10 ; 0x591f TextBeforeBattle + dw Route15AfterBattleText10 ; 0x5929 TextAfterBattle + dw Route15EndBattleText10 ; 0x5924 TextEndBattle + dw Route15EndBattleText10 ; 0x5924 TextEndBattle + + db $ff + +Route15Text1: ; 59858 (16:5858) + db $8 ; asm + ld hl, Route15TrainerHeader0 + jr asm_33cb7 ; 0x5985c $34 + +Route15Text2: ; 5985e (16:585e) + db $8 ; asm + ld hl, Route15TrainerHeader1 + jr asm_33cb7 ; 0x59862 $2e + +Route15Text3: ; 59864 (16:5864) + db $8 ; asm + ld hl, Route15TrainerHeader2 + jr asm_33cb7 ; 0x59868 $28 + +Route15Text4: ; 5986a (16:586a) + db $8 ; asm + ld hl, Route15TrainerHeader3 + jr asm_33cb7 ; 0x5986e $22 + +Route15Text5: ; 59870 (16:5870) + db $8 ; asm + ld hl, Route15TrainerHeader4 + jr asm_33cb7 ; 0x59874 $1c + +Route15Text6: ; 59876 (16:5876) + db $8 ; asm + ld hl, Route15TrainerHeader5 + jr asm_33cb7 ; 0x5987a $16 + +Route15Text7: ; 5987c (16:587c) + db $8 ; asm + ld hl, Route15TrainerHeader6 + jr asm_33cb7 ; 0x59880 $10 + +Route15Text8: ; 59882 (16:5882) + db $8 ; asm + ld hl, Route15TrainerHeader7 + jr asm_33cb7 ; 0x59886 $a + +Route15Text9: ; 59888 (16:5888) + db $8 ; asm + ld hl, Route15TrainerHeader8 + jr asm_33cb7 ; 0x5988c $4 + +Route15Text10: ; 5988e (16:588e) + db $8 ; asm + ld hl, Route15TrainerHeader9 +asm_33cb7: ; 59892 (16:5892) + call TalkToTrainer + jp TextScriptEnd + +Route15BattleText1: ; 59898 (16:5898) + TX_FAR _Route15BattleText1 + db "@" + +Route15EndBattleText1: ; 5989d (16:589d) + TX_FAR _Route15EndBattleText1 + db "@" + +Route15AfterBattleText1: ; 598a2 (16:58a2) + TX_FAR _Route15AfterBattleText1 + db "@" + +Route15BattleText2: ; 598a7 (16:58a7) + TX_FAR _Route15BattleText2 + db "@" + +Route15EndBattleText2: ; 598ac (16:58ac) + TX_FAR _Route15EndBattleText2 + db "@" + +Route15AfterBattleText2: ; 598b1 (16:58b1) + TX_FAR _Route15AfterBattleText2 + db "@" + +Route15BattleText3: ; 598b6 (16:58b6) + TX_FAR _Route15BattleText3 + db "@" + +Route15EndBattleText3: ; 598bb (16:58bb) + TX_FAR _Route15EndBattleText3 + db "@" + +Route15AfterBattleText3: ; 598c0 (16:58c0) + TX_FAR _Route15AfterBattleText3 + db "@" + +Route15BattleText4: ; 598c5 (16:58c5) + TX_FAR _Route15BattleText4 + db "@" + +Route15EndBattleText4: ; 598ca (16:58ca) + TX_FAR _Route15EndBattleText4 + db "@" + +Route15AfterBattleText4: ; 598cf (16:58cf) + TX_FAR _Route15AfterBattleText4 + db "@" + +Route15BattleText5: ; 598d4 (16:58d4) + TX_FAR _Route15BattleText5 + db "@" + +Route15EndBattleText5: ; 598d9 (16:58d9) + TX_FAR _Route15EndBattleText5 + db "@" + +Route15AfterBattleText5: ; 598de (16:58de) + TX_FAR _Route15AfterBattleText5 + db "@" + +Route15BattleText6: ; 598e3 (16:58e3) + TX_FAR _Route15BattleText6 + db "@" + +Route15EndBattleText6: ; 598e8 (16:58e8) + TX_FAR _Route15EndBattleText6 + db "@" + +Route15AfterBattleText6: ; 598ed (16:58ed) + TX_FAR _Route15AfterBattleText6 + db "@" + +Route15BattleText7: ; 598f2 (16:58f2) + TX_FAR _Route15BattleText7 + db "@" + +Route15EndBattleText7: ; 598f7 (16:58f7) + TX_FAR _Route15EndBattleText7 + db "@" + +Route15AfterBattleText7: ; 598fc (16:58fc) + TX_FAR _Route15AfterBattleText7 + db "@" + +Route15BattleText8: ; 59901 (16:5901) + TX_FAR _Route15BattleText8 + db "@" + +Route15EndBattleText8: ; 59906 (16:5906) + TX_FAR _Route15EndBattleText8 + db "@" + +Route15AfterBattleText8: ; 5990b (16:590b) + TX_FAR _Route15AfterBattleText8 + db "@" + +Route15BattleText9: ; 59910 (16:5910) + TX_FAR _Route15BattleText9 + db "@" + +Route15EndBattleText9: ; 59915 (16:5915) + TX_FAR _Route15EndBattleText9 + db "@" + +Route15AfterBattleText9: ; 5991a (16:591a) + TX_FAR _Route15AfterBattleText9 + db "@" + +Route15BattleText10: ; 5991f (16:591f) + TX_FAR _Route15BattleText10 + db "@" + +Route15EndBattleText10: ; 59924 (16:5924) + TX_FAR _Route15EndBattleText10 + db "@" + +Route15AfterBattleText10: ; 59929 (16:5929) + TX_FAR _Route15AfterBattleText10 + db "@" + +Route15Text12: ; 5992e (16:592e) + TX_FAR _Route15Text12 + db "@" diff --git a/scripts/route15gate.asm b/scripts/route15gate.asm new file mode 100755 index 00000000..76e9aadf --- /dev/null +++ b/scripts/route15gate.asm @@ -0,0 +1,9 @@ +Route15GateScript: ; 49602 (12:5602) + jp EnableAutoTextBoxDrawing + +Route15GateTextPointers: ; 49605 (12:5605) + dw Route15GateText1 + +Route15GateText1: ; 49607 (12:5607) + TX_FAR _Route15GateText1 + db "@" diff --git a/scripts/route15gateupstairs.asm b/scripts/route15gateupstairs.asm new file mode 100755 index 00000000..3c2afcd4 --- /dev/null +++ b/scripts/route15gateupstairs.asm @@ -0,0 +1,47 @@ +Route15GateUpstairsScript: ; 4964a (12:564a) + jp DisableAutoTextBoxDrawing + +Route15GateUpstairsTextPointers: ; 4964d (12:564d) + dw Route15GateUpstairsText1 + dw Route15GateUpstairsText2 + +Route15GateUpstairsText1: ; 49651 (12:5651) + db $8 + ld a, [$d7dd] + bit 0, a + jr nz, .asm_49683 ; 0x49657 $2a + ld a, $32 + ld [$ffdb], a + ld a, EXP__ALL + ld [$ffdc], a + ld [$d11e], a + call GetItemName + ld hl, $cd6d + ld de, $cc5b + ld bc, $000d + call CopyData + ld a, $62 + call Predef + ld a, [$ffdb] + cp $1 + jr nz, .asm_49689 ; 0x4967c $b + ld hl, $d7dd + set 0, [hl] +.asm_49683 + ld hl, Route15GateUpstairsText_4968c + call PrintText +.asm_49689 + jp TextScriptEnd + +Route15GateUpstairsText_4968c: ; 4968c (12:568c) + TX_FAR _Route15GateUpstairsText_4968c + db "@" + +Route15GateUpstairsText2: ; 49691 (12:5691) + db $8 + ld hl, Route15GateUpstairsText_49698 + jp Route12GateUpstairsScript_495c9 + +Route15GateUpstairsText_49698: ; 49698 (12:5698) + TX_FAR _Route15GateUpstairsText_49698 + db "@" diff --git a/scripts/route16.asm b/scripts/route16.asm new file mode 100755 index 00000000..08739131 --- /dev/null +++ b/scripts/route16.asm @@ -0,0 +1,263 @@ +Route16Script: ; 59933 (16:5933) + call EnableAutoTextBoxDrawing + ld hl, Route16TrainerHeaders + ld de, Route16ScriptPointers + ld a, [W_ROUTE16CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_ROUTE16CURSCRIPT], a + ret + +Func_59946: ; 59946 (16:5946) + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [W_ROUTE16CURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +Route16ScriptPointers: ; 59951 (16:5951) + dw Route16Script0 + dw Func_324c + dw EndTrainerBattle + dw Route16Script3 + +Route16Script0: ; 59959 (16:5959) + ld hl, $d7e0 + bit 1, [hl] + jp nz, CheckFightingMapTrainers + bit 0, [hl] + res 0, [hl] + jp z, CheckFightingMapTrainers + ld a, $a + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + ld a, SNORLAX + ld [W_CUROPPONENT], a ; $d059 + ld a, 30 + ld [W_CURENEMYLVL], a ; $d127 + ld a, $21 + ld [$cc4d], a + ld a, $11 + call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7)) + call UpdateSprites + ld a, $3 + ld [W_ROUTE16CURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +Route16Script3: ; 5998f (16:598f) + ld a, [W_ISINBATTLE] ; $d057 + cp $ff + jp z, Func_59946 + call UpdateSprites + ld a, [$cf0b] + cp $2 + jr z, .asm_599a8 + ld a, $b + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID +.asm_599a8 + ld hl, $d7e0 + set 1, [hl] + call Delay3 + ld a, $0 + ld [W_ROUTE16CURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +Route16TextPointers: ; 599b9 (16:59b9) + dw Route16Text1 + dw Route16Text2 + dw Route16Text3 + dw Route16Text4 + dw Route16Text5 + dw Route16Text6 + dw Route16Text7 + dw Route16Text8 + dw Route16Text9 + dw Route16Text10 + dw Route16Text11 + +Route16TrainerHeaders: ; 599cf (16:59cf) +Route16TrainerHeader0: ; 599cf (16:59cf) + db $1 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7df ; flag's byte + dw Route16BattleText1 ; 0x5a22 TextBeforeBattle + dw Route16AfterBattleText1 ; 0x5a2c TextAfterBattle + dw Route16EndBattleText1 ; 0x5a27 TextEndBattle + dw Route16EndBattleText1 ; 0x5a27 TextEndBattle + +Route16TrainerHeader1: ; 599db (16:59db) + db $2 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7df ; flag's byte + dw Route16BattleText2 ; 0x5a3b TextBeforeBattle + dw Route16AfterBattleText2 ; 0x5a45 TextAfterBattle + dw Route16EndBattleText2 ; 0x5a40 TextEndBattle + dw Route16EndBattleText2 ; 0x5a40 TextEndBattle + +Route16TrainerHeader2: ; 599e7 (16:59e7) + db $3 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7df ; flag's byte + dw Route16BattleText3 ; 0x5a54 TextBeforeBattle + dw Route16AfterBattleText3 ; 0x5a5e TextAfterBattle + dw Route16EndBattleText3 ; 0x5a59 TextEndBattle + dw Route16EndBattleText3 ; 0x5a59 TextEndBattle + +Route16TrainerHeader3: ; 599f3 (16:59f3) + db $4 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7df ; flag's byte + dw Route16BattleText4 ; 0x5a6d TextBeforeBattle + dw Route16AfterBattleText4 ; 0x5a77 TextAfterBattle + dw Route16EndBattleText4 ; 0x5a72 TextEndBattle + dw Route16EndBattleText4 ; 0x5a72 TextEndBattle + +Route16TrainerHeader4: ; 599ff (16:59ff) + db $5 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7df ; flag's byte + dw Route16BattleText5 ; 0x5a86 TextBeforeBattle + dw Route16AfterBattleText5 ; 0x5a90 TextAfterBattle + dw Route16EndBattleText5 ; 0x5a8b TextEndBattle + dw Route16EndBattleText5 ; 0x5a8b TextEndBattle + +Route16TrainerHeader5: ; 59a0b (16:5a0b) + db $6 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7df ; flag's byte + dw Route16BattleText6 ; 0x5a9f TextBeforeBattle + dw Route16AfterBattleText6 ; 0x5aa9 TextAfterBattle + dw Route16EndBattleText6 ; 0x5aa4 TextEndBattle + dw Route16EndBattleText6 ; 0x5aa4 TextEndBattle + + db $ff + +Route16Text1: ; 59a18 (16:5a18) + db $08 ; asm + ld hl, Route16TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +Route16BattleText1: ; 59a22 (16:5a22) + TX_FAR _Route16BattleText1 + db "@" + +Route16EndBattleText1: ; 59a27 (16:5a27) + TX_FAR _Route16EndBattleText1 + db "@" + +Route16AfterBattleText1: ; 59a2c (16:5a2c) + TX_FAR _Route16AfterBattleText1 + db "@" + +Route16Text2: ; 59a31 (16:5a31) + db $08 ; asm + ld hl, Route16TrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +Route16BattleText2: ; 59a3b (16:5a3b) + TX_FAR _Route16BattleText2 + db "@" + +Route16EndBattleText2: ; 59a40 (16:5a40) + TX_FAR _Route16EndBattleText2 + db "@" + +Route16AfterBattleText2: ; 59a45 (16:5a45) + TX_FAR _Route16AfterBattleText2 + db "@" + +Route16Text3: ; 59a4a (16:5a4a) + db $08 ; asm + ld hl, Route16TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +Route16BattleText3: ; 59a54 (16:5a54) + TX_FAR _Route16BattleText3 + db "@" + +Route16EndBattleText3: ; 59a59 (16:5a59) + TX_FAR _Route16EndBattleText3 + db "@" + +Route16AfterBattleText3: ; 59a5e (16:5a5e) + TX_FAR _Route16AfterBattleText3 + db "@" + +Route16Text4: ; 59a63 (16:5a63) + db $08 ; asm + ld hl, Route16TrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +Route16BattleText4: ; 59a6d (16:5a6d) + TX_FAR _Route16BattleText4 + db "@" + +Route16EndBattleText4: ; 59a72 (16:5a72) + TX_FAR _Route16EndBattleText4 + db "@" + +Route16AfterBattleText4: ; 59a77 (16:5a77) + TX_FAR _Route16AfterBattleText4 + db "@" + +Route16Text5: ; 59a7c (16:5a7c) + db $08 ; asm + ld hl, Route16TrainerHeader4 + call TalkToTrainer + jp TextScriptEnd + +Route16BattleText5: ; 59a86 (16:5a86) + TX_FAR _Route16BattleText5 + db "@" + +Route16EndBattleText5: ; 59a8b (16:5a8b) + TX_FAR _Route16EndBattleText5 + db "@" + +Route16AfterBattleText5: ; 59a90 (16:5a90) + TX_FAR _Route16AfterBattleText5 + db "@" + +Route16Text6: ; 59a95 (16:5a95) + db $08 ; asm + ld hl, Route16TrainerHeader5 + call TalkToTrainer + jp TextScriptEnd + +Route16BattleText6: ; 59a9f (16:5a9f) + TX_FAR _Route16BattleText6 + db "@" + +Route16EndBattleText6: ; 59aa4 (16:5aa4) + TX_FAR _Route16EndBattleText6 + db "@" + +Route16AfterBattleText6: ; 59aa9 (16:5aa9) + TX_FAR _Route16AfterBattleText6 + db "@" + +Route16Text7: ; 59aae (16:5aae) + TX_FAR _Route16Text7 + db "@" + +Route16Text10: ; 59ab3 (16:5ab3) + TX_FAR _Route16Text10 + db "@" + +Route16Text11: ; 59ab8 (16:5ab8) + TX_FAR _Route16Text11 + db "@" + +Route16Text8: ; 59abd (16:5abd) + TX_FAR _Route16Text8 + db "@" + +Route16Text9: ; 59ac2 (16:5ac2) + TX_FAR _Route16Text9 + db "@" diff --git a/scripts/route16gate.asm b/scripts/route16gate.asm new file mode 100755 index 00000000..5131a1ff --- /dev/null +++ b/scripts/route16gate.asm @@ -0,0 +1,121 @@ +Route16GateScript: ; 496be (12:56be) + ld hl, $d732 + res 5, [hl] + call EnableAutoTextBoxDrawing + ld a, [W_ROUTE16GATECURSCRIPT] + ld hl, Route16GateScriptPointers + jp CallFunctionInTable + +Route16GateScriptPointers: ; 496cf (12:56cf) + dw Route16GateScript0 + dw Route16GateScript1 + dw Route16GateScript2 + dw Route16GateScript3 + +Route16GateScript0: ; 496d7 (12:56d7) + call Func_49755 + ret nz + ld hl, CoordsData_49714 + call ArePlayerCoordsInArray + ret nc + ld a, $3 + ld [$ff8c], a + call DisplayTextID + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + ld a, [$cd3d] + cp $1 + jr z, .asm_4970e ; 0x496f1 $1b + ld a, [$cd3d] + dec a + ld [$cd38], a + ld b, $0 + ld c, a + ld a, $40 + ld hl, $ccd3 + call FillMemory + call Func_3486 + ld a, $1 + ld [W_ROUTE16GATECURSCRIPT], a + ret +.asm_4970e + ld a, $2 + ld [W_ROUTE16GATECURSCRIPT], a + ret + +CoordsData_49714: ; 49714 (12:5714) + db $07,$04 + db $08,$04 + db $09,$04 + db $0A,$04 + db $FF + +Route16GateScript1: ; 4971d (12:571d) + ld a, [$cd38] + and a + ret nz + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + +Route16GateScript2: ; 49727 (12:5727) + ld a, $1 + ld [H_SPRITEHEIGHT], a + call DisplayTextID + ld a, $1 + ld [$cd38], a + ld a, $10 + ld [$ccd3], a + call Func_3486 + ld a, $3 + ld [W_ROUTE16GATECURSCRIPT], a + ret + +Route16GateScript3: ; 49741 (12:5741) + ld a, [$cd38] + and a + ret nz + xor a + ld [wJoypadForbiddenButtonsMask], a + ld hl, $d730 + res 7, [hl] + ld a, $0 + ld [W_ROUTE16GATECURSCRIPT], a + ret + +Func_49755: ; 49755 (12:5755) + ld b, BICYCLE + jp IsItemInBag + +Route16GateTextPointers: ; 4975a (12:575a) + dw Route16GateText1 + dw Route16GateText2 + dw Route16GateText3 + +Route16GateText1: ; 49760 (12:5760) + db $08 ; asm + call Func_49755 + jr z, .asm_0bdf3 ; 0x49764 + ld hl, Route16GateText_4977c + call PrintText + jr .asm_56c9d ; 0x4976c +.asm_0bdf3 ; 0x4976e + ld hl, Route16GateText_49777 + call PrintText +.asm_56c9d ; 0x49774 + jp TextScriptEnd + +Route16GateText_49777: ; 49777 (12:5777) + TX_FAR _Route16GateText_49777 + db "@" + +Route16GateText_4977c: ; 4977c (12:577c) + TX_FAR _Route16GateText_4977c + db "@" + +Route16GateText3: ; 49781 (12:5781) + TX_FAR _Route16GateText_49781 + db "@" + +Route16GateText2: ; 49786 (12:5786) + TX_FAR _Route16GateText2 + db "@" diff --git a/scripts/route16gateupstairs.asm b/scripts/route16gateupstairs.asm new file mode 100755 index 00000000..c9996dcd --- /dev/null +++ b/scripts/route16gateupstairs.asm @@ -0,0 +1,46 @@ +Route16GateUpstairsScript: ; 4980b (12:580b) + jp DisableAutoTextBoxDrawing + +Route16GateUpstairsTextPointers: ; 4980e (12:580e) + dw Route16GateUpstairsText1 + dw Route16GateUpstairsText2 + dw Route16GateUpstairsText3 + dw Route16GateUpstairsText4 + +Route16GateUpstairsText1: ; 49816 (12:5816) + db $08 ; asm + ld hl, Route16GateUpstairsText_49820 + call PrintText + jp TextScriptEnd + +Route16GateUpstairsText_49820: ; 49820 (12:5820) + TX_FAR _Route16GateUpstairsText_49820 + db "@" + +Route16GateUpstairsText2: ; 49825 (12:5825) + db $08 ; asm + ld hl, Route16GateUpstairsText_4982f + call PrintText + jp TextScriptEnd + +Route16GateUpstairsText_4982f: ; 4982f (12:582f) + TX_FAR _Route16GateUpstairsText_4982f + db "@" + +Route16GateUpstairsText3: ; 49834 (12:5834) + db $8 + ld hl, Route16GateUpstairsText_4983b + jp Route12GateUpstairsScript_495c9 + +Route16GateUpstairsText_4983b: ; 4983b (12:583b) + TX_FAR _Route16GateUpstairsText_4983b + db "@" + +Route16GateUpstairsText4: ; 49840 (12:5840) + db $8 + ld hl, Route16GateUpstairsText_49847 ; $5847 + jp Route12GateUpstairsScript_495c9 + +Route16GateUpstairsText_49847: ; 49847 (12:5847) + TX_FAR _Route16GateUpstairsText_49847 + db "@" diff --git a/scripts/route16house.asm b/scripts/route16house.asm new file mode 100755 index 00000000..21c21b79 --- /dev/null +++ b/scripts/route16house.asm @@ -0,0 +1,56 @@ +Route16HouseScript: ; 1e5f8 (7:65f8) + jp EnableAutoTextBoxDrawing + +Route16HouseTextPointers: ; 1e5fb (7:65fb) + dw Route16HouseText1 + dw Route16HouseText2 + +Route16HouseText1: ; 1e5ff (7:65ff) + db $08 ; asm + ld a, [$d7e0] + bit 6, a + ld hl, HM02ExplanationText + jr nz, .asm_13616 ; 0x1e608 + ld hl, Route16HouseText3 + call PrintText + ld bc, (HM_02 << 8) | 1 + call GiveItem + jr nc, .BagFull + ld hl, $d7e0 + set 6, [hl] + ld hl, ReceivedHM02Text + jr .asm_13616 ; 0x1e620 +.BagFull + ld hl, HM02NoRoomText +.asm_13616 ; 0x1e625 + call PrintText + jp TextScriptEnd + +Route16HouseText3: ; 1e62b (7:662b) + TX_FAR _Route16HouseText3 + db "@" + +ReceivedHM02Text: ; 1e630 (7:6630) + TX_FAR _ReceivedHM02Text + db $11, "@" + +HM02ExplanationText: ; 1e636 (7:6636) + TX_FAR _HM02ExplanationText + db "@" + +HM02NoRoomText: ; 1e63b (7:663b) + TX_FAR _HM02NoRoomText + db "@" + +Route16HouseText2: ; 1e640 (7:6640) + db $08 ; asm + ld hl, Route16HouseText_1e652 + call PrintText + ld a, FEAROW + call PlayCry + call WaitForSoundToFinish + jp TextScriptEnd + +Route16HouseText_1e652: ; 1e652 (7:6652) + TX_FAR _Route16HouseText_1e652 + db "@" diff --git a/scripts/route17.asm b/scripts/route17.asm new file mode 100755 index 00000000..976d4236 --- /dev/null +++ b/scripts/route17.asm @@ -0,0 +1,328 @@ +Route17Script: ; 55b7a (15:5b7a) + call EnableAutoTextBoxDrawing + ld hl, Route17TrainerHeaders + ld de, Route17ScriptPointers + ld a, [W_ROUTE17CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_ROUTE17CURSCRIPT], a + ret + +Route17ScriptPointers: ; 55b8d (15:5b8d) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +Route17TextPointers: ; 55b93 (15:5b93) + dw Route17Text1 + dw Route17Text2 + dw Route17Text3 + dw Route17Text4 + dw Route17Text5 + dw Route17Text6 + dw Route17Text7 + dw Route17Text8 + dw Route17Text9 + dw Route17Text10 + dw Route17Text11 + dw Route17Text12 + dw Route17Text13 + dw Route17Text14 + dw Route17Text15 + dw Route17Text16 + +Route17TrainerHeaders: ; 55bb3 (15:5bb3) +Route17TrainerHeader0: ; 55bb3 (15:5bb3) + db $1 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7e1 ; flag's byte + dw Route17BattleText1 ; 0x5c36 TextBeforeBattle + dw Route17AfterBattleText1 ; 0x5c40 TextAfterBattle + dw Route17EndBattleText1 ; 0x5c3b TextEndBattle + dw Route17EndBattleText1 ; 0x5c3b TextEndBattle + +Route17TrainerHeader1: ; 55bbf (15:5bbf) + db $2 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7e1 ; flag's byte + dw Route17BattleText2 ; 0x5c4f TextBeforeBattle + dw Route17AfterBattleText2 ; 0x5c59 TextAfterBattle + dw Route17EndBattleText2 ; 0x5c54 TextEndBattle + dw Route17EndBattleText2 ; 0x5c54 TextEndBattle + +Route17TrainerHeader2: ; 55bcb (15:5bcb) + db $3 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7e1 ; flag's byte + dw Route17BattleText3 ; 0x5c68 TextBeforeBattle + dw Route17AfterBattleText3 ; 0x5c72 TextAfterBattle + dw Route17EndBattleText3 ; 0x5c6d TextEndBattle + dw Route17EndBattleText3 ; 0x5c6d TextEndBattle + +Route17TrainerHeader3: ; 55bd7 (15:5bd7) + db $4 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7e1 ; flag's byte + dw Route17BattleText4 ; 0x5c81 TextBeforeBattle + dw Route17AfterBattleText4 ; 0x5c8b TextAfterBattle + dw Route17EndBattleText4 ; 0x5c86 TextEndBattle + dw Route17EndBattleText4 ; 0x5c86 TextEndBattle + +Route17TrainerHeader4: ; 55be3 (15:5be3) + db $5 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7e1 ; flag's byte + dw Route17BattleText5 ; 0x5c9a TextBeforeBattle + dw Route17AfterBattleText5 ; 0x5ca4 TextAfterBattle + dw Route17EndBattleText5 ; 0x5c9f TextEndBattle + dw Route17EndBattleText5 ; 0x5c9f TextEndBattle + +Route17TrainerHeader5: ; 55bef (15:5bef) + db $6 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7e1 ; flag's byte + dw Route17BattleText6 ; 0x5cb3 TextBeforeBattle + dw Route17AfterBattleText6 ; 0x5cbd TextAfterBattle + dw Route17EndBattleText6 ; 0x5cb8 TextEndBattle + dw Route17EndBattleText6 ; 0x5cb8 TextEndBattle + +Route17TrainerHeader6: ; 55bfb (15:5bfb) + db $7 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7e1 ; flag's byte + dw Route17BattleText7 ; 0x5ccc TextBeforeBattle + dw Route17AfterBattleText7 ; 0x5cd6 TextAfterBattle + dw Route17EndBattleText7 ; 0x5cd1 TextEndBattle + dw Route17EndBattleText7 ; 0x5cd1 TextEndBattle + +Route17TrainerHeader7: ; 55c07 (15:5c07) + db $8 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7e1 ; flag's byte + dw Route17BattleText8 ; 0x5ce5 TextBeforeBattle + dw Route17AfterBattleText8 ; 0x5cef TextAfterBattle + dw Route17EndBattleText8 ; 0x5cea TextEndBattle + dw Route17EndBattleText8 ; 0x5cea TextEndBattle + +Route17TrainerHeader8: ; 55c13 (15:5c13) + db $9 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7e1 ; flag's byte + dw Route17BattleText9 ; 0x5cfe TextBeforeBattle + dw Route17AfterBattleText9 ; 0x5d08 TextAfterBattle + dw Route17EndBattleText9 ; 0x5d03 TextEndBattle + dw Route17EndBattleText9 ; 0x5d03 TextEndBattle + +Route17TrainerHeader9: ; 55c1f (15:5c1f) + db $a ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7e1 ; flag's byte + dw Route17BattleText10 ; 0x5d17 TextBeforeBattle + dw Route17AfterBattleText10 ; 0x5d21 TextAfterBattle + dw Route17EndBattleText10 ; 0x5d1c TextEndBattle + dw Route17EndBattleText10 ; 0x5d1c TextEndBattle + + db $ff + +Route17Text1: ; 55c2c (15:5c2c) + db $08 ; asm + ld hl, Route17TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +Route17BattleText1: ; 55c36 (15:5c36) + TX_FAR _Route17BattleText1 + db "@" + +Route17EndBattleText1: ; 55c3b (15:5c3b) + TX_FAR _Route17EndBattleText1 + db "@" + +Route17AfterBattleText1: ; 55c40 (15:5c40) + TX_FAR _Route17AfterBattleText1 + db "@" + +Route17Text2: ; 55c45 (15:5c45) + db $08 ; asm + ld hl, Route17TrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +Route17BattleText2: ; 55c4f (15:5c4f) + TX_FAR _Route17BattleText2 + db "@" + +Route17EndBattleText2: ; 55c54 (15:5c54) + TX_FAR _Route17EndBattleText2 + db "@" + +Route17AfterBattleText2: ; 55c59 (15:5c59) + TX_FAR _Route17AfterBattleText2 + db "@" + +Route17Text3: ; 55c5e (15:5c5e) + db $08 ; asm + ld hl, Route17TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +Route17BattleText3: ; 55c68 (15:5c68) + TX_FAR _Route17BattleText3 + db "@" + +Route17EndBattleText3: ; 55c6d (15:5c6d) + TX_FAR _Route17EndBattleText3 + db "@" + +Route17AfterBattleText3: ; 55c72 (15:5c72) + TX_FAR _Route17AfterBattleText3 + db "@" + +Route17Text4: ; 55c77 (15:5c77) + db $08 ; asm + ld hl, Route17TrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +Route17BattleText4: ; 55c81 (15:5c81) + TX_FAR _Route17BattleText4 + db "@" + +Route17EndBattleText4: ; 55c86 (15:5c86) + TX_FAR _Route17EndBattleText4 + db "@" + +Route17AfterBattleText4: ; 55c8b (15:5c8b) + TX_FAR _Route17AfterBattleText4 + db "@" + +Route17Text5: ; 55c90 (15:5c90) + db $08 ; asm + ld hl, Route17TrainerHeader4 + call TalkToTrainer + jp TextScriptEnd + +Route17BattleText5: ; 55c9a (15:5c9a) + TX_FAR _Route17BattleText5 + db "@" + +Route17EndBattleText5: ; 55c9f (15:5c9f) + TX_FAR _Route17EndBattleText5 + db "@" + +Route17AfterBattleText5: ; 55ca4 (15:5ca4) + TX_FAR _Route17AfterBattleText5 + db "@" + +Route17Text6: ; 55ca9 (15:5ca9) + db $08 ; asm + ld hl, Route17TrainerHeader5 + call TalkToTrainer + jp TextScriptEnd + +Route17BattleText6: ; 55cb3 (15:5cb3) + TX_FAR _Route17BattleText6 + db "@" + +Route17EndBattleText6: ; 55cb8 (15:5cb8) + TX_FAR _Route17EndBattleText6 + db "@" + +Route17AfterBattleText6: ; 55cbd (15:5cbd) + TX_FAR _Route17AfterBattleText6 + db "@" + +Route17Text7: ; 55cc2 (15:5cc2) + db $08 ; asm + ld hl, Route17TrainerHeader6 + call TalkToTrainer + jp TextScriptEnd + +Route17BattleText7: ; 55ccc (15:5ccc) + TX_FAR _Route17BattleText7 + db "@" + +Route17EndBattleText7: ; 55cd1 (15:5cd1) + TX_FAR _Route17EndBattleText7 + db "@" + +Route17AfterBattleText7: ; 55cd6 (15:5cd6) + TX_FAR _Route17AfterBattleText7 + db "@" + +Route17Text8: ; 55cdb (15:5cdb) + db $08 ; asm + ld hl, Route17TrainerHeader7 + call TalkToTrainer + jp TextScriptEnd + +Route17BattleText8: ; 55ce5 (15:5ce5) + TX_FAR _Route17BattleText8 + db "@" + +Route17EndBattleText8: ; 55cea (15:5cea) + TX_FAR _Route17EndBattleText8 + db "@" + +Route17AfterBattleText8: ; 55cef (15:5cef) + TX_FAR _Route17AfterBattleText8 + db "@" + +Route17Text9: ; 55cf4 (15:5cf4) + db $08 ; asm + ld hl, Route17TrainerHeader8 + call TalkToTrainer + jp TextScriptEnd + +Route17BattleText9: ; 55cfe (15:5cfe) + TX_FAR _Route17BattleText9 + db "@" + +Route17EndBattleText9: ; 55d03 (15:5d03) + TX_FAR _Route17EndBattleText9 + db "@" + +Route17AfterBattleText9: ; 55d08 (15:5d08) + TX_FAR _Route17AfterBattleText9 + db "@" + +Route17Text10: ; 55d0d (15:5d0d) + db $08 ; asm + ld hl, Route17TrainerHeader9 + call TalkToTrainer + jp TextScriptEnd + +Route17BattleText10: ; 55d17 (15:5d17) + TX_FAR _Route17BattleText10 + db "@" + +Route17EndBattleText10: ; 55d1c (15:5d1c) + TX_FAR _Route17EndBattleText10 + db "@" + +Route17AfterBattleText10: ; 55d21 (15:5d21) + TX_FAR _Route17AfterBattleText10 + db "@" + +Route17Text11: ; 55d26 (15:5d26) + TX_FAR _Route17Text11 + db "@" + +Route17Text12: ; 55d2b (15:5d2b) + TX_FAR _Route17Text12 + db "@" + +Route17Text13: ; 55d30 (15:5d30) + TX_FAR _Route17Text13 + db "@" + +Route17Text14: ; 55d35 (15:5d35) + TX_FAR _Route17Text14 + db "@" + +Route17Text15: ; 55d3a (15:5d3a) + TX_FAR _Route17Text15 + db "@" + +Route17Text16: ; 55d3f (15:5d3f) + TX_FAR _Route17Text16 + db "@" diff --git a/scripts/route18.asm b/scripts/route18.asm new file mode 100755 index 00000000..b15f5e42 --- /dev/null +++ b/scripts/route18.asm @@ -0,0 +1,112 @@ +Route18Script: ; 59ac7 (16:5ac7) + call EnableAutoTextBoxDrawing + ld hl, Route18TrainerHeaders + ld de, Route18ScriptPointers + ld a, [W_ROUTE18CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_ROUTE18CURSCRIPT], a + ret + +Route18ScriptPointers: ; 59ada (16:5ada) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +Route18TextPointers: ; 59ae0 (16:5ae0) + dw Route18Text1 + dw Route18Text2 + dw Route18Text3 + dw Route18Text4 + dw Route18Text5 + +Route18TrainerHeaders: ; 59aea (16:5aea) +Route18TrainerHeader0: ; 59aea (16:5aea) + db $1 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7e3 ; flag's byte + dw Route18BattleText1 ; 0x5b19 TextBeforeBattle + dw Route18AfterBattleText1 ; 0x5b23 TextAfterBattle + dw Route18EndBattleText1 ; 0x5b1e TextEndBattle + dw Route18EndBattleText1 ; 0x5b1e TextEndBattle + +Route18TrainerHeader1: ; 59af6 (16:5af6) + db $2 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7e3 ; flag's byte + dw Route18BattleText2 ; 0x5b32 TextBeforeBattle + dw Route18AfterBattleText2 ; 0x5b3c TextAfterBattle + dw Route18EndBattleText2 ; 0x5b37 TextEndBattle + dw Route18EndBattleText2 ; 0x5b37 TextEndBattle + +Route18TrainerHeader2: ; 59b02 (16:5b02) + db $3 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7e3 ; flag's byte + dw Route18BattleText3 ; 0x5b4b TextBeforeBattle + dw Route18AfterBattleText3 ; 0x5b55 TextAfterBattle + dw Route18EndBattleText3 ; 0x5b50 TextEndBattle + dw Route18EndBattleText3 ; 0x5b50 TextEndBattle + + db $ff + +Route18Text1: ; 59b0f (16:5b0f) + db $08 ; asm + ld hl, Route18TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +Route18BattleText1: ; 59b19 (16:5b19) + TX_FAR _Route18BattleText1 + db "@" + +Route18EndBattleText1: ; 59b1e (16:5b1e) + TX_FAR _Route18EndBattleText1 + db "@" + +Route18AfterBattleText1: ; 59b23 (16:5b23) + TX_FAR _Route18AfterBattleText1 + db "@" + +Route18Text2: ; 59b28 (16:5b28) + db $08 ; asm + ld hl, Route18TrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +Route18BattleText2: ; 59b32 (16:5b32) + TX_FAR _Route18BattleText2 + db "@" + +Route18EndBattleText2: ; 59b37 (16:5b37) + TX_FAR _Route18EndBattleText2 + db "@" + +Route18AfterBattleText2: ; 59b3c (16:5b3c) + TX_FAR _Route18AfterBattleText2 + db "@" + +Route18Text3: ; 59b41 (16:5b41) + db $08 ; asm + ld hl, Route18TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +Route18BattleText3: ; 59b4b (16:5b4b) + TX_FAR _Route18BattleText3 + db "@" + +Route18EndBattleText3: ; 59b50 (16:5b50) + TX_FAR _Route18EndBattleText3 + db "@" + +Route18AfterBattleText3: ; 59b55 (16:5b55) + TX_FAR _Route18AfterBattleText3 + db "@" + +Route18Text4: ; 59b5a (16:5b5a) + TX_FAR _Route18Text4 + db "@" + +Route18Text5: ; 59b5f (16:5b5f) + TX_FAR _Route18Text5 + db "@" diff --git a/scripts/route18gate.asm b/scripts/route18gate.asm new file mode 100755 index 00000000..d55ed412 --- /dev/null +++ b/scripts/route18gate.asm @@ -0,0 +1,112 @@ +Route18GateScript: ; 49876 (12:5876) + ld hl, $d732 + res 5, [hl] + call EnableAutoTextBoxDrawing + ld a, [W_ROUTE18GATECURSCRIPT] + ld hl, Route18GateScriptPointers + jp CallFunctionInTable + +Route18GateScriptPointers: ; 49887 (12:5887) + dw Route18GateScript0 + dw Route18GateScript1 + dw Route18GateScript2 + dw Route18GateScript3 + +Route18GateScript0: ; 4988f (12:588f) + call Func_49755 + ret nz + ld hl, CoordsData_498cc + call ArePlayerCoordsInArray + ret nc + ld a, $2 + ld [$ff8c], a + call DisplayTextID + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + ld a, [$cd3d] + cp $1 + jr z, .asm_498c6 ; 0x498a9 $1b + ld a, [$cd3d] + dec a + ld [$cd38], a + ld b, $0 + ld c, a + ld a, $40 + ld hl, $ccd3 + call FillMemory + call Func_3486 + ld a, $1 + ld [W_ROUTE18GATECURSCRIPT], a + ret +.asm_498c6 + ld a, $2 + ld [W_ROUTE18GATECURSCRIPT], a + ret + +CoordsData_498cc: ; 498cc (12:58cc) + db $03,$04 + db $04,$04 + db $05,$04 + db $06,$04 + db $FF + +Route18GateScript1: ; 498d5 (12:58d5) + ld a, [$cd38] + and a + ret nz + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + +Route18GateScript2: ; 498df (12:58df) + ld a, $1 + ld [H_SPRITEHEIGHT], a + call DisplayTextID + ld a, $1 + ld [$cd38], a + ld a, $10 + ld [$ccd3], a + call Func_3486 + ld a, $3 + ld [W_ROUTE18GATECURSCRIPT], a + ret + +Route18GateScript3: ; 498f9 (12:58f9) + ld a, [$cd38] + and a + ret nz + xor a + ld [wJoypadForbiddenButtonsMask], a + ld hl, $d730 + res 7, [hl] + ld a, $0 + ld [W_ROUTE18GATECURSCRIPT], a + ret + +Route18GateTextPointers: ; 4990d (12:590d) + dw Route18GateText1 + dw Route18GateText2 + +Route18GateText1: ; 49911 (12:5911) + db $08 ; asm + call Func_49755 + jr z, .asm_3c84d ; 0x49915 + ld hl, Route18GateText_4992d + call PrintText + jr .asm_a8410 ; 0x4991d +.asm_3c84d ; 0x4991f + ld hl, Route18GateText_49928 + call PrintText +.asm_a8410 ; 0x49925 + jp TextScriptEnd + +Route18GateText_49928: ; 49928 (12:5928) + TX_FAR _Route18GateText_49928 + db "@" + +Route18GateText_4992d: ; 4992d (12:592d) + TX_FAR _Route18GateText_4992d + db "@" + +Route18GateText2: ; 49932 (12:5932) + TX_FAR _Route18GateText_49932 + db "@" diff --git a/scripts/route18gateupstairs.asm b/scripts/route18gateupstairs.asm new file mode 100755 index 00000000..d9164d1d --- /dev/null +++ b/scripts/route18gateupstairs.asm @@ -0,0 +1,33 @@ +Route18GateUpstairsScript: ; 49975 (12:5975) + jp DisableAutoTextBoxDrawing + +Route18GateUpstairsTextPointers: ; 49978 (12:5978) + dw Route18GateUpstairsText1 + dw Route18GateUpstairsText2 + dw Route18GateUpstairsText3 + +Route18GateUpstairsText1: ; 4997e (12:597e) + db $08 ; asm + ld a, $5 + ld [wWhichTrade], a + ld a, $54 + call Predef + jp TextScriptEnd + +Route18GateUpstairsText2: ; 4998c (12:598c) + db $8 + ld hl, Route18GateUpstairsText_49993 ; $5993 + jp Route12GateUpstairsScript_495c9 + +Route18GateUpstairsText_49993: ; 49993 (12:5993) + TX_FAR _Route18GateUpstairsText_49993 + db "@" + +Route18GateUpstairsText3: ; 49998 (12:5998) + db $8 + ld hl, Route18GateUpstairsText_4999f ; $599f + jp Route12GateUpstairsScript_495c9 + +Route18GateUpstairsText_4999f: ; 4999f (12:599f) + TX_FAR _Route18GateUpstairsText_4999f + db "@" diff --git a/scripts/route19.asm b/scripts/route19.asm new file mode 100755 index 00000000..8bc641ff --- /dev/null +++ b/scripts/route19.asm @@ -0,0 +1,303 @@ +Route19Script: ; 55d44 (15:5d44) + call EnableAutoTextBoxDrawing + ld hl, Route19TrainerHeaders + ld de, Route19ScriptPointers + ld a, [W_ROUTE19CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_ROUTE19CURSCRIPT], a + ret + +Route19ScriptPointers: ; 55d57 (15:5d57) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +Route19TextPointers: ; 55d5d (15:5d5d) + dw Route19Text1 + dw Route19Text2 + dw Route19Text3 + dw Route19Text4 + dw Route19Text5 + dw Route19Text6 + dw Route19Text7 + dw Route19Text8 + dw Route19Text9 + dw Route19Text10 + dw Route19Text11 + +Route19TrainerHeaders: ; 55d73 (15:5d73) +Route19TrainerHeader0: ; 55d73 (15:5d73) + db $1 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7e5 ; flag's byte + dw Route19BattleText1 ; 0x5e50 TextBeforeBattle + dw Route19AfterBattleText1 ; 0x5e5a TextAfterBattle + dw Route19EndBattleText1 ; 0x5e55 TextEndBattle + dw Route19EndBattleText1 ; 0x5e55 TextEndBattle + +Route19TrainerHeader1: ; 55d7f (15:5d7f) + db $2 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7e5 ; flag's byte + dw Route19BattleText2 ; 0x5e5f TextBeforeBattle + dw Route19AfterBattleText2 ; 0x5e69 TextAfterBattle + dw Route19EndBattleText2 ; 0x5e64 TextEndBattle + dw Route19EndBattleText2 ; 0x5e64 TextEndBattle + +Route19TrainerHeader2: ; 55d8b (15:5d8b) + db $3 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7e5 ; flag's byte + dw Route19BattleText3 ; 0x5e6e TextBeforeBattle + dw Route19AfterBattleText3 ; 0x5e78 TextAfterBattle + dw Route19EndBattleText3 ; 0x5e73 TextEndBattle + dw Route19EndBattleText3 ; 0x5e73 TextEndBattle + +Route19TrainerHeader3: ; 55d97 (15:5d97) + db $4 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7e5 ; flag's byte + dw Route19BattleText4 ; 0x5e7d TextBeforeBattle + dw Route19AfterBattleText4 ; 0x5e87 TextAfterBattle + dw Route19EndBattleText4 ; 0x5e82 TextEndBattle + dw Route19EndBattleText4 ; 0x5e82 TextEndBattle + +Route19TrainerHeader4: ; 55da3 (15:5da3) + db $5 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7e5 ; flag's byte + dw Route19BattleText5 ; 0x5e8c TextBeforeBattle + dw Route19AfterBattleText5 ; 0x5e96 TextAfterBattle + dw Route19EndBattleText5 ; 0x5e91 TextEndBattle + dw Route19EndBattleText5 ; 0x5e91 TextEndBattle + +Route19TrainerHeader5: ; 55daf (15:5daf) + db $6 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7e5 ; flag's byte + dw Route19BattleText6 ; 0x5e9b TextBeforeBattle + dw Route19AfterBattleText6 ; 0x5ea5 TextAfterBattle + dw Route19EndBattleText6 ; 0x5ea0 TextEndBattle + dw Route19EndBattleText6 ; 0x5ea0 TextEndBattle + +Route19TrainerHeader6: ; 55dbb (15:5dbb) + db $7 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7e5 ; flag's byte + dw Route19BattleText7 ; 0x5eaa TextBeforeBattle + dw Route19AfterBattleText7 ; 0x5eb4 TextAfterBattle + dw Route19EndBattleText7 ; 0x5eaf TextEndBattle + dw Route19EndBattleText7 ; 0x5eaf TextEndBattle + +Route19TrainerHeader7: ; 55dc7 (15:5dc7) + db $8 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7e5 ; flag's byte + dw Route19BattleText8 ; 0x5eb9 TextBeforeBattle + dw Route19AfterBattleText8 ; 0x5ec3 TextAfterBattle + dw Route19EndBattleText8 ; 0x5ebe TextEndBattle + dw Route19EndBattleText8 ; 0x5ebe TextEndBattle + +Route19TrainerHeader8: ; 55dd3 (15:5dd3) + db $9 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7e5 ; flag's byte + dw Route19BattleText9 ; 0x5ec8 TextBeforeBattle + dw Route19AfterBattleText9 ; 0x5ed2 TextAfterBattle + dw Route19EndBattleText9 ; 0x5ecd TextEndBattle + dw Route19EndBattleText9 ; 0x5ecd TextEndBattle + +Route19TrainerHeader9: ; 55ddf (15:5ddf) + db $a ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7e5 ; flag's byte + dw Route19BattleText10 ; 0x5ed7 TextBeforeBattle + dw Route19AfterBattleText10 ; 0x5ee1 TextAfterBattle + dw Route19EndBattleText10 ; 0x5edc TextEndBattle + dw Route19EndBattleText10 ; 0x5edc TextEndBattle + + db $ff + +Route19Text1: ; 55dec (15:5dec) + db $08 ; asm + ld hl, Route19TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +Route19Text2: ; 55df6 (15:5df6) + db $08 ; asm + ld hl, Route19TrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +Route19Text3: ; 55e00 (15:5e00) + db $08 ; asm + ld hl, Route19TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +Route19Text4: ; 55e0a (15:5e0a) + db $08 ; asm + ld hl, Route19TrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +Route19Text5: ; 55e14 (15:5e14) + db $08 ; asm + ld hl, Route19TrainerHeader4 + call TalkToTrainer + jp TextScriptEnd + +Route19Text6: ; 55e1e (15:5e1e) + db $08 ; asm + ld hl, Route19TrainerHeader5 + call TalkToTrainer + jp TextScriptEnd + +Route19Text7: ; 55e28 (15:5e28) + db $08 ; asm + ld hl, Route19TrainerHeader6 + call TalkToTrainer + jp TextScriptEnd + +Route19Text8: ; 55e32 (15:5e32) + db $08 ; asm + ld hl, Route19TrainerHeader7 + call TalkToTrainer + jp TextScriptEnd + +Route19Text9: ; 55e3c (15:5e3c) + db $08 ; asm + ld hl, Route19TrainerHeader8 + call TalkToTrainer + jp TextScriptEnd + +Route19Text10: ; 55e46 (15:5e46) + db $08 ; asm + ld hl, Route19TrainerHeader9 + call TalkToTrainer + jp TextScriptEnd + +Route19BattleText1: ; 55e50 (15:5e50) + TX_FAR _Route19BattleText1 + db "@" + +Route19EndBattleText1: ; 55e55 (15:5e55) + TX_FAR _Route19EndBattleText1 + db "@" + +Route19AfterBattleText1: ; 55e5a (15:5e5a) + TX_FAR _Route19AfterBattleText1 + db "@" + +Route19BattleText2: ; 55e5f (15:5e5f) + TX_FAR _Route19BattleText2 + db "@" + +Route19EndBattleText2: ; 55e64 (15:5e64) + TX_FAR _Route19EndBattleText2 + db "@" + +Route19AfterBattleText2: ; 55e69 (15:5e69) + TX_FAR _Route19AfterBattleText2 + db "@" + +Route19BattleText3: ; 55e6e (15:5e6e) + TX_FAR _Route19BattleText3 + db "@" + +Route19EndBattleText3: ; 55e73 (15:5e73) + TX_FAR _Route19EndBattleText3 + db "@" + +Route19AfterBattleText3: ; 55e78 (15:5e78) + TX_FAR _Route19AfterBattleText3 + db "@" + +Route19BattleText4: ; 55e7d (15:5e7d) + TX_FAR _Route19BattleText4 + db "@" + +Route19EndBattleText4: ; 55e82 (15:5e82) + TX_FAR _Route19EndBattleText4 + db "@" + +Route19AfterBattleText4: ; 55e87 (15:5e87) + TX_FAR _Route19AfterBattleText4 + db "@" + +Route19BattleText5: ; 55e8c (15:5e8c) + TX_FAR _Route19BattleText5 + db "@" + +Route19EndBattleText5: ; 55e91 (15:5e91) + TX_FAR _Route19EndBattleText5 + db "@" + +Route19AfterBattleText5: ; 55e96 (15:5e96) + TX_FAR _Route19AfterBattleText5 + db "@" + +Route19BattleText6: ; 55e9b (15:5e9b) + TX_FAR _Route19BattleText6 + db "@" + +Route19EndBattleText6: ; 55ea0 (15:5ea0) + TX_FAR _Route19EndBattleText6 + db "@" + +Route19AfterBattleText6: ; 55ea5 (15:5ea5) + TX_FAR _Route19AfterBattleText6 + db "@" + +Route19BattleText7: ; 55eaa (15:5eaa) + TX_FAR _Route19BattleText7 + db "@" + +Route19EndBattleText7: ; 55eaf (15:5eaf) + TX_FAR _Route19EndBattleText7 + db "@" + +Route19AfterBattleText7: ; 55eb4 (15:5eb4) + TX_FAR _Route19AfterBattleText7 + db "@" + +Route19BattleText8: ; 55eb9 (15:5eb9) + TX_FAR _Route19BattleText8 + db "@" + +Route19EndBattleText8: ; 55ebe (15:5ebe) + TX_FAR _Route19EndBattleText8 + db "@" + +Route19AfterBattleText8: ; 55ec3 (15:5ec3) + TX_FAR _Route19AfterBattleText8 + db "@" + +Route19BattleText9: ; 55ec8 (15:5ec8) + TX_FAR _Route19BattleText9 + db "@" + +Route19EndBattleText9: ; 55ecd (15:5ecd) + TX_FAR _Route19EndBattleText9 + db "@" + +Route19AfterBattleText9: ; 55ed2 (15:5ed2) + TX_FAR _Route19AfterBattleText9 + db "@" + +Route19BattleText10: ; 55ed7 (15:5ed7) + TX_FAR _Route19BattleText10 + db "@" + +Route19EndBattleText10: ; 55edc (15:5edc) + TX_FAR _Route19EndBattleText10 + db "@" + +Route19AfterBattleText10: ; 55ee1 (15:5ee1) + TX_FAR _Route19AfterBattleText10 + db "@" + +Route19Text11: ; 55ee6 (15:5ee6) + TX_FAR _Route19Text11 + db "@" diff --git a/scripts/route2.asm b/scripts/route2.asm new file mode 100755 index 00000000..fdc5eb6c --- /dev/null +++ b/scripts/route2.asm @@ -0,0 +1,16 @@ +Route2Script: ; 554e3 (15:54e3) + jp EnableAutoTextBoxDrawing + +Route2TextPointers: ; 554e6 (15:54e6) + dw Predef5CText + dw Predef5CText + dw Route2Text3 + dw Route2Text4 + +Route2Text3: ; 554ee (15:54ee) + TX_FAR _Route2Text3 + db "@" + +Route2Text4: ; 554f3 (15:54f3) + TX_FAR _Route2Text4 + db "@" diff --git a/scripts/route20.asm b/scripts/route20.asm new file mode 100755 index 00000000..2d5f3077 --- /dev/null +++ b/scripts/route20.asm @@ -0,0 +1,356 @@ +Route20Script: ; 50ca9 (14:4ca9) + ld hl, $d7e7 + bit 0, [hl] + res 0, [hl] + call nz, Route20Script_50cc6 + call EnableAutoTextBoxDrawing + ld hl, Route20TrainerHeader0 ; $4d3a + ld de, Route20ScriptPointers + ld a, [W_ROUTE20CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_ROUTE20CURSCRIPT], a + ret + +Route20Script_50cc6: ; 50cc6 (14:4cc6) + ld a, [$d880] + and $3 + cp $3 + jr z, .asm_50cef + ld a, $d7 + call Route20Script_50d0c + ld a, $d8 + call Route20Script_50d0c + ld hl, .MissableObjectIDs ; $4ce8 +.asm_50cdc + ld a, [hli] + cp $ff + jr z, .asm_50cef + push hl + call Route20Script_50d14 + pop hl + jr .asm_50cdc + +.MissableObjectIDs: ; 50ce8 (14:4ce8) + db $D9,$DA,$DB,$DC,$DF,$E0,$FF + +.asm_50cef + ld a, [$d881] + and $3 + cp $3 + ret z + ld a, $dd + call Route20Script_50d0c + ld a, $de + call Route20Script_50d0c + ld a, $e1 + call Route20Script_50d14 + ld a, $e2 + call Route20Script_50d14 + ret + +Route20Script_50d0c: ; 50d0c (14:4d0c) + ld [$cc4d], a + ld a, $15 + jp Predef ; indirect jump to AddMissableObject (f1c8 (3:71c8)) + +Route20Script_50d14: ; 50d14 (14:4d14) + ld [$cc4d], a + ld a, $11 + jp Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7)) + +Route20ScriptPointers: ; 50d1c (14:4d1c) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +Route20TextPointers: ; 50d22 (14:4d22) + dw Route20Text1 + dw Route20Text2 + dw Route20Text3 + dw Route20Text4 + dw Route20Text5 + dw Route20Text6 + dw Route20Text7 + dw Route20Text8 + dw Route20Text9 + dw Route20Text10 + dw Route20Text11 + dw Route20Text12 + +Route20TrainerHeaders: ; 50d3a (14:4d3a) +Route20TrainerHeader0: ; 50d3a (14:4d3a) + db $1 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7e7 ; flag's byte + dw Route20BattleText1 ; 0x4e17 TextBeforeBattle + dw Route20AfterBattleText1 ; 0x4e21 TextAfterBattle + dw Route20EndBattleText1 ; 0x4e1c TextEndBattle + dw Route20EndBattleText1 ; 0x4e1c TextEndBattle + +Route20TrainerHeader2: ; 50d46 (14:4d46) + db $2 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7e7 ; flag's byte + dw Route20BattleText2 ; 0x4e26 TextBeforeBattle + dw Route20AfterBattleText2 ; 0x4e30 TextAfterBattle + dw Route20EndBattleText2 ; 0x4e2b TextEndBattle + dw Route20EndBattleText2 ; 0x4e2b TextEndBattle + +Route20TrainerHeader3: ; 50d52 (14:4d52) + db $3 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7e7 ; flag's byte + dw Route20BattleText3 ; 0x4e35 TextBeforeBattle + dw Route20AfterBattleText3 ; 0x4e3f TextAfterBattle + dw Route20EndBattleText3 ; 0x4e3a TextEndBattle + dw Route20EndBattleText3 ; 0x4e3a TextEndBattle + +Route20TrainerHeader4: ; 50d5e (14:4d5e) + db $4 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7e7 ; flag's byte + dw Route20BattleText4 ; 0x4e44 TextBeforeBattle + dw Route20AfterBattleText4 ; 0x4e4e TextAfterBattle + dw Route20EndBattleText4 ; 0x4e49 TextEndBattle + dw Route20EndBattleText4 ; 0x4e49 TextEndBattle + +Route20TrainerHeader5: ; 50d6a (14:4d6a) + db $5 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7e7 ; flag's byte + dw Route20BattleText5 ; 0x4e53 TextBeforeBattle + dw Route20AfterBattleText5 ; 0x4e5d TextAfterBattle + dw Route20EndBattleText5 ; 0x4e58 TextEndBattle + dw Route20EndBattleText5 ; 0x4e58 TextEndBattle + +Route20TrainerHeader6: ; 50d76 (14:4d76) + db $6 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7e7 ; flag's byte + dw Route20BattleText6 ; 0x4e62 TextBeforeBattle + dw Route20AfterBattleText6 ; 0x4e6c TextAfterBattle + dw Route20EndBattleText6 ; 0x4e67 TextEndBattle + dw Route20EndBattleText6 ; 0x4e67 TextEndBattle + +Route20TrainerHeader7: ; 50d82 (14:4d82) + db $7 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7e7 ; flag's byte + dw Route20BattleText7 ; 0x4e71 TextBeforeBattle + dw Route20AfterBattleText7 ; 0x4e7b TextAfterBattle + dw Route20EndBattleText7 ; 0x4e76 TextEndBattle + dw Route20EndBattleText7 ; 0x4e76 TextEndBattle + +Route20TrainerHeader8: ; 50d8e (14:4d8e) + db $8 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7e7 ; flag's byte + dw Route20BattleText8 ; 0x4e80 TextBeforeBattle + dw Route20AfterBattleText8 ; 0x4e8a TextAfterBattle + dw Route20EndBattleText8 ; 0x4e85 TextEndBattle + dw Route20EndBattleText8 ; 0x4e85 TextEndBattle + +Route20TrainerHeader9: ; 50d9a (14:4d9a) + db $9 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7e7 ; flag's byte + dw Route20BattleText9 ; 0x4e8f TextBeforeBattle + dw Route20AfterBattleText9 ; 0x4e99 TextAfterBattle + dw Route20EndBattleText9 ; 0x4e94 TextEndBattle + dw Route20EndBattleText9 ; 0x4e94 TextEndBattle + +Route20TrainerHeader10: ; 50da6 (14:4da6) + db $a ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7e7 ; flag's byte + dw Route20BattleText10 ; 0x4e9e TextBeforeBattle + dw Route20AfterBattleText10 ; 0x4ea8 TextAfterBattle + dw Route20EndBattleText10 ; 0x4ea3 TextEndBattle + dw Route20EndBattleText10 ; 0x4ea3 TextEndBattle + + db $ff + +Route20Text1: ; 50db3 (14:4db3) + db $08 ; asm + ld hl, Route20TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +Route20Text2: ; 50dbd (14:4dbd) + db $08 ; asm + ld hl, Route20TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +Route20Text3: ; 50dc7 (14:4dc7) + db $08 ; asm + ld hl, Route20TrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +Route20Text4: ; 50dd1 (14:4dd1) + db $08 ; asm + ld hl, Route20TrainerHeader4 + call TalkToTrainer + jp TextScriptEnd + +Route20Text5: ; 50ddb (14:4ddb) + db $08 ; asm + ld hl, Route20TrainerHeader5 + call TalkToTrainer + jp TextScriptEnd + +Route20Text6: ; 50de5 (14:4de5) + db $08 ; asm + ld hl, Route20TrainerHeader6 + call TalkToTrainer + jp TextScriptEnd + +Route20Text7: ; 50def (14:4def) + db $08 ; asm + ld hl, Route20TrainerHeader7 + call TalkToTrainer + jp TextScriptEnd + +Route20Text8: ; 50df9 (14:4df9) + db $08 ; asm + ld hl, Route20TrainerHeader8 + call TalkToTrainer + jp TextScriptEnd + +Route20Text9: ; 50e03 (14:4e03) + db $08 ; asm + ld hl, Route20TrainerHeader9 + call TalkToTrainer + jp TextScriptEnd + +Route20Text10: ; 50e0d (14:4e0d) + db $08 ; asm + ld hl, Route20TrainerHeader10 + call TalkToTrainer + jp TextScriptEnd + +Route20BattleText1: ; 50e17 (14:4e17) + TX_FAR _Route20BattleText1 + db "@" + +Route20EndBattleText1: ; 50e1c (14:4e1c) + TX_FAR _Route20EndBattleText1 + db "@" + +Route20AfterBattleText1: ; 50e21 (14:4e21) + TX_FAR _Route20AfterBattleText1 + db "@" + +Route20BattleText2: ; 50e26 (14:4e26) + TX_FAR _Route20BattleText2 + db "@" + +Route20EndBattleText2: ; 50e2b (14:4e2b) + TX_FAR _Route20EndBattleText2 + db "@" + +Route20AfterBattleText2: ; 50e30 (14:4e30) + TX_FAR _Route20AfterBattleText2 + db "@" + +Route20BattleText3: ; 50e35 (14:4e35) + TX_FAR _Route20BattleText3 + db "@" + +Route20EndBattleText3: ; 50e3a (14:4e3a) + TX_FAR _Route20EndBattleText3 + db "@" + +Route20AfterBattleText3: ; 50e3f (14:4e3f) + TX_FAR _Route20AfterBattleText3 + db "@" + +Route20BattleText4: ; 50e44 (14:4e44) + TX_FAR _Route20BattleText4 + db "@" + +Route20EndBattleText4: ; 50e49 (14:4e49) + TX_FAR _Route20EndBattleText4 + db "@" + +Route20AfterBattleText4: ; 50e4e (14:4e4e) + TX_FAR _Route20AfterBattleText4 + db "@" + +Route20BattleText5: ; 50e53 (14:4e53) + TX_FAR _Route20BattleText5 + db "@" + +Route20EndBattleText5: ; 50e58 (14:4e58) + TX_FAR _Route20EndBattleText5 + db "@" + +Route20AfterBattleText5: ; 50e5d (14:4e5d) + TX_FAR _Route20AfterBattleText5 + db "@" + +Route20BattleText6: ; 50e62 (14:4e62) + TX_FAR _Route20BattleText6 + db "@" + +Route20EndBattleText6: ; 50e67 (14:4e67) + TX_FAR _Route20EndBattleText6 + db "@" + +Route20AfterBattleText6: ; 50e6c (14:4e6c) + TX_FAR _Route20AfterBattleText6 + db "@" + +Route20BattleText7: ; 50e71 (14:4e71) + TX_FAR _Route20BattleText7 + db "@" + +Route20EndBattleText7: ; 50e76 (14:4e76) + TX_FAR _Route20EndBattleText7 + db "@" + +Route20AfterBattleText7: ; 50e7b (14:4e7b) + TX_FAR _Route20AfterBattleText7 + db "@" + +Route20BattleText8: ; 50e80 (14:4e80) + TX_FAR _Route20BattleText8 + db "@" + +Route20EndBattleText8: ; 50e85 (14:4e85) + TX_FAR _Route20EndBattleText8 + db "@" + +Route20AfterBattleText8: ; 50e8a (14:4e8a) + TX_FAR _Route20AfterBattleText8 + db "@" + +Route20BattleText9: ; 50e8f (14:4e8f) + TX_FAR _Route20BattleText9 + db "@" + +Route20EndBattleText9: ; 50e94 (14:4e94) + TX_FAR _Route20EndBattleText9 + db "@" + +Route20AfterBattleText9: ; 50e99 (14:4e99) + TX_FAR _Route20AfterBattleText9 + db "@" + +Route20BattleText10: ; 50e9e (14:4e9e) + TX_FAR _Route20BattleText10 + db "@" + +Route20EndBattleText10: ; 50ea3 (14:4ea3) + TX_FAR _Route20EndBattleText10 + db "@" + +Route20AfterBattleText10: ; 50ea8 (14:4ea8) + TX_FAR _Route20AfterBattleText10 + db "@" + +Route20Text12: ; 50ead (14:4ead) +Route20Text11: ; 50ead (14:4ead) + TX_FAR _Route20Text11 + db "@" diff --git a/scripts/route21.asm b/scripts/route21.asm new file mode 100755 index 00000000..2332d2c8 --- /dev/null +++ b/scripts/route21.asm @@ -0,0 +1,270 @@ +Route21Script: ; 55eeb (15:5eeb) + call EnableAutoTextBoxDrawing + ld hl, Route21TrainerHeaders + ld de, Route21ScriptPointers + ld a, [W_ROUTE21CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_ROUTE21CURSCRIPT], a + ret + +Route21ScriptPointers: ; 55efe (15:5efe) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +Route21TextPointers: ; 55f04 (15:5f04) + dw Route21Text1 + dw Route21Text2 + dw Route21Text3 + dw Route21Text4 + dw Route21Text5 + dw Route21Text6 + dw Route21Text7 + dw Route21Text8 + dw Route21Text9 + +Route21TrainerHeaders: ; 55f16 (15:5f16) +Route21TrainerHeader0: ; 55f16 (15:5f16) + db $1 ; flag's bit + db ($0 << 4) ; trainer's view range + dw $d7e9 ; flag's byte + dw Route21BattleText1 ; 0x5fdd TextBeforeBattle + dw Route21AfterBattleText1 ; 0x5fe7 TextAfterBattle + dw Route21EndBattleText1 ; 0x5fe2 TextEndBattle + dw Route21EndBattleText1 ; 0x5fe2 TextEndBattle + +Route21TrainerHeader1: ; 55f22 (15:5f22) + db $2 ; flag's bit + db ($0 << 4) ; trainer's view range + dw $d7e9 ; flag's byte + dw Route21BattleText2 ; 0x5fec TextBeforeBattle + dw Route21AfterBattleText2 ; 0x5ff6 TextAfterBattle + dw Route21EndBattleText2 ; 0x5ff1 TextEndBattle + dw Route21EndBattleText2 ; 0x5ff1 TextEndBattle + +Route21TrainerHeader2: ; 55f2e (15:5f2e) + db $3 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7e9 ; flag's byte + dw Route21BattleText3 ; 0x5ffb TextBeforeBattle + dw Route21AfterBattleText3 ; 0x6005 TextAfterBattle + dw Route21EndBattleText3 ; 0x6000 TextEndBattle + dw Route21EndBattleText3 ; 0x6000 TextEndBattle + +Route21TrainerHeader3: ; 55f3a (15:5f3a) + db $4 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7e9 ; flag's byte + dw Route21BattleText4 ; 0x600a TextBeforeBattle + dw Route21AfterBattleText4 ; 0x6014 TextAfterBattle + dw Route21EndBattleText4 ; 0x600f TextEndBattle + dw Route21EndBattleText4 ; 0x600f TextEndBattle + +Route21TrainerHeader4: ; 55f46 (15:5f46) + db $5 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7e9 ; flag's byte + dw Route21BattleText5 ; 0x6019 TextBeforeBattle + dw Route21AfterBattleText5 ; 0x6023 TextAfterBattle + dw Route21EndBattleText5 ; 0x601e TextEndBattle + dw Route21EndBattleText5 ; 0x601e TextEndBattle + +Route21TrainerHeader5: ; 55f52 (15:5f52) + db $6 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7e9 ; flag's byte + dw Route21BattleText6 ; 0x6028 TextBeforeBattle + dw Route21AfterBattleText6 ; 0x6032 TextAfterBattle + dw Route21EndBattleText6 ; 0x602d TextEndBattle + dw Route21EndBattleText6 ; 0x602d TextEndBattle + +Route21TrainerHeader6: ; 55f5e (15:5f5e) + db $7 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7e9 ; flag's byte + dw Route21BattleText7 ; 0x6037 TextBeforeBattle + dw Route21AfterBattleText7 ; 0x6041 TextAfterBattle + dw Route21EndBattleText7 ; 0x603c TextEndBattle + dw Route21EndBattleText7 ; 0x603c TextEndBattle + +Route21TrainerHeader7: ; 55f6a (15:5f6a) + db $8 ; flag's bit + db ($0 << 4) ; trainer's view range + dw $d7e9 ; flag's byte + dw Route21BattleText8 ; 0x6046 TextBeforeBattle + dw Route21AfterBattleText8 ; 0x6050 TextAfterBattle + dw Route21EndBattleText8 ; 0x604b TextEndBattle + dw Route21EndBattleText8 ; 0x604b TextEndBattle + +Route21TrainerHeader8: ; 55f76 (15:5f76) + db $9 ; flag's bit + db ($0 << 4) ; trainer's view range + dw $d7e9 ; flag's byte + dw Route21BattleText9 ; 0x6055 TextBeforeBattle + dw Route21AfterBattleText9 ; 0x605f TextAfterBattle + dw Route21EndBattleText9 ; 0x605a TextEndBattle + dw Route21EndBattleText9 ; 0x605a TextEndBattle + + db $ff + +Route21Text1: ; 55f83 (15:5f83) + db $08 ; asm + ld hl, Route21TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +Route21Text2: ; 55f8d (15:5f8d) + db $08 ; asm + ld hl, Route21TrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +Route21Text3: ; 55f97 (15:5f97) + db $08 ; asm + ld hl, Route21TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +Route21Text4: ; 55fa1 (15:5fa1) + db $08 ; asm + ld hl, Route21TrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +Route21Text5: ; 55fab (15:5fab) + db $08 ; asm + ld hl, Route21TrainerHeader4 + call TalkToTrainer + jp TextScriptEnd + +Route21Text6: ; 55fb5 (15:5fb5) + db $08 ; asm + ld hl, Route21TrainerHeader5 + call TalkToTrainer + jp TextScriptEnd + +Route21Text7: ; 55fbf (15:5fbf) + db $08 ; asm + ld hl, Route21TrainerHeader6 + call TalkToTrainer + jp TextScriptEnd + +Route21Text8: ; 55fc9 (15:5fc9) + db $08 ; asm + ld hl, Route21TrainerHeader7 + call TalkToTrainer + jp TextScriptEnd + +Route21Text9: ; 55fd3 (15:5fd3) + db $08 ; asm + ld hl, Route21TrainerHeader8 + call TalkToTrainer + jp TextScriptEnd + +Route21BattleText1: ; 55fdd (15:5fdd) + TX_FAR _Route21BattleText1 + db "@" + +Route21EndBattleText1: ; 55fe2 (15:5fe2) + TX_FAR _Route21EndBattleText1 + db "@" + +Route21AfterBattleText1: ; 55fe7 (15:5fe7) + TX_FAR _Route21AfterBattleText1 + db "@" + +Route21BattleText2: ; 55fec (15:5fec) + TX_FAR _Route21BattleText2 + db "@" + +Route21EndBattleText2: ; 55ff1 (15:5ff1) + TX_FAR _Route21EndBattleText2 + db "@" + +Route21AfterBattleText2: ; 55ff6 (15:5ff6) + TX_FAR _Route21AfterBattleText2 + db "@" + +Route21BattleText3: ; 55ffb (15:5ffb) + TX_FAR _Route21BattleText3 + db "@" + +Route21EndBattleText3: ; 56000 (15:6000) + TX_FAR _Route21EndBattleText3 + db "@" + +Route21AfterBattleText3: ; 56005 (15:6005) + TX_FAR _Route21AfterBattleText3 + db "@" + +Route21BattleText4: ; 5600a (15:600a) + TX_FAR _Route21BattleText4 + db "@" + +Route21EndBattleText4: ; 5600f (15:600f) + TX_FAR _Route21EndBattleText4 + db "@" + +Route21AfterBattleText4: ; 56014 (15:6014) + TX_FAR _Route21AfterBattleText4 + db "@" + +Route21BattleText5: ; 56019 (15:6019) + TX_FAR _Route21BattleText5 + db "@" + +Route21EndBattleText5: ; 5601e (15:601e) + TX_FAR _Route21EndBattleText5 + db "@" + +Route21AfterBattleText5: ; 56023 (15:6023) + TX_FAR _Route21AfterBattleText5 + db "@" + +Route21BattleText6: ; 56028 (15:6028) + TX_FAR _Route21BattleText6 + db "@" + +Route21EndBattleText6: ; 5602d (15:602d) + TX_FAR _Route21EndBattleText6 + db "@" + +Route21AfterBattleText6: ; 56032 (15:6032) + TX_FAR _Route21AfterBattleText6 + db "@" + +Route21BattleText7: ; 56037 (15:6037) + TX_FAR _Route21BattleText7 + db "@" + +Route21EndBattleText7: ; 5603c (15:603c) + TX_FAR _Route21EndBattleText7 + db "@" + +Route21AfterBattleText7: ; 56041 (15:6041) + TX_FAR _Route21AfterBattleText7 + db "@" + +Route21BattleText8: ; 56046 (15:6046) + TX_FAR _Route21BattleText8 + db "@" + +Route21EndBattleText8: ; 5604b (15:604b) + TX_FAR _Route21EndBattleText8 + db "@" + +Route21AfterBattleText8: ; 56050 (15:6050) + TX_FAR _Route21AfterBattleText8 + db "@" + +Route21BattleText9: ; 56055 (15:6055) + TX_FAR _Route21BattleText9 + db "@" + +Route21EndBattleText9: ; 5605a (15:605a) + TX_FAR _Route21EndBattleText9 + db "@" + +Route21AfterBattleText9: ; 5605f (15:605f) + TX_FAR _Route21AfterBattleText9 + db "@" diff --git a/scripts/route22.asm b/scripts/route22.asm new file mode 100755 index 00000000..28918b5c --- /dev/null +++ b/scripts/route22.asm @@ -0,0 +1,435 @@ +Route22Script: ; 50eb2 (14:4eb2) + call EnableAutoTextBoxDrawing + ld hl, Route22ScriptPointers + ld a, [W_ROUTE22CURSCRIPT] + jp CallFunctionInTable + +Route22ScriptPointers: ; 50ebe (14:4ebe) + dw Route22Script0 + dw Route22Script1 + dw Route22Script2 + dw Route22Script3 + dw Route22Script4 + dw Route22Script5 + dw Route22Script6 + dw Route22Script7 + +Route22Script_50ece: ; 50ece (14:4ece) + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [W_ROUTE22CURSCRIPT], a +Route22Script7: ; 50ed5 (14:4ed5) + ret + +Route22Script_50ed6: ; 50ed6 (14:4ed6) + ld a, [W_RIVALSTARTER] ; $d715 + ld b, a +.asm_50eda + ld a, [hli] + cp b + jr z, .asm_50ee1 + inc hl + jr .asm_50eda +.asm_50ee1 + ld a, [hl] + ld [W_TRAINERNO], a ; $d05d + ret + +Route22MoveRivalSprite: ; 50ee6 (14:4ee6) + ld de, Route22RivalMovementData ; $4efb + ld a, [$cf0d] + cp $1 + jr z, .asm_50ef1 + inc de +.asm_50ef1 + call MoveSprite + ld a, $c + ld [$ff8d], a + jp Func_34a6 + +Route22RivalMovementData: ; 50efb (14:4efb) + db $C0,$C0,$C0,$C0,$FF ; move right 4 times + +Route22Script0: ; 50f00 (14:4f00) + ld a, [$d7eb] + bit 7, a + ret z + ld hl, .Route22RivalBattleCoords ; $4f2d + call ArePlayerCoordsInArray + ret nc + ld a, [$cd3d] + ld [$cf0d], a + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + ld a, $2 + ld [$d528], a + ld a, [$d7eb] + bit 0, a ; is this the rival battle at the beginning of the game? + jr nz, .firstRivalBattle ; 0x50f25 $b + bit 1, a ; is this the rival at the end of the game? + jp nz, Route22Script_5104e + ret + +.Route22RivalBattleCoords + db $04, $1D + db $05, $1D + db $FF + +.firstRivalBattle + ld a, $1 + ld [$cd4f], a + xor a + ld [$cd50], a + ld a, $4c + call Predef + ld a, [$d700] + and a + jr z, .asm_50f4e ; 0x50f44 $8 + ld a, $ff + ld [$c0ee], a + call PlaySound +.asm_50f4e + ld c, BANK(Music_MeetRival) + ld a, MUSIC_MEET_RIVAL + call PlayMusic + ld a, $1 + ld [$ff8c], a + call Route22MoveRivalSprite + ld a, $1 + ld [W_ROUTE22CURSCRIPT], a + ret + +Route22Script1: ; 50f62 (14:4f62) + ld a, [$d730] + bit 0, a + ret nz + ld a, [$cf0d] + cp $1 + jr nz, .asm_50f78 ; 0x50f6d $9 + ld a, $4 + ld [$d528], a + ld a, $4 + jr .asm_50f7a ; 0x50f76 $2 +.asm_50f78 + ld a, $c +.asm_50f7a + ld [$ff8d], a + ld a, $1 + ld [$ff8c], a + call Func_34a6 + xor a + ld [wJoypadForbiddenButtonsMask], a + ld a, $1 + ld [$ff8c], a + call DisplayTextID + ld hl, $d72d + set 6, [hl] + set 7, [hl] + ld hl, Route22RivalDefeatedText1 + ld de, Route22Text_511bc + call PreBattleSaveRegisters + ld a, SONY1 + $c8 + ld [W_CUROPPONENT], a + ld hl, StarterMons_50faf ; $4faf + call Route22Script_50ed6 + ld a, $2 + ld [W_ROUTE22CURSCRIPT], a + ret + +StarterMons_50faf: ; 50faf (14:4faf) +; starter the rival picked, rival trainer number + db SQUIRTLE,$04 + db BULBASAUR,$05 + db CHARMANDER,$06 + +Route22Script2: ; 50fb5 (14:4fb5) + ld a, [$d057] + cp $ff + jp z, Route22Script_50ece + ld a, [$c109] + and a + jr nz, .asm_50fc7 ; 0x50fc1 $4 + ld a, $4 + jr .asm_50fc9 ; 0x50fc5 $2 +.asm_50fc7 + ld a, $c +.asm_50fc9 + ld [$ff8d], a + ld a, $1 + ld [$ff8c], a + call Func_34a6 + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + ld hl, $d7eb + set 5, [hl] + ld a, $1 + ld [$ff8c], a + call DisplayTextID + ld a, $ff + ld [$c0ee], a + call PlaySound + callba Music_RivalAlternateStart + ld a, [$cf0d] + cp $1 + jr nz, .asm_50fff ; 0x50ff8 $5 + call Route22Script_51008 + jr .asm_51002 ; 0x50ffd $3 +.asm_50fff + call Route22Script_5100d +.asm_51002 + ld a, $3 + ld [W_ROUTE22CURSCRIPT], a + ret + +Route22Script_51008: ; 51008 (14:5008) + ld de, Route22RivalExitMovementData1 ; $5017 + jr asm_51010 + +Route22Script_5100d: ; 5100d (14:500d) + ld de, Route22RivalExitMovementData2 ; $501f +asm_51010 + ld a, $1 + ld [H_SPRITEHEIGHT], a + jp MoveSprite + +Route22RivalExitMovementData1: ; 51017 (14:5017) + db $C0,$C0,$00,$00,$00,$00,$00,$FF + +Route22RivalExitMovementData2: ; 5101f (14:501f) + db $40,$C0,$C0,$C0,$00,$00,$00,$00,$00,$00,$FF + +Route22Script3: ; 5102a (14:502a) + ld a, [$d730] + bit 0, a + ret nz + xor a + ld [wJoypadForbiddenButtonsMask], a + ld a, $22 + ld [$cc4d], a + ld a, $11 + call Predef + call Func_2307 + ld hl, $d7eb + res 0, [hl] + res 7, [hl] + ld a, $0 + ld [W_ROUTE22CURSCRIPT], a + ret + +Route22Script_5104e: ; 5104e (14:504e) + ld a, $2 + ld [$cd4f], a + xor a + ld [$cd50], a + ld a, $4c + call Predef ; indirect jump to PrintEmotionBubble (17c47 (5:7c47)) + ld a, [$d700] + and a + jr z, .skipYVisibilityTesta + ld a, $ff + ld [$c0ee], a + call PlaySound +.skipYVisibilityTesta + ld a, $ff + ld [$c0ee], a + call PlaySound + callba Music_RivalAlternateTempo + ld a, $2 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call Route22MoveRivalSprite + ld a, $4 + ld [W_ROUTE22CURSCRIPT], a + ret + +Route22Script4: ; 51087 (14:5087) + ld a, [$d730] + bit 0, a + ret nz + ld a, $2 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + ld a, [$cf0d] + cp $1 + jr nz, .asm_510a1 + ld a, $4 + ld [$d528], a + ld a, $4 + jr .asm_510a8 +.asm_510a1 + ld a, $2 + ld [$d528], a + ld a, $c +.asm_510a8 + ld [$ff8d], a + call Func_34a6 + xor a + ld [wJoypadForbiddenButtonsMask], a + ld a, $2 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + ld hl, $d72d + set 6, [hl] + set 7, [hl] + ld hl, Route22RivalDefeatedText2 ; $51cb + ld de, Route22Text_511d0 ; $51d0 + call PreBattleSaveRegisters + ld a, SONY2 + $c8 + ld [W_CUROPPONENT], a ; $d059 + ld hl, StarterMons_510d9 ; $50d9 + call Route22Script_50ed6 + ld a, $5 + ld [W_ROUTE22CURSCRIPT], a + ret + +StarterMons_510d9: ; 510d9 (14:50d9) + db SQUIRTLE,$0a + db BULBASAUR,$0b + db CHARMANDER,$0c + +Route22Script5: ; 510df (14:50df) + ld a, [W_ISINBATTLE] ; $d057 + cp $ff + jp z, Route22Script_50ece + ld a, $2 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + ld a, [$cf0d] + cp $1 + jr nz, .asm_510fb + ld a, $4 + ld [$d528], a + ld a, $4 + jr .asm_51102 +.asm_510fb + ld a, $2 + ld [$d528], a + ld a, $c +.asm_51102 + ld [$ff8d], a + call Func_34a6 + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + ld hl, $d7eb + set 6, [hl] + ld a, $2 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + ld a, $ff + ld [$c0ee], a + call PlaySound + callba Music_RivalAlternateStartAndTempo + ld a, [$cf0d] + cp $1 + jr nz, .asm_51134 + call Route22Script_5113d + jr .asm_51137 +.asm_51134 + call Route22Script_51142 +.asm_51137 + ld a, $6 + ld [W_ROUTE22CURSCRIPT], a + ret + +Route22Script_5113d: ; 5113d (14:513d) + ld de, MovementData_5114c ; $514c + jr asm_51145 + +Route22Script_51142: ; 51142 (14:5142) + ld de, MovementData_5114d ; $514d +asm_51145: ; 51145 (14:5145) + ld a, $2 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + jp MoveSprite + +MovementData_5114c: ; 5114c (14:514c) + db $80 ; left + +MovementData_5114d: ; 5114d (14:514d) + db $80,$80,$80,$FF ; left x3 + +Route22Script6: ; 51151 (14:5151) + ld a, [$d730] + bit 0, a + ret nz + xor a + ld [wJoypadForbiddenButtonsMask], a + ld a, $23 + ld [$cc4d], a + ld a, $11 + call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7)) + call Func_2307 + ld hl, $d7eb + res 1, [hl] + res 7, [hl] + ld a, $7 + ld [W_ROUTE22CURSCRIPT], a + ret + +Route22TextPointers: ; 51175 (14:5175) + dw Route22Text1 + dw Route22Text2 + dw Route22FrontGateText + +Route22Text1: ; 5117b (14:517b) + db $08 ; asm + ld a, [$d7eb] + bit 5, a + jr z, .asm_a88cf ; 0x51181 + ld hl, Route22RivalAfterBattleText1 + call PrintText + jr .asm_48088 ; 0x51189 +.asm_a88cf ; 0x5118b + ld hl, Route22RivalBeforeBattleText1 + call PrintText +.asm_48088 ; 0x51191 + jp TextScriptEnd + +Route22Text2: ; 51194 (14:5194) + db $08 ; asm + ld a, [$d7eb] + bit 6, a + jr z, .asm_58c0a ; 0x5119a + ld hl, Route22RivalAfterBattleText2 + call PrintText + jr .asm_673ee ; 0x511a2 +.asm_58c0a ; 0x511a4 + ld hl, Route22RivalBeforeBattleText2 + call PrintText +.asm_673ee ; 0x511aa + jp TextScriptEnd + +Route22RivalBeforeBattleText1: ; 511ad (14:51ad) + TX_FAR _Route22RivalBeforeBattleText1 + db "@" + +Route22RivalAfterBattleText1: ; 511b2 (14:51b2) + TX_FAR _Route22RivalAfterBattleText1 + db "@" + +Route22RivalDefeatedText1: ; 511b7 (14:51b7) + TX_FAR _Route22RivalDefeatedText1 + db "@" + +Route22Text_511bc: ; 511bc (14:51bc) + TX_FAR _Route22Text_511bc + db "@" + +Route22RivalBeforeBattleText2: ; 511c1 (14:51c1) + TX_FAR _Route22RivalBeforeBattleText2 + db "@" + +Route22RivalAfterBattleText2: ; 511c6 (14:51c6) + TX_FAR _Route22RivalAfterBattleText2 + db "@" + +Route22RivalDefeatedText2: ; 511cb (14:51cb) + TX_FAR _Route22RivalDefeatedText2 + db "@" + +Route22Text_511d0: ; 511d0 (14:51d0) + TX_FAR _Route22Text_511d0 + db "@" + +Route22FrontGateText: ; 511d5 (14:51d5) + TX_FAR _Route22FrontGateText + db "@" diff --git a/scripts/route22gate.asm b/scripts/route22gate.asm new file mode 100755 index 00000000..e445a358 --- /dev/null +++ b/scripts/route22gate.asm @@ -0,0 +1,92 @@ +Route22GateScript: ; 1e683 (7:6683) + call EnableAutoTextBoxDrawing + ld hl, Route22GateScriptPointers + ld a, [W_ROUTE22GATECURSCRIPT] + call CallFunctionInTable + ld a, [W_YCOORD] + cp $4 + ld a, ROUTE_23 + jr c, .asm_1e69a ; 0x1e696 $2 + ld a, ROUTE_22 +.asm_1e69a + ld [wLastMap], a + ret + +Route22GateScriptPointers: ; 1e69e (7:669e) + dw Route22GateScript0 + dw Route22GateScript1 + dw Route22GateScript2 + +Route22GateScript0: ; 1e6a4 (7:66a4) + ld hl, Route22GateScriptCoords + call ArePlayerCoordsInArray + ret nc + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + ld a, $1 + ld [$ff8c], a + jp DisplayTextID + +Route22GateScriptCoords: ; 1e6b5 (7:66b5) + db 2,4 + db 2,5 + db $ff + +Route22GateScript_1e6ba: ; 1e6ba (7:66ba) + ld a, $1 + ld [$cd38], a + ld a, $80 + ld [$ccd3], a + ld [$c109], a + ld [wJoypadForbiddenButtonsMask], a + jp Func_3486 + +Route22GateScript1: ; 1e6cd (7:66cd) + ld a, [$cd38] + and a + ret nz + xor a + ld [wJoypadForbiddenButtonsMask], a + call Delay3 + ld a, $0 + ld [W_ROUTE22GATECURSCRIPT], a +Route22GateScript2: ; 1e6de (7:66de) + ret + +Route22GateTextPointers: ; 1e6df (7:66df) + dw Route22GateText1 + +Route22GateText1: ; 1e6e1 (7:66e1) + db $8 + ld a, [W_OBTAINEDBADGES] + bit 0, a + jr nz, .asm_8a809 ; 0x1e6e7 $d + ld hl, Route22GateText_1e704 + call PrintText + call Route22GateScript_1e6ba + ld a, $1 + jr .asm_20f7e ; 0x1e6f4 $8 +.asm_8a809 ; 0x1e6f6 + ld hl, Route22GateText_1e71a + call PrintText + ld a, $2 +.asm_20f7e ; 0x1e6fe + ld [W_ROUTE22GATECURSCRIPT], a + jp TextScriptEnd + +Route22GateText_1e704: ; 1e704 (7:6704) + TX_FAR _Route22GateText_1e704 ; 0x8cfbb + db $8 + ld a, (SFX_02_51 - SFX_Headers_02) / 3 + call PlaySoundWaitForCurrent + call WaitForSoundToFinish + ld hl, Route22GateText_1e715 ; $6715 + ret + +Route22GateText_1e715: ; 1e715 (7:6715) + TX_FAR _Route22GateText_1e715 + db "@" + +Route22GateText_1e71a: ; 1e71a (7:671a) + TX_FAR _Route22GateText_1e71a ; 0x8d03e + db $0B, "@" diff --git a/scripts/route23.asm b/scripts/route23.asm new file mode 100755 index 00000000..aca5efb7 --- /dev/null +++ b/scripts/route23.asm @@ -0,0 +1,245 @@ +Route23Script: ; 511da (14:51da) + call Route23Script_511e9 + call EnableAutoTextBoxDrawing + ld hl, Route23ScriptPointers + ld a, [W_ROUTE23CURSCRIPT] + jp CallFunctionInTable + +Route23Script_511e9: ; 511e9 (14:51e9) + ld hl, $d126 + bit 6, [hl] + res 6, [hl] + ret z + ld hl, $d7ee + res 0, [hl] + res 7, [hl] + ld hl, $d813 + res 0, [hl] + res 6, [hl] + ld a, $7a + ld [$cc4d], a + ld a, $15 + call Predef ; indirect jump to AddMissableObject (f1c8 (3:71c8)) + ld a, $60 + ld [$cc4d], a + ld a, $11 + jp Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7)) + +Route23ScriptPointers: ; 51213 (14:5213) + dw Route23Script0 + dw Route23Script1 + dw Route23Script2 + +Route23Script0: ; 51219 (14:5219) + ld hl, YCoordsData_51255 ; $5255 + ld a, [W_YCOORD] + ld b, a + ld e, $0 + ld c, $7 +.asm_51224 + ld a, [hli] + cp $ff + ret z + inc e + dec c + cp b + jr nz, .asm_51224 ; 0x5122b $f7 + cp $23 + jr nz, .asm_51237 ; 0x5122f $6 + ld a, [W_XCOORD] + cp $e + ret nc +.asm_51237 + ld a, e + ld [$ff8c], a + ld a, c + ld [$cd3d], a + ld b, $2 + ld hl, $d7ed + ld a, $10 + call Predef + ld a, c + and a + ret nz + call Route23Script_5125d + call DisplayTextID + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + ret + +YCoordsData_51255: ; 51255 (14:5255) + db $23,$38,$55,$60,$69,$77,$88,$FF + +Route23Script_5125d: ; 5125d (14:525d) + ld hl, BadgeTextPointers ; $5276 + ld a, [wWhichTrade] ; $cd3d + ld c, a + ld b, $0 + add hl, bc + add hl, bc + ld a, [hli] + ld h, [hl] + ld l, a + ld de, $cd6d +.asm_5126e + ld a, [hli] + ld [de], a + inc de + cp $50 + jr nz, .asm_5126e + ret + +BadgeTextPointers: ; 51276 (14:5276) + dw CascadeBadgeText + dw ThunderBadgeText + dw RainbowBadgeText + dw SoulBadgeText + dw MarshBadgeText + dw VolcanoBadgeText + dw EarthBadgeText + +EarthBadgeText: ; 51284 (14:5284) + db "EARTHBADGE@" + +VolcanoBadgeText: ; 5128f (14:528f) + db "VOLCANOBADGE@" + +MarshBadgeText: ; 5129c (14:529c) + db "MARSHBADGE@" + +SoulBadgeText: ; 512a7 (14:52a7) + db "SOULBADGE@" + +RainbowBadgeText: ; 512b1 (14:52b1) + db "RAINBOWBADGE@" + +ThunderBadgeText: ; 512be (14:52be) + db "THUNDERBADGE@" + +CascadeBadgeText: ; 512cb (14:52cb) + db "CASCADEBADGE@" + +Route23Script_512d8: ; 512d8 (14:52d8) + ld a, $1 + ld [$cd38], a + ld a, $80 + ld [$ccd3], a + xor a + ld [$c109], a + ld [wJoypadForbiddenButtonsMask], a + jp Func_3486 + +Route23Script1: ; 512ec (14:52ec) + ld a, [$cd38] + and a + ret nz +Route23Script2: ; 512f1 (14:52f1) + ld a, $0 + ld [W_ROUTE23CURSCRIPT], a + ret + +Route23TextPointers: ; 512f7 (14:52f7) + dw Route23Text1 + dw Route23Text2 + dw Route23Text3 + dw Route23Text4 + dw Route23Text5 + dw Route23Text6 + dw Route23Text7 + dw Route23Text8 + +Route23Text1: ; 51307 (14:5307) + db $08 ; asm + ld a, $6 + call Route23Script_51346 + jp TextScriptEnd + +Route23Text2: ; 51310 (14:5310) + db $08 ; asm + ld a, $5 + call Route23Script_51346 + jp TextScriptEnd + +Route23Text3: ; 51319 (14:5319) + db $08 ; asm + ld a, $4 + call Route23Script_51346 + jp TextScriptEnd + +Route23Text4: ; 51322 (14:5322) + db $08 ; asm + ld a, $3 + call Route23Script_51346 + jp TextScriptEnd + +Route23Text5: ; 5132b (14:532b) + db $08 ; asm + ld a, $2 + call Route23Script_51346 + jp TextScriptEnd + +Route23Text6: ; 51334 (14:5334) + db $08 ; asm + ld a, $1 + call Route23Script_51346 + jp TextScriptEnd + +Route23Text7: ; 5133d (14:533d) + db $8 + ld a, $0 + call Route23Script_51346 + jp TextScriptEnd + +Route23Script_51346: ; 51346 (14:5346) + ld [wWhichTrade], a ; $cd3d + call Route23Script_5125d + ld a, [wWhichTrade] ; $cd3d + inc a + ld c, a + ld b, $2 + ld hl, W_OBTAINEDBADGES + ld a, $10 + call Predef ; indirect jump to HandleBitArray (f666 (3:7666)) + ld a, c + and a + jr nz, .asm_5136e + ld hl, VictoryRoadGuardText1 + call PrintText + call Route23Script_512d8 + ld a, $1 + ld [W_ROUTE23CURSCRIPT], a + ret +.asm_5136e + ld hl, VictoryRoadGuardText2 + call PrintText + ld a, [wWhichTrade] ; $cd3d + ld c, a + ld b, $1 + ld hl, $d7ed + ld a, $10 + call Predef ; indirect jump to HandleBitArray (f666 (3:7666)) + ld a, $2 + ld [W_ROUTE23CURSCRIPT], a + ret + +Route23Script_51388: ; 51388 (14:5388) + ld hl, VictoryRoadGuardText2 + jp PrintText + +VictoryRoadGuardText1: ; 5138e (14:538e) + TX_FAR _VictoryRoadGuardText1 + db $08 ; asm + ld a, (SFX_02_51 - SFX_Headers_02) / 3 + call PlaySoundWaitForCurrent + call WaitForSoundToFinish + jp TextScriptEnd + +VictoryRoadGuardText2: ; 5139e (14:539e) + TX_FAR _VictoryRoadGuardText2 + db $b + TX_FAR _VictoryRoadGuardText_513a3 + db "@" + +Route23Text8: ; 513a8 (14:53a8) + TX_FAR _Route23Text8 + db "@" diff --git a/scripts/route24.asm b/scripts/route24.asm new file mode 100755 index 00000000..0e77c6f7 --- /dev/null +++ b/scripts/route24.asm @@ -0,0 +1,326 @@ +Route24Script: ; 513ad (14:53ad) + call EnableAutoTextBoxDrawing + ld hl, Route24TrainerHeaders + ld de, Route24ScriptPointers + ld a, [W_ROUTE24CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_ROUTE24CURSCRIPT], a + ret + +Route24Script_513c0: ; 513c0 (14:53c0) + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [W_ROUTE24CURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +Route24ScriptPointers: ; 513cb (14:53cb) + dw Route24Script0 + dw Func_324c + dw EndTrainerBattle + dw Route24Script3 + dw Route24Script4 + +Route24Script0: ; 513d5 (14:53d5) + ld a, [$d7ef] + bit 0, a + jp nz, CheckFightingMapTrainers + ld hl, CoordsData_5140e ; $540e + call ArePlayerCoordsInArray + jp nc, CheckFightingMapTrainers + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + ld a, $1 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + ld hl, $d7f0 + bit 1, [hl] + res 1, [hl] + ret z + ld a, $80 + ld [$ccd3], a + ld a, $1 + ld [$cd38], a + call Func_3486 + ld a, $4 + ld [W_ROUTE24CURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +CoordsData_5140e: ; 5140e (14:540e) + db $0F,$0A,$FF + +Route24Script4: ; 51411 (14:5411) + ld a, [$cd38] + and a + ret nz + call Delay3 + ld a, $0 + ld [W_ROUTE24CURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +Route24Script3: ; 51422 (14:5422) + ld a, [W_ISINBATTLE] ; $d057 + cp $ff + jp z, Route24Script_513c0 + call UpdateSprites + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + ld hl, $d7ef + set 1, [hl] + ld a, $1 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + xor a + ld [wJoypadForbiddenButtonsMask], a + ld a, $0 + ld [W_ROUTE24CURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +Route24TextPointers: ; 5144b (14:544b) + dw Route24Text1 + dw Route24Text2 + dw Route24Text3 + dw Route24Text4 + dw Route24Text5 + dw Route24Text6 + dw Route24Text7 + dw Predef5CText + +Route24TrainerHeaders: ; 5145b (14:545b) +Route24TrainerHeader0: ; 5145b (14:545b) + db $2 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7ef ; flag's byte + dw Route24BattleText1 ; 0x5571 TextBeforeBattle + dw Route24AfterBattleText1 ; 0x557b TextAfterBattle + dw Route24EndBattleText1 ; 0x5576 TextEndBattle + dw Route24EndBattleText1 ; 0x5576 TextEndBattle + +Route24TrainerHeader2: ; 51467 (14:5467) + db $3 ; flag's bit + db ($1 << 4) ; trainer's view range + dw $d7ef ; flag's byte + dw Route24BattleText2 ; 0x5580 TextBeforeBattle + dw Route24AfterBattleText2 ; 0x558a TextAfterBattle + dw Route24EndBattleText2 ; 0x5585 TextEndBattle + dw Route24EndBattleText2 ; 0x5585 TextEndBattle + +Route24TrainerHeader3: ; 51473 (14:5473) + db $4 ; flag's bit + db ($1 << 4) ; trainer's view range + dw $d7ef ; flag's byte + dw Route24BattleText3 ; 0x558f TextBeforeBattle + dw Route24AfterBattleText3 ; 0x5599 TextAfterBattle + dw Route24EndBattleText3 ; 0x5594 TextEndBattle + dw Route24EndBattleText3 ; 0x5594 TextEndBattle + +Route24TrainerHeader4: ; 5147f (14:547f) + db $5 ; flag's bit + db ($1 << 4) ; trainer's view range + dw $d7ef ; flag's byte + dw Route24BattleText4 ; 0x559e TextBeforeBattle + dw Route24AfterBattleText4 ; 0x55a8 TextAfterBattle + dw Route24EndBattleText4 ; 0x55a3 TextEndBattle + dw Route24EndBattleText4 ; 0x55a3 TextEndBattle + +Route24TrainerHeader5: ; 5148b (14:548b) + db $6 ; flag's bit + db ($1 << 4) ; trainer's view range + dw $d7ef ; flag's byte + dw Route24BattleText5 ; 0x55ad TextBeforeBattle + dw Route24AfterBattleText5 ; 0x55b7 TextAfterBattle + dw Route24EndBattleText5 ; 0x55b2 TextEndBattle + dw Route24EndBattleText5 ; 0x55b2 TextEndBattle + +Route24TrainerHeader6: ; 51497 (14:5497) + db $7 ; flag's bit + db ($1 << 4) ; trainer's view range + dw $d7ef ; flag's byte + dw Route24BattleText6 ; 0x55bc TextBeforeBattle + dw Route24AfterBattleText6 ; 0x55c6 TextAfterBattle + dw Route24EndBattleText6 ; 0x55c1 TextEndBattle + dw Route24EndBattleText6 ; 0x55c1 TextEndBattle + + db $ff + +Route24Text1: ; 514a4 (14:54a4) + db $8 + ld hl, $d7f0 + res 1, [hl] + ld a, [$d7ef] + bit 0, a + jr nz, .asm_a03f5 ; 0x514af $48 + ld hl, Route24Text_51510 + call PrintText + ld bc, (NUGGET << 8) | 1 + call GiveItem + jr nc, .BagFull + ld hl, $d7ef + set 0, [hl] + ld hl, Route24Text_5151a + call PrintText + ld hl, Route24Text_51526 + call PrintText + ld hl, $d72d + set 6, [hl] + set 7, [hl] + ld hl, Route24Text_5152b + ld de, Route24Text_5152b + call PreBattleSaveRegisters + ld a, [$ff8c] + ld [$cf13], a + call EngageMapTrainer + call InitBattleEnemyParameters + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + ld a, $3 + ld [W_ROUTE24CURSCRIPT], a + ld [W_CURMAPSCRIPT], a + jp TextScriptEnd +.asm_a03f5 ; 0x514f9 + ld hl, Route24Text_51530 + call PrintText + jp TextScriptEnd +.BagFull + ld hl, Route24Text_51521 + call PrintText + ld hl, $d7f0 + set 1, [hl] + jp TextScriptEnd + +Route24Text_51510: ; 51510 (14:5510) + TX_FAR _Route24Text_51510 ; 0x92721 + db $0B + TX_FAR _Route24Text_51515 ; 0x92755 + db "@" + +Route24Text_5151a: ; 5151a (14:551a) + TX_FAR _Route24Text_5151a ; 0x92779 + db $0B, $6, "@" + +Route24Text_51521: ; 51521 (14:5521) + TX_FAR _Route24Text_51521 + db "@" + +Route24Text_51526: ; 51526 (14:5526) + TX_FAR _Route24Text_51526 + db "@" + +Route24Text_5152b: ; 5152b (14:552b) + TX_FAR _Route24Text_5152b + db "@" + +Route24Text_51530: ; 51530 (14:5530) + TX_FAR _Route24Text_51530 + db "@" + +Route24Text2: ; 51535 (14:5535) + db $08 ; asm + ld hl, Route24TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +Route24Text3: ; 5153f (14:553f) + db $08 ; asm + ld hl, Route24TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +Route24Text4: ; 51549 (14:5549) + db $08 ; asm + ld hl, Route24TrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +Route24Text5: ; 51553 (14:5553) + db $08 ; asm + ld hl, Route24TrainerHeader4 + call TalkToTrainer + jp TextScriptEnd + +Route24Text6: ; 5155d (14:555d) + db $08 ; asm + ld hl, Route24TrainerHeader5 + call TalkToTrainer + jp TextScriptEnd + +Route24Text7: ; 51567 (14:5567) + db $08 ; asm + ld hl, Route24TrainerHeader6 + call TalkToTrainer + jp TextScriptEnd + +Route24BattleText1: ; 51571 (14:5571) + TX_FAR _Route24BattleText1 + db "@" + +Route24EndBattleText1: ; 51576 (14:5576) + TX_FAR _Route24EndBattleText1 + db "@" + +Route24AfterBattleText1: ; 5157b (14:557b) + TX_FAR _Route24AfterBattleText1 + db "@" + +Route24BattleText2: ; 51580 (14:5580) + TX_FAR _Route24BattleText2 + db "@" + +Route24EndBattleText2: ; 51585 (14:5585) + TX_FAR _Route24EndBattleText2 + db "@" + +Route24AfterBattleText2: ; 5158a (14:558a) + TX_FAR _Route24AfterBattleText2 + db "@" + +Route24BattleText3: ; 5158f (14:558f) + TX_FAR _Route24BattleText3 + db "@" + +Route24EndBattleText3: ; 51594 (14:5594) + TX_FAR _Route24EndBattleText3 + db "@" + +Route24AfterBattleText3: ; 51599 (14:5599) + TX_FAR _Route24AfterBattleText3 + db "@" + +Route24BattleText4: ; 5159e (14:559e) + TX_FAR _Route24BattleText4 + db "@" + +Route24EndBattleText4: ; 515a3 (14:55a3) + TX_FAR _Route24EndBattleText4 + db "@" + +Route24AfterBattleText4: ; 515a8 (14:55a8) + TX_FAR _Route24AfterBattleText4 + db "@" + +Route24BattleText5: ; 515ad (14:55ad) + TX_FAR _Route24BattleText5 + db "@" + +Route24EndBattleText5: ; 515b2 (14:55b2) + TX_FAR _Route24EndBattleText5 + db "@" + +Route24AfterBattleText5: ; 515b7 (14:55b7) + TX_FAR _Route24AfterBattleText5 + db "@" + +Route24BattleText6: ; 515bc (14:55bc) + TX_FAR _Route24BattleText6 + db "@" + +Route24EndBattleText6: ; 515c1 (14:55c1) + TX_FAR _Route24EndBattleText6 + db "@" + +Route24AfterBattleText6: ; 515c6 (14:55c6) + TX_FAR _Route24AfterBattleText6 + db "@" diff --git a/scripts/route25.asm b/scripts/route25.asm new file mode 100755 index 00000000..7c5543c7 --- /dev/null +++ b/scripts/route25.asm @@ -0,0 +1,309 @@ +Route25Script: ; 515cb (14:55cb) + call Route25Script_515e1 + call EnableAutoTextBoxDrawing + ld hl, Route25TrainerHeaders + ld de, Route25ScriptPointers + ld a, [W_ROUTE25CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_ROUTE25CURSCRIPT], a + ret + +Route25Script_515e1: ; 515e1 (14:55e1) + ld hl, $d126 + bit 6, [hl] + res 6, [hl] + ret z + ld hl, $d7f2 + bit 7, [hl] + ret nz + bit 5, [hl] + jr nz, .asm_515ff + res 6, [hl] + ld a, $61 + ld [$cc4d], a + ld a, $15 + jp Predef ; indirect jump to AddMissableObject (f1c8 (3:71c8)) +.asm_515ff + bit 4, [hl] + ret z + set 7, [hl] + ld a, $24 + ld [$cc4d], a + ld a, $11 + call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7)) + ld a, $62 + ld [$cc4d], a + ld a, $11 + call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7)) + ld a, $63 + ld [$cc4d], a + ld a, $15 + jp Predef ; indirect jump to AddMissableObject (f1c8 (3:71c8)) + +Route25ScriptPointers: ; 51622 (14:5622) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +Route25TextPointers: ; 51628 (14:5628) + dw Route25Text1 + dw Route25Text2 + dw Route25Text3 + dw Route25Text4 + dw Route25Text5 + dw Route25Text6 + dw Route25Text7 + dw Route25Text8 + dw Route25Text9 + dw Predef5CText + dw Route25Text11 + +Route25TrainerHeaders: ; 5163e (14:563e) +Route25TrainerHeader0: ; 5163e (14:563e) + db $1 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7f1 ; flag's byte + dw Route25BattleText1 ; 0x5705 TextBeforeBattle + dw Route25AfterBattleText1 ; 0x570f TextAfterBattle + dw Route25EndBattleText1 ; 0x570a TextEndBattle + dw Route25EndBattleText1 ; 0x570a TextEndBattle + +Route25TrainerHeader2: ; 5164a (14:564a) + db $2 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7f1 ; flag's byte + dw Route25BattleText2 ; 0x5714 TextBeforeBattle + dw Route25AfterBattleText2 ; 0x571e TextAfterBattle + dw Route25EndBattleText2 ; 0x5719 TextEndBattle + dw Route25EndBattleText2 ; 0x5719 TextEndBattle + +Route25TrainerHeader3: ; 51656 (14:5656) + db $3 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7f1 ; flag's byte + dw Route25BattleText3 ; 0x5723 TextBeforeBattle + dw Route25AfterBattleText3 ; 0x572d TextAfterBattle + dw Route25EndBattleText3 ; 0x5728 TextEndBattle + dw Route25EndBattleText3 ; 0x5728 TextEndBattle + +Route25TrainerHeader4: ; 51662 (14:5662) + db $4 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7f1 ; flag's byte + dw Route25BattleText4 ; 0x5732 TextBeforeBattle + dw Route25AfterBattleText4 ; 0x573c TextAfterBattle + dw Route25EndBattleText4 ; 0x5737 TextEndBattle + dw Route25EndBattleText4 ; 0x5737 TextEndBattle + +Route25TrainerHeader5: ; 5166e (14:566e) + db $5 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7f1 ; flag's byte + dw Route25BattleText5 ; 0x5741 TextBeforeBattle + dw Route25AfterBattleText5 ; 0x574b TextAfterBattle + dw Route25EndBattleText5 ; 0x5746 TextEndBattle + dw Route25EndBattleText5 ; 0x5746 TextEndBattle + +Route25TrainerHeader6: ; 5167a (14:567a) + db $6 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7f1 ; flag's byte + dw Route25BattleText6 ; 0x5750 TextBeforeBattle + dw Route25AfterBattleText6 ; 0x575a TextAfterBattle + dw Route25EndBattleText6 ; 0x5755 TextEndBattle + dw Route25EndBattleText6 ; 0x5755 TextEndBattle + +Route25TrainerHeader7: ; 51686 (14:5686) + db $7 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7f1 ; flag's byte + dw Route25BattleText7 ; 0x575f TextBeforeBattle + dw Route25AfterBattleText7 ; 0x5769 TextAfterBattle + dw Route25EndBattleText7 ; 0x5764 TextEndBattle + dw Route25EndBattleText7 ; 0x5764 TextEndBattle + +Route25TrainerHeader8: ; 51692 (14:5692) + db $8 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7f1 ; flag's byte + dw Route25BattleText8 ; 0x576e TextBeforeBattle + dw Route25AfterBattleText8 ; 0x5778 TextAfterBattle + dw Route25EndBattleText8 ; 0x5773 TextEndBattle + dw Route25EndBattleText8 ; 0x5773 TextEndBattle + +Route25TrainerHeader9: ; 5169e (14:569e) + db $9 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7f1 ; flag's byte + dw Route25BattleText9 ; 0x577d TextBeforeBattle + dw Route25AfterBattleText9 ; 0x5787 TextAfterBattle + dw Route25EndBattleText9 ; 0x5782 TextEndBattle + dw Route25EndBattleText9 ; 0x5782 TextEndBattle + + db $ff + +Route25Text1: ; 516ab (14:56ab) + db $08 ; asm + ld hl, Route25TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +Route25Text2: ; 516b5 (14:56b5) + db $08 ; asm + ld hl, Route25TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +Route25Text3: ; 516bf (14:56bf) + db $08 ; asm + ld hl, Route25TrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +Route25Text4: ; 516c9 (14:56c9) + db $08 ; asm + ld hl, Route25TrainerHeader4 + call TalkToTrainer + jp TextScriptEnd + +Route25Text5: ; 516d3 (14:56d3) + db $08 ; asm + ld hl, Route25TrainerHeader5 + call TalkToTrainer + jp TextScriptEnd + +Route25Text6: ; 516dd (14:56dd) + db $08 ; asm + ld hl, Route25TrainerHeader6 + call TalkToTrainer + jp TextScriptEnd + +Route25Text7: ; 516e7 (14:56e7) + db $08 ; asm + ld hl, Route25TrainerHeader7 + call TalkToTrainer + jp TextScriptEnd + +Route25Text8: ; 516f1 (14:56f1) + db $08 ; asm + ld hl, Route25TrainerHeader8 + call TalkToTrainer + jp TextScriptEnd + +Route25Text9: ; 516fb (14:56fb) + db $08 ; asm + ld hl, Route25TrainerHeader9 + call TalkToTrainer + jp TextScriptEnd + +Route25BattleText1: ; 51705 (14:5705) + TX_FAR _Route25BattleText1 + db "@" + +Route25EndBattleText1: ; 5170a (14:570a) + TX_FAR _Route25EndBattleText1 + db "@" + +Route25AfterBattleText1: ; 5170f (14:570f) + TX_FAR _Route25AfterBattleText1 + db "@" + +Route25BattleText2: ; 51714 (14:5714) + TX_FAR _Route25BattleText2 + db "@" + +Route25EndBattleText2: ; 51719 (14:5719) + TX_FAR _Route25EndBattleText2 + db "@" + +Route25AfterBattleText2: ; 5171e (14:571e) + TX_FAR _Route25AfterBattleText2 + db "@" + +Route25BattleText3: ; 51723 (14:5723) + TX_FAR _Route25BattleText3 + db "@" + +Route25EndBattleText3: ; 51728 (14:5728) + TX_FAR _Route25EndBattleText3 + db "@" + +Route25AfterBattleText3: ; 5172d (14:572d) + TX_FAR _Route25AfterBattleText3 + db "@" + +Route25BattleText4: ; 51732 (14:5732) + TX_FAR _Route25BattleText4 + db "@" + +Route25EndBattleText4: ; 51737 (14:5737) + TX_FAR _Route25EndBattleText4 + db "@" + +Route25AfterBattleText4: ; 5173c (14:573c) + TX_FAR _Route25AfterBattleText4 + db "@" + +Route25BattleText5: ; 51741 (14:5741) + TX_FAR _Route25BattleText5 + db "@" + +Route25EndBattleText5: ; 51746 (14:5746) + TX_FAR _Route25EndBattleText5 + db "@" + +Route25AfterBattleText5: ; 5174b (14:574b) + TX_FAR _Route25AfterBattleText5 + db "@" + +Route25BattleText6: ; 51750 (14:5750) + TX_FAR _Route25BattleText6 + db "@" + +Route25EndBattleText6: ; 51755 (14:5755) + TX_FAR _Route25EndBattleText6 + db "@" + +Route25AfterBattleText6: ; 5175a (14:575a) + TX_FAR _Route25AfterBattleText6 + db "@" + +Route25BattleText7: ; 5175f (14:575f) + TX_FAR _Route25BattleText7 + db "@" + +Route25EndBattleText7: ; 51764 (14:5764) + TX_FAR _Route25EndBattleText7 + db "@" + +Route25AfterBattleText7: ; 51769 (14:5769) + TX_FAR _Route25AfterBattleText7 + db "@" + +Route25BattleText8: ; 5176e (14:576e) + TX_FAR _Route25BattleText8 + db "@" + +Route25EndBattleText8: ; 51773 (14:5773) + TX_FAR _Route25EndBattleText8 + db "@" + +Route25AfterBattleText8: ; 51778 (14:5778) + TX_FAR _Route25AfterBattleText8 + db "@" + +Route25BattleText9: ; 5177d (14:577d) + TX_FAR _Route25BattleText9 + db "@" + +Route25EndBattleText9: ; 51782 (14:5782) + TX_FAR _Route25EndBattleText9 + db "@" + +Route25AfterBattleText9: ; 51787 (14:5787) + TX_FAR _Route25AfterBattleText9 + db "@" + +Route25Text11: ; 5178c (14:578c) + TX_FAR _Route25Text11 + db "@" diff --git a/scripts/route2gate.asm b/scripts/route2gate.asm new file mode 100755 index 00000000..9fd8e4bd --- /dev/null +++ b/scripts/route2gate.asm @@ -0,0 +1,42 @@ +Route2GateScript: ; 5d5d4 (17:55d4) + jp EnableAutoTextBoxDrawing + +Route2GateTextPointers: ; 5d5d7 (17:55d7) + dw Route2GateText1 + dw Route2GateText2 + +Route2GateText1: ; 5d5db (17:55db) + db $08 ; asm + ld a, [$d7c2] + bit 0, a + jr nz, .asm_6592c ; 0x5d5e1 + ld a, $a + ldh [$db], a + ld a, $c8 + ldh [$dc], a + ld [$d11e], a + call GetItemName ; $2fcf + ld hl, $cd6d + ld de, $cc5b + ld bc, $000d + call CopyData + ld a, $62 + call Predef + ldh a, [$db] + cp $1 + jr nz, .asm_ad646 ; 0x5d606 + ld hl, $d7c2 + set 0, [hl] +.asm_6592c ; 0x5d60d + ld hl, Route2GateText_5d616 + call PrintText +.asm_ad646 ; 0x5d613 + jp TextScriptEnd + +Route2GateText_5d616: ; 5d616 (17:5616) + TX_FAR _Route2GateText_5d616 + db "@" + +Route2GateText2: ; 5d61b (17:561b) + TX_FAR _Route2GateText2 + db "@" diff --git a/scripts/route2house.asm b/scripts/route2house.asm new file mode 100755 index 00000000..50a058b8 --- /dev/null +++ b/scripts/route2house.asm @@ -0,0 +1,18 @@ +Route2HouseScript: ; 1deed (7:5eed) + jp EnableAutoTextBoxDrawing + +Route2HouseTextPointers: ; 1def0 (7:5ef0) + dw Route2HouseText1 + dw Route2HouseText2 + +Route2HouseText1: ; 1def4 (7:5ef4) + TX_FAR _Route2HouseText1 + db "@" + +Route2HouseText2: ; 1def9 (7:5ef9) + db $08 ; asm + ld a, $1 + ld [wWhichTrade], a + ld a, $54 + call Predef + jp TextScriptEnd diff --git a/scripts/route3.asm b/scripts/route3.asm new file mode 100755 index 00000000..1ff29f5b --- /dev/null +++ b/scripts/route3.asm @@ -0,0 +1,252 @@ +Route3Script: ; 554f8 (15:54f8) + call EnableAutoTextBoxDrawing + ld hl, Route3TrainerHeader0 + ld de, Route3ScriptPointers + ld a, [W_ROUTE3CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_ROUTE3CURSCRIPT], a + ret + +Route3ScriptPointers: ; 5550b (15:550b) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +Route3TextPointers: ; 55511 (15:5511) + dw Route3Text1 + dw Route3Text2 + dw Route3Text3 + dw Route3Text4 + dw Route3Text5 + dw Route3Text6 + dw Route3Text7 + dw Route3Text8 + dw Route3Text9 + dw Route3Text10 + +Route3TrainerHeaders: ; 55525 (15:5525) +Route3TrainerHeader0: ; 55525 (15:5525) + db $2 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7c3 ; flag's byte + dw Route3BattleText1 ; 0x5595 TextBeforeBattle + dw Route3AfterBattleText1 ; 0x559f TextAfterBattle + dw Route3EndBattleText1 ; 0x559a TextEndBattle + dw Route3EndBattleText1 ; 0x559a TextEndBattle + +Route3TrainerHeader2: ; 55531 (15:5531) + db $3 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7c3 ; flag's byte + dw Route3BattleText2 ; 0x55ae TextBeforeBattle + dw Route3AfterBattleText2 ; 0x55b8 TextAfterBattle + dw Route3EndBattleText2 ; 0x55b3 TextEndBattle + dw Route3EndBattleText2 ; 0x55b3 TextEndBattle + +Route3TrainerHeader3: ; 5553d (15:553d) + db $4 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7c3 ; flag's byte + dw Route3BattleText3 ; 0x55c7 TextBeforeBattle + dw Route3AfterBattleText3 ; 0x55d1 TextAfterBattle + dw Route3EndBattleText3 ; 0x55cc TextEndBattle + dw Route3EndBattleText3 ; 0x55cc TextEndBattle + +Route3TrainerHeader4: ; 55549 (15:5549) + db $5 ; flag's bit + db ($1 << 4) ; trainer's view range + dw $d7c3 ; flag's byte + dw Route3BattleText4 ; 0x55e0 TextBeforeBattle + dw Route3AfterBattleText4 ; 0x55ea TextAfterBattle + dw Route3EndBattleText4 ; 0x55e5 TextEndBattle + dw Route3EndBattleText4 ; 0x55e5 TextEndBattle + +Route3TrainerHeader5: ; 55555 (15:5555) + db $6 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7c3 ; flag's byte + dw Route3BattleText5 ; 0x55f9 TextBeforeBattle + dw Route3AfterBattleText5 ; 0x5603 TextAfterBattle + dw Route3EndBattleText5 ; 0x55fe TextEndBattle + dw Route3EndBattleText5 ; 0x55fe TextEndBattle + +Route3TrainerHeader6: ; 55561 (15:5561) + db $7 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7c3 ; flag's byte + dw Route3BattleText6 ; 0x5612 TextBeforeBattle + dw Route3AfterBattleText6 ; 0x561c TextAfterBattle + dw Route3EndBattleText6 ; 0x5617 TextEndBattle + dw Route3EndBattleText6 ; 0x5617 TextEndBattle + +Route3TrainerHeader7: ; 5556d (15:556d) + db $8 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7c3 ; flag's byte + dw Route3BattleText7 ; 0x562b TextBeforeBattle + dw Route3AfterBattleText7 ; 0x5635 TextAfterBattle + dw Route3EndBattleText7 ; 0x5630 TextEndBattle + dw Route3EndBattleText7 ; 0x5630 TextEndBattle + +Route3TrainerHeader8: ; 55579 (15:5579) + db $9 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7c3 ; flag's byte + dw Route3BattleText8 ; 0x5644 TextBeforeBattle + dw Route3AfterBattleText8 ; 0x564e TextAfterBattle + dw Route3EndBattleText8 ; 0x5649 TextEndBattle + dw Route3EndBattleText8 ; 0x5649 TextEndBattle + + db $ff + +Route3Text1: ; 55586 (15:5586) + TX_FAR _Route3Text1 + db "@" + +Route3Text2: ; 5558b (15:558b) + db $08 ; asm + ld hl, Route3TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +Route3BattleText1: ; 55595 (15:5595) + TX_FAR _Route3BattleText1 + db "@" + +Route3EndBattleText1: ; 5559a (15:559a) + TX_FAR _Route3EndBattleText1 + db "@" + +Route3AfterBattleText1: ; 5559f (15:559f) + TX_FAR _Route3AfterBattleText1 + db "@" + +Route3Text3: ; 555a4 (15:55a4) + db $08 ; asm + ld hl, Route3TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +Route3BattleText2: ; 555ae (15:55ae) + TX_FAR _Route3BattleText2 + db "@" + +Route3EndBattleText2: ; 555b3 (15:55b3) + TX_FAR _Route3EndBattleText2 + db "@" + +Route3AfterBattleText2: ; 555b8 (15:55b8) + TX_FAR _Route3AfterBattleText2 + db "@" + +Route3Text4: ; 555bd (15:55bd) + db $08 ; asm + ld hl, Route3TrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +Route3BattleText3: ; 555c7 (15:55c7) + TX_FAR _Route3BattleText3 + db "@" + +Route3EndBattleText3: ; 555cc (15:55cc) + TX_FAR _Route3EndBattleText3 + db "@" + +Route3AfterBattleText3: ; 555d1 (15:55d1) + TX_FAR _Route3AfterBattleText3 + db "@" + +Route3Text5: ; 555d6 (15:55d6) + db $08 ; asm + ld hl, Route3TrainerHeader4 + call TalkToTrainer + jp TextScriptEnd + +Route3BattleText4: ; 555e0 (15:55e0) + TX_FAR _Route3BattleText4 + db "@" + +Route3EndBattleText4: ; 555e5 (15:55e5) + TX_FAR _Route3EndBattleText4 + db "@" + +Route3AfterBattleText4: ; 555ea (15:55ea) + TX_FAR _Route3AfterBattleText4 + db "@" + +Route3Text6: ; 555ef (15:55ef) + db $08 ; asm + ld hl, Route3TrainerHeader5 + call TalkToTrainer + jp TextScriptEnd + +Route3BattleText5: ; 555f9 (15:55f9) + TX_FAR _Route3BattleText5 + db "@" + +Route3EndBattleText5: ; 555fe (15:55fe) + TX_FAR _Route3EndBattleText5 + db "@" + +Route3AfterBattleText5: ; 55603 (15:5603) + TX_FAR _Route3AfterBattleText5 + db "@" + +Route3Text7: ; 55608 (15:5608) + db $08 ; asm + ld hl, Route3TrainerHeader6 + call TalkToTrainer + jp TextScriptEnd + +Route3BattleText6: ; 55612 (15:5612) + TX_FAR _Route3BattleText6 + db "@" + +Route3EndBattleText6: ; 55617 (15:5617) + TX_FAR _Route3EndBattleText6 + db "@" + +Route3AfterBattleText6: ; 5561c (15:561c) + TX_FAR _Route3AfterBattleText6 + db "@" + +Route3Text8: ; 55621 (15:5621) + db $08 ; asm + ld hl, Route3TrainerHeader7 + call TalkToTrainer + jp TextScriptEnd + +Route3BattleText7: ; 5562b (15:562b) + TX_FAR _Route3BattleText7 + db "@" + +Route3EndBattleText7: ; 55630 (15:5630) + TX_FAR _Route3EndBattleText7 + db "@" + +Route3AfterBattleText7: ; 55635 (15:5635) + TX_FAR _Route3AfterBattleText7 + db "@" + +Route3Text9: ; 5563a (15:563a) + db $08 ; asm + ld hl, Route3TrainerHeader8 + call TalkToTrainer + jp TextScriptEnd + +Route3BattleText8: ; 55644 (15:5644) + TX_FAR _Route3BattleText8 + db "@" + +Route3EndBattleText8: ; 55649 (15:5649) + TX_FAR _Route3EndBattleText8 + db "@" + +Route3AfterBattleText8: ; 5564e (15:564e) + TX_FAR _Route3AfterBattleText8 + db "@" + +Route3Text10: ; 55653 (15:5653) + TX_FAR _Route3Text10 + db "@" diff --git a/scripts/route4.asm b/scripts/route4.asm new file mode 100755 index 00000000..69ec7424 --- /dev/null +++ b/scripts/route4.asm @@ -0,0 +1,63 @@ +Route4Script: ; 55658 (15:5658) + call EnableAutoTextBoxDrawing + ld hl, Route4TrainerHeaders + ld de, Route4ScriptPointers + ld a, [W_ROUTE4CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_ROUTE4CURSCRIPT], a + ret + +Route4ScriptPointers: ; 5566b (15:566b) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +Route4TextPointers: ; 55671 (15:5671) + dw Route4Text1 + dw Route4Text2 + dw Predef5CText + dw PokeCenterSignText + dw Route4Text5 + dw Route4Text6 + +Route4TrainerHeaders: ; 5567d (15:567d) +Route4TrainerHeader0: ; 5567d (15:567d) + db $2 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7c5 ; flag's byte + dw Route4BattleText1 ; 0x5699 TextBeforeBattle + dw Route4AfterBattleText1 ; 0x56a3 TextAfterBattle + dw Route4EndBattleText1 ; 0x569e TextEndBattle + dw Route4EndBattleText1 ; 0x569e TextEndBattle + + db $ff + +Route4Text1: ; 5568a (15:568a) + TX_FAR _Route4Text1 + db "@" + +Route4Text2: ; 5568f (15:568f) + db $08 ; asm + ld hl, Route4TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +Route4BattleText1: ; 55699 (15:5699) + TX_FAR _Route4BattleText1 + db "@" + +Route4EndBattleText1: ; 5569e (15:569e) + TX_FAR _Route4EndBattleText1 + db "@" + +Route4AfterBattleText1: ; 556a3 (15:56a3) + TX_FAR _Route4AfterBattleText1 + db "@" + +Route4Text5: ; 556a8 (15:56a8) + TX_FAR _Route4Text5 + db "@" + +Route4Text6: ; 556ad (15:56ad) + TX_FAR _Route4Text6 + db "@" diff --git a/scripts/route5.asm b/scripts/route5.asm new file mode 100755 index 00000000..1fad3939 --- /dev/null +++ b/scripts/route5.asm @@ -0,0 +1,9 @@ +Route5Script: ; 556b2 (15:56b2) + jp EnableAutoTextBoxDrawing + +Route5TextPointers: ; 556b5 (15:56b5) + dw Route5Text1 + +Route5Text1: ; 556b7 (15:56b7) + TX_FAR _Route5Text1 + db "@" diff --git a/scripts/route5gate.asm b/scripts/route5gate.asm new file mode 100755 index 00000000..ea5feda0 --- /dev/null +++ b/scripts/route5gate.asm @@ -0,0 +1,117 @@ +Route5GateScript: ; 1df33 (7:5f33) + call EnableAutoTextBoxDrawing + ld a, [W_ROUTE5GATECURSCRIPT] + ld hl, Route5GateScriptPointers + jp CallFunctionInTable + +Route5GateScriptPointers: ; 1df3f (7:5f3f) + dw Route5GateScript0 + dw Route5GateScript1 + +Route5GateScript_1df43: ; 1df43 (7:5f43) + ld a, $40 + ld [$ccd3], a + ld a, $1 + ld [$cd38], a + jp Func_3486 + +Route5GateScript0: ; 1df50 (7:5f50) + ld a, [$d728] + bit 6, a + ret nz + ld hl, CoordsData_1df8f + call ArePlayerCoordsInArray + ret nc + ld a, $2 + ld [$d528], a + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + callba RemoveGuardDrink + ld a, [$ff00+$db] + and a + jr nz, .asm_1df82 ; 0x1df70 $10 + ld a, $2 + ld [$ff00+$8c], a + call DisplayTextID + call Route5GateScript_1df43 + ld a, $1 + ld [W_ROUTE5GATECURSCRIPT], a + ret +.asm_1df82 + ld a, $3 + ld [$ff00+$8c], a + call DisplayTextID + ld hl, $d728 + set 6, [hl] + ret + +CoordsData_1df8f: ; 1df8f (7:5f8f) + db 3,3 + db 3,4 + db $ff + +Route5GateScript1: ; 1df94 (7:5f94) + ld a, [$cd38] + and a + ret nz + call Delay3 + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [W_ROUTE5GATECURSCRIPT], a + ret + +Route5GateTextPointers: ; 1dfa4 (7:5fa4) + dw Route5GateText1 + dw Route5GateText2 + dw Route5GateText3 + +Route8GateText1: ; 1dfaa (7:5faa) +Route7GateText1: ; 1dfaa (7:5faa) +Route6GateText1: ; 1dfaa (7:5faa) +Route5GateText1: ; 1dfaa (7:5faa) + db $8 + ld a, [$d728] + bit 6, a + jr nz, .asm_88856 ; 0x1dfb0 $2c + callba RemoveGuardDrink + ld a, [$ff00+$db] + and a + jr nz, .asm_768a2 ; 0x1dfbd $11 + ld hl, Route5GateText2 + call PrintText + call Route5GateScript_1df43 + ld a, $1 + ld [W_ROUTE5GATECURSCRIPT], a + jp TextScriptEnd +.asm_768a2 ; 0x1dfd0 + ld hl, Route5GateText3 + call PrintText + ld hl, $d728 + set 6, [hl] + jp TextScriptEnd +.asm_88856 ; 0x1dfde + ld hl, SaffronGateText_1dff6 + call PrintText + jp TextScriptEnd + +Route8GateText2: ; 1dfe7 (7:5fe7) +Route7GateText2: ; 1dfe7 (7:5fe7) +Route6GateText2: ; 1dfe7 (7:5fe7) +Route5GateText2: ; 1dfe7 (7:5fe7) + TX_FAR _SaffronGateText_1dfe7 + db "@" + +Route8GateText3: ; 1dfec (7:5fec) +Route7GateText3: ; 1dfec (7:5fec) +Route6GateText3: ; 1dfec (7:5fec) +Route5GateText3: ; 1dfec (7:5fec) + TX_FAR _SaffronGateText_8aaa9 ; 0x8aaa9 + db $11 + TX_FAR _SaffronGateText_1dff1 ; 0x8aaef + db "@" + +SaffronGateText_1dff6: ; 1dff6 (7:5ff6) + TX_FAR _SaffronGateText_1dff6 + db "@" + + diff --git a/scripts/route6.asm b/scripts/route6.asm new file mode 100755 index 00000000..a1cf52a8 --- /dev/null +++ b/scripts/route6.asm @@ -0,0 +1,187 @@ +Route6Script: ; 590b0 (16:50b0) + call EnableAutoTextBoxDrawing + ld hl, Route6TrainerHeaders + ld de, Route6ScriptPointers + ld a, [W_ROUTE6CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_ROUTE6CURSCRIPT], a + ret + +Route6ScriptPointers: ; 590c3 (16:50c3) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +Route6TextPointers: ; 590c9 (16:50c9) + dw Route6Text1 + dw Route6Text2 + dw Route6Text3 + dw Route6Text4 + dw Route6Text5 + dw Route6Text6 + dw Route6Text7 + +Route6TrainerHeaders: ; 590d7 (16:50d7) +Route6TrainerHeader0: ; 590d7 (16:50d7) + db $1 ; flag's bit + db ($0 << 4) ; trainer's view range + dw $d7c9 ; flag's byte + dw Route6BattleText1 ; 0x512a TextBeforeBattle + dw Route6AfterBattleText1 ; 0x5134 TextAfterBattle + dw Route6EndBattleText1 ; 0x512f TextEndBattle + dw Route6EndBattleText1 ; 0x512f TextEndBattle + +Route6TrainerHeader1: ; 590e3 (16:50e3) + db $2 ; flag's bit + db ($0 << 4) ; trainer's view range + dw $d7c9 ; flag's byte + dw Route6BattleText2 ; 0x5143 TextBeforeBattle + dw Route6AfterBattleText1 ; 0x5134 TextAfterBattle + dw Route6EndBattleText2 ; 0x5148 TextEndBattle + dw Route6EndBattleText2 ; 0x5148 TextEndBattle + +Route6TrainerHeader2: ; 590ef (16:50ef) + db $3 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7c9 ; flag's byte + dw Route6BattleText3 ; 0x5157 TextBeforeBattle + dw Route6AfterBattleText3 ; 0x5161 TextAfterBattle + dw Route6EndBattleText3 ; 0x515c TextEndBattle + dw Route6EndBattleText3 ; 0x515c TextEndBattle + +Route6TrainerHeader3: ; 590fb (16:50fb) + db $4 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7c9 ; flag's byte + dw Route6BattleText4 ; 0x5170 TextBeforeBattle + dw Route6AfterBattleText4 ; 0x517a TextAfterBattle + dw Route6EndBattleText4 ; 0x5175 TextEndBattle + dw Route6EndBattleText4 ; 0x5175 TextEndBattle + +Route6TrainerHeader4: ; 59107 (16:5107) + db $5 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7c9 ; flag's byte + dw Route6BattleText5 ; 0x5189 TextBeforeBattle + dw Route6AfterBattleText5 ; 0x5193 TextAfterBattle + dw Route6EndBattleText5 ; 0x518e TextEndBattle + dw Route6EndBattleText5 ; 0x518e TextEndBattle + +Route6TrainerHeader5: ; 59113 (16:5113) + db $6 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7c9 ; flag's byte + dw Route6BattleText6 ; 0x51a2 TextBeforeBattle + dw Route6AfterBattleText6 ; 0x51ac TextAfterBattle + dw Route6EndBattleText6 ; 0x51a7 TextEndBattle + dw Route6EndBattleText6 ; 0x51a7 TextEndBattle + + db $ff + +Route6Text1: ; 59120 (16:5120) + db $8 + ld hl, Route6TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +Route6BattleText1: ; 5912a (16:512a) + TX_FAR _Route6BattleText1 + db "@" + +Route6EndBattleText1: ; 5912f (16:512f) + TX_FAR _Route6EndBattleText1 + db "@" + +Route6AfterBattleText1: ; 59134 (16:5134) + TX_FAR _Route6AfterBattleText1 + db "@" + +Route6Text2: ; 59139 (16:5139) + db $08 ; asm + ld hl, Route6TrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +Route6BattleText2: ; 59143 (16:5143) + TX_FAR _Route6BattleText2 + db "@" + +Route6EndBattleText2: ; 59148 (16:5148) + TX_FAR _Route6EndBattleText2 + db "@" + +Route6Text3: ; 5914d (16:514d) + db $08 ; asm + ld hl, Route6TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +Route6BattleText3: ; 59157 (16:5157) + TX_FAR _Route6BattleText3 + db "@" + +Route6EndBattleText3: ; 5915c (16:515c) + TX_FAR _Route6EndBattleText3 + db "@" + +Route6AfterBattleText3: ; 59161 (16:5161) + TX_FAR _Route6AfterBattleText3 + db "@" + +Route6Text4: ; 59166 (16:5166) + db $08 ; asm + ld hl, Route6TrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +Route6BattleText4: ; 59170 (16:5170) + TX_FAR _Route6BattleText4 + db "@" + +Route6EndBattleText4: ; 59175 (16:5175) + TX_FAR _Route6EndBattleText4 + db "@" + +Route6AfterBattleText4: ; 5917a (16:517a) + TX_FAR _Route6AfterBattleText4 + db "@" + +Route6Text5: ; 5917f (16:517f) + db $08 ; asm + ld hl, Route6TrainerHeader4 + call TalkToTrainer + jp TextScriptEnd + +Route6BattleText5: ; 59189 (16:5189) + TX_FAR _Route6BattleText5 + db "@" + +Route6EndBattleText5: ; 5918e (16:518e) + TX_FAR _Route6EndBattleText5 + db "@" + +Route6AfterBattleText5: ; 59193 (16:5193) + TX_FAR _Route6AfterBattleText5 + db "@" + +Route6Text6: ; 59198 (16:5198) + db $08 ; asm + ld hl, Route6TrainerHeader5 + call TalkToTrainer + jp TextScriptEnd + +Route6BattleText6: ; 591a2 (16:51a2) + TX_FAR _Route6BattleText6 + db "@" + +Route6EndBattleText6: ; 591a7 (16:51a7) + TX_FAR _Route6EndBattleText6 + db "@" + +Route6AfterBattleText6: ; 591ac (16:51ac) + TX_FAR _Route6AfterBattleText6 + db "@" + +Route6Text7: ; 591b1 (16:51b1) + TX_FAR _Route6Text7 + db "@" diff --git a/scripts/route6gate.asm b/scripts/route6gate.asm new file mode 100755 index 00000000..22fe5ede --- /dev/null +++ b/scripts/route6gate.asm @@ -0,0 +1,70 @@ +Route6GateScript: ; 1e03d (7:603d) + call EnableAutoTextBoxDrawing + ld hl, Route6GateScriptPointers + ld a, [W_ROUTE6GATECURSCRIPT] + call CallFunctionInTable + ret + +Route6GateScriptPointers: ; 1e04a (7:604a) + dw Route6GateScript0 + dw Route6GateScript1 + +Route6GateScript0: ; 1e04e (7:604e) + ld a, [$d728] + bit 6, a + ret nz + ld hl, CoordsData_1e08c + call ArePlayerCoordsInArray + ret nc + ld a, $1 + ld [$d528], a + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + callba RemoveGuardDrink + ld a, [$ffdb] + and a + jr nz, .asm_1e080 ; 0x1e06e $10 + ld a, $2 + ld [$ff8c], a + call DisplayTextID + call Route6GateScript_1e0a1 + ld a, $1 + ld [W_ROUTE6GATECURSCRIPT], a + ret +.asm_1e080 + ld hl, $d728 + set 6, [hl] + ld a, $3 + ld [$ff8c], a + jp DisplayTextID + +CoordsData_1e08c: ; 1e08c (7:608c) + db $02,$03 + db $02,$04,$FF + +Route6GateScript1: ; 1e091 (7:6091) + ld a, [$cd38] + and a + ret nz + call Delay3 + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [W_ROUTE6GATECURSCRIPT], a + ret + +Route6GateScript_1e0a1: ; 1e0a1 (7:60a1) + ld hl, $d730 + set 7, [hl] + ld a, $80 + ld [$ccd3], a + ld a, $1 + ld [$cd38], a + xor a + ld [$c206], a + ld [$cd3b], a + ret + +Route6GateTextPointers: ; 1e0b8 (7:60b8) + dw Route6GateText1 + dw Route6GateText2 + dw Route6GateText3 diff --git a/scripts/route7.asm b/scripts/route7.asm new file mode 100755 index 00000000..484fc539 --- /dev/null +++ b/scripts/route7.asm @@ -0,0 +1,9 @@ +Route7Script: ; 48152 (12:4152) + jp EnableAutoTextBoxDrawing + +Route7TextPointers: ; 48155 (12:4155) + dw Route7Text1 + +Route7Text1: ; 48157 (12:4157) + TX_FAR _Route7Text1 + db "@" diff --git a/scripts/route7gate.asm b/scripts/route7gate.asm new file mode 100755 index 00000000..5597c784 --- /dev/null +++ b/scripts/route7gate.asm @@ -0,0 +1,73 @@ +Route7GateScript: ; 1e100 (7:6100) + call EnableAutoTextBoxDrawing + ld a, [W_ROUTE7GATECURSCRIPT] + ld hl, Route7GateScriptPointers + call CallFunctionInTable + ret + +Route7GateScriptPointers: ; 1e10d (7:610d) + dw Route7GateScript0 + dw Route7GateScript1 + +Route7GateScript_1e111: ; 1e111 (7:6111) + ld hl, $d730 + set 7, [hl] + ld a, $20 + ld [$ccd3], a + ld a, $1 + ld [$cd38], a + xor a + ld [$c206], a + ld [$cd3b], a + ret + +Route7GateScript0: ; 1e128 (7:6128) + ld a, [$d728] + bit 6, a + ret nz + ld hl, CoordsData_1e167 + call ArePlayerCoordsInArray + ret nc + ld a, $8 + ld [$d528], a + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + callba RemoveGuardDrink + ld a, [$ffdb] + and a + jr nz, .asm_1e15a ; 0x1e148 $10 + ld a, $2 + ld [$ff8c], a + call DisplayTextID + call Route7GateScript_1e111 + ld a, $1 + ld [W_ROUTE7GATECURSCRIPT], a + ret +.asm_1e15a + ld a, $3 + ld [$ff8c], a + call DisplayTextID + ld hl, $d728 + set 6, [hl] + ret + +CoordsData_1e167: ; 1e167 (7:6167) + db 3,3 + db 4,3 + db $ff + +Route7GateScript1: ; 1e16c (7:616c) + ld a, [$cd38] + and a + ret nz + call Delay3 + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [W_ROUTE7GATECURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +Route7GateTextPointers: ; 1e17f (7:617f) + dw Route7GateText1 + dw Route7GateText2 + dw Route7GateText3 diff --git a/scripts/route8.asm b/scripts/route8.asm new file mode 100755 index 00000000..eebc96ff --- /dev/null +++ b/scripts/route8.asm @@ -0,0 +1,275 @@ +Route8Script: ; 591b6 (16:51b6) + call EnableAutoTextBoxDrawing + ld hl, Route8TrainerHeaders + ld de, Route8ScriptPointers + ld a, [W_ROUTE8CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_ROUTE8CURSCRIPT], a + ret + +Route8ScriptPointers: ; 591c9 (16:51c9) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +Route8TextPointers: ; 591cf (16:51cf) + dw Route8Text1 + dw Route8Text2 + dw Route8Text3 + dw Route8Text4 + dw Route8Text5 + dw Route8Text6 + dw Route8Text7 + dw Route8Text8 + dw Route8Text9 + dw Route8Text10 + +Route8TrainerHeaders: ; 591e3 (16:51e3) +Route8TrainerHeader0: ; 591e3 (16:51e3) + db $1 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7cd ; flag's byte + dw Route8BattleText1 ; 0x525a TextBeforeBattle + dw Route8AfterBattleText1 ; 0x5264 TextAfterBattle + dw Route8EndBattleText1 ; 0x525f TextEndBattle + dw Route8EndBattleText1 ; 0x525f TextEndBattle + +Route8TrainerHeader1: ; 591ef (16:51ef) + db $2 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7cd ; flag's byte + dw Route8BattleText2 ; 0x5273 TextBeforeBattle + dw Route8AfterBattleText2 ; 0x527d TextAfterBattle + dw Route8EndBattleText2 ; 0x5278 TextEndBattle + dw Route8EndBattleText2 ; 0x5278 TextEndBattle + +Route8TrainerHeader2: ; 591fb (16:51fb) + db $3 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7cd ; flag's byte + dw Route8BattleText3 ; 0x528c TextBeforeBattle + dw Route8AfterBattleText3 ; 0x5296 TextAfterBattle + dw Route8EndBattleText3 ; 0x5291 TextEndBattle + dw Route8EndBattleText3 ; 0x5291 TextEndBattle + +Route8TrainerHeader3: ; 59207 (16:5207) + db $4 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7cd ; flag's byte + dw Route8BattleText4 ; 0x52a5 TextBeforeBattle + dw Route8AfterBattleText4 ; 0x52af TextAfterBattle + dw Route8EndBattleText4 ; 0x52aa TextEndBattle + dw Route8EndBattleText4 ; 0x52aa TextEndBattle + +Route8TrainerHeader4: ; 59213 (16:5213) + db $5 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7cd ; flag's byte + dw Route8BattleText5 ; 0x52be TextBeforeBattle + dw Route8AfterBattleText5 ; 0x52c8 TextAfterBattle + dw Route8EndBattleText5 ; 0x52c3 TextEndBattle + dw Route8EndBattleText5 ; 0x52c3 TextEndBattle + +Route8TrainerHeader5: ; 5921f (16:521f) + db $6 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7cd ; flag's byte + dw Route8BattleText6 ; 0x52d7 TextBeforeBattle + dw Route8AfterBattleText6 ; 0x52e1 TextAfterBattle + dw Route8EndBattleText6 ; 0x52dc TextEndBattle + dw Route8EndBattleText6 ; 0x52dc TextEndBattle + +Route8TrainerHeader6: ; 5922b (16:522b) + db $7 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7cd ; flag's byte + dw Route8BattleText7 ; 0x52f0 TextBeforeBattle + dw Route8AfterBattleText7 ; 0x52fa TextAfterBattle + dw Route8EndBattleText7 ; 0x52f5 TextEndBattle + dw Route8EndBattleText7 ; 0x52f5 TextEndBattle + +Route8TrainerHeader7: ; 59237 (16:5237) + db $8 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7cd ; flag's byte + dw Route8BattleText8 ; 0x5309 TextBeforeBattle + dw Route8AfterBattleText8 ; 0x5313 TextAfterBattle + dw Route8EndBattleText8 ; 0x530e TextEndBattle + dw Route8EndBattleText8 ; 0x530e TextEndBattle + +Route8TrainerHeader8: ; 59243 (16:5243) + db $9 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7cd ; flag's byte + dw Route8BattleText9 ; 0x5322 TextBeforeBattle + dw Route8AfterBattleText9 ; 0x532c TextAfterBattle + dw Route8EndBattleText9 ; 0x5327 TextEndBattle + dw Route8EndBattleText9 ; 0x5327 TextEndBattle + + db $ff + +Route8Text1: ; 59250 (16:5250) + db $8 + ld hl, Route8TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +Route8BattleText1: ; 5925a (16:525a) + TX_FAR _Route8BattleText1 + db "@" + +Route8EndBattleText1: ; 5925f (16:525f) + TX_FAR _Route8EndBattleText1 + db "@" + +Route8AfterBattleText1: ; 59264 (16:5264) + TX_FAR _Route8AfterBattleText1 + db "@" + +Route8Text2: ; 59269 (16:5269) + db $08 ; asm + ld hl, Route8TrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +Route8BattleText2: ; 59273 (16:5273) + TX_FAR _Route8BattleText2 + db "@" + +Route8EndBattleText2: ; 59278 (16:5278) + TX_FAR _Route8EndBattleText2 + db "@" + +Route8AfterBattleText2: ; 5927d (16:527d) + TX_FAR _Route8AfterBattleText2 + db "@" + +Route8Text3: ; 59282 (16:5282) + db $08 ; asm + ld hl, Route8TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +Route8BattleText3: ; 5928c (16:528c) + TX_FAR _Route8BattleText3 + db "@" + +Route8EndBattleText3: ; 59291 (16:5291) + TX_FAR _Route8EndBattleText3 + db "@" + +Route8AfterBattleText3: ; 59296 (16:5296) + TX_FAR _Route8AfterBattleText3 + db "@" + +Route8Text4: ; 5929b (16:529b) + db $08 ; asm + ld hl, Route8TrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +Route8BattleText4: ; 592a5 (16:52a5) + TX_FAR _Route8BattleText4 + db "@" + +Route8EndBattleText4: ; 592aa (16:52aa) + TX_FAR _Route8EndBattleText4 + db "@" + +Route8AfterBattleText4: ; 592af (16:52af) + TX_FAR _Route8AfterBattleText4 + db "@" + +Route8Text5: ; 592b4 (16:52b4) + db $08 ; asm + ld hl, Route8TrainerHeader4 + call TalkToTrainer + jp TextScriptEnd + +Route8BattleText5: ; 592be (16:52be) + TX_FAR _Route8BattleText5 + db "@" + +Route8EndBattleText5: ; 592c3 (16:52c3) + TX_FAR _Route8EndBattleText5 + db "@" + +Route8AfterBattleText5: ; 592c8 (16:52c8) + TX_FAR _Route8AfterBattleText5 + db "@" + +Route8Text6: ; 592cd (16:52cd) + db $08 ; asm + ld hl, Route8TrainerHeader5 + call TalkToTrainer + jp TextScriptEnd + +Route8BattleText6: ; 592d7 (16:52d7) + TX_FAR _Route8BattleText6 + db "@" + +Route8EndBattleText6: ; 592dc (16:52dc) + TX_FAR _Route8EndBattleText6 + db "@" + +Route8AfterBattleText6: ; 592e1 (16:52e1) + TX_FAR _Route8AfterBattleText6 + db "@" + +Route8Text7: ; 592e6 (16:52e6) + db $08 ; asm + ld hl, Route8TrainerHeader6 + call TalkToTrainer + jp TextScriptEnd + +Route8BattleText7: ; 592f0 (16:52f0) + TX_FAR _Route8BattleText7 + db "@" + +Route8EndBattleText7: ; 592f5 (16:52f5) + TX_FAR _Route8EndBattleText7 + db "@" + +Route8AfterBattleText7: ; 592fa (16:52fa) + TX_FAR _Route8AfterBattleText7 + db "@" + +Route8Text8: ; 592ff (16:52ff) + db $08 ; asm + ld hl, Route8TrainerHeader7 + call TalkToTrainer + jp TextScriptEnd + +Route8BattleText8: ; 59309 (16:5309) + TX_FAR _Route8BattleText8 + db "@" + +Route8EndBattleText8: ; 5930e (16:530e) + TX_FAR _Route8EndBattleText8 + db "@" + +Route8AfterBattleText8: ; 59313 (16:5313) + TX_FAR _Route8AfterBattleText8 + db "@" + +Route8Text9: ; 59318 (16:5318) + db $08 ; asm + ld hl, Route8TrainerHeader8 + call TalkToTrainer + jp TextScriptEnd + +Route8BattleText9: ; 59322 (16:5322) + TX_FAR _Route8BattleText9 + db "@" + +Route8EndBattleText9: ; 59327 (16:5327) + TX_FAR _Route8EndBattleText9 + db "@" + +Route8AfterBattleText9: ; 5932c (16:532c) + TX_FAR _Route8AfterBattleText9 + db "@" + +Route8Text10: ; 59331 (16:5331) + TX_FAR _Route8Text10 + db "@" diff --git a/scripts/route8gate.asm b/scripts/route8gate.asm new file mode 100755 index 00000000..426b532e --- /dev/null +++ b/scripts/route8gate.asm @@ -0,0 +1,70 @@ +Route8GateScript: ; 1e1c7 (7:61c7) + call EnableAutoTextBoxDrawing + ld hl, Route8GateScriptPointers + ld a, [W_ROUTE8GATECURSCRIPT] + jp CallFunctionInTable + +Route8GateScriptPointers: ; 1e1d3 (7:61d3) + dw Route8GateScript0 + dw Route8GateScript1 + +Route8GateScript_1e1d7: ; 1e1d7 (7:61d7) + ld hl, $d730 + set 7, [hl] + ld a, $10 + ld [$ccd3], a + ld a, $1 + ld [$cd38], a + xor a + ld [$c206], a + ld [$cd3b], a + ret + +Route8GateScript0: ; 1e1ee (7:61ee) + ld a, [$d728] + bit 6, a + ret nz + ld hl, CoordsData_1e22c + call ArePlayerCoordsInArray + ret nc + ld a, $2 + ld [$d528], a + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + callba RemoveGuardDrink + ld a, [$ffdb] + and a + jr nz, .asm_1e220 ; 0x1e20e $10 + ld a, $2 + ld [$ff8c], a + call DisplayTextID + call Route8GateScript_1e1d7 + ld a, $1 + ld [W_ROUTE8GATECURSCRIPT], a + ret +.asm_1e220 + ld hl, $d728 + set 6, [hl] + ld a, $3 + ld [$ff8c], a + jp DisplayTextID + +CoordsData_1e22c: ; 1e22c (7:622c) + db 3,2 + db 4,2 + db $ff + +Route8GateScript1: ; 1e231 (7:6231) + ld a, [$cd38] + and a + ret nz + call Delay3 + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [W_ROUTE8GATECURSCRIPT], a + ret + +Route8GateTextPointers: ; 1e241 (7:6241) + dw Route8GateText1 + dw Route8GateText2 + dw Route8GateText3 diff --git a/scripts/route9.asm b/scripts/route9.asm new file mode 100755 index 00000000..852c09b2 --- /dev/null +++ b/scripts/route9.asm @@ -0,0 +1,269 @@ +Route9Script: ; 556bc (15:56bc) + call EnableAutoTextBoxDrawing + ld hl, Route9TrainerHeaders + ld de, Route9ScriptPointers + ld a, [W_ROUTE9CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_ROUTE9CURSCRIPT], a + ret + +Route9ScriptPointers: ; 556cf (15:56cf) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +Route9TextPointers: ; 556d5 (15:56d5) + dw Route9Text1 + dw Route9Text2 + dw Route9Text3 + dw Route9Text4 + dw Route9Text5 + dw Route9Text6 + dw Route9Text7 + dw Route9Text8 + dw Route9Text9 + dw Predef5CText + dw Route9Text11 + +Route9TrainerHeaders: ; 556eb (15:56eb) +Route9TrainerHeader0: ; 556eb (15:56eb) + db $1 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7cf ; flag's byte + dw Route9BattleText1 ; 0x5792 TextBeforeBattle + dw Route9AfterBattleText1 ; 0x579c TextAfterBattle + dw Route9EndBattleText1 ; 0x5797 TextEndBattle + dw Route9EndBattleText1 ; 0x5797 TextEndBattle + +Route9TrainerHeader2: ; 556f7 (15:56f7) + db $2 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7cf ; flag's byte + dw Route9BattleText2 ; 0x57a1 TextBeforeBattle + dw Route9AfterBattleText2 ; 0x57ab TextAfterBattle + dw Route9EndBattleText2 ; 0x57a6 TextEndBattle + dw Route9EndBattleText2 ; 0x57a6 TextEndBattle + +Route9TrainerHeader3: ; 55703 (15:5703) + db $3 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7cf ; flag's byte + dw Route9BattleText3 ; 0x57b0 TextBeforeBattle + dw Route9AfterBattleText3 ; 0x57ba TextAfterBattle + dw Route9EndBattleText3 ; 0x57b5 TextEndBattle + dw Route9EndBattleText3 ; 0x57b5 TextEndBattle + +Route9TrainerHeader4: ; 5570f (15:570f) + db $4 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7cf ; flag's byte + dw Route9BattleText4 ; 0x57bf TextBeforeBattle + dw Route9AfterBattleText4 ; 0x57c9 TextAfterBattle + dw Route9EndBattleText4 ; 0x57c4 TextEndBattle + dw Route9EndBattleText4 ; 0x57c4 TextEndBattle + +Route9TrainerHeader5: ; 5571b (15:571b) + db $5 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7cf ; flag's byte + dw Route9BattleText5 ; 0x57ce TextBeforeBattle + dw Route9AfterBattleText5 ; 0x57d8 TextAfterBattle + dw Route9EndBattleText5 ; 0x57d3 TextEndBattle + dw Route9EndBattleText5 ; 0x57d3 TextEndBattle + +Route9TrainerHeader6: ; 55727 (15:5727) + db $6 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7cf ; flag's byte + dw Route9BattleText6 ; 0x57dd TextBeforeBattle + dw Route9AfterBattleText6 ; 0x57e7 TextAfterBattle + dw Route9EndBattleText6 ; 0x57e2 TextEndBattle + dw Route9EndBattleText6 ; 0x57e2 TextEndBattle + +Route9TrainerHeader7: ; 55733 (15:5733) + db $7 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7cf ; flag's byte + dw Route9BattleText7 ; 0x57ec TextBeforeBattle + dw Route9AfterBattleText7 ; 0x57f6 TextAfterBattle + dw Route9EndBattleText7 ; 0x57f1 TextEndBattle + dw Route9EndBattleText7 ; 0x57f1 TextEndBattle + +Route9TrainerHeader8: ; 5573f (15:573f) + db $8 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7cf ; flag's byte + dw Route9BattleText8 ; 0x57fb TextBeforeBattle + dw Route9AfterBattleText8 ; 0x5805 TextAfterBattle + dw Route9EndBattleText8 ; 0x5800 TextEndBattle + dw Route9EndBattleText8 ; 0x5800 TextEndBattle + +Route9TrainerHeader9: ; 5574b (15:574b) + db $9 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d7cf ; flag's byte + dw Route9BattleText9 ; 0x580a TextBeforeBattle + dw Route9AfterBattleText9 ; 0x5814 TextAfterBattle + dw Route9EndBattleText9 ; 0x580f TextEndBattle + dw Route9EndBattleText9 ; 0x580f TextEndBattle + + db $ff + +Route9Text1: ; 55758 (15:5758) + db $8 ; asm + ld hl, Route9TrainerHeader0 + jr asm_8be3d ; 0x5575c $2e + +Route9Text2: ; 5575e (15:575e) + db $8 ; asm + ld hl, Route9TrainerHeader2 + jr asm_8be3d ; 0x55762 $28 + +Route9Text3: ; 55764 (15:5764) + db $8 ; asm + ld hl, Route9TrainerHeader3 + jr asm_8be3d ; 0x55768 $22 + +Route9Text4: ; 5576a (15:576a) + db $8 ; asm + ld hl, Route9TrainerHeader4 + jr asm_8be3d ; 0x5576e $1c + +Route9Text5: ; 55770 (15:5770) + db $8 ; asm + ld hl, Route9TrainerHeader5 + jr asm_8be3d ; 0x55774 $16 + +Route9Text6: ; 55776 (15:5776) + db $8 ; asm + ld hl, Route9TrainerHeader6 + jr asm_8be3d ; 0x5577a $10 + +Route9Text7: ; 5577c (15:577c) + db $8 ; asm + ld hl, Route9TrainerHeader7 + jr asm_8be3d ; 0x55780 $a + +Route9Text8: ; 55782 (15:5782) + db $8 ; asm + ld hl, Route9TrainerHeader8 + jr asm_8be3d ; 0x55786 $4 + +Route9Text9: ; 55788 (15:5788) + db $8 ; asm + ld hl, Route9TrainerHeader9 +asm_8be3d: ; 5578c (15:578c) + call TalkToTrainer + jp TextScriptEnd + +Route9BattleText1: ; 55792 (15:5792) + TX_FAR _Route9BattleText1 + db "@" + +Route9EndBattleText1: ; 55797 (15:5797) + TX_FAR _Route9EndBattleText1 + db "@" + +Route9AfterBattleText1: ; 5579c (15:579c) + TX_FAR _Route9AfterBattleText1 + db "@" + +Route9BattleText2: ; 557a1 (15:57a1) + TX_FAR _Route9BattleText2 + db "@" + +Route9EndBattleText2: ; 557a6 (15:57a6) + TX_FAR _Route9EndBattleText2 + db "@" + +Route9AfterBattleText2: ; 557ab (15:57ab) + TX_FAR _Route9AfterBattleText2 + db "@" + +Route9BattleText3: ; 557b0 (15:57b0) + TX_FAR _Route9BattleText3 + db "@" + +Route9EndBattleText3: ; 557b5 (15:57b5) + TX_FAR _Route9EndBattleText3 + db "@" + +Route9AfterBattleText3: ; 557ba (15:57ba) + TX_FAR _Route9AfterBattleText3 + db "@" + +Route9BattleText4: ; 557bf (15:57bf) + TX_FAR _Route9BattleText4 + db "@" + +Route9EndBattleText4: ; 557c4 (15:57c4) + TX_FAR _Route9EndBattleText4 + db "@" + +Route9AfterBattleText4: ; 557c9 (15:57c9) + TX_FAR _Route9AfterBattleText4 + db "@" + +Route9BattleText5: ; 557ce (15:57ce) + TX_FAR _Route9BattleText5 + db "@" + +Route9EndBattleText5: ; 557d3 (15:57d3) + TX_FAR _Route9EndBattleText5 + db "@" + +Route9AfterBattleText5: ; 557d8 (15:57d8) + TX_FAR _Route9AfterBattleText5 + db "@" + +Route9BattleText6: ; 557dd (15:57dd) + TX_FAR _Route9BattleText6 + db "@" + +Route9EndBattleText6: ; 557e2 (15:57e2) + TX_FAR _Route9EndBattleText6 + db "@" + +Route9AfterBattleText6: ; 557e7 (15:57e7) + TX_FAR _Route9AfterBattleText6 + db "@" + +Route9BattleText7: ; 557ec (15:57ec) + TX_FAR _Route9BattleText7 + db "@" + +Route9EndBattleText7: ; 557f1 (15:57f1) + TX_FAR _Route9EndBattleText7 + db "@" + +Route9AfterBattleText7: ; 557f6 (15:57f6) + TX_FAR _Route9AfterBattleText7 + db "@" + +Route9BattleText8: ; 557fb (15:57fb) + TX_FAR _Route9BattleText8 + db "@" + +Route9EndBattleText8: ; 55800 (15:5800) + TX_FAR _Route9EndBattleText8 + db "@" + +Route9AfterBattleText8: ; 55805 (15:5805) + TX_FAR _Route9AfterBattleText8 + db "@" + +Route9BattleText9: ; 5580a (15:580a) + TX_FAR _Route9BattleText9 + db "@" + +Route9EndBattleText9: ; 5580f (15:580f) + TX_FAR _Route9EndBattleText9 + db "@" + +Route9AfterBattleText9: ; 55814 (15:5814) + TX_FAR _Route9AfterBattleText9 + db "@" + +Route9Text11: ; 55819 (15:5819) + TX_FAR _Route9Text11 + db "@" diff --git a/scripts/safarizonecenter.asm b/scripts/safarizonecenter.asm new file mode 100755 index 00000000..6ff60ec6 --- /dev/null +++ b/scripts/safarizonecenter.asm @@ -0,0 +1,15 @@ +SafariZoneCenterScript: ; 45bb2 (11:5bb2) + jp EnableAutoTextBoxDrawing + +SafariZoneCenterTextPointers: ; 45bb5 (11:5bb5) + dw Predef5CText + dw SafariZoneCenterText2 + dw SafariZoneCenterText3 + +SafariZoneCenterText2: ; 45bbb (11:5bbb) + TX_FAR _SafariZoneCenterText2 + db "@" + +SafariZoneCenterText3: ; 45bc0 (11:5bc0) + TX_FAR _SafariZoneCenterText3 + db "@" diff --git a/scripts/safarizoneeast.asm b/scripts/safarizoneeast.asm new file mode 100755 index 00000000..3e6df139 --- /dev/null +++ b/scripts/safarizoneeast.asm @@ -0,0 +1,23 @@ +SafariZoneEastScript: ; 4586b (11:586b) + jp EnableAutoTextBoxDrawing + +SafariZoneEastTextPointers: ; 4586e (11:586e) + dw Predef5CText + dw Predef5CText + dw Predef5CText + dw Predef5CText + dw SafariZoneEastText5 + dw SafariZoneEastText6 + dw SafariZoneEastText7 + +SafariZoneEastText5: ; 4587c (11:587c) + TX_FAR _SafariZoneEastText5 + db "@" + +SafariZoneEastText6: ; 45881 (11:5881) + TX_FAR _SafariZoneEastText6 + db "@" + +SafariZoneEastText7: ; 45886 (11:5886) + TX_FAR _SafariZoneEastText7 + db "@" diff --git a/scripts/safarizoneentrance.asm b/scripts/safarizoneentrance.asm new file mode 100755 index 00000000..d1bc0d37 --- /dev/null +++ b/scripts/safarizoneentrance.asm @@ -0,0 +1,300 @@ +SafariZoneEntranceScript: ; 751cd (1d:51cd) + call EnableAutoTextBoxDrawing + ld hl, SafariZoneEntranceScriptPointers + ld a, [W_SAFARIZONEENTRANCECURSCRIPT] + jp CallFunctionInTable + +SafariZoneEntranceScriptPointers: ; 751d9 (1d:51d9) + dw SafariZoneEntranceScript0 + dw SafariZoneEntranceScript1 + dw SafariZoneEntranceScript2 + dw SafariZoneEntranceScript3 + dw SafariZoneEntranceScript4 + dw SafariZoneEntranceScript5 + dw SafariZoneEntranceScript6 + +SafariZoneEntranceScript0: ; 751e7 (1d:51e7) + ld hl, CoordsData_75221 + call ArePlayerCoordsInArray + ret nc + ld a, $3 + ld [$ff8c], a + call DisplayTextID + ld a, $ff + ld [wJoypadForbiddenButtonsMask], a + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + ld a, $c + ld [$c109], a + ld a, [$cd3d] + cp $1 + jr z, .asm_7520f ; 0x75207 $6 + ld a, $2 + ld [W_SAFARIZONEENTRANCECURSCRIPT], a + ret +.asm_7520f + ld a, $10 + ld c, $1 + call SafariZoneEntranceScript_752a3 + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + ld a, $1 + ld [W_SAFARIZONEENTRANCECURSCRIPT], a + ret + +CoordsData_75221: ; 75221 (1d:5221) + db $02,$03 + db $02,$04 + db $FF + +SafariZoneEntranceScript1: ; 75226 (1d:5226) + call SafariZoneEntranceScript_752b4 + ret nz +SafariZoneEntranceScript2: ; 7522a (1d:522a) + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + ld [wJoypadForbiddenButtonsMask], a + call UpdateSprites + ld a, $4 + ld [$ff8c], a + call DisplayTextID + ld a, $ff + ld [wJoypadForbiddenButtonsMask], a + ret + +SafariZoneEntranceScript3: ; 75240 (1d:5240) + call SafariZoneEntranceScript_752b4 + ret nz + xor a + ld [wJoypadForbiddenButtonsMask], a + ld a, $5 + ld [W_SAFARIZONEENTRANCECURSCRIPT], a + ret + +SafariZoneEntranceScript5: ; 7524e (1d:524e) + ld a, $4 + ld [$d528], a + ld hl, $d790 + bit 6, [hl] + res 6, [hl] + jr z, .asm_7527f ; 0x7525a $23 + res 7, [hl] + call UpdateSprites + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + ld a, $6 + ld [$ff8c], a + call DisplayTextID + xor a + ld [$da47], a + ld a, $80 + ld c, $3 + call SafariZoneEntranceScript_752a3 + ld a, $4 + ld [W_SAFARIZONEENTRANCECURSCRIPT], a + jr .asm_75286 ; 0x7527d $7 +.asm_7527f + ld a, $5 + ld [$ff8c], a + call DisplayTextID +.asm_75286 + ret + +SafariZoneEntranceScript4: ; 75287 (1d:5287) + call SafariZoneEntranceScript_752b4 + ret nz + xor a + ld [wJoypadForbiddenButtonsMask], a + ld a, $0 + ld [W_SAFARIZONEENTRANCECURSCRIPT], a + ret + +SafariZoneEntranceScript6: ; 75295 (1d:5295) + call SafariZoneEntranceScript_752b4 + ret nz + call Delay3 + ld a, [$cf0d] + ld [W_SAFARIZONEENTRANCECURSCRIPT], a + ret + +SafariZoneEntranceScript_752a3: ; 752a3 (1d:52a3) + push af + ld b, $0 + ld a, c + ld [$cd38], a + ld hl, $ccd3 + pop af + call FillMemory + jp Func_3486 + +SafariZoneEntranceScript_752b4: ; 752b4 (1d:52b4) + ld a, [$cd38] + and a + ret + +SafariZoneEntranceTextPointers: ; 752b9 (1d:52b9) + dw SafariZoneEntranceText1 + dw SafariZoneEntranceText2 + dw SafariZoneEntranceText3 + dw SafariZoneEntranceText4 + dw SafariZoneEntranceText5 + dw SafariZoneEntranceText6 + +SafariZoneEntranceText3: ; 752c5 (1d:52c5) +SafariZoneEntranceText1: ; 752c5 (1d:52c5) + TX_FAR _SafariZoneEntranceText1 + db "@" + +SafariZoneEntranceText4: ; 752ca (1d:52ca) + TX_FAR SafariZoneEntranceText_9e6e4 ; 0x9e6e4 + db $8 + ld a, $13 + ld [$d125], a + call DisplayTextBoxID + call YesNoChoice + ld a, [$cc26] + and a + jp nz, .asm_75346 + xor a + ld [$ff9f], a + ld a, $5 + ld [$ffa0], a + ld a, $0 + ld [$ffa1], a + call HasEnoughMoney + jr nc, .asm_752f9 ; 0x752ef $8 + ld hl, SafariZoneEntranceText_7536a + call PrintText + jr .asm_7534c ; 0x752f7 $53 +.asm_752f9 + xor a + ld [$cd3d], a + ld a, $5 + ld [$cd3e], a + ld a, $0 + ld [$cd3f], a + ld hl, $cd3f + ld de, $d349 + ld c, $3 + ld a, $c + call Predef + ld a, $13 + ld [$d125], a + call DisplayTextBoxID + ld hl, SafariZoneEntranceText_7535b + call PrintText + ld a, $1e + ld [$da47], a + ld a, 502 / $100 + ld [wSafariSteps], a + ld a, 502 % $100 + ld [wSafariSteps + 1], a + ld a, $40 + ld c, $3 + call SafariZoneEntranceScript_752a3 + ld hl, $d790 + set 7, [hl] + res 6, [hl] + ld a, $3 + ld [W_SAFARIZONEENTRANCECURSCRIPT], a + jr .asm_75358 ; 0x75344 $12 +.asm_75346 + ld hl, SafariZoneEntranceText_75365 + call PrintText +.asm_7534c + ld a, $80 + ld c, $1 + call SafariZoneEntranceScript_752a3 + ld a, $4 + ld [W_SAFARIZONEENTRANCECURSCRIPT], a +.asm_75358 + jp TextScriptEnd + +SafariZoneEntranceText_7535b: ; 7535b (1d:535b) + TX_FAR SafariZoneEntranceText_9e747 ; 0x9e747 + db $0B + +SafariZoneEntranceText_75360: ; 75360 (1d:5360) + TX_FAR _SafariZoneEntranceText_75360 + db "@" + +SafariZoneEntranceText_75365: ; 75365 (1d:5365) + TX_FAR _SafariZoneEntranceText_75365 + db "@" + +SafariZoneEntranceText_7536a: ; 7536a (1d:536a) + TX_FAR _SafariZoneEntranceText_7536a + db "@" + +SafariZoneEntranceText5: ; 7536f (1d:536f) + TX_FAR SafariZoneEntranceText_9e814 ; 0x9e814 + db $8 + call YesNoChoice + ld a, [$cc26] + and a + jr nz, .asm_7539c ; 0x7537b $1f + ld hl, SafariZoneEntranceText_753bb + call PrintText + xor a + ld [$c109], a + ld a, $80 + ld c, $3 + call SafariZoneEntranceScript_752a3 + ld hl, $d790 + res 6, [hl] + res 7, [hl] + ld a, $0 + ld [$cf0d], a + jr .asm_753b3 ; 0x7539a $17 +.asm_7539c + ld hl, SafariZoneEntranceText_753c0 + call PrintText + ld a, $4 + ld [$c109], a + ld a, $40 + ld c, $1 + call SafariZoneEntranceScript_752a3 + ld a, $5 + ld [$cf0d], a +.asm_753b3 + ld a, $6 + ld [W_SAFARIZONEENTRANCECURSCRIPT], a + jp TextScriptEnd + +SafariZoneEntranceText_753bb: ; 753bb (1d:53bb) + TX_FAR _SafariZoneEntranceText_753bb + db "@" + +SafariZoneEntranceText_753c0: ; 753c0 (1d:53c0) + TX_FAR _SafariZoneEntranceText_753c0 + db "@" + +SafariZoneEntranceText6: ; 753c5 (1d:53c5) + TX_FAR _SafariZoneEntranceText_753c5 + db "@" + +SafariZoneEntranceText2: ; 753ca (1d:53ca) + db $08 ; asm + ld hl, SafariZoneEntranceText_753e6 + call PrintText + call YesNoChoice + ld a, [$cc26] + and a + ld hl, SafariZoneEntranceText_753f0 + jr nz, .asm_278a6 ; 0x753db + ld hl, SafariZoneEntranceText_753eb +.asm_278a6 ; 0x753e0 + call PrintText + jp TextScriptEnd + +SafariZoneEntranceText_753e6: ; 753e6 (1d:53e6) + TX_FAR _SafariZoneEntranceText_753e6 + db "@" + +SafariZoneEntranceText_753eb: ; 753eb (1d:53eb) + TX_FAR _SafariZoneEntranceText_753eb + db "@" + +SafariZoneEntranceText_753f0: ; 753f0 (1d:53f0) + TX_FAR _SafariZoneEntranceText_753f0 + db "@" diff --git a/scripts/safarizonenorth.asm b/scripts/safarizonenorth.asm new file mode 100755 index 00000000..74790e76 --- /dev/null +++ b/scripts/safarizonenorth.asm @@ -0,0 +1,31 @@ +SafariZoneNorthScript: ; 459ab (11:59ab) + jp EnableAutoTextBoxDrawing + +SafariZoneNorthTextPointers: ; 459ae (11:59ae) + dw Predef5CText + dw Predef5CText + dw SafariZoneNorthText3 + dw SafariZoneNorthText4 + dw SafariZoneNorthText5 + dw SafariZoneNorthText6 + dw SafariZoneNorthText7 + +SafariZoneNorthText3: ; 459bc (11:59bc) + TX_FAR _SafariZoneNorthText3 + db "@" + +SafariZoneNorthText4: ; 459c1 (11:59c1) + TX_FAR _SafariZoneNorthText4 + db "@" + +SafariZoneNorthText5: ; 459c6 (11:59c6) + TX_FAR _SafariZoneNorthText5 + db "@" + +SafariZoneNorthText6: ; 459cb (11:59cb) + TX_FAR _SafariZoneNorthText6 + db "@" + +SafariZoneNorthText7: ; 459d0 (11:59d0) + TX_FAR _SafariZoneNorthText7 + db "@" diff --git a/scripts/safarizoneresthouse1.asm b/scripts/safarizoneresthouse1.asm new file mode 100755 index 00000000..424714e4 --- /dev/null +++ b/scripts/safarizoneresthouse1.asm @@ -0,0 +1,14 @@ +SafariZoneRestHouse1Script: ; 45ced (11:5ced) + jp EnableAutoTextBoxDrawing + +SafariZoneRestHouse1TextPointers: ; 45cf0 (11:5cf0) + dw SafariZoneRestHouse1Text1 + dw SafariZoneRestHouse1Text2 + +SafariZoneRestHouse1Text1: ; 45cf4 (11:5cf4) + TX_FAR _SafariZoneRestHouse1Text1 + db "@" + +SafariZoneRestHouse1Text2: ; 45cf9 (11:5cf9) + TX_FAR _SafariZoneRestHouse1Text2 + db "@" diff --git a/scripts/safarizoneresthouse2.asm b/scripts/safarizoneresthouse2.asm new file mode 100755 index 00000000..23cd53b2 --- /dev/null +++ b/scripts/safarizoneresthouse2.asm @@ -0,0 +1,20 @@ +SafariZoneRestHouse2Script: ; 45d2a (11:5d2a) + call EnableAutoTextBoxDrawing + ret + +SafariZoneRestHouse2TextPointers: ; 45d2e (11:5d2e) + dw SafariZoneRestHouse2Text1 + dw SafariZoneRestHouse2Text2 + dw SafariZoneRestHouse2Text3 + +SafariZoneRestHouse2Text1: ; 45d34 (11:5d34) + TX_FAR _SafariZoneRestHouse2Text1 + db "@" + +SafariZoneRestHouse2Text2: ; 45d39 (11:5d39) + TX_FAR _SafariZoneRestHouse2Text2 + db "@" + +SafariZoneRestHouse2Text3: ; 45d3e (11:5d3e) + TX_FAR _SafariZoneRestHouse2Text3 + db "@" diff --git a/scripts/safarizoneresthouse3.asm b/scripts/safarizoneresthouse3.asm new file mode 100755 index 00000000..2faa1fbb --- /dev/null +++ b/scripts/safarizoneresthouse3.asm @@ -0,0 +1,20 @@ +SafariZoneRestHouse3Script: ; 45d75 (11:5d75) + call EnableAutoTextBoxDrawing + ret + +SafariZoneRestHouse3TextPointers: ; 45d79 (11:5d79) + dw SafariZoneRestHouse3Text1 + dw SafariZoneRestHouse3Text2 + dw SafariZoneRestHouse3Text3 + +SafariZoneRestHouse3Text1: ; 45d7f (11:5d7f) + TX_FAR _SafariZoneRestHouse3Text1 + db "@" + +SafariZoneRestHouse3Text2: ; 45d84 (11:5d84) + TX_FAR _SafariZoneRestHouse3Text2 + db "@" + +SafariZoneRestHouse3Text3: ; 45d89 (11:5d89) + TX_FAR _SafariZoneRestHouse3Text3 + db "@" diff --git a/scripts/safarizoneresthouse4.asm b/scripts/safarizoneresthouse4.asm new file mode 100755 index 00000000..b645431f --- /dev/null +++ b/scripts/safarizoneresthouse4.asm @@ -0,0 +1,20 @@ +SafariZoneRestHouse4Script: ; 45dc0 (11:5dc0) + call EnableAutoTextBoxDrawing + ret + +SafariZoneRestHouse4TextPointers: ; 45dc4 (11:5dc4) + dw SafariZoneRestHouse4Text1 + dw SafariZoneRestHouse4Text2 + dw SafariZoneRestHouse4Text3 + +SafariZoneRestHouse4Text1: ; 45dca (11:5dca) + TX_FAR _SafariZoneRestHouse4Text1 + db "@" + +SafariZoneRestHouse4Text2: ; 45dcf (11:5dcf) + TX_FAR _SafariZoneRestHouse4Text2 + db "@" + +SafariZoneRestHouse4Text3: ; 45dd4 (11:5dd4) + TX_FAR _SafariZoneRestHouse4Text3 + db "@" diff --git a/scripts/safarizonesecrethouse.asm b/scripts/safarizonesecrethouse.asm new file mode 100755 index 00000000..39b7c393 --- /dev/null +++ b/scripts/safarizonesecrethouse.asm @@ -0,0 +1,46 @@ +SafariZoneSecretHouseScript: ; 4a317 (12:6317) + jp EnableAutoTextBoxDrawing + +SafariZoneSecretHouseTextPointers: ; 4a31a (12:631a) + dw SafariZoneSecretHouseText1 + +SafariZoneSecretHouseText1: ; 4a31c (12:631c) + db $08 ; asm + ld a, [$d857] + bit 0, a + jr nz, .asm_20a9b ; 0x4a322 + ld hl, SafariZoneSecretHouseText_4a350 + call PrintText + ld bc, (HM_03 << 8) | 1 + call GiveItem + jr nc, .BagFull + ld hl, ReceivedHM03Text + call PrintText + ld hl, $d857 + set 0, [hl] + jr .asm_8f1fc ; 0x4a33d +.BagFull + ld hl, HM03NoRoomText + call PrintText + jr .asm_8f1fc ; 0x4a345 +.asm_20a9b ; 0x4a347 + ld hl, HM03ExplanationText + call PrintText +.asm_8f1fc ; 0x4a34d + jp TextScriptEnd + +SafariZoneSecretHouseText_4a350: ; 4a350 (12:6350) + TX_FAR _SecretHouseText_4a350 + db "@" + +ReceivedHM03Text: ; 4a355 (12:6355) + TX_FAR _ReceivedHM03Text + db $0B, "@" + +HM03ExplanationText: ; 4a35b (12:635b) + TX_FAR _HM03ExplanationText + db "@" + +HM03NoRoomText: ; 4a360 (12:6360) + TX_FAR _HM03NoRoomText + db "@" diff --git a/scripts/safarizonewest.asm b/scripts/safarizonewest.asm new file mode 100755 index 00000000..1465af56 --- /dev/null +++ b/scripts/safarizonewest.asm @@ -0,0 +1,28 @@ +SafariZoneWestScript: ; 4a1b5 (12:61b5) + jp EnableAutoTextBoxDrawing + +SafariZoneWestTextPointers: ; 4a1b8 (12:61b8) + dw Predef5CText + dw Predef5CText + dw Predef5CText + dw Predef5CText + dw SafariZoneWestText5 + dw SafariZoneWestText6 + dw SafariZoneWestText7 + dw SafariZoneWestText8 + +SafariZoneWestText5: ; 4a1c8 (12:61c8) + TX_FAR _SafariZoneWestText5 + db "@" + +SafariZoneWestText6: ; 4a1cd (12:61cd) + TX_FAR _SafariZoneWestText6 + db "@" + +SafariZoneWestText7: ; 4a1d2 (12:61d2) + TX_FAR _SafariZoneWestText7 + db "@" + +SafariZoneWestText8: ; 4a1d7 (12:61d7) + TX_FAR _SafariZoneWestText8 + db "@" diff --git a/scripts/saffroncity.asm b/scripts/saffroncity.asm new file mode 100755 index 00000000..d8e7d0c6 --- /dev/null +++ b/scripts/saffroncity.asm @@ -0,0 +1,121 @@ +SaffronCityScript: ; 50c00 (14:4c00) + jp EnableAutoTextBoxDrawing + +SaffronCityTextPointers: ; 50c03 (14:4c03) + dw SaffronCityText1 + dw SaffronCityText2 + dw SaffronCityText3 + dw SaffronCityText4 + dw SaffronCityText5 + dw SaffronCityText6 + dw SaffronCityText7 + dw SaffronCityText8 + dw SaffronCityText9 + dw SaffronCityText10 + dw SaffronCityText11 + dw SaffronCityText12 + dw SaffronCityText13 + dw SaffronCityText14 + dw SaffronCityText15 + dw SaffronCityText16 + dw SaffronCityText17 + dw SaffronCityText18 + dw MartSignText + dw SaffronCityText20 + dw SaffronCityText21 + dw SaffronCityText22 + dw PokeCenterSignText + dw SaffronCityText24 + dw SaffronCityText25 + +SaffronCityText1: ; 50c35 (14:4c35) + TX_FAR _SaffronCityText1 + db "@" + +SaffronCityText2: ; 50c3a (14:4c3a) + TX_FAR _SaffronCityText2 + db "@" + +SaffronCityText3: ; 50c3f (14:4c3f) + TX_FAR _SaffronCityText3 + db "@" + +SaffronCityText4: ; 50c44 (14:4c44) + TX_FAR _SaffronCityText4 + db "@" + +SaffronCityText5: ; 50c49 (14:4c49) + TX_FAR _SaffronCityText5 + db "@" + +SaffronCityText6: ; 50c4e (14:4c4e) + TX_FAR _SaffronCityText6 + db "@" + +SaffronCityText7: ; 50c53 (14:4c53) + TX_FAR _SaffronCityText7 + db "@" + +SaffronCityText8: ; 50c58 (14:4c58) + TX_FAR _SaffronCityText8 + db "@" + +SaffronCityText9: ; 50c5d (14:4c5d) + TX_FAR _SaffronCityText9 + db "@" + +SaffronCityText10: ; 50c62 (14:4c62) + TX_FAR _SaffronCityText10 + db "@" + +SaffronCityText11: ; 50c67 (14:4c67) + TX_FAR _SaffronCityText11 + db "@" + +SaffronCityText12: ; 50c6c (14:4c6c) + TX_FAR _SaffronCityText12 + db $15, "@" + +SaffronCityText13: ; 50c72 (14:4c72) + TX_FAR _SaffronCityText13 + db "@" + +SaffronCityText14: ; 50c77 (14:4c77) + TX_FAR _SaffronCityText14 + db "@" + +SaffronCityText15: ; 50c7c (14:4c7c) + TX_FAR _SaffronCityText15 + db "@" + +SaffronCityText16: ; 50c81 (14:4c81) + TX_FAR _SaffronCityText16 + db "@" + +SaffronCityText17: ; 50c86 (14:4c86) + TX_FAR _SaffronCityText17 + db "@" + +SaffronCityText18: ; 50c8b (14:4c8b) + TX_FAR _SaffronCityText18 + db "@" + +SaffronCityText20: ; 50c90 (14:4c90) + TX_FAR _SaffronCityText20 + db "@" + +SaffronCityText21: ; 50c95 (14:4c95) + TX_FAR _SaffronCityText21 + db "@" + +SaffronCityText22: ; 50c9a (14:4c9a) + TX_FAR _SaffronCityText22 + db "@" + +SaffronCityText24: ; 50c9f (14:4c9f) + TX_FAR _SaffronCityText24 + db "@" + +SaffronCityText25: ; 50ca4 (14:4ca4) + TX_FAR _SaffronCityText25 + db "@" diff --git a/scripts/saffrongym.asm b/scripts/saffrongym.asm new file mode 100755 index 00000000..40482831 --- /dev/null +++ b/scripts/saffrongym.asm @@ -0,0 +1,367 @@ +SaffronGymScript: ; 5d00d (17:500d) + ld hl, $d126 + bit 6, [hl] + res 6, [hl] + call nz, .extra + call EnableAutoTextBoxDrawing + ld hl, SaffronGymTrainerHeader0 + ld de, SaffronGymScriptPointers + ld a, [W_SAFFRONGYMCURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_SAFFRONGYMCURSCRIPT], a + ret + +.extra + ld hl, Gym6CityName ; $5033 + ld de, Gym6LeaderName ; $5040 + jp LoadGymLeaderAndCityName + +Gym6CityName: ; 5d033 (17:5033) + db "SAFFRON CITY@" + +Gym6LeaderName: ; 5d040 (17:5040) + db "SABRINA@" + +SaffronGymText_5d048: ; 5d048 (17:5048) + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [W_SAFFRONGYMCURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +SaffronGymScriptPointers: ; 5d053 (17:5053) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + dw SaffronGymScript3 + +SaffronGymScript3: ; 5d05b (17:505b) + ld a, [W_ISINBATTLE] ; $d057 + cp $ff + jp z, SaffronGymText_5d048 + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + +SaffronGymText_5d068: ; 5d068 (17:5068) + ld a, $a + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + ld hl, $d7b3 + set 1, [hl] + ld bc, (TM_46 << 8) | 1 + call GiveItem + jr nc, .BagFull + ld a, $b + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + ld hl, $d7b3 + set 0, [hl] + jr .asm_5d091 +.BagFull + ld a, $c + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID +.asm_5d091 + ld hl, W_OBTAINEDBADGES + set 5, [hl] + ld hl, $d72a + set 5, [hl] + + ; deactivate gym trainers + ld a, [$d7b3] + or %11111100 + ld [$d7b3], a + ld hl, $d7b4 + set 0, [hl] + + jp SaffronGymText_5d048 + +SaffronGymTextPointers: ; 5d0ab (17:50ab) + dw SaffronGymText1 + dw SaffronGymText2 + dw SaffronGymText3 + dw SaffronGymText4 + dw SaffronGymText5 + dw SaffronGymText6 + dw SaffronGymText7 + dw SaffronGymText8 + dw SaffronGymText9 + dw SaffronGymText10 + dw SaffronGymText11 + dw SaffronGymText12 + +SaffronGymTrainerHeaders: ; 5d0c3 (17:50c3) +SaffronGymTrainerHeader0: ; 5d0c3 (17:50c3) + db $2 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7b3 ; flag's byte + dw SaffronGymBattleText1 ; 0x51f0 TextBeforeBattle + dw SaffronGymAfterBattleText1 ; 0x51fa TextAfterBattle + dw SaffronGymEndBattleText1 ; 0x51f5 TextEndBattle + dw SaffronGymEndBattleText1 ; 0x51f5 TextEndBattle + +SaffronGymTrainerHeader1: ; 5d0cf (17:50cf) + db $3 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7b3 ; flag's byte + dw SaffronGymBattleText2 ; 0x51ff TextBeforeBattle + dw SaffronGymAfterBattleText2 ; 0x5209 TextAfterBattle + dw SaffronGymEndBattleText2 ; 0x5204 TextEndBattle + dw SaffronGymEndBattleText2 ; 0x5204 TextEndBattle + +SaffronGymTrainerHeader2: ; 5d0db (17:50db) + db $4 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7b3 ; flag's byte + dw SaffronGymBattleText3 ; 0x520e TextBeforeBattle + dw SaffronGymAfterBattleText3 ; 0x5218 TextAfterBattle + dw SaffronGymEndBattleText3 ; 0x5213 TextEndBattle + dw SaffronGymEndBattleText3 ; 0x5213 TextEndBattle + +SaffronGymTrainerHeader3: ; 5d0e7 (17:50e7) + db $5 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7b3 ; flag's byte + dw SaffronGymBattleText4 ; 0x521d TextBeforeBattle + dw SaffronGymAfterBattleText4 ; 0x5227 TextAfterBattle + dw SaffronGymEndBattleText4 ; 0x5222 TextEndBattle + dw SaffronGymEndBattleText4 ; 0x5222 TextEndBattle + +SaffronGymTrainerHeader4: ; 5d0f3 (17:50f3) + db $6 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7b3 ; flag's byte + dw SaffronGymBattleText5 ; 0x522c TextBeforeBattle + dw SaffronGymAfterBattleText5 ; 0x5236 TextAfterBattle + dw SaffronGymEndBattleText5 ; 0x5231 TextEndBattle + dw SaffronGymEndBattleText5 ; 0x5231 TextEndBattle + +SaffronGymTrainerHeader5: ; 5d0ff (17:50ff) + db $7 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7b3 ; flag's byte + dw SaffronGymBattleText6 ; 0x523b TextBeforeBattle + dw SaffronGymAfterBattleText6 ; 0x5245 TextAfterBattle + dw SaffronGymEndBattleText6 ; 0x5240 TextEndBattle + dw SaffronGymEndBattleText6 ; 0x5240 TextEndBattle + +SaffronGymTrainerHeader6: ; 5d10b (17:510b) + db $8 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7b3 ; flag's byte + dw SaffronGymBattleText7 ; 0x524a TextBeforeBattle + dw SaffronGymAfterBattleText7 ; 0x5254 TextAfterBattle + dw SaffronGymEndBattleText7 ; 0x524f TextEndBattle + dw SaffronGymEndBattleText7 ; 0x524f TextEndBattle + + db $ff + +SaffronGymText1: ; 5d118 (17:5118) + db $08 ; asm + ld a, [$d7b3] + bit 1, a + jr z, .asm_e3544 ; 0x5d11e + bit 0, a + jr nz, .asm_8d2f6 ; 0x5d122 + call z, SaffronGymText_5d068 + call DisableWaitingAfterTextDisplay + jr .asm_34c2c ; 0x5d12a +.asm_8d2f6 ; 0x5d12c + ld hl, SaffronGymText_5d16e + call PrintText + jr .asm_34c2c ; 0x5d132 +.asm_e3544 ; 0x5d134 + ld hl, SaffronGymText_5d162 + call PrintText + ld hl, $d72d + set 6, [hl] + set 7, [hl] + ld hl, SaffronGymText_5d167 + ld de, SaffronGymText_5d167 + call PreBattleSaveRegisters + ldh a, [$8c] + ld [$cf13], a + call EngageMapTrainer + call InitBattleEnemyParameters + ld a, $6 + ld [$d05c], a + ld a, $3 + ld [W_SAFFRONGYMCURSCRIPT], a +.asm_34c2c ; 0x5d15f + jp TextScriptEnd + +SaffronGymText_5d162: ; 5d162 (17:5162) + TX_FAR _SaffronGymText_5d162 + db "@" + +SaffronGymText_5d167: ; 5d167 (17:5167) + TX_FAR _SaffronGymText_5d167 ; 0xa1c73 + db $11 ; play same sound as red giving oak parcel + db $6 ; wait for keypress + db "@" + +SaffronGymText_5d16e: ; 5d16e (17:516e) + TX_FAR _SaffronGymText_5d16e + db "@" + +SaffronGymText10: ; 5d173 (17:5173) + TX_FAR _SaffronGymText_5d173 + db "@" + +SaffronGymText11: ; 5d178 (17:5178) + TX_FAR ReceivedTM46Text + db $b + TX_FAR _TM46ExplanationText + db "@" + +SaffronGymText12: ; 5d182 (17:5182) + TX_FAR _TM46NoRoomText + db "@" + +SaffronGymText2: ; 5d187 (17:5187) + db $08 ; asm + ld hl, SaffronGymTrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +SaffronGymText3: ; 5d191 (17:5191) + db $08 ; asm + ld hl, SaffronGymTrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +SaffronGymText4: ; 5d19b (17:519b) + db $08 ; asm + ld hl, SaffronGymTrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +SaffronGymText5: ; 5d1a5 (17:51a5) + db $08 ; asm + ld hl, SaffronGymTrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +SaffronGymText6: ; 5d1af (17:51af) + db $08 ; asm + ld hl, SaffronGymTrainerHeader4 + call TalkToTrainer + jp TextScriptEnd + +SaffronGymText7: ; 5d1b9 (17:51b9) + db $08 ; asm + ld hl, SaffronGymTrainerHeader5 + call TalkToTrainer + jp TextScriptEnd + +SaffronGymText8: ; 5d1c3 (17:51c3) + db $08 ; asm + ld hl, SaffronGymTrainerHeader6 + call TalkToTrainer + jp TextScriptEnd + +SaffronGymText9: ; 5d1cd (17:51cd) + db $08 ; asm + ld a, [$d7b3] + bit 1, a + jr nz, .asm_13f3c ; 0x5d1d3 + ld hl, SaffronGymText_5d1e6 + call PrintText + jr .asm_e9907 ; 0x5d1db +.asm_13f3c ; 0x5d1dd + ld hl, SaffronGymText_5d1eb + call PrintText +.asm_e9907 ; 0x5d1e3 + jp TextScriptEnd + +SaffronGymText_5d1e6: ; 5d1e6 (17:51e6) + TX_FAR _SaffronGymText_5d1e6 + db "@" + +SaffronGymText_5d1eb: ; 5d1eb (17:51eb) + TX_FAR _SaffronGymText_5d1eb + db "@" + +SaffronGymBattleText1: ; 5d1f0 (17:51f0) + TX_FAR _SaffronGymBattleText1 + db "@" + +SaffronGymEndBattleText1: ; 5d1f5 (17:51f5) + TX_FAR _SaffronGymEndBattleText1 + db "@" + +SaffronGymAfterBattleText1: ; 5d1fa (17:51fa) + TX_FAR _SaffronGymAfterBattleText1 + db "@" + +SaffronGymBattleText2: ; 5d1ff (17:51ff) + TX_FAR _SaffronGymBattleText2 + db "@" + +SaffronGymEndBattleText2: ; 5d204 (17:5204) + TX_FAR _SaffronGymEndBattleText2 + db "@" + +SaffronGymAfterBattleText2: ; 5d209 (17:5209) + TX_FAR _SaffronGymAfterBattleText2 + db "@" + +SaffronGymBattleText3: ; 5d20e (17:520e) + TX_FAR _SaffronGymBattleText3 + db "@" + +SaffronGymEndBattleText3: ; 5d213 (17:5213) + TX_FAR _SaffronGymEndBattleText3 + db "@" + +SaffronGymAfterBattleText3: ; 5d218 (17:5218) + TX_FAR _SaffronGymAfterBattleText3 + db "@" + +SaffronGymBattleText4: ; 5d21d (17:521d) + TX_FAR _SaffronGymBattleText4 + db "@" + +SaffronGymEndBattleText4: ; 5d222 (17:5222) + TX_FAR _SaffronGymEndBattleText4 + db "@" + +SaffronGymAfterBattleText4: ; 5d227 (17:5227) + TX_FAR _SaffronGymAfterBattleText4 + db "@" + +SaffronGymBattleText5: ; 5d22c (17:522c) + TX_FAR _SaffronGymBattleText5 + db "@" + +SaffronGymEndBattleText5: ; 5d231 (17:5231) + TX_FAR _SaffronGymEndBattleText5 + db "@" + +SaffronGymAfterBattleText5: ; 5d236 (17:5236) + TX_FAR _SaffronGymAfterBattleText5 + db "@" + +SaffronGymBattleText6: ; 5d23b (17:523b) + TX_FAR _SaffronGymBattleText6 + db "@" + +SaffronGymEndBattleText6: ; 5d240 (17:5240) + TX_FAR _SaffronGymEndBattleText6 + db "@" + +SaffronGymAfterBattleText6: ; 5d245 (17:5245) + TX_FAR _SaffronGymAfterBattleText6 + db "@" + +SaffronGymBattleText7: ; 5d24a (17:524a) + TX_FAR _SaffronGymBattleText7 + db "@" + +SaffronGymEndBattleText7: ; 5d24f (17:524f) + TX_FAR _SaffronGymEndBattleText7 + db "@" + +SaffronGymAfterBattleText7: ; 5d254 (17:5254) + TX_FAR _SaffronGymAfterBattleText7 + db "@" diff --git a/scripts/saffronhouse1.asm b/scripts/saffronhouse1.asm new file mode 100755 index 00000000..39a70ebf --- /dev/null +++ b/scripts/saffronhouse1.asm @@ -0,0 +1,27 @@ +SaffronHouse1Script: ; 1dddd (7:5ddd) + jp EnableAutoTextBoxDrawing + +SaffronHouse1TextPointers: ; 1dde0 (7:5de0) + dw SaffronHouse1Text1 + dw SaffronHouse1Text2 + dw SaffronHouse1Text3 + dw SaffronHouse1Text4 + +SaffronHouse1Text1: ; 1dde8 (7:5de8) + TX_FAR _SaffronHouse1Text1 + db "@" + +SaffronHouse1Text2: ; 1dded (7:5ded) + TX_FAR _SaffronHouse1Text2 + db $8 + ld a, PIDGEY + call PlayCry + jp TextScriptEnd + +SaffronHouse1Text3: ; 1ddfa (7:5dfa) + TX_FAR _SaffronHouse1Text3 + db "@" + +SaffronHouse1Text4: ; 1ddff (7:5dff) + TX_FAR _SaffronHouse1Text4 + db "@" diff --git a/scripts/saffronhouse2.asm b/scripts/saffronhouse2.asm new file mode 100755 index 00000000..a48ec3f6 --- /dev/null +++ b/scripts/saffronhouse2.asm @@ -0,0 +1,46 @@ +SaffronHouse2Script: ; 1de3c (7:5e3c) + jp EnableAutoTextBoxDrawing + +SaffronHouse2TextPointers: ; 1de3f (7:5e3f) + dw SaffronHouse2Text1 + +SaffronHouse2Text1: ; 1de41 (7:5e41) + db $08 ; asm + ld a, [$d7bd] + bit 0, a + jr nz, .asm_9e72b ; 0x1de47 + ld hl, TM29PreReceiveText + call PrintText + ld bc,(TM_29 << 8) | 1 + call GiveItem + jr nc, .BagFull + ld hl, ReceivedTM29Text + call PrintText + ld hl, $d7bd + set 0, [hl] + jr .asm_fe4e1 ; 0x1de62 +.BagFull + ld hl, TM29NoRoomText + call PrintText + jr .asm_fe4e1 ; 0x1de6a +.asm_9e72b ; 0x1de6c + ld hl, TM29ExplanationText + call PrintText +.asm_fe4e1 ; 0x1de72 + jp TextScriptEnd + +TM29PreReceiveText: ; 1de75 (7:5e75) + TX_FAR _TM29PreReceiveText + db "@" + +ReceivedTM29Text: ; 1de7a (7:5e7a) + TX_FAR _ReceivedTM29Text + db $0B, "@" + +TM29ExplanationText: ; 1de80 (7:5e80) + TX_FAR _TM29ExplanationText + db "@" + +TM29NoRoomText: ; 1de85 (7:5e85) + TX_FAR _TM29NoRoomText + db "@" diff --git a/scripts/saffronmart.asm b/scripts/saffronmart.asm new file mode 100755 index 00000000..9ee1db0e --- /dev/null +++ b/scripts/saffronmart.asm @@ -0,0 +1,15 @@ +SaffronMartScript: ; 5d409 (17:5409) + jp EnableAutoTextBoxDrawing + +SaffronMartTextPointers: ; 5d40c (17:540c) + dw SaffronMartText1 + dw SaffronMartText2 + dw SaffronMartText3 + +SaffronMartText2: ; 5d412 (17:5412) + TX_FAR _SaffronMartText2 + db "@" + +SaffronMartText3: ; 5d417 (17:5417) + TX_FAR _SaffronMartText3 + db "@" diff --git a/scripts/saffronpokecenter.asm b/scripts/saffronpokecenter.asm new file mode 100755 index 00000000..7f3a656a --- /dev/null +++ b/scripts/saffronpokecenter.asm @@ -0,0 +1,23 @@ +SaffronPokecenterScript: ; 5d535 (17:5535) + call Func_22fa + jp EnableAutoTextBoxDrawing + +SaffronPokecenterTextPointers: ; 5d53b (17:553b) + dw SaffronPokecenterText1 + dw SaffronPokecenterText2 + dw SaffronPokecenterText3 + dw SaffronPokecenterText4 + +SaffronPokecenterText1: ; 5d543 (17:5543) + db $ff + +SaffronPokecenterText2: ; 5d544 (17:5544) + TX_FAR _SaffronPokecenterText1 + db "@" + +SaffronPokecenterText3: ; 5d549 (17:5549) + TX_FAR _SaffronPokecenterText3 + db "@" + +SaffronPokecenterText4: ; 5d54e (17:554e) + db $f6 diff --git a/scripts/school.asm b/scripts/school.asm new file mode 100755 index 00000000..57eb58c8 --- /dev/null +++ b/scripts/school.asm @@ -0,0 +1,14 @@ +SchoolScript: ; 1d54c (7:554c) + jp EnableAutoTextBoxDrawing + +SchoolTextPointers: ; 1d54f (7:554f) + dw SchoolText1 + dw SchoolText2 + +SchoolText1: ; 1d553 (7:5553) + TX_FAR _SchoolText1 + db "@" + +SchoolText2: ; 1d558 (7:5558) + TX_FAR _SchoolText2 + db "@" diff --git a/scripts/seafoamislands1.asm b/scripts/seafoamislands1.asm new file mode 100755 index 00000000..3d20a653 --- /dev/null +++ b/scripts/seafoamislands1.asm @@ -0,0 +1,50 @@ +SeafoamIslands1Script: ; 447e9 (11:47e9) + call EnableAutoTextBoxDrawing + ld hl, $d7e7 + set 0, [hl] + ld hl, wFlags_0xcd60 + bit 7, [hl] + res 7, [hl] + jr z, .asm_4483b ; 0x447f8 $41 + ld hl, Seafoam1HolesCoords + call CheckBoulderCoords + ret nc + ld hl, $d7e8 + ld a, [$cd3d] + cp $1 + jr nz, .asm_44819 ; 0x44809 $e + set 6, [hl] + ld a, $d7 + ld [$d079], a + ld a, $d9 + ld [$d07a], a + jr .asm_44825 ; 0x44817 $c +.asm_44819 + set 7, [hl] + ld a, $d8 + ld [$d079], a + ld a, $da + ld [$d07a], a +.asm_44825 + ld a, [$d079] + ld [$cc4d], a + ld a, $11 + call Predef + ld a, [$d07a] + ld [$cc4d], a + ld a, $15 + jp Predef +.asm_4483b + ld a, $9f + ld [$d71d], a + ld hl, Seafoam1HolesCoords + jp Func_46981 + +Seafoam1HolesCoords: ; 44846 (11:4846) + db $06,$11 + db $06,$18 + db $ff + +SeafoamIslands1TextPointers: ; 4484b (11:484b) + dw BoulderText + dw BoulderText diff --git a/scripts/seafoamislands2.asm b/scripts/seafoamislands2.asm new file mode 100755 index 00000000..a20bf497 --- /dev/null +++ b/scripts/seafoamislands2.asm @@ -0,0 +1,48 @@ +SeafoamIslands2Script: ; 46315 (11:6315) + call EnableAutoTextBoxDrawing + ld hl, wFlags_0xcd60 + bit 7, [hl] + res 7, [hl] + jr z, .asm_46362 ; 0x4631f $41 + ld hl, Seafoam2HolesCoords + call CheckBoulderCoords + ret nc + ld hl, $d87f + ld a, [$cd3d] + cp $1 + jr nz, .asm_46340 ; 0x46330 $e + set 0, [hl] + ld a, $d9 + ld [$d079], a + ld a, $db + ld [$d07a], a + jr .asm_4634c ; 0x4633e $c +.asm_46340 + set 1, [hl] + ld a, $da + ld [$d079], a + ld a, $dc + ld [$d07a], a +.asm_4634c + ld a, [$d079] + ld [$cc4d], a + ld a, $11 + call Predef + ld a, [$d07a] + ld [$cc4d], a + ld a, $15 + jp Predef +.asm_46362 + ld a, $a0 + ld [$d71d], a + ld hl, Seafoam2HolesCoords + jp Func_46981 + +Seafoam2HolesCoords: ; 4636d (11:636d) + db $06,$12 + db $06,$17 + db $ff + +SeafoamIslands2TextPointers: ; 46372 (11:6372) + dw BoulderText + dw BoulderText diff --git a/scripts/seafoamislands3.asm b/scripts/seafoamislands3.asm new file mode 100755 index 00000000..a6e00936 --- /dev/null +++ b/scripts/seafoamislands3.asm @@ -0,0 +1,48 @@ +SeafoamIslands3Script: ; 46451 (11:6451) + call EnableAutoTextBoxDrawing + ld hl, wFlags_0xcd60 + bit 7, [hl] + res 7, [hl] + jr z, .asm_4649e ; 0x4645b $41 + ld hl, Seafoam3HolesCoords + call CheckBoulderCoords + ret nc + ld hl, $d880 + ld a, [$cd3d] + cp $1 + jr nz, .asm_4647c ; 0x4646c $e + set 0, [hl] + ld a, $db + ld [$d079], a + ld a, $df + ld [$d07a], a + jr .asm_46488 ; 0x4647a $c +.asm_4647c + set 1, [hl] + ld a, $dc + ld [$d079], a + ld a, $e0 + ld [$d07a], a +.asm_46488 + ld a, [$d079] + ld [$cc4d], a + ld a, $11 + call Predef + ld a, [$d07a] + ld [$cc4d], a + ld a, $15 + jp Predef +.asm_4649e + ld a, $a1 + ld [$d71d], a + ld hl, Seafoam3HolesCoords + jp Func_46981 + +Seafoam3HolesCoords: ; 464a9 (11:64a9) + db $06,$13 + db $06,$16 + db $ff + +SeafoamIslands3TextPointers: ; 464ae (11:64ae) + dw BoulderText + dw BoulderText diff --git a/scripts/seafoamislands4.asm b/scripts/seafoamislands4.asm new file mode 100755 index 00000000..c7be0f44 --- /dev/null +++ b/scripts/seafoamislands4.asm @@ -0,0 +1,148 @@ +SeafoamIslands4Script: ; 4658d (11:658d) + call EnableAutoTextBoxDrawing + ld hl, wFlags_0xcd60 + bit 7, [hl] + res 7, [hl] + jr z, .asm_465dc ; 0x46597 $43 + ld hl, Seafoam4HolesCoords + call CheckBoulderCoords + ret nc + ld hl, $d881 + ld a, [$cd3d] + cp $1 + jr nz, .asm_465b8 ; 0x465a8 $e + set 0, [hl] + ld a, $dd + ld [$d079], a + ld a, $e1 + ld [$d07a], a + jr .asm_465c4 ; 0x465b6 $c +.asm_465b8 + set 1, [hl] + ld a, $de + ld [$d079], a + ld a, $e2 + ld [$d07a], a +.asm_465c4 + ld a, [$d079] + ld [$cc4d], a + ld a, $11 + call Predef + ld a, [$d07a] + ld [$cc4d], a + ld a, $15 + call Predef + jr .asm_465ed ; 0x465da $11 +.asm_465dc + ld a, $a2 + ld [$d71d], a + ld hl, Seafoam4HolesCoords + call Func_46981 + ld a, [$d732] + bit 4, a + ret nz +.asm_465ed + ld hl, SeafoamIslands4ScriptPointers + ld a, [W_SEAFOAMISLANDS4CURSCRIPT] + jp CallFunctionInTable + +Seafoam4HolesCoords: ; 465f6 (11:65f6) + db $10,$03 + db $10,$06 + db $ff + +SeafoamIslands4ScriptPointers: ; 465fb (11:65fb) + dw SeafoamIslands4Script0 + dw SeafoamIslands4Script1 + dw SeafoamIslands4Script2 + dw SeafoamIslands4Script3 + +SeafoamIslands4Script0: ; 46603 (11:6603) + ld a, [$d880] + and $3 + cp $3 + ret z + ld a, [W_YCOORD] + cp $8 + ret nz + ld a, [W_XCOORD] + cp $f + ret nz + ld hl, $ccd3 + ld de, RLEMovement46632 + call DecodeRLEList + dec a + ld [$cd38], a + call Func_3486 + ld hl, W_FLAGS_D733 + set 2, [hl] + ld a, $1 + ld [W_SEAFOAMISLANDS4CURSCRIPT], a + ret + +RLEMovement46632: ; 46632 (11:6632) + db $80,6 + db $10,5 + db $80,3 + db $ff + +SeafoamIslands4Script1: ; 46639 (11:6639) + ld a, [$cd38] + and a + ret nz + ld a, $0 + ld [W_SEAFOAMISLANDS4CURSCRIPT], a + ret + +SeafoamIslands4Script2: ; 46644 (11:6644) + ld a, [$d880] + and $3 + cp $3 + ret z + ld a, [W_XCOORD] + cp $12 + jr z, .asm_4665e + cp $13 + ld a, $0 + jr nz, .asm_4667b + ld de, RLEData_4667f + jr .asm_46661 +.asm_4665e + ld de, RLEData_46688 +.asm_46661 + ld hl, $ccd3 + call DecodeRLEList + dec a + ld [$cd38], a + xor a + ld [$c206], a + ld hl, $d730 + set 7, [hl] + ld hl, W_FLAGS_D733 + set 2, [hl] + ld a, $3 +.asm_4667b + ld [W_SEAFOAMISLANDS4CURSCRIPT], a + ret + +RLEData_4667f: ; 4667f (11:667f) + db $80,$06,$10,$02,$80,$04,$20,$01,$FF + +RLEData_46688: ; 46688 (11:6688) + db $80,$06,$10,$02,$80,$04,$FF + +SeafoamIslands4Script3: ; 4668f (11:668f) + ld a, [$cd38] + and a + ret nz + ld a, $0 + ld [W_SEAFOAMISLANDS4CURSCRIPT], a + ret + +SeafoamIslands4TextPointers: ; 4669a (11:669a) + dw BoulderText + dw BoulderText + dw BoulderText + dw BoulderText + dw BoulderText + dw BoulderText diff --git a/scripts/seafoamislands5.asm b/scripts/seafoamislands5.asm new file mode 100755 index 00000000..153a1bb6 --- /dev/null +++ b/scripts/seafoamislands5.asm @@ -0,0 +1,178 @@ +SeafoamIslands5Script: ; 46799 (11:6799) + call EnableAutoTextBoxDrawing + ld a, [W_SEAFOAMISLANDS5CURSCRIPT] + ld hl, SeafoamIslands5ScriptPointers + jp CallFunctionInTable + +SeafoamIslands5Script_467a5: ; 467a5 (11:67a5) + xor a + ld [W_SEAFOAMISLANDS5CURSCRIPT], a + ld [wJoypadForbiddenButtonsMask], a + ret + +SeafoamIslands5ScriptPointers: ; 467ad (11:67ad) + dw SeafoamIslands5Script0 + dw SeafoamIslands5Script1 + dw SeafoamIslands5Script2 + dw SeafoamIslands5Script3 + dw SeafoamIslands5Script4 + +SeafoamIslands5Script4: ; 467b7 (11:67b7) + ld a, [W_ISINBATTLE] + cp $ff + jr z, SeafoamIslands5Script_467a5 + call EndTrainerBattle + ld a, $0 + ld [W_SEAFOAMISLANDS5CURSCRIPT], a + ret + +SeafoamIslands5Script0: ; 467c7 (11:67c7) + ld a, [$d880] + and $3 + cp $3 + ret z + ld hl, CoordsData_467fe + call ArePlayerCoordsInArray + ret nc + ld a, [$cd3d] + cp $3 + jr nc, .asm_467e6 + ld a, $40 + ld [$ccd4], a + ld a, $2 + jr .asm_467e8 +.asm_467e6 + ld a, $1 +.asm_467e8 + ld [$cd38], a + ld a, $40 + ld [$ccd3], a + call Func_3486 + ld hl, W_FLAGS_D733 + res 2, [hl] + ld a, $1 + ld [W_SEAFOAMISLANDS5CURSCRIPT], a + ret + +CoordsData_467fe: ; 467fe (11:67fe) + db $11,$14 + db $11,$15 + db $10,$14 + db $10,$15 + db $FF + +SeafoamIslands5Script1: ; 46807 (11:6807) + ld a, [$cd38] + and a + ret nz + xor a + ld [wJoypadForbiddenButtonsMask], a + ld a, $0 + ld [W_SEAFOAMISLANDS5CURSCRIPT], a + ret + +SeafoamIslands5Script2: ; 46816 (11:6816) + ld a, [$d881] + and $3 + cp $3 + ld a, $0 + jr z, .asm_46849 + ld hl, CoordsData_4684d + call ArePlayerCoordsInArray + ld a, $0 + jr nc, .asm_46849 + ld a, [$cd3d] + cp $1 + jr nz, .asm_46837 + ld de, RLEMovementData_46859 + jr .asm_4683a +.asm_46837 + ld de, RLEMovementData_46852 +.asm_4683a + ld hl, $ccd3 + call DecodeRLEList + dec a + ld [$cd38], a + call Func_3486 + ld a, $3 +.asm_46849 + ld [W_SEAFOAMISLANDS5CURSCRIPT], a + ret + +CoordsData_4684d: ; 4684d (11:684d) + db $0E,$04 + db $0E,$05 + db $FF + +RLEMovementData_46852: ; 46852 (11:6852) + db $40,$03 + db $10,$02 + db $40,$01 + db $FF + +RLEMovementData_46859: ; 46859 (11:6859) + db $40,$03 + db $10,$03 + db $40,$01 + db $FF + +SeafoamIslands5Script3: ; 46860 (11:6860) + ld a, [$cd38] + ld b, a + cp $1 + call z, SeaFoamIslands5Script_46872 + ld a, b + and a + ret nz + ld a, $0 + ld [W_SEAFOAMISLANDS5CURSCRIPT], a + ret + +SeaFoamIslands5Script_46872: ; 46872 (11:6872) + xor a + ld [$d700], a + ld [$d11a], a + jp ForceBikeOrSurf + +SeafoamIslands5TextPointers: ; 4687c (11:687c) + dw BoulderText + dw BoulderText + dw SeafoamIslands5Text3 + dw SeafoamIslands5Text4 + dw SeafoamIslands5Text5 + +SeafoamIslands5TrainerHeaders: ; 46886 (11:6886) +SeafoamIslands5TrainerHeader0: ; 46886 (11:6886) + db $2 ; flag's bit + db ($0 << 4) ; trainer's view range + dw $d882 ; flag's byte + dw SeafoamIslands5BattleText2 ; 0x68a2 TextBeforeBattle + dw SeafoamIslands5BattleText2 ; 0x68a2 TextAfterBattle + dw SeafoamIslands5BattleText2 ; 0x68a2 TextEndBattle + dw SeafoamIslands5BattleText2 ; 0x68a2 TextEndBattle + + db $ff + +SeafoamIslands5Text3: ; 46893 (11:6893) + db $08 ; asm + ld hl, SeafoamIslands5TrainerHeader0 + call TalkToTrainer + ld a, $4 + ld [W_SEAFOAMISLANDS5CURSCRIPT], a + jp TextScriptEnd + +SeafoamIslands5BattleText2: ; 468a2 (11:68a2) + TX_FAR _SeafoamIslands5BattleText2 + db $8 + ld a, ARTICUNO + call PlayCry + call WaitForSoundToFinish + jp TextScriptEnd + +SeafoamIslands5Text4: ; 468b2 (11:68b2) + TX_FAR _SeafoamIslands5Text4 + db "@" + +SeafoamIslands5Text5: ; 468b7 (11:68b7) + TX_FAR _SeafoamIslands5Text5 + db "@" diff --git a/scripts/silphco1.asm b/scripts/silphco1.asm new file mode 100755 index 00000000..64f93cdc --- /dev/null +++ b/scripts/silphco1.asm @@ -0,0 +1,20 @@ +SilphCo1Script: ; 5d44e (17:544e) + call EnableAutoTextBoxDrawing + ld a, [$d838] + bit 7, a + ret z + ld hl, $d7b9 + bit 7, [hl] + set 7, [hl] + ret nz + ld a, $4c + ld [$cc4d], a + ld a, $15 + jp Predef + +SilphCo1TextPointers: ; 5d469 (17:5469) + dw SilphCo1Text1 + +SilphCo1Text1: ; 5d46b (17:546b) + TX_FAR _SilphCo1Text1 + db "@" diff --git a/scripts/silphco10.asm b/scripts/silphco10.asm new file mode 100755 index 00000000..ede60acc --- /dev/null +++ b/scripts/silphco10.asm @@ -0,0 +1,126 @@ +SilphCo10Script: ; 5a139 (16:6139) + call SilphCo10Script_5a14f + call EnableAutoTextBoxDrawing + ld hl, SilphCo10TrainerHeaders + ld de, SilphCo10ScriptPointers + ld a, [W_SILPHCO10CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_SILPHCO10CURSCRIPT], a + ret + +SilphCo10Script_5a14f: ; 5a14f (16:614f) + ld hl, $d126 + bit 5, [hl] + res 5, [hl] + ret z + ld hl, DataTable_5a173 ; $6173 + call SilphCo2Script_59d43 + call SilphCo10Text_5a176 + ld a, [$d836] + bit 0, a + ret nz + ld a, $54 + ld [$d09f], a + ld bc, $405 + ld a, $17 + jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) + +DataTable_5a173: ; 5a173 (16:6173) + db $04,$05,$FF + +SilphCo10Text_5a176: ; 5a176 (16:6176) + ld a, [$ffe0] + and a + ret z + ld hl, $d836 + set 0, [hl] + ret + +SilphCo10ScriptPointers: ; 5a180 (16:6180) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +SilphCo10TextPointers: ; 5a186 (16:6186) + dw SilphCo10Text1 + dw SilphCo10Text2 + dw SilphCo10Text3 + dw Predef5CText + dw Predef5CText + dw Predef5CText + +SilphCo10TrainerHeaders: ; 5a192 (16:6192) +SilphCo10TrainerHeader0: ; 5a192 (16:6192) + db $1 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d835 ; flag's byte + dw SilphCo10BattleText1 ; 0x61dd TextBeforeBattle + dw SilphCo10AfterBattleText1 ; 0x61e7 TextAfterBattle + dw SilphCo10EndBattleText1 ; 0x61e2 TextEndBattle + dw SilphCo10EndBattleText1 ; 0x61e2 TextEndBattle + +SilphCo10TrainerHeader1: ; 5a19e (16:619e) + db $2 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d835 ; flag's byte + dw SilphCo10BattleText2 ; 0x61ec TextBeforeBattle + dw SilphCo10AfterBattleText2 ; 0x61f6 TextAfterBattle + dw SilphCo10EndBattleText2 ; 0x61f1 TextEndBattle + dw SilphCo10EndBattleText2 ; 0x61f1 TextEndBattle + + db $ff + +SilphCo10Text1: ; 5a1ab (16:61ab) + db $08 ; asm + ld hl, SilphCo10TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +SilphCo10Text2: ; 5a1b5 (16:61b5) + db $08 ; asm + ld hl, SilphCo10TrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +SilphCo10Text3: ; 5a1bf (16:61bf) + db $08 ; asm + ld a, [$d838] + bit 7, a + ld hl, SilphCo10Text_5a1d8 + jr nz, .asm_cf85f + ld hl, SilphCo10Text_5a1d3 +.asm_cf85f + call PrintText + jp TextScriptEnd + +SilphCo10Text_5a1d3: ; 5a1d3 (16:61d3) + TX_FAR _SilphCo10Text_5a1d3 + db "@" + +SilphCo10Text_5a1d8: ; 5a1d8 (16:61d8) + TX_FAR _SilphCo10Text_5a1d8 + db "@" + +SilphCo10BattleText1: ; 5a1dd (16:61dd) + TX_FAR _SilphCo10BattleText1 + db "@" + +SilphCo10EndBattleText1: ; 5a1e2 (16:61e2) + TX_FAR _SilphCo10EndBattleText1 + db "@" + +SilphCo10AfterBattleText1: ; 5a1e7 (16:61e7) + TX_FAR _SilphCo10AfterBattleText1 + db "@" + +SilphCo10BattleText2: ; 5a1ec (16:61ec) + TX_FAR _SilphCo10BattleText2 + db "@" + +SilphCo10EndBattleText2: ; 5a1f1 (16:61f1) + TX_FAR _SilphCo10EndBattleText2 + db "@" + +SilphCo10AfterBattleText2: ; 5a1f6 (16:61f6) + TX_FAR _SilphCo10AfterBattleText2 + db "@" diff --git a/scripts/silphco11.asm b/scripts/silphco11.asm new file mode 100755 index 00000000..f24c6774 --- /dev/null +++ b/scripts/silphco11.asm @@ -0,0 +1,369 @@ +SilphCo11Script: ; 620fa (18:60fa) + call SilphCo11Script_62110 + call EnableAutoTextBoxDrawing + ld hl, SilphCo11TrainerHeaders + ld de, SilphCo11ScriptPointers + ld a, [W_SILPHCO11CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_SILPHCO11CURSCRIPT], a + ret + +SilphCo11Script_62110: ; 62110 (18:6110) + ld hl, $d126 + bit 5, [hl] + res 5, [hl] + ret z + ld hl, DataTable_62134 ; $6134 + call SilphCo11Script_62137 + call SilphCo11Script_62163 + ld a, [$d838] + bit 0, a + ret nz + ld a, $20 + ld [$d09f], a + ld bc, $603 + ld a, $17 + jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) + +DataTable_62134: ; 62134 (18:6134) + db $06,$03,$FF + +SilphCo11Script_62137: ; 62137 (18:6137) + push hl + ld hl, $d73f + ld a, [hli] + ld b, a + ld a, [hl] + ld c, a + xor a + ld [$ffe0], a + pop hl +.asm_62143 + ld a, [hli] + cp $ff + jr z, .asm_6215f + push hl + ld hl, $ffe0 + inc [hl] + pop hl + cp b + jr z, .asm_62154 + inc hl + jr .asm_62143 +.asm_62154 + ld a, [hli] + cp c + jr nz, .asm_62143 + ld hl, $d73f + xor a + ld [hli], a + ld [hl], a + ret +.asm_6215f + xor a + ld [$ffe0], a + ret + +SilphCo11Script_62163: ; 62163 (18:6163) + ld a, [$ffe0] + and a + ret z + ld hl, $d838 + set 0, [hl] + ret + +SilphCo11Script_6216d: ; 6216d (18:616d) + ld hl, MissableObjectIDs_6219b ; $619b +.asm_62170 + ld a, [hli] + cp $ff + jr z, .asm_62181 + push hl + ld [$cc4d], a + ld a, $11 + call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7)) + pop hl + jr .asm_62170 +.asm_62181 + ld hl, MissableObjectIDs_62194 ; $6194 +.asm_62184 + ld a, [hli] + cp $ff + ret z + push hl + ld [$cc4d], a + ld a, $15 + call Predef ; indirect jump to AddMissableObject (f1c8 (3:71c8)) + pop hl + jr .asm_62184 + +MissableObjectIDs_62194: ; 62194 (18:6194) + db $11,$12,$13,$14,$15,$16,$FF + +MissableObjectIDs_6219b: ; 6219b (18:619b) + db $0A,$0B,$0C,$0D,$0E,$0F,$10,$17 + db $18,$8A,$8B,$8C,$8D,$8E,$8F,$91 + db $92,$93,$97,$98,$99,$9A,$9E,$9F + db $A0,$A3,$A4,$A5,$A6,$AB,$AC,$AD + db $AE,$AF,$B0,$B1,$B2,$B7,$B8,$B9 + db $FF + +SilphCo11Script_621c4: ; 621c4 (18:61c4) + xor a + ld [wJoypadForbiddenButtonsMask], a + +SilphCo11Script_621c8: ; 621c8 (18:61c8) + ld [W_SILPHCO11CURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +SilphCo11ScriptPointers: ; 621cf (18:61cf) + dw SilphCo11Script0 + dw Func_324c + dw EndTrainerBattle + dw SilphCo11Script3 + dw SilphCo11Script4 + dw SilphCo11Script5 + +SilphCo11Script0: ; 621db (18:61db) + ld a, [$d838] + bit 7, a + ret nz + ld hl, CoordsData_62211 ; $6211 + call ArePlayerCoordsInArray + jp nc, CheckFightingMapTrainers + ld a, [wWhichTrade] ; $cd3d + ld [$cf0d], a + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + ld a, $3 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + ld a, $3 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call SetSpriteMovementBytesToFF + ld de, MovementData_62216 + call MoveSprite + ld a, $3 + jp SilphCo11Script_621c8 + +CoordsData_62211: ; 62211 (18:6211) + db $0D,$06 + db $0C,$07 + db $FF + +MovementData_62216: ; 62216 (18:6216) + db $00,$00,$00,$FF + +SilphCo11Script_6221a: ; 6221a (18:621a) + ld [$d528], a + ld a, $3 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + ld a, b + ld [$ff8d], a + jp Func_34a6 + +SilphCo11Script5: ; 62227 (18:6227) + ld a, [W_ISINBATTLE] ; $d057 + cp $ff + jp z, SilphCo11Script_621c4 + ld a, [$cf0d] + cp $1 + jr z, .asm_6223c + ld a, $2 + ld b, $c + jr .asm_62240 +.asm_6223c + ld a, $8 + ld b, $0 +.asm_62240 + call SilphCo11Script_6221a + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + ld a, $6 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + call GBFadeIn1 + call SilphCo11Script_6216d + call UpdateSprites + call Delay3 + call GBFadeOut1 + ld hl, $d838 + set 7, [hl] + xor a + ld [wJoypadForbiddenButtonsMask], a + jp SilphCo11Script_621c8 + +SilphCo11Script3: ; 6226a (18:626a) + ld a, [$d730] + bit 0, a + ret nz + ld a, $3 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call SetSpriteMovementBytesToFF + ld a, [$cf0d] + cp $1 + jr z, .asm_62284 + ld a, $2 + ld b, $c + jr .asm_62288 +.asm_62284 + ld a, $8 + ld b, $0 +.asm_62288 + call SilphCo11Script_6221a + call Delay3 + ld a, $4 + jp SilphCo11Script_621c8 + +SilphCo11Script4: ; 62293 (18:6293) + ld hl, $d72d + set 6, [hl] + set 7, [hl] + ld hl, SilphCo10Text_62330 ; $6330 + ld de, SilphCo10Text_62330 ; $6330 + call PreBattleSaveRegisters + ld a, [H_DOWNARROWBLINKCNT2] ; $ff8c + ld [$cf13], a + call EngageMapTrainer + call InitBattleEnemyParameters + xor a + ld [wJoypadForbiddenButtonsMask], a + ld a, $5 + jp SilphCo11Script_621c8 + +SilphCo11TextPointers: ; 622b7 (18:62b7) + dw SilphCo11Text1 + dw SilphCo11Text2 + dw SilphCo11Text3 + dw SilphCo11Text4 + dw SilphCo11Text5 + dw SilphCo11Text6 + +SilphCo11TrainerHeaders: ; 622c3 (18:62c3) +SilphCo11TrainerHeader0: ; 622c3 (18:62c3) + db $4 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d837 ; flag's byte + dw SilphCo11BattleText1 ; 0x6344 TextBeforeBattle + dw SilphCo11AfterBattleText1 ; 0x634e TextAfterBattle + dw SilphCo11EndBattleText1 ; 0x6349 TextEndBattle + dw SilphCo11EndBattleText1 ; 0x6349 TextEndBattle + +SilphCo11TrainerHeader1: ; 622cf (18:62cf) + db $5 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d837 ; flag's byte + dw SilphCo11BattleText2 ; 0x635d TextBeforeBattle + dw SilphCo11AfterBattleText2 ; 0x6367 TextAfterBattle + dw SilphCo11EndBattleText2 ; 0x6362 TextEndBattle + dw SilphCo11EndBattleText2 ; 0x6362 TextEndBattle + + db $ff + +SilphCo11Text1: ; 622dc (18:62dc) + db $08 ; asm + ld a, [$d838] + bit 5, a + jp nz, .asm_62308 + ld hl, SilphCoPresidentText + call PrintText + ld bc, (MASTER_BALL << 8) | 1 + call GiveItem + jr nc, .BagFull + ld hl, ReceivedSilphCoMasterBallText + call PrintText + ld hl, $d838 + set 5, [hl] + jr .asm_fd405 ; 0x622fe +.BagFull + ld hl, SilphCoMasterBallNoRoomText + call PrintText + jr .asm_fd405 ; 0x62306 +.asm_62308 ; 0x62308 + ld hl, SilphCo10Text_6231c + call PrintText +.asm_fd405 ; 0x6230e + jp TextScriptEnd + +SilphCoPresidentText: ; 62311 (18:6311) + TX_FAR _SilphCoPresidentText + db "@" + +ReceivedSilphCoMasterBallText: ; 62316 (18:6316) + TX_FAR _ReceivedSilphCoMasterBallText + db $11, "@" + +SilphCo10Text_6231c: ; 6231c (18:631c) + TX_FAR _SilphCo10Text_6231c + db "@" + +SilphCoMasterBallNoRoomText: ; 62321 (18:6321) + TX_FAR _SilphCoMasterBallNoRoomText + db "@" + +SilphCo11Text2: ; 62326 (18:6326) + TX_FAR _SilphCo11Text2 + db "@" + +SilphCo11Text3: ; 6232b (18:632b) + TX_FAR _SilphCo11Text3 + db "@" + +SilphCo10Text_62330: ; 62330 (18:6330) + TX_FAR _SilphCo10Text_62330 + db "@" + +SilphCo11Text6: ; 62335 (18:6335) + TX_FAR _SilphCo10Text_62335 + db "@" + +SilphCo11Text4: ; 6233a (18:633a) + db $08 ; asm + ld hl, SilphCo11TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +SilphCo11BattleText1: ; 62344 (18:6344) + TX_FAR _SilphCo11BattleText1 + db "@" + +SilphCo11EndBattleText1: ; 62349 (18:6349) + TX_FAR _SilphCo11EndBattleText1 + db "@" + +SilphCo11AfterBattleText1: ; 6234e (18:634e) + TX_FAR _SilphCo11AfterBattleText1 + db "@" + +SilphCo11Text5: ; 62353 (18:6353) + db $08 ; asm + ld hl, SilphCo11TrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +SilphCo11BattleText2: ; 6235d (18:635d) + TX_FAR _SilphCo11BattleText2 + db "@" + +SilphCo11EndBattleText2: ; 62362 (18:6362) + TX_FAR _SilphCo11EndBattleText2 + db "@" + +SilphCo11AfterBattleText2: ; 62367 (18:6367) + TX_FAR _SilphCo11AfterBattleText2 + db "@" + +SilphCo10Text_6236c: ; 6236c (18:636c) + db $8 + ld hl, SilphCo10Text_6237b + call PrintText + ld a, PORYGON + call DisplayPokedex + jp TextScriptEnd + +SilphCo10Text_6237b: ; 6237b (18:637b) + TX_FAR _SilphCo10Text_6237b + db "@" diff --git a/scripts/silphco2.asm b/scripts/silphco2.asm new file mode 100755 index 00000000..da59cc4c --- /dev/null +++ b/scripts/silphco2.asm @@ -0,0 +1,248 @@ +SilphCo2Script: ; 59cf1 (16:5cf1) + call SilphCo2Script_59d07 + call EnableAutoTextBoxDrawing + ld hl, SilphCo2TrainerHeaders + ld de, SilphCo2ScriptPointers + ld a, [W_SILPHCO2CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_SILPHCO2CURSCRIPT], a + ret + +SilphCo2Script_59d07: ; 59d07 (16:5d07) + ld hl, $d126 + bit 5, [hl] + res 5, [hl] + ret z + ld hl, DataTable_59d3e + call SilphCo2Script_59d43 + call SilphCo2Script_59d6f + ld a, [$d826] + bit 5, a + jr nz, .asm_59d2e + push af + ld a, $54 + ld [$d09f], a + ld bc, $0202 + ld a, $17 + call Predef + pop af +.asm_59d2e + bit 6, a + ret nz + ld a, $54 + ld [$d09f], a + ld bc, $0502 + ld a, $17 + jp Predef + +DataTable_59d3e: ; 59d3e (16:5d3e) + db $02,$02,$05,$02,$FF + +SilphCo2Script_59d43: ; 59d43 (16:5d43) + push hl + ld hl, $d73f + ld a, [hli] + ld b, a + ld a, [hl] + ld c, a + xor a + ld [$ffe0], a + pop hl +.asm_59d4f + ld a, [hli] + cp $ff + jr z, .asm_59d6b + push hl + ld hl, $ffe0 + inc [hl] + pop hl + cp b + jr z, .asm_59d60 + inc hl + jr .asm_59d4f +.asm_59d60 + ld a, [hli] + cp c + jr nz, .asm_59d4f + ld hl, $d73f + xor a + ld [hli], a + ld [hl], a + ret +.asm_59d6b + xor a + ld [$ffe0], a + ret + +SilphCo2Script_59d6f: ; 59d6f (16:5d6f) + ld hl, $d826 + ld a, [$ffe0] + and a + ret z + cp $1 + jr nz, .asm_59d7d + set 5, [hl] + ret +.asm_59d7d + set 6, [hl] + ret + +SilphCo2ScriptPointers: ; 59d80 (16:5d80) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +SilphCo2TextPointers: ; 59d86 (16:5d86) + dw SilphCo2Text1 + dw SilphCo2Text2 + dw SilphCo2Text3 + dw SilphCo2Text4 + dw SilphCo2Text5 + +SilphCo2TrainerHeaders: ; 59d90 (16:5d90) +SilphCo2TrainerHeader0: ; 59d90 (16:5d90) + db $2 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d825 ; flag's byte + dw SilphCo2BattleText1 ; 0x5e2a TextBeforeBattle + dw SilphCo2AfterBattleText1 ; 0x5e34 TextAfterBattle + dw SilphCo2EndBattleText1 ; 0x5e2f TextEndBattle + dw SilphCo2EndBattleText1 ; 0x5e2f TextEndBattle + +SilphCo2TrainerHeader1: ; 59d9c (16:5d9c) + db $3 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d825 ; flag's byte + dw SilphCo2BattleText2 ; 0x5e39 TextBeforeBattle + dw SilphCo2AfterBattleText2 ; 0x5e43 TextAfterBattle + dw SilphCo2EndBattleText2 ; 0x5e3e TextEndBattle + dw SilphCo2EndBattleText2 ; 0x5e3e TextEndBattle + +SilphCo2TrainerHeader2: ; 59da8 (16:5da8) + db $4 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d825 ; flag's byte + dw SilphCo2BattleText3 ; 0x5e48 TextBeforeBattle + dw SilphCo2AfterBattleText3 ; 0x5e52 TextAfterBattle + dw SilphCo2EndBattleText3 ; 0x5e4d TextEndBattle + dw SilphCo2EndBattleText3 ; 0x5e4d TextEndBattle + +SilphCo2TrainerHeader3: ; 59db4 (16:5db4) + db $5 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d825 ; flag's byte + dw SilphCo2BattleText4 ; 0x5e57 TextBeforeBattle + dw SilphCo2AfterBattleText4 ; 0x5e61 TextAfterBattle + dw SilphCo2EndBattleText4 ; 0x5e5c TextEndBattle + dw SilphCo2EndBattleText4 ; 0x5e5c TextEndBattle + + db $ff + +SilphCo2Text1: ; 59dc1 (16:5dc1) + db $08 ; asm + ld a, [$d826] + bit 7, a + jr nz, asm_b8a0d ; 0x59dc7 + ld hl, SilphCo2Text_59ded + call PrintText + ld bc, (TM_36 << 8) | 1 + call GiveItem + ld hl, TM36NoRoomText + jr nc, asm_2c1e0 ; 0x59dd8 + ld hl, $d826 + set 7, [hl] + ld hl, ReceivedTM36Text + jr asm_2c1e0 ; 0x59de2 +asm_b8a0d ; 0x59de4 + ld hl, TM36ExplanationText +asm_2c1e0 ; 0x59de7 + call PrintText + jp TextScriptEnd + +SilphCo2Text_59ded: ; 59ded (16:5ded) + TX_FAR _SilphCo2Text_59ded + db "@" + +ReceivedTM36Text: ; 59df2 (16:5df2) + TX_FAR _ReceivedTM36Text + db $0B, "@" + +TM36ExplanationText: ; 59df8 (16:5df8) + TX_FAR _TM36ExplanationText + db "@" + +TM36NoRoomText: ; 59dfd (16:5dfd) + TX_FAR _TM36NoRoomText + db "@" + +SilphCo2Text2: ; 59e02 (16:5e02) + db $08 ; asm + ld hl, SilphCo2TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +SilphCo2Text3: ; 59e0c (16:5e0c) + db $08 ; asm + ld hl, SilphCo2TrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +SilphCo2Text4: ; 59e16 (16:5e16) + db $08 ; asm + ld hl, SilphCo2TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +SilphCo2Text5: ; 59e20 (16:5e20) + db $08 ; asm + ld hl, SilphCo2TrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +SilphCo2BattleText1: ; 59e2a (16:5e2a) + TX_FAR _SilphCo2BattleText1 + db "@" + +SilphCo2EndBattleText1: ; 59e2f (16:5e2f) + TX_FAR _SilphCo2EndBattleText1 + db "@" + +SilphCo2AfterBattleText1: ; 59e34 (16:5e34) + TX_FAR _SilphCo2AfterBattleText1 + db "@" + +SilphCo2BattleText2: ; 59e39 (16:5e39) + TX_FAR _SilphCo2BattleText2 + db "@" + +SilphCo2EndBattleText2: ; 59e3e (16:5e3e) + TX_FAR _SilphCo2EndBattleText2 + db "@" + +SilphCo2AfterBattleText2: ; 59e43 (16:5e43) + TX_FAR _SilphCo2AfterBattleText2 + db "@" + +SilphCo2BattleText3: ; 59e48 (16:5e48) + TX_FAR _SilphCo2BattleText3 + db "@" + +SilphCo2EndBattleText3: ; 59e4d (16:5e4d) + TX_FAR _SilphCo2EndBattleText3 + db "@" + +SilphCo2AfterBattleText3: ; 59e52 (16:5e52) + TX_FAR _SilphCo2AfterBattleText3 + db "@" + +SilphCo2BattleText4: ; 59e57 (16:5e57) + TX_FAR _SilphCo2BattleText4 + db "@" + +SilphCo2EndBattleText4: ; 59e5c (16:5e5c) + TX_FAR _SilphCo2EndBattleText4 + db "@" + +SilphCo2AfterBattleText4: ; 59e61 (16:5e61) + TX_FAR _SilphCo2AfterBattleText4 + db "@" diff --git a/scripts/silphco3.asm b/scripts/silphco3.asm new file mode 100755 index 00000000..a7ba1bee --- /dev/null +++ b/scripts/silphco3.asm @@ -0,0 +1,139 @@ +SilphCo3Script: ; 59f5b (16:5f5b) + call SilphCo3Script_59f71 + call EnableAutoTextBoxDrawing + ld hl, SilphCo3TrainerHeaders + ld de, SilphCo3ScriptPointers + ld a, [W_SILPHCO3CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_SILPHCO3CURSCRIPT], a + ret + +SilphCo3Script_59f71: ; 59f71 (16:5f71) + ld hl, $d126 + bit 5, [hl] + res 5, [hl] + ret z + ld hl, DataTable_59fa8 ; $5fa8 + call SilphCo2Script_59d43 + call SilphCo3Script_59fad + ld a, [$d828] + bit 0, a + jr nz, .asm_59f98 + push af + ld a, $5f + ld [$d09f], a + ld bc, $404 + ld a, $17 + call Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) + pop af +.asm_59f98 + bit 1, a + ret nz + ld a, $5f + ld [$d09f], a + ld bc, $408 + ld a, $17 + jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) + +DataTable_59fa8: ; 59fa8 (16:5fa8) + db $04,$04,$04,$08,$FF + +SilphCo3Script_59fad: ; 59fad (16:5fad) + ld hl, $d828 + ld a, [$ffe0] + and a + ret z + cp $1 + jr nz, .asm_59fbb + set 0, [hl] + ret +.asm_59fbb + set 1, [hl] + ret + +SilphCo3ScriptPointers: ; 59fbe (16:5fbe) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +SilphCo3TextPointers: ; 59fc4 (16:5fc4) + dw SilphCo3Text1 + dw SilphCo3Text2 + dw SilphCo3Text3 + dw Predef5CText + +SilphCo3TrainerHeaders: ; 59fcc (16:5fcc) +SilphCo3TrainerHeader0: ; 59fcc (16:5fcc) + db $2 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d827 ; flag's byte + dw SilphCo3BattleText1 ; 0x600d TextBeforeBattle + dw SilphCo3AfterBattleText1 ; 0x6017 TextAfterBattle + dw SilphCo3EndBattleText1 ; 0x6012 TextEndBattle + dw SilphCo3EndBattleText1 ; 0x6012 TextEndBattle + +SilphCo3TrainerHeader1: ; 59fd8 (16:5fd8) + db $3 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d827 ; flag's byte + dw SilphCo3BattleText2 ; 0x6026 TextBeforeBattle + dw SilphCo3AfterBattleText2 ; 0x6030 TextAfterBattle + dw SilphCo3EndBattleText2 ; 0x602b TextEndBattle + dw SilphCo3EndBattleText2 ; 0x602b TextEndBattle + + db $ff + +SilphCo3Text1: ; 59fe5 (16:5fe5) + db $08 ; asm + ld a, [$d838] + bit 7, a + ld hl, SilphCo3Text_59ffe + jr nz, asm_8c56f ; 0x59fee + ld hl, SilphCo3Text_59ff9 +asm_8c56f ; 0x59ff3 + call PrintText + jp TextScriptEnd + +SilphCo3Text_59ff9: ; 59ff9 (16:5ff9) + TX_FAR _SilphCo3Text_59ff9 + db "@" + +SilphCo3Text_59ffe: ; 59ffe (16:5ffe) + TX_FAR _SilphCo3Text_59ffe + db "@" + +SilphCo3Text2: ; 5a003 (16:6003) + db $08 ; asm + ld hl, SilphCo3TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +SilphCo3BattleText1: ; 5a00d (16:600d) + TX_FAR _SilphCo3BattleText1 + db "@" + +SilphCo3EndBattleText1: ; 5a012 (16:6012) + TX_FAR _SilphCo3EndBattleText1 + db "@" + +SilphCo3AfterBattleText1: ; 5a017 (16:6017) + TX_FAR _SilphCo3AfterBattleText1 + db "@" + +SilphCo3Text3: ; 5a01c (16:601c) + db $08 ; asm + ld hl, SilphCo3TrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +SilphCo3BattleText2: ; 5a026 (16:6026) + TX_FAR _SilphCo3BattleText2 + db "@" + +SilphCo3EndBattleText2: ; 5a02b (16:602b) + TX_FAR _SilphCo3EndBattleText2 + db "@" + +SilphCo3AfterBattleText2: ; 5a030 (16:6030) + TX_FAR _SilphCo3AfterBattleText2 + db "@" diff --git a/scripts/silphco4.asm b/scripts/silphco4.asm new file mode 100755 index 00000000..1777ff8c --- /dev/null +++ b/scripts/silphco4.asm @@ -0,0 +1,201 @@ +SilphCo4Script: ; 19d0b (6:5d0b) + call SilphCo4Script_19d21 + call EnableAutoTextBoxDrawing + ld hl, SilphCo4TrainerHeaders + ld de, SilphCo4ScriptPointers + ld a, [W_SILPHCO4CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_SILPHCO4CURSCRIPT], a + ret + +SilphCo4Script_19d21: ; 19d21 (6:5d21) + ld hl, $d126 + bit 5, [hl] + res 5, [hl] + ret z + ld hl, SilphCo4Data19d58 + call SilphCo4Script_19d5d + call SilphCo4Script_19d89 + ld a, [$d82a] + bit 0, a + jr nz, .asm_19d48 + push af + ld a, $54 + ld [$d09f], a + ld bc, $0602 + ld a, $17 + call Predef + pop af +.asm_19d48 + bit 1, a + ret nz + ld a, $54 + ld [$d09f], a + ld bc, $0406 + ld a, $17 + jp Predef + +SilphCo4Data19d58: ; 19d58 (6:5d58) + db $06, $02, $04, $06, $ff + +SilphCo4Script_19d5d: ; 19d5d (6:5d5d) + push hl + ld hl, $d73f + ld a, [hli] + ld b, a + ld a, [hl] + ld c, a + xor a + ld [$ffe0], a + pop hl +.asm_19d69 + ld a, [hli] + cp $ff + jr z, .asm_19d85 ; 0x19d6c $17 + push hl + ld hl, $ffe0 + inc [hl] + pop hl + cp b + jr z, .asm_19d7a ; 0x19d75 $3 + inc hl + jr .asm_19d69 ; 0x19d78 $ef +.asm_19d7a + ld a, [hli] + cp c + jr nz, .asm_19d69 ; 0x19d7c $eb + ld hl, $d73f + xor a + ld [hli], a + ld [hl], a + ret +.asm_19d85 + xor a + ld [$ffe0], a + ret + +SilphCo4Script_19d89: ; 19d89 (6:5d89) + ld hl, $d82a + ld a, [$ffe0] + and a + ret z + cp $1 + jr nz, .asm_19d97 ; 0x19d92 $3 + set 0, [hl] + ret +.asm_19d97 + set 1, [hl] + ret + +SilphCo4ScriptPointers: ; 19d9a (6:5d9a) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +SilphCo4TextPointers: ; 19da0 (6:5da0) + dw SilphCo4Text1 + dw SilphCo4Text2 + dw SilphCo4Text3 + dw SilphCo4Text4 + dw Predef5CText + dw Predef5CText + dw Predef5CText + +SilphCo4TrainerHeaders: ; 19dae (6:5dae) +SilphCo4TrainerHeader0: ; 19dae (6:5dae) + db $2 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d829 ; flag's byte + dw SilphCo4BattleText2 ; 0x5df4 TextBeforeBattle + dw SilphCo4AfterBattleText2 ; 0x5dfe TextAfterBattle + dw SilphCo4EndBattleText2 ; 0x5df9 TextEndBattle + dw SilphCo4EndBattleText2 ; 0x5df9 TextEndBattle + +SilphCo4TrainerHeader2: ; 19dba (6:5dba) + db $3 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d829 ; flag's byte + dw SilphCo4BattleText3 ; 0x5e0d TextBeforeBattle + dw SilphCo4AfterBattleText3 ; 0x5e17 TextAfterBattle + dw SilphCo4EndBattleText3 ; 0x5e12 TextEndBattle + dw SilphCo4EndBattleText3 ; 0x5e12 TextEndBattle + +SilphCo4TrainerHeader3: ; 19dc6 (6:5dc6) + db $4 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d829 ; flag's byte + dw SilphCo4BattleText4 ; 0x5e26 TextBeforeBattle + dw SilphCo4AfterBattleText4 ; 0x5e30 TextAfterBattle + dw SilphCo4EndBattleText4 ; 0x5e2b TextEndBattle + dw SilphCo4EndBattleText4 ; 0x5e2b TextEndBattle + + db $ff + +SilphCo4Text1: ; 19dd3 (6:5dd3) + db $08 ; asm + ld hl, SilphCo4Text_19de0 + ld de, SilphCo4Text_19de5 + call SilphCo6Script_1a22f + jp TextScriptEnd + +SilphCo4Text_19de0: ; 19de0 (6:5de0) + TX_FAR _SilphCo4Text_19de0 + db "@" + +SilphCo4Text_19de5: ; 19de5 (6:5de5) + TX_FAR _SilphCo4Text_19de5 + db "@" + +SilphCo4Text2: ; 19dea (6:5dea) + db $08 ; asm + ld hl, SilphCo4TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +SilphCo4BattleText2: ; 19df4 (6:5df4) + TX_FAR _SilphCo4BattleText2 + db "@" + +SilphCo4EndBattleText2: ; 19df9 (6:5df9) + TX_FAR _SilphCo4EndBattleText2 + db "@" + +SilphCo4AfterBattleText2: ; 19dfe (6:5dfe) + TX_FAR _SilphCo4AfterBattleText2 + db "@" + +SilphCo4Text3: ; 19e03 (6:5e03) + db $08 ; asm + ld hl, SilphCo4TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +SilphCo4BattleText3: ; 19e0d (6:5e0d) + TX_FAR _SilphCo4BattleText3 + db "@" + +SilphCo4EndBattleText3: ; 19e12 (6:5e12) + TX_FAR _SilphCo4EndBattleText3 + db "@" + +SilphCo4AfterBattleText3: ; 19e17 (6:5e17) + TX_FAR _SilphCo4AfterBattleText3 + db "@" + +SilphCo4Text4: ; 19e1c (6:5e1c) + db $08 ; asm + ld hl, SilphCo4TrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +SilphCo4BattleText4: ; 19e26 (6:5e26) + TX_FAR _SilphCo4BattleText4 + db "@" + +SilphCo4EndBattleText4: ; 19e2b (6:5e2b) + TX_FAR _SilphCo4EndBattleText4 + db "@" + +SilphCo4AfterBattleText4: ; 19e30 (6:5e30) + TX_FAR _SilphCo4AfterBattleText4 + db "@" diff --git a/scripts/silphco5.asm b/scripts/silphco5.asm new file mode 100755 index 00000000..c4efc16b --- /dev/null +++ b/scripts/silphco5.asm @@ -0,0 +1,223 @@ +SilphCo5Script: ; 19f37 (6:5f37) + call SilphCo5Script_19f4d + call EnableAutoTextBoxDrawing + ld hl, SilphCo5TrainerHeaders + ld de, SilphCo5ScriptPointers + ld a, [W_SILPHCO5CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_SILPHCO5CURSCRIPT], a + ret + +SilphCo5Script_19f4d: ; 19f4d (6:5f4d) + ld hl, $d126 + bit 5, [hl] + res 5, [hl] + ret z + ld hl, SilphCo5Coords + call SilphCo4Script_19d5d + call SilphCo5Script_19f9e + ld a, [$d82c] + bit 0, a + jr nz, .asm_19f74 ; 0x19f63 $f + push af + ld a, $5f + ld [$d09f], a + ld bc, $0203 + ld a, $17 + call Predef + pop af +.asm_19f74 + bit 1, a + jr nz, .asm_19f87 ; 0x19f76 $f + push af + ld a, $5f + ld [$d09f], a + ld bc, $0603 + ld a, $17 + call Predef + pop af +.asm_19f87 + bit 2, a + ret nz + ld a, $5f + ld [$d09f], a + ld bc, $0507 + ld a, $17 + jp Predef + +SilphCo5Coords: ; 19f97 (6:5f97) ; coords? + db $02, $03, $06, $03, $05, $07, $ff + +SilphCo5Script_19f9e: ; 19f9e (6:5f9e) + ld hl, $d82c + ld a, [$ffe0] + and a + ret z + cp $1 + jr nz, .asm_19fac ; 0x19fa7 $3 + set 0, [hl] + ret +.asm_19fac + cp $2 + jr nz, .asm_19fb3 ; 0x19fae $3 + set 1, [hl] + ret +.asm_19fb3 + set 2, [hl] + ret + +SilphCo5ScriptPointers: ; 19fb6 (6:5fb6) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +SilphCo5TextPointers: ; 19fbc (6:5fbc) + dw SilphCo5Text1 + dw SilphCo5Text2 + dw SilphCo5Text3 + dw SilphCo5Text4 + dw SilphCo5Text5 + dw Predef5CText + dw Predef5CText + dw Predef5CText + dw SilphCo5Text9 + dw SilphCo5Text10 + dw SilphCo5Text11 + +SilphCo5TrainerHeaders: ; 19fd2 (6:5fd2) +Silphco5TrainerHeader0: ; 19fd2 (6:5fd2) + db $2 ; flag's bit + db ($1 << 4) ; trainer's view range + dw $d82b ; flag's byte + dw SilphCo5BattleText2 ; 0x6024 TextBeforeBattle + dw SilphCo5AfterBattleText2 ; 0x602e TextAfterBattle + dw SilphCo5EndBattleText2 ; 0x6029 TextEndBattle + dw SilphCo5EndBattleText2 ; 0x6029 TextEndBattle + +Silphco5TrainerHeader2: ; 19fde (6:5fde) + db $3 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d82b ; flag's byte + dw SilphCo5BattleText3 ; 0x603d TextBeforeBattle + dw SilphCo5AfterBattleText3 ; 0x6047 TextAfterBattle + dw SilphCo5EndBattleText3 ; 0x6042 TextEndBattle + dw SilphCo5EndBattleText3 ; 0x6042 TextEndBattle + +Silphco5TrainerHeader3: ; 19fea (6:5fea) + db $4 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d82b ; flag's byte + dw SilphCo5BattleText4 ; 0x6056 TextBeforeBattle + dw SilphCo5AfterBattleText4 ; 0x6060 TextAfterBattle + dw SilphCo5EndBattleText4 ; 0x605b TextEndBattle + dw SilphCo5EndBattleText4 ; 0x605b TextEndBattle + +Silphco5TrainerHeader4: ; 19ff6 (6:5ff6) + db $5 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d82b ; flag's byte + dw SilphCo5BattleText5 ; 0x606f TextBeforeBattle + dw SilphCo5AfterBattleText5 ; 0x6079 TextAfterBattle + dw SilphCo5EndBattleText5 ; 0x6074 TextEndBattle + dw SilphCo5EndBattleText5 ; 0x6074 TextEndBattle + + db $ff + +SilphCo5Text1: ; 1a003 (6:6003) + db $08 ; asm + ld hl, SilphCo5Text_1a010 + ld de, SilphCo5Text_1a015 + call SilphCo6Script_1a22f + jp TextScriptEnd + +SilphCo5Text_1a010: ; 1a010 (6:6010) + TX_FAR _SilphCo5Text_1a010 + db "@" + +SilphCo5Text_1a015: ; 1a015 (6:6015) + TX_FAR _SilphCo5Text_1a015 + db "@" + +SilphCo5Text2: ; 1a01a (6:601a) + db $08 ; asm + ld hl, Silphco5TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +SilphCo5BattleText2: ; 1a024 (6:6024) + TX_FAR _SilphCo5BattleText2 + db "@" + +SilphCo5EndBattleText2: ; 1a029 (6:6029) + TX_FAR _SilphCo5EndBattleText2 + db "@" + +SilphCo5AfterBattleText2: ; 1a02e (6:602e) + TX_FAR _SilphCo5AfterBattleText2 + db "@" + +SilphCo5Text3: ; 1a033 (6:6033) + db $08 ; asm + ld hl, Silphco5TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +SilphCo5BattleText3: ; 1a03d (6:603d) + TX_FAR _SilphCo5BattleText3 + db "@" + +SilphCo5EndBattleText3: ; 1a042 (6:6042) + TX_FAR _SilphCo5EndBattleText3 + db "@" + +SilphCo5AfterBattleText3: ; 1a047 (6:6047) + TX_FAR _SilphCo5AfterBattleText3 + db "@" + +SilphCo5Text4: ; 1a04c (6:604c) + db $08 ; asm + ld hl, Silphco5TrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +SilphCo5BattleText4: ; 1a056 (6:6056) + TX_FAR _SilphCo5BattleText4 + db "@" + +SilphCo5EndBattleText4: ; 1a05b (6:605b) + TX_FAR _SilphCo5EndBattleText4 + db "@" + +SilphCo5AfterBattleText4: ; 1a060 (6:6060) + TX_FAR _SilphCo5AfterBattleText4 + db "@" + +SilphCo5Text5: ; 1a065 (6:6065) + db $08 ; asm + ld hl, Silphco5TrainerHeader4 + call TalkToTrainer + jp TextScriptEnd + +SilphCo5BattleText5: ; 1a06f (6:606f) + TX_FAR _SilphCo5BattleText5 + db "@" + +SilphCo5EndBattleText5: ; 1a074 (6:6074) + TX_FAR _SilphCo5EndBattleText5 + db "@" + +SilphCo5AfterBattleText5: ; 1a079 (6:6079) + TX_FAR _SilphCo5AfterBattleText5 + db "@" + +SilphCo5Text9: ; 1a07e (6:607e) + TX_FAR _SilphCo5Text9 + db "@" + +SilphCo5Text10: ; 1a083 (6:6083) + TX_FAR _SilphCo5Text10 + db "@" + +SilphCo5Text11: ; 1a088 (6:6088) + TX_FAR _SilphCo5Text11 + db "@" diff --git a/scripts/silphco6.asm b/scripts/silphco6.asm new file mode 100755 index 00000000..2b5b7ebf --- /dev/null +++ b/scripts/silphco6.asm @@ -0,0 +1,225 @@ +SilphCo6Script: ; 1a1a9 (6:61a9) + call SilphCo6Script_1a1bf + call EnableAutoTextBoxDrawing + ld hl, SilphCo6TrainerHeaders + ld de, SilphCo6ScriptPointers + ld a, [W_SILPHCO6CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_SILPHCO6CURSCRIPT], a + ret + +SilphCo6Script_1a1bf: ; 1a1bf (6:61bf) + ld hl, $d126 + bit 5, [hl] + res 5, [hl] + ret z + ld hl, SilphCo6Coords1 + call SilphCo4Script_19d5d + call SilphCo6Script_1a1e6 + ld a, [$d82e] + bit 7, a + ret nz + ld a, $5f + ld [$d09f], a + ld bc, $0602 + ld a, $17 + jp Predef + +SilphCo6Coords1: ; 1a1e3 (6:61e3) + db $06, $02 + db $ff + +SilphCo6Script_1a1e6: ; 1a1e6 (6:61e6) + ld a, [$ffe0] + and a + ret z + ld hl, $d82e + set 7, [hl] + ret + +SilphCo6ScriptPointers: ; 1a1f0 (6:61f0) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +SilphCo6TextPointers: ; 1a1f6 (6:61f6) + dw SilphCo6Text1 + dw SilphCo6Text2 + dw SilphCo6Text3 + dw SilphCo6Text4 + dw SilphCo6Text5 + dw SilphCo6Text6 + dw SilphCo6Text7 + dw SilphCo6Text8 + dw Predef5CText + dw Predef5CText + +SilphCo6TrainerHeaders: ; 1a20a (6:620a) +SilphCo6TrainerHeader0: ; 1a20a (6:620a) + db $6 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d82d ; flag's byte + dw SilphCo6BattleText2 ; 0x62ba TextBeforeBattle + dw SilphCo6AfterBattleText2 ; 0x62c4 TextAfterBattle + dw SilphCo6EndBattleText2 ; 0x62bf TextEndBattle + dw SilphCo6EndBattleText2 ; 0x62bf TextEndBattle + +SilphCo6TrainerHeader2: ; 1a216 (6:6216) + db $7 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d82d ; flag's byte + dw SilphCo6BattleText3 ; 0x62d3 TextBeforeBattle + dw SilphCo6AfterBattleText3 ; 0x62dd TextAfterBattle + dw SilphCo6EndBattleText3 ; 0x62d8 TextEndBattle + dw SilphCo6EndBattleText3 ; 0x62d8 TextEndBattle + +SilphCo6TrainerHeader3: ; 1a222 (6:6222) + db $8 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d82d ; flag's byte + dw SilphCo6BattleText4 ; 0x62ec TextBeforeBattle + dw SilphCo6AfterBattleText4 ; 0x62f6 TextAfterBattle + dw SilphCo6EndBattleText4 ; 0x62f1 TextEndBattle + dw SilphCo6EndBattleText4 ; 0x62f1 TextEndBattle + + db $ff + +SilphCo6Script_1a22f: ; 1a22f (6:622f) + ld a, [$d838] + bit 7, a + jr nz, .asm_1a238 ; 0x1a234 $2 + jr .asm_1a23a ; 0x1a236 $2 +.asm_1a238 + ld h, d + ld l, e +.asm_1a23a + jp PrintText + +SilphCo6Text1: ; 1a23d (6:623d) + db $08 ; asm + ld hl, SilphCo6Text_1a24a + ld de, SilphCo6Text_1a24f + call SilphCo6Script_1a22f + jp TextScriptEnd + +SilphCo6Text_1a24a: ; 1a24a (6:624a) + TX_FAR _SilphCo6Text_1a24a + db "@" + +SilphCo6Text_1a24f: ; 1a24f (6:624f) + TX_FAR _SilphCo6Text_1a24f + db "@" + +SilphCo6Text2: ; 1a254 (6:6254) + db $08 ; asm + ld hl, SilphCo6Text_1a261 + ld de, SilphCo6Text_1a266 + call SilphCo6Script_1a22f + jp TextScriptEnd + +SilphCo6Text_1a261: ; 1a261 (6:6261) + TX_FAR _SilphCo6Text_1a261 + db "@" + +SilphCo6Text_1a266: ; 1a266 (6:6266) + TX_FAR _SilphCo6Text_1a266 + db "@" + +SilphCo6Text3: ; 1a26b (6:626b) + db $08 ; asm + ld hl, SilphCo6Text_1a278 + ld de, SilphCo6Text_1a27d + call SilphCo6Script_1a22f + jp TextScriptEnd + +SilphCo6Text_1a278: ; 1a278 (6:6278) + TX_FAR _SilphCo6Text_1a278 + db "@" + +SilphCo6Text_1a27d: ; 1a27d (6:627d) + TX_FAR _SilphCo6Text_1a27d + db "@" + +SilphCo6Text4: ; 1a282 (6:6282) + db $08 ; asm + ld hl, SilphCo6Text_1a28f + ld de, SilphCo6Text_1a294 + call SilphCo6Script_1a22f + jp TextScriptEnd + +SilphCo6Text_1a28f: ; 1a28f (6:628f) + TX_FAR _SilphCo6Text_1a28f + db "@" + +SilphCo6Text_1a294: ; 1a294 (6:6294) + TX_FAR _SilphCo6Text_1a294 + db "@" + +SilphCo6Text5: ; 1a299 (6:6299) + db $08 ; asm + ld hl, SilphCo6Text_1a2a6 + ld de, SilphCo6Text_1a2ab + call SilphCo6Script_1a22f + jp TextScriptEnd + +SilphCo6Text_1a2a6: ; 1a2a6 (6:62a6) + TX_FAR _SilphCo6Text_1a2a6 + db "@" + +SilphCo6Text_1a2ab: ; 1a2ab (6:62ab) + TX_FAR _SilphCo6Text_1a2ab + db "@" + +SilphCo6Text6: ; 1a2b0 (6:62b0) + db $08 ; asm + ld hl, SilphCo6TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +SilphCo6BattleText2: ; 1a2ba (6:62ba) + TX_FAR _SilphCo6BattleText2 + db "@" + +SilphCo6EndBattleText2: ; 1a2bf (6:62bf) + TX_FAR _SilphCo6EndBattleText2 + db "@" + +SilphCo6AfterBattleText2: ; 1a2c4 (6:62c4) + TX_FAR _SilphCo6AfterBattleText2 + db "@" + +SilphCo6Text7: ; 1a2c9 (6:62c9) + db $08 ; asm + ld hl, SilphCo6TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +SilphCo6BattleText3: ; 1a2d3 (6:62d3) + TX_FAR _SilphCo6BattleText3 + db "@" + +SilphCo6EndBattleText3: ; 1a2d8 (6:62d8) + TX_FAR _SilphCo6EndBattleText3 + db "@" + +SilphCo6AfterBattleText3: ; 1a2dd (6:62dd) + TX_FAR _SilphCo6AfterBattleText3 + db "@" + +SilphCo6Text8: ; 1a2e2 (6:62e2) + db $08 ; asm + ld hl, SilphCo6TrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +SilphCo6BattleText4: ; 1a2ec (6:62ec) + TX_FAR _SilphCo6BattleText4 + db "@" + +SilphCo6EndBattleText4: ; 1a2f1 (6:62f1) + TX_FAR _SilphCo6EndBattleText4 + db "@" + +SilphCo6AfterBattleText4: ; 1a2f6 (6:62f6) + TX_FAR _SilphCo6AfterBattleText4 + db "@" diff --git a/scripts/silphco7.asm b/scripts/silphco7.asm new file mode 100755 index 00000000..5691ad8a --- /dev/null +++ b/scripts/silphco7.asm @@ -0,0 +1,523 @@ +SilphCo7Script: ; 51b61 (14:5b61) + call SilphCo7Script_51b77 + call EnableAutoTextBoxDrawing + ld hl, SilphCo7TrainerHeaders + ld de, SilphCo7ScriptPointers + ld a, [W_SILPHCO7CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_SILPHCO7CURSCRIPT], a + ret + +SilphCo7Script_51b77: ; 51b77 (14:5b77) + ld hl, $d126 + bit 5, [hl] + res 5, [hl] + ret z + ld hl, DataTable_51bc1 ; $5bc1 + call SilphCo7Text_51bc8 + call SilphCo7Text_51bf4 + ld a, [$d830] + bit 4, a + jr nz, .asm_51b9e + push af + ld a, $54 + ld [$d09f], a + ld bc, $305 + ld a, $17 + call Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) + pop af +.asm_51b9e + bit 5, a + jr nz, .asm_51bb1 + push af + ld a, $54 + ld [$d09f], a + ld bc, $20a + ld a, $17 + call Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) + pop af +.asm_51bb1 + bit 6, a + ret nz + ld a, $54 + ld [$d09f], a + ld bc, $60a + ld a, $17 + jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) + +DataTable_51bc1: ; 51bc1 (14:5bc1) + db $03,$05,$02,$0A,$06,$0A,$FF + +SilphCo7Text_51bc8: ; 51bc8 (14:5bc8) + push hl + ld hl, $d73f + ld a, [hli] + ld b, a + ld a, [hl] + ld c, a + xor a + ld [$ffe0], a + pop hl +.asm_51bd4 + ld a, [hli] + cp $ff + jr z, .asm_51bf0 + push hl + ld hl, $ffe0 + inc [hl] + pop hl + cp b + jr z, .asm_51be5 + inc hl + jr .asm_51bd4 +.asm_51be5 + ld a, [hli] + cp c + jr nz, .asm_51bd4 + ld hl, $d73f + xor a + ld [hli], a + ld [hl], a + ret +.asm_51bf0 + xor a + ld [$ffe0], a + ret + +SilphCo7Text_51bf4: ; 51bf4 (14:5bf4) + ld hl, $d830 + ld a, [$ffe0] + and a + ret z + cp $1 + jr nz, .asm_51c02 + set 4, [hl] + ret +.asm_51c02 + cp $2 + jr nz, .asm_51c09 + set 5, [hl] + ret +.asm_51c09 + set 6, [hl] + ret + +SilphCo7Text_51c0c: ; 51c0c (14:5c0c) + xor a + ld [wJoypadForbiddenButtonsMask], a + +SilphCo7Text_51c10: ; 51c10 (14:5c10) + ld [W_SILPHCO7CURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +SilphCo7ScriptPointers: ; 51c17 (14:5c17) + dw SilphCo7Script0 + dw Func_324c + dw EndTrainerBattle + dw SilphCo7Script3 + dw SilphCo7Script4 + dw SilphCo7Script5 + +SilphCo7Script0: ; 51c23 (14:5c23) + ld a, [$d82f] + bit 0, a + jp nz, CheckFightingMapTrainers + ld hl, CoordsData_51c78 + call ArePlayerCoordsInArray + jp nc, CheckFightingMapTrainers + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + ld a, $4 + ld [$d528], a + ld a, $ff + ld [$c0ee], a + call PlaySound + ld c, BANK(Music_MeetRival) + ld a, MUSIC_MEET_RIVAL + call PlayMusic + ld a, $9 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + ld a, $9 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call SetSpriteMovementBytesToFF + ld de, MovementData_51c7d + ld a, [wWhichTrade] ; $cd3d + ld [$cf0d], a + cp $1 + jr z, .asm_51c6c + inc de +.asm_51c6c + ld a, $9 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call MoveSprite + ld a, $3 + jp SilphCo7Text_51c10 + +CoordsData_51c78: ; 51c78 (14:5c78) + db $02,$03 + db $03,$03 + db $FF + +MovementData_51c7d: ; 51c7d (14:5c7d) + db $40,$40,$40,$40,$FF + +SilphCo7Script3: ; 51c82 (14:5c82) + ld a, [$d730] + bit 0, a + ret nz + xor a + ld [wJoypadForbiddenButtonsMask], a + ld a, $d + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + call Delay3 + ld hl, $d72d + set 6, [hl] + set 7, [hl] + ld hl, SilphCo7Text14 ; $5ec8 + ld de, SilphCo7Text_51ecd ; $5ecd + call PreBattleSaveRegisters + ld a, SONY2 + $c8 + ld [W_CUROPPONENT], a ; $d059 + ld a, [W_RIVALSTARTER] ; $d715 + cp SQUIRTLE + jr nz, .asm_51cb6 + ld a, $7 + jr .asm_51cc0 +.asm_51cb6 + cp BULBASAUR + jr nz, .asm_51cbe + ld a, $8 + jr .asm_51cc0 +.asm_51cbe + ld a, $9 +.asm_51cc0 + ld [W_TRAINERNO], a ; $d05d + ld a, $4 + jp SilphCo7Text_51c10 + +SilphCo7Script4: ; 51cc8 (14:5cc8) + ld a, [W_ISINBATTLE] ; $d057 + cp $ff + jp z, SilphCo7Text_51c0c + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + ld hl, $d82f + set 0, [hl] + ld a, $4 + ld [$d528], a + ld a, $9 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + ld a, $4 + ld [$ff8d], a + call Func_34a6 + ld a, $f + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + ld a, $ff + ld [$c0ee], a + call PlaySound + callba Music_RivalAlternateStart + ld de, MovementData_51d1d + ld a, [$cf0d] + cp $1 + jr nz, .asm_51d0e + ld de, MovementData_51d1a +.asm_51d0e + ld a, $9 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call MoveSprite + ld a, $5 + jp SilphCo7Text_51c10 + +MovementData_51d1a: ; 51d1a (14:5d1a) + db $C0,$C0,$FF + +MovementData_51d1d: ; 51d1d (14:5d1d) + db $80,$40,$40,$C0,$C0,$C0,$00,$FF + +SilphCo7Script5: ; 51d25 (14:5d25) + ld a, [$d730] + bit 0, a + ret nz + ld a, $a7 + ld [$cc4d], a + ld a, $11 + call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7)) + call Func_2307 + xor a + ld [wJoypadForbiddenButtonsMask], a + jp SilphCo7Text_51c10 + +SilphCo7TextPointers: ; 51d3f (14:5d3f) + dw SilphCo7Text1 + dw SilphCo7Text2 + dw SilphCo7Text3 + dw SilphCo7Text4 + dw SilphCo7Text5 + dw SilphCo7Text6 + dw SilphCo7Text7 + dw SilphCo7Text8 + dw SilphCo7Text9 + dw Predef5CText + dw Predef5CText + dw Predef5CText + dw SilphCo7Text13 + dw SilphCo7Text14 + dw SilphCo7Text15 + +SilphCo7TrainerHeaders: ; 51d5d (14:5d5d) +SilphCo7TrainerHeader0: ; 51d5d (14:5d5d) + db $5 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d82f ; flag's byte + dw SilphCo7BattleText1 ; 0x5e5a TextBeforeBattle + dw SilphCo7AfterBattleText1 ; 0x5e64 TextAfterBattle + dw SilphCo7EndBattleText1 ; 0x5e5f TextEndBattle + dw SilphCo7EndBattleText1 ; 0x5e5f TextEndBattle + +SilphCo7TrainerHeader2: ; 51d69 (14:5d69) + db $6 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d82f ; flag's byte + dw SilphCo7BattleText2 ; 0x5e73 TextBeforeBattle + dw SilphCo7AfterBattleText2 ; 0x5e7d TextAfterBattle + dw SilphCo7EndBattleText2 ; 0x5e78 TextEndBattle + dw SilphCo7EndBattleText2 ; 0x5e78 TextEndBattle + +SilphCo7TrainerHeader3: ; 51d75 (14:5d75) + db $7 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d82f ; flag's byte + dw SilphCo7BattleText3 ; 0x5e8c TextBeforeBattle + dw SilphCo7AfterBattleText3 ; 0x5e96 TextAfterBattle + dw SilphCo7EndBattleText3 ; 0x5e91 TextEndBattle + dw SilphCo7EndBattleText3 ; 0x5e91 TextEndBattle + +SilphCo7TrainerHeader4: ; 51d81 (14:5d81) + db $8 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d82f ; flag's byte + dw SilphCo7BattleText4 ; 0x5ea5 TextBeforeBattle + dw SilphCo7AfterBattleText4 ; 0x5eaf TextAfterBattle + dw SilphCo7EndBattleText4 ; 0x5eaa TextEndBattle + dw SilphCo7EndBattleText4 ; 0x5eaa TextEndBattle + + db $ff + +SilphCo7Text1: +; lapras guy + db $08 ; asm + ld a, [$d72e] + bit 0, a ; got lapras? + jr z, .givelapras + ld a, [$d838] + bit 7, a ; saved silph? + jr nz, .savedsilph + ld hl, .LaprasGuyText + call PrintText + jr .done +.givelapras + ld hl, .MeetLaprasGuyText + call PrintText + ld bc, (LAPRAS << 8) | 15 + call GivePokemon + jr nc, .done + ld a, [$ccd3] + and a + call z, WaitForTextScrollButtonPress + call EnableAutoTextBoxDrawing + ld hl, .HeresYourLaprasText + call PrintText + ld hl, $d72e + set 0, [hl] + jr .done +.savedsilph + ld hl, .LaprasGuySavedText + call PrintText +.done + jp TextScriptEnd + +.MeetLaprasGuyText + TX_FAR _MeetLaprasGuyText + db "@" + +.HeresYourLaprasText + TX_FAR _HeresYourLaprasText + db "@" + +.LaprasGuyText + TX_FAR _LaprasGuyText + db "@" + +.LaprasGuySavedText + TX_FAR _LaprasGuySavedText + db "@" + +SilphCo7Text2: + db $8 + ld a, [$d838] + bit 7, a ; saved silph? + jr nz, .savedsilph + ld hl, .rockettext + call PrintText + jr .done +.savedsilph + ld hl, .savedtext + call PrintText +.done + jp TextScriptEnd + +.rockettext + TX_FAR _SilphCo7Text_51e00 + db "@" + +.savedtext + TX_FAR _CanceledMasterBallText + db "@" + +SilphCo7Text3: + db $08 ; asm + ld a, [$d838] + bit 7, a ; saved silph? + jr nz, .savedsilph + ld hl, .rockettext + call PrintText + jr .done +.savedsilph + ld hl, .savedtext + call PrintText +.done + jp TextScriptEnd + +.rockettext + TX_FAR _SilphCo7Text_51e23 + db "@" + +.savedtext + TX_FAR _SilphCo7Text_51e28 + db "@" + +SilphCo7Text4: + db $08 ; asm + ld a, [$d838] + bit 7, a ; saved silph? + jr nz, .savedsilph + ld hl, .rockettext + call PrintText + jr .done +.savedsilph + ld hl, .savedtext + call PrintText +.done + jp TextScriptEnd + +.rockettext + TX_FAR _SilphCo7Text_51e46 + db "@" + +.savedtext + TX_FAR _SilphCo7Text_51e4b + db "@" + +SilphCo7Text5: ; 51e50 (14:5e50) + db $08 ; asm + ld hl, SilphCo7TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +SilphCo7BattleText1: ; 51e5a (14:5e5a) + TX_FAR _SilphCo7BattleText1 + db "@" + +SilphCo7EndBattleText1: ; 51e5f (14:5e5f) + TX_FAR _SilphCo7EndBattleText1 + db "@" + +SilphCo7AfterBattleText1: ; 51e64 (14:5e64) + TX_FAR _SilphCo7AfterBattleText1 + db "@" + +SilphCo7Text6: ; 51e69 (14:5e69) + db $08 ; asm + ld hl, SilphCo7TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +SilphCo7BattleText2: ; 51e73 (14:5e73) + TX_FAR _SilphCo7BattleText2 + db "@" + +SilphCo7EndBattleText2: ; 51e78 (14:5e78) + TX_FAR _SilphCo7EndBattleText2 + db "@" + +SilphCo7AfterBattleText2: ; 51e7d (14:5e7d) + TX_FAR _SilphCo7AfterBattleText2 + db "@" + +SilphCo7Text7: ; 51e82 (14:5e82) + db $08 ; asm + ld hl, SilphCo7TrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +SilphCo7BattleText3: ; 51e8c (14:5e8c) + TX_FAR _SilphCo7BattleText3 + db "@" + +SilphCo7EndBattleText3: ; 51e91 (14:5e91) + TX_FAR _SilphCo7EndBattleText3 + db "@" + +SilphCo7AfterBattleText3: ; 51e96 (14:5e96) + TX_FAR _SilphCo7AfterBattleText3 + db "@" + +SilphCo7Text8: ; 51e9b (14:5e9b) + db $08 ; asm + ld hl, SilphCo7TrainerHeader4 + call TalkToTrainer + jp TextScriptEnd + +SilphCo7BattleText4: ; 51ea5 (14:5ea5) + TX_FAR _SilphCo7BattleText4 + db "@" + +SilphCo7EndBattleText4: ; 51eaa (14:5eaa) + TX_FAR _SilphCo7EndBattleText4 + db "@" + +SilphCo7AfterBattleText4: ; 51eaf (14:5eaf) + TX_FAR _SilphCo7AfterBattleText4 + db "@" + +SilphCo7Text9: ; 51eb4 (14:5eb4) + db $08 ; asm + ld hl, SilphCo7Text_51ebe + call PrintText + jp TextScriptEnd + +SilphCo7Text_51ebe: ; 51ebe (14:5ebe) + TX_FAR _SilphCo7Text_51ebe + db "@" + +SilphCo7Text13: ; 51ec3 (14:5ec3) + TX_FAR _SilphCo7Text_51ec3 + db "@" + +SilphCo7Text14: ; 51ec8 (14:5ec8) + TX_FAR _SilphCo7Text_51ec8 + db "@" + +SilphCo7Text_51ecd: ; 51ecd (14:5ecd) + TX_FAR _SilphCo7Text_51ecd + db "@" + +SilphCo7Text15: ; 51ed2 (14:5ed2) + TX_FAR _SilphCo7Text_51ed2 + db "@" diff --git a/scripts/silphco8.asm b/scripts/silphco8.asm new file mode 100755 index 00000000..19cae4ac --- /dev/null +++ b/scripts/silphco8.asm @@ -0,0 +1,187 @@ +SilphCo8Script: ; 56504 (15:6504) + call SilphCo8Script_5651a + call EnableAutoTextBoxDrawing + ld hl, SilphCo8TrainerHeader0 + ld de, SilphCo8ScriptPointers + ld a, [W_SILPHCO8CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_SILPHCO8CURSCRIPT], a + ret + +SilphCo8Script_5651a: ; 5651a (15:651a) + ld hl, $d126 + bit 5, [hl] + res 5, [hl] + ret z + ld hl, DataTable_5653e ; $653e + call SilphCo8Script_56541 + call SilphCo8Script_5656d + ld a, [$d832] + bit 0, a + ret nz + ld a, $5f + ld [$d09f], a + ld bc, $403 + ld a, $17 + jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) + +DataTable_5653e: ; 5653e (15:653e) + db $04,$03,$FF + +SilphCo8Script_56541: ; 56541 (15:6541) + push hl + ld hl, $d73f + ld a, [hli] + ld b, a + ld a, [hl] + ld c, a + xor a + ld [$ffe0], a + pop hl +.asm_5654d + ld a, [hli] + cp $ff + jr z, .asm_56569 + push hl + ld hl, $ffe0 + inc [hl] + pop hl + cp b + jr z, .asm_5655e + inc hl + jr .asm_5654d +.asm_5655e + ld a, [hli] + cp c + jr nz, .asm_5654d + ld hl, $d73f + xor a + ld [hli], a + ld [hl], a + ret +.asm_56569 + xor a + ld [$ffe0], a + ret + +SilphCo8Script_5656d: ; 5656d (15:656d) + ld a, [$ffe0] + and a + ret z + ld hl, $d832 + set 0, [hl] + ret + +SilphCo8ScriptPointers: ; 56577 (15:6577) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +SilphCo8TextPointers: ; 5657d (15:657d) + dw SilphCo8Text1 + dw SilphCo8Text2 + dw SilphCo8Text3 + dw SilphCo8Text4 + +SilphCo8TrainerHeaders: ; 56585 (15:6585) +SilphCo8TrainerHeader0: ; 56585 (15:6585) + db $2 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d831 ; flag's byte + dw SilphCo8BattleText1 ; 0x65e6 TextBeforeBattle + dw SilphCo8AfterBattleText1 ; 0x65f0 TextAfterBattle + dw SilphCo8EndBattleText1 ; 0x65eb TextEndBattle + dw SilphCo8EndBattleText1 ; 0x65eb TextEndBattle + +SilphCo8TrainerHeader1: ; 56591 (15:6591) + db $3 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d831 ; flag's byte + dw SilphCo8BattleText2 ; 0x65f5 TextBeforeBattle + dw SilphCo8AfterBattleText2 ; 0x65ff TextAfterBattle + dw SilphCo8EndBattleText2 ; 0x65fa TextEndBattle + dw SilphCo8EndBattleText2 ; 0x65fa TextEndBattle + +SilphCo8TrainerHeader2: ; 5659d (15:659d) + db $4 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d831 ; flag's byte + dw SilphCo8BattleText3 ; 0x6604 TextBeforeBattle + dw SilphCo8AfterBattleText3 ; 0x660e TextAfterBattle + dw SilphCo8EndBattleText3 ; 0x6609 TextEndBattle + dw SilphCo8EndBattleText3 ; 0x6609 TextEndBattle + + db $ff + +SilphCo8Text1: ; 565aa (15:65aa) + db $08 ; asm + ld a, [$d838] + bit 7, a + ld hl, SilphCo8Text_565c3 + jr nz, asm_a468f ; 0x565b3 + ld hl, SilphCo8Text_565be +asm_a468f ; 0x565b8 + call PrintText + jp TextScriptEnd + +SilphCo8Text_565be: ; 565be (15:65be) + TX_FAR _SilphCo8Text_565be + db "@" + +SilphCo8Text_565c3: ; 565c3 (15:65c3) + TX_FAR _SilphCo8Text_565c3 + db "@" + +SilphCo8Text2: ; 565c8 (15:65c8) + db $08 ; asm + ld hl, SilphCo8TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +SilphCo8Text3: ; 565d2 (15:65d2) + db $08 ; asm + ld hl, SilphCo8TrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +SilphCo8Text4: ; 565dc (15:65dc) + db $08 ; asm + ld hl, SilphCo8TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +SilphCo8BattleText1: ; 565e6 (15:65e6) + TX_FAR _SilphCo8BattleText1 + db "@" + +SilphCo8EndBattleText1: ; 565eb (15:65eb) + TX_FAR _SilphCo8EndBattleText1 + db "@" + +SilphCo8AfterBattleText1: ; 565f0 (15:65f0) + TX_FAR _SilphCo8AfterBattleText1 + db "@" + +SilphCo8BattleText2: ; 565f5 (15:65f5) + TX_FAR _SilphCo8BattleText2 + db "@" + +SilphCo8EndBattleText2: ; 565fa (15:65fa) + TX_FAR _SilphCo8EndBattleText2 + db "@" + +SilphCo8AfterBattleText2: ; 565ff (15:65ff) + TX_FAR _SilphCo8AfterBattleText2 + db "@" + +SilphCo8BattleText3: ; 56604 (15:6604) + TX_FAR _SilphCo8BattleText3 + db "@" + +SilphCo8EndBattleText3: ; 56609 (15:6609) + TX_FAR _SilphCo8EndBattleText3 + db "@" + +SilphCo8AfterBattleText3: ; 5660e (15:660e) + TX_FAR _SilphCo8AfterBattleText3 + db "@" diff --git a/scripts/silphco9.asm b/scripts/silphco9.asm new file mode 100755 index 00000000..ee6e6fdc --- /dev/null +++ b/scripts/silphco9.asm @@ -0,0 +1,248 @@ +SilphCo9Script: ; 5d7bb (17:57bb) + call SilphCo9Script_5d7d1 + call EnableAutoTextBoxDrawing + ld hl, SilphCo9TrainerHeaders + ld de, SilphCo9ScriptPointers + ld a, [W_SILPHCO9CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_SILPHCO9CURSCRIPT], a + ret + +SilphCo9Script_5d7d1: ; 5d7d1 (17:57d1) + ld hl, $d126 + bit 5, [hl] + res 5, [hl] + ret z + ld hl, DataTable_5d82e ; $582e + call SilphCo9Script_5d837 + call SilphCo9Script_5d863 + ld a, [$d834] + bit 0, a + jr nz, .asm_5d7f8 + push af + ld a, $5f + ld [$d09f], a + ld bc, $401 + ld a, $17 + call Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) + pop af +.asm_5d7f8 + bit 1, a + jr nz, .asm_5d80b + push af + ld a, $54 + ld [$d09f], a + ld bc, $209 + ld a, $17 + call Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) + pop af +.asm_5d80b + bit 2, a + jr nz, .asm_5d81e + push af + ld a, $54 + ld [$d09f], a + ld bc, $509 + ld a, $17 + call Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) + pop af +.asm_5d81e + bit 3, a + ret nz + ld a, $5f + ld [$d09f], a + ld bc, $605 + ld a, $17 + jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) + +DataTable_5d82e: ; 5d82e (17:582e) + db $04,$01,$02,$09,$05,$09,$06,$05,$FF + +SilphCo9Script_5d837: ; 5d837 (17:5837) + push hl + ld hl, $d73f + ld a, [hli] + ld b, a + ld a, [hl] + ld c, a + xor a + ld [$ffe0], a + pop hl +.asm_5d843 + ld a, [hli] + cp $ff + jr z, .asm_5d85f + push hl + ld hl, $ffe0 + inc [hl] + pop hl + cp b + jr z, .asm_5d854 + inc hl + jr .asm_5d843 +.asm_5d854 + ld a, [hli] + cp c + jr nz, .asm_5d843 + ld hl, $d73f + xor a + ld [hli], a + ld [hl], a + ret +.asm_5d85f + xor a + ld [$ffe0], a + ret + +SilphCo9Script_5d863: ; 5d863 (17:5863) + ld hl, $d834 + ld a, [$ffe0] + and a + ret z + cp $1 + jr nz, .asm_5d871 + set 0, [hl] + ret +.asm_5d871 + cp $2 + jr nz, .asm_5d878 + set 1, [hl] + ret +.asm_5d878 + cp $3 + jr nz, .asm_5d87f + set 2, [hl] + ret +.asm_5d87f + cp $4 + ret nz + set 3, [hl] + ret + +SilphCo9ScriptPointers: ; 5d885 (17:5885) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +SilphCo9TextPointers: ; 5d88b (17:588b) + dw SilphCo9Text1 + dw SilphCo9Text2 + dw SilphCo9Text3 + dw SilphCo9Text4 + +SilphCo9TrainerHeaders: ; 5d893 (17:5893) +SilphCo9TrainerHeader0: ; 5d893 (17:5893) + db $2 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d833 ; flag's byte + dw SilphCo9BattleText1 ; 0x5912 TextBeforeBattle + dw SilphCo9AfterBattleText1 ; 0x591c TextAfterBattle + dw SilphCo9EndBattleText1 ; 0x5917 TextEndBattle + dw SilphCo9EndBattleText1 ; 0x5917 TextEndBattle + +SilphCo9TrainerHeader1: ; 5d89f (17:589f) + db $3 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d833 ; flag's byte + dw SilphCo9BattleText2 ; 0x5921 TextBeforeBattle + dw SilphCo9AfterBattleText2 ; 0x592b TextAfterBattle + dw SilphCo9EndBattleText2 ; 0x5926 TextEndBattle + dw SilphCo9EndBattleText2 ; 0x5926 TextEndBattle + +SilphCo9TrainerHeader2: ; 5d8ab (17:58ab) + db $4 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d833 ; flag's byte + dw SilphCo9BattleText3 ; 0x5930 TextBeforeBattle + dw SilphCo9AfterBattleText3 ; 0x593a TextAfterBattle + dw SilphCo9EndBattleText3 ; 0x5935 TextEndBattle + dw SilphCo9EndBattleText3 ; 0x5935 TextEndBattle + + db $ff + +SilphCo9Text1: ; 5d8b8 (17:58b8) + db $08 ; asm + ld a, [$d838] + bit 7, a + jr nz, .asm_a14c3 ; 0x5d8be + ld hl, SilphCo9Text_5d8e5 + call PrintText + ld a, $7 + call Predef + call GBFadeOut2 + call Delay3 + call GBFadeIn2 + ld hl, SilphCo9Text_5d8ea + call PrintText + jr .asm_b6e28 ; 0x5d8da +.asm_a14c3 ; 0x5d8dc + ld hl, SilphCo9Text_5d8ef + call PrintText +.asm_b6e28 ; 0x5d8e2 + jp TextScriptEnd + +SilphCo9Text_5d8e5: ; 5d8e5 (17:58e5) + TX_FAR _SilphCo9Text_5d8e5 + db "@" + +SilphCo9Text_5d8ea: ; 5d8ea (17:58ea) + TX_FAR _SilphCo9Text_5d8ea + db "@" + +SilphCo9Text_5d8ef: ; 5d8ef (17:58ef) + TX_FAR _SilphCo9Text_5d8ef + db "@" + +SilphCo9Text2: ; 5d8f4 (17:58f4) + db $08 ; asm + ld hl, SilphCo9TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +SilphCo9Text3: ; 5d8fe (17:58fe) + db $08 ; asm + ld hl, SilphCo9TrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +SilphCo9Text4: ; 5d908 (17:5908) + db $08 ; asm + ld hl, SilphCo9TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +SilphCo9BattleText1: ; 5d912 (17:5912) + TX_FAR _SilphCo9BattleText1 + db "@" + +SilphCo9EndBattleText1: ; 5d917 (17:5917) + TX_FAR _SilphCo9EndBattleText1 + db "@" + +SilphCo9AfterBattleText1: ; 5d91c (17:591c) + TX_FAR _SilphCo9AfterBattleText1 + db "@" + +SilphCo9BattleText2: ; 5d921 (17:5921) + TX_FAR _SilphCo9BattleText2 + db "@" + +SilphCo9EndBattleText2: ; 5d926 (17:5926) + TX_FAR _SilphCo9EndBattleText2 + db "@" + +SilphCo9AfterBattleText2: ; 5d92b (17:592b) + TX_FAR _SilphCo9AfterBattleText2 + db "@" + +SilphCo9BattleText3: ; 5d930 (17:5930) + TX_FAR _SilphCo9BattleText3 + db "@" + +SilphCo9EndBattleText3: ; 5d935 (17:5935) + TX_FAR _SilphCo9EndBattleText3 + db "@" + +SilphCo9AfterBattleText3: ; 5d93a (17:593a) + TX_FAR _SilphCo9AfterBattleText3 + db "@" diff --git a/scripts/silphcoelevator.asm b/scripts/silphcoelevator.asm new file mode 100755 index 00000000..c6442ca9 --- /dev/null +++ b/scripts/silphcoelevator.asm @@ -0,0 +1,78 @@ +SilphCoElevatorScript: ; 457c0 (11:57c0) + ld hl, $d126 + bit 5, [hl] + res 5, [hl] + push hl + call nz, SilphCoElevatorScript_457dc + pop hl + bit 7, [hl] + res 7, [hl] + call nz, SilphCoElevatorScript_45827 + xor a + ld [$cf0c], a + inc a + ld [$cc3c], a + ret + +SilphCoElevatorScript_457dc: ; 457dc (11:57dc) + ld hl, $d3af + ld a, [$d73b] + ld b, a + ld a, [$d73c] + ld c, a + call SilphCoElevatorScript_457ea + +SilphCoElevatorScript_457ea: ; 457ea (11:57ea) + inc hl + inc hl + ld a, b + ld [hli], a + ld a, c + ld [hli], a + ret + +SilphCoElevatorScript_457f1: ; 457f1 (11:57f1) + ld hl, SilphCoElavatorFloors ; $5804 + call LoadItemList + ld hl, SilphCoElevatorWarpMaps ; $5811 + ld de, $cc5b + ld bc, $16 + call CopyData + ret + +SilphCoElavatorFloors: ; 45804 (11:45804) + db $0B ; num elements in list + db $56, $57, $58, $59, $5A, $5B, $5C, $5D, $5E, $5F, $60 ; "1F", "2F", "3F", "4F", ... , "11F" + db $FF ; terminator + +SilphCoElevatorWarpMaps: ; 45811 (11:45811) +; first byte is warp number +; second byte is map number +; These specify where the player goes after getting out of the elevator. + db $03, SILPH_CO_1F + db $02, SILPH_CO_2F + db $02, SILPH_CO_3F + db $02, SILPH_CO_4F + db $02, SILPH_CO_5F + db $02, SILPH_CO_6F + db $02, SILPH_CO_7F + db $02, SILPH_CO_8F + db $02, SILPH_CO_9F + db $02, SILPH_CO_10F + db $01, SILPH_CO_11F + +SilphCoElevatorScript_45827: ; 45827 (11:5827) + call Delay3 + callba ShakeElevator + ret + +SilphCoElevatorTextPointers: ; 45833 (11:5833) + dw SilphCoElevatorText1 + +SilphCoElevatorText1: ; 45835 (11:5835) + db $08 ; asm + call SilphCoElevatorScript_457f1 + ld hl, SilphCoElevatorWarpMaps ; $5811 + ld a, $61 + call Predef + jp TextScriptEnd diff --git a/scripts/ssanne1.asm b/scripts/ssanne1.asm new file mode 100755 index 00000000..4814dfe9 --- /dev/null +++ b/scripts/ssanne1.asm @@ -0,0 +1,15 @@ +SSAnne1Script: ; 61265 (18:5265) + call EnableAutoTextBoxDrawing + ret + +SSAnne1TextPointers: ; 61269 (18:5269) + dw SSAnne1Text1 + dw SSAnne1Text2 + +SSAnne1Text1: ; 6126d (18:526d) + TX_FAR _SSAnne1Text1 + db "@" + +SSAnne1Text2: ; 61272 (18:5272) + TX_FAR _SSAnne1Text2 + db "@" diff --git a/scripts/ssanne10.asm b/scripts/ssanne10.asm new file mode 100755 index 00000000..eaef6de3 --- /dev/null +++ b/scripts/ssanne10.asm @@ -0,0 +1,202 @@ +SSAnne10Script: ; 61d55 (18:5d55) + call EnableAutoTextBoxDrawing + ld hl, SSAnne10TrainerHeaders + ld de, SSAnne10ScriptPointers + ld a, [W_SSANNE10CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_SSANNE10CURSCRIPT], a + ret + +SSAnne10ScriptPointers: ; 61d68 (18:5d68) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +SSAnne10TextPointers: ; 61d6e (18:5d6e) + dw SSAnne10Text1 + dw SSAnne10Text2 + dw SSAnne10Text3 + dw SSAnne10Text4 + dw SSAnne10Text5 + dw SSAnne10Text6 + dw SSAnne10Text7 + dw SSAnne10Text8 + dw Predef5CText + dw Predef5CText + dw Predef5CText + +SSAnne10TrainerHeaders: ; 61d84 (18:5d84) +SSAnne10TrainerHeader0: ; 61d84 (18:5d84) + db $1 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d809 ; flag's byte + dw SSAnne10BattleText1 ; 0x5e16 TextBeforeBattle + dw SSAnne10AfterBattleText1 ; 0x5e20 TextAfterBattle + dw SSAnne10EndBattleText1 ; 0x5e1b TextEndBattle + dw SSAnne10EndBattleText1 ; 0x5e1b TextEndBattle + +SSAnne10TrainerHeader1: ; 61d90 (18:5d90) + db $2 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d809 ; flag's byte + dw SSAnne10BattleText2 ; 0x5e25 TextBeforeBattle + dw SSAnne10AfterBattleText2 ; 0x5e2f TextAfterBattle + dw SSAnne10EndBattleText2 ; 0x5e2a TextEndBattle + dw SSAnne10EndBattleText2 ; 0x5e2a TextEndBattle + +SSAnne10TrainerHeader2: ; 61d9c (18:5d9c) + db $3 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d809 ; flag's byte + dw SSAnne10BattleText3 ; 0x5e34 TextBeforeBattle + dw SSAnne10AfterBattleText3 ; 0x5e3e TextAfterBattle + dw SSAnne10EndBattleText3 ; 0x5e39 TextEndBattle + dw SSAnne10EndBattleText3 ; 0x5e39 TextEndBattle + +SSAnne10TrainerHeader3: ; 61da8 (18:5da8) + db $4 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d809 ; flag's byte + dw SSAnne10BattleText4 ; 0x5e43 TextBeforeBattle + dw SSAnne10AfterBattleText4 ; 0x5e4d TextAfterBattle + dw SSAnne10EndBattleText4 ; 0x5e48 TextEndBattle + dw SSAnne10EndBattleText4 ; 0x5e48 TextEndBattle + +SSAnne10TrainerHeader4: ; 61db4 (18:5db4) + db $5 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d809 ; flag's byte + dw SSAnne10BattleText5 ; 0x5e52 TextBeforeBattle + dw SSAnne10AfterBattleText5 ; 0x5e5c TextAfterBattle + dw SSAnne10EndBattleText5 ; 0x5e57 TextEndBattle + dw SSAnne10EndBattleText5 ; 0x5e57 TextEndBattle + +SSAnne10TrainerHeader5: ; 61dc0 (18:5dc0) + db $6 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d809 ; flag's byte + dw SSAnne10BattleText6 ; 0x5e61 TextBeforeBattle + dw SSAnne10AfterBattleText6 ; 0x5e6b TextAfterBattle + dw SSAnne10EndBattleText6 ; 0x5e66 TextEndBattle + dw SSAnne10EndBattleText6 ; 0x5e66 TextEndBattle + + db $ff + +SSAnne10Text1: ; 61dcd (18:5dcd) + db $08 ; asm + ld hl, SSAnne10TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +SSAnne10Text2: ; 61dd7 (18:5dd7) + db $08 ; asm + ld hl, SSAnne10TrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +SSAnne10Text3: ; 61de1 (18:5de1) + db $08 ; asm + ld hl, SSAnne10TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +SSAnne10Text4: ; 61deb (18:5deb) + db $08 ; asm + ld hl, SSAnne10TrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +SSAnne10Text5: ; 61df5 (18:5df5) + db $08 ; asm + ld hl, SSAnne10TrainerHeader4 + call TalkToTrainer + jp TextScriptEnd + +SSAnne10Text6: ; 61dff (18:5dff) + db $08 ; asm + ld hl, SSAnne10TrainerHeader5 + call TalkToTrainer + jp TextScriptEnd + +SSAnne10Text8: ; 61e09 (18:5e09) + TX_FAR _SSAnne10Text8 + db $8 ; 0x61e0d + ld a, MACHOKE + call PlayCry + jp TextScriptEnd + +SSAnne10BattleText1: ; 61e16 (18:5e16) + TX_FAR _SSAnne10BattleText1 + db "@" + +SSAnne10EndBattleText1: ; 61e1b (18:5e1b) + TX_FAR _SSAnne10EndBattleText1 + db "@" + +SSAnne10AfterBattleText1: ; 61e20 (18:5e20) + TX_FAR _SSAnne10AfterBattleText1 + db "@" + +SSAnne10BattleText2: ; 61e25 (18:5e25) + TX_FAR _SSAnne10BattleText2 + db "@" + +SSAnne10EndBattleText2: ; 61e2a (18:5e2a) + TX_FAR _SSAnne10EndBattleText2 + db "@" + +SSAnne10AfterBattleText2: ; 61e2f (18:5e2f) + TX_FAR _SSAnne10AfterBattleText2 + db "@" + +SSAnne10BattleText3: ; 61e34 (18:5e34) + TX_FAR _SSAnne10BattleText3 + db "@" + +SSAnne10EndBattleText3: ; 61e39 (18:5e39) + TX_FAR _SSAnne10EndBattleText3 + db "@" + +SSAnne10AfterBattleText3: ; 61e3e (18:5e3e) + TX_FAR _SSAnne10AfterBattleText3 + db "@" + +SSAnne10BattleText4: ; 61e43 (18:5e43) + TX_FAR _SSAnne10BattleText4 + db "@" + +SSAnne10EndBattleText4: ; 61e48 (18:5e48) + TX_FAR _SSAnne10EndBattleText4 + db "@" + +SSAnne10AfterBattleText4: ; 61e4d (18:5e4d) + TX_FAR _SSAnne10AfterBattleText4 + db "@" + +SSAnne10BattleText5: ; 61e52 (18:5e52) + TX_FAR _SSAnne10BattleText5 + db "@" + +SSAnne10EndBattleText5: ; 61e57 (18:5e57) + TX_FAR _SSAnne10EndBattleText5 + db "@" + +SSAnne10AfterBattleText5: ; 61e5c (18:5e5c) + TX_FAR _SSAnne10AfterBattleText5 + db "@" + +SSAnne10BattleText6: ; 61e61 (18:5e61) + TX_FAR _SSAnne10BattleText6 + db "@" + +SSAnne10EndBattleText6: ; 61e66 (18:5e66) + TX_FAR _SSAnne10EndBattleText6 + db "@" + +SSAnne10AfterBattleText6: ; 61e6b (18:5e6b) + TX_FAR _SSAnne10AfterBattleText6 + db "@" + +SSAnne10Text7: ; 61e70 (18:5e70) + TX_FAR _SSAnne10Text7 + db "@" diff --git a/scripts/ssanne2.asm b/scripts/ssanne2.asm new file mode 100755 index 00000000..3ff41c1d --- /dev/null +++ b/scripts/ssanne2.asm @@ -0,0 +1,208 @@ +SSAnne2Script: ; 6139f (18:539f) + call EnableAutoTextBoxDrawing + ld hl, SSAnne2ScriptPointers + ld a, [W_SSANNE2CURSCRIPT] + jp CallFunctionInTable + +SSAnne2Script_613ab: ; 613ab (18:53ab) + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [W_SSANNE2CURSCRIPT], a + ret + +SSAnne2ScriptPointers: ; 613b3 (18:53b3) + dw SSAnne2Script0 + dw SSAnne2Script1 + dw SSAnne2Script2 + dw SSAnne2Script3 + dw SSAnne2Script4 + +SSAnne2Script4: ; 613bd (18:53bd) + ret + +SSAnne2Script0: ; 613be (18:53be) + ld hl, CoordsData_61411 ; $5411 + call ArePlayerCoordsInArray + ret nc + ld a, $ff + ld [$c0ee], a + call PlaySound + ld c, BANK(Music_MeetRival) + ld a, MUSIC_MEET_RIVAL + call PlayMusic + ld a, [$cd3d] + ld [$ffdb], a + ld a, $71 + ld [$cc4d], a + ld a, $15 + call Predef + call Delay3 + ld a, $2 + ld [$ff8c], a + call SetSpriteMovementBytesToFF + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + ld a, [$ffdb] + cp $2 + jr nz, .asm_61400 ; 0x613f9 $5 + ld de, MovementData_6140c + jr .asm_61403 ; 0x613fe $3 +.asm_61400 + ld de, MovementData_6140d +.asm_61403 + call MoveSprite + ld a, $1 + ld [W_SSANNE2CURSCRIPT], a + ret + +MovementData_6140c: ; 6140c (18:540c) + db $00 + +MovementData_6140d: ; 6140d (18:540d) + db $00,$00,$00,$FF + +CoordsData_61411: ; 61411 (18:5411) + db $08,$24,$08,$25,$FF + +SSAnne2Script_61416: ; 61416 (18:5416) + ld a, [W_XCOORD] ; $d362 + cp $25 + jr nz, .asm_61426 + ld a, $2 + ld [$d528], a + ld a, $c + jr .asm_61427 +.asm_61426 + xor a +.asm_61427 + ld [$ff8d], a + ld a, $2 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + jp Func_34a6 + +SSAnne2Script1: ; 61430 (18:5430) + ld a, [$d730] + bit 0, a + ret nz + call SSAnne2Script_61416 + xor a + ld [wJoypadForbiddenButtonsMask], a + ld a, $2 + ld [$ff8c], a + call DisplayTextID + call Delay3 + ld a, SONY2 + $c8 + ld [W_CUROPPONENT], a + + ; select which team to use during the encounter + ld a, [W_RIVALSTARTER] + cp SQUIRTLE + jr nz, .NotSquirtle ; 0x61451 $4 + ld a, $1 + jr .done +.NotSquirtle + cp BULBASAUR + jr nz, .Charmander ; 0x61459 $4 + ld a, $2 + jr .done +.Charmander + ld a, $3 +.done + ld [W_TRAINERNO], a + + call SSAnne2Script_61416 + ld a, $2 + ld [W_SSANNE2CURSCRIPT], a + ret + +SSAnne2Script2: ; 6146d (18:546d) + ld a, [$d057] + cp $ff + jp z, SSAnne2Script_613ab + call SSAnne2Script_61416 + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + ld a, $3 + ld [$ff8c], a + call DisplayTextID + ld a, $2 + ld [$ff8c], a + call SetSpriteMovementBytesToFF + ld a, [W_XCOORD] + cp $25 + jr nz, .asm_61497 ; 0x61490 $5 + ld de, MovementData_614b9 + jr .asm_6149a ; 0x61495 $3 +.asm_61497 + ld de, MovementData_614b7 +.asm_6149a + ld a, $2 + ld [$ff8c], a + call MoveSprite + ld a, $ff + ld [$c0ee], a + call PlaySound + callba Music_RivalAlternateStart + ld a, $3 + ld [W_SSANNE2CURSCRIPT], a + ret + +MovementData_614b7: ; 614b7 (18:54b7) + db $C0,$00 + +MovementData_614b9: ; 614b9 (18:54b9) + db $00,$00,$00,$00,$FF + +SSAnne2Script3: ; 614be (18:54be) + ld a, [$d730] + bit 0, a + ret nz + xor a + ld [wJoypadForbiddenButtonsMask], a + ld a, $71 + ld [$cc4d], a + ld a, $11 + call Predef + call Func_2307 + ld a, $4 + ld [W_SSANNE2CURSCRIPT], a + ret + +SSAnne2TextPointers: ; 614db (18:54db) + dw SSAnne2Text1 + dw SSAnne2Text2 + dw SSAnne2Text3 + +SSAnne2Text1: ; 614e1 (18:54e1) + TX_FAR _SSAnne2Text1 + db "@" + +SSAnne2Text2: ; 614e6 (18:54e6) + db $8 + ld hl, SSAnneRivalBeforeBattleText + call PrintText + ld hl, $d72d + set 6, [hl] + set 7, [hl] + ld hl, SSAnneRivalDefeatedText + ld de, SSAnneRivalWonText + call PreBattleSaveRegisters + jp TextScriptEnd + +SSAnneRivalBeforeBattleText: ; 61500 (18:5500) + TX_FAR _SSAnneRivalBeforeBattleText + db "@" + +SSAnneRivalDefeatedText: ; 61505 (18:5505) + TX_FAR _SSAnneRivalDefeatedText + db "@" + +SSAnneRivalWonText: ; 6150a (18:550a) + TX_FAR _SSAnneRivalWonText + db "@" + +SSAnne2Text3: ; 6150f (18:550f) + TX_FAR _SSAnneRivalCaptainText + db "@" diff --git a/scripts/ssanne3.asm b/scripts/ssanne3.asm new file mode 100755 index 00000000..56cbdd9c --- /dev/null +++ b/scripts/ssanne3.asm @@ -0,0 +1,9 @@ +SSAnne3Script: ; 44932 (11:4932) + jp EnableAutoTextBoxDrawing + +SSAnne3TextPointers: ; 44935 (11:4935) + dw SSAnne3Text1 + +SSAnne3Text1: ; 44937 (11:4937) + TX_FAR _SSAnne3Text1 + db "@" diff --git a/scripts/ssanne4.asm b/scripts/ssanne4.asm new file mode 100755 index 00000000..6cc0e7b9 --- /dev/null +++ b/scripts/ssanne4.asm @@ -0,0 +1,5 @@ +SSAnne4Script: ; 6162e (18:562e) + jp EnableAutoTextBoxDrawing + +SSAnne4TextPointers: ; 61631 (18:5631) + db "@" diff --git a/scripts/ssanne5.asm b/scripts/ssanne5.asm new file mode 100755 index 00000000..034dd26a --- /dev/null +++ b/scripts/ssanne5.asm @@ -0,0 +1,89 @@ +SSAnne5Script: ; 616ae (18:56ae) + call EnableAutoTextBoxDrawing + ld hl, SSAnne5TrainerHeader0 ; $56d1 + ld de, SSAnne5ScriptPointers + ld a, [W_SSANNE5CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_SSANNE5CURSCRIPT], a + ret + +SSAnne5ScriptPointers: ; 616c1 (18:56c1) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +SSAnne5TextPointers: ; 616c7 (18:56c7) + dw SSAnne5Text1 + dw SSAnne5Text2 + dw SSAnne5Text3 + dw SSAnne5Text4 + dw SSAnne5Text5 + +SSAnne5TrainerHeaders: ; 616d1 (18:56d1) +SSAnne5TrainerHeader0: ; 616d1 (18:56d1) + db $4 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7ff ; flag's byte + dw SSAnne5BattleText1 ; 0x5703 TextBeforeBattle + dw SSAnne5AfterBattleText1 ; 0x570d TextAfterBattle + dw SSAnne5EndBattleText1 ; 0x5708 TextEndBattle + dw SSAnne5EndBattleText1 ; 0x5708 TextEndBattle + +SSAnne5TrainerHeader1: ; 616dd (18:56dd) + db $5 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7ff ; flag's byte + dw SSAnne5BattleText2 ; 0x571c TextBeforeBattle + dw SSAnne5AfterBattleText2 ; 0x5726 TextAfterBattle + dw SSAnne5EndBattleText2 ; 0x5721 TextEndBattle + dw SSAnne5EndBattleText2 ; 0x5721 TextEndBattle + + db $ff + +SSAnne5Text1: ; 616ea (18:56ea) + TX_FAR _SSAnne5Text1 + db "@" + +SSAnne5Text2: ; 616ef (18:56ef) + TX_FAR _SSAnne5Text2 + db "@" + +SSAnne5Text3: ; 616f4 (18:56f4) + TX_FAR _SSAnne5Text3 + db "@" + +SSAnne5Text4: ; 616f9 (18:56f9) + db $08 ; asm + ld hl, SSAnne5TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +SSAnne5BattleText1: ; 61703 (18:5703) + TX_FAR _SSAnne5BattleText1 + db "@" + +SSAnne5EndBattleText1: ; 61708 (18:5708) + TX_FAR _SSAnne5EndBattleText1 + db "@" + +SSAnne5AfterBattleText1: ; 6170d (18:570d) + TX_FAR _SSAnne5AfterBattleText1 + db "@" + +SSAnne5Text5: ; 61712 (18:5712) + db $08 ; asm + ld hl, SSAnne5TrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +SSAnne5BattleText2: ; 6171c (18:571c) + TX_FAR _SSAnne5BattleText2 + db "@" + +SSAnne5EndBattleText2: ; 61721 (18:5721) + TX_FAR _SSAnne5EndBattleText2 + db "@" + +SSAnne5AfterBattleText2: ; 61726 (18:5726) + TX_FAR _SSAnne5AfterBattleText2 + db "@" diff --git a/scripts/ssanne6.asm b/scripts/ssanne6.asm new file mode 100755 index 00000000..d3ec191f --- /dev/null +++ b/scripts/ssanne6.asm @@ -0,0 +1,72 @@ +SSAnne6Script: ; 617b3 (18:57b3) + call EnableAutoTextBoxDrawing + ret + +SSAnne6TextPointers: ; 617b7 (18:57b7) + dw SSAnne6Text1 + dw SSAnne6Text2 + dw SSAnne6Text3 + dw SSAnne6Text4 + dw SSAnne6Text5 + dw SSAnne6Text6 + dw SSAnne6Text7 + +SSAnne6Text1: ; 617c5 (18:57c5) + TX_FAR _SSAnne6Text1 + db "@" + +SSAnne6Text2: ; 617ca (18:57ca) + TX_FAR _SSAnne6Text2 + db "@" + +SSAnne6Text3: ; 617cf (18:57cf) + TX_FAR _SSAnne6Text3 + db "@" + +SSAnne6Text4: ; 617d4 (18:57d4) + TX_FAR _SSAnne6Text4 + db "@" + +SSAnne6Text5: ; 617d9 (18:57d9) + TX_FAR _SSAnne6Text5 + db "@" + +SSAnne6Text6: ; 617de (18:57de) + TX_FAR _SSAnne6Text6 + db "@" + +SSAnne6Text7: ; 617e3 (18:57e3) + db $08 ; asm + ld hl, SSAnne6Text_61807 + call PrintText + ldh a, [$d3] + bit 7, a + jr z, .asm_93eb1 ; 0x617ee + ld hl, SSAnne6Text_6180c + jr .asm_63292 ; 0x617f3 +.asm_93eb1 ; 0x617f5 + bit 4, a + jr z, .asm_7436c ; 0x617f7 + ld hl, SSAnne6Text_61811 + jr .asm_63292 ; 0x617fc +.asm_7436c ; 0x617fe + ld hl, SSAnne6Text_61816 +.asm_63292 ; 0x61801 + call PrintText + jp TextScriptEnd + +SSAnne6Text_61807: ; 61807 (18:5807) + TX_FAR _SSAnne6Text_61807 + db "@" + +SSAnne6Text_6180c: ; 6180c (18:580c) + TX_FAR _SSAnne6Text_6180c + db "@" + +SSAnne6Text_61811: ; 61811 (18:5811) + TX_FAR _SSAnne6Text_61811 + db "@" + +SSAnne6Text_61816: ; 61816 (18:5816) + TX_FAR _SSAnne6Text_61816 + db "@" diff --git a/scripts/ssanne7.asm b/scripts/ssanne7.asm new file mode 100755 index 00000000..8e88417f --- /dev/null +++ b/scripts/ssanne7.asm @@ -0,0 +1,96 @@ +SSAnne7Script: ; 61895 (18:5895) + call SSAnne7Script_6189b + jp EnableAutoTextBoxDrawing + +SSAnne7Script_6189b: ; 6189b (18:589b) + ld a, [$d803] + bit 1, a + ret nz + ld hl, $d72d + set 5, [hl] + ret + +SSAnne7TextPointers: ; 618a7 (18:58a7) + dw SSAnne7Text1 + dw SSAnne7Text2 + dw SSAnne7Text3 + +SSAnne7Text1: ; 618ad (18:58ad) + db $08 ; asm + ld a, [$d803] + bit 0, a + jr nz, .asm_797c4 ; 0x618b3 + ld hl, SSAnne7RubText + call PrintText + ld hl, ReceivingHM01Text + call PrintText + ld bc, (HM_01 << 8) | 1 + call GiveItem + jr nc, .BagFull + ld hl, ReceivedHM01Text + call PrintText + ld hl, $d803 + set 0, [hl] + jr .asm_0faf5 ; 0x618d4 +.BagFull + ld hl, HM01NoRoomText + call PrintText + ld hl, $d72d + set 5, [hl] + jr .asm_0faf5 ; 0x618e1 +.asm_797c4 ; 0x618e3 + ld hl, SSAnne7Text_61932 + call PrintText +.asm_0faf5 ; 0x618e9 + jp TextScriptEnd + +SSAnne7RubText: ; 618ec (18:58ec) + TX_FAR _SSAnne7RubText + db $8 + ld a, [$c0ef] + cp $1f + ld [$c0f0], a + jr nz, .asm_61908 ; 0x618f9 $d + ld a, $ff + ld [$c0ee], a + call PlaySound + ld a, Bank(Func_9876) + ld [$c0ef], a +.asm_61908 + ld a, MUSIC_PKMN_HEALED + ld [$c0ee], a + call PlaySound +.asm_61910 + ld a, [$c026] + cp MUSIC_PKMN_HEALED + jr z, .asm_61910 ; 0x61915 $f9 + call Func_2307 + ld hl, $d803 + set 1, [hl] + ld hl, $d72d + res 5, [hl] + jp TextScriptEnd + +ReceivingHM01Text: ; 61927 (18:5927) + TX_FAR _ReceivingHM01Text + db "@" + +ReceivedHM01Text: ; 6192c (18:592c) + TX_FAR _ReceivedHM01Text + db $11, "@" + +SSAnne7Text_61932: ; 61932 (18:5932) + TX_FAR _SSAnne7Text_61932 + db "@" + +HM01NoRoomText: ; 61937 (18:5937) + TX_FAR _HM01NoRoomText + db "@" + +SSAnne7Text2: ; 6193c (18:593c) + TX_FAR _SSAnne7Text2 + db "@" + +SSAnne7Text3: ; 61941 (18:5941) + TX_FAR _SSAnne7Text3 + db "@" diff --git a/scripts/ssanne8.asm b/scripts/ssanne8.asm new file mode 100755 index 00000000..31feb058 --- /dev/null +++ b/scripts/ssanne8.asm @@ -0,0 +1,164 @@ +SSAnne8Script: ; 61976 (18:5976) + call EnableAutoTextBoxDrawing + ld hl, SSAnne8TrainerHeaders + ld de, SSAnne8ScriptPointers + ld a, [W_SSANNE8CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_SSANNE8CURSCRIPT], a + ret + +SSAnne8ScriptPointers: ; 61989 (18:5989) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +SSAnne8TextPointers: ; 6198f (18:598f) + dw SSAnne8Text1 + dw SSAnne8Text2 + dw SSAnne8Text3 + dw SSAnne8Text4 + dw SSAnne8Text5 + dw SSAnne8Text6 + dw SSAnne8Text7 + dw SSAnne8Text8 + dw SSAnne8Text9 + dw Predef5CText + dw SSAnne8Text11 + +SSAnne8TrainerHeaders: ; 619a5 (18:59a5) +SSAnne8TrainerHeader0: ; 619a5 (18:59a5) + db $1 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d805 ; flag's byte + dw SSAnne8BattleText1 ; 0x5a0b TextBeforeBattle + dw SSAnne8AfterBattleText1 ; 0x5a15 TextAfterBattle + dw SSAnne8EndBattleText1 ; 0x5a10 TextEndBattle + dw SSAnne8EndBattleText1 ; 0x5a10 TextEndBattle + +SSAnne8TrainerHeader1: ; 619b1 (18:59b1) + db $2 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d805 ; flag's byte + dw SSAnne8BattleText2 ; 0x5a1a TextBeforeBattle + dw SSAnne8AfterBattleText2 ; 0x5a24 TextAfterBattle + dw SSAnne8EndBattleText2 ; 0x5a1f TextEndBattle + dw SSAnne8EndBattleText2 ; 0x5a1f TextEndBattle + +SSAnne8TrainerHeader2: ; 619bd (18:59bd) + db $3 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d805 ; flag's byte + dw SSAnne8BattleText3 ; 0x5a29 TextBeforeBattle + dw SSAnne8AfterBattleText3 ; 0x5a33 TextAfterBattle + dw SSAnne8EndBattleText3 ; 0x5a2e TextEndBattle + dw SSAnne8EndBattleText3 ; 0x5a2e TextEndBattle + +SSAnne8TrainerHeader3: ; 619c9 (18:59c9) + db $4 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d805 ; flag's byte + dw SSAnne8BattleText4 ; 0x5a38 TextBeforeBattle + dw SSAnne8AfterBattleText4 ; 0x5a42 TextAfterBattle + dw SSAnne8EndBattleText4 ; 0x5a3d TextEndBattle + dw SSAnne8EndBattleText4 ; 0x5a3d TextEndBattle + + db $ff + +SSAnne8Text1: ; 619d6 (18:59d6) + db $08 ; asm + ld hl, SSAnne8TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +SSAnne8Text2: ; 619e0 (18:59e0) + db $08 ; asm + ld hl, SSAnne8TrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +SSAnne8Text3: ; 619ea (18:59ea) + db $08 ; asm + ld hl, SSAnne8TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +SSAnne8Text4: ; 619f4 (18:59f4) + db $08 ; asm + ld hl, SSAnne8TrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +SSAnne8Text8: ; 619fe (18:59fe) + TX_FAR _SSAnne8Text8 + db $08 ; asm + ld a, WIGGLYTUFF + call PlayCry + jp TextScriptEnd + +SSAnne8BattleText1: ; 61a0b (18:5a0b) + TX_FAR _SSAnne8BattleText1 + db "@" + +SSAnne8EndBattleText1: ; 61a10 (18:5a10) + TX_FAR _SSAnne8EndBattleText1 + db "@" + +SSAnne8AfterBattleText1: ; 61a15 (18:5a15) + TX_FAR _SSAnne8AfterBattleText1 + db "@" + +SSAnne8BattleText2: ; 61a1a (18:5a1a) + TX_FAR _SSAnne8BattleText2 + db "@" + +SSAnne8EndBattleText2: ; 61a1f (18:5a1f) + TX_FAR _SSAnne8EndBattleText2 + db "@" + +SSAnne8Text_61a24: ; 61a24 (18:5a24) + TX_FAR _SSAnne8Text_61a24 + db "@" + +SSAnne8BattleText3: ; 61a29 (18:5a29) + TX_FAR _SSAnne8BattleText3 + db "@" + +SSAnne8EndBattleText3: ; 61a2e (18:5a2e) + TX_FAR _SSAnne8EndBattleText3 + db "@" + +SSAnne8AfterBattleText3: ; 61a33 (18:5a33) + TX_FAR _SSAnne8AfterBattleText3 + db "@" + +SSAnne8BattleText4: ; 61a38 (18:5a38) + TX_FAR _SSAnne8BattleText4 + db "@" + +SSAnne8EndBattleText4: ; 61a3d (18:5a3d) + TX_FAR _SSAnne8EndBattleText4 + db "@" + +SSAnne8AfterBattleText4: ; 61a42 (18:5a42) + TX_FAR _SSAnne8AfterBattleText4 + db "@" + +SSAnne8Text5: ; 61a47 (18:5a47) + TX_FAR _SSAnne8Text5 + db "@" + +SSAnne8Text6: ; 61a4c (18:5a4c) + TX_FAR _SSAnne8Text6 + db "@" + +SSAnne8Text7: ; 61a51 (18:5a51) + TX_FAR _SSAnne8Text7 + db "@" + +SSAnne8Text9: ; 61a56 (18:5a56) + TX_FAR _SSAnne8Text9 + db "@" + +SSAnne8Text11: ; 61a5b (18:5a5b) + TX_FAR _SSAnne8Text11 + db "@" diff --git a/scripts/ssanne9.asm b/scripts/ssanne9.asm new file mode 100755 index 00000000..9b055e3f --- /dev/null +++ b/scripts/ssanne9.asm @@ -0,0 +1,216 @@ +SSAnne9Script: ; 61b4b (18:5b4b) + ld a, $1 + ld [$cf0c], a + xor a + ld [$cc3c], a + ld hl, SSAnne9TrainerHeaders + ld de, SSAnne9ScriptPointers + ld a, [W_SSANNE9CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_SSANNE9CURSCRIPT], a + ret + +SSAnne9ScriptPointers: ; 61b64 (18:5b64) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +SSAnne9TextPointers: ; 61b6a (18:5b6a) + dw SSAnne9Text1 + dw SSAnne9Text2 + dw SSAnne9Text3 + dw SSAnne9Text4 + dw SSAnne9Text5 + dw Predef5CText + dw SSAnne9Text7 + dw SSAnne9Text8 + dw Predef5CText + dw SSAnne9Text10 + dw SSAnne9Text11 + dw SSAnne9Text12 + dw SSAnne9Text13 + +SSAnne9TrainerHeaders: ; 61b84 (18:5b84) +SSAnne9TrainerHeader0: ; 61b84 (18:5b84) + db $1 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d807 ; flag's byte + dw SSAnne9BattleText1 ; 0x5c51 TextBeforeBattle + dw SSAnne9AfterBattleText1 ; 0x5c5b TextAfterBattle + dw SSAnne9EndBattleText1 ; 0x5c56 TextEndBattle + dw SSAnne9EndBattleText1 ; 0x5c56 TextEndBattle + +SSAnne9TrainerHeader1: ; 61b90 (18:5b90) + db $2 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d807 ; flag's byte + dw SSAnne9BattleText2 ; 0x5c60 TextBeforeBattle + dw SSAnne9AfterBattleText2 ; 0x5c6a TextAfterBattle + dw SSAnne9EndBattleText2 ; 0x5c65 TextEndBattle + dw SSAnne9EndBattleText2 ; 0x5c65 TextEndBattle + +SSAnne9TrainerHeader2: ; 61b9c (18:5b9c) + db $3 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d807 ; flag's byte + dw SSAnne9BattleText3 ; 0x5c6f TextBeforeBattle + dw SSAnne9AfterBattleText3 ; 0x5c79 TextAfterBattle + dw SSAnne9EndBattleText3 ; 0x5c74 TextEndBattle + dw SSAnne9EndBattleText3 ; 0x5c74 TextEndBattle + +SSAnne9TrainerHeader3: ; 61ba8 (18:5ba8) + db $4 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d807 ; flag's byte + dw SSAnne9BattleText4 ; 0x5c7e TextBeforeBattle + dw SSAnne9AfterBattleText4 ; 0x5c88 TextAfterBattle + dw SSAnne9EndBattleText4 ; 0x5c83 TextEndBattle + dw SSAnne9EndBattleText4 ; 0x5c83 TextEndBattle + + db $ff + +SSAnne9Text1: ; 61bb5 (18:5bb5) + db $08 ; asm + ld hl, SSAnne9TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +SSAnne9Text2: ; 61bbf (18:5bbf) + db $08 ; asm + ld hl, SSAnne9TrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +SSAnne9Text3: ; 61bc9 (18:5bc9) + db $08 ; asm + ld hl, SSAnne9TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +SSAnne9Text4: ; 61bd3 (18:5bd3) + db $08 ; asm + ld hl, SSAnne9TrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +SSAnne9Text5: ; 61bdd (18:5bdd) + db $08 ; asm + call SaveScreenTilesToBuffer1 + ld hl, SSAnne9Text_61bf2 + call PrintText + call LoadScreenTilesFromBuffer1 + ld a, SNORLAX + call DisplayPokedex + jp TextScriptEnd + +SSAnne9Text_61bf2: ; 61bf2 (18:5bf2) + TX_FAR _SSAnne9Text_61bf2 + db "@" + +SSAnne9Text7: ; 61bf7 (18:5bf7) + db $08 ; asm + ld hl, SSAnne9Text_61c01 + call PrintText + jp TextScriptEnd + +SSAnne9Text_61c01: ; 61c01 (18:5c01) + TX_FAR _SSAnne9Text_61c01 + db "@" + +SSAnne9Text8: ; 61c06 (18:5c06) + db $08 ; asm + ld hl, SSAnne9Text_61c10 + call PrintText + jp TextScriptEnd + +SSAnne9Text_61c10: ; 61c10 (18:5c10) + TX_FAR _SSAnne9Text_61c10 + db "@" + +SSAnne9Text10: ; 61c15 (18:5c15) + db $08 ; asm + ld hl, SSAnne9Text_61c1f + call PrintText + jp TextScriptEnd + +SSAnne9Text_61c1f: ; 61c1f (18:5c1f) + TX_FAR _SSAnne9Text_61c1f + db "@" + +SSAnne9Text11: ; 61c24 (18:5c24) + db $08 ; asm + ld hl, SSAnne9Text_61c2e + call PrintText + jp TextScriptEnd + +SSAnne9Text_61c2e: ; 61c2e (18:5c2e) + TX_FAR _SSAnne9Text_61c2e + db "@" + +SSAnne9Text12: ; 61c33 (18:5c33) + db $08 ; asm + ld hl, SSAnne9Text_61c3d + call PrintText + jp TextScriptEnd + +SSAnne9Text_61c3d: ; 61c3d (18:5c3d) + TX_FAR _SSAnne9Text_61c3d + db "@" + +SSAnne9Text13: ; 61c42 (18:5c42) + db $08 ; asm + ld hl, SSAnne9Text_61c4c + call PrintText + jp TextScriptEnd + +SSAnne9Text_61c4c: ; 61c4c (18:5c4c) + TX_FAR _SSAnne9Text_61c4c + db "@" + +SSAnne9BattleText1: ; 61c51 (18:5c51) + TX_FAR _SSAnne9BattleText1 + db "@" + +SSAnne9EndBattleText1: ; 61c56 (18:5c56) + TX_FAR _SSAnne9EndBattleText1 + db "@" + +SSAnne9AfterBattleText1: ; 61c5b (18:5c5b) + TX_FAR _SSAnne9AfterBattleText1 + db "@" + +SSAnne9BattleText2: ; 61c60 (18:5c60) + TX_FAR _SSAnne9BattleText2 + db "@" + +SSAnne9EndBattleText2: ; 61c65 (18:5c65) + TX_FAR _SSAnne9EndBattleText2 + db "@" + +SSAnne9AfterBattleText2: ; 61c6a (18:5c6a) + TX_FAR _SSAnne9AfterBattleText2 + db "@" + +SSAnne9BattleText3: ; 61c6f (18:5c6f) + TX_FAR _SSAnne9BattleText3 + db "@" + +SSAnne9EndBattleText3: ; 61c74 (18:5c74) + TX_FAR _SSAnne9EndBattleText3 + db "@" + +SSAnne9AfterBattleText3: ; 61c79 (18:5c79) + TX_FAR _SSAnne9AfterBattleText3 + db "@" + +SSAnne9BattleText4: ; 61c7e (18:5c7e) + TX_FAR _SSAnne9BattleText4 + db "@" + +SSAnne9EndBattleText4: ; 61c83 (18:5c83) + TX_FAR _SSAnne9EndBattleText4 + db "@" + +SSAnne9AfterBattleText4: ; 61c88 (18:5c88) + TX_FAR _SSAnne9AfterBattleText4 + db "@" diff --git a/scripts/tradecenterm.asm b/scripts/tradecenterm.asm new file mode 100755 index 00000000..662a1df7 --- /dev/null +++ b/scripts/tradecenterm.asm @@ -0,0 +1,9 @@ +TradeCenterMScript: ; 4fd7d (13:7d7d) + jp BattleCenterMScript + +TradeCenterMTextPointers: ; 4fd80 (13:7d80) + dw TradeCenterMText1 + +TradeCenterMText1: ; 4fd82 (13:7d82) + TX_FAR _TradeCenterMText1 + db "@" diff --git a/scripts/undergroundpathentranceroute5.asm b/scripts/undergroundpathentranceroute5.asm new file mode 100755 index 00000000..9a437e85 --- /dev/null +++ b/scripts/undergroundpathentranceroute5.asm @@ -0,0 +1,19 @@ +UndergroundPathEntranceRoute5Script: ; 5d6a9 (17:56a9) + ld a, ROUTE_5 + ld [wLastMap], a + ret + +UndergroundPathEntranceRoute5_5d6af: ; 5d6af (17:56af) + db "@" + +UndergroundPathEntranceRoute5TextPointers: ; 5d6b0 (17:56b0) + dw UndergroundPathEntranceRoute5Text1 + +UndergroundPathEntranceRoute5Text1: ; 5d6b2 (17:56b2) + db $08 ; asm + ld a, $9 + ld [wWhichTrade], a + ld a, $54 + call Predef + ld hl, UndergroundPathEntranceRoute5_5d6af + ret diff --git a/scripts/undergroundpathentranceroute6.asm b/scripts/undergroundpathentranceroute6.asm new file mode 100755 index 00000000..6d356fec --- /dev/null +++ b/scripts/undergroundpathentranceroute6.asm @@ -0,0 +1,11 @@ +UndergroundPathEntranceRoute6Script: ; 5d6ef (17:56ef) + ld a, ROUTE_6 + ld [wLastMap], a + jp EnableAutoTextBoxDrawing + +UndergroundPathEntranceRoute6TextPointers: ; 5d6f7 (17:56f7) + dw UndergroundPathEntranceRoute6Text1 + +UndergroundPathEntranceRoute6Text1: ; 5d6f9 (17:56f9) + TX_FAR _UndergrdTunnelEntRoute6Text1 + db "@" diff --git a/scripts/undergroundpathentranceroute7.asm b/scripts/undergroundpathentranceroute7.asm new file mode 100755 index 00000000..c188a823 --- /dev/null +++ b/scripts/undergroundpathentranceroute7.asm @@ -0,0 +1,11 @@ +UndergroundPathEntranceRoute7Script: ; 5d72c (17:572c) + ld a, ROUTE_7 + ld [wLastMap], a + jp EnableAutoTextBoxDrawing + +UndergroundPathEntranceRoute7TextPointers: ; 5d734 (17:5734) + dw UndergroundPathEntranceRoute7Text1 + +UndergroundPathEntranceRoute7Text1: ; 5d736 (17:5736) + TX_FAR _UndergroundPathEntRoute7Text1 + db "@" diff --git a/scripts/undergroundpathentranceroute7copy.asm b/scripts/undergroundpathentranceroute7copy.asm new file mode 100755 index 00000000..2462a254 --- /dev/null +++ b/scripts/undergroundpathentranceroute7copy.asm @@ -0,0 +1,24 @@ +UndergroundPathEntranceRoute7CopyScript: ; 5d769 (17:5769) + ld a, ROUTE_7 + ld [wLastMap], a + ret + +UndergroundPathEntranceRoute7CopyTextPointers: ; 5d76f (17:576f) + dw UnnamedText_5d773 + dw UnnamedText_5d77d + +UnnamedText_5d773: ; 5d773 (17:5773) + TX_FAR _UnnamedText_5d773 + db "@" + +UnnamedText_5d778: ; 5d778 (17:5778) + TX_FAR _UnnamedText_5d778 + db "@" + +UnnamedText_5d77d: ; 5d77d (17:577d) + TX_FAR _UnnamedText_5d77d + db "@" + +UnnamedText_5d782: ; 5d782 (17:5782) + TX_FAR _UnnamedText_5d782 + db "@" diff --git a/scripts/undergroundpathentranceroute8.asm b/scripts/undergroundpathentranceroute8.asm new file mode 100755 index 00000000..873cf902 --- /dev/null +++ b/scripts/undergroundpathentranceroute8.asm @@ -0,0 +1,11 @@ +UndergroundPathEntranceRoute8Script: ; 1e289 (7:6289) + ld a, ROUTE_8 + ld [wLastMap], a + jp EnableAutoTextBoxDrawing + +UndergroundPathEntranceRoute8TextPointers: ; 1e291 (7:6291) + dw UndergroundPathEntranceRoute8Text1 + +UndergroundPathEntranceRoute8Text1: ; 1e293 (7:6293) + TX_FAR _UndergroundPathEntRoute8Text1 + db "@" diff --git a/scripts/undergroundpathns.asm b/scripts/undergroundpathns.asm new file mode 100755 index 00000000..96bf82a6 --- /dev/null +++ b/scripts/undergroundpathns.asm @@ -0,0 +1,5 @@ +UndergroundPathNSScript: ; 61f26 (18:5f26) + jp EnableAutoTextBoxDrawing + +UndergroundPathNSTextPointers: ; 61f29 (18:5f29) + db "@" diff --git a/scripts/undergroundpathwe.asm b/scripts/undergroundpathwe.asm new file mode 100755 index 00000000..f7e3755e --- /dev/null +++ b/scripts/undergroundpathwe.asm @@ -0,0 +1,5 @@ +UndergroundPathWEScript: ; 61f4a (18:5f4a) + jp EnableAutoTextBoxDrawing + +UndergroundPathWETextPointers: ; 61f4d (18:5f4d) + db "@" diff --git a/scripts/unknowndungeon1.asm b/scripts/unknowndungeon1.asm new file mode 100755 index 00000000..008a7bd7 --- /dev/null +++ b/scripts/unknowndungeon1.asm @@ -0,0 +1,7 @@ +UnknownDungeon1Script: ; 74d0c (1d:4d0c) + jp EnableAutoTextBoxDrawing + +UnknownDungeon1TextPointers: ; 74d0f (1d:4d0f) + dw Predef5CText + dw Predef5CText + dw Predef5CText diff --git a/scripts/unknowndungeon2.asm b/scripts/unknowndungeon2.asm new file mode 100755 index 00000000..c8249b27 --- /dev/null +++ b/scripts/unknowndungeon2.asm @@ -0,0 +1,7 @@ +UnknownDungeon2Script: ; 45e0b (11:5e0b) + jp EnableAutoTextBoxDrawing + +UnknownDungeon2TextPointers: ; 45e0e (11:5e0e) + dw Predef5CText + dw Predef5CText + dw Predef5CText diff --git a/scripts/unknowndungeon3.asm b/scripts/unknowndungeon3.asm new file mode 100755 index 00000000..b765ef56 --- /dev/null +++ b/scripts/unknowndungeon3.asm @@ -0,0 +1,44 @@ +UnknownDungeon3Script: ; 45ef0 (11:5ef0) + call EnableAutoTextBoxDrawing + ld hl, UnknownDungeon3TrainerHeaders + ld de, UnknownDungeon3ScriptPointers + ld a, [W_UNKNOWNDUNGEON3CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_UNKNOWNDUNGEON3CURSCRIPT], a + ret + +UnknownDungeon3ScriptPointers: ; 45f03 (11:5f03) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +UnknownDungeon3TextPointers: ; 45f09 (11:5f09) + dw UnknownDungeon3Text1 + dw Predef5CText + dw Predef5CText + +UnknownDungeon3TrainerHeaders: ; 45f0f (11:5f0f) +UnknownDungeon3TrainerHeader0: ; 45f0f (11:5f0f) + db $1 ; flag's bit + db ($0 << 4) ; trainer's view range + dw $d85f ; flag's byte + dw UnknownDungeon3MewtwoText ; 0x5f26 TextBeforeBattle + dw UnknownDungeon3MewtwoText ; 0x5f26 TextAfterBattle + dw UnknownDungeon3MewtwoText ; 0x5f26 TextEndBattle + dw UnknownDungeon3MewtwoText ; 0x5f26 TextEndBattle + + db $ff + +UnknownDungeon3Text1: ; 45f1c (11:5f1c) + db $08 ; asm + ld hl, UnknownDungeon3TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +UnknownDungeon3MewtwoText: ; 45f26 (11:5f26) + TX_FAR _UnknownDungeon3MewtwoText + db $8 + ld a, MEWTWO + call PlayCry + call WaitForSoundToFinish + jp TextScriptEnd diff --git a/scripts/vermilioncity.asm b/scripts/vermilioncity.asm new file mode 100755 index 00000000..3f582dba --- /dev/null +++ b/scripts/vermilioncity.asm @@ -0,0 +1,263 @@ +VermilionCityScript: ; 197a1 (6:57a1) + call EnableAutoTextBoxDrawing + ld hl, $d126 + bit 6, [hl] + res 6, [hl] + push hl + call nz, VermilionCityScript_197cb + pop hl + bit 5, [hl] + res 5, [hl] + call nz, VermilionCityScript_197c0 + ld hl, VermilionCityScriptPointers + ld a, [W_VERMILIONCITYCURSCRIPT] + jp CallFunctionInTable + +VermilionCityScript_197c0: ; 197c0 (6:57c0) + call GenRandom + ld a, [$ffd4] + and $e + ld [$d743], a + ret + +VermilionCityScript_197cb: ; 197cb (6:57cb) + ld hl, $d803 + bit 2, [hl] + ret z + bit 3, [hl] + set 3, [hl] + ret nz + ld a, $2 + ld [W_VERMILIONCITYCURSCRIPT], a + ret + +VermilionCityScriptPointers: ; 197dc (6:57dc) + dw VermilionCityScript0 + dw VermilionCityScript1 + dw VermilionCityScript2 + dw VermilionCityScript3 + dw VermilionCityScript4 + +VermilionCityScript0: ; 197e6 (6:57e6) + ld a, [$c109] + and a + ret nz + ld hl, CoordsData_19823 + call ArePlayerCoordsInArray + ret nc + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + ld [$cf0d], a + ld a, $3 + ld [$ff8c], a + call DisplayTextID + ld a, [$d803] + bit 2, a + jr nz, .asm_19810 ; 0x19804 $a + ld b, $3f + ld a, $1c + call Predef + ld a, b + and a + ret nz +.asm_19810 + ld a, $40 + ld [$ccd3], a + ld a, $1 + ld [$cd38], a + call Func_3486 + ld a, $1 + ld [W_VERMILIONCITYCURSCRIPT], a + ret + +CoordsData_19823: ; 19823 (6:5823) + db $1e,$12 + db $ff + +VermilionCityScript4: ; 19826 (6:5826) + ld hl, CoordsData_19823 + call ArePlayerCoordsInArray + ret c + ld a, $0 + ld [W_VERMILIONCITYCURSCRIPT], a + ret + +VermilionCityScript2: ; 19833 (6:5833) + ld a, $ff + ld [wJoypadForbiddenButtonsMask], a + ld a, $40 + ld [$ccd3], a + ld [$ccd4], a + ld a, $2 + ld [$cd38], a + call Func_3486 + ld a, $3 + ld [W_VERMILIONCITYCURSCRIPT], a + ret + +VermilionCityScript3: ; 1984e (6:584e) + ld a, [$cd38] + and a + ret nz + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [H_CURRENTPRESSEDBUTTONS], a + ld a, $0 + ld [W_VERMILIONCITYCURSCRIPT], a + ret + +VermilionCityScript1: ; 1985f (6:585f) + ld a, [$cd38] + and a + ret nz + ld c, $a + call DelayFrames + ld a, $0 + ld [W_VERMILIONCITYCURSCRIPT], a + ret + +VermilionCityTextPointers: ; 1986f (6:586f) + dw VermilionCityText1 + dw VermilionCityText2 + dw VermilionCityText3 + dw VermilionCityText4 + dw VermilionCityText5 + dw VermilionCityText6 + dw VermilionCityText7 + dw VermilionCityText8 + dw MartSignText + dw PokeCenterSignText + dw VermilionCityText11 + dw VermilionCityText12 + dw VermilionCityText13 + +VermilionCityText1: ; 19889 (6:5889) + TX_FAR _VermilionCityText1 + db "@" + +VermilionCityText2: ; 1988e (6:588e) + db $08 ; asm + ld a, [$d803] + bit 2, a + jr nz, .asm_359bd ; 0x19894 + ld hl, VermilionCityText_198a7 + call PrintText + jr .asm_735d9 ; 0x1989c +.asm_359bd ; 0x1989e + ld hl, VermilionCityText_198ac + call PrintText +.asm_735d9 ; 0x198a4 + jp TextScriptEnd + +VermilionCityText_198a7: ; 198a7 (6:58a7) + TX_FAR _VermilionCityText_198a7 + db "@" + +VermilionCityText_198ac: ; 198ac (6:58ac) + TX_FAR _VermilionCityText_198ac + db "@" + +VermilionCityText3: ; 198b1 (6:58b1) + db $08 ; asm + ld a, [$d803] + bit 2, a + jr nz, .asm_3e0e9 ; 0x198b7 + ld a, [$c109] + cp $c + jr z, .asm_07af3 ; 0x198be + ld hl, VermilionCityCoords1 + call ArePlayerCoordsInArray + jr nc, .asm_57b73 ; 0x198c6 +.asm_07af3 ; 0x198c8 + ld hl, SSAnneWelcomeText4 + call PrintText + jr .asm_79bd1 ; 0x198ce +.asm_57b73 ; 0x198d0 + ld hl, SSAnneWelcomeText9 + call PrintText + ld b, S_S__TICKET + ld a, $1c + call Predef + ld a, b + and a + jr nz, .asm_0419b ; 0x198df + ld hl, SSAnneNoTicketText + call PrintText + jr .asm_79bd1 ; 0x198e7 +.asm_0419b ; 0x198e9 + ld hl, SSAnneFlashedTicketText + call PrintText + ld a, $4 + ld [W_VERMILIONCITYCURSCRIPT], a + jr .asm_79bd1 ; 0x198f4 +.asm_3e0e9 ; 0x198f6 + ld hl, SSAnneNotHereText + call PrintText +.asm_79bd1 ; 0x198fc + jp TextScriptEnd + +VermilionCityCoords1: ; 198ff (6:58ff) + db $1d,$13 + db $1f,$13 + db $ff + +SSAnneWelcomeText4: ; 19904 (6:5904) + TX_FAR _SSAnneWelcomeText4 + db "@" + +SSAnneWelcomeText9: ; 19909 (6:5909) + TX_FAR _SSAnneWelcomeText9 + db "@" + +SSAnneFlashedTicketText: ; 1990e (6:590e) + TX_FAR _SSAnneFlashedTicketText + db "@" + +SSAnneNoTicketText: ; 19913 (6:5913) + TX_FAR _SSAnneNoTicketText + db "@" + +SSAnneNotHereText: ; 19918 (6:5918) + TX_FAR _SSAnneNotHereText + db "@" + +VermilionCityText4: ; 1991d (6:591d) + TX_FAR _VermilionCityText4 + db "@" + +VermilionCityText5: ; 19922 (6:5922) + TX_FAR _VermilionCityText5 + db $08 ; asm + ld a, MACHOP + call PlayCry + call WaitForSoundToFinish + ld hl, VermilionCityText14 ; $5933 + ret + +VermilionCityText14: ; 19933 (6:5933) + TX_FAR _VermilionCityText14 + db "@" + +VermilionCityText6: ; 19938 (6:5938) + TX_FAR _VermilionCityText6 + db "@" + +VermilionCityText7: ; 1993d (6:593d) + TX_FAR _VermilionCityText7 + db "@" + +VermilionCityText8: ; 19942 (6:5942) + TX_FAR _VermilionCityText8 + db "@" + +VermilionCityText11: ; 19947 (6:5947) + TX_FAR _VermilionCityText11 + db "@" + +VermilionCityText12: ; 1994c (6:594c) + TX_FAR _VermilionCityText12 + db "@" + +VermilionCityText13: ; 19951 (6:5951) + TX_FAR _VermilionCityText13 + db "@" diff --git a/scripts/vermiliondock.asm b/scripts/vermiliondock.asm new file mode 100755 index 00000000..164abe7c --- /dev/null +++ b/scripts/vermiliondock.asm @@ -0,0 +1,208 @@ +VermilionDockScript: ; 1db52 (7:5b52) + call EnableAutoTextBoxDrawing + ld hl, $d803 + bit 4, [hl] + jr nz, .asm_1db8d ; 0x1db5a $31 + bit 0, [hl] + ret z + ld a, [$d42f] + cp $1 + ret nz + bit 2, [hl] + jp z, VermilionDock_1db9b + set 4, [hl] + call Delay3 + ld hl, $d730 + set 7, [hl] + ld hl, $ccd3 + ld a, $40 + ld [hli], a + ld [hli], a + ld [hl], a + ld a, $3 + ld [$cd38], a + xor a + ld [$c206], a + ld [$cd3b], a + dec a + ld [wJoypadForbiddenButtonsMask], a + ret +.asm_1db8d + bit 5, [hl] + ret nz + ld a, [$cd38] + and a + ret nz + ld [wJoypadForbiddenButtonsMask], a + set 5, [hl] + ret + +VermilionDock_1db9b: ; 1db9b (7:5b9b) + set 2, [hl] + ld a, $ff + ld [wJoypadForbiddenButtonsMask], a + ld [$c0ee], a + call PlaySound + ld c, BANK(Music_Surfing) + ld a, MUSIC_SURFING + call PlayMusic + callba LoadSmokeTileFourTimes + xor a + ld [$c102], a + ld c, $78 + call DelayFrames + ld b, $9c + call CopyScreenTileBufferToVRAM + FuncCoord 0, 10 ; $c468 + ld hl, Coord + ld bc, $0078 + ld a, $14 + call FillMemory + ld a, $1 + ld [$ffba], a + call Delay3 + xor a + ld [$ffba], a + ld [$cd3d], a + ld [$ff49], a + ld a, $58 + ld [$cd3e], a + ld hl, $d526 + ld c, [hl] + inc hl + ld b, [hl] + push bc + push hl + ld a, (SFX_02_54 - SFX_Headers_02) / 3 + call PlaySoundWaitForCurrent + ld a, $ff + ld [$cfcb], a + ld d, $0 + ld e, $8 +.asm_1dbfa + ld hl, $0002 + add hl, bc + ld a, l + ld [$d526], a + ld a, h + ld [$d527], a + push hl + push de + call ScheduleEastColumnRedraw + call VermilionDock_1dc59 + pop de + ld b, $10 +.asm_1dc11 + call VermilionDock_1dc42 + ld c, $8 +.asm_1dc16 + call VermilionDock_1dc7c + dec c + jr nz, .asm_1dc16 ; 0x1dc1a $fa + inc d + dec b + jr nz, .asm_1dc11 ; 0x1dc1e $f1 + pop bc + dec e + jr nz, .asm_1dbfa ; 0x1dc22 $d6 + xor a + ld [$ff4a], a + ld [$ffb0], a + call VermilionDock_1dc94 + ld a, $90 + ld [$ffb0], a + ld a, $1 + ld [$cfcb], a + pop hl + pop bc + ld [hl], b + dec hl + ld [hl], c + call LoadPlayerSpriteGraphics + ld hl, $d3ae + dec [hl] + ret + +VermilionDock_1dc42: ; 1dc42 (7:5c42) + push bc + push de + ld hl, $c311 + ld a, [$cd3d] + swap a + ld c, a + ld de, $0004 +.asm_1dc50 + inc [hl] + inc [hl] + add hl, de + dec c + jr nz, .asm_1dc50 ; 0x1dc54 $fa + pop de + pop bc + ret + +VermilionDock_1dc59: ; 1dc59 (7:5c59) + ld a, [$cd3e] + sub $10 + ld [$cd3e], a + ld c, a + ld b, $64 + ld a, [$cd3d] + inc a + ld [$cd3d], a + ld a, $1 + ld de, VermilionDockOAMBlock + call WriteOAMBlock + ret + +VermilionDockOAMBlock: ; 1dc74 (7:5c74) + db $fc, $10 + db $fd, $10 + db $fe, $10 + db $ff, $10 + +VermilionDock_1dc7c: ; 1dc7c (7:5c7c) + ld h, d + ld l, $50 + call .asm_1dc86 + ld h, $0 + ld l, $80 +.asm_1dc86 + ld a, [$ff44] + cp l + jr nz, .asm_1dc86 ; 0x1dc89 $fb + ld a, h + ld [$ff43], a +.asm_1dc8e + ld a, [$ff44] + cp h + jr z, .asm_1dc8e ; 0x1dc91 $fb + ret + +VermilionDock_1dc94: ; 1dc94 (7:5c94) + ld hl, $cc5b + ld bc, $00b4 + ld a, $14 + call FillMemory + ld hl, $9940 + ld de, $cc5b + ld bc, $000c + call CopyVideoData + ld hl, $c754 + ld a, $d + ld [hli], a + ld [hli], a + ld [hli], a + ld [hl], a + ld a, (SFX_02_54 - SFX_Headers_02) / 3 + call PlaySound + ld c, $78 + call DelayFrames + ret + +VermilionDockTextPointers: ; 1dcbf (7:5cbf) + dw VermilionDockText1 + +VermilionDockText1: ; 1dcc1 (7:5cc1) + TX_FAR _VermilionDockText1 + db "@" diff --git a/scripts/vermiliongym.asm b/scripts/vermiliongym.asm new file mode 100755 index 00000000..de3678dd --- /dev/null +++ b/scripts/vermiliongym.asm @@ -0,0 +1,275 @@ +VermilionGymScript: ; 5ca26 (17:4a26) + ld hl, $d126 + bit 5, [hl] + res 5, [hl] + push hl + call nz, VermilionGymScript_5ca4c + pop hl + bit 6, [hl] + res 6, [hl] + call nz, VermilionGymScript_5ca6d + call EnableAutoTextBoxDrawing + ld hl, VermilionGymTrainerHeader0 + ld de, VermilionGymScriptPointers + ld a, [W_VERMILIONGYMCURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_VERMILIONGYMCURSCRIPT], a + ret + +VermilionGymScript_5ca4c: ; 5ca4c (17:4a4c) + ld hl, Gym3CityName ; $4a55 + ld de, Gym3LeaderName ; $4a64 + jp LoadGymLeaderAndCityName + +Gym3CityName: ; 5ca55 (17:4a55) + db "VERMILION CITY@" + +Gym3LeaderName: ; 5ca64 (17:4a64) + db "LT.SURGE@" + +VermilionGymScript_5ca6d: ; 5ca6d (17:4a6d) + ld a, [$d773] + bit 0, a + jr nz, .asm_5ca78 + ld a, $24 + jr .asm_5ca7f +.asm_5ca78 + ld a, (SFX_02_57 - SFX_Headers_02) / 3 + call PlaySound + ld a, $5 +.asm_5ca7f + ld [$d09f], a + ld bc, $202 + ld a, $17 + jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) + +VermilionGymScript_5ca8a: ; 5ca8a (17:4a8a) + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [W_VERMILIONGYMCURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +VermilionGymScriptPointers: ; 5ca95 (17:4a95) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + dw VermilionGymScript3 + +VermilionGymScript3: ; 5ca9d (17:4a9d) + ld a, [W_ISINBATTLE] ; $d057 + cp $ff + jp z, VermilionGymScript_5ca8a + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a + +VermilionGymScript_5caaa: ; 5caaa (17:4aaa) + ld a, $6 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + ld hl, $d773 + set 7, [hl] + ld bc, (TM_24 << 8) | 1 + call GiveItem + jr nc, .BagFull + ld a, $7 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + ld hl, $d773 + set 6, [hl] + jr .asm_5cad3 +.BagFull + ld a, $8 + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID +.asm_5cad3 + ld hl, W_OBTAINEDBADGES + set 2, [hl] + ld hl, $d72a + set 2, [hl] + + ; deactivate gym trainers + ld a, [$d773] + or %00011100 + ld [$d773], a + + jp VermilionGymScript_5ca8a + +VermilionGymTextPointers: ; 5cae8 (17:4ae8) + dw VermilionGymText1 + dw VermilionGymText2 + dw VermilionGymText3 + dw VermilionGymText4 + dw VermilionGymText5 + dw VermilionGymText6 + dw VermilionGymText7 + dw VermilionGymText8 + +VermilionGymTrainerHeaders: ; 5caf8 (17:4af8) +VermilionGymTrainerHeader0: ; 5caf8 (17:4af8) + db $2 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d773 ; flag's byte + dw VermilionGymBattleText1 ; 0x4b9a TextBeforeBattle + dw VermilionGymAfterBattleText1 ; 0x4ba4 TextAfterBattle + dw VermilionGymEndBattleText1 ; 0x4b9f TextEndBattle + dw VermilionGymEndBattleText1 ; 0x4b9f TextEndBattle + +VermilionGymTrainerHeader1: ; 5cb04 (17:4b04) + db $3 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d773 ; flag's byte + dw VermilionGymBattleText2 ; 0x4bb3 TextBeforeBattle + dw VermilionGymAfterBattleText2 ; 0x4bbd TextAfterBattle + dw VermilionGymEndBattleText2 ; 0x4bb8 TextEndBattle + dw VermilionGymEndBattleText2 ; 0x4bb8 TextEndBattle + +VermilionGymTrainerHeader2: ; 5cb10 (17:4b10) + db $4 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d773 ; flag's byte + dw VermilionGymBattleText3 ; 0x4bcc TextBeforeBattle + dw VermilionGymAfterBattleText3 ; 0x4bd6 TextAfterBattle + dw VermilionGymEndBattleText3 ; 0x4bd1 TextEndBattle + dw VermilionGymEndBattleText3 ; 0x4bd1 TextEndBattle + + db $ff + +VermilionGymText1: ; 5cb1d (17:4b1d) + db $08 ; asm + ld a, [$d773] + bit 7, a + jr z, .asm_7cc29 ; 0x5cb23 + bit 6, a + jr nz, .asm_41203 ; 0x5cb27 + call z, VermilionGymScript_5caaa + call DisableWaitingAfterTextDisplay + jr .asm_23621 ; 0x5cb2f +.asm_41203 ; 0x5cb31 + ld hl, VermilionGymText_5cb72 + call PrintText + jr .asm_23621 ; 0x5cb37 +.asm_7cc29 ; 0x5cb39 + ld hl, VermilionGymText_5cb6d + call PrintText + ld hl, $d72d + set 6, [hl] + set 7, [hl] + ld hl, ReceivedThunderbadgeText + ld de, ReceivedThunderbadgeText + call PreBattleSaveRegisters + ldh a, [$8c] + ld [$cf13], a + call EngageMapTrainer + call InitBattleEnemyParameters + ld a, $3 + ld [$d05c], a + xor a + ldh [$b4], a + ld a, $3 + ld [W_VERMILIONGYMCURSCRIPT], a + ld [W_CURMAPSCRIPT], a +.asm_23621 ; 0x5cb6a + jp TextScriptEnd + +VermilionGymText_5cb6d: ; 5cb6d (17:4b6d) + TX_FAR _VermilionGymText_5cb6d + db "@" + +VermilionGymText_5cb72: ; 5cb72 (17:4b72) + TX_FAR _VermilionGymText_5cb72 + db "@" + +VermilionGymText6: ; 5cb77 (17:4b77) + TX_FAR _VermilionGymText_5cb77 + db "@" + +VermilionGymText7: ; 5cb7c (17:4b7c) + TX_FAR _ReceivedTM24Text + db $11 + TX_FAR _TM24ExplanationText + db "@" + +VermilionGymText8: ; 5cb86 (17:4b86) + TX_FAR _TM24NoRoomText + db "@" + +ReceivedThunderbadgeText: ; 5cb8b (17:4b8b) + TX_FAR _ReceivedThunderbadgeText + db "@" + +VermilionGymText2: ; 5cb90 (17:4b90) + db $08 ; asm + ld hl, VermilionGymTrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +VermilionGymBattleText1: ; 5cb9a (17:4b9a) + TX_FAR _VermilionGymBattleText1 + db "@" + +VermilionGymEndBattleText1: ; 5cb9f (17:4b9f) + TX_FAR _VermilionGymEndBattleText1 + db "@" + +VermilionGymAfterBattleText1: ; 5cba4 (17:4ba4) + TX_FAR _VermilionGymAfterBattleText1 + db "@" + +VermilionGymText3: ; 5cba9 (17:4ba9) + db $08 ; asm + ld hl, VermilionGymTrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +VermilionGymBattleText2: ; 5cbb3 (17:4bb3) + TX_FAR _VermilionGymBattleText2 + db "@" + +VermilionGymEndBattleText2: ; 5cbb8 (17:4bb8) + TX_FAR _VermilionGymEndBattleText2 + db "@" + +VermilionGymAfterBattleText2: ; 5cbbd (17:4bbd) + TX_FAR _VermilionGymAfterBattleText2 + db "@" + +VermilionGymText4: ; 5cbc2 (17:4bc2) + db $08 ; asm + ld hl, VermilionGymTrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +VermilionGymBattleText3: ; 5cbcc (17:4bcc) + TX_FAR _VermilionGymBattleText3 + db "@" + +VermilionGymEndBattleText3: ; 5cbd1 (17:4bd1) + TX_FAR _VermilionGymEndBattleText3 + db "@" + +VermilionGymAfterBattleText3: ; 5cbd6 (17:4bd6) + TX_FAR _VermilionGymAfterBattleText3 + db "@" + +VermilionGymText5: ; 5cbdb (17:4bdb) + db $08 ; asm + ld a, [$d72a] + bit 2, a + jr nz, .asm_13b67 ; 0x5cbe1 + ld hl, VermilionGymText_5cbf4 + call PrintText + jr .asm_c2b38 ; 0x5cbe9 +.asm_13b67 ; 0x5cbeb + ld hl, VermilionGymText_5cbf9 + call PrintText +.asm_c2b38 ; 0x5cbf1 + jp TextScriptEnd + +VermilionGymText_5cbf4: ; 5cbf4 (17:4bf4) + TX_FAR _VermilionGymText_5cbf4 + db "@" + +VermilionGymText_5cbf9: ; 5cbf9 (17:4bf9) + TX_FAR _VermilionGymText_5cbf9 + db "@" diff --git a/scripts/vermilionhouse1.asm b/scripts/vermilionhouse1.asm new file mode 100755 index 00000000..4ead1af7 --- /dev/null +++ b/scripts/vermilionhouse1.asm @@ -0,0 +1,24 @@ +VermilionHouse1Script: ; 1dafc (7:5afc) + call EnableAutoTextBoxDrawing + ret + +VermilionHouse1TextPointers: ; 1db00 (7:5b00) + dw VermilionHouse1Text1 + dw VermilionHouse1Text2 + dw VermilionHouse1Text3 + +VermilionHouse1Text1: ; 1db06 (7:5b06) + TX_FAR _VermilionHouse1Text1 + db "@" + +VermilionHouse1Text2: ; 1db0b (7:5b0b) + TX_FAR _VermilionHouse1Text2 + db $08 ; asm + ld a, PIDGEY + call PlayCry + call WaitForSoundToFinish + jp TextScriptEnd + +VermilionHouse1Text3: ; 1db1b (7:5b1b) + TX_FAR _VermilionHouse1Text3 + db "@" diff --git a/scripts/vermilionhouse2.asm b/scripts/vermilionhouse2.asm new file mode 100755 index 00000000..9efb8200 --- /dev/null +++ b/scripts/vermilionhouse2.asm @@ -0,0 +1,57 @@ +VermilionHouse2Script: ; 56070 (15:6070) + jp EnableAutoTextBoxDrawing + +VermilionHouse2TextPointers: ; 56073 (15:6073) + dw VermilionHouse2Text1 + +VermilionHouse2Text1: ; 56075 (15:6075) + db $08 ; asm + ld a, [$d728] + bit 3, a + jr nz, .asm_03ef5 + ld hl, VermilionHouse2Text_560b1 + call PrintText + call YesNoChoice + ld a, [$cc26] + and a + jr nz, .asm_eb1b7 + ld bc, (OLD_ROD << 8) | 1 + call GiveItem + jr nc, .BagFull + ld hl, $d728 + set 3, [hl] + ld hl, VermilionHouse2Text_560b6 + jr .asm_5dd95 +.BagFull + ld hl, VermilionHouse2Text_560ca + jr .asm_5dd95 +.asm_eb1b7 + ld hl, VermilionHouse2Text_560c0 + jr .asm_5dd95 +.asm_03ef5 + ld hl, VermilionHouse2Text_560c5 +.asm_5dd95 + call PrintText + jp TextScriptEnd + +VermilionHouse2Text_560b1: ; 560b1 (15:60b1) + TX_FAR _VermilionHouse2Text_560b1 + db "@" + +VermilionHouse2Text_560b6: ; 560b6 (15:60b6) + TX_FAR _VermilionHouse2Text_560b6 ; 0x9c554 + db $0B + TX_FAR _VermilionHouse2Text_560bb ; 0x9c5a4 + db "@" + +VermilionHouse2Text_560c0: ; 560c0 (15:60c0) + TX_FAR _VermilionHouse2Text_560c0 + db "@" + +VermilionHouse2Text_560c5: ; 560c5 (15:60c5) + TX_FAR _VermilionHouse2Text_560c5 + db "@" + +VermilionHouse2Text_560ca: ; 560ca (15:60ca) + TX_FAR _VermilionHouse2Text_560ca + db "@" diff --git a/scripts/vermilionhouse3.asm b/scripts/vermilionhouse3.asm new file mode 100755 index 00000000..b6bceeea --- /dev/null +++ b/scripts/vermilionhouse3.asm @@ -0,0 +1,13 @@ +VermilionHouse3Script: ; 19c12 (6:5c12) + jp EnableAutoTextBoxDrawing + +VermilionHouse3TextPointers: ; 19c15 (6:5c15) + dw VermilionHouse3Text1 + +VermilionHouse3Text1: ; 19c17 (6:5c17) + db $08 ; asm + ld a, $4 + ld [wWhichTrade], a + ld a, $54 + call Predef + jp TextScriptEnd diff --git a/scripts/vermilionmart.asm b/scripts/vermilionmart.asm new file mode 100755 index 00000000..921e7852 --- /dev/null +++ b/scripts/vermilionmart.asm @@ -0,0 +1,15 @@ +VermilionMartScript: ; 5c9e1 (17:49e1) + jp EnableAutoTextBoxDrawing + +VermilionMartTextPointers: ; 5c9e4 (17:49e4) + dw VermilionMartText1 + dw VermilionMartText2 + dw VermilionMartText3 + +VermilionMartText2: ; 5c9ea (17:49ea) + TX_FAR _VermilionMartText2 + db "@" + +VermilionMartText3: ; 5c9ef (17:49ef) + TX_FAR _VermilionMartText3 + db "@" diff --git a/scripts/vermilionpokecenter.asm b/scripts/vermilionpokecenter.asm new file mode 100755 index 00000000..00d139f5 --- /dev/null +++ b/scripts/vermilionpokecenter.asm @@ -0,0 +1,23 @@ +VermilionPokecenterScript: ; 5c98f (17:498f) + call Func_22fa + jp EnableAutoTextBoxDrawing + +VermilionPokecenterTextPointers: ; 5c995 (17:4995) + dw VermilionPokecenterText1 + dw VermilionPokecenterText2 + dw VermilionPokecenterText3 + dw VermilionPokecenterText4 + +VermilionPokecenterText1: ; 5c99d (17:499d) + db $ff + +VermilionPokecenterText2: ; 5c99e (17:499e) + TX_FAR _VermilionPokecenterText1 + db "@" + +VermilionPokecenterText3: ; 5c9a3 (17:49a3) + TX_FAR _VermilionPokecenterText3 + db "@" + +VermilionPokecenterText4: ; 5c9a8 (17:49a8) + db $f6 diff --git a/scripts/victoryroad1.asm b/scripts/victoryroad1.asm new file mode 100755 index 00000000..b9b946ad --- /dev/null +++ b/scripts/victoryroad1.asm @@ -0,0 +1,108 @@ +VictoryRoad1Script: ; 5da0a (17:5a0a) + ld hl, $d126 + bit 5, [hl] + res 5, [hl] + call nz, .next + call EnableAutoTextBoxDrawing + ld hl, VictoryRoad1TrainerHeaders + ld de, VictoryRoad1ScriptPointers + ld a, [W_VICTORYROAD1CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_VICTORYROAD1CURSCRIPT], a + ret +.next + ld a, [$d869] + bit 7, a + ret z + ld a, $1d + ld [$d09f], a + ld bc, $604 + ld a, $17 + jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) + +VictoryRoad1ScriptPointers: ; 5da3a (17:5a3a) + dw VictoryRoad1Script0 + dw Func_324c + dw EndTrainerBattle + +VictoryRoad1Script0: ; 5da40 (17:5a40) + ld a, [$d869] + bit 7, a + jp nz, CheckFightingMapTrainers + ld hl, CoordsData_5da5c ; $5a5c + call CheckBoulderCoords + jp nc, CheckFightingMapTrainers + ld hl, $d126 + set 5, [hl] + ld hl, $d869 + set 7, [hl] + ret + +CoordsData_5da5c: ; 5da5c (17:5a5c) + db $0D,$11,$FF + +VictoryRoad1TextPointers: ; 5da5f (17:5a5f) + dw VictoryRoad1Text1 + dw VictoryRoad1Text2 + dw Predef5CText + dw Predef5CText + dw BoulderText + dw BoulderText + dw BoulderText + +VictoryRoad1TrainerHeaders: ; 5da6d (17:5a6d) +VictoryRoad1TrainerHeader0: ; 5da6d (17:5a6d) + db $1 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d869 ; flag's byte + dw VictoryRoad1BattleText1 ; 0x5a9a TextBeforeBattle + dw VictoryRoad1AfterBattleText1 ; 0x5aa4 TextAfterBattle + dw VictoryRoad1EndBattleText1 ; 0x5a9f TextEndBattle + dw VictoryRoad1EndBattleText1 ; 0x5a9f TextEndBattle + +VictoryRoad1TrainerHeader1: ; 5da79 (17:5a79) + db $2 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d869 ; flag's byte + dw VictoryRoad1BattleText2 ; 0x5aa9 TextBeforeBattle + dw VictoryRoad1AfterBattleText2 ; 0x5ab3 TextAfterBattle + dw VictoryRoad1EndBattleText2 ; 0x5aae TextEndBattle + dw VictoryRoad1EndBattleText2 ; 0x5aae TextEndBattle + + db $ff + +VictoryRoad1Text1: ; 5da86 (17:5a86) + db $08 ; asm + ld hl, VictoryRoad1TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +VictoryRoad1Text2: ; 5da90 (17:5a90) + db $08 ; asm + ld hl, VictoryRoad1TrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +VictoryRoad1BattleText1: ; 5da9a (17:5a9a) + TX_FAR _VictoryRoad1BattleText1 + db "@" + +VictoryRoad1EndBattleText1: ; 5da9f (17:5a9f) + TX_FAR _VictoryRoad1EndBattleText1 + db "@" + +VictoryRoad1AfterBattleText1: ; 5daa4 (17:5aa4) + TX_FAR _VictoryRoad1AfterBattleText1 + db "@" + +VictoryRoad1BattleText2: ; 5daa9 (17:5aa9) + TX_FAR _VictoryRoad1BattleText2 + db "@" + +VictoryRoad1EndBattleText2: ; 5daae (17:5aae) + TX_FAR _VictoryRoad1EndBattleText2 + db "@" + +VictoryRoad1AfterBattleText2: ; 5dab3 (17:5ab3) + TX_FAR _VictoryRoad1AfterBattleText2 + db "@" diff --git a/scripts/victoryroad2.asm b/scripts/victoryroad2.asm new file mode 100755 index 00000000..6270a858 --- /dev/null +++ b/scripts/victoryroad2.asm @@ -0,0 +1,248 @@ +VictoryRoad2Script: ; 5179d (14:579d) + ld hl, $d126 + bit 6, [hl] + res 6, [hl] + call nz, VictoryRoad2Script_517c4 + ld hl, $d126 + bit 5, [hl] + res 5, [hl] + call nz, VictoryRoad2Script_517c9 + call EnableAutoTextBoxDrawing + ld hl, VictoryRoad2TrainerHeaders + ld de, VictoryRoad2ScriptPointers + ld a, [W_VICTORYROAD2CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_VICTORYROAD2CURSCRIPT], a + ret + +VictoryRoad2Script_517c4: ; 517c4 (14:57c4) + ld hl, $d869 + res 7, [hl] + +VictoryRoad2Script_517c9: ; 517c9 (14:57c9) + ld a, [$d7ee] + bit 0, a + jr z, .asm_517da + push af + ld a, $15 + ld bc, $403 + call VictoryRoad2Script_517e2 + pop af +.asm_517da + bit 7, a + ret z + ld a, $1d + ld bc, $70b + +VictoryRoad2Script_517e2: ; 517e2 (14:57e2) + ld [$d09f], a + ld a, $17 + call Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) + ret + +VictoryRoad2ScriptPointers: ; 517eb (14:57eb) + dw VictoryRoad2Script0 + dw Func_324c + dw EndTrainerBattle + +VictoryRoad2Script0: ; 517f1 (14:57f1) + ld hl, CoordsData_51816 ; $5816 + call CheckBoulderCoords + jp nc, CheckFightingMapTrainers + ld hl, $d7ee + ld a, [wWhichTrade] ; $cd3d + cp $2 + jr z, .asm_5180b + bit 0, [hl] + set 0, [hl] + ret nz + jr .asm_51810 +.asm_5180b + bit 7, [hl] + set 7, [hl] + ret nz +.asm_51810 + ld hl, $d126 + set 5, [hl] + ret + +CoordsData_51816: ; 51816 (14:5816) + db $10,$01 + db $10,$09 + db $FF + +VictoryRoad2TextPointers: ; 5181b (14:581b) + dw VictoryRoad2Text1 + dw VictoryRoad2Text2 + dw VictoryRoad2Text3 + dw VictoryRoad2Text4 + dw VictoryRoad2Text5 + dw VictoryRoad2Text6 + dw Predef5CText + dw Predef5CText + dw Predef5CText + dw Predef5CText + dw BoulderText + dw BoulderText + dw BoulderText + +VictoryRoad2TrainerHeaders: ; 51835 (14:5835) +VictoryRoad2TrainerHeader0: ; 51835 (14:5835) + db $1 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7ee ; flag's byte + dw VictoryRoad2BattleText1 ; 0x58ca TextBeforeBattle + dw VictoryRoad2AfterBattleText1 ; 0x58d4 TextAfterBattle + dw VictoryRoad2EndBattleText1 ; 0x58cf TextEndBattle + dw VictoryRoad2EndBattleText1 ; 0x58cf TextEndBattle + +VictoryRoad2TrainerHeader2: ; 51841 (14:5841) + db $2 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7ee ; flag's byte + dw VictoryRoad2BattleText2 ; 0x58d9 TextBeforeBattle + dw VictoryRoad2AfterBattleText2 ; 0x58e3 TextAfterBattle + dw VictoryRoad2EndBattleText2 ; 0x58de TextEndBattle + dw VictoryRoad2EndBattleText2 ; 0x58de TextEndBattle + +VictoryRoad2TrainerHeader3: ; 5184d (14:584d) + db $3 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7ee ; flag's byte + dw VictoryRoad2BattleText3 ; 0x58e8 TextBeforeBattle + dw VictoryRoad2AfterBattleText3 ; 0x58f2 TextAfterBattle + dw VictoryRoad2EndBattleText3 ; 0x58ed TextEndBattle + dw VictoryRoad2EndBattleText3 ; 0x58ed TextEndBattle + +VictoryRoad2TrainerHeader4: ; 51859 (14:5859) + db $4 ; flag's bit + db ($1 << 4) ; trainer's view range + dw $d7ee ; flag's byte + dw VictoryRoad2BattleText4 ; 0x58f7 TextBeforeBattle + dw VictoryRoad2AfterBattleText4 ; 0x5901 TextAfterBattle + dw VictoryRoad2EndBattleText4 ; 0x58fc TextEndBattle + dw VictoryRoad2EndBattleText4 ; 0x58fc TextEndBattle + +VictoryRoad2TrainerHeader5: ; 51865 (14:5865) + db $5 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d7ee ; flag's byte + dw VictoryRoad2BattleText5 ; 0x5906 TextBeforeBattle + dw VictoryRoad2AfterBattleText5 ; 0x5910 TextAfterBattle + dw VictoryRoad2EndBattleText5 ; 0x590b TextEndBattle + dw VictoryRoad2EndBattleText5 ; 0x590b TextEndBattle + +VictoryRoad2TrainerHeader6: ; 51871 (14:5871) + db $6 ; flag's bit + db ($0 << 4) ; trainer's view range + dw $d7ee ; flag's byte + dw VictoryRoad2BattleText6 ; 0x58ba TextBeforeBattle + dw VictoryRoad2BattleText6 ; 0x58ba TextAfterBattle + dw VictoryRoad2BattleText6 ; 0x58ba TextEndBattle + dw VictoryRoad2BattleText6 ; 0x58ba TextEndBattle + + db $ff + +VictoryRoad2Text1: ; 5187e (14:587e) + db $08 ; asm + ld hl, VictoryRoad2TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +VictoryRoad2Text2: ; 51888 (14:5888) + db $08 ; asm + ld hl, VictoryRoad2TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +VictoryRoad2Text3: ; 51892 (14:5892) + db $08 ; asm + ld hl, VictoryRoad2TrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +VictoryRoad2Text4: ; 5189c (14:589c) + db $08 ; asm + ld hl, VictoryRoad2TrainerHeader4 + call TalkToTrainer + jp TextScriptEnd + +VictoryRoad2Text5: ; 518a6 (14:58a6) + db $08 ; asm + ld hl, VictoryRoad2TrainerHeader5 + call TalkToTrainer + jp TextScriptEnd + +VictoryRoad2Text6: ; 518b0 (14:58b0) + db $08 ; asm + ld hl, VictoryRoad2TrainerHeader6 + call TalkToTrainer + jp TextScriptEnd + +VictoryRoad2BattleText6: ; 518ba (14:58ba) + TX_FAR _VictoryRoad2BattleText6 + db $8 + ld a, MOLTRES + call PlayCry + call WaitForSoundToFinish + jp TextScriptEnd + +VictoryRoad2BattleText1: ; 518ca (14:58ca) + TX_FAR _VictoryRoad2BattleText1 + db "@" + +VictoryRoad2EndBattleText1: ; 518cf (14:58cf) + TX_FAR _VictoryRoad2EndBattleText1 + db "@" + +VictoryRoad2AfterBattleText1: ; 518d4 (14:58d4) + TX_FAR _VictoryRoad2AfterBattleText1 + db "@" + +VictoryRoad2BattleText2: ; 518d9 (14:58d9) + TX_FAR _VictoryRoad2BattleText2 + db "@" + +VictoryRoad2EndBattleText2: ; 518de (14:58de) + TX_FAR _VictoryRoad2EndBattleText2 + db "@" + +VictoryRoad2AfterBattleText2: ; 518e3 (14:58e3) + TX_FAR _VictoryRoad2AfterBattleText2 + db "@" + +VictoryRoad2BattleText3: ; 518e8 (14:58e8) + TX_FAR _VictoryRoad2BattleText3 + db "@" + +VictoryRoad2EndBattleText3: ; 518ed (14:58ed) + TX_FAR _VictoryRoad2EndBattleText3 + db "@" + +VictoryRoad2AfterBattleText3: ; 518f2 (14:58f2) + TX_FAR _VictoryRoad2AfterBattleText3 + db "@" + +VictoryRoad2BattleText4: ; 518f7 (14:58f7) + TX_FAR _VictoryRoad2BattleText4 + db "@" + +VictoryRoad2EndBattleText4: ; 518fc (14:58fc) + TX_FAR _VictoryRoad2EndBattleText4 + db "@" + +VictoryRoad2AfterBattleText4: ; 51901 (14:5901) + TX_FAR _VictoryRoad2AfterBattleText4 + db "@" + +VictoryRoad2BattleText5: ; 51906 (14:5906) + TX_FAR _VictoryRoad2BattleText5 + db "@" + +VictoryRoad2EndBattleText5: ; 5190b (14:590b) + TX_FAR _VictoryRoad2EndBattleText5 + db "@" + +VictoryRoad2AfterBattleText5: ; 51910 (14:5910) + TX_FAR _VictoryRoad2AfterBattleText5 + db "@" diff --git a/scripts/victoryroad3.asm b/scripts/victoryroad3.asm new file mode 100755 index 00000000..f2e08ca4 --- /dev/null +++ b/scripts/victoryroad3.asm @@ -0,0 +1,205 @@ +VictoryRoad3Script: ; 44980 (11:4980) + call VictoryRoad3Script_44996 + call EnableAutoTextBoxDrawing + ld hl, VictoryRoad3TrainerHeaders + ld de, VictoryRoad3ScriptPointers + ld a, [W_VICTORYROAD3CURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_VICTORYROAD3CURSCRIPT], a + ret + +VictoryRoad3Script_44996: ; 44996 (11:4996) + ld hl, $d126 + bit 5, [hl] + res 5, [hl] + ret z + ld hl, $d813 + bit 0, [hl] + ret z + ld a, $1d + ld [$d09f], a + ld bc, $503 + ld a, $17 + jp Predef ; indirect jump to Func_ee9e (ee9e (3:6e9e)) + +VictoryRoad3ScriptPointers: ; 449b1 (11:49b1) + dw VictoryRoad3Script0 + dw Func_324c + dw EndTrainerBattle + +VictoryRoad3Script0: ; 449b7 (11:49b7) + ld hl, wFlags_0xcd60 + bit 7, [hl] + res 7, [hl] + jp z, .asm_449fe + ld hl, .coordsData_449f9 ; $49f9 + call CheckBoulderCoords + jp nc, .asm_449fe + ld a, [wWhichTrade] ; $cd3d + cp $1 + jr nz, .asm_449dc + ld hl, $d126 + set 5, [hl] + ld hl, $d813 + set 0, [hl] + ret +.asm_449dc + ld hl, $d813 + bit 6, [hl] + set 6, [hl] + jr nz, .asm_449fe + ld a, $7a + ld [$cc4d], a + ld a, $11 + call Predef ; indirect jump to RemoveMissableObject (f1d7 (3:71d7)) + ld a, $60 + ld [$cc4d], a + ld a, $15 + jp Predef ; indirect jump to AddMissableObject (f1c8 (3:71c8)) + +.coordsData_449f9: ; 449f9 (11:49f9) + db $05,$03 + db $0F,$17 + db $FF + +.asm_449fe + ld a, $c2 + ld [$d71d], a + ld hl, .coordsData_449f9 ; $49f9 + call Func_46981 + ld a, [wWhichTrade] ; $cd3d + cp $1 + jr nz, .asm_44a1b + ld hl, $d72d + res 4, [hl] + ld hl, $d732 + res 4, [hl] + ret +.asm_44a1b + ld a, [$d72d] + bit 4, a + jp z, CheckFightingMapTrainers + ret + +VictoryRoad3TextPointers: ; 44a24 (11:4a24) + dw VictoryRoad3Text1 + dw VictoryRoad3Text2 + dw VictoryRoad3Text3 + dw VictoryRoad3Text4 + dw Predef5CText + dw Predef5CText + dw BoulderText + dw BoulderText + dw BoulderText + dw BoulderText + +VictoryRoad3TrainerHeaders: ; 44a38 (11:4a38) +VictoryRoad3TrainerHeader0: ; 44a38 (11:4a38) + db $1 ; flag's bit + db ($1 << 4) ; trainer's view range + dw $d813 ; flag's byte + dw VictoryRoad3BattleText2 ; 0x4a91 TextBeforeBattle + dw VictoryRoad3AfterBattleText2 ; 0x4a9b TextAfterBattle + dw VictoryRoad3EndBattleText2 ; 0x4a96 TextEndBattle + dw VictoryRoad3EndBattleText2 ; 0x4a96 TextEndBattle + +VictoryRoad3TrainerHeader2: ; 44a44 (11:4a44) + db $2 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d813 ; flag's byte + dw VictoryRoad3BattleText3 ; 0x4aa0 TextBeforeBattle + dw VictoryRoad3AfterBattleText3 ; 0x4aaa TextAfterBattle + dw VictoryRoad3EndBattleText3 ; 0x4aa5 TextEndBattle + dw VictoryRoad3EndBattleText3 ; 0x4aa5 TextEndBattle + +VictoryRoad3TrainerHeader3: ; 44a50 (11:4a50) + db $3 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d813 ; flag's byte + dw VictoryRoad3BattleText4 ; 0x4aaf TextBeforeBattle + dw VictoryRoad3AfterBattleText4 ; 0x4ab9 TextAfterBattle + dw VictoryRoad3EndBattleText4 ; 0x4ab4 TextEndBattle + dw VictoryRoad3EndBattleText4 ; 0x4ab4 TextEndBattle + +VictoryRoad3TrainerHeader4: ; 44a5c (11:4a5c) + db $4 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d813 ; flag's byte + dw VictoryRoad3BattleText5 ; 0x4abe TextBeforeBattle + dw VictoryRoad3AfterBattleText5 ; 0x4ac8 TextAfterBattle + dw VictoryRoad3EndBattleText5 ; 0x4ac3 TextEndBattle + dw VictoryRoad3EndBattleText5 ; 0x4ac3 TextEndBattle + + db $ff + +VictoryRoad3Text1: ; 44a69 (11:4a69) + db $08 ; asm + ld hl, VictoryRoad3TrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +VictoryRoad3Text2: ; 44a73 (11:4a73) + db $08 ; asm + ld hl, VictoryRoad3TrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +VictoryRoad3Text3: ; 44a7d (11:4a7d) + db $08 ; asm + ld hl, VictoryRoad3TrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +VictoryRoad3Text4: ; 44a87 (11:4a87) + db $08 ; asm + ld hl, VictoryRoad3TrainerHeader4 + call TalkToTrainer + jp TextScriptEnd + +VictoryRoad3BattleText2: ; 44a91 (11:4a91) + TX_FAR _VictoryRoad3BattleText2 + db "@" + +VictoryRoad3EndBattleText2: ; 44a96 (11:4a96) + TX_FAR _VictoryRoad3EndBattleText2 + db "@" + +VictoryRoad3AfterBattleText2: ; 44a9b (11:4a9b) + TX_FAR _VictoryRoad3AfterBattleText2 + db "@" + +VictoryRoad3BattleText3: ; 44aa0 (11:4aa0) + TX_FAR _VictoryRoad3BattleText3 + db "@" + +VictoryRoad3EndBattleText3: ; 44aa5 (11:4aa5) + TX_FAR _VictoryRoad3EndBattleText3 + db "@" + +VictoryRoad3AfterBattleText3: ; 44aaa (11:4aaa) + TX_FAR _VictoryRoad3AfterBattleText3 + db "@" + +VictoryRoad3BattleText4: ; 44aaf (11:4aaf) + TX_FAR _VictoryRoad3BattleText4 + db "@" + +VictoryRoad3EndBattleText4: ; 44ab4 (11:4ab4) + TX_FAR _VictoryRoad3EndBattleText4 + db "@" + +VictoryRoad3AfterBattleText4: ; 44ab9 (11:4ab9) + TX_FAR _VictoryRoad3AfterBattleText4 + db "@" + +VictoryRoad3BattleText5: ; 44abe (11:4abe) + TX_FAR _VictoryRoad3BattleText5 + db "@" + +VictoryRoad3EndBattleText5: ; 44ac3 (11:4ac3) + TX_FAR _VictoryRoad3EndBattleText5 + db "@" + +VictoryRoad3AfterBattleText5: ; 44ac8 (11:4ac8) + TX_FAR _VictoryRoad3AfterBattleText5 + db "@" diff --git a/scripts/viridiancity.asm b/scripts/viridiancity.asm new file mode 100755 index 00000000..4bb04ba7 --- /dev/null +++ b/scripts/viridiancity.asm @@ -0,0 +1,333 @@ +ViridianCityScript: ; 18ff1 (6:4ff1) + call EnableAutoTextBoxDrawing + ld hl, ViridianCityScriptPointers + ld a, [W_VIRIDIANCITYCURSCRIPT] + jp CallFunctionInTable + +ViridianCityScriptPointers: ; 18ffd (6:4ffd) + dw ViridianCityScript0 + dw ViridianCityScript1 + dw ViridianCityScript2 + dw ViridianCityScript3 + +ViridianCityScript0: ; 19005 (6:5005) + call ViridianCityScript_1900b + jp ViridianCityScript_1903d + +ViridianCityScript_1900b: ; 1900b (6:500b) + ld a, [$d74c] + bit 0, a + ret nz + ld a, [W_OBTAINEDBADGES] + cp %01111111 + jr nz, .asm_1901e ; 0x19016 $6 + ld hl, $d74c + set 0, [hl] + ret +.asm_1901e + ld a, [W_YCOORD] + cp $8 + ret nz + ld a, [W_XCOORD] + cp $20 + ret nz + ld a, $e + ld [$ff8c], a + call DisplayTextID + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + call ViridianCityScript_190cf + ld a, $3 + ld [W_VIRIDIANCITYCURSCRIPT], a + ret + +ViridianCityScript_1903d: ; 1903d (6:503d) + ld a, [$d74b] + bit 5, a + ret nz + ld a, [W_YCOORD] + cp $9 + ret nz + ld a, [W_XCOORD] + cp $13 + ret nz + ld a, $5 + ld [$ff8c], a + call DisplayTextID + xor a + ld [H_CURRENTPRESSEDBUTTONS], a + call ViridianCityScript_190cf + ld a, $3 + ld [W_VIRIDIANCITYCURSCRIPT], a + ret + +ViridianCityScript1: ; 19062 (6:5062) + ld a, [$c134] + ld [$ffeb], a + ld a, [$c136] + ld [$ffec], a + ld a, [$c234] + ld [$ffed], a + ld a, [$c235] + ld [$ffee], a + xor a + ld [wListScrollOffset], a + + ; set up battle for Old Man + ld a, $1 + ld [W_BATTLETYPE], a + ld a, 5 + ld [W_CURENEMYLVL], a + ld a, WEEDLE + ld [W_CUROPPONENT], a + ld a, $2 + ld [W_VIRIDIANCITYCURSCRIPT], a + ret + +ViridianCityScript2: ; 1908f (6:508f) + ld a, [$ffeb] + ld [$c134], a + ld a, [$ffec] + ld [$c136], a + ld a, [$ffed] + ld [$c234], a + ld a, [$ffee] + ld [$c235], a + call UpdateSprites + call Delay3 + xor a + ld [wJoypadForbiddenButtonsMask], a + ld a, $f + ld [$ff8c], a + call DisplayTextID + xor a + ld [W_BATTLETYPE], a + ld [wJoypadForbiddenButtonsMask], a + ld a, $0 + ld [W_VIRIDIANCITYCURSCRIPT], a + ret + +ViridianCityScript3: ; 190c1 (6:50c1) + ld a, [$cd38] + and a + ret nz + call Delay3 + ld a, 0 + ld [W_VIRIDIANCITYCURSCRIPT], a + ret + +ViridianCityScript_190cf: ; 190cf (6:50cf) + call Func_3486 + ld a, $1 + ld [$cd38], a + ld a, $80 + ld [$ccd3], a + xor a + ld [$c109], a + ld [wJoypadForbiddenButtonsMask], a + ret + +ViridianCityTextPointers: ; 190e4 (6:50e4) + dw ViridianCityText1 + dw ViridianCityText2 + dw ViridianCityText3 + dw ViridianCityText4 + dw ViridianCityText5 + dw ViridianCityText6 + dw ViridianCityText7 + dw ViridianCityText8 + dw ViridianCityText9 + dw ViridianCityText10 + dw MartSignText + dw PokeCenterSignText + dw ViridianCityText13 + dw ViridianCityText14 + dw ViridianCityText15 + +ViridianCityText1: ; 19102 (6:5102) + TX_FAR _ViridianCityText1 + db "@" + +ViridianCityText2: ; 19107 (6:5107) + db $08 ; asm + ld a, [W_OBTAINEDBADGES] + cp %01111111 + ld hl, ViridianCityText_19127 + jr z, .asm_ae9fe ; 0x19110 + ld a, [$d751] + bit 1, a + jr nz, .asm_ae9fe ; 0x19117 + ld hl, ViridianCityText_19122 +.asm_ae9fe ; 0x1911c + call PrintText + jp TextScriptEnd + +ViridianCityText_19122: ; 19122 (6:5122) + TX_FAR _ViridianCityText_19122 + db "@" + +ViridianCityText_19127: ; 19127 (6:5127) + TX_FAR _ViridianCityText_19127 + db "@" + +ViridianCityText3: ; 1912c (6:512c) + db $08 ; asm + ld hl, ViridianCityText_1914d + call PrintText + call YesNoChoice + ld a, [$cc26] + and a + jr nz, .asm_6dfea ; 0x1913a + ld hl, ViridianCityText_19157 + call PrintText + jr .asm_d611f ; 0x19142 +.asm_6dfea ; 0x19144 + ld hl, ViridianCityText_19152 + call PrintText +.asm_d611f ; 0x1914a + jp TextScriptEnd + +ViridianCityText_1914d: ; 1914d (6:514d) + TX_FAR _ViridianCityText_1914d + db "@" + +ViridianCityText_19152: ; 19152 (6:5152) + TX_FAR _ViridianCityText_19152 + db "@" + +ViridianCityText_19157: ; 19157 (6:5157) + TX_FAR _ViridianCityText_19157 + db "@" + +ViridianCityText4: ; 1915c (6:515c) + db $08 ; asm + ld a, [$d74b] + bit 5, a + jr nz, .asm_83894 ; 0x19162 + ld hl, ViridianCityText_19175 + call PrintText + jr .asm_700a6 ; 0x1916a +.asm_83894 ; 0x1916c + ld hl, ViridianCityText_1917a + call PrintText +.asm_700a6 ; 0x19172 + jp TextScriptEnd + +ViridianCityText_19175: ; 19175 (6:5175) + TX_FAR _ViridianCityText_19175 + db "@" + +ViridianCityText_1917a: ; 1917a (6:517a) + TX_FAR _ViridianCityText_1917a + db "@" + +ViridianCityText5: ; 1917f (6:517f) + db $08 ; asm + ld hl, ViridianCityText_19191 + call PrintText + call ViridianCityScript_190cf + ld a, $3 + ld [W_VIRIDIANCITYCURSCRIPT], a + jp TextScriptEnd + +ViridianCityText_19191: ; 19191 (6:5191) + TX_FAR _ViridianCityText_19191 + db "@" + +ViridianCityText6: ; 19196 (6:5196) + db $08 ; asm + ld a, [$d74c] + bit 1, a + jr nz, .asm_4e5a0 ; 0x1919c + ld hl, ViridianCityText_191ca + call PrintText + ld bc, (TM_42 << 8) | 1 + call GiveItem + jr nc, .BagFull + ld hl, ReceivedTM42Text + call PrintText + ld hl, $d74c + set 1, [hl] + jr .asm_3c73c ; 0x191b7 +.BagFull + ld hl, TM42NoRoomText + call PrintText + jr .asm_3c73c ; 0x191bf +.asm_4e5a0 ; 0x191c1 + ld hl, TM42Explanation + call PrintText +.asm_3c73c ; 0x191c7 + jp TextScriptEnd + +ViridianCityText_191ca: ; 191ca (6:51ca) + TX_FAR _ViridianCityText_191ca + db "@" + +ReceivedTM42Text: ; 191cf (6:51cf) + TX_FAR _ReceivedTM42Text + db $10, "@" + +TM42Explanation: ; 191d5 (6:51d5) + TX_FAR _TM42Explanation + db "@" + +TM42NoRoomText: ; 191da (6:51da) + TX_FAR _TM42NoRoomText + db "@" + +ViridianCityText7: ; 191df (6:51df) + db $08 ; asm + ld hl, ViridianCityText_1920a + call PrintText + ld c, $2 + call DelayFrames + call YesNoChoice + ld a, [$cc26] + and a + jr z, .asm_42f68 ; 0x191f2 + ld hl, ViridianCityText_1920f + call PrintText + ld a, $1 + ld [W_VIRIDIANCITYCURSCRIPT], a + jr .asm_2413a ; 0x191ff +.asm_42f68 ; 0x19201 + ld hl, ViridianCityText_19214 + call PrintText +.asm_2413a ; 0x19207 + jp TextScriptEnd + +ViridianCityText_1920a: ; 1920a (6:520a) + TX_FAR _ViridianCityText_1920a + db "@" + +ViridianCityText_1920f: ; 1920f (6:520f) + TX_FAR _ViridianCityText_1920f + db "@" + +ViridianCityText_19214: ; 19214 (6:5214) + TX_FAR _ViridianCityText_19214 + db "@" + +ViridianCityText15: ; 19219 (6:5219) + TX_FAR _ViridianCityText_19219 + db "@" + +ViridianCityText8: ; 1921e (6:521e) + TX_FAR _ViridianCityText8 + db "@" + +ViridianCityText9: ; 19223 (6:5223) + TX_FAR _ViridianCityText9 + db "@" + +ViridianCityText10: ; 19228 (6:5228) + TX_FAR _ViridianCityText10 + db "@" + +ViridianCityText13: ; 1922d (6:522d) + TX_FAR _ViridianCityText13 + db "@" + +ViridianCityText14: ; 19232 (6:5232) + TX_FAR _ViridianCityText14 + db "@" diff --git a/scripts/viridianforest.asm b/scripts/viridianforest.asm new file mode 100755 index 00000000..4e55733b --- /dev/null +++ b/scripts/viridianforest.asm @@ -0,0 +1,145 @@ +ViridianForestScript: ; 6110d (18:510d) + call EnableAutoTextBoxDrawing + ld hl, ViridianForestTrainerHeaders + ld de, ViridianForestScriptPointers + ld a, [W_VIRIDIANFORESTCURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_VIRIDIANFORESTCURSCRIPT], a + ret + +ViridianForestScriptPointers: ; 61120 (18:5120) + dw CheckFightingMapTrainers + dw Func_324c + dw EndTrainerBattle + +ViridianForestTextPointers: ; 61126 (18:5126) + dw ViridianForestText1 + dw ViridianForestText2 + dw ViridianForestText3 + dw ViridianForestText4 + dw Predef5CText + dw Predef5CText + dw Predef5CText + dw ViridianForestText8 + dw ViridianForestText9 + dw ViridianForestText10 + dw ViridianForestText11 + dw ViridianForestText12 + dw ViridianForestText13 + dw ViridianForestText14 + +ViridianForestTrainerHeaders: ; 61142 (18:5142) +ViridianForestTrainerHeader0: ; 61142 (18:5142) + db $2 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7f3 ; flag's byte + dw ViridianForestBattleText1 ; 0x518a TextBeforeBattle + dw ViridianForestAfterBattleText1 ; 0x5194 TextAfterBattle + dw ViridianForestEndBattleText1 ; 0x518f TextEndBattle + dw ViridianForestEndBattleText1 ; 0x518f TextEndBattle + +ViridianForestTrainerHeader1: ; 6114e (18:514e) + db $3 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d7f3 ; flag's byte + dw ViridianForestBattleText2 ; 0x5199 TextBeforeBattle + dw ViridianForestAfterBattleText2 ; 0x51a3 TextAfterBattle + dw ViridianForestEndBattleText2 ; 0x519e TextEndBattle + dw ViridianForestEndBattleText2 ; 0x519e TextEndBattle + +ViridianForestTrainerHeader2: ; 6115a (18:515a) + db $4 ; flag's bit + db ($1 << 4) ; trainer's view range + dw $d7f3 ; flag's byte + dw ViridianForestBattleText3 ; 0x51a8 TextBeforeBattle + dw ViridianForestAfterBattleText3 ; 0x51b2 TextAfterBattle + dw ViridianForestEndBattleText3 ; 0x51ad TextEndBattle + dw ViridianForestEndBattleText3 ; 0x51ad TextEndBattle + + db $ff + +ViridianForestText1: ; 61167 (18:5167) + TX_FAR _ViridianForestText1 + db "@" + +ViridianForestText2: ; 6116c (18:516c) + db $08 ; asm + ld hl, ViridianForestTrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +ViridianForestText3: ; 61176 (18:5176) + db $08 ; asm + ld hl, ViridianForestTrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +ViridianForestText4: ; 61180 (18:5180) + db $08 ; asm + ld hl, ViridianForestTrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +ViridianForestBattleText1: ; 6118a (18:518a) + TX_FAR _ViridianForestBattleText1 + db "@" + +ViridianForestEndBattleText1: ; 6118f (18:518f) + TX_FAR _ViridianForestEndBattleText1 + db "@" + +ViridianForestAfterBattleText1: ; 61194 (18:5194) + TX_FAR _ViridianFrstAfterBattleText1 + db "@" + +ViridianForestBattleText2: ; 61199 (18:5199) + TX_FAR _ViridianForestBattleText2 + db "@" + +ViridianForestEndBattleText2: ; 6119e (18:519e) + TX_FAR _ViridianForestEndBattleText2 + db "@" + +ViridianForestAfterBattleText2: ; 611a3 (18:51a3) + TX_FAR _ViridianFrstAfterBattleText2 + db "@" + +ViridianForestBattleText3: ; 611a8 (18:51a8) + TX_FAR _ViridianForestBattleText3 + db "@" + +ViridianForestEndBattleText3: ; 611ad (18:51ad) + TX_FAR _ViridianForestEndBattleText3 + db "@" + +ViridianForestAfterBattleText3: ; 611b2 (18:51b2) + TX_FAR _ViridianFrstAfterBattleText3 + db "@" + +ViridianForestText8: ; 611b7 (18:51b7) + TX_FAR _ViridianForestText8 + db "@" + +ViridianForestText9: ; 611bc (18:51bc) + TX_FAR _ViridianForestText9 + db "@" + +ViridianForestText10: ; 611c1 (18:51c1) + TX_FAR _ViridianForestText10 + db "@" + +ViridianForestText11: ; 611c6 (18:51c6) + TX_FAR _ViridianForestText11 + db "@" + +ViridianForestText12: ; 611cb (18:51cb) + TX_FAR _ViridianForestText12 + db "@" + +ViridianForestText13: ; 611d0 (18:51d0) + TX_FAR _ViridianForestText13 + db "@" + +ViridianForestText14: ; 611d5 (18:51d5) + TX_FAR _ViridianForestText14 + db "@" diff --git a/scripts/viridianforestentrance.asm b/scripts/viridianforestentrance.asm new file mode 100755 index 00000000..14b6cf49 --- /dev/null +++ b/scripts/viridianforestentrance.asm @@ -0,0 +1,14 @@ +ViridianForestEntranceScript: ; 5d65c (17:565c) + jp EnableAutoTextBoxDrawing + +ViridianForestEntranceTextPointers: ; 5d65f (17:565f) + dw ViridianForestEntranceText1 + dw ViridianForestEntranceText2 + +ViridianForestEntranceText1: ; 5d663 (17:5663) + TX_FAR _ViridianForestEntranceText1 + db "@" + +ViridianForestEntranceText2: ; 5d668 (17:5668) + TX_FAR _ViridianForestEntranceText2 + db "@" diff --git a/scripts/viridianforestexit.asm b/scripts/viridianforestexit.asm new file mode 100755 index 00000000..0d4d4b29 --- /dev/null +++ b/scripts/viridianforestexit.asm @@ -0,0 +1,14 @@ +ViridianForestExitScript: ; 5d587 (17:5587) + jp EnableAutoTextBoxDrawing + +ViridianForestExitTextPointers: ; 5d58a (17:558a) + dw ViridianForestExitText1 + dw ViridianForestExitText2 + +ViridianForestExitText1: ; 5d58e (17:558e) + TX_FAR _ViridianForestExitText1 + db "@" + +ViridianForestExitText2: ; 5d593 (17:5593) + TX_FAR _ViridianForestExitText2 + db "@" diff --git a/scripts/viridiangym.asm b/scripts/viridiangym.asm new file mode 100755 index 00000000..0f042339 --- /dev/null +++ b/scripts/viridiangym.asm @@ -0,0 +1,514 @@ +ViridianGymScript: ; 748a3 (1d:48a3) + ld hl, Gym8CityName + ld de, Gym8LeaderName + call LoadGymLeaderAndCityName + call EnableAutoTextBoxDrawing + ld hl, ViridianGymTrainerHeaders + ld de, ViridianGymScriptPointers + ld a, [W_VIRIDIANGYMCURSCRIPT] + call ExecuteCurMapScriptInTable + ld [W_VIRIDIANGYMCURSCRIPT], a + ret + +Gym8CityName: ; 748bf (1d:48bf) + db "VIRIDIAN CITY@" +Gym8LeaderName: ; 748cd (1d:48cd) + db "GIOVANNI@" + +ViridianGymScript_748d6: ; 748d6 (1d:48d6) + xor a + ld [wJoypadForbiddenButtonsMask], a + ld [W_VIRIDIANGYMCURSCRIPT], a + ld [W_CURMAPSCRIPT], a + ret + +ViridianGymScriptPointers: ; 748e1 (1d:48e1) + dw ViridianGymScript0 + dw Func_324c + dw EndTrainerBattle + dw ViridianGymScript3 + dw ViridianGymScript4 + +ViridianGymScript0: ; 748eb (1d:48eb) + ld a, [W_YCOORD] ; $d361 + ld b, a + ld a, [W_XCOORD] ; $d362 + ld c, a + ld hl, ViridianGymArrowTilePlayerMovement + call Func_3442 + cp $ff + jp z, CheckFightingMapTrainers + call Func_3486 + ld hl, $d736 + set 7, [hl] + ld a, (SFX_02_52 - SFX_Headers_02) / 3 + call PlaySound + ld a, $ff + ld [wJoypadForbiddenButtonsMask], a + ld a, $4 + ld [W_CURMAPSCRIPT], a + ret + +;format: +;db y,x +;dw pointer to movement +ViridianGymArrowTilePlayerMovement: ; 74916 (1d:4916) + db $b,$13 + dw ViridianGymArrowMovement1 + db $1,$13 + dw ViridianGymArrowMovement2 + db $2,$12 + dw ViridianGymArrowMovement3 + db $2,$b + dw ViridianGymArrowMovement4 + db $a,$10 + dw ViridianGymArrowMovement5 + db $6,$4 + dw ViridianGymArrowMovement6 + db $d,$5 + dw ViridianGymArrowMovement7 + db $e,$4 + dw ViridianGymArrowMovement8 + db $f,$0 + dw ViridianGymArrowMovement9 + db $f,$1 + dw ViridianGymArrowMovement10 + db $10,$d + dw ViridianGymArrowMovement11 + db $11,$d + dw ViridianGymArrowMovement12 + db $FF + +;format: direction, count +;right: $10 +;left: $20 +;up: $40 +;down: $80 +ViridianGymArrowMovement1: ; 74947 (1d:4947) + db $40,$09,$FF + +ViridianGymArrowMovement2: ; 7494a (1d:494a) + db $20,$08,$FF + +ViridianGymArrowMovement3: ; 7494d (1d:494d) + db $80,$09,$FF + +ViridianGymArrowMovement4: ; 74950 (1d:4950) + db $10,$06,$FF + +ViridianGymArrowMovement5: ; 74953 (1d:4953) + db $80,$02,$FF + +ViridianGymArrowMovement6: ; 74956 (1d:4956) + db $80,$07,$FF + +ViridianGymArrowMovement7: ; 74959 (1d:4959) + db $10,$08,$FF + +ViridianGymArrowMovement8: ; 7495c (1d:495c) + db $10,$09,$FF + +ViridianGymArrowMovement9: ; 7495f (1d:495f) + db $40,$08,$FF + +ViridianGymArrowMovement10: ; 74962 (1d:4962) + db $40,$06,$FF + +ViridianGymArrowMovement11: ; 74965 (1d:4965) + db $20,$06,$FF + +ViridianGymArrowMovement12: ; 74968 (1d:4968) + db $20,$0C,$FF + +ViridianGymScript4: ; 7496b (1d:496b) + ld a, [$cd38] + and a + jr nz, .asm_74980 + xor a + ld [wJoypadForbiddenButtonsMask], a + ld hl, $d736 + res 7, [hl] + ld a, $0 + ld [W_CURMAPSCRIPT], a + ret +.asm_74980 + ld b, BANK(LoadSpinnerArrowTiles) + ld hl, LoadSpinnerArrowTiles + jp Bankswitch + +ViridianGymScript3: ; 74988 (1d:4988) + ld a, [W_ISINBATTLE] ; $d057 + cp $ff + jp z, ViridianGymScript_748d6 + ld a, $f0 + ld [wJoypadForbiddenButtonsMask], a +ViridianGymScript3_74995: ; 74995 (1d:4995) + ld a, $c + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + ld hl, $d751 + set 1, [hl] + ld bc, (TM_27 << 8) | 1 + call GiveItem + jr nc, .BagFull + ld a, $d + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID + ld hl, $d751 + set 0, [hl] + jr .asm_749be +.BagFull + ld a, $e + ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + call DisplayTextID +.asm_749be + ld hl, W_OBTAINEDBADGES + set 7, [hl] + ld hl, $d72a + set 7, [hl] + + ; deactivate gym trainers + ld a, [$d751] + or %11111100 + ld [$d751], a + ld a, [$d752] + or %00000011 + ld [$d752], a + + ld a, $23 + ld [$cc4d], a + ld a, $15 + call Predef ; indirect jump to AddMissableObject (f1c8 (3:71c8)) + ld hl, $d7eb + set 1, [hl] + set 7, [hl] + jp ViridianGymScript_748d6 + +ViridianGymTextPointers: ; 749ec (1d:49ec) + dw ViridianGymText1 + dw ViridianGymText2 + dw ViridianGymText3 + dw ViridianGymText4 + dw ViridianGymText5 + dw ViridianGymText6 + dw ViridianGymText7 + dw ViridianGymText8 + dw ViridianGymText9 + dw ViridianGymText10 + dw Predef5CText + dw ViridianGymText12 + dw ViridianGymText13 + dw ViridianGymText14 + +ViridianGymTrainerHeaders: ; 74a08 (1d:4a08) +ViridianGymTrainerHeader0: ; 74a08 (1d:4a08) + db $2 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d751 ; flag's byte + dw ViridianGymBattleText1 ; 0x4afd TextBeforeBattle + dw ViridianGymAfterBattleText1 ; 0x4b07 TextAfterBattle + dw ViridianGymEndBattleText1 ; 0x4b02 TextEndBattle + dw ViridianGymEndBattleText1 ; 0x4b02 TextEndBattle + +ViridianGymTrainerHeader1: ; 74a14 (1d:4a14) + db $3 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d751 ; flag's byte + dw ViridianGymBattleText2 ; 0x4b16 TextBeforeBattle + dw ViridianGymAfterBattleText2 ; 0x4b20 TextAfterBattle + dw ViridianGymEndBattleText2 ; 0x4b1b TextEndBattle + dw ViridianGymEndBattleText2 ; 0x4b1b TextEndBattle + +ViridianGymTrainerHeader2: ; 74a20 (1d:4a20) + db $4 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d751 ; flag's byte + dw ViridianGymBattleText3 ; 0x4b2f TextBeforeBattle + dw ViridianGymAfterBattleText3 ; 0x4b39 TextAfterBattle + dw ViridianGymEndBattleText3 ; 0x4b34 TextEndBattle + dw ViridianGymEndBattleText3 ; 0x4b34 TextEndBattle + +ViridianGymTrainerHeader3: ; 74a2c (1d:4a2c) + db $5 ; flag's bit + db ($2 << 4) ; trainer's view range + dw $d751 ; flag's byte + dw ViridianGymBattleText4 ; 0x4b48 TextBeforeBattle + dw ViridianGymAfterBattleText4 ; 0x4b52 TextAfterBattle + dw ViridianGymEndBattleText4 ; 0x4b4d TextEndBattle + dw ViridianGymEndBattleText4 ; 0x4b4d TextEndBattle + +ViridianGymTrainerHeader4: ; 74a38 (1d:4a38) + db $6 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d751 ; flag's byte + dw ViridianGymBattleText5 ; 0x4b61 TextBeforeBattle + dw ViridianGymAfterBattleText5 ; 0x4b6b TextAfterBattle + dw ViridianGymEndBattleText5 ; 0x4b66 TextEndBattle + dw ViridianGymEndBattleText5 ; 0x4b66 TextEndBattle + +ViridianGymTrainerHeader5: ; 74a44 (1d:4a44) + db $7 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d751 ; flag's byte + dw ViridianGymBattleText6 ; 0x4b7a TextBeforeBattle + dw ViridianGymAfterBattleText6 ; 0x4b84 TextAfterBattle + dw ViridianGymEndBattleText6 ; 0x4b7f TextEndBattle + dw ViridianGymEndBattleText6 ; 0x4b7f TextEndBattle + +ViridianGymTrainerHeader6: ; 74a50 (1d:4a50) + db $8 ; flag's bit + db ($3 << 4) ; trainer's view range + dw $d751 ; flag's byte + dw ViridianGymBattleText7 ; 0x4b93 TextBeforeBattle + dw ViridianGymAfterBattleText7 ; 0x4b9d TextAfterBattle + dw ViridianGymEndBattleText7 ; 0x4b98 TextEndBattle + dw ViridianGymEndBattleText7 ; 0x4b98 TextEndBattle + +ViridianGymTrainerHeader7: ; 74a5c (1d:4a5c) + db $9 ; flag's bit + db ($4 << 4) ; trainer's view range + dw $d751 ; flag's byte + dw ViridianGymBattleText8 ; 0x4bac TextBeforeBattle + dw ViridianGymAfterBattleText8 ; 0x4bb6 TextAfterBattle + dw ViridianGymEndBattleText8 ; 0x4bb1 TextEndBattle + dw ViridianGymEndBattleText8 ; 0x4bb1 TextEndBattle + + db $ff + +ViridianGymText1: ; 74a69 (1d:4a69) + db $08 ; asm + ld a, [$d751] + bit 1, a + jr z, .asm_6de66 ; 0x74a6f + bit 0, a + jr nz, .asm_9fc95 ; 0x74a73 + call z, ViridianGymScript3_74995 + call DisableWaitingAfterTextDisplay + jr .asm_6dff7 ; 0x74a7b +.asm_9fc95 ; 0x74a7d + ld a, $1 + ld [$cc3c], a + ld hl, ViridianGymText_74ad9 + call PrintText + call GBFadeIn1 + ld a, $32 + ld [$cc4d], a + ld a, $11 + call Predef + call UpdateSprites + call Delay3 + call GBFadeOut1 + jr .asm_6dff7 ; 0x74a9e +.asm_6de66 ; 0x74aa0 + ld hl, ViridianGymText_74ace + call PrintText + ld hl, $d72d + set 6, [hl] + set 7, [hl] + ld hl, ViridianGymText_74ad3 + ld de, ViridianGymText_74ad3 + call PreBattleSaveRegisters + ldh a, [$8c] + ld [$cf13], a + call EngageMapTrainer + call InitBattleEnemyParameters + ld a, $8 + ld [$d05c], a + ld a, $3 + ld [W_VIRIDIANGYMCURSCRIPT], a +.asm_6dff7 ; 0x74acb + jp TextScriptEnd + +ViridianGymText_74ace: ; 74ace (1d:4ace) + TX_FAR _ViridianGymText_74ace + db "@" + +ViridianGymText_74ad3: ; 74ad3 (1d:4ad3) + TX_FAR _ViridianGymText_74ad3 + db $0b, "@" + +ViridianGymText_74ad9: ; 74ad9 (1d:4ad9) + TX_FAR _ViridianGymText_74ad9 + db $0d, "@" + +ViridianGymText12: ; 74adf (1d:4adf) + TX_FAR _ViridianGymText12 + db "@" + +ViridianGymText13: ; 74ae4 (1d:4ae4) + TX_FAR _ReceivedTM27Text + db $0b + +TM27ExplanationText: ; 74ae9 (1d:4ae9) + TX_FAR _TM27ExplanationText + db "@" + +ViridianGymText14: ; 74aee (1d:4aee) + TX_FAR _TM27NoRoomText + db "@" + +ViridianGymText2: ; 74af3 (1d:4af3) + db $08 ; asm + ld hl, ViridianGymTrainerHeader0 + call TalkToTrainer + jp TextScriptEnd + +ViridianGymBattleText1: ; 74afd (1d:4afd) + TX_FAR _ViridianGymBattleText1 + db "@" + +ViridianGymEndBattleText1: ; 74b02 (1d:4b02) + TX_FAR _ViridianGymEndBattleText1 + db "@" + +ViridianGymAfterBattleText1: ; 74b07 (1d:4b07) + TX_FAR _ViridianGymAfterBattleText1 + db "@" + +ViridianGymText3: ; 74b0c (1d:4b0c) + db $08 ; asm + ld hl, ViridianGymTrainerHeader1 + call TalkToTrainer + jp TextScriptEnd + +ViridianGymBattleText2: ; 74b16 (1d:4b16) + TX_FAR _ViridianGymBattleText2 + db "@" + +ViridianGymEndBattleText2: ; 74b1b (1d:4b1b) + TX_FAR _ViridianGymEndBattleText2 + db "@" + +ViridianGymAfterBattleText2: ; 74b20 (1d:4b20) + TX_FAR _ViridianGymAfterBattleText2 + db "@" + +ViridianGymText4: ; 74b25 (1d:4b25) + db $08 ; asm + ld hl, ViridianGymTrainerHeader2 + call TalkToTrainer + jp TextScriptEnd + +ViridianGymBattleText3: ; 74b2f (1d:4b2f) + TX_FAR _ViridianGymBattleText3 + db "@" + +ViridianGymEndBattleText3: ; 74b34 (1d:4b34) + TX_FAR _ViridianGymEndBattleText3 + db "@" + +ViridianGymAfterBattleText3: ; 74b39 (1d:4b39) + TX_FAR _ViridianGymAfterBattleText3 + db "@" + +ViridianGymText5: ; 74b3e (1d:4b3e) + db $08 ; asm + ld hl, ViridianGymTrainerHeader3 + call TalkToTrainer + jp TextScriptEnd + +ViridianGymBattleText4: ; 74b48 (1d:4b48) + TX_FAR _ViridianGymBattleText4 + db "@" + +ViridianGymEndBattleText4: ; 74b4d (1d:4b4d) + TX_FAR _ViridianGymEndBattleText4 + db "@" + +ViridianGymAfterBattleText4: ; 74b52 (1d:4b52) + TX_FAR _ViridianGymAfterBattleText4 + db "@" + +ViridianGymText6: ; 74b57 (1d:4b57) + db $08 ; asm + ld hl, ViridianGymTrainerHeader4 + call TalkToTrainer + jp TextScriptEnd + +ViridianGymBattleText5: ; 74b61 (1d:4b61) + TX_FAR _ViridianGymBattleText5 + db "@" + +ViridianGymEndBattleText5: ; 74b66 (1d:4b66) + TX_FAR _ViridianGymEndBattleText5 + db "@" + +ViridianGymAfterBattleText5: ; 74b6b (1d:4b6b) + TX_FAR _ViridianGymAfterBattleText5 + db "@" + +ViridianGymText7: ; 74b70 (1d:4b70) + db $08 ; asm + ld hl, ViridianGymTrainerHeader5 + call TalkToTrainer + jp TextScriptEnd + +ViridianGymBattleText6: ; 74b7a (1d:4b7a) + TX_FAR _ViridianGymBattleText6 + db "@" + +ViridianGymEndBattleText6: ; 74b7f (1d:4b7f) + TX_FAR _ViridianGymEndBattleText6 + db "@" + +ViridianGymAfterBattleText6: ; 74b84 (1d:4b84) + TX_FAR _ViridianGymAfterBattleText6 + db "@" + +ViridianGymText8: ; 74b89 (1d:4b89) + db $08 ; asm + ld hl, ViridianGymTrainerHeader6 + call TalkToTrainer + jp TextScriptEnd + +ViridianGymBattleText7: ; 74b93 (1d:4b93) + TX_FAR _ViridianGymBattleText7 + db "@" + +ViridianGymEndBattleText7: ; 74b98 (1d:4b98) + TX_FAR _ViridianGymEndBattleText7 + db "@" + +ViridianGymAfterBattleText7: ; 74b9d (1d:4b9d) + TX_FAR _ViridianGymAfterBattleText7 + db "@" + +ViridianGymText9: ; 74ba2 (1d:4ba2) + db $08 ; asm + ld hl, ViridianGymTrainerHeader7 + call TalkToTrainer + jp TextScriptEnd + +ViridianGymBattleText8: ; 74bac (1d:4bac) + TX_FAR _ViridianGymBattleText8 + db "@" + +ViridianGymEndBattleText8: ; 74bb1 (1d:4bb1) + TX_FAR _ViridianGymEndBattleText8 + db "@" + +ViridianGymAfterBattleText8: ; 74bb6 (1d:4bb6) + TX_FAR _ViridianGymAfterBattleText8 + db "@" + +ViridianGymText10: ; 74bbb (1d:4bbb) + db $08 ; asm + ld a, [$d751] + bit 1, a + jr nz, .asm_1abd1 ; 0x74bc1 + ld hl, ViridianGymText_74bd4 + call PrintText + jr .asm_6064d ; 0x74bc9 +.asm_1abd1 ; 0x74bcb + ld hl, ViridianGymText_74bd9 + call PrintText +.asm_6064d ; 0x74bd1 + jp TextScriptEnd + +ViridianGymText_74bd4: ; 74bd4 (1d:4bd4) + TX_FAR _ViridianGymText_74bd4 + db "@" + +ViridianGymText_74bd9: ; 74bd9 (1d:4bd9) + TX_FAR _ViridianGymText_74bd9 + db "@" diff --git a/scripts/viridianhouse.asm b/scripts/viridianhouse.asm new file mode 100755 index 00000000..ab8b6786 --- /dev/null +++ b/scripts/viridianhouse.asm @@ -0,0 +1,33 @@ +ViridianHouseScript: ; 1d58a (7:558a) + jp EnableAutoTextBoxDrawing + +ViridianHouseTextPointers: ; 1d58d (7:558d) + dw ViridianHouseText1 + dw ViridianHouseText2 + dw ViridianHouseText3 + dw ViridianHouseText4 + +ViridianHouseText1: ; 1d595 (7:5595) + TX_FAR _ViridianHouseText1 + db "@" + +ViridianHouseText2: ; 1d59a (7:559a) + TX_FAR _ViridianHouseText2 + db "@" + +ViridianHouseText3: ; 1d59f (7:559f) + db $08 ; asm + ld hl, ViridianHouseText_1d5b1 + call PrintText + ld a, SPEAROW + call PlayCry + call WaitForSoundToFinish + jp TextScriptEnd + +ViridianHouseText_1d5b1: ; 1d5b1 (7:55b1) + TX_FAR _ViridianHouseText_1d5b1 + db "@" + +ViridianHouseText4: ; 1d5b6 (7:55b6) + TX_FAR _ViridianHouseText4 + db "@" diff --git a/scripts/viridianmart.asm b/scripts/viridianmart.asm new file mode 100755 index 00000000..1c53a5a3 --- /dev/null +++ b/scripts/viridianmart.asm @@ -0,0 +1,95 @@ +ViridianMartScript: ; 1d46e (7:546e) + call ViridianMartScript_1d47d + call EnableAutoTextBoxDrawing + ld hl, ViridianMartScriptPointers + ld a, [W_VIRIDIANMARKETCURSCRIPT] + jp CallFunctionInTable + +ViridianMartScript_1d47d: ; 1d47d (7:547d) + ld a, [$d74e] + bit 0, a + jr nz, .asm_1d489 ; 0x1d482 $5 + ld hl, ViridianMartTextPointers ; $54e0 + jr .asm_1d48c ; 0x1d487 $3 +.asm_1d489 + ld hl, ViridianMartTextPointers + $a ; $54ea ; starts at ViridianMartText6 +.asm_1d48c + ld a, l + ld [W_MAPTEXTPTR], a + ld a, h + ld [W_MAPTEXTPTR+1], a + ret + +ViridianMartScriptPointers: ; 1d495 (7:5495) + dw ViridianMartScript0 + dw ViridianMartScript1 + dw ViridianMartScript2 + +ViridianMartScript0: ; 1d49b (7:549b) + call UpdateSprites + ld a, $4 + ld [$ff8c], a + call DisplayTextID + ld hl, $ccd3 + ld de, RLEMovement1d4bb + call DecodeRLEList + dec a + ld [$cd38], a + call Func_3486 + ld a, $1 + ld [W_VIRIDIANMARKETCURSCRIPT], a + ret + +RLEMovement1d4bb: ; 1d4bb (7:54bb) + db $20, $01 + db $40, $02 + db $ff + +ViridianMartScript1: ; 1d4c0 (7:54c0) + ld a, [$cd38] + and a + ret nz + call Delay3 + ld a, $5 + ld [$ff8c], a + call DisplayTextID + ld bc, (OAKS_PARCEL << 8) + 1 + call GiveItem + ld hl, $d74e + set 1, [hl] + ld a, $2 + ld [W_VIRIDIANMARKETCURSCRIPT], a + ; fallthrough +ViridianMartScript2: ; 1d4df (7:54df) + ret + +ViridianMartTextPointers: ; 1d4e0 (7:54e0) + dw ViridianMartText1 + dw ViridianMartText2 + dw ViridianMartText3 + dw ViridianMartText4 + dw ViridianMartText5 + dw ViridianMartText6 + dw ViridianMartText2 + dw ViridianMartText3 + +ViridianMartText1: ; 1d4f0 (7:54f0) + TX_FAR _ViridianMartText1 + db "@" + +ViridianMartText4: ; 1d4f5 (7:54f5) + TX_FAR _ViridianMartText4 + db "@" + +ViridianMartText5: ; 1d4fa (7:54fa) + TX_FAR ViridianMartParcelQuestText + db $11 + db "@" + +ViridianMartText2: ; 1d500 (7:5500) + TX_FAR _ViridianMartText2 + db "@" + +ViridianMartText3: ; 1d505 (7:5505) + TX_FAR _ViridianMartText3 + db "@" diff --git a/scripts/viridianpokecenter.asm b/scripts/viridianpokecenter.asm new file mode 100755 index 00000000..08371ce3 --- /dev/null +++ b/scripts/viridianpokecenter.asm @@ -0,0 +1,23 @@ +ViridianPokeCenterScript: ; 4425d (11:425d) + call Func_22fa + jp EnableAutoTextBoxDrawing + +ViridianPokecenterTextPointers: ; 44263 (11:4263) + dw ViridianPokeCenterText1 + dw ViridianPokeCenterText2 + dw ViridianPokeCenterText3 + dw ViridianPokeCenterText4 + +ViridianPokeCenterText1: ; 4426b (11:426b) + db $ff + +ViridianPokeCenterText2: ; 4426c (11:426c) + TX_FAR _ViridianPokeCenterText1 + db "@" + +ViridianPokeCenterText3: ; 44271 (11:4271) + TX_FAR _ViridianPokeCenterText3 + db "@" + +ViridianPokeCenterText4: ; 44276 (11:4276) + db $f6 @@ -34,29 +34,29 @@ _CardKeyFailText:: ; 80029 (20:4029) line "CARD KEY!" done -_UnnamedText_33cf:: ; 80045 (20:4045) +_TrainerNameText:: ; 80045 (20:4045) TX_RAM $cd6d text ": @@" -_UnnamedText_70847:: ; 8004d (20:404d) +_NoNibbleText:: ; 8004d (20:404d) text "Not even a nibble!" prompt -_UnnamedText_7084c:: ; 80061 (20:4061) +_NothingHereText:: ; 80061 (20:4061) text "Looks like there's" line "nothing here." prompt -_UnnamedText_70851:: ; 80082 (20:4082) +_ItsABiteText:: ; 80082 (20:4082) text "Oh!" line "It's a bite!" prompt -_UnnamedText_24db:: ; 80093 (20:4093) +_ExclamationText:: ; 80093 (20:4093) text "!" done -_UnnamedText_24e0:: ; 80096 (20:4096) +_GroundRoseText:: ; 80096 (20:4096) text "Ground rose up" line "somewhere!" done @@ -88,7 +88,7 @@ _NoMoreRoomForItemText:: ; 8012a (20:412a) line "items!" done -_UnnamedText_59091:: ; 80143 (20:4143) +_OaksAideHiText:: ; 80143 (20:4143) text "Hi! Remember me?" line "I'm PROF.OAK's" cont "AIDE!" @@ -111,7 +111,7 @@ _UnnamedText_59091:: ; 80143 (20:4143) cont "#MON?" done -_UnnamedText_59096:: ; 801e4 (20:41e4) +_OaksAideUhOhText:: ; 801e4 (20:41e4) text "Let's see..." line "Uh-oh! You have" cont "caught only @" @@ -128,7 +128,7 @@ _UnnamedText_59096:: ; 801e4 (20:41e4) text "." done -_UnnamedText_5909b:: ; 80250 (20:4250) +_OaksAideComeBackText:: ; 80250 (20:4250) text "Oh. I see." para "When you get @" @@ -140,7 +140,7 @@ _UnnamedText_5909b:: ; 80250 (20:4250) text "." done -_UnnamedText_590a0:: ; 8028c (20:428c) +_OaksAideHereYouGoText:: ; 8028c (20:428c) text "Great! You have" line "caught @" TX_NUM $ffdd, 1, 3 @@ -151,13 +151,13 @@ _UnnamedText_590a0:: ; 8028c (20:428c) para "Here you go!" prompt -_UnnamedText_590a5:: ; 802d9 (20:42d9) +_OaksAideGotItemText:: ; 802d9 (20:42d9) text $52, " got the" line "@" TX_RAM $cc5b text "!@@" -_UnnamedText_590ab:: ; 802ec (20:42ec) +_OaksAideNoRoomText:: ; 802ec (20:42ec) text "Oh! I see you" line "don't have any" cont "room for the" @@ -254,7 +254,7 @@ _AIBattleUseItemText:: ; 880d5 (22:40d5) text "!" prompt -_UnnamedText_4160c:: ; 880ef (22:40ef) +_TradeWentToText:: ; 880ef (22:40ef) TX_RAM $cf4b text " went" line "to @" @@ -262,14 +262,14 @@ _UnnamedText_4160c:: ; 880ef (22:40ef) text "." done -_UnnamedText_41623:: ; 88103 (22:4103) +_TradeForText:: ; 88103 (22:4103) text "For ", $52, "'s" line "@" TX_RAM $cf4b text "," done -_UnnamedText_41628:: ; 88112 (22:4112) +_TradeSendsText:: ; 88112 (22:4112) TX_RAM $d887 text " sends" line "@" @@ -277,26 +277,26 @@ _UnnamedText_41628:: ; 88112 (22:4112) text "." done -_UnnamedText_41642:: ; 88124 (22:4124) +_TradeWavesFarewellText:: ; 88124 (22:4124) TX_RAM $d887 text " waves" line "farewell as" done -_UnnamedText_41647:: ; 8813b (22:413b) +_TradeTransferredText:: ; 8813b (22:413b) TX_RAM $cd6d text " is" line "transferred." done -_UnnamedText_41655:: ; 88150 (22:4150) +_TradeTakeCareText:: ; 88150 (22:4150) text "Take good care of" line "@" TX_RAM $cd6d text "." done -_UnnamedText_4166c:: ; 8816a (22:416a) +_TradeWillTradeText:: ; 8816a (22:416a) TX_RAM $d887 text " will" line "trade @" @@ -304,7 +304,7 @@ _UnnamedText_4166c:: ; 8816a (22:416a) db $0 done -_UnnamedText_41671:: ; 88180 (22:4180) +_TradeforText:: ; 88180 (22:4180) text "for ", $52, "'s" line "@" TX_RAM $cf4b @@ -340,21 +340,21 @@ _OneMoreGoSlotMachineText:: ; 881f7 (22:41f7) line "go?" done -_UnnamedText_37673:: ; 88206 (22:4206) +_LinedUpText:: ; 88206 (22:4206) text " lined up!" line "Scored @" TX_RAM $cf4b text " coins!" done -_UnnamedText_3769d:: ; 88226 (22:4226) +_NotThisTimeText:: ; 88226 (22:4226) text "Not this time!" prompt -_UnnamedText_37722:: ; 88236 (22:4236) +_YeahText:: ; 88236 (22:4236) text "Yeah!@@" -_UnnamedText_703fa:: ; 8823e (22:423e) +_DexSeenOwnedText:: ; 8823e (22:423e) text "#DEX Seen:@" TX_NUM $cc5b, 1, 3 db $0 @@ -362,7 +362,7 @@ _UnnamedText_703fa:: ; 8823e (22:423e) TX_NUM $cc5c, 1, 3 db "@" -_UnnamedText_703ff:: ; 88267 (22:4267) +_DexRatingText:: ; 88267 (22:4267) text "#DEX Rating", $6d done @@ -525,31 +525,31 @@ _NewBicycleText:: ; 886e6 (22:46e6) line "BICYCLE!" done -_UnnamedText_1e960:: ; 886fc (22:46fc) +_PushStartText:: ; 886fc (22:46fc) text "Push START to" line "open the MENU!" done -_UnnamedText_1e97e:: ; 8871a (22:471a) +_SaveOptionText:: ; 8871a (22:471a) text "The SAVE option is" line "on the MENU" cont "screen." done -_UnnamedText_1e983:: ; 88742 (22:4742) +_StrengthsAndWeaknessesText:: ; 88742 (22:4742) text "All #MON types" line "have strong and" cont "weak points" cont "against others." done -_UnnamedText_1ea0d:: ; 8877e (22:477e) +_TimesUpText:: ; 8877e (22:477e) text "PA: Ding-dong!" para "Time's up!" prompt -_UnnamedText_1ea12:: ; 88798 (22:4798) +_GameOverText:: ; 88798 (22:4798) text "PA: Your SAFARI" line "GAME is over!" done @@ -618,7 +618,7 @@ _CinnabarGymQuizIncorrectText:: ; 8898f (22:498f) text "Sorry! Bad call!" prompt -_UnnamedText_1eb69:: ; 889a1 (22:49a1) +_MagazinesText:: ; 889a1 (22:49a1) text "#MON magazines!" para "#MON notebooks!" @@ -699,7 +699,7 @@ _GameCornerSomeonesKeysText:: ; 88bcd (22:4bcd) line "They'll be back." done -_UnnamedText_21865:: ; 88bed (22:4bed) +_JustAMomentText:: ; 88bed (22:4bed) text "Just a moment." done @@ -977,13 +977,13 @@ _VermilionGymTrashFailText:: ; 8948c (22:548c) cont "Hey! The electric" cont "locks were reset!@@" -UnnamedText_894d0:: ; 894d0 (22:54d0) +_FoundHiddenItemText:: ; 894d0 (22:54d0) text $52, " found" line "@" TX_RAM $cd6d text "!@@" -_UnnamedText_76794:: ; 894e1 (22:54e1) +_HiddenItemBagFullText:: ; 894e1 (22:54e1) text "But, ", $52, " has" line "no more room for" cont "other items!" @@ -1046,21 +1046,21 @@ _PokemonStuffText:: ; 8961f (22:561f) line "#MON stuff!" done -_UnnamedText_3c1a8:: ; 89639 (22:5639) +_OutOfSafariBallsText:: ; 89639 (22:5639) text "PA: Ding-dong!" para "You are out of" line "SAFARI BALLs!" prompt -_UnnamedText_3c229:: ; 89666 (22:5666) +_WildRanText:: ; 89666 (22:5666) text "Wild @" TX_RAM W_ENEMYMONNAME db $0 line "ran!" prompt -_UnnamedText_3c22e:: ; 89677 (22:5677) +_EnemyRanText:: ; 89677 (22:5677) text "Enemy @" TX_RAM W_ENEMYMONNAME db $0 @@ -1082,7 +1082,7 @@ _HurtByLeechSeedText:: ; 896b3 (22:56b3) line $5a, "!" prompt -_EnemyMonFainted:: ; 0x896c7 +_EnemyMonFaintedText:: ; 0x896c7 text "Enemy @" TX_RAM W_ENEMYMONNAME db $0 @@ -1110,7 +1110,7 @@ _PlayerMonFaintedText:: ; 8970c (22:570c) line "fainted!" prompt -_UnnamedText_3c7d3:: ; 8971a (22:571a) +_UseNextMonText:: ; 8971a (22:571a) text "Use next #MON?" done @@ -1154,31 +1154,31 @@ _TrainerSentOutText:: ; 897b4 (22:57b4) text "!" done -_UnnamedText_3cab4:: ; 897c9 (22:57c9) +_NoWillText:: ; 897c9 (22:57c9) text "There's no will" line "to fight!" prompt -_UnnamedText_3cb97:: ; 897e3 (22:57e3) +_CantEscapeText:: ; 897e3 (22:57e3) text "Can't escape!" prompt -_UnnamedText_3cb9c:: ; 897f1 (22:57f1) +_NoRunningText:: ; 897f1 (22:57f1) text "No! There's no" line "running from a" cont "trainer battle!" prompt -_UnnamedText_3cba1:: ; 8981f (22:581f) +_GotAwayText:: ; 8981f (22:581f) text "Got away safely!" prompt -ItemsCantBeUsedHere_:: ; 89831 (22:5831) +_ItemsCantBeUsedHereText:: ; 89831 (22:5831) text "Items can't be" line "used here." prompt -_UnnamedText_3d1f5:: ; 8984b (22:584b) +_AlreadyOutText:: ; 8984b (22:584b) TX_RAM W_PLAYERMONNAME text " is" line "already out!" @@ -1194,7 +1194,7 @@ _MoveDisabledText:: ; 8987b (22:587b) line "disabled!" prompt -_UnnamedText_3d430:: ; 89892 (22:5892) +_NoMovesLeftText:: ; 89892 (22:5892) TX_RAM W_PLAYERMONNAME text " has no" line "moves left!" @@ -1228,7 +1228,7 @@ _WokeUpText:: ; 89914 (22:5914) line "woke up!" prompt -_FrozenText:: ; 89920 (22:5920) +_IsFrozenText:: ; 89920 (22:5920) text $5A line "is frozen solid!" prompt @@ -1293,7 +1293,7 @@ _CantMoveText:: ; 89a1b (22:5a1b) line "can't move!" prompt -_UnnamedText_3daa8:: ; 89a29 (22:5a29) +_MoveIsDisabledText:: ; 89a29 (22:5a29) text $5a, "'s" line "@" TX_RAM $cd6d @@ -1301,42 +1301,42 @@ _UnnamedText_3daa8:: ; 89a29 (22:5a29) cont "disabled!" prompt -_UnnamedText_3dafb:: ; 89a40 (22:5a40) +_MonName1Text:: ; 89a40 (22:5a40) text $5a, "@@" -_UnnamedText_3db2d:: ; 89a44 (22:5a44) +_Used1Text:: ; 89a44 (22:5a44) db $0 line "used @@" -_UnnamedText_3db34:: ; 89a4d (22:5a4d) +_Used2Text:: ; 89a4d (22:5a4d) db $0 line "used @@" -_UnnamedText_3db43:: ; 89a56 (22:5a56) +_InsteadText:: ; 89a56 (22:5a56) text "instead," cont "@@" -_UnnamedText_3db4c:: ; 89a62 (22:5a62) +_CF4BText:: ; 89a62 (22:5a62) TX_RAM $cf4b text "@" -_UnnamedText_3db6c:: ; 89a67 (22:5a67) +_ExclamationPoint1Text:: ; 89a67 (22:5a67) text "!" done -_UnnamedText_3db71:: ; 89a6a (22:5a6a) +_ExclamationPoint2Text:: ; 89a6a (22:5a6a) text "!" done -_UnnamedText_3db76:: ; 89a6d (22:5a6d) +_ExclamationPoint3Text:: ; 89a6d (22:5a6d) text "!" done -_UnnamedText_3db7b:: ; 89a70 (22:5a70) +_ExclamationPoint4Text:: ; 89a70 (22:5a70) text "!" done -_UnnamedText_3db80:: ; 89a73 (22:5a73) +_ExclamationPoint5Text:: ; 89a73 (22:5a73) text "!" done @@ -1361,39 +1361,39 @@ _DoesntAffectMonText:: ; 89ab4 (22:5ab4) line $59, "!" prompt -_UnnamedText_3dc7e:: ; 89ac9 (22:5ac9) +_CriticalHitText:: ; 89ac9 (22:5ac9) text "Critical hit!" prompt -_UnnamedText_3dc83:: ; 89ad8 (22:5ad8) +_OHKOText:: ; 89ad8 (22:5ad8) text "One-hit KO!" prompt -_UnnamedText_3ddb6:: ; 89ae5 (22:5ae5) +_LoafingAroundText:: ; 89ae5 (22:5ae5) TX_RAM W_PLAYERMONNAME text " is" line "loafing around." prompt -_UnnamedText_3ddbb:: ; 89afd (22:5afd) +_BeganToNapText:: ; 89afd (22:5afd) TX_RAM W_PLAYERMONNAME text " began" line "to nap!" prompt -_UnnamedText_3ddc0:: ; 89b10 (22:5b10) +_WontObeyText:: ; 89b10 (22:5b10) TX_RAM W_PLAYERMONNAME text " won't" line "obey!" prompt -_UnnamedText_3ddc5:: ; 89b20 (22:5b20) +_TurnedAwayText:: ; 89b20 (22:5b20) TX_RAM W_PLAYERMONNAME text " turned" line "away!" prompt -_UnnamedText_3ddca:: ; 89b32 (22:5b32) +_IgnoredOrdersText:: ; 89b32 (22:5b32) TX_RAM W_PLAYERMONNAME db $0 line "ignored orders!" @@ -1426,38 +1426,38 @@ _HitXTimesText:: ; 89baf (22:5baf) text " times!" prompt -_UnnamedText_554b2:: ; 89bc2 (22:5bc2) +_GainedText:: ; 89bc2 (22:5bc2) TX_RAM $cd6d text " gained" line "@@" -_UnnamedText_554cb:: ; 89bd0 (22:5bd0) +_WithExpAllText:: ; 89bd0 (22:5bd0) text "with EXP.ALL," cont "@@" -_UnnamedText_554d4:: ; 89be1 (22:5be1) +_BoostedText:: ; 89be1 (22:5be1) text "a boosted" cont "@@" -_UnnamedText_554d8:: ; 89bee (22:5bee) +_ExpPointsText:: ; 89bee (22:5bee) TX_NUM $cf4b, 2, 4 text " EXP. Points!" prompt -UnnamedText_89c01:: ; 89c01 (22:5c01) +_GrewLevelText:: ; 89c01 (22:5c01) TX_RAM $cd6d text " grew" line "to level @" TX_NUM $d127, 1, 3 text "!@@" -_UnnamedText_58e3b:: ; 89c1d (22:5c1d) +_WildMonAppearedText:: ; 89c1d (22:5c1d) text "Wild @" TX_RAM W_ENEMYMONNAME db $0 line "appeared!" prompt -_UnnamedText_58e40:: ; 89c33 (22:5c33) +_HookedMonAttackedText:: ; 89c33 (22:5c33) text "The hooked" line "@" TX_RAM W_ENEMYMONNAME @@ -1465,83 +1465,83 @@ _UnnamedText_58e40:: ; 89c33 (22:5c33) cont "attacked!" prompt -_UnnamedText_58e45:: ; 89c4f (22:5c4f) +_EnemyAppearedText:: ; 89c4f (22:5c4f) TX_RAM W_ENEMYMONNAME db $0 line "appeared!" prompt -_UnnamedText_58e4a:: ; 89c5e (22:5c5e) +_TrainerWantsToFightText:: ; 89c5e (22:5c5e) TX_RAM W_TRAINERNAME text " wants" line "to fight!" prompt -_UnnamedText_58e4f:: ; 89c73 (22:5c73) +_UnveiledGhostText:: ; 89c73 (22:5c73) text "SILPH SCOPE" line "unveiled the" cont "GHOST's identity!" prompt -_UnnamedText_58e54:: ; 89c9e (22:5c9e) +_GhostCantBeIDdText:: ; 89c9e (22:5c9e) text "Darn! The GHOST" line "can't be ID'd!" prompt -_UnnamedText_58eae:: ; 89cbc (22:5cbc) +_GoText:: ; 89cbc (22:5cbc) text "Go! @@" -_UnnamedText_58eb5:: ; 89cc3 (22:5cc3) +_DoItText:: ; 89cc3 (22:5cc3) text "Do it! @@" -_UnnamedText_58ebc:: ; 89ccd (22:5ccd) +_GetmText:: ; 89ccd (22:5ccd) text "Get'm! @@" -_UnnamedText_58ec3:: ; 89cd6 (22:5cd6) +_EnemysWeakText:: ; 89cd6 (22:5cd6) text "The enemy's weak!" line "Get'm! @@" -_UnnamedText_58ecc:: ; 89cf0 (22:5cf0) +_PlayerMon1Text:: ; 89cf0 (22:5cf0) TX_RAM W_PLAYERMONNAME text "!" done -_UnnamedText_58ed7:: ; 89cf6 (22:5cf6) +_PlayerMon2Text:: ; 89cf6 (22:5cf6) TX_RAM W_PLAYERMONNAME text " @@" -_UnnamedText_58f25:: ; 89cfd (22:5cfd) +_EnoughText:: ; 89cfd (22:5cfd) text "enough!@@" -_UnnamedText_58f2c:: ; 89d07 (22:5d07) +_OKExclamationText:: ; 89d07 (22:5d07) text "OK!@@" -_UnnamedText_58f33:: ; 89d0d (22:5d0d) +_GoodText:: ; 89d0d (22:5d0d) text "good!@@" -_UnnamedText_58f3e:: ; 89d15 (22:5d15) +_ComeBackText:: ; 89d15 (22:5d15) db $0 line "Come back!" done -_UnnamedText_2fb8e:: ; 89d22 (22:5d22) +_SupperEffectiveText:: ; 89d22 (22:5d22) text "It's super" line "effective!" prompt -_UnnamedText_2fb93:: ; 89d38 (22:5d38) +_NotVeryEffectiveText:: ; 89d38 (22:5d38) text "It's not very" line "effective..." prompt -SafariZoneEatingText:: ; 89d53 (22:5d53) +_SafariZoneEatingText:: ; 89d53 (22:5d53) text "Wild @" TX_RAM W_ENEMYMONNAME db $0 line "is eating!" prompt -SafariZoneAngryText:: ; 89d6a (22:5d6a) +_SafariZoneAngryText:: ; 89d6a (22:5d6a) text "Wild @" TX_RAM W_ENEMYMONNAME db $0 @@ -1551,19 +1551,19 @@ SafariZoneAngryText:: ; 89d6a (22:5d6a) ; money related ; XXX $2 BCD macro ; $2, pointer, byte -_UnnamedText_1386b:: ; 89d80 (22:5d80) +_PickUpPayDayMoneyText:: ; 89d80 (22:5d80) text $52, " picked up" line "¥@" db $2, $e5, $cc, $c3 text "!" prompt -_UnnamedText_1c9c1:: ; 89d96 (22:5d96) +_ClearSaveDataText:: ; 89d96 (22:5d96) text "Clear all saved" line "data?" done -_UnnamedText_1ca14:: ; 89dad (22:5dad) +_WhichFloorText:: ; 89dad (22:5dad) text "Which floor do" line "you want? " done @@ -1649,12 +1649,12 @@ _RareCandyText:: ; 89ee2 (22:5ee2) TX_NUM $d127, $1,$3 text "!@@" -_UnnamedText_17f23:: ; 89efe (22:5efe) +_TurnedOnPC1Text:: ; 89efe (22:5efe) text $52, " turned on" line "the PC." prompt -_UnnamedText_17f28:: ; 89f13 (22:5f13) +_AccessedBillsPCText:: ; 89f13 (22:5f13) text "Accessed BILL's" line "PC." @@ -1662,7 +1662,7 @@ _UnnamedText_17f28:: ; 89f13 (22:5f13) line "Storage System." prompt -_UnnamedText_17f2d:: ; 89f45 (22:5f45) +_AccessedSomeonesPCText:: ; 89f45 (22:5f45) text "Accessed someone's" line "PC." @@ -1670,84 +1670,84 @@ _UnnamedText_17f2d:: ; 89f45 (22:5f45) line "Storage System." prompt -_UnnamedText_17f32:: ; 89f7a (22:5f7a) +_AccessedMyPCText:: ; 89f7a (22:5f7a) text "Accessed my PC." para "Accessed Item" line "Storage System." prompt -_UnnamedText_7b22:: ; 89fa9 (22:5fa9) +_TurnedOnPC2Text:: ; 89fa9 (22:5fa9) text $52, " turned on" line "the PC." prompt -_UnnamedText_7b27:: ; 89fbe (22:5fbe) +_WhatDoYouWantText:: ; 89fbe (22:5fbe) text "What do you want" line "to do?" done -_UnnamedText_7b2c:: ; 89fd7 (22:5fd7) +_WhatToDepositText:: ; 89fd7 (22:5fd7) text "What do you want" line "to deposit?" done -_UnnamedText_7b31:: ; 89ff5 (22:5ff5) +_DepositHowManyText:: ; 89ff5 (22:5ff5) text "How many?" done -_UnnamedText_7b36:: ; 8a000 (22:6000) +_ItemWasStoredText:: ; 8a000 (22:6000) TX_RAM $cd6d text " was" line "stored via PC." prompt -_UnnamedText_7b3b:: ; 8a018 (22:6018) +_NothingToDepositText:: ; 8a018 (22:6018) text "You have nothing" line "to deposit." prompt -_UnnamedText_7b40:: ; 8a036 (22:6036) +_NoRoomToStoreText:: ; 8a036 (22:6036) text "No room left to" line "store items." prompt -_UnnamedText_7b45:: ; 8a054 (22:6054) +_WhatToWithdrawText:: ; 8a054 (22:6054) text "What do you want" line "to withdraw?" done -_UnnamedText_7b4a:: ; 8a073 (22:6073) +_WithdrawHowManyText:: ; 8a073 (22:6073) text "How many?" done -_UnnamedText_7b4f:: ; 8a07e (22:607e) +_WithdrewItemText:: ; 8a07e (22:607e) text "Withdrew" line "@" TX_RAM $cd6d text "." prompt -_UnnamedText_7b54:: ; 8a08f (22:608f) +_NothingStoredText:: ; 8a08f (22:608f) text "There is nothing" line "stored." prompt -_UnnamedText_7b59:: ; 8a0a9 (22:60a9) +_CantCarryMoreText:: ; 8a0a9 (22:60a9) text "You can't carry" line "any more items." prompt -_UnnamedText_7b5e:: ; 8a0c9 (22:60c9) +_WhatToTossText:: ; 8a0c9 (22:60c9) text "What do you want" line "to toss away?" done -_UnnamedText_7b63:: ; 8a0e9 (22:60e9) +_TossHowManyText:: ; 8a0e9 (22:60e9) text "How many?" done -_UnnamedText_76683:: ; 8a0f4 (22:60f4) +_AccessedHoFPCText:: ; 8a0f4 (22:60f4) text "Accessed #MON" line "LEAGUE's site." @@ -1827,7 +1827,7 @@ _MonWasReleasedText:: ; 0x8a268 line "released outside." cont "Bye @" -_UnnamedText_8a288:: ; 8a288 (22:6288) +_CF4BExclamationText:: ; 8a288 (22:6288) TX_RAM $cf4b text "!" prompt @@ -1856,7 +1856,7 @@ _SoYouWantPrizeText:: ; 8a2f6 (22:62f6) text "?" done -_SorryNeedMoreCoins:: ; 8a30b (22:630b) +_SorryNeedMoreCoinsText:: ; 8a30b (22:630b) text "Sorry, you need" line "more coins.@@" @@ -1867,16 +1867,16 @@ _OopsYouDontHaveEnoughRoomText:: ; 8a329 (22:6329) _OhFineThenText:: ; 8a34c (22:634c) text "Oh, fine then.@@" -_UnnamedText_1e93b:: ; 8a35d (22:635d) +_GetDexRatedText:: ; 8a35d (22:635d) text "Want to get your" line "#DEX rated?" done -_UnnamedText_1e940:: ; 8a37b (22:637b) +_ClosedOaksPCText:: ; 8a37b (22:637b) text "Closed link to" line "PROF.OAK's PC.@@" -_UnnamedText_1e946:: ; 8a39a (22:639a) +_AccessedOaksPCText:: ; 8a39a (22:639a) text "Accessed PROF." line "OAK's PC." @@ -1884,17 +1884,17 @@ _UnnamedText_1e946:: ; 8a39a (22:639a) line "Rating System." prompt -_UnnamedText_5d43:: ; 8a3d0 (22:63d0) +_WhereWouldYouLikeText:: ; 8a3d0 (22:63d0) text "Where would you" line "like to go?" done -_UnnamedText_5d48:: ; 8a3ed (22:63ed) +_PleaseWaitText:: ; 8a3ed (22:63ed) text "OK, please wait" line "just a moment." done -_UnnamedText_5d4d:: ; 8a40d (22:640d) +_LinkCanceledText:: ; 8a40d (22:640d) text "The link was" line "canceled." done @@ -1909,12 +1909,12 @@ _DoYouWantToNicknameText:: ; 0x8a605 text "?" done -_UnnamedText_699f:: ; 8a62f (22:662f) +_YourNameIsText:: ; 8a62f (22:662f) text "Right! So your" line "name is ", $52, "!" prompt -_UnnamedText_69e7:: ; 8a64a (22:664a) +_HisNameIsText:: ; 8a64a (22:664a) text "That's right! I" line "remember now! His" cont "name is ", $53, "!" @@ -2031,7 +2031,7 @@ _OlderFileWillBeErasedText:: ; 94643 (25:4643) cont "save. Okay?" done -_UnnamedText_73909:: ; 94671 (25:4671) +_WhenYouChangeBoxText:: ; 94671 (25:4671) text "When you change a" line "#MON BOX, data" cont "will be saved." @@ -2039,30 +2039,30 @@ _UnnamedText_73909:: ; 94671 (25:4671) para "Is that okay?" done -_UnnamedText_739d4:: ; 946b0 (25:46b0) +_ChooseABoxText:: ; 946b0 (25:46b0) text "Choose a" line $4a, " BOX.@@" -_UnnamedText_3af3e:: ; 946c2 (25:46c2) +_EvolvedText:: ; 946c2 (25:46c2) TX_RAM $cf4b text " evolved" done -_UnnamedText_3af43:: ; 946cf (25:46cf) +_IntoText:: ; 946cf (25:46cf) db $0 line "into @" TX_RAM $cd6d text "!" done -_UnnamedText_3af48:: ; 946dd (25:46dd) +_StoppedEvolvingText:: ; 946dd (25:46dd) text "Huh? @" TX_RAM $cf4b db $0 line "stopped evolving!" prompt -_UnnamedText_3af4d:: ; 946fb (25:46fb) +_IsEvolvingText:: ; 946fb (25:46fb) text "What? @" TX_RAM $cf4b db $0 @@ -2089,44 +2089,44 @@ _BadlyPoisonedText:: ; 9474a (25:474a) line "badly poisoned!" prompt -_UnnamedText_3f3d8:: ; 9475e (25:475e) +_BurnedText:: ; 9475e (25:475e) text $59 line "was burned!" prompt -_UnnamedText_3f3dd:: ; 9476d (25:476d) +_FrozenText:: ; 9476d (25:476d) text $59 line "was frozen solid!" prompt -_UnnamedText_3f423:: ; 94782 (25:4782) +_FireDefrostedText:: ; 94782 (25:4782) text "Fire defrosted" line $59, "!" prompt -_UnnamedText_3f528:: ; 94795 (25:4795) +_MonsStatsRoseText:: ; 94795 (25:4795) text $5a, "'s" line "@" TX_RAM $cf4b text "@@" -_UnnamedText_3f542:: ; 947a0 (25:47a0) +_GreatlyRoseText:: ; 947a0 (25:47a0) text $4c, "greatly@@" -_UnnamedText_3f547:: ; 947ab (25:47ab) +_RoseText:: ; 947ab (25:47ab) text " rose!" prompt -_UnnamedText_3f661:: ; 947b3 (25:47b3) +_MonsStatsFellText:: ; 947b3 (25:47b3) text $59, "'s" line "@" TX_RAM $cf4b text "@@" -_UnnamedText_3f67e:: ; 947be (25:47be) +_GreatlyFellText:: ; 947be (25:47be) text $4c, "greatly@@" -_UnnamedText_3f683:: ; 947c9 (25:47c9) +_FellText:: ; 947c9 (25:47c9) text " fell!" prompt @@ -2199,7 +2199,7 @@ _MoveWasDisabledText:: ; 9489e (25:489e) cont "disabled!" prompt -_UnnamedText_3fb3e:: ; 948b6 (25:48b6) +_NothingHappenedText:: ; 948b6 (25:48b6) text "Nothing happened!" prompt @@ -2227,17 +2227,17 @@ _ParalyzedMayNotAttackText:: ; 9490d (25:490d) cont "not attack!" prompt -_UnnamedText_17e1d:: ; 9492f (25:492f) +_SubstituteText:: ; 9492f (25:492f) text "It created a" line "SUBSTITUTE!" prompt -_UnnamedText_17e22:: ; 94949 (25:4949) +_HasSubstituteText:: ; 94949 (25:4949) text $5a line "has a SUBSTITUTE!" prompt -_UnnamedText_17e27:: ; 9495e (25:495e) +_TooWeakSubstituteText:: ; 9495e (25:495e) text "Too weak to make" line "a SUBSTITUTE!" prompt @@ -2322,7 +2322,7 @@ _SuckedHealthText:: ; 94ad5 (25:4ad5) line $59, "!" prompt -_DreamEatenText:: ; 94aec (25:4aec) +_DreamWasEatenText:: ; 94aec (25:4aec) text $59, "'s" line "dream was eaten!" prompt @@ -2463,7 +2463,7 @@ _PokemartBuyingGreetingText:: ; a2608 (28:6608) text "Take your time." done -_PokemartTellBuyPrice:: ; a2619 (28:6619) +_PokemartTellBuyPriceText:: ; a2619 (28:6619) TX_RAM $cf4b text "?" line "That will be" @@ -2492,7 +2492,7 @@ _PokemonSellingGreetingText:: ; a2690 (28:6690) line "like to sell?" done -_PokemartTellSellPrice:: ; a26ae (28:66ae) +_PokemartTellSellPriceText:: ; a26ae (28:66ae) text "I can pay you" line "¥@" db $2, $9f, $ff, $c3 ; XXX @@ -2518,26 +2518,26 @@ _PokemartAnythingElseText:: ; a2719 (28:6719) line "else I can do?" done -UnnamedText_a273b:: ; a273b (28:673b) +_LearnedMove1Text:: ; a273b (28:673b) TX_RAM $d036 text " learned" line "@" TX_RAM $cf4b text "!@@" -_UnnamedText_6fb4:: ; a2750 (28:6750) +_WhichMoveToForgetText:: ; a2750 (28:6750) text "Which move should" next "be forgotten?" done -_UnnamedText_6fb9:: ; a2771 (28:6771) +_AbandonLearningText:: ; a2771 (28:6771) text "Abandon learning" line "@" TX_RAM $cf4b text "?" done -_UnnamedText_6fbe:: ; a278a (28:678a) +_DidNotLearnText:: ; a278a (28:678a) TX_RAM $d036 db $0 line "did not learn" @@ -2546,7 +2546,7 @@ _UnnamedText_6fbe:: ; a278a (28:678a) text "!" prompt -_UnnamedText_6fc3:: ; a27a4 (28:67a4) +_TryingToLearnText:: ; a27a4 (28:67a4) TX_RAM $d036 text " is" line "trying to learn" @@ -2567,13 +2567,13 @@ _UnnamedText_6fc3:: ; a27a4 (28:67a4) text "?" done -_UnnamedText_6fc8:: ; a2819 (28:6819) +_OneTwoAndText:: ; a2819 (28:6819) text "1, 2 and...@@" -_UnnamedText_6fd7:: ; a2827 (28:6827) +_PoofText:: ; a2827 (28:6827) text " Poof!@@" -_UnnamedText_6fdc:: ; a2830 (28:6830) +_ForgotAndText:: ; a2830 (28:6830) db $0 para "@" TX_RAM $d036 @@ -2585,7 +2585,7 @@ _UnnamedText_6fdc:: ; a2830 (28:6830) para "And..." prompt -_UnnamedText_6fe1:: ; a284d (28:684d) +_HMCantDeleteText:: ; a284d (28:684d) text "HM techniques" line "can't be deleted!" prompt @@ -2671,18 +2671,18 @@ _UsedStrengthText:: ; a403c (29:403c) text " used" line "STRENGTH.@@" -_UnnamedText_cdbb:: ; a4051 (29:4051) +_CanMoveBouldersText:: ; a4051 (29:4051) TX_RAM $cd6d text " can" line "move boulders." prompt -_UnnamedText_cdfa:: ; a4069 (29:4069) +_CurrentTooFastText:: ; a4069 (29:4069) text "The current is" line "much too fast!" prompt -_UnnamedText_cdff:: ; a4088 (29:4088) +_CyclingIsFunText:: ; a4088 (29:4088) text "Cycling is fun!" line "Forget SURFing!" prompt @@ -2729,13 +2729,13 @@ _CannotGetOffHereText:: ; a4168 (29:4168) line "here." prompt -_UnnamedText_4fe39:: ; a4180 (29:4180) +_GotMonText:: ; a4180 (29:4180) text $52, " got" line "@" TX_RAM $cd6d text "!@@" -_UnnamedText_4fe3f:: ; a418f (29:418f) +_SetToBoxText:: ; a418f (29:418f) text "There's no more" line "room for #MON!" cont "@" @@ -2747,7 +2747,7 @@ _UnnamedText_4fe3f:: ; a418f (29:418f) text " on PC!" done -_UnnamedText_4fe44:: ; a41d6 (29:41d6) +_BoxIsFullText:: ; a41d6 (29:41d6) text "There's no more" line "room for #MON!" @@ -3046,7 +3046,7 @@ _TooImportantToTossText:: ; a8068 (2a:4068) line "tant to toss!" prompt -_UnnamedText_2fe3b:: ; a8088 (2a:4088) +_AlreadyKnowsText:: ; a8088 (2a:4088) TX_RAM $cd6d text " knows" line "@" @@ -3054,12 +3054,12 @@ _UnnamedText_2fe3b:: ; a8088 (2a:4088) text "!" prompt -_UnnamedText_71d88:: ; a809a (2a:409a) +_ConnectCableText:: ; a809a (2a:409a) text "Okay, connect the" line "cable like so!" prompt -_UnnamedText_71d8d:: ; a80bc (2a:40bc) +_TradedForText:: ; a80bc (2a:40bc) text $52, " traded" line "@" TX_RAM $cd13 @@ -3068,7 +3068,7 @@ _UnnamedText_71d8d:: ; a80bc (2a:40bc) TX_RAM $cd1e text "!@@" -_UnnamedText_71d94:: ; a80d8 (2a:40d8) +_WannaTrade1Text:: ; a80d8 (2a:40d8) text "I'm looking for" line "@" TX_RAM $cd13 @@ -3080,12 +3080,12 @@ _UnnamedText_71d94:: ; a80d8 (2a:40d8) text "? " done -_UnnamedText_71d99:: ; a810b (2a:410b) +_NoTrade1Text:: ; a810b (2a:410b) text "Awww!" line "Oh well..." done -_UnnamedText_71d9e:: ; a811d (2a:411d) +_WrongMon1Text:: ; a811d (2a:411d) text "What? That's not" line "@" TX_RAM $cd13 @@ -3095,18 +3095,18 @@ _UnnamedText_71d9e:: ; a811d (2a:411d) line "come back here!" done -_UnnamedText_71da3:: ; a8155 (2a:4155) +_Thanks1Text:: ; a8155 (2a:4155) text "Hey thanks!" done -_UnnamedText_71da8:: ; a8162 (2a:4162) +_AfterTrade1Text:: ; a8162 (2a:4162) text "Isn't my old" line "@" TX_RAM $cd1e text " great?" done -_UnnamedText_71dad:: ; a817c (2a:417c) +_WannaTrade2Text:: ; a817c (2a:417c) text "Hello there! Do" line "you want to trade" @@ -3118,12 +3118,12 @@ _UnnamedText_71dad:: ; a817c (2a:417c) text "?" done -_UnnamedText_71db2:: ; a81b5 (2a:41b5) +_NoTrade2Text:: ; a81b5 (2a:41b5) text "Well, if you" line "don't want to..." done -_UnnamedText_71db7:: ; a81d3 (2a:41d3) +_WrongMon2Text:: ; a81d3 (2a:41d3) text "Hmmm? This isn't" line "@" TX_RAM $cd13 @@ -3133,11 +3133,11 @@ _UnnamedText_71db7:: ; a81d3 (2a:41d3) line "you get one." done -_UnnamedText_71dbc:: ; a8209 (2a:4209) +_Thanks2Text:: ; a8209 (2a:4209) text "Thanks!" done -_UnnamedText_71dc1:: ; a8212 (2a:4212) +_AfterTrade2Text:: ; a8212 (2a:4212) text "The @" TX_RAM $cd13 text " you" @@ -3146,7 +3146,7 @@ _UnnamedText_71dc1:: ; a8212 (2a:4212) para "went and evolved!" done -_UnnamedText_71dc6:: ; a8240 (2a:4240) +_WannaTrade3Text:: ; a8240 (2a:4240) text "Hi! Do you have" line "@" TX_RAM $cd13 @@ -3158,11 +3158,11 @@ _UnnamedText_71dc6:: ; a8240 (2a:4240) text "?" done -_UnnamedText_71dcb:: ; a8274 (2a:4274) +_NoTrade3Text:: ; a8274 (2a:4274) text "That's too bad." done -_UnnamedText_71dd0:: ; a8284 (2a:4284) +_WrongMon3Text:: ; a8284 (2a:4284) text "...This is no" line "@" TX_RAM $cd13 @@ -3172,11 +3172,11 @@ _UnnamedText_71dd0:: ; a8284 (2a:4284) line "trade it with me!" done -_UnnamedText_71dd5:: ; a82bc (2a:42bc) +_Thanks3Text:: ; a82bc (2a:42bc) text "Thanks pal!" done -_UnnamedText_71dda:: ; a82c9 (2a:42c9) +_AfterTrade3Text:: ; a82c9 (2a:42c9) text "How is my old" line "@" TX_RAM $cd1e @@ -3188,7 +3188,7 @@ _UnnamedText_71dda:: ; a82c9 (2a:42c9) line "doing great!" done -_UnnamedText_ef7d:: ; a82f8 (2a:42f8) +_NothingToCutText:: ; a82f8 (2a:42f8) text "There isn't" line "anything to CUT!" prompt diff --git a/text/credits_text.asm b/text/credits_text.asm new file mode 100755 index 00000000..c2c9e429 --- /dev/null +++ b/text/credits_text.asm @@ -0,0 +1,199 @@ +CreditsTextPointers: ; 742c3 (1d:42c3) + dw CredVersion + dw CredTajiri + dw CredTaOota + dw CredMorimoto + dw CredWatanabe + dw CredMasuda + dw CredNisino + dw CredSugimori + dw CredNishida + dw CredMiyamoto + dw CredKawaguchi + dw CredIshihara + dw CredYamauchi + dw CredZinnai + dw CredHishida + dw CredSakai + dw CredYamaguchi + dw CredYamamoto + dw CredTaniguchi + dw CredNonomura + dw CredFuziwara + dw CredMatsusima + dw CredTomisawa + dw CredKawamoto + dw CredKakei + dw CredTsuchiya + dw CredTaNakamura + dw CredYuda + dw CredMon + dw CredDirector + dw CredProgrammers + dw CredCharDesign + dw CredMusic + dw CredSoundEffects + dw CredGameDesign + dw CredMonsterDesign + dw CredGameScene + dw CredParam + dw CredMap + dw CredTest + dw CredSpecial + dw CredProducers + dw CredProducer + dw CredExecutive + dw CredTamada + dw CredSaOota + dw CredYoshikawa + dw CredToOota + dw CredUSStaff + dw CredUSCoord + dw CredTilden + dw CredKawakami + dw CredHiNakamura + dw CredGiese + dw CredOsborne + dw CredTrans + dw CredOgasawara + dw CredIwata + dw CredIzushi + dw CredHarada + dw CredMurakawa + dw CredFukui + dw CredClub + dw CredPAAD + +CredVersion: ; 74343 (1d:4343) ; this 1 byte difference makes all bank addresses offset by 1 in the blue version +IF _RED + db -8, "RED VERSION STAFF@" +ENDC +IF _BLUE + db -8, "BLUE VERSION STAFF@" +ENDC +CredTajiri: ; 74356 (1d:4356) + db -6, "SATOSHI TAJIRI@" +CredTaOota: ; 74366 (1d:4366) + db -6, "TAKENORI OOTA@" +CredMorimoto: ; 74375 (1d:4375) + db -7, "SHIGEKI MORIMOTO@" +CredWatanabe: ; 74387 (1d:4387) + db -7, "TETSUYA WATANABE@" +CredMasuda: ; 74399 (1d:4399) + db -6, "JUNICHI MASUDA@" +CredNisino: ; 743a9 (1d:43a9) + db -5, "KOHJI NISINO@" +CredSugimori: ; 743b7 (1d:43b7) + db -5, "KEN SUGIMORI@" +CredNishida: ; 743c5 (1d:43c5) + db -6, "ATSUKO NISHIDA@" +CredMiyamoto: ; 743d5 (1d:43d5) + db -7, "SHIGERU MIYAMOTO@" +CredKawaguchi: ; 743e7 (1d:43e7) + db -8, "TAKASHI KAWAGUCHI@" +CredIshihara: ; 743fa (1d:43fa) + db -8, "TSUNEKAZU ISHIHARA@" +CredYamauchi: ; 7440e (1d:440e) + db -7, "HIROSHI YAMAUCHI@" +CredZinnai: ; 74420 (1d:4420) + db -7, "HIROYUKI ZINNAI@" +CredHishida: ; 74431 (1d:4431) + db -7, "TATSUYA HISHIDA@" +CredSakai: ; 74442 (1d:4442) + db -6, "YASUHIRO SAKAI@" +CredYamaguchi: ; 74452 (1d:4452) + db -7, "WATARU YAMAGUCHI@" +CredYamamoto: ; 74464 (1d:4464) + db -8, "KAZUYUKI YAMAMOTO@" +CredTaniguchi: ; 74477 (1d:4477) + db -8, "RYOHSUKE TANIGUCHI@" +CredNonomura: ; 7448b (1d:448b) + db -8, "FUMIHIRO NONOMURA@" +CredFuziwara: ; 7449e (1d:449e) + db -7, "MOTOFUMI FUZIWARA@" +CredMatsusima: ; 744b1 (1d:44b1) + db -7, "KENJI MATSUSIMA@" +CredTomisawa: ; 744c2 (1d:44c2) + db -7, "AKIHITO TOMISAWA@" +CredKawamoto: ; 744d4 (1d:44d4) + db -7, "HIROSHI KAWAMOTO@" +CredKakei: ; 744e6 (1d:44e6) + db -6, "AKIYOSHI KAKEI@" +CredTsuchiya: ; 744f6 (1d:44f6) + db -7, "KAZUKI TSUCHIYA@" +CredTaNakamura: ; 74507 (1d:4507) + db -6, "TAKEO NAKAMURA@" +CredYuda: ; 74517 (1d:4517) + db -6, "MASAMITSU YUDA@" +CredMon: ; 74527 (1d:4527) + db -3, "#MON@" +CredDirector: ; 7452d (1d:452d) + db -3, "DIRECTOR@" +CredProgrammers: ; 74537 (1d:4537) + db -5, "PROGRAMMERS@" +CredCharDesign: ; 74544 (1d:4544) + db -7, "CHARACTER DESIGN@" +CredMusic: ; 74556 (1d:4556) + db -2, "MUSIC@" +CredSoundEffects: ; 7455d (1d:455d) + db -6, "SOUND EFFECTS@" +CredGameDesign: ; 7456c (1d:456c) + db -5, "GAME DESIGN@" +CredMonsterDesign: ; 74579 (1d:4579) + db -6, "MONSTER DESIGN@" +CredGameScene: ; 74589 (1d:4589) + db -6, "GAME SCENARIO@" +CredParam: ; 74598 (1d:4598) + db -8, "PARAMETRIC DESIGN@" +CredMap: ; 745ab (1d:45ab) + db -4, "MAP DESIGN@" +CredTest: ; 745b7 (1d:45b7) + db -7, "PRODUCT TESTING@" +CredSpecial: ; 745c8 (1d:45c8) + db -6, "SPECIAL THANKS@" +CredProducers: ; 745d8 (1d:45d8) + db -4, "PRODUCERS@" +CredProducer: ; 745e3 (1d:45e3) + db -4, "PRODUCER@" +CredExecutive: ; 745ed (1d:45ed) + db -8, "EXECUTIVE PRODUCER@" +CredTamada: ; 74601 (1d:4601) + db -6, "SOUSUKE TAMADA@" +CredSaOota: ; 74611 (1d:4611) + db -5, "SATOSHI OOTA@" +CredYoshikawa: ; 7461f (1d:461f) + db -6, "RENA YOSHIKAWA@" +CredToOota: ; 7462f (1d:462f) + db -6, "TOMOMICHI OOTA@" +CredUSStaff: ; 7463f (1d:463f) + db -7, "US VERSION STAFF@" +CredUSCoord: ; 74651 (1d:4651) + db -7, "US COORDINATION@" +CredTilden: ; 74662 (1d:4662) + db -5, "GAIL TILDEN@" +CredKawakami: ; 7466f (1d:466f) + db -6, "NAOKO KAWAKAMI@" +CredHiNakamura: ; 7467f (1d:467f) + db -6, "HIRO NAKAMURA@" +CredGiese: ; 7468e (1d:468e) + db -6, "WILLIAM GIESE@" +CredOsborne: ; 7469d (1d:469d) + db -5, "SARA OSBORNE@" +CredTrans: ; 746ab (1d:46ab) + db -7, "TEXT TRANSLATION@" +CredOgasawara: ; 746bd (1d:46bd) + db -6, "NOB OGASAWARA@" +CredIwata: ; 746cc (1d:46cc) + db -5, "SATORU IWATA@" +CredIzushi: ; 746da (1d:46da) + db -7, "TAKEHIRO IZUSHI@" +CredHarada: ; 746eb (1d:46eb) + db -7, "TAKAHIRO HARADA@" +CredMurakawa: ; 746fc (1d:46fc) + db -7, "TERUKI MURAKAWA@" +CredFukui: ; 7470d (1d:470d) + db -5, "KOHTA FUKUI@" +CredClub: ; 7471a (1d:471a) + db -9, "NCL SUPER MARIO CLUB@" +CredPAAD: ; 74730 (1d:4730) + db -5, "PAAD TESTING@" diff --git a/text/item_names.asm b/text/item_names.asm new file mode 100755 index 00000000..3c0f4c49 --- /dev/null +++ b/text/item_names.asm @@ -0,0 +1,98 @@ +ItemNames: ; 472b (1:472b) + db "MASTER BALL@" + db "ULTRA BALL@" + db "GREAT BALL@" + db "POKé BALL@" + db "TOWN MAP@" + db "BICYCLE@" + db "?????@" + db "SAFARI BALL@" + db "POKéDEX@" + db "MOON STONE@" + db "ANTIDOTE@" + db "BURN HEAL@" + db "ICE HEAL@" + db "AWAKENING@" + db "PARLYZ HEAL@" + db "FULL RESTORE@" + db "MAX POTION@" + db "HYPER POTION@" + db "SUPER POTION@" + db "POTION@" + db "BOULDERBADGE@" + db "CASCADEBADGE@" + db "THUNDERBADGE@" + db "RAINBOWBADGE@" + db "SOULBADGE@" + db "MARSHBADGE@" + db "VOLCANOBADGE@" + db "EARTHBADGE@" + db "ESCAPE ROPE@" + db "REPEL@" + db "OLD AMBER@" + db "FIRE STONE@" + db "THUNDERSTONE@" + db "WATER STONE@" + db "HP UP@" + db "PROTEIN@" + db "IRON@" + db "CARBOS@" + db "CALCIUM@" + db "RARE CANDY@" + db "DOME FOSSIL@" + db "HELIX FOSSIL@" + db "SECRET KEY@" + db "?????@" + db "BIKE VOUCHER@" + db "X ACCURACY@" + db "LEAF STONE@" + db "CARD KEY@" + db "NUGGET@" + db "PP UP@" + db "POKé DOLL@" + db "FULL HEAL@" + db "REVIVE@" + db "MAX REVIVE@" + db "GUARD SPEC.@" + db "SUPER REPEL@" + db "MAX REPEL@" + db "DIRE HIT@" + db "COIN@" + db "FRESH WATER@" + db "SODA POP@" + db "LEMONADE@" + db "S.S.TICKET@" + db "GOLD TEETH@" + db "X ATTACK@" + db "X DEFEND@" + db "X SPEED@" + db "X SPECIAL@" + db "COIN CASE@" + db "OAK's PARCEL@" + db "ITEMFINDER@" + db "SILPH SCOPE@" + db "POKé FLUTE@" + db "LIFT KEY@" + db "EXP.ALL@" + db "OLD ROD@" + db "GOOD ROD@" + db "SUPER ROD@" + db "PP UP@" + db "ETHER@" + db "MAX ETHER@" + db "ELIXER@" + db "MAX ELIXER@" + db "B2F@" + db "B1F@" + db "1F@" + db "2F@" + db "3F@" + db "4F@" + db "5F@" + db "6F@" + db "7F@" + db "8F@" + db "9F@" + db "10F@" + db "11F@" + db "B4F@" diff --git a/text/map_names.asm b/text/map_names.asm new file mode 100755 index 00000000..dd8592be --- /dev/null +++ b/text/map_names.asm @@ -0,0 +1,107 @@ +MapNames: ; 71473 (1c:5473) +PalletTownName: ; 71473 (1c:5473) + db "PALLET TOWN@" +ViridianCityName: ; 7147f (1c:547f) + db "VIRIDIAN CITY@" +PewterCityName: ; 7148d (1c:548d) + db "PEWTER CITY@" +CeruleanCityName: ; 71499 (1c:5499) + db "CERULEAN CITY@" +LavenderTownName: ; 714a7 (1c:54a7) + db "LAVENDER TOWN@" +VermilionCityName: ; 714b5 (1c:54b5) + db "VERMILION CITY@" +CeladonCityName: ; 714c4 (1c:54c4) + db "CELADON CITY@" +FuchsiaCityName: ; 714d1 (1c:54d1) + db "FUCHSIA CITY@" +CinnabarIslandName: ; 714de (1c:54de) + db "CINNABAR ISLAND@" +IndigoPlateauName: ; 714ee (1c:54ee) + db "INDIGO PLATEAU@" +SaffronCityName: ; 714fd (1c:54fd) + db "SAFFRON CITY@" +Route1Name: ; 7150a (1c:550a) + db "ROUTE 1@" +Route2Name: ; 71512 (1c:5512) + db "ROUTE 2@" +Route3Name: ; 7151a (1c:551a) + db "ROUTE 3@" +Route4Name: ; 71522 (1c:5522) + db "ROUTE 4@" +Route5Name: ; 7152a (1c:552a) + db "ROUTE 5@" +Route6Name: ; 71532 (1c:5532) + db "ROUTE 6@" +Route7Name: ; 7153a (1c:553a) + db "ROUTE 7@" +Route8Name: ; 71542 (1c:5542) + db "ROUTE 8@" +Route9Name: ; 7154a (1c:554a) + db "ROUTE 9@" +Route10Name: ; 71552 (1c:5552) + db "ROUTE 10@" +Route11Name: ; 7155b (1c:555b) + db "ROUTE 11@" +Route12Name: ; 71564 (1c:5564) + db "ROUTE 12@" +Route13Name: ; 7156d (1c:556d) + db "ROUTE 13@" +Route14Name: ; 71576 (1c:5576) + db "ROUTE 14@" +Route15Name: ; 7157f (1c:557f) + db "ROUTE 15@" +Route16Name: ; 71588 (1c:5588) + db "ROUTE 16@" +Route17Name: ; 71591 (1c:5591) + db "ROUTE 17@" +Route18Name: ; 7159a (1c:559a) + db "ROUTE 18@" +Route19Name: ; 715a3 (1c:55a3) + db "SEA ROUTE 19@" +Route20Name: ; 715b0 (1c:55b0) + db "SEA ROUTE 20@" +Route21Name: ; 715bd (1c:55bd) + db "SEA ROUTE 21@" +Route22Name: ; 715ca (1c:55ca) + db "ROUTE 22@" +Route23Name: ; 715d3 (1c:55d3) + db "ROUTE 23@" +Route24Name: ; 715dc (1c:55dc) + db "ROUTE 24@" +Route25Name: ; 715e5 (1c:55e5) + db "ROUTE 25@" +ViridianForestName: ; 715ee (1c:55ee) + db "VIRIDIAN FOREST@" +MountMoonName: ; 715fe (1c:55fe) + db "MT.MOON@" +RockTunnelName: ; 71606 (1c:5606) + db "ROCK TUNNEL@" +SeaCottageName: ; 71612 (1c:5612) + db "SEA COTTAGE@" +SSAnneName: ; 7161e (1c:561e) + db "S.S.ANNE@" +PokemonLeagueName: ; 71627 (1c:5627) + db "#MON LEAGUE@" +UndergroundPathName: ; 71633 (1c:5633) + db "UNDERGROUND PATH@" +PokemonTowerName: ; 71644 (1c:5644) + db "#MON TOWER@" +SeafoamIslandsName: ; 7164f (1c:564f) + db "SEAFOAM ISLANDS@" +VictoryRoadName: ; 7165f (1c:565f) + db "VICTORY ROAD@" +DiglettsCaveName: ; 7166c (1c:566c) + db "DIGLETT's CAVE@" +RocketHQName: ; 7167a (1c:567a) + db "ROCKET HQ@" +SilphCoName: ; 71684 (1c:5684) + db "SILPH CO.@" +PokemonMansionName: ; 7168e (1c:568e) + db $4a," MANSION@" +SafariZoneName: ; 71698 (1c:5698) + db "SAFARI ZONE@" +CeruleanCaveName: ; 716a4 (1c:56a4) + db "CERULEAN CAVE@" +PowerPlantName: ; 716b2 (1c:56b2) + db "POWER PLANT@" diff --git a/text/maps/bike_shop.asm b/text/maps/bike_shop.asm index 8cfbd4fc..5f2c3f45 100644 --- a/text/maps/bike_shop.asm +++ b/text/maps/bike_shop.asm @@ -1,4 +1,4 @@ -_UnnamedText_1d810:: ; 98e03 (26:4e03) +_BikeShopText_1d810:: ; 98e03 (26:4e03) text "Hi! Welcome to" line "our BIKE SHOP." @@ -6,17 +6,17 @@ _UnnamedText_1d810:: ; 98e03 (26:4e03) line "the BIKE for you!" prompt -_UnnamedText_1d815:: ; 98e45 (26:4e45) +_BikeShopText_1d815:: ; 98e45 (26:4e45) text "It's a cool BIKE!" line "Do you want it?" done -_UnnamedText_1d81a:: ; 98e67 (26:4e67) +_BikeShopText_1d81a:: ; 98e67 (26:4e67) text "Sorry! You can't" line "afford it!" prompt -_UnnamedText_1d81f:: ; 98e83 (26:4e83) +_BikeShopText_1d81f:: ; 98e83 (26:4e83) text "Oh, that's..." para "A BIKE VOUCHER!" @@ -24,17 +24,17 @@ _UnnamedText_1d81f:: ; 98e83 (26:4e83) para "OK! Here you go!" prompt -_UnnamedText_1d824:: ; 98eb2 (26:4eb2) +_BikeShopText_1d824:: ; 98eb2 (26:4eb2) text $52, " exchanged" line "the BIKE VOUCHER" cont "for a BICYCLE.@@" -_UnnamedText_1d82a:: ; 98ee0 (26:4ee0) +_BikeShopText_1d82a:: ; 98ee0 (26:4ee0) text "Come back again" line "some time!" done -_UnnamedText_1d82f:: ; 98efc (26:4efc) +_BikeShopText_1d82f:: ; 98efc (26:4efc) text "How do you like" line "your new BICYCLE?" @@ -43,12 +43,12 @@ _UnnamedText_1d82f:: ; 98efc (26:4efc) cont "and in caves!" done -_UnnamedText_1d834:: ; 98f4d (26:4f4d) +_BikeShopText_1d834:: ; 98f4d (26:4f4d) text "You better make" line "room for this!" done -_UnnamedText_1d843:: ; 98f6d (26:4f6d) +_BikeShopText_1d843:: ; 98f6d (26:4f6d) text "A plain city BIKE" line "is good enough" cont "for me!" @@ -58,13 +58,13 @@ _UnnamedText_1d843:: ; 98f6d (26:4f6d) cont "on an MTB!" done -_UnnamedText_1d85c:: ; 98fc1 (26:4fc1) +_BikeShopText_1d85c:: ; 98fc1 (26:4fc1) text "These BIKEs are" line "cool, but they're" cont "way expensive!" done -_UnnamedText_1d861:: ; 98ff2 (26:4ff2) +_BikeShopText_1d861:: ; 98ff2 (26:4ff2) text "Wow. Your BIKE is" line "really cool!" done diff --git a/text/maps/bills_house.asm b/text/maps/bills_house.asm index 87a8d794..24062b5d 100644 --- a/text/maps/bills_house.asm +++ b/text/maps/bills_house.asm @@ -1,4 +1,4 @@ -_UnnamedText_1e865:: ; 8d267 (23:5267) +_BillsHouseText_1e865:: ; 8d267 (23:5267) text "Hiya! I'm a" line "#MON..." cont "...No I'm not!" @@ -19,7 +19,7 @@ _UnnamedText_1e865:: ; 8d267 (23:5267) line "Help me out here!" done -_UnnamedText_1e86a:: ; 8d345 (23:5345) +_BillsHouseText_1e86a:: ; 8d345 (23:5345) text "When I'm in the" line "TELEPORTER, go to" cont "my PC and run the" @@ -27,7 +27,7 @@ _UnnamedText_1e86a:: ; 8d345 (23:5345) cont "System!" done -_UnnamedText_1e86f:: ; 8d391 (23:5391) +_BillsHouseText_1e86f:: ; 8d391 (23:5391) text "No!? Come on, you" line "gotta help a guy" cont "in deep trouble!" @@ -64,7 +64,7 @@ _SSTicketNoRoomText:: ; 8d4b0 (23:54b0) line "much stuff, bud!" done -_UnnamedText_1e8cb:: ; 8d4d0 (23:54d0) +_BillsHouseText_1e8cb:: ; 8d4d0 (23:54d0) text "That cruise ship," line "S.S.ANNE, is in" cont "VERMILION CITY." @@ -79,7 +79,7 @@ _UnnamedText_1e8cb:: ; 8d4d0 (23:54d0) cont "instead of me?" done -_UnnamedText_1e8da:: ; 8d57f (23:557f) +_BillsHouseText_1e8da:: ; 8d57f (23:557f) text "BILL: Look, bud," line "just check out" cont "some of my rare" diff --git a/text/maps/celadon_dept_store_roof.asm b/text/maps/celadon_dept_store_roof.asm index 474f8550..3d83317f 100644 --- a/text/maps/celadon_dept_store_roof.asm +++ b/text/maps/celadon_dept_store_roof.asm @@ -1,9 +1,9 @@ -_UnnamedText_484ee:: ; 9cbb5 (27:4bb5) +_CeladonMartRoofText_484ee:: ; 9cbb5 (27:4bb5) text "Give her which" line "drink?" done -_UnnamedText_484f3:: ; 9cbcc (27:4bcc) +_CeladonMartRoofText_484f3:: ; 9cbcc (27:4bcc) text "Yay!" para "FRESH WATER!" @@ -13,13 +13,13 @@ _UnnamedText_484f3:: ; 9cbcc (27:4bcc) para "You can have this" line "from me!@@" -_UnnamedText_484f9:: ; 9cc06 (27:4c06) +_CeladonMartRoofText_484f9:: ; 9cc06 (27:4c06) text $52, " received" line "@" TX_RAM $cf4b text "!@@" -_UnnamedText_484fe:: ; 9cc1a (27:4c1a) +_CeladonMartRoofText_484fe:: ; 9cc1a (27:4c1a) db $0 para "@" TX_RAM $cf4b @@ -29,7 +29,7 @@ _UnnamedText_484fe:: ; 9cc1a (27:4c1a) para "It can freeze the" line "target sometimes!@@" -_UnnamedText_48504:: ; 9cc5a (27:4c5a) +_CeladonMartRoofText_48504:: ; 9cc5a (27:4c5a) text "Yay!" para "SODA POP!" @@ -39,13 +39,13 @@ _UnnamedText_48504:: ; 9cc5a (27:4c5a) para "You can have this" line "from me!@@" -_UnnamedText_4850a:: ; 9cc91 (27:4c91) +_CeladonMartRoofText_4850a:: ; 9cc91 (27:4c91) text $52, " received" line "@" TX_RAM $cf4b text "!@@" -_UnnamedText_4850f:: ; 9cca5 (27:4ca5) +_CeladonMartRoofText_4850f:: ; 9cca5 (27:4ca5) db $0 para "@" TX_RAM $cf4b @@ -55,7 +55,7 @@ _UnnamedText_4850f:: ; 9cca5 (27:4ca5) para "It can spook the" line "target sometimes!@@" -_UnnamedText_48515:: ; 9cce6 (27:4ce6) +_CeladonMartRoofText_48515:: ; 9cce6 (27:4ce6) text "Yay!" para "LEMONADE!" @@ -69,16 +69,16 @@ _ReceivedTM49Text:: ; 9cd1d (27:4d1d) text $52, " received" line "TM49!@@" -_UnnamedText_48520:: ; 9cd30 (27:4d30) +_CeladonMartRoofText_48520:: ; 9cd30 (27:4d30) db $0 para "TM49 contains" line "TRI ATTACK!@@" -_UnnamedText_48526:: ; 9cd4d (27:4d4d) +_CeladonMartRoofText_48526:: ; 9cd4d (27:4d4d) text "You don't have" line "space for this!@@" -_UnnamedText_4852c:: ; 9cd6d (27:4d6d) +_CeladonMartRoofText_4852c:: ; 9cd6d (27:4d6d) text "No thank you!" line "I'm not thirsty" cont "after all!@@" @@ -93,7 +93,7 @@ _CeladonMartRoofText1:: ; 9cd97 (27:4d97) cont "drives me nuts!" done -_UnnamedText_48598:: ; 9cdee (27:4dee) +_CeladonMartRoofText_48598:: ; 9cdee (27:4dee) text "I'm thirsty!" line "I want something" cont "to drink!" diff --git a/text/maps/celadon_diner.asm b/text/maps/celadon_diner.asm index d6536c49..ee27fadd 100644 --- a/text/maps/celadon_diner.asm +++ b/text/maps/celadon_diner.asm @@ -26,7 +26,7 @@ _CeladonDinerText4:: ; 9dfc9 (27:5fc9) cont "at the slots." done -_UnnamedText_491a7:: ; 9e003 (27:6003) +_CeladonDinerText_491a7:: ; 9e003 (27:6003) text "Go ahead! Laugh!" para "I'm flat out" @@ -52,7 +52,7 @@ _CoinCaseNoRoomText:: ; 9e090 (27:6090) line "this!" done -_UnnamedText_491b7:: ; 9e0a5 (27:60a5) +_CeladonDinerText_491b7:: ; 9e0a5 (27:60a5) text "I always thought" line "I was going to" cont "win it back..." diff --git a/text/maps/celadon_game_corner.asm b/text/maps/celadon_game_corner.asm index c842e964..c08a81b1 100644 --- a/text/maps/celadon_game_corner.asm +++ b/text/maps/celadon_game_corner.asm @@ -7,7 +7,7 @@ _CeladonGameCornerText1:: ; 9d8d5 (27:58d5) cont "next door." done -_UnnamedText_48d22:: ; 9d91a (27:591a) +_CeladonGameCornerText_48d22:: ; 9d91a (27:591a) text "Welcome to ROCKET" line "GAME CORNER!" @@ -19,27 +19,27 @@ _UnnamedText_48d22:: ; 9d91a (27:591a) cont "like some?" done -_UnnamedText_48d27:: ; 9d984 (27:5984) +_CeladonGameCornerText_48d27:: ; 9d984 (27:5984) text "Thanks! Here are" line "your 50 coins!" done -_UnnamedText_48d2c:: ; 9d9a5 (27:59a5) +_CeladonGameCornerText_48d2c:: ; 9d9a5 (27:59a5) text "No? Please come" line "play sometime!" done -_UnnamedText_48d31:: ; 9d9c5 (27:59c5) +_CeladonGameCornerText_48d31:: ; 9d9c5 (27:59c5) text "You can't afford" line "the coins!" done -_UnnamedText_48d36:: ; 9d9e1 (27:59e1) +_CeladonGameCornerText_48d36:: ; 9d9e1 (27:59e1) text "Oops! Your COIN" line "CASE is full." done -_UnnamedText_48d3b:: ; 9da00 (27:5a00) +_CeladonGameCornerText_48d3b:: ; 9da00 (27:5a00) text "You don't have a" line "COIN CASE!" done @@ -58,7 +58,7 @@ _CeladonGameCornerText4:: ; 9da61 (27:5a61) cont "different odds." done -_UnnamedText_48d9c:: ; 9da8e (27:5a8e) +_CeladonGameCornerText_48d9c:: ; 9da8e (27:5a8e) text "Kid, do you want" line "to play?" prompt @@ -67,12 +67,12 @@ _Received10CoinsText:: ; 9daa9 (27:5aa9) text $52, " received" line "10 coins!@@" -_UnnamedText_48da7:: ; 9dac0 (27:5ac0) +_CeladonGameCornerText_48da7:: ; 9dac0 (27:5ac0) text "You don't need my" line "coins!" done -_UnnamedText_48dac:: ; 9dad9 (27:5ad9) +_CeladonGameCornerText_48dac:: ; 9dad9 (27:5ad9) text "Wins seem to come" line "and go." done @@ -82,7 +82,7 @@ _CeladonGameCornerText6:: ; 9daf4 (27:5af4) line "wonderful time!" done -_UnnamedText_48dca:: ; 9db11 (27:5b11) +_CeladonGameCornerText_48dca:: ; 9db11 (27:5b11) text "Hey!" para "You have better" @@ -99,7 +99,7 @@ _UnnamedText_48dca:: ; 9db11 (27:5b11) cont "be fooled!" done -_UnnamedText_48dcf:: ; 9dbac (27:5bac) +_CeladonGameCornerText_48dcf:: ; 9dbac (27:5bac) text "They offer rare" line "#MON that can" cont "be exchanged for" @@ -115,7 +115,7 @@ _CeladonGameCornerText8:: ; 9dc06 (27:5c06) cont "get hooked!" done -_UnnamedText_48e26:: ; 9dc33 (27:5c33) +_CeladonGameCornerText_48e26:: ; 9dc33 (27:5c33) text "What's up? Want" line "some coins?" prompt @@ -124,63 +124,63 @@ _Received20CoinsText:: ; 9dc4f (27:5c4f) text $52, " received" line "20 coins!@@" -_UnnamedText_48e31:: ; 9dc66 (27:5c66) +_CeladonGameCornerText_48e31:: ; 9dc66 (27:5c66) text "You have lots of" line "coins!" done -_UnnamedText_48e36:: ; 9dc7f (27:5c7f) +_CeladonGameCornerText_48e36:: ; 9dc7f (27:5c7f) text "Darn! I need more" line "coins for the" cont "#MON I want!" done -_UnnamedText_48e88:: ; 9dcad (27:5cad) +_CeladonGameCornerText_48e88:: ; 9dcad (27:5cad) text "Hey, what? You're" line "throwing me off!" cont "Here are some" cont "coins, shoo!" prompt -_UnnamedText_48e8d:: ; 9dceb (27:5ceb) +_CeladonGameCornerText_48e8d:: ; 9dceb (27:5ceb) text $52, " received" line "20 coins!@@" -_UnnamedText_48e93:: ; 9dd02 (27:5d02) +_CeladonGameCornerText_48e93:: ; 9dd02 (27:5d02) text "You've got your" line "own coins!" done -_UnnamedText_48e98:: ; 9dd1d (27:5d1d) +_CeladonGameCornerText_48e98:: ; 9dd1d (27:5d1d) text "The trick is to" line "watch the reels" cont "closely!" done -_UnnamedText_48ece:: ; 9dd47 (27:5d47) +_CeladonGameCornerText_48ece:: ; 9dd47 (27:5d47) text "I'm guarding this" line "poster!" cont "Go away, or else!" done -_UnnamedText_48ed3:: ; 9dd73 (27:5d73) +_CeladonGameCornerText_48ed3:: ; 9dd73 (27:5d73) text "Dang!" prompt -_UnnamedText_48ed8:: ; 9dd7a (27:5d7a) +_CeladonGameCornerText_48ed8:: ; 9dd7a (27:5d7a) text "Our hideout might" line "be discovered! I" cont "better tell BOSS!" done -_UnnamedText_48f09:: ; 9ddb0 (27:5db0) +_CeladonGameCornerText_48f09:: ; 9ddb0 (27:5db0) text "Hey!" para "A switch behind" line "the poster!?" cont "Let's push it!@@" -_UnnamedText_48f19:: ; 9dde2 (27:5de2) +_CeladonGameCornerText_48f19:: ; 9dde2 (27:5de2) text "Oops! Forgot the" line "COIN CASE!" done diff --git a/text/maps/celadon_gym.asm b/text/maps/celadon_gym.asm index d607e376..e377365e 100644 --- a/text/maps/celadon_gym.asm +++ b/text/maps/celadon_gym.asm @@ -1,4 +1,4 @@ -_UnnamedText_48a5e:: ; 9d28f (27:528f) +_CeladonGymText_48a5e:: ; 9d28f (27:528f) text "Hello. Lovely" line "weather isn't it?" cont "It's so pleasant." @@ -25,7 +25,7 @@ _UnnamedText_48a5e:: ; 9d28f (27:528f) line "shall not lose." done -_UnnamedText_48a63:: ; 9d3c2 (27:53c2) +_CeladonGymText_48a63:: ; 9d3c2 (27:53c2) text "Oh!" line "I concede defeat." @@ -36,7 +36,7 @@ _UnnamedText_48a63:: ; 9d3c2 (27:53c2) line "the RAINBOWBADGE." prompt -_UnnamedText_48a68:: ; 9d418 (27:5418) +_CeladonGymText_48a68:: ; 9d418 (27:5418) text "You are cataloging" line "#MON? I must" cont "say I'm impressed." @@ -47,7 +47,7 @@ _UnnamedText_48a68:: ; 9d418 (27:5418) cont "unattractive." done -_UnnamedText_48a6d:: ; 9d481 (27:5481) +_CeladonGymText9:: ; 9d481 (27:5481) text "The RAINBOWBADGE" line "will make #MON" cont "up to L50 obey." diff --git a/text/maps/cerulean_badge_house.asm b/text/maps/cerulean_badge_house.asm index 2368cf1c..cc0be659 100644 --- a/text/maps/cerulean_badge_house.asm +++ b/text/maps/cerulean_badge_house.asm @@ -1,4 +1,4 @@ -_UnnamedText_74e77:: ; 990c9 (26:50c9) +_CeruleanHouse2Text_74e77:: ; 990c9 (26:50c9) text "#MON BADGEs" line "are owned only by" cont "skilled trainers." @@ -10,7 +10,7 @@ _UnnamedText_74e77:: ; 990c9 (26:50c9) line "amazing secrets!" prompt -_UnnamedText_74e7c:: ; 9913a (26:513a) +_CeruleanHouse2Text_74e7c:: ; 9913a (26:513a) text "Now then..." para "Which of the 8" @@ -18,12 +18,12 @@ _UnnamedText_74e7c:: ; 9913a (26:513a) cont "describe?" done -_UnnamedText_74e81:: ; 99170 (26:5170) +_CeruleanHouse2Text_74e81:: ; 99170 (26:5170) text "Come visit me any" line "time you wish." done -_UnnamedText_74e96:: ; 99192 (26:5192) +_CeruleanHouse2Text_74e96:: ; 99192 (26:5192) text "The ATTACK of all" line "#MON increases" cont "a little bit." @@ -33,7 +33,7 @@ _UnnamedText_74e96:: ; 99192 (26:5192) cont "time you desire." prompt -_UnnamedText_74e9b:: ; 991f2 (26:51f2) +_CeruleanHouse2Text_74e9b:: ; 991f2 (26:51f2) text "#MON up to L30" line "will obey you." @@ -45,7 +45,7 @@ _UnnamedText_74e9b:: ; 991f2 (26:51f2) cont "of battle." prompt -_UnnamedText_74ea0:: ; 9925d (26:525d) +_CeruleanHouse2Text_74ea0:: ; 9925d (26:525d) text "The SPEED of all" line "#MON increases" cont "a little bit." @@ -55,7 +55,7 @@ _UnnamedText_74ea0:: ; 9925d (26:525d) cont "of battle." prompt -_UnnamedText_74ea5:: ; 992b8 (26:52b8) +_CeruleanHouse2Text_74ea5:: ; 992b8 (26:52b8) text "#MON up to L50" line "will obey you." @@ -67,7 +67,7 @@ _UnnamedText_74ea5:: ; 992b8 (26:52b8) cont "side of battle." prompt -_UnnamedText_74eaa:: ; 9932a (26:532a) +_CeruleanHouse2Text_74eaa:: ; 9932a (26:532a) text "The DEFENSE of all" line "#MON increases" cont "a little bit." @@ -77,7 +77,7 @@ _UnnamedText_74eaa:: ; 9932a (26:532a) cont "of battle." prompt -_UnnamedText_74eaf:: ; 99388 (26:5388) +_CeruleanHouse2Text_74eaf:: ; 99388 (26:5388) text "#MON up to L70" line "will obey you." @@ -85,13 +85,13 @@ _UnnamedText_74eaf:: ; 99388 (26:5388) line "become unruly!" prompt -_UnnamedText_74eb4:: ; 993c7 (26:53c7) +_CeruleanHouse2Text_74eb4:: ; 993c7 (26:53c7) text "Your #MON's" line "SPECIAL abilities" cont "increase a bit." prompt -_UnnamedText_74eb9:: ; 993f5 (26:53f5) +_CeruleanHouse2Text_74eb9:: ; 993f5 (26:53f5) text "All #MON will" line "obey you!" prompt diff --git a/text/maps/cerulean_city.asm b/text/maps/cerulean_city.asm index 5f9e2d7d..1daf3166 100644 --- a/text/maps/cerulean_city.asm +++ b/text/maps/cerulean_city.asm @@ -1,4 +1,4 @@ -_UnnamedText_19668:: ; a4d2b (29:4d2b) +_CeruleanCityText_19668:: ; a4d2b (29:4d2b) text $53, ": Yo!" line $52, "!" @@ -16,19 +16,19 @@ _UnnamedText_19668:: ; a4d2b (29:4d2b) cont $52, "!" done -_UnnamedText_1966d:: ; a4dbe (29:4dbe) +_CeruleanCityText_1966d:: ; a4dbe (29:4dbe) text "Hey!" line "Take it easy!" cont "You won already!" prompt -_UnnamedText_19672:: ; a4de3 (29:4de3) +_CeruleanCityText_19672:: ; a4de3 (29:4de3) text "Heh!" line "You're no match" cont "for my genius!" prompt -_UnnamedText_19677:: ; a4e07 (29:4e07) +_CeruleanCityText_19677:: ; a4e07 (29:4e07) text $53, ": Hey," line "guess what?" @@ -58,7 +58,7 @@ _UnnamedText_19677:: ; a4e07 (29:4e07) cont "Smell ya later!" done -_UnnamedText_196d9:: ; a4f27 (29:4f27) +_CeruleanCityText_196d9:: ; a4f27 (29:4f27) text "Hey! Stay out!" line "It's not your" cont "yard! Huh? Me?" @@ -85,13 +85,13 @@ _TM28NoRoomText:: ; a4fb3 (29:4fb3) line "I give it to you!" done -_UnnamedText_196ee:: ; a4feb (29:4feb) +_CeruleanCityText_196ee:: ; a4feb (29:4feb) text "Stop!" line "I give up! I'll" cont "leave quietly!" prompt -_UnnamedText_196f3:: ; a5010 (29:5010) +_CeruleanCityText_196f3:: ; a5010 (29:5010) text "OK! I'll return" line "the TM I stole!" prompt @@ -133,20 +133,20 @@ _CeruleanCityText6:: ; a50f6 (29:50f6) cont "with the ROCKETs!" done -_UnnamedText_19730:: ; a5188 (29:5188) +_CeruleanCityText_19730:: ; a5188 (29:5188) text "OK! SLOWBRO!" line "Use SONICBOOM!" cont "Come on, SLOWBRO" cont "pay attention!" done -_UnnamedText_19735:: ; a51c5 (29:51c5) +_CeruleanCityText_19735:: ; a51c5 (29:51c5) text "SLOWBRO punch!" line "No! You blew it" cont "again!" done -_UnnamedText_1973a:: ; a51ec (29:51ec) +_CeruleanCityText_1973a:: ; a51ec (29:51ec) text "SLOWBRO, WITHDRAW!" line "No! That's wrong!" @@ -159,22 +159,22 @@ _UnnamedText_1973a:: ; a51ec (29:51ec) cont "as a trainer!" done -_UnnamedText_1976f:: ; a526b (29:526b) +_CeruleanCityText_1976f:: ; a526b (29:526b) text "SLOWBRO took a" line "snooze..." done -_UnnamedText_19774:: ; a5285 (29:5285) +_CeruleanCityText_19774:: ; a5285 (29:5285) text "SLOWBRO is" line "loafing around..." done -_UnnamedText_19779:: ; a52a3 (29:52a3) +_CeruleanCityText_19779:: ; a52a3 (29:52a3) text "SLOWBRO turned" line "away..." done -_UnnamedText_1977e:: ; a52bb (29:52bb) +_CeruleanCityText_1977e:: ; a52bb (29:52bb) text "SLOWBRO" line "ignored orders..." done diff --git a/text/maps/cerulean_gym.asm b/text/maps/cerulean_gym.asm index 59ff424c..b0d2d3d1 100644 --- a/text/maps/cerulean_gym.asm +++ b/text/maps/cerulean_gym.asm @@ -1,4 +1,4 @@ -_UnnamedText_5c7be:: ; 989c1 (26:49c1) +_CeruleanGymText_5c7be:: ; 989c1 (26:49c1) text "Hi, you're a new" line "face!" @@ -17,7 +17,7 @@ _UnnamedText_5c7be:: ; 989c1 (26:49c1) cont "#MON!" done -_UnnamedText_5c7c3:: ; 98a7b (26:4a7b) +_CeruleanGymText_5c7c3:: ; 98a7b (26:4a7b) text "TM11 teaches" line "BUBBLEBEAM!" @@ -25,7 +25,7 @@ _UnnamedText_5c7c3:: ; 98a7b (26:4a7b) line "aquatic #MON!" done -_UnnamedText_5c7c8:: ; 98ab0 (26:4ab0) +_CeruleanGymText_5c7c8:: ; 98ab0 (26:4ab0) text "The CASCADEBADGE" line "makes all #MON" cont "up to L30 obey!" @@ -49,12 +49,12 @@ _ReceivedTM11Text:: ; 98b7d (26:4b7d) text $52, " received" line "TM11!@@" -_UnnamedText_5c7d3:: ; 98b90 (26:4b90) +_CeruleanGymText_5c7d3:: ; 98b90 (26:4b90) text "You better make" line "room for this!" done -_UnnamedText_5c7d8:: ; 98bb0 (26:4bb0) +_CeruleanGymText_5c7d8:: ; 98bb0 (26:4bb0) text "Wow!" line "You're too much!" @@ -103,7 +103,7 @@ _CeruleanGymAfterBattleText2:: ; 98cc4 (26:4cc4) line "someone like you!" done -_UnnamedText_5c82a:: ; 98d0a (26:4d0a) +_CeruleanGymText_5c82a:: ; 98d0a (26:4d0a) text "Yo! Champ in" line "making!" @@ -121,7 +121,7 @@ _UnnamedText_5c82a:: ; 98d0a (26:4d0a) line "electricity!" done -_UnnamedText_5c82f:: ; 98db0 (26:4db0) +_CeruleanGymText_5c82f:: ; 98db0 (26:4db0) text "You beat MISTY!" line "What'd I tell ya?" diff --git a/text/maps/cerulean_trashed_house.asm b/text/maps/cerulean_trashed_house.asm index b8334bc4..83f87cb8 100644 --- a/text/maps/cerulean_trashed_house.asm +++ b/text/maps/cerulean_trashed_house.asm @@ -1,4 +1,4 @@ -_UnnamedText_1d6ab:: ; 9875c (26:475c) +_CeruleanTrashedText_1d6ab:: ; 9875c (26:475c) text "Those miserable" line "ROCKETs!" @@ -14,7 +14,7 @@ _UnnamedText_1d6ab:: ; 9875c (26:475c) line "bundle, it did!" done -_UnnamedText_1d6b0:: ; 987e2 (26:47e2) +_CeruleanTrashedText_1d6b0:: ; 987e2 (26:47e2) text "I figure what's" line "lost is lost!" diff --git a/text/maps/champion.asm b/text/maps/champion.asm index 87b93300..259d530b 100644 --- a/text/maps/champion.asm +++ b/text/maps/champion.asm @@ -1,4 +1,4 @@ -_UnnamedText_760f4:: ; 860e1 (21:60e1) +_GaryText_760f4:: ; 860e1 (21:60e1) text $53, ": Hey!" para "I was looking" @@ -35,7 +35,7 @@ _UnnamedText_760f4:: ; 860e1 (21:60e1) cont "in the world!" done -_UnnamedText_760f9:: ; 8623b (21:623b) +_GaryText_760f9:: ; 8623b (21:623b) text "NO!" line "That can't be!" cont "You beat my best!" @@ -49,7 +49,7 @@ _UnnamedText_760f9:: ; 8623b (21:623b) cont "It's not fair!" prompt -_UnnamedText_760fe:: ; 862b4 (21:62b4) +_GaryText_760fe:: ; 862b4 (21:62b4) text "Hahaha!" line "I won, I won!" @@ -65,7 +65,7 @@ _UnnamedText_760fe:: ; 862b4 (21:62b4) line "Hahaha!" prompt -_UnnamedText_76103:: ; 8632f (21:632f) +_GaryText_76103:: ; 8632f (21:632f) text "Why?" line "Why did I lose?" @@ -85,7 +85,7 @@ _GaryText2:: ; 863c1 (21:63c1) text "OAK: ", $52, "!" done -_UnnamedText_76120:: ; 863ca (21:63ca) +_GaryText_76120:: ; 863ca (21:63ca) text "OAK: So, you won!" line "Congratulations!" cont "You're the new" @@ -103,7 +103,7 @@ _UnnamedText_76120:: ; 863ca (21:63ca) line "come of age!" done -_UnnamedText_76125:: ; 86463 (21:6463) +_GaryText_76125:: ; 86463 (21:6463) text "OAK: ", $53, "! I'm" line "disappointed!" @@ -129,7 +129,7 @@ _UnnamedText_76125:: ; 86463 (21:6463) cont "a champ again!" done -_UnnamedText_7612a:: ; 86567 (21:6567) +_GaryText_7612a:: ; 86567 (21:6567) text "OAK: ", $52, "!" para "You understand" diff --git a/text/maps/cinnabar_gym.asm b/text/maps/cinnabar_gym.asm index adf6f535..4d8f796e 100644 --- a/text/maps/cinnabar_gym.asm +++ b/text/maps/cinnabar_gym.asm @@ -65,18 +65,18 @@ _TM38NoRoomText:: ; a0a1e (28:4a1e) line "gift!" done -_UnnamedText_7595f:: ; a0a36 (28:4a36) +_CinnabarGymText_7595f:: ; a0a36 (28:4a36) text "Do you know how" line "hot #MON fire" cont "breath can get?" done -_UnnamedText_75964:: ; a0a65 (28:4a65) +_CinnabarGymText_75964:: ; a0a65 (28:4a65) text "Yow!" line "Hot, hot, hot!" prompt -_UnnamedText_75969:: ; a0a7a (28:4a7a) +_CinnabarGymText_75969:: ; a0a7a (28:4a7a) text "Fire, or to be" line "more precise," cont "combustion..." @@ -85,66 +85,66 @@ _UnnamedText_75969:: ; a0a7a (28:4a7a) line "blah..." done -_UnnamedText_75994:: ; a0ac0 (28:4ac0) +_CinnabarGymText_75994:: ; a0ac0 (28:4ac0) text "I was a thief, but" line "I became straight" cont "as a trainer!" done -_UnnamedText_75999:: ; a0af4 (28:4af4) +_CinnabarGymText_75999:: ; a0af4 (28:4af4) text "I" line "surrender!" prompt -_UnnamedText_7599e:: ; a0b02 (28:4b02) +_CinnabarGymText_7599e:: ; a0b02 (28:4b02) text "I can't help" line "stealing other" cont "people's #MON!" done -_UnnamedText_759c9:: ; a0b2c (28:4b2c) +_CinnabarGymText_759c9:: ; a0b2c (28:4b2c) text "You can't win!" line "I have studied" cont "#MON totally!" done -_UnnamedText_759ce:: ; a0b58 (28:4b58) +_CinnabarGymText_759ce:: ; a0b58 (28:4b58) text "Waah!" line "My studies!" prompt -_UnnamedText_759d3:: ; a0b6b (28:4b6b) +_CinnabarGymText_759d3:: ; a0b6b (28:4b6b) text "My theories are" line "too complicated" cont "for you!" done -_UnnamedText_759fe:: ; a0b95 (28:4b95) +_CinnabarGymText_759fe:: ; a0b95 (28:4b95) text "I just like using" line "fire #MON!" done -_UnnamedText_75a03:: ; a0bb3 (28:4bb3) +_CinnabarGymText_75a03:: ; a0bb3 (28:4bb3) text "Too hot" line "to handle!" prompt -_UnnamedText_75a08:: ; a0bc7 (28:4bc7) +_CinnabarGymText_75a08:: ; a0bc7 (28:4bc7) text "I wish there was" line "a thief #MON!" cont "I'd use that!" done -_UnnamedText_75a33:: ; a0bf4 (28:4bf4) +_CinnabarGymText_75a33:: ; a0bf4 (28:4bf4) text "I know why BLAINE" line "became a trainer!" done -_UnnamedText_75a38:: ; a0c19 (28:4c19) +_CinnabarGymText_75a38:: ; a0c19 (28:4c19) text "Ow!" prompt -_UnnamedText_75a3d:: ; a0c1e (28:4c1e) +_CinnabarGymText_75a3d:: ; a0c1e (28:4c1e) text "BLAINE was lost" line "in the mountains" cont "when a fiery bird" @@ -155,40 +155,40 @@ _UnnamedText_75a3d:: ; a0c1e (28:4c1e) cont "his way down!" done -_UnnamedText_75a68:: ; a0c90 (28:4c90) +_CinnabarGymText_75a68:: ; a0c90 (28:4c90) text "I've been to many" line "GYMs, but this is" cont "my favorite!" done -_UnnamedText_75a6d:: ; a0cc1 (28:4cc1) +_CinnabarGymText_75a6d:: ; a0cc1 (28:4cc1) text "Yowza!" line "Too hot!" prompt -_UnnamedText_75a72:: ; a0cd2 (28:4cd2) +_CinnabarGymText_75a72:: ; a0cd2 (28:4cd2) text "Us fire #MON" line "fans like PONYTA" cont "and NINETALES!" done -_UnnamedText_75a9d:: ; a0d00 (28:4d00) +_CinnabarGymText_75a9d:: ; a0d00 (28:4d00) text "Fire is weak" line "against H2O!" done -_UnnamedText_75aa2:: ; a0d1b (28:4d1b) +_CinnabarGymText_75aa2:: ; a0d1b (28:4d1b) text "Oh!" line "Snuffed out!" prompt -_UnnamedText_75aa7:: ; a0d2d (28:4d2d) +_CinnabarGymText_75aa7:: ; a0d2d (28:4d2d) text "Water beats fire!" line "But, fire melts" cont "ice #MON!" done -_UnnamedText_75ac2:: ; a0d5a (28:4d5a) +_CinnabarGymText_75ac2:: ; a0d5a (28:4d5a) text "Yo! Champ in" line "making!" @@ -203,7 +203,7 @@ _UnnamedText_75ac2:: ; a0d5a (28:4d5a) line "some BURN HEALs!" done -_UnnamedText_75ac7:: ; a0dd9 (28:4dd9) +_CinnabarGymText_75ac7:: ; a0dd9 (28:4dd9) text $52, "! You beat" line "that fire brand!" done diff --git a/text/maps/cinnabar_lab_fossil_room.asm b/text/maps/cinnabar_lab_fossil_room.asm index 63d56bad..3e544bd6 100644 --- a/text/maps/cinnabar_lab_fossil_room.asm +++ b/text/maps/cinnabar_lab_fossil_room.asm @@ -1,4 +1,4 @@ -_UnnamedText_75dc6:: ; a10e8 (28:50e8) +_Lab4Text_75dc6:: ; a10e8 (28:50e8) text "Hiya!" para "I am important" @@ -11,11 +11,11 @@ _UnnamedText_75dc6:: ; a10e8 (28:50e8) line "fossil for me?" prompt -_UnnamedText_75dcb:: ; a1145 (28:5145) +_Lab4Text_75dcb:: ; a1145 (28:5145) text "No! Is too bad!" done -_UnnamedText_75dd0:: ; a1156 (28:5156) +_Lab4Text_75dd0:: ; a1156 (28:5156) text "I take a little" line "time!" @@ -23,7 +23,7 @@ _UnnamedText_75dd0:: ; a1156 (28:5156) line "little while!" done -_UnnamedText_75dd5:: ; a118d (28:518d) +_Lab4Text_75dd5:: ; a118d (28:518d) text "Where were you?" para "Your fossil is" @@ -35,7 +35,7 @@ _UnnamedText_75dd5:: ; a118d (28:518d) line "like I think!" prompt -_UnnamedText_610ae:: ; a11d6 (28:51d6) +_Lab4Text_610ae:: ; a11d6 (28:51d6) text "Oh! That is" line "@" TX_RAM $cd6d @@ -54,7 +54,7 @@ _UnnamedText_610ae:: ; a11d6 (28:51d6) cont "again!" done -_UnnamedText_610b3:: ; a1259 (28:5259) +_Lab4Text_610b3:: ; a1259 (28:5259) text "So! You hurry and" line "give me that!" @@ -64,7 +64,7 @@ _UnnamedText_610b3:: ; a1259 (28:5259) text "!" prompt -_UnnamedText_610b8:: ; a128f (28:528f) +_Lab4Text_610b8:: ; a128f (28:528f) text "I take a little" line "time!" @@ -72,7 +72,7 @@ _UnnamedText_610b8:: ; a128f (28:528f) line "little while!" done -_UnnamedText_610bd:: ; a12c6 (28:52c6) +_Lab4Text_610bd:: ; a12c6 (28:52c6) text "Aiyah! You come" line "again!" done diff --git a/text/maps/copycats_house_2f.asm b/text/maps/copycats_house_2f.asm index c818f034..502f7611 100644 --- a/text/maps/copycats_house_2f.asm +++ b/text/maps/copycats_house_2f.asm @@ -1,4 +1,4 @@ -_UnnamedText_5ccd4:: ; a15ad (28:55ad) +_CopycatsHouse2FText_5ccd4:: ; a15ad (28:55ad) text $52, ": Hi! Do" line "you like #MON?" @@ -79,7 +79,7 @@ _CopycatsHouse2FText6:: ; a17be (28:57be) cont "on his head!" done -_UnnamedText_5cd17:: ; a17ef (28:57ef) +_CopycatsHouse2FText_5cd17:: ; a17ef (28:57ef) text "..." para "My Secrets!" @@ -91,7 +91,7 @@ _UnnamedText_5cd17:: ; a17ef (28:57ef) cont "CLEFAIRY!" done -_UnnamedText_5cd1c:: ; a1842 (28:5842) +_CopycatsHouse2FText_5cd1c:: ; a1842 (28:5842) text "Huh? Can't see!" done diff --git a/text/maps/daycare_1.asm b/text/maps/daycare_1.asm index 6a0c08fe..1743cbc3 100644 --- a/text/maps/daycare_1.asm +++ b/text/maps/daycare_1.asm @@ -1,16 +1,16 @@ -_UnnamedText_5640f:: ; 8ab95 (22:6b95) +_DayCareMText_5640f:: ; 8ab95 (22:6b95) text "I run a DAYCARE." line "Would you like me" cont "to raise one of" cont "your #MON?" done -_UnnamedText_56414:: ; 8abd4 (22:6bd4) +_DayCareMText_56414:: ; 8abd4 (22:6bd4) text "Which #MON" line "should I raise?" prompt -_UnnamedText_56419:: ; 8abf0 (22:6bf0) +_DayCareMText_56419:: ; 8abf0 (22:6bf0) text "Fine, I'll look" line "after @" TX_RAM $cd6d @@ -18,12 +18,12 @@ _UnnamedText_56419:: ; 8abf0 (22:6bf0) cont "for a while." prompt -_UnnamedText_5641e:: ; 8ac19 (22:6c19) +_DayCareMText_5641e:: ; 8ac19 (22:6c19) text "Come see me in" line "a while." done -_UnnamedText_56423:: ; 8ac32 (22:6c32) +_DayCareMText_56423:: ; 8ac32 (22:6c32) text "Your @" TX_RAM $cd6d db $0 @@ -32,14 +32,14 @@ _UnnamedText_56423:: ; 8ac32 (22:6c32) para "By level, it's" line "grown by @" -UnnamedText_8ac67:: ; 8ac67 (22:6c67) +DayCareMText_8ac67:: ; 8ac67 (22:6c67) TX_NUM $cd3e,$1,$3 text "!" para "Aren't I great?" prompt -_UnnamedText_56428:: ; 8ac7d (22:6c7d) +_DayCareMText_56428:: ; 8ac7d (22:6c7d) text "You owe me ¥@" db $2, $3f, $cd, $c2 db $0 @@ -47,14 +47,14 @@ _UnnamedText_56428:: ; 8ac7d (22:6c7d) cont "of this #MON." done -_UnnamedText_5642d:: ; 8acae (22:6cae) +_DayCareMText_5642d:: ; 8acae (22:6cae) text $52, " got" line "@" TX_RAM W_DAYCAREMONNAME text " back!" done -_UnnamedText_56432:: ; 8acc1 (22:6cc1) +_DayCareMText_56432:: ; 8acc1 (22:6cc1) text "Back already?" line "Your @" TX_RAM $cd6d diff --git a/text/maps/daycare_2.asm b/text/maps/daycare_2.asm index 2ee13180..ac9720ba 100644 --- a/text/maps/daycare_2.asm +++ b/text/maps/daycare_2.asm @@ -1,33 +1,33 @@ -_UnnamedText_56437:: ; 8c000 (23:4000) +_DayCareMText_56437:: ; 8c000 (23:4000) text "All right then," line "@@" -_UnnamedText_5643b:: ; 8c013 (23:4013) +_DayCareMText_5643b:: ; 8c013 (23:4013) text "come again." done -_UnnamedText_56440:: ; 8c020 (23:4020) +_DayCareMText_56440:: ; 8c020 (23:4020) text "You have no room" line "for this #MON!" done -_UnnamedText_56445:: ; 8c041 (23:4041) +_DayCareMText_56445:: ; 8c041 (23:4041) text "You only have one" line "#MON with you." done -_UnnamedText_5644a:: ; 8c063 (23:4063) +_DayCareMText_5644a:: ; 8c063 (23:4063) text "I can't accept a" line "#MON that" cont "knows an HM move." done -_UnnamedText_5644f:: ; 8c090 (23:4090) +_DayCareMText_5644f:: ; 8c090 (23:4090) text "Thank you! Here's" line "your #MON!" prompt -_UnnamedText_56454:: ; 8c0ad (23:40ad) +_DayCareMText_56454:: ; 8c0ad (23:40ad) text "Hey, you don't" line "have enough ¥!" done diff --git a/text/maps/fighting_dojo.asm b/text/maps/fighting_dojo.asm index 802f7276..6f01e5fa 100644 --- a/text/maps/fighting_dojo.asm +++ b/text/maps/fighting_dojo.asm @@ -1,4 +1,4 @@ -_UnnamedText_5ce8e:: ; a1852 (28:5852) +_FightingDojoText_5ce8e:: ; a1852 (28:5852) text "Grunt!" para "I am the KARATE" @@ -12,12 +12,12 @@ _UnnamedText_5ce8e:: ; a1852 (28:5852) para "Fwaaa!" done -_UnnamedText_5ce93:: ; a18ba (28:58ba) +_FightingDojoText_5ce93:: ; a18ba (28:58ba) text "Hwa!" line "Arrgh! Beaten!" prompt -_UnnamedText_5ce98:: ; a18cf (28:58cf) +_FightingDojoText_5ce98:: ; a18cf (28:58cf) text "Indeed, I have" line "lost!" @@ -34,7 +34,7 @@ _UnnamedText_5ce98:: ; a18cf (28:58cf) line "one you like!" done -_UnnamedText_5ce9d:: ; a1972 (28:5972) +_FightingDojoText_5ce9d:: ; a1972 (28:5972) text "Ho!" para "Stay and train at" diff --git a/text/maps/fuchsia_city.asm b/text/maps/fuchsia_city.asm index 07909c04..aa35c16d 100644 --- a/text/maps/fuchsia_city.asm +++ b/text/maps/fuchsia_city.asm @@ -114,7 +114,7 @@ _FuchsiaCityKabutoText:: ; a6191 (29:6191) cont "from a fossil." prompt -_UnnamedText_19b2a:: ; a61ca (29:61ca) +_FuchsiaCityText_19b2a:: ; a61ca (29:61ca) text "..." done diff --git a/text/maps/fuchsia_fishing_house.asm b/text/maps/fuchsia_fishing_house.asm index abe94780..5ad09ef0 100644 --- a/text/maps/fuchsia_fishing_house.asm +++ b/text/maps/fuchsia_fishing_house.asm @@ -1,4 +1,4 @@ -_UnnamedText_561bd:: ; a0695 (28:4695) +_FuchsiaHouse3Text_561bd:: ; a0695 (28:4695) text "I'm the FISHING" line "GURU's older" cont "brother!" @@ -10,7 +10,7 @@ _UnnamedText_561bd:: ; a0695 (28:4695) line "fish?" done -_UnnamedText_561c2:: ; a06e8 (28:46e8) +_FuchsiaHouse3Text_561c2:: ; a06e8 (28:46e8) text "Grand! I like" line "your style!" @@ -22,12 +22,12 @@ _UnnamedText_561c2:: ; a06e8 (28:46e8) TX_RAM $cf4b text "!@@" -_UnnamedText_56212:: ; a0737 (28:4737) +_FuchsiaHouse3Text_56212:: ; a0737 (28:4737) text "Oh... That's so" line "disappointing..." done -_UnnamedText_56217:: ; a0758 (28:4758) +_FuchsiaHouse3Text_56217:: ; a0758 (28:4758) text "Hello there," line $52, "!" @@ -35,7 +35,7 @@ _UnnamedText_56217:: ; a0758 (28:4758) line "biting?" done -_UnnamedText_5621c:: ; a0782 (28:4782) +_FuchsiaHouse3Text_5621c:: ; a0782 (28:4782) text "Oh no!" para "You have no room" diff --git a/text/maps/fujis_house.asm b/text/maps/fujis_house.asm index 44d8c601..033777c2 100644 --- a/text/maps/fujis_house.asm +++ b/text/maps/fujis_house.asm @@ -1,16 +1,16 @@ -_UnnamedText_1d8d1:: ; 99e8d (26:5e8d) +_LavenderHouse1Text_1d8d1:: ; 99e8d (26:5e8d) text "That's odd, MR.FUJI" line "isn't here." cont "Where'd he go?" done -_UnnamedText_1d8d6:: ; 99eba (26:5eba) +_LavenderHouse1Text_1d8d6:: ; 99eba (26:5eba) text "MR.FUJI had been" line "praying alone for" cont "CUBONE's mother." done -_UnnamedText_1d8f4:: ; 99eee (26:5eee) +_LavenderHouse1Text_1d8f4:: ; 99eee (26:5eee) text "This is really" line "MR.FUJI's house." @@ -21,7 +21,7 @@ _UnnamedText_1d8f4:: ; 99eee (26:5eee) cont "orphaned #MON!" done -_UnnamedText_1d8f9:: ; 99f4b (26:5f4b) +_LavenderHouse1Text_1d8f9:: ; 99f4b (26:5f4b) text "It's so warm!" line "#MON are so" cont "nice to hug!" @@ -33,7 +33,7 @@ _LavenderHouse1Text3:: ; 99f72 (26:5f72) _LavenderHouse1Text4:: ; 99f85 (26:5f85) text "NIDORINO: Gaoo!@@" -_UnnamedText_1d94c:: ; 99f97 (26:5f97) +_LavenderHouse1Text_1d94c:: ; 99f97 (26:5f97) text "MR.FUJI: ", $52, "." para "Your #DEX quest" diff --git a/text/maps/lavender_house.asm b/text/maps/lavender_house.asm index 444e600a..0ae3a1fe 100644 --- a/text/maps/lavender_house.asm +++ b/text/maps/lavender_house.asm @@ -1,7 +1,7 @@ _LavenderHouse2Text1:: ; 9a238 (26:6238) text "CUBONE: Kyarugoo!@@" -_UnnamedText_1d9dc:: ; 9a24c (26:624c) +_LavenderHouse2Text_1d9dc:: ; 9a24c (26:624c) text "I hate those" line "horrible ROCKETs!" @@ -13,7 +13,7 @@ _UnnamedText_1d9dc:: ; 9a24c (26:624c) cont "from TEAM ROCKET!" done -_UnnamedText_1d9e1:: ; 9a2b9 (26:62b9) +_LavenderHouse2Text_1d9e1:: ; 9a2b9 (26:62b9) text "The GHOST of" line "#MON TOWER is" cont "gone!" diff --git a/text/maps/lavender_mart.asm b/text/maps/lavender_mart.asm index 2438ab22..53ebdae3 100644 --- a/text/maps/lavender_mart.asm +++ b/text/maps/lavender_mart.asm @@ -14,13 +14,13 @@ _LavenderMartText2:: ; 9a104 (26:6104) line "I can get them?" done -_UnnamedText_5c953:: ; 9a1b4 (26:61b4) +_LavenderMart_5c953:: ; 9a1b4 (26:61b4) text "You know REVIVE?" line "It revives any" cont "fainted #MON!" done -_UnnamedText_5c958:: ; 9a1e3 (26:61e3) +_LavenderMart_5c958:: ; 9a1e3 (26:61e3) text "I found a NUGGET" line "in the mountains." diff --git a/text/maps/lavender_town.asm b/text/maps/lavender_town.asm index a12bde55..f6485c6f 100644 --- a/text/maps/lavender_town.asm +++ b/text/maps/lavender_town.asm @@ -1,14 +1,14 @@ -_UnnamedText_4413c:: ; a5482 (29:5482) +_LavenderTownText_4413c:: ; a5482 (29:5482) text "Do you believe in" line "GHOSTs?" done -_UnnamedText_44141:: ; a549d (29:549d) +_LavenderTownText_44141:: ; a549d (29:549d) text "Really? So there" line "are believers..." done -_UnnamedText_44146:: ; a54c0 (29:54c0) +_LavenderTownText_44146:: ; a54c0 (29:54c0) text "Hahaha, I guess" line "not." diff --git a/text/maps/lorelei.asm b/text/maps/lorelei.asm index cb007464..a75b50d9 100644 --- a/text/maps/lorelei.asm +++ b/text/maps/lorelei.asm @@ -36,7 +36,7 @@ _LoreleiAfterBattleText:: ; 866d3 (21:66d3) cont "LEAGUE power!" done -_UnnamedText_7627b:: ; 86729 (21:6729) +_LoreleiText2:: ; 86729 (21:6729) text "Someone's voice:" line "Don't run away!" done diff --git a/text/maps/mansion_2f.asm b/text/maps/mansion_2f.asm index 49e28a19..057e05e2 100644 --- a/text/maps/mansion_2f.asm +++ b/text/maps/mansion_2f.asm @@ -32,17 +32,17 @@ _Mansion2Text4:: ; 85389 (21:5389) cont "#MON, MEW." done -_UnnamedText_520c2:: ; 853c7 (21:53c7) +_Mansion2Text_520c2:: ; 853c7 (21:53c7) text "A secret switch!" para "Press it?" done -_UnnamedText_520c7:: ; 853e3 (21:53e3) +_Mansion2Text_520c7:: ; 853e3 (21:53e3) text "Who wouldn't?" prompt -_UnnamedText_520cc:: ; 853f1 (21:53f1) +_Mansion2Text_520cc:: ; 853f1 (21:53f1) text "Not quite yet!" done diff --git a/text/maps/mt_moon_b1f.asm b/text/maps/mt_moon_b1f.asm index d6d7dd7f..8421fdb0 100644 --- a/text/maps/mt_moon_b1f.asm +++ b/text/maps/mt_moon_b1f.asm @@ -1,4 +1,4 @@ -_UnnamedText_51a48:: ; 8095c (20:495c) +_MtMoonText1:: ; 8095c (20:495c) db $0 done diff --git a/text/maps/mt_moon_b2f.asm b/text/maps/mt_moon_b2f.asm index 6af39872..4088e280 100644 --- a/text/maps/mt_moon_b2f.asm +++ b/text/maps/mt_moon_b2f.asm @@ -1,24 +1,24 @@ -_UnnamedText_49f24:: ; 8095e (20:495e) +_MtMoon3Text_49f24:: ; 8095e (20:495e) text "You want the" line "DOME FOSSIL?" done -_UnnamedText_49f64:: ; 80979 (20:4979) +_MtMoon3Text_49f64:: ; 80979 (20:4979) text "You want the" line "HELIX FOSSIL?" done -_UnnamedText_49f6f:: ; 80995 (20:4995) +_MtMoon3Text_49f6f:: ; 80995 (20:4995) text $52, " got the" line "@" TX_RAM $cf4b text "!@@" -_UnnamedText_49f7f:: ; 809a8 (20:49a8) +_MtMoon3Text_49f7f:: ; 809a8 (20:49a8) text "Look, you've got" line "no room for this.@@" -_UnnamedText_49f85:: ; 809cc (20:49cc) +_MtMoon3Text_49f85:: ; 809cc (20:49cc) text "Hey, stop!" para "I found these" @@ -26,18 +26,18 @@ _UnnamedText_49f85:: ; 809cc (20:49cc) cont "both mine!" done -_UnnamedText_49f8a:: ; 80a01 (20:4a01) +_MtMoon3Text_49f8a:: ; 80a01 (20:4a01) text "OK!" line "I'll share!" prompt -_UnnamedText_49f8f:: ; 80a11 (20:4a11) +_MtMoon3Text_49f8f:: ; 80a11 (20:4a11) text "We'll each take" line "one!" cont "No being greedy!" done -_UnnamedText_49f94:: ; 80a37 (20:4a37) +_MtMoon3Text_49f94:: ; 80a37 (20:4a37) text "Far away, on" line "CINNABAR ISLAND," cont "there's a #MON" @@ -48,7 +48,7 @@ _UnnamedText_49f94:: ; 80a37 (20:4a37) cont "fossils." done -_UnnamedText_49f99:: ; 80a93 (20:4a93) +_MtMoon3Text_49f99:: ; 80a93 (20:4a93) text "All right. Then" line "this is mine!@@" diff --git a/text/maps/mt_moon_pokecenter.asm b/text/maps/mt_moon_pokecenter.asm index 54186253..2ae50a13 100644 --- a/text/maps/mt_moon_pokecenter.asm +++ b/text/maps/mt_moon_pokecenter.asm @@ -16,7 +16,7 @@ _MtMoonPokecenterText3:: ; 8a929 (22:6929) cont "news!" done -_UnnamedText_4935c:: ; 8a976 (22:6976) +_MtMoonPokecenterText_4935c:: ; 8a976 (22:6976) text "MAN: Hello, there!" line "Have I got a deal" cont "just for you!" @@ -27,18 +27,18 @@ _UnnamedText_4935c:: ; 8a976 (22:6976) cont "What do you say?" done -_UnnamedText_49361:: ; 8a9ec (22:69ec) +_MtMoonPokecenterText_49361:: ; 8a9ec (22:69ec) text "No? I'm only" line "doing this as a" cont "favor to you!" done -_UnnamedText_49366:: ; 8aa17 (22:6a17) +_MtMoonPokecenterText_49366:: ; 8aa17 (22:6a17) text "You'll need more" line "money than that!" done -_UnnamedText_4936b:: ; 8aa39 (22:6a39) +_MtMoonPokecenterText_4936b:: ; 8aa39 (22:6a39) text "MAN: Well, I don't" line "give refunds!" done diff --git a/text/maps/museum_1f.asm b/text/maps/museum_1f.asm index 250dd031..f5f847d3 100644 --- a/text/maps/museum_1f.asm +++ b/text/maps/museum_1f.asm @@ -1,8 +1,8 @@ -_UnnamedText_5c21a:: ; 9652c (25:652c) +_Museum1FText_5c21a:: ; 9652c (25:652c) text "Come again!" done -_UnnamedText_5c21f:: ; 96539 (25:6539) +_Museum1FText_5c21f:: ; 96539 (25:6539) text "It's ¥50 for a" line "child's ticket." @@ -10,17 +10,17 @@ _UnnamedText_5c21f:: ; 96539 (25:6539) line "come in?" done -_UnnamedText_5c224:: ; 96572 (25:6572) +_Museum1FText_5c224:: ; 96572 (25:6572) text "Right, ¥50!" line "Thank you!" done -_UnnamedText_5c229:: ; 9658a (25:658a) +_Museum1FText_5c229:: ; 9658a (25:658a) text "You don't have" line "enough money." prompt -_UnnamedText_5c22e:: ; 965a7 (25:65a7) +_Museum1FText_5c22e:: ; 965a7 (25:65a7) text "You can't sneak" line "in the back way!" @@ -29,7 +29,7 @@ _UnnamedText_5c22e:: ; 965a7 (25:65a7) cont "AMBER is?" done -_UnnamedText_5c233:: ; 965f1 (25:65f1) +_Museum1FText_5c233:: ; 965f1 (25:65f1) text "There's a lab" line "somewhere trying" cont "to resurrect" @@ -37,28 +37,28 @@ _UnnamedText_5c233:: ; 965f1 (25:65f1) cont "from AMBER." done -_UnnamedText_5c238:: ; 96636 (25:6636) +_Museum1FText_5c238:: ; 96636 (25:6636) text "AMBER is fossil-" line "ized tree sap." done -_UnnamedText_5c23d:: ; 96657 (25:6657) +_Museum1FText_5c23d:: ; 96657 (25:6657) text "Please go to the" line "other side!" done -_UnnamedText_5c242:: ; 96675 (25:6675) +_Museum1FText_5c242:: ; 96675 (25:6675) text "Take plenty of" line "time to look!" done -_UnnamedText_5c251:: ; 96693 (25:6693) +_Museum1FText_5c251:: ; 96693 (25:6693) text "That is one" line "magnificent" cont "fossil!" done -_UnnamedText_5c28e:: ; 966b4 (25:66b4) +_Museum1FText_5c28e:: ; 966b4 (25:66b4) text "Ssh! I think that" line "this chunk of" cont "AMBER contains" @@ -84,24 +84,24 @@ _ReceivedOldAmberText:: ; 96790 (25:6790) text $52, " received" line "OLD AMBER!@@" -_UnnamedText_5c299:: ; 967a8 (25:67a8) +_Museum1FText_5c299:: ; 967a8 (25:67a8) text "Ssh! Get the OLD" line "AMBER checked!" done -_UnnamedText_5c29e:: ; 967c9 (25:67c9) +_Museum1FText_5c29e:: ; 967c9 (25:67c9) text "You don't have" line "space for this!" done -_UnnamedText_5c2ad:: ; 967e8 (25:67e8) +_Museum1FText_5c2ad:: ; 967e8 (25:67e8) text "We are proud of 2" line "fossils of very" cont "rare, prehistoric" cont "#MON!" done -_UnnamedText_5c2bc:: ; 96823 (25:6823) +_Museum1FText_5c2bc:: ; 96823 (25:6823) text "The AMBER is" line "clear and gold!" done diff --git a/text/maps/name_rater.asm b/text/maps/name_rater.asm index 587ddb7b..c2e0b2ea 100644 --- a/text/maps/name_rater.asm +++ b/text/maps/name_rater.asm @@ -1,4 +1,4 @@ -_UnnamedText_1dab3:: ; 9a308 (26:6308) +_NameRaterText_1dab3:: ; 9a308 (26:6308) text "Hello, hello!" line "I am the official" cont "NAME RATER!" @@ -8,12 +8,12 @@ _UnnamedText_1dab3:: ; 9a308 (26:6308) cont "your #MON?" done -_UnnamedText_1dab8:: ; 9a361 (26:6361) +_NameRaterText_1dab8:: ; 9a361 (26:6361) text "Which #MON" line "should I look at?" prompt -_UnnamedText_1dabd:: ; 9a37f (26:637f) +_NameRaterText_1dabd:: ; 9a37f (26:637f) TX_RAM $cd6d text ", is it?" line "That is a decent" @@ -26,12 +26,12 @@ _UnnamedText_1dabd:: ; 9a37f (26:637f) para "How about it?" done -_UnnamedText_1dac2:: ; 9a3e5 (26:63e5) +_NameRaterText_1dac2:: ; 9a3e5 (26:63e5) text "Fine! What should" line "we name it?" prompt -_UnnamedText_1dac7:: ; 9a404 (26:6404) +_NameRaterText_1dac7:: ; 9a404 (26:6404) text "OK! This #MON" line "has been renamed" cont "@" @@ -42,12 +42,12 @@ _UnnamedText_1dac7:: ; 9a404 (26:6404) line "name than before!" done -_UnnamedText_1dacc:: ; 9a44c (26:644c) +_NameRaterText_1dacc:: ; 9a44c (26:644c) text "Fine! Come any" line "time you like!" done -_UnnamedText_1dad1:: ; 9a46b (26:646b) +_NameRaterText_1dad1:: ; 9a46b (26:646b) TX_RAM $cd6d text ", is it?" line "That is a truly" diff --git a/text/maps/oaks_lab.asm b/text/maps/oaks_lab.asm index 79ae312a..3e10758e 100644 --- a/text/maps/oaks_lab.asm +++ b/text/maps/oaks_lab.asm @@ -59,20 +59,20 @@ _OaksLabLastMonText:: ; 94eb6 (25:4eb6) line "last #MON!" done -_UnnamedText_1d2f0:: ; 94ed2 (25:4ed2) +_OaksLabText_1d2f0:: ; 94ed2 (25:4ed2) text "OAK: Now, ", $52, "," line "which #MON do" cont "you want?" done -_UnnamedText_1d2f5:: ; 94ef8 (25:4ef8) +_OaksLabText_1d2f5:: ; 94ef8 (25:4ef8) text "OAK: If a wild" line "#MON appears," cont "your #MON can" cont "fight against it!" done -_UnnamedText_1d2fa:: ; 94f36 (25:4f36) +_OaksLabText_1d2fa:: ; 94f36 (25:4f36) text "OAK: ", $52, "," line "raise your young" cont "#MON by making" @@ -153,7 +153,7 @@ _OaksLabPleaseVisitText:: ; 9519e (25:519e) cont "coming along." done -_UnnamedText_1d31d:: ; 951e9 (25:51e9) +_OaksLabText_1d31d:: ; 951e9 (25:51e9) text "OAK: Good to see " line "you! How is your " cont "#DEX coming? " @@ -161,7 +161,7 @@ _UnnamedText_1d31d:: ; 951e9 (25:51e9) cont "a look!" prompt -_UnnamedText_1d32c:: ; 95236 (25:5236) +_OaksLabText_1d32c:: ; 95236 (25:5236) text "It's encyclopedia-" line "like, but the" cont "pages are blank!" @@ -171,7 +171,7 @@ _OaksLabText8:: ; 95268 (25:5268) text "?" done -_UnnamedText_1d340:: ; 9526b (25:526b) +_OaksLabText_1d340:: ; 9526b (25:526b) text "PROF.OAK is the" line "authority on" cont "#MON!" @@ -253,14 +253,14 @@ _OaksLabRivalChallengeText:: ; 95477 (25:5477) line "you on!" done -_UnnamedText_1d3be:: ; 954b6 (25:54b6) +_OaksLabText_1d3be:: ; 954b6 (25:54b6) text "WHAT?" line "Unbelievable!" cont "I picked the" cont "wrong #MON!" prompt -_UnnamedText_1d3c3:: ; 954e4 (25:54e4) +_OaksLabText_1d3c3:: ; 954e4 (25:54e4) text $53, ": Yeah! Am" line "I great or what?" prompt @@ -353,12 +353,12 @@ _OaksLabText27:: ; 95741 (25:5741) cont $52, "! Hahaha!" done -_UnnamedText_1d405:: ; 957eb (25:57eb) +_OaksLabText_1d405:: ; 957eb (25:57eb) text "I study #MON as" line "PROF.OAK's AIDE." done -_UnnamedText_441cc:: ; 9580c (25:580c) +_OaksLabText_441cc:: ; 9580c (25:580c) text "#DEX comp-" line "letion is:" @@ -373,41 +373,41 @@ _UnnamedText_441cc:: ; 9580c (25:580c) line "Rating:" prompt -_UnnamedText_44201:: ; 95858 (25:5858) +_OaksLabText_44201:: ; 95858 (25:5858) text "You still have" line "lots to do." cont "Look for #MON" cont "in grassy areas!" done -_UnnamedText_44206:: ; 95893 (25:5893) +_OaksLabText_44206:: ; 95893 (25:5893) text "You're on the" line "right track! " cont "Get a FLASH HM" cont "from my AIDE!" done -_UnnamedText_4420b:: ; 958cc (25:58cc) +_OaksLabText_4420b:: ; 958cc (25:58cc) text "You still need" line "more #MON!" cont "Try to catch" cont "other species!" done -_UnnamedText_44210:: ; 95903 (25:5903) +_OaksLabText_44210:: ; 95903 (25:5903) text "Good, you're" line "trying hard!" cont "Get an ITEMFINDER" cont "from my AIDE!" done -_UnnamedText_44215:: ; 9593d (25:593d) +_OaksLabText_44215:: ; 9593d (25:593d) text "Looking good!" line "Go find my AIDE" cont "when you get 50!" done -_UnnamedText_4421a:: ; 9596d (25:596d) +_OaksLabText_4421a:: ; 9596d (25:596d) text "You finally got at" line "least 50 species!" cont "Be sure to get" @@ -415,62 +415,62 @@ _UnnamedText_4421a:: ; 9596d (25:596d) cont "AIDE!" done -_UnnamedText_4421f:: ; 959b8 (25:59b8) +_OaksLabText_4421f:: ; 959b8 (25:59b8) text "Ho! This is geting" line "even better!" done -_UnnamedText_44224:: ; 959d9 (25:59d9) +_OaksLabText_44224:: ; 959d9 (25:59d9) text "Very good!" line "Go fish for some" cont "marine #MON!" done -_UnnamedText_44229:: ; 95a03 (25:5a03) +_OaksLabText_44229:: ; 95a03 (25:5a03) text "Wonderful!" line "Do you like to" cont "collect things?" done -_UnnamedText_4422e:: ; 95a2e (25:5a2e) +_OaksLabText_4422e:: ; 95a2e (25:5a2e) text "I'm impressed!" line "It must have been" cont "difficult to do!" done -_UnnamedText_44233:: ; 95a60 (25:5a60) +_OaksLabText_44233:: ; 95a60 (25:5a60) text "You finally got at" line "least 100 species!" cont "I can't believe" cont "how good you are!" done -_UnnamedText_44238:: ; 95aa8 (25:5aa8) +_OaksLabText_44238:: ; 95aa8 (25:5aa8) text "You even have the" line "evolved forms of" cont "#MON! Super!" done -_UnnamedText_4423d:: ; 95ad9 (25:5ad9) +_OaksLabText_4423d:: ; 95ad9 (25:5ad9) text "Excellent! Trade" line "with friends to" cont "get some more!" done -_UnnamedText_44242:: ; 95b0a (25:5b0a) +_OaksLabText_44242:: ; 95b0a (25:5b0a) text "Outstanding!" line "You've become a" cont "real pro at this!" done -_UnnamedText_44247:: ; 95b39 (25:5b39) +_OaksLabText_44247:: ; 95b39 (25:5b39) text "I have nothing" line "left to say!" cont "You're the" cont "authority now!" done -_UnnamedText_4424c:: ; 95b6f (25:5b6f) +_OaksLabText_4424c:: ; 95b6f (25:5b6f) text "Your #DEX is" line "entirely complete!" cont "Congratulations!" diff --git a/text/maps/pewter_city.asm b/text/maps/pewter_city.asm index dec2fd79..647832a3 100644 --- a/text/maps/pewter_city.asm +++ b/text/maps/pewter_city.asm @@ -20,18 +20,18 @@ _PewterCityText2:: ; a49e0 (29:49e0) cont "into it!" done -_UnnamedText_193f1:: ; a4a56 (29:4a56) +_PewterCityText_193f1:: ; a4a56 (29:4a56) text "Did you check out" line "the MUSEUM?" done -_UnnamedText_193f6:: ; a4a75 (29:4a75) +_PewterCityText_193f6:: ; a4a75 (29:4a75) text "Weren't those" line "fossils from MT." cont "MOON amazing?" done -_UnnamedText_193fb:: ; a4aa2 (29:4aa2) +_PewterCityText_193fb:: ; a4aa2 (29:4aa2) text "Really?" line "You absolutely" cont "have to go!" @@ -45,24 +45,24 @@ _PewterCityText13:: ; a4ac6 (29:4ac6) cont "See you around!" done -_UnnamedText_19427:: ; a4b14 (29:4b14) +_PewterCityText_19427:: ; a4b14 (29:4b14) text "Psssst!" line "Do you know what" cont "I'm doing?" done -_UnnamedText_1942c:: ; a4b38 (29:4b38) +_PewterCityText_1942c:: ; a4b38 (29:4b38) text "That's right!" line "It's hard work!" done -_UnnamedText_19431:: ; a4b55 (29:4b55) +_PewterCityText_19431:: ; a4b55 (29:4b55) text "I'm spraying REPEL" line "to keep #MON" cont "out of my garden!" done -_UnnamedText_1945d:: ; a4b87 (29:4b87) +_PewterCityText_1945d:: ; a4b87 (29:4b87) text "You're a trainer" line "right? BROCK's" cont "looking for new" @@ -70,7 +70,7 @@ _UnnamedText_1945d:: ; a4b87 (29:4b87) cont "Follow me!" done -_UnnamedText_19462:: ; a4bce (29:4bce) +_PewterCityText_19462:: ; a4bce (29:4bce) text "If you have the" line "right stuff, go" cont "take on BROCK!" diff --git a/text/maps/pewter_gym_1.asm b/text/maps/pewter_gym_1.asm index 83174271..9f3a1213 100644 --- a/text/maps/pewter_gym_1.asm +++ b/text/maps/pewter_gym_1.asm @@ -1,4 +1,4 @@ -_UnnamedText_5c49e:: ; 9697a (25:697a) +_PewterGymText_5c49e:: ; 9697a (25:697a) text "I'm BROCK!" line "I'm PEWTER's GYM" cont "LEADER!" diff --git a/text/maps/pewter_gym_2.asm b/text/maps/pewter_gym_2.asm index d82d5e14..a503f755 100644 --- a/text/maps/pewter_gym_2.asm +++ b/text/maps/pewter_gym_2.asm @@ -1,4 +1,4 @@ -_UnnamedText_5c4a3:: ; 98000 (26:4000) +_PewterGymText_5c4a3:: ; 98000 (26:4000) text "There are all" line "kinds of trainers" cont "in the world!" @@ -49,7 +49,7 @@ _TM34NoRoomText:: ; 981ab (26:41ab) line "room for this!" done -_UnnamedText_5c4bc:: ; 981c9 (26:41c9) +_PewterGymText_5c4bc:: ; 981c9 (26:41c9) text "I took" line "you for granted." @@ -60,7 +60,7 @@ _UnnamedText_5c4bc:: ; 981c9 (26:41c9) para $52, " received" line "the BOULDERBADGE!@@" -_UnnamedText_5c4c1:: ; 98232 (26:4232) +_PewterGymText_5c4c1:: ; 98232 (26:4232) db $0 para "That's an official" line "#MON LEAGUE" @@ -98,7 +98,7 @@ _PewterGymAfterBattleText1:: ; 98325 (26:4325) cont "as BROCK!" done -_UnnamedText_5c515:: ; 98351 (26:4351) +_PewterGymText_5c515:: ; 98351 (26:4351) text "Hiya! I can tell" line "you have what it" cont "takes to become a" @@ -112,12 +112,12 @@ _UnnamedText_5c515:: ; 98351 (26:4351) line "to the top!" done -_UnnamedText_5c51a:: ; 983dc (26:43dc) +_PewterGymText_5c51a:: ; 983dc (26:43dc) text "All right! Let's" line "get happening!" prompt -_UnnamedText_5c51f:: ; 983fc (26:43fc) +_PewterGymText_5c51f:: ; 983fc (26:43fc) text "The 1st #MON" line "out in a match is" cont "at the top of the" @@ -129,13 +129,13 @@ _UnnamedText_5c51f:: ; 983fc (26:43fc) cont "made easier!" done -_UnnamedText_5c524:: ; 98476 (26:4476) +_PewterGymText_5c524:: ; 98476 (26:4476) text "It's a free" line "service! Let's" cont "get happening!" prompt -_UnnamedText_5c529:: ; 9849f (26:449f) +_PewterGymText_5c529:: ; 9849f (26:449f) text "Just as I thought!" line "You're #MON" cont "champ material!" diff --git a/text/maps/pewter_mart.asm b/text/maps/pewter_mart.asm index f98c72e7..a33974db 100644 --- a/text/maps/pewter_mart.asm +++ b/text/maps/pewter_mart.asm @@ -1,4 +1,4 @@ -_UnnamedText_74cc6:: ; 985ac (26:45ac) +_PewterMartText_74cc6:: ; 985ac (26:45ac) text "A shady, old man" line "got me to buy" cont "this really weird" @@ -8,7 +8,7 @@ _UnnamedText_74cc6:: ; 985ac (26:45ac) line "and it cost ¥500!" done -_UnnamedText_74cd5:: ; 9860c (26:460c) +_PewterMartText_74cd5:: ; 9860c (26:460c) text "Good things can" line "happen if you" cont "raise #MON" diff --git a/text/maps/pokemon_league_gate.asm b/text/maps/pokemon_league_gate.asm index f3eb1858..cadfea3b 100644 --- a/text/maps/pokemon_league_gate.asm +++ b/text/maps/pokemon_league_gate.asm @@ -1,4 +1,4 @@ -_UnnamedText_1e704:: ; 8cfbb (23:4fbb) +_Route22GateText_1e704:: ; 8cfbb (23:4fbb) text "Only truly skilled" line "trainers are" cont "allowed through." @@ -6,14 +6,14 @@ _UnnamedText_1e704:: ; 8cfbb (23:4fbb) para "You don't have the" line "BOULDERBADGE yet!@@" -_UnnamedText_1e715:: ; 8d012 (23:5012) +_Route22GateText_1e715:: ; 8d012 (23:5012) db $0 para "The rules are" line "rules. I can't" cont "let you pass." done -_UnnamedText_1e71a:: ; 8d03e (23:503e) +_Route22GateText_1e71a:: ; 8d03e (23:503e) text "Oh! That is the" line "BOULDERBADGE!" cont "Go right ahead!@@" diff --git a/text/maps/pokemon_tower_2f.asm b/text/maps/pokemon_tower_2f.asm index 4a0dbc9f..6a33e085 100644 --- a/text/maps/pokemon_tower_2f.asm +++ b/text/maps/pokemon_tower_2f.asm @@ -1,4 +1,4 @@ -_UnnamedText_6062d:: ; 9957b (26:557b) +_PokemonTower2Text_6062d:: ; 9957b (26:557b) text $53, ": Hey," line $52, "! What" cont "brings you here?" @@ -10,7 +10,7 @@ _UnnamedText_6062d:: ; 9957b (26:557b) cont "Let's go, pal!" done -_UnnamedText_60632:: ; 995e5 (26:55e5) +_PokemonTower2Text_60632:: ; 995e5 (26:55e5) text "What?" line "You stinker!" @@ -18,7 +18,7 @@ _UnnamedText_60632:: ; 995e5 (26:55e5) line "you too!" prompt -_UnnamedText_60637:: ; 99614 (26:5614) +_PokemonTower2Text_60637:: ; 99614 (26:5614) text $53, ": Well," line "look at all your" cont "wimpy #MON!" @@ -27,7 +27,7 @@ _UnnamedText_60637:: ; 99614 (26:5614) line "bit more!" prompt -_UnnamedText_6063c:: ; 99657 (26:5657) +_PokemonTower2Text_6063c:: ; 99657 (26:5657) text "How's your #DEX" line "coming, pal?" cont "I just caught a" diff --git a/text/maps/pokemon_tower_5f.asm b/text/maps/pokemon_tower_5f.asm index e6592bbe..95ce2f4b 100644 --- a/text/maps/pokemon_tower_5f.asm +++ b/text/maps/pokemon_tower_5f.asm @@ -62,7 +62,7 @@ _PokemonTower5AfterBattleText4:: ; 99a5e (26:5a5e) cont "my training!" done -_UnnamedText_60a43:: ; 99a8b (26:5a8b) +_PokemonTower5Text7:: ; 99a8b (26:5a8b) text "Entered purified," line "protected zone!" diff --git a/text/maps/pokemon_tower_6f.asm b/text/maps/pokemon_tower_6f.asm index 052a1514..08eb6b1a 100644 --- a/text/maps/pokemon_tower_6f.asm +++ b/text/maps/pokemon_tower_6f.asm @@ -1,10 +1,10 @@ -_UnnamedText_60c1f:: ; 99ac8 (26:5ac8) +_PokemonTower2Text_60c1f:: ; 99ac8 (26:5ac8) text "The GHOST was the" line "restless soul of" cont "CUBONE's mother!" done -_UnnamedText_60c24:: ; 99afc (26:5afc) +_PokemonTower2Text_60c24:: ; 99afc (26:5afc) text "The mother's soul" line "was calmed." @@ -55,7 +55,7 @@ _PokemonTower6AfterBattleText3:: ; 99beb (26:5beb) line "here?" done -_UnnamedText_60c56:: ; 99c01 (26:5c01) +_PokemonTower6Text6:: ; 99c01 (26:5c01) text "Be gone..." line "Intruders..." done diff --git a/text/maps/pokemon_tower_7f.asm b/text/maps/pokemon_tower_7f.asm index 311a1d54..235fc218 100644 --- a/text/maps/pokemon_tower_7f.asm +++ b/text/maps/pokemon_tower_7f.asm @@ -1,4 +1,4 @@ -_UnnamedText_60ec4:: ; 99c1a (26:5c1a) +_PokemonTower7Text_60ec4:: ; 99c1a (26:5c1a) text "MR.FUJI: Heh? You" line "came to save me?" diff --git a/text/maps/rocket_hideout_b4f.asm b/text/maps/rocket_hideout_b4f.asm index adbabe22..ecf01ec8 100644 --- a/text/maps/rocket_hideout_b4f.asm +++ b/text/maps/rocket_hideout_b4f.asm @@ -1,15 +1,15 @@ -_UnnamedText_4557a:: ; 8223e (20:623e) +_RocketHideout4Text_4557a:: ; 8223e (20:623e) text "So! I must say, I" line "am impressed you" cont "got here!" done -_UnnamedText_4557f:: ; 8226c (20:626c) +_RocketHideout4Text_4557f:: ; 8226c (20:626c) text "WHAT!" line "This cannot be!" prompt -_UnnamedText_45584:: ; 82283 (20:6283) +_RocketHideout4Text_45584:: ; 82283 (20:6283) text "I see that you" line "raise #MON" cont "with utmost care." @@ -68,7 +68,7 @@ _RocketHideout4EndBattleText4:: ; 82413 (20:6413) text "No!" prompt -_UnnamedText_455ec:: ; 82418 (20:6418) +_RocketHideout4Text_455ec:: ; 82418 (20:6418) text "Oh no! I dropped" line "the LIFT KEY!" done diff --git a/text/maps/rocket_hideout_elevator.asm b/text/maps/rocket_hideout_elevator.asm index 7b96f860..12fbad6d 100644 --- a/text/maps/rocket_hideout_elevator.asm +++ b/text/maps/rocket_hideout_elevator.asm @@ -1,4 +1,4 @@ -_UnnamedText_4578b:: ; 82438 (20:6438) +_RocketElevatorText_4578b:: ; 82438 (20:6438) text "It appears to" line "need a key.@@" diff --git a/text/maps/route_1.asm b/text/maps/route_1.asm index 9dfc35d0..c7db4d1c 100644 --- a/text/maps/route_1.asm +++ b/text/maps/route_1.asm @@ -12,19 +12,19 @@ _Route1ViridianMartSampleText:: ; 8d5bf (23:55bf) cont "Here you go!" prompt -_UnnamedText_1cae8:: ; 8d643 (23:5643) +_Route1Text_1cae8:: ; 8d643 (23:5643) text $52, " got" line "@" TX_RAM $cf4b text "!@@" -_UnnamedText_1caee:: ; 8d652 (23:5652) +_Route1Text_1caee:: ; 8d652 (23:5652) text "We also carry" line "# BALLs for" cont "catching #MON!" done -_UnnamedText_1caf3:: ; 8d67c (23:567c) +_Route1Text_1caf3:: ; 8d67c (23:567c) text "You have too much" line "stuff with you!" done diff --git a/text/maps/route_11_gate_upstairs.asm b/text/maps/route_11_gate_upstairs.asm index 9b329892..70c463ec 100644 --- a/text/maps/route_11_gate_upstairs.asm +++ b/text/maps/route_11_gate_upstairs.asm @@ -1,4 +1,4 @@ -_UnnamedText_494a3:: ; 8c689 (23:4689) +_Route11GateUpstairsText_494a3:: ; 8c689 (23:4689) text "There are items on" line "the ground that" cont "can't be seen." @@ -28,7 +28,7 @@ _BinocularsNoSnorlaxText:: line "view!" done -_UnnamedText_494d5:: ; 8c78b (23:478b) +_Route11GateUpstairsText_494d5:: ; 8c78b (23:478b) text "Looked into the" line "binoculars." diff --git a/text/maps/route_12.asm b/text/maps/route_12.asm index ae48ef25..ef71d279 100644 --- a/text/maps/route_12.asm +++ b/text/maps/route_12.asm @@ -3,14 +3,14 @@ _Route12Text1:: ; 9009e (24:409e) line "blocks the way!" done -_UnnamedText_596eb:: ; 900bf (24:40bf) +_Route12Text13:: ; 900bf (24:40bf) text "SNORLAX woke up!" para "It attacked in a" line "grumpy rage!" done -_UnnamedText_596f0:: ; 900ef (24:40ef) +_Route12Text14:: ; 900ef (24:40ef) text "SNORLAX calmed" line "down! With a big" cont "yawn, it returned" diff --git a/text/maps/route_12_gate_upstairs.asm b/text/maps/route_12_gate_upstairs.asm index e31e392c..3d22e389 100644 --- a/text/maps/route_12_gate_upstairs.asm +++ b/text/maps/route_12_gate_upstairs.asm @@ -27,14 +27,14 @@ _TM39NoRoomText:: ; 8c93c (23:493c) line "room for this." done -_UnnamedText_495b8:: ; 8c95a (23:495a) +_Route12GateUpstairsText_495b8:: ; 8c95a (23:495a) text "Looked into the" line "binoculars." para "A man fishing!" done -_UnnamedText_495c4:: ; 8c986 (23:4986) +_Route12GateUpstairsText_495c4:: ; 8c986 (23:4986) text "Looked into the" line "binoculars." diff --git a/text/maps/route_12_house.asm b/text/maps/route_12_house.asm index f15e0041..ed645a01 100644 --- a/text/maps/route_12_house.asm +++ b/text/maps/route_12_house.asm @@ -1,4 +1,4 @@ -_UnnamedText_564c0:: ; 8c9b3 (23:49b3) +_Route12HouseText_564c0:: ; 8c9b3 (23:49b3) text "I'm the FISHING" line "GURU's brother!" @@ -9,7 +9,7 @@ _UnnamedText_564c0:: ; 8c9b3 (23:49b3) line "fish?" done -_UnnamedText_564c5:: ; 8ca00 (23:4a00) +_Route12HouseText_564c5:: ; 8ca00 (23:4a00) text "Grand! I like" line "your style!" @@ -21,7 +21,7 @@ _UnnamedText_564c5:: ; 8ca00 (23:4a00) TX_RAM $cf4b text "!@@" -_UnnamedText_564ca:: ; 8ca4f (23:4a4f) +_Route12HouseText_564ca:: ; 8ca4f (23:4a4f) db $0 para "Fishing is a way" line "of life!" @@ -32,12 +32,12 @@ _UnnamedText_564ca:: ; 8ca4f (23:4a4f) cont "one!" done -_UnnamedText_564cf:: ; 8caa1 (23:4aa1) +_Route12HouseText_564cf:: ; 8caa1 (23:4aa1) text "Oh... That's so" line "disappointing..." done -_UnnamedText_564d4:: ; 8cac2 (23:4ac2) +_Route12HouseText_564d4:: ; 8cac2 (23:4ac2) text "Hello there," line $52, "!" @@ -51,7 +51,7 @@ _UnnamedText_564d4:: ; 8cac2 (23:4ac2) line "wherever you can!" done -_UnnamedText_564d9:: ; 8cb38 (23:4b38) +_Route12HouseText_564d9:: ; 8cb38 (23:4b38) text "Oh no!" para "I had a gift for" diff --git a/text/maps/route_15_gate_upstairs.asm b/text/maps/route_15_gate_upstairs.asm index df57afda..7207ecdf 100644 --- a/text/maps/route_15_gate_upstairs.asm +++ b/text/maps/route_15_gate_upstairs.asm @@ -1,4 +1,4 @@ -_UnnamedText_4968c:: ; 8cbac (23:4bac) +_Route15GateUpstairsText_4968c:: ; 8cbac (23:4bac) text "EXP.ALL gives" line "EXP points to all" cont "the #MON with" @@ -15,7 +15,7 @@ _UnnamedText_4968c:: ; 8cbac (23:4bac) cont "store it via PC." done -_UnnamedText_49698:: ; 8cc65 (23:4c65) +_Route15GateUpstairsText_49698:: ; 8cc65 (23:4c65) text "Looked into the" line "binoculars." diff --git a/text/maps/route_16.asm b/text/maps/route_16.asm index b46275f0..d98aaa12 100644 --- a/text/maps/route_16.asm +++ b/text/maps/route_16.asm @@ -95,14 +95,14 @@ _Route16Text7:: ; 91287 (24:5287) line "blocks the way!" done -_UnnamedText_59ab3:: ; 912a8 (24:52a8) +_Route16Text10:: ; 912a8 (24:52a8) text "SNORLAX woke up!" para "It attacked in a" line "grumpy rage!" done -_UnnamedText_59ab8:: ; 912d8 (24:52d8) +_Route16Text11:: ; 912d8 (24:52d8) text "With a big yawn," line "SNORLAX returned" cont "to the mountains!" diff --git a/text/maps/route_16_gate.asm b/text/maps/route_16_gate.asm index 22ac6788..2d3d5c62 100644 --- a/text/maps/route_16_gate.asm +++ b/text/maps/route_16_gate.asm @@ -1,17 +1,17 @@ -_UnnamedText_49777:: ; 8cca0 (23:4ca0) +_Route16GateText_49777:: ; 8cca0 (23:4ca0) text "No pedestrians" line "are allowed on" cont "CYCLING ROAD!" done -_UnnamedText_4977c:: ; 8cccd (23:4ccd) +_Route16GateText_4977c:: ; 8cccd (23:4ccd) text "CYCLING ROAD is a" line "downhill course" cont "by the sea. It's" cont "a great ride." done -_UnnamedText_49781:: ; 8cd0e (23:4d0e) +_Route16GateText_49781:: ; 8cd0e (23:4d0e) text "Excuse me! Wait" line "up please!" done diff --git a/text/maps/route_16_gate_upstairs.asm b/text/maps/route_16_gate_upstairs.asm index d4f1b32a..26767654 100644 --- a/text/maps/route_16_gate_upstairs.asm +++ b/text/maps/route_16_gate_upstairs.asm @@ -1,15 +1,15 @@ -_UnnamedText_49820:: ; 8cd49 (23:4d49) +_Route16GateUpstairsText_49820:: ; 8cd49 (23:4d49) text "I'm going for a" line "ride with my girl" cont "friend!" done -_UnnamedText_4982f:: ; 8cd73 (23:4d73) +_Route16GateUpstairsText_4982f:: ; 8cd73 (23:4d73) text "We're going" line "riding together!" done -_UnnamedText_4983b:: ; 8cd90 (23:4d90) +_Route16GateUpstairsText_4983b:: ; 8cd90 (23:4d90) text "Looked into the" line "binoculars." @@ -17,7 +17,7 @@ _UnnamedText_4983b:: ; 8cd90 (23:4d90) line "STORE!" done -_UnnamedText_49847:: ; 8cdc6 (23:4dc6) +_Route16GateUpstairsText_49847:: ; 8cdc6 (23:4dc6) text "Looked into the" line "binoculars." diff --git a/text/maps/route_16_house.asm b/text/maps/route_16_house.asm index 05b24865..c3099049 100644 --- a/text/maps/route_16_house.asm +++ b/text/maps/route_16_house.asm @@ -26,7 +26,7 @@ _HM02NoRoomText:: ; 8cebe (23:4ebe) line "room for this." done -_UnnamedText_1e652:: ; 8cee0 (23:4ee0) +_Route16HouseText_1e652:: ; 8cee0 (23:4ee0) text "FEAROW: Kyueen!" done diff --git a/text/maps/route_18_gate.asm b/text/maps/route_18_gate.asm index 9da68ac9..0298465d 100644 --- a/text/maps/route_18_gate.asm +++ b/text/maps/route_18_gate.asm @@ -1,15 +1,15 @@ -_UnnamedText_49928:: ; 8cef1 (23:4ef1) +_Route18GateText_49928:: ; 8cef1 (23:4ef1) text "You need a BICYCLE" line "for CYCLING ROAD!" done -_UnnamedText_4992d:: ; 8cf17 (23:4f17) +_Route18GateText_4992d:: ; 8cf17 (23:4f17) text "CYCLING ROAD is" line "all uphill from" cont "here." done -_UnnamedText_49932:: ; 8cf3e (23:4f3e) +_Route18GateText_49932:: ; 8cf3e (23:4f3e) text "Excuse me!" done diff --git a/text/maps/route_18_gate_upstairs.asm b/text/maps/route_18_gate_upstairs.asm index 3061ec56..59b92e6a 100644 --- a/text/maps/route_18_gate_upstairs.asm +++ b/text/maps/route_18_gate_upstairs.asm @@ -1,4 +1,4 @@ -_UnnamedText_49993:: ; 8cf4a (23:4f4a) +_Route18GateUpstairsText_49993:: ; 8cf4a (23:4f4a) text "Looked into the" line "binoculars." @@ -6,7 +6,7 @@ _UnnamedText_49993:: ; 8cf4a (23:4f4a) line "the west!" done -_UnnamedText_4999f:: ; 8cf83 (23:4f83) +_Route18GateUpstairsText_4999f:: ; 8cf83 (23:4f83) text "Looked into the" line "binoculars." diff --git a/text/maps/route_22.asm b/text/maps/route_22.asm index b68e32f0..5ce0b879 100644 --- a/text/maps/route_22.asm +++ b/text/maps/route_22.asm @@ -37,7 +37,7 @@ _Route22RivalDefeatedText1:: ; 923f4 (24:63f4) cont "out!" prompt -_UnnamedText_511bc:: ; 92410 (24:6410) +_Route22Text_511bc:: ; 92410 (24:6410) text $53, ": What?" line "Why do I have 2" cont "#MON?" @@ -87,7 +87,7 @@ _Route22RivalDefeatedText2:: ; 92583 (24:6583) line "careless!" prompt -_UnnamedText_511d0:: ; 925a0 (24:65a0) +_Route22Text_511d0:: ; 925a0 (24:65a0) text $53, ": Hahaha!" line $52, "! That's" cont "your best? You're" diff --git a/text/maps/route_23.asm b/text/maps/route_23.asm index 7b6219a8..30b8e003 100644 --- a/text/maps/route_23.asm +++ b/text/maps/route_23.asm @@ -26,7 +26,7 @@ _VictoryRoadGuardText2:: ; 92696 (24:6696) TX_RAM $cd6d text "!@@" -_UnnamedText_513a3:: ; 926dd (24:66dd) +_VictoryRoadGuardText_513a3:: ; 926dd (24:66dd) db $0 para "OK then! Please," line "go right ahead!" diff --git a/text/maps/route_24_1.asm b/text/maps/route_24_1.asm index 4049e5f0..ec32744d 100644 --- a/text/maps/route_24_1.asm +++ b/text/maps/route_24_1.asm @@ -1,26 +1,26 @@ -_UnnamedText_51510:: ; 92721 (24:6721) +_Route24Text_51510:: ; 92721 (24:6721) text "Congratulations!" line "You beat our 5" cont "contest trainers!@@" -_UnnamedText_51515:: ; 92755 (24:6755) +_Route24Text_51515:: ; 92755 (24:6755) db $0 para "You just earned a" line "fabulous prize!" prompt -_UnnamedText_5151a:: ; 92779 (24:6779) +_Route24Text_5151a:: ; 92779 (24:6779) text $52, " received" line "a @" TX_RAM $cf4b text "!@@" -_UnnamedText_51521:: ; 9278f (24:678f) +_Route24Text_51521:: ; 9278f (24:678f) text "You don't have" line "any room!" done -_UnnamedText_51526:: ; 927a8 (24:67a8) +_Route24Text_51526:: ; 927a8 (24:67a8) text "By the way, would" line "you like to join" cont "TEAM ROCKET?" @@ -46,12 +46,12 @@ _UnnamedText_51526:: ; 927a8 (24:67a8) cont "refuse!" done -_UnnamedText_5152b:: ; 9288a (24:688a) +_Route24Text_5152b:: ; 9288a (24:688a) text "Arrgh!" line "You are good!" prompt -_UnnamedText_51530:: ; 928a0 (24:68a0) +_Route24Text_51530:: ; 928a0 (24:68a0) text "With your ability," line "you could become" cont "a top leader in" diff --git a/text/maps/route_2_gate.asm b/text/maps/route_2_gate.asm index 6c2ba168..e8337a1f 100644 --- a/text/maps/route_2_gate.asm +++ b/text/maps/route_2_gate.asm @@ -1,4 +1,4 @@ -_UnnamedText_5d616:: ; 8a7fc (22:67fc) +_Route2GateText_5d616:: ; 8a7fc (22:67fc) text "The HM FLASH" line "lights even the" cont "darkest dungeons." diff --git a/text/maps/safari_zone_entrance.asm b/text/maps/safari_zone_entrance.asm index 76c61b20..119d2301 100644 --- a/text/maps/safari_zone_entrance.asm +++ b/text/maps/safari_zone_entrance.asm @@ -3,7 +3,7 @@ _SafariZoneEntranceText1:: ; 9e6c7 (27:66c7) line "SAFARI ZONE!" done -UnnamedText_9e6e4:: ; 9e6e4 (27:66e4) +SafariZoneEntranceText_9e6e4:: ; 9e6e4 (27:66e4) text "For just ¥500," line "you can catch all" cont "the #MON you" @@ -12,7 +12,7 @@ UnnamedText_9e6e4:: ; 9e6e4 (27:66e4) para "Would you like to" line "join the hunt?@@" -UnnamedText_9e747:: ; 9e747 (27:6747) +SafariZoneEntranceText_9e747:: ; 9e747 (27:6747) text "That'll be ¥500" line "please!" @@ -23,7 +23,7 @@ UnnamedText_9e747:: ; 9e747 (27:6747) para $52, " received" line "30 SAFARI BALLs!@@" -_UnnamedText_75360:: ; 9e79f (27:679f) +_SafariZoneEntranceText_75360:: ; 9e79f (27:679f) db $0 para "We'll call you on" line "the PA when you" @@ -31,41 +31,41 @@ _UnnamedText_75360:: ; 9e79f (27:679f) cont "or SAFARI BALLs!" done -_UnnamedText_75365:: ; 9e7e3 (27:67e3) +_SafariZoneEntranceText_75365:: ; 9e7e3 (27:67e3) text "OK! Please come" line "again!" done -_UnnamedText_7536a:: ; 9e7fb (27:67fb) +_SafariZoneEntranceText_7536a:: ; 9e7fb (27:67fb) text "Oops! Not enough" line "money!" done -UnnamedText_9e814:: ; 9e814 (27:6814) +SafariZoneEntranceText_9e814:: ; 9e814 (27:6814) text "Leaving early?@@" -_UnnamedText_753bb:: ; 9e825 (27:6825) +_SafariZoneEntranceText_753bb:: ; 9e825 (27:6825) text "Please return any" line "SAFARI BALLs you" cont "have left." done -_UnnamedText_753c0:: ; 9e854 (27:6854) +_SafariZoneEntranceText_753c0:: ; 9e854 (27:6854) text "Good Luck!" done -_UnnamedText_753c5:: ; 9e860 (27:6860) +_SafariZoneEntranceText_753c5:: ; 9e860 (27:6860) text "Did you get a" line "good haul?" cont "Come again!" done -_UnnamedText_753e6:: ; 9e886 (27:6886) +_SafariZoneEntranceText_753e6:: ; 9e886 (27:6886) text "Hi! Is it your" line "first time here?" done -_UnnamedText_753eb:: ; 9e8a7 (27:68a7) +_SafariZoneEntranceText_753eb:: ; 9e8a7 (27:68a7) text "SAFARI ZONE has 4" line "zones in it." @@ -87,7 +87,7 @@ _UnnamedText_753eb:: ; 9e8a7 (27:68a7) cont "new #MON!" done -_UnnamedText_753f0:: ; 9e993 (27:6993) +_SafariZoneEntranceText_753f0:: ; 9e993 (27:6993) text "Sorry, you're a" line "regular here!" done diff --git a/text/maps/safari_zone_secret_house.asm b/text/maps/safari_zone_secret_house.asm index 0d9511e2..b7b391be 100644 --- a/text/maps/safari_zone_secret_house.asm +++ b/text/maps/safari_zone_secret_house.asm @@ -1,4 +1,4 @@ -_UnnamedText_4a350:: ; 858a4 (21:58a4) +_SecretHouseText_4a350:: ; 858a4 (21:58a4) text "Ah! Finally!" para "You're the first" diff --git a/text/maps/saffron_gates.asm b/text/maps/saffron_gates.asm index f084334c..0212a7dd 100644 --- a/text/maps/saffron_gates.asm +++ b/text/maps/saffron_gates.asm @@ -1,4 +1,4 @@ -_UnnamedText_1dfe7:: ; 8aa5c (22:6a5c) +_SaffronGateText_1dfe7:: ; 8aa5c (22:6a5c) text "I'm on guard duty." line "Gee, I'm thirsty," cont "though!" @@ -7,7 +7,7 @@ _UnnamedText_1dfe7:: ; 8aa5c (22:6a5c) line "the road's closed." done -_UnnamedText_8aaa9:: ; 8aaa9 (22:6aa9) +_SaffronGateText_8aaa9:: ; 8aaa9 (22:6aa9) text "Whoa, boy!" line "I'm parched!" cont "..." @@ -15,7 +15,7 @@ _UnnamedText_8aaa9:: ; 8aaa9 (22:6aa9) cont "this drink?" cont "Gee, thanks!@@" -_UnnamedText_1dff1:: ; 8aaef (22:6aef) +_SaffronGateText_1dff1:: ; 8aaef (22:6aef) db $0 para "..." line "Glug glug..." @@ -30,7 +30,7 @@ _UnnamedText_1dff1:: ; 8aaef (22:6aef) cont "the other guards!" done -_UnnamedText_1dff6:: ; 8ab74 (22:6b74) +_SaffronGateText_1dff6:: ; 8ab74 (22:6b74) text "Hi, thanks for" line "the cool drinks!" done diff --git a/text/maps/saffron_gym.asm b/text/maps/saffron_gym.asm index c2426eeb..d85e1b1a 100644 --- a/text/maps/saffron_gym.asm +++ b/text/maps/saffron_gym.asm @@ -1,4 +1,4 @@ -_UnnamedText_5d162:: ; a1bb4 (28:5bb4) +_SaffronGymText_5d162:: ; a1bb4 (28:5bb4) text "I had a vision of" line "your arrival!" @@ -16,7 +16,7 @@ _UnnamedText_5d162:: ; a1bb4 (28:5bb4) cont "you my powers!" done -_UnnamedText_5d167:: ; a1c73 (28:5c73) +_SaffronGymText_5d167:: ; a1c73 (28:5c73) text "I'm" line "shocked!" cont "But, a loss is a" @@ -29,14 +29,14 @@ _UnnamedText_5d167:: ; a1c73 (28:5c73) para "You earned the" line "MARSHBADGE!@@" -_UnnamedText_5d16e:: ; a1cdc (28:5cdc) +_SaffronGymText_5d16e:: ; a1cdc (28:5cdc) text "Everyone has" line "psychic power!" cont "People just don't" cont "realize it!" done -_UnnamedText_5d173:: ; a1d16 (28:5d16) +_SaffronGymText_5d173:: ; a1d16 (28:5d16) text "The MARSHBADGE" line "makes #MON up" cont "to L70 obey you!" @@ -71,7 +71,7 @@ _TM46NoRoomText:: ; a1e25 (28:5e25) line "of other items!" done -_UnnamedText_5d1e6:: ; a1e48 (28:5e48) +_SaffronGymText_5d1e6:: ; a1e48 (28:5e48) text "Yo! Champ in" line "making!" @@ -88,7 +88,7 @@ _UnnamedText_5d1e6:: ; a1e48 (28:5e48) cont "even aim a punch!" done -_UnnamedText_5d1eb:: ; a1ef0 (28:5ef0) +_SaffronGymText_5d1eb:: ; a1ef0 (28:5ef0) text "Psychic power," line "huh?" diff --git a/text/maps/silph_co_10f.asm b/text/maps/silph_co_10f.asm index 6c9727de..a5a3877e 100644 --- a/text/maps/silph_co_10f.asm +++ b/text/maps/silph_co_10f.asm @@ -1,9 +1,9 @@ -_UnnamedText_5a1d3:: ; 84d8d (21:4d8d) +_SilphCo10Text_5a1d3:: ; 84d8d (21:4d8d) text "Waaaaa!" cont "I'm scared!" done -_UnnamedText_5a1d8:: ; 84da1 (21:4da1) +_SilphCo10Text_5a1d8:: ; 84da1 (21:4da1) text "Please keep quiet" line "about my crying!" done diff --git a/text/maps/silph_co_11f.asm b/text/maps/silph_co_11f.asm index 0158a7ca..fdfcd313 100644 --- a/text/maps/silph_co_11f.asm +++ b/text/maps/silph_co_11f.asm @@ -25,7 +25,7 @@ _ReceivedSilphCoMasterBallText:: ; 84f63 (21:4f63) TX_RAM $cf4b text "!@@" -_UnnamedText_6231c:: ; 84f74 (21:4f74) +_SilphCo10Text_6231c:: ; 84f74 (21:4f74) text "PRESIDENT: You" line "can't buy that" cont "anywhere!" @@ -74,12 +74,12 @@ _SilphCo11Text3:: ; 85075 (21:5075) line "world of pain!" done -_UnnamedText_62330:: ; 85119 (21:5119) +_SilphCo10Text_62330:: ; 85119 (21:5119) text "Arrgh!!" line "I lost again!?" prompt -_UnnamedText_62335:: ; 85131 (21:5131) +_SilphCo10Text_62335:: ; 85131 (21:5131) text "Blast it all!" line "You ruined our" cont "plans for SILPH!" @@ -128,7 +128,7 @@ _SilphCo11AfterBattleText2:: ; 8526a (21:526a) cont "#MON tough!" done -_UnnamedText_6237b:: ; 8529a (21:529a) +_SilphCo10Text_6237b:: ; 8529a (21:529a) text "The monitor has" line "#MON on it!" done diff --git a/text/maps/silph_co_2f.asm b/text/maps/silph_co_2f.asm index a7535af6..b8924ef1 100644 --- a/text/maps/silph_co_2f.asm +++ b/text/maps/silph_co_2f.asm @@ -1,4 +1,4 @@ -_UnnamedText_59ded:: ; 82454 (20:6454) +_SilphCo2Text_59ded:: ; 82454 (20:6454) text "Eeek!" line "No! Stop! Help!" diff --git a/text/maps/silph_co_3f.asm b/text/maps/silph_co_3f.asm index 34116b5a..25d68018 100644 --- a/text/maps/silph_co_3f.asm +++ b/text/maps/silph_co_3f.asm @@ -1,9 +1,9 @@ -_UnnamedText_59ff9:: ; 826b9 (20:66b9) +_SilphCo3Text_59ff9:: ; 826b9 (20:66b9) text "I work for SILPH." line "What should I do?" done -_UnnamedText_59ffe:: ; 826de (20:66de) +_SilphCo3Text_59ffe:: ; 826de (20:66de) text $52, "! You and" line "your #MON" cont "saved us!" diff --git a/text/maps/silph_co_4f.asm b/text/maps/silph_co_4f.asm index 452a05a8..309da28c 100644 --- a/text/maps/silph_co_4f.asm +++ b/text/maps/silph_co_4f.asm @@ -1,9 +1,9 @@ -_UnnamedText_19de0:: ; 827e4 (20:67e4) +_SilphCo4Text_19de0:: ; 827e4 (20:67e4) text "Sssh! Can't you" line "see I'm hiding?" done -_UnnamedText_19de5:: ; 82803 (20:6803) +_SilphCo4Text_19de5:: ; 82803 (20:6803) text "Huh? TEAM ROCKET" line "is gone?" done diff --git a/text/maps/silph_co_5f_1.asm b/text/maps/silph_co_5f_1.asm index f37a5cd7..8a406e67 100644 --- a/text/maps/silph_co_5f_1.asm +++ b/text/maps/silph_co_5f_1.asm @@ -1,11 +1,11 @@ -_UnnamedText_1a010:: ; 82936 (20:6936) +_SilphCo5Text_1a010:: ; 82936 (20:6936) text "TEAM ROCKET is" line "in an uproar over" cont "some intruder." cont "That's you right?" done -_UnnamedText_1a015:: ; 82978 (20:6978) +_SilphCo5Text_1a015:: ; 82978 (20:6978) text "TEAM ROCKET took" line "off! You're our" cont "hero! Thank you!" diff --git a/text/maps/silph_co_6f.asm b/text/maps/silph_co_6f.asm index 5f74da46..b3bf71b6 100644 --- a/text/maps/silph_co_6f.asm +++ b/text/maps/silph_co_6f.asm @@ -1,55 +1,55 @@ -_UnnamedText_1a24a:: ; 84176 (21:4176) +_SilphCo6Text_1a24a:: ; 84176 (21:4176) text "The ROCKETs came" line "and took over the" cont "building!" done -_UnnamedText_1a24f:: ; 841a4 (21:41a4) +_SilphCo6Text_1a24f:: ; 841a4 (21:41a4) text "Well, better get" line "back to work!" done -_UnnamedText_1a261:: ; 841c4 (21:41c4) +_SilphCo6Text_1a261:: ; 841c4 (21:41c4) text "Oh dear, oh dear." line "Help me please!" done -_UnnamedText_1a266:: ; 841e7 (21:41e7) +_SilphCo6Text_1a266:: ; 841e7 (21:41e7) text "We got engaged!" line "Heheh!" done -_UnnamedText_1a278:: ; 841ff (21:41ff) +_SilphCo6Text_1a278:: ; 841ff (21:41ff) text "Look at him! He's" line "such a coward!" done -_UnnamedText_1a27d:: ; 84220 (21:4220) +_SilphCo6Text_1a27d:: ; 84220 (21:4220) text "I feel so sorry" line "for him, I have" cont "to marry him!" done -_UnnamedText_1a28f:: ; 8424f (21:424f) +_SilphCo6Text_1a28f:: ; 8424f (21:424f) text "TEAM ROCKET is" line "trying to conquer" cont "the world with" cont "#MON!" done -_UnnamedText_1a294:: ; 84286 (21:4286) +_SilphCo6Text_1a294:: ; 84286 (21:4286) text "TEAM ROCKET ran" line "because of you!" done -_UnnamedText_1a2a6:: ; 842a7 (21:42a7) +_SilphCo6Text_1a2a6:: ; 842a7 (21:42a7) text "They must have" line "targeted SILPH" cont "for our #MON" cont "products." done -_UnnamedText_1a2ab:: ; 842dd (21:42dd) +_SilphCo6Text_1a2ab:: ; 842dd (21:42dd) text "Come work for" line "SILPH when you" cont "get older!" diff --git a/text/maps/silph_co_7f.asm b/text/maps/silph_co_7f.asm index 4fca7b90..b3c92aaf 100644 --- a/text/maps/silph_co_7f.asm +++ b/text/maps/silph_co_7f.asm @@ -39,7 +39,7 @@ _LaprasGuySavedText:: line "Thank you!" done -_UnnamedText_51e00:: +_SilphCo7Text_51e00:: text "TEAM ROCKET was" line "after the MASTER" cont "BALL which will" @@ -53,27 +53,27 @@ _CanceledMasterBallText:: cont "of TEAM ROCKET." done -_UnnamedText_51e23:: +_SilphCo7Text_51e23:: text "It would be bad" line "if TEAM ROCKET" cont "took over SILPH" cont "or our #MON!" done -_UnnamedText_51e28:: +_SilphCo7Text_51e28:: text "Wow! You chased" line "off TEAM ROCKET" cont "all by yourself?" done -_UnnamedText_51e46:: +_SilphCo7Text_51e46:: text "You! It's really" line "dangerous here!" cont "You came to save" cont "me? You can't!" done -_UnnamedText_51e4b:: +_SilphCo7Text_51e4b:: text "Safe at last!" line "Oh thank you!" done @@ -144,3 +144,67 @@ _SilphCo7AfterBattleText4:: ; 84861 (21:4861) cont "gets ticked off!" done +_SilphCo7Text_51ebe:: ; 8488d (21:488d) + text $53, ": What" + line "kept you ", $52, "?" + done + +_SilphCo7Text_51ec3:: ; 848a2 (21:48a2) + text $53, ": Hahaha!" + line "I thought you'd" + cont "turn up if I" + cont "waited here!" + + para "I guess TEAM" + line "ROCKET slowed you" + cont "down! Not that I" + cont "care!" + + para "I saw you in" + line "SAFFRON, so I" + cont "decided to see if" + cont "you got better!" + done + +_SilphCo7Text_51ec8:: ; 8494a (21:494a) + text "Oh ho!" + line "So, you are ready" + cont "for BOSS ROCKET!" + prompt + +_SilphCo7Text_51ecd:: ; 84975 (21:4975) + text $53, ": How can" + line "I put this?" + + para "You're not good" + line "enough to play" + cont "with us big boys!" + prompt + +_SilphCo7Text_51ed2:: ; 849bd (21:49bd) + text "Well, ", $52, "!" + + para "I'm moving on up" + line "and ahead!" + + para "By checking my" + line "#DEX, I'm" + cont "starting to see" + cont "what's strong and" + cont "how they evolve!" + + para "I'm going to the" + line "#MON LEAGUE" + cont "to boot out the" + cont "ELITE FOUR!" + + para "I'll become the" + line "world's most" + cont "powerful trainer!" + + para $52, ", well" + line "good luck to you!" + cont "Don't sweat it!" + cont "Smell ya!" + done + diff --git a/text/maps/silph_co_8f.asm b/text/maps/silph_co_8f.asm index 657e45cd..900e134f 100644 --- a/text/maps/silph_co_8f.asm +++ b/text/maps/silph_co_8f.asm @@ -1,73 +1,9 @@ -_UnnamedText_51ebe:: ; 8488d (21:488d) - text $53, ": What" - line "kept you ", $52, "?" - done - -_UnnamedText_51ec3:: ; 848a2 (21:48a2) - text $53, ": Hahaha!" - line "I thought you'd" - cont "turn up if I" - cont "waited here!" - - para "I guess TEAM" - line "ROCKET slowed you" - cont "down! Not that I" - cont "care!" - - para "I saw you in" - line "SAFFRON, so I" - cont "decided to see if" - cont "you got better!" - done - -_UnnamedText_51ec8:: ; 8494a (21:494a) - text "Oh ho!" - line "So, you are ready" - cont "for BOSS ROCKET!" - prompt - -_UnnamedText_51ecd:: ; 84975 (21:4975) - text $53, ": How can" - line "I put this?" - - para "You're not good" - line "enough to play" - cont "with us big boys!" - prompt - -_UnnamedText_51ed2:: ; 849bd (21:49bd) - text "Well, ", $52, "!" - - para "I'm moving on up" - line "and ahead!" - - para "By checking my" - line "#DEX, I'm" - cont "starting to see" - cont "what's strong and" - cont "how they evolve!" - - para "I'm going to the" - line "#MON LEAGUE" - cont "to boot out the" - cont "ELITE FOUR!" - - para "I'll become the" - line "world's most" - cont "powerful trainer!" - - para $52, ", well" - line "good luck to you!" - cont "Don't sweat it!" - cont "Smell ya!" - done - -_UnnamedText_565be:: ; 84ac4 (21:4ac4) +_SilphCo8Text_565be:: ; 84ac4 (21:4ac4) text "I wonder if SILPH" line "is finished..." done -_UnnamedText_565c3:: ; 84ae6 (21:4ae6) +_SilphCo8Text_565c3:: ; 84ae6 (21:4ae6) text "Thanks for saving" line "us!" done diff --git a/text/maps/silph_co_9f.asm b/text/maps/silph_co_9f.asm index e59c911b..6854b081 100644 --- a/text/maps/silph_co_9f.asm +++ b/text/maps/silph_co_9f.asm @@ -1,14 +1,14 @@ -_UnnamedText_5d8e5:: ; 84c0b (21:4c0b) +_SilphCo9Text_5d8e5:: ; 84c0b (21:4c0b) text "You look tired!" line "You should take a" cont "quick nap!" prompt -_UnnamedText_5d8ea:: ; 84c39 (21:4c39) +_SilphCo9Text_5d8ea:: ; 84c39 (21:4c39) text "Don't give up!" done -_UnnamedText_5d8ef:: ; 84c48 (21:4c48) +_SilphCo9Text_5d8ef:: ; 84c48 (21:4c48) text "Thank you so" line "much!" done diff --git a/text/maps/ss_anne_5.asm b/text/maps/ss_anne_5.asm index 7b95f50d..2fdc5dd8 100644 --- a/text/maps/ss_anne_5.asm +++ b/text/maps/ss_anne_5.asm @@ -16,35 +16,35 @@ _SSAnne5Text3:: ; 80fda (20:4fda) line "get some air." done -_SSAnneBattleText1:: ; 8100b (20:500b) +_SSAnne5BattleText1:: ; 8100b (20:500b) text "Hey matey!" para "Let's do a little" line "jig!" done -_SSAnneEndBattleText1:: ; 8102d (20:502d) +_SSAnne5EndBattleText1:: ; 8102d (20:502d) text "You're" line "impressive!" prompt -_SSAnneAfterBattleText1:: ; 81040 (20:5040) +_SSAnne5AfterBattleText1:: ; 81040 (20:5040) text "How many kinds of" line "#MON do you" cont "think there are?" done -_SSAnneBattleText2:: ; 81070 (20:5070) +_SSAnne5BattleText2:: ; 81070 (20:5070) text "Ahoy there!" line "Are you seasick?" done -_SSAnneEndBattleText2:: ; 8108e (20:508e) +_SSAnne5EndBattleText2:: ; 8108e (20:508e) text "I was" line "just careless!" prompt -_SSAnneAfterBattleText2:: ; 810a4 (20:50a4) +_SSAnne5AfterBattleText2:: ; 810a4 (20:50a4) text "My Pa said there" line "are 100 kinds of" cont "#MON. I think" diff --git a/text/maps/ss_anne_6.asm b/text/maps/ss_anne_6.asm index f93e0378..5909c8b9 100644 --- a/text/maps/ss_anne_6.asm +++ b/text/maps/ss_anne_6.asm @@ -39,14 +39,14 @@ _SSAnne6Text6:: ; 811c9 (20:51c9) cont "Snivel..." done -_UnnamedText_61807:: ; 81203 (20:5203) +_SSAnne6Text_61807:: ; 81203 (20:5203) text "Er-hem! Indeed I" line "am le CHEF!" para "Le main course is" prompt -_UnnamedText_6180c:: ; 81233 (20:5233) +_SSAnne6Text_6180c:: ; 81233 (20:5233) text "Salmon du Salad!" para "Les guests may" @@ -54,14 +54,14 @@ _UnnamedText_6180c:: ; 81233 (20:5233) cont "again, however!" done -_UnnamedText_61811:: ; 81273 (20:5273) +_SSAnne6Text_61811:: ; 81273 (20:5273) text "Eels au Barbecue!" para "Les guests will" line "mutiny, I fear." done -_UnnamedText_61816:: ; 812a6 (20:52a6) +_SSAnne6Text_61816:: ; 812a6 (20:52a6) text "Prime Beef Steak!" para "But, have I enough" diff --git a/text/maps/ss_anne_7.asm b/text/maps/ss_anne_7.asm index 39b1ad70..9e87cdf5 100644 --- a/text/maps/ss_anne_7.asm +++ b/text/maps/ss_anne_7.asm @@ -36,7 +36,7 @@ _ReceivedHM01Text:: ; 8140d (20:540d) TX_RAM $cf4b text "!@@" -_UnnamedText_61932:: ; 8141c (20:541c) +_SSAnne7Text_61932:: ; 8141c (20:541c) text "CAPTAIN: Whew!" para "Now that I'm not" diff --git a/text/maps/ss_anne_8.asm b/text/maps/ss_anne_8.asm index 30d1614d..5087c34f 100644 --- a/text/maps/ss_anne_8.asm +++ b/text/maps/ss_anne_8.asm @@ -30,7 +30,7 @@ _SSAnne8EndBattleText2:: ; 81582 (20:5582) line "You rude child!" prompt -_UnnamedText_61a24:: ; 8159a (20:559a) +_SSAnne8Text_61a24:: ; 8159a (20:559a) text "I wish to be left" line "alone! Get out!" done diff --git a/text/maps/ss_anne_9.asm b/text/maps/ss_anne_9.asm index 79bc8cbf..e133fc2c 100644 --- a/text/maps/ss_anne_9.asm +++ b/text/maps/ss_anne_9.asm @@ -1,4 +1,4 @@ -_UnnamedText_61bf2:: ; 81799 (20:5799) +_SSAnne9Text_61bf2:: ; 81799 (20:5799) text "In all my travels" line "I've never seen" cont "any #MON sleep" @@ -8,19 +8,19 @@ _UnnamedText_61bf2:: ; 81799 (20:5799) line "like this!" prompt -_UnnamedText_61c01:: ; 817f5 (20:57f5) +_SSAnne9Text_61c01:: ; 817f5 (20:57f5) text "Ah yes, I have" line "seen some #MON" cont "ferry people" cont "across the water!" done -_UnnamedText_61c10:: ; 81833 (20:5833) +_SSAnne9Text_61c10:: ; 81833 (20:5833) text "#MON can CUT" line "down small bushes." done -_UnnamedText_61c1f:: ; 81854 (20:5854) +_SSAnne9Text_61c1f:: ; 81854 (20:5854) text "Have you gone to" line "the SAFARI ZONE" cont "in FUCHSIA CITY?" @@ -29,19 +29,19 @@ _UnnamedText_61c1f:: ; 81854 (20:5854) line "kinds of #MON!!" done -_UnnamedText_61c2e:: ; 818a8 (20:58a8) +_SSAnne9Text_61c2e:: ; 818a8 (20:58a8) text "Me and my Daddy" line "think the SAFARI" cont "ZONE is awesome!" done -_UnnamedText_61c3d:: ; 818db (20:58db) +_SSAnne9Text_61c3d:: ; 818db (20:58db) text "The CAPTAIN looked" line "really sick and" cont "pale!" done -_UnnamedText_61c4c:: ; 81905 (20:5905) +_SSAnne9Text_61c4c:: ; 81905 (20:5905) text "I hear many people" line "get seasick!" done diff --git a/text/maps/vermilion_city.asm b/text/maps/vermilion_city.asm index 48cfa399..9c27bf64 100644 --- a/text/maps/vermilion_city.asm +++ b/text/maps/vermilion_city.asm @@ -7,13 +7,13 @@ _VermilionCityText1:: ; a5668 (29:5668) cont "toxic sludge!" done -_UnnamedText_198a7:: ; a56b5 (29:56b5) +_VermilionCityText_198a7:: ; a56b5 (29:56b5) text "Did you see S.S." line "ANNE moored in" cont "the harbor?" done -_UnnamedText_198ac:: ; a56e2 (29:56e2) +_VermilionCityText_198ac:: ; a56e2 (29:56e2) text "So, S.S.ANNE has" line "departed!" diff --git a/text/maps/vermilion_fishing_house.asm b/text/maps/vermilion_fishing_house.asm index 76b5c209..5ed59033 100644 --- a/text/maps/vermilion_fishing_house.asm +++ b/text/maps/vermilion_fishing_house.asm @@ -1,4 +1,4 @@ -_UnnamedText_560b1:: ; 9c510 (27:4510) +_VermilionHouse2Text_560b1:: ; 9c510 (27:4510) text "I'm the FISHING" line "GURU!" @@ -9,7 +9,7 @@ _UnnamedText_560b1:: ; 9c510 (27:4510) line "fish?" done -_UnnamedText_560b6:: ; 9c554 (27:4554) +_VermilionHouse2Text_560b6:: ; 9c554 (27:4554) text "Grand! I like" line "your style!" @@ -21,7 +21,7 @@ _UnnamedText_560b6:: ; 9c554 (27:4554) TX_RAM $cf4b text "!@@" -_UnnamedText_560bb:: ; 9c5a4 (27:45a4) +_VermilionHouse2Text_560bb:: ; 9c5a4 (27:45a4) db $0 para "Fishing is a way" line "of life!" @@ -32,12 +32,12 @@ _UnnamedText_560bb:: ; 9c5a4 (27:45a4) cont "one, young one!" done -_UnnamedText_560c0:: ; 9c601 (27:4601) +_VermilionHouse2Text_560c0:: ; 9c601 (27:4601) text "Oh... That's so" line "disappointing..." done -_UnnamedText_560c5:: ; 9c622 (27:4622) +_VermilionHouse2Text_560c5:: ; 9c622 (27:4622) text "Hello there," line $52, "!" @@ -45,7 +45,7 @@ _UnnamedText_560c5:: ; 9c622 (27:4622) line "biting?" done -_UnnamedText_560ca:: ; 9c64c (27:464c) +_VermilionHouse2Text_560ca:: ; 9c64c (27:464c) text "Oh no!" para "You have no room" diff --git a/text/maps/vermilion_gym_1.asm b/text/maps/vermilion_gym_1.asm index 29807bcb..10868bd4 100644 --- a/text/maps/vermilion_gym_1.asm +++ b/text/maps/vermilion_gym_1.asm @@ -1,4 +1,4 @@ -_UnnamedText_5cb6d:: ; 9aaa5 (26:6aa5) +_VermilionGymText_5cb6d:: ; 9aaa5 (26:6aa5) text "Hey, kid! What do" line "you think you're" cont "doing here?" diff --git a/text/maps/vermilion_gym_2.asm b/text/maps/vermilion_gym_2.asm index 8b40d630..28304f37 100644 --- a/text/maps/vermilion_gym_2.asm +++ b/text/maps/vermilion_gym_2.asm @@ -1,4 +1,4 @@ -_UnnamedText_5cb72:: ; 9c000 (27:4000) +_VermilionGymText_5cb72:: ; 9c000 (27:4000) text "A little word of" line "advice, kid!" @@ -10,7 +10,7 @@ _UnnamedText_5cb72:: ; 9c000 (27:4000) cont "type #MON!" done -_UnnamedText_5cb77:: ; 9c069 (27:4069) +_VermilionGymText_5cb77:: ; 9c069 (27:4069) text "The THUNDERBADGE" line "cranks up your" cont "#MON's SPEED!" @@ -111,7 +111,7 @@ _VermilionGymAfterBattleText3:: ; 9c2c0 (27:42c0) cont "next to it!" done -_UnnamedText_5cbf4:: ; 9c32b (27:432b) +_VermilionGymText_5cbf4:: ; 9c32b (27:432b) text "Yo! Champ in" line "making!" @@ -137,7 +137,7 @@ _UnnamedText_5cbf4:: ; 9c32b (27:432b) cont "get to him!" done -_UnnamedText_5cbf9:: ; 9c429 (27:4429) +_VermilionGymText_5cbf9:: ; 9c429 (27:4429) text "Whew! That match" line "was electric!" done diff --git a/text/maps/viridian_city.asm b/text/maps/viridian_city.asm index a2a15caf..7ff2d71d 100644 --- a/text/maps/viridian_city.asm +++ b/text/maps/viridian_city.asm @@ -9,7 +9,7 @@ _ViridianCityText1:: ; a43cc (29:43cc) cont "time, anywhere!" done -_UnnamedText_19122:: ; a4437 (29:4437) +_ViridianCityText_19122:: ; a4437 (29:4437) text "This #MON GYM" line "is always closed." @@ -17,23 +17,23 @@ _UnnamedText_19122:: ; a4437 (29:4437) line "LEADER is?" done -_UnnamedText_19127:: ; a4474 (29:4474) +_ViridianCityText_19127:: ; a4474 (29:4474) text "VIRIDIAN GYM's" line "LEADER returned!" done -_UnnamedText_1914d:: ; a4494 (29:4494) +_ViridianCityText_1914d:: ; a4494 (29:4494) text "You want to know" line "about the 2 kinds" cont "of caterpillar" cont "#MON?" done -_UnnamedText_19152:: ; a44cd (29:44cd) +_ViridianCityText_19152:: ; a44cd (29:44cd) text "Oh, OK then!" done -_UnnamedText_19157:: ; a44db (29:44db) +_ViridianCityText_19157:: ; a44db (29:44db) text "CATERPIE has no" line "poison, but" cont "WEEDLE does." @@ -42,14 +42,14 @@ _UnnamedText_19157:: ; a44db (29:44db) line "POISON STING!" done -_UnnamedText_19175:: ; a4525 (29:4525) +_ViridianCityText_19175:: ; a4525 (29:4525) text "Oh Grandpa! Don't" line "be so mean!" cont "He hasn't had his" cont "coffee yet." done -_UnnamedText_1917a:: ; a4560 (29:4560) +_ViridianCityText_1917a:: ; a4560 (29:4560) text "When I go shop in" line "PEWTER CITY, I" cont "have to take the" @@ -57,7 +57,7 @@ _UnnamedText_1917a:: ; a4560 (29:4560) cont "VIRIDIAN FOREST." done -_UnnamedText_19191:: ; a45b5 (29:45b5) +_ViridianCityText_19191:: ; a45b5 (29:45b5) text "You can't go" line "through here!" @@ -65,7 +65,7 @@ _UnnamedText_19191:: ; a45b5 (29:45b5) line "property!" done -_UnnamedText_191ca:: ; a45ea (29:45ea) +_ViridianCityText_191ca:: ; a45ea (29:45ea) text "Yawn!" line "I must have dozed" cont "off in the sun." @@ -97,7 +97,7 @@ _TM42NoRoomText:: ; a46d7 (29:46d7) line "stuff already." done -_UnnamedText_1920a:: ; a46f9 (29:46f9) +_ViridianCityText_1920a:: ; a46f9 (29:46f9) text "Ahh, I've had my" line "coffee now and I" cont "feel great!" @@ -109,7 +109,7 @@ _UnnamedText_1920a:: ; a46f9 (29:46f9) line "hurry?" done -_UnnamedText_1920f:: ; a4754 (29:4754) +_ViridianCityText_1920f:: ; a4754 (29:4754) text "I see you're using" line "a #DEX." @@ -126,12 +126,12 @@ _UnnamedText_1920f:: ; a4754 (29:4754) line "how to then." done -_UnnamedText_19214:: ; a47e6 (29:47e6) +_ViridianCityText_19214:: ; a47e6 (29:47e6) text "Time is money..." line "Go along then." done -_UnnamedText_19219:: ; a4807 (29:4807) +_ViridianCityText_19219:: ; a4807 (29:4807) text "First, you need" line "to weaken the" cont "target #MON." diff --git a/text/maps/viridian_gym.asm b/text/maps/viridian_gym.asm index 73904f7c..e1828c32 100644 --- a/text/maps/viridian_gym.asm +++ b/text/maps/viridian_gym.asm @@ -1,4 +1,4 @@ -_UnnamedText_74ace:: ; 95e09 (25:5e09) +_ViridianGymText_74ace:: ; 95e09 (25:5e09) text "Fwahahaha! This is" line "my hideout!" @@ -18,7 +18,7 @@ _UnnamedText_74ace:: ; 95e09 (25:5e09) cont "greatest trainer!" done -_UnnamedText_74ad3:: ; 95ed5 (25:5ed5) +_ViridianGymText_74ad3:: ; 95ed5 (25:5ed5) text "Ha!" line "That was a truly" cont "intense fight!" @@ -26,7 +26,7 @@ _UnnamedText_74ad3:: ; 95ed5 (25:5ed5) cont "As proof, here is" cont "the EARTHBADGE!@@" -_UnnamedText_74ad9:: ; 95f2b (25:5f2b) +_ViridianGymText_74ad9:: ; 95f2b (25:5f2b) text "Having lost, I" line "cannot face my" cont "underlings!" @@ -211,7 +211,7 @@ _ViridianGymAfterBattleText8:: ; 96412 (25:6412) cont "our GYM LEADER!" done -_UnnamedText_74bd4:: ; 96451 (25:6451) +_ViridianGymText_74bd4:: ; 96451 (25:6451) text "Yo! Champ in" line "making!" @@ -229,7 +229,7 @@ _UnnamedText_74bd4:: ; 96451 (25:6451) cont "#MON!" done -_UnnamedText_74bd9:: ; 964fb (25:64fb) +_ViridianGymText_74bd9:: ; 964fb (25:64fb) text "Blow me away!" line "GIOVANNI was the" cont "GYM LEADER here?" diff --git a/text/maps/viridian_house.asm b/text/maps/viridian_house.asm index ca382c0a..eec10c59 100644 --- a/text/maps/viridian_house.asm +++ b/text/maps/viridian_house.asm @@ -13,7 +13,7 @@ _ViridianHouseText2:: ; 95dc7 (25:5dc7) line "#MON too." done -_UnnamedText_1d5b1:: ; 95de1 (25:5de1) +_ViridianHouseText_1d5b1:: ; 95de1 (25:5de1) text "SPEARY: Tetweet!" done diff --git a/text/maps/wardens_house.asm b/text/maps/wardens_house.asm index 349c0c65..d5834483 100644 --- a/text/maps/wardens_house.asm +++ b/text/maps/wardens_house.asm @@ -72,12 +72,12 @@ _HM04NoRoomText:: ; 9e67a (27:667a) line "stuffed full!" done -_UnnamedText_75176:: ; 9e696 (27:6696) +_FuchsiaHouse2Text_75176:: ; 9e696 (27:6696) text "#MON photos" line "and fossils." done -_UnnamedText_7517b:: ; 9e6b0 (27:66b0) +_FuchsiaHouse2Text_7517b:: ; 9e6b0 (27:66b0) text "Old #MON" line "merchandise." done diff --git a/text/monster_names.asm b/text/monster_names.asm new file mode 100755 index 00000000..c7e0226f --- /dev/null +++ b/text/monster_names.asm @@ -0,0 +1,191 @@ +MonsterNames: ; 1c21e (7:421e) + db "RHYDON@@@@" + db "KANGASKHAN" + db "NIDORAN♂@@" + db "CLEFAIRY@@" + db "SPEAROW@@@" + db "VOLTORB@@@" + db "NIDOKING@@" + db "SLOWBRO@@@" + db "IVYSAUR@@@" + db "EXEGGUTOR@" + db "LICKITUNG@" + db "EXEGGCUTE@" + db "GRIMER@@@@" + db "GENGAR@@@@" + db "NIDORAN♀@@" + db "NIDOQUEEN@" + db "CUBONE@@@@" + db "RHYHORN@@@" + db "LAPRAS@@@@" + db "ARCANINE@@" + db "MEW@@@@@@@" + db "GYARADOS@@" + db "SHELLDER@@" + db "TENTACOOL@" + db "GASTLY@@@@" + db "SCYTHER@@@" + db "STARYU@@@@" + db "BLASTOISE@" + db "PINSIR@@@@" + db "TANGELA@@@" + db "MISSINGNO." + db "MISSINGNO." + db "GROWLITHE@" + db "ONIX@@@@@@" + db "FEAROW@@@@" + db "PIDGEY@@@@" + db "SLOWPOKE@@" + db "KADABRA@@@" + db "GRAVELER@@" + db "CHANSEY@@@" + db "MACHOKE@@@" + db "MR.MIME@@@" + db "HITMONLEE@" + db "HITMONCHAN" + db "ARBOK@@@@@" + db "PARASECT@@" + db "PSYDUCK@@@" + db "DROWZEE@@@" + db "GOLEM@@@@@" + db "MISSINGNO." + db "MAGMAR@@@@" + db "MISSINGNO." + db "ELECTABUZZ" + db "MAGNETON@@" + db "KOFFING@@@" + db "MISSINGNO." + db "MANKEY@@@@" + db "SEEL@@@@@@" + db "DIGLETT@@@" + db "TAUROS@@@@" + db "MISSINGNO." + db "MISSINGNO." + db "MISSINGNO." + db "FARFETCH'D" + db "VENONAT@@@" + db "DRAGONITE@" + db "MISSINGNO." + db "MISSINGNO." + db "MISSINGNO." + db "DODUO@@@@@" + db "POLIWAG@@@" + db "JYNX@@@@@@" + db "MOLTRES@@@" + db "ARTICUNO@@" + db "ZAPDOS@@@@" + db "DITTO@@@@@" + db "MEOWTH@@@@" + db "KRABBY@@@@" + db "MISSINGNO." + db "MISSINGNO." + db "MISSINGNO." + db "VULPIX@@@@" + db "NINETALES@" + db "PIKACHU@@@" + db "RAICHU@@@@" + db "MISSINGNO." + db "MISSINGNO." + db "DRATINI@@@" + db "DRAGONAIR@" + db "KABUTO@@@@" + db "KABUTOPS@@" + db "HORSEA@@@@" + db "SEADRA@@@@" + db "MISSINGNO." + db "MISSINGNO." + db "SANDSHREW@" + db "SANDSLASH@" + db "OMANYTE@@@" + db "OMASTAR@@@" + db "JIGGLYPUFF" + db "WIGGLYTUFF" + db "EEVEE@@@@@" + db "FLAREON@@@" + db "JOLTEON@@@" + db "VAPOREON@@" + db "MACHOP@@@@" + db "ZUBAT@@@@@" + db "EKANS@@@@@" + db "PARAS@@@@@" + db "POLIWHIRL@" + db "POLIWRATH@" + db "WEEDLE@@@@" + db "KAKUNA@@@@" + db "BEEDRILL@@" + db "MISSINGNO." + db "DODRIO@@@@" + db "PRIMEAPE@@" + db "DUGTRIO@@@" + db "VENOMOTH@@" + db "DEWGONG@@@" + db "MISSINGNO." + db "MISSINGNO." + db "CATERPIE@@" + db "METAPOD@@@" + db "BUTTERFREE" + db "MACHAMP@@@" + db "MISSINGNO." + db "GOLDUCK@@@" + db "HYPNO@@@@@" + db "GOLBAT@@@@" + db "MEWTWO@@@@" + db "SNORLAX@@@" + db "MAGIKARP@@" + db "MISSINGNO." + db "MISSINGNO." + db "MUK@@@@@@@" + db "MISSINGNO." + db "KINGLER@@@" + db "CLOYSTER@@" + db "MISSINGNO." + db "ELECTRODE@" + db "CLEFABLE@@" + db "WEEZING@@@" + db "PERSIAN@@@" + db "MAROWAK@@@" + db "MISSINGNO." + db "HAUNTER@@@" + db "ABRA@@@@@@" + db "ALAKAZAM@@" + db "PIDGEOTTO@" + db "PIDGEOT@@@" + db "STARMIE@@@" + db "BULBASAUR@" + db "VENUSAUR@@" + db "TENTACRUEL" + db "MISSINGNO." + db "GOLDEEN@@@" + db "SEAKING@@@" + db "MISSINGNO." + db "MISSINGNO." + db "MISSINGNO." + db "MISSINGNO." + db "PONYTA@@@@" + db "RAPIDASH@@" + db "RATTATA@@@" + db "RATICATE@@" + db "NIDORINO@@" + db "NIDORINA@@" + db "GEODUDE@@@" + db "PORYGON@@@" + db "AERODACTYL" + db "MISSINGNO." + db "MAGNEMITE@" + db "MISSINGNO." + db "MISSINGNO." + db "CHARMANDER" + db "SQUIRTLE@@" + db "CHARMELEON" + db "WARTORTLE@" + db "CHARIZARD@" + db "MISSINGNO." + db "MISSINGNO." + db "MISSINGNO." + db "MISSINGNO." + db "ODDISH@@@@" + db "GLOOM@@@@@" + db "VILEPLUME@" + db "BELLSPROUT" + db "WEEPINBELL" + db "VICTREEBEL" diff --git a/text/trainer_names.asm b/text/trainer_names.asm new file mode 100755 index 00000000..6a3cf8f7 --- /dev/null +++ b/text/trainer_names.asm @@ -0,0 +1,48 @@ +TrainerNames: ; 399ff (e:59ff) + db "YOUNGSTER@" + db "BUG CATCHER@" + db "LASS@" + db "SAILOR@" + db "JR.TRAINER♂@" + db "JR.TRAINER♀@" + db "POKéMANIAC@" + db "SUPER NERD@" + db "HIKER@" + db "BIKER@" + db "BURGLAR@" + db "ENGINEER@" + db "JUGGLER@" + db "FISHERMAN@" + db "SWIMMER@" + db "CUE BALL@" + db "GAMBLER@" + db "BEAUTY@" + db "PSYCHIC@" + db "ROCKER@" + db "JUGGLER@" + db "TAMER@" + db "BIRD KEEPER@" + db "BLACKBELT@" + db "RIVAL1@" + db "PROF.OAK@" + db "CHIEF@" + db "SCIENTIST@" + db "GIOVANNI@" + db "ROCKET@" + db "COOLTRAINER♂@" + db "COOLTRAINER♀@" + db "BRUNO@" + db "BROCK@" + db "MISTY@" + db "LT.SURGE@" + db "ERIKA@" + db "KOGA@" + db "BLAINE@" + db "SABRINA@" + db "GENTLEMAN@" + db "RIVAL2@" + db "RIVAL3@" + db "LORELEI@" + db "CHANNELER@" + db "AGATHA@" + db "LANCE@" diff --git a/text/type_names.asm b/text/type_names.asm new file mode 100755 index 00000000..63d95669 --- /dev/null +++ b/text/type_names.asm @@ -0,0 +1,61 @@ +TypeNamePointers: ; 27dae (9:7dae) + dw Type00Name + dw Type01Name + dw Type02Name + dw Type03Name + dw Type04Name + dw Type05Name + dw Type06Name + dw Type07Name + dw Type08Name + dw Type00Name + dw Type00Name + dw Type00Name + dw Type00Name + dw Type00Name + dw Type00Name + dw Type00Name + dw Type00Name + dw Type00Name + dw Type00Name + dw Type00Name + dw Type14Name + dw Type15Name + dw Type16Name + dw Type17Name + dw Type18Name + dw Type19Name + dw Type1AName + +Type00Name: ; 27de4 (9:7de4) + db "NORMAL@" +Type01Name: ; 27deb (9:7deb) + db "FIGHTING@" +Type02Name: ; 27df4 (9:7df4) + db "FLYING@" +Type03Name: ; 27dfb (9:7dfb) + db "POISON@" +Type14Name: ; 27e02 (9:7e02) + db "FIRE@" +Type15Name: ; 27e07 (9:7e07) + db "WATER@" +Type16Name: ; 27e0d (9:7e0d) + db "GRASS@" +Type17Name: ; 27e13 (9:7e13) + db "ELECTRIC@" +Type18Name: ; 27e1c (9:7e1c) + db "PSYCHIC@" +Type19Name: ; 27e24 (9:7e24) + db "ICE@" +Type04Name: ; 27e28 (9:7e28) + db "GROUND@" +Type05Name: ; 27e2f (9:7e2f) + db "ROCK@" +Type06Name: ; 27e34 (9:7e34) + db "BIRD@" +Type07Name: ; 27e39 (9:7e39) + db "BUG@" +Type08Name: ; 27e3d (9:7e3d) + db "GHOST@" +Type1AName: ; 27e43 (9:7e43) + db "DRAGON@" |