спектр инфо

Сообщения
14
Реакции
4
Здравствуйте, не подскажите как правильно сделать чтобы информация о игроке показывалась только наблюдателям

C++:
#include <amxmodx>
#include <amxmisc>
#include <sxgeo>

#pragma semicolon 1

#define UPDATEINTERVAL 1.0

public plugin_init()
{
    register_plugin("[SxGeo] Connect Info", "1.0", "s1lent");
    set_task(UPDATEINTERVAL, "tskShowSpec", 123094, "", 0, "b", 0);

}

public client_putinserver(id)
{
    if(is_user_bot(id) || is_user_hltv(id))
    return;
    new szName[32], Steam[64], szIP[16], player_ip[23];
    get_user_name(id, szName, charsmax(szName));
    get_user_ip(id, szIP, charsmax(szIP), /*strip port*/ 0);
    get_user_ip(id, player_ip, 22,1);
    get_user_authid(id, Steam, charsmax(Steam));
    set_hudmessage(0, 255, 0, 0.55, 0.41, 0, 0.0, UPDATEINTERVAL + 0.4, 0.0, 0.0, -1);

    new szCountry[64], szRegion[64], szCity[64];

    new bool:bCountryFound = sxgeo_country(szIP, szCountry, charsmax(szCountry));
    new bool:bRegionFound  = sxgeo_region (szIP, szRegion,  charsmax(szRegion));
    new bool:bCityFound    = sxgeo_city   (szIP, szCity,    charsmax(szCity));

    if (bCountryFound && bCityFound && bRegionFound)
    {
        show_hudmessage(id, "Ник: %s^nИп: %s^nГород: %s^nОбласть: %s^nСтрана: %s^nSteam: %s^n", szName, player_ip, szCity, szRegion, szCountry, Steam);
    }
}
 
Сообщения
187
Реакции
319
Помог
1 раз(а)
Как один из вариантов сделать проверку на то жив игрок или мертв
 
Сообщения
147
Реакции
29
You are using the index player (not 100% connected) ... use index 0 or set task? Im sorry if missunderstood the question
Go
Edit: ops, its made by s1lent so im wrong then :D
 
Сообщения
1,420
Реакции
2,511
Помог
58 раз(а)
Код:
if (bCountryFound && bCityFound && bRegionFound)
{
    for(new i = 1; i <= MaxClients; i++)
    {
        if(!is_user_connected(i) || get_user_team(i) != 3)
            continue;
        show_hudmessage(i, "Ник: %s^nИп: %s^nГород: %s^nОбласть: %s^nСтрана: %s^nSteam: %s^n", szName, player_ip, szCity, szRegion, szCountry, Steam);
    }
}
 
Сообщения
432
Реакции
410
Помог
14 раз(а)
Ну как минимум показать рабочий исходник
 
Сообщения
14
Реакции
4
Вот что получается, в чем может быть проблема что я захожу в наблюдатели, а информация не отображается, если не тяжело подскажите пожалуйста что я не правильно сделал?

C++:
#include <amxmodx>
#include <amxmisc>
#include <sxgeo>

#pragma semicolon 1

#define UPDATEINTERVAL 1.0

new gMaxPlayers;

public plugin_init()
{
    register_plugin("[SxGeo] Connect Info", "1.0", "s1lent");
    gMaxPlayers = get_maxplayers();
    set_task(UPDATEINTERVAL, "tskShowSpec", 123094, "", 0, "b", 0);

}

public tskShowSpec(id)
{
    if(is_user_bot(id) || is_user_hltv(id))
    return;
    new szName[32], Steam[64], szIP[16], player_ip[23];
    get_user_name(id, szName, charsmax(szName));
    get_user_ip(id, szIP, charsmax(szIP), /*strip port*/ 0);
    get_user_ip(id, player_ip, 22,1);
    get_user_authid(id, Steam, charsmax(Steam));
    set_hudmessage(0, 255, 0, 0.55, 0.41, 0, 0.0, UPDATEINTERVAL + 0.4, 0.0, 0.0, -1);

    new szCountry[64], szRegion[64], szCity[64];

    new bool:bCountryFound = sxgeo_country(szIP, szCountry, charsmax(szCountry));
    new bool:bRegionFound  = sxgeo_region (szIP, szRegion,  charsmax(szRegion));
    new bool:bCityFound    = sxgeo_city   (szIP, szCity,    charsmax(szCity));

    if (bCountryFound && bCityFound && bRegionFound)
    {
              for(new i = 1; i <= gMaxPlayers; i++)
              {
                       if(!is_user_connected(i) || get_user_team(i) != 3)
                       continue;
                       show_hudmessage(i, "Ник: %s^nИп: %s^nГород: %s^nОбласть: %s^nСтрана: %s^nSteam: %s^n", szName, player_ip, szCity, szRegion, szCountry, Steam);
              }
    }
}
 

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу