[Ajuda] Erro no IsPlayerInVehicle
#1

Alguйm pode me dizer por que este comando sempre da erro ?
Quando eu digito no servidor ele retorna a mensagem "ERRO: Comando invбlido!".
Atй onde eu saiba, sу deve retornar esta mensagem quando o comando nгo existe...
Alguйm pode me ajudar ?

Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
	if(strcmp(cmdtext, "/oixau", true) == 0)
	{
	    if(IsPlayerInVehicle(playerid, 1))
		{
			SendClientMessage(playerid, -1, "teste");
		}
  	}

	return SendClientMessage(playerid, VERMELHO, "ERRO: Comando invбlido!");
}
Reply
#2

O jogador tem de estar no veнculo de ID 1, como consta no segundo parвmetro.

Код:
IsPlayerInVehicle(playerid, 1)
E mesmo estando no veнculo de ID 1, vai retornar a mensagem ERRO: Comando invбlido!, isso porque vocк nгo colocou um return antes da ъltima chave desse comando.

Entгo faзa assim:
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
    if(strcmp(cmdtext, "/oixau", true) == 0)
    {
        if(IsPlayerInVehicle(playerid, 1))
        {
            SendClientMessage(playerid, -1, "teste");
        }
        return 1;
    }

    return SendClientMessage(playerid, VERMELHO, "ERRO: Comando invбlido!");
}
Ah! E se vocк quiser verificar se o jogador estб em QUALQUER veнculo, faзa assim:
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
    if(strcmp(cmdtext, "/oixau", true) == 0)
    {
        if(IsPlayerInAnyVehicle(playerid))
        {
            SendClientMessage(playerid, -1, "teste");
        }
        return 1;
    }

    return SendClientMessage(playerid, VERMELHO, "ERRO: Comando invбlido!");
}
E se vocк quiser saber, especificamente, se ele estб DIRIGINDO algum veнculo, faзa assim:
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
    if(strcmp(cmdtext, "/oixau", true) == 0)
    {
        if(!GetPlayerVehicleSeat(playerid))
        {
            SendClientMessage(playerid, -1, "teste");
        }
        return 1;
    }

    return SendClientMessage(playerid, VERMELHO, "ERRO: Comando invбlido!");
}
Reply
#3

Quote:
Originally Posted by Rodney Francalim
Посмотреть сообщение
O jogador tem de estar no veнculo de ID 1, como consta no segundo parвmetro.

Код:
IsPlayerInVehicle(playerid, 1)
E mesmo estando no veнculo de ID 1, vai retornar a mensagem ERRO: Comando invбlido!, isso porque vocк nгo colocou um return antes da ъltima chave desse comando.

Entгo faзa assim:
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
    if(strcmp(cmdtext, "/oixau", true) == 0)
    {
        if(IsPlayerInVehicle(playerid, 1))
        {
            SendClientMessage(playerid, -1, "teste");
        }
        return 1;
    }

    return SendClientMessage(playerid, VERMELHO, "ERRO: Comando invбlido!");
}
Ah! E se vocк quiser verificar se o jogador estб em QUALQUER veнculo, faзa assim:
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
    if(strcmp(cmdtext, "/oixau", true) == 0)
    {
        if(IsPlayerInAnyVehicle(playerid))
        {
            SendClientMessage(playerid, -1, "teste");
        }
        return 1;
    }

    return SendClientMessage(playerid, VERMELHO, "ERRO: Comando invбlido!");
}
E se vocк quiser saber, especificamente, se ele estб DIRIGINDO algum veнculo, faзa assim:
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
    if(strcmp(cmdtext, "/oixau", true) == 0)
    {
        if(!GetPlayerVehicleSeat(playerid))
        {
            SendClientMessage(playerid, -1, "teste");
        }
        return 1;
    }

    return SendClientMessage(playerid, VERMELHO, "ERRO: Comando invбlido!");
}
Copiei exatamente o que me passou, e mesmo assim esta dando erro...
Coloquei essa parte aqui:
Код:
if(strcmp(cmdtext, "/oixau", true) == 0)
    {
        if(IsPlayerInVehicle(playerid, 1))
        {
            SendClientMessage(playerid, -1, "teste");
        }
        return 1;
    }
Reply
#4

Que tipo de erro? como ele falou,para ser em qualquer veiculo mude
pawn Код:
if(IsPlayerInVehicle(playerid, 1)
para
pawn Код:
if(IsPlayerInVehicle(playerid))
Reply
#5

Quote:
Originally Posted by WendeLKILL
Посмотреть сообщение
Que tipo de erro? como ele falou,para ser em qualquer veiculo mude
pawn Код:
if(IsPlayerInVehicle(playerid, 1)
para
pawn Код:
if(IsPlayerInVehicle(playerid))
Tipo, nгo й erro ao compilar. Pela lуgica, SE o player estiver dentro do veнculo de ID 1, envie a mensagem ao player. Mas nгo й o que acontece... Eu estando dentro ou fora do veнculo de ID 1, retorna a mensagem de erro(mensagem que aparece quando nгo existe o comando).

Jб tentei colocar um ELSE, mas tambйm nгo funcionou...
Код:
if(strcmp(cmdtext, "/oixau", true) == 0)
    {
        if(IsPlayerInVehicle(playerid, 1))
        {
            SendClientMessage(playerid, -1, "dentro");
        }
        else
        {
            SendClientMessage(playerid, -1, "fora");
        }
        return 1;
    }
Reply
#6

Nada ? Sou tгo NB que nгo vгo nem ajudar ? HSHAUSHAUSH
Reply
#7

Quote:
Originally Posted by RafaelOsio
Посмотреть сообщение
Nada ? Sou tгo NB que nгo vгo nem ajudar ? HSHAUSHAUSH
Tente:
pawn Код:
if(strcmp(cmdtext, "/oixau", true) == 0)
    {
        if(!IsPlayerInVehicle(playerid, 1)) return SendClientMessage(playerid, 0xFF0000FF, "Você não está dentro de um veiculo.");
        SendClientMessage(playerid, 0x00FF00F, "Voce esta dentro de um veiculo!");
        return 1;
    }
Reply
#8

Resolvido. Obrigado por quem me ajudou.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)