problem mit geschwindigkeit usw..

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
  • KMH anzeige wird nur angezeigt wenn die playerid 0 in einem fahrzeug sitzt.
    playerid0 ist nicht im auto, playerid 1 ist im auto sieht aber keine kmh anzeige
    playerid0 ist im auto, playerid1 ist im auto und sieht kmh anzeige.


    public SpeedChecker()
    {
    for(new i=0; i < MAX_PLAYERS ;i++)
    {
    if(IsPlayerConnected(i))
    {
    if(!IsPlayerInAnyVehicle(i))
    {
    TextDrawHideForPlayer(i,Textdraw0);
    TextDrawHideForPlayer(i,Textdraw2);
    TextDrawHideForPlayer(i,Textdraw4);
    TextDrawHideForPlayer(i,Textdraw6);
    TextDrawHideForPlayer(i,Textdraw8);
    TextDrawHideForPlayer(i,Textdraw7);
    TextDrawHideForPlayer(i,Textdraw1[i]);
    TextDrawHideForPlayer(i,Textdraw3[i]);
    TextDrawHideForPlayer(i,Textdraw5[i]);
    TextDrawHideForPlayer(i,Textdraw11[i]);
    return 1;
    }
    new str[10];
    new Float:Velocity[3];
    GetVehicleVelocity(GetPlayerVehicleID(i), Velocity[0], Velocity[1], Velocity[2]);
    new Float:geschwindigkeit = floatsqroot(Velocity[0]*Velocity[0] + Velocity[1]*Velocity[1] + Velocity[2]*Velocity[2]) * 140;
    format(str,sizeof str,"%d KM/H",floatround(geschwindigkeit));
    if(autofs[i] == 1 && floatround(geschwindigkeit) > 80)
    {
    swarnungen[i] += 1;
    if(swarnungen[i] == 20)
    {
    zuschnell[i] += 1;
    swarnungen[i] = 0;
    new strx[70];
    format(strx,sizeof strx,"Du bist zu schnell gefahren! (Max 70KM/H) | Verwarnung %d/10",zuschnell[i]);
    SendClientMessage(i,HELLROT,strx);
    if(zuschnell[i] == 10)
    {
    autofs[i] = 0;
    SendClientMessage(i,HELLROT,"Durchgefallen!");
    SetVehicleToRespawn(GetPlayerVehicleID(i));
    DisablePlayerCheckpoint(i);
    zuschnell[i] = 0;
    CP[i] = 0;
    }
    }
    }
    TextDrawSetString(Textdraw3[i],str);
    new Float:Health;
    GetVehicleHealth(GetPlayerVehicleID(i),Health);
    new str1[20];
    format(str1,sizeof str1,"%d/1000",floatround(Health));
    TextDrawSetString(Textdraw5[i],str1);
    new str2[20];
    format(str2,sizeof str2,"%d/100",Tank[GetPlayerVehicleID(i)]);
    TextDrawSetString(Textdraw11[i],str2);
    }
    }
    return 1;
    }

    Du suchst eine nette Community, ein hilfsbereites Team & einen Server, wo es Spaß macht, drauf zu spielen?
    Dann bist du bei Sunrise - Reallife genau richtig!

  • public SpeedChecker()
    {
    for(new i=0; i < MAX_PLAYERS ;i++)
    {
    if(IsPlayerConnected(i))
    {
    if(!IsPlayerInAnyVehicle(i))
    {
    TextDrawHideForPlayer(i,Textdraw0);
    TextDrawHideForPlayer(i,Textdraw2);
    TextDrawHideForPlayer(i,Textdraw4);
    TextDrawHideForPlayer(i,Textdraw6);
    TextDrawHideForPlayer(i,Textdraw8);
    TextDrawHideForPlayer(i,Textdraw7);
    TextDrawHideForPlayer(i,Textdraw1[i]);
    TextDrawHideForPlayer(i,Textdraw3[i]);
    TextDrawHideForPlayer(i,Textdraw5[i]);
    TextDrawHideForPlayer(i,Textdraw11[i]);
    continue;
    }
    new str[10];
    new Float:Velocity[3];
    GetVehicleVelocity(GetPlayerVehicleID(i), Velocity[0], Velocity[1], Velocity[2]);
    new Float:geschwindigkeit = floatsqroot(Velocity[0]*Velocity[0] + Velocity[1]*Velocity[1] + Velocity[2]*Velocity[2]) * 140;
    format(str,sizeof str,"%d KM/H",floatround(geschwindigkeit));
    if(autofs[i] == 1 && floatround(geschwindigkeit) > 80)
    {
    swarnungen[i] += 1;
    if(swarnungen[i] == 20)
    {
    zuschnell[i] += 1;
    swarnungen[i] = 0;
    new strx[70];
    format(strx,sizeof strx,"Du bist zu schnell gefahren! (Max 70KM/H) | Verwarnung %d/10",zuschnell[i]);
    SendClientMessage(i,HELLROT,strx);
    if(zuschnell[i] == 10)
    {
    autofs[i] = 0;
    SendClientMessage(i,HELLROT,"Durchgefallen!");
    SetVehicleToRespawn(GetPlayerVehicleID(i));
    DisablePlayerCheckpoint(i);
    zuschnell[i] = 0;
    CP[i] = 0;
    }
    }
    }
    TextDrawSetString(Textdraw3[i],str);
    new Float:Health;
    GetVehicleHealth(GetPlayerVehicleID(i),Health);
    new str1[20];
    format(str1,sizeof str1,"%d/1000",floatround(Health));
    TextDrawSetString(Textdraw5[i],str1);
    new str2[20];
    format(str2,sizeof str2,"%d/100",Tank[GetPlayerVehicleID(i)]);
    TextDrawSetString(Textdraw11[i],str2);
    }
    }
    return 1;
    }


    Das Return in der Schleife musst du durch ein Continue ersetzen, da return die ganze Funktion beendet. Continue hingegen überspringt nur diesen Spieler, was ja auch dein Ziel ist. ;)