small improvements

This commit is contained in:
kremsy 2017-05-13 23:05:47 +02:00
parent eebb2476b0
commit 52b54073bb
2 changed files with 60 additions and 39 deletions

View File

@ -8,8 +8,10 @@ use ManiaControl\Callbacks\Structures\XmlRpc\DocumentationStructure;
use ManiaControl\Callbacks\Structures\XmlRpc\MethodListStructure; use ManiaControl\Callbacks\Structures\XmlRpc\MethodListStructure;
use ManiaControl\General\UsageInformationAble; use ManiaControl\General\UsageInformationAble;
use ManiaControl\General\UsageInformationTrait; use ManiaControl\General\UsageInformationTrait;
use ManiaControl\Logger;
use ManiaControl\ManiaControl; use ManiaControl\ManiaControl;
use ManiaControl\Players\Player; use ManiaControl\Players\Player;
use Maniaplanet\DedicatedServer\Xmlrpc\GameModeException;
/** /**
* Manager for Mode Script Events * Manager for Mode Script Events
@ -39,7 +41,7 @@ class ModeScriptEventManager implements UsageInformationAble {
* Enables XmlRpc Callbacks * Enables XmlRpc Callbacks
*/ */
public function enableCallbacks() { public function enableCallbacks() {
$this->maniaControl->getClient()->triggerModeScriptEvent('XmlRpc.EnableCallbacks', array('true')); $this->triggerModeScriptEvent('XmlRpc.EnableCallbacks', array('true'));
$this->setApiVersion(self::API_VERSION); $this->setApiVersion(self::API_VERSION);
$this->unBlockAllCallbacks(); $this->unBlockAllCallbacks();
@ -49,7 +51,7 @@ class ModeScriptEventManager implements UsageInformationAble {
* Disables XmlRpc Callbacks * Disables XmlRpc Callbacks
*/ */
public function disableCallbacks() { public function disableCallbacks() {
$this->maniaControl->getClient()->triggerModeScriptEvent('XmlRpc.EnableCallbacks', array('false')); $this->triggerModeScriptEvent('XmlRpc.EnableCallbacks', array('false'));
} }
@ -61,7 +63,7 @@ class ModeScriptEventManager implements UsageInformationAble {
*/ */
public function getCallbacksList() { public function getCallbacksList() {
$responseId = $this->generateResponseId(); $responseId = $this->generateResponseId();
$this->maniaControl->getClient()->triggerModeScriptEvent('XmlRpc.GetCallbacksList', array($responseId)); $this->triggerModeScriptEvent('XmlRpc.GetCallbacksList', array($responseId));
return new InvokeScriptCallback($this->maniaControl, Callbacks::XMLRPC_CALLBACKSLIST, $responseId); return new InvokeScriptCallback($this->maniaControl, Callbacks::XMLRPC_CALLBACKSLIST, $responseId);
} }
@ -83,7 +85,7 @@ class ModeScriptEventManager implements UsageInformationAble {
* @param array $callbackNames * @param array $callbackNames
*/ */
public function blockCallbacks($callbackNames) { public function blockCallbacks($callbackNames) {
$this->maniaControl->getClient()->triggerModeScriptEvent('XmlRpc.BlockCallbacks', $callbackNames); $this->triggerModeScriptEvent('XmlRpc.BlockCallbacks', $callbackNames);
} }
/** /**
@ -114,7 +116,7 @@ class ModeScriptEventManager implements UsageInformationAble {
* @param array $callbackNames * @param array $callbackNames
*/ */
public function unBlockCallbacks($callbackNames) { public function unBlockCallbacks($callbackNames) {
$this->maniaControl->getClient()->triggerModeScriptEvent('XmlRpc.UnblockCallbacks', $callbackNames); $this->triggerModeScriptEvent('XmlRpc.UnblockCallbacks', $callbackNames);
} }
/** /**
@ -135,7 +137,7 @@ class ModeScriptEventManager implements UsageInformationAble {
*/ */
public function getListOfEnabledCallbacks() { public function getListOfEnabledCallbacks() {
$responseId = $this->generateResponseId(); $responseId = $this->generateResponseId();
$this->maniaControl->getClient()->triggerModeScriptEvent('XmlRpc.GetCallbacksList_Enabled', array($responseId)); $this->triggerModeScriptEvent('XmlRpc.GetCallbacksList_Enabled', array($responseId));
return new InvokeScriptCallback($this->maniaControl, Callbacks::XMLRPC_ENABLEDCALLBACKS, $responseId); return new InvokeScriptCallback($this->maniaControl, Callbacks::XMLRPC_ENABLEDCALLBACKS, $responseId);
} }
@ -147,7 +149,7 @@ class ModeScriptEventManager implements UsageInformationAble {
*/ */
public function getListOfDisabledCallbacks() { public function getListOfDisabledCallbacks() {
$responseId = $this->generateResponseId(); $responseId = $this->generateResponseId();
$this->maniaControl->getClient()->triggerModeScriptEvent('XmlRpc.GetCallbacksList_Disabled', array($responseId)); $this->triggerModeScriptEvent('XmlRpc.GetCallbacksList_Disabled', array($responseId));
return new InvokeScriptCallback($this->maniaControl, Callbacks::XMLRPC_DISABLEDCALLBACKS, $responseId); return new InvokeScriptCallback($this->maniaControl, Callbacks::XMLRPC_DISABLEDCALLBACKS, $responseId);
} }
@ -160,7 +162,7 @@ class ModeScriptEventManager implements UsageInformationAble {
*/ */
public function getCallbackHelp($callbackName) { public function getCallbackHelp($callbackName) {
$responseId = $this->generateResponseId(); $responseId = $this->generateResponseId();
$this->maniaControl->getClient()->triggerModeScriptEvent('XmlRpc.GetCallbackHelp', array($callbackName, $responseId)); $this->triggerModeScriptEvent('XmlRpc.GetCallbackHelp', array($callbackName, $responseId));
return new InvokeScriptCallback($this->maniaControl, Callbacks::XMLRPC_CALLBACKHELP, $responseId); return new InvokeScriptCallback($this->maniaControl, Callbacks::XMLRPC_CALLBACKHELP, $responseId);
} }
@ -173,7 +175,7 @@ class ModeScriptEventManager implements UsageInformationAble {
*/ */
public function getMethodsList() { public function getMethodsList() {
$responseId = $this->generateResponseId(); $responseId = $this->generateResponseId();
$this->maniaControl->getClient()->triggerModeScriptEvent('XmlRpc.GetMethodsList', array($responseId)); $this->triggerModeScriptEvent('XmlRpc.GetMethodsList', array($responseId));
return new InvokeScriptCallback($this->maniaControl, Callbacks::XMLRPC_METHODSLIST, $responseId); return new InvokeScriptCallback($this->maniaControl, Callbacks::XMLRPC_METHODSLIST, $responseId);
} }
@ -194,7 +196,7 @@ class ModeScriptEventManager implements UsageInformationAble {
* @param string $version * @param string $version
*/ */
public function setApiVersion($version = self::API_VERSION) { public function setApiVersion($version = self::API_VERSION) {
$this->maniaControl->getClient()->triggerModeScriptEvent('XmlRpc.SetApiVersion', array($version)); $this->triggerModeScriptEvent('XmlRpc.SetApiVersion', array($version));
} }
/** /**
@ -205,7 +207,7 @@ class ModeScriptEventManager implements UsageInformationAble {
*/ */
public function getApiVersion() { public function getApiVersion() {
$responseId = $this->generateResponseId(); $responseId = $this->generateResponseId();
$this->maniaControl->getClient()->triggerModeScriptEvent('XmlRpc.GetApiVersion', array($responseId)); $this->triggerModeScriptEvent('XmlRpc.GetApiVersion', array($responseId));
return new InvokeScriptCallback($this->maniaControl, Callbacks::XMLRPC_APIVERSION, $responseId); return new InvokeScriptCallback($this->maniaControl, Callbacks::XMLRPC_APIVERSION, $responseId);
} }
@ -218,7 +220,7 @@ class ModeScriptEventManager implements UsageInformationAble {
*/ */
public function getMethodHelp($methodName) { public function getMethodHelp($methodName) {
$responseId = $this->generateResponseId(); $responseId = $this->generateResponseId();
$this->maniaControl->getClient()->triggerModeScriptEvent('XmlRpc.GetMethodHelp', array($methodName, $responseId)); $this->triggerModeScriptEvent('XmlRpc.GetMethodHelp', array($methodName, $responseId));
return new InvokeScriptCallback($this->maniaControl, Callbacks::XMLRPC_METHODHELP, $responseId); return new InvokeScriptCallback($this->maniaControl, Callbacks::XMLRPC_METHODHELP, $responseId);
} }
@ -230,7 +232,7 @@ class ModeScriptEventManager implements UsageInformationAble {
*/ */
public function getDocumentation() { public function getDocumentation() {
$responseId = $this->generateResponseId(); $responseId = $this->generateResponseId();
$this->maniaControl->getClient()->triggerModeScriptEvent('XmlRpc.GetDocumentation', array($responseId)); $this->triggerModeScriptEvent('XmlRpc.GetDocumentation', array($responseId));
return new InvokeScriptCallback($this->maniaControl, Callbacks::XMLRPC_DOCUMENTATION, $responseId); return new InvokeScriptCallback($this->maniaControl, Callbacks::XMLRPC_DOCUMENTATION, $responseId);
} }
@ -253,7 +255,7 @@ class ModeScriptEventManager implements UsageInformationAble {
*/ */
public function getAllApiVersions() { public function getAllApiVersions() {
$responseId = $this->generateResponseId(); $responseId = $this->generateResponseId();
$this->maniaControl->getClient()->triggerModeScriptEvent('XmlRpc.GetAllApiVersions', array($responseId)); $this->triggerModeScriptEvent('XmlRpc.GetAllApiVersions', array($responseId));
return new InvokeScriptCallback($this->maniaControl, Callbacks::XMLRPC_ALLAPIVERSIONS, $responseId); return new InvokeScriptCallback($this->maniaControl, Callbacks::XMLRPC_ALLAPIVERSIONS, $responseId);
} }
@ -265,7 +267,7 @@ class ModeScriptEventManager implements UsageInformationAble {
*/ */
public function hideScoreBoardOnAlt(Player $player) { public function hideScoreBoardOnAlt(Player $player) {
$login = Player::parseLogin($player); $login = Player::parseLogin($player);
$this->maniaControl->getClient()->triggerModeScriptEvent('Maniaplanet.UI.SetAltScoresTableVisibility', array($login, "False")); $this->triggerModeScriptEvent('Maniaplanet.UI.SetAltScoresTableVisibility', array($login, "False"));
} }
/** /**
@ -276,7 +278,7 @@ class ModeScriptEventManager implements UsageInformationAble {
*/ */
public function displayScoreBoardOnAlt(Player $player) { public function displayScoreBoardOnAlt(Player $player) {
$login = Player::parseLogin($player); $login = Player::parseLogin($player);
$this->maniaControl->getClient()->triggerModeScriptEvent('Maniaplanet.UI.SetAltScoresTableVisibility', array($login, "True")); $this->triggerModeScriptEvent('Maniaplanet.UI.SetAltScoresTableVisibility', array($login, "True"));
} }
/** /**
@ -286,7 +288,7 @@ class ModeScriptEventManager implements UsageInformationAble {
* @param $seconds < the duration of the extension in seconds. * @param $seconds < the duration of the extension in seconds.
*/ */
public function extendManiaPlanetWarmup($seconds) { public function extendManiaPlanetWarmup($seconds) {
$this->maniaControl->getClient()->triggerModeScriptEvent('Maniaplanet.WarmUp.Extend', array(strval($seconds * 1000))); $this->triggerModeScriptEvent('Maniaplanet.WarmUp.Extend', array(strval($seconds * 1000)));
} }
/** /**
@ -295,7 +297,7 @@ class ModeScriptEventManager implements UsageInformationAble {
* @api * @api
*/ */
public function stopManiaPlanetWarmup() { public function stopManiaPlanetWarmup() {
$this->maniaControl->getClient()->triggerModeScriptEvent('Maniaplanet.WarmUp.Stop'); $this->triggerModeScriptEvent('Maniaplanet.WarmUp.Stop');
} }
/** /**
@ -304,7 +306,7 @@ class ModeScriptEventManager implements UsageInformationAble {
* @param int $time Timer before the end of the warmup when all players are ready. Use a negative value to prevent the warmup from ending even if all players are ready. * @param int $time Timer before the end of the warmup when all players are ready. Use a negative value to prevent the warmup from ending even if all players are ready.
*/ */
public function blockEndWarmUp($time = -1) { public function blockEndWarmUp($time = -1) {
$this->maniaControl->getClient()->triggerModeScriptEvent('Maniaplanet.WarmUp.BlockEndWarmUp', array("True", strval($time))); $this->triggerModeScriptEvent('Maniaplanet.WarmUp.BlockEndWarmUp', array("True", strval($time)));
} }
/** /**
@ -313,7 +315,7 @@ class ModeScriptEventManager implements UsageInformationAble {
* @param int $time Timer before the end of the warmup when all players are ready. Use a negative value to prevent the warmup from ending even if all players are ready. * @param int $time Timer before the end of the warmup when all players are ready. Use a negative value to prevent the warmup from ending even if all players are ready.
*/ */
public function unBlockEndWarmUp($time = -1) { public function unBlockEndWarmUp($time = -1) {
$this->maniaControl->getClient()->triggerModeScriptEvent('Maniaplanet.WarmUp.BlockEndWarmUp', array("False", strval($time))); $this->triggerModeScriptEvent('Maniaplanet.WarmUp.BlockEndWarmUp', array("False", strval($time)));
} }
/** /**
@ -324,7 +326,7 @@ class ModeScriptEventManager implements UsageInformationAble {
*/ */
public function getWarmupStatus() { public function getWarmupStatus() {
$responseId = $this->generateResponseId(); $responseId = $this->generateResponseId();
$this->maniaControl->getClient()->triggerModeScriptEvent('Maniaplanet.WarmUp.GetStatus', array($responseId)); $this->triggerModeScriptEvent('Maniaplanet.WarmUp.GetStatus', array($responseId));
return new InvokeScriptCallback($this->maniaControl, Callbacks::MP_WARMUP_STATUS, $responseId); return new InvokeScriptCallback($this->maniaControl, Callbacks::MP_WARMUP_STATUS, $responseId);
} }
@ -336,7 +338,7 @@ class ModeScriptEventManager implements UsageInformationAble {
*/ */
public function getPauseStatus() { public function getPauseStatus() {
$responseId = $this->generateResponseId(); $responseId = $this->generateResponseId();
$this->maniaControl->getClient()->triggerModeScriptEvent('Maniaplanet.Pause.GetStatus', array($responseId)); $this->triggerModeScriptEvent('Maniaplanet.Pause.GetStatus', array($responseId));
return new InvokeScriptCallback($this->maniaControl, Callbacks::MP_PAUSE_STATUS, $responseId); return new InvokeScriptCallback($this->maniaControl, Callbacks::MP_PAUSE_STATUS, $responseId);
} }
@ -348,7 +350,7 @@ class ModeScriptEventManager implements UsageInformationAble {
*/ */
public function startPause() { public function startPause() {
$responseId = $this->generateResponseId(); $responseId = $this->generateResponseId();
$this->maniaControl->getClient()->triggerModeScriptEvent('Maniaplanet.Pause.SetActive', array("True", $responseId)); $this->triggerModeScriptEvent('Maniaplanet.Pause.SetActive', array("True", $responseId));
return new InvokeScriptCallback($this->maniaControl, Callbacks::MP_PAUSE_STATUS, $responseId); return new InvokeScriptCallback($this->maniaControl, Callbacks::MP_PAUSE_STATUS, $responseId);
} }
@ -360,7 +362,7 @@ class ModeScriptEventManager implements UsageInformationAble {
*/ */
public function endPause() { public function endPause() {
$responseId = $this->generateResponseId(); $responseId = $this->generateResponseId();
$this->maniaControl->getClient()->triggerModeScriptEvent('Maniaplanet.Pause.SetActive', array("False", $responseId)); $this->triggerModeScriptEvent('Maniaplanet.Pause.SetActive', array("False", $responseId));
return new InvokeScriptCallback($this->maniaControl, Callbacks::MP_PAUSE_STATUS, $responseId); return new InvokeScriptCallback($this->maniaControl, Callbacks::MP_PAUSE_STATUS, $responseId);
} }
@ -372,7 +374,7 @@ class ModeScriptEventManager implements UsageInformationAble {
*/ */
public function isTeamMode() { public function isTeamMode() {
$responseId = $this->generateResponseId(); $responseId = $this->generateResponseId();
$this->maniaControl->getClient()->triggerModeScriptEvent('Maniaplanet.Mode.GetUseTeams', array($responseId)); $this->triggerModeScriptEvent('Maniaplanet.Mode.GetUseTeams', array($responseId));
return new InvokeScriptCallback($this->maniaControl, Callbacks::MP_USES_TEAMMODE, $responseId); return new InvokeScriptCallback($this->maniaControl, Callbacks::MP_USES_TEAMMODE, $responseId);
} }
@ -385,7 +387,7 @@ class ModeScriptEventManager implements UsageInformationAble {
* @param $z * @param $z
*/ */
public function setComboTimerPosition($x, $y, $z) { public function setComboTimerPosition($x, $y, $z) {
$this->maniaControl->getClient()->triggerModeScriptEvent('Shootmania.Combo.SetTimersPosition', array(strval(floatval($x)), strval(floatval($y)), strval(floatval($z)))); $this->triggerModeScriptEvent('Shootmania.Combo.SetTimersPosition', array(strval(floatval($x)), strval(floatval($y)), strval(floatval($z))));
} }
/** /**
@ -397,7 +399,7 @@ class ModeScriptEventManager implements UsageInformationAble {
* @param $z * @param $z
*/ */
public function setSiegeProgressionUIPosition($x, $y, $z) { public function setSiegeProgressionUIPosition($x, $y, $z) {
$this->maniaControl->getClient()->triggerModeScriptEvent('Shootmania.Siege.SetProgressionUIPosition', array(strval(floatval($x)), strval(floatval($y)), strval(floatval($z)))); $this->triggerModeScriptEvent('Shootmania.Siege.SetProgressionUIPosition', array(strval(floatval($x)), strval(floatval($y)), strval(floatval($z))));
} }
@ -409,7 +411,7 @@ class ModeScriptEventManager implements UsageInformationAble {
*/ */
public function getShootmaniaScores() { public function getShootmaniaScores() {
$responseId = $this->generateResponseId(); $responseId = $this->generateResponseId();
$this->maniaControl->getClient()->triggerModeScriptEvent('Shootmania.GetScores', array($responseId)); $this->triggerModeScriptEvent('Shootmania.GetScores', array($responseId));
return new InvokeScriptCallback($this->maniaControl, Callbacks::SM_SCORES, $responseId); return new InvokeScriptCallback($this->maniaControl, Callbacks::SM_SCORES, $responseId);
} }
@ -421,7 +423,7 @@ class ModeScriptEventManager implements UsageInformationAble {
*/ */
public function getShootmaniaUIProperties() { public function getShootmaniaUIProperties() {
$responseId = $this->generateResponseId(); $responseId = $this->generateResponseId();
$this->maniaControl->getClient()->triggerModeScriptEvent('Shootmania.UI.GetProperties', array($responseId)); $this->triggerModeScriptEvent('Shootmania.UI.GetProperties', array($responseId));
return new InvokeScriptCallback($this->maniaControl, Callbacks::SM_UIPROPERTIES, $responseId); return new InvokeScriptCallback($this->maniaControl, Callbacks::SM_UIPROPERTIES, $responseId);
} }
@ -433,7 +435,7 @@ class ModeScriptEventManager implements UsageInformationAble {
* @return \ManiaControl\Script\InvokeScriptCallback You can directly set a callable on it via setCallable() to get the updated Properties * @return \ManiaControl\Script\InvokeScriptCallback You can directly set a callable on it via setCallable() to get the updated Properties
*/ */
public function setShootmaniaUIProperties($properties) { public function setShootmaniaUIProperties($properties) {
$this->maniaControl->getClient()->triggerModeScriptEvent('Shootmania.UI.SetProperties', array($properties)); $this->triggerModeScriptEvent('Shootmania.UI.SetProperties', array($properties));
return $this->getShootmaniaUIProperties(); return $this->getShootmaniaUIProperties();
} }
@ -445,7 +447,7 @@ class ModeScriptEventManager implements UsageInformationAble {
*/ */
public function getTrackmaniaScores() { public function getTrackmaniaScores() {
$responseId = $this->generateResponseId(); $responseId = $this->generateResponseId();
$this->maniaControl->getClient()->triggerModeScriptEvent('Trackmania.GetScores', array($responseId)); $this->triggerModeScriptEvent('Trackmania.GetScores', array($responseId));
return new InvokeScriptCallback($this->maniaControl, Callbacks::TM_SCORES, $responseId); return new InvokeScriptCallback($this->maniaControl, Callbacks::TM_SCORES, $responseId);
} }
@ -457,7 +459,7 @@ class ModeScriptEventManager implements UsageInformationAble {
*/ */
public function getTrackmaniaPointsRepartition() { public function getTrackmaniaPointsRepartition() {
$responseId = $this->generateResponseId(); $responseId = $this->generateResponseId();
$this->maniaControl->getClient()->triggerModeScriptEvent('Trackmania.GetPointsRepartition', array($responseId)); $this->triggerModeScriptEvent('Trackmania.GetPointsRepartition', array($responseId));
return new InvokeScriptCallback($this->maniaControl, Callbacks::TM_POINTSREPARTITION, $responseId); return new InvokeScriptCallback($this->maniaControl, Callbacks::TM_POINTSREPARTITION, $responseId);
} }
@ -468,7 +470,7 @@ class ModeScriptEventManager implements UsageInformationAble {
* @param array String Array of Points * @param array String Array of Points
*/ */
public function setTrackmaniaPointsRepartition($pointArray) { public function setTrackmaniaPointsRepartition($pointArray) {
$this->maniaControl->getClient()->triggerModeScriptEvent('Trackmania.SetPointsRepartition', $pointArray); $this->triggerModeScriptEvent('Trackmania.SetPointsRepartition', $pointArray);
} }
/** /**
@ -479,7 +481,7 @@ class ModeScriptEventManager implements UsageInformationAble {
*/ */
public function getTrackmaniaUIProperties() { public function getTrackmaniaUIProperties() {
$responseId = $this->generateResponseId(); $responseId = $this->generateResponseId();
$this->maniaControl->getClient()->triggerModeScriptEvent('Trackmania.UI.GetProperties', array($responseId)); $this->triggerModeScriptEvent('Trackmania.UI.GetProperties', array($responseId));
return new InvokeScriptCallback($this->maniaControl, Callbacks::TM_UIPROPERTIES, $responseId); return new InvokeScriptCallback($this->maniaControl, Callbacks::TM_UIPROPERTIES, $responseId);
} }
@ -491,7 +493,7 @@ class ModeScriptEventManager implements UsageInformationAble {
* @return \ManiaControl\Script\InvokeScriptCallback You can directly set a callable on it via setCallable() to get the updated Properties * @return \ManiaControl\Script\InvokeScriptCallback You can directly set a callable on it via setCallable() to get the updated Properties
*/ */
public function setTrackmaniaUIProperties($properties) { public function setTrackmaniaUIProperties($properties) {
$this->maniaControl->getClient()->triggerModeScriptEvent('Trackmania.UI.SetProperties', array($properties)); $this->triggerModeScriptEvent('Trackmania.UI.SetProperties', array($properties));
return $this->getTrackmaniaUIProperties(); return $this->getTrackmaniaUIProperties();
} }
@ -501,7 +503,7 @@ class ModeScriptEventManager implements UsageInformationAble {
* @api * @api
*/ */
public function stopTrackmaniaWarmup() { public function stopTrackmaniaWarmup() {
$this->maniaControl->getClient()->triggerModeScriptEvent('Trackmania.WarmUp.Stop'); $this->triggerModeScriptEvent('Trackmania.WarmUp.Stop');
} }
/** /**
@ -510,7 +512,7 @@ class ModeScriptEventManager implements UsageInformationAble {
* @api * @api
*/ */
public function stopTrackmaniaRound() { public function stopTrackmaniaRound() {
$this->maniaControl->getClient()->triggerModeScriptEvent('Trackmania.WarmUp.StopRound'); $this->triggerModeScriptEvent('Trackmania.WarmUp.StopRound');
} }
@ -520,7 +522,25 @@ class ModeScriptEventManager implements UsageInformationAble {
* @api * @api
*/ */
public function forceTrackmaniaRoundEnd() { public function forceTrackmaniaRoundEnd() {
$this->maniaControl->getClient()->triggerModeScriptEvent('Trackmania.ForceEndRound'); $this->triggerModeScriptEvent('Trackmania.ForceEndRound');
}
/**
* Triggers a ModeScript Event
*
* @api
* @param $eventName
* @param string $data
*/
public function triggerModeScriptEvent($eventName, $data = '') {
try {
$this->maniaControl->getClient()->triggerModeScriptEvent($eventName, $data);
} catch (GameModeException $e) {
if ($e->getMessage() != 'Not in script mode.') {
throw $e;
}
Logger::logWarning($eventName . " can't be triggered because you are not in Scriptmode, start your server in Scriptmode!");
}
} }
/** /**

View File

@ -421,9 +421,10 @@ class PluginUpdateManager implements CallbackListener, CommandListener, TimerLis
$response = WebReader::getUrl($url); $response = WebReader::getUrl($url);
$dataJson = $response->getContent(); $dataJson = $response->getContent();
$pluginVersion = json_decode($dataJson); $pluginVersion = json_decode($dataJson);
if (!$pluginVersion) { if (!$pluginVersion || !property_exists($pluginVersion, 'id')) {
return false; return false;
} }
$pluginUpdateData = new PluginUpdateData($pluginVersion); $pluginUpdateData = new PluginUpdateData($pluginVersion);
$version = $pluginClass::getVersion(); $version = $pluginClass::getVersion();