Zplague
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Zplague Entrar

Seu portal de Zombie Plague no Brasil


description[PEDIDO]plugin survivor e nemesis Empty[PEDIDO]plugin survivor e nemesis

more_horiz
eu queria um plugin igual o da DH que so aparece para humanos e n de para comprar depois dos 10 segundos eu procurei achei uns bugado q da pra comprar como zm e etc pf alguem faz pra mim ou edita algum plzz..

description[PEDIDO]plugin survivor e nemesis EmptyRe: [PEDIDO]plugin survivor e nemesis

more_horiz
godswar129 escreveu:
eu queria um plugin igual o da DH que so aparece para humanos e n de para comprar depois dos 10 segundos eu procurei achei uns bugado q da pra comprar como zm e etc pf alguem faz pra mim ou edita algum plzz..


coloque no pluguin
na parte da compra

zp_has_round_started()
return

description[PEDIDO]plugin survivor e nemesis EmptyRe: [PEDIDO]plugin survivor e nemesis

more_horiz
coloca so isso ou tem q fazer alguma alteração?

description[PEDIDO]plugin survivor e nemesis EmptyRe: [PEDIDO]plugin survivor e nemesis

more_horiz
godswar129 escreveu:
coloca so isso ou tem q fazer alguma alteração?

posta ai o sma ?

description[PEDIDO]plugin survivor e nemesis EmptyRe: [PEDIDO]plugin survivor e nemesis

more_horiz

Código:

#include <amxmodx>
#include <zombieplague>
#include <zmvip>

#define PLUGIN "[ZP] S/N Buy"
#define VERSION "1.1"
#define AUTHOR "aaarnas"

new g_msgSayText
new nemesis, survivor
new g_bought[33], bought
new cvar_n_price, cvar_s_price, cvar_limit_all, cvar_everytime, cvar_show_bought, cvar_allow_times

public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR)
    cvar_everytime = register_cvar("zp_allow_buy", "2")
    cvar_allow_times = register_cvar("zp_allow_times", "4")
    cvar_limit_all = register_cvar("zp_limit_for_all", "1")
    cvar_n_price = register_cvar("zp_nemesis_price", "150")
    cvar_s_price = register_cvar("zp_survivor_price", "150")
    cvar_show_bought = register_cvar("zp_show_who_bought", "1")
   
    g_msgSayText = get_user_msgid("SayText")
   
    // Extra items
    nemesis = zv_register_extra_item("comprar Nemesis", "For one round", get_pcvar_num(cvar_n_price), 0)
    survivor = zv_register_extra_item("comprar Survivor","For one round", get_pcvar_num(cvar_s_price), 0)
}

public zp_round_ended()
    bought = false

