Raised This Month: $ Target: $400
 0% 

[AYUDA] No paso de level


  
 
 
Thread Tools Display Modes
Author Message
lRodri.
Member
Join Date: Apr 2012
Location: Argentina
Old 01-03-2013 , 12:49   [AYUDA] No paso de level
#1

Bueno, mi problema es que agregue la función para que los adm frageen de a 2. Pero el problema es que cuando llegan a los 15 frags (Requeridos para el nivel 2), no pasan de level, siguen sumando frags.

Codigo:

PHP Code:
#include <amxmodx> 
#include <hamsandwich> 
#include <engine>
#include <cstrike> 
#include <fun>
#include <amxmisc>

#define PLUGIN "Base Builder Revolution" 
#define VERSION "1.0" 
#define AUTHOR "RodriiK - r0ma' (Niveles por Frags) - [R]ak (Crear una entidad)" 

#define TAG "[Base Builder Revolution]" 
//Tag en el mensaje de que subio de nivel 
//Macro para obtener cuanto le falta para el siguiente nivel 

//Si no resetean los frags usaria 1 macro asi mas o menos 
//#define next_level(%1) ((%1 + 1) * (power(%1, 2) / 2)) /2 


//Si resetan frags usaria algo asi 
#define next_level(%1) %1 * 16

