hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2024.05.04. 04:26



Jelenlévő felhasználók

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

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

Regisztrált felhasználók: nincs regisztrált felhasználó 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  [ 2 hozzászólás ] 
Szerző Üzenet
 Hozzászólás témája: Skin menübe oldal irás HELP ME
HozzászólásElküldve: 2016.08.16. 14:01 
Offline
Beavatott
Avatar

Csatlakozott: 2015.12.27. 11:47
Hozzászólások: 88
Megköszönt másnak: 9 alkalommal
Sziasztok!
Azt szeretném kérni tőled/tőletek hogy ebbe a skin rendszerber bele tudnád-e irni az oldal számát hogy 3 oldal legyen+Vissza,Tovább,kilépés GOMB-ot?
Aki segit meg a Pacsi.
Köszönöm előre is!
  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.     { "\rAlap Csomag""0",    ""      },
  19.     { "\yBronz \r[\dCsomag\r]",     "50",   "bronz" },
  20.     { "\yEzüst \r[\dCsomag\r]",        "100""ezust" },
  21.     { "\yArany \r[\dCsomag\r]",     "150""arany" },
  22.     { "\ySzuperMan \r[\dCsomag\r]",     "200""szuperman"},
  23.     { "\yMigráns \r[\dCsomag\r]""250""migrans" },
  24.     { "\yHyper Beast \r[\dCsomag\r]",   "300""hyper" }
  25. }
  26.  
  27. new const models_name[][] = {
  28.     "ak47.mdl",                  
  29.     "aug.mdl",                    
  30.     "awp.mdl",
  31.     "deagle.mdl"
  32. }
  33.  
  34. public plugin_init() {
  35.     register_plugin(PLUGIN, VERSION, AUTHOR)
  36.    
  37.     register_dictionary(DICTIONARY)
  38.    
  39.     register_clcmd("say /menu", "clcmd_menu")
  40.     register_event("CurWeapon","Hook_P_V_Model","be","1=1")
  41.    
  42.     #if defined HOOK_W_MODELS
  43.     register_forward(FM_SetModel, "Hook_W_Model", 1)
  44.     #endif
  45. }
  46.  
  47. public plugin_precache() {
  48.     for(new i = 0; i < sizeof(models_name); i++) {
  49.         for(new j = 1; j < sizeof(menu_item_names); j++) {
  50.             #if defined HOOK_P_MODELS
  51.             new precache_p[256]
  52.             format(precache_p, sizeof(precache_p), "models/%s/p_%s", menu_item_names[j][2], models_name[i])
  53.            
  54.             precache_model(precache_p)
  55.             #endif
  56.            
  57.             #if defined HOOK_V_MODELS
  58.             new precache_v[256]
  59.             format(precache_v, sizeof(precache_v), "models/%s/v_%s", menu_item_names[j][2], models_name[i])
  60.            
  61.             precache_model(precache_v)
  62.             #endif
  63.            
  64.             #if defined HOOK_W_MODELS
  65.             new precache_w[256]
  66.             format(precache_w, sizeof(precache_w), "models/%s/w_%s", menu_item_names[j][2], models_name[i])
  67.            
  68.             precache_model(precache_w)
  69.             #endif
  70.         }
  71.     }
  72. }
  73.  
  74. public client_disconnect(id)
  75.     weapon_select[id] = 0
  76.    
  77. public W_Model_Hook(ent, model[]) {
  78.     if(!pev_valid(ent)) return FMRES_IGNORED
  79.  
  80.     new owner = pev(ent, pev_owner)
  81.  
  82.     for(new i = 0; i < sizeof(models_name); i++) {
  83.         new old_w[256]
  84.         format(old_w, sizeof(old_w), "models/w_%s", models_name[i])
  85.  
  86.         new new_w[256]         
  87.         format(new_w, sizeof(new_w), "models/%s/w_%s", menu_item_names[weapon_select[owner]][2], models_name[i])
  88.        
  89.         if(equali(model, old_w) || equali(model, new_w)) {
  90.             if(weapon_select[owner] >= 1) engfunc(EngFunc_SetModel, ent, new_w)
  91.             else engfunc(EngFunc_SetModel, ent, old_w)
  92.                
  93.             return FMRES_SUPERCEDE
  94.         }
  95.     }
  96.    
  97.     return FMRES_IGNORED
  98. }
  99.  
  100. public Hook_P_V_Model(id) {
  101.     if(!is_user_alive(id))
  102.         return PLUGIN_CONTINUE
  103.    
  104.     static v_model[32], p_model[32]
  105.     pev(id, pev_viewmodel2, v_model, 31)
  106.     pev(id, pev_weaponmodel2, p_model,31)
  107.    
  108.     for(new i = 0; i < sizeof(models_name); i++) {
  109.         #if defined HOOK_V_MODELS
  110.         new old_v[256]
  111.         format(old_v, sizeof(old_v), "models/v_%s", models_name[i])
  112.  
  113.         new new_v[256]
  114.         format(new_v, sizeof(new_v), "models/%s/v_%s", menu_item_names[weapon_select[id]][2], models_name[i])
  115.        
  116.         if(equali(v_model, old_v) || equali(v_model, new_v)) {
  117.             if(weapon_select[id] >= 1) set_pev(id, pev_viewmodel2, new_v)          
  118.             else set_pev(id, pev_viewmodel2, old_v)
  119.  
  120.             break
  121.         }
  122.         #endif
  123.        
  124.         #if defined HOOK_P_MODELS
  125.         new old_p[256]
  126.         format(old_p, sizeof(old_p), "models/p_%s", models_name[i])
  127.  
  128.         new new_p[256]
  129.         format(new_p, sizeof(new_p), "models/%s/p_%s", menu_item_names[weapon_select[id]][2], models_name[i])
  130.  
  131.         if(equali(p_model, old_p) || equali(p_model, new_p)) {
  132.             if(weapon_select[id] >= 1) set_pev(id, pev_weaponmodel2, new_p)    
  133.             else set_pev(id, pev_weaponmodel2, old_p)
  134.  
  135.             break
  136.         }
  137.         #endif
  138.     }
  139.    
  140.     return PLUGIN_CONTINUE
  141. }
  142.  
  143. public clcmd_menu(id) {
  144.     new menu_line[64], menu_newline[64], i_data[64]
  145.     format(menu_line, charsmax(menu_line), "\w%L", id, "SKIN_MENU", get_user_frags(id))
  146.    
  147.     new menu = menu_create(menu_line, "clcmd_menu_handler")
  148.    
  149.     for(new  i = 0; i < sizeof(menu_item_names); i++) {
  150.         new convert_num = str_to_num(menu_item_names[i][1])
  151.         num_to_str(i, i_data, sizeof(i_data))
  152.        
  153.         if(get_user_frags(id) < convert_num)
  154.             format(menu_newline, charsmax(menu_newline), "%L", id, "SKIN_ITEM1", menu_item_names[i][0], convert_num)
  155.         else
  156.             format(menu_newline, charsmax(menu_newline), "%L", id, "SKIN_ITEM2", menu_item_names[i][0])
  157.         menu_additem(menu, menu_newline, i_data, 0)
  158.     }
  159.    
  160.     menu_display(id, menu, 0)
  161.    
  162.     return PLUGIN_HANDLED
  163. }
  164.  
  165. public clcmd_menu_handler(id, menu, item) {
  166.     if(item == MENU_EXIT) {
  167.         menu_destroy(menu)
  168.         return PLUGIN_HANDLED
  169.     }
  170.    
  171.     new data[64], szName[64]
  172.     new access, callback
  173.     menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback)
  174.    
  175.     new key = str_to_num(data)
  176.     new convert_num = str_to_num(menu_item_names[key][1])
  177.    
  178.     if(get_user_frags(id) < convert_num) {
  179.         client_print(id, print_chat, "%L", id, "SKIN_NOT_USE", menu_item_names[key][0], convert_num)
  180.         return PLUGIN_HANDLED
  181.     }
  182.    
  183.     else {
  184.         weapon_select[id] = key
  185.         client_print(id, print_chat, "%L", id, "SKIN_CHOOSED", menu_item_names[key][0])
  186.         Hook_P_V_Model(id)
  187.     }
  188.    
  189.     return PLUGIN_CONTINUE
  190. }

_________________
Gyertek fel!!
Kép


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Skin menübe oldal irás HELP ME
HozzászólásElküldve: 2016.08.18. 22:38 
Offline
Nagyúr
Avatar

Csatlakozott: 2016.03.05. 20:56
Hozzászólások: 663
Megköszönt másnak: 27 alkalommal
Megköszönték neki: 124 alkalommal
Ha a menü 2 db skint tartalmaz akkor hogy szeretnéd, hogy írja az oldalakat és hogy legyen tovább gomb ha nincs is elegendő választási lehetőség.
Ha beleraksz pl 8db skint akkor lesz tovább,vissza gomb automatikusan.

_________________
Global Offensive modok:

Global Offensive Mode 1.0
Global Offensive Mode 3.0
exodus Global Offensive 4.0


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


Ki van itt

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