mirror of
https://github.com/LostArtefacts/TR2X.git
synced 2025-01-09 15:00:25 +00:00
port Lara_Col_ClimbRight
This commit is contained in:
parent
e59ae1952c
commit
a3533dacef
@ -69,10 +69,10 @@
|
||||
</g>
|
||||
<g transform="translate(0 116)">
|
||||
<text x="0" y="7.50">Tomb2.exe progress according to the physical function order:</text>
|
||||
<text class="todo" style="font-size: 12px; " x="747" y="9"><tspan text-anchor="end"><tspan class="decompiled">12.92% (155)</tspan> · <tspan class="known">84.67% (1016)</tspan> · <tspan class="todo">0.67% (8)</tspan> · <tspan class="unused">1.75% (21)</tspan></tspan></text>
|
||||
<text class="todo" style="font-size: 12px; " x="747" y="9"><tspan text-anchor="end"><tspan class="decompiled">13% (156)</tspan> · <tspan class="known">84.58% (1015)</tspan> · <tspan class="todo">0.67% (8)</tspan> · <tspan class="unused">1.75% (21)</tspan></tspan></text>
|
||||
<g transform="translate(0 20)">
|
||||
<rect width="96.49" height="6" x="0" y="0" class="decompiled"/>
|
||||
<rect width="632.46" height="6" x="96.49" y="0" class="known"/>
|
||||
<rect width="97.11" height="6" x="0" y="0" class="decompiled"/>
|
||||
<rect width="631.84" height="6" x="97.11" y="0" class="known"/>
|
||||
<rect width="4.98" height="6" x="728.95" y="0" class="todo"/>
|
||||
<rect width="13.07" height="6" x="733.93" y="0" class="unused"/>
|
||||
</g>
|
||||
@ -601,7 +601,7 @@
|
||||
<rect width="12" height="12" x="315" y="150" class="decompiled"><title>void __cdecl Lara_State_ClimbEnd(struct ITEM_INFO *item, struct COLL_INFO *coll);</title></rect>
|
||||
<rect width="12" height="12" x="330" y="150" class="decompiled"><title>void __cdecl Lara_State_ClimbDown(struct ITEM_INFO *item, struct COLL_INFO *coll);</title></rect>
|
||||
<rect width="12" height="12" x="345" y="150" class="decompiled"><title>void __cdecl Lara_Col_ClimbLeft(struct ITEM_INFO *item, struct COLL_INFO *coll);</title></rect>
|
||||
<rect width="12" height="12" x="360" y="150" class="known"><title>void __cdecl Lara_Col_ClimbRight(struct ITEM_INFO *item, struct COLL_INFO *coll);</title></rect>
|
||||
<rect width="12" height="12" x="360" y="150" class="decompiled"><title>void __cdecl Lara_Col_ClimbRight(struct ITEM_INFO *item, struct COLL_INFO *coll);</title></rect>
|
||||
<rect width="12" height="12" x="375" y="150" class="known"><title>void __cdecl Lara_Col_ClimbStance(struct ITEM_INFO *item, struct COLL_INFO *coll);</title></rect>
|
||||
<rect width="12" height="12" x="390" y="150" class="known"><title>void __cdecl Lara_Col_Climbing(struct ITEM_INFO *item, struct COLL_INFO *coll);</title></rect>
|
||||
<rect width="12" height="12" x="405" y="150" class="known"><title>void __cdecl Lara_Col_ClimbDown(struct ITEM_INFO *item, struct COLL_INFO *coll);</title></rect>
|
||||
@ -1281,10 +1281,10 @@
|
||||
</g>
|
||||
<g transform="translate(0 531)">
|
||||
<text x="0" y="7.50">Tomb2.exe progress according to the function sizes:</text>
|
||||
<text class="todo" style="font-size: 12px; " x="747" y="9"><tspan text-anchor="end"><tspan class="decompiled">6.71%</tspan> · <tspan class="known">92.96%</tspan> · <tspan class="todo">0.02%</tspan> · <tspan class="unused">0.31%</tspan></tspan></text>
|
||||
<text class="todo" style="font-size: 12px; " x="747" y="9"><tspan text-anchor="end"><tspan class="decompiled">6.73%</tspan> · <tspan class="known">92.94%</tspan> · <tspan class="todo">0.02%</tspan> · <tspan class="unused">0.31%</tspan></tspan></text>
|
||||
<g transform="translate(0 20)">
|
||||
<rect width="50.10" height="6" x="0" y="0" class="decompiled"/>
|
||||
<rect width="694.44" height="6" x="50.10" y="0" class="known"/>
|
||||
<rect width="50.30" height="6" x="0" y="0" class="decompiled"/>
|
||||
<rect width="694.24" height="6" x="50.30" y="0" class="known"/>
|
||||
<rect width="0.13" height="6" x="744.54" y="0" class="todo"/>
|
||||
<rect width="2.33" height="6" x="744.67" y="0" class="unused"/>
|
||||
</g>
|
||||
@ -2033,7 +2033,7 @@
|
||||
<rect width="5.81" height="5.13" x="615.94" y="354.87" class="known"><title>int16_t __cdecl DoBloodSplat(int32_t x, int32_t y, int32_t z, int16_t speed, PHD_ANGLE direction, int16_t room_num);</title></rect>
|
||||
<rect width="5.46" height="5.47" x="624.75" y="228.99" class="known"><title>void __cdecl DoChimeSound(struct ITEM_INFO *item);</title></rect>
|
||||
<rect width="5.46" height="5.47" x="633.22" y="228.99" class="decompiled"><title>void __cdecl Lara_Col_Splat(struct ITEM_INFO *item, struct COLL_INFO *coll);</title></rect>
|
||||
<rect width="5.46" height="5.47" x="641.68" y="228.99" class="known"><title>void __cdecl Lara_Col_ClimbRight(struct ITEM_INFO *item, struct COLL_INFO *coll);</title></rect>
|
||||
<rect width="5.46" height="5.47" x="641.68" y="228.99" class="decompiled"><title>void __cdecl Lara_Col_ClimbRight(struct ITEM_INFO *item, struct COLL_INFO *coll);</title></rect>
|
||||
<rect width="5.46" height="5.47" x="650.14" y="228.99" class="known"><title>void __cdecl HWR_ResetZBuffer(void);</title></rect>
|
||||
<rect width="5.37" height="5.47" x="658.61" y="228.99" class="known"><title>void __cdecl InitialiseXianLord(int16_t item_num);</title></rect>
|
||||
<rect width="5.37" height="5.47" x="666.98" y="228.99" class="known"><title>void __cdecl ClearBodyBag(void);</title></rect>
|
||||
|
Before Width: | Height: | Size: 357 KiB After Width: | Height: | Size: 357 KiB |
@ -1659,7 +1659,7 @@ typedef enum LARA_GUN_STATE {
|
||||
0042D970 0000001E + void __cdecl Lara_State_ClimbEnd(struct ITEM_INFO *item, struct COLL_INFO *coll);
|
||||
0042D990 00000014 + void __cdecl Lara_State_ClimbDown(struct ITEM_INFO *item, struct COLL_INFO *coll);
|
||||
0042D9B0 0000005D + void __cdecl Lara_Col_ClimbLeft(struct ITEM_INFO *item, struct COLL_INFO *coll);
|
||||
0042DA10 00000059 - void __cdecl Lara_Col_ClimbRight(struct ITEM_INFO *item, struct COLL_INFO *coll);
|
||||
0042DA10 00000059 + void __cdecl Lara_Col_ClimbRight(struct ITEM_INFO *item, struct COLL_INFO *coll);
|
||||
0042DA70 0000020D - void __cdecl Lara_Col_ClimbStance(struct ITEM_INFO *item, struct COLL_INFO *coll);
|
||||
0042DC80 0000014D - void __cdecl Lara_Col_Climbing(struct ITEM_INFO *item, struct COLL_INFO *coll);
|
||||
0042DDD0 0000019C - void __cdecl Lara_Col_ClimbDown(struct ITEM_INFO *item, struct COLL_INFO *coll);
|
||||
|
@ -793,8 +793,22 @@ void __cdecl Lara_Col_ClimbLeft(struct ITEM_INFO *item, struct COLL_INFO *coll)
|
||||
|
||||
int32_t shift;
|
||||
int32_t result = Lara_TestClimbPos(
|
||||
item, coll->radius, -(coll->radius + LARA_CLIMB_WIDTH),
|
||||
item, coll->radius, -(coll->radius + LARA_CLIMB_WIDTH_LEFT),
|
||||
-LARA_CLIMB_HIT_ELEVATION, LARA_CLIMB_HIT_ELEVATION, &shift);
|
||||
|
||||
Lara_DoClimbLeftRight(item, coll, result, shift);
|
||||
}
|
||||
|
||||
void __cdecl Lara_Col_ClimbRight(struct ITEM_INFO *item, struct COLL_INFO *coll)
|
||||
{
|
||||
if (Lara_CheckForLetGo(item, coll)) {
|
||||
return;
|
||||
}
|
||||
g_Lara.move_angle = item->pos.y_rot + PHD_90;
|
||||
|
||||
int32_t shift;
|
||||
int32_t result = Lara_TestClimbPos(
|
||||
item, coll->radius, coll->radius + LARA_CLIMB_WIDTH_RIGHT,
|
||||
-LARA_CLIMB_HIT_ELEVATION, LARA_CLIMB_HIT_ELEVATION, &shift);
|
||||
Lara_DoClimbLeftRight(item, coll, result, shift);
|
||||
}
|
||||
|
@ -38,3 +38,5 @@ void __cdecl Lara_Col_Wade(struct ITEM_INFO *item, struct COLL_INFO *coll);
|
||||
void __cdecl Lara_Col_Default(struct ITEM_INFO *item, struct COLL_INFO *coll);
|
||||
void __cdecl Lara_Col_Jumper(struct ITEM_INFO *item, struct COLL_INFO *coll);
|
||||
void __cdecl Lara_Col_ClimbLeft(struct ITEM_INFO *item, struct COLL_INFO *coll);
|
||||
void __cdecl Lara_Col_ClimbRight(
|
||||
struct ITEM_INFO *item, struct COLL_INFO *coll);
|
||||
|
@ -43,7 +43,8 @@
|
||||
#define LARA_LEAN_MAX ((10 * PHD_DEGREE) + LARA_LEAN_UNDO) // = 2002
|
||||
#define LARA_JUMP_TURN ((PHD_DEGREE * 1) + LARA_TURN_UNDO) // = 546
|
||||
#define LARA_FAST_FALL_SPEED (FAST_FALL_SPEED + 3) // = 131
|
||||
#define LARA_CLIMB_WIDTH 80
|
||||
#define LARA_CLIMB_WIDTH_LEFT 80
|
||||
#define LARA_CLIMB_WIDTH_RIGHT 120
|
||||
#define LARA_CLIMB_HIT_ELEVATION (WALL_L / 2) // = 512
|
||||
|
||||
#define CAM_HANG_ANGLE 0
|
||||
|
@ -417,7 +417,6 @@
|
||||
#define undraw_pistol_mesh_right ((void __cdecl (*)(int32_t weapon_type))0x0042D350)
|
||||
#define PistolHandler ((void __cdecl (*)(int32_t weapon_type))0x0042D390)
|
||||
#define AnimatePistols ((void __cdecl (*)(int32_t weapon_type))0x0042D520)
|
||||
#define Lara_Col_ClimbRight ((void __cdecl (*)(struct ITEM_INFO *item, struct COLL_INFO *coll))0x0042DA10)
|
||||
#define Lara_Col_ClimbStance ((void __cdecl (*)(struct ITEM_INFO *item, struct COLL_INFO *coll))0x0042DA70)
|
||||
#define Lara_Col_Climbing ((void __cdecl (*)(struct ITEM_INFO *item, struct COLL_INFO *coll))0x0042DC80)
|
||||
#define Lara_Col_ClimbDown ((void __cdecl (*)(struct ITEM_INFO *item, struct COLL_INFO *coll))0x0042DDD0)
|
||||
|
@ -178,6 +178,7 @@ static void Inject_Lara_Col(void)
|
||||
INJECT(1, 0x00429FE0, Lara_Col_Default);
|
||||
INJECT(1, 0x0042A020, Lara_Col_Jumper);
|
||||
INJECT(1, 0x0042D9B0, Lara_Col_ClimbLeft);
|
||||
INJECT(1, 0x0042DA10, Lara_Col_ClimbRight);
|
||||
}
|
||||
|
||||
static void Inject_S_Audio_Sample(void)
|
||||
|
Loading…
Reference in New Issue
Block a user