if Heal Anfrage von Fahrzeugen

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
  • Wenn ich nicht irre, so kann ein Fahrzeug nicht beschädigt werden, wenn kein Spieler darin sitzt.
    Desweiteren ist es auch nicht möglich (es sei denn durch versenken oder aufs Dach legen) ein Fahrzeug zu beschädigen, wenn die darin sitzenden Spieler gefreezed sind.


    So gibt es jetzt zwei Möglichkeiten.
    Entweder du fragst wieder ab, ob das Fahrzeug beschädigt wird und setzt es auf einen Wert von 199 (die abfrage war ja, ob der schaden KLEINER als 200 ist ;) ),
    oder du freezed die einsteigenden Spieler oder wirfst sie direkt wieder raus =)



    Hinweis: Keinen Kontakt über TeamViewer oder Skype !
    Grüßt den Fehlerklärbär von mir.
    Coming soon: Pawn-Café ( Concept-Sharing | Scripting-First-Aid )

  • Wenn ich nicht irre, so kann ein Fahrzeug nicht beschädigt werden, wenn kein Spieler darin sitzt.
    Desweiteren ist es auch nicht möglich (es sei denn durch versenken oder aufs Dach legen) ein Fahrzeug zu beschädigen, wenn die darin sitzenden Spieler gefreezed sind.


    So gibt es jetzt zwei Möglichkeiten.
    Entweder du fragst wieder ab, ob das Fahrzeug beschädigt wird und setzt es auf einen Wert von 199 (die abfrage war ja, ob der schaden KLEINER als 200 ist ;) ),
    oder du freezed die einsteigenden Spieler oder wirfst sie direkt wieder raus =)


    Ne ich meine wenn es zb: 30% hat und dann n Crash das es Brennt. Und explodiert. Ich mein es soll nicht wegsprengen oder explodieren desshalb. Bis 20% you know ?

  • Also er meint, wie ich auch schon Fragen wollte ^^ Wenn das Auto zu schnell wo ran fährt überschlägt es die 20% und es explodiert einfach.. er will und ich auch wenn du uns noch helfen willst kannst das es auf keinen Fall explodiert egal wie schnell das Auto Heal abgezogen wird. Es soll einfach nicht zur Explosion kommen können.

  • Achso...
    hau das einfach in die obige Funktion mit rein ;)


    Hier:

    public OnVehicleDamageStatusUpdate(vehicleid, playerid)
    {
    //#pragma unused playerid


    new Float:health;
    GetVehicleHealth(vehicleid, health);
    if(health<200)
    {
    for(new i=0;i<GetMaxPlayers();i++)
    {
    if(IsPlayerInVehicle(i,vehicleid))
    {
    SetVehicleHealth(vehicleid,200.0);//Hier einfach einsetzen :D
    RemovePlayerFromVehicle(i);
    }
    }
    }
    return 1;
    }



    Hinweis: Keinen Kontakt über TeamViewer oder Skype !
    Grüßt den Fehlerklärbär von mir.
    Coming soon: Pawn-Café ( Concept-Sharing | Scripting-First-Aid )

  • Hammer! Wirklich vielen Dank, aber irgendwie geht das nicht, kann trotzdem noch den Motor starten:


    if(strcmp(cmd, "/motor",true) == 0)
    {
    if(IsANoTachoVehicle(GetPlayerVehicleID(playerid)))
    {
    SendClientMessage(playerid, COLOR_GRAD1, "{FFFFFF}Fahrräder haben {FF0000}keinen{FFFFFF} Motor ...");
    return 1;
    }
    if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return 1;
    new engine,lights,alarm,doors,bonnet,boot,objective;
    new vid = GetPlayerVehicleID(playerid);
    GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
    new Float:health;
    GetVehicleHealth(GetPlayerVehicleID(playerid), health);
    if(health<400)
    {
    return SendClientMessage(playerid,0xFFAAFF,"Sorry Kolläsch, aber dein Motor machts nichtmehr");
    }
    if(vid != INVALID_VEHICLE_ID)
    {
    if(engine == VEHICLE_PARAMS_ON)
    {
    SetVehicleParamsEx(vid,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
    GameTextForPlayer(playerid, "~n~~n~~n~~n~~n~~n~~W~Motor ~r~aus!", 2000, 5);
    Motor[vid] = false;
    TextDrawSetString(tMotor[playerid], "[~r~Motor~w~]");
    }
    else
    {
    SetVehicleParamsEx(vid,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
    GameTextForPlayer(playerid, "~n~~n~~n~~n~~n~~n~~W~Motor ~g~an!", 2000, 5);
    Motor[vid] = true;
    TextDrawSetString(tMotor[playerid], "[~g~Motor~w~]");
    }
    }
    return 1;
    }

  • Das muss man natürlich schon ein wenig umstruktieren ;)



    if(strcmp(cmd, "/motor",true) == 0)
    {
    if((GetPlayerVehicleID(playerid)!=INVALID_VEHICLE_ID) && (GetPlayerState(playerid)==PLAYER_STATE_DRIVER))//Erstmal abchecken, ob er überhaupt in einem Fahrzeug sitzt "UND" Fahrer ist!
    {
    if(IsANoTachoVehicle(GetPlayerVehicleID(playerid)))
    {
    SendClientMessage(playerid, COLOR_GRAD1, "{FFFFFF}Fahrräder haben {FF0000}keinen{FFFFFF} Motor ...");
    return 1;
    }
    new engine,lights,alarm,doors,bonnet,boot,objective;
    new vid = GetPlayerVehicleID(playerid);
    GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
    if(engine == VEHICLE_PARAMS_ON)
    {
    SetVehicleParamsEx(vid,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
    GameTextForPlayer(playerid, "~n~~n~~n~~n~~n~~n~~W~Motor ~r~aus!", 2000, 5);
    Motor[vid] = false;//Keine Ahnung wo man das noch weitergehend verwenden müsste; finde ich persönlich jetzt unnötig ;)
    TextDrawSetString(tMotor[playerid], "[~r~Motor~w~]");
    }
    else
    {
    new Float:health;
    GetVehicleHealth(vid,health);
    if(health<400)
    {
    return SendClientMessage(playerid,0xFFAAFF,"Sorry Kolläsch, aber dein Motor machts nichtmehr");
    }
    else
    {
    SetVehicleParamsEx(vid,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
    GameTextForPlayer(playerid, "~n~~n~~n~~n~~n~~n~~W~Motor ~g~an!", 2000, 5);
    Motor[vid] = true;//Hier ebenfalls =)
    TextDrawSetString(tMotor[playerid], "[~g~Motor~w~]");
    }
    }
    }

    return 1;
    }


    In etwa so sollte das klappen ;)


    Edit:Habe die Fahrer-Abfrage direkt mit oben rein gehauen.



    Hinweis: Keinen Kontakt über TeamViewer oder Skype !
    Grüßt den Fehlerklärbär von mir.
    Coming soon: Pawn-Café ( Concept-Sharing | Scripting-First-Aid )

  • Ok alles geht, wenn ich aber mit einem Auto nur ganz ganz leich wo dagegenfahre brennt es schon und explodiert gleich... wie kann ich das ändern das es kurz brennt und dann schwarz rauch und dann kann man nicht mehr damit fahren? erst wieder wenn man /carrep eingegeben hat, der Befehl Carrep ist vorhandne nur ich weis nicht genau wie das aussieht was 100% ist 200.0 oder 100 oder ka, gibt es dazu ne Seite Wiki oder so? Aber das echt Gut, vielen Dank dafür ;)

  • Danke für deine große Hilfe! Vielen Dank genau so wollte ich es! Und bei so viel Arbeit für anderen kannst du sogar noch einen Smiley posten! ;)

  • Kopier einfach (wenn du vllt. wieder an nem rechner sein solltest ;) ) die Quelltexte aus den Fenstern (bitte nicht doppelt)
    Und ändere die Werte von 200 auf 250. (bzw 250.1)



    Hinweis: Keinen Kontakt über TeamViewer oder Skype !
    Grüßt den Fehlerklärbär von mir.
    Coming soon: Pawn-Café ( Concept-Sharing | Scripting-First-Aid )