refactor codestyle (chaining)

This commit is contained in:
kremsy
2014-08-13 11:05:52 +02:00
parent 699c5951d9
commit 22915bb934
56 changed files with 1572 additions and 3132 deletions

View File

@ -58,40 +58,25 @@ class Commands implements CallbackListener, CommandListener, ManialinkPageAnswer
$this->maniaControl = $maniaControl;
// Callbacks
$this->maniaControl->getTimerManager()
->registerTimerListening($this, 'each5Seconds', 5000);
$this->maniaControl->getCallbackManager()
->registerCallbackListener(Callbacks::ONINIT, $this, 'handleOnInit');
$this->maniaControl->getCallbackManager()
->registerCallbackListener(Callbacks::WARMUPSTATUS, $this, 'handleWarmUpStatus');
$this->maniaControl->getTimerManager()->registerTimerListening($this, 'each5Seconds', 5000);
$this->maniaControl->getCallbackManager()->registerCallbackListener(Callbacks::ONINIT, $this, 'handleOnInit');
$this->maniaControl->getCallbackManager()->registerCallbackListener(Callbacks::WARMUPSTATUS, $this, 'handleWarmUpStatus');
// Chat commands
$this->maniaControl->getCommandManager()
->registerCommandListener('setservername', $this, 'commandSetServerName', true, 'Sets the ServerName.');
$this->maniaControl->getCommandManager()
->registerCommandListener('setpwd', $this, 'commandSetPwd', true, 'Sets play password.');
$this->maniaControl->getCommandManager()
->registerCommandListener('setspecpwd', $this, 'commandSetSpecPwd', true, 'Sets spectator password.');
$this->maniaControl->getCommandManager()
->registerCommandListener('setmaxplayers', $this, 'commandSetMaxPlayers', true, 'Sets the maximum number of players.');
$this->maniaControl->getCommandManager()
->registerCommandListener('setmaxspectators', $this, 'commandSetMaxSpectators', true, 'Sets the maximum number of spectators.');
$this->maniaControl->getCommandManager()
->registerCommandListener('shutdownserver', $this, 'commandShutdownServer', true, 'Shuts down the ManiaPlanet server.');
$this->maniaControl->getCommandManager()
->registerCommandListener('systeminfo', $this, 'commandSystemInfo', true, 'Shows system information.');
$this->maniaControl->getCommandManager()
->registerCommandListener('cancel', $this, 'commandCancelVote', true, 'Cancels the current vote.');
$this->maniaControl->getCommandManager()->registerCommandListener('setservername', $this, 'commandSetServerName', true, 'Sets the ServerName.');
$this->maniaControl->getCommandManager()->registerCommandListener('setpwd', $this, 'commandSetPwd', true, 'Sets play password.');
$this->maniaControl->getCommandManager()->registerCommandListener('setspecpwd', $this, 'commandSetSpecPwd', true, 'Sets spectator password.');
$this->maniaControl->getCommandManager()->registerCommandListener('setmaxplayers', $this, 'commandSetMaxPlayers', true, 'Sets the maximum number of players.');
$this->maniaControl->getCommandManager()->registerCommandListener('setmaxspectators', $this, 'commandSetMaxSpectators', true, 'Sets the maximum number of spectators.');
$this->maniaControl->getCommandManager()->registerCommandListener('shutdownserver', $this, 'commandShutdownServer', true, 'Shuts down the ManiaPlanet server.');
$this->maniaControl->getCommandManager()->registerCommandListener('systeminfo', $this, 'commandSystemInfo', true, 'Shows system information.');
$this->maniaControl->getCommandManager()->registerCommandListener('cancel', $this, 'commandCancelVote', true, 'Cancels the current vote.');
// Page actions
$this->maniaControl->getManialinkManager()
->registerManialinkPageAnswerListener(self::ACTION_SET_PAUSE, $this, 'setPause');
$this->maniaControl->getManialinkManager()
->registerManialinkPageAnswerListener(self::ACTION_EXTEND_WARMUP, $this, 'commandExtendWarmup');
$this->maniaControl->getManialinkManager()
->registerManialinkPageAnswerListener(self::ACTION_END_WARMUP, $this, 'commandEndWarmup');
$this->maniaControl->getManialinkManager()
->registerManialinkPageAnswerListener(self::ACTION_CANCEL_VOTE, $this, 'commandCancelVote');
$this->maniaControl->getManialinkManager()->registerManialinkPageAnswerListener(self::ACTION_SET_PAUSE, $this, 'setPause');
$this->maniaControl->getManialinkManager()->registerManialinkPageAnswerListener(self::ACTION_EXTEND_WARMUP, $this, 'commandExtendWarmup');
$this->maniaControl->getManialinkManager()->registerManialinkPageAnswerListener(self::ACTION_END_WARMUP, $this, 'commandEndWarmup');
$this->maniaControl->getManialinkManager()->registerManialinkPageAnswerListener(self::ACTION_CANCEL_VOTE, $this, 'commandCancelVote');
}
/**
@ -99,18 +84,12 @@ class Commands implements CallbackListener, CommandListener, ManialinkPageAnswer
*/
public function handleOnInit() {
// Permissions
$this->maniaControl->getAuthenticationManager()
->definePermissionLevel(self::SETTING_PERMISSION_SHUTDOWN_SERVER, AuthenticationManager::AUTH_LEVEL_SUPERADMIN);
$this->maniaControl->getAuthenticationManager()
->definePermissionLevel(self::SETTING_PERMISSION_SHOW_SYSTEMINFO, AuthenticationManager::AUTH_LEVEL_SUPERADMIN);
$this->maniaControl->getAuthenticationManager()
->definePermissionLevel(self::SETTING_PERMISSION_CHANGE_SERVERSETTINGS, AuthenticationManager::AUTH_LEVEL_ADMIN);
$this->maniaControl->getAuthenticationManager()
->definePermissionLevel(self::SETTING_PERMISSION_SET_PAUSE, AuthenticationManager::AUTH_LEVEL_MODERATOR);
$this->maniaControl->getAuthenticationManager()
->definePermissionLevel(self::SETTING_PERMISSION_CANCEL_VOTE, AuthenticationManager::AUTH_LEVEL_MODERATOR);
$this->maniaControl->getAuthenticationManager()
->definePermissionLevel(self::SETTING_PERMISSION_HANDLE_WARMUP, AuthenticationManager::AUTH_LEVEL_MODERATOR);
$this->maniaControl->getAuthenticationManager()->definePermissionLevel(self::SETTING_PERMISSION_SHUTDOWN_SERVER, AuthenticationManager::AUTH_LEVEL_SUPERADMIN);
$this->maniaControl->getAuthenticationManager()->definePermissionLevel(self::SETTING_PERMISSION_SHOW_SYSTEMINFO, AuthenticationManager::AUTH_LEVEL_SUPERADMIN);
$this->maniaControl->getAuthenticationManager()->definePermissionLevel(self::SETTING_PERMISSION_CHANGE_SERVERSETTINGS, AuthenticationManager::AUTH_LEVEL_ADMIN);
$this->maniaControl->getAuthenticationManager()->definePermissionLevel(self::SETTING_PERMISSION_SET_PAUSE, AuthenticationManager::AUTH_LEVEL_MODERATOR);
$this->maniaControl->getAuthenticationManager()->definePermissionLevel(self::SETTING_PERMISSION_CANCEL_VOTE, AuthenticationManager::AUTH_LEVEL_MODERATOR);
$this->maniaControl->getAuthenticationManager()->definePermissionLevel(self::SETTING_PERMISSION_HANDLE_WARMUP, AuthenticationManager::AUTH_LEVEL_MODERATOR);
$this->updateCancelVoteMenuItem();
$this->updateWarmUpMenuItems();
@ -123,8 +102,7 @@ class Commands implements CallbackListener, CommandListener, ManialinkPageAnswer
$itemQuad = new Quad_Icons64x64_1();
$itemQuad->setSubStyle($itemQuad::SUBSTYLE_ArrowRed);
$itemQuad->setAction(self::ACTION_CANCEL_VOTE);
$this->maniaControl->getActionsMenu()
->addMenuItem($itemQuad, false, 30, 'Cancel Vote');
$this->maniaControl->getActionsMenu()->addMenuItem($itemQuad, false, 30, 'Cancel Vote');
}
/**
@ -133,16 +111,14 @@ class Commands implements CallbackListener, CommandListener, ManialinkPageAnswer
private function updateWarmUpMenuItems() {
$pauseExists = false;
try {
$scriptInfos = $this->maniaControl->getClient()
->getModeScriptInfo();
$scriptInfos = $this->maniaControl->getClient()->getModeScriptInfo();
foreach ($scriptInfos->commandDescs as $param) {
if ($param->name === self::COMMAND_FORCE_WARMUP) {
$pauseExists = true;
break;
}
}
$this->maniaControl->getClient()
->triggerModeScriptEvent("WarmUp_GetStatus");
$this->maniaControl->getClient()->triggerModeScriptEvent("WarmUp_GetStatus");
} catch (GameModeException $e) {
}
@ -151,8 +127,7 @@ class Commands implements CallbackListener, CommandListener, ManialinkPageAnswer
$itemQuad = new Quad_Icons128x32_1();
$itemQuad->setSubStyle($itemQuad::SUBSTYLE_ManiaLinkSwitch);
$itemQuad->setAction(self::ACTION_SET_PAUSE);
$this->maniaControl->getActionsMenu()
->addAdminMenuItem($itemQuad, 13, 'Pause the current game');
$this->maniaControl->getActionsMenu()->addAdminMenuItem($itemQuad, 13, 'Pause the current game');
}
}
@ -168,20 +143,16 @@ class Commands implements CallbackListener, CommandListener, ManialinkPageAnswer
$itemQuad = new Quad_BgRaceScore2();
$itemQuad->setSubStyle($itemQuad::SUBSTYLE_SendScore);
$itemQuad->setAction(self::ACTION_EXTEND_WARMUP);
$this->maniaControl->getActionsMenu()
->addMenuItem($itemQuad, false, 14, 'Extend Warmup');
$this->maniaControl->getActionsMenu()->addMenuItem($itemQuad, false, 14, 'Extend Warmup');
// Stop WarmUp menu item
$itemQuad = new Quad_Icons64x64_1();
$itemQuad->setSubStyle($itemQuad::SUBSTYLE_ArrowGreen);
$itemQuad->setAction(self::ACTION_END_WARMUP);
$this->maniaControl->getActionsMenu()
->addMenuItem($itemQuad, false, 15, 'End Warmup');
$this->maniaControl->getActionsMenu()->addMenuItem($itemQuad, false, 15, 'End Warmup');
} else {
$this->maniaControl->getActionsMenu()
->removeMenuItem(14, false);
$this->maniaControl->getActionsMenu()
->removeMenuItem(15, false);
$this->maniaControl->getActionsMenu()->removeMenuItem(14, false);
$this->maniaControl->getActionsMenu()->removeMenuItem(15, false);
}
}
@ -192,26 +163,20 @@ class Commands implements CallbackListener, CommandListener, ManialinkPageAnswer
* @param Player $player
*/
public function commandCancelVote(array $chatCallback, Player $player) {
if (!$this->maniaControl->getAuthenticationManager()
->checkPermission($player, self::SETTING_PERMISSION_CANCEL_VOTE)
if (!$this->maniaControl->getAuthenticationManager()->checkPermission($player, self::SETTING_PERMISSION_CANCEL_VOTE)
) {
$this->maniaControl->getAuthenticationManager()
->sendNotAllowed($player);
$this->maniaControl->getAuthenticationManager()->sendNotAllowed($player);
return;
}
if ($this->maniaControl->getClient()
->cancelVote()
if ($this->maniaControl->getClient()->cancelVote()
) {
$this->maniaControl->getChat()
->sendInformation($player->getEscapedNickname() . ' cancelled the Vote!');
$this->maniaControl->getChat()->sendInformation($player->getEscapedNickname() . ' cancelled the Vote!');
} else {
$this->maniaControl->getChat()
->sendInformation("There's no vote running currently!", $player);
$this->maniaControl->getChat()->sendInformation("There's no vote running currently!", $player);
}
$this->maniaControl->getCallbackManager()
->triggerCallback(self::CB_VOTE_CANCELLED, $player);
$this->maniaControl->getCallbackManager()->triggerCallback(self::CB_VOTE_CANCELLED, $player);
}
@ -222,19 +187,15 @@ class Commands implements CallbackListener, CommandListener, ManialinkPageAnswer
* @param Player $player
*/
public function commandExtendWarmup(array $callback, Player $player) {
if (!$this->maniaControl->getAuthenticationManager()
->checkPermission($player, self::SETTING_PERMISSION_HANDLE_WARMUP)
if (!$this->maniaControl->getAuthenticationManager()->checkPermission($player, self::SETTING_PERMISSION_HANDLE_WARMUP)
) {
$this->maniaControl->getAuthenticationManager()
->sendNotAllowed($player);
$this->maniaControl->getAuthenticationManager()->sendNotAllowed($player);
return;
}
try {
$this->maniaControl->getClient()
->triggerModeScriptEvent('WarmUp_Extend', '10');
$this->maniaControl->getChat()
->sendInformation($player->getEscapedNickname() . ' extended the WarmUp by 10 seconds!');
$this->maniaControl->getClient()->triggerModeScriptEvent('WarmUp_Extend', '10');
$this->maniaControl->getChat()->sendInformation($player->getEscapedNickname() . ' extended the WarmUp by 10 seconds!');
} catch (GameModeException $e) {
}
}
@ -246,19 +207,15 @@ class Commands implements CallbackListener, CommandListener, ManialinkPageAnswer
* @param Player $player
*/
public function commandEndWarmup(array $callback, Player $player) {
if (!$this->maniaControl->getAuthenticationManager()
->checkPermission($player, self::SETTING_PERMISSION_HANDLE_WARMUP)
if (!$this->maniaControl->getAuthenticationManager()->checkPermission($player, self::SETTING_PERMISSION_HANDLE_WARMUP)
) {
$this->maniaControl->getAuthenticationManager()
->sendNotAllowed($player);
$this->maniaControl->getAuthenticationManager()->sendNotAllowed($player);
return;
}
try {
$this->maniaControl->getClient()
->triggerModeScriptEvent('WarmUp_Stop', '');
$this->maniaControl->getChat()
->sendInformation($player->getEscapedNickname() . ' stopped the WarmUp!');
$this->maniaControl->getClient()->triggerModeScriptEvent('WarmUp_Stop', '');
$this->maniaControl->getChat()->sendInformation($player->getEscapedNickname() . ' stopped the WarmUp!');
} catch (GameModeException $e) {
}
}
@ -270,18 +227,14 @@ class Commands implements CallbackListener, CommandListener, ManialinkPageAnswer
* @param Player $player
*/
public function setPause(array $callback, Player $player) {
if (!$this->maniaControl->getAuthenticationManager()
->checkPermission($player, self::SETTING_PERMISSION_SET_PAUSE)
if (!$this->maniaControl->getAuthenticationManager()->checkPermission($player, self::SETTING_PERMISSION_SET_PAUSE)
) {
$this->maniaControl->getAuthenticationManager()
->sendNotAllowed($player);
$this->maniaControl->getAuthenticationManager()->sendNotAllowed($player);
return;
}
try {
$this->maniaControl->getClient()
->sendModeScriptCommands(array('Command_ForceWarmUp' => true));
$this->maniaControl->getChat()
->sendInformation($player->getEscapedNickname() . ' paused the Game!');
$this->maniaControl->getClient()->sendModeScriptCommands(array('Command_ForceWarmUp' => true));
$this->maniaControl->getChat()->sendInformation($player->getEscapedNickname() . ' paused the Game!');
} catch (GameModeException $e) {
}
}
@ -293,8 +246,7 @@ class Commands implements CallbackListener, CommandListener, ManialinkPageAnswer
// TODO: move empty & delayed shutdown code into server class
// Empty shutdown
if ($this->serverShutdownEmpty) {
if ($this->maniaControl->getPlayerManager()
->getPlayerCount(false) <= 0
if ($this->maniaControl->getPlayerManager()->getPlayerCount(false) <= 0
) {
$this->shutdownServer('empty');
}
@ -315,8 +267,7 @@ class Commands implements CallbackListener, CommandListener, ManialinkPageAnswer
*/
private function shutdownServer($login = '-') {
Logger::logInfo("Server shutdown requested by '{$login}'!");
$this->maniaControl->getClient()
->stopServer();
$this->maniaControl->getClient()->stopServer();
}
/**
@ -326,18 +277,14 @@ class Commands implements CallbackListener, CommandListener, ManialinkPageAnswer
* @param Player $player
*/
public function commandSystemInfo(array $chat, Player $player) {
if (!$this->maniaControl->getAuthenticationManager()
->checkPermission($player, self::SETTING_PERMISSION_SHOW_SYSTEMINFO)
if (!$this->maniaControl->getAuthenticationManager()->checkPermission($player, self::SETTING_PERMISSION_SHOW_SYSTEMINFO)
) {
$this->maniaControl->getAuthenticationManager()
->sendNotAllowed($player);
$this->maniaControl->getAuthenticationManager()->sendNotAllowed($player);
return;
}
$systemInfo = $this->maniaControl->getClient()
->getSystemInfo();
$systemInfo = $this->maniaControl->getClient()->getSystemInfo();
$message = 'SystemInfo: ip=' . $systemInfo->publishedIp . ', port=' . $systemInfo->port . ', p2pPort=' . $systemInfo->p2PPort . ', title=' . $systemInfo->titleId . ', login=' . $systemInfo->serverLogin . '.';
$this->maniaControl->getChat()
->sendInformation($message, $player->login);
$this->maniaControl->getChat()->sendInformation($message, $player->login);
}
/**
@ -347,11 +294,9 @@ class Commands implements CallbackListener, CommandListener, ManialinkPageAnswer
* @param Player $player
*/
public function commandShutdownServer(array $chat, Player $player) {
if (!$this->maniaControl->getAuthenticationManager()
->checkPermission($player, self::SETTING_PERMISSION_SHUTDOWN_SERVER)
if (!$this->maniaControl->getAuthenticationManager()->checkPermission($player, self::SETTING_PERMISSION_SHUTDOWN_SERVER)
) {
$this->maniaControl->getAuthenticationManager()
->sendNotAllowed($player);
$this->maniaControl->getAuthenticationManager()->sendNotAllowed($player);
return;
}
// Check for delayed shutdown
@ -361,26 +306,22 @@ class Commands implements CallbackListener, CommandListener, ManialinkPageAnswer
if (strtolower($param) === 'empty') {
$this->serverShutdownEmpty = !$this->serverShutdownEmpty;
if ($this->serverShutdownEmpty) {
$this->maniaControl->getChat()
->sendInformation("The server will shutdown as soon as it's empty!", $player);
$this->maniaControl->getChat()->sendInformation("The server will shutdown as soon as it's empty!", $player);
return;
}
$this->maniaControl->getChat()
->sendInformation("Empty-shutdown cancelled!", $player);
$this->maniaControl->getChat()->sendInformation("Empty-shutdown cancelled!", $player);
return;
}
$delay = (int)$param;
if ($delay <= 0) {
// Cancel shutdown
$this->serverShutdownTime = -1;
$this->maniaControl->getChat()
->sendInformation("Delayed shutdown cancelled!", $player);
$this->maniaControl->getChat()->sendInformation("Delayed shutdown cancelled!", $player);
return;
}
// Trigger delayed shutdown
$this->serverShutdownTime = time() + $delay * 60.;
$this->maniaControl->getChat()
->sendInformation("The server will shut down in {$delay} minutes!", $player);
$this->maniaControl->getChat()->sendInformation("The server will shut down in {$delay} minutes!", $player);
return;
}
$this->shutdownServer($player->login);
@ -393,24 +334,19 @@ class Commands implements CallbackListener, CommandListener, ManialinkPageAnswer
* @param Player $player
*/
public function commandSetServerName(array $chat, Player $player) {
if (!$this->maniaControl->getAuthenticationManager()
->checkPermission($player, self::SETTING_PERMISSION_CHANGE_SERVERSETTINGS)
if (!$this->maniaControl->getAuthenticationManager()->checkPermission($player, self::SETTING_PERMISSION_CHANGE_SERVERSETTINGS)
) {
$this->maniaControl->getAuthenticationManager()
->sendNotAllowed($player);
$this->maniaControl->getAuthenticationManager()->sendNotAllowed($player);
return;
}
$params = explode(' ', $chat[1][2], 2);
if (count($params) < 2) {
$this->maniaControl->getChat()
->sendUsageInfo('Usage example: //setservername ManiaPlanet Server', $player);
$this->maniaControl->getChat()->sendUsageInfo('Usage example: //setservername ManiaPlanet Server', $player);
return;
}
$serverName = $params[1];
$this->maniaControl->getClient()
->setServerName($serverName);
$this->maniaControl->getChat()
->sendSuccess("Server name changed to: '{$serverName}'!", $player);
$this->maniaControl->getClient()->setServerName($serverName);
$this->maniaControl->getChat()->sendSuccess("Server name changed to: '{$serverName}'!", $player);
}
/**
@ -420,11 +356,9 @@ class Commands implements CallbackListener, CommandListener, ManialinkPageAnswer
* @param Player $player
*/
public function commandSetPwd(array $chatCallback, Player $player) {
if (!$this->maniaControl->getAuthenticationManager()
->checkPermission($player, self::SETTING_PERMISSION_CHANGE_SERVERSETTINGS)
if (!$this->maniaControl->getAuthenticationManager()->checkPermission($player, self::SETTING_PERMISSION_CHANGE_SERVERSETTINGS)
) {
$this->maniaControl->getAuthenticationManager()
->sendNotAllowed($player);
$this->maniaControl->getAuthenticationManager()->sendNotAllowed($player);
return;
}
$messageParts = explode(' ', $chatCallback[1][2], 2);
@ -434,10 +368,8 @@ class Commands implements CallbackListener, CommandListener, ManialinkPageAnswer
$password = $messageParts[1];
$successMessage = "Password changed to: '{$password}'!";
}
$this->maniaControl->getClient()
->setServerPassword($password);
$this->maniaControl->getChat()
->sendSuccess($successMessage, $player);
$this->maniaControl->getClient()->setServerPassword($password);
$this->maniaControl->getChat()->sendSuccess($successMessage, $player);
}
/**
@ -447,11 +379,9 @@ class Commands implements CallbackListener, CommandListener, ManialinkPageAnswer
* @param Player $player
*/
public function commandSetSpecPwd(array $chatCallback, Player $player) {
if (!$this->maniaControl->getAuthenticationManager()
->checkPermission($player, self::SETTING_PERMISSION_CHANGE_SERVERSETTINGS)
if (!$this->maniaControl->getAuthenticationManager()->checkPermission($player, self::SETTING_PERMISSION_CHANGE_SERVERSETTINGS)
) {
$this->maniaControl->getAuthenticationManager()
->sendNotAllowed($player);
$this->maniaControl->getAuthenticationManager()->sendNotAllowed($player);
return;
}
$messageParts = explode(' ', $chatCallback[1][2], 2);
@ -461,10 +391,8 @@ class Commands implements CallbackListener, CommandListener, ManialinkPageAnswer
$password = $messageParts[1];
$successMessage = "Spectator password changed to: '{$password}'!";
}
$this->maniaControl->getClient()
->setServerPasswordForSpectator($password);
$this->maniaControl->getChat()
->sendSuccess($successMessage, $player);
$this->maniaControl->getClient()->setServerPasswordForSpectator($password);
$this->maniaControl->getChat()->sendSuccess($successMessage, $player);
}
/**
@ -474,23 +402,19 @@ class Commands implements CallbackListener, CommandListener, ManialinkPageAnswer
* @param Player $player
*/
public function commandSetMaxPlayers(array $chatCallback, Player $player) {
if (!$this->maniaControl->getAuthenticationManager()
->checkPermission($player, self::SETTING_PERMISSION_CHANGE_SERVERSETTINGS)
if (!$this->maniaControl->getAuthenticationManager()->checkPermission($player, self::SETTING_PERMISSION_CHANGE_SERVERSETTINGS)
) {
$this->maniaControl->getAuthenticationManager()
->sendNotAllowed($player);
$this->maniaControl->getAuthenticationManager()->sendNotAllowed($player);
return;
}
$messageParts = explode(' ', $chatCallback[1][2], 2);
if (!isset($messageParts[1])) {
$this->maniaControl->getChat()
->sendUsageInfo('Usage example: //setmaxplayers 16', $player);
$this->maniaControl->getChat()->sendUsageInfo('Usage example: //setmaxplayers 16', $player);
return;
}
$amount = $messageParts[1];
if (!is_numeric($amount)) {
$this->maniaControl->getChat()
->sendUsageInfo('Usage example: //setmaxplayers 16', $player);
$this->maniaControl->getChat()->sendUsageInfo('Usage example: //setmaxplayers 16', $player);
return;
}
$amount = (int)$amount;
@ -498,10 +422,8 @@ class Commands implements CallbackListener, CommandListener, ManialinkPageAnswer
$amount = 0;
}
$this->maniaControl->getClient()
->setMaxPlayers($amount);
$this->maniaControl->getChat()
->sendSuccess("Changed max players to: {$amount}", $player);
$this->maniaControl->getClient()->setMaxPlayers($amount);
$this->maniaControl->getChat()->sendSuccess("Changed max players to: {$amount}", $player);
}
/**
@ -511,23 +433,19 @@ class Commands implements CallbackListener, CommandListener, ManialinkPageAnswer
* @param Player $player
*/
public function commandSetMaxSpectators(array $chatCallback, Player $player) {
if (!$this->maniaControl->getAuthenticationManager()
->checkPermission($player, self::SETTING_PERMISSION_CHANGE_SERVERSETTINGS)
if (!$this->maniaControl->getAuthenticationManager()->checkPermission($player, self::SETTING_PERMISSION_CHANGE_SERVERSETTINGS)
) {
$this->maniaControl->getAuthenticationManager()
->sendNotAllowed($player);
$this->maniaControl->getAuthenticationManager()->sendNotAllowed($player);
return;
}
$messageParts = explode(' ', $chatCallback[1][2], 2);
if (!isset($messageParts[1])) {
$this->maniaControl->getChat()
->sendUsageInfo('Usage example: //setmaxspectators 16', $player);
$this->maniaControl->getChat()->sendUsageInfo('Usage example: //setmaxspectators 16', $player);
return;
}
$amount = $messageParts[1];
if (!is_numeric($amount)) {
$this->maniaControl->getChat()
->sendUsageInfo('Usage example: //setmaxspectators 16', $player);
$this->maniaControl->getChat()->sendUsageInfo('Usage example: //setmaxspectators 16', $player);
return;
}
$amount = (int)$amount;
@ -535,9 +453,7 @@ class Commands implements CallbackListener, CommandListener, ManialinkPageAnswer
$amount = 0;
}
$this->maniaControl->getClient()
->setMaxSpectators($amount);
$this->maniaControl->getChat()
->sendSuccess("Changed max spectators to: {$amount}", $player);
$this->maniaControl->getClient()->setMaxSpectators($amount);
$this->maniaControl->getChat()->sendSuccess("Changed max spectators to: {$amount}", $player);
}
}

View File

@ -30,8 +30,7 @@ class Directory implements CallbackListener {
$this->maniaControl = $maniaControl;
// Callbacks
$this->maniaControl->getCallbackManager()
->registerCallbackListener(CallbackManager::CB_MP_SERVERSTOP, $this, 'handleServerStopCallback');
$this->maniaControl->getCallbackManager()->registerCallbackListener(CallbackManager::CB_MP_SERVERSTOP, $this, 'handleServerStopCallback');
}
/**
@ -40,8 +39,7 @@ class Directory implements CallbackListener {
* @return string
*/
public function getMapsFolder() {
return $this->maniaControl->getClient()
->getMapsDirectory();
return $this->maniaControl->getClient()->getMapsDirectory();
}
/**
@ -50,8 +48,7 @@ class Directory implements CallbackListener {
* @return string
*/
public function getSkinsFolder() {
return $this->maniaControl->getClient()
->getSkinsDirectory();
return $this->maniaControl->getClient()->getSkinsDirectory();
}
/**
@ -86,8 +83,7 @@ class Directory implements CallbackListener {
* @return string
*/
public function getGameDataFolder() {
return $this->maniaControl->getClient()
->gameDataDirectory();
return $this->maniaControl->getClient()->gameDataDirectory();
}
/**

View File

@ -30,12 +30,9 @@ class RankingManager implements CallbackListener {
$this->maniaControl = $maniaControl;
// Callbacks
$this->maniaControl->getCallbackManager()
->registerCallbackListener(CallbackManager::CB_MP_MODESCRIPTCALLBACK, $this, 'handleCallbacks');
$this->maniaControl->getCallbackManager()
->registerCallbackListener(CallbackManager::CB_MP_MODESCRIPTCALLBACKARRAY, $this, 'handleCallbacks');
$this->maniaControl->getCallbackManager()
->registerCallbackListener(Callbacks::ONINIT, $this, 'onInit');
$this->maniaControl->getCallbackManager()->registerCallbackListener(CallbackManager::CB_MP_MODESCRIPTCALLBACK, $this, 'handleCallbacks');
$this->maniaControl->getCallbackManager()->registerCallbackListener(CallbackManager::CB_MP_MODESCRIPTCALLBACKARRAY, $this, 'handleCallbacks');
$this->maniaControl->getCallbackManager()->registerCallbackListener(Callbacks::ONINIT, $this, 'onInit');
//TODO won message at end of the map (disable as setting) (and public announce only all %50 (setting) players)
}
@ -44,8 +41,7 @@ class RankingManager implements CallbackListener {
*/
public function onInit() {
try {
$this->maniaControl->getClient()
->triggerModeScriptEvent('LibXmlRpc_GetRankings', '');
$this->maniaControl->getClient()->triggerModeScriptEvent('LibXmlRpc_GetRankings', '');
} catch (GameModeException $e) {
}
}
@ -94,8 +90,7 @@ class RankingManager implements CallbackListener {
array_multisort($this->rankings, SORT_DESC, SORT_NUMERIC);
//TODO if Local Records activated-> sort asc
$this->maniaControl->getCallbackManager()
->triggerCallback(Callbacks::RANKINGSUPDATED, $this->getRankings());
$this->maniaControl->getCallbackManager()->triggerCallback(Callbacks::RANKINGSUPDATED, $this->getRankings());
}
/**

View File

@ -39,8 +39,7 @@ class ScriptManager {
if (!$this->isScriptMode()) {
return false;
}
$scriptSettings = $this->maniaControl->getClient()
->getModeScriptSettings();
$scriptSettings = $this->maniaControl->getClient()->getModeScriptSettings();
if (!array_key_exists('S_UseScriptCallbacks', $scriptSettings)) {
return false;
@ -49,8 +48,7 @@ class ScriptManager {
$scriptSettings['S_UseScriptCallbacks'] = (bool)$enable;
$actionName = ($enable ? 'en' : 'dis');
$this->maniaControl->getClient()
->setModeScriptSettings($scriptSettings);
$this->maniaControl->getClient()->setModeScriptSettings($scriptSettings);
Logger::logInfo("Script Callbacks successfully {$actionName}abled!");
return true;
}
@ -62,8 +60,7 @@ class ScriptManager {
*/
public function isScriptMode() {
if (is_null($this->isScriptMode)) {
$gameMode = $this->maniaControl->getClient()
->getGameMode();
$gameMode = $this->maniaControl->getClient()->getGameMode();
$this->isScriptMode = ($gameMode === 0);
}
return $this->isScriptMode;

View File

@ -74,8 +74,7 @@ class Server implements CallbackListener {
$this->scriptManager = new ScriptManager($maniaControl);
// Callbacks
$this->maniaControl->getCallbackManager()
->registerCallbackListener(Callbacks::ONINIT, $this, 'onInit');
$this->maniaControl->getCallbackManager()->registerCallbackListener(Callbacks::ONINIT, $this, 'onInit');
}
/**
@ -84,8 +83,7 @@ class Server implements CallbackListener {
* @return bool
*/
private function initTables() {
$mysqli = $this->maniaControl->getDatabase()
->getMysqli();
$mysqli = $this->maniaControl->getDatabase()->getMysqli();
$query = "CREATE TABLE IF NOT EXISTS `" . self::TABLE_SERVERS . "` (
`index` int(11) NOT NULL AUTO_INCREMENT,
`login` varchar(100) NOT NULL,
@ -172,15 +170,13 @@ class Server implements CallbackListener {
// Server xml element with given id
$serverElement = null;
if ($serverId) {
$serverElements = $this->maniaControl->getConfig()
->xpath("server[@id='{$serverId}']");
$serverElements = $this->maniaControl->getConfig()->xpath("server[@id='{$serverId}']");
if (!$serverElements) {
$this->maniaControl->quit("No Server configured with the ID '{$serverId}'!", true);
}
$serverElement = $serverElements[0];
} else {
$serverElements = $this->maniaControl->getConfig()
->xpath('server');
$serverElements = $this->maniaControl->getConfig()->xpath('server');
if (!$serverElements) {
$this->maniaControl->quit('Invalid server configuration (No Server configured).', true);
}
@ -212,8 +208,7 @@ class Server implements CallbackListener {
* @return \stdClass[]
*/
public function getAllServers() {
$mysqli = $this->maniaControl->getDatabase()
->getMysqli();
$mysqli = $this->maniaControl->getDatabase()->getMysqli();
$query = "SELECT * FROM `" . self::TABLE_SERVERS . "`;";
$result = $mysqli->query($query);
if (!$result) {
@ -242,8 +237,7 @@ class Server implements CallbackListener {
*/
private function updateProperties() {
// System info
$systemInfo = $this->maniaControl->getClient()
->getSystemInfo();
$systemInfo = $this->maniaControl->getClient()->getSystemInfo();
$this->ip = $systemInfo->publishedIp;
$this->port = $systemInfo->port;
$this->p2pPort = $systemInfo->p2PPort;
@ -251,8 +245,7 @@ class Server implements CallbackListener {
$this->titleId = $systemInfo->titleId;
// Database index
$mysqli = $this->maniaControl->getDatabase()
->getMysqli();
$mysqli = $this->maniaControl->getDatabase()->getMysqli();
$query = "INSERT INTO `" . self::TABLE_SERVERS . "` (
`login`
) VALUES (
@ -281,8 +274,7 @@ class Server implements CallbackListener {
* @return \Maniaplanet\DedicatedServer\Structures\PlayerDetailedInfo
*/
public function getInfo() {
return $this->maniaControl->getClient()
->getDetailedPlayerInfo($this->login);
return $this->maniaControl->getClient()->getDetailedPlayerInfo($this->login);
}
/**
@ -294,12 +286,10 @@ class Server implements CallbackListener {
public function getValidationReplay($login) {
$login = Player::parseLogin($login);
try {
$replay = $this->maniaControl->getClient()
->getValidationReplay($login);
$replay = $this->maniaControl->getClient()->getValidationReplay($login);
} catch (Exception $e) {
// TODO temp added 19.04.2014
$this->maniaControl->getErrorHandler()
->triggerDebugNotice("Exception line 330 Server.php" . $e->getMessage());
$this->maniaControl->getErrorHandler()->triggerDebugNotice("Exception line 330 Server.php" . $e->getMessage());
trigger_error("Couldn't get validation replay of '{$login}'. " . $e->getMessage());
return null;
}
@ -313,28 +303,24 @@ class Server implements CallbackListener {
* @return string
*/
public function getGhostReplay($login) {
$dataDir = $this->getDirectory()
->getGameDataFolder();
$dataDir = $this->getDirectory()->getGameDataFolder();
if (!$this->checkAccess($dataDir)) {
return null;
}
// Build file name
$login = Player::parseLogin($login);
$map = $this->maniaControl->getMapManager()
->getCurrentMap();
$map = $this->maniaControl->getMapManager()->getCurrentMap();
$gameMode = $this->getGameMode();
$time = time();
$fileName = "GhostReplays/Ghost.{$login}.{$gameMode}.{$time}.{$map->uid}.Replay.Gbx";
// Save ghost replay
try {
$this->maniaControl->getClient()
->saveBestGhostsReplay($login, $fileName);
$this->maniaControl->getClient()->saveBestGhostsReplay($login, $fileName);
} catch (Exception $e) {
// TODO temp added 19.04.2014
$this->maniaControl->getErrorHandler()
->triggerDebugNotice("Exception line 360 Server.php" . $e->getMessage());
$this->maniaControl->getErrorHandler()->triggerDebugNotice("Exception line 360 Server.php" . $e->getMessage());
trigger_error("Couldn't save ghost replay. " . $e->getMessage());
return null;
@ -373,8 +359,7 @@ class Server implements CallbackListener {
if (is_int($parseValue)) {
$gameMode = $parseValue;
} else {
$gameMode = $this->maniaControl->getClient()
->getGameMode();
$gameMode = $this->maniaControl->getClient()->getGameMode();
}
if ($stringValue) {
switch ($gameMode) {
@ -406,8 +391,7 @@ class Server implements CallbackListener {
* @return bool
*/
public function waitForStatus($statusCode = 4) {
$response = $this->maniaControl->getClient()
->getStatus();
$response = $this->maniaControl->getClient()->getStatus();
// Check if server has the given status
if ($response->code === 4) {
return true;
@ -420,8 +404,7 @@ class Server implements CallbackListener {
Logger::log("Current Status: {$lastStatus}");
while ($response->code !== 4) {
sleep(1);
$response = $this->maniaControl->getClient()
->getStatus();
$response = $this->maniaControl->getClient()->getStatus();
if ($lastStatus !== $response->name) {
Logger::log("New Status: {$response->name}");
$lastStatus = $response->name;
@ -446,8 +429,7 @@ class Server implements CallbackListener {
// Trigger callback
if ($oldStatus !== $this->teamMode | $oldStatus === null) {
$this->maniaControl->getCallbackManager()
->triggerCallback(self::CB_TEAM_MODE_CHANGED, $teamMode);
$this->maniaControl->getCallbackManager()->triggerCallback(self::CB_TEAM_MODE_CHANGED, $teamMode);
}
}
@ -475,7 +457,6 @@ class Server implements CallbackListener {
* @return bool
*/
public function isEmpty() {
return ($this->maniaControl->getPlayerManager()
->getPlayerCount(false) === 0);
return ($this->maniaControl->getPlayerManager()->getPlayerCount(false) === 0);
}
}

View File

@ -59,14 +59,11 @@ class ServerOptionsMenu implements CallbackListener, ConfiguratorMenu, TimerList
$this->initTables();
// Callbacks
$this->maniaControl->getCallbackManager()
->registerCallbackListener(Callbacks::ONINIT, $this, 'onInit');
$this->maniaControl->getTimerManager()
->registerTimerListening($this, 'saveCurrentServerOptions', 6 * 3600 * 1000);
$this->maniaControl->getCallbackManager()->registerCallbackListener(Callbacks::ONINIT, $this, 'onInit');
$this->maniaControl->getTimerManager()->registerTimerListening($this, 'saveCurrentServerOptions', 6 * 3600 * 1000);
// Permissions
$this->maniaControl->getAuthenticationManager()
->definePermissionLevel(self::SETTING_PERMISSION_CHANGE_SERVER_OPTIONS, AuthenticationManager::AUTH_LEVEL_SUPERADMIN);
$this->maniaControl->getAuthenticationManager()->definePermissionLevel(self::SETTING_PERMISSION_CHANGE_SERVER_OPTIONS, AuthenticationManager::AUTH_LEVEL_SUPERADMIN);
}
/**
@ -75,8 +72,7 @@ class ServerOptionsMenu implements CallbackListener, ConfiguratorMenu, TimerList
* @return bool
*/
private function initTables() {
$mysqli = $this->maniaControl->getDatabase()
->getMysqli();
$mysqli = $this->maniaControl->getDatabase()->getMysqli();
$query = "CREATE TABLE IF NOT EXISTS `" . self::TABLE_SERVER_OPTIONS . "` (
`index` int(11) NOT NULL AUTO_INCREMENT,
`serverIndex` int(11) NOT NULL,
@ -113,8 +109,7 @@ class ServerOptionsMenu implements CallbackListener, ConfiguratorMenu, TimerList
* @return bool
*/
public function saveCurrentServerOptions() {
$serverOptions = $this->maniaControl->getClient()
->getServerOptions();
$serverOptions = $this->maniaControl->getClient()->getServerOptions();
return $this->saveServerOptions($serverOptions);
}
@ -126,8 +121,7 @@ class ServerOptionsMenu implements CallbackListener, ConfiguratorMenu, TimerList
* @return bool
*/
private function saveServerOptions(ServerOptions $serverOptions, $triggerCallbacks = false) {
$mysqli = $this->maniaControl->getDatabase()
->getMysqli();
$mysqli = $this->maniaControl->getDatabase()->getMysqli();
$query = "INSERT INTO `" . self::TABLE_SERVER_OPTIONS . "` (
`serverIndex`,
`optionName`,
@ -160,8 +154,7 @@ class ServerOptionsMenu implements CallbackListener, ConfiguratorMenu, TimerList
}
if ($triggerCallbacks) {
$this->maniaControl->getCallbackManager()
->triggerCallback(self::CB_SERVER_OPTION_CHANGED, array(self::CB_SERVER_OPTION_CHANGED, $optionName, $optionValue));
$this->maniaControl->getCallbackManager()->triggerCallback(self::CB_SERVER_OPTION_CHANGED, array(self::CB_SERVER_OPTION_CHANGED, $optionName, $optionValue));
}
}
@ -182,8 +175,7 @@ class ServerOptionsMenu implements CallbackListener, ConfiguratorMenu, TimerList
* @return bool
*/
public function loadOptionsFromDatabase() {
$mysqli = $this->maniaControl->getDatabase()
->getMysqli();
$mysqli = $this->maniaControl->getDatabase()->getMysqli();
$serverIndex = $this->maniaControl->getServer()->index;
$query = "SELECT * FROM `" . self::TABLE_SERVER_OPTIONS . "`
WHERE `serverIndex` = {$serverIndex};";
@ -193,8 +185,7 @@ class ServerOptionsMenu implements CallbackListener, ConfiguratorMenu, TimerList
return false;
}
$oldServerOptions = $this->maniaControl->getClient()
->getServerOptions();
$oldServerOptions = $this->maniaControl->getClient()->getServerOptions();
$newServerOptions = new ServerOptions();
while ($row = $result->fetch_object()) {
@ -211,11 +202,9 @@ class ServerOptionsMenu implements CallbackListener, ConfiguratorMenu, TimerList
$loaded = false;
try {
$loaded = $this->maniaControl->getClient()
->setServerOptions($newServerOptions);
$loaded = $this->maniaControl->getClient()->setServerOptions($newServerOptions);
} catch (ServerOptionsException $exception) {
$this->maniaControl->getChat()
->sendExceptionToAdmins($exception);
$this->maniaControl->getChat()->sendExceptionToAdmins($exception);
}
if ($loaded) {
@ -252,8 +241,7 @@ class ServerOptionsMenu implements CallbackListener, ConfiguratorMenu, TimerList
$script->addFeature($paging);
$frame = new Frame();
$serverOptions = $this->maniaControl->getClient()
->getServerOptions();
$serverOptions = $this->maniaControl->getClient()->getServerOptions();
$serverOptionsArray = $serverOptions->toArray();
// Config
@ -264,26 +252,17 @@ class ServerOptionsMenu implements CallbackListener, ConfiguratorMenu, TimerList
// Pagers
$pagerPrev = new Quad_Icons64x64_1();
$frame->add($pagerPrev);
$pagerPrev->setPosition($width * 0.39, $height * -0.44, 2)
->setSize($pagerSize, $pagerSize)
->setSubStyle($pagerPrev::SUBSTYLE_ArrowPrev);
$pagerPrev->setPosition($width * 0.39, $height * -0.44, 2)->setSize($pagerSize, $pagerSize)->setSubStyle($pagerPrev::SUBSTYLE_ArrowPrev);
$pagerNext = new Quad_Icons64x64_1();
$frame->add($pagerNext);
$pagerNext->setPosition($width * 0.45, $height * -0.44, 2)
->setSize($pagerSize, $pagerSize)
->setSubStyle($pagerNext::SUBSTYLE_ArrowNext);
$pagerNext->setPosition($width * 0.45, $height * -0.44, 2)->setSize($pagerSize, $pagerSize)->setSubStyle($pagerNext::SUBSTYLE_ArrowNext);
$pageCountLabel = new Label_Text();
$frame->add($pageCountLabel);
$pageCountLabel->setHAlign($pageCountLabel::RIGHT)
->setPosition($width * 0.35, $height * -0.44, 1)
->setStyle($pageCountLabel::STYLE_TextTitle1)
->setTextSize(2);
$pageCountLabel->setHAlign($pageCountLabel::RIGHT)->setPosition($width * 0.35, $height * -0.44, 1)->setStyle($pageCountLabel::STYLE_TextTitle1)->setTextSize(2);
$paging->addButton($pagerNext)
->addButton($pagerPrev)
->setLabel($pageCountLabel);
$paging->addButton($pagerNext)->addButton($pagerPrev)->setLabel($pageCountLabel);
// Pages
$posY = 0.;
@ -310,35 +289,22 @@ class ServerOptionsMenu implements CallbackListener, ConfiguratorMenu, TimerList
$nameLabel = new Label_Text();
$optionsFrame->add($nameLabel);
$nameLabel->setHAlign($nameLabel::LEFT)
->setX($width * -0.46)
->setSize($width * 0.4, $optionHeight)
->setStyle($nameLabel::STYLE_TextCardSmall)
->setTextSize($labelTextSize)
->setText($name)
->setTextColor('fff');
$nameLabel->setHAlign($nameLabel::LEFT)->setX($width * -0.46)->setSize($width * 0.4, $optionHeight)->setStyle($nameLabel::STYLE_TextCardSmall)->setTextSize($labelTextSize)->setText($name)->setTextColor('fff');
if (is_bool($value)) {
// Boolean checkbox
$quad = new Quad();
$quad->setPosition($width * 0.23, 0, -0.01)
->setSize(4, 4);
$quad->setPosition($width * 0.23, 0, -0.01)->setSize(4, 4);
$checkBox = new CheckBox(self::ACTION_PREFIX_OPTION . $name, $value, $quad);
$optionsFrame->add($checkBox);
} else {
// Other
$entry = new Entry();
$optionsFrame->add($entry);
$entry->setStyle(Label_Text::STYLE_TextValueSmall)
->setX($width * 0.23)
->setTextSize(1)
->setSize($width * 0.48, $optionHeight * 0.9)
->setName(self::ACTION_PREFIX_OPTION . $name)
->setDefault($value);
$entry->setStyle(Label_Text::STYLE_TextValueSmall)->setX($width * 0.23)->setTextSize(1)->setSize($width * 0.48, $optionHeight * 0.9)->setName(self::ACTION_PREFIX_OPTION . $name)->setDefault($value);
if ($name === 'Comment') {
$entry->setSize($width * 0.48, $optionHeight * 3. + $optionHeight * 0.9)
->setAutoNewLine(true);
$entry->setSize($width * 0.48, $optionHeight * 3. + $optionHeight * 0.9)->setAutoNewLine(true);
$optionsFrame->setY($posY - $optionHeight * 1.5);
$posY -= $optionHeight * 3.;
$index += 3;
@ -356,11 +322,9 @@ class ServerOptionsMenu implements CallbackListener, ConfiguratorMenu, TimerList
* @see \ManiaControl\Configurators\ConfiguratorMenu::saveConfigData()
*/
public function saveConfigData(array $configData, Player $player) {
if (!$this->maniaControl->getAuthenticationManager()
->checkPermission($player, self::SETTING_PERMISSION_CHANGE_SERVER_OPTIONS)
if (!$this->maniaControl->getAuthenticationManager()->checkPermission($player, self::SETTING_PERMISSION_CHANGE_SERVER_OPTIONS)
) {
$this->maniaControl->getAuthenticationManager()
->sendNotAllowed($player);
$this->maniaControl->getAuthenticationManager()->sendNotAllowed($player);
return;
}
if (!$configData[3] || strpos($configData[3][0]['Name'], self::ACTION_PREFIX_OPTION) !== 0) {
@ -369,8 +333,7 @@ class ServerOptionsMenu implements CallbackListener, ConfiguratorMenu, TimerList
$prefixLength = strlen(self::ACTION_PREFIX_OPTION);
$oldServerOptions = $this->maniaControl->getClient()
->getServerOptions();
$oldServerOptions = $this->maniaControl->getClient()->getServerOptions();
$newServerOptions = new ServerOptions();
foreach ($configData[3] as $option) {
@ -383,16 +346,13 @@ class ServerOptionsMenu implements CallbackListener, ConfiguratorMenu, TimerList
$success = $this->applyNewServerOptions($newServerOptions, $player);
if ($success) {
$this->maniaControl->getChat()
->sendSuccess('Server Options saved!', $player);
$this->maniaControl->getChat()->sendSuccess('Server Options saved!', $player);
} else {
$this->maniaControl->getChat()
->sendError('Server Options saving failed!', $player);
$this->maniaControl->getChat()->sendError('Server Options saving failed!', $player);
}
// Reopen the Menu
$this->maniaControl->getConfigurator()
->showMenu($player, $this);
$this->maniaControl->getConfigurator()->showMenu($player, $this);
}
/**
@ -404,18 +364,15 @@ class ServerOptionsMenu implements CallbackListener, ConfiguratorMenu, TimerList
*/
private function applyNewServerOptions(ServerOptions $newServerOptions, Player $player) {
try {
$this->maniaControl->getClient()
->setServerOptions($newServerOptions);
$this->maniaControl->getClient()->setServerOptions($newServerOptions);
} catch (ServerOptionsException $exception) {
$this->maniaControl->getChat()
->sendException($exception, $player);
$this->maniaControl->getChat()->sendException($exception, $player);
return false;
}
$this->saveServerOptions($newServerOptions, true);
$this->maniaControl->getCallbackManager()
->triggerCallback(self::CB_SERVER_OPTIONS_CHANGED, array(self::CB_SERVER_OPTIONS_CHANGED));
$this->maniaControl->getCallbackManager()->triggerCallback(self::CB_SERVER_OPTIONS_CHANGED, array(self::CB_SERVER_OPTIONS_CHANGED));
return true;
}

View File

@ -36,11 +36,9 @@ class UsageReporter implements TimerListener {
public function __construct(ManiaControl $maniaControl) {
$this->maniaControl = $maniaControl;
$this->maniaControl->getSettingManager()
->initSetting($this, self::SETTING_REPORT_USAGE, true);
$this->maniaControl->getSettingManager()->initSetting($this, self::SETTING_REPORT_USAGE, true);
$this->maniaControl->getTimerManager()
->registerTimerListening($this, 'reportUsage', 1000 * 60 * self::UPDATE_MINUTE_COUNT);
$this->maniaControl->getTimerManager()->registerTimerListening($this, 'reportUsage', 1000 * 60 * self::UPDATE_MINUTE_COUNT);
}
/**
@ -48,8 +46,7 @@ class UsageReporter implements TimerListener {
*/
public function reportUsage() {
if (DEV_MODE
|| !$this->maniaControl->getSettingManager()
->getSettingValue($this, self::SETTING_REPORT_USAGE)
|| !$this->maniaControl->getSettingManager()->getSettingValue($this, self::SETTING_REPORT_USAGE)
) {
return;
}
@ -60,41 +57,34 @@ class UsageReporter implements TimerListener {
$properties['PHPVersion'] = phpversion();
$properties['ServerLogin'] = $this->maniaControl->getServer()->login;
$properties['TitleId'] = $this->maniaControl->getServer()->titleId;
$properties['ServerName'] = Formatter::stripDirtyCodes($this->maniaControl->getClient()
->getServerName());
$properties['UpdateChannel'] = $this->maniaControl->getUpdateManager()
->getCurrentUpdateChannelSetting();
$properties['ServerName'] = Formatter::stripDirtyCodes($this->maniaControl->getClient()->getServerName());
$properties['UpdateChannel'] = $this->maniaControl->getUpdateManager()->getCurrentUpdateChannelSetting();
$properties['PlayerCount'] = $this->maniaControl->getPlayerManager()
->getPlayerCount();
$properties['PlayerCount'] = $this->maniaControl->getPlayerManager()->getPlayerCount();
$properties['MemoryUsage'] = memory_get_usage();
$properties['MemoryPeakUsage'] = memory_get_peak_usage();
$maxPlayers = $this->maniaControl->getClient()
->getMaxPlayers();
$maxPlayers = $this->maniaControl->getClient()->getMaxPlayers();
$properties['MaxPlayers'] = $maxPlayers['CurrentValue'];
try {
$scriptName = $this->maniaControl->getClient()
->getScriptName();
$scriptName = $this->maniaControl->getClient()->getScriptName();
$properties['ScriptName'] = $scriptName['CurrentValue'];
} catch (GameModeException $e) {
$properties['ScriptName'] = '';
}
$properties['ActivePlugins'] = $this->maniaControl->getPluginManager()
->getActivePluginsIds();
$properties['ActivePlugins'] = $this->maniaControl->getPluginManager()->getActivePluginsIds();
$json = json_encode($properties);
$info = base64_encode($json);
$url = ManiaControl::URL_WEBSERVICE . '/usagereport?info=' . urlencode($info);
$this->maniaControl->getFileReader()
->loadFile($url, function ($response, $error) {
$response = json_decode($response);
if ($error || !$response) {
Logger::logError('Error while Sending data: ' . print_r($error, true));
}
});
$this->maniaControl->getFileReader()->loadFile($url, function ($response, $error) {
$response = json_decode($response);
if ($error || !$response) {
Logger::logError('Error while Sending data: ' . print_r($error, true));
}
});
}
}

View File

@ -43,8 +43,7 @@ class VoteRatiosMenu implements CallbackListener, ConfiguratorMenu, TimerListene
$this->maniaControl = $maniaControl;
// Permissions
$this->maniaControl->getAuthenticationManager()
->definePermissionLevel(self::SETTING_PERMISSION_CHANGE_VOTE_RATIOS, AuthenticationManager::AUTH_LEVEL_ADMIN);
$this->maniaControl->getAuthenticationManager()->definePermissionLevel(self::SETTING_PERMISSION_CHANGE_VOTE_RATIOS, AuthenticationManager::AUTH_LEVEL_ADMIN);
}
/**
@ -64,8 +63,7 @@ class VoteRatiosMenu implements CallbackListener, ConfiguratorMenu, TimerListene
$index = 0;
$voteRatioCommands = $this->getVoteCommands();
$voteRatios = $this->maniaControl->getClient()
->getCallVoteRatios();
$voteRatios = $this->maniaControl->getClient()->getCallVoteRatios();
foreach ($voteRatioCommands as $voteRatioCommand => $voteRatioDescription) {
$voteRatioFrame = new Frame();
$frame->add($voteRatioFrame);
@ -73,20 +71,11 @@ class VoteRatiosMenu implements CallbackListener, ConfiguratorMenu, TimerListene
$nameLabel = new Label_Text();
$voteRatioFrame->add($nameLabel);
$nameLabel->setHAlign($nameLabel::LEFT)
->setX($width * -0.46)
->setSize($width * 0.7, $lineHeight)
->setTextSize(2)
->setTranslate(true)
->setText($voteRatioDescription);
$nameLabel->setHAlign($nameLabel::LEFT)->setX($width * -0.46)->setSize($width * 0.7, $lineHeight)->setTextSize(2)->setTranslate(true)->setText($voteRatioDescription);
$entry = new Entry();
$voteRatioFrame->add($entry);
$entry->setX($width * 0.35)
->setSize($width * 0.14, $lineHeight * 0.9)
->setStyle(Label_Text::STYLE_TextValueSmall)
->setTextSize($index === 0 ? 2 : 1)
->setName(self::ACTION_PREFIX_VOTE_RATIO . $voteRatioCommand);
$entry->setX($width * 0.35)->setSize($width * 0.14, $lineHeight * 0.9)->setStyle(Label_Text::STYLE_TextValueSmall)->setTextSize($index === 0 ? 2 : 1)->setName(self::ACTION_PREFIX_VOTE_RATIO . $voteRatioCommand);
$voteRatio = $this->getVoteRatioForCommand($voteRatios, $voteRatioCommand);
if ($voteRatio) {
@ -132,11 +121,9 @@ class VoteRatiosMenu implements CallbackListener, ConfiguratorMenu, TimerListene
* @see \ManiaControl\Configurators\ConfiguratorMenu::saveConfigData()
*/
public function saveConfigData(array $configData, Player $player) {
if (!$this->maniaControl->getAuthenticationManager()
->checkPermission($player, self::SETTING_PERMISSION_CHANGE_VOTE_RATIOS)
if (!$this->maniaControl->getAuthenticationManager()->checkPermission($player, self::SETTING_PERMISSION_CHANGE_VOTE_RATIOS)
) {
$this->maniaControl->getAuthenticationManager()
->sendNotAllowed($player);
$this->maniaControl->getAuthenticationManager()->sendNotAllowed($player);
return;
}
if (!$configData[3] || strpos($configData[3][0]['Name'], self::ACTION_PREFIX_VOTE_RATIO) !== 0) {
@ -167,19 +154,15 @@ class VoteRatiosMenu implements CallbackListener, ConfiguratorMenu, TimerListene
array_push($newVoteRatios, $voteRatio);
}
$success = $this->maniaControl->getClient()
->setCallVoteRatios($newVoteRatios);
$success = $this->maniaControl->getClient()->setCallVoteRatios($newVoteRatios);
if ($success) {
$this->maniaControl->getChat()
->sendSuccess('Vote Ratios saved!', $player);
$this->maniaControl->getChat()->sendSuccess('Vote Ratios saved!', $player);
} else {
$this->maniaControl->getChat()
->sendError('Vote Ratios saving failed!', $player);
$this->maniaControl->getChat()->sendError('Vote Ratios saving failed!', $player);
}
// Reopen the Menu
$this->maniaControl->getConfigurator()
->showMenu($player, $this);
$this->maniaControl->getConfigurator()->showMenu($player, $this);
}
/**
@ -189,7 +172,6 @@ class VoteRatiosMenu implements CallbackListener, ConfiguratorMenu, TimerListene
* @param string $commandName
*/
private function sendInvalidValueError(Player $player, $commandName) {
$this->maniaControl->getChat()
->sendError("Invalid Value given for '{$commandName}'!", $player);
$this->maniaControl->getChat()->sendError("Invalid Value given for '{$commandName}'!", $player);
}
}