mirror of https://github.com/zeldaret/tmc.git
Match sub_08018738
This commit is contained in:
parent
dba74f4c92
commit
9730543780
|
@ -317,29 +317,3 @@ _0801872A:
|
|||
pop {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
_08018734: .4byte gUnk_080C9CBC
|
||||
|
||||
thumb_func_start sub_08018738
|
||||
sub_08018738: @ 0x08018738
|
||||
push {r4, lr}
|
||||
adds r2, r0, #0
|
||||
adds r4, r1, #0
|
||||
lsls r0, r4, #2
|
||||
adds r0, r0, r4
|
||||
lsls r0, r0, #2
|
||||
ldr r1, _08018764 @ =gUnk_080FE320
|
||||
adds r0, r0, r1
|
||||
ldr r1, _08018768 @ =gRoomControls
|
||||
ldrh r0, [r0, #2]
|
||||
ldrh r1, [r1, #4]
|
||||
cmp r0, r1
|
||||
bne _08018760
|
||||
adds r0, r2, #0
|
||||
bl CheckKinstoneFused
|
||||
adds r1, r0, #0
|
||||
adds r0, r4, #0
|
||||
bl sub_0801876C
|
||||
_08018760:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_08018764: .4byte gUnk_080FE320
|
||||
_08018768: .4byte gRoomControls
|
||||
|
|
|
@ -20,8 +20,8 @@ extern Input gInput; /**< Input instance. */
|
|||
typedef struct {
|
||||
u8 evt_type;
|
||||
u8 entity_idx;
|
||||
u8 _2;
|
||||
u8 _3;
|
||||
u8 area;
|
||||
u8 room;
|
||||
u16 _4;
|
||||
u16 _6;
|
||||
u16 x;
|
||||
|
|
12
src/game.c
12
src/game.c
|
@ -2682,22 +2682,22 @@ void sub_08054968(void) {
|
|||
|
||||
void sub_08054974(s32 param_1, s32 param_2) {
|
||||
struct_080FE320* ptr = &gUnk_080FE320[param_1];
|
||||
SetCurrentRoomPropertyList(ptr->_2, ptr->_3);
|
||||
gRoomControls.area = ptr->_2;
|
||||
gRoomControls.room = ptr->_3;
|
||||
SetCurrentRoomPropertyList(ptr->area, ptr->room);
|
||||
gRoomControls.area = ptr->area;
|
||||
gRoomControls.room = ptr->room;
|
||||
LoadGfxGroups();
|
||||
gArea.localFlagOffset = GetFlagBankOffset(gRoomControls.area);
|
||||
if (param_2 != 0) {
|
||||
LoadAuxiliaryRoom(ptr->_2, ptr->_3);
|
||||
LoadAuxiliaryRoom(ptr->area, ptr->room);
|
||||
} else {
|
||||
sub_08052FF4(ptr->_2, ptr->_3);
|
||||
sub_08052FF4(ptr->area, ptr->room);
|
||||
InitializeCamera();
|
||||
gUpdateVisibleTiles = 1;
|
||||
}
|
||||
gScreen.lcd.displayControl &= 0x1fff;
|
||||
gRoomControls.scroll_x = gRoomControls.origin_x + ptr->_4;
|
||||
gRoomControls.scroll_y = gRoomControls.origin_y + ptr->_6;
|
||||
if (ptr->_2 == 2) {
|
||||
if (ptr->area == AREA_HYRULE_TOWN) {
|
||||
TryLoadPrologueHyruleTown();
|
||||
}
|
||||
sub_08018710(gUI.field_0x3);
|
||||
|
|
|
@ -22,6 +22,15 @@ void sub_08018BB4(int);
|
|||
void sub_08018A58(int);
|
||||
void sub_08018B50(int);
|
||||
void sub_080189EC(int);
|
||||
void sub_0801876C(int, int);
|
||||
|
||||
void sub_08018738(u32 param_1, int param_2) {
|
||||
struct_080FE320* ptr = &gUnk_080FE320[param_2];
|
||||
|
||||
if (ptr->area == gRoomControls.area && ptr->room == gRoomControls.room) {
|
||||
sub_0801876C(param_2, CheckKinstoneFused(param_1));
|
||||
}
|
||||
}
|
||||
|
||||
void sub_0801876C(int param_1, int param_2) {
|
||||
Entity* roomEnt;
|
||||
|
|
Loading…
Reference in New Issue