No more warnings

This commit is contained in:
Cooldude2606
2024-09-28 03:46:14 +01:00
parent 32a8ba8f3a
commit 3145f7e904
43 changed files with 215 additions and 177 deletions

View File

@@ -60,7 +60,7 @@ end)
--- Remove the screen gui if it is present
Event.add(defines.events.on_player_joined_game, function(event)
local player = game.get_player(event.player_index)
local player = game.players[event.player_index]
local frame = player.gui.screen["afk-kick"]
if frame and frame.valid then frame.destroy() end
end)

View File

@@ -63,6 +63,7 @@ end
Event.add(defines.events.on_player_died, function(event)
local player = game.players[event.player_index]
local corpse = player.surface.find_entity("character-corpse", player.position)
if not corpse or not corpse.valid then return end
if config.use_chests_as_bodies then
local items = corpse.get_inventory(defines.inventory.character_corpse)
local chest = move_items(items, corpse.surface, corpse.position)

View File

@@ -44,7 +44,7 @@ if config.decon_area then
return
end
local player = game.get_player(e.player_index)
local player = game.players[e.player_index]
if Roles.player_has_flag(player, "deconlog-bypass") then
return
@@ -63,7 +63,7 @@ end
if config.built_entity then
Event.add(defines.events.on_built_entity, function(e)
if not e.player_index then return end
local player = game.get_player(e.player_index)
local player = game.players[e.player_index]
if Roles.player_has_flag(player, "deconlog-bypass") then
return
end
@@ -74,7 +74,7 @@ end
if config.mined_entity then
Event.add(defines.events.on_player_mined_entity, function(e)
local player = game.get_player(e.player_index)
local player = game.players[e.player_index]
if Roles.player_has_flag(player, "deconlog-bypass") then
return
end
@@ -85,11 +85,11 @@ end
if config.fired_rocket then
Event.add(defines.events.on_player_ammo_inventory_changed, function(e)
local player = game.get_player(e.player_index)
local player = game.players[e.player_index]
if Roles.player_has_flag(player, "deconlog-bypass") then
return
end
local ammo_inv = player.get_inventory(defines.inventory.character_ammo)
local ammo_inv = player.get_inventory(defines.inventory.character_ammo) --- @cast ammo_inv -nil
local item = ammo_inv[player.character.selected_gun_index]
if not item or not item.valid or not item.valid_for_read then
return
@@ -102,12 +102,12 @@ end
if config.fired_explosive_rocket then
Event.add(defines.events.on_player_ammo_inventory_changed, function(e)
local player = game.get_player(e.player_index)
local player = game.players[e.player_index]
if Roles.player_has_flag(player, "deconlog-bypass") then
return
end
local ammo_inv = player.get_inventory(defines.inventory.character_ammo)
local ammo_inv = player.get_inventory(defines.inventory.character_ammo) --- @cast ammo_inv -nil
local item = ammo_inv[player.character.selected_gun_index]
if not item or not item.valid or not item.valid_for_read then
@@ -121,13 +121,13 @@ end
if config.fired_nuke then
Event.add(defines.events.on_player_ammo_inventory_changed, function(e)
local player = game.get_player(e.player_index)
local player = game.players[e.player_index]
if Roles.player_has_flag(player, "deconlog-bypass") then
return
end
local ammo_inv = player.get_inventory(defines.inventory.character_ammo)
local ammo_inv = player.get_inventory(defines.inventory.character_ammo) --- @cast ammo_inv -nil
local item = ammo_inv[player.character.selected_gun_index]
if not item or not item.valid or not item.valid_for_read then

View File

@@ -14,7 +14,7 @@ Event.add(defines.events.on_player_mined_entity, function(event)
local item_entity = event.entity.surface.find_entity("item-on-ground", event.entity.drop_position)
if item_entity then
local player = game.get_player(event.player_index)
local player = game.players[event.player_index]
if controllers_with_inventory[player.controller_type] then
player.mine_entity(item_entity)

View File

@@ -7,7 +7,7 @@ local move_items_stack = _C.move_items_stack --- @dep expcore.common
local function clear_items(event)
local player = game.players[event.player_index]
local inv = player.get_main_inventory()
local inv = player.get_main_inventory() --- @cast inv -nil
move_items_stack(inv)
inv.clear()
end

View File

@@ -26,7 +26,7 @@ end
for _, inventory in ipairs(config.inventories) do
if #inventory.items > 0 then
Event.add(inventory.event, function(event)
local player = game.get_player(event.player_index)
local player = game.players[event.player_index]
if player and player.valid then
check_items(player, inventory.inventory)
end

View File

@@ -15,7 +15,7 @@ end)
--- When a protection is triggered increment their counter and jail if needed
Event.add(Protection.events.on_repeat_violation, function(event)
local player = game.get_player(event.player_index)
local player = game.players[event.player_index]
-- Increment the counter
if repeat_count[player.index] then

View File

@@ -16,7 +16,7 @@ local function reporter_playtime(_, by_player_name, _)
end
Event.add(Reports.events.on_player_reported, function(event)
local player = game.get_player(event.player_index)
local player = game.players[event.player_index]
local total_playtime = Reports.count_reports(player, reporter_playtime)
-- player less than 30 min

View File

@@ -62,12 +62,13 @@ local function spawn_turrets()
-- Makes a new turret if it is not found
if not turret or not turret.valid then
turret = surface.create_entity{ name = "gun-turret", position = pos, force = "spawn" }
if not turret then return end
protect_entity(turret)
end
-- Adds ammo to the turret
local inv = turret.get_inventory(defines.inventory.turret_ammo)
if inv.can_insert{ name = config.turrets.ammo_type, count = 10 } then
if inv and inv.can_insert{ name = config.turrets.ammo_type, count = 10 } then
inv.insert{ name = config.turrets.ammo_type, count = 10 }
end
end

View File

@@ -39,7 +39,7 @@ Commands.new_command("admin-marker", { "expcom-admin-marker.description" }, "Tog
--- Listen for new map markers being added, add admin marker if done by player in admin mode
Event.add(defines.events.on_chart_tag_added, function(event)
if not event.player_index then return end
local player = game.get_player(event.player_index)
local player = game.players[event.player_index]
if not admins[player.name] then return end
local tag = event.tag
markers[tag.force.name .. tag.tag_number] = true
@@ -49,7 +49,7 @@ end)
--- Listen for players leaving the game, leave admin mode to avoid unexpected admin markers
Event.add(defines.events.on_player_left_game, function(event)
if not event.player_index then return end
local player = game.get_player(event.player_index)
local player = game.players[event.player_index]
admins[player.name] = nil
end)
@@ -58,7 +58,7 @@ local function maintain_tag(event)
local tag = event.tag
if not event.player_index then return end
if not markers[tag.force.name .. tag.tag_number] then return end
local player = game.get_player(event.player_index)
local player = game.players[event.player_index]
if player.admin then
-- Player is admin, tell them it was an admin marker
Commands.print({ "expcom-admin-marker.edit" }, nil, player)

View File

@@ -33,7 +33,7 @@ end
--- when an area is selected to add protection to the area
Selection.on_selection(SelectionArtyArea, function(event)
local area = aabb_align_expand(event.area)
local player = game.get_player(event.player_index)
local player = game.players[event.player_index]
if player == nil then
return

View File

@@ -63,7 +63,7 @@ Commands.new_command("connect", { "expcom-connect.description" }, "Connect to an
server_id = new_server_id
end
Async(request_connection, player, server_id, true)
request_connection_async(player, server_id, true)
end)
--- Connect a player to a different server

View File

@@ -27,6 +27,7 @@ Commands.new_command("search-help", { "expcom-chelp.description" }, "Searches fo
local player_index = player and player.index or 0
-- if keyword is a number then treat it as page number
if tonumber(keyword) then
--- @diagnostic disable-next-line: param-type-mismatch
page = math.floor(tonumber(keyword))
keyword = ""
end

View File

@@ -88,6 +88,7 @@ Commands.new_command("interface", { "expcom-interface.description" }, "Sends an
-- Compile the invocation with the custom _env value
local invocation_func, compile_error = load(invocation, "interface", nil, _env)
if compile_error then return Commands.error(compile_error) end
--- @cast invocation_func -nil
-- Run the invocation
local success, rtn = pcall(invocation_func)

View File

@@ -28,9 +28,9 @@ local function aabb_point_enclosed(point, aabb)
end
--- Test if an aabb is inside another aabb
local function aabb_area_enclosed(aabbOne, aabbTwo)
return aabb_point_enclosed(aabbOne.left_top, aabbTwo)
and aabb_point_enclosed(aabbOne.right_bottom, aabbTwo)
local function aabb_area_enclosed(aabb_one, aabb_two)
return aabb_point_enclosed(aabb_one.left_top, aabb_two)
and aabb_point_enclosed(aabb_one.right_bottom, aabb_two)
end
--- Align an aabb to the grid by expanding it
@@ -89,8 +89,8 @@ end
--- Remove a render object for a player
local function remove_render(player, key)
local render = renders[player.index][key]
if render and rendering.is_valid(render) then rendering.destroy(render) end
local render = renders[player.index][key] --[[@as LuaRenderObject]]
if render and render.valid then render.destroy() end
renders[player.index][key] = nil
end
@@ -122,7 +122,7 @@ Commands.new_command("protect-area", { "expcom-protection.description-pa" }, "To
--- When an area is selected to add protection to entities
Selection.on_selection(SelectionProtectEntity, function(event)
local player = game.get_player(event.player_index)
local player = game.players[event.player_index]
for _, entity in ipairs(event.entities) do
EntityProtection.add_entity(entity)
show_protected_entity(player, entity)
@@ -133,7 +133,7 @@ end)
--- When an area is selected to remove protection from entities
Selection.on_alt_selection(SelectionProtectEntity, function(event)
local player = game.get_player(event.player_index)
local player = game.players[event.player_index]
for _, entity in ipairs(event.entities) do
EntityProtection.remove_entity(entity)
remove_render(player, get_entity_key(entity))
@@ -146,7 +146,7 @@ end)
Selection.on_selection(SelectionProtectArea, function(event)
local area = aabb_align_expand(event.area)
local areas = EntityProtection.get_areas(event.surface)
local player = game.get_player(event.player_index)
local player = game.players[event.player_index]
for _, next_area in pairs(areas) do
if aabb_area_enclosed(area, next_area) then
return player.print{ "expcom-protection.already-protected" }
@@ -162,7 +162,7 @@ end)
Selection.on_alt_selection(SelectionProtectArea, function(event)
local area = aabb_align_expand(event.area)
local areas = EntityProtection.get_areas(event.surface)
local player = game.get_player(event.player_index)
local player = game.players[event.player_index]
for _, next_area in pairs(areas) do
if aabb_area_enclosed(next_area, area) then
EntityProtection.remove_area(event.surface, next_area)
@@ -175,7 +175,7 @@ end)
--- When selection starts show all protected entities and protected areas
Event.add(Selection.events.on_player_selection_start, function(event)
if event.selection ~= SelectionProtectEntity and event.selection ~= SelectionProtectArea then return end
local player = game.get_player(event.player_index)
local player = game.players[event.player_index]
local surface = player.surface
renders[player.index] = {}
-- Show protected entities
@@ -206,8 +206,8 @@ end)
--- When selection ends hide protected entities and protected areas
Event.add(Selection.events.on_player_selection_end, function(event)
if event.selection ~= SelectionProtectEntity and event.selection ~= SelectionProtectArea then return end
for _, id in pairs(renders[event.player_index]) do
if rendering.is_valid(id) then rendering.destroy(id) end
for _, render in pairs(renders[event.player_index]) do
if render.valid then render.destroy() end
end
renders[event.player_index] = nil

View File

@@ -35,7 +35,7 @@ Commands.new_command("waterfill", { "expcom-waterfill.description" }, "Change ti
--- When an area is selected to add protection to the area
Selection.on_selection(SelectionConvertArea, function(event)
local area = aabb_align_expand(event.area)
local player = game.get_player(event.player_index)
local player = game.players[event.player_index]
if not player then
return

View File

@@ -155,7 +155,7 @@ end
--- Raise events for protected entities
Event.add(defines.events.on_pre_player_mined_item, function(event)
local entity = event.entity
local player = game.get_player(event.player_index)
local player = game.players[event.player_index]
-- Check if the player should be ignored
if config.ignore_admins and player.admin then return end
if entity.last_user == nil or entity.last_user.index == player.index then return end

View File

@@ -146,13 +146,13 @@ end
--- Stop selection if the selection tool is removed from the cursor
Event.add(defines.events.on_player_cursor_stack_changed, function(event)
local player = game.get_player(event.player_index) --- @cast player -nil
local player = game.players[event.player_index] --- @cast player -nil
if player.cursor_stack.is_selection_tool then return end
Selection.stop(player)
end)
--- Stop selection after an event such as death or leaving the game
local function stop_after_event(event)
local player = game.get_player(event.player_index)
local player = game.players[event.player_index]
Selection.stop(player)
end

View File

@@ -46,10 +46,10 @@ function Tasks.add_task(force_name, player_name, task_title, task_body)
force_tasks._uid = force_tasks._uid + 1
-- Get the existing tasks for this force
local task_ids = force_tasks[force_name]
local task_ids = force_tasks[force_name] --[[@as table?]]
if not task_ids then
task_ids = {}
force_tasks[force_name] = task_ids
force_tasks[force_name] = task_ids --[[@as any]]
end
-- Insert the task id into the forces tasks

View File

@@ -17,7 +17,7 @@ CustomMessages:on_load(function(player_name, player_message)
local player = game.players[player_name]
local custom_message = player_message or config[player_name]
if custom_message then
game.print(custom_message, player.color)
game.print(custom_message, { color = player.color })
else
player.print{ "join-message.greet", { "links.discord" } }
end

View File

@@ -185,7 +185,7 @@ Event.on_nth_tick(60, function()
table.insert(force_research, {
name = research.name,
level = research.level,
progress = force.get_saved_technology_progress(research) or 0,
progress = force.technologies[research.name].saved_progress
})
end

View File

@@ -41,10 +41,10 @@ lib.collect_other = function()
local other = lib.data.output[force.name].other or {}
other.evolution = {
evolution_factor = force.evolution_factor,
evolution_factor_by_pollution = force.evolution_factor_by_pollution,
evolution_factor_by_time = force.evolution_factor_by_time,
evolution_factor_by_killing_spawners = force.evolution_factor_by_killing_spawners,
evolution_factor = force.get_evolution_factor(game.surfaces[1]),
evolution_factor_by_pollution = force.get_evolution_factor_by_pollution(game.surfaces[1]),
evolution_factor_by_time = force.get_evolution_factor_by_time(game.surfaces[1]),
evolution_factor_by_killing_spawners = force.get_evolution_factor_by_killing_spawners(game.surfaces[1]),
}
for k, v in pairs(other) do
lib.data.output[force.name].other[k] = v

View File

@@ -78,7 +78,7 @@ local entity_toggle =
element.style = "shortcut_bar_button_green"
end
-- Correct the button size
local style = element.style
local style = element.style --[[@as LuaStyle]]
style.padding = -2
style.height = 22
style.width = 22
@@ -147,7 +147,7 @@ local toggle_item_button =
element.style = "shortcut_bar_button_green"
end
-- Correct the button size
local style = element.style
local style = element.style --[[@as LuaStyle]]
style.right_margin = -3
style.padding = -2
style.height = 32
@@ -322,7 +322,7 @@ local function entity_build(event)
if not entity_settings.enabled then return end
-- Get the inventory of the player
local player_inventory = player.get_main_inventory()
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

View File

@@ -109,7 +109,7 @@ end
--- when an area is selected to add protection to the area
Selection.on_selection(SelectionModuleArea, function(event)
local area = aabb_align_expand(event.area)
local player = game.get_player(event.player_index)
local player = game.players[event.player_index]
local frame = Gui.get_left_element(player, module_container)
local scroll_table = frame.container.scroll.table

View File

@@ -400,7 +400,7 @@ SelectedPlayer:on_update(function(player_name, selected_player)
style = "tool_button"
end
element.style = style
local element_style = element.style
local element_style = element.style --[[@as LuaStyle]]
element_style.padding = -2
element_style.width = 8
element_style.height = 14

View File

@@ -14,7 +14,7 @@ local format_time = _C.format_time --- @dep expcore.common
local format_number = require("util").format_number --- @dep util
local tabs = {}
local function Tab(caption, tooltip, element_define)
local function define_tab(caption, tooltip, element_define)
tabs[#tabs + 1] = { caption, tooltip, element_define }
end
@@ -111,7 +111,7 @@ local join_server =
--- Content area for the welcome tab
-- @element welcome_content
Tab({ "readme.welcome-tab" }, { "readme.welcome-tooltip" },
define_tab({ "readme.welcome-tab" }, { "readme.welcome-tooltip" },
Gui.element(function(_, parent)
local server_details = { name = "ExpGaming S0 - Local", welcome = "Failed to load description: disconnected from external api.", reset_time = "Non Set", branch = "Unknown" }
if External.valid() then server_details = External.get_current_server() end
@@ -149,7 +149,7 @@ Tab({ "readme.welcome-tab" }, { "readme.welcome-tooltip" },
--- Content area for the rules tab
-- @element rules_content
Tab({ "readme.rules-tab" }, { "readme.rules-tooltip" },
define_tab({ "readme.rules-tab" }, { "readme.rules-tooltip" },
Gui.element(function(_, parent)
local container = parent.add{ type = "flow", direction = "vertical" }
@@ -160,7 +160,7 @@ Tab({ "readme.rules-tab" }, { "readme.rules-tooltip" },
container.add{ type = "flow" }
-- Add a table for the rules
local rules = Gui.scroll_table(container, scroll_height, 1)
local rules = Gui.scroll_table(container, scroll_height, 1) --[[@as LuaGuiElement]]
rules.style = "bordered_table"
rules.style.cell_padding = 4
@@ -174,7 +174,7 @@ Tab({ "readme.rules-tab" }, { "readme.rules-tooltip" },
--- Content area for the commands tab
-- @element commands_content
Tab({ "readme.commands-tab" }, { "readme.commands-tooltip" },
define_tab({ "readme.commands-tab" }, { "readme.commands-tooltip" },
Gui.element(function(_, parent)
local container = parent.add{ type = "flow", direction = "vertical" }
local player = Gui.get_player_from_element(parent)
@@ -186,7 +186,7 @@ Tab({ "readme.commands-tab" }, { "readme.commands-tooltip" },
container.add{ type = "flow" }
-- Add a table for the commands
local commands = Gui.scroll_table(container, scroll_height, 2)
local commands = Gui.scroll_table(container, scroll_height, 2) --[[@as LuaGuiElement]]
commands.style = "bordered_table"
commands.style.cell_padding = 0
@@ -201,7 +201,7 @@ Tab({ "readme.commands-tab" }, { "readme.commands-tooltip" },
--- Content area for the servers tab
-- @element servers_content
Tab({ "readme.servers-tab" }, { "readme.servers-tooltip" },
define_tab({ "readme.servers-tab" }, { "readme.servers-tooltip" },
Gui.element(function(_, parent)
local container = parent.add{ type = "flow", direction = "vertical" }
@@ -245,7 +245,7 @@ Tab({ "readme.servers-tab" }, { "readme.servers-tooltip" },
--- Content area for the servers tab
-- @element backers_content
Tab({ "readme.backers-tab" }, { "readme.backers-tooltip" },
define_tab({ "readme.backers-tab" }, { "readme.backers-tooltip" },
Gui.element(function(_, parent)
local container = parent.add{ type = "flow", direction = "vertical" }
@@ -309,7 +309,7 @@ Tab({ "readme.backers-tab" }, { "readme.backers-tooltip" },
--- Content area for the player data tab
-- @element commands_content
Tab({ "readme.data-tab" }, { "readme.data-tooltip" },
define_tab({ "readme.data-tab" }, { "readme.data-tooltip" },
Gui.element(function(_, parent)
local container = parent.add{ type = "flow", direction = "vertical" }
local player = Gui.get_player_from_element(parent)

View File

@@ -74,7 +74,7 @@ end
--- When an area is selected to add protection to the area
Selection.on_selection(SelectionConvertArea, function(event)
local area = aabb_align_expand(event.area)
local player = game.get_player(event.player_index)
local player = game.players[event.player_index]
if not player then
return nil
@@ -99,7 +99,7 @@ Selection.on_selection(SelectionConvertArea, function(event)
local e = entities[1]
local e_pos = { x = string.format("%.1f", e.position.x), y = string.format("%.1f", e.position.y) }
local e_circ = e.circuit_connected_entities
local e_circ = {} -- e.circuit_connected_entities --- TODO use new circuit api
if not e.get_inventory(defines.inventory.chest).is_empty() then
player.print{ "vlayer.steel-chest-empty" }