Thread: Money Give
View Single Post
staNioN
Junior Member
Join Date: Jul 2013
Old 07-31-2014 , 14:07   Re: Money Give
Reply With Quote #23

well,i got what i wanted , if someone wants it to here u go
PHP Code:
#include <amxmodx>
#include <cstrike>
#include <colorchat>

#define DONATE_START_AMOUNT    1000
#define MAX_DONATE_AMOUNT    16000

new const szPrefix[] = "[staNioN-MM]"

new const g_szDonateCmds[][] = {
    
"/donate",
    
"donate",
    
"donate_money",
    
"/donate_money",
    
"money_donate",
    
"/money_donate"
};    

new 
g_iMenu[33];
new 
g_iDonateTo[33];
new 
g_iDonationAmount[33];

new 
g_pDonateIncreaseAmount;

stock CreateMenu(idszTitle[] = ""szHandler[])
{
    if(
g_iMenu[id])
    {
        
DestroyMenu(id);
    }
        
    return ( 
g_iMenu[id] = menu_create(szTitleszHandler) );
}

stock DestroyMenu(id)
{
    if(!
g_iMenu[id])
    {
        return;
    }
    
    
menu_destroy(g_iMenu[id]);
    
g_iMenu[id] = 0;
}

public 
plugin_init() 

    
register_plugin("MONEY-GIVE","1.05","+ARUKARI-"

    for(new 
iszCmd[60]; sizeof g_szDonateCmdsi++)
    {
        
formatex(szCmdcharsmax(szCmd), "say %s"g_szDonateCmds[i]);
        
register_clcmd(szCmd"cmdDonateMenu");
        
        
formatex(szCmdcharsmax(szCmd), "say_team %s"g_szDonateCmds[i]);
        
register_clcmd(szCmd"cmdDonateMenu");
    }
    
    
register_clcmd("Type""Donate_CmdCustomAmount");
    
g_pDonateIncreaseAmount register_cvar("donate_increase_money""1000");


public 
cmdDonateMenu(id,level,cid)
{    
    new 
iPlayers[32], iNum
    get_players
(iPlayersiNum"ch");
    
    if(
iNum == 1)
    {
        
ColorChat(idTEAM_COLOR"^4%s ^1You Cant ^3Donate ^1when You'r ^4Alone."szPrefix);
        return;
    }
    
    new 
szTitle[60]
    
formatex(szTitlecharsmax(szTitle), "\r%s \yDonate To:"szPrefix);
    
CreateMenu(idszTitle"Donate_ChoosePlayerHandler");
    
    for(new 
iszInfo[3], iPlayeriAccessszName[32]; iNumi++, iAccess 0)
    {
        if( ( 
iPlayer iPlayers[i] ) == id )
        {
            
iAccess = (1<<27);
        }
        
        
get_user_name(iPlayerszName31);
        
num_to_str(iPlayerszInfocharsmax(szInfo));
        
menu_additem(g_iMenu[id], szNameszInfoiAccess);
    }
    
    
menu_display(idg_iMenu[id]);
}  

public 
Donate_ChoosePlayerHandler(idmenuitem)
{
    if(
item 0)
    {
        
DestroyMenu(id);
        return;
    }
    
    new 
szInfo[3], iPlayerszDonateToName[32];
    
menu_item_getinfo(menuitemiPlayerszInfocharsmax(szInfo), szDonateToName31iPlayer);
    
    
g_iDonateTo[id] = ( iPlayer str_to_num(szInfo) );
    
DestroyMenu(id);
    
    new 
szTitle[60];
    
formatex(szTitlecharsmax(szTitle), "\r%s \yDonations"szPrefix);
    
    
CreateMenu(idszTitle"Donate_ChooseDonateOption");
    
    
formatex(szTitlecharsmax(szTitle), "\wDonate To: \y%s"szDonateToName);
    
menu_additem(g_iMenu[id], szTitle);
    
    
menu_additem(g_iMenu[id], "Type A Custom Amount");
    
    
formatex(szTitlecharsmax(szTitle), "Donation Amount: \y%d", ( g_iDonationAmount[id] = DONATE_START_AMOUNT ) );
    
menu_additem(g_iMenu[id], szTitle);
    
    
menu_display(idg_iMenu[id]);
}

public 
Donate_ChooseDonateOption(idmenuitem)
{
    if(
item 0)
    {
        
DestroyMenu(id);
        return;
    }
    
    
    
enum
    
{
        
ITEM_DONATE_TO,
        
ITEM_CUSTOM_AMOUNT,
        
ITEM_DONATION_AMOUNT
    
};
    
    switch(
item)
    {
        case 
ITEM_DONATE_TO:
        {
            
DestroyMenu(id);
            
DoDonate(id);
        }
        
        case 
ITEM_DONATION_AMOUNT:
        {
            if( ( 
g_iDonationAmount[id] += get_pcvar_num(g_pDonateIncreaseAmount) ) > MAX_DONATE_AMOUNT)
            {
                
g_iDonationAmount[id] = DONATE_START_AMOUNT
            
}
            
            new 
szNewName[60];
            
formatex(szNewNamecharsmax(szNewName), "Donation Amount: \y%d", ( g_iDonationAmount[id] ) )
            
menu_item_setname(menuitemszNewName);
            
            
menu_display(idmenu);
        }
        
        case 
ITEM_CUSTOM_AMOUNT:
        {
            
DestroyMenu(id);
            
            
client_cmd(id"messagemode ^"DonateTo^"");
            
ColorChat(idTEAM_COLOR"^4%s ^1Please type your ^4Amount ^1to give. It ^3MUST ^1be an ^3integer!"szPrefix);
        }
    }
}

public 
Donate_CmdCustomAmount(id)
{
    new 
szAmount[16];
    
read_argv(read_argc() - 1szAmountcharsmax(szAmount));
    
    if(!
is_str_num(szAmount))
    {
        
ColorChat(idTEAM_COLOR"^4%s ^1Invalid ^3Value!"szPrefix);
        return;
    }
    
    
g_iDonationAmount[id] = str_to_num(szAmount);
    
    if(
g_iDonationAmount[id] < 0)
    {
        
g_iDonationAmount[id] *= -1;
    }
        
    
DoDonate(id);
}

stock DoDonate(id)
{
    new 
iDonateTo g_iDonateTo[id];
    new 
iDonatedMoney g_iDonationAmount[id];
    
    if(!
is_user_connected(iDonateTo))
    {
        
ColorChat(idTEAM_COLOR"^4%s^1Player is no longer ^3Connected."szPrefix);
        return;
    }
    
    new 
iUserMoney cs_get_user_money(id);
    if(
iUserMoney iDonatedMoney)
    {
        
ColorChat(idTEAM_COLOR"^4%s ^1You Dont have ^3Enough Money ^1to ^4Donate."szPrefix);
        return;
    }
    
    
cs_set_user_money(idiUserMoney iDonatedMoney);
    
cs_set_user_money(iDonateTocs_get_user_money(iDonateTo) + iDonatedMoney);
    
    new 
szName1[32], szName2[32];
    
get_user_name(idszName131);
    
get_user_name(iDonateToszName231);
    
    
ColorChat(idTEAM_COLOR"^4%s ^3%s ^1You have just ^3donated $%d ^1to ^3%s."szPrefixiDonatedMoneyszName2);
    
ColorChat(0TEAM_COLOR"^4%s ^3%s ^1just ^3donated $%d ^1to ^3%s"szPrefixszName1iDonatedMoneyszName2);
    


Last edited by staNioN; 08-01-2014 at 23:23. Reason: got the requested plugin
staNioN is offline