hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2024.06.17. 00:42



Jelenlévő felhasználók

Jelenleg 575 felhasználó van jelen :: 2 regisztrált, 0 rejtett és 573 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  [ 6 hozzászólás ] 
Szerző Üzenet
 Hozzászólás témája: Beleirás. köszönet
HozzászólásElküldve: 2015.02.17. 18:08 
Offline
Fanatikus
Avatar

Csatlakozott: 2015.01.24. 21:20
Hozzászólások: 158
Megköszönt másnak: 24 alkalommal
Megköszönték neki: 13 alkalommal
Sziasztok Valaki irja már be ezt az öröklőszert ebbe a pluginba.
Próbálkoztam vele de..nem megy..

EZT:
SMA Forráskód: [ Mindet kijelol ]
  1. /*================================================================================
  2.  
  3. -------------------------------------------
  4. -*- [ZP] Extra Item: Unlimited Clip 1.0 -*-
  5. -------------------------------------------
  6.  
  7. ~~~~~~~~~~~~~~~
  8. - Description -
  9. ~~~~~~~~~~~~~~~
  10.  
  11. This item/upgrade gives players unlimited clip ammo for a single round.
  12.  
  13. ================================================================================*/
  14.  
  15. #include <amxmodx>
  16. #include <fakemeta>
  17. #include <zombieplague>
  18.  
  19. /*================================================================================
  20.  [Plugin Customization]
  21. =================================================================================*/
  22.  
  23. new const g_item_name[] = { "Unlimited Clip (single round)" }
  24. const g_item_cost = 10
  25.  
  26. /*============================================================================*/
  27.  
  28. // CS Offsets
  29. #if cellbits == 32
  30. const OFFSET_CLIPAMMO = 51
  31. #else
  32. const OFFSET_CLIPAMMO = 65
  33. #endif
  34. const OFFSET_LINUX_WEAPONS = 4
  35.  
  36. // Max Clip for weapons
  37. new const MAXCLIP[] = { -1, 13, -1, 10, 1, 7, -1, 30, 30, 1, 30, 20, 25, 30, 35, 25, 12, 20,
  38. 10, 30, 100, 8, 30, 30, 20, 2, 7, 30, 30, -1, 50 }
  39.  
  40. new g_itemid_infammo, g_has_unlimited_clip[33]
  41.  
  42. public plugin_init()
  43. {
  44. register_plugin("[ZP] Extra: Unlimited Clip", "1.0", "MeRcyLeZZ")
  45.  
  46. g_itemid_infammo = zp_register_extra_item(g_item_name, g_item_cost, ZP_TEAM_HUMAN)
  47.  
  48. register_event("HLTV", "event_round_start", "a", "1=0", "2=0")
  49. register_message(get_user_msgid("CurWeapon"), "message_cur_weapon")
  50. }
  51.  
  52. // Player buys our upgrade, set the unlimited ammo flag
  53. public zp_extra_item_selected(player, itemid)
  54. {
  55. if (itemid == g_itemid_infammo)
  56. g_has_unlimited_clip[player] = true
  57. }
  58.  
  59. // Reset flags for all players on newround
  60. public event_round_start()
  61. {
  62. for (new id; id <= 32; id++) g_has_unlimited_clip[id] = false;
  63. }
  64.  
  65. // Unlimited clip code
  66. public message_cur_weapon(msg_id, msg_dest, msg_entity)
  67. {
  68. // Player doesn't have the unlimited clip upgrade
  69. if (!g_has_unlimited_clip[msg_entity])
  70. return;
  71.  
  72. // Player not alive or not an active weapon
  73. if (!is_user_alive(msg_entity) || get_msg_arg_int(1) != 1)
  74. return;
  75.  
  76. static weapon, clip
  77. weapon = get_msg_arg_int(2) // get weapon ID
  78. clip = get_msg_arg_int(3) // get weapon clip
  79.  
  80. // Unlimited Clip Ammo
  81. if (MAXCLIP[weapon] > 2) // skip grenades
  82. {
  83. set_msg_arg_int(3, get_msg_argtype(3), MAXCLIP[weapon]) // HUD should show full clip all the time
  84.  
  85. if (clip < 2) // refill when clip is nearly empty
  86. {
  87. // Get the weapon entity
  88. static wname[32], weapon_ent
  89. get_weaponname(weapon, wname, sizeof wname - 1)
  90. weapon_ent = fm_find_ent_by_owner(-1, wname, msg_entity)
  91.  
  92. // Set max clip on weapon
  93. fm_set_weapon_ammo(weapon_ent, MAXCLIP[weapon])
  94. }
  95. }
  96. }
  97.  
  98. // Find entity by its owner (from fakemeta_util)
  99. stock fm_find_ent_by_owner(entity, const classname[], owner)
  100. {
  101. while ((entity = engfunc(EngFunc_FindEntityByString, entity, "classname", classname)) && pev(entity, pev_owner) != owner) {}
  102.  
  103. return entity;
  104. }
  105.  
  106. // Set Weapon Clip Ammo
  107. stock fm_set_weapon_ammo(entity, amount)
  108. {
  109. set_pdata_int(entity, OFFSET_CLIPAMMO, amount, OFFSET_LINUX_WEAPONS);
  110. }
  111. /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
  112. *{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang3082\\ f0\\ fs16 \n\\ par }
  113. */


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

