Merge pull request #729 from Rangi42/master

Treat std scripts like specials and predefs
This commit is contained in:
Rangi
2020-06-11 10:17:12 -04:00
committed by GitHub
184 changed files with 585 additions and 580 deletions

View File

@@ -46,7 +46,6 @@ INCLUDE "constants/sfx_constants.asm"
INCLUDE "constants/sprite_anim_constants.asm" INCLUDE "constants/sprite_anim_constants.asm"
INCLUDE "constants/sprite_constants.asm" INCLUDE "constants/sprite_constants.asm"
INCLUDE "constants/sprite_data_constants.asm" INCLUDE "constants/sprite_data_constants.asm"
INCLUDE "constants/std_constants.asm"
INCLUDE "constants/tileset_constants.asm" INCLUDE "constants/tileset_constants.asm"
INCLUDE "constants/trainer_constants.asm" INCLUDE "constants/trainer_constants.asm"
INCLUDE "constants/trainer_data_constants.asm" INCLUDE "constants/trainer_data_constants.asm"

View File

@@ -1,55 +0,0 @@
; StdScripts indexes (see engine/events/std_scripts.asm)
; also used in TileCollisionStdScripts (see data/events/collision_stdscripts.asm)
enum_start
enum pokecenternurse
enum difficultbookshelf
enum picturebookshelf
enum magazinebookshelf
enum teamrocketoath
enum incenseburner
enum merchandiseshelf
enum townmap
enum window
enum tv
enum homepage
enum radio1
enum radio2
enum trashcan
enum strengthboulder
enum smashrock
enum pokecentersign
enum martsign
enum goldenrodrockets
enum radiotowerrockets
enum elevatorbutton
enum daytotext
enum bugcontestresultswarp
enum bugcontestresults
enum initializeevents
enum asknumber1m
enum asknumber2m
enum registerednumberm
enum numberacceptedm
enum numberdeclinedm
enum phonefullm
enum rematchm
enum giftm
enum packfullm
enum rematchgiftm
enum asknumber1f
enum asknumber2f
enum registerednumberf
enum numberacceptedf
enum numberdeclinedf
enum phonefullf
enum rematchf
enum giftf
enum packfullf
enum rematchgiftf
enum gymstatue1
enum gymstatue2
enum receiveitem
enum receivetogepiegg
enum pcscript
enum gamecornercoinvendor
enum happinesschecknpc

View File

@@ -1,13 +1,18 @@
; stdscripts associated with tile collisions ; std scripts associated with tile collisions
stdcoll: MACRO
db \1
dw (\2StdScript - StdScripts) / 3
ENDM
TileCollisionStdScripts: TileCollisionStdScripts:
; collision type, stdscript ; collision type, std script
dbw COLL_BOOKSHELF, magazinebookshelf stdcoll COLL_BOOKSHELF, MagazineBookshelfScript
dbw COLL_PC, pcscript stdcoll COLL_PC, PCScript
dbw COLL_RADIO, radio1 stdcoll COLL_RADIO, Radio1Script
dbw COLL_TOWN_MAP, townmap stdcoll COLL_TOWN_MAP, TownMapScript
dbw COLL_MART_SHELF, merchandiseshelf stdcoll COLL_MART_SHELF, MerchandiseShelfScript
dbw COLL_TV, tv stdcoll COLL_TV, TVScript
dbw COLL_WINDOW, window stdcoll COLL_WINDOW, WindowScript
dbw COLL_INCENSE_BURNER, incenseburner stdcoll COLL_INCENSE_BURNER, IncenseBurnerScript
db -1 ; end db -1 ; end

View File

@@ -5,9 +5,9 @@ DisplayUsedMoveText:
jp WaitBGMap jp WaitBGMap
UsedMoveText: UsedMoveText:
; this is a stream of text and asm from 105db9 to 105ef6
text_far _ActorNameText text_far _ActorNameText
text_asm text_asm
ldh a, [hBattleTurn] ldh a, [hBattleTurn]
and a and a
jr nz, .start jr nz, .start

View File

@@ -30,7 +30,7 @@ BugCatchingContestOutOfBallsScript:
BugCatchingContestReturnToGateScript: BugCatchingContestReturnToGateScript:
closetext closetext
jumpstd bugcontestresultswarp jumpstd BugContestResultsWarpScript
BugCatchingContestTimeUpText: BugCatchingContestTimeUpText:
text_far _BugCatchingContestTimeUpText text_far _BugCatchingContestTimeUpText

View File

@@ -1,57 +1,61 @@
add_stdscript: MACRO
\1StdScript::
dba \1
ENDM
StdScripts:: StdScripts::
; entries correspond to constants/std_constants.asm add_stdscript PokecenterNurseScript
dba PokecenterNurseScript add_stdscript DifficultBookshelfScript
dba DifficultBookshelfScript add_stdscript PictureBookshelfScript
dba PictureBookshelfScript add_stdscript MagazineBookshelfScript
dba MagazineBookshelfScript add_stdscript TeamRocketOathScript
dba TeamRocketOathScript add_stdscript IncenseBurnerScript
dba IncenseBurnerScript add_stdscript MerchandiseShelfScript
dba MerchandiseShelfScript add_stdscript TownMapScript
dba TownMapScript add_stdscript WindowScript
dba WindowScript add_stdscript TVScript
dba TVScript add_stdscript HomepageScript
dba HomepageScript add_stdscript Radio1Script
dba Radio1Script add_stdscript Radio2Script
dba Radio2Script add_stdscript TrashCanScript
dba TrashCanScript add_stdscript StrengthBoulderScript
dba StrengthBoulderScript add_stdscript SmashRockScript
dba SmashRockScript add_stdscript PokecenterSignScript
dba PokecenterSignScript add_stdscript MartSignScript
dba MartSignScript add_stdscript GoldenrodRocketsScript
dba GoldenrodRocketsScript add_stdscript RadioTowerRocketsScript
dba RadioTowerRocketsScript add_stdscript ElevatorButtonScript
dba ElevatorButtonScript add_stdscript DayToTextScript
dba DayToTextScript add_stdscript BugContestResultsWarpScript
dba BugContestResultsWarpScript add_stdscript BugContestResultsScript
dba BugContestResultsScript add_stdscript InitializeEventsScript
dba InitializeEventsScript add_stdscript AskNumber1MScript
dba AskNumber1MScript add_stdscript AskNumber2MScript
dba AskNumber2MScript add_stdscript RegisteredNumberMScript
dba RegisteredNumberMScript add_stdscript NumberAcceptedMScript
dba NumberAcceptedMScript add_stdscript NumberDeclinedMScript
dba NumberDeclinedMScript add_stdscript PhoneFullMScript
dba PhoneFullMScript add_stdscript RematchMScript
dba RematchMScript add_stdscript GiftMScript
dba GiftMScript add_stdscript PackFullMScript
dba PackFullMScript add_stdscript RematchGiftMScript
dba RematchGiftMScript add_stdscript AskNumber1FScript
dba AskNumber1FScript add_stdscript AskNumber2FScript
dba AskNumber2FScript add_stdscript RegisteredNumberFScript
dba RegisteredNumberFScript add_stdscript NumberAcceptedFScript
dba NumberAcceptedFScript add_stdscript NumberDeclinedFScript
dba NumberDeclinedFScript add_stdscript PhoneFullFScript
dba PhoneFullFScript add_stdscript RematchFScript
dba RematchFScript add_stdscript GiftFScript
dba GiftFScript add_stdscript PackFullFScript
dba PackFullFScript add_stdscript RematchGiftFScript
dba RematchGiftFScript add_stdscript GymStatue1Script
dba GymStatue1Script add_stdscript GymStatue2Script
dba GymStatue2Script add_stdscript ReceiveItemScript
dba ReceiveItemScript add_stdscript ReceiveTogepiEggScript
dba ReceiveTogepiEggScript add_stdscript PCScript
dba PCScript add_stdscript GameCornerCoinVendorScript
dba GameCornerCoinVendorScript add_stdscript HappinessCheckScript
dba HappinessCheckScript
PokecenterNurseScript: PokecenterNurseScript:
; EVENT_WELCOMED_TO_POKECOM_CENTER is never set ; EVENT_WELCOMED_TO_POKECOM_CENTER is never set

View File

@@ -22,7 +22,7 @@ Script_Whiteout:
endall endall
.bug_contest .bug_contest
jumpstd bugcontestresultswarp jumpstd BugContestResultsWarpScript
.WhitedOutText: .WhitedOutText:
text_far _WhitedOutText text_far _WhitedOutText

