View Single Post
Lux
Veteran Member
Join Date: Jan 2015
Location: Cat
Old 03-02-2019 , 23:21   Re: [L4D/L4D2]ThirdPersonShoulder_Detect(1.5 - 03/03/2019)
Reply With Quote #12

if your looking for thirdpersonshoulder in netprops then no there is not, that is clientsided.

It is a combo of netprops e.g. stagger ect.

you can use this bool from LMC
https://github.com/LuxLuma/Luxs-Mode...t.sp#L106-L226
PHP Code:
static bool IsSurvivorThirdPerson(int iClient)
{
    if(
bThirdPerson[iClient])
        return 
true;
    if(
GetEntPropEnt(iClientProp_Send"m_hViewEntity") > 0)
        return 
true;
    if(
GetEntPropFloat(iClientProp_Send"m_TimeForceExternalView") > GetGameTime())
        return 
true;
    if(
GetEntProp(iClientProp_Send"m_iObserverMode") == 1)
        return 
true;
    if(
GetEntPropEnt(iClientProp_Send"m_pummelAttacker") > 0)
        return 
true;
    if(
GetEntPropEnt(iClientProp_Send"m_carryAttacker") > 0)
        return 
true;
    if(
GetEntPropEnt(iClientProp_Send"m_pounceAttacker") > 0)
        return 
true;
    if(
GetEntPropEnt(iClientProp_Send"m_jockeyAttacker") > 0)
        return 
true;
    if(
GetEntProp(iClientProp_Send"m_isHangingFromLedge") > 0)
        return 
true;
    if(
GetEntPropEnt(iClientProp_Send"m_reviveTarget") > 0)
        return 
true;
    if(
GetEntPropFloat(iClientProp_Send"m_staggerTimer"1) > -1.0)
        return 
true;
    
    switch(
GetEntProp(iClientProp_Send"m_iCurrentUseAction"))
    {
        case 
1:
        {
            static 
int iTarget;
            
iTarget GetEntPropEnt(iClientProp_Send"m_useActionTarget");
            
            if(
iTarget == GetEntPropEnt(iClientProp_Send"m_useActionOwner"))
                return 
true;
            else if(
iTarget != iClient)
                return 
true;
        }
        case 
45678910:
        return 
true;
    }
    
    static 
char sModel[31];
    
GetEntPropString(iClientProp_Data"m_ModelName"sModelsizeof(sModel));
    
    switch(
sModel[29])
    {
        case 
'b'://nick
        
{
            switch(
GetEntProp(iClientProp_Send"m_nSequence"))
            {
                case 
626625624623622621661662664665666667668670671672673674620680616:
                return 
true;
            }
        }
        case 
'd'://rochelle
        
{
            switch(
GetEntProp(iClientProp_Send"m_nSequence"))
            {
                case 
674678679630631632633634668677681680676675673672671670687629625616:
                return 
true;
            }
        }
        case 
'c'://coach
        
{
            switch(
GetEntProp(iClientProp_Send"m_nSequence"))
            {
                case 
656622623624625626663662661660659658657654653652651621620669615:
                return 
true;
            }
        }
        case 
'h'://ellis
        
{
            switch(
GetEntProp(iClientProp_Send"m_nSequence"))
            {
                case 
625675626627628629630631678677676575674673672671670669668667666665684621:
                return 
true;
            }
        }
        case 
'v'://bill
        
{
            switch(
GetEntProp(iClientProp_Send"m_nSequence"))
            {
                case 
528759763764529530531532533534753676675761758757756755754527772762522:
                return 
true;
            }
        }
        case 
'n'://zoey
        
{
            switch(
GetEntProp(iClientProp_Send"m_nSequence"))
            {
                case 
537819823824538539540541542543813828825822821820818817816815814536809572:
                return 
true;
            }
        }
        case 
'e'://francis
        
{
            switch(
GetEntProp(iClientProp_Send"m_nSequence"))
            {
                case 
532533534535536537769768767766765764763762761760759758757756531530775525:
                return 
true;
            }
        }
        case 
'a'://louis
        
{
            switch(
GetEntProp(iClientProp_Send"m_nSequence"))
            {
                case 
529530531532533534766765764763762761760759758757756755754753527772528522:
                return 
true;
            }
        }
        case 
'w'://adawong
        
{
            switch(
GetEntProp(iClientProp_Send"m_nSequence"))
            {
                case 
674678679630631632633634668677681680676675673672671670687629625616:
                return 
true;
            }
        }
    }
    return 
false;

Just remove
PHP Code:
if(bThirdPerson[iClient])
return 
true
That is for the thirdpersonshoulder array.

If you looking for l4d1 i'm not really starting on porting LMC stuff to l4d1 due differences of the netprops.
__________________
Connect
My Plugins: KlickME
[My GitHub]

Commission me for L4D

Last edited by Lux; 03-02-2019 at 23:37.
Lux is offline