Heyho
Ich habe ein problem, mein Tacho wird so angezeigt, wie weit ich von einem Punkt entfernt bin...
Wisst ihr woran es liegt?
public TimerTacho()
{
new Float:X1[MAX_PLAYERS], Float:Y1[MAX_PLAYERS], Float:Z1[MAX_PLAYERS];
new Float:X2[MAX_PLAYERS], Float:Y2[MAX_PLAYERS], Float:Z2[MAX_PLAYERS];
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i) && IsPlayerInAnyVehicle(i))
{
new Float:Entfernung, Float:Geschwindigkeit;
GetVehiclePos(GetPlayerVehicleID(i), X1[i], Y1[i], Z1[i]);
Entfernung = floatsqroot(floatpower(floatabs(floatsub(X1[i], X2[i])), 2)+floatpower(floatabs(floatsub(Y1[i], Y2[i])), 2)+floatpower(floatabs(floatsub(Z1[i], Z2[i])), 2));
Geschwindigkeit = (Entfernung / (Tachospeed/1000)) * 3.6;
new Tachostring[20];
format(Tachostring, sizeof(Tachostring), "Km/h: %d", floatround(Geschwindigkeit));
TextDrawSetString(KMH[i], Tachostring);
GetVehiclePos(GetPlayerVehicleID(i), X2[i], Y2[i], Z2[i]);
TextDrawShowForPlayer(i, KMH[i]);
}
else
{
TextDrawHideForPlayer(i, KMH[i]);
}
}
return 1;
}
Tacho geht nicht...
- Skypolee
- Geschlossen
- Erledigt
-
-
Gibt es Warnnings oder Errors?
-
Mhm, probiers mal so aus:
public TimerTacho() {
for(new i; i<MAX_PLAYERS; i++) {
if(!IsPlayerConnected(i) || !IsPlayerInAnyVehicle(i)) TextDrawHideForPlayer(i, KMH[i]);
new Tachostring[20],Float:_Q[4];
GetVehicleVelocity(GetPlayerVehicleID(i),_Q[0],_Q[1],_Q[2]);
_Q[3] = floatsqroot((_Q[0]*_Q[0]) + (_Q[1]*_Q[1]) + (_Q[2]*_Q[2])*170.0);
format(Tachostring, sizeof(Tachostring), "Km/h: %d", floatround(_Q[3]));
TextDrawSetString(KMH[i], Tachostring);
TextDrawShowForPlayer(i, KMH[i]);
}
return 1;
}mfg.
-
Mhm, probiers mal so aus:
public TimerTacho() {
for(new i; i<MAX_PLAYERS; i++) {
if(!IsPlayerConnected(i) || !IsPlayerInAnyVehicle(i)) TextDrawHideForPlayer(i, KMH[i]);
new Tachostring[20],Float:_Q[4];
GetVehicleVelocity(GetPlayerVehicleID(i),_Q[0],_Q[1],_Q[2]);
_Q[3] = floatsqroot((_Q[0]*_Q[0]) + (_Q[1]*_Q[1]) + (_Q[2]*_Q[2])*170.0);
format(Tachostring, sizeof(Tachostring), "Km/h: %d", floatround(_Q[3]));
TextDrawSetString(KMH[i], Tachostring);
TextDrawShowForPlayer(i, KMH[i]);
}
return 1;
}mfg.
Hey und danke,
aber irgendwie schaffe ich es da höchstens 1 KM/H schnell zu fahren...
-
aber irgendwie schaffe ich es da höchstens 1 KM/H schnell zu fahren...
Ach echt...das ist seltsam, wie lässt du denn die Funktion TimerTacho aufrufen?mfg.
-
Den Timer starte ich im Callback OnGameModeInit...
-
Den Timer starte ich im Callback OnGameModeInit...
und ... welche Zeit?Und erstellst du eigentlich dein TextDraw unter OnPlayerConnect? Wenn nein, lass es da erstellen.
mfg.
-
und ... welche Zeit?Und erstellst du eigentlich dein TextDraw unter OnPlayerConnect? Wenn nein, lass es da erstellen.
mfg.
Mhmm, bringt leider nichts...
Vorhin habe ich als Zeit 1 Sekunde genommen, jetzt mal mit 250ms probiert, aber dasselbe...
Mein Rekord an KM/H liegt bei 4Aber, woran könnte das wohl Liegen...
Edit: Rechtschreibung -
breadfish.de
Hat das Thema geschlossen.