[ZP][TUT] Crear Niveles Por Ammo Packs
#1
Bueno Este Tutorial Lo Publico Para Aquella Gente Que Quiere Crear Sus Niveles Por AmmoPack
Aclaro El Tut No Es Mio Y Yo Presento Mi Forma Que La Hice Para Zp 4.3

Link Del Post Niveles Por AmmoPack: https://forums.alliedmods.net/showthread.php?t=112692

Bueno Empecemos Al Principio Del Zp Abajo De Esto:
Código PHP:
new const ZP_CUSTOMIZATION_FILE[] = "zombie_plague_advance.ini"
new const ZP_EXTRAITEMS_FILE[] = "zp_extraitems.ini"
new const ZP_ZOMBIECLASSES_FILE[] = "zp_zombieclasses.ini" 

Pegamos Los Siguiente:
Código PHP:
#define Max_Level 250 // Aki Se Define Cuanto Niveles Son El Maximo
#define Level_Up(%1) (%1 * %1 * 10) // Aki Definimos Los AmmoPacks Para El Sig. Nivel 

Primero Creamos La Variable De Los Niveles Para Eso Buscamos // Player vars
Y Abajo Creamos La Variable:
Código PHP:
g_level[33// level 

Segundo Buscamos Este Code En Donde Se Registra Si El Zombie y Nemesis Ganan AmmoPacks:
Código PHP:
// Zombie/nemesis killed human, reward ammo packs
if (g_zombie[attacker] && (!g_nemesis[attacker] || !get_pcvar_num(cvar_nemignoreammo)))
g_ammopacks[attacker] += get_pcvar_num(cvar_ammoinfect

Y Abajo De Ese Code Ponemos:
Código PHP:
update_ap(attacker// <-- Esto Es Para Que Al Ganar AmmoPacks Se Pueda Subir De Nivel 

Tercero Buscamos En Donde Se Registra El Daño Para Ganar AmmoPacks:
Código PHP:
// Reward ammo packs
if ((g_survivor[attacker] && !get_pcvar_num(cvar_survignoreammo)) || (!g_survivor[attacker])
{
// Store damage dealt
g_damagedealt[attacker] += floatround(damage)

// Reward ammo packs for every [ammo damage] dealt
while (g_damagedealt[attacker] > get_pcvar_num(cvar_ammodamage))
{
g_ammopacks[attacker]++
g_damagedealt[attacker] -= get_pcvar_num(cvar_ammodamage)
update_ap(attacker// <-- Esto Hace Que El Humano y El Survivor Al Ganar AmmoPack Pueda Subir De Nivel
}
}

return 
HAM_IGNORED;


Cuarto Buscamos En Donde El Zombie Infecta Y Ganan AmmoPacks:
Y Para Que Pueda Subir De Nivel Agregamos Otro " update_ap "
Código PHP:
// Reward frags, deaths, health, and ammo packs
UpdateFrags(infectoridget_pcvar_num(cvar_fragsinfect), 11)
g_ammopacks[infector] += get_pcvar_num(cvar_ammoinfect)
fm_set_user_health(infectorpev(infectorpev_health) + get_pcvar_num(cvar_zombiebonushp))
update_ap(infector// <-- Esto Es Para Que El Zombie Al Infectar Pueda Suba De Nivel


Y Para Bajar De Nivel Al Gastar AmmoPack Buscamos:
Código PHP:
// Deduce ammo packs, play clip purchase sound, and notify player
g_ammopacks[id]-- // <-- Aki Abajo De Esto Agregamos " update_ap(id) "
// Lo Que Hace Esto Es Disminuir Los AmmoPack Y Al Disminuir Los AmmoPacks Pueda Bajar De Nivel.
emit_sound(idCHAN_ITEMsound_buyammo1.0ATTN_NORM0PITCH_NORM)
zp_colored_print(id"^x04[ZP]^x01 %L"id"AMMO_BOUGHT")

return 
PLUGIN_HANDLED;


Buscamos Esto Que Al Comprar Extra Items Redusca Los AmmoPacks Necesario Dependiendo De Cuanto Cueste.
Código PHP:
// Deduce item cost
g_ammopacks[id] -= ArrayGetCell(g_extraitem_costitemid)
update_ap(id// <-- Aki Agregamos Otro " update_ap(id) " Para Que Al Gastar AmmoPack Llame La Funcion Y Pueda Baje De Nivel.


Una Vez Echo Eso Buscamos:
Código PHP:
if (resetall)
{
g_level[id] = // <-- Esto Es Para Defini El Nivel Osea Empezaremos En Nivel 1
g_ammopacks[id] = get_pcvar_num(cvar_startammopacks)
g_zombieclass[id] = ZCLASS_NONE
g_zombieclassnext
[id] = ZCLASS_NONE
g_damagedealt
[id] = 0
WPN_AUTO_ON 
0
}


Luego Nos Vamos Al Final De Zp Y Pegamos Esto
Código PHP:
// Level System Macro
public update_ap(id// <-- Aki Llamamos La Funcion " update_ap "
{
static 
levellevel g_level[id]

// Creamos Un while Para Que Si Los AmmoPack Es Mayor A Lo Que Pedimos Suba De Nivel.
while (g_ammopacks[id] >= Level_Up((g_level[id]+1)) && g_level[id] < Max_Level// Max_Level Se Define Cuantos Niveles Quieres
g_level[id]++

// Creamos Otro while Para Que Si Los AmmoPack Es Menor A Lo Que Pedimos Baje De Nivel.
while (g_ammopacks[id] < Level_Up(g_level[id]) && g_level[id] > 1)
g_level[id]--
        
if (
g_level[id] > level)
{
zp_colored_print(id"^x04[ZP]^x01 Has Subido Al Nivel: ^x04%d^x01."g_level[id]) // Mandamos Un Print Al Subir De Nivel.
}
else if (
g_level[id] < level)
{
zp_colored_print(id"^x04[ZP]^x01 Has Bajado Al Nivel: ^x04%d^x01"g_level[id]) // Mandamos Otro Print Al Bajar De Nivel.
}


Y Para Mostrar En El Hud Cuantos AmmoPack Te Faltan Buscamos:
Código PHP:
// Show health, class and ammo packs and armor
set_hudmessage(redgreenblueHUD_STATS_XHUD_STATS_Y06.01.10.00.0, -1)
ShowSyncHudMsg(ID_SHOWHUDg_MsgSync2"%L: %d - %L %s - %L %d - %L %d"id"ZOMBIE_ATTRIB1"pev(ID_SHOWHUDpev_health), ID_SHOWHUD"CLASS_CLASS",
class, 
ID_SHOWHUD"AMMO_PACKS1"g_ammopacks[ID_SHOWHUD], ID_SHOWHUD"ARMOR"pev(ID_SHOWHUDpev_armorvalue)) 

Y Todo Eso Lo Remplazamos Por Esto:
Código PHP:
// Show health, class and ammo packs and armor
set_hudmessage(redgreenblueHUD_STATS_XHUD_STATS_Y12.01.10.00.0, -1)
ShowSyncHudMsg(ID_SHOWHUDg_MsgSync2"%L: %d - %L %s - %L %d/%d - %L %d - %L %d"id"ZOMBIE_ATTRIB1"pev(ID_SHOWHUDpev_health), ID_SHOWHUD"CLASS_CLASS", class,
ID_SHOWHUD"AMMO_PACKS1"g_ammopacks[ID_SHOWHUD], Level_Up((g_level[id]+1)), ID_SHOWHUD"ARMOR"pev(ID_SHOWHUDpev_armorvalue), ID_SHOWHUD"LEVEL"g_level[ID_SHOWHUD]) 
Responder
#2
Código PHP:
#define Max_Level 250 // Aki Se Define Cuanto Niveles Son El Maximo
#define Level_Up(%1) (%1 * %1 * 10) // Aki Definimos La Experiencia Para El Sig. Nivel 

aqui definimos la experiencia?? pense que era por ap...

Código PHP:
// Level System Macro
public update_ap(id// <-- Aki Llamamos La Funcion " update_ap "
{
static 
levellevel g_level[id]

// Creamos Un while Para Que Si Los AmmoPack Es Mayor A Lo Que Pedimos Suba De Nivel.
while (g_ammopacks[id] >= Level_Up((g_level[id]+1)) && g_level[id] < Max_Level// Max_Level Se Define Cuantos Niveles Quieres
g_level[id]++

if (
g_level[id] > level)
{
zp_colored_print(id"^x04[ZP]^x01 Felicidades Has Subido Al Nivel: ^x04%d^x01."g_level[id])
}


y si compro un extra items no me baja de level????
__________________________________________

no es tuyo el code, juntaste code de otros tutoriales, solo pusiste macros y lo demas de alliedmods

deja creditos a los autores....
[Guia] Granada de Droga [actulizado 01/04/14]
[Guia] Cambio de leap zp 4.2 a 4.3

Zp 4.2 Extincion [Beta+Lvl] Edicion 0.1 (%95) terminado
Responder
#3
No Soy Bueno Explicando Pero Se Entiende.
Ya Lo Actualize Por Que No Se Podia Bajar De Nivel Al Gastar Los AmmoPacks
Todo Anda Perfecto Gran sonrisa
Responder
#4
edit: recien lo vi lo que queria que pusiera, borren este mensaje xD
[Guia] Granada de Droga [actulizado 01/04/14]
[Guia] Cambio de leap zp 4.2 a 4.3

Zp 4.2 Extincion [Beta+Lvl] Edicion 0.1 (%95) terminado
Responder
#5
Muy Buen Tuto .
Hide' N Seek <3
Responder
#6
me tiro unos par de errores ami
Responder
#7
Esto Funciona Perfecto Te Equivocaste En Algo
Responder
#8
te falto crear la variable g_level
[Guia] Granada de Droga [actulizado 01/04/14]
[Guia] Cambio de leap zp 4.2 a 4.3

Zp 4.2 Extincion [Beta+Lvl] Edicion 0.1 (%95) terminado
Responder
#9
A Mierda Me Olvide...

Ya Lo Actualize
Responder
#10
Hola soy re novato ,quisiera saver si algien me ayuda!!solo se tuniar servidores y parchar plugins Cutecry
Responder
#11
amigo en donde voy poniendo eso soyt new en esto y no se mucho Plz:3 seria mejor que hicieras un video Sonrisa Y asi es mas facil y mas rapido Cutecry
Responder
#12
(17/04/2017, 07:19 PM)Maswuel01 escribió: amigo en donde voy poniendo eso soyt new en esto y no se mucho Plz:3 seria mejor que hicieras un video Sonrisa Y asi es mas facil y mas rapido Cutecry

Averigua de cuando es el post antes de comentar tonteras.
Trolleyes
Responder
#13
(17/04/2017, 07:19 PM)Maswuel01 escribió: amigo en donde voy poniendo eso soyt new en esto y no se mucho Plz:3 seria mejor que hicieras un video Sonrisa Y asi es mas facil y mas rapido Cutecry

Si vas a editar un ZP tené un MINIMO de conocimiento, no pidas videos para esto, si no sabes editarlo te conviene empezar por cosas sencillas e ir aprendiendo, como ya he dicho, no intentes correr antes de aprender a caminar.

PD: para el de abajo de tu comentario, si tiene que ver con el post está bien que consulte
Responder
#14
(17/04/2017, 08:49 PM)matrix123 escribió:
(17/04/2017, 07:19 PM)Maswuel01 escribió: amigo en donde voy poniendo eso soyt new en esto y no se mucho Plz:3 seria mejor que hicieras un video Sonrisa Y asi es mas facil y mas rapido Cutecry

Si vas a editar un ZP tené un MINIMO de conocimiento, no pidas videos para esto, si no sabes editarlo te conviene empezar por cosas sencillas e ir aprendiendo, como ya he dicho, no intentes correr antes de aprender a caminar.

PD: para el de abajo de tu comentario, si tiene que ver con el post está bien que consulte

Lo dije por que pide video y el creador del post esta baneado
Trolleyes
Responder
#15
(17/04/2017, 08:53 PM)FrancoX escribió:
(17/04/2017, 08:49 PM)matrix123 escribió:
(17/04/2017, 07:19 PM)Maswuel01 escribió: amigo en donde voy poniendo eso soyt new en esto y no se mucho Plz:3 seria mejor que hicieras un video Sonrisa Y asi es mas facil y mas rapido Cutecry

Si vas a editar un ZP tené un MINIMO de conocimiento, no pidas videos para esto, si no sabes editarlo te conviene empezar por cosas sencillas e ir aprendiendo, como ya he dicho, no intentes correr antes de aprender a caminar.

PD: para el de abajo de tu comentario, si tiene que ver con el post está bien que consulte

Lo dije por que pide video y el creador del post esta baneado

de cuando es el post != el creador está baneado

son 2 cosas diferentes, no quieras redimirte.
Responder
#16
(17/04/2017, 09:04 PM)matrix123 escribió:
(17/04/2017, 08:53 PM)FrancoX escribió:
(17/04/2017, 08:49 PM)matrix123 escribió:
(17/04/2017, 07:19 PM)Maswuel01 escribió: amigo en donde voy poniendo eso soyt new en esto y no se mucho Plz:3 seria mejor que hicieras un video Sonrisa Y asi es mas facil y mas rapido Cutecry

Si vas a editar un ZP tené un MINIMO de conocimiento, no pidas videos para esto, si no sabes editarlo te conviene empezar por cosas sencillas e ir aprendiendo, como ya he dicho, no intentes correr antes de aprender a caminar.

PD: para el de abajo de tu comentario, si tiene que ver con el post está bien que consulte

Lo dije por que pide video y el creador del post esta baneado

de cuando es el post != el creador está baneado

son 2 cosas diferentes, no quieras redimirte.

Me da igual lo que pienses Whatever, no comento mas.
Trolleyes
Responder
#17
Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright © 1997-2006 ITB CompuPhase, AMX Mod X Team

Warning: Loose indentation on line 2294
Warning: Loose indentation on line 2297
Warning: Loose indentation on line 8361
Header size: 7516 bytes
Code size: 303024 bytes
Data size: 146772 bytes
Stack/heap size: 16384 bytes; max. usage is unknown, due to recursion
Total requirements: 473696 bytes

3 Warnings.
Done.


AYUDA?? cuando entro al zp en el hud sale mal lo de ( LEVEL: ) y dice algo en el hud lo que dice es lo siguiente ( ML_NOTFOUND LEVEL: 1 ) Algo asi dice , no se si me explico xd ... PD Soy nuevo en esto pacman
Responder
#18
falta el lang
Responder
#19
Lo otro es error de compilación.
[Imagen: zcsztw-4.png] [Imagen: 6u5fj2-4.png]
[Imagen: linkedin_thumb_image.png][Imagen: 76561198283253977.png][Imagen: linkedin_thumb_image.png]
Responder
#20
Funciona pero esta bug cuando llegas al lvl maximo los ( AmmoPacks ) siguen aumentando Cutecry
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)