Попробуй.
#define CHECK_TIME 3.0
Если сатчел не всё ещё будет лететь через 3 секунды после того как игрок его использует, то он взрывается
Code
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <fakemeta>
#define PLUGIN "Anti Satchel Bag"
#define VERSION "0.1.0"
#define AUTHOR "PomanoB"
#define CHECK_TIME 3.0
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_forward(FM_SetModel, "fwdSetModel")
register_forward(FM_Think, "fwdThink")
}
public fwdSetModel(ent, model[])
{
if (equal(model, "models/w_satchel.mdl"))
{
static Float:think
pev(ent, pev_nextthink, think)
set_pev(ent, pev_fuser1, get_gametime() + CHECK_TIME)
}
}
public fwdThink(ent)
{
static classname[32]
pev(ent, pev_classname, classname, 31)
if (equal(classname, "monster_satchel"))
{
static Float:killTime
pev(ent, pev_fuser1, killTime)
if (killTime != 0.0 && killTime < get_gametime())
{
static Float:vel[3]
pev(ent, pev_velocity, vel)
if (vel[0] || vel[1] || vel[2])
{
set_pev(ent, pev_fuser1, 0.0)
dllfunc(DLLFunc_Use, ent, pev(ent, pev_owner))
}
}
}
}