Ich bin zu unfähig meinen Themen richtige Titel zu geben

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
  • Ich sitze seit Tagen daran etwas zu basteln. ABER ES SCHEITERT IMMER


    if(listitem == 0)
    {
    if(GetPlayerWantedLevel(playerid) < 0 )
    {
    SetPlayerWantedLevel(playerid,1);
    SendClientMessage(playerid,Weiss,"Du bist Taxi-Fahrer,spawn dir ein Taxi und fahre zum Checkpoint[Es gibt 3 Level]");
    }
    else
    {
    if(GetPlayerWantedLevel(playerid) < 1 )
    {
    if(GetPlayerWantedLevel(playerid) < 2 )
    {
    GameTextForPlayer(playerid,"Level 3",5000,6);
    SetPlayerCheckpoint(playerid,TaxiJob3,5.0);
    }
    else
    {
    GameTextForPlayer(playerid,"Level 2",5000,6);
    SetPlayerCheckpoint(playerid,TaxiJob2,5.0);
    }
    }
    else
    {
    GameTextForPlayer(playerid,"Level 1",5000,6);
    SetPlayerCheckpoint(playerid,TaxiJob1,5.0);
    }
    }
    }


    Funktionierte nicht :|


    if(dialogid == Dialog_Job)
    {
    if(response)
    {
    if(listitem == 0)
    {
    if(GetPlayerWantedLevel(playerid) > 1 )
    {
    SetPlayerWantedLevel(playerid,1);
    GameTextForPlayer(playerid,"Level 1",5000,6);
    SetPlayerCheckpoint(playerid,TaxiJob1,5.0);
    }
    else
    {
    if(GetPlayerWantedLevel(playerid) < 1 )
    {
    if(GetPlayerWantedLevel(playerid) > 3 )
    {
    SetPlayerWantedLevel(playerid,2);
    GameTextForPlayer(playerid,"Level 2",5000,6);
    SetPlayerCheckpoint(playerid,TaxiJob2,5.0);
    }
    }
    }
    }
    }
    }
    Funktioniert auch nicht


    PAWNO ZEIGT KEINE FEHLER
    Beim Ersten passiert (wenn ich /job ) eingebe "Level 3" ) und der dritte Checkpoint kommt aber wenn ich reinfahre passiert NICHTS.


    Hier die Checkpoints:


    public OnPlayerEnterCheckpoint(playerid)
    {
    if (IsPlayerInRangeOfPoint(playerid, 7.0,Checkpoint1))
    {
    DisablePlayerCheckpoint(playerid);
    }
    if (IsPlayerInRangeOfPoint(playerid, 7.0,TaxiJob1))
    {
    DisablePlayerCheckpoint(playerid);
    SetPlayerWantedLevel(playerid,2);
    GivePlayerMoney(playerid,500);
    }
    if (IsPlayerInRangeOfPoint(playerid, 7.0,TaxiJob2))
    {
    DisablePlayerCheckpoint(playerid);
    SetPlayerWantedLevel(playerid,3);
    GivePlayerMoney(playerid,1000);
    }
    if (IsPlayerInRangeOfPoint(playerid, 7.0,TaxiJob2))
    {
    DisablePlayerCheckpoint(playerid);
    SetPlayerWantedLevel(playerid,0);
    GivePlayerMoney(playerid,1500);
    }
    return 1;
    }


    und hier der befehl:



    if(strcmp("/job",cmdtext,true,10) == 0)
    {
    ShowPlayerDialog(playerid,Dialog_Job,DIALOG_STYLE_LIST,"Job Auswahl","Taxi-Fahrer","Nehmen!","Abbrechen");
    return 1;
    }




    Bitte helft mir! :P

    3 Mal editiert, zuletzt von Melbatt ()

  • Hallo,
    bitte lasse den Code mal richtig einrücken.
    Du bearbeitest den Post ---> Wechselst von Editor zu Quellcode ---> Fügst den Code ein
    ---> Markierst den Code ---> Klickst auf


    Da man dir sonst einfach nicht richtig helfen kann.


    LG

    Main: CPU: Intel Core i5-4440 @ 3,10 GHz | CPU-Cooling: Matterhorn -PURE- | RAM: 16GB Crucial Ballistix Sport DDR3-1600 DIMM CL9-9-9-24 |
    Motherboard: ASRock B85M Pro4 | GPU: Sapphire Radeon R9 390X Nitro 8GB GDDR5 |

    SSD: Samsung SSD 840 Evo 500GB | Power Supply: 550 Watt Corsair CS Series Modular 80+ Gold | Case: beQuiet! Silent Base 800


    As I walk through the valley of the shadow of death
    I take a look at my life and realize there's nothin' left.

  • Sorry, ich hatte sonst nie was. Deswegen bin ich jetzt hier und wusste nicht wie das funkt. aber jetzt gehts


    Er hat manches Verschoben , das müsst ihr aber übersehen weil anderes gehts grad nicht.


    Zitat

    Andere machen dass auch, wahrscheinlich schreiben die keine richtigen Titel, da sie nicht wissen, was sie machen sollen bzw. was ihr problem ist.


    Ja,das stimmt sry aber ich weiss nicht voran es liegt


  • if(dialogid == Dialog_Job)
    {
    if(response)
    {
    if(listitem == 0)
    {
    if(GetPlayerWantedLevel(playerid) > 1 )
    {
    SetPlayerWantedLevel(playerid,1);
    GameTextForPlayer(playerid,"Level 1",5000,6);
    SetPlayerCheckpoint(playerid,TaxiJob1,5.0);
    }
    else
    {
    if(GetPlayerWantedLevel(playerid) < 1 )
    {
    if(GetPlayerWantedLevel(playerid) > 3 )
    {
    SetPlayerWantedLevel(playerid,2);
    GameTextForPlayer(playerid,"Level 2",5000,6);
    SetPlayerCheckpoint(playerid,TaxiJob2,5.0);
    }
    }
    }
    }
    }
    }



    Korrigier den doch mal bitte. Ich bekomm Fehler

  • ich rede von den Checkpoints X(
    public OnPlayerEnterCheckpoint(playerid)
    {
    if (IsPlayerInRangeOfPoint(playerid, 7.0,Checkpoint1))
    {
    DisablePlayerCheckpoint(playerid);
    }
    else if (IsPlayerInRangeOfPoint(playerid, 7.0,TaxiJob1))
    {
    DisablePlayerCheckpoint(playerid);
    SetPlayerWantedLevel(playerid,2);
    GivePlayerMoney(playerid,500);
    }
    else if (IsPlayerInRangeOfPoint(playerid, 7.0,TaxiJob2))
    {
    DisablePlayerCheckpoint(playerid);
    SetPlayerWantedLevel(playerid,3);
    GivePlayerMoney(playerid,1000);
    }
    else if (IsPlayerInRangeOfPoint(playerid, 7.0,TaxiJob2))
    {
    DisablePlayerCheckpoint(playerid);
    SetPlayerWantedLevel(playerid,0);
    GivePlayerMoney(playerid,1500);
    }
    return 1;
    }


    Und Zeig mal den Dialog den du anzeigen lässt nicht die Funktion selber von ondialog...

    All in all it's just another brick in the wall

  • Also,das würde funktionieren aber OnPlayerDialog funktioniert nicht . Wenn ich /job eingebe und den Job auswähle passiert NICHTS! Kein Text,WantedLelvel,Checkpoint:


    if(dialogid == Dialog_Job)
    {
    if(response)
    {
    if(listitem == 0)
    {
    if(GetPlayerWantedLevel(playerid) > 1 )
    {
    SetPlayerWantedLevel(playerid,1);
    GameTextForPlayer(playerid,"Level 1",5000,6);
    SetPlayerCheckpoint(playerid,TaxiJob1,5.0);
    }
    else
    {
    if(GetPlayerWantedLevel(playerid) < 1 )
    {
    if(GetPlayerWantedLevel(playerid) > 3 )
    {
    SetPlayerWantedLevel(playerid,2);
    GameTextForPlayer(playerid,"Level 2",5000,6);
    SetPlayerCheckpoint(playerid,TaxiJob2,5.0);
    }
    }
    }
    }
    }
    }

  • 1. Fehler



    if(GetPlayerWantedLevel(playerid) > 1 ) //Muss < sein!


    2.Fehler



    if(GetPlayerWantedLevel(playerid) < 1 )
    {
    if(GetPlayerWantedLevel(playerid) > 3 )
    {


    Du fragst ab, ob der Spieler einen WantedLevel KLEINER 1 hat und dann, ob er GRÖßER 3 ist. Alle Codes werden nie "erreicht", weil die Bedingungen nie erfüllt sind!


    Mfg,
    UncleSub


  • Danke UncleSub , habe < mit > vertauscht :D .
    Aber kannst du beim Hauprscript (Das erste auf der Seite) helfen.

  • Das alles ergibt sowieso für mich keinen Sinn. So wie du es jetzt hast, gibt der Spieler /job ein und kann dann den Befehl immer wieder eingeben und kriegt ein höheres Level. Ich weiß nicht, ob du es so wolltest, oder doch so, dass der Spieler ein höheres Level bekommt, wenn er in einen Checkpoint fährt. Naja egal so wie du es hattest...



    if(listitem == 0)
    {
    if(GetPlayerWantedLevel(playerid) == 0 )
    {
    SetPlayerWantedLevel(playerid,1);
    SendClientMessage(playerid,Weiss,"Du bist Taxi-Fahrer,spawn dir ein Taxi und fahre zum Checkpoint[Es gibt 3 Level]");
    }
    else if(GetPlayerWantedLevel(playerid) == 1 )
    {
    GameTextForPlayer(playerid,"Level 1",5000,6);
    SetPlayerCheckpoint(playerid,TaxiJob1,5.0);
    //Muss dann noch das dazu:
    SetPlayerWantedLevel(playerid, 2);
    }
    else if(GetPlayerWantedLevel(playerid) == 2 )
    {
    GameTextForPlayer(playerid,"Level 2",5000,6);
    SetPlayerCheckpoint(playerid,TaxiJob2,5.0);
    //Muss dann noch das dazu:
    SetPlayerWantedLevel(playerid, 3);
    }
    else if(GetPlayerWantedLevel(playerid) == 3 )
    {
    GameTextForPlayer(playerid,"Level 3",5000,6);
    SetPlayerCheckpoint(playerid,TaxiJob3,5.0);
    //Muss dann noch das dazu:
    SetPlayerWantedLevel(playerid, 4);
    }
    else
    {
    GameTextForPlayer(playerid,"Level 1",5000,6);
    SetPlayerCheckpoint(playerid,TaxiJob1,5.0);
    //Muss dann noch das dazu:
    SetPlayerWantedLevel(playerid, 2);
    }
    }


    Wie gesagt macht keinen Sinn. Musste nochmal drüber nachdenken. ;)


    Mfg,
    UncleSub

  • Ne,ich wollte da so -->


    Taxi-Fahrer hat 1 Stern ----> ZIEL!
    fährt


    Ziel erreicht --> +1 Stern


    /job eingeb ---> Level 2


    Taxi-Fahrer hat 2 Stern ----> ZIEL!
    fährt


    Ziel erreicht --> +1 Stern


    ...u.s.w



    Okay,hat sich erledigt habe das SetPlayerWantedLevel unten herausgenommen(Dein Tipp) Und es funktioniert. Vielen Dank :D


    LG Melbatt

    Einmal editiert, zuletzt von Melbatt ()


  • if(listitem == 0)
    {
    if(GetPlayerWantedLevel(playerid) == 0 )
    {
    SetPlayerWantedLevel(playerid,1);
    SetPlayerCheckpoint(playerid,TaxiJob1,5.0);
    SendClientMessage(playerid,Weiss,"Du bist Taxi-Fahrer,spawn dir ein Taxi und fahre zum Checkpoint[Es gibt 3 Level]");
    }
    else if(GetPlayerWantedLevel(playerid) == 2 )
    {
    GameTextForPlayer(playerid,"Level 2",5000,6);
    SetPlayerCheckpoint(playerid,TaxiJob2,5.0);
    }
    else if(GetPlayerWantedLevel(playerid) == 3 )
    {
    GameTextForPlayer(playerid,"Level 3",5000,6);
    SetPlayerCheckpoint(playerid,TaxiJob3,5.0);
    }
    else //Das wird ausgeführt, wenn es nicht 0, 2, 3 ist, ka ob dus brauchst, kommt drauf an was du bei OnPlayerEnterCheckpoint machst. Sonst löschen
    {
    GameTextForPlayer(playerid,"Level 1",5000,6);
    SetPlayerCheckpoint(playerid,TaxiJob1,5.0);
    }
    }


    Dann so.


    Mfg


    //Edit: Schon erledigt..
    Kein Ding ;)