GetVehicleDamageStatus Frage..

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
  • Hallo Com,


    ich habe eine kleine Frage bezüglich des GetVehicleDamageStatus.. ich habe mir zwar die Wiki durch gelesen, blicke da aber trotzdem nicht
    so ganz durch. Wie muss ich damit arbeiten, wenn ich abfragen will, ob das Fahrzeug 10 oder mehr hp verloren hat ? ... Kann mir da jemand einen
    kleinen Schnipsel zu geben ?

  • GetVehicleDamageStatus ist nur für die Karosserie.
    Du musst mit GetVehicleHealth arbeiten und den HP Zustand des Fahrzeugs z.B. in Variablen speichern und die Werte vergleichen...aus der Differenz kannst du ermitteln, wieviel HP dein Fahrzeug verloren hat.

  • GetVehicleDamageStatus ist nur für die Karosserie.
    Du musst mit GetVehicleHealth arbeiten und den HP Zustand des Fahrzeugs z.B. in Variablen speichern und die Werte vergleichen...aus der Differenz kannst du ermitteln, wieviel HP dein Fahrzeug verloren hat.


    Kannst du mir einen kleinen Code anstubser geben ? :S

  • im wiki steht doch ein code schnipsel?
    http://wiki.sa-mp.com/wiki/GetVehicleHealth_DE



    //repariert das Fahrzeug, indem sich der Spieler gerade befindet.
    if(strcmp(cmdtext, "/repair", true) == 0)
    {
    if(IsPlayerInAnyVehicle(playerid)) //checkt ob der spieler in einem Fahrzeug sitzt
    {
    new Float:health;
    new veh;
    veh = GetPlayerVehicleID(playerid);
    GetVehicleHealth(veh, health);
    if(health >500) return SendClientMessage(playerid,COLOR_RED,"Du brauchst dein Fahrzeug nicht zu reparieren");
    //if(health >500) 500 kann beliebeg verändert werden. Wenn die Fahrzeughealth über dieser Zahl ist,
    //lässt sich das Fahrzeug nicht reparieren!
    SetVehicleHealth(veh,1000);
    SendClientMessage(playerid,COLOR_GREEN,"repariert!");
    }
    else //wenn der Spieler in keinem Fahrzeug sitzt
    {
    SendClientMessage(playerid, COLOR_RED, "Du bist in keinem Fahrzeug!");
    }
    }


  • Das macht das ganze schonmal kürzer :)


  • Dein Ernst ? Ich möchte Sekündlich abfragen ob der Spieler das Fahrzeug beschädigt hat und nicht ihm sein Fahrzeug Reparieren lassen.


    Das kann man auch leichter schreiben:


    new veh = GetPlayerVehicleID(playerid),Float:Leben;
    GetVehicleHealth(veh,Leben);
    if(Leben >500)return SendClientMessage(playerid,Farbe,"Text");
    SetVehicleHealth(veh,100);