refactor codestyle (chaining)
This commit is contained in:
@ -52,28 +52,23 @@ class SimpleStatsList implements ManialinkPageAnswerListener, CallbackListener,
|
||||
$this->maniaControl = $maniaControl;
|
||||
|
||||
// Callbacks
|
||||
$this->maniaControl->getCallbackManager()
|
||||
->registerCallbackListener(CallbackManager::CB_MP_PLAYERMANIALINKPAGEANSWER, $this, 'handleManialinkPageAnswer');
|
||||
$this->maniaControl->getCallbackManager()
|
||||
->registerCallbackListener(Callbacks::ONINIT, $this, 'handleOnInit');
|
||||
$this->maniaControl->getCallbackManager()->registerCallbackListener(CallbackManager::CB_MP_PLAYERMANIALINKPAGEANSWER, $this, 'handleManialinkPageAnswer');
|
||||
$this->maniaControl->getCallbackManager()->registerCallbackListener(Callbacks::ONINIT, $this, 'handleOnInit');
|
||||
}
|
||||
|
||||
/**
|
||||
* Add the menu entry
|
||||
*/
|
||||
public function handleOnInit() {
|
||||
$this->maniaControl->getCommandManager()
|
||||
->registerCommandListener('stats', $this, 'command_ShowStatsList', false, 'Shows statistics.');
|
||||
$this->maniaControl->getCommandManager()->registerCommandListener('stats', $this, 'command_ShowStatsList', false, 'Shows statistics.');
|
||||
|
||||
// Action Open StatsList
|
||||
$this->maniaControl->getManialinkManager()
|
||||
->registerManialinkPageAnswerListener(self::ACTION_OPEN_STATSLIST, $this, 'command_ShowStatsList');
|
||||
$this->maniaControl->getManialinkManager()->registerManialinkPageAnswerListener(self::ACTION_OPEN_STATSLIST, $this, 'command_ShowStatsList');
|
||||
|
||||
$itemQuad = new Quad_UIConstruction_Buttons();
|
||||
$itemQuad->setSubStyle($itemQuad::SUBSTYLE_Stats);
|
||||
$itemQuad->setAction(self::ACTION_OPEN_STATSLIST);
|
||||
$this->maniaControl->getActionsMenu()
|
||||
->addMenuItem($itemQuad, true, 14, 'Open Statistics');
|
||||
$this->maniaControl->getActionsMenu()->addMenuItem($itemQuad, true, 14, 'Open Statistics');
|
||||
|
||||
//TODO settings if a stat get shown
|
||||
$this->registerStat(PlayerManager::STAT_SERVERTIME, 10, "ST", 20, StatisticManager::STAT_TYPE_TIME);
|
||||
@ -124,15 +119,9 @@ class SimpleStatsList implements ManialinkPageAnswerListener, CallbackListener,
|
||||
* @param string $order
|
||||
*/
|
||||
public function showStatsList(Player $player, $order = PlayerManager::STAT_SERVERTIME) {
|
||||
$height = $this->maniaControl->getManialinkManager()
|
||||
->getStyleManager()
|
||||
->getListWidgetsHeight();
|
||||
$quadStyle = $this->maniaControl->getManialinkManager()
|
||||
->getStyleManager()
|
||||
->getDefaultMainWindowStyle();
|
||||
$quadSubstyle = $this->maniaControl->getManialinkManager()
|
||||
->getStyleManager()
|
||||
->getDefaultMainWindowSubStyle();
|
||||
$height = $this->maniaControl->getManialinkManager()->getStyleManager()->getListWidgetsHeight();
|
||||
$quadStyle = $this->maniaControl->getManialinkManager()->getStyleManager()->getDefaultMainWindowStyle();
|
||||
$quadSubstyle = $this->maniaControl->getManialinkManager()->getStyleManager()->getDefaultMainWindowSubStyle();
|
||||
|
||||
|
||||
$maniaLink = new ManiaLink(ManialinkManager::MAIN_MLID);
|
||||
@ -185,8 +174,7 @@ class SimpleStatsList implements ManialinkPageAnswerListener, CallbackListener,
|
||||
$posX = $xStart + 55;
|
||||
$statRankings = array();
|
||||
foreach ($this->statArray as $key => $stat) {
|
||||
$ranking = $this->maniaControl->getStatisticManager()
|
||||
->getStatsRanking($stat["Name"]);
|
||||
$ranking = $this->maniaControl->getStatisticManager()->getStatsRanking($stat["Name"]);
|
||||
if (!empty($ranking)) {
|
||||
$statRankings[$stat["Name"]] = $ranking;
|
||||
$array[$stat['HeadShortCut']] = $posX;
|
||||
@ -196,8 +184,7 @@ class SimpleStatsList implements ManialinkPageAnswerListener, CallbackListener,
|
||||
}
|
||||
}
|
||||
|
||||
$labels = $this->maniaControl->getManialinkManager()
|
||||
->labelLine($headFrame, $array);
|
||||
$labels = $this->maniaControl->getManialinkManager()->labelLine($headFrame, $array);
|
||||
|
||||
// Description Label
|
||||
$index = 2;
|
||||
@ -225,8 +212,7 @@ class SimpleStatsList implements ManialinkPageAnswerListener, CallbackListener,
|
||||
}
|
||||
|
||||
foreach ($statRankings[$order] as $playerId => $value) {
|
||||
$listPlayer = $this->maniaControl->getPlayerManager()
|
||||
->getPlayerByIndex($playerId);
|
||||
$listPlayer = $this->maniaControl->getPlayerManager()->getPlayerByIndex($playerId);
|
||||
if (!$listPlayer) {
|
||||
continue;
|
||||
}
|
||||
@ -263,8 +249,7 @@ class SimpleStatsList implements ManialinkPageAnswerListener, CallbackListener,
|
||||
}
|
||||
|
||||
$array = array($index => $xStart + 5, $listPlayer->nickname => $xStart + 14);
|
||||
$this->maniaControl->getManialinkManager()
|
||||
->labelLine($playerFrame, $array);
|
||||
$this->maniaControl->getManialinkManager()->labelLine($playerFrame, $array);
|
||||
|
||||
$posX = $xStart + 55;
|
||||
foreach ($displayArray as $key => $array) {
|
||||
@ -294,8 +279,7 @@ class SimpleStatsList implements ManialinkPageAnswerListener, CallbackListener,
|
||||
$posY -= 4;
|
||||
}
|
||||
|
||||
$this->maniaControl->getManialinkManager()
|
||||
->displayWidget($maniaLink, $player, 'SimpleStatsList');
|
||||
$this->maniaControl->getManialinkManager()->displayWidget($maniaLink, $player, 'SimpleStatsList');
|
||||
}
|
||||
|
||||
/**
|
||||
@ -315,8 +299,7 @@ class SimpleStatsList implements ManialinkPageAnswerListener, CallbackListener,
|
||||
switch ($action) {
|
||||
case self::ACTION_SORT_STATS:
|
||||
$playerLogin = $callback[1][1];
|
||||
$player = $this->maniaControl->getPlayerManager()
|
||||
->getPlayer($playerLogin);
|
||||
$player = $this->maniaControl->getPlayerManager()->getPlayer($playerLogin);
|
||||
$this->showStatsList($player, $actionArray[2]);
|
||||
break;
|
||||
}
|
||||
|
@ -68,22 +68,15 @@ class StatisticCollector 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(PlayerManager::CB_PLAYERDISCONNECT, $this, 'onPlayerDisconnect');
|
||||
$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(PlayerManager::CB_PLAYERDISCONNECT, $this, 'onPlayerDisconnect');
|
||||
|
||||
// Settings
|
||||
$this->maniaControl->getSettingManager()
|
||||
->initSetting($this, self::SETTING_COLLECT_STATS_ENABLED, true);
|
||||
$this->maniaControl->getSettingManager()
|
||||
->initSetting($this, self::SETTING_COLLECT_STATS_MINPLAYERS, 4);
|
||||
$this->maniaControl->getSettingManager()
|
||||
->initSetting($this, self::SETTING_ON_SHOOT_PRESTORE, 10);
|
||||
$this->maniaControl->getSettingManager()->initSetting($this, self::SETTING_COLLECT_STATS_ENABLED, true);
|
||||
$this->maniaControl->getSettingManager()->initSetting($this, self::SETTING_COLLECT_STATS_MINPLAYERS, 4);
|
||||
$this->maniaControl->getSettingManager()->initSetting($this, self::SETTING_ON_SHOOT_PRESTORE, 10);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -91,42 +84,24 @@ class StatisticCollector implements CallbackListener {
|
||||
*/
|
||||
public function onInit() {
|
||||
// Define Stats MetaData
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->defineStatMetaData(self::STAT_PLAYTIME, StatisticManager::STAT_TYPE_TIME);
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->defineStatMetaData(self::STAT_MAP_WINS);
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->defineStatMetaData(self::STAT_ON_SHOOT);
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->defineStatMetaData(self::STAT_ON_NEARMISS);
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->defineStatMetaData(self::STAT_ON_CAPTURE);
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->defineStatMetaData(self::STAT_ON_HIT);
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->defineStatMetaData(self::STAT_ON_GOT_HIT);
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->defineStatMetaData(self::STAT_ON_DEATH);
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->defineStatMetaData(self::STAT_ON_PLAYER_REQUEST_RESPAWN);
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->defineStatMetaData(self::STAT_ON_KILL);
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->defineStatMetaData(self::STAT_LASER_HIT);
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->defineStatMetaData(self::STAT_LASER_SHOT);
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->defineStatMetaData(self::STAT_NUCLEUS_HIT);
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->defineStatMetaData(self::STAT_NUCLEUS_SHOT);
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->defineStatMetaData(self::STAT_ROCKET_HIT);
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->defineStatMetaData(self::STAT_ROCKET_SHOT);
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->defineStatMetaData(self::STAT_ARROW_HIT);
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->defineStatMetaData(self::STAT_ARROW_SHOT);
|
||||
$this->maniaControl->getStatisticManager()->defineStatMetaData(self::STAT_PLAYTIME, StatisticManager::STAT_TYPE_TIME);
|
||||
$this->maniaControl->getStatisticManager()->defineStatMetaData(self::STAT_MAP_WINS);
|
||||
$this->maniaControl->getStatisticManager()->defineStatMetaData(self::STAT_ON_SHOOT);
|
||||
$this->maniaControl->getStatisticManager()->defineStatMetaData(self::STAT_ON_NEARMISS);
|
||||
$this->maniaControl->getStatisticManager()->defineStatMetaData(self::STAT_ON_CAPTURE);
|
||||
$this->maniaControl->getStatisticManager()->defineStatMetaData(self::STAT_ON_HIT);
|
||||
$this->maniaControl->getStatisticManager()->defineStatMetaData(self::STAT_ON_GOT_HIT);
|
||||
$this->maniaControl->getStatisticManager()->defineStatMetaData(self::STAT_ON_DEATH);
|
||||
$this->maniaControl->getStatisticManager()->defineStatMetaData(self::STAT_ON_PLAYER_REQUEST_RESPAWN);
|
||||
$this->maniaControl->getStatisticManager()->defineStatMetaData(self::STAT_ON_KILL);
|
||||
$this->maniaControl->getStatisticManager()->defineStatMetaData(self::STAT_LASER_HIT);
|
||||
$this->maniaControl->getStatisticManager()->defineStatMetaData(self::STAT_LASER_SHOT);
|
||||
$this->maniaControl->getStatisticManager()->defineStatMetaData(self::STAT_NUCLEUS_HIT);
|
||||
$this->maniaControl->getStatisticManager()->defineStatMetaData(self::STAT_NUCLEUS_SHOT);
|
||||
$this->maniaControl->getStatisticManager()->defineStatMetaData(self::STAT_ROCKET_HIT);
|
||||
$this->maniaControl->getStatisticManager()->defineStatMetaData(self::STAT_ROCKET_SHOT);
|
||||
$this->maniaControl->getStatisticManager()->defineStatMetaData(self::STAT_ARROW_HIT);
|
||||
$this->maniaControl->getStatisticManager()->defineStatMetaData(self::STAT_ARROW_SHOT);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -136,22 +111,16 @@ class StatisticCollector implements CallbackListener {
|
||||
*/
|
||||
public function onEndMap(array $callback) {
|
||||
//Check for Minimum PlayerCount
|
||||
if ($this->maniaControl->getPlayerManager()
|
||||
->getPlayerCount() < $this->maniaControl->getSettingManager()
|
||||
->getSettingValue($this, self::SETTING_COLLECT_STATS_MINPLAYERS)
|
||||
if ($this->maniaControl->getPlayerManager()->getPlayerCount() < $this->maniaControl->getSettingManager()->getSettingValue($this, self::SETTING_COLLECT_STATS_MINPLAYERS)
|
||||
) {
|
||||
return;
|
||||
}
|
||||
|
||||
$leaders = $this->maniaControl->getServer()
|
||||
->getRankingManager()
|
||||
->getLeaders();
|
||||
$leaders = $this->maniaControl->getServer()->getRankingManager()->getLeaders();
|
||||
|
||||
foreach ($leaders as $leaderLogin) {
|
||||
$leader = $this->maniaControl->getPlayerManager()
|
||||
->getPlayer($leaderLogin);
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->incrementStat(self::STAT_MAP_WINS, $leader);
|
||||
$leader = $this->maniaControl->getPlayerManager()->getPlayer($leaderLogin);
|
||||
$this->maniaControl->getStatisticManager()->incrementStat(self::STAT_MAP_WINS, $leader);
|
||||
}
|
||||
}
|
||||
|
||||
@ -162,8 +131,7 @@ class StatisticCollector implements CallbackListener {
|
||||
*/
|
||||
public function onPlayerDisconnect(Player $player) {
|
||||
// Check if Stat Collecting is enabled
|
||||
if (!$this->maniaControl->getSettingManager()
|
||||
->getSettingValue($this, self::SETTING_COLLECT_STATS_ENABLED)
|
||||
if (!$this->maniaControl->getSettingManager()->getSettingValue($this, self::SETTING_COLLECT_STATS_ENABLED)
|
||||
) {
|
||||
return;
|
||||
}
|
||||
@ -171,8 +139,7 @@ class StatisticCollector implements CallbackListener {
|
||||
// Insert Data into Database, and destroy player
|
||||
if (isset($this->onShootArray[$player->login])) {
|
||||
if ($this->onShootArray[$player->login] > 0) {
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->insertStat(self::STAT_ON_SHOOT, $player, $this->maniaControl->getServer()->index, $this->onShootArray[$player->login]);
|
||||
$this->maniaControl->getStatisticManager()->insertStat(self::STAT_ON_SHOOT, $player, $this->maniaControl->getServer()->index, $this->onShootArray[$player->login]);
|
||||
}
|
||||
unset($this->onShootArray[$player->login]);
|
||||
}
|
||||
@ -186,16 +153,13 @@ class StatisticCollector implements CallbackListener {
|
||||
public function handleCallbacks(array $callback) {
|
||||
//TODO survivals
|
||||
// Check if Stat Collecting is enabled
|
||||
if (!$this->maniaControl->getSettingManager()
|
||||
->getSettingValue($this, self::SETTING_COLLECT_STATS_ENABLED)
|
||||
if (!$this->maniaControl->getSettingManager()->getSettingValue($this, self::SETTING_COLLECT_STATS_ENABLED)
|
||||
) {
|
||||
return;
|
||||
}
|
||||
|
||||
// Check for Minimum PlayerCount
|
||||
if ($this->maniaControl->getPlayerManager()
|
||||
->getPlayerCount() < $this->maniaControl->getSettingManager()
|
||||
->getSettingValue($this, self::SETTING_COLLECT_STATS_MINPLAYERS)
|
||||
if ($this->maniaControl->getPlayerManager()->getPlayerCount() < $this->maniaControl->getSettingManager()->getSettingValue($this, self::SETTING_COLLECT_STATS_MINPLAYERS)
|
||||
) {
|
||||
return;
|
||||
}
|
||||
@ -207,62 +171,47 @@ class StatisticCollector implements CallbackListener {
|
||||
$this->handleOnShoot($callback[1][1][0], $callback[1][1][1]);
|
||||
break;
|
||||
case 'LibXmlRpc_OnHit':
|
||||
$shooter = $this->maniaControl->getPlayerManager()
|
||||
->getPlayer($callback[1][1][0]);
|
||||
$victim = $this->maniaControl->getPlayerManager()
|
||||
->getPlayer($callback[1][1][1]);
|
||||
$shooter = $this->maniaControl->getPlayerManager()->getPlayer($callback[1][1][0]);
|
||||
$victim = $this->maniaControl->getPlayerManager()->getPlayer($callback[1][1][1]);
|
||||
$weapon = $callback[1][1][3];
|
||||
if ($shooter) {
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->incrementStat($this->getWeaponStat(intval($weapon), false), $shooter);
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->incrementStat(self::STAT_ON_HIT, $shooter);
|
||||
$this->maniaControl->getStatisticManager()->incrementStat($this->getWeaponStat(intval($weapon), false), $shooter);
|
||||
$this->maniaControl->getStatisticManager()->incrementStat(self::STAT_ON_HIT, $shooter);
|
||||
}
|
||||
if ($victim) {
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->incrementStat(self::STAT_ON_GOT_HIT, $victim);
|
||||
$this->maniaControl->getStatisticManager()->incrementStat(self::STAT_ON_GOT_HIT, $victim);
|
||||
}
|
||||
break;
|
||||
case 'LibXmlRpc_OnNearMiss':
|
||||
$player = $this->maniaControl->getPlayerManager()
|
||||
->getPlayer($callback[1][1][0]);
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->incrementStat(self::STAT_ON_NEARMISS, $player);
|
||||
$player = $this->maniaControl->getPlayerManager()->getPlayer($callback[1][1][0]);
|
||||
$this->maniaControl->getStatisticManager()->incrementStat(self::STAT_ON_NEARMISS, $player);
|
||||
break;
|
||||
case 'LibXmlRpc_OnCapture':
|
||||
$logins = $callback[1][1][0];
|
||||
$logins = explode(';', $logins);
|
||||
foreach ($logins as $login) {
|
||||
$player = $this->maniaControl->getPlayerManager()
|
||||
->getPlayer($login);
|
||||
$player = $this->maniaControl->getPlayerManager()->getPlayer($login);
|
||||
if (!$player) {
|
||||
continue;
|
||||
}
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->incrementStat(self::STAT_ON_CAPTURE, $player);
|
||||
$this->maniaControl->getStatisticManager()->incrementStat(self::STAT_ON_CAPTURE, $player);
|
||||
}
|
||||
break;
|
||||
case 'LibXmlRpc_OnArmorEmpty':
|
||||
$victim = $this->maniaControl->getPlayerManager()
|
||||
->getPlayer($callback[1][1][1]);
|
||||
$victim = $this->maniaControl->getPlayerManager()->getPlayer($callback[1][1][1]);
|
||||
if (isset($callback[1][1][0])) {
|
||||
$shooter = $this->maniaControl->getPlayerManager()
|
||||
->getPlayer($callback[1][1][0]);
|
||||
$shooter = $this->maniaControl->getPlayerManager()->getPlayer($callback[1][1][0]);
|
||||
if ($shooter) {
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->incrementStat(self::STAT_ON_KILL, $shooter);
|
||||
$this->maniaControl->getStatisticManager()->incrementStat(self::STAT_ON_KILL, $shooter);
|
||||
}
|
||||
}
|
||||
if ($victim) {
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->incrementStat(self::STAT_ON_DEATH, $victim);
|
||||
$this->maniaControl->getStatisticManager()->incrementStat(self::STAT_ON_DEATH, $victim);
|
||||
}
|
||||
break;
|
||||
case 'LibXmlRpc_OnPlayerRequestRespawn':
|
||||
$player = $this->maniaControl->getPlayerManager()
|
||||
->getPlayer($callback[1][1][0]);
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->incrementStat(self::STAT_ON_PLAYER_REQUEST_RESPAWN, $player);
|
||||
$player = $this->maniaControl->getPlayerManager()->getPlayer($callback[1][1][0]);
|
||||
$this->maniaControl->getStatisticManager()->incrementStat(self::STAT_ON_PLAYER_REQUEST_RESPAWN, $player);
|
||||
break;
|
||||
case 'OnShoot':
|
||||
$paramsObject = json_decode($callback[1][1]);
|
||||
@ -273,19 +222,15 @@ class StatisticCollector implements CallbackListener {
|
||||
case 'OnNearMiss':
|
||||
$paramsObject = json_decode($callback[1][1]);
|
||||
if ($paramsObject && isset($paramsObject->Event)) {
|
||||
$player = $this->maniaControl->getPlayerManager()
|
||||
->getPlayer($paramsObject->Event->Shooter->Login);
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->incrementStat(self::STAT_ON_NEARMISS, $player);
|
||||
$player = $this->maniaControl->getPlayerManager()->getPlayer($paramsObject->Event->Shooter->Login);
|
||||
$this->maniaControl->getStatisticManager()->incrementStat(self::STAT_ON_NEARMISS, $player);
|
||||
}
|
||||
break;
|
||||
case 'OnCapture':
|
||||
$paramsObject = json_decode($callback[1][1]);
|
||||
if ($paramsObject && isset($paramsObject->Event)) {
|
||||
$player = $this->maniaControl->getPlayerManager()
|
||||
->getPlayer($paramsObject->Event->Player->Login);
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->incrementStat(self::STAT_ON_CAPTURE, $player);
|
||||
$player = $this->maniaControl->getPlayerManager()->getPlayer($paramsObject->Event->Player->Login);
|
||||
$this->maniaControl->getStatisticManager()->incrementStat(self::STAT_ON_CAPTURE, $player);
|
||||
}
|
||||
break;
|
||||
case 'OnHit':
|
||||
@ -293,21 +238,16 @@ class StatisticCollector implements CallbackListener {
|
||||
if ($paramsObject && isset($paramsObject->Event)) {
|
||||
$weapon = (int)$paramsObject->Event->WeaponNum;
|
||||
if (isset($paramsObject->Event->Shooter)) {
|
||||
$shooter = $this->maniaControl->getPlayerManager()
|
||||
->getPlayer($paramsObject->Event->Shooter->Login);
|
||||
$shooter = $this->maniaControl->getPlayerManager()->getPlayer($paramsObject->Event->Shooter->Login);
|
||||
if ($shooter) {
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->incrementStat($this->getWeaponStat($weapon, false), $shooter);
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->incrementStat(self::STAT_ON_HIT, $shooter);
|
||||
$this->maniaControl->getStatisticManager()->incrementStat($this->getWeaponStat($weapon, false), $shooter);
|
||||
$this->maniaControl->getStatisticManager()->incrementStat(self::STAT_ON_HIT, $shooter);
|
||||
}
|
||||
}
|
||||
if (isset($paramsObject->Event->Victim)) {
|
||||
$victim = $this->maniaControl->getPlayerManager()
|
||||
->getPlayer($paramsObject->Event->Victim->Login);
|
||||
$victim = $this->maniaControl->getPlayerManager()->getPlayer($paramsObject->Event->Victim->Login);
|
||||
if ($victim) {
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->incrementStat(self::STAT_ON_GOT_HIT, $victim);
|
||||
$this->maniaControl->getStatisticManager()->incrementStat(self::STAT_ON_GOT_HIT, $victim);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -315,29 +255,22 @@ class StatisticCollector implements CallbackListener {
|
||||
case 'OnArmorEmpty':
|
||||
$paramsObject = json_decode($callback[1][1]);
|
||||
if ($paramsObject && isset($paramsObject->Event)) {
|
||||
$victim = $this->maniaControl->getPlayerManager()
|
||||
->getPlayer($paramsObject->Event->Victim->Login);
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->incrementStat(self::STAT_ON_DEATH, $victim);
|
||||
$victim = $this->maniaControl->getPlayerManager()->getPlayer($paramsObject->Event->Victim->Login);
|
||||
$this->maniaControl->getStatisticManager()->incrementStat(self::STAT_ON_DEATH, $victim);
|
||||
if (isset($paramsObject->Event->Shooter->Login)) {
|
||||
$shooter = $this->maniaControl->getPlayerManager()
|
||||
->getPlayer($paramsObject->Event->Shooter->Login);
|
||||
$shooter = $this->maniaControl->getPlayerManager()->getPlayer($paramsObject->Event->Shooter->Login);
|
||||
if ($shooter) {
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->incrementStat(self::STAT_ON_KILL, $shooter);
|
||||
$this->maniaControl->getStatisticManager()->incrementStat(self::STAT_ON_KILL, $shooter);
|
||||
}
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->incrementStat(self::STAT_ON_KILL, $shooter);
|
||||
$this->maniaControl->getStatisticManager()->incrementStat(self::STAT_ON_KILL, $shooter);
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 'OnRequestRespawn':
|
||||
$paramsObject = json_decode($callback[1][1]);
|
||||
if ($paramsObject && isset($paramsObject->Event)) {
|
||||
$player = $this->maniaControl->getPlayerManager()
|
||||
->getPlayer($paramsObject->Event->Player->Login);
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->incrementStat(self::STAT_ON_PLAYER_REQUEST_RESPAWN, $player);
|
||||
$player = $this->maniaControl->getPlayerManager()->getPlayer($paramsObject->Event->Player->Login);
|
||||
$this->maniaControl->getStatisticManager()->incrementStat(self::STAT_ON_PLAYER_REQUEST_RESPAWN, $player);
|
||||
}
|
||||
break;
|
||||
case 'EndTurn': //TODO make it for other modes working
|
||||
@ -345,10 +278,8 @@ class StatisticCollector implements CallbackListener {
|
||||
if ($paramsObject && is_array($paramsObject->ScoresTable)) {
|
||||
$durationTime = (int)(($paramsObject->EndTime - $paramsObject->StartTime) / 1000);
|
||||
foreach ($paramsObject->ScoresTable as $score) {
|
||||
$player = $this->maniaControl->getPlayerManager()
|
||||
->getPlayer($score->Login);
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->insertStat(self::STAT_PLAYTIME, $player, -1, $durationTime);
|
||||
$player = $this->maniaControl->getPlayerManager()->getPlayer($score->Login);
|
||||
$this->maniaControl->getStatisticManager()->insertStat(self::STAT_PLAYTIME, $player, -1, $durationTime);
|
||||
}
|
||||
}
|
||||
break;
|
||||
@ -371,11 +302,9 @@ class StatisticCollector implements CallbackListener {
|
||||
$this->onShootArray[$login][$weaponNumber]++;
|
||||
|
||||
//Write Shoot Data into database
|
||||
if (array_sum($this->onShootArray[$login]) > $this->maniaControl->getSettingManager()
|
||||
->getSettingValue($this, self::SETTING_ON_SHOOT_PRESTORE)
|
||||
if (array_sum($this->onShootArray[$login]) > $this->maniaControl->getSettingManager()->getSettingValue($this, self::SETTING_ON_SHOOT_PRESTORE)
|
||||
) {
|
||||
$player = $this->maniaControl->getPlayerManager()
|
||||
->getPlayer($login);
|
||||
$player = $this->maniaControl->getPlayerManager()->getPlayer($login);
|
||||
|
||||
$rocketShots = $this->onShootArray[$login][self::WEAPON_ROCKET];
|
||||
$laserShots = $this->onShootArray[$login][self::WEAPON_LASER];
|
||||
@ -383,28 +312,23 @@ class StatisticCollector implements CallbackListener {
|
||||
$nucleusShots = $this->onShootArray[$login][self::WEAPON_NUCLEUS];
|
||||
|
||||
if ($rocketShots > 0) {
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->insertStat(self::STAT_ROCKET_SHOT, $player, $this->maniaControl->getServer()->index, $rocketShots);
|
||||
$this->maniaControl->getStatisticManager()->insertStat(self::STAT_ROCKET_SHOT, $player, $this->maniaControl->getServer()->index, $rocketShots);
|
||||
$this->onShootArray[$login][self::WEAPON_ROCKET] = 0;
|
||||
}
|
||||
if ($laserShots > 0) {
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->insertStat(self::STAT_LASER_SHOT, $player, $this->maniaControl->getServer()->index, $laserShots);
|
||||
$this->maniaControl->getStatisticManager()->insertStat(self::STAT_LASER_SHOT, $player, $this->maniaControl->getServer()->index, $laserShots);
|
||||
$this->onShootArray[$login][self::WEAPON_LASER] = 0;
|
||||
}
|
||||
if ($arrowShots > 0) {
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->insertStat(self::STAT_ARROW_SHOT, $player, $this->maniaControl->getServer()->index, $arrowShots);
|
||||
$this->maniaControl->getStatisticManager()->insertStat(self::STAT_ARROW_SHOT, $player, $this->maniaControl->getServer()->index, $arrowShots);
|
||||
$this->onShootArray[$login][self::WEAPON_ARROW] = 0;
|
||||
}
|
||||
if ($nucleusShots > 0) {
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->insertStat(self::STAT_NUCLEUS_SHOT, $player, $this->maniaControl->getServer()->index, $nucleusShots);
|
||||
$this->maniaControl->getStatisticManager()->insertStat(self::STAT_NUCLEUS_SHOT, $player, $this->maniaControl->getServer()->index, $nucleusShots);
|
||||
$this->onShootArray[$login][self::WEAPON_NUCLEUS] = 0;
|
||||
}
|
||||
|
||||
$this->maniaControl->getStatisticManager()
|
||||
->insertStat(self::STAT_ON_SHOOT, $player, $this->maniaControl->getServer()->index, $rocketShots + $laserShots + $arrowShots + $nucleusShots);
|
||||
$this->maniaControl->getStatisticManager()->insertStat(self::STAT_ON_SHOOT, $player, $this->maniaControl->getServer()->index, $rocketShots + $laserShots + $arrowShots + $nucleusShots);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -69,8 +69,7 @@ class StatisticManager {
|
||||
* @return bool
|
||||
*/
|
||||
private function initTables() {
|
||||
$mysqli = $this->maniaControl->getDatabase()
|
||||
->getMysqli();
|
||||
$mysqli = $this->maniaControl->getDatabase()->getMysqli();
|
||||
$query = "CREATE TABLE IF NOT EXISTS `" . self::TABLE_STATMETADATA . "` (
|
||||
`index` int(11) NOT NULL AUTO_INCREMENT,
|
||||
`name` varchar(100) NOT NULL,
|
||||
@ -118,8 +117,7 @@ class StatisticManager {
|
||||
* Store Stats Meta Data from the Database
|
||||
*/
|
||||
private function storeStatMetaData() {
|
||||
$mysqli = $this->maniaControl->getDatabase()
|
||||
->getMysqli();
|
||||
$mysqli = $this->maniaControl->getDatabase()->getMysqli();
|
||||
|
||||
$query = "SELECT * FROM `" . self::TABLE_STATMETADATA . "`;";
|
||||
$result = $mysqli->query($query);
|
||||
@ -204,8 +202,7 @@ class StatisticManager {
|
||||
return $this->getStatsRankingOfSpecialStat($statName, $serverIndex);
|
||||
}
|
||||
|
||||
$mysqli = $this->maniaControl->getDatabase()
|
||||
->getMysqli();
|
||||
$mysqli = $this->maniaControl->getDatabase()->getMysqli();
|
||||
$statId = $this->getStatId($statName);
|
||||
|
||||
$query = "SELECT `playerId`, `serverIndex`, `value` FROM `" . self::TABLE_STATISTICS . "`
|
||||
@ -494,8 +491,7 @@ class StatisticManager {
|
||||
return intval($hits) / intval($shots);
|
||||
}
|
||||
|
||||
$mysqli = $this->maniaControl->getDatabase()
|
||||
->getMysqli();
|
||||
$mysqli = $this->maniaControl->getDatabase()->getMysqli();
|
||||
$statId = $this->getStatId($statName);
|
||||
|
||||
if (!$statId) {
|
||||
@ -567,8 +563,7 @@ class StatisticManager {
|
||||
$serverIndex = $this->maniaControl->getServer()->index;
|
||||
}
|
||||
|
||||
$mysqli = $this->maniaControl->getDatabase()
|
||||
->getMysqli();
|
||||
$mysqli = $this->maniaControl->getDatabase()->getMysqli();
|
||||
$query = "INSERT INTO `" . self::TABLE_STATISTICS . "` (
|
||||
`serverIndex`,
|
||||
`playerId`,
|
||||
@ -603,8 +598,7 @@ class StatisticManager {
|
||||
* @return bool
|
||||
*/
|
||||
public function defineStatMetaData($statName, $type = self::STAT_TYPE_INT, $statDescription = '') {
|
||||
$mysqli = $this->maniaControl->getDatabase()
|
||||
->getMysqli();
|
||||
$mysqli = $this->maniaControl->getDatabase()->getMysqli();
|
||||
$query = "INSERT INTO `" . self::TABLE_STATMETADATA . "` (
|
||||
`name`,
|
||||
`type`,
|
||||
|
Reference in New Issue
Block a user