Advertisement
Guest User

Untitled

a guest
Feb 16th, 2023
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 24.76 KB | None | 0 0
  1. /* Plugin generated by AMXX-Studio */
  2.  
  3. //=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=//
  4. //=-=-=-=-= DD2 Silnik by N1K1Cz /\^-^/\ =-=-=-=-=//
  5. //=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=//
  6. //=-=-=-=-= Wersje: =-=-=-=-=//
  7. //=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=//
  8. //=-=-=-=-= 1.0 - Wydanie pluginu =-=-=-=-=//
  9. //=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=//
  10.  
  11. #include <amxmodx>
  12. #include <amxmisc>
  13. #include <csx>
  14. #include <fakemeta>
  15. #include <nvault>
  16. #include <ColorChat>
  17.  
  18. #define PLUGIN "DD2 Silnik" // ZAKAZ EDYCJI
  19. #define VERSION "1.0" // ZAKAZ EDYCJI
  20. #define AUTHOR "N1K1Cz | AmxxPro.pl" // ZAKAZ EDYCJI
  21.  
  22. #define MAX 32
  23. #define TASK 672
  24. #define prefix "HUD"
  25. #define TAG "*SILNIK*" //do zmiany ;)
  26.  
  27. #define TASK_SHOW_HUD 36050
  28. #define TASK_SHOW_CHAT 36070
  29.  
  30. new bool:bHud[MAX+1];
  31. new nazwa_gracza[33][64];
  32.  
  33. //=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=//
  34. //=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=Wlasny HUD=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-//
  35. //=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=//
  36. new HudGracza[33][3];
  37. enum {R,G,B};
  38.  
  39. new standardowe_ustawienia[3] = {255,255,255};
  40. new HudZiel[3] = {0,255,0};
  41. new HudRed[3] = {255,0,0};
  42. new HudBlue[3] = {0, 150, 255};
  43. new HudYell[3] = {255, 255, 0};
  44. new HudRoz[3] = {255, 0, 255};
  45. new vault_hud;
  46.  
  47. new const ile_pkt[] = { 1, 5, 20, 50 }
  48. new hud_rozdania[33];
  49.  
  50. //=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=//
  51. //=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=Kontakt=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=//
  52. //=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=//
  53.  
  54. #define ForFile(%1,%2,%3,%4,%5) for(new %1 = 0; read_file(%2, %1, %3, %4, %5); %1++)
  55. #define ForDynamicArray(%1,%2) for(new %1 = 0; %1 < ArraySize(%2); %1++)
  56.  
  57. new const filePath[] = "addons/amxmodx/configs/kontakt.ini";
  58. new const chatPrefix[] = "[Kontakt]";
  59. new Array:contactName,
  60. Array:contactGG,
  61. Array:contactSteam,
  62. Array:contactRank;
  63. //=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=//
  64. //=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=Natywy-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=//
  65. //=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=//
  66.  
  67. native get_user_kills_on_weapon(id);
  68. native skinsMenu(id);
  69. native rsMenu(id);
  70. native VipMotd(id);
  71. native SvipMotd(id);
  72. native StatMenu(id);
  73. native MenuList(id);
  74. native cod_get_user_coins(id);
  75. native cod_set_user_coins(id, wartosc);
  76.  
  77. new const separator_1[] = "//=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=//"
  78. new const menuCommand[][] = { "say /menu", "say menu", "say /m", "say m" };
  79. new const offCommand[][] = { "say /off", "say muza", "say /muza", "say off" };
  80.  
  81. new const bronie[][] ={
  82. "", // 0
  83. "P228", // 1
  84. "", // 2
  85. "SCOUT", // 3
  86. "GRANAT HE", // 4
  87. "XM1014", // 5
  88. "C4", // 6
  89. "MAC10", // 7
  90. "AUG", // 8
  91. "SMOKE", // 9
  92. "DUAL ELITES", // 10
  93. "FIVE-SEVEN", // 11
  94. "UMP45", // 12
  95. "SG550", // 13
  96. "GALIL", // 14
  97. "FAMAS", // 15
  98. "USP", // 16
  99. "GLOCK", // 17
  100. "AWP", // 18
  101. "MP5", // 19
  102. "M249", // 20
  103. "M3", // 21
  104. "M4A1", // 22
  105. "TMP", // 23
  106. "G3SG1", // 24
  107. "FLASHBANG", // 25
  108. "DEAGLE", // 26
  109. "SG552", // 27
  110. "AK47", // 28
  111. "NOZ", // 29
  112. "P90" // 30
  113. }
  114. public plugin_init()
  115. {
  116.  
  117. new licencja_ip[] = "91.224.117.43:27080"; //tutaj zmien na IP swojego serwera by plugin dzialal
  118.  
  119. new ip_serwera[33];
  120. get_user_ip(0, ip_serwera, 32);
  121.  
  122. if(!equal(ip_serwera, licencja_ip))
  123. {
  124. register_plugin("DD2 Silnik: Blad Licencji", "1.0", "N1K1Cz | AmxxPro.pl");
  125. set_fail_state("[DD2 Silnik] Plugin nie dziala na tym serwerze! Plugin by N1K1Cz <3 Nie ladnie tak krasc :)");
  126. server_print(" ")
  127. server_print(separator_1)
  128. server_print("[%s] Nazwa : DD2 Silnik: Blad Licencji", TAG)
  129. server_print("[%s] Wersja : %s", TAG, VERSION)
  130. server_print("[%s] Autor : N1K1Cz", TAG)
  131. server_print(separator_1)
  132. server_print(" ")
  133. }
  134.  
  135. register_plugin(PLUGIN, VERSION, AUTHOR);
  136. server_print(" ")
  137. server_print(separator_1)
  138. server_print("[%s] Nazwa : %s", TAG, PLUGIN)
  139. server_print("[%s] Wersja : %s", TAG, VERSION)
  140. server_print("[%s] Autor : N1K1Cz | AmxxPro.pl", TAG)
  141. server_print(separator_1)
  142. server_print(" ")
  143. for (new i; i < sizeof menuCommand; i++) register_clcmd(menuCommand[i], "menu");
  144. for (new i; i < sizeof offCommand; i++) register_clcmd(offCommand[i], "OffMusic");
  145. register_cvar("DD2_forum", "AmxxPro.pl");
  146. register_clcmd("say /hudmenu", "HudMenu")
  147. register_clcmd("say /rangi", "wywolaj")
  148. register_clcmd("say /hud", "hud")
  149. register_clcmd("say /kontakt", "showContacts");
  150. register_clcmd("say /cennik", "CennikMotd")
  151. register_clcmd("say /komendy", "Komendy")
  152.  
  153. register_message(get_user_msgid("SayText"), "handleSayText");
  154.  
  155. createArrays();
  156. loadData();
  157.  
  158. vault_hud = nvault_open("N1K1Cz_Hud");
  159. }
  160. createArrays() {
  161. contactName = ArrayCreate(64, 1);
  162. contactGG = ArrayCreate(32, 1);
  163. contactSteam = ArrayCreate(32, 1);
  164. contactRank = ArrayCreate(32, 1);
  165. }
  166.  
  167. loadData() {
  168. if(!file_exists(filePath))
  169. {
  170. log_amx("Plik nie zostal znaleziony: ^"%s^".", filePath);
  171.  
  172. return PLUGIN_HANDLED;
  173. }
  174.  
  175. new currentLine[256],
  176. lineLength,
  177. lineData[4][64];
  178.  
  179. ForFile(i, filePath, currentLine, charsmax(currentLine), lineLength){
  180. if(!currentLine[0] || !lineLength || currentLine[0] == ';')
  181. continue;
  182.  
  183. parse(currentLine,
  184. lineData[0], charsmax(lineData[]),
  185. lineData[1], charsmax(lineData[]),
  186. lineData[2], charsmax(lineData[]),
  187. lineData[3], charsmax(lineData[]));
  188.  
  189. ArrayPushString(contactName, lineData[0]);
  190. ArrayPushString(contactGG, lineData[1]);
  191. ArrayPushString(contactSteam, lineData[2]);
  192. ArrayPushString(contactRank, lineData[3]);
  193. }
  194.  
  195. return PLUGIN_CONTINUE;
  196. }
  197. public OffMusic(id){
  198. client_cmd(id, "mp3 stop")
  199. }
  200. public wywolaj(id){
  201. if(is_user_connected(id))
  202. show_motd(id, "rangi.txt", "Rangi na serwerze");
  203. }
  204. public client_connect(id)
  205. {
  206. if(is_user_bot(id))
  207. return
  208. new param[1]
  209. param[0] = id
  210. set_task(1.0,"rank",TASK+id,param,1,"b")
  211. }
  212. public client_authorized(id)
  213. {
  214. get_user_name(id, nazwa_gracza[id], 63);
  215. bHud[id] = true;
  216. }
  217. public client_infochanged(id)
  218. {
  219. get_user_info(id, "name", nazwa_gracza[id], 63);
  220. }
  221. public client_putinserver(id)
  222. {
  223. WczytajHud(id);
  224. set_task(3.0, "hudpowitanie", id + TASK_SHOW_HUD);
  225. set_task(20.0, "chatpowitanie", id + TASK_SHOW_CHAT);
  226. }
  227. public hud(id){
  228. bHud[id] = !bHud[id];
  229. }
  230. public client_disconnect(id){
  231. ZapiszHud(id);
  232. if(task_exists(TASK+id)){
  233. remove_task(TASK+id)
  234. }
  235. if(task_exists(id + TASK_SHOW_HUD))
  236. remove_task(id + TASK_SHOW_HUD);
  237. }
  238. public rank(param[])
  239. {
  240. new id = param[0]
  241.  
  242. if(!is_user_alive(id))
  243. {
  244. id = pev(id, pev_iuser2);
  245. }
  246. if(!bHud[id]){
  247. return;
  248. }
  249. static stats[8],
  250. body[8],
  251. ranga[33],
  252. rankpos,
  253. rankmax,
  254. stats1[8],
  255. body1[8]
  256.  
  257. get_user_stats(id, stats, body)
  258. rankpos = get_user_stats(id, stats1, body1);
  259. rankmax = get_statsnum();
  260.  
  261.  
  262. if(stats[0] >= 0 && stats[0] <= 29)
  263. {
  264. format(ranga, 29, "Unranked");
  265. }
  266. else if(stats[0] >= 30 && stats[0] <= 59)
  267. {
  268. format(ranga, 29, "Silver I");
  269. }
  270. else if(stats[0] >= 60 && stats[0] <= 119)
  271. {
  272. format(ranga, 29, "Silver II");
  273. }
  274. else if(stats[0] >= 120 && stats[0] <= 209)
  275. {
  276. format(ranga, 29, "Silver III");
  277. }
  278. else if(stats[0] >= 210 && stats[0] <= 324)
  279. {
  280. format(ranga, 29, "Silver IV");
  281. }
  282. else if(stats[0] >= 325 && stats[0] <= 499)
  283. {
  284. format(ranga, 29, "Silver Elite");
  285. }
  286. else if(stats[0] >= 500 && stats[0] <= 729)
  287. {
  288. format(ranga, 29, "Silver Elite Master");
  289. }
  290. else if(stats[0] >= 730 && stats[0] <= 999)
  291. {
  292. format(ranga, 29, "Gold Nova I");
  293. }
  294. else if(stats[0] >= 1000 && stats[0] <= 1399)
  295. {
  296. format(ranga, 29, "Gold Nova II");
  297. }
  298. else if(stats[0] >= 1400 && stats[0] <= 1849)
  299. {
  300. format(ranga, 29, "Gold Nova III");
  301. }
  302. else if(stats[0] >= 1850 && stats[0] <= 2299)
  303. {
  304. format(ranga, 29, "Gold Nova Master");
  305. }
  306. else if(stats[0] >= 2300 && stats[0] <= 2899)
  307. {
  308. format(ranga, 29, "Master Guardian I");
  309. }
  310. else if(stats[0] >= 2900 && stats[0] <= 3549)
  311. {
  312. format(ranga, 29, "Master Gurardian III");
  313. }
  314. else if(stats[0] >= 4200 && stats[0] <= 4999)
  315. {
  316. format(ranga, 29, "Master Guardian Elte");
  317. }
  318. else if(stats[0] >= 5000 && stats[0] <= 5899)
  319. {
  320. format(ranga, 29, "Distinguished Master Guardian");
  321. }
  322. else if(stats[0] >= 5900 && stats[0] <= 6899)
  323. {
  324. format(ranga, 29, "Legendary Eagle");
  325. }
  326. else if(stats[0] >= 6900 && stats[0] <= 7999)
  327. {
  328. format(ranga, 29, "Legendary Eagle Master");
  329. }
  330. else if(stats[0] >= 8000 && stats[0] <= 9299)
  331. {
  332. format(ranga, 29, "Supreme Master First Class");
  333. }
  334. else if(stats[0] >= 9300 && stats[0] <= 9999)
  335. {
  336. format(ranga, 29, "The Global Elite");
  337. }
  338. else if(stats[0] >= 10000)
  339. {
  340. format(ranga, 29, "The Global Elite");
  341. }
  342.  
  343. new postep[30]
  344. if ( stats[0] >= 0 && stats[0] <= 29)
  345. format(postep,29,"%i/29",stats[0])
  346. else if ( stats[0] >= 30 && stats[0] <= 59)
  347. format(postep,29,"%i/59",stats[0])
  348. else if ( stats[0] >= 60 && stats[0] <= 119)
  349. format(postep,29,"%i/119",stats[0])
  350. else if ( stats[0] >= 120 && stats[0] <= 209)
  351. format(postep,29,"%i/209",stats[0])
  352. else if ( stats[0] >= 210 && stats[0] <= 324)
  353. format(postep,29,"%i/324",stats[0])
  354. else if ( stats[0] >= 325 && stats[0] <= 499)
  355. format(postep,29,"%i/499",stats[0])
  356. else if ( stats[0] >= 500 && stats[0] <= 729)
  357. format(postep,29,"%i/729",stats[0])
  358. else if ( stats[0] >= 730 && stats[0] <= 999)
  359. format(postep,29,"%i/999",stats[0])
  360. else if ( stats[0] >= 100 && stats[0] <= 1399)
  361. format(postep,29,"%i/1399",stats[0])
  362. else if ( stats[0] >= 1400 && stats[0] <= 1849)
  363. format(postep,29,"%i/1849",stats[0])
  364. else if ( stats[0] >= 1850 && stats[0] <= 2299)
  365. format(postep,29,"%i/2299",stats[0])
  366. else if ( stats[0] >= 2300 && stats[0] <= 2899)
  367. format(postep,29,"%i/2899",stats[0])
  368. else if ( stats[0] >= 2900 && stats[0] <= 3549)
  369. format(postep,29,"%i/3549",stats[0])
  370. else if (stats[0] >= 4200 && stats[0] <= 4999)
  371. format(postep,29,"%i/4999",stats[0])
  372. else if (stats[0] >= 5000 && stats[0] <= 5899)
  373. format(postep,29,"%i/5899",stats[0])
  374. else if (stats[0] >= 5900 && stats[0] <= 6899)
  375. format(postep,29,"%i/6899",stats[0])
  376. else if (stats[0] >= 6900 && stats[0] <= 7999)
  377. format(postep,29,"%i/7999",stats[0])
  378. else if (stats[0] >= 8000 && stats[0] <= 9299)
  379. format(postep,29,"%i/9299",stats[0])
  380. else if (stats[0] >= 9300 && stats[0] <= 10000000)
  381. format(postep,29,"%i",stats[0])
  382.  
  383. new name[33]
  384. get_user_name(id,name,32)
  385.  
  386. new cswid = get_user_weapon(id);
  387.  
  388. new konto[33];
  389. if(get_user_flags(id) & ADMIN_LEVEL_H){
  390. format(konto,29,"V.I.P")
  391. }else if(get_user_flags(id) & ADMIN_LEVEL_G){
  392. format(konto,29,"S-V.I.P")
  393. }else{
  394. format(konto,29,"Darmowe")
  395. }
  396. set_hudmessage(HudGracza[id][R], HudGracza[id][G], HudGracza[id][B], 0.01, 0.18, 2, 0.02, 1.0, 0.01);
  397. show_hudmessage(id, "--== | %s | ==--^n[>] Nick: [%s]^n[>] Konto: [%s]^n[>] Ranga: [%s]^n[>] Postep: [%s]^n[>] Ranking: [%d/%d]^n[>] Monety: %i^n[>] %s: %d^n[>] Menu serwera: /menu", 1,name,konto, ranga, postep,rankpos,rankmax,cod_get_user_coins(id), bronie[cswid], get_user_kills_on_weapon(id));
  398. }
  399. public handleSayText(msgId,msgDest,msgEnt){
  400. new id = get_msg_arg_int(1);
  401. static stats[8],
  402. body[8],
  403. ranga[33]
  404. get_user_stats(id, stats, body)
  405.  
  406. if(stats[0] >= 0 && stats[0] <= 29)
  407. {
  408. format(ranga, 29, "Unranked");
  409. }
  410. else if(stats[0] >= 30 && stats[0] <= 59)
  411. {
  412. format(ranga, 29, "Silver I");
  413. }
  414. else if(stats[0] >= 60 && stats[0] <= 119)
  415. {
  416. format(ranga, 29, "Silver II");
  417. }
  418. else if(stats[0] >= 120 && stats[0] <= 209)
  419. {
  420. format(ranga, 29, "Silver III");
  421. }
  422. else if(stats[0] >= 210 && stats[0] <= 324)
  423. {
  424. format(ranga, 29, "Silver IV");
  425. }
  426. else if(stats[0] >= 325 && stats[0] <= 499)
  427. {
  428. format(ranga, 29, "Silver Elite");
  429. }
  430. else if(stats[0] >= 500 && stats[0] <= 729)
  431. {
  432. format(ranga, 29, "Silver Elite Master");
  433. }
  434. else if(stats[0] >= 730 && stats[0] <= 999)
  435. {
  436. format(ranga, 29, "Gold Nova I");
  437. }
  438. else if(stats[0] >= 1000 && stats[0] <= 1399)
  439. {
  440. format(ranga, 29, "Gold Nova II");
  441. }
  442. else if(stats[0] >= 1400 && stats[0] <= 1849)
  443. {
  444. format(ranga, 29, "Gold Nova III");
  445. }
  446. else if(stats[0] >= 1850 && stats[0] <= 2299)
  447. {
  448. format(ranga, 29, "Gold Nova Master");
  449. }
  450. else if(stats[0] >= 2300 && stats[0] <= 2899)
  451. {
  452. format(ranga, 29, "Master Guardian I");
  453. }
  454. else if(stats[0] >= 2900 && stats[0] <= 3549)
  455. {
  456. format(ranga, 29, "Master Gurardian III");
  457. }
  458. else if(stats[0] >= 4200 && stats[0] <= 4999)
  459. {
  460. format(ranga, 29, "Master Guardian Elte");
  461. }
  462. else if(stats[0] >= 5000 && stats[0] <= 5899)
  463. {
  464. format(ranga, 29, "Distinguished Master Guardian");
  465. }
  466. else if(stats[0] >= 5900 && stats[0] <= 6899)
  467. {
  468. format(ranga, 29, "Legendary Eagle");
  469. }
  470. else if(stats[0] >= 6900 && stats[0] <= 7999)
  471. {
  472. format(ranga, 29, "Legendary Eagle Master");
  473. }
  474. else if(stats[0] >= 8000 && stats[0] <= 9299)
  475. {
  476. format(ranga, 29, "Supreme Master First Class");
  477. }
  478. else if(stats[0] >= 9300 && stats[0] <= 9999)
  479. {
  480. format(ranga, 29, "The Global Elite");
  481. }
  482. else if(stats[0] >= 10000)
  483. {
  484. format(ranga, 29, "[The Global Elite]");
  485. }
  486. if(!is_user_connected(id)) return PLUGIN_CONTINUE;
  487.  
  488. new szTmp[256],szTmp2[256];
  489. get_msg_arg_string(2,szTmp, charsmax( szTmp ) )
  490.  
  491. new szPrefix[64]
  492. formatex(szPrefix,charsmax( szPrefix ),"^x04[%s]",ranga);
  493. if(!equal(szTmp,"#Cstrike_Chat_All")){
  494. add(szTmp2,charsmax(szTmp2),szPrefix);
  495. add(szTmp2,charsmax(szTmp2)," ");
  496. add(szTmp2,charsmax(szTmp2),szTmp);
  497. }
  498. else{
  499. add(szTmp2,charsmax(szTmp2),szPrefix);
  500. add(szTmp2,charsmax(szTmp2),"^x03 %s1^x01 : %s2");
  501. }
  502.  
  503. set_msg_arg_string(2,szTmp2);
  504.  
  505. return PLUGIN_CONTINUE;
  506. }
  507. public menu(id)
  508. {
  509. new menu = menu_create("\d[© AmxxPro.pl]^n\w[\r>\w] \yMenu \rDD2:", "wybieranie")
  510.  
  511. menu_additem(menu, "\w[\r>\w] \yMenu HUD \w(\r/hudmenu\w)", "0", 0)
  512. menu_additem(menu, "\w[\r>\w] \yVIP \w(\r/vip\w)", "1", 0)
  513. menu_additem(menu, "\w[\r>\w] \ySVIP \w(\r/svip\w)", "8", 0)
  514. menu_additem(menu, "\w[\r>\w] \yVIP & SVIP Online \w(\r/vips\w)", "9", 0)
  515. menu_additem(menu, "\w[\r>\w] \yKontakt \w(\r/kontakt\w)", "2", 0)
  516. menu_additem(menu, "\w[\r>\w] \yMuzyka \w(\r/mvp\w)", "3", 0)
  517. menu_additem(menu, "\w[\r>\w] \yRangi \w(\r/rangi\w)", "4", 0)
  518. menu_additem(menu, "\w[\r>\w] \ySkiny \w(\r/skiny\w)", "5", 0)
  519. menu_additem(menu, "\w[\r>\w] \yStattrak \w(\r/stattrak\w)", "6", 0)
  520. menu_additem(menu, "\w[\r>\w] \yCennik \w(\r/cennik\w)", "7", 0)
  521. menu_additem(menu, "\w[\r>\w] \yKomendy - wiadomosci prywatne \w(\r/komendy\w)", "10", 0)
  522.  
  523. menu_setprop(menu, MPROP_BACKNAME, "\y<<<");
  524. menu_setprop(menu, MPROP_NEXTNAME, "\y>>>");
  525. menu_setprop(menu, MPROP_EXITNAME, "\r[\wX\r]");
  526. menu_display(id, menu, 0)
  527. }
  528. public wybieranie(id, menu, item)
  529. {
  530. if (item == MENU_EXIT)
  531. {
  532. menu_destroy(menu)
  533. return PLUGIN_HANDLED
  534. }
  535. new data[6], iName[64]
  536. new acces, callback
  537. menu_item_getinfo(menu, item, acces, data,5, iName, 63, callback)
  538. new key = str_to_num(data)
  539. switch(key)
  540. {
  541. case 0:HudMenu(id);
  542. case 1:VipMotd(id);
  543. case 2:showContacts(id);
  544. case 3:rsMenu(id);
  545. case 4:wywolaj(id);
  546. case 5:skinsMenu(id);
  547. case 6:StatMenu(id);
  548. case 7:CennikMotd(id);
  549. case 8:SvipMotd(id);
  550. case 9:MenuList(id);
  551. case 10:Komendy(id);
  552. }
  553. menu_destroy(menu)
  554. return PLUGIN_HANDLED
  555. }
  556. public Komendy(id)
  557. {
  558. show_menu(id, 1023, "\w[\r>\w] \yKomendy do wiadomosci prywatnej:^n^n\
  559. \w[\r>\w] /msg <nick> <wiadomosc> - prywatna wiadomosc^n\
  560. \w[\r>\w] /away <powod> - informacja o tym ze idziesz AFK^n\
  561. \w[\r>\w] /back <powod> - informacja o tym ze wrociles z AFK^n\
  562. ^n^n\d[Kliknij przycisk od 1 do 0 aby zamknac]", -1, "Komendy");
  563.  
  564. }
  565. public CennikMotd(id)
  566. {
  567. show_motd(id, "cennik.txt")
  568. }
  569. public showContacts(index)
  570. {
  571. new menuIndex = menu_create("\d[© AmxxPro.pl]^n\w[\r>\w] \yKontakt:", "showContact_handler"),
  572. name[64],
  573. rank[64],
  574. gg[64],
  575. steam[128];
  576. new names[33]
  577. get_user_name(index,names,32)
  578. ForDynamicArray(i, contactName)
  579. {
  580. ArrayGetString(contactName, i, name, charsmax(name));
  581. ArrayGetString(contactRank, i, rank, charsmax(rank));
  582. ArrayGetString(contactGG, i, gg, charsmax(gg));
  583. ArrayGetString(contactSteam, i, steam, charsmax(steam));
  584.  
  585. if(get_user_index(name)) menu_additem(menuIndex, fmt("\r[\w%s\r] -\w %s \d[\yOnline\d]", rank, name));
  586. else menu_additem(menuIndex, fmt("\r[\w%s\r] -\w %s \d[\rOffline\d]", rank, name));
  587. }
  588. menu_display(index, menuIndex);
  589.  
  590. return PLUGIN_HANDLED;
  591. }
  592.  
  593. public showContact_handler(index, menuIndex, item)
  594. {
  595. menu_destroy(menuIndex);
  596.  
  597. if(item == MENU_EXIT)
  598. return PLUGIN_HANDLED;
  599.  
  600. new contactData[4][64], szKontakt[256], szKontakt1[256];
  601.  
  602. ArrayGetString(contactName, item, contactData[0], charsmax(contactData[]));
  603. ArrayGetString(contactGG, item, contactData[1], charsmax(contactData[]));
  604. ArrayGetString(contactSteam, item, contactData[2], charsmax(contactData[]));
  605. ArrayGetString(contactRank, item, contactData[3], charsmax(contactData[]));
  606. formatex(szKontakt, charsmax(szKontakt), "%s Nick: %s | GG: %s | Discord: %s | Pozycja: %s.", chatPrefix, contactData[0], contactData[1], contactData[2], contactData[3]);
  607. formatex(szKontakt1, charsmax(szKontakt1), "\r[\w%s\r] \y%s^n^n\w[\r>\w] \r[\wDiscord\r] \w--> \y%s^n\w[\r>\w] \r[\wGG\r] \w--> \y%s^n\w[\r>\w] \d\r[\wNick na Forum\r] \w--> \y%s^n^n\d[Kliknij klawisz od 1-0 aby wyjsc]", contactData[3], contactData[0], contactData[2], contactData[1], contactData[0]);
  608. ColorChat(index, GREEN, "Wydrukowano w konsoli kontakt do:^x03 %s", contactData[0]);
  609. show_menu(index, 1023, szKontakt1, -1, "Kontakt");
  610. for(new i=0; i<=4; i++) {
  611. client_print(index, print_console, " ")
  612. client_print(index, print_console, separator_1)
  613. client_print(index, print_console, szKontakt);
  614. client_print(index, print_console, separator_1)
  615. client_print(index, print_console, " ")
  616. }
  617. return PLUGIN_HANDLED;
  618. }
  619. public HudMenu(id)
  620. {
  621. new text[512];
  622. new menu = menu_create("\d[© AmxxPro.pl]^n\w[\r>\w] \yMenu HUD:", "hud_handler");
  623. formatex(text, 511, "\w[\r>\w] Hud \y[%s]", bHud[id] ? "Wylacz" : "Wlacz");
  624. menu_additem(menu, text, "", 0);
  625. menu_additem(menu, "\w[\r>\w] \yKolory HUD", "1", 0)
  626. menu_display(id, menu);
  627. }
  628. public hud_handler(id,menu,item)
  629. {
  630. if(item==MENU_EXIT)
  631. {
  632. menu_destroy(menu)
  633. return PLUGIN_HANDLED
  634. }
  635. new data[6], iName[64]
  636. new access, callback
  637. menu_item_getinfo(menu, item, access, data,5, iName, 63, callback)
  638. new key = str_to_num(data)
  639. switch(key)
  640. {
  641. case 0: hud(id);
  642. case 1: KolorHud(id);
  643. }
  644. return PLUGIN_HANDLED;
  645. }
  646. public KolorHud(id)
  647. {
  648. new menu = menu_create("\d[© AmxxPro.pl]^n\w[\r>\w] \yMenu Kolorow HUD:", "hudd_handler");
  649. menu_additem(menu,"\w[\r>\w] \yStandardowe Ustawienia")
  650. menu_additem(menu,"\w[\r>\w] \yCzerwony")
  651. menu_additem(menu,"\w[\r>\w] \yZielony")
  652. menu_additem(menu,"\w[\r>\w] \yNiebieski")
  653. menu_additem(menu,"\w[\r>\w] \yZolty")
  654. menu_additem(menu,"\w[\r>\w] \yRozowy")
  655. menu_additem(menu,"\w[\r>\w] \yWlasne Ustawienie Huda")
  656. menu_setprop(menu, MPROP_BACKNAME, "\y<<<");
  657. menu_setprop(menu, MPROP_NEXTNAME, "\y>>>");
  658. menu_setprop(menu, MPROP_EXITNAME, "\r[\wX\r]");
  659. menu_display(id, menu);
  660. }
  661. public hudd_handler(id,menu,item)
  662. {
  663. if(item==MENU_EXIT)
  664. {
  665. menu_destroy(menu)
  666. return PLUGIN_HANDLED
  667. }
  668. switch(item)
  669. {
  670. case 0:
  671. {
  672. for(new i = 0 ; i < 3;i++)
  673. HudGracza[id][i] = standardowe_ustawienia[i];
  674. ColorChat(id, GREEN, "[%s] ^x03Zmieniles HUD na standardowy!", prefix);
  675. KolorHud(id)
  676. return PLUGIN_CONTINUE;
  677. }
  678. case 1:
  679. {
  680. for(new i = 0 ; i < 3;i++)
  681. HudGracza[id][i] = HudRed[i];
  682. ColorChat(id, GREEN, "[%s] ^x03Zmieniles HUD na Czerwony", prefix);
  683. KolorHud(id)
  684. return PLUGIN_CONTINUE;
  685. }
  686. case 2:
  687. {
  688. for(new i = 0 ; i < 3;i++)
  689. HudGracza[id][i] = HudZiel[i];
  690. ColorChat(id, GREEN, "[%s] ^x03Zmieniles HUD na Zielony", prefix);
  691. KolorHud(id)
  692. return PLUGIN_CONTINUE;
  693. }
  694. case 3:
  695. {
  696. for(new i = 0 ; i < 3;i++)
  697. HudGracza[id][i] = HudBlue[i];
  698. ColorChat(id, GREEN, "[%s] ^x03Zmieniles HUD na Niebieski", prefix);
  699. KolorHud(id)
  700. return PLUGIN_CONTINUE;
  701. }
  702. case 4:
  703. {
  704. for(new i = 0 ; i < 3;i++)
  705. HudGracza[id][i] = HudYell[i];
  706. ColorChat(id, GREEN, "[%s] ^x03Zmieniles HUD na Zolty", prefix);
  707. KolorHud(id)
  708. return PLUGIN_CONTINUE;
  709. }
  710. case 5:
  711. {
  712. for(new i = 0 ; i < 3;i++)
  713. HudGracza[id][i] = HudRoz[i];
  714. ColorChat(id, GREEN, "[%s] ^x03Zmieniles HUD na Rozowy", prefix);
  715. KolorHud(id)
  716. return PLUGIN_CONTINUE;
  717. }
  718. case 6:
  719. {
  720. WlasneUstawienia(id);
  721. ColorChat(id, GREEN, "[%s] ^x03Wybierz wlasne ustawienia HUD uzywajac prostego menu! ", prefix);
  722. return PLUGIN_CONTINUE;
  723. }
  724. }
  725. return PLUGIN_HANDLED;
  726. }
  727. public hudpowitanie(id)
  728. {
  729. id -= TASK_SHOW_HUD;
  730. if(!is_user_connected(id)) return;
  731.  
  732. set_dhudmessage(255, 0, 0, -1.0, 0.28, 0, 6.0, 5.0);
  733. show_dhudmessage(id, "---=== | %s | ===---", 1);
  734. set_dhudmessage(255, 255, 255, -1.0, 0.28, 0, 6.0, 5.0);
  735. show_dhudmessage(id, "^nWitamy na serwerze ONLY DD2^nZyczymy Udanej GRY!");
  736. }
  737.  
  738. public chatpowitanie(id)
  739. {
  740. id -= TASK_SHOW_CHAT;
  741.  
  742. if(!is_user_connected(id)) return;
  743.  
  744. client_print_color(id, id, "^x4[^3%s^4]^x01 Witamy na serwerze ONLY DD2, ktorego autorem jest^3 N1K1Cz | © AmxxPro.pl", 1); //ZAKAZ EDYCJI TEJ LINIJKI - Zlamanie zasady = brak pomocy technicznej (uszanuj czyjas prace :P)
  745. client_print_color(id, id, "^x4[^3%s^4]^x01 Wszystkie komendy jak i dodatki znajdziesz pod: ^x03/menu", 1);
  746. client_print_color(id, id, "^x4[^3%s^4]^x01 Wlasciciel serwera: ---", 1);
  747. }
  748. public WlasneUstawienia(id)
  749. {
  750. new menu = menu_create("Zmien Huda","WlasneUstawienia_h")
  751. new txt[32];
  752. formatex(txt,31,"\ySzybkosc zmiany: %d",ile_pkt[hud_rozdania[id]])
  753. menu_additem(menu,txt);
  754. formatex(txt,31,"Czerwony + %i",HudGracza[id][R])
  755. menu_additem(menu,txt);
  756. formatex(txt,31,"Zielony + %i",HudGracza[id][G])
  757. menu_additem(menu,txt);
  758. formatex(txt,31,"Niebieski+ %i",HudGracza[id][B])
  759. menu_additem(menu,txt);
  760. menu_additem(menu,"\r Zapisz");
  761. menu_display(id,menu);
  762. }
  763. public WlasneUstawienia_h(id,menu,item)
  764. {
  765. if(item == MENU_EXIT)
  766. {
  767. ColorChat(id, GREEN, "[%s] ^x03Wyjscie spowodowalo przywrocenie ustawien domyslnych!", prefix);
  768. for(new i = 0 ; i < 5;i++)
  769. HudGracza[id][i] = standardowe_ustawienia[i];
  770. return PLUGIN_CONTINUE;
  771. }
  772. new ilosc_pkt;
  773. ilosc_pkt = ile_pkt[hud_rozdania[id]]
  774. switch(item)
  775. {
  776. case 0:
  777. {
  778. if(hud_rozdania[id] < charsmax(ile_pkt)) hud_rozdania[id]++;
  779. else hud_rozdania[id] = 0;
  780. WlasneUstawienia(id);
  781. }
  782. case 1:
  783. {
  784. HudGracza[id][R]+=ilosc_pkt
  785. if(HudGracza[id][R] > 255)
  786. HudGracza[id][R]=0;
  787. WlasneUstawienia(id);
  788. }
  789. case 2:
  790. {
  791. HudGracza[id][G]+=ilosc_pkt
  792. if(HudGracza[id][G] > 255)
  793. HudGracza[id][G]=0;
  794. WlasneUstawienia(id);
  795. }
  796. case 3:
  797. {
  798. HudGracza[id][B]+=ilosc_pkt
  799. if(HudGracza[id][B] > 255)
  800. HudGracza[id][B]=0;
  801. WlasneUstawienia(id);
  802. }
  803. case 4:
  804. {
  805. ZapiszHud(id);
  806. ColorChat(id, GREEN, "[%s] ^x03 Twoj HUD zostal odmieniony! Polec innym graczom ", prefix);
  807. menu_destroy(menu)
  808. return PLUGIN_CONTINUE;
  809. }
  810. }
  811. return PLUGIN_CONTINUE;
  812. }
  813. public ZapiszHud(id)
  814. {
  815. new vaultkey[128],vaultdata[256]
  816. format(vaultdata, charsmax(vaultdata),"#%i#%i#%i", HudGracza[id][R],HudGracza[id][G],HudGracza[id][B])
  817.  
  818. format(vaultkey, charsmax(vaultkey),"Hud-%s", nazwa_gracza[id]);
  819. nvault_set(vault_hud,vaultkey,vaultdata);
  820. }
  821. public WczytajHud(id)
  822. {
  823. new vaultkey[128],vaultdata[256]
  824. format(vaultkey, charsmax(vaultkey),"Hud-%s", nazwa_gracza[id]);
  825.  
  826.  
  827. if(!nvault_get(vault_hud,vaultkey,vaultdata,255)) // Jezeli nie ma danych gracza sprawdza stary zapis.
  828. {
  829. for(new i = 0 ; i < 3;i++)
  830. HudGracza[id][i] = standardowe_ustawienia[i];
  831.  
  832.  
  833. return PLUGIN_CONTINUE;
  834. }
  835. replace_all(vaultdata, 255, "#", " ");
  836. new danegracza[3][32];
  837. parse(vaultdata, danegracza[0], 31, danegracza[1], 31, danegracza[2], 31);
  838. for(new i = 0 ; i < 3;i++)
  839. HudGracza[id][i] = str_to_num(danegracza[i]);
  840.  
  841. return PLUGIN_CONTINUE;
  842. }
  843.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement