Boa noite, Brunno.
Estou usado um sistema de Surf ( detectar se o player está em cima do veiculo ) mas em algumas situações q n tem nada a ver com surf ele detecta como se fosse o surf:
Ex: O player agachado ele detecta como surf, a animação que faz ao entrar no veiculo até sentar no banco se o timer executar na hora disso ele detecta como Surf tb, eu consegui colocar caso estiver trabalhando ele ignorar e retornar mas esses dois problemas de Agachado e do veiculo n consegui ignorar.
callback CheckSurfing(newkeys,vehicleid,oldstate,newstate)
{
foreach(new i : Player)
{
if (!PlayerData[i][Logado])
continue;
new surfingVehicleId = GetPlayerSurfingVehicleID(i);
if (surfingVehicleId == INVALID_VEHICLE_ID)
{
SendClientMessage(i, corError, "Voce nao esta surfando");
}else
{
if (!PlayerData[i][Logado])
continue;
if(GetPlayerState(i) == KEY_CROUCH) // está detectando e jogando pra cima :/
return 1;
if(GetPlayerState(i) == PLAYER_STATE_ENTER_VEHICLE_DRIVER) // está detectando e jogando pra cima :/
return 1;
if(ProduzirInfo[i][Trabalhando]) // está retornando e nao detecta
return 1;
if(ProduzirInfo2[i][Trabalhando2]) // está retornando e nao detecta
return 1;
SendClientMessage(i, corError, "Voce esta surfando");
static Float: Pos[4];
GetPlayerPos(i, Pos[0], Pos[1], Pos[2]);
SetPlayerPos(i, Pos[0], Pos[1], Pos[2]+3.0);
}
}
return 1;
}
Estou usado um sistema de Surf ( detectar se o player está em cima do veiculo ) mas em algumas situações q n tem nada a ver com surf ele detecta como se fosse o surf:
Ex: O player agachado ele detecta como surf, a animação que faz ao entrar no veiculo até sentar no banco se o timer executar na hora disso ele detecta como Surf tb, eu consegui colocar caso estiver trabalhando ele ignorar e retornar mas esses dois problemas de Agachado e do veiculo n consegui ignorar.
callback CheckSurfing(newkeys,vehicleid,oldstate,newstate)
{
foreach(new i : Player)
{
if (!PlayerData[i][Logado])
continue;
new surfingVehicleId = GetPlayerSurfingVehicleID(i);
if (surfingVehicleId == INVALID_VEHICLE_ID)
{
SendClientMessage(i, corError, "Voce nao esta surfando");
}else
{
if (!PlayerData[i][Logado])
continue;
if(GetPlayerState(i) == KEY_CROUCH) // está detectando e jogando pra cima :/
return 1;
if(GetPlayerState(i) == PLAYER_STATE_ENTER_VEHICLE_DRIVER) // está detectando e jogando pra cima :/
return 1;
if(ProduzirInfo[i][Trabalhando]) // está retornando e nao detecta
return 1;
if(ProduzirInfo2[i][Trabalhando2]) // está retornando e nao detecta
return 1;
SendClientMessage(i, corError, "Voce esta surfando");
static Float: Pos[4];
GetPlayerPos(i, Pos[0], Pos[1], Pos[2]);
SetPlayerPos(i, Pos[0], Pos[1], Pos[2]+3.0);
}
}
return 1;
}