<?php if(!defined("MCR")){ exit("Hacking Attempt!"); } class XPawQuery{ // Set default values public $ip = '127.0.0.1'; public $port = 25565; public $status = 0; // server status public $version = ''; public $online = 0; public $slots = 0; public $players = ''; public $motd = ''; public $plugins = ''; public $map = ''; public $error = ''; private $object = false; public function __construct(){ require_once(MCR_MON_PATH.'xpaw/MinecraftQuery.php'); require_once(MCR_MON_PATH.'xpaw/MinecraftQueryException.php'); $this->object = new MinecraftQuery(); } public function connect($ip='127.0.0.1', $port=25565){ $this->status = $this->online = $this->slots = 0; $this->version = $this->players = $this->motd = $this->plugins = $this->map = $this->error = ''; $this->ip = $ip; $this->port = $port; try{ $this->object->Connect($ip, $port, 3); }catch(MinecraftQueryException $e){ $Exception = $e; } if(isset($Exception)){ return false; } if(($array = $this->object->GetInfo()) == false){ return false; } $this->status = 1; $this->motd = $array['HostName']; $this->version = @$array['Version']; $this->online = intval(@$array['Players']); $this->slots = intval(@$array['MaxPlayers']); if(($players = $this->object->GetPlayers()) !== false){ $this->players = @implode(', ', $players); } $this->plugins = @implode(', ', @$array['Plugins']); return true; } } ?>