Allied Modders en español
[TUT] Armas por niveles - Versión para impresión

+- Allied Modders en español (https://amxmodx-es.com)
+-- Foro: AMX Mod X - Scripting (https://amxmodx-es.com/Forum-AMX-Mod-X-Scripting)
+--- Foro: Tutoriales / Guias (https://amxmodx-es.com/Forum-Tutoriales-Guias)
+--- Tema: [TUT] Armas por niveles (/Thread-TUT-Armas-por-niveles)

Páginas: 1 2 3


[TUT] Armas por niveles - Metrikcz - 28/03/2014

Buenas, aqui un amigo me pidio que le hiciera un tutorial de armas por niveles y aqui esta, si me falto explicar algo, tienen dudas o me falto agregar algo porfavor diganlo
Código PHP:
#include <amxmodx>
#include <hamsandwich>
#include <fun>
#include <cstrike>

#define PLUGIN "Tutorial Armas por niveles"
#define VERSION "1.1"
#define AUTHOR "[M]etrikcz"

#define user_level(%1) g_level[%1] // variable de su nivel deben de modificarla aqui!

new g_menu[33], g_level[33]
enum armas_caracteristicas // crearemos un enum para que nos sea mas facil, comodo y mejor utilizar el const
    
NOMBRE[20],
    
CSW_NAME,
    
WEAPON_NAME[20],
    
BPAMMO,
    
NIVEL
}
new const 
g_armas_prim[][armas_caracteristicas] = 

    
// Nombre en el menu | CSW_ | weapon_ | Balas | Nivel    
    
"Schmidt TMP" CSW_TMP "weapon_tmp"601},
    { 
"Ingram MAC-10" CSW_MAC10 "weapon_mac10" 602}, 
    { 
"UMP 45" CSW_MP5NAVY "weapon_mp5navy" 603}, 
    { 
"Navy MP5" CSW_UMP45 "weapon_ump45" 604}, 
    { 
"M3 Super 90" CSW_M3 "weapon_m3" 285}, 
    { 
"XM1014 M4" CSW_XM1014 "weapon_xm1014" 286}, 
    { 
"FN P90" CSW_P90 "weapon_p90" 1007}, 
    { 
"Schmidt Scout" CSW_SCOUT "weapon_scout" 108}, 
    { 
"Famas" CSW_FAMAS "weapon_famas" 9010}, 
    { 
"IMI Galil" CSW_GALIL "weapon_galil" 10512}, 
    { 
"AK-47 Kalashnikov" CSW_AK47 "weapon_ak47" 9014},
    { 
"M4A1 Carbine" CSW_M4A1"weapon_m4a1"9016},
    { 
"SG-552 Commando" CSW_SG552 "weapon_sg552" 9018},
    { 
"Aug" CSW_AUG "weapon_aug" 9020},
    { 
"AWP Magnum Sniper" CSW_AWP "weapon_awp" 1022},
    { 
"G3SG1 Auto-Sniper" CSW_G3SG1 "weapon_g3sg1" 6023},
    { 
"SG-550 Auto-Sniper" CSW_SG550 "weapon_sg550" 6024},
    { 
"M249 SAW" CSW_M249 "weapon_m249" 20025// Importante que el ultimo no lleve coma ya que es el ultimo como en una oracion: pepito se cogio a sara, victoria, andrea (despues de andrea ya no lleva coma)

new const 
g_armas_sec[][armas_caracteristicas] = 

    
// Nombre en el menu | CSW_ | weapon_ | Balas | Nivel
    
"Glock" CSW_GLOCK18 "weapon_glock18" 400},  
    { 
"USP" CSW_USP "weapon_usp"1215},
    { 
"P228" CSW_P228 "weapon_p228"4030},
    { 
"Deagle" CSW_DEAGLE "weapon_deagle"2150},
    { 
"Fiveseven" CSW_FIVESEVEN "weapon_fiveseven"4070},
    { 
"Dual Elite" CSW_ELITE "weapon_elite"6090

// funcion que se llama cuando inicia el plugin, osea en un cambio de mapa o inicio del servidor
public plugin_init() {
    
register_plugin(PLUGINVERSIONAUTHOR// registramos plugin
    
RegisterHam(Ham_Spawn"player""fw_spawn"1// registramos cuando el usuario revive
    
register_clcmd("say /guns""cmd_guns"// registramos el comando para abrirle el menu de armas
}
// funcion que se llama cuando el usuario reviva
public fw_spawn(id) {
    if(
cs_get_user_team(id) == CS_TEAM_CT) {// si es policia .
        
g_menu[id] = // en el menu que esta se lo setearemos en 0
        
show_guns_prim(id// le abriremos el menu de armas primarias
    
}    
}
show_guns_prim(id) {
    new 
len[50], menu menu_create("Eliga su arma primaria""handler_prim"// creamos el menu en la variable menu
    
for(new 0sizeof g_armas_primi++) { // lopearemos entre todas las armas primarias que hay
        // si el level del usuario es mayor o igual al del arma ...
        
if(user_level(id) >= g_armas_prim[i][NIVEL]) menu_additem(menug_armas_prim[i][NOMBRE], ""// agregamos el item normal
        
else { // y si no lo es
            
formatex(lencharsmax(len), "\r[ \yNivel Requerido: \d%d \r]"g_armas_prim[i][NIVEL])
            
menu_additem(menulen"")
        }
    }
    
menu_display(idmenu0// le mostramos el menu al usuario en la pagina 1
}
public 
handler_prim(idmenuitem) {
    if(
item == MENU_EXIT) {  // si esta saliendo del menu, osea presiono 0
        
menu_destroy(menu// destruimos el menu para ahorrar memoria
        
return PLUGIN_HANDLED// paramos la funcion
    
}
    if(!(
cs_get_user_team(id) == CS_TEAM_CT)) // checamos si no es policia
        
return PLUGIN_HANDLED// si no lo es detenemos la funcion
        
    
if(user_level(id) < g_armas_prim[item][NIVEL]) { // si su nivel es inferior a la del arma
        
client_print(idprint_center"Bloqued Level: %d"g_armas_prim[item][NIVEL]) // le mandaremos un mensaje diciendo el nivel que ocupa
        
show_guns_prim(id// le abriremos de nuevo el menu
        
return PLUGIN_HANDLED// y paramos la funcion
    
}
    
strip_user_weapons(id// le tiramos todas las armas
    
give_item(id"weapon_knife"// le damos el cuchillo ya que tambien se lo quita
    
give_item(idg_armas_prim[item][WEAPON_NAME]) // le damos la arma que eligio
    
cs_set_user_bpammo(idg_armas_prim[item][CSW_NAME], g_armas_prim[item][BPAMMO]) // damos el numero de balas del arma
    
g_menu[id] = // seteamos la variable en 1 y ya explicare luego para que la usamos
    
show_guns_sec(id// le llamamos a la funcion del menu de armas secundarias osea pistolas al usuario
    
return PLUGIN_HANDLED// y returneamos al final la funcion por reglas de pawn porque si no nos mandaria un waring
}
show_guns_sec(id) {
    new 
len[50], menu menu_create("Eliga su arma secundaria""handler_sec"// creamos el menu en la variable menu
    
for(new 0sizeof g_armas_seci++) { // lopearemos entre todas las armas secundarias que hay
        // si el level del usuario es mayor o igual al del arma ...
        
if(user_level(id) >= g_armas_sec[i][NIVEL]) menu_additem(menug_armas_sec[i][NOMBRE], ""// agregamos el item arma normal
        
else { // y si no lo es
            
formatex(lencharsmax(len), "\r[ \yNivel Requerido: \d%d \r]"g_armas_sec[i][NIVEL])
            
menu_additem(menulen"")
        }
    }
    
menu_display(idmenu0// le mostramos el menu al usuario en la pagina 1
}
public 
handler_sec(idmenuitem) {
    if(
item == MENU_EXIT) {  // si esta saliendo del menu, osea presiono 0
        
menu_destroy(menu// destruimos el menu para ahorrar memoria
        
return PLUGIN_HANDLED// paramos la funcion
    
}
    if(!(
cs_get_user_team(id) == CS_TEAM_CT)) // checamos si no es policia
        
return PLUGIN_HANDLED// si no lo es detenemos la funcion
        
    
if(user_level(id) < g_armas_sec[item][NIVEL]) { // si su nivel es inferior a la del arma
        
client_print(idprint_center"Bloqued Level: %d"g_armas_sec[item][NIVEL]) // le mandaremos un mensaje diciendo el nivel que ocupa
        
show_guns_sec(id// le abriremos de nuevo el menu
        
return PLUGIN_HANDLED// y paramos la funcion
    
}
    
give_item(idg_armas_sec[item][WEAPON_NAME]) // le damos la arma secundaria que eligio
    
cs_set_user_bpammo(idg_armas_sec[item][CSW_NAME], g_armas_sec[item][BPAMMO]) // damos el numero de balas del arma
    
g_menu[id] = // seteamos la variable en 2
    
return PLUGIN_HANDLED// y returneamos al final la funcion por reglas de pawn porque si no nos mandaria un waring
}
// funcion que se llamara cuando el usuario escriba /guns
public cmd_guns(id) {
    
// ahora aqui es donde utilizaremos la variable g_menu
    // en ella sabremos: si ya eligio armas, si no lo ha hecho, si eligio pero se quedo a medias
    // por ejemplo eligio primaria pero no eligio secundaria porque se le cerro o el mismo se salio sin querer
    
    // bien al respawnear no ha elegido armas y le seteamos la variable g_menu en 0, en "fw_spawn(id)"
    
switch(g_menu[id]) { // swtich se ira directamente al case donde este su valor
        // si no ha elegido
        
case 0show_guns_prim(id// abrimos armas primarias
        
case 1show_guns_sec(id// abrimos secundarias ya que ya eligio primarias
        
case 2client_print(idprint_chat"Usted ya eligio armas"// le desimos que ya eligio armas
    
}

Aclaro como muchas personas creen que todo es solo para zp o nose, les digo que este tutorial funciona para cualquier mod que tenga niveles


RE: [TUT] Armas por niveles - mongito100 - 28/03/2014

(28/03/2014, 02:56 PM)Metrikcz escribió: Aclaro como muchas personas creen que todo es solo para zp o nose, les digo que este tutorial funciona para cualquier mod que tenga niveles

Ya que es para cualquier mod podrias bloquear buymenu por q no todos los mod lo tienen bloqueado y no tiene sentido q puedas comprar armas desde ahy y desde tu menu y agragar otra opcion al enum para q pida dinero, total si no se usa la ponen en 0


RE: [TUT] Armas por niveles - segamast - 28/03/2014

Lol

Me andubo de 10 gracias Gran sonrisa Excitedeyes


RE: [TUT] Armas por niveles - Nike - 28/03/2014

(28/03/2014, 04:11 PM)mongito100 escribió:
(28/03/2014, 02:56 PM)Metrikcz escribió: Aclaro como muchas personas creen que todo es solo para zp o nose, les digo que este tutorial funciona para cualquier mod que tenga niveles

Ya que es para cualquier mod podrias bloquear buymenu por q no todos los mod lo tienen bloqueado y no tiene sentido q puedas comprar armas desde ahy y desde tu menu y agragar otra opcion al enum para q pida dinero, total si no se usa la ponen en 0

edit: lei cualquiera me confundi... tenes razon con lo de bloquear el buymenu, y se podria bloquear el dinero tambien, no creo que haga falta un enum para que pida dinero por las armas, si lo puede hacer levels por frag para ir desbloqueando...xD

en cuanto al menu esta muy bueno Guiño y para darle un pequeño detalle podrias hacerle un auto-seleccion de armas... a tu gusto...xD


RE: [TUT] Armas por niveles - 3mcy daimon't - 28/03/2014

Aunque no es nada sobrenatural me doy cuenta que cada vez hay mas usuarios que se registran y no saben nada y por ende preguntan siempre lo mismo con tutoriales como estos les servira mucho y de paso despejaran sus dudas.

PD: Buen tuto Gran sonrisa


RE: [TUT] Armas por niveles - Metrikcz - 28/03/2014

(28/03/2014, 04:11 PM)mongito100 escribió:
(28/03/2014, 02:56 PM)Metrikcz escribió: Aclaro como muchas personas creen que todo es solo para zp o nose, les digo que este tutorial funciona para cualquier mod que tenga niveles

Ya que es para cualquier mod podrias bloquear buymenu por q no todos los mod lo tienen bloqueado y no tiene sentido q puedas comprar armas desde ahy y desde tu menu y agragar otra opcion al enum para q pida dinero, total si no se usa la ponen en 0

Si ya tienen su mod por niveles esta claro que ya bloquearia lo del buy, y este no es un plugin externo, es para que lo adapten


RE: [TUT] Armas por niveles - Karibeean - 23/04/2014

Y para agregar otro menú, editar el daño y el model?


RE: [TUT] Armas por niveles - Metrikcz - 23/04/2014

(23/04/2014, 05:22 PM)Karibeean escribió: Y para agregar otro menú, editar el daño y el model?

Me estas diciendo como hacer eso o me estas diciendo que el tuto no lo tiene?


RE: [TUT] Armas por niveles - Evil Spiret - 09/05/2014

Ahi tiene las balas para poner ; asi como esta se le pueden poner mas balas de las que tiene un arma ; por ejemplo la XM1014 que tiene 7 , se le puede poner 20?


RE: [TUT] Armas por niveles - Metrikcz - 15/05/2014

(09/05/2014, 06:08 PM)Evil Spiret escribió: Ahi tiene las balas para poner ; asi como esta se le pueden poner mas balas de las que tiene un arma ; por ejemplo la XM1014 que tiene 7 , se le puede poner 20?

Si te refieres a las balas del cartucho si se le pueden cambiar, pero no tiene nada que ver con el thread.


RE: [TUT] Armas por niveles - kikizon2 - 19/06/2014

para que sirve exactamente
Código PHP:
#define user_level(%1) g_level[%1] 

no seria igual poner solo
Código PHP:
g_level[id//?? 



RE: [TUT] Armas por niveles - Metrikcz - 19/06/2014

Porque no todos tienen el mismo nombre de la variable level ahi solo se modifica eso y ya


RE: [TUT] Armas por niveles - TrikyTrakes - 21/06/2014

Código PHP:
"M249 SAW" CSW_M249 "weapon_m249" 20025// Importante que el ultimo no lleve coma ya que es el ultimo como en una oracion: pepito se cogio a sara, victoria, andrea (despues de andrea ya no lleva coma) 

Esa parte me cague de risa.. Pero buen Tuto me sirvió :p


RE: [TUT] Armas por niveles - clown - 19/12/2014

Una pregunta yo estoy aramndo un zp. Tengo que poner esto dentro de mi zp o es un plugin aparte?


RE: [TUT] Armas por niveles - kikizon2 - 19/12/2014

(19/12/2014, 03:04 AM)clown escribió: Una pregunta yo estoy aramndo un zp. Tengo que poner esto dentro de mi zp o es un plugin aparte?

Donde dice que es especifico para zp?


RE: [TUT] Armas por niveles - clown - 19/12/2014

(19/12/2014, 03:07 AM)kikizon2 escribió:
(19/12/2014, 03:04 AM)clown escribió: Una pregunta yo estoy aramndo un zp. Tengo que poner esto dentro de mi zp o es un plugin aparte?

Donde dice que es especifico para zp?
No estarias respondiendo mi pregunta...
Esto es un plugin aparte o hay q adaptarlo a nuestro mod?


RE: [TUT] Armas por niveles - Frosst - 19/12/2014

Genius

Como quieras, por como lo veo va dentro de tu mod, por que no veo que se suba niveles en ese code, a menos que lo quieras terminar vos aparte del ZP.


RE: [TUT] Armas por niveles - clown - 19/12/2014

(19/12/2014, 03:47 AM)Frosst escribió: Genius

Como quieras, por como lo veo va dentro de tu mod, por que no veo que se suba niveles en ese code, a menos que lo quieras terminar vos aparte del ZP.

Trate de adaptarlo y cuando voy a comprar me tira nivel requerido 99, 107 y nunca modifique los niveles q pide. :S

Alguien me explicaría este macro, no se de macros
#define user_level(%1) g_level[%1]


RE: [TUT] Armas por niveles - UnrealT - 19/12/2014

Es lo mismo que usar g_level[index].
Nomas que el utiliza esa forma por si el nombre de su variable ( del nivel ) es distinta , y asi se evitan cambiarlos en toda las partes donde sea necesario utilizarlo.


RE: [TUT] Armas por niveles - clown - 19/12/2014

(19/12/2014, 06:50 PM)UnrealT escribió: Es lo mismo que usar g_level[index].
Nomas que el utiliza esa forma por si el nombre de su variable ( del nivel ) es distinta , y asi se evitan cambiarlos en toda las partes donde sea necesario utilizarlo.

ah muchas gracias. Y no tenes idea x q se me pudo haber cambiado los niveles necesarios? en veez de pedir 1 me pedia 99 :S

Habra una forma de hacer que tome el nivel de la persona de un adv_vault?


RE: [TUT] Armas por niveles - clown - 20/12/2014

Código PHP:
#include <amxmodx>
#include <hamsandwich>
#include <fun>
#include <cstrike>
#include <adv_vault>
#include <amxmisc>


#define PLUGIN "Tutorial Armas por niveles"
#define VERSION "1.1"
#define AUTHOR "[M]etrikcz"

#define user_level(%1) kNivel[%1] // variable de su nivel deben de modificarla aqui!

new g_menu[33],kNivel[33]
enum armas_caracteristicas // crearemos un enum para que nos sea mas facil, comodo y mejor utilizar el const
    
NOMBRE[20],
    
CSW_NAME,
    
WEAPON_NAME[20],
    
BPAMMO,
    
NIVEL
}
new const 
g_armas_prim[][armas_caracteristicas] = 

    
// Nombre en el menu | CSW_ | weapon_ | Balas | Nivel    
    
"Schmidt TMP" CSW_TMP "weapon_tmp"601},
    { 
"Ingram MAC-10" CSW_MAC10 "weapon_mac10" 602}, 
    { 
"UMP 45" CSW_MP5NAVY "weapon_mp5navy" 603}, 
    { 
"Navy MP5" CSW_UMP45 "weapon_ump45" 604}, 
    { 
"M3 Super 90" CSW_M3 "weapon_m3" 285}, 
    { 
"XM1014 M4" CSW_XM1014 "weapon_xm1014" 286}, 
    { 
"FN P90" CSW_P90 "weapon_p90" 1007}, 
    { 
"Schmidt Scout" CSW_SCOUT "weapon_scout" 108}, 
    { 
"Famas" CSW_FAMAS "weapon_famas" 9010}, 
    { 
"IMI Galil" CSW_GALIL "weapon_galil" 10512}, 
    { 
"AK-47 Kalashnikov" CSW_AK47 "weapon_ak47" 9014},
    { 
"M4A1 Carbine" CSW_M4A1"weapon_m4a1"9016},
    { 
"SG-552 Commando" CSW_SG552 "weapon_sg552" 9018},
    { 
"Aug" CSW_AUG "weapon_aug" 9020},
    { 
"AWP Magnum Sniper" CSW_AWP "weapon_awp" 1022},
    { 
"G3SG1 Auto-Sniper" CSW_G3SG1 "weapon_g3sg1" 6023},
    { 
"SG-550 Auto-Sniper" CSW_SG550 "weapon_sg550" 6024},
    { 
"M249 SAW" CSW_M249 "weapon_m249" 20025// Importante que el ultimo no lleve coma ya que es el ultimo como en una oracion: pepito se cogio a sara, victoria, andrea (despues de andrea ya no lleva coma)

new const 
g_armas_sec[][armas_caracteristicas] = 

    
// Nombre en el menu | CSW_ | weapon_ | Balas | Nivel
    
"Glock" CSW_GLOCK18 "weapon_glock18" 400},  
    { 
"USP" CSW_USP "weapon_usp"1215},
    { 
"P228" CSW_P228 "weapon_p228"4030},
    { 
"Deagle" CSW_DEAGLE "weapon_deagle"2150},
    { 
"Fiveseven" CSW_FIVESEVEN "weapon_fiveseven"4070},
    { 
"Dual Elite" CSW_ELITE "weapon_elite"6090


enum {
    
NIVEL,
    
MAX_FIELDS
      
}
      
new 
g_campos[MAX_FIELDS]
new 
g_vault
// funcion que se llama cuando inicia el plugin, osea en un cambio de mapa o inicio del servidor
public plugin_init() {
    
register_plugin(PLUGINVERSIONAUTHOR// registramos plugin
    
RegisterHam(Ham_Spawn"player""fw_spawn"1// registramos cuando el usuario revive
    
register_clcmd("say /guns""cmd_guns"// registramos el comando para abrirle el menu de armas
    
    
g_vault adv_vault_open("CuentasZP"false);
    
    
g_campos[NIVEL] = adv_vault_register_field(g_vault"NIVEL")
    
    
adv_vault_init(g_vault)
    
    
register_clcmd("say /test""funcion_test");
}
public 
client_putinserver(id)
{
   
funcion_cargar(id)
}

// funcion que se llama cuando el usuario reviva
public fw_spawn(id) {
    if(
cs_get_user_team(id) == CS_TEAM_CT) {// si es policia .
        
g_menu[id] = // en el menu que esta se lo setearemos en 0
        
show_guns_prim(id// le abriremos el menu de armas primarias
    
}    
}
show_guns_prim(id) {
    new 
len[50], menu menu_create("Eliga su arma primaria""handler_prim"// creamos el menu en la variable menu
    
for(new 0sizeof g_armas_primi++) { // lopearemos entre todas las armas primarias que hay
        // si el level del usuario es mayor o igual al del arma ...
        
if(user_level(id) >= g_armas_prim[i][NIVEL]) menu_additem(menug_armas_prim[i][NOMBRE], ""// agregamos el item normal
        
else { // y si no lo es
            
formatex(lencharsmax(len), "\r[ \yNivel Requerido: \d%d \r]"g_armas_prim[i][NIVEL])
            
menu_additem(menulen"")
        }
    }
    
menu_display(idmenu0// le mostramos el menu al usuario en la pagina 1
}
public 
handler_prim(idmenuitem) {
    if(
item == MENU_EXIT) {  // si esta saliendo del menu, osea presiono 0
        
menu_destroy(menu// destruimos el menu para ahorrar memoria
        
return PLUGIN_HANDLED// paramos la funcion
    
}
    if(!(
cs_get_user_team(id) == CS_TEAM_CT)) // checamos si no es policia
        
return PLUGIN_HANDLED// si no lo es detenemos la funcion
        
    
if(user_level(id) < g_armas_prim[item][NIVEL]) { // si su nivel es inferior a la del arma
        
client_print(idprint_center"Bloqued Level: %d"g_armas_prim[item][NIVEL]) // le mandaremos un mensaje diciendo el nivel que ocupa
        
show_guns_prim(id// le abriremos de nuevo el menu
        
return PLUGIN_HANDLED// y paramos la funcion
    
}
    
strip_user_weapons(id// le tiramos todas las armas
    
give_item(id"weapon_knife"// le damos el cuchillo ya que tambien se lo quita
    
give_item(idg_armas_prim[item][WEAPON_NAME]) // le damos la arma que eligio
    
cs_set_user_bpammo(idg_armas_prim[item][CSW_NAME], g_armas_prim[item][BPAMMO]) // damos el numero de balas del arma
    
g_menu[id] = // seteamos la variable en 1 y ya explicare luego para que la usamos
    
show_guns_sec(id// le llamamos a la funcion del menu de armas secundarias osea pistolas al usuario
    
return PLUGIN_HANDLED// y returneamos al final la funcion por reglas de pawn porque si no nos mandaria un waring
}
show_guns_sec(id) {
    new 
len[50], menu menu_create("Eliga su arma secundaria""handler_sec"// creamos el menu en la variable menu
    
for(new 0sizeof g_armas_seci++) { // lopearemos entre todas las armas secundarias que hay
        // si el level del usuario es mayor o igual al del arma ...
        
if(user_level(id) >= g_armas_sec[i][NIVEL]) menu_additem(menug_armas_sec[i][NOMBRE], ""// agregamos el item arma normal
        
else { // y si no lo es
            
formatex(lencharsmax(len), "\r[ \yNivel Requerido: \d%d \r]"g_armas_sec[i][NIVEL])
            
menu_additem(menulen"")
        }
    }
    
menu_display(idmenu0// le mostramos el menu al usuario en la pagina 1
}
public 
handler_sec(idmenuitem) {
    if(
item == MENU_EXIT) {  // si esta saliendo del menu, osea presiono 0
        
menu_destroy(menu// destruimos el menu para ahorrar memoria
        
return PLUGIN_HANDLED// paramos la funcion
    
}
    if(!(
cs_get_user_team(id) == CS_TEAM_CT)) // checamos si no es policia
        
return PLUGIN_HANDLED// si no lo es detenemos la funcion
        
    
if(user_level(id) < g_armas_sec[item][NIVEL]) { // si su nivel es inferior a la del arma
        
client_print(idprint_center"Bloqued Level: %d"g_armas_sec[item][NIVEL]) // le mandaremos un mensaje diciendo el nivel que ocupa
        
show_guns_sec(id// le abriremos de nuevo el menu
        
return PLUGIN_HANDLED// y paramos la funcion
    
}
    
give_item(idg_armas_sec[item][WEAPON_NAME]) // le damos la arma secundaria que eligio
    
cs_set_user_bpammo(idg_armas_sec[item][CSW_NAME], g_armas_sec[item][BPAMMO]) // damos el numero de balas del arma
    
g_menu[id] = // seteamos la variable en 2
    
return PLUGIN_HANDLED// y returneamos al final la funcion por reglas de pawn porque si no nos mandaria un waring
}
// funcion que se llamara cuando el usuario escriba /guns
public cmd_guns(id) {
    
// ahora aqui es donde utilizaremos la variable g_menu
    // en ella sabremos: si ya eligio armas, si no lo ha hecho, si eligio pero se quedo a medias
    // por ejemplo eligio primaria pero no eligio secundaria porque se le cerro o el mismo se salio sin querer
    
    // bien al respawnear no ha elegido armas y le seteamos la variable g_menu en 0, en "fw_spawn(id)"
    
switch(g_menu[id]) { // swtich se ira directamente al case donde este su valor
        // si no ha elegido
        
case 0show_guns_prim(id// abrimos armas primarias
        
case 1show_guns_sec(id// abrimos secundarias ya que ya eligio primarias
        
case 2client_print(idprint_chat"Usted ya eligio armas"// le desimos que ya eligio armas
    
}

public 
funcion_cargar(id)
{
    new 
name[32]
    
get_user_name(idname31)
    if(!
adv_vault_get_prepare(g_vault_name))
     {
       
        return
    }
    
kNivel[id] = 5
    kNivel
[id] = adv_vault_get_field(g_vaultg_campos[NIVEL])
    
}
public 
funcion_test(id)
{
    
client_print(idprint_chat"LVL[%d]"kNivel[id]);


Le agregue la funcion adv_vault pero los niveles q me pide para las armas no tiene nada q ver con los del plugin me pide lvl 88 90 nunca lvl 1 2 ....
ayuda?


RE: [TUT] Armas por niveles - elpapimejor - 22/03/2015

Perdon por revivir el tema pero, Seria posible agregarle cambio de models al menu Ejemplo.
[php] { "Schmidt TMP" , CSW_TMP , "tmpnueva", "weapon_tmp", 60, 1},


RE: [TUT] Armas por niveles - Kisuke - 23/03/2015

(22/03/2015, 11:56 PM)elpapimejor escribió: Perdon por revivir el tema pero, Seria posible agregarle cambio de models al menu Ejemplo.
[php] { "Schmidt TMP" , CSW_TMP , "tmpnueva", "weapon_tmp", 60, 1},

No revivas el post, hace un tema nuevo en la sección de "Scripting". Por acá no se da esa clase de soporte.


RE: [TUT] Armas por niveles - Mía - 23/03/2015

(23/03/2015, 12:38 AM)Kisuke escribió:
(22/03/2015, 11:56 PM)elpapimejor escribió: Perdon por revivir el tema pero, Seria posible agregarle cambio de models al menu Ejemplo.
[php] { "Schmidt TMP" , CSW_TMP , "tmpnueva", "weapon_tmp", 60, 1},

No revivas el post, hace un tema nuevo en la sección de "Scripting". Por acá no se da esa clase de soporte.

Cuál es el problema con revivir? Su pregunta no tiene nada de malo.


RE: [TUT] Armas por niveles - Kisuke - 23/03/2015

(23/03/2015, 12:53 AM)Mario AR. escribió:
(23/03/2015, 12:38 AM)Kisuke escribió:
(22/03/2015, 11:56 PM)elpapimejor escribió: Perdon por revivir el tema pero, Seria posible agregarle cambio de models al menu Ejemplo.
[php] { "Schmidt TMP" , CSW_TMP , "tmpnueva", "weapon_tmp", 60, 1},

No revivas el post, hace un tema nuevo en la sección de "Scripting". Por acá no se da esa clase de soporte.

Cuál es el problema con revivir? Su pregunta no tiene nada de malo.

Se que su pregunta no tiene nada de malo Mario, pero tenemos que acostumbrarnos a hacer lo que debemos. Es mejor y mas viable crear un tema en Scripting y que de ahí lo podamos ayudar. En caso de que halla sido una pregunta que requiere una explicación más amplia, no lo podríamos ayudar por acá, porque no corresponde.