public zv_extra_item_selected(id, itemid) {
   
    new value = get_pcvar_num(cvar_everytime)
   
    if(itemid == nemesis) {
       
        if(get_pcvar_num(cvar_limit_all) && bought) {
            client_printcolor(id, "/g[ZP] This is no more avaible in this round. Try next round.")
            return ZV_PLUGIN_HANDLED
        }
        if(g_bought[id] >= get_pcvar_num(cvar_allow_times)) {
            client_printcolor(id, "/g[ZP] You can't buy it more than %d times.", get_pcvar_num(cvar_allow_times))
            return ZV_PLUGIN_HANDLED
        }
        if(value == 2) {
            zp_make_user_nemesis(id)
            new name[64]
            get_user_name(id, name, 63)
            client_printcolor(0, "/g[ZP] %s /ybought nemesis", name)
            g_bought[id]++
        }
        else if(zp_has_round_started() == value) {
            zp_make_user_nemesis(id)
            if(get_pcvar_num(cvar_show_bought)) {
                new name[64]
                get_user_name(id, name, 63)
                client_printcolor(0, "/g[ZP] %s /ybought nemesis", name)
                g_bought[id]++
                bought = true
            }
        }
        else {
            client_printcolor(id, "/g[ZP] /yYou can buy Nemesis only when %s.", value ? "round started":"round not started")
            return ZV_PLUGIN_HANDLED
        }
    }
    else if(itemid == survivor) {
       
        if(get_pcvar_num(cvar_limit_all) && bought) {
            client_printcolor(id, "/g[ZP] This is no more avaible in this round. Try next round.")
            return ZV_PLUGIN_HANDLED
        }
        if(g_bought[id] >= get_pcvar_num(cvar_allow_times)) {
            client_printcolor(id, "/g[ZP] You can't buy it more than %d times.", get_pcvar_num(cvar_allow_times))
            return ZV_PLUGIN_HANDLED
        }
        if(value == 2) {
            zp_make_user_survivor(id)
            new name[64]
            get_user_name(id, name, 63)
            client_printcolor(0, "/g[ZP] %s /ybought nemesis", name)
            g_bought[id]++
        }
        else if(zp_has_round_started() == value) {
            zp_make_user_survivor(id)
            if(get_pcvar_num(cvar_show_bought)) {
                new name[64]
                get_user_name(id, name, 63)
                client_printcolor(0, "/g[ZP] %s /ybought survivor", name)
                g_bought[id]++
                bought = true
                zp_has_round_started()
                return 1
            }
        }
        else {
            client_printcolor(id, "/g[ZP] /yYou can buy Survivor only when %s.", value ? "round started":"round not started")
            return ZV_PLUGIN_HANDLED
        }
    }
    return 1
}
stock client_printcolor(const id, const input[], any:...)
{
    new iCount = 1, iPlayers[32]
   
    static szMsg[191]
    vformat(szMsg, charsmax(szMsg), input, 3)
   
    replace_all(szMsg, 190, "/g", "^4") // green txt
    replace_all(szMsg, 190, "/y", "^1") // orange txt
    replace_all(szMsg, 190, "/ctr", "^3") // team txt
    replace_all(szMsg, 190, "/w", "^0") // team txt
   
    if(id) iPlayers[0] = id
    else get_players(iPlayers, iCount, "ch")
       
    for (new i = 0; i < iCount; i++)
    {
        if (is_user_connected(iPlayers[i]))
        {
            message_begin(MSG_ONE_UNRELIABLE, g_msgSayText, _, iPlayers[i])
            write_byte(iPlayers[i])
            write_string(szMsg)
            message_end()
        }
    }
}


a sma ae =D

description[PEDIDO]plugin survivor e nemesis EmptyRe: [PEDIDO]plugin survivor e nemesis

more_horiz
Junin ,fala ai como? UP UP UP

description[PEDIDO]plugin survivor e nemesis EmptyRe: [PEDIDO]plugin survivor e nemesis

more_horiz

Código:

#include
#include
#include

#define PLUGIN "[ZP] S/N Buy"
#define VERSION "1.1"
#define AUTHOR "aaarnas"

new g_msgSayText
new nemesis, survivor
new g_bought[33], bought
new cvar_n_price, cvar_s_price, cvar_limit_all, cvar_everytime, cvar_show_bought, cvar_allow_times

public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
cvar_everytime = register_cvar("zp_allow_buy", "0")
cvar_allow_times = register_cvar("zp_allow_times", "1")
cvar_limit_all = register_cvar("zp_limit_for_all", "1")
cvar_n_price = register_cvar("zp_nemesis_price", "150")
cvar_s_price = register_cvar("zp_survivor_price", "150")
cvar_show_bought = register_cvar("zp_show_who_bought", "1")

g_msgSayText = get_user_msgid("SayText")

// Extra items
nemesis = zv_register_extra_item("comprar Nemesis", "For one round", get_pcvar_num(cvar_n_price), 0)
survivor = zv_register_extra_item("comprar Survivor","For one round", get_pcvar_num(cvar_s_price), 0)
}

public zp_round_ended()
bought = false

