hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2025.07.06. 12:21



Jelenlévő felhasználók

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

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

Regisztrált felhasználók: Bing [Bot], 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  [4 hozzászólás ] 
Szerző Üzenet
 Hozzászólás témája: Pontrendszer.
HozzászólásElküldve:2014.09.14. 12:07 
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
Valaki javítaná ezt a Plugint?:#include <amxmodx>
SMA Forráskód: [ Mindet kijelol ]
  1. #include <amxmisc>
  2. #include <cstrike>
  3. #include <fun>
  4. #include <fakemeta>
  5. #include <hamsandwich>
  6. #include <nvault>
  7. #include <colorchat>
  8.  
  9. #define PLUGIN "Pontrendszer"
  10. #define VERSION "1.0"
  11. #define AUTHOR "V!rusHD"
  12.  
  13. #define DROG_SEBESSEG 800.0
  14.  
  15. new message[192]
  16. new nev[32]
  17. new Temp[192]
  18. static color[10]
  19. new g_vault
  20. new olesek[33]
  21. new szint[33]
  22. new pontok[33]
  23. new name[33][32]
  24. new killp, killhsp
  25. new ajandek1, ajandek2, ajandek3
  26. new SyncHudObj
  27. enum shopitems
  28. {
  29. KESEK,
  30. USPK,
  31. GRANATPACK,
  32. SEBESSEG,
  33. UJRAELEDES,
  34. HOHP,
  35. M4A1,
  36. AK47
  37. };
  38. new cvar_bolt[shopitems]
  39.  
  40. new bool:activ_sebesseg[33]
  41. new bool:activ_lathatatlan[33]
  42. new bool:activ_onehit[33]
  43. new bool:activ_halhatatlan[33]
  44.  
  45. #define MAX_SHOP_ITEM 9
  46. new const shop_item_names[MAX_SHOP_ITEM+1][] =
  47. {
  48. "",
  49. "\wKések",
  50. "\wUSP-k",
  51. "\wNagyobb Sebesség \r|%d| Pont",
  52. "\wGránát Pack \y(HE,FE,SM) \r|%d| Pont",
  53. "\wNagyobb Sebesség \r|%d| Pont",
  54. "\wÚjraéledés \y(Halottak használhatják!) \r|%d| Pont",
  55. "\w+25 HP \r|%d| Pont",
  56. "\wM4A1 \r|%d| Pont",
  57. "\wAK47 \r|%d| Pont"
  58. };
  59. #define ASD 13
  60.  
  61. //Ha az ASD értéke 15 akkor a szamoknal 15 szám a rangoknál 16 szöveg
  62.  
  63. new const szamok[ASD] = {
  64. 2,
  65. 4,
  66. 6,
  67. 10,
  68. 15,
  69. 20,
  70. 26,
  71. 33,
  72. 39,
  73. 47,
  74. 67,
  75. 79,
  76. 100
  77.  
  78. }
  79.  
  80. new const rangok[ASD+1][] = {
  81. "Nokedli",
  82. "Bot",
  83. "Kezdő",
  84. "HaladĂł",
  85. "HĂłember",
  86. "Ă–rult",
  87. "LoL",
  88. "Aimos",
  89. "Mester",
  90. "NagyMester",
  91. "Predátor",
  92. "LegenD",
  93. "FélIsten",
  94. "Isten"
  95. }
  96. public plugin_init() {
  97.  
  98. register_plugin(PLUGIN, VERSION, AUTHOR)
  99.  
  100. killp = register_cvar("pont_kill", "4")
  101. killhsp = register_cvar("pont_killhs", "8")
  102.  
  103. ajandek1 = register_cvar("pont_ajandek1", "5")
  104. ajandek2 = register_cvar("pont_ajandek2", "10")
  105. ajandek3 = register_cvar("pont_ajandek3", "30")
  106.  
  107. register_clcmd("say", "sayhook")
  108. register_clcmd("say_team", "tshook")
  109. register_clcmd("team_say /adas", "adas")
  110. register_clcmd("say /adas", "adas")
  111. register_clcmd("pont_adas", "adas")
  112.  
  113. register_clcmd("team_say /shop", "Shop")
  114. register_clcmd("say /shop", "Shop")
  115. register_clcmd("team_say /bolt", "Shop")
  116. register_clcmd("say /bolt", "Shop")
  117.  
  118. cvar_bolt[KESEK] = register_cvar("bolt_1", "0")
  119. cvar_bolt[USPK] = register_cvar("bolt_2", "0")
  120. cvar_bolt[GRANATPACK] = register_cvar("bolt_3", "10")
  121. cvar_bolt[SEBESSEG] = register_cvar("bolt_4", "5")
  122. cvar_bolt[UJRAELEDES] = register_cvar("bolt_5", "10")
  123. cvar_bolt[HOHP] = register_cvar("bolt_6", "15")
  124. cvar_bolt[M4A1] = register_cvar("bolt_7", "15")
  125. cvar_bolt[AK47] = register_cvar("bolt_8", "15")
  126.  
  127. g_vault = nvault_open("PontRendszer");
  128. g_vault = nvault_open("namerang")
  129.  
  130. RegisterHam(Ham_Killed, "player", "fw_player_killed", 1)
  131. RegisterHam(Ham_TakeDamage, "player", "fw_player_damage", 0)
  132. RegisterHam(Ham_Spawn, "player", "fw_player_spawn", 0)
  133. RegisterHam(Ham_Spawn, "player", "fw_player_spawn_post", 1)
  134. register_event("CurWeapon", "Event_Change_Weapon", "be", "1=1")
  135. register_event("DeathMsg", "halal", "a")
  136. SyncHudObj = CreateHudSyncObj()
  137. new itemszam = (_:shopitems)
  138. if(MAX_SHOP_ITEM != itemszam)
  139. {
  140. set_fail_state("Valamit elrontottal. A shopitems tombben es a shop_item_names tombben nem ugyanannyi elem van")
  141. }
  142. }
  143. public sayhook(id)
  144. {
  145.  
  146. read_args (message, 191)
  147. remove_quotes (message)
  148. if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, ""))
  149. {
  150. return PLUGIN_CONTINUE
  151. }
  152. get_user_name(id, nev, 31)
  153.  
  154. if(is_user_admin(id))
  155. {
  156. if(is_user_alive(id)) {
  157. get_user_team(id, color, 9)
  158. formatex(Temp, 191, "^x04%s ^x03%s^x04: %s", rangok[szint[id]], nev, message)
  159.  
  160. }
  161. else {
  162. get_user_team(id, color, 9)
  163. formatex(Temp, 191, "^x04*Halott* %s ^x03%s^x04: %s", rangok[szint[id]], nev, message)
  164. }
  165. }else{
  166. if(is_user_alive(id)) {
  167. get_user_team(id, color, 9)
  168. formatex(Temp, 191, "^x04%s ^x03%s^x01: %s", rangok[szint[id]], nev, message)
  169.  
  170. }
  171. else {
  172. get_user_team(id, color, 9)
  173. formatex(Temp, 191, "^x04*Halott* %s ^x03%s^x01: %s", rangok[szint[id]], nev, message)
  174. }
  175. }
  176. sendmessage(color)
  177. return PLUGIN_HANDLED
  178. }
  179. public tshook(id)
  180. {
  181. read_args (message, 191)
  182. remove_quotes (message)
  183. if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, ""))
  184. {
  185. return PLUGIN_CONTINUE
  186. }
  187. get_user_name(id, nev, 31)
  188. new playerTeam = get_user_team(id)
  189. new playerTeamName[19]
  190. switch (playerTeam)
  191. {
  192. case 1: {
  193. copy (playerTeamName, 11, "*Terrorista*")
  194.  
  195. }
  196. case 2: {
  197. copy (playerTeamName, 18, "*Anti-Terrorista*")
  198.  
  199. }
  200. default:
  201. copy (playerTeamName, 9, "*Néző*")
  202. }
  203. if(is_user_admin(id))
  204. {
  205. if(is_user_alive(id))
  206. {
  207. get_user_team(id, color, 9)
  208. formatex(Temp, 191, "^x03(%s) ^x04%s ^x03%s^x04: %s",playerTeamName, rangok[szint[id]], nev, message)
  209.  
  210. }
  211. else
  212. {
  213. get_user_team(id, color, 9)
  214. formatex(Temp, 191, "^x04*Halott* ^x03(%s) ^x04%s ^x03%s^x04: %s",playerTeamName, rangok[szint[id]], nev, message)
  215. }
  216. }else{
  217. if(is_user_alive(id))
  218. {
  219. get_user_team(id, color, 9)
  220. formatex(Temp, 191, "^x03(%s) ^x04%s ^x03%s^x01: %s",playerTeamName, rangok[szint[id]], nev, message)
  221.  
  222. }
  223. else
  224. {
  225. get_user_team(id, color, 9)
  226. formatex(Temp, 191, "^x04*Halott* ^x03(%s) ^x04%s ^x03%s^x01: %s",playerTeamName, rangok[szint[id]], nev, message)
  227. }
  228. }
  229. sendtmessage(color, playerTeam)
  230. return PLUGIN_HANDLED
  231. }
  232. public sendmessage(color[])
  233. {
  234. new teamName[10]
  235. for(new player = 1; player < get_maxplayers(); player++)
  236. {
  237. get_user_team (player, teamName, 9)
  238. teamf (player, color)
  239. elkuldes(player, Temp)
  240. teamf(player, teamName)
  241. }
  242. }
  243. public sendtmessage(color[], playerTeam)
  244. {
  245. new teamName[10]
  246. for (new player = 1; player < get_maxplayers(); player++)
  247. {
  248. if(get_user_team(player) == playerTeam)
  249. {
  250. get_user_team (player, teamName, 9)
  251. elkuldes(player, Temp)
  252. teamf (player, teamName)
  253. teamf (player, color)
  254. }
  255. }
  256. }
  257. public teamf(player, team[])
  258. {
  259. message_begin(MSG_ONE, get_user_msgid("TeamInfo"), _, player)
  260. write_byte(player)
  261. write_string(team)
  262. message_end()
  263. }
  264. public elkuldes(player, Temp[])
  265. {
  266.  
  267. message_begin( MSG_ONE, get_user_msgid( "SayText" ), _, player)
  268. write_byte( player )
  269. write_string( Temp )
  270. message_end()
  271.  
  272. }
  273.  
  274. public fw_player_killed(victim, attacker, shouldgib)
  275. {
  276. if(!is_user_connected(attacker) || !is_user_connected(victim) || attacker == victim)
  277. return PLUGIN_CONTINUE;
  278.  
  279. if(get_pdata_int(victim, 75) == HIT_HEAD)
  280. {
  281. pontok[attacker] += get_pcvar_num(killhsp)
  282. }
  283. else
  284. {
  285. pontok[attacker] += get_pcvar_num(killp)
  286. }
  287. return PLUGIN_CONTINUE
  288. }
  289. public fw_player_damage(victim, inflictor, attacker, Float:damage, damage_type)
  290. {
  291. if(activ_onehit[attacker])
  292. {
  293. SetHamParamFloat(4, float(get_user_health(victim)+1))
  294. }
  295. if(activ_halhatatlan[victim])
  296. {
  297. return HAM_SUPERCEDE
  298. }
  299. return HAM_IGNORED
  300. }
  301. public fw_player_spawn(id)
  302. {
  303. activ_halhatatlan[id] = false
  304. activ_onehit[id] = false
  305. activ_sebesseg[id] = false
  306. }
  307. public fw_player_spawn_post(id)
  308. {
  309. if(activ_lathatatlan[id])
  310. {
  311. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 255)
  312. activ_lathatatlan[id] = false
  313. }
  314. }
  315. public Event_Change_Weapon(id)
  316. {
  317. if(activ_sebesseg[id])
  318. {
  319. set_user_maxspeed(id, DROG_SEBESSEG)
  320. }
  321. return PLUGIN_CONTINUE
  322. }
  323. public Shop(id)//IGEN EZ ITT A MENU
  324. {
  325. static Item[64]
  326.  
  327. formatex(Item, charsmax(Item),"\r.:[R]3\w[L][O]\yAD]:. \rDeathrun Bolt:^n\ySzinted:\r%s \w| \yKell még:\r%d \w| \yPontjaid:\r%d",rangok[szint[id]],szamok[szint[id]]-olesek[id],pontok[tempid] )
  328. new Menu = menu_create(Item, "Shoph")
  329.  
  330. new szTempid[10]
  331.  
  332. for(new i = 1; i<sizeof(shop_item_names); i++)
  333. {
  334. num_to_str(i, szTempid, 9)
  335. formatex(Item, charsmax(Item),shop_item_names[i], get_pcvar_num(cvar_bolt[shopitems:(i-1)]))
  336. menu_additem(Menu, Item, szTempid)
  337. }
  338. menu_setprop(Menu, MPROP_EXIT, MEXIT_ALL)
  339. menu_display(id, Menu)
  340.  
  341. return PLUGIN_HANDLED
  342. }
  343. public Shoph(id, menu, item)
  344. {
  345. if( item == MENU_EXIT )
  346. {
  347. menu_destroy(menu)
  348. return PLUGIN_HANDLED
  349. }
  350. new data[6], iName[64]
  351. new access, callback
  352. menu_item_getinfo(menu, item, access, data,5, iName, 63, callback)
  353.  
  354. new key = str_to_num(data)
  355. new elo = is_user_alive(id)
  356. new ar[_:shopitems+1]
  357. for(new i=1; i<_:shopitems+1; i++)
  358. {
  359. ar[i] = get_pcvar_num(cvar_bolt[shopitems:(i-1)])
  360. }
  361.  
  362. switch(key)
  363. {
  364. case 1:
  365. {
  366. if (pontok[id] >= ar[key] && elo)
  367. {
  368. pontok[id] -= ar[key]
  369. give_item(id, "weapon_flashbang")
  370. give_item(id, "weapon_hegrenade")
  371. give_item(id, "weapon_smokegrenade")
  372. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Gratulálunk, Sikeresen megkaptad a ^4gránátokat!")
  373. }
  374. else
  375. {
  376. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Sajnos, nincs elég ^4pontod")
  377. }
  378. }
  379. case 2:
  380. {
  381. if (pontok[id] >= ar[key] && elo)
  382. {
  383. pontok[id] -= ar[key]
  384. set_user_maxspeed(id, DROG_SEBESSEG)
  385. activ_sebesseg[id] = true
  386. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1A ^4sebességed ^1gyorsitva lett!")
  387. }
  388. else
  389. {
  390. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Sajnos, nincs elég ^4pontod")
  391. }
  392. }
  393. case 3:
  394. {
  395. if (pontok[id] >= ar[key] && !elo)
  396. {
  397. pontok[id] -= ar[key]
  398. ExecuteHamB(Ham_CS_RoundRespawn, id)
  399. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Gratulálunk, Sikeresen ^4Újraéledtél!")
  400. }
  401. else if(elo)
  402. {
  403. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^4Elők ^1nem használhatják!")
  404. }
  405. else
  406. {
  407. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Sajnos, nincs elég ^4pontod")
  408. }
  409. }
  410. case 4:
  411. {
  412. if (pontok[id] >= ar[key] && elo)
  413. {
  414. pontok[id] -= ar[key]
  415. set_user_health(id, get_user_health(id)+25)
  416. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Gratulálunk, Sikeresen megkaptad az ^4életet!")
  417. }
  418. else
  419. {
  420. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Sajnos, nincs elég ^4pontod")
  421. }
  422. }
  423. case 5:
  424. {
  425. if (pontok[id] >= ar[key] && elo)
  426. {
  427. pontok[id] -= ar[key];
  428. give_item(id, "weapon_m4a1");
  429. cs_set_user_bpammo(id, CSW_M4A1, 30);
  430. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Gratulálunk, Sikeresen megkaptad az ^4M4A1-t!")
  431. }
  432. else
  433. {
  434. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Sajnos, nincs elég ^4pontod")
  435. }
  436. }
  437. case 6:
  438. {
  439. if (pontok[id] >= ar[key] && elo)
  440. {
  441. pontok[id] -= ar[key]
  442. give_item(id, "weapon_ak47");
  443. cs_set_user_bpammo(id, CSW_AK47, 30);
  444. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Gratulálunk, Sikeresen megkaptad az ^4AK47-t!")
  445. }
  446. else
  447. {
  448. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Sajnos, nincs elég ^4pontod")
  449. }
  450. }
  451. }
  452. menu_destroy(menu)
  453. return PLUGIN_HANDLED
  454. }
  455.  
  456. public mentes(id)
  457. {
  458. new name[32]
  459. get_user_name(id, name, 31)
  460. new vaultkey[64],vaultdata[256]
  461.  
  462. format(vaultkey,63,"%s-rang", name)
  463. format(vaultdata,255,"%i#%i#",olesek[id],szint[id])
  464. format(vaultkey,63,"%s-PONTOK", name[id])
  465. format(vaultdata,255,"%d", pontok[id])
  466.  
  467. nvault_set(g_vault,vaultkey,vaultdata)
  468. return PLUGIN_CONTINUE
  469. }
  470. public betoltes(id)
  471. {
  472. new name[32]
  473. get_user_name(id, name, 31)
  474. new vaultkey[64],vaultdata[256]
  475.  
  476. format(vaultkey,63,"%s-rang", name)
  477. format(vaultdata,255,"%i#%i#",olesek[id],szint[id])
  478. format(vaultkey,63,"%s-PONTOK", name[id])
  479.  
  480. nvault_get(g_vault,vaultkey,vaultdata,255)
  481. pontok[id] = str_to_num(vaultdata)
  482. replace_all(vaultdata, 255, "#", " ")
  483. new oles[32], level[32]
  484. parse(vaultdata, oles, 31, level, 31)
  485. olesek[id] = str_to_num(oles)
  486. szint[id] = str_to_num(level)
  487. return PLUGIN_CONTINUE
  488.  
  489. return PLUGIN_CONTINUE;
  490. }
  491. public client_disconnect(id)
  492. {
  493. mentes(id);
  494. remove_task(id);
  495. pontok[id] = 0;
  496. activ_sebesseg[id] = false
  497. }
  498.  
  499. public client_connect(id)
  500. {
  501. get_user_name(id, name[id], 31)
  502. betoltes(id);
  503. set_task(300.0, "ajandek_1",id)
  504. set_task(900.0, "ajandek_2",id)
  505. set_task(1800.0, "ajandek_3",id)
  506. }
  507. public adas(id)
  508. {
  509. if (get_user_flags(id) & ADMIN_KICK)
  510. {
  511. new menu = menu_create("\r.:[R]3\w[L][O]\yAD]:. \wKinek akarsz pontot adni?", "menu_handler")
  512. new players[32], pnum, tempid
  513. new szName[32], szTempid[10]
  514. get_players(players, pnum)
  515. for( new i; i<pnum; i++ )
  516. {
  517. tempid = players[i];
  518. get_user_name(tempid, szName, charsmax(szName))
  519. num_to_str(tempid, szTempid, charsmax(szTempid))
  520. menu_additem(menu, szName, szTempid, 0)
  521.  
  522. }
  523. menu_display(id, menu, 0)
  524. }
  525. else
  526. {
  527. ColorChat(id, RED, "Sajnos nincs jogod hasznalni ezt a parancsot!")
  528.  
  529. }
  530. }
  531. public menu_handler(id, menu, item)
  532. {
  533. if( item == MENU_EXIT )
  534. {
  535. menu_destroy(menu);
  536. return PLUGIN_HANDLED;
  537. }
  538.  
  539. new data[6], szName[64];
  540. new access, callback;
  541. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  542.  
  543. new tempid = str_to_num(data);
  544.  
  545. if( is_user_alive(tempid) )
  546. {
  547. pontok[tempid] += 10
  548. }
  549. client_cmd(id,"pont_adas")
  550. menu_destroy(menu);
  551. return PLUGIN_HANDLED;
  552. }
  553. public ajandek_1(id)
  554. {
  555. new penz = get_pcvar_num(ajandek1);
  556. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^3%d ^4pont ^1jár, mert itt vagy mar 5 perce!", penz)
  557. pontok[id] += penz;
  558. }
  559. public ajandek_2(id)
  560. {
  561. new penz = get_pcvar_num(ajandek2);
  562. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^3%d ^4pont ^1jár, mert itt vagy mar 10 perce!", penz)
  563. pontok[id] += penz;
  564. }
  565. public ajandek_3(id)
  566. {
  567. new penz = get_pcvar_num(ajandek3);
  568. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^3%d ^4pont ^1jár, mert itt vagy mar 30 perce!", penz)
  569. pontok[id] += penz;
  570. }

