summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authornotyouraveragehooman <65437533+notyouraveragehooman@users.noreply.github.com>2020-06-21 00:17:19 -0700
committerGitHub <noreply@github.com>2020-06-21 00:17:19 -0700
commitbeded558bfcfa88fd5415a8f7f03db846269b086 (patch)
tree860a43b670a225a84c6a38716bf2c2a15e436159 /src
parent5373908c730f8ec9c8de0ddb1e459280e7934c38 (diff)
parentaa8c409febb8dbf7f80a0b55bf49b72e0853277a (diff)
Merge pull request #19 from 21aslade/master
mineralWaterSource.c OK
Diffstat (limited to 'src')
-rw-r--r--src/heartContainer.c2
-rw-r--r--src/mineralWaterSource.c47
-rw-r--r--src/object1A.c2
3 files changed, 49 insertions, 2 deletions
diff --git a/src/heartContainer.c b/src/heartContainer.c
index d595c784..643b87dd 100644
--- a/src/heartContainer.c
+++ b/src/heartContainer.c
@@ -7,7 +7,7 @@ extern void sub_0808E714(Entity*);
extern void (*const gUnk_08121C48[])(Entity*);
-extern u32 gUnk_08121C58;
+extern BoundingBox gUnk_08121C58;
void HeartContainer(Entity* this) {
gUnk_08121C48[this->action](this);
diff --git a/src/mineralWaterSource.c b/src/mineralWaterSource.c
new file mode 100644
index 00000000..c874530b
--- /dev/null
+++ b/src/mineralWaterSource.c
@@ -0,0 +1,47 @@
+#include "global.h"
+#include "entity.h"
+
+extern void (*MineralWaterSourceActionFuncs[])(Entity *);
+
+typedef struct {
+ u8 field_0x00;
+ u8 field_0x01;
+ u8 field_0x02;
+ u8 field_0x03;
+} UnkStruct_MineralWater;
+
+extern UnkStruct_MineralWater MineralWaterSourceParameters[];
+
+extern bool32 sub_0806FBD8(Entity *);
+
+void MineralWaterSource(Entity *this) {
+ MineralWaterSourceActionFuncs[this->action](this);
+}
+
+void MineralWaterSource_Init(Entity *this) {
+ UnkStruct_MineralWater *unknownParameters;
+
+ if (!sub_0806FBD8(this)) {
+ return;
+ }
+
+ unknownParameters = &MineralWaterSourceParameters[this->entityType.form];
+
+ this->entityType.parameter = unknownParameters->field_0x00;
+ this->field_0x40 = unknownParameters->field_0x03;
+
+ this->boundingBox->field_0x6 = unknownParameters->field_0x01;
+ this->boundingBox->field_0x7 = unknownParameters->field_0x02;
+
+ this->flags |= 0x80;
+
+ this->field_0x3c = 7;
+ this->damageType = 145;
+ this->flags2 = 2;
+
+ this->action = 1;
+}
+
+void sub_080973DC(Entity *this) {
+ this->bitfield = 0;
+} \ No newline at end of file
diff --git a/src/object1A.c b/src/object1A.c
index 6a3ce51c..2cb9d9ff 100644
--- a/src/object1A.c
+++ b/src/object1A.c
@@ -11,7 +11,7 @@ extern u32 Random(void);
extern void (*gUnk_081206C4[99])(Entity*);
-extern u32 gUnk_080FD1A8;
+extern BoundingBox gUnk_080FD1A8;
// Main
void Object1A(Entity* ent) {