/kick Funktioniert nicht!

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
  • Hey Community,
    Ich bin gerade dabei alle Befehle etc zu testen und mir ist aufgefallen das /kick bei mir nicht geht.
    Dort wird angezeigt wer denn Spieler gekickt hat und so weiter, jedoch bleibt er auf dem Server.
    Könnt ihr mir evt. Helfen? Hier mal denn Code:


    if(strcmp(cmd, "/kick", true) == 0) { if(IsPlayerConnected(playerid)) { tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, COLOR_GRAD2, "Verwendung: /kick [spielerid/teildesnamens] [grund]"); return 1; } giveplayerid = ReturnUser(tmp); if (PlayerInfo[playerid][pAdmin] >= 1) { if(IsPlayerConnected(giveplayerid)) { if(giveplayerid != INVALID_PLAYER_ID) { GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer)); GetPlayerName(playerid, sendername, sizeof(sendername)); new length = strlen(cmdtext); while ((idx < length) && (cmdtext[idx] <= ' ')) { idx++; } new offset = idx; new result[64]; while ((idx < length) && ((idx - offset) < (sizeof(result) - 1))) { result[idx - offset] = cmdtext[idx]; idx++; } result[idx - offset] = EOS; if(!strlen(result)) { SendClientMessage(playerid, COLOR_GRAD2, "Verwendung: /kick [spielerid/teildesnamens] [grund]"); return 1; } new year, month,day; getdate(year, month, day); format(string, sizeof(string), "AdmCmd: %s wurde von %s gekickt, Grund: %s (%d-%d-%d)", giveplayer, sendername, (result),month,day,year); KickLog(string); //Kick(giveplayerid); format(string, sizeof(string), "AdmCmd: %s wurde von %s gekickt, Grund: %s", giveplayer, sendername, (result)); SendClientMessageToAll(COLOR_LIGHTRED, string); return 1; } } } else { format(string, sizeof(string), "%d ist kein aktiver Spieler.", giveplayerid); SendClientMessage(playerid, COLOR_GRAD1, string); } } return 1; }

    3 Mal editiert, zuletzt von QuasyModo ()

  • Ich vermute mal ohne den Code richtig gelesen zu haben:


    Der Befehl


    Kick(Playerid)


    oder so ähnlich (ich bin kein richtiger Scripter)


    fehlt in deinen Zeilen.



    MfG


    N0va

  • Mach das mit OCMD, geht einfacher:


    googel mal das nach und du findest es, hier noch ein Beispiel:


    ocmd:kick(playerid,params[]){ new pID; new Grund[128];
    if(IsPlayerSupporter(playerid,1)) { if(sscanf(params,"us",pID,Grund))return SendClientMessage(playerid,COLOR_GREY,"Benutze: /kick [id] [reason / grund]"); format(KickString,sizeof(KickString),"AdminSystem: %s wurde von %s gekickt. Grund: %s",SpielerName(pID),SpielerName(playerid),Grund); SendClientMessageToAll(COLOR_RED,KickString); Kick(pID); return 1; } else if(IsPlayerAnAdmin(playerid,1)) { if(sscanf(params,"us",pID,Grund))return SendClientMessage(playerid,COLOR_GREY,"Benutze: /kick [id] [reason / grund]"); format(KickString,sizeof(KickString),"AdminSystem: %s wurde von %s gekickt. Grund: %s",SpielerName(pID),SpielerName(playerid),Grund); SendClientMessageToAll(COLOR_RED,KickString); Kick(pID); return 1; } return 1;}



  • zu deinem Problem mit dem Pawno Queltext.


    nihm Mozila Firefox hat mir auch geholfen :D(Hatte davor Google Crome)




    PS: hier ist mein kick befehl



    ocmd:kick(playerid,params[])
    {
    if(!isPlayerAnAdmin(playerid,2))return SendClientMessage(playerid,ROT,"Endweder du bist kein Admin oder dein Admin Rang ist zu niedrig.");
    new pID,reason[128],string[128];
    if(sscanf(params,"us",pID,reason))return SendClientMessage (playerid,GRÜN,"/kick [ID] [Grund]");
    format(string,sizeof(string),"AdmCmd: %s wurde von %s gekickt. Grund: %s",SpielerName(pID),SpielerName(playerid),reason);
    SendClientMessageToAll(TÜRKIS,string);
    Kick(pID);
    return 1;
    }


    vielleicht kannst du deinen Fehler so finden.

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Hier ist der Befehl:
    -du benötigst das include ocmd


    Befehl:

    ocmd:kick(playerid,params[])
    {
    if(!isPlayerAnAdmin(playerid,5))return SendClientMessage(playerid, ROT, "Du bist kein Admin mit Rank 5!"); //deine Admiabfrage
    new pID, reason[128],string[128]; //definition
    if(sscanf(params,"us",pID,reason))return SendClientMessage(playerid,BLAU,"Benutze: /kick [ID] [GRUND]");
    format(string,sizeof(string),"AdmCmd: %s wurde von %s gekickt. Grund: %s",SpielerName(pID),SpielerName(playerid),reason);
    SendClientMessageToAll(ROT,string);
    Kick(pID); //kick ID
    return 1;
    }

    Scripter im Ruhestand.