Problema con chat
#1
Hola Buenas tengo este problema queria crear mi chat, utilize la guia de RauliTop, y me quede aqui trabado, me tira estos errores..

Error: Number of arguments does not match definition on line 9536
Error: Number of arguments does not match definition on line 9574
Linea 9536:
Código PHP:
formatex(prefixcharsmax(prefix), "%s[Nivel:^x04 %d^x01]^x03 %s"is_user_alive(id) ? "^x01" "^x01*MUERTO* "g_level[id], get_user_name(id)) 
Linea 9574:
Código PHP:
formatex(prefixcharsmax(prefix), "%s-[Nivel:^x04 %d^x01]^x03 %s"is_user_alive(id) ? "^x01" "^x01*MUERTO* "playerTeamNameg_level[id], get_user_name(id)) 
segui al pie de la letra la guia, lo unico que hice fue sacar una variable que era g_vip[id], si me dan una mano se lo agradezco
Responder
#2
¿Que hace "prefix"?
Responder
#3
Pasa todo completo el sayhook...

Cuál es el problema en mostrar ese código si ya es público?.
Responder
#4
es el codigo lo unico que hice fue sacarle la variable del vip
Código PHP:
public clcmd_say(id)
{
    static 
said[191]
    
read_args(saidcharsmax(said))
    
remove_quotes(said)
    
replace_all(saidcharsmax(said), "%"" ")  
    
    if (!
ValidMessage(said1)) return PLUGIN_CONTINUE;
    
    static 
color[11], prefix[91]
    
get_user_team(idcolorcharsmax(color))
    
        
formatex(prefixcharsmax(prefix), "%s%s[Nivel:^x04 %d^x01]^x03 %s"g_isalive[id] ? "^x01" "^x01*MUERTO* "g_vip[id] ? "(VIP) " ""g_level[id], g_playername[id]) // LINEA ORIGINAL
    
formatex(prefixcharsmax(prefix), "%s[Nivel:^x04 %d^x01]^x03 %s"is_user_alive(id) ? "^x01" "^x01*MUERTO* "g_level[id], get_user_name(id// AQUI TIRA EL ERROR
    
    
static iteam[11
    for (
1<= g_maxplayersi++) 
    {
        if (!
is_user_connected(i)) continue;
        if (
is_user_admin(i) || is_user_alive(id) && is_user_alive(i) || !is_user_alive(id) && !is_user_alive(id))
        {
            
get_user_team(iteamcharsmax(team))
            
changeTeamInfo(icolor)
            
writeMessage(isaid)
            
changeTeamInfo(iteam)
        }
    }
    return 
PLUGIN_HANDLED_MAIN;
}

public 
clcmd_team_say(id)
{
    static 
said[191]
    
read_args(saidcharsmax(said))
    
remove_quotes(said)
    
replace_all(saidcharsmax(said), "%"" ")
    
    if (!
ValidMessage(said1)) return PLUGIN_CONTINUE;
    static 
playerTeamplayerTeamName[19]
    
playerTeam get_user_team(id)
    
    switch (
playerTeam)
    {
        case 
1copy (playerTeamName6"Holas"
        case 
2copy (playerTeamName8"Adioses"
        default: 
copy (playerTeamName11"Espectador"
    }
    
    static 
color[11], prefix[111]
    
get_user_team(idcolorcharsmax(color))
    
        
formatex(prefixcharsmax(prefix), "%s-%s- [Nivel:^x04 %d^x01]^x03 %s"g_isalive[id] ? "^x01" "^x01*MUERTO* "playerTeamNameg_level[id], g_playername[id]) // LINEA ORIGINAL
    
formatex(prefixcharsmax(prefix), "%s-[Nivel:^x04 %d^x01]^x03 %s"is_user_alive(id) ? "^x01" "^x01*MUERTO* "playerTeamNameg_level[id], get_user_name(id)) // AQUI EL ERROR 
    
    
if (is_user_admin(id)) format(saidcharsmax(said), "^x04%s"said)
    
format(saidcharsmax(said), "%s^x01 :  %s"prefixsaid
    
    static 
iteam[11
    for (
1<= g_maxplayersi++) 
    {
        if (!
is_user_connected(i)) continue;
        if (
get_user_team(i) == playerTeam)
        {
            if (
is_user_alive(id) && is_user_alive(i) || !is_user_alive(id) && !is_user_alive(i))
            {
                
get_user_team(iteamcharsmax(team))     
                
changeTeamInfo(icolor)
                
writeMessage(isaid)              
                
changeTeamInfo(iteam)
            }
        }
    }
    
    return 
PLUGIN_HANDLED_MAIN;
}

public 
changeTeamInfo(playerteam[])
{
    
message_begin(MSG_ONEg_msgTeamInfo_player)
    
write_byte(player)
    
write_string(team)
    
message_end()
}

public 
writeMessage(playermessage[])
{
    
message_begin(MSG_ONEg_msgSayText, {000}, player)
    
write_byte(player)
    
write_string(message)
    
message_end()
}


stock ValidMessage(text[], maxcount
{
    static 
lenicount
    len 
strlen(text)
    
count 0
    
    
if (!len)
        
    return 
false;
    
    for (
0leni++) 
    {
        if (
text[i] != ' '
        {
            
count++
            if (
count >= maxcount)
            return 
true;
        }
    }
    return 
false;

Responder
#5
Media lapi señoras, 30 años programando en pawn, piden código y el error esta a simple vista:

Código PHP:
formatex(prefixcharsmax(prefix), "%s[Nivel:^x04 %d^x01]^x03 %s"is_user_alive(id) ? "^x01" "^x01*MUERTO* "g_level[id], get_user_name(id)) 

Como chotas pones get_user_name como si fuese un parametro que retorna directamente el nombre..................

Código PHP:
get_user_nameindexbuffer[], length ); 

[Imagen: EOgi3jeWAAE9Jk_.jpg]
Responder
#6
Como chotas pones get_user_name como si fuese un parametro que retorna directamente el nombre..................

Código PHP:
get_user_nameindexbuffer[], length ); 


Disculpa mi ignorancia entonces como quedarían las 2 lineas?... Pepe
Responder
#7
tome cñor

Código PHP:
public clcmd_say(id)
{
    static 
said[191]
    
read_args(saidcharsmax(said))
    
remove_quotes(said)
    
replace_all(saidcharsmax(said), "%"" ")  
    
    if (!
ValidMessage(said1)) return PLUGIN_CONTINUE;
    
    static 
color[11], prefix[91]
    
get_user_team(idcolorcharsmax(color))
    new 
name[33];get_user_nameidname32 )
    
    
formatex(prefixcharsmax(prefix), "%s[Nivel:^x04 %d^x01]^x03 %s"is_user_alive(id) ? "^x01" "^x01*MUERTO* "g_level[id], name); // AQUI TIRA EL ERROR
    
    
static iteam[11
    for (
1<= g_maxplayersi++) 
    {
        if (!
is_user_connected(i)) continue;
        if (
is_user_admin(i) || is_user_alive(id) && is_user_alive(i) || !is_user_alive(id) && !is_user_alive(id))
        {
            
get_user_team(iteamcharsmax(team))
            
changeTeamInfo(icolor)
            
writeMessage(isaid)
            
changeTeamInfo(iteam)
        }
    }
    return 
PLUGIN_HANDLED_MAIN;
}

public 
clcmd_team_say(id)
{
    static 
said[191]
    
read_args(saidcharsmax(said))
    
remove_quotes(said)
    
replace_all(saidcharsmax(said), "%"" ")
    
    if (!
ValidMessage(said1)) return PLUGIN_CONTINUE;
    static 
playerTeamplayerTeamName[19]
    
playerTeam get_user_team(id)
    
    switch (
playerTeam)
    {
        case 
1copy (playerTeamName6"Holas"
        case 
2copy (playerTeamName8"Adioses"
        default: 
copy (playerTeamName11"Espectador"
    }
    
    static 
color[11], prefix[111]
    
get_user_team(idcolorcharsmax(color))
    new 
name[33];get_user_nameidname32 );
    
    
formatex(prefixcharsmax(prefix), "%s-[Nivel:^x04 %d^x01]^x03 %s"is_user_alive(id) ? "^x01" "^x01*MUERTO* "playerTeamNameg_level[id], name// AQUI EL ERROR 
    
    
if (is_user_admin(id)) format(saidcharsmax(said), "^x04%s"said)
    
format(saidcharsmax(said), "%s^x01 :  %s"prefixsaid
    
    static 
iteam[11
    for (
1<= g_maxplayersi++) 
    {
        if (!
is_user_connected(i)) continue;
        if (
get_user_team(i) == playerTeam)
        {
            if (
is_user_alive(id) && is_user_alive(i) || !is_user_alive(id) && !is_user_alive(i))
            {
                
get_user_team(iteamcharsmax(team))     
                
changeTeamInfo(icolor)
                
writeMessage(isaid)              
                
changeTeamInfo(iteam)
            }
        }
    }
    
    return 
PLUGIN_HANDLED_MAIN;
}

public 
changeTeamInfo(playerteam[])
{
    
message_begin(MSG_ONEg_msgTeamInfo_player)
    
write_byte(player)
    
write_string(team)
    
message_end()
}

public 
writeMessage(playermessage[])
{
    
message_begin(MSG_ONEg_msgSayText, {000}, player)
    
write_byte(player)
    
write_string(message)
    
message_end()
}


stock ValidMessage(text[], maxcount
{
    static 
lenicount
    len 
strlen(text)
    
count 0
    
    
if (!len)
    return 
false;
    
    for (
0leni++) 
    {
        if (
text[i] != ' '
        {
            
count++
            if (
count >= maxcount)
            return 
true;
        }
    }
    return 
false;

Responder
#8
(23/03/2020, 06:58 PM)Pan Bimbo (? escribió: tome cñor

Código PHP:
public clcmd_say(id)
{
    static 
said[191]
    
read_args(saidcharsmax(said))
    
remove_quotes(said)
    
replace_all(saidcharsmax(said), "%"" ")  
    
    if (!
ValidMessage(said1)) return PLUGIN_CONTINUE;
    
    static 
color[11], prefix[91]
    
get_user_team(idcolorcharsmax(color))
    new 
name[33];get_user_nameidname32 )
    
    
formatex(prefixcharsmax(prefix), "%s[Nivel:^x04 %d^x01]^x03 %s"is_user_alive(id) ? "^x01" "^x01*MUERTO* "g_level[id], name); // AQUI TIRA EL ERROR
    
    
static iteam[11
    for (
1<= g_maxplayersi++) 
    {
        if (!
is_user_connected(i)) continue;
        if (
is_user_admin(i) || is_user_alive(id) && is_user_alive(i) || !is_user_alive(id) && !is_user_alive(id))
        {
            
get_user_team(iteamcharsmax(team))
            
changeTeamInfo(icolor)
            
writeMessage(isaid)
            
changeTeamInfo(iteam)
        }
    }
    return 
PLUGIN_HANDLED_MAIN;
}

public 
clcmd_team_say(id)
{
    static 
said[191]
    
read_args(saidcharsmax(said))
    
remove_quotes(said)
    
replace_all(saidcharsmax(said), "%"" ")
    
    if (!
ValidMessage(said1)) return PLUGIN_CONTINUE;
    static 
playerTeamplayerTeamName[19]
    
playerTeam get_user_team(id)
    
    switch (
playerTeam)
    {
        case 
1copy (playerTeamName6"Holas"
        case 
2copy (playerTeamName8"Adioses"
        default: 
copy (playerTeamName11"Espectador"
    }
    
    static 
color[11], prefix[111]
    
get_user_team(idcolorcharsmax(color))
    new 
name[33];get_user_nameidname32 );
    
    
formatex(prefixcharsmax(prefix), "%s-[Nivel:^x04 %d^x01]^x03 %s"is_user_alive(id) ? "^x01" "^x01*MUERTO* "playerTeamNameg_level[id], name// AQUI EL ERROR 
    
    
if (is_user_admin(id)) format(saidcharsmax(said), "^x04%s"said)
    
format(saidcharsmax(said), "%s^x01 :  %s"prefixsaid
    
    static 
iteam[11
    for (
1<= g_maxplayersi++) 
    {
        if (!
is_user_connected(i)) continue;
        if (
get_user_team(i) == playerTeam)
        {
            if (
is_user_alive(id) && is_user_alive(i) || !is_user_alive(id) && !is_user_alive(i))
            {
                
get_user_team(iteamcharsmax(team))     
                
changeTeamInfo(icolor)
                
writeMessage(isaid)              
                
changeTeamInfo(iteam)
            }
        }
    }
    
    return 
PLUGIN_HANDLED_MAIN;
}

public 
changeTeamInfo(playerteam[])
{
    
message_begin(MSG_ONEg_msgTeamInfo_player)
    
write_byte(player)
    
write_string(team)
    
message_end()
}

public 
writeMessage(playermessage[])
{
    
message_begin(MSG_ONEg_msgSayText, {000}, player)
    
write_byte(player)
    
write_string(message)
    
message_end()
}


stock ValidMessage(text[], maxcount
{
    static 
lenicount
    len 
strlen(text)
    
count 0
    
    
if (!len)
    return 
false;
    
    for (
0leni++) 
    {
        if (
text[i] != ' '
        {
            
count++
            if (
count >= maxcount)
            return 
true;
        }
    }
    return 
false;


Gracias y perdón por molestar xD
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)