Kaynağa Gözat

fix(sdtd): read web dashboard port from WebDashboardPort (#5221)

7 Days to Die Alpha 21 replaced ControlPanelEnabled, ControlPanelPort and ControlPanelPassword with WebDashboardEnabled and WebDashboardPort. The stock serverconfig.xml only has the new keys, so details showed the web port as 0. Read the WebDashboard keys first and fall back to the ControlPanel keys for older configs.
Daniel Gibbs 1 gün önce
ebeveyn
işleme
457939b8d8
1 değiştirilmiş dosya ile 8 ekleme ve 2 silme
  1. 8 2
      lgsm/modules/info_game.sh

+ 8 - 2
lgsm/modules/info_game.sh

@@ -2088,9 +2088,15 @@ fn_info_game_scpsl() {
 fn_info_game_sdtd() {
 	if [ -f "${servercfgfullpath}" ]; then
 		fn_info_game_xml "gamemode" "/ServerSettings/property[@name='GameMode']/@value"
-		fn_info_game_xml "httpenabled" "/ServerSettings/property[@name='ControlPanelEnabled']/@value"
+		fn_info_game_xml "httpenabled" "/ServerSettings/property[@name='WebDashboardEnabled']/@value"
+		if [ -z "${httpenabled}" ]; then
+			fn_info_game_xml "httpenabled" "/ServerSettings/property[@name='ControlPanelEnabled']/@value"
+		fi
 		fn_info_game_xml "httppassword" "/ServerSettings/property[@name='ControlPanelPassword']/@value"
-		fn_info_game_xml "httpport" "/ServerSettings/property[@name='ControlPanelPort']/@value"
+		fn_info_game_xml "httpport" "/ServerSettings/property[@name='WebDashboardPort']/@value"
+		if [ -z "${httpport}" ]; then
+			fn_info_game_xml "httpport" "/ServerSettings/property[@name='ControlPanelPort']/@value"
+		fi
 		fn_info_game_xml "maxplayers" "/ServerSettings/property[@name='ServerMaxPlayerCount']/@value"
 		fn_info_game_xml "servername" "/ServerSettings/property[@name='ServerName']/@value"
 		fn_info_game_xml "serverpassword" "/ServerSettings/property[@name='ServerPassword']/@value"