Merge Game, FlyingText, Common and table
This commit is contained in:
@@ -4,7 +4,7 @@
|
||||
@alias autofill
|
||||
]]
|
||||
|
||||
local FloatingText = require("modules/exp_util/floating_text")
|
||||
local FlyingText = require("modules/exp_util/flying_text")
|
||||
local Gui = require("modules.exp_legacy.expcore.gui") -- @dep expcore.gui
|
||||
local Roles = require("modules.exp_legacy.expcore.roles") -- @dep expcore.gui
|
||||
local Storage = require("modules/exp_util/storage") -- @dep utils.global
|
||||
@@ -12,8 +12,6 @@ local config = require("modules.exp_legacy.config.gui.autofill") -- @dep config.
|
||||
local Event = require("modules/exp_legacy/utils/event") -- @dep utils.event
|
||||
local table = require("modules.exp_legacy.overrides.table") -- @dep overrides.table
|
||||
|
||||
local print_text = FloatingText.print -- (surface, position, text, color)
|
||||
|
||||
--- Table that stores if autofill is enabled or not
|
||||
local autofill_player_settings = {}
|
||||
Storage.register(autofill_player_settings, function(tbl)
|
||||
@@ -324,7 +322,6 @@ local function entity_build(event)
|
||||
-- Get the inventory of the player
|
||||
local player_inventory = player.get_main_inventory() --- @cast player_inventory -nil
|
||||
|
||||
local text_position = { x = entity.position.x, y = entity.position.y }
|
||||
-- Loop over all possible items to insert into the entity
|
||||
for _, item in pairs(entity_settings.items) do
|
||||
-- Check if the item is enabled or goto next item
|
||||
@@ -338,7 +335,6 @@ local function entity_build(event)
|
||||
local item_amount = player_inventory.get_item_count(item.name)
|
||||
if item_amount ~= 0 then
|
||||
local inserted
|
||||
text_position.y = text_position.y - 0.5
|
||||
local color = { r = 0, g = 255, b = 0, a = 1 }
|
||||
if item_amount >= preferd_amount then
|
||||
-- Can item be inserted? no, goto next item!
|
||||
@@ -351,7 +347,12 @@ local function entity_build(event)
|
||||
color = { r = 255, g = 165, b = 0, a = 1 }
|
||||
end
|
||||
player_inventory.remove{ name = item.name, count = inserted }
|
||||
print_text(entity.surface, text_position, { "autofill.inserted", inserted, rich_img("item", item.name), rich_img("entity", entity.name) }, color)
|
||||
FlyingText.create_above_entity{
|
||||
target_entity = entity,
|
||||
text = { "autofill.inserted", inserted, rich_img("item", item.name), rich_img("entity", entity.name) },
|
||||
player = player,
|
||||
color = color,
|
||||
}
|
||||
end
|
||||
::end_item::
|
||||
end
|
||||
|
||||
@@ -23,7 +23,7 @@ function Public.show(container)
|
||||
local left_panel_style = left_panel.style
|
||||
left_panel_style.width = 300
|
||||
|
||||
for name in pairs(table.keysort(Datastore.debug())) do
|
||||
for name in pairs(table.key_sort(Datastore.debug())) do
|
||||
local header = left_panel.add{ type = "flow" }.add{ type = "label", name = header_name, caption = name }
|
||||
Gui.set_data(header, name)
|
||||
end
|
||||
@@ -69,7 +69,7 @@ Gui.on_click(
|
||||
header_name,
|
||||
function(event)
|
||||
local element = event.element
|
||||
local tableName = Gui.get_data(element)
|
||||
local table_name = Gui.get_data(element)
|
||||
|
||||
local left_panel = element.parent.parent
|
||||
local data = Gui.get_data(left_panel)
|
||||
@@ -84,10 +84,10 @@ Gui.on_click(
|
||||
element.style.font_color = Color.orange
|
||||
data.selected_header = element
|
||||
|
||||
input_text_box.text = tableName
|
||||
input_text_box.text = table_name
|
||||
input_text_box.style.font_color = Color.black
|
||||
|
||||
local content = Datastore.debug(tableName)
|
||||
local content = Datastore.debug(table_name)
|
||||
local content_string = {}
|
||||
for key, value in pairs(content) do
|
||||
content_string[#content_string + 1] = key:gsub("^%l", string.upper) .. " = " .. dump(value)
|
||||
|
||||
@@ -5,13 +5,12 @@
|
||||
]]
|
||||
|
||||
-- luacheck:ignore 211/Colors
|
||||
local ExpUtil = require("modules/exp_util")
|
||||
local Gui = require("modules.exp_legacy.expcore.gui") --- @dep expcore.gui
|
||||
local Roles = require("modules.exp_legacy.expcore.roles") --- @dep expcore.roles
|
||||
local Datastore = require("modules.exp_legacy.expcore.datastore") --- @dep expcore.datastore
|
||||
local Event = require("modules/exp_legacy/utils/event") --- @dep utils.event
|
||||
local config = require("modules.exp_legacy.config.gui.player_list_actions") --- @dep config.gui.player_list_actions
|
||||
local Colors = require("modules/exp_util/include/color")
|
||||
local format_time = _C.format_time --- @dep expcore.common
|
||||
|
||||
--- Stores all data for the warp gui
|
||||
local PlayerListData = Datastore.connect("PlayerListData")
|
||||
@@ -261,12 +260,15 @@ Gui.left_toolbar_button("entity/character", { "player-list.main-tooltip" }, play
|
||||
return Roles.player_allowed(player, "gui/player-list")
|
||||
end)
|
||||
|
||||
local online_time_format = ExpUtil.format_time_factory_locale{ format = "short", hours = true, minutes = true }
|
||||
local afk_time_format = ExpUtil.format_time_factory_locale{ format = "long", minutes = true }
|
||||
|
||||
-- Get caption and tooltip format for a player
|
||||
local function get_time_formats(online_time, afk_time)
|
||||
local tick = game.tick > 0 and game.tick or 1
|
||||
local percent = math.round(online_time / tick, 3) * 100
|
||||
local caption = format_time(online_time)
|
||||
local tooltip = { "player-list.afk-time", percent, format_time(afk_time, { minutes = true, long = true }) }
|
||||
local caption = online_time_format(online_time)
|
||||
local tooltip = { "player-list.afk-time", percent, afk_time_format(afk_time) }
|
||||
return caption, tooltip
|
||||
end
|
||||
|
||||
@@ -333,7 +335,7 @@ local function get_player_list_order()
|
||||
index=0-i,
|
||||
tag='',
|
||||
role_name = 'Fake Player',
|
||||
chat_color = table.get_random_dictionary_entry(Colors),
|
||||
chat_color = table.get_random(Colors),
|
||||
caption = caption,
|
||||
tooltip = tooltip
|
||||
}
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
---- module pd
|
||||
-- @gui PlayerData
|
||||
|
||||
local ExpUtil = require("modules/exp_util")
|
||||
local Gui = require("modules.exp_legacy.expcore.gui") --- @dep expcore.gui
|
||||
local Roles = require("modules.exp_legacy.expcore.roles") --- @dep expcore.roles
|
||||
local Event = require("modules/exp_legacy/utils/event") --- @dep utils.event
|
||||
local PlayerData = require("modules.exp_legacy.expcore.player_data") --- @dep expcore.player_data
|
||||
require("modules.exp_legacy.modules.data.statistics")
|
||||
local format_time = _C.format_time --- @dep expcore.common
|
||||
local format_number = require("util").format_number --- @dep util
|
||||
|
||||
local pd_container
|
||||
@@ -16,66 +16,60 @@ local label_width = {
|
||||
["total"] = 480,
|
||||
}
|
||||
|
||||
local function format_time_short(value)
|
||||
return format_time(value * 3600, {
|
||||
hours = true,
|
||||
minutes = true,
|
||||
seconds = false,
|
||||
})
|
||||
end
|
||||
local short_time_format = ExpUtil.format_time_factory_locale{ format = "short", coefficient = 3600, hours = true, minutes = true }
|
||||
|
||||
local function format_number_n(n)
|
||||
return format_number(math.floor(n)) .. string.format("%.2f", n % 1):sub(2)
|
||||
end
|
||||
|
||||
local playerStats = PlayerData.Statistics
|
||||
local PlayerStats = PlayerData.Statistics
|
||||
local computed_stats = {
|
||||
DamageDeathRatio = {
|
||||
default = format_number_n(0),
|
||||
calculate = function(player_name)
|
||||
return format_number_n(playerStats["DamageDealt"]:get(player_name, 0) / playerStats["Deaths"]:get(player_name, 1))
|
||||
return format_number_n(PlayerStats["DamageDealt"]:get(player_name, 0) / PlayerStats["Deaths"]:get(player_name, 1))
|
||||
end,
|
||||
},
|
||||
KillDeathRatio = {
|
||||
default = format_number_n(0),
|
||||
calculate = function(player_name)
|
||||
return format_number_n(playerStats["Kills"]:get(player_name, 0) / playerStats["Deaths"]:get(player_name, 1))
|
||||
return format_number_n(PlayerStats["Kills"]:get(player_name, 0) / PlayerStats["Deaths"]:get(player_name, 1))
|
||||
end,
|
||||
},
|
||||
SessionTime = {
|
||||
default = format_time_short(0),
|
||||
default = short_time_format(0),
|
||||
calculate = function(player_name)
|
||||
return format_time_short((playerStats["Playtime"]:get(player_name, 0) - playerStats["AfkTime"]:get(player_name, 0)) / playerStats["JoinCount"]:get(player_name, 1))
|
||||
return short_time_format((PlayerStats["Playtime"]:get(player_name, 0) - PlayerStats["AfkTime"]:get(player_name, 0)) / PlayerStats["JoinCount"]:get(player_name, 1))
|
||||
end,
|
||||
},
|
||||
BuildRatio = {
|
||||
default = format_number_n(0),
|
||||
calculate = function(player_name)
|
||||
return format_number_n(playerStats["MachinesBuilt"]:get(player_name, 0) / playerStats["MachinesRemoved"]:get(player_name, 1))
|
||||
return format_number_n(PlayerStats["MachinesBuilt"]:get(player_name, 0) / PlayerStats["MachinesRemoved"]:get(player_name, 1))
|
||||
end,
|
||||
},
|
||||
RocketPerHour = {
|
||||
default = format_number_n(0),
|
||||
calculate = function(player_name)
|
||||
return format_number_n(playerStats["RocketsLaunched"]:get(player_name, 0) * 60 / playerStats["Playtime"]:get(player_name, 1))
|
||||
return format_number_n(PlayerStats["RocketsLaunched"]:get(player_name, 0) * 60 / PlayerStats["Playtime"]:get(player_name, 1))
|
||||
end,
|
||||
},
|
||||
TreeKillPerMinute = {
|
||||
default = format_number_n(0),
|
||||
calculate = function(player_name)
|
||||
return format_number_n(playerStats["TreesDestroyed"]:get(player_name, 0) / playerStats["Playtime"]:get(player_name, 1))
|
||||
return format_number_n(PlayerStats["TreesDestroyed"]:get(player_name, 0) / PlayerStats["Playtime"]:get(player_name, 1))
|
||||
end,
|
||||
},
|
||||
NetPlayTime = {
|
||||
default = format_time_short(0),
|
||||
default = short_time_format(0),
|
||||
calculate = function(player_name)
|
||||
return format_time_short((playerStats["Playtime"]:get(player_name, 0) - playerStats["AfkTime"]:get(player_name, 0)))
|
||||
return short_time_format((PlayerStats["Playtime"]:get(player_name, 0) - PlayerStats["AfkTime"]:get(player_name, 0)))
|
||||
end,
|
||||
},
|
||||
AFKTimeRatio = {
|
||||
default = format_number_n(0),
|
||||
calculate = function(player_name)
|
||||
return format_number_n(playerStats["AfkTime"]:get(player_name, 0) * 100 / playerStats["Playtime"]:get(player_name, 1))
|
||||
return format_number_n(PlayerStats["AfkTime"]:get(player_name, 0) * 100 / PlayerStats["Playtime"]:get(player_name, 1))
|
||||
end,
|
||||
},
|
||||
}
|
||||
|
||||
@@ -4,13 +4,13 @@
|
||||
@alias readme
|
||||
]]
|
||||
|
||||
local ExpUtil = require("modules/exp_util")
|
||||
local Event = require("modules/exp_legacy/utils/event") --- @dep utils.event
|
||||
local Gui = require("modules.exp_legacy.expcore.gui") --- @dep expcore.gui
|
||||
local Roles = require("modules.exp_legacy.expcore.roles") --- @dep expcore.roles
|
||||
local Commands = require("modules.exp_legacy.expcore.commands") --- @dep expcore.commands
|
||||
local PlayerData = require("modules.exp_legacy.expcore.player_data") --- @dep expcore.player_data
|
||||
local External = require("modules.exp_legacy.expcore.external") --- @dep expcore.external
|
||||
local format_time = _C.format_time --- @dep expcore.common
|
||||
local format_number = require("util").format_number --- @dep util
|
||||
|
||||
local tabs = {}
|
||||
@@ -109,6 +109,8 @@ local join_server =
|
||||
External.request_connection(player, server_id, true)
|
||||
end)
|
||||
|
||||
local welcome_time_format = ExpUtil.format_time_factory_locale{ format = "long", days = true, hours = true, minutes = true }
|
||||
|
||||
--- Content area for the welcome tab
|
||||
-- @element welcome_content
|
||||
define_tab({ "readme.welcome-tab" }, { "readme.welcome-tooltip" },
|
||||
@@ -139,7 +141,7 @@ define_tab({ "readme.welcome-tab" }, { "readme.welcome-tooltip" },
|
||||
|
||||
-- Add the other information to the gui
|
||||
container.add{ type = "flow" }.style.height = 4
|
||||
local online_time = format_time(game.tick, { days = true, hours = true, minutes = true, long = true })
|
||||
local online_time = welcome_time_format(game.tick)
|
||||
Gui.centered_label(sub_content(container), frame_width, { "readme.welcome-general", server_details.reset_time, online_time })
|
||||
Gui.centered_label(sub_content(container), frame_width, { "readme.welcome-roles", table.concat(role_names, ", ") })
|
||||
Gui.centered_label(sub_content(container), frame_width, { "readme.welcome-chat" })
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
--- research gui
|
||||
-- @gui Research
|
||||
|
||||
local ExpUtil = require("modules/exp_util")
|
||||
local Gui = require("modules.exp_legacy.expcore.gui") --- @dep expcore.gui
|
||||
local Storage = require("modules/exp_util/storage")
|
||||
local Event = require("modules/exp_legacy/utils/event") --- @dep utils.event
|
||||
local Roles = require("modules.exp_legacy.expcore.roles") --- @dep expcore.roles
|
||||
local config = require("modules.exp_legacy.config.research") --- @dep config.research
|
||||
local format_time = _C.format_time --- @dep expcore.common
|
||||
|
||||
local research = {}
|
||||
Storage.register(research, function(tbl)
|
||||
@@ -16,22 +16,8 @@ end)
|
||||
research.time = {}
|
||||
research.res_queue_enable = false
|
||||
|
||||
local research_time_format = {
|
||||
hours = true,
|
||||
minutes = true,
|
||||
seconds = true,
|
||||
time = true,
|
||||
string = true,
|
||||
}
|
||||
|
||||
local empty_time = format_time(0, {
|
||||
hours = true,
|
||||
minutes = true,
|
||||
seconds = true,
|
||||
time = true,
|
||||
string = true,
|
||||
null = true,
|
||||
})
|
||||
local research_time_format = ExpUtil.format_time_factory{ format = "clock", hours = true, minutes = true, seconds = true }
|
||||
local empty_time = research_time_format(nil)
|
||||
|
||||
local font_color = {
|
||||
-- positive
|
||||
@@ -57,7 +43,7 @@ do
|
||||
res["disp"][i] = {
|
||||
raw_name = k,
|
||||
target = res_total,
|
||||
target_disp = format_time(res_total, research_time_format),
|
||||
target_disp = research_time_format(res_total),
|
||||
}
|
||||
|
||||
i = i + 1
|
||||
@@ -118,12 +104,12 @@ local function research_notification(event)
|
||||
end
|
||||
else
|
||||
if not (event.by_script) then
|
||||
game.print{ "expcom-res.inf", format_time(game.tick, research_time_format), event.research.name, event.research.level - 1 }
|
||||
game.print{ "expcom-res.inf", research_time_format(game.tick), event.research.name, event.research.level - 1 }
|
||||
end
|
||||
end
|
||||
else
|
||||
if not (event.by_script) then
|
||||
game.print{ "expcom-res.msg", format_time(game.tick, research_time_format), event.research.name }
|
||||
game.print{ "expcom-res.msg", research_time_format(game.tick), event.research.name }
|
||||
end
|
||||
|
||||
if config.bonus_inventory.enabled then
|
||||
@@ -159,13 +145,13 @@ local function research_gui_update()
|
||||
res_disp[i]["difference_color"] = font_color[1]
|
||||
else
|
||||
res_disp[i]["target"] = res["disp"][res_i].target_disp
|
||||
res_disp[i]["attempt"] = format_time(research.time[res_i], research_time_format)
|
||||
res_disp[i]["attempt"] = research_time_format(research.time[res_i])
|
||||
|
||||
if research.time[res_i] < res["disp"][res_i].target then
|
||||
res_disp[i]["difference"] = "-" .. format_time(res["disp"][res_i].target - research.time[res_i], research_time_format)
|
||||
res_disp[i]["difference"] = "-" .. research_time_format(res["disp"][res_i].target - research.time[res_i])
|
||||
res_disp[i]["difference_color"] = font_color[1]
|
||||
else
|
||||
res_disp[i]["difference"] = format_time(research.time[res_i] - res["disp"][res_i].target, research_time_format)
|
||||
res_disp[i]["difference"] = research_time_format(research.time[res_i] - res["disp"][res_i].target)
|
||||
res_disp[i]["difference_color"] = font_color[2]
|
||||
end
|
||||
end
|
||||
@@ -313,7 +299,7 @@ Event.add(defines.events.on_research_finished, function(event)
|
||||
end)
|
||||
|
||||
Event.on_nth_tick(60, function()
|
||||
local current_time = format_time(game.tick, research_time_format)
|
||||
local current_time = research_time_format(game.tick)
|
||||
|
||||
for _, player in pairs(game.connected_players) do
|
||||
local frame = Gui.get_left_element(player, research_container)
|
||||
|
||||
@@ -4,19 +4,19 @@
|
||||
@alias rocket_info
|
||||
]]
|
||||
|
||||
local ExpUtil = require("modules/exp_util")
|
||||
local Gui = require("modules.exp_legacy.expcore.gui") --- @dep expcore.gui
|
||||
local Roles = require("modules.exp_legacy.expcore.roles") --- @dep expcore.roles
|
||||
local Event = require("modules/exp_legacy/utils/event") --- @dep utils.event
|
||||
local config = require("modules.exp_legacy.config.gui.rockets") --- @dep config.gui.rockets
|
||||
local Colors = require("modules/exp_util/include/color")
|
||||
local Rockets = require("modules.exp_legacy.modules.control.rockets") --- @dep modules.control.rockets
|
||||
local format_time = _C.format_time --- @dep expcore.common
|
||||
|
||||
local time_formats = {
|
||||
caption = function(value) return format_time(value, { minutes = true, seconds = true }) end,
|
||||
caption_hours = function(value) return format_time(value) end,
|
||||
tooltip = function(value) return format_time(value, { minutes = true, seconds = true, long = true }) end,
|
||||
tooltip_hours = function(value) return format_time(value, { hours = true, minutes = true, seconds = true, long = true }) end,
|
||||
caption = ExpUtil.format_time_factory_locale{ format = "short", minutes = true, seconds = true },
|
||||
caption_hours = ExpUtil.format_time_factory_locale{ format = "short", hours = true, minutes = true },
|
||||
tooltip = ExpUtil.format_time_factory_locale{ format = "long", minutes = true, seconds = true },
|
||||
tooltip_hours = ExpUtil.format_time_factory_locale{ format = "long", hours = true, minutes = true, seconds = true },
|
||||
}
|
||||
|
||||
--- Check if a player is allowed to use certain interactions
|
||||
|
||||
@@ -4,15 +4,18 @@
|
||||
@alias science_info
|
||||
]]
|
||||
|
||||
local ExpUtil = require("modules/exp_util")
|
||||
local Gui = require("modules.exp_legacy.expcore.gui") --- @dep expcore.gui
|
||||
local Roles = require("modules.exp_legacy.expcore.roles") --- @dep expcore.gui
|
||||
local Event = require("modules/exp_legacy/utils/event") --- @dep utils.event
|
||||
local config = require("modules.exp_legacy.config.gui.science") --- @dep config.gui.science
|
||||
local Production = require("modules.exp_legacy.modules.control.production") --- @dep modules.control.production
|
||||
local format_time = _C.format_time --- @dep expcore.common
|
||||
|
||||
local null_time_short = { "science-info.eta-time", format_time(0, { hours = true, minutes = true, seconds = true, time = true, null = true }) }
|
||||
local null_time_long = format_time(0, { hours = true, minutes = true, seconds = true, long = true, null = true })
|
||||
local clock_time_format = ExpUtil.format_time_factory_locale{ format = "clock", hours = true, minutes = true, seconds = true }
|
||||
local long_time_format = ExpUtil.format_time_factory_locale{ format = "long", hours = true, minutes = true, seconds = true }
|
||||
|
||||
local null_time_clock = { "science-info.eta-time", clock_time_format(nil) }
|
||||
local null_time_long = long_time_format(nil)
|
||||
|
||||
--- Data label that contains the value and the surfix
|
||||
-- @element production_label
|
||||
@@ -235,16 +238,18 @@ local function get_eta_label_data(player)
|
||||
-- Return the caption and tooltip
|
||||
return limit and limit > 0 and {
|
||||
research = true,
|
||||
caption = format_time(limit, { hours = true, minutes = true, seconds = true, time = true }),
|
||||
tooltip = format_time(limit, { hours = true, minutes = true, seconds = true, long = true }),
|
||||
} or { research = false }
|
||||
caption = clock_time_format(limit),
|
||||
tooltip = long_time_format(limit),
|
||||
} or {
|
||||
research = false
|
||||
}
|
||||
end
|
||||
|
||||
-- Updates the eta label
|
||||
local function update_eta_label(element, eta_label_data)
|
||||
-- If no research selected show null
|
||||
if not eta_label_data.research then
|
||||
element.caption = null_time_short
|
||||
element.caption = null_time_clock
|
||||
element.tooltip = null_time_long
|
||||
return
|
||||
end
|
||||
@@ -293,7 +298,7 @@ local science_info_container =
|
||||
footer.add{
|
||||
name = "label",
|
||||
type = "label",
|
||||
caption = null_time_short,
|
||||
caption = null_time_clock,
|
||||
tooltip = null_time_long,
|
||||
style = "frame_title",
|
||||
}
|
||||
|
||||
@@ -3,13 +3,16 @@
|
||||
@gui Task-List
|
||||
@alias task_list
|
||||
]]
|
||||
|
||||
local ExpUtil = require("modules/exp_util")
|
||||
local Gui = require("modules.exp_legacy.expcore.gui") --- @dep expcore.gui
|
||||
local Event = require("modules/exp_legacy/utils/event") --- @dep utils.event
|
||||
local Roles = require("modules.exp_legacy.expcore.roles") --- @dep expcore.roles
|
||||
local Datastore = require("modules.exp_legacy.expcore.datastore") --- @dep expcore.datastore
|
||||
local config = require("modules.exp_legacy.config.gui.tasks") --- @dep config.gui.tasks
|
||||
local Tasks = require("modules.exp_legacy.modules.control.tasks") --- @dep modules.control.tasks
|
||||
local format_time = _C.format_time --- @dep expcore.common
|
||||
|
||||
local format_time = ExpUtil.format_time_factory_locale{ format = "short", hours = true, minutes = true }
|
||||
|
||||
--- Stores all data for the task gui by player
|
||||
local TaskGuiData = Datastore.connect("TaskGuiData")
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
@alias warp_list
|
||||
]]
|
||||
|
||||
local ExpUtil = require("modules/exp_util")
|
||||
local Gui = require("modules.exp_legacy.expcore.gui") --- @dep expcore.gui
|
||||
local Datastore = require("modules.exp_legacy.expcore.datastore") --- @dep expcore.datastore
|
||||
local Storage = require("modules/exp_util/storage")
|
||||
@@ -12,7 +13,8 @@ local Roles = require("modules.exp_legacy.expcore.roles") --- @dep expcore.roles
|
||||
local Colors = require("modules/exp_util/include/color")
|
||||
local config = require("modules.exp_legacy.config.gui.warps") --- @dep config.gui.warps
|
||||
local Warps = require("modules.exp_legacy.modules.control.warps") --- @dep modules.control.warps
|
||||
local format_time, player_return = _C.format_time, _C.player_return --- @dep expcore.common
|
||||
|
||||
local format_time = ExpUtil.format_time_factory_locale{ format = "short", hours = true, minutes = true }
|
||||
|
||||
--- Stores all data for the warp gui
|
||||
local WrapGuiData = Datastore.connect("WrapGuiData")
|
||||
@@ -94,7 +96,10 @@ local add_new_warp =
|
||||
-- Check if the warp is too close to water
|
||||
local water_tiles = surface.find_tiles_filtered{ collision_mask = "water-tile", radius = config.standard_proximity_radius + 1, position = position }
|
||||
if #water_tiles > 0 then
|
||||
player_return({ "expcore-commands.command-fail", { "warp-list.too-close-to-water", config.standard_proximity_radius + 1 } }, "orange_red", player)
|
||||
player.print(
|
||||
{ "expcore-commands.command-fail", { "warp-list.too-close-to-water", config.standard_proximity_radius + 1 } },
|
||||
{ color = Colors.orange_red }
|
||||
)
|
||||
if game.player then game.player.play_sound{ path = "utility/wire_pickup" } end
|
||||
for _, tile in pairs(water_tiles) do
|
||||
rendering.draw_sprite{
|
||||
@@ -121,7 +126,10 @@ local add_new_warp =
|
||||
}
|
||||
-- Remove 1 because that is the current player
|
||||
if #entities > 1 then
|
||||
player_return({ "expcore-commands.command-fail", { "warp-list.too-close-to-entities", config.standard_proximity_radius + 2.5 } }, "orange_red", player)
|
||||
player.print(
|
||||
{ "expcore-commands.command-fail", { "warp-list.too-close-to-entities", config.standard_proximity_radius + 2.5 } },
|
||||
{ color = Colors.orange_red }
|
||||
)
|
||||
if game.player then game.player.play_sound{ path = "utility/wire_pickup" } end
|
||||
local character = player.character
|
||||
for _, entity in pairs(entities) do
|
||||
|
||||
Reference in New Issue
Block a user