mirror of
https://github.com/ineedbots/t5_bot_warfare.git
synced 2025-04-21 17:15:42 +00:00
577 lines
24 KiB
Plaintext
577 lines
24 KiB
Plaintext
#include "ui/menudef.h"
|
|
#include "ui_mp/common_macro.inc"
|
|
#include "ui/framestyle.inc"
|
|
#include "ui_mp/newframe.inc"
|
|
#include "ui_mp/serverbrowser.inc";
|
|
#include "ui_mp/menustyle.inc"
|
|
#include "ui/choices_setup_common.menu"
|
|
#include "ui_mp/item_animate.inc"
|
|
|
|
#define SERVER_BROWSER_HEIGHT 420
|
|
#define SERVER_BROWSER_WIDTH TABLE_WIDTH
|
|
|
|
#define SERVER_BROWSER_BODY_X_START ( -SERVER_BROWSER_WIDTH / 2 + 15 )
|
|
#define SERVER_BROWSER_BODY_Y_START ( -SERVER_BROWSER_HEIGHT / 2 + 15 + NEW_FRAME_HEADER_HEIGHT )
|
|
|
|
|
|
#undef CHOICE_HORIZONTAL_ALIGN
|
|
#define CHOICE_HORIZONTAL_ALIGN HORIZONTAL_ALIGN_CENTER
|
|
|
|
#undef CHOICE_VERTICAL_ALIGN
|
|
#define CHOICE_VERTICAL_ALIGN VERTICAL_ALIGN_CENTER
|
|
|
|
#define FLYOUT_NONE 0
|
|
#define FLYOUT_BROWSER 3
|
|
|
|
#undef CHOICE_TEXTSTYLE
|
|
#define CHOICE_TEXTSTYLE ITEM_TEXTSTYLE_NORMAL
|
|
|
|
#define TAB_OPEN( menuName ) \
|
|
execNow closemenuImmediate (dvarstring("ui_serverBrowserMenu")); \
|
|
execNow openMenuImmediate (menuName); \
|
|
|
|
#undef ORIGIN_TITLE
|
|
#define ORIGIN_TITLE 10 0
|
|
|
|
#define CHOICE_TAB_TEXTSIZE TEXTSIZE_DEFAULT
|
|
#define TAB_1_TEXT ( locString( "@MENU_JOIN_SERVER_RANKED_CAPS" ) )
|
|
#define TAB_2_TEXT ( locString( "@MENU_JOIN_SERVER_UNRANKED_CAPS" ) )
|
|
#define TAB_3_TEXT ( locString( "@MENU_JOIN_SERVER_WAGER_CAPS" ) )
|
|
#define TAB_4_TEXT ( locString( "@MENU_JOIN_SERVER_FRIENDS_CAPS" ) )
|
|
#define TAB_5_TEXT ( locString( "@MENU_JOIN_SERVER_FAVORITES_CAPS" ) )
|
|
#define TAB_6_TEXT ( locString( "@MENU_JOIN_SERVER_HISTORY_CAPS" ) )
|
|
|
|
#define TAB_BG_PAD 5
|
|
#define TAB_1_WIDTH ( getTextWidth( TAB_1_TEXT, CHOICE_TEXTFONT, TEXTSIZE_SMALL ) + (TAB_BG_PAD*2) )
|
|
#define TAB_2_WIDTH ( getTextWidth( TAB_2_TEXT, CHOICE_TEXTFONT, TEXTSIZE_SMALL ) + (TAB_BG_PAD*2) )
|
|
#define TAB_3_WIDTH ( getTextWidth( TAB_3_TEXT, CHOICE_TEXTFONT, TEXTSIZE_SMALL ) + (TAB_BG_PAD*2) )
|
|
#define TAB_4_WIDTH ( getTextWidth( TAB_4_TEXT, CHOICE_TEXTFONT, TEXTSIZE_SMALL ) + (TAB_BG_PAD*2) )
|
|
#define TAB_5_WIDTH ( getTextWidth( TAB_5_TEXT, CHOICE_TEXTFONT, TEXTSIZE_SMALL ) + (TAB_BG_PAD*2) )
|
|
#define TAB_6_WIDTH ( getTextWidth( TAB_6_TEXT, CHOICE_TEXTFONT, TEXTSIZE_SMALL ) + (TAB_BG_PAD*2) )
|
|
#define TAB_HEIGHT 15
|
|
|
|
#define SERVER_BROWSER_TAB_1_X 9
|
|
#define SERVER_BROWSER_TAB_2_X ( SERVER_BROWSER_TAB_1_X + TAB_1_WIDTH )
|
|
#define SERVER_BROWSER_TAB_3_X ( SERVER_BROWSER_TAB_2_X + TAB_2_WIDTH )
|
|
#define SERVER_BROWSER_TAB_4_X ( SERVER_BROWSER_TAB_3_X + TAB_3_WIDTH )
|
|
#define SERVER_BROWSER_TAB_5_X ( SERVER_BROWSER_TAB_4_X + TAB_4_WIDTH )
|
|
#define SERVER_BROWSER_TAB_6_X ( SERVER_BROWSER_TAB_5_X + TAB_5_WIDTH )
|
|
|
|
#define SERVER_BROWSER_TAB_Y ( ( -SERVER_BROWSER_HEIGHT / 2 ) + NEW_FRAME_HEADER_HEIGHT - TAB_HEIGHT + 1 )
|
|
|
|
|
|
#define TAB( x, tabWidth, textArg, menuName, selected ) \
|
|
PREPROC_TEXT_DRAW_ADV_VIS_EX( ( -SERVER_BROWSER_WIDTH / 2 + x ), \
|
|
SERVER_BROWSER_TAB_Y, \
|
|
tabWidth, \
|
|
TAB_HEIGHT, \
|
|
HORIZONTAL_ALIGN_CENTER, VERTICAL_ALIGN_CENTER, \
|
|
textArg, TEXTSIZE_SMALL, 0, 0, ITEM_ALIGN_MIDDLE_CENTER, \
|
|
NEW_FRAME_GRAY_TEXT_COLOR, when( !selected ), TAB_MOUSEOVER_HIGHLIGHT; ) \
|
|
PREPROC_TEXT_DRAW_ADV_VIS_EX( ( -SERVER_BROWSER_WIDTH / 2 + x ), \
|
|
SERVER_BROWSER_TAB_Y, \
|
|
tabWidth, \
|
|
TAB_HEIGHT, \
|
|
HORIZONTAL_ALIGN_CENTER, VERTICAL_ALIGN_CENTER, \
|
|
textArg, TEXTSIZE_SMALL, 0, 0, ITEM_ALIGN_MIDDLE_CENTER, \
|
|
NEW_FRAME_ORANGE_RGB 1, when( selected ), ; ) \
|
|
TAB_ACTION_BUTTON_ADV( ( -SERVER_BROWSER_WIDTH / 2 + x ), \
|
|
( -SERVER_BROWSER_HEIGHT / 2 + NEW_FRAME_HEADER_HEIGHT - TAB_HEIGHT ), \
|
|
tabWidth, \
|
|
TAB_HEIGHT, \
|
|
HORIZONTAL_ALIGN_CENTER, VERTICAL_ALIGN_CENTER, \
|
|
TAB_OPEN( menuName ), 1, ; ) \
|
|
|
|
|
|
#define SERVER_BROWSER_TAB_BG( px, tabWidth, selected ) \
|
|
itemDef \
|
|
{ \
|
|
style WINDOW_STYLE_SHADER \
|
|
frame 16 0.2 FRAME_OPEN_BOTTOM \
|
|
rect 0 SERVER_BROWSER_TAB_Y 0 TAB_HEIGHT HORIZONTAL_ALIGN_CENTER VERTICAL_ALIGN_CENTER \
|
|
exp rect X( ( -SERVER_BROWSER_WIDTH / 2 + px ) ) \
|
|
exp rect W( tabWidth ) \
|
|
background "menu_mp_tab_frame_inner" \
|
|
forecolor 0.5 0.5 0.5 0.5 \
|
|
visible when( selected ) \
|
|
decoration \
|
|
} \
|
|
itemDef \
|
|
{ \
|
|
style WINDOW_STYLE_SHADER \
|
|
frame 16 0.2 FRAME_OPEN_BOTTOM \
|
|
rect 0 SERVER_BROWSER_TAB_Y 0 TAB_HEIGHT HORIZONTAL_ALIGN_CENTER VERTICAL_ALIGN_CENTER \
|
|
exp rect X( ( -SERVER_BROWSER_WIDTH / 2 + px ) ) \
|
|
exp rect W( tabWidth ) \
|
|
background "menu_mp_tab_frame_inner" \
|
|
forecolor 1 1 1 1 \
|
|
visible when( !selected ) \
|
|
decoration \
|
|
}
|
|
|
|
#define ON_ESC \
|
|
if( menuisopen( filter_window ) ) \
|
|
{ \
|
|
close filter_window; \
|
|
} \
|
|
else \
|
|
{ \
|
|
close self; \
|
|
}
|
|
|
|
#define SERVER_BROWSER_MENU_TEMPLATE( menuName, onOpenArg, onCloseArg ) \
|
|
name menuName \
|
|
rect 0 0 640 480 HORIZONTAL_ALIGN_FULLSCREEN VERTICAL_ALIGN_FULLSCREEN \
|
|
focuscolor COLOR_FOCUSED \
|
|
style WINDOW_STYLE_FILLED \
|
|
priority MENU_PRI_DEFAULT \
|
|
soundloop MENU_MUSIC \
|
|
openSlideSpeed DEFAULT_SLIDE_IN_SPEED \
|
|
closeSlideSpeed DEFAULT_SLIDE_OUT_SPEED \
|
|
openSlideDirection MENU_SLIDE_DIRECTION_TOP_TO_BOTTOM \
|
|
closeSlideDirection MENU_SLIDE_DIRECTION_TOP_TO_BOTTOM \
|
|
onFocus { \
|
|
setDvar ui_flyoutHasFocus FLYOUT_BROWSER; \
|
|
} \
|
|
onOpen { \
|
|
activateBlur; \
|
|
play uin_navigation_menu_lg_open; \
|
|
setdvar ui_serverBrowserMenu menuName; \
|
|
onOpenArg; \
|
|
uiScript PopulateServers; \
|
|
} \
|
|
onClose { \
|
|
execNow ui_animate menuName Browser "Maximized" DEFAULT_SLIDE_OUT_SPEED; \
|
|
deactivateBlur; \
|
|
onCloseArg; \
|
|
setDvar ui_flyoutHasFocus FLYOUT_NONE; \
|
|
execNow closemenuImmediate (filter_window); \
|
|
} \
|
|
onEsc { \
|
|
ON_ESC \
|
|
} \
|
|
execKeyInt 171 { \
|
|
uiScript RefreshServers; \
|
|
} \
|
|
|
|
|
|
#define GLOBAL_SERVER_COUNT \
|
|
PREPROC_TEXT_DRAW( (SERVER_BROWSER_WIDTH/2-7) (-SERVER_BROWSER_HEIGHT/2+2) 1 1 HORIZONTAL_ALIGN_CENTER VERTICAL_ALIGN_CENTER, 0 0, ( locString( "@PLATFORM_PLAYERS_ONLINE", GetPlayersRegisteredOnline() ) ), TEXTSIZE_DEFAULT, 0, 1, ITEM_ALIGN_TOP_RIGHT, 1 1 1 1 ) \
|
|
PREPROC_TEXT_DRAW( (SERVER_BROWSER_WIDTH/2-7) (-SERVER_BROWSER_HEIGHT/2+20) 1 1 HORIZONTAL_ALIGN_CENTER VERTICAL_ALIGN_CENTER, 0 0, ( locString( "@PLATFORM_ALL_SERVERS", GetDedicatedServersRegisteredOnline() ) ), TEXTSIZE_DEFAULT, 0, 1, ITEM_ALIGN_TOP_RIGHT, 1 1 1 1 )
|
|
|
|
// Don't let keys fall through to the main menu.
|
|
#define MASSIVE_HACK_KEYCATCHER \
|
|
itemDef \
|
|
{ \
|
|
style WINDOW_STYLE_EMPTY \
|
|
rect 0 0 640 480 HORIZONTAL_ALIGN_FULLSCREEN VERTICAL_ALIGN_FULLSCREEN \
|
|
forecolor 1 1 1 0 \
|
|
visible 1 \
|
|
}
|
|
|
|
#define SERVER_BROWSER_TAB_COMMON_ITEMS( selectedTabIndex ) \
|
|
MASSIVE_HACK_KEYCATCHER \
|
|
NEW_FRAME( SERVER_BROWSER_WIDTH, SERVER_BROWSER_HEIGHT ) \
|
|
NEW_FRAME_TITLE( SERVER_BROWSER_WIDTH, SERVER_BROWSER_HEIGHT, "@MENU_SERVER_BROWSER_CAPS", 1 ) \
|
|
SERVER_BROWSER_TAB_BG( SERVER_BROWSER_TAB_1_X, TAB_1_WIDTH, ( selectedTabIndex == 1 ) ) \
|
|
SERVER_BROWSER_TAB_BG( SERVER_BROWSER_TAB_2_X, TAB_2_WIDTH, ( selectedTabIndex == 2 ) ) \
|
|
SERVER_BROWSER_TAB_BG( SERVER_BROWSER_TAB_3_X, TAB_3_WIDTH, ( selectedTabIndex == 3 ) ) \
|
|
SERVER_BROWSER_TAB_BG( SERVER_BROWSER_TAB_4_X, TAB_4_WIDTH, ( selectedTabIndex == 4 ) ) \
|
|
SERVER_BROWSER_TAB_BG( SERVER_BROWSER_TAB_5_X, TAB_5_WIDTH, ( selectedTabIndex == 5 ) ) \
|
|
SERVER_BROWSER_TAB_BG( SERVER_BROWSER_TAB_6_X, TAB_6_WIDTH, ( selectedTabIndex == 6 ) ) \
|
|
TAB( SERVER_BROWSER_TAB_1_X, TAB_1_WIDTH, TAB_1_TEXT, server_browser_ranked, ( selectedTabIndex == 1 ) ) \
|
|
TAB( SERVER_BROWSER_TAB_2_X, TAB_2_WIDTH, TAB_2_TEXT, server_browser_unranked, ( selectedTabIndex == 2 ) ) \
|
|
TAB( SERVER_BROWSER_TAB_3_X, TAB_3_WIDTH, TAB_3_TEXT, server_browser_wager, ( selectedTabIndex == 3 ) ) \
|
|
TAB( SERVER_BROWSER_TAB_4_X, TAB_4_WIDTH, TAB_4_TEXT, server_browser_friends, ( selectedTabIndex == 4 ) ) \
|
|
TAB( SERVER_BROWSER_TAB_5_X, TAB_5_WIDTH, TAB_5_TEXT, server_browser_favorites, ( selectedTabIndex == 5 ) ) \
|
|
TAB( SERVER_BROWSER_TAB_6_X, TAB_6_WIDTH, TAB_6_TEXT, server_browser_history, ( selectedTabIndex == 6 ) ) \
|
|
GLOBAL_SERVER_COUNT
|
|
|
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////
|
|
///////////////////////////////////////////////////////////////////////////////////////////
|
|
// server_browser_main acts as a gateway to open the correct sub menu based upon dvar settings
|
|
menuDef
|
|
{
|
|
name server_browser_main
|
|
fullScreen 0
|
|
style WINDOW_STYLE_EMPTY
|
|
rect 0 0 640 480 HORIZONTAL_ALIGN_FULLSCREEN VERTICAL_ALIGN_FULLSCREEN
|
|
|
|
onFocus
|
|
{
|
|
close self;
|
|
exec openmenu (dvarString( "ui_serverBrowserMenu" ));
|
|
}
|
|
}
|
|
|
|
#define FILTER_ACTION \
|
|
if( menuisopen( filter_window ) ) \
|
|
{ \
|
|
close filter_window; \
|
|
} \
|
|
else \
|
|
{ \
|
|
open filter_window; \
|
|
}
|
|
|
|
#define BUTTON_SPACING 20
|
|
#define FILTER_BUTTON_OFFSET ( getTextWidth( locString( "@PLATFORM_BACK" ), CHOICE_TEXTFONT, TEXTSIZE_DEFAULT ) + 8 + BUTTON_SPACING )
|
|
#define SERVER_INFO_BUTTON_OFFSET ( FILTER_BUTTON_OFFSET + getTextWidth( locString( "@MENU_FILTER_SERVERS" ), CHOICE_TEXTFONT, TEXTSIZE_DEFAULT ) + 8 + BUTTON_SPACING )
|
|
#define JOIN_BUTTON_OFFSET ( 0 )
|
|
#define REFRESH_BUTTON_OFFSET ( -JOIN_BUTTON_OFFSET - getTextWidth( locString( "@MENU_JOIN_SERVER" ), CHOICE_TEXTFONT, TEXTSIZE_DEFAULT ) - 8 - BUTTON_SPACING )
|
|
|
|
#define SERVER_BROWSER_BOTTOM_BUTTONS \
|
|
NEW_FRAME_BUTTON_PC_LEFT_OFFSET( SERVER_BROWSER_WIDTH, SERVER_BROWSER_HEIGHT, FILTER_BUTTON_OFFSET, "@MENU_FILTER_SERVERS", FILTER_ACTION, 1 ) \
|
|
NEW_FRAME_BUTTON_PC_LEFT_OFFSET( SERVER_BROWSER_WIDTH, SERVER_BROWSER_HEIGHT, SERVER_INFO_BUTTON_OFFSET, "@MENU_SERVER_INFO", open newframeserverinfo;, 1 ) \
|
|
NEW_FRAME_BUTTON_PC_RIGHT_OFFSET( SERVER_BROWSER_WIDTH, SERVER_BROWSER_HEIGHT, REFRESH_BUTTON_OFFSET, "@MENU_REFRESH_LIST", uiScript RefreshServers;, 1 ) \
|
|
NEW_FRAME_BUTTON_PC_RIGHT_OFFSET( SERVER_BROWSER_WIDTH, SERVER_BROWSER_HEIGHT, JOIN_BUTTON_OFFSET, "@MENU_JOIN_SERVER", JOIN_SERVER_ACTION;, 1 ) \
|
|
NEW_FRAME_BACK_BUTTON_ACTION( SERVER_BROWSER_WIDTH, SERVER_BROWSER_HEIGHT, ON_ESC )
|
|
|
|
menuDef
|
|
{
|
|
SERVER_BROWSER_MENU_TEMPLATE( server_browser_ranked, uiscript UpdateNetSource AS_RANKED;, ; )
|
|
PC_TAB_SWITCH_ACTIONS( server_browser_ranked, server_browser_history, server_browser_unranked )
|
|
SERVER_BROWSER_TAB_COMMON_ITEMS( 1 );
|
|
|
|
// buttons
|
|
SERVER_BROWSER_BOTTOM_BUTTONS
|
|
|
|
// browser
|
|
SERVER_BROWSER( browser, FEEDER_SERVERS, 1)
|
|
}
|
|
|
|
menuDef
|
|
{
|
|
SERVER_BROWSER_MENU_TEMPLATE( server_browser_unranked, uiscript UpdateNetSource AS_UNRANKED;, ; )
|
|
PC_TAB_SWITCH_ACTIONS( server_browser_unranked, server_browser_ranked, server_browser_wager )
|
|
SERVER_BROWSER_TAB_COMMON_ITEMS( 2 )
|
|
|
|
// buttons
|
|
SERVER_BROWSER_BOTTOM_BUTTONS
|
|
|
|
// browser listbox with background
|
|
SERVER_BROWSER( browser, FEEDER_SERVERS, 1)
|
|
}
|
|
|
|
menuDef
|
|
{
|
|
SERVER_BROWSER_MENU_TEMPLATE( server_browser_wager, uiscript UpdateNetSource AS_WAGER;, ; )
|
|
PC_TAB_SWITCH_ACTIONS( server_browser_wager, server_browser_unranked, server_browser_friends )
|
|
SERVER_BROWSER_TAB_COMMON_ITEMS( 3 )
|
|
|
|
// buttons
|
|
SERVER_BROWSER_BOTTOM_BUTTONS
|
|
|
|
// browser listbox with background
|
|
SERVER_BROWSER( browser, FEEDER_SERVERS, 1)
|
|
}
|
|
|
|
menuDef
|
|
{
|
|
SERVER_BROWSER_MENU_TEMPLATE( server_browser_friends, uiscript UpdateNetSource AS_FRIENDS;, ; )
|
|
PC_TAB_SWITCH_ACTIONS( server_browser_friends, server_browser_wager, server_browser_favorites )
|
|
SERVER_BROWSER_TAB_COMMON_ITEMS( 4 )
|
|
|
|
// buttons
|
|
SERVER_BROWSER_BOTTOM_BUTTONS
|
|
|
|
// browser listbox with background
|
|
SERVER_BROWSER( browser, FEEDER_SERVERS, 1)
|
|
}
|
|
|
|
menuDef
|
|
{
|
|
SERVER_BROWSER_MENU_TEMPLATE( server_browser_favorites, uiscript UpdateNetSource AS_FAVORITES;, ; )
|
|
PC_TAB_SWITCH_ACTIONS( server_browser_favorites, server_browser_friends, server_browser_history )
|
|
SERVER_BROWSER_TAB_COMMON_ITEMS( 5 )
|
|
|
|
// buttons
|
|
SERVER_BROWSER_BOTTOM_BUTTONS
|
|
|
|
// browser listbox with background
|
|
SERVER_BROWSER( browser, FEEDER_SERVERS, 1)
|
|
}
|
|
|
|
menuDef
|
|
{
|
|
SERVER_BROWSER_MENU_TEMPLATE( server_browser_history, uiscript UpdateNetSource AS_HISTORY;, ; )
|
|
PC_TAB_SWITCH_ACTIONS( server_browser_history, server_browser_favorites, server_browser_ranked )
|
|
SERVER_BROWSER_TAB_COMMON_ITEMS( 6 )
|
|
|
|
// buttons
|
|
SERVER_BROWSER_BOTTOM_BUTTONS
|
|
|
|
// browser listbox with background
|
|
SERVER_BROWSER( browser, FEEDER_SERVERS, 1)
|
|
}
|
|
|
|
#undef MENUDEF_NAME
|
|
#define MENUDEF_NAME filter_window
|
|
|
|
#undef CHOICE_BUTTON_NAME
|
|
#define CHOICE_BUTTON_NAME "filter_"
|
|
|
|
#define FILTER_WIDTH TABLE_WIDTH
|
|
#define FILTER_HEIGHT FILTER_MENU_HEIGHT
|
|
#define FILTER_X (TABLE_X - 10)
|
|
#define FILTER_Y ( TABLE_Y + (TABLE_HEIGHT - FILTER_HEIGHT) - 2 )
|
|
|
|
#undef CHOICE_TEXT_COLOR_NO_HL
|
|
#undef CHOICE_TEXT_COLOR_HL
|
|
#undef CHOICE_CAPTION_TEXT_COLOR_NO_HL
|
|
#undef CHOICE_CAPTION_TEXT_COLOR_HL
|
|
|
|
#define CHOICE_TEXT_COLOR_NO_HL CHOICE_TEXTCOLOR
|
|
#define CHOICE_TEXT_COLOR_HL 1 1 1 1
|
|
#define CHOICE_CAPTION_TEXT_COLOR_NO_HL CHOICE_TEXTCOLOR
|
|
#define CHOICE_CAPTION_TEXT_COLOR_HL 0 0 0 1
|
|
|
|
|
|
#undef CHOICE_SIZE_X
|
|
#define CHOICE_SIZE_X 120
|
|
#undef CHOICE_Y_START
|
|
#define CHOICE_Y_START 0
|
|
#undef CHOICE_X_START
|
|
#define CHOICE_X_START 0
|
|
|
|
#undef CHOICE_TEXTSIZE
|
|
#define CHOICE_TEXTSIZE TEXTSIZE_SMALL
|
|
|
|
#undef CHOICE_DVAR_EXTRA_WIDTH
|
|
#define CHOICE_DVAR_EXTRA_WIDTH 60
|
|
|
|
menuDef
|
|
{
|
|
name filter_window
|
|
rect FILTER_X FILTER_Y FILTER_WIDTH FILTER_HEIGHT CHOICE_HORIZONTAL_ALIGN CHOICE_VERTICAL_ALIGN
|
|
focuscolor COLOR_FOCUSED
|
|
style WINDOW_STYLE_FILLED
|
|
priority MENU_PRI_ONTOP
|
|
openSlideSpeed DEFAULT_SLIDE_IN_SPEED
|
|
closeSlideSpeed (DEFAULT_SLIDE_OUT_SPEED*2)
|
|
openSlideDirection MENU_SLIDE_DIRECTION_BOTTOM_TO_TOP
|
|
closeSlideDirection MENU_SLIDE_DIRECTION_TOP_TO_BOTTOM
|
|
visible 1
|
|
|
|
onOpen
|
|
{
|
|
play uin_navigation_menu_lg_open;
|
|
execNow ui_animate (dvarString( "ui_serverBrowserMenu" )) Browser "Reduced" DEFAULT_SLIDE_IN_SPEED;
|
|
}
|
|
onClose
|
|
{
|
|
execNow ui_animate (dvarString( "ui_serverBrowserMenu" )) Browser "Maximized" DEFAULT_SLIDE_OUT_SPEED;
|
|
}
|
|
onEsc
|
|
{
|
|
close self;
|
|
}
|
|
leaveFocus
|
|
{
|
|
close self;
|
|
}
|
|
|
|
itemDef
|
|
{
|
|
style WINDOW_STYLE_SHADER_FRAMED
|
|
rect -10 -10 ( FILTER_WIDTH + 20 ) ( FILTER_HEIGHT + 20 ) HORIZONTAL_ALIGN_CENTER VERTICAL_ALIGN_CENTER
|
|
background "menu_mp_lobby_frame_outer"
|
|
forecolor 1 1 1 1
|
|
visible when( 1 );
|
|
decoration
|
|
frame 26 0.1 FRAME_SIDE_ALL
|
|
}
|
|
itemDef
|
|
{
|
|
style WINDOW_STYLE_SHADER_FRAMED
|
|
rect 0 0 FILTER_WIDTH FILTER_HEIGHT HORIZONTAL_ALIGN_CENTER VERTICAL_ALIGN_CENTER
|
|
background "menu_mp_lobby_frame_inner"
|
|
forecolor 1 1 1 1
|
|
visible when( 1 );
|
|
decoration
|
|
frame 26 0.1 FRAME_OPEN_TOP
|
|
}
|
|
|
|
// View empty.
|
|
FRAME_CHOICE_DVARFLOATLIST( 1, "@MENU_VIEW_EMPTY", ui_browserShowEmpty, { "@MENU_NO" 0 "@MENU_YES" 1 }, uiScript RefreshFilter; )
|
|
|
|
// View full.
|
|
FRAME_CHOICE_DVARFLOATLIST( 2, "@MENU_VIEW_FULL", ui_browserShowFull, { "@MENU_NO" 0 "@MENU_YES" 1 }, uiScript RefreshFilter; )
|
|
|
|
// With password.
|
|
FRAME_CHOICE_DVARFLOATLIST( 3, "@MENU_VIEW_PASSWORD", ui_browserShowPassword, { "@MENU_ALL" -1 "@MENU_NO" 0 "@MENU_YES" 1 }, uiScript RefreshFilter; )
|
|
|
|
// mods
|
|
FRAME_CHOICE_DVARLIST_VIS( 4, "@MENU_MODS", "", ITEM_TYPE_OD_TEXT_BUTTON, ownerdraw UI_JOINMOD, uiScript RefreshFilter;, 1 )
|
|
|
|
|
|
#undef CHOICE_X_START
|
|
#define CHOICE_X_START 180
|
|
|
|
#undef CHOICE_Y_START
|
|
#define CHOICE_Y_START -76
|
|
|
|
// Voice chat.
|
|
FRAME_CHOICE_DVARFLOATLIST( 5, "@MENU_VOICECHAT", ui_browserVoiceChat, { "@MENU_ALL" -1 "@MENU_NO" 0 "@MENU_YES" 1 }, uiScript RefreshFilter; )
|
|
|
|
// Hardcore.
|
|
FRAME_CHOICE_DVARFLOATLIST( 6, "@MPUI_HARDCORE_PRE", ui_browserHardcore, { "@MENU_ALL" -1 "@MENU_NO" 0 "@MENU_YES" 1 }, uiScript RefreshFilter; )
|
|
|
|
// Friendly fire.
|
|
FRAME_CHOICE_DVARFLOATLIST( 7, "@MENU_VIEW_FRIENDLY_FIRE", ui_browserFriendlyfire, { "@MENU_ALL" -1 "@MENU_OFF" 0 "@MENU_ON" 1 "@MENU_REFLECT" 2 "@MENU_SHARED" 3 }, uiScript RefreshFilter; )
|
|
|
|
|
|
#undef CHOICE_X_START
|
|
#define CHOICE_X_START 360
|
|
|
|
#undef CHOICE_Y_START
|
|
#define CHOICE_Y_START -152
|
|
|
|
// Map
|
|
FRAME_CHOICE_DVARENUMLIST_VIS( 9, "@MPUI_CHANGE_MAP_LOWER", ui_browserMap, ui_browserMap, uiScript RefreshFilter;, 1 )
|
|
|
|
// Game Mode
|
|
#define MODE_LIST { "@MENU_ALL"; 0; "@MPUI_TDM_SHORT_CAPS"; "tdm"; "@MPUI_DM_SHORT_CAPS"; "dm"; "@MPUI_SD_SHORT_CAPS"; "sd"; "@MPUI_DOM_SHORT_CAPS"; "dom"; "@MPUI_KOTH_SHORT_CAPS"; "koth"; "@MPUI_DEM_SHORT_CAPS"; "dem"; "@MPUI_CTF_SHORT_CAPS"; "ctf"; "@MPUI_SAB_SHORT_CAPS"; "sab"; }
|
|
FRAME_CHOICE_DVARSTRINGLIST( 10, "@MENU_GAME_MODE_PRE", ui_browserGameMode, MODE_LIST;, uiScript RefreshFilter;)
|
|
|
|
// Hide Dlc.
|
|
FRAME_CHOICE_DVARFLOATLIST( 11, "@MPUI_DLC_CONTENT", ui_browserHideDlc, { "@MENU_ALL" 0 "@MPUI_PURCHASED" 1 }, uiScript RefreshFilter; )
|
|
|
|
#undef CHOICE_SIZE_X
|
|
#define CHOICE_SIZE_X 98
|
|
|
|
#undef CHOICE_X_START
|
|
#define CHOICE_X_START 480
|
|
|
|
#undef CHOICE_TEXT_COLOR_NO_HL
|
|
#undef CHOICE_TEXT_COLOR_HL
|
|
#undef CHOICE_CAPTION_TEXT_COLOR_NO_HL
|
|
#undef CHOICE_CAPTION_TEXT_COLOR_HL
|
|
|
|
#define CHOICE_TEXT_COLOR_NO_HL CHOICE_TEXTCOLOR
|
|
#define CHOICE_TEXT_COLOR_HL 0 0 0 1
|
|
#define CHOICE_CAPTION_TEXT_COLOR_NO_HL CHOICE_TEXTCOLOR
|
|
#define CHOICE_CAPTION_TEXT_COLOR_HL 0 0 0 1
|
|
|
|
// Reset
|
|
FRAME_CHOICE_BUTTON( 12, "@MENU_RESET", exec "exec default_filter.cfg"; )
|
|
|
|
// Apply
|
|
//FRAME_CHOICE_BUTTON( 14, "@MENU_APPLY", uiScript RefreshFilter; )
|
|
}
|
|
}
|
|
|
|
#undef CHOICE_TEXTSIZE
|
|
#define CHOICE_TEXTSIZE TEXTSIZE_DEFAULT
|
|
|
|
#include "ui_mp/popupstyle.inc"
|
|
#include "ui/choices_setup_popmenu.menu"
|
|
#include "ui_mp/popup_player_info.inc"
|
|
|
|
#undef CHOICE_FOCUS_SOUND
|
|
#define CHOICE_FOCUS_SOUND "uin_navigation_over"
|
|
|
|
// Redefinitions for MEDIUM_POPUP_SETUP popups
|
|
#undef POPUP_WIDTH
|
|
#define POPUP_WIDTH MEDIUM_POPUP_WIDTH
|
|
#undef POPUP_HEIGHT
|
|
#define POPUP_HEIGHT MEDIUM_POPUP_HEIGHT
|
|
#undef CHOICE_SIZE_X
|
|
#define CHOICE_SIZE_X CONFIRM_PURCHASE_SIZE_X
|
|
#undef CHOICE_Y_START
|
|
#define CHOICE_Y_START POPUP_Y_START_TOP
|
|
#undef PLAYER_INFO_ALIGN
|
|
#define PLAYER_INFO_ALIGN // Purposely set to nothing. The popup setup macro sets the alignment. If items within it set their own aligment, they end up offset incorrectly.
|
|
#undef PLAYER_INFO_X_START
|
|
#define PLAYER_INFO_X_START( frameWidth ) ( frameWidth - PLAYER_INFO_WIDTH - PLAYER_INFO_PAD )
|
|
#undef PLAYER_INFO_Y_START
|
|
#define PLAYER_INFO_Y_START( frameHeight ) ( PLAYER_INFO_PAD * 2 )
|
|
#undef BG_BACKCOLOR
|
|
#define BG_BACKCOLOR POPUP_BACKCOLOR
|
|
|
|
#define PURCHASE_CONFIRMATION_RIGHT_X ( MEDIUM_POPUP_WIDTH / 2 )
|
|
#define PURCHASE_INFO_WIDTH ( ( MEDIUM_POPUP_WIDTH / 2 ) - POPUP_SIDE_PAD )
|
|
|
|
#define PURCHASE_CONFIRMATION_ITEM_INFO( itemName, itemCost ) \
|
|
CONFIRMATION_ITEM_INFO_VIS( itemName, itemCost, "@MPUI_BALANCE_AFTER_PURCHASE", locString( "@MENU_POINTS", GetStatByName( "CODPOINTS" ) - itemCost ), 1 )
|
|
|
|
#define CONFIRMATION_ITEM_INFO_VIS( itemName, itemCost, balanceHeader, balanceAfter, visArg ) \
|
|
PREPROC_TEXT_DRAW_VIS_EX( (PURCHASE_CONFIRMATION_RIGHT_X) CHOICE_Y( 1 ) PURCHASE_INFO_WIDTH CHOICE_SIZE_Y, 0 0, locString( itemName, itemCost ), TEXTSIZE_LARGE, 0, 0, ITEM_ALIGN_MIDDLE_LEFT, NEW_FRAME_GREEN_RGB 1, visArg, ; ) \ /* Name */
|
|
PREPROC_TEXT_DRAW_VIS_EX( (PURCHASE_CONFIRMATION_RIGHT_X) CHOICE_Y( 7 ) PURCHASE_INFO_WIDTH CHOICE_SIZE_Y, 0 0, "@MPUI_YOUR_BANK", TEXTSIZE_DEFAULT, 0, 0, ITEM_ALIGN_TOP_LEFT, MEDIUM_POPUP_GRAY, visArg, ; ) \ /* Currency Available Header */
|
|
PREPROC_TEXT_DRAW_VIS_EX( (MEDIUM_POPUP_WIDTH-75) CHOICE_Y( 7 ) PURCHASE_INFO_WIDTH CHOICE_SIZE_Y, 0 0, locString( "@MENU_POINTS", GetStatByName( "CODPOINTS" ) ), TEXTSIZE_DEFAULT, 0, 0, ITEM_ALIGN_TOP_LEFT, 1 1 1 1, visArg, ; ) \ /* Currency Available */
|
|
PREPROC_TEXT_DRAW_VIS_EX( (PURCHASE_CONFIRMATION_RIGHT_X) CHOICE_Y( 8 ) PURCHASE_INFO_WIDTH CHOICE_SIZE_Y, 0 0, balanceHeader, TEXTSIZE_DEFAULT, 0, 0, ITEM_ALIGN_TOP_LEFT, MEDIUM_POPUP_GRAY, visArg, ; ) \ /* Balance After Purchase Header */
|
|
PREPROC_TEXT_DRAW_VIS_EX( (MEDIUM_POPUP_WIDTH-75) CHOICE_Y( 8 ) PURCHASE_INFO_WIDTH CHOICE_SIZE_Y, 0 0, balanceAfter, TEXTSIZE_DEFAULT, 0, 0, ITEM_ALIGN_TOP_LEFT, 1 1 1 1, visArg, ; ) /* Balance After Purchase */
|
|
|
|
#define WAGER_ONFOCUS \
|
|
;
|
|
|
|
#define WAGER_ONESC \
|
|
setDvar ui_joiningwagerfrominvite "0"; \
|
|
close self;
|
|
|
|
#define WAGER_ACTION \
|
|
play CHOICE_FOCUS_SOUND; \
|
|
uiScript JoinServer; \
|
|
WAGER_ONESC
|
|
menuDef
|
|
{
|
|
MEDIUM_POPUP_SETUP_VIS( "WagerConfirmation", setfocus "WagerConfirmation_2";, ;, POPUP_GLOW_GREEN, 1, 1 )
|
|
MEDIUM_POPUP_TITLE_VIS( "@PLATFORM_CONFIRM_WAGER_CAPS", 1 )
|
|
PLAYER_INFO_VIS( MEDIUM_POPUP_WIDTH, MEDIUM_POPUP_HEIGHT, 1 )
|
|
PURCHASE_CONFIRMATION_ITEM_INFO( "@PLATFORM_WAGER_BET", dvarInt("ui_wagerbet") )
|
|
|
|
|
|
FRAME_CHOICE_BUTTON_VIS_EX( 1, "@MENU_JOIN_GAME_CAPS", WAGER_ACTION, 1, ; )
|
|
FRAME_CHOICE_BUTTON_VIS_EX( 2, "@MENU_CANCEL_CAPS", WAGER_ONESC, 1, name WagerConfirmation_2 )
|
|
}
|
|
|
|
#define WAGER_ACTION2 \
|
|
play CHOICE_FOCUS_SOUND; \
|
|
execNow quickmatchconnect; \
|
|
WAGER_ONESC
|
|
menuDef
|
|
{
|
|
MEDIUM_POPUP_SETUP_VIS( "QuickWagerConfirmation", setfocus "QuickWagerConfirmation_2";, ;, POPUP_GLOW_GREEN, 1, 1 )
|
|
MEDIUM_POPUP_TITLE_VIS( "@PLATFORM_CONFIRM_WAGER_CAPS", 1 )
|
|
PLAYER_INFO_VIS( MEDIUM_POPUP_WIDTH, MEDIUM_POPUP_HEIGHT, 1 )
|
|
PURCHASE_CONFIRMATION_ITEM_INFO( "@PLATFORM_WAGER_BET", dvarInt("ui_wagerbet") )
|
|
|
|
|
|
FRAME_CHOICE_BUTTON_VIS_EX( 1, "@MENU_JOIN_GAME_CAPS", WAGER_ACTION2, 1, ; )
|
|
FRAME_CHOICE_BUTTON_VIS_EX( 2, "@MENU_CANCEL_CAPS", close self, 1, name QuickWagerConfirmation_2 )
|
|
}
|
|
|
|
#undef CHOICE_Y_START
|
|
#define CHOICE_Y_START POPUP_Y_START_CENTER
|
|
|
|
#undef POPUP_BUTTON_COUNT
|
|
#define POPUP_BUTTON_COUNT 1
|
|
menuDef
|
|
{
|
|
SYSTEM_POPUP_SETUP_VIS( WagerDeadBeat, WAGER_ONFOCUS, WAGER_ONESC, 1 )
|
|
SYSTEM_POPUP_TITLE_VIS( "@PLATFORM_WAGER_DEADBEAT_TITLE", 1 )
|
|
|
|
SYSTEM_POPUP_SUBTITLE_VIS( locString( "@PLATFORM_WAGER_DEADBEAT_DESC", dvarInt( "ui_wagerbet" ) ), 1 )
|
|
FRAME_CHOICE_BUTTON_VIS_EX( 1, "@MENU_OK", WAGER_ONESC, 1, ; )
|
|
}
|
|
|
|
menuDef
|
|
{
|
|
SYSTEM_POPUP_SETUP_VIS( WagerPlaylistIsOld, WAGER_ONFOCUS, WAGER_ONESC, 1 )
|
|
SYSTEM_POPUP_TITLE_VIS( "@MENU_ERROR_CAPS", 1 )
|
|
|
|
SYSTEM_POPUP_SUBTITLE_VIS( locString( "@PATCH_PLAYLISTISOLD" ), 1 )
|
|
FRAME_CHOICE_BUTTON_VIS_EX( 1, "@MENU_OK", WAGER_ONESC, 1, ; )
|
|
}
|
|
|
|
menuDef
|
|
{
|
|
SYSTEM_POPUP_SETUP_VIS( WagerPlaylistIsNew, WAGER_ONFOCUS, WAGER_ONESC, 1 )
|
|
SYSTEM_POPUP_TITLE_VIS( "@MENU_ERROR_CAPS", 1 )
|
|
|
|
SYSTEM_POPUP_SUBTITLE_VIS( locString( "@PATCH_PLAYLISTISNEW" ), 1 )
|
|
FRAME_CHOICE_BUTTON_VIS_EX( 1, "@MENU_OK", WAGER_ONESC, 1, ; )
|
|
}
|
|
|