summaryrefslogtreecommitdiff
path: root/include/enemy.h
blob: 39317a43acc6db26d43b3e47f2dc181273740c20 (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
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
#ifndef ENEMY_H
#define ENEMY_H

#include "global.h"
#include "entity.h"

typedef enum {
    /*0x00*/ OCTOROK,
    /*0x01*/ CHUCHU,
    /*0x02*/ LEEVER,
    /*0x03*/ PEAHAT,
    /*0x04*/ ROLLOBITE,
    /*0x05*/ DARK_NUT,
    /*0x06*/ HANGING_SEED,
    /*0x07*/ BEETLE,
    /*0x08*/ KEESE,
    /*0x09*/ DOOR_MIMIC,
    /*0x0a*/ ROCK_CHUCHU,
    /*0x0b*/ SPINY_CHUCHU,
    /*0x0c*/ CUCCO_CHICK_AGGR,
    /*0x0d*/ MOLDORM,
    /*0x0e*/ ENEMY_E,
    /*0x0f*/ MOLDWORM,
    /*0x10*/ SLUGGULA,
    /*0x11*/ PESTO,
    /*0x12*/ PUFFSTOOL,
    /*0x13*/ CHUCHU_BOSS,
    /*0x14*/ LIKE_LIKE,
    /*0x15*/ SPEAR_MOBLIN,
    /*0x16*/ BUSINESS_SCRUB,
    /*0x17*/ RUPEE_LIKE,
    /*0x18*/ MADDERPILLAR,
    /*0x19*/ WATER_DROP,
    /*0x1a*/ WALL_MASTER,
    /*0x1b*/ BOMB_PEAHAT,
    /*0x1c*/ SPARK,
    /*0x1d*/ CHASER,
    /*0x1e*/ SPIKED_BEETLE,
    /*0x1f*/ SENSOR_BLADE_TRAP,
    /*0x20*/ HELMASAUR,
    /*0x21*/ FALLING_BOULDER,
    /*0x22*/ BOBOMB,
    /*0x23*/ WALL_MASTER_2,
    /*0x24*/ GLEEROCK,
    /*0x25*/ VAATI_EYES_MACRO,
    /*0x26*/ TEKTITE,
    /*0x27*/ WIZZROBE_WIND,
    /*0x28*/ WIZZROBE_FIRE,
    /*0x29*/ WIZZROBE_ICE,
    /*0x2a*/ ARMOS,
    /*0x2b*/ EYEGORE,
    /*0x2c*/ ROPE,
    /*0x2d*/ SMALL_PESTO,
    /*0x2e*/ ACRO_BANDIT,
    /*0x2f*/ BLADE_TRAP,
    /*0x30*/ KEATON,
    /*0x31*/ CROW,
    /*0x32*/ MULLDOZER,
    /*0x33*/ BOMBAROSSA,
    /*0x34*/ WISP,
    /*0x35*/ SPINY_BEETLE,
    /*0x36*/ MAZAAL_HEAD,
    /*0x37*/ MAZAAL_MACRO,
    /*0x38*/ MAZAAL_HAND,
    /*0x39*/ OCTOROK_BOSS,
    /*0x3a*/ FLYING_POT,
    /*0x3b*/ GOBDO,
    /*0x3c*/ OCTOROK_GOLDEN,
    /*0x3d*/ TEKTITE_GOLDEN,
    /*0x3e*/ ROPE_GOLDEN,
    /*0x3f*/ CLOUD_PIRANHA,
    /*0x40*/ SCISSORS_BEETLE,
    /*0x41*/ CUCCO_AGGR,
    /*0x42*/ STALFOS,
    /*0x43*/ FLYING_SKULL,
    /*0x44*/ MAZAAL_BRACELET,
    /*0x45*/ TAKKURI,
    /*0x46*/ BOW_MOBLIN,
    /*0x47*/ LAKITU,
    /*0x48*/ LAKITU_CLOUD,
    /*0x49*/ ENEMY_49,
    /*0x4a*/ VAATI_REBORN_ENEMY,
    /*0x4b*/ VAATI_PROJECTILE,
    /*0x4c*/ BALL_CHAIN_SOLIDER,
    /*0x4d*/ ENEMY_4D,
    /*0x4e*/ GHINI,
    /*0x4f*/ VAATI_TRANSFIGURED,
    /*0x50*/ ENEMY_50,
    /*0x51*/ VAATI_WRATH,
    /*0x52*/ VAATI_ARM,
    /*0x53*/ DUST,
    /*0x54*/ VAATI_BALL,
    /*0x55*/ OCTOROK2,
    /*0x56*/ SLIME,
    /*0x57*/ MINI_SLIME,
    /*0x58*/ FIREBALL_GUY,
    /*0x59*/ MINI_FIREBALL_GUY,
    /*0x5a*/ ENEMY_5A,
    /*0x5b*/ BUSINESS_SCRUB_PROLOGUE,
    /*0x5c*/ GYORG_FEMALE,
    /*0x5d*/ GYORG_MALE,
    /*0x5e*/ CURTAIN,
    /*0x5f*/ ENEMY_5F,
    /*0x60*/ GYORG_CHILD,
    /*0x61*/ GYORG_FEMALE_EYE,
    /*0x62*/ ENEMY_62,
    /*0x63*/ GYORG_FEMALE_MOUTH,
    /*0x64*/ ENEMY_64,
    /*0x65*/ TREE_ITEM,
    /*0x66*/ ENEMY_66
} Enemy;

extern void Octorok(Entity*);
extern void Chuchu(Entity*);
extern void Leever(Entity*);
extern void Peahat(Entity*);
extern void Rollobite(Entity*);
extern void DarkNut(Entity*);
extern void HangingSeed(Entity*);
extern void Beetle(Entity*);
extern void Keese(Entity*);
extern void DoorMimic(Entity*);
extern void RockChuchu(Entity*);
extern void SpinyChuchu(Entity*);
extern void CuccoChickAggr(Entity*);
extern void Moldorm(Entity*);
extern void EnemyE(Entity*);
extern void Moldworm(Entity*);
extern void Sluggula(Entity*);
extern void Pesto(Entity*);
extern void Puffstool(Entity*);
extern void ChuchuBoss(Entity*);
extern void LikeLike(Entity*);
extern void SpearMoblin(Entity*);
extern void BusinessScrub(Entity*);
extern void RupeeLike(Entity*);
extern void Madderpillar(Entity*);
extern void WaterDrop(Entity*);
extern void WallMaster(Entity*);
extern void BombPeahat(Entity*);
extern void Spark(Entity*);
extern void Chaser(Entity*);
extern void SpikedBeetle(Entity*);
extern void SensorBladeTrap(Entity*);
extern void Helmasaur(Entity*);
extern void FallingBoulder(Entity*);
extern void Bobomb(Entity*);
extern void WallMaster2(Entity*);
extern void Gleerok(Entity*);
extern void VaatiEyesMacro(Entity*);
extern void Tektite(Entity*);
extern void WizzrobeWind(Entity*);
extern void WizzrobeFire(Entity*);
extern void WizzrobeIce(Entity*);
extern void Armos(Entity*);
extern void Eyegore(Entity*);
extern void Rope(Entity*);
extern void SmallPesto(Entity*);
extern void AcroBandit(Entity*);
extern void BladeTrap(Entity*);
extern void Keaton(Entity*);
extern void Crow(Entity*);
extern void Mulldozer(Entity*);
extern void Bombarossa(Entity*);
extern void Wisp(Entity*);
extern void SpinyBeetle(Entity*);
extern void MazaalHead(Entity*);
extern void MazaalMacro(Entity*);
extern void MazaalHand(Entity*);
extern void OctorokBoss(Entity*);
extern void FlyingPot(Entity*);
extern void Gibdo(Entity*);
extern void OctorokGolden(Entity*);
extern void TektiteGolden(Entity*);
extern void RopeGolden(Entity*);
extern void CloudPiranha(Entity*);
extern void ScissorsBeetle(Entity*);
extern void CuccoAggr(Entity*);
extern void Stalfos(Entity*);
extern void FlyingSkull(Entity*);
extern void MazaalBracelet(Entity*);
extern void Takkuri(Entity*);
extern void BowMoblin(Entity*);
extern void Lakitu(Entity*);
extern void LakituCloud(Entity*);
extern void Enemy49(Entity*);
extern void VaatiRebornEnemy(Entity*);
extern void VaatiProjectile(Entity*);
extern void BallChainSoldier(Entity*);
extern void Enemy4D(Entity*);
extern void Ghini(Entity*);
extern void VaatiTransfigured(Entity*);
extern void Enemy50(Entity*);
extern void VaatiWrath(Entity*);
extern void VaatiArm(Entity*);
extern void Dust(Entity*);
extern void VaatiBall(Entity*);
extern void Slime(Entity*);
extern void MiniSlime(Entity*);
extern void FireballGuy(Entity*);
extern void MiniFireballGuy(Entity*);
extern void Enemy5A(Entity*);
extern void BusinessScrubPrologue(Entity*);
extern void GyorgFemale(Entity*);
extern void GyorgMale(Entity*);
extern void Curtain(Entity*);
extern void Enemy5F(Entity*);
extern void GyorgChild(Entity*);
extern void GyorgFemaleEye(Entity*);
extern void Enemy62(Entity*);
extern void GyorgFemaleMouth(Entity*);
extern void Enemy64(Entity*);
extern void TreeItem(Entity*);
extern void Enemy66(Entity*);

extern u32 GetNextFunction(Entity*);
extern void EnemyFunctionHandler(Entity*, void (*const func[])(Entity*));
extern void sub_08001324(Entity*);
#endif