diff options
author | Rangi <remy.oukaour+rangi42@gmail.com> | 2020-07-22 15:23:02 -0400 |
---|---|---|
committer | Rangi <remy.oukaour+rangi42@gmail.com> | 2020-07-22 15:23:02 -0400 |
commit | 3f392c279248562068a80ceaf2884f62a18f6e17 (patch) | |
tree | 134d7e32199962c4336e52354ba54945a0b29acd | |
parent | 53d4a649b91dc59c3b3722ccaf0b830d772b8ea2 (diff) |
Factor out tables into data/overworld/
-rw-r--r-- | constants/collision_constants.asm | 4 | ||||
-rw-r--r-- | constants/engine_flags.asm | 2 | ||||
-rw-r--r-- | constants/script_constants.asm | 2 | ||||
-rw-r--r-- | constants/tileset_constants.asm | 2 | ||||
-rw-r--r-- | data/events/engine_flags.asm (renamed from data/engine_flags.asm) | 0 | ||||
-rw-r--r-- | data/events/special_pointers.asm (renamed from data/special_pointers.asm) | 0 | ||||
-rw-r--r-- | data/events/std_scripts.asm | 52 | ||||
-rw-r--r-- | data/overworld/collision_permissions.asm (renamed from data/collision_permissions.asm) | 0 | ||||
-rw-r--r-- | data/overworld/scripting.asm | 164 | ||||
-rw-r--r-- | data/overworld/tilesets.asm (renamed from data/tilesets.asm) | 0 | ||||
-rw-r--r-- | data/overworld/variables.asm | 27 | ||||
-rw-r--r-- | engine/events/engine_flags.asm | 2 | ||||
-rw-r--r-- | engine/events/specials.asm | 2 | ||||
-rw-r--r-- | engine/events/std_scripts.asm | 53 | ||||
-rw-r--r-- | engine/overworld/scripting.asm | 165 | ||||
-rw-r--r-- | engine/overworld/variables.asm | 71 | ||||
-rw-r--r-- | macros/scripts/events.asm | 2 | ||||
-rw-r--r-- | main.asm | 4 |
18 files changed, 278 insertions, 274 deletions
diff --git a/constants/collision_constants.asm b/constants/collision_constants.asm index c965b2f5..53eec8ba 100644 --- a/constants/collision_constants.asm +++ b/constants/collision_constants.asm @@ -1,11 +1,11 @@ -; collision permissions (see data/collision_permissions.asm) +; collision permissions (see data/overworld/collision_permissions.asm) LAND_TILE EQU $00 WATER_TILE EQU $01 WALL_TILE EQU $0f TALK EQU $10 ; collision data types (see data/tilesets/*_collision.asm) -; TileCollisionTable indexes (see data/collision_permissions.asm) +; TileCollisionTable indexes (see data/overworld/collision_permissions.asm) COLL_FLOOR EQU $00 COLL_01 EQU $01 ; garbage COLL_03 EQU $03 ; garbage diff --git a/constants/engine_flags.asm b/constants/engine_flags.asm index a09427df..2f8f9260 100644 --- a/constants/engine_flags.asm +++ b/constants/engine_flags.asm @@ -1,4 +1,4 @@ -; EngineFlags indexes (see data/engine_flags.asm) +; EngineFlags indexes (see data/events/engine_flags.asm) const_def ; wPokegearFlags const ENGINE_RADIO_CARD diff --git a/constants/script_constants.asm b/constants/script_constants.asm index 89e03dcf..2a57c494 100644 --- a/constants/script_constants.asm +++ b/constants/script_constants.asm @@ -41,7 +41,7 @@ NUM_STRING_BUFFERS EQU const_value const TRAINERTEXT_LOSS ; readvar/writevar/loadvar arguments -; _GetVarAction.VarActionTable indexes (see engine/overworld/variables.asm) +; VarActionTable indexes (see data/overworld/variables.asm) const_def const VAR_STRINGBUFFER2 ; 00 const VAR_PARTYCOUNT ; 01 diff --git a/constants/tileset_constants.asm b/constants/tileset_constants.asm index e02393cb..fb713930 100644 --- a/constants/tileset_constants.asm +++ b/constants/tileset_constants.asm @@ -1,4 +1,4 @@ -; Tilesets indexes (see data/tilesets.asm) +; Tilesets indexes (see data/overworld/tilesets.asm) const_def 1 const TILESET_JOHTO ; 01 const TILESET_JOHTO_MODERN ; 02 diff --git a/data/engine_flags.asm b/data/events/engine_flags.asm index bd135f36..bd135f36 100644 --- a/data/engine_flags.asm +++ b/data/events/engine_flags.asm diff --git a/data/special_pointers.asm b/data/events/special_pointers.asm index b7e4d213..b7e4d213 100644 --- a/data/special_pointers.asm +++ b/data/events/special_pointers.asm diff --git a/data/events/std_scripts.asm b/data/events/std_scripts.asm new file mode 100644 index 00000000..2a7b48b9 --- /dev/null +++ b/data/events/std_scripts.asm @@ -0,0 +1,52 @@ +add_stdscript: MACRO +\1StdScript:: + dba \1 +ENDM + +StdScripts:: + add_stdscript PokecenterNurseScript + add_stdscript DifficultBookshelfScript + add_stdscript PictureBookshelfScript + add_stdscript MagazineBookshelfScript + add_stdscript TeamRocketOathScript + add_stdscript IncenseBurnerScript + add_stdscript MerchandiseShelfScript + add_stdscript TownMapScript + add_stdscript WindowScript + add_stdscript TVScript + add_stdscript HomepageScript ; unused + add_stdscript Radio1Script + add_stdscript Radio2Script + add_stdscript TrashCanScript + add_stdscript StrengthBoulderScript + add_stdscript SmashRockScript + add_stdscript PokecenterSignScript + add_stdscript MartSignScript + add_stdscript GoldenrodRocketsScript + add_stdscript RadioTowerRocketsScript + add_stdscript ElevatorButtonScript + add_stdscript DayToTextScript + add_stdscript BugContestResultsWarpScript + add_stdscript BugContestResultsScript + add_stdscript InitializeEventsScript + add_stdscript AskNumber1MScript + add_stdscript AskNumber2MScript + add_stdscript RegisteredNumberMScript + add_stdscript NumberAcceptedMScript + add_stdscript NumberDeclinedMScript + add_stdscript PhoneFullMScript + add_stdscript RematchMScript + add_stdscript AskNumber1FScript + add_stdscript AskNumber2FScript + add_stdscript RegisteredNumberFScript + add_stdscript NumberAcceptedFScript + add_stdscript NumberDeclinedFScript + add_stdscript PhoneFullFScript + add_stdscript RematchFScript + add_stdscript GymStatue1Script + add_stdscript GymStatue2Script + add_stdscript ReceiveItemScript + add_stdscript ReceiveTogepiEggScript + add_stdscript PCScript + add_stdscript GameCornerCoinVendorScript + add_stdscript HappinessCheckScript diff --git a/data/collision_permissions.asm b/data/overworld/collision_permissions.asm index 57172ca5..57172ca5 100644 --- a/data/collision_permissions.asm +++ b/data/overworld/collision_permissions.asm diff --git a/data/overworld/scripting.asm b/data/overworld/scripting.asm new file mode 100644 index 00000000..984a9bb7 --- /dev/null +++ b/data/overworld/scripting.asm @@ -0,0 +1,164 @@ +ScriptCommandTable: +; entries correspond to *_command constants (see macros/scripts/events.asm) + dw Script_scall ; 00 + dw Script_farscall ; 01 + dw Script_memcall ; 02 + dw Script_sjump ; 03 + dw Script_farsjump ; 04 + dw Script_memjump ; 05 + dw Script_ifequal ; 06 + dw Script_ifnotequal ; 07 + dw Script_iffalse ; 08 + dw Script_iftrue ; 09 + dw Script_ifgreater ; 0a + dw Script_ifless ; 0b + dw Script_jumpstd ; 0c + dw Script_callstd ; 0d + dw Script_callasm ; 0e + dw Script_special ; 0f + dw Script_memcallasm ; 10 + dw Script_checkmapscene ; 11 + dw Script_setmapscene ; 12 + dw Script_checkscene ; 13 + dw Script_setscene ; 14 + dw Script_setval ; 15 + dw Script_addval ; 16 + dw Script_random ; 17 + dw Script_checkver ; 18 + dw Script_readmem ; 19 + dw Script_writemem ; 1a + dw Script_loadmem ; 1b + dw Script_readvar ; 1c + dw Script_writevar ; 1d + dw Script_loadvar ; 1e + dw Script_giveitem ; 1f + dw Script_takeitem ; 20 + dw Script_checkitem ; 21 + dw Script_givemoney ; 22 + dw Script_takemoney ; 23 + dw Script_checkmoney ; 24 + dw Script_givecoins ; 25 + dw Script_takecoins ; 26 + dw Script_checkcoins ; 27 + dw Script_addcellnum ; 28 + dw Script_delcellnum ; 29 + dw Script_checkcellnum ; 2a + dw Script_checktime ; 2b + dw Script_checkpoke ; 2c + dw Script_givepoke ; 2d + dw Script_giveegg ; 2e + dw Script_givepokemail ; 2f + dw Script_checkpokemail ; 30 + dw Script_checkevent ; 31 + dw Script_clearevent ; 32 + dw Script_setevent ; 33 + dw Script_checkflag ; 34 + dw Script_clearflag ; 35 + dw Script_setflag ; 36 + dw Script_wildon ; 37 + dw Script_wildoff ; 38 + dw Script_xycompare ; 39 + dw Script_warpmod ; 3a + dw Script_blackoutmod ; 3b + dw Script_warp ; 3c + dw Script_getmoney ; 3d + dw Script_getcoins ; 3e + dw Script_getnum ; 3f + dw Script_getmonname ; 40 + dw Script_getitemname ; 41 + dw Script_getcurlandmarkname ; 42 + dw Script_gettrainername ; 43 + dw Script_getstring ; 44 + dw Script_itemnotify ; 45 + dw Script_pocketisfull ; 46 + dw Script_opentext ; 47 + dw Script_refreshscreen ; 48 + dw Script_closetext ; 49 + dw Script_writeunusedbytebuffer ; 4a + dw Script_farwritetext ; 4b + dw Script_writetext ; 4c + dw Script_repeattext ; 4d + dw Script_yesorno ; 4e + dw Script_loadmenu ; 4f + dw Script_closewindow ; 50 + dw Script_jumptextfaceplayer ; 51 + dw Script_jumptext ; 52 + dw Script_waitbutton ; 53 + dw Script_promptbutton ; 54 + dw Script_pokepic ; 55 + dw Script_closepokepic ; 56 + dw Script__2dmenu ; 57 + dw Script_verticalmenu ; 58 + dw Script_loadpikachudata ; 59 + dw Script_randomwildmon ; 5a + dw Script_loadtemptrainer ; 5b + dw Script_loadwildmon ; 5c + dw Script_loadtrainer ; 5d + dw Script_startbattle ; 5e + dw Script_reloadmapafterbattle ; 5f + dw Script_catchtutorial ; 60 + dw Script_trainertext ; 61 + dw Script_trainerflagaction ; 62 + dw Script_winlosstext ; 63 + dw Script_scripttalkafter ; 64 + dw Script_endifjustbattled ; 65 + dw Script_checkjustbattled ; 66 + dw Script_setlasttalked ; 67 + dw Script_applymovement ; 68 + dw Script_applymovementlasttalked ; 69 + dw Script_faceplayer ; 6a + dw Script_faceobject ; 6b + dw Script_variablesprite ; 6c + dw Script_disappear ; 6d + dw Script_appear ; 6e + dw Script_follow ; 6f + dw Script_stopfollow ; 70 + dw Script_moveobject ; 71 + dw Script_writeobjectxy ; 72 + dw Script_loademote ; 73 + dw Script_showemote ; 74 + dw Script_turnobject ; 75 + dw Script_follownotexact ; 76 + dw Script_earthquake ; 77 + dw Script_changemapblocks ; 78 + dw Script_changeblock ; 79 + dw Script_reloadmap ; 7a + dw Script_reloadmappart ; 7b + dw Script_writecmdqueue ; 7c + dw Script_delcmdqueue ; 7d + dw Script_playmusic ; 7e + dw Script_encountermusic ; 7f + dw Script_musicfadeout ; 80 + dw Script_playmapmusic ; 81 + dw Script_dontrestartmapmusic ; 82 + dw Script_cry ; 83 + dw Script_playsound ; 84 + dw Script_waitsfx ; 85 + dw Script_warpsound ; 86 + dw Script_specialsound ; 87 + dw Script_autoinput ; 88 + dw Script_newloadmap ; 89 + dw Script_pause ; 8a + dw Script_deactivatefacing ; 8b + dw Script_prioritysjump ; 8c + dw Script_warpcheck ; 8d + dw Script_stopandsjump ; 8e + dw Script_endcallback ; 8f + dw Script_end ; 90 + dw Script_reloadend ; 91 + dw Script_endall ; 92 + dw Script_pokemart ; 93 + dw Script_elevator ; 94 + dw Script_trade ; 95 + dw Script_askforphonenumber ; 96 + dw Script_phonecall ; 97 + dw Script_hangup ; 98 + dw Script_describedecoration ; 99 + dw Script_fruittree ; 9a + dw Script_specialphonecall ; 9b + dw Script_checkphonecall ; 9c + dw Script_verbosegiveitem ; 9d + dw Script_swarm ; 9e + dw Script_halloffame ; 9f + dw Script_credits ; a0 + dw Script_warpfacing ; a1 diff --git a/data/tilesets.asm b/data/overworld/tilesets.asm index bc1f1b2f..bc1f1b2f 100644 --- a/data/tilesets.asm +++ b/data/overworld/tilesets.asm diff --git a/data/overworld/variables.asm b/data/overworld/variables.asm new file mode 100644 index 00000000..39cd35fc --- /dev/null +++ b/data/overworld/variables.asm @@ -0,0 +1,27 @@ +VarActionTable: +; entries correspond to VAR_* constants + ; RETVAR_STRBUF2: copy [de] to wStringBuffer2 + ; RETVAR_ADDR_DE: return address in de + ; RETVAR_EXECUTE: call function + dwb wStringBuffer2, RETVAR_STRBUF2 + dwb wPartyCount, RETVAR_STRBUF2 + dwb Var_BattleResult, RETVAR_EXECUTE + dwb wBattleType, RETVAR_ADDR_DE + dwb wTimeOfDay, RETVAR_STRBUF2 + dwb Var_CountCaughtMons, RETVAR_EXECUTE + dwb Var_CountSeenMons, RETVAR_EXECUTE + dwb Var_CountBadges, RETVAR_EXECUTE + dwb wPlayerState, RETVAR_ADDR_DE + dwb Var_PlayerFacing, RETVAR_EXECUTE + dwb hHours, RETVAR_STRBUF2 + dwb Var_DayOfWeek, RETVAR_EXECUTE + dwb wMapGroup, RETVAR_STRBUF2 + dwb wMapNumber, RETVAR_STRBUF2 + dwb Var_UnownCaught, RETVAR_EXECUTE + dwb wEnvironment, RETVAR_STRBUF2 + dwb Var_BoxFreeSpace, RETVAR_EXECUTE + dwb wBugContestMinsRemaining, RETVAR_STRBUF2 + dwb wXCoord, RETVAR_STRBUF2 + dwb wYCoord, RETVAR_STRBUF2 + dwb wSpecialPhoneCallID, RETVAR_STRBUF2 + dwb NULL, RETVAR_STRBUF2 diff --git a/engine/events/engine_flags.asm b/engine/events/engine_flags.asm index 4099dfda..aebbacdc 100644 --- a/engine/events/engine_flags.asm +++ b/engine/events/engine_flags.asm @@ -80,4 +80,4 @@ EngineFlagAction:: ld [de], a ret -INCLUDE "data/engine_flags.asm" +INCLUDE "data/events/engine_flags.asm" diff --git a/engine/events/specials.asm b/engine/events/specials.asm index 6626c081..3cedbf17 100644 --- a/engine/events/specials.asm +++ b/engine/events/specials.asm @@ -13,7 +13,7 @@ Special:: rst FarCall ret -INCLUDE "data/special_pointers.asm" +INCLUDE "data/events/special_pointers.asm" DummySpecial_c389: ret diff --git a/engine/events/std_scripts.asm b/engine/events/std_scripts.asm index caa878e0..dc24359b 100644 --- a/engine/events/std_scripts.asm +++ b/engine/events/std_scripts.asm @@ -1,55 +1,4 @@ -add_stdscript: MACRO -\1StdScript:: - dba \1 -ENDM - -StdScripts:: - add_stdscript PokecenterNurseScript - add_stdscript DifficultBookshelfScript - add_stdscript PictureBookshelfScript - add_stdscript MagazineBookshelfScript - add_stdscript TeamRocketOathScript - add_stdscript IncenseBurnerScript - add_stdscript MerchandiseShelfScript - add_stdscript TownMapScript - add_stdscript WindowScript - add_stdscript TVScript - add_stdscript HomepageScript ; unused - add_stdscript Radio1Script - add_stdscript Radio2Script - add_stdscript TrashCanScript - add_stdscript StrengthBoulderScript - add_stdscript SmashRockScript - add_stdscript PokecenterSignScript - add_stdscript MartSignScript - add_stdscript GoldenrodRocketsScript - add_stdscript RadioTowerRocketsScript - add_stdscript ElevatorButtonScript - add_stdscript DayToTextScript - add_stdscript BugContestResultsWarpScript - add_stdscript BugContestResultsScript - add_stdscript InitializeEventsScript - add_stdscript AskNumber1MScript - add_stdscript AskNumber2MScript - add_stdscript RegisteredNumberMScript - add_stdscript NumberAcceptedMScript - add_stdscript NumberDeclinedMScript - add_stdscript PhoneFullMScript - add_stdscript RematchMScript - add_stdscript AskNumber1FScript - add_stdscript AskNumber2FScript - add_stdscript RegisteredNumberFScript - add_stdscript NumberAcceptedFScript - add_stdscript NumberDeclinedFScript - add_stdscript PhoneFullFScript - add_stdscript RematchFScript - add_stdscript GymStatue1Script - add_stdscript GymStatue2Script - add_stdscript ReceiveItemScript - add_stdscript ReceiveTogepiEggScript - add_stdscript PCScript - add_stdscript GameCornerCoinVendorScript - add_stdscript HappinessCheckScript +INCLUDE "data/events/std_scripts.asm" PokecenterNurseScript: opentext diff --git a/engine/overworld/scripting.asm b/engine/overworld/scripting.asm index 4d395c63..8f4506b0 100644 --- a/engine/overworld/scripting.asm +++ b/engine/overworld/scripting.asm @@ -61,170 +61,7 @@ RunScriptCommand: rst JumpTable ret -ScriptCommandTable: -; entries correspond to *_command constants (see macros/scripts/events.asm) - dw Script_scall ; 00 - dw Script_farscall ; 01 - dw Script_memcall ; 02 - dw Script_sjump ; 03 - dw Script_farsjump ; 04 - dw Script_memjump ; 05 - dw Script_ifequal ; 06 - dw Script_ifnotequal ; 07 - dw Script_iffalse ; 08 - dw Script_iftrue ; 09 - dw Script_ifgreater ; 0a - dw Script_ifless ; 0b - dw Script_jumpstd ; 0c - dw Script_callstd ; 0d - dw Script_callasm ; 0e - dw Script_special ; 0f - dw Script_memcallasm ; 10 - dw Script_checkmapscene ; 11 - dw Script_setmapscene ; 12 - dw Script_checkscene ; 13 - dw Script_setscene ; 14 - dw Script_setval ; 15 - dw Script_addval ; 16 - dw Script_random ; 17 - dw Script_checkver ; 18 - dw Script_readmem ; 19 - dw Script_writemem ; 1a - dw Script_loadmem ; 1b - dw Script_readvar ; 1c - dw Script_writevar ; 1d - dw Script_loadvar ; 1e - dw Script_giveitem ; 1f - dw Script_takeitem ; 20 - dw Script_checkitem ; 21 - dw Script_givemoney ; 22 - dw Script_takemoney ; 23 - dw Script_checkmoney ; 24 - dw Script_givecoins ; 25 - dw Script_takecoins ; 26 - dw Script_checkcoins ; 27 - dw Script_addcellnum ; 28 - dw Script_delcellnum ; 29 - dw Script_checkcellnum ; 2a - dw Script_checktime ; 2b - dw Script_checkpoke ; 2c - dw Script_givepoke ; 2d - dw Script_giveegg ; 2e - dw Script_givepokemail ; 2f - dw Script_checkpokemail ; 30 - dw Script_checkevent ; 31 - dw Script_clearevent ; 32 - dw Script_setevent ; 33 - dw Script_checkflag ; 34 - dw Script_clearflag ; 35 - dw Script_setflag ; 36 - dw Script_wildon ; 37 - dw Script_wildoff ; 38 - dw Script_xycompare ; 39 - dw Script_warpmod ; 3a - dw Script_blackoutmod ; 3b - dw Script_warp ; 3c - dw Script_getmoney ; 3d - dw Script_getcoins ; 3e - dw Script_getnum ; 3f - dw Script_getmonname ; 40 - dw Script_getitemname ; 41 - dw Script_getcurlandmarkname ; 42 - dw Script_gettrainername ; 43 - dw Script_getstring ; 44 - dw Script_itemnotify ; 45 - dw Script_pocketisfull ; 46 - dw Script_opentext ; 47 - dw Script_refreshscreen ; 48 - dw Script_closetext ; 49 - dw Script_writeunusedbytebuffer ; 4a - dw Script_farwritetext ; 4b - dw Script_writetext ; 4c - dw Script_repeattext ; 4d - dw Script_yesorno ; 4e - dw Script_loadmenu ; 4f - dw Script_closewindow ; 50 - dw Script_jumptextfaceplayer ; 51 - dw Script_jumptext ; 52 - dw Script_waitbutton ; 53 - dw Script_promptbutton ; 54 - dw Script_pokepic ; 55 - dw Script_closepokepic ; 56 - dw Script__2dmenu ; 57 - dw Script_verticalmenu ; 58 - dw Script_loadpikachudata ; 59 - dw Script_randomwildmon ; 5a - dw Script_loadtemptrainer ; 5b - dw Script_loadwildmon ; 5c - dw Script_loadtrainer ; 5d - dw Script_startbattle ; 5e - dw Script_reloadmapafterbattle ; 5f - dw Script_catchtutorial ; 60 - dw Script_trainertext ; 61 - dw Script_trainerflagaction ; 62 - dw Script_winlosstext ; 63 - dw Script_scripttalkafter ; 64 - dw Script_endifjustbattled ; 65 - dw Script_checkjustbattled ; 66 - dw Script_setlasttalked ; 67 - dw Script_applymovement ; 68 - dw Script_applymovementlasttalked ; 69 - dw Script_faceplayer ; 6a - dw Script_faceobject ; 6b - dw Script_variablesprite ; 6c - dw Script_disappear ; 6d - dw Script_appear ; 6e - dw Script_follow ; 6f - dw Script_stopfollow ; 70 - dw Script_moveobject ; 71 - dw Script_writeobjectxy ; 72 - dw Script_loademote ; 73 - dw Script_showemote ; 74 - dw Script_turnobject ; 75 - dw Script_follownotexact ; 76 - dw Script_earthquake ; 77 - dw Script_changemapblocks ; 78 - dw Script_changeblock ; 79 - dw Script_reloadmap ; 7a - dw Script_reloadmappart ; 7b - dw Script_writecmdqueue ; 7c - dw Script_delcmdqueue ; 7d - dw Script_playmusic ; 7e - dw Script_encountermusic ; 7f - dw Script_musicfadeout ; 80 - dw Script_playmapmusic ; 81 - dw Script_dontrestartmapmusic ; 82 - dw Script_cry ; 83 - dw Script_playsound ; 84 - dw Script_waitsfx ; 85 - dw Script_warpsound ; 86 - dw Script_specialsound ; 87 - dw Script_autoinput ; 88 - dw Script_newloadmap ; 89 - dw Script_pause ; 8a - dw Script_deactivatefacing ; 8b - dw Script_prioritysjump ; 8c - dw Script_warpcheck ; 8d - dw Script_stopandsjump ; 8e - dw Script_endcallback ; 8f - dw Script_end ; 90 - dw Script_reloadend ; 91 - dw Script_endall ; 92 - dw Script_pokemart ; 93 - dw Script_elevator ; 94 - dw Script_trade ; 95 - dw Script_askforphonenumber ; 96 - dw Script_phonecall ; 97 - dw Script_hangup ; 98 - dw Script_describedecoration ; 99 - dw Script_fruittree ; 9a - dw Script_specialphonecall ; 9b - dw Script_checkphonecall ; 9c - dw Script_verbosegiveitem ; 9d - dw Script_swarm ; 9e - dw Script_halloffame ; 9f - dw Script_credits ; a0 - dw Script_warpfacing ; a1 +INCLUDE "data/overworld/scripting.asm" StartScript: ld hl, wScriptFlags diff --git a/engine/overworld/variables.asm b/engine/overworld/variables.asm index 406cf715..073c8fd1 100644 --- a/engine/overworld/variables.asm +++ b/engine/overworld/variables.asm @@ -6,7 +6,7 @@ _GetVarAction:: .valid ld c, a ld b, 0 - ld hl, .VarActionTable + ld hl, VarActionTable add hl, bc add hl, bc add hl, bc @@ -17,94 +17,68 @@ _GetVarAction:: ld b, [hl] ld a, b and RETVAR_EXECUTE - jr nz, .call + jr nz, .call_de ld a, b and RETVAR_ADDR_DE ret nz ld a, [de] - jr .loadstringbuffer2 + jr LoadStringBuffer2 -.call +.call_de call _de_ ret -.loadstringbuffer2 +LoadStringBuffer2: ld de, wStringBuffer2 ld [de], a ret -.VarActionTable: -; entries correspond to VAR_* constants - ; RETVAR_STRBUF2: copy [de] to wStringBuffer2 - ; RETVAR_ADDR_DE: return address in de - ; RETVAR_EXECUTE: call function - dwb wStringBuffer2, RETVAR_STRBUF2 - dwb wPartyCount, RETVAR_STRBUF2 - dwb .BattleResult, RETVAR_EXECUTE - dwb wBattleType, RETVAR_ADDR_DE - dwb wTimeOfDay, RETVAR_STRBUF2 - dwb .CountCaughtMons, RETVAR_EXECUTE - dwb .CountSeenMons, RETVAR_EXECUTE - dwb .CountBadges, RETVAR_EXECUTE - dwb wPlayerState, RETVAR_ADDR_DE - dwb .PlayerFacing, RETVAR_EXECUTE - dwb hHours, RETVAR_STRBUF2 - dwb .DayOfWeek, RETVAR_EXECUTE - dwb wMapGroup, RETVAR_STRBUF2 - dwb wMapNumber, RETVAR_STRBUF2 - dwb .UnownCaught, RETVAR_EXECUTE - dwb wEnvironment, RETVAR_STRBUF2 - dwb .BoxFreeSpace, RETVAR_EXECUTE - dwb wBugContestMinsRemaining, RETVAR_STRBUF2 - dwb wXCoord, RETVAR_STRBUF2 - dwb wYCoord, RETVAR_STRBUF2 - dwb wSpecialPhoneCallID, RETVAR_STRBUF2 - dwb NULL, RETVAR_STRBUF2 +INCLUDE "data/overworld/variables.asm" -.CountCaughtMons: +Var_CountCaughtMons: ; Caught mons. ld hl, wPokedexCaught ld b, wEndPokedexCaught - wPokedexCaught call CountSetBits ld a, [wNumSetBits] - jp .loadstringbuffer2 + jp LoadStringBuffer2 -.CountSeenMons: +Var_CountSeenMons: ; Seen mons. ld hl, wPokedexSeen ld b, wEndPokedexSeen - wPokedexSeen call CountSetBits ld a, [wNumSetBits] - jp .loadstringbuffer2 + jp LoadStringBuffer2 -.CountBadges: +Var_CountBadges: ; Number of owned badges. ld hl, wBadges ld b, 2 call CountSetBits ld a, [wNumSetBits] - jp .loadstringbuffer2 + jp LoadStringBuffer2 -.PlayerFacing: +Var_PlayerFacing: ; The direction the player is facing. ld a, [wPlayerDirection] and $c rrca rrca - jp .loadstringbuffer2 + jp LoadStringBuffer2 -.DayOfWeek: +Var_DayOfWeek: ; The day of the week. call GetWeekday - jp .loadstringbuffer2 + jp LoadStringBuffer2 -.UnownCaught: +Var_UnownCaught: ; Number of unique Unown caught. call CountUnown ld a, b - jp .loadstringbuffer2 + jp LoadStringBuffer2 -.BoxFreeSpace: +Var_BoxFreeSpace: ; Remaining slots in the current box. ld a, BANK(sBoxCount) call OpenSRAM @@ -114,9 +88,10 @@ _GetVarAction:: ld b, a call CloseSRAM ld a, b - jp .loadstringbuffer2 + jp LoadStringBuffer2 -.BattleResult: +Var_BattleResult: +; Outcome of the last battle. ld a, [wBattleResult] and $ff ^ BATTLERESULT_BITMASK - jp .loadstringbuffer2 + jp LoadStringBuffer2 diff --git a/macros/scripts/events.asm b/macros/scripts/events.asm index 606dd5dd..a1457368 100644 --- a/macros/scripts/events.asm +++ b/macros/scripts/events.asm @@ -1,4 +1,4 @@ -; ScriptCommandTable indexes (see engine/overworld/scripting.asm) +; ScriptCommandTable indexes (see data/overworld/scripting.asm) const_def const scall_command ; $00 @@ -87,7 +87,7 @@ INCLUDE "data/maps/spawn_points.asm" INCLUDE "engine/overworld/load_map_part.asm" INCLUDE "engine/overworld/spawn_points.asm" INCLUDE "engine/overworld/map_setup.asm" -INCLUDE "data/tilesets.asm" +INCLUDE "data/overworld/tilesets.asm" INCLUDE "engine/events/pokecenter_pc.asm" INCLUDE "engine/items/mart.asm" INCLUDE "engine/events/money.asm" @@ -349,7 +349,7 @@ INCLUDE "engine/movie/intro.asm" SECTION "bank3E", ROMX INCLUDE "engine/gfx/load_font.asm" -INCLUDE "data/collision_permissions.asm" +INCLUDE "data/overworld/collision_permissions.asm" Shrink1Pic: INCBIN "gfx/new_game/shrink1.2bpp.lz" |