Code:
1143980E |. 8946 14 MOV DWORD PTR DS:[ESI+14],EAX
11439811 |. FF15 142C5412 CALL DWORD PTR DS:[12542C14]
11439817 |> B8 86220000 MOV EAX,2286
1143981C |. 397C24 0C CMP DWORD PTR SS:[LOCAL.31],EDI
11439820 |. 74 05 JE SHORT 11439827
11439822 |. B8 86220200 MOV EAX,22286
11439827 |> 0F57C0 XORPS XMM0,XMM0
1143982A |. 83C9 FF OR ECX,FFFFFFFF
1143982D |. 57 PUSH EDI ; /Arg7 -> DWORD unk
1143982E |. 894C24 68 MOV DWORD PTR SS:[LOCAL.9],ECX ; |
11439832 |. 898C24 880000 MOV DWORD PTR SS:[LOCAL.1],ECX ; |
11439839 |. 8D4C24 20 LEA ECX,[LOCAL.27] ; |
1143983D |. 51 PUSH ECX ; |Arg6 -> FVector *Extent
1143983E |. 50 PUSH EAX ; |Arg5 -> DWORD TraceFlags
1143983F |. 8D5424 34 LEA EDX,[LOCAL.24] ; |
11439843 |. 52 PUSH EDX ; |Arg4 -> FVector *Start
11439844 |. 8D4424 44 LEA EAX,[LOCAL.21] ; |
11439848 |. 50 PUSH EAX ; |Arg3 -> FVector *End
11439849 |. 53 PUSH EBX ; |Arg2 -> AActor *SourceActor
1143984A |. 8D4C24 58 LEA ECX,[LOCAL.18] ; |
1143984E |. F30F114424 60 MOVSS DWORD PTR SS:[LOCAL.16],XMM0 ; |
11439854 |. F30F114424 64 MOVSS DWORD PTR SS:[LOCAL.15],XMM0 ; |
1143985A |. F30F114424 68 MOVSS DWORD PTR SS:[LOCAL.14],XMM0 ; |
11439860 |. F30F114424 6C MOVSS DWORD PTR SS:[LOCAL.13],XMM0 ; |
11439866 |. F30F114424 70 MOVSS DWORD PTR SS:[LOCAL.12],XMM0 ; |
1143986C |. F30F114424 74 MOVSS DWORD PTR SS:[LOCAL.11],XMM0 ; |
11439872 |. F30F1005 28C4 MOVSS XMM0,DWORD PTR DS:[11E4C428] ; |FLOAT 1.000000
1143987A |. 51 PUSH ECX ; |Arg1 -> FAsyncLineCheckResult *Hit
1143987B |. 8B0D 04EE5412 MOV ECX,DWORD PTR DS:[1254EE04] ; | --> ULevel pointer
11439881 |. 897C24 5C MOV DWORD PTR SS:[LOCAL.18],EDI ; |
11439885 |. 897C24 60 MOV DWORD PTR SS:[LOCAL.17],EDI ; |
11439889 |. F30F114424 7C MOVSS DWORD PTR SS:[LOCAL.10],XMM0 ; |
1143988F |. 89BC24 840000 MOV DWORD PTR SS:[LOCAL.8],EDI ; |
11439896 |. 89BC24 880000 MOV DWORD PTR SS:[LOCAL.7],EDI ; |
1143989D |. 89BC24 8C0000 MOV DWORD PTR SS:[LOCAL.6],EDI ; |
114398A4 |. 89BC24 900000 MOV DWORD PTR SS:[LOCAL.5],EDI ; |
114398AB |. 89BC24 940000 MOV DWORD PTR SS:[LOCAL.4],EDI ; |
114398B2 |. 89BC24 980000 MOV DWORD PTR SS:[LOCAL.3],EDI ; |
114398B9 |. 89BC24 9C0000 MOV DWORD PTR SS:[LOCAL.2],EDI ; |
114398C0 |. 89BC24 A40000 MOV DWORD PTR SS:[LOCAL.0],EDI ; |
114398C7 |. E8 748DE6FF CALL 112A2640 ; \APB.112A2640, SingleLineCheck call
114398CC |. 8B8424 940000 MOV EAX,DWORD PTR SS:[ARG.2]
114398D3 |. 33D2 XOR EDX,EDX
Code:
// Globally declared vars...
typedef BOOL (__thiscall *SingleLineCheck_t)
(DWORD dwCaller, FAsyncLineCheckResult *Hit, AActor *SourceActor, FVector *End, FVector *Start, DWORD TraceFlags, FVector *Extent, DWORD unk);
// TF = 2286, 22286
SingleLineCheck_t g_pSingleLineCheck = (SingleLineCheck_t)0x112A2640;
DWORD *dwULevel = (DWORD *)0x1254EE04;
FAsyncLineCheckResult Hit;
FVector vExtent = {0,0,0};
FColor color;
...
...
BOOL IsVisible(FVector *start, FVector *end)
{
return g_pSingleLineCheck(*dwULevel, &Hit, g_pPC->Pawn, end, start, 0x22286, &vExtent, 0);
}
Enjoy and have fun.
---------------------------
|Credits: EddyK & LowHertz|
---------------------------