[Ajuda] Comando /duvida
#1

Olб, estou postando um tуpico aqui e estou aguardando uma resposta deste topico https://sampforum.blast.hk/showthread.php?tid=534056, й o seguinte pessoal, tenho um sistema de helper que contem o comando /duvida que o jogador tira duvidas com um helper, mais eu queria colocar sу para nнvel 5 abaixo pode usar o comando, para os players nнvel alto nгo ficar conversando atoa com Helpers.

Cуdigos:

Код:
    if(strcmp(cmd, "/duvida", true) == 0 || strcmp(cmd, "/h", true) == 0)
	{
	    if(IsPlayerConnected(playerid))
	    {
	        GetPlayerName(playerid,sendername,sizeof(sendername));
			new length = strlen(cmdtext);
			while ((idx < length) && (cmdtext[idx] <= ' '))
			{
				idx++;
			}
			new offset = idx;
			new result[64];
			while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
			{
				result[idx - offset] = cmdtext[idx];
				idx++;
			}
			result[idx - offset] = EOS;
   			if(!strlen(result))
   			{
				SendClientMessage(playerid,COLOR_WHITE,"USE: /h [sua dъvida]");
				return 1;
			}
			if(PlayerInfo[playerid][pPremio] >= 1)
			{
			format(string,sizeof(string),"Duvida de [VIP] %s(%d): %s",sendername,playerid,(result));
			HBroadCast(0xBD0000FF,string,1);
			SendClientMessage(playerid,COLOR_YELLOW,"Sua mensagem foi enviada, aguarde pacientemente.");}
			else
			{
			format(string,sizeof(string),"Duvida de %s(%d): %s",sendername,playerid,(result));
			HBroadCast(0xBD0000FF,string,1);
			SendClientMessage(playerid,COLOR_YELLOW,"Sua mensagem foi enviada, aguarde pacientemente.");}

	    }
	    return 1;
	}
Pensei atй colocar esses seguintes codigos:

Код:
		   if(PlayerInfo[playerid][pLevel] >= 3)
		   {
		      SendClientMessage(playerid,COLOR_WHITE,"Vocк nгo й um novato.");
		      RemovePlayerFromVehicle(playerid);
           }
Mais nгo dб certo, alguйm me ajuda pf?
Reply
#2

pawn Код:
if(strcmp(cmd, "/duvida", true) == 0 || strcmp(cmd, "/h", true) == 0)
{
    if(IsPlayerConnected(playerid))
    {
            GetPlayerName(playerid,sendername,sizeof(sendername));
        new length = strlen(cmdtext);
        while ((idx < length) && (cmdtext[idx] <= ' '))
        {
            idx++;
        }
        new offset = idx;
        new result[64];
        while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
        {
            result[idx - offset] = cmdtext[idx];
            idx++;
        }
        result[idx - offset] = EOS;
        if(!strlen(result))
        {
            SendClientMessage(playerid,COLOR_WHITE,"USE: /h [sua dъvida]");
            return 1;
        }
        // A partir da daqui...
        if(PlayerInfo[playerid][pLevel] > 5 )
        {
            RemovePlayerFromVehicle(playerid);
            SendClientMessage( playerid, -1, "Vocк nгo й mais um novato." );
            return 1;
        }
        // Terminando aqui
        if(PlayerInfo[playerid][pPremio] >= 1)
        {
            format(string,sizeof(string),"Duvida de [VIP] %s(%d): %s",sendername,playerid,(result));
            HBroadCast(0xBD0000FF,string,1);
            SendClientMessage(playerid,COLOR_YELLOW,"Sua mensagem foi enviada, aguarde pacientemente.");
        }
        else
        {
            format(string,sizeof(string),"Duvida de %s(%d): %s",sendername,playerid,(result));
            HBroadCast(0xBD0000FF,string,1);
            SendClientMessage(playerid,COLOR_YELLOW,"Sua mensagem foi enviada, aguarde pacientemente.");
        }
    }
    return 1;
}
Reply
#3

Quote:
Originally Posted by Rodney Francalim
Посмотреть сообщение
pawn Код:
if(strcmp(cmd, "/duvida", true) == 0 || strcmp(cmd, "/h", true) == 0)
{
    if(IsPlayerConnected(playerid))
    {
            GetPlayerName(playerid,sendername,sizeof(sendername));
        new length = strlen(cmdtext);
        while ((idx < length) && (cmdtext[idx] <= ' '))
        {
            idx++;
        }
        new offset = idx;
        new result[64];
        while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
        {
            result[idx - offset] = cmdtext[idx];
            idx++;
        }
        result[idx - offset] = EOS;
        if(!strlen(result))
        {
            SendClientMessage(playerid,COLOR_WHITE,"USE: /h [sua dъvida]");
            return 1;
        }
        // A partir da daqui...
        if(PlayerInfo[playerid][pLevel] > 5 )
        {
            RemovePlayerFromVehicle(playerid);
            SendClientMessage( playerid, -1, "Vocк nгo й mais um novato." );
            return 1;
        }
        // Terminando aqui
        if(PlayerInfo[playerid][pPremio] >= 1)
        {
            format(string,sizeof(string),"Duvida de [VIP] %s(%d): %s",sendername,playerid,(result));
            HBroadCast(0xBD0000FF,string,1);
            SendClientMessage(playerid,COLOR_YELLOW,"Sua mensagem foi enviada, aguarde pacientemente.");
        }
        else
        {
            format(string,sizeof(string),"Duvida de %s(%d): %s",sendername,playerid,(result));
            HBroadCast(0xBD0000FF,string,1);
            SendClientMessage(playerid,COLOR_YELLOW,"Sua mensagem foi enviada, aguarde pacientemente.");
        }
    }
    return 1;
}
Seu comando estб certo, porйm й preciso utilizar o comando ">=" pra nгo retornar warnings ou erros.

