1class ServerBrowserDetailsContainer
extends ScriptedWidgetEventHandler
6 protected TextWidget m_ServerNameText;
7 protected TextWidget m_ServerTypeResult;
8 protected TextWidget m_ServerModeResult;
9 protected TextWidget m_LastCharacterResult;
10 protected TextWidget m_ServerIP;
12 #ifdef PLATFORM_WINDOWS
13 #ifndef PLATFORM_CONSOLE
14 protected GridSpacerWidget m_FriendsContainer;
15 protected TextWidget m_FriendsResult;
19 protected TextWidget m_TimeAccelerationResult;
20 protected ImageWidget m_TimeIcon;
22 protected TextWidget m_BattleyeResult;
24 protected WrapSpacerWidget m_VersionContainer;
25 protected TextWidget m_VersionResult;
27 protected GridSpacerWidget m_ServerDecContainer;
28 protected MultilineTextWidget m_ServerDesc;
30 protected WrapSpacerWidget m_DetailsContainerRight;
31 protected ImageWidget m_MapImage;
36 protected bool m_IsOnline;
43 m_ServerNameText = TextWidget.Cast(root.FindAnyWidget(
"details_servername_label"));
44 m_ServerTypeResult = TextWidget.Cast(root.FindAnyWidget(
"details_servertype_result_label"));
45 m_ServerModeResult = TextWidget.Cast(root.FindAnyWidget(
"details_mode_result_label"));
46 m_LastCharacterResult = TextWidget.Cast(root.FindAnyWidget(
"details_character_result_label"));
47 m_ServerIP = TextWidget.Cast(root.FindAnyWidget(
"details_ip_result_label"));
49 #ifdef PLATFORM_WINDOWS
50 #ifndef PLATFORM_CONSOLE
51 m_FriendsContainer = GridSpacerWidget.Cast(root.FindAnyWidget(
"details_friends_container"));
52 m_FriendsResult = TextWidget.Cast(root.FindAnyWidget(
"details_friends_result_label"));
56 m_TimeAccelerationResult = TextWidget.Cast(root.FindAnyWidget(
"details_time_result_label"));
57 m_TimeIcon = ImageWidget.Cast(root.FindAnyWidget(
"detail_time_img"));
59 m_BattleyeResult = TextWidget.Cast(root.FindAnyWidget(
"details_battleye_result_label"));
61 m_VersionContainer = WrapSpacerWidget.Cast(root.FindAnyWidget(
"details_version_container"));
62 m_VersionResult = TextWidget.Cast(root.FindAnyWidget(
"details_version_result_label"));
64 m_ServerDecContainer = GridSpacerWidget.Cast(root.FindAnyWidget(
"details_description_container"));
65 m_ServerDesc = MultilineTextWidget.Cast(root.FindAnyWidget(
"details_description_label"));
67 m_DetailsContainerRight = WrapSpacerWidget.Cast(root.FindAnyWidget(
"details_container_right"));
68 m_MapImage = ImageWidget.Cast(root.FindAnyWidget(
"map_image"));
70 m_TimeIcon.LoadImageFile(0,
"set:dayz_gui image:icon_sun");
71 m_TimeIcon.LoadImageFile(1,
"set:dayz_gui image:icon_sun_accel");
72 m_TimeIcon.LoadImageFile(2,
"set:dayz_gui image:icon_moon");
73 m_TimeIcon.LoadImageFile(3,
"set:dayz_gui image:icon_moon_accel");
75 m_BtnShowFilters = ButtonWidget.Cast(parent.GetDetailsRoot().FindAnyWidget(
"show_filters_button"));
76 m_RefreshList = ButtonWidget.Cast(parent.GetFilterRoot().FindAnyWidget(
"refresh_list_button"));
89 SetName(serverInfo.m_Name);
90 #ifdef PLATFORM_WINDOWS
91 #ifndef PLATFORM_CONSOLE
93 SetMode(serverInfo.m_Disable3rdPerson);
96 #ifdef PLATFORM_CONSOLE
97 SetMode(serverInfo.m_ModeId);
98 SetConsoleType(serverInfo.m_Official);
100 SetServerIP(serverInfo.GetIpPort());
107 SetTimeIcon(serverInfo.m_TimeOfDay, serverInfo.m_EnvironmentTimeMul);
108 #ifdef PLATFORM_WINDOWS
109 #ifndef PLATFORM_CONSOLE
110 SetCharacter(serverInfo.m_CharactersAlive);
111 SetFriends(serverInfo.m_SteamFriends);
125 SetServerDesc(serverInfo.m_Description);
129 m_DetailsContainerRight.Show(
false);
135 m_ServerNameText.SetText(
"#STR_server_browser_details_no_server_selected");
136 m_ServerTypeResult.SetText(
"-");
137 m_ServerModeResult.SetText(
"-");
138 m_ServerIP.SetText(
"-");
139 m_TimeIcon.Show(
false);
140 m_TimeAccelerationResult.Show(
true);
141 m_TimeAccelerationResult.SetText(
"-");
144 protected void SetName(
string name)
146 m_ServerNameText.SetText(
name);
147 m_ServerNameText.Update();
150 protected void SetType(
string shardId)
152 string result =
"#server_browser_tab_community";
153 if (shardId.Length() == 3 && shardId.ToInt() < 200)
154 result =
"#server_browser_entry_official";
156 m_ServerTypeResult.SetText(result);
159 #ifdef PLATFORM_CONSOLE
160 protected void SetConsoleType(
bool offical)
162 string result =
"#server_browser_tab_community";
164 result =
"#server_browser_entry_official";
166 m_ServerTypeResult.SetText(result);
170 protected void SetMode(
int mode)
172 string result =
"#STR_server_browser_no_server_selected";
177 result =
"#STR_server_browser_details_third_person";
182 result =
"#STR_server_browser_details_first_person";
187 m_ServerModeResult.SetText(result);
190 protected void SetServerIP(
string ip)
192 m_ServerIP.SetText(ip);
195#ifdef PLATFORM_WINDOWS
196 #ifndef PLATFORM_CONSOLE
197 protected void SetCharacter(
string characterName)
199 string result =
"#STR_server_browser_char_not_alive";
200 if (characterName !=
"")
201 result = characterName;
203 m_LastCharacterResult.SetText(result);
206 protected void SetFriends(
string steamFriends =
"")
209 if (steamFriends !=
"")
210 result = steamFriends;
212 m_FriendsResult.SetText(result);
213 m_FriendsResult.Update();
218 protected void SetTimeAcceleration(
float timeMul,
float nightTimeMul)
220 m_TimeAccelerationResult.SetText(timeMul.ToString() +
"/" + nightTimeMul.ToString());
223 void SetTimeIcon(
string time,
float multiplier)
228 time.Split(
":", arr);
230 if (arr.Count() == 2)
232 int hour = arr.Get(0).ToInt();
233 int minute = arr.Get(1).ToInt();
235 if (hour >= 19 || hour <= 5)
238 m_TimeIcon.SetImage(3);
240 m_TimeIcon.SetImage(2);
245 m_TimeIcon.SetImage(1);
247 m_TimeIcon.SetImage(0);
250 m_TimeIcon.Show(
true);
251 m_TimeAccelerationResult.Show(
false);
256 m_TimeIcon.Show(
false);
257 m_TimeAccelerationResult.Show(
true);
258 m_TimeAccelerationResult.SetText(
"-");
262 protected void SetBattleyeState(
int enabled = -1)
264 string result =
"#STR_server_browser_no_server_selected";
265 int color =
ARGB(255, 255, 255, 255);
271 result =
"#server_browser_entry_disabled";
272 color =
ARGB(255, 255, 0, 0);
277 result =
"#server_browser_entry_enabled";
278 color =
ARGB(255, 0, 255, 0);
283 m_BattleyeResult.SetText(result);
284 m_BattleyeResult.SetColor(color);
287 protected void SetVersion(
string version)
289 m_VersionResult.SetText(version);
292 protected void SetServerDesc(
string desc)
294 m_ServerDesc.SetText(desc);
295 m_ServerDesc.Update();
301 m_MapImage.LoadImageFile(0, mapImagePath);
302 m_DetailsContainerRight.Show(
true);
307 #ifdef PLATFORM_CONSOLE
308 if (m_Tab.GetTabType() ==
TabType.FAVORITE)
319 override bool OnFocus(Widget w,
int x,
int y)
321 m_Tab.OnDetailsFocus(w);
override bool OnMouseEnter(Widget w, int x, int y)
override bool OnMouseLeave(Widget w, Widget enterW, int x, int y)
void SetType(eBleedingSourceType type)
PlayerSpawnPresetDiscreteItemSetSlotData name
one set for cargo
GetServersResultRow the output structure of the GetServers operation that represents one game server.
static string GetServerMapImagePath(string mapName)
override bool OnMouseLeave(Widget w, Widget enterW, int x, int y)
override bool OnMouseEnter(Widget w, int x, int y)
Result for an object found in CGame.IsBoxCollidingGeometryProxy.
array< string > TStringArray
int ARGB(int a, int r, int g, int b)
ButtonWidget m_BtnShowFilters
override bool OnFocus(Widget w, int x, int y)