hlmod.hu

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



Jelenlévő felhasználók

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

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

Regisztrált felhasználók: siska15 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  [ 4 hozzászólás ] 
Szerző Üzenet
 Hozzászólás témája: Fegyverskin mentés
HozzászólásElküldve: 2015.01.28. 20:57 
Offline
Jómunkásember
Avatar

Csatlakozott: 2013.12.18. 17:35
Hozzászólások: 365
Megköszönt másnak: 152 alkalommal
Megköszönték neki: 31 alkalommal
Üdv! Valaki beleírná, hogy névre mentse.
Köszi előre is!

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

_________________
Ha segítettem használd a gombot!

Kép
KépKép


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Fegyverskin mentés
HozzászólásElküldve: 2015.01.28. 21:07 
Offline
Jómunkásember
Avatar

Csatlakozott: 2014.09.27. 19:51
Hozzászólások: 411
Megköszönt másnak: 89 alkalommal
Megköszönték neki: 14 alkalommal
Próbáld
SMA Forráskód: [ Mindet kijelol ]
  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <fakemeta>
  4. #include <colorchat>
  5. #include <nvault>
  6.  
  7. #define PLUGIN "Fegyver Skin Menu"
  8. #define VERSION "1.0"
  9. #define AUTHOR "RaZzoR"
  10.  
  11. #define DICTIONARY "fegyver_skin_menu.txt"
  12.  
  13. #define HOOK_P_MODELS
  14. #define HOOK_V_MODELS
  15. #define HOOK_W_MODELS
  16.  
  17. new weapon_select[33], vault
  18.  
  19. new const menu_item_names[][][] = {
  20. { "Alap Csomag", "0", "" },
  21. { "Arany Csomag", "350", "BS" }
  22. }
  23.  
  24. new const models_name[][] = {
  25. "ak47.mdl",
  26. "aug.mdl",
  27. "awp.mdl",
  28. "c4.mdl",
  29. "deagle.mdl",
  30. "m4a1.mdl",
  31. "scout.mdl",
  32. "knife.mdl",
  33. "famas.mdl"
  34. }
  35.  
  36. public plugin_init() {
  37. register_plugin(PLUGIN, VERSION, AUTHOR)
  38.  
  39. register_dictionary(DICTIONARY)
  40.  
  41. register_clcmd("say /menu", "clcmd_menu")
  42. register_event("CurWeapon","Hook_P_V_Model","be","1=1")
  43.  
  44. #if defined HOOK_W_MODELS
  45. register_forward(FM_SetModel, "Hook_W_Model", 1)
  46. #endif
  47. }
  48.  
  49. public plugin_precache() {
  50. for(new i = 0; i < sizeof(models_name); i++) {
  51. for(new j = 1; j < sizeof(menu_item_names); j++) {
  52. #if defined HOOK_P_MODELS
  53. new precache_p[256]
  54. format(precache_p, sizeof(precache_p), "models/%s/p_%s", menu_item_names[j][2], models_name[i])
  55.  
  56. precache_model(precache_p)
  57. #endif
  58.  
  59. #if defined HOOK_V_MODELS
  60. new precache_v[256]
  61. format(precache_v, sizeof(precache_v), "models/%s/v_%s", menu_item_names[j][2], models_name[i])
  62.  
  63. precache_model(precache_v)
  64. #endif
  65.  
  66. #if defined HOOK_W_MODELS
  67. new precache_w[256]
  68. format(precache_w, sizeof(precache_w), "models/%s/w_%s", menu_item_names[j][2], models_name[i])
  69.  
  70. precache_model(precache_w)
  71. #endif
  72. }
  73. }
  74. }
  75.  
  76. public client_disconnect(id)
  77. weapon_select[id] = 0
  78.  
  79. public W_Model_Hook(ent, model[]) {
  80. if(!pev_valid(ent)) return FMRES_IGNORED
  81.  
  82. new owner = pev(ent, pev_owner)
  83.  
  84. for(new i = 0; i < sizeof(models_name); i++) {
  85. new old_w[256]
  86. format(old_w, sizeof(old_w), "models/w_%s", models_name[i])
  87.  
  88. new new_w[256]
  89. format(new_w, sizeof(new_w), "models/%s/w_%s", menu_item_names[weapon_select[owner]][2], models_name[i])
  90.  
  91. if(equali(model, old_w) || equali(model, new_w)) {
  92. if(weapon_select[owner] >= 1) engfunc(EngFunc_SetModel, ent, new_w)
  93. else engfunc(EngFunc_SetModel, ent, old_w)
  94.  
  95. return FMRES_SUPERCEDE
  96. }
  97. }
  98.  
  99. return FMRES_IGNORED
  100. }
  101.  
  102. public Hook_P_V_Model(id) {
  103. if(!is_user_alive(id))
  104. return PLUGIN_CONTINUE
  105.  
  106. static v_model[32], p_model[32]
  107. pev(id, pev_viewmodel2, v_model, 31)
  108. pev(id, pev_weaponmodel2, p_model,31)
  109.  
  110. for(new i = 0; i < sizeof(models_name); i++) {
  111. #if defined HOOK_V_MODELS
  112. new old_v[256]
  113. format(old_v, sizeof(old_v), "models/v_%s", models_name[i])
  114.  
  115. new new_v[256]
  116. format(new_v, sizeof(new_v), "models/%s/v_%s", menu_item_names[weapon_select[id]][2], models_name[i])
  117.  
  118. if(equali(v_model, old_v) || equali(v_model, new_v)) {
  119. if(weapon_select[id] >= 1) set_pev(id, pev_viewmodel2, new_v)
  120. else set_pev(id, pev_viewmodel2, old_v)
  121.  
  122. break
  123. }
  124. #endif
  125.  
  126. #if defined HOOK_P_MODELS
  127. new old_p[256]
  128. format(old_p, sizeof(old_p), "models/p_%s", models_name[i])
  129.  
  130. new new_p[256]
  131. format(new_p, sizeof(new_p), "models/%s/p_%s", menu_item_names[weapon_select[id]][2], models_name[i])
  132.  
  133. if(equali(p_model, old_p) || equali(p_model, new_p)) {
  134. if(weapon_select[id] >= 1) set_pev(id, pev_weaponmodel2, new_p)
  135. else set_pev(id, pev_weaponmodel2, old_p)
  136.  
  137. break
  138. }
  139. #endif
  140. }
  141.  
  142. return PLUGIN_CONTINUE
  143. }
  144.  
  145. public clcmd_menu(id) {
  146. new menu_line[64], menu_newline[64], i_data[64]
  147. format(menu_line, charsmax(menu_line), "\w%L", id, "SKIN_MENU", get_user_frags(id))
  148.  
  149. new menu = menu_create(menu_line, "clcmd_menu_handler")
  150.  
  151. for(new i = 0; i < sizeof(menu_item_names); i++) {
  152. new convert_num = str_to_num(menu_item_names[i][1])
  153. num_to_str(i, i_data, sizeof(i_data))
  154.  
  155. if(get_user_frags(id) < convert_num)
  156. format(menu_newline, charsmax(menu_newline), "%L", id, "SKIN_ITEM1", menu_item_names[i][0], convert_num)
  157. else
  158. format(menu_newline, charsmax(menu_newline), "%L", id, "SKIN_ITEM2", menu_item_names[i][0])
  159. menu_additem(menu, menu_newline, i_data, 0)
  160. }
  161.  
  162. menu_display(id, menu, 0)
  163.  
  164. return PLUGIN_HANDLED
  165. }
  166.  
  167. public clcmd_menu_handler(id, menu, item) {
  168. if(item == MENU_EXIT) {
  169. menu_destroy(menu)
  170. return PLUGIN_HANDLED
  171. }
  172.  
  173. new data[64], szName[64]
  174. new access, callback
  175. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback)
  176.  
  177. new key = str_to_num(data)
  178. new convert_num = str_to_num(menu_item_names[key][1])
  179.  
  180. if(get_user_frags(id) < convert_num) {
  181. ColorChat(id,GREEN,"[BS] ^1Ezt a csomagot ^4(%s) ^1nem használhatod, mert nincs ^4%i ^1ölésed!", menu_item_names[key][0], convert_num)
  182. return PLUGIN_HANDLED
  183. }
  184.  
  185. else {
  186. weapon_select[id] = key
  187. ColorChat(id,GREEN,"[BS] ^1Ezt a csomagot választottad: ^4%s^1!", menu_item_names[key][0])
  188. Hook_P_V_Model(id)
  189. }
  190.  
  191. return PLUGIN_CONTINUE
  192. }
  193. public client_putinserver(id) {
  194. betoltes(id)
  195. get_user_name(id, name[id], 31)
  196. }
  197.  
  198. public mentes(id)
  199. {
  200. new vaultkey[64],vaultdata[256], name[32]
  201. get_user_name(id, name, 31)
  202. format(vaultkey,63,"%s-frag", name[id])
  203. format(vaultdata,511,"%d", fragek[id])
  204. nvault_set(vault,vaultkey,vaultdata)
  205. nvault_set(g_vault,vaultkey,vaultdata)
  206. return PLUGIN_CONTINUE
  207. }
  208. public betoltes(id)
  209. {
  210. new vaultkey[64],vaultdata[256], name[32]
  211. get_user_name(id, name, 31)
  212. format(vaultkey,63,"%s-frag", name[id])
  213. nvault_get(vault,vaultkey,vaultdata,255)
  214. nvault_get(g_vault,vaultkey,vaultdata,511)
  215. fragek[id] = str_to_num(vaultdata)
  216. return PLUGIN_CONTINUE;
  217. }
  218. public client_disconnect(id)
  219. {
  220. mentes(id)
  221. }
  222. public client_connect(id)
  223. {
  224. betoltes(id)
  225. }


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Fegyverskin mentés
HozzászólásElküldve: 2015.01.29. 20:31 
Offline
Jómunkásember
Avatar

Csatlakozott: 2013.12.18. 17:35
Hozzászólások: 365
Megköszönt másnak: 152 alkalommal
Megköszönték neki: 31 alkalommal
Még fordítani se fordítja, te egyáltalán próbáltad fordítani vagy csak beleírtad és kész?

_________________
Ha segítettem használd a gombot!

Kép
KépKép


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Fegyverskin mentés
HozzászólásElküldve: 2015.01.29. 22:44 
Offline
Nagyúr

Csatlakozott: 2014.05.10. 16:41
Hozzászólások: 721
Megköszönt másnak: 43 alkalommal
Megköszönték neki: 64 alkalommal
http://hlmod.hu/viewtopic.php?f=10&t=18724


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


Ki van itt

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