loadServer(); $data = &$this->_data; $server = &$this->_server; $this->set('name', $data->get('sv_hostname')); $this->set('full_address', $server->getAddress()); $this->set('data', $data->getRawData()); $this->set('online_players', count($data->getPlayers())); $this->set('max_players', $data->get('sv_maxclients')); $this->set('mod', $data->get('gamename')); $this->set('map', $data->get('mapname')); $this->set('status', $server->_status); $this->set('num_settings', count($data->getSettings())); } function loadServer() { $api = &new GameServerExtension; $this->_server = &$api->load('q3'); $this->_server->setAddress($this->get('address')); $this->_server->connect(); if($this->_server->getStatus()) $this->_data = $this->_server->getData(); } function &getPlayers() { $buffer = $this->_data->getPlayers(); return new FAArrayIterator($buffer); } function &getSettings() { $settings = $this->_data->getSettings(); $buffer = array(); foreach($settings as $name => $value) { $buffer[] = array('name' => $name, 'value' => $value); } return new FAArrayIterator($buffer); } } ?>