PHP Code:
void (*Get_Draw_Vector_Line)(const vec3_t start, const vec3_t end, const vec3_t Mins, int noIdea ) = (void (__cdecl *)(const vec3_t , const vec3_t , const vec3_t , int ))0x402A50;
PHP Code:
void (*Set_Draw_Vector_Line)(const vec3_t start, const vec3_t Mins, const vec3_t Maxs, int noIdea, const vec3_t VecTorSize, int Unknow2, int unknow3 ) = (void (__cdecl *)( const vec3_t , const vec3_t , const vec3_t , int , const vec3_t , int , int ))0x6B19F0;
exemplar how to use
PHP Code:
TraceSettings->Mask = get_bullet_penetration_table( 0 )->Mask;
vec3_t Start;
vec3_t Maxs;
Get_Draw_Vector_Line( Start, End, vec3_origin, 0 );
Set_Draw_Vector_Line( Start, vec3_origin, Maxs, 0, vec3_origin, 0, 0 );
Set_Draw_Vector_Line( End, vec3_origin, Maxs, 0, vec3_origin, 0, 0 );
Set_Weapon_CL_Trace(CTrace, Start, vec3_origin, Maxs, End, cent->ClientNum, 0x800000 + 1024, TraceSettings );
but also check the isVisible Code
corrected
PHP Code:
void (*Draw2D_Debug_Line)(const vec3_t start, const vec3_t end, vec4_t Color, bool dontDrawTruhWalls ) = (void (__cdecl *)(const vec3_t , const vec3_t , vec4_t , bool ))0x402A50;
void (*Draw3D_Debug_Line)(const vec3_t start, const vec3_t BoxSize, const vec3_t VecTorSize , int noIdea, vec4_t color, bool dontDrawTruhWalls, int PredictEffect ) = (void (__cdecl *)( const vec3_t , const vec3_t , const vec3_t , int , vec4_t , bool , int ))0x6B19F0;
Just made 3D box as well
asm
Draw2D_Debug_Line
PHP Code:
.text:00402A50 sub_402A50 proc near ; CODE XREF: sub_477DF0+B0p
.text:00402A50 ; sub_477DF0:loc_477F38p ...
.text:00402A50
.text:00402A50 arg_0 = dword ptr 4
.text:00402A50 arg_4 = dword ptr 8
.text:00402A50 arg_8 = dword ptr 0Ch
.text:00402A50 arg_C = dword ptr 10h
.text:00402A50
.text:00402A50 mov eax, [esp+arg_C]
.text:00402A54 mov ecx, [esp+arg_8]
.text:00402A58 mov edx, [esp+arg_4]
.text:00402A5C push 0
.text:00402A5E push eax
.text:00402A5F mov eax, [esp+8+arg_0]
.text:00402A63 push ecx
.text:00402A64 push edx
.text:00402A65 push eax
.text:00402A66 call sub_4D4880
.text:00402A6B add esp, 14h
.text:00402A6E retn
.text:00402A6E sub_402A50 endp
.text:00402A6E
Draw3D_Debug_Line
PHP Code:
.text:006B19F0
.text:006B19F0 ; =============== S U B R O U T I N E =======================================
.text:006B19F0
.text:006B19F0
.text:006B19F0 sub_6B19F0 proc near ; CODE XREF: .text:0040CDF7p
.text:006B19F0 ; .text:0049308Fp ...
.text:006B19F0
.text:006B19F0 var_74 = dword ptr -74h
.text:006B19F0 var_70 = dword ptr -70h
.text:006B19F0 var_6C = dword ptr -6Ch
.text:006B19F0 var_68 = dword ptr -68h
.text:006B19F0 var_64 = dword ptr -64h
.text:006B19F0 var_60 = byte ptr -60h
.text:006B19F0 var_5C = byte ptr -5Ch
.text:006B19F0 arg_0 = dword ptr 4
.text:006B19F0 arg_4 = dword ptr 8
.text:006B19F0 arg_8 = dword ptr 0Ch
.text:006B19F0 arg_C = dword ptr 10h
.text:006B19F0 arg_10 = dword ptr 14h
.text:006B19F0 arg_14 = dword ptr 18h
.text:006B19F0 arg_18 = dword ptr 1Ch
.text:006B19F0
.text:006B19F0 sub esp, 74h
.text:006B19F3 movss xmm0, [esp+74h+arg_C]
.text:006B19FC mulss xmm0, ds:dword_A2F1E4
.text:006B1A04 push ebx
.text:006B1A05 push ebp
.text:006B1A06 push esi
.text:006B1A07 lea eax, [esp+80h+var_74]
.text:006B1A0B lea ecx, [esp+80h+var_70]
.text:006B1A0F push edi
.text:006B1A10 mov [esp+84h+var_68], eax
.text:006B1A14 mov [esp+84h+var_6C], ecx
.text:006B1A18 movss [esp+84h+var_64], xmm0
.text:006B1A1E push eax
.text:006B1A1F push ecx
.text:006B1A20 fld [esp+8Ch+var_64]
.text:006B1A24 fsincos
.text:006B1A26 mov ecx, [esp+8Ch+var_68]
.text:006B1A2A mov eax, [esp+8Ch+var_6C]
.text:006B1A2E fstp dword ptr [ecx]
.text:006B1A30 fstp dword ptr [eax]
.text:006B1A32 pop ecx
.text:006B1A33 pop eax
.text:006B1A34 mov eax, [esp+84h+arg_0]
.text:006B1A3B movss xmm0, dword ptr [eax+8]
.text:006B1A40 movss xmm5, dword ptr [eax]
.text:006B1A44 movss xmm6, dword ptr [eax+4]
.text:006B1A49 mov esi, [esp+84h+arg_8]
.text:006B1A50 mov edi, [esp+84h+arg_4]
.text:006B1A57 movss xmm3, [esp+84h+var_74]
.text:006B1A5D movss xmm4, [esp+84h+var_70]
.text:006B1A63 lea eax, [esp+84h+var_5C]
.text:006B1A67 xor ecx, ecx
.text:006B1A69 movss [esp+84h+var_64], xmm0
.text:006B1A6F mov edx, eax
.text:006B1A71
.text:006B1A71 loc_6B1A71: ; CODE XREF: sub_6B19F0+122j
.text:006B1A71 test cl, 1
.text:006B1A74 jz short loc_6B1A7C
.text:006B1A76 movss xmm0, dword ptr [esi]
.text:006B1A7A jmp short loc_6B1A80
.text:006B1A7C ; ---------------------------------------------------------------------------
.text:006B1A7C
.text:006B1A7C loc_6B1A7C: ; CODE XREF: sub_6B19F0+84j
.text:006B1A7C movss xmm0, dword ptr [edi]
.text:006B1A80
.text:006B1A80 loc_6B1A80: ; CODE XREF: sub_6B19F0+8Aj
.text:006B1A80 movss dword ptr [edx-4], xmm0
.text:006B1A85 test cl, 2
.text:006B1A88 jz short loc_6B1A91
.text:006B1A8A movss xmm0, dword ptr [esi+4]
.text:006B1A8F jmp short loc_6B1A96
.text:006B1A91 ; ---------------------------------------------------------------------------
.text:006B1A91
.text:006B1A91 loc_6B1A91: ; CODE XREF: sub_6B19F0+98j
.text:006B1A91 movss xmm0, dword ptr [edi+4]
.text:006B1A96
.text:006B1A96 loc_6B1A96: ; CODE XREF: sub_6B19F0+9Fj
.text:006B1A96 movss dword ptr [edx], xmm0
.text:006B1A9A test cl, 4
.text:006B1A9D jz short loc_6B1AA6
.text:006B1A9F movss xmm0, dword ptr [esi+8]
.text:006B1AA4 jmp short loc_6B1AAB
.text:006B1AA6 ; ---------------------------------------------------------------------------
.text:006B1AA6
.text:006B1AA6 loc_6B1AA6: ; CODE XREF: sub_6B19F0+ADj
.text:006B1AA6 movss xmm0, dword ptr [edi+8]
.text:006B1AAB
.text:006B1AAB loc_6B1AAB: ; CODE XREF: sub_6B19F0+B4j
.text:006B1AAB movss dword ptr [edx+4], xmm0
.text:006B1AB0 movss xmm0, dword ptr [eax-4]
.text:006B1AB5 movss xmm1, dword ptr [eax]
.text:006B1AB9 movaps xmm2, xmm0
.text:006B1ABC mulss xmm0, xmm4
.text:006B1AC0 movaps xmm7, xmm1
.text:006B1AC3 mulss xmm1, xmm3
.text:006B1AC7 addss xmm0, xmm1
.text:006B1ACB movss dword ptr [eax], xmm0
.text:006B1ACF mulss xmm2, xmm3
.text:006B1AD3 mulss xmm7, xmm4
.text:006B1AD7 subss xmm2, xmm7
.text:006B1ADB movss dword ptr [eax-4], xmm2
.text:006B1AE0 movaps xmm0, xmm2
.text:006B1AE3 addss xmm0, xmm5
.text:006B1AE7 movss dword ptr [eax-4], xmm0
.text:006B1AEC movss xmm0, dword ptr [eax]
.text:006B1AF0 addss xmm0, xmm6
.text:006B1AF4 movss dword ptr [eax], xmm0
.text:006B1AF8 movss xmm0, dword ptr [eax+4]
.text:006B1AFD addss xmm0, [esp+84h+var_64]
.text:006B1B03 movss dword ptr [eax+4], xmm0
.text:006B1B08 inc ecx
.text:006B1B09 add edx, 0Ch
.text:006B1B0C add eax, 0Ch
.text:006B1B0F cmp ecx, 8
.text:006B1B12 jb loc_6B1A71
.text:006B1B18 mov edi, [esp+84h+arg_18]
.text:006B1B1F mov ebx, [esp+84h+arg_14]
.text:006B1B26 mov ebp, [esp+84h+arg_10]
.text:006B1B2D xor esi, esi
.text:006B1B2F nop
.text:006B1B30
.text:006B1B30 loc_6B1B30: ; CODE XREF: sub_6B19F0+16Dj
.text:006B1B30 mov eax, ds:dword_AB726C[esi]
.text:006B1B36 push edi
.text:006B1B37 lea edx, [eax+eax*2]
.text:006B1B3A push ebx
.text:006B1B3B lea eax, [esp+edx*4+8Ch+var_60]
.text:006B1B3F push ebp
.text:006B1B40 push eax
.text:006B1B41 mov eax, ds:dword_AB7268[esi]
.text:006B1B47 lea ecx, [eax+eax*2]
.text:006B1B4A lea edx, [esp+ecx*4+94h+var_60]
.text:006B1B4E push edx
.text:006B1B4F call sub_4D4880
.text:006B1B54 add esi, 8
.text:006B1B57 add esp, 14h
.text:006B1B5A cmp esi, 60h
.text:006B1B5D jb short loc_6B1B30
.text:006B1B5F pop edi
.text:006B1B60 pop esi
.text:006B1B61 pop ebp
.text:006B1B62 pop ebx
.text:006B1B63 add esp, 74h
.text:006B1B66 retn
.text:006B1B66 sub_6B19F0 endp
edit:
easy reverence to find it in any cod
PHP Code:
bool __cdecl sub_7FCA20()
{
return (dword_33F0E34
|| (dword_33F0E2C = 2048,
dword_33F0E4C = 4096,
dword_33F0E3C = 4096,
sub_711FD0((int)&dword_33F0E34, 0x16000u, (int)"Client Debug Lines"),
sub_711FD0((int)&dword_33F0E38, 0x2000u, (int)"Client Debug Lines"),
dword_33F0E30 = 0,
sub_711FD0((int)&dword_33F0E54, 0x2C000u, (int)"Client Debug Lines"),
sub_711FD0((int)&dword_33F0E58, 0x4000u, (int)"Client Debug Lines"),
dword_33F0E50 = 0,
sub_711FD0((int)&dword_33F0E44, 0x2C000u, (int)"Client Debug Lines"),
dword_33F0E40 = 0,
dword_33F0E34))
&& dword_33F0E38
&& dword_33F0E54
&& dword_33F0E58
&& dword_33F0E44;
}
Client Debug Lines calls in the functions above
Credits:
King-OrgY