Posted 08 April 2013 - 07:58 AM
Hello i am a beginner in [LUA]
i hope the community can help me
i foun a very good script it is from Jaffa
(Jaffa's attack turtle program
– Version: 1.0.1.0)
and i wanna change it a little bit that i can use it for a Mining Turtle to make a auto cobblestonegenerator (with a filter in the back of the turtle and both are connected with 2x jacketwire)
all functions work only check () doesent work
i try to say the turtle every time u get in slot 1 64 cobble stone send a redstone signal to the Filter the the filter suck 64 cobble to the chest (barrel)
i have change many but still not work i hope u all can help me.
Code:
– Version: 1.0.1.0
local hits = 0
local tries = 0
local movemode = false
local moveallowed = false
local tstop
local ignoredkeys = {["2"]=true, ["5"]=true, ["8"]=true}
local waittext = " - Wait"
local args = { … }
if args[1] == "movemodeon" then movemode = true end
if movemode == true then
local tx, ty = term.getCursorPos()
term.setCursorPos(1 ,ty - 1)
term.clearLine()
print("Jaffa's Attack programm")
end
function check()
if turtle.getItemCount(1) > 0 then for i =64, 1 do
turtle.select(i)
end
end
end
if turtle.select(1) then
rs.setOutput("top", true)
sleep(2)
rs.setOutput("top", false)
end
function keywait ()
while not tstop do
local event,key = os.pullEvent()
if (event == "key") and (key == 203) then
if not turtle.turnLeft() then print("Error turning left") end
elseif (event == "key") and (key == 205) then
if not turtle.turnRight() then print("Error turning right") end
elseif (event == "key") and (key == 200) and (moveallowed == true) then
if not turtle.forward() then print("Error moving forward") end
elseif (event == "key") and (key == 208) and (moveallowed == true) then
if not turtle.back() then print("Error moving back") end
elseif (event == "key") and (key == 76) and (movemode == true) then
if moveallowed == true then
moveallowed = false
print("Move lock enabled")
else
moveallowed = true
print("Move lock disbled")
end
elseif (event == "key") and (key == 72) and (moveallowed == true) then
if not turtle.up() then print("Error moving up") end
elseif (event == "key") and (key == 80) and (moveallowed == true) then
if not turtle.down() then print("Error moving down") end
– elseif (event == "char") and (not ignoredkeys[key]) then
– tstop = true
elseif (event == "char") and (key == "s") then
tstop = true
write(waittext)
end
end
end
function dig ()
while not tstop do
if turtle.digDown() then
hits = hits +1
else
sleep(0.1)
end
tries = tries + 1
end
end
function stats ()
local tx,ty = term.getCursorPos()
while not tstop do
sleep(2)
local percentage = (hits/tries) * 100
term.setCursorPos(1,ty)
term.clearLine()
term.setCursorPos(1,ty)
write("Hits: ")
write(hits)
write("/")
write(tries)
write(" (")
write(percentage)
write("%)")
end
write(waittext)
end
turtle.select(1)
print("Press S to stop the program.")
parallel.waitForAll(check,keywait,dig,stats)
local mx,my = term.getCursorPos()
term.setCursorPos((mx - string.len(waittext)),my)
print("")
print(" \\e/ ")
Sorry when i missed something i am really a beginner
i hope the community can help me
i foun a very good script it is from Jaffa
(Jaffa's attack turtle program
– Version: 1.0.1.0)
and i wanna change it a little bit that i can use it for a Mining Turtle to make a auto cobblestonegenerator (with a filter in the back of the turtle and both are connected with 2x jacketwire)
all functions work only check () doesent work
i try to say the turtle every time u get in slot 1 64 cobble stone send a redstone signal to the Filter the the filter suck 64 cobble to the chest (barrel)
i have change many but still not work i hope u all can help me.
Code:
Spoiler
– Jaffa's attack(digging) turtle program– Version: 1.0.1.0
local hits = 0
local tries = 0
local movemode = false
local moveallowed = false
local tstop
local ignoredkeys = {["2"]=true, ["5"]=true, ["8"]=true}
local waittext = " - Wait"
local args = { … }
if args[1] == "movemodeon" then movemode = true end
if movemode == true then
local tx, ty = term.getCursorPos()
term.setCursorPos(1 ,ty - 1)
term.clearLine()
print("Jaffa's Attack programm")
end
function check()
if turtle.getItemCount(1) > 0 then for i =64, 1 do
turtle.select(i)
end
end
end
if turtle.select(1) then
rs.setOutput("top", true)
sleep(2)
rs.setOutput("top", false)
end
function keywait ()
while not tstop do
local event,key = os.pullEvent()
if (event == "key") and (key == 203) then
if not turtle.turnLeft() then print("Error turning left") end
elseif (event == "key") and (key == 205) then
if not turtle.turnRight() then print("Error turning right") end
elseif (event == "key") and (key == 200) and (moveallowed == true) then
if not turtle.forward() then print("Error moving forward") end
elseif (event == "key") and (key == 208) and (moveallowed == true) then
if not turtle.back() then print("Error moving back") end
elseif (event == "key") and (key == 76) and (movemode == true) then
if moveallowed == true then
moveallowed = false
print("Move lock enabled")
else
moveallowed = true
print("Move lock disbled")
end
elseif (event == "key") and (key == 72) and (moveallowed == true) then
if not turtle.up() then print("Error moving up") end
elseif (event == "key") and (key == 80) and (moveallowed == true) then
if not turtle.down() then print("Error moving down") end
– elseif (event == "char") and (not ignoredkeys[key]) then
– tstop = true
elseif (event == "char") and (key == "s") then
tstop = true
write(waittext)
end
end
end
function dig ()
while not tstop do
if turtle.digDown() then
hits = hits +1
else
sleep(0.1)
end
tries = tries + 1
end
end
function stats ()
local tx,ty = term.getCursorPos()
while not tstop do
sleep(2)
local percentage = (hits/tries) * 100
term.setCursorPos(1,ty)
term.clearLine()
term.setCursorPos(1,ty)
write("Hits: ")
write(hits)
write("/")
write(tries)
write(" (")
write(percentage)
write("%)")
end
write(waittext)
end
turtle.select(1)
print("Press S to stop the program.")
parallel.waitForAll(check,keywait,dig,stats)
local mx,my = term.getCursorPos()
term.setCursorPos((mx - string.len(waittext)),my)
print("")
print(" \\e/ ")
Sorry when i missed something i am really a beginner