View Single Post
ghost95v
Senior Member
Join Date: Apr 2014
Location: somewhere in universe
Old 10-08-2014 , 07:38   Re: [Help] Add limit each player 1 item per map
Reply With Quote #3

Quote:
Originally Posted by zmd94 View Post
Just try below:
PHP Code:
#include <amxmodx>
#include <fakemeta>
#include <cstrike>
#include <zombie_plague_advance>


#define PLUGIN "[ZP] Pack Assasin,Survivor,Nemesis,Sniper"
#define VERSION "2.1"
#define AUTHOR "Ghost95V"

#define ZP_TEAM_HUMAN (1<<1)
new const g_item_nem_name[] = "Buy Nemesis"
new const g_item_sur_name[] = "Buy Survivor"
new const g_costnemesis 140
new const g_costsurvivor 200

new g_maxplayersg_msgSayText
new g_nemesisg_survivor
new g_endround
new has_nemesis[33], has_survivor[33]

public 
plugin_init()
{
    
register_plugin(PLUGINVERSIONAUTHOR)
    
    
register_event("HLTV""event_round_start""a""1=0""2=0")
    
register_logevent("logevent_round_end"2"1=Round_End")
    
    
g_nemesis zp_register_extra_item(g_item_nem_nameg_costnemesisZP_TEAM_HUMAN)
    
g_survivor zp_register_extra_item(g_item_sur_nameg_costsurvivorZP_TEAM_HUMAN)

    
g_maxplayers get_maxplayers()
    
g_msgSayText get_user_msgid("SayText")
}

public 
zp_extra_item_selected(playeritemid)
{
    if (
zp_has_round_started() == || g_endround)
    {
        
zp_colored_print(player"^x04[ZP]^x01 This item can only be bought before the round mode starts")
        return 
ZP_PLUGIN_HANDLED;
    }
    new 
name[32]
    
get_user_name(playernamecharsmax(name))

    if(
itemid == g_nemesis)
    {
        if (
has_nemesis[id])
        {
            
zp_colored_print(player"^x04[ZP]^x01 You only can^x04 buy this item^x01 once for a map")
            
            return 
ZP_PLUGIN_HANDLED;
        }
        
        
zp_make_user_nemesis(player)
        
zp_colored_print(0"^x04[StreetZM]^x03 %s^x01 has bought ^x04 Nemesis"name)
        
        
has_nemesis[id] = true
    
}
    else if(
itemid == g_survivor)
    {
        if (
has_survivor[id])
        {
            
zp_colored_print(player"^x04[ZP]^x01 You only can^x04 buy this item^x01 once for a map")
            
            return 
ZP_PLUGIN_HANDLED;
        }
        
zp_make_user_survivor(player)
        
zp_colored_print(0"^x04[StreetZM]^x03 %s^x01 has bought ^x04 Survivor"name)  

        
has_survivor[id] = true
    
}   
    return 
PLUGIN_CONTINUE
}

public 
event_round_start()
    
g_endround false

public logevent_round_end()
    
g_endround true
    
zp_colored_print
(target, const message[], any:...)
{
    static 
buffer[512], iargscount
    argscount 
numargs()
    
    
// Send to everyone
    
if (!target)
    {
        static 
player
        
for (player 1player <= g_maxplayersplayer++)
        {
            
// Not connected
            
if (!is_user_connected(player))
                continue;
            
            
// Remember changed arguments
            
static changed[5], changedcount // [5] = max LANG_PLAYER occurencies
            
changedcount 0
            
            
// Replace LANG_PLAYER with player id
            
for (2argscounti++)
            {
                if (
getarg(i) == LANG_PLAYER)
                {
                    
setarg(i0player)
                    
changed[changedcount] = i
                    changedcount
++
                }
            }
            
            
// Format message for player
            
vformat(buffercharsmax(buffer), message3)
            
            
// Send it
            
message_begin(MSG_ONE_UNRELIABLEg_msgSayText_player)
            
write_byte(player)
            
write_string(buffer)
            
message_end()
            
            
// Replace back player id's with LANG_PLAYER
            
for (0changedcounti++)
                
setarg(changed[i], 0LANG_PLAYER)
        }
    }
    
// Send to specific target
    
else
    {
        
// Format message for player
        
vformat(buffercharsmax(buffer), message3)
        
        
// Send it
        
message_begin(MSG_ONEg_msgSayText_target)
        
write_byte(target)
        
write_string(buffer)
        
message_end()
    }

thank you .... but , this is for each player ? or blocks buy for all player, if 1 player has already bought that item in that map. ( i wana to make, for that player, that has bought 1 time , that item in map , hee will cant buy again)
__________________

Last edited by ghost95v; 10-08-2014 at 07:41.
ghost95v is offline
Send a message via Skype™ to ghost95v