Raised This Month: $ Target: $400
 0% 

Help ! CSDM Shop !


  
 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
chalcer
Junior Member
Join Date: May 2014
Old 08-06-2014 , 07:42   Re: Help ! CSDM Shop !
Reply With Quote #3

Code:
#include <amxmodx>
#include <amxmisc>
#include <engine>
#include <fakemeta>
#include <hamsandwich>
#include <fun>
#include <cstrike>


#define PLUGIN "Shop"
#define VERSION "1.1"
#define AUTHOR "Darksmith"

#pragma semicolon 1

new g_iMenu, gmsgBlinkAcct, g_iMaxPlayers;

enum _:playerTasks ( += 33 )
{
    TASK_PLAYER_REMOVE_GODMODE,
    TASK_PLAYER_REMOVE_INVIS,
    TASK_PLAYER_REMOVE_NOCLIP
}

enum Datas
{
    m_szName[32],
    m_iCost
}

new const g_mItems[][Datas] = 
{
    {"No Clip         \r30 Seconds", 4000},
    {"Godmode         \r20 Seconds", 3500},
    {"Invisibility    \r40 Seconds", 6000},
    {"500 Health and Armor  \r1 Round", 5000},
    {"Speed and Gravity     \r1 Round", 3000}
};

public plugin_init()
{
    register_plugin(PLUGIN, VERSION, AUTHOR);

    register_clcmd("say /lm", "shop");
    register_clcmd("say /shop", "shop");
    register_event("HLTV", "Event_HLTV_New_Round", "a", "1=0", "2=0");
        
    
    CreateMenu();

    gmsgBlinkAcct = get_user_msgid("BlinkAcct");
}

public Event_HLTV_New_Round()
{
    for(new id = 1; id<=g_iMaxPlayers; id++)
    {
        remove_task( id + TASK_PLAYER_REMOVE_GODMODE );
        remove_task( id + TASK_PLAYER_REMOVE_INVIS );
        remove_task( id + TASK_PLAYER_REMOVE_NOCLIP );
        Task_Remove_Noclip( id );
        Task_Remove_GodMode( id );
        Task_Remove_Invis( id );
    }
}

CreateMenu()
{
    g_iMenu = menu_create( "\wShop Menu \R\y$", "ShopMenuHandler" );

    new szItem[64];
    for(new i; i<sizeof(g_mItems); i++)
    {
        formatex(szItem, charsmax(szItem), "%s\R\y%d", g_mItems[i][m_szName], g_mItems[i][m_iCost]);
        menu_additem(g_iMenu, szItem);
    }
}
public shop(id)
{
    if(is_user_alive(id))
    {
        menu_display(id, g_iMenu);
    }
}

public ShopMenuHandler(id, menu, item )
{
    if(item >=0 && is_user_alive(id))
    {
        new newMoney = cs_get_user_money(id) - g_mItems[item][m_iCost];
        if( newMoney <= 0 )
        {
            client_print(id, print_chat, "Sorry ,You Don't have Enught Money");
            
            message_begin(MSG_ONE, gmsgBlinkAcct, _, id);
            {
                write_byte(2);
            }
            message_end();
            return;
        }
        cs_set_user_money(id, newMoney);

        switch(item)
        {
            case 0:
            {
                set_user_noclip(id, 1);
                set_task(30.0, "Task_Remove_Noclip", id + TASK_PLAYER_REMOVE_NOCLIP);
                client_print(id, print_chat, "You Have Bought No Clip for 30 Seconds");
            }
            case 1:
            {
                set_user_godmode(id, 1);
                set_task(20.0, "Task_Remove_GodMode", id + TASK_PLAYER_REMOVE_GODMODE);
                client_print(id, print_chat, "You Have Bought Godmode for 20 Seconds");
            }
            case 2:
            {
                set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha);
                set_task(40.0, "Task_Remove_Invis", id + TASK_PLAYER_REMOVE_INVIS);
                client_print(id, print_chat, "You Have Bought Invisibilty for 40 Seconds");
            }
            case 3:
            {
                set_user_health(id, 500);
                cs_set_user_armor(id, 500, CS_ARMOR_VESTHELM);
                client_print(id, print_chat, "You Have Buy 500 Armor + Health");
            }
            case 4:
            {
                set_user_maxspeed(id, 500.0);
                set_user_gravity(id, 0.2);
                client_print(id, print_chat, "You Have Buy Speed and Gravity");
            }
        }
    }
}

public Task_Remove_Noclip( id )
{
    id %= 33;
    if( is_user_connected(id) )
    {
        set_user_noclip(id, 0);
    }
}

public Task_Remove_GodMode( id )
{
    id %= 33;
    if( is_user_connected(id) )
    {
        set_user_godmode(id, 0);
    }
}

public Task_Remove_Invis( id )
{
    id %= 33;
    if( is_user_connected(id) )
    {
        set_user_rendering(id, _, 0, 0, 0, _, 0);
    }
}



/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1036\\ f0\\ fs16 \n\\ par }
*/
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1036\\ f0\\ fs16 \n\\ par }
*/
chalcer is offline
 



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 20:39.


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