rednet.open("left")
local turtleID = 0
local file = fs.open("disk/items.txt","r")
CurrItems = textutils.unserialise(file.readAll())
file.close()
if (fs.exists("Config.txt")) then
local file = fs.open("Config.txt","r")
file.readLine()
turtleID = file.readLine()
else
while not (tonumber(turtleID) and tonumber(turtleID) > 0) do
term.clear()
term.setCursorPos(1,1)
term.write("Turtle ID: ")
turtleID = read()
if not (tonumber(turtleID)) then
print("Not a number!")
sleep(1)
end
end
local file = fs.open("Config.txt","a")
file.close()
file = fs.open("Config.txt","w")
file.writeLine("TurtleID: ")
file.write(turtleID)
file.close()
end
chatbox = peripheral.wrap("bottom")
chatbox.setName("ItemRouter")
function fetchItem(item, itemAmount)
if (checkItem(item)) then
item = CurrItems[item]
rednet.send(tonumber(turtleID), {item, itemAmount})
return true
else
return false
end
end
function checkItem(item)
if (CurrItems[item] ~= nil) then
print(CurrItems[item])
return true
else
return false
end
end
while true do
getitem = false
cmd = ""
item = ""
itemAmount = ""
term.clear()
term.setCursorPos(1,1)
print("Computer ID: "..os.getComputerID())
print("Turtle ID: "..turtleID)
print("Type 'item' to get an item, type 'list' to get a list of all the items")
event, side, name, cmd = os.pullEvent("chat_message")
if (cmd ~= "getItem list") then
if (name == "FireDemonite" or name == "aleroqu") then
for w in string.gmatch(cmd, "%d+") do
itemAmount = w
end
for w in string.gmatch(cmd, "%a+") do
if ( w == "getItem") then
getitem = true
end
if (getitem and w ~= "getItem") then
item = item.." "..w
end
end
item = string.sub(item,2)
crafting = false
--print("Item: "..item.." Amount: "..itemAmount)
if (getitem and crafting == false) then
term.clear()
term.setCursorPos(1,1)
sleep(1)
chatbox.say("Item: "..item)
term.write("Item: "..item)
sleep(1)
chatbox.say("Amount: "..itemAmount)
print("ItemAmount: "..itemAmount)
if (fetchItem(item, tonumber(itemAmount))) then
print("Getting items...")
sleep(5)
else
print("Not an exisiting item")
chatbox.say("Not a valid item")
sleep(1)
end
end
end
else
i = 1
for k,v in pairs(CurrItems) do
--chatbox.say(k)
if (i>1) then
list = list..", "..k
else
list = k
end
i = i + 1
end
--list = list.sub(list,2)
sleep(1)
chatbox.say(list)
end
end
Comments