[Ajuda] O que tem de errado?
#1

Se eu errar a senha da rcon, eu coloquei uma mensagem pra retornar 'aviso'. mas aparece para todos os players e com um baita flood. o que pode ser?

PHP Code:
public OnRconLoginAttempt(ip[], password[], success)
{
    if(!
success)
    {
        for(new 
i=0i<MAX_PLAYERSi++)
        {
            
SendClientMessage(i, -1,"Vocк errou a senha RCON. Tome cuidado!");
        }
    }
    return 
1;

Reply
#2

Vocк tem que verificar se o parвmetro ip й igual ao endereзo de ip de cada jogador.
Reply
#3

Por causa do loop que esta enviando a todos
Reply
#4

tenta assim
pawn Code:
public OnRconLoginAttempt(ip[], password[], success)
{
    if(!success)
    {
        new pip[16];
        for(new i=0; i<MAX_PLAYERS; i++)
        {
            GetPlayerIp(i, pip, sizeof(pip));
            if(!strcmp(ip, pip, true))
            {
                SendClientMessage(i, -1,"Vocк errou a senha RCON. Tome cuidado!");
            }
        }
    }
    return 1;
}
Reply
#5

acho que simplesmente so assim

pawn Code:
public OnRconLoginAttempt(ip[], password[], success)
{
    if(!success)
    {
        for(new i=0; i<MAX_PLAYERS; i++)
        {
            SendClientMessage(i, -1,"Vocк errou a senha RCON. Tome cuidado!");
            break;
        }
    }
    return 1;
}
tbm da penso eu
Reply
#6

Quote:
Originally Posted by PT
View Post
acho que simplesmente so assim

pawn Code:
public OnRconLoginAttempt(ip[], password[], success)
{
    if(!success)
    {
        for(new i=0; i<MAX_PLAYERS; i++)
        {
            SendClientMessage(i, -1,"Vocк errou a senha RCON. Tome cuidado!");
            break;
        }
    }
    return 1;
}
tbm da penso eu
Isso vai enviar a mensagem somente para o jogador 0.
Reply
#7

Quote:
Originally Posted by zPain
View Post
Isso vai enviar a mensagem somente para o jogador 0.
entao fica assim

pawn Code:
public OnRconLoginAttempt(ip[], password[], success)
{
    new pip[16];
    for(new i = (MAX_PLAYERS - 1); i > -1; --i)
    {
        GetPlayerIp(i, pip, sizeof(pip));
        if(success)
        {
            if(!strcmp(ip, pip, true))
            {
                SendClientMessage(i, -1,"Vocк errou a senha RCON. Tome cuidado!");
            }
        }
        break;
    }
    return 1;
}
Reply
#8

Quote:
Originally Posted by PT
View Post
entao fica assim

pawn Code:
public OnRconLoginAttempt(ip[], password[], success)
{
    new pip[16];
    if(!success)
    {
        for(new i=0; i<MAX_PLAYERS; i++)
        {
            GetPlayerIp(i, pip, sizeof(pip));
            if(!strcmp(ip, pip, true))
            {
                SendClientMessage(i, -1,"Vocк errou a senha RCON. Tome cuidado!");
            }
        }
        break;
    }
    return 1;
}
Na verdade o break estб fora de contexto. Vocк deveria colocб-lo logo apуs o envio da mensagem.
Reply
#9

Quote:
Originally Posted by zPain
View Post
Na verdade o break estб fora de contexto. Vocк deveria colocб-lo logo apуs o envio da mensagem.
olha dnv ja melhorei o code e o break; agr onde ta faz sentido, e n ta fora de contexto, pode testar ae

pawn Code:
public OnRconLoginAttempt(ip[], password[], success)
{
    new pip[16];
    for(new i = (MAX_PLAYERS - 1); i > -1; --i)
    {
        GetPlayerIp(i, pip, sizeof(pip));
        if(success)
        {
            if(!strcmp(ip, pip, true))
            {
                SendClientMessage(i, -1,"Vocк errou a senha RCON. Tome cuidado!");
            }
        }
        break;
    }
    return 1;
}
Reply
#10

Nгo hб necessidade de testar. Jб vi que vocк corrigiu, exceto por isso:

pawn Code:
if(success)
Reply


Forum Jump:


Users browsing this thread: 3 Guest(s)