Код
#include <amxmodx>
#include <cstrike>
#include <fun>
#include <colorchat>
#define GIVE_ROUND 1 // После какого раунда выдаем AWP
new g_RoundCount;
new iPlayers[32], iPlayerName[32], iPlayersNum;
#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 plugin_init(){
register_plugin("AWP Random", "1.1", "DirtyMatt");
register_event("HLTV", "fRoundStart", "a", "1=0", "2=0")
}
public fRoundStart(){
g_RoundCount++;
if(g_RoundCount > GIVE_ROUND)
fGiveAwp();
}
public fGiveAwp() {
get_players(iPlayers, iPlayersNum, "ah");
if(!iPlayersNum)
return;
new iPlayer = iPlayers[random_num(0,iPlayersNum - 1)];
takemenu(iPlayer)
}
public takemenu(iPlayer)
{
new Menu = menu_create("\rВозьмете подарок?:", "menu_handler")
menu_additem(Menu, "\wДа", "1", 0)
menu_additem(Menu, "\wНет", "2", 0)
menu_setprop(Menu, MPROP_EXIT, MEXIT_ALL)
menu_setprop(Menu, MPROP_EXITNAME, "Выход")
menu_display(iPlayer, Menu, 0)
}
public menu_handler(iPlayer, menu, item)
{
if (item == MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}
new s_Data[6], s_Name[64], i_Access, i_Callback
menu_item_getinfo(menu, item, i_Access, s_Data, charsmax(s_Data), s_Name, charsmax(s_Name), i_Callback)
new i_Key = str_to_num(s_Data)
switch(i_Key)
{
case 1:
{
drop_primary( iPlayer );
give_item(iPlayer, "weapon_awp");
cs_set_user_bpammo(iPlayer, CSW_AWP, 30);
get_user_name(iPlayer, iPlayerName, charsmax(iPlayerName));
client_print_color(iPlayers[iPlayersNum], DontChange, "^1Игрок ^3%s ^1взял AWP.", iPlayerName);
menu_destroy(menu)
return PLUGIN_HANDLED
}
case 2:
{
menu_destroy(menu)
return PLUGIN_HANDLED
}
}
menu_destroy(menu)
return PLUGIN_HANDLED
}
stock drop_primary( id )
{
new weapons[ 32 ], num;
get_user_weapons( id, weapons, num );
for( new i = 0; i < num; i++ )
{
if( PRIMARY_WEAPONS_BITSUM & (1<<weapons[ i ]) )
{
static wname[ 32 ];
get_weaponname( weapons[ i ], wname, sizeof wname - 1 );
engclient_cmd( id, "drop", wname );
}
}
}