From b66603a8f7b1b0ee91ae2cdcc50585fb8734a4bb Mon Sep 17 00:00:00 2001 From: kremsy Date: Fri, 24 Jan 2014 22:34:35 +0100 Subject: [PATCH] bug fixes --- application/core/Players/PlayerManager.php | 26 +++++++++---------- .../core/Statistics/StatisticCollector.php | 10 +++---- 2 files changed, 17 insertions(+), 19 deletions(-) diff --git a/application/core/Players/PlayerManager.php b/application/core/Players/PlayerManager.php index 8cc36580..148576f2 100644 --- a/application/core/Players/PlayerManager.php +++ b/application/core/Players/PlayerManager.php @@ -117,17 +117,17 @@ class PlayerManager implements CallbackListener { if($playerItem->playerId <= 0) { continue; } - $playerInfo = $this->maniaControl->client->getPlayerInfo($playerItem->login); + $playerInfo = $this->maniaControl->client->getPlayerInfo($playerItem->login); //TODO just a workaround due nadeos bad structure - $detailedPlayerInfo = $this->maniaControl->client->getDetailedPlayerInfo($playerItem->login); - $playerInfo->path = $detailedPlayerInfo->path; - $playerInfo->language = $detailedPlayerInfo->language; + $detailedPlayerInfo = $this->maniaControl->client->getDetailedPlayerInfo($playerItem->login); + $playerInfo->path = $detailedPlayerInfo->path; + $playerInfo->language = $detailedPlayerInfo->language; $playerInfo->clientVersion = $detailedPlayerInfo->clientVersion; - $playerInfo->iPAddress = $detailedPlayerInfo->iPAddress; - $playerInfo->isSpectator = $detailedPlayerInfo->isSpectator; - $playerInfo->avatar = $detailedPlayerInfo->avatar; - $playerInfo->ladderStats = $detailedPlayerInfo->ladderStats; + $playerInfo->iPAddress = $detailedPlayerInfo->iPAddress; + $playerInfo->isSpectator = $detailedPlayerInfo->isSpectator; + $playerInfo->avatar = $detailedPlayerInfo->avatar; + $playerInfo->ladderStats = $detailedPlayerInfo->ladderStats; $player = new Player($playerInfo); $player->hasJoinedGame = true; @@ -187,8 +187,8 @@ class PlayerManager implements CallbackListener { return; } - $player->teamId = $callback[1][0]["TeamId"]; - $player->ladderRank = $callback[1][0]["LadderRanking"]; + $player->teamId = $callback[1][0]["TeamId"]; + $player->ladderRank = $callback[1][0]["LadderRanking"]; $prevJoinState = $player->hasJoinedGame; @@ -207,6 +207,9 @@ class PlayerManager implements CallbackListener { $logMessage = "Player joined: {$player->login} / " . Formatter::stripCodes($player->nickname) . " Nation: " . $player->getCountry() . " IP: {$player->ipAddress}"; $this->maniaControl->log($logMessage); + // Increment the Player Join Count + $this->maniaControl->statisticManager->incrementStat(self::STAT_JOIN_COUNT, $player, $this->maniaControl->server->index); + // Trigger own PlayerJoined callback $this->maniaControl->callbackManager->triggerCallback(self::CB_PLAYERJOINED, array(self::CB_PLAYERJOINED, $player)); } @@ -377,9 +380,6 @@ class PlayerManager implements CallbackListener { $playerStatement->free_result(); $playerStatement->close(); - // Increment the Player Join Count - $this->maniaControl->statisticManager->incrementStat(self::STAT_JOIN_COUNT, $player, $this->maniaControl->server->index); - return true; } diff --git a/application/core/Statistics/StatisticCollector.php b/application/core/Statistics/StatisticCollector.php index 643a67fe..6d35c7f5 100644 --- a/application/core/Statistics/StatisticCollector.php +++ b/application/core/Statistics/StatisticCollector.php @@ -177,8 +177,6 @@ class StatisticCollector implements CallbackListener { return -1; } } - - } @@ -224,13 +222,13 @@ class StatisticCollector implements CallbackListener { switch($callbackName) { case 'LibXmlRpc_OnShoot': - $this->handleOnShoot($callback[1][1][0], $callback[1][1][1]); + $this->handleOnShoot($callback[1][1][0], $callback[1][1][3]); break; case 'LibXmlRpc_OnHit': $shooter = $this->maniaControl->playerManager->getPlayer($callback[1][1][0]); $victim = $this->maniaControl->playerManager->getPlayer($callback[1][1][1]); - $weapon = $this->maniaControl->playerManager->getPlayer($callback[1][1][3]); - $this->maniaControl->statisticManager->incrementStat($this->getWeaponStat($weapon, false), $shooter); + $weapon = $callback[1][1][3]; + $this->maniaControl->statisticManager->incrementStat($this->getWeaponStat(intval($weapon), false), $shooter); $this->maniaControl->statisticManager->incrementStat(self::STAT_ON_HIT, $shooter); $this->maniaControl->statisticManager->incrementStat(self::STAT_ON_GOT_HIT, $victim); break; @@ -279,7 +277,7 @@ class StatisticCollector implements CallbackListener { $paramsObject = json_decode($callback[1][1]); $shooter = $this->maniaControl->playerManager->getPlayer($paramsObject->Event->Shooter->Login); $victim = $this->maniaControl->playerManager->getPlayer($paramsObject->Event->Victim->Login); - $weapon = $this->maniaControl->playerManager->getPlayer($paramsObject->Event->WeaponNum); + $weapon = $paramsObject->Event->WeaponNum; $this->maniaControl->statisticManager->incrementStat($this->getWeaponStat($weapon, false), $shooter); $this->maniaControl->statisticManager->incrementStat(self::STAT_ON_HIT, $shooter); $this->maniaControl->statisticManager->incrementStat(self::STAT_ON_GOT_HIT, $victim);