Maks_Fender
Компетентный
Добрый день! 
Сегодня покажу мануал, как узнать город, страну и регион игрока (онлайн).
Ко всем #defineСегодня покажу мануал, как узнать город, страну и регион игрока (онлайн).
PHP:
#define publics:%0(%1) forward %0(%1); public %0(%1)
PHP:
pCountry[32],
pRegion[32],
pCity[32],
PHP:
publics: HTTP_OnLookupResponse(index, response, data[])
{
if(response == 200)
{
new country[32], region[32], city[32],pos;
if((pos = sscanf(data, "\"country_name\":")) != -1) { pos = pos + 16; strmid(country, data, pos, strfind(data, "\"", true, pos), 32); }
if((pos = sscanf(data, "\"region_name\":")) != -1) { pos = pos + 15; strmid(region, data, pos, strfind(data, "\"", true, pos), 32); }
if((pos = sscanf(data, "\"city_name\":")) != -1) { pos = pos + 13; strmid(city, data, pos,strfind(data, "\"", true, pos), 32); }
if(pos != -1) { format(PlayerInfo[index][pCountry],32,country); format(PlayerInfo[index][pCity],32,region); format(PlayerInfo[index][pRegion],32,city); }
}
else printf("City: %s[%i] | %i | %s",GN(index),index, response, data);
return 1;
}
PHP:
new ip[24]; GetPlayerIp(playerid,ip,sizeof(ip)); new string[60]: //если есть string в начале паблика, то объявлять здесь ее не нужно.
format(string,60,"www.realip.info/api/p/geoip.php?ip=%s",ip);
HTTP(playerid, HTTP_POST,stringer, "", "HTTP_OnLookupResponse");
PHP:
CMD:getinfo(playerid, params[])
{
if(sscanf(params, "i", params[0])) return SendClientMessage(playerid, 0xFFFFFFFF, "- Введите: /getinfo [id]");
format(string, sizeof(string), "Страна: %s, Город: %s, Регион: %s",PlayerInfo[giveplayerid][pCountry],PlayerInfo[giveplayerid][pCity],PlayerInfo[giveplayerid][pRegion]);
SendClientMessage(playerid, 0xFFFF00AA, string);
return true;
}
Вот и всё
Последнее редактирование:
