ソースを参照

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 日 前
親
コミット
457939b8d8
1 ファイル変更、8 行追加、2 行削除
  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"