hlmod.hu
https://hlmod.hu/

[TuT] Hogyan cseréljük ki a fegyvernek a lővési hangját
https://hlmod.hu/viewtopic.php?f=24&t=28383
Oldal: 1 / 1

Szerző:  Zoe [2017.10.29. 12:18 ]
Hozzászólás témája:  [TuT] Hogyan cseréljük ki a fegyvernek a lővési hangját

Ma megmutatom, hogyan cseréljük ki a fegyvernek a hangját a nélkül hogy sok dolgot átirnánk.
Láttam a forumon sok dolgot szóval ügy gondoltam be mutatom ahogy én tanulltam meg.
Lusta és fekvő ember vagyok szóval egyból bele és kezdek.

  1. new gi_TempClip
  2.  
  3. public plugin_init()
  4. {
  5.     register_plugin("Plugin", "1.0", "Author")
  6.  
  7.     //Az elsődleges fegyver támadás bekötése
  8.     RegisterHam(Ham_Weapon_PrimaryAttack, "weapon_ak47", "hook_weaponattack_pre", 0)
  9.     RegisterHam(Ham_Weapon_PrimaryAttack, "weapon_ak47", "hook_weaponattack_post", 1)
  10. }
  11.  
  12. public hook_weaponattack_pre(iWeapon)
  13. {
  14.      new iWeaponClip = get_pdata_int(iWeapon, 51, 4)
  15.      gi_TempClip = iWeaponClip
  16. }
  17.  
  18. public hook_weaponattack_post(iWeapon)
  19. {
  20.       new iPlayer = get_pdata_cbase(iWeapon, 41, 4)
  21.       new iWeaponClip = get_pdata_int(iWeapon, 51, 4)
  22.  
  23.       if(gi_TempClip > iWeaponClip)
  24.       {
  25.              switch(random_num(0, 1))
  26.              {
  27.                  case 0: emit_sound(iPlayer, CHAN_WEAPON, "weapons/famas-1.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
  28.                  case 1: emit_sound(iPlayer, CHAN_WEAPON, "weapons/famas-2.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
  29.              }
  30.       }
  31. }

Szerző:  zack1337 [2017.10.30. 09:51 ]
Hozzászólás témája:  Re: [TuT] Hogyan cseréljük ki a fegyvernek a lővési hangját

A tutoriálok lényege az, hogy másokkal megértesd, ne kész sc-t rakj eléjük. Mi micsoda? Mi miért van úgy? Mit jelent ami oda van írva? Miért csináltad azt?

Szerző:  Zoe [2017.10.30. 20:05 ]
Hozzászólás témája:  Re: [TuT] Hogyan cseréljük ki a fegyvernek a lővési hangját

zack1337 írta:
A tutoriálok lényege az, hogy másokkal megértesd, ne kész sc-t rakj eléjük. Mi micsoda? Mi miért van úgy? Mit jelent ami oda van írva? Miért csináltad azt?

Mikor lesz idom holnapi nap folyaman Szerkesztem. Am van a forumon a hamsandiwchrol par tut..

Szerző:  Jucika [2017.12.02. 08:35 ]
Hozzászólás témája:  Re: [TuT] Hogyan cseréljük ki a fegyvernek a lővési hangját

Így miért nem egyszerűb?

Ez lejátssza a hang.wav hangot minden lövésnél:
  1. include <amxmodx>
  2. #include <fakemeta>
  3.  
  4. public plugin_init( )
  5. {
  6.     register_plugin( "", "1.0", "JuciKAAA" );
  7.    
  8.     register_forward( FM_CmdStart, "fw_CmdStart", 0 );
  9. }
  10.  
  11. public plugin_precache( ) { precache_sound( "hang/hang.wav" ); }
  12.  
  13. public fw_CmdStart( iId, iHandle, iSeed )
  14. {
  15.     if ( !is_user_alive( iId ) ) return FMRES_IGNORED;
  16.    
  17.     new iButton = get_uc( iHandle, UC_Buttons );
  18.    
  19.     if ( iButton & IN_ATTACK )
  20.     {
  21.         client_cmd( iId, "spk hang/hang.wav" );
  22.         iButton &= ~IN_ATTACK;
  23.         set_uc( iHandle, UC_Buttons, iButton );
  24.        
  25.         return FMRES_HANDLED;
  26.     }
  27.     return FMRES_IGNORED;
  28. }


Ha pedig az kell, hogy minden fegyver lövés hangja ugyanaz legyen akkor tessék ez:

  1. #include <amxmodx>
  2. #include <fakemeta>
  3.  
  4. public plugin_init( )
  5. {
  6.     register_plugin( "", "1.0", "JuCi" );
  7.    
  8.     register_forward( FM_EmitSound, "fw_EmitSound" );
  9. }
  10.  
  11. public plugin_precache( ) { precache_sound( "hang/hang.wav" ); }
  12.  
  13. public fw_EmitSound( iId, iChannel, sSample[ ] )
  14. {
  15.     if ( !is_user_alive( iId ) ) return FMRES_IGNORED;
  16.    
  17.     emit_sound( iId, CHAN_WEAPON, "hang/hang.wav", VOL_NORM, ATTN_NORM, 0, PITCH_NORM );
  18.    
  19.     return FMRES_SUPERCEDE;
  20. }

Szerző:  Pika [2017.12.02. 08:40 ]
Hozzászólás témája:  Re: [TuT] Hogyan cseréljük ki a fegyvernek a lővési hangját

Jucika írta:
Így miért nem egyszerűb?

Ez lejátssza a hang.wav hangot minden lövésnél:
  1. include <amxmodx>
  2. #include <fakemeta>
  3.  
  4. public plugin_init( )
  5. {
  6.     register_plugin( "", "1.0", "JuciKAAA" );
  7.    
  8.     register_forward( FM_CmdStart, "fw_CmdStart", 0 );
  9. }
  10.  
  11. public plugin_precache( ) { precache_sound( "hang/hang.wav" ); }
  12.  
  13. public fw_CmdStart( iId, iHandle, iSeed )
  14. {
  15.     if ( !is_user_alive( iId ) ) return FMRES_IGNORED;
  16.    
  17.     new iButton = get_uc( iHandle, UC_Buttons );
  18.    
  19.     if ( iButton & IN_ATTACK )
  20.     {
  21.         client_cmd( iId, "spk hang/hang.wav" );
  22.         iButton &= ~IN_ATTACK;
  23.         set_uc( iHandle, UC_Buttons, iButton );
  24.        
  25.         return FMRES_HANDLED;
  26.     }
  27.     return FMRES_IGNORED;
  28. }


Ha pedig az kell, hogy minden fegyver lövés hangja ugyanaz legyen akkor tessék ez:

  1. #include <amxmodx>
  2. #include <fakemeta>
  3.  
  4. public plugin_init( )
  5. {
  6.     register_plugin( "", "1.0", "JuCi" );
  7.    
  8.     register_forward( FM_EmitSound, "fw_EmitSound" );
  9. }
  10.  
  11. public plugin_precache( ) { precache_sound( "hang/hang.wav" ); }
  12.  
  13. public fw_EmitSound( iId, iChannel, sSample[ ] )
  14. {
  15.     if ( !is_user_alive( iId ) ) return FMRES_IGNORED;
  16.    
  17.     emit_sound( iId, CHAN_WEAPON, "hang/hang.wav", VOL_NORM, ATTN_NORM, 0, PITCH_NORM );
  18.    
  19.     return FMRES_SUPERCEDE;
  20. }


Használd az eszed kérlek. És az alap lövés hangal mi lesz? Azt hiszed ha lejátszol egy hangot pluginnal, nem marad meg az eredeti?

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