View File

@@ -48,14 +48,10 @@ AnimateMon_HOF:
pokeanim: MACRO pokeanim: MACRO
rept _NARG rept _NARG
; Workaround for a bug where macro args can't come after the start of a symbol db (PokeAnim_\1_SetupCommand - PokeAnim_SetupCommands) / 2
if !DEF(\1_POKEANIM)
\1_POKEANIM EQUS "PokeAnim_\1_"
endc
db (\1_POKEANIM - PokeAnim_SetupCommands) / 2
shift shift
endr endr
db (PokeAnim_Finish_ - PokeAnim_SetupCommands) / 2 db (PokeAnim_Finish_SetupCommand - PokeAnim_SetupCommands) / 2
ENDM ENDM
PokeAnims: PokeAnims:
@@ -132,22 +128,24 @@ SetUpPokeAnim:
scf scf
ret ret
PokeAnim_SetupCommands: add_setup_command: MACRO
setup_command: MACRO \1_SetupCommand:
\1_: dw \1 dw \1
ENDM ENDM
setup_command PokeAnim_Finish
setup_command PokeAnim_BasePic PokeAnim_SetupCommands:
setup_command PokeAnim_SetWait add_setup_command PokeAnim_Finish
setup_command PokeAnim_Wait add_setup_command PokeAnim_BasePic
setup_command PokeAnim_Setup add_setup_command PokeAnim_SetWait
setup_command PokeAnim_Setup2 add_setup_command PokeAnim_Wait
setup_command PokeAnim_Idle add_setup_command PokeAnim_Setup
setup_command PokeAnim_Play add_setup_command PokeAnim_Setup2
setup_command PokeAnim_Play2 add_setup_command PokeAnim_Idle
setup_command PokeAnim_Cry add_setup_command PokeAnim_Play
setup_command PokeAnim_CryNoWait add_setup_command PokeAnim_Play2
setup_command PokeAnim_StereoCry add_setup_command PokeAnim_Cry
add_setup_command PokeAnim_CryNoWait
add_setup_command PokeAnim_StereoCry
PokeAnim_SetWait: PokeAnim_SetWait:
ld a, 18 ld a, 18

View File

@@ -1107,7 +1107,7 @@ MysteryGift_CheckAndSetDecorationAlreadyReceived:
ld d, $0 ld d, $0
ld b, CHECK_FLAG ld b, CHECK_FLAG
ld hl, sMysteryGiftDecorationsReceived ld hl, sMysteryGiftDecorationsReceived
predef_id SmallFarFlagAction lda_predef SmallFarFlagAction
push hl push hl
push bc push bc
call Predef call Predef

View File

@@ -327,3 +327,57 @@ text_jump EQUS "text_far"
anim_enemyfeetobj EQUS "anim_battlergfx_2row" anim_enemyfeetobj EQUS "anim_battlergfx_2row"
anim_playerheadobj EQUS "anim_battlergfx_1row" anim_playerheadobj EQUS "anim_battlergfx_1row"
anim_clearsprites EQUS "anim_keepsprites" anim_clearsprites EQUS "anim_keepsprites"
; engine/events/std_scripts.asm
pokecenternurse EQUS "PokecenterNurseScript"
difficultbookshelf EQUS "DifficultBookshelfScript"
picturebookshelf EQUS "PictureBookshelfScript"
magazinebookshelf EQUS "MagazineBookshelfScript"
teamrocketoath EQUS "TeamRocketOathScript"
incenseburner EQUS "IncenseBurnerScript"
merchandiseshelf EQUS "MerchandiseShelfScript"
townmap EQUS "TownMapScript"
window EQUS "WindowScript"
tv EQUS "TVScript"
homepage EQUS "HomepageScript"
radio1 EQUS "Radio1Script"
radio2 EQUS "Radio2Script"
trashcan EQUS "TrashCanScript"
strengthboulder EQUS "StrengthBoulderScript"
smashrock EQUS "SmashRockScript"
pokecentersign EQUS "PokecenterSignScript"
martsign EQUS "MartSignScript"
goldenrodrockets EQUS "GoldenrodRocketsScript"
radiotowerrockets EQUS "RadioTowerRocketsScript"
elevatorbutton EQUS "ElevatorButtonScript"
daytotext EQUS "DayToTextScript"
bugcontestresultswarp EQUS "BugContestResultsWarpScript"
bugcontestresults EQUS "BugContestResultsScript"
initializeevents EQUS "InitializeEventsScript"
asknumber1m EQUS "AskNumber1MScript"
asknumber2m EQUS "AskNumber2MScript"
registerednumberm EQUS "RegisteredNumberMScript"
numberacceptedm EQUS "NumberAcceptedMScript"
numberdeclinedm EQUS "NumberDeclinedMScript"
phonefullm EQUS "PhoneFullMScript"
rematchm EQUS "RematchMScript"
giftm EQUS "GiftMScript"
packfullm EQUS "PackFullMScript"
rematchgiftm EQUS "RematchGiftMScript"
asknumber1f EQUS "AskNumber1FScript"
asknumber2f EQUS "AskNumber2FScript"
registerednumberf EQUS "RegisteredNumberFScript"
numberacceptedf EQUS "NumberAcceptedFScript"
numberdeclinedf EQUS "NumberDeclinedFScript"
phonefullf EQUS "PhoneFullFScript"
rematchf EQUS "RematchFScript"
giftf EQUS "GiftFScript"
packfullf EQUS "PackFullFScript"
rematchgiftf EQUS "RematchGiftFScript"
gymstatue1 EQUS "GymStatue1Script"
gymstatue2 EQUS "GymStatue2Script"
receiveitem EQUS "ReceiveItemScript"
receivetogepiegg EQUS "ReceiveTogepiEggScript"
pcscript EQUS "PCScript"
gamecornercoinvendor EQUS "GameCornerCoinVendorScript"
happinesschecknpc EQUS "HappinessCheckScript"

View File

@@ -1,15 +1,15 @@
predef_id: MACRO lda_predef: MACRO
; Some functions load the predef id ; Some functions load the predef id
; without immediately calling Predef. ; without immediately calling Predef.
ld a, (\1Predef - PredefPointers) / 3 ld a, (\1Predef - PredefPointers) / 3
ENDM ENDM
predef: MACRO predef: MACRO
predef_id \1 lda_predef \1
call Predef call Predef
ENDM ENDM
predef_jump: MACRO predef_jump: MACRO
predef_id \1 lda_predef \1
jp Predef jp Predef
ENDM ENDM

View File

@@ -80,13 +80,13 @@ ENDM
enum jumpstd_command ; $0c enum jumpstd_command ; $0c
jumpstd: MACRO jumpstd: MACRO
db jumpstd_command db jumpstd_command
dw \1 ; predefined_script dw (\1StdScript - StdScripts) / 3
ENDM ENDM
enum callstd_command ; $0d enum callstd_command ; $0d
callstd: MACRO callstd: MACRO
db callstd_command db callstd_command
dw \1 ; predefined_script dw (\1StdScript - StdScripts) / 3
ENDM ENDM
enum callasm_command ; $0e enum callasm_command ; $0e

View File

@@ -62,10 +62,10 @@ AzaleaGymActivateRockets:
end end
.GoldenrodRockets: .GoldenrodRockets:
jumpstd goldenrodrockets jumpstd GoldenrodRocketsScript
.RadioTowerRockets: .RadioTowerRockets:
jumpstd radiotowerrockets jumpstd RadioTowerRocketsScript
TrainerTwinsAmyandmay1: TrainerTwinsAmyandmay1:
trainer TWINS, AMYANDMAY1, EVENT_BEAT_TWINS_AMY_AND_MAY, TwinsAmyandmay1SeenText, TwinsAmyandmay1BeatenText, 0, .AfterScript trainer TWINS, AMYANDMAY1, EVENT_BEAT_TWINS_AMY_AND_MAY, TwinsAmyandmay1SeenText, TwinsAmyandmay1BeatenText, 0, .AfterScript
@@ -142,10 +142,10 @@ AzaleaGymGuyScript:
AzaleaGymStatue: AzaleaGymStatue:
checkflag ENGINE_HIVEBADGE checkflag ENGINE_HIVEBADGE
iftrue .Beaten iftrue .Beaten
jumpstd gymstatue1 jumpstd GymStatue1Script
.Beaten: .Beaten:
gettrainername STRING_BUFFER_4, BUGSY, BUGSY1 gettrainername STRING_BUFFER_4, BUGSY, BUGSY1
jumpstd gymstatue2 jumpstd GymStatue2Script
BugsyText_INeverLose: BugsyText_INeverLose:
text "I'm BUGSY!" text "I'm BUGSY!"

