added sort_items and code cleanup
This commit is contained in:
parent
21b3cce893
commit
e8d03a1211
@ -1,6 +1,7 @@
|
||||
--[[Function Module program by Al Sweigart
|
||||
Provides useful utility functions.]]
|
||||
|
||||
|
||||
-- selectItem() selects the inventory
|
||||
-- slot with the named item, returns
|
||||
-- true if found and false if not
|
||||
@ -34,6 +35,7 @@ function select_emptySlot()
|
||||
return false -- couldn't find empty space
|
||||
end
|
||||
|
||||
|
||||
-- countInventory() returns the total
|
||||
-- number of a given minecraft id item in the inventory
|
||||
function count_inventory(minecraft_id, times)
|
||||
@ -48,6 +50,7 @@ function count_inventory(minecraft_id, times)
|
||||
return total
|
||||
end
|
||||
|
||||
|
||||
-- selectAndPlaceDown() selects a slot with given
|
||||
-- minecraft id and places a block from it under the turtle
|
||||
function select_and_place_down(minecraft_id)
|
||||
@ -107,6 +110,7 @@ function build_wall(length, height)
|
||||
return true
|
||||
end
|
||||
|
||||
|
||||
-- build_room() constructs four walls
|
||||
-- and a ceiling
|
||||
function build_room(length, width, height)
|
||||
@ -131,6 +135,7 @@ function build_room(length, width, height)
|
||||
return true
|
||||
end
|
||||
|
||||
|
||||
-- sweepField() moves acress the rows
|
||||
-- and columns of an area in front and
|
||||
-- to the right of the turtle, calling
|
||||
@ -181,6 +186,7 @@ function sweepField(length, width, sweepFunc)
|
||||
return true
|
||||
end
|
||||
|
||||
|
||||
--findBlock() spins around searching
|
||||
--for the named block next to the turtle
|
||||
function findBlock(name)
|
||||
@ -196,6 +202,7 @@ function findBlock(name)
|
||||
return false
|
||||
end
|
||||
|
||||
|
||||
-- puke() puke everything that is in the turtles
|
||||
-- inventory out in front of it (hopefully there is
|
||||
-- a chest
|
||||
@ -206,6 +213,7 @@ function puke()
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
-- Check Fuel checks if the turtle has enough fuel.
|
||||
-- if not, it asks for fuel in slot 1 and refuels.
|
||||
function check_fuel()
|
||||
@ -221,3 +229,20 @@ function check_fuel()
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
-- sort_items() stacks all items of the same ID
|
||||
-- into one stack
|
||||
function sort_items()
|
||||
for i = 1, 16 do
|
||||
turtle.select(i)
|
||||
item1 = turtle.getItemDetail()
|
||||
for j = i+1, 16 do
|
||||
item2 = turtle.getItemDetail(j)
|
||||
if item1 ~= nil and item2 ~= nil and item1['name'] == item2['name'] then
|
||||
turtle.select(j)
|
||||
turtle.transferTo(i)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
end
|
Loading…
Reference in New Issue
Block a user