Hallo,
ich habe in Minecraft den Forestry Mod (Bienen) und ComputerCraft
drauf und wollte ein Programm erstellen, dass die Bienenarten und
die Anzahl der Bienen anzeigt und schreiben kann.
Beim Schreiben bekomme ich den Fehler "Too long without yielding"
Der Fehler befindet sich in der Zeile 64.
"Code"
P.S.: Habe die Datei vorher nicht erstellt.
Hoffe, jemand kann helfen.
MFG
Alex-Digital
ich habe in Minecraft den Forestry Mod (Bienen) und ComputerCraft
drauf und wollte ein Programm erstellen, dass die Bienenarten und
die Anzahl der Bienen anzeigt und schreiben kann.
Beim Schreiben bekomme ich den Fehler "Too long without yielding"
Der Fehler befindet sich in der Zeile 64.
Quellcode
- function explode(div,str)
- if(div=='') then return false end
- local pos,arr = 0,{}
- for st,sp in function() return string.find(str,div,pos,true) end do
- table.insert(arr,string.sub(str,pos,st-1))
- pos = sp + 1
- end
- table.insert(arr,string.sub(str,pos))
- return arr
- end
- function add(str,num)
- first = explode(",",str)[0]
- ersetzt = tonumber(first) + tonumber(num)
- added = string.gsub(str,first,ersetzt)
- return added
- end
- local beesfile
- function write(k,v)
- if v == nil then
- return false
- else
- beesfile.writeLine(v)
- return true
- end
- end
- while true do
- term.clear()
- term.setCursorPos(1,1)
- print("BeeOS 1.0")
- print("What do you want?")
- input = read()
- if input == "read" then
- if fs.exists("bees") == true then
- file = fs.open("bees","r")
- print(file.readAll)
- file.close()
- else
- print("File doesn't exist")
- print("Press enter to continue")
- leer = read()
- end
- end
- if input == "write" then
- print("How many bees?")
- count = tonumber(read())
- print("What color they have?")
- color = read()
- wfile = fs.open("bees","w")
- wfile.close()
- file = fs.open("bees","r")
- local beenden = true
- local speichern = {}
- while beenden == true do
- lesen = file.readLine()
- if lesen == nil then
- beenden = true
- else
- if string.find(lesen,color) == true then
- table.insert(speichern,add(lesen,count))
- else
- table.insert(speichern,lesen)
- end
- end
- end
- if fs.exists("bees") == true then
- fs.delete("bees")
- end
- beesfile = fs.open("bees","w")
- table.foreach(speichern,write)
- beesfile.close()
- print("Writed successfully!")
- print("Press enter to continue")
- leer = read()
- end
- if input == "delete" then
- fs.delete("bees")
- print("Deleted successfully!")
- print("Press enter to continue")
- leer = read()
- end
- end
P.S.: Habe die Datei vorher nicht erstellt.
Hoffe, jemand kann helfen.
MFG
Alex-Digital
~ Alex-Digital :D
if(!Internet.VBP.Get<User>("Alex-Digital").IsOnline) this.Close();