-
Total de itens
4 -
Registro em
-
Última visita
Tudo que Noviinhooo postou
-
[PEDIDO] Plugin /armas , /skin e /musicas
um tópico no fórum postou Noviinhooo Counter-Strike 1.6 Geral
Todo mundo já deve ter visto em servidores,esse comandos: /musicas (ou /roundsounds) /models /skin Queria que alguém me ajuda-se !! -
Mano,peço desculpas mais não entendi,o seu CS não funciona no Windows 8? é isso? Sé for isso,reinstale o CS na Steam,excluindo tudo do CS,até mesmo nos registro! Sobre Patch,isso é usado em Non-Steam amigo! :3
-
Admin Prefixes - Tags para Admins - AMXX
um tópico no fórum postou Noviinhooo Counter-Strike 1.6 Geral
Com este plugin você pode definir prefixos para Administradores com bandeiras especiais. Também Administradores podem colocar prefixos personalizados para eles ou para os outros jogadores Comandos: Altera Prefixo ON ou OFF' say_team /prefix ou say /prefix Recarrega arquivo prefixos a partir do console, sem reiniciar o servidor. ap_reload_prefixes Recarrega arquivo Bad prefixos a partir do console, sem reiniciar o servidor. ap_reload_badprefixes Coloca prefixo para a chave que você digitar caso você tem a bandeira especial. Ou, se não houver nenhum prefixo digitado, remove o prefixo que o jogador tem. ap_put "type (f, i, s, n)" "key(Flag, IP, SteamID, name)" "Prefix" "f" "n" "[PREFIX FLAG]" - Desta forma, pessoa com a frag N, terá o prefixo [PREFIX FLAG] "i" "192.168.1.100" "[PREFIX IP]" - Desta forma, pessoa com IP 192.168.1.100, terá o prefixo [PREFIX IP] "s" "STEAM_0:1:52985922" "[PREFIX STEAMID]" - Desta forma pessoa com a steamid STEAM_0:1:52985922, terá o prefixo [PREFIX NAME] "n" "m0skVi4a ;]" "[PREFIX NAME]" - Desta forma, pessoa com nome m0skVi4a ;], terá o prefixo [PREFIX NAME] #include <amxmodx> #include <amxmisc> #include <celltrie> #include <cstrike> #define VERSION "4.0" #define FLAG_LOAD ADMIN_CFG #define MAX_PREFIXES 33 #define MAX_BAD_PREFIXES 100 new g_bad_prefix, g_listen, g_listen_flag, g_custom, g_custom_flag, g_say_characters, g_prefix_characters; new pre_ips_count = 0, pre_names_count = 0, pre_steamids_count, pre_flags_count = 0, bad_prefix_count = 0, i, temp_cvar[2]; new configs_dir[64], file_prefixes[128], file_bad_prefixes[128], text[128], prefix[32], type[2], key[32], length, line = 0, error[256]; new g_saytxt, g_maxplayers, CsTeams:g_team; new g_typed[192], g_message[192], g_name[32]; new Trie:pre_ips_collect, Trie:pre_names_collect, Trie:pre_steamids_collect, Trie:pre_flags_collect, Trie:bad_prefixes_collect, Trie:client_prefix; new str_id[16], temp_key[35], temp_prefix[32], temp_value; new bool:g_toggle[33]; new const say_team_info[2][CsTeams][] = { {"*SPEC* ", "*DEAD* ", "*DEAD* ", "*SPEC* "}, {"", "", "", ""} } new const sayteam_team_info[2][CsTeams][] = { {"(Spectator) ", "*DEAD*(Terrorist) ", "*DEAD*(Counter-Terrorist) ", "(Spectator) "}, {"(Spectator) ", "(Terrorist) ", "(Counter-Terrorist) ", "(Spectator) "} } new const forbidden_say_symbols[] = { "/", "!", "%", "$" } new const forbidden_prefixes_symbols[] = { "/", "\", "%", "$", ".", ":", "?", "!", "@", "#", "%" } new const separator[] = "************************************************" new const in_prefix[] = "[AdminPrefixes]" public plugin_init() { register_plugin("Admin Prefixes", VERSION, "m0skVi4a ;]") g_bad_prefix = register_cvar("ap_bad_prefixes", "1") g_listen = register_cvar("ap_listen", "1") g_listen_flag = register_cvar("ap_listen_flag", "a") g_custom = register_cvar("ap_custom_current", "1") g_custom_flag = register_cvar("ap_custom_current_flag", "b") g_say_characters = register_cvar("ap_say_characters", "1") g_prefix_characters = register_cvar("ap_prefix_characters", "1") g_saytxt = get_user_msgid ("SayText") g_maxplayers = get_maxplayers() register_concmd("ap_reload_prefixes", "LoadPrefixes") register_concmd("ap_reload_badprefixes", "LoadBadPrefixes") register_concmd("ap_put", "SetPlayerPrefix") register_clcmd("say", "HookSay") register_clcmd("say_team", "HookSayTeam") pre_ips_collect = TrieCreate() pre_names_collect = TrieCreate() pre_steamids_collect = TrieCreate() pre_flags_collect = TrieCreate() bad_prefixes_collect = TrieCreate() client_prefix = TrieCreate() register_dictionary("admin_prefixes.txt") get_configsdir(configs_dir, charsmax(configs_dir)) formatex(file_prefixes, charsmax(file_prefixes), "%s/ap_prefixes.ini", configs_dir) formatex(file_bad_prefixes, charsmax(file_bad_prefixes), "%s/ap_bad_prefixes.ini", configs_dir) LoadPrefixes(0) LoadBadPrefixes(0) } public LoadPrefixes(id) { if(!(get_user_flags(id) & FLAG_LOAD)) { console_print(id, "%L", LANG_SERVER, "PREFIX_PERMISSION", in_prefix) return PLUGIN_HANDLED } TrieClear(pre_ips_collect) TrieClear(pre_names_collect) TrieClear(pre_steamids_collect) TrieClear(pre_flags_collect) line = 0, length = 0, pre_flags_count = 0, pre_ips_count = 0, pre_names_count = 0; if(!file_exists(file_prefixes)) { formatex(error, charsmax(error), "%L", LANG_SERVER, "PREFIX_NOT_FOUND", in_prefix, file_prefixes) set_fail_state(error) } server_print(separator) while(read_file(file_prefixes, line++ , text, charsmax(text), length) && (pre_ips_count + pre_names_count + pre_steamids_count + pre_flags_count) <= MAX_PREFIXES) { if(!text[0] || text[0] == '^n' || text[0] == ';' || (text[0] == '/' && text[1] == '/')) continue parse(text, type, charsmax(type), key, charsmax(key), prefix, charsmax(prefix)) trim(prefix) if(!type[0] || !prefix[0] || !key[0]) continue replace_all(prefix, charsmax(prefix), "!g", "^x04") replace_all(prefix, charsmax(prefix), "!t", "^x03") replace_all(prefix, charsmax(prefix), "!n", "^x01") switch(type[0]) { case 'f': { pre_flags_count++ TrieSetString(pre_flags_collect, key, prefix) server_print("%L", LANG_SERVER, "PREFIX_LOAD_FLAG", in_prefix, prefix, key[0]) } case 'i': { pre_ips_count++ TrieSetString(pre_ips_collect, key, prefix) server_print("%L", LANG_SERVER, "PREFIX_LOAD_IP", in_prefix, prefix, key) } case 's': { pre_steamids_count++ TrieSetString(pre_steamids_collect, key, prefix) server_print("%L", LANG_SERVER, "PREFIX_LOAD_STEAMID", in_prefix, prefix, key) } case 'n': { pre_names_count++ TrieSetString(pre_names_collect, key, prefix) server_print("%L", LANG_SERVER, "PREFIX_LOAD_NAME", in_prefix, prefix, key) } default: { continue } } } if(pre_flags_count <= 0 && pre_ips_count <= 0 && pre_steamids_count <= 0 && pre_names_count <= 0) { server_print("%L", LANG_SERVER, "PREFIX_NO", in_prefix) } get_user_name(id, g_name, charsmax(g_name)) server_print("%L", LANG_SERVER, "PREFIX_LOADED_BY", in_prefix, g_name) console_print(id, "%L", LANG_SERVER, "PREFIX_LOADED", in_prefix) server_print(separator) for(new i = 1; i <= g_maxplayers; i++) { num_to_str(i, str_id, charsmax(str_id)) TrieDeleteKey(client_prefix, str_id) PutPrefix(i) } return PLUGIN_HANDLED } public LoadBadPrefixes(id) { if(!get_pcvar_num(g_bad_prefix)) { console_print(id, "%L", LANG_SERVER, "BADP_OFF", in_prefix) return PLUGIN_HANDLED } if(!(get_user_flags(id) & FLAG_LOAD)) { console_print(id, "%L", LANG_SERVER, "BADP_PERMISSION", in_prefix) return PLUGIN_HANDLED } TrieClear(bad_prefixes_collect) line = 0, length = 0, bad_prefix_count = 0; if(!file_exists(file_bad_prefixes)) { console_print(id, "%L", LANG_SERVER, "BADP_NOT_FOUND", in_prefix, file_bad_prefixes) return PLUGIN_HANDLED } server_print(separator) while(read_file(file_bad_prefixes, line++ , text, charsmax(text), length) && bad_prefix_count <= MAX_BAD_PREFIXES) { if(!text[0] || text[0] == '^n' || text[0] == ';' || (text[0] == '/' && text[1] == '/')) continue parse(text, prefix, charsmax(prefix)) if(!prefix[0]) continue bad_prefix_count++ TrieSetCell(bad_prefixes_collect, prefix, 1) server_print("%L", LANG_SERVER, "BADP_LOAD", in_prefix, prefix) } if(bad_prefix_count <= 0) { server_print("%L", LANG_SERVER, "BADP_NO", in_prefix) } get_user_name(id, g_name, charsmax(g_name)) server_print("%L", LANG_SERVER, "BADP_LOADED_BY", in_prefix, g_name) console_print(id, "%L", LANG_SERVER, "BADP_LOADED", in_prefix) server_print(separator) return PLUGIN_HANDLED } public client_putinserver(id) { g_toggle[id] = true num_to_str(id, str_id, charsmax(str_id)) TrieSetString(client_prefix, str_id, "") PutPrefix(id) } public HookSay(id) { read_args(g_typed, charsmax(g_typed)) remove_quotes(g_typed) trim(g_typed) if(equal(g_typed, "") || !is_user_connected(id)) return PLUGIN_HANDLED_MAIN if(equal(g_typed, "/prefix")) { if(g_toggle[id]) { g_toggle[id] = false client_print(id, print_chat, "%L", LANG_SERVER, "PREFIX_OFF", in_prefix) } else { g_toggle[id] = true client_print(id, print_chat, "%L", LANG_SERVER, "PREFIX_ON", in_prefix) } return PLUGIN_HANDLED_MAIN } if(!g_toggle[id]) return PLUGIN_CONTINUE num_to_str(id, str_id, charsmax(str_id)) if((TrieGetString(client_prefix, str_id, temp_prefix, charsmax(temp_prefix)) && get_pcvar_num(g_say_characters) == 1) || (!TrieGetString(client_prefix, str_id, temp_prefix, charsmax(temp_prefix)) && get_pcvar_num(g_say_characters) == 2) || get_pcvar_num(g_say_characters) == 3) { if(check_say_characters(g_typed)) return PLUGIN_HANDLED_MAIN } get_user_name(id, g_name, charsmax(g_name)) g_team = cs_get_user_team(id) if(temp_prefix[0]) { formatex(g_message, charsmax(g_message), "^1%s^4%s^3 %s :^4 %s", say_team_info[is_user_alive(id)][g_team], temp_prefix, g_name, g_typed) } else { formatex(g_message, charsmax(g_message), "^1%s^3%s :^1 %s", say_team_info[is_user_alive(id)][g_team], g_name, g_typed) } get_pcvar_string(g_listen_flag, temp_cvar, charsmax(temp_cvar)) for(new i = 1; i <= g_maxplayers; i++) { if(!is_user_connected(i)) continue if(is_user_alive(id) && is_user_alive(i) || !is_user_alive(id) && !is_user_alive(i) || get_pcvar_num(g_listen) && get_user_flags(i) & read_flags(temp_cvar)) { send_message(g_message, id, i) } } return PLUGIN_HANDLED_MAIN } public HookSayTeam(id) { read_args(g_typed, charsmax(g_typed)) remove_quotes(g_typed) trim(g_typed) if(equal(g_typed, "") || !is_user_connected(id)) return PLUGIN_HANDLED_MAIN if(equal(g_typed, "/prefix")) { if(g_toggle[id]) { g_toggle[id] = false client_print(id, print_chat, "%L", LANG_SERVER, "PREFIX_OFF", in_prefix) } else { g_toggle[id] = true client_print(id, print_chat, "%L", LANG_SERVER, "PREFIX_ON", in_prefix) } return PLUGIN_HANDLED_MAIN } if(!g_toggle[id]) return PLUGIN_CONTINUE num_to_str(id, str_id, charsmax(str_id)) if((TrieGetString(client_prefix, str_id, temp_prefix, charsmax(temp_prefix)) && get_pcvar_num(g_say_characters) == 1) || (!TrieGetString(client_prefix, str_id, temp_prefix, charsmax(temp_prefix)) && get_pcvar_num(g_say_characters) == 2) || get_pcvar_num(g_say_characters) == 3) { if(check_say_characters(g_typed)) return PLUGIN_HANDLED_MAIN } get_user_name(id, g_name, charsmax(g_name)) g_team = cs_get_user_team(id) if(temp_prefix[0]) { formatex(g_message, charsmax(g_message), "^1%s^4%s^3 %s :^4 %s", sayteam_team_info[is_user_alive(id)][g_team], temp_prefix, g_name, g_typed) } else { formatex(g_message, charsmax(g_message), "^1%s^3%s :^1 %s", sayteam_team_info[is_user_alive(id)][g_team], g_name, g_typed) } get_pcvar_string(g_listen_flag, temp_cvar, charsmax(temp_cvar)) for(new i = 1; i <= g_maxplayers; i++) { if(!is_user_connected(i)) continue if(get_user_team(id) == get_user_team(i) || get_pcvar_num(g_listen) && get_user_flags(i) & read_flags(temp_cvar)) { if(is_user_alive(id) && is_user_alive(i) || !is_user_alive(id) && !is_user_alive(i) || get_pcvar_num(g_listen) && get_user_flags(i) & read_flags(temp_cvar)) { send_message(g_message, id, i) } } } return PLUGIN_HANDLED_MAIN } public SetPlayerPrefix(id) { if(!get_pcvar_num(g_custom) || !get_pcvar_string(g_custom_flag, temp_cvar, charsmax(temp_cvar))) { console_print(id, "%L", LANG_SERVER, "CUSTOM_OFF", in_prefix) return PLUGIN_HANDLED } if(!(get_user_flags(id) & read_flags(temp_cvar))) { console_print(id, "%L", LANG_SERVER, "CUSTOM_PERMISSION", in_prefix) return PLUGIN_HANDLED } new input[128], target; new arg_type[2], arg_prefix[32], arg_key[35]; new temp_str[16]; read_args(input, charsmax(input)) remove_quotes(input) parse(input, arg_type, charsmax(arg_type), arg_key, charsmax(arg_key), arg_prefix, charsmax(arg_prefix)) trim(arg_prefix) if(get_pcvar_num(g_bad_prefix) && is_bad_prefix(arg_prefix) && !equali(arg_prefix, "")) { console_print(id, "%L", LANG_SERVER, "CUSTOM_FORBIDDEN", in_prefix, arg_prefix) return PLUGIN_HANDLED } if(get_pcvar_num(g_prefix_characters) && check_prefix_characters(arg_prefix)) { console_print(id, "%L", LANG_SERVER, "CUSTOM_SYMBOL", in_prefix, arg_prefix, forbidden_prefixes_symbols[i]) return PLUGIN_HANDLED } switch(arg_type[0]) { case 'f': { target = 0 temp_str = "Flag" } case 'i': { target = find_player("d", arg_key) temp_str = "IP" } case 's': { target = find_player("c", arg_key) temp_str = "SteamID" } case 'n': { target = find_player("a", arg_key) temp_str = "Name" } default: { console_print(id, "%L", LANG_SERVER, "CUSTOM_INVALID", in_prefix, arg_type) return PLUGIN_HANDLED } } get_user_name(id, g_name, charsmax(g_name)) if(equali(arg_prefix, "")) { find_and_delete(arg_type, arg_key) if(target) { PutPrefix(target) } console_print(id, "%L", LANG_SERVER, "CUSTOM_REMOVE", in_prefix, temp_str, arg_key) server_print("%L", LANG_SERVER, "CUSTOM_REMOVE_INFO", in_prefix, g_name, temp_str, arg_key) return PLUGIN_HANDLED } find_and_delete(arg_type, arg_key) formatex(text, charsmax(text), "^"%s^" ^"%s^" ^"%s^"", arg_type, arg_key, arg_prefix) write_file(file_prefixes, text, -1) switch(arg_type[0]) { case 'f': { TrieSetString(pre_flags_collect, arg_key, arg_prefix) } case 'i': { TrieSetString(pre_ips_collect, arg_key, arg_prefix) } case 's': { TrieSetString(pre_steamids_collect, arg_key, arg_prefix) } case 'n': { TrieSetString(pre_names_collect, arg_key, arg_prefix) } } if(target) { num_to_str(target, str_id, charsmax(str_id)) TrieSetString(client_prefix, str_id, arg_prefix) } console_print(id, "%L", LANG_SERVER, "CUSTOM_CHANGE", in_prefix, temp_str, arg_key, arg_prefix) server_print("%L", LANG_SERVER, "CUSTOM_CHANGE_INFO", in_prefix, g_name, temp_str, arg_key, arg_prefix) return PLUGIN_HANDLED } public client_infochanged(id) { if(!is_user_connected(id)) return PLUGIN_CONTINUE new g_old_name[32]; get_user_info(id, "name", g_name, charsmax(g_name)) get_user_name(id, g_old_name, charsmax(g_old_name)) if(!equal(g_name, g_old_name)) { num_to_str(id, str_id, charsmax(str_id)) TrieSetString(client_prefix, str_id, "") set_task(0.5, "PutPrefix", id) return PLUGIN_HANDLED } return PLUGIN_CONTINUE } public PutPrefix(id) { num_to_str(id, str_id, charsmax(str_id)) TrieSetString(client_prefix, str_id, "") new sflags[32], temp_flag[2]; get_flags(get_user_flags(id), sflags, charsmax(sflags)) for(new i = 0; i <= charsmax(sflags); i++) { formatex(temp_flag, charsmax(temp_flag), "%c", sflags[i]) if(TrieGetString(pre_flags_collect, temp_flag, temp_prefix, charsmax(temp_prefix))) { TrieSetString(client_prefix, str_id, temp_prefix) } } get_user_ip(id, temp_key, charsmax(temp_key), 1) if(TrieGetString(pre_ips_collect, temp_key, temp_prefix, charsmax(temp_prefix))) { TrieSetString(client_prefix, str_id, temp_prefix) } get_user_authid(id, temp_key, charsmax(temp_key)) if(TrieGetString(pre_steamids_collect, temp_key, temp_prefix, charsmax(temp_prefix))) { TrieSetString(client_prefix, str_id, temp_prefix) } get_user_name(id, temp_key, charsmax(temp_key)) if(TrieGetString(pre_names_collect, temp_key, temp_prefix, charsmax(temp_prefix))) { TrieSetString(client_prefix, str_id, temp_prefix) } return PLUGIN_HANDLED } send_message(const message[], const id, const i) { message_begin(MSG_ONE, g_saytxt, {0, 0, 0}, i) write_byte(id) write_string(message) message_end() } bool:check_say_characters(const check_message[]) { for(new i = 0; i < charsmax(forbidden_say_symbols); i++) { if(check_message[0] == forbidden_say_symbols[i]) { return true } } return false } bool:check_prefix_characters(const check_prefix[]) { for(i = 0; i < charsmax(forbidden_prefixes_symbols); i++) { if(containi(check_prefix, forbidden_prefixes_symbols[i]) != -1) { return true } } return false } bool:is_bad_prefix(const check_prefix[]) { if(TrieGetCell(bad_prefixes_collect, check_prefix, temp_value)) { return true } return false } find_and_delete(const arg_type[], const arg_key[]) { line = 0, length = 0; while(read_file(file_prefixes, line++ , text, charsmax(text), length)) { if(!text[0] || text[0] == '^n' || text[0] == ';' || (text[0] == '/' && text[1] == '/')) continue parse(text, type, charsmax(type), key, charsmax(key), prefix, charsmax(prefix)) trim(prefix) if(!type[0] || !prefix[0] || !key[0]) continue if(!equal(arg_type, type) || !equal(arg_key, key)) continue write_file(file_prefixes, "", line - 1) } switch(arg_type[0]) { case 'f': { TrieDeleteKey(pre_flags_collect, arg_key) } case 'i': { TrieDeleteKey(pre_ips_collect, arg_key) } case 's': { TrieDeleteKey(pre_steamids_collect, arg_key) } case 'n': { TrieDeleteKey(pre_names_collect, arg_key) } } } amxmodx\plugins,antes de colocar na pasta,copile :3 AdminPrefixes.sma amxmodx\data\lang admin_prefixes.txt amxmodx\configs ap_prefixes.ini ap_bad_prefixes.ini Fonte