DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено

◆ OptionsMenuGame()

void ScriptedWidgetEventHandler::OptionsMenuGame ( Widget parent,
Widget details_root,
GameOptions options,
OptionsMenu menu )
inlineprotected

См. определение в файле OptionsMenuGame.c строка 44

45 {
47
48 m_DetailsRoot = details_root;
49 m_DetailsBodyDefault = m_DetailsRoot.FindAnyWidget("settings_details_body");
50 m_DetailsBodyConnectivity = m_DetailsRoot.FindAnyWidget("settings_details_body_connectivity");
51 m_DetailsLabel = TextWidget.Cast(m_DetailsRoot.FindAnyWidget("details_label"));
52 m_DetailsText = RichTextWidget.Cast(m_DetailsRoot.FindAnyWidget("details_content"));
53
54 m_Options = options;
55 m_Menu = menu;
56
57 m_FOVOption = NumericOptionsAccess.Cast(m_Options.GetOptionByType(OptionAccessType.AT_OPTIONS_FIELD_OF_VIEW));
58 m_LanguageOption = ListOptionsAccess.Cast(m_Options.GetOptionByType(OptionAccessType.AT_OPTIONS_LANGUAGE));
59 m_PauseOption = ListOptionsAccess.Cast(m_Options.GetOptionByType(OptionAccessType.AT_OPTIONS_PAUSE));
60
61 m_Root.FindAnyWidget("fov_setting_option").SetUserID(OptionAccessType.AT_OPTIONS_FIELD_OF_VIEW);
62 m_Root.FindAnyWidget("hud_setting_option").SetUserID(OptionIDsScript.OPTION_HUD);
63 m_Root.FindAnyWidget("hud_vehicle_setting_option").SetUserID(OptionIDsScript.OPTION_HUD_VEHICLE);
64 m_Root.FindAnyWidget("hud_brightness_setting_option").SetUserID(OptionIDsScript.OPTION_HUD_BRIGHTNESS);
65 m_Root.FindAnyWidget("crosshair_setting_option").SetUserID(OptionIDsScript.OPTION_CROSSHAIR);
66 m_Root.FindAnyWidget("game_setting_option").SetUserID(OptionIDsScript.OPTION_GAME_MESSAGES);
67 m_Root.FindAnyWidget("admin_setting_option").SetUserID(OptionIDsScript.OPTION_ADMIN_MESSAGES);
68 m_Root.FindAnyWidget("player_setting_option").SetUserID(OptionIDsScript.OPTION_PLAYER_MESSAGES);
69 m_Root.FindAnyWidget("language_setting_option").SetUserID(OptionAccessType.AT_OPTIONS_LANGUAGE);
70 m_Root.FindAnyWidget("bleeding_indication_setting_option").SetUserID(OptionIDsScript.OPTION_BLEEDINGINDICATION);
71 m_Root.FindAnyWidget("connectivity_setting_option").SetUserID(OptionIDsScript.OPTION_CONNECTIVITY_INFO);
72 m_Root.FindAnyWidget("quickbar_setting_option").SetUserID(OptionIDsScript.OPTION_QUICKBAR);
73
74 #ifdef PLATFORM_CONSOLE
75 m_QuickbarButton = ButtonWidget.Cast(m_Root.FindAnyWidget("quickbar_button"));
76 m_Root.FindAnyWidget("brightness_setting_option").SetUserID(OptionAccessType.AT_OPTIONS_BRIGHT_SLIDER);
77 #else
78 m_Root.FindAnyWidget("serverinfo_setting_option").SetUserID(OptionIDsScript.OPTION_SERVER_INFO);
79 m_Root.FindAnyWidget("pause_setting_option").SetUserID(OptionAccessType.AT_OPTIONS_PAUSE);
80 #endif
81
83
84 array<string> opt = { "#options_controls_disabled", "#options_controls_enabled" };
85 array<string> opt2 = { "#options_controls_enabled", "#options_controls_disabled" };
86 array<string> opt3 = new array<string>;
87 for (int i = 0; i < m_LanguageOption.GetItemsCount(); ++i)
88 {
89 string text;
90 m_LanguageOption.GetItemText(i, text);
91 opt3.Insert(text);
92 }
93
94 array<string> opt4 = { "#options_pc_nopause_0", "#options_pc_nopause_1", "#options_pc_nopause_2" }; // Pause options menu strings
95
96 m_LanguageSelector = new OptionSelectorMultistate(m_Root.FindAnyWidget("language_setting_option"), m_LanguageOption.GetIndex(), this, false, opt3);
97 m_FOVSelector = new OptionSelectorSlider(m_Root.FindAnyWidget("fov_setting_option"), m_FOVOption.ReadValue(), this, false, m_FOVOption.GetMin(), m_FOVOption.GetMax());
98 m_ShowHUDSelector = new OptionSelectorMultistate(m_Root.FindAnyWidget("hud_setting_option"), g_Game.GetProfileOptionBool(EDayZProfilesOptions.HUD), this, false, opt);
99 m_HUDBrightnessSelector = new OptionSelectorSlider(m_Root.FindAnyWidget("hud_brightness_setting_option"), g_Game.GetProfileOptionFloat(EDayZProfilesOptions.HUD_BRIGHTNESS), this, false, HUD_BRIGHTNESS_MIN, HUD_BRIGHTNESS_MAX);
100 m_ShowCrosshairSelector = new OptionSelectorMultistate(m_Root.FindAnyWidget("crosshair_setting_option"), g_Game.GetProfileOptionBool(EDayZProfilesOptions.CROSSHAIR), this, false, opt);
101 m_ShowGameSelector = new OptionSelectorMultistate(m_Root.FindAnyWidget("game_setting_option"), g_Game.GetProfileOptionBool(EDayZProfilesOptions.GAME_MESSAGES), this, false, opt2);
102 m_ShowAdminSelector = new OptionSelectorMultistate(m_Root.FindAnyWidget("admin_setting_option"), g_Game.GetProfileOptionBool(EDayZProfilesOptions.ADMIN_MESSAGES), this, false, opt2);
103 m_ShowPlayerSelector = new OptionSelectorMultistate(m_Root.FindAnyWidget("player_setting_option"), g_Game.GetProfileOptionBool(EDayZProfilesOptions.PLAYER_MESSAGES), this, false, opt2);
104 m_BleedingIndication = new OptionSelectorMultistate(m_Root.FindAnyWidget("bleeding_indication_setting_option"), g_Game.GetProfileOptionBool(EDayZProfilesOptions.BLEEDINGINDICATION), this, false, opt);
105 m_ConnectivityInfo = new OptionSelectorMultistate(m_Root.FindAnyWidget("connectivity_setting_option"), g_Game.GetProfileOptionBool(EDayZProfilesOptions.CONNECTIVITY_INFO), this, false, opt);
106 m_ShowQuickbarSelector = new OptionSelectorMultistate(m_Root.FindAnyWidget("quickbar_setting_option"), g_Game.GetProfileOptionBool(EDayZProfilesOptions.QUICKBAR), this, false, opt);
107 m_ShowHUDVehicleSelector = new OptionSelectorMultistate(m_Root.FindAnyWidget("hud_vehicle_setting_option"), g_Game.GetProfileOptionBool(EDayZProfilesOptions.HUD_VEHICLE), this, false, opt);
108
109 m_LanguageSelector.m_OptionChanged.Insert(UpdateLanguageOption);
110 m_FOVSelector.m_OptionChanged.Insert(UpdateFOVOption);
111 m_ShowHUDSelector.m_OptionChanged.Insert(UpdateHUDOption);
113 m_ShowCrosshairSelector.m_OptionChanged.Insert(UpdateCrosshairOption);
114 m_ShowGameSelector.m_OptionChanged.Insert(UpdateGameOption);
115 m_ShowAdminSelector.m_OptionChanged.Insert(UpdateAdminOption);
116 m_ShowPlayerSelector.m_OptionChanged.Insert(UpdatePlayerOption);
117 m_BleedingIndication.m_OptionChanged.Insert(UpdateBleedingIndication);
118 m_ConnectivityInfo.m_OptionChanged.Insert(UpdateConnectivityInfo);
119 m_ShowQuickbarSelector.m_OptionChanged.Insert(UpdateQuickbarOption);
120 m_ShowHUDVehicleSelector.m_OptionChanged.Insert(UpdateHUDVehicleOption);
121
122 #ifdef PLATFORM_CONSOLE
123 m_BrightnessOption = NumericOptionsAccess.Cast(m_Options.GetOptionByType(OptionAccessType.AT_OPTIONS_BRIGHT_SLIDER));
124 m_BrightnessSelector = new OptionSelectorSlider(m_Root.FindAnyWidget("brightness_setting_option"), m_BrightnessOption.ReadValue(), this, false, m_BrightnessOption.GetMin(), m_BrightnessOption.GetMax());
125 m_BrightnessSelector.m_OptionChanged.Insert(UpdateBrightnessOption);
126 #else
127 m_ShowServerInfoSelector = new OptionSelectorMultistate(m_Root.FindAnyWidget("serverinfo_setting_option"), g_Game.GetProfileOptionBool(EDayZProfilesOptions.SERVERINFO_DISPLAY), this, false, opt);
128 m_PauseSelector = new OptionSelectorMultistate(m_Root.FindAnyWidget("pause_setting_option"), m_PauseOption.GetIndex(), this, false, opt4);
129
130 m_ShowServerInfoSelector.m_OptionChanged.Insert(UpdateServerInfoOption);
131 m_PauseSelector.m_OptionChanged.Insert(UpdatePauseOption);
132 #endif
133
134 float x, y, y2;
135 m_Root.FindAnyWidget("game_settings_scroll").GetScreenSize(x, y);
136 m_Root.FindAnyWidget("game_settings_root").GetScreenSize(x, y2);
137 int f = (y2 > y);
138 m_Root.FindAnyWidget("game_settings_scroll").SetAlpha(f);
139
140 m_Root.SetHandler(this);
141 m_DetailsRoot.Show(false);
142
144 }
DayZGame g_Game
Определения DayZGame.c:3868
EDayZProfilesOptions
Определения EDayZProfilesOptions.c:2
Icon x
Icon y
proto native WorkspaceWidget GetWorkspace()
const float HUD_BRIGHTNESS_MIN
Определения OptionsMenuGame.c:3
GameOptions m_Options
Определения OptionsMenuControls.c:18
ref OptionSelectorMultistate m_ShowCrosshairSelector
Определения OptionsMenuGame.c:27
void UpdateCrosshairOption(int new_index)
Определения OptionsMenuGame.c:443
ref OptionSelectorSlider m_HUDBrightnessSelector
Определения OptionsMenuGame.c:36
void UpdateConnectivityInfo(int newIndex)
Определения OptionsMenuGame.c:438
void UpdateBleedingIndication(int new_index)
Определения OptionsMenuGame.c:433
void UpdateHUDBrightnessOption(float newValue)
Определения OptionsMenuGame.c:422
Widget m_Root
Определения SizeToChild.c:9
ref OptionSelectorMultistate m_ShowGameSelector
Определения OptionsMenuGame.c:30
ref NumericOptionsAccess m_FOVOption
Определения OptionsMenuGame.c:16
ref OptionSelectorMultistate m_LanguageSelector
Определения OptionsMenuGame.c:24
ref OptionSelectorMultistate m_BleedingIndication
Определения OptionsMenuGame.c:34
void UpdateQuickbarOption(int new_index)
Определения OptionsMenuGame.c:448
void UpdatePauseOption(int new_index)
Определения OptionsMenuGame.c:409
ref OptionSelectorSlider m_FOVSelector
Определения OptionsMenuGame.c:25
ref OptionSelectorMultistate m_ShowHUDVehicleSelector
Определения OptionsMenuGame.c:29
ref OptionSelectorMultistate m_ShowQuickbarSelector
Определения OptionsMenuGame.c:28
void UpdateGameOption(int new_index)
Определения OptionsMenuGame.c:458
ref OptionSelectorMultistate m_PauseSelector
Определения OptionsMenuGame.c:37
CameraToolsMenu m_Menu
Определения CTEvent.c:8
RichTextWidget m_DetailsText
Определения OptionsMenuControls.c:15
void UpdateHUDVehicleOption(int new_index)
Определения OptionsMenuGame.c:453
ref OptionSelectorMultistate m_ShowServerInfoSelector
Определения OptionsMenuGame.c:33
Widget m_DetailsBodyConnectivity
Определения OptionsMenuControls.c:8
void UpdateHUDOption(int new_index)
Определения OptionsMenuGame.c:428
void UpdateLanguageOption(int new_index)
Определения OptionsMenuGame.c:401
Widget m_DetailsBodyDefault
Определения OptionsMenuControls.c:7
ref ListOptionsAccess m_PauseOption
Определения OptionsMenuGame.c:18
ref OptionSelectorSlider m_BrightnessSelector
Определения OptionsMenuVideo.c:26
ref OptionSelectorMultistate m_ShowAdminSelector
Определения OptionsMenuGame.c:31
void UpdateServerInfoOption(int new_index)
Определения OptionsMenuGame.c:473
ButtonWidget m_QuickbarButton
Определения OptionsMenuGame.c:14
void UpdatePlayerOption(int new_index)
Определения OptionsMenuGame.c:468
const float HUD_BRIGHTNESS_MAX
Определения OptionsMenuGame.c:4
ref ListOptionsAccess m_LanguageOption
Определения OptionsMenuGame.c:17
ref OptionSelectorMultistate m_ShowPlayerSelector
Определения OptionsMenuGame.c:32
ref OptionSelectorMultistate m_ConnectivityInfo
Определения OptionsMenuGame.c:35
ref OptionSelectorMultistate m_ShowHUDSelector
Определения OptionsMenuGame.c:26
void UpdateFOVOption(float new_value)
Определения OptionsMenuGame.c:415
TextWidget m_DetailsLabel
Определения OptionsMenuControls.c:14
void UpdateAdminOption(int new_index)
Определения OptionsMenuGame.c:463
void InitDependentOptionsVisibility()
Определения OptionsMenuControls.c:854
ref NumericOptionsAccess m_BrightnessOption
Определения OptionsMenuVideo.c:60
OptionIDsScript
Used for script-based game options. For anything C++ based, you would most likely use "Option Access ...
Определения gameplay.c:1293
proto native CGame GetGame()
OptionAccessType
C++ OptionAccessType.
Определения gameplay.c:1224
proto native external Widget CreateWidgets(string layout, Widget parentWidget=NULL, bool immedUpdate=true)
Create widgets from *.layout file.

Перекрестные ссылки WorkspaceWidget::CreateWidgets(), FillTextMap(), g_Game, GetGame(), GetLayoutName(), CGame::GetWorkspace(), HUD_BRIGHTNESS_MAX, HUD_BRIGHTNESS_MIN, InitDependentOptionsVisibility(), m_BleedingIndication, m_BrightnessOption, m_BrightnessSelector, m_ConnectivityInfo, m_DetailsBodyConnectivity, m_DetailsBodyDefault, m_DetailsLabel, m_DetailsRoot, m_DetailsText, m_FOVOption, m_FOVSelector, m_HUDBrightnessSelector, m_LanguageOption, m_LanguageSelector, m_Menu, m_Options, m_PauseOption, m_PauseSelector, m_QuickbarButton, m_Root, m_ShowAdminSelector, m_ShowCrosshairSelector, m_ShowGameSelector, m_ShowHUDSelector, m_ShowHUDVehicleSelector, m_ShowPlayerSelector, m_ShowQuickbarSelector, m_ShowServerInfoSelector, UpdateAdminOption(), UpdateBleedingIndication(), UpdateConnectivityInfo(), UpdateCrosshairOption(), UpdateFOVOption(), UpdateGameOption(), UpdateHUDBrightnessOption(), UpdateHUDOption(), UpdateHUDVehicleOption(), UpdateLanguageOption(), UpdatePauseOption(), UpdatePlayerOption(), UpdateQuickbarOption(), UpdateServerInfoOption(), x и y.