Raised This Month: $51 Target: $400
 12% 

[ZP] Problema con niveles valores negativos


  
 
 
Thread Tools Display Modes
Author Message
GalaxyA
BANNED
Join Date: Sep 2012
Location: Noob Member
Old 09-07-2012 , 22:37   [ZP] Problema con niveles valores negativos
#1

Hola tengo un problema con el sisteama de NVL bueno estube haciendo este sistema que me dio rak y lo coloque dentro del zp todo bien funciona pero cuando quize cambiar la experiencia ganada paso esto que cuando mato a un zombie puse que ganara 4 de experiencia y pasa que si mato a un zombie cuando estoy en nivel 0 y exp 0/1 se bugea y en vez de dejarme en nivel 3 me deja en nivel 1 y no avanza las otros puntos de experiencia
aqui algo del code:
PHP Code:
#define Exp_Level(%1)       (power(2, %1)) // se duplica la experiencia para el proximo nivel 0, 2, 4, 8, 16, 32, etc...

enum _:FNAME {
    
LEVEL_UP
}
new 
g_exp[33], g_level[33// variables exp y level

public plugin_init
g_Forward
[LEVEL_UP] = CreateMultiForward("dz_level_up"ET_IGNOREFP_CELLFP_CELL)

ublic fw_PlayerKilled(victimattackershouldgib)
    
// Si el Humano es la victima
    
if(g_zombie[attacker] && !g_zombie[victim] && !g_survivor[victim] && !g_wesker[victim] && !g_depre[victim] && !g_sniper[victim])
    {
        
g_exp[attacker] += 4  // 4 puntos de experiencia por matar a un humano
        
zp_colored_print(attacker"^x04[ZP RE4]^x01 Ganaste^x04 4^x01 de^x04 Exp^x01 por:^x04 Matar un Humano^x01.")
        
Exp_Update(attacker1// ojo con esto talvez sea el error :C
    
}

    
// Si el Zombie es la victima
    
if(!g_zombie[attacker] && g_zombie[victim] && !g_nemesis[victim] && !g_assassin[victim] && !g_alien[victim])
    {
        
g_exp[attacker] += // 4 puntos de experiencia por matar a un zombie
        
zp_colored_print(attacker"^x04[ZP RE4]^x01 Ganaste^x04 4^x01 de^x04 Exp^x01 por:^x04 Matar un Zombie^x01.")
        
Exp_Update(attacker1// ojo con esto talvez sea el error :C
        
    
}

// Client joins the game
public client_putinserver(id)
{
    
// Plugin disabled?
    
if (!g_pluginenabled) return;
    
    
// Player joined
    
g_isconnected[id] = true
    
    g_level
[id] = // resetear valores cuando entra al sv a 0
    
g_exp[id] = // resetear valores cuando entra al sv a 0
}

// update level
public Exp_Update(idexp) {
    
g_exp[id] += exp
    
if(g_exp[id] >= Exp_Level(g_level[id])) {
        
g_level[id]++
        
        
ExecuteForward(g_Forward[LEVEL_UP], g_ForwardResultidg_level[id])
    }
}

public 
dz_level_up(idlevel)
{
    
printf(idGRAY"[ZP]^x04 Subiste al nivel^x03 %d"level

Todo me lo dio rak bueno ahora les dejo una imagen del problema

Historia:
Cuando entro al servidor entro con nivel 0 y experiencia 0/1 osea que necesito 1 punto de exp para pasar siguiente nivel...
Cuando mato a un zombie o humano se me proporciona 4 de experiencia aqui el problema solo updatea un nivel y me devuelve el valor de:
4/2 y me sube solo un nivel NO 2 niveles como deberia ser deberia quedar asi :
Nivel: 2
Exp: 4/8
Aqui la foto
Ademas resulta que en vez de darme 4 de experiencia me proporcion siempre un punto mas de experiencia 5 en vez de 4 :/
Gracias de antemano
EDIT: Solucione lo de la 1 exp extra ahora solo falta que me detecte dos niveles o 3 o 4 si es que mato a alguien con tanta exp
Attached Thumbnails
Click image for larger version

Name:	de_dust0016.jpg
Views:	106
Size:	9.6 KB
ID:	109146  

Last edited by GalaxyA; 09-07-2012 at 23:31.
GalaxyA is offline
Send a message via MSN to GalaxyA
el999gonzalo
BANNED
Join Date: Aug 2012
Old 09-07-2012 , 23:46   Re: [ZP] Problema con niveles valores negativos
#2

PHP Code:
// update level
public Exp_Update(idexp) {
    
g_exp[id] += exp
    
while(g_exp[id] >= Exp_Level(g_level[id])) {
        
g_level[id]++
        
        
ExecuteForward(g_Forward[LEVEL_UP], g_ForwardResultidg_level[id])
    }

Cambia El IF por While , asi no se bugea

Last edited by el999gonzalo; 09-07-2012 at 23:47.
el999gonzalo is offline
GalaxyA
BANNED
Join Date: Sep 2012
Location: Noob Member
Old 09-08-2012 , 00:03   Re: [ZP] Problema con niveles valores negativos
#3

que no se buguea? tu dices si hago eso se solucionara todo?
PHP Code:
// update level
public Exp_Update(id) {
    if (
g_exp[id] >= Exp_Level(g_level[id])) {
        
g_level[id]++
        
        
ExecuteForward(g_Forward[LEVEL_UP], g_ForwardResultidg_level[id])
    }

lo tengo asi yo

Last edited by GalaxyA; 09-08-2012 at 00:04.
GalaxyA is offline
Send a message via MSN to GalaxyA
aguchox
Member
Join Date: Aug 2010
Old 09-08-2012 , 00:12   Re: [ZP] Problema con niveles valores negativos
#4

yo digo qe cambies x while y qe no empeses de nivel 0, osea qe empiese de nivel 1.
aguchox is offline
GalaxyA
BANNED
Join Date: Sep 2012
Location: Noob Member
Old 09-08-2012 , 00:14   Re: [ZP] Problema con niveles valores negativos
#5

nonono asi esta bien me solucionaste todo ese lio ahora se arreglo
GalaxyA is offline
Send a message via MSN to GalaxyA
el999gonzalo
BANNED
Join Date: Aug 2012
Old 09-08-2012 , 09:51   Re: [ZP] Problema con niveles valores negativos
#6

Pero si eso te dige!!!!!!!!! que no leiste el code ?
el999gonzalo is offline
GalaxyA
BANNED
Join Date: Sep 2012
Location: Noob Member
Old 09-08-2012 , 11:24   Re: [ZP] Problema con niveles valores negativos
#7

si lo lei pero se me olvido que el niveles que em paso rak era para avanzar de1 frag con la condicion (id, exp) le borre el exp y el punto que regala por matar cualquier user y lo adapte con el while que me dijiste se me olvido por que en el tuto de feAar sale lo del while
GalaxyA is offline
Send a message via MSN to GalaxyA
Neeeeeeeeeel.-
Some Guy Yellin'
Join Date: Jul 2010
Location: Argentina
Old 09-08-2012 , 12:00   Re: [ZP] Problema con niveles valores negativos
#8

Quote:
Originally Posted by el999gonzalo View Post
PHP Code:
// update level
public Exp_Update(idexp) {
    
g_exp[id] += exp
    
while(g_exp[id] >= Exp_Level(g_level[id])) {
        
g_level[id]++
        
        
ExecuteForward(g_Forward[LEVEL_UP], g_ForwardResultidg_level[id])
    }

Cambia El IF por While , asi no se bugea
Y cuando baja la exp? No baja de level?
__________________
Neeeeeeeeeel.- is offline
Send a message via Skype™ to Neeeeeeeeeel.-
el999gonzalo
BANNED
Join Date: Aug 2012
Old 09-08-2012 , 12:02   Re: [ZP] Problema con niveles valores negativos
#9

no veo en ninguna parte de todo el api como baja la exp asi que no es problema
el999gonzalo is offline
GalaxyA
BANNED
Join Date: Sep 2012
Location: Noob Member
Old 09-08-2012 , 12:53   Re: [ZP] Problema con niveles valores negativos
#10

no, es que nunca debiera bajar por ningun motivo la EXP o si ? en ninguna parte puse algo para que bajara la EXP bueno si es que hay alguna forma de hace eso...
GalaxyA is offline
Send a message via MSN to GalaxyA
 



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 22:42.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode