05.04.2015, 21:52
Here i have my permamently ban command
And Here is the Ban
And here its the check if banned when connect
Can i have this temporary ban with days please ?
I need to make it temporary
Thank you
See you tomorow for the answer byeee
PHP код:
CMD:ban(playerid,params[])
{
if(pInfo[playerid][pAdminLevel] >= 2)
{
if(IsPlayerConnected(playerid))
{
new targetid,reason[105],string[256];
if(sscanf(params, "us[105]", targetid,reason)) return SendClientMessage(playerid,-1,""chat" /ban [playerid] [reason]");
if(!IsPlayerConnected(targetid)) return SendClientMessage(playerid,-1,""chat" Player is not online");
format(string,sizeof(string),""chat""COL_WHITE" [{B3432B}ADMIN{FFFFFF}]%s {EEC900}permanent banned{FFFFFF} [player:%s] [reason:%s]",PlayerName(playerid),PlayerName(targetid), reason);
SendClientMessageToAll(-1,string);
printf("%s %s has banned %s [Reason: %s]",GetAdminName(playerid),PlayerName(playerid),PlayerName(targetid),reason);
//pInfo[targetid][pBanned] = 1;
new AdminDutyMsg[128];
format(AdminDutyMsg, sizeof(AdminDutyMsg), ""COL_WHITE"["COL_CADMIN"ADMIN"COL_WHITE"]"COL_CGREY" %s > banned > %s" ,PlayerName(playerid), PlayerName(targetid));
SendMessageToAllAduty(-1,AdminDutyMsg);
BanPlayer(targetid,reason,GetAdminName(playerid));
new str[128];
format(str, sizeof(str), "%s(%d) /ban %s(%d) (Reason: %s)", GetName(playerid), playerid, GetName(targetid), targetid, reason);
new File:log;
log = fopen("CommandsUsed.txt", io_append);
fwrite(log, str);
fwrite(log,"\r\n");
fclose(log);
}
}
else {
SendClientMessage(playerid,-1,""chat""COL_LIGHTBLUE" You do not have the right admin permissions for this command!");
}
return 1;
}
And Here is the Ban
PHP код:
stock BanPlayer(playerid,reason[],admin[])
{
new playerIP[16],Hour, Minute, Second, Year, Month, Day,timeBanned[80],bannedstring[256],Query[256];
GetPlayerIp(playerid, playerIP, sizeof(playerIP));
gettime(Hour, Minute, Second);
getdate(Year, Month, Day);
format(timeBanned, sizeof(timeBanned), "%02d:%02d:%02d on %02d/%02d/%d", Hour, Minute, Second, Day, Month, Year);
//format(Query, sizeof(Query), "UPDATE `users` SET `pBannedReason` = '%s', `pBannedBy` = '%s', `pIPBanned` = '%s', `pTime` = '%s', `pAccountLock` = '1' WHERE `Username` = '%s'", reason,admin,playerIP,timeBanned,PlayerName(playerid));
format(Query, sizeof(Query), "INSERT INTO `banlog` (`Name`, `pBannedReason`, `pBannedBy`, `pTime`, `pIPBanned`, `pAccountLock`) VALUES ('%s', '%s', '%s', '%s', '%s', 1)", PlayerName(playerid), reason, admin, timeBanned, playerIP);
mysql_query(Query);
mysql_free_result();
format(bannedstring,sizeof(bannedstring),"You are currently banned from this server. \r\nUser: %s \r\nIP: %s \r\nTime: %s \r\nAdmin: %s\r\nReason: %s",PlayerName(playerid),playerIP,timeBanned,admin,reason);
ShowPlayerDialog(playerid,DIALOG_BANNED,DIALOG_STYLE_MSGBOX,"You have been banned!",bannedstring,"Leave","");
Kick(playerid);
return 1;
}
PHP код:
stock CheckBan(playerid)
{
new Query[256],playerIP[16],timeBanned[94],largestringtwo[256],adminName[24],bannedName[24],reasonBanned[128];
GetPlayerIp(playerid, playerIP, sizeof(playerIP));
format(Query, sizeof(Query), "SELECT * FROM `banlog` WHERE ( `Name` = '%s' OR `pIPBanned` = '%s' ) AND `pAccountLock` = '1' LIMIT 1",PlayerName(playerid),playerIP);
mysql_query(Query);
mysql_store_result();
if(mysql_num_rows() != 0)
{
while(mysql_fetch_row(Query))
{
mysql_fetch_field_row(reasonBanned, "pBannedReason");
mysql_fetch_field_row(adminName, "pBannedBy");
mysql_fetch_field_row(timeBanned, "pTime");
mysql_fetch_field_row(playerIP, "pIPBanned");
mysql_fetch_field_row(bannedName, "Name");
}
format(largestringtwo, sizeof(largestringtwo), "You are currently banned from this server. \r\nUser: %s \r\nIP: %s \r\nTime: %s \r\nAdmin: %s\r\nReason: %s", bannedName, playerIP, timeBanned, adminName, reasonBanned);
ShowPlayerDialog(playerid, DIALOG_BANNED, DIALOG_STYLE_MSGBOX, "You are banned from this server", largestringtwo, "Leave", "");
Kick(playerid);
printf("Username %s || IP %s is banned!",PlayerName(playerid),playerIP);
}
return 1;
}
I need to make it temporary
Thank you
See you tomorow for the answer byeee