07.12.2016, 22:52
Hello,i got ban system hours and compiled it but it's not works in server it's say: Unknown Command
Code:
Code:
Код:
#include < a_samp > #include < izcmd > #include < sscanf2 > #include < streamer > #include < YSI\y_ini > #define SCMTA SendClientMessageToAll #define SCM SendClientMessage #define BanHours_FOLDER "BanHours/%s.ini" enum bana { BanHours, BanDay }; new SBanInfo[MAX_PLAYERS][bana]; public OnPlayerConnect(playerid) { SBanInfo[playerid][BanDay] = 0; SBanInfo[playerid][BanHours] = -1; if(fexist(SBanPath(playerid))) { INI_ParseFile(SBanPath(playerid), "LoadSBan", .bExtra = true, .extra = playerid); if(SBanInfo[playerid][BanHours] > -1) { new sati, minute, sekunde; gettime(sati, minute, sekunde); new yera, monthb, dayb; getdate(yera, monthb, dayb); if(dayb >= SBanInfo[playerid][BanDay]) { if(SBanInfo[playerid][BanHours] > sati) { new string[30]; format(string, sizeof(string), "You are banned from this server for %d hours.", SBanInfo[playerid][BanHours]); SCM(playerid, -1, string); Kick(playerid); } else { SBanInfo[playerid][BanHours] = -1; SBanInfo[playerid][BanDay] = 0; SavehBan(playerid); } } else { new string[30]; format(string, sizeof(string), "You are banned from this server for %d hours.", SBanInfo[playerid][BanHours]); SCM(playerid, -1, string); Kick(playerid); } } } return 1; } forward LoadSBan(playerid,name[],value[]); public LoadSBan(playerid,name[],value[]) { INI_Int("BanHours",SBanInfo[playerid][BanHours]); INI_Int("BanDay",SBanInfo[playerid][BanDay]); return 1; } /////////////////////////////////////////////////////////////////////////// stock SavehBan(playerid) { new INI:File = INI_Open(SBanPath(playerid)); INI_WriteInt(File,"BanHours",SBanInfo[playerid][BanHours]); INI_WriteInt(File,"BanDay",SBanInfo[playerid][BanDay]); INI_Close(File); return 1; } /////////////////////////////////////////////////////////////////////////// stock SBanPath(playerid) { new string[128]; format(string,sizeof(string),BanHours_FOLDER,GetName(playerid)); return string; } CMD:hban(playerid, params[]) { if(IsPlayerAdmin(playerid)) { new id, hour, reason[128]; if(sscanf(params, "uis[128]", id, hour, reason)) return SCM(playerid, -1, "Usage: /BanHours [ID/Name] [Hours(max 3)] [Reason]"); if(hour > 3 || hour < 0) return SCM(playerid, -1, "ERROR: You can't ban more than 3 hours or less than 0"); new hourb, minb, secb; gettime(hourb,minb,secb); new yearb, monthb, dayb; getdate(yearb,monthb,dayb); new houro = hourb+hour; if(houro == 24) { houro=0; dayb++; } if(houro == 25) { houro=1; dayb++; } if(houro == 26) { houro=2; dayb++; } SBanInfo[id][BanHours] = houro; SBanInfo[id][BanDay] = dayb; new str[128]; format(str, sizeof(str), "Admin %s temporary banned %s || Reason: %s || he will be unbanned in: %d hours", GetName(playerid), GetName(id), reason, hour); SavehBan(id); SCMTA(-1, str); new string1[128], string2[128]; format(string1, sizeof(string1), "You've banned player %s | Ban reason: %s", GetName(id), reason); format(string2, sizeof(string2), "| he will be unbanned in %d hours |", hour); SCM(playerid, -1, string1); SCM(playerid, -1, string2); new string[128]; format(string,sizeof(string), "You have been baned by %s | Reason: %s",GetName(playerid), reason); new str2[128]; format(str2, sizeof(str2), "You will be unbaned in: %d hours", hour); SCM(id, 0xFF6347AA, string); SCM(id, 0xFF6347AA, str2); Kick(id); } else { SCM(playerid,-1, "ERROR: You are not allowed to use this command"); } return 1; } CMD:hunban(playerid, params[]) { if(!IsPlayerAdmin(playerid)) return SCM(playerid,-1, "ERROR:You are not allowed to use this command!"); new user[50]; new String[128]; new sendername[MAX_PLAYER_NAME]; if(sscanf(params, "s[50]", user)) return SCM(playerid, -1, "Usage: /hunban [Nick]"); format(user, sizeof(user), "BanHours/%s.ini", user); if(fexist(user)) { new INI:File = INI_Open(user); INI_WriteInt(File, "BanHours", -1); INI_WriteInt(File, "BanDay", 0); INI_Close(File); GetPlayerName(playerid, sendername, sizeof(sendername)); format(String, 128, "Admin %s has unbaned player %s(Day - Hours ban).", sendername, user); SCMTA(-1, String); return 1; } else { SCM(playerid,-1, "ERROR: User not found!"); } return 1; } stock GetName(playerid) { new name[MAX_PLAYER_NAME]; GetPlayerName(playerid, name, sizeof(name)); return name; }