summaryrefslogtreecommitdiff
path: root/include/constants/battle_frontier.h
blob: b849686f505d17ebfa180df067124fb801a8c318 (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
145
146
147
148
149
150
151
#ifndef GUARD_CONSTANTS_BATTLE_FRONTIER_H
#define GUARD_CONSTANTS_BATTLE_FRONTIER_H

#define FRONTIER_CHALLENGE(facility, mode) ((facility << 8) + mode)

// Battle Frontier facility ids.
#define FRONTIER_FACILITY_TOWER    0
#define FRONTIER_FACILITY_DOME     1
#define FRONTIER_FACILITY_PALACE   2
#define FRONTIER_FACILITY_ARENA    3
#define FRONTIER_FACILITY_FACTORY  4
#define FRONTIER_FACILITY_PIKE     5
#define FRONTIER_FACILITY_PYRAMID  6
#define NUM_FRONTIER_FACILITIES    7
// The multiplayer battle colosseum rooms re-use VAR_FRONTIER_FACILITY.
#define FACILITY_UNION_ROOM        8
#define FACILITY_MULTI_OR_EREADER  9  // Direct Corner multi battles, multi battle with Steven, and e-Reader battles

#define TENT_VERDANTURF 2
#define TENT_FALLARBOR 3
#define TENT_SLATEPORT 4

// Battle Frontier lvl modes.
#define FRONTIER_LVL_50 0
#define FRONTIER_LVL_OPEN 1
#define FRONTIER_LVL_TENT 2

// Battle Frontier battle modes.
#define FRONTIER_MODE_SINGLES 0
#define FRONTIER_MODE_DOUBLES 1
#define FRONTIER_MODE_MULTIS 2
#define FRONTIER_MODE_LINK_MULTIS 3

// Special trainer battles.
#define SPECIAL_BATTLE_TOWER 0
#define SPECIAL_BATTLE_SECRET_BASE 1
#define SPECIAL_BATTLE_EREADER 2
#define SPECIAL_BATTLE_DOME 3
#define SPECIAL_BATTLE_PALACE 4
#define SPECIAL_BATTLE_ARENA 5
#define SPECIAL_BATTLE_FACTORY 6
#define SPECIAL_BATTLE_PIKE_SINGLE 7
#define SPECIAL_BATTLE_STEVEN 8
#define SPECIAL_BATTLE_PIKE_DOUBLE 9
#define SPECIAL_BATTLE_PYRAMID 10

#define MAX_BATTLE_FRONTIER_POINTS 9999

// Frontier Maniac
#define FRONTIER_MANIAC_BATTLE_TOWER_SINGLES       0
#define FRONTIER_MANIAC_BATTLE_TOWER_DOUBLES       1
#define FRONTIER_MANIAC_BATTLE_TOWER_MULTIS        2
#define FRONTIER_MANIAC_BATTLE_TOWER_LINK_MULTIS   3
#define FRONTIER_MANIAC_BATTLE_DOME                4
#define FRONTIER_MANIAC_BATTLE_FACTORY             5
#define FRONTIER_MANIAC_BATTLE_PALACE              6
#define FRONTIER_MANIAC_BATTLE_ARENA               7
#define FRONTIER_MANIAC_BATTLE_PIKE                8
#define FRONTIER_MANIAC_BATTLE_PYRAMID             9
#define FRONTIER_MANIAC_FACILITY_COUNT            10

#define FRONTIER_MANIAC_MESSAGE_COUNT 3

// Frontier Gambler
#define FRONTIER_GAMBLER_WAITING     0
#define FRONTIER_GAMBLER_PLACED_BET  1
#define FRONTIER_GAMBLER_WON         2
#define FRONTIER_GAMBLER_LOST        3

#define FRONTIER_GAMBLER_BET_5      0
#define FRONTIER_GAMBLER_BET_10     1
#define FRONTIER_GAMBLER_BET_15     2
#define FRONTIER_GAMBLER_BET_CANCEL 3

#define FRONTIER_GAMBLER_CHALLENGE_COUNT 12

// For 'ShowFacilityResultsWindow' function which is a part of the 'CallFrontierUtilFunc' special.
#define RESULTS_LINK_CONTEST 7

#define F_EV_SPREAD_HP         (1 << 0)
#define F_EV_SPREAD_ATTACK     (1 << 1)
#define F_EV_SPREAD_DEFENSE    (1 << 2)
#define F_EV_SPREAD_SPEED      (1 << 3)
#define F_EV_SPREAD_SP_ATTACK  (1 << 4)
#define F_EV_SPREAD_SP_DEFENSE (1 << 5)

#define BATTLE_FRONTIER_ITEM_NONE           0
#define BATTLE_FRONTIER_ITEM_KINGS_ROCK     1
#define BATTLE_FRONTIER_ITEM_SITRUS_BERRY   2
#define BATTLE_FRONTIER_ITEM_ORAN_BERRY     3
#define BATTLE_FRONTIER_ITEM_CHESTO_BERRY   4
#define BATTLE_FRONTIER_ITEM_HARD_STONE     5
#define BATTLE_FRONTIER_ITEM_FOCUS_BAND     6
#define BATTLE_FRONTIER_ITEM_PERSIM_BERRY   7
#define BATTLE_FRONTIER_ITEM_MIRACLE_SEED   8
#define BATTLE_FRONTIER_ITEM_BERRY_JUICE    9
#define BATTLE_FRONTIER_ITEM_MACHO_BRACE    10
#define BATTLE_FRONTIER_ITEM_SILVER_POWDER  11
#define BATTLE_FRONTIER_ITEM_CHERI_BERRY    12
#define BATTLE_FRONTIER_ITEM_BLACK_GLASSES  13
#define BATTLE_FRONTIER_ITEM_BLACK_BELT     14
#define BATTLE_FRONTIER_ITEM_SOUL_DEW       15
#define BATTLE_FRONTIER_ITEM_CHOICE_BAND    16
#define BATTLE_FRONTIER_ITEM_MAGNET         17
#define BATTLE_FRONTIER_ITEM_SILK_SCARF     18
#define BATTLE_FRONTIER_ITEM_WHITE_HERB     19
#define BATTLE_FRONTIER_ITEM_DEEP_SEA_SCALE 20
#define BATTLE_FRONTIER_ITEM_DEEP_SEA_TOOTH 21
#define BATTLE_FRONTIER_ITEM_MYSTIC_WATER   22
#define BATTLE_FRONTIER_ITEM_SHARP_BEAK     23
#define BATTLE_FRONTIER_ITEM_QUICK_CLAW     24
#define BATTLE_FRONTIER_ITEM_LEFTOVERS      25
#define BATTLE_FRONTIER_ITEM_RAWST_BERRY    26
#define BATTLE_FRONTIER_ITEM_LIGHT_BALL     27
#define BATTLE_FRONTIER_ITEM_POISON_BARB    28
#define BATTLE_FRONTIER_ITEM_NEVER_MELT_ICE 29
#define BATTLE_FRONTIER_ITEM_ASPEAR_BERRY   30
#define BATTLE_FRONTIER_ITEM_SPELL_TAG      31
#define BATTLE_FRONTIER_ITEM_BRIGHT_POWDER  32
#define BATTLE_FRONTIER_ITEM_LEPPA_BERRY    33
#define BATTLE_FRONTIER_ITEM_SCOPE_LENS     34
#define BATTLE_FRONTIER_ITEM_TWISTED_SPOON  35
#define BATTLE_FRONTIER_ITEM_METAL_COAT     36
#define BATTLE_FRONTIER_ITEM_MENTAL_HERB    37
#define BATTLE_FRONTIER_ITEM_CHARCOAL       38
#define BATTLE_FRONTIER_ITEM_PECHA_BERRY    39
#define BATTLE_FRONTIER_ITEM_SOFT_SAND      40
#define BATTLE_FRONTIER_ITEM_LUM_BERRY      41
#define BATTLE_FRONTIER_ITEM_DRAGON_SCALE   42
#define BATTLE_FRONTIER_ITEM_DRAGON_FANG    43
#define BATTLE_FRONTIER_ITEM_IAPAPA_BERRY   44
#define BATTLE_FRONTIER_ITEM_WIKI_BERRY     45
#define BATTLE_FRONTIER_ITEM_SEA_INCENSE    46
#define BATTLE_FRONTIER_ITEM_SHELL_BELL     47
#define BATTLE_FRONTIER_ITEM_SALAC_BERRY    48
#define BATTLE_FRONTIER_ITEM_LANSAT_BERRY   49
#define BATTLE_FRONTIER_ITEM_APICOT_BERRY   50
#define BATTLE_FRONTIER_ITEM_STARF_BERRY    51
#define BATTLE_FRONTIER_ITEM_LIECHI_BERRY   52
#define BATTLE_FRONTIER_ITEM_STICK          53
#define BATTLE_FRONTIER_ITEM_LAX_INCENSE    54
#define BATTLE_FRONTIER_ITEM_AGUAV_BERRY    55
#define BATTLE_FRONTIER_ITEM_FIGY_BERRY     56
#define BATTLE_FRONTIER_ITEM_THICK_CLUB     57
#define BATTLE_FRONTIER_ITEM_MAGO_BERRY     58
#define BATTLE_FRONTIER_ITEM_METAL_POWDER   59
#define BATTLE_FRONTIER_ITEM_PETAYA_BERRY   60
#define BATTLE_FRONTIER_ITEM_LUCKY_PUNCH    61
#define BATTLE_FRONTIER_ITEM_GANLON_BERRY   62

#endif // GUARD_CONSTANTS_BATTLE_FRONTIER_H