/** * @param $json string * @return StormOfflinePlayer */ public static function withJson($json) { $pl = new StormOfflinePlayer(); $jsData = json_decode($json, true); $pl->loadJson($jsData); return $pl; }
protected function loadJson($data) { parent::loadJson($data->user); $this->setAuthenticated(true)->setSession($data->session); }
/** * @param $id int * @param $find boolean * @return null|StormPlayer|StormFuturePlayer */ public function getPlayerByID($id, $find) { foreach ($this->players as $pl) { if ($pl->getId() == $id) { return $pl; } } if ($find) { $futurePlayer = new StormFuturePlayer(); StormClient::sendData("GET", [], "users/get/id/" . $id, $futurePlayer, function ($uThis, $result) { $uThis->dropIn(StormOfflinePlayer::withJson($result->response)); }); return $futurePlayer; } return null; }