public zv_extra_item_selected(id, itemid) {

new value = get_pcvar_num(cvar_everytime)

if(itemid == nemesis) {

if(get_pcvar_num(cvar_limit_all) && bought) {
client_printcolor(id, "/g[ZP] This is no more avaible in this round. Try next round.")
return ZV_PLUGIN_HANDLED
}
if(g_bought[id] >= get_pcvar_num(cvar_allow_times)) {
client_printcolor(id, "/g[ZP] You can't buy it more than %d times.", get_pcvar_num(cvar_allow_times))
return ZV_PLUGIN_HANDLED
}
if(value == 2) {
zp_make_user_nemesis(id)
new name[64]
get_user_name(id, name, 63)
client_printcolor(0, "/g[ZP] %s /ybought nemesis", name)
g_bought[id]++
}
else if(zp_has_round_started() == value) {
zp_make_user_nemesis(id)
if(get_pcvar_num(cvar_show_bought)) {
new name[64]
get_user_name(id, name, 63)
client_printcolor(0, "/g[ZP] %s /ybought nemesis", name)
g_bought[id]++
bought = true
}
}
else {
client_printcolor(id, "/g[ZP] /yYou can buy Nemesis only when %s.", value ? "round started":"round not started")
return ZV_PLUGIN_HANDLED
}
}
else if(itemid == survivor) {

if(get_pcvar_num(cvar_limit_all) && bought) {
client_printcolor(id, "/g[ZP] This is no more avaible in this round. Try next round.")
return ZV_PLUGIN_HANDLED
}
if(g_bought[id] >= get_pcvar_num(cvar_allow_times)) {
client_printcolor(id, "/g[ZP] You can't buy it more than %d times.", get_pcvar_num(cvar_allow_times))
return ZV_PLUGIN_HANDLED
}
if(value == 2) {
zp_make_user_survivor(id)
new name[64]
get_user_name(id, name, 63)
client_printcolor(0, "/g[ZP] %s /ybought nemesis", name)
g_bought[id]++
}
else if(zp_has_round_started() == value) {
zp_make_user_survivor(id)
if(get_pcvar_num(cvar_show_bought)) {
new name[64]
get_user_name(id, name, 63)
client_printcolor(0, "/g[ZP] %s /ybought survivor", name)
g_bought[id]++
bought = true
zp_has_round_started()
return 1
}
}
else {
client_printcolor(id, "/g[ZP] /yYou can buy Survivor only when %s.", value ? "round started":"round not started")
return ZV_PLUGIN_HANDLED
}
}
return 1
}
stock client_printcolor(const id, const input[], any:...)
{
new iCount = 1, iPlayers[32]

static szMsg[191]
vformat(szMsg, charsmax(szMsg), input, 3)

replace_all(szMsg, 190, "/g", "^4") // green txt
replace_all(szMsg, 190, "/y", "^1") // orange txt
replace_all(szMsg, 190, "/ctr", "^3") // team txt
replace_all(szMsg, 190, "/w", "^0") // team txt

if(id) iPlayers[0] = id
else get_players(iPlayers, iCount, "ch")

for (new i = 0; i < iCount; i++)
{
if (is_user_connected(iPlayers[i]))
{
message_begin(MSG_ONE_UNRELIABLE, g_msgSayText, _, iPlayers[i])
write_byte(iPlayers[i])
write_string(szMsg)
message_end()
}
}
}


ve se asim vai

description[PEDIDO]plugin survivor e nemesis EmptyRe: [PEDIDO]plugin survivor e nemesis

more_horiz
Esse daqui não tem o bug que você falou (ou ao menos no meu addon não tem)

O De Comprar Nemesis e Survivor:

Código:

#include <amxmodx>
#include <zombieplague>
#include <zmvip>

#define PLUGIN "[ZP] Compra de Survivor e nemesis"
#define VERSION "1.1"
#define AUTHOR "aaarnas"

new g_msgSayText
new nemesis, survivor
new g_bought[33], bought
new cvar_n_price, cvar_s_price, cvar_limit_all, cvar_everytime, cvar_show_bought, cvar_allow_times

public plugin_init() {
   register_plugin(PLUGIN, VERSION, AUTHOR)
   cvar_everytime = register_cvar("zp_allow_buy", "0")      // 0 - Comprar antes da infeccao, 1 - Comprar depois da infeccao, 2 - Comprar em ambas ocasiões
   cvar_allow_times = register_cvar("zp_allow_times", "999")   // Limite de compras por mapa
   cvar_limit_all = register_cvar("zp_limit_for_all", "999")   // Eu acho que eh quantos players pode comprar por round
   cvar_n_price = register_cvar("zp_nemesis_price", "75")      // Preco do nemesis
   cvar_s_price = register_cvar("zp_survivor_price", "75")      // Preco do survivor
   cvar_show_bought = register_cvar("zp_show_who_bought", "1")   // Mostrar quem comprou o que (0 - Desligado, 1 - Ligado)
   
   g_msgSayText = get_user_msgid("SayText")
   
   // Extra items
   nemesis = zv_register_extra_item("Comprar Nemesis", "Vai encarar!!", get_pcvar_num(cvar_n_price), 0)
   survivor = zv_register_extra_item("Comprar Survivor","Sera que vo dar conta?", get_pcvar_num(cvar_s_price), 0)
}

public zp_round_ended()
   bought = false

public zv_extra_item_selected(id, itemid) {
   
   new value = get_pcvar_num(cvar_everytime)
   
   if(itemid == nemesis) {
      
      if(get_pcvar_num(cvar_limit_all) && bought) {
         client_printcolor(id, "/g[ZP] /yNao pode comprar mais nada nesse round. Tente no proximo.")
         return ZV_PLUGIN_HANDLED
      }
      if(g_bought[id] >= get_pcvar_num(cvar_allow_times)) {
         client_printcolor(id, "/g[ZP] /yVoce nao pode compra mais nada porque ja compraram %d mods. Agora soh no prox mapa", get_pcvar_num(cvar_allow_times))
         return ZV_PLUGIN_HANDLED
      }
      if(value == 2) {
         zp_make_user_nemesis(id)
         new name[64]
         get_user_name(id, name, 63)
         client_printcolor(0, "/g[ZP] /yO Jogador /g%s /yComprou Nemesis", name)
         g_bought[id]++
      }
      else if(zp_has_round_started() == value) {
         zp_make_user_nemesis(id)
         if(get_pcvar_num(cvar_show_bought)) {
            new name[64]
            get_user_name(id, name, 63)
            client_printcolor(0, "/g[ZP] /yO Jogador /g%s /yComprou Nemesis", name)
            g_bought[id]++
            bought = true
         }
      }
      else {
         client_printcolor(id, "/g[ZP] /yVoce soh pode comprar Nemesis %s.", value ? "Depois da Infeccao":"Antes da Infeccao")
         return ZV_PLUGIN_HANDLED
      }
   }
   else if(itemid == survivor) {
      
      if(get_pcvar_num(cvar_limit_all) && bought) {
         client_printcolor(id, "/g[ZP] /yNao pode comprar mais nada nesse round. Tente no proximo.")
         return ZV_PLUGIN_HANDLED
      }
      if(g_bought[id] >= get_pcvar_num(cvar_allow_times)) {
         client_printcolor(id, "/g[ZP] /yVoce nao pode compra mais nada porque ja compraram %d mods. Agora soh no prox mapa.", get_pcvar_num(cvar_allow_times))
         return ZV_PLUGIN_HANDLED
      }
      if(value == 2) {
         zp_make_user_survivor(id)
         new name[64]
         get_user_name(id, name, 63)
         client_printcolor(0, "/g[ZP] /yO Jogador /g%s /yComprou Survivor", name)
         g_bought[id]++
      }
      else if(zp_has_round_started() == value) {
         zp_make_user_survivor(id)
         if(get_pcvar_num(cvar_show_bought)) {
            new name[64]
            get_user_name(id, name, 63)
            client_printcolor(0, "/g[ZP] /yO Jogador /g%s /yComprou Survivor", name)
            g_bought[id]++
            bought = true
         }
      }
      else {
         client_printcolor(id, "/g[ZP] /yVoce soh pode comprar Survivor %s.", value ? "Depois da Infeccao":"Antes da Infeccao")
         return ZV_PLUGIN_HANDLED
      }
   }
   return 1
}

stock client_printcolor(const id, const input[], any:...)
{
   new iCount = 1, iPlayers[32]
   
   static szMsg[191]
   vformat(szMsg, charsmax(szMsg), input, 3)
   
   replace_all(szMsg, 190, "/g", "^4") // green txt
   replace_all(szMsg, 190, "/y", "^1") // orange txt
   replace_all(szMsg, 190, "/ctr", "^3") // team txt
   replace_all(szMsg, 190, "/w", "^0") // team txt
   
   if(id) iPlayers[0] = id
   else get_players(iPlayers, iCount, "ch")
      
   for (new i = 0; i < iCount; i++)
   {
      if (is_user_connected(iPlayers[i]))
      {
         message_begin(MSG_ONE_UNRELIABLE, g_msgSayText, _, iPlayers[i])
         write_byte(iPlayers[i])
         write_string(szMsg)
         message_end()
      }
   }
}


O De Comprar Sniper e Assassino (Caso você queira):

Código:

#include <amxmodx>
#include <zombie_plague_advance
#include <zmvip>

#define PLUGIN "[ZP] Compra de Sniper e Assassin"
#define VERSION "1.1"
#define AUTHOR "aaarnas"

new g_msgSayText
new assassin, sniper
new g_bought[33], bought
new cvar_n_price, cvar_s_price, cvar_limit_all, cvar_everytime, cvar_show_bought, cvar_allow_times

public plugin_init() {
   register_plugin(PLUGIN, VERSION, AUTHOR)
   cvar_everytime = register_cvar("zp_allow_buy", "0")      // 0 - Comprar antes da infeccao, 1 - Comprar depois da infeccao, 2 - Comprar em ambas ocasiões
   cvar_allow_times = register_cvar("zp_allow_times", "999")   // Limite de compras por mapa
   cvar_limit_all = register_cvar("zp_limit_for_all", "999")   // Eu acho que eh quantos players pode comprar por round
   cvar_n_price = register_cvar("zp_assassin_price", "75")      // Preco do assassino
   cvar_s_price = register_cvar("zp_sniper_price", "75")      // Preco do sniper
   cvar_show_bought = register_cvar("zp_show_who_bought", "1")   // Mostrar quem comprou o que (0 - Desligado, 1 - Ligado)
   
   g_msgSayText = get_user_msgid("SayText")
   
   // Extra items
   assassin = zv_register_extra_item("Comprar Assassino", "Vai encarar!!", get_pcvar_num(cvar_n_price), 0)
   sniper = zv_register_extra_item("Comprar Sniper","Sera que vo dar conta?", get_pcvar_num(cvar_s_price), 0)
}

public zp_round_ended()
   bought = false

public zv_extra_item_selected(id, itemid) {
   
   new value = get_pcvar_num(cvar_everytime)
   
   if(itemid == assassin) {
      
      if(get_pcvar_num(cvar_limit_all) && bought) {
         client_printcolor(id, "/g[ZP] /yNao pode comprar mais nada nesse round. Tente no proximo.")
         return ZV_PLUGIN_HANDLED
      }
      if(g_bought[id] >= get_pcvar_num(cvar_allow_times)) {
         client_printcolor(id, "/g[ZP] /yVoce nao pode compra mais nada porque ja compraram %d mods. Agora soh no prox mapa.", get_pcvar_num(cvar_allow_times))
         return ZV_PLUGIN_HANDLED
      }
      if(value == 2) {
         zp_make_user_assassin(id)
         new name[64]
         get_user_name(id, name, 63)
         client_printcolor(0, "/g[ZP] /yO Jogador /g%s /yComprou Assassino", name)
         g_bought[id]++
      }
      else if(zp_has_round_started() == value) {
         zp_make_user_assassin(id)
         if(get_pcvar_num(cvar_show_bought)) {
            new name[64]
            get_user_name(id, name, 63)
            client_printcolor(0, "/g[ZP] /yO Jogador /g%s /yComprou Assassino", name)
            g_bought[id]++
            bought = true
         }
      }
      else {
         client_printcolor(id, "/g[ZP] /yVoce soh pode compra Assassino %s.", value ? "Depois da Infeccao":"Antes da infeccao")
         return ZV_PLUGIN_HANDLED
      }
   }
   else if(itemid == sniper) {
      
      if(get_pcvar_num(cvar_limit_all) && bought) {
         client_printcolor(id, "/g[ZP] /yNao pode comprar mais nada nesse round. Tente no proximo.")
         return ZV_PLUGIN_HANDLED
      }
      if(g_bought[id] >= get_pcvar_num(cvar_allow_times)) {
         client_printcolor(id, "/g[ZP] /yVoce nao pode compra mais nada porque ja compraram %d mods. Agora soh no prox mapa.", get_pcvar_num(cvar_allow_times))
         return ZV_PLUGIN_HANDLED
      }
      if(value == 2) {
         zp_make_user_sniper(id)
         new name[64]
         get_user_name(id, name, 63)
         client_printcolor(0, "/g[ZP] /yO Jogador /g%s /yComprou Sniper", name)
         g_bought[id]++
      }
      else if(zp_has_round_started() == value) {
         zp_make_user_sniper(id)
         if(get_pcvar_num(cvar_show_bought)) {
            new name[64]
            get_user_name(id, name, 63)
            client_printcolor(0, "/g[ZP] /yO Jogador /g%s /yComprou Sniper", name)
            g_bought[id]++
            bought = true
         }
      }
      else {
         client_printcolor(id, "/g[ZP] /yVoce soh pode comprar Sniper %s.", value ? "Depois da Infeccao":"Antes da Infeccao")
         return ZV_PLUGIN_HANDLED
      }
   }
   return 1
}

stock client_printcolor(const id, const input[], any:...)
{
   new iCount = 1, iPlayers[32]
   
   static szMsg[191]
   vformat(szMsg, charsmax(szMsg), input, 3)
   
   replace_all(szMsg, 190, "/g", "^4") // green txt
   replace_all(szMsg, 190, "/y", "^1") // orange txt
   replace_all(szMsg, 190, "/ctr", "^3") // team txt
   replace_all(szMsg, 190, "/w", "^0") // team txt
   
   if(id) iPlayers[0] = id
   else get_players(iPlayers, iCount, "ch")
      
   for (new i = 0; i < iCount; i++)
   {
      if (is_user_connected(iPlayers[i]))
      {
         message_begin(MSG_ONE_UNRELIABLE, g_msgSayText, _, iPlayers[i])
         write_byte(iPlayers[i])
         write_string(szMsg)
         message_end()
      }
   }
}

description[PEDIDO]plugin survivor e nemesis EmptyRe: [PEDIDO]plugin survivor e nemesis

more_horiz
[P]erfec[T] [S]cr[@]s[H] escreveu:
Esse daqui não tem o bug que você falou (ou ao menos no meu addon não tem)

O De Comprar Nemesis e Survivor:

Código:

#include <amxmodx>
#include <zombieplague>
#include <zmvip>
Como q eu junto td iso?
#define PLUGIN "[ZP] Compra de Survivor e nemesis"
#define VERSION "1.1"
#define AUTHOR "aaarnas"

new g_msgSayText
new nemesis, survivor
new g_bought[33], bought
new cvar_n_price, cvar_s_price, cvar_limit_all, cvar_everytime, cvar_show_bought, cvar_allow_times

public plugin_init() {
   register_plugin(PLUGIN, VERSION, AUTHOR)
   cvar_everytime = register_cvar("zp_allow_buy", "0")      // 0 - Comprar antes da infeccao, 1 - Comprar depois da infeccao, 2 - Comprar em ambas ocasiões
   cvar_allow_times = register_cvar("zp_allow_times", "999")   // Limite de compras por mapa
   cvar_limit_all = register_cvar("zp_limit_for_all", "999")   // Eu acho que eh quantos players pode comprar por round
   cvar_n_price = register_cvar("zp_nemesis_price", "75")      // Preco do nemesis
   cvar_s_price = register_cvar("zp_survivor_price", "75")      // Preco do survivor
   cvar_show_bought = register_cvar("zp_show_who_bought", "1")   // Mostrar quem comprou o que (0 - Desligado, 1 - Ligado)
   
   g_msgSayText = get_user_msgid("SayText")
   
   // Extra items
   nemesis = zv_register_extra_item("Comprar Nemesis", "Vai encarar!!", get_pcvar_num(cvar_n_price), 0)
   survivor = zv_register_extra_item("Comprar Survivor","Sera que vo dar conta?", get_pcvar_num(cvar_s_price), 0)
}

public zp_round_ended()
   bought = false

public zv_extra_item_selected(id, itemid) {
   
   new value = get_pcvar_num(cvar_everytime)
   
   if(itemid == nemesis) {
      
      if(get_pcvar_num(cvar_limit_all) && bought) {
         client_printcolor(id, "/g[ZP] /yNao pode comprar mais nada nesse round. Tente no proximo.")
         return ZV_PLUGIN_HANDLED
      }
      if(g_bought[id] >= get_pcvar_num(cvar_allow_times)) {
         client_printcolor(id, "/g[ZP] /yVoce nao pode compra mais nada porque ja compraram %d mods. Agora soh no prox mapa", get_pcvar_num(cvar_allow_times))
         return ZV_PLUGIN_HANDLED
      }
      if(value == 2) {
         zp_make_user_nemesis(id)
         new name[64]
         get_user_name(id, name, 63)
         client_printcolor(0, "/g[ZP] /yO Jogador /g%s /yComprou Nemesis", name)
         g_bought[id]++
      }
      else if(zp_has_round_started() == value) {
         zp_make_user_nemesis(id)
         if(get_pcvar_num(cvar_show_bought)) {
            new name[64]
            get_user_name(id, name, 63)
            client_printcolor(0, "/g[ZP] /yO Jogador /g%s /yComprou Nemesis", name)
            g_bought[id]++
            bought = true
         }
      }
      else {
         client_printcolor(id, "/g[ZP] /yVoce soh pode comprar Nemesis %s.", value ? "Depois da Infeccao":"Antes da Infeccao")
         return ZV_PLUGIN_HANDLED
      }
   }
   else if(itemid == survivor) {
      
      if(get_pcvar_num(cvar_limit_all) && bought) {
         client_printcolor(id, "/g[ZP] /yNao pode comprar mais nada nesse round. Tente no proximo.")
         return ZV_PLUGIN_HANDLED
      }
      if(g_bought[id] >= get_pcvar_num(cvar_allow_times)) {
         client_printcolor(id, "/g[ZP] /yVoce nao pode compra mais nada porque ja compraram %d mods. Agora soh no prox mapa.", get_pcvar_num(cvar_allow_times))
         return ZV_PLUGIN_HANDLED
      }
      if(value == 2) {
         zp_make_user_survivor(id)
         new name[64]
         get_user_name(id, name, 63)
         client_printcolor(0, "/g[ZP] /yO Jogador /g%s /yComprou Survivor", name)
         g_bought[id]++
      }
      else if(zp_has_round_started() == value) {
         zp_make_user_survivor(id)
         if(get_pcvar_num(cvar_show_bought)) {
            new name[64]
            get_user_name(id, name, 63)
            client_printcolor(0, "/g[ZP] /yO Jogador /g%s /yComprou Survivor", name)
            g_bought[id]++
            bought = true
         }
      }
      else {
         client_printcolor(id, "/g[ZP] /yVoce soh pode comprar Survivor %s.", value ? "Depois da Infeccao":"Antes da Infeccao")
         return ZV_PLUGIN_HANDLED
      }
   }
   return 1
}

stock client_printcolor(const id, const input[], any:...)
{
   new iCount = 1, iPlayers[32]
   
   static szMsg[191]
   vformat(szMsg, charsmax(szMsg), input, 3)
   
   replace_all(szMsg, 190, "/g", "^4") // green txt
   replace_all(szMsg, 190, "/y", "^1") // orange txt
   replace_all(szMsg, 190, "/ctr", "^3") // team txt
   replace_all(szMsg, 190, "/w", "^0") // team txt
   
   if(id) iPlayers[0] = id
   else get_players(iPlayers, iCount, "ch")
      
   for (new i = 0; i < iCount; i++)
   {
      if (is_user_connected(iPlayers[i]))
      {
         message_begin(MSG_ONE_UNRELIABLE, g_msgSayText, _, iPlayers[i])
         write_byte(iPlayers[i])
         write_string(szMsg)
         message_end()
      }
   }
}


O De Comprar Sniper e Assassino (Caso você queira):

Código:

#include <amxmodx>
#include <zombie_plague_advance
#include <zmvip>

#define PLUGIN "[ZP] Compra de Sniper e Assassin"
#define VERSION "1.1"
#define AUTHOR "aaarnas"

new g_msgSayText
new assassin, sniper
new g_bought[33], bought
new cvar_n_price, cvar_s_price, cvar_limit_all, cvar_everytime, cvar_show_bought, cvar_allow_times

public plugin_init() {
   register_plugin(PLUGIN, VERSION, AUTHOR)
   cvar_everytime = register_cvar("zp_allow_buy", "0")      // 0 - Comprar antes da infeccao, 1 - Comprar depois da infeccao, 2 - Comprar em ambas ocasiões
   cvar_allow_times = register_cvar("zp_allow_times", "999")   // Limite de compras por mapa
   cvar_limit_all = register_cvar("zp_limit_for_all", "999")   // Eu acho que eh quantos players pode comprar por round
   cvar_n_price = register_cvar("zp_assassin_price", "75")      // Preco do assassino
   cvar_s_price = register_cvar("zp_sniper_price", "75")      // Preco do sniper
   cvar_show_bought = register_cvar("zp_show_who_bought", "1")   // Mostrar quem comprou o que (0 - Desligado, 1 - Ligado)
   
   g_msgSayText = get_user_msgid("SayText")
   
   // Extra items
   assassin = zv_register_extra_item("Comprar Assassino", "Vai encarar!!", get_pcvar_num(cvar_n_price), 0)
   sniper = zv_register_extra_item("Comprar Sniper","Sera que vo dar conta?", get_pcvar_num(cvar_s_price), 0)
}

