params auf 2x aufteilen

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
  • Abend,


    ich sitze gerade vor einem Problem, für das ich irgendwie grad zu blöd bin, um es zu lösen.


    ich mach gerade ein Blitzer System, aber ich weiß nicht was ich beim 2.ten sscanf anstatt params reinschreiben soll
    CMD:blitzer(playerid,params[])
    {
    new tmp[25];
    if(sscanf(params,"s",tmp))return SCM(playerid, Weiss, "Benutze: /blitzer aufstellen/abbauen");


    new b_Speed,b_Strafgeld;
    if(sscanf(params,"dd",b_Speed,b_Strafgeld))return SCM(playerid, Weiss, "Benutze: /blitzer aufstellen [Geschwindigkeit] [Strafgeld]");
    ....
    }
    wie muss ich das 2. sscanf machen? statt params => tmp? (funktioniert auch nicht)


    bitte um Hilfe


    mfg :thumbup:

  • ah sry, ich hab mich vertan ^^





    CMD:blitzer(playerid,params[])
    {
    new tmp[25];
    if(sscanf(params,"s",tmp))return SCM(playerid, Weiss, "Benutze: /blitzer aufstellen/abbauen");
    if(strcmp(tmp,"aufstellen",true) == 0){
    new b_Speed,b_Strafgeld;
    if(sscanf(params,"dd",b_Speed,b_Strafgeld))return SCM(playerid, Weiss, "Benutze: /blitzer aufstellen [Geschwindigkeit] [Strafgeld]");
    }
    else if(strcmp(tmp,"abbauen",true) == 0){
    ......
    }
    ....
    }
    so sieht es aus ^^

  • bau doch die parameter direkt in sein 1. sscanf ein.. also so


    Ich weiß nicht, ob es funktioniert, oder totaler humbuk ist, da ich sowas in der art noch nie hatte ;)

    CMD:blitzer(playerid,params[])
    {
    new tmp[25];
    new b_Speed,b_Strafgeld;
    if(sscanf(params,"sii",tmp,b_Speed,b_Strafgeld)){
    if(strcmp(tmp,"aufstellen",true) == 0){


    }else{
    SCM(playerid, Weiss, "Benutze: /blitzer aufstellen [Gesch.][Srafe]");
    }
    }
    else if(sscanf(params,"s",tmp)){
    if(strcmp(tmp,"abbauen",true) == 0){


    }else{
    SCM(playerid, Weiss, "Benutze: /blitzer aufstellen [Gesch.][Srafe]");
    }
    }else{
    SCM(playerid, Weiss, "Benutze: /blitzer aufstellen [Gesch.][Srafe]/abbauen");
    }
    return 1;
    }

  • Ich weiß nicht, ob es funktioniert, oder totaler humbuk ist, da ich sowas in der art noch nie hatte ;)


    geht mir genau so :D


    naja ich probiers mal aus


    vom überfliegen her, könnte es funktionieren


    /e habs jetzt geschafft :D
    war ein Denkfehler ;)


    für alle die das selbe Problem haben: ;)
    new tmp[25],b_Speed,b_Strafgeld;
    sscanf(params,"sdd",tmp,b_Speed,b_Strafgeld);
    if(strcmp(tmp,"aufstellen",true) == 0){
    }
    else if(strcmp(tmp,"abbauen",true) == 0){
    }

    Einmal editiert, zuletzt von H4rd_B4se ()

  • Weist du wie man das dann macht, wenn ich zb /f Anzeigen mache, dann brauche ich ja die verschiedenen Parameter ID, Anzahl & Grund, aber wenn ich dann noch den Befehl zb. /f wanteds machen will wofür ich die oben genannten Parameter ja von den /f Anzeigen nicht brauche?
    mfg

  • Die richtig verwendung ist eigentlich folgende
    nun gut das returnen der Nachricht bei beiden ist nicht notwenig


    new tmp[25], b_Speed,b_Strafgeld;
    if(sscanf(params,"s[25]",tmp)) && if(sscanf(params,"s[25]dd",b_Speed,b_Strafgeld))return SCM(playerid, Weiss, "Benutze: /blitzer abbauen/aufstellen [Geschwindigkeit] [Strafgeld]");
    if(!strcmp(tmp,"abbauen",true)){
    ...
    }
    if(!sscanf(params,"s[25]dd",b_Speed,b_Strafgeld)){
    if(!strcmp(tmp,"aufstellen",true)){