/warn command in chat
#3

Quote:
Originally Posted by Kindred
Посмотреть сообщение
This should work:

pawn Код:
COMMAND:warn(playerid, params[])
{
    new PlayerToWarn, Reason[128], ReasonMsg[128], Name[24];

    // Send the command to all admins so they can see it
    SendAdminText(playerid, "/warn", params);

    // Check if the player has logged in
    if (APlayerData[playerid][LoggedIn] == true)
    {
        // Check if the player's admin-level is at least 1
        if (APlayerData[playerid][PlayerLevel] >= 1)
        {
            if (sscanf(params, "us[128]", PlayerToWarn, Reason)) SendClientMessage(playerid, 0xFF0000AA, "Usage: \"/warn <PlayerToWarn> <Reason>\"");
            else
                if (IsPlayerConnected(PlayerToWarn)) // If the player is a valid playerid (he's connected)
                {
                    // Increase the number of warnings
                    APlayerData[PlayerToWarn][Warnings]++;

                    // Get the name of the player who warned the player
                    GetPlayerName(playerid, Name, sizeof(Name));
                    // Send the warned player a message who warned him and why he's been warned
                    format(ReasonMsg, 128, "You have been warned by %s %s", AdminLevelName[APlayerData[playerid][PlayerLevel]], Name);
                    SendClientMessage(PlayerToWarn, 0xFF0000FF, ReasonMsg);
                    format(ReasonMsg, 128, "Reason: %s", Reason);
                    SendClientMessage(PlayerToWarn, 0xFF0000FF, ReasonMsg);
                    format(ReasonMsg, 128, "~w~Warning %i/%i: ~r~%s~w~", APlayerData[PlayerToWarn][Warnings], AutoKickWarnings, Reason);
                    GameTextForPlayer(PlayerToWarn, ReasonMsg, 5000, 4);

                    // Get the name of the warned player
                    GetPlayerName(PlayerToWarn, Name, sizeof(Name));
                    // Let the admin know who has been warned and why
                    format(ReasonMsg, 128, "You have warned %s (warnings: %i/%i)", Name, APlayerData[PlayerToWarn][Warnings], AutoKickWarnings);
                    SendClientMessage(playerid, 0x00FF00FF, ReasonMsg);
                    format(ReasonMsg, 128, "Reason: %s", Reason);
                    SendClientMessage(playerid, 0xFF0000FF, ReasonMsg);
                   
                    //Sends message to all players that a player as been warned
                    format(ReasonMsg, 128, "Player %s has been warned by admin: %s", Name, GetPlayerName(playerid, name, sizeof(name)));
                    SendClientMessageToAll(0xFFFFFFFF, ReasonMsg);

                    // Automatically kick the player if he got 3 warnings (if autokick is enabled)
                    if ((APlayerData[PlayerToWarn][Warnings] == AutoKickWarnings) && (AutoKickAfterWarn == 1))
                        Kick(PlayerToWarn);
                }
                else
                    SendClientMessage(playerid, 0xFF0000FF, "That player isn't online");
        }
        else
            return 0;
    }
    else
        return 0;

    // Let the server know that this was a valid command
    return 1;
}
I added two things. It should be easy to see what I added.
Thanks its working! +rep!
Reply


Messages In This Thread
/warn command in chat - by jeremy8810 - 03.07.2012, 20:31
Re: /warn command in chat - by Kindred - 03.07.2012, 20:35
Re: /warn command in chat - by jeremy8810 - 03.07.2012, 21:31

Forum Jump:


Users browsing this thread: 1 Guest(s)