[CS:GO] Не работает Join Info

Тема в разделе "Counter-Strike: Global Offensive", создана пользователем -=Batista=-, 16 апр 2015.

  1. -=Batista=-

    -=Batista=- Просвященный

    Сообщения:
    282
    Симпатии:
    73
    После обновления SM до версии 1.7, перестал работать Join Info. Ошибок в логах нет. При компиляции выдает ошибку о устаревшей переменной "GetClientAuthString и просит заменить на GetClientAuthId. Поможет кто-нибудь отдебажить? Заранее спасибо!:beer:
     

    Вложения:

    • join_info.sp
      Размер файла:
      2 КБ
      Просмотров:
      15
    • csgo_colors.7z
      Размер файла:
      954 байт
      Просмотров:
      2
  2. AlmazON

    AlmazON деревянный © yand3xmail

    Сообщения:
    4.563
    Симпатии:
    1.988
    [CS:GO] Join Info v1.1

    PHP:
    #pragma semicolon 1

    #include <sourcemod>
    #include <socket>
    #include <csgo_colors>

    public Plugin:myinfo 
    {
        
    name    "Join Info",
        
    author    "wS",
        
    version    "1.1-CSGO",
    };

    new 
    String:g_IP[MAXPLAYERS+1][16];

    public 
    OnClientPutInServer(client)
    {
        if (
    IsFakeClient(client) || !GetClientIP(clientg_IP[client], 16)) return;

        new 
    Handle:socket SocketCreate(SOCKET_TCPOnSocketError);
        
    SocketSetArg(socketGetClientUserId(client));
        
    SocketConnect(socketOnSocketConnectedOnSocketReceiveOnSocketDisconnected"www.ipaddresslocation.org"80);
    }

    public 
    OnSocketConnected(Handle:socketany:id)
    {
        new 
    client GetClientOfUserId(id);
        if (
    client)
        {
            
    decl String:info[150];
            
    FormatEx(info150"GET /ip-address-locator.php?lookup=%s HTTP/1.0\r\nHost: www.ipaddresslocation.org\r\nConnection: close\r\n\r\n"g_IP[client]);
            
    SocketSend(socketinfo);
        }
    }

    public 
    OnSocketReceive(Handle:socketString:receiveData[], const dataSizeany:id)
    {
        new 
    position StrContains(receiveData"IP Location: "false);
        if (
    position <1) return;

        
    decl String:info[2][65];
        if (
    ExplodeString(receiveData[position 13], " "info265) > 1)
        {
            
    CloseHandle(socket);

            
    decl client;
            if ((
    client GetClientOfUserId(id)))
            {
                
    decl String:steamid[30];
                if (!
    GetClientAuthId(clientAuthId_Steam2steamid30)) steamid "steamid: -";
                
    TrimString(info[1]); TrimString(info[0]);
                if (
    info[0]) CGOPrintToChatAll("{OLIVE}Подключается игрок: {RED}%N {OLIVE}из города {RED}%s"clientinfo[0]);
                else 
    CGOPrintToChatAll("{OLIVE}Подключается игрок: {RED}%N "client);
            }
        }
    }

    public 
    OnSocketDisconnected(Handle:socketany:idCloseHandle(socket);

    public 
    OnSocketError(Handle:socket, const errorType, const errorNumany:id)
    {
        
    CloseHandle(socket);
        
    LogError("socket error %d (errno %d)"errorTypeerrorNum);
    }
    Чуток намутил иначе - не знаю, будет ли работать)
     
    TWRP нравится это.
  3. -=Batista=-

    -=Batista=- Просвященный

    Сообщения:
    282
    Симпатии:
    73
    Re: [CS:GO] Join Info v1.1

    Ошибка 033 в 52 строке при компиляции: array must be indexed (variable "info")
     
  4. R1KO

    R1KO Супер-модератор

    Сообщения:
    6.000
    Симпатии:
    2.992
    -=Batista=-,

    PHP:
    if (info[0]) CGOPrintToChatAll("{OLIVE}Подключается игрок: {RED}%N {OLIVE}из города {RED}%s"clientinfo[0]);
    ->
    PHP:
    if (info[0][0]) CGOPrintToChatAll("{OLIVE}Подключается игрок: {RED}%N {OLIVE}из города {RED}%s"clientinfo[0]);
     
  5. R1KO

    R1KO Супер-модератор

    Сообщения:
    6.000
    Симпатии:
    2.992
    AlmazON,
    PHP:
     decl String:steamid[30];
                if (!
    GetClientAuthId(clientAuthId_Steam2steamid30)) steamid "steamid: -";
    Зачем получали стим если его не юзали?

    PHP:
    else CGOPrintToChatAll("{OLIVE}Подключается игрок: {RED}%N "client);
    Может лучше так?
    PHP:
    if (ExplodeString(receiveData[position 13], " "info265) > 1)
        {
    ...
    }
    else 
    CGOPrintToChatAll("{OLIVE}Подключается игрок: {RED}%N "client);
     
    TWRP нравится это.
  6. AlmazON

    AlmazON деревянный © yand3xmail

    Сообщения:
    4.563
    Симпатии:
    1.988
    R1KO, перестань, не я это писал. Чуть подкорректировал и всё. Оффтоп
     
    TWRP нравится это.
  7. -=Batista=-

    -=Batista=- Просвященный

    Сообщения:
    282
    Симпатии:
    73
    Могу сказать две вещи абсолютно точно. 1)компилится 2)не работает. Он вроде-как и отображается в списке работающих, но в чат ни шиша не выводит
     
  8. AlmazON

    AlmazON деревянный © yand3xmail

    Сообщения:
    4.563
    Симпатии:
    1.988
    Потому что не получило ничего толкового с сервера...
     
  9. -=Batista=-

    -=Batista=- Просвященный

    Сообщения:
    282
    Симпатии:
    73
    Т.е. думаешь, что сервер, на котором идёт определение города, ныне не активен?
     
  10. AlmazON

    AlmazON деревянный © yand3xmail

    Сообщения:
    4.563
    Симпатии:
    1.988
    Активен, но у меня не получил сокет город... Может, из-за того, что порты закрыты - вот тебе одна из причин.