CMD nur ausführen wenn Variable positiv ist

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 Leute,
    mal wieder ein kleines Problem. Ich hab' mir zwei Pickups erstellt:

    new jobwd;
    new mats1;
    jobwd = CreatePickup(1239,1,-1111.6533,-1677.1379,76.3672,-1);
    mats1 = CreatePickup(1318,1,-1111.6533,-1677.1379,76.3672,-1);


    "jobwd" ist ein Punkt wo sich ein Dialog öffnet ob man Waffendealer werden möchte.
    Ich möchte also wenn man dort auf akzeptieren drückt, sich eine Variable auf true setzt.
    "mats1" ist der Punkt wo man die Materials abholt. Dort soll überprüft werden, ob eben
    diese Variable auf true gesetzt ist, wenn ja werden die Materials gekauft, wenn nein, dann nicht.


    Wie bekomm ich sowas hin =D ?
    Btw, ich weiß in welche Funktionen ich die Befehle schreiben muss (also z.B. bei der Dialogbox, public OnDialogResponse()), nur die Befehle weiß ich noch nicht so genau.


    Achja und noch eine letzte Sache. Die Materials die man gekauft hat und das Geld, diese beiden Werte möchte ich mit DINI in einer TXT speichern.
    Ich habe schon ein kleines Accountsystem gebastelt, es speichert die Profile unter "scriptfiles\accounts" in einer .txt wo der Accountname und das Passwort drinnensteht.


    Ich hoffe ihr könnt mir helfen :>


    MfG ;*

  • Warte mal - dürfte das so gehen :> ?



    new jobwd;
    new mats1;
    new waffendealer = 0;
    jobwd = CreatePickup(1239,1,-1111.6533,-1677.1379,76.3672,-1);
    mats1 = CreatePickup(1318,1,-1111.6533,-1677.1379,76.3672,-1);

    public OnPlayerPickUpPickup(playerid, pickupid)
    {
    if(waffendealer == 1)
    {
    if(pickupid == mats1)
    {
    // blabla
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du bist kein Waffendealer!");
    }
    }



    Ist jetzt ungestet und aus reiner Logik erfasst, würde der Code dementsprechen funktionieren =) ?


    MfG ;*


  • new jobwd;
    new mats1;
    new waffendealer[MAX_PLAYERS] = 0;
    jobwd = CreatePickup(1239,1,-1111.6533,-1677.1379,76.3672,-1);
    mats1 = CreatePickup(1318,1,-1111.6533,-1677.1379,76.3672,-1);

    public OnPlayerPickUpPickup(playerid, pickupid)
    {
    if(pickupid == mats1)
    {
    if(waffendealer[playerid] == 1)
    {
    // blabla
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du bist kein Waffendealer!");
    return 1;
    }
    }
    }


    //edit O.o nicht gut eingerückt :D Müsste aber so funktionieren. [ Nicht getestet. ]