View File

@@ -14,7 +14,7 @@ AzaleaPokecenter1F_MapScripts:
end end
AzaleaPokecenter1FNurseScript: AzaleaPokecenter1FNurseScript:
jumpstd pokecenternurse jumpstd PokecenterNurseScript
AzaleaPokecenter1FGentlemanScript: AzaleaPokecenter1FGentlemanScript:
jumptextfaceplayer AzaleaPokecenter1FGentlemanText jumptextfaceplayer AzaleaPokecenter1FGentlemanText

View File

@@ -200,10 +200,10 @@ AzaleaTownIlextForestSign:
jumptext AzaleaTownIlexForestSignText jumptext AzaleaTownIlexForestSignText
AzaleaTownPokecenterSign: AzaleaTownPokecenterSign:
jumpstd pokecentersign jumpstd PokecenterSignScript
AzaleaTownMartSign: AzaleaTownMartSign:
jumpstd martsign jumpstd MartSignScript
WhiteApricornTree: WhiteApricornTree:
fruittree FRUITTREE_AZALEA_TOWN fruittree FRUITTREE_AZALEA_TOWN

View File

@@ -98,13 +98,13 @@ BillsSisterScript:
sjump .Refused sjump .Refused
BillsHouseBookshelf1: BillsHouseBookshelf1:
jumpstd picturebookshelf jumpstd PictureBookshelfScript
BillsHouseBookshelf2: BillsHouseBookshelf2:
jumpstd magazinebookshelf jumpstd MagazineBookshelfScript
BillsHouseRadio: BillsHouseRadio:
jumpstd radio2 jumpstd Radio2Script
BillTakeThisEeveeText: BillTakeThisEeveeText:
text "BILL: Hi, <PLAYER>!" text "BILL: Hi, <PLAYER>!"

View File

@@ -137,10 +137,10 @@ BlackthornCityTrainerTips:
jumptext BlackthornCityTrainerTipsText jumptext BlackthornCityTrainerTipsText
BlackthornCityPokecenterSign: BlackthornCityPokecenterSign:
jumpstd pokecentersign jumpstd PokecenterSignScript
BlackthornCityMartSign: BlackthornCityMartSign:
jumpstd martsign jumpstd MartSignScript
Text_ClairIsOut: Text_ClairIsOut:
text "I am sorry." text "I am sorry."

View File

@@ -20,11 +20,11 @@ BlackthornDragonSpeechHouseDratiniScript:
; unused ; unused
BlackthornDragonSpeechHousePictureBookshelf: BlackthornDragonSpeechHousePictureBookshelf:
jumpstd picturebookshelf jumpstd PictureBookshelfScript
; unused ; unused
BlackthornDragonSpeechHouseMagazineBookshelf: BlackthornDragonSpeechHouseMagazineBookshelf:
jumpstd magazinebookshelf jumpstd MagazineBookshelfScript
BlackthornDragonSpeechHouseGrannyText: BlackthornDragonSpeechHouseGrannyText:
text "A clan of trainers" text "A clan of trainers"

View File

@@ -15,7 +15,7 @@ Emy:
end end
EmysHouseBookshelf: EmysHouseBookshelf:
jumpstd magazinebookshelf jumpstd MagazineBookshelfScript
BlackthornEmysHouse_MapEvents: BlackthornEmysHouse_MapEvents:
db 0, 0 ; filler db 0, 0 ; filler

View File

@@ -142,10 +142,10 @@ BlackthornGymGuyScript:
BlackthornGymStatue: BlackthornGymStatue:
checkflag ENGINE_RISINGBADGE checkflag ENGINE_RISINGBADGE
iftrue .Beaten iftrue .Beaten
jumpstd gymstatue1 jumpstd GymStatue1Script
.Beaten: .Beaten:
gettrainername STRING_BUFFER_4, CLAIR, CLAIR1 gettrainername STRING_BUFFER_4, CLAIR, CLAIR1
jumpstd gymstatue2 jumpstd GymStatue2Script
ClairIntroText: ClairIntroText:
text "I am CLAIR." text "I am CLAIR."

Some files were not shown because too many files have changed in this diff Show More