hlmod.hu

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



Jelenlévő felhasználók

Jelenleg 212 felhasználó van jelen :: 2 regisztrált, 0 rejtett és 210 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  [ 1 hozzászólás ] 
Szerző Üzenet
HozzászólásElküldve: 2015.04.12. 09:33 
Offline
Jómunkásember
Avatar

Csatlakozott: 2014.04.14. 16:23
Hozzászólások: 475
Megköszönt másnak: 97 alkalommal
Megköszönték neki: 4 alkalommal
Hello
A fegyver skin menu pluginnal az a baj,hogy mapvaltas v restart utan nullazodnak az olesek,szeretnem ha elmentene vhogy
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. }
  185.  

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


Ki van itt

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