Need Help on /warn
#1

UPDATE: Problem with /clearwarn

it give me negative warnings like -1 up to the Higher Number.
this is my problem. so please help me to fix this out.

code

pawn Код:
CMD:clearwarn(playerid, params[])
{
    new id;
    if(PlayerInfo[playerid][pAdmin] >= 2 || IsPlayerAdmin(playerid))
    {
        if(sscanf(params, "us[128]",id)) return SendClientMessage(playerid,COLOR_RED, "USAGE: /clearwarn <playerid/name>");
        if(id == INVALID_PLAYER_ID) return SendClientMessage(playerid,COLOR_RED, "ERROR: Player is not connected!");
        new adminname[MAX_PLAYER_NAME], victimname[MAX_PLAYER_NAME], string[180];
        GetPlayerName(id, victimname, sizeof(victimname));
        GetPlayerName(playerid, adminname, sizeof(adminname));
        PlayerInfo[id][pWarns]--;
        if(PlayerInfo[id][pWarns] >= PlayerInfo[id][pWarns])
        {
           format(string, sizeof(string), ""white"You have recieve some message!\n\n"green"Administrator %s has clear your warn\nWarnings:%d/%d\n\n"white"Congratz!:"green"Your Warnings has been remove!",adminname,PlayerInfo[id][pWarns],MAX_WARNINGS);
           ShowPlayerDialog(playerid,WARNDIALOG, DIALOG_STYLE_MSGBOX,""red"Warning Message!:",string,"Ok","");
        }
        format(string, sizeof(string), "Administrator %s has clear the warn of %s <Warnings %d/%d>",adminname,victimname,PlayerInfo[id][pWarns],MAX_WARNINGS);
        SendClientMessageToAll(COLOR_RED, string);
        format(string, sizeof(string), "Administrator %s has clear the warn of %s <Warnings %d/%d>",adminname,victimname,PlayerInfo[id][pWarns],MAX_WARNINGS);
        SendToAdmins(COLOR_GREY, string);
        format(string, sizeof(string), "Administrator %s has clear the warn of %s <Warnings %d/%d>",adminname,victimname,PlayerInfo[id][pWarns],MAX_WARNINGS);
        printf(string);
    }
    else return SendClientMessage(playerid,COLOR_RED, "ERROR: You must be Administrator Level 2 to use this command");
    return 1;
}
Heres my other problem onplayerconnect i want to make ban checking with my /ban command

pawn Код:
if(INI_Int,"Banned" == 1)
{
    format(string,sizeof(string),"|- Player %s has beenAutomatically  Kicked. | Reason: Name Banned! -|",PlayerName,playerid);
    SendClientMessageToAll(COLOR_RED, string);
}
Reply
#2

You're reason variable is a integer not a string. Change it to a string and it should work .
Reply
#3

How about the kicking part? i need help with this part

pawn Код:
if(PlayerInfo[id][pWarns] <= PlayerInfo[id][pWarns])
        {
           format(string, sizeof(string), ""red"WARNING:"white"You have recieve some message!\n\n"red"Administrator:%s has warn you\nReason:%s\nWarnings:%d/%d",adminname,reason,PlayerInfo[id][pWarns],MAX_WARNINGS);
           ShowPlayerDialog(playerid,WARNDIALOG, DIALOG_STYLE_MSGBOX,""red"Warning Message!:",string,"Ok","");
           return 1;
        }
        else if(PlayerInfo[id][pWarns] == MAX_WARNINGS)
        {
           format(string, sizeof(string), ""red"You have over reach the Maxium Warnings You Have Been Kicked!\n\nAdministrator:%s has warn you\nReason:%s\nWarnings:%d/%d",adminname,reason,PlayerInfo[id][pWarns],MAX_WARNINGS);
           ShowPlayerDialog(playerid,WARNDIALOG, DIALOG_STYLE_MSGBOX,""red"Over Reach! (KICKED!):",string,"Ok","");
           Kick(id);
           return 1;
        }
its not working
Reply
#4

SOLVE by me Thanks Thekiller for giving me advise your great
Reply
#5

One Problem its give me negative-1 to The Highest Low Warning like this <Warning: -2/5>

i need help on /clearwarn

pawn Код:
CMD:clearwarn(playerid, params[])
{
    new id;
    if(PlayerInfo[playerid][pAdmin] >= 2 || IsPlayerAdmin(playerid))
    {
        if(sscanf(params, "us[128]",id)) return SendClientMessage(playerid,COLOR_RED, "USAGE: /clearwarn <playerid/name>");
        if(id == INVALID_PLAYER_ID) return SendClientMessage(playerid,COLOR_RED, "ERROR: Player is not connected!");
        new adminname[MAX_PLAYER_NAME], victimname[MAX_PLAYER_NAME], string[180];
        GetPlayerName(id, victimname, sizeof(victimname));
        GetPlayerName(playerid, adminname, sizeof(adminname));
        PlayerInfo[id][pWarns]--;
        if(PlayerInfo[id][pWarns] >= PlayerInfo[id][pWarns])
        {
           format(string, sizeof(string), ""white"You have recieve some message!\n\n"green"Administrator %s has clear your warn\nWarnings:%d/%d\n\n"white"Congratz!:"green"Your Warnings has been remove!",adminname,PlayerInfo[id][pWarns],MAX_WARNINGS);
           ShowPlayerDialog(playerid,WARNDIALOG, DIALOG_STYLE_MSGBOX,""red"Warning Message!:",string,"Ok","");
        }
        format(string, sizeof(string), "Administrator %s has clear the warn of %s <Warnings %d/%d>",adminname,victimname,PlayerInfo[id][pWarns],MAX_WARNINGS);
        SendClientMessageToAll(COLOR_RED, string);
        format(string, sizeof(string), "Administrator %s has clear the warn of %s <Warnings %d/%d>",adminname,victimname,PlayerInfo[id][pWarns],MAX_WARNINGS);
        SendToAdmins(COLOR_GREY, string);
        format(string, sizeof(string), "Administrator %s has clear the warn of %s <Warnings %d/%d>",adminname,victimname,PlayerInfo[id][pWarns],MAX_WARNINGS);
        printf(string);
    }
    else return SendClientMessage(playerid,COLOR_RED, "ERROR: You must be Administrator Level 2 to use this command");
    return 1;
}
Reply
#6

