mirror of
https://github.com/zeldaret/ss
synced 2026-05-28 16:31:21 -04:00
Merge branch 'zeldaret:main' into d_lyt_draw_mark
This commit is contained in:
@@ -99,92 +99,92 @@ isSameName__27sFStateID_c<12dAcOBarrel_c>CFPCc = .text:0x00006500; // type:funct
|
||||
_ctors = .ctors:0x00000000; // type:label scope:global
|
||||
_dtors = .dtors:0x00000000; // type:label scope:global
|
||||
__destroy_global_chain_reference = .dtors:0x00000000; // type:object size:0x4 scope:global
|
||||
lbl_293_rodata_0 = .rodata:0x00000000; // type:object size:0x38 data:float
|
||||
lbl_293_rodata_38 = .rodata:0x00000038; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_3C = .rodata:0x0000003C; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_40 = .rodata:0x00000040; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_44 = .rodata:0x00000044; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_48 = .rodata:0x00000048; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_4C = .rodata:0x0000004C; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_50 = .rodata:0x00000050; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_54 = .rodata:0x00000054; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_58 = .rodata:0x00000058; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_60 = .rodata:0x00000060; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_64 = .rodata:0x00000064; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_68 = .rodata:0x00000068; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_6C = .rodata:0x0000006C; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_70 = .rodata:0x00000070; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_78 = .rodata:0x00000078; // type:object size:0x8 align:8 data:double
|
||||
lbl_293_rodata_80 = .rodata:0x00000080; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_84 = .rodata:0x00000084; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_88 = .rodata:0x00000088; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_90 = .rodata:0x00000090; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_94 = .rodata:0x00000094; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_98 = .rodata:0x00000098; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_9C = .rodata:0x0000009C; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_A0 = .rodata:0x000000A0; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_A4 = .rodata:0x000000A4; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_A8 = .rodata:0x000000A8; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_AC = .rodata:0x000000AC; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_C4 = .rodata:0x000000C4; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_DC = .rodata:0x000000DC; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_E0 = .rodata:0x000000E0; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_E4 = .rodata:0x000000E4; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_E8 = .rodata:0x000000E8; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_EC = .rodata:0x000000EC; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_F0 = .rodata:0x000000F0; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_F4 = .rodata:0x000000F4; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_100 = .rodata:0x00000100; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_104 = .rodata:0x00000104; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_108 = .rodata:0x00000108; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_10C = .rodata:0x0000010C; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_110 = .rodata:0x00000110; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_114 = .rodata:0x00000114; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_118 = .rodata:0x00000118; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_11C = .rodata:0x0000011C; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_120 = .rodata:0x00000120; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_124 = .rodata:0x00000124; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_128 = .rodata:0x00000128; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_130 = .rodata:0x00000130; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_134 = .rodata:0x00000134; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_138 = .rodata:0x00000138; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_13C = .rodata:0x0000013C; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_140 = .rodata:0x00000140; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_144 = .rodata:0x00000144; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_rodata_148 = .rodata:0x00000148; // type:object size:0x30
|
||||
lbl_293_data_0 = .data:0x00000000; // type:object size:0x8 data:4byte
|
||||
lbl_293_rodata_0 = .rodata:0x00000000; // type:object size:0x38 scope:local data:float
|
||||
lbl_293_rodata_38 = .rodata:0x00000038; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_3C = .rodata:0x0000003C; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_40 = .rodata:0x00000040; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_44 = .rodata:0x00000044; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_48 = .rodata:0x00000048; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_4C = .rodata:0x0000004C; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_50 = .rodata:0x00000050; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_54 = .rodata:0x00000054; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_58 = .rodata:0x00000058; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_5C = .rodata:0x0000005C; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_60 = .rodata:0x00000060; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_64 = .rodata:0x00000064; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_68 = .rodata:0x00000068; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_6C = .rodata:0x0000006C; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_70 = .rodata:0x00000070; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_78 = .rodata:0x00000078; // type:object size:0x8 scope:local align:8 data:double
|
||||
lbl_293_rodata_80 = .rodata:0x00000080; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_84 = .rodata:0x00000084; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_88 = .rodata:0x00000088; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_8C = .rodata:0x0000008C; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_90 = .rodata:0x00000090; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_94 = .rodata:0x00000094; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_98 = .rodata:0x00000098; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_9C = .rodata:0x0000009C; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_A0 = .rodata:0x000000A0; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_A4 = .rodata:0x000000A4; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_A8 = .rodata:0x000000A8; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_AC = .rodata:0x000000AC; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_B0 = .rodata:0x000000B0; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_B4 = .rodata:0x000000B4; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_B8 = .rodata:0x000000B8; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_BC = .rodata:0x000000BC; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_C0 = .rodata:0x000000C0; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_C4 = .rodata:0x000000C4; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_C8 = .rodata:0x000000C8; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_CC = .rodata:0x000000CC; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_D0 = .rodata:0x000000D0; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_D4 = .rodata:0x000000D4; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_D8 = .rodata:0x000000D8; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_DC = .rodata:0x000000DC; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_E0 = .rodata:0x000000E0; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_E4 = .rodata:0x000000E4; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_E8 = .rodata:0x000000E8; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_EC = .rodata:0x000000EC; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_F0 = .rodata:0x000000F0; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_F4 = .rodata:0x000000F4; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_F8 = .rodata:0x000000F8; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_FC = .rodata:0x000000FC; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_100 = .rodata:0x00000100; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_104 = .rodata:0x00000104; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_108 = .rodata:0x00000108; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_10C = .rodata:0x0000010C; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_110 = .rodata:0x00000110; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_114 = .rodata:0x00000114; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_118 = .rodata:0x00000118; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_11C = .rodata:0x0000011C; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_120 = .rodata:0x00000120; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_124 = .rodata:0x00000124; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_128 = .rodata:0x00000128; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_12C = .rodata:0x0000012C; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_130 = .rodata:0x00000130; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_134 = .rodata:0x00000134; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_138 = .rodata:0x00000138; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_13C = .rodata:0x0000013C; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_140 = .rodata:0x00000140; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_144 = .rodata:0x00000144; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_rodata_148 = .rodata:0x00000148; // type:object size:0x30 scope:local
|
||||
lbl_293_data_0 = .data:0x00000000; // type:object size:0x8 scope:local data:4byte
|
||||
g_profile_OBJ_BARREL = .data:0x00000008; // type:object size:0x6C
|
||||
lbl_293_data_74 = .data:0x00000074; // type:object size:0x7 data:string
|
||||
lbl_293_data_7C = .data:0x0000007C; // type:object size:0xB data:string
|
||||
lbl_293_data_88 = .data:0x00000088; // type:object size:0x10
|
||||
lbl_293_data_98 = .data:0x00000098; // type:object size:0x2C
|
||||
lbl_293_data_C4 = .data:0x000000C4; // type:object size:0xF data:string
|
||||
lbl_293_data_D4 = .data:0x000000D4; // type:object size:0x10
|
||||
lbl_293_data_E4 = .data:0x000000E4; // type:object size:0x4 align:4 data:float
|
||||
lbl_293_data_E8 = .data:0x000000E8; // type:object size:0x8 align:4 data:float
|
||||
lbl_293_data_F0 = .data:0x000000F0; // type:object size:0x80
|
||||
lbl_293_data_170 = .data:0x00000170; // type:object size:0x30
|
||||
lbl_293_data_1A0 = .data:0x000001A0; // type:object size:0x30
|
||||
lbl_293_data_1D0 = .data:0x000001D0; // type:object size:0x18
|
||||
lbl_293_data_1E8 = .data:0x000001E8; // type:object size:0x18
|
||||
lbl_293_data_200 = .data:0x00000200; // type:object size:0xC
|
||||
lbl_293_data_20C = .data:0x0000020C; // type:object size:0x2A8
|
||||
lbl_293_data_4B4 = .data:0x000004B4; // type:object size:0x34
|
||||
lbl_293_data_74 = .data:0x00000074; // type:object size:0x7 scope:local data:string
|
||||
lbl_293_data_7C = .data:0x0000007C; // type:object size:0xB scope:local data:string
|
||||
lbl_293_data_88 = .data:0x00000088; // type:object size:0x10 scope:local
|
||||
lbl_293_data_98 = .data:0x00000098; // type:object size:0x2C scope:local
|
||||
lbl_293_data_C4 = .data:0x000000C4; // type:object size:0xF scope:local data:string
|
||||
lbl_293_data_D4 = .data:0x000000D4; // type:object size:0x10 scope:local
|
||||
lbl_293_data_E4 = .data:0x000000E4; // type:object size:0x4 scope:local align:4 data:float
|
||||
lbl_293_data_E8 = .data:0x000000E8; // type:object size:0x8 scope:local align:4 data:float
|
||||
lbl_293_data_F0 = .data:0x000000F0; // type:object size:0x80 scope:local
|
||||
lbl_293_data_170 = .data:0x00000170; // type:object size:0x30 scope:local
|
||||
lbl_293_data_1A0 = .data:0x000001A0; // type:object size:0x30 scope:local
|
||||
lbl_293_data_1D0 = .data:0x000001D0; // type:object size:0x18 scope:local
|
||||
lbl_293_data_1E8 = .data:0x000001E8; // type:object size:0x18 scope:local
|
||||
lbl_293_data_200 = .data:0x00000200; // type:object size:0xC scope:local
|
||||
lbl_293_data_20C = .data:0x0000020C; // type:object size:0x2A8 scope:local
|
||||
lbl_293_data_4B4 = .data:0x000004B4; // type:object size:0x34 scope:local
|
||||
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
|
||||
@16558 = .bss:0x00000008; // type:object size:0xC scope:local data:4byte
|
||||
StateID_Wait__12dAcOBarrel_c = .bss:0x00000018; // type:object size:0x30 data:4byte
|
||||
@@ -206,7 +206,7 @@ StateID_Explode__12dAcOBarrel_c = .bss:0x000001D8; // type:object size:0x30 data
|
||||
StateID_KrakenBorn__12dAcOBarrel_c = .bss:0x00000218; // type:object size:0x30 data:4byte
|
||||
@16594 = .bss:0x00000248; // type:object size:0xC scope:local data:4byte
|
||||
StateID_Rebirth__12dAcOBarrel_c = .bss:0x00000258; // type:object size:0x30 data:4byte
|
||||
lbl_293_bss_288 = .bss:0x00000288; // type:object size:0x8 data:byte
|
||||
lbl_293_bss_290 = .bss:0x00000290; // type:object size:0x10 align:4 data:float
|
||||
lbl_293_bss_2A0 = .bss:0x000002A0; // type:object size:0x1 data:byte
|
||||
lbl_293_bss_2A4 = .bss:0x000002A4; // type:object size:0xC align:4 data:float
|
||||
@GUARD@draw__12dAcOBarrel_cFv@shadow = .bss:0x00000288; // type:object size:0x1 scope:local data:byte
|
||||
@LOCAL@draw__12dAcOBarrel_cFv@shadow = .bss:0x00000290; // type:object size:0x10 scope:local align:4 data:float
|
||||
@GUARD@fn_293_5910__12dAcOBarrel_cFv@scale = .bss:0x000002A0; // type:object size:0x1 scope:local data:byte
|
||||
@LOCAL@fn_293_5910__12dAcOBarrel_cFv@scale = .bss:0x000002A4; // type:object size:0xC scope:local align:4 data:float
|
||||
|
||||
@@ -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
|
||||
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
|
||||
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
|
||||
getDoorCallbackTypeMapped__26@unnamed@d_a_obj_door_cpp@FUcRUc = .text:0x00000290; // type:function size:0x58
|
||||
isDoubleDoorType__26@unnamed@d_a_obj_door_cpp@Fl = .text:0x000002F0; // type:function size:0x4C
|
||||
getDoorInteractionName__26@unnamed@d_a_obj_door_cpp@Fv = .text:0x00000340; // type:function size:0xC
|
||||
isInSandshipBoss__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<Uc>__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_cFPv = .text:0x00003700; // type:function size:0x4
|
||||
doorPushEventCallback__10dAcOdoor_cFPv = .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_cFPv = .text:0x00003860; // type:function size:0x68
|
||||
pushLockedEventCallback__10dAcOdoor_cFPv = .text:0x000038D0; // type:function size:0x68
|
||||
startUnlockEvent__10dAcOdoor_cFv = .text:0x00003940; // type:function size:0x6C
|
||||
unlockEventCallback__10dAcOdoor_cFPv = .text:0x000039B0; // type:function size:0x1EC
|
||||
openCallbackCommon__10dAcOdoor_cFPv = .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
|
||||
getLockParameter__10dAcOdoor_cFv = .text:0x00003F30; // type:function size:0xC
|
||||
getLockBehavior__10dAcOdoor_cFv = .text:0x00003F40; // type:function size:0xC
|
||||
getSceneflag__10dAcOdoor_cFv = .text:0x00003F50; // type:function size:0xC
|
||||
getDoorCallbackType__10dAcOdoor_cFv = .text:0x00003F60; // type:function size:0xC
|
||||
getFrontRoomParam__10dAcOdoor_cFv = .text:0x00003F70; // type:function size:0xC
|
||||
getBackRoomParam__10dAcOdoor_cFv = .text:0x00003F80; // type:function size:0xC
|
||||
getFailedToOpenFlag__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
|
||||
setFlag__10dAcOdoor_cFUl = .text:0x00004050; // type:function size:0x8
|
||||
setEventCallbackType__10dAcOdoor_cFUc = .text:0x00004060; // type:function size:0x8
|
||||
setFrontRoom__10dAcOdoor_cFSc = .text:0x00004070; // type:function size:0x8
|
||||
setBackRoom__10dAcOdoor_cFSc = .text:0x00004080; // type:function size:0x8
|
||||
setDoubleDoor__10dAcOdoor_cFv = .text:0x00004090; // type:function size:0xC
|
||||
setNotDoubleDoor__10dAcOdoor_cFv = .text:0x000040A0; // type:function size:0xC
|
||||
setSingleDoor__10dAcOdoor_cFv = .text:0x000040B0; // type:function size:0xC
|
||||
setNotSingleDoor__10dAcOdoor_cFv = .text:0x000040C0; // type:function size:0xC
|
||||
setInSandshipBoss__10dAcOdoor_cFv = .text:0x000040D0; // type:function size:0xC
|
||||
isTimeDoorEventActive__10dAcOdoor_cCFv = .text:0x000040E0; // type:function size:0xC
|
||||
setTimeDoorEventActive__10dAcOdoor_cFv = .text:0x000040F0; // type:function size:0xC
|
||||
setTimeDoorEventInactive__10dAcOdoor_cFv = .text:0x00004100; // type:function size:0xC
|
||||
setTimeEffected__10dAcOdoor_cFv = .text:0x00004110; // type:function size:0xC
|
||||
setTimeStatic__10dAcOdoor_cFv = .text:0x00004120; // type:function size:0xC
|
||||
checkFrontRoom__10dAcOdoor_cCFRb = .text:0x00004130; // type:function size:0xC
|
||||
checkBackRoom__10dAcOdoor_cCFRb = .text:0x00004140; // type:function size:0xC
|
||||
checkRooms__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:0x2C
|
||||
transitionPullRoomFlags__10dAcOdoor_cCFv = .text:0x00004340; // type:function size:0x2C
|
||||
isPositionInFrontOfDoor__10dAcOdoor_cCFRC7mVec3_c = .text:0x00004370; // type:function size:0x84
|
||||
checkPullDoor__10dAcOdoor_cCFv = .text:0x00004400; // type:function size:0x10
|
||||
hasFlowEntryPoint__10dAcOdoor_cFv = .text:0x00004410; // type:function size:0x18
|
||||
isTimeEffected__10dAcOdoor_cCFv = .text:0x00004430; // type:function size:0xC
|
||||
setDoorKnobPosition__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_cFv = .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
|
||||
|
||||
@@ -21,11 +21,11 @@ getStateID__80sStateMgr_c<11dAcOFence_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13
|
||||
fn_550_D30 = .text:0x00000D30; // type:function size:0x304
|
||||
fn_550_1040 = .text:0x00001040; // type:function size:0x13C
|
||||
fn_550_1180 = .text:0x00001180; // type:function size:0x28
|
||||
fn_550_11B0 = .text:0x000011B0; // type:function size:0xA0
|
||||
fn_550_1250 = .text:0x00001250; // type:function size:0x50
|
||||
fn_550_11B0__11dAcOFence_cCFv = .text:0x000011B0; // type:function size:0xA0
|
||||
fn_550_1250__11dAcOFence_cFv = .text:0x00001250; // type:function size:0x50
|
||||
changeState__80sStateMgr_c<11dAcOFence_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>FRC12sStateIDIf_c = .text:0x000012A0; // type:function size:0x10
|
||||
fn_550_12B0 = .text:0x000012B0; // type:function size:0x10
|
||||
fn_550_12C0 = .text:0x000012C0; // type:function size:0x10
|
||||
fn_550_12B0__11dAcOFence_cFv = .text:0x000012B0; // type:function size:0x10
|
||||
fn_550_12C0__11dAcOFence_cFv = .text:0x000012C0; // type:function size:0x10
|
||||
initializeState_WaitOpen__11dAcOFence_cFv = .text:0x000012D0; // type:function size:0x94
|
||||
executeState_WaitOpen__11dAcOFence_cFv = .text:0x00001370; // type:function size:0x168
|
||||
finalizeState_WaitOpen__11dAcOFence_cFv = .text:0x000014E0; // type:function size:0x4
|
||||
@@ -142,4 +142,4 @@ lbl_550_bss_118 = .bss:0x00000118; // type:object size:0x40 data:4byte
|
||||
lbl_550_bss_158 = .bss:0x00000158; // type:object size:0x40 data:4byte
|
||||
lbl_550_bss_198 = .bss:0x00000198; // type:object size:0x40 data:4byte
|
||||
lbl_550_bss_1D8 = .bss:0x000001D8; // type:object size:0x40 data:4byte
|
||||
lbl_550_bss_218 = .bss:0x00000218; // type:object size:0x30
|
||||
StateID_RequestConfineEvent__11dAcOFence_c = .bss:0x00000218; // type:object size:0x30
|
||||
|
||||
@@ -25,7 +25,7 @@ finalizeState_Wait__15dAcOstageSink_cFv = .text:0x00000AA0; // type:function siz
|
||||
initializeState_Move__15dAcOstageSink_cFv = .text:0x00000AB0; // type:function size:0x4
|
||||
executeState_Move__15dAcOstageSink_cFv = .text:0x00000AC0; // type:function size:0x23C
|
||||
finalizeState_Move__15dAcOstageSink_cFv = .text:0x00000D00; // type:function size:0x4
|
||||
fn_383_D10 = .text:0x00000D10; // type:function size:0xC
|
||||
GetInstance__15dAcOstageSink_cFv = .text:0x00000D10; // type:function size:0xC
|
||||
fn_383_D20 = .text:0x00000D20; // type:function size:0xA0
|
||||
fn_383_DC0 = .text:0x00000DC0; // type:function size:0x18
|
||||
__dt__15dAcOstageSink_cFv = .text:0x00000DE0; // type:function size:0x100
|
||||
|
||||
@@ -80,7 +80,7 @@ lbl_374_data_190 = .data:0x00000190; // type:object size:0x198 scope:local
|
||||
__vt__29sFStateID_c<14dAcOwindmill_c> = .data:0x00000328; // type:object size:0x34
|
||||
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
|
||||
lbl_374_bss_8 = .bss:0x00000008; // type:object size:0x10 scope:local data:4byte
|
||||
AcOwindmill__STATE_WAIT = .bss:0x00000018; // type:object size:0x40 data:4byte
|
||||
StateID_Wait__14dAcOwindmill_c = .bss:0x00000018; // type:object size:0x40 data:4byte
|
||||
AcOwindmill__STATE_CAMERA_MOVE = .bss:0x00000058; // type:object size:0x40 data:4byte
|
||||
AcOwindmill__STATE_MOVE = .bss:0x00000098; // type:object size:0x80 data:4byte
|
||||
AcOwindmill__STATE_COLLECT_STICK = .bss:0x00000118; // type:object size:0x30 data:4byte
|
||||
|
||||
@@ -4,31 +4,31 @@ _unresolved = .text:0x00000060; // type:function size:0x4 scope:global
|
||||
__register_global_object = .text:0x00000070; // type:function size:0x1C scope:global
|
||||
__destroy_global_chain = .text:0x00000090; // type:function size:0x54 scope:global
|
||||
dTgBarrel_c_classInit__Fv = .text:0x000000F0; // type:function size:0x100
|
||||
__dt__11dTgBarrel_cFv = .text:0x000001F0; // type:function size:0x58
|
||||
__dt__5dTg_cFv = .text:0x000001F0; // type:function size:0x58
|
||||
__dt__24sFState_c<11dTgBarrel_c>Fv = .text:0x00000250; // type:function size:0x58
|
||||
__dt__27sFStateFct_c<11dTgBarrel_c>Fv = .text:0x000002B0; // type:function size:0x6C
|
||||
__dt__80sStateMgr_c<11dTgBarrel_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x00000320; // type:function size:0xA0
|
||||
__dt__50sFStateMgr_c<11dTgBarrel_c,20sStateMethodUsr_FI_c>Fv = .text:0x000003C0; // type:function size:0xA4
|
||||
fn_442_470 = .text:0x00000470; // type:function size:0x14
|
||||
fn_442_490 = .text:0x00000490; // type:function size:0x58
|
||||
fn_442_4F0 = .text:0x000004F0; // type:function size:0x14
|
||||
fn_442_510 = .text:0x00000510; // type:function size:0x58
|
||||
TgBarrel__init1 = .text:0x00000570; // type:function size:0xC0
|
||||
__ct__24dAcRef_c<12dAcOBarrel_c>Fv = .text:0x00000470; // type:function size:0x14
|
||||
__dt__24dAcRef_c<12dAcOBarrel_c>Fv = .text:0x00000490; // type:function size:0x58
|
||||
__ct__26dAcRef_c<14dTgBarrelPos_c>Fv = .text:0x000004F0; // type:function size:0x14
|
||||
__dt__26dAcRef_c<14dTgBarrelPos_c>Fv = .text:0x00000510; // type:function size:0x58
|
||||
actorCreate__11dTgBarrel_cFv = .text:0x00000570; // type:function size:0xC0
|
||||
changeState__80sStateMgr_c<11dTgBarrel_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>FRC12sStateIDIf_c = .text:0x00000630; // type:function size:0x10
|
||||
TgBarrel__init2 = .text:0x00000640; // type:function size:0x9C
|
||||
fn_442_6E0 = .text:0x000006E0; // type:function size:0x8
|
||||
TgBarrel__update = .text:0x000006F0; // type:function size:0x30
|
||||
actorPostCreate__11dTgBarrel_cFv = .text:0x00000640; // type:function size:0x9C
|
||||
doDelete__11dTgBarrel_cFv = .text:0x000006E0; // type:function size:0x8
|
||||
actorExecute__11dTgBarrel_cFv = .text:0x000006F0; // type:function size:0x30
|
||||
executeState__80sStateMgr_c<11dTgBarrel_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x00000720; // type:function size:0x10
|
||||
fn_442_730 = .text:0x00000730; // type:function size:0x8
|
||||
draw__11dTgBarrel_cFv = .text:0x00000730; // type:function size:0x8
|
||||
initializeState_Wait__11dTgBarrel_cFv = .text:0x00000740; // type:function size:0x4
|
||||
executeState_Wait__11dTgBarrel_cFv = .text:0x00000750; // type:function size:0x2E0
|
||||
fn_442_A30 = .text:0x00000A30; // type:function size:0x1C
|
||||
calcTimer<Uc>__4sLibFPUc_Uc = .text:0x00000A30; // type:function size:0x1C
|
||||
finalizeState_Wait__11dTgBarrel_cFv = .text:0x00000A50; // type:function size:0x4
|
||||
initializeState_Stop__11dTgBarrel_cFv = .text:0x00000A60; // type:function size:0x4
|
||||
executeState_Stop__11dTgBarrel_cFv = .text:0x00000A70; // type:function size:0x74
|
||||
finalizeState_Stop__11dTgBarrel_cFv = .text:0x00000AF0; // type:function size:0x4
|
||||
fn_442_B00 = .text:0x00000B00; // type:function size:0x21C
|
||||
fn_442_D20 = .text:0x00000D20; // type:function size:0x108
|
||||
checkPlayerPos__11dTgBarrel_cFRC7mVec3_c = .text:0x00000B00; // type:function size:0x21C
|
||||
__dt__11dTgBarrel_cFv = .text:0x00000D20; // type:function size:0x108
|
||||
getStateID__80sStateMgr_c<11dTgBarrel_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x00000E30; // type:function size:0x10
|
||||
build__27sFStateFct_c<11dTgBarrel_c>FRC12sStateIDIf_c = .text:0x00000E40; // type:function size:0x60
|
||||
dispose__27sFStateFct_c<11dTgBarrel_c>FRP10sStateIf_c = .text:0x00000EA0; // type:function size:0xC
|
||||
@@ -50,15 +50,16 @@ isSameName__26sFStateID_c<11dTgBarrel_c>CFPCc = .text:0x00001220; // type:functi
|
||||
_ctors = .ctors:0x00000000; // type:label scope:global
|
||||
_dtors = .dtors:0x00000000; // type:label scope:global
|
||||
__destroy_global_chain_reference = .dtors:0x00000000; // type:object size:0x4 scope:global
|
||||
lbl_442_rodata_0 = .rodata:0x00000000; // type:object size:0x14 data:float
|
||||
lbl_442_rodata_0 = .rodata:0x00000000; // type:object size:0x14 scope:local data:float
|
||||
g_profile_TAG_BARREL = .data:0x00000000; // type:object size:0x10 data:4byte
|
||||
TgBarrel__vtable = .data:0x00000010; // type:object size:0x78
|
||||
lbl_442_data_88 = .data:0x00000088; // type:object size:0x30
|
||||
lbl_442_data_B8 = .data:0x000000B8; // type:object size:0x30
|
||||
lbl_442_data_E8 = .data:0x000000E8; // type:object size:0x18
|
||||
lbl_442_data_100 = .data:0x00000100; // type:object size:0x10C
|
||||
lbl_442_data_20C = .data:0x0000020C; // type:object size:0x34
|
||||
__vt__11dTgBarrel_c = .data:0x00000010; // type:object size:0x74
|
||||
lbl_442_data_88 = .data:0x00000088; // type:object size:0x30 scope:local
|
||||
lbl_442_data_B8 = .data:0x000000B8; // type:object size:0x30 scope:local
|
||||
lbl_442_data_E8 = .data:0x000000E8; // type:object size:0x18 scope:local
|
||||
lbl_442_data_100 = .data:0x00000100; // type:object size:0x10C scope:local
|
||||
lbl_442_data_20C = .data:0x0000020C; // type:object size:0x34 scope:local
|
||||
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
|
||||
lbl_442_bss_8 = .bss:0x00000008; // type:object size:0x10 data:4byte
|
||||
TgBarrel__StateID_Wait = .bss:0x00000018; // type:object size:0x40 data:4byte
|
||||
TgBarrel__StateID_Stop = .bss:0x00000058; // type:object size:0x30 data:4byte
|
||||
@23673 = .bss:0x00000008; // type:object size:0xC scope:local data:4byte
|
||||
StateID_Wait__11dTgBarrel_c = .bss:0x00000018; // type:object size:0x30 data:4byte
|
||||
@23677 = .bss:0x00000048; // type:object size:0xC scope:local data:4byte
|
||||
StateID_Stop__11dTgBarrel_c = .bss:0x00000058; // type:object size:0x30 data:4byte
|
||||
|
||||
@@ -2,12 +2,12 @@ _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
|
||||
dTgBarrelPos_c_classInit__Fv = .text:0x00000070; // type:function size:0x5C
|
||||
TgBarrelPos__init = .text:0x000000D0; // type:function size:0x7C
|
||||
fn_443_150 = .text:0x00000150; // type:function size:0x8
|
||||
fn_443_160 = .text:0x00000160; // type:function size:0xE0
|
||||
fn_443_240 = .text:0x00000240; // type:function size:0x8
|
||||
create__14dTgBarrelPos_cFv = .text:0x000000D0; // type:function size:0x7C
|
||||
doDelete__14dTgBarrelPos_cFv = .text:0x00000150; // type:function size:0x8
|
||||
actorExecute__14dTgBarrelPos_cFv = .text:0x00000160; // type:function size:0xE0
|
||||
draw__14dTgBarrelPos_cFv = .text:0x00000240; // type:function size:0x8
|
||||
__dt__14dTgBarrelPos_cFv = .text:0x00000250; // type:function size:0x74
|
||||
_ctors = .ctors:0x00000000; // type:label scope:global
|
||||
_dtors = .dtors:0x00000000; // type:label scope:global
|
||||
g_profile_TAG_BARREL_POS = .data:0x00000000; // type:object size:0x10
|
||||
lbl_443_section4_10 = .data:0x00000010; // type:object size:0x74
|
||||
__vt__14dTgBarrelPos_c = .data:0x00000010; // type:object size:0x74
|
||||
|
||||
+15
-15
@@ -1138,7 +1138,7 @@ fn_8002ECD0 = .text:0x8002ECD0; // type:function size:0x50
|
||||
fn_8002ED20 = .text:0x8002ED20; // type:function size:0x88
|
||||
fn_8002edb0__12dAcObjBase_cFRQ23m3d15mShadowCircle_cRQ23m3d6smdl_cPC7mQuat_cllf = .text:0x8002EDB0; // type:function size:0x8C
|
||||
drawShadow__12dAcObjBase_cFRQ23m3d15mShadowCircle_cPvRC6mMtx_cPC7mQuat_clllllf = .text:0x8002EE40; // type:function size:0xFC
|
||||
actorSpawnAtActor2 = .text:0x8002EF40; // type:function size:0x24
|
||||
create__12dAcObjBase_cFP12dAcObjBase_cQ28fProfile14PROFILE_NAME_eUlPC7mVec3_cPC7mAng3_cPC7mVec3_cUlUl = .text:0x8002EF40; // type:function size:0x24
|
||||
fn_8002EF70 = .text:0x8002EF70; // type:function size:0x28
|
||||
fn_8002EFA0 = .text:0x8002EFA0; // type:function size:0x50
|
||||
fn_8002eff0__12dAcObjBase_cFRCfRCsP8cCcD_ObjRCfRCf = .text:0x8002EFF0; // type:function size:0x194
|
||||
@@ -3525,7 +3525,7 @@ getCurrentEventCommand__17ActorEventRelatedCFv = .text:0x8009CF10; // type:funct
|
||||
ActorEventRelated__getSomeEventRelatedNumber = .text:0x8009CFA0; // type:function size:0x80
|
||||
isAdvance__17ActorEventRelatedFv = .text:0x8009D020; // type:function size:0x34
|
||||
advanceNext__17ActorEventRelatedFv = .text:0x8009D060; // type:function size:0x50
|
||||
ActorEventRelated__getSingleIntData2 = .text:0x8009D0B0; // type:function size:0x8C
|
||||
getSingleShortData__17ActorEventRelatedFPiUlUl = .text:0x8009D0B0; // type:function size:0x8C
|
||||
getSingleIntData__17ActorEventRelatedFPiUlUl = .text:0x8009D140; // type:function size:0x8C
|
||||
getSingleFloatData__17ActorEventRelatedFPfUlUl = .text:0x8009D1D0; // type:function size:0x8C
|
||||
getSingleVecData__17ActorEventRelatedFP7mVec3_cUlUl = .text:0x8009D260; // type:function size:0x9C
|
||||
@@ -3568,7 +3568,7 @@ fn_8009F850 = .text:0x8009F850; // type:function size:0x134
|
||||
fn_8009F990__12EventManagerFv = .text:0x8009F990; // type:function size:0x80
|
||||
fn_8009FA10 = .text:0x8009FA10; // type:function size:0x8
|
||||
attachSkipEvent = .text:0x8009FA20; // type:function size:0x1A0
|
||||
setAsEvent = .text:0x8009FBC0; // type:function size:0x120
|
||||
setEvent__12EventManagerFP9dAcBase_cP5EventP9dAcBase_c = .text:0x8009FBC0; // type:function size:0x120
|
||||
changeOwnEvent__12EventManagerFP9dAcBase_cP9dAcBase_cP5Eventi = .text:0x8009FCE0; // type:function size:0x11C
|
||||
fn_8009FE00 = .text:0x8009FE00; // type:function size:0x124
|
||||
isInEvent__12EventManagerFP9dAcBase_cPCc = .text:0x8009FF30; // type:function size:0x10C
|
||||
@@ -4741,16 +4741,16 @@ __dt__16dLytMeterTimer_cFv = .text:0x800D4DE0; // type:function size:0xB4 scope:
|
||||
__dt__14dLytSkyGauge_cFv = .text:0x800D4EA0; // type:function size:0x164 scope:weak
|
||||
__dt__15dLytBirdGauge_cFv = .text:0x800D5010; // type:function size:0x164 scope:weak
|
||||
__dt__15dLytBossGauge_cFv = .text:0x800D5180; // type:function size:0x108 scope:weak
|
||||
fn_800D5290__15dLytMeterMain_cFv = .text:0x800D5290; // type:function size:0xB4
|
||||
fn_800D5350__15dLytMeterMain_cFv = .text:0x800D5350; // type:function size:0x30
|
||||
executeMap__15dLytMeterMain_cFv = .text:0x800D5290; // type:function size:0xB4
|
||||
isInMapEvent__15dLytMeterMain_cFv = .text:0x800D5350; // type:function size:0x30
|
||||
fn_800D5380__15dLytMeterMain_cFUc = .text:0x800D5380; // type:function size:0x44
|
||||
fn_800D53D0__15dLytMeterMain_cFv = .text:0x800D53D0; // type:function size:0x50
|
||||
isDoingSkyKeepPuzzle__15dLytMeterMain_cFv = .text:0x800D53D0; // type:function size:0x50
|
||||
fn_800D5420__15dLytMeterMain_cFv = .text:0x800D5420; // type:function size:0x114
|
||||
isSilentRealm__15dLytMeterMain_cFv = .text:0x800D5540; // type:function size:0x4C
|
||||
fn_800D5590__15dLytMeterMain_cFv = .text:0x800D5590; // type:function size:0x98
|
||||
fn_800D5630__15dLytMeterMain_cFv = .text:0x800D5630; // type:function size:0x18
|
||||
fn_800D5650__15dLytMeterMain_cFv = .text:0x800D5650; // type:function size:0x24
|
||||
fn_800D5680__15dLytMeterMain_cFv = .text:0x800D5680; // type:function size:0x28
|
||||
isInModeMap__15dLytMeterMain_cFv = .text:0x800D5650; // type:function size:0x24
|
||||
isInModePause__15dLytMeterMain_cFv = .text:0x800D5680; // type:function size:0x28
|
||||
fn_800D56B0__15dLytMeterMain_cFv = .text:0x800D56B0; // type:function size:0xFC
|
||||
checkPaneVisibility__15dLytMeterMain_cFv = .text:0x800D57B0; // type:function size:0x1A58
|
||||
execute__15dLytMeterMain_cFv = .text:0x800D7210; // type:function size:0x92C
|
||||
@@ -9879,8 +9879,8 @@ fn_80178E90 = .text:0x80178E90; // type:function size:0x40
|
||||
fn_80178ED0 = .text:0x80178ED0; // type:function size:0x114
|
||||
__dt__13dAcBirdBase_cFv = .text:0x80178FF0; // type:function size:0xDC
|
||||
__dt__Q213dAcBirdBase_c10callback_cFv = .text:0x801790D0; // type:function size:0x58
|
||||
__ct__16dAcObjDoor_cFv = .text:0x80179130; // type:function size:0x58
|
||||
fn_80179190 = .text:0x80179190; // type:function size:0x74
|
||||
__ct__12dAcObjDoor_cFv = .text:0x80179130; // type:function size:0x58
|
||||
__dt__12dAcObjDoor_cFv = .text:0x80179190; // type:function size:0x74
|
||||
ActorDoorBase__hasVisitedRoomIdMaybe = .text:0x80179210; // type:function size:0x14
|
||||
fn_80179230 = .text:0x80179230; // type:function size:0x4
|
||||
fn_80179240 = .text:0x80179240; // type:function size:0x4
|
||||
@@ -10420,13 +10420,13 @@ fn_80194A90 = .text:0x80194A90; // type:function size:0x58
|
||||
checkStatueFlag__10dAcOSave_cCFv = .text:0x80194AF0; // type:function size:0x28
|
||||
fn_80194B20 = .text:0x80194B20; // type:function size:0x8
|
||||
fn_80194B30 = .text:0x80194B30; // type:function size:0x44
|
||||
fn_80194B80 = .text:0x80194B80; // type:function size:0x8
|
||||
getConnectedDoorRef__10dAcOdoor_cFv = .text:0x80194B80; // type:function size:0x8
|
||||
fn_80194B90 = .text:0x80194B90; // type:function size:0x8
|
||||
fn_80194BA0 = .text:0x80194BA0; // type:function size:0x30
|
||||
isConnectedToOtherDoor__10dAcOdoor_cCFv = .text:0x80194BA0; // type:function size:0x30
|
||||
fn_80194BD0 = .text:0x80194BD0; // type:function size:0x18
|
||||
fn_80194BF0 = .text:0x80194BF0; // type:function size:0x24
|
||||
fn_80194C20 = .text:0x80194C20; // type:function size:0x48
|
||||
fn_80194C70 = .text:0x80194C70; // type:function size:0x70
|
||||
stepTowards__10dAcOdoor_cCFR7mVec3_c = .text:0x80194C70; // type:function size:0x70
|
||||
getImprisonedPtr = .text:0x80194CE0; // type:function size:0x8
|
||||
fn_80194CF0 = .text:0x80194CF0; // type:function size:0x128
|
||||
dAcOClef__getTadtoneGroupIndex = .text:0x80194E20; // type:function size:0x38
|
||||
@@ -10960,9 +10960,9 @@ waitForRooms__8dStage_cFv = .text:0x801B3930; // type:function size:0x30
|
||||
setRoom__8dStage_cFiP7dRoom_c = .text:0x801B3960; // type:function size:0x10
|
||||
getRoom__8dStage_cFl = .text:0x801B3970; // type:function size:0x10
|
||||
handleRoomChange__8dStage_cFi = .text:0x801B3980; // type:function size:0x114
|
||||
RoomManager__updateRoomFlags = .text:0x801B3AA0; // type:function size:0x134
|
||||
updateRoomFlags__8dStage_cFii = .text:0x801B3AA0; // type:function size:0x134
|
||||
RoomManager__checkOtherRoomLoaded = .text:0x801B3BE0; // type:function size:0x78
|
||||
fn_801B3C60 = .text:0x801B3C60; // type:function size:0x9C
|
||||
fn_801B3C60__8dStage_cFi = .text:0x801B3C60; // type:function size:0x9C
|
||||
fadeIn__8dStage_cFlUs = .text:0x801B3D00; // type:function size:0xA8
|
||||
fadeOut__8dStage_cFlUs = .text:0x801B3DB0; // type:function size:0xA8
|
||||
forceFadeOut__8dStage_cFv = .text:0x801B3E60; // type:function size:0x40
|
||||
|
||||
+1
-1
@@ -2878,7 +2878,7 @@ config.libs = [
|
||||
Rel(NonMatching, "d_t_at0", "REL/d/t/d_t_at0.cpp"),
|
||||
Rel(NonMatching, "d_t_auto_message", "REL/d/t/d_t_auto_message.cpp"),
|
||||
Rel(NonMatching, "d_t_barrel", "REL/d/t/d_t_barrel.cpp"),
|
||||
Rel(NonMatching, "d_t_barrel_pos", "REL/d/t/d_t_barrel_pos.cpp"),
|
||||
Rel(Matching, "d_t_barrel_pos", "REL/d/t/d_t_barrel_pos.cpp"),
|
||||
Rel(NonMatching, "d_t_bb_quake", "REL/d/t/d_t_bb_quake.cpp"),
|
||||
Rel(NonMatching, "d_t_bcal_tag", "REL/d/t/d_t_bcal_tag.cpp"),
|
||||
Rel(NonMatching, "d_t_bcz", "REL/d/t/d_t_bcz.cpp"),
|
||||
|
||||
@@ -125,6 +125,9 @@ public:
|
||||
public:
|
||||
dAcBase_c();
|
||||
|
||||
void setSubtype(u8 sub) {
|
||||
mSubtype = sub;
|
||||
}
|
||||
void setPosition(const mVec3_c &r) {
|
||||
mPosition = r;
|
||||
}
|
||||
|
||||
@@ -181,6 +181,11 @@ public:
|
||||
const char *name, u32 roomId, u32 params1, const mVec3_c *pos, const mAng3_c *rot, const mVec3_c *scale,
|
||||
u32 params2, u16 id, s8 viewclipId
|
||||
);
|
||||
static dAcObjBase_c *create(
|
||||
dAcObjBase_c *, fProfile::PROFILE_NAME_e actorId, u32 params1, const mVec3_c *pos, const mAng3_c *rot,
|
||||
const mVec3_c *scale, u32 params2, u32 roomId
|
||||
);
|
||||
|
||||
static dAcObjBase_c *findObject(fProfile::PROFILE_NAME_e actorId, fLiNdBa_c *refList, dAcObjBase_c *parent);
|
||||
static dAcObjBase_c *getNextObject(fLiMgBa_c *ref, dAcObjBase_c *parent);
|
||||
bool isPlayer();
|
||||
|
||||
@@ -1,16 +1,319 @@
|
||||
#ifndef D_A_OBJ_DOOR_H
|
||||
#define D_A_OBJ_DOOR_H
|
||||
|
||||
#include "common.h"
|
||||
#include "d/a/d_a_base.h"
|
||||
#include "d/a/obj/d_a_obj_base.h"
|
||||
#include "d/a/obj/d_a_obj_door_base.h"
|
||||
#include "m/m3d/m_anmmdl.h"
|
||||
#include "m/m3d/m_smdl.h"
|
||||
#include "m/m_mtx.h"
|
||||
#include "m/m_vec.h"
|
||||
#include "toBeSorted/actor_event.h"
|
||||
#include "toBeSorted/d_emitter.h"
|
||||
#include "toBeSorted/d_flow_mgr.h"
|
||||
|
||||
struct dTimeBits {
|
||||
dTimeBits() : field_0x00(false), field_0x01(false) {}
|
||||
bool field_0x00;
|
||||
bool field_0x01;
|
||||
};
|
||||
|
||||
class dAcOLock_c;
|
||||
|
||||
class dAcOdoor_c : public dAcObjDoor_c {
|
||||
public:
|
||||
dAcOdoor_c() {}
|
||||
enum Subtype_e {
|
||||
DOOR_NORMAL, ///< DoorA00 - Normal Wooden Door
|
||||
DOOR_METAL, ///< DoorA01 - Metal Door - Academy(bathrooms)
|
||||
DOOR_DOUBLE, ///< DoorC00 - Normal Double Doors
|
||||
DOOR_DOUBLE_OUTSIDE, ///< DoorC01 - Outdoor Double Doors - Academy(to outside)
|
||||
DOOR_TEMPLE_SIDE, ///< DoorB00 - Sealed Temple Side Doors
|
||||
DOOR_SANDSEA_TIMESHIFT, ///< DoorE - Sandsea Timeshift Door
|
||||
DOOR_BATREAUX, ///< DoorA02 - Batreaux's Door
|
||||
DOOR_TEMPLE_MAIN, ///< DoorF - Sealed Temple Main Door
|
||||
DOOR_SPARRING_HALL, ///< DoorH - Sparring Hall Outer Doors
|
||||
};
|
||||
|
||||
enum LockType_e {
|
||||
LOCK_NONE = 0, ///< Door does not have a lock
|
||||
LOCK_KEY = 1, ///< Door usually is locked
|
||||
};
|
||||
|
||||
enum LockBehavior_e {
|
||||
LOCK_NEVER = 0, ///< Door is always unlocked
|
||||
LOCK_NOT_SET = 1, ///< Door is locked when mSceneflag is unset
|
||||
LOCK_NEVER1 = 2, ///< Door is always unlocked (Kukiel's House)
|
||||
LOCK_TIMESHIFT = 3, ///< Door is locked when mSceneflag is unset (Timeshift)
|
||||
LOCK_SET = 4, ///< Door is locked when mSceneflag is set
|
||||
LOCK_DAY = 5, ///< Door is locked during the day
|
||||
LOCK_NIGHT = 6, ///< Door is locked during the night
|
||||
LOCK_MAX,
|
||||
};
|
||||
|
||||
public:
|
||||
dAcOdoor_c()
|
||||
: mEventRelated(*this, nullptr),
|
||||
mEmmiterL(this),
|
||||
mEmmiterR(this),
|
||||
mFlags(0),
|
||||
mExitTimer(0),
|
||||
mbInSandshipBoss(false),
|
||||
field_0x5BA(false) {}
|
||||
virtual ~dAcOdoor_c() {}
|
||||
|
||||
virtual int doDelete() override;
|
||||
virtual int draw() override;
|
||||
virtual bool createHeap() override;
|
||||
virtual int actorCreate() override;
|
||||
virtual int actorPostCreate() override;
|
||||
virtual int actorExecute() override;
|
||||
virtual int actorExecuteInEvent() override;
|
||||
virtual void registerInEvent() override;
|
||||
virtual void unkVirtFunc_0x6C() override;
|
||||
virtual void doInteraction(s32 /* InteractionType */) override;
|
||||
virtual bool canOpen() override;
|
||||
|
||||
/** Gets whether the player can open the door */
|
||||
bool isLocked();
|
||||
|
||||
/** fn_572_33E0 - I Think this gets the Door open range*/
|
||||
static f32 fn_572_33E0();
|
||||
|
||||
/** Self Explanatory */
|
||||
void startPullEventWithoutCallback(void *zevData);
|
||||
|
||||
/** Self Explanatory */
|
||||
void startPullEventWithCallback(void *zevData);
|
||||
|
||||
/** Self Explanatory */
|
||||
void startPushEventWithoutCallback(void *zevData);
|
||||
|
||||
/** Self Explanatory */
|
||||
void startPushEventWithCallback(void *zevData);
|
||||
|
||||
/** Self Explanatory */
|
||||
void startPullEvent(void *zevData);
|
||||
|
||||
/** Self Explanatory */
|
||||
void startPushEvent(void *zevData);
|
||||
|
||||
/** Self Explanatory */
|
||||
void startOpenEvent(void *zevData);
|
||||
|
||||
/** Self Explanatory */
|
||||
static void doorPullEventCallback(void *);
|
||||
|
||||
/** Self Explanatory */
|
||||
static void doorPushEventCallback(void *);
|
||||
|
||||
/** Self Explanatory */
|
||||
void startDoorPullLockedEvent(void *zevData);
|
||||
|
||||
/** Self Explanatory */
|
||||
void startDoorPushLockedEvent(void *zevData);
|
||||
|
||||
/** Self Explanatory */
|
||||
void startLockedEvent(void *zevData);
|
||||
|
||||
/** Self Explanatory */
|
||||
static void pullLockedEventCallback(void *);
|
||||
|
||||
/** Self Explanatory */
|
||||
static void pushLockedEventCallback(void *);
|
||||
|
||||
/** Self Explanatory */
|
||||
void startUnlockEvent();
|
||||
|
||||
/** Self Explanatory */
|
||||
static void unlockEventCallback(void *);
|
||||
|
||||
/** Self Explanatory */
|
||||
static void openCallbackCommon(void *);
|
||||
|
||||
/** Returns if the door is physically locked with the dAcOLock_c Actor */
|
||||
s32 getLockParameter();
|
||||
|
||||
/** Gets the behavior of being locked when not locked with the dAcOLock_c Actor */
|
||||
s32 getLockBehavior();
|
||||
|
||||
/** Get Scenflag used for locking status */
|
||||
u8 getSceneflag();
|
||||
|
||||
/** Gets whether the door has callbacks enabled */
|
||||
u8 getDoorCallbackType();
|
||||
|
||||
/** getFrontRoomParam */
|
||||
u8 getFrontRoomParam(); // (mRotation.z >> 4) & 0x3F
|
||||
|
||||
/** getBackRoomParam */
|
||||
u8 getBackRoomParam(); // (mRotation.z >> 10) & 0x3F
|
||||
|
||||
/** Gets the Flag set when failed to open - Called from Try Locked Callback */
|
||||
u16 getFailedToOpenFlag();
|
||||
|
||||
/** Interaction Radius -X */
|
||||
static f32 getInteractionMinX();
|
||||
|
||||
/** Interaction Radius +X */
|
||||
static f32 getInteractionMaxX();
|
||||
|
||||
/** Interaction Radius -Z */
|
||||
static f32 getInteractionMinZ();
|
||||
|
||||
/** Interaction Radius +Z */
|
||||
static f32 getInteractionMaxZ();
|
||||
|
||||
/** Interaction Radius -X - Door has Lock */
|
||||
static f32 getInteractionLockMinX();
|
||||
|
||||
/** Interaction Radius +X - Door has Lock */
|
||||
static f32 getInteractionLockMaxX();
|
||||
|
||||
/** Interaction Radius -Z - Door has Lock */
|
||||
static f32 getInteractionLockMinZ();
|
||||
|
||||
/** Interaction Radius +Z - Door has Lock */
|
||||
static f32 getInteractionLockMaxZ();
|
||||
|
||||
/** Sets the RoomID */
|
||||
void setRoomId(s8 roomId);
|
||||
|
||||
/** Set Flag - Usually Time Door related */
|
||||
void setFlag(u32 flags);
|
||||
|
||||
/** Sets the behavior on Event creation */
|
||||
void setEventCallbackType(u8);
|
||||
|
||||
/** setFrontRoom */
|
||||
void setFrontRoom(s8); // mFrontRoomId = in
|
||||
|
||||
/** setBackRoom */
|
||||
void setBackRoom(s8); // mBackRoomId = in
|
||||
|
||||
/** Sets status indicating it can be a double door */
|
||||
void setDoubleDoor();
|
||||
|
||||
/** Sets status indicating it cant be a double door */
|
||||
void setNotDoubleDoor();
|
||||
|
||||
/** Sets status indicating its a single door / Main door */
|
||||
void setSingleDoor();
|
||||
|
||||
/** Sets status indicating its not a single door / not Main door */
|
||||
void setNotSingleDoor();
|
||||
|
||||
/** setInSandshipBoss */
|
||||
void setInSandshipBoss(); // mbInSandshipBoss = true
|
||||
|
||||
/** isTimeDoorEventActive */
|
||||
bool isTimeDoorEventActive() const;
|
||||
|
||||
/** setTimeDoorEventActive */
|
||||
void setTimeDoorEventActive();
|
||||
|
||||
/** setTimeDoorEventInactive */
|
||||
void setTimeDoorEventInactive();
|
||||
|
||||
/** Sets status indicating it is effected by Timeshift */
|
||||
void setTimeEffected();
|
||||
|
||||
/** Sets status indicating it is not effected by Timeshift */
|
||||
void setTimeStatic();
|
||||
|
||||
/** Checks to see if the Front room exists(return) and has flags set(b) */
|
||||
bool checkFrontRoom(bool &b) const;
|
||||
|
||||
/** Checks to see if the Back room exists(return) and has flags set(b) */
|
||||
bool checkBackRoom(bool &b) const;
|
||||
|
||||
/** Checks to see if the Front and Back room exists(return) and has flags set(b) */
|
||||
bool checkRooms(bool &b) const;
|
||||
|
||||
/** Transitions the game to the next room */
|
||||
void triggerExit();
|
||||
|
||||
/** TODO(Zeldex) Whats special about this? */
|
||||
bool isLeavingSealedTempleSideDoorPostSkyKeep() const;
|
||||
|
||||
/** */
|
||||
void transitionPushRoomFlags() const;
|
||||
|
||||
/** */
|
||||
void transitionPullRoomFlags() const;
|
||||
|
||||
/** Checks a point to determine which side of the door it is on */
|
||||
bool isPositionInFrontOfDoor(const mVec3_c &point) const;
|
||||
|
||||
/** Checks the players postion to see if it is front of the door. This means it will be pulled open */
|
||||
bool checkPullDoor() const;
|
||||
|
||||
/** Checks to see if the door has a flow entry point */
|
||||
bool hasFlowEntryPoint();
|
||||
|
||||
/** Checks to see if the Door is effected by Timeshift */
|
||||
bool isTimeEffected() const;
|
||||
|
||||
/** Sets the Position of the Doorknob based on the Animation */
|
||||
void setDoorKnobPosition();
|
||||
|
||||
/** Checks to see if the Player is within an interactable range */
|
||||
bool isPlayerInteractable() const;
|
||||
|
||||
/** Checks to see if the Player is within an interactable range when door is locked */
|
||||
bool isPlayerInteractableLocked() const;
|
||||
|
||||
/** Plays the talk event for when the door is locked */
|
||||
void playInteractionLocked();
|
||||
|
||||
public:
|
||||
s32 getType() const {
|
||||
return mParams & 0x3F;
|
||||
}
|
||||
s32 getField_0x5B4() const {
|
||||
return mFrontRoomId;
|
||||
}
|
||||
s32 getField_0x5B5() const {
|
||||
return mBackRoomId;
|
||||
}
|
||||
|
||||
public: // Functions in this section defined in main dol
|
||||
bool isConnectedToOtherDoor() const;
|
||||
dAcRef_c<dAcOdoor_c> &getConnectedDoorRef(); // return mConnectedDoor;
|
||||
|
||||
/** fn_80194C70 : Rotates the input by this->mRotation.y and adds this->mPosition */
|
||||
void stepTowards(mVec3_c &newPosition) const;
|
||||
|
||||
private:
|
||||
/* 0x33C */ m3d::smdl_c mMdl0;
|
||||
/* 0x358 */ m3d::smdl_c mMdl1;
|
||||
/* 0x374 */ m3d::mdlAnmChr mAnmChr;
|
||||
/* 0x3DC */ ActorEventRelated mEventRelated;
|
||||
/* 0x42C */ dFlowMgr_c mFlowMgr;
|
||||
/* 0x4E8 */ dEmitter_c mEmmiterL;
|
||||
/* 0x51C */ dEmitter_c mEmmiterR;
|
||||
/* 0x550 */ dTimeBits mTimeBits;
|
||||
/* 0x554 */ dAcRef_c<dAcOdoor_c> mConnectedDoor; ///< When the door is a double door, this is its pair
|
||||
/* 0x560 */ dAcRef_c<dAcOLock_c> mLock;
|
||||
/* 0x56C */ dAcRef_c<dAcObjBase_c> mObjRef; ///< TODO(Zeldex) This is probably the Sandship stage for boss
|
||||
|
||||
/* 0x578 */ mMtx_c mMtx; ///< Currently unknown. I am assuming this is used to move the door on the Sandship stage
|
||||
///< while the boat is rocking
|
||||
|
||||
/* 0x5A8 */ u32 mFlags; ///< 0x2 - Time Effected
|
||||
/* 0x5AC */ u32 mRumbleIdx; ///< Rumble used for when opening the main sealed temple door
|
||||
/* 0x5B0 */ u8 mExitTimer; ///< Timer used to advance the Begin Pull/Push events
|
||||
/* 0x5B1 */ u8 mLockBehavior; ///< see LockBehavior_e
|
||||
/* 0x5B2 */ u8 mSceneflag; ///< Used for unlocking/locking the door.
|
||||
/* 0x5B3 */ u8 mEventCallbackType; ///< 0 for events without callbacks, 1 for events with a callback
|
||||
/* 0x5B4 */ s8 mFrontRoomId; ///< Room id of the front side of the door
|
||||
/* 0x5B5 */ s8 mBackRoomId; ///< Room id of the back side of the door
|
||||
/* 0x5B6 */ s8 mFramesInEvent; ///< The count of frames in one particular event
|
||||
/* 0x5B7 */ bool mbDoubleDoor; ///< Set if the type was matched to be a double door variant
|
||||
/* 0x5B8 */ bool mbSingleDoor; ///< UNUSHED - Set if the type was matched to be a single door
|
||||
/* 0x5B9 */ bool mbInSandshipBoss; ///< Indicates if in the Tentalus fight
|
||||
/* 0x5BA */ bool field_0x5BA; ///< ???
|
||||
/* 0x5BB */ bool mbKobunDoor; ///< Used to indicate its Cawlin and Strich's door
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -1,11 +1,28 @@
|
||||
#ifndef D_A_OBJ_DOOR_BASE_H
|
||||
#define D_A_OBJ_DOOR_BASE_H
|
||||
|
||||
#include "d/a/d_a_base.h"
|
||||
#include "d/a/obj/d_a_obj_base.h"
|
||||
#include "f/f_list_mg.h"
|
||||
|
||||
// Ghidra: ActorDoorBase
|
||||
// size:
|
||||
// non-official name
|
||||
class dAcObjDoor_c : public dAcObjBase_c {};
|
||||
class dAcObjDoor_c : public dAcObjBase_c {
|
||||
public:
|
||||
dAcObjDoor_c();
|
||||
~dAcObjDoor_c();
|
||||
|
||||
virtual bool canOpen() = 0;
|
||||
virtual bool hasVisitedRoom();
|
||||
virtual void vt_0x88();
|
||||
virtual void vt_0x8C();
|
||||
|
||||
protected:
|
||||
dAcRef_c<dAcObjDoor_c> mDoorRef;
|
||||
|
||||
private:
|
||||
static fLiMgBa_c sDoorList;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -10,6 +10,8 @@ public:
|
||||
dAcOdoorBoss_c() : mStateMgr(*this, sStateID::null) {}
|
||||
virtual ~dAcOdoorBoss_c() {}
|
||||
|
||||
virtual bool canOpen() override;
|
||||
|
||||
STATE_FUNC_DECLARE(dAcOdoorBoss_c, UnlockWait);
|
||||
STATE_FUNC_DECLARE(dAcOdoorBoss_c, CorrectKey);
|
||||
STATE_FUNC_DECLARE(dAcOdoorBoss_c, KeyInsertInitialInterval);
|
||||
|
||||
@@ -10,6 +10,15 @@ public:
|
||||
dAcOFence_c();
|
||||
virtual ~dAcOFence_c();
|
||||
|
||||
bool fn_550_11B0() const;
|
||||
void fn_550_1250();
|
||||
void fn_550_12B0();
|
||||
void fn_550_12C0();
|
||||
|
||||
void changeToRequestConfineEvent() {
|
||||
mStateMgr.changeState(StateID_RequestConfineEvent);
|
||||
}
|
||||
|
||||
STATE_FUNC_DECLARE(dAcOFence_c, WaitOpen);
|
||||
STATE_FUNC_DECLARE(dAcOFence_c, Open);
|
||||
STATE_FUNC_DECLARE(dAcOFence_c, OpenPocoAPoco);
|
||||
@@ -21,7 +30,8 @@ public:
|
||||
STATE_FUNC_DECLARE(dAcOFence_c, RequestConfineEvent);
|
||||
|
||||
private:
|
||||
/* 0x??? */ STATE_MGR_DECLARE(dAcOFence_c);
|
||||
/* 0x330 */ u8 _0x330[0x368 - 0x330];
|
||||
/* 0x368 */ STATE_MGR_DECLARE(dAcOFence_c);
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -12,8 +12,18 @@ public:
|
||||
|
||||
STATE_FUNC_DECLARE(dAcOLock_c, Wait);
|
||||
|
||||
bool checkField_0x2091() const {
|
||||
return field_0x2091;
|
||||
}
|
||||
void setField_0x2090() {
|
||||
field_0x2090 = true;
|
||||
}
|
||||
|
||||
private:
|
||||
/* 0x??? */ STATE_MGR_DECLARE(dAcOLock_c);
|
||||
/* 0x???? */ STATE_MGR_DECLARE(dAcOLock_c);
|
||||
/* 0x???? */ u8 _0x36C[0x2090 - 0x36C];
|
||||
/* 0x2090 */ bool field_0x2090;
|
||||
/* 0x2091 */ bool field_0x2091;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -10,6 +10,8 @@ public:
|
||||
dAcOShutter_c() : mStateMgr(*this, sStateID::null) {}
|
||||
virtual ~dAcOShutter_c() {}
|
||||
|
||||
virtual bool canOpen() override;
|
||||
|
||||
STATE_FUNC_DECLARE(dAcOShutter_c, Wait);
|
||||
STATE_FUNC_DECLARE(dAcOShutter_c, Open);
|
||||
STATE_FUNC_DECLARE(dAcOShutter_c, Close);
|
||||
|
||||
@@ -10,6 +10,8 @@ public:
|
||||
dAcOShutterChangeScene_c() : mStateMgr(*this, sStateID::null) {}
|
||||
virtual ~dAcOShutterChangeScene_c() {}
|
||||
|
||||
virtual bool canOpen() override;
|
||||
|
||||
STATE_FUNC_DECLARE(dAcOShutterChangeScene_c, WaitOpenShutter);
|
||||
STATE_FUNC_DECLARE(dAcOShutterChangeScene_c, WaitOpenShutterForEvent);
|
||||
STATE_FUNC_DECLARE(dAcOShutterChangeScene_c, OpenShutter);
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
|
||||
#include "d/a/obj/d_a_obj_base.h"
|
||||
#include "s/s_State.hpp"
|
||||
#include "s/s_StateMgr.hpp"
|
||||
|
||||
class dAcOstageSink_c : public dAcObjBase_c {
|
||||
public:
|
||||
@@ -13,8 +12,12 @@ public:
|
||||
STATE_FUNC_DECLARE(dAcOstageSink_c, Wait);
|
||||
STATE_FUNC_DECLARE(dAcOstageSink_c, Move);
|
||||
|
||||
static dAcOstageSink_c *GetInstance();
|
||||
|
||||
private:
|
||||
/* 0x??? */ STATE_MGR_DECLARE(dAcOstageSink_c);
|
||||
|
||||
static dAcOstageSink_c *sInstance;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -10,6 +10,8 @@ public:
|
||||
dAcOTrlyShtrChgScn_c() : mStateMgr(*this, sStateID::null) {}
|
||||
virtual ~dAcOTrlyShtrChgScn_c() {}
|
||||
|
||||
virtual bool canOpen() override;
|
||||
|
||||
STATE_FUNC_DECLARE(dAcOTrlyShtrChgScn_c, Wait);
|
||||
STATE_FUNC_DECLARE(dAcOTrlyShtrChgScn_c, OpenEvent);
|
||||
|
||||
|
||||
@@ -10,6 +10,8 @@ public:
|
||||
dAcOTrolleyShutter_c() : mStateMgr(*this, sStateID::null) {}
|
||||
virtual ~dAcOTrolleyShutter_c() {}
|
||||
|
||||
virtual bool canOpen() override;
|
||||
|
||||
STATE_FUNC_DECLARE(dAcOTrolleyShutter_c, Wait);
|
||||
STATE_FUNC_DECLARE(dAcOTrolleyShutter_c, OpenEvent);
|
||||
|
||||
|
||||
@@ -27,6 +27,9 @@ public:
|
||||
static dBgS_ObjGndChk &GetInstance() {
|
||||
return sInstance;
|
||||
}
|
||||
static dBgS_ObjGndChk *GetPInstance() {
|
||||
return &sInstance;
|
||||
}
|
||||
static f32 GetGroundHeight() {
|
||||
return sGroundHeight;
|
||||
}
|
||||
|
||||
@@ -630,7 +630,7 @@ public:
|
||||
bool isAttackingSpinHorizontal() const;
|
||||
bool isAttackingSpinVertical() const;
|
||||
void setBonkRelatedAnimFlag(bool b);
|
||||
void setPosYRot(const mVec3_c &pos, mAng rot, bool force, UNKWORD, UNKWORD);
|
||||
void setPosYRot(const mVec3_c &pos, mAng rot, bool force = false, UNKWORD = 0, UNKWORD = 0);
|
||||
void setTransform(const mMtx_c &mtx, bool force, UNKWORD, UNKWORD);
|
||||
bool someTargetedActorCheck() const;
|
||||
static mAng fn_8005BA90();
|
||||
@@ -646,7 +646,6 @@ public:
|
||||
static const char *getSwordName(s32);
|
||||
static s32 getCurrentlyEquippedShieldType();
|
||||
|
||||
|
||||
static const mColor &getEarringsColor();
|
||||
|
||||
static mVec3_c sPos1;
|
||||
|
||||
@@ -111,6 +111,9 @@ public:
|
||||
bool checkFlag(u32 flag) {
|
||||
return mFlags & flag;
|
||||
}
|
||||
void setFlag(u8 flag) {
|
||||
mFlags |= flag;
|
||||
}
|
||||
|
||||
void drawOnMapIfVisible(mMtx_c *mtx, int param);
|
||||
void getBounds(mVec3_c *min, mVec3_c *max) const;
|
||||
|
||||
@@ -116,8 +116,10 @@ public:
|
||||
int draw() override;
|
||||
void deleteReady() override;
|
||||
|
||||
void fn_801B3C60(int roomId);
|
||||
void drawMap(mMtx_c *mtx, int);
|
||||
dRoom_c *getRoom(s32 idx);
|
||||
void updateRoomFlags(int, int);
|
||||
void setRoom(int roomid, dRoom_c *room);
|
||||
void handleRoomChange(int roomid);
|
||||
|
||||
|
||||
@@ -106,7 +106,6 @@ public:
|
||||
static dStageMgr_c *GetInstance() {
|
||||
return sInstance;
|
||||
}
|
||||
|
||||
EGG::CpuTexture *getField_0x8898() {
|
||||
return field_0x8898;
|
||||
}
|
||||
@@ -225,7 +224,7 @@ private:
|
||||
// ...
|
||||
u8 ___[438];
|
||||
/* 0x8898 */ EGG::CpuTexture *field_0x8898;
|
||||
|
||||
|
||||
u8 _0x889C[4];
|
||||
|
||||
/* 0x88A0 */ u32 field_0x88A0;
|
||||
|
||||
@@ -77,7 +77,8 @@ public:
|
||||
enum Mode_e {
|
||||
MODE_MAP_INIT = 0,
|
||||
MODE_MAP = 1,
|
||||
MODE_PAUSE = 2,
|
||||
MODE_PAUSE_INIT = 2,
|
||||
MODE_PAUSE = 3,
|
||||
MODE_NONE = 4,
|
||||
};
|
||||
|
||||
@@ -94,20 +95,20 @@ public:
|
||||
bool fn_800C9FE0();
|
||||
bool fn_800CA040();
|
||||
|
||||
bool fn_800D5350();
|
||||
bool isInMapEvent();
|
||||
bool fn_800D5380(u8);
|
||||
void fn_800D5290();
|
||||
void executeMap();
|
||||
bool fn_800D5590();
|
||||
void fn_800D5630();
|
||||
bool fn_800D5650();
|
||||
bool fn_800D5680();
|
||||
bool isInModeMap();
|
||||
bool isInModePause();
|
||||
bool fn_800D56B0();
|
||||
void checkPaneVisibility();
|
||||
bool execute();
|
||||
|
||||
bool isSilentRealm();
|
||||
|
||||
bool fn_800D53D0();
|
||||
bool isDoingSkyKeepPuzzle();
|
||||
bool fn_800D5420();
|
||||
|
||||
void setUiMode(u16 value) const;
|
||||
@@ -129,8 +130,8 @@ public:
|
||||
mPanesNotHiddenByAreaCaption[15] = visible;
|
||||
}
|
||||
|
||||
bool getField_0x1377E() const {
|
||||
return field_0x1377E;
|
||||
bool isInSwordDrawEvent() const {
|
||||
return mIsInSwordDrawEvent;
|
||||
}
|
||||
|
||||
bool getField_0x1377F() const {
|
||||
@@ -184,7 +185,7 @@ private:
|
||||
/* 0x1373C */ mVec3_c mRupyPos;
|
||||
/* 0x13748 */ s32 mBasicPosition;
|
||||
/* 0x1374C */ s32 mSavedBasicPosition;
|
||||
/* 0x13750 */ s32 field_0x13750;
|
||||
/* 0x13750 */ s32 mMode;
|
||||
/* 0x13754 */ s32 field_0x13754;
|
||||
/* 0x13758 */ s32 mShieldPosIndex;
|
||||
/* 0x1375C */ s32 mRupyPosIndex;
|
||||
@@ -206,7 +207,7 @@ private:
|
||||
/* 0x1377B */ bool mBossKeyVisible;
|
||||
/* 0x1377C */ bool mSmallKeyVisible;
|
||||
/* 0x1377D */ bool mDrinkVisible;
|
||||
/* 0x1377E */ bool field_0x1377E;
|
||||
/* 0x1377E */ bool mIsInSwordDrawEvent;
|
||||
/* 0x1377F */ bool field_0x1377F;
|
||||
/* 0x13780 */ bool field_0x13780;
|
||||
/* 0x13781 */ bool field_0x13781;
|
||||
@@ -281,12 +282,12 @@ public:
|
||||
// because accessing via GetMeter->get... causes
|
||||
// different instructions sometimes
|
||||
|
||||
s32 getMeterField_0x13750() const {
|
||||
return mMain.field_0x13750;
|
||||
s32 getMeterMode() const {
|
||||
return mMain.mMode;
|
||||
}
|
||||
|
||||
void setMeterField_0x13750(s32 value) {
|
||||
mMain.field_0x13750 = value;
|
||||
void setMeterMode(s32 value) {
|
||||
mMain.mMode = value;
|
||||
}
|
||||
|
||||
u8 getMeterField_0x13770() const {
|
||||
|
||||
@@ -1,20 +1,45 @@
|
||||
#ifndef D_T_BARREL_H
|
||||
#define D_T_BARREL_H
|
||||
|
||||
#include "common.h"
|
||||
#include "d/a/d_a_base.h"
|
||||
#include "d/t/d_tg.h"
|
||||
#include "m/m_vec.h"
|
||||
#include "s/s_State.hpp"
|
||||
#include "s/s_StateMgr.hpp"
|
||||
|
||||
class dTgBarrel_c : public dAcBase_c {
|
||||
class dTgBarrelPos_c;
|
||||
class dAcOBarrel_c;
|
||||
class dAcOstageSink_c;
|
||||
|
||||
class dTgBarrel_c : public dTg_c {
|
||||
public:
|
||||
dTgBarrel_c() : mStateMgr(*this, sStateID::null) {}
|
||||
virtual ~dTgBarrel_c() {}
|
||||
|
||||
virtual int doDelete() override;
|
||||
virtual int draw() override;
|
||||
virtual int actorCreate() override;
|
||||
virtual int actorPostCreate() override;
|
||||
virtual int actorExecute() override;
|
||||
|
||||
STATE_FUNC_DECLARE(dTgBarrel_c, Wait);
|
||||
STATE_FUNC_DECLARE(dTgBarrel_c, Stop);
|
||||
|
||||
bool checkPlayerPos(const mVec3_c &playerPos);
|
||||
|
||||
private:
|
||||
/* 0x??? */ STATE_MGR_DECLARE(dTgBarrel_c);
|
||||
/* 0x0FC */ STATE_MGR_DECLARE(dTgBarrel_c);
|
||||
/* 0x138 */ dAcRef_c<dAcOstageSink_c> mStageRef;
|
||||
/* 0x144 */ dAcRef_c<dTgBarrelPos_c> mTgBarrelPosArr[10];
|
||||
/* 0x1BC */ dAcRef_c<dAcOBarrel_c> mBarrelArr[10];
|
||||
/* 0x234 */ mVec3_c mSpawnPosition;
|
||||
/* 0x240 */ u8 mStopFlag; ///< Stop Sceneflag - Note there is no checking done to see if valid
|
||||
/* 0x241 */ u8 mSpawnInterval; ///< Barrel Spawn Interval in Seconds
|
||||
/* 0x242 */ u8 mSpawnTimer; ///< Barrel Spawn Timer
|
||||
/* 0x243 */ u8 mBarrelPosCount; ///< Represents the index of the highest dTgBarrelPos_c in mTgBarrelPosArr
|
||||
/* 0x244 */ u8 mBarrelPosIndex; ///< Rolling index to spawn dAcOBarrel_c from a dTgBarrelPos_c
|
||||
/* 0x245 */ u8 mLinkId; ///< Link Id used to find correct dTgBarrelPos_c
|
||||
/* 0x246 */ bool mSpawnActive; ///< Used to reset the spawn timer after the player has already entered the area
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -1,14 +1,33 @@
|
||||
#ifndef D_T_BARREL_POS_H
|
||||
#define D_T_BARREL_POS_H
|
||||
|
||||
#include "d/a/d_a_base.h"
|
||||
#include "d/t/d_tg.h"
|
||||
#include "m/m_vec.h"
|
||||
|
||||
class dTgBarrelPos_c : public dAcBase_c {
|
||||
class dAcOstageSink_c;
|
||||
|
||||
class dTgBarrelPos_c : public dTg_c {
|
||||
public:
|
||||
dTgBarrelPos_c() {}
|
||||
virtual ~dTgBarrelPos_c() {}
|
||||
|
||||
virtual int create() override;
|
||||
virtual int doDelete() override;
|
||||
virtual int draw() override;
|
||||
virtual int actorExecute() override;
|
||||
|
||||
u8 getLinkIndex() const {
|
||||
return mLinkIndex;
|
||||
}
|
||||
u8 getLinkId() const {
|
||||
return mLinkId;
|
||||
}
|
||||
|
||||
private:
|
||||
/* 0x0FC */ dAcRef_c<dAcOstageSink_c> mStageRef;
|
||||
/* 0x108 */ mVec3_c mSpawnPosition;
|
||||
/* 0x114 */ u8 mLinkIndex; ///< Link Index used in dTgBarrel_c array
|
||||
/* 0x115 */ u8 mLinkId; ///< Link Id used to find correct dTgBarrel_c
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -18,6 +18,7 @@ public:
|
||||
bool isAdvance();
|
||||
int getSomeEventRelatedNumber();
|
||||
|
||||
int getSingleShortData(int *result, u32 code, u32);
|
||||
int getSingleIntData(int *result, u32 code, u32);
|
||||
int getSingleFloatData(f32 *result, u32 code, u32);
|
||||
int getSingleVecData(mVec3_c *result, u32 code, u32);
|
||||
|
||||
@@ -11,6 +11,7 @@ class dAcObjBase_c;
|
||||
|
||||
class EventManager {
|
||||
public:
|
||||
static bool setEvent(dAcBase_c *actor, Event *, dAcBase_c *);
|
||||
static bool isInEvent(dAcBase_c *actor, const char *eventName);
|
||||
static bool finishEvent(dAcBase_c *actor, const char *eventName);
|
||||
static void changeOwnEvent(dAcBase_c *actor1, dAcBase_c *actor2, Event *event, UNKWORD);
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -18,6 +18,10 @@ STATE_DEFINE(dAcOdoorBoss_c, Close);
|
||||
STATE_DEFINE(dAcOdoorBoss_c, Idle);
|
||||
STATE_DEFINE(dAcOdoorBoss_c, BeforeTimeShift);
|
||||
|
||||
bool dAcOdoorBoss_c::canOpen() {
|
||||
// Not implemented - Used to emit dtor
|
||||
return true;
|
||||
}
|
||||
void dAcOdoorBoss_c::initializeState_UnlockWait() {}
|
||||
void dAcOdoorBoss_c::executeState_UnlockWait() {}
|
||||
void dAcOdoorBoss_c::finalizeState_UnlockWait() {}
|
||||
|
||||
@@ -6,6 +6,11 @@ STATE_DEFINE(dAcOShutter_c, Wait);
|
||||
STATE_DEFINE(dAcOShutter_c, Open);
|
||||
STATE_DEFINE(dAcOShutter_c, Close);
|
||||
|
||||
bool dAcOShutter_c::canOpen() {
|
||||
// Not implemented - Used to emit dtor
|
||||
return true;
|
||||
}
|
||||
|
||||
void dAcOShutter_c::initializeState_Wait() {}
|
||||
void dAcOShutter_c::executeState_Wait() {}
|
||||
void dAcOShutter_c::finalizeState_Wait() {}
|
||||
|
||||
@@ -1,9 +1,16 @@
|
||||
#include "d/a/obj/d_a_obj_shutter_change_scene.h"
|
||||
|
||||
#include "f/f_base.h"
|
||||
|
||||
SPECIAL_ACTOR_PROFILE(
|
||||
OBJ_SHUTTER_CHANGE_SCENE, dAcOShutterChangeScene_c, fProfile::OBJ_SHUTTER_CHANGE_SCENE, 0x18A, 0, 6
|
||||
);
|
||||
|
||||
bool dAcOShutterChangeScene_c::canOpen() {
|
||||
// Not implemented - Used to emit dtor
|
||||
return true;
|
||||
}
|
||||
|
||||
STATE_DEFINE(dAcOShutterChangeScene_c, WaitOpenShutter);
|
||||
STATE_DEFINE(dAcOShutterChangeScene_c, WaitOpenShutterForEvent);
|
||||
STATE_DEFINE(dAcOShutterChangeScene_c, OpenShutter);
|
||||
|
||||
@@ -5,6 +5,10 @@ SPECIAL_ACTOR_PROFILE(OBJ_TR_SHUTTER_CS, dAcOTrlyShtrChgScn_c, fProfile::OBJ_TR_
|
||||
STATE_DEFINE(dAcOTrlyShtrChgScn_c, Wait);
|
||||
STATE_DEFINE(dAcOTrlyShtrChgScn_c, OpenEvent);
|
||||
|
||||
bool dAcOTrlyShtrChgScn_c::canOpen() {
|
||||
// Not implemented - Used to emit dtor
|
||||
return true;
|
||||
}
|
||||
void dAcOTrlyShtrChgScn_c::initializeState_Wait() {}
|
||||
void dAcOTrlyShtrChgScn_c::executeState_Wait() {}
|
||||
void dAcOTrlyShtrChgScn_c::finalizeState_Wait() {}
|
||||
|
||||
@@ -5,6 +5,10 @@ SPECIAL_ACTOR_PROFILE(OBJ_TROLLEY_SHUTTER, dAcOTrolleyShutter_c, fProfile::OBJ_T
|
||||
STATE_DEFINE(dAcOTrolleyShutter_c, Wait);
|
||||
STATE_DEFINE(dAcOTrolleyShutter_c, OpenEvent);
|
||||
|
||||
bool dAcOTrolleyShutter_c::canOpen() {
|
||||
// Not implemented - Used to emit dtor
|
||||
return true;
|
||||
}
|
||||
void dAcOTrolleyShutter_c::initializeState_Wait() {}
|
||||
void dAcOTrolleyShutter_c::executeState_Wait() {}
|
||||
void dAcOTrolleyShutter_c::finalizeState_Wait() {}
|
||||
|
||||
+153
-2
@@ -1,13 +1,164 @@
|
||||
#include "d/t/d_t_barrel.h"
|
||||
|
||||
#include "common.h"
|
||||
#include "d/a/d_a_base.h"
|
||||
#include "d/a/d_a_player.h"
|
||||
#include "d/a/obj/d_a_obj_barrel.h"
|
||||
#include "d/a/obj/d_a_obj_base.h"
|
||||
#include "d/a/obj/d_a_obj_stage_sink.h"
|
||||
#include "d/flag/sceneflag_manager.h"
|
||||
#include "d/t/d_t_barrel_pos.h"
|
||||
#include "f/f_base.h"
|
||||
#include "f/f_manager.h"
|
||||
#include "f/f_profile_name.h"
|
||||
#include "m/m_angle.h"
|
||||
#include "m/m_mtx.h"
|
||||
#include "m/m_vec.h"
|
||||
#include "s/s_Math.h"
|
||||
|
||||
SPECIAL_ACTOR_PROFILE(TAG_BARREL, dTgBarrel_c, fProfile::TAG_BARREL, 0x221, 0, 0);
|
||||
|
||||
STATE_DEFINE(dTgBarrel_c, Wait);
|
||||
STATE_DEFINE(dTgBarrel_c, Stop);
|
||||
|
||||
// Weak function ordering issue of the ctor and dtor of the objects
|
||||
// for the following in the member arrays
|
||||
// dAcRef_c<dTgBarrelPos_c>
|
||||
// dAcRef_c<dAcOBarrel_c>
|
||||
|
||||
int dTgBarrel_c::actorCreate() {
|
||||
mStopFlag = getFromParams(0, 0xFF);
|
||||
mLinkId = getFromParams(16, 0xF);
|
||||
mSpawnInterval = getFromParams(8, 0xFF);
|
||||
mSpawnTimer = 1;
|
||||
|
||||
mStageRef.link(dAcOstageSink_c::GetInstance());
|
||||
mSpawnPosition = mPosition;
|
||||
|
||||
for (int i = 0; i < (int)ARRAY_LENGTH(mBarrelArr); ++i) {
|
||||
mBarrelArr[i].unlink();
|
||||
}
|
||||
|
||||
mStateMgr.changeState(StateID_Wait);
|
||||
|
||||
return SUCCEEDED;
|
||||
}
|
||||
|
||||
int dTgBarrel_c::actorPostCreate() {
|
||||
dTgBarrelPos_c *pTgBarrelPos = nullptr;
|
||||
do {
|
||||
pTgBarrelPos =
|
||||
static_cast<dTgBarrelPos_c *>(fManager_c::searchBaseByProfName(fProfile::TAG_BARREL_POS, pTgBarrelPos));
|
||||
|
||||
if (pTgBarrelPos != nullptr) {
|
||||
u8 index = pTgBarrelPos->getLinkIndex();
|
||||
if (mLinkId == pTgBarrelPos->getLinkId()) {
|
||||
mTgBarrelPosArr[index].link(pTgBarrelPos);
|
||||
if (index >= mBarrelPosCount) {
|
||||
mBarrelPosCount = index + 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
} while (pTgBarrelPos != nullptr);
|
||||
|
||||
return SUCCEEDED;
|
||||
}
|
||||
|
||||
int dTgBarrel_c::doDelete() {
|
||||
return SUCCEEDED;
|
||||
}
|
||||
|
||||
int dTgBarrel_c::actorExecute() {
|
||||
mStateMgr.executeState();
|
||||
return SUCCEEDED;
|
||||
}
|
||||
|
||||
int dTgBarrel_c::draw() {
|
||||
return SUCCEEDED;
|
||||
}
|
||||
|
||||
void dTgBarrel_c::initializeState_Wait() {}
|
||||
void dTgBarrel_c::executeState_Wait() {}
|
||||
void dTgBarrel_c::executeState_Wait() {
|
||||
if (SceneflagManager::sInstance->checkBoolFlag(mRoomID, mStopFlag)) {
|
||||
mStateMgr.changeState(StateID_Stop);
|
||||
return;
|
||||
}
|
||||
dAcOstageSink_c *pStage = mStageRef.get();
|
||||
|
||||
mVec3_c pos = pStage->mPosition;
|
||||
mAng3_c rot = pStage->mRotation;
|
||||
|
||||
mVec3_c stageDist = mSpawnPosition - pos;
|
||||
mMtx_c m;
|
||||
m.transS(pos);
|
||||
m.ZXYrotM(rot);
|
||||
m.multVecSR(stageDist, mPosition);
|
||||
|
||||
mPosition += pos;
|
||||
|
||||
if (checkPlayerPos(dAcPy_c::GetLink()->mPosition)) {
|
||||
if (0 == sLib::calcTimer(&mSpawnTimer)) {
|
||||
mSpawnActive = true;
|
||||
|
||||
u8 idx = 0xFF;
|
||||
for (int i = 0; i < (int)ARRAY_LENGTH(mBarrelArr); ++i) {
|
||||
if (!mBarrelArr[i].isLinked()) {
|
||||
idx = i;
|
||||
// I think they forgor a break here
|
||||
}
|
||||
}
|
||||
|
||||
if (idx != 0xFF) {
|
||||
dTgBarrelPos_c *pTgBarrelPos = mTgBarrelPosArr[mBarrelPosIndex].get();
|
||||
if (pTgBarrelPos != nullptr) {
|
||||
mVec3_c spawnPos = pTgBarrelPos->mPosition;
|
||||
mAng3_c spawnRot(0, 0x4000, 0);
|
||||
dAcObjBase_c *pObj = dAcObjBase_c::create(
|
||||
fProfile::OBJ_BARREL, mRoomID, 0xFF00FF2, &spawnPos, &spawnRot, nullptr, 0xFFFFFFFF
|
||||
);
|
||||
mBarrelArr[idx].link(static_cast<dAcOBarrel_c *>(pObj));
|
||||
}
|
||||
if (++mBarrelPosIndex >= mBarrelPosCount) {
|
||||
mBarrelPosIndex = 0;
|
||||
}
|
||||
}
|
||||
mSpawnTimer = mSpawnInterval * 30;
|
||||
}
|
||||
} else {
|
||||
if (mSpawnActive) {
|
||||
mSpawnTimer = mSpawnInterval * 30;
|
||||
}
|
||||
}
|
||||
}
|
||||
void dTgBarrel_c::finalizeState_Wait() {}
|
||||
|
||||
void dTgBarrel_c::initializeState_Stop() {}
|
||||
void dTgBarrel_c::executeState_Stop() {}
|
||||
void dTgBarrel_c::executeState_Stop() {
|
||||
if (!SceneflagManager::sInstance->checkBoolFlag(mRoomID, mStopFlag)) {
|
||||
mStateMgr.changeState(StateID_Wait);
|
||||
}
|
||||
}
|
||||
void dTgBarrel_c::finalizeState_Stop() {}
|
||||
|
||||
bool dTgBarrel_c::checkPlayerPos(const mVec3_c &playerPos) {
|
||||
f32 scale = 0.5f;
|
||||
|
||||
mVec3_c pos = playerPos - (mPosition + (mVec3_c::Ey * mScale.y * scale));
|
||||
mAng rot = mStageRef.get()->mRotation.z;
|
||||
|
||||
pos.x = pos.x / mScale.x;
|
||||
pos.y = pos.y / mScale.y;
|
||||
pos.z = pos.z / mScale.z;
|
||||
|
||||
f32 halfCos = rot.cos() * scale;
|
||||
if (rot.cos() != 0.f) {
|
||||
scale = mScale.x * ((pos.x * rot.sin()) / rot.cos()) / mScale.y;
|
||||
}
|
||||
|
||||
return (
|
||||
(pos.x <= halfCos && pos.x >= -halfCos) //
|
||||
&& pos.y <= scale + 0.5f + 1e-6f && pos.y >= scale + -0.5f - 1e-6f //
|
||||
&& pos.z <= 0.5f && pos.z >= -0.5f
|
||||
);
|
||||
}
|
||||
|
||||
@@ -1,3 +1,47 @@
|
||||
#include "d/t/d_t_barrel_pos.h"
|
||||
|
||||
#include "d/a/obj/d_a_obj_stage_sink.h"
|
||||
#include "d/t/d_t_barrel.h"
|
||||
#include "f/f_base.h"
|
||||
|
||||
SPECIAL_ACTOR_PROFILE(TAG_BARREL_POS, dTgBarrelPos_c, fProfile::TAG_BARREL_POS, 0x222, 0, 0);
|
||||
|
||||
int dTgBarrelPos_c::create() {
|
||||
mLinkIndex = getFromParams(0, 0xFF);
|
||||
if (mLinkIndex == 0xFF) {
|
||||
mLinkIndex = 0;
|
||||
}
|
||||
|
||||
mLinkId = getFromParams(8, 0xF);
|
||||
|
||||
mStageRef.link(dAcOstageSink_c::GetInstance());
|
||||
|
||||
mSpawnPosition = mPosition;
|
||||
|
||||
return SUCCEEDED;
|
||||
}
|
||||
|
||||
int dTgBarrelPos_c::doDelete() {
|
||||
return SUCCEEDED;
|
||||
}
|
||||
|
||||
int dTgBarrelPos_c::actorExecute() {
|
||||
dAcOstageSink_c *pStage = mStageRef.get();
|
||||
|
||||
mVec3_c pos = pStage->mPosition;
|
||||
mAng3_c rot = pStage->mRotation;
|
||||
|
||||
mVec3_c stageDist = mSpawnPosition - pos;
|
||||
mMtx_c m;
|
||||
m.transS(pos);
|
||||
m.ZXYrotM(rot);
|
||||
m.multVecSR(stageDist, mPosition);
|
||||
|
||||
mPosition += pos;
|
||||
|
||||
return SUCCEEDED;
|
||||
}
|
||||
|
||||
int dTgBarrelPos_c::draw() {
|
||||
return SUCCEEDED;
|
||||
}
|
||||
|
||||
@@ -79,7 +79,7 @@ static const char *const sMapSky = "MapSky";
|
||||
static const char *const sCommonArrow = "CommonArrow";
|
||||
|
||||
void dLytControlGame_c::initializeState_Pause_SetRes() {
|
||||
dLytMeter_c::GetInstance()->setMeterField_0x13750(dLytMeterMain_c::MODE_PAUSE);
|
||||
dLytMeter_c::GetInstance()->setMeterMode(dLytMeterMain_c::MODE_PAUSE_INIT);
|
||||
dBase_c::s_NextExecuteControlFlags |= BASE_PROP_0x1;
|
||||
static const char *sLytArcs[] = {sMenuPause, sCommonArrow};
|
||||
mLytArcControl.set(sLytArcs, ARRAY_LENGTH(sLytArcs));
|
||||
@@ -132,7 +132,7 @@ void dLytControlGame_c::executeState_Pause_DelRes() {
|
||||
mStateMgr.changeState(StateID_Normal);
|
||||
}
|
||||
void dLytControlGame_c::finalizeState_Pause_DelRes() {
|
||||
dLytMeter_c::GetInstance()->setMeterField_0x13750(dLytMeterMain_c::MODE_NONE);
|
||||
dLytMeter_c::GetInstance()->setMeterMode(dLytMeterMain_c::MODE_NONE);
|
||||
}
|
||||
|
||||
void dLytControlGame_c::initializeState_Map_SetRes() {
|
||||
@@ -140,7 +140,7 @@ void dLytControlGame_c::initializeState_Map_SetRes() {
|
||||
if (!EventManager::isInEvent() || mMapEvent == dLytMapMain_c::MAP_EVENT_11) {
|
||||
dBase_c::s_NextExecuteControlFlags |= BASE_PROP_0x10;
|
||||
}
|
||||
dLytMeter_c::GetInstance()->setMeterField_0x13750(dLytMeterMain_c::MODE_MAP_INIT);
|
||||
dLytMeter_c::GetInstance()->setMeterMode(dLytMeterMain_c::MODE_MAP_INIT);
|
||||
}
|
||||
void dLytControlGame_c::executeState_Map_SetRes() {
|
||||
LayoutArcManager::GetInstance()->loadLayoutArcFromDisk(sMap2D, nullptr);
|
||||
@@ -180,8 +180,8 @@ void dLytControlGame_c::initializeState_Map() {
|
||||
}
|
||||
void dLytControlGame_c::executeState_Map() {
|
||||
if (dLytMap_c::GetInstance()->isOpen()) {
|
||||
if (dLytMeter_c::GetInstance()->getMeterField_0x13750() != dLytMeterMain_c::MODE_MAP) {
|
||||
dLytMeter_c::GetInstance()->setMeterField_0x13750(dLytMeterMain_c::MODE_MAP);
|
||||
if (dLytMeter_c::GetInstance()->getMeterMode() != dLytMeterMain_c::MODE_MAP) {
|
||||
dLytMeter_c::GetInstance()->setMeterMode(dLytMeterMain_c::MODE_MAP);
|
||||
if (StoryflagManager::sInstance->getCounterOrFlag(STORYFLAG_PLUS_BTN_NOTICE)) {
|
||||
StoryflagManager::sInstance->unsetFlag(STORYFLAG_PLUS_BTN_NOTICE);
|
||||
}
|
||||
@@ -250,7 +250,7 @@ void dLytControlGame_c::executeState_Map_DelRes() {
|
||||
}
|
||||
}
|
||||
void dLytControlGame_c::finalizeState_Map_DelRes() {
|
||||
dLytMeter_c::GetInstance()->setMeterField_0x13750(dLytMeterMain_c::MODE_NONE);
|
||||
dLytMeter_c::GetInstance()->setMeterMode(dLytMeterMain_c::MODE_NONE);
|
||||
dLytMeter_c::GetInstance()->setBasicPosition(dLytMeterMain_c::POSITION_NORMAL);
|
||||
dMessage_c::getInstance()->setMapEvent(dLytMapMain_c::MAP_EVENT_MAX);
|
||||
}
|
||||
|
||||
@@ -4598,7 +4598,7 @@ void dLytMapMain_c::initializeState_Out() {
|
||||
if (mMapEvent == MAP_EVENT_SAVE_OBJ) {
|
||||
mPopupInfo.mStateMgr.changeState(StateID_Out);
|
||||
}
|
||||
dLytMeter_c::GetInstance()->setMeterField_0x13750(0);
|
||||
dLytMeter_c::GetInstance()->setMeterMode(dLytMeterMain_c::MODE_MAP_INIT);
|
||||
if (mDoCameraTransition || mMapEvent == MAP_EVENT_MAP_INTRO) {
|
||||
mpInOutAnmGroup = &mAnmGroups[MAP_MAIN_ANIM_OUT];
|
||||
} else {
|
||||
|
||||
@@ -581,7 +581,7 @@ void dLytPauseMgr_c::executeState_None() {
|
||||
mMain.requestIn();
|
||||
mStateMgr.changeState(StateID_In);
|
||||
dBase_c::s_NextExecuteControlFlags |= BASE_PROP_0x1;
|
||||
dLytMeter_c::GetInstance()->setMeterField_0x13750(3);
|
||||
dLytMeter_c::GetInstance()->setMeterMode(dLytMeterMain_c::MODE_PAUSE);
|
||||
dLytControlGame_c *lytControl = dLytControlGame_c::getInstance();
|
||||
if (lytControl->isPauseDemo()) {
|
||||
mSavedPauseDisp = lytControl->getCurrentPauseDisp();
|
||||
|
||||
@@ -568,21 +568,21 @@ bool dLytMeterMain_c::isNotSilentRealmOrLoftwing() {
|
||||
}
|
||||
|
||||
bool dLytMeterMain_c::fn_800C9F70() {
|
||||
if ((fn_800D56B0() && !field_0x13775) || fn_800D5650() || fn_800D5680()) {
|
||||
if ((fn_800D56B0() && !field_0x13775) || isInModeMap() || isInModePause()) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
bool dLytMeterMain_c::fn_800C9FE0() {
|
||||
if (fn_800D56B0() || !field_0x13750 || fn_800D5680()) {
|
||||
if (fn_800D56B0() || mMode == MODE_MAP_INIT || isInModePause()) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
bool dLytMeterMain_c::fn_800CA040() {
|
||||
if (mHelpOpen || fn_800D5650() || fn_800D5680()) {
|
||||
if (mHelpOpen || isInModeMap() || isInModePause()) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
@@ -854,7 +854,7 @@ bool dLytMeterMain_c::build(d2d::ResAccIf_c *resAcc) {
|
||||
|
||||
mSavedBasicPosition = 0;
|
||||
mBasicPosition = POSITION_NORMAL;
|
||||
field_0x13750 = 4;
|
||||
mMode = MODE_NONE;
|
||||
field_0x13770 = 3;
|
||||
mHelpOpen = false;
|
||||
field_0x13775 = 0;
|
||||
@@ -869,8 +869,8 @@ bool dLytMeterMain_c::build(d2d::ResAccIf_c *resAcc) {
|
||||
mBossKeyVisible = false;
|
||||
mSmallKeyVisible = false;
|
||||
mDrinkVisible = false;
|
||||
field_0x1377E = 0;
|
||||
field_0x1377F = 0;
|
||||
mIsInSwordDrawEvent = false;
|
||||
field_0x1377F = false;
|
||||
field_0x13754 = 0;
|
||||
|
||||
mAnmGroups[METER_ANIM_POSITION].setFrame(zero);
|
||||
@@ -993,7 +993,7 @@ bool dLytMeterMain_c::remove() {
|
||||
return true;
|
||||
}
|
||||
|
||||
void dLytMeterMain_c::fn_800D5290() {
|
||||
void dLytMeterMain_c::executeMap() {
|
||||
dLytMeter_c *meter = dLytMeter_c::GetInstance();
|
||||
|
||||
if (dLytMap_c::GetInstance() != nullptr && !dLytMap_c::GetInstance()->isMapEventEq2Or4Or5Or6()) {
|
||||
@@ -1007,7 +1007,7 @@ void dLytMeterMain_c::fn_800D5290() {
|
||||
}
|
||||
}
|
||||
|
||||
bool dLytMeterMain_c::fn_800D5350() {
|
||||
bool dLytMeterMain_c::isInMapEvent() {
|
||||
if (mBasicPosition == POSITION_MAP && dMessage_c::getInstance()->getInMapEvent()) {
|
||||
return true;
|
||||
}
|
||||
@@ -1023,7 +1023,7 @@ bool dLytMeterMain_c::fn_800D5380(u8 arg) {
|
||||
return false;
|
||||
}
|
||||
|
||||
bool dLytMeterMain_c::fn_800D53D0() {
|
||||
bool dLytMeterMain_c::isDoingSkyKeepPuzzle() {
|
||||
if (checkIsInSkykeepPuzzle() && !mHelpOpen) {
|
||||
return true;
|
||||
}
|
||||
@@ -1031,7 +1031,7 @@ bool dLytMeterMain_c::fn_800D53D0() {
|
||||
}
|
||||
|
||||
bool dLytMeterMain_c::fn_800D5420() {
|
||||
if (!fn_800D5650()) {
|
||||
if (!isInModeMap()) {
|
||||
if (!dStageMgr_c::GetInstance()->isFaderSettled() || !dScGame_c::GetInstance()->isFaderSettled() ||
|
||||
!dStageMgr_c::GetInstance()->fn_80199250() || !dStage_c::GetInstance()->fn_801B3EE0()) {
|
||||
return true;
|
||||
@@ -1064,15 +1064,15 @@ void dLytMeterMain_c::fn_800D5630() {
|
||||
}
|
||||
}
|
||||
|
||||
bool dLytMeterMain_c::fn_800D5650() {
|
||||
if (field_0x13750 >= 0 && field_0x13750 <= 1) {
|
||||
bool dLytMeterMain_c::isInModeMap() {
|
||||
if (mMode == MODE_MAP_INIT || mMode == MODE_MAP) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
bool dLytMeterMain_c::fn_800D5680() {
|
||||
if (field_0x13750 >= 2 && field_0x13750 <= 3) {
|
||||
bool dLytMeterMain_c::isInModePause() {
|
||||
if (mMode == MODE_PAUSE_INIT || mMode == MODE_PAUSE) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
@@ -1083,11 +1083,11 @@ bool dLytMeterMain_c::fn_800D56B0() {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (fn_800D5350()) {
|
||||
if (isInMapEvent()) {
|
||||
return true;
|
||||
}
|
||||
|
||||
if ((EventManager::isInEvent() && field_0x1377E == 0 && dAcPy_c::GetLink()->getCurrentAction() != 0x8C &&
|
||||
if ((EventManager::isInEvent() && !mIsInSwordDrawEvent && dAcPy_c::GetLink()->getCurrentAction() != 0x8C &&
|
||||
dMessage_c::getInstance()->getMapEvent() == dLytMapMain_c::MAP_EVENT_MAX) ||
|
||||
mHelpOpen) {
|
||||
return true;
|
||||
@@ -1127,12 +1127,12 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
mBossKeyVisible = true;
|
||||
mSmallKeyVisible = true;
|
||||
mDrinkVisible = true;
|
||||
field_0x1377E = false;
|
||||
mIsInSwordDrawEvent = false;
|
||||
|
||||
if (EventManager::getCurrentEventName() != nullptr) {
|
||||
const char *name = EventManager::getCurrentEventName();
|
||||
if (strequals(name, "SwordDraw") || strequals(name, "SwordDrawDoorNew")) {
|
||||
field_0x1377E = true;
|
||||
mIsInSwordDrawEvent = true;
|
||||
if (dLytDobutton_c::getNextActionToShow() != dLytDobutton_c::ACT_DO_DRAW) {
|
||||
dLytDobutton_c::setActionTextStuff(dLytDobutton_c::ICON_NONE, dLytDobutton_c::ACT_DO_INVALID, true);
|
||||
}
|
||||
@@ -1148,7 +1148,7 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
mPanesVisible[i] = true;
|
||||
}
|
||||
|
||||
if (dAcPy_c::GetLink2()->canDowseProbably() && !fn_800D5650() && !fn_800D5680()) {
|
||||
if (dAcPy_c::GetLink2()->canDowseProbably() && !isInModeMap() && !isInModePause()) {
|
||||
if (!field_0x1377F) {
|
||||
field_0x1377F = true;
|
||||
}
|
||||
@@ -1179,92 +1179,92 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
|
||||
|| (MinigameManager::isInMinigameState(MinigameManager::TRIAL_TIME_ATTACK) &&
|
||||
LytDoButtonRelated::get(LytDoButtonRelated::DO_BUTTON_B) == LytDoButtonRelated::ACT_IE_NONE) ||
|
||||
(dLytMeter_c::getField_0x13B66() || (fn_800D56B0() && !mItemSelect.fn_800F02F0() && !fn_800D53D0()) ||
|
||||
fn_800D5650() || fn_800D5680())) {
|
||||
(dLytMeter_c::getField_0x13B66() || (fn_800D56B0() && !mItemSelect.fn_800F02F0() && !isDoingSkyKeepPuzzle()) ||
|
||||
isInModeMap() || isInModePause())) {
|
||||
mPanesVisible[METER_ANIM_ITEM_SELECT] = false;
|
||||
}
|
||||
|
||||
if ((fn_800D56B0() && !fn_800D53D0() && !mMinusBtn.fn_800F75E0())
|
||||
if ((fn_800D56B0() && !isDoingSkyKeepPuzzle() && !mMinusBtn.fn_800F75E0())
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || field_0x13750 == 0 || fn_800D5680())) {
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || mMode == MODE_MAP_INIT || isInModePause())) {
|
||||
mPanesVisible[METER_ANIM_MINUS_BTN] = false;
|
||||
}
|
||||
|
||||
if ((fn_800D56B0() && !fn_800D53D0())
|
||||
if ((fn_800D56B0() && !isDoingSkyKeepPuzzle())
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || field_0x13750 == 0 || fn_800D5680())
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || mMode == MODE_MAP_INIT || isInModePause())
|
||||
|
||||
|| (getUiMode() > 1 && !mPlusBtn.getField_0x1C0() && !mPlusBtn.isCalling())) {
|
||||
mPanesVisible[METER_ANIM_PLUS_BTN] = false;
|
||||
}
|
||||
|
||||
if ((fn_800D56B0() && !fn_800D53D0())
|
||||
if ((fn_800D56B0() && !isDoingSkyKeepPuzzle())
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || field_0x13750 == 0 || fn_800D5680())
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || mMode == MODE_MAP_INIT || isInModePause())
|
||||
|
||||
|| (getUiMode() > 1 && !mCrossBtn.fn_800FA730())) {
|
||||
mPanesVisible[METER_ANIM_CROSS_BTN] = false;
|
||||
}
|
||||
|
||||
if ((fn_800D56B0() && !fn_800D53D0())
|
||||
if ((fn_800D56B0() && !isDoingSkyKeepPuzzle())
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || field_0x13750 == 0 || fn_800D5680())
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || mMode == MODE_MAP_INIT || isInModePause())
|
||||
|
||||
|| (getUiMode() != 0 && !mp1Button->shouldCall())) {
|
||||
mPanesVisible[METER_ANIM_1_BTN] = false;
|
||||
}
|
||||
|
||||
if ((fn_800D56B0() && !fn_800D53D0())
|
||||
if ((fn_800D56B0() && !isDoingSkyKeepPuzzle())
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || field_0x13750 == 0 || fn_800D5680())
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || mMode == MODE_MAP_INIT || isInModePause())
|
||||
|
||||
|| (getUiMode() != 0 && !mp2Button->shouldCall())) {
|
||||
mPanesVisible[METER_ANIM_2_BTN] = false;
|
||||
}
|
||||
|
||||
if ((fn_800D56B0() && !fn_800D53D0())
|
||||
if ((fn_800D56B0() && !isDoingSkyKeepPuzzle())
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || field_0x13750 == 0 || fn_800D5680())
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || mMode == MODE_MAP_INIT || isInModePause())
|
||||
|
||||
|| (getUiMode() > 1)) {
|
||||
mPanesVisible[METER_ANIM_A_BTN] = false;
|
||||
}
|
||||
|
||||
if ((fn_800D56B0() && !fn_800D53D0())
|
||||
if ((fn_800D56B0() && !isDoingSkyKeepPuzzle())
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || field_0x13750 == 0 || fn_800D5680())
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || mMode == MODE_MAP_INIT || isInModePause())
|
||||
|
||||
|| (getUiMode() != 0)) {
|
||||
mPanesVisible[METER_ANIM_REMOCON_BG] = false;
|
||||
}
|
||||
|
||||
if ((fn_800D56B0() && !fn_800D53D0() && !mDowsing.fn_800FE490())
|
||||
if ((fn_800D56B0() && !isDoingSkyKeepPuzzle() && !mDowsing.fn_800FE490())
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || field_0x13750 == 0 || fn_800D5680())
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || mMode == MODE_MAP_INIT || isInModePause())
|
||||
|
||||
|| (getUiMode() != 0 && !fn_800D5380(true) && !mDowsing.shouldCall() && !mDowsing.fn_800FE490())) {
|
||||
mPanesVisible[METER_ANIM_DOWSING] = false;
|
||||
}
|
||||
|
||||
if ((fn_800D56B0() && !fn_800D53D0())
|
||||
if ((fn_800D56B0() && !isDoingSkyKeepPuzzle())
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || field_0x13750 == 0 || fn_800D5680())
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || mMode == MODE_MAP_INIT || isInModePause())
|
||||
|
||||
|| (getUiMode() != 0 && !fn_800D5380(true) && !mZBtn.isCalling())) {
|
||||
mPanesVisible[METER_ANIM_Z_BTN] = false;
|
||||
}
|
||||
|
||||
if ((fn_800D56B0() && !fn_800D53D0())
|
||||
if ((fn_800D56B0() && !isDoingSkyKeepPuzzle())
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || field_0x13750 == 0 || fn_800D5680())
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || mMode == MODE_MAP_INIT || isInModePause())
|
||||
|
||||
|| (getUiMode() != 0)) {
|
||||
mPanesVisible[METER_ANIM_NUN_STK] = false;
|
||||
}
|
||||
|
||||
if ((fn_800D56B0() && !fn_800D53D0())
|
||||
if ((fn_800D56B0() && !isDoingSkyKeepPuzzle())
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || field_0x13750 == 0 || fn_800D5680())
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || mMode == MODE_MAP_INIT || isInModePause())
|
||||
|
||||
|| (getUiMode() != 0)) {
|
||||
mPanesVisible[METER_ANIM_NUN_BG] = false;
|
||||
@@ -1278,11 +1278,11 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
MinigameManager::isInMinigameState(MinigameManager::TRIAL_TIME_ATTACK) ||
|
||||
MinigameManager::isInMinigameState(MinigameManager::PUMPKIN_ARCHERY) ||
|
||||
MinigameManager::isInMinigameState(MinigameManager::SPIRAL_CHARGE_TUTORIAL) ||
|
||||
MinigameManager::isInMinigameState(MinigameManager::ROLLERCOASTER) || fn_800D56B0() || field_0x1377E)
|
||||
MinigameManager::isInMinigameState(MinigameManager::ROLLERCOASTER) || fn_800D56B0() || mIsInSwordDrawEvent)
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() ||
|
||||
(dLytSimpleWindow_c::getInstance() != nullptr && dLytSimpleWindow_c::getInstance()->isOutputText()) ||
|
||||
fn_800D5650() || fn_800D5680())) {
|
||||
isInModeMap() || isInModePause())) {
|
||||
mPanesVisible[METER_ANIM_RUPY] = false;
|
||||
}
|
||||
|
||||
@@ -1303,11 +1303,11 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
|
||||
|| (fn_800D56B0() &&
|
||||
(dMessage_c::getInstance()->getField_0x2FC() == 0 || dMessage_c::getInstance()->getField_0x2FC() == -2)) ||
|
||||
field_0x1377E
|
||||
mIsInSwordDrawEvent
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() ||
|
||||
(dLytSimpleWindow_c::getInstance() != nullptr && dLytSimpleWindow_c::getInstance()->isOutputText()) ||
|
||||
fn_800D5650() || fn_800D5680())) {
|
||||
isInModeMap() || isInModePause())) {
|
||||
mPanesVisible[METER_ANIM_SHIELD] = false;
|
||||
}
|
||||
|
||||
@@ -1330,17 +1330,17 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
|
||||
|| (dScGame_c::currentSpawnInfo.stageName == "F406" && dScGame_c::currentSpawnInfo.layer == 13)
|
||||
|
||||
|| (field_0x1377E != 0)
|
||||
|| (mIsInSwordDrawEvent)
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() ||
|
||||
(dLytSimpleWindow_c::getInstance() != nullptr && dLytSimpleWindow_c::getInstance()->isOutputText()) ||
|
||||
fn_800D5650() || fn_800D5680())) {
|
||||
isInModeMap() || isInModePause())) {
|
||||
mPanesVisible[METER_ANIM_HEART] = false;
|
||||
}
|
||||
|
||||
if (!isSilentRealm() || (fn_800D56B0() && !fn_800D5590())
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || field_0x13750 == 0 || fn_800D5680())) {
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || mMode == MODE_MAP_INIT || isInModePause())) {
|
||||
mTimerVisible = false;
|
||||
}
|
||||
|
||||
@@ -1361,12 +1361,12 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
MinigameManager::isInMinigameState(MinigameManager::SPIRAL_CHARGE_TUTORIAL) ||
|
||||
MinigameManager::isInMinigameState(MinigameManager::ROLLERCOASTER))
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || fn_800D5650() || fn_800D5680())) {
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || isInModeMap() || isInModePause())) {
|
||||
mPanesVisible[METER_ANIM_GANBARI_GAUGE] = false;
|
||||
}
|
||||
|
||||
if ((dAcPy_c::GetLink()->getRidingActorType() != dAcPy_c::RIDING_LOFTWING || fn_800D56B0()) ||
|
||||
(dLytMeter_c::getField_0x13B66() || fn_800D5420() || fn_800D5650() || fn_800D5680())) {
|
||||
(dLytMeter_c::getField_0x13B66() || fn_800D5420() || isInModeMap() || isInModePause())) {
|
||||
mSkyGaugeVisible = false;
|
||||
} else if (bird != nullptr && mpSkyGauge != nullptr) {
|
||||
mpSkyGauge->setHeight(dAcPy_c::GetLink()->vt_0x260());
|
||||
@@ -1383,7 +1383,7 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
if (dAcPy_c::GetLink()->getRidingActorType() != dAcPy_c::RIDING_LOFTWING || !field_0x13780 ||
|
||||
|
||||
(dLytDobutton_c::getAction() != dLytDobutton_c::ACT_DO_INVALID || fn_800D56B0() ||
|
||||
dLytMeter_c::getField_0x13B66() || fn_800D5420() || fn_800D5650() || fn_800D5680())) {
|
||||
dLytMeter_c::getField_0x13B66() || fn_800D5420() || isInModeMap() || isInModePause())) {
|
||||
mBirdGaugeVisible = false;
|
||||
}
|
||||
|
||||
@@ -1410,7 +1410,7 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
|
||||
if (!field_0x13781 || fn_800D56B0() ||
|
||||
|
||||
(dLytMeter_c::getField_0x13B66() || fn_800D5420() || fn_800D5650() || fn_800D5680())) {
|
||||
(dLytMeter_c::getField_0x13B66() || fn_800D5420() || isInModeMap() || isInModePause())) {
|
||||
mBossGaugeVisible = false;
|
||||
}
|
||||
|
||||
@@ -1436,8 +1436,8 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
if (dAcItem_c::getKeyPieceCount() == 0 || dLytAreaCaption_c::getVisible() || fn_800D5380(false) ||
|
||||
SceneflagManager::sInstance->checkSceneflagGlobal(4, 0x21) || MinigameManager::isInAnyMinigame()
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D56B0() || field_0x1377E || fn_800D5420() || fn_800D5650() ||
|
||||
fn_800D5680())) {
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D56B0() || mIsInSwordDrawEvent || fn_800D5420() ||
|
||||
isInModeMap() || isInModePause())) {
|
||||
mKakeraKeyVisible = false;
|
||||
}
|
||||
if (mKakeraKeyVisible != oldKakeraKeyVisible) {
|
||||
@@ -1454,9 +1454,9 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
|
||||
|| DungeonflagManager::sInstance->getCounterOrFlag(16, 8) != 0 ||
|
||||
dAcPy_c::GetLink()->getCurrentAction() == 0x8C || dLytAreaCaption_c::getVisible() || fn_800D5380(false) ||
|
||||
MinigameManager::isInAnyMinigame() || fn_800D56B0() || field_0x1377E
|
||||
MinigameManager::isInAnyMinigame() || fn_800D56B0() || mIsInSwordDrawEvent
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || fn_800D5650() || fn_800D5680())) {
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || isInModeMap() || isInModePause())) {
|
||||
mBossKeyVisible = false;
|
||||
}
|
||||
|
||||
@@ -1471,9 +1471,9 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
|
||||
if (mpSmallKey != nullptr) {
|
||||
if (dAcItem_c::getSmallKeyCount() == 0 || dLytAreaCaption_c::getVisible() || fn_800D5380(false) ||
|
||||
MinigameManager::isInAnyMinigame() || fn_800D56B0() || field_0x1377E
|
||||
MinigameManager::isInAnyMinigame() || fn_800D56B0() || mIsInSwordDrawEvent
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || fn_800D5650() || fn_800D5680())) {
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || isInModeMap() || isInModePause())) {
|
||||
mSmallKeyVisible = false;
|
||||
}
|
||||
|
||||
@@ -1488,9 +1488,9 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
|
||||
if (mpDrink != nullptr) {
|
||||
if (!field_0x137B2 || dLytAreaCaption_c::getVisible() || fn_800D5380(false) ||
|
||||
MinigameManager::isInAnyMinigame() || field_0x1377E
|
||||
MinigameManager::isInAnyMinigame() || mIsInSwordDrawEvent
|
||||
|
||||
|| fn_800D56B0() || dLytMeter_c::getField_0x13B66() || fn_800D5420() || fn_800D5650() || fn_800D5680()) {
|
||||
|| fn_800D56B0() || dLytMeter_c::getField_0x13B66() || fn_800D5420() || isInModeMap() || isInModePause()) {
|
||||
mDrinkVisible = false;
|
||||
}
|
||||
|
||||
@@ -1522,8 +1522,8 @@ bool dLytMeterMain_c::execute() {
|
||||
meter->clearFlags(METER_BTN_PLUS);
|
||||
}
|
||||
|
||||
if (field_0x13750 != 0 && mBasicPosition == POSITION_MAP) {
|
||||
fn_800D5290();
|
||||
if (mMode != MODE_MAP_INIT && mBasicPosition == POSITION_MAP) {
|
||||
executeMap();
|
||||
}
|
||||
|
||||
checkPaneVisibility();
|
||||
@@ -1866,7 +1866,7 @@ bool dLytMeter_c::execute() {
|
||||
bool dLytMeter_c::draw() {
|
||||
if (mVisible) {
|
||||
mMain.draw();
|
||||
if (mMain.field_0x13750 != 3) {
|
||||
if (mMain.mMode != dLytMeterMain_c::MODE_PAUSE) {
|
||||
if (mpEventSkip != nullptr) {
|
||||
mpEventSkip->draw();
|
||||
}
|
||||
@@ -1884,7 +1884,7 @@ bool dLytMeter_c::draw() {
|
||||
}
|
||||
|
||||
bool dLytMeter_c::fn_800D5670() {
|
||||
return mMain.fn_800D5350();
|
||||
return mMain.isInMapEvent();
|
||||
}
|
||||
|
||||
void dLytMeter_c::setAreaCaptionOverrideVisibility(bool visible) {
|
||||
|
||||
@@ -215,7 +215,7 @@ bool dLytMeterABtn_c::execute() {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (dLytMeter_c::GetInstance()->getMeterField_0x13750() == 0) {
|
||||
if (dLytMeter_c::GetInstance()->getMeterMode() == dLytMeterMain_c::MODE_MAP_INIT) {
|
||||
LytDoButtonRelated::set(LytDoButtonRelated::DO_BUTTON_A, LytDoButtonRelated::ACT_IE_NONE);
|
||||
|
||||
if (field_0x1BC != LytDoButtonRelated::ACT_IE_NONE) {
|
||||
@@ -228,7 +228,7 @@ bool dLytMeterABtn_c::execute() {
|
||||
bool state = false;
|
||||
|
||||
if (EventManager::isInEvent() && !dLytMeter_c::GetInstance()->fn_800D5670() &&
|
||||
dLytMeter_c::GetMain()->getField_0x1377E() == 0 && !checkIsInSkykeepPuzzle() &&
|
||||
!dLytMeter_c::GetMain()->isInSwordDrawEvent() && !checkIsInSkykeepPuzzle() &&
|
||||
LytDoButtonRelated::get(LytDoButtonRelated::DO_BUTTON_A) == LytDoButtonRelated::ACT_IE_NONE) {
|
||||
field_0x1C9 = 0;
|
||||
|
||||
|
||||
@@ -34,7 +34,7 @@ void dLytMeterCrossBtnParts_c::initializeState_Wait() {
|
||||
mOnDelay = 15;
|
||||
}
|
||||
void dLytMeterCrossBtnParts_c::executeState_Wait() {
|
||||
if (dLytMeter_c::GetMain()->fn_800D5650()) {
|
||||
if (dLytMeter_c::GetMain()->isInModeMap()) {
|
||||
mOnDelay = 0;
|
||||
}
|
||||
|
||||
@@ -150,7 +150,7 @@ void dLytMeterCrossBtnParts_c::execute(bool bIsVisible) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (dLytMeter_c::GetInstance()->getMeterField_0x13750() == 0) {
|
||||
if (dLytMeter_c::GetInstance()->getMeterMode() == dLytMeterMain_c::MODE_MAP_INIT) {
|
||||
if (mIndex == CROSS_BTN_PART_TOP) {
|
||||
LytDoButtonRelated::setCrossTop(LytDoButtonRelated::ACT_IE_NONE, true);
|
||||
} else if (mIndex == CROSS_BTN_PART_DOWN) {
|
||||
|
||||
@@ -395,14 +395,14 @@ void dLytMeterDowsing_c::executeState_Wait() {
|
||||
mStateMgr.changeState(StateID_DemoMove);
|
||||
} else if (field_0x5505 != 0) {
|
||||
mStateMgr.changeState(StateID_MenuSelectingIn);
|
||||
} else if (field_0x550A != 0 && (!dLytMeter_c::GetMain()->fn_800D5380(0) || dLytMeter_c::GetMain()->fn_800D5650() ||
|
||||
dLytMeter_c::GetMain()->fn_800D5680())) {
|
||||
} else if (field_0x550A != 0 && (!dLytMeter_c::GetMain()->fn_800D5380(0) || dLytMeter_c::GetMain()->isInModeMap() ||
|
||||
dLytMeter_c::GetMain()->isInModePause())) {
|
||||
mStateMgr.changeState(StateID_Reset);
|
||||
} else if (!dLytMeter_c::GetInstance()->checkAllFlags(METER_BTN_C)) {
|
||||
mStateMgr.changeState(StateID_ToUnuse);
|
||||
} else if (dLytMeter_c::GetInstance()->getMeterField_0x1377F() != 0 && field_0x550A == 0 &&
|
||||
dLytMeter_c::GetMain()->fn_800D5380(0) && !dLytMeter_c::GetMain()->fn_800D5650() &&
|
||||
!dLytMeter_c::GetMain()->fn_800D5680() && getSelectedDowsingSlot() != DowsingTarget::SLOT_LOOK &&
|
||||
} else if (dLytMeter_c::GetInstance()->getMeterField_0x1377F() && field_0x550A == 0 &&
|
||||
dLytMeter_c::GetMain()->fn_800D5380(0) && !dLytMeter_c::GetMain()->isInModeMap() &&
|
||||
!dLytMeter_c::GetMain()->isInModePause() && getSelectedDowsingSlot() != DowsingTarget::SLOT_LOOK &&
|
||||
getSelectedDowsingSlot() != DowsingTarget::SLOT_NONE &&
|
||||
LytDoButtonRelated::get(LytDoButtonRelated::DO_BUTTON_C) == 0x52) {
|
||||
mAnm[DOWSING_ANIM_IN].setBackwardsOnce();
|
||||
@@ -552,7 +552,7 @@ void dLytMeterDowsing_c::initializeState_ToUse() {
|
||||
|
||||
if (FileManager::GetInstance()->getDowsingSlotIdx() != 8 &&
|
||||
LytDoButtonRelated::get(LytDoButtonRelated::DO_BUTTON_C) == 0x52 && dLytMeter_c::GetMain()->fn_800D5380(0) &&
|
||||
!dLytMeter_c::GetMain()->fn_800D5650() && !dLytMeter_c::GetMain()->fn_800D5680()) {
|
||||
!dLytMeter_c::GetMain()->isInModeMap() && !dLytMeter_c::GetMain()->isInModePause()) {
|
||||
mAnm[DOWSING_ANIM_RESET].setAnimEnable(true);
|
||||
mAnm[DOWSING_ANIM_RESET].setBackwardsOnce();
|
||||
mAnm[DOWSING_ANIM_RESET].setToStart();
|
||||
@@ -561,7 +561,7 @@ void dLytMeterDowsing_c::initializeState_ToUse() {
|
||||
void dLytMeterDowsing_c::executeState_ToUse() {
|
||||
if (FileManager::GetInstance()->getDowsingSlotIdx() != 8 &&
|
||||
LytDoButtonRelated::get(LytDoButtonRelated::DO_BUTTON_C) == 0x52 && dLytMeter_c::GetMain()->fn_800D5380(0) &&
|
||||
!dLytMeter_c::GetMain()->fn_800D5650() && !dLytMeter_c::GetMain()->fn_800D5680()) {
|
||||
!dLytMeter_c::GetMain()->isInModeMap() && !dLytMeter_c::GetMain()->isInModePause()) {
|
||||
if (mAnm[DOWSING_ANIM_INPUT_0].isStop2()) {
|
||||
if (!mAnm[DOWSING_ANIM_RESET].isEnabled() || mAnm[DOWSING_ANIM_RESET].isStop2()) {
|
||||
mStateMgr.changeState(StateID_Wait);
|
||||
@@ -586,7 +586,7 @@ void dLytMeterDowsing_c::finalizeState_ToUse() {
|
||||
|
||||
void dLytMeterDowsing_c::initializeState_ToUnuse() {
|
||||
mAnm[DOWSING_ANIM_INPUT_0].setForwardOnce();
|
||||
if (dLytMeter_c::GetMain()->fn_800D5650()) {
|
||||
if (dLytMeter_c::GetMain()->isInModeMap()) {
|
||||
mAnm[DOWSING_ANIM_INPUT_0].setToEnd2();
|
||||
} else {
|
||||
mAnm[DOWSING_ANIM_INPUT_0].setToStart();
|
||||
@@ -595,7 +595,7 @@ void dLytMeterDowsing_c::initializeState_ToUnuse() {
|
||||
|
||||
if (FileManager::GetInstance()->getDowsingSlotIdx() != 8 &&
|
||||
LytDoButtonRelated::get(LytDoButtonRelated::DO_BUTTON_C) == 0x52 && dLytMeter_c::GetMain()->fn_800D5380(0) &&
|
||||
!dLytMeter_c::GetMain()->fn_800D5650() && !dLytMeter_c::GetMain()->fn_800D5680()) {
|
||||
!dLytMeter_c::GetMain()->isInModeMap() && !dLytMeter_c::GetMain()->isInModePause()) {
|
||||
mAnm[DOWSING_ANIM_RESET].setAnimEnable(true);
|
||||
mAnm[DOWSING_ANIM_RESET].setForwardOnce();
|
||||
mAnm[DOWSING_ANIM_RESET].setToStart();
|
||||
@@ -631,7 +631,7 @@ void dLytMeterDowsing_c::executeState_Unuse() {
|
||||
mLyt.calc();
|
||||
mAnm[DOWSING_ANIM_INPUT_0].setAnimEnable(false);
|
||||
mStateMgr.changeState(StateID_DemoMove);
|
||||
} else if (!dLytMeter_c::GetMain()->fn_800D5680() && !dLytMeter_c::GetInstance()->isHelpOpen() &&
|
||||
} else if (!dLytMeter_c::GetMain()->isInModePause() && !dLytMeter_c::GetInstance()->isHelpOpen() &&
|
||||
dLytMeter_c::GetInstance()->checkAllFlags(METER_BTN_C)) {
|
||||
if (field_0x54D8 <= 0) {
|
||||
mStateMgr.changeState(StateID_ToUse);
|
||||
@@ -1104,7 +1104,7 @@ void dLytMeterDowsing_c::fn_800FE110() {
|
||||
mText[0].setShouldBeSelect(false);
|
||||
}
|
||||
|
||||
if (dLytMeter_c::GetInstance()->getMeterField_0x1377F() != 0 && field_0x550A == 0) {
|
||||
if (dLytMeter_c::GetInstance()->getMeterField_0x1377F() && field_0x550A == 0) {
|
||||
mInput.setShouldBeSelect(true);
|
||||
} else {
|
||||
mInput.setShouldBeSelect(false);
|
||||
@@ -1114,8 +1114,8 @@ void dLytMeterDowsing_c::fn_800FE110() {
|
||||
void dLytMeterDowsing_c::fn_800FE220() {
|
||||
if (getSelectedDowsingSlot() != DowsingTarget::SLOT_NONE &&
|
||||
LytDoButtonRelated::get(LytDoButtonRelated::DO_BUTTON_C) == LytDoButtonRelated::ACT_IE_INFO_DOWSE &&
|
||||
dLytMeter_c::GetMain()->fn_800D5380(0) && !dLytMeter_c::GetMain()->fn_800D5650() &&
|
||||
!dLytMeter_c::GetMain()->fn_800D5680()) {
|
||||
dLytMeter_c::GetMain()->fn_800D5380(0) && !dLytMeter_c::GetMain()->isInModeMap() &&
|
||||
!dLytMeter_c::GetMain()->isInModePause()) {
|
||||
mAnm[DOWSING_ANIM_RESET].setAnimEnable(true);
|
||||
mAnm[DOWSING_ANIM_RESET].setForwardOnce();
|
||||
mAnm[DOWSING_ANIM_RESET].setToStart();
|
||||
@@ -1169,7 +1169,7 @@ bool dLytMeterDowsing_c::fn_800FE4B0() const {
|
||||
|
||||
bool dLytMeterDowsing_c::fn_800FE610() {
|
||||
if ((!dLytMeter_c::GetMain()->getDowsingNotHiddenByAreaCaption() && !dLytAreaCaption_c::getVisible()) ||
|
||||
!getPane()->IsVisible() || dLytMeter_c::GetMain()->fn_800D5680()) {
|
||||
!getPane()->IsVisible() || dLytMeter_c::GetMain()->isInModePause()) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
@@ -1196,7 +1196,7 @@ s32 dLytMeterDowsing_c::convertToLytIndex(s32 slot) const {
|
||||
}
|
||||
|
||||
u8 dLytMeterDowsing_c::getSelectedDowsingSlot() const {
|
||||
if (dLytMeter_c::GetMain()->fn_800D5650()) {
|
||||
if (dLytMeter_c::GetMain()->isInModeMap()) {
|
||||
return DowsingTarget::SLOT_NONE;
|
||||
} else {
|
||||
return FileManager::GetInstance()->getDowsingSlotIdx();
|
||||
|
||||
@@ -688,7 +688,7 @@ void dLytMeterItemSelect_c::executeState_Wait() {
|
||||
mStateMgr.changeState(StateID_SetSpecialItemIn);
|
||||
} else if (!dLytMeter_c::GetInstance()->checkAllFlags(METER_BTN_B)) {
|
||||
mStateMgr.changeState(StateID_ToUnuse);
|
||||
} else if (!dLytMeter_c::GetMain()->fn_800D5650() && !dLytMeter_c::GetMain()->fn_800D5680() &&
|
||||
} else if (!dLytMeter_c::GetMain()->isInModeMap() && !dLytMeter_c::GetMain()->isInModePause() &&
|
||||
LytDoButtonRelated::get(LytDoButtonRelated::DO_BUTTON_B) != LytDoButtonRelated::ACT_IE_ETC_ITEMS &&
|
||||
LytDoButtonRelated::get(LytDoButtonRelated::DO_BUTTON_B) != LytDoButtonRelated::ACT_IE_ETC_RETURN &&
|
||||
LytDoButtonRelated::get(LytDoButtonRelated::DO_BUTTON_B) != LytDoButtonRelated::ACT_IE_ETC_DONE &&
|
||||
@@ -2483,8 +2483,8 @@ bool dLytMeterItemSelect_c::fn_800EFDF0(bool b) const {
|
||||
bool dLytMeterItemSelect_c::fn_800F0030() const {
|
||||
if (!StoryflagManager::sInstance->getCounterOrFlag(STORYFLAG_B_WHEEL_UNLOCKED) &&
|
||||
!(EventManager::isInEvent() && EventManager::isCurrentEvent("ItemGetGorgeous")) ||
|
||||
(mpOwnerPane == nullptr || !mpOwnerPane->IsVisible() || dLytMeter_c::GetMain()->fn_800D5650() ||
|
||||
dLytMeter_c::GetMain()->fn_800D5680() || !dLytMeter_c::GetMain()->getItemSelectNotHiddenByAreaCaption())) {
|
||||
(mpOwnerPane == nullptr || !mpOwnerPane->IsVisible() || dLytMeter_c::GetMain()->isInModeMap() ||
|
||||
dLytMeter_c::GetMain()->isInModePause() || !dLytMeter_c::GetMain()->getItemSelectNotHiddenByAreaCaption())) {
|
||||
// If we don't have a B-Wheel and we're not currently in the ItemGetGorgeous event,
|
||||
// or (random other conditions), return false
|
||||
return false;
|
||||
@@ -2715,7 +2715,7 @@ bool dLytMeterItemSelect_c::isWheelBlockedByCurrentAction() {
|
||||
dAcPy_c::LINK->checkActionFlags(dAcPy_c::FLG0_SWING_ROPE) || dAcPy_c::LINK->checkCurrentAction(0x9C) ||
|
||||
dAcPy_c::LINK->getRidingActorType() == dAcPy_c::RIDING_TRUCK_MINECART ||
|
||||
dAcPy_c::LINK->checkCurrentAction(0x95) || isInSpiralChargeTutorialMinigame() || isInRollercoasterMinigame() ||
|
||||
dAcPy_c::LINK->checkCurrentAction(0x8C) || dLytMeter_c::GetMain()->getField_0x1377E() != 0 ||
|
||||
dAcPy_c::LINK->checkCurrentAction(0x8C) || dLytMeter_c::GetMain()->isInSwordDrawEvent() ||
|
||||
checkIsInSkykeepPuzzle() || dLytMeter_c::GetInstance()->getMeterField_0x13770() == 0) {
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -1039,8 +1039,8 @@ bool dLytMeterMinusBtn_c::fn_800F7600() const {
|
||||
|
||||
bool dLytMeterMinusBtn_c::fn_800F7760() const {
|
||||
if (!StoryflagManager::sInstance->getCounterOrFlag(STORYFLAG_POUCH_UNLOCKED) ||
|
||||
(mpOwnerPane == nullptr || !mpOwnerPane->IsVisible() || dLytMeter_c::GetMain()->fn_800D5650() ||
|
||||
dLytMeter_c::GetMain()->fn_800D5680() || !dLytMeter_c::GetMain()->getMinusBtnNotHiddenByAreaCaption())) {
|
||||
(mpOwnerPane == nullptr || !mpOwnerPane->IsVisible() || dLytMeter_c::GetMain()->isInModeMap() ||
|
||||
dLytMeter_c::GetMain()->isInModePause() || !dLytMeter_c::GetMain()->getMinusBtnNotHiddenByAreaCaption())) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
@@ -201,7 +201,7 @@ void LytMeterTimerPart1_c::initOutAnim() {
|
||||
}
|
||||
|
||||
void LytMeterTimerPart1_c::startInAnim() {
|
||||
if (dLytMeter_c::GetMain()->fn_800D5650()) {
|
||||
if (dLytMeter_c::GetMain()->isInModeMap()) {
|
||||
mAnm[TIMER_01_ANIM_MAP_POSITION].setFrame(1.0f);
|
||||
} else {
|
||||
mAnm[TIMER_01_ANIM_MAP_POSITION].setFrame(0.0f);
|
||||
@@ -620,7 +620,7 @@ void LytMeterTimerPart2_c::initChangeFruitAnim() {
|
||||
}
|
||||
|
||||
void LytMeterTimerPart2_c::startInAnim() {
|
||||
if (dLytMeter_c::GetMain()->fn_800D5650()) {
|
||||
if (dLytMeter_c::GetMain()->isInModeMap()) {
|
||||
mAnm[TIMER_02_ANIM_MAP_POSITION].setFrame(1.0f);
|
||||
} else {
|
||||
mAnm[TIMER_02_ANIM_MAP_POSITION].setFrame(0.0f);
|
||||
@@ -1365,7 +1365,7 @@ void dLytMeterTimer_c::startIn() {
|
||||
mpPart2->stopOutAnim();
|
||||
mpPart1->startInAnim();
|
||||
mpPart2->startInAnim();
|
||||
if (dLytMeter_c::GetMain()->fn_800D5650()) {
|
||||
if (dLytMeter_c::GetMain()->isInModeMap()) {
|
||||
if (mStateMgr.isState(StateID_ChangeSiren)) {
|
||||
mpPart2->stopFlowerLoopAnim();
|
||||
mpPart2->resetFlowerLoopAnim();
|
||||
|
||||
Reference in New Issue
Block a user