Klammer setzung

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
  • einfach nur so ein Beispiel






    if(newkeys == 2) //Prüft ob Taste zum Hupen gedrückt wurde
    {
    if(IsPlayerInRangeOfPoint(playerid,15,-2051.3999023438, -102.19999694824, 34.200000762939)) { //Prüft ob Spieler in nähe der Schranke
    if(pInfo[playerid][member] == 8 || pInfo[playerid][leader] == 8) { //Prüft ob Player Fahrlehrer ist
    MoveDynamicObject(fstor,-2043.6999511719, -102.30000305176, 34.900001525879 + 0.01, 0.01, 0, 0, 0); //Objekt bewegen
    SendClientMessage(playerid,COLOR_LIGHTBLUE,"Das Tor schließt sich von selbst."); //Nachricht senden
    SetTimer("fsclose",5000,0); //Timer für das Schließen der Schranke starten
    }
    }
    }




    Dort sind die Klammern ja auch in weiten abständen , die letzten drei z.B

  • if (strcmp("/Lcninfo", cmdtext, true, 10) ==0 && (strcmp("/Lcninformation", cmdtext, true, 10) ==0)) { SendClientMessage(playerid,allgemein,"~~~~~~~~~~~~~{weiß}[Red Country Server Lcninforamtion]{allgemein}~~~~~~~~~~~~~"); SendClientMessage(playerid,weiß,"Hier siehst du die Informationen über die LCN"); SendClientMessage(playerid,weiß,"Mit /lcn kannst du das Tor öffnen von der LCN!"); SendClientMessage(playerid,weiß,"Mit /gchat schreibst du in den Gangchat!"); SendClientMessage(playerid,allgemein,"~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~**************~~~~~~~~"); SendClientMessage(playerid,allgemein,"Weitere Befehle sind: [/befehle] - [/info] - [/hilfe] - [/waffenladen]"); return 1; }


    z.b.

  • Klammerin sind dazu wichtig, die Befehle zusammen zu halten. Beispiel.

    // Befehl
    if(IsPlayerConnected(i))
    { // Würde ich jeweils einfach die Klammern weglassen, käme es zu Errors und das Script würde nichts mehr checken.
    if(IstSpielerAdmin(i,1))
    {// Das heisst: Sobald du eine Klammer vergisst, kriegst du meist 26 Errors. (Weisen auf ein Klammerfehler hin)
    SendClientMessage(i,Blau,text);
    if(GetPVarInt(playerid,"Adminlevel")==0) SendClientMessage(playerid,Rot,"Nutze den /a Chat nicht aus!");
    }// Wenn du oben ins Script "#pramga tabsize 0" oder sowas eingibst, eignoriert das Script sämtliche Abstände der Klammern. Beispiel unten.
    }
    }
    return 1;
    }


    if(IsPlayerConnected(i))
    {
    if(IstSpielerAdmin(i,1))
    {
    SendClientMessage(i,Blau,text);
    if(GetPVarInt(playerid,"Adminlevel")==0) SendClientMessage(playerid,Rot,"Nutze den /a Chat nicht aus!");
    }
    }
    }
    return 1;
    }


    lg

    RTL - Das N steht für Niveau!
    MfG,
    StreetS


    Jegliche Freundesanfragen, die für mich keinen Sinn ergeben, werden professionell Ignoriert. (Gleiche mit Skype!)
    Wer es nicht kapiert wird in Breadfish & Skype blockiert.


    - Stolzer PAWN Scripter der Klasse Beherrscht

  • Einrücken ist theoritisch nicht wichtig.


    Wenn du aber am Script arbeitest, merkst du schnell, wie wichtig die Einrückung zum Arbeiten ist. Dadurch wird es übersichtlicher etc.


    Außerdem beschwert Pawno sich beim kompilieren, wenn man irgendwo falsch einrückt.

  • ok, ich hab das jetzt mal versucht, jedoch kommen errors, wo würde dort mein fehler liegen?



    if(strcmp(cmdtext, "/enter", true) == 0)
    {
    if(!IsPlayerInRangeOfPoint(playerid,5.0,1412.6999511719,-1700.4000244141,13.199999809265))
    {
    SetPlayerPos(playerid,2496.0500,-1692.9301,1014.7422);
    SetPlayerInterior(playerid,20,296.10000610352,-38.400001525879,836.400002441406);
    return 1;
    }
    }

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Kommen Errors, die so heissen: "Loose Indentation"? Das sind Einrückungsfehler, diese kannst du easy mit "TAB" drücken ausbessern.
    Und Pupskuchen hat schon gesagt, einrücken ist wichtig damit du nicht den Überbklick verlierst. ;)


    lg


    #E: Grammar Fail!

    RTL - Das N steht für Niveau!
    MfG,
    StreetS


    Jegliche Freundesanfragen, die für mich keinen Sinn ergeben, werden professionell Ignoriert. (Gleiche mit Skype!)
    Wer es nicht kapiert wird in Breadfish & Skype blockiert.


    - Stolzer PAWN Scripter der Klasse Beherrscht

  • Nunja, diese Erros kommen ;)



  • if(strcmp(cmdtext, "/enter", true) == 0)
    {
    if(IsPlayerInRangeOfPoint(playerid,5.0,1412.6999511719,-1700.4000244141,13.199999809265)) //Ausrufe Zeichen macht kein Sinn, sont wird er die ganze Zeit teleportiert.
    {
    SetPlayerPos(playerid,2496.0500,-1692.9301,1014.7422);
    SetPlayerInterior(playerid,20); // Coords braucht dieser Befehl nicht.
    return 1;
    }
    }


    Und haste auch den CMD in den richtigen Public geschrieben?


    lg

    RTL - Das N steht für Niveau!
    MfG,
    StreetS


    Jegliche Freundesanfragen, die für mich keinen Sinn ergeben, werden professionell Ignoriert. (Gleiche mit Skype!)
    Wer es nicht kapiert wird in Breadfish & Skype blockiert.


    - Stolzer PAWN Scripter der Klasse Beherrscht

  • Dann musst du das anders machen.



    if(strcmp(cmdtext, "/enter", true) == 0)
    {
    if(IsPlayerInRangeOfPoint(playerid,5.0,1412.6999511719,-1700.4000244141,13.199999809265))
    {
    SetPlayerInterior(playerid,20);
    SetPlayerPos(playerid,/*2496.0500,-1692.9301,1014.7422*/); // Hier deine Coords, wo dein Interior ist (Das was ich ausgeklammert habe)
    return 1;
    }
    }


    lg

    RTL - Das N steht für Niveau!
    MfG,
    StreetS


    Jegliche Freundesanfragen, die für mich keinen Sinn ergeben, werden professionell Ignoriert. (Gleiche mit Skype!)
    Wer es nicht kapiert wird in Breadfish & Skype blockiert.


    - Stolzer PAWN Scripter der Klasse Beherrscht

  • danke dir ;)


    //edit: Magste mir noch kurz zeigen wie ich das mache, wenn ich aus dem Interiior raus will?


    So hab ich das jetzt mit den richtigen Coords wenn ich rein will



    if(strcmp(cmdtext, "/enter", true) == 0)
    {
    if(IsPlayerInRangeOfPoint(playerid,5.0,1412.6999511719,-1700.4000244141,13.199999809265))
    {
    SetPlayerInt(playerid,20);
    SetPlayerPos(playerid,2496.0500,-1692.9301,1014.7422);
    return 1;
    }
    }


  • korrekt wäre es aber so:

    if(strcmp(cmdtext, "/enter", true) == 0)
    {
    if(IsPlayerInRangeOfPoint(playerid,5.0,1412.6999511719,-1700.4000244141,13.199999809265))
    {
    SetPlayerInterior(playerid,20);
    SetPlayerPos(playerid,/*2496.0500,-1692.9301,1014.7422*/); // Hier deine Coords, wo dein Interior ist (Das was ich ausgeklammert habe)
    return 1;
    }
    }

  • So ungefähr.



    if(strcmp(cmdtext, "/exit", true) == 0)
    {
    if(IsPlayerInRangeOfPoint(playerid,5.0,/*1412.6999511719,-1700.4000244141,13.199999809265*/)) // Deine Coords wo er stehen soll, damit er rauskommt.
    {
    SetPlayerInterior(playerid,0); // 0 Ist die Normale Spieler Welt
    SetPlayerPos(playerid,/*2496.0500,-1692.9301,1014.7422*/); // Hier deine Coords, wo der Spieler gespawnt werden soll (Das was ich ausgeklammert habe)
    return 1;
    }
    }


    lg


    #E: lg vergessen und natürlich Exit nicht Enter xD

    RTL - Das N steht für Niveau!
    MfG,
    StreetS


    Jegliche Freundesanfragen, die für mich keinen Sinn ergeben, werden professionell Ignoriert. (Gleiche mit Skype!)
    Wer es nicht kapiert wird in Breadfish & Skype blockiert.


    - Stolzer PAWN Scripter der Klasse Beherrscht