public zp_round_ended()
   bought = false

public zv_extra_item_selected(id, itemid) {
   
   new value = get_pcvar_num(cvar_everytime)
   
   if(itemid == assassin) {
      
      if(get_pcvar_num(cvar_limit_all) && bought) {
         client_printcolor(id, "/g[ZP] /yNao pode comprar mais nada nesse round. Tente no proximo.")
         return ZV_PLUGIN_HANDLED
      }
      if(g_bought[id] >= get_pcvar_num(cvar_allow_times)) {
         client_printcolor(id, "/g[ZP] /yVoce nao pode compra mais nada porque ja compraram %d mods. Agora soh no prox mapa.", get_pcvar_num(cvar_allow_times))
         return ZV_PLUGIN_HANDLED
      }
      if(value == 2) {
         zp_make_user_assassin(id)
         new name[64]
         get_user_name(id, name, 63)
         client_printcolor(0, "/g[ZP] /yO Jogador /g%s /yComprou Assassino", name)
         g_bought[id]++
      }
      else if(zp_has_round_started() == value) {
         zp_make_user_assassin(id)
         if(get_pcvar_num(cvar_show_bought)) {
            new name[64]
            get_user_name(id, name, 63)
            client_printcolor(0, "/g[ZP] /yO Jogador /g%s /yComprou Assassino", name)
            g_bought[id]++
            bought = true
         }
      }
      else {
         client_printcolor(id, "/g[ZP] /yVoce soh pode compra Assassino %s.", value ? "Depois da Infeccao":"Antes da infeccao")
         return ZV_PLUGIN_HANDLED
      }
   }
   else if(itemid == sniper) {
      
      if(get_pcvar_num(cvar_limit_all) && bought) {
         client_printcolor(id, "/g[ZP] /yNao pode comprar mais nada nesse round. Tente no proximo.")
         return ZV_PLUGIN_HANDLED
      }
      if(g_bought[id] >= get_pcvar_num(cvar_allow_times)) {
         client_printcolor(id, "/g[ZP] /yVoce nao pode compra mais nada porque ja compraram %d mods. Agora soh no prox mapa.", get_pcvar_num(cvar_allow_times))
         return ZV_PLUGIN_HANDLED
      }
      if(value == 2) {
         zp_make_user_sniper(id)
         new name[64]
         get_user_name(id, name, 63)
         client_printcolor(0, "/g[ZP] /yO Jogador /g%s /yComprou Sniper", name)
         g_bought[id]++
      }
      else if(zp_has_round_started() == value) {
         zp_make_user_sniper(id)
         if(get_pcvar_num(cvar_show_bought)) {
            new name[64]
            get_user_name(id, name, 63)
            client_printcolor(0, "/g[ZP] /yO Jogador /g%s /yComprou Sniper", name)
            g_bought[id]++
            bought = true
         }
      }
      else {
         client_printcolor(id, "/g[ZP] /yVoce soh pode comprar Sniper %s.", value ? "Depois da Infeccao":"Antes da Infeccao")
         return ZV_PLUGIN_HANDLED
      }
   }
   return 1
}

stock client_printcolor(const id, const input[], any:...)
{
   new iCount = 1, iPlayers[32]
   
   static szMsg[191]
   vformat(szMsg, charsmax(szMsg), input, 3)
   
   replace_all(szMsg, 190, "/g", "^4") // green txt
   replace_all(szMsg, 190, "/y", "^1") // orange txt
   replace_all(szMsg, 190, "/ctr", "^3") // team txt
   replace_all(szMsg, 190, "/w", "^0") // team txt
   
   if(id) iPlayers[0] = id
   else get_players(iPlayers, iCount, "ch")
      
   for (new i = 0; i < iCount; i++)
   {
      if (is_user_connected(iPlayers[i]))
      {
         message_begin(MSG_ONE_UNRELIABLE, g_msgSayText, _, iPlayers[i])
         write_byte(iPlayers[i])
         write_string(szMsg)
         message_end()
      }
   }
}

description[PEDIDO]plugin survivor e nemesis EmptyRe: [PEDIDO]plugin survivor e nemesis

more_horiz
privacy_tip Permissões neste sub-fórum
Não podes responder a tópicos
power_settings_newInicie sessão para responder