Query Library GameAP: различия между версиями
Nikita (обсуждение | вклад) |
Nikita (обсуждение | вклад) (→$this->query->get_status();) |
||
| (не показаны 2 промежуточные версии этого же участника) | |||
| Строка 62: | Строка 62: | ||
== Задание данных == | == Задание данных == | ||
| − | === set_data === | + | === $this->query->set_data(); === |
Задает данные сервера. | Задает данные сервера. | ||
set_data( array $server_info ) | set_data( array $server_info ) | ||
| Строка 81: | Строка 81: | ||
'''Пример:''' | '''Пример:''' | ||
<syntaxhighlight lang="php"> | <syntaxhighlight lang="php"> | ||
| + | $this->load->library('query'); | ||
| + | |||
$query['id'] = 1337; | $query['id'] = 1337; | ||
$query['type'] = 'goldsource'; | $query['type'] = 'goldsource'; | ||
| Строка 109: | Строка 111: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === set_option === | + | === $this->query->set_option(); === |
Задает данные GameQ. | Задает данные GameQ. | ||
set_option ( $var, $value ) | set_option ( $var, $value ) | ||
| Строка 115: | Строка 117: | ||
== Получение данных == | == Получение данных == | ||
| − | === get_base_cvars === | + | === $this->query->get_base_cvars(); === |
Получение базовых кваров сервера -- текущая карта, количество игроков онлайн, хостнейм и пр. | Получение базовых кваров сервера -- текущая карта, количество игроков онлайн, хостнейм и пр. | ||
array get_base_cvars ( ) | array get_base_cvars ( ) | ||
| Строка 163: | Строка 165: | ||
|} | |} | ||
| − | === get_cvars === | + | === $this->query->get_cvars(); === |
Получение всех кваров сервера. | Получение всех кваров сервера. | ||
array get_cvars ( ) | array get_cvars ( ) | ||
| Строка 184: | Строка 186: | ||
</pre> | </pre> | ||
| − | === get_players === | + | === $this->query->get_players(); === |
Получение списка игроков на сервере. | Получение списка игроков на сервере. | ||
array get_players ( ) | array get_players ( ) | ||
| Строка 212: | Строка 214: | ||
|} | |} | ||
| − | === get_status === | + | === $this->query->get_status(); === |
| − | Получение статуса сервера. | + | Получение статуса сервера. Вернет '''true''', если сервер включен и ответил на query-запрос, и '''false''', в случае если сервер выключен или не ответил на query-запрос. |
bool get_status ( ) | bool get_status ( ) | ||
{{Категория:Документация_для_разработчиков}} | {{Категория:Документация_для_разработчиков}} | ||
Текущая версия на 11:10, 19 июня 2014
Библиотека для опроса игровых серверов. Позволяет получить данные текущего состояния сервера, список игроков, текущую карту.
Библиотека служит мостом между GameAP и GameQ
Содержание
Расположение файла
application/libraries/Query.php
Загрузка библиотеки
$this->load->library('query');Примеры использования
Получение базовых кваров сразу для двух серверов
$this->load->library('query');
$query = array('id' => 1, 'type' => 'goldsource', 'host' => '31.31.202.96', 'port' => 27015);
$this->query->set_data($query);
$query = array('id' => 2, 'type' => 'goldsource', 'host' => '31.31.202.96', 'port' => 27017);
$this->query->set_data($query);
print_r($this->query->get_base_cvars());
/*
Array
(
[1] => Array
(
[hostname] => UMI7EPATOP CEPBEP - HLDM.ORG
[map] => crater88
[game] =>
[game_code] => valve
[players] => 5
[maxplayers] => 32
[version] => 47
[password] => 0
[joinlink] => steam://connect/31.31.202.96:27015/
)
[2] => Array
(
[hostname] => BECEJIbIU CEPBEP - HLDM.ORG
[map] => boot_camp
[game] =>
[game_code] => valve
[players] => 4
[maxplayers] => 32
[version] => 47
[password] => 0
[joinlink] => steam://connect/31.31.202.96:27017/
)
*/
Задание данных
$this->query->set_data();
Задает данные сервера.
set_data( array $server_info )
| Параметр | Описание |
|---|---|
| id | Идентификатор сервера. Параметр может быть опущен, в этом случае как id будет использован хост и порт, разделенные двоеточием. |
| type | Query драйвер. Используется код игры либо код движка игры (goldsource, source, samp, minecraft). |
| host | Хост сервера |
| port | Порт сервера |
Пример:
$this->load->library('query');
$query['id'] = 1337;
$query['type'] = 'goldsource';
$query['host'] = '31.31.202.96';
$query['port'] = 27015;
$this->query->set_data($query);
print_r($this->query->get_base_cvars());
/*
Вернет
Array
(
[1337] => Array
(
[hostname] => UMI7EPATOP CEPBEP - HLDM.ORG
[map] => so_4plex
[game] =>
[game_code] => valve
[players] => 6
[maxplayers] => 32
[version] => 47
[password] => 0
[joinlink] => steam://connect/31.31.202.96:27015/
)
)
*/$this->query->set_option();
Задает данные GameQ.
set_option ( $var, $value )
Получение данных
$this->query->get_base_cvars();
Получение базовых кваров сервера -- текущая карта, количество игроков онлайн, хостнейм и пр.
array get_base_cvars ( )
Возвращает массив с основными кварами сервера.
Пример возвращаемого массива:
Array
(
[1337] => Array
(
[hostname] => UMI7EPATOP CEPBEP - HLDM.ORG
[map] => so_4plex
[game] =>
[game_code] => valve
[players] => 6
[maxplayers] => 32
[version] => 47
[password] => 0
[joinlink] => steam://connect/31.31.202.96:27015/
)
)
| Название ключа | Описание |
|---|---|
| hostname | Название сервера |
| map | Текущая карта на сервере |
| game | Игра |
| game_code | Код игры |
| players | Текущее количество игроков на сервере |
| maxplayers | Максимальное количество игроков на сервере |
| version | Версия сервера |
| password | Установлен ли пароль на сервер (0/1) |
| joinlink | Ссылка для соединения с сервером |
$this->query->get_cvars();
Получение всех кваров сервера.
array get_cvars ( )
Возвращает все доступные квары сервера. Для каждой игры набор кваров может быть уникальным. Пример возвращаемого массива:
Array
(
[1337] => Array
(
[address] => 127.0.0.1:27015
[allow_spectators] => 1
[amx_client_languages] => 1
[amx_language] => en
[amx_nextmap] => frontier
...
)
)
$this->query->get_players();
Получение списка игроков на сервере.
array get_players ( )
Пример возвращаемого массива:
Array
(
[1337] => Array
(
[0] => Array
(
[name] => (1)Player
[score] => 0
)
[1] => Array
...
| Название ключа | Описание |
|---|---|
| name | Никнейм игрока |
| score | Счет игрока |
$this->query->get_status();
Получение статуса сервера. Вернет true, если сервер включен и ответил на query-запрос, и false, в случае если сервер выключен или не ответил на query-запрос.
bool get_status ( )
| Документация для разработчиков | |
|---|---|
| Помощники: | •DS Helper |
| Модели: | •Users •Servers •Games •Game Types |
| Библиотеки: | •Query •Rcon •Control •Files •Install |