Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local r = require("robot")
- local c = require("component")
- local computer = require("computer")
- local g = c.geolyzer
- --local gen = c.generator
- rmin = 2,3
- rmax = 2,7
- height = 64
- fuel = 0
- xO = 0
- yO = 0
- zO = 0
- fO = 3
- coal = 64 * 1
- -----
- function go()
- while not r.forward() do
- r.swing()
- end
- end
- function goup()
- while not r.up do
- r.swingUp()
- end
- end
- --
- function godown()
- while not r.down() do
- r.swingDown()
- end
- end
- -----
- function gotospot(x, y, z)
- xO = xO + x
- yO = yO + y
- zO = zO + z
- if x < 0 then
- p = 1
- x = 0 - x
- else
- p = 3
- end
- while fO ~= p do
- r.turnRight()
- fO = (fO + 1) % 4
- end
- for i1 = 1, x do
- go()
- end
- if y < 0 then
- p = 2
- y = 0 - y
- else
- p = 0
- end
- while fO ~= p do
- r.turnRight()
- fO = (fO + 1) % 4
- end
- for i2 = 1, y do
- go()
- end
- if z < 0 then
- z = 0 - z
- for i3 = 1, z do
- godown()
- end
- else
- for i3 = 1, z do
- goup()
- end
- end
- -- while not fO ~= 3 do
- -- r.turnRight()
- end
- end
- -----------
- function scan( XR, YR, ZR )
- for x = 1, 5 do
- for y = 1, 5 do
- scanresult = g.scan(x, y)
- for z = 1, height do
- if scanresult[64 - z + 1] > rmin and scanresult[64 - z + 1] < rmax then
- XR = XR + x
- YR = YR + y
- ZR = ZR + z
- z = 32 - z
- gotospot(x, y, z)
- scan(XR, YR, ZR) --!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
- return 0
- end
- end
- end
- end
- gotospot(-XR, -YR, -ZR)
- end
- --function checkfuel()
- -- if (computer.maxEnergy() - computer.energy()) > 1000 then
- -- for i=1, 32 do
- -- robot.select(i)
- -- if gen.insert() then
- -- fuel = fuel + 1000
- -- checkfuel()
- -- else
- -- if fuel > 1000000 then
- -- comeback()
- -- end
- -- end
- -- end
- -- end
- --end
- function comeback()
- gotospot(xO, yO, zO)
- end
- function main()
- -- fuel = 1000000 + coal * 1000
- for i = 1, -1 do
- -- checkfuel()
- scan(0, 0, 0)
- gotospot(10, 0 , 0)
- end
- end
- gotospot(-1, -1, 1)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement