AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Scripting Help (https://forums.alliedmods.net/forumdisplay.php?f=11)
-   -   shop menu (https://forums.alliedmods.net/showthread.php?t=105084)

DoviuX 10-01-2009 00:19

shop menu
 
how can i make that you can by ugrades for money ?

PHP Code:

#include <amxmodx> 
#include <gunxpmod> 
#define PLUGIN    "Gun Xp Mod Shop" 
#define AUTHOR    "xbatista" 
#define VERSION    "1.3" 
#define MAX_UNLOCKS 25 
#define MAX_UNLOCKS_NAME_SIZE 64 
#define MAX_UNLOCKS_DESC_SIZE 128 
new g_numberofitems 
new g_menuPosition[33
new 
bool:g_PlayerItem[33][MAX_UNLOCKS+1
new 
g_itemindex[MAX_UNLOCKS+1
new 
g_itemcost[MAX_UNLOCKS+1
new 
g_itemname[MAX_UNLOCKS+1][MAX_UNLOCKS_NAME_SIZE+1
new 
g_itemdesc[MAX_UNLOCKS+1][MAX_UNLOCKS_DESC_SIZE+1

public 
plugin_init() 

    
register_plugin(PLUGINVERSIONAUTHOR); 
    
register_dictionary("gunxpmod.txt"); 
     
    
register_clcmd("say /unlocks""item_upgrades"
    
register_clcmd("say unlocks""item_upgrades"
    
register_clcmd("say /ul""item_upgrades"
    
register_clcmd("say ul""item_upgrades"
    
register_clcmd("say /items""display_items"
    
register_clcmd("say items""display_items"
    
register_menucmd(register_menuid("Unlocks Shop"), 1023"action_item_upgrades"

public 
client_connect(id

    for(new 
1<= MAX_UNLOCKS; ++i)  
    { 
        
g_PlayerItem[id][i] = false 
    


public 
display_items(id

    new 
szMotd[2048], szTitle[64], iPos 
    format
(szTitle63"Items List"
    
iPos += format(szMotd[iPos], 2047-iPos"<html><head><style type=^"text/css^">pre{color:#FFB000;}body{background:#000000;margin-left:8px;margin-top:0px;}</style></head><pre><body>"
    
iPos += format(szMotd[iPos], 2047-iPos"^n^n<b>%s</b>^n^n"szTitle
    
iPos += format(szMotd[iPos], 2047-iPos"# Item Name | Item Description | Item Cost^n"
     
    for(new 
1<= g_numberofitemsi++)  
    { 
        
iPos += format(szMotd[iPos], 2047-iPos"%d. %s | %s | %d^n"ig_itemname[i], g_itemdesc[i], g_itemcost[i]) 
    } 
    
show_motd(idszMotdszTitle
    return 
PLUGIN_HANDLED

public 
item_upgrades(id

    
display_item_upgrades(idg_menuPosition[id] = 0); 
    return 
PLUGIN_HANDLED

public 
display_item_upgrades(idpos
{     
    if(!
is_user_alive(id))  
        return; 
    static 
menuBody[510], len
    
len 
    
if(pos 0)  
    { 
        return; 
    } 
     
    new 
start pos 
    
if(start >= g_numberofitems)  
    { 
        
start pos g_menuPosition[id
    } 
    
len += formatex(menuBody[len], sizeof menuBody len"%L"LANG_SERVER"TITLE_MENU_SHOP"get_user_xp(id), get_user_max_level(id)) 
     
    new 
end start 
    
new keys MENU_KEY_0 
    
if(end g_numberofitems)  
    { 
        
end g_numberofitems 
    

     
    new 

    
for(new startend; ++a)  
    { 
        new 

        
new money 
        money 
get_user_xp(id
        if( 
money g_itemcost[i] )  
        { 
            if( 
g_PlayerItem[id][i] )  
            { 
                
len += formatex(menuBody[len], sizeof menuBody len,"%L"id"INACTIVE_MENU_SHOP_BOUGHT", ++bg_itemname[i], g_itemcost[i]) 
            } 
            else 
            { 
                
len += formatex(menuBody[len], sizeof menuBody len,"%L"id"INACTIVE_MENU_SHOP", ++bg_itemname[i], g_itemcost[i]) 
            } 
        }  
        else if( 
g_PlayerItem[id][i] )  
        { 
            
len += formatex(menuBody[len], sizeof menuBody len,"%L"id"INACTIVE_MENU_SHOP_BOUGHT", ++bg_itemname[i], g_itemcost[i]) 
        }  
        else  
        { 
            
keys |= (1<<b
            
len += formatex(menuBody[len], sizeof menuBody len,"%L"id"ACTIVE_MENU_SHOP", ++bg_itemname[i], g_itemcost[i]) 
        } 
    } 
    if(
end != g_numberofitems
    { 
        
len += formatex(menuBody[len], sizeof menuBody len"^n\r9. \w%L\r^n0. \w%L"id"NEXT_MENU"idpos "BACK_MENU" "EXIT_MENU"
        
keys |= MENU_KEY_9 
    

    else 
    { 
        
len += formatex(menuBody[len], sizeof menuBody len"^n\r0. \w%L"idpos "BACK_MENU" "EXIT_MENU"
    } 
     
    
show_menu(idkeysmenuBody, -1"Unlocks Shop"

public 
action_item_upgrades(idkey

    switch(
key)  
    { 
        case 
8display_item_upgrades(id, ++g_menuPosition[id]); 
        case 
9display_item_upgrades(id, --g_menuPosition[id]); 
        default: 
        { 
            if(!
is_user_alive(id))  
            { 
                return 
PLUGIN_HANDLED
            } 
             
            ++
key 
            
new money 
            
new plugin_id g_itemindex[g_menuPosition[id] * key
            new 
item_id g_menuPosition[id] * key 
            
new func get_func_id("gxm_item_enabled"plugin_id
            
money get_user_xp(id
            new 
cost g_itemcost[item_id
            if(
money >= cost
            { 
                
callfunc_begin_i(funcplugin_id
                
callfunc_push_int(id
                
callfunc_end() 
                
g_PlayerItem[id][item_id] = true 
                
new overall money cost 
                set_user_xp
(idoverall
                
client_printcolor(id"/yItem Bought Successfully, Item: /g%s."g_itemname[item_id]) 
                
client_printcolor(id"/yDescription:/g%s."g_itemdesc[item_id]) 
                
display_item_upgrades(idg_menuPosition[id]); 
            } 
        } 
    } 
    return 
PLUGIN_HANDLED

public 
register_item_gxm(item_indexitem_name[], item_desc[], item_cost

    if(
g_numberofitems == MAX_UNLOCKS
    { 
        return -

    

     
    
g_numberofitems++ 
    
g_itemindex[g_numberofitems] = item_index 
    format
(g_itemname[g_numberofitems], MAX_UNLOCKS_NAME_SIZEitem_name
    
format(g_itemdesc[g_numberofitems], MAX_UNLOCKS_DESC_SIZEitem_desc
    
g_itemcost[g_numberofitems] = item_cost 
     
    
return g_numberofitems 



GXLZPGX 10-01-2009 07:29

Re: shop menu
 
Do you mean upgrades such as Lower Gravity and Extra Damage? Describe what you want and I'll try to help you out.

DoviuX 10-01-2009 07:59

Re: shop menu
 
M4A1 Ugrade - Description Can see trails of players , aim , more ammo. Cost - 5000$
Ak47 Ugrade - Descripton aim , more damage , more ammo.Cost - 5000$
Deagle Ugrade - Aim , More ammo. Cost - 2000$
And etc when you type /ugrades

GXLZPGX 10-01-2009 16:25

Re: shop menu
 
Hmmm will do the best I can.


All times are GMT -4. The time now is 22:42.

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