Advertisement
Bendix

MC BloodAltar füllen

Mar 25th, 2016
140
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 3.12 KB | None | 0 0
  1. --TurtleScript um den Bloodaltar bei Minecraft zu fuellen
  2. --Version 0.3
  3. --VersionsHistorie am ende des scripts
  4.  
  5. function SortInventory()
  6.    if turtle.getItemCount(1) < 1 then
  7.       for x=16,1,-1 do
  8.          TurtleItemSlot = turtle.getItemCount(x)
  9.          if TurtleItemSlot > 0 then
  10.             print("Brauche Nachschub in Slot 1")
  11.             turtle.select(x)
  12.             break
  13.          end
  14.       end
  15.       turtle.transferTo(1)
  16.    end
  17. turtle.select(1)
  18. end
  19.  
  20.  
  21. function detectDevice(DeviceName)
  22.   DeviceSide="nix"
  23.    for a,b in pairs(redstone.getSides()) do
  24.       if peripheral.getType(b)==DeviceName then
  25.          DeviceSide = b
  26.          break
  27.       end
  28.    end
  29.    return(DeviceSide)
  30. end
  31.  
  32.  
  33. altar = peripheral.wrap(detectDevice("tealtar"))
  34. monitor = peripheral.wrap(detectDevice("monitor"))
  35. if monitor then
  36.       term.clear()
  37.       term.setCursorPos(1,1)      
  38.       print("Ausgabe auf Monitor umgelenkt")
  39.       print("am besten mit 4 Monitoren in Reihe nutzen")
  40. end
  41.  
  42. function pyra()
  43. term.clear()
  44. term.setCursorPos(1,1)
  45. print("######################################")
  46. print("##################^###################")
  47. print("#################/ \\##################")
  48. print("################/   \\#################")
  49. print("###############/     \\################")
  50. print("##############/       \\###############")
  51. print("#############/_________\\##############")
  52. print("######################################")
  53. print("##### Du hast einen Beitrag des ######")
  54. print("####### Pyramidalist Projekts ########")
  55. print("############# entdeckt ###############")
  56. print("######################################")
  57.  
  58. sleep(5)
  59. end
  60.  
  61. function monitorDim() -- wird irgendwann mal benutzt um die Schriftgroeße automatisch anzupassen
  62.    if monitor then
  63.       term.redirect(monitor)
  64.    end
  65. end
  66. pyra()
  67. while true do
  68.    monitorDim()
  69. -- VarTurtleItem ist nur für den Namen des Items welches der Turtle hat
  70.    if turtle.getItemCount(1) > 0 then
  71.       VarTurtleItem = turtle.getItemDetail(1)
  72.       VarTurtleItem = VarTurtleItem.name
  73.       VarTurtleItem = string.sub(VarTurtleItem,string.find(VarTurtleItem,":")+1)
  74.    else
  75.       VarTurtleItem = "leer"
  76.    end
  77. -- Namen herausgefunden
  78.    VarItem = altar.getStackInSlot(1)
  79.    VarTank = altar.getInfo()
  80.  
  81.    if VarItem == nil then
  82.       if VarTank.capacity - VarTank.contents.amount == 0 then
  83.          if turtle.getItemCount(1) > 0 then
  84.             print("Tank ist voll, schubse ", VarTurtleItem, " rein")
  85.             turtle.drop(1)
  86.             sleep(1)
  87.          else
  88.             print("Bitte gib mir Items zum schubsen")
  89.          end
  90.       else
  91.       print(VarTank.capacity - VarTank.contents.amount, " bis der Tank mit ", VarTank.capacity, " voll ist")
  92.       end
  93.    else
  94.    term.clear()
  95.    term.setCursorPos(1,1)
  96.    print("Da ist ein Item im Tank.")
  97.    print("Im Tank sind gerade ", VarTank.contents.amount, " / ", VarTank.capacity, " LP")
  98. end
  99. SortInventory()
  100. sleep(2)
  101. end
  102.  
  103. --Version 0.3 Anzeige auf Monitor
  104. --Version 0.2 Funktion hinzugefügt um alle Slots des Turtle nutzen zu können
  105. --            Texte angepasst
  106. --Version 0.1 Erste funktionierende Version
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement