[ZP] Regalitos v2.0 (CON/SIN ADV_VAULT)
#1
Regalitos v2 (CON/SIN ADV_VAULT)


Hola le vengo a aportar el sistema de regalitos de kikizon

Solo le agregue que al agarrar una caja almacena los regalos para despues abrirlo con un menu y el guardado adv_vault

Este es el post original que es de kikizon2

Regalitos :3

Codigo de fuente:

Con Guardado (ADV_VAULT):
Código PHP:
/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <zombieapocalypse>
#include <adv_vault>

#define PLUGIN "regalitos"
#define VERSION "2.0"
#define AUTHOR "kikizon"

#define FLAGS ADMIN_IMMUNITY

// Variables
new g_trailSprg_msgScreenFadeg_regalitos
new cvar_activadocvar_limitecvar_new_roundcvar_colors
new bool:can_pickup[33]

new 
g_regalo[33]
new 
g_abiertos[33]

new 
g_playername[33][32], g_maxplayers

new g_vault

enum
{
    
CAMPO_REGALOS,
    
CAMPO_REGALOS_ABIERTOS,
    
CAMPO_MAX
}
new 
g_campos[CAMPO_MAX]

// Models y Sonidos
new MDL[] = "models/regalito.mdl"
new SND[] = "regalitos_pickup.wav"
new TRAIL[] = "sprites/laserbeam.spr"

public plugin_init() {
    
register_plugin(PLUGINVERSIONAUTHOR)
    
    
register_clcmd("say /regalitos""show_menu_regalos")
    
register_clcmd("say_team /regalitos""show_menu_regalos")
    
register_clcmd("regalitos""show_menu_regalos")
    
    
register_forward(FM_Touch"player_Touch")
        
    
register_logevent("round_start"2"1=Round_Start")
        
    
cvar_activado register_cvar("regalitos_activado","1"// Activar o desactivar el plugin
    
cvar_new_round register_cvar("regalitos_remover","1"// Remover Regalitos en nueva ronda
    
cvar_colors register_cvar("regalitos_colores","5"// Colores de Regalitos   ( 1=Blanco 2=Rojo 3=Verde 4=Azul 5=Random)
    
cvar_limite register_cvar("regalitos_limite","100"// Limite de Regalitos
    
    
set_task(72.0"anuncio"100_,_"b")
    
set_task(1.0"check_status"20000_,_"b")
    
    
g_maxplayers get_maxplayers()
    
    
g_vault adv_vault_open("REGALOS"false)
    
g_campos[CAMPO_REGALOS] = adv_vault_register_field(g_vault"REGALOS")
    
g_campos[CAMPO_REGALOS_ABIERTOS] = adv_vault_register_field(g_vault"REGALOS ABIERTOS")
    
adv_vault_init(g_vault)    
    
    
g_msgScreenFade get_user_msgid("ScreenFade")
}
public 
plugin_precache()  {
    
precache_model(MDL)
    
precache_sound(SND)
    
g_trailSpr engfunc(EngFunc_PrecacheModelTRAIL)
}
public 
client_putinserver(id
{
    
get_user_nameidg_playername[id], charsmax(g_playername[]))
    
can_pickup[id] = true
    g_regalo
[id] = 0
    
    Cargar
(id)
}

public 
client_disconnect(id)

    
can_pickup[id] = false
    
    Guardar
(id)
}

public 
round_start() 
{
    if(
get_pcvar_num(cvar_new_round))
        
remover()    
}
public 
anuncio() 
    
client_print_color(0"!g[amxmodx-es.com] !tSistema de Regalitos !g%s !tby: !g%s"VERSIONAUTHOR)

public 
reset_pick(id
    
can_pickup[id] = true

public check_status() {    
    if(!
get_pcvar_num(cvar_activado)) 
        
remover()
}

public 
remover() {    
    new 
ent = -1
    
while ((ent engfunc(EngFunc_FindEntityByStringent"classname""regalitos_volando")) != 0) {
        
engfunc(EngFunc_RemoveEntityent)
        
g_regalitos 0
    
}
}

public 
show_menu_regalitos(id
{
    new 
Menu menu_create("\wSOLTAR \yREGALITOS","menu_regalitos")
    
    
menu_additem(Menu"\wSOLTAR""1")
    
menu_additem(Menu"\wREMOVER REGALITOS""2")
    
menu_additem(Menu"\WSELECCIONAR REGALOS""3")
    
    
menu_setprop(MenuMPROP_EXITMEXIT_NORMAL)
    
menu_display(idMenu0)
}

public 
menu_regalitos(idMenuitem
{
    if(
item == MENU_EXIT
    {
        
menu_destroy(Menu)
        return 
PLUGIN_HANDLED
    
}
    if(!(
get_user_flags(id) & FLAGS) || !get_pcvar_num(cvar_activado)) return PLUGIN_HANDLED
    
    
switch(item
    {
        case 
0dropear(id), show_menu_regalitos(id)
        case 
1remover(), show_menu_regalitos(id)
        case 
2show_menu_colores(id)
    }
    return 
PLUGIN_HANDLED
}

public 
show_menu_colores(id) {
    new 
Menu menu_create("\wCOLOR DE \yTRAIL""menu_colores")
    
    
menu_additem(Menu"BLANCO""1")
    
menu_additem(Menu"ROJO""2")
    
menu_additem(Menu"VERDE""3")
    
menu_additem(Menu"AZUL^n""4")
    
menu_additem(Menu"RANDOM""5")
    
    
menu_setprop(MenuMPROP_EXITMEXIT_NORMAL)
    
menu_display(idMenu0)
}
public 
menu_colores(idMenuitem) {
    if(
item == MENU_EXIT) {
        
menu_destroy(Menu)
        return 
PLUGIN_HANDLED
    
}
    switch(
item) {
        case 
0server_cmd("regalitos_colores 1")
        case 
1server_cmd("regalitos_colores 2")
        case 
2server_cmd("regalitos_colores 3")
        case 
3server_cmd("regalitos_colores 4")
        case 
4server_cmd("regalitos_colores 5")
    }
    
show_menu_regalitos(id)
    return 
PLUGIN_HANDLED
}
public 
dropear(id) {
    if(!
is_user_alive(id)) return PLUGIN_HANDLED
    
    
if(g_regalitos >= get_pcvar_num(cvar_limite)) {
        
set_hudmessage(255000.00.8016.012.0)
        
show_hudmessage(id"Limite de regalitos alcanzado")
        return 
PLUGIN_HANDLED
    
}
    if(
can_pickup[id] != false) {
        
can_pickup[id] = false
        set_task
(0.1"reset_pick"id)
        
        new 
Float:Speed[3]
        
velocity_by_aim(id10 100Speed)
        
dropear2(idSpeed)
        
g_regalitos++
        
        
set_hudmessage(025500.00.8016.012.0)
        
show_hudmessage(id"Regalitos en mapa: %d"g_regalitos)
    }
    return 
PLUGIN_HANDLED
}
public 
dropear2(idFloat:Speed[]) {
    new 
ent engfunc(EngFunc_CreateNamedEntityengfunc(EngFunc_AllocString"info_target"))
    
    new 
Float:origin[3]
    
pev(idpev_originorigin)
    
set_pev(entpev_originorigin)
    
    
Speed[2] += 100.0
    set_pev
(entpev_velocitySpeed)
    
    new 
Float:angles[3]
    
pev(entpev_angles,angles)
    
angles[1] += random_num(1,360)
    
set_pev(entpev_anglesangles)
    
    
set_pev(entpev_classname"regalitos_volando")
    
engfunc(EngFunc_SetModelentMDL)
    
engfunc(EngFunc_SetSizeentFloat:{-2.79, -0.0, -6.14}, Float:{2.421.996.35})
    
set_pev(entpev_solidSOLID_TRIGGER)
    
set_pev(entpev_movetypeMOVETYPE_BOUNCE)
    
engfunc(EngFunc_DropToFloorent)
    
    
colores(ent)    
}
public 
colores(ent) {
    
set_pev(entpev_renderfxkRenderFxGlowShell)
    
    new 
cvar get_pcvar_num(cvar_colors)
    new 
rgb
    
    
if(cvar == 1) {
        
set_pev(entpev_rendercolorFloat:{255.0255.0255.0})
        
255
        g 
255
        b 
255
    
}
    else if(
cvar == 2) {
        
set_pev(entpev_rendercolorFloat:{255.0000.0000.0})
        
255
        g 
0
        b 
0
    
}
    else if(
cvar == 3) {
        
set_pev(entpev_rendercolorFloat:{000.0255.0000.0})
        
000
        g 
255
        b 
000
    
}
    else if(
cvar == 4) {
        
set_pev(entpev_rendercolorFloat:{000.0000.0255.0})
        
000
        g 
000
        b 
255
    
} else {
        switch (
random(4)) {    
            case 
0: {
                
set_pev(entpev_rendercolorFloat:{255.0255.0255.0})
                
255
                g 
255
                b 
255
            
}
            case 
1: {
                
set_pev(entpev_rendercolorFloat:{255.0000.0000.0})
                
255 
                g 
000
                b 
000
            
}
            case 
2:{
                
set_pev(entpev_rendercolorFloat:{000.0255.0000.0})
                
000
                g 
255
                b 
000
            
}
            case 
3: {
                
set_pev(entpev_rendercolorFloat:{000.0000.0255.0})
                
000
                g 
000
                b 
255
            
}
        }
    }    
    
message_begin(MSG_BROADCASTSVC_TEMPENTITY)
    
write_byte(TE_BEAMFOLLOW)
    
write_short(ent)
    
write_short(g_trailSpr)
    
write_byte(5)
    
write_byte(1)
    
write_byte(r)
    
write_byte(g)
    
write_byte(b)
    
write_byte(255)
    
message_end()
}
public 
screen_fade(id) {
    
message_begin(MSG_ONEg_msgScreenFade, {000}, id
    
write_short(1<<12)
    
write_short(1<<12)
    
write_short(1<<12)
    
write_byte(200)
    
write_byte(200)
    
write_byte(200)
    
write_byte(20)
    
message_end()
}
public 
player_Touch(entid) { 
    if(!
pev_valid(ent) || !is_user_alive(id) ||  !get_pcvar_num(cvar_activado) || !can_pickup[id]) return FMRES_IGNORED
    
    
new classname[32]
    
pev(entpev_classnameclassnamecharsmax(classname))
    
    if(
equali(classname"regalitos_volando")) {
        
g_regalitos--
        
g_regalo[id]++
        
client_print_color(id"!g[amxmodx-es.com] Agarraste un regalo"
        
screen_fade(id)
        
emit_sound(idCHAN_AUTOSND1.0ATTN_NORM0PITCH_NORM)
        
        if(
pev_valid(ent)) {
            
engfunc(EngFunc_RemoveEntityent)    
        }
    }
    return 
FMRES_IGNORED
}
stock client_print_color(const id, const input[], any:...) {
    new 
count 1players[32]
    static 
msg[191]
    
vformat(msg190input3)
    
    
replace_all(msg190"!g""^4")
    
replace_all(msg190"!y""^1")
    
replace_all(msg190"!t""^3")
    
replace_all(msg190"!team2""^0")
    
    if(
id)
        
players[0] = id;
    else
        
get_players(playerscount"ch")
    
    for (new 
0counti++) {
        if(
is_user_connected(players[i])) {
            
message_begin(MSG_ONE_UNRELIABLEget_user_msgid("SayText"), _players[i])
            
write_byte(players[i]);
            
write_string(msg);
            
message_end();
        }
    }
}

// En esta funcion se define el regalo que se le dara al que toque un regalito
public give_item(id)
{
    new 
AP random_num(23008300)
    new 
PH random_num(333)
    new 
PZ random_num(333)
    new 
EXP random_num(23008300)
    
    switch (
random_num(0500)) 
    {
        case 
0..100
        {
            
client_print_color(id"!g[amxmodx-es.com]!t Abriste un regalo, Ganaste !g+%d !tAP"AP)
            
zp_set_user_ammo_packs(idzp_get_user_ammo_packs(id) + AP)
        }
        case 
101..200
        {
            
client_print_color(id"!g[amxmodx-es.com]!t Abriste un regalo, Ganaste !g+%d !tPH"PH)
            
za_set_user_hpoints(idza_get_user_hpoints(id) + PH)
        }
        case 
201..300
        {
            
client_print_color(id"!g[amxmodx-es.com]!t Abriste un regalo, Ganaste !g+%d !tPZ"PZ)
            
za_set_user_zpoints(idza_get_user_zpoints(id) + PZ)
        }
        case 
301..400:
        {
            
client_print_color(id"!g[amxmodx-es.com]!t Abriste un regalo, Ganaste !g+%d !tEXP"EXP)
            
za_set_user_experience(idza_get_user_experience(id) + EXP)
            
        }
        case 
401..500:
        {
            
client_print_color(id"!g[amxmodx-es.com] Mala suerte, el regalo no contenia nada")
        }
    }
}


public 
show_menu_regalos(id
{    
    static 
item[128]
    
    
formatex(itemcharsmax(item), "\wMENU DE \yREGALOS^n\wREGALOS DISPONIBLES\r: \d%d^n\wREGALOS ABIERTOS\r: \d%d"g_regalo[id], g_abiertos[id])
    new 
menu menu_create(item"menu_regalo")
    
    if (
g_regalo[id] >= 1)
    {
        
formatex(itemcharsmax(item), "\wABRIR REGALO")
        
menu_additem(menuitem"1")
    }
    else
    {
        
formatex(itemcharsmax(item), "\dABRIR REGALO")
        
menu_additem(menuitem"1")
    }
    
    if (
get_user_flags(id) & FLAGS)
    {
        
menu_additem(menu"\wSOLTAR REGALITOS""2")
    }
    else
    {
        
menu_additem(menu"\wSOLTAR REGALITOS \d(SOLO ADMIN)""2")
    }
    
    
menu_setprop(menuMPROP_EXITNAME"Salir")
    
menu_display(idmenu0)
}

public 
menu_regalo(idmenuitem
{
    if(
item == MENU_EXIT
    {
        
menu_destroy(menu)
        return 
PLUGIN_HANDLED
    
}
    
    switch(
item
    {
        case 
0:
        {
            if (
g_regalo[id] >= 1)
            {
                
give_item(id)
                
g_regalo[id]--
                
g_abiertos[id]++
                
show_menu_regalos(id)
            }
            else
            {
                
client_print_color(0"!g[amxmodx-es.com] No tienes regalos disponibles.")
            }
        }
        case 
1:
        {
            if (
get_user_flags(id) & FLAGS)
            {
                
show_menu_regalitos(id
            }
            else 
            {
                
client_print_color(id"!g[amxmodx-es.com] No tienes acceso, Compra admin para acceder.")
            }
        }
    }
    return 
PLUGIN_HANDLED
}

public 
Guardar(id
{
    
adv_vault_set_start(g_vault)
    
    
adv_vault_set_field(g_vaultg_campos[CAMPO_REGALOS], g_regalo[id])
    
adv_vault_set_field(g_vaultg_campos[CAMPO_REGALOS_ABIERTOS], g_abiertos[id])
    
    
adv_vault_set_end(g_vault0g_playername[id])
}

public 
Cargar(id
{
    if(!
adv_vault_get_prepare(g_vault_g_playername[id])) 
        return
    
    
g_regalo[id] = adv_vault_get_field(g_vaultg_campos[CAMPO_REGALOS])
    
g_abiertos[id] = adv_vault_get_field(g_vaultg_campos[CAMPO_REGALOS_ABIERTOS])


Sin Guardado:
Código PHP:
/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <zombieapocalypse>

#define PLUGIN "Regalitos"
#define VERSION "2.0"
#define AUTHOR "kikizon"

#define FLAGS ADMIN_IMMUNITY

// Variables
new g_trailSprg_msgScreenFadeg_regalitos
new cvar_activadocvar_limitecvar_new_roundcvar_colors
new bool:can_pickup[33]

new 
g_regalo[33]
new 
g_abiertos[33]

new 
g_playername[33][32]

// Models y Sonidos
new MDL[] = "models/regalito.mdl"
new SND[] = "regalitos_pickup.wav"
new TRAIL[] = "sprites/laserbeam.spr"

public plugin_init() {
    
register_plugin(PLUGINVERSIONAUTHOR)
    
    
register_clcmd("say /regalitos""show_menu_regalos")
    
register_clcmd("say_team /regalitos""show_menu_regalos")
    
register_clcmd("regalitos""show_menu_regalos")
    
    
register_forward(FM_Touch"player_Touch")
        
    
register_logevent("round_start"2"1=Round_Start")
        
    
cvar_activado register_cvar("regalitos_activado","1"// Activar o desactivar el plugin
    
cvar_new_round register_cvar("regalitos_remover","1"// Remover Regalitos en nueva ronda
    
cvar_colors register_cvar("regalitos_colores","5"// Colores de Regalitos   ( 1=Blanco 2=Rojo 3=Verde 4=Azul 5=Random)
    
cvar_limite register_cvar("regalitos_limite","100"// Limite de Regalitos
    
    
set_task(72.0"anuncio"100_,_"b")
    
set_task(1.0"check_status"20000_,_"b")
    
    
g_msgScreenFade get_user_msgid("ScreenFade")
}
public 
plugin_precache()  {
    
precache_model(MDL)
    
precache_sound(SND)
    
g_trailSpr engfunc(EngFunc_PrecacheModelTRAIL)
}
public 
client_putinserver(id
{
    
get_user_nameidg_playername[id], charsmax(g_playername[]))
    
can_pickup[id] = true
    g_regalo
[id] = 0
    g_abiertos
[id] = 0
}

public 
client_disconnect(id)
    
can_pickup[id] = false

public round_start() 
{
    if(
get_pcvar_num(cvar_new_round))
        
remover()    
}
public 
anuncio() 
    
client_print_color(0"!g[amxmodx-es.com] !tSistema de Regalitos !g%s !tby: !g%s"VERSIONAUTHOR)

public 
reset_pick(id
    
can_pickup[id] = true

public check_status() {    
    if(!
get_pcvar_num(cvar_activado)) 
        
remover()
}

public 
remover() {    
    new 
ent = -1
    
while ((ent engfunc(EngFunc_FindEntityByStringent"classname""regalitos_volando")) != 0) {
        
engfunc(EngFunc_RemoveEntityent)
        
g_regalitos 0
    
}
}

public 
show_menu_regalitos(id
{
    new 
Menu menu_create("\wSOLTAR \yREGALITOS","menu_regalitos")
    
    
menu_additem(Menu"\wSOLTAR""1")
    
menu_additem(Menu"\wREMOVER REGALITOS""2")
    
menu_additem(Menu"\WSELECCIONAR REGALOS""3")
    
    
menu_setprop(MenuMPROP_EXITMEXIT_NORMAL)
    
menu_display(idMenu0)
}

public 
menu_regalitos(idMenuitem
{
    if(
item == MENU_EXIT
    {
        
menu_destroy(Menu)
        return 
PLUGIN_HANDLED
    
}
    if(!(
get_user_flags(id) & FLAGS) || !get_pcvar_num(cvar_activado)) return PLUGIN_HANDLED
    
    
switch(item
    {
        case 
0dropear(id), show_menu_regalitos(id)
        case 
1remover(), show_menu_regalitos(id)
        case 
2show_menu_colores(id)
    }
    return 
PLUGIN_HANDLED
}

public 
show_menu_colores(id) {
    new 
Menu menu_create("\wCOLOR DE \yTRAIL""menu_colores")
    
    
menu_additem(Menu"BLANCO""1")
    
menu_additem(Menu"ROJO""2")
    
menu_additem(Menu"VERDE""3")
    
menu_additem(Menu"AZUL^n""4")
    
menu_additem(Menu"RANDOM""5")
    
    
menu_setprop(MenuMPROP_EXITMEXIT_NORMAL)
    
menu_display(idMenu0)
}
public 
menu_colores(idMenuitem) {
    if(
item == MENU_EXIT) {
        
menu_destroy(Menu)
        return 
PLUGIN_HANDLED
    
}
    switch(
item) {
        case 
0server_cmd("regalitos_colores 1")
        case 
1server_cmd("regalitos_colores 2")
        case 
2server_cmd("regalitos_colores 3")
        case 
3server_cmd("regalitos_colores 4")
        case 
4server_cmd("regalitos_colores 5")
    }
    
show_menu_regalitos(id)
    return 
PLUGIN_HANDLED
}
public 
dropear(id) {
    if(!
is_user_alive(id)) return PLUGIN_HANDLED
    
    
if(g_regalitos >= get_pcvar_num(cvar_limite)) {
        
set_hudmessage(255000.00.8016.012.0)
        
show_hudmessage(id"Limite de regalitos alcanzado")
        return 
PLUGIN_HANDLED
    
}
    if(
can_pickup[id] != false) {
        
can_pickup[id] = false
        set_task
(0.1"reset_pick"id)
        
        new 
Float:Speed[3]
        
velocity_by_aim(id10 100Speed)
        
dropear2(idSpeed)
        
g_regalitos++
        
        
set_hudmessage(025500.00.8016.012.0)
        
show_hudmessage(id"Regalitos en mapa: %d"g_regalitos)
    }
    return 
PLUGIN_HANDLED
}
public 
dropear2(idFloat:Speed[]) {
    new 
ent engfunc(EngFunc_CreateNamedEntityengfunc(EngFunc_AllocString"info_target"))
    
    new 
Float:origin[3]
    
pev(idpev_originorigin)
    
set_pev(entpev_originorigin)
    
    
Speed[2] += 100.0
    set_pev
(entpev_velocitySpeed)
    
    new 
Float:angles[3]
    
pev(entpev_angles,angles)
    
angles[1] += random_num(1,360)
    
set_pev(entpev_anglesangles)
    
    
set_pev(entpev_classname"regalitos_volando")
    
engfunc(EngFunc_SetModelentMDL)
    
engfunc(EngFunc_SetSizeentFloat:{-2.79, -0.0, -6.14}, Float:{2.421.996.35})
    
set_pev(entpev_solidSOLID_TRIGGER)
    
set_pev(entpev_movetypeMOVETYPE_BOUNCE)
    
engfunc(EngFunc_DropToFloorent)
    
    
colores(ent)    
}
public 
colores(ent) {
    
set_pev(entpev_renderfxkRenderFxGlowShell)
    
    new 
cvar get_pcvar_num(cvar_colors)
    new 
rgb
    
    
if(cvar == 1) {
        
set_pev(entpev_rendercolorFloat:{255.0255.0255.0})
        
255
        g 
255
        b 
255
    
}
    else if(
cvar == 2) {
        
set_pev(entpev_rendercolorFloat:{255.0000.0000.0})
        
255
        g 
0
        b 
0
    
}
    else if(
cvar == 3) {
        
set_pev(entpev_rendercolorFloat:{000.0255.0000.0})
        
000
        g 
255
        b 
000
    
}
    else if(
cvar == 4) {
        
set_pev(entpev_rendercolorFloat:{000.0000.0255.0})
        
000
        g 
000
        b 
255
    
} else {
        switch (
random(4)) {    
            case 
0: {
                
set_pev(entpev_rendercolorFloat:{255.0255.0255.0})
                
255
                g 
255
                b 
255
            
}
            case 
1: {
                
set_pev(entpev_rendercolorFloat:{255.0000.0000.0})
                
255 
                g 
000
                b 
000
            
}
            case 
2:{
                
set_pev(entpev_rendercolorFloat:{000.0255.0000.0})
                
000
                g 
255
                b 
000
            
}
            case 
3: {
                
set_pev(entpev_rendercolorFloat:{000.0000.0255.0})
                
000
                g 
000
                b 
255
            
}
        }
    }    
    
message_begin(MSG_BROADCASTSVC_TEMPENTITY)
    
write_byte(TE_BEAMFOLLOW)
    
write_short(ent)
    
write_short(g_trailSpr)
    
write_byte(5)
    
write_byte(1)
    
write_byte(r)
    
write_byte(g)
    
write_byte(b)
    
write_byte(255)
    
message_end()
}
public 
screen_fade(id) {
    
message_begin(MSG_ONEg_msgScreenFade, {000}, id
    
write_short(1<<12)
    
write_short(1<<12)
    
write_short(1<<12)
    
write_byte(200)
    
write_byte(200)
    
write_byte(200)
    
write_byte(20)
    
message_end()
}
public 
player_Touch(entid) { 
    if(!
pev_valid(ent) || !is_user_alive(id) ||  !get_pcvar_num(cvar_activado) || !can_pickup[id]) return FMRES_IGNORED
    
    
new classname[32]
    
pev(entpev_classnameclassnamecharsmax(classname))
    
    if(
equali(classname"regalitos_volando")) {
        
g_regalitos--
        
g_regalo[id]++
        
client_print_color(id"!g[amxmodx-es.com] %s !tAgarraste un regalo"g_playername[id]) 
        
screen_fade(id)
        
emit_sound(idCHAN_AUTOSND1.0ATTN_NORM0PITCH_NORM)
        
        if(
pev_valid(ent)) {
            
engfunc(EngFunc_RemoveEntityent)    
        }
    }
    return 
FMRES_IGNORED
}
stock client_print_color(const id, const input[], any:...) {
    new 
count 1players[32]
    static 
msg[191]
    
vformat(msg190input3)
    
    
replace_all(msg190"!g""^4")
    
replace_all(msg190"!y""^1")
    
replace_all(msg190"!t""^3")
    
replace_all(msg190"!team2""^0")
    
    if(
id)
        
players[0] = id;
    else
        
get_players(playerscount"ch")
    
    for (new 
0counti++) {
        if(
is_user_connected(players[i])) {
            
message_begin(MSG_ONE_UNRELIABLEget_user_msgid("SayText"), _players[i])
            
write_byte(players[i]);
            
write_string(msg);
            
message_end();
        }
    }
}

// En esta funcion se define el regalo que se le dara al que toque un regalito
public give_item(id)
{
    new 
AP random_num(23008300)
    new 
PH random_num(333)
    new 
PZ random_num(333)
    new 
EXP random_num(23008300)
    
    switch (
random_num(0500)) 
    {
        case 
0..100
        {
            
client_print_color(id"!g[amxmodx-es.com]!t Abriste un regalo, Ganaste !g+%d !tAP"AP)
            
zp_set_user_ammo_packs(idzp_get_user_ammo_packs(id) + AP)
        }
        case 
101..200
        {
            
client_print_color(id"!g[amxmodx-es.com]!t Abriste un regalo, Ganaste !g+%d !tPH"PH)
            
za_set_user_hpoints(idza_get_user_hpoints(id) + PH)
        }
        case 
201..300
        {
            
client_print_color(id"!g[amxmodx-es.com]!t Abriste un regalo, Ganaste !g+%d !tPZ"PZ)
            
za_set_user_zpoints(idza_get_user_zpoints(id) + PZ)
        }
        case 
301..400:
        {
            
client_print_color(id"!g[amxmodx-es.com]!t Abriste un regalo, Ganaste !g+%d !tEXP"EXP)
            
za_set_user_experience(idza_get_user_experience(id) + EXP)
            
        }
        case 
401..500:
        {
            
client_print_color(id"!g[amxmodx-es.com]!t Mala suerte!!!, el regalo no contenia nada")
        }
    }
}


public 
show_menu_regalos(id
{    
    static 
item[128]
    
    
formatex(itemcharsmax(item), "\wMENU DE \yREGALOS^n\wREGALOS DISPONIBLES\r: \d%d^n\wREGALOS ABIERTOS\r: \d%d"g_regalo[id], g_abiertos[id])
    new 
menu menu_create(item"menu_regalo")
    
    if (
g_regalo[id] >= 1)
    {
        
formatex(itemcharsmax(item), "\wABRIR REGALO")
        
menu_additem(menuitem"1")
    }
    else
    {
        
formatex(itemcharsmax(item), "\dABRIR REGALO")
        
menu_additem(menuitem"1")
    }
    
    if (
get_user_flags(id) & FLAGS)
    {
        
menu_additem(menu"\wSOLTAR REGALITOS""2")
    }
    else
    {
        
menu_additem(menu"\wSOLTAR REGALITOS \d(SOLO ADMIN)""2")
    }
    
    
menu_setprop(menuMPROP_EXITNAME"Salir")
    
menu_display(idmenu0)
}

public 
menu_regalo(idmenuitem
{
    if(
item == MENU_EXIT
    {
        
menu_destroy(menu)
        return 
PLUGIN_HANDLED
    
}
    
    switch(
item
    {
        case 
0:
        {
            if (
g_regalo[id] >= 1)
            {
                
give_item(id)
                
g_regalo[id]--
                
g_abiertos[id]++
                
show_menu_regalos(id)
            }
            else
            {
                
client_print_color(0"!g[amxmodx-es.com]!t No tienes regalos disponibles.")
            }
        }
        case 
1:
        {
            if (
get_user_flags(id) & FLAGS)
            {
                
show_menu_regalitos(id
            }
            else 
            {
                
client_print_color(id"!g[amxmodx-es.com]!t No tienes acceso, Compra admin para acceder.")
            }
        }
    }
    return 
PLUGIN_HANDLED
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang11274\\ f0\\ fs16 \n\\ par }
*/ 


Archivos adjuntos
.sma   Descargar AMXX / regalitos.sma (Tamaño: 10.28 KB / Descargas: 9)
.sma   Descargar AMXX / regalitos_advvault.sma (Tamaño: 11.26 KB / Descargas: 14)
Responder
#2
Código PHP:
public anuncio() 
    
client_print_color(0"!g[amxmodx-es.com] !tSistema de Regalitos !g%s !tby: !g%s"VERSIONCOAUTHOR

Ni el 25% del código es tuyo Oh god why
[Imagen: b_350_20_323957_202743_f19a15_111111.png]

Estudia siempre; el tiempo es oro, lo material se puede recuperar pero el tiempo no se puede recuperar.
(02/10/2016, 05:05 PM)meTaLiCroSS escribió: Siempre me gusta ayudar cuando alguien esta interesado realmente en ver que esta programando.
(08/08/2019, 05:32 PM)meTaLiCroSS escribió: grax x el dato cr4ck


Mis aportes

PLUGINS
MAPAS
Menú LANG [SF] Sistema de Frags
Say System (Admin Prefix)
Responder
#3
(18/11/2018, 05:17 PM)totopizza escribió:
Código PHP:
public anuncio() 
    
client_print_color(0"!g[amxmodx-es.com] !tSistema de Regalitos !g%s !tby: !g%s"VERSIONCOAUTHOR

Ni el 25% del código es tuyo Oh god why

Tenes mucha verdad. Roflmao Igual no hice mucho.
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)