Й sу vocк pensar como seu cуdigo funciona por partes, nгo como um todo.
Um veнculo sу para novatos:
O que eu vou precisar pra isso?
Pergunta: Primeiro de tudo, й preciso detectar quando um jogador entra em um carro.
Resposta: Quando um jogador entra/sai de um carro a callback OnPlayerStateChange й executada.
pawn Код:
public OnPlayerStateChange(playerid, newstate, oldstate)
{
// o que serб executa ao entrar/sair de um veнculo.
return 1;
}
Pergunta: Preciso saber se o player й novato nй?
Resposta: digamos que ele seja novato caso o score dele seja menor que 5 por exemplo.
pawn Код:
public OnPlayerStateChange(playerid, newstate, oldstate)
{
if(GetPlayerScore(playerid) >= 5)
{
// o que acontecerб se o score dele for maior que 5
}
return 1;
}
Pergunta: Como remove-lo de um carro?
Resposta: RemovePlayerFromVehicle(playerid). й uma funзгo que remove o jogador do veнculo.
Jб adicionei mensagens que serгo exibidas no IF (Se a condiзгo passar) e no else (Se a condiзгo nao passar)
pawn Код:
public OnPlayerStateChange(playerid, newstate, oldstate)
{
if(GetPlayerScore(playerid) >= 5)
{
RemovePlayerFromVehicle(playerid);
SendClientMessage(playerid,-1,"Esse veнculo e somente para iniciantes!");
}
else SendClientMessage(playerid,-1,"Esse veнculo й para iniciantes. Em breve nгo poderб mais utiliza-lo.");
return 1;
}
Nгo se esqueзa de checar que ele ENTROU no veнculo como motorista:
pawn Код:
public OnPlayerStateChange(playerid, newstate, oldstate)
{
if(newstate == PLAYER_STATE_DRIVER) // Ou PLAYER_STATE_PASSENGER pra passageiros.
{
if(GetPlayerScore(playerid) >= 5)
{
RemovePlayerFromVehicle(playerid);
SendClientMessage(playerid,-1,"Esse veнculo e somente para iniciantes!");
}
else SendClientMessage(playerid,-1,"Esse veнculo й para iniciantes. Em breve nгo poderб mais utiliza-lo.");
}
return 1;
}
Espero que tenha entendo! Tente fazer seu outro cуdigo! Й errando que se aprende! Abraзos.