[Ajuda] SendClientMessageToAll repetindo
#1

Bom galera sempre que eu uso esse comando de remover todas barreiras existentes no meu server, a SendClientMessageToAll buga tipo se tiver 3 player online ela repete 3x o tanto de player que tiver ela repete, queria saber oque pode causar isso codigo abaixo.


Код:
	}
	if (strcmp(cmd,"/retirarbloqueios",true) == 0)
	{
	    if(IsPlayerConnected(playerid))
	    {
         	if(PlayerInfo[playerid][pAdmin] < 1337)
			{
			    SendClientMessage(playerid, COLOR_GRAD1, "   Vocк nгo estб autorizado a usar este comando !");
			    return 1;
			}
			if(admtrampando[playerid] < 1 && PlayerInfo[playerid][pAdmin] != 1342 && PlayerInfo[playerid][pAdmin] != 1341)
			{
				SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo estб trabalhando! (/trabalhar)");
				return 1;
			}
			for(new i = 0; i < MAX_PLAYERS; i++)
			{
				if(IsPlayerConnected(i))
				{
				RemoveGangue(i);
				RemoveBloqueio(i);
				RemoveBarreira(i);
				RemoveRoadPregos(i);
				RemoveParedao(i);
				RemoveBarraca(i);
               	GetPlayerName(i,playername,sizeof(playername));
                format(string,sizeof(string),"AdmCmd: %s Retirou todos bloqueios existentes!",PlayerName(playerid));
			    SendClientMessageToAll(COLOR_LIGHTRED,string);
				}
			}
		}
		return 1;
	}
Reply
#2

pawn Код:
if (strcmp(cmd,"/retirarbloqueios",true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if(PlayerInfo[playerid][pAdmin] < 1337)
            {
                SendClientMessage(playerid, COLOR_GRAD1, "   Vocк nгo estб autorizado a usar este comando !");
                return 1;
            }
            if(admtrampando[playerid] < 1 && PlayerInfo[playerid][pAdmin] != 1342 && PlayerInfo[playerid][pAdmin] != 1341)
            {
                SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo estб trabalhando! (/trabalhar)");
                return 1;
            }
            for(new i = 0; i < MAX_PLAYERS; i++)
            {
                if(IsPlayerConnected(i))
                {
                RemoveGangue(i);
                RemoveBloqueio(i);
                RemoveBarreira(i);
                RemoveRoadPregos(i);
                RemoveParedao(i);
                RemoveBarraca(i);
                GetPlayerName(i,playername,sizeof(playername));
                format(string,sizeof(string),"AdmCmd: %s Retirou todos bloqueios existentes!",PlayerName(playerid));
                SendClientMessage(i,COLOR_LIGHTRED,string);
                }
            }
        }
        return 1;
    }
Reply
#3

Quote:
Originally Posted by Vai_Besta
Посмотреть сообщение
pawn Код:
if (strcmp(cmd,"/retirarbloqueios",true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if(PlayerInfo[playerid][pAdmin] < 1337)
            {
                SendClientMessage(playerid, COLOR_GRAD1, "   Vocк nгo estб autorizado a usar este comando !");
                return 1;
            }
            if(admtrampando[playerid] < 1 && PlayerInfo[playerid][pAdmin] != 1342 && PlayerInfo[playerid][pAdmin] != 1341)
            {
                SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo estб trabalhando! (/trabalhar)");
                return 1;
            }
            for(new i = 0; i < MAX_PLAYERS; i++)
            {
                if(IsPlayerConnected(i))
                {
                RemoveGangue(i);
                RemoveBloqueio(i);
                RemoveBarreira(i);
                RemoveRoadPregos(i);
                RemoveParedao(i);
                RemoveBarraca(i);
                GetPlayerName(i,playername,sizeof(playername));
                format(string,sizeof(string),"AdmCmd: %s Retirou todos bloqueios existentes!",PlayerName(playerid));
                SendClientMessage(i,COLOR_LIGHTRED,string);
                }
            }
        }
        return 1;
    }
Isso nгo vai funcionar. Vai repetir 500 vezes.

@Leo

Apenas retire o SendClientMessageToAll do loop e terб o resultado que quer.
Reply
#4

pawn Код:
if (strcmp(cmd,"/retirarbloqueios",true) == 0)
    {
        if(!IsPlayerConnected(playerid)) return 1;
            if(PlayerInfo[playerid][pAdmin] < 1337)
                return SendClientMessage(playerid, COLOR_GRAD1, "   Vocк nгo estб autorizado a usar este comando !");
            if(admtrampando[playerid] < 1 && PlayerInfo[playerid][pAdmin] != 1342 && PlayerInfo[playerid][pAdmin] != 1341)
                return SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo estб trabalhando! (/trabalhar)");
            for(new a = 0, b = GetMaxPlayers(); a < b; ++a)
            {
                if(IsPlayerConnected(i)) {
                    RemoveGangue(i);
                    RemoveBloqueio(i);
                    RemoveBarreira(i);
                    RemoveRoadPregos(i);
                    RemoveParedao(i);
                    RemoveBarraca(i);
                }
            }
            GetPlayerName(i,playername,sizeof(playername));
            format(string,sizeof(string),"AdmCmd: %s retirou todos bloqueios existentes!",PlayerName(playerid));
            SendClientMessageToAll(COLOR_LIGHTRED,string);
        }
        return 1;
    }
Reply
#5

Quote:
Originally Posted by Los
Посмотреть сообщение
Isso nгo vai funcionar. Vai repetir 500 vezes.

@Ween

Apenas retire o SendClientMessageToAll do loop e terб o resultado que quer.
LOL Oque tem eu '-'
Reply
#6

Quote:
Originally Posted by WeenSoares_
Посмотреть сообщение
LOL Oque tem eu '-'
LOL digo eu, por mim era vocк que tinha criado o tуpico!
Reply
#7

Tem que tirar a msg da Loop
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)