hlmod.hu

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



Jelenlévő felhasználók

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

A legtöbb felhasználó (2761 fő) 2025.01.09. 20:06-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  [1 hozzászólás ] 
Szerző Üzenet
 Hozzászólás témája: Skin rendszer
HozzászólásElküldve:2015.04.03. 08:48 
Offline
Nagyúr
Avatar

Csatlakozott:2012.09.23. 09:50
Hozzászólások:569
Megköszönt másnak: 76 alkalommal
Megköszönték neki: 37 alkalommal
SMA Forráskód: [ Mindet kijelol ]
  1.  
  2. #include <amxmodx>
  3. #include <engine>
  4. #include <nvault>
  5. #include <cstrike>
  6. #include <fun>
  7. #include <fakemeta>
  8. #include <hamsandwich>
  9.  
  10. #define USE_CC 1
  11.  
  12. #if defined USE_CC
  13. #include <colorchat>
  14. #endif
  15.  
  16. #define FREQ 0.1
  17.  
  18. new oles[33], skin[33], vault, KISGRAV, SEBZES, ALAPGRAV, skin_oles, skin_hsoles, skin_kesoles
  19.  
  20. new skin1[121], skin2[121], skin3[121], skin4[121], skin5[121], skin6[121], skin7[121], skin8[121], skin9[121], skin10[121], skin11[121]
  21.  
  22. new const deagle[] = "models/v_deagle.mdl"
  23. new const knife[] = "models/fegyver_skin/v_knife.mdl"
  24. new const awp[] = "models/fegyver_skin/v_awp.mdl"
  25. new const m4a1[] = "models/fegyver_skin/v_m4a1_asiimov.mdl"
  26. new const ak47[] = "models/fegyver_skin/v_ak47.mdl"
  27. new const famas[] = "models/fegyver_skin/v_famas.mdl"
  28. new const galil[] = "models/fegyver_skin/v_galil.mdl"
  29. new const usp[] = "models/fegyver_skin/v_usp.mdl"
  30.  
  31.  
  32. new const g_FegyverNevek[][32] =
  33. {
  34. "Alap Deagle",
  35. "Knife Skin",
  36. "AWP Skin",
  37. "M4A1 Skin",
  38. "AK47 Skin",
  39. "Famas Skin",
  40. "Galil Skin",
  41. "USP Skin"
  42. };
  43.  
  44. public plugin_precache()
  45. {
  46. precache_model(deagle)
  47. precache_model(knife)
  48. precache_model(awp)
  49. precache_model(m4a1)
  50. precache_model(ak47)
  51. precache_model(famas)
  52. precache_model(galil)
  53. precache_model(usp)
  54.  
  55. }
  56. public plugin_init()
  57. {
  58. register_plugin("Fegyver Skinek", "1.0", "6almasok")
  59. set_task(25.0, "KorUzenet", 0, _, _, "b")
  60.  
  61. //*eventek*//
  62. register_event("CurWeapon","fegyverek","be","1=1")
  63. register_event("Damage", "event_sebzes", "be" )
  64. register_event("DeathMsg", "halal", "a" );
  65. register_event("CurWeapon", "fegyverid", "be", "1=1")
  66.  
  67. //*Parancsok*//
  68. register_clcmd("say /skinmenu","menu")
  69. register_clcmd("say /skin","menu")
  70. register_clcmd("say /skinoles","pontmegtekint")
  71. register_clcmd("say /oles","pontmegtekint")
  72. register_clcmd("say /fegyok","menu")
  73. register_clcmd("say /fegyverskin","menu")
  74. register_clcmd("say /fegyomenu","menu")
  75.  
  76. //*Cvarok*//
  77.  
  78. register_cvar("sima_oles", "2");
  79. register_cvar("hs_oles", "2");
  80. register_cvar("kes_oles", "1");
  81.  
  82. skin_oles = get_cvar_num("sima_oles");
  83. skin_hsoles = get_cvar_num("hs_oles");
  84. skin_kesoles = get_cvar_num("kes_oles");
  85. KISGRAV = register_cvar("skin_kisgravity","800")
  86. SEBZES = register_cvar("skin_sebzes", "1")
  87. ALAPGRAV = get_cvar_pointer("sv_gravity")
  88.  
  89. //*vault*//
  90. vault = nvault_open("fegyver_skin")
  91.  
  92. }
  93. public fegyverid(id)
  94. {
  95. new fegyver = get_user_weapon(id)
  96.  
  97. if(skin[id] == 0 && fegyver == CSW_DEAGLE)set_pev(id, pev_viewmodel2, deagle)
  98. if(skin[id] == 1 && fegyver == CSW_KNIFE)set_pev(id, pev_viewmodel2, knife)
  99. if(skin[id] == 2 && fegyver == CSW_AWP)set_pev(id, pev_viewmodel2, awp)
  100. if(skin[id] == 3 && fegyver == CSW_M4A1)set_pev(id, pev_viewmodel2, m4a1)
  101. if(skin[id] == 4 && fegyver == CSW_AK47)set_pev(id, pev_viewmodel2, ak47)
  102. if(skin[id] == 5 && fegyver == CSW_FAMAS)set_pev(id, pev_viewmodel2, famas)
  103. if(skin[id] == 6 && fegyver == CSW_GALIL)set_pev(id, pev_viewmodel2, galil)
  104. if(skin[id] == 7 && fegyver == CSW_USP)set_pev(id, pev_viewmodel2, usp)
  105.  
  106. }
  107. public halal(id)
  108. {
  109. new gyilkos = read_data( 1 );
  110. new aldozat = read_data( 2 );
  111.  
  112. if(gyilkos == aldozat || ! is_user_connected(gyilkos) || ! is_user_connected(aldozat))
  113. {
  114. return PLUGIN_HANDLED;
  115. }
  116. new olesekert = skin_oles;
  117.  
  118. if(read_data(3))
  119. {
  120. olesekert += skin_hsoles;
  121. }
  122.  
  123. static Fegyver[26];
  124.  
  125. read_data(4, Fegyver, sizeof(Fegyver) -1);
  126.  
  127. if(equal(Fegyver,"knife"))
  128. {
  129. olesekert += skin_kesoles;
  130. }
  131. oles[gyilkos] += olesekert;
  132.  
  133. //ColorChat(gyilkos, GREEN, "^3[DeadLine#] ^1Mivel megoltel egy embert ezert kaptal ^3+%i ^1Olespontot.^4Csak igy tovabb.", olesekert);
  134. return PLUGIN_HANDLED;
  135. }
  136. public menu(id) {
  137. new cim[121]
  138. formatex(cim, charsmax(cim), "\wDeadLine#^n\yOlesek : \w%d",oles[id])
  139. new menu = menu_create(cim, "skin_menu");
  140.  
  141. formatex(skin1, charsmax(skin1),"%s", oles[id] >= 300 ? "\wKnife \yTigris Mask \r[Megszerezve]" : "\dKnife \wTigris Mask \r[300 Oles]\y-\r[LEZARVA]");
  142. formatex(skin2, charsmax(skin2),"%s", oles[id] >= 600 ? "\wAWP \yAsiimov \r[Megszerezve]" : "\dAWP \w Asiimov \r[600 Oles]\y-\r[LEZARVA]");
  143. formatex(skin3, charsmax(skin3),"%s", oles[id] >= 700 ? "\wM4A4 \yAsiimov \r[Megszerezve]" : "\dM4A4 \wAsiimov\r[700 Oles]\y-\r[LEZARVA]");
  144. formatex(skin4, charsmax(skin4),"%s", oles[id] >= 700 ? "\wAK47 \yVulcan \r[Megszerezve]" : "\dAK47 \w Vulcan \r[700 Oles]\y-\r[LEZARVA]");
  145. formatex(skin5, charsmax(skin5),"%s", oles[id] >= 550 ? "\wFamas \yImpulzus \r[Megszerezve]" : "\dFamas \wImpulzus \r[550 Oles]\y-\r[LEZARVA]");
  146. formatex(skin6, charsmax(skin6),"%s", oles[id] >= 450 ? "\wGalil \yCerberus \r[Megszerezve]" : "\dGalil \wCerberus \r[450 Oles]\y-\r[LEZARVA]");
  147. formatex(skin7, charsmax(skin7),"%s", oles[id] >= 300 ? "\wUSP \yCaiman \r[Megszerezve]" : "\dUSP \wCaiman \r[300 Oles]\y-\r[LEZARVA]");
  148.  
  149. menu_additem(menu, "\yAlap Deagle \r[Megszerezve]", "1", 0 );
  150. menu_additem(menu, skin1, "2", oles[id] >= 300 ? 0 : 1);
  151. menu_additem(menu, skin2, "3", oles[id] >= 600 ? 0 : 1);
  152. menu_additem(menu, skin3, "4", oles[id] >= 700 ? 0 : 1);
  153. menu_additem(menu, skin4, "5", oles[id] >= 700 ? 0 : 1);
  154. menu_additem(menu, skin5, "6", oles[id] >= 550 ? 0 : 1);
  155. menu_additem(menu, skin6, "7", oles[id] >= 450 ? 0 : 1);
  156. menu_additem(menu, skin7, "8", oles[id] >= 300 ? 0 : 1);
  157.  
  158.  
  159.  
  160.  
  161. menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
  162. menu_setprop(menu, MPROP_BACKNAME, "Vissza");
  163. menu_setprop(menu, MPROP_NEXTNAME, "Elore");
  164. menu_setprop(menu, MPROP_EXITNAME, "Kilepes");
  165. menu_display(id, menu, 0);
  166. }
  167. public pontmegtekint(id)
  168. {
  169. ColorChat(id, GREEN, "^3[DeadLine#] ^4Neked ^3%d ^4olesed van.", oles[id])
  170. }
  171. public event_sebzes( id ) {
  172.  
  173. new aldozat_id = id;
  174. if( !is_user_connected( aldozat_id ) ) return PLUGIN_CONTINUE
  175. new dmg_adas = read_data( 2 );
  176. new dmgtype = read_data( 3 );
  177. new Float:szorzo = get_pcvar_float(SEBZES);
  178. new Float:sebzes = dmg_adas * szorzo;
  179. new elet = get_user_health( aldozat_id );
  180.  
  181. new FegyID, sebzo_id = get_user_attacker( aldozat_id, FegyID );
  182.  
  183. if( !is_user_connected( sebzo_id ) || !is_user_alive( aldozat_id ) ) {
  184. return PLUGIN_HANDLED
  185. }
  186.  
  187. if( FegyID == CSW_AK47 && skin[sebzo_id] == 4 ) {
  188.  
  189. if( floatround(sebzes) >= elet ) {
  190. if( aldozat_id == sebzo_id ) {
  191. return PLUGIN_CONTINUE
  192. }else{
  193. log_kill( sebzo_id, aldozat_id, "ak47", 0 );
  194. }
  195.  
  196. return PLUGIN_CONTINUE
  197. }else {
  198. if( aldozat_id == sebzo_id ) return PLUGIN_CONTINUE
  199.  
  200. fakedamage( aldozat_id, "weapon_ak47", sebzes, dmgtype );
  201. }
  202. }
  203. return PLUGIN_CONTINUE
  204. }
  205. stock log_kill(gyilkos, aldozat, fegyver[],fejloves) {
  206. user_silentkill( aldozat );
  207.  
  208. message_begin( MSG_ALL, get_user_msgid( "DeathMsg" ), {0,0,0}, 0 );
  209. write_byte( gyilkos );
  210. write_byte( aldozat );
  211. write_byte( fejloves );
  212. write_string( fegyver );
  213. message_end();
  214.  
  215. new oles = get_user_frags( gyilkos );
  216. set_user_frags( gyilkos, oles++ );
  217. new elvetel = get_user_frags( aldozat );
  218. set_user_frags( aldozat, elvetel++ );
  219.  
  220. return PLUGIN_CONTINUE
  221. }
  222. public fegyverek(id)
  223. {
  224. new fegyver = get_user_weapon(id)
  225.  
  226. set_user_footsteps(id , ( (skin[id] == 2 && fegyver == CSW_AWP) ? 1 : 0) )
  227.  
  228. // if(fegyver != CSW_M4A1 || skin[id] < 3)
  229. // return PLUGIN_CONTINUE
  230. // else if(skin[id] == 3)
  231. // set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderTransColor, 100)
  232. }
  233. public KorUzenet() {
  234.  
  235. // ColorChat(0, GREEN, "^3[DeadLine#] ^4Ird be ^3/skin ^4hogy megnyisd a ^1Fegyver Skin ^4menut.");
  236. return PLUGIN_HANDLED;
  237. }
  238. public skin_menu(id, menu, item)
  239. {
  240. if( item == MENU_EXIT )
  241. {
  242. menu_destroy(id);
  243. return PLUGIN_HANDLED;
  244. }
  245. new data[9], szName[64];
  246. new access, callback;
  247. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  248. new key = str_to_num(data);
  249.  
  250. ColorChat(id, GREEN, "^4[DeadLine#] ^1Kivalasztottad az ^3%s-t", g_FegyverNevek[item]);
  251.  
  252. switch(key)
  253.  
  254. {
  255. case 1:{
  256. if(oles[id] >= 0)
  257. skin[id] = 0
  258. }
  259. case 2:{
  260. if(oles[id] >= 300)
  261. skin[id] = 1
  262. }
  263. case 3:{
  264. if(oles[id] >= 600)
  265. skin[id] = 2
  266. }
  267. case 4:{
  268. if(oles[id] >= 700)
  269. skin[id] = 3
  270. }
  271. case 5:{
  272. if(oles[id] >= 700)
  273. skin[id] = 4
  274. }
  275. case 6:{
  276. if(oles[id] >= 550)
  277. skin[id] = 5
  278. }
  279. case 7:{
  280. if(oles[id] >= 450)
  281. skin[id] = 6
  282. }
  283. case 8:{
  284. if(oles[id] >= 300)
  285. skin[id] = 7
  286. }
  287. }
  288. menu_destroy(menu)
  289. return PLUGIN_HANDLED
  290. }
  291. public mentes(id)
  292. {
  293. new vaultkey[64],vaultdata[256], authid[32]
  294. get_user_authid(id, authid, 31)
  295. format(vaultkey,63,"%s-SKIN", authid)
  296. format(vaultdata,255,"%i#%i#", oles[id],skin[id])
  297. nvault_set(vault,vaultkey,vaultdata)
  298. return PLUGIN_CONTINUE
  299. }
  300. public betoltes(id)
  301. {
  302. new vaultkey[64],vaultdata[256], authid[32]
  303. get_user_authid(id, authid, 31)
  304. format(vaultkey,63,"%s-SKIN", authid)
  305. format(vaultdata,255,"%i#%i#",oles[id],skin[id])
  306. nvault_get(vault,vaultkey,vaultdata,255)
  307. replace_all(vaultdata, 255, "#", " ")
  308. new str_num[32], skin_num[32]
  309. parse(vaultdata, str_num, 31, skin_num, 31)
  310. oles[id] = str_to_num(str_num)
  311. skin[id] = str_to_num(skin_num)
  312. return PLUGIN_CONTINUE
  313. }
  314. public client_disconnect(id)
  315. {
  316. mentes(id)
  317. }
  318. public client_connect(id)
  319. {
  320. betoltes(id)
  321. }
  322.  

Sziasztok! Ebbe valaki beleírni, hogy egyszerre több skint is lehessen használni?

_________________
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 30 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