register_forward(FM_Touch, "fmtouch")
(...)
public ent_cmd(id)
{
new Float:origins[3]
pev(id,pev_origin,origins);
new entit=create_entity("info_target")
origins[0]+=50.0
origins[2]-=32.0
set_pev(entit,pev_origin,origins)
entity_set_model(entit,"models/w_present.mdl")
set_pev(entit,pev_classname,"Prezent");
dllfunc(DLLFunc_Spawn, entit);
set_pev(entit,pev_solid,SOLID_BBOX);
set_pev(entit,pev_movetype,MOVETYPE_FLY);
engfunc(EngFunc_SetSize,entit,{-1.1, -1.1, -1.1},{1.1, 1.1, 1.1});
engfunc(EngFunc_DropToFloor,entit);
}
public fmtouch(ent, id)
{
if(!is_user_alive(id)) return FMRES_IGNORED;
if(!pev_valid(ent)) return FMRES_IGNORED;
static classname[32];
pev(ent,pev_classname,classname,31);
if(!equali(classname,"Prezent")) return FMRES_IGNORED;
remove_entity(ent)
return FMRES_IGNORED;
}
przerobiony kod z POH radima, nawet mój z wykorzystaniem engine i register_touch nie wykrywał dotyku i nie usuwał enta, raz mi działało ale coś dodałem i nie działa.
Czy ten kod ma działać? Czy wina leży u mnie, bo to nie jest jedyny działający plugin (testuje na localhost)