Nebenjob Duty/offDuty

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
  • Nabend :)


    Wollte mal wissen wie man wenn man nen befehl für nen Nebenjob hat, nicht damit rum buggen kann.
    Ich erkläre es kurz:


    Mein 1. und im moment einzigster Nebenjob (Müllmann) funktioniert so:
    Wenn ich in nem Müllwagen bin, kann ich /Müllmann eingeben und eskommt ein Checkpoint.
    Wenn ich diesen Checkpoint erreicht habe kommt da "Müll wird eingesammelt" und der Wagen wird für 3 Sekunden gefreezed.
    Dann wird ein 2. Checkpoint gezeigt und so..


    Nur wenn ich im 1. Checkpoint stehe, und die ganze zeit /müllmann , /müllmann ... eingebe , wird das immer wieder als Aktivierter Checkpoint gesehen und somit
    buggt er sich das Geld was er für den Checkpoint bekommt.


    Gibts dafür nen besonderen Code oder sowas?
    kenn mich mit sowas nicht aus :(


    Hier der Code zum Aktivieren vom Müllmann Job:
    public OnPlayerCommandText(playerid, cmdtext[])
    {
    if (strcmp("/Müllmann", cmdtext, true) == 0)
    {
    new vehicleid = GetPlayerVehicleID(playerid);
    for(new i=0; i<11; i++)
    if(vehicleid == trash[i])
    SetPlayerCheckpoint(playerid,169.6573,-1775.9962,4.6257,3);
    Points[playerid] = 1;
    return 1;
    }
    return 1;
    }


    (Points und so sind die weiteren Checkpoints)
    (das da drüber checkt ob er im Müllwagen ist)


    kann mir da jemand helfen?

  • Hallo HellFire


    Mach es doch am besten mit EinerIf(SetPlayerCheckpoint(playerid,169.6573,-1775.9962,4.6257,3));Abfrage.


    Oder mit Einer Case 0: SetPlayerCheckPoint(playerid,169.6573,-1775.9962,4.6257,3)); Abfrage.. Weiß es momentan nicht Genau, da Ich dies noch nicht Probiert habe.


    Weiß aber nicht ob dies Funktioniert.
    Ich versuche mal ein Beispiel Zu Scripten & Zeige es dir Dann.


    MFG
    Dome331

  • Hallo


    Leider habe ich Grade keine Zeit dazu, eine Genaue Erklärung zu Schreiben.


    Hier kannst du Checkpoints Scripten.
    Scripting mit Checkpoints


    Sobald ich zeit habe, werde ich Dazu mal eine Kleine Erklärung schreiben


    MFG
    Dome331

  • wie ich die Checkpoints setzte weis ich ja ^^
    nur wenn ich den befehl /Müllmann (um den 1. Checkpoint zu zeigen) im 1. Checkpoint die ganze zeit eingebe, wird er mir die ganze zeit angezeigt, aktiviert, mir wird geld gegeben, wieder aktiviert, wieder geld gegeben und so..
    dieses will ich ja umgehen :D
    das ich halt nicht immer /müllmann eingeben kann

  • probier doch einfach eine if Abfrage in dieser Form


    if(Points[playerid]) return SendClientMessage(playerid,-1,"Du sammelst bereits Müll");

    "Bevor ich mir Informationen aus der "Bild" hole,
    werde ich anfangen, Wahlergebnisse danach vorauszusagen,
    neben welchen Busch unsere Katze gepinkelt hat."

    Margarete Stokowski

  • Hallo


    Mach aus /Müllman = /Start & Setz halt mit einer (IF-Abfrager) Oder (Case-Abfrage) die Checkpoint´s.


    Und mit IsPlayerInRangeOfPoint fragst du, ob Der spieler Den Checkpoint Erreich hat.


    Wenn ja, dann Setz man die Zweiten Checkpoint & macht Wieder IsPlayerInRangeOfPoint Usw.


    Sobald ich zeig habe, werde ich mal Dazu einen Kleine Erklärung schreiben.


    Hier mal ein Beispiel:

    new trinkgeld = 800; // Geld / Checkpoint


    if(IsPlayerInRangeOfPoint(playerid,10.0,1355.6742,-1749.4160,13.3807))
    {
    GivePlayerMoney(playerid, trinkgeld);
    format(string, sizeof(string), "** Du hast den Müll aufgeladen und %d€ erhalten, fahr zum Nächsten Checkpoint.",trinkgeld);
    SendClientMessage(playerid, COLOR_GREEN, string);
    DisablePlayerCheckpoint(playerid);
    SetPlayerCheckpoint(playerid,1539.8971,-1628.5874,13.38287, 5.0); // Das Steht, für den Zweiten Checkpoint!
    }
    Das new Trinkgeld = 800; ist dafür, das er Spieler 800$ bekommt für jeden Angefahrenen Checkpoint


    Dies musst, du Natürlich an dein Script Anpassen
    MFG
    Dome331



    //E Beispiel Hinzgefügt
    //E Bearbeitet

    Einmal editiert, zuletzt von Dome331 ()