Не знаю даже чем вызван такой интерес к этому моменту, но если вопрос, необходимо дать ответ:
Узнать находиться ли игрок в зоне покупки или вне ее можно с помощью функции cs_get_user_buyzone
Инфо из cstrike.inc:
/* Is user in buyzone? Returns 1 when true, 0 when false.
*/
native cs_get_user_buyzone(index);
Синтаксис:
cs_get_user_buyzone ( index )
- index - id проверяемого игрока
Тип функции:
Native
Пример:
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#define PLUGIN "[cstrike.inc] cs_get_user_buyzone"
#define VERSION "1.0"
#define AUTHOR "Admin"
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("say /t_zone","f_test_buy_zone")
}
public f_test_buy_zone(id){
if(cs_get_user_buyzone(id)){
client_print(id,print_chat,"[cstrike.inc] You in buy zone")
}else{
client_print(id,print_chat,"[cstrike.inc] You out of a buy zone")
}
}
Описание:
В данном примере мы будет проверять сами себя на нахождение в зоне покупки.
С помощью команды say /t_zone запускается функция f_test_buy_zone, в теле которой и будет проверка на зону...
Создается условие
if(cs_get_user_buyzone(id))
Которое говорит: Если игрок в зоне покупки то выполнять код, если нет то выполнять вторую часть кода следующую за else.
То есть функция
cs_get_user_buyzone(id)просто вернет 1 или 0, в зоне покупки игрок или нет ( то есть мы ).
И в зависимости от ответа выдаст результат.
Попробуйте ввести команду в чат зоне покупки или вне е и увидите наглядный результат.