diff options
Diffstat (limited to 'main.asm')
-rwxr-xr-x | main.asm | 168 |
1 files changed, 126 insertions, 42 deletions
@@ -231,27 +231,58 @@ INCLUDE "engine/battle/moveEffects/substitute_effect.asm" INCLUDE "engine/menu/pc.asm" SECTION "bank06",ROMX,BANK[$06] - dr $18000,$1a4ea -PlayerStepOutFromDoor: ; 1a4ea (6:64ea) - dr $1a4ea,$1a527 -_EndNPCMovementScript: ; 1a527 (6:6527) - dr $1a527,$1a54c -ProfOakMovementScriptPointerTable: ; 1a54c (6:654c) - dr $1a54c,$1a622 -PewterMuseumGuyMovementScriptPointerTable: ; 1a622 (6:6622) - dr $1a622,$1a685 -PewterGymGuyMovementScriptPointerTable: ; 1a685 (6:6685) - dr $1a685,$1a785 -IsPlayerStandingOnDoorTile: ; 1a785 (6:6785) - dr $1a785,$1a7f4 -HandleLedges: ; 1a7f4 (6:67f4) - dr $1a7f4,$1c000 + + dr $18000,$18dee ; headers, objects, blocks +; INCLUDE "data/mapHeaders/celadoncity.asm" +; INCLUDE "data/mapObjects/celadoncity.asm" +; CeladonCityBlocks: INCBIN "maps/celadoncity.blk" + +; INCLUDE "data/mapHeaders/pallettown.asm" +; INCLUDE "data/mapObjects/pallettown.asm" +; PalletTownBlocks: INCBIN "maps/pallettown.blk" + +; INCLUDE "data/mapHeaders/viridiancity.asm" +; INCLUDE "data/mapObjects/viridiancity.asm" +; ViridianCityBlocks: INCBIN "maps/viridiancity.blk" + +; INCLUDE "data/mapHeaders/pewtercity.asm" +; INCLUDE "data/mapObjects/pewtercity.asm" +; PewterCityBlocks: INCBIN "maps/pewtercity.blk" + +; INCLUDE "data/mapHeaders/ceruleancity.asm" +; INCLUDE "data/mapObjects/ceruleancity.asm" +; CeruleanCityBlocks: INCBIN "maps/ceruleancity.blk" + +; INCLUDE "data/mapHeaders/vermilioncity.asm" +; INCLUDE "data/mapObjects/vermilioncity.asm" +; VermilionCityBlocks: INCBIN "maps/vermilioncity.blk" + +; INCLUDE "data/mapHeaders/fuchsiacity.asm" +; INCLUDE "data/mapObjects/fuchsiacity.asm" +; FuchsiaCityBlocks: INCBIN "maps/fuchsiacity.blk" + + dr $18dee,$1a4ea ; map scripts + +; INCLUDE "scripts/pallettown.asm" +; INCLUDE "scripts/viridiancity.asm" +; INCLUDE "scripts/pewtercity.asm" +; INCLUDE "scripts/ceruleancity.asm" +; INCLUDE "scripts/vermilioncity.asm" +; INCLUDE "scripts/celadoncity.asm" +; INCLUDE "scripts/fuchsiacity.asm" + +INCLUDE "engine/overworld/npc_movement.asm" +INCLUDE "engine/overworld/doors.asm" +INCLUDE "engine/overworld/ledges.asm" SECTION "bank07",ROMX,BANK[$07] - dr $1c000,$1c21e -DoClearSaveDialogue: ; 1c21e (7:421e) - dr $1c21e,$1e2ae + dr $1c000,$1c21e ; headers, objects, blocks + +INCLUDE "engine/clear_save.asm" +INCLUDE "engine/predefs7.asm" + + dr $1c2c2,$1e2ae ; map scripts OpenOaksPC: ; 1e2ae (7:62ae) dr $1e2ae,$1e321 SafariZoneCheck: ; 1e321 (7:6e21) @@ -657,7 +688,7 @@ INCLUDE "engine/overworld/dungeon_warps.asm" SECTION "bank12",ROMX,BANK[$12] - dr $48000,$4c000 + dr $48000,$4a540 SECTION "bank13",ROMX,BANK[$13] @@ -711,20 +742,18 @@ AgathaPic: INCBIN "pic/trainer/agatha.pic" LancePic: INCBIN "pic/trainer/lance.pic" JessieJamesPic: INCBIN "pic/ytrainer/jessiejames.pic" - dr $4fe79,$50000 + dr $4fe79,$4ff1a SECTION "bank14",ROMX,BANK[$14] dr $50000,$525d8 - INCLUDE "engine/overworld/card_key.asm" INCLUDE "engine/menu/prize_menu.asm" INCLUDE "engine/hidden_object_functions14.asm" - SECTION "bank15",ROMX,BANK[$15] dr $54000,$5525f @@ -739,7 +768,7 @@ _SetSpritePosition1: ; 56789 (15:6789) _SetSpritePosition2: ; 567a9 (15:67a9) dr $567a9,$567cd TrainerWalkUpToPlayer: ; 567cd (15:67cd) - dr $567cd,$58000 + dr $567cd,$56997 SECTION "bank16",ROMX,BANK[$16] dr $58000,$58d99 @@ -748,19 +777,19 @@ CalcLevelFromExperience: ; 58d99 (16:4d99) CalcExperience: ; 58dc0 (16:4dc0) dr $58dc0,$58e8b PrintStatusAilment: ; 58e8b (16:4e8b) - dr $58e8b,$5c000 + dr $58e8b,$5a555 SECTION "bank17",ROMX,BANK[$17] dr $5c000,$5da70 EvolveMon: ; 5da70 (17:5a70) - dr $5da70,$60000 + dr $5da70,$5df60 SECTION "bank18",ROMX,BANK[$18] - dr $60000,$64000 + dr $60000,$62702 SECTION "bank19",ROMX,BANK[$19] @@ -770,7 +799,7 @@ Overworld_GFX: SECTION "bank1A",ROMX,BANK[$1A] - dr $68000,$6c000 + dr $68000,$6bff1 SECTION "bank1B",ROMX,BANK[$1B] @@ -813,7 +842,7 @@ HiddenItemNear: ; 7405c (1d:405c) VendingMachineMenu: ; 74726 (1d:4726) dr $74726,$75dfe PKMNLeaguePC: ; 75dfe (1d:5dfe) - dr $75dfe,$78000 + dr $75dfe,$76177 SECTION "bank1E",ROMX,BANK[$1E] @@ -848,30 +877,85 @@ SECTION "bank30",ROMX,BANK[$30] SECTION "bank39",ROMX,BANK[$39] - dr $e4000,$e8000 + dr $e4000,$e7ea3 SECTION "bank3A",ROMX,BANK[$3A] -MonsterNames: ; e8000 (3a:4000) - dr $e8000,$e876c +INCLUDE "text/monster_names.asm" IsPlayerJustOutsideMap: ; e876c (3a:476c) - dr $e876c,$e8a5e -Func_e8a5e: ; e8a5e (3a:4a5e) - dr $e8a5e,$e8b74 -Func_e8b74: ; e8b74 (3a:4b74) - dr $e8b74,$e8d35 -Func_e8d35:: ; e8d35 (3a:4d35) - dr $e8d35,$e8e79 + ld a, [wYCoord] + ld b, a + ld a, [wCurMapHeight] + call Func_e877e + ret z + ld a, [wXCoord] + ld b, a + ld a, [wCurMapWidth] +Func_e877e: + add a + cp b + ret z + inc b + ret + +INCLUDE "engine/printer.asm" + Func_e8e79: ; e8e79 (3a:4e79) - dr $e8e79,$e928a + dr $e8e79,$e8eca +Func_e8eca: ; e8eca (3a:4eca) + dr $e8eca,$e8efc +Func_e8efc: ; e8efc (3a:4efc) + dr $e8efc,$e8f09 +Func_e8f09: ; e8f09 (3a:4f09) + dr $e8f09,$e8f16 +Func_e8f16: ; e8f16 (3a:4f16) + dr $e8f16,$e8f24 +Func_e8f24: ; e8f24 (3a:4f24) + dr $e8f24,$e8f3b +Func_e8f3b: ; e8f3b (3a:4f3b) + dr $e8f3b,$e8f51 +Func_e8f51: ; e8f51 (3a:4f51) + dr $e8f51,$e8f82 +Func_e8f82: ; e8f82 (3a:4f82) + dr $e8f82,$e928a SurfingPikachu2Graphics: INCBIN "gfx/surfing_pikachu_2.2bpp" - dr $e988a,$e9bfa +Func_e988a: ; e988a (3a:588a) + dr $e988a,$e98ec +Func_e98ec: ; e98ec (3a:58ec) + dr $e98ec,$e9907 +Func_e9907: ; e9907 (3a:5907) + dr $e9907,$e9922 +Func_e9922: ; e9922 (3a:5922) + dr $e9922,$e9bfa SurfingPikachu3Graphics: INCBIN "gfx/surfing_pikachu_3.t1.2bpp" - dr $ea3ea,$eaa02 +INCLUDE "engine/unknown_ea3ea.asm" + FreezeEnemyTrainerSprite: ; eaa02 (3a:6a02) - dr $eaa02,$ec000 + ld a, [wCurMap] + cp POKEMONTOWER_7 + ret z ; the Rockets on Pokemon Tower 7F leave after battling, so don't freeze them + ld hl, RivalIDs + ld a, [wEngagedTrainerClass] + ld b, a +.loop + ld a, [hli] + cp $ff + jr z, .notRival + cp b + ret z ; the rival leaves after battling, so don't freeze him + jr .loop +.notRival + ld a, [wSpriteIndex] + ld [H_SPRITEINDEX], a + jp SetSpriteMovementBytesToFF + +RivalIDs: ; eaa20 (3a:6a20) + db OPP_SONY1 + db OPP_SONY2 + db OPP_SONY3 + db $ff SECTION "bank3C",ROMX,BANK[$3C] |