summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authornotyouraveragehooman <65437533+notyouraveragehooman@users.noreply.github.com>2020-08-21 20:16:56 -0700
committerGitHub <noreply@github.com>2020-08-21 20:16:56 -0700
commitdfcd7f38768691d2d6a17c98a0f290dff9480a08 (patch)
tree39073dd527d6a10e3bf05f7b2fb8d280fe7c3f5d /src
parent6e53face6434018eeccd142f963aebab4f2d5ba7 (diff)
parentbcfae17450cb30ed57ec1a65f5170679b6bc7620 (diff)
Merge pull request #68 from Ibot02:master
ManagerB.c and Manager3.c: ok
Diffstat (limited to 'src')
-rw-r--r--src/code_0804AA84.c4
-rw-r--r--src/code_08077B98.c3
-rw-r--r--src/item.c4
-rw-r--r--src/manager/manager3.c102
-rw-r--r--src/manager/manager4.c4
-rw-r--r--src/manager/manager6.c26
-rw-r--r--src/manager/managerA.c62
-rw-r--r--src/manager/managerB.c160
-rw-r--r--src/manager/managerE.c22
-rw-r--r--src/npc/festari.c3
-rw-r--r--src/npc/goronMerchant.c8
-rw-r--r--src/npc/melari.c3
-rw-r--r--src/npc/postman.c1
-rw-r--r--src/npc/rem.c1
-rw-r--r--src/npc/zelda.c1
-rw-r--r--src/sub_08070680.c4
16 files changed, 332 insertions, 76 deletions
diff --git a/src/code_0804AA84.c b/src/code_0804AA84.c
index 27e6bf1d..d3eff465 100644
--- a/src/code_0804AA84.c
+++ b/src/code_0804AA84.c
@@ -45,7 +45,7 @@ void sub_0804AAD4(void)
_DmaZero((void *)&gUnk_02018EB0, 0x28);
gUnk_02018EB0.unk = 0;
EraseAllEntities();
- CreateObject(0x3d, gArea.filler3[5], 0);
+ CreateObject(0x3d, gArea.field_0x17, 0);
gArea.filler[8]++;
}
@@ -73,4 +73,4 @@ void sub_0804AB24(void)
void sub_0804AB54(void)
{
gUnk_080D412C[gArea.filler[8]]();
-} \ No newline at end of file
+}
diff --git a/src/code_08077B98.c b/src/code_08077B98.c
index b0d62afc..2195fc3e 100644
--- a/src/code_08077B98.c
+++ b/src/code_08077B98.c
@@ -17,7 +17,6 @@ Entity* sub_08077C94(ItemBehavior*, u32);
void* sub_08077C54(UnkItemStruct* unk);
Entity* CreatePlayerBomb(ItemBehavior*, u32);
extern Entity* sub_0805E744();
-extern void AppendEntityToList(Entity*, u32);
extern struct_0811BE48 gUnk_0811BE48[];
@@ -137,4 +136,4 @@ Entity * sub_08077CF8(u32 subtype, u32 form, u32 parameter, u32 unk)
NAKED
void sub_08077D38(ItemBehavior *beh, u32 arg1) {
asm(".include \"asm/non_matching/sub_08077D38.inc\"");
-} \ No newline at end of file
+}
diff --git a/src/item.c b/src/item.c
index 8d3e0f72..52b94c07 100644
--- a/src/item.c
+++ b/src/item.c
@@ -155,6 +155,6 @@ void sub_08076D94(ItemBehavior *beh, u32 arg1)
void GustJar(ItemBehavior *beh, u32 arg1)
{
- gPlayerState.field_0xa8[0] = 3;
+ gPlayerState.field_0xa8 = 3;
gUnk_0811BDF4[beh->stateID](beh, arg1);
-} \ No newline at end of file
+}
diff --git a/src/manager/manager3.c b/src/manager/manager3.c
new file mode 100644
index 00000000..d22dbb25
--- /dev/null
+++ b/src/manager/manager3.c
@@ -0,0 +1,102 @@
+#include "global.h"
+#include "manager.h"
+#include "flags.h"
+#include "area.h"
+#include "room.h"
+#include "player.h"
+#include "functions.h"
+
+typedef struct {
+ Manager manager;
+ u32 unk_20;
+ u32 unk_24;
+ u8 unk_28[0xC];
+ u8 unk_34;
+ u8 unk_35;
+ u16 unk_36;
+ u16 unk_38;
+ u16 unk_3a;
+ u16 unk_3c;
+ u16 unk_3e;
+} Manager3;
+
+extern s8 gUnk_08107C6C[];
+extern u32 sub_0806FBFC(u32, u32, u32, u32);
+extern u32 sub_08057810(void);
+extern u32 sub_080002C0(u16, u16, u8);
+extern void sub_080577AC(u32, u32, u32);
+
+void sub_080576C0(Manager3* this) {
+ s8 tmp;
+ if (this->manager.action == 0) {
+ this->manager.action = 1;
+ this->unk_20 = this->unk_38 + gRoomControls.roomOriginX - 0x20;
+ this->unk_24 = this->unk_3a + gRoomControls.roomOriginY - 0x20;
+ return;
+ }
+ if (sub_0806FBFC(this->unk_20, this->unk_24, 0x40, 0x40)) {
+ gArea.field_0x12 = this->unk_20 + 0x20;
+ gArea.field_0x14 = this->unk_24 + 0x20 + gUnk_08107C6C[this->manager.unk_0a];
+ gArea.field_0x16 = this->unk_34;
+ gArea.field_0x17 = this->manager.unk_0a;
+ if (!CheckGlobalFlag(EZERO_1ST)) {
+ gArea.field_0x18 = 1;
+ gArea.field_0x17 = 5;
+ } else {
+ if ((gPlayerState.flags.all & 0x20) && gPlayerState.jumpStatus == 0) {
+ gArea.field_0x18 = 2;
+ } else {
+ if (sub_08057810()) {
+ gArea.field_0x18 = 3;
+ }
+ }
+ if (sub_080002C0(this->unk_38, this->unk_3a, this->manager.unk_0e) == 0x3d) {
+ sub_080577AC(this->unk_38 + gRoomControls.roomOriginX, this->unk_3a + gRoomControls.roomOriginY, this->manager.unk_0e);
+ if (!this->manager.unk_0f) {
+ this->manager.unk_0f = 1;
+ PlaySFX(0x152);
+ }
+ }
+ }
+
+ } else {
+ this->manager.unk_0f = 0;
+ }
+
+}
+
+void sub_080577AC(u32 baseX, u32 baseY, u32 layer) {
+ u32 r;
+ int offsetX, offsetY;
+ Entity* spark;
+ r = Random();
+ if ((r & 0x7) != 0) return;
+ spark = CreateObject(0xF, 0x26, 0);
+ if (!spark) return;
+ offsetX = (r >> 0x8) & 0xF;
+ offsetY = ((r >> 0x10) & 0xF);
+ if (offsetY > 0x4) {
+ offsetY = -offsetY;
+ }
+ if ((r >> 0x18) & 0x1) {
+ offsetX = -offsetX;
+ }
+ spark->x.HALF.HI = baseX + offsetX;
+ spark->y.HALF.HI = baseY + offsetY;
+ spark->collisionLayer = layer;
+ UpdateSpriteForCollisionLayer(spark);
+}
+
+u32 sub_08057810(void) {
+ if ((gPlayerState.flags.all & 0x80)
+ && !gPlayerState.field_0xaa
+ && (gArea.field_0x17 != 0x6)
+ && (gPlayerState.heldObject == 0)) {
+ switch (gPlayerState.field_0xa8) {
+ case 0:
+ case 1:
+ return 1;
+ }
+ }
+ return 0;
+}
diff --git a/src/manager/manager4.c b/src/manager/manager4.c
index 2b0ddd3d..7a47f977 100644
--- a/src/manager/manager4.c
+++ b/src/manager/manager4.c
@@ -7,7 +7,7 @@
extern void (*gUnk_08107C70[])(Manager*);
void sub_08057854(Manager* this) {
- gUnk_08107C70[this->unk_0c](this);
+ gUnk_08107C70[this->action](this);
}
extern void sub_080805F8(void);
@@ -47,7 +47,7 @@ void sub_0805786C(Manager* this) {
tmp++;
}
}
- this->unk_0c = 1;
+ this->action = 1;
}
extern u32 sub_0805795C(Manager*, DiggingCaveEntrance*);
diff --git a/src/manager/manager6.c b/src/manager/manager6.c
index be4530ad..fa2fcd24 100644
--- a/src/manager/manager6.c
+++ b/src/manager/manager6.c
@@ -8,25 +8,25 @@ extern u32 CheckPlayerInRegion(u16, u16, u8, u8);
extern void DoExitTransition(void*);
extern void DeleteManager(Entity*);
-void sub_08057CB4(Entity * this) {
+void sub_08057CB4(Manager6 * this) {
u32 tmp;
- UnkManagerHelperStruct* i;
- if (this->action == 0){
- this->action = 1;
- this->field_0x20 = (s32) GetCurrentRoomProperty(this->entityType.form);
- if (this->field_0x20 == 0) {
- DeleteManager(this);
+ Manager6WarpData* i;
+ if (this->manager.action == 0){
+ this->manager.action = 1;
+ this->warpList = GetCurrentRoomProperty(this->manager.unk_0a);
+ if (!this->warpList) {
+ DeleteManager((Entity*) this);
return;
}
}
- if (this->actionDelay == 0 || gPlayerState.field_0x10[2] == 0x1e) {
- for (i = ((UnkManagerHelperStruct*) this->field_0x20);i->field_0x00 != 0xFFFF; i++) {
- tmp = (i->field_0x07.all & 0x3);
+ if (this->manager.unk_0e == 0 || gPlayerState.field_0x10[2] == 0x1e) {
+ for (i = this->warpList; i->posX != 0xFFFF; i++) {
+ tmp = (i->unk_07.all & 0x3);
if (((tmp & (gPlayerEntity.collisionLayer)) != 0) &&
- (((gPlayerState.flags.all & 0x80) != 0) || ((i->field_0x07.b.unk2) != 0)) &&
- (CheckPlayerInRegion(i->field_0x00,i->field_0x02,i->field_0x04,i->field_0x05) != 0) &&
+ (((gPlayerState.flags.all & 0x80) != 0) || ((i->unk_07.b.unk2) != 0)) &&
+ (CheckPlayerInRegion(i->posX,i->posY,i->width,i->height) != 0) &&
(gPlayerEntity.height.HALF.HI == 0)) {
- DoExitTransition(GetCurrentRoomProperty(i->field_0x06));
+ DoExitTransition(GetCurrentRoomProperty(i->unk_06));
}
}
}
diff --git a/src/manager/managerA.c b/src/manager/managerA.c
index 1d94bde1..1fd78227 100644
--- a/src/manager/managerA.c
+++ b/src/manager/managerA.c
@@ -9,36 +9,36 @@
extern void (*gUnk_081081F4[])(Manager*);
void sub_08058380(Manager* this) {
- gUnk_081081F4[this->unk_0c](this);
+ gUnk_081081F4[this->action](this);
}
extern void sub_0805E3A0(Manager*, u32);
-void sub_08058398(Manager* this) {
+void sub_08058398(ManagerA* this) {
if (CheckFlags(this->unk_3c) != 0) {
DeleteThisEntity();
}
- this->unk_24 = this->unk_3a.HALF.LO<<3;
- this->unk_26 = this->unk_3a.HALF.HI<<3;
- this->unk_20 = this->unk_24 + (this->unk_38.HALF.LO<<4);
- this->unk_22 = this->unk_26 + (this->unk_38.HALF.HI<<4);
- sub_0805E3A0(this, 0x06);
+ this->unk_24 = this->unk_3a<<3;
+ this->unk_26 = this->unk_3b<<3;
+ this->unk_20 = this->unk_24 + (this->unk_38<<4);
+ this->unk_22 = this->unk_26 + (this->unk_39<<4);
+ sub_0805E3A0(&this->manager, 0x06);
if (this->unk_3e == 0) {
- this->unk_0c = 2;
+ this->manager.action = 2;
} else {
- this->unk_0c = 1;
+ this->manager.action = 1;
}
}
-void sub_08058408(Manager*);
+void sub_08058408(ManagerA*);
-void sub_080583EC(Manager* this) {
+void sub_080583EC(ManagerA* this) {
if (CheckFlags(this->unk_3e) != 0) {
- this->unk_0c = 2;
+ this->manager.action = 2;
sub_08058408(this);
}
}
@@ -50,15 +50,15 @@ extern void sub_08078AA8(u32, u32);
extern void sub_080186C0(u16);
extern void sub_08078B48(void);
-u32 sub_0805848C(Manager*);
-void sub_080585DC(Manager*);
+u32 sub_0805848C(ManagerA*);
+void sub_080585DC(ManagerA*);
-void sub_08058408(Manager* this){
+void sub_08058408(ManagerA* this){
u32 tmp2;
tmp2 = (gPlayerState.flags.all & 0x08);
if (tmp2 != 0) return;
if (!CheckPlayerInRegion(this->unk_20, this->unk_22, this->unk_24, this->unk_26)) return;
- switch (this->unk_0a) {
+ switch (this->manager.unk_0a) {
case 1:
return;
case 2:
@@ -71,21 +71,21 @@ void sub_08058408(Manager* this){
sub_08078A90(3);
sub_08078B48();
sub_0805E544();
- this->unk_0c = 3;
- this->unk_0d = 0;
- this->unk_0e = 0x1e;
+ this->manager.action = 3;
+ this->manager.unk_0d = 0;
+ this->manager.unk_0e = 0x1e;
return;
case 3:
- this->unk_0c = 4;
- this->unk_0d = tmp2;
+ this->manager.action = 4;
+ this->manager.unk_0d = tmp2;
sub_080186C0(this->unk_36);
return;
}
}
-u32 sub_0805848C(Manager* this) {
- switch (gPlayerState.field_0xa8[0]-5) {
+u32 sub_0805848C(ManagerA* this) {
+ switch (gPlayerState.field_0xa8-5) {
case 0:
case 2:
case 3:
@@ -119,8 +119,8 @@ u32 sub_0805848C(Manager* this) {
extern void UnfreezeTime(void);
-void sub_08058514(Manager* this) {
- switch (this->unk_0d) {
+void sub_08058514(ManagerA* this) {
+ switch (this->manager.unk_0d) {
case 1:
if ((gPlayerState.flags.all & 0x1235) != 0)
return;
@@ -128,13 +128,13 @@ void sub_08058514(Manager* this) {
return;
gPlayerState.jumpStatus = 0;
sub_08078AA8(this->unk_36, this->unk_35);
- this->unk_0d++;
- this->unk_0e = 0x1E;
+ this->manager.unk_0d++;
+ this->manager.unk_0e = 0x1E;
return;
case 0:
case 2:
- if (((--this->unk_0e)<<0x18) == 0) {
- this->unk_0d++;
+ if (((--this->manager.unk_0e)<<0x18) == 0) {
+ this->manager.unk_0d++;
}
return;
case 3:
@@ -152,7 +152,7 @@ void sub_08058514(Manager* this) {
extern void sub_0801855C(void);
-void sub_080585B0(Manager* this) {
+void sub_080585B0(ManagerA* this) {
if (gArea.filler4[0] != 0xFF) {
DeleteThisEntity();
}
@@ -161,7 +161,7 @@ void sub_080585B0(Manager* this) {
DeleteThisEntity();
}
}
-void sub_080585DC(Manager* this) {
+void sub_080585DC(ManagerA* this) {
if (CheckFlags(this->unk_3c)) {
DeleteThisEntity();
}
diff --git a/src/manager/managerB.c b/src/manager/managerB.c
new file mode 100644
index 00000000..763e89ea
--- /dev/null
+++ b/src/manager/managerB.c
@@ -0,0 +1,160 @@
+#include "global.h"
+#include "manager.h"
+#include "flags.h"
+#include "entity.h"
+#include "room.h"
+#include "area.h"
+#include "functions.h"
+
+extern void (*(gUnk_08108208[]))(Manager*);
+
+void sub_080585F0(Manager* this) {
+ gUnk_08108208[this->unk_0a](this);
+}
+
+extern void (*(gUnk_08108210[]))(Manager*);
+
+void sub_08058608(Manager* this) {
+ gUnk_08108210[this->action](this);
+}
+
+void sub_080586EC(Manager*);
+
+void sub_08058620(ManagerB* this) {
+ if (!CheckFlags(this->unk_3e)) {
+ this->manager.action = 1;
+ if (!this->unk_3c) {
+ sub_080586EC(&this->manager);
+ }
+ sub_0805E3A0(this, 3);
+ } else {
+ DeleteThisEntity();
+ }
+}
+extern void sub_080186C0(u32);
+
+void sub_08058650(ManagerB* this) {
+ int tmp;
+ if (CheckFlags(this->unk_3c)) {
+ sub_080586EC(&this->manager);
+ if (!this->unk_35) {
+ tmp = gRoomVars.field_0x9 ? gRoomVars.field_0x9 : 0x33;
+ this->unk_20 = gArea.musicIndex;
+ gArea.musicIndex = tmp;
+ PlaySFX(tmp);
+ }
+ sub_080186C0(0xB0F);
+ }
+}
+
+extern void sub_0801855C(void);
+
+void sub_080586A8(ManagerB* this) {
+ if (this->manager.unk_0e) return;
+ SetFlag(this->unk_3e);
+ if (this->unk_3c) {
+ if (!this->unk_35) {
+ gArea.musicIndex = this->unk_20;
+ PlaySFX(gArea.musicIndex);
+ sub_0801855C();
+ }
+ }
+ DeleteThisEntity();
+}
+
+ManagerBHelper* sub_08058760(Manager*);
+void sub_08058798(ManagerBHelper*, Entity*, u32);
+
+extern EntityData* GetCurrentRoomProperty(u8);
+extern Entity* LoadRoomEntity(EntityData*);
+
+void sub_080586EC(Manager* this) {
+ ManagerBHelper* tmp;
+ EntityData* prop;
+ Entity* ent;
+ u32 counter;
+ this->action = 2;
+ this->unk_0e = 0;
+ counter = 0;
+ tmp = sub_08058760(this);
+ if (!tmp) DeleteThisEntity();
+ prop = (EntityData*) GetCurrentRoomProperty(this->unk_0b);
+ if (prop) {
+ while (*((u8*)prop) != 0xFF) {
+ ent = LoadRoomEntity(prop++);
+ if (ent && (ent->entityType.type == 3)) {
+ ent->field_0x6c.HALF.HI |= 0x40;
+ sub_08058798(tmp, ent, counter++);
+ }
+ if (counter >= 7) {
+ counter = 0;
+ tmp = sub_08058760(this);
+ if (!tmp) return;
+ }
+ }
+ }
+}
+
+ManagerBHelper* sub_08058760(Manager* this) {
+ ManagerBHelper* extra;
+ extra = (ManagerBHelper*) GetEmptyManager();
+ if (extra) {
+ extra->manager.type = 9;
+ extra->manager.subtype = 0xB;
+ extra->manager.unk_0a = 1;
+ extra->manager.parent = this;
+ this->unk_0e++;
+ _DmaZero(&extra->enemies, 0x20);
+ AppendEntityToList(extra, 8);
+ }
+ return extra;
+}
+
+void sub_08058798(ManagerBHelper* this, Entity* value, u32 index) {
+ this->enemies[index]=value;
+ this->manager.unk_0e++;
+}
+
+void sub_080587AC(ManagerBHelper* this) {
+ u8 i, tmp;
+ Entity* current;
+ if (this->manager.action == 0) {
+ this->manager.action = 1;
+ sub_0805E3A0(this,3);
+ }
+ tmp = 0;
+ for (i = 0; i < 8; i++) {
+ if ((current = this->enemies[i])) {
+ if (!current->next) {
+ this->enemies[i] = 0;
+ } else {
+ tmp = 1;
+ }
+ }
+ }
+ if (!tmp) {
+ if (((ManagerB*) this->manager.parent)->manager.unk_0e) {
+ ((ManagerB*) this->manager.parent)->manager.unk_0e--;
+ }
+ DeleteThisEntity();
+ }
+}
+
+
+extern Manager gUnk_03003DB0;
+
+void sub_08058800(Entity* this, Entity* unk1) {
+ ManagerBHelper* current;
+ Manager* end = &gUnk_03003DB0;
+ u32 i;
+ for (current = (ManagerBHelper*) end->next; (Manager*)current != end; current=(ManagerBHelper*)current->manager.next) {
+ if (current->manager.type != 0x9 || current->manager.subtype != 0xB) continue;
+ for (i = 0; i < 8; i++) {
+ if (this == current->enemies[i]) {
+ current->enemies[i] = unk1;
+ return;
+ }
+ }
+ }
+}
+
diff --git a/src/manager/managerE.c b/src/manager/managerE.c
index 7145ad13..f9edc70a 100644
--- a/src/manager/managerE.c
+++ b/src/manager/managerE.c
@@ -12,28 +12,28 @@ extern void sub_08078A90(u32);
extern void sub_08078B48(void);
extern void PlaySFX(u32);
-void sub_08058E60(Manager* this) {
- if (!this->unk_0c) {
- this->unk_0c = 1;
+void sub_08058E60(ManagerE* this) {
+ if (!this->manager.action) {
+ this->manager.action = 1;
if (CheckFlags(this->unk_3e)) {
- DeleteManager(this);
+ DeleteManager(&this->manager);
return;
}
}
if (!CheckFlags(this->unk_3e))
return;
- if (this->unk_0b != 0) {
- this->unk_0b = 0;
+ if (this->manager.unk_0b != 0) {
+ this->manager.unk_0b = 0;
sub_08078A90(0xff);
sub_08078B48();
}
- if (this->unk_3a.SHWORD == 0){
- if (this->unk_38.SHWORD != 0) {
- PlaySFX(this->unk_38.SHWORD);
+ if (this->unk_3a == 0){
+ if (this->unk_38 != 0) {
+ PlaySFX(this->unk_38);
}
- LoadRoomEntityList(GetCurrentRoomProperty(this->unk_0a));
+ LoadRoomEntityList(GetCurrentRoomProperty(this->manager.unk_0a));
DeleteThisEntity();
} else {
- this->unk_3a.SHWORD -= 1;
+ this->unk_3a -= 1;
}
}
diff --git a/src/npc/festari.c b/src/npc/festari.c
index 54688ac2..3a86130c 100644
--- a/src/npc/festari.c
+++ b/src/npc/festari.c
@@ -4,7 +4,6 @@
#include "npc.h"
#include "player.h"
-extern void sub_0805E3A0(Entity*, u32);
extern u32 sub_0801E99C(Entity*);
extern void sub_08078784(Entity*, u32);
extern void sub_0807DD50(Entity*);
@@ -84,4 +83,4 @@ void sub_0805FF18(Entity *this)
if (UpdateFuseInteraction(this)) {
this->action = 1;
}
-} \ No newline at end of file
+}
diff --git a/src/npc/goronMerchant.c b/src/npc/goronMerchant.c
index c2d7cd03..9c2e56fe 100644
--- a/src/npc/goronMerchant.c
+++ b/src/npc/goronMerchant.c
@@ -92,13 +92,13 @@ void sub_08069660(Entity *this)
void sub_08069684(void)
{
- Entity *mgr;
+ Manager *mgr;
if (FindEntityInListBySubtype(9, 0x31, 8) == NULL) {
mgr = GetEmptyManager();
if (mgr != NULL) {
- mgr->entityType.type = 9;
- mgr->entityType.subtype = 0x31;
+ mgr->type = 9;
+ mgr->subtype = 0x31;
AppendEntityToList(mgr, 8);
}
}
@@ -140,4 +140,4 @@ u32 sub_080696BC(Entity* this)
uVar1 = 4;
}
return gUnk_08111BA0[uVar1 * 3 + iVar3];
-} \ No newline at end of file
+}
diff --git a/src/npc/melari.c b/src/npc/melari.c
index a4cce8f6..a50d4aad 100644
--- a/src/npc/melari.c
+++ b/src/npc/melari.c
@@ -8,7 +8,6 @@ extern void sub_0806ED78(Entity*);
extern void sub_08068780(Entity*);
extern void sub_08078778(Entity*);
extern u32 Random(void);
-extern void sub_0805E3A0(Entity*, u32);
extern void sub_0807DD50(Entity*);
extern void sub_0806F118(Entity*);
extern void sub_0807DDAC(Entity*, u32);
@@ -170,4 +169,4 @@ void Melari_Fusion(Entity* this) {
}
void nullsub_502(Entity* this) {
-} \ No newline at end of file
+}
diff --git a/src/npc/postman.c b/src/npc/postman.c
index 2f357b57..f3d9bd96 100644
--- a/src/npc/postman.c
+++ b/src/npc/postman.c
@@ -20,7 +20,6 @@ extern s32 sub_0806ED9C(Entity*, u32, u32);
extern void sub_0806EE20(Entity*);
extern void sub_0806ED78(Entity*);
extern u32 sub_080040A8(Entity*);
-extern void sub_0805E3A0(Entity*, u32);
extern u32 sub_0801E99C(Entity*);
extern void sub_0807DD50(Entity*);
extern void sub_0806F118(Entity*);
diff --git a/src/npc/rem.c b/src/npc/rem.c
index 2edd917e..b183f687 100644
--- a/src/npc/rem.c
+++ b/src/npc/rem.c
@@ -6,7 +6,6 @@ extern void sub_0807DDAC(Entity*, u32);
extern void sub_0807DDE4(Entity*);
extern void sub_0806ED78(Entity*);
extern void PlaySFX(u32);
-extern void sub_0805E3A0(Entity*, u32);
extern void sub_0806A8C8(Entity*);
extern void sub_0807DD94(Entity*, u32);
diff --git a/src/npc/zelda.c b/src/npc/zelda.c
index 941f96e5..f708c6b8 100644
--- a/src/npc/zelda.c
+++ b/src/npc/zelda.c
@@ -5,7 +5,6 @@
#include "flags.h"
extern void PrependEntityToList(Entity*, u32);
-extern void sub_0805E3A0(Entity*, u32);
extern void sub_0807DD50(Entity*);
extern void sub_0807DD94(Entity*, u32);
extern Entity* FindEntityBySubtype(u32, u32);
diff --git a/src/sub_08070680.c b/src/sub_08070680.c
index 566bfd7b..623b992d 100644
--- a/src/sub_08070680.c
+++ b/src/sub_08070680.c
@@ -51,7 +51,7 @@ void sub_08070698(Entity *this)
if (gPlayerState.swimState != 0) {
gPlayerState.swimState = 1;
sub_08079938();
- gPlayerState.field_0xa8[0] = 7;
+ gPlayerState.field_0xa8 = 7;
sub_0807ACCC(this);
ent = FindEntityInListByForm(0x6, 0xf, 0x6, 0xb, 0x0);
if (ent != NULL) {
@@ -59,4 +59,4 @@ void sub_08070698(Entity *this)
}
}
}
-} \ No newline at end of file
+}