Corrigindo ficaria assim:

pawn Код:
if(strcmp(cmd, "/duvida", true) == 0 || strcmp(cmd, "/h", true) == 0)
{
    if(IsPlayerConnected(playerid))
    {
            GetPlayerName(playerid,sendername,sizeof(sendername));
        new length = strlen(cmdtext);
        while ((idx < length) && (cmdtext[idx] <= ' '))
        {
            idx++;
        }
        new offset = idx;
        new result[64];
        while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
        {
            result[idx - offset] = cmdtext[idx];
            idx++;
        }
        result[idx - offset] = EOS;
        if(!strlen(result))
        {
            SendClientMessage(playerid,COLOR_WHITE,"USE: /h [sua dъvida]");
            return 1;
        }
        // A partir da daqui...
        if(PlayerInfo[playerid][pLevel] >= 5 ) //O erro estava aqui
        {
            RemovePlayerFromVehicle(playerid);
            SendClientMessage( playerid, -1, "Vocк nгo й mais um novato." );
            return 1;
        }
        // Terminando aqui
        if(PlayerInfo[playerid][pPremio] >= 1)
        {
            format(string,sizeof(string),"Duvida de [VIP] %s(%d): %s",sendername,playerid,(result));
            HBroadCast(0xBD0000FF,string,1);
            SendClientMessage(playerid,COLOR_YELLOW,"Sua mensagem foi enviada, aguarde pacientemente.");
        }
        else
        {
            format(string,sizeof(string),"Duvida de %s(%d): %s",sendername,playerid,(result));
            HBroadCast(0xBD0000FF,string,1);
            SendClientMessage(playerid,COLOR_YELLOW,"Sua mensagem foi enviada, aguarde pacientemente.");
        }
    }
    return 1;
}
Reply
#4

Quote:
Originally Posted by Mandrack_FreeZe
Посмотреть сообщение
Seu comando estб certo, porйm й preciso utilizar o comando ">=" pra nгo retornar warnings ou erros.

Corrigindo ficaria assim:

pawn Код:
if(strcmp(cmd, "/duvida", true) == 0 || strcmp(cmd, "/h", true) == 0)
{
    if(IsPlayerConnected(playerid))
    {
            GetPlayerName(playerid,sendername,sizeof(sendername));
        new length = strlen(cmdtext);
        while ((idx < length) && (cmdtext[idx] <= ' '))
        {
            idx++;
        }
        new offset = idx;
        new result[64];
        while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
        {
            result[idx - offset] = cmdtext[idx];
            idx++;
        }
        result[idx - offset] = EOS;
        if(!strlen(result))
        {
            SendClientMessage(playerid,COLOR_WHITE,"USE: /h [sua dъvida]");
            return 1;
        }
        // A partir da daqui...
        if(PlayerInfo[playerid][pLevel] >= 5 ) //O erro estava aqui
        {
            RemovePlayerFromVehicle(playerid);
            SendClientMessage( playerid, -1, "Vocк nгo й mais um novato." );
            return 1;
        }
        // Terminando aqui
        if(PlayerInfo[playerid][pPremio] >= 1)
        {
            format(string,sizeof(string),"Duvida de [VIP] %s(%d): %s",sendername,playerid,(result));
            HBroadCast(0xBD0000FF,string,1);
            SendClientMessage(playerid,COLOR_YELLOW,"Sua mensagem foi enviada, aguarde pacientemente.");
        }
        else
        {
            format(string,sizeof(string),"Duvida de %s(%d): %s",sendername,playerid,(result));
            HBroadCast(0xBD0000FF,string,1);
            SendClientMessage(playerid,COLOR_YELLOW,"Sua mensagem foi enviada, aguarde pacientemente.");
        }
    }
    return 1;
}
Hein?

Usar '>' ao invйs de '>=' nгo "retornaria" erro ou warning algum, atй porque >= retorna verdadeiro ou falso.

Alйm do mais, nгo atenderia o requerimento do SukMathcuck, onde sгo apenas jogadores de nнvel 5 para baixo que PODEM usar o comando, jogadores de nнvel MAIOR QUE (>) 5 NГO PODEM usб-lo.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)