hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2024.04.19. 16:40



Jelenlévő felhasználók

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

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

Regisztrált felhasználók: Bing [Bot], Google [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  [ 3 hozzászólás ] 
Szerző Üzenet
 Hozzászólás témája: Javítás!
HozzászólásElküldve: 2015.04.24. 21:00 
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
Sziasztok!
Valaki kijavítaná nekem ezt? :D

SMA Forráskód: [ Mindet kijelol ]
  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <nvault>
  4. #include <fakemeta>
  5. #include <cstrike>
  6. #if defined _colorchat_included
  7. #endinput
  8. #endif
  9. #define _colorchat_included
  10.  
  11. /* ColorChat Support */
  12. #define NORMAL DontChange
  13. #define GREEN DontChange
  14. #define RED Red
  15. #define BLUE Blue
  16. #define GREY Grey
  17. #define ColorChat client_print_color
  18.  
  19. #define MAX_TRANSLATION_LENGTH 2048
  20.  
  21. enum {
  22. DontChange = 0,
  23. Grey = -1,
  24. Red = -2,
  25. Blue = -3
  26. };
  27.  
  28. #define print_team_default DontChange
  29. #define print_team_grey Grey
  30. #define print_team_red Red
  31. #define print_team_blue Blue
  32.  
  33. stock client_print_color(id, sender, const fmt[], any:...)
  34. {
  35. // check if id is different from 0
  36. if (id && !is_user_connected(id))
  37. {
  38. return 0;
  39. }
  40.  
  41. if (sender < Blue || sender > 32)
  42. {
  43. sender = DontChange;
  44. }
  45. else if (sender < DontChange)
  46. {
  47. sender = -sender + 32; // align indexes to the TeamInfo ones
  48. }
  49.  
  50. static const szTeamName[][] =
  51. {
  52. "",
  53. "TERRORIST",
  54. "CT"
  55. };
  56.  
  57. new szMessage[191];
  58.  
  59. new iParams = numargs();
  60.  
  61. // Specific player code
  62. if (id)
  63. {
  64. if (iParams == 3)
  65. {
  66. copy(szMessage, charsmax(szMessage), fmt); // copy so message length doesn't exceed critical 192 value
  67. }
  68. else
  69. {
  70. vformat(szMessage, charsmax(szMessage), fmt, 4);
  71. }
  72.  
  73. if (sender > (32 - Grey))
  74. {
  75. if (sender > (32 - Blue))
  76. {
  77. sender = id;
  78. }
  79. else
  80. {
  81. _CC_TeamInfo(id, sender, szTeamName[sender - (32 - Grey)]);
  82. }
  83. }
  84. _CC_SayText(id, sender, szMessage);
  85. }
  86.  
  87. // Send message to all players
  88. else
  89. {
  90. // Figure out if at least 1 player is connected
  91. // so we don't execute useless useless code if not
  92. new iPlayers[32], iNum;
  93. get_players(iPlayers, iNum, "ch");
  94. if (!iNum)
  95. {
  96. return 0;
  97. }
  98.  
  99. new iMlNumber, i, j;
  100. new Array:aStoreML = ArrayCreate();
  101. if (iParams >= 5) // ML can be used
  102. {
  103. for (j = 3; j < iParams; j++)
  104. {
  105. // retrieve original param value and check if it's LANG_PLAYER value
  106. if (getarg(j) == LANG_PLAYER)
  107. {
  108. i = 0;
  109. // as LANG_PLAYER == -1, check if next parm string is a registered language translation
  110. while ((szMessage[i] = getarg(j + 1, i++))) {}
  111. if (GetLangTransKey(szMessage) != TransKey_Bad)
  112. {
  113. // Store that arg as LANG_PLAYER so we can alter it later
  114. ArrayPushCell(aStoreML, j++);
  115.  
  116. // Update ML array saire so we'll know 1st if ML is used,
  117. // 2nd how many args we have to alterate
  118. iMlNumber++;
  119. }
  120. }
  121. }
  122. }
  123.  
  124. // If arraysize == 0, ML is not used
  125. // we can only send 1 MSG_ALL message if sender != 0
  126. if (!iMlNumber)
  127. {
  128. if (iParams == 3)
  129. {
  130. copy(szMessage, charsmax(szMessage), fmt);
  131. }
  132. else
  133. {
  134. vformat(szMessage, charsmax(szMessage), fmt, 4);
  135. }
  136. if (0 < sender < (32 - Blue)) // if 0 is passed, need to loop
  137. {
  138. if (sender > (32 - Grey))
  139. {
  140. _CC_TeamInfo(0, sender, szTeamName[sender - (32 - Grey)]);
  141. }
  142. _CC_SayText(0, sender, szMessage);
  143. return 1;
  144. }
  145. }
  146.  
  147. if (sender > (32 - Blue))
  148. {
  149. sender = 0; // use receiver index
  150. }
  151.  
  152. for (--iNum; iNum >= 0; iNum--)
  153. {
  154. id = iPlayers[iNum];
  155.  
  156. if (iMlNumber)
  157. {
  158. for (j = 0; j < iMlNumber; j++)
  159. {
  160. // Set all LANG_PLAYER args to player index ( = id )
  161. // so we can format the text for that specific player
  162. setarg(ArrayGetCell(aStoreML, j), _, id);
  163. }
  164.  
  165. // format string for specific player
  166. vformat(szMessage, charsmax(szMessage), fmt, 4);
  167. }
  168.  
  169. if (sender > (32 - Grey))
  170. {
  171. _CC_TeamInfo(id, sender, szTeamName[sender - (32 - Grey)]);
  172. }
  173. _CC_SayText(id, sender, szMessage);
  174. }
  175.  
  176. ArrayDestroy(aStoreML);
  177. }
  178. return 1;
  179. }
  180.  
  181. stock _CC_TeamInfo(iReceiver, iSender, szTeam[])
  182. {
  183. static iTeamInfo = 0;
  184. if (!iTeamInfo)
  185. {
  186. iTeamInfo = get_user_msgid("TeamInfo");
  187. }
  188. message_begin(iReceiver ? MSG_ONE : MSG_ALL, iTeamInfo, _, iReceiver);
  189. write_byte(iSender);
  190. write_string(szTeam);
  191. message_end();
  192. }
  193.  
  194. stock _CC_SayText(iReceiver, iSender, szMessage[])
  195. {
  196. static iSayText = 0;
  197. if (!iSayText)
  198. {
  199. iSayText = get_user_msgid("SayText");
  200. }
  201.  
  202. // Prevent sending format and localization strings via chat
  203. for (new i = 0; i < 192; i++)
  204. {
  205. if (szMessage[i] == 0) break;
  206. if (szMessage[i] == '%' ||
  207. szMessage[i] == '#')
  208. szMessage[i] = ' ';
  209. }
  210.  
  211. message_begin(iReceiver ? MSG_ONE : MSG_ALL, iSayText, _, iReceiver);
  212. write_byte(iSender ? iSender : iReceiver);
  213. if (szMessage[0] > 4)
  214. {
  215. write_byte(1);
  216. szMessage[192 - 2 - 1] = 0; // Two write_byte + string terminator
  217. write_string(szMessage);
  218. }
  219. else
  220. {
  221. szMessage[192 - 1 - 1] = 0; // One write_byte + string terminator
  222. write_string(szMessage);
  223. }
  224. message_end();
  225. }
  226.  
  227. new _translation_szBuffer[MAX_TRANSLATION_LENGTH];
  228.  
  229. stock register_dictionary_colored(const filename[])
  230. {
  231. if (!register_dictionary(filename))
  232. {
  233. return 0;
  234. }
  235.  
  236. new szFileName[256];
  237. get_localinfo("amxx_datadir", szFileName, charsmax(szFileName));
  238. format(szFileName, charsmax(szFileName), "%s/lang/%s", szFileName, filename);
  239. new fp = fopen(szFileName, "rt");
  240. if (!fp)
  241. {
  242. log_amx("Failed to open %s", szFileName);
  243. return 0;
  244. }
  245.  
  246. new szLang[3], szKey[64], TransKey:iKey;
  247.  
  248. while (!feof(fp))
  249. {
  250. fgets(fp, _translation_szBuffer, charsmax(_translation_szBuffer));
  251. trim(_translation_szBuffer);
  252.  
  253. if (_translation_szBuffer[0] == '[')
  254. {
  255. strtok(_translation_szBuffer[1], szLang, charsmax(szLang), _translation_szBuffer, 1, ']');
  256. }
  257. else if (_translation_szBuffer[0])
  258. {
  259. strbreak(_translation_szBuffer, szKey, charsmax(szKey), _translation_szBuffer, charsmax(_translation_szBuffer));
  260. iKey = GetLangTransKey(szKey);
  261. if (iKey != TransKey_Bad)
  262. {
  263. replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "!g", "^4");
  264. replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "!t", "^3");
  265. replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "!n", "^1");
  266. replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "^^4", "^4");
  267. replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "^^3", "^3");
  268. replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "^^1", "^1");
  269. replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "^^n", "^n");
  270. replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "^^t", "^t");
  271. AddTranslation(szLang, iKey, _translation_szBuffer[2]);
  272. }
  273. }
  274. }
  275.  
  276. fclose(fp);
  277. return 1;
  278. }
  279.  
  280. /* ML from AMXX 1.8.3 support */
  281. #define register_dictionary register_dictionary_colored
  282. #include <fakemeta_util>
  283.  
  284. #define PLUGIN "Kesmenu"
  285. #define VERSION "1.0"
  286. #define AUTHOR "Razer"
  287.  
  288. new oles[33], kesek[33], vault
  289. new lada[33], kulcs[33], arany[33]
  290.  
  291. new RosszKarakterek, RosszKarakterek2
  292.  
  293. public plugin_init() {
  294. register_plugin(PLUGIN, VERSION, AUTHOR)
  295. register_clcmd("say /kes", "kesmenu")
  296. register_clcmd("say /knife", "kesmenu")
  297. register_clcmd("say /menu", "kesmenu")
  298. register_clcmd("say_team /kes", "kesmenu")
  299. register_clcmd("say_team /knife", "kesmenu")
  300. register_clcmd("say_team /menu", "kesmenu")
  301. register_clcmd("ladakell", "ladas")
  302. register_clcmd("say","handlesay")
  303. register_clcmd("say_team","handlesay")
  304. vault = nvault_open("rebels_rangk_kesek")
  305. register_event("CurWeapon", "Event_Change_Weapon", "be", "1=1")
  306. register_event("DeathMsg","death","a")
  307. register_touch("BonusArany", "player", "toucharany")
  308. }
  309. public ladas(id){
  310. lada[id]++
  311. kulcs[id]++
  312. oles[id]++
  313. ColorChat(id, RED, "^3.:[R3B3LS]:. ^1|^3Paintball^1| ^3Sikeresen Hozzáadva ^1+1 ^4Láda^1,^1+1 ^4Kulcs^4,^1+1 ^4Ölés.")
  314. }
  315.  
  316. public plugin_precache() {
  317. precache_model("models/rebels_alap_kes.mdl")
  318. precache_model("models/rebels_paintball/rebels_kes2.mdl")
  319. precache_model("models/rebels_paintball/rebels_kes3.mdl")
  320. precache_model("models/rebels_paintball/rebels_kes4.mdl")
  321. precache_model("models/rebels_paintball/rebels_kes5.mdl")
  322. precache_model("models/rebels_paintball/rebels_kes6.mdl")
  323. precache_model("models/rebels_paintball/rebels_kes7.mdl")
  324. precache_model("models/rebels_paintball/rebels_kes8.mdl")
  325. precache_model("models/rebels_paintball/fps.mdl")
  326. precache_model("models/rebels_paintball/arany.mdl")
  327. }
  328. public death(){
  329. new tamado = read_data(1)
  330. new aldozat = read_data(2)
  331.  
  332. if(tamado != aldozat)
  333. {
  334. oles++
  335. static origin[3]
  336. pev(victim, pev_origin, origin)
  337. new ent = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "info_target"))
  338. origin[2] -= 36
  339. engfunc(EngFunc_SetOrigin, ent, origin)
  340.  
  341. if(!pev_valid(ent))
  342. {
  343. return PLUGIN_HANDLED
  344. }
  345.  
  346. set_pev(ent, pev_classname, "Bonusarany" )
  347. engfunc(EngFunc_SetModel, ent, arany_model)
  348. dllfunc(DLLFunc_Spawn, ent)
  349. set_pev(ent, pev_solid, SOLID_BBOX)
  350. set_pev(ent, pev_movetype, MOVETYPE_NONE)
  351. engfunc(EngFunc_SetSize, ent, MEDKIT_MINSZ, MEDKIT_MAXSZ)
  352. engfunc(EngFunc_DropToFloor, ent)
  353. message_begin(MSG_PVS, SVC_TEMPENTITY, origin)
  354. write_coord(origin[0])
  355. write_coord(origin[1])
  356. write_coord(origin[2]+60)
  357. message_end()
  358. }
  359. }
  360. public toucharany(ent, toucher) {
  361. new classname[32]
  362. pev(ent, pev_classname, classname, 31)
  363. if (!equal(classname, "BonusArany"))
  364. return FMRES_IGNORED
  365.  
  366. set_pev(ent, pev_effects, EF_NODRAW)
  367. set_pev(ent, pev_solid, SOLID_NOT)
  368. arany[toucher]++
  369. remove_ent(ent)
  370. return FMRES_IGNORED
  371. }
  372. public kesmenu(id) {
  373. new cim[121]
  374. format(cim, charsmax(cim), "\r.:[R3\yB3L\dS]:. \w|\yPaintball\w| \wÖléseid:\r%d \y^n\yLádáid: \r%d \w| \yKulcsaid: \r%d", oles[id], lada[id], kulcs[id])
  375. new menu = menu_create(cim, "kesmenu_hl" )
  376.  
  377. menu_additem(menu,"\rKések","1",0)
  378. menu_additem(menu,"\yRangok","2",0)
  379. menu_additem(menu,"\dLádák","3",0)
  380. menu_additem(menu,"\rBolt","4",0)
  381. menu_additem(menu,"\yEgyéb \yKések","5",0)
  382. menu_additem(menu,"\dInformáció","6",0)
  383. menu_display(id,menu,0)
  384. }
  385. public kesmenu_hl(id, menu, item)
  386. {
  387. if( item == MENU_EXIT )
  388. {
  389. menu_destroy(menu);
  390. return PLUGIN_HANDLED;
  391. }
  392. new data[9], szName[64];
  393. new access, callback;
  394. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  395. new key = str_to_num(data);
  396.  
  397. switch(key)
  398. {
  399. case 1: {
  400. kes_menu2(id)
  401. }
  402. case 2: {
  403. rangok(id)
  404. }
  405. case 3: {
  406. ladikok(id)
  407. }
  408. case 4: {
  409. shop(id)
  410. }
  411. case 5: {
  412. kkes(id)
  413. }
  414. case 6: {
  415. info(id)
  416. }
  417. }
  418. menu_destroy(menu);
  419. return PLUGIN_HANDLED;
  420. }
  421.  
  422. public info(id)
  423. {
  424. new cim[121]
  425. format(cim, charsmax(cim), "\r.:[R3\yB3L\dS]:. \w|\yPaintball\w| \wInformáció")
  426. new menu = menu_create(cim, "info_h" )
  427. menu_additem(menu,"\yADMIN felvétel!","1",0)
  428. menu_additem(menu,"\ySzabályzat!","2",0)
  429. menu_additem(menu,"\yElérhetoségek!","3",0)
  430. menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
  431. menu_display(id, menu, 0);
  432. }
  433.  
  434. public info_h(id, menu, item)
  435. {
  436. if( item == MENU_EXIT )
  437. {
  438. menu_destroy(menu);
  439. return PLUGIN_HANDLED;
  440. }
  441. new data[9], szName[64];
  442. new access, callback;
  443. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  444. new key = str_to_num(data);
  445.  
  446. switch(key)
  447. {
  448. case 1:
  449. {
  450. show_motd(id,"addons/amxmodx/configs/adminvetel.txt","ADMIN felvétel!")
  451. }
  452. case 2:
  453. {
  454. show_motd(id,"addons/amxmodx/configs/szabalyzat.txt","Szabályzat!")
  455. }
  456. case 3:
  457. {
  458. show_motd(id,"addons/amxmodx/configs/elerhetoseg.txt","Elérhetoségek!")
  459. }
  460. }
  461. menu_destroy(menu)
  462. return PLUGIN_HANDLED
  463. }
  464.  
  465. public hus(id){
  466. new cim[121]
  467. format(cim, charsmax(cim), "\r.:[R\w4Z3\yR]:. \w|\yPaintball\w| \wÖléseid:\r%d \y^n\yLádáid:\r%d \w| \yKulcsaid:\r%d", oles[id], lada[id], kulcs[id])
  468. new menu = menu_create(cim, "handler" )
  469.  
  470. menu_additem(menu,"\\rHúsvéti \\ykés [60 láda]^n^n^n \\rKellemes \\yHúsvétot!","1",0)
  471. menu_display(id,menu,0)
  472. }
  473. public handler(id, menu, item)
  474. {
  475. if( item == MENU_EXIT )
  476. {
  477. menu_destroy(menu);
  478. return PLUGIN_HANDLED;
  479. }
  480. new data[9], szName[64];
  481. new access, callback;
  482. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  483. new key = str_to_num(data);
  484.  
  485. switch(key)
  486. {
  487. case 1:{
  488. if(lada[id] >= 60)
  489. {
  490. lada[id] -= 60
  491. kesek[id] = -2
  492. ColorChat(id, RED, "^4.:[R4Z3R]:. » ^x01Sikeres választás.")
  493. }
  494. else {
  495. ColorChat(id, RED, "^1Nincs elég ^4ládád!")
  496. }
  497. }
  498. }
  499. return PLUGIN_HANDLED
  500. }
  501. public shop(id){
  502. new cim[121]
  503. format(cim, charsmax(cim), "\r.:[R3\yB3L\dS]:. \w|\yPaintball\w| \wÖléseid:\r%d \y^n\yLádáid:\r%d \w| \yKulcsaid:\r%d", oles[id], lada[id], kulcs[id])
  504. new menu = menu_create(cim, "b_b" )
  505.  
  506. menu_additem(menu,"\w1 Kulcs \r[2 Ölés]","1",0)
  507. menu_additem(menu,"\w1 Láda \r[6 Ölés]","2",0)
  508. menu_display(id,menu,0)
  509. }
  510. public b_b(id, menu, item)
  511. {
  512. if( item == MENU_EXIT )
  513. {
  514. menu_destroy(menu);
  515. return PLUGIN_HANDLED;
  516. }
  517. new data[9], szName[64];
  518. new access, callback;
  519. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  520. new key = str_to_num(data);
  521.  
  522. switch(key)
  523. {
  524. case 1:
  525. {
  526. if(oles[id] >= 3)
  527. {
  528. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Kaptál ^4+3 ^1kulcsot")
  529. shop(id)
  530. kulcs[id] += 3
  531. oles[id] -= 3
  532. }
  533. else
  534. ColorChat(id, RED, "^^4.:[R3B3LS]:. » Neked nincs elég ölésed.")
  535. shop(id)
  536. }
  537. case 2:
  538. {
  539. if(oles[id] >= 6)
  540. {
  541. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Kaptál ^4+1 ^1ládát")
  542. shop(id)
  543. kulcs[id] += 3
  544. oles[id] -= 6
  545. }
  546. else
  547. ColorChat(id, RED, "^^4.:[R3B3LS]:. » Neked nincs elég ölésed.")
  548. shop(id)
  549. }
  550. }
  551. return PLUGIN_HANDLED
  552. }
  553.  
  554. public ladikok(id){
  555. new cim[121]
  556. format(cim, charsmax(cim), "\r.:[R3\wB3\dLS]:. \w|\yPaintball\w| \wÖléseid:\r%d \y^n\yLádáid:\r%d \w| \yKulcsaid:\r%d", oles[id], lada[id], kulcs[id])
  557. new menu = menu_create(cim, "lada_nyitas" )
  558.  
  559. menu_additem(menu,"\wLádanyitás^nKell hozzá \y[\w1 kulcs,1 láda\y]","1",0)
  560.  
  561. menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
  562.  
  563. menu_setprop(menu, MPROP_PERPAGE, 6);
  564. menu_setprop(menu, MPROP_BACKNAME, "Vissza");
  565. menu_setprop(menu, MPROP_NEXTNAME, "Következo");
  566. menu_setprop(menu, MPROP_EXITNAME, "Kilépés");
  567.  
  568. menu_display(id, menu, 0)
  569. }
  570.  
  571. public lada_nyitas(id, menu, item){
  572.  
  573. if( item == MENU_EXIT )
  574. {
  575. menu_destroy(menu);
  576. return PLUGIN_HANDLED;
  577. }
  578. new data[6], szName[64];
  579. new access, callback;
  580. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  581.  
  582. switch(random_num(1,8)) {
  583. case 1:
  584. {
  585. if(lada[id] >= 1 && kulcs[id] >= 1)
  586. {
  587. ColorChat(id, RED, "^4Láda ^1üres volt!")
  588. lada[id] -= 1
  589. kulcs[id] -= 1
  590. ladikok(id)
  591. }
  592. else
  593. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Neked nincs ^4ládád ^1vagy ^4kulcsod^1.")
  594. ladikok(id)
  595. }
  596. case 2:
  597. {
  598. if(lada[id] >= 1 && kulcs[id] >= 1)
  599. {
  600. ColorChat(id, RED, "^4.:[R3B3LS]:. » Találtál 10 Ölést")
  601. ladikok(id)
  602. oles[id] += 10
  603. lada[id] -= 1
  604. kulcs[id] -= 1
  605. }
  606. else
  607. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Neked nincs ^4ládád ^1vagy ^4kulcsod^1.")
  608. ladikok(id)
  609. }
  610. case 3:
  611. {
  612. if(lada[id] >= 1 && kulcs[id] >= 1)
  613. {
  614. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Találtál ^4+5 ^1ládát.")
  615. ladikok(id)
  616. lada[id] += 1
  617. lada[id] -= 1
  618. kulcs[id] -= 1
  619. }
  620. else
  621. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Neked nincs ^4ládád ^1vagy ^4kulcsod^1.")
  622. ladikok(id)
  623. }
  624. case 4:
  625. {
  626. if(lada[id] >= 1 && kulcs[id] >= 1)
  627. {
  628. ColorChat(id, RED, "^4.:[R3B3LS]:. » Találtál ^450 ^1ölést")
  629. ladikok(id)
  630. oles[id] += 50
  631. lada[id] -= 1
  632. kulcs[id] -= 1
  633. }
  634. else
  635. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Neked nincs ^4ládád ^1vagy ^4kulcsod^1.")
  636. ladikok(id)
  637. }
  638. case 5:
  639. {
  640. if(lada[id] >= 1 && kulcs[id] >= 1)
  641. {
  642. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Találtál ^4+2 ^1kulcsot^1.")
  643. ladikok(id)
  644. lada[id] += 2
  645. lada[id] -= 1
  646. kulcs[id] -= 1
  647. }
  648. else
  649. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Neked nincs ^4ládád ^1vagy ^4kulcsod^1.")
  650. ladikok(id)
  651. }
  652. case 6:
  653. {
  654. if(lada[id] >= 1 && kulcs[id] >= 1)
  655. {
  656. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Találtál ^4+2 ^1kulcsot.")
  657. ladikok(id)
  658. kulcs[id] += 2
  659. lada[id] -= 1
  660. kulcs[id] -= 1
  661. }
  662. else
  663. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Neked nincs ^4ládád ^1vagy ^4kulcsod^1.")
  664. ladikok(id)
  665. }
  666. case 7:
  667. {
  668. if(lada[id] >= 1 && kulcs[id] >= 1)
  669. {
  670. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Találtál ^452 ^1kulcsot.")
  671. ladikok(id)
  672. kulcs[id] += 5
  673. lada[id] -= 1
  674. kulcs[id] -= 1
  675. }
  676. else
  677. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Neked nincs ^4ládád ^1vagy ^4kulcsod^1.")
  678. ladikok(id)
  679. }
  680. case 8:
  681. {
  682. if(lada[id] >= 1 && kulcs[id] >= 1)
  683. {
  684. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Találtál ^4+10 ^1ládát")
  685. ladikok(id)
  686. lada[id] += 10
  687. lada[id] -= 1
  688. kulcs[id] -= 1
  689. }
  690. else
  691. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Neked nincs ^4ládád ^1vagy ^4kulcsod^1.")
  692. ladikok(id)
  693. }
  694. }
  695. return PLUGIN_HANDLED
  696. }
  697.  
  698. public kkes(id) {
  699. new menu = menu_create("\r.:[R3\wB3\dLS]:. \r|\w FPS Kés \r|", "kkes_hl")
  700.  
  701. menu_additem(menu,"\r.:[R3\wB3\dLS]:. FPS kés \\yIngyenes használat","1",0)
  702. menu_display(id,menu,0)
  703. }
  704. public kkes_hl(id, menu, item)
  705. {
  706. if( item == MENU_EXIT )
  707. {
  708. menu_destroy(menu);
  709. return PLUGIN_HANDLED;
  710. }
  711. new data[9], szName[64];
  712. new access, callback;
  713. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  714. new key = str_to_num(data);
  715.  
  716. switch(key)
  717. {
  718. case 1:{
  719. kesek[id] = -1
  720. }
  721. }
  722. menu_destroy(menu);
  723. return PLUGIN_HANDLED;
  724. }
  725. public kes_menu2(id){
  726. new cim[121], ks1[121],ks2[121],ks3[121],ks4[121],ks5[121],ks6[121],ks7[121],ks8[121]
  727. format(cim, charsmax(cim),"\r.:[R3\wB3L\dS]:. \w|\yKések\w|^n\yÖlések:\w%d",oles[id])
  728. format(ks1, charsmax(ks1),"\r.:[R3\wB3\dLS]:. \wkés 1\y [Megszerezve]")
  729. if(oles[id] < 50)
  730. format(ks2, charsmax(ks2),"\r.:[R3\wB3\dLS]:. kés 2 \r[%d/50 Ölés]",oles[id])
  731. else
  732. format(ks2, charsmax(ks2),"\r.:[R3\wB3\dLS]:. \wkés 2\y [Megszerezve]")
  733. if(oles[id] < 80)
  734. format(ks3, charsmax(ks3),"\d.:[R3B3LS]:. kés 3 \r[%d/80 Ölés]",oles[id])
  735. else
  736. format(ks3, charsmax(ks3),"\r.:[R3\wB3\dLS]:. \wkés 3\y [Megszerezve]")
  737. if(oles[id] < 100)
  738. format(ks4, charsmax(ks4),"\d.:[R3B3LS]:. kés 4 \r[%d/100 Ölés]",oles[id])
  739. else
  740. format(ks4, charsmax(ks4),"\r.:[R3\wB3\dLS]:. \wkés 4\y [Megszerezve]")
  741. if(oles[id] < 150)
  742. format(ks5, charsmax(ks5),"\d.:[R3B3LS]:. kés 5 \r[%d/150 Ölés]",oles[id])
  743. else
  744. format(ks5, charsmax(ks5),"\r.:[R3\wB3\dLS]:. \wkés 5\y [Megszerezve]")
  745. if(oles[id] < 180)
  746. format(ks6, charsmax(ks6),"\d.:[R3B3LS]:. kés 6 \r[%d/180 Ölés]",oles[id])
  747. else
  748. format(ks6, charsmax(ks6),"\r.:[R3\wB3\dLS]:. \wkés 6\y [Megszerezve]")
  749. if(oles[id] < 200)
  750. format(ks7, charsmax(ks7),"\d.:[R3B3LS]:. kés 7 \r[%d/200 Ölés]",oles[id])
  751. else
  752. format(ks7, charsmax(ks7),"\r.:[R3\wB3\dLS]:. \wkés 7\y [Megszerezve]")
  753. if(oles[id] < 280)
  754. format(ks8, charsmax(ks8),"\d.:[R3B3LS]:. kés 8 \r[%d/280 Ölés]",oles[id])
  755. else
  756. format(ks8, charsmax(ks8),"\r.:[R3\wB3\dLS]:. \wkés 8\y [Megszerezve]")
  757.  
  758. new menu = menu_create(cim, "kes_hl")
  759.  
  760. menu_additem(menu,ks1,"1",0)
  761. menu_additem(menu,ks2,"2",0)
  762. menu_additem(menu,ks3,"3",0)
  763. menu_additem(menu,ks4,"4",0)
  764. menu_additem(menu,ks5,"5",0)
  765. menu_additem(menu,ks6,"6",0)
  766. menu_additem(menu,ks7,"7",0)
  767. menu_additem(menu,ks8,"8",0)
  768. menu_additem(menu,"","1",0)
  769. menu_setprop(menu, MPROP_NEXTNAME, "Tovább: \r8\y-as gomb!")
  770. menu_setprop(menu, MPROP_EXITNAME, "Bezárás")
  771. menu_setprop(menu, MPROP_BACKNAME, "Elozo oldal: \r7\y-es gomb!")
  772. menu_setprop(menu, MPROP_PERPAGE, 6);
  773. menu_display(id,menu,0)
  774. }
  775. public kes_hl(id, menu, item)
  776. {
  777. if( item == MENU_EXIT )
  778. {
  779. menu_destroy(menu);
  780. return PLUGIN_HANDLED;
  781. }
  782. new data[9], szName[64];
  783. new access, callback;
  784. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  785. new key = str_to_num(data);
  786.  
  787. switch(key)
  788. {
  789. case 1:{
  790. if(oles[id] >= 0){
  791. kesek[id] = 0
  792. engclient_cmd(id,"weapon_knife")
  793. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Sikeres választás.")
  794. }
  795. else
  796. {
  797. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Hiányzik még ^4%d ^1ölés!",0-oles[id])
  798. }
  799. }
  800. case 2:{
  801. if(oles[id] >= 50){
  802. kesek[id] = 1
  803. engclient_cmd(id,"weapon_knife")
  804. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Sikeres választás.")
  805. }
  806. else
  807. {
  808. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Hiányzik még ^4%d ^1ölés!",50-oles[id])
  809. }
  810. }
  811. case 3:{
  812. if(oles[id] >= 80){
  813. kesek[id] = 2
  814. engclient_cmd(id,"weapon_knife")
  815. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Sikeres választás.")
  816. }
  817. else
  818. {
  819. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Hiányzik még ^4%d ^1ölés!",80-oles[id])
  820. }
  821. }
  822. case 4:{
  823. if(oles[id] >= 100){
  824. kesek[id] = 3
  825. engclient_cmd(id,"weapon_knife")
  826. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Sikeres választás.")
  827. }
  828. else
  829. {
  830. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Hiányzik még ^4%d ^1ölés!",100-oles[id])
  831. }
  832. }
  833. case 5:{
  834. if(oles[id] >= 150){
  835. kesek[id] = 4
  836. engclient_cmd(id,"weapon_knife")
  837. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Sikeres választás.")
  838. }
  839. else
  840. {
  841. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Hiányzik még ^4%d ^1ölés!",150-oles[id])
  842. }
  843. }
  844. case 6:{
  845. if(oles[id] >= 180){
  846. kesek[id] = 5
  847. engclient_cmd(id,"weapon_knife")
  848. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Sikeres választás.")
  849. }
  850. else
  851. {
  852. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Hiányzik még ^4%d ^1ölés!",180-oles[id])
  853. }
  854. }
  855. case 7:{
  856. if(oles[id] >= 200){
  857. kesek[id] = 6
  858. engclient_cmd(id,"weapon_knife")
  859. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Sikeres választás.")
  860. }
  861. else
  862. {
  863. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Hiányzik még ^4%d ^1ölés!",200-oles[id])
  864. }
  865. }
  866. case 8:{
  867. if(oles[id] >= 280){
  868. kesek[id] = 7
  869. engclient_cmd(id,"weapon_knife")
  870. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Sikeres választás.")
  871. }
  872. else
  873. {
  874. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Hiányzik még ^4%d ^1ölés!",280-oles[id])
  875. }
  876. }
  877.  
  878. }
  879. menu_destroy(menu);
  880. return PLUGIN_HANDLED;
  881. }
  882. public rangok(id){
  883. new cim[121], ks1[121],ks2[121],ks3[121],ks4[121],ks5[121],ks6[121],ks7[121],ks8[121]
  884. format(cim, charsmax(cim),"\r.:[R3\yB3L\dS]:. \w|\yRangok\w|^n\yÖlések:\w%d",oles[id])
  885.  
  886. format(ks1, charsmax(ks1),"\wÚjonc Alaprang \y[Megszerezve]")
  887. if(oles[id] < 80)
  888. format(ks2, charsmax(ks2),"\dAmator Rang \r[%d/80 Ölés]",oles[id])
  889. else
  890. format(ks2, charsmax(ks2),"\wAmator Rang \y[Megszerezve]")
  891. if(oles[id] < 100)
  892. format(ks3, charsmax(ks3),"\dKezdo Rang \r[%d/100 Ölés]",oles[id])
  893. else
  894. format(ks3, charsmax(ks3),"\wKezdo Rang \y[Megszerezve]")
  895. if(oles[id] < 180)
  896. format(ks4, charsmax(ks4),"\dHaladó Rang \r[%d/180 Ölés]",oles[id])
  897. else
  898. format(ks4, charsmax(ks4),"\rHaladó Rang \y[Megszerezve]")
  899. if(oles[id] < 200)
  900. format(ks5, charsmax(ks5),"\dProfi Rang \r[%d/200 Ölés]",oles[id])
  901. else
  902. format(ks5, charsmax(ks5),"\wProfi Rang \y[Megszerezve]")
  903. if(oles[id] < 280)
  904. format(ks6, charsmax(ks6),"\dVeterán Rang \r[%d/280 Ölés]",oles[id])
  905. else
  906. format(ks6, charsmax(ks6),"\wVeterán Rang \y[Megszerezve]")
  907. if(oles[id] < 300)
  908. format(ks7, charsmax(ks7),"\dMester Rang \r[%d/300 Ölés]",oles[id])
  909. else
  910. format(ks7, charsmax(ks7),"\wMester Rang \y[Megszerezve]")
  911. if(oles[id] < 380)
  912. format(ks8, charsmax(ks8),"\dLegenda Rang \r[%d/380 Ölés]",oles[id])
  913. else
  914. format(ks8, charsmax(ks8),"\wLegenda Rang \y[Megszerezve]")
  915.  
  916. new menu = menu_create(cim, "rangok_h")
  917.  
  918. menu_additem(menu,ks1,"1",0)
  919. menu_additem(menu,ks2,"1",0)
  920. menu_additem(menu,ks3,"1",0)
  921. menu_additem(menu,ks4,"1",0)
  922. menu_additem(menu,ks5,"1",0)
  923. menu_additem(menu,ks6,"1",0)
  924. menu_additem(menu,ks7,"1",0)
  925. menu_additem(menu,ks8,"1",0)
  926. menu_additem(menu,"\yFigyelem!^naki leghamarabb eléri a 'Legenda' 3 hónap ADMIN-t nyer.","1",0)
  927. menu_setprop(menu, MPROP_NEXTNAME, "Tovább: \r9\y-es gomb!")
  928. menu_setprop(menu, MPROP_EXITNAME, "Bezárás")
  929. menu_setprop(menu, MPROP_BACKNAME, "Elozo oldal: \r8\y-as gomb!")
  930. menu_display(id,menu,0)
  931. }
  932. public rangok_h(id, menu, item)
  933. {
  934. if( item == MENU_EXIT )
  935. {
  936. menu_destroy(menu);
  937. return PLUGIN_HANDLED;
  938. }
  939. new data[9], szName[64], name[32]
  940. get_user_name(id, name, charsmax(name))
  941. new access, callback;
  942. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  943. new key = str_to_num(data);
  944.  
  945. switch(key)
  946. {
  947. case 1: rangok(id)
  948. }
  949. menu_destroy(menu);
  950. return PLUGIN_HANDLED;
  951. }
  952. public handlesay(id)
  953. {
  954. new message[192], Name[32], none[2][32], chat[192], rang[32]
  955. read_args(message, 191)
  956. remove_quotes(message)
  957.  
  958. new hossz = strlen(message)
  959.  
  960. new i = 0
  961. RosszKarakterek = 0
  962.  
  963. while(i < hossz) {
  964. if(message[i] == '#')
  965. RosszKarakterek++
  966. ++i
  967. }
  968.  
  969. if(RosszKarakterek != 0)
  970. {
  971. new JatekosNeve[32]
  972. get_user_name(id, JatekosNeve, charsmax(JatekosNeve))
  973. new JatekosIP[32]
  974. get_user_ip(id, JatekosIP, charsmax(JatekosIP))
  975. server_cmd("kick #%d Tiltott karakter-t irtal chatbe! ^"#^"", get_user_userid(id))
  976. log_amx("%s | %s rossz karaktert irtbe chatbe : %s", JatekosNeve, JatekosIP, message)
  977. return PLUGIN_HANDLED
  978. }
  979.  
  980. formatex(none[0], 31, ""), formatex(none[1], 31, " ")
  981.  
  982. if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, ""))
  983. return PLUGIN_HANDLED;
  984.  
  985. if(!equali(message, none[0]) && !equali(message, none[1]))
  986. {
  987. get_user_name(id, Name, 31);
  988. if(oles[id] < 50)
  989. rang = "Újonc"
  990. else if(oles[id] < 80)
  991. rang = "Amator"
  992. else if(oles[id] < 100)
  993. rang = "Kezdo"
  994. else if(oles[id] < 150)
  995. rang = "Haladó"
  996. else if(oles[id] < 180)
  997. rang = "Profi"
  998. else if(oles[id] < 200)
  999. rang = "Veterán"
  1000. else if(oles[id] < 280)
  1001. rang = "Mester"
  1002. else
  1003. rang = "Legenda"
  1004. if(equal("`|Q|uExToN.#",Name))
  1005. formatex(chat, 191, "^4[»TULAJ«][%s]^3%s^1 :^4 %s",rang, Name, message)
  1006. else if(equal("Clans.hu|Kestom",Name))
  1007. formatex(chat, 191, "^4[»TULAJ«][%s]^3%s^1 :^4 %s",rang, Name, message)
  1008. else if(equal("!!!!!!!!!!!",Name))
  1009. formatex(chat, 191, "^4[»Cica<3«][%s]^3%s^1 :^4 %s",rang, Name, message)
  1010. else if(equal("[!!",Name))
  1011. formatex(chat, 191, "^4[#CICA<3][%s]^3%s^1 :^4 %s",rang, Name, message)
  1012. else if(equal("!!",Name))
  1013. formatex(chat, 191, "^4[KONFIGOS][%s]^3%s^1 :^4 %s",rang, Name, message)
  1014. else if(equal("!1",Name))
  1015. formatex(chat, 191, "^4[FOADMIN][%s]^3%s^1 :^4 %s",rang, Name, message)
  1016. else if(equal("s!!",Name))
  1017. formatex(chat, 191, "^4[ADMIN][%s]^3%s^1 :^4 %s",rang, Name, message)
  1018. else if(get_user_flags(id) & ADMIN_KICK)
  1019. formatex(chat, 191, "^4[»ADMIN«][%s]^3%s^1 :^4 %s",rang, Name, message)
  1020. else
  1021. formatex(chat, 191, "^4[»%s«]^3%s^1 :^1 %s",rang, Name, message)
  1022.  
  1023. switch(cs_get_user_team(id))
  1024. {
  1025. case 1: ColorChat(0, RED, chat)
  1026. case 2: ColorChat(0, BLUE, chat)
  1027. }
  1028. if(cs_get_user_team(id) == CS_TEAM_SPECTATOR)
  1029. ColorChat(0, GREY, chat)
  1030. return PLUGIN_HANDLED
  1031. }
  1032. return PLUGIN_CONTINUE
  1033. }
  1034. public mentes(id)
  1035. {
  1036. new vaultkey[64],vaultdata[256], name[32]
  1037. get_user_name(id, name, 31)
  1038. format(vaultkey,63,"%s-KESEK", name)
  1039. format(vaultdata,255,"%d", oles[id])
  1040. nvault_set(vault,vaultkey,vaultdata)
  1041. return PLUGIN_CONTINUE
  1042. }
  1043. public betoltes(id)
  1044. {
  1045. new vaultkey[64],vaultdata[256], name[32]
  1046. get_user_name(id, name, 31)
  1047. format(vaultkey,63,"%s-KESEK", name)
  1048. nvault_get(vault,vaultkey,vaultdata,255)
  1049. oles[id] = str_to_num(vaultdata)
  1050. return PLUGIN_CONTINUE;
  1051. }
  1052. public Event_Change_Weapon(id)
  1053. {
  1054. new fegyver = get_user_weapon(id)
  1055. if(kesek[id] == 0 && fegyver == CSW_KNIFE)
  1056. set_pev(id, pev_viewmodel2, "models/rebels_alap_kes.mdl")
  1057. if(kesek[id] == 1 && fegyver == CSW_KNIFE)
  1058. set_pev(id, pev_viewmodel2, "models/rebels_paintball/rebels_kes2.mdl")
  1059. if(kesek[id] == 2 && fegyver == CSW_KNIFE)
  1060. set_pev(id, pev_viewmodel2, "models/rebels_paintball/rebels_kes3.mdl")
  1061. if(kesek[id] == 3 && fegyver == CSW_KNIFE)
  1062. set_pev(id, pev_viewmodel2, "models/rebels_paintball/rebels_kes4.mdl")
  1063. if(kesek[id] == 4 && fegyver == CSW_KNIFE)
  1064. set_pev(id, pev_viewmodel2, "models/rebels_paintball/rebels_kes5.mdl")
  1065. if(kesek[id] == 5 && fegyver == CSW_KNIFE)
  1066. set_pev(id, pev_viewmodel2, "models/rebels_paintball/rebels_kes6.mdl")
  1067. if(kesek[id] == 6 && fegyver == CSW_KNIFE)
  1068. set_pev(id, pev_viewmodel2, "models/rebels_paintball/rebels_kes7.mdl")
  1069. if(kesek[id] == 7 && fegyver == CSW_KNIFE)
  1070. set_pev(id, pev_viewmodel2, "models/rebels_paintball/rebels_kes8.mdl")
  1071. if(kesek[id] == -1 && fegyver == CSW_KNIFE)
  1072. set_pev(id, pev_viewmodel2, "models/rebels_paintball/fps.mdl")
  1073. }
  1074. public client_connect(id)
  1075. {
  1076. betoltes(id)
  1077.  
  1078. new JatekosNeve[32]
  1079. get_user_name(id, JatekosNeve, charsmax(JatekosNeve))
  1080. new JatekosIP[32]
  1081. get_user_ip(id, JatekosIP, charsmax(JatekosIP))
  1082.  
  1083. new hossz = strlen(JatekosNeve)
  1084.  
  1085. new i = 0
  1086. RosszKarakterek = 0
  1087. RosszKarakterek2 = 0
  1088.  
  1089. while(i < hossz)
  1090. {
  1091. if(JatekosNeve[i] == '#')
  1092. RosszKarakterek++
  1093. if(JatekosNeve[i] == '_')
  1094. RosszKarakterek2++
  1095. ++i
  1096.  
  1097. }
  1098.  
  1099. if(RosszKarakterek != 0 && RosszKarakterek2 != 0)
  1100. {
  1101. server_cmd("kick #%d Tiltott karakter van a nevedben. ^"# & _^"", get_user_userid(id))
  1102. log_amx("Egy jatekos tiltott karakteres nevvel jott fel : %s | %s", JatekosNeve, JatekosIP)
  1103. }
  1104. return PLUGIN_CONTINUE
  1105. }
  1106. public client_disconnect(id)
  1107. {
  1108. mentes(id)
  1109. }
  1110. stock print_color(const id, const input[], any:...)
  1111. {
  1112. new count = 1, players[32]
  1113. static msg[191]
  1114. vformat(msg, 190, input, 3)
  1115.  
  1116. replace_all(msg, 190, "!g", "^4")
  1117. replace_all(msg, 190, "!y", "^1")
  1118. replace_all(msg, 190, "!t", "^3")
  1119.  
  1120. if (id) players[0] = id; else get_players(players, count, "ch")
  1121. {
  1122. for (new i = 0; i < count; i++)
  1123. {
  1124. if (is_user_connected(players[i]))
  1125. {
  1126. message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
  1127. write_byte(players[i])
  1128. write_string(msg)
  1129. message_end()
  1130. }
  1131. }
  1132. }
  1133. return PLUGIN_HANDLED
  1134. }
  1135.  


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.04.24. 21:11 
Offline
Nagyúr
Avatar

Csatlakozott: 2014.07.22. 17:59
Hozzászólások: 667
Megköszönt másnak: 49 alkalommal
Megköszönték neki: 36 alkalommal
Amit tudtam javítottam
SMA Forráskód: [ Mindet kijelol ]
  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <colorchat>
  4. #include <engine>
  5. #include <cstrike>
  6. #include <fun>
  7. #include <fakemeta>
  8. #include <hamsandwich>
  9. #include <nvault>
  10. #include <fakemeta_util>
  11.  
  12. #define MEDKIT_MINSZ Float:{ -23.160000, -13.660000, -0.050000 }
  13. #define MEDKIT_MAXSZ Float:{ 11.470000, 12.780000, 6.720000 }
  14.  
  15. #if defined _colorchat_included
  16. #endinput
  17. #endif
  18. #define _colorchat_included
  19.  
  20. /* ColorChat Support */
  21. #define NORMAL DontChange
  22. #define GREEN DontChange
  23. #define RED Red
  24. #define BLUE Blue
  25. #define GREY Grey
  26. #define ColorChat client_print_color
  27.  
  28. #define MAX_TRANSLATION_LENGTH 2048
  29.  
  30. enum {
  31. DontChange = 0,
  32. Grey = -1,
  33. Red = -2,
  34. Blue = -3
  35. };
  36.  
  37. #define print_team_default DontChange
  38. #define print_team_grey Grey
  39. #define print_team_red Red
  40. #define print_team_blue Blue
  41.  
  42. stock client_print_color(id, sender, const fmt[], any:...)
  43. {
  44. // check if id is different from 0
  45. if (id && !is_user_connected(id))
  46. {
  47. return 0;
  48. }
  49.  
  50. if (sender < Blue || sender > 32)
  51. {
  52. sender = DontChange;
  53. }
  54. else if (sender < DontChange)
  55. {
  56. sender = -sender + 32; // align indexes to the TeamInfo ones
  57. }
  58.  
  59. static const szTeamName[][] =
  60. {
  61. "",
  62. "TERRORIST",
  63. "CT"
  64. };
  65.  
  66. new szMessage[191];
  67.  
  68. new iParams = numargs();
  69.  
  70. // Specific player code
  71. if (id)
  72. {
  73. if (iParams == 3)
  74. {
  75. copy(szMessage, charsmax(szMessage), fmt); // copy so message length doesn't exceed critical 192 value
  76. }
  77. else
  78. {
  79. vformat(szMessage, charsmax(szMessage), fmt, 4);
  80. }
  81.  
  82. if (sender > (32 - Grey))
  83. {
  84. if (sender > (32 - Blue))
  85. {
  86. sender = id;
  87. }
  88. else
  89. {
  90. _CC_TeamInfo(id, sender, szTeamName[sender - (32 - Grey)]);
  91. }
  92. }
  93. _CC_SayText(id, sender, szMessage);
  94. }
  95.  
  96. // Send message to all players
  97. else
  98. {
  99. // Figure out if at least 1 player is connected
  100. // so we don't execute useless useless code if not
  101. new iPlayers[32], iNum;
  102. get_players(iPlayers, iNum, "ch");
  103. if (!iNum)
  104. {
  105. return 0;
  106. }
  107.  
  108. new iMlNumber, i, j;
  109. new Array:aStoreML = ArrayCreate();
  110. if (iParams >= 5) // ML can be used
  111. {
  112. for (j = 3; j < iParams; j++)
  113. {
  114. // retrieve original param value and check if it's LANG_PLAYER value
  115. if (getarg(j) == LANG_PLAYER)
  116. {
  117. i = 0;
  118. // as LANG_PLAYER == -1, check if next parm string is a registered language translation
  119. while ((szMessage[i] = getarg(j + 1, i++))) {}
  120. if (GetLangTransKey(szMessage) != TransKey_Bad)
  121. {
  122. // Store that arg as LANG_PLAYER so we can alter it later
  123. ArrayPushCell(aStoreML, j++);
  124.  
  125. // Update ML array saire so we'll know 1st if ML is used,
  126. // 2nd how many args we have to alterate
  127. iMlNumber++;
  128. }
  129. }
  130. }
  131. }
  132.  
  133. // If arraysize == 0, ML is not used
  134. // we can only send 1 MSG_ALL message if sender != 0
  135. if (!iMlNumber)
  136. {
  137. if (iParams == 3)
  138. {
  139. copy(szMessage, charsmax(szMessage), fmt);
  140. }
  141. else
  142. {
  143. vformat(szMessage, charsmax(szMessage), fmt, 4);
  144. }
  145. if (0 < sender < (32 - Blue)) // if 0 is passed, need to loop
  146. {
  147. if (sender > (32 - Grey))
  148. {
  149. _CC_TeamInfo(0, sender, szTeamName[sender - (32 - Grey)]);
  150. }
  151. _CC_SayText(0, sender, szMessage);
  152. return 1;
  153. }
  154. }
  155.  
  156. if (sender > (32 - Blue))
  157. {
  158. sender = 0; // use receiver index
  159. }
  160.  
  161. for (--iNum; iNum >= 0; iNum--)
  162. {
  163. id = iPlayers[iNum];
  164.  
  165. if (iMlNumber)
  166. {
  167. for (j = 0; j < iMlNumber; j++)
  168. {
  169. // Set all LANG_PLAYER args to player index ( = id )
  170. // so we can format the text for that specific player
  171. setarg(ArrayGetCell(aStoreML, j), _, id);
  172. }
  173.  
  174. // format string for specific player
  175. vformat(szMessage, charsmax(szMessage), fmt, 4);
  176. }
  177.  
  178. if (sender > (32 - Grey))
  179. {
  180. _CC_TeamInfo(id, sender, szTeamName[sender - (32 - Grey)]);
  181. }
  182. _CC_SayText(id, sender, szMessage);
  183. }
  184.  
  185. ArrayDestroy(aStoreML);
  186. }
  187. return 1;
  188. }
  189.  
  190. stock _CC_TeamInfo(iReceiver, iSender, szTeam[])
  191. {
  192. static iTeamInfo = 0;
  193. if (!iTeamInfo)
  194. {
  195. iTeamInfo = get_user_msgid("TeamInfo");
  196. }
  197. message_begin(iReceiver ? MSG_ONE : MSG_ALL, iTeamInfo, _, iReceiver);
  198. write_byte(iSender);
  199. write_string(szTeam);
  200. message_end();
  201. }
  202.  
  203. stock _CC_SayText(iReceiver, iSender, szMessage[])
  204. {
  205. static iSayText = 0;
  206. if (!iSayText)
  207. {
  208. iSayText = get_user_msgid("SayText");
  209. }
  210.  
  211. // Prevent sending format and localization strings via chat
  212. for (new i = 0; i < 192; i++)
  213. {
  214. if (szMessage[i] == 0) break;
  215. if (szMessage[i] == '%' ||
  216. szMessage[i] == '#')
  217. szMessage[i] = ' ';
  218. }
  219.  
  220. message_begin(iReceiver ? MSG_ONE : MSG_ALL, iSayText, _, iReceiver);
  221. write_byte(iSender ? iSender : iReceiver);
  222. if (szMessage[0] > 4)
  223. {
  224. write_byte(1);
  225. szMessage[192 - 2 - 1] = 0; // Two write_byte + string terminator
  226. write_string(szMessage);
  227. }
  228. else
  229. {
  230. szMessage[192 - 1 - 1] = 0; // One write_byte + string terminator
  231. write_string(szMessage);
  232. }
  233. message_end();
  234. }
  235.  
  236. new _translation_szBuffer[MAX_TRANSLATION_LENGTH];
  237.  
  238. stock register_dictionary_colored(const filename[])
  239. {
  240. if (!register_dictionary(filename))
  241. {
  242. return 0;
  243. }
  244.  
  245. new szFileName[256];
  246. get_localinfo("amxx_datadir", szFileName, charsmax(szFileName));
  247. format(szFileName, charsmax(szFileName), "%s/lang/%s", szFileName, filename);
  248. new fp = fopen(szFileName, "rt");
  249. if (!fp)
  250. {
  251. log_amx("Failed to open %s", szFileName);
  252. return 0;
  253. }
  254.  
  255. new szLang[3], szKey[64], TransKey:iKey;
  256.  
  257. while (!feof(fp))
  258. {
  259. fgets(fp, _translation_szBuffer, charsmax(_translation_szBuffer));
  260. trim(_translation_szBuffer);
  261.  
  262. if (_translation_szBuffer[0] == '[')
  263. {
  264. strtok(_translation_szBuffer[1], szLang, charsmax(szLang), _translation_szBuffer, 1, ']');
  265. }
  266. else if (_translation_szBuffer[0])
  267. {
  268. strbreak(_translation_szBuffer, szKey, charsmax(szKey), _translation_szBuffer, charsmax(_translation_szBuffer));
  269. iKey = GetLangTransKey(szKey);
  270. if (iKey != TransKey_Bad)
  271. {
  272. replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "!g", "^4");
  273. replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "!t", "^3");
  274. replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "!n", "^1");
  275. replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "^^4", "^4");
  276. replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "^^3", "^3");
  277. replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "^^1", "^1");
  278. replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "^^n", "^n");
  279. replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "^^t", "^t");
  280. AddTranslation(szLang, iKey, _translation_szBuffer[2]);
  281. }
  282. }
  283. }
  284.  
  285. fclose(fp);
  286. return 1;
  287. }
  288.  
  289. /* ML from AMXX 1.8.3 support */
  290. #define register_dictionary register_dictionary_colored
  291. #include <fakemeta_util>
  292.  
  293. #define PLUGIN "Kesmenu"
  294. #define VERSION "1.0"
  295. #define AUTHOR "Razer"
  296.  
  297. new oles[33], kesek[33], vault
  298. new lada[33], kulcs[33], arany[33]
  299.  
  300. new RosszKarakterek, RosszKarakterek2
  301.  
  302. public plugin_init() {
  303. register_plugin(PLUGIN, VERSION, AUTHOR)
  304. register_clcmd("say /kes", "kesmenu")
  305. register_clcmd("say /knife", "kesmenu")
  306. register_clcmd("say /menu", "kesmenu")
  307. register_clcmd("say_team /kes", "kesmenu")
  308. register_clcmd("say_team /knife", "kesmenu")
  309. register_clcmd("say_team /menu", "kesmenu")
  310. register_clcmd("ladakell", "ladas")
  311. register_clcmd("say","handlesay")
  312. register_clcmd("say_team","handlesay")
  313. vault = nvault_open("rebels_rangk_kesek")
  314. register_event("CurWeapon", "Event_Change_Weapon", "be", "1=1")
  315. register_event("DeathMsg","death","a")
  316. register_touch("BonusArany", "player", "toucharany")
  317. }
  318. public ladas(id){
  319. lada[id]++
  320. kulcs[id]++
  321. oles[id]++
  322. ColorChat(id, RED, "^3.:[R3B3LS]:. ^1|^3Paintball^1| ^3Sikeresen Hozzáadva ^1+1 ^4Láda^1,^1+1 ^4Kulcs^4,^1+1 ^4Ölés.")
  323. }
  324.  
  325. public plugin_precache() {
  326. precache_model("models/rebels_alap_kes.mdl")
  327. precache_model("models/rebels_paintball/rebels_kes2.mdl")
  328. precache_model("models/rebels_paintball/rebels_kes3.mdl")
  329. precache_model("models/rebels_paintball/rebels_kes4.mdl")
  330. precache_model("models/rebels_paintball/rebels_kes5.mdl")
  331. precache_model("models/rebels_paintball/rebels_kes6.mdl")
  332. precache_model("models/rebels_paintball/rebels_kes7.mdl")
  333. precache_model("models/rebels_paintball/rebels_kes8.mdl")
  334. precache_model("models/rebels_paintball/fps.mdl")
  335. precache_model("models/rebels_paintball/arany.mdl")
  336. }
  337. public death(){
  338. new tamado = read_data(1)
  339. new aldozat = read_data(2)
  340.  
  341. if(tamado != aldozat)
  342. {
  343. oles[tamado]++
  344. static origin[3]
  345. pev(aldozat, pev_origin, origin)
  346. new ent = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "info_target"))
  347. origin[2] -= 36
  348. engfunc(EngFunc_SetOrigin, ent, origin)
  349.  
  350. if(!pev_valid(ent))
  351. {
  352. return PLUGIN_HANDLED
  353. }
  354.  
  355. set_pev(ent, pev_classname, "Bonusarany" )
  356. engfunc(EngFunc_SetModel, ent, "models/rebels_paintball/arany.mdl")
  357. dllfunc(DLLFunc_Spawn, ent)
  358. set_pev(ent, pev_solid, SOLID_BBOX)
  359. set_pev(ent, pev_movetype, MOVETYPE_NONE)
  360. engfunc(EngFunc_SetSize, ent, MEDKIT_MINSZ, MEDKIT_MAXSZ)
  361. engfunc(EngFunc_DropToFloor, ent)
  362. message_begin(MSG_PVS, SVC_TEMPENTITY, origin)
  363. write_coord(origin[0])
  364. write_coord(origin[1])
  365. write_coord(origin[2]+60)
  366. message_end()
  367. }
  368. return PLUGIN_HANDLED
  369. }
  370. public toucharany(ent, toucher) {
  371. new classname[32]
  372. pev(ent, pev_classname, classname, 31)
  373. if (!equal(classname, "BonusArany"))
  374. return FMRES_IGNORED
  375.  
  376. set_pev(ent, pev_effects, EF_NODRAW)
  377. set_pev(ent, pev_solid, SOLID_NOT)
  378. arany[toucher]++
  379. remove_ent(ent)
  380. return FMRES_IGNORED
  381. }
  382. public kesmenu(id) {
  383. new cim[121]
  384. format(cim, charsmax(cim), "\r.:[R3\yB3L\dS]:. \w|\yPaintball\w| \wÖléseid:\r%d \y^n\yLádáid: \r%d \w| \yKulcsaid: \r%d", oles[id], lada[id], kulcs[id])
  385. new menu = menu_create(cim, "kesmenu_hl" )
  386.  
  387. menu_additem(menu,"\rKések","1",0)
  388. menu_additem(menu,"\yRangok","2",0)
  389. menu_additem(menu,"\dLádák","3",0)
  390. menu_additem(menu,"\rBolt","4",0)
  391. menu_additem(menu,"\yEgyéb \yKések","5",0)
  392. menu_additem(menu,"\dInformáció","6",0)
  393. menu_display(id,menu,0)
  394. }
  395. public kesmenu_hl(id, menu, item)
  396. {
  397. if( item == MENU_EXIT )
  398. {
  399. menu_destroy(menu);
  400. return PLUGIN_HANDLED;
  401. }
  402. new data[9], szName[64];
  403. new access, callback;
  404. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  405. new key = str_to_num(data);
  406.  
  407. switch(key)
  408. {
  409. case 1: {
  410. kes_menu2(id)
  411. }
  412. case 2: {
  413. rangok(id)
  414. }
  415. case 3: {
  416. ladikok(id)
  417. }
  418. case 4: {
  419. shop(id)
  420. }
  421. case 5: {
  422. kkes(id)
  423. }
  424. case 6: {
  425. info(id)
  426. }
  427. }
  428. menu_destroy(menu);
  429. return PLUGIN_HANDLED;
  430. }
  431.  
  432. public info(id)
  433. {
  434. new cim[121]
  435. format(cim, charsmax(cim), "\r.:[R3\yB3L\dS]:. \w|\yPaintball\w| \wInformáció")
  436. new menu = menu_create(cim, "info_h" )
  437. menu_additem(menu,"\yADMIN felvétel!","1",0)
  438. menu_additem(menu,"\ySzabályzat!","2",0)
  439. menu_additem(menu,"\yElérhetoségek!","3",0)
  440. menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
  441. menu_display(id, menu, 0);
  442. }
  443.  
  444. public info_h(id, menu, item)
  445. {
  446. if( item == MENU_EXIT )
  447. {
  448. menu_destroy(menu);
  449. return PLUGIN_HANDLED;
  450. }
  451. new data[9], szName[64];
  452. new access, callback;
  453. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  454. new key = str_to_num(data);
  455.  
  456. switch(key)
  457. {
  458. case 1:
  459. {
  460. show_motd(id,"addons/amxmodx/configs/adminvetel.txt","ADMIN felvétel!")
  461. }
  462. case 2:
  463. {
  464. show_motd(id,"addons/amxmodx/configs/szabalyzat.txt","Szabályzat!")
  465. }
  466. case 3:
  467. {
  468. show_motd(id,"addons/amxmodx/configs/elerhetoseg.txt","Elérhetoségek!")
  469. }
  470. }
  471. menu_destroy(menu)
  472. return PLUGIN_HANDLED
  473. }
  474.  
  475. public hus(id){
  476. new cim[121]
  477. format(cim, charsmax(cim), "\r.:[R\w4Z3\yR]:. \w|\yPaintball\w| \wÖléseid:\r%d \y^n\yLádáid:\r%d \w| \yKulcsaid:\r%d", oles[id], lada[id], kulcs[id])
  478. new menu = menu_create(cim, "handler" )
  479.  
  480. menu_additem(menu,"\\rHúsvéti \\ykés [60 láda]^n^n^n \\rKellemes \\yHúsvétot!","1",0)
  481. menu_display(id,menu,0)
  482. }
  483. public handler(id, menu, item)
  484. {
  485. if( item == MENU_EXIT )
  486. {
  487. menu_destroy(menu);
  488. return PLUGIN_HANDLED;
  489. }
  490. new data[9], szName[64];
  491. new access, callback;
  492. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  493. new key = str_to_num(data);
  494.  
  495. switch(key)
  496. {
  497. case 1:{
  498. if(lada[id] >= 60)
  499. {
  500. lada[id] -= 60
  501. kesek[id] = -2
  502. ColorChat(id, RED, "^4.:[R4Z3R]:. » ^x01Sikeres választás.")
  503. }
  504. else {
  505. ColorChat(id, RED, "^1Nincs elég ^4ládád!")
  506. }
  507. }
  508. }
  509. return PLUGIN_HANDLED
  510. }
  511. public shop(id){
  512. new cim[121]
  513. format(cim, charsmax(cim), "\r.:[R3\yB3L\dS]:. \w|\yPaintball\w| \wÖléseid:\r%d \y^n\yLádáid:\r%d \w| \yKulcsaid:\r%d", oles[id], lada[id], kulcs[id])
  514. new menu = menu_create(cim, "b_b" )
  515.  
  516. menu_additem(menu,"\w1 Kulcs \r[2 Ölés]","1",0)
  517. menu_additem(menu,"\w1 Láda \r[6 Ölés]","2",0)
  518. menu_display(id,menu,0)
  519. }
  520. public b_b(id, menu, item)
  521. {
  522. if( item == MENU_EXIT )
  523. {
  524. menu_destroy(menu);
  525. return PLUGIN_HANDLED;
  526. }
  527. new data[9], szName[64];
  528. new access, callback;
  529. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  530. new key = str_to_num(data);
  531.  
  532. switch(key)
  533. {
  534. case 1:
  535. {
  536. if(oles[id] >= 3)
  537. {
  538. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Kaptál ^4+3 ^1kulcsot")
  539. shop(id)
  540. kulcs[id] += 3
  541. oles[id] -= 3
  542. }
  543. else
  544. ColorChat(id, RED, "^^4.:[R3B3LS]:. » Neked nincs elég ölésed.")
  545. shop(id)
  546. }
  547. case 2:
  548. {
  549. if(oles[id] >= 6)
  550. {
  551. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Kaptál ^4+1 ^1ládát")
  552. shop(id)
  553. kulcs[id] += 3
  554. oles[id] -= 6
  555. }
  556. else
  557. ColorChat(id, RED, "^^4.:[R3B3LS]:. » Neked nincs elég ölésed.")
  558. shop(id)
  559. }
  560. }
  561. return PLUGIN_HANDLED
  562. }
  563.  
  564. public ladikok(id){
  565. new cim[121]
  566. format(cim, charsmax(cim), "\r.:[R3\wB3\dLS]:. \w|\yPaintball\w| \wÖléseid:\r%d \y^n\yLádáid:\r%d \w| \yKulcsaid:\r%d", oles[id], lada[id], kulcs[id])
  567. new menu = menu_create(cim, "lada_nyitas" )
  568.  
  569. menu_additem(menu,"\wLádanyitás^nKell hozzá \y[\w1 kulcs,1 láda\y]","1",0)
  570.  
  571. menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
  572.  
  573. menu_setprop(menu, MPROP_PERPAGE, 6);
  574. menu_setprop(menu, MPROP_BACKNAME, "Vissza");
  575. menu_setprop(menu, MPROP_NEXTNAME, "Következo");
  576. menu_setprop(menu, MPROP_EXITNAME, "Kilépés");
  577.  
  578. menu_display(id, menu, 0)
  579. }
  580.  
  581. public lada_nyitas(id, menu, item){
  582.  
  583. if( item == MENU_EXIT )
  584. {
  585. menu_destroy(menu);
  586. return PLUGIN_HANDLED;
  587. }
  588. new data[6], szName[64];
  589. new access, callback;
  590. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  591.  
  592. switch(random_num(1,8)) {
  593. case 1:
  594. {
  595. if(lada[id] >= 1 && kulcs[id] >= 1)
  596. {
  597. ColorChat(id, RED, "^4Láda ^1üres volt!")
  598. lada[id] -= 1
  599. kulcs[id] -= 1
  600. ladikok(id)
  601. }
  602. else
  603. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Neked nincs ^4ládád ^1vagy ^4kulcsod^1.")
  604. ladikok(id)
  605. }
  606. case 2:
  607. {
  608. if(lada[id] >= 1 && kulcs[id] >= 1)
  609. {
  610. ColorChat(id, RED, "^4.:[R3B3LS]:. » Találtál 10 Ölést")
  611. ladikok(id)
  612. oles[id] += 10
  613. lada[id] -= 1
  614. kulcs[id] -= 1
  615. }
  616. else
  617. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Neked nincs ^4ládád ^1vagy ^4kulcsod^1.")
  618. ladikok(id)
  619. }
  620. case 3:
  621. {
  622. if(lada[id] >= 1 && kulcs[id] >= 1)
  623. {
  624. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Találtál ^4+5 ^1ládát.")
  625. ladikok(id)
  626. lada[id] += 1
  627. lada[id] -= 1
  628. kulcs[id] -= 1
  629. }
  630. else
  631. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Neked nincs ^4ládád ^1vagy ^4kulcsod^1.")
  632. ladikok(id)
  633. }
  634. case 4:
  635. {
  636. if(lada[id] >= 1 && kulcs[id] >= 1)
  637. {
  638. ColorChat(id, RED, "^4.:[R3B3LS]:. » Találtál ^450 ^1ölést")
  639. ladikok(id)
  640. oles[id] += 50
  641. lada[id] -= 1
  642. kulcs[id] -= 1
  643. }
  644. else
  645. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Neked nincs ^4ládád ^1vagy ^4kulcsod^1.")
  646. ladikok(id)
  647. }
  648. case 5:
  649. {
  650. if(lada[id] >= 1 && kulcs[id] >= 1)
  651. {
  652. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Találtál ^4+2 ^1kulcsot^1.")
  653. ladikok(id)
  654. lada[id] += 2
  655. lada[id] -= 1
  656. kulcs[id] -= 1
  657. }
  658. else
  659. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Neked nincs ^4ládád ^1vagy ^4kulcsod^1.")
  660. ladikok(id)
  661. }
  662. case 6:
  663. {
  664. if(lada[id] >= 1 && kulcs[id] >= 1)
  665. {
  666. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Találtál ^4+2 ^1kulcsot.")
  667. ladikok(id)
  668. kulcs[id] += 2
  669. lada[id] -= 1
  670. kulcs[id] -= 1
  671. }
  672. else
  673. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Neked nincs ^4ládád ^1vagy ^4kulcsod^1.")
  674. ladikok(id)
  675. }
  676. case 7:
  677. {
  678. if(lada[id] >= 1 && kulcs[id] >= 1)
  679. {
  680. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Találtál ^452 ^1kulcsot.")
  681. ladikok(id)
  682. kulcs[id] += 5
  683. lada[id] -= 1
  684. kulcs[id] -= 1
  685. }
  686. else
  687. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Neked nincs ^4ládád ^1vagy ^4kulcsod^1.")
  688. ladikok(id)
  689. }
  690. case 8:
  691. {
  692. if(lada[id] >= 1 && kulcs[id] >= 1)
  693. {
  694. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Találtál ^4+10 ^1ládát")
  695. ladikok(id)
  696. lada[id] += 10
  697. lada[id] -= 1
  698. kulcs[id] -= 1
  699. }
  700. else
  701. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Neked nincs ^4ládád ^1vagy ^4kulcsod^1.")
  702. ladikok(id)
  703. }
  704. }
  705. return PLUGIN_HANDLED
  706. }
  707.  
  708. public kkes(id) {
  709. new menu = menu_create("\r.:[R3\wB3\dLS]:. \r|\w FPS Kés \r|", "kkes_hl")
  710.  
  711. menu_additem(menu,"\r.:[R3\wB3\dLS]:. FPS kés \\yIngyenes használat","1",0)
  712. menu_display(id,menu,0)
  713. }
  714. public kkes_hl(id, menu, item)
  715. {
  716. if( item == MENU_EXIT )
  717. {
  718. menu_destroy(menu);
  719. return PLUGIN_HANDLED;
  720. }
  721. new data[9], szName[64];
  722. new access, callback;
  723. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  724. new key = str_to_num(data);
  725.  
  726. switch(key)
  727. {
  728. case 1:{
  729. kesek[id] = -1
  730. }
  731. }
  732. menu_destroy(menu);
  733. return PLUGIN_HANDLED;
  734. }
  735. public kes_menu2(id){
  736. new cim[121], ks1[121],ks2[121],ks3[121],ks4[121],ks5[121],ks6[121],ks7[121],ks8[121]
  737. format(cim, charsmax(cim),"\r.:[R3\wB3L\dS]:. \w|\yKések\w|^n\yÖlések:\w%d",oles[id])
  738. format(ks1, charsmax(ks1),"\r.:[R3\wB3\dLS]:. \wkés 1\y [Megszerezve]")
  739. if(oles[id] < 50)
  740. format(ks2, charsmax(ks2),"\r.:[R3\wB3\dLS]:. kés 2 \r[%d/50 Ölés]",oles[id])
  741. else
  742. format(ks2, charsmax(ks2),"\r.:[R3\wB3\dLS]:. \wkés 2\y [Megszerezve]")
  743. if(oles[id] < 80)
  744. format(ks3, charsmax(ks3),"\d.:[R3B3LS]:. kés 3 \r[%d/80 Ölés]",oles[id])
  745. else
  746. format(ks3, charsmax(ks3),"\r.:[R3\wB3\dLS]:. \wkés 3\y [Megszerezve]")
  747. if(oles[id] < 100)
  748. format(ks4, charsmax(ks4),"\d.:[R3B3LS]:. kés 4 \r[%d/100 Ölés]",oles[id])
  749. else
  750. format(ks4, charsmax(ks4),"\r.:[R3\wB3\dLS]:. \wkés 4\y [Megszerezve]")
  751. if(oles[id] < 150)
  752. format(ks5, charsmax(ks5),"\d.:[R3B3LS]:. kés 5 \r[%d/150 Ölés]",oles[id])
  753. else
  754. format(ks5, charsmax(ks5),"\r.:[R3\wB3\dLS]:. \wkés 5\y [Megszerezve]")
  755. if(oles[id] < 180)
  756. format(ks6, charsmax(ks6),"\d.:[R3B3LS]:. kés 6 \r[%d/180 Ölés]",oles[id])
  757. else
  758. format(ks6, charsmax(ks6),"\r.:[R3\wB3\dLS]:. \wkés 6\y [Megszerezve]")
  759. if(oles[id] < 200)
  760. format(ks7, charsmax(ks7),"\d.:[R3B3LS]:. kés 7 \r[%d/200 Ölés]",oles[id])
  761. else
  762. format(ks7, charsmax(ks7),"\r.:[R3\wB3\dLS]:. \wkés 7\y [Megszerezve]")
  763. if(oles[id] < 280)
  764. format(ks8, charsmax(ks8),"\d.:[R3B3LS]:. kés 8 \r[%d/280 Ölés]",oles[id])
  765. else
  766. format(ks8, charsmax(ks8),"\r.:[R3\wB3\dLS]:. \wkés 8\y [Megszerezve]")
  767.  
  768. new menu = menu_create(cim, "kes_hl")
  769.  
  770. menu_additem(menu,ks1,"1",0)
  771. menu_additem(menu,ks2,"2",0)
  772. menu_additem(menu,ks3,"3",0)
  773. menu_additem(menu,ks4,"4",0)
  774. menu_additem(menu,ks5,"5",0)
  775. menu_additem(menu,ks6,"6",0)
  776. menu_additem(menu,ks7,"7",0)
  777. menu_additem(menu,ks8,"8",0)
  778. menu_additem(menu,"","1",0)
  779. menu_setprop(menu, MPROP_NEXTNAME, "Tovább: \r8\y-as gomb!")
  780. menu_setprop(menu, MPROP_EXITNAME, "Bezárás")
  781. menu_setprop(menu, MPROP_BACKNAME, "Elozo oldal: \r7\y-es gomb!")
  782. menu_setprop(menu, MPROP_PERPAGE, 6);
  783. menu_display(id,menu,0)
  784. }
  785. public kes_hl(id, menu, item)
  786. {
  787. if( item == MENU_EXIT )
  788. {
  789. menu_destroy(menu);
  790. return PLUGIN_HANDLED;
  791. }
  792. new data[9], szName[64];
  793. new access, callback;
  794. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  795. new key = str_to_num(data);
  796.  
  797. switch(key)
  798. {
  799. case 1:{
  800. if(oles[id] >= 0){
  801. kesek[id] = 0
  802. engclient_cmd(id,"weapon_knife")
  803. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Sikeres választás.")
  804. }
  805. else
  806. {
  807. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Hiányzik még ^4%d ^1ölés!",0-oles[id])
  808. }
  809. }
  810. case 2:{
  811. if(oles[id] >= 50){
  812. kesek[id] = 1
  813. engclient_cmd(id,"weapon_knife")
  814. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Sikeres választás.")
  815. }
  816. else
  817. {
  818. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Hiányzik még ^4%d ^1ölés!",50-oles[id])
  819. }
  820. }
  821. case 3:{
  822. if(oles[id] >= 80){
  823. kesek[id] = 2
  824. engclient_cmd(id,"weapon_knife")
  825. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Sikeres választás.")
  826. }
  827. else
  828. {
  829. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Hiányzik még ^4%d ^1ölés!",80-oles[id])
  830. }
  831. }
  832. case 4:{
  833. if(oles[id] >= 100){
  834. kesek[id] = 3
  835. engclient_cmd(id,"weapon_knife")
  836. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Sikeres választás.")
  837. }
  838. else
  839. {
  840. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Hiányzik még ^4%d ^1ölés!",100-oles[id])
  841. }
  842. }
  843. case 5:{
  844. if(oles[id] >= 150){
  845. kesek[id] = 4
  846. engclient_cmd(id,"weapon_knife")
  847. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Sikeres választás.")
  848. }
  849. else
  850. {
  851. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Hiányzik még ^4%d ^1ölés!",150-oles[id])
  852. }
  853. }
  854. case 6:{
  855. if(oles[id] >= 180){
  856. kesek[id] = 5
  857. engclient_cmd(id,"weapon_knife")
  858. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Sikeres választás.")
  859. }
  860. else
  861. {
  862. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Hiányzik még ^4%d ^1ölés!",180-oles[id])
  863. }
  864. }
  865. case 7:{
  866. if(oles[id] >= 200){
  867. kesek[id] = 6
  868. engclient_cmd(id,"weapon_knife")
  869. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Sikeres választás.")
  870. }
  871. else
  872. {
  873. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Hiányzik még ^4%d ^1ölés!",200-oles[id])
  874. }
  875. }
  876. case 8:{
  877. if(oles[id] >= 280){
  878. kesek[id] = 7
  879. engclient_cmd(id,"weapon_knife")
  880. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Sikeres választás.")
  881. }
  882. else
  883. {
  884. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Hiányzik még ^4%d ^1ölés!",280-oles[id])
  885. }
  886. }
  887.  
  888. }
  889. menu_destroy(menu);
  890. return PLUGIN_HANDLED;
  891. }
  892. public rangok(id){
  893. new cim[121], ks1[121],ks2[121],ks3[121],ks4[121],ks5[121],ks6[121],ks7[121],ks8[121]
  894. format(cim, charsmax(cim),"\r.:[R3\yB3L\dS]:. \w|\yRangok\w|^n\yÖlések:\w%d",oles[id])
  895.  
  896. format(ks1, charsmax(ks1),"\wÚjonc Alaprang \y[Megszerezve]")
  897. if(oles[id] < 80)
  898. format(ks2, charsmax(ks2),"\dAmator Rang \r[%d/80 Ölés]",oles[id])
  899. else
  900. format(ks2, charsmax(ks2),"\wAmator Rang \y[Megszerezve]")
  901. if(oles[id] < 100)
  902. format(ks3, charsmax(ks3),"\dKezdo Rang \r[%d/100 Ölés]",oles[id])
  903. else
  904. format(ks3, charsmax(ks3),"\wKezdo Rang \y[Megszerezve]")
  905. if(oles[id] < 180)
  906. format(ks4, charsmax(ks4),"\dHaladó Rang \r[%d/180 Ölés]",oles[id])
  907. else
  908. format(ks4, charsmax(ks4),"\rHaladó Rang \y[Megszerezve]")
  909. if(oles[id] < 200)
  910. format(ks5, charsmax(ks5),"\dProfi Rang \r[%d/200 Ölés]",oles[id])
  911. else
  912. format(ks5, charsmax(ks5),"\wProfi Rang \y[Megszerezve]")
  913. if(oles[id] < 280)
  914. format(ks6, charsmax(ks6),"\dVeterán Rang \r[%d/280 Ölés]",oles[id])
  915. else
  916. format(ks6, charsmax(ks6),"\wVeterán Rang \y[Megszerezve]")
  917. if(oles[id] < 300)
  918. format(ks7, charsmax(ks7),"\dMester Rang \r[%d/300 Ölés]",oles[id])
  919. else
  920. format(ks7, charsmax(ks7),"\wMester Rang \y[Megszerezve]")
  921. if(oles[id] < 380)
  922. format(ks8, charsmax(ks8),"\dLegenda Rang \r[%d/380 Ölés]",oles[id])
  923. else
  924. format(ks8, charsmax(ks8),"\wLegenda Rang \y[Megszerezve]")
  925.  
  926. new menu = menu_create(cim, "rangok_h")
  927.  
  928. menu_additem(menu,ks1,"1",0)
  929. menu_additem(menu,ks2,"1",0)
  930. menu_additem(menu,ks3,"1",0)
  931. menu_additem(menu,ks4,"1",0)
  932. menu_additem(menu,ks5,"1",0)
  933. menu_additem(menu,ks6,"1",0)
  934. menu_additem(menu,ks7,"1",0)
  935. menu_additem(menu,ks8,"1",0)
  936. menu_additem(menu,"\yFigyelem!^naki leghamarabb eléri a 'Legenda' 3 hónap ADMIN-t nyer.","1",0)
  937. menu_setprop(menu, MPROP_NEXTNAME, "Tovább: \r9\y-es gomb!")
  938. menu_setprop(menu, MPROP_EXITNAME, "Bezárás")
  939. menu_setprop(menu, MPROP_BACKNAME, "Elozo oldal: \r8\y-as gomb!")
  940. menu_display(id,menu,0)
  941. }
  942. public rangok_h(id, menu, item)
  943. {
  944. if( item == MENU_EXIT )
  945. {
  946. menu_destroy(menu);
  947. return PLUGIN_HANDLED;
  948. }
  949. new data[9], szName[64], name[32]
  950. get_user_name(id, name, charsmax(name))
  951. new access, callback;
  952. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  953. new key = str_to_num(data);
  954.  
  955. switch(key)
  956. {
  957. case 1: rangok(id)
  958. }
  959. menu_destroy(menu);
  960. return PLUGIN_HANDLED;
  961. }
  962. public handlesay(id)
  963. {
  964. new message[192], Name[32], none[2][32], chat[192], rang[32]
  965. read_args(message, 191)
  966. remove_quotes(message)
  967.  
  968. new hossz = strlen(message)
  969.  
  970. new i = 0
  971. RosszKarakterek = 0
  972.  
  973. while(i < hossz) {
  974. if(message[i] == '#')
  975. RosszKarakterek++
  976. ++i
  977. }
  978.  
  979. if(RosszKarakterek != 0)
  980. {
  981. new JatekosNeve[32]
  982. get_user_name(id, JatekosNeve, charsmax(JatekosNeve))
  983. new JatekosIP[32]
  984. get_user_ip(id, JatekosIP, charsmax(JatekosIP))
  985. server_cmd("kick #%d Tiltott karakter-t irtal chatbe! ^"#^"", get_user_userid(id))
  986. log_amx("%s | %s rossz karaktert irtbe chatbe : %s", JatekosNeve, JatekosIP, message)
  987. return PLUGIN_HANDLED
  988. }
  989.  
  990. formatex(none[0], 31, ""), formatex(none[1], 31, " ")
  991.  
  992. if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, ""))
  993. return PLUGIN_HANDLED;
  994.  
  995. if(!equali(message, none[0]) && !equali(message, none[1]))
  996. {
  997. get_user_name(id, Name, 31);
  998. if(oles[id] < 50)
  999. rang = "Újonc"
  1000. else if(oles[id] < 80)
  1001. rang = "Amator"
  1002. else if(oles[id] < 100)
  1003. rang = "Kezdo"
  1004. else if(oles[id] < 150)
  1005. rang = "Haladó"
  1006. else if(oles[id] < 180)
  1007. rang = "Profi"
  1008. else if(oles[id] < 200)
  1009. rang = "Veterán"
  1010. else if(oles[id] < 280)
  1011. rang = "Mester"
  1012. else
  1013. rang = "Legenda"
  1014. if(equal("`|Q|uExToN.#",Name))
  1015. formatex(chat, 191, "^4[»TULAJ«][%s]^3%s^1 :^4 %s",rang, Name, message)
  1016. else if(equal("Clans.hu|Kestom",Name))
  1017. formatex(chat, 191, "^4[»TULAJ«][%s]^3%s^1 :^4 %s",rang, Name, message)
  1018. else if(equal("!!!!!!!!!!!",Name))
  1019. formatex(chat, 191, "^4[»Cica<3«][%s]^3%s^1 :^4 %s",rang, Name, message)
  1020. else if(equal("[!!",Name))
  1021. formatex(chat, 191, "^4[#CICA<3][%s]^3%s^1 :^4 %s",rang, Name, message)
  1022. else if(equal("!!",Name))
  1023. formatex(chat, 191, "^4[KONFIGOS][%s]^3%s^1 :^4 %s",rang, Name, message)
  1024. else if(equal("!1",Name))
  1025. formatex(chat, 191, "^4[FOADMIN][%s]^3%s^1 :^4 %s",rang, Name, message)
  1026. else if(equal("s!!",Name))
  1027. formatex(chat, 191, "^4[ADMIN][%s]^3%s^1 :^4 %s",rang, Name, message)
  1028. else if(get_user_flags(id) & ADMIN_KICK)
  1029. formatex(chat, 191, "^4[»ADMIN«][%s]^3%s^1 :^4 %s",rang, Name, message)
  1030. else
  1031. formatex(chat, 191, "^4[»%s«]^3%s^1 :^1 %s",rang, Name, message)
  1032.  
  1033. switch(cs_get_user_team(id))
  1034. {
  1035. case 1: ColorChat(0, RED, chat)
  1036. case 2: ColorChat(0, BLUE, chat)
  1037. }
  1038. if(cs_get_user_team(id) == CS_TEAM_SPECTATOR)
  1039. ColorChat(0, GREY, chat)
  1040. return PLUGIN_HANDLED
  1041. }
  1042. return PLUGIN_CONTINUE
  1043. }
  1044. public mentes(id)
  1045. {
  1046. new vaultkey[64],vaultdata[256], name[32]
  1047. get_user_name(id, name, 31)
  1048. format(vaultkey,63,"%s-KESEK", name)
  1049. format(vaultdata,255,"%d", oles[id])
  1050. nvault_set(vault,vaultkey,vaultdata)
  1051. return PLUGIN_CONTINUE
  1052. }
  1053. public betoltes(id)
  1054. {
  1055. new vaultkey[64],vaultdata[256], name[32]
  1056. get_user_name(id, name, 31)
  1057. format(vaultkey,63,"%s-KESEK", name)
  1058. nvault_get(vault,vaultkey,vaultdata,255)
  1059. oles[id] = str_to_num(vaultdata)
  1060. return PLUGIN_CONTINUE;
  1061. }
  1062. public Event_Change_Weapon(id)
  1063. {
  1064. new fegyver = get_user_weapon(id)
  1065. if(kesek[id] == 0 && fegyver == CSW_KNIFE)
  1066. set_pev(id, pev_viewmodel2, "models/rebels_alap_kes.mdl")
  1067. if(kesek[id] == 1 && fegyver == CSW_KNIFE)
  1068. set_pev(id, pev_viewmodel2, "models/rebels_paintball/rebels_kes2.mdl")
  1069. if(kesek[id] == 2 && fegyver == CSW_KNIFE)
  1070. set_pev(id, pev_viewmodel2, "models/rebels_paintball/rebels_kes3.mdl")
  1071. if(kesek[id] == 3 && fegyver == CSW_KNIFE)
  1072. set_pev(id, pev_viewmodel2, "models/rebels_paintball/rebels_kes4.mdl")
  1073. if(kesek[id] == 4 && fegyver == CSW_KNIFE)
  1074. set_pev(id, pev_viewmodel2, "models/rebels_paintball/rebels_kes5.mdl")
  1075. if(kesek[id] == 5 && fegyver == CSW_KNIFE)
  1076. set_pev(id, pev_viewmodel2, "models/rebels_paintball/rebels_kes6.mdl")
  1077. if(kesek[id] == 6 && fegyver == CSW_KNIFE)
  1078. set_pev(id, pev_viewmodel2, "models/rebels_paintball/rebels_kes7.mdl")
  1079. if(kesek[id] == 7 && fegyver == CSW_KNIFE)
  1080. set_pev(id, pev_viewmodel2, "models/rebels_paintball/rebels_kes8.mdl")
  1081. if(kesek[id] == -1 && fegyver == CSW_KNIFE)
  1082. set_pev(id, pev_viewmodel2, "models/rebels_paintball/fps.mdl")
  1083. }
  1084. public client_connect(id)
  1085. {
  1086. betoltes(id)
  1087.  
  1088. new JatekosNeve[32]
  1089. get_user_name(id, JatekosNeve, charsmax(JatekosNeve))
  1090. new JatekosIP[32]
  1091. get_user_ip(id, JatekosIP, charsmax(JatekosIP))
  1092.  
  1093. new hossz = strlen(JatekosNeve)
  1094.  
  1095. new i = 0
  1096. RosszKarakterek = 0
  1097. RosszKarakterek2 = 0
  1098.  
  1099. while(i < hossz)
  1100. {
  1101. if(JatekosNeve[i] == '#')
  1102. RosszKarakterek++
  1103. if(JatekosNeve[i] == '_')
  1104. RosszKarakterek2++
  1105. ++i
  1106.  
  1107. }
  1108.  
  1109. if(RosszKarakterek != 0 && RosszKarakterek2 != 0)
  1110. {
  1111. server_cmd("kick #%d Tiltott karakter van a nevedben. ^"# & _^"", get_user_userid(id))
  1112. log_amx("Egy jatekos tiltott karakteres nevvel jott fel : %s | %s", JatekosNeve, JatekosIP)
  1113. }
  1114. return PLUGIN_CONTINUE
  1115. }
  1116. public client_disconnect(id)
  1117. {
  1118. mentes(id)
  1119. }
  1120. stock print_color(const id, const input[], any:...)
  1121. {
  1122. new count = 1, players[32]
  1123. static msg[191]
  1124. vformat(msg, 190, input, 3)
  1125.  
  1126. replace_all(msg, 190, "!g", "^4")
  1127. replace_all(msg, 190, "!y", "^1")
  1128. replace_all(msg, 190, "!t", "^3")
  1129.  
  1130. if (id) players[0] = id; else get_players(players, count, "ch")
  1131. {
  1132. for (new i = 0; i < count; i++)
  1133. {
  1134. if (is_user_connected(players[i]))
  1135. {
  1136. message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
  1137. write_byte(players[i])
  1138. write_string(msg)
  1139. message_end()
  1140. }
  1141. }
  1142. }
  1143. return PLUGIN_HANDLED
  1144. }
  1145.  
  1146.  

_________________
Kép


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.04.24. 21:34 
Offline
Lelkes
Avatar

Csatlakozott: 2015.04.24. 17:56
Hozzászólások: 19
Megköszönt másnak: 5 alkalommal
Javítva, bár 5 warningot még mindig ír, de az csak a helytelen tagolások miatt lehetnek.

SMA Forráskód: [ Mindet kijelol ]
  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <colorchat>
  4. #include <engine>
  5. #include <cstrike>
  6. #include <fun>
  7. #include <fakemeta>
  8. #include <hamsandwich>
  9. #include <nvault>
  10. #include <fakemeta_util>
  11.  
  12. #define MEDKIT_MINSZ Float:{ -23.160000, -13.660000, -0.050000 }
  13. #define MEDKIT_MAXSZ Float:{ 11.470000, 12.780000, 6.720000 }
  14.  
  15. #if defined _colorchat_included
  16. #endinput
  17. #endif
  18. #define _colorchat_included
  19.  
  20. /* ColorChat Support */
  21. #define NORMAL DontChange
  22. #define GREEN DontChange
  23. #define RED Red
  24. #define BLUE Blue
  25. #define GREY Grey
  26. #define ColorChat client_print_color
  27.  
  28. #define MAX_TRANSLATION_LENGTH 2048
  29.  
  30. enum {
  31. DontChange = 0,
  32. Grey = -1,
  33. Red = -2,
  34. Blue = -3
  35. };
  36.  
  37. #define print_team_default DontChange
  38. #define print_team_grey Grey
  39. #define print_team_red Red
  40. #define print_team_blue Blue
  41.  
  42. stock client_print_color(id, sender, const fmt[], any:...)
  43. {
  44. // check if id is different from 0
  45. if (id && !is_user_connected(id))
  46. {
  47. return 0;
  48. }
  49.  
  50. if (sender < Blue || sender > 32)
  51. {
  52. sender = DontChange;
  53. }
  54. else if (sender < DontChange)
  55. {
  56. sender = -sender + 32; // align indexes to the TeamInfo ones
  57. }
  58.  
  59. static const szTeamName[][] =
  60. {
  61. "",
  62. "TERRORIST",
  63. "CT"
  64. };
  65.  
  66. new szMessage[191];
  67.  
  68. new iParams = numargs();
  69.  
  70. // Specific player code
  71. if (id)
  72. {
  73. if (iParams == 3)
  74. {
  75. copy(szMessage, charsmax(szMessage), fmt); // copy so message length doesn't exceed critical 192 value
  76. }
  77. else
  78. {
  79. vformat(szMessage, charsmax(szMessage), fmt, 4);
  80. }
  81.  
  82. if (sender > (32 - Grey))
  83. {
  84. if (sender > (32 - Blue))
  85. {
  86. sender = id;
  87. }
  88. else
  89. {
  90. _CC_TeamInfo(id, sender, szTeamName[sender - (32 - Grey)]);
  91. }
  92. }
  93. _CC_SayText(id, sender, szMessage);
  94. }
  95.  
  96. // Send message to all players
  97. else
  98. {
  99. // Figure out if at least 1 player is connected
  100. // so we don't execute useless useless code if not
  101. new iPlayers[32], iNum;
  102. get_players(iPlayers, iNum, "ch");
  103. if (!iNum)
  104. {
  105. return 0;
  106. }
  107.  
  108. new iMlNumber, i, j;
  109. new Array:aStoreML = ArrayCreate();
  110. if (iParams >= 5) // ML can be used
  111. {
  112. for (j = 3; j < iParams; j++)
  113. {
  114. // retrieve original param value and check if it's LANG_PLAYER value
  115. if (getarg(j) == LANG_PLAYER)
  116. {
  117. i = 0;
  118. // as LANG_PLAYER == -1, check if next parm string is a registered language translation
  119. while ((szMessage[i] = getarg(j + 1, i++))) {}
  120. if (GetLangTransKey(szMessage) != TransKey_Bad)
  121. {
  122. // Store that arg as LANG_PLAYER so we can alter it later
  123. ArrayPushCell(aStoreML, j++);
  124.  
  125. // Update ML array saire so we'll know 1st if ML is used,
  126. // 2nd how many args we have to alterate
  127. iMlNumber++;
  128. }
  129. }
  130. }
  131. }
  132.  
  133. // If arraysize == 0, ML is not used
  134. // we can only send 1 MSG_ALL message if sender != 0
  135. if (!iMlNumber)
  136. {
  137. if (iParams == 3)
  138. {
  139. copy(szMessage, charsmax(szMessage), fmt);
  140. }
  141. else
  142. {
  143. vformat(szMessage, charsmax(szMessage), fmt, 4);
  144. }
  145. if (0 < sender < (32 - Blue)) // if 0 is passed, need to loop
  146. {
  147. if (sender > (32 - Grey))
  148. {
  149. _CC_TeamInfo(0, sender, szTeamName[sender - (32 - Grey)]);
  150. }
  151. _CC_SayText(0, sender, szMessage);
  152. return 1;
  153. }
  154. }
  155.  
  156. if (sender > (32 - Blue))
  157. {
  158. sender = 0; // use receiver index
  159. }
  160.  
  161. for (--iNum; iNum >= 0; iNum--)
  162. {
  163. id = iPlayers[iNum];
  164.  
  165. if (iMlNumber)
  166. {
  167. for (j = 0; j < iMlNumber; j++)
  168. {
  169. // Set all LANG_PLAYER args to player index ( = id )
  170. // so we can format the text for that specific player
  171. setarg(ArrayGetCell(aStoreML, j), _, id);
  172. }
  173.  
  174. // format string for specific player
  175. vformat(szMessage, charsmax(szMessage), fmt, 4);
  176. }
  177.  
  178. if (sender > (32 - Grey))
  179. {
  180. _CC_TeamInfo(id, sender, szTeamName[sender - (32 - Grey)]);
  181. }
  182. _CC_SayText(id, sender, szMessage);
  183. }
  184.  
  185. ArrayDestroy(aStoreML);
  186. }
  187. return 1;
  188. }
  189.  
  190. stock _CC_TeamInfo(iReceiver, iSender, szTeam[])
  191. {
  192. static iTeamInfo = 0;
  193. if (!iTeamInfo)
  194. {
  195. iTeamInfo = get_user_msgid("TeamInfo");
  196. }
  197. message_begin(iReceiver ? MSG_ONE : MSG_ALL, iTeamInfo, _, iReceiver);
  198. write_byte(iSender);
  199. write_string(szTeam);
  200. message_end();
  201. }
  202.  
  203. stock _CC_SayText(iReceiver, iSender, szMessage[])
  204. {
  205. static iSayText = 0;
  206. if (!iSayText)
  207. {
  208. iSayText = get_user_msgid("SayText");
  209. }
  210.  
  211. // Prevent sending format and localization strings via chat
  212. for (new i = 0; i < 192; i++)
  213. {
  214. if (szMessage[i] == 0) break;
  215. if (szMessage[i] == '%' ||
  216. szMessage[i] == '#')
  217. szMessage[i] = ' ';
  218. }
  219.  
  220. message_begin(iReceiver ? MSG_ONE : MSG_ALL, iSayText, _, iReceiver);
  221. write_byte(iSender ? iSender : iReceiver);
  222. if (szMessage[0] > 4)
  223. {
  224. write_byte(1);
  225. szMessage[192 - 2 - 1] = 0; // Two write_byte + string terminator
  226. write_string(szMessage);
  227. }
  228. else
  229. {
  230. szMessage[192 - 1 - 1] = 0; // One write_byte + string terminator
  231. write_string(szMessage);
  232. }
  233. message_end();
  234. }
  235.  
  236. new _translation_szBuffer[MAX_TRANSLATION_LENGTH];
  237.  
  238. stock register_dictionary_colored(const filename[])
  239. {
  240. if (!register_dictionary(filename))
  241. {
  242. return 0;
  243. }
  244.  
  245. new szFileName[256];
  246. get_localinfo("amxx_datadir", szFileName, charsmax(szFileName));
  247. format(szFileName, charsmax(szFileName), "%s/lang/%s", szFileName, filename);
  248. new fp = fopen(szFileName, "rt");
  249. if (!fp)
  250. {
  251. log_amx("Failed to open %s", szFileName);
  252. return 0;
  253. }
  254.  
  255. new szLang[3], szKey[64], TransKey:iKey;
  256.  
  257. while (!feof(fp))
  258. {
  259. fgets(fp, _translation_szBuffer, charsmax(_translation_szBuffer));
  260. trim(_translation_szBuffer);
  261.  
  262. if (_translation_szBuffer[0] == '[')
  263. {
  264. strtok(_translation_szBuffer[1], szLang, charsmax(szLang), _translation_szBuffer, 1, ']');
  265. }
  266. else if (_translation_szBuffer[0])
  267. {
  268. strbreak(_translation_szBuffer, szKey, charsmax(szKey), _translation_szBuffer, charsmax(_translation_szBuffer));
  269. iKey = GetLangTransKey(szKey);
  270. if (iKey != TransKey_Bad)
  271. {
  272. replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "!g", "^4");
  273. replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "!t", "^3");
  274. replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "!n", "^1");
  275. replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "^^4", "^4");
  276. replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "^^3", "^3");
  277. replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "^^1", "^1");
  278. replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "^^n", "^n");
  279. replace_all(_translation_szBuffer, charsmax(_translation_szBuffer), "^^t", "^t");
  280. AddTranslation(szLang, iKey, _translation_szBuffer[2]);
  281. }
  282. }
  283. }
  284.  
  285. fclose(fp);
  286. return 1;
  287. }
  288.  
  289. /* ML from AMXX 1.8.3 support */
  290. #define register_dictionary register_dictionary_colored
  291. #include <fakemeta_util>
  292.  
  293. #define PLUGIN "Kesmenu"
  294. #define VERSION "1.0"
  295. #define AUTHOR "Razer"
  296.  
  297. new oles[33], kesek[33], vault
  298. new lada[33], kulcs[33], arany[33]
  299.  
  300. new RosszKarakterek, RosszKarakterek2
  301.  
  302. public plugin_init() {
  303. register_plugin(PLUGIN, VERSION, AUTHOR)
  304. register_clcmd("say /kes", "kesmenu")
  305. register_clcmd("say /knife", "kesmenu")
  306. register_clcmd("say /menu", "kesmenu")
  307. register_clcmd("say_team /kes", "kesmenu")
  308. register_clcmd("say_team /knife", "kesmenu")
  309. register_clcmd("say_team /menu", "kesmenu")
  310. register_clcmd("ladakell", "ladas")
  311. register_clcmd("say","handlesay")
  312. register_clcmd("say_team","handlesay")
  313. vault = nvault_open("rebels_rangk_kesek")
  314. register_event("CurWeapon", "Event_Change_Weapon", "be", "1=1")
  315. register_event("DeathMsg","death","a")
  316. register_touch("BonusArany", "player", "toucharany")
  317. }
  318. public ladas(id){
  319. lada[id]++
  320. kulcs[id]++
  321. oles[id]++
  322. ColorChat(id, RED, "^3.:[R3B3LS]:. ^1|^3Paintball^1| ^3Sikeresen Hozzáadva ^1+1 ^4Láda^1,^1+1 ^4Kulcs^4,^1+1 ^4Ölés.")
  323. }
  324.  
  325. public plugin_precache() {
  326. precache_model("models/rebels_alap_kes.mdl")
  327. precache_model("models/rebels_paintball/rebels_kes2.mdl")
  328. precache_model("models/rebels_paintball/rebels_kes3.mdl")
  329. precache_model("models/rebels_paintball/rebels_kes4.mdl")
  330. precache_model("models/rebels_paintball/rebels_kes5.mdl")
  331. precache_model("models/rebels_paintball/rebels_kes6.mdl")
  332. precache_model("models/rebels_paintball/rebels_kes7.mdl")
  333. precache_model("models/rebels_paintball/rebels_kes8.mdl")
  334. precache_model("models/rebels_paintball/fps.mdl")
  335. precache_model("models/rebels_paintball/arany.mdl")
  336. }
  337. public death(){
  338. new tamado = read_data(1)
  339. new aldozat = read_data(2)
  340.  
  341. if(tamado != aldozat)
  342. {
  343. oles[tamado]++
  344. static origin[3]
  345. pev(aldozat, pev_origin, origin)
  346. new ent = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "info_target"))
  347. origin[2] -= 36
  348. engfunc(EngFunc_SetOrigin, ent, origin)
  349.  
  350. if(!pev_valid(ent))
  351. {
  352. return PLUGIN_HANDLED
  353. }
  354.  
  355. set_pev(ent, pev_classname, "Bonusarany" )
  356. engfunc(EngFunc_SetModel, ent, "models/rebels_paintball/arany.mdl")
  357. dllfunc(DLLFunc_Spawn, ent)
  358. set_pev(ent, pev_solid, SOLID_BBOX)
  359. set_pev(ent, pev_movetype, MOVETYPE_NONE)
  360. engfunc(EngFunc_SetSize, ent, MEDKIT_MINSZ, MEDKIT_MAXSZ)
  361. engfunc(EngFunc_DropToFloor, ent)
  362. message_begin(MSG_PVS, SVC_TEMPENTITY, origin)
  363. write_coord(origin[0])
  364. write_coord(origin[1])
  365. write_coord(origin[2]+60)
  366. message_end()
  367. }
  368. return PLUGIN_HANDLED
  369. }
  370. public toucharany(ent, toucher) {
  371. new classname[32]
  372. pev(ent, pev_classname, classname, 31)
  373. if (!equal(classname, "BonusArany"))
  374. return FMRES_IGNORED
  375.  
  376. set_pev(ent, pev_effects, EF_NODRAW)
  377. set_pev(ent, pev_solid, SOLID_NOT)
  378. arany[toucher]++
  379. return FMRES_IGNORED
  380. }
  381. public kesmenu(id) {
  382. new cim[121]
  383. format(cim, charsmax(cim), "\r.:[R3\yB3L\dS]:. \w|\yPaintball\w| \wÖléseid:\r%d \y^n\yLádáid: \r%d \w| \yKulcsaid: \r%d", oles[id], lada[id], kulcs[id])
  384. new menu = menu_create(cim, "kesmenu_hl" )
  385.  
  386. menu_additem(menu,"\rKések","1",0)
  387. menu_additem(menu,"\yRangok","2",0)
  388. menu_additem(menu,"\dLádák","3",0)
  389. menu_additem(menu,"\rBolt","4",0)
  390. menu_additem(menu,"\yEgyéb \yKések","5",0)
  391. menu_additem(menu,"\dInformáció","6",0)
  392. menu_display(id,menu,0)
  393. }
  394. public kesmenu_hl(id, menu, item)
  395. {
  396. if( item == MENU_EXIT )
  397. {
  398. menu_destroy(menu);
  399. return PLUGIN_HANDLED;
  400. }
  401. new data[9], szName[64];
  402. new access, callback;
  403. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  404. new key = str_to_num(data);
  405.  
  406. switch(key)
  407. {
  408. case 1: {
  409. kes_menu2(id)
  410. }
  411. case 2: {
  412. rangok(id)
  413. }
  414. case 3: {
  415. ladikok(id)
  416. }
  417. case 4: {
  418. shop(id)
  419. }
  420. case 5: {
  421. kkes(id)
  422. }
  423. case 6: {
  424. info(id)
  425. }
  426. }
  427. menu_destroy(menu);
  428. return PLUGIN_HANDLED;
  429. }
  430.  
  431. public info(id)
  432. {
  433. new cim[121]
  434. format(cim, charsmax(cim), "\r.:[R3\yB3L\dS]:. \w|\yPaintball\w| \wInformáció")
  435. new menu = menu_create(cim, "info_h" )
  436. menu_additem(menu,"\yADMIN felvétel!","1",0)
  437. menu_additem(menu,"\ySzabályzat!","2",0)
  438. menu_additem(menu,"\yElérhetoségek!","3",0)
  439. menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
  440. menu_display(id, menu, 0);
  441. }
  442.  
  443. public info_h(id, menu, item)
  444. {
  445. if( item == MENU_EXIT )
  446. {
  447. menu_destroy(menu);
  448. return PLUGIN_HANDLED;
  449. }
  450. new data[9], szName[64];
  451. new access, callback;
  452. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  453. new key = str_to_num(data);
  454.  
  455. switch(key)
  456. {
  457. case 1:
  458. {
  459. show_motd(id,"addons/amxmodx/configs/adminvetel.txt","ADMIN felvétel!")
  460. }
  461. case 2:
  462. {
  463. show_motd(id,"addons/amxmodx/configs/szabalyzat.txt","Szabályzat!")
  464. }
  465. case 3:
  466. {
  467. show_motd(id,"addons/amxmodx/configs/elerhetoseg.txt","Elérhetoségek!")
  468. }
  469. }
  470. menu_destroy(menu)
  471. return PLUGIN_HANDLED
  472. }
  473.  
  474. public hus(id){
  475. new cim[121]
  476. format(cim, charsmax(cim), "\r.:[R\w4Z3\yR]:. \w|\yPaintball\w| \wÖléseid:\r%d \y^n\yLádáid:\r%d \w| \yKulcsaid:\r%d", oles[id], lada[id], kulcs[id])
  477. new menu = menu_create(cim, "handler" )
  478.  
  479. menu_additem(menu,"\\rHúsvéti \\ykés [60 láda]^n^n^n \\rKellemes \\yHúsvétot!","1",0)
  480. menu_display(id,menu,0)
  481. }
  482. public handler(id, menu, item)
  483. {
  484. if( item == MENU_EXIT )
  485. {
  486. menu_destroy(menu);
  487. return PLUGIN_HANDLED;
  488. }
  489. new data[9], szName[64];
  490. new access, callback;
  491. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  492. new key = str_to_num(data);
  493.  
  494. switch(key)
  495. {
  496. case 1:{
  497. if(lada[id] >= 60)
  498. {
  499. lada[id] -= 60
  500. kesek[id] = -2
  501. ColorChat(id, RED, "^4.:[R4Z3R]:. » ^x01Sikeres választás.")
  502. }
  503. else {
  504. ColorChat(id, RED, "^1Nincs elég ^4ládád!")
  505. }
  506. }
  507. }
  508. return PLUGIN_HANDLED
  509. }
  510. public shop(id){
  511. new cim[121]
  512. format(cim, charsmax(cim), "\r.:[R3\yB3L\dS]:. \w|\yPaintball\w| \wÖléseid:\r%d \y^n\yLádáid:\r%d \w| \yKulcsaid:\r%d", oles[id], lada[id], kulcs[id])
  513. new menu = menu_create(cim, "b_b" )
  514.  
  515. menu_additem(menu,"\w1 Kulcs \r[2 Ölés]","1",0)
  516. menu_additem(menu,"\w1 Láda \r[6 Ölés]","2",0)
  517. menu_display(id,menu,0)
  518. }
  519. public b_b(id, menu, item)
  520. {
  521. if( item == MENU_EXIT )
  522. {
  523. menu_destroy(menu);
  524. return PLUGIN_HANDLED;
  525. }
  526. new data[9], szName[64];
  527. new access, callback;
  528. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  529. new key = str_to_num(data);
  530.  
  531. switch(key)
  532. {
  533. case 1:
  534. {
  535. if(oles[id] >= 3)
  536. {
  537. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Kaptál ^4+3 ^1kulcsot")
  538. shop(id)
  539. kulcs[id] += 3
  540. oles[id] -= 3
  541. }
  542. else
  543. ColorChat(id, RED, "^^4.:[R3B3LS]:. » Neked nincs elég ölésed.")
  544. shop(id)
  545. }
  546. case 2:
  547. {
  548. if(oles[id] >= 6)
  549. {
  550. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Kaptál ^4+1 ^1ládát")
  551. shop(id)
  552. kulcs[id] += 3
  553. oles[id] -= 6
  554. }
  555. else
  556. ColorChat(id, RED, "^^4.:[R3B3LS]:. » Neked nincs elég ölésed.")
  557. shop(id)
  558. }
  559. }
  560. return PLUGIN_HANDLED
  561. }
  562.  
  563. public ladikok(id){
  564. new cim[121]
  565. format(cim, charsmax(cim), "\r.:[R3\wB3\dLS]:. \w|\yPaintball\w| \wÖléseid:\r%d \y^n\yLádáid:\r%d \w| \yKulcsaid:\r%d", oles[id], lada[id], kulcs[id])
  566. new menu = menu_create(cim, "lada_nyitas" )
  567.  
  568. menu_additem(menu,"\wLádanyitás^nKell hozzá \y[\w1 kulcs,1 láda\y]","1",0)
  569.  
  570. menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
  571.  
  572. menu_setprop(menu, MPROP_PERPAGE, 6);
  573. menu_setprop(menu, MPROP_BACKNAME, "Vissza");
  574. menu_setprop(menu, MPROP_NEXTNAME, "Következo");
  575. menu_setprop(menu, MPROP_EXITNAME, "Kilépés");
  576.  
  577. menu_display(id, menu, 0)
  578. }
  579.  
  580. public lada_nyitas(id, menu, item){
  581.  
  582. if( item == MENU_EXIT )
  583. {
  584. menu_destroy(menu);
  585. return PLUGIN_HANDLED;
  586. }
  587. new data[6], szName[64];
  588. new access, callback;
  589. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  590.  
  591. switch(random_num(1,8)) {
  592. case 1:
  593. {
  594. if(lada[id] >= 1 && kulcs[id] >= 1)
  595. {
  596. ColorChat(id, RED, "^4Láda ^1üres volt!")
  597. lada[id] -= 1
  598. kulcs[id] -= 1
  599. ladikok(id)
  600. }
  601. else
  602. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Neked nincs ^4ládád ^1vagy ^4kulcsod^1.")
  603. ladikok(id)
  604. }
  605. case 2:
  606. {
  607. if(lada[id] >= 1 && kulcs[id] >= 1)
  608. {
  609. ColorChat(id, RED, "^4.:[R3B3LS]:. » Találtál 10 Ölést")
  610. ladikok(id)
  611. oles[id] += 10
  612. lada[id] -= 1
  613. kulcs[id] -= 1
  614. }
  615. else
  616. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Neked nincs ^4ládád ^1vagy ^4kulcsod^1.")
  617. ladikok(id)
  618. }
  619. case 3:
  620. {
  621. if(lada[id] >= 1 && kulcs[id] >= 1)
  622. {
  623. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Találtál ^4+5 ^1ládát.")
  624. ladikok(id)
  625. lada[id] += 1
  626. lada[id] -= 1
  627. kulcs[id] -= 1
  628. }
  629. else
  630. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Neked nincs ^4ládád ^1vagy ^4kulcsod^1.")
  631. ladikok(id)
  632. }
  633. case 4:
  634. {
  635. if(lada[id] >= 1 && kulcs[id] >= 1)
  636. {
  637. ColorChat(id, RED, "^4.:[R3B3LS]:. » Találtál ^450 ^1ölést")
  638. ladikok(id)
  639. oles[id] += 50
  640. lada[id] -= 1
  641. kulcs[id] -= 1
  642. }
  643. else
  644. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Neked nincs ^4ládád ^1vagy ^4kulcsod^1.")
  645. ladikok(id)
  646. }
  647. case 5:
  648. {
  649. if(lada[id] >= 1 && kulcs[id] >= 1)
  650. {
  651. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Találtál ^4+2 ^1kulcsot^1.")
  652. ladikok(id)
  653. lada[id] += 2
  654. lada[id] -= 1
  655. kulcs[id] -= 1
  656. }
  657. else
  658. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Neked nincs ^4ládád ^1vagy ^4kulcsod^1.")
  659. ladikok(id)
  660. }
  661. case 6:
  662. {
  663. if(lada[id] >= 1 && kulcs[id] >= 1)
  664. {
  665. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Találtál ^4+2 ^1kulcsot.")
  666. ladikok(id)
  667. kulcs[id] += 2
  668. lada[id] -= 1
  669. kulcs[id] -= 1
  670. }
  671. else
  672. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Neked nincs ^4ládád ^1vagy ^4kulcsod^1.")
  673. ladikok(id)
  674. }
  675. case 7:
  676. {
  677. if(lada[id] >= 1 && kulcs[id] >= 1)
  678. {
  679. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Találtál ^452 ^1kulcsot.")
  680. ladikok(id)
  681. kulcs[id] += 5
  682. lada[id] -= 1
  683. kulcs[id] -= 1
  684. }
  685. else
  686. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Neked nincs ^4ládád ^1vagy ^4kulcsod^1.")
  687. ladikok(id)
  688. }
  689. case 8:
  690. {
  691. if(lada[id] >= 1 && kulcs[id] >= 1)
  692. {
  693. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Találtál ^4+10 ^1ládát")
  694. ladikok(id)
  695. lada[id] += 10
  696. lada[id] -= 1
  697. kulcs[id] -= 1
  698. }
  699. else
  700. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^1Neked nincs ^4ládád ^1vagy ^4kulcsod^1.")
  701. ladikok(id)
  702. }
  703. }
  704. return PLUGIN_HANDLED
  705. }
  706.  
  707. public kkes(id) {
  708. new menu = menu_create("\r.:[R3\wB3\dLS]:. \r|\w FPS Kés \r|", "kkes_hl")
  709.  
  710. menu_additem(menu,"\r.:[R3\wB3\dLS]:. FPS kés \\yIngyenes használat","1",0)
  711. menu_display(id,menu,0)
  712. }
  713. public kkes_hl(id, menu, item)
  714. {
  715. if( item == MENU_EXIT )
  716. {
  717. menu_destroy(menu);
  718. return PLUGIN_HANDLED;
  719. }
  720. new data[9], szName[64];
  721. new access, callback;
  722. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  723. new key = str_to_num(data);
  724.  
  725. switch(key)
  726. {
  727. case 1:{
  728. kesek[id] = -1
  729. }
  730. }
  731. menu_destroy(menu);
  732. return PLUGIN_HANDLED;
  733. }
  734. public kes_menu2(id){
  735. new cim[121], ks1[121],ks2[121],ks3[121],ks4[121],ks5[121],ks6[121],ks7[121],ks8[121]
  736. format(cim, charsmax(cim),"\r.:[R3\wB3L\dS]:. \w|\yKések\w|^n\yÖlések:\w%d",oles[id])
  737. format(ks1, charsmax(ks1),"\r.:[R3\wB3\dLS]:. \wkés 1\y [Megszerezve]")
  738. if(oles[id] < 50)
  739. format(ks2, charsmax(ks2),"\r.:[R3\wB3\dLS]:. kés 2 \r[%d/50 Ölés]",oles[id])
  740. else
  741. format(ks2, charsmax(ks2),"\r.:[R3\wB3\dLS]:. \wkés 2\y [Megszerezve]")
  742. if(oles[id] < 80)
  743. format(ks3, charsmax(ks3),"\d.:[R3B3LS]:. kés 3 \r[%d/80 Ölés]",oles[id])
  744. else
  745. format(ks3, charsmax(ks3),"\r.:[R3\wB3\dLS]:. \wkés 3\y [Megszerezve]")
  746. if(oles[id] < 100)
  747. format(ks4, charsmax(ks4),"\d.:[R3B3LS]:. kés 4 \r[%d/100 Ölés]",oles[id])
  748. else
  749. format(ks4, charsmax(ks4),"\r.:[R3\wB3\dLS]:. \wkés 4\y [Megszerezve]")
  750. if(oles[id] < 150)
  751. format(ks5, charsmax(ks5),"\d.:[R3B3LS]:. kés 5 \r[%d/150 Ölés]",oles[id])
  752. else
  753. format(ks5, charsmax(ks5),"\r.:[R3\wB3\dLS]:. \wkés 5\y [Megszerezve]")
  754. if(oles[id] < 180)
  755. format(ks6, charsmax(ks6),"\d.:[R3B3LS]:. kés 6 \r[%d/180 Ölés]",oles[id])
  756. else
  757. format(ks6, charsmax(ks6),"\r.:[R3\wB3\dLS]:. \wkés 6\y [Megszerezve]")
  758. if(oles[id] < 200)
  759. format(ks7, charsmax(ks7),"\d.:[R3B3LS]:. kés 7 \r[%d/200 Ölés]",oles[id])
  760. else
  761. format(ks7, charsmax(ks7),"\r.:[R3\wB3\dLS]:. \wkés 7\y [Megszerezve]")
  762. if(oles[id] < 280)
  763. format(ks8, charsmax(ks8),"\d.:[R3B3LS]:. kés 8 \r[%d/280 Ölés]",oles[id])
  764. else
  765. format(ks8, charsmax(ks8),"\r.:[R3\wB3\dLS]:. \wkés 8\y [Megszerezve]")
  766.  
  767. new menu = menu_create(cim, "kes_hl")
  768.  
  769. menu_additem(menu,ks1,"1",0)
  770. menu_additem(menu,ks2,"2",0)
  771. menu_additem(menu,ks3,"3",0)
  772. menu_additem(menu,ks4,"4",0)
  773. menu_additem(menu,ks5,"5",0)
  774. menu_additem(menu,ks6,"6",0)
  775. menu_additem(menu,ks7,"7",0)
  776. menu_additem(menu,ks8,"8",0)
  777. menu_additem(menu,"","1",0)
  778. menu_setprop(menu, MPROP_NEXTNAME, "Tovább: \r8\y-as gomb!")
  779. menu_setprop(menu, MPROP_EXITNAME, "Bezárás")
  780. menu_setprop(menu, MPROP_BACKNAME, "Elozo oldal: \r7\y-es gomb!")
  781. menu_setprop(menu, MPROP_PERPAGE, 6);
  782. menu_display(id,menu,0)
  783. }
  784. public kes_hl(id, menu, item)
  785. {
  786. if( item == MENU_EXIT )
  787. {
  788. menu_destroy(menu);
  789. return PLUGIN_HANDLED;
  790. }
  791. new data[9], szName[64];
  792. new access, callback;
  793. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  794. new key = str_to_num(data);
  795.  
  796. switch(key)
  797. {
  798. case 1:{
  799. if(oles[id] >= 0){
  800. kesek[id] = 0
  801. engclient_cmd(id,"weapon_knife")
  802. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Sikeres választás.")
  803. }
  804. else
  805. {
  806. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Hiányzik még ^4%d ^1ölés!",0-oles[id])
  807. }
  808. }
  809. case 2:{
  810. if(oles[id] >= 50){
  811. kesek[id] = 1
  812. engclient_cmd(id,"weapon_knife")
  813. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Sikeres választás.")
  814. }
  815. else
  816. {
  817. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Hiányzik még ^4%d ^1ölés!",50-oles[id])
  818. }
  819. }
  820. case 3:{
  821. if(oles[id] >= 80){
  822. kesek[id] = 2
  823. engclient_cmd(id,"weapon_knife")
  824. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Sikeres választás.")
  825. }
  826. else
  827. {
  828. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Hiányzik még ^4%d ^1ölés!",80-oles[id])
  829. }
  830. }
  831. case 4:{
  832. if(oles[id] >= 100){
  833. kesek[id] = 3
  834. engclient_cmd(id,"weapon_knife")
  835. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Sikeres választás.")
  836. }
  837. else
  838. {
  839. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Hiányzik még ^4%d ^1ölés!",100-oles[id])
  840. }
  841. }
  842. case 5:{
  843. if(oles[id] >= 150){
  844. kesek[id] = 4
  845. engclient_cmd(id,"weapon_knife")
  846. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Sikeres választás.")
  847. }
  848. else
  849. {
  850. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Hiányzik még ^4%d ^1ölés!",150-oles[id])
  851. }
  852. }
  853. case 6:{
  854. if(oles[id] >= 180){
  855. kesek[id] = 5
  856. engclient_cmd(id,"weapon_knife")
  857. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Sikeres választás.")
  858. }
  859. else
  860. {
  861. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Hiányzik még ^4%d ^1ölés!",180-oles[id])
  862. }
  863. }
  864. case 7:{
  865. if(oles[id] >= 200){
  866. kesek[id] = 6
  867. engclient_cmd(id,"weapon_knife")
  868. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Sikeres választás.")
  869. }
  870. else
  871. {
  872. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Hiányzik még ^4%d ^1ölés!",200-oles[id])
  873. }
  874. }
  875. case 8:{
  876. if(oles[id] >= 280){
  877. kesek[id] = 7
  878. engclient_cmd(id,"weapon_knife")
  879. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Sikeres választás.")
  880. }
  881. else
  882. {
  883. ColorChat(id, RED, "^4.:[R3B3LS]:. » ^x01Hiányzik még ^4%d ^1ölés!",280-oles[id])
  884. }
  885. }
  886.  
  887. }
  888. menu_destroy(menu);
  889. return PLUGIN_HANDLED;
  890. }
  891. public rangok(id){
  892. new cim[121], ks1[121],ks2[121],ks3[121],ks4[121],ks5[121],ks6[121],ks7[121],ks8[121]
  893. format(cim, charsmax(cim),"\r.:[R3\yB3L\dS]:. \w|\yRangok\w|^n\yÖlések:\w%d",oles[id])
  894.  
  895. format(ks1, charsmax(ks1),"\wÚjonc Alaprang \y[Megszerezve]")
  896. if(oles[id] < 80)
  897. format(ks2, charsmax(ks2),"\dAmator Rang \r[%d/80 Ölés]",oles[id])
  898. else
  899. format(ks2, charsmax(ks2),"\wAmator Rang \y[Megszerezve]")
  900. if(oles[id] < 100)
  901. format(ks3, charsmax(ks3),"\dKezdo Rang \r[%d/100 Ölés]",oles[id])
  902. else
  903. format(ks3, charsmax(ks3),"\wKezdo Rang \y[Megszerezve]")
  904. if(oles[id] < 180)
  905. format(ks4, charsmax(ks4),"\dHaladó Rang \r[%d/180 Ölés]",oles[id])
  906. else
  907. format(ks4, charsmax(ks4),"\rHaladó Rang \y[Megszerezve]")
  908. if(oles[id] < 200)
  909. format(ks5, charsmax(ks5),"\dProfi Rang \r[%d/200 Ölés]",oles[id])
  910. else
  911. format(ks5, charsmax(ks5),"\wProfi Rang \y[Megszerezve]")
  912. if(oles[id] < 280)
  913. format(ks6, charsmax(ks6),"\dVeterán Rang \r[%d/280 Ölés]",oles[id])
  914. else
  915. format(ks6, charsmax(ks6),"\wVeterán Rang \y[Megszerezve]")
  916. if(oles[id] < 300)
  917. format(ks7, charsmax(ks7),"\dMester Rang \r[%d/300 Ölés]",oles[id])
  918. else
  919. format(ks7, charsmax(ks7),"\wMester Rang \y[Megszerezve]")
  920. if(oles[id] < 380)
  921. format(ks8, charsmax(ks8),"\dLegenda Rang \r[%d/380 Ölés]",oles[id])
  922. else
  923. format(ks8, charsmax(ks8),"\wLegenda Rang \y[Megszerezve]")
  924.  
  925. new menu = menu_create(cim, "rangok_h")
  926.  
  927. menu_additem(menu,ks1,"1",0)
  928. menu_additem(menu,ks2,"1",0)
  929. menu_additem(menu,ks3,"1",0)
  930. menu_additem(menu,ks4,"1",0)
  931. menu_additem(menu,ks5,"1",0)
  932. menu_additem(menu,ks6,"1",0)
  933. menu_additem(menu,ks7,"1",0)
  934. menu_additem(menu,ks8,"1",0)
  935. menu_additem(menu,"\yFigyelem!^naki leghamarabb eléri a 'Legenda' 3 hónap ADMIN-t nyer.","1",0)
  936. menu_setprop(menu, MPROP_NEXTNAME, "Tovább: \r9\y-es gomb!")
  937. menu_setprop(menu, MPROP_EXITNAME, "Bezárás")
  938. menu_setprop(menu, MPROP_BACKNAME, "Elozo oldal: \r8\y-as gomb!")
  939. menu_display(id,menu,0)
  940. }
  941. public rangok_h(id, menu, item)
  942. {
  943. if( item == MENU_EXIT )
  944. {
  945. menu_destroy(menu);
  946. return PLUGIN_HANDLED;
  947. }
  948. new data[9], szName[64], name[32]
  949. get_user_name(id, name, charsmax(name))
  950. new access, callback;
  951. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  952. new key = str_to_num(data);
  953.  
  954. switch(key)
  955. {
  956. case 1: rangok(id)
  957. }
  958. menu_destroy(menu);
  959. return PLUGIN_HANDLED;
  960. }
  961. public handlesay(id)
  962. {
  963. new message[192], Name[32], none[2][32], chat[192], rang[32]
  964. read_args(message, 191)
  965. remove_quotes(message)
  966.  
  967. new hossz = strlen(message)
  968.  
  969. new i = 0
  970. RosszKarakterek = 0
  971.  
  972. while(i < hossz) {
  973. if(message[i] == '#')
  974. RosszKarakterek++
  975. ++i
  976. }
  977.  
  978. if(RosszKarakterek != 0)
  979. {
  980. new JatekosNeve[32]
  981. get_user_name(id, JatekosNeve, charsmax(JatekosNeve))
  982. new JatekosIP[32]
  983. get_user_ip(id, JatekosIP, charsmax(JatekosIP))
  984. server_cmd("kick #%d Tiltott karakter-t irtal chatbe! ^"#^"", get_user_userid(id))
  985. log_amx("%s | %s rossz karaktert irtbe chatbe : %s", JatekosNeve, JatekosIP, message)
  986. return PLUGIN_HANDLED
  987. }
  988.  
  989. formatex(none[0], 31, ""), formatex(none[1], 31, " ")
  990.  
  991. if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, ""))
  992. return PLUGIN_HANDLED;
  993.  
  994. if(!equali(message, none[0]) && !equali(message, none[1]))
  995. {
  996. get_user_name(id, Name, 31);
  997. if(oles[id] < 50)
  998. rang = "Újonc"
  999. else if(oles[id] < 80)
  1000. rang = "Amator"
  1001. else if(oles[id] < 100)
  1002. rang = "Kezdo"
  1003. else if(oles[id] < 150)
  1004. rang = "Haladó"
  1005. else if(oles[id] < 180)
  1006. rang = "Profi"
  1007. else if(oles[id] < 200)
  1008. rang = "Veterán"
  1009. else if(oles[id] < 280)
  1010. rang = "Mester"
  1011. else
  1012. rang = "Legenda"
  1013. if(equal("`|Q|uExToN.#",Name))
  1014. formatex(chat, 191, "^4[»TULAJ«][%s]^3%s^1 :^4 %s",rang, Name, message)
  1015. else if(equal("Clans.hu|Kestom",Name))
  1016. formatex(chat, 191, "^4[»TULAJ«][%s]^3%s^1 :^4 %s",rang, Name, message)
  1017. else if(equal("!!!!!!!!!!!",Name))
  1018. formatex(chat, 191, "^4[»Cica<3«][%s]^3%s^1 :^4 %s",rang, Name, message)
  1019. else if(equal("[!!",Name))
  1020. formatex(chat, 191, "^4[#CICA<3][%s]^3%s^1 :^4 %s",rang, Name, message)
  1021. else if(equal("!!",Name))
  1022. formatex(chat, 191, "^4[KONFIGOS][%s]^3%s^1 :^4 %s",rang, Name, message)
  1023. else if(equal("!1",Name))
  1024. formatex(chat, 191, "^4[FOADMIN][%s]^3%s^1 :^4 %s",rang, Name, message)
  1025. else if(equal("s!!",Name))
  1026. formatex(chat, 191, "^4[ADMIN][%s]^3%s^1 :^4 %s",rang, Name, message)
  1027. else if(get_user_flags(id) & ADMIN_KICK)
  1028. formatex(chat, 191, "^4[»ADMIN«][%s]^3%s^1 :^4 %s",rang, Name, message)
  1029. else
  1030. formatex(chat, 191, "^4[»%s«]^3%s^1 :^1 %s",rang, Name, message)
  1031.  
  1032. switch(cs_get_user_team(id))
  1033. {
  1034. case 1: ColorChat(0, RED, chat)
  1035. case 2: ColorChat(0, BLUE, chat)
  1036. }
  1037. if(cs_get_user_team(id) == CS_TEAM_SPECTATOR)
  1038. ColorChat(0, GREY, chat)
  1039. return PLUGIN_HANDLED
  1040. }
  1041. return PLUGIN_CONTINUE
  1042. }
  1043. public mentes(id)
  1044. {
  1045. new vaultkey[64],vaultdata[256], name[32]
  1046. get_user_name(id, name, 31)
  1047. format(vaultkey,63,"%s-KESEK", name)
  1048. format(vaultdata,255,"%d", oles[id])
  1049. nvault_set(vault,vaultkey,vaultdata)
  1050. return PLUGIN_CONTINUE
  1051. }
  1052. public betoltes(id)
  1053. {
  1054. new vaultkey[64],vaultdata[256], name[32]
  1055. get_user_name(id, name, 31)
  1056. format(vaultkey,63,"%s-KESEK", name)
  1057. nvault_get(vault,vaultkey,vaultdata,255)
  1058. oles[id] = str_to_num(vaultdata)
  1059. return PLUGIN_CONTINUE;
  1060. }
  1061. public Event_Change_Weapon(id)
  1062. {
  1063. new fegyver = get_user_weapon(id)
  1064. if(kesek[id] == 0 && fegyver == CSW_KNIFE)
  1065. set_pev(id, pev_viewmodel2, "models/rebels_alap_kes.mdl")
  1066. if(kesek[id] == 1 && fegyver == CSW_KNIFE)
  1067. set_pev(id, pev_viewmodel2, "models/rebels_paintball/rebels_kes2.mdl")
  1068. if(kesek[id] == 2 && fegyver == CSW_KNIFE)
  1069. set_pev(id, pev_viewmodel2, "models/rebels_paintball/rebels_kes3.mdl")
  1070. if(kesek[id] == 3 && fegyver == CSW_KNIFE)
  1071. set_pev(id, pev_viewmodel2, "models/rebels_paintball/rebels_kes4.mdl")
  1072. if(kesek[id] == 4 && fegyver == CSW_KNIFE)
  1073. set_pev(id, pev_viewmodel2, "models/rebels_paintball/rebels_kes5.mdl")
  1074. if(kesek[id] == 5 && fegyver == CSW_KNIFE)
  1075. set_pev(id, pev_viewmodel2, "models/rebels_paintball/rebels_kes6.mdl")
  1076. if(kesek[id] == 6 && fegyver == CSW_KNIFE)
  1077. set_pev(id, pev_viewmodel2, "models/rebels_paintball/rebels_kes7.mdl")
  1078. if(kesek[id] == 7 && fegyver == CSW_KNIFE)
  1079. set_pev(id, pev_viewmodel2, "models/rebels_paintball/rebels_kes8.mdl")
  1080. if(kesek[id] == -1 && fegyver == CSW_KNIFE)
  1081. set_pev(id, pev_viewmodel2, "models/rebels_paintball/fps.mdl")
  1082. }
  1083. public client_connect(id)
  1084. {
  1085. betoltes(id)
  1086.  
  1087. new JatekosNeve[32]
  1088. get_user_name(id, JatekosNeve, charsmax(JatekosNeve))
  1089. new JatekosIP[32]
  1090. get_user_ip(id, JatekosIP, charsmax(JatekosIP))
  1091.  
  1092. new hossz = strlen(JatekosNeve)
  1093.  
  1094. new i = 0
  1095. RosszKarakterek = 0
  1096. RosszKarakterek2 = 0
  1097.  
  1098. while(i < hossz)
  1099. {
  1100. if(JatekosNeve[i] == '#')
  1101. RosszKarakterek++
  1102. if(JatekosNeve[i] == '_')
  1103. RosszKarakterek2++
  1104. ++i
  1105.  
  1106. }
  1107.  
  1108. if(RosszKarakterek != 0 && RosszKarakterek2 != 0)
  1109. {
  1110. server_cmd("kick #%d Tiltott karakter van a nevedben. ^"# & _^"", get_user_userid(id))
  1111. log_amx("Egy jatekos tiltott karakteres nevvel jott fel : %s | %s", JatekosNeve, JatekosIP)
  1112. }
  1113. return PLUGIN_CONTINUE
  1114. }
  1115. public client_disconnect(id)
  1116. {
  1117. mentes(id)
  1118. }
  1119. stock print_color(const id, const input[], any:...)
  1120. {
  1121. new count = 1, players[32]
  1122. static msg[191]
  1123. vformat(msg, 190, input, 3)
  1124.  
  1125. replace_all(msg, 190, "!g", "^4")
  1126. replace_all(msg, 190, "!y", "^1")
  1127. replace_all(msg, 190, "!t", "^3")
  1128.  
  1129. if (id) players[0] = id; else get_players(players, count, "ch")
  1130. {
  1131. for (new i = 0; i < count; i++)
  1132. {
  1133. if (is_user_connected(players[i]))
  1134. {
  1135. message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
  1136. write_byte(players[i])
  1137. write_string(msg)
  1138. message_end()
  1139. }
  1140. }
  1141. }
  1142. return PLUGIN_HANDLED
  1143. }

_________________
Üdvözlettel: AMX Mod X

[kozep]Magyar AMX Mod X weboldal: http://www.amxx.hu/site/index.php
Kép[/kozep]


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


Ki van itt

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