mirror of
https://github.com/PHIDIAS0303/ExpCluster.git
synced 2025-12-31 04:51:40 +09:00
Added optional permission check for settings
This commit is contained in:
@@ -14,6 +14,7 @@ local PlayerData = require 'expcore.player_data' --- @dep expcore.player_data
|
|||||||
local PlayerBonus = PlayerData.Settings:combine('Bonus')
|
local PlayerBonus = PlayerData.Settings:combine('Bonus')
|
||||||
PlayerBonus:set_default(0)
|
PlayerBonus:set_default(0)
|
||||||
PlayerBonus:set_metadata{
|
PlayerBonus:set_metadata{
|
||||||
|
permission = 'command/bonus',
|
||||||
stringify = function(value)
|
stringify = function(value)
|
||||||
if not value or value == 0 then return 'None set' end
|
if not value or value == 0 then return 'None set' end
|
||||||
return (value*100)..'%'
|
return (value*100)..'%'
|
||||||
|
|||||||
@@ -8,6 +8,9 @@ require 'config.expcore.command_general_parse'
|
|||||||
--- Stores the join message that the player have
|
--- Stores the join message that the player have
|
||||||
local PlayerData = require 'expcore.player_data' --- @dep expcore.player_data
|
local PlayerData = require 'expcore.player_data' --- @dep expcore.player_data
|
||||||
local CustomMessages = PlayerData.Settings:combine('JoinMessage')
|
local CustomMessages = PlayerData.Settings:combine('JoinMessage')
|
||||||
|
CustomMessages:set_metadata{
|
||||||
|
permission = 'command/join-message'
|
||||||
|
}
|
||||||
|
|
||||||
--- When a players data loads show their message
|
--- When a players data loads show their message
|
||||||
CustomMessages:on_load(function(player_name, player_message)
|
CustomMessages:on_load(function(player_name, player_message)
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ local config = require 'config.preset_player_quickbar' --- @dep config.preset_pl
|
|||||||
local PlayerData = require 'expcore.player_data' --- @dep expcore.player_data
|
local PlayerData = require 'expcore.player_data' --- @dep expcore.player_data
|
||||||
local PlayerFilters = PlayerData.Settings:combine('QuickbarFilters')
|
local PlayerFilters = PlayerData.Settings:combine('QuickbarFilters')
|
||||||
PlayerFilters:set_metadata{
|
PlayerFilters:set_metadata{
|
||||||
|
permission = 'command/save-quickbar',
|
||||||
stringify = function(value)
|
stringify = function(value)
|
||||||
if not value then return 'No filters set' end
|
if not value then return 'No filters set' end
|
||||||
local count = 0
|
local count = 0
|
||||||
|
|||||||
@@ -11,6 +11,9 @@ require 'config.expcore.command_role_parse'
|
|||||||
--- Stores the tag for a player
|
--- Stores the tag for a player
|
||||||
local PlayerData = require 'expcore.player_data' --- @dep expcore.player_data
|
local PlayerData = require 'expcore.player_data' --- @dep expcore.player_data
|
||||||
local PlayerTags = PlayerData.Settings:combine('Tag')
|
local PlayerTags = PlayerData.Settings:combine('Tag')
|
||||||
|
PlayerTags:set_metadata{
|
||||||
|
permission = 'command/tag'
|
||||||
|
}
|
||||||
|
|
||||||
--- When your tag is updated then apply the changes
|
--- When your tag is updated then apply the changes
|
||||||
PlayerTags:on_update(function(player_name, player_tag)
|
PlayerTags:on_update(function(player_name, player_tag)
|
||||||
|
|||||||
@@ -302,10 +302,12 @@ Gui.element(function(_, parent)
|
|||||||
for name, child in pairs(PlayerData.Settings.children) do
|
for name, child in pairs(PlayerData.Settings.children) do
|
||||||
local metadata = child.metadata
|
local metadata = child.metadata
|
||||||
local value = child:get(player_name)
|
local value = child:get(player_name)
|
||||||
if metadata.stringify then value = metadata.stringify(value) end
|
if not metadata.permission or Roles.player_allowed(player, metadata.permission) then
|
||||||
if value == nil then value = 'None set' end
|
if metadata.stringify then value = metadata.stringify(value) end
|
||||||
Gui.centered_label(settings, 150, metadata.name or {'exp-settings.'..name}, metadata.tooltip or {'exp-settings.'..name..'-tooltip'})
|
if value == nil then value = 'None set' end
|
||||||
Gui.centered_label(settings, 420, tostring(value), metadata.value_tooltip or {'exp-settings.'..name..'-value-tooltip'})
|
Gui.centered_label(settings, 150, metadata.name or {'exp-settings.'..name}, metadata.tooltip or {'exp-settings.'..name..'-tooltip'})
|
||||||
|
Gui.centered_label(settings, 420, tostring(value), metadata.value_tooltip or {'exp-settings.'..name..'-value-tooltip'})
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ local PlayerData = require 'expcore.player_data' --- @dep expcore.player_data
|
|||||||
local UsesServerUps = PlayerData.Settings:combine('UsesServerUps')
|
local UsesServerUps = PlayerData.Settings:combine('UsesServerUps')
|
||||||
UsesServerUps:set_default(false)
|
UsesServerUps:set_default(false)
|
||||||
UsesServerUps:set_metadata{
|
UsesServerUps:set_metadata{
|
||||||
|
permission = 'command/server-ups',
|
||||||
stringify = function(value) return value and 'Visible' or 'Hidden' end
|
stringify = function(value) return value and 'Visible' or 'Hidden' end
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user