Advertisement
TechManDylan

ConcreteMaker

Jun 20th, 2024
662
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 2.73 KB | None | 0 0
  1. -- List of all concrete powder and concrete block names
  2. local concretePowderNames = {
  3.     "minecraft:white_concrete_powder",
  4.     "minecraft:orange_concrete_powder",
  5.     "minecraft:magenta_concrete_powder",
  6.     "minecraft:light_blue_concrete_powder",
  7.     "minecraft:yellow_concrete_powder",
  8.     "minecraft:lime_concrete_powder",
  9.     "minecraft:pink_concrete_powder",
  10.     "minecraft:gray_concrete_powder",
  11.     "minecraft:light_gray_concrete_powder",
  12.     "minecraft:cyan_concrete_powder",
  13.     "minecraft:purple_concrete_powder",
  14.     "minecraft:blue_concrete_powder",
  15.     "minecraft:brown_concrete_powder",
  16.     "minecraft:green_concrete_powder",
  17.     "minecraft:red_concrete_powder",
  18.     "minecraft:black_concrete_powder"
  19. }
  20.  
  21. local concreteNames = {
  22.     "minecraft:white_concrete",
  23.     "minecraft:orange_concrete",
  24.     "minecraft:magenta_concrete",
  25.     "minecraft:light_blue_concrete",
  26.     "minecraft:yellow_concrete",
  27.     "minecraft:lime_concrete",
  28.     "minecraft:pink_concrete",
  29.     "minecraft:gray_concrete",
  30.     "minecraft:light_gray_concrete",
  31.     "minecraft:cyan_concrete",
  32.     "minecraft:purple_concrete",
  33.     "minecraft:blue_concrete",
  34.     "minecraft:brown_concrete",
  35.     "minecraft:green_concrete",
  36.     "minecraft:red_concrete",
  37.     "minecraft:black_concrete"
  38. }
  39.  
  40. -- Function to find a slot with any concrete powder
  41. function findConcretePowderSlot()
  42.     for slot = 1, 16 do
  43.         local item = turtle.getItemDetail(slot)
  44.         if item then
  45.             for _, powderName in ipairs(concretePowderNames) do
  46.                 if item.name == powderName then
  47.                     return slot
  48.                 end
  49.             end
  50.         end
  51.     end
  52.     return nil
  53. end
  54.  
  55. -- Function to place concrete powder and break resulting concrete block
  56. function placeAndBreakConcrete()
  57.     while true do
  58.         local concretePowderSlot = findConcretePowderSlot()
  59.         if not concretePowderSlot then
  60.             print("No concrete powder found. Waiting...")
  61.             sleep(5) -- Wait for 5 seconds before checking again
  62.         else
  63.             turtle.select(concretePowderSlot)
  64.             if turtle.place() then
  65.                 sleep(0.5) -- Wait for the block to convert to concrete
  66.                 if turtle.detect() then
  67.                     local success, data = turtle.inspect()
  68.                     if success then
  69.                         for _, concreteName in ipairs(concreteNames) do
  70.                             if data.name == concreteName then
  71.                                 turtle.dig()
  72.                                 break
  73.                             end
  74.                         end
  75.                     end
  76.                 end
  77.             end
  78.         end
  79.     end
  80. end
  81.  
  82. -- Start the loop
  83. placeAndBreakConcrete()
  84.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement