Zumbis Online
Últimos assuntos
» [NPC] Jack Boss [Full Skills]
por [Dk]Serial-Killer 13/7/2018, 1:05 am

» [ZP] Register + Login (HUD CUSTOM) - UPDATE
por zgd.dll 6/7/2018, 2:24 am

» [NPC] Jack Boss [BETA]
por [Dk]Serial-Killer 4/7/2018, 11:31 pm

» hud icon position
por [Dk]Serial-Killer 4/7/2018, 3:48 pm

» [NPC]boss Dione V2
por [Dk]Serial-Killer 30/6/2018, 4:50 pm

» [ZP] Register + Login Custom
por [Dk]Serial-Killer 25/6/2018, 9:00 pm

» [ZP] Novo modelo de ajudante do primeiro zombie
por cancels 24/6/2018, 7:57 pm

» MENU H
por cancels 23/6/2018, 7:07 pm

» [PEDIDO] Bloqueando M2 no ZP 5.0
por cancels 12/6/2018, 6:06 pm

» [NPC] Light Zombie (REBOOT Beta)
por cancels 10/6/2018, 1:36 pm

Frases filosóficas Zplague:
....
Os membros mais ativos da semana

Adsense

[PEDIDO] Item Limiter

Ir em baixo

[PEDIDO] Item Limiter

Mensagem por PRODARK em 13/5/2018, 9:03 am

Salve galera, preciso de um plugin que limita quantidade de compras por round no M2 só que achei apenas para  versão ZP 5.0
Gostaria desse mesmo plugin só que editado para ser usado no ZP 4.3

Plugin original: https://forums.alliedmods.net/showthread.php?t=242103

SMA possui poucas linhas:
Código:
#include <amxmodx>
#include <amxmisc>
#include <amx_settings_api>
#include <zp50_core>
#include <zp50_items>

#define PLUGIN "[ZP50] Class unlocker"
#define VERSION "1.1"
#define AUTHOR "Catastrophe"

#define MAX_LIST 128
#define PLUGIN_MODE 1

new const EXTRAS_FILE[] = "zp_extra_limit.ini"

new Array:extra_id
new Array:extra_limit

#if defined PLUGIN_MODE 1
new extra_count[33][MAX_LIST]
#endif

#if defined PLUGIN_MODE 2
new extra_count_global[MAX_LIST]
#endif

new zpel_cvars[3]

public plugin_init()
{
 register_plugin(PLUGIN, VERSION, AUTHOR)
        register_event("HLTV", "event_newround", "a", "1=0", "2=0")
        register_cvar("ZPEL","1",(FCVAR_SERVER|FCVAR_SPONLY))
 
        zpel_cvars[0] = register_cvar("zp_extra_limit_mode", "0")
}

public plugin_precache()
{
       extra_id = ArrayCreate(64, 1)
       extra_limit = ArrayCreate(4, 1)
      
       amx_load_setting_string_arr(EXTRAS_FILE, "LIMIT", "item_id", extra_id)
       amx_load_setting_string_arr(EXTRAS_FILE, "LIMIT", "item_limit", extra_limit)

}

public event_newround()
{
       if(get_pcvar_num(zpel_cvars[0]) != 0)
       return

       #if defined PLUGIN_MODE 1
       for(new i = 1; i <= get_maxplayers(); i++)
       {
             arrayset(extra_count[i], 0, MAX_LIST - 1)
       }
       #endif
    
       #if defined PLUGIN_MODE 2
       for(new j = 0; j <= MAX_LIST - 1; j++)
       {
             extra_count_global[j] = 0
       }
       #endif
}

public zp_fw_items_select_pre(id, itemid, ignorecost)
{
    new txt[32]

    for(new i = 0; i <= ArraySize(extra_id) - 1; i++)
    {
        new e_id[64], e_lim[4]
        new e_lim_num
        ArrayGetString(extra_id, i, e_id, charsmax(e_id))
        ArrayGetString(extra_limit, i, e_lim, charsmax(e_lim))
        e_lim_num = str_to_num(e_lim)
 
        if(itemid == zp_items_get_id(e_id))
        {
               #if defined PLUGIN_MODE 1
      if(extra_count[id][i] >= e_lim_num)
      {
      format(txt, charsmax(txt), "\d[%d/%d]", extra_count[id][i],e_lim_num)
      zp_items_menu_text_add(txt)
      return ZP_ITEM_NOT_AVAILABLE
      }

              else
              {
              format(txt, charsmax(txt), "\w[%d/%d]", extra_count[id][i],e_lim_num)
      zp_items_menu_text_add(txt)
      return ZP_ITEM_AVAILABLE
              }
     #endif
    
    #if defined PLUGIN_MODE 2
      if(extra_count_global[i] >= e_lim_num)
      {
      format(txt, charsmax(txt), "\d[%d/%d]", extra_count[i],e_lim_num)
      zp_items_menu_text_add(txt)
      return ZP_ITEM_NOT_AVAILABLE
      }

              else
              {
              format(txt, charsmax(txt), "\w[%d/%d]", extra_count[i],e_lim_num)
      zp_items_menu_text_add(txt)
      return ZP_ITEM_AVAILABLE
              }
     #endif
        }
 
    }
    return ZP_ITEM_AVAILABLE
}

public zp_fw_items_select_post(id, itemid, ignorecost)
{
    
    for(new i = 0; i <= ArraySize(extra_id) - 1; i++)
    {
        new e_id[64]
        ArrayGetString(extra_id, i, e_id, charsmax(e_id))

        if(itemid == zp_items_get_id(e_id))
        {    
   #if defined PLUGIN_MODE 1
            extra_count[id][i]++      
   #endif
  
   #if defined PLUGIN_MODE 2
            extra_count_global[i]++      
   #endif
        }
    }
}
avatar
PRODARK
Humano
Humano

Masculino Número de Mensagens : 1
Ammo Packs : 385
Honra : 0
Data de inscrição : 25/06/2017

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: [PEDIDO] Item Limiter

Mensagem por cancels em 10/6/2018, 1:29 pm

tenta usar o plugin amxx dele ao invés do .sma por que provavelmente o zp50_item dele esta com includes diferente do seu;
avatar
cancels
Humano
Humano

Nick : ByVodka
Masculino Número de Mensagens : 66
Woow!!
Ammo Packs : 370
Honra : 1
Data de inscrição : 24/06/2017

Ver perfil do usuário http://steamcommunity.com/id/IByVodka/ thallescintra

Voltar ao Topo Ir em baixo

Voltar ao Topo


 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum