hlmod.hu
https://hlmod.hu/

Knife-mod
https://hlmod.hu/viewtopic.php?f=9&t=10521
Oldal: 2 / 2

Szerző:  stupid [ 2013.08.27. 17:44 ]
Hozzászólás témája:  Re: Knife-mod

Akkor: Kés combo :D Szerintem más késről váltasz gyorsra és akkor váltogasd és utánna próbáld

Szerző:  Painci [ 2013.08.27. 17:48 ]
Hozzászólás témája:  Re: Knife-mod

stupid írta:
Akkor: Kés combo :D Szerintem más késről váltasz gyorsra és akkor váltogasd és utánna próbáld

Ugyse jó :S

Itt van a forráskód, ha ez segíthet valamit:
SMA Forráskód: [ Mindet kijelol ]
  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <engine>
  4. #include <vault>
  5. #include <fun>
  6.  
  7. #define PLUGIN "Knife Mod"
  8. #define VERSION "1.0"
  9. #define AUTHOR "spunko"
  10.  
  11. #define TASK_INTERVAL 4.0
  12. #define MAX_HEALTH 255
  13.  
  14. new knife_model[33]
  15. new g_Menu
  16.  
  17. new CVAR_HIGHSPEED
  18. new CVAR_LOWSPEED
  19. new CVAR_LOWGRAV
  20. new CVAR_NORMGRAV
  21. new CVAR_HEALTH_ADD
  22. new CVAR_HEALTH_MAX
  23. new CVAR_DAMAGE
  24.  
  25. public plugin_init() {
  26.  
  27. register_plugin(PLUGIN, VERSION, AUTHOR)
  28.  
  29. register_event( "Damage", "event_damage", "be" )
  30. register_event("CurWeapon","CurWeapon","be","1=1")
  31.  
  32. g_Menu = register_menuid("Knife Mod")
  33. register_menucmd(g_Menu, 1023, "knifemenu")
  34.  
  35. register_clcmd("say /knife", "display_knife")
  36.  
  37. CVAR_HIGHSPEED = register_cvar("km_highspeed","340")
  38. CVAR_LOWSPEED = register_cvar("km_lowspeed","170")
  39. CVAR_HEALTH_ADD = register_cvar("km_addhealth", "3")
  40. CVAR_HEALTH_MAX = register_cvar("km_maxhealth", "75")
  41. CVAR_DAMAGE = register_cvar("km_damage", "2")
  42. CVAR_LOWGRAV = register_cvar("km_lowgravity" , "400")
  43. CVAR_NORMGRAV = get_cvar_pointer("sv_gravity")
  44.  
  45. set_task(480.0, "kmodmsg", 0, _, _, "b")
  46. }
  47.  
  48. public plugin_precache() {
  49. precache_model("models/ImL-Knife/v_butcher.mdl")
  50. precache_model("models/ImL-Knife/p_butcher.mdl")
  51. precache_model("models/ImL-Knife/v_machete.mdl")
  52. precache_model("models/ImL-Knife/p_machete.mdl")
  53. precache_model("models/ImL-Knife/v_bak.mdl")
  54. precache_model("models/ImL-Knife/p_bak.mdl")
  55. precache_model("models/ImL-Knife/v_pocket.mdl")
  56. precache_model("models/ImL-Knife/p_pocket.mdl")
  57. precache_model("models/v_knife.mdl")
  58. precache_model("models/p_knife.mdl")
  59. }
  60.  
  61. public display_knife(id) {
  62. new menuBody[512]
  63. add(menuBody, 511, "\r Valassz kest\w^n^n")
  64. add(menuBody, 511, "1. \y Machete\w^n")
  65. add(menuBody, 511, "2. \y Bak \w^n")
  66. add(menuBody, 511, "3. \y Pocket\w^n")
  67. add(menuBody, 511, "4. \y Butcher\w^n")
  68. add(menuBody, 511, "5. \y Default\w^n^n")
  69. add(menuBody, 511, "0. \r Nem kell kes!^n")
  70.  
  71. new keys = ( 1<<0 | 1<<1 | 1<<2 | 1<<3 | 1<<4 | 1<<9 )
  72. show_menu(id, keys, menuBody, -1, "Knife Mod")
  73. }
  74.  
  75. public knifemenu(id, key) {
  76. switch(key)
  77. {
  78. case 0: SetKnife(id , 4)
  79. case 1: SetKnife(id , 2)
  80. case 2: SetKnife(id , 3)
  81. case 3: SetKnife(id , 1)
  82. case 4: SetKnife(id , 0)
  83. default: return PLUGIN_HANDLED
  84. }
  85. SaveData(id)
  86. return PLUGIN_HANDLED
  87. }
  88.  
  89. public SetKnife(id , Knife) {
  90. knife_model[id] = Knife
  91.  
  92. new Clip, Ammo, Weapon = get_user_weapon(id, Clip, Ammo)
  93. if ( Weapon != CSW_KNIFE )
  94. return PLUGIN_HANDLED
  95.  
  96. new vModel[56],pModel[56]
  97.  
  98. switch(Knife)
  99. {
  100. case 0: {
  101. format(vModel,55,"models/v_knife.mdl")
  102. format(pModel,55,"models/p_knife.mdl")
  103. }
  104. case 1: {
  105. format(vModel,55,"models/ImL-Knife/v_butcher.mdl")
  106. format(pModel,55,"models/ImL-Knife/p_butcher.mdl")
  107. }
  108. case 2: {
  109. format(vModel,55,"models/ImL-Knife/v_bak.mdl")
  110. format(pModel,55,"models/ImL-Knife/p_bak.mdl")
  111. }
  112. case 3: {
  113. format(vModel,55,"models/ImL-Knife/v_pocket.mdl")
  114. format(pModel,55,"models/ImL-Knife/p_pocket.mdl")
  115. }
  116. case 4: {
  117. format(vModel,55,"models/ImL-Knife/v_machete.mdl")
  118. format(pModel,55,"models/ImL-Knife/p_machete.mdl")
  119. }
  120. }
  121.  
  122. entity_set_string(id, EV_SZ_viewmodel, vModel)
  123. entity_set_string(id, EV_SZ_weaponmodel, pModel)
  124.  
  125. return PLUGIN_HANDLED;
  126. }
  127.  
  128. public event_damage( id ) {
  129.  
  130. new victim_id = id;
  131. if( !is_user_connected( victim_id ) ) return PLUGIN_CONTINUE
  132. new dmg_take = read_data( 2 );
  133. new dmgtype = read_data( 3 );
  134. new Float:multiplier = get_pcvar_float(CVAR_DAMAGE);
  135. new Float:damage = dmg_take * multiplier;
  136. new health = get_user_health( victim_id );
  137.  
  138. new iWeapID, attacker_id = get_user_attacker( victim_id, iWeapID );
  139.  
  140. if( !is_user_connected( attacker_id ) || !is_user_alive( victim_id ) ) {
  141. return PLUGIN_HANDLED
  142. }
  143.  
  144. if( iWeapID == CSW_KNIFE && knife_model[attacker_id] == 4 ) {
  145.  
  146. if( floatround(damage) >= health ) {
  147. if( victim_id == attacker_id ) {
  148. return PLUGIN_CONTINUE
  149. }else{
  150. log_kill( attacker_id, victim_id, "knife", 0 );
  151. }
  152.  
  153. return PLUGIN_CONTINUE
  154. }else {
  155. if( victim_id == attacker_id ) return PLUGIN_CONTINUE
  156.  
  157. fakedamage( victim_id, "weapon_knife", damage, dmgtype );
  158. }
  159. }
  160. return PLUGIN_CONTINUE
  161. }
  162.  
  163. public CurWeapon(id)
  164. {
  165. new Weapon = read_data(2)
  166.  
  167. // Set Knife Model
  168. SetKnife(id, knife_model[id])
  169.  
  170. // Task Options
  171.  
  172. if(knife_model[id] == 0 && !task_exists(id) && Weapon == CSW_KNIFE)
  173. set_task(TASK_INTERVAL , "task_healing",id,_,_,"b")
  174. else if(task_exists(id))
  175. remove_task(id)
  176.  
  177. // Abilities
  178. set_user_footsteps(id , ( (knife_model[id] == 2 && Weapon == CSW_KNIFE) ? 1 : 0) )
  179.  
  180. new Float:Gravity = ((knife_model[id] == 1 && Weapon == CSW_KNIFE)? get_pcvar_float(CVAR_LOWGRAV) : get_pcvar_float(CVAR_NORMGRAV)) / 800.0
  181. set_user_gravity(id , Gravity)
  182.  
  183. // Speed
  184. new Float:Speed
  185. if(Weapon != CSW_KNIFE || knife_model[id] < 3)
  186. return PLUGIN_CONTINUE
  187. else if(knife_model[id] == 3)
  188. Speed = get_pcvar_float(CVAR_HIGHSPEED)
  189. else if(knife_model[id] == 4)
  190. Speed = get_pcvar_float(CVAR_LOWSPEED)
  191.  
  192. set_user_maxspeed(id, Speed)
  193.  
  194. return PLUGIN_HANDLED
  195.  
  196. }
  197.  
  198. stock log_kill(killer, victim, weapon[],headshot) {
  199. user_silentkill( victim );
  200.  
  201. message_begin( MSG_ALL, get_user_msgid( "DeathMsg" ), {0,0,0}, 0 );
  202. write_byte( killer );
  203. write_byte( victim );
  204. write_byte( headshot );
  205. write_string( weapon );
  206. message_end();
  207.  
  208. new kfrags = get_user_frags( killer );
  209. set_user_frags( killer, kfrags++ );
  210. new vfrags = get_user_frags( victim );
  211. set_user_frags( victim, vfrags++ );
  212.  
  213. return PLUGIN_CONTINUE
  214. }
  215.  
  216.  
  217. public task_healing(id) {
  218. new addhealth = get_pcvar_num(CVAR_HEALTH_ADD)
  219. if (!addhealth)
  220. return
  221.  
  222. new maxhealth = get_pcvar_num(CVAR_HEALTH_MAX)
  223. if (maxhealth > MAX_HEALTH) {
  224. set_pcvar_num(CVAR_HEALTH_MAX, MAX_HEALTH)
  225. maxhealth = MAX_HEALTH
  226. }
  227.  
  228. new health = get_user_health(id)
  229.  
  230. if (is_user_alive(id) && (health < maxhealth)) {
  231. set_user_health(id, health + addhealth)
  232. set_hudmessage(0, 255, 0, -1.0, 0.25, 0, 1.0, 2.0, 0.1, 0.1, 4)
  233. show_hudmessage(id,"<< !!Elet toltodik!! >>")
  234. message_begin(MSG_ONE, get_user_msgid("ScreenFade"), {0,0,0}, id)
  235. write_short(1<<10)
  236. write_short(1<<10)
  237. write_short(0x0000)
  238. write_byte(0)
  239. write_byte(200)
  240. write_byte(0)
  241. write_byte(75)
  242. message_end()
  243. }
  244.  
  245. else {
  246. if (is_user_alive(id) && (health > maxhealth))
  247. remove_task(id)
  248. }
  249. }
  250.  
  251. public client_disconnect(id) {
  252. if(task_exists(id)) remove_task(id)
  253. }
  254.  
  255.  
  256.  
  257.  
  258.  
  259. public client_authorized(id)
  260. {
  261. LoadData(id)
  262. }
  263.  
  264. SaveData(id)
  265. {
  266.  
  267. new authid[32]
  268. get_user_authid(id, authid, 31)
  269.  
  270. new vaultkey[64]
  271. new vaultdata[64]
  272.  
  273. format(vaultkey, 63, "KMOD_%s", authid)
  274. format(vaultdata, 63, "%d", knife_model[id])
  275. set_vaultdata(vaultkey, vaultdata)
  276. }
  277.  
  278. LoadData(id)
  279. {
  280. new authid[32]
  281. get_user_authid(id,authid,31)
  282.  
  283. new vaultkey[64], vaultdata[64]
  284.  
  285. format(vaultkey, 63, "KMOD_%s", authid)
  286. get_vaultdata(vaultkey, vaultdata, 63)
  287. knife_model[id] = str_to_num(vaultdata)
  288.  
  289. }
  290. /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
  291. *{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1033\\ f0\\ fs16 \n\\ par }
  292. */
  293.  

Szerző:  Anonymous1337 [ 2013.08.27. 17:54 ]
Hozzászólás témája:  Re: Knife-mod

CVAR_HIGHSPEED = register_cvar("km_highspeed","340")


ird át 500 ra


edit. 37. sorba van.


mentsd el, majd compiláld át .amxx é, utánna a régi plugint írd felül.

Szerző:  stupid [ 2013.08.27. 17:55 ]
Hozzászólás témája:  Re: Knife-mod

Semmi warning se error lehet nálad van baj.

Anonymus: ezt próbálom neki elmagyarázni.

Szerző:  Anonymous1337 [ 2013.08.27. 17:56 ]
Hozzászólás témája:  Re: Knife-mod

stupid írta:
Semmi warning se error lehet nálad van baj.




'....................


nem a kód nem jó, hanem az érték...

editeltem, csináld végig amit irtam..

ezt offnak szántad stupid?..

Szerző:  Painci [ 2013.08.27. 17:57 ]
Hozzászólás témája:  Re: Knife-mod

stupid írta:
Semmi warning se error lehet nálad van baj.

Anonymus: ezt próbálom neki elmagyarázni.

Probáltam már, de nem jó :D

Szerző:  Anonymous1337 [ 2013.08.27. 18:04 ]
Hozzászólás témája:  Re: Knife-mod

