Hi,
habe ein Tanksystem gescriptet.
Das Problem ist nur dass der Tank sich leert wenn man im Auto sitzt, auch wenn man kein Gas gibt..
Wie finde ich also heraus dass der Spieler Gas gibt, und wenn er vom Gas runtergeht sich nichts am Benzin verändert?
Jay
Wann gibt er Gas?
- JayTheSheep
- Geschlossen
- Erledigt
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!
Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
-
-
Du kannst das mit OnPlayerStateChange machen.
Einfach mal im Englischen WIKI schauen . -
Hab ich mir auch schon überlegt, nur das Problem ist es gibt keinen Status wo der Spieler Gas gibt xD
0 Empty (while initializing) - "PLAYER_STATE_NONE"
1 Player is on foot - "PLAYER_STATE_ONFOOT"
2 Player is driver of a vehicle - "PLAYER_STATE_DRIVER"
3 Player is passenger of a vehicle - "PLAYER_STATE_PASSENGER"
7 Player is wasted or on class selection - "PLAYER_STATE_WASTED"
8 Player is spawned - "PLAYER_STATE_SPAWNED"
9 Player is spectating - "PLAYER_STATE_SPECTATING" -
Geschwindigkeit berechnen... falls er dann fährt, soll Benzin runtergehen.
-
Und wie berechnet man die Geschwindigkeit?
-
Man muss das glaube mit getplayerpos machen, ob er sich bewegt
-
v = s / t
-
Früher ( vor 0.3a ) hat man es noch mit GetPlayer/VehiclePos gemacht.Jetzt hat man dafür GetVehicleVelocity
Velocity könntest du dann umrechnen in KMH bzw MPH und von dort berechnen wieviel Sprit verbraucht wurde.ZitatWie finde ich also heraus dass der Spieler Gas gibt, und wenn er vom Gas runtergeht sich nichts am Benzin verändert?
So funktioniert aber kein Auto ;). -
Hat sich erledigt Hab im englischen Forum das gefunden:
Float:GetVehicleSpeed(vehicleid)
{
new
Float:vX,
Float:vY,
Float:vZ;
GetVehicleVelocity(vehicleid, vX, vY, vZ);
return floatsqroot(vX*vX + vY*vY + vZ*vZ);
}