mirror of
https://github.com/zeldaret/tmc
synced 2026-06-17 23:21:29 -04:00
naming work
This commit is contained in:
+17
-17
@@ -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
@@ -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
@@ -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
@@ -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
@@ -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
@@ -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
@@ -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
@@ -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
@@ -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
@@ -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);
|
||||
|
||||
@@ -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));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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
@@ -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;
|
||||
}
|
||||
|
||||
@@ -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
@@ -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
@@ -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);
|
||||
}
|
||||
|
||||
@@ -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
@@ -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
@@ -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
@@ -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
@@ -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
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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
@@ -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;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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 {
|
||||
|
||||
@@ -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
@@ -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
@@ -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;
|
||||
|
||||
@@ -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
File diff suppressed because it is too large
Load Diff
+4
-4
@@ -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);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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
@@ -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))
|
||||
|
||||
@@ -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) {
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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
@@ -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;
|
||||
|
||||
@@ -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();
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
|
||||
@@ -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
@@ -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) {
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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())
|
||||
|
||||
|
||||
@@ -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
@@ -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;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -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) {
|
||||
|
||||
@@ -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
@@ -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;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -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();
|
||||
|
||||
@@ -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) {
|
||||
|
||||
@@ -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
@@ -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);
|
||||
}
|
||||
|
||||
@@ -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
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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
@@ -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
@@ -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
@@ -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;
|
||||
|
||||
@@ -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
@@ -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;
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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
@@ -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;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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
@@ -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
@@ -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
@@ -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
@@ -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
@@ -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,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);
|
||||
|
||||
@@ -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
@@ -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
@@ -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
@@ -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
@@ -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
@@ -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
@@ -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
@@ -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
@@ -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) {
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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
Reference in New Issue
Block a user