resolved todo
This commit is contained in:
parent
5fdf7317c1
commit
eefdbe56be
@ -42,6 +42,7 @@ class ServerCommands implements CallbackListener, CommandListener, ManialinkPage
|
|||||||
|
|
||||||
// Register for callbacks
|
// Register for callbacks
|
||||||
$this->maniaControl->callbackManager->registerCallbackListener(CallbackManager::CB_MC_5_SECOND, $this, 'each5Seconds');
|
$this->maniaControl->callbackManager->registerCallbackListener(CallbackManager::CB_MC_5_SECOND, $this, 'each5Seconds');
|
||||||
|
$this->maniaControl->callbackManager->registerCallbackListener(CallbackManager::CB_MC_ONINIT, $this, 'handleOnInit');
|
||||||
|
|
||||||
// Register for commands
|
// Register for commands
|
||||||
$this->maniaControl->commandManager->registerCommandListener('setpwd', $this, 'command_SetPwd', true);
|
$this->maniaControl->commandManager->registerCommandListener('setpwd', $this, 'command_SetPwd', true);
|
||||||
@ -51,21 +52,35 @@ class ServerCommands implements CallbackListener, CommandListener, ManialinkPage
|
|||||||
$this->maniaControl->commandManager->registerCommandListener('setspecpwd', $this, 'command_SetSpecPwd', true);
|
$this->maniaControl->commandManager->registerCommandListener('setspecpwd', $this, 'command_SetSpecPwd', true);
|
||||||
$this->maniaControl->commandManager->registerCommandListener('shutdownserver', $this, 'command_ShutdownServer', true);
|
$this->maniaControl->commandManager->registerCommandListener('shutdownserver', $this, 'command_ShutdownServer', true);
|
||||||
$this->maniaControl->commandManager->registerCommandListener('systeminfo', $this, 'command_SystemInfo', true);
|
$this->maniaControl->commandManager->registerCommandListener('systeminfo', $this, 'command_SystemInfo', true);
|
||||||
$this->maniaControl->commandManager->registerCommandListener('hideserver', $this, 'command_HideServer', true);
|
|
||||||
$this->maniaControl->commandManager->registerCommandListener('showserver', $this, 'command_ShowServer', true);
|
|
||||||
$this->maniaControl->commandManager->registerCommandListener('enablemapdownload', $this, 'command_EnableMapDownload', true);
|
|
||||||
$this->maniaControl->commandManager->registerCommandListener('disablemapdownload', $this, 'command_DisableMapDownload', true);
|
|
||||||
$this->maniaControl->commandManager->registerCommandListener('enablehorns', $this, 'command_EnableHorns', true);
|
|
||||||
$this->maniaControl->commandManager->registerCommandListener('disablehorns', $this, 'command_DisableHorns', true);
|
|
||||||
|
|
||||||
$this->maniaControl->commandManager->registerCommandListener('cancel', $this, 'command_CancelVote', true);
|
$this->maniaControl->commandManager->registerCommandListener('cancel', $this, 'command_CancelVote', true);
|
||||||
$this->maniaControl->manialinkManager->registerManialinkPageAnswerListener(self::ACTION_SET_PAUSE, $this, 'setPause');
|
$this->maniaControl->manialinkManager->registerManialinkPageAnswerListener(self::ACTION_SET_PAUSE, $this, 'setPause');
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set Menu items on init
|
||||||
|
*
|
||||||
|
* @param array $callback
|
||||||
|
*/
|
||||||
|
public function handleOnInit(array $callback) {
|
||||||
|
//Check if Pause exists in current gamemode
|
||||||
|
$this->maniaControl->client->query('GetModeScriptInfo');
|
||||||
|
$scriptInfos = $this->maniaControl->client->getResponse();
|
||||||
|
|
||||||
|
$pauseExists = false;
|
||||||
|
foreach($scriptInfos["CommandDescs"] as $param) {
|
||||||
|
if($param['Name'] == "Command_ForceWarmUp") {
|
||||||
|
$pauseExists = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
// Set Pause
|
// Set Pause
|
||||||
$itemQuad = new Quad_Icons128x32_1(); //TODO check if mode supports it
|
if($pauseExists) {
|
||||||
|
$itemQuad = new Quad_Icons128x32_1();
|
||||||
$itemQuad->setSubStyle($itemQuad::SUBSTYLE_ManiaLinkSwitch);
|
$itemQuad->setSubStyle($itemQuad::SUBSTYLE_ManiaLinkSwitch);
|
||||||
$itemQuad->setAction(self::ACTION_SET_PAUSE);
|
$itemQuad->setAction(self::ACTION_SET_PAUSE);
|
||||||
$this->maniaControl->actionsMenu->addAdminMenuItem($itemQuad, 1, 'Pauses the current game');
|
$this->maniaControl->actionsMenu->addAdminMenuItem($itemQuad, 1, 'Pauses the current game');
|
||||||
|
}
|
||||||
|
|
||||||
// Action cancel Vote
|
// Action cancel Vote
|
||||||
$this->maniaControl->manialinkManager->registerManialinkPageAnswerListener(self::ACTION_CANCEL_VOTE, $this, 'command_cancelVote');
|
$this->maniaControl->manialinkManager->registerManialinkPageAnswerListener(self::ACTION_CANCEL_VOTE, $this, 'command_cancelVote');
|
||||||
@ -330,120 +345,6 @@ class ServerCommands implements CallbackListener, CommandListener, ManialinkPage
|
|||||||
$this->maniaControl->chat->sendSuccess("Changed max spectators to: {$amount}", $player->login);
|
$this->maniaControl->chat->sendSuccess("Changed max spectators to: {$amount}", $player->login);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Handle //hideserver command
|
|
||||||
*
|
|
||||||
* @param array $chatCallback
|
|
||||||
* @param Player $player
|
|
||||||
*/
|
|
||||||
public function command_HideServer(array $chatCallback, Player $player) {
|
|
||||||
if(!$this->maniaControl->authenticationManager->checkRight($player, AuthenticationManager::AUTH_LEVEL_ADMIN)) {
|
|
||||||
$this->maniaControl->authenticationManager->sendNotAllowed($player);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
$success = $this->maniaControl->client->query('SetHideServer', 1);
|
|
||||||
if(!$success) {
|
|
||||||
$this->maniaControl->chat->sendError('Error occurred: ' . $this->maniaControl->getClientErrorText(), $player->login);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
$this->maniaControl->chat->sendSuccess('Server is now hidden!', $player->login);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Handle //showserver command
|
|
||||||
*
|
|
||||||
* @param array $chatCallback
|
|
||||||
* @param Player $player
|
|
||||||
*/
|
|
||||||
public function command_ShowServer(array $chatCallback, Player $player) {
|
|
||||||
if(!$this->maniaControl->authenticationManager->checkRight($player, AuthenticationManager::AUTH_LEVEL_ADMIN)) {
|
|
||||||
$this->maniaControl->authenticationManager->sendNotAllowed($player);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
$success = $this->maniaControl->client->query('SetHideServer', 0);
|
|
||||||
if(!$success) {
|
|
||||||
$this->maniaControl->chat->sendError('Error occurred: ' . $this->maniaControl->getClientErrorText(), $player->login);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
$this->maniaControl->chat->sendSuccess('Server is now visible!', $player->login);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Handle //enablemapdownload command
|
|
||||||
*
|
|
||||||
* @param array $chatCallback
|
|
||||||
* @param Player $player
|
|
||||||
*/
|
|
||||||
public function command_EnableMapDownload(array $chatCallback, Player $player) {
|
|
||||||
if(!$this->maniaControl->authenticationManager->checkRight($player, AuthenticationManager::AUTH_LEVEL_ADMIN)) {
|
|
||||||
$this->maniaControl->authenticationManager->sendNotAllowed($player);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
$success = $this->maniaControl->client->query('AllowMapDownload', true);
|
|
||||||
if(!$success) {
|
|
||||||
$this->maniaControl->chat->sendError('Error occurred: ' . $this->maniaControl->getClientErrorText(), $player->login);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
$this->maniaControl->chat->sendSuccess('Map Download is now enabled!', $player->login);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Handle //disablemapdownload command
|
|
||||||
*
|
|
||||||
* @param array $chatCallback
|
|
||||||
* @param Player $player
|
|
||||||
*/
|
|
||||||
public function command_DisableMapDownload(array $chatCallback, Player $player) {
|
|
||||||
if(!$this->maniaControl->authenticationManager->checkRight($player, AuthenticationManager::AUTH_LEVEL_ADMIN)) {
|
|
||||||
$this->maniaControl->authenticationManager->sendNotAllowed($player);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
$success = $this->maniaControl->client->query('AllowMapDownload', false);
|
|
||||||
if(!$success) {
|
|
||||||
$this->maniaControl->chat->sendError('Error occurred: ' . $this->maniaControl->getClientErrorText(), $player->login);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
$this->maniaControl->chat->sendSuccess('Map Download is now disabled!', $player->login);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Handle //enablehorns command
|
|
||||||
*
|
|
||||||
* @param array $chatCallback
|
|
||||||
* @param Player $player
|
|
||||||
*/
|
|
||||||
public function command_EnableHorns(array $chatCallback, Player $player) {
|
|
||||||
if(!$this->maniaControl->authenticationManager->checkRight($player, AuthenticationManager::AUTH_LEVEL_MODERATOR)) {
|
|
||||||
$this->maniaControl->authenticationManager->sendNotAllowed($player);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
$success = $this->maniaControl->client->query('DisableHorns', false);
|
|
||||||
if(!$success) {
|
|
||||||
$this->maniaControl->chat->sendError('Error occurred: ' . $this->maniaControl->getClientErrorText(), $player->login);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
$this->maniaControl->chat->sendSuccess('Horns enabled!', $player->login);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Handle //disablehorns command
|
|
||||||
*
|
|
||||||
* @param array $chatCallback
|
|
||||||
* @param Player $player
|
|
||||||
*/
|
|
||||||
public function command_DisableHorns(array $chatCallback, Player $player) {
|
|
||||||
if(!$this->maniaControl->authenticationManager->checkRight($player, AuthenticationManager::AUTH_LEVEL_MODERATOR)) {
|
|
||||||
$this->maniaControl->authenticationManager->sendNotAllowed($player);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
$success = $this->maniaControl->client->query('DisableHorns', true);
|
|
||||||
if(!$success) {
|
|
||||||
$this->maniaControl->chat->sendError('Error occurred: ' . $this->maniaControl->getClientErrorText(), $player->login);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
$this->maniaControl->chat->sendSuccess('Horns disabled!', $player->login);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Perform server shutdown
|
* Perform server shutdown
|
||||||
*
|
*
|
||||||
|
Loading…
Reference in New Issue
Block a user