View Single Post
quilhos
Veteran Member
Join Date: Jun 2010
Old 12-25-2014 , 02:19   Re: Jump Sound Blocker
Reply With Quote #24

Hey there.
Can you tell me if there is any way to use the plugin without setting mp_footstep 0?

I want to make a version of it, for spectators, so that the sound of them jumping dont affect the people that is actually playing the game mod. I been trying and come up with this adjustments (not working)

PHP Code:
#include <amxmodx>
#include <cstrike>
#include <orpheu_stocks>
#include <hlsdk_const>

#define PLUGIN             "Jump Sound Blocker"
#define VERSION         "1.0.2"
#define AUTHOR             "hornet"

enum
{
    
    
STEP_CONCRETE,
    
STEP_METAL,
    
STEP_DIRT,
    
STEP_VENT,      
    
STEP_GRATE,     
    
STEP_TILE,
    
STEP_SLOSH,
    
STEP_WADE,       
    
STEP_LADDER,    
    
STEP_SNOW
    
STEP_GRASS
}

new 
OrpheuStruct:g_ppmove;

new 
g_iBlockStep33 ]; 

public 
plugin_init() 
{
    
register_pluginPLUGINVERSIONAUTHOR );
    
    
OrpheuRegisterHookOrpheuGetDLLFunction"pfnPM_Move""PM_Move" ), "OnPM_Move" );
    
OrpheuRegisterHookOrpheuGetFunction"PM_PlayStepSound" ), "OnPM_PlayStepSound" );
}

public 
OrpheuHookReturn:OnPM_MoveOrpheuStruct:ppmoveserver )
{
    
g_ppmove ppmove;
    
    new 
iPlayer OrpheuGetStructMemberppmove"player_index" ) + 1;
    
    if( 
cs_get_user_teamiPlayer ) == CS_TEAM_SPECTATOR )
    {
        if( ( 
OrpheuGetStructMemberOrpheuStruct:OrpheuGetStructMemberppmove"cmd" ), "buttons" ) & IN_JUMP  )
        &&( !( 
OrpheuGetStructMemberppmove"oldbuttons" ) & IN_JUMP ) )
        &&( 
OrpheuGetStructMemberppmove"onground" ) != -) )
            
g_iBlockStepiPlayer ] = 1;
    }
}

public 
OrpheuHookReturn:OnPM_PlayStepSoundiStepFloat:flVol )
{
    new 
iPlayer OrpheuGetStructMemberg_ppmove"player_index" ) + 1;
    
    switch( 
g_iBlockStepiPlayer ] )
    {
        case 
1
        {
            
g_iBlockStepiPlayer ] = 2;
            return 
OrpheuSupercede;
        }
        
        case 
2:
        {
            
g_iBlockStepiPlayer ] = 0;
            return 
OrpheuSupercede;
        }
    }
    
    new 
iRand random_num0);
    
    switch ( 
iStep )
    {
        case 
STEP_METAL:
        {
            switch( 
iRand )
            {
                case 
0emit_soundiPlayerCHAN_BODY"player/pl_metal1.wav"flVolATTN_NORM0PITCH_NORM );
                case 
1emit_soundiPlayerCHAN_BODY"player/pl_metal3.wav"flVolATTN_NORM0PITCH_NORM );
                case 
2emit_soundiPlayerCHAN_BODY"player/pl_metal2.wav"flVolATTN_NORM0PITCH_NORM );
                case 
3emit_soundiPlayerCHAN_BODY"player/pl_metal4.wav"flVolATTN_NORM0PITCH_NORM );
            }
        
        }
        
        case 
STEP_DIRT:
        {
            switch( 
iRand )
            {
                case 
0emit_soundiPlayerCHAN_BODY"player/pl_dirt1.wav"flVolATTN_NORM0PITCH_NORM );
                case 
1emit_soundiPlayerCHAN_BODY"player/pl_dirt3.wav"flVolATTN_NORM0PITCH_NORM );
                case 
2emit_soundiPlayerCHAN_BODY"player/pl_dirt2.wav"flVolATTN_NORM0PITCH_NORM );
                case 
3emit_soundiPlayerCHAN_BODY"player/pl_dirt4.wav"flVolATTN_NORM0PITCH_NORM );
            }
        }
        
        case 
STEP_VENT:
        {
            switch( 
iRand )
            {
                case 
0emit_soundiPlayerCHAN_BODY"player/pl_duct1.wav"flVolATTN_NORM0PITCH_NORM );
                case 
1emit_soundiPlayerCHAN_BODY"player/pl_duct3.wav"flVolATTN_NORM0PITCH_NORM );
                case 
2emit_soundiPlayerCHAN_BODY"player/pl_duct2.wav"flVolATTN_NORM0PITCH_NORM );
                case 
3emit_soundiPlayerCHAN_BODY"player/pl_duct4.wav"flVolATTN_NORM0PITCH_NORM );
            }
        }
        
        case 
STEP_GRATE:
        {
            switch( 
iRand )
            {
                case 
0emit_soundiPlayerCHAN_BODY"player/pl_grate1.wav"flVolATTN_NORM0PITCH_NORM );
                case 
1emit_soundiPlayerCHAN_BODY"player/pl_grate3.wav"flVolATTN_NORM0PITCH_NORM );
                case 
2emit_soundiPlayerCHAN_BODY"player/pl_grate2.wav"flVolATTN_NORM0PITCH_NORM );
                case 
3emit_soundiPlayerCHAN_BODY"player/pl_grate4.wav"flVolATTN_NORM0PITCH_NORM );
            }
        
        }
        
        case 
STEP_TILE:
        {
            switch( 
iRand )
            {
                case 
0emit_soundiPlayerCHAN_BODY"player/pl_tile1.wav"flVolATTN_NORM0PITCH_NORM );
                case 
1emit_soundiPlayerCHAN_BODY"player/pl_tile3.wav"flVolATTN_NORM0PITCH_NORM );
                case 
2emit_soundiPlayerCHAN_BODY"player/pl_tile2.wav"flVolATTN_NORM0PITCH_NORM );
                case 
3emit_soundiPlayerCHAN_BODY"player/pl_tile4.wav"flVolATTN_NORM0PITCH_NORM );
            }
        }
        
        case 
STEP_SLOSH:
        {
            switch( 
iRand )
            {    
                case 
0emit_soundiPlayerCHAN_BODY"player/pl_slosh1.wav"flVolATTN_NORM0PITCH_NORM );
                case 
1emit_soundiPlayerCHAN_BODY"player/pl_slosh3.wav"flVolATTN_NORM0PITCH_NORM );
                case 
2emit_soundiPlayerCHAN_BODY"player/pl_slosh2.wav"flVolATTN_NORM0PITCH_NORM );
                case 
3emit_soundiPlayerCHAN_BODY"player/pl_slosh4.wav"flVolATTN_NORM0PITCH_NORM );
            }
        }
        
        case 
STEP_WADE:
        {
            switch( 
iRand )
            {
                case 
0emit_soundiPlayerCHAN_BODY"player/pl_wade1.wav"flVolATTN_NORM0PITCH_NORM );
                case 
1emit_soundiPlayerCHAN_BODY"player/pl_wade2.wav"flVolATTN_NORM0PITCH_NORM );
                case 
2emit_soundiPlayerCHAN_BODY"player/pl_wade3.wav"flVolATTN_NORM0PITCH_NORM );
                case 
3emit_soundiPlayerCHAN_BODY"player/pl_wade4.wav"flVolATTN_NORM0PITCH_NORM );
            }
        }
        
        case 
STEP_LADDER:
        {
            switch( 
iRand )
            {                
                case 
0emit_soundiPlayerCHAN_BODY"player/pl_ladder1.wav"flVolATTN_NORM0PITCH_NORM );
                case 
1emit_soundiPlayerCHAN_BODY"player/pl_ladder3.wav"flVolATTN_NORM0PITCH_NORM );
                case 
2emit_soundiPlayerCHAN_BODY"player/pl_ladder2.wav"flVolATTN_NORM0PITCH_NORM );
                case 
3emit_soundiPlayerCHAN_BODY"player/pl_ladder4.wav"flVolATTN_NORM0PITCH_NORM );
            }
        }
        
        case 
STEP_SNOW:
        {
            switch( 
iRand )
            {                
                case 
0emit_soundiPlayerCHAN_BODY"player/pl_snow1.wav"flVolATTN_NORM0PITCH_NORM );
                case 
1emit_soundiPlayerCHAN_BODY"player/pl_snow3.wav"flVolATTN_NORM0PITCH_NORM );
                case 
2emit_soundiPlayerCHAN_BODY"player/pl_snow2.wav"flVolATTN_NORM0PITCH_NORM );
                case 
3emit_soundiPlayerCHAN_BODY"player/pl_snow4.wav"flVolATTN_NORM0PITCH_NORM );
            }
        }
        
        case 
STEP_GRASS:
        {
            switch( 
iRand )
            {                
                case 
0emit_soundiPlayerCHAN_BODY"player/pl_grass1.wav"flVolATTN_NORM0PITCH_NORM );
                case 
1emit_soundiPlayerCHAN_BODY"player/pl_grass3.wav"flVolATTN_NORM0PITCH_NORM );
                case 
2emit_soundiPlayerCHAN_BODY"player/pl_grass2.wav"flVolATTN_NORM0PITCH_NORM );
                case 
3emit_soundiPlayerCHAN_BODY"player/pl_grass4.wav"flVolATTN_NORM0PITCH_NORM );
            }
        }
        
        default:
        {
            switch( 
iRand )
            {
                case 
0emit_soundiPlayerCHAN_BODY"player/pl_step1.wav"flVolATTN_NORM0PITCH_NORM );
                case 
1emit_soundiPlayerCHAN_BODY"player/pl_step3.wav"flVolATTN_NORM0PITCH_NORM );
                case 
2emit_soundiPlayerCHAN_BODY"player/pl_step2.wav"flVolATTN_NORM0PITCH_NORM );
                case 
3emit_soundiPlayerCHAN_BODY"player/pl_step4.wav"flVolATTN_NORM0PITCH_NORM );
            }
        }
    }
    
    return 
OrpheuIgnored;

__________________
ELO RATING SYSTEM - SQL [COMPLETE]
Quote:
Originally Posted by Liverwiz View Post
DDDRRRRAAAAMMMMAAAAA!!!???

Put this shit on pause while i go get some popcorn!!

Last edited by quilhos; 12-25-2014 at 02:19.
quilhos is offline