Comeon Guys
Reply
#7

sorry my bad here goes the fixed one

pawn Код:
CMD:clearwarn(playerid, params[])
{
    new id;
    if(PlayerInfo[playerid][pAdmin] >= 2 || IsPlayerAdmin(playerid))
    {
        if(sscanf(params, "u",id)) return SendClientMessage(playerid,COLOR_RED, "USAGE: /clearwarn <playerid/name>");
        if(id == INVALID_PLAYER_ID) return SendClientMessage(playerid,COLOR_RED, "ERROR: Player is not connected!");
        new adminname[MAX_PLAYER_NAME], victimname[MAX_PLAYER_NAME], string[180];
        GetPlayerName(id, victimname, sizeof(victimname));
        GetPlayerName(playerid, adminname, sizeof(adminname));
        if(PlayerInfo[id][pWarns] == 0)
        {
            printf("Wont go negative now");
            return 1;
        }
        PlayerInfo[id][pWarns]--;
        if(PlayerInfo[id][pWarns] >= PlayerInfo[id][pWarns]) // what is that suppse to do???????
        {
           format(string, sizeof(string), ""white"You have recieve some message!\n\n"green"Administrator %s has clear your warn\nWarnings:%d/%d\n\n"white"Congratz!:"green"Your Warnings has been remove!",adminname,PlayerInfo[id][pWarns],MAX_WARNINGS);
           ShowPlayerDialog(playerid,WARNDIALOG, DIALOG_STYLE_MSGBOX,""red"Warning Message!:",string,"Ok","");
        }
        format(string, sizeof(string), "Administrator %s has clear the warn of %s <Warnings %d/%d>",adminname,victimname,PlayerInfo[id][pWarns],MAX_WARNINGS);
        SendClientMessageToAll(COLOR_RED, string);
        format(string, sizeof(string), "Administrator %s has clear the warn of %s <Warnings %d/%d>",adminname,victimname,PlayerInfo[id][pWarns],MAX_WARNINGS);
        SendToAdmins(COLOR_GREY, string);
        format(string, sizeof(string), "Administrator %s has clear the warn of %s <Warnings %d/%d>",adminname,victimname,PlayerInfo[id][pWarns],MAX_WARNINGS);
        printf(string);
    }
    else return SendClientMessage(playerid,COLOR_RED, "ERROR: You must be Administrator Level 2 to use this command");
    return 1;
}
Reply
#8

it still keeps saying your warn has been remove <Warnings: -1/3>
Reply
#9

try
pawn Код:
PlayerInfo[id][pWarns]=0;
Reply
#10

Thanks but i have problem sending the admin user like this

"That Player has already clear warnings"

codes

pawn Код:
CMD:clearwarn(playerid, params[])
{
    new id;
    if(PlayerInfo[playerid][pAdmin] >= 2 || IsPlayerAdmin(playerid))
    {
        if(sscanf(params, "us[128]",id)) return SendClientMessage(playerid,COLOR_RED, "USAGE: /clearwarn <playerid/name>");
        if(id == INVALID_PLAYER_ID) return SendClientMessage(playerid,COLOR_RED, "ERROR: Player is not connected!");
        new adminname[MAX_PLAYER_NAME], victimname[MAX_PLAYER_NAME], string[180];
        GetPlayerName(id, victimname, sizeof(victimname));
        GetPlayerName(playerid, adminname, sizeof(adminname));
        PlayerInfo[id][pWarns]=0;
        if(PlayerInfo[id][pWarns] >= PlayerInfo[id][pWarns])
        {
           format(string, sizeof(string), ""white"You have recieve some message!\n\n"green"Administrator %s has clear your warn\nWarnings:%d/%d\n\n"white"Congratz!:"green"Your Warnings has been remove!",adminname,PlayerInfo[id][pWarns],5);
           ShowPlayerDialog(playerid,WARNDIALOG, DIALOG_STYLE_MSGBOX,""red"Warning Message!:",string,"Ok","");
        }
        if(PlayerInfo[id][pWarns] == 0)
        {
           PlayerInfo[id][pWarns]=0;
        }
        else
        {
           SendClientMessage(playerid,COLOR_RED, "ERROR: That Player has already clear warnings!");
        }
        format(string, sizeof(string), "Administrator %s has clear the warn of %s <Warnings %d/%d>",adminname,victimname,PlayerInfo[id][pWarns],5);
        SendClientMessageToAll(COLOR_GREEN, string);
        format(string, sizeof(string), "Administrator %s has clear the warn of %s <Warnings %d/%d>",adminname,victimname,PlayerInfo[id][pWarns],5);
        SendToAdmins(COLOR_GREY, string);
        format(string, sizeof(string), "Administrator %s has clear the warn of %s <Warnings %d/%d>",adminname,victimname,PlayerInfo[id][pWarns],5);
        printf(string);
    }
    else return SendClientMessage(playerid,COLOR_RED, "ERROR: You must be Administrator Level 2 to use this command");
    return 1;
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)