mirror of
https://github.com/Ninjdai1/pokeemerald.git
synced 2025-01-18 17:34:20 +01:00
453 lines
11 KiB
PHP
453 lines
11 KiB
PHP
@ TODO:
|
|
@ Add macro comments
|
|
@ Split into individual files
|
|
@ Enforce tab spacing
|
|
@ Standardize Func->Function
|
|
|
|
@ Frontier Util
|
|
|
|
.macro frontier_getstatus
|
|
setvar VAR_0x8004, FRONTIER_UTIL_FUNC_GET_STATUS
|
|
special CallFrontierUtilFunc
|
|
.endm
|
|
|
|
.macro frontier_get data:req
|
|
setvar VAR_0x8004, FRONTIER_UTIL_FUNC_GET_DATA
|
|
setvar VAR_0x8005, \data
|
|
special CallFrontierUtilFunc
|
|
.endm
|
|
|
|
.macro frontier_set data:req, val=0xFFFF
|
|
setvar VAR_0x8004, FRONTIER_UTIL_FUNC_SET_DATA
|
|
setvar VAR_0x8005, \data
|
|
.if \val == 0xFFFF
|
|
@ no value provided
|
|
.elseif \val >= VARS_START
|
|
copyvar VAR_0x8006, \val
|
|
.else
|
|
setvar VAR_0x8006, \val
|
|
.endif
|
|
special CallFrontierUtilFunc
|
|
.endm
|
|
|
|
.macro frontier_setpartyorder partySize:req
|
|
setvar VAR_0x8004, FRONTIER_UTIL_FUNC_SET_PARTY_ORDER
|
|
setvar VAR_0x8005, \partySize
|
|
special CallFrontierUtilFunc
|
|
.endm
|
|
|
|
.macro frontier_reset
|
|
setvar VAR_0x8004, FRONTIER_UTIL_FUNC_SOFT_RESET
|
|
special CallFrontierUtilFunc
|
|
.endm
|
|
|
|
.macro frontier_settrainers
|
|
setvar VAR_0x8004, FRONTIER_UTIL_FUNC_SET_TRAINERS
|
|
special CallFrontierUtilFunc
|
|
.endm
|
|
|
|
.macro frontier_saveparty
|
|
setvar VAR_0x8004, FRONTIER_UTIL_FUNC_SAVE_PARTY
|
|
special CallFrontierUtilFunc
|
|
.endm
|
|
|
|
@ Facilities with only 1 mode dont provide the mode argument
|
|
.macro frontier_results facility:req, mode=0xFF
|
|
setvar VAR_0x8004, FRONTIER_UTIL_FUNC_RESULTS_WINDOW
|
|
setvar VAR_0x8005, \facility
|
|
.if \mode != 0xFF
|
|
setvar VAR_0x8006, \mode
|
|
.endif
|
|
special CallFrontierUtilFunc
|
|
.endm
|
|
|
|
.macro frontier_checkairshow
|
|
setvar VAR_0x8004, FRONTIER_UTIL_FUNC_CHECK_AIR_TV_SHOW
|
|
special CallFrontierUtilFunc
|
|
.endm
|
|
|
|
.macro frontier_getbrainstatus
|
|
setvar VAR_0x8004, FRONTIER_UTIL_FUNC_GET_BRAIN_STATUS
|
|
special CallFrontierUtilFunc
|
|
.endm
|
|
|
|
.macro frontier_isbrain
|
|
setvar VAR_0x8004, FRONTIER_UTIL_FUNC_IS_BRAIN
|
|
special CallFrontierUtilFunc
|
|
.endm
|
|
|
|
.macro frontier_givepoints
|
|
setvar VAR_0x8004, FRONTIER_UTIL_FUNC_GIVE_BATTLE_POINTS
|
|
special CallFrontierUtilFunc
|
|
.endm
|
|
|
|
.macro frontier_getsymbols
|
|
setvar VAR_0x8004, FRONTIER_UTIL_FUNC_GET_FACILITY_SYMBOLS
|
|
special CallFrontierUtilFunc
|
|
.endm
|
|
|
|
.macro frontier_givesymbol
|
|
setvar VAR_0x8004, FRONTIER_UTIL_FUNC_GIVE_FACILITY_SYMBOL
|
|
special CallFrontierUtilFunc
|
|
.endm
|
|
|
|
.macro frontier_isbattletype battleType:req
|
|
setvar VAR_0x8004, FRONTIER_UTIL_FUNC_CHECK_BATTLE_TYPE
|
|
setvar VAR_0x8005, \battleType
|
|
special CallFrontierUtilFunc
|
|
.endm
|
|
|
|
.macro frontier_checkineligible
|
|
setvar VAR_0x8004, FRONTIER_UTIL_FUNC_CHECK_INELIGIBLE
|
|
special CallFrontierUtilFunc
|
|
.endm
|
|
|
|
@ Validates the visiting E-Reader trainer. 0 if valid, 1 if not
|
|
.macro frontier_checkvisittrainer
|
|
setvar VAR_0x8004, FRONTIER_UTIL_FUNC_CHECK_VISIT_TRAINER
|
|
special CallFrontierUtilFunc
|
|
.endm
|
|
|
|
.macro frontier_incrementstreak
|
|
setvar VAR_0x8004, FRONTIER_UTIL_FUNC_INCREMENT_STREAK
|
|
special CallFrontierUtilFunc
|
|
.endm
|
|
|
|
.macro frontier_restorehelditems
|
|
setvar VAR_0x8004, FRONTIER_UTIL_FUNC_RESTORE_HELD_ITEMS
|
|
special CallFrontierUtilFunc
|
|
.endm
|
|
|
|
.macro frontier_savebattle
|
|
setvar VAR_0x8004, FRONTIER_UTIL_FUNC_SAVE_BATTLE
|
|
special CallFrontierUtilFunc
|
|
.endm
|
|
|
|
.macro frontier_gettrainername stringVar:req
|
|
setvar VAR_0x8004, FRONTIER_UTIL_FUNC_BUFFER_TRAINER_NAME
|
|
setvar VAR_0x8005, \stringVar
|
|
special CallFrontierUtilFunc
|
|
.endm
|
|
|
|
.macro frontier_resetsketch
|
|
setvar VAR_0x8004, FRONTIER_UTIL_FUNC_RESET_SKETCH_MOVES
|
|
special CallFrontierUtilFunc
|
|
.endm
|
|
|
|
.macro frontier_setbrainobj
|
|
setvar VAR_0x8004, FRONTIER_UTIL_FUNC_SET_BRAIN_OBJECT
|
|
special CallFrontierUtilFunc
|
|
.endm
|
|
|
|
|
|
@ Battle Tower
|
|
|
|
.macro battletower_getstreak
|
|
setvar VAR_0x8004, BATTLE_TOWER_FUNC_1
|
|
setvar VAR_0x8005, 1
|
|
special CallBattleTowerFunc
|
|
.endm
|
|
|
|
|
|
@ Battle Dome
|
|
|
|
|
|
@ Battle Palace
|
|
|
|
|
|
@ Battle Arena
|
|
|
|
|
|
@ Battle Factory
|
|
|
|
|
|
@ Battle Pike
|
|
|
|
.macro battlepike_getstreak
|
|
setvar VAR_0x8004, BATTLE_PIKE_FUNC_GET_DATA
|
|
setvar VAR_0x8005, 1
|
|
special CallBattlePikeFunction
|
|
.endm
|
|
|
|
.macro battlepike_setstreak streak:req
|
|
setvar VAR_0x8004, BATTLE_PIKE_FUNC_SET_DATA
|
|
setvar VAR_0x8005, 1
|
|
.if \streak >= VARS_START
|
|
copyvar VAR_0x8006, \streak
|
|
.else
|
|
setvar VAR_0x8006, \streak
|
|
.endif
|
|
special CallBattlePikeFunction
|
|
.endm
|
|
|
|
.macro battlepike_isfinalroom
|
|
setvar VAR_0x8004, BATTLE_PIKE_FUNC_IS_FINAL_ROOM
|
|
special CallBattlePikeFunction
|
|
.endm
|
|
|
|
.macro battlepike_setroomobjects
|
|
setvar VAR_0x8004, BATTLE_PIKE_FUNC_SET_ROOM_OBJECTS
|
|
special CallBattlePikeFunction
|
|
.endm
|
|
|
|
.macro battlepike_getroomtype
|
|
setvar VAR_0x8004, BATTLE_PIKE_FUNC_GET_ROOM_TYPE
|
|
special CallBattlePikeFunction
|
|
.endm
|
|
|
|
.macro battlepike_setnextroom
|
|
setvar VAR_0x8004, BATTLE_PIKE_FUNC_SET_ROOM_TYPE
|
|
special CallBattlePikeFunction
|
|
.endm
|
|
|
|
.macro battlepike_gethint
|
|
setvar VAR_0x8004, BATTLE_PIKE_FUNC_GET_ROOM_TYPE_HINT
|
|
special CallBattlePikeFunction
|
|
.endm
|
|
|
|
.macro battlepike_nohealing set:req
|
|
setvar VAR_0x8004, BATTLE_PIKE_FUNC_SET_HEALING_ROOMS_DISABLED
|
|
setvar VAR_0x8005, \set
|
|
special CallBattlePikeFunction
|
|
.endm
|
|
|
|
.macro battlepike_ispartyfullhealth
|
|
setvar VAR_0x8004, BATTLE_PIKE_FUNC_IS_PARTY_FULL_HEALTH
|
|
special CallBattlePikeFunction
|
|
.endm
|
|
|
|
|
|
@ Battle Pyramid
|
|
|
|
|
|
@ Battle Tent
|
|
|
|
|
|
@ Trainer Hill
|
|
|
|
.macro trainerhill_start
|
|
setvar VAR_0x8004, TRAINER_HILL_FUNC_START
|
|
special CallTrainerHillFunction
|
|
.endm
|
|
|
|
.macro trainerhill_getownerstate
|
|
setvar VAR_0x8004, TRAINER_HILL_FUNC_GET_OWNER_STATE
|
|
special CallTrainerHillFunction
|
|
.endm
|
|
|
|
.macro trainerhill_giveprize
|
|
setvar VAR_0x8004, TRAINER_HILL_FUNC_GIVE_PRIZE
|
|
special CallTrainerHillFunction
|
|
.endm
|
|
|
|
.macro trainerhill_finaltime
|
|
setvar VAR_0x8004, TRAINER_HILL_FUNC_CHECK_FINAL_TIME
|
|
special CallTrainerHillFunction
|
|
.endm
|
|
|
|
.macro trainerhill_resumetimer
|
|
setvar VAR_0x8004, TRAINER_HILL_FUNC_RESUME_TIMER
|
|
special CallTrainerHillFunction
|
|
.endm
|
|
|
|
.macro trainerhill_lost
|
|
setvar VAR_0x8004, TRAINER_HILL_FUNC_SET_LOST
|
|
special CallTrainerHillFunction
|
|
.endm
|
|
|
|
.macro trainerhill_getstatus
|
|
setvar VAR_0x8004, TRAINER_HILL_FUNC_GET_CHALLENGE_STATUS
|
|
special CallTrainerHillFunction
|
|
.endm
|
|
|
|
.macro trainerhill_gettime
|
|
setvar VAR_0x8004, TRAINER_HILL_FUNC_GET_CHALLENGE_TIME
|
|
special CallTrainerHillFunction
|
|
.endm
|
|
|
|
.macro trainerhill_allfloorsused
|
|
setvar VAR_0x8004, TRAINER_HILL_FUNC_GET_ALL_FLOORS_USED
|
|
special CallTrainerHillFunction
|
|
.endm
|
|
|
|
.macro trainerhill_clearresult
|
|
setvar VAR_0x8004, TRAINER_HILL_FUNC_CLEAR_RESULT
|
|
special CallTrainerHillFunction
|
|
.endm
|
|
|
|
.macro trainerhill_inchallenge
|
|
setvar VAR_0x8004, TRAINER_HILL_FUNC_IN_CHALLENGE
|
|
special CallTrainerHillFunction
|
|
.endm
|
|
|
|
.macro trainerhill_postbattletext
|
|
setvar VAR_0x8004, TRAINER_HILL_FUNC_POST_BATTLE_TEXT
|
|
special CallTrainerHillFunction
|
|
.endm
|
|
|
|
.macro trainerhill_settrainerflags
|
|
setvar VAR_0x8004, TRAINER_HILL_FUNC_SET_ALL_TRAINER_FLAGS
|
|
special CallTrainerHillFunction
|
|
.endm
|
|
|
|
.macro trainerhill_getsaved
|
|
setvar VAR_0x8004, TRAINER_HILL_FUNC_GET_GAME_SAVED
|
|
special CallTrainerHillFunction
|
|
.endm
|
|
|
|
.macro trainerhill_setsaved
|
|
setvar VAR_0x8004, TRAINER_HILL_FUNC_SET_GAME_SAVED
|
|
special CallTrainerHillFunction
|
|
.endm
|
|
|
|
.macro trainerhill_clearsaved
|
|
setvar VAR_0x8004, TRAINER_HILL_FUNC_CLEAR_GAME_SAVED
|
|
special CallTrainerHillFunction
|
|
.endm
|
|
|
|
.macro trainerhill_getwon
|
|
setvar VAR_0x8004, TRAINER_HILL_FUNC_GET_WON
|
|
special CallTrainerHillFunction
|
|
.endm
|
|
|
|
.macro trainerhill_settag tag:req
|
|
setvar VAR_0x8004, TRAINER_HILL_FUNC_SET_TAG
|
|
copyvar VAR_0x8005, \tag
|
|
special CallTrainerHillFunction
|
|
.endm
|
|
|
|
|
|
@ Apprentice
|
|
|
|
.macro apprentice_gavelvlmode
|
|
setvar VAR_0x8004, APPRENTICE_FUNC_GAVE_LVLMODE
|
|
special CallApprenticeFunction
|
|
.endm
|
|
|
|
.macro apprentice_setlvlmode lvlmode:req
|
|
setvar VAR_0x8004, APPRENTICE_FUNC_SET_LVLMODE
|
|
setorcopyvar VAR_0x8005, \lvlmode
|
|
addvar VAR_0x8005, 1
|
|
special CallApprenticeFunction
|
|
.endm
|
|
|
|
.macro apprentice_answeredquestion
|
|
setvar VAR_0x8004, APPRENTICE_FUNC_ANSWERED_QUESTION
|
|
special CallApprenticeFunction
|
|
.endm
|
|
|
|
.macro apprentice_menu which:req
|
|
setvar VAR_0x8004, APPRENTICE_FUNC_MENU
|
|
setvar VAR_0x8005, \which
|
|
special CallApprenticeFunction
|
|
waitstate
|
|
.endm
|
|
|
|
.macro apprentice_shufflespecies
|
|
setvar VAR_0x8004, APPRENTICE_FUNC_SHUFFLE_SPECIES
|
|
special CallApprenticeFunction
|
|
.endm
|
|
|
|
.macro apprentice_randomizequestions
|
|
setvar VAR_0x8004, APPRENTICE_FUNC_RANDOMIZE_QUESTIONS
|
|
special CallApprenticeFunction
|
|
.endm
|
|
|
|
.macro apprentice_msg waitbuttonpress:req, which:req
|
|
setvar VAR_0x8004, APPRENTICE_FUNC_PRINT_MSG
|
|
setvar VAR_0x8005, \waitbuttonpress
|
|
setvar VAR_0x8006, \which
|
|
special CallApprenticeFunction
|
|
waitstate
|
|
.endm
|
|
|
|
.macro apprentice_reset
|
|
setvar VAR_0x8004, APPRENTICE_FUNC_RESET
|
|
special CallApprenticeFunction
|
|
.endm
|
|
|
|
.macro apprentice_shouldcheckgone
|
|
setvar VAR_0x8004, APPRENTICE_FUNC_CHECK_GONE
|
|
special CallApprenticeFunction
|
|
.endm
|
|
|
|
.macro apprentice_getquestion
|
|
setvar VAR_0x8004, APPRENTICE_FUNC_GET_QUESTION
|
|
special CallApprenticeFunction
|
|
.endm
|
|
|
|
.macro apprentice_getnumpartymons
|
|
setvar VAR_0x8004, APPRENTICE_FUNC_GET_NUM_PARTY_MONS
|
|
special CallApprenticeFunction
|
|
.endm
|
|
|
|
.macro apprentice_setpartymon slot:req
|
|
copyvar VAR_0x8006, \slot
|
|
setvar VAR_0x8004, APPRENTICE_FUNC_SET_PARTY_MON
|
|
special CallApprenticeFunction
|
|
.endm
|
|
|
|
.macro apprentice_initquestion which:req
|
|
setvar VAR_0x8004, APPRENTICE_FUNC_INIT_QUESTION_DATA
|
|
setvar VAR_0x8005, \which
|
|
special CallApprenticeFunction
|
|
.endm
|
|
|
|
.macro apprentice_freequestion
|
|
setvar VAR_0x8004, APPRENTICE_FUNC_FREE_QUESTION_DATA
|
|
special CallApprenticeFunction
|
|
.endm
|
|
|
|
.macro apprentice_buff whichstringvar:req, tobuff:req
|
|
setvar VAR_0x8004, APPRENTICE_FUNC_BUFFER_STRING
|
|
setvar VAR_0x8005, \whichstringvar
|
|
.if \tobuff >= VARS_START
|
|
copyvar VAR_0x8006, \tobuff
|
|
.else
|
|
setvar VAR_0x8006, \tobuff
|
|
.endif
|
|
special CallApprenticeFunction
|
|
.endm
|
|
|
|
.macro apprentice_setmove
|
|
setvar VAR_0x8004, APPRENTICE_FUNC_SET_MOVE
|
|
special CallApprenticeFunction
|
|
.endm
|
|
|
|
.macro apprentice_setleadmon monId:req
|
|
copyvar VAR_0x8005, \monId
|
|
setvar VAR_0x8004, APPRENTICE_FUNC_SET_LEAD_MON
|
|
special CallApprenticeFunction
|
|
.endm
|
|
|
|
.macro apprentice_openbag
|
|
setvar VAR_0x8004, APPRENTICE_FUNC_OPEN_BAG
|
|
special CallApprenticeFunction
|
|
waitstate
|
|
.endm
|
|
|
|
.macro apprentice_trysetitem
|
|
setvar VAR_0x8004, APPRENTICE_FUNC_TRY_SET_HELD_ITEM
|
|
special CallApprenticeFunction
|
|
.endm
|
|
|
|
.macro apprentice_save
|
|
setvar VAR_0x8004, APPRENTICE_FUNC_SAVE
|
|
special CallApprenticeFunction
|
|
.endm
|
|
|
|
.macro apprentice_setgfx
|
|
setvar VAR_0x8004, APPRENTICE_FUNC_SET_GFX
|
|
special CallApprenticeFunction
|
|
.endm
|
|
|
|
.macro apprentice_shouldleave
|
|
setvar VAR_0x8004, APPRENTICE_FUNC_SHOULD_LEAVE
|
|
special CallApprenticeFunction
|
|
.endm
|
|
|
|
.macro apprentice_shiftsaved
|
|
setvar VAR_0x8004, APPRENTICE_FUNC_SHIFT_SAVED
|
|
special CallApprenticeFunction
|
|
.endm
|