hlmod.hu

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



Jelenlévő felhasználók

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

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

Regisztrált felhasználók: 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  [ 1 hozzászólás ] 
Szerző Üzenet
 Hozzászólás témája: Pontrendszer.
HozzászólásElküldve: 2014.03.07. 12:44 
Offline
Újonc

Csatlakozott: 2014.02.26. 19:29
Hozzászólások: 12
Megköszönt másnak: 5 alkalommal
Megköszönték neki: 1 alkalommal
Sziasztok.
Valaki bele írná ide azt , hogy legyen Dupla sebzés , és a dupla sebzés az 50 pont legyen... Azaz ha pl lábra lövünk , és 10-et sebzünk (ez csak példa) akkor 20-at sebezzen. Duplát sebezzen mindenhol , minden fegyverrel , minden testrészen vagy hogyan mondjam... HS-re is duplát sebezzen.. Pl ha Shotgunnal adok HS-t , akkor 600 helyett (példa) 1200-az sebezzen... (BaseBuilder modhoz kéne)
Az elmagyarázóképességem elég alacsony , vagy hogyan mondjam. xD
Ha valamit nem értett valaki , akkor az írjon egy üzit pls. :D
Jah , és a negyedik helyen be rakva...
Pl így:
Dupla sebzés. | 50 pont |
Vagy ahogy ott a többinél is van , csak a neve az "Dupla sebzés." legyen , és 50 pontba kerüljön. :D
Jah , és a legfontosabbat ki hagytam , hogy ez a dupla sebzés 120 másodpercig legyen aktív , és HUD-ba írja ki bal oldalt középen , hogy mennyi idő van még hátra... Pl.:
Dupla sebzes: 120 masodperc
Dupla sebzes: 51 masodperc
Dupla sebzes 27 masodperc
Vagy valahogy így. :D
Köszönöm előre is. :D

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.1"
  12. #define AUTHOR "crazy"
  13.  
  14. #define DROG_SEBESSEG 800.0
  15.  
  16. new g_vault
  17. new pontok[33]
  18. new name[33][32]
  19. new admin
  20. new killp, killhsp
  21. new ajandek1, ajandek2, ajandek3
  22. new SyncHudObj
  23. enum shopitems
  24. {
  25. GRANATPACK,
  26. SEBESSEG,
  27. SZAZHATVANHP
  28. };
  29. new cvar_bolt[shopitems]
  30.  
  31. new bool:activ_sebesseg[33]
  32. new bool:activ_lathatatlan[33]
  33. new bool:activ_onehit[33]
  34. new bool:activ_halhatatlan[33]
  35.  
  36. #define MAX_SHOP_ITEM 3
  37. new const shop_item_names[MAX_SHOP_ITEM+1][] =
  38. {
  39. "",
  40. "\yGranatok \w(HE,FE,SM) \r|%d| Pont",
  41. "\yNagyobb Sebesseg \r|%d| Pont",
  42. "\y+160 HP \r|%d| Pont"
  43. };
  44. public plugin_init() {
  45.  
  46. register_plugin(PLUGIN, VERSION, AUTHOR)
  47. set_task(2.9, "hud", 0, _, _, "b")
  48.  
  49. killp = register_cvar("pont_kill", "2")
  50. killhsp = register_cvar("pont_killhs", "3")
  51.  
  52. ajandek1 = register_cvar("pont_ajandek1", "5")
  53. ajandek2 = register_cvar("pont_ajandek2", "10")
  54. ajandek3 = register_cvar("pont_ajandek3", "30")
  55.  
  56. register_clcmd("team_say /shop", "Shop")
  57. register_clcmd("say /shop", "Shop")
  58.  
  59. register_clcmd("team_say /bolt", "Shop")
  60. register_clcmd("say /bolt", "Shop")
  61.  
  62. cvar_bolt[GRANATPACK] = register_cvar("bolt_1", "20")
  63. cvar_bolt[SEBESSEG] = register_cvar("bolt_2", "45")
  64. cvar_bolt[SZAZHATVANHP] = register_cvar("bolt_3", "50")
  65.  
  66. g_vault = nvault_open("PontRendszer");
  67.  
  68. RegisterHam(Ham_Killed, "player", "fw_player_killed", 1)
  69. RegisterHam(Ham_TakeDamage, "player", "fw_player_damage", 0)
  70. RegisterHam(Ham_Spawn, "player", "fw_player_spawn", 0)
  71. RegisterHam(Ham_Spawn, "player", "fw_player_spawn_post", 1)
  72. register_event("CurWeapon", "Event_Change_Weapon", "be", "1=1")
  73. SyncHudObj = CreateHudSyncObj()
  74. new itemszam = (_:shopitems)
  75. if(MAX_SHOP_ITEM != itemszam)
  76. {
  77. set_fail_state("Valamit elrontottal. A shopitems tombben es a shop_item_names tombben nem ugyanannyi elem van")
  78. }
  79. }
  80. public fw_player_killed(victim, attacker, shouldgib)
  81. {
  82. if(!is_user_connected(attacker) || !is_user_connected(victim) || attacker == victim)
  83. return PLUGIN_CONTINUE;
  84.  
  85. if(get_pdata_int(victim, 75) == HIT_HEAD)
  86. {
  87. pontok[attacker] += get_pcvar_num(killhsp)
  88. ColorChat(attacker, GREEN,"[Pontrendszer] .: BOOOM HEADSHOOT! :. Ez megert ^x03 %d pontot!", get_pcvar_num(killhsp))
  89. }
  90. else
  91. {
  92. pontok[attacker] += get_pcvar_num(killp)
  93. ColorChat(attacker, GREEN,"[Pontrendszer] ^x03 %d pont az olesert!", get_pcvar_num(killp))
  94. }
  95. return PLUGIN_CONTINUE
  96. }
  97. public fw_player_damage(victim, inflictor, attacker, Float:damage, damage_type)
  98. {
  99. if(activ_onehit[attacker])
  100. {
  101. SetHamParamFloat(4, float(get_user_health(victim)+1))
  102. }
  103. if(activ_halhatatlan[victim])
  104. {
  105. return HAM_SUPERCEDE
  106. }
  107. return HAM_IGNORED
  108. }
  109. public fw_player_spawn(id)
  110. {
  111. activ_halhatatlan[id] = false
  112. activ_onehit[id] = false
  113. activ_sebesseg[id] = false
  114. }
  115. public fw_player_spawn_post(id)
  116. {
  117. if(activ_lathatatlan[id])
  118. {
  119. set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 255)
  120. activ_lathatatlan[id] = false
  121. }
  122. }
  123. public Event_Change_Weapon(id)
  124. {
  125. if(activ_sebesseg[id])
  126. {
  127. set_user_maxspeed(id, DROG_SEBESSEG)
  128. }
  129. return PLUGIN_CONTINUE
  130. }
  131. public Shop(id)//IGEN EZ ITT A MENU
  132. {
  133. static Item[64]
  134.  
  135. formatex(Item, charsmax(Item),"\r[Pontrendszer Bolt]" )
  136. new Menu = menu_create(Item, "Shoph")
  137.  
  138. new szTempid[10]
  139.  
  140. for(new i = 1; i<sizeof(shop_item_names); i++)
  141. {
  142. num_to_str(i, szTempid, 9)
  143. formatex(Item, charsmax(Item),shop_item_names[i], get_pcvar_num(cvar_bolt[shopitems:(i-1)]))
  144. menu_additem(Menu, Item, szTempid)
  145. }
  146. menu_setprop(Menu, MPROP_EXIT, MEXIT_ALL)
  147. menu_display(id, Menu)
  148.  
  149. return PLUGIN_HANDLED
  150. }
  151. public Shoph(id, menu, item)
  152. {
  153. if( item == MENU_EXIT )
  154. {
  155. menu_destroy(menu)
  156. return PLUGIN_HANDLED
  157. }
  158. new data[6], iName[64]
  159. new access, callback
  160. menu_item_getinfo(menu, item, access, data,5, iName, 63, callback)
  161.  
  162. new key = str_to_num(data)
  163. new elo = is_user_alive(id)
  164. new ar[_:shopitems+1]
  165. for(new i=1; i<_:shopitems+1; i++)
  166. {
  167. ar[i] = get_pcvar_num(cvar_bolt[shopitems:(i-1)])
  168. }
  169.  
  170. switch(key)
  171. {
  172. case 1:
  173. {
  174. if (pontok[id] >= ar[key] && elo)
  175. {
  176. pontok[id] -= ar[key]
  177. give_item(id, "weapon_flashbang")
  178. give_item(id, "weapon_hegrenade")
  179. give_item(id, "weapon_smokegrenade")
  180. ColorChat(id, GREEN, "[Pontrendszer] Megkaptad a granatokat!")
  181. }
  182. else
  183. {
  184. ColorChat(id, GREEN, "[Pontrendszer] Sajnos,nincs eleg pontod")
  185. }
  186. }
  187. case 2:
  188. {
  189. if (pontok[id] >= ar[key] && elo)
  190. {
  191. pontok[id] -= ar[key]
  192. set_user_maxspeed(id, DROG_SEBESSEG)
  193. activ_sebesseg[id] = true
  194. ColorChat(id, GREEN, "[Pontrendszer] A sebesseged gyorsitva lett!")
  195. }
  196. else
  197. {
  198. ColorChat(id, GREEN, "[Pontrendszer] Sajnos,nincs eleg pontod!")
  199. }
  200. }
  201. case 3:
  202. {
  203. if (pontok[id] >= ar[key] && elo)
  204. {
  205. pontok[id] -= ar[key]
  206. set_user_health(id, get_user_health(id)+160)
  207. ColorChat(id, GREEN, "[Pontrendszer] Megkaptad az eletet!")
  208. }
  209. else
  210. {
  211. ColorChat(id, GREEN, "[Pontrendszer] Sajnos,nincs eleg pontod")
  212. }
  213. }
  214. }
  215. menu_destroy(menu)
  216. return PLUGIN_HANDLED
  217. }
  218.  
  219. public mentes(id)
  220. {
  221. new vaultkey[64],vaultdata[256]
  222.  
  223. format(vaultkey,63,"%s-PONTOK", name[id])
  224. format(vaultdata,255,"%d", pontok[id])
  225.  
  226. nvault_set(g_vault,vaultkey,vaultdata)
  227. return PLUGIN_CONTINUE
  228. }
  229. public betoltes(id)
  230. {
  231. new vaultkey[64],vaultdata[256]
  232.  
  233. format(vaultkey,63,"%s-PONTOK", name[id])
  234.  
  235. nvault_get(g_vault,vaultkey,vaultdata,255)
  236.  
  237. pontok[id] = str_to_num(vaultdata)
  238. return PLUGIN_CONTINUE;
  239. }
  240. public client_disconnect(id)
  241. {
  242. mentes(id);
  243. remove_task(id);
  244. pontok[id] = 0;
  245. activ_halhatatlan[id] = false
  246. activ_lathatatlan[id] = false
  247. activ_onehit[id] = false
  248. activ_sebesseg[id] = false
  249. }
  250.  
  251. public client_connect(id)
  252. {
  253. get_user_name(id, name[id], 31)
  254. betoltes(id);
  255. set_task(300.0, "ajandek_1",id)
  256. set_task(900.0, "ajandek_2",id)
  257. set_task(1800.0, "ajandek_3",id)
  258. }
  259. public menu_handler(id, menu, item)
  260. {
  261. if( item == MENU_EXIT )
  262. {
  263. menu_destroy(menu);
  264. return PLUGIN_HANDLED;
  265. }
  266.  
  267. new data[6], szName[64];
  268. new access, callback;
  269. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  270.  
  271. new tempid = str_to_num(data);
  272.  
  273. if( is_user_alive(tempid) )
  274. {
  275. pontok[tempid] += 10
  276. }
  277. client_cmd(id,"pont_adas")
  278. menu_destroy(menu);
  279. return PLUGIN_HANDLED;
  280. }
  281. public ajandek_1(id)
  282. {
  283. new penz = get_pcvar_num(ajandek1);
  284. client_print(id, print_chat, "[Pontrendszer] %d pont jar mert itt vagy mar 5 perce!", penz)
  285. pontok[id] += penz;
  286. }
  287. public ajandek_2(id)
  288. {
  289. new penz = get_pcvar_num(ajandek2);
  290. client_print(id, print_chat, "[Pontrendszer] %d pont jar mert itt vagy mar 10 perce!", penz)
  291. pontok[id] += penz;
  292. }
  293. public ajandek_3(id)
  294. {
  295. new penz = get_pcvar_num(ajandek3);
  296. client_print(id, print_chat, "[Pontrendszer] %d pont jar mert itt vagy mar 30 perce!", penz)
  297. pontok[id] += penz;
  298. }
  299.  
  300. public hud()
  301. {
  302. admin = 0;
  303. new players[32], pnum, tempid
  304. get_players(players, pnum, "c")
  305.  
  306. for( new i; i<pnum; i++ )
  307. {
  308. tempid = players[i]
  309. if(get_user_flags(tempid) & ADMIN_KICK)
  310. {
  311. admin++;
  312. }
  313.  
  314. }
  315. for( new i; i<pnum; i++ )
  316. {
  317. tempid = players[i]
  318. set_hudmessage(0, 170, 255, 0.02, 0.2, 0, 1.0, 3.0);
  319. ShowSyncHudMsg(tempid, SyncHudObj, "[Pont: %d]^n[Jelenlevo Adminok: %d]",pontok[tempid],admin)
  320. }
  321. }


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 49 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