diff --git a/config/SOUE01/rels/d_a_obj_doorNP/symbols.txt b/config/SOUE01/rels/d_a_obj_doorNP/symbols.txt index f00a5c19..0a8b474b 100644 --- a/config/SOUE01/rels/d_a_obj_doorNP/symbols.txt +++ b/config/SOUE01/rels/d_a_obj_doorNP/symbols.txt @@ -2,98 +2,94 @@ _prolog = .text:0x00000000; // type:function size:0x2C scope:global _epilog = .text:0x00000030; // type:function size:0x2C scope:global _unresolved = .text:0x00000060; // type:function size:0x4 scope:global dAcOdoor_c_classInit__Fv = .text:0x00000070; // type:function size:0x110 -fn_572_180 = .text:0x00000180; // type:function size:0x68 -fn_572_1F0 = .text:0x000001F0; // type:function size:0x4C -fn_572_240 = .text:0x00000240; // type:function size:0x4C -fn_572_290 = .text:0x00000290; // type:function size:0x58 -fn_572_2F0 = .text:0x000002F0; // type:function size:0x4C +getDoorMapping__26@unnamed@d_a_obj_door_cpp@FUlRPCQ226@unnamed@d_a_obj_door_cpp@15DoorFileMapping = .text:0x00000180; // type:function size:0x68 +getDoorResName__26@unnamed@d_a_obj_door_cpp@FUlRPCc = .text:0x000001F0; // type:function size:0x4C +getDoorMdlName__26@unnamed@d_a_obj_door_cpp@FUlRPCc = .text:0x00000240; // type:function size:0x4C +getDoorUnknown__26@unnamed@d_a_obj_door_cpp@FUcRUc = .text:0x00000290; // type:function size:0x58 +isDoorSpecial__26@unnamed@d_a_obj_door_cpp@Fl = .text:0x000002F0; // type:function size:0x4C getDoorTalk = .text:0x00000340; // type:function size:0xC -fn_572_350 = .text:0x00000350; // type:function size:0x7C -fn_572_3D0 = .text:0x000003D0; // type:function size:0x40 -fn_572_410 = .text:0x00000410; // type:function size:0x7C -fn_572_490 = .text:0x00000490; // type:function size:0x68 -fn_572_500 = .text:0x00000500; // type:function size:0x1EC -AcODoor__init = .text:0x000006F0; // type:function size:0x34C -AcODoor__init2 = .text:0x00000A40; // type:function size:0x7D4 -fn_572_1220 = .text:0x00001220; // type:function size:0x24 -fn_572_1250 = .text:0x00001250; // type:function size:0x16C4 -fn_572_2920 = .text:0x00002920; // type:function size:0x1C -AcODoor__update = .text:0x00002940; // type:function size:0x808 -fn_572_3150 = .text:0x00003150; // type:function size:0x98 +isInOuterSandship__26@unnamed@d_a_obj_door_cpp@Fv = .text:0x00000350; // type:function size:0x7C +isInEvent__26@unnamed@d_a_obj_door_cpp@FPCc = .text:0x000003D0; // type:function size:0x40 +isInTimeDoorEvent__26@unnamed@d_a_obj_door_cpp@Fv = .text:0x00000410; // type:function size:0x7C +checkRoom__26@unnamed@d_a_obj_door_cpp@FScRb = .text:0x00000490; // type:function size:0x68 +createHeap__10dAcOdoor_cFv = .text:0x00000500; // type:function size:0x1EC +actorCreate__10dAcOdoor_cFv = .text:0x000006F0; // type:function size:0x34C +actorPostCreate__10dAcOdoor_cFv = .text:0x00000A40; // type:function size:0x7D4 +doDelete__10dAcOdoor_cFv = .text:0x00001220; // type:function size:0x24 +actorExecuteInEvent__10dAcOdoor_cFv = .text:0x00001250; // type:function size:0x16C4 +calcTimer__4sLibFPUc_Uc = .text:0x00002920; // type:function size:0x1C +actorExecute__10dAcOdoor_cFv = .text:0x00002940; // type:function size:0x808 +draw__10dAcOdoor_cFv = .text:0x00003150; // type:function size:0x98 isLocked__10dAcOdoor_cFv = .text:0x000031F0; // type:function size:0x158 -fn_572_3350 = .text:0x00003350; // type:function size:0x84 -fn_572_33E0 = .text:0x000033E0; // type:function size:0xC -fn_572_33F0 = .text:0x000033F0; // type:function size:0x78 -fn_572_3470 = .text:0x00003470; // type:function size:0x7C -fn_572_34F0 = .text:0x000034F0; // type:function size:0x78 -fn_572_3570 = .text:0x00003570; // type:function size:0x7C -AcODoor__handleDoorPullEvent = .text:0x000035F0; // type:function size:0x20 -fn_572_3610 = .text:0x00003610; // type:function size:0x4 -AcODoor__handlePushEvent = .text:0x00003620; // type:function size:0x20 -fn_572_3640 = .text:0x00003640; // type:function size:0x4 -AcODoor__handleNormalEvent = .text:0x00003650; // type:function size:0xB0 -fn_572_3700 = .text:0x00003700; // type:function size:0x4 -fn_572_3710 = .text:0x00003710; // type:function size:0x4 -AcODoor__handleLockedPullEvent = .text:0x00003720; // type:function size:0x70 -AcODoor__handleLockedPushEvent = .text:0x00003790; // type:function size:0x70 -AcODoor__handleLockedEvent = .text:0x00003800; // type:function size:0x5C -AcODoor__pullLockedCallback = .text:0x00003860; // type:function size:0x68 -AcODoor__lockedPushCallback = .text:0x000038D0; // type:function size:0x68 -AcODoor__handleShutterUnlockEvent = .text:0x00003940; // type:function size:0x6C -fn_572_39B0 = .text:0x000039B0; // type:function size:0x1EC -fn_572_3BA0 = .text:0x00003BA0; // type:function size:0x148 -fn_572_3CF0 = .text:0x00003CF0; // type:function size:0x3C -fn_572_3D30 = .text:0x00003D30; // type:function size:0x4 -AcODoor__performInteraction = .text:0x00003D40; // type:function size:0x1EC -AcODoor__isKeyLocked = .text:0x00003F30; // type:function size:0xC -AcODoor__getSubtype2 = .text:0x00003F40; // type:function size:0xC -AcODoor__getParamSceneflag = .text:0x00003F50; // type:function size:0xC -fn_572_3F60 = .text:0x00003F60; // type:function size:0xC -fn_572_3F70 = .text:0x00003F70; // type:function size:0xC -fn_572_3F80 = .text:0x00003F80; // type:function size:0xC -fn_572_3F90 = .text:0x00003F90; // type:function size:0x24 -fn_572_3FC0 = .text:0x00003FC0; // type:function size:0xC -fn_572_3FD0 = .text:0x00003FD0; // type:function size:0xC -fn_572_3FE0 = .text:0x00003FE0; // type:function size:0xC -fn_572_3FF0 = .text:0x00003FF0; // type:function size:0xC -fn_572_4000 = .text:0x00004000; // type:function size:0xC -fn_572_4010 = .text:0x00004010; // type:function size:0xC -fn_572_4020 = .text:0x00004020; // type:function size:0xC -fn_572_4030 = .text:0x00004030; // type:function size:0xC -AcODoor__setRoomId = .text:0x00004040; // type:function size:0x8 -fn_572_4050 = .text:0x00004050; // type:function size:0x8 -fn_572_4060 = .text:0x00004060; // type:function size:0x8 -fn_572_4070 = .text:0x00004070; // type:function size:0x8 -fn_572_4080 = .text:0x00004080; // type:function size:0x8 -fn_572_4090 = .text:0x00004090; // type:function size:0xC -fn_572_40A0 = .text:0x000040A0; // type:function size:0xC -fn_572_40B0 = .text:0x000040B0; // type:function size:0xC -fn_572_40C0 = .text:0x000040C0; // type:function size:0xC -fn_572_40D0 = .text:0x000040D0; // type:function size:0xC -fn_572_40E0 = .text:0x000040E0; // type:function size:0xC -fn_572_40F0 = .text:0x000040F0; // type:function size:0xC -fn_572_4100 = .text:0x00004100; // type:function size:0xC -fn_572_4110 = .text:0x00004110; // type:function size:0xC -fn_572_4120 = .text:0x00004120; // type:function size:0xC -fn_572_4130 = .text:0x00004130; // type:function size:0xC -fn_572_4140 = .text:0x00004140; // type:function size:0xC -fn_572_4150 = .text:0x00004150; // type:function size:0x90 -AcODoor__triggerExit = .text:0x000041E0; // type:function size:0x7C -AcODoor__isThisTheDoorFromSealedTempleToSpiralAfterSkykeep = .text:0x00004260; // type:function size:0xAC -fn_572_4310 = .text:0x00004310; // type:function size:0x28 -fn_572_4338 = .text:0x00004338; // type:function size:0x4 -fn_572_4340 = .text:0x00004340; // type:function size:0x28 -fn_572_4368 = .text:0x00004368; // type:function size:0x4 -fn_572_4370 = .text:0x00004370; // type:function size:0x84 -AcODoor__getOpenedDoorSide = .text:0x00004400; // type:function size:0x10 -AcODoor__hasFlowEntrypoint = .text:0x00004410; // type:function size:0x18 -fn_572_4430 = .text:0x00004430; // type:function size:0xC -fn_572_4440 = .text:0x00004440; // type:function size:0xE4 -AcODoor__playerInInteractRange = .text:0x00004530; // type:function size:0xD0 -fn_572_4600 = .text:0x00004600; // type:function size:0xE4 -AcODoor__triggerDoorTalk = .text:0x000046F0; // type:function size:0x68 +canOpen__10dAcOdoor_cFv = .text:0x00003350; // type:function size:0x84 +fn_572_33E0__10dAcOdoor_cFv = .text:0x000033E0; // type:function size:0xC +startPullEventWithoutCallback__10dAcOdoor_cFPv = .text:0x000033F0; // type:function size:0x78 +startPullEventWithCallback__10dAcOdoor_cFPv = .text:0x00003470; // type:function size:0x7C +startPushEventWithoutCallback__10dAcOdoor_cFPv = .text:0x000034F0; // type:function size:0x78 +startPushEventWithCallback__10dAcOdoor_cFPv = .text:0x00003570; // type:function size:0x7C +startPullEvent__10dAcOdoor_cFPv = .text:0x000035F0; // type:function size:0x24 +startPushEvent__10dAcOdoor_cFPv = .text:0x00003620; // type:function size:0x24 +startOpenEvent__10dAcOdoor_cFPv = .text:0x00003650; // type:function size:0xB0 +doorPullEventCallback__10dAcOdoor_cFP10dAcOdoor_c = .text:0x00003700; // type:function size:0x4 +doorPushEventCallback__10dAcOdoor_cFP10dAcOdoor_c = .text:0x00003710; // type:function size:0x4 +startDoorPullLockedEvent__10dAcOdoor_cFPv = .text:0x00003720; // type:function size:0x70 +startDoorPushLockedEvent__10dAcOdoor_cFPv = .text:0x00003790; // type:function size:0x70 +startLockedEvent__10dAcOdoor_cFPv = .text:0x00003800; // type:function size:0x5C +pullLockedEventCallback__10dAcOdoor_cFP10dAcOdoor_c = .text:0x00003860; // type:function size:0x68 +pushLockedEventCallback__10dAcOdoor_cFP10dAcOdoor_c = .text:0x000038D0; // type:function size:0x68 +startUnlockEvent__10dAcOdoor_cFv = .text:0x00003940; // type:function size:0x6C +unlockEventCallback__10dAcOdoor_cFP10dAcOdoor_c = .text:0x000039B0; // type:function size:0x1EC +openCallbackCommon__10dAcOdoor_cFP10dAcOdoor_c = .text:0x00003BA0; // type:function size:0x148 +registerInEvent__10dAcOdoor_cFv = .text:0x00003CF0; // type:function size:0x3C +unkVirtFunc_0x6C__10dAcOdoor_cFv = .text:0x00003D30; // type:function size:0x4 +doInteraction__10dAcOdoor_cFl = .text:0x00003D40; // type:function size:0x1EC +getKeyParameter__10dAcOdoor_cFv = .text:0x00003F30; // type:function size:0xC +getSubtype2__10dAcOdoor_cFv = .text:0x00003F40; // type:function size:0xC +getSceneflag__10dAcOdoor_cFv = .text:0x00003F50; // type:function size:0xC +fn_572_3F60__10dAcOdoor_cFv = .text:0x00003F60; // type:function size:0xC +fn_572_3F70__10dAcOdoor_cFv = .text:0x00003F70; // type:function size:0xC +fn_572_3F80__10dAcOdoor_cFv = .text:0x00003F80; // type:function size:0xC +fn_572_3F90__10dAcOdoor_cFv = .text:0x00003F90; // type:function size:0x24 +getInteractionMinX__10dAcOdoor_cFv = .text:0x00003FC0; // type:function size:0xC +getInteractionMaxX__10dAcOdoor_cFv = .text:0x00003FD0; // type:function size:0xC +getInteractionMinZ__10dAcOdoor_cFv = .text:0x00003FE0; // type:function size:0xC +getInteractionMaxZ__10dAcOdoor_cFv = .text:0x00003FF0; // type:function size:0xC +getInteractionLockMinX__10dAcOdoor_cFv = .text:0x00004000; // type:function size:0xC +getInteractionLockMaxX__10dAcOdoor_cFv = .text:0x00004010; // type:function size:0xC +getInteractionLockMinZ__10dAcOdoor_cFv = .text:0x00004020; // type:function size:0xC +getInteractionLockMaxZ__10dAcOdoor_cFv = .text:0x00004030; // type:function size:0xC +setRoomId__10dAcOdoor_cFSc = .text:0x00004040; // type:function size:0x8 +fn_572_4050__10dAcOdoor_cFUl = .text:0x00004050; // type:function size:0x8 +fn_572_4060__10dAcOdoor_cFSc = .text:0x00004060; // type:function size:0x8 +fn_572_4070__10dAcOdoor_cFSc = .text:0x00004070; // type:function size:0x8 +fn_572_4080__10dAcOdoor_cFSc = .text:0x00004080; // type:function size:0x8 +fn_572_4090__10dAcOdoor_cFv = .text:0x00004090; // type:function size:0xC +fn_572_40A0__10dAcOdoor_cFv = .text:0x000040A0; // type:function size:0xC +fn_572_40B0__10dAcOdoor_cFv = .text:0x000040B0; // type:function size:0xC +fn_572_40C0__10dAcOdoor_cFv = .text:0x000040C0; // type:function size:0xC +fn_572_40D0__10dAcOdoor_cFv = .text:0x000040D0; // type:function size:0xC +fn_572_40E0__10dAcOdoor_cCFv = .text:0x000040E0; // type:function size:0xC +fn_572_40F0__10dAcOdoor_cFv = .text:0x000040F0; // type:function size:0xC +fn_572_4100__10dAcOdoor_cFv = .text:0x00004100; // type:function size:0xC +fn_572_4110__10dAcOdoor_cFv = .text:0x00004110; // type:function size:0xC +fn_572_4120__10dAcOdoor_cFv = .text:0x00004120; // type:function size:0xC +fn_572_4130__10dAcOdoor_cCFRb = .text:0x00004130; // type:function size:0xC +fn_572_4140__10dAcOdoor_cCFRb = .text:0x00004140; // type:function size:0xC +fn_572_4150__10dAcOdoor_cCFRb = .text:0x00004150; // type:function size:0x90 +triggerExit__10dAcOdoor_cFv = .text:0x000041E0; // type:function size:0x7C +isLeavingSealedTempleSideDoorPostSkyKeep__10dAcOdoor_cCFv = .text:0x00004260; // type:function size:0xAC +transitionPushRoomFlags__10dAcOdoor_cCFv = .text:0x00004310; // type:function size:0x28 +fn_572_4340__10dAcOdoor_cCFv = .text:0x00004340; // type:function size:0x28 +fn_572_4370__10dAcOdoor_cCFRC7mVec3_c = .text:0x00004370; // type:function size:0x84 +isPlayerInFrontOfDoor__10dAcOdoor_cCFv = .text:0x00004400; // type:function size:0x10 +hasFlowEntryPoint__10dAcOdoor_cCFv = .text:0x00004410; // type:function size:0x18 +fn_572_4430__10dAcOdoor_cCFv = .text:0x00004430; // type:function size:0xC +fn_572_4440__10dAcOdoor_cFv = .text:0x00004440; // type:function size:0xE4 +isPlayerInteractable__10dAcOdoor_cCFv = .text:0x00004530; // type:function size:0xD0 +isPlayerInteractableLocked__10dAcOdoor_cCFv = .text:0x00004600; // type:function size:0xE4 +playInteractionLocked__10dAcOdoor_cCFv = .text:0x000046F0; // type:function size:0x68 __dt__10dAcOdoor_cFv = .text:0x00004760; // type:function size:0xE8 -fn_572_4850 = .text:0x00004850; // type:function size:0x144 +__sinit_\d_a_obj_door_cpp = .text:0x00004850; // type:function size:0x144 scope:local _ctors = .ctors:0x00000000; // type:label scope:global _dtors = .dtors:0x00000000; // type:label scope:global lbl_572_rodata_0 = .rodata:0x00000000; // type:object size:0x20 data:float diff --git a/include/d/a/obj/d_a_obj_door.h b/include/d/a/obj/d_a_obj_door.h index a76dc4dc..332c03e7 100644 --- a/include/d/a/obj/d_a_obj_door.h +++ b/include/d/a/obj/d_a_obj_door.h @@ -216,9 +216,6 @@ public: /** fn_572_4310 */ void transitionPushRoomFlags() const; - /** fn_572_4320 */ - void fn_572_4320() const; // nop - /** fn_572_4430 */ bool transitionPullRoomFlags() const; @@ -250,7 +247,7 @@ public: void playInteractionLocked() const; public: - s32 getType() const { + s32 getType() { return getFromParams(0, 0x3F); } s32 getField_0x5B4() const { diff --git a/include/f/f_base.h b/include/f/f_base.h index 50a5e367..8ef5ac43 100644 --- a/include/f/f_base.h +++ b/include/f/f_base.h @@ -89,7 +89,7 @@ public: mGroupType = m_tmpCtData.group_type; } - u32 getFromParams(u8 shift, u32 mask) const { + u32 getFromParams(u8 shift, u32 mask) { return (mParams >> shift) & mask; } diff --git a/src/REL/d/a/obj/d_a_obj_door.cpp b/src/REL/d/a/obj/d_a_obj_door.cpp index d1cceaa1..195d4cc2 100644 --- a/src/REL/d/a/obj/d_a_obj_door.cpp +++ b/src/REL/d/a/obj/d_a_obj_door.cpp @@ -35,10 +35,6 @@ SPECIAL_ACTOR_PROFILE(OBJ_DOOR, dAcOdoor_c, fProfile::OBJ_DOOR, 0x188, 0, 7); namespace { -static mVec3_c sVecs[] = { - mVec3_c(70.f, 0.f, 0.f), mVec3_c(52.f, 110.f, 0.f), mVec3_c(0.f, 0.f, 70.f), mVec3_c(0.f, 0.f, -70.f) -}; - const char *const DoorAnim = "DoorAnim"; const char *const DoorAnimPull = "DoorAnimPull"; const char *const DoorAnimPush = "DoorAnimPush"; @@ -192,6 +188,9 @@ bool checkRoom(s8 roomID, bool &b) { return true; } +static mVec3_c sVecs[] = { + mVec3_c(70.f, 0.f, 0.f), mVec3_c(52.f, 110.f, 0.f), mVec3_c(0.f, 0.f, 70.f), mVec3_c(0.f, 0.f, -70.f) +}; } // namespace const char *const DoorE_N = "DoorE_N"; @@ -1245,9 +1244,6 @@ bool dAcOdoor_c::isLeavingSealedTempleSideDoorPostSkyKeep() const {} /** fn_572_4310 */ void dAcOdoor_c::transitionPushRoomFlags() const {} -/** fn_572_4320 */ -void dAcOdoor_c::fn_572_4320() const {} // nop - /** fn_572_4430 */ bool dAcOdoor_c::transitionPullRoomFlags() const {}