]> git.lizzy.rs Git - invutil.git/blob - init.lua
Initial Commit
[invutil.git] / init.lua
1 minetest.register_globalstep(function(dtime)
2         local player = minetest.localplayer
3         if not player then return end
4         local item = player:get_wielded_item()
5         local itemdef = minetest.get_item_def(item:get_name())
6         local wieldindex = player:get_wield_index()
7         if minetest.settings:get_bool("autorefill") and itemdef then
8                 local space = item:get_free_space()
9                 local i = minetest.find_item(item:get_name(), wieldindex + 1)
10                 if i and space > 0 then
11                         local invact = InventoryAction("move")
12                         invact:to("current_player", "main", wieldindex)
13                         invact:from("current_player", "main", i)
14                         invact:set_count(space)
15                         invact:apply()
16                 end
17         end
18         if minetest.settings:get_bool("autoeject") then
19                 local invact = InventoryAction("drop")
20                 local list = (minetest.settings:get("eject_items") or ""):split(",")
21                 local inventory = minetest.get_inventory("current_player")
22                 for index, stack in pairs(inventory.main) do
23                         if table.indexof(list, stack:get_name()) ~= -1 then
24                                 invact:from("current_player", "main", index)
25                                 invact:apply()
26                         end
27                 end
28         end
29 end)
30
31 minetest.register_list_command("eject", "Configure AutoEject", "eject_items") 
32
33 minetest.register_cheat("AutoRefill", "Inventory", "autorefill")
34 minetest.register_cheat("AutoEject", "Inventory", "autoeject")