Explorar el Código

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 hace 1 día
padre
commit
457939b8d8
Se han modificado 1 ficheros con 8 adiciones y 2 borrados
  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"