mirror of
https://github.com/TwilitRealm/dusklight
synced 2026-06-07 19:31:19 -04:00
ShieldD: Clean up a bunch of 99% matching TUs (#3113)
* d_a_npc_ks debug code 100% * d_a_npc_rafrel debug code 100% * d_a_npc_inko minor improvements * d_a_npc_gro debug code 100% * d_a_npc_pachi_taro debug code 100% * d_a_npc_passer debug code 100% * d_a_npc_pachi_maro debug code 100% * d_a_npc_post debug code 100% * d_a_obj_bemos debug improvements * d_a_obj_scannon_ten debug code 100% * d_a_b_mgn debug code 100% * d_a_e_fb debug code 100% * d_a_e_gb debug code 100% * d_a_e_hz debug code 100% * d_a_e_cr_egg debug code 100% * d_a_e_md debug code 100% * d_a_e_wb debug code 100% * d_a_obj_mirror_6pole debug code 100% * d_a_obj_spinLift debug data fixes * d_a_obj_pdwall debug data fixes * d_a_obj_ss_drink debug code almost matching * d_a_obj_poFire debug code 100% * d_a_obj_picture debug code 100% * d_a_obj_dust debug code 100% * d_a_obj_fallobj debug code 100% * d_a_obj_itamato debug code almost matching * d_a_obj_syRock debug code 100% * d_a_obj_katatsumuri debug code 100% * d_a_obj_wood_statue debug code 100% * d_a_obj_lv6egate debug code 100% * d_a_tag_qs minor debug symbol fixes * d_a_obj_twGate debug code 100% * d_a_obj_lv6SwGate debug code 100% * d_a_obj_lv6swturn debug code 100% * d_a_obj_lv6Tenbin debug code 100% * d_a_obj_kwheel01 debug code 100% * Fix RTTI order regression (cM3dGCyl vs cBgS_*)
This commit is contained in:
@@ -14,4 +14,4 @@ d/actor/d_a_b_mgn.cpp:
|
||||
.ctors start:0x00000000 end:0x00000004
|
||||
.rodata start:0x00000000 end:0x000002AC
|
||||
.data start:0x00000000 end:0x00000734
|
||||
.bss start:0x00000004 end:0x00000028
|
||||
.bss start:0x00000000 end:0x00000028
|
||||
|
||||
@@ -231,7 +231,9 @@ _dtors = .dtors:0x00000000; // type:label scope:global
|
||||
@122971 = .rodata:0x00000284; // type:object size:0x4 scope:local align:4 data:float
|
||||
cNullVec__6Z2Calc = .rodata:0x00000288; // type:object size:0xC scope:global
|
||||
@46916 = .rodata:0x00000294; // type:object size:0x4 scope:local
|
||||
lbl_139_rodata_298 = .rodata:0x00000298; // type:object size:0x14
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000298; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN_2__Q23std17numeric_limits<d>Fv@x = .rodata:0x000002A0; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x000002A8; // type:object size:0x4 align:4 data:float
|
||||
@LOCAL@setMidnaBindEffect__FP13fopEn_enemy_cP15Z2CreatureEnemyP4cXyzP4cXyz@e_prim = .data:0x00000000; // type:object size:0x8 scope:local
|
||||
@LOCAL@setMidnaBindEffect__FP13fopEn_enemy_cP15Z2CreatureEnemyP4cXyzP4cXyz@e_env@0 = .data:0x00000008; // type:object size:0x8 scope:local
|
||||
@LOCAL@setMidnaBindEffect__FP13fopEn_enemy_cP15Z2CreatureEnemyP4cXyzP4cXyz@eff_id@1 = .data:0x00000010; // type:object size:0x6 scope:local
|
||||
@@ -294,6 +296,14 @@ lbl_139_data_440 = .data:0x00000440; // type:object size:0x24
|
||||
@123082 = .data:0x00000648; // type:object size:0xC scope:local
|
||||
@123083 = .data:0x0000066C; // type:object size:0x11 scope:local data:string
|
||||
@123084 = .data:0x00000694; // type:object size:0xD scope:local data:string
|
||||
lbl_139_data_6A1 = .data:0x000006A1; // type:object size:0x93
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@2 = .data:0x000006B0; // type:object size:0x5 scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@1 = .data:0x000006B8; // type:object size:0xF scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@0 = .data:0x000006C8; // type:object size:0x14 scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs = .data:0x000006DC; // type:object size:0xF scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs@2 = .data:0x000006EC; // type:object size:0x5 scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs@1 = .data:0x000006F4; // type:object size:0x14 scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs@0 = .data:0x00000708; // type:object size:0x14 scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs = .data:0x0000071C; // type:object size:0x14 scope:local data:string
|
||||
@STRING@showAssert__12JUTAssertionFUlPCciPCc = .data:0x00000730; // type:object size:0x3 scope:local data:string
|
||||
hio_set = .bss:0x00000000; // type:object size:0x1 scope:local align:1 data:byte
|
||||
l_HIO = .bss:0x00000004; // type:object size:0x24 scope:global data:byte
|
||||
|
||||
@@ -30,7 +30,9 @@ _dtors = .dtors:0x00000000; // type:label scope:global
|
||||
@116845 = .rodata:0x00000038; // type:object size:0x4 scope:local align:4 data:float
|
||||
cNullVec__6Z2Calc = .rodata:0x0000003C; // type:object size:0xC scope:global
|
||||
@46916 = .rodata:0x00000048; // type:object size:0x4 scope:local
|
||||
lbl_172_rodata_4C = .rodata:0x0000004C; // type:object size:0x18
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000050; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN_2__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000058; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x00000060; // type:object size:0x4 align:4 data:float
|
||||
@LOCAL@e_cr_egg_move__FP14e_cr_egg_class@spy = .data:0x00000000; // type:object size:0xC scope:local
|
||||
@116895 = .data:0x0000000C; // type:object size:0x1B scope:local data:string
|
||||
@116896 = .data:0x00000028; // type:object size:0x5 scope:local data:string
|
||||
@@ -60,4 +62,4 @@ lbl_172_data_178 = .data:0x00000178; // type:object size:0x24
|
||||
@117050 = .data:0x000002F8; // type:object size:0x10 scope:local data:string
|
||||
@117051 = .data:0x0000031C; // type:object size:0x9 scope:local data:string
|
||||
@117052 = .data:0x0000033C; // type:object size:0x9 scope:local data:string
|
||||
lbl_172_data_345 = .data:0x00000345; // type:object size:0xF
|
||||
@STRING@showAssert__12JUTAssertionFUlPCciPCc = .data:0x00000350; // type:object size:0x3 data:string
|
||||
|
||||
@@ -81,7 +81,9 @@ _dtors = .dtors:0x00000000; // type:label scope:global
|
||||
@117898 = .rodata:0x000000A0; // type:object size:0x4 scope:local
|
||||
cNullVec__6Z2Calc = .rodata:0x000000A4; // type:object size:0xC scope:global
|
||||
@46916 = .rodata:0x000000B0; // type:object size:0x4 scope:local
|
||||
lbl_179_rodata_B4 = .rodata:0x000000B4; // type:object size:0x18
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x000000B8; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN_2__Q23std17numeric_limits<d>Fv@x = .rodata:0x000000C0; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x000000C8; // type:object size:0x4 align:4 data:float
|
||||
@117003 = .data:0x00000000; // type:object size:0xF scope:local
|
||||
@117004 = .data:0x00000010; // type:object size:0xD scope:local
|
||||
@117007 = .data:0x00000020; // type:object size:0x13 scope:local
|
||||
@@ -142,8 +144,16 @@ lbl_179_data_320 = .data:0x00000320; // type:object size:0x24
|
||||
@118009 = .data:0x00000508; // type:object size:0xC scope:local
|
||||
@118010 = .data:0x0000052C; // type:object size:0x11 scope:local data:string
|
||||
@118011 = .data:0x00000554; // type:object size:0xD scope:local data:string
|
||||
lbl_179_data_561 = .data:0x00000561; // type:object size:0x93
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@2 = .data:0x00000570; // type:object size:0x5 scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@1 = .data:0x00000578; // type:object size:0xF scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@0 = .data:0x00000588; // type:object size:0x14 scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs = .data:0x0000059C; // type:object size:0xF scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs@2 = .data:0x000005AC; // type:object size:0x5 scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs@1 = .data:0x000005B4; // type:object size:0x14 scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs@0 = .data:0x000005C8; // type:object size:0x14 scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs = .data:0x000005DC; // type:object size:0x14 scope:local data:string
|
||||
@STRING@showAssert__12JUTAssertionFUlPCciPCc = .data:0x000005F0; // type:object size:0x3 scope:local data:string
|
||||
hio_set = .bss:0x00000000; // type:object size:0x1 scope:local data:byte
|
||||
l_HIO = .bss:0x00000004; // type:object size:0x24 scope:global data:byte
|
||||
mFireTimer = .bss:0x00000028; // type:object size:0x4 scope:global data:4byte
|
||||
lbl_179_bss_2C = .bss:0x0000002C; // type:object size:0x1 data:byte
|
||||
lbl_188_bss_7C = .bss:0x0000002C; // type:object size:0x1 data:byte
|
||||
|
||||
@@ -14,4 +14,4 @@ d/actor/d_a_e_gb.cpp:
|
||||
.ctors start:0x00000000 end:0x00000004
|
||||
.rodata start:0x00000000 end:0x000001D4
|
||||
.data start:0x00000000 end:0x00000644
|
||||
.bss start:0x00000008 end:0x00000028
|
||||
.bss start:0x00000000 end:0x00000028
|
||||
|
||||
@@ -156,7 +156,9 @@ _dtors = .dtors:0x00000000; // type:label scope:global
|
||||
@120500 = .rodata:0x000001A8; // type:object size:0x4 scope:local align:4 data:float
|
||||
cNullVec__6Z2Calc = .rodata:0x000001AC; // type:object size:0xC scope:global
|
||||
@46916 = .rodata:0x000001B8; // type:object size:0x4 scope:local
|
||||
lbl_183_rodata_1BC = .rodata:0x000001BC; // type:object size:0x18
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x000001C0; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN_2__Q23std17numeric_limits<d>Fv@x = .rodata:0x000001C8; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x000001D0; // type:object size:0x4 align:4 data:float
|
||||
@LOCAL@setMidnaBindEffect__FP13fopEn_enemy_cP15Z2CreatureEnemyP4cXyzP4cXyz@e_prim = .data:0x00000000; // type:object size:0x8 scope:local
|
||||
@LOCAL@setMidnaBindEffect__FP13fopEn_enemy_cP15Z2CreatureEnemyP4cXyzP4cXyz@e_env@0 = .data:0x00000008; // type:object size:0x8 scope:local
|
||||
@LOCAL@setMidnaBindEffect__FP13fopEn_enemy_cP15Z2CreatureEnemyP4cXyzP4cXyz@eff_id@1 = .data:0x00000010; // type:object size:0x6 scope:local
|
||||
@@ -219,6 +221,6 @@ lbl_183_data_3D0 = .data:0x000003D0; // type:object size:0x24
|
||||
@120617 = .data:0x000005D8; // type:object size:0xC scope:local
|
||||
@120618 = .data:0x000005FC; // type:object size:0x11 scope:local data:string
|
||||
@120619 = .data:0x00000624; // type:object size:0xD scope:local data:string
|
||||
lbl_183_data_631 = .data:0x00000631; // type:object size:0x13
|
||||
lbl_183_bss_0 = .bss:0x00000000; // type:object size:0x1 data:byte
|
||||
@STRING@showAssert__12JUTAssertionFUlPCciPCc = .data:0x00000640; // type:object size:0x3 data:string
|
||||
data_806C7928 = .bss:0x00000000; // type:object size:0x1 data:byte
|
||||
l_HIO = .bss:0x00000008; // type:object size:0x20 scope:global data:byte
|
||||
|
||||
@@ -133,7 +133,9 @@ _dtors = .dtors:0x00000000; // type:label scope:global
|
||||
@122055 = .rodata:0x000000F0; // type:object size:0x4 scope:local
|
||||
cNullVec__6Z2Calc = .rodata:0x000000F4; // type:object size:0xC scope:global
|
||||
@46916 = .rodata:0x00000100; // type:object size:0x4 scope:local
|
||||
lbl_192_rodata_104 = .rodata:0x00000104; // type:object size:0x18
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000108; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN_2__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000110; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x00000118; // type:object size:0x4 align:4 data:float
|
||||
@LOCAL@setMidnaBindEffect__FP13fopEn_enemy_cP15Z2CreatureEnemyP4cXyzP4cXyz@e_prim = .data:0x00000000; // type:object size:0x8 scope:local
|
||||
@LOCAL@setMidnaBindEffect__FP13fopEn_enemy_cP15Z2CreatureEnemyP4cXyzP4cXyz@e_env@0 = .data:0x00000008; // type:object size:0x8 scope:local
|
||||
@LOCAL@setMidnaBindEffect__FP13fopEn_enemy_cP15Z2CreatureEnemyP4cXyzP4cXyz@eff_id@1 = .data:0x00000010; // type:object size:0x6 scope:local
|
||||
@@ -193,11 +195,20 @@ lbl_192_data_308 = .data:0x00000308; // type:object size:0x24
|
||||
@122166 = .data:0x000004E0; // type:object size:0xE scope:local data:string
|
||||
@122167 = .data:0x000004F0; // type:object size:0xC scope:local
|
||||
@122168 = .data:0x00000514; // type:object size:0x11 scope:local data:string
|
||||
lbl_192_data_525 = .data:0x00000525; // type:object size:0x8F
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@2 = .data:0x00000530; // type:object size:0x5 scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@1 = .data:0x00000538; // type:object size:0xF scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@0 = .data:0x00000548; // type:object size:0x14 scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs = .data:0x0000055C; // type:object size:0xF scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs@2 = .data:0x0000056C; // type:object size:0x5 scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs@1 = .data:0x00000574; // type:object size:0x14 scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs@0 = .data:0x00000588; // type:object size:0x14 scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs = .data:0x0000059C; // type:object size:0x14 scope:local data:string
|
||||
@STRING@showAssert__12JUTAssertionFUlPCciPCc = .data:0x000005B0; // type:object size:0x3 scope:local data:string
|
||||
...bss.0 = .bss:0x00000000; // type:label scope:local
|
||||
hio_set = .bss:0x00000000; // type:object size:0x1 scope:global data:byte
|
||||
l_HIO = .bss:0x00000004; // type:object size:0x3C scope:global data:byte
|
||||
m_near_bomb = .bss:0x00000040; // type:object size:0x4 scope:global
|
||||
m_near_carry = .bss:0x00000044; // type:object size:0x4 scope:global
|
||||
m_near_weapon = .bss:0x00000048; // type:object size:0x4 scope:global
|
||||
lbl_192_bss_4C = .bss:0x0000004C; // type:object size:0x1 data:byte
|
||||
@GUARD@setWaterEffect__8daE_HZ_cFv@sc = .bss:0x0000004C; // type:object size:0x1 data:byte
|
||||
@LOCAL@setWaterEffect__8daE_HZ_cFv@sc = .bss:0x00000050; // type:object size:0xC scope:local
|
||||
|
||||
@@ -53,7 +53,9 @@ _dtors = .dtors:0x00000000; // type:label scope:global
|
||||
@118886 = .rodata:0x00000090; // type:object size:0x4 scope:local
|
||||
cNullVec__6Z2Calc = .rodata:0x00000094; // type:object size:0xC scope:global
|
||||
@46916 = .rodata:0x000000A0; // type:object size:0x4 scope:local
|
||||
lbl_199_rodata_A4 = .rodata:0x000000A4; // type:object size:0x18
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x000000A8; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN_2__Q23std17numeric_limits<d>Fv@x = .rodata:0x000000B0; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x000000B8; // type:object size:0x4 align:4 data:float
|
||||
@118502 = .data:0x00000000; // type:object size:0x5 scope:local data:string
|
||||
l_daE_MD_Method = .data:0x00000008; // type:object size:0x20 scope:global
|
||||
g_profile_E_MD = .data:0x00000028; // type:object size:0x30 scope:global
|
||||
|
||||
@@ -437,7 +437,9 @@ _dtors = .dtors:0x00000000; // type:label scope:global
|
||||
@138571 = .rodata:0x00000554; // type:object size:0x4 scope:local
|
||||
cNullVec__6Z2Calc = .rodata:0x00000558; // type:object size:0xC scope:global
|
||||
@46916 = .rodata:0x00000564; // type:object size:0x4 scope:local
|
||||
lbl_235_rodata_568 = .rodata:0x00000568; // type:object size:0x14
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000568; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN_2__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000570; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x00000578; // type:object size:0x4 align:4 data:float
|
||||
@134436 = .data:0x00000000; // type:object size:0xB scope:local
|
||||
@134437 = .data:0x0000000C; // type:object size:0xB scope:local
|
||||
@134440 = .data:0x00000018; // type:object size:0x11 scope:local
|
||||
@@ -538,30 +540,37 @@ __vt__18mDoExt_3DlineMat_c = .data:0x00000958; // type:object size:0x14 scope:gl
|
||||
@138563 = .data:0x00000AA0; // type:object size:0xE scope:local data:string
|
||||
@138564 = .data:0x00000AB0; // type:object size:0xC scope:local
|
||||
@138565 = .data:0x00000AD4; // type:object size:0x11 scope:local data:string
|
||||
lbl_235_data_AE5 = .data:0x00000AE5; // type:object size:0x4B
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@2 = .data:0x00000AF0; // type:object size:0x5 scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@1 = .data:0x00000AF8; // type:object size:0xF scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@0 = .data:0x00000B08; // type:object size:0x14 scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs = .data:0x00000B1C; // type:object size:0xF scope:local data:string
|
||||
@STRING@showAssert__12JUTAssertionFUlPCciPCc = .data:0x00000B2C; // type:object size:0x3 scope:local data:string
|
||||
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
|
||||
...bss.0 = .bss:0x00000008; // type:label scope:local data:byte
|
||||
lbl_235_bss_9 = .bss:0x00000009; // type:object size:0x1 data:byte
|
||||
lbl_235_bss_A = .bss:0x0000000A; // type:object size:0x1 data:byte
|
||||
lbl_235_bss_B = .bss:0x0000000B; // type:object size:0x1 data:byte
|
||||
lbl_244_bss_45 = .bss:0x00000008; // type:object size:0x1 data:byte
|
||||
lbl_244_bss_46 = .bss:0x00000009; // type:object size:0x1 data:byte
|
||||
lbl_244_bss_47 = .bss:0x0000000A; // type:object size:0x1 data:byte
|
||||
hio_set = .bss:0x0000000B; // type:object size:0x1 data:byte
|
||||
l_HIO = .bss:0x0000000C; // type:object size:0x5C scope:global data:byte
|
||||
@134689 = .bss:0x00000068; // type:object size:0xC scope:local
|
||||
b_path = .bss:0x00000078; // type:object size:0x60 scope:global
|
||||
@135400 = .bss:0x000000D8; // type:object size:0xC scope:local
|
||||
b_path2 = .bss:0x000000E8; // type:object size:0x60 scope:global
|
||||
lbl_235_bss_148 = .bss:0x00000148; // type:object size:0x1 data:byte
|
||||
@GUARD@arrow_rd_set__FP10e_wb_class@arrow_rd_pos = .bss:0x00000148; // type:object size:0x1 data:byte
|
||||
@LOCAL@arrow_rd_set__FP10e_wb_class@arrow_rd_pos = .bss:0x0000014C; // type:object size:0xC scope:local
|
||||
saku_p = .bss:0x00000158; // type:object size:0xC scope:global
|
||||
saku_p2 = .bss:0x00000164; // type:object size:0xC scope:global
|
||||
@GUARD@e_wb_b_ikki__FP10e_wb_class@ikki_pos = .bss:0x00000170; // type:object size:0x1 scope:local data:byte
|
||||
@LOCAL@e_wb_b_ikki__FP10e_wb_class@ikki_pos = .bss:0x00000178; // type:object size:0x18 scope:local
|
||||
@GUARD@e_wb_b_ikki__FP10e_wb_class@f_pos@0 = .bss:0x00000190; // type:object size:0x1 scope:local data:byte
|
||||
@LOCAL@e_wb_b_ikki__FP10e_wb_class@f_pos@0 = .bss:0x00000198; // type:object size:0x18 scope:local
|
||||
lbl_235_bss_1B0 = .bss:0x000001B0; // type:object size:0x8 data:byte
|
||||
@GUARD@e_wb_b_ikki2__FP10e_wb_class@ikki2_pos = .bss:0x000001B0; // type:object size:0x1 scope:local data:byte
|
||||
@LOCAL@e_wb_b_ikki2__FP10e_wb_class@ikki2_pos = .bss:0x000001B8; // type:object size:0x18 scope:local align:4 data:float
|
||||
lbl_235_bss_1D0 = .bss:0x000001D0; // type:object size:0x1 data:byte
|
||||
@LOCAL@effect_set__FP10e_wb_class@sc@3 = .bss:0x000001D4; // type:object size:0xC scope:local
|
||||
@GUARD@effect_set__FP10e_wb_class@sc@3 = .bss:0x000001D0; // type:object size:0x1 scope:local data:byte
|
||||
@LOCAL@effect_set__FP10e_wb_class@sc@3 = .bss:0x000001D4; // type:object size:0xC scope:local data:byte
|
||||
rd_count = .bss:0x000001E0; // type:object size:0x4 scope:global data:4byte
|
||||
lbl_235_bss_1E4 = .bss:0x000001E4; // type:object size:0x1 data:byte
|
||||
@GUARD@e_wb_c_run__FP10e_wb_class@sh_pos = .bss:0x000001E4; // type:object size:0x1 scope:local data:byte
|
||||
@LOCAL@e_wb_c_run__FP10e_wb_class@sh_pos = .bss:0x000001E8; // type:object size:0x24 scope:local
|
||||
lbl_235_bss_20C = .bss:0x0000020C; // type:object size:0x1 data:byte
|
||||
@GUARD@e_wb_c_run__FP10e_wb_class@sh_posH@0 = .bss:0x0000020C; // type:object size:0x1 scope:local data:byte
|
||||
@LOCAL@e_wb_c_run__FP10e_wb_class@sh_posH@0 = .bss:0x00000210; // type:object size:0x24 scope:local
|
||||
c_start = .bss:0x00000234; // type:object size:0x4 scope:global data:4byte
|
||||
|
||||
@@ -142,7 +142,9 @@ m__17daNpc_grO_Param_c = .rodata:0x00000000; // type:object size:0x6C scope:glob
|
||||
@125834 = .rodata:0x0000025C; // type:object size:0x4 scope:local
|
||||
cNullVec__6Z2Calc = .rodata:0x00000260; // type:object size:0xC scope:global
|
||||
@46916 = .rodata:0x0000026C; // type:object size:0x4 scope:local
|
||||
lbl_303_rodata_270 = .rodata:0x00000270; // type:object size:0x14
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000270; // type:object size:0x8 scope:local data:float
|
||||
@LOCAL@signaling_NaN_2__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000278; // type:object size:0x8 scope:local data:float
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x00000280; // type:object size:0x4 scope:local data:float
|
||||
@124426 = .data:0x00000000; // type:object size:0xC scope:local
|
||||
l_bmdGetParamList = .data:0x00000010; // type:object size:0x18 scope:global
|
||||
l_bckGetParamList = .data:0x00000028; // type:object size:0xB8 scope:global
|
||||
@@ -233,9 +235,21 @@ lbl_303_data_5E7 = .data:0x000005E7; // type:object size:0x2D
|
||||
@126214 = .data:0x00000838; // type:object size:0x11 scope:local data:string
|
||||
@126215 = .data:0x00000864; // type:object size:0xC scope:local data:string
|
||||
@126216 = .data:0x00000884; // type:object size:0xD scope:local data:string
|
||||
lbl_303_data_891 = .data:0x00000891; // type:object size:0xDB
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@2 = .data:0x000008A0; // type:object size:0x5 scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@1 = .data:0x000008A8; // type:object size:0xF scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@0 = .data:0x000008B8; // type:object size:0x14 scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs = .data:0x000008CC; // type:object size:0xF scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs@2 = .data:0x000008DC; // type:object size:0x5 scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs@1 = .data:0x000008E4; // type:object size:0x14 scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs@0 = .data:0x000008F8; // type:object size:0x14 scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs = .data:0x0000090C; // type:object size:0x14 scope:local data:string
|
||||
@STRING@calc__11J3DTexNoAnmCFPUs@2 = .data:0x00000920; // type:object size:0x5 scope:local data:string
|
||||
@STRING@calc__11J3DTexNoAnmCFPUs@1 = .data:0x00000928; // type:object size:0x11 scope:local data:string
|
||||
@STRING@calc__11J3DTexNoAnmCFPUs@0 = .data:0x0000093C; // type:object size:0x16 scope:local data:string
|
||||
@STRING@calc__11J3DTexNoAnmCFPUs = .data:0x00000954; // type:object size:0x11 scope:local data:string
|
||||
@STRING@showAssert__12JUTAssertionFUlPCciPCc = .data:0x00000968; // type:object size:0x3 scope:local data:string
|
||||
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
|
||||
@124480 = .bss:0x00000008; // type:object size:0xC scope:local
|
||||
l_HIO = .bss:0x00000014; // type:object size:0x74 scope:global
|
||||
lbl_303_bss_88 = .bss:0x00000088; // type:object size:0x1 data:byte
|
||||
@GUARD@setAttnPos__11daNpc_grO_cFv@eyeOffset = .bss:0x00000088; // type:object size:0x1 data:byte
|
||||
@LOCAL@setAttnPos__11daNpc_grO_cFv@eyeOffset = .bss:0x0000008C; // type:object size:0xC scope:local align:4 data:float
|
||||
|
||||
@@ -57,7 +57,9 @@ _dtors = .dtors:0x00000000; // type:label scope:global
|
||||
@119073 = .rodata:0x0000009C; // type:object size:0x4 scope:local
|
||||
cNullVec__6Z2Calc = .rodata:0x000000A0; // type:object size:0xC scope:global
|
||||
@46916 = .rodata:0x000000AC; // type:object size:0x4 scope:local
|
||||
lbl_313_rodata_B0 = .rodata:0x000000B0; // type:object size:0x14
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x000000B0; // type:object size:0x8
|
||||
@LOCAL@signaling_NaN_2__Q23std17numeric_limits<d>Fv@x = .rodata:0x000000B8; // type:object size:0x8
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x000000C0; // type:object size:0x4
|
||||
@118624 = .data:0x00000000; // type:object size:0x9 scope:local data:string
|
||||
@LOCAL@daNpc_Inko_Execute__FP14npc_inko_class@mes_0 = .data:0x00000010; // type:object size:0x10 scope:local
|
||||
@LOCAL@daNpc_Inko_Execute__FP14npc_inko_class@mes_1@0 = .data:0x00000020; // type:object size:0x10 scope:local
|
||||
@@ -68,4 +70,8 @@ lbl_313_rodata_B0 = .rodata:0x000000B0; // type:object size:0x14
|
||||
@119071 = .data:0x000000B0; // type:object size:0x21 scope:local data:string
|
||||
l_daNpc_Inko_Method = .data:0x000000D8; // type:object size:0x20 scope:global
|
||||
g_profile_NPC_INKO = .data:0x000000F8; // type:object size:0x30 scope:global
|
||||
lbl_313_data_128 = .data:0x00000128; // type:object size:0x40
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@2 = .data:0x00000128; // type:object size:0x5 data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@1 = .data:0x00000130; // type:object size:0xF data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@0 = .data:0x00000140; // type:object size:0x14 data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs = .data:0x00000154; // type:object size:0xF data:string
|
||||
@STRING@showAssert__12JUTAssertionFUlPCciPCc = .data:0x00000164; // type:object size:0x3 data:string
|
||||
|
||||
@@ -432,7 +432,9 @@ _dtors = .dtors:0x00000000; // type:label scope:global
|
||||
@129036 = .rodata:0x00000514; // type:object size:0x4 scope:local align:4 data:float
|
||||
cNullVec__6Z2Calc = .rodata:0x00000518; // type:object size:0xC scope:global
|
||||
@46916 = .rodata:0x00000524; // type:object size:0x4 scope:local
|
||||
lbl_323_rodata_528 = .rodata:0x00000528; // type:object size:0x14
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000528; // type:object size:0x8 scope:local data:float
|
||||
@LOCAL@signaling_NaN_2__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000530; // type:object size:0x8 scope:local data:float
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x00000538; // type:object size:0x4 scope:local data:float
|
||||
@124084 = .data:0x00000000; // type:object size:0x9 scope:local
|
||||
@124085 = .data:0x0000000C; // type:object size:0xA scope:local
|
||||
@124086 = .data:0x00000018; // type:object size:0x20 scope:local
|
||||
@@ -526,18 +528,22 @@ lbl_323_data_1C78 = .data:0x00001C78; // type:object size:0x24
|
||||
@129144 = .data:0x00001E60; // type:object size:0xC scope:local
|
||||
@129145 = .data:0x00001E84; // type:object size:0x11 scope:local data:string
|
||||
@129146 = .data:0x00001EAC; // type:object size:0xD scope:local data:string
|
||||
lbl_323_data_1EB9 = .data:0x00001EB9; // type:object size:0x4F
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@2 = .data:0x00001EC8; // type:object size:0x5 scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@1 = .data:0x00001ED0; // type:object size:0xF scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@0 = .data:0x00001EE0; // type:object size:0x14 scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs = .data:0x00001EF4; // type:object size:0xF scope:local data:string
|
||||
@STRING@showAssert__12JUTAssertionFUlPCciPCc = .data:0x00001F04; // type:object size:0x3 scope:local data:string
|
||||
...bss.0 = .bss:0x00000000; // type:label scope:local
|
||||
obj_pos = .bss:0x00000000; // type:object size:0xC scope:global
|
||||
leader = .bss:0x0000000C; // type:object size:0x4 scope:global data:4byte
|
||||
call_pt = .bss:0x00000010; // type:object size:0x4 scope:global data:4byte
|
||||
lbl_323_bss_14 = .bss:0x00000014; // type:object size:0x1 data:byte
|
||||
hio_set = .bss:0x00000014; // type:object size:0x1 data:byte
|
||||
l_HIO = .bss:0x00000018; // type:object size:0x38 scope:global data:byte
|
||||
saru_p = .bss:0x00000050; // type:object size:0x20 scope:global data:4byte
|
||||
target_info = .bss:0x00000070; // type:object size:0x28 scope:global
|
||||
target_info_count = .bss:0x00000098; // type:object size:0x4 scope:global data:4byte
|
||||
target_bgc = .bss:0x000000A0; // type:object size:0x28 scope:global
|
||||
@LOCAL@npc_ks_hang__FP12npc_ks_class@start_pya = .bss:0x000000C8; // type:object size:0x2 scope:local data:2byte
|
||||
lbl_323_bss_CA = .bss:0x000000CA; // type:object size:0x1 data:byte
|
||||
@GUARD@npc_ks_option__FP12npc_ks_class@sc = .bss:0x000000CA; // type:object size:0x1 data:byte
|
||||
@LOCAL@npc_ks_option__FP12npc_ks_class@sc = .bss:0x000000CC; // type:object size:0xC scope:local
|
||||
c_start = .bss:0x000000D8; // type:object size:0x4 scope:global data:4byte
|
||||
|
||||
@@ -152,7 +152,9 @@ m__24daNpc_Pachi_Maro_Param_c = .rodata:0x00000000; // type:object size:0x90 sco
|
||||
@122402 = .rodata:0x000000F4; // type:object size:0x4 scope:local
|
||||
cNullVec__6Z2Calc = .rodata:0x000000F8; // type:object size:0xC scope:global
|
||||
@46916 = .rodata:0x00000104; // type:object size:0x4 scope:local
|
||||
lbl_335_rodata_108 = .rodata:0x00000108; // type:object size:0x14
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000108; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN_2__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000110; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x00000118; // type:object size:0x4 align:4 data:float
|
||||
@121352 = .data:0x00000000; // type:object size:0x1B scope:local
|
||||
@121353 = .data:0x0000001C; // type:object size:0x1C scope:local data:string
|
||||
@121354 = .data:0x00000038; // type:object size:0x17 scope:local data:string
|
||||
@@ -255,7 +257,20 @@ lbl_335_data_9A0 = .data:0x000009A0; // type:object size:0x24
|
||||
@122736 = .data:0x00000C34; // type:object size:0xD scope:local data:string
|
||||
@STRING@__ct__18daNpc_Pachi_Maro_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc = .data:0x00000C50; // type:object size:0x2F scope:local
|
||||
@STRING@__ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc = .data:0x00000C80; // type:object size:0x25 scope:local
|
||||
lbl_335_data_CA5 = .data:0x00000CA5; // type:object size:0xF3
|
||||
@STRING@__dt__8daNpcT_cFv = .data:0x00000CA8; // type:object size:0x23
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@2 = .data:0x00000CCC; // type:object size:0x5 data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@1 = .data:0x00000CD4; // type:object size:0xF data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@0 = .data:0x00000CE4; // type:object size:0x14 data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs = .data:0x00000CF8; // type:object size:0xF data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs@2 = .data:0x00000D08; // type:object size:0x5 data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs@1 = .data:0x00000D10; // type:object size:0x14 data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs@0 = .data:0x00000D24; // type:object size:0x14 data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs = .data:0x00000D38; // type:object size:0x14 data:string
|
||||
@STRING@calc__11J3DTexNoAnmCFPUs@2 = .data:0x00000D4C; // type:object size:0x5 data:string
|
||||
@STRING@calc__11J3DTexNoAnmCFPUs@1 = .data:0x00000D54; // type:object size:0x11 data:string
|
||||
@STRING@calc__11J3DTexNoAnmCFPUs@0 = .data:0x00000D68; // type:object size:0x16 data:string
|
||||
@STRING@calc__11J3DTexNoAnmCFPUs = .data:0x00000D80; // type:object size:0x11 data:string
|
||||
@STRING@showAssert__12JUTAssertionFUlPCciPCc = .data:0x00000D94; // type:object size:0x3 data:string
|
||||
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
|
||||
@121396 = .bss:0x00000008; // type:object size:0xC scope:local
|
||||
l_HIO = .bss:0x00000018; // type:object size:0x98 scope:global
|
||||
|
||||
@@ -201,7 +201,9 @@ m__24daNpc_Pachi_Taro_Param_c = .rodata:0x00000000; // type:object size:0x8C sco
|
||||
@LOCAL@_cut1stHit_KakasiBody_Init__18daNpc_Pachi_Taro_cFRCi@sHitMsg = .rodata:0x00000168; // type:object size:0xC scope:local
|
||||
cNullVec__6Z2Calc = .rodata:0x00000174; // type:object size:0xC scope:global
|
||||
@46916 = .rodata:0x00000180; // type:object size:0x4 scope:local
|
||||
lbl_336_rodata_184 = .rodata:0x00000184; // type:object size:0x18
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000188; // type:object size:0x8 scope:local align:8 data:float
|
||||
@LOCAL@signaling_NaN_2__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000190; // type:object size:0x8 scope:local align:8 data:float
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x00000198; // type:object size:0x4 scope:local align:4 data:float
|
||||
@121602 = .data:0x00000000; // type:object size:0x1B scope:local
|
||||
@121603 = .data:0x0000001C; // type:object size:0x1C scope:local data:string
|
||||
@121604 = .data:0x00000038; // type:object size:0x17 scope:local data:string
|
||||
@@ -321,7 +323,20 @@ lbl_336_data_1598 = .data:0x00001598; // type:object size:0x24
|
||||
@123586 = .data:0x0000182C; // type:object size:0xD scope:local data:string
|
||||
@STRING@__ct__18daNpc_Pachi_Taro_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc = .data:0x00001848; // type:object size:0x2F scope:local
|
||||
@STRING@__ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc = .data:0x00001878; // type:object size:0x25 scope:local
|
||||
lbl_336_data_189D = .data:0x0000189D; // type:object size:0xF3
|
||||
@STRING@__dt__8daNpcT_cFv = .data:0x000018A0; // type:object size:0x23 scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@2 = .data:0x000018C4; // type:object size:0x5 scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@1 = .data:0x000018CC; // type:object size:0xF scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@0 = .data:0x000018DC; // type:object size:0x14 scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs = .data:0x000018F0; // type:object size:0xF scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs@2 = .data:0x00001900; // type:object size:0x5 scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs@1 = .data:0x00001908; // type:object size:0x14 scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs@0 = .data:0x0000191C; // type:object size:0x14 scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs = .data:0x00001930; // type:object size:0x14 scope:local data:string
|
||||
@STRING@calc__11J3DTexNoAnmCFPUs@2 = .data:0x00001944; // type:object size:0x5 scope:local data:string
|
||||
@STRING@calc__11J3DTexNoAnmCFPUs@1 = .data:0x0000194C; // type:object size:0x11 scope:local data:string
|
||||
@STRING@calc__11J3DTexNoAnmCFPUs@0 = .data:0x00001960; // type:object size:0x16 scope:local data:string
|
||||
@STRING@calc__11J3DTexNoAnmCFPUs = .data:0x00001978; // type:object size:0x11 scope:local data:string
|
||||
@STRING@showAssert__12JUTAssertionFUlPCciPCc = .data:0x0000198C; // type:object size:0x3 scope:local data:string
|
||||
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
|
||||
@121647 = .bss:0x00000008; // type:object size:0xC scope:local
|
||||
l_HIO = .bss:0x00000014; // type:object size:0x94 scope:global
|
||||
|
||||
@@ -116,7 +116,9 @@ _dtors = .dtors:0x00000000; // type:label scope:global
|
||||
@120694 = .rodata:0x00000060; // type:object size:0x4 scope:local
|
||||
cNullVec__6Z2Calc = .rodata:0x00000064; // type:object size:0xC scope:global
|
||||
@46916 = .rodata:0x00000070; // type:object size:0x4 scope:local
|
||||
lbl_337_rodata_74 = .rodata:0x00000074; // type:object size:0x18
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000078; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN_2__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000080; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x00000088; // type:object size:0x4 align:4 data:float
|
||||
ActionTable__13daNpcPasser_c = .data:0x00000000; // type:object size:0x78 scope:global
|
||||
@120137 = .data:0x00000078; // type:object size:0x3A scope:local
|
||||
@120138 = .data:0x000000B4; // type:object size:0x3C scope:local
|
||||
@@ -187,4 +189,4 @@ lbl_337_data_780 = .data:0x00000780; // type:object size:0x24
|
||||
@121030 = .data:0x00000938; // type:object size:0x10 scope:local data:string
|
||||
@121031 = .data:0x0000095C; // type:object size:0x9 scope:local data:string
|
||||
@121032 = .data:0x0000097C; // type:object size:0x9 scope:local data:string
|
||||
lbl_337_data_985 = .data:0x00000985; // type:object size:0xF
|
||||
@STRING@showAssert__12JUTAssertionFUlPCciPCc = .data:0x00000990; // type:object size:0x3 data:string
|
||||
|
||||
@@ -145,7 +145,9 @@ m__18daNpc_Post_Param_c = .rodata:0x00000000; // type:object size:0x94 scope:glo
|
||||
@122364 = .rodata:0x00000164; // type:object size:0x4 scope:local
|
||||
cNullVec__6Z2Calc = .rodata:0x00000168; // type:object size:0xC scope:global
|
||||
@46916 = .rodata:0x00000174; // type:object size:0x4 scope:local
|
||||
lbl_339_rodata_178 = .rodata:0x00000178; // type:object size:0x14
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000178; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN_2__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000180; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x00000188; // type:object size:0x4 align:4 data:float
|
||||
@121142 = .data:0x00000000; // type:object size:0x1B scope:local
|
||||
@121143 = .data:0x0000001C; // type:object size:0x15 scope:local
|
||||
@121144 = .data:0x00000034; // type:object size:0x15 scope:local
|
||||
@@ -247,9 +249,22 @@ lbl_339_data_AE8 = .data:0x00000AE8; // type:object size:0x24
|
||||
@122487 = .data:0x00000D7C; // type:object size:0xD scope:local data:string
|
||||
@STRING@__ct__12daNpc_Post_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc = .data:0x00000D98; // type:object size:0x29 scope:local
|
||||
@STRING@__ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc = .data:0x00000DC4; // type:object size:0x25 scope:local
|
||||
lbl_339_data_DE9 = .data:0x00000DE9; // type:object size:0xF3
|
||||
@STRING@__dt__8daNpcT_cFv = .data:0x00000DEC; // type:object size:0x23 scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@2 = .data:0x00000E10; // type:object size:0x5 scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@1 = .data:0x00000E18; // type:object size:0xF scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@0 = .data:0x00000E28; // type:object size:0x14 scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs = .data:0x00000E3C; // type:object size:0xF scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs@2 = .data:0x00000E4C; // type:object size:0x5 scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs@1 = .data:0x00000E54; // type:object size:0x14 scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs@0 = .data:0x00000E68; // type:object size:0x14 scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs = .data:0x00000E7C; // type:object size:0x14 scope:local data:string
|
||||
@STRING@calc__11J3DTexNoAnmCFPUs@2 = .data:0x00000E90; // type:object size:0x5 scope:local data:string
|
||||
@STRING@calc__11J3DTexNoAnmCFPUs@1 = .data:0x00000E98; // type:object size:0x11 scope:local data:string
|
||||
@STRING@calc__11J3DTexNoAnmCFPUs@0 = .data:0x00000EAC; // type:object size:0x16 scope:local data:string
|
||||
@STRING@calc__11J3DTexNoAnmCFPUs = .data:0x00000EC4; // type:object size:0x11 scope:local data:string
|
||||
@STRING@showAssert__12JUTAssertionFUlPCciPCc = .data:0x00000ED8; // type:object size:0x3 scope:local data:string
|
||||
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
|
||||
@121184 = .bss:0x00000008; // type:object size:0xC scope:local
|
||||
l_HIO = .bss:0x00000014; // type:object size:0x9C scope:global
|
||||
lbl_339_bss_B0 = .bss:0x000000B0; // type:object size:0x1 data:byte
|
||||
@GUARD@setAttnPos__12daNpc_Post_cFv@prtclScl = .bss:0x000000B0; // type:object size:0x1 data:byte
|
||||
@LOCAL@setAttnPos__12daNpc_Post_cFv@prtclScl = .bss:0x000000B4; // type:object size:0xC scope:local
|
||||
|
||||
@@ -160,7 +160,9 @@ m__19daNpcRafrel_Param_c = .rodata:0x00000000; // type:object size:0x74 scope:gl
|
||||
@121605 = .rodata:0x000002B4; // type:object size:0x4 scope:local
|
||||
cNullVec__6Z2Calc = .rodata:0x000002B8; // type:object size:0xC scope:global
|
||||
@46916 = .rodata:0x000002C4; // type:object size:0x4 scope:local
|
||||
lbl_343_rodata_2C8 = .rodata:0x000002C8; // type:object size:0x14
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x000002C8; // type:object size:0x8
|
||||
@LOCAL@signaling_NaN_2__Q23std17numeric_limits<d>Fv@x = .rodata:0x000002D0; // type:object size:0x8
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x000002D8; // type:object size:0x4
|
||||
l_bckGetParamList = .data:0x00000000; // type:object size:0x15C scope:global
|
||||
l_btpGetParamList = .data:0x00000160; // type:object size:0x30 scope:global
|
||||
l_btkGetParamList = .data:0x00000190; // type:object size:0x3C scope:global data:4byte
|
||||
@@ -298,7 +300,19 @@ lbl_343_data_627 = .data:0x00000627; // type:object size:0x2D
|
||||
@STRING@setExpressionAnm__13daNpcRafrel_cFib@0 = .data:0x00000B5C; // type:object size:0x13 scope:local data:string
|
||||
@STRING@setExpressionAnm__13daNpcRafrel_cFib = .data:0x00000B70; // type:object size:0x31 scope:local
|
||||
@STRING@main__13daNpcRafrel_cFv = .data:0x00000BA8; // type:object size:0x10 scope:local data:string
|
||||
lbl_343_data_BB8 = .data:0x00000BB8; // type:object size:0xCC
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@2 = .data:0x00000BB8; // type:object size:0x5 scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@1 = .data:0x00000BC0; // type:object size:0xF scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@0 = .data:0x00000BD0; // type:object size:0x14 scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs = .data:0x00000BE4; // type:object size:0xF scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs@2 = .data:0x00000BF4; // type:object size:0x5 scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs@1 = .data:0x00000BFC; // type:object size:0x14 scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs@0 = .data:0x00000C10; // type:object size:0x14 scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs = .data:0x00000C24; // type:object size:0x14 scope:local data:string
|
||||
@STRING@calc__11J3DTexNoAnmCFPUs@2 = .data:0x00000C38; // type:object size:0x5 scope:local data:string
|
||||
@STRING@calc__11J3DTexNoAnmCFPUs@1 = .data:0x00000C40; // type:object size:0x11 scope:local data:string
|
||||
@STRING@calc__11J3DTexNoAnmCFPUs@0 = .data:0x00000C54; // type:object size:0x16 scope:local data:string
|
||||
@STRING@calc__11J3DTexNoAnmCFPUs = .data:0x00000C6C; // type:object size:0x11 scope:local data:string
|
||||
@STRING@showAssert__12JUTAssertionFUlPCciPCc = .data:0x00000C80; // type:object size:0x3 scope:local data:string
|
||||
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
|
||||
@119738 = .bss:0x00000008; // type:object size:0xC scope:local
|
||||
l_HIO = .bss:0x00000014; // type:object size:0x7C scope:global
|
||||
|
||||
@@ -154,7 +154,9 @@ M_lin20__Q29daObjBm_c5Bgc_c = .rodata:0x00000170; // type:object size:0x170 scop
|
||||
@LOCAL@PPCallBack__9daObjBm_cFP10fopAc_ac_cP10fopAc_ac_csQ29dBgW_Base13PushPullLabel@pp_field = .rodata:0x0000033C; // type:object size:0x4 scope:local
|
||||
cNullVec__6Z2Calc = .rodata:0x00000340; // type:object size:0xC scope:global
|
||||
@46916 = .rodata:0x0000034C; // type:object size:0x4 scope:local
|
||||
lbl_394_rodata_350 = .rodata:0x00000350; // type:object size:0x14
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000350; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN_2__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000358; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x00000360; // type:object size:0x4 align:4 data:float
|
||||
@118420 = .data:0x00000000; // type:object size:0x7 scope:local data:string
|
||||
l_arcName = .data:0x00000008; // type:object size:0x4 scope:global data:4byte
|
||||
@118421 = .data:0x0000000C; // type:object size:0x6 scope:local data:string
|
||||
@@ -250,13 +252,29 @@ lbl_394_data_7C1 = .data:0x000007C1; // type:object size:0x3F
|
||||
@120144 = .data:0x000008C0; // type:object size:0xC scope:local data:string
|
||||
@120145 = .data:0x000008CC; // type:object size:0x14 scope:local
|
||||
@120146 = .data:0x000008E8; // type:object size:0xE scope:local data:string
|
||||
lbl_394_data_8F6 = .data:0x000008F6; // type:object size:0xFA
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@2 = .data:0x00000900; // type:object size:0x5 scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@1 = .data:0x00000908; // type:object size:0xF scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@0 = .data:0x00000918; // type:object size:0x14 scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs = .data:0x0000092C; // type:object size:0xF scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs@2 = .data:0x0000093C; // type:object size:0x5 scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs@1 = .data:0x00000944; // type:object size:0x14 scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs@0 = .data:0x00000958; // type:object size:0x14 scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs = .data:0x0000096C; // type:object size:0x14 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@6 = .data:0x00000980; // type:object size:0x5 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@5 = .data:0x00000988; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@4 = .data:0x00000994; // type:object size:0x16 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@3 = .data:0x000009AC; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@2 = .data:0x000009B8; // type:object size:0x5 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@1 = .data:0x000009C0; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@0 = .data:0x000009CC; // type:object size:0x14 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi = .data:0x000009E0; // type:object size:0x9 scope:local data:string
|
||||
@STRING@showAssert__12JUTAssertionFUlPCciPCc = .data:0x000009EC; // type:object size:0x3 scope:local data:string
|
||||
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
|
||||
...bss.0 = .bss:0x00000008; // type:label scope:local
|
||||
l_joint_table = .bss:0x00000008; // type:object size:0x14 scope:global data:4byte
|
||||
@118435 = .bss:0x0000001C; // type:object size:0xC scope:local
|
||||
l_HIO = .bss:0x00000028; // type:object size:0x40 scope:global data:2byte
|
||||
lbl_394_bss_68 = .bss:0x00000068; // type:object size:0x8 data:byte
|
||||
@GUARD@mode_walk__9daObjBm_cFv@dir_vec = .bss:0x00000068; // type:object size:0x1 scope:local data:byte
|
||||
@LOCAL@mode_walk__9daObjBm_cFv@dir_vec = .bss:0x00000070; // type:object size:0x30 scope:local
|
||||
@119374 = .bss:0x000000A0; // type:object size:0xC scope:local
|
||||
M_gnd_work__Q29daObjBm_c5Bgc_c = .bss:0x000000AC; // type:object size:0x78C scope:global
|
||||
@@ -264,5 +282,6 @@ M_gnd_work__Q29daObjBm_c5Bgc_c = .bss:0x000000AC; // type:object size:0x78C scop
|
||||
M_wrt_work__Q29daObjBm_c5Bgc_c = .bss:0x00000844; // type:object size:0x54 scope:global
|
||||
@119377 = .bss:0x00000898; // type:object size:0xC scope:local
|
||||
M_wall_work__Q29daObjBm_c5Bgc_c = .bss:0x000008A8; // type:object size:0xA10 scope:global
|
||||
@GUARD@chk_wall_touch__Q29daObjBm_c5Bgc_cFPC10fopAc_ac_cPCQ29daObjBm_c8BgcSrc_cs@touch_work = .bss:0x000012B8; // type:object size:0x1 scope:local data:byte
|
||||
@119489 = .bss:0x000012BC; // type:object size:0xC scope:local
|
||||
@LOCAL@chk_wall_touch__Q29daObjBm_c5Bgc_cFPC10fopAc_ac_cPCQ29daObjBm_c8BgcSrc_cs@touch_work = .bss:0x000012C8; // type:object size:0x70 scope:local
|
||||
|
||||
@@ -57,7 +57,9 @@ _dtors = .dtors:0x00000000; // type:label scope:global
|
||||
@117182 = .rodata:0x00000084; // type:object size:0x4 scope:local
|
||||
cNullVec__6Z2Calc = .rodata:0x00000088; // type:object size:0xC scope:global
|
||||
@46916 = .rodata:0x00000094; // type:object size:0x4 scope:local
|
||||
lbl_428_rodata_98 = .rodata:0x00000098; // type:object size:0x14
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000098; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN_2__Q23std17numeric_limits<d>Fv@x = .rodata:0x000000A0; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x000000A8; // type:object size:0x4 align:4 data:float
|
||||
@116816 = .data:0x00000000; // type:object size:0x7 scope:local data:string
|
||||
l_arcName = .data:0x00000008; // type:object size:0x4 scope:global data:4byte
|
||||
l_daObjDust_Method = .data:0x00000010; // type:object size:0x20 scope:global
|
||||
|
||||
@@ -62,7 +62,9 @@ _dtors = .dtors:0x00000000; // type:label scope:global
|
||||
@117180 = .rodata:0x00000054; // type:object size:0x4 scope:local
|
||||
cNullVec__6Z2Calc = .rodata:0x00000058; // type:object size:0xC scope:local
|
||||
@46916 = .rodata:0x00000064; // type:object size:0x4 scope:local
|
||||
lbl_430_rodata_68 = .rodata:0x00000068; // type:object size:0x14
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000068; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN_2__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000070; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x00000078; // type:object size:0x4 align:4 data:float
|
||||
@116786 = .data:0x00000000; // type:object size:0xA scope:local data:string
|
||||
l_arcName = .data:0x0000000C; // type:object size:0x4 scope:local data:4byte
|
||||
l_cull_box = .data:0x00000010; // type:object size:0x18 scope:local align:4 data:float
|
||||
@@ -95,7 +97,15 @@ __RTTI__14daObjFallObj_c = .data:0x000001B8; // type:object size:0x8 scope:globa
|
||||
@117272 = .data:0x00000230; // type:object size:0xE scope:local data:string
|
||||
@117273 = .data:0x00000240; // type:object size:0xC scope:local
|
||||
@117274 = .data:0x00000258; // type:object size:0x11 scope:local data:string
|
||||
lbl_430_data_269 = .data:0x00000269; // type:object size:0x7F
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@6 = .data:0x00000278; // type:object size:0x5 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@5 = .data:0x00000280; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@4 = .data:0x0000028C; // type:object size:0x16 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@3 = .data:0x000002A4; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@2 = .data:0x000002B0; // type:object size:0x5 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@1 = .data:0x000002B8; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@0 = .data:0x000002C4; // type:object size:0x14 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi = .data:0x000002D8; // type:object size:0x9 scope:local data:string
|
||||
@STRING@showAssert__12JUTAssertionFUlPCciPCc = .data:0x000002E4; // type:object size:0x3 scope:local data:string
|
||||
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
|
||||
@116795 = .bss:0x00000008; // type:object size:0xC scope:local
|
||||
l_HIO = .bss:0x00000018; // type:object size:0x10 scope:local data:byte
|
||||
|
||||
@@ -69,7 +69,9 @@ l_ccDObjData = .rodata:0x00000030; // type:object size:0x30 scope:global data:4b
|
||||
@LOCAL@setPrtcls__15daObj_ItaMato_cFv@id = .rodata:0x000000B8; // type:object size:0x6 scope:local
|
||||
cNullVec__6Z2Calc = .rodata:0x000000C0; // type:object size:0xC scope:global
|
||||
@46916 = .rodata:0x000000CC; // type:object size:0x4 scope:local
|
||||
lbl_474_rodata_D0 = .rodata:0x000000D0; // type:object size:0x14
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x000000D0; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN_2__Q23std17numeric_limits<d>Fv@x = .rodata:0x000000D8; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x000000E0; // type:object size:0x4 align:4 data:float
|
||||
@119776 = .data:0x00000000; // type:object size:0x1B scope:local
|
||||
@119777 = .data:0x0000001C; // type:object size:0x1B scope:local
|
||||
@119778 = .data:0x00000038; // type:object size:0x11 scope:local
|
||||
@@ -126,7 +128,11 @@ lbl_474_data_2F0 = .data:0x000002F0; // type:object size:0x24
|
||||
@120313 = .data:0x00000530; // type:object size:0xE scope:local data:string
|
||||
@120314 = .data:0x00000540; // type:object size:0xC scope:local
|
||||
@120315 = .data:0x00000558; // type:object size:0x11 scope:local data:string
|
||||
lbl_474_data_569 = .data:0x00000569; // type:object size:0x57
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs@2 = .data:0x00000578; // type:object size:0x5 scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs@1 = .data:0x00000580; // type:object size:0x14 scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs@0 = .data:0x00000594; // type:object size:0x14 scope:local data:string
|
||||
@STRING@getMaterialNodePointer__16J3DMaterialTableCFUs = .data:0x000005A8; // type:object size:0x14 scope:local data:string
|
||||
@STRING@showAssert__12JUTAssertionFUlPCciPCc = .data:0x000005BC; // type:object size:0x3 scope:local data:string
|
||||
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
|
||||
...bss.0 = .bss:0x00000008; // type:label scope:local
|
||||
l_ccDSph = .bss:0x00000008; // type:object size:0x40 scope:global data:4byte
|
||||
|
||||
@@ -14,4 +14,4 @@ d/actor/d_a_obj_katatsumuri.cpp:
|
||||
.ctors start:0x00000000 end:0x00000004
|
||||
.rodata start:0x00000000 end:0x000000FC
|
||||
.data start:0x00000000 end:0x000004DC
|
||||
.bss start:0x00000008 end:0x00000018
|
||||
.bss start:0x00000000 end:0x00000018
|
||||
|
||||
@@ -80,7 +80,9 @@ l_musiya_num = .rodata:0x000000C8; // type:object size:0x4 scope:global data:2by
|
||||
@119184 = .rodata:0x000000D4; // type:object size:0x4 scope:local
|
||||
cNullVec__6Z2Calc = .rodata:0x000000D8; // type:object size:0xC scope:global
|
||||
@46916 = .rodata:0x000000E4; // type:object size:0x4 scope:local
|
||||
lbl_482_rodata_E8 = .rodata:0x000000E8; // type:object size:0x14
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x000000E8; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN_2__Q23std17numeric_limits<d>Fv@x = .rodata:0x000000F0; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x000000F8; // type:object size:0x4 align:8 data:float
|
||||
@118433 = .data:0x00000000; // type:object size:0x13 scope:local
|
||||
@118434 = .data:0x00000014; // type:object size:0x15 scope:local
|
||||
@118437 = .data:0x0000002C; // type:object size:0x15 scope:local
|
||||
@@ -136,6 +138,10 @@ lbl_482_data_178 = .data:0x00000178; // type:object size:0x2C
|
||||
@STRING@CreateHeap__10daObjKAT_cFv@1 = .data:0x00000470; // type:object size:0xF scope:local data:string
|
||||
@STRING@CreateHeap__10daObjKAT_cFv@0 = .data:0x00000480; // type:object size:0x18 scope:local data:string
|
||||
@STRING@CreateHeap__10daObjKAT_cFv = .data:0x00000498; // type:object size:0x4 scope:local data:string
|
||||
lbl_482_data_49C = .data:0x0000049C; // type:object size:0x40
|
||||
lbl_482_bss_0 = .bss:0x00000000; // type:object size:0x1 data:byte
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@2 = .data:0x0000049C; // type:object size:0x5 scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@1 = .data:0x000004A4; // type:object size:0xF scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@0 = .data:0x000004B4; // type:object size:0x14 scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs = .data:0x000004C8; // type:object size:0xF scope:local data:string
|
||||
@STRING@showAssert__12JUTAssertionFUlPCciPCc = .data:0x000004D8; // type:object size:0x3 scope:local data:string
|
||||
hio_set = .bss:0x00000000; // type:object size:0x1 data:byte
|
||||
l_HIO = .bss:0x00000008; // type:object size:0x10 scope:global align:4 data:float
|
||||
|
||||
@@ -79,7 +79,15 @@ __RTTI__30request_of_phase_process_class = .data:0x000002C0; // type:object size
|
||||
@114652 = .data:0x000002C8; // type:object size:0xE scope:local data:string
|
||||
@114653 = .data:0x000002D8; // type:object size:0xC scope:local
|
||||
@114654 = .data:0x000002F0; // type:object size:0x11 scope:local data:string
|
||||
lbl_497_data_301 = .data:0x00000301; // type:object size:0x7F
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@6 = .data:0x00000310; // type:object size:0x5 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@5 = .data:0x00000318; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@4 = .data:0x00000324; // type:object size:0x16 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@3 = .data:0x0000033C; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@2 = .data:0x00000348; // type:object size:0x5 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@1 = .data:0x00000350; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@0 = .data:0x0000035C; // type:object size:0x14 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi = .data:0x00000370; // type:object size:0x9 scope:local data:string
|
||||
@STRING@showAssert__12JUTAssertionFUlPCciPCc = .data:0x0000037C; // type:object size:0x3 scope:local data:string
|
||||
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
|
||||
@114291 = .bss:0x00000008; // type:object size:0xC scope:local
|
||||
l_HIO = .bss:0x00000014; // type:object size:0xC scope:global data:2byte
|
||||
|
||||
@@ -53,7 +53,9 @@ mCcDObjInfo__13daLv6SwGate_c = .rodata:0x00000018; // type:object size:0x30 scop
|
||||
@114481 = .rodata:0x000000A0; // type:object size:0x4 scope:local
|
||||
cNullVec__6Z2Calc = .rodata:0x000000A4; // type:object size:0xC scope:global
|
||||
@46916 = .rodata:0x000000B0; // type:object size:0x4 scope:local
|
||||
lbl_540_rodata_B4 = .rodata:0x000000B4; // type:object size:0x18
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x000000B8; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN_2__Q23std17numeric_limits<d>Fv@x = .rodata:0x000000C0; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x000000C8; // type:object size:0x4 align:4 data:float
|
||||
@114216 = .data:0x00000000; // type:object size:0xD scope:local
|
||||
@114217 = .data:0x00000010; // type:object size:0x5 scope:local
|
||||
@114220 = .data:0x00000018; // type:object size:0x10 scope:local
|
||||
@@ -92,7 +94,15 @@ __RTTI__13daLv6SwGate_c = .data:0x00000208; // type:object size:0x8 scope:global
|
||||
@114627 = .data:0x00000318; // type:object size:0xE scope:local data:string
|
||||
@114628 = .data:0x00000328; // type:object size:0xC scope:local
|
||||
@114629 = .data:0x00000340; // type:object size:0x11 scope:local data:string
|
||||
lbl_540_data_351 = .data:0x00000351; // type:object size:0x7F
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@6 = .data:0x00000360; // type:object size:0x5 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@5 = .data:0x00000368; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@4 = .data:0x00000374; // type:object size:0x16 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@3 = .data:0x0000038C; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@2 = .data:0x00000398; // type:object size:0x5 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@1 = .data:0x000003A0; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@0 = .data:0x000003AC; // type:object size:0x14 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi = .data:0x000003C0; // type:object size:0x9 scope:local data:string
|
||||
@STRING@showAssert__12JUTAssertionFUlPCciPCc = .data:0x000003CC; // type:object size:0x3 scope:local data:string
|
||||
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
|
||||
...bss.0 = .bss:0x00000008; // type:label scope:local
|
||||
@114194 = .bss:0x00000008; // type:object size:0xC scope:local data:4byte
|
||||
|
||||
@@ -97,7 +97,15 @@ __RTTI__10daTenbin_c = .data:0x00000240; // type:object size:0x8 scope:global
|
||||
@117454 = .data:0x000002B8; // type:object size:0xE scope:local data:string
|
||||
@117455 = .data:0x000002C8; // type:object size:0xC scope:local
|
||||
@117456 = .data:0x000002E0; // type:object size:0x11 scope:local data:string
|
||||
lbl_543_data_2F1 = .data:0x000002F1; // type:object size:0x7F
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@6 = .data:0x00000300; // type:object size:0x5 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@5 = .data:0x00000308; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@4 = .data:0x00000314; // type:object size:0x16 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@3 = .data:0x0000032C; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@2 = .data:0x00000338; // type:object size:0x5 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@1 = .data:0x00000340; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@0 = .data:0x0000034C; // type:object size:0x14 scope:local data:float
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi = .data:0x00000360; // type:object size:0x9 scope:local data:string
|
||||
@STRING@showAssert__12JUTAssertionFUlPCciPCc = .data:0x0000036C; // type:object size:0x3 scope:local data:string
|
||||
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
|
||||
@117072 = .bss:0x00000008; // type:object size:0xC scope:local
|
||||
l_HIO = .bss:0x00000018; // type:object size:0x48 scope:global align:4 data:float
|
||||
|
||||
@@ -34,7 +34,9 @@ l_cull_box = .rodata:0x00000008; // type:object size:0x18 scope:global align:4 d
|
||||
@114401 = .rodata:0x0000003C; // type:object size:0x4 scope:local
|
||||
cNullVec__6Z2Calc = .rodata:0x00000040; // type:object size:0xC scope:global
|
||||
@46916 = .rodata:0x0000004C; // type:object size:0x4 scope:local
|
||||
lbl_536_rodata_50 = .rodata:0x00000050; // type:object size:0x14
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000050; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN_2__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000058; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x00000060; // type:object size:0x4 align:4 data:float
|
||||
@114241 = .data:0x00000000; // type:object size:0x9 scope:local data:string
|
||||
l_arcName = .data:0x0000000C; // type:object size:0x4 scope:global data:4byte
|
||||
l_cc_cyl_src = .data:0x00000010; // type:object size:0x44 scope:global
|
||||
@@ -56,4 +58,4 @@ __RTTI__15daObjLv6EGate_c = .data:0x00000190; // type:object size:0x8 scope:glob
|
||||
__RTTI__30request_of_phase_process_class = .data:0x000001F8; // type:object size:0x8 scope:global
|
||||
@114518 = .data:0x0000020C; // type:object size:0x9 scope:local data:string
|
||||
@114519 = .data:0x0000022C; // type:object size:0x9 scope:local data:string
|
||||
lbl_536_data_235 = .data:0x00000235; // type:object size:0xF
|
||||
@STRING@showAssert__12JUTAssertionFUlPCciPCc = .data:0x00000240; // type:object size:0x3 scope:local data:string
|
||||
|
||||
@@ -48,7 +48,9 @@ _dtors = .dtors:0x00000000; // type:label scope:global
|
||||
@LOCAL@PPCallBack__FP10fopAc_ac_cP10fopAc_ac_csQ29dBgW_Base13PushPullLabel@pp_field = .rodata:0x0000001C; // type:object size:0x4 scope:local
|
||||
cNullVec__6Z2Calc = .rodata:0x00000020; // type:object size:0xC scope:global
|
||||
@46916 = .rodata:0x0000002C; // type:object size:0x4 scope:local
|
||||
lbl_541_rodata_30 = .rodata:0x00000030; // type:object size:0x14
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000030; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN_2__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000038; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x00000040; // type:object size:0x4 align:4 data:float
|
||||
@116783 = .data:0x00000000; // type:object size:0xA scope:local data:string
|
||||
l_arcName = .data:0x0000000C; // type:object size:0x4 scope:global data:4byte
|
||||
@116805 = .data:0x00000010; // type:object size:0x13 scope:local
|
||||
@@ -79,7 +81,15 @@ __RTTI__16daObjLv6SwTurn_c = .data:0x000001E0; // type:object size:0x8 scope:glo
|
||||
@117203 = .data:0x00000258; // type:object size:0xE scope:local data:string
|
||||
@117204 = .data:0x00000268; // type:object size:0xC scope:local
|
||||
@117205 = .data:0x00000280; // type:object size:0x11 scope:local data:string
|
||||
lbl_541_data_291 = .data:0x00000291; // type:object size:0x7F
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@6 = .data:0x000002A0; // type:object size:0x5 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@5 = .data:0x000002A8; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@4 = .data:0x000002B4; // type:object size:0x16 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@3 = .data:0x000002CC; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@2 = .data:0x000002D8; // type:object size:0x5 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@1 = .data:0x000002E0; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@0 = .data:0x000002EC; // type:object size:0x14 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi = .data:0x00000300; // type:object size:0x9 scope:local data:string
|
||||
@STRING@showAssert__12JUTAssertionFUlPCciPCc = .data:0x0000030C; // type:object size:0x3 scope:local data:string
|
||||
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
|
||||
@116792 = .bss:0x00000008; // type:object size:0xC scope:local
|
||||
l_HIO = .bss:0x00000014; // type:object size:0xC scope:global data:byte
|
||||
|
||||
@@ -54,4 +54,16 @@ g_profile_Obj_Mirror6Pole = .data:0x000000B8; // type:object size:0x30 scope:glo
|
||||
@STRING@setAction__18daObjMirror6Pole_cFQ218daObjMirror6Pole_c6Mode_e@1 = .data:0x000001B8; // type:object size:0x19 scope:local data:string
|
||||
@STRING@setAction__18daObjMirror6Pole_cFQ218daObjMirror6Pole_c6Mode_e@0 = .data:0x000001D4; // type:object size:0x16 scope:local data:string
|
||||
@STRING@setAction__18daObjMirror6Pole_cFQ218daObjMirror6Pole_c6Mode_e = .data:0x000001EC; // type:object size:0x19 scope:local data:string
|
||||
lbl_561_data_205 = .data:0x00000205; // type:object size:0xAF
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@2 = .data:0x00000208; // type:object size:0x5 scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@1 = .data:0x00000210; // type:object size:0xF scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@0 = .data:0x00000220; // type:object size:0x14 scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs = .data:0x00000234; // type:object size:0xF scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@6 = .data:0x00000244; // type:object size:0x5 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@5 = .data:0x0000024C; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@4 = .data:0x00000258; // type:object size:0x16 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@3 = .data:0x00000270; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@2 = .data:0x0000027C; // type:object size:0x5 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@1 = .data:0x00000284; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@0 = .data:0x00000290; // type:object size:0x14 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi = .data:0x000002A4; // type:object size:0x9 scope:local data:string
|
||||
@STRING@showAssert__12JUTAssertionFUlPCciPCc = .data:0x000002B0; // type:object size:0x3 scope:local data:string
|
||||
|
||||
@@ -32,7 +32,9 @@ l_cull_box = .rodata:0x00000008; // type:object size:0x18 scope:global
|
||||
@114392 = .rodata:0x00000040; // type:object size:0x4 scope:local
|
||||
cNullVec__6Z2Calc = .rodata:0x00000044; // type:object size:0xC scope:global
|
||||
@46916 = .rodata:0x00000050; // type:object size:0x4 scope:local
|
||||
lbl_580_rodata_54 = .rodata:0x00000054; // type:object size:0x18
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000058; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN_2__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000060; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x00000068; // type:object size:0x4 align:4 data:float
|
||||
@114233 = .data:0x00000000; // type:object size:0x8 scope:local data:string
|
||||
l_arcName = .data:0x00000008; // type:object size:0x4 scope:global data:4byte
|
||||
@114315 = .data:0x0000000C; // type:object size:0x13 scope:local data:string
|
||||
@@ -49,4 +51,12 @@ __RTTI__13daObjPDwall_c = .data:0x000000E0; // type:object size:0x8 scope:global
|
||||
@114501 = .data:0x00000110; // type:object size:0xB scope:local data:string
|
||||
@114502 = .data:0x00000128; // type:object size:0x1F scope:local data:string
|
||||
__RTTI__30request_of_phase_process_class = .data:0x00000148; // type:object size:0x8 scope:global
|
||||
lbl_580_data_150 = .data:0x00000150; // type:object size:0x70
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@6 = .data:0x00000150; // type:object size:0x5 data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@5 = .data:0x00000158; // type:object size:0x9 data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@4 = .data:0x00000164; // type:object size:0x16 data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@3 = .data:0x0000017C; // type:object size:0x9 data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@2 = .data:0x00000188; // type:object size:0x5 data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@1 = .data:0x00000190; // type:object size:0x9 data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@0 = .data:0x0000019C; // type:object size:0x14 data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi = .data:0x000001B0; // type:object size:0x9 data:string
|
||||
@STRING@showAssert__12JUTAssertionFUlPCciPCc = .data:0x000001BC; // type:object size:0x3 data:string
|
||||
|
||||
@@ -73,7 +73,9 @@ s_CcDCps__14daObjPicture_c = .rodata:0x000000A8; // type:object size:0x4C scope:
|
||||
s_CcDCyl_pic_at__14daObjPicture_c = .rodata:0x000000F4; // type:object size:0x44 scope:global
|
||||
cNullVec__6Z2Calc = .rodata:0x00000138; // type:object size:0xC scope:global
|
||||
@46916 = .rodata:0x00000144; // type:object size:0x4 scope:local
|
||||
lbl_581_rodata_148 = .rodata:0x00000148; // type:object size:0x14
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000148; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN_2__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000150; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x00000158; // type:object size:0x4 align:4 data:float
|
||||
@114141 = .data:0x00000000; // type:object size:0xA scope:local data:string
|
||||
l_arcName = .data:0x0000000C; // type:object size:0x4 scope:global data:4byte
|
||||
l_LINE_OFFSET_POS = .data:0x00000010; // type:object size:0x18 scope:global
|
||||
@@ -96,4 +98,12 @@ __vt__18mDoExt_3DlineMat_c = .data:0x00000158; // type:object size:0x14 scope:gl
|
||||
__RTTI__30request_of_phase_process_class = .data:0x000001C0; // type:object size:0x8 scope:global
|
||||
@114732 = .data:0x000001D4; // type:object size:0x9 scope:local data:string
|
||||
@114733 = .data:0x000001F4; // type:object size:0x9 scope:local data:string
|
||||
lbl_581_data_1FD = .data:0x000001FD; // type:object size:0x7B
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@6 = .data:0x00000208; // type:object size:0x5 data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@5 = .data:0x00000210; // type:object size:0x9 data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@4 = .data:0x0000021C; // type:object size:0x16 data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@3 = .data:0x00000234; // type:object size:0x9 data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@2 = .data:0x00000240; // type:object size:0x5 data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@1 = .data:0x00000248; // type:object size:0x9 data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@0 = .data:0x00000254; // type:object size:0x14 data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi = .data:0x00000268; // type:object size:0x9 data:string
|
||||
@STRING@showAssert__12JUTAssertionFUlPCciPCc = .data:0x00000274; // type:object size:0x3 data:string
|
||||
|
||||
@@ -86,7 +86,9 @@ itemNo = .rodata:0x0000002C; // type:object size:0x4 scope:global
|
||||
@117287 = .rodata:0x000000C0; // type:object size:0x4 scope:local align:4 data:float
|
||||
cNullVec__6Z2Calc = .rodata:0x000000C4; // type:object size:0xC scope:global
|
||||
@46916 = .rodata:0x000000D0; // type:object size:0x4 scope:local
|
||||
lbl_585_rodata_D4 = .rodata:0x000000D4; // type:object size:0x18
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x000000D8; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_2_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x000000E0; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x000000E8; // type:object size:0x4 align:4 data:float
|
||||
@116931 = .data:0x00000000; // type:object size:0xB scope:local
|
||||
@116934 = .data:0x0000000C; // type:object size:0x2 scope:local data:string
|
||||
@116935 = .data:0x00000010; // type:object size:0x5 scope:local
|
||||
|
||||
@@ -69,7 +69,9 @@ s_demoExeProc__17daObjSCannonTen_c = .rodata:0x00000048; // type:object size:0x9
|
||||
@LOCAL@changeScene__17daObjSCannonTen_cFv@a_exit_id = .rodata:0x00000108; // type:object size:0x4 scope:local
|
||||
cNullVec__6Z2Calc = .rodata:0x0000010C; // type:object size:0xC scope:global
|
||||
@46916 = .rodata:0x00000118; // type:object size:0x4 scope:local
|
||||
lbl_604_rodata_11C = .rodata:0x0000011C; // type:object size:0x18
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000120; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN_2__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000128; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x00000130; // type:object size:0x4 align:4 data:float
|
||||
@118208 = .data:0x00000000; // type:object size:0x8 scope:local data:string
|
||||
l_arcName = .data:0x00000008; // type:object size:0x4 scope:global data:4byte
|
||||
l_staffName = .data:0x0000000C; // type:object size:0x4 scope:global data:4byte
|
||||
@@ -115,4 +117,16 @@ __RTTI__30request_of_phase_process_class = .data:0x000003A0; // type:object size
|
||||
@118855 = .data:0x000003C0; // type:object size:0x11 scope:local data:string
|
||||
@118856 = .data:0x000003E0; // type:object size:0x10 scope:local data:string
|
||||
@118857 = .data:0x00000404; // type:object size:0xD scope:local data:string
|
||||
lbl_604_data_411 = .data:0x00000411; // type:object size:0xBB
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@2 = .data:0x00000420; // type:object size:0x5 scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@1 = .data:0x00000428; // type:object size:0xF scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs@0 = .data:0x00000438; // type:object size:0x14 scope:local data:string
|
||||
@STRING@getJointNodePointer__12J3DJointTreeCFUs = .data:0x0000044C; // type:object size:0xF scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@6 = .data:0x0000045C; // type:object size:0x5 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@5 = .data:0x00000464; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@4 = .data:0x00000470; // type:object size:0x16 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@3 = .data:0x00000488; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@2 = .data:0x00000494; // type:object size:0x5 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@1 = .data:0x0000049C; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@0 = .data:0x000004A8; // type:object size:0x14 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi = .data:0x000004BC; // type:object size:0x9 scope:local data:string
|
||||
@STRING@showAssert__12JUTAssertionFUlPCciPCc = .data:0x000004C8; // type:object size:0x3 scope:local data:string
|
||||
|
||||
@@ -52,7 +52,9 @@ l_dzbIdx = .rodata:0x0000002C; // type:object size:0x24 scope:global
|
||||
@114440 = .rodata:0x000000A8; // type:object size:0x4 scope:local
|
||||
cNullVec__6Z2Calc = .rodata:0x000000AC; // type:object size:0xC scope:global
|
||||
@46916 = .rodata:0x000000B8; // type:object size:0x4 scope:local
|
||||
lbl_618_rodata_BC = .rodata:0x000000BC; // type:object size:0x18
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x000000C0; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN_2__Q23std17numeric_limits<d>Fv@x = .rodata:0x000000C8; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x000000D0; // type:object size:0x4 align:4 data:float
|
||||
@114220 = .data:0x00000000; // type:object size:0xE scope:local
|
||||
@114221 = .data:0x00000010; // type:object size:0x5 scope:local
|
||||
@114223 = .data:0x00000018; // type:object size:0x5 scope:local
|
||||
@@ -98,7 +100,15 @@ __RTTI__12daSpinLift_c = .data:0x00000268; // type:object size:0x8 scope:global
|
||||
@114540 = .data:0x000002E0; // type:object size:0xE scope:local data:string
|
||||
@114541 = .data:0x000002F0; // type:object size:0xC scope:local
|
||||
@114542 = .data:0x00000308; // type:object size:0x11 scope:local data:string
|
||||
lbl_618_data_319 = .data:0x00000319; // type:object size:0x7F
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@6 = .data:0x00000328; // type:object size:0x5 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@5 = .data:0x00000330; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@4 = .data:0x0000033C; // type:object size:0x16 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@3 = .data:0x00000354; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@2 = .data:0x00000360; // type:object size:0x5 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@1 = .data:0x00000368; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@0 = .data:0x00000374; // type:object size:0x14 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi = .data:0x00000388; // type:object size:0x9 scope:local data:string
|
||||
@STRING@showAssert__12JUTAssertionFUlPCciPCc = .data:0x00000394; // type:object size:0x3 scope:local data:string
|
||||
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
|
||||
@114206 = .bss:0x00000008; // type:object size:0xC scope:local
|
||||
l_HIO = .bss:0x00000018; // type:object size:0x10 scope:global data:byte
|
||||
|
||||
@@ -68,7 +68,9 @@ mCcDObjInfo__15daObj_SSDrink_c = .rodata:0x00000000; // type:object size:0x30 sc
|
||||
@120036 = .rodata:0x00000058; // type:object size:0x8 scope:local align:8 data:double
|
||||
cNullVec__6Z2Calc = .rodata:0x00000060; // type:object size:0xC scope:global
|
||||
@46916 = .rodata:0x0000006C; // type:object size:0x4 scope:local
|
||||
lbl_619_rodata_70 = .rodata:0x00000070; // type:object size:0x14
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000070; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN_2__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000078; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x00000080; // type:object size:0x4 align:4 data:float
|
||||
@119562 = .data:0x00000000; // type:object size:0x8 scope:local data:string
|
||||
l_resFileName = .data:0x00000008; // type:object size:0x4 scope:global data:4byte
|
||||
@119563 = .data:0x0000000C; // type:object size:0xE scope:local data:string
|
||||
@@ -117,5 +119,5 @@ lbl_619_data_1B4 = .data:0x000001B4; // type:object size:0x30
|
||||
@120251 = .data:0x0000039C; // type:object size:0x9 scope:local data:string
|
||||
@120252 = .data:0x000003BC; // type:object size:0x9 scope:local data:string
|
||||
@120253 = .data:0x000003DC; // type:object size:0xD scope:local data:string
|
||||
lbl_619_data_3E9 = .data:0x000003E9; // type:object size:0x13
|
||||
@STRING@showAssert__12JUTAssertionFUlPCciPCc = .data:0x000003F8; // type:object size:0x3 data:string
|
||||
mCcDCyl__15daObj_SSDrink_c = .bss:0x00000000; // type:object size:0x44 scope:global
|
||||
|
||||
@@ -91,7 +91,9 @@ mCcDObjInfo__10daSyRock_c = .rodata:0x00000048; // type:object size:0x30 scope:g
|
||||
@117450 = .rodata:0x000000E4; // type:object size:0x4 scope:local align:4 data:float
|
||||
cNullVec__6Z2Calc = .rodata:0x000000E8; // type:object size:0xC scope:global
|
||||
@46916 = .rodata:0x000000F4; // type:object size:0x4 scope:local
|
||||
lbl_637_rodata_F8 = .rodata:0x000000F8; // type:object size:0x14
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x000000F8; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN_2__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000100; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x00000108; // type:object size:0x4 align:4 data:float
|
||||
@116978 = .data:0x00000000; // type:object size:0x10 scope:local
|
||||
@116979 = .data:0x00000010; // type:object size:0xA scope:local data:string
|
||||
@116980 = .data:0x0000001C; // type:object size:0x9 scope:local
|
||||
@@ -164,7 +166,15 @@ __RTTI__30request_of_phase_process_class = .data:0x000004E0; // type:object size
|
||||
@117576 = .data:0x00000578; // type:object size:0xE scope:local data:string
|
||||
@117577 = .data:0x00000588; // type:object size:0xC scope:local
|
||||
@117578 = .data:0x000005A0; // type:object size:0x11 scope:local data:string
|
||||
lbl_637_data_5B1 = .data:0x000005B1; // type:object size:0x7F
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@6 = .data:0x000005C0; // type:object size:0x5 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@5 = .data:0x000005C8; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@4 = .data:0x000005D4; // type:object size:0x16 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@3 = .data:0x000005EC; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@2 = .data:0x000005F8; // type:object size:0x5 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@1 = .data:0x00000600; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@0 = .data:0x0000060C; // type:object size:0x14 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi = .data:0x00000620; // type:object size:0x9 scope:local data:string
|
||||
@STRING@showAssert__12JUTAssertionFUlPCciPCc = .data:0x0000062C; // type:object size:0x3 scope:local data:string
|
||||
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
|
||||
...bss.0 = .bss:0x00000008; // type:label scope:local
|
||||
@116955 = .bss:0x00000008; // type:object size:0xC scope:local data:4byte
|
||||
|
||||
@@ -37,7 +37,9 @@ l_cheeckPos1 = .rodata:0x000001AC; // type:object size:0x9C scope:local
|
||||
@114294 = .rodata:0x0000024C; // type:object size:0x4 scope:local
|
||||
cNullVec__6Z2Calc = .rodata:0x00000250; // type:object size:0xC scope:global
|
||||
@46916 = .rodata:0x0000025C; // type:object size:0x4 scope:local
|
||||
lbl_662_rodata_260 = .rodata:0x00000260; // type:object size:0x14
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000260; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN_2__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000268; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x00000270; // type:object size:0x4 align:4 data:float
|
||||
@114210 = .data:0x00000000; // type:object size:0x5 scope:local
|
||||
@114215 = .data:0x00000008; // type:object size:0x9 scope:local data:string
|
||||
@114216 = .data:0x00000014; // type:object size:0xA scope:local data:string
|
||||
@@ -80,7 +82,15 @@ __RTTI__10daTwGate_c = .data:0x00000260; // type:object size:0x8 scope:global
|
||||
@114473 = .data:0x00000360; // type:object size:0xC scope:local
|
||||
@114474 = .data:0x00000378; // type:object size:0x11 scope:local data:string
|
||||
@114475 = .data:0x000003A4; // type:object size:0xD scope:local data:string
|
||||
lbl_662_data_3B1 = .data:0x000003B1; // type:object size:0x7F
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@6 = .data:0x000003C0; // type:object size:0x5 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@5 = .data:0x000003C8; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@4 = .data:0x000003D4; // type:object size:0x16 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@3 = .data:0x000003EC; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@2 = .data:0x000003F8; // type:object size:0x5 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@1 = .data:0x00000400; // type:object size:0x9 scope:local data:string
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi@0 = .data:0x0000040C; // type:object size:0x14 scope:local data:float
|
||||
@STRING@setDrawBuffer__6J3DSysFP13J3DDrawBufferi = .data:0x00000420; // type:object size:0x9 scope:local data:string
|
||||
@STRING@showAssert__12JUTAssertionFUlPCciPCc = .data:0x0000042C; // type:object size:0x3 scope:local data:string
|
||||
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
|
||||
@114190 = .bss:0x00000008; // type:object size:0xC scope:local
|
||||
l_HIO = .bss:0x00000014; // type:object size:0xC scope:local align:4 data:float
|
||||
|
||||
@@ -67,7 +67,9 @@ l_cyl_src = .rodata:0x00000000; // type:object size:0x44 scope:global
|
||||
@LOCAL@execute__14daObjWStatue_cFv@l_demoFunc = .rodata:0x00000084; // type:object size:0x3C scope:local
|
||||
cNullVec__6Z2Calc = .rodata:0x000000C0; // type:object size:0xC scope:global
|
||||
@46916 = .rodata:0x000000CC; // type:object size:0x4 scope:local
|
||||
lbl_682_rodata_D0 = .rodata:0x000000D0; // type:object size:0x14
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x000000D0; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN_2__Q23std17numeric_limits<d>Fv@x = .rodata:0x000000D8; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x000000E0; // type:object size:0x4 align:4 data:float
|
||||
@118603 = .data:0x00000000; // type:object size:0x7 scope:local data:string
|
||||
l_arcName = .data:0x00000008; // type:object size:0x4 scope:global
|
||||
@118604 = .data:0x00000010; // type:object size:0x10 scope:local data:string
|
||||
@@ -131,7 +133,7 @@ lbl_682_data_330 = .data:0x00000330; // type:object size:0x2C
|
||||
@119236 = .data:0x000005E8; // type:object size:0xE scope:local data:string
|
||||
@119237 = .data:0x000005F8; // type:object size:0xC scope:local
|
||||
@119238 = .data:0x00000610; // type:object size:0x11 scope:local data:string
|
||||
lbl_682_data_621 = .data:0x00000621; // type:object size:0x13
|
||||
@STRING@showAssert__12JUTAssertionFUlPCciPCc = .data:0x00000630; // type:object size:0x3 scope:local data:string
|
||||
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
|
||||
@118617 = .bss:0x00000008; // type:object size:0xC scope:local
|
||||
l_HIO = .bss:0x00000018; // type:object size:0x8 scope:global data:byte
|
||||
|
||||
@@ -49,7 +49,9 @@ _dtors = .dtors:0x00000000; // type:label scope:global
|
||||
@117348 = .rodata:0x00000040; // type:object size:0x4 scope:local
|
||||
cNullVec__6Z2Calc = .rodata:0x00000044; // type:object size:0xC scope:global
|
||||
@46916 = .rodata:0x00000050; // type:object size:0x4 scope:local
|
||||
lbl_725_rodata_54 = .rodata:0x00000054; // type:object size:0x18
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000058; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN_2__Q23std17numeric_limits<d>Fv@x = .rodata:0x00000060; // type:object size:0x8 align:8 data:float
|
||||
@LOCAL@signaling_NaN__Q23std17numeric_limits<f>Fv@x = .rodata:0x00000068; // type:object size:0x4 align:4 data:float
|
||||
@117050 = .data:0x00000000; // type:object size:0x5 scope:local
|
||||
@117051 = .data:0x00000008; // type:object size:0x13 scope:local
|
||||
@117054 = .data:0x0000001C; // type:object size:0xD scope:local
|
||||
|
||||
@@ -23,7 +23,7 @@ public:
|
||||
void CheckHit();
|
||||
void WaitAction();
|
||||
void HalfBreakAction();
|
||||
bool VibAction();
|
||||
u8 VibAction();
|
||||
void DummyAction();
|
||||
void RealAction();
|
||||
void Action();
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
#include "d/d_a_itembase_static.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "m_Do/m_Do_ext.h"
|
||||
#include "SSystem/SComponent/c_phase.h"
|
||||
|
||||
struct daItemBase_data {
|
||||
/* 0x00 */ f32 mGravity;
|
||||
|
||||
@@ -15,11 +15,39 @@
|
||||
*
|
||||
*/
|
||||
|
||||
class daObj_ItaMato_HIO_c;
|
||||
struct daObj_ItaMato_HIOParam {
|
||||
/* 0x00 */ f32 attn_offset;
|
||||
/* 0x04 */ f32 gravity;
|
||||
/* 0x08 */ f32 scale;
|
||||
/* 0x0C */ f32 real_shadow_size;
|
||||
/* 0x10 */ f32 shake_pow;
|
||||
};
|
||||
|
||||
class daObj_ItaMato_Param_c {
|
||||
public:
|
||||
virtual ~daObj_ItaMato_Param_c() {}
|
||||
|
||||
static daObj_ItaMato_HIOParam const m;
|
||||
};
|
||||
|
||||
#if DEBUG
|
||||
#define OBJ_ITAMATO_HIO_CLASS daObj_ItaMato_HIO_c
|
||||
|
||||
class daObj_ItaMato_HIO_c : public mDoHIO_entry_c {
|
||||
public:
|
||||
daObj_ItaMato_HIO_c();
|
||||
void genMessage(JORMContext* ctx);
|
||||
void listenPropertyEvent(const JORPropertyEvent*);
|
||||
|
||||
/* 0x8 */ daObj_ItaMato_HIOParam m;
|
||||
};
|
||||
#else
|
||||
#define OBJ_ITAMATO_HIO_CLASS daObj_ItaMato_Param_c
|
||||
#endif
|
||||
|
||||
class daObj_ItaMato_c : public fopAc_ac_c {
|
||||
private:
|
||||
/* 0x568 */ daObj_ItaMato_HIO_c* mHIO;
|
||||
/* 0x568 */ OBJ_ITAMATO_HIO_CLASS* mHIO;
|
||||
/* 0x56C */ request_of_phase_process_class mPhase;
|
||||
/* 0x574 */ J3DModel* mpModels[2];
|
||||
/* 0x57C */ dBgS_ObjAcch mBgc;
|
||||
|
||||
@@ -93,23 +93,4 @@ private:
|
||||
|
||||
STATIC_ASSERT(sizeof(daObjKAT_c) == 0xa74);
|
||||
|
||||
class daObj_KatHIO_c : public JORReflexible {
|
||||
public:
|
||||
daObj_KatHIO_c();
|
||||
virtual ~daObj_KatHIO_c() {}
|
||||
|
||||
void genMessage(JORMContext* ctx) {
|
||||
// Golden Snail
|
||||
ctx->genLabel("黄金蟲(カタツムリ)", 0x80000001);
|
||||
// Model scale (male)
|
||||
ctx->genSlider("モデルスケール(オス)", &this->mScaleMale, 0.1f, 4.0f);
|
||||
// Model scale (female)
|
||||
ctx->genSlider("モデルスケール(メス)", &this->mScaleFemale, 0.1f, 4.0f);
|
||||
}
|
||||
|
||||
s8 field_0x4;
|
||||
f32 mScaleFemale;
|
||||
f32 mScaleMale;
|
||||
};
|
||||
|
||||
#endif /* D_A_OBJ_KATATSUMURI_H */
|
||||
|
||||
@@ -43,11 +43,11 @@ public:
|
||||
void setAnmSpeed(f32 speed) { mpBck->setPlaySpeed(speed); }
|
||||
|
||||
bool isSwitch() {
|
||||
return fopAcM_isSwitch(this, getSwitchNo()) ||
|
||||
/* dSv_event_flag_c::F_0361 - Arbiter's Grounds - Spun the spinning pillars */
|
||||
dComIfGs_isEventBit(dSv_event_flag_c::saveBitLabels[361]) ||
|
||||
/* dSv_event_flag_c::F_0354 - Cutscene - [cutscene] Mirror complete */
|
||||
dComIfGs_isEventBit(dSv_event_flag_c::saveBitLabels[354]);
|
||||
return (fopAcM_isSwitch(this, getSwitchNo()) ||
|
||||
/* dSv_event_flag_c::F_0361 - Arbiter's Grounds - Spun the spinning pillars */
|
||||
dComIfGs_isEventBit(dSv_event_flag_c::saveBitLabels[361]) ||
|
||||
/* dSv_event_flag_c::F_0354 - Cutscene - [cutscene] Mirror complete */
|
||||
dComIfGs_isEventBit(dSv_event_flag_c::saveBitLabels[354])) != false;
|
||||
}
|
||||
|
||||
inline void setAction(Mode_e i_action);
|
||||
|
||||
@@ -13,6 +13,8 @@
|
||||
*/
|
||||
class daObjSCannonTen_c : public fopAc_ac_c, public request_of_phase_process_class {
|
||||
public:
|
||||
typedef void (daObjSCannonTen_c::*ExeProc)(void);
|
||||
|
||||
enum daSCannonTen_exeMode {
|
||||
MODE_WAIT,
|
||||
MODE_ORDER_EVT,
|
||||
@@ -55,8 +57,8 @@ public:
|
||||
void exeEmtLine();
|
||||
void delEmtAll();
|
||||
|
||||
static void (daObjSCannonTen_c::*s_exeProc[])();
|
||||
static void (daObjSCannonTen_c::*s_demoExeProc[][2])();
|
||||
static const ExeProc s_exeProc[];
|
||||
static const ExeProc s_demoExeProc[][2];
|
||||
|
||||
private:
|
||||
/* 0x574 */ J3DModel* mpModel;
|
||||
|
||||
@@ -34,14 +34,4 @@ private:
|
||||
|
||||
STATIC_ASSERT(sizeof(daTwGate_c) == 0x5fc);
|
||||
|
||||
class daTwGate_HIO_c : public fOpAcm_HIO_entry_c {
|
||||
public:
|
||||
daTwGate_HIO_c();
|
||||
~daTwGate_HIO_c() {}
|
||||
|
||||
void genMessage(JORMContext* ctx);
|
||||
|
||||
/* 0x4 */ f32 mRange;
|
||||
};
|
||||
|
||||
#endif /* D_A_OBJ_TWGATE_H */
|
||||
|
||||
@@ -271,10 +271,10 @@ public:
|
||||
}
|
||||
fopAc_ac_c* getCatghTarget() { return mCatghTarget.getCatghTarget(); }
|
||||
u8 getCatchChgItem() { return mCatghTarget.getChangeItem(); }
|
||||
void CatchRequest(fopAc_ac_c* param_0, u8 param_1, f32 i_horizontalDist, f32 i_upDist,
|
||||
int CatchRequest(fopAc_ac_c* param_0, u8 param_1, f32 i_horizontalDist, f32 i_upDist,
|
||||
f32 i_downDist, s16 i_angle, int param_5) {
|
||||
mCatghTarget.request(param_0, param_1, i_horizontalDist, i_upDist, i_downDist, i_angle,
|
||||
param_5);
|
||||
return mCatghTarget.request(param_0, param_1, i_horizontalDist, i_upDist, i_downDist,
|
||||
i_angle, param_5);
|
||||
}
|
||||
fopAc_ac_c* getLookTarget() {
|
||||
return mLookTarget.getLookTarget();
|
||||
|
||||
+1
-1
@@ -220,7 +220,7 @@ public:
|
||||
bool ChkNoCalcVtx() { return mFlags & NO_CALC_VTX_e; }
|
||||
bool ChkFlush() { return field_0x91 & 8; }
|
||||
void SetLock() { mFlags |= (u8)LOCK_e; }
|
||||
void OffRoofRegist() { field_0x91 |= 0x4; }
|
||||
void OffRoofRegist() { field_0x91 |= (u8)0x4; }
|
||||
void OnRoofRegist() { field_0x91 &= ~0x04; }
|
||||
bool ChkRoofRegist() { return field_0x91 & 4;}
|
||||
cBgD_Vtx_t* GetVtxTbl() const { return pm_vtx_tbl; }
|
||||
|
||||
@@ -2761,10 +2761,10 @@ inline u8 dComIfGp_att_getCatchChgItem() {
|
||||
return dComIfGp_getAttention()->getCatchChgItem();
|
||||
}
|
||||
|
||||
inline void dComIfGp_att_CatchRequest(fopAc_ac_c* param_0, u8 param_1, f32 i_horizontalDist,
|
||||
inline int dComIfGp_att_CatchRequest(fopAc_ac_c* param_0, u8 param_1, f32 i_horizontalDist,
|
||||
f32 i_upDist, f32 i_downDist, s16 i_angle, int param_5) {
|
||||
dComIfGp_getAttention()->CatchRequest(param_0, param_1, i_horizontalDist, i_upDist, i_downDist,
|
||||
i_angle, param_5);
|
||||
return dComIfGp_getAttention()->CatchRequest(param_0, param_1, i_horizontalDist, i_upDist,
|
||||
i_downDist, i_angle, param_5);
|
||||
}
|
||||
|
||||
inline fopAc_ac_c* dComIfGp_att_getLookTarget() {
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
#include "d/d_s_play_env.h"
|
||||
#include "f_op/f_op_scene.h"
|
||||
#include "m_Do/m_Do_hostIO.h"
|
||||
#include "SSystem/SComponent/c_phase.h"
|
||||
|
||||
class mDoDvdThd_mountXArchive_c;
|
||||
class mDoDvdThd_toMainRam_c;
|
||||
|
||||
@@ -36,6 +36,7 @@
|
||||
#include "SSystem/SComponent/c_bg_s_poly_info.h" // IWYU pragma: export
|
||||
#include "SSystem/SComponent/c_bg_s_gnd_chk.h" // IWYU pragma: export
|
||||
#include "SSystem/SComponent/c_m3d_g_cyl.h" // IWYU pragma: export
|
||||
#include "SSystem/SComponent/c_phase.h" // IWYU pragma: export
|
||||
#include "m_Do/m_Do_hostIO.h" // IWYU pragma: export
|
||||
#include "f_op/f_op_actor.h" // IWYU pragma: export
|
||||
#include "JSystem/JParticle/JPAEmitter.h" // IWYU pragma: export
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
#include "f_op/f_op_draw_tag.h"
|
||||
#include "f_pc/f_pc_manager.h"
|
||||
#include "m_Do/m_Do_hostIO.h"
|
||||
#include "SSystem/SComponent/c_phase.h"
|
||||
|
||||
#define fopAcM_ct(ptr, ClassName) \
|
||||
if (!fopAcM_CheckCondition(ptr, fopAcCnd_INIT_e)) { \
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
#define F_F_OP_SCENE_TAG_H_
|
||||
|
||||
#include "f_pc/f_pc_node.h"
|
||||
#include "SSystem/SComponent/c_phase.h"
|
||||
|
||||
class scene_tag_class {
|
||||
public:
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
#ifndef F_PC_CREATE_REQ_H_
|
||||
#define F_PC_CREATE_REQ_H_
|
||||
|
||||
#include "SSystem/SComponent/c_phase.h"
|
||||
#include "f_pc/f_pc_create_tag.h"
|
||||
#include "f_pc/f_pc_method.h"
|
||||
#include "f_pc/f_pc_method_tag.h"
|
||||
@@ -11,8 +10,12 @@
|
||||
typedef struct base_process_class base_process_class;
|
||||
typedef struct layer_class layer_class;
|
||||
|
||||
// declare our own typedef instead of cPhs__Handler to avoid pulling in c_phase.h
|
||||
// (which causes RTTI ordering issues in relation to cM3dGCyl)
|
||||
typedef int (*fpcCtRq_phase_handler)(void*);
|
||||
|
||||
typedef struct create_request_method_class {
|
||||
/* 0x0 */ cPhs__Handler phase_handler;
|
||||
/* 0x0 */ fpcCtRq_phase_handler phase_handler;
|
||||
/* 0x4 */ process_method_func cancel_method;
|
||||
/* 0x8 */ process_method_func delete_method;
|
||||
} create_request_method_class;
|
||||
|
||||
@@ -7,26 +7,6 @@ typedef struct layer_class layer_class;
|
||||
|
||||
typedef int (*stdCreateFunc)(void*, void*);
|
||||
|
||||
typedef struct standard_create_request_class {
|
||||
/* 0x00 */ create_request base;
|
||||
/* 0x48 */ request_of_phase_process_class phase_request;
|
||||
/* 0x50 */ s16 process_name;
|
||||
/* 0x54 */ void* process_append;
|
||||
/* 0x58 */ stdCreateFunc create_post_method;
|
||||
/* 0x5C */ void* unk_0x5C;
|
||||
#if DEBUG
|
||||
/* 0x60 */ int unk_0x60;
|
||||
#endif
|
||||
} standard_create_request_class;
|
||||
|
||||
int fpcSCtRq_phase_CreateProcess(standard_create_request_class* i_request);
|
||||
int fpcSCtRq_phase_SubCreateProcess(standard_create_request_class* i_request);
|
||||
int fpcSCtRq_phase_IsComplete(standard_create_request_class* i_request);
|
||||
int fpcSCtRq_phase_PostMethod(standard_create_request_class* i_request);
|
||||
int fpcSCtRq_phase_Done(standard_create_request_class* i_request);
|
||||
int fpcSCtRq_Handler(standard_create_request_class* i_request);
|
||||
int fpcSCtRq_Delete(standard_create_request_class* i_request);
|
||||
int fpcSCtRq_Cancel(standard_create_request_class* i_request);
|
||||
fpc_ProcID fpcSCtRq_Request(layer_class* i_layer, s16 i_procName, stdCreateFunc i_createFunc,
|
||||
void* param_4, void* i_append);
|
||||
|
||||
|
||||
@@ -251,8 +251,8 @@ static u8 body_front_sph[15] = {
|
||||
} // namespace
|
||||
|
||||
int daB_MGN_c::ctrlJoint(J3DJoint* i_joint, J3DModel* i_model) {
|
||||
u16 jntNo = i_joint->getJntNo();
|
||||
int jointNo = jntNo;
|
||||
J3DJoint* joint = i_joint;
|
||||
int jointNo = joint->getJntNo();
|
||||
mDoMtx_stack_c::copy(i_model->getAnmMtx(jointNo));
|
||||
|
||||
if (jointNo == JNT_BACKBONE1) {
|
||||
@@ -2488,6 +2488,7 @@ void daB_MGN_c::executeFall() {
|
||||
}
|
||||
|
||||
void daB_MGN_c::demo_skip(int param_1) {
|
||||
UNUSED(param_1);
|
||||
camera_class* camera = dComIfGp_getCamera(dComIfGp_getPlayerCameraID(0));
|
||||
daPy_py_c* player = daPy_getPlayerActorClass();
|
||||
mBlurRate = 0.0f;
|
||||
|
||||
@@ -29,7 +29,7 @@ static void e_cr_egg_move(e_cr_egg_class* a_this) {
|
||||
a_this->mode = 1;
|
||||
a_this->timers[0] = 150;
|
||||
actor->speedF = 5.0f + cM_rndF(3.0f);
|
||||
actor->current.angle.y += (int)cM_rndFX(10000.0f);
|
||||
actor->current.angle.y += (s16)cM_rndFX(10000.0f);
|
||||
case 1:
|
||||
case 2:
|
||||
case 3:
|
||||
@@ -43,7 +43,7 @@ static void e_cr_egg_move(e_cr_egg_class* a_this) {
|
||||
if (a_this->mode < 4) {
|
||||
static f32 spy[] = {17.0f, 8.0f, 5.0f};
|
||||
actor->speed.y = spy[a_this->mode - 1];
|
||||
actor->current.angle.y += (int)cM_rndFX(8000.0f);
|
||||
actor->current.angle.y += (s16)cM_rndFX(8000.0f);
|
||||
|
||||
int sp28[3] = {40, 20, 10};
|
||||
Z2GetAudioMgr()->seStart(Z2SE_EN_CR_EGG_BOUND, &actor->current.pos, sp28[a_this->mode], 0, 1.0f, 1.0f, -1.0f, -1.0f, 0);
|
||||
@@ -79,7 +79,7 @@ static void action(e_cr_egg_class* a_this) {
|
||||
break;
|
||||
}
|
||||
|
||||
actor->current.angle.x += (int)(actor->speedF * (700.0f + TREG_F(9)));
|
||||
actor->current.angle.x += (s16)(actor->speedF * (700.0f + TREG_F(9)));
|
||||
|
||||
cMtx_YrotS(*calc_mtx, actor->current.angle.y);
|
||||
mae.x = 0.0f;
|
||||
@@ -140,7 +140,7 @@ static int daE_CR_EGG_IsDelete(e_cr_egg_class* a_this) {
|
||||
static int daE_CR_EGG_Delete(e_cr_egg_class* a_this) {
|
||||
fopAc_ac_c* actor = &a_this->enemy;
|
||||
|
||||
fopAcM_RegisterDeleteID(actor, "E_CR_EGG");
|
||||
fopAcM_RegisterDeleteID(a_this, "E_CR_EGG");
|
||||
dComIfG_resDelete(&a_this->phase, "E_CR");
|
||||
a_this->sound.stopAnime();
|
||||
return 1;
|
||||
|
||||
+12
-12
@@ -22,10 +22,10 @@ daE_FB_HIO_c::daE_FB_HIO_c() {
|
||||
maximum_rotation_width = 0x300;
|
||||
minimum_turning_range = 0x10;
|
||||
rotation_width_stairs = 120;
|
||||
color_register_1r = 0x87;
|
||||
color_register_1g = 0x96;
|
||||
color_register_1b = 0x91;
|
||||
color_register_1a = 0xB6;
|
||||
color_register_1r = 135;
|
||||
color_register_1g = 150;
|
||||
color_register_1b = 145;
|
||||
color_register_1a = 182;
|
||||
maximum_rotation_width_2 = 120;
|
||||
}
|
||||
|
||||
@@ -159,18 +159,18 @@ int daE_FB_c::draw() {
|
||||
cStack_44.set(player->current.pos);
|
||||
cStack_44.y += 100.0f;
|
||||
GXColor local_48;
|
||||
local_48.r = 0x82;
|
||||
local_48.g = 0xff;
|
||||
local_48.b = 0x82;
|
||||
local_48.a = 0xfa;
|
||||
local_48.r = 130;
|
||||
local_48.g = 255;
|
||||
local_48.b = 130;
|
||||
local_48.a = 250;
|
||||
dDbVw_drawLineXlu(attention_info.position, cStack_44, local_48, 1, 0xc);
|
||||
}
|
||||
#endif
|
||||
|
||||
GXTexObj* tex_obj = dDlst_shadowControl_c::getSimpleTex();
|
||||
mShadowKey =
|
||||
dComIfGd_setShadow(mShadowKey, 1, model, &my_vec, BREG_F(19) + 1300.0f, 0.0f, current.pos.y,
|
||||
mObjAcch.GetGroundH(), mObjAcch.m_gnd, &tevStr, 0, 1.0f, tex_obj);
|
||||
mObjAcch.GetGroundH(), mObjAcch.m_gnd, &tevStr, 0, 1.0f,
|
||||
dDlst_shadowControl_c::getSimpleTex());
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -293,14 +293,14 @@ bool daE_FB_c::search_check() {
|
||||
if (fopAcM_searchPlayerDistance(this) <= l_HIO.player_detection_range) {
|
||||
if (!field_0x69c) {
|
||||
mRotation = fopAcM_searchPlayerAngleY(this);
|
||||
field_0x69c = 0x1E;
|
||||
field_0x69c = 30;
|
||||
field_0x696 = 0;
|
||||
}
|
||||
|
||||
retval = true;
|
||||
} else if (mActionMode != 1 && !field_0x69c) {
|
||||
mRotation = home.angle.y;
|
||||
field_0x69c = 0x1E;
|
||||
field_0x69c = 30;
|
||||
field_0x696 = 0;
|
||||
}
|
||||
|
||||
|
||||
+192
-189
@@ -394,35 +394,37 @@ static void e_gb_damage(e_gb_class* i_this) {
|
||||
|
||||
i_this->invulnerabilityTimer = 35;
|
||||
switch (i_this->mode) {
|
||||
case 0:
|
||||
i_this->mode = 1;
|
||||
if ((s16)(i_this->angleYTarget - actor->current.angle.y) < 0) {
|
||||
ANGLE_ADD(actor->current.angle.y, KREG_S(6) + 0x2000);
|
||||
} else {
|
||||
ANGLE_SUB(actor->current.angle.y, KREG_S(6) + 0x2000);
|
||||
}
|
||||
case 0:
|
||||
i_this->mode = 1;
|
||||
s16 angleDiff = i_this->angleYTarget - actor->current.angle.y;
|
||||
if (angleDiff < 0) {
|
||||
ANGLE_ADD(actor->current.angle.y, KREG_S(6) + 0x2000);
|
||||
} else {
|
||||
ANGLE_SUB(actor->current.angle.y, KREG_S(6) + 0x2000);
|
||||
}
|
||||
|
||||
cMtx_YrotS(*calc_mtx, actor->current.angle.y);
|
||||
work.x = 0.0f;
|
||||
work.y = AREG_F(2) + 50.0f;
|
||||
work.z = AREG_F(1) + 800.0f;
|
||||
MtxPosition(&work, &i_this->currentPosTarget);
|
||||
i_this->currentPosTarget += actor->home.pos;
|
||||
actor->speed.x = fabsf(actor->current.pos.x - i_this->currentPosTarget.x) * 0.2f;
|
||||
actor->speed.y = fabsf(actor->current.pos.y - i_this->currentPosTarget.y) * 0.2f;
|
||||
actor->speed.z = fabsf(actor->current.pos.z - i_this->currentPosTarget.z) * 0.2f;
|
||||
i_this->timer[0] = KREG_S(7) + 15;
|
||||
// fallthrough
|
||||
case 1:
|
||||
if (i_this->timer[0] == 0) {
|
||||
if (actor->health <= 0) {
|
||||
i_this->headAction = HEAD_ACTION_END;
|
||||
i_this->mode = 0;
|
||||
} else {
|
||||
i_this->headAction = HEAD_ACTION_WAIT;
|
||||
i_this->mode = -2;
|
||||
}
|
||||
cMtx_YrotS(*calc_mtx, actor->current.angle.y);
|
||||
work.x = 0.0f;
|
||||
work.y = AREG_F(2) + 50.0f;
|
||||
work.z = AREG_F(1) + 800.0f;
|
||||
MtxPosition(&work, &i_this->currentPosTarget);
|
||||
i_this->currentPosTarget += actor->home.pos;
|
||||
actor->speed.x = fabsf(actor->current.pos.x - i_this->currentPosTarget.x) * 0.2f;
|
||||
actor->speed.y = fabsf(actor->current.pos.y - i_this->currentPosTarget.y) * 0.2f;
|
||||
actor->speed.z = fabsf(actor->current.pos.z - i_this->currentPosTarget.z) * 0.2f;
|
||||
i_this->timer[0] = KREG_S(7) + 15;
|
||||
// fallthrough
|
||||
case 1:
|
||||
if (i_this->timer[0] == 0) {
|
||||
if (actor->health <= 0) {
|
||||
i_this->headAction = HEAD_ACTION_END;
|
||||
i_this->mode = 0;
|
||||
} else {
|
||||
i_this->headAction = HEAD_ACTION_WAIT;
|
||||
i_this->mode = -2;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
cLib_addCalc2(&actor->current.pos.x, i_this->currentPosTarget.x, 0.1f, actor->speed.x);
|
||||
@@ -1107,183 +1109,183 @@ static void demo_camera(e_gb_class* i_this) {
|
||||
camera_class* camera2 = dComIfGp_getCamera(0);
|
||||
fopAc_ac_c* player = (fopAc_ac_c*)dComIfGp_getPlayer(0);
|
||||
cXyz work, pos, sp34, sp40;
|
||||
int swBit;
|
||||
|
||||
switch (i_this->demoMode) {
|
||||
case 1:
|
||||
if (!actor->eventInfo.checkCommandDemoAccrpt()) {
|
||||
fopAcM_orderPotentialEvent(actor, 2, 0xFFFF, 0);
|
||||
actor->eventInfo.onCondition(dEvtCnd_CANDEMO_e);
|
||||
return;
|
||||
}
|
||||
case 1: {
|
||||
if (!actor->eventInfo.checkCommandDemoAccrpt()) {
|
||||
fopAcM_orderPotentialEvent(actor, 2, 0xFFFF, 0);
|
||||
actor->eventInfo.onCondition(dEvtCnd_CANDEMO_e);
|
||||
return;
|
||||
}
|
||||
|
||||
camera->mCamera.Stop();
|
||||
i_this->demoMode = 2;
|
||||
i_this->demoCamFovy = 55.0f;
|
||||
i_this->demoCounter = 0;
|
||||
camera->mCamera.SetTrimSize(3);
|
||||
daPy_getPlayerActorClass()->changeOriginalDemo();
|
||||
i_this->keyPos.set(-5750.0f, 4410.0f, 10684.0f);
|
||||
i_this->keyYRot = KREG_S(4) + 0x5000;
|
||||
i_this->demoCamCenter.set(-5689.0f, 4747.0f, 15000.0f);
|
||||
i_this->demoCamEye.set(-5700.0f, 4740.0f, 14644.0f);
|
||||
i_this->demoCamCenterTarget.set(-5689.0f, 4740.0f, 14643.0f);
|
||||
i_this->demoCamEyeTarget.set(-5723.0f, 4733.0f, 14293.0f);
|
||||
i_this->demoCamEyeTargetDist.x = fabsf(i_this->demoCamEyeTarget.x - i_this->demoCamEye.x);
|
||||
i_this->demoCamEyeTargetDist.y = fabsf(i_this->demoCamEyeTarget.y - i_this->demoCamEye.y);
|
||||
i_this->demoCamEyeTargetDist.z = fabsf(i_this->demoCamEyeTarget.z - i_this->demoCamEye.z);
|
||||
i_this->demoCamCenterTargetDist.x = fabsf(i_this->demoCamCenterTarget.x - i_this->demoCamCenter.x);
|
||||
i_this->demoCamCenterTargetDist.y = fabsf(i_this->demoCamCenterTarget.y - i_this->demoCamCenter.y);
|
||||
i_this->demoCamCenterTargetDist.z = fabsf(i_this->demoCamCenterTarget.z - i_this->demoCamCenter.z);
|
||||
i_this->demoCamStepScale = 0.0;
|
||||
camera->mCamera.Stop();
|
||||
i_this->demoMode = 2;
|
||||
i_this->demoCamFovy = 55.0f;
|
||||
i_this->demoCounter = 0;
|
||||
camera->mCamera.SetTrimSize(3);
|
||||
daPy_getPlayerActorClass()->changeOriginalDemo();
|
||||
i_this->keyPos.set(-5750.0f, 4410.0f, 10684.0f);
|
||||
i_this->keyYRot = KREG_S(4) + 0x5000;
|
||||
i_this->demoCamCenter.set(-5689.0f, 4747.0f, 15000.0f);
|
||||
i_this->demoCamEye.set(-5700.0f, 4740.0f, 14644.0f);
|
||||
i_this->demoCamCenterTarget.set(-5689.0f, 4740.0f, 14643.0f);
|
||||
i_this->demoCamEyeTarget.set(-5723.0f, 4733.0f, 14293.0f);
|
||||
i_this->demoCamEyeTargetDist.x = fabsf(i_this->demoCamEyeTarget.x - i_this->demoCamEye.x);
|
||||
i_this->demoCamEyeTargetDist.y = fabsf(i_this->demoCamEyeTarget.y - i_this->demoCamEye.y);
|
||||
i_this->demoCamEyeTargetDist.z = fabsf(i_this->demoCamEyeTarget.z - i_this->demoCamEye.z);
|
||||
i_this->demoCamCenterTargetDist.x = fabsf(i_this->demoCamCenterTarget.x - i_this->demoCamCenter.x);
|
||||
i_this->demoCamCenterTargetDist.y = fabsf(i_this->demoCamCenterTarget.y - i_this->demoCamCenter.y);
|
||||
i_this->demoCamCenterTargetDist.z = fabsf(i_this->demoCamCenterTarget.z - i_this->demoCamCenter.z);
|
||||
i_this->demoCamStepScale = 0.0;
|
||||
|
||||
Z2GetAudioMgr()->setBattleBgmOff(true);
|
||||
dComIfGp_getEvent()->startCheckSkipEdge(actor);
|
||||
swBit = (fopAcM_GetParam(actor) & 0xFF00) >> 8;
|
||||
dComIfGs_onSwitch(swBit, fopAcM_GetRoomNo(actor));
|
||||
// fallthrough
|
||||
case 2:
|
||||
pos.set(-5700.0f, 4350.0f, 9670.0f);
|
||||
daPy_getPlayerActorClass()->setPlayerPosAndAngle(&pos, 0, 0);
|
||||
if (i_this->demoCounter > 50) {
|
||||
cam_3d_morf(i_this, 0.1f);
|
||||
cLib_addCalc2(&i_this->demoCamStepScale, 0.02f, 1.0f, 0.0005f);
|
||||
}
|
||||
Z2GetAudioMgr()->setBattleBgmOff(true);
|
||||
dComIfGp_getEvent()->startCheckSkipEdge(actor);
|
||||
int swBit = (fopAcM_GetParam(actor) & 0xFF00) >> 8;
|
||||
dComIfGs_onSwitch(swBit, fopAcM_GetRoomNo(actor));
|
||||
// fallthrough
|
||||
}
|
||||
case 2:
|
||||
pos.set(-5700.0f, 4350.0f, 9670.0f);
|
||||
daPy_getPlayerActorClass()->setPlayerPosAndAngle(&pos, 0, 0);
|
||||
if (i_this->demoCounter > 50) {
|
||||
cam_3d_morf(i_this, 0.1f);
|
||||
cLib_addCalc2(&i_this->demoCamStepScale, 0.02f, 1.0f, 0.0005f);
|
||||
}
|
||||
|
||||
if (i_this->demoCounter != 170) break;
|
||||
i_this->demoCamCenter.set(-5690.0f, 4432.0f, 9610.0f);
|
||||
i_this->demoCamEye.set(-5709.0f, 4445.0f, 9961.0f);
|
||||
i_this->demoCamCenterTarget.set(-5741.0f, 4432.0f, 10530.0f);
|
||||
i_this->demoCamEyeTarget.set(-5760.0f, 4496.0f, 10896.0f);
|
||||
i_this->demoCamEyeTargetDist.x = fabsf(i_this->demoCamEyeTarget.x - i_this->demoCamEye.x);
|
||||
i_this->demoCamEyeTargetDist.y = fabsf(i_this->demoCamEyeTarget.y - i_this->demoCamEye.y);
|
||||
i_this->demoCamEyeTargetDist.z = fabsf(i_this->demoCamEyeTarget.z - i_this->demoCamEye.z);
|
||||
i_this->demoCamCenterTargetDist.x = fabsf(i_this->demoCamCenterTarget.x - i_this->demoCamCenter.x);
|
||||
i_this->demoCamCenterTargetDist.y = fabsf(i_this->demoCamCenterTarget.y - i_this->demoCamCenter.y);
|
||||
i_this->demoCamCenterTargetDist.z = fabsf(i_this->demoCamCenterTarget.z - i_this->demoCamCenter.z);
|
||||
i_this->demoCamStepScale = 0.0f;
|
||||
i_this->demoMode = 3;
|
||||
i_this->demoCamFovy = 55.0f;
|
||||
i_this->demoCounter = 0;
|
||||
// fallthrough
|
||||
case 3:
|
||||
if (i_this->demoCounter > 30) {
|
||||
cam_3d_morf(i_this, 0.1f);
|
||||
cLib_addCalc2(&i_this->demoCamStepScale, 0.02f, 1.0f, 0.0005f);
|
||||
}
|
||||
if (i_this->demoCounter != 170) break;
|
||||
i_this->demoCamCenter.set(-5690.0f, 4432.0f, 9610.0f);
|
||||
i_this->demoCamEye.set(-5709.0f, 4445.0f, 9961.0f);
|
||||
i_this->demoCamCenterTarget.set(-5741.0f, 4432.0f, 10530.0f);
|
||||
i_this->demoCamEyeTarget.set(-5760.0f, 4496.0f, 10896.0f);
|
||||
i_this->demoCamEyeTargetDist.x = fabsf(i_this->demoCamEyeTarget.x - i_this->demoCamEye.x);
|
||||
i_this->demoCamEyeTargetDist.y = fabsf(i_this->demoCamEyeTarget.y - i_this->demoCamEye.y);
|
||||
i_this->demoCamEyeTargetDist.z = fabsf(i_this->demoCamEyeTarget.z - i_this->demoCamEye.z);
|
||||
i_this->demoCamCenterTargetDist.x = fabsf(i_this->demoCamCenterTarget.x - i_this->demoCamCenter.x);
|
||||
i_this->demoCamCenterTargetDist.y = fabsf(i_this->demoCamCenterTarget.y - i_this->demoCamCenter.y);
|
||||
i_this->demoCamCenterTargetDist.z = fabsf(i_this->demoCamCenterTarget.z - i_this->demoCamCenter.z);
|
||||
i_this->demoCamStepScale = 0.0f;
|
||||
i_this->demoMode = 3;
|
||||
i_this->demoCamFovy = 55.0f;
|
||||
i_this->demoCounter = 0;
|
||||
// fallthrough
|
||||
case 3:
|
||||
if (i_this->demoCounter > 30) {
|
||||
cam_3d_morf(i_this, 0.1f);
|
||||
cLib_addCalc2(&i_this->demoCamStepScale, 0.02f, 1.0f, 0.0005f);
|
||||
}
|
||||
|
||||
if (i_this->demoCounter == 130) {
|
||||
i_this->mode++;
|
||||
}
|
||||
|
||||
if (i_this->demoCounter == 135) {
|
||||
i_this->sound.startCreatureSound(Z2SE_EN_GB_SWINGHEAD, 0, -1);
|
||||
}
|
||||
|
||||
if (i_this->demoCounter == 143) {
|
||||
i_this->field_0x670 = 2;
|
||||
}
|
||||
|
||||
if (i_this->demoCounter == 162) {
|
||||
daPy_getPlayerActorClass()->changeDemoMode(23, 1, 2, 0);
|
||||
}
|
||||
|
||||
if (i_this->demoCounter != 190) break;
|
||||
if (i_this->demoCounter == 130) {
|
||||
i_this->mode++;
|
||||
i_this->demoMode = 4;
|
||||
i_this->demoCounter = 0;
|
||||
body_anm_init(i_this, dRes_ID_E_GB_BCK_GF_OPEN_e, 5.0f, J3DFrameCtrl::EMode_NONE, 1.0f);
|
||||
mDoAud_seStart(Z2SE_EN_GF_OPEN, &actor->home.pos, 0, 0);
|
||||
i_this->demoCamCenter.set(-5706.0f, 4526.0f, 11379.0f);
|
||||
i_this->demoCamEye.set(-5687.0f, 4505.0f, 11008.0f);
|
||||
i_this->demoCamCenterTarget.set(-5624.0f, 4439.0f, 9818.0f);
|
||||
i_this->demoCamEyeTarget.set(-5604.0f, 4418.0f, 9447.0f);
|
||||
i_this->demoCamEyeTargetDist.x = fabsf(i_this->demoCamEyeTarget.x - i_this->demoCamEye.x);
|
||||
i_this->demoCamEyeTargetDist.y = fabsf(i_this->demoCamEyeTarget.y - i_this->demoCamEye.y);
|
||||
i_this->demoCamEyeTargetDist.z = fabsf(i_this->demoCamEyeTarget.z - i_this->demoCamEye.z);
|
||||
i_this->demoCamCenterTargetDist.x = fabsf(i_this->demoCamCenterTarget.x - i_this->demoCamCenter.x);
|
||||
i_this->demoCamCenterTargetDist.y = fabsf(i_this->demoCamCenterTarget.y - i_this->demoCamCenter.y);
|
||||
i_this->demoCamCenterTargetDist.z = fabsf(i_this->demoCamCenterTarget.z - i_this->demoCamCenter.z);
|
||||
i_this->demoCamStepScale = 0.0f;
|
||||
i_this->demoCamCenter.y = 4584.0f;
|
||||
// fallthrough
|
||||
case 4:
|
||||
if (i_this->demoCounter == (s16)(NREG_S(5) + 48)) {
|
||||
head_anm_init(i_this, dRes_ID_E_GB_BCK_GB_DEMO_DROPKEY_e, 5.0f, J3DFrameCtrl::EMode_NONE, 1.0f);
|
||||
i_this->sound.startCreatureSound(Z2SE_EN_GB_DROPKEY, 0, -1);
|
||||
}
|
||||
}
|
||||
|
||||
if (i_this->demoCounter == (s16)(NREG_S(6) + 54)) {
|
||||
head_anm_init(i_this, dRes_ID_E_GB_BCK_GB_DEMO_DROPKEY_e, 5.0f, J3DFrameCtrl::EMode_NONE, 1.0f);
|
||||
i_this->keyPos = actor->home.pos;
|
||||
i_this->keyPos.y += NREG_F(9) + 400.0f;
|
||||
i_this->field_0x670 = 1;
|
||||
}
|
||||
if (i_this->demoCounter == 135) {
|
||||
i_this->sound.startCreatureSound(Z2SE_EN_GB_SWINGHEAD, 0, -1);
|
||||
}
|
||||
|
||||
if (i_this->demoCounter == (s16)(NREG_S(7) + 68)) {
|
||||
body_anm_init(i_this, dRes_ID_E_GB_BCK_GF_CLOSE_e, 5.0f, J3DFrameCtrl::EMode_NONE, 1.0f);
|
||||
mDoAud_seStart(Z2SE_EN_GF_CLOSE, &actor->home.pos, 0, 0);
|
||||
i_this->keyStatus = 0;
|
||||
}
|
||||
if (i_this->demoCounter == 143) {
|
||||
i_this->field_0x670 = 2;
|
||||
}
|
||||
|
||||
if (i_this->demoCounter > 150) {
|
||||
cam_3d_morf(i_this, 0.2f);
|
||||
cLib_addCalc2(&i_this->demoCamStepScale, 0.04f, 1.0f, 0.002f);
|
||||
} else if (i_this->demoCounter >= 80) {
|
||||
cLib_addCalc2(&i_this->demoCamCenter.y, 4526.0f, 0.05f, 1.0f);
|
||||
}
|
||||
if (i_this->demoCounter == 162) {
|
||||
daPy_getPlayerActorClass()->changeDemoMode(23, 1, 2, 0);
|
||||
}
|
||||
|
||||
if (i_this->bodyAnmNo == dRes_ID_E_GB_BCK_GF_CLOSE_e && i_this->flowerAnmP->isStop()) {
|
||||
body_anm_init(i_this, dRes_ID_E_GB_BCK_GF_WAIT_CLOSE_e, 10.0f, J3DFrameCtrl::EMode_LOOP, 1.0f);
|
||||
}
|
||||
if (i_this->demoCounter != 190) break;
|
||||
i_this->mode++;
|
||||
i_this->demoMode = 4;
|
||||
i_this->demoCounter = 0;
|
||||
body_anm_init(i_this, dRes_ID_E_GB_BCK_GF_OPEN_e, 5.0f, J3DFrameCtrl::EMode_NONE, 1.0f);
|
||||
mDoAud_seStart(Z2SE_EN_GF_OPEN, &actor->home.pos, 0, 0);
|
||||
i_this->demoCamCenter.set(-5706.0f, 4526.0f, 11379.0f);
|
||||
i_this->demoCamEye.set(-5687.0f, 4505.0f, 11008.0f);
|
||||
i_this->demoCamCenterTarget.set(-5624.0f, 4439.0f, 9818.0f);
|
||||
i_this->demoCamEyeTarget.set(-5604.0f, 4418.0f, 9447.0f);
|
||||
i_this->demoCamEyeTargetDist.x = fabsf(i_this->demoCamEyeTarget.x - i_this->demoCamEye.x);
|
||||
i_this->demoCamEyeTargetDist.y = fabsf(i_this->demoCamEyeTarget.y - i_this->demoCamEye.y);
|
||||
i_this->demoCamEyeTargetDist.z = fabsf(i_this->demoCamEyeTarget.z - i_this->demoCamEye.z);
|
||||
i_this->demoCamCenterTargetDist.x = fabsf(i_this->demoCamCenterTarget.x - i_this->demoCamCenter.x);
|
||||
i_this->demoCamCenterTargetDist.y = fabsf(i_this->demoCamCenterTarget.y - i_this->demoCamCenter.y);
|
||||
i_this->demoCamCenterTargetDist.z = fabsf(i_this->demoCamCenterTarget.z - i_this->demoCamCenter.z);
|
||||
i_this->demoCamStepScale = 0.0f;
|
||||
i_this->demoCamCenter.y = 4584.0f;
|
||||
// fallthrough
|
||||
case 4:
|
||||
if (i_this->demoCounter == (s16)(NREG_S(5) + 48)) {
|
||||
head_anm_init(i_this, dRes_ID_E_GB_BCK_GB_DEMO_DROPKEY_e, 5.0f, J3DFrameCtrl::EMode_NONE, 1.0f);
|
||||
i_this->sound.startCreatureSound(Z2SE_EN_GB_DROPKEY, 0, -1);
|
||||
}
|
||||
|
||||
if (i_this->demoCounter == 220) {
|
||||
i_this->demoMode = 100;
|
||||
i_this->headAction = HEAD_ACTION_WAIT;
|
||||
i_this->mode = 0;
|
||||
i_this->flowerAction = FLOWER_ACTION_WAIT;
|
||||
i_this->flowerMode = 0;
|
||||
Z2GetAudioMgr()->setBattleBgmOff(false);
|
||||
}
|
||||
break;
|
||||
if (i_this->demoCounter == (s16)(NREG_S(6) + 54)) {
|
||||
head_anm_init(i_this, dRes_ID_E_GB_BCK_GB_DEMO_DROPKEY_e, 5.0f, J3DFrameCtrl::EMode_NONE, 1.0f);
|
||||
i_this->keyPos = actor->home.pos;
|
||||
i_this->keyPos.y += NREG_F(9) + 400.0f;
|
||||
i_this->field_0x670 = 1;
|
||||
}
|
||||
|
||||
case 10:
|
||||
if (!actor->eventInfo.checkCommandDemoAccrpt()) {
|
||||
fopAcM_orderPotentialEvent(actor, 2, 0xFFFF, 0);
|
||||
actor->eventInfo.onCondition(dEvtCnd_CANDEMO_e);
|
||||
return;
|
||||
}
|
||||
if (i_this->demoCounter == (s16)(NREG_S(7) + 68)) {
|
||||
body_anm_init(i_this, dRes_ID_E_GB_BCK_GF_CLOSE_e, 5.0f, J3DFrameCtrl::EMode_NONE, 1.0f);
|
||||
mDoAud_seStart(Z2SE_EN_GF_CLOSE, &actor->home.pos, 0, 0);
|
||||
i_this->keyStatus = 0;
|
||||
}
|
||||
|
||||
camera->mCamera.Stop();
|
||||
i_this->demoMode = 11;
|
||||
i_this->demoCamFovy = 55.0;
|
||||
i_this->demoCounter = 0;
|
||||
camera->mCamera.SetTrimSize(3);
|
||||
// fallthrough
|
||||
case 11:
|
||||
i_this->demoCamCenter = actor->home.pos;
|
||||
i_this->demoCamCenter.y += YREG_F(12) + 100.0f;
|
||||
i_this->demoCamEye = actor->home.pos;
|
||||
i_this->demoCamEye.x += YREG_F(13);
|
||||
i_this->demoCamEye.y += YREG_F(14) + 300.0f;
|
||||
i_this->demoCamEye.z += YREG_F(15) + -600.0f;
|
||||
if (i_this->demoCounter > 150) {
|
||||
cam_3d_morf(i_this, 0.2f);
|
||||
cLib_addCalc2(&i_this->demoCamStepScale, 0.04f, 1.0f, 0.002f);
|
||||
} else if (i_this->demoCounter >= 80) {
|
||||
cLib_addCalc2(&i_this->demoCamCenter.y, 4526.0f, 0.05f, 1.0f);
|
||||
}
|
||||
|
||||
if (i_this->demoCounter == 100) {
|
||||
i_this->demoMode = 100;
|
||||
}
|
||||
break;
|
||||
if (i_this->bodyAnmNo == dRes_ID_E_GB_BCK_GF_CLOSE_e && i_this->flowerAnmP->isStop()) {
|
||||
body_anm_init(i_this, dRes_ID_E_GB_BCK_GF_WAIT_CLOSE_e, 10.0f, J3DFrameCtrl::EMode_LOOP, 1.0f);
|
||||
}
|
||||
|
||||
case 100:
|
||||
camera->mCamera.Reset(i_this->demoCamCenter, i_this->demoCamEye);
|
||||
camera->mCamera.Start();
|
||||
camera->mCamera.SetTrimSize(0);
|
||||
dComIfGp_event_reset();
|
||||
daPy_getPlayerActorClass()->cancelOriginalDemo();
|
||||
i_this->demoMode = 0;
|
||||
break;
|
||||
if (i_this->demoCounter == 220) {
|
||||
i_this->demoMode = 100;
|
||||
i_this->headAction = HEAD_ACTION_WAIT;
|
||||
i_this->mode = 0;
|
||||
i_this->flowerAction = FLOWER_ACTION_WAIT;
|
||||
i_this->flowerMode = 0;
|
||||
Z2GetAudioMgr()->setBattleBgmOff(false);
|
||||
}
|
||||
break;
|
||||
|
||||
case 0:
|
||||
break;
|
||||
case 10:
|
||||
if (!actor->eventInfo.checkCommandDemoAccrpt()) {
|
||||
fopAcM_orderPotentialEvent(actor, 2, 0xFFFF, 0);
|
||||
actor->eventInfo.onCondition(dEvtCnd_CANDEMO_e);
|
||||
return;
|
||||
}
|
||||
|
||||
camera->mCamera.Stop();
|
||||
i_this->demoMode = 11;
|
||||
i_this->demoCamFovy = 55.0;
|
||||
i_this->demoCounter = 0;
|
||||
camera->mCamera.SetTrimSize(3);
|
||||
// fallthrough
|
||||
case 11:
|
||||
i_this->demoCamCenter = actor->home.pos;
|
||||
i_this->demoCamCenter.y += YREG_F(12) + 100.0f;
|
||||
i_this->demoCamEye = actor->home.pos;
|
||||
i_this->demoCamEye.x += YREG_F(13);
|
||||
i_this->demoCamEye.y += YREG_F(14) + 300.0f;
|
||||
i_this->demoCamEye.z += YREG_F(15) + -600.0f;
|
||||
|
||||
if (i_this->demoCounter == 100) {
|
||||
i_this->demoMode = 100;
|
||||
}
|
||||
break;
|
||||
|
||||
case 100:
|
||||
camera->mCamera.Reset(i_this->demoCamCenter, i_this->demoCamEye);
|
||||
camera->mCamera.Start();
|
||||
camera->mCamera.SetTrimSize(0);
|
||||
dComIfGp_event_reset();
|
||||
daPy_getPlayerActorClass()->cancelOriginalDemo();
|
||||
i_this->demoMode = 0;
|
||||
break;
|
||||
|
||||
case 0:
|
||||
break;
|
||||
}
|
||||
|
||||
if (i_this->demoMode != 0) {
|
||||
@@ -1291,7 +1293,7 @@ static void demo_camera(e_gb_class* i_this) {
|
||||
i_this->demoCounter++;
|
||||
|
||||
if (i_this->demoMode < 10) {
|
||||
dComIfGp_getEvent()->setSkipProc(i_this, dEv_defaultSkipProc, 0);
|
||||
dComIfGp_getEvent()->setSkipProc(actor, dEv_defaultSkipProc, 0);
|
||||
if (dComIfGp_getEvent()->checkSkipEdge()) {
|
||||
i_this->demoMode = 100;
|
||||
cMtx_YrotS(*calc_mtx, player->shape_angle.y);
|
||||
@@ -1324,6 +1326,7 @@ static int daE_GB_Execute(e_gb_class* i_this) {
|
||||
|
||||
fopEn_enemy_c* actor = &i_this->actor;
|
||||
cXyz work, pos;
|
||||
J3DModel* model;
|
||||
|
||||
i_this->frameCounter++;
|
||||
|
||||
@@ -1358,7 +1361,7 @@ static int daE_GB_Execute(e_gb_class* i_this) {
|
||||
f32 scale = l_HIO.face_size;
|
||||
mDoMtx_stack_c::scaleM(scale, scale, scale);
|
||||
|
||||
J3DModel* model = i_this->anmP->getModel();
|
||||
model = i_this->anmP->getModel();
|
||||
model->setBaseTRMtx(mDoMtx_stack_c::get());
|
||||
i_this->anmP->play(NULL, dComIfGp_getReverb(fopAcM_GetRoomNo(actor)), 0);
|
||||
i_this->anmP->modelCalc();
|
||||
|
||||
+141
-129
@@ -169,10 +169,14 @@ static fopAc_ac_c* m_near_carry;
|
||||
static fopAc_ac_c* m_near_weapon;
|
||||
|
||||
static void* s_obj_sub(void* i_actor, void* i_data) {
|
||||
f32 actor_dist;
|
||||
|
||||
UNUSED(i_data);
|
||||
|
||||
if (fopAcM_IsActor(i_actor)) {
|
||||
if (!fpcM_IsCreating(fopAcM_GetID(i_actor)) && !fopAcM_checkCarryNow((fopAc_ac_c*)i_actor))
|
||||
{
|
||||
f32 actor_dist = fopAcM_searchActorDistance((fopAc_ac_c*)i_actor, (fopAc_ac_c*)i_data);
|
||||
actor_dist = fopAcM_searchActorDistance((fopAc_ac_c*)i_actor, (fopAc_ac_c*)i_data);
|
||||
|
||||
if (actor_dist < 100.0f && !fopAcM_GetSpeedF((fopAc_ac_c*)i_actor) &&
|
||||
!fopAcM_GetSpeed((fopAc_ac_c*)i_actor).y)
|
||||
@@ -713,8 +717,12 @@ void daE_HZ_c::initBackWalk() {
|
||||
linChk.Set(&start, &end, NULL);
|
||||
|
||||
if (dComIfG_Bgsp().LineCross(&linChk)) {
|
||||
cLib_offsetPos(&field_0x678, &home.pos, modifiedTargetAngleY & 0x4000 ? (s16)((targetAngleY + 0x4000) & 0x8000) :
|
||||
(s16)((targetAngleY & 0x8000) + 0x4000), &position);
|
||||
if (modifiedTargetAngleY & 0x4000) {
|
||||
targetAngleY = (s16)(targetAngleY + 0x4000 & 0x8000);
|
||||
} else {
|
||||
targetAngleY = (s16)((targetAngleY & 0x8000) + 0x4000);
|
||||
}
|
||||
cLib_offsetPos(&field_0x678, &home.pos, targetAngleY, &position);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -863,6 +871,7 @@ void daE_HZ_c::executeWind() {
|
||||
dBgS_GndChk gndChk;
|
||||
dBgS_LinChk linChk;
|
||||
BOOL bVar = false;
|
||||
f32 deltaY;
|
||||
f32 frame = mpMorfSO->getFrame();
|
||||
f32 playerDist;
|
||||
f32 groundCross;
|
||||
@@ -890,12 +899,12 @@ void daE_HZ_c::executeWind() {
|
||||
field_0x6cc = (s16)((playerDist * 15.0f) / 1000.0f);
|
||||
/* fallthrough */
|
||||
case 1:
|
||||
frame = 6.0f - frame / 3.0f;
|
||||
if (frame < 0.0f) {
|
||||
frame = 0.0f;
|
||||
deltaY = 6.0f - frame / 3.0f;
|
||||
if (deltaY < 0.0f) {
|
||||
deltaY = 0.0f;
|
||||
}
|
||||
|
||||
current.pos.y += frame;
|
||||
current.pos.y += deltaY;
|
||||
ANGLE_SUB(shape_angle.y, 0x7D0);
|
||||
|
||||
if (mpMorfSO->checkFrame(field_0x6cc) || mpBoomerangActor == NULL ||
|
||||
@@ -1345,15 +1354,14 @@ void daE_HZ_c::executeWindWalk() {
|
||||
}
|
||||
|
||||
void daE_HZ_c::setWaterEffect() {
|
||||
cXyz position(current.pos.x, mGroundCross, current.pos.z);
|
||||
static cXyz sc(2.0f, 2.0f, 2.0f);
|
||||
static u16 w_eff_id[4] = {
|
||||
ID_ZI_J_DOWNWTRA_A,
|
||||
ID_ZI_J_DOWNWTRA_B,
|
||||
ID_ZI_J_DOWNWTRA_C,
|
||||
ID_ZI_J_DOWNWTRA_D,
|
||||
};
|
||||
|
||||
cXyz position(current.pos.x, mGroundCross, current.pos.z);
|
||||
static cXyz sc(2.0f, 2.0f, 2.0f);
|
||||
|
||||
for (int i = 0; i < 4; i++) {
|
||||
mWaterEffects[i] = dComIfGp_particle_set(mWaterEffects[i], w_eff_id[i], &position, &tevStr,
|
||||
@@ -1453,7 +1461,7 @@ void daE_HZ_c::executeDeathWait() {
|
||||
}
|
||||
|
||||
void daE_HZ_c::damage_check() {
|
||||
s16 angle;
|
||||
s16 targetAngleY;
|
||||
|
||||
if (mAction != 1 || mMode < 4) {
|
||||
if (mSpheres[0].ChkTgHit() && mSpheres[0].GetTgHitObj()->ChkAtType(AT_TYPE_BOOMERANG)) {
|
||||
@@ -1533,68 +1541,68 @@ void daE_HZ_c::damage_check() {
|
||||
}
|
||||
|
||||
setActionMode(ACTION_DEATH);
|
||||
return;
|
||||
}
|
||||
} else {
|
||||
if (mAction == ACTION_AWAY) {
|
||||
if (bVar) {
|
||||
field_0x6cc = 1;
|
||||
setActionMode(ACTION_DAMAGE);
|
||||
return;
|
||||
}
|
||||
|
||||
if (mAction == ACTION_AWAY) {
|
||||
if (bVar) {
|
||||
field_0x6cc = 1;
|
||||
setActionMode(ACTION_DAMAGE);
|
||||
targetAngleY = cLib_targetAngleY(&mSpheres[1].GetCoCP(), &player_pos);
|
||||
targetAngleY = (s16)(targetAngleY - shape_angle.y);
|
||||
if (i == 1) {
|
||||
if (abs(targetAngleY) >= 0x4000) {
|
||||
if (bVar) {
|
||||
mBackbone1YZRot.z = 0x5000;
|
||||
mBackbone2YZRot.z = -0x4000;
|
||||
mBackbone3YZRot.z = 0;
|
||||
} else {
|
||||
mBackbone1YZRot.z = 0x3000;
|
||||
}
|
||||
|
||||
} else if (bVar) {
|
||||
mBackbone1YZRot.z = -0x3000;
|
||||
mBackbone2YZRot.z = -0x2000;
|
||||
mBackbone3YZRot.z = -0x1000;
|
||||
} else {
|
||||
mBackbone1YZRot.z = -0x2000;
|
||||
mBackbone2YZRot.z = -0x1000;
|
||||
mBackbone3YZRot.z = -0x800;
|
||||
}
|
||||
speedF = 0.0f;
|
||||
} else if (bVar) {
|
||||
mBackbone1YZRot.z = 0x5000;
|
||||
mBackbone2YZRot.z = -0x4000;
|
||||
mBackbone3YZRot.z = 0;
|
||||
} else {
|
||||
mBackbone1YZRot.z = 0x3000;
|
||||
}
|
||||
|
||||
if (targetAngleY < -0x2800) {
|
||||
targetAngleY = -0x2800;
|
||||
}
|
||||
|
||||
if (targetAngleY > 0x2800) {
|
||||
targetAngleY = 0x2800;
|
||||
}
|
||||
|
||||
mBackbone1YZRot.y = targetAngleY;
|
||||
mSound.startCreatureVoice(Z2SE_EN_HZ_V_DAMAGE, -1);
|
||||
return;
|
||||
}
|
||||
|
||||
angle = cLib_targetAngleY(&mSpheres[1].GetCoCP(), &player_pos) - shape_angle.y;
|
||||
if (i == 1) {
|
||||
if (abs(angle) >= 0x4000) {
|
||||
if (bVar) {
|
||||
mBackbone1YZRot.z = 0x5000;
|
||||
mBackbone2YZRot.z = -0x4000;
|
||||
mBackbone3YZRot.z = 0;
|
||||
} else {
|
||||
mBackbone1YZRot.z = 0x3000;
|
||||
}
|
||||
|
||||
} else if (bVar) {
|
||||
mBackbone1YZRot.z = -0x3000;
|
||||
mBackbone2YZRot.z = -0x2000;
|
||||
mBackbone3YZRot.z = -0x1000;
|
||||
} else {
|
||||
mBackbone1YZRot.z = -0x2000;
|
||||
mBackbone2YZRot.z = -0x1000;
|
||||
mBackbone3YZRot.z = -0x800;
|
||||
}
|
||||
speedF = 0.0f;
|
||||
} else if (bVar) {
|
||||
mBackbone1YZRot.z = 0x5000;
|
||||
mBackbone2YZRot.z = -0x4000;
|
||||
mBackbone3YZRot.z = 0;
|
||||
if (bVar) {
|
||||
field_0x6cc = 1;
|
||||
} else {
|
||||
mBackbone1YZRot.z = 0x3000;
|
||||
field_0x6cc = 0;
|
||||
if (mAtInfo.mpCollider->ChkAtType(AT_TYPE_SHIELD_ATTACK)) {
|
||||
field_0x6cc = 2;
|
||||
}
|
||||
}
|
||||
|
||||
if (angle < -0x2800) {
|
||||
angle = -0x2800;
|
||||
}
|
||||
|
||||
if (angle > 0x2800) {
|
||||
angle = 0x2800;
|
||||
}
|
||||
|
||||
mBackbone1YZRot.y = angle;
|
||||
mSound.startCreatureVoice(Z2SE_EN_HZ_V_DAMAGE, -1);
|
||||
return;
|
||||
setActionMode(ACTION_DAMAGE);
|
||||
}
|
||||
|
||||
if (bVar) {
|
||||
field_0x6cc = 1;
|
||||
} else {
|
||||
field_0x6cc = 0;
|
||||
if (mAtInfo.mpCollider->ChkAtType(AT_TYPE_SHIELD_ATTACK)) {
|
||||
field_0x6cc = 2;
|
||||
}
|
||||
}
|
||||
|
||||
setActionMode(ACTION_DAMAGE);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -1605,13 +1613,8 @@ void daE_HZ_c::damage_check() {
|
||||
bool daE_HZ_c::checkWaterSurface() {
|
||||
dBgS_ObjGndChk_Spl spline;
|
||||
|
||||
Vec modified_pos /* = current.pos; */;
|
||||
// this might not match in debug since it's not calling
|
||||
// Vec::operator_= in debug
|
||||
// For retail, it's no problem since it gets optimized out
|
||||
modified_pos.x = current.pos.x;
|
||||
modified_pos.y = current.pos.y;
|
||||
modified_pos.z = current.pos.z;
|
||||
Vec modified_pos;
|
||||
modified_pos = current.pos;
|
||||
modified_pos.y += 500.0f;
|
||||
spline.SetPos(&modified_pos);
|
||||
mGroundCross = dComIfG_Bgsp().GroundCross(&spline);
|
||||
@@ -1722,59 +1725,64 @@ void daE_HZ_c::action() {
|
||||
void daE_HZ_c::mtx_set() {
|
||||
mDoMtx_stack_c::transS(home.pos.x, home.pos.y - 13.0f, home.pos.z);
|
||||
mpModel2->setBaseTRMtx(mDoMtx_stack_c::get());
|
||||
if (field_0x6e8 == 0) {
|
||||
mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z);
|
||||
mDoMtx_stack_c::ZXYrotM(shape_angle);
|
||||
mDoMtx_stack_c::scaleM(l_HIO.basic_size, l_HIO.basic_size, l_HIO.basic_size);
|
||||
J3DModel* morfModel = mpMorfSO->getModel();
|
||||
morfModel->setBaseTRMtx(mDoMtx_stack_c::get());
|
||||
mpMorfSO->modelCalc();
|
||||
MtxP anmMtx = morfModel->getAnmMtx(7);
|
||||
mpModel->setBaseTRMtx(anmMtx);
|
||||
mSmokeEffectPosition.set(anmMtx[0][3], anmMtx[1][3], anmMtx[2][3]);
|
||||
if (mSetModelAnmMtx) {
|
||||
mSetModelAnmMtx = false;
|
||||
mDoMtx_stack_c::copy(anmMtx);
|
||||
mDoMtx_stack_c::ZrotM(-0x4000);
|
||||
mDoMtx_stack_c::transM(0.0f, 14.0f, 0.0f);
|
||||
MTXCopy(mDoMtx_stack_c::get(), mMtx);
|
||||
} else {
|
||||
mDoMtx_stack_c::transS(home.pos);
|
||||
MTXCopy(mDoMtx_stack_c::get(), mMtx);
|
||||
}
|
||||
|
||||
if (mpBgW != NULL) {
|
||||
mpBgW->Move();
|
||||
}
|
||||
if (field_0x6e8 != 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z);
|
||||
mDoMtx_stack_c::ZXYrotM(shape_angle);
|
||||
mDoMtx_stack_c::scaleM(l_HIO.basic_size, l_HIO.basic_size, l_HIO.basic_size);
|
||||
J3DModel* morfModel = mpMorfSO->getModel();
|
||||
morfModel->setBaseTRMtx(mDoMtx_stack_c::get());
|
||||
mpMorfSO->modelCalc();
|
||||
MtxP anmMtx = morfModel->getAnmMtx(7);
|
||||
mpModel->setBaseTRMtx(anmMtx);
|
||||
mSmokeEffectPosition.set(anmMtx[0][3], anmMtx[1][3], anmMtx[2][3]);
|
||||
if (mSetModelAnmMtx) {
|
||||
mSetModelAnmMtx = false;
|
||||
mDoMtx_stack_c::copy(anmMtx);
|
||||
mDoMtx_stack_c::ZrotM(-0x4000);
|
||||
mDoMtx_stack_c::transM(0.0f, 14.0f, 0.0f);
|
||||
cMtx_copy(mDoMtx_stack_c::get(), mMtx);
|
||||
} else {
|
||||
mDoMtx_stack_c::transS(home.pos);
|
||||
cMtx_copy(mDoMtx_stack_c::get(), mMtx);
|
||||
}
|
||||
|
||||
if (mpBgW != NULL) {
|
||||
mpBgW->Move();
|
||||
}
|
||||
}
|
||||
|
||||
void daE_HZ_c::cc_set() {
|
||||
if (field_0x6e8 == 0) {
|
||||
cXyz pos;
|
||||
J3DModel* morfModel = mpMorfSO->getModel();
|
||||
|
||||
attention_info.position = eyePos = mSmokeEffectPosition;
|
||||
attention_info.position.y += 30.0f;
|
||||
|
||||
MTXCopy(morfModel->getAnmMtx(7), mDoMtx_stack_c::get());
|
||||
mDoMtx_stack_c::multVecZero(&pos);
|
||||
mSpheres[0].SetC(pos);
|
||||
mSpheres[0].SetR(80.0f);
|
||||
dComIfG_Ccsp()->Set(&mSpheres[0]);
|
||||
|
||||
MTXCopy(morfModel->getAnmMtx(1), mDoMtx_stack_c::get());
|
||||
mDoMtx_stack_c::multVecZero(&pos);
|
||||
mSpheres[1].SetC(pos);
|
||||
mSpheres[1].SetR(80.0f);
|
||||
dComIfG_Ccsp()->Set(&mSpheres[1]);
|
||||
|
||||
MTXCopy(morfModel->getAnmMtx(0x12), mDoMtx_stack_c::get());
|
||||
mDoMtx_stack_c::multVecZero(&pos);
|
||||
mSpheres[2].SetC(pos);
|
||||
mSpheres[2].SetR(80.0f);
|
||||
dComIfG_Ccsp()->Set(&mSpheres[2]);
|
||||
if (field_0x6e8 != 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
cXyz pos;
|
||||
J3DModel* morfModel = mpMorfSO->getModel();
|
||||
|
||||
attention_info.position = eyePos = mSmokeEffectPosition;
|
||||
attention_info.position.y += 30.0f;
|
||||
|
||||
MTXCopy(morfModel->getAnmMtx(7), mDoMtx_stack_c::get());
|
||||
mDoMtx_stack_c::multVecZero(&pos);
|
||||
mSpheres[0].SetC(pos);
|
||||
mSpheres[0].SetR(80.0f);
|
||||
dComIfG_Ccsp()->Set(&mSpheres[0]);
|
||||
|
||||
MTXCopy(morfModel->getAnmMtx(1), mDoMtx_stack_c::get());
|
||||
mDoMtx_stack_c::multVecZero(&pos);
|
||||
mSpheres[1].SetC(pos);
|
||||
mSpheres[1].SetR(80.0f);
|
||||
dComIfG_Ccsp()->Set(&mSpheres[1]);
|
||||
|
||||
MTXCopy(morfModel->getAnmMtx(0x12), mDoMtx_stack_c::get());
|
||||
mDoMtx_stack_c::multVecZero(&pos);
|
||||
mSpheres[2].SetC(pos);
|
||||
mSpheres[2].SetR(80.0f);
|
||||
dComIfG_Ccsp()->Set(&mSpheres[2]);
|
||||
}
|
||||
|
||||
int daE_HZ_c::execute() {
|
||||
@@ -1875,7 +1883,8 @@ static int daE_HZ_Delete(daE_HZ_c* i_this) {
|
||||
}
|
||||
|
||||
int daE_HZ_c::ctrlJoint(J3DJoint* i_joint, J3DModel* i_model) {
|
||||
int joint_no = i_joint->getJntNo();
|
||||
J3DJoint* joint = i_joint;
|
||||
int joint_no = joint->getJntNo();
|
||||
|
||||
mDoMtx_stack_c::copy(i_model->getAnmMtx(joint_no));
|
||||
|
||||
@@ -1897,7 +1906,7 @@ int daE_HZ_c::ctrlJoint(J3DJoint* i_joint, J3DModel* i_model) {
|
||||
}
|
||||
|
||||
i_model->setAnmMtx(joint_no, mDoMtx_stack_c::get());
|
||||
MTXCopy(mDoMtx_stack_c::get(), J3DSys::mCurrentMtx);
|
||||
cMtx_copy(mDoMtx_stack_c::get(), J3DSys::mCurrentMtx);
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -2007,11 +2016,11 @@ int daE_HZ_c::create() {
|
||||
|
||||
static dCcD_SrcSph cc_sph_src2 = {
|
||||
{
|
||||
{0x0, {{AT_TYPE_CSTATUE_SWING, 0x1, 0x0}, {0xd8fafdff, 0x3}, 0x75}}, // mObj
|
||||
{dCcD_SE_METAL, 0x0, 0x0, 0x0, 0x0}, // mGObjAt
|
||||
{dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x2}, // mGObjTg
|
||||
{0x0}, // mGObjCo
|
||||
}, // mObjInf
|
||||
{0x0, {{AT_TYPE_CSTATUE_SWING, 0x1, 0x0}, {(s32)0xd8fafdff, 0x3}, 0x75}}, // mObj
|
||||
{dCcD_SE_METAL, 0x0, 0x0, 0x0, 0x0}, // mGObjAt
|
||||
{dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x2}, // mGObjTg
|
||||
{0x0}, // mGObjCo
|
||||
}, // mObjInf
|
||||
{
|
||||
{{0.0f, 0.0f, 0.0f}, 40.0f} // mSph
|
||||
} // mSphAttr
|
||||
@@ -2026,7 +2035,10 @@ int daE_HZ_c::create() {
|
||||
return phase;
|
||||
}
|
||||
|
||||
if ((fopAcM_GetParam(this) >> 8 & 0xFF) == 1) {
|
||||
u8 param = (fopAcM_GetParam(this) >> 8) & 0xFF;
|
||||
if (param == 1) {
|
||||
int dummy; // force debug to use r31 as stack pointer
|
||||
|
||||
mpName = "E_hzp2";
|
||||
} else {
|
||||
mpName = "E_hzp";
|
||||
@@ -2035,7 +2047,7 @@ int daE_HZ_c::create() {
|
||||
phase = dComIfG_resLoad(&mPhaseReq2, mpName);
|
||||
if (phase == cPhs_COMPLEATE_e) {
|
||||
OS_REPORT("E_HZ PARAM %x\n", fopAcM_GetParam(this));
|
||||
|
||||
|
||||
if (!fopAcM_entrySolidHeap(this, useHeapInit, 0x2C20)) {
|
||||
return cPhs_ERROR_e;
|
||||
}
|
||||
@@ -2046,7 +2058,7 @@ int daE_HZ_c::create() {
|
||||
if (!hio_set) {
|
||||
mHIOInit = true;
|
||||
hio_set = true;
|
||||
l_HIO.enemy_sample = mDoHIO_CREATE_CHILD("Hajiki-san", &l_HIO);
|
||||
l_HIO.enemy_sample = mDoHIO_CREATE_CHILD("ハジキさん", &l_HIO);
|
||||
}
|
||||
|
||||
fopAcM_SetMtx(this, mpMorfSO->getModel()->getBaseTRMtx());
|
||||
|
||||
+37
-31
@@ -57,13 +57,13 @@ void daE_MD_c::setCcCylinder(f32 i_height) {
|
||||
}
|
||||
|
||||
int daE_MD_c::CreateHeap() {
|
||||
void* modelData;
|
||||
J3DModelData* modelData;
|
||||
if (mType != TYPE_LV9) {
|
||||
modelData = dComIfG_getObjectRes("E_MD", 0xB);
|
||||
modelData = (J3DModelData*)dComIfG_getObjectRes("E_MD", 0xB);
|
||||
} else if (mType == TYPE_LV9) {
|
||||
modelData = dComIfG_getObjectRes("E_MD", 9);
|
||||
modelData = (J3DModelData*)dComIfG_getObjectRes("E_MD", 9);
|
||||
} else {
|
||||
modelData = dComIfG_getObjectRes("E_MD", 9);
|
||||
modelData = (J3DModelData*)dComIfG_getObjectRes("E_MD", 9);
|
||||
}
|
||||
|
||||
JUT_ASSERT(180, modelData != NULL);
|
||||
@@ -74,19 +74,20 @@ int daE_MD_c::CreateHeap() {
|
||||
}
|
||||
|
||||
if (mType == TYPE_DUMMY) {
|
||||
modelData = dComIfG_getObjectRes("E_MD", 0xD);
|
||||
modelData = (J3DModelData*)dComIfG_getObjectRes("E_MD", 0xD);
|
||||
mpYariModelMorf = new mDoExt_McaMorfSO((J3DModelData*)modelData, NULL, NULL, NULL, 2, 1.0f, 0, -1, NULL, 0x80000, 0x11000084);
|
||||
if (mpYariModelMorf == NULL || mpYariModelMorf->getModel() == NULL) {
|
||||
return 0;
|
||||
}
|
||||
} else if (mType == TYPE_LV9) {
|
||||
modelData = dComIfG_getObjectRes("E_MD", 0xA);
|
||||
modelData = (J3DModelData*)dComIfG_getObjectRes("E_MD", 0xA);
|
||||
mpYariModelMorf = new mDoExt_McaMorfSO((J3DModelData*)modelData, NULL, NULL, NULL, 2, 1.0f, 0, -1, NULL, 0x80000, 0x11000084);
|
||||
if (mpYariModelMorf == NULL || mpYariModelMorf->getModel() == NULL) {
|
||||
return 0;
|
||||
}
|
||||
} else {
|
||||
mpTbModel = mDoExt_J3DModel__create((J3DModelData*)dComIfG_getObjectRes("E_MD", 0xC), 0x80000, 0x11000084);
|
||||
modelData = (J3DModelData*)dComIfG_getObjectRes("E_MD", 0xC);
|
||||
mpTbModel = mDoExt_J3DModel__create(modelData, 0x80000, 0x11000084);
|
||||
if (mpTbModel == NULL) {
|
||||
return 0;
|
||||
}
|
||||
@@ -126,8 +127,9 @@ void daE_MD_c::At_Check() {
|
||||
if (mAtInfo.mpCollider->ChkAtType(AT_TYPE_HOOKSHOT)) {
|
||||
mAtInfo.mAttackPower = 0;
|
||||
}
|
||||
|
||||
u8 at_se = ((dCcD_GObjInf*)mAtInfo.mpCollider)->GetAtSe();
|
||||
|
||||
dCcD_GObjInf* collider = (dCcD_GObjInf*)mAtInfo.mpCollider;
|
||||
int at_se = collider->GetAtSe();
|
||||
if (mAtInfo.mpSound != NULL && mAtInfo.field_0x18 != 0) {
|
||||
mAtInfo.mpSound->startCollisionSE(dCcD_GObjInf::getHitSeID(at_se, 0), mAtInfo.field_0x18);
|
||||
}
|
||||
@@ -148,6 +150,10 @@ void daE_MD_c::CheckHit() {
|
||||
|
||||
cCcD_Obj* hit_obj = mCyl.GetTgHitObj();
|
||||
fopAc_ac_c* hit_actor = dCc_GetAc(hit_obj->GetAc());
|
||||
//TODO: probably a fakematch (debug)
|
||||
UNUSED(hit_obj);
|
||||
UNUSED(hit_actor);
|
||||
|
||||
if ((hit_obj->ChkAtType(AT_TYPE_IRON_BALL) || fopAcM_GetName(hit_actor) == PROC_E_TH_BALL || fopAcM_GetName(hit_actor) == PROC_B_TN) && (mType == TYPE_DUMMY || mType == TYPE_LV9)) {
|
||||
if (mAction == ACTION_WAIT) {
|
||||
mCyl.OffTgIronBallRebound();
|
||||
@@ -164,8 +170,8 @@ void daE_MD_c::CheckHit() {
|
||||
|
||||
mBreakTimer = 10;
|
||||
Z2GetAudioMgr()->seStart(Z2SE_OBJ_ARMOR_HIT, ¤t.pos, 0, 0, 1.0f, 1.0f, -1.0f, -1.0f, 0);
|
||||
|
||||
u32 bu_params = (mSwbit << 0x18) | 0xFF0000 | 0x2FFF;
|
||||
|
||||
u32 bu_params = (mSwbit << 0x18) | 0xFF2FFF;
|
||||
if (mCanCreateBu && mType == TYPE_DUMMY) {
|
||||
fopAcM_create(PROC_E_BU, bu_params, ¤t.pos, fopAcM_GetRoomNo(this), &shape_angle, NULL, -1);
|
||||
}
|
||||
@@ -223,7 +229,7 @@ void daE_MD_c::HalfBreakAction() {
|
||||
}
|
||||
}
|
||||
|
||||
bool daE_MD_c::VibAction() {
|
||||
u8 daE_MD_c::VibAction() {
|
||||
shape_angle.x = field_0x5ca * cM_ssin(field_0x5ce);
|
||||
cLib_addCalcAngleS(&field_0x5cc, 0x10, 3.0f + nREG_F(3), 0x100, 0);
|
||||
field_0x5ce += field_0x5cc;
|
||||
@@ -313,7 +319,7 @@ int daE_MD_c::Execute() {
|
||||
return 1;
|
||||
}
|
||||
|
||||
int daE_MD_c::Delete() {
|
||||
inline int daE_MD_c::Delete() {
|
||||
dComIfG_resDelete(&mPhase, "E_MD");
|
||||
if (heap != NULL) {
|
||||
mpModelMorf->stopZelAnime();
|
||||
@@ -384,7 +390,7 @@ static int daE_MD_Execute(daE_MD_c* i_this) {
|
||||
return i_this->Execute();
|
||||
}
|
||||
|
||||
int daE_MD_c::create() {
|
||||
inline int daE_MD_c::create() {
|
||||
fopAcM_ct(this, daE_MD_c);
|
||||
|
||||
int phase_state = dComIfG_resLoad(&mPhase, "E_MD");
|
||||
@@ -396,7 +402,7 @@ int daE_MD_c::create() {
|
||||
|
||||
mSwbit = (fopAcM_GetParam(this) & 0xFF00) >> 8;
|
||||
|
||||
u8 type = fopAcM_GetParam(this) & 0xFF;
|
||||
u8 type = fopAcM_GetParam(this) & 0x0FFFFFFF;
|
||||
if (type == 1) {
|
||||
mType = TYPE_DUMMY;
|
||||
mCanCreateBu = TRUE;
|
||||
@@ -428,7 +434,7 @@ int daE_MD_c::create() {
|
||||
mAcchCir.SetWall(100.0f, 10.0f);
|
||||
fopAcM_setCullSizeBox(this, -1500.0f, 0.0f, -1500.0f, 1000.0f, 1500.0f, 1500.0f);
|
||||
mAcch.Set(fopAcM_GetPosition_p(this), fopAcM_GetOldPosition_p(this), this, 1, &mAcchCir, fopAcM_GetSpeed_p(this), NULL, NULL);
|
||||
|
||||
|
||||
cXyz sp1C(current.pos.x, 100.0f + current.pos.y, current.pos.z);
|
||||
if (fopAcM_gc_c::gndCheck(&sp1C)) {
|
||||
field_0x5bc = fopAcM_gc_c::getGroundY();
|
||||
@@ -458,18 +464,18 @@ static actor_method_class l_daE_MD_Method = {
|
||||
};
|
||||
|
||||
actor_process_profile_definition g_profile_E_MD = {
|
||||
fpcLy_CURRENT_e, // mLayerID
|
||||
7, // mListID
|
||||
fpcPi_CURRENT_e, // mListPrio
|
||||
PROC_E_MD, // mProcName
|
||||
&g_fpcLf_Method.base, // sub_method
|
||||
sizeof(daE_MD_c), // mSize
|
||||
0, // mSizeOther
|
||||
0, // mParameters
|
||||
&g_fopAc_Method.base, // sub_method
|
||||
132, // mPriority
|
||||
&l_daE_MD_Method, // sub_method
|
||||
0x00044100, // mStatus
|
||||
fopAc_ENV_e, // mActorType
|
||||
fopAc_CULLBOX_CUSTOM_e, // cullType
|
||||
};
|
||||
fpcLy_CURRENT_e, // mLayerID
|
||||
7, // mListID
|
||||
fpcPi_CURRENT_e, // mListPrio
|
||||
PROC_E_MD, // mProcName
|
||||
&g_fpcLf_Method.base, // sub_method
|
||||
sizeof(daE_MD_c), // mSize
|
||||
0, // mSizeOther
|
||||
0, // mParameters
|
||||
&g_fopAc_Method.base, // sub_method
|
||||
132, // mPriority
|
||||
&l_daE_MD_Method, // sub_method
|
||||
0x00044100, // mStatus
|
||||
fopAc_ENV_e, // mActorType
|
||||
fopAc_CULLBOX_CUSTOM_e, // cullType
|
||||
};
|
||||
|
||||
+104
-103
@@ -1658,7 +1658,7 @@ static void e_wb_b_run(e_wb_class* i_this) {
|
||||
|
||||
i_this->mMovementType = 1;
|
||||
break;
|
||||
case 3:
|
||||
case 3:
|
||||
i_this->mPursuitFlag = 1;
|
||||
target_speed = l_HIO.max_speed;
|
||||
acceleration = 3.0f;
|
||||
@@ -2461,7 +2461,7 @@ static int e_wb_damage(e_wb_class* i_this) {
|
||||
ANGLE_ADD(a_this->current.angle.y, cM_rndFX(3000.0f));
|
||||
i_this->mStatusFlags |= (u16)0x40;
|
||||
break;
|
||||
|
||||
|
||||
case 1:
|
||||
if (i_this->mAcch.ChkGroundHit()) {
|
||||
i_this->mActionMode = 2;
|
||||
@@ -2471,7 +2471,7 @@ static int e_wb_damage(e_wb_class* i_this) {
|
||||
i_this->field_0x6b4.y = (s16)cM_rndFX(2000.0f + YREG_F(4));
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
case 2:
|
||||
if (i_this->mpModelMorf->isStop()) {
|
||||
i_this->mActionMode = 3;
|
||||
@@ -2485,7 +2485,7 @@ static int e_wb_damage(e_wb_class* i_this) {
|
||||
i_this->field_0x698[0] = (s16)(cM_rndF(40.0f) + 70.0f);
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
case 3:
|
||||
local_48 = TRUE;
|
||||
if (i_this->mpModelMorf->isStop()) {
|
||||
@@ -2495,12 +2495,12 @@ static int e_wb_damage(e_wb_class* i_this) {
|
||||
anm_init(i_this, 0x13, 3.0f, 2, 1.0f);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (i_this->mAcch.ChkGroundHit()) {
|
||||
a_this->speedF = 0.0f;
|
||||
cLib_addCalcAngleS2(&i_this->field_0x6b4.y, 0, 1, 0x96 + YREG_S(3));
|
||||
}
|
||||
|
||||
|
||||
if (i_this->field_0x698[0] == 0 && i_this->field_0x6ae.x > -0x200) {
|
||||
if (i_this->field_0x6e4 == 0) {
|
||||
anm_init(i_this, 0x10, 2.0f, 0, 1.0f);
|
||||
@@ -2510,7 +2510,7 @@ static int e_wb_damage(e_wb_class* i_this) {
|
||||
i_this->mActionMode = 4;
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
case 4:
|
||||
if (i_this->mpModelMorf->isStop()) {
|
||||
i_this->mActionID = ACT_WAIT;
|
||||
@@ -2538,9 +2538,9 @@ static int e_wb_bg_damage(e_wb_class* i_this) {
|
||||
fopAc_ac_c* a_this = (fopAc_ac_c*)i_this;
|
||||
cXyz local_30, unused;
|
||||
BOOL return_value = FALSE;
|
||||
|
||||
|
||||
i_this->field_0x6a0 = 10;
|
||||
|
||||
|
||||
switch (i_this->mActionMode) {
|
||||
case 0:
|
||||
dKy_Sound_set(a_this->current.pos, 100, fopAcM_GetID(&i_this->mEnemy), 5);
|
||||
@@ -2550,7 +2550,7 @@ static int e_wb_bg_damage(e_wb_class* i_this) {
|
||||
i_this->mStatusFlags |= (u16)0x80;
|
||||
i_this->field_0x1432 = 0;
|
||||
break;
|
||||
|
||||
|
||||
case 1:
|
||||
if (i_this->mpModelMorf->isStop()) {
|
||||
i_this->mActionMode = 2;
|
||||
@@ -2558,7 +2558,7 @@ static int e_wb_bg_damage(e_wb_class* i_this) {
|
||||
i_this->field_0x698[0] = (s16)(cM_rndF(60.0f) + 150.0f);
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
case 2:
|
||||
return_value = TRUE;
|
||||
if (i_this->field_0x698[0] == 0) {
|
||||
@@ -2566,7 +2566,7 @@ static int e_wb_bg_damage(e_wb_class* i_this) {
|
||||
i_this->mActionMode = 3;
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
case 3:
|
||||
if (i_this->mpModelMorf->isStop()) {
|
||||
i_this->mActionID = ACT_WAIT;
|
||||
@@ -2574,7 +2574,7 @@ static int e_wb_bg_damage(e_wb_class* i_this) {
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
return return_value;
|
||||
}
|
||||
|
||||
@@ -2583,9 +2583,9 @@ static int e_wb_lr_damage(e_wb_class* i_this) {
|
||||
cXyz local_2c;
|
||||
cXyz local_38;
|
||||
BOOL return_value = FALSE;
|
||||
|
||||
|
||||
i_this->field_0x6a0 = 10;
|
||||
|
||||
|
||||
switch (i_this->mActionMode) {
|
||||
case 0: {
|
||||
if (cM_rndF(1.0f) < 0.5f || i_this->field_0x1720 != 0) {
|
||||
@@ -2683,7 +2683,7 @@ static int e_wb_lr_damage(e_wb_class* i_this) {
|
||||
|
||||
cLib_addCalc0(&a_this->speedF, 1.0f, 1.5f + YREG_F(11));
|
||||
i_this->field_0x6ae.y += i_this->field_0x6b4.y;
|
||||
|
||||
|
||||
return return_value;
|
||||
}
|
||||
|
||||
@@ -2701,15 +2701,15 @@ static void e_wb_kiba_start(e_wb_class* i_this) {
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
cLib_addCalc2(&a_this->speedF, target, 1.0f, 5.0f);
|
||||
}
|
||||
|
||||
static void e_wb_kiba_end(e_wb_class* i_this) {
|
||||
fopAc_ac_c* a_this = (fopAc_ac_c*)i_this;
|
||||
|
||||
|
||||
i_this->field_0x6a0 = 10;
|
||||
|
||||
|
||||
switch (i_this->mActionMode) {
|
||||
case 0:
|
||||
if (i_this->mAnmID != 0x20) {
|
||||
@@ -2718,7 +2718,7 @@ static void e_wb_kiba_end(e_wb_class* i_this) {
|
||||
i_this->mActionMode = 1;
|
||||
i_this->field_0x169e = 1;
|
||||
break;
|
||||
|
||||
|
||||
case 1:
|
||||
i_this->mMovementType = 1;
|
||||
i_this->mAnimDuration = 60.0f + YREG_F(10);
|
||||
@@ -2734,14 +2734,14 @@ static void e_wb_kiba_end(e_wb_class* i_this) {
|
||||
i_this->mStatusFlags |= (u16)0x100;
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
case 2:
|
||||
if (a_this->speed.y < 10.0f) {
|
||||
anm_init(i_this, 0x19, 10.0f, 0, 1.0f);
|
||||
i_this->mActionMode = 3;
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
case 3:
|
||||
if (i_this->mAnmID == 0x19) {
|
||||
if (a_this->speed.y < -30.0f + JREG_F(9) || i_this->mAcch.ChkGroundHit()) {
|
||||
@@ -2758,25 +2758,25 @@ static void e_wb_kiba_end(e_wb_class* i_this) {
|
||||
case 4:
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
cLib_addCalc2(&a_this->speedF, 40.0f, 1.0f, 5.0f);
|
||||
}
|
||||
|
||||
static void damage_check(e_wb_class* i_this) {
|
||||
fopAc_ac_c* a_this = (fopAc_ac_c*)i_this;
|
||||
fopAc_ac_c* player = dComIfGp_getPlayer(0);
|
||||
|
||||
|
||||
a_this->health = 100;
|
||||
|
||||
|
||||
if (i_this->field_0x6ba != 0) {
|
||||
i_this->field_0x6ba--;
|
||||
}
|
||||
|
||||
|
||||
for (int i = 0; i <= 2; i++) {
|
||||
if (i_this->field_0xa00[i].ChkCoHit()) {
|
||||
fopAc_ac_c* hit_actor = dCc_GetAc(i_this->field_0xa00[i].GetCoHitObj()->GetAc());
|
||||
|
||||
if (!daAlink_getAlinkActorClass()->checkBoarRideOwn(a_this) &&
|
||||
if (!daAlink_getAlinkActorClass()->checkBoarRideOwn(a_this) &&
|
||||
i_this->field_0x6a0 == 0 && a_this->speedF < 1.0f &&
|
||||
fopAcM_GetName(hit_actor) == PROC_ALINK) {
|
||||
ANGLE_ADD(i_this->field_0x6ba, 2);
|
||||
@@ -2806,7 +2806,7 @@ static void damage_check(e_wb_class* i_this) {
|
||||
if (i_this->field_0x79d >= 2 && a_this->speedF >= 30.0f) {
|
||||
i_this->mZ2Ride.startCreatureVoice(Z2SE_EN_RDB_V_RUNDOWN, -1);
|
||||
i_this->mZ2Ride.startCreatureSound(Z2SE_EN_BB_RUNDOWN, 0, -1);
|
||||
|
||||
|
||||
e_rd_class* rider = (e_rd_class*)fopAcM_SearchByID(i_this->field_0x1434);
|
||||
rider->field_0x998 = 20;
|
||||
} else {
|
||||
@@ -2821,7 +2821,7 @@ static void damage_check(e_wb_class* i_this) {
|
||||
{
|
||||
cXyz pos_diff = hit_actor->current.pos - a_this->current.pos;
|
||||
s16 angle = cM_atan2s(pos_diff.x, pos_diff.z) - a_this->shape_angle.y;
|
||||
|
||||
|
||||
if (angle < 0) {
|
||||
i_this->field_0x5de = 0x1000;
|
||||
ANGLE_ADD(a_this->current.angle.y, 0x800);
|
||||
@@ -2835,16 +2835,16 @@ static void damage_check(e_wb_class* i_this) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
i_this->mStts.Move();
|
||||
|
||||
|
||||
if (i_this->field_0x6a0 == 0) {
|
||||
dCcU_AtInfo at_info;
|
||||
|
||||
|
||||
for (int i = 0; i <= 6; i++) {
|
||||
if (i_this->field_0xa00[i].ChkTgHit()) {
|
||||
i_this->field_0x13c0.mpCollider = i_this->field_0xa00[i].GetTgHitObj();
|
||||
|
||||
|
||||
if (i_this->field_0x79d != 0 || (daPy_getPlayerActorClass()->checkHorseRide() &&
|
||||
(i_this->mStatusFlags & 3) != 0)) {
|
||||
if (i_this->field_0x79d != 0) {
|
||||
@@ -2853,7 +2853,7 @@ static void damage_check(e_wb_class* i_this) {
|
||||
} else {
|
||||
at_power_check(&i_this->field_0x13c0);
|
||||
cc_at_check(a_this, &i_this->field_0x13c0);
|
||||
|
||||
|
||||
if ((i_this->mStatusFlags & 3) != 0) {
|
||||
if (i_this->field_0x13c0.mAttackPower < 30) {
|
||||
i_this->field_0x692 = i_this->mActionID;
|
||||
@@ -2867,13 +2867,13 @@ static void damage_check(e_wb_class* i_this) {
|
||||
i_this->mActionMode = 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (i_this->field_0x13c0.mpCollider->ChkAtType(AT_TYPE_UNK)) {
|
||||
i_this->field_0x6a0 = 20;
|
||||
} else {
|
||||
i_this->field_0x6a0 = 10;
|
||||
}
|
||||
|
||||
|
||||
i_this->mAnimDuration = 30.0f;
|
||||
return;
|
||||
}
|
||||
@@ -2887,19 +2887,19 @@ static void effect_set(e_wb_class* i_this) {
|
||||
cXyz effect_pos;
|
||||
dBgS_GndChk gnd_chk;
|
||||
dBgS_ObjGndChk_Spl obj_gnd_chk;
|
||||
|
||||
|
||||
pos = a_this->current.pos;
|
||||
pos.y += 100.0f;
|
||||
gnd_chk.SetPos(&pos);
|
||||
obj_gnd_chk.SetPos(&pos);
|
||||
|
||||
|
||||
s8 is_water = false;
|
||||
s8 in_water = false;
|
||||
f32 ground_y = dComIfG_Bgsp().GroundCross(&gnd_chk);
|
||||
if (dComIfG_Bgsp().GroundCross(&obj_gnd_chk) - ground_y > 0.0f) {
|
||||
is_water = true;
|
||||
}
|
||||
|
||||
|
||||
if (i_this->mMovementType == 1) {
|
||||
if (i_this->mpModelMorf->checkFrame(11.0f)) {
|
||||
i_this->mCollisionFlags |= (u8)4;
|
||||
@@ -2910,7 +2910,7 @@ static void effect_set(e_wb_class* i_this) {
|
||||
pos.set(0.0f, 0.0f, 0.0f);
|
||||
J3DModel* model = i_this->mpModelMorf->getModel();
|
||||
int foot_idx = (i_this->field_0x68e & 2) >> 1;
|
||||
|
||||
|
||||
static int footd[2] = {
|
||||
6,
|
||||
10,
|
||||
@@ -2927,49 +2927,49 @@ static void effect_set(e_wb_class* i_this) {
|
||||
MTXCopy(model->getAnmMtx(footd[foot_idx]), *calc_mtx);
|
||||
}
|
||||
MtxPosition(&pos, &effect_pos);
|
||||
|
||||
|
||||
if (is_water) {
|
||||
in_water = true;
|
||||
} else if ((i_this->field_0x68e & 1) == 0) {
|
||||
fopAcM_effSmokeSet2(&i_this->field_0x13e8[foot_idx],
|
||||
fopAcM_effSmokeSet2(&i_this->field_0x13e8[foot_idx],
|
||||
&i_this->field_0x1408[foot_idx], &effect_pos, &a_this->shape_angle, a_this->scale.z * 2.0f, &a_this->tevStr);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (i_this->mCollisionFlags != 0) {
|
||||
J3DModel* model = i_this->mpModelMorf->getModel();
|
||||
pos.set(0.0f, 0.0f, 0.0f);
|
||||
|
||||
|
||||
if ((i_this->mCollisionFlags & 1) != 0) {
|
||||
MTXCopy(model->getAnmMtx(10), *calc_mtx);
|
||||
MtxPosition(&pos, &effect_pos);
|
||||
if (is_water) {
|
||||
in_water = true;
|
||||
} else {
|
||||
fopAcM_effSmokeSet2(i_this->field_0x13e8 + 1,
|
||||
fopAcM_effSmokeSet2(i_this->field_0x13e8 + 1,
|
||||
i_this->field_0x1408 + 1, &effect_pos, &a_this->shape_angle, a_this->scale.z * 2.0f, &a_this->tevStr);
|
||||
if (i_this->mMovementType != 0) {
|
||||
i_this->field_0x13fc = dComIfGp_particle_set(i_this->field_0x13fc, dPa_RM(ID_ZI_S_WBCLOD_A),
|
||||
i_this->field_0x13fc = dComIfGp_particle_set(i_this->field_0x13fc, dPa_RM(ID_ZI_S_WBCLOD_A),
|
||||
&effect_pos, &a_this->shape_angle, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if ((i_this->mCollisionFlags & 2) != 0) {
|
||||
MTXCopy(model->getAnmMtx(6), *calc_mtx);
|
||||
MtxPosition(&pos, &effect_pos);
|
||||
if (is_water) {
|
||||
in_water = true;
|
||||
} else {
|
||||
fopAcM_effSmokeSet2(i_this->field_0x13e8,
|
||||
fopAcM_effSmokeSet2(i_this->field_0x13e8,
|
||||
i_this->field_0x1408, &effect_pos, &a_this->shape_angle, a_this->scale.z * 2.0f, &a_this->tevStr);
|
||||
if (i_this->mMovementType != 0) {
|
||||
i_this->field_0x13f8 = dComIfGp_particle_set(i_this->field_0x13f8, dPa_RM(ID_ZI_S_WBCLOD_A),
|
||||
i_this->field_0x13f8 = dComIfGp_particle_set(i_this->field_0x13f8, dPa_RM(ID_ZI_S_WBCLOD_A),
|
||||
&effect_pos, &a_this->shape_angle, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if ((i_this->mCollisionFlags & 4) != 0) {
|
||||
if (i_this->field_0x79d != 0) {
|
||||
MTXCopy(model->getAnmMtx(29), *calc_mtx);
|
||||
@@ -2980,15 +2980,15 @@ static void effect_set(e_wb_class* i_this) {
|
||||
if (is_water) {
|
||||
in_water = true;
|
||||
} else {
|
||||
fopAcM_effSmokeSet2(&i_this->field_0x13f0,
|
||||
fopAcM_effSmokeSet2(&i_this->field_0x13f0,
|
||||
&i_this->field_0x1410, &effect_pos, &a_this->shape_angle, a_this->scale.z * 2.0f, &a_this->tevStr);
|
||||
if (i_this->mMovementType != 0) {
|
||||
i_this->field_0x1400 = dComIfGp_particle_set(i_this->field_0x1400, dPa_RM(ID_ZI_S_WBCLOD_A),
|
||||
i_this->field_0x1400 = dComIfGp_particle_set(i_this->field_0x1400, dPa_RM(ID_ZI_S_WBCLOD_A),
|
||||
&effect_pos, &a_this->shape_angle, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if ((i_this->mCollisionFlags & 8) != 0) {
|
||||
if (i_this->field_0x79d != 0) {
|
||||
MTXCopy(model->getAnmMtx(24), *calc_mtx);
|
||||
@@ -2999,16 +2999,16 @@ static void effect_set(e_wb_class* i_this) {
|
||||
if (is_water) {
|
||||
in_water = true;
|
||||
} else {
|
||||
fopAcM_effSmokeSet2(&i_this->field_0x13f4,
|
||||
fopAcM_effSmokeSet2(&i_this->field_0x13f4,
|
||||
&i_this->field_0x1414, &effect_pos, &a_this->shape_angle, a_this->scale.z * 2.0f, &a_this->tevStr);
|
||||
if (i_this->mMovementType != 0) {
|
||||
i_this->field_0x1404 = dComIfGp_particle_set(i_this->field_0x1404, dPa_RM(ID_ZI_S_WBCLOD_A),
|
||||
i_this->field_0x1404 = dComIfGp_particle_set(i_this->field_0x1404, dPa_RM(ID_ZI_S_WBCLOD_A),
|
||||
&effect_pos, &a_this->shape_angle, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (i_this->mLandingFlag != 0) {
|
||||
if (is_water) {
|
||||
in_water = true;
|
||||
@@ -3017,11 +3017,11 @@ static void effect_set(e_wb_class* i_this) {
|
||||
MTXCopy(i_this->mpModelMorf->getModel()->getAnmMtx(i_this->field_0x688 + 0xb),
|
||||
*calc_mtx);
|
||||
MtxPosition(&pos, &effect_pos);
|
||||
fopAcM_effSmokeSet1(&i_this->field_0x1418,
|
||||
fopAcM_effSmokeSet1(&i_this->field_0x1418,
|
||||
&i_this->field_0x141c, &effect_pos, NULL, a_this->scale.z * 2.0f, &a_this->tevStr, 1);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (in_water) {
|
||||
f32 v = 2.0f;
|
||||
cXyz scale(v, v, v);
|
||||
@@ -3038,21 +3038,21 @@ static void effect_set(e_wb_class* i_this) {
|
||||
dPa_RM(ID_ZI_S_ENEMY_DOWNWTRA_B),
|
||||
dPa_RM(ID_ZI_S_ENEMY_DOWNWTRA_C),
|
||||
};
|
||||
|
||||
|
||||
for (int i = 0; i < 3; i++) {
|
||||
if (i_this->mMovementType == 2) {
|
||||
i_this->field_0x1420[i] = dComIfGp_particle_set(i_this->field_0x1420[i],
|
||||
i_this->field_0x1420[i] = dComIfGp_particle_set(i_this->field_0x1420[i],
|
||||
w_eff_name2[i], &effect_pos, &a_this->tevStr, &angle, &scale, 0xff, 0, -1, 0, 0, 0);
|
||||
} else {
|
||||
i_this->field_0x1420[i] = dComIfGp_particle_set(i_this->field_0x1420[i],
|
||||
i_this->field_0x1420[i] = dComIfGp_particle_set(i_this->field_0x1420[i],
|
||||
w_eff_name[i], &effect_pos, &a_this->tevStr, &angle, &scale, 0xff, 0, -1, 0, 0, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (is_water && i_this->field_0x1721 != 0) {
|
||||
static cXyz sc(4.0f, 4.0f, 4.0f);
|
||||
|
||||
|
||||
for (int i = 0; i < 4; i++) {
|
||||
static u16 w_eff_id[4] = {
|
||||
ID_ZI_J_DOWNWTRA_A,
|
||||
@@ -3061,13 +3061,13 @@ static void effect_set(e_wb_class* i_this) {
|
||||
ID_ZI_J_DOWNWTRA_D,
|
||||
};
|
||||
|
||||
i_this->field_0x17d0[i] = dComIfGp_particle_set(i_this->field_0x17d0[i],
|
||||
i_this->field_0x17d0[i] = dComIfGp_particle_set(i_this->field_0x17d0[i],
|
||||
w_eff_id[i], &a_this->current.pos, &a_this->tevStr, &a_this->shape_angle,
|
||||
&sc, 0xff, 0, -1, 0, 0, 0);
|
||||
}
|
||||
i_this->field_0x1721 = 0;
|
||||
}
|
||||
|
||||
|
||||
i_this->mMovementType = 0;
|
||||
i_this->mCollisionFlags = 0;
|
||||
i_this->mLandingFlag = 0;
|
||||
@@ -3077,7 +3077,7 @@ static void wb_rd_reset(e_wb_class* i_this) {
|
||||
fopAc_ac_c* a_this = (fopAc_ac_c*)i_this;
|
||||
fopAc_ac_c* player = dComIfGp_getPlayer(0);
|
||||
cXyz pos = a_this->current.pos;
|
||||
|
||||
|
||||
if (i_this->mParam2 == 1 || i_this->mParam2 == 2) {
|
||||
fopAcM_create(PROC_E_RD, 0xff010301, &pos, fopAcM_GetRoomNo(a_this), &player->shape_angle, 0, -1);
|
||||
fopAcM_create(PROC_E_RD, 0xff010302, &pos, fopAcM_GetRoomNo(a_this), &player->shape_angle, 0, -1);
|
||||
@@ -3229,7 +3229,7 @@ static s8 e_wb_c_run(e_wb_class* i_this) {
|
||||
i_this->field_0x17e1 = 1;
|
||||
}
|
||||
} break;
|
||||
|
||||
|
||||
case 2: {
|
||||
if (i_this->field_0x7a6 == 0) {
|
||||
anm_init(i_this, 0x1b, 3.0f, 0, 1.0f);
|
||||
@@ -3288,7 +3288,7 @@ static s8 e_wb_c_run(e_wb_class* i_this) {
|
||||
i_this->field_0x5d0 = sp88;
|
||||
}
|
||||
|
||||
|
||||
|
||||
if (!behind_obstacle) {
|
||||
static cXyz sh_pos[3] = {
|
||||
cXyz(400.0f, 200.0f, 200.0f),
|
||||
@@ -3324,7 +3324,7 @@ static s8 e_wb_c_run(e_wb_class* i_this) {
|
||||
sp94 = i_this->field_0x5c4 - a_this->current.pos;
|
||||
|
||||
f32 dist = JMAFastSqrt(sp94.x * sp94.x + sp94.z * sp94.z);
|
||||
|
||||
|
||||
if (dist < 500.0f) {
|
||||
target_speed = l_HIO.normal_speed_vi;
|
||||
} else if (dist > 3000.0f && i_this->field_0x5bf) {
|
||||
@@ -3718,7 +3718,7 @@ static void demo_camera(e_wb_class* i_this) {
|
||||
rdb = (e_rdb_class*)fopAcM_SearchByName(PROC_E_RDB);
|
||||
}
|
||||
cXyz local_3c, cStack_48, cStack_54, cStack_60;
|
||||
|
||||
|
||||
switch (i_this->field_0x169e) {
|
||||
case 1: {
|
||||
if (!a_this->eventInfo.checkCommandDemoAccrpt()) {
|
||||
@@ -3740,7 +3740,7 @@ static void demo_camera(e_wb_class* i_this) {
|
||||
i_this->field_0x1704 = 0x2000 + XREG_S(0);
|
||||
daPy_getPlayerActorClass()->changeOriginalDemo();
|
||||
horse->changeOriginalDemo();
|
||||
fpcM_Search(s_wbdel_sub, a_this);
|
||||
fpcM_Search(s_wbdel_sub, i_this);
|
||||
dComIfGp_getEvent()->startCheckSkipEdge(a_this);
|
||||
}
|
||||
// fallthrough
|
||||
@@ -3999,7 +3999,8 @@ static void demo_camera(e_wb_class* i_this) {
|
||||
dComIfGp_event_reset();
|
||||
i_this->field_0x169e = 0;
|
||||
}
|
||||
} break;
|
||||
break;
|
||||
}
|
||||
case 0x19: {
|
||||
if (!a_this->eventInfo.checkCommandDemoAccrpt()) {
|
||||
fopAcM_orderPotentialEvent(a_this, 2, 0xffff, 0);
|
||||
@@ -4454,7 +4455,7 @@ static void demo_camera(e_wb_class* i_this) {
|
||||
} else {
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
// fallthrough
|
||||
case 0x34: {
|
||||
cLib_addCalc0(&rdb->field_0x6e0, 1.0f, 0.3f + KREG_F(3));
|
||||
@@ -4993,7 +4994,7 @@ static void demo_camera(e_wb_class* i_this) {
|
||||
static void anm_se_eff_set(e_wb_class* i_this) {
|
||||
fopAc_ac_c* a_this = (fopAc_ac_c*)i_this;
|
||||
J3DModel* model = i_this->mpModelMorf->getModel();
|
||||
|
||||
|
||||
if (i_this->mAnmID == 12 || i_this->mAnmID == 13) {
|
||||
if (i_this->mpModelMorf->checkFrame(9.0f)) {
|
||||
i_this->mZ2Ride.startCreatureSound(Z2SE_CM_BODYFALL_L, 0, -1);
|
||||
@@ -5001,19 +5002,19 @@ static void anm_se_eff_set(e_wb_class* i_this) {
|
||||
}
|
||||
} else if (i_this->mAnmID == 38) {
|
||||
i_this->field_0x17c4 = dComIfGp_particle_set(
|
||||
i_this->field_0x17c4, dPa_RM(ID_ZI_S_BB_STARTHANAIKI),
|
||||
i_this->field_0x17c4, dPa_RM(ID_ZI_S_BB_STARTHANAIKI),
|
||||
&a_this->current.pos, &a_this->tevStr);
|
||||
|
||||
JPABaseEmitter* emitter = dComIfGp_particle_getEmitter(i_this->field_0x17c4);
|
||||
if (emitter != NULL) {
|
||||
emitter->setGlobalSRTMatrix(model->getAnmMtx(15));
|
||||
}
|
||||
|
||||
|
||||
if (i_this->mpModelMorf->checkFrame(1.0f)) {
|
||||
cXyz scale(a_this->scale.z, a_this->scale.z, a_this->scale.z);
|
||||
dComIfGp_particle_set(dPa_RM(ID_ZI_S_BB_STARTCLOD), &a_this->current.pos,
|
||||
dComIfGp_particle_set(dPa_RM(ID_ZI_S_BB_STARTCLOD), &a_this->current.pos,
|
||||
&a_this->tevStr, &a_this->shape_angle, &scale);
|
||||
dComIfGp_particle_set(dPa_RM(ID_ZI_S_BB_STARTFOOTMARK), &a_this->current.pos,
|
||||
dComIfGp_particle_set(dPa_RM(ID_ZI_S_BB_STARTFOOTMARK), &a_this->current.pos,
|
||||
&a_this->tevStr, &a_this->shape_angle, &scale);
|
||||
}
|
||||
} else if (i_this->mAnmID == 5) {
|
||||
@@ -5084,7 +5085,7 @@ static void anm_se_eff_set(e_wb_class* i_this) {
|
||||
i_this->mZ2Ride.startCreatureVoice(Z2SE_EN_WB_V_BREATH, -1);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Special sound effects for the leader Bulblin
|
||||
if (i_this->field_0x79d != 0) {
|
||||
if (i_this->mAnmID == 0x20 || i_this->mAnmID == 0x21) {
|
||||
@@ -5113,7 +5114,7 @@ static int c_start;
|
||||
static f32 dummy(){return 35.f;}
|
||||
#endif
|
||||
|
||||
static int daE_WB_Execute(e_wb_class* i_this) {
|
||||
static int daE_WB_Execute(e_wb_class* i_this) {
|
||||
if (c_start == 0) {
|
||||
if (dComIfGp_event_runCheck()) {
|
||||
if (lbl_244_bss_46 != 0 || cDmrNowMidnaTalk()) {
|
||||
@@ -5121,7 +5122,7 @@ static int daE_WB_Execute(e_wb_class* i_this) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (i_this->field_0x169e == 1000) {
|
||||
return 1;
|
||||
}
|
||||
@@ -5130,47 +5131,47 @@ static int daE_WB_Execute(e_wb_class* i_this) {
|
||||
|
||||
cXyz local_130;
|
||||
cXyz local_13c;
|
||||
|
||||
|
||||
a_this->scale.z = l_HIO.base_size;
|
||||
|
||||
|
||||
if (fopAcM_CheckCondition(a_this, fopAcCnd_NODRAW_e)) {
|
||||
i_this->field_0x5bf = 1;
|
||||
} else {
|
||||
i_this->field_0x5bf = 0;
|
||||
}
|
||||
|
||||
|
||||
if (i_this->field_0x79d != 0) {
|
||||
a_this->scale.z = a_this->scale.z * l_HIO.leader_size_ratio;
|
||||
}
|
||||
|
||||
|
||||
i_this->field_0x68e++;
|
||||
|
||||
|
||||
if (i_this->field_0x1430 == 0) {
|
||||
fopAcM_OffStatus(a_this, 0);
|
||||
a_this->attention_info.flags = 0;
|
||||
i_this->mStatusFlags &= (u16)3;
|
||||
|
||||
|
||||
for (int i = 0; i < 4; i++) {
|
||||
if (i_this->field_0x698[i] != 0) {
|
||||
i_this->field_0x698[i]--;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (i_this->field_0x6a0 != 0) {
|
||||
i_this->field_0x6a0--;
|
||||
}
|
||||
|
||||
|
||||
if (i_this->field_0x1432 != 0) {
|
||||
i_this->field_0x1432--;
|
||||
}
|
||||
|
||||
|
||||
action(i_this);
|
||||
}
|
||||
|
||||
|
||||
if (i_this->field_0x79d != 0 || i_this->field_0x169e != 0) {
|
||||
demo_camera(i_this);
|
||||
}
|
||||
|
||||
|
||||
if (i_this->field_0x1430 != 0) {
|
||||
a_this->eyePos = a_this->current.pos;
|
||||
return 1;
|
||||
@@ -5185,7 +5186,7 @@ static int daE_WB_Execute(e_wb_class* i_this) {
|
||||
a_this->current.pos.z += move_p->z * move_scale;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if ((i_this->field_0x5bf == 0) && !dComIfGp_event_runCheck()) {
|
||||
s16 wall_check = e_wb_wall_check(i_this);
|
||||
if (wall_check != 0 && wall_check > -0x2000 && wall_check < 0x2000) {
|
||||
@@ -5211,18 +5212,18 @@ static int daE_WB_Execute(e_wb_class* i_this) {
|
||||
i_this->mActionMode = 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (i_this->mActionID != ACT_PL_RIDE2) {
|
||||
a_this->current.pos = a_this->old.pos;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
dBgS_LinChk linChk;
|
||||
cXyz pos1;
|
||||
pos1 = a_this->current.pos;
|
||||
pos1.y += 100.0f;
|
||||
linChk.Set(&pos1, &a_this->eyePos, a_this);
|
||||
|
||||
|
||||
if (dComIfG_Bgsp().LineCross(&linChk)) {
|
||||
cMtx_YrotS(*calc_mtx, a_this->shape_angle.y);
|
||||
local_130.x = 0.0f;
|
||||
@@ -5230,29 +5231,29 @@ static int daE_WB_Execute(e_wb_class* i_this) {
|
||||
local_130.z = KREG_F(11) + -20.0f;
|
||||
MtxPosition(&local_130, &local_13c);
|
||||
a_this->current.pos += local_13c;
|
||||
|
||||
|
||||
if (i_this->mActionID != ACT_PL_RIDE2) {
|
||||
a_this->speedF = 0.0f;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
i_this->mAcch.CrrPos(dComIfG_Bgsp());
|
||||
cLib_addCalcAngleS2(&a_this->shape_angle.y, a_this->current.angle.y, 4, 0x2000);
|
||||
|
||||
|
||||
if (i_this->mAcch.ChkGroundHit()) {
|
||||
dBgS_GndChk gndChk;
|
||||
Vec local_154;
|
||||
cXyz pos2;
|
||||
|
||||
|
||||
cMtx_YrotS(*calc_mtx, a_this->shape_angle.y);
|
||||
local_130.x = 0.0f;
|
||||
local_130.y = 200.0f;
|
||||
local_130.z = 100.0f;
|
||||
MtxPosition(&local_130, &local_13c);
|
||||
local_13c += a_this->current.pos;
|
||||
|
||||
|
||||
local_130.z = -100.0f;
|
||||
MtxPosition(&local_130, &pos2);
|
||||
pos2 += a_this->current.pos;
|
||||
@@ -5263,14 +5264,14 @@ static int daE_WB_Execute(e_wb_class* i_this) {
|
||||
|
||||
gndChk.SetPos(&local_154);
|
||||
local_13c.y = dComIfG_Bgsp().GroundCross(&gndChk);
|
||||
|
||||
|
||||
local_154.x = pos2.x;
|
||||
local_154.y = pos2.y;
|
||||
local_154.z = pos2.z;
|
||||
|
||||
gndChk.SetPos(&local_154);
|
||||
pos2.y = dComIfG_Bgsp().GroundCross(&gndChk);
|
||||
|
||||
|
||||
if (fabsf(local_13c.y - pos2.y) <= 200.0f) {
|
||||
a_this->current.angle.x = -cM_atan2s(local_13c.y - pos2.y, 200.0f);
|
||||
}
|
||||
|
||||
+19
-11
@@ -409,6 +409,8 @@ cPhs_Step daNpc_grO_c::create() {
|
||||
cPhs_Step phase;
|
||||
int res = 0;
|
||||
int i = 0;
|
||||
J3DModelData* mdlData_p;
|
||||
int sp10 = i;
|
||||
for (; l_loadRes_list[mType][i] >= 0; i++) {
|
||||
phase = dComIfG_resLoad(&mPhases[i], l_resNames[l_loadRes_list[mType][i]]);
|
||||
if (phase == cPhs_ERROR_e || phase == cPhs_UNK3_e) {
|
||||
@@ -429,7 +431,7 @@ cPhs_Step daNpc_grO_c::create() {
|
||||
return cPhs_ERROR_e;
|
||||
}
|
||||
|
||||
J3DModelData* mdlData_p = mAnm_p->getModel()->getModelData();
|
||||
mdlData_p = mAnm_p->getModel()->getModelData();
|
||||
fopAcM_SetMtx(this, mAnm_p->getModel()->getBaseTRMtx());
|
||||
fopAcM_setCullSizeBox(this, -300.0f, -50.0f, -300.0f, 300.0f, 450.0f, 300.0f);
|
||||
mSound.init(¤t.pos, &eyePos, 3, 1);
|
||||
@@ -535,7 +537,8 @@ int daNpc_grO_c::Draw() {
|
||||
}
|
||||
|
||||
int daNpc_grO_c::ctrlJoint(J3DJoint* i_joint, J3DModel* i_model) {
|
||||
int jntNo = i_joint->getJntNo();
|
||||
J3DJoint* joint = i_joint;
|
||||
int jntNo = joint->getJntNo();
|
||||
int i_jointList[3] = {JNT_BACKBONE1, JNT_NECK, JNT_HEAD};
|
||||
|
||||
if (jntNo == JNT_CENTER) {
|
||||
@@ -566,7 +569,7 @@ int daNpc_grO_c::ctrlJoint(J3DJoint* i_joint, J3DModel* i_model) {
|
||||
}
|
||||
|
||||
i_model->setAnmMtx(jntNo, mDoMtx_stack_c::get());
|
||||
MTXCopy(mDoMtx_stack_c::get(), J3DSys::mCurrentMtx);
|
||||
cMtx_copy(mDoMtx_stack_c::get(), J3DSys::mCurrentMtx);
|
||||
|
||||
if ((jntNo == JNT_HEAD || jntNo == JNT_MOUTH) && (mAnmFlags & ANM_PLAY_BCK) != 0) {
|
||||
J3DAnmTransform* anm = mBckAnm.getBckAnm();
|
||||
@@ -632,6 +635,8 @@ void daNpc_grO_c::setParam() {
|
||||
}
|
||||
|
||||
BOOL daNpc_grO_c::main() {
|
||||
u16 mapToolId = 0xFFFF;
|
||||
|
||||
if (!doEvent()) {
|
||||
doNormalAction(1);
|
||||
}
|
||||
@@ -640,12 +645,14 @@ BOOL daNpc_grO_c::main() {
|
||||
attention_info.flags = 0;
|
||||
}
|
||||
|
||||
if (!mpHIO->m.common.debug_mode_ON && (!dComIfGp_event_runCheck() || (mOrderNewEvt && dComIfGp_getEvent()->isOrderOK()))) {
|
||||
if (!mpHIO->m.common.debug_mode_ON &&
|
||||
(!dComIfGp_event_runCheck() || (mOrderNewEvt && dComIfGp_getEvent()->isOrderOK()))) {
|
||||
if (mOrderEvtNo != EVT_NONE) {
|
||||
eventInfo.setArchiveName(l_resNames[l_evtGetParamList[mOrderEvtNo].arcIdx]);
|
||||
}
|
||||
|
||||
orderEvent(mUnkFlag, l_evtNames[l_evtGetParamList[mOrderEvtNo].fileIdx], 0xFFFF, 40, 0xFF, 1);
|
||||
orderEvent(mUnkFlag, l_evtNames[l_evtGetParamList[mOrderEvtNo].fileIdx], mapToolId, 40,
|
||||
0xFF, 1);
|
||||
}
|
||||
|
||||
if (field_0x9ee) {
|
||||
@@ -1287,11 +1294,12 @@ void daNpc_grO_c::doNormalAction(int param_1) {
|
||||
}
|
||||
|
||||
BOOL daNpc_grO_c::doEvent() {
|
||||
int evtCutNo = 0;
|
||||
dEvent_manager_c* eventManager = NULL;
|
||||
int evtCutNo;
|
||||
BOOL rv = FALSE;
|
||||
|
||||
if (dComIfGp_event_runCheck()) {
|
||||
dEvent_manager_c& eventManager = dComIfGp_getEventManager();
|
||||
eventManager = &dComIfGp_getEventManager();
|
||||
|
||||
if ((eventInfo.checkCommandTalk() || eventInfo.checkCommandDemoAccrpt()) && !mUnkFlag) {
|
||||
mOrderNewEvt = false;
|
||||
@@ -1311,22 +1319,22 @@ BOOL daNpc_grO_c::doEvent() {
|
||||
mItemID = fpcM_ERROR_PROCESS_ID_e;
|
||||
}
|
||||
|
||||
int staffId = eventManager.getMyStaffId(l_myName, NULL, 0);
|
||||
int staffId = eventManager->getMyStaffId(l_myName, NULL, 0);
|
||||
if (staffId != -1) {
|
||||
mStaffID = staffId;
|
||||
evtCutNo = eventManager.getMyActIdx(staffId, mEvtCutNameList, 3, 0, 0);
|
||||
evtCutNo = eventManager->getMyActIdx(staffId, mEvtCutNameList, 3, 0, 0);
|
||||
|
||||
JUT_ASSERT(1844, (0 <= evtCutNo) && (evtCutNo < NUM_EVT_CUTS_e));
|
||||
JUT_ASSERT(1845, NULL != mEvtCutList[evtCutNo]);
|
||||
|
||||
if ((this->*mEvtCutList[evtCutNo])(staffId)) {
|
||||
eventManager.cutEnd(staffId);
|
||||
eventManager->cutEnd(staffId);
|
||||
}
|
||||
|
||||
rv = TRUE;
|
||||
}
|
||||
|
||||
if (eventInfo.checkCommandDemoAccrpt() && mEventIdx != -1 && eventManager.endCheck(mEventIdx) != 0) {
|
||||
if (eventInfo.checkCommandDemoAccrpt() && mEventIdx != -1 && eventManager->endCheck(mEventIdx) != 0) {
|
||||
switch (mOrderEvtNo) {
|
||||
default:
|
||||
break;
|
||||
|
||||
@@ -14,9 +14,11 @@
|
||||
|
||||
static int nodeCallBack(J3DJoint* i_joint, int param_1) {
|
||||
if (param_1 == 0) {
|
||||
int jnt_no = i_joint->getJntNo();
|
||||
J3DJoint* joint = i_joint;
|
||||
int jnt_no = joint->getJntNo();
|
||||
J3DModel* model = j3dSys.getModel();
|
||||
npc_inko_class* i_this = (npc_inko_class*)model->getUserArea();
|
||||
npc_inko_class* sp10 = i_this;
|
||||
|
||||
if (i_this != NULL) {
|
||||
MTXCopy(model->getAnmMtx(jnt_no), *calc_mtx);
|
||||
@@ -54,16 +56,22 @@ static int nodeCallBack(J3DJoint* i_joint, int param_1) {
|
||||
static int daNpc_Inko_Draw(npc_inko_class* i_this) {
|
||||
fopAc_ac_c* actor = &i_this->actor;
|
||||
g_env_light.settingTevStruct(0, &actor->current.pos, &actor->tevStr);
|
||||
g_env_light.setLightTevColorType_MAJI(i_this->anm_p->getModel(), &actor->tevStr);
|
||||
J3DModel* model = i_this->anm_p->getModel();
|
||||
g_env_light.setLightTevColorType_MAJI(model, &actor->tevStr);
|
||||
i_this->anm_p->entryDL();
|
||||
return 1;
|
||||
}
|
||||
|
||||
static void anm_init(npc_inko_class* i_this, int i_anmId, f32 i_morf, u8 i_mode, f32 i_speed) {
|
||||
i_this->anm_p->setAnm((J3DAnmTransform*)dComIfG_getObjectRes("Npc_inko", i_anmId), i_mode, i_morf, i_speed, 0.0f, -1.0f, NULL);
|
||||
i_this->anm_p->setAnm((J3DAnmTransform*)dComIfG_getObjectRes("Npc_inko", i_anmId), i_mode,
|
||||
i_morf, i_speed, 0.0f, -1.0f, NULL);
|
||||
i_this->anmId = i_anmId;
|
||||
}
|
||||
|
||||
// DEBUG NONMATCHING
|
||||
// Two indirect branches (b/bne -> b) need to be direct somehow.
|
||||
// This can be matched by wrapping the relevant section with do...while(0)
|
||||
// and adding break statements, but this is almost certainly a fakematch.
|
||||
static int daNpc_Inko_Execute(npc_inko_class* i_this) {
|
||||
fopAc_ac_c* actor = (fopAc_ac_c*)i_this;
|
||||
cXyz sp78;
|
||||
@@ -96,7 +104,8 @@ static int daNpc_Inko_Execute(npc_inko_class* i_this) {
|
||||
mDoMtx_stack_c::YrotM(i_this->field_0x59a);
|
||||
mDoMtx_stack_c::transM(0.0f, i_this->field_0x5e8, 40.0f + JREG_F(2));
|
||||
mDoMtx_stack_c::multVecZero(&i_this->field_0x5b4);
|
||||
cLib_addCalcAngleS2(&actor->shape_angle.y, (i_this->field_0x5c0.y + i_this->field_0x59a), 1, 0xA00);
|
||||
cLib_addCalcAngleS2(&actor->shape_angle.y, (i_this->field_0x5c0.y + i_this->field_0x59a),
|
||||
1, 0xA00);
|
||||
cLib_addCalcAngleS2(&actor->shape_angle.x, i_this->field_0x5ec, 1, 0xA00);
|
||||
}
|
||||
|
||||
@@ -156,7 +165,8 @@ static int daNpc_Inko_Execute(npc_inko_class* i_this) {
|
||||
i_this->field_0x59a = (sp14 - i_this->field_0x5c0.y) + (s16)cM_rndFX(7000.0f);
|
||||
|
||||
u16 sp10 = i_this->field_0x59a;
|
||||
if (cM_rndF(1.0f) < 0.5f && ((sp10 < 0x5000 && sp10 > 0xA000) || sp10 < 0x3000 || sp10 > 0xD000)) {
|
||||
if (cM_rndF(1.0f) < 0.5f &&
|
||||
((sp10 < 0x5000 && sp10 > 0xA000) || sp10 < 0x3000 || sp10 > 0xD000)) {
|
||||
i_this->field_0x5e8 = -(70.0f + cM_rndF(8.0f));
|
||||
i_this->field_0x5ec = -8000;
|
||||
} else {
|
||||
@@ -294,7 +304,8 @@ static int daNpc_Inko_Execute(npc_inko_class* i_this) {
|
||||
cLib_addCalcAngleS2(&i_this->field_0x5d4[i], i_this->field_0x5d8[i], 2, 0x1F4);
|
||||
}
|
||||
|
||||
mDoMtx_stack_c::transS(actor->current.pos.x, actor->current.pos.y + var_f31, actor->current.pos.z);
|
||||
mDoMtx_stack_c::transS(actor->current.pos.x, actor->current.pos.y + var_f31,
|
||||
actor->current.pos.z);
|
||||
mDoMtx_stack_c::YrotM(BREG_S(0) + (actor->shape_angle.y + sp18));
|
||||
mDoMtx_stack_c::XrotM(BREG_S(1) + (actor->shape_angle.x + sp1A));
|
||||
mDoMtx_stack_c::ZrotM(actor->shape_angle.z);
|
||||
@@ -317,7 +328,7 @@ static int daNpc_Inko_Execute(npc_inko_class* i_this) {
|
||||
npc_henna_class* henna = (npc_henna_class*)fopAcM_SearchByName(PROC_NPC_HENNA);
|
||||
if (henna != NULL) {
|
||||
henna->field_0x7b5 = 40;
|
||||
data_80450C9D |= 0x40;
|
||||
data_80450C9D |= (u8)0x40;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -329,7 +340,9 @@ static int daNpc_Inko_Execute(npc_inko_class* i_this) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
if (dComIfGp_event_runCheck() && actor->eventInfo.checkCommandTalk() && i_this->field_0x5f4 == 0) {
|
||||
if (dComIfGp_event_runCheck() &&
|
||||
actor->eventInfo.checkCommandTalk() &&
|
||||
i_this->field_0x5f4 == 0) {
|
||||
int flowId;
|
||||
if (cM_rndF(1.0f) < 0.1f) {
|
||||
flowId = 0x361;
|
||||
@@ -364,14 +377,15 @@ static int daNpc_Inko_Execute(npc_inko_class* i_this) {
|
||||
i_this->field_0x5f4 = 1;
|
||||
|
||||
data_80450C9D++;
|
||||
data_80450C9D &= 0xC3;
|
||||
data_80450C9D &= (u8)0xC3;
|
||||
}
|
||||
|
||||
fopAc_ac_c* player = dComIfGp_getPlayer(0);
|
||||
f32 temp_f28 = kage->actor.current.pos.x - player->current.pos.x;
|
||||
f32 temp_f27 = kage->actor.current.pos.z - player->current.pos.z;
|
||||
|
||||
if ((data_80450C9D & 0x80) && i_this->field_0x59c[3] < 15 && (SQUARE(temp_f28) + SQUARE(temp_f27)) < 23000.0f) {
|
||||
if ((data_80450C9D & 0x80) && i_this->field_0x59c[3] < 15 &&
|
||||
(SQUARE(temp_f28) + SQUARE(temp_f27)) < 23000.0f) {
|
||||
s16 spC = fopAcM_searchPlayerAngleY(actor);
|
||||
spC = (spC - player->shape_angle.y) + 0x8000;
|
||||
if (spC < 0x1800 && spC > -0x1800) {
|
||||
@@ -391,11 +405,13 @@ static int daNpc_Inko_Execute(npc_inko_class* i_this) {
|
||||
actor->attention_info.position = actor->eyePos;
|
||||
actor->attention_info.position.y += 20.0f;
|
||||
fopAcM_OnStatus(actor, 0);
|
||||
cLib_onBit<u32>(actor->attention_info.flags, fopAc_AttnFlag_SPEAK_e | fopAc_AttnFlag_TALK_e);
|
||||
cLib_onBit<u32>(actor->attention_info.flags,
|
||||
fopAc_AttnFlag_SPEAK_e | fopAc_AttnFlag_TALK_e);
|
||||
actor->eventInfo.onCondition(1);
|
||||
} else {
|
||||
fopAcM_OffStatus(actor, 0);
|
||||
cLib_offBit<u32>(actor->attention_info.flags, fopAc_AttnFlag_SPEAK_e | fopAc_AttnFlag_TALK_e);
|
||||
cLib_offBit<u32>(actor->attention_info.flags,
|
||||
fopAc_AttnFlag_SPEAK_e | fopAc_AttnFlag_TALK_e);
|
||||
}
|
||||
|
||||
return 1;
|
||||
@@ -419,7 +435,8 @@ static int daNpc_Inko_Delete(npc_inko_class* i_this) {
|
||||
|
||||
static int useHeapInit(fopAc_ac_c* actor) {
|
||||
npc_inko_class* i_this = (npc_inko_class*)actor;
|
||||
i_this->anm_p = new mDoExt_McaMorf((J3DModelData*)dComIfG_getObjectRes("Npc_inko", 8), NULL, NULL, NULL, 0, 1.0f, 0, -1, 1, 0, 0x80000, 0x11000084);
|
||||
i_this->anm_p = new mDoExt_McaMorf((J3DModelData*)dComIfG_getObjectRes("Npc_inko", 8), NULL,
|
||||
NULL, NULL, 0, 1.0f, 0, -1, 1, 0, 0x80000, 0x11000084);
|
||||
if (i_this->anm_p == NULL || i_this->anm_p->getModel() == NULL) {
|
||||
return 0;
|
||||
}
|
||||
@@ -438,7 +455,7 @@ static int useHeapInit(fopAc_ac_c* actor) {
|
||||
|
||||
static int daNpc_Inko_Create(fopAc_ac_c* actor) {
|
||||
npc_inko_class* i_this = (npc_inko_class*)actor;
|
||||
fopAcM_ct(actor, npc_inko_class);
|
||||
fopAcM_ct(&i_this->actor, npc_inko_class);
|
||||
|
||||
int phase_state = dComIfG_resLoad(&i_this->phase, "Npc_inko");
|
||||
if (phase_state == cPhs_COMPLEATE_e) {
|
||||
|
||||
+15
-13
@@ -1875,7 +1875,6 @@ static void npc_ks_hang(npc_ks_class* i_this) {
|
||||
start_pya = i_this->target_angle;
|
||||
}
|
||||
|
||||
s16 sVar1;
|
||||
switch (i_this->mode) {
|
||||
case 0:
|
||||
i_this->timer[0] = 0;
|
||||
@@ -1926,11 +1925,13 @@ static void npc_ks_hang(npc_ks_class* i_this) {
|
||||
anm_init(i_this, 24, 3.0f, 2, 1.0f);
|
||||
}
|
||||
|
||||
sVar1 = start_pya - sw_p->actor.current.angle.y;
|
||||
if (sVar1 < 0x4000 && sVar1 > -0x4000) {
|
||||
actor->home.angle.y = sw_p->actor.current.angle.y + 0x8000;
|
||||
} else {
|
||||
actor->home.angle.y = sw_p->actor.current.angle.y;
|
||||
{
|
||||
s16 sVar1 = start_pya - sw_p->actor.current.angle.y;
|
||||
if (sVar1 < 0x4000 && sVar1 > -0x4000) {
|
||||
actor->home.angle.y = sw_p->actor.current.angle.y + 0x8000;
|
||||
} else {
|
||||
actor->home.angle.y = sw_p->actor.current.angle.y;
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -2060,7 +2061,6 @@ static void npc_ks_hang_s(npc_ks_class* i_this) {
|
||||
cXyz mae, ato;
|
||||
cLib_addCalcAngleS2(&actor->current.angle.y, actor->home.angle.y + 0x4000, 2, 0x800);
|
||||
|
||||
s16 sVar1;
|
||||
switch (i_this->mode) {
|
||||
case 0:
|
||||
int asdf;
|
||||
@@ -2109,11 +2109,13 @@ static void npc_ks_hang_s(npc_ks_class* i_this) {
|
||||
anm_init(i_this, 24, 3.0f, 2, 1.0f);
|
||||
}
|
||||
|
||||
sVar1 = i_this->target_angle - sw_p->actor.current.angle.y;
|
||||
if (sVar1 < 0x4000 && sVar1 > -0x4000) {
|
||||
actor->home.angle.y = sw_p->actor.current.angle.y + 0x8000;
|
||||
} else {
|
||||
actor->home.angle.y = sw_p->actor.current.angle.y;
|
||||
{
|
||||
s16 sVar1 = i_this->target_angle - sw_p->actor.current.angle.y;
|
||||
if (sVar1 < 0x4000 && sVar1 > -0x4000) {
|
||||
actor->home.angle.y = sw_p->actor.current.angle.y + 0x8000;
|
||||
} else {
|
||||
actor->home.angle.y = sw_p->actor.current.angle.y;
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -2212,7 +2214,7 @@ static void npc_ks_e_hang(npc_ks_class* i_this) {
|
||||
break;
|
||||
|
||||
case 3:
|
||||
if (i_this->field_0x5fa == s16(YREG_S(7) - 0x3800)) {
|
||||
if (i_this->field_0x5fa == s16(YREG_S(7) + 0xC800)) {
|
||||
actor->health = 10;
|
||||
i_this->mode = 20;
|
||||
i_this->timer[0] = 0;
|
||||
|
||||
@@ -752,8 +752,11 @@ void daNpc_Pachi_Maro_c::setParam() {
|
||||
u32 flags = fopAc_AttnFlag_SPEAK_e | fopAc_AttnFlag_TALK_e;
|
||||
s16 talk_distance = mpHIO->m.common.talk_distance;
|
||||
s16 talk_angle = mpHIO->m.common.talk_angle;
|
||||
s16 attn_dist = mpHIO->m.common.attention_distance;
|
||||
s16 attn_angle = mpHIO->m.common.attention_angle;
|
||||
|
||||
attention_info.distances[fopAc_attn_LOCK_e] = daNpcT_getDistTableIdx(mpHIO->m.common.attention_distance, mpHIO->m.common.attention_angle);
|
||||
attention_info.distances[fopAc_attn_LOCK_e] =
|
||||
daNpcT_getDistTableIdx(attn_dist, attn_angle);
|
||||
attention_info.distances[fopAc_attn_TALK_e] = attention_info.distances[fopAc_attn_LOCK_e];
|
||||
attention_info.distances[fopAc_attn_SPEAK_e] = daNpcT_getDistTableIdx(talk_distance, talk_angle);
|
||||
attention_info.flags = flags;
|
||||
@@ -1093,11 +1096,9 @@ int daNpc_Pachi_Maro_c::wait(void* param_1) {
|
||||
srchPlayerActor();
|
||||
}
|
||||
}
|
||||
|
||||
switch (mJntAnm.getMode()) {
|
||||
case 0:
|
||||
default:
|
||||
break;
|
||||
|
||||
if (mJntAnm.getMode() == 0) {
|
||||
(s32)mType;
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -1198,18 +1199,26 @@ BOOL daNpc_Pachi_Maro_c::cutTutrialBegin(int i_staffId) {
|
||||
|
||||
BOOL daNpc_Pachi_Maro_c::_cutTutrialBegin_Init(int const& i_cutId) {
|
||||
switch (i_cutId) {
|
||||
default:
|
||||
return TRUE;
|
||||
case 10:
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
BOOL daNpc_Pachi_Maro_c::_cutTutrialBegin_Main(int const& i_cutId) {
|
||||
BOOL rv = FALSE;
|
||||
|
||||
switch (i_cutId) {
|
||||
default:
|
||||
return rv;;
|
||||
case 10:
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
return rv;
|
||||
}
|
||||
|
||||
BOOL daNpc_Pachi_Maro_c::cutTutrialBegin_Skip(int i_staffId) {
|
||||
@@ -1230,18 +1239,26 @@ BOOL daNpc_Pachi_Maro_c::cutTutrialBegin_Skip(int i_staffId) {
|
||||
|
||||
BOOL daNpc_Pachi_Maro_c::_cutTutrialBegin_Skip_Init(int const& i_cutId) {
|
||||
switch (i_cutId) {
|
||||
default:
|
||||
return TRUE;
|
||||
case 10:
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
BOOL daNpc_Pachi_Maro_c::_cutTutrialBegin_Skip_Main(int const& i_cutId) {
|
||||
BOOL rv = FALSE;
|
||||
|
||||
switch (i_cutId) {
|
||||
default:
|
||||
return rv;
|
||||
case 10:
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
return rv;
|
||||
}
|
||||
|
||||
BOOL daNpc_Pachi_Maro_c::cutTutrialClear(int i_staffId) {
|
||||
@@ -1565,9 +1582,12 @@ BOOL daNpc_Pachi_Maro_c::cutTutrialContinue(int i_staffId) {
|
||||
|
||||
BOOL daNpc_Pachi_Maro_c::_cutTutrialContinue_Init(int const& i_cutId) {
|
||||
switch (i_cutId) {
|
||||
default:
|
||||
return TRUE;
|
||||
case 10:
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
BOOL daNpc_Pachi_Maro_c::_cutTutrialContinue_Main(int const& i_cutId) {
|
||||
|
||||
@@ -844,7 +844,9 @@ int daNpc_Pachi_Taro_c::CreateHeap() {
|
||||
J3DModel* model = NULL;
|
||||
|
||||
int bmdIdx = mTwilight == true ? TARO0 : NONE;
|
||||
modelData = static_cast<J3DModelData*>(dComIfG_getObjectRes(l_resNameList[l_bmdData[bmdIdx][1]], l_bmdData[bmdIdx][0]));
|
||||
int resNameIdx = l_bmdData[bmdIdx][1];
|
||||
int resIdx = l_bmdData[bmdIdx][0];
|
||||
modelData = static_cast<J3DModelData*>(dComIfG_getObjectRes(l_resNameList[resNameIdx], resIdx));
|
||||
if (modelData == NULL) {
|
||||
return 1;
|
||||
}
|
||||
@@ -1011,9 +1013,12 @@ void daNpc_Pachi_Taro_c::setParam() {
|
||||
s16 talk_distance = mpHIO->m.common.talk_distance;
|
||||
s16 talk_angle = mpHIO->m.common.talk_angle;
|
||||
|
||||
attention_info.distances[fopAc_attn_LOCK_e] = daNpcT_getDistTableIdx(mpHIO->m.common.attention_distance, mpHIO->m.common.attention_angle);
|
||||
s16 attnDist = mpHIO->m.common.attention_distance;
|
||||
s16 attnAngle = mpHIO->m.common.attention_angle;
|
||||
attention_info.distances[fopAc_attn_LOCK_e] = daNpcT_getDistTableIdx(attnDist, attnAngle);
|
||||
attention_info.distances[fopAc_attn_TALK_e] = attention_info.distances[fopAc_attn_LOCK_e];
|
||||
attention_info.distances[fopAc_attn_SPEAK_e] = daNpcT_getDistTableIdx(talk_distance, talk_angle);
|
||||
attention_info.distances[fopAc_attn_SPEAK_e] =
|
||||
daNpcT_getDistTableIdx(talk_distance, talk_angle);
|
||||
attention_info.flags = flags;
|
||||
|
||||
scale.set(mpHIO->m.common.scale, mpHIO->m.common.scale, mpHIO->m.common.scale);
|
||||
@@ -1031,10 +1036,12 @@ void daNpc_Pachi_Taro_c::setParam() {
|
||||
|
||||
BOOL daNpc_Pachi_Taro_c::checkChangeEvt() {
|
||||
switch (mType) {
|
||||
default:
|
||||
break;
|
||||
case 0:
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@@ -1113,21 +1120,21 @@ fopAc_ac_c* daNpc_Pachi_Taro_c::srchDistTag1() {
|
||||
}
|
||||
|
||||
void* daNpc_Pachi_Taro_c::_srch_DistTag1_main(void* i_actor, void* i_data) {
|
||||
daTagPati_c* actor = (daTagPati_c*)i_actor;
|
||||
|
||||
if (!fopAcM_IsActor(actor)) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (fopAcM_GetName(actor) != PROC_TAG_PATI) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (!actor->isDistChkTag1()) {
|
||||
UNUSED(i_data);
|
||||
|
||||
if (!fopAcM_IsActor(i_actor)) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
return actor;
|
||||
if (fopAcM_GetName(i_actor) != PROC_TAG_PATI) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (!((daTagPati_c*)i_actor)->isDistChkTag1()) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
return i_actor;
|
||||
}
|
||||
|
||||
fopAc_ac_c* daNpc_Pachi_Taro_c::srchDistTag2() {
|
||||
@@ -1135,21 +1142,21 @@ fopAc_ac_c* daNpc_Pachi_Taro_c::srchDistTag2() {
|
||||
}
|
||||
|
||||
void* daNpc_Pachi_Taro_c::_srch_DistTag2_main(void* i_actor, void* i_data) {
|
||||
daTagPati_c* actor = (daTagPati_c*)i_actor;
|
||||
|
||||
if (!fopAcM_IsActor(actor)) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (fopAcM_GetName(actor) != PROC_TAG_PATI) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (!actor->isDistChkTag2()) {
|
||||
UNUSED(i_data);
|
||||
|
||||
if (!fopAcM_IsActor(i_actor)) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
return actor;
|
||||
if (fopAcM_GetName(i_actor) != PROC_TAG_PATI) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (!((daTagPati_c*)i_actor)->isDistChkTag2()) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
return i_actor;
|
||||
}
|
||||
|
||||
fopAc_ac_c* daNpc_Pachi_Taro_c::srchEscapeTag1() {
|
||||
@@ -1157,21 +1164,21 @@ fopAc_ac_c* daNpc_Pachi_Taro_c::srchEscapeTag1() {
|
||||
}
|
||||
|
||||
void* daNpc_Pachi_Taro_c::_srch_EscapeTag1_main(void* i_actor, void* i_data) {
|
||||
daTagPati_c* actor = (daTagPati_c*)i_actor;
|
||||
|
||||
if (!fopAcM_IsActor(actor)) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (fopAcM_GetName(actor) != PROC_TAG_PATI) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (!actor->isEscapeChkTag1()) {
|
||||
UNUSED(i_data);
|
||||
|
||||
if (!fopAcM_IsActor(i_actor)) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
return actor;
|
||||
if (fopAcM_GetName(i_actor) != PROC_TAG_PATI) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (!((daTagPati_c*)i_actor)->isEscapeChkTag1()) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
return i_actor;
|
||||
}
|
||||
|
||||
fopAc_ac_c* daNpc_Pachi_Taro_c::srchEscapeTag2() {
|
||||
@@ -1179,21 +1186,21 @@ fopAc_ac_c* daNpc_Pachi_Taro_c::srchEscapeTag2() {
|
||||
}
|
||||
|
||||
void* daNpc_Pachi_Taro_c::_srch_EscapeTag2_main(void* i_actor, void* i_data) {
|
||||
daTagPati_c* actor = (daTagPati_c*)i_actor;
|
||||
|
||||
if (!fopAcM_IsActor(actor)) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (fopAcM_GetName(actor) != PROC_TAG_PATI) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (!actor->isEscapeChkTag2()) {
|
||||
UNUSED(i_data);
|
||||
|
||||
if (!fopAcM_IsActor(i_actor)) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
return actor;
|
||||
if (fopAcM_GetName(i_actor) != PROC_TAG_PATI) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (!((daTagPati_c*)i_actor)->isEscapeChkTag2()) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
return i_actor;
|
||||
}
|
||||
|
||||
BOOL daNpc_Pachi_Taro_c::evtTalk() {
|
||||
@@ -1355,7 +1362,7 @@ void daNpc_Pachi_Taro_c::drawOtherMdl() {
|
||||
g_env_light.setLightTevColorType_MAJI(mpModels[i], &tevStr);
|
||||
mDoMtx_stack_c::copy(model->getAnmMtx(jointNo[i]));
|
||||
Mtx mtx;
|
||||
MTXCopy(mDoMtx_stack_c::get(), mtx);
|
||||
cMtx_copy(mDoMtx_stack_c::get(), mtx);
|
||||
mpModels[i]->setBaseTRMtx(mtx);
|
||||
mDoExt_modelUpdateDL(mpModels[i]);
|
||||
dComIfGd_addRealShadow(mShadowKey, mpModels[i]);
|
||||
@@ -1409,7 +1416,7 @@ BOOL daNpc_Pachi_Taro_c::setAction(actionFunc action) {
|
||||
|
||||
int daNpc_Pachi_Taro_c::wait(void* param_1) {
|
||||
int unused = 0;
|
||||
|
||||
|
||||
switch (mMode) {
|
||||
case MODE_ENTER:
|
||||
case MODE_INIT:
|
||||
@@ -1454,11 +1461,10 @@ int daNpc_Pachi_Taro_c::wait(void* param_1) {
|
||||
srchPlayerActor();
|
||||
}
|
||||
}
|
||||
|
||||
switch (mJntAnm.getMode()) {
|
||||
case 0:
|
||||
default:
|
||||
break;
|
||||
|
||||
// ???
|
||||
if (mJntAnm.getMode() == 0) {
|
||||
(int)mType;
|
||||
}
|
||||
|
||||
if (field_0x1004 == 0) {
|
||||
@@ -1509,7 +1515,8 @@ BOOL daNpc_Pachi_Taro_c::_turn_to_link(s16 i_step) {
|
||||
}
|
||||
|
||||
BOOL daNpc_Pachi_Taro_c::_turn_pos(cXyz const& i_pos, s16 i_step) {
|
||||
BOOL rv = cLib_chaseAngleS(&mCurAngle.y, cLib_targetAngleY(¤t.pos, &i_pos), i_step);
|
||||
s16 targetAngleY = cLib_targetAngleY(¤t.pos, &i_pos);
|
||||
BOOL rv = cLib_chaseAngleS(&mCurAngle.y, targetAngleY, i_step);
|
||||
current.angle.y = mCurAngle.y;
|
||||
shape_angle.y = mCurAngle.y;
|
||||
return rv;
|
||||
@@ -1975,8 +1982,9 @@ BOOL daNpc_Pachi_Taro_c::cutTalk(int i_staffId) {
|
||||
setMesPat();
|
||||
}
|
||||
|
||||
int* piVar2 = NULL;
|
||||
int mesNo = 0;
|
||||
int* piVar2 = dComIfGp_evmng_getMyIntegerP(i_staffId, mesNos[mMesPat]);
|
||||
piVar2 = dComIfGp_evmng_getMyIntegerP(i_staffId, mesNos[mMesPat]);
|
||||
if (piVar2 != NULL) {
|
||||
mesNo = *piVar2;
|
||||
}
|
||||
@@ -2499,23 +2507,24 @@ BOOL daNpc_Pachi_Taro_c::_cutTutrialContinue_Main(int const& i_cutId) {
|
||||
BOOL rv = FALSE;
|
||||
|
||||
switch (i_cutId) {
|
||||
case 10:
|
||||
if (_turn_pos(mTagPos, 0x1000)) {
|
||||
field_0xfe2 = 1;
|
||||
rv = TRUE;
|
||||
}
|
||||
break;
|
||||
|
||||
case 20:
|
||||
BOOL chaseAngleFlag = cLib_chaseAngleS(&mCurAngle.y, (s16)home.angle.y, 0x800);
|
||||
current.angle.y = mCurAngle.y;
|
||||
shape_angle.y = mCurAngle.y;
|
||||
case 10:
|
||||
if (_turn_pos(mTagPos, 0x1000)) {
|
||||
field_0xfe2 = 1;
|
||||
rv = TRUE;
|
||||
}
|
||||
break;
|
||||
|
||||
if (chaseAngleFlag) {
|
||||
daNpc_Pachi_Maro_c* maro_p = (daNpc_Pachi_Maro_c*)mActorMngrs[0].getActorP();
|
||||
maro_p->setFMotion_LookNone();
|
||||
rv = TRUE;
|
||||
}
|
||||
case 20:
|
||||
s16 homeAngleY = home.angle.y;
|
||||
BOOL chaseAngleFlag = cLib_chaseAngleS(&mCurAngle.y, homeAngleY, 0x800);
|
||||
current.angle.y = mCurAngle.y;
|
||||
shape_angle.y = mCurAngle.y;
|
||||
|
||||
if (chaseAngleFlag) {
|
||||
daNpc_Pachi_Maro_c* maro_p = (daNpc_Pachi_Maro_c*)mActorMngrs[0].getActorP();
|
||||
maro_p->setFMotion_LookNone();
|
||||
rv = TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
return rv;
|
||||
|
||||
@@ -8,6 +8,14 @@
|
||||
#include "d/actor/d_a_npc_passer.h"
|
||||
#include "d/d_s_play.h"
|
||||
|
||||
daNpcPasser_c::actionFunc daNpcPasser_c::ActionTable[5][2] = {
|
||||
{&daNpcPasser_c::initPath, &daNpcPasser_c::executePath},
|
||||
{&daNpcPasser_c::initEscape, &daNpcPasser_c::executeEscape},
|
||||
{&daNpcPasser_c::initFear, &daNpcPasser_c::executeFear},
|
||||
{&daNpcPasser_c::initFight, &daNpcPasser_c::executeFight},
|
||||
{&daNpcPasser_c::initRelief, &daNpcPasser_c::executeRelief},
|
||||
};
|
||||
|
||||
daNpcPasser_c::~daNpcPasser_c() {
|
||||
removeResrc(m_type, m_objNum);
|
||||
|
||||
@@ -473,14 +481,6 @@ void daNpcPasser_c::create_init() {
|
||||
setBaseMtx();
|
||||
}
|
||||
|
||||
daNpcPasser_c::actionFunc daNpcPasser_c::ActionTable[5][2] = {
|
||||
{&daNpcPasser_c::initPath, &daNpcPasser_c::executePath},
|
||||
{&daNpcPasser_c::initEscape, &daNpcPasser_c::executeEscape},
|
||||
{&daNpcPasser_c::initFear, &daNpcPasser_c::executeFear},
|
||||
{&daNpcPasser_c::initFight, &daNpcPasser_c::executeFight},
|
||||
{&daNpcPasser_c::initRelief, &daNpcPasser_c::executeRelief},
|
||||
};
|
||||
|
||||
daNpcPasser_c::seqFunc* daNpcPasser_c::m_funcTbl[28] = {
|
||||
daNpcPasser_c::m_seq00_funcTbl, daNpcPasser_c::m_seq01_funcTbl,
|
||||
daNpcPasser_c::m_seq02_funcTbl, daNpcPasser_c::m_seq03_funcTbl,
|
||||
@@ -703,29 +703,29 @@ void daNpcPasser_c::setSpeed(f32 param_1, f32 param_2, f32* i_speed, int param_4
|
||||
}
|
||||
|
||||
void daNpcPasser_c::pathMoveF() {
|
||||
f32 fVar1 = 0.0f;
|
||||
f32 speed = 0.0f;
|
||||
f32 fVar2 = 0.0f;
|
||||
f32 maxSpeed = 0.0f;
|
||||
f32 anmPlaySpeed = 0.0f;
|
||||
f32 actualSpeed = 0.0f;
|
||||
cXyz* ccMoveP = mStts.GetCCMoveP();
|
||||
|
||||
if (field_0xb1c == 2) {
|
||||
fVar1 = Cd2_HIO_walkMaxSpeed(m_type);
|
||||
fVar2 = Cd2_HIO_walkAnmPlaySpeed(m_type);
|
||||
maxSpeed = Cd2_HIO_walkMaxSpeed(m_type);
|
||||
anmPlaySpeed = Cd2_HIO_walkAnmPlaySpeed(m_type);
|
||||
cLib_chaseF(&field_0xb10, 0.8f, 0.05f);
|
||||
setSpeed(MREG_F(0) + 0.7f, fVar1, &field_0xb14, 0);
|
||||
setSpeed(MREG_F(0) + 0.7f, fVar1, &speedF, 1);
|
||||
setSpeed(MREG_F(0) + 0.7f, maxSpeed, &field_0xb14, 0);
|
||||
setSpeed(MREG_F(0) + 0.7f, maxSpeed, &speedF, 1);
|
||||
} else if (field_0xb1c == 1) {
|
||||
fVar1 = Cd2_HIO_maxSpeed(m_type);
|
||||
fVar2 = Cd2_HIO_anmPlaySpeed(m_type);
|
||||
maxSpeed = Cd2_HIO_maxSpeed(m_type);
|
||||
anmPlaySpeed = Cd2_HIO_anmPlaySpeed(m_type);
|
||||
|
||||
if (mActionIdx == 1) {
|
||||
fVar1 *= 1.5f;
|
||||
fVar2 *= 1.5f;
|
||||
maxSpeed *= 1.5f;
|
||||
anmPlaySpeed *= 1.5f;
|
||||
}
|
||||
|
||||
cLib_chaseF(&field_0xb10, 1.0f, 0.05f);
|
||||
setSpeed(MREG_F(0) + 0.7f, fVar1, &field_0xb14, 0);
|
||||
setSpeed(MREG_F(0) + 0.7f, fVar1, &speedF, 1);
|
||||
setSpeed(MREG_F(0) + 0.7f, maxSpeed, &field_0xb14, 0);
|
||||
setSpeed(MREG_F(0) + 0.7f, maxSpeed, &speedF, 1);
|
||||
} else if (field_0xb1c == 0) {
|
||||
cLib_chaseF(&field_0xb10, 0.0f, 0.05f);
|
||||
cLib_chaseF(&field_0xb14, 0.0f, 1.5f);
|
||||
@@ -745,17 +745,17 @@ void daNpcPasser_c::pathMoveF() {
|
||||
fopAcM_posMoveF(this, ccMoveP);
|
||||
|
||||
if (field_0xb1c != 0) {
|
||||
fVar1 = field_0xb14 / fVar1;
|
||||
if (fVar1 > 1.0f) {
|
||||
fVar1 = 1.0f;
|
||||
actualSpeed = field_0xb14 / maxSpeed;
|
||||
if (actualSpeed > 1.0f) {
|
||||
actualSpeed = 1.0f;
|
||||
}
|
||||
|
||||
speed = fVar2 * fVar1;
|
||||
if (speed < 0.6f) {
|
||||
speed = 0.6f;
|
||||
actualSpeed = anmPlaySpeed * actualSpeed;
|
||||
if (actualSpeed < 0.6f) {
|
||||
actualSpeed = 0.6f;
|
||||
}
|
||||
|
||||
mpMorf->setPlaySpeed(speed);
|
||||
mpMorf->setPlaySpeed(actualSpeed);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -159,6 +159,52 @@ enum Type {
|
||||
/* 0x3 */ TYPE_DEFAULT,
|
||||
};
|
||||
|
||||
daNpc_Post_HIOParam const daNpc_Post_Param_c::m = {
|
||||
190.0f,
|
||||
-3.0f,
|
||||
1.0f,
|
||||
700.0f,
|
||||
255.0f,
|
||||
180.0f,
|
||||
35.0f,
|
||||
30.0f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
10.0f,
|
||||
-10.0f,
|
||||
30.0f,
|
||||
-10.0f,
|
||||
45.0f,
|
||||
-45.0f,
|
||||
0.6f,
|
||||
12.0f,
|
||||
3,
|
||||
6,
|
||||
5,
|
||||
6,
|
||||
110.0f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
60,
|
||||
8,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
false,
|
||||
false,
|
||||
4.0f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
16.0f,
|
||||
60,
|
||||
};
|
||||
|
||||
#if DEBUG
|
||||
daNpc_Post_HIO_c::daNpc_Post_HIO_c() {
|
||||
m = daNpc_Post_Param_c::m;
|
||||
@@ -173,7 +219,7 @@ void daNpc_Post_HIO_c::listenPropertyEvent(const JORPropertyEvent* evt) {
|
||||
|
||||
switch ((u32)evt->id) {
|
||||
case 0x40000002:
|
||||
if (jorFile.open(6, "", NULL, NULL, NULL)) {
|
||||
if (jorFile.open(6, "すべてのファイル(*.*)\0*.*\0", NULL, NULL, NULL)) {
|
||||
memset(&buffer, 0, sizeof(buffer));
|
||||
len = 0;
|
||||
daNpcT_cmnListenPropertyEvent(buffer, &len, &m.common);
|
||||
@@ -321,7 +367,7 @@ daNpc_Post_c::cutFunc daNpc_Post_c::mCutList[2] = {
|
||||
static NPC_POST_HIO_CLASS l_HIO;
|
||||
|
||||
daNpc_Post_c::~daNpc_Post_c() {
|
||||
OS_REPORT("|%06d:%x|daNpc_Post_c -> コンストラクト\n", g_Counter.mCounter0, this);
|
||||
OS_REPORT("|%06d:%x|daNpc_Post_c -> デストラクト\n", g_Counter.mCounter0, this);
|
||||
|
||||
if (mpMorf[0] != NULL) {
|
||||
mpMorf[0]->stopZelAnime();
|
||||
@@ -340,52 +386,6 @@ daNpc_Post_c::~daNpc_Post_c() {
|
||||
deleteRes(l_loadResPtrnList[mType], (const char**)l_resNameList);
|
||||
}
|
||||
|
||||
daNpc_Post_HIOParam const daNpc_Post_Param_c::m = {
|
||||
190.0f,
|
||||
-3.0f,
|
||||
1.0f,
|
||||
700.0f,
|
||||
255.0f,
|
||||
180.0f,
|
||||
35.0f,
|
||||
30.0f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
10.0f,
|
||||
-10.0f,
|
||||
30.0f,
|
||||
-10.0f,
|
||||
45.0f,
|
||||
-45.0f,
|
||||
0.6f,
|
||||
12.0f,
|
||||
3,
|
||||
6,
|
||||
5,
|
||||
6,
|
||||
110.0f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
60,
|
||||
8,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
false,
|
||||
false,
|
||||
4.0f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
0.0f,
|
||||
16.0f,
|
||||
60,
|
||||
};
|
||||
|
||||
cPhs_Step daNpc_Post_c::create() {
|
||||
daNpcT_ct(this, daNpc_Post_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData,
|
||||
4, l_motionSequenceData, 4, l_evtList, l_resNameList);
|
||||
@@ -414,7 +414,7 @@ cPhs_Step daNpc_Post_c::create() {
|
||||
return cPhs_ERROR_e;
|
||||
}
|
||||
|
||||
J3DModel* model = mpMorf[0]->getModel();
|
||||
J3DModelData* modelData = mpMorf[0]->getModel()->getModelData();
|
||||
fopAcM_SetMtx(this, mpMorf[0]->getModel()->getBaseTRMtx());
|
||||
fopAcM_setCullSizeBox(this, -200.0f, -100.0f, -200.0f, 200.0f, 300.0f, 200.0f);
|
||||
|
||||
@@ -454,21 +454,24 @@ cPhs_Step daNpc_Post_c::create() {
|
||||
}
|
||||
|
||||
int daNpc_Post_c::CreateHeap() {
|
||||
J3DModelData* modelData = NULL;
|
||||
J3DModel* model = NULL;
|
||||
int bmdIdx = 0;
|
||||
int resIdx = l_bmdData[bmdIdx][1];
|
||||
int idx = l_bmdData[bmdIdx][0];
|
||||
J3DModelData* modelData = static_cast<J3DModelData*>(dComIfG_getObjectRes(l_resNameList[resIdx], idx));
|
||||
modelData = static_cast<J3DModelData*>(dComIfG_getObjectRes(l_resNameList[resIdx], idx));
|
||||
if (modelData == NULL) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
u32 uVar1 = 0x11020284;
|
||||
mpMorf[0] = new mDoExt_McaMorfSO(modelData, NULL, NULL, NULL, -1, 1.0f, 0, -1, &mSound, 0x80000, uVar1);
|
||||
u32 sp28 = 0x11020284;
|
||||
mpMorf[0] = new mDoExt_McaMorfSO(modelData, NULL, NULL, NULL, -1, 1.0f, 0, -1, &mSound, 0x80000,
|
||||
sp28);
|
||||
if (mpMorf[0] == NULL || mpMorf[0]->getModel() == NULL) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
J3DModel* model = mpMorf[0]->getModel();
|
||||
model = mpMorf[0]->getModel();
|
||||
for (u16 i = 0; i < modelData->getJointNum(); i++) {
|
||||
modelData->getJointNodePointer(i)->setCallBack(ctrlJointCallBack);
|
||||
}
|
||||
@@ -488,8 +491,9 @@ int daNpc_Post_c::CreateHeap() {
|
||||
}
|
||||
|
||||
if (mType != TYPE_BAR) {
|
||||
u32 uVar2 = 0x11000084;
|
||||
mpFlagModelMorf = new mDoExt_McaMorfSO(modelData, NULL, NULL, NULL, -1, 1.0f, 0, -1, NULL, J3DMdlFlag_DifferedDLBuffer, uVar2);
|
||||
sp28 = 0x11000084;
|
||||
mpFlagModelMorf = new mDoExt_McaMorfSO(modelData, NULL, NULL, NULL, -1, 1.0f, 0, -1, NULL,
|
||||
J3DMdlFlag_DifferedDLBuffer, sp28);
|
||||
if (mpFlagModelMorf == NULL || mpFlagModelMorf->getModel() == NULL) {
|
||||
return 0;
|
||||
}
|
||||
@@ -501,13 +505,16 @@ int daNpc_Post_c::CreateHeap() {
|
||||
|
||||
for (int i = 0; i < 2; i++) {
|
||||
if (l_bmdData[bmdTypeList[i]][0] >= 0) {
|
||||
modelData = (J3DModelData*)dComIfG_getObjectRes(l_resNameList[l_bmdData[bmdTypeList[i]][1]], l_bmdData[bmdTypeList[i]][0]);
|
||||
modelData =
|
||||
(J3DModelData*)dComIfG_getObjectRes(l_resNameList[l_bmdData[bmdTypeList[i]][1]],
|
||||
l_bmdData[bmdTypeList[i]][0]);
|
||||
} else {
|
||||
modelData = NULL;
|
||||
}
|
||||
|
||||
if (modelData != NULL) {
|
||||
mpLetterModels[i] = mDoExt_J3DModel__create(modelData, J3DMdlFlag_DifferedDLBuffer, 0x11000084);
|
||||
mpLetterModels[i] = mDoExt_J3DModel__create(modelData, J3DMdlFlag_DifferedDLBuffer,
|
||||
0x11000084);
|
||||
} else {
|
||||
mpLetterModels[i] = NULL;
|
||||
}
|
||||
@@ -521,7 +528,7 @@ int daNpc_Post_c::CreateHeap() {
|
||||
}
|
||||
|
||||
int daNpc_Post_c::Delete() {
|
||||
OS_REPORT("|%06d:%x|daNpc_Post_c -> コンストラクト\n", g_Counter.mCounter0, this);
|
||||
OS_REPORT("|%06d:%x|daNpc_Post_c -> Delete\n", g_Counter.mCounter0, this);
|
||||
fopAcM_RegisterDeleteID(this, "NPC_POST");
|
||||
this->~daNpc_Post_c();
|
||||
return 1;
|
||||
@@ -688,6 +695,8 @@ BOOL daNpc_Post_c::checkChangeEvt() {
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
(int)mType;
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
@@ -854,7 +863,7 @@ void daNpc_Post_c::setAttnPos() {
|
||||
mpFlagModelMorf->play(0, 0);
|
||||
mDoMtx_stack_c::copy(mpMorf[0]->getModel()->getAnmMtx(JNT_BACKBONE2));
|
||||
Mtx mtx;
|
||||
MTXCopy(mDoMtx_stack_c::get(), mtx);
|
||||
cMtx_copy(mDoMtx_stack_c::get(), mtx);
|
||||
mpFlagModelMorf->getModel()->setBaseTRMtx(mtx);
|
||||
mpFlagModelMorf->modelCalc();
|
||||
}
|
||||
@@ -970,7 +979,7 @@ void daNpc_Post_c::drawOtherMdl() {
|
||||
mDoMtx_stack_c::copy(model->getAnmMtx(jointNo[i]));
|
||||
|
||||
Mtx mtx;
|
||||
MTXCopy(mDoMtx_stack_c::get(), mtx);
|
||||
cMtx_copy(mDoMtx_stack_c::get(), mtx);
|
||||
mpLetterModels[i]->setBaseTRMtx(mtx);
|
||||
mDoExt_modelUpdateDL(mpLetterModels[i]);
|
||||
dComIfGd_addRealShadow(mShadowKey, mpLetterModels[i]);
|
||||
@@ -996,9 +1005,10 @@ bool daNpc_Post_c::setFlagAnm(int i_idx, int i_attr, f32 i_morf) {
|
||||
};
|
||||
|
||||
J3DAnmTransform* anm = NULL;
|
||||
int idx = i_idx;
|
||||
if (mpFlagModelMorf != NULL) {
|
||||
if (flagAnmData[i_idx].fileIdx > 0) {
|
||||
anm = getTrnsfrmKeyAnmP(l_resNameList[flagAnmData[i_idx].arcIdx], flagAnmData[i_idx].fileIdx);
|
||||
if (flagAnmData[idx].fileIdx > 0) {
|
||||
anm = getTrnsfrmKeyAnmP(l_resNameList[flagAnmData[idx].arcIdx], flagAnmData[idx].fileIdx);
|
||||
}
|
||||
|
||||
if (anm != NULL) {
|
||||
@@ -1093,10 +1103,6 @@ void daNpc_Post_c::pullOutLetter() {
|
||||
}
|
||||
}
|
||||
|
||||
static int const dummy[2] = {
|
||||
-1, -1,
|
||||
};
|
||||
|
||||
int daNpc_Post_c::cutDeliver(int i_staffId) {
|
||||
cXyz work;
|
||||
csXyz angle;
|
||||
@@ -1255,6 +1261,8 @@ int daNpc_Post_c::cutDeliver(int i_staffId) {
|
||||
}
|
||||
}
|
||||
|
||||
int arr[2] = {-1, -1};
|
||||
|
||||
switch (prm) {
|
||||
case 0:
|
||||
mJntAnm.lookPlayer(0);
|
||||
@@ -1360,6 +1368,7 @@ int daNpc_Post_c::cutDeliver(int i_staffId) {
|
||||
}
|
||||
|
||||
int daNpc_Post_c::wait(void* param_1) {
|
||||
daTag_EvtArea_c* actor_p = NULL;
|
||||
daPy_py_c* player = daPy_getPlayerActorClass();
|
||||
f32 fVar1 = mHIO->m.nod_interval;
|
||||
|
||||
@@ -1388,7 +1397,7 @@ int daNpc_Post_c::wait(void* param_1) {
|
||||
)
|
||||
) {
|
||||
for (int i = 0; i < 4; i++) {
|
||||
daTag_EvtArea_c* actor_p = (daTag_EvtArea_c*)mActorMngrs[i].getActorP();
|
||||
actor_p = (daTag_EvtArea_c*)mActorMngrs[i].getActorP();
|
||||
if (actor_p != NULL) {
|
||||
if (actor_p->chkPointInArea(player->current.pos)) {
|
||||
if (daPy_getPlayerActorClass()->checkBoarRide()) {
|
||||
@@ -1397,7 +1406,8 @@ int daNpc_Post_c::wait(void* param_1) {
|
||||
mActorPos = actor_p->current.pos;
|
||||
|
||||
f32 fVar2 = player->current.pos.absXZ(actor_p->current.pos);
|
||||
if (actor_p->scale.x - 700.0f <= fVar2) {
|
||||
f32 adjustedScale = actor_p->scale.x - 700.0f;
|
||||
if (adjustedScale <= fVar2) {
|
||||
if (daPy_getPlayerActorClass()->checkHorseRide()) {
|
||||
mEvtNo = EVT_DELIVERTO_PLAYER_ON_HORSE;
|
||||
} else if (daPy_py_c::checkNowWolf()) {
|
||||
|
||||
@@ -378,8 +378,8 @@ int daNpcRafrel_c::Draw() {
|
||||
}
|
||||
|
||||
int daNpcRafrel_c::ctrlJoint(J3DJoint* i_joint, J3DModel* i_model) {
|
||||
int jnt_no = i_joint->getJntNo();
|
||||
u16 jointNo = jnt_no;
|
||||
J3DJoint* joint = i_joint;
|
||||
int jnt_no = joint->getJntNo();
|
||||
int spC[] = {1, 3, 4};
|
||||
|
||||
if (jnt_no == 0) {
|
||||
|
||||
+122
-84
@@ -191,6 +191,7 @@ void daObjBm_HIO_c::genMessage(JORMContext* ctx) {
|
||||
ctx->genSlider("ビームYスケール", &beam_scale.y, 0.1f, 10.0f);
|
||||
ctx->genCheckBox("チェック描画", &check_draw, 0x1);
|
||||
}
|
||||
|
||||
#define BEAM_SCALE_X l_HIO.beam_scale.x
|
||||
#define BEAM_SCALE_Y l_HIO.beam_scale.y
|
||||
#define BEAM_SCALE_Z l_HIO.beam_scale.z
|
||||
@@ -230,9 +231,11 @@ void daObjBm_HIO_c::genMessage(JORMContext* ctx) {
|
||||
#define CHECK_DRAW 0
|
||||
#endif
|
||||
|
||||
fopAc_ac_c* daObjBm_c::PPCallBack(fopAc_ac_c* i_bgActor, fopAc_ac_c* i_actorP, s16 param_2, dBgW_Base::PushPullLabel pp_field) {
|
||||
fopAc_ac_c* daObjBm_c::PPCallBack(fopAc_ac_c* i_bgActor, fopAc_ac_c* i_actorP, s16 param_2,
|
||||
dBgW_Base::PushPullLabel i_ppLabel) {
|
||||
UNUSED(i_actorP);
|
||||
dBgW::PushPullLabel pp_label = cLib_checkBit<dBgW::PushPullLabel>(i_ppLabel, dBgW::PPLABEL_3);
|
||||
daObjBm_c* actor_p = (daObjBm_c*)i_bgActor;
|
||||
dBgW::PushPullLabel pp_label = cLib_checkBit<dBgW::PushPullLabel>(pp_field, dBgW::PPLABEL_3);
|
||||
u8 l_swNo3 = actor_p->getSwNo3();
|
||||
u8 l_moveType = actor_p->getMoveType();
|
||||
|
||||
@@ -241,23 +244,26 @@ fopAc_ac_c* daObjBm_c::PPCallBack(fopAc_ac_c* i_bgActor, fopAc_ac_c* i_actorP, s
|
||||
(s16)param_2 - 0x8000 : (s16)param_2;
|
||||
s16 angle = spE - actor_p->home.angle.y;
|
||||
|
||||
// not sure if this is correct
|
||||
const dBgW::PushPullLabel pp_field = dBgW::PPLABEL_3;
|
||||
JUT_ASSERT(513, pp_label != pp_field);
|
||||
|
||||
actor_p->mPPLabel = pp_field;
|
||||
actor_p->mPPLabel = i_ppLabel;
|
||||
|
||||
dBgW::PushPullLabel pp_label_2;
|
||||
if (angle >= -0x2000 && angle < 0x2000) {
|
||||
pp_label = dBgW::PPLABEL_NONE;
|
||||
pp_label_2 = dBgW::PPLABEL_NONE;
|
||||
} else if (angle >= 0x2000 && angle < 0x6000) {
|
||||
pp_label = dBgW::PPLABEL_PUSH;
|
||||
pp_label_2 = dBgW::PPLABEL_PUSH;
|
||||
} else if (angle >= 0x6000 || angle < -0x6000) {
|
||||
pp_label = dBgW::PPLABEL_PULL;
|
||||
pp_label_2 = dBgW::PPLABEL_PULL;
|
||||
} else {
|
||||
pp_label = dBgW::PPLABEL_3;
|
||||
pp_label_2 = dBgW::PPLABEL_3;
|
||||
}
|
||||
|
||||
if (l_moveType != 0 || (l_moveType == 0 && pp_label == dBgW::PPLABEL_NONE)) {
|
||||
if (l_moveType != 0 || (l_moveType == 0 && pp_label_2 == dBgW::PPLABEL_NONE)) {
|
||||
for (int i = 0; i < 4; i++) {
|
||||
if (i == pp_label) {
|
||||
if (i == pp_label_2) {
|
||||
actor_p->mMomentCnt[i]++;
|
||||
} else {
|
||||
actor_p->mMomentCnt[i] = 0;
|
||||
@@ -273,12 +279,13 @@ fopAc_ac_c* daObjBm_c::PPCallBack(fopAc_ac_c* i_bgActor, fopAc_ac_c* i_actorP, s
|
||||
|
||||
static int nodeCallBack(J3DJoint* i_joint, int param_2) {
|
||||
if (param_2 == 0) {
|
||||
int jnt_no = i_joint->getJntNo();
|
||||
J3DJoint* joint = i_joint;
|
||||
int jnt_no = joint->getJntNo();
|
||||
J3DModel* model = j3dSys.getModel();
|
||||
daObjBm_c* i_this = (daObjBm_c*)model->getUserArea();
|
||||
|
||||
cMtx_copy(model->getAnmMtx(jnt_no), mDoMtx_stack_c::get());
|
||||
s16 sVar1 = i_this->field_0x1000 * cM_scos(i_this->field_0xff0 * 0x2CEC + KREG_S(6));
|
||||
s16 sVar1 = i_this->field_0x1000 * cM_scos(i_this->field_0xff0 * (11500 + KREG_S(6)));
|
||||
|
||||
if (jnt_no == i_this->getHeadJoint()) {
|
||||
mDoMtx_stack_c::XrotM(i_this->field_0xf96 + sVar1);
|
||||
@@ -342,10 +349,10 @@ int daObjBm_c::Create() {
|
||||
|
||||
fopAcM_setCullSizeBox(this, l_cull_box.min.x, l_cull_box.min.y, l_cull_box.min.z, l_cull_box.max.x,
|
||||
l_cull_box.max.y, l_cull_box.max.z);
|
||||
JUTNameTab* joint_name = mpModel->getModelData()->getJointTree().getJointName();
|
||||
JUTNameTab* name = mpModel->getModelData()->getJointTree().getJointName();
|
||||
for (int i = 0; i < 5; i++) {
|
||||
for (u16 j = 0; j < mpModel->getModelData()->getJointNum(); j++) {
|
||||
if (strcmp(joint_name->getName(j), l_joint_table[i]) == 0) {
|
||||
if (strcmp(name->getName(j), l_joint_table[i]) == 0) {
|
||||
mJoints[i] = j;
|
||||
mpModel->getModelData()->getJointNodePointer(j)->setCallBack(nodeCallBack);
|
||||
}
|
||||
@@ -353,9 +360,9 @@ int daObjBm_c::Create() {
|
||||
}
|
||||
|
||||
mpModel->setUserArea((uintptr_t)this);
|
||||
JUTNameTab* material_name = mpModel->getModelData()->getMaterialTable().getMaterialName();
|
||||
name = mpModel->getModelData()->getMaterialTable().getMaterialName();
|
||||
for (u16 i = 0; i < mpModel->getModelData()->getMaterialNum(); i++) {
|
||||
if (strcmp(material_name->getName(i), l_eye_matName) == 0) {
|
||||
if (strcmp(name->getName(i), l_eye_matName) == 0) {
|
||||
mpMaterial = mpModel->getModelData()->getMaterialNodePointer(i);
|
||||
}
|
||||
}
|
||||
@@ -399,84 +406,101 @@ int daObjBm_c::Create() {
|
||||
return 1;
|
||||
}
|
||||
|
||||
// FAKEMATCH
|
||||
int daObjBm_c::CreateHeap() {
|
||||
J3DModelData* modelData;
|
||||
|
||||
modelData = (J3DModelData*)dComIfG_getObjectRes(l_arcName, dRes_INDEX_OBJ_BM_BMD_BM_e);
|
||||
JUT_ASSERT(767, modelData != NULL);
|
||||
mpModel = mDoExt_J3DModel__create(modelData, J3DMdlFlag_DifferedDLBuffer, 0x11000084);
|
||||
if (mpModel == NULL) {
|
||||
return 0;
|
||||
J3DModelData* modelData =
|
||||
(J3DModelData*)dComIfG_getObjectRes(l_arcName, dRes_INDEX_OBJ_BM_BMD_BM_e);
|
||||
|
||||
{
|
||||
JUT_ASSERT(767, modelData != NULL);
|
||||
mpModel = mDoExt_J3DModel__create(modelData, J3DMdlFlag_DifferedDLBuffer, 0x11000084);
|
||||
if (mpModel == NULL) {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
J3DAnmTevRegKey* pbrk = (J3DAnmTevRegKey*)dComIfG_getObjectRes(l_arcName, dRes_INDEX_OBJ_BM_BRK_SERCH_e);
|
||||
JUT_ASSERT(780, pbrk != NULL);
|
||||
mSerchBrk = new mDoExt_brkAnm();
|
||||
if (mSerchBrk == NULL || mSerchBrk->init(modelData, pbrk, 1, J3DFrameCtrl::EMode_NONE, 1.0f, 0, -1) == 0) {
|
||||
return 0;
|
||||
}
|
||||
{
|
||||
J3DAnmTevRegKey* pbrk = (J3DAnmTevRegKey*)dComIfG_getObjectRes(l_arcName, dRes_INDEX_OBJ_BM_BRK_SERCH_e);
|
||||
JUT_ASSERT(780, pbrk != NULL);
|
||||
mSerchBrk = new mDoExt_brkAnm();
|
||||
if (mSerchBrk == NULL || mSerchBrk->init(modelData, pbrk, 1, J3DFrameCtrl::EMode_NONE, 1.0f, 0, -1) == 0) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
#if DEBUG
|
||||
pbrk = (J3DAnmTevRegKey*)dComIfG_getObjectRes(l_arcName, dRes_INDEX_OBJ_BM_BRK_TURN_e);
|
||||
JUT_ASSERT(791, pbrk != NULL);
|
||||
pbrk =
|
||||
(J3DAnmTevRegKey*)dComIfG_getObjectRes(l_arcName, dRes_INDEX_OBJ_BM_BRK_TURN_e);
|
||||
JUT_ASSERT(791, pbrk != NULL);
|
||||
#endif
|
||||
|
||||
J3DAnmTransform* pbck = (J3DAnmTransform*)dComIfG_getObjectRes(l_arcName, dRes_INDEX_OBJ_BM_BCK_BM_UP_e);
|
||||
JUT_ASSERT(798, pbck != NULL);
|
||||
mBeamosBck = new mDoExt_bckAnm();
|
||||
if (mBeamosBck == NULL || mBeamosBck->init(pbck, 1, J3DFrameCtrl::EMode_NONE, 1.0f, 0, -1, false) == 0) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
modelData = (J3DModelData*)dComIfG_getObjectRes(l_arcName, dRes_INDEX_OBJ_BM_BMD_EF_BIMOBEAM_e);
|
||||
JUT_ASSERT(813, modelData != NULL);
|
||||
mBeamModel = mDoExt_J3DModel__create(modelData, J3DMdlFlag_DifferedDLBuffer, 0x11000284);
|
||||
if (mBeamModel == NULL) {
|
||||
return 0;
|
||||
{
|
||||
J3DAnmTransform* pbck = (J3DAnmTransform*)dComIfG_getObjectRes(l_arcName, dRes_INDEX_OBJ_BM_BCK_BM_UP_e);
|
||||
JUT_ASSERT(798, pbck != NULL);
|
||||
mBeamosBck = new mDoExt_bckAnm();
|
||||
if (mBeamosBck == NULL || mBeamosBck->init(pbck, 1, J3DFrameCtrl::EMode_NONE, 1.0f, 0, -1, false) == 0) {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
J3DAnmTextureSRTKey* pbtk = (J3DAnmTextureSRTKey*)dComIfG_getObjectRes(l_arcName, dRes_INDEX_OBJ_BM_BTK_EF_BIMOBEAMB_OFF_e);
|
||||
JUT_ASSERT(827, pbtk != NULL);
|
||||
mBeamBtk = new mDoExt_btkAnm();
|
||||
if (mBeamBtk == NULL || mBeamBtk->init(modelData, pbtk, 1, J3DFrameCtrl::EMode_NONE, 1.0f, 0, -1) == 0) {
|
||||
return 0;
|
||||
{
|
||||
modelData = (J3DModelData*)dComIfG_getObjectRes(l_arcName, dRes_INDEX_OBJ_BM_BMD_EF_BIMOBEAM_e);
|
||||
JUT_ASSERT(813, modelData != NULL);
|
||||
mBeamModel = mDoExt_J3DModel__create(modelData, J3DMdlFlag_DifferedDLBuffer, 0x11000284);
|
||||
if (mBeamModel == NULL) {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
mBeamBtk->setFrame(mBeamBtk->getEndFrame());
|
||||
|
||||
{
|
||||
J3DAnmTextureSRTKey* pbtk = (J3DAnmTextureSRTKey*)dComIfG_getObjectRes(l_arcName, dRes_INDEX_OBJ_BM_BTK_EF_BIMOBEAMB_OFF_e);
|
||||
JUT_ASSERT(827, pbtk != NULL);
|
||||
mBeamBtk = new mDoExt_btkAnm();
|
||||
if (mBeamBtk == NULL || mBeamBtk->init(modelData, pbtk, 1, J3DFrameCtrl::EMode_NONE, 1.0f, 0, -1) == 0) {
|
||||
return 0;
|
||||
}
|
||||
mBeamBtk->setFrame(mBeamBtk->getEndFrame());
|
||||
|
||||
#if DEBUG
|
||||
J3DAnmTextureSRTKey* pbtk2 = (J3DAnmTextureSRTKey*)dComIfG_getObjectRes(l_arcName, dRes_INDEX_OBJ_BM_BTK_EF_BIMOBEAM_ON_e);
|
||||
JUT_ASSERT(840, pbtk != NULL);
|
||||
pbtk = (J3DAnmTextureSRTKey*)dComIfG_getObjectRes(l_arcName, dRes_INDEX_OBJ_BM_BTK_EF_BIMOBEAM_ON_e);
|
||||
JUT_ASSERT(840, pbtk != NULL);
|
||||
#endif
|
||||
|
||||
pbtk = (J3DAnmTextureSRTKey*)dComIfG_getObjectRes(l_arcName, dRes_INDEX_OBJ_BM_BTK_EF_BIMOBEAM_e);
|
||||
JUT_ASSERT(846, pbtk != NULL);
|
||||
mBeamEffBtk = new mDoExt_btkAnm();
|
||||
if (mBeamEffBtk == NULL || mBeamEffBtk->init(modelData, pbtk, 1, J3DFrameCtrl::EMode_LOOP, 1.0f, 0, -1) == 0) {
|
||||
return 0;
|
||||
pbtk = (J3DAnmTextureSRTKey*)dComIfG_getObjectRes(
|
||||
l_arcName, dRes_INDEX_OBJ_BM_BTK_EF_BIMOBEAM_e);
|
||||
JUT_ASSERT(846, pbtk != NULL);
|
||||
mBeamEffBtk = new mDoExt_btkAnm();
|
||||
if (mBeamEffBtk == NULL || mBeamEffBtk->init(modelData, pbtk, 1, J3DFrameCtrl::EMode_LOOP, 1.0f, 0, -1) == 0) {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
J3DAnmTransform* pbck2 = (J3DAnmTransform*)dComIfG_getObjectRes(l_arcName, dRes_INDEX_OBJ_BM_BCK_EF_BIMOBEAM_e);
|
||||
JUT_ASSERT(858, pbck != NULL);
|
||||
mBeamEffBck = new mDoExt_bckAnm();
|
||||
if (mBeamEffBck == NULL || mBeamEffBck->init(pbck2, 1, J3DFrameCtrl::EMode_LOOP, 1.0f, 0, -1, false) == 0) {
|
||||
return 0;
|
||||
{
|
||||
J3DAnmTransform* pbck = (J3DAnmTransform*)dComIfG_getObjectRes(l_arcName, dRes_INDEX_OBJ_BM_BCK_EF_BIMOBEAM_e);
|
||||
JUT_ASSERT(858, pbck != NULL);
|
||||
mBeamEffBck = new mDoExt_bckAnm();
|
||||
if (mBeamEffBck == NULL || mBeamEffBck->init(pbck, 1, J3DFrameCtrl::EMode_LOOP, 1.0f, 0, -1, false) == 0) {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
modelData = (J3DModelData*)dComIfG_getObjectRes(l_arcName, dRes_INDEX_OBJ_BM_BMD_P_BMF_e);
|
||||
JUT_ASSERT(873, modelData != NULL);
|
||||
mBmfModel = mDoExt_J3DModel__create(modelData, J3DMdlFlag_DifferedDLBuffer, 0x11000084);
|
||||
if (mBmfModel == NULL) {
|
||||
return 0;
|
||||
{
|
||||
modelData = (J3DModelData*)dComIfG_getObjectRes(l_arcName, dRes_INDEX_OBJ_BM_BMD_P_BMF_e);
|
||||
JUT_ASSERT(873, modelData != NULL);
|
||||
mBmfModel = mDoExt_J3DModel__create(modelData, J3DMdlFlag_DifferedDLBuffer, 0x11000084);
|
||||
if (mBmfModel == NULL) {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
J3DAnmTransform* pbck3 = (J3DAnmTransform*)dComIfG_getObjectRes(l_arcName, dRes_INDEX_OBJ_BM_BCK_BMF_OFF_e);
|
||||
JUT_ASSERT(885, pbck != NULL);
|
||||
mBmfOffBck = new mDoExt_bckAnm();
|
||||
if (mBmfOffBck == NULL || mBmfOffBck->init(pbck3, 1, J3DFrameCtrl::EMode_NONE, 1.0f, 0, -1, false) == 0) {
|
||||
return 0;
|
||||
{
|
||||
J3DAnmTransform* pbck = (J3DAnmTransform*)dComIfG_getObjectRes(l_arcName, dRes_INDEX_OBJ_BM_BCK_BMF_OFF_e);
|
||||
JUT_ASSERT(885, pbck != NULL);
|
||||
mBmfOffBck = new mDoExt_bckAnm();
|
||||
if (mBmfOffBck == NULL || mBmfOffBck->init(pbck, 1, J3DFrameCtrl::EMode_NONE, 1.0f, 0, -1, false) == 0) {
|
||||
return 0;
|
||||
}
|
||||
mBmfOffBck->setPlaySpeed(0.0f);
|
||||
}
|
||||
mBmfOffBck->setPlaySpeed(0.0f);
|
||||
|
||||
return 1;
|
||||
}
|
||||
@@ -513,9 +537,10 @@ int daObjBm_c::Execute(Mtx** i_mtx) {
|
||||
#if DEBUG
|
||||
scale.setall(BODY_SCALE);
|
||||
mpModel->setBaseScale(scale);
|
||||
daPy_py_c* player = daPy_getPlayerActorClass();
|
||||
#endif
|
||||
|
||||
daPy_py_c* player = daPy_getPlayerActorClass();
|
||||
|
||||
field_0xff0++;
|
||||
|
||||
if (field_0xf96 != field_0xf98 && field_0xfaa == 0) {
|
||||
@@ -714,11 +739,19 @@ void daObjBm_c::calcBeamLenAndAt() {
|
||||
work.normalizeZP();
|
||||
end += work * 1200.0f;
|
||||
int frame = mBeamBtk->getFrame() + 0.5f;
|
||||
f32 fVar1 = 360.0f;
|
||||
f32 var_f31 = (f32)frame * 360.0f;
|
||||
if (var_f31 > 1200.0f) {
|
||||
var_f31 = 1200.0f;
|
||||
}
|
||||
f32 absVal = 1200.0f;
|
||||
|
||||
if (fopAcM_lc_c::lineCheck(&field_0xfb8, &end, this) && fopAcM_lc_c::checkGroundHit()) {
|
||||
f32 absVal = field_0xfb8.abs(fopAcM_lc_c::getCross());
|
||||
absVal = field_0xfb8.abs(fopAcM_lc_c::getCross());
|
||||
mBeamScale.z = absVal / 1200.0f;
|
||||
|
||||
if (1200.0f * mBeamScale.z < var_f31) {
|
||||
var_f31 = 1200.0f * mBeamScale.z;
|
||||
}
|
||||
} else {
|
||||
mBeamScale.z = 1.0f;
|
||||
}
|
||||
@@ -923,6 +956,8 @@ void daObjBm_c::effectSet1() {}
|
||||
void daObjBm_c::effectEnd() {}
|
||||
|
||||
int daObjBm_c::check_to_walk() {
|
||||
const int src_num = 5;
|
||||
|
||||
int ret = -1;
|
||||
bool flag = true;
|
||||
|
||||
@@ -1046,8 +1081,9 @@ void daObjBm_c::mode_walk() {
|
||||
eyePos = current.pos;
|
||||
|
||||
if (flag) {
|
||||
const daObjBm_c::BgcSrc_c* bgcSrc = mBgc.M_lin5;
|
||||
mBgc.chk_wall_pre(this, bgcSrc, 5, M_dir_base[field_0x10bc]);
|
||||
const int src_num = 5;
|
||||
const daObjBm_c::BgcSrc_c* bgcSrc = Bgc_c::M_lin5;
|
||||
mBgc.chk_wall_pre(this, bgcSrc, src_num, M_dir_base[field_0x10bc]);
|
||||
}
|
||||
|
||||
current.pos.x = local_58.x;
|
||||
@@ -1171,6 +1207,8 @@ void daObjBm_c::Bgc_c::wall_pos(fopAc_ac_c const* i_actor, daObjBm_c::BgcSrc_c c
|
||||
if (absVal < field_0x17c) {
|
||||
field_0x17c = absVal;
|
||||
field_0x178 = i;
|
||||
} else {
|
||||
continue;
|
||||
}
|
||||
} else {
|
||||
field_0x64[i] = cXyz::Zero;
|
||||
@@ -1347,11 +1385,7 @@ void daObjBm_c::initActionAttack() {
|
||||
dPa_RM(ID_ZF_S_BM_NESSENSRC01),
|
||||
};
|
||||
|
||||
#if DEBUG
|
||||
mPlayerDist = fopAcM_searchPlayerDistanceXZ(this) - TARGET_OFFSET_DIST;
|
||||
#else
|
||||
mPlayerDist = fopAcM_searchPlayerDistanceXZ(this);
|
||||
#endif
|
||||
daPy_py_c* player = daPy_getPlayerActorClass();
|
||||
|
||||
mBeamBtk->init(mBeamModel->getModelData(),
|
||||
@@ -1593,11 +1627,15 @@ void daObjBm_c::initActionDead() {
|
||||
|
||||
field_0xfac = field_0xfaa = 0;
|
||||
|
||||
mBeamosBck->init((J3DAnmTransform*)dComIfG_getObjectRes(l_arcName, dRes_ID_OBJ_BM_BCK_OC_DOWN_e), 1,
|
||||
J3DFrameCtrl::EMode_NONE, 0.0f, 0, -1, true);
|
||||
if (mBeamBtk->getBtkAnm() == (J3DAnmTextureSRTKey*)dComIfG_getObjectRes(l_arcName, dRes_ID_OBJ_BM_BTK_EF_BIMOBEAM_ON_e)) {
|
||||
mBeamosBck->init((J3DAnmTransform*)dComIfG_getObjectRes(l_arcName,
|
||||
dRes_ID_OBJ_BM_BCK_OC_DOWN_e), 1,
|
||||
J3DFrameCtrl::EMode_NONE, 0.0f, 0, -1, true);
|
||||
J3DAnmTextureSRTKey* anmTexSRTKey =
|
||||
(J3DAnmTextureSRTKey*)dComIfG_getObjectRes(l_arcName, dRes_ID_OBJ_BM_BTK_EF_BIMOBEAM_ON_e);
|
||||
if (mBeamBtk->getBtkAnm() == anmTexSRTKey) {
|
||||
mBeamBtk->init(mBeamModel->getModelData(),
|
||||
(J3DAnmTextureSRTKey*)dComIfG_getObjectRes(l_arcName, dRes_INDEX_OBJ_BM_BTK_EF_BIMOBEAMB_OFF_e),
|
||||
(J3DAnmTextureSRTKey*)dComIfG_getObjectRes(
|
||||
l_arcName, dRes_INDEX_OBJ_BM_BTK_EF_BIMOBEAMB_OFF_e),
|
||||
1, J3DFrameCtrl::EMode_NONE, 1.0f, 0, -1);
|
||||
}
|
||||
|
||||
|
||||
@@ -104,6 +104,8 @@ void daObjDust_c::setBaseMtx() {
|
||||
}
|
||||
|
||||
static void rideCallBack(dBgW* i_bgw, fopAc_ac_c* i_bgActor, fopAc_ac_c* i_rideActor) {
|
||||
UNUSED(i_bgw);
|
||||
UNUSED(i_bgActor);
|
||||
fopAc_ac_c* ride_actor = (fopAc_ac_c*)i_rideActor;
|
||||
daObjDust_c* a_this = (daObjDust_c*)i_bgActor;
|
||||
|
||||
@@ -130,6 +132,18 @@ static int daObjDust_Delete(daObjDust_c* i_this) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
int daObjDust_c::CreateHeap() {
|
||||
J3DModelData* modelData = (J3DModelData*)dComIfG_getObjectRes(l_arcName, "M_FloatingDust01.bmd");
|
||||
JUT_ASSERT(86, modelData != NULL);
|
||||
|
||||
mpModel = mDoExt_J3DModel__create(modelData, 0x80000, 0x11000084);
|
||||
if (mpModel == NULL) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
int daObjDust_c::create() {
|
||||
fopAcM_ct(this, daObjDust_c);
|
||||
|
||||
@@ -168,18 +182,6 @@ static int daObjDust_Create(fopAc_ac_c* i_this) {
|
||||
return a_this->create();
|
||||
}
|
||||
|
||||
int daObjDust_c::CreateHeap() {
|
||||
J3DModelData* modelData = (J3DModelData*)dComIfG_getObjectRes(l_arcName, "M_FloatingDust01.bmd");
|
||||
JUT_ASSERT(86, modelData != NULL);
|
||||
|
||||
mpModel = mDoExt_J3DModel__create(modelData, 0x80000, 0x11000084);
|
||||
if (mpModel == NULL) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
int daObjDust_c::Create() {
|
||||
initBaseMtx();
|
||||
mpBgW->SetRideCallback(rideCallBack);
|
||||
|
||||
@@ -125,7 +125,7 @@ int daObjFallObj_c::create1st() {
|
||||
if (phase == cPhs_ERROR_e) {
|
||||
return phase;
|
||||
}
|
||||
|
||||
|
||||
#if DEBUG
|
||||
// Falling obj
|
||||
l_HIO.entryHIO("落下OBJ");
|
||||
@@ -134,7 +134,6 @@ int daObjFallObj_c::create1st() {
|
||||
return phase;
|
||||
}
|
||||
|
||||
// TODO: Debug Nonmatching / Fakematch (bVar1)
|
||||
int daObjFallObj_c::Execute(Mtx** i_mtx) {
|
||||
cXyz cStack_d8(0.0f, 150.0f, 160.0f + KREG_F(0));
|
||||
|
||||
@@ -147,38 +146,32 @@ int daObjFallObj_c::Execute(Mtx** i_mtx) {
|
||||
|
||||
daPy_py_c* player = daPy_getPlayerActorClass();
|
||||
|
||||
f32 dVar12 = std::fabs(player->current.pos.y - cStack_d8.y);
|
||||
f32 dVar13 = cStack_d8.absXZ(player->current.pos);
|
||||
f32 dVar14 = player->current.pos.abs(cStack_d8);
|
||||
f32 var_f31 = std::fabs(player->current.pos.y - cStack_d8.y);
|
||||
f32 var_f30 = cStack_d8.absXZ(player->current.pos);
|
||||
f32 var_f29 = player->current.pos.abs(cStack_d8);
|
||||
|
||||
dBgS_LinChk linChk;
|
||||
linChk.Set(&player->eyePos, &attention_info.position, this);
|
||||
|
||||
bool bVar1 = false;
|
||||
|
||||
//TODO: fakematch
|
||||
#if DEBUG
|
||||
int check3 = 0;
|
||||
int check2 = 0;
|
||||
int check1 = 0;
|
||||
if (!dComIfG_Bgsp().LineCross(&linChk) && !checkHang2()) {
|
||||
check1 = 1;
|
||||
}
|
||||
if (check1 && dVar12 - KREG_F(4) < dVar13) {
|
||||
check2 = 1;
|
||||
}
|
||||
if (check2 && dVar14 < 2150.0f - KREG_F(5)) {
|
||||
check3 = 1;
|
||||
}
|
||||
if (check3 && mAction == ACTION_WAIT) {
|
||||
bVar1 = true;
|
||||
}
|
||||
bool temp = !dComIfG_Bgsp().LineCross(&linChk) &&
|
||||
!checkHang2() &&
|
||||
var_f31 - KREG_F(4) < var_f30 &&
|
||||
var_f29 < 2150.0f - KREG_F(5) &&
|
||||
mAction == ACTION_WAIT;
|
||||
#else
|
||||
if (!dComIfG_Bgsp().LineCross(&linChk) && !checkHang2() && dVar12 - KREG_F(4) < dVar13 && dVar14 < 2150.0f - KREG_F(5) && mAction == ACTION_WAIT) {
|
||||
bVar1 = true;
|
||||
bool temp = false;
|
||||
if (!dComIfG_Bgsp().LineCross(&linChk) &&
|
||||
!checkHang2() &&
|
||||
var_f31 - KREG_F(4) < var_f30 &&
|
||||
var_f29 < 2150.0f - KREG_F(5) &&
|
||||
mAction == ACTION_WAIT) {
|
||||
temp = true;
|
||||
}
|
||||
#endif
|
||||
|
||||
if (((bool) bVar1) != 0) {
|
||||
if (temp) {
|
||||
attention_info.distances[fopAc_attn_BATTLE_e] = 0x22;
|
||||
attention_info.flags |= fopAc_AttnFlag_BATTLE_e;
|
||||
} else {
|
||||
@@ -217,7 +210,7 @@ void daObjFallObj_c::action() {
|
||||
action_follow_fall();
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
if (mVibrationOn && !field_0x5e4) {
|
||||
dComIfGp_getVibration().StopQuake(0x1f);
|
||||
mVibrationOn = false;
|
||||
@@ -344,7 +337,7 @@ void daObjFallObj_c::action_follow_fall() {
|
||||
bool daObjFallObj_c::checkHang() {
|
||||
bool rv = false;
|
||||
daPy_py_c* player = daPy_getPlayerActorClass();
|
||||
|
||||
|
||||
u32 status = dComIfGp_checkPlayerStatus1(0, 0x2000000);
|
||||
if (status && fopAcM_searchPlayerDistanceXZ(this) < 250.0f &&
|
||||
player->current.pos.y > current.pos.y - 100.0f &&
|
||||
@@ -395,7 +388,7 @@ bool daObjFallObj_c::checkHang2() {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
@@ -11,38 +11,6 @@
|
||||
#include "JSystem/JHostIO/JORFile.h"
|
||||
#include <cstring>
|
||||
|
||||
struct daObj_ItaMato_HIOParam {
|
||||
/* 0x00 */ f32 attn_offset;
|
||||
/* 0x04 */ f32 gravity;
|
||||
/* 0x08 */ f32 scale;
|
||||
/* 0x0C */ f32 real_shadow_size;
|
||||
/* 0x10 */ f32 shake_pow;
|
||||
};
|
||||
|
||||
class daObj_ItaMato_Param_c {
|
||||
public:
|
||||
virtual ~daObj_ItaMato_Param_c() {}
|
||||
|
||||
static daObj_ItaMato_HIOParam const m;
|
||||
};
|
||||
|
||||
#if DEBUG
|
||||
#define PARAM mHIO->mAttr
|
||||
#define PARAM_CLASS daObj_ItaMato_HIO_c
|
||||
|
||||
class daObj_ItaMato_HIO_c : public mDoHIO_entry_c {
|
||||
public:
|
||||
daObj_ItaMato_HIO_c();
|
||||
void genMessage(JORMContext* ctx);
|
||||
void listenPropertyEvent(const JORPropertyEvent*);
|
||||
|
||||
/* 0x8 */ daObj_ItaMato_HIOParam mAttr;
|
||||
};
|
||||
#else
|
||||
#define PARAM daObj_ItaMato_Param_c::m
|
||||
#define PARAM_CLASS daObj_ItaMato_Param_c
|
||||
#endif
|
||||
|
||||
daObj_ItaMato_HIOParam const daObj_ItaMato_Param_c::m = {
|
||||
110.0f,
|
||||
-3.0f,
|
||||
@@ -53,7 +21,7 @@ daObj_ItaMato_HIOParam const daObj_ItaMato_Param_c::m = {
|
||||
|
||||
#if DEBUG
|
||||
daObj_ItaMato_HIO_c::daObj_ItaMato_HIO_c() {
|
||||
mAttr = daObj_ItaMato_Param_c::m;
|
||||
m = daObj_ItaMato_Param_c::m;
|
||||
}
|
||||
|
||||
void daObj_ItaMato_HIO_c::listenPropertyEvent(const JORPropertyEvent* i_event) {
|
||||
@@ -64,18 +32,18 @@ void daObj_ItaMato_HIO_c::listenPropertyEvent(const JORPropertyEvent* i_event) {
|
||||
|
||||
switch ((u32)i_event->id) {
|
||||
case 0x40000002:
|
||||
if (jorFile.open(6, "すべてのファイル(*.*)", NULL, NULL, NULL)) {
|
||||
if (jorFile.open(6, "すべてのファイル(*.*)\0*.*", NULL, NULL, NULL)) {
|
||||
memset(buffer, 0, sizeof(buffer));
|
||||
len = 0;
|
||||
sprintf(buffer + len, "%.3ff,\t// 注目オフセット\n", mAttr.attn_offset);
|
||||
sprintf(buffer + len, "%.3ff,\t// 注目オフセット\n", m.attn_offset);
|
||||
len = strlen(buffer);
|
||||
sprintf(buffer + len, "%.3ff,\t// 重力\n", mAttr.gravity);
|
||||
sprintf(buffer + len, "%.3ff,\t// 重力\n", m.gravity);
|
||||
len = strlen(buffer);
|
||||
sprintf(buffer + len, "%.3ff,\t// スケ−ル\n", mAttr.scale);
|
||||
sprintf(buffer + len, "%.3ff,\t// スケ−ル\n", m.scale);
|
||||
len = strlen(buffer);
|
||||
sprintf(buffer + len, "%.3ff,\t// リアル影サイズ\n", mAttr.real_shadow_size);
|
||||
sprintf(buffer + len, "%.3ff,\t// リアル影サイズ\n", m.real_shadow_size);
|
||||
len = strlen(buffer);
|
||||
sprintf(buffer + len, "%.3ff,\t// 揺れパワ−\n", mAttr.shake_pow);
|
||||
sprintf(buffer + len, "%.3ff,\t// 揺れパワ−\n", m.shake_pow);
|
||||
len = strlen(buffer);
|
||||
jorFile.writeData(buffer, len);
|
||||
jorFile.close();
|
||||
@@ -88,11 +56,11 @@ void daObj_ItaMato_HIO_c::listenPropertyEvent(const JORPropertyEvent* i_event) {
|
||||
}
|
||||
|
||||
void daObj_ItaMato_HIO_c::genMessage(JORMContext* ctx) {
|
||||
ctx->genSlider("注目オフセット ", &mAttr.attn_offset, 0.0f, 1000.0f);
|
||||
ctx->genSlider("重力 ", &mAttr.gravity, -100.0f, 100.0f);
|
||||
ctx->genSlider("スケ−ル ", &mAttr.scale, 0.0f, 100.0f);
|
||||
ctx->genSlider("リアル影サイズ ", &mAttr.real_shadow_size, 0.0f, 10000.0f);
|
||||
ctx->genSlider("揺れパワ− ", &mAttr.shake_pow, 0.0f, 90.0f);
|
||||
ctx->genSlider("注目オフセット ", &m.attn_offset, 0.0f, 1000.0f);
|
||||
ctx->genSlider("重力 ", &m.gravity, -100.0f, 100.0f);
|
||||
ctx->genSlider("スケ−ル ", &m.scale, 0.0f, 100.0f);
|
||||
ctx->genSlider("リアル影サイズ ", &m.real_shadow_size, 0.0f, 10000.0f);
|
||||
ctx->genSlider("揺れパワ− ", &m.shake_pow, 0.0f, 90.0f);
|
||||
ctx->genButton("ファイル書き出し", 0x40000002);
|
||||
}
|
||||
#endif
|
||||
@@ -111,7 +79,7 @@ static dCcD_SrcSph l_ccDSph = {
|
||||
} // mSphAttr
|
||||
};
|
||||
|
||||
static PARAM_CLASS l_HIO;
|
||||
static OBJ_ITAMATO_HIO_CLASS l_HIO;
|
||||
|
||||
static char* l_resName = "H_ItaMato";
|
||||
|
||||
@@ -255,7 +223,9 @@ int daObj_ItaMato_c::Execute() {
|
||||
}
|
||||
}
|
||||
|
||||
dComIfGs_setTmpReg(0xF4FF, dComIfGs_getTmpReg(0xF4FF) + 1);
|
||||
u8 curRegVal = dComIfGs_getTmpReg(0xF4FF);
|
||||
curRegVal++;
|
||||
dComIfGs_setTmpReg(0xF4FF, curRegVal);
|
||||
if (dComIfGp_getAttention()->GetLockonList(0) != NULL) {
|
||||
if (dComIfGp_getAttention()->LockonTruth()) {
|
||||
if (this == dComIfGp_getAttention()->GetLockonList(0)->getActor()) {
|
||||
@@ -311,7 +281,7 @@ int daObj_ItaMato_c::Execute() {
|
||||
cLib_addCalc2(&field_0x9f0[2], 0.0f, 0.125f, 125.0f);
|
||||
setMtx();
|
||||
attention_info.position = current.pos;
|
||||
attention_info.position.y += PARAM.attn_offset;
|
||||
attention_info.position.y += mHIO->m.attn_offset;
|
||||
eyePos = attention_info.position;
|
||||
|
||||
if (field_0xa16 == 0) {
|
||||
@@ -399,7 +369,7 @@ const char* daObj_ItaMato_c::getResName() {
|
||||
|
||||
void daObj_ItaMato_c::setSwayParam(fopAc_ac_c* i_actor) {
|
||||
f32 fVar1 = 1.0f;
|
||||
f32 fVar2[3] = {0.0f, 0.0f, PARAM.shake_pow};
|
||||
f32 fVar2[3] = {0.0f, 0.0f, mHIO->m.shake_pow};
|
||||
|
||||
field_0xa02 = fopAcM_searchActorAngleY(this, i_actor) - shape_angle.y + 0x8000;
|
||||
field_0x9e8 = 8;
|
||||
|
||||
@@ -15,6 +15,18 @@
|
||||
#include "m_Do/m_Do_lib.h"
|
||||
#include <cstring>
|
||||
|
||||
class daObj_KatHIO_c : public JORReflexible {
|
||||
public:
|
||||
daObj_KatHIO_c();
|
||||
virtual ~daObj_KatHIO_c() {}
|
||||
|
||||
void genMessage(JORMContext* ctx);
|
||||
|
||||
s8 field_0x4;
|
||||
f32 mScaleFemale;
|
||||
f32 mScaleMale;
|
||||
};
|
||||
|
||||
static u8 hio_set;
|
||||
|
||||
static daObj_KatHIO_c l_HIO;
|
||||
@@ -25,6 +37,17 @@ daObj_KatHIO_c::daObj_KatHIO_c() {
|
||||
mScaleFemale = 1.0f;
|
||||
}
|
||||
|
||||
#if DEBUG
|
||||
void daObj_KatHIO_c::genMessage(JORMContext* ctx) {
|
||||
// Golden Snail
|
||||
ctx->genLabel("黄金蟲(カタツムリ)", 0x80000001);
|
||||
// Model scale (male)
|
||||
ctx->genSlider("モデルスケール(オス)", &mScaleMale, 0.1f, 4.0f);
|
||||
// Model scale (female)
|
||||
ctx->genSlider("モデルスケール(メス)", &mScaleFemale, 0.1f, 4.0f);
|
||||
}
|
||||
#endif
|
||||
|
||||
static u8 const l_kat_itemno[2] = {
|
||||
fpcNm_ITEM_M_SNAIL,
|
||||
fpcNm_ITEM_F_SNAIL,
|
||||
@@ -84,7 +107,7 @@ static int useHeapInit(fopAc_ac_c* i_this) {
|
||||
return kat->CreateHeap();
|
||||
}
|
||||
|
||||
int daObjKAT_c::CreateHeap() {
|
||||
inline int daObjKAT_c::CreateHeap() {
|
||||
J3DModelData* modelData = (J3DModelData*)dComIfG_getObjectRes("Kat", 9);
|
||||
JUT_ASSERT(0x136, modelData != NULL);
|
||||
mpMorfSO =
|
||||
@@ -140,12 +163,12 @@ int daObjKAT_c::CreateHeap() {
|
||||
|
||||
static int daObjKAT_Create(fopAc_ac_c* i_this) {
|
||||
daObjKAT_c* kat = (daObjKAT_c*)i_this;
|
||||
fpc_ProcID unused = fopAcM_GetID(i_this);
|
||||
fopAcM_RegisterCreateID(i_this, "Obj_KAT");
|
||||
return kat->create();
|
||||
}
|
||||
|
||||
static int daObjKAT_Delete(daObjKAT_c* i_this) {
|
||||
fpc_ProcID unused = fopAcM_GetID(i_this);
|
||||
fopAcM_RegisterDeleteID(i_this, "Obj_KAT");
|
||||
i_this->Delete();
|
||||
return 1;
|
||||
}
|
||||
@@ -623,7 +646,7 @@ void daObjKAT_c::Z_BufferChk() {
|
||||
field_0x800 = ((near + far * near / projected.z) / (far - near) + 1.0f) * 16777215.0f;
|
||||
}
|
||||
|
||||
int daObjKAT_c::Delete() {
|
||||
inline int daObjKAT_c::Delete() {
|
||||
dComIfG_resDelete(&mPhase, "Kat");
|
||||
if (field_0xa70 != 0) {
|
||||
hio_set = 0;
|
||||
@@ -694,12 +717,12 @@ bool daObjKAT_c::CreateChk() {
|
||||
return true;
|
||||
}
|
||||
|
||||
int daObjKAT_c::create() {
|
||||
inline int daObjKAT_c::create() {
|
||||
fopAcM_ct(this, daObjKAT_c);
|
||||
|
||||
s32 loadResult = dComIfG_resLoad(&mPhase, "Kat");
|
||||
if (loadResult == cPhs_COMPLEATE_e) {
|
||||
OS_REPORT("KAT PARAM: %x", fopAcM_GetParam(this));
|
||||
OS_REPORT("KAT PARAM %x\n", fopAcM_GetParam(this));
|
||||
field_0x808 = fopAcM_GetParam(this) & 0xf;
|
||||
if (field_0x808 == 2) {
|
||||
field_0x56c = 0;
|
||||
|
||||
@@ -22,7 +22,6 @@ static const u32 l_dzbidx[3] = {9, 8, 10};
|
||||
|
||||
static const int l_bmdidx[2] = {4, 5};
|
||||
|
||||
|
||||
static const char* l_arcName = "K_Wheel01";
|
||||
|
||||
// Likely to have been a macro; matches for loop at beginning of create1st for both debug and retail, despite retail only calling getArg4567()
|
||||
@@ -57,17 +56,17 @@ cPhs_Step daObjKWheel01_c::create1st() {
|
||||
bool atLeastOneKLiftExists = false;
|
||||
s8 debugStackVar;
|
||||
|
||||
for(int i = 0; i < 4; i++) {
|
||||
if(CHECK_KLIFT_EXISTS(i)) {
|
||||
for (int i = 0; i < 4; i++) {
|
||||
if (CHECK_KLIFT_EXISTS(i)) {
|
||||
atLeastOneKLiftExists = true;
|
||||
}
|
||||
}
|
||||
|
||||
if(!mCreatedKLifts) {
|
||||
if (!mCreatedKLifts) {
|
||||
setMtx();
|
||||
u32 createLiftParameters = (getArg2() & 0x3F) | daObjKLift00_c::LOCK_e | daObjKLift00_c::NO_BASE_DISP;
|
||||
for(int i = 0; i < 4; i++) {
|
||||
if(CHECK_KLIFT_EXISTS(i)) {
|
||||
for (int i = 0; i < 4; i++) {
|
||||
if (CHECK_KLIFT_EXISTS(i)) {
|
||||
cXyz kLiftPos;
|
||||
MTXMultVec(mNewBgMtx, &l_pos[i], &kLiftPos);
|
||||
m_klift_pid[i] = fopAcM_create(PROC_Obj_KLift00, createLiftParameters, &kLiftPos, fopAcM_GetHomeRoomNo(this), 0, 0, -1);
|
||||
@@ -79,25 +78,32 @@ cPhs_Step daObjKWheel01_c::create1st() {
|
||||
}
|
||||
|
||||
cPhs_Step phase = static_cast<cPhs_Step>(dComIfG_resLoad(this, l_arcName));
|
||||
if(phase == cPhs_COMPLEATE_e) {
|
||||
if (phase == cPhs_COMPLEATE_e) {
|
||||
mYAngularVelocity = 0;
|
||||
setMtx();
|
||||
|
||||
|
||||
phase = static_cast<cPhs_Step>(MoveBGCreate(l_arcName, (getOut() ? l_dzbidx[2] : l_dzbidx[0]), dBgS_MoveBGProc_TypicalRotY, 0x5D98, &mNewBgMtx));
|
||||
if(phase == cPhs_ERROR_e)
|
||||
return phase;
|
||||
|
||||
for(int i = 0; i < 4; i++) {
|
||||
if(CHECK_KLIFT_EXISTS(i) && dComIfG_Bgsp().Regist(mKLiftCollisions[i], this))
|
||||
return cPhs_ERROR_e;
|
||||
u32 dzbId;
|
||||
if (getOut()) {
|
||||
dzbId = l_dzbidx[2];
|
||||
} else {
|
||||
dzbId = l_dzbidx[0];
|
||||
}
|
||||
phase = static_cast<cPhs_Step>(MoveBGCreate(l_arcName, dzbId, dBgS_MoveBGProc_TypicalRotY, 0x5D98, &mNewBgMtx));
|
||||
if (phase == cPhs_ERROR_e) {
|
||||
return phase;
|
||||
}
|
||||
}
|
||||
|
||||
#if DEBUG
|
||||
// "Pulley(Lv3)"
|
||||
l_HIO.entryHIO("滑車(Lv3)");
|
||||
#endif
|
||||
for (int i = 0; i < 4; i++) {
|
||||
if (CHECK_KLIFT_EXISTS(i) && dComIfG_Bgsp().Regist(mKLiftCollisions[i], this)) {
|
||||
return cPhs_ERROR_e;
|
||||
}
|
||||
}
|
||||
|
||||
#if DEBUG
|
||||
// "Pulley(Lv3)"
|
||||
l_HIO.entryHIO("滑車(Lv3)");
|
||||
#endif
|
||||
}
|
||||
|
||||
return phase;
|
||||
}
|
||||
@@ -114,14 +120,14 @@ void daObjKWheel01_c::setMtx() {
|
||||
MTXCopy(mDoMtx_stack_c::get(), mTransformMtx);
|
||||
MTXCopy(mDoMtx_stack_c::get(), mNewBgMtx);
|
||||
|
||||
if(mYAngularVelocity) {
|
||||
if (mYAngularVelocity) {
|
||||
mDoMtx_stack_c::copy(mTransformMtx);
|
||||
mDoMtx_stack_c::transM(cM_rndFX(1.0f), cM_rndFX(1.0f), cM_rndFX(1.0f));
|
||||
MTXCopy(mDoMtx_stack_c::get(), mTransformMtx);
|
||||
}
|
||||
|
||||
for(int i = 0; i < 4; i++) {
|
||||
if(CHECK_KLIFT_EXISTS(i)) {
|
||||
for (int i = 0; i < 4; i++) {
|
||||
if (CHECK_KLIFT_EXISTS(i)) {
|
||||
Vec kLiftPos;
|
||||
MTXMultVec(mNewBgMtx, &l_pos[i], &kLiftPos);
|
||||
mDoMtx_stack_c::transS(kLiftPos.x, kLiftPos.y, kLiftPos.z);
|
||||
@@ -135,20 +141,21 @@ int daObjKWheel01_c::CreateHeap() {
|
||||
JUT_ASSERT(229, model_data != NULL);
|
||||
mpModel = mDoExt_J3DModel__create(model_data, (1 << 19), 0x11000084);
|
||||
|
||||
if(!mpModel)
|
||||
if (!mpModel) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
for(int i = 0; i < 4; i++) {
|
||||
if(!CHECK_KLIFT_EXISTS(i)) {
|
||||
for (int i = 0; i < 4; i++) {
|
||||
if (!CHECK_KLIFT_EXISTS(i)) {
|
||||
mKLiftCollisions[i] = NULL;
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
mKLiftCollisions[i] = new (dBgW);
|
||||
|
||||
if(!mKLiftCollisions[i])
|
||||
if (!mKLiftCollisions[i]) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
if(mKLiftCollisions[i]->Set(static_cast<cBgD_t*>(dComIfG_getObjectRes(l_arcName, l_dzbidx[1])), 1, &mKLiftBaseMatrices[i])) {
|
||||
if (mKLiftCollisions[i]->Set(static_cast<cBgD_t*>(dComIfG_getObjectRes(l_arcName, l_dzbidx[1])), 1, &mKLiftBaseMatrices[i])) {
|
||||
mKLiftCollisions[i] = NULL;
|
||||
return 0;
|
||||
}
|
||||
@@ -162,19 +169,20 @@ int daObjKWheel01_c::Create() {
|
||||
mpModel->setBaseTRMtx(mTransformMtx);
|
||||
fopAcM_SetMtx(this, mTransformMtx);
|
||||
|
||||
if(getSwNo() != 0xFF && fopAcM_isSwitch(this, getSwNo())) {
|
||||
if (getSwNo() != 0xFF && fopAcM_isSwitch(this, getSwNo())) {
|
||||
#if DEBUG
|
||||
if(getArg0()) {
|
||||
if (getArg0()) {
|
||||
mYAngularVelocity = l_HIO.mTargetYAngularSpeed;
|
||||
}
|
||||
else
|
||||
} else {
|
||||
mYAngularVelocity = -l_HIO.mTargetYAngularSpeed;
|
||||
#else
|
||||
if(getArg0())
|
||||
}
|
||||
#else
|
||||
if (getArg0()) {
|
||||
mYAngularVelocity = 64;
|
||||
else
|
||||
} else {
|
||||
mYAngularVelocity = -64;
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
fopAcM_setCullSizeBox(this, l_cull_box.min.x, l_cull_box.min.y, l_cull_box.min.z, l_cull_box.max.x, l_cull_box.max.y, l_cull_box.max.z);
|
||||
@@ -184,9 +192,9 @@ int daObjKWheel01_c::Create() {
|
||||
|
||||
static void* searchKWheel00(void* param_0, void* i_this) {
|
||||
UNUSED(i_this);
|
||||
if(param_0 && fopAcM_IsActor(param_0) && fopAcM_GetProfName(param_0) == PROC_Obj_KWheel00) {
|
||||
if (param_0 && fopAcM_IsActor(param_0) && fopAcM_GetProfName(param_0) == PROC_Obj_KWheel00) {
|
||||
daObjKWheel00_c* const kWheel00 = static_cast<daObjKWheel00_c*>(param_0);
|
||||
if(kWheel00->getType() == daObjKWheel00_c::TYPE_LARGE_GOLD) {
|
||||
if (kWheel00->getType() == daObjKWheel00_c::TYPE_LARGE_GOLD) {
|
||||
return param_0;
|
||||
}
|
||||
}
|
||||
@@ -197,17 +205,18 @@ static void* searchKWheel00(void* param_0, void* i_this) {
|
||||
int daObjKWheel01_c::Execute(Mtx** i_mtx) {
|
||||
eventUpdate();
|
||||
|
||||
if(getSwNo() == 0xFF) {
|
||||
if (getSwNo() == 0xFF) {
|
||||
daObjKWheel00_c* const foundKWheel00 = static_cast<daObjKWheel00_c*>(fopAcM_Search(searchKWheel00, this));
|
||||
if(foundKWheel00) {
|
||||
if(getArg0())
|
||||
current.angle.y += foundKWheel00->current.angle.z - foundKWheel00->old.angle.z;
|
||||
else
|
||||
current.angle.y -= foundKWheel00->current.angle.z - foundKWheel00->old.angle.z;
|
||||
if (foundKWheel00) {
|
||||
if (getArg0()) {
|
||||
ANGLE_ADD_2(current.angle.y, foundKWheel00->current.angle.z - foundKWheel00->old.angle.z);
|
||||
} else {
|
||||
ANGLE_SUB_2(current.angle.y, foundKWheel00->current.angle.z - foundKWheel00->old.angle.z);
|
||||
}
|
||||
|
||||
shape_angle.y = current.angle.y;
|
||||
|
||||
if(current.angle.y != old.angle.y) {
|
||||
if (current.angle.y != old.angle.y) {
|
||||
#if DEBUG
|
||||
mYAngularVelocity = l_HIO.mTargetYAngularSpeed;
|
||||
#else
|
||||
@@ -215,35 +224,32 @@ int daObjKWheel01_c::Execute(Mtx** i_mtx) {
|
||||
#endif
|
||||
}
|
||||
}
|
||||
}
|
||||
else {
|
||||
if(mYAngularVelocity == 0) {
|
||||
if(fopAcM_isSwitch(this, getSwNo())) {
|
||||
if(getEvent() != 0xFF) {
|
||||
const s32 eventIndex = dComIfGp_getEventManager().getEventIdx(this, getEvent());
|
||||
setEvent(eventIndex, getEvent(), 1);
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
if (mYAngularVelocity == 0) {
|
||||
if (fopAcM_isSwitch(this, getSwNo())) {
|
||||
if (getEvent() != 0xFF) {
|
||||
s16 eventIndex = (s16)dComIfGp_getEventManager().getEventIdx(this, getEvent());
|
||||
setEvent(eventIndex, (u8)getEvent(), 1);
|
||||
} else {
|
||||
eventStart();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(mYAngularVelocity != 0) {
|
||||
if (mYAngularVelocity != 0) {
|
||||
#if DEBUG
|
||||
if(mYAngularVelocity > 0) {
|
||||
if(mYAngularVelocity < l_HIO.mTargetYAngularSpeed)
|
||||
if (mYAngularVelocity > 0) {
|
||||
if (mYAngularVelocity < l_HIO.mTargetYAngularSpeed) {
|
||||
mYAngularVelocity += l_HIO.mYAngularAcceleration;
|
||||
}
|
||||
else if(mYAngularVelocity > -l_HIO.mTargetYAngularSpeed) {
|
||||
}
|
||||
} else if (mYAngularVelocity > -l_HIO.mTargetYAngularSpeed) {
|
||||
mYAngularVelocity -= l_HIO.mYAngularAcceleration;
|
||||
}
|
||||
#else
|
||||
if(mYAngularVelocity > 0) {
|
||||
if(mYAngularVelocity < 64)
|
||||
if (mYAngularVelocity > 0) {
|
||||
if (mYAngularVelocity < 64)
|
||||
mYAngularVelocity += 2;
|
||||
}
|
||||
else if(mYAngularVelocity > -64) {
|
||||
} else if (mYAngularVelocity > -64) {
|
||||
mYAngularVelocity -= 2;
|
||||
}
|
||||
#endif
|
||||
@@ -257,11 +263,11 @@ int daObjKWheel01_c::Execute(Mtx** i_mtx) {
|
||||
mpModel->setBaseTRMtx(mTransformMtx);
|
||||
*i_mtx = &mNewBgMtx;
|
||||
|
||||
for(int i = 0; i < 4; i++) {
|
||||
if(CHECK_KLIFT_EXISTS(i)) {
|
||||
for (int i = 0; i < 4; i++) {
|
||||
if (CHECK_KLIFT_EXISTS(i)) {
|
||||
daObjKLift00_c* const foundKLift = static_cast<daObjKLift00_c*>(fopAcM_SearchByID(m_klift_pid[i]));
|
||||
|
||||
if(foundKLift) {
|
||||
if (foundKLift) {
|
||||
cXyz kLiftOffset;
|
||||
MTXMultVec(mNewBgMtx, &l_pos[i], &kLiftOffset);
|
||||
|
||||
@@ -273,14 +279,17 @@ int daObjKWheel01_c::Execute(Mtx** i_mtx) {
|
||||
}
|
||||
|
||||
|
||||
for(int i = 0; i < 4; i++) {
|
||||
if(CHECK_KLIFT_EXISTS(i))
|
||||
for (int i = 0; i < 4; i++) {
|
||||
if (CHECK_KLIFT_EXISTS(i)) {
|
||||
mKLiftCollisions[i]->Move();
|
||||
}
|
||||
}
|
||||
|
||||
// Stack ordering issues arise if mDoAud_seStartLevel is used
|
||||
if(mYAngularVelocity)
|
||||
Z2GetAudioMgr()->seStartLevel(Z2SE_OBJ_GEAR_LV, ¤t.pos, 0, 0, 1.0f, 1.0f, -1.0f, -1.0f, 0);
|
||||
if (mYAngularVelocity) {
|
||||
Z2GetAudioMgr()->seStartLevel(Z2SE_OBJ_GEAR_LV, ¤t.pos, 0, 0, 1.0f, 1.0f, -1.0f,
|
||||
-1.0f, 0);
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
@@ -303,9 +312,10 @@ int daObjKWheel01_c::Delete() {
|
||||
l_HIO.removeHIO();
|
||||
#endif
|
||||
|
||||
for(int i = 0; i < 4; i++) {
|
||||
if(CHECK_KLIFT_EXISTS(i) && mKLiftCollisions[i] && mKLiftCollisions[i]->ChkUsed())
|
||||
for (int i = 0; i < 4; i++) {
|
||||
if (CHECK_KLIFT_EXISTS(i) && mKLiftCollisions[i] && mKLiftCollisions[i]->ChkUsed()) {
|
||||
dComIfG_Bgsp().Release(mKLiftCollisions[i]);
|
||||
}
|
||||
}
|
||||
|
||||
return 1;
|
||||
@@ -313,15 +323,17 @@ int daObjKWheel01_c::Delete() {
|
||||
|
||||
bool daObjKWheel01_c::eventStart() {
|
||||
#if DEBUG
|
||||
if(getArg0())
|
||||
if (getArg0()) {
|
||||
mYAngularVelocity = l_HIO.mYAngularAcceleration;
|
||||
else
|
||||
} else {
|
||||
mYAngularVelocity = -l_HIO.mYAngularAcceleration;
|
||||
}
|
||||
#else
|
||||
if(getArg0())
|
||||
if (getArg0()) {
|
||||
mYAngularVelocity = 2;
|
||||
else
|
||||
} else {
|
||||
mYAngularVelocity = -2;
|
||||
}
|
||||
#endif
|
||||
|
||||
return true;
|
||||
|
||||
@@ -259,7 +259,7 @@ void daLv6SwGate_c::modeBreak() {
|
||||
dComIfGp_particle_set(0x8B7D, &p, &shape_angle, 0);
|
||||
p.set(-150.0f - mMovementAmount, 0.0f, 0.0f);
|
||||
csXyz shapeAngle(shape_angle);
|
||||
shapeAngle.y += 0x8000;
|
||||
ANGLE_ADD_2(shapeAngle.y, 0x8000);
|
||||
mDoMtx_stack_c::ZXYrotS(shapeAngle.x, shapeAngle.y, shapeAngle.z);
|
||||
mDoMtx_stack_c::multVec(&p, &p);
|
||||
p += current.pos;
|
||||
@@ -304,14 +304,14 @@ static int daLv6SwGate_Execute(daLv6SwGate_c* i_this) {
|
||||
}
|
||||
|
||||
static int daLv6SwGate_Delete(daLv6SwGate_c* i_this) {
|
||||
fpc_ProcID id = fopAcM_GetID(i_this);
|
||||
fopAcM_RegisterDeleteID(i_this, "daLv6SwGate");
|
||||
return i_this->MoveBGDelete();
|
||||
}
|
||||
|
||||
static int daLv6SwGate_Create(fopAc_ac_c* i_this) {
|
||||
daLv6SwGate_c* this_gate = (daLv6SwGate_c*)i_this;
|
||||
fpc_ProcID id = fopAcM_GetID(i_this);
|
||||
return this_gate->create();
|
||||
daLv6SwGate_c* gate = (daLv6SwGate_c*)i_this;
|
||||
fopAcM_RegisterCreateID(i_this, "daLv6SwGate");
|
||||
return gate->create();
|
||||
}
|
||||
|
||||
static actor_method_class l_daLv6SwGate_Method = {
|
||||
|
||||
@@ -159,13 +159,13 @@ void daTenbin_c::rideCallBackRight(dBgW* i_dBgW, fopAc_ac_c* i_act1, fopAc_ac_c*
|
||||
daPy_py_c* player = dComIfGp_getLinkPlayer();
|
||||
if (fopAcM_GetName(i_act2) == PROC_SPINNER) {
|
||||
if (player->checkSpinnerRide()) {
|
||||
i_tenbin->field_0x5B2 += 2;
|
||||
i_tenbin->field_0x5B2 += (u16)2;
|
||||
}
|
||||
}
|
||||
if (fopAcM_GetName(i_act2) == PROC_ALINK && dComIfGp_checkPlayerStatus0(0, 0x100) == 0) {
|
||||
i_tenbin->field_0x5B2 += 2;
|
||||
i_tenbin->field_0x5B2 += (u16)2;
|
||||
if (player->checkBootsOrArmorHeavy()) {
|
||||
i_tenbin->field_0x5B2 += 60000;
|
||||
i_tenbin->field_0x5B2 += (u16)60000;
|
||||
}
|
||||
if (player->getGrabActorID() != -1) {
|
||||
fopAc_ac_c* found = fopAcM_SearchByID(player->getGrabActorID());
|
||||
@@ -178,7 +178,7 @@ void daTenbin_c::rideCallBackRight(dBgW* i_dBgW, fopAc_ac_c* i_act1, fopAc_ac_c*
|
||||
if (fopAcM_GetName(i_act2) == PROC_CSTATUE) {
|
||||
daCstatue_c* i_statue = (daCstatue_c*)i_act2;
|
||||
if (i_statue->checkNormalType()) {
|
||||
i_tenbin->field_0x5B2 += 4;
|
||||
i_tenbin->field_0x5B2 += (u16)4;
|
||||
} else if (fopAcM_GetID(i_statue) != i_tenbin->field_0x650) {
|
||||
i_tenbin->field_0x5B2++;
|
||||
}
|
||||
@@ -191,13 +191,13 @@ void daTenbin_c::rideCallBackLeft(dBgW* i_dBgW, fopAc_ac_c* i_act1, fopAc_ac_c*
|
||||
daPy_py_c* player = dComIfGp_getLinkPlayer();
|
||||
if (fopAcM_GetName(i_act2) == PROC_SPINNER) {
|
||||
if (player->checkSpinnerRide()) {
|
||||
i_tenbin->field_0x5B4 += 2;
|
||||
i_tenbin->field_0x5B4 += (u16)2;
|
||||
}
|
||||
}
|
||||
if (fopAcM_GetName(i_act2) == PROC_ALINK && dComIfGp_checkPlayerStatus0(0, 0x100) == 0) {
|
||||
i_tenbin->field_0x5B4 += 2;
|
||||
i_tenbin->field_0x5B4 += (u16)2;
|
||||
if (player->checkEquipHeavyBoots()) {
|
||||
i_tenbin->field_0x5B4 += 60000;
|
||||
i_tenbin->field_0x5B4 += (u16)60000;
|
||||
}
|
||||
if (player->getGrabActorID() != -1) {
|
||||
fopAc_ac_c* found = fopAcM_SearchByID(player->getGrabActorID());
|
||||
@@ -210,7 +210,7 @@ void daTenbin_c::rideCallBackLeft(dBgW* i_dBgW, fopAc_ac_c* i_act1, fopAc_ac_c*
|
||||
if (fopAcM_GetName(i_act2) == PROC_CSTATUE) {
|
||||
daCstatue_c* i_statue = (daCstatue_c*)i_act2;
|
||||
if (i_statue->checkNormalType()) {
|
||||
i_tenbin->field_0x5B4 += 4;
|
||||
i_tenbin->field_0x5B4 += (u16)4;
|
||||
} else if (fopAcM_GetID(i_statue) != i_tenbin->field_0x650) {
|
||||
i_tenbin->field_0x5B4++;
|
||||
}
|
||||
@@ -336,13 +336,13 @@ static int daTenbin_Execute(daTenbin_c* i_this) {
|
||||
}
|
||||
|
||||
static int daTenbin_Delete(daTenbin_c* i_this) {
|
||||
fpc_ProcID id = fopAcM_GetID(i_this);
|
||||
fopAcM_RegisterDeleteID(i_this, "daTenbin");
|
||||
return i_this->MoveBGDelete();
|
||||
}
|
||||
|
||||
static int daTenbin_Create(fopAc_ac_c* i_this) {
|
||||
daTenbin_c* this_tenbin = (daTenbin_c*)i_this;
|
||||
fpc_ProcID id = fopAcM_GetID(i_this);
|
||||
fopAcM_RegisterCreateID(i_this, "daTenbin");
|
||||
return this_tenbin->create();
|
||||
}
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
|
||||
static char* l_arcName = "LV6EGATE";
|
||||
|
||||
static const int l_dzbidx = 3;
|
||||
const int l_dzbidx = 3;
|
||||
|
||||
int daObjLv6EGate_c::create1st() {
|
||||
int phase_state = dComIfG_resLoad(this, l_arcName);
|
||||
@@ -40,6 +40,22 @@ static const cull_box l_cull_box = {
|
||||
{500.0f, 300.0f, 50.0f},
|
||||
};
|
||||
|
||||
static dCcD_SrcCyl l_cc_cyl_src = {
|
||||
{
|
||||
{0x0, {{0x0, 0x2, 0x0}, {0x400, 0x11}, 0x79}}, // mObj
|
||||
{dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x0}, // mGObjAt
|
||||
{dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x2}, // mGObjTg
|
||||
{0x0}, // mGObjCo
|
||||
}, // mObjInf
|
||||
{
|
||||
{
|
||||
{0.0f, 0.0f, 0.0f}, // mCenter
|
||||
30.0f, // mRadius
|
||||
300.0f // mHeight
|
||||
} // mCyl
|
||||
}
|
||||
};
|
||||
|
||||
static dCcD_SrcCyl l_at_cyl_src = {
|
||||
{
|
||||
{0x0, {{0x100, 0x2, 0xd}, {0x400, 0x0}, 0x11}}, // mObj
|
||||
@@ -56,6 +72,12 @@ static dCcD_SrcCyl l_at_cyl_src = {
|
||||
}
|
||||
};
|
||||
|
||||
static u8 l_local_cyl[] = {
|
||||
0xC3, 0x91, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x43, 0x91, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
};
|
||||
|
||||
int daObjLv6EGate_c::Create() {
|
||||
fopAcM_SetMtx(this, field_0x5d8);
|
||||
fopAcM_setCullSizeBox(this, l_cull_box.min.x, l_cull_box.min.y, l_cull_box.min.z, l_cull_box.max.x, l_cull_box.max.y, l_cull_box.max.z);
|
||||
@@ -151,7 +173,7 @@ int daObjLv6EGate_c::Execute(Mtx** param_0) {
|
||||
|
||||
cXyz cyl_pos;
|
||||
f32 var_f31 = -280.0f;
|
||||
f32 temp_f30 = (330.0f - var_f31) * 0.125f;
|
||||
f32 temp_f30 = (330.0f - var_f31) / 8.0f;
|
||||
for (int i = 0; i < 8; i++) {
|
||||
cXyz local_pos;
|
||||
local_pos.x = var_f31;
|
||||
|
||||
@@ -10,6 +10,8 @@
|
||||
#include "d/actor/d_a_obj_lv6swturn.h"
|
||||
#include "d/actor/d_a_player.h"
|
||||
|
||||
static char* l_arcName = "Obj_l6tsw";
|
||||
|
||||
#if DEBUG
|
||||
daObjLv6SwTurn_HIO_c::daObjLv6SwTurn_HIO_c() {
|
||||
mWaitTime = 0x2f;
|
||||
@@ -30,6 +32,7 @@ void daObjLv6SwTurn_HIO_c::genMessage(JORMContext* context) {
|
||||
|
||||
static fopAc_ac_c* PPCallBack(fopAc_ac_c* actor1, fopAc_ac_c* actor2, s16 param_2,
|
||||
dBgW_Base::PushPullLabel pushPull) {
|
||||
static const int pp_field = 3;
|
||||
UNUSED(param_2);
|
||||
dBgW_Base::PushPullLabel pushPull_3 = cLib_checkBit(pushPull, dBgW_Base::PPLABEL_3);
|
||||
daObjLv6SwTurn_c* swTurnActor1 = (daObjLv6SwTurn_c*)actor1;
|
||||
@@ -57,8 +60,6 @@ static fopAc_ac_c* PPCallBack(fopAc_ac_c* actor1, fopAc_ac_c* actor2, s16 param_
|
||||
return actor1;
|
||||
}
|
||||
|
||||
static char* l_arcName = "Obj_l6tsw";
|
||||
|
||||
void daObjLv6SwTurn_c::initBaseMtx() {
|
||||
unk5A8->setBaseScale(scale);
|
||||
setBaseMtx();
|
||||
@@ -135,20 +136,11 @@ enum daObjLv6SwTurn_c_mode{
|
||||
|
||||
void daObjLv6SwTurn_c::mode_proc_call() {
|
||||
typedef void (daObjLv6SwTurn_c::*func_type)();
|
||||
// naming difference between debug and release
|
||||
#if DEBUG
|
||||
static func_type mode_proc_call[] = {
|
||||
&daObjLv6SwTurn_c::modeWait,
|
||||
&daObjLv6SwTurn_c::modeRotate
|
||||
};
|
||||
(this->*mode_proc_call[mMode])();
|
||||
#else
|
||||
static func_type l_func[] = {
|
||||
&daObjLv6SwTurn_c::modeWait,
|
||||
&daObjLv6SwTurn_c::modeRotate
|
||||
};
|
||||
(this->*l_func[mMode])();
|
||||
#endif
|
||||
}
|
||||
|
||||
void daObjLv6SwTurn_c::init_modeWait() {
|
||||
@@ -312,7 +304,7 @@ int daObjLv6SwTurn_c::Draw() {
|
||||
dComIfGd_setList();
|
||||
#if DEBUG
|
||||
if (l_HIO.mDrawFlag) {
|
||||
mpBgW->GetAttackThrough(0);
|
||||
mpBgW->DebugDraw();
|
||||
}
|
||||
#endif
|
||||
return TRUE;
|
||||
|
||||
@@ -7,7 +7,14 @@
|
||||
|
||||
#include "d/actor/d_a_obj_pdwall.h"
|
||||
|
||||
// these are arrays to force them to not be inlined, not sure if this is fake
|
||||
static const int l_dzbidx = 7;
|
||||
static const int l_bmdidx = 4;
|
||||
|
||||
static const cull_box l_cull_box = {
|
||||
{-100.0f, -800.0f, -300.0f},
|
||||
{750.0f, 500.0f, 300.0f},
|
||||
};
|
||||
|
||||
static char* l_arcName = "P_Dwall";
|
||||
|
||||
@@ -15,7 +22,7 @@ int daObjPDwall_c::create1st() {
|
||||
int phase_state = dComIfG_resLoad(this, l_arcName);
|
||||
if (phase_state == cPhs_COMPLEATE_e) {
|
||||
setMtx();
|
||||
|
||||
|
||||
phase_state = MoveBGCreate(l_arcName, l_dzbidx, dBgS_MoveBGProc_TypicalRotY, 0xB1C0, &field_0x5a8);
|
||||
if (phase_state == cPhs_ERROR_e) {
|
||||
return phase_state;
|
||||
@@ -31,11 +38,6 @@ int daObjPDwall_c::create1st() {
|
||||
return phase_state;
|
||||
}
|
||||
|
||||
static const cull_box l_cull_box = {
|
||||
{-100.0f, -800.0f, -300.0f},
|
||||
{750.0f, 500.0f, 300.0f},
|
||||
};
|
||||
|
||||
void daObjPDwall_c::setMtx() {
|
||||
for (int i = 0; i < 10; i++) {
|
||||
mDoMtx_stack_c::transS(current.pos.x, current.pos.y + field_0x808[i], current.pos.z);
|
||||
@@ -54,7 +56,7 @@ void daObjPDwall_c::setMtx() {
|
||||
}
|
||||
|
||||
int daObjPDwall_c::CreateHeap() {
|
||||
J3DModelData* model_data = (J3DModelData*)dComIfG_getObjectRes(l_arcName, 4);
|
||||
J3DModelData* model_data = (J3DModelData*)dComIfG_getObjectRes(l_arcName, l_bmdidx);
|
||||
JUT_ASSERT(175, model_data != NULL);
|
||||
|
||||
for (int i = 0; i < 10; i++) {
|
||||
|
||||
@@ -295,7 +295,7 @@ int daObjPicture_c::execute() {
|
||||
cXyz sp8(current.pos);
|
||||
fopAcM_gc_c::gndCheck(&sp8);
|
||||
|
||||
shape_angle.x += 0x400;
|
||||
ANGLE_ADD_2(shape_angle.x, 0x400);
|
||||
if (shape_angle.x > 0x4000) {
|
||||
shape_angle.x = 0x4000;
|
||||
}
|
||||
@@ -309,7 +309,6 @@ int daObjPicture_c::execute() {
|
||||
cLib_chaseF(¤t.pos.x, field_0xca0.x, 1.0f);
|
||||
cLib_chaseF(¤t.pos.z, field_0xca0.z, 1.0f);
|
||||
setPicAtCol();
|
||||
break;
|
||||
}
|
||||
case 3:
|
||||
break;
|
||||
|
||||
@@ -221,8 +221,8 @@ void daPoFire_c::modeWait() {
|
||||
if (eventInfo.checkCommandCatch()) {
|
||||
init_modeWaitSetEffect();
|
||||
} else {
|
||||
dComIfGp_att_CatchRequest(this, itemNo[mActorID], l_HIO.mPickupRange, 70.0f, -70.0f, 0x5000,
|
||||
1);
|
||||
int result = dComIfGp_att_CatchRequest(this, itemNo[mActorID], l_HIO.mPickupRange, 70.0f,
|
||||
-70.0f, 0x5000, 1);
|
||||
eventInfo.onCondition(dEvtCnd_40_e);
|
||||
}
|
||||
current.pos.y = unk5D4 + l_HIO.mWaitVertRange * cM_ssin(cM_deg2s(unk5D8 * l_HIO.mWaitPeriod));
|
||||
|
||||
@@ -18,8 +18,9 @@ static char* l_staffName = "SCanTen";
|
||||
static char* l_eventName = "SKY_CANNON_TEN_FIRE";
|
||||
|
||||
static int eventCallBack(void* i_proc, int param_1) {
|
||||
if (i_proc != NULL) {
|
||||
((daObjSCannonTen_c*)i_proc)->changeScene();
|
||||
daObjSCannonTen_c* proc = (daObjSCannonTen_c*)i_proc;
|
||||
if (proc != NULL) {
|
||||
proc->changeScene();
|
||||
}
|
||||
|
||||
return 1;
|
||||
@@ -147,6 +148,22 @@ int daObjSCannonTen_c::execute() {
|
||||
return 1;
|
||||
}
|
||||
|
||||
const daObjSCannonTen_c::ExeProc daObjSCannonTen_c::s_exeProc[] = {
|
||||
&daObjSCannonTen_c::exeModeWait,
|
||||
&daObjSCannonTen_c::exeModeOrderEvt,
|
||||
&daObjSCannonTen_c::exeModeActionEvt,
|
||||
&daObjSCannonTen_c::exeModeEnd,
|
||||
};
|
||||
|
||||
const daObjSCannonTen_c::ExeProc daObjSCannonTen_c::s_demoExeProc[][2] = {
|
||||
{&daObjSCannonTen_c::demoInitLinkIn, &daObjSCannonTen_c::demoExeLinkIn},
|
||||
{&daObjSCannonTen_c::demoInitSet, &daObjSCannonTen_c::demoExeSet},
|
||||
{&daObjSCannonTen_c::demoInitMove, &daObjSCannonTen_c::demoExeMove},
|
||||
{&daObjSCannonTen_c::demoInitFire, &daObjSCannonTen_c::demoExeFire},
|
||||
{&daObjSCannonTen_c::demoInitFireEnd, &daObjSCannonTen_c::demoExeFireEnd},
|
||||
{&daObjSCannonTen_c::demoInitFinish, &daObjSCannonTen_c::demoExeFinish},
|
||||
};
|
||||
|
||||
void daObjSCannonTen_c::middleExe() {
|
||||
if (s_exeProc[mMode] != NULL) {
|
||||
(this->*s_exeProc[mMode])();
|
||||
@@ -158,10 +175,10 @@ void daObjSCannonTen_c::middleExe() {
|
||||
}
|
||||
|
||||
void daObjSCannonTen_c::exeModeWait() {
|
||||
if (!(DEBUG && aREG_F(0) != 0.0f) && fopAcM_checkHookCarryNow(this) &&
|
||||
if (!(DEBUG && aREG_F(0)) && fopAcM_checkHookCarryNow(this) &&
|
||||
dComIfGp_checkPlayerStatus1(0, 0x10)) {
|
||||
eventInfo.setArchiveName(l_arcName);
|
||||
mEvtIdx = dComIfGp_getEventManager().getEventIdx(this, l_eventName, 0xFF);
|
||||
mEvtIdx = (s16)dComIfGp_getEventManager().getEventIdx(this, l_eventName, 0xFF);
|
||||
#if DEBUG
|
||||
if (mEvtIdx == -1) {
|
||||
// "××××××××××××× Sky Cannon (City in the Sky) d_a_obj_scannon_ten.cpp: Failed to get event\n"
|
||||
@@ -187,22 +204,6 @@ void daObjSCannonTen_c::exeModeOrderEvt() {
|
||||
}
|
||||
}
|
||||
|
||||
void (daObjSCannonTen_c::*daObjSCannonTen_c::s_exeProc[])() = {
|
||||
&daObjSCannonTen_c::exeModeWait,
|
||||
&daObjSCannonTen_c::exeModeOrderEvt,
|
||||
&daObjSCannonTen_c::exeModeActionEvt,
|
||||
&daObjSCannonTen_c::exeModeEnd,
|
||||
};
|
||||
|
||||
void (daObjSCannonTen_c::*daObjSCannonTen_c::s_demoExeProc[][2])() = {
|
||||
{&daObjSCannonTen_c::demoInitLinkIn, &daObjSCannonTen_c::demoExeLinkIn},
|
||||
{&daObjSCannonTen_c::demoInitSet, &daObjSCannonTen_c::demoExeSet},
|
||||
{&daObjSCannonTen_c::demoInitMove, &daObjSCannonTen_c::demoExeMove},
|
||||
{&daObjSCannonTen_c::demoInitFire, &daObjSCannonTen_c::demoExeFire},
|
||||
{&daObjSCannonTen_c::demoInitFireEnd, &daObjSCannonTen_c::demoExeFireEnd},
|
||||
{&daObjSCannonTen_c::demoInitFinish, &daObjSCannonTen_c::demoExeFinish},
|
||||
};
|
||||
|
||||
void daObjSCannonTen_c::exeModeActionEvt() {
|
||||
if (dComIfGp_evmng_endCheck(mEvtIdx) != 0) {
|
||||
dComIfGp_event_reset();
|
||||
@@ -323,7 +324,7 @@ void daObjSCannonTen_c::demoInitFinish() {
|
||||
if (joint_p == NULL) {
|
||||
// "××××××Sky Cannon—The head joint is missing!!!! ××××××"
|
||||
OS_REPORT("______________________××××××天空砲台 頭部分のジョイントがありません!!!! ××××××____________\n");
|
||||
JUT_ASSERT(1351, FALSE);
|
||||
JUT_ASSERT(867, FALSE);
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -368,7 +369,8 @@ void daObjSCannonTen_c::changeScene() {
|
||||
|
||||
fopAcM_OnStatus(this, fopAcM_STATUS_UNK_0x80);
|
||||
|
||||
dStage_changeScene(1, 0.0f, 0, fopAcM_GetRoomNo(this), 0, -1);
|
||||
const int a_exit_id = 1;
|
||||
dStage_changeScene(a_exit_id, 0.0f, 0, fopAcM_GetRoomNo(this), 0, -1);
|
||||
}
|
||||
|
||||
void daObjSCannonTen_c::initEmtSmoke() {
|
||||
|
||||
@@ -61,8 +61,8 @@ void daSpinLift_c::setBaseMtx() {
|
||||
mpModel->setBaseTRMtx(mDoMtx_stack_c::get());
|
||||
}
|
||||
|
||||
static u32 const l_bmdIdx[] = {4, 4, 4, 4, 4, 4, 4, 4, 4};
|
||||
int daSpinLift_c::CreateHeap() {
|
||||
static u32 const l_bmdIdx[] = {4, 4, 4, 4, 4, 4, 4, 4, 4};
|
||||
J3DModelData* modelData =
|
||||
(J3DModelData*)dComIfG_getObjectRes(l_resNameIdx[mModelType], l_bmdIdx[mModelType]);
|
||||
JUT_ASSERT(222, modelData != NULL);
|
||||
@@ -73,8 +73,8 @@ int daSpinLift_c::CreateHeap() {
|
||||
return 1;
|
||||
}
|
||||
|
||||
static const int l_dzbIdx[] = {7, 7, 7, 7, 7, 7, 7, 7, 7};
|
||||
int daSpinLift_c::create() {
|
||||
static const int l_dzbIdx[] = {7, 7, 7, 7, 7, 7, 7, 7, 7};
|
||||
fopAcM_ct(this, daSpinLift_c);
|
||||
mModelType = getModelType();
|
||||
int phase = dComIfG_resLoad(&mPhase, l_resNameIdx[mModelType]);
|
||||
@@ -123,7 +123,7 @@ int daSpinLift_c::Execute(Mtx** param_0) {
|
||||
}
|
||||
|
||||
void daSpinLift_c::moveLift() {
|
||||
static daSpinLift_c::modeFunc mode_proc[] = {
|
||||
static const daSpinLift_c::modeFunc mode_proc[] = {
|
||||
&daSpinLift_c::modeWait,
|
||||
&daSpinLift_c::modeUpMove,
|
||||
&daSpinLift_c::modeDownMove,
|
||||
|
||||
@@ -305,18 +305,10 @@ void daObj_SSDrink_c::setParam() {
|
||||
|
||||
gravity = -5.0f;
|
||||
|
||||
#if DEBUG
|
||||
bool bVar1 = false;
|
||||
bool bVar2 = false;
|
||||
#endif
|
||||
|
||||
if (daPy_getPlayerActorClass()->getGrabActorID() != fpcM_ERROR_PROCESS_ID_e) {
|
||||
if (!checkProcess(&daObj_SSDrink_c::drink)) {
|
||||
if (field_0xb0c != 0x60) {
|
||||
fopAcM_offSwitch(this, getSwitchFromParam());
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (daPy_getPlayerActorClass()->getGrabActorID() != fpcM_ERROR_PROCESS_ID_e &&
|
||||
!checkProcess(&daObj_SSDrink_c::drink) && field_0xb0c != 0x60) {
|
||||
fopAcM_offSwitch(this, getSwitchFromParam());
|
||||
return;
|
||||
}
|
||||
|
||||
fopAcM_onSwitch(this, getSwitchFromParam());
|
||||
@@ -367,13 +359,12 @@ int daObj_SSDrink_c::chkEvent() {
|
||||
int ret = 1;
|
||||
|
||||
if (checkProcess(&daObj_SSDrink_c::drink)) {
|
||||
return 1;
|
||||
return ret;
|
||||
}
|
||||
|
||||
if (dComIfGp_getEvent()->isOrderOK() == 0) {
|
||||
if (getParentPtr() != NULL) {
|
||||
fopAc_ac_c* parent = (fopAc_ac_c*)getParentPtr();
|
||||
attention_info.position.set(parent->attention_info.position);
|
||||
attention_info.position.set(((fopAc_ac_c*)getParentPtr())->attention_info.position);
|
||||
}
|
||||
|
||||
ret = 0;
|
||||
|
||||
@@ -129,19 +129,21 @@ int daSyRock_c::CreateHeap() {
|
||||
JUT_ASSERT(271, modelData != NULL);
|
||||
mpModels[0] = mDoExt_J3DModel__create(modelData, 1 << 19, 0x11000084);
|
||||
|
||||
if(!mpModels[0])
|
||||
if (!mpModels[0]) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
modelData = static_cast<J3DModelData*>(dComIfG_getObjectRes("syourock", 5));
|
||||
JUT_ASSERT(282, modelData != NULL);
|
||||
mpModels[1] = mDoExt_J3DModel__create(modelData, 1 << 19, 0x11000084);
|
||||
|
||||
if(!mpModels[1])
|
||||
if (!mpModels[1]) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
mpBrokenCollision = new dBgW;
|
||||
|
||||
if(!mpBrokenCollision || mpBrokenCollision->Set(static_cast<cBgD_t*>(dComIfG_getObjectRes("syourock", 9)), 1, &mBgMtx)) {
|
||||
if (!mpBrokenCollision || mpBrokenCollision->Set(static_cast<cBgD_t*>(dComIfG_getObjectRes("syourock", 9)), 1, &mBgMtx)) {
|
||||
mpBrokenCollision = NULL;
|
||||
return 0;
|
||||
}
|
||||
@@ -160,18 +162,21 @@ cPhs_Step daSyRock_c::create() {
|
||||
fopAcM_ct(this, daSyRock_c);
|
||||
|
||||
// Check if an associated water pillar should be searched for
|
||||
if(getArg0() == TRUE) {
|
||||
if (getArg0() == TRUE) {
|
||||
mpWaterPillar = static_cast<daWtPillar_c*>(fopAcM_Search(searchWaterPillar, this));
|
||||
|
||||
if(!mpWaterPillar)
|
||||
if (!mpWaterPillar) {
|
||||
return cPhs_INIT_e;
|
||||
}
|
||||
}
|
||||
|
||||
cPhs_Step bgCreatePhaseProcess;
|
||||
|
||||
const cPhs_Step requestedPhaseProcess = static_cast<cPhs_Step>(dComIfG_resLoad(&mPhase, "syourock"));
|
||||
if(requestedPhaseProcess == cPhs_COMPLEATE_e) {
|
||||
const cPhs_Step bgCreatePhaseProcess = static_cast<cPhs_Step>(MoveBGCreate("syourock", 0x8, dBgS_MoveBGProc_TypicalRotY, 0x2100, NULL));
|
||||
if(bgCreatePhaseProcess == cPhs_ERROR_e)
|
||||
if (requestedPhaseProcess == cPhs_COMPLEATE_e) {
|
||||
if (MoveBGCreate("syourock", 0x8, dBgS_MoveBGProc_TypicalRotY, 0x2100, NULL) == cPhs_ERROR_e) {
|
||||
return cPhs_ERROR_e;
|
||||
}
|
||||
|
||||
mAcchCir.SetWall(150.0f, 150.0f);
|
||||
mAcch.Set(fopAcM_GetPosition_p(this),
|
||||
@@ -204,24 +209,23 @@ cPhs_Step daSyRock_c::create() {
|
||||
mUnbrokenCollider.SetStts(&mStts);
|
||||
mUnbrokenCollider.OffAtSetBit();
|
||||
|
||||
if(fopAcM_isSwitch(this, getSwBit1())) {
|
||||
if (fopAcM_isSwitch(this, getSwBit1())) {
|
||||
mIsUnbroken = false;
|
||||
mUnbrokenCollider.OffCoSetBit();
|
||||
if(mpBrokenCollision && mpBrokenCollision->ChkUsed()) {
|
||||
if (mpBrokenCollision && mpBrokenCollision->ChkUsed()) {
|
||||
dComIfG_Bgsp().Release(mpBrokenCollision);
|
||||
mpBrokenCollision->Move();
|
||||
}
|
||||
|
||||
// Snap already broken stalactite to its appropriate location and set its mode accordingly
|
||||
setFallStat();
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
mIsUnbroken = true;
|
||||
|
||||
if(mpBgW)
|
||||
if (mpBgW)
|
||||
dComIfG_Bgsp().Release(mpBgW);
|
||||
|
||||
if(mpBrokenCollision) {
|
||||
if (mpBrokenCollision) {
|
||||
dComIfG_Bgsp().Regist(mpBrokenCollision, this);
|
||||
mpBrokenCollision->Move();
|
||||
}
|
||||
@@ -246,25 +250,23 @@ cPhs_Step daSyRock_c::create() {
|
||||
|
||||
void daSyRock_c::setFallStat() {
|
||||
mpWaterPillar = static_cast<daWtPillar_c*>(fopAcM_Search(searchWaterPillar, this));
|
||||
if(mpWaterPillar) {
|
||||
if (mpWaterPillar) {
|
||||
OS_REPORT("== 下に水柱あり ==\n"); // "== Water pillar below =="
|
||||
|
||||
mpWaterPillar->onRockFlag();
|
||||
mMode = MODE_MOVE;
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
OS_REPORT("== 下に水柱無し ==\n"); // "== No water pillar below =="
|
||||
|
||||
mAcch.CrrPos(dComIfG_Bgsp());
|
||||
|
||||
if(mAcch.ChkWaterHit()) {
|
||||
if(mAcch.m_wtr.GetHeight() - mAcch.GetGroundH() >= 200.0f) {
|
||||
if (mAcch.ChkWaterHit()) {
|
||||
if (mAcch.m_wtr.GetHeight() - mAcch.GetGroundH() >= 200.0f) {
|
||||
mUnderwaterOffset.x = 150.0f;
|
||||
shape_angle.z = 0x4000;
|
||||
}
|
||||
current.pos.y = mAcch.GetGroundH();
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
current.pos.y = mAcch.GetGroundH();
|
||||
}
|
||||
|
||||
@@ -317,9 +319,9 @@ void daSyRock_c::init_modeWait() {
|
||||
}
|
||||
|
||||
void daSyRock_c::modeWait() {
|
||||
if(mAutoDropSwNo != 0xFF && fopAcM_isSwitch(this, mAutoDropSwNo)) {
|
||||
if (mAutoDropSwNo != 0xFF && fopAcM_isSwitch(this, mAutoDropSwNo)) {
|
||||
field_0x779 = 0;
|
||||
if(getEvetID() != 0xFF) {
|
||||
if (getEvetID() != 0xFF) {
|
||||
orderEvent(getEvetID(), 0xFF, 1);
|
||||
} else {
|
||||
eventStart();
|
||||
@@ -327,13 +329,13 @@ void daSyRock_c::modeWait() {
|
||||
return;
|
||||
}
|
||||
|
||||
if(mUnbrokenCollider.ChkTgHit()) {
|
||||
if (mUnbrokenCollider.ChkTgHit()) {
|
||||
dCcD_GObjInf* tgHitGObj = mUnbrokenCollider.GetTgHitGObj();
|
||||
if(tgHitGObj->GetAtType() == AT_TYPE_BOMB) {
|
||||
if (tgHitGObj->GetAtType() == AT_TYPE_BOMB) {
|
||||
field_0x779 = 0;
|
||||
if(getEvetID() != 0xFF)
|
||||
if (getEvetID() != 0xFF) {
|
||||
orderEvent(getEvetID(), 0xFF, 1);
|
||||
else {
|
||||
} else {
|
||||
eventStart();
|
||||
}
|
||||
}
|
||||
@@ -343,8 +345,9 @@ void daSyRock_c::modeWait() {
|
||||
|
||||
bool daSyRock_c::eventStart() {
|
||||
// field_0x779 is always 0 when eventStart() is called (see modeWait())
|
||||
if(!field_0x779)
|
||||
if (!field_0x779) {
|
||||
init_modeDropInit();
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
@@ -364,24 +367,26 @@ void daSyRock_c::init_modeDropInit() {
|
||||
}
|
||||
|
||||
void daSyRock_c::modeDropInit() {
|
||||
if(mWaitFrames)
|
||||
if (mWaitFrames) {
|
||||
mWaitFrames--;
|
||||
else
|
||||
} else {
|
||||
init_modeDrop();
|
||||
}
|
||||
}
|
||||
|
||||
void* daSyRock_c::searchWaterPillar(void* i_proc, void* i_this) {
|
||||
daSyRock_c* const syRock = static_cast<daSyRock_c*>(i_this);
|
||||
daWtPillar_c* const wtPillar = static_cast<daWtPillar_c*>(i_proc);
|
||||
|
||||
if(wtPillar && fopAcM_IsActor(wtPillar) && fopAcM_GetProfName(wtPillar) == PROC_Obj_WaterPillar) {
|
||||
if (wtPillar && fopAcM_IsActor(wtPillar) && fopAcM_GetProfName(wtPillar) == PROC_Obj_WaterPillar) {
|
||||
const cXyz vectorFromWaterPillar = syRock->current.pos - wtPillar->current.pos;
|
||||
const f32 horizontalDistanceToWaterPillar = vectorFromWaterPillar.absXZ();
|
||||
|
||||
if(horizontalDistanceToWaterPillar <= l_HIO.mRange)
|
||||
if (horizontalDistanceToWaterPillar <= l_HIO.mRange) {
|
||||
return wtPillar;
|
||||
else
|
||||
} else {
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
@@ -391,7 +396,7 @@ void daSyRock_c::init_modeDrop() {
|
||||
fopAcM_SetMaxFallSpeed(this, -l_HIO.mMaxFallSpeed);
|
||||
fopAcM_SetSpeedF(this, 0.0f);
|
||||
|
||||
if(mpBrokenCollision) {
|
||||
if (mpBrokenCollision) {
|
||||
dComIfG_Bgsp().Release(mpBrokenCollision);
|
||||
mpBrokenCollision->Move();
|
||||
}
|
||||
@@ -416,15 +421,17 @@ void daSyRock_c::init_modeSink() {
|
||||
fopAcM_SetGravity(this, -l_HIO.mFallAcceleration + l_HIO.mFallWaterBouyancy);
|
||||
speed.y = cLib_minMaxLimit(speed.y, -15.0f - oREG_F(7), 13.0f + oREG_F(8));
|
||||
|
||||
if(!mpWaterPillar)
|
||||
if (!mpWaterPillar) {
|
||||
mUnderwaterOffset.x = 150.0f;
|
||||
}
|
||||
|
||||
mMode = MODE_SINK;
|
||||
}
|
||||
|
||||
void daSyRock_c::modeSink() {
|
||||
if(!mpWaterPillar)
|
||||
if (!mpWaterPillar) {
|
||||
cLib_addCalcAngleS(&shape_angle.z, 0x4000, 1, 0x444, 1);
|
||||
}
|
||||
|
||||
speed.y = cLib_minMaxLimit(speed.y, -15.0f - oREG_F(7), 13.0f + oREG_F(8));
|
||||
|
||||
@@ -438,8 +445,9 @@ void daSyRock_c::init_modeMove() {
|
||||
mDoAud_seStart(Z2SE_OBJ_STALAC_LAND_WATER, ¤t.pos, 0,
|
||||
dComIfGp_getReverb(fopAcM_GetRoomNo(this)));
|
||||
|
||||
if(mpBgW)
|
||||
if (mpBgW) {
|
||||
dComIfG_Bgsp().Regist(mpBgW, this);
|
||||
}
|
||||
|
||||
mpWaterPillar->onRockFlag();
|
||||
|
||||
@@ -463,7 +471,7 @@ void daSyRock_c::modeMove() {
|
||||
current.pos = mpWaterPillar->getPos();
|
||||
current.pos.y -= 50.0f;
|
||||
|
||||
if(mpWaterPillar->isRockYure()) {
|
||||
if (mpWaterPillar->isRockYure()) {
|
||||
mShakeAmplitude = l_HIO.mShakeAmplitude;
|
||||
mShakeZOscAngQuantum = l_HIO.mShakeZOscAngQuantum;
|
||||
mShakeXOscAngQuantum = l_HIO.mShakeXOscAngQuantum;
|
||||
@@ -486,57 +494,63 @@ void daSyRock_c::bgCheck() {
|
||||
const bool inWater = mAcch.ChkWaterIn();
|
||||
bool inWaterPillar = false;
|
||||
|
||||
if(mMode == MODE_DROP) {
|
||||
if(mpWaterPillar) {
|
||||
if (mMode == MODE_DROP) {
|
||||
if (mpWaterPillar) {
|
||||
const f32 pillarTop = mpWaterPillar->getPillarHeight() + mpWaterPillar->current.pos.y - 50.0f;
|
||||
if(pillarTop >= current.pos.y)
|
||||
if (pillarTop >= current.pos.y) {
|
||||
inWaterPillar = true;
|
||||
}
|
||||
}
|
||||
|
||||
const f32 waterHeight = mAcch.m_wtr.GetHeight();
|
||||
if(hitWater) {
|
||||
if (hitWater) {
|
||||
const f32 verticalSpeed = speed.y;
|
||||
|
||||
if(chkWaterLineIn())
|
||||
if (chkWaterLineIn()) {
|
||||
init_modeSink();
|
||||
}
|
||||
|
||||
if(inWater && !mInWaterPrevFrame) {
|
||||
if (inWater && !mInWaterPrevFrame) {
|
||||
cXyz currentRockPos(current.pos);
|
||||
currentRockPos.y = waterHeight;
|
||||
|
||||
fopKyM_createWpillar(¤tRockPos, l_HIO.mEffScale, 3);
|
||||
|
||||
if(verticalSpeed < -15.0f)
|
||||
if (verticalSpeed < -15.0f) {
|
||||
fopAcM_seStart(this, Z2SE_OBJ_FALL_WATER_M, 0);
|
||||
else
|
||||
} else {
|
||||
mDoAud_seStart(Z2SE_OBJ_STALAC_LAND_WATER, ¤t.pos, 0, dComIfGp_getReverb(fopAcM_GetRoomNo(this)));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(inWaterPillar)
|
||||
if (inWaterPillar) {
|
||||
init_modeMove();
|
||||
}
|
||||
}
|
||||
|
||||
if(hitGround) {
|
||||
if(!hitWater && !mpWaterPillar) {
|
||||
if (hitGround) {
|
||||
if (!hitWater && !mpWaterPillar) {
|
||||
mDoAud_seStart(Z2SE_OBJ_STALAC_LAND, ¤t.pos, 0, dComIfGp_getReverb(fopAcM_GetRoomNo(this)));
|
||||
daObjEff::Act_c::make_land_smoke(¤t.pos, l_HIO.mEffScale);
|
||||
}
|
||||
|
||||
if(mpWaterPillar)
|
||||
if (mpWaterPillar) {
|
||||
init_modeMove();
|
||||
else
|
||||
} else {
|
||||
init_modeDropEnd();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void daSyRock_c::init_modeDropEnd() {
|
||||
if(!mAcch.ChkWaterIn()) {
|
||||
if (!mAcch.ChkWaterIn()) {
|
||||
dComIfGp_getVibration().StartShock(l_HIO.mVibModePower, 0xF, cXyz(0.0f, 1.0f, 0.0f));
|
||||
}
|
||||
|
||||
if(mpBgW)
|
||||
if (mpBgW) {
|
||||
dComIfG_Bgsp().Regist(mpBgW, this);
|
||||
}
|
||||
|
||||
mUnbrokenCollider.OffAtSetBit();
|
||||
|
||||
@@ -563,10 +577,11 @@ int daSyRock_c::Draw() {
|
||||
int daSyRock_c::Delete() {
|
||||
dComIfG_resDelete(&mPhase, "syourock");
|
||||
|
||||
if(mpBrokenCollision && mpBrokenCollision->ChkUsed())
|
||||
if (mpBrokenCollision && mpBrokenCollision->ChkUsed()) {
|
||||
dComIfG_Bgsp().Release(mpBrokenCollision);
|
||||
}
|
||||
|
||||
#if DEBUG
|
||||
#if DEBUG
|
||||
l_HIO.removeHIO();
|
||||
#endif
|
||||
|
||||
@@ -575,7 +590,6 @@ int daSyRock_c::Delete() {
|
||||
|
||||
static int daSyRock_Draw(daSyRock_c* i_this) {
|
||||
return i_this->MoveBGDraw();
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int daSyRock_Execute(daSyRock_c* i_this) {
|
||||
|
||||
@@ -8,6 +8,27 @@
|
||||
#include "d/actor/d_a_obj_twGate.h"
|
||||
#include "d/d_com_inf_game.h"
|
||||
|
||||
class daTwGate_HIO_c : public fOpAcm_HIO_entry_c {
|
||||
public:
|
||||
daTwGate_HIO_c();
|
||||
~daTwGate_HIO_c() {}
|
||||
|
||||
void genMessage(JORMContext* ctx);
|
||||
|
||||
/* 0x4 */ f32 mRange;
|
||||
};
|
||||
|
||||
daTwGate_HIO_c::daTwGate_HIO_c() {
|
||||
mRange = 1900.0f;
|
||||
}
|
||||
|
||||
#if DEBUG
|
||||
void daTwGate_HIO_c::genMessage(JORMContext* ctx) {
|
||||
// Range
|
||||
ctx->genSlider("範囲", &mRange, 0.0f, 500000.0f);
|
||||
}
|
||||
#endif
|
||||
|
||||
static char* l_resNameIdx[13] = {
|
||||
"twGtFiro",
|
||||
"twGtK0102",
|
||||
@@ -24,17 +45,6 @@ static char* l_resNameIdx[13] = {
|
||||
"",
|
||||
};
|
||||
|
||||
daTwGate_HIO_c::daTwGate_HIO_c() {
|
||||
mRange = 1900.0f;
|
||||
}
|
||||
|
||||
#if DEBUG
|
||||
void daTwGate_HIO_c::genMessage(JORMContext* ctx) {
|
||||
// Range
|
||||
ctx->genSlider("範囲", &mRange, 0.0f, 500000.0f);
|
||||
}
|
||||
#endif
|
||||
|
||||
void daTwGate_c::setBaseMtx() {
|
||||
mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z);
|
||||
mDoMtx_stack_c::ZXYrotM(current.angle.x, current.angle.y, current.angle.z);
|
||||
|
||||
@@ -12,43 +12,19 @@
|
||||
#include "d/d_item_data.h"
|
||||
#include "d/d_s_play.h"
|
||||
|
||||
#if DEBUG
|
||||
|
||||
class daObjWStatue_HIO_c : public fOpAcm_HIO_entry_c {
|
||||
public:
|
||||
daObjWStatue_HIO_c() {
|
||||
mRespawnTimer = 30;
|
||||
}
|
||||
|
||||
void genMessage(JORMContext* context) {
|
||||
// Wooden Statue
|
||||
context->genLabel("木彫りの像", 0);
|
||||
|
||||
// Respawn timer
|
||||
context->genSlider("全滅後の出現タイマー", &mRespawnTimer, 0, 200);
|
||||
}
|
||||
|
||||
u8 mRespawnTimer;
|
||||
};
|
||||
|
||||
daObjWStatue_HIO_c l_HIO;
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
const static dCcD_SrcCyl l_cyl_src = {
|
||||
{
|
||||
{0x0, {{0x0, 0x0, 0x0}, {0xffffffff, 0x11}, 0x59}}, // mObj
|
||||
{0x0, {{0x0, 0x0, 0x0}, {-1, 0x11}, 0x59}}, // mObj
|
||||
{dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x0}, // mGObjAt
|
||||
{dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x4}, // mGObjTg
|
||||
{0x0}, // mGObjCo
|
||||
}, // mObjInf
|
||||
{
|
||||
{
|
||||
{0.0f, 0.0f, 0.0f}, // mCenter
|
||||
20.0f, // mRadius
|
||||
40.0f // mHeight
|
||||
} // mCyl
|
||||
{
|
||||
{0.0f, 0.0f, 0.0f}, // mCenter
|
||||
20.0f, // mRadius
|
||||
40.0f // mHeight
|
||||
} // mCyl
|
||||
}
|
||||
};
|
||||
|
||||
@@ -56,6 +32,31 @@ static char* l_arcName = "O_wood";
|
||||
|
||||
static char* l_eventName = "GET_WOOD_STATUE";
|
||||
|
||||
class daObjWStatue_HIO_c : public fOpAcm_HIO_entry_c {
|
||||
public:
|
||||
daObjWStatue_HIO_c();
|
||||
|
||||
void genMessage(JORMContext* context);
|
||||
|
||||
u8 mRespawnTimer;
|
||||
};
|
||||
|
||||
#if DEBUG
|
||||
daObjWStatue_HIO_c l_HIO;
|
||||
|
||||
daObjWStatue_HIO_c::daObjWStatue_HIO_c() {
|
||||
mRespawnTimer = 30;
|
||||
}
|
||||
|
||||
void daObjWStatue_HIO_c::genMessage(JORMContext* context) {
|
||||
// Wooden Statue
|
||||
context->genLabel("木彫りの像", 0);
|
||||
|
||||
// Respawn timer
|
||||
context->genSlider("全滅後の出現タイマー", &mRespawnTimer, 0, 200);
|
||||
}
|
||||
#endif
|
||||
|
||||
static f32 Reflect(cXyz* param_1, cBgS_PolyInfo const& param_2, f32 param_3) {
|
||||
cM3dGPla acStack_3c;
|
||||
bool isTriPla = dComIfG_Bgsp().GetTriPla(param_2, &acStack_3c);
|
||||
@@ -72,24 +73,36 @@ static f32 Reflect(cXyz* param_1, cBgS_PolyInfo const& param_2, f32 param_3) {
|
||||
|
||||
static void lifeGetTgCallBack(fopAc_ac_c* i_this, dCcD_GObjInf* param_2, fopAc_ac_c* param_3,
|
||||
dCcD_GObjInf* param_4) {
|
||||
if (i_this != NULL &&
|
||||
UNUSED(param_2);
|
||||
UNUSED(param_3);
|
||||
|
||||
daObjWStatue_c* statue = static_cast<daObjWStatue_c*>(i_this);
|
||||
|
||||
if (statue != NULL &&
|
||||
(param_4->ChkAtType(AT_TYPE_40) || param_4->ChkAtType(AT_TYPE_BOOMERANG)) &&
|
||||
!dComIfGp_event_runCheck() &&
|
||||
!((daObjWStatue_c*)i_this)->chkStatus(daObjWStatue_c::STATUS_BOOMERANG_CARRY))
|
||||
!statue->chkStatus(daObjWStatue_c::STATUS_BOOMERANG_CARRY))
|
||||
{
|
||||
((daObjWStatue_c*)i_this)->actionInitBoomerangCarry();
|
||||
statue->actionInitBoomerangCarry();
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
static void lifeGetCoCallBack(fopAc_ac_c* i_this, dCcD_GObjInf* param_2, fopAc_ac_c* param_3,
|
||||
dCcD_GObjInf* param_4) {
|
||||
if (i_this != NULL && param_3 != NULL && param_3 == dComIfGp_getLinkPlayer()) {
|
||||
((daObjWStatue_c*)i_this)->initActionOrderGetDemo();
|
||||
UNUSED(param_2);
|
||||
UNUSED(param_4);
|
||||
|
||||
daObjWStatue_c* statue = static_cast<daObjWStatue_c*>(i_this);
|
||||
|
||||
if (statue != NULL && param_3 != NULL && param_3 == dComIfGp_getLinkPlayer()) {
|
||||
statue->initActionOrderGetDemo();
|
||||
}
|
||||
}
|
||||
|
||||
static void* s_sh_sub(void* param_1, void* param_2) {
|
||||
UNUSED(param_2);
|
||||
|
||||
if (fopAcM_IsActor(param_1) && fopAcM_GetName(param_1) == PROC_E_SH) {
|
||||
return param_1;
|
||||
}
|
||||
@@ -409,7 +422,7 @@ void daObjWStatue_c::effectStop() {
|
||||
}
|
||||
|
||||
int daObjWStatue_c::execute() {
|
||||
static daObjWStatue_c::demoFunc l_demoFunc[5] = {
|
||||
static const daObjWStatue_c::demoFunc l_demoFunc[5] = {
|
||||
&daObjWStatue_c::actionWait, &daObjWStatue_c::actionOrderGetDemo,
|
||||
&daObjWStatue_c::actionGetDemo, &daObjWStatue_c::actionSwOnWait,
|
||||
&daObjWStatue_c::actionBoomerangCarry,
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
|
||||
#include "f_pc/f_pc_create_req.h"
|
||||
#include "SSystem/SComponent/c_malloc.h"
|
||||
#include "SSystem/SComponent/c_phase.h"
|
||||
#include "f_pc/f_pc_base.h"
|
||||
#include "f_pc/f_pc_create_iter.h"
|
||||
#include "f_pc/f_pc_deletor.h"
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
#include "f_pc/f_pc_base.h"
|
||||
#include "f_pc/f_pc_layer.h"
|
||||
#include "f_pc/f_pc_load.h"
|
||||
#include "SSystem/SComponent/c_phase.h"
|
||||
|
||||
int fpcFCtRq_Do(fast_create_request* i_createReq) {
|
||||
if (i_createReq->create_func != NULL &&
|
||||
|
||||
@@ -8,8 +8,21 @@
|
||||
#include "f_pc/f_pc_node.h"
|
||||
#include "f_pc/f_pc_manager.h"
|
||||
#include "f_pc/f_pc_debug_sv.h"
|
||||
#include "SSystem/SComponent/c_phase.h"
|
||||
#include <dolphin/dolphin.h>
|
||||
|
||||
typedef struct standard_create_request_class {
|
||||
/* 0x00 */ create_request base;
|
||||
/* 0x48 */ request_of_phase_process_class phase_request;
|
||||
/* 0x50 */ s16 process_name;
|
||||
/* 0x54 */ void* process_append;
|
||||
/* 0x58 */ stdCreateFunc create_post_method;
|
||||
/* 0x5C */ void* unk_0x5C;
|
||||
#if DEBUG
|
||||
/* 0x60 */ int unk_0x60;
|
||||
#endif
|
||||
} standard_create_request_class;
|
||||
|
||||
int fpcSCtRq_phase_Load(standard_create_request_class* i_request) {
|
||||
int ret = fpcLd_Load(i_request->process_name);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user