Hey guys the printlist of vips work great but when i write /vipmenu I don't see any menu
help me code here and when i write /vips the printlist print double messages sorry for my bad english
PHP Code:
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fun>
#include <colorchat>
#include <fakemeta>
#include <hamsandwich>
#define FLAG_VIP ADMIN_LEVEL_G
new bool:Round[33]
static const COLOR[] = "^x04" //green
static const CONTACT[] = ""
new he_cost;
new smoke_cost;
new flash_cost;
new gGravityCvar;
new gGravityCost;
new gSpeedCost;
new gSpeedCvar;
new gInvisCost;
new gInvisPercent;
new maxplayers
new gmsgSayText
public plugin_init() {
register_plugin("Deathrun Vip Menu Based on Ultimate_VIP", "1.3", "Larisaios")
register_clcmd("say /vipmenu", "VIPMenu")
register_clcmd("say /vips", "print_viplist");
register_logevent("Event_RoundStart", 2, "1=Round_Start")
he_cost = register_cvar("vip_hecost", "1000");
smoke_cost = register_cvar("vip_smokecost", "350");
flash_cost = register_cvar("vip_flashcost", "350");
gGravityCvar = register_cvar("deathrun_gravity_power", "0.7");
gGravityCost = register_cvar("vip_gravcost", "1500");
gInvisPercent = register_cvar( "deathrun_invisibility_percentage", "150" );
gSpeedCvar = register_cvar( "vip_speed_power", "400.0" );
gSpeedCost = register_cvar( "vip_speedcost", "2300" );
gInvisCost = register_cvar( "vip_invisibiltycost", "3000" );
maxplayers = get_maxplayers()
gmsgSayText = get_user_msgid("SayText")
register_clcmd("say", "handle_say")
register_cvar("amx_contactinfo", CONTACT, FCVAR_SERVER)
register_event("ResetHUD", "resetModel", "b")
return PLUGIN_CONTINUE
}
public plugin_precache()
{
{
precache_model("models/player/smith/smith.mdl")
}
return PLUGIN_CONTINUE;
}
public resetModel(id, level, cid) {
if (get_user_flags(id) & FLAG_VIP) {
new CsTeams:userTeam = cs_get_user_team(id)
if (userTeam == CS_TEAM_T) {
cs_set_user_model(id, "smith")
}
else if(userTeam == CS_TEAM_CT) {
cs_set_user_model(id, "smith")
}
else {
cs_reset_user_model(id)
}
}
return PLUGIN_CONTINUE
}
public handle_say(id) {
new said[192]
read_args(said,192)
if( ( containi(said, "who") != -1 && containi(said, "vip") != -1 ) || contain(said, "/vips") != -1 )
set_task(0.1,"print_viplist",id)
return PLUGIN_CONTINUE
}
public print_viplist(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) & FLAG_VIP)
get_user_name(id, adminnames[count++], 31)
len = format(message, 255, "%s Vips Online: ",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, "No vips online.")
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)
}
}
print_message(id, msg[]) {
message_begin(MSG_ONE, gmsgSayText, {0,0,0}, id)
write_byte(id)
write_string(msg)
message_end()
}
public Event_RoundStart()
{
new iPlayers[32], iNum
get_players(iPlayers, iNum)
for(new i; i < iNum; i++)
{
Round[iPlayers[i]] = false
}
}
public VIPMenu(id)
{
new buy_he[60];
new buy_smoke[60];
new buy_flash[60];
formatex(buy_he, sizeof(buy_he) - 1, "Buy a HE Grenade [\w%i Dollar]", get_pcvar_num(he_cost));
formatex(buy_smoke, sizeof(buy_smoke) - 1, "Buy a Smoke Grenade [\w%i Dollar]", get_pcvar_num(smoke_cost));
formatex(buy_flash, sizeof(buy_flash) - 1, "Buy a Flash Grenade [\w%i Dollar]", get_pcvar_num(flash_cost));
new MainJBMenu = menu_create("Deathrun Vip Shop", "MainJBMenu_Handle");
menu_additem(MainJBMenu, buy_he, "1", 0);
menu_additem(MainJBMenu, buy_smoke, "2", 0);
menu_additem(MainJBMenu, buy_flash, "3", 0);
menu_addblank(MainJBMenu, 0);
menu_additem(MainJBMenu, "Items Menu" , "4", 0);
menu_setprop(MainJBMenu, MPROP_EXIT, MEXIT_ALL);
if ( get_user_flags(id) & FLAG_VIP && cs_get_user_team(id) == CS_TEAM_T )
{
menu_display(id, MainJBMenu, 0);
}
}
public MainJBMenu_Handle(id, menu, item)
{
if (item == MENU_EXIT)
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
new data[6], iName[64];
new access, callback;
menu_item_getinfo(menu, item, access, data,5, iName, 63, callback);
new key = str_to_num(data);
switch(key)
{
case 1:
{
if ( cs_get_user_money(id) < get_pcvar_num(he_cost) )
{
ColorChat(id, GREEN, "[Gaming-Power.Net]You don't have enough money to buy this item!");
return PLUGIN_HANDLED;
}
else
{
cs_set_user_money(id, cs_get_user_money(id) - get_pcvar_num(he_cost));
cs_set_weapon_ammo( give_item(id, "weapon_hegrenade"), 1);
ColorChat(id, GREEN, "[Gaming-Power.Net] Here's your HE Grenade!");
}
}
case 2:
{
if ( cs_get_user_money(id) < get_pcvar_num(smoke_cost) )
{
ColorChat(id, GREEN, "[Gaming-Power.Net]You don't have enough money to buy this item!");
return PLUGIN_HANDLED;
}
else
{
cs_set_user_money(id, cs_get_user_money(id) - get_pcvar_num(smoke_cost));
cs_set_weapon_ammo( give_item(id, "weapon_smokegrenade"), 1);
ColorChat(id, GREEN, "[Gaming-Power.Net] Here's your Smoke Grenade!");
}
}
case 3:
{
if ( cs_get_user_money(id) < get_pcvar_num(flash_cost) )
{
ColorChat(id, GREEN, "[Gaming-Power.Net] You don't have enough money to buy this item!");
return PLUGIN_HANDLED;
}
else
{
cs_set_user_money(id, cs_get_user_money(id) - get_pcvar_num(flash_cost));
cs_set_weapon_ammo( give_item(id, "weapon_flashbang"), 1);
ColorChat(id, GREEN, "[Gaming-Power.Net] Here's your Flash Grenade!");
}
}
case 4:
{
dr_ItemsMenu(id);
}
}
return PLUGIN_CONTINUE;
}
public dr_ItemsMenu(id)
{
new buy_grav[60];
new buy_speed[60];
new buy_invis[60];
formatex(buy_grav, sizeof(buy_grav) - 1, "Buy More Gravity [\w%i Dollar]", get_pcvar_num(gGravityCost));
formatex(buy_speed, sizeof(buy_speed) - 1, "Buy Less Speed(run faster) [\w%i Dollar]", get_pcvar_num(gSpeedCost));
formatex(buy_invis, sizeof(buy_invis) - 1, "Buy Low Invisbility [\w%i Dollar]", get_pcvar_num(gInvisCost));
new DrItemsMenu = menu_create("Deathrun Items Vip Shop", "DrItemsMenu_Handle");
menu_additem(DrItemsMenu, buy_grav, "1", 0);
menu_additem(DrItemsMenu, buy_speed, "2", 0);
menu_additem(DrItemsMenu, buy_invis, "3", 0);
menu_setprop(DrItemsMenu, MPROP_EXIT, MEXIT_ALL);
if ( get_user_flags(id) & FLAG_VIP )
{
menu_display(id, DrItemsMenu, 0);
}
}
public DrItemsMenu_Handle(id, menu, item)
{
if (item == MENU_EXIT)
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
new data[6], iName[64];
new access, callback;
new looser[32]
get_user_name( id, looser, 31 )
menu_item_getinfo(menu, item, access, data,5, iName, 63, callback);
new key = str_to_num(data);
switch(key)
{
case 1:
{
if ( cs_get_user_money(id) < get_pcvar_num(gGravityCost) )
{
ColorChat(id, GREEN, "[Gaming-Power.Net]You don't have enough money to buy this item!");
return PLUGIN_HANDLED;
}
else
{
cs_set_user_money(id, cs_get_user_money(id) - get_pcvar_num(gGravityCost));
set_user_gravity( id, get_pcvar_float( gGravityCvar ) );
ColorChat(id, GREEN, "[Gaming-Power.Net] You Bought Low Gravity nC!");
}
}
case 2:
{
if ( cs_get_user_money(id) < get_pcvar_num(gSpeedCost) )
{
ColorChat(id, GREEN, "[Gaming-Power.Net]You don't have enough money to buy this item!");
return PLUGIN_HANDLED;
}
else
{
cs_set_user_money(id, cs_get_user_money(id) - get_pcvar_num(gGravityCost));
set_user_maxspeed( id, get_pcvar_float( gSpeedCvar ) );
ColorChat(id, GREEN, "[Gaming-Power.Net] You Bought More Speed.Now Run Faster nC!");
}
}
case 3:
{
if ( cs_get_user_money(id) < get_pcvar_num(gInvisCost) )
{
ColorChat(id, GREEN, "[Gaming-Power.Net]You don't have enough money to buy this item!");
return PLUGIN_HANDLED;
}
else
{
cs_set_user_money(id, cs_get_user_money(id) - get_pcvar_num(gInvisCost));
set_user_rendering( id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, get_pcvar_num( gInvisPercent ) );
ColorChat(id, GREEN, "[Gaming-Power.Net] You Bought Low Invicibilty nC!");
}
}
}
return PLUGIN_CONTINUE;
}