hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2024.05.25. 01:30



Jelenlévő felhasználók

Jelenleg 148 felhasználó van jelen :: 1 regisztrált, 0 rejtett és 147 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] az elmúlt 5 percben aktív felhasználók alapján

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



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

Regisztráció

Kereső


Új téma nyitása  Hozzászólás a témához  [ 3 hozzászólás ] 
Szerző Üzenet
 Hozzászólás témája: Ölés mentés
HozzászólásElküldve: 2015.07.09. 16:47 
Offline
Újonc

Csatlakozott: 2015.06.17. 11:50
Hozzászólások: 10
Megköszönt másnak: 5 alkalommal
SMA Forráskód: [ Mindet kijelol ]
  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <fakemeta>
  4.  
  5. #define PLUGIN "Fegyver Skin Menu"
  6. #define VERSION "1.0"
  7. #define AUTHOR "RaZzoR"
  8.  
  9. #define DICTIONARY "fegyver_skin_menu.txt"
  10.  
  11. #define HOOK_P_MODELS
  12. #define HOOK_V_MODELS
  13. #define HOOK_W_MODELS
  14.  
  15. new weapon_select[33]
  16.  
  17. new const menu_item_names[][][] = {
  18. { "Alap Csomag", "0", "" },
  19. { "CSO Csomag", "2", "cso_skins" }
  20. }
  21.  
  22. new const models_name[][] = {
  23. "ak47.mdl",
  24. "aug.mdl",
  25. "awp.mdl"
  26. }
  27.  
  28. public plugin_init() {
  29. register_plugin(PLUGIN, VERSION, AUTHOR)
  30.  
  31. register_dictionary(DICTIONARY)
  32.  
  33. register_clcmd("say /menu", "clcmd_menu")
  34. register_event("CurWeapon","Hook_P_V_Model","be","1=1")
  35.  
  36. #if defined HOOK_W_MODELS
  37. register_forward(FM_SetModel, "Hook_W_Model", 1)
  38. #endif
  39. }
  40.  
  41. public plugin_precache() {
  42. for(new i = 0; i < sizeof(models_name); i++) {
  43. for(new j = 1; j < sizeof(menu_item_names); j++) {
  44. #if defined HOOK_P_MODELS
  45. new precache_p[256]
  46. format(precache_p, sizeof(precache_p), "models/%s/p_%s", menu_item_names[j][2], models_name[i])
  47.  
  48. precache_model(precache_p)
  49. #endif
  50.  
  51. #if defined HOOK_V_MODELS
  52. new precache_v[256]
  53. format(precache_v, sizeof(precache_v), "models/%s/v_%s", menu_item_names[j][2], models_name[i])
  54.  
  55. precache_model(precache_v)
  56. #endif
  57.  
  58. #if defined HOOK_W_MODELS
  59. new precache_w[256]
  60. format(precache_w, sizeof(precache_w), "models/%s/w_%s", menu_item_names[j][2], models_name[i])
  61.  
  62. precache_model(precache_w)
  63. #endif
  64. }
  65. }
  66. }
  67.  
  68. public client_disconnect(id)
  69. weapon_select[id] = 0
  70.  
  71. public W_Model_Hook(ent, model[]) {
  72. if(!pev_valid(ent)) return FMRES_IGNORED
  73.  
  74. new owner = pev(ent, pev_owner)
  75.  
  76. for(new i = 0; i < sizeof(models_name); i++) {
  77. new old_w[256]
  78. format(old_w, sizeof(old_w), "models/w_%s", models_name[i])
  79.  
  80. new new_w[256]
  81. format(new_w, sizeof(new_w), "models/%s/w_%s", menu_item_names[weapon_select[owner]][2], models_name[i])
  82.  
  83. if(equali(model, old_w) || equali(model, new_w)) {
  84. if(weapon_select[owner] >= 1) engfunc(EngFunc_SetModel, ent, new_w)
  85. else engfunc(EngFunc_SetModel, ent, old_w)
  86.  
  87. return FMRES_SUPERCEDE
  88. }
  89. }
  90.  
  91. return FMRES_IGNORED
  92. }
  93.  
  94. public Hook_P_V_Model(id) {
  95. if(!is_user_alive(id))
  96. return PLUGIN_CONTINUE
  97.  
  98. static v_model[32], p_model[32]
  99. pev(id, pev_viewmodel2, v_model, 31)
  100. pev(id, pev_weaponmodel2, p_model,31)
  101.  
  102. for(new i = 0; i < sizeof(models_name); i++) {
  103. #if defined HOOK_V_MODELS
  104. new old_v[256]
  105. format(old_v, sizeof(old_v), "models/v_%s", models_name[i])
  106.  
  107. new new_v[256]
  108. format(new_v, sizeof(new_v), "models/%s/v_%s", menu_item_names[weapon_select[id]][2], models_name[i])
  109.  
  110. if(equali(v_model, old_v) || equali(v_model, new_v)) {
  111. if(weapon_select[id] >= 1) set_pev(id, pev_viewmodel2, new_v)
  112. else set_pev(id, pev_viewmodel2, old_v)
  113.  
  114. break
  115. }
  116. #endif
  117.  
  118. #if defined HOOK_P_MODELS
  119. new old_p[256]
  120. format(old_p, sizeof(old_p), "models/p_%s", models_name[i])
  121.  
  122. new new_p[256]
  123. format(new_p, sizeof(new_p), "models/%s/p_%s", menu_item_names[weapon_select[id]][2], models_name[i])
  124.  
  125. if(equali(p_model, old_p) || equali(p_model, new_p)) {
  126. if(weapon_select[id] >= 1) set_pev(id, pev_weaponmodel2, new_p)
  127. else set_pev(id, pev_weaponmodel2, old_p)
  128.  
  129. break
  130. }
  131. #endif
  132. }
  133.  
  134. return PLUGIN_CONTINUE
  135. }
  136.  
  137. public clcmd_menu(id) {
  138. new menu_line[64], menu_newline[64], i_data[64]
  139. format(menu_line, charsmax(menu_line), "\w%L", id, "SKIN_MENU", get_user_frags(id))
  140.  
  141. new menu = menu_create(menu_line, "clcmd_menu_handler")
  142.  
  143. for(new i = 0; i < sizeof(menu_item_names); i++) {
  144. new convert_num = str_to_num(menu_item_names[i][1])
  145. num_to_str(i, i_data, sizeof(i_data))
  146.  
  147. if(get_user_frags(id) < convert_num)
  148. format(menu_newline, charsmax(menu_newline), "%L", id, "SKIN_ITEM1", menu_item_names[i][0], convert_num)
  149. else
  150. format(menu_newline, charsmax(menu_newline), "%L", id, "SKIN_ITEM2", menu_item_names[i][0])
  151. menu_additem(menu, menu_newline, i_data, 0)
  152. }
  153.  
  154. menu_display(id, menu, 0)
  155.  
  156. return PLUGIN_HANDLED
  157. }
  158.  
  159. public clcmd_menu_handler(id, menu, item) {
  160. if(item == MENU_EXIT) {
  161. menu_destroy(menu)
  162. return PLUGIN_HANDLED
  163. }
  164.  
  165. new data[64], szName[64]
  166. new access, callback
  167. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback)
  168.  
  169. new key = str_to_num(data)
  170. new convert_num = str_to_num(menu_item_names[key][1])
  171.  
  172. if(get_user_frags(id) < convert_num) {
  173. client_print(id, print_chat, "%L", id, "SKIN_NOT_USE", menu_item_names[key][0], convert_num)
  174. return PLUGIN_HANDLED
  175. }
  176.  
  177. else {
  178. weapon_select[id] = key
  179. client_print(id, print_chat, "%L", id, "SKIN_CHOOSED", menu_item_names[key][0])
  180. Hook_P_V_Model(id)
  181. }
  182.  
  183. return PLUGIN_CONTINUE
  184. }

