hlmod.hu

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



Jelenlévő felhasználók

Jelenleg 255 felhasználó van jelen :: 1 regisztrált, 0 rejtett és 254 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] 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  [ 7 hozzászólás ] 
Szerző Üzenet
 Hozzászólás témája: Smoker Zombi
HozzászólásElküldve: 2013.07.21. 21:01 
Offline
Félisten

Csatlakozott: 2012.06.19. 15:12
Hozzászólások: 926
Megköszönt másnak: 109 alkalommal
Megköszönték neki: 31 alkalommal
Felraktam egy smoker zombit az sma lejjebb van de ezzel a hibával kidob az sma-ban nem látom miért írja akkor?Mod_NumForName:models/player/smoker/smokerT.mdll not found

SMA Forráskód: [ Mindet kijelol ]
  1. #include <amxmodx>
  2. #include <colorchat>
  3. #include <fakemeta>
  4. #include <hamsandwich>
  5. #include <engine>
  6. #include <cs_maxspeed_api>
  7. #include <zp50_core>
  8. #include <zp50_class_nemesis>
  9. #include <zp50_class_survivor>
  10.  
  11. new g_bitAlivePlayers, g_bitUserAllowed
  12. #define MarkUserAlive(%0) g_bitAlivePlayers |= (1 << (%0 & 31))
  13. #define ClearUserAlive(%0) g_bitAlivePlayers &= ~(1 << (%0 & 31))
  14. #define IsUserAlive(%0) g_bitAlivePlayers & (1 << (%0 & 31))
  15.  
  16. #define MarkUserAllow(%0) g_bitUserAllowed |= (1 << (%0 & 31))
  17. #define ClearUserAllow(%0) g_bitUserAllowed &= ~(1 << (%0 & 31))
  18. #define IsUserAllow(%0) g_bitUserAllowed & (1 << (%0 & 31))
  19.  
  20. #define PLUGIN "[ZP] Class: Smoker"
  21. #define VERSION "1.2"
  22. #define AUTHOR "Lambda"
  23.  
  24. #define TASK_REMOVE_SPEED 1322
  25.  
  26. new g_zclass_smoker, g_Line, stunTime, breakDamage
  27.  
  28. new g_sndMiss[] = "zombie_plague/eqtonguemiss.wav"
  29. new g_sndDrag[] = "zombie_plague/eqtonguehit.wav"
  30.  
  31. new g_hooked[33], g_ovr_dmg[33]
  32. new Float:g_lastHook[33]
  33.  
  34. new const zclass_name[] = { "VIP Smoker" }
  35. new const zclass_info[] = { "Grab Players [R]" }
  36. new const zclass_model[][] = { "eqsmoker" }
  37. new const zclass_clawmodel[][] = { "models/zombie_plague/v_smoker_hands.mdl" }
  38. const zclass_health = 2300
  39. const Float:zclass_speed = 270.0
  40. const Float:zclass_gravity = 0.75
  41. const Float:zclass_knockback = 1.0
  42.  
  43.  
  44. public plugin_init()
  45. {
  46. register_plugin(PLUGIN, VERSION, AUTHOR)
  47.  
  48. RegisterHam(Ham_Spawn, "player", "fwd_Ham_Spawn_post", 1);
  49. register_event("DeathMsg", "smoker_death", "a")
  50. register_forward(FM_CmdStart, "fwd_CmdStart")
  51. register_forward(FM_ClientDisconnect, "fw_ClientDisconnect_Post", 1)
  52. RegisterHam(Ham_TakeDamage, "player", "fw_TakeDamage")
  53.  
  54. stunTime = register_cvar("zp_smoker_stun", "2.0")
  55. breakDamage = register_cvar("zp_smoker_break", "100")
  56. }
  57.  
  58. public plugin_precache()
  59. {
  60. g_zclass_smoker = zp_class_zombie_register(zclass_name, zclass_info, zclass_health, zclass_speed, zclass_gravity)
  61.  
  62. new index
  63. zp_class_zombie_register_kb(g_zclass_smoker, zclass_knockback)
  64. for (index = 0; index < sizeof zclass_model; index++)
  65. zp_class_zombie_register_model(g_zclass_smoker, zclass_model[index])
  66. for (index = 0; index < sizeof zclass_clawmodel; index++)
  67. zp_class_zombie_register_claw(g_zclass_smoker, zclass_clawmodel[index])
  68.  
  69. precache_sound(g_sndDrag)
  70. precache_sound(g_sndMiss)
  71. g_Line = precache_model("sprites/zbeam4.spr")
  72. }
  73.  
  74. public zp_fw_core_spawn_post(id)
  75. {
  76. if(is_user_alive(id))
  77. MarkUserAlive(id)
  78. }
  79.  
  80. public client_putinserver(id)
  81. {
  82. ClearUserAlive(id)
  83. ClearUserAllow(id)
  84. }
  85.  
  86. public client_disconnect(id)
  87. {
  88. ClearUserAlive(id)
  89.  
  90. if (g_hooked[id])
  91. drag_end(id)
  92. }
  93.  
  94. public fw_ClientDisconnect_Post(id)
  95. ClearUserAllow(id)
  96.  
  97. public smoker_death()
  98. {
  99. new id = read_data(2)
  100.  
  101. ClearUserAlive(id)
  102. beam_remove(id)
  103.  
  104. if (g_hooked[id])
  105. drag_end(id)
  106. }
  107.  
  108. public zp_fw_core_cure_post(id)
  109. ClearUserAllow(id)
  110.  
  111. public zp_fw_core_infect_post(id)
  112. {
  113. if(zp_class_zombie_get_current(id) != g_zclass_smoker || zp_class_nemesis_get(id))
  114. ClearUserAllow(id)
  115. else
  116. {
  117. MarkUserAllow(id)
  118. g_lastHook[id] = 0.0
  119. ColorChat(id, GREEN, "^1[^4Smoker^1] Press^4 R^1 to use your skills.")
  120. }
  121. }
  122.  
  123. public fwd_CmdStart(id, handle)
  124. {
  125. if (~IsUserAlive(id) || ~IsUserAllow(id))
  126. return
  127.  
  128. static button, oldbutton
  129. button = get_user_button(id)
  130. oldbutton = get_user_oldbutton(id)
  131.  
  132. if (!(oldbutton & IN_RELOAD) && (button & IN_RELOAD))
  133. drag_start(id)
  134.  
  135. if ((oldbutton & IN_RELOAD) && !(button & IN_RELOAD))
  136. drag_end(id)
  137. }
  138.  
  139. public fwd_Ham_Spawn_post(id)
  140. {
  141. if (IsUserAlive(id))
  142. {
  143. if (g_hooked[id])
  144. drag_end(id)
  145. }
  146.  
  147. return HAM_IGNORED;
  148. }
  149.  
  150. public drag_start(id)
  151. {
  152. if (~IsUserAllow(id))
  153. return
  154.  
  155. static Float:cdown
  156. cdown = 50.0
  157.  
  158. if (get_gametime() - g_lastHook[id] < cdown)
  159. {
  160. ColorChat(id, GREEN, "^1[^4ZP^1] You must wait ^4%.f0^1s", cdown - (get_gametime() - g_lastHook[id]))
  161. return
  162. }
  163. else
  164. {
  165. g_lastHook[id] = get_gametime()
  166. new hooktarget, body
  167. get_user_aiming(id, hooktarget, body)
  168.  
  169. if (IsUserAlive(hooktarget))
  170. {
  171. if (!zp_core_is_zombie(hooktarget))
  172. {
  173. if (zp_class_survivor_get(hooktarget))
  174. {
  175. ColorChat(id, GREEN, "^1[^4ZP^1] You can't use this on a Survivor!")
  176. return
  177. }
  178.  
  179. g_hooked[id] = hooktarget
  180. emit_sound(hooktarget, CHAN_BODY, g_sndDrag, 1.0, ATTN_NORM, 0, PITCH_HIGH)
  181. }
  182. else
  183. {
  184. ColorChat(id, GREEN, "^1[^4ZP^1] You can't grab your teammates.")
  185. return
  186. }
  187.  
  188. new parm[2]
  189. parm[0] = id
  190. parm[1] = hooktarget
  191.  
  192. cs_set_player_maxspeed_auto(id, 0.01)
  193. cs_set_player_maxspeed_auto(hooktarget, 0.01)
  194.  
  195. set_task(0.1, "smoker_reelin", id, parm, 2, "b")
  196. if(get_pcvar_float(stunTime) > 0.0)
  197. set_task(get_pcvar_float(stunTime), "RemoveSpeed", hooktarget+TASK_REMOVE_SPEED)
  198. harpoon_target(parm)
  199.  
  200. g_ovr_dmg[id] = 0
  201. }
  202. else
  203. {
  204. g_hooked[id] = 33
  205. noTarget(id)
  206. emit_sound(hooktarget, CHAN_BODY, g_sndMiss, 1.0, ATTN_NORM, 0, PITCH_HIGH)
  207. }
  208. }
  209. }
  210.  
  211. public RemoveSpeed(hooktarget)
  212. {
  213. hooktarget -= TASK_REMOVE_SPEED
  214.  
  215. if (IsUserAlive(hooktarget))
  216. cs_set_player_maxspeed_auto(hooktarget, 1.0)
  217. }
  218.  
  219. public smoker_reelin(parm[])
  220. {
  221. new id = parm[0]
  222. new victim = parm[1]
  223.  
  224. if (!g_hooked[id] || ~IsUserAlive(victim))
  225. {
  226. drag_end(id)
  227. return
  228. }
  229.  
  230. new Float:fl_Velocity[3]
  231. new idOrigin[3], vicOrigin[3]
  232.  
  233. get_user_origin(victim, vicOrigin)
  234. get_user_origin(id, idOrigin)
  235.  
  236. new distance = get_distance(idOrigin, vicOrigin)
  237.  
  238. if (distance > 5)
  239. {
  240. new Float:fl_Time = distance / 180.0
  241.  
  242. fl_Velocity[0] = (idOrigin[0] - vicOrigin[0]) / fl_Time
  243. fl_Velocity[1] = (idOrigin[1] - vicOrigin[1]) / fl_Time
  244. fl_Velocity[2] = (idOrigin[2] - vicOrigin[2]) / fl_Time
  245. }
  246. else
  247. {
  248. fl_Velocity[0] = 0.0
  249. fl_Velocity[1] = 0.0
  250. fl_Velocity[2] = 0.0
  251. drag_end(id)
  252. }
  253.  
  254. entity_set_vector(victim, EV_VEC_velocity, fl_Velocity)
  255. }
  256.  
  257. public drag_end(id)
  258. {
  259. g_hooked[id] = 0
  260.  
  261. beam_remove(id)
  262.  
  263. cs_set_player_maxspeed_auto(id, 1.0)
  264.  
  265. remove_task(id)
  266. }
  267.  
  268. public fw_TakeDamage(victim, inflictor, attacker, Float:damage)
  269. {
  270. if (~IsUserAlive(attacker) || ~IsUserAllow(victim))
  271. return HAM_IGNORED
  272.  
  273. g_ovr_dmg[victim] += floatround(damage)
  274.  
  275. if (g_ovr_dmg[victim] >= get_pcvar_num(breakDamage))
  276. {
  277. g_ovr_dmg[victim] = 0
  278. drag_end(victim)
  279. }
  280.  
  281. return HAM_IGNORED
  282. }
  283.  
  284. public harpoon_target(parm[])
  285. {
  286. new id = parm[0]
  287. new hooktarget = parm[1]
  288.  
  289. message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
  290. write_byte(8) // TE_BEAMENTS
  291. write_short(id)
  292. write_short(hooktarget)
  293. write_short(g_Line) // sprite index
  294. write_byte(0) // start frame
  295. write_byte(0) // framerate
  296. write_byte(200) // life
  297. write_byte(8) // width
  298. write_byte(1) // noise
  299. write_byte(155) // r
  300. write_byte(155) // g
  301. write_byte(55) // b
  302. write_byte(90) // brightness
  303. write_byte(10) // speed
  304. message_end()
  305. }
  306.  
  307. public noTarget(id)
  308. {
  309. new endorigin[3]
  310. get_user_origin(id, endorigin, 3)
  311.  
  312. message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
  313. write_byte( TE_BEAMENTPOINT ); // TE_BEAMENTPOINT
  314. write_short(id)
  315. write_coord(endorigin[0])
  316. write_coord(endorigin[1])
  317. write_coord(endorigin[2])
  318. write_short(g_Line) // sprite index
  319. write_byte(0) // start frame
  320. write_byte(0) // framerate
  321. write_byte(200) // life
  322. write_byte(8) // width
  323. write_byte(1) // noise
  324. write_byte(155) // r
  325. write_byte(155) // g
  326. write_byte(55) // b
  327. write_byte(75) // brightness
  328. write_byte(0) // speed
  329. message_end()
  330. }
  331.  
  332. public beam_remove(id)
  333. {
  334. message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
  335. write_byte(99) //TE_KILLBEAM
  336. write_short(id) //entity
  337. message_end()
  338. }
  339.  

_________________
Kép


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Smoker Zombi
HozzászólásElküldve: 2013.07.21. 21:03 
Offline
Őstag
Avatar

Csatlakozott: 2011.11.15. 16:29
Hozzászólások: 1142
Megköszönt másnak: 8 alkalommal
Megköszönték neki: 24 alkalommal
rakd fel a modelleket is.....

_________________
[url=http://www.gametracker.com/server_info/188.227.227.114:27286/][img]http://cache.www.gametracker.com/server_info/188.227.227.114:27286/b_350_20_323957_202743_F19A15_111111.png[/img][/url]


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Smoker Zombi
HozzászólásElküldve: 2013.07.21. 21:04 
Offline
Félisten

Csatlakozott: 2012.06.19. 15:12
Hozzászólások: 926
Megköszönt másnak: 109 alkalommal
Megköszönték neki: 31 alkalommal
chasper.cfg írta:
rakd fel a modelleket is.....

Ide?

_________________
Kép


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Smoker Zombi
HozzászólásElküldve: 2013.07.21. 21:22 
Offline
Veterán
Avatar

Csatlakozott: 2011.11.17. 15:48
Hozzászólások: 1904
Megköszönt másnak: 17 alkalommal
Megköszönték neki: 54 alkalommal
smokerT.mdl nincs fent, azaz nemtalálja.


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Smoker Zombi
HozzászólásElküldve: 2013.07.21. 21:29 
Offline
Félisten

Csatlakozott: 2012.06.19. 15:12
Hozzászólások: 926
Megköszönt másnak: 109 alkalommal
Megköszönték neki: 31 alkalommal
pocok5 írta:
smokerT.mdl nincs fent, azaz nemtalálja.


Azt én is észre vettem de az sma-ba nincs olyan.

_________________
Kép


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Smoker Zombi
HozzászólásElküldve: 2013.07.21. 21:35 
Offline
Veterán
Avatar

Csatlakozott: 2011.11.17. 15:48
Hozzászólások: 1904
Megköszönt másnak: 17 alkalommal
Megköszönték neki: 54 alkalommal
Tomos írta:
pocok5 írta:
smokerT.mdl nincs fent, azaz nemtalálja.


Azt én is észre vettem de az sma-ba nincs olyan.

Az nincs mert az a modelhez tartozik ;)


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Smoker Zombi
HozzászólásElküldve: 2013.07.22. 08:27 
Offline
Őstag
Avatar

Csatlakozott: 2011.11.15. 16:29
Hozzászólások: 1142
Megköszönt másnak: 8 alkalommal
Megköszönték neki: 24 alkalommal
tessék


Csatolmányok:
smokermodellek.zip [980.39 KiB]
Letöltve 19 alkalommal.

_________________
[url=http://www.gametracker.com/server_info/188.227.227.114:27286/][img]http://cache.www.gametracker.com/server_info/188.227.227.114:27286/b_350_20_323957_202743_F19A15_111111.png[/img][/url]
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  [ 7 hozzászólás ] 


Ki van itt

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