callback improvements, new structures for shootmania callbacks

This commit is contained in:
kremsy
2014-10-10 16:19:46 +02:00
parent 1feeb768b2
commit 27efcabb6e
6 changed files with 120 additions and 6 deletions

View File

@ -2,6 +2,9 @@
namespace ManiaControl\Callbacks;
use ManiaControl\Callbacks\Structures\ArmorEmptyStructure;
use ManiaControl\Callbacks\Structures\CaptureStructure;
use ManiaControl\Callbacks\Structures\NearMissStructure;
use ManiaControl\Callbacks\Structures\PlayerHitStructure;
use ManiaControl\ManiaControl;
@ -115,13 +118,26 @@ class LibXmlRpcCallbacks implements CallbackListener {
case 'LibXmlRpc_OnStunt':
$this->maniaControl->getCallbackManager()->triggerCallback(Callbacks::ONSTUNT, $data);
break;
case 'LibXmlRpc_OnShoot': //TODO testing
case 'LibXmlRpc_OnShoot':
$player = $this->maniaControl->getPlayerManager()->getPlayer($data[0]);
$this->maniaControl->getCallbackManager()->triggerCallback(Callbacks::ONSHOOT, $player, $data[1]);
break;
case 'LibXmlRpc_OnHit':
$this->maniaControl->getCallbackManager()->triggerCallback(Callbacks::ONHIT, new PlayerHitStructure($this->maniaControl, $data));
break;
case 'LibXmlRpc_OnNearMiss':
$this->maniaControl->getCallbackManager()->triggerCallback(Callbacks::ONHIT, new NearMissStructure($this->maniaControl, $data));
break;
case 'LibXmlRpc_OnArmorEmpty':
$this->maniaControl->getCallbackManager()->triggerCallback(Callbacks::ONARMOREMPTY, new ArmorEmptyStructure($this->maniaControl, $data));
break;
case 'LibXmlRpc_OnCapture':
$this->maniaControl->getCallbackManager()->triggerCallback(Callbacks::ONARMOREMPTY, new CaptureStructure($this->maniaControl, $data));
break;
case 'LibXmlRpc_OnPlayerRequestRespawn':
$player = $this->maniaControl->getPlayerManager()->getPlayer($data[0]);
$this->maniaControl->getCallbackManager()->triggerCallback(Callbacks::ONARMOREMPTY, $player);
break;
}
}