hlmod.hu

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



Jelenlévő felhasználók

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

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

Regisztrált felhasználók: nincs regisztrált felhasználó az elmúlt 5 percben aktív felhasználók alapján

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



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

Regisztráció

Kereső


Új téma nyitása  Hozzászólás a témához  [ 1 hozzászólás ] 
Szerző Üzenet
 Hozzászólás témája: plugin átalakítás
HozzászólásElküldve: 2015.02.07. 21:28 
Offline
Tud valamit
Avatar

Csatlakozott: 2015.02.04. 18:53
Hozzászólások: 116
Megköszönt másnak: 12 alkalommal
Megköszönték neki: 3 alkalommal
Szerintetek ebből a pluginból lehetne csinálni olyat, hogy skinelt fegyvereket lehet venni? :) (gyors átalakítást akarok csinálni nem pedig egy olyan plugint, mert csak belezavarodnék, megunnám, felidegesíteném magam rajta és megint jöhet egy új gép ;) )

SMA Forráskód: [ Mindet kijelol ]
  1. SMA Forráskód: [ Mindet kijelol ]#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 DROG_SEBESSEG 800.0
  11.  
  12. new g_vault
  13. new pontok[33]
  14. new name[33][32]
  15. new admin
  16. new killp, killhsp
  17. new ajandek1, ajandek2, ajandek3
  18. new SyncHudObj
  19. enum shopitems
  20. {
  21. GRANATPACK,
  22. SEBESSEG,
  23. UJRAELEDES,
  24. SURFPACK,
  25. LATHATATLAN,
  26. OTSZAZHP,
  27. ONEHIT,
  28. HALHATATLAN,
  29. FULLPENZ,
  30. MAGOZOTE,
  31. MAGOZOCT,
  32. AWP
  33. };
  34. new cvar_bolt[shopitems]
  35.  
  36. new bool:activ_sebesseg[33]
  37. new bool:activ_lathatatlan[33]
  38. new bool:activ_onehit[33]
  39. new bool:activ_halhatatlan[33]
  40.  
  41. #define MAX_SHOP_ITEM 12
  42. new const shop_item_names[MAX_SHOP_ITEM+1][] =
  43. {
  44. "",
  45. "\yGranatok \w(HE,FE,SM) \r|%d| Pont",
  46. "\yNagyobb Sebesseg \r|%d| Pont",
  47. "\yUjraeledes \w(Halottak hasznalhatjak!) \r|%d| Pont",
  48. "\ySurf Felszereles \w(ShotGun,Granatok,Deagle) \r|%d| Pont",
  49. "\yLathatatlansag \w(1 kor) \r|%d| Pont",
  50. "\y+500 HP \r|%d| Pont",
  51. "\y1 hit = 1 kill \w(1 kor) \r|%d| Pont",
  52. "\yHalhatatlansag \w(1 kor) \r|%d| Pont",
  53. "\y16000$ \r|%d| Pont",
  54. "\yTE Magozo \r|%d| Pont",
  55. "\yCT Magozo \r|%d| Pont",
  56. "\yAWP \r|%d| Pont"
  57. };
  58. public plugin_init() {
  59.  
  60. register_plugin(PLUGIN, VERSION, AUTHOR)
  61. set_task(2.9, "hud", 0, _, _, "b")
  62.  
  63. killp = register_cvar("pont_kill", "2")
  64. killhsp = register_cvar("pont_killhs", "3")
  65.  
  66. ajandek1 = register_cvar("pont_ajandek1", "5")
  67. ajandek2 = register_cvar("pont_ajandek2", "10")
  68. ajandek3 = register_cvar("pont_ajandek3", "30")
  69.  
  70. register_clcmd("team_say /adas", "adas")
  71. register_clcmd("say /adas", "adas")
  72. register_clcmd("pont_adas", "adas")
  73.  
  74. register_clcmd("team_say /shop", "Shop")
  75. register_clcmd("say /shop", "Shop")
  76.  
  77. register_clcmd("team_say /bolt", "Shop")
  78. register_clcmd("say /bolt", "Shop")
  79.  
  80. cvar_bolt[GRANATPACK] = register_cvar("bolt_1", "20")
  81. cvar_bolt[SEBESSEG] = register_cvar("bolt_2", "45")
  82. cvar_bolt[UJRAELEDES] = register_cvar("bolt_3", "80")
  83. cvar_bolt[SURFPACK] = register_cvar("bolt_4", "65")
  84. cvar_bolt[LATHATATLAN] = register_cvar("bolt_5", "500")
  85. cvar_bolt[OTSZAZHP] = register_cvar("bolt_6", "360")
  86. cvar_bolt[ONEHIT] = register_cvar("bolt_7", "450")
  87. cvar_bolt[HALHATATLAN] = register_cvar("bolt_8", "750")
  88. cvar_bolt[FULLPENZ] = register_cvar("bolt_9", "50")
  89. cvar_bolt[MAGOZOTE] = register_cvar("bolt_10", "680")
  90. cvar_bolt[MAGOZOCT] = register_cvar("bolt_11", "680")
  91. cvar_bolt[AWP] = register_cvar("bolt_12", "200")
  92.  
  93. g_vault = nvault_open("PontRendszer");
  94.  
  95. RegisterHam(Ham_Killed, "player", "fw_player_killed", 1)
  96. RegisterHam(Ham_TakeDamage, "player", "fw_player_damage", 0)
  97. RegisterHam(Ham_Spawn, "player", "fw_player_spawn", 0)
  98. RegisterHam(Ham_Spawn, "player", "fw_player_spawn_post", 1)
  99. register_event("CurWeapon", "Event_Change_Weapon", "be", "1=1")
  100. SyncHudObj = CreateHudSyncObj()
  101. new itemszam = (_:shopitems)
  102. if(MAX_SHOP_ITEM != itemszam)
  103. {
  104. set_fail_state("Valamit elrontottal. A shopitems tombben es a shop_item_names tombben nem ugyanannyi elem van")
  105. }
  106. }
  107. public fw_player_killed(victim, attacker, shouldgib)
  108. {
  109. if(!is_user_connected(attacker) || !is_user_connected(victim) || attacker == victim)
  110. return PLUGIN_CONTINUE;
  111.  
  112. if(get_pdata_int(victim, 75) == HIT_HEAD)
  113. {
  114. pontok[attacker] += get_pcvar_num(killhsp)
  115. ColorChat(attacker, GREEN,"[Pontrendszer] .: BOOOM HEADSHOOT! :. Ez megert ^x03 %d pontot!", get_pcvar_num(killhsp))
  116. }
  117. else
  118. {
  119. pontok[attacker] += get_pcvar_num(killp)
  120. ColorChat(attacker, GREEN,"[Pontrendszer] ^x03 %d pont az olesert!", get_pcvar_num(killp))
  121. }
  122. return PLUGIN_CONTINUE
  123. }
  124. public fw_player_damage(victim, inflictor, attacker, Float:damage, damage_type)
  125. {
  126. if(activ_onehit[attacker])
  127. {
  128. SetHamParamFloat(4, float(get_user_health(victim)+1))
  129. }
  130. if(activ_halhatatlan[victim])
  131. {
  132. return HAM_SUPERCEDE
  133. }
  134. return HAM_IGNORED
  135. }
  136. public fw_player_spawn(id)
  137. {
  138. activ_halhatatlan[id] = false
  139. activ_onehit[id] = false
  140. activ_sebesseg[id] = false
  141. }
  142. public fw_player_spawn_post(id)
  143. {
  144. if(activ_lathatatlan[id])
  145. {
  146. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 255)
  147. activ_lathatatlan[id] = false
  148. }
  149. }
  150. public Event_Change_Weapon(id)
  151. {
  152. if(activ_sebesseg[id])
  153. {
  154. set_user_maxspeed(id, DROG_SEBESSEG)
  155. }
  156. return PLUGIN_CONTINUE
  157. }
  158. public Shop(id)//IGEN EZ ITT A MENU
  159. {
  160. static Item[64]
  161.  
  162. formatex(Item, charsmax(Item),"\r[Pontrendszer Bolt]" )
  163. new Menu = menu_create(Item, "Shoph")
  164.  
  165. new szTempid[10]
  166.  
  167. for(new i = 1; i<sizeof(shop_item_names); i++)
  168. {
  169. num_to_str(i, szTempid, 9)
  170. formatex(Item, charsmax(Item),shop_item_names[i], get_pcvar_num(cvar_bolt[shopitems:(i-1)]))
  171. menu_additem(Menu, Item, szTempid)
  172. }
  173. menu_setprop(Menu, MPROP_EXIT, MEXIT_ALL)
  174. menu_display(id, Menu)
  175.  
  176. return PLUGIN_HANDLED
  177. }
  178. public Shoph(id, menu, item)
  179. {
  180. if( item == MENU_EXIT )
  181. {
  182. menu_destroy(menu)
  183. return PLUGIN_HANDLED
  184. }
  185. new data[6], iName[64]
  186. new access, callback
  187. menu_item_getinfo(menu, item, access, data,5, iName, 63, callback)
  188.  
  189. new key = str_to_num(data)
  190. new elo = is_user_alive(id)
  191. new ar[_:shopitems+1]
  192. for(new i=1; i<_:shopitems+1; i++)
  193. {
  194. ar[i] = get_pcvar_num(cvar_bolt[shopitems:(i-1)])
  195. }
  196.  
  197. switch(key)
  198. {
  199. case 1:
  200. {
  201. if (pontok[id] >= ar[key] && elo)
  202. {
  203. pontok[id] -= ar[key]
  204. give_item(id, "weapon_flashbang")
  205. give_item(id, "weapon_hegrenade")
  206. give_item(id, "weapon_smokegrenade")
  207. ColorChat(id, GREEN, "[Pontrendszer] Megkaptad a granatokat!")
  208. }
  209. else
  210. {
  211. ColorChat(id, GREEN, "[Pontrendszer] Sajnos,nincs eleg pontod")
  212. }
  213. }
  214. case 2:
  215. {
  216. if (pontok[id] >= ar[key] && elo)
  217. {
  218. pontok[id] -= ar[key]
  219. set_user_maxspeed(id, DROG_SEBESSEG)
  220. activ_sebesseg[id] = true
  221. ColorChat(id, GREEN, "[Pontrendszer] A sebesseged gyorsitva lett!")
  222. }
  223. else
  224. {
  225. ColorChat(id, GREEN, "[Pontrendszer] Sajnos,nincs eleg pontod!")
  226. }
  227. }
  228. case 3:
  229. {
  230. if (pontok[id] >= ar[key] && !elo)
  231. {
  232. pontok[id] -= ar[key]
  233. ExecuteHamB(Ham_CS_RoundRespawn, id)
  234. ColorChat(id, GREEN, "[Pontrendszer] Ujraeledtel!")
  235. }
  236. else if(elo)
  237. {
  238. ColorChat(id, GREEN, "[Pontrendszer] Elok nem hasznalhatjak!")
  239. }
  240. else
  241. {
  242. ColorChat(id, GREEN, "[Pontrendszer] Sajnos,nincs eleg pontod")
  243. }
  244. }
  245. case 4:
  246. {
  247. if (pontok[id] >= ar[key] && elo)
  248. {
  249. pontok[id] -= ar[key];
  250. cs_set_weapon_ammo( give_item( id, "weapon_m3" ), 8 )
  251. give_item(id, "weapon_hegrenade")
  252. give_item(id, "weapon_flashbang")
  253. give_item(id, "weapon_flashbang")
  254.  
  255. give_item(id, "weapon_knife")
  256. give_item(id, "weapon_deagle")
  257. cs_set_user_bpammo(id, CSW_DEAGLE, 35)
  258. ColorChat(id, GREEN, "[Pontrendszer] Megkaptad a Surf Felszerelest!")
  259. }
  260. else
  261. {
  262. ColorChat(id, GREEN, "[Pontrendszer] Sajnos,nincs eleg pontod")
  263. }
  264. }
  265. case 5:
  266. {
  267. if (pontok[id] >= ar[key] && elo)
  268. {
  269. pontok[id] -= ar[key]
  270. activ_lathatatlan[id] = true
  271. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 0)
  272. ColorChat(id, GREEN, "[Pontrendszer] Megkaptad a lathatatlansagot!")
  273. }
  274. else
  275. {
  276. ColorChat(id, GREEN, "[Pontrendszer] Sajnos,nincs eleg pontod")
  277. }
  278. }
  279. case 6:
  280. {
  281. if (pontok[id] >= ar[key] && elo)
  282. {
  283. pontok[id] -= ar[key]
  284. set_user_health(id, get_user_health(id)+500)
  285. ColorChat(id, GREEN, "[Pontrendszer] Megkaptad az eletet!")
  286. }
  287. else
  288. {
  289. ColorChat(id, GREEN, "[Pontrendszer] Sajnos,nincs eleg pontod")
  290. }
  291. }
  292. case 7:
  293. {
  294. if (pontok[id] >= ar[key] && elo)
  295. {
  296. pontok[id] -= ar[key]
  297. activ_onehit[id] = true
  298. ColorChat(id, GREEN, "[Pontrendszer] Megkaptad az egy lovesbol olest!")
  299. }
  300. else
  301. {
  302. ColorChat(id, GREEN, "[Pontrendszer] Sajnos,nincs eleg pontod")
  303. }
  304. }
  305. case 8:
  306. {
  307. if (pontok[id] >= ar[key] && elo)
  308. {
  309. pontok[id] -= ar[key]
  310. activ_halhatatlan[id] = true
  311. ColorChat(id, GREEN, "[Pontrendszer] Megkaptad a halhatatlansagot!")
  312. }
  313. else
  314. {
  315. ColorChat(id, GREEN, "[Pontrendszer] Sajnos,nincs eleg pontod")
  316. }
  317. }
  318. case 9:
  319. {
  320. if (pontok[id] >= ar[key] && elo)
  321. {
  322. pontok[id] -= ar[key]
  323. cs_set_user_money(id, 16000)
  324. ColorChat(id, GREEN, "[Pontrendszer] Megkaptad a penzt!")
  325. }
  326. else
  327. {
  328. ColorChat(id, GREEN, "[Pontrendszer] Sajnos,nincs eleg pontod")
  329. }
  330. }
  331. case 10:
  332. {
  333. if (pontok[id] >= ar[key] && elo)
  334. {
  335. pontok[id] -= ar[key]
  336. give_item(id, "weapon_g3sg1")
  337. cs_set_user_bpammo(id, CSW_G3SG1, 90)
  338. ColorChat(id, GREEN, "[Pontrendszer] Megkaptad a magozot!")
  339. }
  340. else
  341. {
  342. ColorChat(id, GREEN, "[Pontrendszer] Sajnos,nincs eleg pontod")
  343. }
  344. }
  345. case 11:
  346. {
  347. if (pontok[id] >= ar[key] && elo)
  348. {
  349. pontok[id] -= ar[key];
  350. give_item(id, "weapon_sg550")
  351. cs_set_user_bpammo(id, CSW_SG550, 90)
  352. ColorChat(id, GREEN, "[Pontrendszer] Megkaptad a magozot!")
  353. }
  354. else
  355. {
  356. ColorChat(id, GREEN, "[Pontrendszer] Sajnos,nincs eleg pontod")
  357. }
  358. }
  359. case 12:
  360. {
  361. if (pontok[id] >= ar[key] && elo)
  362. {
  363. pontok[id] -= ar[key];
  364. give_item(id, "weapon_awp");
  365. cs_set_user_bpammo(id, CSW_AWP, 30);
  366. ColorChat(id, GREEN, "[Pontrendszer] Megkaptad az awpt!")
  367. }
  368. else
  369. {
  370. ColorChat(id, GREEN, "[Pontrendszer] Sajnos,nincs eleg pontod")
  371. }
  372. }
  373. }
  374. menu_destroy(menu)
  375. return PLUGIN_HANDLED
  376. }
  377.  
  378. public mentes(id)
  379. {
  380. new vaultkey[64],vaultdata[256]
  381.  
  382. format(vaultkey,63,"%s-PONTOK", name[id])
  383. format(vaultdata,255,"%d", pontok[id])
  384.  
  385. nvault_set(g_vault,vaultkey,vaultdata)
  386. return PLUGIN_CONTINUE
  387. }
  388. public betoltes(id)
  389. {
  390. new vaultkey[64],vaultdata[256]
  391.  
  392. format(vaultkey,63,"%s-PONTOK", name[id])
  393.  
  394. nvault_get(g_vault,vaultkey,vaultdata,255)
  395.  
  396. pontok[id] = str_to_num(vaultdata)
  397. return PLUGIN_CONTINUE;
  398. }
  399. public client_disconnect(id)
  400. {
  401. mentes(id);
  402. remove_task(id);
  403. pontok[id] = 0;
  404. activ_halhatatlan[id] = false
  405. activ_lathatatlan[id] = false
  406. activ_onehit[id] = false
  407. activ_sebesseg[id] = false
  408. }
  409.  
  410. public client_connect(id)
  411. {
  412. get_user_name(id, name[id], 31)
  413. betoltes(id);
  414. set_task(300.0, "ajandek_1",id)
  415. set_task(900.0, "ajandek_2",id)
  416. set_task(1800.0, "ajandek_3",id)
  417. }
  418. public adas(id)
  419. {
  420. if (get_user_flags(id) & ADMIN_KICK)
  421. {
  422. new menu = menu_create("\y [Pontrendszer] \rKinek akarsz pontot adni?! \y(10p)", "menu_handler")
  423. new players[32], pnum, tempid
  424. new szName[32], szTempid[10]
  425. get_players(players, pnum)
  426. for( new i; i<pnum; i++ )
  427. {
  428. tempid = players[i];
  429. get_user_name(tempid, szName, charsmax(szName))
  430. num_to_str(tempid, szTempid, charsmax(szTempid))
  431. menu_additem(menu, szName, szTempid, 0)
  432.  
  433. }
  434. menu_display(id, menu, 0)
  435. }
  436. else
  437. {
  438. ColorChat(id, GREEN, "Sajnos nincs jogod hasznalni ezt a parancsot!")
  439.  
  440. }
  441. }
  442. public menu_handler(id, menu, item)
  443. {
  444. if( item == MENU_EXIT )
  445. {
  446. menu_destroy(menu);
  447. return PLUGIN_HANDLED;
  448. }
  449.  
  450. new data[6], szName[64];
  451. new access, callback;
  452. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  453.  
  454. new tempid = str_to_num(data);
  455.  
  456. if( is_user_alive(tempid) )
  457. {
  458. pontok[tempid] += 10
  459. }
  460. client_cmd(id,"pont_adas")
  461. menu_destroy(menu);
  462. return PLUGIN_HANDLED;
  463. }
  464. public ajandek_1(id)
  465. {
  466. new penz = get_pcvar_num(ajandek1);
  467. client_print(id, print_chat, "[Pontrendszer] %d pont jar mert itt vagy mar 5 perce!", penz)
  468. pontok[id] += penz;
  469. }
  470. public ajandek_2(id)
  471. {
  472. new penz = get_pcvar_num(ajandek2);
  473. client_print(id, print_chat, "[Pontrendszer] %d pont jar mert itt vagy mar 10 perce!", penz)
  474. pontok[id] += penz;
  475. }
  476. public ajandek_3(id)
  477. {
  478. new penz = get_pcvar_num(ajandek3);
  479. client_print(id, print_chat, "[Pontrendszer] %d pont jar mert itt vagy mar 30 perce!", penz)
  480. pontok[id] += penz;
  481. }
  482.  
  483. public hud()
  484. {
  485. admin = 0;
  486. new players[32], pnum, tempid
  487. get_players(players, pnum, "c")
  488.  
  489. for( new i; i<pnum; i++ )
  490. {
  491. tempid = players[i]
  492. if(get_user_flags(tempid) & ADMIN_KICK)
  493. {
  494. admin++;
  495. }
  496.  
  497. }
  498. for( new i; i<pnum; i++ )
  499. {
  500. tempid = players[i]
  501. set_hudmessage(0, 170, 255, 0.02, 0.2, 0, 1.0, 3.0);
  502. ShowSyncHudMsg(tempid, SyncHudObj, "[Pont: %d]^n[Jelenlevo Adminok: %d]",pontok[tempid],admin)
  503. }
  504. }

_________________
Ha esetleg segítettem volna,(ami 1 évben 2-3x fog esetleg megtörténni) akkor ne felejtsd el megköszönni. ;)


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


Ki van itt

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