Raised This Month: $ Target: $400
 0% 

Solved Case Option depend on Cvar !!!


  
 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
counterstrike1.6
Member
Join Date: Oct 2020
Old 08-27-2022 , 16:07   Re: Case Option depend on Cvar !!!
Reply With Quote #14

Quote:
Originally Posted by jimaway View Post
i tidied your code up a little. try this

Code:
/* Plugin generated by AMXX-Studio */ #include <amxmodx> #include <amxmisc> #include <fun> #include <cstrike> #define PLUGIN "Gun Menu" #define VERSION "1.0" #define AUTHOR "begin" #define TASK_ID 1337 new g_round,g_c4 new g_pMenuCancel,g_menu_active,g_menuAvailableRound,g_awp_active,g_ak47_active,g_m4a1_active; new g_CvarHe,g_CvarFlash,g_CvarSmoke new g_menu #define PREFIX_CHAT "^4[AMXX]" public plugin_init() {     register_plugin(PLUGIN, VERSION, AUTHOR);     g_menu_active = register_cvar("menu_active", "1")     g_CvarHe       = register_cvar( "amx_cvar_vip_he_cancel", "1" );     g_CvarFlash   = register_cvar( "amx_cvar_vip_flash_cancel", "1" );     g_CvarSmoke   = register_cvar( "amx_cvar_vip_smoke_cancel", "0" );     g_m4a1_active  = register_cvar("amx_m4a1_menu_cancel", "0")     g_ak47_active  = register_cvar("amx_ak47_menu_cancel", "1");     g_awp_active  = register_cvar("amx_awp_menu_cancel", "1");     g_pMenuCancel = register_cvar("amx_vip_menu_cancel", "15");     g_menuAvailableRound = register_cvar("amx_vip_available_round", "3")         register_logevent("logevent_round_start", 2, "1=Round_Start");     register_event("TextMsg", "Event_Round_Restart", "a", "2=#Game_Commencing", "2=#Game_will_restart_in");         g_menu = menu_create("Free VIP Guns", "OpenMenu_sub");  //this menu is not dynamic, might as well make it global to avoid possible memory leaks     new menucallback = menu_makecallback("menu_callback");     menu_additem(g_menu, "Get M4A1+Deagle","0",_,menucallback);     menu_additem(g_menu, "Get AK47+Deagle","1",_,menucallback);     menu_additem(g_menu, "Get AWP+Deagle","2",_,menucallback);     menu_setprop(g_menu, MPROP_EXIT, MEXIT_ALL); } public Event_Round_Restart() {     g_round = 0; } public logevent_round_start() {     g_round++;         //cache all cvars so we don't get the value multiple times in the for loop     new availableRound = get_pcvar_num(g_menuAvailableRound);     new i_cvarhe = get_pcvar_num(g_CvarHe);     new i_cvarflash = get_pcvar_num(g_CvarFlash);     new i_cvarsmoke = get_pcvar_num(g_CvarSmoke);     new i_cvaractive = get_pcvar_num(g_menu_active);     new iSec = get_pcvar_num(g_pMenuCancel);         new players[32], pnum;     get_players(players, pnum, "ac");     for(new i = 0, iplayer; i < pnum; i++)     {         iplayer = players[i]         if (!is_user_alive(iplayer)) continue;                 if (i_cvarhe)         {             give_item(iplayer, "weapon_hegrenade");             }         if (i_cvarflash))         {             give_item(iplayer, "weapon_flashbang");             give_item(iplayer, "weapon_flashbang");         }         if (i_cvarsmoke)         {             give_item(iplayer, "weapon_smokegrenade")         }         give_item(iplayer, "item_assaultsuit");         give_item(iplayer, "item_thighpack");                 if (g_round <= availableRound)         {             client_print_color(iplayer, print_team_default, "%s^3 Menu will be available in^4 %i^3 Round",PREFIX_CHAT,(availableRound+1)-g_round);         }         else         {             if (i_cvaractive && g_round >= availableRound)             {                 menu_display(id, g_menu, 0, iSec);                 client_print_color(id, print_team_default, "%s^3 Please Choose Your^4 VIP Gun^3, Menu Will Closed in^4 %i^3 Seconds",PREFIX_CHAT, iSec);                 if (!task_exists(TASK_ID))                     set_task(float(iSec), "Destroy_Menu", TASK_ID)             }             else             {                 client_print_color(iplayer, print_team_default, "%s^3 Menu Not Actived^1 [^4Contact Admins^1]",PREFIX_CHAT);             }         }         }         return PLUGIN_HANDLED; } public Destroy_Menu () {     new players[32], pnum;     get_players(players, pnum, "ch");     for(new i = 0; i < pnum; i++)     {         show_menu(players[i], 0, "^n", 1);     } } public menu_callback(id, Menu, item) {     new iData[6];     new iAccess;     new iCallback;     new iName[64];         menu_item_getinfo(menu, item, iAccess, iData, 5, iName, 63, iCallback)         switch(str_to_num(iData))     {         case 0:         {             return get_pcvar_num( g_m4a1_active ) ? ITEM_ENABLED : ITEM_DISABLED;         }         case 1:         {             return get_pcvar_num( g_ak47_active ) ? ITEM_ENABLED : ITEM_DISABLED;         }         case 2:         {             return get_pcvar_num( g_awp_active ) ? ITEM_ENABLED : ITEM_DISABLED;         }     }     return ITEM_ENABLED; } public OpenMenu_sub(id, menu, item) {     if(item == MENU_EXIT || !is_user_alive(id) || item == MENU_TIMEOUT)     {         return PLUGIN_HANDLED;     }     new iData[6];     new iAccess;     new iCallback;     new iName[64];         menu_item_getinfo(menu, item, iAccess, iData, 5, iName, 63, iCallback)         switch(str_to_num(iData))     {         case 0:         {             give_items(id)             give_item(id, "weapon_m4a1");             cs_set_user_bpammo(id, CSW_M4A1, 90);             client_print_color(id,print_team_default,"%s^3 You Got Free^4 M4A1^3 and^4 Deagle",PREFIX_CHAT);         }         case 1:         {             give_items(id)             give_item(id, "weapon_ak47");             cs_set_user_bpammo(id, CSW_AK47, 90);             client_print_color(id,print_team_default,"%s^3 You Got Free^4 AK47^3 and^4 Deagle",PREFIX_CHAT);         }         case 2:         {             give_items(id)             give_item(id, "weapon_awp");             cs_set_user_bpammo(id, CSW_AWP, 30);             client_print_color(id,print_team_default,"%s^3 You Got Free^4 AWP^3 and^4 Deagle",PREFIX_CHAT);         }     }     return PLUGIN_HANDLED; } public give_items(id) {     strip_user_weapons(id);     give_item(id, "weapon_knife");     give_item(id, "item_assaultsuit");     if (get_pcvar_num(g_CvarHe))     {         give_item(id, "weapon_hegrenade");         }     if (get_pcvar_num(g_CvarFlash))     {         give_item(id, "weapon_flashbang");         give_item(id, "weapon_flashbang");     }     if (get_pcvar_num(g_CvarSmoke))     {         give_item(id, "weapon_smokegrenade");     }     give_item(id, "weapon_deagle");     cs_set_user_bpammo(id, CSW_DEAGLE, 35);         if(user_has_weapon(id, CSW_C4))         g_c4 = true;     if(cs_get_user_team(id) == CS_TEAM_CT)     {         give_item(id, "item_thighpack");     }     else if(cs_get_user_team(id) == CS_TEAM_T)     {         if(g_c4)         {             give_item(id, "weapon_c4");             cs_set_user_plant(id, 1, 1);         }     } }
Thank You !!! [jimaway]
Code Works !!!