new g_vida[33]
new 
g_puntos[33]
new 
g_level[33// Contiene los level de los players 
new g_frags[33// Los frags de los players 

new g_conectado[33// Variable para saber si el user esta conectado 

new g_maxplayersg_msgSayText//en g_maxplayers voy a obtener el maximo de players del sv para usarla en los loops, y en msgsay text para el stock de hns_print_color 

public plugin_init() { 
    
register_plugin(PLUGINVERSIONAUTHOR)//Registramos el plugin
     
    
RegisterHam(Ham_Killed"player""fw_PlayerKilled")//Evento de hamsandwich que se llama cuando matan a alguien. 
    
register_clcmd("say /clases""Menu")
    
register_clcmd("say /menu""Menu2")
     
    new 
ent create_entity("info_target")//Creo 1 entidad 
    
entity_set_string(entEV_SZ_classname"entity_task")//Le seteo 1 classname 
    
entity_set_float(entEV_FL_nextthink1.0)//La ago pensar cada 1.0 segundos 
     
    
register_think("entity_task""fw_ShowHUD")//El think de la entidad que va mostrar el hud 
     
    
g_maxplayers get_maxplayers() 
    
g_msgSayText get_user_msgid("SayText"
    
    
RegisterHamHam_Spawn"player""fw_playerspawn"1)
    


public 
client_putinserver(id

    
g_level[id] = 1//Reseteamos los level frags y le seteo conectado 
    
g_frags[id] = 
    g_conectado
[id] = 


public 
client_disconnect(id

    
g_conectado[id] = 0//No esta mas conectado 


public 
fw_PlayerKilled(victimattacker

    if(!
g_conectado[victim] || !g_conectado[attacker] || victim == attacker || get_user_team(victim) == get_user_team(attacker))//Si no esta conectado la victima o el atacante o la victima es el atacante o son del mismo team no continua 
        
return 
     
    if(
is_user_admin(attacker))
    {
        
g_frags[attacker] += 2
    g_puntos
[attacker] += 2
    
}
    else
    {
        
        
g_frags[attacker]++//Aumentamos frags y chekeamos si tiene suficientes para subir de nivel 
        
check_level(attacker
        
g_puntos[attacker]++    
     }
     
        


public 
fw_ShowHUD(ent)//Esto muestra el hud 

    static 
id 
     
    set_hudmessage
(852552120.800.1200.9)//Configuramos por asi decirlo el hud, el color, posicion, efecto, y tiempo 
    
for( id 1id <= g_maxplayersid++) 
    { 
        if(!
g_conectado[id])//Si no esta conectado no continua 
            
continue 
         
        
show_hudmessage(id"[Level: %d]   [Frags: %d/%d]   [Puntos: %d]"g_level[id], g_frags[id], next_level(g_level[id]), g_puntos[id])//Mostramos hud con nivel, frags y los necesarios para pasar al siguiente nivel.
    

     
    
entity_set_float(entEV_FL_nextthink1.0


public 
check_level(id

    while(
g_frags[id] >= next_level(g_level[id]))//Si los frags son mayores o igual a los necesarios para pasar de nivel. 
    
{    
        
g_level[id]++//Aumentamos el nivel 
        
g_frags[id] = 0//Yo reseteo lo frags esto es a su gusto. 
        
hns_print_color(id"^x04%s^x01 Felicitaciones subiste al nivel:^x04 %d^x01."TAGg_level[id])//Mensaje que subio de nivel  
        
if(cs_get_user_team(id) == CS_TEAM_T)
    {
        
set_user_health(idget_user_health(id) + g_vida[id] * 25)
    }
    } 


Last edited by lRodri.; 01-03-2013 at 13:16.
lRodri. is offline
Send a message via MSN to lRodri.
Old 01-03-2013, 12:51
rak
This message has been deleted by lucas_7_94. Reason: Off topic.
Old 01-03-2013, 13:15
lucas_7_94
This message has been deleted by lucas_7_94. Reason: Off topic.
Old 01-03-2013, 13:17
LeeanAndNeka
This message has been deleted by lucas_7_94. Reason: Off topic.
Old 01-03-2013, 13:24
Roccoxx
This message has been deleted by lucas_7_94. Reason: Off topic.
Old 01-03-2013, 13:35
rak
This message has been deleted by lucas_7_94. Reason: Off topic.
Old 01-03-2013, 13:35
BlackFur
This message has been deleted by lucas_7_94. Reason: Off topic.
Old 01-03-2013, 13:41
Roccoxx
This message has been deleted by lucas_7_94. Reason: Off topic.
Old 01-03-2013, 13:43
BlackFur
This message has been deleted by lucas_7_94. Reason: Off topic.
Old 01-03-2013, 13:48
rak
This message has been deleted by lucas_7_94. Reason: Off topic.
Old 01-03-2013, 13:57
xLeoNNN
This message has been deleted by lucas_7_94. Reason: Off topic.
Old 01-03-2013, 13:59
LeeanAndNeka
This message has been deleted by lucas_7_94. Reason: Off topic.
Old 01-03-2013, 14:03
Roccoxx
This message has been deleted by lucas_7_94. Reason: Off topic.
Old 01-03-2013, 14:03
BlackFur
This message has been deleted by lucas_7_94. Reason: Off topic.
Old 01-03-2013, 14:04
rak
This message has been deleted by lucas_7_94. Reason: Off topic.
lucas_7_94
Leche Loco
Join Date: Mar 2009
Location: Argentina
Old 01-03-2013 , 14:27   Re: [AYUDA] No paso de level
#2

Spoiler


Ya basta.
__________________
ATWWMH - MiniDuels
Madness is like gravity, just need a little push.

Last edited by lucas_7_94; 01-03-2013 at 14:27.
lucas_7_94 is offline
Send a message via Skype™ to lucas_7_94
Old 01-03-2013, 14:30
r0ma
This message has been deleted by lucas_7_94. Reason: Off topic.
Old 01-03-2013, 14:31
xLeoNNN
This message has been deleted by lucas_7_94. Reason: Off topic.
Old 01-03-2013, 14:57
Roccoxx
This message has been deleted by lucas_7_94. Reason: Off topic.
claans
Senior Member
Join Date: Jul 2012
Location: Argentina
Old 01-03-2013 , 15:07   Re: [AYUDA] No paso de level
#3

PHP Code:
if(is_user_admin(attacker)) 
    { 
        
g_frags[attacker] += 
        g_puntos
[attacker] += 
        
// cuando checkeas el level :3 ?
    

Volviendo , que pase el id de la cuenta steam y corta ..

sl2
cLAANS.-
__________________
http://amxmodx-es.com/ Allied Modders en español
http://amxmodx-es.com/ Allied Modders in spanish

Last edited by claans; 01-03-2013 at 15:09.
claans is offline
Send a message via MSN to claans Send a message via Skype™ to claans
Exodisto
BANNED
Join Date: Dec 2012
Location: Algún que otro lugar
Old 01-03-2013 , 16:28   Re: [AYUDA] No paso de level
#4

Pobresito, no sean tan malos, mira para tu problema lo que debes hacer es chequear el nivel, porque si nunca lo haces seguirá subiendo la experiencia y nunca subirás de nivel, para que suba de nivel cuando mates a alguien es algo parecido a esto:

Te vas al public fw_PlayerKilled y ahi dentro agregas esto

PHP Code:
    if(!g_zombie[attacker] && g_zombie[victim]) // Si el humano es el atacante ganara 200 AP por matar un Zombie
    

        
g_ammopacks[attacker] += 200 // le damos los ap que gana
        
check_level(attacker)  // chequeamos la subida del nivel
    
}
    if(
g_zombie[attacker] && !g_zombie[victim]) // Si el zombie es el atacante ganara 200 AP por matar un Humano
    

        
g_ammopacks[attacker] += 200 // le damos los ap que gana
        
check_level(attacker)  // chequeamos la subida del nivel
    
}

    if(!
g_nemesis[attacker] && g_nemesis[victim]) // Si el humano es el atacante ganara 500 AP por matar un Nemesis
    

        
g_ammopacks[attacker] += 500 // le damos los ap que gana
        
check_level(attacker)  // chequeamos la subida del nivel
    
}

    if(!
g_survivor[attacker] && g_survivor[victim]) // Si el humano es el atacante ganara 500 AP por matar un Survivor
    

        
g_ammopacks[attacker] += 500 // le damos los ap que gana
        
check_level(attacker)  // chequeamos la subida del nivel
    

Y ahi editas si lo quieres cambiar por frags o lo que tu quieras, es solo un ejemplo eso que te he dejado.

Last edited by Exodisto; 01-03-2013 at 16:32.
Exodisto is offline
Old 01-03-2013, 17:45
LeeanAndNeka
This message has been deleted by lucas_7_94. Reason: Off topic.
 



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 06:42.


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