_________________
Hétszer tíz év egy emberélet - félig elalszod, félig elfecsérled.


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Beleirás. köszönet
HozzászólásElküldve: 2015.02.19. 21:33 
Offline
Őskövület
Avatar

Csatlakozott: 2012.03.22. 18:22
Hozzászólások: 2978
Megköszönt másnak: 115 alkalommal
Megköszönték neki: 368 alkalommal
Remélem jó,teszt nem volt.
A DROG_SEBESSEG alatt találod hogy mennyi kerüljön.
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. #define OROKAR 40
  16.  
  17. new g_vault
  18. new pontok[33]
  19. new name[33][32]
  20. new admin
  21. new killp, killhsp
  22. new ajandek1, ajandek2, ajandek3
  23. new SyncHudObj
  24. new bool:orok[33]=false
  25. #if cellbits == 32
  26. const OFFSET_CLIPAMMO = 51
  27. #else
  28. const OFFSET_CLIPAMMO = 65
  29. #endif
  30. const OFFSET_LINUX_WEAPONS = 4
  31.  
  32. // Max Clip for weapons
  33. new const MAXCLIP[] = { -1, 13, -1, 10, 1, 7, -1, 30, 30, 1, 30, 20, 25, 30, 35, 25, 12, 20,
  34. 10, 30, 100, 8, 30, 30, 20, 2, 7, 30, 30, -1, 50 }
  35.  
  36. enum shopitems
  37. {
  38. GRANATPACK,
  39. SEBESSEG,
  40. UJRAELEDES,
  41. MAGOZOTE,
  42. MAGOZOCT,
  43.  
  44. };
  45. new cvar_bolt[shopitems]
  46.  
  47. new bool:activ_sebesseg[33]
  48.  
  49. #define MAX_SHOP_ITEM 6
  50. new const shop_item_names[MAX_SHOP_ITEM+1][] ={
  51. "",
  52. "\yGranatok \w(HE,FE,SM) \r|%d| Pont",
  53. "\yNagyobb Sebesseg \r|%d| Pont",
  54. "\yUjraeledes \w(Halottak hasznalhatjak!) \r|%d| Pont",
  55. "\yTE Magozo \r|%d| Pont",
  56. "\yCT Magozo \r|%d| Pont",
  57. "\yOrokloszer"
  58. }
  59.  
  60. public plugin_init() {
  61.  
  62. register_plugin(PLUGIN, VERSION, AUTHOR)
  63. set_task(2.9, "hud", 0, _, _, "b")
  64.  
  65. killp = register_cvar("pont_kill", "2")
  66. killhsp = register_cvar("pont_killhs", "3")
  67.  
  68. ajandek1 = register_cvar("pont_ajandek1", "5")
  69. ajandek2 = register_cvar("pont_ajandek2", "10")
  70. ajandek3 = register_cvar("pont_ajandek3", "30")
  71.  
  72. register_clcmd("team_say /adas", "adas")
  73. register_clcmd("say /adas", "adas")
  74. register_clcmd("pont_adas", "adas")
  75.  
  76. register_clcmd("team_say /shop", "Shop")
  77. register_clcmd("say /shop", "Shop")
  78.  
  79. register_clcmd("team_say /bolt", "Shop")
  80. register_clcmd("say /bolt", "Shop")
  81.  
  82. cvar_bolt[GRANATPACK] = register_cvar("bolt_1", "20")
  83. cvar_bolt[SEBESSEG] = register_cvar("bolt_2", "140")
  84. cvar_bolt[UJRAELEDES] = register_cvar("bolt_3", "130")
  85. cvar_bolt[MAGOZOTE] = register_cvar("bolt_4", "100")
  86. cvar_bolt[MAGOZOCT] = register_cvar("bolt_5", "120")
  87.  
  88. g_vault = nvault_open("PontRendszer");
  89.  
  90. RegisterHam(Ham_Killed, "player", "fw_player_killed", 1)
  91. RegisterHam(Ham_TakeDamage, "player", "fw_player_damage", 0)
  92. RegisterHam(Ham_Spawn, "player", "fw_player_spawn", 0)
  93. RegisterHam(Ham_Spawn, "player", "fw_player_spawn_post", 1)
  94. register_event("CurWeapon", "Event_Change_Weapon", "be", "1=1")
  95.  
  96. register_message(get_user_msgid("CurWeapon"), "message_cur_weapon")
  97.  
  98. SyncHudObj = CreateHudSyncObj()
  99. new itemszam = (_:shopitems)
  100. if(MAX_SHOP_ITEM != itemszam)
  101. {
  102. set_fail_state("Valamit elrontottal. A shopitems tombben es a shop_item_names tombben nem ugyanannyi elem van")
  103. }
  104. }
  105. public fw_player_killed(victim, attacker, shouldgib)
  106. {
  107. if(orok[victim]) orok[victim]=false
  108. if(!is_user_connected(attacker) || !is_user_connected(victim) || attacker == victim) return PLUGIN_CONTINUE;
  109.  
  110. if(get_pdata_int(victim, 75) == HIT_HEAD)
  111. {
  112. pontok[attacker] += get_pcvar_num(killhsp)
  113. ColorChat(attacker, GREEN,"[Pontrendszer] .: BOOOM HEADSHOOT! :. Ez megert ^x02 %d pontot!", get_pcvar_num(killhsp))
  114. }
  115. else
  116. {
  117. pontok[attacker] += get_pcvar_num(killp)
  118. ColorChat(attacker, GREEN,"[Pontrendszer] ^x03 %d pont az olesert!", get_pcvar_num(killp))
  119. }
  120. return PLUGIN_CONTINUE
  121. }
  122. public fw_player_damage(victim, inflictor, attacker, Float:damage, damage_type)
  123. {
  124.  
  125.  
  126. }
  127. public fw_player_spawn(id)
  128. {
  129. activ_sebesseg[id] = false
  130. }
  131.  
  132. public Event_Change_Weapon(id)
  133. {
  134. if(activ_sebesseg[id])
  135. {
  136. set_user_maxspeed(id, DROG_SEBESSEG)
  137. }
  138. return PLUGIN_CONTINUE
  139. }
  140. public Shop(id)//IGEN EZ ITT A MENU
  141. {
  142. static Item[64]
  143.  
  144. formatex(Item, charsmax(Item),"\r[Pontrendszer Bolt]" )
  145. new Menu = menu_create(Item, "Shoph")
  146.  
  147. new szTempid[10]
  148.  
  149. for(new i = 1; i<sizeof(shop_item_names); i++)
  150. {
  151. num_to_str(i, szTempid, 9)
  152. formatex(Item, charsmax(Item),shop_item_names[i], get_pcvar_num(cvar_bolt[shopitems:(i-1)]))
  153. menu_additem(Menu, Item, szTempid)
  154. }
  155. menu_setprop(Menu, MPROP_EXIT, MEXIT_ALL)
  156. menu_display(id, Menu)
  157.  
  158. return PLUGIN_HANDLED
  159. }
  160. public Shoph(id, menu, item)
  161. {
  162. if( item == MENU_EXIT )
  163. {
  164. menu_destroy(menu)
  165. return PLUGIN_HANDLED
  166. }
  167. new data[6], iName[64]
  168. new access, callback
  169. menu_item_getinfo(menu, item, access, data,5, iName, 63, callback)
  170.  
  171. new key = str_to_num(data)
  172. new elo = is_user_alive(id)
  173. new ar[_:shopitems+1]
  174. for(new i=1; i<_:shopitems+1; i++)
  175. {
  176. ar[i] = get_pcvar_num(cvar_bolt[shopitems:(i-1)])
  177. }
  178.  
  179. switch(key)
  180. {
  181. case 1:
  182. {
  183. if (pontok[id] >= ar[key] && elo)
  184. {
  185. pontok[id] -= ar[key]
  186. give_item(id, "weapon_flashbang")
  187. give_item(id, "weapon_hegrenade")
  188. give_item(id, "weapon_smokegrenade")
  189. ColorChat(id, GREEN, "[Pontrendszer] Megkaptad a granatokat!")
  190. }
  191. else
  192. {
  193. ColorChat(id, GREEN, "[Pontrendszer] Sajnos,nincs eleg pontod")
  194. }
  195. }
  196. case 2:
  197. {
  198. if (pontok[id] >= ar[key] && elo)
  199. {
  200. pontok[id] -= ar[key]
  201. set_user_maxspeed(id, DROG_SEBESSEG)
  202. activ_sebesseg[id] = true
  203. ColorChat(id, GREEN, "[Pontrendszer] A sebesseged gyorsitva lett!")
  204. }
  205. else
  206. {
  207. ColorChat(id, GREEN, "[Pontrendszer] Sajnos,nincs eleg pontod!")
  208. }
  209. }
  210. case 3:
  211. {
  212. if (pontok[id] >= ar[key] && !elo)
  213. {
  214. pontok[id] -= ar[key]
  215. ExecuteHamB(Ham_CS_RoundRespawn, id)
  216. ColorChat(id, GREEN, "[Pontrendszer] Ujraeledtel!")
  217. }
  218. else if(elo)
  219. {
  220. ColorChat(id, GREEN, "[Pontrendszer] Elok nem hasznalhatjak!")
  221. }
  222. else
  223. {
  224. ColorChat(id, GREEN, "[Pontrendszer] Sajnos,nincs eleg pontod")
  225. }
  226.  
  227.  
  228. }
  229. case 4:
  230. {
  231. if (pontok[id] >= ar[key] && elo)
  232. {
  233. pontok[id] -= ar[key]
  234. give_item(id, "weapon_g3sg1")
  235. cs_set_user_bpammo(id, CSW_G3SG1, 90)
  236. ColorChat(id, GREEN, "[Pontrendszer] Megkaptad a magozot!")
  237. }
  238. else
  239. {
  240. ColorChat(id, GREEN, "[Pontrendszer] Sajnos,nincs eleg pontod")
  241. }
  242. }
  243. case 5:
  244. {
  245. if (pontok[id] >= ar[key] && elo)
  246. {
  247. pontok[id] -= ar[key];
  248. give_item(id, "weapon_sg550")
  249. cs_set_user_bpammo(id, CSW_SG550, 90)
  250. ColorChat(id, GREEN, "[Pontrendszer] Megkaptad a magozot!")
  251. }
  252. else
  253. {
  254. ColorChat(id, GREEN, "[Pontrendszer] Sajnos,nincs eleg pontod")
  255. }
  256.  
  257. }
  258. case 6:
  259. {
  260. if(pontok[id]>=OROKAR && elo)
  261. {
  262. pontok[id]-=OROKAR
  263. orok[id]=true
  264. ColorChat(id,GREEN,"Megvetted az orokloszert!")
  265. }
  266. else
  267. {
  268. ColorChat(id,GREEN,"Nincs eleg pontod!")
  269. }
  270. }
  271. }
  272. menu_destroy(menu)
  273. return PLUGIN_HANDLED
  274. }
  275.  
  276. public mentes(id)
  277. {
  278. new vaultkey[64],vaultdata[256]
  279.  
  280. format(vaultkey,63,"%s-PONTOK", name[id])
  281. format(vaultdata,255,"%d", pontok[id])
  282.  
  283. nvault_set(g_vault,vaultkey,vaultdata)
  284. return PLUGIN_CONTINUE
  285. }
  286. public betoltes(id)
  287. {
  288. new vaultkey[64],vaultdata[256]
  289.  
  290. format(vaultkey,63,"%s-PONTOK", name[id])
  291.  
  292. nvault_get(g_vault,vaultkey,vaultdata,255)
  293.  
  294. pontok[id] = str_to_num(vaultdata)
  295. return PLUGIN_CONTINUE;
  296. }
  297. public client_disconnect(id)
  298. {
  299. mentes(id);
  300. remove_task(id);
  301. pontok[id] = 0;
  302. activ_sebesseg[id] = false
  303. }
  304.  
  305. public client_connect(id)
  306. {
  307. get_user_name(id, name[id], 31)
  308. betoltes(id);
  309. set_task(300.0, "ajandek_1",id)
  310. set_task(900.0, "ajandek_2",id)
  311. set_task(1800.0, "ajandek_3",id)
  312. }
  313. public adas(id)
  314. {
  315. if (get_user_flags(id) & ADMIN_KICK)
  316. {
  317. new menu = menu_create("\y [Pontrendszer] \rKinek akarsz pontot adni?! \y(10p)", "menu_handler")
  318. new players[32], pnum, tempid
  319. new szName[32], szTempid[10]
  320. get_players(players, pnum)
  321. for( new i; i<pnum; i++ )
  322. {
  323. tempid = players[i];
  324. get_user_name(tempid, szName, charsmax(szName))
  325. num_to_str(tempid, szTempid, charsmax(szTempid))
  326. menu_additem(menu, szName, szTempid, 0)
  327.  
  328. }
  329. menu_display(id, menu, 0)
  330. }
  331. else
  332. {
  333. ColorChat(id, GREEN, "Sajnos nincs jogod hasznalni ezt a parancsot!")
  334.  
  335. }
  336. }
  337. public menu_handler(id, menu, item)
  338. {
  339. if( item == MENU_EXIT )
  340. {
  341. menu_destroy(menu);
  342. return PLUGIN_HANDLED;
  343. }
  344.  
  345. new data[6], szName[64];
  346. new access, callback;
  347. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  348.  
  349. new tempid = str_to_num(data);
  350.  
  351. if( is_user_alive(tempid) )
  352. {
  353. pontok[tempid] += 10
  354. }
  355. client_cmd(id,"pont_adas")
  356. menu_destroy(menu);
  357. return PLUGIN_HANDLED;
  358. }
  359. public ajandek_1(id)
  360. {
  361. new penz = get_pcvar_num(ajandek1);
  362. client_print(id, print_chat, "[Pontrendszer] %d pont jar mert itt vagy mar 5 perce!", penz)
  363. pontok[id] += penz;
  364. }
  365. public ajandek_2(id)
  366. {
  367. new penz = get_pcvar_num(ajandek2);
  368. client_print(id, print_chat, "[Pontrendszer] %d pont jar mert itt vagy mar 10 perce!", penz)
  369. pontok[id] += penz;
  370. }
  371. public ajandek_3(id)
  372. {
  373. new penz = get_pcvar_num(ajandek3);
  374. client_print(id, print_chat, "[Pontrendszer] %d pont jar mert itt vagy mar 30 perce!", penz)
  375. pontok[id] += penz;
  376. }
  377.  
  378. public hud()
  379. {
  380. admin = 0;
  381. new players[32], pnum, tempid
  382. get_players(players, pnum, "c")
  383.  
  384. for( new i; i<pnum; i++ )
  385. {
  386. tempid = players[i]
  387. if(get_user_flags(tempid) & ADMIN_KICK)
  388. {
  389. admin++;
  390. }
  391.  
  392. }
  393. for( new i; i<pnum; i++ )
  394. {
  395. tempid = players[i]
  396. set_hudmessage(0, 170, 255, 0.02, 0.2, 0, 1.0, 3.0);
  397. ShowSyncHudMsg(tempid, SyncHudObj, "[Pont: %d]^n[Jelenlevo Adminok: %d]",pontok[tempid],admin)
  398. }
  399. }
  400. public message_cur_weapon(msg_id, msg_dest, msg_entity)
  401. {
  402. // Player doesn't have the unlimited clip upgrade
  403. if (!orok[msg_entity])
  404. return;
  405.  
  406. // Player not alive or not an active weapon
  407. if (!is_user_alive(msg_entity) || get_msg_arg_int(1) != 1)
  408. return;
  409.  
  410. static weapon, clip
  411. weapon = get_msg_arg_int(2) // get weapon ID
  412. clip = get_msg_arg_int(3) // get weapon clip
  413.  
  414. // Unlimited Clip Ammo
  415. if (MAXCLIP[weapon] > 2) // skip grenades
  416. {
  417. set_msg_arg_int(3, get_msg_argtype(3), MAXCLIP[weapon]) // HUD should show full clip all the time
  418.  
  419. if (clip < 2) // refill when clip is nearly empty
  420. {
  421. // Get the weapon entity
  422. static wname[32], weapon_ent
  423. get_weaponname(weapon, wname, sizeof wname - 1)
  424. weapon_ent = fm_find_ent_by_owner(-1, wname, msg_entity)
  425.  
  426. // Set max clip on weapon
  427. fm_set_weapon_ammo(weapon_ent, MAXCLIP[weapon])
  428. }
  429. }
  430. }
  431.  
  432. // Find entity by its owner (from fakemeta_util)
  433. stock fm_find_ent_by_owner(entity, const classname[], owner)
  434. {
  435. while ((entity = engfunc(EngFunc_FindEntityByString, entity, "classname", classname)) && pev(entity, pev_owner) != owner) {}
  436.  
  437. return entity;
  438. }
  439.  
  440. // Set Weapon Clip Ammo
  441. stock fm_set_weapon_ammo(entity, amount)
  442. {
  443. set_pdata_int(entity, OFFSET_CLIPAMMO, amount, OFFSET_LINUX_WEAPONS);
  444. }
  445.  

