public function hasPermission($name)
{
if ($name instanceof Permission) {
$name = $name->getName();
}
if ($this->isPermissionSet($name)) {
return $this->permissions[$name]->getValue();
}
if (($perm = Server::getInstance()->getPluginManager()->getPermission($name)) !== null) {
$perm = $perm->getDefault();
return $perm === Permission::DEFAULT_TRUE or $this->isOp() and $perm === Permission::DEFAULT_OP or !$this->isOp() and $perm === Permission::DEFAULT_NOT_OP;
} else {
return Permission::$DEFAULT_PERMISSION === Permission::DEFAULT_TRUE or $this->isOp() and Permission::$DEFAULT_PERMISSION === Permission::DEFAULT_OP or !$this->isOp() and Permission::$DEFAULT_PERMISSION === Permission::DEFAULT_NOT_OP;
}
}