Code: Select all
#include <amxmodx>#include <amxmisc>#include <hamsandwich>#include <cstrike>#include <fakemeta_util>#include <engine>#include <fakemeta>#include <fun> #define PRIMARY_WEAPONS_BITSUM ((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)) public round_end(){ static players[32], inum, i get_players(players, inum, "ah") for (i = 0; i < inum; ++i) if(cs_get_user_team(players[i]) == CS_TEAM_T) { if(cs_get_user_hasprim(players[i])) { wpn_drop(players[i], PRIMARY_WEAPONS_BITSUM) fm_strip_user_weapons(players[i]) give_item(players[i], "weapon_knife") } } disabled_weapons = true} stock wpn_drop(index, wpn) { new weapons[32], num, Weapon get_user_weapons(index, weapons, num) for (new i; i < num; i++) { Weapon = weapons[i] if (wpn & (1 << Weapon)) { static wname[32] get_weaponname(Weapon, wname, sizeof(wname) - 1) ham_strip_weapon(index, wname) } } return} stock ham_strip_weapon(id,weapon[]) { if(!equal(weapon,"weapon_",7)) return 0 new wId = get_weaponid(weapon) if(!wId) return 0 new wEnt while((wEnt = engfunc(EngFunc_FindEntityByString, wEnt, "classname", weapon)) && pev(wEnt, pev_owner) != id) {} if(!wEnt) return 0 if(get_user_weapon(id) == wId) ExecuteHamB(Ham_Weapon_RetireWeapon, wEnt) if(!ExecuteHamB(Ham_RemovePlayerItem, id, wEnt)) return 0 ExecuteHamB(Ham_Item_Kill, wEnt) set_pev(id, pev_weapons, pev(id, pev_weapons) & ~(1 << wId)) return 1}
