Created a Full Vertical Circles Module and created a build_pipe app
This commit is contained in:
parent
fccec77a40
commit
33043a6d56
78
Modules/fvcircles.lua
Normal file
78
Modules/fvcircles.lua
Normal file
@ -0,0 +1,78 @@
|
||||
--[[ Modules for generation or building vertical circles in
|
||||
--various forms which are filled. Good for underwater bases
|
||||
--written by TheLux
|
||||
--Check https://i.redd.it/swn3e9w8dyc31.jpg to see
|
||||
--the references for the numbers]]
|
||||
|
||||
-- Check if the modules API is present
|
||||
-- and load it. We need it
|
||||
if not os.loadAPI('modules.lua') then
|
||||
error('Error! modules.lua is missing. Please insert it into turtle.')
|
||||
end
|
||||
|
||||
--initial_full_circle_setup() checks if there is enough
|
||||
--material and sets the turtle to the start
|
||||
--position and places the first block.
|
||||
--Alle circles uses this function
|
||||
function initial_full_circle_setup(omaterial, omaterial_count, imaterial, imaterial_count)
|
||||
-- Check if we have enough material
|
||||
if modules.count_inventory(omaterial) < omaterial_count then
|
||||
error('Error! Not enough blocks of ' .. omaterial)
|
||||
return false
|
||||
end
|
||||
|
||||
if modules.count_inventory(imaterial) < imaterial_count then
|
||||
error('Error! Not enough blocks of ' .. imaterial)
|
||||
return false
|
||||
end
|
||||
|
||||
turtle.up()
|
||||
end
|
||||
|
||||
--fvcircle5 builds a vertical 5 by 5 circle
|
||||
--which are filled with another material
|
||||
function fvcircle5(omaterial, imaterial)
|
||||
-- Start the initial Setup and place the turtle in
|
||||
-- the right position
|
||||
fvcircles.initial_full_circle_setup(omaterial, 12, imaterial, 9)
|
||||
|
||||
-- First Row
|
||||
turtle.turnLeft()
|
||||
turtle.back()
|
||||
turtle.back()
|
||||
for i = 1, 3 do
|
||||
modules.select_and_place_down(omaterial)
|
||||
turtle.forward()
|
||||
end
|
||||
turtle.up()
|
||||
-- Second and Third and Fourth Row
|
||||
for i = 1, 3 do
|
||||
turtle.turnLeft()
|
||||
turtle.turnLeft()
|
||||
modules.select_and_place_down(omaterial)
|
||||
turtle.forward()
|
||||
modules.select_and_place_down(imaterial)
|
||||
turtle.forward()
|
||||
modules.select_and_place_down(imaterial)
|
||||
turtle.forward()
|
||||
modules.select_and_place_down(omaterial)
|
||||
turtle.up()
|
||||
end
|
||||
|
||||
-- Fifth and last row
|
||||
turtle.turnLeft()
|
||||
turtle.turnLeft()
|
||||
for i = 1, 3 do
|
||||
turtle.forward()
|
||||
modules.select_and_place_down(omaterial)
|
||||
end
|
||||
turtle.turnRight()
|
||||
turtle.forward()
|
||||
for i = 1, 5 do
|
||||
turtle.down()
|
||||
end
|
||||
|
||||
print('Done building a filled and vertical 5 by 5 circle')
|
||||
end
|
||||
|
||||
|
27
Underwater_Base/build_pipe.lua
Normal file
27
Underwater_Base/build_pipe.lua
Normal file
@ -0,0 +1,27 @@
|
||||
--[[ App for building an underwater Pipe
|
||||
--written by TheLux
|
||||
--Check https://i.redd.it/swn3e9w8dyc31.jpg to see
|
||||
--the references for the numbers]]
|
||||
|
||||
--- Check if the fvcircles API is present
|
||||
-- and load it. We need it
|
||||
if not os.loadAPI('fvcircles.lua') then
|
||||
error('Error! fvcircles.lua is missing. Please insert it into turtle.')
|
||||
end
|
||||
|
||||
print("How many pipes do you want to build: ")
|
||||
local pipes = read()
|
||||
|
||||
print("What should be the outer Material (ex. glass): ")
|
||||
local omaterial = read()
|
||||
|
||||
print("What should be the inner Material (ex. sand): ")
|
||||
local imaterial = read()
|
||||
|
||||
print("Building a " .. pipes .. " blocks long tunnel")
|
||||
for i = 1, pipes do
|
||||
turtle.down()
|
||||
fvcircles.fvcircle5(omaterial, imaterial)
|
||||
end
|
||||
|
||||
print("Done build the tunnel")
|
Loading…
Reference in New Issue
Block a user