mirror of
https://github.com/PHIDIAS0303/ExpCluster.git
synced 2025-12-27 03:25:23 +09:00
Refactor legacy addons into Clusterio format (#413)
* Refactor custom start * Refactor afk kick * Fix use of assert get player * Refactor chat popup * Refactor chat auto reply * Refactor help bubbles * Refactor damage popups * Refactor death markers * Refactor deconstruction log * Remove FAGC logging * Refactor discord alerts * Refactor insert pickup * Refactor inventory clear * Refactor extra logging * Refactor nuke protection * Refactor pollution grading * Refactor protection jail * Refactor report jail * Refactor mine depletion * Refactor degrading tiles * Refactor station auto name * Refactor spawn area * Refactor fast deconstruction * Bug Fixes
This commit is contained in:
34
exp_scenario/module/control/inserter_pickup.lua
Normal file
34
exp_scenario/module/control/inserter_pickup.lua
Normal file
@@ -0,0 +1,34 @@
|
||||
--[[-- Control Insert Pickup
|
||||
Automatically pick up the items in the inserts hand when you mine it
|
||||
]]
|
||||
|
||||
local controllers_with_inventory = {
|
||||
[defines.controllers.character] = true,
|
||||
[defines.controllers.god] = true,
|
||||
[defines.controllers.editor] = true,
|
||||
}
|
||||
|
||||
--- @param event EventData.on_player_mined_entity
|
||||
local function on_player_mined_entity(event)
|
||||
local entity = event.entity
|
||||
if not entity.valid or entity.type ~= "inserter" or entity.drop_target then
|
||||
return
|
||||
end
|
||||
|
||||
local item_entity = entity.surface.find_entity("item-on-ground", entity.drop_position)
|
||||
|
||||
if item_entity then
|
||||
local player = assert(game.get_player(event.player_index))
|
||||
if controllers_with_inventory[player.controller_type] then
|
||||
player.mine_entity(item_entity)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
local e = defines.events
|
||||
|
||||
return {
|
||||
events = {
|
||||
[e.on_player_mined_entity] = on_player_mined_entity
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user