mirror of
https://github.com/pret/pokefirered.git
synced 2026-05-11 22:45:18 -05:00
134 lines
4.3 KiB
PHP
134 lines
4.3 KiB
PHP
@ Sets NPC gfx and the floor layout depending on current challenge and floor
|
|
.macro ttower_initfloor
|
|
setvar VAR_0x8004, TRAINER_TOWER_FUNC_INIT_FLOOR
|
|
special CallTrainerTowerFunc
|
|
.endm
|
|
|
|
@ Buffers the opponents battle speech to gStringVar4. speech is any TRAINER_TOWER_TEXT_*.
|
|
.macro ttower_getspeech speech:req, trainer=0xFF
|
|
setvar VAR_0x8004, TRAINER_TOWER_FUNC_GET_SPEECH
|
|
setvar VAR_0x8005, \speech
|
|
.if \trainer >= VARS_START && \trainer != 0xFF
|
|
copyvar VAR_0x8006, \trainer
|
|
.elseif \trainer != 0xFF
|
|
setvar VAR_0x8006, \trainer
|
|
.endif
|
|
special CallTrainerTowerFunc
|
|
.endm
|
|
|
|
@ Starts a trainer tower battle. VAR_0x8005 is unused
|
|
.macro ttower_dobattle
|
|
setvar VAR_0x8004, TRAINER_TOWER_FUNC_DO_BATTLE
|
|
setvar VAR_0x8005, 0
|
|
special CallTrainerTowerFunc
|
|
.endm
|
|
|
|
@ Returns the current challenge type (CHALLENGE_TYPE_*). Mixed challenges use different types for each floor. If VAR_0x8005 is != FALSE, does nothing
|
|
.macro ttower_getchallengetype
|
|
setvar VAR_0x8004, TRAINER_TOWER_FUNC_GET_CHALLENGE_TYPE
|
|
setvar VAR_0x8005, FALSE
|
|
special CallTrainerTowerFunc
|
|
.endm
|
|
|
|
@ Adds 1 to the number of floors cleared (all trainers on floor defeated)
|
|
.macro ttower_clearedfloor
|
|
setvar VAR_0x8004, TRAINER_TOWER_FUNC_CLEARED_FLOOR
|
|
special CallTrainerTowerFunc
|
|
.endm
|
|
|
|
@ TRUE if the trainers on this floor were already beaten, FALSE otherwise
|
|
.macro ttower_isfloorcleared
|
|
setvar VAR_0x8004, TRAINER_TOWER_FUNC_GET_FLOOR_CLEARED
|
|
special CallTrainerTowerFunc
|
|
.endm
|
|
|
|
@ Initializes the Trainer Tower challenge and starts the timer
|
|
.macro ttower_startchallenge
|
|
setvar VAR_0x8004, TRAINER_TOWER_FUNC_START_CHALLENGE
|
|
special CallTrainerTowerFunc
|
|
.endm
|
|
|
|
@ 0 if not spoken to yet, 1 if spoken to but not received prize, 2 if received prize
|
|
.macro ttower_getownerstate
|
|
setvar VAR_0x8004, TRAINER_TOWER_FUNC_GET_OWNER_STATE
|
|
special CallTrainerTowerFunc
|
|
.endm
|
|
|
|
@ Tries to give prize. 0 if given successfully, 1 if no room for prize, 2 if giving prize should be skipped
|
|
.macro ttower_giveprize
|
|
setvar VAR_0x8004, TRAINER_TOWER_FUNC_GIVE_PRIZE
|
|
special CallTrainerTowerFunc
|
|
.endm
|
|
|
|
@ Checks the final challenge time. 0 if new record, 1 if not, 2 if time has already been checked
|
|
.macro ttower_checkfinaltime
|
|
setvar VAR_0x8004, TRAINER_TOWER_FUNC_CHECK_FINAL_TIME
|
|
special CallTrainerTowerFunc
|
|
.endm
|
|
|
|
@ Resumes the challenge timer (or starts, if the timer is 0)
|
|
.macro ttower_resumetimer
|
|
setvar VAR_0x8004, TRAINER_TOWER_FUNC_RESUME_TIMER
|
|
special CallTrainerTowerFunc
|
|
.endm
|
|
|
|
@ Sets that the player lost the challenge
|
|
.macro ttower_setlost
|
|
setvar VAR_0x8004, TRAINER_TOWER_FUNC_SET_LOST
|
|
special CallTrainerTowerFunc
|
|
.endm
|
|
|
|
@ Returns the status of the current Trainer Tower challenge (CHALLENGE_STATUS_*)
|
|
.macro ttower_getchallengestatus
|
|
setvar VAR_0x8004, TRAINER_TOWER_FUNC_GET_CHALLENGE_STATUS
|
|
special CallTrainerTowerFunc
|
|
.endm
|
|
|
|
@ Buffers the current challenge time (min in gStringVar1, sec in gStringVar2, fraction sec in gStringVar3)
|
|
.macro ttower_gettime
|
|
setvar VAR_0x8004, TRAINER_TOWER_FUNC_GET_TIME
|
|
special CallTrainerTowerFunc
|
|
.endm
|
|
|
|
@ Unused. Displays Trainer Tower results. Handled by ShowBattleRecords instead
|
|
.macro ttower_showresults
|
|
setvar VAR_0x8004, TRAINER_TOWER_FUNC_SHOW_RESULTS
|
|
special CallTrainerTowerFunc
|
|
.endm
|
|
|
|
@ Unused. See above
|
|
.macro ttower_closeresults
|
|
setvar VAR_0x8004, TRAINER_TOWER_FUNC_CLOSE_RESULTS
|
|
special CallTrainerTowerFunc
|
|
.endm
|
|
|
|
@ Returns the eligibility of the players party for a double battle (using GetMonsStateToDoubles)
|
|
.macro ttower_checkdoubles
|
|
setvar VAR_0x8004, TRAINER_TOWER_FUNC_CHECK_DOUBLES
|
|
special CallTrainerTowerFunc
|
|
.endm
|
|
|
|
@ For the unused E-Reader challenges, gets the number of floors used. Otherwise returns FALSE (all floors used)
|
|
.macro ttower_getnumfloors
|
|
setvar VAR_0x8004, TRAINER_TOWER_FUNC_GET_NUM_FLOORS
|
|
special CallTrainerTowerFunc
|
|
.endm
|
|
|
|
@ Dummied, always returns FALSE
|
|
.macro ttower_shouldexit
|
|
setvar VAR_0x8004, TRAINER_TOWER_FUNC_SHOULD_WARP_TO_COUNTER
|
|
special CallTrainerTowerFunc
|
|
.endm
|
|
|
|
@ Plays the encounter music for the trainer number in VAR_TEMP_1
|
|
.macro ttower_encountermusic
|
|
setvar VAR_0x8004, TRAINER_TOWER_FUNC_ENCOUNTER_MUSIC
|
|
special CallTrainerTowerFunc
|
|
.endm
|
|
|
|
@ TRUE if the player reached the Battle Tower owner, FALSE otherwise
|
|
.macro ttower_getbeatchallenge
|
|
setvar VAR_0x8004, TRAINER_TOWER_FUNC_GET_BEAT_CHALLENGE
|
|
special CallTrainerTowerFunc
|
|
.endm
|