Guten Tag zusammen!
Ich bin momentan dabei, es so zu machen, wenn man vom Fahrzeug absteigt, aussteigt oder sogar runterfällt, dass es sich automatisch "entlockt".
Das ganze könnte man theoretisch über einen Timer einfacher wie nie lösen, allerdings ist das für mich viel zu "ressourcenfressend".
Deswegen dachte ich mir, kann man das ja auch über OnPlayerStateChange machen.
Nur funktioniert das ganze leider nicht ganz.
if(oldstate == PLAYER_STATE_DRIVER || oldstate == PLAYER_STATE_PASSENGER)
{
HideTachoForPlayer(playerid);
if(!(IsAFraktionsVeh(vehicleid) == INVALID_VEHICLE_ID))
{
if(IsValidVehicle(vehicleid))
{
new fV = IsAFraktionsVeh(vehicleid);
UnlockVehicle(fVehicle[fV][vehID]);
}
}
for(new i=0;i<GetMaxPlayers();i++)
{
for(new slot=0;slot<MAX_PLAYER_VEHICLES;slot++)
{
if(vehicleid == PrivateVehicle[i][slot][vehID])
{
UnlockVehicle(PrivateVehicle[i][slot][vehID]);
}
}
if(vehicleid == Spieler[i][pBusID])
{
UnlockVehicle(Spieler[i][pBusID]);
}
}
if(vehicleid == Spieler[playerid][pBike])
{
UnlockVehicle(Spieler[playerid][pBike]);
}
}
Ich denke einfach mal, "vehicleid" ist sogesehen INVALID_VEHICLE_ID, weil ja nur der "alte Status" abgefragt wird, und da sitze ich sogesehen ja nicht mehr im/auf dem Fahrzeug.
Kann da jemand helfen? Wäre echt dankbar!