18enum ServerBrowserRightAreaView
35 protected ref ServerBrowserFilterContainer
m_Filters;
37 protected ServerBrowserMenuNew
m_Menu;
87 protected ref ServerBrowserDetailsContainer
m_Details;
112 if (
GetGame().GetContentDLCService())
135 case EDLCId.DLC_FROSTLINE:
138 foreach (ServerBrowserEntry entry : serverEntries)
140 entry.RefreshDLCIcon();
158 Widget root = entry.GetRoot();
159 Widget first_child = root.GetParent().GetChildren();
160 Widget last_child = first_child;
163 if ( last_child.GetSibling() )
164 last_child = last_child.GetSibling();
169 root.GetParent().Update();
175 float bottom_pos =
y + y_s;
177 root.GetScreenPos( x_l, y_l );
178 root.GetScreenSize( x_s, y_s );
180 if ( root == first_child )
184 else if ( root == last_child )
188 else if ( y_l + y_s >= bottom_pos )
213 m_Menu.FilterFocus(
false);
225 m_Menu.DetailsFocus(
false);
231 m_Menu.DetailsFocus(
true);
241 m_Menu.ServerListFocus(focus, favorite);
258 #ifdef PLATFORM_CONSOLE
263 aButtonLabel =
"#ps4_ingame_menu_select";
265 aButtonLabel =
"#layout_xbox_ingame_menu_select";
267 m_Menu.UpdateAButtonLabel(aButtonLabel);
271 aButtonLabel =
"#dialog_change";
272 m_Menu.UpdateAButtonLabel(aButtonLabel);
276 m_Menu.ShowAButton(
false);
379 Widget sibling = focused.GetSibling();
383 if ( focused.GetName() ==
"server_browser_list_entry_root" )
388 SetFocus( focused.GetParent().GetSibling().GetChildren() );
395 if ( focused && focused.GetName() ==
"server_browser_list_entry_root" )
397 Widget sibling = focused.GetParent().GetChildren();
398 if ( focused == sibling )
403 if ( sibling && sibling.GetSibling() == focused )
409 sibling = sibling.GetSibling();
445 m_Menu.AddFavoritesToFilter( input );
461 m_Menu.DeselectCurrentServer();
465 #ifndef PLATFORM_WINDOWS
472 #ifdef PLATFORM_CONSOLE
514 #ifdef PLATFORM_CONSOLE
525 m_Menu.SelectServer(server);
596 return "currentNumberPlayers";
617 ServerBrowserEntry entry;
620 entry.SetFavorite(
false);
650 if ( w.IsInherited( ButtonWidget ) )
652 ButtonWidget button = ButtonWidget.Cast( w );
653 button.SetTextColor(
ARGB( 255, 200, 0, 0 ) );
656 w.SetColor(
ARGB( 255, 0, 0, 0) );
661 ImageWidget image = ImageWidget.Cast( w.FindAnyWidget( w.GetName() +
"_image" ) );
662 Widget option =
Widget.Cast( w.FindAnyWidget( w.GetName() +
"_option_wrapper" ) );
663 Widget option_label = w.FindAnyWidget(
"option_label" );
667 text1.SetColor(
ARGB( 255, 255, 0, 0 ) );
672 text2.SetColor(
ARGB( 255, 255, 0, 0 ) );
677 text3.SetColor(
ARGB( 255, 255, 0, 0 ) );
683 image.SetColor(
ARGB( 255, 200, 0, 0 ) );
688 option.SetColor(
ARGB( 255, 255, 0, 0 ) );
693 option_label.SetColor(
ARGB( 255, 255, 0, 0 ) );
704 if ( w.IsInherited( ButtonWidget ) )
706 ButtonWidget button = ButtonWidget.Cast( w );
707 button.SetTextColor(
ARGB( 255, 255, 255, 255 ) );
713 ImageWidget image = ImageWidget.Cast( w.FindAnyWidget( w.GetName() +
"_image" ) );
714 Widget option = w.FindAnyWidget( w.GetName() +
"_option_wrapper" );
715 Widget option_label = w.FindAnyWidget(
"option_label" );
719 text1.SetColor(
ARGB( 255, 255, 255, 255 ) );
724 text2.SetColor(
ARGB( 255, 255, 255, 255 ) );
729 text3.SetColor(
ARGB( 255, 255, 255, 255 ) );
735 image.SetColor(
ARGB( 255, 255, 255, 255 ) );
740 option.SetColor(
ARGB( 150, 255, 255, 255 ) );
745 option_label.SetColor(
ARGB( 255, 255, 255, 255 ) );
751 #ifdef PLATFORM_WINDOWS
757 ButtonWidget button = ButtonWidget.Cast( w );
769 case SelectedPanel.BROWSER:
781 case SelectedPanel.DETAILS:
786 case SelectedPanel.FILTERS:
800 m_Details.SetDetails(server_info, online);
EBiosError
Possible Error codes for bios API. This is the list of errors that can be returned from bios API....
void LoadExtraEntries(int index)
void ServerBrowserTab(Widget parent, ServerBrowserMenuNew menu, TabType type)
ref ServerBrowserFilterContainer m_Filters
ref map< ESortType, ref array< ref GetServersResultRow > > m_EntriesSorted
void OnDetailsFocusLost(Widget w)
Widget m_FilterSearchText
void SelectServer(ServerBrowserEntry server)
TextWidget m_RightAreaHeaderText
ServerBrowserEntry m_SelectedServer
void ButtonDisable(Widget w)
ref GetServersInput m_CurrentFilterInput
void SwitchRightAreaView()
void ServerListFocus(bool focus, bool favorite)
ButtonWidget m_BtnPageNext
ref map< ESortType, ESortOrder > m_SortInverted
bool IsPingInRange(int ping, string max_ping)
ButtonWidget m_BtnShowFilters
ref map< string, ref ServerBrowserEntry > m_EntryWidgets
bool GetIsServerLoadingFinished()
void ScrollToEntry(ServerBrowserEntry entry)
void Connect(ServerBrowserEntry server)
ScrollWidget m_ServerListScroller
string m_CurrentSelectedServer
ServerBrowserMenuNew m_Menu
ref map< string, ref array< string > > m_EntryMods
SelectedPanel m_SelectedPanel
ServerBrowserEntry GetSelectedServer()
void Unfavorite(string uid)
ButtonWidget m_BtnPagePrev
void ButtonEnable(Widget w)
SpacerBaseWidget m_ServerList
void OnDetailsFocus(Widget w)
void AddFavoritesToFilter(GetServersInput input)
void SetServerDetails(GetServersResultRow server_info, bool online)
override bool OnFocusLost(Widget w, int x, int y)
Widget m_FilterSearchTextBox
ref ServerBrowserDetailsContainer m_Details
override bool OnFocus(Widget w, int x, int y)
ref set< string > m_OnlineFavServers
void SetCurrentPage(int page_num)
ButtonWidget m_BtnShowDetails
void OnDLCChange(EDLCId dlcId)
ServerBrowserMenuNew GetRootMenu()
static int COLOR_DISABLED_TEXT
GetServersResult the output structure of the GetServers operation.
GetServersResultRow the output structure of the GetServers operation that represents one game server.
static void LoadServers(notnull GetServersInput inputValues)
override void OnFilterFocus(Widget w)
override void PressThumbRight()
override void OnFilterFocusLost(Widget w)
override void PressSholderRight()
override bool IsFocusable(Widget w)
override void ShowServerDetails()
override void ColorDisable(Widget w)
override void ApplyFilters()
override bool OnMouseLeave(Widget w, Widget enterW, int x, int y)
override void SwitchToDetails(bool focus=true)
override void SetSort(ESortType type, ESortOrder order)
override void SwitchToFilters(bool focus=true)
override void ColorNormal(Widget w)
override int AddSorted(GetServersResultRow entry)
override void ResetFilters()
override bool PassFilter(GetServersResultRow result)
override void RefreshList()
override void OnLoadServersAsyncConsole(GetServersResult result_list, EBiosError error, string response)
override void UpdateServerList()
override void PressSholderLeft()
override void OnFilterChanged()
override bool OnMouseEnter(Widget w, int x, int y)
override void OnPressShoulder()
override void RightRelease()
override void OnLoadServerModsAsync(string server_id, array< string > mods)
override void Construct(Widget parent, ServerBrowserMenuNew menu, TabType type)
override void ColorHighlight(Widget w)
override void OnLoadServersAsyncPC(GetServersResult result_list, EBiosError error, string response)
override void RightHold()
override void LeftRelease()
Result for an object found in CGame.IsBoxCollidingGeometryProxy.
@ NONE
body is not in simulation, nor in collision world
proto native int Length()
Returns length of string.
proto native int ToInt()
Converts string to integer.
proto string Substring(int start, int len)
Substring of 'str' from 'start' position 'len' number of characters.
int ARGB(int a, int r, int g, int b)