forked from ifera-mc/ScoreHud-Addons
-
Notifications
You must be signed in to change notification settings - Fork 0
/
PurePermsAddon.php
104 lines (86 loc) · 2.29 KB
/
PurePermsAddon.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
<?php
declare(strict_types = 1);
/**
* @name PurePermsAddon
* @version 1.0.0
* @main JackMD\ScoreHud\Addons\PurePermsAddon
* @depend PurePerms
*/
namespace JackMD\ScoreHud\Addons
{
use JackMD\ScoreHud\addon\AddonBase;
use pocketmine\Player;
use _64FF00\PurePerms\PurePerms;
class PurePermsAddon extends AddonBase{
/** @var PurePerms */
private $purePerms;
public function onEnable(): void{
$this->purePerms = $this->getServer()->getPluginManager()->getPlugin("PurePerms");
}
/**
* @param Player $player
* @return array
*/
public function getProcessedTags(Player $player): array{
return [
"{rank}" => $this->getPlayerRank($player),
"{prefix}" => $this->getPrefix($player),
"{suffix}" => $this->getSuffix($player)
];
}
/**
* @param Player $player
* @return string
*/
public function getPlayerRank(Player $player): string{
$group = $this->purePerms->getUserDataMgr()->getData($player)['group'];
if($group !== null){
return $group;
}else{
return "No Rank";
}
}
/**
* @param Player $player
* @param null $levelName
* @return string
*/
public function getPrefix(Player $player, $levelName = null): string{
$purePerms = $this->purePerms;
$prefix = $purePerms->getUserDataMgr()->getNode($player, "prefix");
if($levelName === null){
if(($prefix === null) || ($prefix === "")){
return "No Prefix";
}
return (string) $prefix;
}else{
$worldData = $purePerms->getUserDataMgr()->getWorldData($player, $levelName);
if(empty($worldData["prefix"]) || $worldData["prefix"] == null){
return "No Prefix";
}
return $worldData["prefix"];
}
}
/**
* @param Player $player
* @param null $levelName
* @return string
*/
public function getSuffix(Player $player, $levelName = null): string{
$purePerms = $this->purePerms;
$suffix = $purePerms->getUserDataMgr()->getNode($player, "suffix");
if($levelName === null){
if(($suffix === null) || ($suffix === "")){
return "No Suffix";
}
return (string) $suffix;
}else{
$worldData = $purePerms->getUserDataMgr()->getWorldData($player, $levelName);
if(empty($worldData["suffix"]) || $worldData["suffix"] == null){
return "No Suffix";
}
return $worldData["suffix"];
}
}
}
}