add subdirs

This commit is contained in:
theo3
2020-07-13 15:27:20 -07:00
parent c47f16e5e7
commit 62ddaaa5f6
77 changed files with 138 additions and 186 deletions
+64
View File
@@ -0,0 +1,64 @@
#include "global.h"
#include "entity.h"
#include "screen.h"
extern void sub_0801D7EC(u32);
extern void sub_08056250(void);
extern void sub_080570B8(Entity*);
void sub_080570F8(void);
extern void sub_08052D74(void*, void*, void*);
extern void (*const gUnk_08107C5C[])(Entity*);
extern void (*const gUnk_08107C48[])(Entity*);
extern u8 gUnk_08107C40[];
void Manager1(Entity *this)
{
u8 bVar1;
u8 *pbVar2;
gUnk_08107C5C[this->action](this);
gUnk_08107C48[((u8*)&this->field_0x20)[1]](this);
bVar1 = gUnk_08107C40[((u8*)&this->field_0x20)[1]];
if ((bVar1 != 0) && (*(u8 *)&this->field_0x20 != bVar1)) {
((u8*)&this->field_0x20)[0] = bVar1;
sub_0801D7EC(bVar1);
}
}
void sub_080570B8(Entity *this)
{
u8 *pbVar1;
sub_0801D7EC(((u8 *)&this->field_0x20)[0]);
this->height.WORD = 0;
pbVar1 = ((u8 *)&this->field_0x20 + 1);
if (*pbVar1 == 3) {
gScreen.affine.bg3xOffset = 1;
}
else {
gUnk_08107C48[*pbVar1](this);
}
}
void sub_080570F8(void)
{
gScreen.lcd.lcdControl2 &= 0xf7ff;
gScreen.controls.windowOutsideControl = 0;
sub_08056250();
}
void sub_08057118(Entity *this)
{
this->actionDelay = 0;
*(u8 *)&this->field_0x20 = 0;
((u8 *)&this->field_0x20)[1] = 0;
((u8 *)&this->field_0x20)[2] = 0;
this->action = 1;
gScreen.affine.unk2 = 0x1e04;
*(u16 *)&gScreen.lcd.lcdControl2 |= 0x800;
gScreen.controls.windowOutsideControl = 0x3648;
gScreen.controls.mosaicSize = 0x1000;
sub_08052D74(this, sub_080570B8, sub_080570F8);
}
+18
View File
@@ -0,0 +1,18 @@
#include "global.h"
#include "entity.h"
#include "screen.h"
extern void sub_080576A0();
extern void sub_08052D74();
extern void sub_0805754C(Entity*);
void Manager2(Entity *this)
{
if (this->action == 0) {
this->action = 1;
gScreen.affine.bg3xOffset = 0;
gScreen.bg2.bg0xOffset = 0;
sub_08052D74(this, sub_080576A0, 0);
}
sub_0805754C(this);
}
+90
View File
@@ -0,0 +1,90 @@
#include "global.h"
#include "entity.h"
#include "flags.h"
#include "functions.h"
typedef struct {
u8 filler[0xAC];
u16 unk;
} struct_030010A0;
extern u32 sub_0805C920(Entity*);
extern void LoadPalettesByPaletteGroupIndex(u32);
extern void (*const gUnk_08108D10[])(Entity*);
extern struct_030010A0 gUnk_030010A0;
extern u8 gUnk_08108D20[];
void Manager27(Entity *this)
{
gUnk_08108D10[this->action](this);
if (CheckLocalFlagByOffset(0x300, this->entityType.form + 0x67)) {
gUnk_030010A0.unk |= (1 << (this->entityType).form);
}
else {
gUnk_030010A0.unk &= ~(1 << (this->entityType).form);
}
}
void sub_0805C874(Entity *this)
{
u8 bVar1;
if (sub_0805C920(this)) {
this->action = 2;
}
else {
this->action = 1;
}
this->actionDelay = 1;
this->field_0xf = 0;
}
void sub_0805C894(Entity *this)
{
if (sub_0805C920(this)) {
this->action = 2;
this->actionDelay = 1;
PlaySFX(0x11a);
}
}
void sub_0805C8B4(Entity *this)
{
u8 bVar1;
int iVar2;
if (--this->actionDelay == 0) {
this->actionDelay = 0x14;
if (5 < ++this->field_0xf) {
this->field_0xf = 0;
}
LoadPalettesByPaletteGroupIndex(gUnk_08108D20[this->field_0xf]);
if (this->field_0xf == 0) {
PlaySFX(0x11a);
}
}
if (sub_0805C920(this) == 0) {
this->action = 3;
}
}
void sub_0805C908(Entity *this)
{
if (this->field_0xf == 0) {
this->action = 1;
}
else {
sub_0805C8B4(this);
}
}
u32 sub_0805C920(Entity *this)
{
return CheckLocalFlagByOffset(0x300, (this->entityType).form + 0x67);
}
+15
View File
@@ -0,0 +1,15 @@
#include "global.h"
#include "entity.h"
extern void (*const gUnk_08108D3C[])(Entity*);
extern void (*const gUnk_08108D44[])(Entity*);
void sub_0805D250(Entity *this)
{
gUnk_08108D3C[this->entityType.form](this);
}
void sub_0805D268(Entity *this)
{
gUnk_08108D44[this->action](this);
}