SDKCall или бред? Помогите [Решено]

Тема в разделе "Программирование / Скриптинг", создана пользователем inklesspen, 26 авг 2016.

  1. inklesspen

    inklesspen После "Р" в слове "Лопата"

    Сообщения:
    834
    Симпатии:
    197
    В общем создаю я SDKCall
    PHP:
        StartPrepSDKCall(SDKCall_Entity)
        
    PrepSDKCall_SetVirtual(CSGOCheckLinux2() ? 37 36)
        
    PrepSDKCall_AddParameter(SDKType_StringSDKPass_Pointer)
        
    PrepSDKCall_AddParameter(SDKType_StringSDKPass_Pointer)
        
    PrepSDKCall_AddParameter(SDKType_PlainOldDataSDKPass_Plain)
        
    fGetKeyValue EndPrepSDKCall()
    Захожу, запускаю, а мне пишет это:
    PHP:
    L 08/26/2016 23:13:02: [SMException reportedEntity index 128 is not a valid client
    L 08
    /26/2016 23:13:02: [SMBlamingsuper_plugin_pro_mode.smx()
    L 08/26/2016 23:13:02: [SMCall stack trace:
    L 08/26/2016 23:13:02: [SM]   [0SDKCall
    Причем это работает нормально
    PHP:
    #include <icpack/load>

    new Handle:fGetKeyValue INVALID_HANDLE

    public OnPluginStart()
    {
        
    StartPrepSDKCall(SDKCall_Entity)
        
    PrepSDKCall_SetVirtual(CSGOCheckLinux2() ? 37 36)
        
    PrepSDKCall_AddParameter(SDKType_StringSDKPass_Pointer)
        
    PrepSDKCall_AddParameter(SDKType_StringSDKPass_Pointer)
        
    PrepSDKCall_AddParameter(SDKType_PlainOldDataSDKPass_Plain)
        
    fGetKeyValue EndPrepSDKCall()
    }
    public 
    OnEntityCreated(int entity, const String:classname[])
    {
        if(
    StrEqual(classname"func_breakable"))
            
    SDKHook(entitySDKHook_OnTakeDamagePostOnTakeDamage_FuncBreakable)
    }

    public 
    OnTakeDamage_FuncBreakable(int victimint attackerint inflictorfloat damageint damagetype)
    {
        
    PrintToChat(attacker"Health: %i"GetKeyValueInt(victim"health"))
    }

    int GetKeyValueInt(int entity, const String:name[])
    {
        
    decl String:value[64]
        
    GetKeyValue(entitynamevalue64)
        return 
    StringToInt(value)
    }

    GetKeyValue(int entity, const String:name[], String:buf[], int size)
    {
        
    SDKCall(fGetKeyValueentitynamebufsize)
    }