Ошибка GetClientAbsOrigin

alexmy

Участник
Сообщения
284
Реакции
13
Всем привет, ребята в чем пробела, подскажите пж.=)
L 06/14/2017 - 03:07:08: SourceMod error session started
L 06/14/2017 - 03:07:08: Info (map "l4d_farm05_cornfield") (file "errors_20170614.log")
L 06/14/2017 - 03:07:08: [SM] Native "GetClientAbsOrigin" reported: Client index -1 is invalid
L 06/14/2017 - 03:07:08: [SM] Displaying call stack trace for plugin "disabled/l4d_lastboss.smx":
L 06/14/2017 - 03:07:08: [SM] [0] Line 276, E:\left4dead\left4dead\addons\sourcemod\scripting\l4d_lastboss.sp::Event_Player_Death()
L 06/14/2017 - 03:13:55: Error log file session closed.
L 06/14/2017 - 05:53:05: SourceMod error session started
L 06/14/2017 - 05:53:05: Info (map "l4d_river03_port") (file "errors_20170614.log")
L 06/14/2017 - 05:53:05: [SM] Native "GetClientAbsOrigin" reported: Client 6 is not in game
L 06/14/2017 - 05:53:05: [SM] Displaying call stack trace for plugin "disabled/l4d_lastboss.smx":
L 06/14/2017 - 05:53:05: [SM] [0] Line 276, E:\left4dead\left4dead\addons\sourcemod\scripting\l4d_lastboss.sp::Event_Player_Death()
L 06/14/2017 - 05:54:53: [SM] Native "GetClientAbsOrigin" reported: Client 6 is not in game
L 06/14/2017 - 05:54:53: [SM] Displaying call stack trace for plugin "disabled/l4d_lastboss.smx":
L 06/14/2017 - 05:54:53: [SM] [0] Line 276, E:\left4dead\left4dead\addons\sourcemod\scripting\l4d_lastboss.sp::Event_Player_Death()
L 06/14/2017 - 05:56:03: Error log file session closed.
PHP:
public void Event_Player_Death(Event event, const char [] name, bool dontBroadcast)
{
    int client = GetClientOfUserId(event.GetInt("userid"));
    
    if(client <= 0 || client > GetMaxClients() || !IsValidEntity(client) || !IsClientInGame(client) || GetEntProp(client, Prop_Send, "m_zombieClass") != CLASS_TANK)
        return;
    if(wavecount < 2 && GetConVarInt(sm_lastboss_enable) == 3)
    {
        wavecount++;
        return;
    }
    
    if((bossflag && GetConVarInt(sm_lastboss_enable) == 1) || (GetConVarInt(sm_lastboss_enable) == 2) || (bossflag && GetConVarInt(sm_lastboss_enable) == 3))
    {
        if(idBoss)
        {
            float Pos[3];
            GetClientAbsOrigin(idBoss, Pos); //276
            idBoss = DEAD;
            form_prev = DEAD;
        }
    }
}
 

Someone

Участник
Сообщения
1,933
Реакции
1,653
Всем привет, ребята в чем пробела, подскажите пж.=)
L 06/14/2017 - 03:07:08: SourceMod error session started
L 06/14/2017 - 03:07:08: Info (map "l4d_farm05_cornfield") (file "errors_20170614.log")
L 06/14/2017 - 03:07:08: [SM] Native "GetClientAbsOrigin" reported: Client index -1 is invalid
L 06/14/2017 - 03:07:08: [SM] Displaying call stack trace for plugin "disabled/l4d_lastboss.smx":
L 06/14/2017 - 03:07:08: [SM] [0] Line 276, E:\left4dead\left4dead\addons\sourcemod\scripting\l4d_lastboss.sp::Event_Player_Death()
L 06/14/2017 - 03:13:55: Error log file session closed.
L 06/14/2017 - 05:53:05: SourceMod error session started
L 06/14/2017 - 05:53:05: Info (map "l4d_river03_port") (file "errors_20170614.log")
L 06/14/2017 - 05:53:05: [SM] Native "GetClientAbsOrigin" reported: Client 6 is not in game
L 06/14/2017 - 05:53:05: [SM] Displaying call stack trace for plugin "disabled/l4d_lastboss.smx":
L 06/14/2017 - 05:53:05: [SM] [0] Line 276, E:\left4dead\left4dead\addons\sourcemod\scripting\l4d_lastboss.sp::Event_Player_Death()
L 06/14/2017 - 05:54:53: [SM] Native "GetClientAbsOrigin" reported: Client 6 is not in game
L 06/14/2017 - 05:54:53: [SM] Displaying call stack trace for plugin "disabled/l4d_lastboss.smx":
L 06/14/2017 - 05:54:53: [SM] [0] Line 276, E:\left4dead\left4dead\addons\sourcemod\scripting\l4d_lastboss.sp::Event_Player_Death()
L 06/14/2017 - 05:56:03: Error log file session closed.
PHP:
public void Event_Player_Death(Event event, const char [] name, bool dontBroadcast)
{
    int client = GetClientOfUserId(event.GetInt("userid"));
   
    if(client <= 0 || client > GetMaxClients() || !IsValidEntity(client) || !IsClientInGame(client) || GetEntProp(client, Prop_Send, "m_zombieClass") != CLASS_TANK)
        return;
    if(wavecount < 2 && GetConVarInt(sm_lastboss_enable) == 3)
    {
        wavecount++;
        return;
    }
   
    if((bossflag && GetConVarInt(sm_lastboss_enable) == 1) || (GetConVarInt(sm_lastboss_enable) == 2) || (bossflag && GetConVarInt(sm_lastboss_enable) == 3))
    {
        if(idBoss)
        {
            float Pos[3];
            GetClientAbsOrigin(idBoss, Pos); //276
            idBoss = DEAD;
            form_prev = DEAD;
        }
    }
}

Где if (client <= ...) подставь IsClientInGame (client)
 
Сверху Снизу