hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2025.06.16. 17:31



Jelenlévő felhasználók

Jelenleg 371 felhasználó van jelen :: 1 regisztrált, 0 rejtett és 370 vendég

A legtöbb felhasználó (2761 fő) 2025.01.09. 20:06-kor tartózkodott itt.

Regisztrált felhasználók: Bing [Bot]az elmúlt 5 percben aktív felhasználók alapján

Utoljára aktív
Ahhoz hogy lásd ki volt utoljára aktív, be kell jelentkezned.



Az oldal teljeskörű
használatához regisztrálj.

Regisztráció

Kereső


Új téma nyitása Hozzászólás a témához  [6 hozzászólás ] 
Szerző Üzenet
 Hozzászólás témája: Parancsok zöld színnel!
HozzászólásElküldve:2014.10.14. 20:47 
Offline
Jómunkásember
Avatar

Csatlakozott:2014.01.11. 22:53
Hozzászólások:379
Megköszönt másnak: 75 alkalommal
Megköszönték neki: 8 alkalommal
Üdv.
Valaki megtudná írni azt a plugint, hogy ha a játékos beírja a parancsokat akkor azt zölddel írja.
pl /admins , /vip /rs

_________________
Kép


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Parancsok zöld színnel!
HozzászólásElküldve:2014.10.14. 20:55 
Offline
Tiszteletbeli

Csatlakozott:2010.02.04. 19:12
Hozzászólások:3528
Megköszönt másnak: 26 alkalommal
Megköszönték neki: 180 alkalommal
ha mit ír be a játékos? /parancsok, vagy mit? mikor írja ki?

_________________
http://www.ebateam.eu/


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Parancsok zöld színnel!
HozzászólásElküldve:2014.10.14. 21:04 
Offline
Jómunkásember
Avatar

Csatlakozott:2014.01.11. 22:53
Hozzászólások:379
Megköszönt másnak: 75 alkalommal
Megköszönték neki: 8 alkalommal
IrOn123 írta:
ha mit ír be a játékos? /parancsok, vagy mit? mikor írja ki?

Amikor a parancsokat írja be, mint pl: /admins /vip /rs

_________________
Kép


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Parancsok zöld színnel!
HozzászólásElküldve:2014.10.14. 21:11 
Offline
Tiszteletbeli

Csatlakozott:2010.02.04. 19:12
Hozzászólások:3528
Megköszönt másnak: 26 alkalommal
Megköszönték neki: 180 alkalommal
allchat, admin chat colors, prefixes plugin van-e bent?
ha igen: posztold forráskódot

_________________
http://www.ebateam.eu/


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Parancsok zöld színnel!
HozzászólásElküldve:2014.10.14. 21:47 
Offline
Jómunkásember
Avatar

Csatlakozott:2014.01.11. 22:53
Hozzászólások:379
Megköszönt másnak: 75 alkalommal
Megköszönték neki: 8 alkalommal
IrOn123 írta:
allchat, admin chat colors, prefixes plugin van-e bent?
ha igen: posztold forráskódot

Ezt használjuk.

_________________
Kép


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Parancsok zöld színnel!
HozzászólásElküldve:2014.10.14. 21:54 
Offline
Tiszteletbeli

