Nachricht VOR dem Kick an den Spieler?

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
  • Wie sende ich eine Nachricht an den GEKICKTEN Spieler BEVOR er Gekickt wurde mit dem Inhalt:


    "Du wurdest vom Administrator %s gekickt! Grund: %s"


    habe bissher das:


    if(strcmp(cmd, "/kick", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Benutze: /kick [ID/Name] [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, "Benutze: /kick [ID/Name] [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 nicht Online.", giveplayerid);
    SendClientMessage(playerid, COLOR_GRAD1, string);
    }
    }
    return 1;
    }

    Why do programmers always mix up Halloween and Christmas?
    Oct 31 == Dec 25

  • Ironie :rolleyes: In deiner Sigi "Für Selfmade" aber selbst befehle kopieren xD



    if(strcmp(cmd, "/kick", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Benutze: /kick [ID/Name] [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, "Benutze: /kick [ID/Name] [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);
    SendClientMessage(playerid,COLOR_RED, "Du wurdest von %s gekickt! Grund: %s",sendername,(result));
    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 nicht Online.", giveplayerid);
    SendClientMessage(playerid, COLOR_GRAD1, string);
    }
    }
    return 1;
    }

    So sollte es gehen


  • if(strcmp(cmd, "/kick", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Benutze: /kick [ID/Name] [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, "Benutze: /kick [ID/Name] [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);
    SendClientMessage(playerid,COLOR_RED, "Du wurdest von %s gekickt! Grund: %s",sendername,(result));
    KickLog(string);
    format(string, sizeof(string), "AdmCmd: %s wurde von %s gekickt! Grund: %s", giveplayer, sendername, (result));
    SendClientMessageToAll(COLOR_LIGHTRED, string);
    Kick(giveplayerid);
    return 1;
    }
    }
    }
    else
    {
    format(string, sizeof(string), " %d ist nicht Online.", giveplayerid);
    SendClientMessage(playerid, COLOR_GRAD1, string);
    }
    }
    return 1;
    }

    RFT

  • Ich bin für Selfmade! Aber das heißt nicht das ich Selfmade Scripte. Ich lerne durch ein Anfänger Script (wie der Name sagt für Anfänger)


    Danke versuche es mal..



    //Edit:


    Code
    C:\Dokumente und Einstellungen\Desktop\Script\gamemodes\Script.pwn(17558) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Desktop\Script\gamemodes\Script.pwn(17558) : warning 202: number of arguments does not match definition
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
    
    
    
    
    2 Warnings.

    Why do programmers always mix up Halloween and Christmas?
    Oct 31 == Dec 25

  • @[FG]Julian

    Du kannst den String in SendClientMessage nicht formatieren...:D


    muss jeweils ein format davor, so wie der Herr ÜberMir schon sagte ;)



    Das war mir klar, dass das Thema gleich wieder offen ist :)


    Wie gesagt, der String muss formatiert werden ;)

  • wenn du uns die Zeilen mal schicken würdest könnten wir dir weiter helfen


    //edit kann auch nicht gehen



    format(string,128,"Du wurdest von %s gekickt! Grund: %s",sendername,result);
    SendClientMessage(playerid,COLOR_RED, string);



    das einfügen
    statt das



    SendClientMessage(playerid,COLOR_RED, "Du wurdest von %s gekickt! Grund: %s",sendername,(result));

    RFT