naming work

This commit is contained in:
theo3
2022-01-03 23:58:02 -08:00
parent f26b2e286a
commit 52db70bb9d
212 changed files with 1762 additions and 1736 deletions
+17 -17
View File
@@ -21,42 +21,42 @@ NONMATCH("asm/non_matching/vram/sub_080AD8F0.inc", void* sub_080AD8F0(u32 sprite
END_NONMATCH
void FlushSprites(void) {
gUnk_03000000.updated = 0;
gOAMControls.updated = 0;
}
NONMATCH("asm/non_matching/vram/sub_080AD918.inc", void sub_080AD918(void)) {
NONMATCH("asm/non_matching/vram/sub_080AD918.inc", void CopyOAM(void)) {
s32 rem;
u16* d;
if (gMain.ticks.HALF.LO == 0) {
gUnk_03000000.unk[0x20].unk0 = gMain.ticks.HALF.LO;
gUnk_03000000.unk[0x48].unk4 = gMain.ticks.HALF.LO;
gUnk_03000000.unk[0x71].unk0 = gMain.ticks.HALF.LO;
gUnk_03000000.unk[0x99].unk4 = gMain.ticks.HALF.LO;
gOAMControls.unk[0x20].unk0 = gMain.ticks.HALF.LO;
gOAMControls.unk[0x48].unk4 = gMain.ticks.HALF.LO;
gOAMControls.unk[0x71].unk0 = gMain.ticks.HALF.LO;
gOAMControls.unk[0x99].unk4 = gMain.ticks.HALF.LO;
} else {
gMain.ticks.HALF.LO--;
}
rem = 0x80 - gUnk_03000000.updated;
for (d = (u16*)&gUnk_03000000.oam[0x80 + gUnk_03000000.updated]; rem > 0; rem--) {
rem = 0x80 - gOAMControls.updated;
for (d = (u16*)&gOAMControls.oam[0x80 + gOAMControls.updated]; rem > 0; rem--) {
*d = 0x2A0;
(u8*)d += 6;
}
if (gUnk_03000000.unk[0].unk7) {
gUnk_03000000.unk[0].unk7 = 0;
ObjAffineSet((struct ObjAffineSrcData*)gUnk_03000000.unk, &gUnk_03000000.oam[0].affineParam, 32, 8);
if (gOAMControls.unk[0].unk7) {
gOAMControls.unk[0].unk7 = 0;
ObjAffineSet((struct ObjAffineSrcData*)gOAMControls.unk, &gOAMControls.oam[0].affineParam, 32, 8);
}
gUnk_03000000.field_0x0 = 1;
gOAMControls.field_0x0 = 1;
}
END_NONMATCH
void sub_080AD9B0(void) {
void DrawEntities(void) {
void (*fn)(void);
gUnk_03000000._0[6] = gScreenTransition.field_0x2c[3] ? 15 : 0;
gUnk_03000000._4 = gRoomControls.aff_x + gRoomControls.roomScrollX;
gUnk_03000000._6 = gRoomControls.aff_y + gRoomControls.roomScrollY;
gUnk_03000000.field_0x1++;
gOAMControls._0[6] = gRoomTransition.field_0x2c[3] ? 15 : 0;
gOAMControls._4 = gRoomControls.aff_x + gRoomControls.scroll_x;
gOAMControls._6 = gRoomControls.aff_y + gRoomControls.scroll_y;
gOAMControls.field_0x1++;
fn = &gUnk_03006164;
fn();
}
+4 -4
View File
@@ -1,13 +1,13 @@
#include "global.h"
extern u32* gUnk_020354B0;
extern u32 gUnk_02024050;
extern u32 gRoomMemory;
extern void MemFill32(u32, void*, u32);
void sub_08049CD4() {
MemFill32(0xFFFFFFFF, &gUnk_02024050, 0x40);
gUnk_020354B0 = &gUnk_02024050;
void ClearRoomMemory() {
MemFill32(0xFFFFFFFF, &gRoomMemory, 0x40);
gUnk_020354B0 = &gRoomMemory;
}
void sub_08049CF4(u8* arg0) {
+2 -2
View File
@@ -149,7 +149,7 @@ NONMATCH("asm/non_matching/sub_08054524.inc", void sub_08054524(void)) {
bVar1 = gArea.locationIndex;
if (gArea.locationIndex == 0) {
bVar1 = gScreenTransition.player_status.field_0x24[0xa];
bVar1 = gRoomTransition.player_status.field_0x24[0xa];
}
if (bVar1 > 0x16) {
bVar1 = 0;
@@ -263,7 +263,7 @@ u32 CreateItemDrop(Entity* arg0, u32 itemID, u32 itemParameter) {
}
*/
void sub_08054870(void) {
void Subtask_WorldEvent(void) {
#if !(defined(DEMO_USA) || defined(DEMO_JP))
gUnk_080FE2A0[gMenu.menuType]();
#endif
+5 -5
View File
@@ -4,7 +4,7 @@
bool32 sub_0805EC04(Entity* this) {
u32 i = 1;
OAMSettings* temp = &gUnk_03000000;
OAMControls* temp = &gOAMControls;
u32 j = 1;
for (; i < 0x20; i++) {
if (temp->unk[i].unk6 == 0) {
@@ -19,13 +19,13 @@ bool32 sub_0805EC04(Entity* this) {
void sub_0805EC60(Entity* this) {
u8 temp;
OAMSettings* temp2;
OAMControls* temp2;
if (this->spriteRendering.b0 != 0) {
this->spriteRendering.b0 = 0;
temp = this->spriteOrientation.b1;
this->spriteOrientation.b1 = 0;
temp2 = &gUnk_03000000;
temp2 = &gOAMControls;
temp2->unk[temp].unk6 = 0;
}
}
@@ -35,9 +35,9 @@ ASM_FUNC("asm/non_matching/sub_0805EC9C.inc", bool32 sub_0805EC9C(Entity* ent, u
void sub_0805ECEC(int param_1, u32 param_2, u32 param_3, u32 param_4) {
u16* temp;
gUnk_03000000.unk[0].unk7 = 1;
gOAMControls.unk[0].unk7 = 1;
temp = &gUnk_03000000.unk[param_1].unk0;
temp = &gOAMControls.unk[param_1].unk0;
temp[0] = param_2;
temp[1] = param_3;
temp[2] = param_4;
+1 -1
View File
@@ -7,7 +7,7 @@ void LoadObjPaletteAtIndex(u32 a1, u32 a2);
static void sub_0801CFD0(u32 a1);
void sub_0801CFA8(u32 a1) {
void ResetPaletteTable(u32 a1) {
u32 i;
MemClear(gPaletteList, 0x40);
+6 -6
View File
@@ -6,7 +6,7 @@
#include "main.h"
#include "area.h"
#include "room.h"
#include "fileScreen.h"
#include "fileselect.h"
#include "game.h"
#include "flags.h"
#include "kinstone.h"
@@ -266,17 +266,17 @@ void LoadGfxGroup(u32 group) {
case 0xD:
return;
case 0xE:
if (gSaveHeader->gameLanguage != 0 && gSaveHeader->gameLanguage != 1) {
if (gSaveHeader->language != 0 && gSaveHeader->language != 1) {
loadGfx = TRUE;
}
break;
case 0xF:
if (gSaveHeader->gameLanguage != 0) {
if (gSaveHeader->language != 0) {
loadGfx = TRUE;
}
break;
default:
if (ctrl == gSaveHeader->gameLanguage) {
if (ctrl == gSaveHeader->language) {
loadGfx = TRUE;
}
break;
@@ -350,7 +350,7 @@ void DispReset(bool32 refresh) {
}
void ClearOAM(void) {
u8* d = (u8*)gUnk_03000000.oam;
u8* d = (u8*)gOAMControls.oam;
u8* mem = (u8*)0x07000000;
u32 i;
for (i = 128; i != 0; --i) {
@@ -376,7 +376,7 @@ void ResetScreenRegs(void) {
}
u32 sub_0801DB94(void) {
return gScreenTransition.player_status.dungeon_map_y >> 11;
return gRoomTransition.player_status.dungeon_map_y >> 11;
}
ASM_FUNC("asm/non_matching/common/DrawDungeonMap.inc", void DrawDungeonMap(u32 floor, struct_02019EE0* data, u32 size));
+6 -6
View File
@@ -169,14 +169,14 @@ void LinearMoveUpdate(Entity* ent) {
}
void sub_0806F704(Entity* ent, u32 a2) {
ent->x.HALF.HI = (((16 * a2) & 0x3F0) | 8) + gRoomControls.roomOriginX;
ent->y.HALF.HI = (((a2 >> 2) & 0x3F0) | 8) + gRoomControls.roomOriginY;
ent->x.HALF.HI = (((16 * a2) & 0x3F0) | 8) + gRoomControls.origin_x;
ent->y.HALF.HI = (((a2 >> 2) & 0x3F0) | 8) + gRoomControls.origin_y;
}
u32 sub_0806F730(Entity* ent) {
u32 tmp = 0x3F;
u32 x = ent->x.HALF.HI + ent->hitbox->offset_x - gRoomControls.roomOriginX;
u32 y = ent->y.HALF.HI + ent->hitbox->offset_y - gRoomControls.roomOriginY;
u32 x = ent->x.HALF.HI + ent->hitbox->offset_x - gRoomControls.origin_x;
u32 y = ent->y.HALF.HI + ent->hitbox->offset_y - gRoomControls.origin_y;
switch (ent->animationState) {
case 0:
y -= ent->hitbox->unk2[3];
@@ -195,8 +195,8 @@ u32 sub_0806F730(Entity* ent) {
}
u32 sub_0806F798(Entity* ent) {
u32 hitboxX = ent->x.HALF.HI + ent->hitbox->offset_x - gRoomControls.roomOriginX;
u32 hitboxY = ent->y.HALF.HI + ent->hitbox->offset_y - gRoomControls.roomOriginY;
u32 hitboxX = ent->x.HALF.HI + ent->hitbox->offset_x - gRoomControls.origin_x;
u32 hitboxY = ent->y.HALF.HI + ent->hitbox->offset_y - gRoomControls.origin_y;
u32 mask = 0x3f;
return (mask & (hitboxX >> 4)) + ((mask & (hitboxY >> 4)) << 6);
}
+7 -7
View File
@@ -9,8 +9,8 @@
extern void (*const gUnk_08109A30[])();
void HandleDebugTextScreen() {
gUnk_08109A30[gMain.funcIndex]();
void DebugTask() {
gUnk_08109A30[gMain.state]();
}
void sub_0805FA04(void) {
@@ -27,10 +27,10 @@ void sub_0805FA04(void) {
MessageInitialize();
MemClear((void*)&gUnk_02032EC0, sizeof(UI));
MemClear((void*)&gMenu, sizeof(Menu));
gMenu.unk16 = gSaveHeader->gameLanguage;
sub_08053320();
gMenu.unk16 = gSaveHeader->language;
LoadGfxGroups();
SetColor(0, 0x1144);
gMain.funcIndex = 1;
gMain.state = 1;
InitSoundPlayingInfo();
sub_08050008();
}
@@ -56,7 +56,7 @@ void sub_0805FA98(void) {
}
break;
case R_BUTTON:
gSaveHeader->gameLanguage = gMenu.unk16;
gSaveHeader->language = gMenu.unk16;
MessageFromTarget(gMenu.unk14 * 0x100 + gMenu.unk15);
break;
case B_BUTTON:
@@ -91,5 +91,5 @@ void sub_0805FA98(void) {
}
void sub_0805FBC4() {
InitScreen(0);
SetTask(TASK_TITLE);
}
+13 -13
View File
@@ -3,7 +3,7 @@
#include "main.h"
#include "common.h"
#include "message.h"
#include "fileScreen.h"
#include "fileselect.h"
#include "screen.h"
extern void (*const demoFunctions[])(void);
@@ -23,11 +23,11 @@ extern u16 gUnk_08127CC8[4];
extern void* gUnk_08127C98;
extern u8 gUnk_08A068BF[129];
void HandleChooseDemoScreen(void) {
void DemoTask(void) {
FlushSprites();
demoFunctions[gMain.funcIndex]();
demoFunctions[gMain.state]();
sub_080A30AC();
sub_080AD918();
CopyOAM();
}
void sub_080A2E40(void) {
@@ -37,11 +37,11 @@ void sub_080A2E40(void) {
MessageInitialize();
EraseAllEntities();
ResetPalettes();
sub_0801CFA8(0);
ResetPaletteTable(0);
MemClear(&gUnk_02032EC0, sizeof gUnk_02032EC0);
MemClear(&gChooseFileState, sizeof gChooseFileState);
MemClear(&gBG0Buffer, sizeof gBG0Buffer);
sub_08053320();
LoadGfxGroups();
LoadPaletteGroup(0xb5);
LoadGfxGroup(0x56);
MemCopy(&gUnk_089FD1B4, &gUnk_02017760[0], 0x100);
@@ -65,27 +65,27 @@ void sub_080A2E40(void) {
*(u8*)(addr + 4) = 0;
}
sub_080A3198(0, 0);
gMain.funcIndex = 1;
gMain.state = 1;
SoundReq(BGM_FILE_SELECT);
DoFade(4, 8);
}
void sub_080A2F8C(void) {
if (gFadeControl.active == 0) {
switch (gMain.transition) {
switch (gMain.substate) {
case 0:
gMain.transition = 1;
gMain.substate = 1;
{
// TODO write to 0x2000005
u32 addr = (0x80 << 0x12);
*(u8*)(addr + 5) = 1;
*(u8*)(addr + 6) = 1;
}
gMain.funcIndex = 2;
gMain.state = 2;
DoFade(5, 8);
break;
case 1:
InitScreen(2);
SetTask(TASK_GAME);
break;
}
}
@@ -125,8 +125,8 @@ NONMATCH("asm/non_matching/demoScreen/sub_080A2FD0.inc", void sub_080A2FD0(void)
case START_BUTTON:
case A_BUTTON: {
if (gChooseFileState.unk_0x0 == 0) {
gMain.screen = 2;
gMain.funcIndex = gChooseFileState.unk_0x0;
gMain.task = 2;
gMain.state = gChooseFileState.unk_0x0;
SoundReq(SFX_TEXTBOX_SELECT);
}
}
+11 -11
View File
@@ -136,19 +136,19 @@ void sub_0802A9A8(Entity* this) {
sub_0802ACDC(this, 8);
}
} else {
if (gRoomControls.unk2 != 0) {
if (gRoomControls.reload_flags != 0) {
return;
}
this->spriteSettings.draw = 1;
this->field_0x82.HWORD = 1;
if (this->field_0x80.HALF.LO) {
this->x.HALF.HI = gRoomControls.roomScrollX - 0x10;
this->x.HALF.HI = gRoomControls.scroll_x - 0x10;
this->direction = 8;
} else {
this->x.HALF.HI = gRoomControls.roomScrollX + 0x100;
this->x.HALF.HI = gRoomControls.scroll_x + 0x100;
this->direction = 0x18;
}
this->y.HALF.HI = gRoomControls.roomScrollY + 0x40;
this->y.HALF.HI = gRoomControls.scroll_y + 0x40;
this->actionDelay = 0x80;
sub_0802ADDC(this);
}
@@ -311,9 +311,9 @@ void sub_0802AC40(Entity* this) {
void sub_0802ACDC(Entity* this, u32 param_2) {
u32 x;
if (this->field_0x80.HALF.LO) {
x = sub_080045B4(this, gRoomControls.roomScrollX + 0x20, gRoomControls.roomScrollY + 0x60);
x = sub_080045B4(this, gRoomControls.scroll_x + 0x20, gRoomControls.scroll_y + 0x60);
} else {
x = sub_080045B4(this, gRoomControls.roomScrollX + 0xd0, gRoomControls.roomScrollY + 0x60);
x = sub_080045B4(this, gRoomControls.scroll_x + 0xd0, gRoomControls.scroll_y + 0x60);
}
sub_08004596(this, x);
this->field_0xf = param_2;
@@ -333,13 +333,13 @@ void sub_0802AD1C(Entity* this, u32 param_2) {
void sub_0802AD54(Entity* this) {
if (this->field_0x82.HWORD != 0) {
if (gRoomControls.unk2 != 0) {
if (gRoomControls.reload_flags != 0) {
this->spriteSettings.draw = 0;
DeleteEntity(this);
return;
}
if (gRoomControls.roomOriginY > this->y.HALF.HI ||
(gRoomControls.roomOriginY + gRoomControls.height + 0x20) < this->y.HALF.HI) {
if (gRoomControls.origin_y > this->y.HALF.HI ||
(gRoomControls.origin_y + gRoomControls.height + 0x20) < this->y.HALF.HI) {
this->spriteSettings.draw = 0;
} else {
this->spriteSettings.draw = 1;
@@ -504,8 +504,8 @@ void sub_0802B048(Entity* this) {
u32 action;
if (this->field_0x7a.HALF.HI) {
if (gRoomControls.roomOriginY > this->y.HALF.HI ||
(gRoomControls.roomOriginY + gRoomControls.height + 0x20) < this->y.HALF.HI) {
if (gRoomControls.origin_y > this->y.HALF.HI ||
(gRoomControls.origin_y + gRoomControls.height + 0x20) < this->y.HALF.HI) {
COLLISION_OFF(this);
} else {
COLLISION_ON(this);
+6 -6
View File
@@ -2,14 +2,14 @@
#include "common.h"
#include "functions.h"
void sub_080300AC(void) {
MemClear(&gScreenTransition.armos_data, sizeof(gScreenTransition.armos_data));
gScreenTransition.armos_data.field_0xae = 0xff;
void ClearArmosData(void) {
MemClear(&gRoomTransition.armos_data, sizeof(gRoomTransition.armos_data));
gRoomTransition.armos_data.field_0xae = 0xff;
}
void sub_080300C4(void) {
if (gScreenTransition.armos_data.field_0xae == 0xff) {
gScreenTransition.armos_data.field_0xac = 0;
MemClear(&gScreenTransition.armos_data.data, sizeof(gScreenTransition.armos_data.data));
if (gRoomTransition.armos_data.field_0xae == 0xff) {
gRoomTransition.armos_data.field_0xac = 0;
MemClear(&gRoomTransition.armos_data.data, sizeof(gRoomTransition.armos_data.data));
}
}
+2 -2
View File
@@ -61,7 +61,7 @@ void sub_0802C318(Entity* this) {
NONMATCH("asm/non_matching/fallingBoulder/sub_0802C334.inc", void sub_0802C334(Entity* this)) {
if ((u16)this->field_0x7c.HALF.LO == 0) {
u32 tmp = gRoomControls.roomOriginY;
u32 tmp = gRoomControls.origin_y;
if (&gPlayerEntity == NULL)
return;
if (tmp - gPlayerEntity.y.HALF.HI <= 0x38) {
@@ -106,7 +106,7 @@ NONMATCH("asm/non_matching/fallingBoulder/sub_0802C334.inc", void sub_0802C334(E
}
}
y = gRoomControls.roomOriginY + gRoomControls.height - this->y.HALF.HI;
y = gRoomControls.origin_y + gRoomControls.height - this->y.HALF.HI;
if (y >= 5) {
sub_080AEFB4(this);
} else {
+44 -44
View File
@@ -1,7 +1,7 @@
#include "global.h"
#include "enemy.h"
#include "player.h"
#include "fileScreen.h"
#include "fileselect.h"
#include "functions.h"
void (*const gUnk_080D1AFC[8])(Entity*);
@@ -98,7 +98,7 @@ void GyorgMale(Entity* this) {
this->animationState = -(this->field_0x78.HWORD >> 8);
sub_08048004(this);
this->field_0x7c.BYTES.byte1 = this->spriteSettings.draw;
if (this->spriteSettings.draw == 1 && (this->y.HALF.HI - gRoomControls.roomScrollY + 0x30) > 0x100u) {
if (this->spriteSettings.draw == 1 && (this->y.HALF.HI - gRoomControls.scroll_y + 0x30) > 0x100u) {
this->spriteSettings.draw = 0;
}
this->cutsceneBeh.HWORD = gPlayerEntity.x.HALF.HI;
@@ -162,7 +162,7 @@ void sub_08046930(Entity* this) {
void sub_0804696C(Entity* this) {
sub_08047E48(this);
if (gRoomControls.roomOriginY + 0x130 > this->y.HALF.HI) {
if (gRoomControls.origin_y + 0x130 > this->y.HALF.HI) {
this->subAction = 2;
this->direction = 0x80;
this->speed = 0x100;
@@ -174,9 +174,9 @@ void sub_0804696C(Entity* this) {
}
if (this->actionDelay) {
#ifdef EU
if (gRoomControls.roomOriginY + 0x210 > this->y.HALF.HI) {
if (gRoomControls.origin_y + 0x210 > this->y.HALF.HI) {
#else
if (gRoomControls.roomOriginY + 0x258 > this->y.HALF.HI) {
if (gRoomControls.origin_y + 0x258 > this->y.HALF.HI) {
#endif
this->actionDelay = 0;
SoundReq(SFX_APPARATE);
@@ -186,7 +186,7 @@ void sub_0804696C(Entity* this) {
void sub_080469CC(Entity* this) {
sub_08047E48(this);
if (gRoomControls.roomOriginY + 0x210 < this->y.HALF.HI) {
if (gRoomControls.origin_y + 0x210 < this->y.HALF.HI) {
this->subAction = 3;
this->direction = 0x90;
}
@@ -194,7 +194,7 @@ void sub_080469CC(Entity* this) {
void sub_080469F4(Entity* this) {
sub_08047E48(this);
if (gRoomControls.roomOriginY + 0x290 < this->y.HALF.HI) {
if (gRoomControls.origin_y + 0x290 < this->y.HALF.HI) {
this->subAction = 4;
this->spriteOrientation.flipY = 2;
this->spriteRendering.b3 = 2;
@@ -211,7 +211,7 @@ void sub_08046A30(Entity* this) {
void sub_08046A54(Entity* this) {
sub_08047E48(this);
if (gRoomControls.roomOriginX + 0x380 < this->x.HALF.HI) {
if (gRoomControls.origin_x + 0x380 < this->x.HALF.HI) {
this->subAction = 6;
}
}
@@ -268,8 +268,8 @@ void sub_08046B8C(Entity* this) {
if (sub_0806FCB8(this, this->field_0x80.HWORD, this->field_0x82.HWORD, 4)) {
this->subAction = 3;
this->field_0x76.HWORD = this->direction << 8;
this->field_0x80.HWORD = gRoomControls.roomOriginX + 0x200;
this->field_0x82.HWORD = gRoomControls.roomOriginY + 0x210;
this->field_0x80.HWORD = gRoomControls.origin_x + 0x200;
this->field_0x82.HWORD = gRoomControls.origin_y + 0x210;
sub_08047D88(this);
} else {
this->direction =
@@ -331,8 +331,8 @@ void sub_08046D44(Entity* this) {
this->subAction = 1;
this->speed = 0x200;
tmp = gUnk_080D1B60 + (((Entity*)this->myHeap)->next->animationState >> 5);
this->field_0x80.HWORD = tmp[0] + gRoomControls.roomOriginX;
this->field_0x82.HWORD = tmp[1] + gRoomControls.roomOriginY;
this->field_0x80.HWORD = tmp[0] + gRoomControls.origin_x;
this->field_0x82.HWORD = tmp[1] + gRoomControls.origin_y;
this->field_0x76.HWORD = this->direction << 8;
sub_08047D88(this);
}
@@ -440,8 +440,8 @@ void sub_08046FE8(Entity* this) {
this->subAction = 1;
this->speed = 0x1c0;
this->field_0x7c.HALF.HI = 0x1e;
this->field_0x80.HWORD = gRoomControls.roomOriginX + 0x290;
this->field_0x82.HWORD = gRoomControls.roomOriginY + 0x190;
this->field_0x80.HWORD = gRoomControls.origin_x + 0x290;
this->field_0x82.HWORD = gRoomControls.origin_y + 0x190;
sub_08047D88(this);
}
@@ -499,7 +499,7 @@ void sub_0804717C(Entity* this) {
this->speed += 8;
}
sub_08047DF0(this, ((0x100 - this->direction) & 0xFF) << 8);
if (gRoomControls.roomOriginX + 0x200 > this->x.HALF.HI) {
if (gRoomControls.origin_x + 0x200 > this->x.HALF.HI) {
this->subAction = 5;
}
}
@@ -512,7 +512,7 @@ void sub_080471C8(Entity* this) {
this->direction++;
}
sub_08047DF0(this, ((0x100 - this->direction) & 0xFF) << 8);
if (gRoomControls.roomOriginY + 0x190 <= this->y.HALF.HI)
if (gRoomControls.origin_y + 0x190 <= this->y.HALF.HI)
return;
if (this->field_0x74.HWORD > 0x100) {
if (Random() & 1) {
@@ -552,7 +552,7 @@ void sub_080472BC(Entity* this) {
this->speed += 8;
}
sub_08047DF0(this, ((0x100 - this->direction) & 0xFF) << 8);
if (gRoomControls.roomOriginX + 0x2B0 >= this->x.HALF.HI)
if (gRoomControls.origin_x + 0x2B0 >= this->x.HALF.HI)
return;
this->subAction = 9;
this->field_0x76.HWORD = this->direction << 8;
@@ -591,8 +591,8 @@ void sub_0804736C(Entity* this) {
void sub_080473B8(Entity* this) {
this->subAction = 1;
this->speed = 0x120;
this->field_0x80.HWORD = gRoomControls.roomOriginX + 0x200;
this->field_0x82.HWORD = gRoomControls.roomOriginY + 0x1D0;
this->field_0x80.HWORD = gRoomControls.origin_x + 0x200;
this->field_0x82.HWORD = gRoomControls.origin_y + 0x1D0;
sub_08047D88(this);
}
@@ -645,9 +645,9 @@ void sub_08047484(Entity* this) {
}
void sub_08047508(Entity* this) {
if (gRoomControls.roomOriginX + 0x1A0 < this->x.HALF.HI) {
if (gRoomControls.origin_x + 0x1A0 < this->x.HALF.HI) {
if (this->direction == 0) {
if (gRoomControls.roomOriginY + 0x208 >= this->y.HALF.HI) {
if (gRoomControls.origin_y + 0x208 >= this->y.HALF.HI) {
this->field_0x74.HWORD = -this->field_0x74.HWORD;
this->field_0x76.HWORD += this->field_0x74.HWORD;
this->direction = this->field_0x76.HWORD >> 8;
@@ -673,7 +673,7 @@ void sub_08047508(Entity* this) {
}
}
sub_08047E48(this);
if (gRoomControls.roomOriginX + 0x280 < this->x.HALF.HI) {
if (gRoomControls.origin_x + 0x280 < this->x.HALF.HI) {
this->subAction = 4;
this->speed = 0x200;
this->animationState = this->direction;
@@ -700,9 +700,9 @@ void sub_080475F4(Entity* this) {
}
void sub_0804763C(Entity* this) {
if (gRoomControls.roomOriginX + 0x1F0 > this->x.HALF.HI) {
if (gRoomControls.origin_x + 0x1F0 > this->x.HALF.HI) {
if (this->direction == 0) {
if (gRoomControls.roomOriginY + 0x208 >= this->y.HALF.HI) {
if (gRoomControls.origin_y + 0x208 >= this->y.HALF.HI) {
this->field_0x74.HWORD = -this->field_0x74.HWORD;
this->field_0x76.HWORD += this->field_0x74.HWORD;
this->direction = this->field_0x76.HWORD >> 8;
@@ -728,7 +728,7 @@ void sub_0804763C(Entity* this) {
}
}
sub_08047E48(this);
if (gRoomControls.roomOriginX + 0x180 > this->x.HALF.HI) {
if (gRoomControls.origin_x + 0x180 > this->x.HALF.HI) {
this->subAction = 6;
this->speed = 0x200;
this->animationState = this->direction;
@@ -764,13 +764,13 @@ void sub_08047778(Entity* this) {
void sub_08047798(Entity* this) {
this->subAction = 1;
this->speed = 0x80;
if (this->x.HALF.HI - gRoomControls.roomOriginX < 0x1F8) {
if (this->x.HALF.HI - gRoomControls.origin_x < 0x1F8) {
this->field_0x80.HWORD = 0xa8;
} else {
this->field_0x80.HWORD = 0x348;
}
this->field_0x80.HWORD += gRoomControls.roomOriginX;
this->field_0x82.HWORD = gRoomControls.roomOriginY + 0x348;
this->field_0x80.HWORD += gRoomControls.origin_x;
this->field_0x82.HWORD = gRoomControls.origin_y + 0x348;
sub_08047D88(this);
}
@@ -790,7 +790,7 @@ void sub_080477F0(Entity* this) {
this->direction = this->animationState;
return;
}
if (!sub_0806FCB8(this, gRoomControls.roomOriginX + 0x200, gRoomControls.roomOriginY + 0x210, 0x100)) {
if (!sub_0806FCB8(this, gRoomControls.origin_x + 0x200, gRoomControls.origin_y + 0x210, 0x100)) {
this->spriteOrientation.flipY = 3;
this->spriteRendering.b3 = 3;
}
@@ -800,7 +800,7 @@ void sub_080477F0(Entity* this) {
this->field_0x74.HWORD = gUnk_080D1BF0[Random() & 1];
if (((Entity*)this->myHeap)->prev->field_0x6c.HWORD & 1) {
((Entity*)this->myHeap)->next->field_0x78.HALF.HI =
gRoomControls.roomOriginX + 0x200 > this->x.HALF.HI ? 0x81 : 0x83;
gRoomControls.origin_x + 0x200 > this->x.HALF.HI ? 0x81 : 0x83;
} else {
((Entity*)this->myHeap)->next->field_0x78.HALF.HI = 0x80;
}
@@ -861,25 +861,25 @@ void sub_08047978(Entity* this) {
this->subAction = 4;
if (this->type == 0) {
if ((((Entity*)this->myHeap)->next->animationState >> 6) == 1) {
this->field_0x80.HWORD = gRoomControls.roomOriginX + 0x1C0;
this->field_0x82.HWORD = gRoomControls.roomOriginY + 0x250;
this->field_0x80.HWORD = gRoomControls.origin_x + 0x1C0;
this->field_0x82.HWORD = gRoomControls.origin_y + 0x250;
} else {
this->field_0x80.HWORD = gRoomControls.roomOriginX + 0x240;
this->field_0x82.HWORD = gRoomControls.roomOriginY + 0x250;
this->field_0x80.HWORD = gRoomControls.origin_x + 0x240;
this->field_0x82.HWORD = gRoomControls.origin_y + 0x250;
}
} else {
if (gRoomControls.roomOriginX + 0x200 < this->x.HALF.HI) {
if (gRoomControls.origin_x + 0x200 < this->x.HALF.HI) {
this->field_0x80.HWORD = 0x190;
} else {
this->field_0x80.HWORD = 0x270;
}
this->field_0x80.HWORD += gRoomControls.roomOriginX;
if (gRoomControls.roomOriginY + 0x210 < this->y.HALF.HI) {
this->field_0x80.HWORD += gRoomControls.origin_x;
if (gRoomControls.origin_y + 0x210 < this->y.HALF.HI) {
this->field_0x82.HWORD = 0x1A0;
} else {
this->field_0x82.HWORD = 0x280;
}
this->field_0x82.HWORD += gRoomControls.roomOriginY;
this->field_0x82.HWORD += gRoomControls.origin_y;
}
}
@@ -914,7 +914,7 @@ void sub_08047BA4(Entity* this) {
this->subAction = 1;
this->actionDelay = 0x78;
this->field_0xf = 0;
if (gRoomControls.roomOriginX + 0x200 < this->x.HALF.HI) {
if (gRoomControls.origin_x + 0x200 < this->x.HALF.HI) {
this->field_0x76.HWORD = 0x78;
} else {
this->field_0x76.HWORD = 0x88;
@@ -946,7 +946,7 @@ void sub_08047BF0(Entity* this) {
this->direction = this->field_0x76.HWORD;
this->speed = 0x140;
sub_08047E48(this);
if (this->y.HALF.HI > gRoomControls.roomOriginY + 0x270) {
if (this->y.HALF.HI > gRoomControls.origin_y + 0x270) {
this->subAction = 2;
this->field_0x7c.HALF.HI = 0xAA;
SoundReq(SFX_12D);
@@ -1117,8 +1117,8 @@ void sub_08048004(Entity* this) {
if (this->field_0x7c.BYTES.byte0 & 1) {
u32 b = this->spriteRendering.b3;
if (b == 3) {
s32 posX = ((gPlayerEntity.x.HALF.HI - gRoomControls.roomOriginX) >> 3);
s32 posY = ((gPlayerEntity.y.HALF.HI - gRoomControls.roomOriginY) >> 3);
s32 posX = ((gPlayerEntity.x.HALF.HI - gRoomControls.origin_x) >> 3);
s32 posY = ((gPlayerEntity.y.HALF.HI - gRoomControls.origin_y) >> 3);
u16* tmp = (u16*)&gUnk_02019EE0;
if (tmp[(posY << 7) + posX]) {
if (!(this->field_0x7c.BYTES.byte0 & 2)) {
@@ -1169,6 +1169,6 @@ const u16 gUnk_080D1C60[8] = { 0x200, 0x150, 0x290, 0x210, 0x200, 0x2D0, 0x170,
void sub_08048178(Entity* this, u32 unk1) {
const u16* tmp =
((((Entity*)this->myHeap)->next->animationState >> 6 & 1) ? gUnk_080D1C60 + unk1 : gUnk_080D1C50 + unk1);
this->field_0x80.HWORD = *tmp + gRoomControls.roomOriginX;
this->field_0x82.HWORD = *(tmp + 1) + gRoomControls.roomOriginY;
this->field_0x80.HWORD = *tmp + gRoomControls.origin_x;
this->field_0x82.HWORD = *(tmp + 1) + gRoomControls.origin_y;
}
+4 -4
View File
@@ -196,7 +196,7 @@ void sub_0803A274(Entity* this) {
this->spriteSettings.flipX = 1;
PositionRelative(this->parent, this, -0x100000, 0x200000);
}
if (gScreenTransition.field_0x38 != 0) {
if (gRoomTransition.field_0x38 != 0) {
this->action = 3;
COLLISION_ON(this);
this->spriteSettings.draw = 1;
@@ -1210,8 +1210,8 @@ void sub_0803B724(Entity* param_1) {
pEVar1->type2 = 1;
random_value = Random();
temp = gUnk_080CFD1B[param_1->type];
pEVar1->x.HALF.HI = (random_value & 0x70) + temp + gRoomControls.roomOriginX;
pEVar1->y.HALF.HI = ((random_value >> 0x10) & 7) * 10 + 0x5c + gRoomControls.roomOriginY;
pEVar1->x.HALF.HI = (random_value & 0x70) + temp + gRoomControls.origin_x;
pEVar1->y.HALF.HI = ((random_value >> 0x10) & 7) * 10 + 0x5c + gRoomControls.origin_y;
pEVar1->parent = param_1;
ResolveCollisionLayer(pEVar1);
param_1->field_0xf++;
@@ -1282,7 +1282,7 @@ void sub_0803B8F8(Entity* this) {
}
void sub_0803B910(Entity* this) {
if (gScreenTransition.field_0x38 != 0) {
if (gRoomTransition.field_0x38 != 0) {
this->action = 2;
this->spriteSettings.draw = 1;
*(u8*)&this->field_0x74 = 0;
+12 -12
View File
@@ -119,7 +119,7 @@ void sub_08033F3C(Entity* this) {
Entity* pEVar2;
if (gEntCount < 0x43) {
if (gScreenTransition.field_0x38 != 0) {
if (gRoomTransition.field_0x38 != 0) {
sub_08034420(this);
this->field_0x80.HALF.HI = 1;
} else {
@@ -133,7 +133,7 @@ void sub_08033F3C(Entity* this) {
pEVar1->parent = this;
pEVar2 = CreateObject(OBJECT_7E, 0, 0);
pEVar2->parent = this;
if (gScreenTransition.field_0x39 == 0) {
if (gRoomTransition.field_0x39 == 0) {
this->action = 0xd;
this->subAction = 0;
this->actionDelay = 0xfc;
@@ -215,7 +215,7 @@ void sub_08033FFC(Entity* this) {
break;
default:
if (((*(Entity**)&this->field_0x74)->flags & 0x80) != 0) {
gRoomControls.cameraTarget = &gPlayerEntity;
gRoomControls.camera_target = &gPlayerEntity;
sub_08034420(this);
gPlayerState.controlMode = 1;
ResetPlayerAnimationAndAction();
@@ -227,8 +227,8 @@ void sub_08033FFC(Entity* this) {
void sub_0803414C(Entity* this) {
u32 x, y;
x = gRoomControls.roomOriginX + 0xb8;
y = gRoomControls.roomOriginY + 0x48;
x = gRoomControls.origin_x + 0xb8;
y = gRoomControls.origin_y + 0x48;
if (this->x.HALF.HI - x + 1 < 3 && this->y.HALF.HI - y + 1 < 3) {
if (sub_080349D8(this)) {
@@ -377,10 +377,10 @@ void sub_0803442C(Entity* this, u32 unk) {
void sub_0803443C(Entity* this) {
this->field_0x7c.BYTES.byte1 = 0;
if (gScreenTransition.field_0x39 < 0x1f) {
if (gRoomTransition.field_0x39 < 0x1f) {
sub_080344BC(this);
} else {
if (gScreenTransition.field_0x39 < 0x3d) {
if (gRoomTransition.field_0x39 < 0x3d) {
sub_08034498(this);
} else {
sub_08034474(this);
@@ -544,7 +544,7 @@ NONMATCH("asm/non_matching/mazaal/sub_0803473C.inc", void sub_0803473C(Entity* t
}
playerX = gPlayerEntity.x.HALF.HI + 0x60;
}
roomX = gRoomControls.roomOriginX;
roomX = gRoomControls.origin_x;
if (playerX - 4 > this->x.HALF.HI) {
if (roomX + 0xe0 < this->x.HALF.HI) {
return;
@@ -567,7 +567,7 @@ END_NONMATCH
NONMATCH("asm/non_matching/mazaal/sub_080347B4.inc", void sub_080347B4(Entity* this)) {
u32 direction;
u32 playerX = gPlayerEntity.x.HALF.HI;
u32 roomX = gRoomControls.roomOriginX;
u32 roomX = gRoomControls.origin_x;
if (playerX - 4 > this->x.HALF.HI) {
if (roomX + 0xe0 < this->x.HALF.HI) {
return;
@@ -810,9 +810,9 @@ void sub_08034BC8(Entity* this) {
void sub_08034C00(Entity* this) {
if (((gPlayerState.flags & PL_MINISH) != 0) &&
CheckPlayerInRegion(this->x.HALF.HI - gRoomControls.roomOriginX,
this->y.HALF.HI - gRoomControls.roomOriginY + 0xd, 3, 3) != 0) {
if (gScreenTransition.field_0x39 >= 0x3d) {
CheckPlayerInRegion(this->x.HALF.HI - gRoomControls.origin_x,
this->y.HALF.HI - gRoomControls.origin_y + 0xd, 3, 3) != 0) {
if (gRoomTransition.field_0x39 >= 0x3d) {
DoExitTransition((ScreenTransitionData*)&gUnk_080CED88);
} else {
DoExitTransition((ScreenTransitionData*)&gUnk_080CED9C);
+16 -16
View File
@@ -94,8 +94,8 @@ void sub_08034D4C(Entity* this) {
if (--this->field_0x78.HWORD == 0) {
if ((this->field_0xf < 8) && (entity = CreateEnemy(VAATI_PROJECTILE, 0), entity != (Entity*)0x0)) {
entity->direction = (s32)Random() % 5 + 0xc;
entity->x.HALF.HI = (gRoomControls.width / 2) + gRoomControls.roomOriginX;
entity->y.HALF.HI = gRoomControls.roomOriginY + 8;
entity->x.HALF.HI = (gRoomControls.width / 2) + gRoomControls.origin_x;
entity->y.HALF.HI = gRoomControls.origin_y + 8;
entity->collisionLayer = 3;
entity->parent = this;
UpdateSpriteForCollisionLayer(entity);
@@ -108,7 +108,7 @@ void sub_08034D4C(Entity* this) {
}
void sub_08034DC8(Entity* this) {
if (gScreenTransition.field_0x39 == 0) {
if (gRoomTransition.field_0x39 == 0) {
CreateFx(this, FX_GIANT_EXPLOSION4, 0);
sub_0807BA8C(COORD_TO_TILE(this), this->collisionLayer);
DeleteThisEntity();
@@ -136,7 +136,7 @@ void sub_08034E68(Entity* this) {
this->spriteSettings.draw = 0;
sub_08035120(this);
}
if (gScreenTransition.field_0x39 == 0) {
if (gRoomTransition.field_0x39 == 0) {
if (sub_08079F8C() != 0) {
this->action = 3;
scriptExecutionContext = StartCutscene(this, (u16*)script_MazaalMacroDefeated);
@@ -167,8 +167,8 @@ void sub_08034EE4(Entity* this) {
randomValue = Random();
entity = CreateFx(this, gUnk_080CEEC8[randomValue & 3], 0);
if (entity != NULL) {
entity->x.HALF.HI = (((randomValue >> 2) & 0x77) << 1) + 1 + gRoomControls.roomScrollX;
entity->y.HALF.HI = ((randomValue >> 9) & 0x7e) + 1 + gRoomControls.roomScrollY;
entity->x.HALF.HI = (((randomValue >> 2) & 0x77) << 1) + 1 + gRoomControls.scroll_x;
entity->y.HALF.HI = ((randomValue >> 9) & 0x7e) + 1 + gRoomControls.scroll_y;
entity->collisionLayer = 2;
UpdateSpriteForCollisionLayer(entity);
}
@@ -182,10 +182,10 @@ void sub_08034F58(Entity* this) {
}
void sub_08034F70(Entity* this) {
this->health = gScreenTransition.field_0x39;
if (gScreenTransition.field_0x39 >= 0x3d) {
this->health = gRoomTransition.field_0x39;
if (gRoomTransition.field_0x39 >= 0x3d) {
this->type2 = 0;
} else if (gScreenTransition.field_0x39 >= 0x1f) {
} else if (gRoomTransition.field_0x39 >= 0x1f) {
this->type2 = 1;
} else {
this->type2 = 2;
@@ -200,14 +200,14 @@ void sub_08034FA0(Entity* this) {
switch (this->type2) {
case 0:
if (this->health < 0x3c) {
gScreenTransition.field_0x39 = 0x3c;
gRoomTransition.field_0x39 = 0x3c;
sub_08035050(this);
return;
}
break;
case 1:
if (this->health < 0x1e) {
gScreenTransition.field_0x39 = 0x1e;
gRoomTransition.field_0x39 = 0x1e;
sub_08035050(this);
return;
}
@@ -218,7 +218,7 @@ void sub_08034FA0(Entity* this) {
}
break;
}
gScreenTransition.field_0x39 = this->health;
gRoomTransition.field_0x39 = this->health;
}
void sub_08035050(Entity* this) {
@@ -247,16 +247,16 @@ u32 sub_08035084(Entity* this) {
}
do {
vulnPillar = (s32)Random() % 6;
} while (vulnPillar == gScreenTransition.field_0x38 >> 4);
gScreenTransition.field_0x38 = (gScreenTransition.field_0x38 & 0xf) | (vulnPillar << 4);
} while (vulnPillar == gRoomTransition.field_0x38 >> 4);
gRoomTransition.field_0x38 = (gRoomTransition.field_0x38 & 0xf) | (vulnPillar << 4);
for (i = 0, coords = gUnk_080CEECC; i < 6; i++, coords += 2) {
if (i == vulnPillar) {
entity = this;
} else {
entity = CreateEnemy(MAZAAL_MACRO, 1);
}
entity->x.HALF.HI = gRoomControls.roomOriginX + *coords;
entity->y.HALF.HI = gRoomControls.roomOriginY + *(coords + 1);
entity->x.HALF.HI = gRoomControls.origin_x + *coords;
entity->y.HALF.HI = gRoomControls.origin_y + *(coords + 1);
entity->collisionLayer = 1;
UpdateSpriteForCollisionLayer(entity);
}
+1 -1
View File
@@ -217,7 +217,7 @@ void sub_08023398(Entity* this) {
this->field_0x7c.BYTES.byte0--;
}
if ((gScreenTransition.frameCount & 7) == 0) {
if ((gRoomTransition.frameCount & 7) == 0) {
u32 uVar4;
sub_08004596(this, sub_08049F84(this, 1));
+24 -24
View File
@@ -167,7 +167,7 @@ Hit SubActions
void OctorokBoss_Hit(Entity* this) {
if (GET_BOSS_PHASE(this) == 0) {
if (this->subAction != 3) {
gRoomControls.cameraTarget = GET_HELPER(this)->tailObjects[0];
gRoomControls.camera_target = GET_HELPER(this)->tailObjects[0];
GET_HELPER(this)->field_0x7 = 0x5a;
sub_08078B48();
}
@@ -219,17 +219,17 @@ void OctorokBoss_Hit_SubAction1(Entity* this) {
GET_HELPER(this)->tailObjects[0]->field_0x7c.BYTES.byte1--;
}
// Move to the center of the screen before freezing
diffX = 0x108 + gRoomControls.roomOriginX - this->x.HALF.HI + 0x4;
diffY = gRoomControls.roomOriginY - this->y.HALF.HI + 0x8c;
diffX = 0x108 + gRoomControls.origin_x - this->x.HALF.HI + 0x4;
diffY = gRoomControls.origin_y - this->y.HALF.HI + 0x8c;
if (diffX > 8 || diffY > 8) {
GET_HELPER(this)->field_0x2 = 1;
#if defined(JP) || defined(DEMO_JP) || defined(EU)
this->direction = ((s32)sub_080045DA((((gRoomControls.roomOriginX + 0x108) << 0x10) - this->x.WORD),
(((gRoomControls.roomOriginY + 0x88) << 0x10) - this->y.WORD))) >>
this->direction = ((s32)sub_080045DA((((gRoomControls.origin_x + 0x108) << 0x10) - this->x.WORD),
(((gRoomControls.origin_y + 0x88) << 0x10) - this->y.WORD))) >>
3;
#else
this->direction = ((s32)sub_080045DA(gRoomControls.roomOriginX + 0x108 - this->x.HALF.HI,
gRoomControls.roomOriginY + 0x88 - this->y.HALF.HI)) >>
this->direction = ((s32)sub_080045DA(gRoomControls.origin_x + 0x108 - this->x.HALF.HI,
gRoomControls.origin_y + 0x88 - this->y.HALF.HI)) >>
3;
#endif
this->speed = 0x100;
@@ -253,7 +253,7 @@ void OctorokBoss_Hit_SubAction1(Entity* this) {
Entity* tail = GET_HELPER(this)->tailObjects[i - 1];
tail->spriteSettings.draw |= 1;
}
if ((gScreenTransition.frameCount & 2) != 0) {
if ((gRoomTransition.frameCount & 2) != 0) {
CreateObjectWithParent(this, OCTOROK_BOSS_OBJECT, 6, 0);
}
GET_TIMER(this)--;
@@ -285,7 +285,7 @@ void OctorokBoss_Hit_SubAction2(Entity* this) {
} else {
this->subAction = 3;
GET_TIMER(this) = 0x96;
gRoomControls.cameraTarget = &gPlayerEntity;
gRoomControls.camera_target = &gPlayerEntity;
}
}
@@ -305,7 +305,7 @@ void OctorokBoss_Hit_SubAction4(Entity* this) {
this->subAction = 5;
object = CreateObjectWithParent(this, OCTOROK_BOSS_OBJECT, 9, 0);
if (object != NULL) {
gRoomControls.cameraTarget = object;
gRoomControls.camera_target = object;
}
}
@@ -340,7 +340,7 @@ void OctorokBoss_Hit_SubAction6(Entity* this) {
tmp = FixedDiv(tmp, 0x100);
this->spriteOffsetY = -((tmp << 0x10) >> 8) >> 0x10;
if (GET_TIMER(this) == 0) {
if ((gScreenTransition.frameCount & 0xfU) == 0) {
if ((gRoomTransition.frameCount & 0xfU) == 0) {
// Explosion in the center
CreateFx(this, FX_GIANT_EXPLOSION3, 0);
// Explosion at the front right leg
@@ -448,7 +448,7 @@ ASM_FUNC("asm/non_matching/octorokBoss/OctorokBoss_Init.inc", void OctorokBoss_I
gPlayerEntity.spriteSettings.draw = 0;
gPlayerEntity.x.HALF.HI = this->x.HALF.HI;
gPlayerEntity.y.HALF.HI = this->y.HALF.HI - 0xa0;
gRoomControls.cameraTarget = this;
gRoomControls.camera_target = this;
break;
case LEG_BR:
@@ -533,7 +533,7 @@ void OctorokBoss_Intro_SubAction2(Entity* this) {
this->subAction = 3;
GET_TIMER(this) = 0x3c;
gPlayerEntity.spriteSettings.draw |= 1;
gRoomControls.cameraTarget = &gPlayerEntity;
gRoomControls.camera_target = &gPlayerEntity;
gRoomControls.unk5 = 1;
}
}
@@ -714,7 +714,7 @@ void OctorokBoss_Action1(Entity* this) {
sub_08036F60(this);
if (GET_HELPER(this)->fallingStonesTimer != 0) {
GET_HELPER(this)->fallingStonesTimer--;
if ((gScreenTransition.frameCount & 3) == 0) {
if ((gRoomTransition.frameCount & 3) == 0) {
// Falling stones
CreateProjectileWithParent(this, OCTOROK_BOSS_PROJECTILE, 3);
}
@@ -892,7 +892,7 @@ void OctorokBoss_Action1_Attack_Type2_2(Entity* this) {
}
void OctorokBoss_Action1_Attack_Type2_3(Entity* this) {
if ((gScreenTransition.frameCount & 2) != 0) {
if ((gRoomTransition.frameCount & 2) != 0) {
GET_HELPER(this)->mouthObject->field_0x76.HWORD -= 8;
} else {
GET_HELPER(this)->mouthObject->field_0x76.HWORD += 8;
@@ -938,8 +938,8 @@ void OctorokBoss_ExecuteAttackVacuum(Entity* this) {
this->field_0x80.HALF.LO = 1;
GET_TIMER(this) = 2;
GET_HELPER(this)->targetAngle =
sub_080045DA((gRoomControls.roomOriginX + 0x108) * 0x10000 - this->x.WORD,
(gRoomControls.roomOriginY + 0x88) * 0x10000 - this->y.WORD);
sub_080045DA((gRoomControls.origin_x + 0x108) * 0x10000 - this->x.WORD,
(gRoomControls.origin_y + 0x88) * 0x10000 - this->y.WORD);
GET_HELPER(this)->targetAngle = (u8) - (GET_HELPER(this)->targetAngle + 0x80);
SoundReq(SFX_ED);
}
@@ -949,7 +949,7 @@ void OctorokBoss_ExecuteAttackVacuum(Entity* this) {
}
}
}
if ((gScreenTransition.frameCount & 3) == 0) {
if ((gRoomTransition.frameCount & 3) == 0) {
CreateObjectWithParent(this, OCTOROK_BOSS_OBJECT, 2, 0);
}
} else {
@@ -1012,8 +1012,8 @@ void OctorokBoss_ExecuteAttackSmoke(Entity* this) {
} else {
GET_TIMER(this)++;
ChangeLightLevel(-1);
if ((gScreenTransition.frameCount & 3) == 0) {
if ((gScreenTransition.frameCount & 7) == 0) {
if ((gRoomTransition.frameCount & 3) == 0) {
if ((gRoomTransition.frameCount & 7) == 0) {
SoundReq(SFX_124);
}
CreateObjectWithParent(this, OCTOROK_BOSS_OBJECT, 3, 0);
@@ -1027,7 +1027,7 @@ void OctorokBoss_ExecuteAttackFreeze(Entity* this) {
OctorokBoss_SetAttackTimer(this);
} else {
GET_TIMER(this)--;
if ((gScreenTransition.frameCount & 3) == 0) {
if ((gRoomTransition.frameCount & 3) == 0) {
this->child = CreateProjectileWithParent(this, OCTOROK_BOSS_PROJECTILE, 2);
if (this->child != NULL) {
this->child->parent = this;
@@ -1041,7 +1041,7 @@ void OctorokBoss_Burning(Entity* this) {
OctorokBoss_Burning_SubActions[this->subAction](this);
if (GET_HELPER(this)->fallingStonesTimer != 0) {
GET_HELPER(this)->fallingStonesTimer--;
if ((gScreenTransition.frameCount & 7) == 0) {
if ((gRoomTransition.frameCount & 7) == 0) {
// Falling stones
CreateProjectileWithParent(this, OCTOROK_BOSS_PROJECTILE, 3);
}
@@ -1083,7 +1083,7 @@ void OctorokBoss_Burning_SubAction1(Entity* this) {
if (GET_TIMER(this)-- == 0) {
this->health = 0;
}
if ((gScreenTransition.frameCount & 0x1f) == 0) {
if ((gRoomTransition.frameCount & 0x1f) == 0) {
SoundReq(SFX_159);
}
}
@@ -1410,7 +1410,7 @@ void sub_08036F60(Entity* this) {
}
void OctorokBoss_StepSound(Entity* this, u32 frameMask) {
if ((gScreenTransition.frameCount & frameMask) == 0) {
if ((gRoomTransition.frameCount & frameMask) == 0) {
if (IS_FROZEN(this) == FALSE) {
SoundReq(SFX_163);
} else {
+1 -1
View File
@@ -195,7 +195,7 @@ void Peahat_ChargeTarget(Entity* this) {
if (this->actionDelay & 1)
this->speed += 4;
if ((gScreenTransition.frameCount & 3) == 0)
if ((gRoomTransition.frameCount & 3) == 0)
sub_08004596(this, GetFacingDirection(this, gUnk_020000B0));
}
sub_080AEFE0(this);
+12 -12
View File
@@ -386,8 +386,8 @@ void sub_080256B4(Entity* this) {
bool32 sub_0802571C(Entity* this) {
RoomControls* ctrl = &gRoomControls;
u16 xDiff = (this->x.HALF.HI - ctrl->roomOriginX + 8) & -0x10;
u16 yDiff = (this->y.HALF.HI - ctrl->roomOriginY + 8) & -0x10;
u16 xDiff = (this->x.HALF.HI - ctrl->origin_x + 8) & -0x10;
u16 yDiff = (this->y.HALF.HI - ctrl->origin_y + 8) & -0x10;
u16 unk = this->field_0x7a.HALF.LO;
u16 i;
@@ -396,8 +396,8 @@ bool32 sub_0802571C(Entity* this) {
u16 sVar4 = yDiff + gUnk_080CC020[unk + 1];
if (sub_080257EC(this, sVar3, sVar4)) {
this->field_0x7c.HALF.LO = sVar3 + ctrl->roomOriginX;
this->field_0x7c.HALF.HI = sVar4 + ctrl->roomOriginY;
this->field_0x7c.HALF.LO = sVar3 + ctrl->origin_x;
this->field_0x7c.HALF.HI = sVar4 + ctrl->origin_y;
return TRUE;
}
@@ -472,8 +472,8 @@ NONMATCH("asm/non_matching/puffstool/sub_0802594C.inc", bool32 sub_0802594C(Enti
const s8* unk = gUnk_080CC090[param_2];
u32 uVar1 = this->collisionLayer;
RoomControls* ctrl = &gRoomControls;
xDiff = (this->x.HALF.HI - ctrl->roomOriginX + 8) & -0x10;
yDiff = (this->y.HALF.HI - ctrl->roomOriginY + 8) & -0x10;
xDiff = (this->x.HALF.HI - ctrl->origin_x + 8) & -0x10;
yDiff = (this->y.HALF.HI - ctrl->origin_y + 8) & -0x10;
do {
s16 iVar9 = xDiff + unk[0];
s16 iVar11 = yDiff + unk[1];
@@ -482,8 +482,8 @@ NONMATCH("asm/non_matching/puffstool/sub_0802594C.inc", bool32 sub_0802594C(Enti
u8 bVar6 = sub_080002D4(iVar9 - 0x00, iVar11 - 0x10, uVar1);
u8 bVar7 = sub_080002D4(iVar9 - 0x10, iVar11 - 0x10, uVar1);
if ((bVar6 | bVar4 | bVar5 | bVar7) == 0) {
this->field_0x7c.HALF.LO = ctrl->roomOriginX + iVar9;
this->field_0x7c.HALF.HI = ctrl->roomOriginY + iVar11;
this->field_0x7c.HALF.LO = ctrl->origin_x + iVar9;
this->field_0x7c.HALF.HI = ctrl->origin_y + iVar11;
return TRUE;
}
unk += 2;
@@ -495,8 +495,8 @@ END_NONMATCH
void sub_08025A54(Entity* this) {
u32 layer = this->collisionLayer;
s16 x = this->x.HALF.HI - gRoomControls.roomOriginX;
s16 y = this->y.HALF.HI - gRoomControls.roomOriginY;
s16 x = this->x.HALF.HI - gRoomControls.origin_x;
s16 y = this->y.HALF.HI - gRoomControls.origin_y;
const s8* offset = gUnk_080CC0A0;
u32 i = 0;
@@ -535,8 +535,8 @@ void sub_08025AE8(Entity* this) {
void sub_08025B18(Entity* this) {
Entity* ent;
s32 x = this->x.HALF.HI - gRoomControls.roomOriginX;
s32 y = this->y.HALF.HI - gRoomControls.roomOriginY;
s32 x = this->x.HALF.HI - gRoomControls.origin_x;
s32 y = this->y.HALF.HI - gRoomControls.origin_y;
u32 layer = this->collisionLayer;
const s8* offset = gUnk_080CC0A8;
+2 -2
View File
@@ -127,10 +127,10 @@ void sub_08045178(Entity* this, Entity* child, int h, int v) {
return;
x = child->x.HALF.HI + h;
if (0 <= x && x < (gRoomControls.roomOriginX + gRoomControls.width))
if (0 <= x && x < (gRoomControls.origin_x + gRoomControls.width))
child->x.HALF.HI = x;
y = child->y.HALF.HI + v;
if (0 <= y && y < (gRoomControls.roomOriginY + gRoomControls.height))
if (0 <= y && y < (gRoomControls.origin_y + gRoomControls.height))
child->y.HALF.HI = y;
}
+46 -46
View File
@@ -189,11 +189,11 @@ void sub_080425B4(Entity* this) {
if (sub_080437DC(this)) {
this->field_0x7c.BYTES.byte0 = 0;
this->field_0x7c.BYTES.byte1 = 0;
if ((gScreenTransition.field_0x38 & 1) != 0) {
if (gScreenTransition.field_0x3c == this->type2) {
if ((gRoomTransition.field_0x38 & 1) != 0) {
if (gRoomTransition.field_0x3c == this->type2) {
sub_08043EB8(this);
sub_08043ABC(this);
if ((gScreenTransition.field_0x39 >> (this->type2 + 2) & 1U) != 0) {
if ((gRoomTransition.field_0x39 >> (this->type2 + 2) & 1U) != 0) {
this->action = 7;
this->subAction = 4;
} else {
@@ -207,7 +207,7 @@ void sub_080425B4(Entity* this) {
}
} else {
this->action = 1;
this->subAction = gScreenTransition.field_0x38 & 1;
this->subAction = gRoomTransition.field_0x38 & 1;
((VaatiArm_HeapStruct*)this->myHeap)->s1[0].unk08 = gUnk_080D1280[this->type2];
sub_08042654(this);
}
@@ -528,28 +528,28 @@ void sub_08042C34(Entity* this) {
temp = &gUnk_080D12F8[random];
x = gPlayerEntity.x.HALF.HI + *temp;
y = gPlayerEntity.y.HALF.HI + *(temp + 1);
if ((gRoomControls.roomOriginX + 0x20) > x) {
x = gRoomControls.roomOriginX + 0x20;
if ((gRoomControls.origin_x + 0x20) > x) {
x = gRoomControls.origin_x + 0x20;
}
if (gRoomControls.roomOriginX + gRoomControls.width + -0x20 < x) {
x = gRoomControls.roomOriginX + gRoomControls.width + -0x20;
if (gRoomControls.origin_x + gRoomControls.width + -0x20 < x) {
x = gRoomControls.origin_x + gRoomControls.width + -0x20;
}
if ((gRoomControls.roomOriginY + 0x20) > y) {
y = gRoomControls.roomOriginY + 0x20;
if ((gRoomControls.origin_y + 0x20) > y) {
y = gRoomControls.origin_y + 0x20;
}
#if defined EU || defined JP || defined DEMO_JP
if (gRoomControls.roomOriginY + gRoomControls.height + -0x20 < y) {
y = gRoomControls.roomOriginY + gRoomControls.height + -0x20;
if (gRoomControls.origin_y + gRoomControls.height + -0x20 < y) {
y = gRoomControls.origin_y + gRoomControls.height + -0x20;
}
#else
if (gRoomControls.roomOriginY + gRoomControls.height + -0x40 < y) {
y = gRoomControls.roomOriginY + gRoomControls.height + -0x40;
if (gRoomControls.origin_y + gRoomControls.height + -0x40 < y) {
y = gRoomControls.origin_y + gRoomControls.height + -0x40;
}
#endif
if (((u32)((x - gRoomControls.roomOriginX) - 0x90) < 0x41) &&
((u32)((y - gRoomControls.roomOriginY) - 8) < 0x41)) {
x = gRoomControls.roomOriginX + 0xb0;
y = gRoomControls.roomOriginY + 0x40;
if (((u32)((x - gRoomControls.origin_x) - 0x90) < 0x41) &&
((u32)((y - gRoomControls.origin_y) - 8) < 0x41)) {
x = gRoomControls.origin_x + 0xb0;
y = gRoomControls.origin_y + 0x40;
}
for (i = 0; i < 4; i++) {
entity = ((VaatiArm_HeapStruct*)this->myHeap)->entities[i];
@@ -636,8 +636,8 @@ void sub_08042E30(Entity* this) {
this->actionDelay = (Random() & 0x38) + 0x28;
this->speed = 0x200;
this->direction = pVVar9->unk00.HALF.HI >> 3;
uVar6 = sub_080045D4(this->x.HALF.HI, this->y.HALF.HI, gRoomControls.roomOriginX + 0x110,
gRoomControls.roomOriginY + 0x60);
uVar6 = sub_080045D4(this->x.HALF.HI, this->y.HALF.HI, gRoomControls.origin_x + 0x110,
gRoomControls.origin_y + 0x60);
this->field_0x78.HALF.HI = (gUnk_080D1304[Random() & 7] + uVar6) & 0x1f;
}
pVVar9->unk00.HWORD += pVVar9->unk08;
@@ -1079,15 +1079,15 @@ NONMATCH("asm/non_matching/vaati/sub_08043770.inc", void sub_08043770(Entity* th
if (--this->actionDelay == 0) {
entity = ((VaatiArm_HeapStruct*)this->myHeap)->parent;
if ((gScreenTransition.field_0x39 & 0xc) == 0) {
if ((gRoomTransition.field_0x39 & 0xc) == 0) {
entity->subAction = 2;
}
if (this->type2 == 0) {
((VaatiArm_HeapStruct*)this->myHeap)->parent = NULL;
gScreenTransition.field_0x39 &= 0xfe;
gRoomTransition.field_0x39 &= 0xfe;
} else {
*(u32*)((VaatiArm_HeapStruct*)this->myHeap)->s1 = 0;
gScreenTransition.field_0x39 &= 0xfd;
gRoomTransition.field_0x39 &= 0xfd;
}
((VaatiArm_HeapStruct*)this->myHeap)->entities[4]->myHeap = NULL;
((VaatiArm_HeapStruct*)this->myHeap)->entities[4]->health = 0;
@@ -1291,7 +1291,7 @@ u32 sub_08043C98(Entity* this) {
Entity* e2 = ((VaatiArm_HeapStruct*)this->myHeap)->entities[3];
if ((e1->bitfield == 0x9d) || (e2->bitfield == 0x9d)) {
sub_08043D08(this);
gScreenTransition.field_0x38 |= 2;
gRoomTransition.field_0x38 |= 2;
return 1;
} else {
return 0;
@@ -1345,33 +1345,33 @@ void sub_08043DB0(Entity* this) {
if (((gPlayerState.flags & PL_MINISH) != 0)) {
pEVar3 = ((VaatiArm_HeapStruct*)this->myHeap)->entities[3];
if (CheckPlayerInRegion(pEVar3->x.HALF.HI - gRoomControls.roomOriginX,
pEVar3->y.HALF.HI - gRoomControls.roomOriginY + 2, 3, 3)) {
if (CheckPlayerInRegion(pEVar3->x.HALF.HI - gRoomControls.origin_x,
pEVar3->y.HALF.HI - gRoomControls.origin_y + 2, 3, 3)) {
DoExitTransition((ScreenTransitionData*)&gUnk_080D13EC);
if ((gScreenTransition.field_0x39 & 3) != 3) {
gScreenTransition.player_status.room_next = 1;
if ((gRoomTransition.field_0x39 & 3) != 3) {
gRoomTransition.player_status.room_next = 1;
}
cVar1 = this->field_0x7a.HWORD;
gScreenTransition.field_0x3d = 0x1e - (cVar1 / 0x3c);
gScreenTransition.field_0x3c = this->type2;
gRoomTransition.field_0x3d = 0x1e - (cVar1 / 0x3c);
gRoomTransition.field_0x3c = this->type2;
pEVar2 = ((VaatiArm_HeapStruct*)this->myHeap)->parent;
gScreenTransition.hurtType = pEVar2->x.HALF.HI;
gScreenTransition.field_0x42 = pEVar2->y.HALF.HI;
gRoomTransition.hurtType = pEVar2->x.HALF.HI;
gRoomTransition.field_0x42 = pEVar2->y.HALF.HI;
pEVar4 = ((VaatiArm_HeapStruct*)pEVar2->myHeap)->parent;
if (pEVar4 != NULL) {
gScreenTransition.field_0x44 = pEVar4->x.HALF.HI;
gScreenTransition.field_0x46 = pEVar4->y.HALF.HI;
gRoomTransition.field_0x44 = pEVar4->x.HALF.HI;
gRoomTransition.field_0x46 = pEVar4->y.HALF.HI;
} else {
gScreenTransition.field_0x44 = gRoomControls.roomOriginX + 0x110;
gScreenTransition.field_0x46 = gRoomControls.roomOriginY + 0x60;
gRoomTransition.field_0x44 = gRoomControls.origin_x + 0x110;
gRoomTransition.field_0x46 = gRoomControls.origin_y + 0x60;
}
pEVar4 = (Entity*)(*(int*)((VaatiArm_HeapStruct*)pEVar2->myHeap)->s1);
if (pEVar4 != NULL) {
gScreenTransition.field_0x48 = pEVar4->x.HALF.HI;
gScreenTransition.field_0x4a = pEVar4->y.HALF.HI;
gRoomTransition.field_0x48 = pEVar4->x.HALF.HI;
gRoomTransition.field_0x4a = pEVar4->y.HALF.HI;
} else {
gScreenTransition.field_0x48 = gRoomControls.roomOriginX + 0x110;
gScreenTransition.field_0x4a = gRoomControls.roomOriginY + 0x60;
gRoomTransition.field_0x48 = gRoomControls.origin_x + 0x110;
gRoomTransition.field_0x4a = gRoomControls.origin_y + 0x60;
}
}
}
@@ -1399,8 +1399,8 @@ void sub_08043EB8(Entity* this) {
pEVar4->flags = pEVar4->flags | 0x80;
pEVar4->spriteSettings.draw = 1;
pEVar4->spritePriority.b0 = 4;
pEVar4->x.HALF.HI = (this->type2 == 0) ? gScreenTransition.field_0x44 : gScreenTransition.field_0x48;
pEVar4->y.HALF.HI = (this->type2 == 0) ? gScreenTransition.field_0x46 : gScreenTransition.field_0x4a;
pEVar4->x.HALF.HI = (this->type2 == 0) ? gRoomTransition.field_0x44 : gRoomTransition.field_0x48;
pEVar4->y.HALF.HI = (this->type2 == 0) ? gRoomTransition.field_0x46 : gRoomTransition.field_0x4a;
pEVar4->z.HALF.HI = 0;
pEVar4->field_0x3c = pEVar4->field_0x3c & 0xef;
pEVar4->hitType = 0x3a;
@@ -1442,8 +1442,8 @@ void sub_08044078(Entity* this) {
if (this->action == 0) {
this->action = 1;
if (this->type != 3 ||
!(((gScreenTransition.field_0x38 & 1) == 0 ||
(((VaatiArm_HeapStruct*)this->myHeap)->entities[0]->type2 != gScreenTransition.field_0x3c)))) {
!(((gRoomTransition.field_0x38 & 1) == 0 ||
(((VaatiArm_HeapStruct*)this->myHeap)->entities[0]->type2 != gRoomTransition.field_0x3c)))) {
InitializeAnimation(this, 0x12);
} else {
InitializeAnimation(this, 0x11);
@@ -1455,8 +1455,8 @@ void sub_08044078(Entity* this) {
void sub_080440CC(Entity* this) {
if (this->action == 0) {
this->action = 1;
if ((gScreenTransition.field_0x38 & 1) != 0 &&
((VaatiArm_HeapStruct*)this->myHeap)->entities[0]->type2 == gScreenTransition.field_0x3c) {
if ((gRoomTransition.field_0x38 & 1) != 0 &&
((VaatiArm_HeapStruct*)this->myHeap)->entities[0]->type2 == gRoomTransition.field_0x3c) {
InitializeAnimation(this, 0x13);
} else {
InitializeAnimation(this, 0x11);
+7 -7
View File
@@ -58,12 +58,12 @@ void VaatiEyesMacroFunction0(Entity* this) {
void VaatiEyesMacroFunction1(Entity* this) {
if (this->type == 0) {
if (this->health == 0) {
gScreenTransition.field_0x39 &= ~(1 << (gScreenTransition.field_0x3c + 2));
gRoomTransition.field_0x39 &= ~(1 << (gRoomTransition.field_0x3c + 2));
}
if (gRoomControls.roomID == 0) {
gScreenTransition.field_0x3a = this->health;
if (gRoomControls.room == 0) {
gRoomTransition.field_0x3a = this->health;
} else {
gScreenTransition.field_0x3b = this->health;
gRoomTransition.field_0x3b = this->health;
}
if (this->field_0x78.HALF.HI != this->health) {
EnqueueSFX(SFX_17A);
@@ -102,10 +102,10 @@ void VaatiEyesMacroFunction0Type0Action0(Entity* this) {
enemy = CreateEnemy(VAATI_EYES_MACRO, 2);
enemy->parent = this;
this->action = 1;
if (gRoomControls.roomID == 0) {
this->field_0x78.HALF.HI = this->health = gScreenTransition.field_0x3a;
if (gRoomControls.room == 0) {
this->field_0x78.HALF.HI = this->health = gRoomTransition.field_0x3a;
} else {
this->field_0x78.HALF.HI = this->health = gScreenTransition.field_0x3b;
this->field_0x78.HALF.HI = this->health = gRoomTransition.field_0x3b;
}
this->field_0x78.HALF.LO = Random();
sub_0802EFB8(this);
+3 -3
View File
@@ -192,7 +192,7 @@ void VaatiProjectileFunction0Action7(Entity* this) {
sub_0803E444(this);
LinearMoveUpdate(this);
sub_0803E4D8(this);
if ((gRoomControls.roomOriginY + gRoomControls.height + -0x10) <= this->y.HALF.HI) {
if ((gRoomControls.origin_y + gRoomControls.height + -0x10) <= this->y.HALF.HI) {
SetInitializationPriority();
DoExitTransition((ScreenTransitionData*)&gUnk_0813AB94);
}
@@ -239,7 +239,7 @@ void sub_0803E480(Entity* this) {
bool32 sub_0803E4A0(Entity* this) {
#ifdef EU
bool32 ret;
if (gScreenTransition.field_0x39 == 0) {
if (gRoomTransition.field_0x39 == 0) {
return TRUE;
} else {
if (this->parent == NULL) {
@@ -250,7 +250,7 @@ bool32 sub_0803E4A0(Entity* this) {
return ret;
#else
bool32 ret;
if (gScreenTransition.field_0x39 != 0) {
if (gRoomTransition.field_0x39 != 0) {
if (this->parent == NULL) {
return FALSE;
}
+5 -5
View File
@@ -245,8 +245,8 @@ void VaatiRebornEnemyType0Action2(Entity* this) {
tmp = this->field_0x80.HALF.HI;
this->field_0x80.HALF.HI = tmp % 5;
ptr = &gUnk_080D04AC[this->field_0x80.HALF.HI];
this->x.HALF.HI = gRoomControls.roomOriginX + ptr->HALF.x + 0x10;
this->y.HALF.HI = gRoomControls.roomOriginY + ptr->HALF.y + 0x10;
this->x.HALF.HI = gRoomControls.origin_x + ptr->HALF.x + 0x10;
this->y.HALF.HI = gRoomControls.origin_y + ptr->HALF.y + 0x10;
}
this->spriteSettings.draw = 1;
this->actionDelay = 0x20;
@@ -879,15 +879,15 @@ u32 sub_0803E028(Entity* this) {
if (this->field_0x76.HALF.HI != 1) {
return ret;
}
tmp = gRoomControls.roomOriginX + 0x58;
tmp = gRoomControls.origin_x + 0x58;
if (tmp > gPlayerEntity.x.HALF.HI) {
return ret;
}
tmp = gRoomControls.roomOriginY + 0x58;
tmp = gRoomControls.origin_y + 0x58;
if (tmp > gPlayerEntity.x.HALF.HI) {
return ret;
}
tmp = gRoomControls.roomOriginY + 0xf8;
tmp = gRoomControls.origin_y + 0xf8;
if (tmp >= gPlayerEntity.x.HALF.HI) {
this->field_0x80.HALF.HI += 5;
ret = 1;
+8 -8
View File
@@ -856,8 +856,8 @@ void sub_080406A0(Entity* this) {
uVar5 = this->field_0x86.HALF.LO;
{
u32 tmp;
uVar6 = gRoomControls.roomOriginX + gUnk_080D0B58[tmp = uVar5 * 2];
uVar4 = gRoomControls.roomOriginY + gUnk_080D0B58[tmp + 1];
uVar6 = gRoomControls.origin_x + gUnk_080D0B58[tmp = uVar5 * 2];
uVar4 = gRoomControls.origin_y + gUnk_080D0B58[tmp + 1];
}
if (sub_0806FCB8(this, uVar6, uVar4, 0x1c)) {
if (uVar5 != 0) {
@@ -867,8 +867,8 @@ void sub_080406A0(Entity* this) {
}
{
u32 tmp;
uVar6 = gRoomControls.roomOriginX + gUnk_080D0B58[tmp = uVar5 * 2];
uVar4 = gRoomControls.roomOriginY + gUnk_080D0B58[tmp + 1];
uVar6 = gRoomControls.origin_x + gUnk_080D0B58[tmp = uVar5 * 2];
uVar4 = gRoomControls.origin_y + gUnk_080D0B58[tmp + 1];
}
}
uVar3 = sub_080045D4(this->x.HALF.HI, this->y.HALF.HI, uVar6, uVar4);
@@ -891,8 +891,8 @@ void sub_08040770(Entity* this) {
u32 tmp5, tmp6;
{
u32 index;
tmp5 = gRoomControls.roomOriginX + gUnk_080D0B64[index = tmp2 * 2];
tmp6 = gRoomControls.roomOriginY + gUnk_080D0B64[index + 1];
tmp5 = gRoomControls.origin_x + gUnk_080D0B64[index = tmp2 * 2];
tmp6 = gRoomControls.origin_y + gUnk_080D0B64[index + 1];
}
if (sub_0806FCB8(this, tmp5, tmp6, 0x1c)) {
if (this->animationState != 2) {
@@ -954,8 +954,8 @@ void sub_08040770(Entity* this) {
}
{
u32 tmp3;
tmp5 = gRoomControls.roomOriginX + gUnk_080D0B64[tmp3 = tmp2 * 2],
tmp6 = gRoomControls.roomOriginY + gUnk_080D0B64[tmp3 + 1];
tmp5 = gRoomControls.origin_x + gUnk_080D0B64[tmp3 = tmp2 * 2],
tmp6 = gRoomControls.origin_y + gUnk_080D0B64[tmp3 + 1];
}
}
this->direction = sub_080045D4(this->x.HALF.HI, this->y.HALF.HI, tmp5, tmp6);
+21 -21
View File
@@ -117,20 +117,20 @@ void VaatiWrathType0(Entity* this) {
void VaatiWrathType0Action0(Entity* this) {
u32 bVar1;
bVar1 = gScreenTransition.field_0x38 & 1;
bVar1 = gRoomTransition.field_0x38 & 1;
if (bVar1 != 0) {
if (sub_08041FCC(this) == 0) {
return;
}
if ((gScreenTransition.field_0x39 & 0xc) == 0) {
if ((gRoomTransition.field_0x39 & 0xc) == 0) {
this->action = 5;
this->subAction = 1;
} else {
this->action = 2;
this->actionDelay = 0x3c;
}
this->x.HALF.HI = gScreenTransition.hurtType;
this->y.HALF.HI = gScreenTransition.field_0x42;
this->x.HALF.HI = gRoomTransition.hurtType;
this->y.HALF.HI = gRoomTransition.field_0x42;
sub_08042004(this);
} else {
if (sub_08041ED4(this) == 0) {
@@ -141,7 +141,7 @@ void VaatiWrathType0Action0(Entity* this) {
this->actionDelay = 120;
this->spritePriority.b1 = 0;
this->z.HALF.HI = 0xffb0;
gRoomControls.cameraTarget = this;
gRoomControls.camera_target = this;
sub_080809D4();
}
this->spriteSettings.draw = 1;
@@ -209,8 +209,8 @@ void VaatiWrathType0Action1(Entity* this) {
sub_08042004(this);
this->subAction = 6;
this->actionDelay = 0x1e;
gScreenTransition.field_0x38 |= 1;
gRoomControls.cameraTarget = &gPlayerEntity;
gRoomTransition.field_0x38 |= 1;
gRoomControls.camera_target = &gPlayerEntity;
gPlayerState.controlMode = 1;
break;
default:
@@ -243,7 +243,7 @@ void VaatiWrathType0Action3(Entity* this) {
UpdateAnimationSingleFrame(this);
ProcessMovement(this);
roomY = gRoomControls.roomOriginY;
roomY = gRoomControls.origin_y;
bound = roomY + 0x90;
thisY = this->y.HALF.HI;
if ((bound < thisY)) {
@@ -319,12 +319,12 @@ void VaatiWrathType0Action5(Entity* this) {
} else {
if (this->field_0x78.HALF.HI == 0) {
if (this->subAction == 2) {
if ((gScreenTransition.field_0x39 & 3) == 0) {
if ((gRoomTransition.field_0x39 & 3) == 0) {
object = CreateObject(OBJECT_B5, 0, 0);
if (object != NULL) {
object->parent = this;
((VaatiWrathHeapStruct*)this->myHeap)->object5b = object;
gRoomControls.cameraTarget = object;
gRoomControls.camera_target = object;
this->action = 6;
this->actionDelay = 0x1e;
((VaatiWrathHeapStruct*)this->myHeap)->type1->subAction = 1;
@@ -374,9 +374,9 @@ void VaatiWrathType0Action7(Entity* this) {
sub_08042214(this);
sub_08042004(this);
UpdateAnimationSingleFrame(this);
if (gRoomControls.roomOriginY + 0x48 != this->y.HALF.HI) {
if (gRoomControls.origin_y + 0x48 != this->y.HALF.HI) {
this->speed = 0x100;
this->direction = ((gRoomControls.roomOriginY + 0x48) >= this->y.HALF.HI) ? 0x10 : 0;
this->direction = ((gRoomControls.origin_y + 0x48) >= this->y.HALF.HI) ? 0x10 : 0;
LinearMoveUpdate(this);
} else {
if (--this->actionDelay == 0) {
@@ -389,8 +389,8 @@ void VaatiWrathType0Action8(Entity* this) {
sub_08042004(this);
UpdateAnimationSingleFrame(this);
LinearMoveUpdate(this);
if (((gRoomControls.roomOriginX + 0x20) > this->x.HALF.HI) ||
((gRoomControls.roomOriginX + 0x140) < this->x.HALF.HI)) {
if (((gRoomControls.origin_x + 0x20) > this->x.HALF.HI) ||
((gRoomControls.origin_x + 0x140) < this->x.HALF.HI)) {
if (0x3f < this->speed) {
this->direction ^= 0x10;
}
@@ -525,7 +525,7 @@ void VaatiWrathType0ActionC(Entity* this) {
this->actionDelay--;
} else {
LinearMoveUpdate(this);
if (gRoomControls.roomOriginY + 0x48 == this->y.HALF.HI) {
if (gRoomControls.origin_y + 0x48 == this->y.HALF.HI) {
this->subAction = 2;
InitializeAnimation(((VaatiWrathHeapStruct*)this->myHeap)->type1, 0x11);
InitializeAnimation(((VaatiWrathHeapStruct*)this->myHeap)->type2, 0x19);
@@ -583,7 +583,7 @@ void sub_08041BE8(Entity* this) {
DeleteEntity(entity);
((VaatiWrathHeapStruct*)this->myHeap)->object5b = NULL;
gRoomControls.cameraTarget = &gPlayerEntity;
gRoomControls.camera_target = &gPlayerEntity;
#endif
entity = ((VaatiWrathHeapStruct*)this->myHeap)->eyes[0];
entity->myHeap = NULL;
@@ -766,7 +766,7 @@ u32 sub_08041F74(Entity* this, u32 unk1) {
}
heap = ((VaatiWrathHeapStruct*)this->myHeap);
arm = NULL;
if ((gScreenTransition.field_0x39 >> unk1 & 1U) != 0) {
if ((gRoomTransition.field_0x39 >> unk1 & 1U) != 0) {
arm = CreateEnemy(VAATI_ARM, 0);
arm->type2 = unk1;
arm->parent = this;
@@ -830,7 +830,7 @@ u32 sub_0804207C(Entity* this) {
return sub_080045D4(arm->x.HALF.HI, arm->y.HALF.HI, x, y);
} else {
if (gPlayerEntity.y.HALF.HI < 0x40) {
tmp = gRoomControls.roomOriginY + 0x18;
tmp = gRoomControls.origin_y + 0x18;
} else {
tmp = gPlayerEntity.y.HALF.HI - 0x28;
@@ -885,7 +885,7 @@ void sub_080421AC(Entity* this) {
this->field_0x7c.HALF_U.HI--;
} else {
if (this->field_0x78.HALF.HI == 0) {
if (((Random() & 1) != 0) && ((gScreenTransition.field_0x39 & 0xc) != 0)) {
if (((Random() & 1) != 0) && ((gRoomTransition.field_0x39 & 0xc) != 0)) {
sub_08042264(this);
this->field_0x78.HALF.HI = 1;
return;
@@ -991,7 +991,7 @@ void sub_0804235C(Entity* this) {
#if defined USA || defined DEMO_USA || defined DEMO_JP
void VaatiWrathType0PreAction(Entity* this) {
int temp;
if ((gScreenTransition.field_0x38 & 2) == 0) {
if ((gRoomTransition.field_0x38 & 2) == 0) {
if (gSave.unk48C[3] != 0) {
gSave.unk48C[3]--;
} else {
@@ -1002,7 +1002,7 @@ void VaatiWrathType0PreAction(Entity* this) {
if (gPlayerEntity.field_0x7a.HWORD == 0) {
if ((gPlayerEntity.z.HALF.HI & 0x8000U) == 0 || (gPlayerState.field_0xa != 0)) {
CreateEzloHint(0xb70, 0);
gScreenTransition.field_0x38 |= 2;
gRoomTransition.field_0x38 |= 2;
}
}
}
+2 -2
View File
@@ -35,7 +35,7 @@ void VaatiWrathEye(Entity* this) {
}
void VaatiWrathEyeAction0(Entity* this) {
if ((gScreenTransition.field_0x38 & 1) != 0) {
if ((gRoomTransition.field_0x38 & 1) != 0) {
this->action = 2;
InitializeAnimation(this, 1);
} else {
@@ -57,7 +57,7 @@ void VaatiWrathEyeAction1(Entity* this) {
void VaatiWrathEyeAction2(Entity* this) {
sub_080485D8(this);
if ((gScreenTransition.field_0x39 & 3) == 0) {
if ((gRoomTransition.field_0x39 & 3) == 0) {
this->action = 3;
COLLISION_ON(this);
this->speed = 0x80;
+4 -4
View File
@@ -59,8 +59,8 @@ void sub_0802A2FC(Entity* this) {
}
void sub_0802A334(Entity* this) {
u32 x = (this->x.HALF.HI - gRoomControls.roomScrollX + gScreen.bg1.xOffset) >> 3;
u32 y = (this->y.HALF.HI - gRoomControls.roomScrollY + gScreen.bg1.yOffset) >> 3;
u32 x = (this->x.HALF.HI - gRoomControls.scroll_x + gScreen.bg1.xOffset) >> 3;
u32 y = (this->y.HALF.HI - gRoomControls.scroll_y + gScreen.bg1.yOffset) >> 3;
if (gBG3Buffer[(x & 0x1fU) + (y & 0x1fU) * 0x20 + 0x400]) {
this->collisionLayer = 2;
} else {
@@ -70,8 +70,8 @@ void sub_0802A334(Entity* this) {
}
void sub_0802A39C(Entity* this) {
u32 x = (gPlayerEntity.x.HALF.HI - gRoomControls.roomScrollX + gScreen.bg1.xOffset) >> 3;
u32 y = (gPlayerEntity.y.HALF.HI - gRoomControls.roomScrollY + gScreen.bg1.yOffset - 10) >> 3;
u32 x = (gPlayerEntity.x.HALF.HI - gRoomControls.scroll_x + gScreen.bg1.xOffset) >> 3;
u32 y = (gPlayerEntity.y.HALF.HI - gRoomControls.scroll_y + gScreen.bg1.yOffset - 10) >> 3;
if (gBG3Buffer[(x & 0x1fU) + (y & 0x1fU) * 0x20 + 0x400]) {
COLLISION_OFF(this);
} else {
+6 -6
View File
@@ -17,9 +17,9 @@ extern void (*const gUnk_080D412C[])();
extern struct_02018EB0 gUnk_02018EB0;
u32 sub_0804AA84(void) {
u32 IsEnterPortal(void) {
if (gArea.playShrinkSeq) {
gMain.transition = 4;
gMain.substate = 4;
gArea.filler[8] = 0;
gArea.filler[9] = 0;
*(u16*)&gArea.filler[10] = 0;
@@ -32,7 +32,7 @@ u32 sub_0804AA84(void) {
}
}
void sub_0804AAB8(void) {
void GameMain_MinishPortal(void) {
gUnk_080D4120[gArea.filler[8]]();
}
@@ -48,8 +48,8 @@ void sub_0804AB04(void) {
UpdateEntities();
if (gArea.field_0x10 != 0) {
FlushSprites();
sub_080AD9B0();
sub_080AD918();
DrawEntities();
CopyOAM();
}
}
@@ -63,6 +63,6 @@ void sub_0804AB24(void) {
}
}
void sub_0804AB54(void) {
void Subtask_PortalCutscene(void) {
gUnk_080D412C[gArea.filler[8]]();
}
+11 -11
View File
@@ -41,7 +41,7 @@ void sub_0805E248(void) {
s32 v0;
v0 = gUnk_03004030.unk_00->unk_06;
if (gRoomControls.areaID == AREA_VEIL_FALLS || gRoomControls.areaID == AREA_VEIL_FALLS_DIG_CAVE) {
if (gRoomControls.area == AREA_VEIL_FALLS || gRoomControls.area == AREA_VEIL_FALLS_DIG_CAVE) {
SetTileType(636, v0 - 65, 1);
SetTileType(643, v0 - 65, 2);
SetTileType(637, v0 - 64, 1);
@@ -66,7 +66,7 @@ void sub_0805E248(void) {
}
void sub_0805E374(Entity* e) {
u8 r3 = gScreenTransition.player_status.field_0x24[8];
u8 r3 = gRoomTransition.player_status.field_0x24[8];
u8* array = gUnk_081091F8;
if (r3 != 2) {
@@ -83,7 +83,7 @@ void SetDefaultPriority(Entity* ent, u32 prio) {
bool32 CheckDontUpdate(Entity* this) {
u32 value;
if (this->flags & ENT_ASLEEP)
if (this->flags & ENT_DELETED)
return TRUE;
if (this->action == 0)
return FALSE;
@@ -227,9 +227,9 @@ void EraseAllEntities() {
sub_0805E98C();
gEntCount = 0;
gManagerCount = 0;
gUnk_03000000.unk[0].unk7 = 1;
gUnk_03000000.unk[0].unk6 = 1;
gUnk_03000000.unk[1].unk6 = 1;
gOAMControls.unk[0].unk7 = 1;
gOAMControls.unk[0].unk6 = 1;
gOAMControls.unk[1].unk6 = 1;
}
extern Entity gUnk_030015A0[0x48];
@@ -458,16 +458,16 @@ void sub_0805E98C(void) {
}
}
void sub_0805E9A8(void) {
void QueueEntityDeletion(void) {
Entity* i;
LinkedList* list;
list = &gEntityLists[0];
do {
for (i = list->first; (u32)i != (u32)list; i = i->next) {
i->flags &= ~2;
if ((i->flags & 0x20) == 0) {
i->flags |= 0x10;
i->flags &= ~ENT_SCRIPTED;
if ((i->flags & ENT_PERSIST) == 0) {
i->flags |= ENT_DELETED;
}
}
} while (++list < &gEntityLists[9]);
@@ -482,7 +482,7 @@ void DeleteSleepingEntities(void) {
do {
for (ent = list->first; (u32)ent != (u32)list; ent = next) {
next = ent->next;
if (ent->flags & ENT_ASLEEP)
if (ent->flags & ENT_DELETED)
DeleteEntityAny(ent);
}
} while (++list < &gEntityLists[9]);
+3 -3
View File
@@ -17,7 +17,7 @@ extern u32 gMakeFadeBuff256;
typedef void (*fptrMakeFadeBuff256)(u8*, u8*, u16, u8);
void SetBrightness(u32 arg0) {
gSaveHeader->brightnessPref = arg0;
gSaveHeader->brightness = arg0;
gUsedPalettes = 0xffffffff;
}
@@ -78,7 +78,7 @@ void DoFade(u32 type, u32 speed) {
gFadeControl.field_0x2 = 0;
}
if (type & 8) {
gUnk_03000000.spritesOffset = 1;
gOAMControls.spritesOffset = 1;
gScreen.bg1.control |= BGCNT_MOSAIC;
gScreen.bg2.control |= BGCNT_MOSAIC;
gScreen.bg3.control |= BGCNT_MOSAIC;
@@ -182,7 +182,7 @@ static u32 sub_08050230(FadeControl* ctl) {
return 1;
// fade is finished
gUnk_03000000.spritesOffset = 0;
gOAMControls.spritesOffset = 0;
if ((type & 1) == 0) {
// reset registers if fading in
gScreen.bg0.control &= ~BGCNT_MOSAIC;
+47 -47
View File
@@ -1,4 +1,4 @@
#include "fileScreen.h"
#include "fileselect.h"
#include "main.h"
#include "common.h"
#include "screen.h"
@@ -36,7 +36,7 @@ typedef enum {
static void HandleFileScreenEnter(void);
static void HandleFileScreenActive(void);
static void HandleFileScreenExit(void);
static void (*const sScreenHandlers[])(void) = {
static void (*const sTaskHandlers[])(void) = {
HandleFileScreenEnter,
HandleFileScreenActive,
HandleFileScreenExit,
@@ -129,21 +129,21 @@ void SetFileSelectState(FileSelectState mode) {
}
void LoadOptionsFromSave(u32 idx) {
u8 messageSpeed;
u8 brightnessPref;
u8 msg_speed;
u8 brightness;
if (idx >= NUM_SAVE_SLOTS) {
// these apply to the language selection screen
messageSpeed = 1;
brightnessPref = 1;
msg_speed = 1;
brightness = 1;
} else {
SaveFile* saveFile = &gUnk_02019EE0.saves[idx];
messageSpeed = saveFile->messageSpeed;
brightnessPref = saveFile->brightnessPref;
msg_speed = saveFile->msg_speed;
brightness = saveFile->brightness;
}
gSaveHeader->messageSpeed = messageSpeed;
gSaveHeader->brightnessPref = brightnessPref;
gSaveHeader->msg_speed = msg_speed;
gSaveHeader->brightness = brightness;
gUsedPalettes = 0xFFFFFFFF;
}
@@ -155,9 +155,9 @@ void SetActiveSave(u32 idx) {
LoadOptionsFromSave(idx);
}
void HandleChooseFileScreen(void) {
void FileSelectTask(void) {
FlushSprites();
sScreenHandlers[gMain.funcIndex]();
sTaskHandlers[gMain.state]();
if (gUnk_02032EC0.lastState != gUnk_02032EC0.state) {
gUnk_02032EC0.lastState = gUnk_02032EC0.state;
gScreen.bg0.xOffset = 0;
@@ -176,11 +176,11 @@ void HandleChooseFileScreen(void) {
UpdateEntities();
sub_0805066C();
sub_0801C1D4();
sub_0801C208();
sub_080AD9B0();
sub_080AD918();
if (gUnk_02019EE0.unk3 != gSaveHeader->gameLanguage) {
gUnk_02019EE0.unk3 = gSaveHeader->gameLanguage;
DrawOAMCmd();
DrawEntities();
CopyOAM();
if (gUnk_02019EE0.unk3 != gSaveHeader->language) {
gUnk_02019EE0.unk3 = gSaveHeader->language;
sub_080503A8(0x6);
sub_080503A8(0xF);
}
@@ -194,13 +194,13 @@ static void HandleFileScreenEnter(void) {
MemClear((void*)VRAM, 0x80); // clear palettes
MessageInitialize();
EraseAllEntities();
sub_08080668();
ClearTilemaps();
ResetPalettes();
sub_0801CFA8(0);
ResetPaletteTable(0);
MemClear(&gUnk_0200AF00, sizeof(gUnk_0200AF00));
MemClear(&gUnk_02019EE0, sizeof(gUnk_02019EE0));
gUnk_02019EE0.unk3 = 7;
gUnk_02019EE0.unk6 = gSaveHeader->gameLanguage > LANGUAGE_EN ? 3 : 0;
gUnk_02019EE0.unk6 = gSaveHeader->language > LANGUAGE_EN ? 3 : 0;
MemClear(&gUnk_02032EC0, sizeof(gUnk_02032EC0));
gUnk_02032EC0.lastState = 8;
SetFileSelectState(STATE_NONE);
@@ -222,7 +222,7 @@ static void HandleFileScreenEnter(void) {
gScreen.controls.layerFXControl = BLDCNT_TGT1_BG2 | BLDCNT_TGT2_BG3 | BLDCNT_EFFECT_BLEND;
gScreen.controls.alphaBlend = BLDALPHA_BLEND(15, 10);
gGFXSlots.unk0 = 1;
gMain.funcIndex = 1;
gMain.state = 1;
SoundReq(BGM_FILE_SELECT);
DoFade(4, 8);
}
@@ -232,7 +232,7 @@ static void HandleFileScreenActive(void) {
static void HandleFileScreenExit(void) {
if (!gFadeControl.active) {
InitScreen(SCREEN_GAMEPLAY);
SetTask(TASK_GAME);
}
}
@@ -287,7 +287,7 @@ void sub_0805070C(void) {
u32 i;
int j;
struct_02036540* var0;
char* playerName;
char* name;
var0 = sub_0805F2C8();
if (var0) {
@@ -299,9 +299,9 @@ void sub_0805070C(void) {
for (i = 0; i < NUM_SAVE_SLOTS; i++) {
var0->unk6 = 0;
MemClear(var0->unk8, 0x200);
playerName = &gUnk_02019EE0.saves[i].playerName[0];
name = &gUnk_02019EE0.saves[i].name[0];
for (j = 0; j < FILENAME_LENGTH; j++) {
sub_0805F7DC(playerName[j], var0);
sub_0805F7DC(name[j], var0);
}
// i is a struct of size 0x200
MemCopy(var0->unk8, (void*)(OBJ_VRAM0 + 0x4000 + i * 0x200), 0x200);
@@ -418,7 +418,7 @@ void sub_08050940(void) {
keys &= ~(DPAD_UP | DPAD_DOWN);
}
num_rows = gSaveHeader->gameLanguage > 1 ? NUM_SAVE_SLOTS + 1 : NUM_SAVE_SLOTS;
num_rows = gSaveHeader->language > 1 ? NUM_SAVE_SLOTS + 1 : NUM_SAVE_SLOTS;
mode = gUnk_02032EC0.lastState;
switch (keys) {
case DPAD_UP:
@@ -677,7 +677,7 @@ void HandleFileLanguageSelect(void) {
void sub_08050DB8(void) {
MemClear(&gBG2Buffer, sizeof(gBG2Buffer));
sub_080503A8(0xc);
gMenu.field_0x4 = gSaveHeader->gameLanguage;
gMenu.field_0x4 = gSaveHeader->language;
sub_080A7114(1);
}
@@ -687,7 +687,7 @@ void sub_08050DE4(void) {
if (gUnk_02019EE0.isTransitioning)
return;
row_idx = gSaveHeader->gameLanguage;
row_idx = gSaveHeader->language;
switch (gInput.newKeys) {
case DPAD_UP:
row_idx--;
@@ -707,7 +707,7 @@ void sub_08050DE4(void) {
break;
case B_BUTTON:
row_idx = gMenu.field_0x4;
gSaveHeader->gameLanguage = gMenu.field_0x4;
gSaveHeader->language = gMenu.field_0x4;
SoundReq(SFX_MENU_CANCEL);
SetFileSelectState(STATE_NONE);
break;
@@ -720,8 +720,8 @@ void sub_08050DE4(void) {
if (row_idx > 6) {
row_idx = 6;
}
if (gSaveHeader->gameLanguage != row_idx) {
gSaveHeader->gameLanguage = row_idx;
if (gSaveHeader->language != row_idx) {
gSaveHeader->language = row_idx;
SoundReq(SFX_TEXTBOX_CHOICE);
}
}
@@ -739,8 +739,8 @@ void sub_08050EB8(void) {
SaveFile* save;
sub_080503A8(0xe);
save = &gUnk_02019EE0.saves[gUnk_02019EE0.unk6];
gUnk_02019EE0.unk4 = save->messageSpeed;
gUnk_02019EE0.unk5 = save->brightnessPref;
gUnk_02019EE0.unk4 = save->msg_speed;
gUnk_02019EE0.unk5 = save->brightness;
gMenu.column_idx = 0;
gMenu.transitionTimer = 0xff;
sub_080A7114(1);
@@ -755,9 +755,9 @@ NONMATCH("asm/non_matching/fileScreen/sub_08050EF4.inc", void sub_08050EF4(void)
if (gUnk_02019EE0.isTransitioning)
return;
p_option = &gUnk_02019EE0.saves[gUnk_02019EE0.unk6].brightnessPref;
p_option = &gUnk_02019EE0.saves[gUnk_02019EE0.unk6].brightness;
if (gMenu.column_idx == 0) {
p_option = &gUnk_02019EE0.saves[gUnk_02019EE0.unk6].messageSpeed;
p_option = &gUnk_02019EE0.saves[gUnk_02019EE0.unk6].msg_speed;
}
mode = 0;
@@ -783,7 +783,7 @@ NONMATCH("asm/non_matching/fileScreen/sub_08050EF4.inc", void sub_08050EF4(void)
case A_BUTTON:
case START_BUTTON:
mode = 2;
if (*(u16*)&gUnk_02019EE0.unk4 != *(u16*)&gUnk_02019EE0.saves[gUnk_02019EE0.unk6].messageSpeed)
if (*(u16*)&gUnk_02019EE0.unk4 != *(u16*)&gUnk_02019EE0.saves[gUnk_02019EE0.unk6].msg_speed)
mode = 3;
break;
case B_BUTTON:
@@ -793,8 +793,8 @@ NONMATCH("asm/non_matching/fileScreen/sub_08050EF4.inc", void sub_08050EF4(void)
switch (mode) {
case 3:
gUnk_02019EE0.saves[gUnk_02019EE0.unk6].messageSpeed = gUnk_02019EE0.unk4;
gUnk_02019EE0.saves[gUnk_02019EE0.unk6].brightnessPref = gUnk_02019EE0.unk5;
gUnk_02019EE0.saves[gUnk_02019EE0.unk6].msg_speed = gUnk_02019EE0.unk4;
gUnk_02019EE0.saves[gUnk_02019EE0.unk6].brightness = gUnk_02019EE0.unk5;
SoundReq(SFX_MENU_CANCEL);
sub_080A7114(mode);
SetActiveSave(gUnk_02019EE0.unk6);
@@ -867,7 +867,7 @@ NONMATCH("asm/non_matching/fileScreen/sub_080610B8.inc", void sub_080610B8(void)
END_NONMATCH
void sub_08051358(void) {
gMenu.field_0x12 = gSaveHeader->gameLanguage == 0 ? 4 : 3;
gMenu.field_0x12 = gSaveHeader->language == 0 ? 4 : 3;
if (gMenu.focusCoords[0] != 0x0b || gMenu.focusCoords[1] != 0x5) {
gMenu.focusCoords[1] = 0x5;
@@ -948,7 +948,7 @@ void sub_08051480(u32 c) {
}
gMenu.unk13 = idx + 1;
gSave.playerName[idx] = c;
gSave.name[idx] = c;
sub_08051574(SFX_6B);
}
@@ -956,7 +956,7 @@ u32 sub_080514BC(u32 a1) {
u32 c;
u32 idx;
if (gSaveHeader->gameLanguage != 0)
if (gSaveHeader->language != 0)
return 1;
switch (a1) {
@@ -972,7 +972,7 @@ u32 sub_080514BC(u32 a1) {
if (idx == 0)
return 0;
c = gSave.playerName[idx - 1];
c = gSave.name[idx - 1];
if (c - 0xa4 < 0x29) {
switch (a1) {
case 0x0:
@@ -1200,9 +1200,9 @@ void sub_080518E4(void) {
void HandleFileStart(void) {
if (gMenu.menuType == 0) {
gMenu.menuType = 1;
gSaveHeader->messageSpeed = gSave.messageSpeed;
gSaveHeader->brightnessPref = gSave.brightnessPref;
gMain.funcIndex = 2;
gSaveHeader->msg_speed = gSave.msg_speed;
gSaveHeader->brightness = gSave.brightness;
gMain.state = 2;
DoFade(5, 8);
}
}
@@ -1213,8 +1213,8 @@ void sub_0805194C(u32 save_idx) {
gUnk_02019EE0.saveStatus[save_idx] = 0;
save = &gUnk_02019EE0.saves[save_idx];
MemClear(save, sizeof(*save));
save->messageSpeed = 1;
save->brightnessPref = 1;
save->msg_speed = 1;
save->brightness = 1;
save->stats.health = 24;
save->stats.maxHealth = 24;
}
+273 -260
View File
File diff suppressed because it is too large Load Diff
+4 -4
View File
@@ -98,9 +98,9 @@ void sub_08016BF8(void) {
}
void UpdateDisplayControls(void) {
if (gUnk_03000000.field_0x0 && (gScreen.lcd.displayControl & DISPCNT_OBJ_ON)) {
gUnk_03000000.field_0x0 = 0;
DmaCopy32(3, &gUnk_03000000.oam, OAM, OAM_SIZE);
if (gOAMControls.field_0x0 && (gScreen.lcd.displayControl & DISPCNT_OBJ_ON)) {
gOAMControls.field_0x0 = 0;
DmaCopy32(3, &gOAMControls.oam, OAM, OAM_SIZE);
}
sub_08016CA8(&gScreen.bg0);
sub_08016CA8(&gScreen.bg1);
@@ -289,7 +289,7 @@ void HandlePlayerLife(Entity* this) {
if (gSave.stats.health <= temp) {
gRoomVars.unk2 = 1;
if ((gUnk_0200AF00.filler0[1] == 0) && gScreenTransition.frameCount % 90 == 0) {
if ((gUnk_0200AF00.filler0[1] == 0) && gRoomTransition.frameCount % 90 == 0) {
EnqueueSFX(SFX_LOW_HEALTH);
}
}
+1 -1
View File
@@ -25,7 +25,7 @@ void sub_08076488(ItemBehavior* this, u32 arg1) {
if (this->field_0x5[2] == 0) {
if (sub_08077F64(this, arg1) != 0) {
if (((*(u8*)((this->field_0x18) + 0x16) & 0xf0) == 0x10) && ((gScreenTransition.frameCount & 1U) != 0)) {
if (((*(u8*)((this->field_0x18) + 0x16) & 0xf0) == 0x10) && ((gRoomTransition.frameCount & 1U) != 0)) {
return;
}
UpdateItemAnim(this);
+38 -38
View File
@@ -9,30 +9,30 @@
extern u32 gRand;
extern void HandleIntroScreen(void);
extern void HandleChooseFileScreen(void);
extern void HandleChooseDemoScreen(void);
extern void HandleGameplayScreen(void);
extern void HandleGameOverScreen(void);
extern void HandleCreditsScreen(void);
extern void HandleDebugTextScreen(void);
extern void TitleTask(void);
extern void FileSelectTask(void);
extern void DemoTask(void);
extern void GameTask(void);
extern void GameOverTask(void);
extern void StaffrollTask(void);
extern void DebugTask(void);
static void InitOverlays(void);
static bool32 SoftResetKeysPressed(void);
static u32 CheckHeaderValid(void);
void (*const sScreenHandlers[])(void) = {
[SCREEN_INTRO] = HandleIntroScreen,
void (*const sTaskHandlers[])(void) = {
[TASK_TITLE] = TitleTask,
#ifdef DEMO_USA
[SCREEN_CHOOSE_FILE] = HandleChooseDemoScreen,
[TASK_FILE_SELECT] = DemoTask,
#else
[SCREEN_CHOOSE_FILE] = HandleChooseFileScreen,
[TASK_FILE_SELECT] = FileSelectTask,
#endif
[SCREEN_GAMEPLAY] = HandleGameplayScreen,
[SCREEN_GAME_OVER] = HandleGameOverScreen,
[SCREEN_CREDITS] = HandleCreditsScreen,
[SCREEN_DEBUG_TEXT] = HandleDebugTextScreen,
[TASK_GAME] = GameTask,
[TASK_GAMEOVER] = GameOverTask,
[TASK_STAFFROLL] = StaffrollTask,
[TASK_DEBUG] = DebugTask,
};
static void sub_080560B8(void);
@@ -52,7 +52,7 @@ void AgbMain(void) {
ResetPalettes();
gRand = 0x1234567;
MemClear(&gMain, sizeof(gMain));
InitScreen(SCREEN_INTRO);
SetTask(TASK_TITLE);
while (1) {
ReadKeyInput();
if (SoftResetKeysPressed()) {
@@ -81,7 +81,7 @@ void AgbMain(void) {
}
gMain.ticks.HWORD++;
sScreenHandlers[gMain.screen]();
sTaskHandlers[gMain.task]();
MessageMain();
FadeMain();
AudioMain();
@@ -129,10 +129,10 @@ static bool32 SoftResetKeysPressed(void) {
return (gInput.heldKeys & SOFT_RESET_KEYS) == SOFT_RESET_KEYS;
}
void InitScreen(u32 screen) {
gMain.screen = screen;
gMain.funcIndex = 0;
gMain.transition = 0;
void SetTask(u32 task) {
gMain.task = task;
gMain.state = 0;
gMain.substate = 0;
}
void DisableInterruptsAndDMA(void) {
@@ -156,27 +156,27 @@ void DoSoftReset(void) {
typedef struct {
int signature;
u8 saveFileId;
u8 messageSpeed;
u8 brightnessPref;
u8 gameLanguage;
u8 msg_speed;
u8 brightness;
u8 language;
u8 name[6];
u8 _e;
u8 _f;
u8 invalid;
u8 initialized;
} Defaults;
const Defaults sDefaultSettings = {
.signature = SIGNATURE,
.saveFileId = 0,
.messageSpeed = 1,
.brightnessPref = 1,
.msg_speed = 1,
.brightness = 1,
#ifdef EU
.gameLanguage = 2, // TODO in EU 2 is english?
.language = 2, // TODO in EU 2 is english?
#else
.gameLanguage = GAME_LANGUAGE,
.language = GAME_LANGUAGE,
#endif
.name = "LINK",
._e = 0,
._f = 0,
.invalid = 0,
.initialized = 0,
};
// single misplaced ldr
@@ -213,13 +213,13 @@ END_NONMATCH
static u32 CheckHeaderValid(void) {
if ((gSaveHeader->signature != SIGNATURE) || (gSaveHeader->saveFileId >= NUM_SAVE_SLOTS) ||
(gSaveHeader->messageSpeed >= MAX_MSG_SPEED) || (gSaveHeader->brightnessPref >= MAX_BRIGHTNESS)
(gSaveHeader->msg_speed >= MAX_MSG_SPEED) || (gSaveHeader->brightness >= MAX_BRIGHTNESS)
#ifdef EU
|| (gSaveHeader->gameLanguage <= GAME_LANGUAGE) || (gSaveHeader->gameLanguage > NUM_LANGUAGES)
|| (gSaveHeader->language <= GAME_LANGUAGE) || (gSaveHeader->language > NUM_LANGUAGES)
#else
|| (gSaveHeader->gameLanguage != GAME_LANGUAGE)
|| (gSaveHeader->language != GAME_LANGUAGE)
#endif
|| (gSaveHeader->_e != 0))
|| (gSaveHeader->invalid))
return FALSE;
return TRUE;
@@ -278,8 +278,8 @@ void SetSleepMode(void) {
// Convert AABB to screen coordinates and check if it's within the viewport
u32 CheckRegionOnScreen(u32 x0, u32 y0, u32 x1, u32 y1) {
u32 result;
u32 x = ((gRoomControls.roomScrollX - gRoomControls.roomOriginX) - x0 + DISPLAY_WIDTH);
u32 y = ((gRoomControls.roomScrollY - gRoomControls.roomOriginY) - y0 + DISPLAY_HEIGHT);
u32 x = ((gRoomControls.scroll_x - gRoomControls.origin_x) - x0 + DISPLAY_WIDTH);
u32 y = ((gRoomControls.scroll_y - gRoomControls.origin_y) - y0 + DISPLAY_HEIGHT);
u32 a = x1 + DISPLAY_WIDTH;
u32 b = y1 + DISPLAY_HEIGHT;
if ((x < a) && (y < b))
+4 -4
View File
@@ -6,7 +6,7 @@
#include "sound.h"
#include "screen.h"
#include "common.h"
#include "fileScreen.h"
#include "fileselect.h"
#include "functions.h"
void sub_080595E4(Manager10*);
@@ -95,7 +95,7 @@ void sub_08059690(Manager10* this) {
}
void sub_080596E0(Manager10* this) {
if ((gScreenTransition.frameCount & 7) == 0) {
if ((gRoomTransition.frameCount & 7) == 0) {
gScreen.bg1.xOffset += 8;
gScreen.bg1.xOffset &= 0x1F;
}
@@ -149,11 +149,11 @@ void sub_080596E0(Manager10* this) {
}
u32 sub_08059844() {
return gPlayerEntity.x.HALF.HI - gRoomControls.roomOriginX > gRoomControls.width >> 1;
return gPlayerEntity.x.HALF.HI - gRoomControls.origin_x > gRoomControls.width >> 1;
}
u32 sub_0805986C() {
return gPlayerEntity.x.HALF.HI - gRoomControls.roomOriginX > 0x200;
return gPlayerEntity.x.HALF.HI - gRoomControls.origin_x > 0x200;
}
void sub_08059894(const u16* unk1, const u16* unk2, u32 unk3) {
+3 -3
View File
@@ -65,7 +65,7 @@ void sub_08059A2C(Manager12* this) {
}
void sub_08059A58(Manager12* this) {
if (gRoomControls.areaID != AREA_FESTIVAL_TOWN) {
if (gRoomControls.area != AREA_FESTIVAL_TOWN) {
if (sub_08059C8C(this, 0, &this->field_0x20, &gUnk_08108398) != 0) {
sub_08059CC0(0, (u32)this->field_0x20);
}
@@ -142,7 +142,7 @@ void sub_08059CC0(u32 param_1, u32 param_2) {
Unknown* unknown;
gRoomVars.unk_10[param_1] = param_2;
if (gRoomControls.areaID != AREA_FESTIVAL_TOWN) {
if (gRoomControls.area != AREA_FESTIVAL_TOWN) {
unknown = &gUnk_08108408[param_2];
} else {
unknown = &gUnk_08108468[param_2];
@@ -154,7 +154,7 @@ void sub_08059CC0(u32 param_1, u32 param_2) {
void TryLoadPrologueHyruleTown(void) {
u32 tmp;
if (gRoomControls.areaID != AREA_FESTIVAL_TOWN) {
if (gRoomControls.area != AREA_FESTIVAL_TOWN) {
tmp = CheckRegionsOnScreen(&gUnk_08108398);
if (tmp != 0xff) {
sub_08059CC0(0, tmp);
+3 -3
View File
@@ -33,7 +33,7 @@ void Manager13_Main(Manager13* this) {
if (this->manager.action == 0) {
this->manager.action = 1;
}
if (gRoomControls.areaID == AREA_FESTIVAL_TOWN) {
if (gRoomControls.area == AREA_FESTIVAL_TOWN) {
spawnData = gUnk_08108530;
} else {
spawnData = gUnk_081084C8;
@@ -46,8 +46,8 @@ void Manager13_Main(Manager13* this) {
Entity* object = CreateObject(OBJECT_1C, spawnData->type, type2);
if (object != NULL) {
object->frameIndex = spawnData->frameIndex;
object->x.HALF.HI = gRoomControls.roomOriginX + spawnData->x;
object->y.HALF.HI = gRoomControls.roomOriginY + spawnData->y;
object->x.HALF.HI = gRoomControls.origin_x + spawnData->x;
object->y.HALF.HI = gRoomControls.origin_y + spawnData->y;
object->parent = (Entity*)this;
object->field_0x80.HWORD = spawnData->x;
object->field_0x82.HWORD = spawnData->y;
+2 -2
View File
@@ -83,7 +83,7 @@ void sub_08059EF8(Manager14* this) {
}
u32 sub_08059F9C(Manager14* this) {
switch (gRoomControls.roomID) {
switch (gRoomControls.room) {
case 1:
if (CheckLocalFlag(0x16)) {
return 0;
@@ -123,7 +123,7 @@ void sub_0805A048(Manager14* this) {
}
void sub_0805A098(Manager14* this) {
switch (gRoomControls.roomID) {
switch (gRoomControls.room) {
case 0:
case 8:
case 9:
+16 -16
View File
@@ -163,8 +163,8 @@ void sub_0805A4CC(Manager15* this, u32 unk_0) {
Entity* tmp;
tmp = CreateObject(OBJECT_8E, unk_0, 0);
if (tmp) {
tmp->x.HALF.HI = this->unk_38 + gRoomControls.roomOriginX;
tmp->y.HALF.HI = this->unk_3a + gRoomControls.roomOriginY - 0x30;
tmp->x.HALF.HI = this->unk_38 + gRoomControls.origin_x;
tmp->y.HALF.HI = this->unk_3a + gRoomControls.origin_y - 0x30;
tmp->parent = (Entity*)this;
this->manager.unk_0d = 0;
}
@@ -199,7 +199,7 @@ void sub_0805A500(Manager15* this) {
}
sub_0805AA58(this);
sub_0805A9CC(this);
if (gRoomControls.unk2 == 1) {
if (gRoomControls.reload_flags == 1) {
gScreen.lcd.displayControl |= DISPCNT_WIN1_ON;
this->manager.unk_0d = 1;
return;
@@ -207,7 +207,7 @@ void sub_0805A500(Manager15* this) {
if (!this->manager.unk_0d)
return;
this->manager.unk_0d = 0;
if (this->unk_20 == gRoomControls.roomID)
if (this->unk_20 == gRoomControls.room)
return;
gScreen.lcd.displayControl &= ~(DISPCNT_WIN1_ON | DISPCNT_BG3_ON);
DeleteThisEntity();
@@ -275,8 +275,8 @@ void sub_0805A6E8(Manager15* this) {
sub_0805A89C(this);
this->unk_23 = 0;
sub_0805AAF0(0);
this->unk_38 += gRoomControls.roomOriginX;
this->unk_3a += gRoomControls.roomOriginY;
this->unk_38 += gRoomControls.origin_x;
this->unk_3a += gRoomControls.origin_y;
if (!sub_0805A73C(this)) {
this->manager.action++;
}
@@ -307,7 +307,7 @@ void sub_0805A76C(Manager15* this) {
RequestPriorityDuration((Entity*)this, 600);
SetPlayerControl(0xFF);
gUnk_02034490[0] = 1;
gRoomControls.cameraTarget = NULL;
gRoomControls.camera_target = NULL;
sub_08077B20();
}
}
@@ -371,9 +371,9 @@ void sub_0805A89C(Manager15* this) {
this->manager.unk_0f = 0x10;
this->unk_21 = 0;
this->unk_22 = 0;
this->unk_20 = gRoomControls.roomID;
this->unk_24 = gRoomControls.roomOriginX;
this->unk_26 = gRoomControls.roomOriginY;
this->unk_20 = gRoomControls.room;
this->unk_24 = gRoomControls.origin_x;
this->unk_26 = gRoomControls.origin_y;
RegisterTransitionManager(this, sub_0805AAC8, 0);
}
@@ -382,14 +382,14 @@ void sub_0805A94C(Manager15* this);
void sub_0805A8EC(Manager15* this) {
sub_0805AA58(this);
sub_0805A94C(this);
if (gRoomControls.unk2 == 1) {
if (gRoomControls.reload_flags == 1) {
gScreen.lcd.displayControl |= DISPCNT_WIN1_ON;
this->manager.unk_0d = 1;
} else {
if (!this->manager.unk_0d)
return;
this->manager.unk_0d = 0;
if (this->unk_20 == gRoomControls.roomID)
if (this->unk_20 == gRoomControls.room)
return;
gScreen.lcd.displayControl &= ~(DISPCNT_WIN1_ON | DISPCNT_BG3_ON);
DeleteThisEntity();
@@ -398,8 +398,8 @@ void sub_0805A8EC(Manager15* this) {
void sub_0805A94C(Manager15* this) {
int tmp1, tmp2;
gScreen.bg3.xOffset = gRoomControls.roomScrollX - this->unk_24 + this->unk_34;
gScreen.bg3.yOffset = gRoomControls.roomScrollY - this->unk_26 + this->unk_36;
gScreen.bg3.xOffset = gRoomControls.scroll_x - this->unk_24 + this->unk_34;
gScreen.bg3.yOffset = gRoomControls.scroll_y - this->unk_26 + this->unk_36;
tmp1 = -gScreen.bg3.xOffset;
tmp2 = tmp1 + 0x100;
if (tmp1 < 0)
@@ -427,7 +427,7 @@ void sub_0805A94C(Manager15* this) {
void sub_0805A9CC(Manager15* this) {
int tmp1, tmp2;
void* tmp3;
gScreen.bg3.xOffset = gRoomControls.roomScrollX - this->unk_24 + this->unk_34;
gScreen.bg3.xOffset = gRoomControls.scroll_x - this->unk_24 + this->unk_34;
tmp1 = -gScreen.bg3.xOffset;
tmp2 = tmp1 + 0x100;
if (tmp1 < 0)
@@ -439,7 +439,7 @@ void sub_0805A9CC(Manager15* this) {
if (tmp2 > DISPLAY_WIDTH)
tmp2 = DISPLAY_WIDTH;
gScreen.controls.window1HorizontalDimensions = tmp1 << 8 | tmp2;
tmp1 = gRoomControls.roomScrollY - this->unk_26 + this->unk_36;
tmp1 = gRoomControls.scroll_y - this->unk_26 + this->unk_36;
gScreen.bg3.yOffset = tmp1 & 0x3F;
tmp3 = (&gBG3Buffer[((tmp1 / 0x40) << 8)]);
gScreen.bg3.tilemap = (u32*)tmp3;
+2 -2
View File
@@ -37,8 +37,8 @@ void sub_0805AD80(Manager17* manager) {
if (object != NULL) {
object->actionDelay = manager->field_0x35;
object->collisionLayer = manager->field_0x36;
object->x.HALF.HI = manager->field_0x38 + gRoomControls.roomOriginX;
object->y.HALF.HI = manager->field_0x3a + gRoomControls.roomOriginY;
object->x.HALF.HI = manager->field_0x38 + gRoomControls.origin_x;
object->y.HALF.HI = manager->field_0x3a + gRoomControls.origin_y;
object->field_0x86.HWORD = manager->field_0x3c;
}
DeleteThisEntity();
+4 -4
View File
@@ -40,8 +40,8 @@ void Manager18_Main(Manager18* this) {
}
gRoomControls.bg3OffsetX.WORD -= 0x2000;
gRoomControls.bg3OffsetY.WORD -= 0x1000;
gScreen.bg3.xOffset = gRoomControls.roomScrollX + gRoomControls.bg3OffsetX.HALF.HI;
gScreen.bg3.yOffset = gRoomControls.roomScrollY + gRoomControls.bg3OffsetY.HALF.HI;
gScreen.bg3.xOffset = gRoomControls.scroll_x + gRoomControls.bg3OffsetX.HALF.HI;
gScreen.bg3.yOffset = gRoomControls.scroll_y + gRoomControls.bg3OffsetY.HALF.HI;
}
}
}
@@ -52,8 +52,8 @@ void sub_0805AEDC(Manager18* this) {
gScreen.controls.layerFXControl =
BLDCNT_TGT1_BG3 | BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_BG1 | BLDCNT_TGT2_BG2 | BLDCNT_TGT2_OBJ | BLDCNT_TGT2_BD;
gScreen.controls.alphaBlend = (this != NULL) ? this->field_0x20 : BLDALPHA_BLEND(0, 16);
gScreen.bg3.xOffset = gRoomControls.roomScrollX + gRoomControls.bg3OffsetX.HALF.HI;
gScreen.bg3.yOffset = gRoomControls.roomScrollY + gRoomControls.bg3OffsetY.HALF.HI;
gScreen.bg3.xOffset = gRoomControls.scroll_x + gRoomControls.bg3OffsetX.HALF.HI;
gScreen.bg3.yOffset = gRoomControls.scroll_y + gRoomControls.bg3OffsetY.HALF.HI;
if (this != NULL) {
Manager18_Main(this);
}
+4 -4
View File
@@ -22,8 +22,8 @@ void Manager19_Main(Manager* this) {
}
} else {
gRoomControls.bg3OffsetX.WORD = gRoomControls.bg3OffsetX.WORD - 0x2000;
gScreen.bg3.xOffset = gRoomControls.roomScrollX + gRoomControls.bg3OffsetX.HALF.HI;
gScreen.bg3.yOffset = gRoomControls.roomScrollY + gRoomControls.bg3OffsetY.HALF.HI;
gScreen.bg3.xOffset = gRoomControls.scroll_x + gRoomControls.bg3OffsetX.HALF.HI;
gScreen.bg3.yOffset = gRoomControls.scroll_y + gRoomControls.bg3OffsetY.HALF.HI;
}
}
}
@@ -31,6 +31,6 @@ void Manager19_Main(Manager* this) {
void sub_0805AFFC(Manager* this) {
gScreen.bg3.control = BGCNT_PRIORITY(3) | BGCNT_SCREENBASE(30);
gScreen.lcd.displayControl |= DISPCNT_BG3_ON;
gScreen.bg3.xOffset = gRoomControls.roomScrollX + gRoomControls.bg3OffsetX.HALF.HI;
gScreen.bg3.yOffset = gRoomControls.roomScrollY + gRoomControls.bg3OffsetY.HALF.HI;
gScreen.bg3.xOffset = gRoomControls.scroll_x + gRoomControls.bg3OffsetX.HALF.HI;
gScreen.bg3.yOffset = gRoomControls.scroll_y + gRoomControls.bg3OffsetY.HALF.HI;
}
+34 -34
View File
@@ -70,16 +70,16 @@ void sub_0805B048(Manager1A* this) {
SetDefaultPriority((Entity*)&this->manager, PRIO_PLAYER_EVENT);
MemClear(&this->unk_20, 0x20);
this->manager.action = 1;
this->unk_3f = gRoomControls.roomID;
this->unk_3f = gRoomControls.room;
tmp = &gUnk_08108764[this->manager.unk_0a];
if (!tmp->unk_0a) {
this->unk_20 = gRoomControls.roomOriginX;
this->unk_22 = gRoomControls.roomOriginY;
this->unk_20 = gRoomControls.origin_x;
this->unk_22 = gRoomControls.origin_y;
this->unk_24 = gRoomControls.width;
this->unk_26 = gRoomControls.height;
} else {
this->unk_20 = (tmp->unk_08 << 4) + gRoomControls.roomOriginX;
this->unk_22 = (tmp->unk_09 << 4) + gRoomControls.roomOriginY;
this->unk_20 = (tmp->unk_08 << 4) + gRoomControls.origin_x;
this->unk_22 = (tmp->unk_09 << 4) + gRoomControls.origin_y;
this->unk_24 = (tmp->unk_0a << 4);
this->unk_26 = (tmp->unk_0b << 4);
}
@@ -99,15 +99,15 @@ void sub_0805B048(Manager1A* this) {
return;
obj = CreateObject(OBJECT_28, tmp->unk_10->unk_00, tmp->unk_10->unk_01);
if (obj) {
obj->x.HALF.HI = tmp->unk_10->unk_04 + gRoomControls.roomOriginX;
obj->y.HALF.HI = tmp->unk_10->unk_06 + gRoomControls.roomOriginY;
obj->x.HALF.HI = tmp->unk_10->unk_04 + gRoomControls.origin_x;
obj->y.HALF.HI = tmp->unk_10->unk_06 + gRoomControls.origin_y;
}
if (this->manager.unk_0a != 0xa || CheckLocalFlag(0x4B))
return;
obj = CreateObject(OBJECT_28, 3, 3);
if (obj) {
obj->x.HALF.HI = tmp->unk_10->unk_04 + gRoomControls.roomOriginX;
obj->y.HALF.HI = tmp->unk_10->unk_06 + gRoomControls.roomOriginY;
obj->x.HALF.HI = tmp->unk_10->unk_04 + gRoomControls.origin_x;
obj->y.HALF.HI = tmp->unk_10->unk_06 + gRoomControls.origin_y;
}
}
@@ -118,14 +118,14 @@ void sub_0805B168(Manager1A* this) {
return;
}
sub_0805B2B0(this);
if (gRoomControls.unk2 == 1) {
if (gRoomControls.reload_flags == 1) {
this->manager.unk_0d = 1;
return;
}
if (!this->manager.unk_0d)
return;
this->manager.unk_0d = 0;
if (this->unk_3f == gRoomControls.roomID)
if (this->unk_3f == gRoomControls.room)
return;
if (this->manager.unk_0b) {
gScreen.lcd.displayControl &= ~0x800;
@@ -147,33 +147,33 @@ u32 sub_0805B1CC(Manager1A* this) {
void sub_0805B210(Manager1A* this) {
struct_08108764* tmp;
gScreenTransition.transitioningOut = 1;
gScreenTransition.transitionType = TRANSITION_CUT;
gScreenTransition.player_status.start_anim = 4;
gRoomTransition.transitioningOut = 1;
gRoomTransition.type = TRANSITION_CUT;
gRoomTransition.player_status.start_anim = 4;
tmp = &gUnk_08108764[this->manager.unk_0a];
gScreenTransition.player_status.area_next = tmp->unk_01;
gScreenTransition.player_status.room_next = tmp->unk_02;
gScreenTransition.player_status.layer = tmp->unk_03;
gRoomTransition.player_status.area_next = tmp->unk_01;
gRoomTransition.player_status.room_next = tmp->unk_02;
gRoomTransition.player_status.layer = tmp->unk_03;
if (gPlayerState.flags & PL_MINISH) {
gScreenTransition.player_status.spawn_type = 6;
gRoomTransition.player_status.spawn_type = 6;
} else {
gScreenTransition.player_status.spawn_type = 2;
gRoomTransition.player_status.spawn_type = 2;
}
switch (tmp->unk_00) {
case 0:
gScreenTransition.player_status.start_pos_x = tmp->unk_04;
gScreenTransition.player_status.start_pos_y = tmp->unk_06;
gRoomTransition.player_status.start_pos_x = tmp->unk_04;
gRoomTransition.player_status.start_pos_y = tmp->unk_06;
break;
case 1:
gScreenTransition.player_status.start_pos_x =
gPlayerEntity.x.HALF.HI - gRoomControls.roomOriginX + tmp->unk_04;
gScreenTransition.player_status.start_pos_y =
gPlayerEntity.y.HALF.HI - gRoomControls.roomOriginY + tmp->unk_06;
gRoomTransition.player_status.start_pos_x =
gPlayerEntity.x.HALF.HI - gRoomControls.origin_x + tmp->unk_04;
gRoomTransition.player_status.start_pos_y =
gPlayerEntity.y.HALF.HI - gRoomControls.origin_y + tmp->unk_06;
break;
case 2:
gScreenTransition.player_status.start_pos_x = tmp->unk_04;
gScreenTransition.player_status.start_pos_y = tmp->unk_06;
gScreenTransition.player_status.spawn_type = 6;
gRoomTransition.player_status.start_pos_x = tmp->unk_04;
gRoomTransition.player_status.start_pos_y = tmp->unk_06;
gRoomTransition.player_status.spawn_type = 6;
break;
}
}
@@ -182,8 +182,8 @@ void sub_0805B2B0(Manager1A* this) {
s32 tmp, tmp2;
if (!this->manager.unk_0b)
return;
tmp = (this->unk_30 - gRoomControls.roomScrollX) / 4;
tmp2 = (this->unk_32 - gRoomControls.roomScrollY) / 4;
tmp = (this->unk_30 - gRoomControls.scroll_x) / 4;
tmp2 = (this->unk_32 - gRoomControls.scroll_y) / 4;
if (tmp < -12) {
tmp = -12;
}
@@ -197,10 +197,10 @@ void sub_0805B2B0(Manager1A* this) {
tmp2 = 12;
}
gScreen.lcd.displayControl |= DISPCNT_BG3_ON;
gRoomControls.bg3OffsetX.HALF.HI = gRoomControls.roomScrollX + this->unk_34 + tmp;
gScreen.bg3.xOffset = gRoomControls.roomScrollX + this->unk_34 + tmp;
gRoomControls.bg3OffsetY.HALF.HI = gRoomControls.roomScrollY + this->unk_36 + tmp2;
gScreen.bg3.yOffset = gRoomControls.roomScrollY + this->unk_36 + tmp2;
gRoomControls.bg3OffsetX.HALF.HI = gRoomControls.scroll_x + this->unk_34 + tmp;
gScreen.bg3.xOffset = gRoomControls.scroll_x + this->unk_34 + tmp;
gRoomControls.bg3OffsetY.HALF.HI = gRoomControls.scroll_y + this->unk_36 + tmp2;
gScreen.bg3.yOffset = gRoomControls.scroll_y + this->unk_36 + tmp2;
}
void sub_0805B328(Manager1A* this) {
+8 -8
View File
@@ -40,20 +40,20 @@ void Manager1B_Main(Manager1B* this) {
this->field_0x20 = iVar3 + (s8)tmp[2];
gUnk_08108C54[tmp[1]](this);
}
if (gRoomControls.unk2 == 0) {
if (gRoomControls.reload_flags == 0) {
gUnk_08108C54[tmp[1]](this);
}
}
void sub_0805B448(Manager1B* this) {
gScreen.bg3.xOffset = (gRoomControls.roomScrollX - gRoomControls.roomOriginX) >> 2;
gScreen.bg3.yOffset = ((gRoomControls.roomScrollY - gRoomControls.roomOriginY) >> 1) + this->field_0x20;
gScreen.bg3.xOffset = (gRoomControls.scroll_x - gRoomControls.origin_x) >> 2;
gScreen.bg3.yOffset = ((gRoomControls.scroll_y - gRoomControls.origin_y) >> 1) + this->field_0x20;
}
void sub_0805B474(Manager1B* this) {
s32 tmp = ((gRoomControls.roomScrollY - gRoomControls.roomOriginY) * 0x60) / (gRoomControls.height - 0xa0);
gScreen.bg3.yOffset = gRoomControls.roomOriginY + tmp;
gScreen.bg3.xOffset = gRoomControls.roomScrollX - ((gRoomControls.width - 0x100) / 2);
s32 tmp = ((gRoomControls.scroll_y - gRoomControls.origin_y) * 0x60) / (gRoomControls.height - 0xa0);
gScreen.bg3.yOffset = gRoomControls.origin_y + tmp;
gScreen.bg3.xOffset = gRoomControls.scroll_x - ((gRoomControls.width - 0x100) / 2);
}
void sub_0805B4B4(Manager1B* this) {
@@ -71,9 +71,9 @@ void sub_0805B4D0(u32 param_1) {
LoadGfxGroup(gUnk_08108C5C[param_1]);
gScreen.bg3.control = 0x1e07;
gScreen.lcd.displayControl |= DISPCNT_BG3_ON;
gScreen.bg3.xOffset = (gRoomControls.roomScrollX - gRoomControls.roomOriginX) >> 2;
gScreen.bg3.xOffset = (gRoomControls.scroll_x - gRoomControls.origin_x) >> 2;
uVar2 = (gRoomControls.roomScrollY - gRoomControls.roomOriginY) >> 1;
uVar2 = (gRoomControls.scroll_y - gRoomControls.origin_y) >> 1;
iVar1 = 0x100 - gRoomControls.height;
if (iVar1 < 0) {
iVar1 = 0;
+2 -2
View File
@@ -25,8 +25,8 @@ void sub_0805B55C(Manager* manager) {
manager->unk_0e = 0xf;
waterDrop = CreateEnemy(WATER_DROP, 0);
if (waterDrop != NULL) {
waterDrop->x.HALF.HI = gRoomControls.roomScrollX + 0x78 + gUnk_08108C6C[Random() & 7];
waterDrop->y.HALF.HI = gRoomControls.roomScrollY + 0x50 + gUnk_08108C7C[Random() & 3];
waterDrop->x.HALF.HI = gRoomControls.scroll_x + 0x78 + gUnk_08108C6C[Random() & 7];
waterDrop->y.HALF.HI = gRoomControls.scroll_y + 0x50 + gUnk_08108C7C[Random() & 3];
waterDrop->z.HALF.HI = 0xff38;
}
}
+4 -4
View File
@@ -25,8 +25,8 @@ void sub_0805B5E0(Manager* this) {
gScreen.bg3.xOffset = 0;
break;
case 1:
gScreen.bg3.xOffset = gRoomControls.roomScrollX + gRoomControls.bg3OffsetX.HALF.HI;
gScreen.bg3.yOffset = gRoomControls.roomScrollY + gRoomControls.bg3OffsetY.HALF.HI;
gScreen.bg3.xOffset = gRoomControls.scroll_x + gRoomControls.bg3OffsetX.HALF.HI;
gScreen.bg3.yOffset = gRoomControls.scroll_y + gRoomControls.bg3OffsetY.HALF.HI;
break;
}
}
@@ -34,7 +34,7 @@ void sub_0805B5E0(Manager* this) {
void sub_0805B638(Manager* this) {
if (this->unk_0a == 1) {
gRoomControls.bg3OffsetX.WORD = gRoomControls.bg3OffsetX.WORD + 0x2000;
gScreen.bg3.xOffset = gRoomControls.roomScrollX + gRoomControls.bg3OffsetX.HALF.HI;
gScreen.bg3.yOffset = gRoomControls.roomScrollY + gRoomControls.bg3OffsetY.HALF.HI;
gScreen.bg3.xOffset = gRoomControls.scroll_x + gRoomControls.bg3OffsetX.HALF.HI;
gScreen.bg3.yOffset = gRoomControls.scroll_y + gRoomControls.bg3OffsetY.HALF.HI;
}
}
+4 -4
View File
@@ -29,7 +29,7 @@ void Manager2_Main(Manager2* this) {
void sub_0805754C(Manager2* this) {
s32 bgOffset;
bgOffset = (gRoomControls.roomScrollY - gRoomControls.roomOriginY);
bgOffset = (gRoomControls.scroll_y - gRoomControls.origin_y);
bgOffset += bgOffset >> 3;
gScreen.bg3.yOffset = bgOffset & 0x3f;
gScreen.bg3.tilemap = gMapDataTopSpecial + (bgOffset / 0x40) * 0x200;
@@ -37,7 +37,7 @@ void sub_0805754C(Manager2* this) {
this->field_0x38 = gScreen.bg3.tilemap;
gScreen.bg3.updated = 1;
}
bgOffset = (gRoomControls.roomScrollY - gRoomControls.roomOriginY);
bgOffset = (gRoomControls.scroll_y - gRoomControls.origin_y);
bgOffset += bgOffset >> 2;
gScreen.bg1.yOffset = bgOffset & 0x3f;
gScreen.bg1.tilemap = gMapDataTopSpecial + 0x2000 + (bgOffset / 0x40) * 0x200;
@@ -55,7 +55,7 @@ void sub_080575C8(u32 param) {
LoadGfxGroup(param);
gRoomVars.unk_10[0] = param;
bgOffset = (gRoomControls.roomScrollY - gRoomControls.roomOriginY);
bgOffset = (gRoomControls.scroll_y - gRoomControls.origin_y);
bgOffset += bgOffset >> 3;
gScreen.bg3.yOffset = bgOffset & 0x3f;
gScreen.bg3.xOffset = 0;
@@ -63,7 +63,7 @@ void sub_080575C8(u32 param) {
gScreen.bg3.control = BGCNT_SCREENBASE(29) | BGCNT_PRIORITY(1) | BGCNT_CHARBASE(2) | BGCNT_MOSAIC;
gScreen.bg3.updated = 1;
bgOffset = (gRoomControls.roomScrollY - gRoomControls.roomOriginY);
bgOffset = (gRoomControls.scroll_y - gRoomControls.origin_y);
bgOffset += bgOffset >> 2;
gScreen.bg1.yOffset = bgOffset & 0x3f;
gScreen.bg1.xOffset = 0;
+2 -2
View File
@@ -30,7 +30,7 @@ void Manager20_Main(Manager20* this) {
tmp->y.HALF.HI = this->unk_3a;
tmp->collisionLayer = this->unk_37 >> 4;
}
tmp->x.HALF.HI += gRoomControls.roomOriginX;
tmp->y.HALF.HI += gRoomControls.roomOriginY;
tmp->x.HALF.HI += gRoomControls.origin_x;
tmp->y.HALF.HI += gRoomControls.origin_y;
DeleteManager((Manager*)this);
}
+2 -2
View File
@@ -40,8 +40,8 @@ void Manager21_Main(Manager21* this) {
if (object != NULL) {
object->actionDelay = spawnData->actionDelay;
object->field_0xf = count;
object->x.HALF.HI = gRoomControls.roomOriginX + spawnData->x;
object->y.HALF.HI = gRoomControls.roomOriginY + spawnData->y;
object->x.HALF.HI = gRoomControls.origin_x + spawnData->x;
object->y.HALF.HI = gRoomControls.origin_y + spawnData->y;
object->parent = (Entity*)this;
ResolveCollisionLayer(object);
this->field_0x20 |= 1 << count;
+1 -1
View File
@@ -11,7 +11,7 @@ ASM_FUNC("asm/non_matching/manager22/sub_0805BB00.inc", void sub_0805BB00())
ASM_FUNC("asm/non_matching/manager22/sub_0805BB74.inc", void sub_0805BB74())
ASM_FUNC("asm/non_matching/manager22/sub_0805BBBC.inc", void sub_0805BBBC())
ASM_FUNC("asm/non_matching/manager22/sub_0805BBBC.inc", void UpdateLightLevel())
ASM_FUNC("asm/non_matching/manager22/sub_0805BC04.inc", void sub_0805BC04())
+2 -2
View File
@@ -148,8 +148,8 @@ void sub_0805BEC4(Manager23* this) {
Entity* object = CreateObject(OBJECT_2A, 1, 0);
if (object != NULL) {
*(s8*)(&object->flags + 1) = ((*(s8*)(&object->flags + 1)) & (-0x10)) | 3;
object->x.HALF.HI = this->field_0x38 + gRoomControls.roomOriginX;
object->y.HALF.HI = this->field_0x3a + gRoomControls.roomOriginY;
object->x.HALF.HI = this->field_0x38 + gRoomControls.origin_x;
object->y.HALF.HI = this->field_0x3a + gRoomControls.origin_y;
object->collisionLayer = this->manager.unk_0b;
object->spritePriority.b0 = 2;
}
+20 -20
View File
@@ -92,8 +92,8 @@ void sub_0805C050(u32 pos, u32 layer) {
if (CheckIsInteriorWithEnemies() != 0) {
Entity* object = CreateObject(ARCHWAY, 0xe, 0);
if (object != NULL) {
object->x.HALF.HI = ((pos & 0x3f) << 4) + 8 + gRoomControls.roomOriginX;
object->y.HALF.HI = ((pos & 0xfc0) >> 2) - 8 + gRoomControls.roomOriginY;
object->x.HALF.HI = ((pos & 0x3f) << 4) + 8 + gRoomControls.origin_x;
object->y.HALF.HI = ((pos & 0xfc0) >> 2) - 8 + gRoomControls.origin_y;
}
SetTileType(0xb5, pos, 1);
} else {
@@ -117,8 +117,8 @@ void sub_0805C050(u32 pos, u32 layer) {
if (object == NULL) {
return;
}
object->x.HALF.HI = ((pos & 0x3f) << 4) + 8 + gRoomControls.roomOriginX;
object->y.HALF.HI = ((pos & 0xfc0) >> 2) - 0x10 + gRoomControls.roomOriginY;
object->x.HALF.HI = ((pos & 0x3f) << 4) + 8 + gRoomControls.origin_x;
object->y.HALF.HI = ((pos & 0xfc0) >> 2) - 0x10 + gRoomControls.origin_y;
object->collisionLayer = 2;
}
}
@@ -137,8 +137,8 @@ void sub_0805C178(u32 pos, u32 layer) {
object = CreateObject(ARCHWAY, 0xe, 1);
if (object != NULL) {
object->x.HALF.HI = ((pos & 0x3f) << 4) + 0x18 + gRoomControls.roomOriginX;
object->y.HALF.HI = ((pos & 0xfc0) >> 2) + 8 + gRoomControls.roomOriginY;
object->x.HALF.HI = ((pos & 0x3f) << 4) + 0x18 + gRoomControls.origin_x;
object->y.HALF.HI = ((pos & 0xfc0) >> 2) + 8 + gRoomControls.origin_y;
}
SetTileType(0xf2, pos, 1);
} else {
@@ -160,8 +160,8 @@ void sub_0805C178(u32 pos, u32 layer) {
if (object == NULL) {
return;
}
object->x.HALF.HI = ((pos & 0x3f) << 4) + 0x20 + gRoomControls.roomOriginX;
object->y.HALF.HI = ((pos & 0xfc0) >> 2) + 8 + gRoomControls.roomOriginY;
object->x.HALF.HI = ((pos & 0x3f) << 4) + 0x20 + gRoomControls.origin_x;
object->y.HALF.HI = ((pos & 0xfc0) >> 2) + 8 + gRoomControls.origin_y;
object->collisionLayer = 2;
}
}
@@ -178,8 +178,8 @@ void sub_0805C294(u32 pos, u32 layer) {
if (CheckIsInteriorWithEnemies() != 0) {
object = CreateObject(ARCHWAY, 0xe, 2);
if (object != NULL) {
object->x.HALF.HI = ((pos & 0x3f) << 4) + 8 + gRoomControls.roomOriginX;
object->y.HALF.HI = ((pos & 0xfc0) >> 2) + 0x20 + gRoomControls.roomOriginY;
object->x.HALF.HI = ((pos & 0x3f) << 4) + 8 + gRoomControls.origin_x;
object->y.HALF.HI = ((pos & 0xfc0) >> 2) + 0x20 + gRoomControls.origin_y;
}
SetTileType(0xd2, pos, 1);
} else {
@@ -201,8 +201,8 @@ void sub_0805C294(u32 pos, u32 layer) {
if (object == NULL) {
return;
}
object->x.HALF.HI = ((pos & 0x3f) << 4) + 8 + gRoomControls.roomOriginX;
object->y.HALF.HI = ((pos & 0xfc0) >> 2) + 0x20 + gRoomControls.roomOriginY;
object->x.HALF.HI = ((pos & 0x3f) << 4) + 8 + gRoomControls.origin_x;
object->y.HALF.HI = ((pos & 0xfc0) >> 2) + 0x20 + gRoomControls.origin_y;
object->collisionLayer = 2;
}
}
@@ -219,8 +219,8 @@ void sub_0805C3B4(u32 pos, u32 layer) {
if (CheckIsInteriorWithEnemies() != 0) {
object = CreateObject(ARCHWAY, 0xe, 3);
if (object != NULL) {
object->x.HALF.HI = ((pos & 0x3f) << 4) + -0x10 + gRoomControls.roomOriginX;
object->y.HALF.HI = ((pos & 0xfc0) >> 2) + 8 + gRoomControls.roomOriginY;
object->x.HALF.HI = ((pos & 0x3f) << 4) + -0x10 + gRoomControls.origin_x;
object->y.HALF.HI = ((pos & 0xfc0) >> 2) + 8 + gRoomControls.origin_y;
}
SetTileType(0xe5, pos, 1);
} else {
@@ -243,8 +243,8 @@ void sub_0805C3B4(u32 pos, u32 layer) {
if (object == NULL) {
return;
}
object->x.HALF.HI = ((pos & 0x3f) << 4) + -0x10 + gRoomControls.roomOriginX;
object->y.HALF.HI = ((pos & 0xfc0) >> 2) + 8 + gRoomControls.roomOriginY;
object->x.HALF.HI = ((pos & 0x3f) << 4) + -0x10 + gRoomControls.origin_x;
object->y.HALF.HI = ((pos & 0xfc0) >> 2) + 8 + gRoomControls.origin_y;
object->collisionLayer = 2;
}
}
@@ -261,8 +261,8 @@ void sub_0805C4E0(u32 pos, u32 layer) {
if (CheckIsInteriorWithEnemies() != 0) {
object = CreateObject(ARCHWAY, 0xe, 0);
if (object != NULL) {
object->x.HALF.HI = ((pos & 0x3f) << 4) + 8 + gRoomControls.roomOriginX;
object->y.HALF.HI = ((pos & 0xfc0) >> 2) + -0x10 + gRoomControls.roomOriginY;
object->x.HALF.HI = ((pos & 0x3f) << 4) + 8 + gRoomControls.origin_x;
object->y.HALF.HI = ((pos & 0xfc0) >> 2) + -0x10 + gRoomControls.origin_y;
}
SetTileType(0xc5, pos, 1);
} else {
@@ -285,8 +285,8 @@ void sub_0805C4E0(u32 pos, u32 layer) {
if (object == NULL) {
return;
}
object->x.HALF.HI = ((pos & 0x3f) << 4) + 8 + gRoomControls.roomOriginX;
object->y.HALF.HI = ((pos & 0xfc0) >> 2) + -0x10 + gRoomControls.roomOriginY;
object->x.HALF.HI = ((pos & 0x3f) << 4) + 8 + gRoomControls.origin_x;
object->y.HALF.HI = ((pos & 0xfc0) >> 2) + -0x10 + gRoomControls.origin_y;
object->collisionLayer = 2;
}
}
+3 -3
View File
@@ -30,7 +30,7 @@ void sub_0805C6D0(Manager26* this) {
DeleteManager(&this->manager);
return;
}
this->unk_2a = gRoomControls.roomOriginY + this->manager.unk_0e;
this->unk_2a = gRoomControls.origin_y + this->manager.unk_0e;
this->manager.unk_0e = 0;
this->unk_28 = 0;
this->unk_29 = 0;
@@ -39,8 +39,8 @@ void sub_0805C6D0(Manager26* this) {
obj = CreateObject(PUSHABLE_FURNITURE, tmp->unk_01, tmp->unk_02);
if (obj) {
obj->actionDelay = tmp->unk_03;
obj->x.HALF.HI = gRoomControls.roomOriginX + tmp->unk_04;
obj->y.HALF.HI = gRoomControls.roomOriginY + tmp->unk_06;
obj->x.HALF.HI = gRoomControls.origin_x + tmp->unk_04;
obj->y.HALF.HI = gRoomControls.origin_y + tmp->unk_06;
obj->parent = (Entity*)this;
obj->collisionLayer = 1;
obj->field_0x82.HALF.HI = this->manager.unk_0e;
+2 -2
View File
@@ -19,9 +19,9 @@ void Manager27_Main(Entity* this) {
gUnk_08108D10[this->action](this);
if (CheckLocalFlagByBank(0x300, this->type + 0x67)) {
gScreenTransition.armos_data.field_0xac |= (1 << this->type);
gRoomTransition.armos_data.field_0xac |= (1 << this->type);
} else {
gScreenTransition.armos_data.field_0xac &= ~(1 << this->type);
gRoomTransition.armos_data.field_0xac &= ~(1 << this->type);
}
}
+2 -2
View File
@@ -109,8 +109,8 @@ Entity* Manager28_FindMatchingEntity(EntityData* unk1) {
u32 x, y;
Entity* i;
LinkedList* tmp;
x = unk1->xPos + gRoomControls.roomOriginX;
y = unk1->yPos + gRoomControls.roomOriginY;
x = unk1->xPos + gRoomControls.origin_x;
y = unk1->yPos + gRoomControls.origin_y;
tmp = &gEntityLists[4];
for (i = tmp->first; (u32)i != (u32)tmp; i = i->next) {
if (x == i->x.HALF.HI && y == i->y.HALF.HI && unk1->id == i->id && 3 == i->kind && unk1->type == i->type) {
+2 -2
View File
@@ -44,8 +44,8 @@ void sub_0805D02C(Manager2B* this) {
counter = 0;
while (counter < 4) {
object = CreateObject(ANGRY_STATUE, objectData[2], counter);
object->x.HALF.HI = objectData[0] + gRoomControls.roomOriginX;
object->y.HALF.HI = objectData[1] + gRoomControls.roomOriginY;
object->x.HALF.HI = objectData[0] + gRoomControls.origin_x;
object->y.HALF.HI = objectData[1] + gRoomControls.origin_y;
object->parent = (Entity*)this;
ResolveCollisionLayer(object);
this->field_0x20[counter] = object;
+12 -12
View File
@@ -20,17 +20,17 @@ void Manager2C_Main(Manager2C* manager) {
manager->field_0x3a = 0;
}
if (((CheckPlayerInRegion(manager->field_0x38, manager->field_0x3a, 0x14, 0x40) != 0) &&
(((gPlayerEntity.y.HALF.HI - gRoomControls.roomOriginY) + gPlayerEntity.z.HALF.HI) < 0)) &&
(gRoomControls.roomScrollY == gRoomControls.roomOriginY)) {
MemClear(&gScreenTransition.player_status, 0x20);
gScreenTransition.transitioningOut = 1;
gScreenTransition.transitionType = TRANSITION_DEFAULT;
gScreenTransition.player_status.spawn_type = 0xb;
gScreenTransition.player_status.area_next = manager->manager.unk_0b;
gScreenTransition.player_status.room_next = manager->manager.unk_0e;
gScreenTransition.player_status.start_anim = manager->field_0x37;
gScreenTransition.player_status.start_pos_x = manager->field_0x3c;
gScreenTransition.player_status.start_pos_y = manager->field_0x3e;
gScreenTransition.player_status.layer = manager->field_0x36;
(((gPlayerEntity.y.HALF.HI - gRoomControls.origin_y) + gPlayerEntity.z.HALF.HI) < 0)) &&
(gRoomControls.scroll_y == gRoomControls.origin_y)) {
MemClear(&gRoomTransition.player_status, 0x20);
gRoomTransition.transitioningOut = 1;
gRoomTransition.type = TRANSITION_DEFAULT;
gRoomTransition.player_status.spawn_type = 0xb;
gRoomTransition.player_status.area_next = manager->manager.unk_0b;
gRoomTransition.player_status.room_next = manager->manager.unk_0e;
gRoomTransition.player_status.start_anim = manager->field_0x37;
gRoomTransition.player_status.start_pos_x = manager->field_0x3c;
gRoomTransition.player_status.start_pos_y = manager->field_0x3e;
gRoomTransition.player_status.layer = manager->field_0x36;
}
}
+2 -2
View File
@@ -4,8 +4,8 @@
void Manager2D_Main(Entity* this) {
SetTile(0x4014, 0x5c3, 1);
if ((gRoomControls.roomOriginY + 200 < gPlayerEntity.y.HALF.HI) &&
((u32)(gPlayerEntity.x.HALF.HI - gRoomControls.roomOriginX) - 0x30 < 0x11)) {
if ((gRoomControls.origin_y + 200 < gPlayerEntity.y.HALF.HI) &&
((u32)(gPlayerEntity.x.HALF.HI - gRoomControls.origin_x) - 0x30 < 0x11)) {
gPlayerEntity.collisionLayer = 3;
UpdateSpriteForCollisionLayer(&gPlayerEntity);
}
+4 -4
View File
@@ -25,8 +25,8 @@ void Manager2F_Main(Manager* this) {
} else {
gRoomControls.bg3OffsetX.WORD -= 0x4000;
gRoomControls.bg3OffsetY.WORD -= 0x2000;
gScreen.bg3.xOffset = gRoomControls.roomScrollX + gRoomControls.bg3OffsetX.HALF.HI;
gScreen.bg3.yOffset = gRoomControls.roomScrollY + gRoomControls.bg3OffsetY.HALF.HI;
gScreen.bg3.xOffset = gRoomControls.scroll_x + gRoomControls.bg3OffsetX.HALF.HI;
gScreen.bg3.yOffset = gRoomControls.scroll_y + gRoomControls.bg3OffsetY.HALF.HI;
}
}
}
@@ -35,6 +35,6 @@ void sub_0805D470(Manager* this) {
LoadGfxGroup(0x4c);
gScreen.bg3.control = 0x1e07;
gScreen.lcd.displayControl |= DISPCNT_BG3_ON;
gScreen.bg3.xOffset = gRoomControls.roomScrollX + gRoomControls.bg3OffsetX.HALF.HI;
gScreen.bg3.yOffset = gRoomControls.roomScrollY + gRoomControls.bg3OffsetY.HALF.HI;
gScreen.bg3.xOffset = gRoomControls.scroll_x + gRoomControls.bg3OffsetX.HALF.HI;
gScreen.bg3.yOffset = gRoomControls.scroll_y + gRoomControls.bg3OffsetY.HALF.HI;
}
+3 -3
View File
@@ -33,8 +33,8 @@ void Manager3_Main(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;
this->unk_20 = this->unk_38 + gRoomControls.origin_x - 0x20;
this->unk_24 = this->unk_3a + gRoomControls.origin_y - 0x20;
return;
}
if (CheckPlayerProximity(this->unk_20, this->unk_24, 0x40, 0x40)) {
@@ -54,7 +54,7 @@ void Manager3_Main(Manager3* this) {
}
}
if (sub_080002C0(this->unk_38, this->unk_3a, this->manager.unk_0e) == 0x3d) {
CreateMagicSparkles(this->unk_38 + gRoomControls.roomOriginX, this->unk_3a + gRoomControls.roomOriginY,
CreateMagicSparkles(this->unk_38 + gRoomControls.origin_x, this->unk_3a + gRoomControls.origin_y,
this->manager.unk_0e);
if (!this->manager.unk_0f) {
this->manager.unk_0f = 1;
+2 -2
View File
@@ -65,8 +65,8 @@ void Manager31_Main(Manager31* this) {
if (object != NULL) {
object->actionDelay = 1;
object->field_0xf = count;
object->x.HALF.HI = spawnData->x + gRoomControls.roomOriginX;
object->y.HALF.HI = spawnData->y + gRoomControls.roomOriginY;
object->x.HALF.HI = spawnData->x + gRoomControls.origin_x;
object->y.HALF.HI = spawnData->y + gRoomControls.origin_y;
object->field_0x80.HWORD = spawnData->x;
object->field_0x82.HWORD = spawnData->y;
object->collisionLayer = 1;
+4 -4
View File
@@ -25,7 +25,7 @@ extern void sub_0805622C(struct BgAffineDstData*, u32, u32);
void Manager32_Main(Manager32* this) {
gUnk_08108D7C[this->manager.action](this);
this->field_0x24 = gScreenTransition.frameCount << 4;
this->field_0x24 = gRoomTransition.frameCount << 4;
sub_0805D9D8(this);
sub_0805DA08(this->field_0x20, this->field_0x28, this->field_0x24);
}
@@ -36,7 +36,7 @@ void sub_0805D7DC(Manager32* this) {
this->manager.action = (this->manager.unk_0a == 0) ? 1 : 2;
this->field_0x20 = 0;
this->field_0x24 = 0;
switch (gRoomControls.areaID) {
switch (gRoomControls.area) {
case 7:
default:
index = 0;
@@ -149,8 +149,8 @@ void sub_0805D9D8(Manager32* this) {
// TODO find out the actual type of the parent of this manager.
Manager* pMVar1 = this->manager.parent;
if (pMVar1 != NULL) {
gScreen.bg3.xOffset = 0x80 - (*(s16*)&pMVar1[1].unk_0e - gRoomControls.roomScrollX);
gScreen.bg3.yOffset = 0x8c - (*(s16*)(pMVar1[1].unk_11 + 1) - gRoomControls.roomScrollY);
gScreen.bg3.xOffset = 0x80 - (*(s16*)&pMVar1[1].unk_0e - gRoomControls.scroll_x);
gScreen.bg3.yOffset = 0x8c - (*(s16*)(pMVar1[1].unk_11 + 1) - gRoomControls.scroll_y);
}
}
+4 -4
View File
@@ -6,9 +6,9 @@
void Manager33_Main(Manager* this) {
RoomControls* roomControls = &gRoomControls;
u32 a = roomControls->roomOriginX + 0x1f8;
u32 a = roomControls->origin_x + 0x1f8;
u32 x = (a - gPlayerEntity.x.HALF.HI) + 0x10;
u32 b = roomControls->roomOriginY + 0x140;
u32 b = roomControls->origin_y + 0x140;
u32 y = (b - gPlayerEntity.y.HALF.HI) + 0x10;
if (this->action == 0) {
if (x < 0x20 && y < 0x20 && gPlayerEntity.z.HALF.HI < -0x18 && gPlayerState.framestate == PL_STATE_CAPE) {
@@ -20,8 +20,8 @@ void Manager33_Main(Manager* this) {
if (--this->unk_0e == 0) {
Entity* object = CreateObject(OBJECT_96, 1, 0);
if (object != NULL) {
object->x.HALF.HI = roomControls->roomOriginX + 0x1f8;
object->y.HALF.HI = roomControls->roomOriginY + 0x140;
object->x.HALF.HI = roomControls->origin_x + 0x1f8;
object->y.HALF.HI = roomControls->origin_y + 0x140;
object->z.HALF.HI = 0xffe8;
}
DeleteThisEntity();
+1 -1
View File
@@ -22,7 +22,7 @@ void Manager34_Main(Manager34* this) {
void sub_0805DBB4(Manager34* this) {
this->manager.action = 1;
this->field_0x20 = gScreenTransition.field_0x3d * 0x3c;
this->field_0x20 = gRoomTransition.field_0x3d * 0x3c;
}
void sub_0805DBCC(Manager34* this) {
+5 -5
View File
@@ -41,13 +41,13 @@ void sub_0805DCC8(Manager35* this) {
if (this->manager.unk_0e == 0) {
this->manager.unk_0e = 0x1e;
}
this->manager.parent = (Manager*)gRoomControls.cameraTarget;
this->manager.parent = (Manager*)gRoomControls.camera_target;
object = CreateObject(OBJECT_69, 0, 0);
if (object != NULL) {
object->x.HALF.HI = this->field_0x38 + gRoomControls.roomOriginX;
object->y.HALF.HI = this->field_0x3a + gRoomControls.roomOriginY;
object->x.HALF.HI = this->field_0x38 + gRoomControls.origin_x;
object->y.HALF.HI = this->field_0x3a + gRoomControls.origin_y;
*(Entity**)this->manager.unk_18 = object;
gRoomControls.cameraTarget = object;
gRoomControls.camera_target = object;
RequestPriorityDuration(object, 0x1e);
}
}
@@ -68,7 +68,7 @@ void sub_0805DD68(Manager35* this) {
RequestPriorityDuration(0, 8);
if (this->field_0x36 != 0) {
if (--this->field_0x36 == 0) {
gRoomControls.cameraTarget = (Entity*)this->manager.parent;
gRoomControls.camera_target = (Entity*)this->manager.parent;
}
} else {
if ((gRoomControls.scroll_flags & 4) == 0) {
+14 -14
View File
@@ -33,10 +33,10 @@ void sub_0805DE68(Manager* this) {
DeleteThisEntity();
}
this->action = 1;
gScreenTransition.field_0x38 = 0;
gScreenTransition.field_0x39 = 0x0f;
*(u8*)&gScreenTransition.field_0x3a = 0x20;
*((u8*)&gScreenTransition.field_0x3a + 1) = 0x20;
gRoomTransition.field_0x38 = 0;
gRoomTransition.field_0x39 = 0x0f;
*(u8*)&gRoomTransition.field_0x3a = 0x20;
*((u8*)&gRoomTransition.field_0x3a + 1) = 0x20;
#if !defined(EU) && !defined(JP)
gSave.unk48C[3] = 0x1194;
#endif
@@ -47,8 +47,8 @@ void sub_0805DEB8(Manager* this) {
s32 distY;
Entity* object;
distX = gPlayerEntity.x.HALF.HI - (gRoomControls.roomOriginX + 0x88);
distY = gPlayerEntity.y.HALF.HI - (gRoomControls.roomOriginY + 0x40);
distX = gPlayerEntity.x.HALF.HI - (gRoomControls.origin_x + 0x88);
distY = gPlayerEntity.y.HALF.HI - (gRoomControls.origin_y + 0x40);
if (distX * distX + distY * distY < 0x901) {
this->action = 2;
this->unk_0d = 0;
@@ -57,8 +57,8 @@ void sub_0805DEB8(Manager* this) {
sub_08078B48();
object = CreateObject(OBJECT_64, 0, 0);
if (object != NULL) {
object->x.HALF.HI = gRoomControls.roomOriginX + 0x88;
object->y.HALF.HI = gRoomControls.roomOriginY + 0x48;
object->x.HALF.HI = gRoomControls.origin_x + 0x88;
object->y.HALF.HI = gRoomControls.origin_y + 0x48;
}
object = CreateSpeechBubbleExclamationMark(&gPlayerEntity, 8, 0xfffffff0);
if (object != NULL) {
@@ -71,8 +71,8 @@ void sub_0805DEB8(Manager* this) {
void sub_0805DF4C(Manager* this) {
gPlayerEntity.animationState = 0;
if (gPlayerEntity.z.HALF.HI != 0) {
if (gPlayerEntity.y.HALF.HI < (gRoomControls.roomOriginY + 0x48)) {
gPlayerEntity.y.HALF.HI = gRoomControls.roomOriginY + 0x48;
if (gPlayerEntity.y.HALF.HI < (gRoomControls.origin_y + 0x48)) {
gPlayerEntity.y.HALF.HI = gRoomControls.origin_y + 0x48;
}
} else {
if (--this->unk_0e == 0) {
@@ -109,11 +109,11 @@ void sub_0805DFE8(Manager* this) {
void sub_0805E000(Manager* this) {
Entity* enemy = CreateEnemy(VAATI_WRATH, 0);
if (enemy != NULL) {
enemy->x.HALF.HI = gRoomControls.roomOriginX + 0xb0;
enemy->y.HALF.HI = gRoomControls.roomOriginY + 0x48;
enemy->x.HALF.HI = gRoomControls.origin_x + 0xb0;
enemy->y.HALF.HI = gRoomControls.origin_y + 0x48;
enemy->collisionLayer = 1;
UpdateSpriteForCollisionLayer(enemy);
if ((gScreenTransition.field_0x38 & 1) != 0) {
if ((gRoomTransition.field_0x38 & 1) != 0) {
DeleteThisEntity();
}
*(Entity**)this->unk_18 = enemy;
@@ -134,5 +134,5 @@ void sub_0805E078(Manager* this) {
void sub_0805E094(void) {
SetInitializationPriority();
sub_0808091C((ScreenTransitionData*)&gUnk_0813AC34, 7);
sub_0808091C((ScreenTransitionData*)&gUnk_0813AC34, TRANSITION_7);
}
+2 -2
View File
@@ -36,7 +36,7 @@ void sub_0805E1F8(u32, u32);
void Manager39_Main(Manager39* this) {
gUnk_08108E28[this->manager.action](this);
if ((gRoomControls.roomID != this->unk_20) || (gMessage.doTextBox & 0x7F)) {
if ((gRoomControls.room != this->unk_20) || (gMessage.doTextBox & 0x7F)) {
sub_0805E1D8(this);
}
}
@@ -44,7 +44,7 @@ void Manager39_Main(Manager39* this) {
void sub_0805E140(Manager39* this) {
this->manager.unk_10 |= 0x20;
this->manager.action = 1;
this->unk_20 = gRoomControls.roomID;
this->unk_20 = gRoomControls.room;
this->manager.unk_0e = 0x78;
this->manager.unk_0f = 0x3c;
SetDefaultPriority((Entity*)this, PRIO_HIGHEST);
+29 -29
View File
@@ -18,29 +18,29 @@ extern DiggingCaveEntrance* sub_08057AA8(DiggingCaveEntrance*, int);
void sub_0805786C(Manager* this) {
DiggingCaveEntrance* tmp;
u8 roomID;
u8 areaID;
u8 room;
u8 area;
u16 uVar = 0x81 << 7;
sub_080805F8();
if (gUnk_03004030.unk_08 != 0) {
if (gUnk_03004030.unk_00 == 0) {
gUnk_03004030.unk_0a = 0xFF;
roomID = gRoomControls.roomID;
tmp = diggingCaveEntrances[gRoomControls.areaID];
tmp = sub_08057AA8(tmp, roomID);
room = gRoomControls.room;
tmp = diggingCaveEntrances[gRoomControls.area];
tmp = sub_08057AA8(tmp, room);
if (tmp != 0) {
roomID = tmp->target_roomID;
tmp = diggingCaveEntrances[tmp->target_areaID];
tmp = sub_08057AA8(tmp, roomID);
room = tmp->target_room;
tmp = diggingCaveEntrances[tmp->target_area];
tmp = sub_08057AA8(tmp, room);
if (tmp != 0) {
gUnk_03004030.unk_00 = tmp;
}
}
}
roomID = gRoomControls.roomID;
tmp = diggingCaveEntrances[gRoomControls.areaID];
room = gRoomControls.room;
tmp = diggingCaveEntrances[gRoomControls.area];
uVar = 0x81 << 7;
for (tmp = sub_08057AA8(tmp, roomID); tmp != 0; tmp = sub_08057AA8(tmp, roomID)) {
for (tmp = sub_08057AA8(tmp, room); tmp != 0; tmp = sub_08057AA8(tmp, room)) {
SetTile(uVar, tmp->unk_00 + 0x3F, 1);
SetTile(uVar, tmp->unk_00 + 0x40, 1);
SetTile(uVar, tmp->unk_00 + 0x41, 1);
@@ -54,10 +54,10 @@ extern u32 sub_0805795C(Manager*, DiggingCaveEntrance*);
void sub_08057920(Manager* this) {
DiggingCaveEntrance* tmp;
u8 roomID;
roomID = gRoomControls.roomID;
for (tmp = diggingCaveEntrances[gRoomControls.areaID];
(tmp = sub_08057AA8(tmp, roomID)) != 0 && !sub_0805795C(this, tmp); tmp++)
u8 room;
room = gRoomControls.room;
for (tmp = diggingCaveEntrances[gRoomControls.area];
(tmp = sub_08057AA8(tmp, room)) != 0 && !sub_0805795C(this, tmp); tmp++)
;
}
@@ -67,8 +67,8 @@ u32 sub_0805795C(Manager* this, DiggingCaveEntrance* entr) {
u16 offsetX, offsetY, offsetX2, offsetY2;
u32 tmp, tmp2;
if (gUnk_03004030.unk_08) {
offsetX = gPlayerEntity.x.HALF.HI - gRoomControls.roomOriginX;
offsetY = gPlayerEntity.y.HALF.HI - gRoomControls.roomOriginY;
offsetX = gPlayerEntity.x.HALF.HI - gRoomControls.origin_x;
offsetY = gPlayerEntity.y.HALF.HI - gRoomControls.origin_y;
offsetX2 = (entr->unk_00 & 0x3F) * 16 + 8;
offsetY2 = ((entr->unk_00 & 0xFC0) >> 6) * 16 + 0x18;
tmp = offsetX - offsetX2;
@@ -81,7 +81,7 @@ u32 sub_0805795C(Manager* this, DiggingCaveEntrance* entr) {
} else {
if (COORD_TO_TILE(&gPlayerEntity) != entr->unk_00)
return 0;
offsetY2 = gRoomControls.roomOriginY + ((entr->unk_00 >> 6) << 4) + 6;
offsetY2 = gRoomControls.origin_y + ((entr->unk_00 >> 6) << 4) + 6;
if (gPlayerEntity.y.HALF.HI >= offsetY2)
return 0;
sub_08057A18(this, entr);
@@ -98,29 +98,29 @@ void sub_08057A18(Manager* this, DiggingCaveEntrance* entr) {
u16 tmp;
SetInitializationPriority();
gUnk_03004030.unk_0a = gUnk_03004030.unk_09;
gUnk_03004030.unk_09 = gRoomControls.areaID;
gScreenTransition.player_status.area_next = entr->target_areaID;
gScreenTransition.player_status.room_next = entr->target_roomID;
gRoomControls.areaID = entr->target_areaID;
gRoomControls.roomID = entr->target_roomID;
gUnk_03004030.unk_09 = gRoomControls.area;
gRoomTransition.player_status.area_next = entr->target_area;
gRoomTransition.player_status.room_next = entr->target_room;
gRoomControls.area = entr->target_area;
gRoomControls.room = entr->target_room;
gUnk_03004030.unk_00 = entr;
gUnk_03004030.unk_04 = gPlayerEntity.x.HALF.HI - gRoomControls.roomOriginX - ((entr->unk_00 & 0x3F) * 16);
gUnk_03004030.unk_06 = gPlayerEntity.y.HALF.HI - gRoomControls.roomOriginY - ((entr->unk_00 & 0xFC0) >> 2);
gUnk_03004030.unk_04 = gPlayerEntity.x.HALF.HI - gRoomControls.origin_x - ((entr->unk_00 & 0x3F) * 16);
gUnk_03004030.unk_06 = gPlayerEntity.y.HALF.HI - gRoomControls.origin_y - ((entr->unk_00 & 0xFC0) >> 2);
tmp = gUnk_03004030.unk_08;
if (!tmp) {
if ((entr->target_roomID | 0x80) != gUnk_03004030.unk_0b) {
if ((entr->target_room | 0x80) != gUnk_03004030.unk_0b) {
gUnk_02034480.unk_00 = gUnk_03004030.unk_08;
}
gUnk_03004030.unk_0b = entr->target_roomID | 0x80;
gUnk_03004030.unk_0b = entr->target_room | 0x80;
}
sub_08080930(entr->unk_03);
DeleteManager(this);
}
#endif
DiggingCaveEntrance* sub_08057AA8(DiggingCaveEntrance* entr, int roomID) {
DiggingCaveEntrance* sub_08057AA8(DiggingCaveEntrance* entr, int room) {
for (; entr->unk_00 != 0xFFFF; entr++) {
if (entr->source_roomID == roomID)
if (entr->source_room == room)
return entr;
}
return 0;
+1 -1
View File
@@ -74,7 +74,7 @@ void Manager7_Main(Manager7* this) {
this->manager.unk_0e = 0;
}
}
if (gRoomControls.unk2)
if (gRoomControls.reload_flags)
return;
#ifndef JP
tmp = this->unk_20;
+8 -8
View File
@@ -41,10 +41,10 @@ extern u8 gUnk_02006F00[];
void sub_08057F20(Manager8* this) {
u32 tmp;
tmp = gRoomControls.roomScrollX - gRoomControls.roomOriginX;
tmp = gRoomControls.scroll_x - gRoomControls.origin_x;
tmp = tmp + (tmp >> 3) + ((0x400 - gRoomControls.width) / 2);
gScreen.bg3.xOffset = tmp & 0xF;
gScreen.bg3.yOffset = 0x30 - ((0x30 - (gRoomControls.roomScrollY - gRoomControls.roomOriginY)) >> 2);
gScreen.bg3.yOffset = 0x30 - ((0x30 - (gRoomControls.scroll_y - gRoomControls.origin_y)) >> 2);
gScreen.bg3.tilemap = gBG3Buffer;
sub_08058004(tmp, gUnk_02006F00, gBG3Buffer);
tmp = ((tmp >> 4) << 1);
@@ -52,10 +52,10 @@ void sub_08057F20(Manager8* this) {
this->unk_38 = tmp;
gScreen.bg3.updated = 1;
}
tmp = (gRoomControls.roomScrollX - gRoomControls.roomOriginX);
tmp = (gRoomControls.scroll_x - gRoomControls.origin_x);
tmp = tmp + (tmp >> 2) + ((0x400 - gRoomControls.width) / 2);
gScreen.bg1.xOffset = tmp & 0xF;
gScreen.bg1.yOffset = 0x30 - ((0x30 - (gRoomControls.roomScrollY - gRoomControls.roomOriginY)) >> 1);
gScreen.bg1.yOffset = 0x30 - ((0x30 - (gRoomControls.scroll_y - gRoomControls.origin_y)) >> 1);
gScreen.bg1.tilemap = gBG3Buffer + 0x400;
sub_08058004(tmp, gUnk_02006F00 + 0x2000, gBG3Buffer + 0x400);
tmp = ((tmp >> 4) << 1);
@@ -110,19 +110,19 @@ void sub_080580B0(u32 unk1) {
LoadGfxGroup(unk1);
gRoomVars.unk_10[0] = unk1;
sub_08058034();
tmp = gRoomControls.roomScrollX - gRoomControls.roomOriginX; // r7
tmp = gRoomControls.scroll_x - gRoomControls.origin_x; // r7
tmp = tmp + (tmp >> 3) + (0x400 - gRoomControls.width) / 2;
sub_08058004(tmp, gUnk_02006F00, gBG3Buffer);
gScreen.bg3.xOffset = tmp & 0xF;
gScreen.bg3.yOffset = 0x30 - ((0x30 - (gRoomControls.roomScrollY - gRoomControls.roomOriginY)) >> 1); //?
gScreen.bg3.yOffset = 0x30 - ((0x30 - (gRoomControls.scroll_y - gRoomControls.origin_y)) >> 1); //?
gScreen.bg3.control = 0x1D09;
gScreen.bg3.tilemap = gBG3Buffer;
gScreen.bg3.updated = 1;
tmp = gRoomControls.roomScrollX - gRoomControls.roomOriginX; // r7
tmp = gRoomControls.scroll_x - gRoomControls.origin_x; // r7
tmp = tmp + (tmp >> 2) + (0x400 - gRoomControls.width) / 2;
sub_08058004(tmp, gUnk_02006F00 + 0x2000, gBG3Buffer + 0x400);
gScreen.bg1.xOffset = tmp & 0xF;
gScreen.bg1.yOffset = 0x30 - ((0x30 - (gRoomControls.roomScrollY - gRoomControls.roomOriginY)) >> 1); //?
gScreen.bg1.yOffset = 0x30 - ((0x30 - (gRoomControls.scroll_y - gRoomControls.origin_y)) >> 1); //?
gScreen.bg1.control = 0x1E09;
gScreen.bg1.tilemap = gBG3Buffer + 0x400;
gScreen.bg1.updated = 1;
+3 -3
View File
@@ -47,9 +47,9 @@ u32 sub_08058244(int i) {
s32 tmp2;
u32 tmp3;
s32 tmp4;
tmp = ((gRoomControls.roomScrollY - gRoomControls.roomOriginY) * 0x20) / (gRoomControls.height - 0xa0);
gScreen.bg1.yOffset = gRoomControls.roomOriginY + tmp;
tmp = (((gRoomControls.roomScrollX - gRoomControls.roomOriginX) * gUnk_081081EC[i]) / (gRoomControls.width - 0xf0));
tmp = ((gRoomControls.scroll_y - gRoomControls.origin_y) * 0x20) / (gRoomControls.height - 0xa0);
gScreen.bg1.yOffset = gRoomControls.origin_y + tmp;
tmp = (((gRoomControls.scroll_x - gRoomControls.origin_x) * gUnk_081081EC[i]) / (gRoomControls.width - 0xf0));
gScreen.bg1.xOffset = tmp & 0xf;
return tmp;
}
+19 -19
View File
@@ -77,7 +77,7 @@ void sub_08058894(ManagerC* this) {
void sub_080588CC(ManagerC* this) {
sub_08058CFC();
sub_08058A04(this);
if (gScreenTransition.transitioningOut) {
if (gRoomTransition.transitioningOut) {
this->manager.action = 2;
} else {
sub_080588F8(this);
@@ -111,7 +111,7 @@ void sub_080588F8(ManagerC* this) {
}
}
if (this->manager.unk_0e) {
s32 tmp = gPlayerEntity.y.HALF.HI - gRoomControls.roomOriginY;
s32 tmp = gPlayerEntity.y.HALF.HI - gRoomControls.origin_y;
u32 tmp2;
tmp2 = (((unsigned)(tmp - 0x50 < 0 ? 0x50 - tmp : tmp - 0x50) >> 3) * 0x3000) + 0x4000;
if (this->manager.unk_0f == 0) {
@@ -152,14 +152,14 @@ const struct_08108228 gUnk_081082B8[6] = { { 0xA0, 0x88, 0x20, 0x0A }, { 0x9E, 0
{ 0x98, 0x64, 0x1E, 0x1E }, { 0x98, 0x6A, 0x1C, 0x10 } };
void sub_08058A04(ManagerC* this) {
s32 tmp = gPlayerEntity.x.HALF.HI - gRoomControls.roomOriginX;
s32 tmp2 = gPlayerEntity.y.HALF.HI - gRoomControls.roomOriginY;
s32 tmp = gPlayerEntity.x.HALF.HI - gRoomControls.origin_x;
s32 tmp2 = gPlayerEntity.y.HALF.HI - gRoomControls.origin_y;
if ((this->unk_20 - 0x118 < 0xDu) && CheckGlobalFlag(LV1TARU_OPEN) && (tmp - 0x6d < 0x17u) &&
(tmp2 - 0x45 < 0x17u) && (gPlayerEntity.z.HALF.HI == 0)) {
gPlayerState.queued_action = PLAYER_FALL;
gPlayerState.field_0x38 = 0;
gPlayerEntity.x.HALF.HI = gRoomControls.roomOriginX + 0x78;
gPlayerEntity.y.HALF.HI = gRoomControls.roomOriginY + 0x50;
gPlayerEntity.x.HALF.HI = gRoomControls.origin_x + 0x78;
gPlayerEntity.y.HALF.HI = gRoomControls.origin_y + 0x50;
return;
}
if (tmp < 0x78) {
@@ -194,8 +194,8 @@ u32 sub_08058B08(ManagerC* this, u32 unk1, u32 unk2, const struct_08108228* unk3
tmp -= unk1;
tmp >>= 3;
unk3 += tmp;
tmp2 = (gPlayerEntity.x.HALF.HI - gRoomControls.roomOriginX - unk3->unk_0);
tmp3 = (gPlayerEntity.y.HALF.HI - gRoomControls.roomOriginY - unk3->unk_2);
tmp2 = (gPlayerEntity.x.HALF.HI - gRoomControls.origin_x - unk3->unk_0);
tmp3 = (gPlayerEntity.y.HALF.HI - gRoomControls.origin_y - unk3->unk_2);
return ((tmp2 < unk3->unk_4) && (tmp3 < unk3->unk_6));
}
}
@@ -203,14 +203,14 @@ u32 sub_08058B08(ManagerC* this, u32 unk1, u32 unk2, const struct_08108228* unk3
const u16 gUnk_081082E8[0xC] = { 0xB8, 0x80, 0x0, 0xB8, 0x110, 0x2, 0x118, 0x80, 0x2, 0x118, 0x110, 0x0 };
void sub_08058B5C(ManagerC* this, u32 unk1) {
gScreenTransition.transitioningOut = 1;
gScreenTransition.transitionType = TRANSITION_DEFAULT;
gScreenTransition.player_status.spawn_type = 4;
gScreenTransition.player_status.area_next = gRoomControls.areaID;
gScreenTransition.player_status.room_next = 6;
gScreenTransition.player_status.start_anim = unk1 & 1 ? 4 : 0;
gScreenTransition.player_status.start_pos_x = gUnk_081082E8[unk1 * 3];
gScreenTransition.player_status.start_pos_y = gUnk_081082E8[unk1 * 3 + 1];
gRoomTransition.transitioningOut = 1;
gRoomTransition.type = TRANSITION_DEFAULT;
gRoomTransition.player_status.spawn_type = 4;
gRoomTransition.player_status.area_next = gRoomControls.area;
gRoomTransition.player_status.room_next = 6;
gRoomTransition.player_status.start_anim = unk1 & 1 ? 4 : 0;
gRoomTransition.player_status.start_pos_x = gUnk_081082E8[unk1 * 3];
gRoomTransition.player_status.start_pos_y = gUnk_081082E8[unk1 * 3 + 1];
gSave.unk7 = gUnk_081082E8[unk1 * 3 + 2];
SoundReq(SFX_STAIRS);
}
@@ -250,8 +250,8 @@ void sub_08058BC8(ManagerC* this) {
const u16 gUnk_08108300[4] = { 0xA4, 0x4C, 0xF4, 0x9C };
void sub_08058CB0(ManagerC* this) {
u32 tmp = gPlayerEntity.x.HALF.HI - gRoomControls.roomOriginX;
u32 tmp2 = gPlayerEntity.y.HALF.HI - gRoomControls.roomOriginY;
u32 tmp = gPlayerEntity.x.HALF.HI - gRoomControls.origin_x;
u32 tmp2 = gPlayerEntity.y.HALF.HI - gRoomControls.origin_y;
u32 tmp3;
if (tmp < 0x78) {
tmp3 = 1;
@@ -268,7 +268,7 @@ void sub_08058CB0(ManagerC* this) {
}
void sub_08058CFC() {
u32 tmp = gPlayerEntity.y.HALF.HI - gRoomControls.roomScrollY;
u32 tmp = gPlayerEntity.y.HALF.HI - gRoomControls.scroll_y;
if (tmp < 0x4C) {
sub_080044AE(&gPlayerEntity, 0xC0, 0x10);
}
+12 -12
View File
@@ -127,8 +127,8 @@ void sub_08058F84(u32 unk0, u32 unk1) {
tmp = CreateObject(OBJECT_21, 0, 0);
if (!tmp)
return;
tmp->x.HALF.HI = gRoomControls.roomOriginX + unk0;
tmp->y.HALF.HI = gRoomControls.roomOriginY + unk1;
tmp->x.HALF.HI = gRoomControls.origin_x + unk0;
tmp->y.HALF.HI = gRoomControls.origin_y + unk1;
}
void sub_08058FB0(ManagerF* this) {
@@ -180,8 +180,8 @@ void sub_08059064(ManagerF* this) {
if (!tmp)
return;
tmp->actionDelay = 2;
tmp->x.HALF.HI = this->unk_38 + gRoomControls.roomOriginX;
tmp->y.HALF.HI = this->unk_3a + gRoomControls.roomOriginY;
tmp->x.HALF.HI = this->unk_38 + gRoomControls.origin_x;
tmp->y.HALF.HI = this->unk_3a + gRoomControls.origin_y;
}
void sub_08059094(ManagerF* this) {
@@ -294,7 +294,7 @@ void sub_08059278() {
void sub_08059290(ManagerF* this) {
this->manager.action = 1;
gRoomControls.cameraTarget = &gPlayerEntity;
gRoomControls.camera_target = &gPlayerEntity;
}
void sub_080592A4(ManagerF* this) {
@@ -329,8 +329,8 @@ void sub_0805930C(ManagerF* this) {
#endif
if (!tmp)
return;
tmp->x.HALF.HI = this->unk_38 + gRoomControls.roomOriginX;
tmp->y.HALF.HI = this->unk_3a + gRoomControls.roomOriginY;
tmp->x.HALF.HI = this->unk_38 + gRoomControls.origin_x;
tmp->y.HALF.HI = this->unk_3a + gRoomControls.origin_y;
tmp->collisionLayer = 1;
}
@@ -351,7 +351,7 @@ void sub_08059368(ManagerF* this) {
void sub_0805938C(ManagerF* this) {
if (sub_080593CC(this)) {
if (++this->manager.unk_0e >= 8) {
sub_080806BC(this->unk_38 - gRoomControls.roomOriginX, this->unk_3a - gRoomControls.roomOriginY, 0xFF, 0xA);
sub_080806BC(this->unk_38 - gRoomControls.origin_x, this->unk_3a - gRoomControls.origin_y, 0xFF, 0xA);
}
} else {
this->manager.unk_0e = 0;
@@ -377,8 +377,8 @@ void sub_08059424(ManagerF* this) {
if (!tmp)
return;
tmp->collisionLayer = 2;
tmp->x.HALF.HI = this->unk_38 + gRoomControls.roomOriginX;
tmp->y.HALF.HI = this->unk_3a + gRoomControls.roomOriginY;
tmp->x.HALF.HI = this->unk_38 + gRoomControls.origin_x;
tmp->y.HALF.HI = this->unk_3a + gRoomControls.origin_y;
EnqueueSFX(0x1B0);
DeleteThisEntity();
}
@@ -386,10 +386,10 @@ void sub_08059424(ManagerF* this) {
void sub_0805947C(ManagerF* this) {
if (!CheckFlags(this->unk_3e)) {
SetPlayerControl(3);
if (gRoomControls.unk2)
if (gRoomControls.reload_flags)
return;
if (gRoomVars.field_0x0) {
StartPlayerScript(gUnk_08108380[gRoomControls.unk_10]);
StartPlayerScript(gUnk_08108380[gRoomControls.scroll_direction]);
} else {
StartPlayerScript(gUnk_08108380[gPlayerEntity.animationState >> 1]);
}
+8 -8
View File
@@ -135,8 +135,8 @@ void MessageClose(void) {
}
void MessageFromTarget(u32 index) {
if (gRoomControls.cameraTarget != NULL) {
MessageNoOverlap(index, gRoomControls.cameraTarget);
if (gRoomControls.camera_target != NULL) {
MessageNoOverlap(index, gRoomControls.camera_target);
} else {
MessageRequest(index);
}
@@ -151,7 +151,7 @@ void MessageNoOverlap(u32 index, Entity* entity) {
y = entity->y.HALF.HI;
height = entity->z.HALF.HI;
if (((y + height) - gRoomControls.roomScrollY) > 0x58) {
if (((y + height) - gRoomControls.scroll_y) > 0x58) {
gMessage.textWindowPosY = 1;
}
}
@@ -237,16 +237,16 @@ NONMATCH("asm/non_matching/textbox/TextBoxFunction1.inc", static u32 MsgInit(voi
MemClear((void*)&gTextRender, sizeof(gTextRender));
MemCopy(&gMessage, &gTextRender, sizeof(gMessage));
if (gTextRender.message.textSpeed == 99) {
gTextRender.message.textSpeed = gSaveHeader->messageSpeed;
gTextRender.message.textSpeed = gSaveHeader->msg_speed;
}
gTextRender._9c = 0xff;
sub_0805EEB4(&gTextRender.curToken, gTextRender.message.textIndex);
gTextRender.playerName[0] = 2;
gTextRender.playerName[1] = 0xe; // Green text color
dest = &gTextRender.playerName[2];
gTextRender.player_name[0] = 2;
gTextRender.player_name[1] = 0xe; // Green text color
dest = &gTextRender.player_name[2];
for (i = 0; i < FILENAME_LENGTH; ++i) {
char c = gSave.playerName[i];
char c = gSave.name[i];
if (c == '\0')
break;
*dest++ = c;
+2 -2
View File
@@ -161,8 +161,8 @@ NONMATCH("asm/non_matching/arm_proxy/NPCUpdate.inc", void NPCUpdate(Entity* this
gNPCFunctions[this->id][1](this);
if ((this->health & 0x7f) != 0) {
u32 temp = this->health & 0x7f;
gUnk_02031EC0[temp * 2 - 2].x = this->x.HALF.HI - gRoomControls.roomOriginX;
gUnk_02031EC0[temp * 2 - 2].y = this->y.HALF.HI - gRoomControls.roomOriginY;
gUnk_02031EC0[temp * 2 - 2].x = this->x.HALF.HI - gRoomControls.origin_x;
gUnk_02031EC0[temp * 2 - 2].y = this->y.HALF.HI - gRoomControls.origin_y;
}
DrawEntity(this);
}
+2 -2
View File
@@ -45,7 +45,7 @@ void sub_0806CF30(Entity* this) {
switch (this->subAction) {
case 0:
case 1:
if (gScreenTransition.frameCount % 4 == 0) {
if (gRoomTransition.frameCount % 4 == 0) {
if (gPlayerEntity.x.HALF.HI < this->x.HALF.HI && this->field_0x68.HWORD - 32 < this->x.HALF.HI) {
this->x.HALF.HI--;
}
@@ -257,7 +257,7 @@ void sub_0806D41C(Entity* this) {
ExecuteScriptForEntity(this, NULL);
HandleEntity0x82Actions(this);
}
if ((gScreenTransition.frameCount & 1) == 0) {
if ((gRoomTransition.frameCount & 1) == 0) {
if (CheckPlayerProximity(this->x.HALF.HI - 0x20, this->y.HALF.HI, 0x40, 0x40) != 0) {
if (this->spriteOffsetY > -8) {
this->spriteOffsetY -= 1;
+2 -2
View File
@@ -51,7 +51,7 @@ void sub_08068A1C(Entity* this) {
int offset;
this->type2 = this->type;
if (gScreenTransition.player_status.field_0x24[8] != 0) {
if (gRoomTransition.player_status.field_0x24[8] != 0) {
offset = 6;
bVar1 = 3;
@@ -103,7 +103,7 @@ void sub_08068AA4(Entity* this) {
}
void sub_08068ADC(Entity* this) {
if (gScreenTransition.player_status.field_0x24[8] == 2) {
if (gRoomTransition.player_status.field_0x24[8] == 2) {
GetNextFrame(this);
}
sub_0806FD3C(this);
+1 -1
View File
@@ -25,7 +25,7 @@ void CastorWildsStatue(Entity* this) {
}
void sub_080673C0(Entity* this) {
if (gScreenTransition.player_status.field_0x24[8] != 0) {
if (gRoomTransition.player_status.field_0x24[8] != 0) {
this->action = 3;
} else {
this->action = 1;
+2 -2
View File
@@ -93,8 +93,8 @@ void sub_0806BEFC() {
void sub_0806BF44(Entity* this, ScriptExecutionContext* context) {
context->condition = 0;
if (((this->x.HALF.HI - gRoomControls.roomScrollX) + 0x10U < 0x110) &&
((this->y.HALF.HI - gRoomControls.roomScrollY) + 0x18U < 0xD0)) {
if (((this->x.HALF.HI - gRoomControls.scroll_x) + 0x10U < 0x110) &&
((this->y.HALF.HI - gRoomControls.scroll_y) + 0x18U < 0xD0)) {
context->condition = 1;
}
}
+2 -2
View File
@@ -25,7 +25,7 @@ void GoronMerchant(Entity* this) {
}
void sub_08069584(Entity* this) {
if (gScreenTransition.player_status.field_0x24[8] != 0) {
if (gRoomTransition.player_status.field_0x24[8] != 0) {
this->action = 3;
} else {
this->action = 1;
@@ -59,7 +59,7 @@ void sub_080695E8(Entity* this) {
}
void sub_0806961C(Entity* this) {
if (gScreenTransition.player_status.field_0x24[8] == 2) {
if (gRoomTransition.player_status.field_0x24[8] == 2) {
UpdateAnimationSingleFrame(this);
}
sub_0806FD3C(this);
+1 -1
View File
@@ -202,7 +202,7 @@ void sub_08064030(Entity* arg0, Entity* arg1) {
}
void sub_08064044(void) {
gScreenTransition.transitioningOut = 1;
gRoomTransition.transitioningOut = 1;
}
void sub_08064050(Entity* this, ScriptExecutionContext* context) {
+2 -2
View File
@@ -236,8 +236,8 @@ NONMATCH("asm/non_matching/kid/sub_080626E0.inc", void sub_080626E0(Entity* this
context->unk_19 = 10;
context->postScriptActions |= 2;
sVar1 = *(s16*)&context->intVariable;
context->x.HALF.HI = *((u16*)&context->intVariable + 2) + gRoomControls.roomOriginX;
context->y.HALF.HI = gRoomControls.roomOriginY + sVar1;
context->x.HALF.HI = *((u16*)&context->intVariable + 2) + gRoomControls.origin_x;
context->y.HALF.HI = gRoomControls.origin_y + sVar1;
}
bVar2 = context->unk_19 - 1;
context->unk_19 = bVar2;
+1 -1
View File
@@ -86,7 +86,7 @@ void sub_0806643C(Entity* this) {
bool32 tmp = sub_0806650C(this);
if (tmp == FALSE) {
this->action = 5;
gRoomControls.cameraTarget = NULL;
gRoomControls.camera_target = NULL;
sub_08078AC0(0x40, 0, 0);
gPlayerEntity.animationState = 0;
gPlayerEntity.direction = 0;
+2 -2
View File
@@ -203,8 +203,8 @@ void sub_0806DCA0() {
}
void sub_0806DCC0() {
gScreenTransition.player_status.overworld_map_x = 0x7c8;
gScreenTransition.player_status.overworld_map_y = 0xf8;
gRoomTransition.player_status.overworld_map_x = 0x7c8;
gRoomTransition.player_status.overworld_map_y = 0xf8;
}
void NPC4E_Fusion(Entity* this) {
+4 -4
View File
@@ -118,13 +118,13 @@ void sub_08060A00(Entity* this) {
((UnkHeap*)this->myHeap)->unk_1 = gPlayerEntity.x.HALF.HI;
((UnkHeap*)this->myHeap)->unk_2 = gPlayerEntity.y.HALF.HI;
}
if (this->field_0x74.HWORD != gRoomControls.roomID) {
this->field_0x74.HWORD = gRoomControls.roomID;
if (this->field_0x74.HWORD != gRoomControls.room) {
this->field_0x74.HWORD = gRoomControls.room;
CopyPosition(&gPlayerEntity, this);
this->action = 1;
this->spriteSettings.draw = 1;
this->speed = 0x120;
tmp = gRoomControls.unk_10;
tmp = gRoomControls.scroll_direction;
this->animationState = tmp * 2;
InitAnimationForceUpdate(this, tmp << 0x19 >> 0x19); // TODO some conversion between u8 and u32?
this->frameDuration = (Random() & 0x7f) + 0x80;
@@ -880,7 +880,7 @@ void sub_08061B58(Entity* this) {
this->action = 1;
InitAnimationForceUpdate(this, 2);
}
if (gScreenTransition.player_status.field_0x24[8] == 2) {
if (gRoomTransition.player_status.field_0x24[8] == 2) {
UpdateAnimationSingleFrame(this);
}
sub_0806FD3C(this);
+1 -1
View File
@@ -1,7 +1,7 @@
#include "entity.h"
#include "script.h"
#include "functions.h"
#include "fileScreen.h"
#include "fileselect.h"
#include "screen.h"
extern void sub_08057044(u32, struct_020227E8*, u32);
+5 -5
View File
@@ -39,7 +39,7 @@ void sub_0806DF00(Entity* this) {
npc->parent = this;
this->field_0x74.HWORD = 0;
this->field_0x76.HWORD = 10;
gScreenTransition.field_0x6 = 10;
gRoomTransition.field_0x6 = 10;
sub_0806E014(this);
sub_0807DD50(this);
} else {
@@ -109,17 +109,17 @@ void sub_0806E1FC(Entity* this) {
}
void sub_0806E20C(void) {
if (gScreenTransition.field_0x6 != 0) {
if (gRoomTransition.field_0x6 != 0) {
MessageFromTarget(0x421f);
gMessage.field_0x10 = gScreenTransition.field_0x6;
gMessage.field_0x10 = gRoomTransition.field_0x6;
} else {
MessageFromTarget(0x4220);
}
}
void sub_0806E23C(void) {
if (gScreenTransition.field_0x6 != 0) {
ModRupees(gScreenTransition.field_0x6);
if (gRoomTransition.field_0x6 != 0) {
ModRupees(gRoomTransition.field_0x6);
}
}
+2 -2
View File
@@ -181,8 +181,8 @@ void sub_080606D8(Entity* this) {
void sub_08060700(Entity* entity, ScriptExecutionContext* context) {
s8* var0 = gUnk_0810A918[(s8)entity->field_0x68.HALF.LO];
Coords16* coords = &gUnk_0810A66C[var0[(s8)entity->field_0x68.HALF.HI]];
u32 x = coords->x + gRoomControls.roomOriginX;
u32 y = coords->y + gRoomControls.roomOriginY;
u32 x = coords->x + gRoomControls.origin_x;
u32 y = coords->y + gRoomControls.origin_y;
sub_0807DEDC(entity, context, x, y);
gActiveScriptInfo.flags |= 1;
}
+3 -3
View File
@@ -291,7 +291,7 @@ void sub_0806AA18(Entity* this) {
u32 index;
if (this->field_0x6a.HWORD != 0) {
index = 0x4408;
} else if ((gScreenTransition.frameCount & 1U) == 0) {
} else if ((gRoomTransition.frameCount & 1U) == 0) {
index = 0x4407;
} else {
index = 0x440d;
@@ -303,8 +303,8 @@ ASM_FUNC("asm/non_matching/rem/sub_0806AA50.inc", void sub_0806AA50(Entity* this
void sub_0806AB74(Entity* this) {
gRoomVars.field_0x3 = 1;
if ((s32)(this->y.HALF.HI - (u32)gRoomControls.roomOriginY) < 0xa8) {
this->y.HALF.HI = gRoomControls.roomOriginY + 0xa8;
if ((s32)(this->y.HALF.HI - (u32)gRoomControls.origin_y) < 0xa8) {
this->y.HALF.HI = gRoomControls.origin_y + 0xa8;
}
}
+2 -2
View File
@@ -27,7 +27,7 @@ void Simon(Entity* this) {
void sub_0806C224(void) {
DoExitTransition(&gUnk_0813AD60);
gScreenTransition.transitionType = TRANSITION_FADE_BLACK_FAST;
gRoomTransition.type = TRANSITION_FADE_BLACK_FAST;
}
void Simon_CreateChest(Entity* this) {
@@ -39,7 +39,7 @@ void Simon_CreateChest(Entity* this) {
void sub_0806C280(void) {
SetGlobalFlag(MAROYA_WAKEUP);
DoExitTransition(&gUnk_0813AD74);
gScreenTransition.transitionType = TRANSITION_FADE_BLACK_FAST;
gRoomTransition.type = TRANSITION_FADE_BLACK_FAST;
}
void sub_0806C2A0(Entity* this, ScriptExecutionContext* context) {
+1 -1
View File
@@ -83,7 +83,7 @@ void Sturgeon_Head(Entity* this) {
}
void sub_08064C9C(Entity* this) {
if ((this->actionDelay != 0) && ((gScreenTransition.frameCount & 3U) == 0)) {
if ((this->actionDelay != 0) && ((gRoomTransition.frameCount & 3U) == 0)) {
CreateDust(this);
}
}
+1 -1
View File
@@ -32,7 +32,7 @@ void sub_0806A1F8(Entity* this) {
void sub_0806A234(Entity* this) {
sub_0807DD94(this, 0);
if ((this->field_0x82.HWORD & 4) != 0) {
if ((gScreenTransition.frameCount & 7) == 0) {
if ((gRoomTransition.frameCount & 7) == 0) {
sub_0806A26C(this);
}
sub_080042BA(this, 2);
+1 -1
View File
@@ -34,7 +34,7 @@ void VaatiAction0(Entity* this) {
void VaatiAction1(Entity* this) {
ScriptExecutionContext* tmp;
sub_0807DD94(this, sub_08066B74);
if ((*(s8*)&this->field_0x68.HALF.HI != 0) && ((gScreenTransition.frameCount & 3) == 0)) {
if ((*(s8*)&this->field_0x68.HALF.HI != 0) && ((gRoomTransition.frameCount & 3) == 0)) {
sub_08095CB0(this);
}
+3 -3
View File
@@ -66,7 +66,7 @@ void sub_08066D4C(Entity* this, ScriptExecutionContext* context) {
}
void sub_08066D94(Entity* this) {
u32 roomID;
u32 room;
Entity* npc;
SetGlobalFlag(ZELDA_CHASE);
@@ -75,8 +75,8 @@ void sub_08066D94(Entity* this) {
npc->animationState = gPlayerEntity.animationState;
npc->flags |= 0x20;
npc->animationState = GetAnimationState(this);
roomID = gRoomControls.roomID;
npc->field_0x74.HWORD = roomID;
room = gRoomControls.room;
npc->field_0x74.HWORD = room;
CopyPosition(this, npc);
}
DeleteThisEntity();
+2 -2
View File
@@ -194,8 +194,8 @@ static void sub_0806EF14(Entity* ent) {
static void sub_0806EF4C(Entity* ent, u16* xy) {
u16* src = &((u16*)ent->child)[ent->hitType];
xy[0] = gRoomControls.roomOriginX + src[1];
xy[1] = gRoomControls.roomOriginY + src[2];
xy[0] = gRoomControls.origin_x + src[1];
xy[1] = gRoomControls.origin_y + src[2];
}
static u32 sub_0806EF74(Entity* ent, u32 a2) {
+2 -2
View File
@@ -17,8 +17,8 @@ void sub_0808F658(Entity* this) {
this->frameIndex = this->type;
this->direction = 8;
this->speed = gUnk_08121EB0[this->type];
this->field_0x78.HWORD = gRoomControls.roomOriginX - 0x60;
this->field_0x7a.HWORD = gRoomControls.roomOriginX + gRoomControls.width + 0x60;
this->field_0x78.HWORD = gRoomControls.origin_x - 0x60;
this->field_0x7a.HWORD = gRoomControls.origin_x + gRoomControls.width + 0x60;
this->animationState = 0;
this->x.HALF.HI += (Random() & 0xf) << 4;
this->actionDelay = 0;
+2 -2
View File
@@ -85,8 +85,8 @@ void sub_0809CDB4(Entity* this) {
void sub_0809CDF0(Entity* this) {
u32 y;
this->field_0x80.HWORD = (((this->x.HALF.HI - gRoomControls.roomOriginX) >> 4) & 0x3f) |
(((this->y.HALF.HI - gRoomControls.roomOriginY) >> 4 & 0x3f) << 6);
this->field_0x80.HWORD = (((this->x.HALF.HI - gRoomControls.origin_x) >> 4) & 0x3f) |
(((this->y.HALF.HI - gRoomControls.origin_y) >> 4 & 0x3f) << 6);
y = this->field_0x80.HWORD;
SetTile(0x402e, y - 0x01, this->collisionLayer);

Some files were not shown because too many files have changed in this diff Show More