Anyi kellene, hogy a mostani hibákat javítsák, és még egy ugrásmenüt beleírni ahol 1, vagy 2ugras közzt lehet választani, meghogy a kések és az usp-k menüpontnak legyenek almenüi, és ha megveszünk onnan pl egy usp-et akkor mentse el, hogy megvetük, és lehesen használni...Aki megcsínálja nagyon megköszönöm.

_________________
Kép


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Pontrendszer.
HozzászólásElküldve:2014.09.14. 15:09 
Offline
Őskövület
Avatar

Csatlakozott:2012.02.27. 09:42
Hozzászólások:2588
Megköszönt másnak: 26 alkalommal
Megköszönték neki: 418 alkalommal
A mostani hibákat amiket kiszúrtam javítottam biztos h maradt benne még hiba de az majd kiderül..

Azért ez tetszik:
SMA Forráskód: [ Mindet kijelol ]
  1. #define AUTHOR "V!rusHD"

elmondanád nekem, hogy miért van az h ebbe a pluginba a neveden kívül semmi mást nem írtál bele? XD


SMA Forráskód: [ Mindet kijelol ]
  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <cstrike>
  4. #include <fun>
  5. #include <fakemeta>
  6. #include <hamsandwich>
  7. #include <nvault>
  8. #include <colorchat>
  9.  
  10. #define PLUGIN "Pontrendszer"
  11. #define VERSION "1.0"
  12. #define AUTHOR "V!rusHD"
  13.  
  14. #define DROG_SEBESSEG 800.0
  15.  
  16. new message[192]
  17. new nev[32]
  18. new Temp[192]
  19. static color[10]
  20. new g_vault
  21. new olesek[33]
  22. new szint[33]
  23. new pontok[33]
  24. new name[33][32]
  25. new killp, killhsp
  26. new ajandek1, ajandek2, ajandek3
  27.  
  28. enum shopitems
  29. {
  30. KESEK,
  31. USPK,
  32. GRANATPACK,
  33. SEBESSEG,
  34. UJRAELEDES,
  35. HOHP,
  36. M4A1,
  37. AK47
  38. };
  39. new cvar_bolt[shopitems]
  40.  
  41. new bool:activ_sebesseg[33]
  42. new bool:activ_lathatatlan[33]
  43. new bool:activ_onehit[33]
  44. new bool:activ_halhatatlan[33]
  45.  
  46. #define MAX_SHOP_ITEM 9
  47. new const shop_item_names[MAX_SHOP_ITEM+1][] =
  48. {
  49. "",
  50. "\wKések",
  51. "\wUSP-k",
  52. "\wNagyobb Sebesség \r|%d| Pont",
  53. "\wGránát Pack \y(HE,FE,SM) \r|%d| Pont",
  54. "\wNagyobb Sebesség \r|%d| Pont",
  55. "\wÚjraéledés \y(Halottak használhatják!) \r|%d| Pont",
  56. "\w+25 HP \r|%d| Pont",
  57. "\wM4A1 \r|%d| Pont",
  58. "\wAK47 \r|%d| Pont"
  59. };
  60. #define ASD 13
  61.  
  62. //Ha az ASD értéke 15 akkor a szamoknal 15 szám a rangoknál 16 szöveg
  63.  
  64. new const szamok[ASD] = {
  65. 2,
  66. 4,
  67. 6,
  68. 10,
  69. 15,
  70. 20,
  71. 26,
  72. 33,
  73. 39,
  74. 47,
  75. 67,
  76. 79,
  77. 100
  78.  
  79. }
  80.  
  81. new const rangok[ASD+1][] = {
  82. "Nokedli",
  83. "Bot",
  84. "Kezdő",
  85. "HaladĂł",
  86. "HĂłember",
  87. "Ă–rult",
  88. "LoL",
  89. "Aimos",
  90. "Mester",
  91. "NagyMester",
  92. "Predátor",
  93. "LegenD",
  94. "FélIsten",
  95. "Isten"
  96. }
  97. public plugin_init() {
  98.  
  99. register_plugin(PLUGIN, VERSION, AUTHOR)
  100.  
  101. killp = register_cvar("pont_kill", "4")
  102. killhsp = register_cvar("pont_killhs", "8")
  103.  
  104. ajandek1 = register_cvar("pont_ajandek1", "5")
  105. ajandek2 = register_cvar("pont_ajandek2", "10")
  106. ajandek3 = register_cvar("pont_ajandek3", "30")
  107.  
  108. register_clcmd("say", "sayhook")
  109. register_clcmd("say_team", "tshook")
  110. register_clcmd("team_say /adas", "adas")
  111. register_clcmd("say /adas", "adas")
  112. register_clcmd("pont_adas", "adas")
  113.  
  114. register_clcmd("team_say /shop", "Shop")
  115. register_clcmd("say /shop", "Shop")
  116. register_clcmd("team_say /bolt", "Shop")
  117. register_clcmd("say /bolt", "Shop")
  118.  
  119. cvar_bolt[KESEK] = register_cvar("bolt_1", "0")
  120. cvar_bolt[USPK] = register_cvar("bolt_2", "0")
  121. cvar_bolt[GRANATPACK] = register_cvar("bolt_3", "10")
  122. cvar_bolt[SEBESSEG] = register_cvar("bolt_4", "5")
  123. cvar_bolt[UJRAELEDES] = register_cvar("bolt_5", "10")
  124. cvar_bolt[HOHP] = register_cvar("bolt_6", "15")
  125. cvar_bolt[M4A1] = register_cvar("bolt_7", "15")
  126. cvar_bolt[AK47] = register_cvar("bolt_8", "15")
  127.  
  128. g_vault = nvault_open("allin")
  129.  
  130. RegisterHam(Ham_Killed, "player", "fw_player_killed", 1)
  131. RegisterHam(Ham_TakeDamage, "player", "fw_player_damage", 0)
  132. RegisterHam(Ham_Spawn, "player", "fw_player_spawn", 0)
  133. RegisterHam(Ham_Spawn, "player", "fw_player_spawn_post", 1)
  134. register_event("CurWeapon", "Event_Change_Weapon", "be", "1=1")
  135. register_event("DeathMsg", "halal", "a")
  136. new itemszam = (_:shopitems)
  137. if(MAX_SHOP_ITEM != itemszam)
  138. {
  139. set_fail_state("Valamit elrontottal. A shopitems tombben es a shop_item_names tombben nem ugyanannyi elem van")
  140. }
  141. }
  142. public sayhook(id)
  143. {
  144.  
  145. read_args (message, 191)
  146. remove_quotes (message)
  147. if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, ""))
  148. {
  149. return PLUGIN_CONTINUE
  150. }
  151. get_user_name(id, nev, 31)
  152.  
  153. if(is_user_admin(id))
  154. {
  155. if(is_user_alive(id)) {
  156. get_user_team(id, color, 9)
  157. formatex(Temp, 191, "^x04%s ^x03%s^x04: %s", rangok[szint[id]], nev, message)
  158.  
  159. }
  160. else {
  161. get_user_team(id, color, 9)
  162. formatex(Temp, 191, "^x04*Halott* %s ^x03%s^x04: %s", rangok[szint[id]], nev, message)
  163. }
  164. }else{
  165. if(is_user_alive(id)) {
  166. get_user_team(id, color, 9)
  167. formatex(Temp, 191, "^x04%s ^x03%s^x01: %s", rangok[szint[id]], nev, message)
  168.  
  169. }
  170. else {
  171. get_user_team(id, color, 9)
  172. formatex(Temp, 191, "^x04*Halott* %s ^x03%s^x01: %s", rangok[szint[id]], nev, message)
  173. }
  174. }
  175. sendmessage(color)
  176. return PLUGIN_HANDLED
  177. }
  178. public tshook(id)
  179. {
  180. read_args (message, 191)
  181. remove_quotes (message)
  182. if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, ""))
  183. {
  184. return PLUGIN_CONTINUE
  185. }
  186. get_user_name(id, nev, 31)
  187. new playerTeam = get_user_team(id)
  188. new playerTeamName[19]
  189. switch (playerTeam)
  190. {
  191. case 1: {
  192. copy (playerTeamName, 11, "*Terrorista*")
  193.  
  194. }
  195. case 2: {
  196. copy (playerTeamName, 18, "*Anti-Terrorista*")
  197.  
  198. }
  199. default:
  200. copy (playerTeamName, 9, "*Néző*")
  201. }
  202. if(is_user_admin(id))
  203. {
  204. if(is_user_alive(id))
  205. {
  206. get_user_team(id, color, 9)
  207. formatex(Temp, 191, "^x03(%s) ^x04%s ^x03%s^x04: %s",playerTeamName, rangok[szint[id]], nev, message)
  208.  
  209. }
  210. else
  211. {
  212. get_user_team(id, color, 9)
  213. formatex(Temp, 191, "^x04*Halott* ^x03(%s) ^x04%s ^x03%s^x04: %s",playerTeamName, rangok[szint[id]], nev, message)
  214. }
  215. }else{
  216. if(is_user_alive(id))
  217. {
  218. get_user_team(id, color, 9)
  219. formatex(Temp, 191, "^x03(%s) ^x04%s ^x03%s^x01: %s",playerTeamName, rangok[szint[id]], nev, message)
  220.  
  221. }
  222. else
  223. {
  224. get_user_team(id, color, 9)
  225. formatex(Temp, 191, "^x04*Halott* ^x03(%s) ^x04%s ^x03%s^x01: %s",playerTeamName, rangok[szint[id]], nev, message)
  226. }
  227. }
  228. sendtmessage(color, playerTeam)
  229. return PLUGIN_HANDLED
  230. }
  231. public sendmessage(color[])
  232. {
  233. new teamName[10]
  234. for(new player = 1; player < get_maxplayers(); player++)
  235. {
  236. get_user_team (player, teamName, 9)
  237. teamf (player, color)
  238. elkuldes(player, Temp)
  239. teamf(player, teamName)
  240. }
  241. }
  242. public sendtmessage(color[], playerTeam)
  243. {
  244. new teamName[10]
  245. for (new player = 1; player < get_maxplayers(); player++)
  246. {
  247. if(get_user_team(player) == playerTeam)
  248. {
  249. get_user_team (player, teamName, 9)
  250. elkuldes(player, Temp)
  251. teamf (player, teamName)
  252. teamf (player, color)
  253. }
  254. }
  255. }
  256. public teamf(player, team[])
  257. {
  258. message_begin(MSG_ONE, get_user_msgid("TeamInfo"), _, player)
  259. write_byte(player)
  260. write_string(team)
  261. message_end()
  262. }
  263. public elkuldes(player, Temp[])
  264. {
  265.  
  266. message_begin( MSG_ONE, get_user_msgid( "SayText" ), _, player)
  267. write_byte( player )
  268. write_string( Temp )
  269. message_end()
  270.  
  271. }
  272.  
  273. public fw_player_killed(victim, attacker, shouldgib)
  274. {
  275. if(!is_user_connected(attacker) || !is_user_connected(victim) || attacker == victim)
  276. return PLUGIN_CONTINUE;
  277.  
  278. if(get_pdata_int(victim, 75) == HIT_HEAD)
  279. {
  280. pontok[attacker] += get_pcvar_num(killhsp)
  281. }
  282. else
  283. {
  284. pontok[attacker] += get_pcvar_num(killp)
  285. }
  286. return PLUGIN_CONTINUE
  287. }
  288. public fw_player_damage(victim, inflictor, attacker, Float:damage, damage_type)
  289. {
  290. if(activ_onehit[attacker])
  291. {
  292. SetHamParamFloat(4, float(get_user_health(victim)+1))
  293. }
  294. if(activ_halhatatlan[victim])
  295. {
  296. return HAM_SUPERCEDE
  297. }
  298. return HAM_IGNORED
  299. }
  300. public fw_player_spawn(id)
  301. {
  302. activ_halhatatlan[id] = false
  303. activ_onehit[id] = false
  304. activ_sebesseg[id] = false
  305. }
  306. public fw_player_spawn_post(id)
  307. {
  308. if(activ_lathatatlan[id])
  309. {
  310. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 255)
  311. activ_lathatatlan[id] = false
  312. }
  313. }
  314. public Event_Change_Weapon(id)
  315. {
  316. if(activ_sebesseg[id])
  317. {
  318. set_user_maxspeed(id, DROG_SEBESSEG)
  319. }
  320. return PLUGIN_CONTINUE
  321. }
  322. public Shop(id)//IGEN EZ ITT A MENU
  323. {
  324. static Item[64]
  325.  
  326. formatex(Item, charsmax(Item),"\r.:[R]3\w[L][O]\yAD]:. \rDeathrun Bolt:^n\ySzinted:\r%s \w| \yKell még:\r%d \w| \yPontjaid:\r%d",rangok[szint[id]],szamok[szint[id]]-olesek[id],pontok[id] )
  327. new Menu = menu_create(Item, "Shoph")
  328.  
  329. new szTempid[10]
  330.  
  331. for(new i = 1; i<sizeof(shop_item_names); i++)
  332. {
  333. num_to_str(i, szTempid, 9)
  334. formatex(Item, charsmax(Item),shop_item_names[i], get_pcvar_num(cvar_bolt[shopitems:(i-1)]))
  335. menu_additem(Menu, Item, szTempid)
  336. }
  337. menu_setprop(Menu, MPROP_EXIT, MEXIT_ALL)
  338. menu_display(id, Menu)
  339.  
  340. return PLUGIN_HANDLED
  341. }
  342. public Shoph(id, menu, item)
  343. {
  344. if( item == MENU_EXIT )
  345. {
  346. menu_destroy(menu)
  347. return PLUGIN_HANDLED
  348. }
  349. new data[6], iName[64]
  350. new access, callback
  351. menu_item_getinfo(menu, item, access, data,5, iName, 63, callback)
  352.  
  353. new key = str_to_num(data)
  354. new elo = is_user_alive(id)
  355. new ar[_:shopitems+1]
  356. for(new i=1; i<_:shopitems+1; i++)
  357. {
  358. ar[i] = get_pcvar_num(cvar_bolt[shopitems:(i-1)])
  359. }
  360.  
  361. switch(key)
  362. {
  363. case 1:
  364. {
  365. if (pontok[id] >= ar[key] && elo)
  366. {
  367. pontok[id] -= ar[key]
  368. give_item(id, "weapon_flashbang")
  369. give_item(id, "weapon_hegrenade")
  370. give_item(id, "weapon_smokegrenade")
  371. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Gratulálunk, Sikeresen megkaptad a ^4gránátokat!")
  372. }
  373. else
  374. {
  375. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Sajnos, nincs elég ^4pontod")
  376. }
  377. }
  378. case 2:
  379. {
  380. if (pontok[id] >= ar[key] && elo)
  381. {
  382. pontok[id] -= ar[key]
  383. set_user_maxspeed(id, DROG_SEBESSEG)
  384. activ_sebesseg[id] = true
  385. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1A ^4sebességed ^1gyorsitva lett!")
  386. }
  387. else
  388. {
  389. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Sajnos, nincs elég ^4pontod")
  390. }
  391. }
  392. case 3:
  393. {
  394. if (pontok[id] >= ar[key] && !elo)
  395. {
  396. pontok[id] -= ar[key]
  397. ExecuteHamB(Ham_CS_RoundRespawn, id)
  398. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Gratulálunk, Sikeresen ^4Újraéledtél!")
  399. }
  400. else if(elo)
  401. {
  402. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^4Elők ^1nem használhatják!")
  403. }
  404. else
  405. {
  406. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Sajnos, nincs elég ^4pontod")
  407. }
  408. }
  409. case 4:
  410. {
  411. if (pontok[id] >= ar[key] && elo)
  412. {
  413. pontok[id] -= ar[key]
  414. set_user_health(id, get_user_health(id)+25)
  415. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Gratulálunk, Sikeresen megkaptad az ^4életet!")
  416. }
  417. else
  418. {
  419. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Sajnos, nincs elég ^4pontod")
  420. }
  421. }
  422. case 5:
  423. {
  424. if (pontok[id] >= ar[key] && elo)
  425. {
  426. pontok[id] -= ar[key];
  427. give_item(id, "weapon_m4a1");
  428. cs_set_user_bpammo(id, CSW_M4A1, 30);
  429. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Gratulálunk, Sikeresen megkaptad az ^4M4A1-t!")
  430. }
  431. else
  432. {
  433. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Sajnos, nincs elég ^4pontod")
  434. }
  435. }
  436. case 6:
  437. {
  438. if (pontok[id] >= ar[key] && elo)
  439. {
  440. pontok[id] -= ar[key]
  441. give_item(id, "weapon_ak47");
  442. cs_set_user_bpammo(id, CSW_AK47, 30);
  443. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Gratulálunk, Sikeresen megkaptad az ^4AK47-t!")
  444. }
  445. else
  446. {
  447. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Sajnos, nincs elég ^4pontod")
  448. }
  449. }
  450. }
  451. menu_destroy(menu)
  452. return PLUGIN_HANDLED
  453. }
  454.  
  455. public mentes(id)
  456. {
  457. new name[32]
  458. get_user_name(id, name, 31)
  459. new vaultkey[64],vaultdata[256]
  460.  
  461. format(vaultkey,63,"%s-allin", name)
  462. format(vaultdata,255,"%i#%i#%i",olesek[id],szint[id], pontok[id])
  463.  
  464. nvault_set(g_vault,vaultkey,vaultdata)
  465. return PLUGIN_CONTINUE
  466. }
  467. public betoltes(id)
  468. {
  469. new name[32]
  470. get_user_name(id, name, 31)
  471. new vaultkey[64],vaultdata[256]
  472.  
  473. format(vaultkey,63,"%s-allin", name)
  474. format(vaultdata,255,"%i#%i#%i",olesek[id],szint[id], pontok[id])
  475.  
  476. nvault_get(g_vault,vaultkey,vaultdata,255)
  477. replace_all(vaultdata, 255, "#", " ")
  478. new oles[32], level[32], pt[32]
  479. parse(vaultdata, oles, 31, level, 31, pt, 31)
  480. olesek[id] = str_to_num(oles)
  481. szint[id] = str_to_num(level)
  482. pontok[id] = str_to_num(pt)
  483. return PLUGIN_CONTINUE
  484. }
  485. public client_disconnect(id)
  486. {
  487. mentes(id);
  488. remove_task(id);
  489. pontok[id] = 0;
  490. activ_sebesseg[id] = false
  491. }
  492.  
  493. public client_connect(id)
  494. {
  495. get_user_name(id, name[id], 31)
  496. betoltes(id);
  497. set_task(300.0, "ajandek_1",id)
  498. set_task(900.0, "ajandek_2",id)
  499. set_task(1800.0, "ajandek_3",id)
  500. }
  501. public adas(id)
  502. {
  503. if (get_user_flags(id) & ADMIN_KICK)
  504. {
  505. new menu = menu_create("\r.:[R]3\w[L][O]\yAD]:. \wKinek akarsz pontot adni?", "menu_handler")
  506. new players[32], pnum, tempid
  507. new szName[32], szTempid[10]
  508. get_players(players, pnum)
  509. for( new i; i<pnum; i++ )
  510. {
  511. tempid = players[i];
  512. get_user_name(tempid, szName, charsmax(szName))
  513. num_to_str(tempid, szTempid, charsmax(szTempid))
  514. menu_additem(menu, szName, szTempid, 0)
  515.  
  516. }
  517. menu_display(id, menu, 0)
  518. }
  519. else
  520. {
  521. ColorChat(id, RED, "Sajnos nincs jogod hasznalni ezt a parancsot!")
  522.  
  523. }
  524. }
  525. public menu_handler(id, menu, item)
  526. {
  527. if( item == MENU_EXIT )
  528. {
  529. menu_destroy(menu);
  530. return PLUGIN_HANDLED;
  531. }
  532.  
  533. new data[6], szName[64];
  534. new access, callback;
  535. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  536.  
  537. new tempid = str_to_num(data);
  538.  
  539. if( is_user_alive(tempid) )
  540. {
  541. pontok[tempid] += 10
  542. }
  543. client_cmd(id,"pont_adas")
  544. menu_destroy(menu);
  545. return PLUGIN_HANDLED;
  546. }
  547. public ajandek_1(id)
  548. {
  549. new penz = get_pcvar_num(ajandek1);
  550. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^3%d ^4pont ^1jár, mert itt vagy mar 5 perce!", penz)
  551. pontok[id] += penz;
  552. }
  553. public ajandek_2(id)
  554. {
  555. new penz = get_pcvar_num(ajandek2);
  556. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^3%d ^4pont ^1jár, mert itt vagy mar 10 perce!", penz)
  557. pontok[id] += penz;
  558. }
  559. public ajandek_3(id)
  560. {
  561. new penz = get_pcvar_num(ajandek3);
  562. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^3%d ^4pont ^1jár, mert itt vagy mar 30 perce!", penz)
  563. pontok[id] += penz;
  564. }

_________________
Kép


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Pontrendszer.
HozzászólásElküldve:2014.09.14. 16:35 
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
Valaki megmondja, hogy tudok almenüket hozzáadni?

_________________
Kép


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Pontrendszer.
HozzászólásElküldve:2014.09.15. 06:09 
Offline
A Scripter

Csatlakozott:2013.11.19. 19:08
Hozzászólások:827
Megköszönt másnak: 8 alkalommal
Megköszönték neki: 315 alkalommal
V!rusHD írta:
Valaki javítaná ezt a Plugint?:#include <amxmodx>
SMA Forráskód: [ Mindet kijelol ]
  1. #include <amxmisc>
  2. #include <cstrike>
  3. #include <fun>
  4. #include <fakemeta>
  5. #include <hamsandwich>
  6. #include <nvault>
  7. #include <colorchat>
  8.  
  9. #define PLUGIN "Pontrendszer"
  10. #define VERSION "1.0"
  11. #define AUTHOR "V!rusHD"
  12.  
  13. #define DROG_SEBESSEG 800.0
  14.  
  15. new message[192]
  16. new nev[32]
  17. new Temp[192]
  18. static color[10]
  19. new g_vault
  20. new olesek[33]
  21. new szint[33]
  22. new pontok[33]
  23. new name[33][32]
  24. new killp, killhsp
  25. new ajandek1, ajandek2, ajandek3
  26. new SyncHudObj
  27. enum shopitems
  28. {
  29. KESEK,
  30. USPK,
  31. GRANATPACK,
  32. SEBESSEG,
  33. UJRAELEDES,
  34. HOHP,
  35. M4A1,
  36. AK47
  37. };
  38. new cvar_bolt[shopitems]
  39.  
  40. new bool:activ_sebesseg[33]
  41. new bool:activ_lathatatlan[33]
  42. new bool:activ_onehit[33]
  43. new bool:activ_halhatatlan[33]
  44.  
  45. #define MAX_SHOP_ITEM 9
  46. new const shop_item_names[MAX_SHOP_ITEM+1][] =
  47. {
  48. "",
  49. "\wKések",
  50. "\wUSP-k",
  51. "\wNagyobb Sebesség \r|%d| Pont",
  52. "\wGránát Pack \y(HE,FE,SM) \r|%d| Pont",
  53. "\wNagyobb Sebesség \r|%d| Pont",
  54. "\wÚjraéledés \y(Halottak használhatják!) \r|%d| Pont",
  55. "\w+25 HP \r|%d| Pont",
  56. "\wM4A1 \r|%d| Pont",
  57. "\wAK47 \r|%d| Pont"
  58. };
  59. #define ASD 13
  60.  
  61. //Ha az ASD értéke 15 akkor a szamoknal 15 szám a rangoknál 16 szöveg
  62.  
  63. new const szamok[ASD] = {
  64. 2,
  65. 4,
  66. 6,
  67. 10,
  68. 15,
  69. 20,
  70. 26,
  71. 33,
  72. 39,
  73. 47,
  74. 67,
  75. 79,
  76. 100
  77.  
  78. }
  79.  
  80. new const rangok[ASD+1][] = {
  81. "Nokedli",
  82. "Bot",
  83. "Kezdő",
  84. "HaladĂł",
  85. "HĂłember",
  86. "Ă–rult",
  87. "LoL",
  88. "Aimos",
  89. "Mester",
  90. "NagyMester",
  91. "Predátor",
  92. "LegenD",
  93. "FélIsten",
  94. "Isten"
  95. }
  96. public plugin_init() {
  97.  
  98. register_plugin(PLUGIN, VERSION, AUTHOR)
  99.  
  100. killp = register_cvar("pont_kill", "4")
  101. killhsp = register_cvar("pont_killhs", "8")
  102.  
  103. ajandek1 = register_cvar("pont_ajandek1", "5")
  104. ajandek2 = register_cvar("pont_ajandek2", "10")
  105. ajandek3 = register_cvar("pont_ajandek3", "30")
  106.  
  107. register_clcmd("say", "sayhook")
  108. register_clcmd("say_team", "tshook")
  109. register_clcmd("team_say /adas", "adas")
  110. register_clcmd("say /adas", "adas")
  111. register_clcmd("pont_adas", "adas")
  112.  
  113. register_clcmd("team_say /shop", "Shop")
  114. register_clcmd("say /shop", "Shop")
  115. register_clcmd("team_say /bolt", "Shop")
  116. register_clcmd("say /bolt", "Shop")
  117.  
  118. cvar_bolt[KESEK] = register_cvar("bolt_1", "0")
  119. cvar_bolt[USPK] = register_cvar("bolt_2", "0")
  120. cvar_bolt[GRANATPACK] = register_cvar("bolt_3", "10")
  121. cvar_bolt[SEBESSEG] = register_cvar("bolt_4", "5")
  122. cvar_bolt[UJRAELEDES] = register_cvar("bolt_5", "10")
  123. cvar_bolt[HOHP] = register_cvar("bolt_6", "15")
  124. cvar_bolt[M4A1] = register_cvar("bolt_7", "15")
  125. cvar_bolt[AK47] = register_cvar("bolt_8", "15")
  126.  
  127. g_vault = nvault_open("PontRendszer");
  128. g_vault = nvault_open("namerang")
  129.  
  130. RegisterHam(Ham_Killed, "player", "fw_player_killed", 1)
  131. RegisterHam(Ham_TakeDamage, "player", "fw_player_damage", 0)
  132. RegisterHam(Ham_Spawn, "player", "fw_player_spawn", 0)
  133. RegisterHam(Ham_Spawn, "player", "fw_player_spawn_post", 1)
  134. register_event("CurWeapon", "Event_Change_Weapon", "be", "1=1")
  135. register_event("DeathMsg", "halal", "a")
  136. SyncHudObj = CreateHudSyncObj()
  137. new itemszam = (_:shopitems)
  138. if(MAX_SHOP_ITEM != itemszam)
  139. {
  140. set_fail_state("Valamit elrontottal. A shopitems tombben es a shop_item_names tombben nem ugyanannyi elem van")
  141. }
  142. }
  143. public sayhook(id)
  144. {
  145.  
  146. read_args (message, 191)
  147. remove_quotes (message)
  148. if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, ""))
  149. {
  150. return PLUGIN_CONTINUE
  151. }
  152. get_user_name(id, nev, 31)
  153.  
  154. if(is_user_admin(id))
  155. {
  156. if(is_user_alive(id)) {
  157. get_user_team(id, color, 9)
  158. formatex(Temp, 191, "^x04%s ^x03%s^x04: %s", rangok[szint[id]], nev, message)
  159.  
  160. }
  161. else {
  162. get_user_team(id, color, 9)
  163. formatex(Temp, 191, "^x04*Halott* %s ^x03%s^x04: %s", rangok[szint[id]], nev, message)
  164. }
  165. }else{
  166. if(is_user_alive(id)) {
  167. get_user_team(id, color, 9)
  168. formatex(Temp, 191, "^x04%s ^x03%s^x01: %s", rangok[szint[id]], nev, message)
  169.  
  170. }
  171. else {
  172. get_user_team(id, color, 9)
  173. formatex(Temp, 191, "^x04*Halott* %s ^x03%s^x01: %s", rangok[szint[id]], nev, message)
  174. }
  175. }
  176. sendmessage(color)
  177. return PLUGIN_HANDLED
  178. }
  179. public tshook(id)
  180. {
  181. read_args (message, 191)
  182. remove_quotes (message)
  183. if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, ""))
  184. {
  185. return PLUGIN_CONTINUE
  186. }
  187. get_user_name(id, nev, 31)
  188. new playerTeam = get_user_team(id)
  189. new playerTeamName[19]
  190. switch (playerTeam)
  191. {
  192. case 1: {
  193. copy (playerTeamName, 11, "*Terrorista*")
  194.  
  195. }
  196. case 2: {
  197. copy (playerTeamName, 18, "*Anti-Terrorista*")
  198.  
  199. }
  200. default:
  201. copy (playerTeamName, 9, "*Néző*")
  202. }
  203. if(is_user_admin(id))
  204. {
  205. if(is_user_alive(id))
  206. {
  207. get_user_team(id, color, 9)
  208. formatex(Temp, 191, "^x03(%s) ^x04%s ^x03%s^x04: %s",playerTeamName, rangok[szint[id]], nev, message)
  209.  
  210. }
  211. else
  212. {
  213. get_user_team(id, color, 9)
  214. formatex(Temp, 191, "^x04*Halott* ^x03(%s) ^x04%s ^x03%s^x04: %s",playerTeamName, rangok[szint[id]], nev, message)
  215. }
  216. }else{
  217. if(is_user_alive(id))
  218. {
  219. get_user_team(id, color, 9)
  220. formatex(Temp, 191, "^x03(%s) ^x04%s ^x03%s^x01: %s",playerTeamName, rangok[szint[id]], nev, message)
  221.  
  222. }
  223. else
  224. {
  225. get_user_team(id, color, 9)
  226. formatex(Temp, 191, "^x04*Halott* ^x03(%s) ^x04%s ^x03%s^x01: %s",playerTeamName, rangok[szint[id]], nev, message)
  227. }
  228. }
  229. sendtmessage(color, playerTeam)
  230. return PLUGIN_HANDLED
  231. }
  232. public sendmessage(color[])
  233. {
  234. new teamName[10]
  235. for(new player = 1; player < get_maxplayers(); player++)
  236. {
  237. get_user_team (player, teamName, 9)
  238. teamf (player, color)
  239. elkuldes(player, Temp)
  240. teamf(player, teamName)
  241. }
  242. }
  243. public sendtmessage(color[], playerTeam)
  244. {
  245. new teamName[10]
  246. for (new player = 1; player < get_maxplayers(); player++)
  247. {
  248. if(get_user_team(player) == playerTeam)
  249. {
  250. get_user_team (player, teamName, 9)
  251. elkuldes(player, Temp)
  252. teamf (player, teamName)
  253. teamf (player, color)
  254. }
  255. }
  256. }
  257. public teamf(player, team[])
  258. {
  259. message_begin(MSG_ONE, get_user_msgid("TeamInfo"), _, player)
  260. write_byte(player)
  261. write_string(team)
  262. message_end()
  263. }
  264. public elkuldes(player, Temp[])
  265. {
  266.  
  267. message_begin( MSG_ONE, get_user_msgid( "SayText" ), _, player)
  268. write_byte( player )
  269. write_string( Temp )
  270. message_end()
  271.  
  272. }
  273.  
  274. public fw_player_killed(victim, attacker, shouldgib)
  275. {
  276. if(!is_user_connected(attacker) || !is_user_connected(victim) || attacker == victim)
  277. return PLUGIN_CONTINUE;
  278.  
  279. if(get_pdata_int(victim, 75) == HIT_HEAD)
  280. {
  281. pontok[attacker] += get_pcvar_num(killhsp)
  282. }
  283. else
  284. {
  285. pontok[attacker] += get_pcvar_num(killp)
  286. }
  287. return PLUGIN_CONTINUE
  288. }
  289. public fw_player_damage(victim, inflictor, attacker, Float:damage, damage_type)
  290. {
  291. if(activ_onehit[attacker])
  292. {
  293. SetHamParamFloat(4, float(get_user_health(victim)+1))
  294. }
  295. if(activ_halhatatlan[victim])
  296. {
  297. return HAM_SUPERCEDE
  298. }
  299. return HAM_IGNORED
  300. }
  301. public fw_player_spawn(id)
  302. {
  303. activ_halhatatlan[id] = false
  304. activ_onehit[id] = false
  305. activ_sebesseg[id] = false
  306. }
  307. public fw_player_spawn_post(id)
  308. {
  309. if(activ_lathatatlan[id])
  310. {
  311. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 255)
  312. activ_lathatatlan[id] = false
  313. }
  314. }
  315. public Event_Change_Weapon(id)
  316. {
  317. if(activ_sebesseg[id])
  318. {
  319. set_user_maxspeed(id, DROG_SEBESSEG)
  320. }
  321. return PLUGIN_CONTINUE
  322. }
  323. public Shop(id)//IGEN EZ ITT A MENU
  324. {
  325. static Item[64]
  326.  
  327. formatex(Item, charsmax(Item),"\r.:[R]3\w[L][O]\yAD]:. \rDeathrun Bolt:^n\ySzinted:\r%s \w| \yKell még:\r%d \w| \yPontjaid:\r%d",rangok[szint[id]],szamok[szint[id]]-olesek[id],pontok[tempid] )
  328. new Menu = menu_create(Item, "Shoph")
  329.  
  330. new szTempid[10]
  331.  
  332. for(new i = 1; i<sizeof(shop_item_names); i++)
  333. {
  334. num_to_str(i, szTempid, 9)
  335. formatex(Item, charsmax(Item),shop_item_names[i], get_pcvar_num(cvar_bolt[shopitems:(i-1)]))
  336. menu_additem(Menu, Item, szTempid)
  337. }
  338. menu_setprop(Menu, MPROP_EXIT, MEXIT_ALL)
  339. menu_display(id, Menu)
  340.  
  341. return PLUGIN_HANDLED
  342. }
  343. public Shoph(id, menu, item)
  344. {
  345. if( item == MENU_EXIT )
  346. {
  347. menu_destroy(menu)
  348. return PLUGIN_HANDLED
  349. }
  350. new data[6], iName[64]
  351. new access, callback
  352. menu_item_getinfo(menu, item, access, data,5, iName, 63, callback)
  353.  
  354. new key = str_to_num(data)
  355. new elo = is_user_alive(id)
  356. new ar[_:shopitems+1]
  357. for(new i=1; i<_:shopitems+1; i++)
  358. {
  359. ar[i] = get_pcvar_num(cvar_bolt[shopitems:(i-1)])
  360. }
  361.  
  362. switch(key)
  363. {
  364. case 1:
  365. {
  366. if (pontok[id] >= ar[key] && elo)
  367. {
  368. pontok[id] -= ar[key]
  369. give_item(id, "weapon_flashbang")
  370. give_item(id, "weapon_hegrenade")
  371. give_item(id, "weapon_smokegrenade")
  372. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Gratulálunk, Sikeresen megkaptad a ^4gránátokat!")
  373. }
  374. else
  375. {
  376. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Sajnos, nincs elég ^4pontod")
  377. }
  378. }
  379. case 2:
  380. {
  381. if (pontok[id] >= ar[key] && elo)
  382. {
  383. pontok[id] -= ar[key]
  384. set_user_maxspeed(id, DROG_SEBESSEG)
  385. activ_sebesseg[id] = true
  386. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1A ^4sebességed ^1gyorsitva lett!")
  387. }
  388. else
  389. {
  390. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Sajnos, nincs elég ^4pontod")
  391. }
  392. }
  393. case 3:
  394. {
  395. if (pontok[id] >= ar[key] && !elo)
  396. {
  397. pontok[id] -= ar[key]
  398. ExecuteHamB(Ham_CS_RoundRespawn, id)
  399. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Gratulálunk, Sikeresen ^4Újraéledtél!")
  400. }
  401. else if(elo)
  402. {
  403. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^4Elők ^1nem használhatják!")
  404. }
  405. else
  406. {
  407. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Sajnos, nincs elég ^4pontod")
  408. }
  409. }
  410. case 4:
  411. {
  412. if (pontok[id] >= ar[key] && elo)
  413. {
  414. pontok[id] -= ar[key]
  415. set_user_health(id, get_user_health(id)+25)
  416. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Gratulálunk, Sikeresen megkaptad az ^4életet!")
  417. }
  418. else
  419. {
  420. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Sajnos, nincs elég ^4pontod")
  421. }
  422. }
  423. case 5:
  424. {
  425. if (pontok[id] >= ar[key] && elo)
  426. {
  427. pontok[id] -= ar[key];
  428. give_item(id, "weapon_m4a1");
  429. cs_set_user_bpammo(id, CSW_M4A1, 30);
  430. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Gratulálunk, Sikeresen megkaptad az ^4M4A1-t!")
  431. }
  432. else
  433. {
  434. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Sajnos, nincs elég ^4pontod")
  435. }
  436. }
  437. case 6:
  438. {
  439. if (pontok[id] >= ar[key] && elo)
  440. {
  441. pontok[id] -= ar[key]
  442. give_item(id, "weapon_ak47");
  443. cs_set_user_bpammo(id, CSW_AK47, 30);
  444. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Gratulálunk, Sikeresen megkaptad az ^4AK47-t!")
  445. }
  446. else
  447. {
  448. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^1Sajnos, nincs elég ^4pontod")
  449. }
  450. }
  451. }
  452. menu_destroy(menu)
  453. return PLUGIN_HANDLED
  454. }
  455.  
  456. public mentes(id)
  457. {
  458. new name[32]
  459. get_user_name(id, name, 31)
  460. new vaultkey[64],vaultdata[256]
  461.  
  462. format(vaultkey,63,"%s-rang", name)
  463. format(vaultdata,255,"%i#%i#",olesek[id],szint[id])
  464. format(vaultkey,63,"%s-PONTOK", name[id])
  465. format(vaultdata,255,"%d", pontok[id])
  466.  
  467. nvault_set(g_vault,vaultkey,vaultdata)
  468. return PLUGIN_CONTINUE
  469. }
  470. public betoltes(id)
  471. {
  472. new name[32]
  473. get_user_name(id, name, 31)
  474. new vaultkey[64],vaultdata[256]
  475.  
  476. format(vaultkey,63,"%s-rang", name)
  477. format(vaultdata,255,"%i#%i#",olesek[id],szint[id])
  478. format(vaultkey,63,"%s-PONTOK", name[id])
  479.  
  480. nvault_get(g_vault,vaultkey,vaultdata,255)
  481. pontok[id] = str_to_num(vaultdata)
  482. replace_all(vaultdata, 255, "#", " ")
  483. new oles[32], level[32]
  484. parse(vaultdata, oles, 31, level, 31)
  485. olesek[id] = str_to_num(oles)
  486. szint[id] = str_to_num(level)
  487. return PLUGIN_CONTINUE
  488.  
  489. return PLUGIN_CONTINUE;
  490. }
  491. public client_disconnect(id)
  492. {
  493. mentes(id);
  494. remove_task(id);
  495. pontok[id] = 0;
  496. activ_sebesseg[id] = false
  497. }
  498.  
  499. public client_connect(id)
  500. {
  501. get_user_name(id, name[id], 31)
  502. betoltes(id);
  503. set_task(300.0, "ajandek_1",id)
  504. set_task(900.0, "ajandek_2",id)
  505. set_task(1800.0, "ajandek_3",id)
  506. }
  507. public adas(id)
  508. {
  509. if (get_user_flags(id) & ADMIN_KICK)
  510. {
  511. new menu = menu_create("\r.:[R]3\w[L][O]\yAD]:. \wKinek akarsz pontot adni?", "menu_handler")
  512. new players[32], pnum, tempid
  513. new szName[32], szTempid[10]
  514. get_players(players, pnum)
  515. for( new i; i<pnum; i++ )
  516. {
  517. tempid = players[i];
  518. get_user_name(tempid, szName, charsmax(szName))
  519. num_to_str(tempid, szTempid, charsmax(szTempid))
  520. menu_additem(menu, szName, szTempid, 0)
  521.  
  522. }
  523. menu_display(id, menu, 0)
  524. }
  525. else
  526. {
  527. ColorChat(id, RED, "Sajnos nincs jogod hasznalni ezt a parancsot!")
  528.  
  529. }
  530. }
  531. public menu_handler(id, menu, item)
  532. {
  533. if( item == MENU_EXIT )
  534. {
  535. menu_destroy(menu);
  536. return PLUGIN_HANDLED;
  537. }
  538.  
  539. new data[6], szName[64];
  540. new access, callback;
  541. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  542.  
  543. new tempid = str_to_num(data);
  544.  
  545. if( is_user_alive(tempid) )
  546. {
  547. pontok[tempid] += 10
  548. }
  549. client_cmd(id,"pont_adas")
  550. menu_destroy(menu);
  551. return PLUGIN_HANDLED;
  552. }
  553. public ajandek_1(id)
  554. {
  555. new penz = get_pcvar_num(ajandek1);
  556. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^3%d ^4pont ^1jár, mert itt vagy mar 5 perce!", penz)
  557. pontok[id] += penz;
  558. }
  559. public ajandek_2(id)
  560. {
  561. new penz = get_pcvar_num(ajandek2);
  562. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^3%d ^4pont ^1jár, mert itt vagy mar 10 perce!", penz)
  563. pontok[id] += penz;
  564. }
  565. public ajandek_3(id)
  566. {
  567. new penz = get_pcvar_num(ajandek3);
  568. ColorChat(id, RED, ".:[R]3^1[L][O]^4AD]:. ^3%d ^4pont ^1jár, mert itt vagy mar 30 perce!", penz)
  569. pontok[id] += penz;
  570. }

Anyi kellene, hogy a mostani hibákat javítsák, és még egy ugrásmenüt beleírni ahol 1, vagy 2ugras közzt lehet választani, meghogy a kések és az usp-k menüpontnak legyenek almenüi, és ha megveszünk onnan pl egy usp-et akkor mentse el, hogy megvetük, és lehesen használni...Aki megcsínálja nagyon megköszönöm.

AUTHOR nekem is tetszik..xDDD


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


Ki van itt

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


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

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