SA-MP Forums Archive
[Ajuda] Mensagem flodando - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] Mensagem flodando (/showthread.php?tid=467569)



Mensagem flodando - ExTRanyMoney - 03.10.2013

Eu estava aqui criando o sistema de casas do meu servidor e quando o comando vai mandar uma mensagem pro player aparece muintas vezes a mesma mensagem.

pawn Код:
CMD:entrarcasa(playerid, params[])
{
    for(new c; c < MAX_CASAS; c++)
    {
        if(IsPlayerInRangeOfPoint(playerid, 3, CasaInfo[c][PickupX], CasaInfo[c][PickupY], CasaInfo[c][PickupZ]))
        {
            if(EntrouCasa[playerid] == 0)
            {
                new proprietario[64];
                GetPlayerName(playerid, proprietario, 64);
                if(strcmp(CasaInfo[c][Proprietario], proprietario, false) && strcmp(CasaInfo[c][Morador], proprietario, false)){
                if(CasaInfo[c][Status] == 1) return SendClientMessage(playerid, 0xFF0000FF, "| ERRO | Essa casa estб fechada.");}
                SetPlayerVirtualWorld(playerid, CasaInfo[c][VirtualWorld]);
                SetPlayerInterior(playerid, CasaInfo[c][InteriorID]);
                SetPlayerPos(playerid, CasaInfo[c][InteriorX], CasaInfo[c][InteriorY], CasaInfo[c][InteriorZ]);
                InHouse[playerid] = c;
                if(strcmp(CasaInfo[c][Proprietario], proprietario, true) == 0){
                format(str, sizeof(str), "| INFO | %s seja bem vindo(a) a sua casa nъmero '%d'", nome(playerid), CasaInfo[c][Numero]);
                SendClientMessage(playerid, 0xE0EEEEAA, str);
                }else{
                format(str, sizeof(str), "| INFO | Vocк entrou na casa nъmero '%d' que pertence a %s", CasaInfo[c][Numero], CasaInfo[c][Proprietario]);
                SendClientMessage(playerid, 0xE0EEEEAA, str);}
                EntrouCasa[playerid] = 1;
                return 1;
            }
            else SendClientMessage(playerid, Vermelho, "| ERRO | Vocк jб estб dentro da casa!");
        }
        else SendClientMessage(playerid, Vermelho, "| ERRO | Vocк nгo estб em uma casa!");
    }
    return 1;
}
A mensagem que estб flodando й essa:

pawn Код:
else SendClientMessage(playerid, Vermelho, "| ERRO | Vocк nгo estб em uma casa!");
pawn Код:
else SendClientMessage(playerid, Vermelho, "| ERRO | Vocк jб estб dentro da casa!");
Tenteu salvar em uma string mais continuo alguem ajuda ae.


Re: Mensagem flodando - PT - 03.10.2013

retira ela do Loop e coloca else return .. antes de enviar


Re: Mensagem flodando - Maklister - 03.10.2013

pawn Код:
CMD:entrarcasa(playerid, params[])
{
    for(new c; c < MAX_CASAS; c++)
    {
        if(IsPlayerInRangeOfPoint(playerid, 3, CasaInfo[c][PickupX], CasaInfo[c][PickupY], CasaInfo[c][PickupZ]))
        {
            if(EntrouCasa[playerid] == 0)
            {
                new
                    proprietario[64]

                ;
                GetPlayerName(playerid, proprietario, 64);
                if(strcmp(CasaInfo[c][Proprietario], proprietario, false) && strcmp(CasaInfo[c][Morador], proprietario, false)){
                if(CasaInfo[c][Status] == 1) return SendClientMessage(playerid, 0xFF0000FF, "| ERRO | Essa casa estб fechada.");}

                SetPlayerVirtualWorld(playerid, CasaInfo[c][VirtualWorld]);
                SetPlayerInterior(playerid, CasaInfo[c][InteriorID]);
                SetPlayerPos(playerid, CasaInfo[c][InteriorX], CasaInfo[c][InteriorY], CasaInfo[c][InteriorZ]);

                InHouse[playerid] = c;

                if(strcmp(CasaInfo[c][Proprietario], proprietario, true) == 0)
                {
                    format(str, sizeof(str), "| INFO | %s seja bem vindo(a) a sua casa nъmero '%d'", nome(playerid), CasaInfo[c][Numero]);
                    SendClientMessage(playerid, 0xE0EEEEAA, str);
                }
                else
                {
                    format(str, sizeof(str), "| INFO | Vocк entrou na casa nъmero '%d' que pertence a %s", CasaInfo[c][Numero], CasaInfo[c][Proprietario]);
                    return SendClientMessage(playerid, 0xE0EEEEAA, str);
                }
                EntrouCasa[playerid] = 1;
            }
            else
            {
                return SendClientMessage(playerid, Vermelho, "| ERRO | Vocк jб estб dentro da casa!");
            }
        }
        else
        {
            return SendClientMessage(playerid, Vermelho, "| ERRO | Vocк nгo estб em uma casa!");
        }
    }
    return 1;
}


Tente


Re : Re: Mensagem flodando - ExTRanyMoney - 04.10.2013

Quote:
Originally Posted by Maklister
Посмотреть сообщение
pawn Код:
CMD:entrarcasa(playerid, params[])
{
    for(new c; c < MAX_CASAS; c++)
    {
        if(IsPlayerInRangeOfPoint(playerid, 3, CasaInfo[c][PickupX], CasaInfo[c][PickupY], CasaInfo[c][PickupZ]))
        {
            if(EntrouCasa[playerid] == 0)
            {
                new
                    proprietario[64]

                ;
                GetPlayerName(playerid, proprietario, 64);
                if(strcmp(CasaInfo[c][Proprietario], proprietario, false) && strcmp(CasaInfo[c][Morador], proprietario, false)){
                if(CasaInfo[c][Status] == 1) return SendClientMessage(playerid, 0xFF0000FF, "| ERRO | Essa casa estб fechada.");}

                SetPlayerVirtualWorld(playerid, CasaInfo[c][VirtualWorld]);
                SetPlayerInterior(playerid, CasaInfo[c][InteriorID]);
                SetPlayerPos(playerid, CasaInfo[c][InteriorX], CasaInfo[c][InteriorY], CasaInfo[c][InteriorZ]);

                InHouse[playerid] = c;

                if(strcmp(CasaInfo[c][Proprietario], proprietario, true) == 0)
                {
                    format(str, sizeof(str), "| INFO | %s seja bem vindo(a) a sua casa nъmero '%d'", nome(playerid), CasaInfo[c][Numero]);
                    SendClientMessage(playerid, 0xE0EEEEAA, str);
                }
                else
                {
                    format(str, sizeof(str), "| INFO | Vocк entrou na casa nъmero '%d' que pertence a %s", CasaInfo[c][Numero], CasaInfo[c][Proprietario]);
                    return SendClientMessage(playerid, 0xE0EEEEAA, str);
                }
                EntrouCasa[playerid] = 1;
            }
            else
            {
                return SendClientMessage(playerid, Vermelho, "| ERRO | Vocк jб estб dentro da casa!");
            }
        }
        else
        {
            return SendClientMessage(playerid, Vermelho, "| ERRO | Vocк nгo estб em uma casa!");
        }
    }
    return 1;
}


Tente
Obrigado deu certinho