added dumpable interface, implemented all ManiaPlanet Callbacks
This commit is contained in:
@ -35,15 +35,15 @@ interface Callbacks {
|
||||
const MP_STARTSERVEREND = 'Callbacks.ManiaPlanetStartServerEnd';
|
||||
const MP_STARTMATCHSTART = 'Callbacks.ManiaPlanetStartMatchStart';
|
||||
const MP_STARTMATCHEND = 'Callbacks.ManiaPlanetStartMatchEnd';
|
||||
const MP_STARTMAPSTART = 'Callbacks.ManiaPlanetStartMapStart';
|
||||
const MP_STARTMAPEND = 'Callbacks.ManiaPlanetStartMapEnd';
|
||||
//const MP_STARTMAPSTART = 'Callbacks.ManiaPlanetStartMapStart';
|
||||
//const MP_STARTMAPEND = 'Callbacks.ManiaPlanetStartMapEnd';
|
||||
const MP_STARTROUNDSTART = 'Callbacks.ManiaPlanetStartRoundStart';
|
||||
const MP_STARTROUNDEND = 'Callbacks.ManiaPlanetStartRoundEnd';
|
||||
const MP_STARTTURNSTART = 'Callbacks.ManiaPlanetStartTurnStart';
|
||||
const MP_STARTTURNEND = 'Callbacks.ManiaPlanetStartTurnEnd';
|
||||
const MP_STARTPLAYLOOPSTART = 'Callbacks.ManiaPlanetStartPlayLoopStart';
|
||||
const MP_STARTPLAYLOOPEND = 'Callbacks.ManiaPlanetStartPlayLoopEnd';
|
||||
const MP_ENDTTURNSTART = 'Callbacks.ManiaPlanetEndTurnStart';
|
||||
const MP_ENDTURNSTART = 'Callbacks.ManiaPlanetEndTurnStart';
|
||||
const MP_ENDTURNEND = 'Callbacks.ManiaPlanetEndTurnEnd';
|
||||
const MP_ENDROUNDSTART = 'Callbacks.ManiaPlanetEndRoundStart';
|
||||
const MP_ENDROUNDEND = 'Callbacks.ManiaPlanetEndRoundEnd';
|
||||
@ -60,13 +60,16 @@ interface Callbacks {
|
||||
const MP_PODIUMSTART = 'Callbacks.ManiaPlanetPodiumStart';
|
||||
const MP_PODIUMEND = 'Callbacks.ManiaPlanetPodiumEnd';
|
||||
|
||||
//ManiaControl Callbacks
|
||||
/** BeginMap Callback: Map */
|
||||
const BEGINMAP = 'Callbacks.BeginMap';
|
||||
|
||||
//OLD Callbacks
|
||||
/** BeginMatch Callback: MatchNumber */
|
||||
const BEGINMATCH = 'Callbacks.BeginMatch';
|
||||
/** LoadingMap Callback: MapNumber */
|
||||
const LOADINGMAP = 'Callbacks.LoadingMap';
|
||||
/** BeginMap Callback: Map */
|
||||
const BEGINMAP = 'Callbacks.BeginMap';
|
||||
|
||||
/** BeginSubMatch Callback: SubmatchNumber */
|
||||
const BEGINSUBMATCH = 'Callbacks.BeginSubmatch';
|
||||
/** BeginRound Callback: RoundNumber */
|
||||
|
@ -60,6 +60,88 @@ class LibXmlRpcCallbacks implements CallbackListener {
|
||||
case 'ManiaPlanet.StartMatch_Start':
|
||||
$this->maniaControl->getCallbackManager()->triggerCallback(Callbacks::MP_STARTMATCHSTART, new StartEndStructure($this->maniaControl, $data));
|
||||
break;
|
||||
case 'ManiaPlanet.StartMatch_End':
|
||||
$this->maniaControl->getCallbackManager()->triggerCallback(Callbacks::MP_STARTMATCHEND, new StartEndStructure($this->maniaControl, $data));
|
||||
break;
|
||||
case 'Maniaplanet.StartMap_Start': //Use the MapManager Callback
|
||||
//No use for this Implementation right now (as the MapManager Callback should be used
|
||||
break;
|
||||
case 'Maniaplanet.StartMap_End': //Use the MapManager Callback
|
||||
$jsonData = json_decode($data[0]);
|
||||
$this->maniaControl->getMapManager()->handleScriptBeginMap($jsonData->map->uid, 'False');
|
||||
//TODO Test if json is correctly parsed
|
||||
break;
|
||||
case 'ManiaPlanet.StartRound_Start':
|
||||
$this->maniaControl->getCallbackManager()->triggerCallback(Callbacks::MP_STARTROUNDSTART, new StartEndStructure($this->maniaControl, $data));
|
||||
break;
|
||||
case 'ManiaPlanet.StartRound_End':
|
||||
$this->maniaControl->getCallbackManager()->triggerCallback(Callbacks::MP_STARTROUNDEND, new StartEndStructure($this->maniaControl, $data));
|
||||
break;
|
||||
case 'ManiaPlanet.StartTurn_Start':
|
||||
$this->maniaControl->getCallbackManager()->triggerCallback(Callbacks::MP_STARTTURNSTART, new StartEndStructure($this->maniaControl, $data));
|
||||
break;
|
||||
case 'ManiaPlanet.StartTurn_End':
|
||||
$this->maniaControl->getCallbackManager()->triggerCallback(Callbacks::MP_STARTTURNEND, new StartEndStructure($this->maniaControl, $data));
|
||||
break;
|
||||
case 'ManiaPlanet.StartPlayLoop_Start':
|
||||
$this->maniaControl->getCallbackManager()->triggerCallback(Callbacks::MP_STARTPLAYLOOPSTART, new StartEndStructure($this->maniaControl, $data));
|
||||
break;
|
||||
case 'ManiaPlanet.StartPlayLoop_End':
|
||||
$this->maniaControl->getCallbackManager()->triggerCallback(Callbacks::MP_STARTPLAYLOOPEND, new StartEndStructure($this->maniaControl, $data));
|
||||
break;
|
||||
case 'ManiaPlanet.EndTurn_Start':
|
||||
$this->maniaControl->getCallbackManager()->triggerCallback(Callbacks::MP_ENDTURNSTART, new StartEndStructure($this->maniaControl, $data));
|
||||
break;
|
||||
case 'ManiaPlanet.EndTurn_End':
|
||||
$this->maniaControl->getCallbackManager()->triggerCallback(Callbacks::MP_ENDTURNEND, new StartEndStructure($this->maniaControl, $data));
|
||||
break;
|
||||
case 'ManiaPlanet.EndRound_Start':
|
||||
$this->maniaControl->getCallbackManager()->triggerCallback(Callbacks::MP_ENDROUNDSTART, new StartEndStructure($this->maniaControl, $data));
|
||||
break;
|
||||
case 'ManiaPlanet.EndRound_End':
|
||||
$this->maniaControl->getCallbackManager()->triggerCallback(Callbacks::MP_ENDROUNDEND, new StartEndStructure($this->maniaControl, $data));
|
||||
break;
|
||||
case 'Maniaplanet.EndMap_Start':
|
||||
//no need for this implementation, callback handled by Map Manager
|
||||
break;
|
||||
case 'Maniaplanet.EndMap_End': //Use the MapManager Callback
|
||||
$this->maniaControl->getMapManager()->handleScriptEndMap(); //Verify if better here or at EndMap_End
|
||||
break;
|
||||
case 'ManiaPlanet.EndMatch_Start':
|
||||
$this->maniaControl->getCallbackManager()->triggerCallback(Callbacks::MP_ENDMATCHSTART, new StartEndStructure($this->maniaControl, $data));
|
||||
break;
|
||||
case 'ManiaPlanet.EndMatch_End':
|
||||
$this->maniaControl->getCallbackManager()->triggerCallback(Callbacks::MP_ENDMATCHEND, new StartEndStructure($this->maniaControl, $data));
|
||||
break;
|
||||
case 'Maniaplanet.EndServer_Start':
|
||||
$this->maniaControl->getCallbackManager()->triggerCallback(Callbacks::MP_ENDSERVERSTART, new StartServerStructure($this->maniaControl, $data));
|
||||
break;
|
||||
case 'Maniaplanet.EndServer_End':
|
||||
$this->maniaControl->getCallbackManager()->triggerCallback(Callbacks::MP_ENDSERVEREND, new StartServerStructure($this->maniaControl, $data));
|
||||
break;
|
||||
case 'Maniaplanet.LoadingMap_Start':
|
||||
$this->maniaControl->getCallbackManager()->triggerCallback(Callbacks::MP_LOADINGMAPSTART);
|
||||
break;
|
||||
case 'Maniaplanet.LoadingMap_End':
|
||||
$jsonData = json_decode($data[0]);
|
||||
$map = $this->maniaControl->getMapManager()->getMapByUid($jsonData->map->uid); //Verify Json
|
||||
$this->maniaControl->getCallbackManager()->triggerCallback(Callbacks::MP_LOADINGMAPEND, $map);
|
||||
break;
|
||||
case 'Maniaplanet.UnloadingMap_Start':
|
||||
$jsonData = json_decode($data[0]);
|
||||
$map = $this->maniaControl->getMapManager()->getMapByUid($jsonData->map->uid); //Verify Json
|
||||
$this->maniaControl->getCallbackManager()->triggerCallback(Callbacks::MP_LOADINGMAPSTART, $map);
|
||||
break;
|
||||
case 'Maniaplanet.UnloadingMap_End':
|
||||
$this->maniaControl->getCallbackManager()->triggerCallback(Callbacks::MP_LOADINGMAPEND);
|
||||
break;
|
||||
case 'Maniaplanet.Podium_Start':
|
||||
$this->maniaControl->getCallbackManager()->triggerCallback(Callbacks::MP_PODIUMSTART);
|
||||
break;
|
||||
case 'Maniaplanet.Podium_End':
|
||||
$this->maniaControl->getCallbackManager()->triggerCallback(Callbacks::MP_PODIUMEND);
|
||||
break;
|
||||
|
||||
//OLD Callbacks
|
||||
case 'LibXmlRpc_BeginMatch':
|
||||
$this->maniaControl->getCallbackManager()->triggerCallback(Callbacks::BEGINMATCH, $data[0]);
|
||||
|
@ -3,6 +3,7 @@
|
||||
namespace ManiaControl\Callbacks\Structures;
|
||||
|
||||
|
||||
use ManiaControl\General\Dumpable;
|
||||
use ManiaControl\ManiaControl;
|
||||
|
||||
/**
|
||||
@ -12,7 +13,7 @@ use ManiaControl\ManiaControl;
|
||||
* @copyright 2014-2017 ManiaControl Team
|
||||
* @license http://www.gnu.org/licenses/ GNU General Public License, Version 3
|
||||
*/
|
||||
abstract class BaseStructure {
|
||||
abstract class BaseStructure implements Dumpable {
|
||||
/** @var ManiaControl $maniaControl */
|
||||
protected $maniaControl;
|
||||
private $plainJsonObject;
|
||||
|
Reference in New Issue
Block a user