From b49a827af3959af93d211ef2e9a76bb2d7a9c892 Mon Sep 17 00:00:00 2001 From: Dss0 <7338300+Dss0@users.noreply.github.com> Date: Sun, 14 Aug 2022 20:56:25 +0200 Subject: [PATCH] add voice chat and aim assist columns to serverlist --- .../iw4x_00/localizedstrings/iw4x_english.str | 6 + iw4x/iw4x_00/ui_mp/joinserver.inc | 108 ++++++++++++++++-- iw4x/iw4x_00/ui_mp/serverinfo_popmenu.menu | 4 +- 3 files changed, 107 insertions(+), 11 deletions(-) diff --git a/iw4x/iw4x_00/localizedstrings/iw4x_english.str b/iw4x/iw4x_00/localizedstrings/iw4x_english.str index 430c525..ef3747a 100644 --- a/iw4x/iw4x_00/localizedstrings/iw4x_english.str +++ b/iw4x/iw4x_00/localizedstrings/iw4x_english.str @@ -475,6 +475,12 @@ LANG_ENGLISH "FOV: " REFERENCE MENU_FOV_HINT_PC LANG_ENGLISH "An increased Field of View (FOV), may result in poor performance on older computers." +REFERENCE MPUI_RULES_AIMASSIST +LANG_ENGLISH "Aim Assist" + +REFERENCE MPUI_RULES_VOICECHAT +LANG_ENGLISH "Voice Chat" + REFERENCE MENU_8X LANG_ENGLISH "8x" diff --git a/iw4x/iw4x_00/ui_mp/joinserver.inc b/iw4x/iw4x_00/ui_mp/joinserver.inc index 0256cfc..e37e45c 100644 --- a/iw4x/iw4x_00/ui_mp/joinserver.inc +++ b/iw4x/iw4x_00/ui_mp/joinserver.inc @@ -245,7 +245,9 @@ itemDef #define TAB_BORDER_COLOR 0.1 0.1 0.12 0.5 #define PASSWORD_WIDTH 20 -#define MATCHTYPE_WIDTH PASSWORD_WIDTH +#define MATCHTYPE_WIDTH 20 +#define AIMASSIST_WIDTH 20 +#define VOICECHAT_WIDTH 20 #define SERVER_WIDTH 208 #define MAP_WIDTH 70 #define PLAYERS_WIDTH 50 @@ -264,7 +266,9 @@ itemDef #define PASSWORD_POS_X TABLE_POS_X #define MATCHTYPE_POS_X (TABLE_POS_X + PASSWORD_WIDTH + 2) -#define SERVER_POS_X (MATCHTYPE_POS_X + MATCHTYPE_WIDTH + 2) +#define AIMASSIST_POS_X (MATCHTYPE_POS_X + MATCHTYPE_WIDTH + 2) +#define VOICECHAT_POS_X (AIMASSIST_POS_X + AIMASSIST_WIDTH + 2) +#define SERVER_POS_X (VOICECHAT_POS_X + VOICECHAT_WIDTH + 2) #define MAP_POS_X (SERVER_POS_X + SERVER_WIDTH + 2) #define PLAYERS_POS_X (MAP_POS_X + MAP_WIDTH + 2) #define TYPE_POS_X (PLAYERS_POS_X + PLAYERS_WIDTH + 2) @@ -319,6 +323,8 @@ itemDef #define PASSWORD_ORIGIN PASSWORD_POS_X (TABLE_POS_Y + 2) #define MATCHTYPE_ORIGIN MATCHTYPE_POS_X (TABLE_POS_Y + 2) +#define AIMASSIST_ORIGIN AIMASSIST_POS_X (TABLE_POS_Y + 2) +#define VOICECHAT_ORIGIN VOICECHAT_POS_X (TABLE_POS_Y + 2) #define SERVER_ORIGIN SERVER_POS_X (TABLE_POS_Y + 2) #define MAP_ORIGIN MAP_POS_X (TABLE_POS_Y + 2) #define PLAYERS_ORIGIN PLAYERS_POS_X (TABLE_POS_Y + 2) @@ -328,6 +334,8 @@ itemDef #define PASSWORD_RECT PASSWORD_ORIGIN PASSWORD_WIDTH TABLE_HEIGHT HORIZONTAL_ALIGN_SUBLEFT VERTICAL_ALIGN_TOP #define MATCHTYPE_RECT MATCHTYPE_ORIGIN MATCHTYPE_WIDTH TABLE_HEIGHT HORIZONTAL_ALIGN_SUBLEFT VERTICAL_ALIGN_TOP +#define AIMASSIST_RECT AIMASSIST_ORIGIN AIMASSIST_WIDTH TABLE_HEIGHT HORIZONTAL_ALIGN_SUBLEFT VERTICAL_ALIGN_TOP +#define VOICECHAT_RECT VOICECHAT_ORIGIN VOICECHAT_WIDTH TABLE_HEIGHT HORIZONTAL_ALIGN_SUBLEFT VERTICAL_ALIGN_TOP #define SERVER_RECT SERVER_ORIGIN SERVER_WIDTH TABLE_HEIGHT HORIZONTAL_ALIGN_SUBLEFT VERTICAL_ALIGN_TOP #define MAP_RECT MAP_ORIGIN MAP_WIDTH TABLE_HEIGHT HORIZONTAL_ALIGN_SUBLEFT VERTICAL_ALIGN_TOP #define PLAYERS_RECT PLAYERS_ORIGIN PLAYERS_WIDTH TABLE_HEIGHT HORIZONTAL_ALIGN_SUBLEFT VERTICAL_ALIGN_TOP @@ -355,6 +363,8 @@ MENU_BACKGROUND_FRAME_DROP_SHADOW(TABLE_POS_X, (TABLE_POS_Y + TABLE_HEIGHT), TAB } PREPROC_COLUMN_SEPERATOR_LINE("lineMatchtype", (MATCHTYPE_POS_X - 2) (TABLE_POS_Y + 2)) +PREPROC_COLUMN_SEPERATOR_LINE("lineAimAssist", (AIMASSIST_POS_X - 2) (TABLE_POS_Y + 2)) +PREPROC_COLUMN_SEPERATOR_LINE("lineVoiceChat", (VOICECHAT_POS_X - 2) (TABLE_POS_Y + 2)) PREPROC_COLUMN_SEPERATOR_LINE("lineServer", (SERVER_POS_X - 2) (TABLE_POS_Y + 2)) PREPROC_COLUMN_SEPERATOR_LINE("lineMap", (MAP_POS_X - 2) (TABLE_POS_Y + 2)) PREPROC_COLUMN_SEPERATOR_LINE("linePlayers", (PLAYERS_POS_X - 2) (TABLE_POS_Y + 2)) @@ -378,8 +388,10 @@ itemDef elementWidth 120 elementHeight 16 // numcols xpos xwidth textlen alignment - columns 8 (PASSWORD_POS_X + 1) 16 20 1 + columns 10 (PASSWORD_POS_X + 1) 16 20 1 (MATCHTYPE_POS_X - 2) 16 10 1 + (AIMASSIST_POS_X - 2) 16 10 1 + (VOICECHAT_POS_X - 2) 16 10 1 (SERVER_POS_X + 1) SERVER_WIDTH 38 0 (MAP_POS_X + 1) MAP_WIDTH 25 0 (PLAYERS_POS_X + 1) PLAYERS_WIDTH 10 0 @@ -412,6 +424,8 @@ itemDef setItemColor grpTabs foreColor 1 0.8 0.4 1; setItemColor passwordicon foreColor 1 1.0 0.5 1; setItemColor matchtypeicon foreColor 1 1 1 1; + setItemColor aimassisticon foreColor 1 1 1 1; + setItemColor voicechaticon foreColor 1 1 1 1; } } itemDef @@ -441,6 +455,8 @@ itemDef setItemColor grpTabs foreColor 1 0.8 0.4 1; setItemColor matchtypeicon foreColor 1 1.0 0.5 1; setItemColor passwordicon foreColor 1 1 1 1; + setItemColor aimassisticon foreColor 1 1 1 1; + setItemColor voicechaticon foreColor 1 1 1 1; } } itemDef @@ -454,6 +470,68 @@ itemDef visible 1 } +itemDef +{ + name "aimassist" + group grpTabs + rect AIMASSIST_RECT + type ITEM_TYPE_BUTTON + style WINDOW_STYLE_FILLED + foreColor 1 0.8 0.4 1 + visible 1 + action + { + play CHOICE_CLICK_SOUND; + uiScript "ServerSort" 2; + setItemColor grpTabs foreColor 1 0.8 0.4 1; + setItemColor aimassisticon foreColor 1 1.0 0.5 1; + setItemColor passwordicon foreColor 1 1 1 1; + setItemColor matchtypeicon foreColor 1 1 1 1; + setItemColor voicechaticon foreColor 1 1 1 1; + } +} +itemDef +{ + name "aimassisticon" + rect AIMASSIST_ORIGIN 16 16 HORIZONTAL_ALIGN_SUBLEFT VERTICAL_ALIGN_TOP + origin 0 2 + style WINDOW_STYLE_SHADER + background "crosshair_red" + decoration + visible 1 +} + +itemDef +{ + name "voicechat" + group grpTabs + rect VOICECHAT_RECT + type ITEM_TYPE_BUTTON + style WINDOW_STYLE_FILLED + foreColor 1 0.8 0.4 1 + visible 1 + action + { + play CHOICE_CLICK_SOUND; + uiScript "ServerSort" 3; + setItemColor grpTabs foreColor 1 0.8 0.4 1; + setItemColor voicechaticon foreColor 1 1.0 0.5 1; + setItemColor passwordicon foreColor 1 1 1 1; + setItemColor matchtypeicon foreColor 1 1 1 1; + setItemColor aimassisticon foreColor 1 1 1 1; + } +} +itemDef +{ + name "voicechaticon" + rect VOICECHAT_ORIGIN 16 16 HORIZONTAL_ALIGN_SUBLEFT VERTICAL_ALIGN_TOP + origin 0 2 + style WINDOW_STYLE_SHADER + background "voice_on" + decoration + visible 1 +} + itemDef { name "server" @@ -470,10 +548,12 @@ itemDef action { play CHOICE_CLICK_SOUND; - uiScript "ServerSort" 2; + uiScript "ServerSort" 4; setItemColor grpTabs foreColor 1 0.8 0.4 1; setItemColor matchtypeicon foreColor 1 1 1 1; setItemColor passwordicon foreColor 1 1 1 1; + setItemColor aimassisticon foreColor 1 1 1 1; + setItemColor voicechaticon foreColor 1 1 1 1; setitemColor self foreColor 1 1.0 0.5 1; } } @@ -494,10 +574,12 @@ itemDef action { play CHOICE_CLICK_SOUND; - uiScript "ServerSort" 3; + uiScript "ServerSort" 5; setItemColor grpTabs foreColor 1 0.8 0.4 1; setItemColor matchtypeicon foreColor 1 1 1 1; setItemColor passwordicon foreColor 1 1 1 1; + setItemColor aimassisticon foreColor 1 1 1 1; + setItemColor voicechaticon foreColor 1 1 1 1; setitemColor self foreColor 1 1.0 0.5 1; } } @@ -518,10 +600,12 @@ itemDef action { play CHOICE_CLICK_SOUND; - uiScript "ServerSort" 4; + uiScript "ServerSort" 6; setItemColor grpTabs foreColor 1 0.8 0.4 1; setItemColor matchtypeicon foreColor 1 1 1 1; setItemColor passwordicon foreColor 1 1 1 1; + setItemColor aimassisticon foreColor 1 1 1 1; + setItemColor voicechaticon foreColor 1 1 1 1; setitemColor self foreColor 1 1.0 0.5 1; } } @@ -542,10 +626,12 @@ itemDef action { play CHOICE_CLICK_SOUND; - uiScript "ServerSort" 5; + uiScript "ServerSort" 7; setItemColor grpTabs foreColor 1 0.8 0.4 1; setItemColor matchtypeicon foreColor 1 1 1 1; setItemColor passwordicon foreColor 1 1 1 1; + setItemColor aimassisticon foreColor 1 1 1 1; + setItemColor voicechaticon foreColor 1 1 1 1; setitemColor self foreColor 1 1.0 0.5 1; } } @@ -566,10 +652,12 @@ itemDef action { play CHOICE_CLICK_SOUND; - uiScript "ServerSort" 6; + uiScript "ServerSort" 8; setItemColor grpTabs foreColor 1 0.8 0.4 1; setItemColor matchtypeicon foreColor 1 1 1 1; setItemColor passwordicon foreColor 1 1 1 1; + setItemColor aimassisticon foreColor 1 1 1 1; + setItemColor voicechaticon foreColor 1 1 1 1; setitemColor self foreColor 1 1.0 0.5 1; } } @@ -590,10 +678,12 @@ itemDef action { play CHOICE_CLICK_SOUND; - uiScript "ServerSort" 7; + uiScript "ServerSort" 9; setItemColor grpTabs foreColor 1 0.8 0.4 1; setItemColor matchtypeicon foreColor 1 1 1 1; setItemColor passwordicon foreColor 1 1 1 1; + setItemColor aimassisticon foreColor 1 1 1 1; + setItemColor voicechaticon foreColor 1 1 1 1; setitemColor self foreColor 1 1.0 0.5 1; } } diff --git a/iw4x/iw4x_00/ui_mp/serverinfo_popmenu.menu b/iw4x/iw4x_00/ui_mp/serverinfo_popmenu.menu index 67091b0..73be742 100644 --- a/iw4x/iw4x_00/ui_mp/serverinfo_popmenu.menu +++ b/iw4x/iw4x_00/ui_mp/serverinfo_popmenu.menu @@ -206,8 +206,8 @@ menuDef SV_INFO_FIELD(1, "@MPUI_MAX_CLIENTS", dvarString("uiSi_MaxClients")) SV_INFO_FIELD(2, "@MPUI_IS_PRIVATE", dvarString("uiSi_isPrivate")) SV_INFO_FIELD(3, "@MPUI_RULES_HARDCORE", dvarString("uiSi_Hardcore")) - SV_INFO_FIELD(4, "@MPUI_RULES_KILLCAM", dvarString("uiSi_KillCam")) - SV_INFO_FIELD(5, "@MPUI_RULES_FRIENDLY_FIRE", dvarString("uiSi_ffType")) + SV_INFO_FIELD(4, "@MPUI_RULES_AIMASSIST", dvarString("uiSi_aimAssist")) + SV_INFO_FIELD(5, "@MPUI_RULES_VOICECHAT", dvarString("uiSi_voiceChat")) SV_INFO_FIELD(6, "@MPUI_MOD", dvarString("uiSi_ModName")) SV_INFO_MAP_PREVIEW_VIS(("loadscreen_mp_bonusmaps"), when(dvarString("uiSi_MapName") == ""))