UTMenu
Class UTAudioClientWindow

source: e:\games\UnrealTournament\UTMenu\Classes\UTAudioClientWindow.uc
Core.Object
   |
   +--UWindow.UWindowBase
      |
      +--UWindow.UWindowWindow
         |
         +--UWindow.UWindowClientWindow
            |
            +--UWindow.UWindowDialogClientWindow
               |
               +--UWindow.UWindowPageWindow
                  |
                  +--UMenu.UMenuPageWindow
                     |
                     +--UMenu.UMenuAudioClientWindow
                        |
                        +--UTMenu.UTAudioClientWindow
Direct Known Subclasses:None

class UTAudioClientWindow
extends UMenu.UMenuAudioClientWindow


Variables
 string AnnouncerVolumeHelp
 UWindowHSliderControl AnnouncerVolumeSlider
 string AnnouncerVolumeText
 UWindowCheckbox AutoTauntCheck
 string AutoTauntHelp
 string AutoTauntText
 UWindowMessageBox ConfirmHardware
 string ConfirmHardwareText
 string ConfirmHardwareTitle
 UWindowMessageBox ConfirmSurround
 string ConfirmSurroundText
 string ConfirmSurroundTitle
 UWindowComboControl MessageSettingsCombo
 string MessageSettingsHelp
 string MessageSettingsText
 string MessageSettings[4]
 UWindowCheckbox NoMatureLanguageCheck
 string NoMatureLanguageHelp
 string NoMatureLanguageText
 UWindowCheckbox Use3DHardwareCheck
 string Use3DHardwareHelp
 string Use3DHardwareText
 UWindowCheckbox UseSurroundSoundCheck
 string UseSurroundSoundHelp
 string UseSurroundSoundText


Function Summary
 void AnnouncerVolumeChanged()
 void AutoTauntChecked()
 void BeforePaint(Canvas C, float X, float Y)
 void Created()
 void ExtraMessageOptions()
 void Hardware3DChecked()
 void Hardware3DSet()
 void MessageBoxDone(UWindowMessageBox W, MessageBoxResult Result)
 void MessageSettingsChanged()
 void NoMatureLanguageChanged()
 void Notify(UWindowDialogControl C, byte E)
 void SaveConfigs()
 void SurroundSoundChecked()
 void SurroundSoundSet()
 void VoiceMessagesChecked()



Source Code


00001	class UTAudioClientWindow expands UMenuAudioClientWindow;
00002	
00003	var UWindowHSliderControl AnnouncerVolumeSlider;
00004	var localized string AnnouncerVolumeText;
00005	var localized string AnnouncerVolumeHelp;
00006	
00007	var UWindowCheckbox AutoTauntCheck;
00008	var localized string AutoTauntText;
00009	var localized string AutoTauntHelp;
00010	
00011	var UWindowCheckbox Use3DHardwareCheck;
00012	var localized string Use3DHardwareText;
00013	var localized string Use3DHardwareHelp;
00014	
00015	var UWindowCheckbox UseSurroundSoundCheck;
00016	var localized string UseSurroundSoundText;
00017	var localized string UseSurroundSoundHelp;
00018	
00019	var UWindowComboControl MessageSettingsCombo;
00020	var localized string MessageSettingsText;
00021	var localized string MessageSettingsHelp;
00022	var localized string MessageSettings[4];
00023	
00024	var UWindowMessageBox ConfirmHardware;
00025	var localized string ConfirmHardwareTitle;
00026	var localized string ConfirmHardwareText;
00027	
00028	var UWindowMessageBox ConfirmSurround;
00029	var localized string ConfirmSurroundTitle;
00030	var localized string ConfirmSurroundText;
00031	
00032	var UWindowCheckbox NoMatureLanguageCheck;
00033	var localized string NoMatureLanguageText;
00034	var localized string NoMatureLanguageHelp;
00035	
00036	function Created()
00037	{
00038		local int ControlWidth, ControlLeft, ControlRight;
00039		local int CenterWidth, CenterPos;
00040		local TournamentPlayer P;
00041	
00042		Super.Created();
00043	
00044		ControlWidth = WinWidth/2.5;
00045		ControlLeft = (WinWidth/2 - ControlWidth)/2;
00046		ControlRight = WinWidth/2 + ControlLeft;
00047	
00048		CenterWidth = (WinWidth/4)*3;
00049		CenterPos = (WinWidth - CenterWidth)/2;
00050	
00051		P = TournamentPlayer(GetPlayerOwner());
00052	
00053		MessageSettingsCombo = UWindowComboControl(CreateControl(class'UWindowComboControl', CenterPos, ControlOffset, CenterWidth, 1));
00054		MessageSettingsCombo.SetText(MessageSettingsText);
00055		MessageSettingsCombo.SetHelpText(MessageSettingsHelp);
00056		MessageSettingsCombo.SetFont(F_Normal);
00057		MessageSettingsCombo.SetEditable(False);
00058		MessageSettingsCombo.AddItem(MessageSettings[0]);
00059		MessageSettingsCombo.AddItem(MessageSettings[1]);
00060		MessageSettingsCombo.AddItem(MessageSettings[2]);
00061		MessageSettingsCombo.AddItem(MessageSettings[3]);
00062		if(P.bNoVoiceMessages)
00063			MessageSettingsCombo.SetSelectedIndex(3);
00064		else
00065		if(P.bNoVoiceTaunts)
00066			MessageSettingsCombo.SetSelectedIndex(2);
00067		else
00068		if(P.bNoAutoTaunts)
00069			MessageSettingsCombo.SetSelectedIndex(1);
00070		else
00071			MessageSettingsCombo.SetSelectedIndex(0);
00072		ControlOffset += 25;
00073	
00074		NoMatureLanguageCheck = UWindowCheckbox(CreateControl(class'UWindowCheckbox', CenterPos, ControlOffset, CenterWidth, 1));
00075		NoMatureLanguageCheck.bChecked = TournamentPlayer(GetPlayerOwner()).bNoMatureLanguage;
00076		NoMatureLanguageCheck.SetText(NoMatureLanguageText);
00077		NoMatureLanguageCheck.SetHelpText(NoMatureLanguageHelp);
00078		NoMatureLanguageCheck.SetFont(F_Normal);
00079		NoMatureLanguageCheck.Align = TA_Left;
00080		ControlOffset += 25;
00081	
00082		// Announcer Volume
00083		AnnouncerVolumeSlider = UWindowHSliderControl(CreateControl(class'UWindowHSliderControl', CenterPos, ControlOffset, CenterWidth, 1));
00084		AnnouncerVolumeSlider.SetRange(0, 4, 1);
00085		AnnouncerVolumeSlider.SetValue(P.AnnouncerVolume);
00086		AnnouncerVolumeSlider.SetText(AnnouncerVolumeText);
00087		AnnouncerVolumeSlider.SetHelpText(AnnouncerVolumeHelp);
00088		AnnouncerVolumeSlider.SetFont(F_Normal);
00089		ControlOffset += 25;
00090	
00091		// 3DHardware.
00092		Use3DHardwareCheck = UWindowCheckbox(CreateControl(class'UWindowCheckbox', CenterPos, ControlOffset, CenterWidth, 1));
00093		Use3DHardwareCheck.bChecked = bool(GetPlayerOwner().ConsoleCommand("get ini:Engine.Engine.AudioDevice Use3dHardware"));
00094		Use3DHardwareCheck.SetText(Use3DHardwareText);
00095		Use3DHardwareCheck.SetHelpText(Use3DHardwareHelp);
00096		Use3DHardwareCheck.SetFont(F_Normal);
00097		Use3DHardwareCheck.Align = TA_Left;
00098		ControlOffset += 25;
00099	
00100		// Surround Sound.
00101		UseSurroundSoundCheck = UWindowCheckbox(CreateControl(class'UWindowCheckbox', CenterPos, ControlOffset, CenterWidth, 1));
00102		UseSurroundSoundCheck.bChecked = bool(GetPlayerOwner().ConsoleCommand("get ini:Engine.Engine.AudioDevice UseSurround"));
00103		UseSurroundSoundCheck.SetText(UseSurroundSoundText);
00104		UseSurroundSoundCheck.SetHelpText(UseSurroundSoundHelp);
00105		UseSurroundSoundCheck.SetFont(F_Normal);
00106		UseSurroundSoundCheck.Align = TA_Left;
00107		ControlOffset += 25;
00108	}
00109	
00110	function ExtraMessageOptions()
00111	{
00112		local int ControlWidth, ControlLeft, ControlRight;
00113		local int CenterWidth, CenterPos;
00114	
00115		Super.ExtraMessageOptions();
00116	
00117		ControlWidth = WinWidth/2.5;
00118		ControlLeft = (WinWidth/2 - ControlWidth)/2;
00119		ControlRight = WinWidth/2 + ControlLeft;
00120	
00121		CenterWidth = (WinWidth/4)*3;
00122		CenterPos = (WinWidth - CenterWidth)/2;
00123		
00124		VoiceMessagesCheck.HideWindow();
00125	
00126		AutoTauntCheck = UWindowCheckbox(CreateControl(class'UWindowCheckbox', CenterPos, VoiceMessagesCheck.WinTop, CenterWidth, 1));
00127		AutoTauntCheck.bChecked = TournamentPlayer(GetPlayerOwner()).bAutoTaunt;
00128		AutoTauntCheck.SetText(AutoTauntText);
00129		AutoTauntCheck.SetHelpText(AutoTauntHelp);
00130		AutoTauntCheck.SetFont(F_Normal);
00131		AutoTauntCheck.Align = TA_Left;
00132	}
00133	
00134	function BeforePaint(Canvas C, float X, float Y)
00135	{
00136		local int ControlWidth, ControlLeft, ControlRight;
00137		local int CenterWidth, CenterPos;
00138	
00139		Super.BeforePaint(C, X, Y);
00140	
00141		ControlWidth = WinWidth/2.5;
00142		ControlLeft = (WinWidth/2 - ControlWidth)/2;
00143		ControlRight = WinWidth/2 + ControlLeft;
00144	
00145		CenterWidth = (WinWidth/4)*3;
00146		CenterPos = (WinWidth - CenterWidth)/2;
00147	
00148		AutoTauntCheck.SetSize(CenterWidth-90+16, 1);
00149		AutoTauntCheck.WinLeft = CenterPos;
00150	
00151		AnnouncerVolumeSlider.SetSize(CenterWidth, 1);
00152		AnnouncerVolumeSlider.SliderWidth = 90;
00153		AnnouncerVolumeSlider.WinLeft = CenterPos;
00154	
00155		MessageSettingsCombo.SetSize(CenterWidth, 1);
00156		MessageSettingsCombo.WinLeft = CenterPos;
00157		MessageSettingsCombo.EditBoxWidth = 90;
00158	
00159		Use3DHardwareCheck.SetSize(CenterWidth-90+16, 1);
00160		Use3DHardwareCheck.WinLeft = CenterPos;
00161	
00162		UseSurroundSoundCheck.SetSize(CenterWidth-90+16, 1);
00163		UseSurroundSoundCheck.WinLeft = CenterPos;
00164	
00165		NoMatureLanguageCheck.SetSize(CenterWidth-90+16, 1);
00166		NoMatureLanguageCheck.WinLeft = CenterPos;
00167	}
00168	
00169	function Notify(UWindowDialogControl C, byte E)
00170	{
00171		Super.Notify(C, E);
00172	
00173		switch(E)
00174		{
00175		case DE_Change:
00176			switch(C)
00177			{
00178			case AutoTauntCheck:
00179				AutoTauntChecked();
00180				break;
00181			case AnnouncerVolumeSlider:
00182				AnnouncerVolumeChanged();
00183				break;
00184			case MessageSettingsCombo:
00185				MessageSettingsChanged();
00186				break;
00187			case Use3DHardwareCheck:
00188				Hardware3DChecked();
00189				break;
00190			case UseSurroundSoundCheck:
00191				SurroundSoundChecked();
00192				break;
00193			case NoMatureLanguageCheck:
00194				NoMatureLanguageChanged();
00195				break;
00196			}
00197		}
00198	}
00199	
00200	function MessageSettingsChanged()
00201	{
00202		local TournamentPlayer P;
00203		P = TournamentPlayer(GetPlayerOwner());
00204	
00205		switch(MessageSettingsCombo.GetSelectedIndex())
00206		{
00207		case 1:
00208			P.bNoVoiceMessages = False;
00209			P.bNoVoiceTaunts = False;
00210			P.bNoAutoTaunts = True;
00211			break;
00212		case 2:
00213			P.bNoVoiceMessages = False;
00214			P.bNoVoiceTaunts = True;
00215			P.bNoAutoTaunts = True;
00216			break;
00217		case 3:
00218			P.bNoVoiceMessages = True;
00219			P.bNoVoiceTaunts = True;
00220			P.bNoAutoTaunts = True;
00221			break;
00222		default:
00223			P.bNoVoiceMessages = False;
00224			P.bNoVoiceTaunts = False;
00225			P.bNoAutoTaunts = False;
00226			break;
00227		}
00228	}
00229	
00230	function Hardware3DChecked()
00231	{
00232		Hardware3DSet();
00233	
00234		if(Use3DHardwareCheck.bChecked)
00235			ConfirmHardware = MessageBox(ConfirmHardwareTitle, ConfirmHardwareText, MB_YesNo, MR_No, MR_None);
00236	}
00237	
00238	function Hardware3DSet()
00239	{
00240		GetPlayerOwner().ConsoleCommand("set ini:Engine.Engine.AudioDevice Use3dHardware "$Use3DHardwareCheck.bChecked);
00241	}
00242	
00243	function SurroundSoundChecked()
00244	{
00245		SurroundSoundSet();
00246		if(UseSurroundSoundCheck.bChecked)
00247			ConfirmSurround = MessageBox(ConfirmSurroundTitle, ConfirmSurroundText, MB_YesNo, MR_No, MR_None);
00248	}
00249	
00250	function SurroundSoundSet()
00251	{
00252		GetPlayerOwner().ConsoleCommand("set ini:Engine.Engine.AudioDevice UseSurround "$UseSurroundSoundCheck.bChecked);
00253	}
00254	
00255	function MessageBoxDone(UWindowMessageBox W, MessageBoxResult Result)
00256	{
00257		if(Result != MR_Yes)
00258		{
00259			switch(W)
00260			{
00261			case ConfirmHardware:
00262				Use3DHardwareCheck.bChecked = False;
00263				Hardware3DSet();
00264				ConfirmHardware = None;
00265				break;
00266			case ConfirmSurround:
00267				UseSurroundSoundCheck.bChecked = False;
00268				SurroundSoundSet();
00269				ConfirmSurround = None;
00270				break;
00271			}
00272		}
00273	}
00274	
00275	function VoiceMessagesChecked()
00276	{
00277	}
00278	
00279	function AutoTauntChecked()
00280	{
00281		TournamentPlayer(GetPlayerOwner()).SetAutoTaunt(AutoTauntCheck.bChecked);	
00282	}
00283	
00284	function AnnouncerVolumeChanged()
00285	{
00286		TournamentPlayer(GetPlayerOwner()).AnnouncerVolume = AnnouncerVolumeSlider.GetValue();
00287	}
00288	
00289	function NoMatureLanguageChanged()
00290	{
00291		TournamentPlayer(GetPlayerOwner()).bNoMatureLanguage = NoMatureLanguageCheck.bChecked;
00292	}
00293	
00294	function SaveConfigs()
00295	{
00296		Super.SaveConfigs();
00297		GetPlayerOwner().SaveConfig();
00298	}
00299	
00300	defaultproperties
00301	{
00302	     AnnouncerVolumeText="Announcer Volume"
00303	     AnnouncerVolumeHelp="Adjusts the volume of the in-game announcer."
00304	     AutoTauntText="Auto Taunt"
00305	     AutoTauntHelp="If checked, your player will send automatic taunts to your victims, whenever you score a frag."
00306	     Use3DHardwareText="Use Hardware 3D Sound"
00307	     Use3DHardwareHelp="If checked, UT will use your 3D audio hardware for richer environmental effects."
00308	     UseSurroundSoundText="Use Surround Sound"
00309	     UseSurroundSoundHelp="If checked, UT will use your digital receiver for better surround sound."
00310	     MessageSettingsText="Play Voice Messages"
00311	     MessageSettingsHelp="This setting controls which voice messages sent from other players will be heard."
00312	     MessageSettings(0)="All"
00313	     MessageSettings(1)="No Auto-Taunts"
00314	     MessageSettings(2)="No Taunts"
00315	     MessageSettings(3)="None"
00316	     ConfirmHardwareTitle="Confirm Use 3D Sound Hardware"
00317	     ConfirmHardwareText="The hardware 3D sound feature requires you have a 3D sound card supporting A3D or EAX.  Enabling this option can also cause your performance to degrade severely in some cases.\n\nAre you sure you want to enable this feature?"
00318	     ConfirmSurroundTitle="Confirm Use Surround Sound"
00319	     ConfirmSurroundText="The surround sound feature requires you have a compatible surround sound receiver connected to your sound card.  Enabling this option without the appropriate receiver can cause anomalies in sound performance.\n\nAre you sure you want to enable this feature?"
00320	     NoMatureLanguageText="No Mature Taunts"
00321	     NoMatureLanguageHelp="If checked, voice taunts with mature language will not be played."
00322	}

End Source Code