Code is giving some basic errors like mismatch tag i correct that and some missing parentheses i also correct that !!!

Finally Code !!!

PHP Code:
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <cstrike>

#define PLUGIN "Gun Menu"
#define VERSION "1.0"
#define AUTHOR "begin"
#define TASK_ID 1337

new g_round,g_c4
new g_pMenuCancel,g_menu_active,g_menuAvailableRound,g_awp_active,g_ak47_active,g_m4a1_active;
new 
g_CvarHe,g_CvarFlash,g_CvarSmoke
new g_menu
#define PREFIX_CHAT "^4[AMXX]"
public plugin_init() {
    
register_plugin(PLUGINVERSIONAUTHOR);
    
g_menu_active register_cvar("menu_active""1")
    
g_CvarHe       register_cvar"amx_cvar_vip_he_cancel""1" );
    
g_CvarFlash   register_cvar"amx_cvar_vip_flash_cancel""1" );
    
g_CvarSmoke   register_cvar"amx_cvar_vip_smoke_cancel""0" );
    
g_m4a1_active  register_cvar("amx_m4a1_menu_cancel""0")
    
g_ak47_active  register_cvar("amx_ak47_menu_cancel""1");
    
g_awp_active  register_cvar("amx_awp_menu_cancel""1");
    
g_pMenuCancel register_cvar("amx_vip_menu_cancel""15");
    
g_menuAvailableRound register_cvar("amx_vip_available_round""3")
    
    
register_logevent("logevent_round_start"2"1=Round_Start");
    
register_event("TextMsg""Event_Round_Restart""a""2=#Game_Commencing""2=#Game_will_restart_in");
    
    
g_menu menu_create("Free VIP Guns""OpenMenu_sub");  //this menu is not dynamic, might as well make it global to avoid possible memory leaks
    
new menucallback menu_makecallback("menu_callback");
    
menu_additem(g_menu"Get M4A1+Deagle","0",_,menucallback);
    
menu_additem(g_menu"Get AK47+Deagle","1",_,menucallback);
    
menu_additem(g_menu"Get AWP+Deagle","2",_,menucallback);
    
menu_setprop(g_menuMPROP_EXITMEXIT_ALL);
}
public 
Event_Round_Restart()
{
    
g_round 0;
}
public 
logevent_round_start()
{
    
g_round++;
    
    
//cache all cvars so we don't get the value multiple times in the for loop
    
new availableRound get_pcvar_num(g_menuAvailableRound);
    new 
i_cvarhe get_pcvar_num(g_CvarHe);
    new 
i_cvarflash get_pcvar_num(g_CvarFlash);
    new 
i_cvarsmoke get_pcvar_num(g_CvarSmoke);
    new 
i_cvaractive get_pcvar_num(g_menu_active);
    new 
iSec get_pcvar_num(g_pMenuCancel);
    
    new 
players[32], pnum;
    
get_players(playerspnum"ac");
    for(new 
0iplayerpnumi++)
    {
        
iplayer players[i]
        if (!
is_user_alive(iplayer)) continue;
        
        if (
i_cvarhe)
        {
            
give_item(iplayer"weapon_hegrenade");    
        }
        if (
i_cvarflash)
        {
            
give_item(iplayer"weapon_flashbang");
            
give_item(iplayer"weapon_flashbang");
        }
        if (
i_cvarsmoke)
        {
            
give_item(iplayer"weapon_smokegrenade")
        }
        
give_item(iplayer"item_assaultsuit");
        
give_item(iplayer"item_thighpack");
        
        if (
g_round <= availableRound)
        {
            
client_print_color(iplayerprint_team_default"%s^3 Menu will be available in^4 %i^3 Round",PREFIX_CHAT,(availableRound+1)-g_round);
        }
        else 
        {
            if (
i_cvaractive && g_round >= availableRound)
            {
                
menu_display(iplayerg_menu0iSec)
                
client_print_color(iplayerprint_team_default"%s^3 Please Choose Your^4 VIP Gun^3, Menu Will Closed in^4 %i^3 Seconds",PREFIX_CHATiSec);
                if (!
task_exists(TASK_ID))
                    
set_task(float(iSec), "Destroy_Menu"TASK_ID)
            }
            else
            {
                
client_print_color(iplayerprint_team_default"%s^3 Menu Not Actived^1 [^4Contact Admins^1]",PREFIX_CHAT);
            }
        }    
    }
    
    return 
PLUGIN_HANDLED;


public 
Destroy_Menu ()
{
    new 
players[32], pnum;
    
get_players(playerspnum"ch");
    for(new 
0pnumi++)
    {
        
show_menu(players[i], 0"^n"1);
    }
}
public 
menu_callback(idMenuitem)
{
    new 
iData[6];
    new 
iAccess;
    new 
iCallback;
    new 
iName[64];
    
    
menu_item_getinfo(MenuitemiAccessiData5iName63iCallback)
    
    switch(
str_to_num(iData))
    {
        case 
0:
        {
            return 
get_pcvar_numg_m4a1_active ) ? ITEM_ENABLED ITEM_DISABLED;
        }
        case 
1:
        {
            return 
get_pcvar_numg_ak47_active ) ? ITEM_ENABLED ITEM_DISABLED;
        }
        case 
2:
        {
            return 
get_pcvar_numg_awp_active ) ? ITEM_ENABLED ITEM_DISABLED;
        }
    }
    return 
ITEM_ENABLED;
}



public 
OpenMenu_sub(idmenuitem)
{
    if(
item == MENU_EXIT || !is_user_alive(id) || item == MENU_TIMEOUT)
    {
        return 
PLUGIN_HANDLED;
    }
    new 
iData[6];
    new 
iAccess;
    new 
iCallback;
    new 
iName[64];
    
    
menu_item_getinfo(menuitemiAccessiData5iName63iCallback)
    
    switch(
str_to_num(iData))
    {
        case 
0:
        {
            
give_items(id)
            
give_item(id"weapon_m4a1");
            
cs_set_user_bpammo(idCSW_M4A190);
            
client_print_color(id,print_team_default,"%s^3 You Got Free^4 M4A1^3 and^4 Deagle",PREFIX_CHAT);
        }
        case 
1:
        {
            
give_items(id)
            
give_item(id"weapon_ak47");
            
cs_set_user_bpammo(idCSW_AK4790);
            
client_print_color(id,print_team_default,"%s^3 You Got Free^4 AK47^3 and^4 Deagle",PREFIX_CHAT);
        }
        case 
2:
        {
            
give_items(id)
            
give_item(id"weapon_awp");
            
cs_set_user_bpammo(idCSW_AWP30);
            
client_print_color(id,print_team_default,"%s^3 You Got Free^4 AWP^3 and^4 Deagle",PREFIX_CHAT);
        }
    }
    return 
PLUGIN_HANDLED;
}

public 
give_items(id)
{
    
strip_user_weapons(id);
    
give_item(id"weapon_knife");
    
give_item(id"item_assaultsuit");
    if (
get_pcvar_num(g_CvarHe))
    {
        
give_item(id"weapon_hegrenade");    
    }
    if (
get_pcvar_num(g_CvarFlash))
    {
        
give_item(id"weapon_flashbang");
        
give_item(id"weapon_flashbang");
    }
    if (
get_pcvar_num(g_CvarSmoke))
    {
        
give_item(id"weapon_smokegrenade");
    }
    
give_item(id"weapon_deagle");
    
cs_set_user_bpammo(idCSW_DEAGLE35);
    
    if(
user_has_weapon(idCSW_C4))
        
g_c4 true;
    if(
cs_get_user_team(id) == CS_TEAM_CT)
    {
        
give_item(id"item_thighpack");
    }
    else if(
cs_get_user_team(id) == CS_TEAM_T)
    {
        if(
g_c4)
        {
            
give_item(id"weapon_c4");
            
cs_set_user_plant(id11);
        }
    }

Topic Closed !!! [Issue Solved]
Attached Thumbnails
Click image for larger version

Name:	4.jpg
Views:	25
Size:	25.2 KB
ID:	196523  

Last edited by counterstrike1.6; 08-27-2022 at 16:37.
counterstrike1.6 is offline
 


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 00:20.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode