Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <amxmodx>
- #include <amxmisc>
- #define PLUGIN "Black List"
- #define VERSION "1.0"
- #define AUTHOR "Dias"
- new const user_file[] = "black_list.ini"
- new Array:BlackList
- new cvar_blacklist_handle
- new cvar_blacklist_bantype, cvar_blacklist_bantime
- public plugin_init()
- {
- register_plugin(PLUGIN, VERSION, AUTHOR)
- cvar_blacklist_handle = register_cvar("bl_handle", "1") // 1 = Kick | 2 = Ban
- cvar_blacklist_bantype = register_cvar("bl_ban_type", "2") // 1 = Ban SteamID | 2 = Ban IP
- cvar_blacklist_bantime = register_cvar("bl_ban_time", "30") // Minutes
- }
- public plugin_precache()
- {
- BlackList = ArrayCreate(32, 1)
- read_user_from_file()
- }
- public read_user_from_file()
- {
- static user_file_url[64], config_dir[32]
- get_configsdir(config_dir, sizeof(config_dir))
- format(user_file_url, sizeof(user_file_url), "%s/%s", config_dir, user_file)
- if(!file_exists(user_file_url))
- return
- static file_handle, line_data[64], line_count
- file_handle = fopen(user_file_url, "rt")
- while(!feof(file_handle))
- {
- fgets(file_handle, line_data, sizeof(line_data))
- replace(line_data, charsmax(line_data), "^n", "")
- if(!line_data[0] || line_data[0] == ';')
- continue
- ArrayPushString(BlackList, line_data)
- line_count++
- }
- fclose(file_handle)
- }
- public client_connect(id)
- {
- check_and_handle(id)
- }
- public client_infochanged(id)
- {
- check_and_handle(id)
- }
- public check_and_handle(id)
- {
- static name[64], steamid[64], Data[32]
- get_user_name(id, name, sizeof(name))
- get_user_authid(id, steamid, sizeof(steamid))
- for(new i = 0; i < ArraySize(BlackList); i++)
- {
- ArrayGetString(BlackList, i, Data, sizeof(Data))
- if(equal(name, Data) || equal(steamid, Data))
- {
- if(get_pcvar_num(cvar_blacklist_handle) == 1) // Kick
- {
- server_cmd("amx_kick %s ", name)
- } else if(get_pcvar_num(cvar_blacklist_handle) == 2) { // Ban
- if(get_pcvar_num(cvar_blacklist_bantype) == 1) // Ban SteamID
- {
- server_cmd("amx_ban %s BlackList %i", steamid, get_pcvar_num(cvar_blacklist_bantime))
- } else if(get_pcvar_num(cvar_blacklist_bantype) == 2) { // BanIP
- server_cmd("amx_banip %s BlackList %i", name, get_pcvar_num(cvar_blacklist_bantime))
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement