View Single Post
Author Message
JuanitoAlimana
Senior Member
Join Date: Aug 2021
Old 03-18-2024 , 02:34   Stop Ultimate Sounds
Reply With Quote #1

Hi. Is there a way so players can type /sounds in the game chat and not having to listen to the sounds?

Thanks!

PHP Code:
/********************************************************************************
*  AMX Mod X script.
*
*   Ultimate Sounds (Ultimate_Sounds.sma)
*   Copyright (C) 2006-2008 Bmann_420 / Dizzy / Hoboman
*
*   This program is free software; you can redistribute it and/or
*   modify it under the terms of the GNU General Public License
*   as published by the Free Software Foundation; either version 2
*   of the License, or (at your option) any later version.
*
*   This program is distributed in the hope that it will be useful,
*   but WITHOUT ANY WARRANTY; without even the implied warranty of
*   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
*   GNU General Public License for more details.
*
*   You should have received a copy of the GNU General Public License
*   along with this program; if not, write to the Free Software
*   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
*
*   In addition, as a special exception, the author gives permission to
*   link the code of this program with the Half-Life Game Engine ("HL
*   Engine") and Modified Game Libraries ("MODs") developed by Valve,
*   L.L.C ("Valve"). You must obey the GNU General Public License in all
*   respects for all of the code used other than the HL Engine and MODs
*   from Valve. If you modify this file, you may extend this exception
*   to your version of the file, but you are not obligated to do so. If
*   you do not wish to do so, delete this exception statement from your
*   version.
*
*********************************************************************************
*
*   AMXX Ultimate Sounds Vers. 1.7
*   Last Update: 1/26/2007
*
*   by  Dizzy / Bmann_420 & Hoboman
*   Link: http://forums.alliedmods.net/showthread.php?t=7342
*
*
*********************************************************************************
*
* ///////////////////////////////////////////////////
* //  AMXMOD[X]                                    //
* //   ::Ultimate sounds::                         //
* //    Origional: by Hephaistos            //
* //    Ported by: Dizzy                //
* //    Edited by: Hoboman, bmann_420            //
* //                                               //
* // cvar:                                         //
* //  streak_mode < flags >                        //
* //  "a" - messages                               //
* //  "b" - sounds                                 //
* //                                               //
* //  knife_mode < flags >                         //
* //  "a" - messages                               //
* //  "b" - sounds                                 //
* //                                               //
* //  hs_mode < flags >                            //
* //  "a" - messages                               //
* //  "b" - sounds                                 //
* //                                               //
* //  lastman_mode < flags >                       //
* //  "a" - messages                               //
* //  "b" - hp                                     //
* //  "c" - sounds                                 //
* ///////////////////////////////////////////////////
*
*********************************************************************************
*/

// Plugin Info
new const PLUGIN[]  = "Ultimate Sounds"
new const VERSION[] = "1.8"
new const AUTHOR[]  = "Dizzy / Bmann_420"

// Includes
#include <amxmodx>

//Defines
#define KNIFEMESSAGES 5
#define MESSAGESNOHP 5
#define MESSAGESHP 5
#define LEVELS 10

//Pcvars
new streak_modeknife_modehs_modelastman_mode

new gmsgHudSync

new kills[33] = {0,...};
new 
deaths[33] = {0,...};
new 
alone_ann 0
new levels[10] = {234567891011};

//Streak Sounds
new stksounds[10][] = 
{
    
"misc/multikill",
    
"misc/megakill",
    
"misc/ultrakill",
    
"misc/monsterkill",
    
"misc/killingspree",
    
"misc/wickedsick",
    
"misc/rampage",
    
"misc/ludacrisskill",
    
"misc/godlike",
    
"misc/holyshit"
}

new 
stkmessages[10][] = 
{
    
"%s: Multi-Kill!",
    
"%s: Mega-Kill!",
    
"%s: Ultra-Kill!",
    
"%s: Monster-Kill!",
    
"%s: Killing Spree!",
    
"%s: Wicked Sick!",
    
"%s: Rampage!",
    
"%s: Ludacriss-Kill",
    
"%s: Godlike!",
    
"%s: Holy Shit!"
}

new 
knifemessages[KNIFEMESSAGES][] = 
{
    
"KNIFE_MSG_1",  
    
"KNIFE_MSG_2",  
    
"KNIFE_MSG_3",  
    
"KNIFE_MSG_4",  
    
"KNIFE_MSG_5"
}

new 
messagesnohp[MESSAGESNOHP][] = 
{
    
"NOHP_MSG_1",  
    
"NOHP_MSG_2",  
    
"NOHP_MSG_3",  
    
"NOHP_MSG_4",  
    
"NOHP_MSG_5"
}

new 
messageshp[MESSAGESHP][] = 
{
    
"HP_MSG_1",  
    
"HP_MSG_2",  
    
"HP_MSG_3",  
    
"HP_MSG_4",  
    
"HP_MSG_5"
}

public 
plugin_init()
{
    
register_plugin(PLUGINVERSIONAUTHOR)
    
register_cvar("ultimate_sounds",VERSION,FCVAR_SERVER|FCVAR_EXTDLL|FCVAR_UNLOGGED|FCVAR_SPONLY)
    
register_dictionary("ultimate_sounds.txt")
    
register_event("DeathMsg","hs","a","3=1")
    
register_event("DeathMsg","knife_kill","a","4&kni")
    
register_event("ResetHUD""reset_hud""b");
    
register_event("DeathMsg""death_event""a""1>0");
    
register_event("DeathMsg","death_msg","a")
    
register_event("SendAudio","roundend_msg","a","2=%!MRAD_terwin","2=%!MRAD_ctwin","2=%!MRAD_rounddraw")
    
register_event("TextMsg","roundend_msg","a","2&#Game_C","2&#Game_w")

    
lastman_mode register_cvar("lastman_mode","abc")
    
streak_mode register_cvar("streak_mode","ab")
    
knife_mode register_cvar("knife_mode","ab")
    
hs_mode register_cvar("hs_mode","ab")

    
gmsgHudSync CreateHudSyncObj()

    return 
PLUGIN_CONTINUE
}

get_streak()
{
    new 
streak[3]
    
get_pcvar_string(streak_mode,streak,2)
    return 
read_flags(streak)
}

public 
death_event(id)
{
    new 
streak get_streak()

    if ((
streak&1) || (streak&2))
    {
           new 
killer read_data(1);
           new 
victim read_data(2);
        
        if (
killer <= get_maxplayers())
            return 
PLUGIN_CONTINUE;
        
           
kills[killer] += 1;
           
kills[victim] = 0;
           
deaths[killer] = 0;
           
deaths[victim] += 1;

        for (new 
0LEVELSi++)
        {
               if (
kills[killer] == levels[i])
            {
                
announce(killeri);
                return 
PLUGIN_CONTINUE;
            }
        }
    }
    return 
PLUGIN_CONTINUE;
}

announce(killerlevel)
{
    new 
streak get_streak()

    if (
streak&1)
    {
            new 
name[32];

           
get_user_name(killername32);
        
set_hudmessage(01002000.050.6520.026.00.010.12);
        
ShowSyncHudMsg(0gmsgHudSyncstkmessages[level], name);
    }

    if (
streak&2){
        for(new 
i=1;i<=get_maxplayers();i++) 
            if(
is_user_connected(i)==)
                
client_cmd(i"spk %s"stksounds[level]); 
    }
}

public 
reset_hud(id)
{
    new 
streak get_streak()

    if (
streak&1)
    {

        if (
kills[id] > levels[0])

        {
                
client_print(idprint_chat,"%L"id"KILL_STREAK"kills[id]);
        }

        else if (
deaths[id] > 1)

        {
            
client_print(idprint_chat,"%L"id"DEATH_STREAK"deaths[id]);
        }
    }
}

public 
client_connect(id)
{
    new 
streak get_streak()

    if ((
streak&1) || (streak&2))
    {
        
kills[id] = 0;
        
deaths[id] = 0;
    }
}

public 
knife_kill()
{
    new 
knifemode[4
    
get_pcvar_string(knife_mode,knifemode,4
    new 
knifemode_bit read_flags(knifemode)

    if (
knifemode_bit 1)
    {
        new 
killer_id read_data(1)
        new 
victim_id read_data(2)
        new 
killer_name[33], victim_name[33]

        
get_user_name(killer_id,killer_name,33)
        
get_user_name(victim_id,victim_name,33)


        
set_hudmessage(2001000, -1.00.3006.06.00.50.151)
        
ShowSyncHudMsg(0gmsgHudSync"%L"LANG_PLAYERknifemessagesrandom_num(0,KNIFEMESSAGES-1) ],killer_name,victim_name)
    }

    if (
knifemode_bit 2)
    {
        for(new 
i=1;i<=get_maxplayers();i++) 
            if( 
is_user_connected(i) == )
                
client_cmd(i,"spk misc/humiliation")
       }
}


public 
roundend_msg(id)

    
alone_ann 0

public death_msg(id)
{

    new 
lmmode[8
    
get_pcvar_string(lastman_mode,lmmode,8
    new 
lmmode_bit read_flags(lmmode)

    new 
players_ct[32], players_t[32], ictitelast
    get_players
(players_ct,ict,"ae","CT")   
    
get_players(players_t,ite,"ae","TERRORIST")   

    if (
ict==1&&ite==1)
    {
        new 
name1[32], name2[32]
        
get_user_name(players_ct[0],name1,32)
        
get_user_name(players_t[0],name2,32)
        
set_hudmessage(2001000, -1.00.3006.06.00.50.151)

        if (
lmmode_bit 1)
        {
            if (
lmmode_bit 2)
            {
                
ShowSyncHudMsg(0gmsgHudSync"%s (%i hp) vs. %s (%i hp)",name1,get_user_health(players_ct[0]),name2,get_user_health(players_t[0]))
            }

            else
            {
                
ShowSyncHudMsg(0gmsgHudSync"%s vs. %s",name1,name2)
            }

            if (
lmmode_bit 4)
            {
                for(new 
i=1;i<=get_maxplayers();i++) 
                    if( 
is_user_connected(i) == )
                        
client_cmd(i,"spk misc/maytheforce")
            }
        }
    } 
    else
{   
    if (
ict==1&&ite>1&&alone_ann==0&&(lmmode_bit 4))
    {
        
last=players_ct[0]
        
client_cmd(last,"spk misc/oneandonly")

    }

    else if (
ite==1&&ict>1&&alone_ann==0&&(lmmode_bit 4))
    {
        
last=players_t[0]
        
client_cmd(last,"spk misc/oneandonly")
    }

    else
    {
        return 
PLUGIN_CONTINUE
    
}
    
alone_ann last
    
new name[32]   
    
get_user_name(last,name,32)

    if (
lmmode_bit 1)
    {
        
set_hudmessage(2001000, -1.00.3006.06.00.50.151)

        if (
lmmode_bit 2)
        {
            
ShowSyncHudMsg(0gmsgHudSync"%L"LANG_PLAYERmessageshprandom_num(0,MESSAGESHP-1) ],ite ,ict ,name,get_user_health(last))
        }

        else
        {
            
ShowSyncHudMsg(0gmsgHudSync"%L"LANG_PLAYERmessagesnohprandom_num(0,MESSAGESNOHP-1) ],ite ,ict ,name )
        }
    }

}
    return 
PLUGIN_CONTINUE   
}


public 
hs()
{
    new 
hsmode[4
    
get_pcvar_string(hs_mode,hsmode,4
    new 
hsmode_bit read_flags(hsmode)

    if (
hsmode_bit 1)
    {
    new 
killer_id read_data(1)
    new 
victim_id read_data(2)
    new 
victim_name[33]

    
get_user_name(victim_id,victim_name,33)

    
set_hudmessage(2001000, -1.00.3003.03.00.150.151)
    
ShowSyncHudMsg(killer_idgmsgHudSync"::HEADSHOT::^nYou Owned %s !!",victim_name)
    }

    if (
hsmode_bit 2)
    {
        for(new 
i=1;i<=get_maxplayers();i++) 
            if( 
is_user_connected(i)==)
                
client_cmd(i,"spk misc/headshot")
    }
}

public 
plugin_precache()
{
    
precache_sound("misc/monsterkill.wav")
    
precache_sound("misc/godlike.wav")
    
precache_sound("misc/headshot.wav")
    
precache_sound("misc/humiliation.wav")
    
precache_sound("misc/killingspree.wav")
    
precache_sound("misc/multikill.wav")
    
precache_sound("misc/ultrakill.wav")
    
precache_sound("misc/maytheforce.wav")
    
precache_sound("misc/oneandonly.wav")
    
precache_sound("misc/rampage.wav")
    
precache_sound("misc/holyshit.wav")
    
precache_sound("misc/megakill.wav")
    
precache_sound("misc/wickedsick.wav")
    
precache_sound("misc/ludacrisskill.wav")
        
    return 
PLUGIN_CONTINUE 

JuanitoAlimana is offline