1
|
|
|
<?php |
2
|
|
|
class PlayerController extends GameController |
3
|
|
|
{ |
4
|
|
|
public $defaultAction = 'profile'; |
5
|
|
|
|
6
|
|
|
public function actionProfile($uid = 0) |
7
|
|
|
{ |
8
|
|
|
$player = Yii::app()->player->model; |
9
|
|
|
$playerStats = new PlayerStats; |
10
|
|
|
$playerStats->uid = $player->uid; |
|
|
|
|
11
|
|
|
|
12
|
|
|
//other player |
13
|
|
|
if ($uid) { |
14
|
|
|
$player = new Player; |
15
|
|
|
$player->setAllAttributes($uid); |
16
|
|
|
$playerStats->uid = $uid; |
|
|
|
|
17
|
|
|
|
18
|
|
|
if (!$player->uid) { |
|
|
|
|
19
|
|
|
throw new CHttpException(404, 'A keresett felhasználó nem található.'); |
20
|
|
|
} |
21
|
|
|
|
22
|
|
|
$duelShiel = new DuelShield(); |
23
|
|
|
$duelShiel->uid = $uid; |
|
|
|
|
24
|
|
|
if ($duelShiel->lifeTime > 0) { |
25
|
|
|
$player->activateDuelShield(); |
26
|
|
|
} |
27
|
|
|
} |
28
|
|
|
|
29
|
|
|
$advancement = $this->advancement($player); |
30
|
|
|
|
31
|
|
|
//stats |
32
|
|
|
$playerStats->fetchStats(); |
33
|
|
|
|
34
|
|
|
//badges |
35
|
|
|
$badgeList = new BadgeList; |
36
|
|
|
$badgeList->uid = $uid; |
37
|
|
|
$badgeList->fetchOwned(); |
38
|
|
|
|
39
|
|
|
$this->render('profile', [ |
40
|
|
|
'player' => $player, |
41
|
|
|
'playerStats' => $playerStats, |
42
|
|
|
'badgeList' => $badgeList, |
43
|
|
|
'advancement' => $advancement |
44
|
|
|
]); |
45
|
|
|
} |
46
|
|
|
|
47
|
|
|
public function actionBadges() |
48
|
|
|
{ |
49
|
|
|
$badgeList = new BadgeList; |
50
|
|
|
$badgeList->fetchOwned(); |
51
|
|
|
$badgeList->fetchAll(); |
52
|
|
|
|
53
|
|
|
$this->render('badges', [ |
54
|
|
|
'badgeList' => $badgeList |
55
|
|
|
]); |
56
|
|
|
} |
57
|
|
|
|
58
|
|
|
protected function advancement($player) |
59
|
|
|
{ |
60
|
|
|
$advancement = null; |
61
|
|
|
if ($player->status_points) { |
62
|
|
|
$advancement = new Advancement; |
63
|
|
|
$advancement->uid = $player->uid; |
|
|
|
|
64
|
|
|
|
65
|
|
|
$increment_id = Yii::app()->request->getPost('increment_id', 0); |
66
|
|
|
if ($increment_id) { |
67
|
|
|
$advancement->incrementForStatuspoint($increment_id); |
68
|
|
|
} |
69
|
|
|
} |
70
|
|
|
|
71
|
|
|
return $advancement; |
72
|
|
|
} |
73
|
|
|
} |
74
|
|
|
|
This check looks for access to properties that are not accessible from the current context.
If you need to make a property accessible to another context you can either raise its visibility level or provide an accessible getter in the defining class.