Problem mit /kick [ID] [GRUND] Grund wird nicht angezeigt :(

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
  • Moin, Moin!
    ich habe ein /kick [ID] [GRUND] Commando gebastelt aber der grund wird einfach nicht angezeigt :(
    Könntet ihr mir vllt helfen?


    Hier der Code:
    if(strcmp(strget(cmdtext,0), "/kick", true) == 0)
    {new zielname[512];new playername[512]; new grund[256];new ziel = strval(strget(cmdtext,1));new msg[512];new msg2[512];GetPlayerName(ziel,zielname,sizeof(zielname));GetPlayerName(playerid,playername,sizeof(playername));}if(Spielerinfo[playerid][Adminlevel] >= 1)
    {if(!strlen(strget(cmdtext,1))) return SendClientMessage(playerid,COLOR_INFOGELB,"Benutze: /kick [ID] [grund]");
    {
    if(!IsPlayerConnected(ziel))
    {
    return SendClientMessage(playerid,COLOR_INFOROT,"Kein Spieler mit angegebener ID Online");
    }
    format(msg,sizeof(msg),"[AdminCmd] %s wurde gekickt von %s. Grund: %s",zielname,playername,grund);
    SendClientMessageToAll(COLOR_INFOROT,msg);
    format(msg2,sizeof(msg2),"Du wurdest von %s gekickt. Grund: %s",playername,grund);
    SendClientMessage(ziel,COLOR_INFOROT,msg2);
    Kick(ziel);
    return 1;
    }
    } else{SendClientMessage(playerid,COLOR_INFOROT,"SERVER: Du bist kein Admin."); return 1;}
    }}


    wenn dies bissl durcheinander wirken aussehen könnte, könnte an mein Browser Liegen :thumbdown: *Abturn* :thumbdown:
    hier ein Screen:



    Mit dem ...Fail ich hatte Langeweile :D



    Ich hoffe ihr könnt mir weiter helfen...



    Mfg Atrax.

    Am Hamburger Hafen geht ein Mann spazieren. Da sieht er eine Blondine, die wie verrückt Steine gegen eine Werft schmeißt. Der Mann fragt:"Warum schmeißen Sie Steine gegen die Werft?" Blondine:"Na schauen Sie mal, da steht "Detsche (,) Werft!"

  • Hi


    Also ich sehe nirgends dass in den String "grund" der Text vom Grund reing"gelegt" wird. Wahrscheinlich hast du´s vergessen :)


    MFG, Robdeflop®

    wie meinst das jetzt? ist doch:
    new grund[256];


    ausgabe:


    format(msg,sizeof(msg),"[AdminCmd] %s wurde gekickt von %s. Grund: %s",zielname,playername,grund);SendClientMessageToAll(COLOR_INFOROT,msg);



    lg Atrax.

    Am Hamburger Hafen geht ein Mann spazieren. Da sieht er eine Blondine, die wie verrückt Steine gegen eine Werft schmeißt. Der Mann fragt:"Warum schmeißen Sie Steine gegen die Werft?" Blondine:"Na schauen Sie mal, da steht "Detsche (,) Werft!"

  • Hi


    Woher soll der server wissen was in dem String sein soll? oO das musst du selber in den String packen.


    MFG, Robdeflop®

    Und wie stelle ich das an?
    Sry bin dabei Pawno zu Lernen ^,^


    lg Atrax.

    Am Hamburger Hafen geht ein Mann spazieren. Da sieht er eine Blondine, die wie verrückt Steine gegen eine Werft schmeißt. Der Mann fragt:"Warum schmeißen Sie Steine gegen die Werft?" Blondine:"Na schauen Sie mal, da steht "Detsche (,) Werft!"

  • Hi


    Mit "strtok" kannst du nach und nach alle Textstellen im eingegebenen CMD "durchchecken". In der Variable "idx" oda wie auch immer sie genannt wird (zweiter parameter von strtok) wird die letzte, ich sag mal Position, im eingegebenen Text/cmd gesaved. So kann man "strtok" mehrmals verwenden, um nach und nach die eingegebenen sachen die mit nem Leerzeichen getrennt sind zu durchchecken. Und eben mit dieser funktion kann man das Auslesen :) Und diese Funktion musst du auch verwenden um das nächste Wort vom CMD zu bekommen. Eben der "Grund". Aber wenn du den Grund mit mehreren wörtern beschreiben willst, brauchst du eine Funktion die den Text ab dem Index "idx" komplett bis zum ende ausliest. Diese findet man z.B. unter dem Namen "bigstrtok" :) Ich hoffe ich konnte dir helfen^^


    MFG, Robdeflop®

  • Hi


    Mit "strtok" kannst du nach und nach alle Textstellen im eingegebenen CMD "durchchecken". In der Variable "idx" oda wie auch immer sie genannt wird (zweiter parameter von strtok) wird die letzte, ich sag mal Position, im eingegebenen Text/cmd gesaved. So kann man "strtok" mehrmals verwenden, um nach und nach die eingegebenen sachen die mit nem Leerzeichen getrennt sind zu durchchecken. Und eben mit dieser funktion kann man das Auslesen :) Und diese Funktion musst du auch verwenden um das nächste Wort vom CMD zu bekommen. Eben der "Grund". Aber wenn du den Grund mit mehreren wörtern beschreiben willst, brauchst du eine Funktion die den Text ab dem Index "idx" komplett bis zum ende ausliest. Diese findet man z.B. unter dem Namen "bigstrtok" :) Ich hoffe ich konnte dir helfen^^


    MFG, Robdeflop®

    So halb wegs...
    ich Check nur noch nicht ganz wie ich die "idx" definieren soll und ausgeben könnte...
    mit Strings usw freunde ich mich nie an :D


    Najo ich schau jetzt nocheinmal genau nach und lies in ruhe alles nach ;)



    Mfg Atrax.

    Am Hamburger Hafen geht ein Mann spazieren. Da sieht er eine Blondine, die wie verrückt Steine gegen eine Werft schmeißt. Der Mann fragt:"Warum schmeißen Sie Steine gegen die Werft?" Blondine:"Na schauen Sie mal, da steht "Detsche (,) Werft!"