_________________
Blasenkampfwagen

https://discord.gg/uBYnNnZP
GTA:PURSUIT MTA


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Beleirás. köszönet
HozzászólásElküldve: 2015.02.20. 10:00 
Offline
Fanatikus
Avatar

Csatlakozott: 2015.01.24. 21:20
Hozzászólások: 158
Megköszönt másnak: 24 alkalommal
Megköszönték neki: 13 alkalommal
Koszi szepen most suliba vaagyok ha hazaerek kiprobalom.

_________________
Hétszer tíz év egy emberélet - félig elalszod, félig elfecsérled.


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Beleirás. köszönet
HozzászólásElküldve: 2015.02.20. 13:34 
Offline
Fanatikus
Avatar

Csatlakozott: 2015.01.24. 21:20
Hozzászólások: 158
Megköszönt másnak: 24 alkalommal
Megköszönték neki: 13 alkalommal
Nem ismeri fel ..be se jön./bolt

_________________
Hétszer tíz év egy emberélet - félig elalszod, félig elfecsérled.


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Beleirás. köszönet
HozzászólásElküldve: 2015.02.20. 13:59 
Offline
Fanatikus
Avatar

Csatlakozott: 2015.01.24. 21:20
Hozzászólások: 158
Megköszönt másnak: 24 alkalommal
Megköszönték neki: 13 alkalommal
A pontokat amikor lövök kiirja hogy [Pontrendszer]Kaptál 2 pontot.. de a /bolt vagy /shop nem megy.

