/** * Extract standard achievement information from an array. * * @param array $params * @return Standard */ public static function extract($params) { $achievement = new Standard(); $icon = IconParsingService::extract($params['icon']); $achievement->setTitle($params['title'])->setDescription($params['description'])->setAchievementId($params['achievementId'])->setCategoryId($params['categoryId'])->setPoints($params['points'])->setIcon($icon); return $achievement; }
/** * Extract generic resource information from an array. * * @param array $params * @param Entity\Reward\Resource $instance * @return Entity\Reward\Resource */ public static function extractExtensible($params, $instance) { $icon = Parsing\IconParsingService::extract($params['icon']); if (is_null($instance)) { $instance = new Entity\Reward\Resource(); } $instance->setTitle($params['title'])->setId($params['id'])->setIcon($icon)->setAchievementId($params['achievementId']); return $instance; }
/** * Extract complete player profile information from an array. * * @param array $params * @return Player */ public static function extract($params) { $portrait = IconParsingService::extract($params['portrait']); $career = CareerParsingService::extract($params['career']); $playerSwarmLevels = SwarmLevelsParsingService::extract($params['swarmLevels']); $campaign = CampaignParsingService::extract($params['campaign']); $season = SeasonParsingService::extract($params['season']); $rewards = RewardsParsingService::extract($params['rewards']); $achievements = AchievementParsingService::extract($params['achievements']); $profileBasicInformation = BasicProfileParsingService::extract($params); $player = new Player(); $player->setBasicInformation($profileBasicInformation)->setPortrait($portrait)->setCareer($career)->setSwarmLevels($playerSwarmLevels)->setCampaign($campaign)->setSeason($season)->setRewards($rewards)->setAchievements($achievements); return $player; }