21.01.2016, 05:29
how does this connect? with SQL scripts ?? I only need a warn offline
SQLite, CMD : banaccount
Код:
CMD:owarn(playerid, params[]) { if(PlayerInfo[playerid][pAdmin] < 3) { SendClientMessageEx(playerid, COLOR_GRAD1, "ADMIN : Anda di larang menggunakan CMD ini"); return 1; } new string[128], name[MAX_PLAYER_NAME], reason[64], bannedby[MAX_PLAYER_NAME]; if(sscanf(params, "s[24]s[64]", name, reason)) return SendClientMessageEx(playerid, COLOR_WHITE, "USAGE: /owarn [name] [reason]"); new giveplayerid = ReturnUser(name); if(giveplayerid != INVALID_PLAYER_ID) { SendClientMessageEx(playerid, COLOR_GRAD2, "Player ini sedang online, pakai /warn untuk player yang online."); return 1; } if(doesAccountExist(name)) { OnPlayerOfflineLogin(name); if( CheckBan(name) == 1 ) { SendClientMessageEx( playerid, COLOR_WHITE, "Player telah di ban!" ); return 1; } if( PlayerInfo[MAX_PLAYERS][pAdmin] >= 2 ) { SendClientMessageEx( playerid, COLOR_WHITE, "Tidak bisa /owarn id admin!" ); return 1; } PlayerInfo[MAX_PLAYERS][pWarns] += 1; if(PlayerInfo[MAX_PLAYERS][pWarns] >= 3) { new year, month,day; getdate(year, month, day); format(string, sizeof(string), "AdmCmd: %s (IP:%s) telah di offline ban oleh %s (sudah 3 Peringatan), alasan: %s (%d-%d-%d)", name, PlayerInfo[MAX_PLAYERS][pIP], GetPlayerNameEx(playerid), reason,month,day,year); Log("logs/ban.log", string); format(string, sizeof(string), "AdmCmd: %s telah di offline ban oleh %s (sudah 3 Peringatan), alasan: %s", name, GetPlayerNameEx(playerid), reason); ABroadCast(COLOR_LIGHTRED,string,2); PlayerInfo[MAX_PLAYERS][pBanned] = 1; AddBan(PlayerInfo[MAX_PLAYERS][pIP]); GetPlayerName(playerid,bannedby,sizeof(bannedby)); format(string, sizeof(string),"had 3 Warning, reason: %s",reason); //AddBanAccount(name,bannedby,string); OnPlayerOfflineSave(name); return 1; } new year, month, day; getdate(year, month, day); format(string, sizeof(string), "AdmCmd: %s mendapat peringatan offline oleh %s, reason: %s", name, GetPlayerNameEx(playerid), reason); ABroadCast(COLOR_LIGHTRED, string, 2); format(string, sizeof(string), "AdmCmd: %s mendapat peringatan offline oleh %s, reason: %s (%d-%d-%d)", name, GetPlayerNameEx(playerid), reason,month, day, year); Log("logs/admin.log", string); OnPlayerOfflineSave(name); return 1; } return 1; }
Код:
CMD:banaccount(playerid, params[]) { new Query[240], string[112], pName[24], reason[48], DBResult:result, day, month, year, second, minute, hour, datestring[24], timestring[24]; if(PlayerInfo[playerid][pAdmin] < 3) { SendClientMessageEx(playerid, COLOR_GRAD1, "ADMIN : Anda di larang menggunakan CMD ini"); return 1; } if(sscanf(params, "s[24]s[48]", pName, reason)) return SendClientMessage(playerid, -1, "USAGE: /banaccount [name] [reason]"); format(Query, sizeof(Query), "SELECT `NAME` FROM `BANNED` WHERE `NAME` = '%s'", pName); result = db_query(bans, Query); if(!db_num_rows(result)) { getdate(day, month, year), gettime(hour, minute, second); format(datestring, sizeof(datestring), "%i-%i-%i", day, month, year), format(timestring, sizeof(timestring), "%i:%i:%i", hour, minute, second); format(Query, sizeof(Query), "INSERT INTO `BANNED` (`NAME`, `IP`, `REASON`, `ADMIN`, `DATE`, `TIME`) VALUES ('%s', '0', '%s', '%s', '%s', '%s')", DB_Escape(pName), reason, DB_Escape(GetName(playerid)), datestring, timestring); result = db_query(bans, Query); if(result) { format(string, sizeof(string), "BAN: %s has been offline banned by %s(%d) due to %s", pName, GetName(playerid), playerid, reason); SendClientMessageToAll(-1, string), string = "\0"; printf("[ban] [%s]: offlinebanned %s due to %s", GetName(playerid), pName, reason); } else { format(string, sizeof(string), "SERVER: Failed to ban '%s'..", pName), SendClientMessage(playerid, -1, string); printf("[ban] [%s]: failed to offlineban %s due to %s", GetName(playerid), pName, reason); } } else return SendClientMessage(playerid, -1, "INFO: That username is already banned!"); db_free_result(result); return 1; }