_________________
Hétszer tíz év egy emberélet - félig elalszod, félig elfecsérled.


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Beleirás. köszönet
HozzászólásElküldve: 2015.02.21. 19:19 
Offline
Jómunkásember
Avatar

Csatlakozott: 2013.01.15. 19:04
Hozzászólások: 407
Megköszönt másnak: 17 alkalommal
Megköszönték neki: 176 alkalommal
Próbáld:
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. new bool:orok[33]=false
  24. #if cellbits == 32
  25. const OFFSET_CLIPAMMO = 51
  26. #else
  27. const OFFSET_CLIPAMMO = 65
  28. #endif
  29. const OFFSET_LINUX_WEAPONS = 4
  30.  
  31. // Max Clip for weapons
  32. new const MAXCLIP[] = { -1, 13, -1, 10, 1, 7, -1, 30, 30, 1, 30, 20, 25, 30, 35, 25, 12, 20,
  33. 10, 30, 100, 8, 30, 30, 20, 2, 7, 30, 30, -1, 50 }
  34.  
  35. enum shopitems
  36. {
  37. GRANATPACK,
  38. SEBESSEG,
  39. UJRAELEDES,
  40. MAGOZOTE,
  41. MAGOZOCT,
  42. OROKAR
  43.  
  44. };
  45. new cvar_bolt[shopitems]
  46.  
  47. new bool:activ_sebesseg[33]
  48.  
  49. #define MAX_SHOP_ITEM 6
  50. new const shop_item_names[MAX_SHOP_ITEM+1][] ={
  51. "",
  52. "\yGranatok \w(HE,FE,SM) \r|%d| Pont",
  53. "\yNagyobb Sebesseg \r|%d| Pont",
  54. "\yUjraeledes \w(Halottak hasznalhatjak!) \r|%d| Pont",
  55. "\yTE Magozo \r|%d| Pont",
  56. "\yCT Magozo \r|%d| Pont",
  57. "\yOrokloszer"
  58. }
  59.  
  60. public plugin_init() {
  61.  
  62. register_plugin(PLUGIN, VERSION, AUTHOR)
  63. set_task(2.9, "hud", 0, _, _, "b")
  64.  
  65. killp = register_cvar("pont_kill", "2")
  66. killhsp = register_cvar("pont_killhs", "3")
  67.  
  68. ajandek1 = register_cvar("pont_ajandek1", "5")
  69. ajandek2 = register_cvar("pont_ajandek2", "10")
  70. ajandek3 = register_cvar("pont_ajandek3", "30")
  71.  
  72. register_clcmd("team_say /adas", "adas")
  73. register_clcmd("say /adas", "adas")
  74. register_clcmd("pont_adas", "adas")
  75.  
  76. register_clcmd("team_say /shop", "Shop")
  77. register_clcmd("say /shop", "Shop")
  78.  
  79. register_clcmd("team_say /bolt", "Shop")
  80. register_clcmd("say /bolt", "Shop")
  81.  
  82. cvar_bolt[GRANATPACK] = register_cvar("bolt_1", "20")
  83. cvar_bolt[SEBESSEG] = register_cvar("bolt_2", "140")
  84. cvar_bolt[UJRAELEDES] = register_cvar("bolt_3", "130")
  85. cvar_bolt[MAGOZOTE] = register_cvar("bolt_4", "100")
  86. cvar_bolt[MAGOZOCT] = register_cvar("bolt_5", "120")
  87. cvar_bolt[OROKAR] = register_cvar("bolt_6", "40")
  88.  
  89. g_vault = nvault_open("PontRendszer");
  90.  
  91. RegisterHam(Ham_Killed, "player", "fw_player_killed", 1)
  92. RegisterHam(Ham_TakeDamage, "player", "fw_player_damage", 0)
  93. RegisterHam(Ham_Spawn, "player", "fw_player_spawn", 0)
  94. RegisterHam(Ham_Spawn, "player", "fw_player_spawn_post", 1)
  95. register_event("CurWeapon", "Event_Change_Weapon", "be", "1=1")
  96.  
  97. register_message(get_user_msgid("CurWeapon"), "message_cur_weapon")
  98.  
  99. SyncHudObj = CreateHudSyncObj()
  100. new itemszam = (_:shopitems)
  101. if(MAX_SHOP_ITEM != itemszam)
  102. {
  103. set_fail_state("Valamit elrontottal. A shopitems tombben es a shop_item_names tombben nem ugyanannyi elem van")
  104. }
  105. }
  106. public fw_player_killed(victim, attacker, shouldgib)
  107. {
  108. if(orok[victim]) orok[victim]=false
  109. if(!is_user_connected(attacker) || !is_user_connected(victim) || attacker == victim) return PLUGIN_CONTINUE;
  110.  
  111. if(get_pdata_int(victim, 75) == HIT_HEAD)
  112. {
  113. pontok[attacker] += get_pcvar_num(killhsp)
  114. ColorChat(attacker, GREEN,"[Pontrendszer] .: BOOOM HEADSHOOT! :. Ez megert ^x02 %d pontot!", get_pcvar_num(killhsp))
  115. }
  116. else
  117. {
  118. pontok[attacker] += get_pcvar_num(killp)
  119. ColorChat(attacker, GREEN,"[Pontrendszer] ^x03 %d pont az olesert!", get_pcvar_num(killp))
  120. }
  121. return PLUGIN_CONTINUE
  122. }
  123. public fw_player_damage(victim, inflictor, attacker, Float:damage, damage_type)
  124. {
  125.  
  126.  
  127. }
  128. public fw_player_spawn(id)
  129. {
  130. activ_sebesseg[id] = false
  131. }
  132.  
  133. public Event_Change_Weapon(id)
  134. {
  135. if(activ_sebesseg[id])
  136. {
  137. set_user_maxspeed(id, DROG_SEBESSEG)
  138. }
  139. return PLUGIN_CONTINUE
  140. }
  141. public Shop(id)//IGEN EZ ITT A MENU
  142. {
  143. static Item[64]
  144.  
  145. formatex(Item, charsmax(Item),"\r[Pontrendszer Bolt]" )
  146. new Menu = menu_create(Item, "Shoph")
  147.  
  148. new szTempid[10]
  149.  
  150. for(new i = 1; i<sizeof(shop_item_names); i++)
  151. {
  152. num_to_str(i, szTempid, 9)
  153. formatex(Item, charsmax(Item),shop_item_names[i], get_pcvar_num(cvar_bolt[shopitems:(i-1)]))
  154. menu_additem(Menu, Item, szTempid)
  155. }
  156. menu_setprop(Menu, MPROP_EXIT, MEXIT_ALL)
  157. menu_display(id, Menu)
  158.  
  159. return PLUGIN_HANDLED
  160. }
  161. public Shoph(id, menu, item)
  162. {
  163. if( item == MENU_EXIT )
  164. {
  165. menu_destroy(menu)
  166. return PLUGIN_HANDLED
  167. }
  168. new data[6], iName[64]
  169. new access, callback
  170. menu_item_getinfo(menu, item, access, data,5, iName, 63, callback)
  171.  
  172. new key = str_to_num(data)
  173. new elo = is_user_alive(id)
  174. new ar[_:shopitems+1]
  175. for(new i=1; i<_:shopitems+1; i++)
  176. {
  177. ar[i] = get_pcvar_num(cvar_bolt[shopitems:(i-1)])
  178. }
  179.  
  180. switch(key)
  181. {
  182. case 1:
  183. {
  184. if (pontok[id] >= ar[key] && elo)
  185. {
  186. pontok[id] -= ar[key]
  187. give_item(id, "weapon_flashbang")
  188. give_item(id, "weapon_hegrenade")
  189. give_item(id, "weapon_smokegrenade")
  190. ColorChat(id, GREEN, "[Pontrendszer] Megkaptad a granatokat!")
  191. }
  192. else
  193. {
  194. ColorChat(id, GREEN, "[Pontrendszer] Sajnos,nincs eleg pontod")
  195. }
  196. }
  197. case 2:
  198. {
  199. if (pontok[id] >= ar[key] && elo)
  200. {
  201. pontok[id] -= ar[key]
  202. set_user_maxspeed(id, DROG_SEBESSEG)
  203. activ_sebesseg[id] = true
  204. ColorChat(id, GREEN, "[Pontrendszer] A sebesseged gyorsitva lett!")
  205. }
  206. else
  207. {
  208. ColorChat(id, GREEN, "[Pontrendszer] Sajnos,nincs eleg pontod!")
  209. }
  210. }
  211. case 3:
  212. {
  213. if (pontok[id] >= ar[key] && !elo)
  214. {
  215. pontok[id] -= ar[key]
  216. ExecuteHamB(Ham_CS_RoundRespawn, id)
  217. ColorChat(id, GREEN, "[Pontrendszer] Ujraeledtel!")
  218. }
  219. else if(elo)
  220. {
  221. ColorChat(id, GREEN, "[Pontrendszer] Elok nem hasznalhatjak!")
  222. }
  223. else
  224. {
  225. ColorChat(id, GREEN, "[Pontrendszer] Sajnos,nincs eleg pontod")
  226. }
  227.  
  228.  
  229. }
  230. case 4:
  231. {
  232. if (pontok[id] >= ar[key] && elo)
  233. {
  234. pontok[id] -= ar[key]
  235. give_item(id, "weapon_g3sg1")
  236. cs_set_user_bpammo(id, CSW_G3SG1, 90)
  237. ColorChat(id, GREEN, "[Pontrendszer] Megkaptad a magozot!")
  238. }
  239. else
  240. {
  241. ColorChat(id, GREEN, "[Pontrendszer] Sajnos,nincs eleg pontod")
  242. }
  243. }
  244. case 5:
  245. {
  246. if (pontok[id] >= ar[key] && elo)
  247. {
  248. pontok[id] -= ar[key];
  249. give_item(id, "weapon_sg550")
  250. cs_set_user_bpammo(id, CSW_SG550, 90)
  251. ColorChat(id, GREEN, "[Pontrendszer] Megkaptad a magozot!")
  252. }
  253. else
  254. {
  255. ColorChat(id, GREEN, "[Pontrendszer] Sajnos,nincs eleg pontod")
  256. }
  257.  
  258. }
  259. case 6:
  260. {
  261. if(pontok[id]>=ar[key] && elo)
  262. {
  263. pontok[id]-= ar[key]
  264. orok[id]=true
  265. ColorChat(id,GREEN,"Megvetted az orokloszert!")
  266. }
  267. else
  268. {
  269. ColorChat(id,GREEN,"Nincs eleg pontod!")
  270. }
  271. }
  272. }
  273. menu_destroy(menu)
  274. return PLUGIN_HANDLED
  275. }
  276.  
  277. public mentes(id)
  278. {
  279. new vaultkey[64],vaultdata[256]
  280.  
  281. format(vaultkey,63,"%s-PONTOK", name[id])
  282. format(vaultdata,255,"%d", pontok[id])
  283.  
  284. nvault_set(g_vault,vaultkey,vaultdata)
  285. return PLUGIN_CONTINUE
  286. }
  287. public betoltes(id)
  288. {
  289. new vaultkey[64],vaultdata[256]
  290.  
  291. format(vaultkey,63,"%s-PONTOK", name[id])
  292.  
  293. nvault_get(g_vault,vaultkey,vaultdata,255)
  294.  
  295. pontok[id] = str_to_num(vaultdata)
  296. return PLUGIN_CONTINUE;
  297. }
  298. public client_disconnect(id)
  299. {
  300. mentes(id);
  301. remove_task(id);
  302. pontok[id] = 0;
  303. activ_sebesseg[id] = false
  304. }
  305.  
  306. public client_connect(id)
  307. {
  308. get_user_name(id, name[id], 31)
  309. betoltes(id);
  310. set_task(300.0, "ajandek_1",id)
  311. set_task(900.0, "ajandek_2",id)
  312. set_task(1800.0, "ajandek_3",id)
  313. }
  314. public adas(id)
  315. {
  316. if (get_user_flags(id) & ADMIN_KICK)
  317. {
  318. new menu = menu_create("\y [Pontrendszer] \rKinek akarsz pontot adni?! \y(10p)", "menu_handler")
  319. new players[32], pnum, tempid
  320. new szName[32], szTempid[10]
  321. get_players(players, pnum)
  322. for( new i; i<pnum; i++ )
  323. {
  324. tempid = players[i];
  325. get_user_name(tempid, szName, charsmax(szName))
  326. num_to_str(tempid, szTempid, charsmax(szTempid))
  327. menu_additem(menu, szName, szTempid, 0)
  328.  
  329. }
  330. menu_display(id, menu, 0)
  331. }
  332. else
  333. {
  334. ColorChat(id, GREEN, "Sajnos nincs jogod hasznalni ezt a parancsot!")
  335.  
  336. }
  337. }
  338. public menu_handler(id, menu, item)
  339. {
  340. if( item == MENU_EXIT )
  341. {
  342. menu_destroy(menu);
  343. return PLUGIN_HANDLED;
  344. }
  345.  
  346. new data[6], szName[64];
  347. new access, callback;
  348. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  349.  
  350. new tempid = str_to_num(data);
  351.  
  352. if( is_user_alive(tempid) )
  353. {
  354. pontok[tempid] += 10
  355. }
  356. client_cmd(id,"pont_adas")
  357. menu_destroy(menu);
  358. return PLUGIN_HANDLED;
  359. }
  360. public ajandek_1(id)
  361. {
  362. new penz = get_pcvar_num(ajandek1);
  363. client_print(id, print_chat, "[Pontrendszer] %d pont jar mert itt vagy mar 5 perce!", penz)
  364. pontok[id] += penz;
  365. }
  366. public ajandek_2(id)
  367. {
  368. new penz = get_pcvar_num(ajandek2);
  369. client_print(id, print_chat, "[Pontrendszer] %d pont jar mert itt vagy mar 10 perce!", penz)
  370. pontok[id] += penz;
  371. }
  372. public ajandek_3(id)
  373. {
  374. new penz = get_pcvar_num(ajandek3);
  375. client_print(id, print_chat, "[Pontrendszer] %d pont jar mert itt vagy mar 30 perce!", penz)
  376. pontok[id] += penz;
  377. }
  378.  
  379. public hud()
  380. {
  381. admin = 0;
  382. new players[32], pnum, tempid
  383. get_players(players, pnum, "c")
  384.  
  385. for( new i; i<pnum; i++ )
  386. {
  387. tempid = players[i]
  388. if(get_user_flags(tempid) & ADMIN_KICK)
  389. {
  390. admin++;
  391. }
  392.  
  393. }
  394. for( new i; i<pnum; i++ )
  395. {
  396. tempid = players[i]
  397. set_hudmessage(0, 170, 255, 0.02, 0.2, 0, 1.0, 3.0);
  398. ShowSyncHudMsg(tempid, SyncHudObj, "[Pont: %d]^n[Jelenlevo Adminok: %d]",pontok[tempid],admin)
  399. }
  400. }
  401. public message_cur_weapon(msg_id, msg_dest, msg_entity)
  402. {
  403. // Player doesn't have the unlimited clip upgrade
  404. if (!orok[msg_entity])
  405. return;
  406.  
  407. // Player not alive or not an active weapon
  408. if (!is_user_alive(msg_entity) || get_msg_arg_int(1) != 1)
  409. return;
  410.  
  411. static weapon, clip
  412. weapon = get_msg_arg_int(2) // get weapon ID
  413. clip = get_msg_arg_int(3) // get weapon clip
  414.  
  415. // Unlimited Clip Ammo
  416. if (MAXCLIP[weapon] > 2) // skip grenades
  417. {
  418. set_msg_arg_int(3, get_msg_argtype(3), MAXCLIP[weapon]) // HUD should show full clip all the time
  419.  
  420. if (clip < 2) // refill when clip is nearly empty
  421. {
  422. // Get the weapon entity
  423. static wname[32], weapon_ent
  424. get_weaponname(weapon, wname, sizeof wname - 1)
  425. weapon_ent = fm_find_ent_by_owner(-1, wname, msg_entity)
  426.  
  427. // Set max clip on weapon
  428. fm_set_weapon_ammo(weapon_ent, MAXCLIP[weapon])
  429. }
  430. }
  431. }
  432.  
  433. // Find entity by its owner (from fakemeta_util)
  434. stock fm_find_ent_by_owner(entity, const classname[], owner)
  435. {
  436. while ((entity = engfunc(EngFunc_FindEntityByString, entity, "classname", classname)) && pev(entity, pev_owner) != owner) {}
  437.  
  438. return entity;
  439. }
  440.  
  441. // Set Weapon Clip Ammo
  442. stock fm_set_weapon_ammo(entity, amount)
  443. {
  444. set_pdata_int(entity, OFFSET_CLIPAMMO, amount, OFFSET_LINUX_WEAPONS);
  445. }


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


Ki van itt

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