Ebbe kéne beleírni azt hogy ne az aktuális ölést nézze hanem az összes ölést.Előre is köszi!

_________________
Kép


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Ölés mentés
HozzászólásElküldve: 2015.07.10. 01:38 
Offline
Tiszteletbeli
Avatar

Csatlakozott: 2015.04.10. 19:49
Hozzászólások: 610
Megköszönt másnak: 53 alkalommal
Megköszönték neki: 147 alkalommal
SMA Forráskód: [ Mindet kijelol ]
  1. /* Plugin generated by AMXX-Studio */
  2.  
  3. #include <amxmodx>
  4. #include <amxmisc>
  5. #include <colorchat>
  6. #include <nvault>
  7.  
  8. #define PLUGIN "New Plug-In"
  9. #define VERSION "1.0"
  10. #define AUTHOR "author"
  11.  
  12. #define NVAULT 0
  13. /* Ha egyest vagy nagyobb számot írsz az NVAULT utáni 0 helyére,
  14.   akkor nvaultba ment, ha 0-n hagyod akkor fájlba.*/
  15.  
  16. #define MAXJATEKOSOK 32
  17.  
  18. new oles[MAXJATEKOSOK + 1]
  19. new gvault
  20.  
  21. public plugin_init()
  22. {
  23. register_plugin(PLUGIN, VERSION, AUTHOR)
  24. register_event("DeathMsg", "eHalal", "a")
  25. gvault = nvault_open("OlesMentes")
  26. }
  27.  
  28. public eHalal()
  29. {
  30. new gyilkos = read_data(1)
  31. new aldozat = read_data(2)
  32. new hs = read_data(3)
  33. new nev[32]
  34. get_user_name(aldozat, nev, charsmax(nev))
  35.  
  36. if(gyilkos == aldozat || get_user_team(gyilkos) == get_user_team(aldozat) || !is_user_connected(gyilkos) || !is_user_connected(aldozat))
  37. return PLUGIN_HANDLED
  38. else if(hs)
  39. {
  40. oles[gyilkos] += 2
  41. ColorChat(gyilkos, GREEN, "[Információ] ^3Ezért a hs-ért most dupla ölés járt^4!")
  42. return PLUGIN_CONTINUE
  43. }
  44. else
  45. {
  46. oles[gyilkos] ++
  47. ColorChat(gyilkos, GREEN, "[Információ] ^3%s meglöéséért katpál 1 ölést!", nev)
  48. return PLUGIN_CONTINUE
  49. }
  50.  
  51. return PLUGIN_CONTINUE
  52. }
  53.  
  54. //Menübe pedig oles[id] -t használj a get_user_frags(id) helyén.
  55.  
  56. #if NVAULT >= 1
  57. public mentes(id)
  58. {
  59. new vkey[32], vdata[256]
  60. get_user_name(id, vkey, charsmax(vkey))
  61. formatex(vdata, charsmax(vdata), "%d", oles[id])
  62. nvault_set(gvault, vkey, vdata)
  63. }
  64.  
  65. public betoltes(id)
  66. {
  67. new vkey[32], vdata[256], pa[32]
  68. get_user_name(id, vkey, charsmax(vkey))
  69. nvault_get(gvault, vkey, vdata, charsmax(vdata))
  70.  
  71. parse(vdata, charsmax(vdata), pa, charsmax(pa))
  72.  
  73. oles[id] = str_to_num(pa)
  74. }
  75. #else
  76. public mentes(id)
  77. {
  78. if(!is_user_connected(id))
  79. return PLUGIN_HANDLED
  80.  
  81. new pFajl, Fajl[192], Nev[32]
  82.  
  83. get_user_name(id, nev, chamsax(nev))
  84. formatex(Fajl, charsmax(Fajl), "addons/amxmodx/configs/%s.ini", Nev)
  85.  
  86. pFajl = fopen(Fajl, "a+")
  87.  
  88. if(pFajl)
  89. {
  90. fprintf(pFajl, "%d", oles[id])
  91. }
  92. fclose(pFajl)
  93.  
  94. return PLUGIN_CONTINUE
  95. }
  96.  
  97. public betoltes(id)
  98. {
  99. if(!is_user_connected(id))
  100. return PLUGIN_HANDLED
  101.  
  102. new pFajl, Fajl[192], Nev[32]
  103.  
  104. get_user_name(id, Nev, charsmax(Nev))
  105. formatex(Fajl, charsmax(Fajl), "addons/amxmodx/configs/%s.ini", Nev)
  106.  
  107. if(!file_exists(Fajl))
  108. write_file(Fajl, "0", 0)
  109.  
  110. pFajl = fopen(Fajl, "rt")
  111.  
  112. if(pFajl)
  113. {
  114. new Sor[192], pa[32]
  115.  
  116. fgets(pFajl, Sor, charsmax(Sor))
  117.  
  118. parse(Sor, charsmax(Sor), pa, charsmax(pa))
  119.  
  120. oles[id] = str_to_num(pa)
  121. }
  122.  
  123. return PLUGIN_CONTINUE
  124. }
  125. #endif
  126.  


Próbáld, ha nem menne vagy valamit elírtam szólj(atok)!

_________________
Néha itt, de többször nem.


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Ölés mentés
HozzászólásElküldve: 2015.07.10. 11:40 
Offline
Újonc

Csatlakozott: 2015.06.17. 11:50
Hozzászólások: 10
Megköszönt másnak: 5 alkalommal
Ákos...nem engedi compillerrel lefordítani és abba az sma-ba ird bele amit adtam..és nem azt,hogy az eredményjelzőre visszahozza az öléseket meg a halálokat hanem, hogy az öléseket a plugin ne nullázza.

_________________
Kép


Hozzászólás jelentése
Vissza a tetejére
   
Hozzászólások megjelenítése:  Rendezés  
Új téma nyitása  Hozzászólás a témához  [ 3 hozzászólás ] 


Ki van itt

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