Code: Select all
#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <fakemeta_util>
#include <cstrike>
#define PLUGIN "dropweapons"
#define VERSION "1.0"
#define AUTHOR "lexzor"
#if AMXX_VERSION_NUM < 183
#define MAX_NAME_LENGTH 33
#endif
#define ACCES ADMIN_LEVEL_H
const PRIMARY_WEAPONS_BIT_SUM = (1<<CSW_SCOUT)|(1<<CSW_XM1014)|(1<<CSW_MAC10)|(1<<CSW_AUG)|(1<<CSW_UMP45)|(1<<CSW_SG550)|(1<<CSW_GALIL)|(1<<CSW_FAMAS)|(1<<CSW_AWP)|(1<<CSW_MP5NAVY)|(1<<CSW_M249)|(1<<CSW_M3)|(1<<CSW_M4A1)|(1<<CSW_TMP)|(1<<CSW_G3SG1)|(1<<CSW_SG552)|(1<<CSW_AK47)|(1<<CSW_P90);
const SECONDARY_WEAPONS_BIT_SUM = (1<<CSW_P228)|(1<<CSW_ELITE)|(1<<CSW_FIVESEVEN)|(1<<CSW_USP)|(1<<CSW_GLOCK18)|(1<<CSW_DEAGLE);
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("amx_drop", "dropweap")
}
public dropweap(id)
{
if(!(get_user_flags(id) & ACCES))
{
client_print(id, print_chat, "Trebuie sa fii admin pentru a folosi aceasta comanda!")
return PLUGIN_HANDLED
}
new arg[MAX_NAME_LENGTH], name[MAX_NAME_LENGTH]
read_argv(1, arg, charsmax(arg))
static player; player = cmd_target(id, arg, CMDTARGET_NO_BOTS)
if((player && cs_get_user_team(player) == CS_TEAM_CT) && is_user_alive(player))
{
drop_weapons (player, 1)
drop_weapons (player, 2)
get_user_name(player, name, charsmax(name))
client_print(id, print_chat, "Ai aruncat armele jucatorului %s", name)
}
else if (player && (cs_get_user_team(player) != CS_TEAM_CT) && is_user_alive(player))
client_print(id, print_chat, "Jucatorul nu este la echipa Counter-Terrorists!")
else if (player && !is_user_alive(player))
client_print(id, print_chat, "Jucatorul trebuie sa fie in viata!")
else if (!player)
client_print(id, print_chat, "Jucatorul nu exista!")
return 0
}
stock drop_weapons(id, dropwhat)
{
static Weapons[32], Num, i, WeaponID;
Num = 0;
get_user_weapons(id, Weapons, Num);
for(i = 0; i < Num; i ++)
{
WeaponID = Weapons[i];
if((dropwhat == 1 && ((1 << WeaponID) & PRIMARY_WEAPONS_BIT_SUM)) || (dropwhat == 2 && ((1 << WeaponID) & SECONDARY_WEAPONS_BIT_SUM )))
{
static DropName[32], WeaponEntity;
get_weaponname(WeaponID, DropName, charsmax(DropName));
WeaponEntity = fm_find_ent_by_owner(-1, DropName, id);
set_pev(WeaponEntity, pev_iuser1, cs_get_user_bpammo (id, WeaponID));
engclient_cmd(id, "drop", DropName);
cs_set_user_bpammo(id, WeaponID, 0);
}
}
}