Вот так можно отловить соприкосновение объекта и игрока:
Вариант с проверкой на classname объекта
Код:
#include <amxmodx>
#include <fakemeta>
public plugin_init()
{
register_plugin("Test FM_Touch", "1.0", "Leo_[BH]")
register_forward(FM_Touch, "fw_Touch")
}
public fw_Touch(entity, id)
{
if(!pev_valid(entity))
return FMRES_IGNORED
if(!is_user_alive(id))
return FMRES_IGNORED
static classname[64]
pev(entity, pev_classname, classname, charsmax(classname))
if(equal(classname, "Твой_тип_объекта")
{
// Дальше уже ставим режим неуязвимости и т. п.
}
return FMRES_IGNORED
}
Вариант с проверкой на модель объекта
Код:
#include <amxmodx>
#include <fakemeta>
public plugin_init()
{
register_plugin("Test FM_Touch", "1.0", "Leo_[BH]")
register_forward(FM_Touch, "fw_Touch")
}
public fw_Touch(entity, id)
{
if(!pev_valid(entity))
return FMRES_IGNORED
if(!is_user_alive(id))
return FMRES_IGNORED
static model[128]
pev(entity, pev_model, model, charsmax(model))
if(equal(model, "Моделька_твоего_объекта"))
{
// Дальше уже ставим режим неуязвимости и т. п.
}
return FMRES_IGNORED
}
Думаю, начало ты понял, дальше уже есть несколько способов сделать игрока неуязвимым (например set_user_godmode)
Отредактировал: LeoBH, - 26.9.2016, 17:28