stupid írta:
Azért álljunk meg. Ne okoskodjál ano, mert elmondtam már neki ha tudnál olvasni. De most van az hogy te folyton aszondod offolok. Te semmi mást nem tudsz elképzelni csak azt hogy neked legyen igazad. Lehet hogy nála van baj és azt a cvart elmagyaráztam és nincs baj vele.



örülj hogy nem bannoltak...duppla acc..ne nekem magyarázz..


ui. próbáld meg, a gyári modelst visszatenni.
ahogy eredetileg is volt

Szerző:  Painci [ 2013.08.27. 18:06 ]
Hozzászólás témája:  Re: Knife-mod

Anonymous1337 írta:
stupid írta:
Azért álljunk meg. Ne okoskodjál ano, mert elmondtam már neki ha tudnál olvasni. De most van az hogy te folyton aszondod offolok. Te semmi mást nem tudsz elképzelni csak azt hogy neked legyen igazad. Lehet hogy nála van baj és azt a cvart elmagyaráztam és nincs baj vele.



örülj hogy nem bannoltak...duppla acc..ne nekem magyarázz..


ui. próbáld meg, a gyári modelst visszatenni.
ahogy eredetileg is volt

Probáltam, de úgysem jó, plugin lehet az oka?

Szerző:  HTML [ 2013.08.28. 10:40 ]
Hozzászólás témája:  Re: Knife-mod

stupid írta:
Kezdőknek mondod a magadét. Na de legyen. Dupla acc az a név miatt volt .2 Te ne haragudj már ha nem tudsz valamit vagy csak itt offolsz hamár megadtam a megoldást, akkor NE okoskodjál itt. Engedd hogy mások is sikeresek legyenek ne csak te.


Veszekedtek mint két hülye kisgyerek...
Inkább a megoldást irnátok
sv_maxspeedet a server.cfgbe állitsd át 500-ra!
Ha igy sem megy,akkor még tudok javasolni

Oldal: 2 / 2 Minden időpont UTC+02:00 időzóna szerinti
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/