Advertisement
Ganeesya

ttsort

Mar 28th, 2015
696
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.35 KB | None | 0 0
  1. function jage( v, t, x )
  2.     if math.abs( v.max_dmg - v.dmg - t.dmg )
  3.         > math.abs( v.max_dmg - v.dmg - x.dmg ) then
  4.         return true
  5.     else
  6.         return false
  7.     end
  8. end
  9.  
  10. function AllDrop()
  11.     for i = 1, 16 do
  12.         if turtle.getItemCount(i) > 0 then
  13.             -- turtle.select(i)
  14.             -- turtle.dropUp()
  15.             chest.pullItem("down",i)
  16.         end
  17.     end
  18.     turtle.select(1)
  19. end
  20.  
  21. chest = peripheral.wrap("top")
  22. if chest then
  23.     while true do
  24.         local list = chest.getAllStacks()
  25.         for k, v in pairs(list) do
  26.             if v.all().max_dmg == 0 or v.all().dmg == 0 then
  27.                 chest.pushItem("up",k)
  28.                 list[k].out = "out"
  29.             end
  30.         end
  31.  
  32.         for k, v in pairs(list) do
  33.             if v.all().raw_name ~= "" then
  34.                 local targetN = -1
  35.                 for l, x in pairs(list) do
  36.                     if k < l and v.all().raw_name == x.all().raw_name and not v.out and not x.out then
  37.                         -- if targetN == -1 then
  38.                         --  targetN = l
  39.                         -- elseif jage(v,list[targetN],x) then
  40.                         --  targetN = l
  41.                         -- end
  42.                         targetN = l
  43.                         break
  44.                     end
  45.                 end
  46.  
  47.                 if targetN ~= -1 then
  48.                     -- write("("..k..","..targetN.. ")")
  49.                     AllDrop()          
  50.                     chest.pushItem("down",k)
  51.                     chest.pushItem("down",targetN)
  52.                     turtle.craft()
  53.                     AllDrop()
  54.                     list[k].out = "out"
  55.                     list[targetN].out = "out"
  56.                     sleep(1)
  57.                 end
  58.             end
  59.         end
  60.  
  61.         sleep(1)
  62.     end
  63. else
  64.     write("need 2 chest on turtle\nC\nC\nT\n")
  65. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement