summaryrefslogtreecommitdiff
path: root/asm/macros/battle_frontier/battle_dome.inc
blob: 9adbcc54e7ed1f700f8294bfd6fdb79b4d16f70f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
	@ Initialize the Battle Dome challenge
	.macro dome_init
	setvar VAR_0x8004, BATTLE_DOME_FUNC_INIT
	special CallBattleDomeFunction
	.endm

	@ Get the value of some DOME_DATA_*. See GetDomeData for the data types that can be retrieved
	.macro dome_get data:req
	setvar VAR_0x8004, BATTLE_DOME_FUNC_GET_DATA
	setvar VAR_0x8005, \data
	special CallBattleDomeFunction
	.endm

	@ Set some DOME_DATA_* to val. See SetDomeData for the data types that can be set
	.macro dome_set data:req, val=0xFFFF
	setvar VAR_0x8004, BATTLE_DOME_FUNC_SET_DATA
	setvar VAR_0x8005, \data
	.if \val != 0xFFFF
	setvar VAR_0x8006, \val
	.endif
	special CallBattleDomeFunction
	.endm

	@ Buffer the name of the current round to gStringVar1
	.macro dome_getroundtext
	setvar VAR_0x8004, BATTLE_DOME_FUNC_GET_ROUND_TEXT
	special CallBattleDomeFunction
	.endm

	@ Buffer the name of the opponent to gStringVar2 and the name of the round to gStringVar1
	.macro dome_getopponentname
	setvar VAR_0x8004, BATTLE_DOME_FUNC_GET_OPPONENT_NAME
	special CallBattleDomeFunction
	.endm

	@ Choose which of the opponents mons to use in battle and load them into the enemy party
	.macro dome_initopponentparty
	setvar VAR_0x8004, BATTLE_DOME_FUNC_INIT_OPPONENT_PARTY
	special CallBattleDomeFunction
	.endm

	@ Show the page that gives information on the next opponent
	.macro dome_showopponentinfo
	setvar VAR_0x8004, BATTLE_DOME_FUNC_SHOW_OPPONENT_INFO
	special CallBattleDomeFunction
	.endm

	@ Displays the tourney tree for the current tourney
	.macro dome_showtourneytree
	setvar VAR_0x8004, BATTLE_DOME_FUNC_SHOW_TOURNEY_TREE
	special CallBattleDomeFunction
	.endm

	@ Displays the tourney tree for the results of the previous tourney. Before the player enters their first tourney this is a random tourney generated by dome_initresultstree
	.macro dome_showprevtourneytree
	setvar VAR_0x8004, BATTLE_DOME_FUNC_SHOW_PREV_TOURNEY_TREE
	special CallBattleDomeFunction
	.endm

	@ Sets gTrainerBattleOpponent_A to the trainer ID of the next opponent
	.macro dome_setopponent
	setvar VAR_0x8004, BATTLE_DOME_FUNC_SET_OPPONENT_ID
	special CallBattleDomeFunction
	.endm

	@ Set the object event gfx id for the opponent
	.macro dome_setopponentgfx
	setvar VAR_0x8004, BATTLE_DOME_FUNC_SET_OPPONENT_GFX
	special CallBattleDomeFunction
	.endm

	@ A non-interactive version of the tourney tree shown when a round is completed
	.macro dome_showstatictourneytree
	setvar VAR_0x8004, BATTLE_DOME_FUNC_SHOW_STATIC_TOURNEY_TREE
	special CallBattleDomeFunction
	.endm

	@ Decides the winners of NPC vs NPC matches, and eliminates either the player or their opponent depending on the playerStatus (DOME_PLAYER_*)
	.macro dome_resolvewinners playerStatus:req
	setvar VAR_0x8004, BATTLE_DOME_FUNC_RESOLVE_WINNERS
	setvar VAR_0x8005, \playerStatus
	special CallBattleDomeFunction
	.endm

	@ Save the game and set the challenge status
	.macro dome_save challengeStatus:req
	setvar VAR_0x8004, BATTLE_DOME_FUNC_SAVE
	setvar VAR_0x8005, \challengeStatus
	special CallBattleDomeFunction
	.endm

	@ Unused. Increment the win streaks for the current challenge by one
	.macro dome_incrementstreaks
	setvar VAR_0x8004, BATTLE_DOME_FUNC_INCREMENT_STREAK
	special CallBattleDomeFunction
	.endm

	@ Sets the facility trainer/mon set pointers
	.macro dome_settrainers
	setvar VAR_0x8004, BATTLE_DOME_FUNC_SET_TRAINERS
	special CallBattleDomeFunction
	.endm

	@ If any moves were copied using Sketch during the challenge then restore them to Sketch
	.macro dome_resetsketch
	setvar VAR_0x8004, BATTLE_DOME_FUNC_RESET_SKETCH
	special CallBattleDomeFunction
	.endm

	@ Reset the held items of the mons that just battled to what they were prior to battling
	.macro dome_restorehelditems
	setvar VAR_0x8004, BATTLE_DOME_FUNC_RESTORE_HELD_ITEMS
	special CallBattleDomeFunction
	.endm

	@ Reduce the players party to the selected mons, used to reduce down to the 2 selected for battle
	.macro dome_reduceparty
	setvar VAR_0x8004, BATTLE_DOME_FUNC_REDUCE_PARTY
	special CallBattleDomeFunction
	.endm

	@ Compares the initial tournament ranking (seed) of the player to opponent A. Returns 1 if the player's seed is better, 2 if the opponent's seed is better.
	.macro dome_compareseeds
	setvar VAR_0x8004, BATTLE_DOME_FUNC_COMPARE_SEEDS
	special CallBattleDomeFunction
	.endm

	@ Buffer the name of the winner for the last Dome challenge to STR_VAR_1
	.macro dome_getwinnersname
	setvar VAR_0x8004, BATTLE_DOME_FUNC_GET_WINNER_NAME
	special CallBattleDomeFunction
	.endm

	@ Performs a random tourney to initialize the results board before the player has entered a challenge
	.macro dome_initresultstree
	setvar VAR_0x8004, BATTLE_DOME_FUNC_INIT_RESULTS_TREE
	special CallBattleDomeFunction
	.endm

	@ Generates the tourney trainers and their parties, and seeds them in the tourney tree
	.macro dome_inittrainers
	setvar VAR_0x8004, BATTLE_DOME_FUNC_INIT_TRAINERS
	special CallBattleDomeFunction
	.endm