Jelajahi Sumber

Query Port Overrides

own3mall 6 tahun lalu
induk
melakukan
6fa92268fb

+ 11 - 0
includes/functions.php

@@ -959,4 +959,15 @@ function getRemoteContent($url, $timeout = 5, $referrer = ""){
 	
 	return false;
 }
+
+function getQueryPortOverridesForGame($protocol, $ip, $port, $defaultQueryPort){
+	$q_port = $defaultQueryPort;
+	if(strpos($protocol, 'mohaa') !== false){
+		$realQPort = getRemoteContent("http://mohaaservers.tk/get_query_port_fast.php?ip=" . $ip . ":" . $port);
+		if($realQPort != -1 && is_numeric($realQPort)){
+			$q_port = $realQPort;
+		}
+	}
+	return $q_port;
+}
 ?>

+ 3 - 0
modules/gamemanager/mini_start.php

@@ -383,6 +383,9 @@ elseif($server_home['home_id'] == $_POST['home_id'])
 	if ( $server_xml->lgsl_query_name )
 	{
 		//error_reporting(E_ERROR);
+		require_once("includes/functions.php");
+		$query_port = getQueryPortOverridesForGame((string)$server_xml->lgsl_query_name, $ip, $port, $query_port);
+		
 		$data = lgsl_query_live((string)$server_xml->lgsl_query_name, $ip, $port, $query_port, $port, "s");
 		//error_reporting(E_ALL);
 

+ 3 - 7
protocol/lgsl/LGSLMonitor.php

@@ -34,13 +34,9 @@ if($num_of_servers < $numberservers_to_skip_query)
 		//query port
 		$q_port = $get_q_and_s['1'];
 		
-		if(strpos((string)$server_xml->lgsl_query_name, 'mohaa') !== false){
-			require_once("includes/functions.php");
-			$realQPort = getRemoteContent("http://mohaaservers.tk/get_query_port_fast.php?ip=" . $internal_query_ip . ":" . $port);
-			if($realQPort != -1 && is_numeric($realQPort)){
-				$q_port = $realQPort;
-			}
-		}
+		// Get any query port overrides (if any)
+		require_once("includes/functions.php");
+		$q_port = getQueryPortOverridesForGame((string)$server_xml->lgsl_query_name, $internal_query_ip, $port, $q_port);
 		
 		//software port
 		$s_port = $get_q_and_s['2'];