From 0ce32bac22845f73181da2a968d801c18f27e794 Mon Sep 17 00:00:00 2001 From: danielmartin0 Date: Wed, 18 Sep 2024 18:07:18 +0100 Subject: [PATCH] fix permissionlevels import --- maps/pirates/commands.lua | 6 +++--- maps/pirates/gui/crew.lua | 9 +++++---- maps/pirates/gui/gui.lua | 11 +++++------ maps/pirates/permissions.lua | 19 +++++++++++++++++++ maps/pirates/roles/roles.lua | 18 ------------------ maps/pirates/shop/shop.lua | 6 +++--- 6 files changed, 35 insertions(+), 34 deletions(-) diff --git a/maps/pirates/commands.lua b/maps/pirates/commands.lua index 52fb293f..24c02e94 100644 --- a/maps/pirates/commands.lua +++ b/maps/pirates/commands.lua @@ -29,7 +29,7 @@ local simplex_noise = require 'utils.simplex_noise'.d2 local Token = require 'utils.token' local Task = require 'utils.task' local Highscore = require 'maps.pirates.highscore' - +local Permissions = require 'maps.pirates.permissions' local Classes = require 'maps.pirates.roles.classes' local Gui = require 'maps.pirates.gui.gui' -- local Session = require 'utils.datastore.session_data' @@ -73,7 +73,7 @@ local function check_captain(cmd) if player ~= nil then p = player.print if not Common.validate_player(player) then return end - if not (Roles.player_privilege_level(player) >= Roles.privilege_levels.CAPTAIN) then + if not (Permissions.player_privilege_level(player) >= Permissions.privilege_levels.CAPTAIN) then p({ 'pirates.cmd_error_not_captain' }, Color.fail) return false end @@ -91,7 +91,7 @@ local function check_captain_or_admin(cmd) if player ~= nil then p = player.print if not Common.validate_player(player) then return end - if not (player.admin or Roles.player_privilege_level(player) >= Roles.privilege_levels.CAPTAIN) then + if not (player.admin or Permissions.player_privilege_level(player) >= Permissions.privilege_levels.CAPTAIN) then p({ 'pirates.cmd_error_not_captain' }, Color.fail) return false end diff --git a/maps/pirates/gui/crew.lua b/maps/pirates/gui/crew.lua index 39ff08aa..b74742af 100644 --- a/maps/pirates/gui/crew.lua +++ b/maps/pirates/gui/crew.lua @@ -13,6 +13,7 @@ local Surfaces = require 'maps.pirates.surfaces.surfaces' local SurfacesCommon = require 'maps.pirates.surfaces.common' local Hold = require 'maps.pirates.surfaces.hold' -- local Cabin = require 'maps.pirates.surfaces.cabin' +local Permissions = require 'maps.pirates.permissions' local window_name = 'crew' @@ -596,7 +597,7 @@ function Public.click(event) if eventname == 'capn_summon_crew' then --double check: - if Roles.player_privilege_level(player) >= Roles.privilege_levels.CAPTAIN then + if Permissions.player_privilege_level(player) >= Permissions.privilege_levels.CAPTAIN then Crew.summon_crew() end return @@ -604,7 +605,7 @@ function Public.click(event) if eventname == 'capn_requisition' then --double check: - if Roles.player_privilege_level(player) >= Roles.privilege_levels.CAPTAIN then + if Permissions.player_privilege_level(player) >= Permissions.privilege_levels.CAPTAIN then Roles.captain_tax(memory.playerindex_captain) end return @@ -622,7 +623,7 @@ function Public.click(event) if eventname == 'capn_disband_crew' then --double check: - if Roles.player_privilege_level(player) >= Roles.privilege_levels.CAPTAIN then + if Permissions.player_privilege_level(player) >= Permissions.privilege_levels.CAPTAIN then if not memory.disband_are_you_sure_ticks then memory.disband_are_you_sure_ticks = {} end @@ -633,7 +634,7 @@ function Public.click(event) if eventname == 'capn_disband_are_you_sure' then --double check: - if Roles.player_privilege_level(player) >= Roles.privilege_levels.CAPTAIN then + if Permissions.player_privilege_level(player) >= Permissions.privilege_levels.CAPTAIN then local force = memory.force if force and force.valid then local message = { 'pirates.crew_disbanded', player.name, memory.name, Utils.time_longform((memory.real_age or 0) / 60) } diff --git a/maps/pirates/gui/gui.lua b/maps/pirates/gui/gui.lua index 76dfb54c..df15c92f 100644 --- a/maps/pirates/gui/gui.lua +++ b/maps/pirates/gui/gui.lua @@ -22,12 +22,11 @@ local Cabin = require 'maps.pirates.surfaces.cabin' local Crowsnest = require 'maps.pirates.surfaces.crowsnest' local Progression = require 'maps.pirates.progression' local Surfaces = require 'maps.pirates.surfaces.surfaces' -local Roles = require 'maps.pirates.roles.roles' - +-- local Roles = require 'maps.pirates.roles.roles' +local Permissions = require 'maps.pirates.permissions' local IslandEnum = require 'maps.pirates.surfaces.islands.island_enum' local Kraken = require 'maps.pirates.surfaces.sea.kraken' local GuiWelcome = require 'maps.pirates.gui.welcome' - local ComfyGui = require 'utils.gui' ComfyGui.set_disabled_tab('Scoreboard', true) ComfyGui.set_disabled_tab('Groups', true) @@ -1186,7 +1185,7 @@ local function on_gui_click(event) if event.element.name and event.element.name == 'etaframe_piratebutton' then if (memory.boat.state == Boats.enum_state.DOCKED or memory.boat.state == Boats.enum_state.LANDED) then - if Roles.player_privilege_level(player) >= Roles.privilege_levels.CAPTAIN then + if Permissions.player_privilege_level(player) >= Permissions.privilege_levels.CAPTAIN then if (not memory.undock_shortcut_are_you_sure_data) then memory.undock_shortcut_are_you_sure_data = {} end if memory.undock_shortcut_are_you_sure_data[player.index] and memory.undock_shortcut_are_you_sure_data[player.index] > game.tick - 60 * 4 then if memory.boat.state == Boats.enum_state.DOCKED then @@ -1199,13 +1198,13 @@ local function on_gui_click(event) end end elseif memory.boat.state == Boats.enum_state.ATSEA_WAITING_TO_SAIL then - if Roles.player_privilege_level(player) >= Roles.privilege_levels.CAPTAIN then + if Permissions.player_privilege_level(player) >= Permissions.privilege_levels.CAPTAIN then local destination_index = memory.mapbeingloadeddestination_index Progression.progress_to_destination(destination_index) end elseif memory.boat.state == Boats.enum_state.ATSEA_VICTORIOUS then - if Roles.player_privilege_level(player) >= Roles.privilege_levels.CAPTAIN then + if Permissions.player_privilege_level(player) >= Permissions.privilege_levels.CAPTAIN then memory.boat.state = Boats.enum_state.ATSEA_SAILING local force = memory.force diff --git a/maps/pirates/permissions.lua b/maps/pirates/permissions.lua index 73f4032e..dd436bbe 100644 --- a/maps/pirates/permissions.lua +++ b/maps/pirates/permissions.lua @@ -10,6 +10,25 @@ local CoreData = require 'maps.pirates.coredata' local Public = {} +local privilege_levels = { + NORMAL = 1, + OFFICER = 2, + CAPTAIN = 3 +} +Public.privilege_levels = privilege_levels + +function Public.player_privilege_level(player) + local memory = Memory.get_crew_memory() + + if Common.is_id_valid(memory.id) and Common.is_captain(player) then + return Public.privilege_levels.CAPTAIN + elseif Common.is_officer(player.index) then + return Public.privilege_levels.OFFICER + else + return Public.privilege_levels.NORMAL + end +end + local function set_normal_permissions(group) if not _DEBUG then group.set_allows_action(defines.input_action.edit_permission_group, false) diff --git a/maps/pirates/roles/roles.lua b/maps/pirates/roles/roles.lua index b235c87d..3929cad7 100644 --- a/maps/pirates/roles/roles.lua +++ b/maps/pirates/roles/roles.lua @@ -14,12 +14,6 @@ local Classes = require 'maps.pirates.roles.classes' local Permissions = require 'maps.pirates.permissions' local Public = {} -local privilege_levels = { - NORMAL = 1, - OFFICER = 2, - CAPTAIN = 3 -} -Public.privilege_levels = privilege_levels --== Roles — General ==-- @@ -155,18 +149,6 @@ function Public.get_class_print_string(class, add_is_class_obstainable) return nil end -function Public.player_privilege_level(player) - local memory = Memory.get_crew_memory() - - if Common.is_id_valid(memory.id) and Common.is_captain(player) then - return Public.privilege_levels.CAPTAIN - elseif Common.is_officer(player.index) then - return Public.privilege_levels.OFFICER - else - return Public.privilege_levels.NORMAL - end -end - function Public.make_captain(player) local global_memory = Memory.get_global_memory() local memory = Memory.get_crew_memory() diff --git a/maps/pirates/shop/shop.lua b/maps/pirates/shop/shop.lua index b591a3ac..e12cb44f 100644 --- a/maps/pirates/shop/shop.lua +++ b/maps/pirates/shop/shop.lua @@ -10,14 +10,14 @@ local Crew = require 'maps.pirates.crew' local Balance = require 'maps.pirates.balance' local Common = require 'maps.pirates.common' -- local Utils = require 'maps.pirates.utils_local' -local Roles = require 'maps.pirates.roles.roles' +-- local Roles = require 'maps.pirates.roles.roles' local Math = require 'maps.pirates.math' local _inspect = require 'utils.inspect'.inspect local SurfacesCommon = require 'maps.pirates.surfaces.common' local Upgrades = require 'maps.pirates.shop.boat_upgrades' local Cabin = require 'maps.pirates.surfaces.cabin' -- local Upgrades = require 'maps.pirates.shop.boat_upgrades' - +local Permissions = require 'maps.pirates.permissions' local Public = {} Public.Covered = require 'maps.pirates.shop.covered' Public.Merchants = require 'maps.pirates.shop.merchants' @@ -91,7 +91,7 @@ local function purchaseData(market, player, offer_index) local in_captains_cabin = type and type == SurfacesCommon.enum.CABIN local dock_upgrades_market = destination.dynamic_data.dock_captains_market and (destination.dynamic_data.dock_captains_market == market) - local permission_level_fail = (in_captains_cabin and Roles.player_privilege_level(player) < Roles.privilege_levels.OFFICER) or (dock_upgrades_market and Roles.player_privilege_level(player) < Roles.privilege_levels.OFFICER) + local permission_level_fail = (in_captains_cabin and Permissions.player_privilege_level(player) < Permissions.privilege_levels.OFFICER) or (dock_upgrades_market and Permissions.player_privilege_level(player) < Permissions.privilege_levels.OFFICER) if in_captains_cabin then decay_type = 'static'