Csatlakozott:2010.02.04. 19:12
Hozzászólások:3528
Megköszönt másnak: 26 alkalommal
Megköszönték neki: 180 alkalommal
AdminPrefixes.sma (próbáld ki)
SMA Forráskód: [ Mindet kijelol ]
  1.  
  2. #include <amxmodx>
  3. #include <amxmisc>
  4. #include <celltrie>
  5. #include <cstrike>
  6.  
  7. #define VERSION "4.0"
  8. #define FLAG_LOAD ADMIN_CFG
  9. #define MAX_PREFIXES 33
  10. #define MAX_BAD_PREFIXES 100
  11.  
  12. new g_bad_prefix, g_listen, g_listen_flag, g_custom, g_custom_flag, g_say_characters, g_prefix_characters;
  13. new pre_ips_count = 0, pre_names_count = 0, pre_steamids_count, pre_flags_count = 0, bad_prefix_count = 0, i, temp_cvar[2];
  14. new configs_dir[64], file_prefixes[128], file_bad_prefixes[128], text[128], prefix[32], type[2], key[32], length, line = 0, error[256];
  15. new g_saytxt, g_maxplayers, CsTeams:g_team;
  16. new g_typed[192], g_message[192], g_name[32];
  17. new Trie:pre_ips_collect, Trie:pre_names_collect, Trie:pre_steamids_collect, Trie:pre_flags_collect, Trie:bad_prefixes_collect, Trie:client_prefix;
  18. new str_id[16], temp_key[35], temp_prefix[32], temp_value;
  19. new bool:g_toggle[33];
  20.  
  21. new const say_team_info[2][CsTeams][] =
  22. {
  23. {"*SPEC* ", "*DEAD* ", "*DEAD* ", "*SPEC* "},
  24. {"", "", "", ""}
  25. }
  26.  
  27. new const sayteam_team_info[2][CsTeams][] =
  28. {
  29. {"(Spectator) ", "*DEAD*(Terrorist) ", "*DEAD*(Counter-Terrorist) ", "(Spectator) "},
  30. {"(Spectator) ", "(Terrorist) ", "(Counter-Terrorist) ", "(Spectator) "}
  31. }
  32.  
  33. new const forbidden_say_symbols[] = {
  34. "!",
  35. "%",
  36. "$"
  37. }
  38.  
  39. new const forbidden_prefixes_symbols[] = {
  40. "/",
  41. "\",
  42. "%",
  43. "$",
  44. ".",
  45. ":",
  46. "?",
  47. "!",
  48. "@",
  49. "#",
  50. "%"
  51. }
  52.  
  53. new const separator[] = "************************************************"
  54. new const in_prefix[] = "[AdminPrefixes]"
  55.  
  56. public plugin_init()
  57. {
  58. register_plugin("Admin Prefixes", VERSION, "m0skVi4a ;]")
  59.  
  60. g_bad_prefix = register_cvar("ap_bad_prefixes", "1")
  61. g_listen = register_cvar("ap_listen", "1")
  62. g_listen_flag = register_cvar("ap_listen_flag", "a")
  63. g_custom = register_cvar("ap_custom_current", "1")
  64. g_custom_flag = register_cvar("ap_custom_current_flag", "b")
  65. g_say_characters = register_cvar("ap_say_characters", "1")
  66. g_prefix_characters = register_cvar("ap_prefix_characters", "1")
  67.  
  68. g_saytxt = get_user_msgid ("SayText")
  69. g_maxplayers = get_maxplayers()
  70.  
  71. register_concmd("ap_reload_prefixes", "LoadPrefixes")
  72. register_concmd("ap_reload_badprefixes", "LoadBadPrefixes")
  73. register_concmd("ap_put", "SetPlayerPrefix")
  74. register_clcmd("say", "HookSay")
  75. register_clcmd("say_team", "HookSayTeam")
  76.  
  77. pre_ips_collect = TrieCreate()
  78. pre_names_collect = TrieCreate()
  79. pre_steamids_collect = TrieCreate()
  80. pre_flags_collect = TrieCreate()
  81. bad_prefixes_collect = TrieCreate()
  82. client_prefix = TrieCreate()
  83.  
  84. register_dictionary("admin_prefixes.txt")
  85.  
  86. get_configsdir(configs_dir, charsmax(configs_dir))
  87. formatex(file_prefixes, charsmax(file_prefixes), "%s/ap_prefixes.ini", configs_dir)
  88. formatex(file_bad_prefixes, charsmax(file_bad_prefixes), "%s/ap_bad_prefixes.ini", configs_dir)
  89.  
  90. LoadPrefixes(0)
  91. LoadBadPrefixes(0)
  92. }
  93.  
  94. public LoadPrefixes(id)
  95. {
  96. if(!(get_user_flags(id) & FLAG_LOAD))
  97. {
  98. console_print(id, "%L", LANG_SERVER, "PREFIX_PERMISSION", in_prefix)
  99. return PLUGIN_HANDLED
  100. }
  101.  
  102. TrieClear(pre_ips_collect)
  103. TrieClear(pre_names_collect)
  104. TrieClear(pre_steamids_collect)
  105. TrieClear(pre_flags_collect)
  106.  
  107. line = 0, length = 0, pre_flags_count = 0, pre_ips_count = 0, pre_names_count = 0;
  108.  
  109. if(!file_exists(file_prefixes))
  110. {
  111. formatex(error, charsmax(error), "%L", LANG_SERVER, "PREFIX_NOT_FOUND", in_prefix, file_prefixes)
  112. set_fail_state(error)
  113. }
  114.  
  115. server_print(separator)
  116.  
  117. while(read_file(file_prefixes, line++ , text, charsmax(text), length) && (pre_ips_count + pre_names_count + pre_steamids_count + pre_flags_count) <= MAX_PREFIXES)
  118. {
  119. if(!text[0] || text[0] == '^n' || text[0] == ';' || (text[0] == '/' && text[1] == '/'))
  120. continue
  121.  
  122. parse(text, type, charsmax(type), key, charsmax(key), prefix, charsmax(prefix))
  123. trim(prefix)
  124.  
  125. if(!type[0] || !prefix[0] || !key[0])
  126. continue
  127.  
  128. replace_all(prefix, charsmax(prefix), "!g", "^x04")
  129. replace_all(prefix, charsmax(prefix), "!t", "^x03")
  130. replace_all(prefix, charsmax(prefix), "!n", "^x01")
  131.  
  132. switch(type[0])
  133. {
  134. case 'f':
  135. {
  136. pre_flags_count++
  137. TrieSetString(pre_flags_collect, key, prefix)
  138. server_print("%L", LANG_SERVER, "PREFIX_LOAD_FLAG", in_prefix, prefix, key[0])
  139. }
  140. case 'i':
  141. {
  142. pre_ips_count++
  143. TrieSetString(pre_ips_collect, key, prefix)
  144. server_print("%L", LANG_SERVER, "PREFIX_LOAD_IP", in_prefix, prefix, key)
  145. }
  146. case 's':
  147. {
  148. pre_steamids_count++
  149. TrieSetString(pre_steamids_collect, key, prefix)
  150. server_print("%L", LANG_SERVER, "PREFIX_LOAD_STEAMID", in_prefix, prefix, key)
  151. }
  152. case 'n':
  153. {
  154. pre_names_count++
  155. TrieSetString(pre_names_collect, key, prefix)
  156. server_print("%L", LANG_SERVER, "PREFIX_LOAD_NAME", in_prefix, prefix, key)
  157. }
  158. default:
  159. {
  160. continue
  161. }
  162. }
  163. }
  164.  
  165. if(pre_flags_count <= 0 && pre_ips_count <= 0 && pre_steamids_count <= 0 && pre_names_count <= 0)
  166. {
  167. server_print("%L", LANG_SERVER, "PREFIX_NO", in_prefix)
  168. }
  169.  
  170. get_user_name(id, g_name, charsmax(g_name))
  171. server_print("%L", LANG_SERVER, "PREFIX_LOADED_BY", in_prefix, g_name)
  172. console_print(id, "%L", LANG_SERVER, "PREFIX_LOADED", in_prefix)
  173.  
  174. server_print(separator)
  175.  
  176. for(new i = 1; i <= g_maxplayers; i++)
  177. {
  178. num_to_str(i, str_id, charsmax(str_id))
  179. TrieDeleteKey(client_prefix, str_id)
  180. PutPrefix(i)
  181. }
  182.  
  183. return PLUGIN_HANDLED
  184. }
  185.  
  186. public LoadBadPrefixes(id)
  187. {
  188. if(!get_pcvar_num(g_bad_prefix))
  189. {
  190. console_print(id, "%L", LANG_SERVER, "BADP_OFF", in_prefix)
  191. return PLUGIN_HANDLED
  192. }
  193.  
  194. if(!(get_user_flags(id) & FLAG_LOAD))
  195. {
  196. console_print(id, "%L", LANG_SERVER, "BADP_PERMISSION", in_prefix)
  197. return PLUGIN_HANDLED
  198. }
  199.  
  200. TrieClear(bad_prefixes_collect)
  201.  
  202. line = 0, length = 0, bad_prefix_count = 0;
  203.  
  204. if(!file_exists(file_bad_prefixes))
  205. {
  206. console_print(id, "%L", LANG_SERVER, "BADP_NOT_FOUND", in_prefix, file_bad_prefixes)
  207. return PLUGIN_HANDLED
  208. }
  209.  
  210. server_print(separator)
  211.  
  212. while(read_file(file_bad_prefixes, line++ , text, charsmax(text), length) && bad_prefix_count <= MAX_BAD_PREFIXES)
  213. {
  214. if(!text[0] || text[0] == '^n' || text[0] == ';' || (text[0] == '/' && text[1] == '/'))
  215. continue
  216.  
  217. parse(text, prefix, charsmax(prefix))
  218.  
  219. if(!prefix[0])
  220. continue
  221.  
  222. bad_prefix_count++
  223. TrieSetCell(bad_prefixes_collect, prefix, 1)
  224. server_print("%L", LANG_SERVER, "BADP_LOAD", in_prefix, prefix)
  225. }
  226.  
  227. if(bad_prefix_count <= 0)
  228. {
  229. server_print("%L", LANG_SERVER, "BADP_NO", in_prefix)
  230. }
  231.  
  232. get_user_name(id, g_name, charsmax(g_name))
  233. server_print("%L", LANG_SERVER, "BADP_LOADED_BY", in_prefix, g_name)
  234. console_print(id, "%L", LANG_SERVER, "BADP_LOADED", in_prefix)
  235.  
  236. server_print(separator)
  237.  
  238. return PLUGIN_HANDLED
  239. }
  240.  
  241. public client_putinserver(id)
  242. {
  243. g_toggle[id] = true
  244. num_to_str(id, str_id, charsmax(str_id))
  245. TrieSetString(client_prefix, str_id, "")
  246. PutPrefix(id)
  247. }
  248.  
  249. public HookSay(id)
  250. {
  251. read_args(g_typed, charsmax(g_typed))
  252. remove_quotes(g_typed)
  253.  
  254. trim(g_typed)
  255.  
  256. if(equal(g_typed, "") || !is_user_connected(id))
  257. return PLUGIN_HANDLED_MAIN
  258.  
  259. if(equal(g_typed, "/prefix"))
  260. {
  261. if(g_toggle[id])
  262. {
  263. g_toggle[id] = false
  264. client_print(id, print_chat, "%L", LANG_SERVER, "PREFIX_OFF", in_prefix)
  265. }
  266. else
  267. {
  268. g_toggle[id] = true
  269. client_print(id, print_chat, "%L", LANG_SERVER, "PREFIX_ON", in_prefix)
  270. }
  271.  
  272. return PLUGIN_HANDLED_MAIN
  273. }
  274.  
  275. if(!g_toggle[id])
  276. return PLUGIN_CONTINUE
  277.  
  278. num_to_str(id, str_id, charsmax(str_id))
  279.  
  280. 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)
  281. {
  282. if(check_say_characters(g_typed))
  283. return PLUGIN_HANDLED_MAIN
  284. }
  285.  
  286. get_user_name(id, g_name, charsmax(g_name))
  287.  
  288. g_team = cs_get_user_team(id)
  289.  
  290. if(temp_prefix[0])
  291. {
  292. 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)
  293. }
  294. else
  295. {
  296. if(equal(g_typed[0],"/"))
  297. formatex(g_message, charsmax(g_message), "^1%s^3%s :^4 %s", say_team_info[is_user_alive(id)][g_team], g_name, g_typed)
  298. else
  299. 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)
  300. }
  301.  
  302. get_pcvar_string(g_listen_flag, temp_cvar, charsmax(temp_cvar))
  303.  
  304. for(new i = 1; i <= g_maxplayers; i++)
  305. {
  306. if(!is_user_connected(i))
  307. continue
  308.  
  309. 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))
  310. {
  311. send_message(g_message, id, i)
  312. }
  313. }
  314.  
  315. return PLUGIN_HANDLED_MAIN
  316. }
  317.  
  318. public HookSayTeam(id)
  319. {
  320. read_args(g_typed, charsmax(g_typed))
  321. remove_quotes(g_typed)
  322.  
  323. trim(g_typed)
  324.  
  325. if(equal(g_typed, "") || !is_user_connected(id))
  326. return PLUGIN_HANDLED_MAIN
  327.  
  328. if(equal(g_typed, "/prefix"))
  329. {
  330. if(g_toggle[id])
  331. {
  332. g_toggle[id] = false
  333. client_print(id, print_chat, "%L", LANG_SERVER, "PREFIX_OFF", in_prefix)
  334. }
  335. else
  336. {
  337. g_toggle[id] = true
  338. client_print(id, print_chat, "%L", LANG_SERVER, "PREFIX_ON", in_prefix)
  339. }
  340.  
  341. return PLUGIN_HANDLED_MAIN
  342. }
  343.  
  344. if(!g_toggle[id])
  345. return PLUGIN_CONTINUE
  346.  
  347. num_to_str(id, str_id, charsmax(str_id))
  348.  
  349. 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)
  350. {
  351. if(check_say_characters(g_typed))
  352. return PLUGIN_HANDLED_MAIN
  353. }
  354.  
  355. get_user_name(id, g_name, charsmax(g_name))
  356.  
  357. g_team = cs_get_user_team(id)
  358.  
  359. if(temp_prefix[0])
  360. {
  361. 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)
  362. }
  363. else
  364. {
  365. 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)
  366. }
  367.  
  368. get_pcvar_string(g_listen_flag, temp_cvar, charsmax(temp_cvar))
  369.  
  370. for(new i = 1; i <= g_maxplayers; i++)
  371. {
  372. if(!is_user_connected(i))
  373. continue
  374.  
  375. if(get_user_team(id) == get_user_team(i) || get_pcvar_num(g_listen) && get_user_flags(i) & read_flags(temp_cvar))
  376. {
  377. 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))
  378. {
  379. send_message(g_message, id, i)
  380. }
  381. }
  382. }
  383.  
  384. return PLUGIN_HANDLED_MAIN
  385. }
  386.  
  387. public SetPlayerPrefix(id)
  388. {
  389. if(!get_pcvar_num(g_custom) || !get_pcvar_string(g_custom_flag, temp_cvar, charsmax(temp_cvar)))
  390. {
  391. console_print(id, "%L", LANG_SERVER, "CUSTOM_OFF", in_prefix)
  392. return PLUGIN_HANDLED
  393. }
  394.  
  395. if(!(get_user_flags(id) & read_flags(temp_cvar)))
  396. {
  397. console_print(id, "%L", LANG_SERVER, "CUSTOM_PERMISSION", in_prefix)
  398. return PLUGIN_HANDLED
  399. }
  400.  
  401. new input[128], target;
  402. new arg_type[2], arg_prefix[32], arg_key[35];
  403. new temp_str[16];
  404.  
  405. read_args(input, charsmax(input))
  406. remove_quotes(input)
  407. parse(input, arg_type, charsmax(arg_type), arg_key, charsmax(arg_key), arg_prefix, charsmax(arg_prefix))
  408. trim(arg_prefix)
  409.  
  410. if(get_pcvar_num(g_bad_prefix) && is_bad_prefix(arg_prefix) && !equali(arg_prefix, ""))
  411. {
  412. console_print(id, "%L", LANG_SERVER, "CUSTOM_FORBIDDEN", in_prefix, arg_prefix)
  413. return PLUGIN_HANDLED
  414. }
  415.  
  416. if(get_pcvar_num(g_prefix_characters) && check_prefix_characters(arg_prefix))
  417. {
  418. console_print(id, "%L", LANG_SERVER, "CUSTOM_SYMBOL", in_prefix, arg_prefix, forbidden_prefixes_symbols[i])
  419. return PLUGIN_HANDLED
  420. }
  421.  
  422. switch(arg_type[0])
  423. {
  424. case 'f':
  425. {
  426. target = 0
  427. temp_str = "Flag"
  428. }
  429. case 'i':
  430. {
  431. target = find_player("d", arg_key)
  432. temp_str = "IP"
  433. }
  434. case 's':
  435. {
  436. target = find_player("c", arg_key)
  437. temp_str = "SteamID"
  438. }
  439. case 'n':
  440. {
  441. target = find_player("a", arg_key)
  442. temp_str = "Name"
  443. }
  444. default:
  445. {
  446. console_print(id, "%L", LANG_SERVER, "CUSTOM_INVALID", in_prefix, arg_type)
  447. return PLUGIN_HANDLED
  448. }
  449. }
  450.  
  451. get_user_name(id, g_name, charsmax(g_name))
  452.  
  453. if(equali(arg_prefix, ""))
  454. {
  455. find_and_delete(arg_type, arg_key)
  456.  
  457. if(target)
  458. {
  459. PutPrefix(target)
  460. }
  461.  
  462. console_print(id, "%L", LANG_SERVER, "CUSTOM_REMOVE", in_prefix, temp_str, arg_key)
  463. server_print("%L", LANG_SERVER, "CUSTOM_REMOVE_INFO", in_prefix, g_name, temp_str, arg_key)
  464. return PLUGIN_HANDLED
  465. }
  466.  
  467. find_and_delete(arg_type, arg_key)
  468.  
  469. formatex(text, charsmax(text), "^"%s^" ^"%s^" ^"%s^"", arg_type, arg_key, arg_prefix)
  470. write_file(file_prefixes, text, -1)
  471.  
  472. switch(arg_type[0])
  473. {
  474. case 'f':
  475. {
  476. TrieSetString(pre_flags_collect, arg_key, arg_prefix)
  477. }
  478. case 'i':
  479. {
  480. TrieSetString(pre_ips_collect, arg_key, arg_prefix)
  481. }
  482. case 's':
  483. {
  484. TrieSetString(pre_steamids_collect, arg_key, arg_prefix)
  485. }
  486. case 'n':
  487. {
  488. TrieSetString(pre_names_collect, arg_key, arg_prefix)
  489. }
  490. }
  491.  
  492. if(target)
  493. {
  494. num_to_str(target, str_id, charsmax(str_id))
  495. TrieSetString(client_prefix, str_id, arg_prefix)
  496. }
  497.  
  498. console_print(id, "%L", LANG_SERVER, "CUSTOM_CHANGE", in_prefix, temp_str, arg_key, arg_prefix)
  499. server_print("%L", LANG_SERVER, "CUSTOM_CHANGE_INFO", in_prefix, g_name, temp_str, arg_key, arg_prefix)
  500.  
  501. return PLUGIN_HANDLED
  502. }
  503.  
  504. public client_infochanged(id)
  505. {
  506. if(!is_user_connected(id))
  507. return PLUGIN_CONTINUE
  508.  
  509. new g_old_name[32];
  510.  
  511. get_user_info(id, "name", g_name, charsmax(g_name))
  512. get_user_name(id, g_old_name, charsmax(g_old_name))
  513.  
  514. if(!equal(g_name, g_old_name))
  515. {
  516. num_to_str(id, str_id, charsmax(str_id))
  517. TrieSetString(client_prefix, str_id, "")
  518. set_task(0.5, "PutPrefix", id)
  519. return PLUGIN_HANDLED
  520. }
  521.  
  522. return PLUGIN_CONTINUE
  523. }
  524.  
  525. public PutPrefix(id)
  526. {
  527. num_to_str(id, str_id, charsmax(str_id))
  528. TrieSetString(client_prefix, str_id, "")
  529.  
  530. new sflags[32], temp_flag[2];
  531. get_flags(get_user_flags(id), sflags, charsmax(sflags))
  532.  
  533. for(new i = 0; i <= charsmax(sflags); i++)
  534. {
  535. formatex(temp_flag, charsmax(temp_flag), "%c", sflags[i])
  536.  
  537. if(TrieGetString(pre_flags_collect, temp_flag, temp_prefix, charsmax(temp_prefix)))
  538. {
  539. TrieSetString(client_prefix, str_id, temp_prefix)
  540. }
  541. }
  542.  
  543. get_user_ip(id, temp_key, charsmax(temp_key), 1)
  544.  
  545. if(TrieGetString(pre_ips_collect, temp_key, temp_prefix, charsmax(temp_prefix)))
  546. {
  547. TrieSetString(client_prefix, str_id, temp_prefix)
  548. }
  549.  
  550. get_user_authid(id, temp_key, charsmax(temp_key))
  551.  
  552. if(TrieGetString(pre_steamids_collect, temp_key, temp_prefix, charsmax(temp_prefix)))
  553. {
  554. TrieSetString(client_prefix, str_id, temp_prefix)
  555. }
  556.  
  557. get_user_name(id, temp_key, charsmax(temp_key))
  558.  
  559. if(TrieGetString(pre_names_collect, temp_key, temp_prefix, charsmax(temp_prefix)))
  560. {
  561. TrieSetString(client_prefix, str_id, temp_prefix)
  562. }
  563.  
  564. return PLUGIN_HANDLED
  565. }
  566.  
  567. send_message(const message[], const id, const i)
  568. {
  569. message_begin(MSG_ONE, g_saytxt, {0, 0, 0}, i)
  570. write_byte(id)
  571. write_string(message)
  572. message_end()
  573. }
  574.  
  575. bool:check_say_characters(const check_message[])
  576. {
  577. for(new i = 0; i < charsmax(forbidden_say_symbols); i++)
  578. {
  579. if(check_message[0] == forbidden_say_symbols[i])
  580. {
  581. return true
  582. }
  583. }
  584. return false
  585. }
  586.  
  587. bool:check_prefix_characters(const check_prefix[])
  588. {
  589. for(i = 0; i < charsmax(forbidden_prefixes_symbols); i++)
  590. {
  591. if(containi(check_prefix, forbidden_prefixes_symbols[i]) != -1)
  592. {
  593. return true
  594. }
  595. }
  596. return false
  597. }
  598.  
  599. bool:is_bad_prefix(const check_prefix[])
  600. {
  601. if(TrieGetCell(bad_prefixes_collect, check_prefix, temp_value))
  602. {
  603. return true
  604. }
  605. return false
  606. }
  607.  
  608. find_and_delete(const arg_type[], const arg_key[])
  609. {
  610. line = 0, length = 0;
  611.  
  612. while(read_file(file_prefixes, line++ , text, charsmax(text), length))
  613. {
  614. if(!text[0] || text[0] == '^n' || text[0] == ';' || (text[0] == '/' && text[1] == '/'))
  615. continue
  616.  
  617. parse(text, type, charsmax(type), key, charsmax(key), prefix, charsmax(prefix))
  618. trim(prefix)
  619.  
  620. if(!type[0] || !prefix[0] || !key[0])
  621. continue
  622.  
  623. if(!equal(arg_type, type) || !equal(arg_key, key))
  624. continue
  625.  
  626. write_file(file_prefixes, "", line - 1)
  627. }
  628.  
  629. switch(arg_type[0])
  630. {
  631. case 'f':
  632. {
  633. TrieDeleteKey(pre_flags_collect, arg_key)
  634. }
  635. case 'i':
  636. {
  637. TrieDeleteKey(pre_ips_collect, arg_key)
  638. }
  639. case 's':
  640. {
  641. TrieDeleteKey(pre_steamids_collect, arg_key)
  642. }
  643. case 'n':
  644. {
  645. TrieDeleteKey(pre_names_collect, arg_key)
  646. }
  647. }
  648. }
  649.  

_________________
http://www.ebateam.eu/


Hozzászólás jelentése
Vissza a tetejére
   
Hozzászólások megjelenítése: Rendezés 
Új téma nyitása Hozzászólás a témához  [6 hozzászólás ] 


Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 6 vendég


Nyithatsz új témákat ebben a fórumban.
Válaszolhatsz egy témára ebben a fórumban.
Nem szerkesztheted a hozzászólásaidat ebben a fórumban.
Nem törölheted a hozzászólásaidat ebben a fórumban.
Nem küldhetsz csatolmányokat ebben a fórumban.

Keresés:
Ugrás:  
Powered by phpBB® Forum Software © phpBB Limited
Magyar fordítás © Magyar phpBB Közösség
Portal: Kiss Portal Extension © Michael O'Toole