Decompile manager1D

This commit is contained in:
octorock
2021-08-28 23:25:40 +02:00
parent 612011c12b
commit d0d4c3323e
5 changed files with 37 additions and 89 deletions
+36 -3
View File
@@ -1,7 +1,40 @@
#include "manager.h"
#include "room.h"
#include "screen.h"
ASM_FUNC("asm/non_matching/manager1D/Manager1D_Main.inc", void Manager1D_Main())
extern void (*const gUnk_08108C80[])(Manager*);
ASM_FUNC("asm/non_matching/manager1D/sub_0805B5E0.inc", void sub_0805B5E0())
extern u16 gUnk_08108C88[];
ASM_FUNC("asm/non_matching/manager1D/sub_0805B638.inc", void sub_0805B638())
void Manager1D_Main(Manager* this) {
gUnk_08108C80[this->action](this);
}
void sub_0805B5E0(Manager* this) {
this->action = 1;
gScreen.lcd.displayControl |= 0x800;
gScreen.affine.bg3Control = gUnk_08108C88[this->unk_0a];
gRoomControls.bg3OffsetY.WORD = 0;
gRoomControls.bg3OffsetX.WORD = 0;
switch (this->unk_0a) {
case 0:
default:
gScreen.affine.bg3yOffset = 0;
gScreen.affine.bg3xOffset = 0;
break;
case 1:
gScreen.affine.bg3xOffset = gRoomControls.roomScrollX + gRoomControls.bg3OffsetX.HALF.HI;
gScreen.affine.bg3yOffset = gRoomControls.roomScrollY + gRoomControls.bg3OffsetY.HALF.HI;
break;
}
}
void sub_0805B638(Manager* this) {
if (this->unk_0a == 1) {
gRoomControls.bg3OffsetX.WORD = gRoomControls.bg3OffsetX.WORD + 0x2000;
gScreen.affine.bg3xOffset = gRoomControls.roomScrollX + gRoomControls.bg3OffsetX.HALF.HI ;
gScreen.affine.bg3yOffset = gRoomControls.roomScrollY + gRoomControls.bg3OffsetY.HALF.HI;
}
}
+1 -1
View File
@@ -1,3 +1,3 @@
#include "manager.h"
ASM_FUNC("asm/non_matching/manager33/Manager33_Main.inc", void Manager33_Main())
ASM_FUNC("asm/non_matching/manager33/Manager33_Main.inc", void Manager33_Main(Manager* this))