need help with vip plugin
Hey i have a vip plugin for public server. at a round start it shows 2 options
1.M4a1 + Deagle
2Ak + deagle
i tried modyfiing it that it would show 3 options ata round start
3. AWP + deagle
but it's not working
Quote:
mpd = register_cvar("amx_vip_mpd", "3")
mkb = register_cvar("amx_vip_mkb", "500")
mhb = register_cvar("amx_vip_mhb", "200")
health_add = register_cvar("amx_vip_hp", "15")
health_add_hs = register_cvar("amx_vip_hp_hs", "25")
health_max = register_cvar("amx_vip_hp_max", "100")
AWP_Active = register_cvar("amx_vip_awp_active", "0")
Menu_Active = register_cvar("amx_vip_menu_active", "1")
register_event("Damage", "on_damage", "b", "2!0", "3=0", "4!0")
register_event("Damage", "Damage", "b")
register_event("DeathMsg", "death_msg", "a")
register_event("DeathMsg", "hook_death", "a", "1>0")
register_event("CurWeapon", "Cur_Weapon", "be", "1=1")
register_logevent("logevent_Round_Start", 2, "1=Round_Start")
register_menucmd(register_menuid("rod"), Keysrod, "Pressedrod")
register_clcmd("awp", "HandleCmd")
register_clcmd("sg550", "HandleCmd")
register_clcmd("g3sg1", "HandleCmd")
register_clcmd("say /noriuvip", "ShowMotd")
register_clcmd("say", "handle_say")
new mapname[32]
get_mapname(mapname, 31)
if (equali(mapname, "cs_", 3) || equali(mapname, "de_", 3) || equali(mapname, "knas_", 3) || equali(mapname, "mini_", 3) || equali(mapname, "surf_", 3))
{
g_vipmenu = true
g_grenades = true
}
if (equali(mapname, "35hp_", 3) || equali(mapname, "aim_", 3) || equali(mapname, "awp_", 3) || equali(mapname, "he_", 3))
{
g_vipmenu = false
g_grenades = false
}
else if (equali(mapname, "aim_", 3) || equali(mapname, "fy_", 3))
{
g_vipmenu = true
g_grenades = false
}
MsgSayText = get_user_msgid("SayText")
maxplayers = get_maxplayers()
g_HudSync_Damage = CreateHudSyncObj()
#if defined DAMAGE_RECIEVED
g_HudSync_Damage2 = CreateHudSyncObj()
#endif
}
public on_damage(id)
{
new attacker = get_user_attacker(id)
#if defined DAMAGE_RECIEVED
if (is_user_connected(id) && is_user_connected(attacker))
if (get_user_flags(attacker) & ADMIN_LEVEL_H)
{
new damage = read_data(2)
set_hudmessage(255, 0, 0, 0.45, 0.50, 2, 0.1, 3.0, 0.1, 0.1, -1)
ShowSyncHudMsg(id, g_HudSync_Damage2, "%i^n", damage)
#else
if (is_user_connected(attacker) && if(get_user_flags(attacker) & ADMIN_LEVEL_H))
{
new damage = read_data(2)
#endif
set_hudmessage(0, 100, 200, -1.0, 0.55, 2, 0.1, 3.0, 0.02, 0.02, -1)
ShowSyncHudMsg(attacker, g_HudSync_Damage, "%i^n", damage)
}
}
public Damage(id)
{
new weapon, hitpoint, attacker = get_user_attacker(id, weapon, hitpoint)
if(attacker <= maxplayers && is_user_alive(attacker) && attacker != id)
if(get_user_flags(attacker) & ADMIN_LEVEL_H)
{
new money = read_data(2) * get_pcvar_num(mpd)
if (hitpoint == 1)
money += get_pcvar_num(mhb)
cs_set_user_money(attacker, cs_get_user_money(attacker) + money)
}
}
public death_msg()
{
if (read_data(1) <= maxplayers && read_data(1) && read_data(1) != read_data(2))
cs_set_user_money(read_data(1), cs_get_user_money(read_data(1)) + get_pcvar_num(mkb) - 300)
}
public hook_death()
{
nKiller = read_data(1)
if ((read_data(3) == 1) && (read_data(5) == 0))
{
nHp_add = get_pcvar_num(health_add_hs)
}
else
nHp_add = get_pcvar_num(health_add)
nHp_max = get_pcvar_num(health_max)
if(!(get_user_flags(nKiller) & ADMIN_LEVEL_H))
return
nKiller_hp = get_user_health(nKiller)
nKiller_hp += nHp_add
if(nKiller_hp > nHp_max)
nKiller_hp = nHp_max
set_user_health(nKiller, nKiller_hp)
message_begin(MSG_ONE, get_user_msgid("ScreenFade"), {0,0,0}, nKiller)
write_short(1<<10)
write_short(1<<10)
write_short(0x0000)
write_byte(0)
write_byte(0)
write_byte(200)
write_byte(75)
message_end()
}
public logevent_Round_Start()
{
round++
new players[32], player, pnum
get_players(players, pnum, "a")
for(new i = 0; i < pnum; i++)
{
player = players[i]
if(get_user_flags(player) & ADMIN_LEVEL_H)
{
give_item(player, "item_kevlar")
give_item(player, "item_assaultsuit")
if (g_grenades)
{
give_item(player, "weapon_flashbang")
give_item(player, "weapon_flashbang")
give_item(player, "weapon_hegrenade")
give_item(player, "weapon_smokegrenade")
}
give_item(player, "item_thighpack")
if(!get_pcvar_num(Menu_Active))
return PLUGIN_CONTINUE
if (g_vipmenu)
{
if (round > 3)
Showrod(player)
}
}
}
return PLUGIN_HANDLED
}
public Showrod(id)
{
if (g_vipmenu)
{
show_menu(id, Keysrod, "\rVIP Ginklai:\R\^n^n\r1. \wM4A1 & Deagle ^n\r2. \wAK47 & Deagle ^n\r3. \wAWP & Deagle^n^n\r0. \wExit ^n", -1, "rod")
}
return PLUGIN_CONTINUE
}
public Pressedrod(id, key)
{
switch(key)
{
case 0:
{
if (user_has_weapon(id, CSW_C4) && get_user_team(id) == 1)
HasC4[id] = true
else
HasC4[id] = false
if (user_has_weapon(id, CSW_FLASHBANG))
HasFLASHBANG[id] = true
else
HasFLASHBANG[id] = false
if (user_has_weapon(id, CSW_HEGRENADE))
HasHEGRENADE[id] = true
else
HasHEGRENADE[id] = false
if (user_has_weapon(id, CSW_SMOKEGRENADE))
HasSMOKEGRENADE[id] = true
else
HasSMOKEGRENADE[id] = false
strip_user_weapons(id)
give_item(id, "weapon_m4a1")
give_item(id, "ammo_556nato")
give_item(id, "ammo_556nato")
give_item(id, "ammo_556nato")
give_item(id, "weapon_deagle")
give_item(id, "ammo_50ae")
give_item(id, "ammo_50ae")
give_item(id, "ammo_50ae")
give_item(id, "ammo_50ae")
give_item(id, "ammo_50ae")
give_item(id, "weapon_knife")
if (HasC4[id])
{
give_item(id, "weapon_c4")
cs_set_user_plant(id)
}
if (HasFLASHBANG[id])
{
give_item(id, "weapon_flashbang")
give_item(id, "weapon_flashbang")
}
if (HasHEGRENADE[id])
{
give_item(id, "weapon_hegrenade")
}
if (HasSMOKEGRENADE[id])
{
give_item(id, "weapon_smokegrenade")
}
}
case 1:
{
if (user_has_weapon(id, CSW_C4) && get_user_team(id) == 1)
HasC4[id] = true
else
HasC4[id] = false
if (user_has_weapon(id, CSW_FLASHBANG))
HasFLASHBANG[id] = true
else
HasFLASHBANG[id] = false
if (user_has_weapon(id, CSW_HEGRENADE))
HasHEGRENADE[id] = true
else
HasHEGRENADE[id] = false
if (user_has_weapon(id, CSW_SMOKEGRENADE))
HasSMOKEGRENADE[id] = true
else
HasSMOKEGRENADE[id] = false
strip_user_weapons(id)
give_item(id, "weapon_ak47")
give_item(id, "ammo_762nato")
give_item(id, "ammo_762nato")
give_item(id, "ammo_762nato")
give_item(id, "weapon_deagle")
give_item(id, "ammo_50ae")
give_item(id, "ammo_50ae")
give_item(id, "ammo_50ae")
give_item(id, "ammo_50ae")
give_item(id, "ammo_50ae")
give_item(id, "weapon_knife")
if (HasC4[id])
{
give_item(id, "weapon_c4")
cs_set_user_plant(id)
}
if (HasFLASHBANG[id])
{
give_item(id, "weapon_flashbang")
give_item(id, "weapon_flashbang")
}
if (HasHEGRENADE[id])
{
give_item(id, "weapon_hegrenade")
}
if (HasSMOKEGRENADE[id])
{
give_item(id, "weapon_smokegrenade")
}
}
case 2:
{
if (user_has_weapon(id, CSW_C4) && get_user_team(id) == 1)
HasC4[id] = true
else
HasC4[id] = false
if (user_has_weapon(id, CSW_FLASHBANG))
HasFLASHBANG[id] = true
else
HasFLASHBANG[id] = false
if (user_has_weapon(id, CSW_HEGRENADE))
HasHEGRENADE[id] = true
else
HasHEGRENADE[id] = false
if (user_has_weapon(id, CSW_SMOKEGRENADE))
HasSMOKEGRENADE[id] = true
else
HasSMOKEGRENADE[id] = false
strip_user_weapons(id)
give_item(id, "weapon_awp")
give_item(id, "ammo_762nato")
give_item(id, "ammo_762nato")
give_item(id, "ammo_762nato")
give_item(id, "weapon_deagle")
give_item(id, "ammo_50ae")
give_item(id, "ammo_50ae")
give_item(id, "ammo_50ae")
give_item(id, "ammo_50ae")
give_item(id, "ammo_50ae")
give_item(id, "weapon_knife")
if (HasC4[id])
{
give_item(id, "weapon_c4")
cs_set_user_plant(id)
}
if (HasFLASHBANG[id])
{
give_item(id, "weapon_flashbang")
give_item(id, "weapon_flashbang")
}
if (HasHEGRENADE[id])
{
give_item(id, "weapon_hegrenade")
}
if (HasSMOKEGRENADE[id])
{
give_item(id, "weapon_smokegrenade")
}
}
case 9:
{
}
}
return PLUGIN_CONTINUE
}
public HandleCmd(id)
{
if (!get_pcvar_num(AWP_Active))
return PLUGIN_CONTINUE
if(get_user_flags(id) & ADMIN_LEVEL_H)
return PLUGIN_CONTINUE
client_print(id, print_center, "* Sniperiniai ginklai tik VIP'ams *")
return PLUGIN_HANDLED
}
public Cur_Weapon(id)
{
if (!get_pcvar_num(AWP_Active))
return PLUGIN_CONTINUE
new WeaponID = read_data(2)
new mapname[32]
get_mapname(mapname, 31)
if (equali(mapname, "awp_", 3))
return PLUGIN_CONTINUE
else
{
if (WeaponID == CSW_AWP || WeaponID == CSW_SG550 || WeaponID == CSW_G3SG1)
{
if (!(get_user_flags(id) & ADMIN_LEVEL_H))
{
client_print(id, print_center, "* Sniperiniai ginklai tik VIP'ams *")
client_cmd(id, "drop")
}
}
}
return PLUGIN_HANDLED
}
public ShowMotd(id)
{
show_motd(id, "vip.txt")
}
public handle_say(id)
{
new said[192]
read_args(said, 192)
if (contain(said, "/vip") != -1)
set_task(0.1, "print_adminlist", id)
return PLUGIN_CONTINUE
}
public print_adminlist(user)
{
new adminnames[33][32]
new message[256]
new contactinfo[256], contact[112]
new id, count, x, len
for(id = 1; id <= maxplayers; id++)
if(is_user_connected(id))
if(get_user_flags(id) & ADMIN_LEVEL_H)
get_user_name(id, adminnames[count++], 31)
len = format(message, 255, "%s [Direct.ax.lt] Prisijunge VIP'ai: ", COLOR)
if(count > 0)
{
for(x = 0; x < count; x++)
{
len += format(message[len], 255-len, "%s%s ", adminnames[x], x < (count - 1) ? ", " : "")
if(len > 96)
{
print_message(user, message)
len = format(message, 255, "%s ", COLOR)
}
}
print_message(user, message)
}
else
{
len += format(message[len], 255-len, "Nera prisijungusiu VIP'u.")
print_message(user, message)
}
get_cvar_string("amx_contactinfo", contact, 63)
if(contact[0])
{
format(contactinfo, 111, "%s Contact Server Admin -- %s", COLOR, contact)
print_message(user, contactinfo)
}
}
public client_authorized(id)
{
set_task(35.0, "PrintText", id)
}
public PrintText(id)
{
new message[256]
format(message, 255, "^x04[Direct.ax.lt VIP]^x01 Rasyk:^x03 /noriuvip^x01 kad pamatytum VIP informacija.")
print_message(id, message)
return PLUGIN_CONTINUE
}
print_message(id, msg[])
{
message_begin(MSG_ONE, MsgSayText, {0,0,0}, id)
write_byte(id)
write_string(msg)
message_end()
}
public client_connect(id)
{
new name[32]
get_user_info(id, "name", name, 31)
if(get_user_flags(id) & ADMIN_LEVEL_H) {
set_hudmessage(200, 0, 0, 0.05, 0.65, 2, 0.02, 30.0, 0.03, 0.3, 5)
show_hudmessage(0, "Special VIP %s prisijunge!",name)
}
}
|
any ideas?
|