Code:
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#define PLUGIN "Give Admin m3"
#define VERSION "1.0"
#define AUTHOR "The Specialist"
#define MAX_PLAYERS 32
new bool:g_restart_attempt[MAX_PLAYERS + 1];
new g_Switch;
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
g_Switch = register_cvar("admin_give_m3","1");
register_event("ResetHUD", "event_hud_reset", "be");
register_clcmd("fullupdate", "clcmd_fullupdate") ;
register_event("TextMsg", "event_restart_attempt", "a", "2=#Game_will_restart_in");
}
public clcmd_fullupdate()
{
return 1;
}
public event_restart_attempt()
{
new players[32], num;
get_players(players, num, "a");
for (new i; i < num; ++i)
{
g_restart_attempt[players[i]] = true;
}
}
public event_hud_reset(id)
{
if (g_restart_attempt[id])
{
g_restart_attempt[id] = false;
return;
}
event_player_spawn(id)
}
public event_player_spawn(id)
{
if(get_pcvar_num(g_Switch) && get_user_flags(id) == ADMIN_LEVEL_F)
{
fm_give_item(id,"weapon_m3");
}
}
stock fm_give_item(index, const item[])
{
if (!equal(item, "weapon_", 7) && !equal(item, "ammo_", 5) && !equal(item, "item_", 5) && !equal(item, "tf_weapon_", 10))
return 0
new ent = engfunc(EngFunc_CreateNamedEntity,item)
if (!pev_valid(ent))
return 0
new Float:origin[3]
pev(index, pev_origin, origin)
set_pev(ent, pev_origin, origin)
set_pev(ent, pev_spawnflags, pev(ent, pev_spawnflags) | SF_NORESPAWN)
dllfunc(DLLFunc_Spawn, ent)
new save = pev(ent, pev_solid)
dllfunc(DLLFunc_Touch, ent, index)
if (pev(ent, pev_solid) != save)
return ent
engfunc(EngFunc_RemoveEntity, ent)
return -1
}