Beiträge von Mr.Soap

    Danke alles auser Zustand Klappt:



    public TachoTimer()
    {
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i) && IsPlayerInAnyVehicle(i))
    {
    new Float:Entfernung, Float:Geschwindigkeit; // Die definierten Floats die mit den Werten gefüttert werden
    GetVehiclePos(GetPlayerVehicleID(i), X1[i], Y1[i], Z1[i]); //Erste Koordinate wird genommen
    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)); //Berechnung der Entfernung
    Geschwindigkeit = (Entfernung / (TACHOTIMER/1000)) * 3.6; //Meter/Sekunde in Kilometer/Stunde
    new Tachostring[20]; // definiert den String
    format(Tachostring, sizeof(Tachostring), "Km/h: %d", floatround(Geschwindigkeit)); //Hier das format, was es macht siehe oben im Wiki-Link. floatround rundet die Kommerzahl (Float:Geschwindigkeit) zu einer normalen ganzzahligen zahl, damit wir den Integer %d der für ganze zahlen ist, verwenden können.
    PlayerTextDrawSetString(i, Tacho2[i], Tachostring); //Setzt den String für das Textdraw für den Spieler mit der ID "i"
    GetVehiclePos(GetPlayerVehicleID(i), X2[i], Y2[i], Z2[i]); //Zweite Koordinate wird genommen
    PlayerTextDrawShow(i, Tacho2[i]);
    new vehicle, Tanks[48];
    format(Tanks, sizeof(Tanks), "Tank: %d", Tank[vehicle]);
    PlayerTextDrawSetString(i, Tacho4[i], Tanks);
    vehicle = GetPlayerVehicleID(i);
    GetVehiclePos(GetPlayerVehicleID(i), X2[i], Y2[i], Z2[i]);
    new Float:zustand,Float:zustand2;
    new Zustandstring[20];
    zustand = zustand2/10;
    format(Zustandstring, sizeof(Zustandstring), "Zustand: %d", floatround(zustand2));
    GetVehicleHealth(vehicle, zustand);
    PlayerTextDrawSetString(i, Tacho3[i], Zustandstring);
    new VName[64];
    format(VName,sizeof(VName),"Fahrzeug: %s",VehicleName[GetVehicleModel(GetPlayerVehicleID(i))-400]);
    PlayerTextDrawSetString(i, Tacho0[i], VName);
    PlayerTextDrawShow(i, Tacho0[i]);
    PlayerTextDrawShow(i, Tacho1[i]);
    PlayerTextDrawShow(i, Tacho3[i]);
    PlayerTextDrawShow(i, Tacho4[i]);
    }
    else
    {
    PlayerTextDrawHide(i, Tacho2[i]);
    }
    }
    return 1;
    }

    ok ich teste eben


    //Edit KM/H Klappt aber sonst ist nichts
    der Zustand nicht und Fahrzeugname+Box
    public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
    PlayerTextDrawSetString(playerid, Tacho0[playerid], VehicleName[GetPlayerVehicleID(playerid)-400]);
    PlayerTextDrawShow(playerid, Tacho0[playerid]);
    PlayerTextDrawShow(playerid, Tacho1[playerid]);
    PlayerTextDrawShow(playerid, Tacho3[playerid]);
    PlayerTextDrawShow(playerid, Tacho4[playerid]);
    return 1;
    }


    public OnPlayerExitVehicle(playerid, vehicleid)
    {
    PlayerTextDrawHide(playerid, Tacho0[playerid]);
    PlayerTextDrawHide(playerid, Tacho1[playerid]);
    PlayerTextDrawHide(playerid, Tacho3[playerid]);
    PlayerTextDrawHide(playerid, Tacho4[playerid]);
    return 1;
    }

    Hei, mein tacho bleibt dauernd bei 0 km/h und der Zustand wird garnet angezeigt:



    public TachoTimer()
    {
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i) && IsPlayerInAnyVehicle(i))
    {
    new Float:Entfernung, Float:Geschwindigkeit; // Die definierten Floats die mit den Werten gefüttert werden
    GetVehiclePos(GetPlayerVehicleID(i), X1[i], Y1[i], Z1[i]); //Erste Koordinate wird genommen
    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)); //Berechnung der Entfernung
    Geschwindigkeit = (Entfernung / (TACHOTIMER/1000)) * 3.6; //Meter/Sekunde in Kilometer/Stunde
    new Tachostring[20]; // definiert den String
    format(Tachostring, sizeof(Tachostring), "Km/h: %d", floatround(Geschwindigkeit)); //Hier das format, was es macht siehe oben im Wiki-Link. floatround rundet die Kommerzahl (Float:Geschwindigkeit) zu einer normalen ganzzahligen zahl, damit wir den Integer %d der für ganze zahlen ist, verwenden können.
    PlayerTextDrawSetString(i, Tacho2[i], Tachostring); //Setzt den String für das Textdraw für den Spieler mit der ID "i"
    GetVehiclePos(GetPlayerVehicleID(i), X2[i], Y2[i], Z2[i]); //Zweite Koordinate wird genommen
    PlayerTextDrawShow(i, Tacho2[i]);
    new vehicle;
    vehicle = GetPlayerVehicleID(i);
    GetVehiclePos(GetPlayerVehicleID(i), X2[i], Y2[i], Z2[i]);
    new Float:zustand,Float:zustand2;
    new Zustandstring[20];
    zustand = zustand2/10;
    format(Zustandstring, sizeof(Zustandstring), "Zustand: %d", floatround(zustand));
    GetVehicleHealth(vehicle, zustand);
    PlayerTextDrawSetString(i, Tacho3[i], Zustandstring);
    }
    else
    {
    PlayerTextDrawHide(i, Tacho2[i]);
    }
    }
    return 1;
    }