hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2024.04.26. 06:22



Jelenlévő felhasználók

Jelenleg 318 felhasználó van jelen :: 2 regisztrált, 0 rejtett és 316 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], Majestic-12 [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  [ 2 hozzászólás ] 
Szerző Üzenet
HozzászólásElküldve: 2015.12.16. 13:48 
Offline
Senior Tag
Avatar

Csatlakozott: 2015.04.10. 23:40
Hozzászólások: 283
Megköszönt másnak: 6 alkalommal
Megköszönték neki: 12 alkalommal
Sziasztok.

valaki bele tudná írni, hogy mindenkinek mentse a legutóbb kiválaszott skinjeit
valamint, hogy /rankból olvassa az öléseket
valamint azt, hogy a pisztoly és kés skint ne cserélje le a kiválaszott skinre?

  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <nvault>
  4. #include <fakemeta>
  5. #include <hamsandwich>
  6. #include <csstats>
  7. #include <cstrike>
  8.  
  9. new skins_types[][] =
  10. {
  11.     "AK47",
  12.     "AWP",
  13.     "M4A1"
  14. }
  15.  
  16. new const WEAPONENTNAMES[][] = { "", "weapon_p228", "", "weapon_scout", "weapon_hegrenade", "weapon_xm1014", "weapon_c4", "weapon_mac10",
  17.             "weapon_aug", "weapon_smokegrenade", "weapon_elite", "weapon_fiveseven", "weapon_ump45", "weapon_sg550",
  18.             "weapon_galil", "weapon_famas", "weapon_usp", "weapon_glock18", "weapon_awp", "weapon_mp5navy", "weapon_m249",
  19.             "weapon_m3", "weapon_m4a1", "weapon_tmp", "weapon_g3sg1", "weapon_flashbang", "weapon_deagle", "weapon_sg552",
  20.             "weapon_ak47", "weapon_knife", "weapon_p90" }
  21.  
  22. new g_vault
  23. new Array:Skin_Type, Array:Skin_Name, Array:Skin_Cost, Array:Skin_Model
  24. new skin_chosen[sizeof skins_types][33], weap[33]
  25.  
  26. public plugin_init() {
  27.     register_plugin("Fegyver skin menü", "3.0", "LyleChriss")
  28.    
  29.     register_clcmd("say /menu", "cmd_menu")
  30.     register_clcmd("say /skin", "cmd_menu")
  31.  
  32.     for (new i = 1; i < sizeof WEAPONENTNAMES; i++)
  33.     {
  34.         if (WEAPONENTNAMES[i][0]) RegisterHam(Ham_Item_Deploy, WEAPONENTNAMES[i], "OnItemDeployPost", 1);
  35.     }
  36.    
  37.     g_vault = nvault_open("fegyverskin")
  38. }
  39.  
  40. public plugin_precache()
  41. {
  42.     Skin_Type=ArrayCreate(1,1)
  43.     Skin_Name=ArrayCreate(64)
  44.     Skin_Cost=ArrayCreate(1,1)
  45.     Skin_Model=ArrayCreate(64)
  46.    
  47.     new skins_file[64], pFile, readdata[1024], data[4][64]
  48.     get_configsdir(skins_file,charsmax(skins_file))
  49.     format(skins_file,charsmax(skins_file),"%s/skins.ini",skins_file)
  50.    
  51.     pFile = fopen(skins_file, "rt")
  52.    
  53.     if(pFile)
  54.     {
  55.         while(!feof(pFile))
  56.         {
  57.             fgets(pFile, readdata, charsmax(readdata))
  58.            
  59.             parse(readdata, data[0], 63, data[1], 63, data[2], 63, data[3], 63)
  60.             if(readdata[0]==';'||equal(readdata,"")||equal(data[1],""))
  61.                 continue
  62.             ArrayPushCell(Skin_Type,str_to_num(data[0]))
  63.             ArrayPushString(Skin_Name,data[1])
  64.             ArrayPushCell(Skin_Cost,str_to_num(data[2]))
  65.             ArrayPushString(Skin_Model, data[3])
  66.            
  67.             precache_model(data[3])
  68.         }
  69.         fclose(pFile)
  70.     }
  71.     else
  72.         set_fail_state("skins.ini nem talalhato")
  73. }
  74.  
  75. public cmd_menu(id)
  76. {
  77.     new title[256],item[128]
  78.     new szStats[8],szBHits[8];
  79.     get_user_stats(id,szStats,szBHits);
  80.    
  81.     format(title,charsmax(title),"\Válaszd ki a fegyvered típusát!^n\wÖléseid: \r%s", szStats[0])
  82.    
  83.     new menu=menu_create(title,"skin_type_handler")
  84.     for(new i=0;i<sizeof skins_types;i++)
  85.     {
  86.         new count
  87.         for(new j;j<ArraySize(Skin_Name);j++)
  88.             if(ArrayGetCell(Skin_Type,j)==i) count++
  89.         format(item,charsmax(item),"\w%s \y(%d db)",skins_types[i],count)
  90.         menu_additem(menu,item)
  91.     }
  92.     menu_display(id,menu)
  93. }
  94.  
  95. public skin_type_handler(id,menu,key)
  96. {
  97.     if(key==MENU_EXIT)
  98.     {
  99.         menu_destroy(menu)
  100.         return PLUGIN_HANDLED
  101.     }
  102.     new item[128]
  103.     new menu2=menu_create("\yVálassz fegyver kinézetet!","skin_handler")
  104.     new name[64]
  105.     new szStats[8],szBHits[8];
  106.     new szKell[32]
  107.     get_user_stats(id,szStats,szBHits);
  108.     get_user_name(id,name,charsmax(name))
  109.     for(new i=0;i<ArraySize(Skin_Name);i++)
  110.     {
  111.         if(ArrayGetCell(Skin_Type,i)!=key)
  112.             continue
  113.         new name[64]
  114.         ArrayGetString(Skin_Name,i,name,charsmax(name))
  115.         new cost = ArrayGetCell(Skin_Cost,i)
  116.        
  117.        
  118.         formatex(szKell, charsmax(szKell), "[MĂ©g %d ölĂ©s]", cost-szStats[0])
  119.         formatex(item, charsmax(item), "%s %s", name, szStats[0] < cost ? szKell : "[ElĂ©rve]")
  120.         new num[64]
  121.         num_to_str(i,num,charsmax(num))
  122.         menu_additem(menu2,item,num)
  123.     }
  124.     menu_setprop(menu2,MPROP_PERPAGE,5)
  125.     menu_display(id,menu2)
  126.     return PLUGIN_CONTINUE
  127. }
  128.  
  129. public skin_handler(id,menu,key)
  130. {
  131.     if(key==MENU_EXIT)
  132.     {
  133.         menu_destroy(menu)
  134.         return PLUGIN_HANDLED
  135.     }
  136.     new access,data[32],callback,name[64]
  137.     menu_item_getinfo(menu,key,access,data,charsmax(data),_,_,callback)
  138.     new skinid=str_to_num(data)
  139.     new cost=ArrayGetCell(Skin_Cost,skinid)
  140.     ArrayGetString(Skin_Name,skinid,name,charsmax(name))
  141.     new szStats[8],szBHits[8];
  142.     get_user_stats(id,szStats,szBHits);
  143.     if(szStats[0] >= cost)
  144.     {
  145.         for(new i=0;i<sizeof skins_types;i++)
  146.         {
  147.             if(ArrayGetCell(Skin_Type,skinid) == i) skin_chosen[i][id] = skinid
  148.         }
  149.         client_print(id, print_chat, "Sikeresen kiválasztottad a(z) %s skint!", name)
  150.     }
  151.     else
  152.     {
  153.         client_print(id, print_chat, "Nincs elég ölésed ezen skin használatához!")
  154.     }
  155.     return PLUGIN_CONTINUE
  156. }
  157.  
  158. public OnItemDeployPost(ent)
  159. {
  160.     static id; id = pev(ent, pev_owner)
  161.    
  162.     if(!pev_valid(id)) return
  163.    
  164.     weap[id] = cs_get_weapon_id(ent)
  165.    
  166.     new num, model[64]
  167.    
  168.     for(new i=0;i<sizeof skins_types;i++)
  169.     {
  170.         if(containi(weap, skins_types[i]))
  171.         {
  172.             num = skin_chosen[i][id]
  173.             ArrayGetString(Skin_Model, num, model, charsmax(model))
  174.             set_pev(id, pev_viewmodel2, model)
  175.         }
  176.     }
  177. }
  178.  
  179. public client_disconnect(id)
  180. {
  181.     if(!is_user_bot(id) && !is_user_hltv(id))
  182.     {
  183.         save(id)
  184.     }
  185.     for(new i=0; i< sizeof skins_types; i++)
  186.     {
  187.         skin_chosen[i][id] = 9999
  188.     }
  189. }
  190.  
  191. public client_putinserver(id)
  192. {
  193.     for(new i=0; i< sizeof skins_types; i++)
  194.     {
  195.         skin_chosen[i][id] = 9999
  196.     }
  197.     if(!is_user_bot(id) && !is_user_hltv(id))
  198.     {
  199.         load(id)
  200.     }
  201. }
  202.  
  203. public save(id)
  204. {
  205.     new vaultkey[64], vaultdata[2048], Len
  206.     get_user_authid(id, vaultkey, charsmax(vaultkey))
  207.    
  208.     for(new i=0; i< sizeof skins_types; i++)
  209.     {
  210.         Len += format(vaultdata[Len], 2048-Len, "%i ", skin_chosen[i][id])
  211.     }
  212.     nvault_set(g_vault, vaultkey, vaultdata)
  213. }
  214.  
  215. public load(id)
  216. {
  217.     new vaultkey[64], vaultdata[2048], Len
  218.     get_user_authid(id, vaultkey, charsmax(vaultkey))
  219.    
  220.     for(new i=0; i< sizeof skins_types; i++)
  221.     {
  222.         Len += format(vaultdata[Len], 2048-Len, "%i ", skin_chosen[i][id])
  223.     }
  224.     if(nvault_get(g_vault, vaultkey, vaultdata, charsmax(vaultdata)))
  225.     {
  226.         new skin[sizeof skins_types][32]
  227.         new iSpacePos = contain(vaultdata, " ")
  228.        
  229.         if(iSpacePos > -1)
  230.         {
  231.             for(new j=0; j < sizeof skins_types; j++)
  232.             {
  233.                 formatex(skin[j], charsmax(skin), "%s", vaultdata[iSpacePos+j])
  234.                 skin_chosen[j][id] = str_to_num(skin[j])
  235.             }
  236.         }
  237.     }
  238. }
  239.  
  240. public plugin_end()
  241. {
  242.     nvault_close(g_vault)
  243.     ArrayDestroy(Skin_Type)
  244.     ArrayDestroy(Skin_Name)
  245.     ArrayDestroy(Skin_Cost)
  246.     ArrayDestroy(Skin_Model)
  247. }

_________________
Kép

Kép


A hozzászólást 1 alkalommal szerkesztették, utoljára mforce 2015.12.16. 13:56-kor.
Téma áthelyezve! Legközelebb figyelj oda.


Hozzászólás jelentése
Vissza a tetejére
   
HozzászólásElküldve: 2015.12.16. 14:41 
Offline
Nagyúr
Avatar

Csatlakozott: 2014.08.24. 18:28
Hozzászólások: 584
Megköszönt másnak: 122 alkalommal
Megköszönték neki: 120 alkalommal
Fölösleges ezért új témát nyitni, mivel az eredeti témát pont azért nyitottam, hogy jelentsétek a hibákat, én pedig javítom.
Alapból a rankból olvassa a skinekhez szükséges öléseket - ahogy már az előző verzióban is.


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 9 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