FraktionsTore öffnen

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 Ich habe ein Fraktionssystem geschrieben und wollte das jeder Fraktion seine Tore öffnet.
    Doch ich habe das mit einem YT Video gemacht und er hat das gemacht wenn der spieler dieses Adminlevel ist, Aber ich würde gerne das man in der und der Fraktion sein muss um das Tor zu öffnen.



    // Fahrschule Gate
    if(strcmp("/fs", cmdtext, true, 10) == 0)
    {
    if(sSpieler[playerid][Adminlevel] >= 1)
    {
    if(IsPlayerInRangeOfPoint(playerid,10.5,-2049.3999, -212.89999, 35.4))
    {
    SendClientMessage(playerid,GRÜN,"Du hast das Tor geöffnet. Es schließt sich automatisch.");
    MoveObject(FsTor, -2049.3999, -212.89999, 25.4, 2.0);
    SetTimer("TorFs",5027,false);
    return 1;
    }
    else
    {
    SendClientMessage(playerid,ROT,"Du bist nicht berechtigt das Tor zu öffnen.");
    return 1;
    }
    }
    }


    So hat er das aber wi kann ich das ändern?

  • if(sSpieler[playerid][Adminlevel] >= 1)


    In dieser Zeile prüfst du, ob der Spieler ein Adminlevel >= (größer gleich) 1 hat.
    Ändere einfach die Variable Adminlevel auf z.B. Fraktion oder Member bzw Leader...halt das was du dafür verwendest.


    mfg. :rolleyes:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • Ok Danke^^


    Aber was muss ich dann bei der 1 hinschreiben?


    Weil am Anfang des Scripts hab ich es so definiert



    // Fraktionen
    #define sFraktion "LSPD"
    #define sFraktion2 "ADAC"
    #define sFraktion3 "FBI"
    #define sFraktion4 "Yakuza"
    #define sFraktion5 "Red Soldiers"


    //Dialoge
    #define REGISTER 1
    #define LOGIN 2
    #define REGELN 3
    #define AKZEPTIERT 4
    #define NICHTAKZEPTIERT 5


    //Enums
    enum SpielerDaten
    {
    Adminlevel,
    Level,
    Fraktion,
    Team,
    sLogin
    };
    new sSpieler[MAX_PLAYERS][SpielerDaten];


    /* News */


    new db_handle;


    // Tore
    new YakuzaTor1;
    new YakuzaTor2;


    // Fahrschule
    new FsTor;


    //
    new RSTor;


    // FBI
    new FBI;


    // TaxiTor
    new TTor1;
    new TTor2;

  • Einfach so schreiben:


    if(sSpieler[playerid][Fraktion] >= 1)


    Das stimmt doch so, der Spieler soll ja in einer Fraktion die != 0 (nicht gleich null ist bzw >= 1 größer gleich 1) ist sein... :rolleyes:


    mfg. :thumbup:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • Jeffry:
    Oder die Fraktion die in der ID 5 ist ;)


    if(!sSpieler[playerid][Fraktion] == 5)
    so gehts auch :P

  • filezilla:
    Das würde aber heißen wenn er nicht in Red Soldiers ist, gehts auf.
    Aber warum für alle einzeln machen wenn man einfach sagen kann NUR Red Soldiers kann die öffnen ;)?

    "Imagine if the government went after corruption as hard as it goes after guys who run filesharing sites. Priorities. " - @Snowden
    "More worrying than FBI temporarily running a server that contained child porn, is hacking computers anywhere in the world with one warrant" - @josephfcox

  • Aber wer sagt denn das er die Fraktion Red Soldiers überhaupt hat?

  • Jeffry:
    if(!sSpieler[playerid][Fraktion] == 5)
    so gehts auch :P


    Das macht keinen Sinn und wird dir zudem einen Tag Mismatch geben. Funktionieren wird es auch nicht.
    Wenn, dann SO:
    if(!(sSpieler[playerid][Fraktion] != 5))
    Das ist aber genauso sinnlos, da doppelt verneint. "Wenn nicht nicht" ist das gleiche wie "Wenn".



    Red Soldiers = Feuerwehr (alle anderen 4 sind bestimmt nicht die Feuerwehr, also bleibt nur das.)



    EDIT:

    Jeffry:
    Da will man dich einmal Verbessern und du machst wieder alles kaputt.


    Du hast es verschlimmert, nicht verbessert. :wacko:

  • filezilla:
    #define sFraktion5 "Red Soldiers"


    Infictible
    Man kann Themen als erledigt markieren.

    "Imagine if the government went after corruption as hard as it goes after guys who run filesharing sites. Priorities. " - @Snowden
    "More worrying than FBI temporarily running a server that contained child porn, is hacking computers anywhere in the world with one warrant" - @josephfcox