pid = $rpcInfos['PlayerId']; $this->login = $rpcInfos['Login']; $this->nickname = Formatter::stripDirtyCodes($rpcInfos['NickName']); $this->path = $rpcInfos['Path']; $this->language = $rpcInfos['Language']; $this->avatar = $rpcInfos['Avatar']['FileName']; $this->allies = $rpcInfos['Allies']; $this->clubLink = $rpcInfos['ClubLink']; $this->teamId = $rpcInfos['TeamId']; $this->isSpectator = $rpcInfos['IsSpectator']; $this->isOfficial = $rpcInfos['IsInOfficialMode']; $this->isReferee = $rpcInfos['IsReferee']; $this->ladderScore = $rpcInfos['LadderStats']['PlayerRankings'][0]['Score']; $this->ladderRank = $rpcInfos['LadderStats']['PlayerRankings'][0]['Ranking']; $this->maniaPlanetPlayDays = $rpcInfos['HoursSinceZoneInscription'] / 24; $this->ipAddress = $rpcInfos['IPAddress']; $this->joinTime = time(); if($this->nickname == '') { $this->nickname = $this->login; } } /** * Check if player is not a real player * * @return bool */ public function isFakePlayer() { return ($this->pid <= 0 || $this->path == ""); } /** * Get province * * @return string */ public function getProvince() { $pathParts = explode('|', $this->path); if(isset($pathParts[3])) { return $pathParts[3]; } return $this->getCountry(); } /** * Get country * * @return string */ public function getCountry() { $pathParts = explode('|', $this->path); if(isset($pathParts[2])) { return $pathParts[2]; } if(isset($pathParts[1])) { return $pathParts[1]; } if(isset($pathParts[0])) { return $pathParts[0]; } return $this->path; } /** * Get continent * * @return string */ public function getContinent() { $pathParts = explode('|', $this->path); if(isset($pathParts[1])) { return $pathParts[1]; } if(isset($pathParts[0])) { return $pathParts[0]; } return $this->path; } }