namespace SayMenu2 { final class BuyableItem { private string m_szDescription; private string m_szEntityName; private uint m_uiCost = 0; private bool m_bAllPlayers = true; string Description { get const { return m_szDescription; } set { m_szDescription = value; } } string EntityName { get const { return m_szEntityName; } set { m_szEntityName = value; } } uint Cost { get const { return m_uiCost; } set { m_uiCost = value; } } bool AllPlayers { get const { return m_bAllPlayers; } set { m_bAllPlayers = value; } } BuyableItem( const string& in szDescription, const string& in szEntityName, const uint uiCost, const bool bAllPlayers = true ) { m_szDescription = szDescription; m_szEntityName = szEntityName; m_uiCost = uiCost; m_bAllPlayers = bAllPlayers; } void Buy( CBasePlayer@ pPlayer = null ) { if( !m_bAllPlayers && pPlayer is null ) return; if( m_bAllPlayers ) { for( int iPlayer = 1; iPlayer <= g_Engine.maxClients; ++iPlayer ) { CBasePlayer@ pPl = g_PlayerFuncs.FindPlayerByIndex( iPlayer ); if( pPl !is null ) { GiveItem( pPl ); } } } else { GiveItem( pPlayer ); } } private void GiveItem( CBasePlayer@ pPlayer ) const { const uint uiMoney = uint( pPlayer.pev.frags ); g_Game.AlertMessage( at_console, "frags: %1, money: %2\n", pPlayer.pev.frags, uiMoney ); if( pPlayer.pev.frags <= -1 ) { g_PlayerFuncs.ClientPrint(pPlayer,HUD_PRINTTALK,"Not enough money(frags) - Cost: " + m_uiCost + "\n"); return; } if( uiMoney >= m_uiCost ) { const uint uiLeft = uiMoney - m_uiCost; pPlayer.pev.frags -= m_uiCost; pPlayer.GiveNamedItem( m_szEntityName ); } else { g_PlayerFuncs.ClientPrint(pPlayer,HUD_PRINTTALK,"Not enough money(frags) - Cost: " + m_uiCost + "\n"); return; } } } final class SayMenu2 { array m_Items; private CTextMenu@ m_pMenu = null; private CTextMenu@ m_pReportMenu = null; private CTextMenu@ m_pTacticalMenu = null; private CTextMenu@ m_pSocialMenu = null; private CTextMenu@ m_pProfanityMenu = null; private CTextMenu@ m_pProfanityMenu2 = null; private CTextMenu@ m_pConvoMenu = null; private CTextMenu@ m_pConvoMenu2 = null; private CTextMenu@ m_pFgruntMenu = null; private CTextMenu@ m_pOtisMenu = null; //private CTextMenu@ m_pProfanityMenu1 = null; //private CTextMenu@ m_pProfanityMenu2 = null; //private CTextMenu@ m_pProfanityMenu3 = null; void RemoveItems() { if( m_Items !is null ) { m_Items.removeRange( 0, m_Items.length() ); } } void AddItem( BuyableItem@ pItem ) { if( pItem is null ) return; if( m_Items.findByRef( @pItem ) != -1 ) return; m_Items.insertLast( pItem ); if( m_pMenu !is null ) @m_pMenu = null; } void Show( CBasePlayer@ pPlayer = null ) { if( m_pMenu is null ) CreateMenu(); if( pPlayer !is null ) m_pMenu.Open( 0, 0, pPlayer ); else m_pMenu.Open( 0, 0 ); } void Show2( CBasePlayer@ pPlayer = null ) { if( m_pReportMenu is null ) CreateMenu(); if( pPlayer !is null ) m_pReportMenu.Open( 0, 0, pPlayer ); else m_pReportMenu.Open( 0, 0 ); } void Show3( CBasePlayer@ pPlayer = null ) { if( m_pTacticalMenu is null ) CreateMenu(); if( pPlayer !is null ) m_pTacticalMenu.Open( 0, 0, pPlayer ); else m_pTacticalMenu.Open( 0, 0 ); } void Show4( CBasePlayer@ pPlayer = null ) { if( m_pSocialMenu is null ) CreateMenu(); if( pPlayer !is null ) m_pSocialMenu.Open( 0, 0, pPlayer ); else m_pSocialMenu.Open( 0, 0 ); } void Show5( CBasePlayer@ pPlayer = null ) { if( m_pProfanityMenu is null ) CreateMenu(); if( pPlayer !is null ) m_pProfanityMenu.Open( 0, 0, pPlayer ); else m_pProfanityMenu.Open( 0, 0 ); } void Show6( CBasePlayer@ pPlayer = null ) { if( m_pFgruntMenu is null ) CreateMenu(); if( pPlayer !is null ) m_pFgruntMenu.Open( 0, 0, pPlayer ); else m_pFgruntMenu.Open( 0, 0 ); } void Show7( CBasePlayer@ pPlayer = null ) { if( m_pOtisMenu is null ) CreateMenu(); if( pPlayer !is null ) m_pOtisMenu.Open( 0, 0, pPlayer ); else m_pOtisMenu.Open( 0, 0 ); } private void CreateMenu() { @m_pMenu = CTextMenu( TextMenuPlayerSlotCallback( this.Callback ) ); m_pMenu.SetTitle( "Voicelines" ); m_pMenu.AddItem( "Scientist (say .scientist in chat)", null ); m_pMenu.AddItem( "Barney (say .barney in chat)", null ); m_pMenu.AddItem( "Alien Grunt (say .agrunt in chat)", null ); m_pMenu.AddItem( "Human Grunt (say .hgrunt in chat)", null ); m_pMenu.AddItem( "Human Grunt Ally (say .fgrunt in chat)", null ); m_pMenu.AddItem( "Otis (say .otis in chat)", null ); m_pMenu.AddItem( "Can always add more! Suggestions welcome!", null ); //m_pMenu.AddItem( "Chatter", null ); m_pMenu.Register(); @m_pReportMenu = CTextMenu( TextMenuPlayerSlotCallback( this.ReportCallback ) ); m_pReportMenu.SetTitle( "Scientist" ); m_pReportMenu.AddItem( "Hello", null ); m_pReportMenu.AddItem( "Hello (predisaster)", null ); m_pReportMenu.AddItem( "Question (predisaster)", null ); m_pReportMenu.AddItem( "Question", null ); m_pReportMenu.AddItem( "Answer", null ); m_pReportMenu.AddItem( "Following", null ); m_pReportMenu.AddItem( "Waiting", null ); m_pReportMenu.AddItem( "Stop", null ); m_pReportMenu.AddItem( "Scream", null ); m_pReportMenu.AddItem( "Scream2", null ); m_pReportMenu.AddItem( "Healing", null ); m_pReportMenu.AddItem( "Revive", null ); m_pReportMenu.AddItem( "Wounded", null ); m_pReportMenu.AddItem( "Wounded2", null ); m_pReportMenu.AddItem( "Hear", null ); m_pReportMenu.AddItem( "Smell", null ); m_pReportMenu.AddItem( "Headcrab", null ); m_pReportMenu.AddItem( "Fear", null ); m_pReportMenu.AddItem( "Fear2", null ); m_pReportMenu.AddItem( "Scared (friendly fire)", null ); m_pReportMenu.AddItem( "Over here", null ); m_pReportMenu.AddItem( "Fool", null ); m_pReportMenu.AddItem( "Don't go there", null ); m_pReportMenu.AddItem( "Don't wanna die", null ); m_pReportMenu.AddItem( "She gone mad", null ); m_pReportMenu.AddItem( "Trained professional", null ); m_pReportMenu.Register(); @m_pTacticalMenu = CTextMenu( TextMenuPlayerSlotCallback( this.TacticalCallback ) ); m_pTacticalMenu.SetTitle( "Barney" ); m_pTacticalMenu.AddItem( "Hello", null ); m_pTacticalMenu.AddItem( "Smell", null ); m_pTacticalMenu.AddItem( "Help", null ); m_pTacticalMenu.AddItem( "Scream", null ); m_pTacticalMenu.AddItem( "Let's go", null ); m_pTacticalMenu.AddItem( "I am gonna stay here", null ); m_pTacticalMenu.AddItem( "Attack", null ); m_pTacticalMenu.AddItem( "Enemy killed", null ); m_pTacticalMenu.AddItem( "Stop that", null ); m_pTacticalMenu.AddItem( "Question", null ); m_pTacticalMenu.AddItem( "Answer", null ); m_pTacticalMenu.AddItem( "Idle gibberish", null ); m_pTacticalMenu.Register(); @m_pOtisMenu = CTextMenu( TextMenuPlayerSlotCallback( this.OtisCallback ) ); m_pOtisMenu.SetTitle( "Otis" ); m_pOtisMenu.AddItem( "Hello", null ); m_pOtisMenu.AddItem( "Following", null ); m_pOtisMenu.AddItem( "Waiting", null ); m_pOtisMenu.AddItem( "Attack", null ); m_pOtisMenu.AddItem( "Enemy killed", null ); m_pOtisMenu.AddItem( "Question", null ); m_pOtisMenu.AddItem( "Answer", null ); m_pOtisMenu.AddItem( "Friendly fire", null ); m_pOtisMenu.AddItem( "Smell", null ); m_pOtisMenu.AddItem( "Mad", null ); m_pOtisMenu.AddItem( "Wounded", null ); m_pOtisMenu.AddItem( "Wounded2", null ); m_pOtisMenu.AddItem( "Idle gibberish", null ); m_pOtisMenu.Register(); @m_pSocialMenu = CTextMenu( TextMenuPlayerSlotCallback( this.SocialCallback ) ); m_pSocialMenu.SetTitle( "Human Grunt" ); m_pSocialMenu.AddItem( "Player alert", null ); m_pSocialMenu.AddItem( "Monster alert", null ); m_pSocialMenu.AddItem( "Taunt", null ); m_pSocialMenu.AddItem( "Charge", null ); m_pSocialMenu.AddItem( "Grenade", null ); m_pSocialMenu.AddItem( "Cover", null ); m_pSocialMenu.AddItem( "Throw grenade", null ); m_pSocialMenu.AddItem( "Question", null ); m_pSocialMenu.AddItem( "Answer", null ); m_pSocialMenu.AddItem( "Clear", null ); m_pSocialMenu.AddItem( "Check", null ); m_pSocialMenu.AddItem( "Idle gibberish", null ); m_pSocialMenu.Register(); @m_pFgruntMenu = CTextMenu( TextMenuPlayerSlotCallback( this.FgruntCallback ) ); m_pFgruntMenu.SetTitle( "Ally Grunt" ); m_pFgruntMenu.AddItem( "Hello", null ); m_pFgruntMenu.AddItem( "Player alert", null ); m_pFgruntMenu.AddItem( "Monster alert", null ); m_pFgruntMenu.AddItem( "Taunt", null ); m_pFgruntMenu.AddItem( "Charge", null ); m_pFgruntMenu.AddItem( "Attack", null ); m_pFgruntMenu.AddItem( "Following", null ); m_pFgruntMenu.AddItem( "Waiting", null ); m_pFgruntMenu.AddItem( "Enemy killed", null ); m_pFgruntMenu.AddItem( "Wounded", null ); m_pFgruntMenu.AddItem( "Friendly fire", null ); m_pFgruntMenu.AddItem( "Need medic", null ); m_pFgruntMenu.AddItem( "Grenade", null ); m_pFgruntMenu.AddItem( "Cover", null ); m_pFgruntMenu.AddItem( "Throw grenade", null ); m_pFgruntMenu.AddItem( "Medic talk", null ); m_pFgruntMenu.AddItem( "Question", null ); m_pFgruntMenu.AddItem( "Question2", null ); m_pFgruntMenu.AddItem( "Answer", null ); m_pFgruntMenu.AddItem( "Clear", null ); m_pFgruntMenu.AddItem( "Check", null ); m_pFgruntMenu.AddItem( "Idle gibberish", null ); m_pFgruntMenu.Register(); @m_pProfanityMenu = CTextMenu( TextMenuPlayerSlotCallback( this.ProfanityCallback ) ); m_pProfanityMenu.SetTitle( "Alien Grunt" ); m_pProfanityMenu.AddItem( "Alert", null ); m_pProfanityMenu.Register(); @m_pProfanityMenu2 = CTextMenu( TextMenuPlayerSlotCallback( this.ProfanityCallback2 ) ); m_pProfanityMenu2.SetTitle( "Profanity 2" ); m_pProfanityMenu2.AddItem( "Level 0", null ); m_pProfanityMenu2.AddItem( "Level 1", null ); m_pProfanityMenu2.AddItem( "Level 2", null ); m_pProfanityMenu2.AddItem( "Level 3", null ); m_pProfanityMenu2.Register(); @m_pConvoMenu = CTextMenu( TextMenuPlayerSlotCallback( this.ConvoCallback ) ); m_pConvoMenu.SetTitle( "Converse" ); m_pConvoMenu.AddItem( "Conversation 0", null ); m_pConvoMenu.AddItem( "Conversation 1", null ); m_pConvoMenu.AddItem( "Conversation 2", null ); m_pConvoMenu.AddItem( "Conversation 3", null ); m_pConvoMenu.AddItem( "Conversation 4", null ); m_pConvoMenu.AddItem( "Conversation 5", null ); m_pConvoMenu.AddItem( "Conversation 6", null ); m_pConvoMenu.AddItem( "Conversation 7", null ); m_pConvoMenu.AddItem( "Conversation 8", null ); m_pConvoMenu.AddItem( "Conversation 9", null ); m_pConvoMenu.AddItem( "Conversation 10", null ); m_pConvoMenu.AddItem( "Conversation 11", null ); m_pConvoMenu.AddItem( "Conversation 12", null ); m_pConvoMenu.AddItem( "Conversation 13", null ); m_pConvoMenu.AddItem( "Conversation 14", null ); m_pConvoMenu.AddItem( "Conversation 15", null ); m_pConvoMenu.AddItem( "Conversation 16", null ); m_pConvoMenu.AddItem( "Conversation 17", null ); m_pConvoMenu.AddItem( "Conversation 18", null ); m_pConvoMenu.AddItem( "Conversation 19", null ); m_pConvoMenu.Register(); @m_pConvoMenu2 = CTextMenu( TextMenuPlayerSlotCallback( this.ConvoCallback2 ) ); m_pConvoMenu2.SetTitle( "Chatter" ); m_pConvoMenu2.AddItem( "Talk 1", null ); m_pConvoMenu2.AddItem( "Talk 2", null ); m_pConvoMenu2.AddItem( "Talk 3", null ); m_pConvoMenu2.AddItem( "Talk 4", null ); m_pConvoMenu2.AddItem( "Talk 5", null ); m_pConvoMenu2.AddItem( "Talk 6", null ); m_pConvoMenu2.AddItem( "Talk 7", null ); m_pConvoMenu2.AddItem( "Talk 8", null ); m_pConvoMenu2.AddItem( "Talk 9", null ); m_pConvoMenu2.AddItem( "Talk 10", null ); m_pConvoMenu2.AddItem( "Talk 11", null ); m_pConvoMenu2.AddItem( "Talk 12", null ); m_pConvoMenu2.AddItem( "Talk 13", null ); m_pConvoMenu2.AddItem( "Talk 14", null ); m_pConvoMenu2.AddItem( "Talk 15", null ); m_pConvoMenu2.AddItem( "Talk 16", null ); m_pConvoMenu2.Register(); } private void Callback( CTextMenu@ menu, CBasePlayer@ pPlayer, int iSlot, const CTextMenuItem@ pItem ) { bool isAdmin = g_PlayerFuncs.AdminLevel(pPlayer) >= ADMIN_YES; if ( !pPlayer.IsAlive() && !isAdmin ) { g_PlayerFuncs.ClientPrint( pPlayer, HUD_PRINTTALK, "[Voice] You must be alive\n" ); return; } if( pItem !is null ) { string sChoice = pItem.m_szName; if( sChoice == "Scientist (say .scientist in chat)" ) m_pReportMenu.Open( 0, 0, pPlayer ); if( sChoice == "Barney (say .barney in chat)" ) m_pTacticalMenu.Open( 0, 0, pPlayer ); if( sChoice == "Alien Grunt (say .agrunt in chat)" ) m_pProfanityMenu.Open( 0, 0, pPlayer ); if( sChoice == "Human Grunt (say .hgrunt in chat)" ) m_pSocialMenu.Open( 0, 0, pPlayer ); if( sChoice == "Human Grunt Ally (say .fgrunt in chat)" ) m_pFgruntMenu.Open( 0, 0, pPlayer ); if( sChoice == "Otis (say .otis in chat)" ) m_pOtisMenu.Open( 0, 0, pPlayer ); //if( sChoice == "Converse" ) //m_pConvoMenu.Open( 0, 0, pPlayer ); //if( sChoice == "Chatter" ) //m_pConvoMenu2.Open( 0, 0, pPlayer ); } } private void ReportCallback( CTextMenu@ menu, CBasePlayer@ pPlayer, int iSlot, const CTextMenuItem@ pItem ) { bool isAdmin = g_PlayerFuncs.AdminLevel(pPlayer) >= ADMIN_YES; if ( !pPlayer.IsAlive() && !isAdmin ) { g_PlayerFuncs.ClientPrint( pPlayer, HUD_PRINTTALK, "[Voice] You must be alive\n" ); return; } if ( (pPlayer.pev.effects & EF_NODRAW) == EF_NODRAW && !isAdmin ) { g_PlayerFuncs.ClientPrint( pPlayer, HUD_PRINTTALK, "[Voice] You can't use the voice menu while controlling an NPC\n" ); return; } if( pItem !is null ) { string sChoice = pItem.m_szName; if( sChoice == "Answer" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "SC_ANSWER", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Question" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "SC_QUESTION", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Question (predisaster)" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "SC_PQUEST", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Hello" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "SC_HELLO", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Hello (predisaster)" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "SC_PHELLO", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Fool" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "scientist/c3a2_sci_fool.wav", 1.0, 0.6, 0, PITCH_NORM ); GetSoundEntInstance().InsertSound ( bits_SOUND_COMBAT, pPlayer.pev.origin, NORMAL_GUN_VOLUME, 0.3, pPlayer ); } if( sChoice == "Following" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "SC_OK", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Waiting" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "SC_WAIT", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Scream" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "SC_SCREAM", 1.0, ATTN_NORM, 0, PITCH_NORM ); GetSoundEntInstance().InsertSound ( bits_SOUND_COMBAT, pPlayer.pev.origin, NORMAL_GUN_VOLUME, 0.3, pPlayer ); } if( sChoice == "Scream2" ) { switch ( Math.RandomLong( 1, 7 ) ) { case 1: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "scientist/scream01.wav", 1.0, 0.7, 0, PITCH_NORM ); break; case 2: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "scientist/scream02.wav", 1.0, 0.7, 0, PITCH_NORM ); break; case 3: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "scientist/scream05.wav", 1.0, 0.7, 0, PITCH_NORM ); break; case 4: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "scientist/scream06.wav", 1.0, 0.7, 0, PITCH_NORM ); break; case 5: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "scientist/scream07.wav", 1.0, 0.7, 0, PITCH_NORM ); break; case 6: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "scientist/scream14.wav", 1.0, 0.7, 0, PITCH_NORM ); break; case 7: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "scientist/scream22.wav", 1.0, 0.7, 0, PITCH_NORM ); break; } GetSoundEntInstance().InsertSound ( bits_SOUND_COMBAT, pPlayer.pev.origin, NORMAL_GUN_VOLUME, 0.3, pPlayer ); } if( sChoice == "Don't wanna die" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "scientist/dontwantdie.wav", 1.0, 0.6, 0, PITCH_NORM ); GetSoundEntInstance().InsertSound ( bits_SOUND_COMBAT, pPlayer.pev.origin, NORMAL_GUN_VOLUME, 0.3, pPlayer ); } if( sChoice == "Don't go there" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "SC_NOGO", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Healing" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "SC_HEAL", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Revive" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "SC_REVIVE", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Wounded" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "SC_WOUND", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Wounded2" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "SC_MORTAL", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Hear" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "SC_HEAR", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Stop" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "SC_STOP", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Smell" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "SC_SMELL", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Headcrab" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "SC_MONST", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Fear" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "SC_FEAR", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Fear2" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "SC_PLFEAR", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Scared (friendly fire)" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "SC_SCARED", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Over here" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "scientist/overhere.wav", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "She gone mad" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "scientist/shesgonemad.wav", 1.0, 0.6, 0, PITCH_NORM ); GetSoundEntInstance().InsertSound ( bits_SOUND_COMBAT, pPlayer.pev.origin, NORMAL_GUN_VOLUME, 0.3, pPlayer ); } if( sChoice == "Trained professional" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "SC_LOCK6A", 1.0, ATTN_NORM, 0, PITCH_NORM ); } } } private void TacticalCallback( CTextMenu@ menu, CBasePlayer@ pPlayer, int iSlot, const CTextMenuItem@ pItem ) { bool isAdmin = g_PlayerFuncs.AdminLevel(pPlayer) >= ADMIN_YES; if ( !pPlayer.IsAlive() && !isAdmin ) { g_PlayerFuncs.ClientPrint( pPlayer, HUD_PRINTTALK, "[Voice] You must be alive\n" ); return; } if ( (pPlayer.pev.effects & EF_NODRAW) == EF_NODRAW && !isAdmin ) { g_PlayerFuncs.ClientPrint( pPlayer, HUD_PRINTTALK, "[Voice] You can't use the voice menu while controlling an NPC\n" ); return; } if( pItem !is null ) { string sChoice = pItem.m_szName; if( sChoice == "Hello" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "BA_HELLO", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Smell" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "BA_SMELL", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Help" ) { switch ( Math.RandomLong( 1, 2 ) ) { case 1: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "barney/ba_needhelp0.wav", 1.0, 0.7, 0, PITCH_NORM ); break; case 2: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "barney/ba_needhelp1.wav", 1.0, 0.7, 0, PITCH_NORM ); break; } GetSoundEntInstance().InsertSound ( bits_SOUND_COMBAT, pPlayer.pev.origin, NORMAL_GUN_VOLUME, 0.3, pPlayer ); } if( sChoice == "Let's go" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "BA_OK", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Attack" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "BA_ATTACK", 1.0, ATTN_NORM, 0, PITCH_NORM ); GetSoundEntInstance().InsertSound ( bits_SOUND_COMBAT, pPlayer.pev.origin, NORMAL_GUN_VOLUME, 0.3, pPlayer ); } if( sChoice == "Scream" ) { switch ( Math.RandomLong( 1, 4 ) ) { case 1: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "barney/c1a4_ba_octo2.wav", 1.0, 0.8, 0, PITCH_NORM ); break; case 2: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "barney/c1a4_ba_octo3.wav", 1.0, 0.8, 0, PITCH_NORM ); break; case 3: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "barney/c1a4_ba_octo4.wav", 1.0, 0.8, 0, PITCH_NORM ); break; case 4: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "barney/ba_heeey.wav", 1.0, 0.8, 0, PITCH_NORM ); break; } GetSoundEntInstance().InsertSound ( bits_SOUND_COMBAT, pPlayer.pev.origin, NORMAL_GUN_VOLUME, 0.3, pPlayer ); } if( sChoice == "Stop that" ) { switch ( Math.RandomLong( 1, 8 ) ) { case 1: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "barney/ba_pissme.wav", 1.0, 1.0, 0, PITCH_NORM ); break; case 2: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "barney/ba_dotoyou.wav", 1.0, 1.0, 0, PITCH_NORM ); break; case 3: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "barney/ba_crazy.wav", 1.0, 1.0, 0, PITCH_NORM ); break; case 4: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "barney/leavealone.wav", 1.0, 1.0, 0, PITCH_NORM ); break; case 5: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "barney/ba_watchit.wav", 1.0, 1.0, 0, PITCH_NORM ); break; case 6: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "barney/ba_whatyou.wav", 1.0, 1.0, 0, PITCH_NORM ); break; case 7: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "barney/ba_whoathere.wav", 1.0, 1.0, 0, PITCH_NORM ); break; case 8: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "barney/donthurtem.wav", 1.0, 1.0, 0, PITCH_NORM ); break; } } if( sChoice == "I am gonna stay here" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "BA_WAIT", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Enemy killed" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "BA_KILL", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Question" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "BA_QUESTION", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Answer" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "BA_ANSWER", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Idle gibberish" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "BA_IDLE", 1.0, ATTN_NORM, 0, PITCH_NORM ); } } } private void OtisCallback( CTextMenu@ menu, CBasePlayer@ pPlayer, int iSlot, const CTextMenuItem@ pItem ) { bool isAdmin = g_PlayerFuncs.AdminLevel(pPlayer) >= ADMIN_YES; if ( !pPlayer.IsAlive() && !isAdmin ) { g_PlayerFuncs.ClientPrint( pPlayer, HUD_PRINTTALK, "[Voice] You must be alive\n" ); return; } if ( (pPlayer.pev.effects & EF_NODRAW) == EF_NODRAW && !isAdmin ) { g_PlayerFuncs.ClientPrint( pPlayer, HUD_PRINTTALK, "[Voice] You can't use the voice menu while controlling an NPC\n" ); return; } if( pItem !is null ) { string sChoice = pItem.m_szName; if( sChoice == "Hello" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "OT_HELLO", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Smell" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "OT_SMELL", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Following" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "OT_OK", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Waiting" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "OT_WAIT", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Attack" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "OT_ATTACK", 1.0, ATTN_NORM, 0, PITCH_NORM ); GetSoundEntInstance().InsertSound ( bits_SOUND_COMBAT, pPlayer.pev.origin, NORMAL_GUN_VOLUME, 0.3, pPlayer ); } if( sChoice == "Enemy killed" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "OT_KILL", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Question" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "OT_QUESTION", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Answer" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "OT_ANSWER", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Idle gibberish" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "OT_IDLE", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Friendly fire" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "OT_SHOT", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Smell" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "OT_SMELL", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Wounded" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "OT_WOUND", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Wounded2" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "OT_MORTAL", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Smell" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "OT_SMELL", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Mad" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "OT_MAD", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Candy (stupid machines)" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "OT_MISC", 1.0, ATTN_NORM, 0, PITCH_NORM ); } } } private void SocialCallback( CTextMenu@ menu, CBasePlayer@ pPlayer, int iSlot, const CTextMenuItem@ pItem ) { bool isAdmin = g_PlayerFuncs.AdminLevel(pPlayer) >= ADMIN_YES; if ( !pPlayer.IsAlive() && !isAdmin ) { g_PlayerFuncs.ClientPrint( pPlayer, HUD_PRINTTALK, "[Voice] You must be alive\n" ); return; } if ( (pPlayer.pev.effects & EF_NODRAW) == EF_NODRAW && pPlayer.HasNamedPlayerItem("weapon_hgrunt") is null && !isAdmin ) { g_PlayerFuncs.ClientPrint( pPlayer, HUD_PRINTTALK, "[Voice] You can only use this menu with Human Grunt NPC or default character!\n" ); return; } if( pItem !is null ) { string sChoice = pItem.m_szName; if( sChoice == "Player alert" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "HG_ALERT", 0.5, ATTN_NORM, 0, PITCH_NORM ); GetSoundEntInstance().InsertSound ( bits_SOUND_COMBAT, pPlayer.pev.origin, NORMAL_GUN_VOLUME, 0.3, pPlayer ); } if( sChoice == "Monster alert" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "HG_MONST", 0.5, ATTN_NORM, 0, PITCH_NORM ); GetSoundEntInstance().InsertSound ( bits_SOUND_COMBAT, pPlayer.pev.origin, NORMAL_GUN_VOLUME, 0.3, pPlayer ); } if( sChoice == "Taunt" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "HG_TAUNT", 0.5, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Charge" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "HG_CHARGE", 0.5, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Grenade" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "HG_GREN", 0.5, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Cover" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "HG_COVER", 0.5, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Throw grenade" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "HG_THROW", 0.5, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Question" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "HG_QUEST", 0.5, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Answer" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "HG_ANSWER", 0.5, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Clear" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "HG_CLEAR", 0.5, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Check" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "HG_CHECK", 0.5, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Idle gibberish" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "HG_IDLE", 0.5, ATTN_NORM, 0, PITCH_NORM ); } } } private void FgruntCallback( CTextMenu@ menu, CBasePlayer@ pPlayer, int iSlot, const CTextMenuItem@ pItem ) { bool isAdmin = g_PlayerFuncs.AdminLevel(pPlayer) >= ADMIN_YES; if ( !pPlayer.IsAlive() && !isAdmin ) { g_PlayerFuncs.ClientPrint( pPlayer, HUD_PRINTTALK, "[Voice] You must be alive\n" ); return; } if ( (pPlayer.pev.effects & EF_NODRAW) == EF_NODRAW && pPlayer.HasNamedPlayerItem("weapon_sawgrunt") is null && !isAdmin ) { g_PlayerFuncs.ClientPrint( pPlayer, HUD_PRINTTALK, "[Voice] You can only use this menu with Ally Grunt NPC or default character!\n" ); return; } if( pItem !is null ) { string sChoice = pItem.m_szName; if( sChoice == "Player alert" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "FG_ALERT", 1.0, ATTN_NORM, 0, PITCH_NORM ); GetSoundEntInstance().InsertSound ( bits_SOUND_COMBAT, pPlayer.pev.origin, NORMAL_GUN_VOLUME, 0.3, pPlayer ); } if( sChoice == "Monster alert" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "FG_MONSTER", 1.0, ATTN_NORM, 0, PITCH_NORM ); GetSoundEntInstance().InsertSound ( bits_SOUND_COMBAT, pPlayer.pev.origin, NORMAL_GUN_VOLUME, 0.3, pPlayer ); } if( sChoice == "Taunt" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "FG_TAUNT", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Charge" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "FG_CHARGE", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Grenade" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "FG_GREN", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Cover" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "FG_COVER", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Throw grenade" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "FG_THROW", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Question" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "FG_QUEST", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Question2" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "FG_QUESTION", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Answer" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "FG_ANSWER", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Clear" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "FG_CLEAR", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Check" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "FG_CHECK", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Idle gibberish" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "FG_IDLE", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Following" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "FG_OK", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Waiting" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "FG_WAIT", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Enemy killed" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "FG_KILL", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Attack" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "FG_ATTACK", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Hello" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "FG_HELLO", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Wounded" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "FG_MORTAL", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Need medic" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "FG_CURE", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Medic talk" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "MG_HEAL", 1.0, ATTN_NORM, 0, PITCH_NORM ); } if( sChoice == "Friendly fire" ) { g_SoundSystem.PlaySentenceGroup( pPlayer.edict(), "FG_SHOT", 1.0, ATTN_NORM, 0, PITCH_NORM ); } } } private void ProfanityCallback( CTextMenu@ menu, CBasePlayer@ pPlayer, int iSlot, const CTextMenuItem@ pItem ) { if ( !pPlayer.IsAlive() ) { g_PlayerFuncs.ClientPrint( pPlayer, HUD_PRINTTALK, "[Voice] You must be alive\n" ); return; } if( pItem !is null ) { string sChoice = pItem.m_szName; if( sChoice == "Alert" && pPlayer.HasNamedPlayerItem("weapon_agrunt") !is null || pPlayer.HasNamedPlayerItem("weapon_agruntf") !is null ) { switch ( Math.RandomLong( 1, 4 ) ) { case 1: g_SoundSystem.EmitSound( pPlayer.edict(), CHAN_VOICE, "agrunt/ag_alert1.wav", 1.0, 1.0 ); break; case 2: g_SoundSystem.EmitSound( pPlayer.edict(), CHAN_VOICE, "agrunt/ag_alert3.wav", 1.0, 1.0 ); break; case 3: g_SoundSystem.EmitSound( pPlayer.edict(), CHAN_VOICE, "agrunt/ag_alert4.wav", 1.0, 1.0 ); break; case 4: g_SoundSystem.EmitSound( pPlayer.edict(), CHAN_VOICE, "agrunt/ag_alert5.wav", 1.0, 1.0 ); break; } } else { g_PlayerFuncs.ClientPrint( pPlayer, HUD_PRINTTALK, "[Voice] You can only use this menu with Alien Grunt NPC!\n" ); } } } private void ProfanityCallback2( CTextMenu@ menu, CBasePlayer@ pPlayer, int iSlot, const CTextMenuItem@ pItem ) { if( pItem !is null ) { /*string sChoice = pItem.m_szName; if( sChoice == "Alert" && pPlayer.HasNamedPlayerItem("weapon_agrunt") !is null || pPlayer.HasNamedPlayerItem("weapon_agruntf") !is null ) { switch ( Math.RandomLong( 1, 4 ) ) { case 1: g_SoundSystem.EmitSound( pPlayer.edict(), CHAN_VOICE, "agrunt/ag_alert1.wav", 1.0, 1.0 ); break; case 2: g_SoundSystem.EmitSound( pPlayer.edict(), CHAN_VOICE, "agrunt/ag_alert3.wav", 1.0, 1.0 ); break; case 3: g_SoundSystem.EmitSound( pPlayer.edict(), CHAN_VOICE, "agrunt/ag_alert4.wav", 1.0, 1.0 ); break; case 4: g_SoundSystem.EmitSound( pPlayer.edict(), CHAN_VOICE, "agrunt/ag_alert5.wav", 1.0, 1.0 ); break; } } else { g_PlayerFuncs.ClientPrint( pPlayer, HUD_PRINTTALK, "[Voice] You can only use this menu with Alien Grunt NPC!\n" ); }*/ } } private void ConvoCallback( CTextMenu@ menu, CBasePlayer@ pPlayer, int iSlot, const CTextMenuItem@ pItem ) { if( pItem !is null ) { string sChoice = pItem.m_szName; if( sChoice == "Conversation 0" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/conv0.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Conversation 1" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/conv1.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Conversation 2" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/conv2.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Conversation 3" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/conv3.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Conversation 4" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/conv4.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Conversation 5" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/conv5.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Conversation 6" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/conv6.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Conversation 7" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/conv7.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Conversation 8" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/conv8.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Conversation 9" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/conv9.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Conversation 10" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/conv10.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Conversation 11" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/conv11.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Conversation 12" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/conv12.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Conversation 13" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/conv13.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Conversation 14" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/conv14.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Conversation 15" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/conv15.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Conversation 16" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/conv16.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Conversation 17" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/conv17.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Conversation 18" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/conv18.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Conversation 19" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/conv19.ogg", 1.0, 1.0, 0, PITCH_NORM ); } } } private void ConvoCallback2( CTextMenu@ menu, CBasePlayer@ pPlayer, int iSlot, const CTextMenuItem@ pItem ) { if( pItem !is null ) { string sChoice = pItem.m_szName; if( sChoice == "Talk 1" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/male/neutral/talk1.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Talk 2" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/male/neutral/talk2.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Talk 3" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/male/neutral/talk3.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Talk 4" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/male/neutral/talk4.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Talk 5" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/male/neutral/talk5.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Talk 6" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/male/neutral/talk6.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Talk 7" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/male/neutral/talk7.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Talk 8" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/male/neutral/talk8.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Talk 9" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/male/neutral/talk9.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Talk 10" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/male/neutral/talk10.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Talk 11" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/male/neutral/talk11.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Talk 12" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/male/neutral/talk12.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Talk 13" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/male/neutral/talk13.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Talk 14" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/male/neutral/talk14.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Talk 15" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/male/neutral/talk15.ogg", 1.0, 1.0, 0, PITCH_NORM ); } if( sChoice == "Talk 16" ) { g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/male/neutral/talk16.ogg", 1.0, 1.0, 0, PITCH_NORM ); } } } // private void Profanity1Callback( CTextMenu@ menu, CBasePlayer@ pPlayer, int iSlot, const CTextMenuItem@ pItem ) // { // if( pItem !is null ) // { // string sChoice = pItem.m_szName; // if( sChoice == "Profanity Lv.1" ) // { // switch ( Math.RandomLong( 1, 10 ) ) // { // case 1: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/profanity/level1/cuss1-1.ogg", 1.0, 0.3, 0, PITCH_NORM ); break; // case 2: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/profanity/level1/cuss1-2.ogg", 1.0, 0.3, 0, PITCH_NORM ); break; // case 3: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/profanity/level1/cuss1-3.ogg", 1.0, 0.3, 0, PITCH_NORM ); break; // case 4: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/profanity/level1/cuss1-4.ogg", 1.0, 0.3, 0, PITCH_NORM ); break; // case 5: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/profanity/level1/cuss1-5.ogg", 1.0, 0.3, 0, PITCH_NORM ); break; // case 6: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/profanity/level1/cuss1-6.ogg", 1.0, 0.3, 0, PITCH_NORM ); break; // case 7: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/profanity/level1/cuss1-7.ogg", 1.0, 0.3, 0, PITCH_NORM ); break; // case 8: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/profanity/level1/cuss1-8.ogg", 1.0, 0.3, 0, PITCH_NORM ); break; // case 9: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/profanity/level1/cuss1-9.ogg", 1.0, 0.3, 0, PITCH_NORM ); break; // case 10: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/profanity/level1/cuss1-10.ogg", 1.0, 0.3, 0, PITCH_NORM ); break; // } // } // } // } // private void Profanity2Callback( CTextMenu@ menu, CBasePlayer@ pPlayer, int iSlot, const CTextMenuItem@ pItem ) // { // if( pItem !is null ) // { // string sChoice = pItem.m_szName; // if( sChoice == "Profanity Lv.2" ) // { // switch ( Math.RandomLong( 1, 17 ) ) // { // case 1: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/profanity/level2/cuss2-1.ogg", 1.0, 0.3, 0, PITCH_NORM ); break; // case 2: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/profanity/level2/cuss2-2.ogg", 1.0, 0.3, 0, PITCH_NORM ); break; // case 3: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/profanity/level2/cuss2-3.ogg", 1.0, 0.3, 0, PITCH_NORM ); break; // case 4: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/profanity/level2/cuss2-4.ogg", 1.0, 0.3, 0, PITCH_NORM ); break; // case 5: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/profanity/level2/cuss2-5.ogg", 1.0, 0.3, 0, PITCH_NORM ); break; // case 6: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/profanity/level2/cuss2-6.ogg", 1.0, 0.3, 0, PITCH_NORM ); break; // case 7: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/profanity/level2/cuss2-7.ogg", 1.0, 0.3, 0, PITCH_NORM ); break; // case 8: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/profanity/level2/cuss2-8.ogg", 1.0, 0.3, 0, PITCH_NORM ); break; // case 9: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/profanity/level2/cuss2-9.ogg", 1.0, 0.3, 0, PITCH_NORM ); break; // case 10: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/profanity/level2/cuss2-10.ogg", 1.0, 0.3, 0, PITCH_NORM ); break; // case 11: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/profanity/level2/cuss2-11.ogg", 1.0, 0.3, 0, PITCH_NORM ); break; // case 12: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/profanity/level2/cuss2-12.ogg", 1.0, 0.3, 0, PITCH_NORM ); break; // case 13: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/profanity/level2/cuss2-13.ogg", 1.0, 0.3, 0, PITCH_NORM ); break; // case 14: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/profanity/level2/cuss2-14.ogg", 1.0, 0.3, 0, PITCH_NORM ); break; // case 15: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/profanity/level2/cuss2-15.ogg", 1.0, 0.3, 0, PITCH_NORM ); break; // case 16: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/profanity/level2/cuss2-16.ogg", 1.0, 0.3, 0, PITCH_NORM ); break; // case 17: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/profanity/level2/cuss2-17.ogg", 1.0, 0.3, 0, PITCH_NORM ); break; // } // } // } // } // private void Profanity3Callback( CTextMenu@ menu, CBasePlayer@ pPlayer, int iSlot, const CTextMenuItem@ pItem ) // { // if( pItem !is null ) // { // string sChoice = pItem.m_szName; // if( sChoice == "Profanity Lv.3" ) // { // switch ( Math.RandomLong( 1, 2 ) ) // { // case 1: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/profanity/level3/cuss3-1.ogg", 1.0, 0.3, 0, PITCH_NORM ); break; // case 2: g_SoundSystem.EmitSoundDyn( pPlayer.edict(), CHAN_VOICE, "kingpin/profanity/level3/cuss3-2.ogg", 1.0, 0.3, 0, PITCH_NORM ); break; // } // } // } // } } }