Mensajes: 516
Temas: 133
Registro en: Oct 2013
Reputación:
4
14/04/2014, 04:00 PM
(Última modificación: 15/04/2014, 02:18 PM por kirito.)
Hola amigos ya que yo siempre pido hoy vengo a traerles un tutorial de niveles por experiencia de macros hay varios tutoriales pero para alguien que no sabe ni papa de pawn aquí les explico como incorporarlos a cualquier zp, ya sea 4.2, 4.3, advanced, etc.
comenzemos...
Esto lo ponen donde quieran:
Código PHP: #define Niveles(%1) (%1 * %1 * 15) // aqui el porcentaje de los niveles o el macro #define NIVEL_MAX 250 // aqui el maximo de niveles
luego vamos a //Players Vars y creamos las siguientes variables
Código PHP: new g_level[33] // variable de nivel de 33 celdas new g_exp[33] // variable de experiencia de 33 celdas
Luego vamos al forward donde se registrara o registraremos la experiencia que ganaremos vamos a...
Código PHP: public fw_PlayerKilled(victim, attacker, shouldgib)
// hacemos dos condicionales o sentencias if(!g_zombie[attacker] && g_zombie[victim]) // aqui decimos si el humano es el atacante { g_ammopacks[attacker]++ // se le sumaran ap g_exp[attacker]+= 50 // se le dara 50 de exp esto se puede cambiar check_level(attacker) // chequeamos el public }
if(g_zombie[attacker] && !g_zombie[victim]) // aqui decimos si el zombie es el atacante { g_ammopacks[attacker]++ g_exp[attacker]+= 50 check_level(attacker) }
/* ustedes no saben que es ++ o += bien esto es ++ sumara una cantidad indeterminada o aumentara, en cuanto += sumara una cantidad exacta digamos 50 por mas que mates zombies nunca se pasara de esa cantidad y ++ se incrementa o aumenta */
Luego vamos al final de su zp y pongamos este public de nivel
Código PHP: // check public level public check_level(id) { // Upload level while (g_exp[id] >= Niveles(g_level[id]+1)) && g_level[id] < NIVEL_MAX) // esto es un while que nos dara el nivel si tenemos la experiencia necesaria { g_level[id]++ // aqui se le incrementa el nivel solo sera uno zp_colored_print(id, "^x03[ZP]^x04 Felicidades! Has Subido al nivel: ^x03%d^x01", g_level[id]) // mensaje de cuanto subes nivel } }
y para agregar al hud vamos a:
Código PHP: public showhud
// y agregan ^n[Nivel %d]^n[exp %d], g_level[id], g_exp[id]
Cierto Para que se registre que level son al inciar van a:
Código PHP: reset_vars(id) g_level[id] = 1 // en vez de += lo ponemos = 1 g_exp[id] = 0 // ponen la exp que quieran
Y esto ha sido todo cualquier error o duda me lo dicen.
Mensajes: 642
Temas: 25
Registro en: Feb 2014
Reputación:
17
y si yo entro por primera vez, que nivel soy?
Código PHP: /* ustedes no saben que es ++ o += bien esto es ++ sumara una cantidad indeterminada o aumentara, en cuanto += sumara una cantidad exacta digamos 50 por mas que mates zombies nunca se pasara de esa cantidad y ++ se incrementa o aumenta */
No es la mejor definicion, es medio obio que cuando algo se incrementa aumente :/
Porque el check_level es public?
Porque haces Niveles((g_level[id]+1)) y no Niveles(g_level[id]+1)?
Porque la variable g_levels[33] tiene 33 celdas, si hay 250 niveles?
Código PHP: // hacemos dos condicionales o sentencias g_ammopacks[attacker]++ // se le sumaran ap g_exp[attacker]+= 50 // se le dara 50 de exp esto se puede cambiar check_level(attacker) // chequeamos el public
Como lo pusiste no tenia sentido, ademas tenes que checkar que la victima sea valida y el atacante este vivo
Bueno son algunas cositas que vi, espero que lo arregles
(19/06/2014, 11:08 PM)01011001 escribió: No tiene niveles infinitos, llega hasta 2147483648 (Y despues hace un integer overflow)
(19/06/2014, 11:08 PM)[R]ak escribió: Mis conocimientos aumentaron un 500% con este post
Mensajes: 516
Temas: 133
Registro en: Oct 2013
Reputación:
4
Gracias por tus observaciones Kane pero asi lo tengo yo y me anda bien pero bueno, ademas la variable tiene 33 celdas y haci 250 niveles por algo hice un define no crees?
Mensajes: 2,600
Temas: 33
Registro en: Oct 2013
Reputación:
36
si subo 20 niveles de golpe, me salen 20 prints.. pienso que deberías mejorar eso.
(17/04/2015, 03:36 PM)Neeeeeeeeeel.- escribió: No se va a volver a conectar a internet en toda su puta vida... nadie sube porno a mi foro y vive para contarlo.
Mensajes: 516
Temas: 133
Registro en: Oct 2013
Reputación:
4
Mensajes: 613
Temas: 78
Registro en: Dec 2013
Reputación:
12
Esto tira error , pero lo veo bien, no se que es lo que puede estar mal aca
Código PHP: while (g_exp[id] >= Niveles(g_level[id]+1)? && g_level[id] < NIVEL_MAX) // esto es un while que nos dara el nivel si tenemos la experiencia necesaria
NUEVO ZOMBIE PLAGUE + LVLS!! UNETE A LA COMUNIDAD
Mensajes: 642
Temas: 25
Registro en: Feb 2014
Reputación:
17
Código PHP: while (g_exp[id] >= Niveles(g_level[id]+1)? && g_level[id] < NIVEL_MAX)
--->
Código PHP: while (g_exp[id] >= Niveles(g_level[id]+1) && g_level[id] < NIVEL_MAX)
(19/06/2014, 11:08 PM)01011001 escribió: No tiene niveles infinitos, llega hasta 2147483648 (Y despues hace un integer overflow)
(19/06/2014, 11:08 PM)[R]ak escribió: Mis conocimientos aumentaron un 500% con este post
Mensajes: 516
Temas: 133
Registro en: Oct 2013
Reputación:
4
14/04/2014, 07:05 PM
(Última modificación: 14/04/2014, 07:06 PM por kirito.)
Osea ya lo arregle Kane Gracias man
Mensajes: 694
Temas: 146
Registro en: Nov 2013
Reputación:
11
14/04/2014, 07:44 PM
(Última modificación: 14/04/2014, 07:46 PM por Pipa Roja.)
Código PHP: // check public level public check_level(id) { // Upload level while (g_exp[id] >= Niveles(g_level[id]+1) && g_level[id] < NIVEL_MAX) // esto es un while que nos dara el nivel si tenemos la experiencia necesaria { g_level[id]++ // aqui se le incrementa el nivel solo sera uno zp_colored_print(id, "^x03[ZP]^x04 Felicidades! Has Subido al nivel: ^x03%d^x01", g_level[id]) // mensaje de cuanto subes nivel } }
----------->
Código PHP: public check_level(id) { while( g_exp[id] >= next_level(g_level[id] ) ) { g_level[id]++ g_exp[id] = 0 zp_colored_print(id, "^x03[ZP]^x04 Felicidades! Has Subido al nivel: ^x03%d^x01", g_level[id]) } }
Mensajes: 613
Temas: 78
Registro en: Dec 2013
Reputación:
12
cuando me subo los APS con la base de datos no me sube de LVL
Yo saque la variable g_exp y subo los lvl por aps ; y me quedo en lvl 1 por mas que tenga 10mil aps
NUEVO ZOMBIE PLAGUE + LVLS!! UNETE A LA COMUNIDAD
Mensajes: 2,459
Temas: 15
Registro en: Feb 2014
Reputación:
28
(14/04/2014, 06:43 PM)kirito escribió: Como RauliTop?
Deberias saberlo dsp de todo estas haciendo un tutorial se supone que estas capacitado para explicar...
Saca el msj del while
[TUT] Carnage
Fight
"El limite de los backdoors de gente q sabe programar como nostros lo impone nuestra maldad interior y creeme q soy muy malo en el interior"
Anónimo
Mensajes: 516
Temas: 133
Registro en: Oct 2013
Reputación:
4
(14/04/2014, 07:55 PM)Evil Spiret escribió: cuando me subo los APS con la base de datos no me sube de LVL
Yo saque la variable g_exp y subo los lvl por aps ; y me quedo en lvl 1 por mas que tenga 10mil aps
usa el tutorial de mono fusionado con el mio y haci si sirve te lo aseguro
Mensajes: 694
Temas: 146
Registro en: Nov 2013
Reputación:
11
(14/04/2014, 09:18 PM)kirito escribió: (14/04/2014, 07:55 PM)Evil Spiret escribió: cuando me subo los APS con la base de datos no me sube de LVL
Yo saque la variable g_exp y subo los lvl por aps ; y me quedo en lvl 1 por mas que tenga 10mil aps
usa el tutorial de mono fusionado con el mio y haci si sirve te lo aseguro
Deberia funcionar sin tutoriales externos ....
1 tutorial 1 objetivo.
Mensajes: 613
Temas: 78
Registro en: Dec 2013
Reputación:
12
(14/04/2014, 09:18 PM)kirito escribió: (14/04/2014, 07:55 PM)Evil Spiret escribió: cuando me subo los APS con la base de datos no me sube de LVL
Yo saque la variable g_exp y subo los lvl por aps ; y me quedo en lvl 1 por mas que tenga 10mil aps
usa el tutorial de mono fusionado con el mio y haci si sirve te lo aseguro
Podes pasarmelo ?
Gracias.
NUEVO ZOMBIE PLAGUE + LVLS!! UNETE A LA COMUNIDAD
Mensajes: 516
Temas: 133
Registro en: Oct 2013
Reputación:
4
Claro es facilito mp porfavor
Mensajes: 765
Temas: 46
Registro en: Jul 2016
Reputación:
5
09/08/2016, 09:39 AM
(Última modificación: 09/08/2016, 10:07 AM por wester.)
Disculpenme por revivir el thread
(14/04/2014, 04:37 PM)Kane escribió: Código PHP: Porque la variable g_levels[33] tiene 33 celdas, si hay 250 niveles?
Que pasa que tenga [33] y 250 niveles? afecta en algo?
disculpen mi ignoracia
Pero si tendria en tal caso 100 Niveles maximo como se podria?
Idioma: [Extrangez]
Nivel de Amistad: [Depende de ti]
Aportes:
[Mapas]
zm_impressive
zm_laberim
zm_bunkeriM 28%
Made in Venezuela
Mensajes: 6,664
Temas: 81
Registro en: Jan 2014
Reputación:
68
(09/08/2016, 09:39 AM)wester escribió: Disculpenme por revivir el thread
(14/04/2014, 04:37 PM)Kane escribió: Código PHP: Porque la variable g_levels[33] tiene 33 celdas, si hay 250 niveles?
Que pasa que tenga [33] y 250 niveles? afecta en algo?
disculpen mi ignoracia
Pero si tendria en tal caso 100 Niveles maximo como se podria?
No tiene nada que ver, la guia esta bien, las 33 celdas es para indexar ( 1 celda por jugador )
► NO DOY AYUDA VIA MENSAJE PRIVADO ◄
* Si requieres algún servicio de pago puedes contactarme vía MP o en mi facebook
|