mirror of
https://github.com/PHIDIAS0303/ExpCluster.git
synced 2025-12-27 11:35:22 +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')
|
||||
PlayerBonus:set_default(0)
|
||||
PlayerBonus:set_metadata{
|
||||
permission = 'command/bonus',
|
||||
stringify = function(value)
|
||||
if not value or value == 0 then return 'None set' end
|
||||
return (value*100)..'%'
|
||||
|
||||
@@ -8,6 +8,9 @@ require 'config.expcore.command_general_parse'
|
||||
--- Stores the join message that the player have
|
||||
local PlayerData = require 'expcore.player_data' --- @dep expcore.player_data
|
||||
local CustomMessages = PlayerData.Settings:combine('JoinMessage')
|
||||
CustomMessages:set_metadata{
|
||||
permission = 'command/join-message'
|
||||
}
|
||||
|
||||
--- When a players data loads show their 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 PlayerFilters = PlayerData.Settings:combine('QuickbarFilters')
|
||||
PlayerFilters:set_metadata{
|
||||
permission = 'command/save-quickbar',
|
||||
stringify = function(value)
|
||||
if not value then return 'No filters set' end
|
||||
local count = 0
|
||||
|
||||
@@ -11,6 +11,9 @@ require 'config.expcore.command_role_parse'
|
||||
--- Stores the tag for a player
|
||||
local PlayerData = require 'expcore.player_data' --- @dep expcore.player_data
|
||||
local PlayerTags = PlayerData.Settings:combine('Tag')
|
||||
PlayerTags:set_metadata{
|
||||
permission = 'command/tag'
|
||||
}
|
||||
|
||||
--- When your tag is updated then apply the changes
|
||||
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
|
||||
local metadata = child.metadata
|
||||
local value = child:get(player_name)
|
||||
if metadata.stringify then value = metadata.stringify(value) end
|
||||
if value == nil then value = 'None set' end
|
||||
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'})
|
||||
if not metadata.permission or Roles.player_allowed(player, metadata.permission) then
|
||||
if metadata.stringify then value = metadata.stringify(value) end
|
||||
if value == nil then value = 'None set' end
|
||||
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
|
||||
|
||||
|
||||
@@ -13,6 +13,7 @@ local PlayerData = require 'expcore.player_data' --- @dep expcore.player_data
|
||||
local UsesServerUps = PlayerData.Settings:combine('UsesServerUps')
|
||||
UsesServerUps:set_default(false)
|
||||
UsesServerUps:set_metadata{
|
||||
permission = 'command/server-ups',
|
||||
stringify = function(value) return value and 'Visible' or 'Hidden' end
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user