Merge pull request #260 from PHIDIAS0303/dev7

clear blueprint and clear item on ground
This commit is contained in:
Cooldude2606
2023-12-21 21:35:53 +00:00
committed by GitHub
3 changed files with 38 additions and 2 deletions

View File

@@ -44,6 +44,7 @@ return {
'modules.commands.vlayer',
'modules.commands.enemy',
'modules.commands.waterfill',
'modules.commands.surface-clearing',
--- Addons
'modules.addons.chat-popups',

View File

@@ -230,8 +230,10 @@ Roles.new_role('Member','Mem')
'command/auto-research',
'command/manual-train',
'command/lawnmower',
'gui/surveillance',
'command/waterfill'
'command/waterfill',
'command/clear-item-on-ground',
'command/clear-blueprint',
'gui/surveillance'
}
local hours3, hours15 = 3*216000, 15*60

View File

@@ -0,0 +1,33 @@
--[[-- Commands Module - Clear Item On Ground
- Adds a command that clear item on ground so blueprint can deploy safely
@commands Clear Item On Ground
]]
local copy_items_stack = _C.copy_items_stack --- @dep expcore.common
local Commands = require 'expcore.commands' --- @dep expcore.commands
require 'config.expcore.command_general_parse'
Commands.new_command('clear-item-on-ground', 'Clear Item On Ground')
:add_param('range', false, 'integer-range', 1, 1000)
:register(function(player, range)
for _, e in pairs(player.surface.find_entities_filtered{position=player.position, radius=range, name='item-on-ground'}) do
if e.stack then
-- calling move_items_stack(e.stack) will crash to desktop
-- https://forums.factorio.com/viewtopic.php?f=7&t=110322
copy_items_stack{e.stack}
e.stack.clear()
end
end
return Commands.success
end)
Commands.new_command('clear-blueprint', 'Clear Blueprint')
:add_param('range', false, 'integer-range', 1, 1000)
:register(function(player, range)
for _, e in pairs(player.surface.find_entities_filtered{position=player.position, radius=range, type='entity-ghost'}) do
e.destroy()
end
return Commands.success
end)