Mais funcoes de Troca de AmmoPack
Fichas de 5 em 5 minutos
Comandos de acesso ' /mdf , /menudefichas , fichas '
Sem propaganda quando posta "Voce ganhou uma Ficha... blablabla ... // Addonszm . blogspot . com"
e otras funcoes.
*Creditos na SMA
Sma:
- Código:
#include <amxmodx>
#include <amxmisc>
#include <zombieplague>
#include <nvault>
#include <zp_colored_print>
#define PLUGIN_NAME "Sistema de Fichas v3"
#define PLUGIN_VERSION "3.0"
#define PLUGIN_AUTHOR "TheTNT"
#define PLUGIN_CREATORS "Biel-oGrande e T.Armg"
new ticket[33];
new g_vault;
new szText[555 char]
public plugin_init() {
register_plugin("PLUGIN_NAME", "PLUGIN_VERSION", "PLUGIN_AUTHOR");
register_clcmd("say /mdf", "TicketCMD");
register_clcmd("say /fichas", "TicketCMD");
register_clcmd("say /menudefichas", "TicketCMD");
g_vault = nvault_open("Sistema_de_FichasV3");
}
public SaveData(id)
{
new szName[35];
get_user_name(id, szName, 34);
new vaultkey[64], vaultdata[256];
format(vaultkey,63,"%s-TicketTuto",szName);
format(vaultdata,255,"%i#",ticket[id]);
nvault_set(g_vault,vaultkey,vaultdata);
return PLUGIN_CONTINUE;
}
public LoadData(id)
{
new szName[35];
get_user_name(id, szName, 34);
new vaultkey[64],vaultdata[256];
format(vaultkey,63,"%s-TicketTuto",szName);
format(vaultdata,255,"%i#",ticket[id]);
nvault_get(g_vault,vaultkey,vaultdata,255);
replace_all(vaultdata, 255, "#", " ");
new tckt[32];
parse(vaultdata, tckt, 31);
ticket[id] = str_to_num(tckt);
return PLUGIN_CONTINUE
}
public client_connect(id)
{
LoadData(id)
}
public client_disconnect(id)
{
remove_task(id)
SaveData(id)
}
public client_putinserver(id)
{
set_task(300.0, "TicketADD", id, _, _, "b")
}
public TicketADD(id)
{
ticket[id]++
zp_colored_print(id, "!g[ZP]!tVoce arrecadou !y1 !tFicha. Confira no Menu de Fichas.")
SaveData(id)
}
public TicketCMD(id)
{
set_hudmessage(18, 183, 238, 0.02, 0.2, 0, 6.0, 15.0)
show_hudmessage(id, "");
formatex(szText, charsmax(szText), "\rSistema de Fichas \dBETA v3.0^n^n\wVoce Arrecadou \r%i Fichas:^n\rPagina ", ticket[id]);
new menu = menu_create(szText, "tickshandl")
menu_additem(menu, "\d[\r5 Fichas\d]\w>\d[\r10 AmmoPacks\d]", "1", 0);
menu_additem(menu, "\d[\r10 Fichas\d]\w>\d[\r22 AmmoPacks\d]", "2", 0);
menu_additem(menu, "\d[\r25 Fichas\d]\w>\d[\r61 AmmoPacks\d]", "3", 0);
menu_additem(menu, "\d[\r50 Fichas\d]\w>\d[\r114 AmmoPacks\d]", "4", 0);
menu_additem(menu, "\d[\r75 Fichas\d]\w>\d[\r174 AmmoPacks\d]", "5", 0);
menu_additem(menu, "\d[\r100 Fichas\d]\w>\d[\r240 AmmoPacks\d]", "6", 0);
menu_additem(menu, "\d[\r150 Fichas\d]\w>\d[\r400 AmmoPacks\d]", "7", 0);
menu_additem(menu, "\d[\r200 Fichas\d]\w>\d[\r650 AmmoPacks\d]", "8", 0);
menu_additem(menu, "\d[\r500 Fichas\d]\w>\d[\r1500 AmmoPacks\d]", "9", 0);
menu_additem(menu, "\d[\r1000 Fichas\d]\w>\d[\r5000 AmmoPacks\d]", "10", 0);
menu_setprop(menu, MPROP_EXITNAME, "Sair");
menu_display(id, menu, 0);
}
public tickshandl(id, menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}
new data[6], iName[64]
new access, callback
menu_item_getinfo(menu, item, access, data, 5, iName, 63, callback)
new user_ammo = zp_get_user_ammo_packs(id);
switch(str_to_num(data))
{
case 1:
{
if(is_user_alive(id)) {
if(ticket[id] < 5) {
zp_colored_print(id, "!g[ZP]!tVoce nao tem fichas suficiente");TicketCMD(id);
set_hudmessage(255, 0, 0, 0.02, 0.16, 0, 6.0, 12.0)
show_hudmessage(id, "Voce nao tem fichas suficiente")
return PLUGIN_HANDLED;
} else {
zp_set_user_ammo_packs(id, user_ammo+10);
ticket[id] -= 5;zp_colored_print(id, "!g[ZP]!tVoce adquiriu !y10 !gAmmo Packs");TicketCMD(id);
set_hudmessage(0, 255, 0, 0.02, 0.16, 0, 6.0, 12.0)
show_hudmessage(id, "Voce adquiriu 10 Ammo Packs")
}
}
}
case 2:
{
if(is_user_alive(id)) {
if(ticket[id] < 10) {
zp_colored_print(id, "!g[ZP]!tVoce nao tem fichas suficiente");TicketCMD(id);
set_hudmessage(255, 0, 0, 0.02, 0.16, 0, 6.0, 12.0)
show_hudmessage(id, "Voce nao tem fichas suficiente")
return PLUGIN_HANDLED;
} else {
zp_set_user_ammo_packs(id, user_ammo+22);
ticket[id] -= 10;zp_colored_print(id, "!g[ZP]!tVoce adquiriu !y20 !gAmmo Packs");TicketCMD(id);
set_hudmessage(0, 255, 0, 0.02, 0.16, 0, 6.0, 12.0)
show_hudmessage(id, "Voce adquiriu 20 Ammo Packs")
}
}
}
case 3:
{
if(is_user_alive(id)) {
if(ticket[id] < 25) {
zp_colored_print(id, "!g[ZP]!tVoce nao tem fichas suficiente");TicketCMD(id);
set_hudmessage(255, 0, 0, 0.02, 0.16, 0, 6.0, 12.0)
show_hudmessage(id, "Voce nao tem fichas suficiente")
return PLUGIN_HANDLED;
} else {
zp_set_user_ammo_packs(id, user_ammo+61);
ticket[id] -= 25;zp_colored_print(id, "!g[ZP]!tVoce adquiriu !y50 !gAmmo Packs");TicketCMD(id);
set_hudmessage(0, 255, 0, 0.02, 0.16, 0, 6.0, 12.0)
show_hudmessage(id, "Voce adquiriu 50 Ammo Packs")
}
}
}
case 4:
{
if(is_user_alive(id)) {
if(ticket[id] < 50) {
zp_colored_print(id, "!g[ZP]!tVoce nao tem fichas suficiente");TicketCMD(id);
set_hudmessage(255, 0, 0, 0.02, 0.16, 0, 6.0, 12.0)
show_hudmessage(id, "Voce nao tem fichas suficiente")
return PLUGIN_HANDLED;
} else {
zp_set_user_ammo_packs(id, user_ammo+114);
ticket[id] -= 50;zp_colored_print(id, "!g[ZP]!tVoce adquiriu !y100 !gAmmo Packs");TicketCMD(id);
set_hudmessage(0, 255, 0, 0.02, 0.16, 0, 6.0, 12.0)
show_hudmessage(id, "Voce adquiriu 100 Ammo Packs")
}
}
}
case 5:
{
if(is_user_alive(id)) {
if(ticket[id] < 75) {
zp_colored_print(id, "!g[ZP]!tVoce nao tem fichas suficiente");TicketCMD(id);
set_hudmessage(255, 0, 0, 0.02, 0.16, 0, 6.0, 12.0)
show_hudmessage(id, "Voce nao tem fichas suficiente")
return PLUGIN_HANDLED;
} else {
zp_set_user_ammo_packs(id, user_ammo+174);
ticket[id] -= 75;zp_colored_print(id, "!g[ZP]!tVoce adquiriu !y150 !gAmmo Packs");TicketCMD(id);
set_hudmessage(0, 255, 0, 0.02, 0.16, 0, 6.0, 12.0)
show_hudmessage(id, "Voce adquiriu 150 Ammo Packs")
}
}
}
case 6:
{
if(is_user_alive(id)) {
if(ticket[id] < 100) {
zp_colored_print(id, "!g[ZP]!tVoce nao tem fichas suficiente");TicketCMD(id);
set_hudmessage(255, 0, 0, 0.02, 0.16, 0, 6.0, 12.0)
show_hudmessage(id, "Voce nao tem fichas suficiente")
return PLUGIN_HANDLED;
} else {
zp_set_user_ammo_packs(id, user_ammo+240);
ticket[id] -= 100;zp_colored_print(id, "!g[ZP]!tVoce adquiriu !y200 !gAmmo Packs");TicketCMD(id);
set_hudmessage(0, 255, 0, 0.02, 0.16, 0, 6.0, 12.0)
show_hudmessage(id, "Voce adquiriu 200 Ammo Packs")
}
}
}
case 7:
{
if(is_user_alive(id)) {
if(ticket[id] < 150) {
zp_colored_print(id, "!g[ZP]!tVoce nao tem fichas suficiente");TicketCMD(id);
set_hudmessage(255, 0, 0, 0.02, 0.16, 0, 6.0, 12.0)
show_hudmessage(id, "Voce nao tem fichas suficiente")
return PLUGIN_HANDLED;
} else {
zp_set_user_ammo_packs(id, user_ammo+400);
set_hudmessage(0, 255, 0, 0.02, 0.16, 0, 6.0, 12.0)
show_hudmessage(id, "Voce adquiriu 250 Ammo Packs")
ticket[id] -= 125;zp_colored_print(id, "!g[ZP]!tVoce adquiriu !y250 !gAmmo Packs");TicketCMD(id);
}
}
}
case 8:
{
if(is_user_alive(id)) {
if(ticket[id] < 200) {
zp_colored_print(id, "!g[ZP]!tVoce nao tem fichas suficiente");TicketCMD(id);
set_hudmessage(255, 0, 0, 0.02, 0.16, 0, 6.0, 12.0)
show_hudmessage(id, "Voce nao tem fichas suficiente")
return PLUGIN_HANDLED;
} else {
zp_set_user_ammo_packs(id, user_ammo+650);
set_hudmessage(0, 255, 0, 0.02, 0.16, 0, 6.0, 12.0)
show_hudmessage(id, "Voce adquiriu 650 Ammo Packs")
ticket[id] -= 125;zp_colored_print(id, "!g[ZP]!tVoce adquiriu !y650 !gAmmo Packs");TicketCMD(id);
}
}
}
case 9:
{
if(is_user_alive(id)) {
if(ticket[id] < 500) {
zp_colored_print(id, "!g[ZP]!tVoce nao tem fichas suficiente");TicketCMD(id);
set_hudmessage(255, 0, 0, 0.02, 0.16, 0, 6.0, 12.0)
show_hudmessage(id, "Voce nao tem fichas suficiente")
return PLUGIN_HANDLED;
} else {
zp_set_user_ammo_packs(id, user_ammo+1500);
set_hudmessage(0, 255, 0, 0.02, 0.16, 0, 6.0, 12.0)
show_hudmessage(id, "Voce adquiriu 1500 Ammo Packs")
ticket[id] -= 125;zp_colored_print(id, "!g[ZP]!tVoce adquiriu !y1500 !gAmmo Packs");TicketCMD(id);
}
}
}
case 10:
{
if(is_user_alive(id)) {
if(ticket[id] < 1000) {
zp_colored_print(id, "!g[ZP]!tVoce nao tem fichas suficiente");TicketCMD(id);
set_hudmessage(255, 0, 0, 0.02, 0.16, 0, 6.0, 12.0)
show_hudmessage(id, "Voce nao tem fichas suficiente")
return PLUGIN_HANDLED;
} else {
zp_set_user_ammo_packs(id, user_ammo+5000);
set_hudmessage(0, 255, 0, 0.02, 0.16, 0, 6.0, 12.0)
show_hudmessage(id, "Voce adquiriu 5000 Ammo Packs")
ticket[id] -= 125;zp_colored_print(id, "!g[ZP]!tVoce adquiriu !y5000 !gAmmo Packs");TicketCMD(id);
}
}
}
case 11:
{
TicketCMD(id)
}
}
menu_destroy(menu)
return PLUGIN_HANDLED
}
Última edição por MasterUnltd em 27/12/2013, 6:38 pm, editado 1 vez(es)