summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authortheo3 <arisstephenson2@gmail.com>2020-06-21 00:16:58 -0700
committertheo3 <arisstephenson2@gmail.com>2020-06-21 00:16:58 -0700
commit5373908c730f8ec9c8de0ddb1e459280e7934c38 (patch)
tree245b5baae8774cb11beb108858d4a1f9f3a628b0 /src
parentddc897fa311111bffefa64c7418d4bfc1eef5565 (diff)
split managers
Diffstat (limited to 'src')
-rw-r--r--src/bowMoblin.c41
1 files changed, 41 insertions, 0 deletions
diff --git a/src/bowMoblin.c b/src/bowMoblin.c
new file mode 100644
index 00000000..6c7620d6
--- /dev/null
+++ b/src/bowMoblin.c
@@ -0,0 +1,41 @@
+#include "global.h"
+#include "entity.h"
+
+extern void EnemyFunctionHandler(Entity*, void (*const funcs[])(Entity*));
+extern void SetChildOffset(Entity*, u32, u32, u32);
+extern void sub_0804A9FC(Entity*, u32);
+extern void sub_0804AA30(Entity*, void (*const funcs[][])(Entity*));
+extern void sub_0803C5F0(Entity*);
+
+extern void (*const gUnk_080CFF78[])(Entity*);
+extern void (*const gUnk_080CFF90[])(Entity*);
+
+void BowMoblin(Entity *this)
+{
+ EnemyFunctionHandler(this, gUnk_080CFF78);
+ SetChildOffset(this, 0, 1, -0x18);
+}
+
+void sub_0803C180(Entity *this)
+{
+ gUnk_080CFF90[this->action](this);
+}
+
+void sub_0803C198(Entity *this)
+{
+ Entity *pEVar1;
+
+ if (this->field_0x43 != 0) {
+ sub_0804A9FC(this,0x1c);
+ }
+ sub_0804AA30(this, &gUnk_080CFF78);
+ if ((this->bitfield & 0x80) != 0) {
+ sub_0803C5F0(this);
+ pEVar1 = this->attachedEntity;
+ if (pEVar1 != NULL) {
+ pEVar1->field_0xf++;
+ }
+ }
+}
+
+void nullsub_168(Entity* this){} \ No newline at end of file