diff --git a/application/core/Callbacks/CallbackManager.php b/application/core/Callbacks/CallbackManager.php index b72e6f37..b046e125 100644 --- a/application/core/Callbacks/CallbackManager.php +++ b/application/core/Callbacks/CallbackManager.php @@ -49,7 +49,8 @@ class CallbackManager { * Public Properties */ public $shootManiaCallbacks = null; - + public $libXmlRpcCallbacks = null; + /* * Private Properties */ @@ -66,6 +67,7 @@ class CallbackManager { $this->maniaControl = $maniaControl; $this->shootManiaCallbacks = new ShootManiaCallbacks($maniaControl, $this); + $this->libXmlRpcCallbacks = new LibXmlRpcCallbackManager($maniaControl, $this); } /** @@ -249,5 +251,6 @@ class CallbackManager { $scriptCallbackData = $callback[1]; $scriptCallbackName = $scriptCallbackData[0]; $this->triggerScriptCallback($scriptCallbackName, $scriptCallbackData); + $this->triggerCallback(Callbacks::ScriptCallback, $scriptCallbackName, $scriptCallbackData[1]); } } diff --git a/application/core/Callbacks/Callbacks.php b/application/core/Callbacks/Callbacks.php new file mode 100644 index 00000000..f3e2e7fe --- /dev/null +++ b/application/core/Callbacks/Callbacks.php @@ -0,0 +1,19 @@ +maniaControl = $maniaControl; + $callbackManager->registerCallbackListener(Callbacks::ScriptCallback, $this, 'handleScriptCallbacks'); + } + + public function handleScriptCallbacks($name, $data){ + switch($name){ + case 'LibXmlRpc_BeginMatch': + $this->maniaControl->callbackManager->triggerCallback(Callbacks::LibXmlRpc_BeginMatch, $data[0]); + break; + case 'LibXmlRpc_LoadingMap': + $this->maniaControl->callbackManager->triggerCallback(Callbacks::LibXmlRpc_LoadingMap, $data[0]); + break; + case 'LibXmlRpc_BeginMap': + $this->maniaControl->callbackManager->triggerCallback(Callbacks::LibXmlRpc_BeginMap, $data[0]); + break; + + + } + var_dump($name); + var_dump($data); + } + + + +} \ No newline at end of file