diff --git a/modules/data/bonus.lua b/modules/data/bonus.lua index 1c5b7a70..cd87de7b 100644 --- a/modules/data/bonus.lua +++ b/modules/data/bonus.lua @@ -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)..'%' diff --git a/modules/data/greetings.lua b/modules/data/greetings.lua index 84def7e3..1c885eab 100644 --- a/modules/data/greetings.lua +++ b/modules/data/greetings.lua @@ -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) diff --git a/modules/data/quickbar.lua b/modules/data/quickbar.lua index 3353a8f3..e368eef8 100644 --- a/modules/data/quickbar.lua +++ b/modules/data/quickbar.lua @@ -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 diff --git a/modules/data/tag.lua b/modules/data/tag.lua index d01b6918..27190b7b 100644 --- a/modules/data/tag.lua +++ b/modules/data/tag.lua @@ -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) diff --git a/modules/gui/readme.lua b/modules/gui/readme.lua index dbfaf13a..8938aedb 100644 --- a/modules/gui/readme.lua +++ b/modules/gui/readme.lua @@ -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 diff --git a/modules/gui/server-ups.lua b/modules/gui/server-ups.lua index e35b7ea4..edb4793b 100644 --- a/modules/gui/server-ups.lua +++ b/modules/gui/server-ups.lua @@ -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 }