hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2024.06.16. 19:04



Jelenlévő felhasználók

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

A legtöbb felhasználó (1565 fő) 2020.11.21. 11:26-kor tartózkodott itt.

Regisztrált felhasználók: nincs regisztrált felhasználó 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  [ 2 hozzászólás ] 
Szerző Üzenet
 Hozzászólás témája: Javítás
HozzászólásElküldve: 2015.03.27. 12:31 
Offline
Jómunkásember
Avatar

Csatlakozott: 2014.10.31. 14:51
Hozzászólások: 462
Megköszönt másnak: 73 alkalommal
Megköszönték neki: 29 alkalommal
Valaki javítaná? :(
SMA Forráskód: [ Mindet kijelol ]
  1. #include <amxmodx>
  2. #include <amxmisc>
  3.  
  4. #define MAXRCONCVARS 16
  5.  
  6. new g_cvarRcon[MAXRCONCVARS][32]
  7. new g_cvarRconNum
  8. new g_pauseCon
  9. new Float:g_pausAble
  10. new bool:g_Paused
  11. new bool:g_PauseAllowed = false
  12. new g_addCvar[] = "amx_cvar add %s"
  13.  
  14. public plugin_init()
  15. {
  16. register_plugin("Admin Commands", AMXX_VERSION_STR, "fdmarius")
  17. register_dictionary("admincmd.txt")
  18. register_dictionary("common.txt")
  19. register_concmd("amx_kick", "cmdKick", ADMIN_KICK, "<name or #userid> [reason]")
  20. register_concmd("amx_ban", "cmdBan", ADMIN_BAN, "<name or #userid> <minutes> [reason]")
  21. register_concmd("amx_banip", "cmdBanIP", ADMIN_BAN, "<name or #userid> <minutes> [reason]")
  22. register_concmd("amx_addban", "cmdAddBan", ADMIN_RCON, "<authid or ip> <minutes> [reason]")
  23. register_concmd("amx_unban", "cmdUnban", ADMIN_BAN, "<authid or ip>")
  24. register_concmd("amx_slay", "cmdSlay", ADMIN_SLAY, "<name or #userid>")
  25. register_concmd("amx_slap", "cmdSlap", ADMIN_SLAY, "<name or #userid> [power]")
  26. register_concmd("amx_leave", "cmdLeave", ADMIN_KICK, "<tag> [tag] [tag] [tag]")
  27. register_concmd("amx_pause", "cmdPause", ADMIN_CVAR, "- pause or unpause the game")
  28. register_concmd("amx_cvar", "cmdCvar", ADMIN_CVAR, "<cvar> [value]")
  29. register_concmd("amx_plugins", "cmdPlugins", ADMIN_ADMIN)
  30. register_concmd("amx_modules", "cmdModules", ADMIN_ADMIN)
  31. register_concmd("amx_map", "cmdMap", ADMIN_MAP, "<mapname>")
  32. register_concmd("amx_cfg", "cmdCfg", ADMIN_CFG, "<filename>")
  33. register_concmd("amx_nick", "cmdNick", ADMIN_SLAY, "<name or #userid> <new nick>")
  34. register_clcmd("amx_rcon", "cmdRcon", ADMIN_RCON, "<command line>")
  35. register_clcmd("amx_showrcon", "cmdShowRcon", ADMIN_RCON, "<command line>")
  36. register_clcmd("pauseAck", "cmdLBack")
  37. }
  38.  
  39. public plugin_cfg()
  40. {
  41. // Cvars which can be changed only with rcon access
  42. server_cmd(g_addCvar, "rcon_password")
  43. server_cmd(g_addCvar, "amx_show_activity")
  44. server_cmd(g_addCvar, "amx_mode")
  45. server_cmd(g_addCvar, "amx_password_field")
  46. server_cmd(g_addCvar, "amx_default_access")
  47. server_cmd(g_addCvar, "amx_reserved_slots")
  48. server_cmd(g_addCvar, "amx_reservation")
  49. server_cmd(g_addCvar, "amx_conmotd_file")
  50. }
  51.  
  52. public cmdKick(id, level, cid)
  53. {
  54. if (!cmd_access(id, level, cid, 2))
  55. return PLUGIN_HANDLED
  56.  
  57. new arg[32]
  58. read_argv(1, arg, 31)
  59. new player = cmd_target(id, arg, 1)
  60.  
  61. if (!player)
  62. return PLUGIN_HANDLED
  63.  
  64. new authid[32], authid2[32], name2[32], name[32], userid2, reason[32]
  65.  
  66. get_user_authid(id, authid, 31)
  67. get_user_authid(player, authid2, 31)
  68. get_user_name(player, name2, 31)
  69. get_user_name(id, name, 31)
  70. userid2 = get_user_userid(player)
  71. read_argv(2, reason, 31)
  72. remove_quotes(reason)
  73.  
  74. log_amx("Kick: ^"%s<%d><%s><>^" kick ^"%s<%d><%s><>^" (reason ^"%s^")", name, get_user_userid(id), authid, name2, userid2, authid2, reason)
  75.  
  76. switch (get_cvar_num("amx_show_activity"))
  77. {
  78. case 2: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_KICK_2", name, name2)
  79. case 1: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_KICK_1", name2)
  80. }
  81.  
  82. if (is_user_bot(player))
  83. server_cmd("kick #%d", userid2)
  84. else
  85. {
  86. if (reason[0])
  87. server_cmd("kick #%d ^"%s^"", userid2, reason)
  88. else
  89. server_cmd("kick #%d", userid2)
  90. }
  91.  
  92. console_print(id, "[AMXX] Client ^"%s^" kicked", name2)
  93.  
  94. return PLUGIN_HANDLED
  95. }
  96.  
  97. public cmdUnban(id, level, cid)
  98. {
  99. if (!cmd_access(id, level, cid, 2))
  100. return PLUGIN_HANDLED
  101.  
  102. new arg[32], authid[32], name[32]
  103.  
  104. read_argv(1, arg, 31)
  105.  
  106. if (contain(arg, ".") != -1)
  107. {
  108. server_cmd("removeip ^"%s^";writeip", arg)
  109. console_print(id, "[AMXX] %L", id, "IP_REMOVED", arg)
  110. } else {
  111. server_cmd("removeid %s;writeid", arg)
  112. console_print(id, "[AMXX] %L", id, "AUTHID_REMOVED", arg)
  113. }
  114.  
  115. get_user_name(id, name, 31)
  116.  
  117. switch (get_cvar_num("amx_show_activity"))
  118. {
  119. case 2: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_UNBAN_2", name, arg)
  120. case 1: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_UNBAN_1", arg)
  121. }
  122.  
  123. get_user_authid(id, authid, 31)
  124. log_amx("Cmd: ^"%s<%d><%s><>^" unban ^"%s^"", name, get_user_userid(id), authid, arg)
  125.  
  126. return PLUGIN_HANDLED
  127. }
  128.  
  129. public cmdAddBan(id, level, cid)
  130. {
  131. if (!cmd_access(id, level, cid, 3))
  132. return PLUGIN_HANDLED
  133.  
  134. new arg[32], authid[32], name[32], minutes[32], reason[32]
  135.  
  136. read_argv(1, arg, 31)
  137. read_argv(2, minutes, 31)
  138. read_argv(3, reason, 31)
  139.  
  140. if (contain(arg, ".") != -1)
  141. {
  142. server_cmd("addip ^"%s^" ^"%s^";wait;writeip", minutes, arg)
  143. console_print(id, "[AMXX] Ip ^"%s^" added to ban list", arg)
  144. } else {
  145. server_cmd("banid ^"%s^" ^"%s^";wait;writeid", minutes, arg)
  146. console_print(id, "[AMXX] Authid ^"%s^" added to ban list", arg)
  147. }
  148.  
  149. get_user_name(id, name, 31)
  150.  
  151. switch (get_cvar_num("amx_show_activity"))
  152. {
  153. case 2: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_ADDBAN_2", name, arg)
  154. case 1: client_print(0, print_chat, ""%L", LANG_PLAYER, "ADMIN_ADDBAN_1", arg)
  155. }
  156.  
  157. get_user_authid(id, authid, 31)
  158. log_amx("Cmd: ^"%s<%d><%s><>^" ban ^"%s^" (minutes ^"%s^") (reason ^"%s^")", name, get_user_userid(id), authid, arg, minutes, reason)
  159.  
  160. return PLUGIN_HANDLED
  161. }
  162.  
  163. public cmdBan(id, level, cid)
  164. {
  165. if (!cmd_access(id, level, cid, 3))
  166. return PLUGIN_HANDLED
  167.  
  168. new target[32], minutes[8], reason[64]
  169.  
  170. read_argv(1, target, 31)
  171. read_argv(2, minutes, 7)
  172. read_argv(3, reason, 63)
  173.  
  174. new player = cmd_target(id, target, 9)
  175.  
  176. if (!player)
  177. return PLUGIN_HANDLED
  178.  
  179. new authid[32], name2[32], authid2[32], name[32]
  180. new userid2 = get_user_userid(player)
  181.  
  182. get_user_authid(player, authid2, 31)
  183. get_user_authid(id, authid, 31)
  184. get_user_name(player, name2, 31)
  185. get_user_name(id, name, 31)
  186.  
  187.  
  188. new temp[64], banned[16], nNum = str_to_num(minutes)
  189. if (nNum)
  190. format(temp, 63, "Bant Kaptál %s Percre!", minutes)
  191. else
  192. format(temp, 63, "Örökre Bannolva lettél Skype:quex.szili", player, "PERM")
  193. format(banned, 15, "", player, "BANNED")
  194.  
  195. new address[32]
  196. get_user_ip(player, address, 31, 1)
  197.  
  198. if (reason[0])
  199. server_cmd("kick #%d ^"%s (%s %s)^";wait;addip ^"%s^" ^"%s^";wait;writeip", userid2, reason, banned, temp, minutes, address)
  200. else
  201. server_cmd("kick #%d ^"%s %s^";wait;addip ^"%s^" ^"%s^";wait;writeip", userid2, banned, temp, minutes, address)
  202.  
  203. new pl[32];
  204. get_user_name(player, pl, 31)
  205. client_print(id, print_chat, "!yADMIN!g %s!y: banolta!g %s!yt!g %s!y Perc. Ok:!g ( %s )", name, pl, minutes, reason)
  206. client_cmd(player, "wait;snapshot;wait");
  207.  
  208. new activity = get_cvar_num("amx_show_activity")
  209. if (activity != 0)
  210. {
  211.  
  212. }
  213. console_print(id, "Jucatorul %s a fost banat", name2)
  214.  
  215. return PLUGIN_HANDLED
  216. }
  217.  
  218. public cmdBanIP(id, level, cid)
  219. {
  220. if (!cmd_access(id, level, cid, 3))
  221. return PLUGIN_HANDLED
  222.  
  223. new target[32], minutes[8], reason[64]
  224.  
  225. read_argv(1, target, 31)
  226. read_argv(2, minutes, 7)
  227. read_argv(3, reason, 63)
  228.  
  229. new player = cmd_target(id, target, 9)
  230.  
  231. if (!player)
  232. return PLUGIN_HANDLED
  233.  
  234. new authid[32], name2[32], authid2[32], name[32]
  235. new userid2 = get_user_userid(player)
  236.  
  237. get_user_authid(player, authid2, 31)
  238. get_user_authid(id, authid, 31)
  239. get_user_name(player, name2, 31)
  240. get_user_name(id, name, 31)
  241.  
  242.  
  243. new temp[64], banned[16], nNum = str_to_num(minutes)
  244. if (nNum)
  245. format(temp, 63, "Ai primit ban pentru %s minute", minutes)
  246. else
  247. format(temp, 63, "Ai primit ban permanent", player, "PERM")
  248. format(banned, 15, "", player, "BANNED")
  249.  
  250. new address[32]
  251. get_user_ip(player, address, 31, 1)
  252.  
  253. if (reason[0])
  254. server_cmd("kick #%d ^"%s (%s %s)^";wait;addip ^"%s^" ^"%s^";wait;writeip", userid2, reason, banned, temp, minutes, address)
  255. else
  256. server_cmd("kick #%d ^"%s %s^";wait;addip ^"%s^" ^"%s^";wait;writeip", userid2, banned, temp, minutes, address)
  257.  
  258. new pl[32];
  259. get_user_name(player, pl, 31)
  260. client_print(id, print_chat, "!yADMIN!g %s!y: banolta Ipre!g %s!yt!g %s!y Perc. Ok:!g ( %s )", name, pl, minutes, reason)
  261. client_cmd(player, "wait;snapshot;wait");
  262.  
  263. new activity = get_cvar_num("amx_show_activity")
  264. if (activity != 0)
  265. {
  266.  
  267. }
  268. console_print(id, "JucaTorul %s a FosT banaT!", name2)
  269.  
  270. return PLUGIN_HANDLED
  271. }
  272.  
  273. public cmdSlay(id, level, cid)
  274. {
  275. if (!cmd_access(id, level, cid, 2))
  276. return PLUGIN_HANDLED
  277.  
  278. new arg[32]
  279.  
  280. read_argv(1, arg, 31)
  281.  
  282. new player = cmd_target(id, arg, 5)
  283.  
  284. if (!player)
  285. return PLUGIN_HANDLED
  286.  
  287. user_kill(player)
  288.  
  289. new authid[32], name2[32], authid2[32], name[32]
  290.  
  291. get_user_authid(id, authid, 31)
  292. get_user_name(id, name, 31)
  293. get_user_authid(player, authid2, 31)
  294. get_user_name(player, name2, 31)
  295.  
  296. log_amx("Cmd: ^"%s<%d><%s><>^" slay ^"%s<%d><%s><>^"", name, get_user_userid(id), authid, name2, get_user_userid(player), authid2)
  297.  
  298. switch (get_cvar_num("amx_show_activity"))
  299. {
  300. case 2: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_SLAY_2", name, name2)
  301. case 1: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_SLAY_1", name2)
  302. }
  303. console_print(id, "[AMXX] %L", id, "CLIENT_SLAYED", name2)
  304.  
  305. return PLUGIN_HANDLED
  306. }
  307.  
  308. public cmdSlap(id, level, cid)
  309. {
  310. if (!cmd_access(id, level, cid, 2))
  311. return PLUGIN_HANDLED
  312.  
  313. new arg[32]
  314.  
  315. read_argv(1, arg, 31)
  316. new player = cmd_target(id, arg, 5)
  317.  
  318. if (!player)
  319. return PLUGIN_HANDLED
  320.  
  321. new spower[32], authid[32], name2[32], authid2[32], name[32]
  322.  
  323. read_argv(2, spower, 31)
  324.  
  325. new damage = str_to_num(spower)
  326.  
  327. user_slap(player, damage)
  328.  
  329. get_user_authid(id, authid, 31)
  330. get_user_name(id, name, 31)
  331. get_user_authid(player, authid2, 31)
  332. get_user_name(player, name2, 31)
  333.  
  334. log_amx("Cmd: ^"%s<%d><%s><>^" slap with %d damage ^"%s<%d><%s><>^"", name, get_user_userid(id), authid, damage, name2, get_user_userid(player), authid2)
  335.  
  336. switch (get_cvar_num("amx_show_activity"))
  337. {
  338. case 2: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_SLAP_2", name, name2, damage)
  339. case 1: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_SLAP_1", name2, damage)
  340. }
  341. console_print(id, "[AMXX] %L", id, "CLIENT_SLAPED", name2, damage)
  342.  
  343. return PLUGIN_HANDLED
  344. }
  345.  
  346. public chMap(map[])
  347. {
  348. server_cmd("changelevel %s", map)
  349. }
  350.  
  351. public cmdMap(id, level, cid)
  352. {
  353. if (!cmd_access(id, level, cid, 2))
  354. return PLUGIN_HANDLED
  355.  
  356. new arg[32]
  357. new arglen = read_argv(1, arg, 31)
  358.  
  359. if (!is_map_valid(arg))
  360. {
  361. console_print(id, "[AMXX] %L", id, "MAP_NOT_FOUND")
  362. return PLUGIN_HANDLED
  363. }
  364.  
  365. new authid[32], name[32]
  366.  
  367. get_user_authid(id, authid, 31)
  368. get_user_name(id, name, 31)
  369.  
  370. switch (get_cvar_num("amx_show_activity"))
  371. {
  372. case 2: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_MAP_2", name, arg)
  373. case 1: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_MAP_1", arg)
  374. }
  375.  
  376. log_amx("Cmd: ^"%s<%d><%s><>^" changelevel ^"%s^"", name, get_user_userid(id), authid, arg)
  377.  
  378. new _modName[10]
  379. get_modname(_modName, 9)
  380.  
  381. if (!equal(_modName, "zp"))
  382. {
  383. message_begin(MSG_ALL, SVC_INTERMISSION)
  384. message_end()
  385. }
  386.  
  387. set_task(2.0, "chMap", 0, arg, arglen + 1)
  388.  
  389. return PLUGIN_HANDLED
  390. }
  391.  
  392. onlyRcon(name[])
  393. {
  394. for (new a = 0; a < g_cvarRconNum; ++a)
  395. if (equali(g_cvarRcon[a], name))
  396. return 1
  397. return 0
  398. }
  399.  
  400. public cmdCvar(id, level, cid)
  401. {
  402. if (!cmd_access(id, level, cid, 2))
  403. return PLUGIN_HANDLED
  404.  
  405. new arg[32], arg2[64]
  406.  
  407. read_argv(1, arg, 31)
  408. read_argv(2, arg2, 63)
  409.  
  410. if (equal(arg, "add") && (get_user_flags(id) & ADMIN_RCON))
  411. {
  412. if (cvar_exists(arg2))
  413. {
  414. if (g_cvarRconNum < MAXRCONCVARS)
  415. copy(g_cvarRcon[g_cvarRconNum++], 31, arg2)
  416. else
  417. console_print(id, "[AMXX] %L", id, "NO_MORE_CVARS")
  418. }
  419. return PLUGIN_HANDLED
  420. }
  421.  
  422. if (!cvar_exists(arg))
  423. {
  424. console_print(id, "[AMXX] %L", id, "UNKNOWN_CVAR", arg)
  425. return PLUGIN_HANDLED
  426. }
  427.  
  428. if (onlyRcon(arg) && !(get_user_flags(id) & ADMIN_RCON))
  429. {
  430. console_print(id, "[AMXX] %L", id, "CVAR_NO_ACC")
  431. return PLUGIN_HANDLED
  432. }
  433. else if (equal(arg, "sv_password") && !(get_user_flags(id) & ADMIN_PASSWORD))
  434. {
  435. console_print(id, "[AMXX] %L", id, "CVAR_NO_ACC")
  436. return PLUGIN_HANDLED
  437. }
  438.  
  439. if (read_argc() < 3)
  440. {
  441. get_cvar_string(arg, arg2, 63)
  442. console_print(id, "[AMXX] %L", id, "CVAR_IS", arg, arg2)
  443. return PLUGIN_HANDLED
  444. }
  445.  
  446. new authid[32], name[32]
  447.  
  448. get_user_authid(id, authid, 31)
  449. get_user_name(id, name, 31)
  450.  
  451. log_amx("Cmd: ^"%s<%d><%s><>^" set cvar (name ^"%s^") (value ^"%s^")", name, get_user_userid(id), authid, arg, arg2)
  452. set_cvar_string(arg, arg2)
  453.  
  454. new activity = get_cvar_num("amx_show_activity")
  455. if (activity != 0)
  456. {
  457. new players[32], pnum, admin[64], cvar_val[64], len
  458. get_players(players, pnum, "c")
  459.  
  460. for (new i = 0; i < pnum; i++)
  461. {
  462. len = format(admin, 255, "%L", players[i], "ADMIN")
  463.  
  464. if (activity == 1)
  465. len += copy(admin[len], 255-len, ":")
  466. else
  467. len += format(admin[len], 255-len, " %s:", name)
  468.  
  469. if (equal(arg, "rcon_password") || equal(arg, "sv_password"))
  470. format(cvar_val, 63, "*** %L ***", players[i], "PROTECTED")
  471. else
  472. copy(cvar_val, 63, arg2)
  473.  
  474. client_print(players[i], print_chat, "%L", players[i], "SET_CVAR_TO", name, arg, arg2)
  475. }
  476. }
  477. console_print(id, "[AMXX] %L", id, "CVAR_CHANGED", arg, arg2)
  478.  
  479. return PLUGIN_HANDLED
  480. }
  481.  
  482. public cmdPlugins(id, level, cid)
  483. {
  484. if (!cmd_access(id, level, cid, 1))
  485. return PLUGIN_HANDLED
  486.  
  487. new name[32], version[32], author[32], filename[32], status[32]
  488. new lName[32], lVersion[32], lAuthor[32], lFile[32], lStatus[32]
  489.  
  490. format(lName, 31, "%L", id, "NAME")
  491. format(lVersion, 31, "%L", id, "VERSION")
  492. format(lAuthor, 31, "%L", id, "AUTHOR")
  493. format(lFile, 31, "%L", id, "FILE")
  494. format(lStatus, 31, "%L", id, "STATUS")
  495.  
  496. new num = get_pluginsnum()
  497. new running = 0
  498.  
  499. console_print(id, "%L:", id, "LOADED_PLUGINS")
  500. console_print(id, "%-18.17s %-8.7s %-17.16s %-16.15s %-9.8s", lName, lVersion, lAuthor, lFile, lStatus)
  501.  
  502. for (new i = 0; i <num; i++)
  503. {
  504. get_plugin(i, filename, 31, name, 31, version, 31, author, 31, status, 31)
  505. console_print(id, "%-18.17s %-8.7s %-17.16s %-16.15s %-9.8s", name, version, author, filename, status)
  506.  
  507. if (status[0]=='d' || status[0]=='r') // "debug" or "running"
  508. running++
  509. }
  510. console_print(id, "%L", id, "PLUGINS_RUN", num, running)
  511.  
  512. return PLUGIN_HANDLED
  513. }
  514.  
  515. public cmdModules(id, level, cid)
  516. {
  517. if (!cmd_access(id, level, cid, 1))
  518. return PLUGIN_HANDLED
  519.  
  520. new name[32], version[32], author[32], status, sStatus[16]
  521. new lName[32], lVersion[32], lAuthor[32]
  522.  
  523. format(lName, 31, "%L", id, "NAME")
  524. format(lVersion, 31, "%L", id, "VERSION")
  525. format(lAuthor, 31, "%L", id, "AUTHOR")
  526.  
  527. new num = get_modulesnum()
  528.  
  529. console_print(id, "%L:", id, "LOADED_MODULES")
  530. console_print(id, "%-23.22s %-8.7s %-20.19s", lName, lVersion, lAuthor)
  531.  
  532. for (new i = 0; i < num; i++)
  533. {
  534. get_module(i, name, 31, author, 31, version, 31, status)
  535.  
  536. switch (status)
  537. {
  538. case module_loaded: copy(sStatus, 15, "running")
  539. default: copy(sStatus, 15, "error")
  540. }
  541.  
  542. console_print(id, "%-23.22s %-8.7s %-20.19s", name, version, author)
  543. }
  544. console_print(id, "%L", id, "NUM_MODULES", num)
  545.  
  546. return PLUGIN_HANDLED
  547. }
  548.  
  549. public cmdCfg(id, level, cid)
  550. {
  551. if (!cmd_access(id, level, cid, 2))
  552. return PLUGIN_HANDLED
  553.  
  554. new arg[128]
  555. read_argv(1, arg, 127)
  556.  
  557. if (!file_exists(arg))
  558. {
  559. console_print(id, "[AMXX] %L", id, "FILE_NOT_FOUND", arg)
  560. return PLUGIN_HANDLED
  561. }
  562.  
  563. new authid[32], name[32]
  564.  
  565. get_user_authid(id, authid, 31)
  566. get_user_name(id, name, 31)
  567.  
  568. log_amx("Cmd: ^"%s<%d><%s><>^" execute cfg (file ^"%s^")", name, get_user_userid(id), authid, arg)
  569.  
  570. console_print(id, "[AMXX] Executing file ^"%s^"", arg)
  571. server_cmd("exec %s", arg)
  572.  
  573. switch(get_cvar_num("amx_show_activity"))
  574. {
  575. case 2: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_CONF_2", name, arg)
  576. case 1: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_CONF_1", arg)
  577. }
  578.  
  579. return PLUGIN_HANDLED
  580. }
  581.  
  582. public cmdLBack()
  583. {
  584. if (!g_PauseAllowed)
  585. return PLUGIN_CONTINUE
  586.  
  587. new paused[25]
  588.  
  589. format(paused, 24, "%L", g_pauseCon, g_Paused ? "UNPAUSED" : "PAUSED")
  590. set_cvar_float("pausable", g_pausAble)
  591. console_print(g_pauseCon, "[AMXX] Server %s", paused)
  592. g_PauseAllowed = false
  593.  
  594. if (g_Paused)
  595. g_Paused = false
  596. else
  597. g_Paused = true
  598.  
  599. return PLUGIN_HANDLED
  600. }
  601.  
  602. public cmdPause(id, level, cid)
  603. {
  604. if (!cmd_access(id, level, cid, 1))
  605. return PLUGIN_HANDLED
  606.  
  607. new authid[32], name[32], slayer = id
  608.  
  609. get_user_authid(id, authid, 31)
  610. get_user_name(id, name, 31)
  611. g_pausAble = get_cvar_float("pausable")
  612.  
  613. if (!slayer)
  614. slayer = find_player("h")
  615.  
  616. if (!slayer)
  617. {
  618. console_print(id, "[AMXX] %L", id, "UNABLE_PAUSE")
  619. return PLUGIN_HANDLED
  620. }
  621.  
  622. set_cvar_float("pausable", 1.0)
  623. g_PauseAllowed = true
  624. client_cmd(slayer, "pause;pauseAck")
  625.  
  626. log_amx("Cmd: ^"%s<%d><%s><>^" %s server", name, get_user_userid(id), authid, g_Paused ? "unpause" : "pause")
  627.  
  628. console_print(id, "[AMXX] %L", id, g_Paused ? "UNPAUSING" : "PAUSING")
  629.  
  630. new activity = get_cvar_num("amx_show_activity")
  631. if (activity != 0)
  632. {
  633. new players[32], pnum, msg[128], len
  634. get_players(players, pnum, "c")
  635.  
  636. for (new i = 0; i < pnum; i++)
  637. {
  638. len = format(msg, 127, "%L", players[i], "ADMIN")
  639.  
  640. if (activity == 1)
  641. len += copy(msg[len], 127-len, ": ")
  642. else
  643. len += format(msg[len], 127-len, " %s: ", name)
  644.  
  645. format(msg[len], 127-len, "%L", players[i], g_Paused ? "UNPAUSE" : "PAUSE")
  646. client_print(players[i], print_chat, "%s server", msg)
  647. }
  648. }
  649. g_pauseCon = id
  650.  
  651. return PLUGIN_HANDLED
  652. }
  653.  
  654. public cmdShowRcon(id, level, cid)
  655. {
  656. if (!cmd_access(id, level, cid, 2))
  657. return PLUGIN_HANDLED
  658.  
  659. new password[64]
  660.  
  661. get_cvar_string("rcon_password", password, 63)
  662.  
  663. if (!password[0])
  664. {
  665. cmdRcon(id, level, cid)
  666. } else {
  667. new args[128]
  668.  
  669. read_args(args, 127)
  670. client_cmd(id, "rcon_password %s", password)
  671. client_cmd(id, "rcon %s", args)
  672. }
  673.  
  674. return PLUGIN_HANDLED
  675. }
  676.  
  677. public cmdRcon(id, level, cid)
  678. {
  679. if (!cmd_access(id, level, cid, 2))
  680. return PLUGIN_HANDLED
  681.  
  682. new arg[128], authid[32], name[32]
  683.  
  684. read_args(arg, 127)
  685. get_user_authid(id, authid, 31)
  686. get_user_name(id, name, 31)
  687.  
  688. log_amx("Cmd: ^"%s<%d><%s><>^" server console (cmdline ^"%s^")", name, get_user_userid(id), authid, arg)
  689.  
  690. console_print(id, "[AMXX] %L", id, "COM_SENT_SERVER", arg)
  691. server_cmd("%s", arg)
  692.  
  693. return PLUGIN_HANDLED
  694. }
  695.  
  696. public cmdWho(id, level, cid)
  697. {
  698. if (!cmd_access(id, level, cid, 1))
  699. return PLUGIN_HANDLED
  700.  
  701. new players[32], inum, cl_on_server[64], authid[32], name[32], flags, sflags[32]
  702. new lImm[16], lRes[16], lAccess[16], lYes[16], lNo[16]
  703.  
  704. format(lImm, 15, "%L", id, "IMMU")
  705. format(lRes, 15, "%L", id, "RESERV")
  706. format(lAccess, 15, "%L", id, "ACCESS")
  707. format(lYes, 15, "%L", id, "YES")
  708. format(lNo, 15, "%L", id, "NO")
  709.  
  710. get_players(players, inum)
  711. format(cl_on_server, 63, "%L", id, "CLIENTS_ON_SERVER")
  712. console_print(id, "^n%s:^n # %-16.15s %-20s %-8s %-4.3s %-4.3s %s", cl_on_server, "nick", "authid", "userid", lImm, lRes, lAccess)
  713.  
  714. for (new a = 0; a < inum; ++a)
  715. {
  716. get_user_authid(players[a], authid, 31)
  717. get_user_name(players[a], name, 31)
  718. flags = get_user_flags(players[a])
  719. get_flags(flags, sflags, 31)
  720. console_print(id, "%2d %-16.15s %-20s %-8d %-6.5s %-6.5s %s", players[a], name, authid,
  721. get_user_userid(players[a]), (flags&ADMIN_IMMUNITY) ? lYes : lNo, (flags&ADMIN_RESERVATION) ? lYes : lNo, sflags)
  722. }
  723.  
  724. console_print(id, "%L", id, "TOTAL_NUM", inum)
  725. get_user_authid(id, authid, 31)
  726. get_user_name(id, name, 31)
  727. log_amx("Cmd: ^"%s<%d><%s><>^" ask for players list", name, get_user_userid(id), authid)
  728.  
  729. return PLUGIN_HANDLED
  730. }
  731.  
  732. hasTag(name[], tags[4][32], tagsNum)
  733. {
  734. for (new a = 0; a < tagsNum; ++a)
  735. if (contain(name, tags[a]) != -1)
  736. return a
  737. return -1
  738. }
  739.  
  740. public cmdLeave(id, level, cid)
  741. {
  742. if (!cmd_access(id, level, cid, 2))
  743. return PLUGIN_HANDLED
  744.  
  745. new argnum = read_argc()
  746. new ltags[4][32]
  747. new ltagsnum = 0
  748.  
  749. for (new a = 1; a < 5; ++a)
  750. {
  751. if (a < argnum)
  752. read_argv(a, ltags[ltagsnum++], 31)
  753. else
  754. ltags[ltagsnum++][0] = 0
  755. }
  756.  
  757. new nick[32], ires, pnum = get_maxplayers() + 1, count = 0, lReason[128]
  758.  
  759. for (new b = 1; b < pnum; ++b)
  760. {
  761. if (!is_user_connected(b) && !is_user_connecting(b)) continue
  762.  
  763. get_user_name(b, nick, 31)
  764. ires = hasTag(nick, ltags, ltagsnum)
  765.  
  766. if (ires != -1)
  767. {
  768. console_print(id, "[AMXX] %L", id, "SKIP_MATCH", nick, ltags[ires])
  769. continue
  770. }
  771.  
  772. if (get_user_flags(b) & ADMIN_IMMUNITY)
  773. {
  774. console_print(id, "[AMXX] %L", id, "SKIP_IMM", nick)
  775. continue
  776. }
  777.  
  778. console_print(id, "[AMXX] %L", id, "KICK_PL", nick)
  779.  
  780. if (is_user_bot(b))
  781. server_cmd("kick #%d", get_user_userid(b))
  782. else
  783. {
  784. format(lReason, 127, "%L", b, "YOU_DROPPED")
  785. server_cmd("kick #%d ^"%s^"", get_user_userid(b), lReason)
  786. }
  787. count++
  788. }
  789.  
  790. console_print(id, "[AMXX] %L", id, "KICKED_CLIENTS", count)
  791.  
  792. new authid[32], name[32]
  793.  
  794. get_user_authid(id, authid, 31)
  795. get_user_name(id, name, 31)
  796. log_amx("Kick: ^"%s<%d><%s><>^" leave some group (tag1 ^"%s^") (tag2 ^"%s^") (tag3 ^"%s^") (tag4 ^"%s^")", name, get_user_userid(id), authid, ltags[0], ltags[1], ltags[2], ltags[3])
  797.  
  798. switch(get_cvar_num("amx_show_activity"))
  799. {
  800. case 2: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_LEAVE_2", name, ltags[0], ltags[1], ltags[2], ltags[3])
  801. case 1: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_LEAVE_1", ltags[0], ltags[1], ltags[2], ltags[3])
  802. }
  803.  
  804. return PLUGIN_HANDLED
  805. }
  806.  
  807. public cmdNick(id, level, cid)
  808. {
  809. if (!cmd_access(id, level, cid, 3))
  810. return PLUGIN_HANDLED
  811.  
  812. new arg1[32], arg2[32], authid[32], name[32], authid2[32], name2[32]
  813.  
  814. read_argv(1, arg1, 31)
  815. read_argv(2, arg2, 31)
  816.  
  817. new player = cmd_target(id, arg1, 1)
  818.  
  819. if (!player)
  820. return PLUGIN_HANDLED
  821.  
  822. get_user_authid(id, authid, 31)
  823. get_user_name(id, name, 31)
  824. get_user_authid(player, authid2, 31)
  825. get_user_name(player, name2, 31)
  826.  
  827. client_cmd(player, "name ^"%s^"", arg2)
  828.  
  829. log_amx("Cmd: ^"%s<%d><%s><>^" change nick to ^"%s^" ^"%s<%d><%s><>^"", name, get_user_userid(id), authid, arg2, name2, get_user_userid(player), authid2)
  830.  
  831. switch (get_cvar_num("amx_show_activity"))
  832. {
  833. case 2: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_NICK_2", name, name2, arg2)
  834. case 1: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_NICK_1", name2, arg2)
  835. }
  836. console_print(id, "[AMXX] %L", id, "CHANGED_NICK", name2, arg2)
  837.  
  838. return PLUGIN_HANDLED
  839. }
  840. stock print_color(const id, const input[], any:...)
  841. {
  842. new count = 1, players[32]
  843. static msg[191]
  844. vformat(msg, 190, input, 3)
  845.  
  846. replace_all(msg, 190, "!g", "^4")
  847. replace_all(msg, 190, "!y", "^1")
  848. replace_all(msg, 190, "!t", "^3")
  849.  
  850. if (id) players[0] = id; else get_players(players, count, "ch")
  851. {
  852. for (new i = 0; i < count; i++)
  853. {
  854. if (is_user_connected(players[i]))
  855. {
  856. message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
  857. write_byte(players[i])
  858. write_string(msg)
  859. message_end()
  860. }
  861. }
  862. }
  863. return PLUGIN_HANDLED
  864. }


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Javítás
HozzászólásElküldve: 2015.03.27. 12:41 
Offline
Jómunkásember
Avatar

Csatlakozott: 2014.09.27. 19:51
Hozzászólások: 411
Megköszönt másnak: 89 alkalommal
Megköszönték neki: 14 alkalommal
Tessék

SMA Forráskód: [ Mindet kijelol ]
  1. #include <amxmodx>
  2. #include <amxmisc>
  3.  
  4. #define MAXRCONCVARS 16
  5.  
  6. new g_cvarRcon[MAXRCONCVARS][32]
  7. new g_cvarRconNum
  8. new g_pauseCon
  9. new Float:g_pausAble
  10. new bool:g_Paused
  11. new bool:g_PauseAllowed = false
  12. new g_addCvar[] = "amx_cvar add %s"
  13.  
  14. public plugin_init()
  15. {
  16. register_plugin("Admin Commands", AMXX_VERSION_STR, "fdmarius")
  17. register_dictionary("admincmd.txt")
  18. register_dictionary("common.txt")
  19. register_concmd("amx_kick", "cmdKick", ADMIN_KICK, "<name or #userid> [reason]")
  20. register_concmd("amx_ban", "cmdBan", ADMIN_BAN, "<name or #userid> <minutes> [reason]")
  21. register_concmd("amx_banip", "cmdBanIP", ADMIN_BAN, "<name or #userid> <minutes> [reason]")
  22. register_concmd("amx_addban", "cmdAddBan", ADMIN_RCON, "<authid or ip> <minutes> [reason]")
  23. register_concmd("amx_unban", "cmdUnban", ADMIN_BAN, "<authid or ip>")
  24. register_concmd("amx_slay", "cmdSlay", ADMIN_SLAY, "<name or #userid>")
  25. register_concmd("amx_slap", "cmdSlap", ADMIN_SLAY, "<name or #userid> [power]")
  26. register_concmd("amx_leave", "cmdLeave", ADMIN_KICK, "<tag> [tag] [tag] [tag]")
  27. register_concmd("amx_pause", "cmdPause", ADMIN_CVAR, "- pause or unpause the game")
  28. register_concmd("amx_cvar", "cmdCvar", ADMIN_CVAR, "<cvar> [value]")
  29. register_concmd("amx_plugins", "cmdPlugins", ADMIN_ADMIN)
  30. register_concmd("amx_modules", "cmdModules", ADMIN_ADMIN)
  31. register_concmd("amx_map", "cmdMap", ADMIN_MAP, "<mapname>")
  32. register_concmd("amx_cfg", "cmdCfg", ADMIN_CFG, "<filename>")
  33. register_concmd("amx_nick", "cmdNick", ADMIN_SLAY, "<name or #userid> <new nick>")
  34. register_clcmd("amx_rcon", "cmdRcon", ADMIN_RCON, "<command line>")
  35. register_clcmd("amx_showrcon", "cmdShowRcon", ADMIN_RCON, "<command line>")
  36. register_clcmd("pauseAck", "cmdLBack")
  37. }
  38.  
  39. public plugin_cfg()
  40. {
  41. // Cvars which can be changed only with rcon access
  42. server_cmd(g_addCvar, "rcon_password")
  43. server_cmd(g_addCvar, "amx_show_activity")
  44. server_cmd(g_addCvar, "amx_mode")
  45. server_cmd(g_addCvar, "amx_password_field")
  46. server_cmd(g_addCvar, "amx_default_access")
  47. server_cmd(g_addCvar, "amx_reserved_slots")
  48. server_cmd(g_addCvar, "amx_reservation")
  49. server_cmd(g_addCvar, "amx_conmotd_file")
  50. }
  51.  
  52. public cmdKick(id, level, cid)
  53. {
  54. if (!cmd_access(id, level, cid, 2))
  55. return PLUGIN_HANDLED
  56.  
  57. new arg[32]
  58. read_argv(1, arg, 31)
  59. new player = cmd_target(id, arg, 1)
  60.  
  61. if (!player)
  62. return PLUGIN_HANDLED
  63.  
  64. new authid[32], authid2[32], name2[32], name[32], userid2, reason[32]
  65.  
  66. get_user_authid(id, authid, 31)
  67. get_user_authid(player, authid2, 31)
  68. get_user_name(player, name2, 31)
  69. get_user_name(id, name, 31)
  70. userid2 = get_user_userid(player)
  71. read_argv(2, reason, 31)
  72. remove_quotes(reason)
  73.  
  74. log_amx("Kick: ^"%s<%d><%s><>^" kick ^"%s<%d><%s><>^" (reason ^"%s^")", name, get_user_userid(id), authid, name2, userid2, authid2, reason)
  75.  
  76. switch (get_cvar_num("amx_show_activity"))
  77. {
  78. case 2: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_KICK_2", name, name2)
  79. case 1: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_KICK_1", name2)
  80. }
  81.  
  82. if (is_user_bot(player))
  83. server_cmd("kick #%d", userid2)
  84. else
  85. {
  86. if (reason[0])
  87. server_cmd("kick #%d ^"%s^"", userid2, reason)
  88. else
  89. server_cmd("kick #%d", userid2)
  90. }
  91.  
  92. console_print(id, "[AMXX] Client ^"%s^" kicked", name2)
  93.  
  94. return PLUGIN_HANDLED
  95. }
  96.  
  97. public cmdUnban(id, level, cid)
  98. {
  99. if (!cmd_access(id, level, cid, 2))
  100. return PLUGIN_HANDLED
  101.  
  102. new arg[32], authid[32], name[32]
  103.  
  104. read_argv(1, arg, 31)
  105.  
  106. if (contain(arg, ".") != -1)
  107. {
  108. server_cmd("removeip ^"%s^";writeip", arg)
  109. console_print(id, "[AMXX] %L", id, "IP_REMOVED", arg)
  110. } else {
  111. server_cmd("removeid %s;writeid", arg)
  112. console_print(id, "[AMXX] %L", id, "AUTHID_REMOVED", arg)
  113. }
  114.  
  115. get_user_name(id, name, 31)
  116.  
  117. switch (get_cvar_num("amx_show_activity"))
  118. {
  119. case 2: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_UNBAN_2", name, arg)
  120. case 1: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_UNBAN_1", arg)
  121. }
  122.  
  123. get_user_authid(id, authid, 31)
  124. log_amx("Cmd: ^"%s<%d><%s><>^" unban ^"%s^"", name, get_user_userid(id), authid, arg)
  125.  
  126. return PLUGIN_HANDLED
  127. }
  128.  
  129. public cmdAddBan(id, level, cid)
  130. {
  131. if (!cmd_access(id, level, cid, 3))
  132. return PLUGIN_HANDLED
  133.  
  134. new arg[32], authid[32], name[32], minutes[32], reason[32]
  135.  
  136. read_argv(1, arg, 31)
  137. read_argv(2, minutes, 31)
  138. read_argv(3, reason, 31)
  139.  
  140. if (contain(arg, ".") != -1)
  141. {
  142. server_cmd("addip ^"%s^" ^"%s^";wait;writeip", minutes, arg)
  143. console_print(id, "[AMXX] Ip ^"%s^" added to ban list", arg)
  144. } else {
  145. server_cmd("banid ^"%s^" ^"%s^";wait;writeid", minutes, arg)
  146. console_print(id, "[AMXX] Authid ^"%s^" added to ban list", arg)
  147. }
  148.  
  149. get_user_name(id, name, 31)
  150.  
  151. switch (get_cvar_num("amx_show_activity"))
  152. {
  153. case 2: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_ADDBAN_2", name, arg)
  154. case 1: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_ADDBAN_1", arg)
  155. }
  156.  
  157. get_user_authid(id, authid, 31)
  158. log_amx("Cmd: ^"%s<%d><%s><>^" ban ^"%s^" (minutes ^"%s^") (reason ^"%s^")", name, get_user_userid(id), authid, arg, minutes, reason)
  159.  
  160. return PLUGIN_HANDLED
  161. }
  162.  
  163. public cmdBan(id, level, cid)
  164. {
  165. if (!cmd_access(id, level, cid, 3))
  166. return PLUGIN_HANDLED
  167.  
  168. new target[32], minutes[8], reason[64]
  169.  
  170. read_argv(1, target, 31)
  171. read_argv(2, minutes, 7)
  172. read_argv(3, reason, 63)
  173.  
  174. new player = cmd_target(id, target, 9)
  175.  
  176. if (!player)
  177. return PLUGIN_HANDLED
  178.  
  179. new authid[32], name2[32], authid2[32], name[32]
  180. new userid2 = get_user_userid(player)
  181.  
  182. get_user_authid(player, authid2, 31)
  183. get_user_authid(id, authid, 31)
  184. get_user_name(player, name2, 31)
  185. get_user_name(id, name, 31)
  186.  
  187.  
  188. new temp[64], banned[16], nNum = str_to_num(minutes)
  189. if (nNum)
  190. format(temp, 63, "Bant Kaptál %s Percre!", minutes)
  191. else
  192. format(temp, 63, "Örökre Bannolva lettél Skype:quex.szili", player, "PERM")
  193. format(banned, 15, "", player, "BANNED")
  194.  
  195. new address[32]
  196. get_user_ip(player, address, 31, 1)
  197.  
  198. if (reason[0])
  199. server_cmd("kick #%d ^"%s (%s %s)^";wait;addip ^"%s^" ^"%s^";wait;writeip", userid2, reason, banned, temp, minutes, address)
  200. else
  201. server_cmd("kick #%d ^"%s %s^";wait;addip ^"%s^" ^"%s^";wait;writeip", userid2, banned, temp, minutes, address)
  202.  
  203. new pl[32];
  204. get_user_name(player, pl, 31)
  205. client_print(id, print_chat, "!yADMIN!g %s!y: banolta!g %s!yt!g %s!y Perc. Ok:!g ( %s )", name, pl, minutes, reason)
  206. client_cmd(player, "wait;snapshot;wait");
  207.  
  208. new activity = get_cvar_num("amx_show_activity")
  209. if (activity != 0)
  210. {
  211.  
  212. }
  213. console_print(id, "Jucatorul %s a fost banat", name2)
  214.  
  215. return PLUGIN_HANDLED
  216. }
  217.  
  218. public cmdBanIP(id, level, cid)
  219. {
  220. if (!cmd_access(id, level, cid, 3))
  221. return PLUGIN_HANDLED
  222.  
  223. new target[32], minutes[8], reason[64]
  224.  
  225. read_argv(1, target, 31)
  226. read_argv(2, minutes, 7)
  227. read_argv(3, reason, 63)
  228.  
  229. new player = cmd_target(id, target, 9)
  230.  
  231. if (!player)
  232. return PLUGIN_HANDLED
  233.  
  234. new authid[32], name2[32], authid2[32], name[32]
  235. new userid2 = get_user_userid(player)
  236.  
  237. get_user_authid(player, authid2, 31)
  238. get_user_authid(id, authid, 31)
  239. get_user_name(player, name2, 31)
  240. get_user_name(id, name, 31)
  241.  
  242.  
  243. new temp[64], banned[16], nNum = str_to_num(minutes)
  244. if (nNum)
  245. format(temp, 63, "Ai primit ban pentru %s minute", minutes)
  246. else
  247. format(temp, 63, "Ai primit ban permanent", player, "PERM")
  248. format(banned, 15, "", player, "BANNED")
  249.  
  250. new address[32]
  251. get_user_ip(player, address, 31, 1)
  252.  
  253. if (reason[0])
  254. server_cmd("kick #%d ^"%s (%s %s)^";wait;addip ^"%s^" ^"%s^";wait;writeip", userid2, reason, banned, temp, minutes, address)
  255. else
  256. server_cmd("kick #%d ^"%s %s^";wait;addip ^"%s^" ^"%s^";wait;writeip", userid2, banned, temp, minutes, address)
  257.  
  258. new pl[32];
  259. get_user_name(player, pl, 31)
  260. client_print(id, print_chat, "!yADMIN!g %s!y: banolta Ipre!g %s!yt!g %s!y Perc. Ok:!g ( %s )", name, pl, minutes, reason)
  261. client_cmd(player, "wait;snapshot;wait");
  262.  
  263. new activity = get_cvar_num("amx_show_activity")
  264. if (activity != 0)
  265. {
  266.  
  267. }
  268. console_print(id, "JucaTorul %s a FosT banaT!", name2)
  269.  
  270. return PLUGIN_HANDLED
  271. }
  272.  
  273. public cmdSlay(id, level, cid)
  274. {
  275. if (!cmd_access(id, level, cid, 2))
  276. return PLUGIN_HANDLED
  277.  
  278. new arg[32]
  279.  
  280. read_argv(1, arg, 31)
  281.  
  282. new player = cmd_target(id, arg, 5)
  283.  
  284. if (!player)
  285. return PLUGIN_HANDLED
  286.  
  287. user_kill(player)
  288.  
  289. new authid[32], name2[32], authid2[32], name[32]
  290.  
  291. get_user_authid(id, authid, 31)
  292. get_user_name(id, name, 31)
  293. get_user_authid(player, authid2, 31)
  294. get_user_name(player, name2, 31)
  295.  
  296. log_amx("Cmd: ^"%s<%d><%s><>^" slay ^"%s<%d><%s><>^"", name, get_user_userid(id), authid, name2, get_user_userid(player), authid2)
  297.  
  298. switch (get_cvar_num("amx_show_activity"))
  299. {
  300. case 2: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_SLAY_2", name, name2)
  301. case 1: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_SLAY_1", name2)
  302. }
  303. console_print(id, "[AMXX] %L", id, "CLIENT_SLAYED", name2)
  304.  
  305. return PLUGIN_HANDLED
  306. }
  307.  
  308. public cmdSlap(id, level, cid)
  309. {
  310. if (!cmd_access(id, level, cid, 2))
  311. return PLUGIN_HANDLED
  312.  
  313. new arg[32]
  314.  
  315. read_argv(1, arg, 31)
  316. new player = cmd_target(id, arg, 5)
  317.  
  318. if (!player)
  319. return PLUGIN_HANDLED
  320.  
  321. new spower[32], authid[32], name2[32], authid2[32], name[32]
  322.  
  323. read_argv(2, spower, 31)
  324.  
  325. new damage = str_to_num(spower)
  326.  
  327. user_slap(player, damage)
  328.  
  329. get_user_authid(id, authid, 31)
  330. get_user_name(id, name, 31)
  331. get_user_authid(player, authid2, 31)
  332. get_user_name(player, name2, 31)
  333.  
  334. log_amx("Cmd: ^"%s<%d><%s><>^" slap with %d damage ^"%s<%d><%s><>^"", name, get_user_userid(id), authid, damage, name2, get_user_userid(player), authid2)
  335.  
  336. switch (get_cvar_num("amx_show_activity"))
  337. {
  338. case 2: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_SLAP_2", name, name2, damage)
  339. case 1: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_SLAP_1", name2, damage)
  340. }
  341. console_print(id, "[AMXX] %L", id, "CLIENT_SLAPED", name2, damage)
  342.  
  343. return PLUGIN_HANDLED
  344. }
  345.  
  346. public chMap(map[])
  347. {
  348. server_cmd("changelevel %s", map)
  349. }
  350.  
  351. public cmdMap(id, level, cid)
  352. {
  353. if (!cmd_access(id, level, cid, 2))
  354. return PLUGIN_HANDLED
  355.  
  356. new arg[32]
  357. new arglen = read_argv(1, arg, 31)
  358.  
  359. if (!is_map_valid(arg))
  360. {
  361. console_print(id, "[AMXX] %L", id, "MAP_NOT_FOUND")
  362. return PLUGIN_HANDLED
  363. }
  364.  
  365. new authid[32], name[32]
  366.  
  367. get_user_authid(id, authid, 31)
  368. get_user_name(id, name, 31)
  369.  
  370. switch (get_cvar_num("amx_show_activity"))
  371. {
  372. case 2: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_MAP_2", name, arg)
  373. case 1: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_MAP_1", arg)
  374. }
  375.  
  376. log_amx("Cmd: ^"%s<%d><%s><>^" changelevel ^"%s^"", name, get_user_userid(id), authid, arg)
  377.  
  378. new _modName[10]
  379. get_modname(_modName, 9)
  380.  
  381. if (!equal(_modName, "zp"))
  382. {
  383. message_begin(MSG_ALL, SVC_INTERMISSION)
  384. message_end()
  385. }
  386.  
  387. set_task(2.0, "chMap", 0, arg, arglen + 1)
  388.  
  389. return PLUGIN_HANDLED
  390. }
  391.  
  392. onlyRcon(name[])
  393. {
  394. for (new a = 0; a < g_cvarRconNum; ++a)
  395. if (equali(g_cvarRcon[a], name))
  396. return 1
  397. return 0
  398. }
  399.  
  400. public cmdCvar(id, level, cid)
  401. {
  402. if (!cmd_access(id, level, cid, 2))
  403. return PLUGIN_HANDLED
  404.  
  405. new arg[32], arg2[64]
  406.  
  407. read_argv(1, arg, 31)
  408. read_argv(2, arg2, 63)
  409.  
  410. if (equal(arg, "add") && (get_user_flags(id) & ADMIN_RCON))
  411. {
  412. if (cvar_exists(arg2))
  413. {
  414. if (g_cvarRconNum < MAXRCONCVARS)
  415. copy(g_cvarRcon[g_cvarRconNum++], 31, arg2)
  416. else
  417. console_print(id, "[AMXX] %L", id, "NO_MORE_CVARS")
  418. }
  419. return PLUGIN_HANDLED
  420. }
  421.  
  422. if (!cvar_exists(arg))
  423. {
  424. console_print(id, "[AMXX] %L", id, "UNKNOWN_CVAR", arg)
  425. return PLUGIN_HANDLED
  426. }
  427.  
  428. if (onlyRcon(arg) && !(get_user_flags(id) & ADMIN_RCON))
  429. {
  430. console_print(id, "[AMXX] %L", id, "CVAR_NO_ACC")
  431. return PLUGIN_HANDLED
  432. }
  433. else if (equal(arg, "sv_password") && !(get_user_flags(id) & ADMIN_PASSWORD))
  434. {
  435. console_print(id, "[AMXX] %L", id, "CVAR_NO_ACC")
  436. return PLUGIN_HANDLED
  437. }
  438.  
  439. if (read_argc() < 3)
  440. {
  441. get_cvar_string(arg, arg2, 63)
  442. console_print(id, "[AMXX] %L", id, "CVAR_IS", arg, arg2)
  443. return PLUGIN_HANDLED
  444. }
  445.  
  446. new authid[32], name[32]
  447.  
  448. get_user_authid(id, authid, 31)
  449. get_user_name(id, name, 31)
  450.  
  451. log_amx("Cmd: ^"%s<%d><%s><>^" set cvar (name ^"%s^") (value ^"%s^")", name, get_user_userid(id), authid, arg, arg2)
  452. set_cvar_string(arg, arg2)
  453.  
  454. new activity = get_cvar_num("amx_show_activity")
  455. if (activity != 0)
  456. {
  457. new players[32], pnum, admin[64], cvar_val[64], len
  458. get_players(players, pnum, "c")
  459.  
  460. for (new i = 0; i < pnum; i++)
  461. {
  462. len = format(admin, 255, "%L", players[i], "ADMIN")
  463.  
  464. if (activity == 1)
  465. len += copy(admin[len], 255-len, ":")
  466. else
  467. len += format(admin[len], 255-len, " %s:", name)
  468.  
  469. if (equal(arg, "rcon_password") || equal(arg, "sv_password"))
  470. format(cvar_val, 63, "*** %L ***", players[i], "PROTECTED")
  471. else
  472. copy(cvar_val, 63, arg2)
  473.  
  474. client_print(players[i], print_chat, "%L", players[i], "SET_CVAR_TO", name, arg, arg2)
  475. }
  476. }
  477. console_print(id, "[AMXX] %L", id, "CVAR_CHANGED", arg, arg2)
  478.  
  479. return PLUGIN_HANDLED
  480. }
  481.  
  482. public cmdPlugins(id, level, cid)
  483. {
  484. if (!cmd_access(id, level, cid, 1))
  485. return PLUGIN_HANDLED
  486.  
  487. new name[32], version[32], author[32], filename[32], status[32]
  488. new lName[32], lVersion[32], lAuthor[32], lFile[32], lStatus[32]
  489.  
  490. format(lName, 31, "%L", id, "NAME")
  491. format(lVersion, 31, "%L", id, "VERSION")
  492. format(lAuthor, 31, "%L", id, "AUTHOR")
  493. format(lFile, 31, "%L", id, "FILE")
  494. format(lStatus, 31, "%L", id, "STATUS")
  495.  
  496. new num = get_pluginsnum()
  497. new running = 0
  498.  
  499. console_print(id, "%L:", id, "LOADED_PLUGINS")
  500. console_print(id, "%-18.17s %-8.7s %-17.16s %-16.15s %-9.8s", lName, lVersion, lAuthor, lFile, lStatus)
  501.  
  502. for (new i = 0; i <num; i++)
  503. {
  504. get_plugin(i, filename, 31, name, 31, version, 31, author, 31, status, 31)
  505. console_print(id, "%-18.17s %-8.7s %-17.16s %-16.15s %-9.8s", name, version, author, filename, status)
  506.  
  507. if (status[0]=='d' || status[0]=='r') // "debug" or "running"
  508. running++
  509. }
  510. console_print(id, "%L", id, "PLUGINS_RUN", num, running)
  511.  
  512. return PLUGIN_HANDLED
  513. }
  514.  
  515. public cmdModules(id, level, cid)
  516. {
  517. if (!cmd_access(id, level, cid, 1))
  518. return PLUGIN_HANDLED
  519.  
  520. new name[32], version[32], author[32], status, sStatus[16]
  521. new lName[32], lVersion[32], lAuthor[32]
  522.  
  523. format(lName, 31, "%L", id, "NAME")
  524. format(lVersion, 31, "%L", id, "VERSION")
  525. format(lAuthor, 31, "%L", id, "AUTHOR")
  526.  
  527. new num = get_modulesnum()
  528.  
  529. console_print(id, "%L:", id, "LOADED_MODULES")
  530. console_print(id, "%-23.22s %-8.7s %-20.19s", lName, lVersion, lAuthor)
  531.  
  532. for (new i = 0; i < num; i++)
  533. {
  534. get_module(i, name, 31, author, 31, version, 31, status)
  535.  
  536. switch (status)
  537. {
  538. case module_loaded: copy(sStatus, 15, "running")
  539. default: copy(sStatus, 15, "error")
  540. }
  541.  
  542. console_print(id, "%-23.22s %-8.7s %-20.19s", name, version, author)
  543. }
  544. console_print(id, "%L", id, "NUM_MODULES", num)
  545.  
  546. return PLUGIN_HANDLED
  547. }
  548.  
  549. public cmdCfg(id, level, cid)
  550. {
  551. if (!cmd_access(id, level, cid, 2))
  552. return PLUGIN_HANDLED
  553.  
  554. new arg[128]
  555. read_argv(1, arg, 127)
  556.  
  557. if (!file_exists(arg))
  558. {
  559. console_print(id, "[AMXX] %L", id, "FILE_NOT_FOUND", arg)
  560. return PLUGIN_HANDLED
  561. }
  562.  
  563. new authid[32], name[32]
  564.  
  565. get_user_authid(id, authid, 31)
  566. get_user_name(id, name, 31)
  567.  
  568. log_amx("Cmd: ^"%s<%d><%s><>^" execute cfg (file ^"%s^")", name, get_user_userid(id), authid, arg)
  569.  
  570. console_print(id, "[AMXX] Executing file ^"%s^"", arg)
  571. server_cmd("exec %s", arg)
  572.  
  573. switch(get_cvar_num("amx_show_activity"))
  574. {
  575. case 2: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_CONF_2", name, arg)
  576. case 1: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_CONF_1", arg)
  577. }
  578.  
  579. return PLUGIN_HANDLED
  580. }
  581.  
  582. public cmdLBack()
  583. {
  584. if (!g_PauseAllowed)
  585. return PLUGIN_CONTINUE
  586.  
  587. new paused[25]
  588.  
  589. format(paused, 24, "%L", g_pauseCon, g_Paused ? "UNPAUSED" : "PAUSED")
  590. set_cvar_float("pausable", g_pausAble)
  591. console_print(g_pauseCon, "[AMXX] Server %s", paused)
  592. g_PauseAllowed = false
  593.  
  594. if (g_Paused)
  595. g_Paused = false
  596. else
  597. g_Paused = true
  598.  
  599. return PLUGIN_HANDLED
  600. }
  601.  
  602. public cmdPause(id, level, cid)
  603. {
  604. if (!cmd_access(id, level, cid, 1))
  605. return PLUGIN_HANDLED
  606.  
  607. new authid[32], name[32], slayer = id
  608.  
  609. get_user_authid(id, authid, 31)
  610. get_user_name(id, name, 31)
  611. g_pausAble = get_cvar_float("pausable")
  612.  
  613. if (!slayer)
  614. slayer = find_player("h")
  615.  
  616. if (!slayer)
  617. {
  618. console_print(id, "[AMXX] %L", id, "UNABLE_PAUSE")
  619. return PLUGIN_HANDLED
  620. }
  621.  
  622. set_cvar_float("pausable", 1.0)
  623. g_PauseAllowed = true
  624. client_cmd(slayer, "pause;pauseAck")
  625.  
  626. log_amx("Cmd: ^"%s<%d><%s><>^" %s server", name, get_user_userid(id), authid, g_Paused ? "unpause" : "pause")
  627.  
  628. console_print(id, "[AMXX] %L", id, g_Paused ? "UNPAUSING" : "PAUSING")
  629.  
  630. new activity = get_cvar_num("amx_show_activity")
  631. if (activity != 0)
  632. {
  633. new players[32], pnum, msg[128], len
  634. get_players(players, pnum, "c")
  635.  
  636. for (new i = 0; i < pnum; i++)
  637. {
  638. len = format(msg, 127, "%L", players[i], "ADMIN")
  639.  
  640. if (activity == 1)
  641. len += copy(msg[len], 127-len, ": ")
  642. else
  643. len += format(msg[len], 127-len, " %s: ", name)
  644.  
  645. format(msg[len], 127-len, "%L", players[i], g_Paused ? "UNPAUSE" : "PAUSE")
  646. client_print(players[i], print_chat, "%s server", msg)
  647. }
  648. }
  649. g_pauseCon = id
  650.  
  651. return PLUGIN_HANDLED
  652. }
  653.  
  654. public cmdShowRcon(id, level, cid)
  655. {
  656. if (!cmd_access(id, level, cid, 2))
  657. return PLUGIN_HANDLED
  658.  
  659. new password[64]
  660.  
  661. get_cvar_string("rcon_password", password, 63)
  662.  
  663. if (!password[0])
  664. {
  665. cmdRcon(id, level, cid)
  666. } else {
  667. new args[128]
  668.  
  669. read_args(args, 127)
  670. client_cmd(id, "rcon_password %s", password)
  671. client_cmd(id, "rcon %s", args)
  672. }
  673.  
  674. return PLUGIN_HANDLED
  675. }
  676.  
  677. public cmdRcon(id, level, cid)
  678. {
  679. if (!cmd_access(id, level, cid, 2))
  680. return PLUGIN_HANDLED
  681.  
  682. new arg[128], authid[32], name[32]
  683.  
  684. read_args(arg, 127)
  685. get_user_authid(id, authid, 31)
  686. get_user_name(id, name, 31)
  687.  
  688. log_amx("Cmd: ^"%s<%d><%s><>^" server console (cmdline ^"%s^")", name, get_user_userid(id), authid, arg)
  689.  
  690. console_print(id, "[AMXX] %L", id, "COM_SENT_SERVER", arg)
  691. server_cmd("%s", arg)
  692.  
  693. return PLUGIN_HANDLED
  694. }
  695.  
  696. public cmdWho(id, level, cid)
  697. {
  698. if (!cmd_access(id, level, cid, 1))
  699. return PLUGIN_HANDLED
  700.  
  701. new players[32], inum, cl_on_server[64], authid[32], name[32], flags, sflags[32]
  702. new lImm[16], lRes[16], lAccess[16], lYes[16], lNo[16]
  703.  
  704. format(lImm, 15, "%L", id, "IMMU")
  705. format(lRes, 15, "%L", id, "RESERV")
  706. format(lAccess, 15, "%L", id, "ACCESS")
  707. format(lYes, 15, "%L", id, "YES")
  708. format(lNo, 15, "%L", id, "NO")
  709.  
  710. get_players(players, inum)
  711. format(cl_on_server, 63, "%L", id, "CLIENTS_ON_SERVER")
  712. console_print(id, "^n%s:^n # %-16.15s %-20s %-8s %-4.3s %-4.3s %s", cl_on_server, "nick", "authid", "userid", lImm, lRes, lAccess)
  713.  
  714. for (new a = 0; a < inum; ++a)
  715. {
  716. get_user_authid(players[a], authid, 31)
  717. get_user_name(players[a], name, 31)
  718. flags = get_user_flags(players[a])
  719. get_flags(flags, sflags, 31)
  720. console_print(id, "%2d %-16.15s %-20s %-8d %-6.5s %-6.5s %s", players[a], name, authid,
  721. get_user_userid(players[a]), (flags&ADMIN_IMMUNITY) ? lYes : lNo, (flags&ADMIN_RESERVATION) ? lYes : lNo, sflags)
  722. }
  723.  
  724. console_print(id, "%L", id, "TOTAL_NUM", inum)
  725. get_user_authid(id, authid, 31)
  726. get_user_name(id, name, 31)
  727. log_amx("Cmd: ^"%s<%d><%s><>^" ask for players list", name, get_user_userid(id), authid)
  728.  
  729. return PLUGIN_HANDLED
  730. }
  731.  
  732. hasTag(name[], tags[4][32], tagsNum)
  733. {
  734. for (new a = 0; a < tagsNum; ++a)
  735. if (contain(name, tags[a]) != -1)
  736. return a
  737. return -1
  738. }
  739.  
  740. public cmdLeave(id, level, cid)
  741. {
  742. if (!cmd_access(id, level, cid, 2))
  743. return PLUGIN_HANDLED
  744.  
  745. new argnum = read_argc()
  746. new ltags[4][32]
  747. new ltagsnum = 0
  748.  
  749. for (new a = 1; a < 5; ++a)
  750. {
  751. if (a < argnum)
  752. read_argv(a, ltags[ltagsnum++], 31)
  753. else
  754. ltags[ltagsnum++][0] = 0
  755. }
  756.  
  757. new nick[32], ires, pnum = get_maxplayers() + 1, count = 0, lReason[128]
  758.  
  759. for (new b = 1; b < pnum; ++b)
  760. {
  761. if (!is_user_connected(b) && !is_user_connecting(b)) continue
  762.  
  763. get_user_name(b, nick, 31)
  764. ires = hasTag(nick, ltags, ltagsnum)
  765.  
  766. if (ires != -1)
  767. {
  768. console_print(id, "[AMXX] %L", id, "SKIP_MATCH", nick, ltags[ires])
  769. continue
  770. }
  771.  
  772. if (get_user_flags(b) & ADMIN_IMMUNITY)
  773. {
  774. console_print(id, "[AMXX] %L", id, "SKIP_IMM", nick)
  775. continue
  776. }
  777.  
  778. console_print(id, "[AMXX] %L", id, "KICK_PL", nick)
  779.  
  780. if (is_user_bot(b))
  781. server_cmd("kick #%d", get_user_userid(b))
  782. else
  783. {
  784. format(lReason, 127, "%L", b, "YOU_DROPPED")
  785. server_cmd("kick #%d ^"%s^"", get_user_userid(b), lReason)
  786. }
  787. count++
  788. }
  789.  
  790. console_print(id, "[AMXX] %L", id, "KICKED_CLIENTS", count)
  791.  
  792. new authid[32], name[32]
  793.  
  794. get_user_authid(id, authid, 31)
  795. get_user_name(id, name, 31)
  796. log_amx("Kick: ^"%s<%d><%s><>^" leave some group (tag1 ^"%s^") (tag2 ^"%s^") (tag3 ^"%s^") (tag4 ^"%s^")", name, get_user_userid(id), authid, ltags[0], ltags[1], ltags[2], ltags[3])
  797.  
  798. switch(get_cvar_num("amx_show_activity"))
  799. {
  800. case 2: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_LEAVE_2", name, ltags[0], ltags[1], ltags[2], ltags[3])
  801. case 1: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_LEAVE_1", ltags[0], ltags[1], ltags[2], ltags[3])
  802. }
  803.  
  804. return PLUGIN_HANDLED
  805. }
  806.  
  807. public cmdNick(id, level, cid)
  808. {
  809. if (!cmd_access(id, level, cid, 3))
  810. return PLUGIN_HANDLED
  811.  
  812. new arg1[32], arg2[32], authid[32], name[32], authid2[32], name2[32]
  813.  
  814. read_argv(1, arg1, 31)
  815. read_argv(2, arg2, 31)
  816.  
  817. new player = cmd_target(id, arg1, 1)
  818.  
  819. if (!player)
  820. return PLUGIN_HANDLED
  821.  
  822. get_user_authid(id, authid, 31)
  823. get_user_name(id, name, 31)
  824. get_user_authid(player, authid2, 31)
  825. get_user_name(player, name2, 31)
  826.  
  827. client_cmd(player, "name ^"%s^"", arg2)
  828.  
  829. log_amx("Cmd: ^"%s<%d><%s><>^" change nick to ^"%s^" ^"%s<%d><%s><>^"", name, get_user_userid(id), authid, arg2, name2, get_user_userid(player), authid2)
  830.  
  831. switch (get_cvar_num("amx_show_activity"))
  832. {
  833. case 2: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_NICK_2", name, name2, arg2)
  834. case 1: client_print(0, print_chat, "%L", LANG_PLAYER, "ADMIN_NICK_1", name2, arg2)
  835. }
  836. console_print(id, "[AMXX] %L", id, "CHANGED_NICK", name2, arg2)
  837.  
  838. return PLUGIN_HANDLED
  839. }
  840. stock print_color(const id, const input[], any:...)
  841. {
  842. new count = 1, players[32]
  843. static msg[191]
  844. vformat(msg, 190, input, 3)
  845.  
  846. replace_all(msg, 190, "!g", "^4")
  847. replace_all(msg, 190, "!y", "^1")
  848. replace_all(msg, 190, "!t", "^3")
  849.  
  850. if (id) players[0] = id; else get_players(players, count, "ch")
  851. {
  852. for (new i = 0; i < count; i++)
  853. {
  854. if (is_user_connected(players[i]))
  855. {
  856. message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
  857. write_byte(players[i])
  858. write_string(msg)
  859. message_end()
  860. }
  861. }
  862. }
  863. return PLUGIN_HANDLED
  864. }

 A hiba itt volt
SMA Forráskód: [ Mindet kijelol ]
  1. case 1: client_print(0, print_chat, ""%L", LANG_PLAYER, "ADMIN_ADDBAN_1", arg)


A hozzászólást 2 alkalommal szerkesztették, utoljára Zeei 2015.03.27. 15:09-kor.
DUPLAPOSZT! KERÜLJÜK!


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  [ 2 hozzászólás ] 


Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 172 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