Mehrere Befehle in einem

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 Community


    Ich habe eine Frage, wie kann ich ein befehl erstellen wo ich dann z.B NOCH was auswählen kann,..
    Ich meine sowas


    /givelic[Autoschein/Motorradschein/Bootschein/usw.] [playerid]


    Wenn jemand so nett wäre, und mir NUR ein Beispiel vorzeigen kann also wie das aussehen würde,...wäre echt cool,
    Ich will Scripten lernen, deswegen muss ich auch vieles noch lernen und selber ausprobieren..

  • hier mal ein beispiel mit ocmd und sscanf

    ocmd:schein(playerid,params[])
    {
    new pID,scheinname[10];
    if(sscanf(params,"us",pID,scheinname))return SendClientMessage(playerid,BLAU,"Info: /schein [ID] [Scheinname]");
    if(strcmp(scheinname,"auto",true)==0)
    {
    //schein geben
    }
    return 1;
    }

  • Erstma danke dir für deine Hilfe


    würde das so gehen?


    ocmd:schein(playerid,params[])
    {
    new pID,scheinname[10];
    if(sscanf(params,"us",pID,scheinname))return SendClientMessage(playerid,BLAU,"Info: /schein [ID] [Scheinname]");
    if(strcmp(scheinname,"auto",true)==0)
    {
    SendeClientMessage(playerid,RED,"TEST");
    SpielerInfo[playerid][pAuto] = 1;
    }
    if(strcmp(scheinname,"Motorrad",true)==0)
    {
    SendeClientMessage(playerid,RED,"TEST");
    SpielerInfo[playerid][pMotorrad] = 1;
    }
    }
    if(strcmp(scheinname,"Boot",true)==0)
    {
    SendeClientMessage(playerid,RED,"TEST");
    SpielerInfo[playerid][pBoot] = 1;
    }
    }
    return 1;
    }


    oder muss bei den anderen else if stehen?...

  • C:\Users\Gta Server\Desktop\Neuer Ordner\SEHR WICHTIG\Selfmade\gamemodes\pRL©.pwn(2652) : error 035: argument type mismatch (argument 1)
    C:\Users\Gta Server\Desktop\Neuer Ordner\SEHR WICHTIG\Selfmade\gamemodes\pRL©.pwn(2661) : error 035: argument type mismatch (argument 1)
    C:\Users\Gta Server\Desktop\Neuer Ordner\SEHR WICHTIG\Selfmade\gamemodes\pRL©.pwn(2670) : error 035: argument type mismatch (argument 1)
    C:\Users\Gta Server\Desktop\Neuer Ordner\SEHR WICHTIG\Selfmade\gamemodes\pRL©.pwn(2679) : error 035: argument type mismatch (argument 1)
    C:\Users\Gta Server\Desktop\Neuer Ordner\SEHR WICHTIG\Selfmade\gamemodes\pRL©.pwn(2688) : error 035: argument type mismatch (argument 1)
    C:\Users\Gta Server\Desktop\Neuer Ordner\SEHR WICHTIG\Selfmade\gamemodes\pRL©.pwn(2697) : error 035: argument type mismatch (argument 1)
    C:\Users\Gta Server\Desktop\Neuer Ordner\SEHR WICHTIG\Selfmade\gamemodes\pRL©.pwn(2706) : error 035: argument type mismatch (argument 1)
    C:\Users\Gta Server\Desktop\Neuer Ordner\SEHR WICHTIG\Selfmade\gamemodes\pRL©.pwn(2715) : error 035: argument type mismatch (argument 1)
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    8 Errors.


    Diese errors kommen bei diesen Zeilen hier


    if(strcmp(Scheinname,"Autoschein",true) == 0)


    else if(strcmp(Scheinname,"Motorradschein",true) == 0)


    else if(strcmp(Scheinname,"Bootschein",true) == 0)


    else if(strcmp(Scheinname,"Angelschein",true) == 0)


    else if(strcmp(Scheinname,"Angelschein",true) == 0)


    else if(strcmp(Scheinname,"LKWschein",true) == 0)


    else if(strcmp(Scheinname,"Flugschein",true) == 0)


    else if(strcmp(Scheinname,"Waffenschein",true) == 0)


    else if(strcmp(Scheinname,"Alle",true) == 0)


    was bedeuted das?...

  • Hast du es so geschrieben ?
    ocmd:schein(playerid,params[])
    {
    new pID,scheinname[10];
    if(sscanf(params,"us",pID,scheinname))return SendClientMessage(playerid,BLAU,"Info: /schein [ID] [Scheinname]");
    if(strcmp(scheinname,"auto",true)==0)
    {
    SendeClientMessage(playerid,RED,"TEST");
    SpielerInfo[pID][pAuto] = 1;
    }
    else if(strcmp(scheinname,"Motorrad",true)==0)
    {
    SendeClientMessage(playerid,RED,"TEST");
    SpielerInfo[pID][pMotorrad] = 1;
    }
    else if(strcmp(scheinname,"Boot",true)==0)
    {
    SendeClientMessage(playerid,RED,"TEST");
    SpielerInfo[pID][pBoot] = 1;
    }
    return 1;
    }


    //edit : so ist es richtig.
    //edit : kleine korrektere >>
    Das "SpielerInfo[playerid][dein Speicher] = 1;"
    Zu "SpielerInfo[pID][dein Speicher] = 1;"

    Einmal editiert, zuletzt von Marvinmauric () aus folgendem Grund: Nur ein Satz runter geschrieben

  • Liegt denke mal daran, dass du Scheinname groß geschrieben hast..


    Achja: weißt du überhaupt, was das "true" am Ende von strcmp bedeutet?




    //
    SpielerInfo[playerid][pAuto] = 1;
    Er gibt sich den Schein ja dann immer selber...


    [playerid] zu [pID]