Mensajes: 104
Temas: 40
Registro en: May 2020
Reputación:
1
Alguien me podria explicar como ponerle Reset a una clase de H en mi ZA?
Yo agregue nuevas clases a mi zombie apocalypse pero solo me deja agregarle un nivel de desbloqueo, quisiera saber como agregarle Resets de desbloqueo, por ejemplo:
Slash Asesino (Reset: 1) (Nivel: 40) para poder elegirlo
Pd: Estoy muy agradecido con todos los que me ayudan y me tienen paciencia, tal vez todos aprendieron desde hace mucho tiempo estas cosas, yo recien comienzo
Mensajes: 19
Temas: 6
Registro en: Apr 2017
Reputación:
0
28/05/2020, 09:33 AM
(Última modificación: 28/05/2020, 09:35 AM por NahuuCja . Edited 1 time in total.)
Este no es la mejor forma pero funciona
Primero añadí esto al principio del sma
Código:
new const reset_humanos[] = "1, ,1 , 1" // Aca agrega los resets que le pedira al elegirlo
Despues anda a show_menu_hclass y busca esto
Código:
// Add to menu
if (g_level[id] >= ArrayGetCell(g_hclass_lvl, class) || (get_user_flags(id) & g_access_flag[ACCESS_CLASSES_FREE]))
{
if (class == g_humanclass[id])
formatex(g_menu, charsmax(g_menu), "\d%s %s", buffer, buffer2)
else
formatex(g_menu, charsmax(g_menu), "%s \y%s", buffer, buffer2)
}
else
formatex(g_menu, charsmax(g_menu), "\d%s (\rMin Nivel \w%d\d)", buffer, ArrayGetCell(g_hclass_lvl, class))
y lo reemplaza por esto.
Código:
// Add to menu
if (g_level[id] >= ArrayGetCell(g_hclass_lvl, class) && g_fame[id] >= reset_humanos[class] || g_fame[id] > reset_humanos[class])
{
if (class == g_humanclass[id])
formatex(g_menu, charsmax(g_menu), "\d%s \y(ACTUAL)", buffer)
else if (class == g_humanclassnext[id])
formatex(g_menu, charsmax(g_menu), "\d%s \y(ELEGIDO)", buffer)
else
formatex(g_menu, charsmax(g_menu), "\w%s", buffer)
}
else
formatex(g_menu, charsmax(g_menu), "\d%s \r(RR:\d %d \r- N:\d %d\r)", buffer, reset_humanos[class], ArrayGetCell(g_hclass_lvl, class))
ahora busca menu_hclass y busca esto
Código:
// Level required
if (g_level[id] < ArrayGetCell(g_hclass_lvl, classid) && !(get_user_flags(id) & g_access_flag[ACCESS_CLASSES_FREE]))
{
show_menu_hclass(id)
return PLUGIN_HANDLED;
}
y lo reemplazas por esto
Código:
// Level required
if (g_level[id] < ArrayGetCell(g_hclass_lvl, classid) && g_fame[id] < reset_humanos[classid] || g_fame[id] < reset_humanos[classid])
{
show_menu_hclass(id)
return PLUGIN_HANDLED;
}
esa es la que uso
cada ves que agregues una clase humana también tenes que agregar lo en reset_humanos
espero te sirva
Mensajes: 7,178
Temas: 93
Registro en: Aug 2014
Reputación:
63
28/05/2020, 12:43 PM
(Última modificación: 28/05/2020, 12:46 PM por Hinami . Edited 1 time in total.)
(28/05/2020, 09:33 AM) NahuuCja escribió: Este no es la mejor forma pero funcionase nota xd
podría modificar un poco tu código por este
(28/05/2020, 09:33 AM) NahuuCja escribió: Primero añadí esto al principio del sma
Código:
new const reset_humanos[] = "1, ,1 , 1" // Aca agrega los resets que le pedira al elegirlo
-->
Código PHP:
//debajo de Array;g_hclass_lvl new Array: g_hclass_reset ; //en el precache debajo de g_hclass_level = ArrayCreat g_hclass_reset = ArrayCreate ( 1 , 1 );
(28/05/2020, 09:33 AM) NahuuCja escribió: y lo reemplaza por esto.
Código:
// Add to menu
if (g_level[id] >= ArrayGetCell(g_hclass_lvl, class) && g_fame[id] >= reset_humanos[class] || g_fame[id] > reset_humanos[class])
{
if (class == g_humanclass[id])
formatex(g_menu, charsmax(g_menu), "\d%s \y(ACTUAL)", buffer)
else if (class == g_humanclassnext[id])
formatex(g_menu, charsmax(g_menu), "\d%s \y(ELEGIDO)", buffer)
else
formatex(g_menu, charsmax(g_menu), "\w%s", buffer)
}
else
formatex(g_menu, charsmax(g_menu), "\d%s \r(RR:\d %d \r- N:\d %d\r)", buffer, reset_humanos[class], ArrayGetCell(g_hclass_lvl, class))
-->
Código PHP:
// Add to menu if ( g_level [ id ] >= ArrayGetCell ( g_hclass_lvl , class) && g_fame [ id ] >= ArrayGetCell ( g_hclass_reset , class) || g_fame [ id ] > ArrayGetCell ( g_hclass_reset , class)) { if (class == g_humanclass [ id ]) formatex ( g_menu , charsmax ( g_menu ), "\d%s %s" , buffer , buffer2 ) else formatex ( g_menu , charsmax ( g_menu ), "%s \y%s" , buffer , buffer2 ) } else formatex ( g_menu , charsmax ( g_menu ), "\d%s (\rMin Nivel \w%d\d)(\rMin Reset \w%d\d)" , buffer , ArrayGetCell ( g_hclass_lvl , class), ArrayGetCell ( g_hclass_reset , class))
(28/05/2020, 09:33 AM) NahuuCja escribió: y lo reemplazas por esto
Código:
// Level required
if (g_level[id] < ArrayGetCell(g_hclass_lvl, classid) && g_fame[id] < reset_humanos[classid] || g_fame[id] < reset_humanos[classid])
{
show_menu_hclass(id)
return PLUGIN_HANDLED;
}
-->
Código PHP:
// Level required if ( g_level [ id ] < ArrayGetCell ( g_hclass_lvl , classid ) && g_fame [ id ] < ArrayGetCell ( g_hclass_reset , classid ) || g_fame [ id ] < ArrayGetCell ( g_hclass_reset , classid )) { show_menu_hclass ( id ) return PLUGIN_HANDLED ; }
Código PHP:
public native_register_human_class (const name [], const info [], const model [], lvl , hp , speed , Float : gravity )
->
Código PHP:
public native_register_human_class (const name [], const info [], const model [], lvl , reset , hp , speed , Float : gravity )
Código PHP:
//dentro de eso mismo debajo de ArrayPushCell ( g_hclass_lvl , lvl ) //pones: ArrayPushCell ( g_hclass_reset , reset );
Me base en tu código y le agregue unas cositas, creería yo que debería funcionar jaja solo no podes cambiarle reset desde el .ini
Archivos adjuntos
Descargar AMXX / zombie_apocalypse46.sma (Tamaño: 504.32 KB / Descargas: 5)
Mensajes: 104
Temas: 40
Registro en: May 2020
Reputación:
1
(28/05/2020, 12:43 PM) Hypnotize escribió: se nota xd
podría modificar un poco tu código por este
-->
Código PHP:
//debajo de Array;g_hclass_lvl new Array: g_hclass_reset ; //en el precache debajo de g_hclass_level = ArrayCreat g_hclass_reset = ArrayCreate ( 1 , 1 );
-->
Código PHP:
// Add to menu if ( g_level [ id ] >= ArrayGetCell ( g_hclass_lvl , class) && g_fame [ id ] >= ArrayGetCell ( g_hclass_reset , class) || g_fame [ id ] > ArrayGetCell ( g_hclass_reset , class)) { if (class == g_humanclass [ id ]) formatex ( g_menu , charsmax ( g_menu ), "\d%s %s" , buffer , buffer2 ) else formatex ( g_menu , charsmax ( g_menu ), "%s \y%s" , buffer , buffer2 ) } else formatex ( g_menu , charsmax ( g_menu ), "\d%s (\rMin Nivel \w%d\d)(\rMin Reset \w%d\d)" , buffer , ArrayGetCell ( g_hclass_lvl , class), ArrayGetCell ( g_hclass_reset , class))
-->
Código PHP:
// Level required if ( g_level [ id ] < ArrayGetCell ( g_hclass_lvl , classid ) && g_fame [ id ] < ArrayGetCell ( g_hclass_reset , classid ) || g_fame [ id ] < ArrayGetCell ( g_hclass_reset , classid )) { show_menu_hclass ( id ) return PLUGIN_HANDLED ; }
Código PHP:
public native_register_human_class (const name [], const info [], const model [], lvl , hp , speed , Float : gravity )
->
Código PHP:
public native_register_human_class (const name [], const info [], const model [], lvl , reset , hp , speed , Float : gravity )
Código PHP:
//dentro de eso mismo debajo de ArrayPushCell ( g_hclass_lvl , lvl ) //pones: ArrayPushCell ( g_hclass_reset , reset );
Me base en tu código y le agregue unas cositas, creería yo que debería funcionar jaja solo no podes cambiarle reset desde el .ini
Wow ese es mi .sma???
Le tendré que cambiar los resets desde el .sma no? ya que no puedo desde el .ini
Mensajes: 7,178
Temas: 93
Registro en: Aug 2014
Reputación:
63
en tu .sma de las clases después del level agrega el reset
Mensajes: 104
Temas: 40
Registro en: May 2020
Reputación:
1
(28/05/2020, 06:45 PM) Hypnotize escribió: en tu .sma de las clases después del level agrega el reset Código PHP:
/*================================================================================ ----------------------------------- -*- [ZA] Default Human Classes -*- ----------------------------------- ~~~~~~~~~~~~~~~ - Description - ~~~~~~~~~~~~~~~ This plugin adds the default human classes to Zombie Apocalypse. Feel free to modify their attributes to your liking. ================================================================================*/ #include <amxmodx> #include <fakemeta> #include <zombieapocalypse> /*================================================================================ [Plugin Customization] =================================================================================*/ // Civil Human Attributes new const hclass1_name [] = { "Civil" } new const hclass1_info [] = { "Atributos normales" } new const hclass1_model [] = { "za_human11" } const hclass1_level = 50 const hclass1_reset = 1 const hclass1_health = 100 const hclass1_speed = 240 const Float : hclass1_gravity = 1.0 // Rebel Human Attributes new const hclass2_name [] = { "Rebelde" } new const hclass2_info [] = { "Vida+ Velocidad+ Salto-" } new const hclass2_model [] = { "za_human22" } const hclass2_level = 55 const hclass2_reset = 13 const hclass2_health = 150 const hclass2_speed = 260 const Float : hclass2_gravity = 1.25 // Defender Human Attributes new const hclass3_name [] = { "Defensor" } new const hclass3_info [] = { "Vida++ Velocidad++ Salto-" } new const hclass3_model [] = { "za_human33" } const hclass3_level = 60 const hclass3_reset = 3 const hclass3_health = 200 const hclass3_speed = 280 const Float : hclass3_gravity = 1.25 // Spy Human Attributes new const hclass4_name [] = { "Espia" } new const hclass4_info [] = { "Vida++ Salto+ Velocidad-" } new const hclass4_model [] = { "za_human44" } const hclass4_level = 65 const hclass4_reset = 5 const hclass4_health = 200 const hclass4_speed = 220 const Float : hclass4_gravity = 0.75 // Assassin Human Attributes new const hclass5_name [] = { "Asesino" } new const hclass5_info [] = { "Salto++ Velocidad++" } new const hclass5_model [] = { "za_human55" } const hclass5_level = 70 const hclass5_reset = 7 const hclass5_health = 100 const hclass5_speed = 280 const Float : hclass5_gravity = 0.5 // Hunter Human Attributes new const hclass6_name [] = { "Cazador" } new const hclass6_info [] = { "Vida+ Velocidad+ Salto+" } new const hclass6_model [] = { "za_human66" } const hclass6_level = 75 const hclass6_reset = 9 const hclass6_health = 150 const hclass6_speed = 260 const Float : hclass6_gravity = 0.75 /*============================================================================*/ // Human Classes MUST be registered on plugin_precache public plugin_precache () { register_plugin ( "[ZA] Default Human Classes" , "2.0" , "RauliTop" ) // Register all classes za_register_human_class ( hclass1_name , hclass1_info , hclass1_model , hclass1_level , hclass1_reset , hclass1_health , hclass1_speed , hclass1_gravity ) za_register_human_class ( hclass2_name , hclass2_info , hclass2_model , hclass2_level , hclass2_reset , hclass2_health , hclass2_speed , hclass2_gravity ) za_register_human_class ( hclass3_name , hclass3_info , hclass3_model , hclass3_level , hclass3_reset , hclass3_health , hclass3_speed , hclass3_gravity ) za_register_human_class ( hclass4_name , hclass4_info , hclass4_model , hclass4_level , hclass4_reset , hclass4_health , hclass4_speed , hclass4_gravity ) za_register_human_class ( hclass5_name , hclass5_info , hclass5_model , hclass5_level , hclass5_reset , hclass5_health , hclass5_speed , hclass5_gravity ) za_register_human_class ( hclass6_name , hclass6_info , hclass6_model , hclass6_level , hclass6_reset , hclass6_health , hclass6_speed , hclass6_gravity ) } /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE *{\ rtf1\ ansi\ deff0{\ fonttbl{\ f0\ fnil Tahoma;}} \ viewkind4\ uc1\ pard\ lang3082\ f0\ fs16 \ par } */
No me funciona, como hago para que funcione? agregué esto a za_hclasses
Mensajes: 7,178
Temas: 93
Registro en: Aug 2014
Reputación:
63
no te funciona dentro del server o no te compila?
Mensajes: 104
Temas: 40
Registro en: May 2020
Reputación:
1
Mensajes: 7,178
Temas: 93
Registro en: Aug 2014
Reputación:
63
debes buscar en el include del za esta native
za_register_human_class
después del lvl agregas "reset"
ejemplo
za_register_human_class(..... level, reset, etcc...);
y lo guardas e intentas compilar de nuevo
Mensajes: 104
Temas: 40
Registro en: May 2020
Reputación:
1
29/05/2020, 01:33 AM
(Última modificación: 29/05/2020, 03:01 AM por Raemix01 .)
(29/05/2020, 01:22 AM) Hypnotize escribió: debes buscar en el include del za esta native
za_register_human_class
después del lvl agregas "reset"
ejemplo
za_register_human_class(..... level, reset, etcc...);
y lo guardas e intentas compilar de nuevo ME FUNCIONO! CREO QUE TE AMO! Sos un genio! Con los zombies tambien va a funcionar? o me lo tenes que agregar al .sma?
(29/05/2020, 01:22 AM) Hypnotize escribió: debes buscar en el include del za esta native
za_register_human_class
después del lvl agregas "reset"
ejemplo
za_register_human_class(..... level, reset, etcc...);
y lo guardas e intentas compilar de nuevo Intente hacerlo con los mismos pasos para Zombies y no me deja compilar el .sma, me dice esto
Warning: Loose indentation on line 5002
Error: Undefined symbol "reset" on line 14035
Warning: Loose indentation on line 15544
1 Error.
Could not locate output file C:\Users\crist\Desktop\zombie_apocalypse46.amx (compile failed).
Código:
}
ArrayPushString(g_zclass_clawmodel, clawmodel)
ArrayPushCell(g_zclass_lvl, lvl)
ArrayPushCell(g_zclass_reset, reset)
ArrayPushCell(g_zclass_hp, hp)
ArrayPushCell(g_zclass_spd, speed)
ArrayPushCell(g_zclass_grav, gravity)
ArrayPushCell(g_zclass_kb, knockback)
Dejo el .sma ahi abajo
Archivos adjuntos
Descargar AMXX / zombie_apocalypse46.sma (Tamaño: 504.64 KB / Descargas: 1)
Mensajes: 7,178
Temas: 93
Registro en: Aug 2014
Reputación:
63
29/05/2020, 01:01 PM
(Última modificación: 29/05/2020, 05:35 PM por Hinami . Edited 2 times in total.)
te falto agregar "reset", que bueno que hayas entendido el ejemplo!
Código PHP:
public native_register_zombie_class (const name [], const info [], const model [], const clawmodel [], lvl
->.
Código PHP:
public native_register_zombie_class (const name [], const info [], const model [], const clawmodel [], lvl , reset
dentro del .sma zombieapocalypse
busca lo de arriba con contro,f