Raised This Month: $399 Target: $400
 99%   Almost there!

[Ayuda] No me sube los frags


  
 
 
Thread Tools Display Modes
Author Message
wEEk
Senior Member
Join Date: Sep 2012
Old 03-24-2013 , 14:56   [Ayuda] No me sube los frags
#1

Buenas, les queria preguntar por que no me suma los frags, intente ponerle un guardado nvault pero ahora no me compila me podrian corregir los errores

PHP Code:
#include <amxmodx> 
#include <hamsandwich> 
#include <engine>  
#include <nvault>

#define PLUGIN "[TUT] Niveles por Frags" 
#define VERSION "1.0" 
#define AUTHOR "r0ma'" 
//Creditos a [R]ak por mostrarme como hacer pensar 1 entidad enves de usar task 

#define TAG "[TUT]Niveles por Frags" 
//Tag en el mensaje de que subio de nivel 
//Macro para obtener cuanto le falta para el siguiente nivel 

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

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 XP_Kill,XP_Knife,XP_Hs,SaveXP,g_vault
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. 
     
    
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  
     
    
SaveXP register_cvar("EXP_FinalRonda","1"
    
XP_Kill=register_cvar("EXP_Jugador""20"
    
XP_Hs=register_cvar("EXP_Granada","40"
    
XP_Knife=register_cvar("EXP_Cuchillo","50"
    
g_vault nvault_open("FragsHns")
     
    
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"


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(victimattackershouldgib)

    if (
get_user_weapon(attacker) == CSW_HEGRENADE)
    {
        
g_frags[attacker] += get_pcvar_num(XP_Hs)
        
client_print(attackerprint_chat,"Subiste [1 Frags]")
    
        if(
get_pcvar_num(SaveXP) == 1
        { 
                
SaveData(attacker)
        }
    }
    
    if (
get_user_weapon(attacker) == CSW_KNIFE)
    {
        
g_frags[attacker] += get_pcvar_num(XP_Knife)
        
client_print(attackerprint_chat"Subiste [1 Frags]")
    
        if(
get_pcvar_num(SaveXP) == 1
        { 
                
SaveData(attacker
        }
    }
    else
    {
        
g_frags[attacker] += get_pcvar_num(XP_Kill
        
client_print(attackerprint_chat"Subiste [1 Frags]")
        if(
get_pcvar_num(SaveXP) == 1
        { 
                
SaveData(attacker
        }
    }

    while(
g_frags[attacker] >= next_level[g_level[attacker]]) 
    { 
        
g_level[attacker]++ 
        
g_frags[id] = 0
        client_print
(attackerprint_chat"Felicidades! Has subido de nivel, nivel actual: %d"g_level[attacker])

        if(
get_pcvar_num(SaveXP) == 1
        { 
            
SaveData(attacker
        }
    } 
    
SaveData(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"[Nombre: %d]^n[Level:%d]^n[Frags:%d/%d]"g_level[id], g_frags[id], next_level(g_level[id]))//Mostramos hud con nivel, frags y los necesarios para pasar al siguiente nivel. 
    

     
    
entity_set_float(entEV_FL_nextthink1.0



stock hns_print_color(id, const mensaje[], any:...)//Stock para mensajes de color aviso que no tiene soporte para index 0. si quieren se lo adapto. 

    static 
buffer[192
    
vformat(buffercharsmax(buffer), mensaje3
     
    
message_begin(MSG_ONE_UNRELIABLEg_msgSayText_id
    
write_byte(id
    
write_string(buffer
    
message_end() 


public 
SaveData(id

    new 
Nombre[35
    
get_user_name(idNombre34
    
    new 
vaultkey[64],vaultdata[256
    
format(vaultkey,63,"%s-Mod"Nombre
    
format(vaultdata,255,"%i#%i#",g_frags[id],g_level[id]) 
    
nvault_set(g_vault,vaultkey,vaultdata
    return 
PLUGIN_CONTINUE 

public 
LoadData(id

    new 
Nombre[35
    
get_user_name(idNombre34
    
    new 
vaultkey[64],vaultdata[256
    
format(vaultkey,63,"%s-Mod"Nombre
    
format(vaultdata,255,"%i#%i#",g_frags[id],g_level[id]) 
    
nvault_get(g_vault,vaultkey,vaultdata,255
    
    
replace_all(vaultdata255"#"" "
    
    new 
g_frags[32], g_level[32
    
    
parse(vaultdatag_level31g_frags31
    
    
g_frags[id] = str_to_num(g_frags
    
g_level[id] = str_to_num(g_level
    
    return 
PLUGIN_CONTINUE 

wEEk is offline
Roccoxx
AlliedModders Donor
Join Date: Jan 2012
Location: PornModders
Old 03-24-2013 , 14:59   Re: [Ayuda] No me sube los frags
#2

estas probandolo en no-steam? o con bots del metamod?.


que errores del guardado te tira?
__________________
Roccoxx is offline
Send a message via MSN to Roccoxx
wEEk
Senior Member
Join Date: Sep 2012
Old 03-24-2013 , 15:02   Re: [Ayuda] No me sube los frags
#3

No, el guardado si anda el unico error que me tira es este:

PHP Code:
while(g_frags[attacker] >= next_level[g_level[attacker]]) 
No me rreconoce esa linea del next_level
wEEk is offline
baneado
Veteran Member
Join Date: Dec 2012
Location: amxmodx-es.com
Old 03-24-2013 , 15:02   Re: [Ayuda] No me sube los frags
#4

PHP Code:
show_hudmessage(id"[Nombre: %d]^n[Level:%d]^n[Frags:%d/%d]"g_level[id], g_frags[id], next_level(g_level[id]))//Mostramos hud con nivel, frags y los necesarios para pasar al siguiente nivel. 
Le pones de nombre su nivel, verdad?

Last edited by baneado; 03-24-2013 at 15:03.
baneado is offline
wEEk
Senior Member
Join Date: Sep 2012
Old 03-24-2013 , 15:06   Re: [Ayuda] No me sube los frags
#5

Se me paso eso! jaja era %s para las letras no? :p
wEEk is offline
Roccoxx
AlliedModders Donor
Join Date: Jan 2012
Location: PornModders
Old 03-24-2013 , 15:17   Re: [Ayuda] No me sube los frags
#6

si, mas especifico; strings
__________________
Roccoxx is offline
Send a message via MSN to Roccoxx
Starsailor
horrible hahah
Join Date: Aug 2008
Location: Buenos Aires
Old 03-24-2013 , 16:17   Re: [Ayuda] No me sube los frags
#7

Nunca seteas los frags.. por lo tanto nunca te van a subir..

Igualmente tenes un problema grave de logica y optimizacion en ese plugin.
__________________
Find my plugins here..

Ex - Spanish Moderator.

Last edited by Starsailor; 03-24-2013 at 16:17.
Starsailor is offline
Old 03-24-2013, 20:14
wEEk
This message has been deleted by wEEk. Reason: Doble post
wEEk
Senior Member
Join Date: Sep 2012
Old 03-24-2013 , 20:15   Re: [Ayuda] No me sube los frags
#8

Quote:
Originally Posted by Starsailor View Post
Nunca seteas los frags.. por lo tanto nunca te van a subir..

Igualmente tenes un problema grave de logica y optimizacion en ese plugin.

Como seteo los frags?

Y, ¿cual es el problema grave del code?
wEEk is offline
Especialista
BANNED
Join Date: Mar 2013
Old 03-26-2013 , 11:58   Re: [Ayuda] No me sube los frags
#9

PHP Code:

#include <amxmodx>  
#include <hamsandwich>  
#include <engine>   
#include <nvault> 

#define PLUGIN "[TUT] Niveles por Frags"  
#define VERSION "1.0"  
#define AUTHOR "r0ma'"  
//Creditos a [R]ak por mostrarme como hacer pensar 1 entidad enves de usar task  

#define TAG "[TUT]Niveles por Frags"  
//Tag en el mensaje de que subio de nivel  
//Macro para obtener cuanto le falta para el siguiente nivel  

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

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 XP_Kill,XP_Knife,XP_Hs,SaveXP,g_vault 
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.  
      
    
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   
      
    
SaveXP register_cvar("EXP_Save","1")  
    
XP_Kill=register_cvar("EXP_Jugador""20")  
    
XP_Hs=register_cvar("EXP_Granada","40")  
    
XP_Knife=register_cvar("EXP_Cuchillo","50")  
    
g_vault nvault_open("FragsHns"
      
    
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")  
}  

public 
client_putinserver(id)  
{  
    
g_conectado[id] = 1  
}  

public 
client_disconnect(id)  
{  
    
g_conectado[id] = 0//No esta mas conectado  
}  

public 
fw_PlayerKilled(victimattackershouldgib
{  
    if (
get_user_weapon(attacker) == CSW_HEGRENADE
    { 
        
g_frags[attacker] += get_pcvar_num(XP_Hs
        
client_print(attackerprint_chat,"Subiste [1 Frags]"
     
        if(
get_pcvar_num(SaveXP) == 1)  
        {  
                
SaveData(attacker
        } 
    } 
     
    if (
get_user_weapon(attacker) == CSW_KNIFE
    { 
        
g_frags[attacker] += get_pcvar_num(XP_Knife
        
client_print(attackerprint_chat"Subiste [1 Frags]"
     
        if(
get_pcvar_num(SaveXP) == 1)  
        {  
                
SaveData(attacker)  
        } 
    } 
    else 
    { 
        
g_frags[attacker] += get_pcvar_num(XP_Kill)  
        
client_print(attackerprint_chat"Subiste [1 Frags]"
        if(
get_pcvar_num(SaveXP) == 1)  
        {  
                
SaveData(attacker)  
        } 
    } 

    while(
g_frags[attacker] >= next_level(g_level[attacker]))  
    {  
        
g_level[attacker]++  
        
g_frags[attacker] = 
        client_print
(attackerprint_chat"Felicidades! Has subido de nivel, nivel actual: %d"g_level[attacker]) 

        if(
get_pcvar_num(SaveXP) == 1)  
        {  
            
SaveData(attacker)  
        } 
    }  
    
SaveData(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"[Nombre: %d]^n[Level:%d]^n[Frags:%d/%d]"g_level[id], g_frags[id], next_level(g_level[id]))//Mostramos hud con nivel, frags y los necesarios para pasar al siguiente nivel.  
    
}  
      
    
entity_set_float(entEV_FL_nextthink1.0)  
}  


stock hns_print_color(id, const mensaje[], any:...)//Stock para mensajes de color aviso que no tiene soporte para index 0. si quieren se lo adapto.  
{  
    static 
buffer[192]  
    
vformat(buffercharsmax(buffer), mensaje3)  
      
    
message_begin(MSG_ONE_UNRELIABLEg_msgSayText_id)  
    
write_byte(id)  
    
write_string(buffer)  
    
message_end()  
}  

public 
SaveData(id)  
{  
    new 
Nombre[35]  
    
get_user_name(idNombre34)  
     
    new 
vaultkey[64],vaultdata[256]  
    
format(vaultkey,63,"%s-Mod"Nombre)  
    
format(vaultdata,255,"%i#%i#",g_frags[id],g_level[id])  
    
nvault_set(g_vault,vaultkey,vaultdata)  
    return 
PLUGIN_CONTINUE  
}  
public 
LoadData(id)  
{  
    new 
Nombre[35]  
    
get_user_name(idNombre34)  
     
    new 
vaultkey[64],vaultdata[256]  
    
format(vaultkey,63,"%s-Mod"Nombre)  
    
format(vaultdata,255,"%i#%i#",g_frags[id],g_level[id])  
    
nvault_get(g_vault,vaultkey,vaultdata,255)  
     
    
replace_all(vaultdata255"#"" ")  
     
    new 
g_frags[32], g_level[32]  
     
    
parse(vaultdatag_level31g_frags31)  
     
    
g_frags[id] = str_to_num(g_frags)  
    
g_level[id] = str_to_num(g_level)  
     
    return 
PLUGIN_CONTINUE  

es tu code sin errores.


si tenes guardado no setees las variables que guardas en "0" en putinserver o disconnect sino nunca se guardaran.
Especialista is offline
Matians
Veteran Member
Join Date: Nov 2010
Location: ME QUIEREN ROBAR
Old 03-26-2013 , 12:04   Re: [Ayuda] No me sube los frags
#10

Claroo... sin errores no especialista?

show_hudmessage(id, "[Nombre: %d]^n[Level:%d]^n[Frags:%d/%d]", g_level[id], g_frags[id], next_level(g_level[id]))

|¬¬|
Matians is offline
 


Thread Tools
Display Modes

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 18:26.


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