Advertisement
Guest User

refine.lua

a guest
Sep 28th, 2018
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 10.56 KB | None | 0 0
  1. local component = require("component")
  2. local sides = require("sides")
  3. local serialize = require("serialization")
  4. local gpu = component.gpu
  5. local term = require("term")
  6. local rs = component.block_refinedstorage_interface
  7. local tasks = rs.getTasks()
  8.  
  9. local targetAmount = 64
  10. local limit = 5
  11. local transfer=4
  12.  
  13. local items = {
  14. {name="minecraft:quartz",maxSize=64,oreNames={"gemQuartz",n=1},hasTag=false,maxDamage=0,id=406,damage=0,size=64,label="Nether Quartz"},
  15. {name="refinedstorage:core",maxSize=64,oreNames={n=0},hasTag=false,maxDamage=0,id=4948,damage=1,size=64,label="Destruction Core"},
  16. {name="refinedstorage:core",maxSize=64,oreNames={n=0},hasTag=false,maxDamage=0,id=4948,damage=0,size=64,label="Construction Core"},
  17. {name="extrautils2:ingredients",maxSize=64,oreNames={"ingotDemonicMetal",n=1},hasTag=false,maxDamage=0,id=5580,damage=11,size=64,label="Demon Ingot"},
  18. {name="extrautils2:ingredients",maxSize=64,oreNames={"ingotEnchantedMetal",n=1},hasTag=false,maxDamage=0,id=5580,damage=12,size=64,label="Enchanted Ingot"},
  19. {name="thermalfoundation:material",maxSize=64,oreNames={"ingotCopper",n=1},hasTag=false,maxDamage=0,id=4115,damage=128,size=64,label="Copper Ingot"},
  20. {name="thermalfoundation:material",maxSize=64,oreNames={"ingotTin",n=1},hasTag=false,maxDamage=0,id=4115,damage=129,size=64,label="Tin Ingot"},
  21. {name="thermalfoundation:material",maxSize=64,oreNames={"ingotSilver",n=1},hasTag=false,maxDamage=0,id=4115,damage=130,size=64,label="Silver Ingot"},
  22. {name="thermalfoundation:material",maxSize=64,oreNames={"ingotLead",n=1},hasTag=false,maxDamage=0,id=4115,damage=131,size=64,label="Lead Ingot"},
  23. {name="thermalfoundation:material",maxSize=64,oreNames={"ingotAluminum",n=1},hasTag=false,maxDamage=0,id=4115,damage=132,size=64,label="Aluminum Ingot"},
  24. {name="thermalfoundation:material",maxSize=64,oreNames={"ingotNickel",n=1},hasTag=false,maxDamage=0,id=4115,damage=133,size=64,label="Nickel Ingot"},
  25. {name="thermalfoundation:material",maxSize=64,oreNames={"ingotPlatinum",n=1},hasTag=false,maxDamage=0,id=4115,damage=134,size=64,label="Platinum Ingot"},
  26. {name="thermalfoundation:material",maxSize=64,oreNames={"ingotIridium",n=1},hasTag=false,maxDamage=0,id=4115,damage=135,size=64,label="Iridium Ingot"},
  27. {name="thermalfoundation:material",maxSize=64,oreNames={"ingotMithril",n=1},hasTag=false,maxDamage=0,id=4115,damage=136,size=64,label="Mana Infused Ingot"},
  28. {name="thermalfoundation:material",maxSize=64,oreNames={"ingotSteel",n=1},hasTag=false,maxDamage=0,id=4115,damage=160,size=64,label="Steel Ingot"},
  29. {name="thermalfoundation:material",maxSize=64,oreNames={"ingotElectrum",n=1},hasTag=false,maxDamage=0,id=4115,damage=161,size=64,label="Electrum Ingot"},
  30. {name="thermalfoundation:material",maxSize=64,oreNames={"ingotInvar",n=1},hasTag=false,maxDamage=0,id=4115,damage=162,size=64,label="Invar Ingot"},
  31. {name="thermalfoundation:material",maxSize=64,oreNames={"ingotBronze",n=1},hasTag=false,maxDamage=0,id=4115,damage=163,size=64,label="Bronze Ingot"},
  32. {name="thermalfoundation:material",maxSize=64,oreNames={"ingotConstantan",n=1},hasTag=false,maxDamage=0,id=4115,damage=164,size=64,label="Constantan Ingot"},
  33. {name="thermalfoundation:material",maxSize=64,oreNames={"ingotSignalum",n=1},hasTag=false,maxDamage=0,id=4115,damage=165,size=64,label="Signalum Ingot"},
  34. {name="thermalfoundation:material",maxSize=64,oreNames={"ingotLumium",n=1},hasTag=false,maxDamage=0,id=4115,damage=166,size=64,label="Lumium Ingot"},
  35. {name="thermalfoundation:material",maxSize=64,oreNames={"ingotEnderium",n=1},hasTag=false,maxDamage=0,id=4115,damage=167,size=64,label="Enderium Ingot"},
  36. {name="minecraft:log",maxSize=64,oreNames={"logWood",n=1},hasTag=false,maxDamage=0,id=17,damage=0,size=64,label="Oak Wood"},
  37. {name="minecraft:stone_brick_stairs",maxSize=64,oreNames={n=0},hasTag=false,maxDamage=0,id=109,damage=0,size=64,label="Stone Brick Stairs"},
  38. {name="refinedstorage:pattern",maxSize=64,oreNames={n=0},hasTag=false,maxDamage=0,id=4941,damage=0,size=64,label="Pattern"},
  39. {name="enderio:item_material",maxSize=64,oreNames={"ingotEnergeticSilver",n=1},hasTag=false,maxDamage=0,id=4520,damage=76,size=64,label="Energetic Silver Ingot"},
  40. {name="enderio:item_material",maxSize=64,oreNames={"ingotCombustiveMetal",n=1},hasTag=false,maxDamage=0,id=4520,damage=77,size=64,label="Combustive Iron Ingot"},
  41. {name="enderio:item_material",maxSize=64,oreNames={"ingotCrudeSteel",n=1},hasTag=false,maxDamage=0,id=4520,damage=78,size=64,label="Crude Steel Ingot"},
  42. {name="enderio:item_material",maxSize=64,oreNames={"ingotMelodicAlloy",n=1},hasTag=false,maxDamage=0,id=4520,damage=80,size=64,label="Melodic Alloy Ingot"},
  43. {name="enderio:item_material",maxSize=64,oreNames={"ingotStellarAlloy",n=1},hasTag=false,maxDamage=0,id=4520,damage=81,size=64,label="Stellar Alloy Ingot"},
  44. {name="enderio:item_material",maxSize=64,oreNames={"ingotCrystallineAlloy",n=1},hasTag=false,maxDamage=0,id=4520,damage=79,size=64,label="Crystalline Alloy Ingot"},
  45. {name="enderio:item_material",maxSize=64,oreNames={"ingotCrystallinePinkSlime",n=1},hasTag=false,maxDamage=0,id=4520,damage=82,size=64,label="Crystalline Pink Slime Ingot"},
  46. {name="minecraft:gold_ingot",maxSize=64,oreNames={"ingotGold",n=1},hasTag=false,maxDamage=0,id=266,damage=0,size=64,label="Gold Ingot"},
  47. {name="draconicevolution:draconium_ingot",maxSize=64,oreNames={"ingotDraconium",n=1},hasTag=false,maxDamage=0,id=4378,damage=0,size=64,label="Draconium Ingot"},
  48. {name="draconicevolution:draconic_ingot",maxSize=64,oreNames={"ingotDraconiumAwakened",n=1},hasTag=false,maxDamage=0,id=4379,damage=0,size=64,label="Awakened Draconium Ingot"},
  49. {name="industrialforegoing:pink_slime_ingot",maxSize=64,oreNames={n=0},hasTag=false,maxDamage=0,id=5024,damage=0,size=64,label="Pink Slime Ingot"},
  50. {name="tconstruct:ingots",maxSize=64,oreNames={"ingotCobalt",n=1},hasTag=false,maxDamage=0,id=4713,damage=0,size=64,label="Cobalt Ingot"},
  51. {name="tconstruct:ingots",maxSize=64,oreNames={"ingotArdite",n=1},hasTag=false,maxDamage=0,id=4713,damage=1,size=64,label="Ardite Ingot"},
  52. {name="tconstruct:ingots",maxSize=64,oreNames={"ingotKnightslime",n=1},hasTag=false,maxDamage=0,id=4713,damage=3,size=64,label="Knightslime Ingot"},
  53. {name="tconstruct:ingots",maxSize=64,oreNames={"ingotPigiron",n=1},hasTag=false,maxDamage=0,id=4713,damage=4,size=64,label="Pigiron Ingot"},
  54. {name="tconstruct:ingots",maxSize=64,oreNames={"ingotAlubrass",n=1},hasTag=false,maxDamage=0,id=4713,damage=5,size=64,label="Aluminum Brass Ingot"},
  55. {name="tconstruct:ingots",maxSize=64,oreNames={"ingotManyullyn",n=1},hasTag=false,maxDamage=0,id=4713,damage=2,size=64,label="Manyullyn Ingot"},
  56. {name="minecraft:iron_ingot",maxSize=64,oreNames={"ingotIron",n=1},hasTag=false,maxDamage=0,id=265,damage=0,size=64,label="Iron Ingot"},
  57. {name="mysticalagriculture:crafting",maxSize=64,oreNames={"ingotBaseEssence",n=1},hasTag=false,maxDamage=0,id=5153,damage=32,size=64,label="Base Essence Ingot"},
  58. {name="mysticalagriculture:crafting",maxSize=64,oreNames={"ingotInferium",n=1},hasTag=false,maxDamage=0,id=5153,damage=33,size=64,label="§eInferium Ingot"},
  59. {name="mysticalagriculture:crafting",maxSize=64,oreNames={"ingotIntermedium",n=1},hasTag=false,maxDamage=0,id=5153,damage=35,size=64,label="§6Intermedium Ingot"},
  60. {name="mysticalagriculture:crafting",maxSize=64,oreNames={"ingotPrudentium",n=1},hasTag=false,maxDamage=0,id=5153,damage=34,size=64,label="§aPrudentium Ingot"},
  61. {name="mysticalagriculture:crafting",maxSize=64,oreNames={"ingotSuperium",n=1},hasTag=false,maxDamage=0,id=5153,damage=36,size=64,label="§bSuperium Ingot"},
  62. {name="mysticalagriculture:crafting",maxSize=64,oreNames={"ingotSupremium",n=1},hasTag=false,maxDamage=0,id=5153,damage=37,size=64,label="§cSupremium Ingot"},
  63. {name="mysticalagriculture:crafting",maxSize=64,oreNames={"ingotSoulium",n=1},hasTag=false,maxDamage=0,id=5153,damage=38,size=64,label="§dSoulium Ingot"},
  64. {name="mysticalagriculture:crafting",maxSize=64,oreNames={"essenceInferium",n=1},hasTag=false,maxDamage=0,id=5153,damage=0,size=64,label="§eInferium Essence"},
  65. {name="enderio:item_alloy_ingot",maxSize=64,oreNames={"ingotElectricalSteel",n=1},hasTag=false,maxDamage=0,id=4517,damage=0,size=64,label="Electrical Steel Ingot"},
  66. {name="enderio:item_alloy_ingot",maxSize=64,oreNames={"ingotEnergeticAlloy",n=1},hasTag=false,maxDamage=0,id=4517,damage=1,size=64,label="Energetic Alloy Ingot"},
  67. {name="enderio:item_alloy_ingot",maxSize=64,oreNames={"ingotRedstoneAlloy",n=1},hasTag=false,maxDamage=0,id=4517,damage=3,size=64,label="Redstone Alloy Ingot"},
  68. {name="enderio:item_alloy_ingot",maxSize=64,oreNames={"ingotConductiveIron",n=1},hasTag=false,maxDamage=0,id=4517,damage=4,size=64,label="Conductive Iron Ingot"},
  69. {name="enderio:item_alloy_ingot",maxSize=64,oreNames={"ingotPulsatingIron",n=1},hasTag=false,maxDamage=0,id=4517,damage=5,size=64,label="Pulsating Iron Ingot"},
  70. {name="enderio:item_alloy_ingot",maxSize=64,oreNames={"ingotVibrantAlloy",n=1},hasTag=false,maxDamage=0,id=4517,damage=2,size=64,label="Vibrant Alloy Ingot"},
  71. {name="enderio:item_alloy_ingot",maxSize=64,oreNames={"ingotDarkSteel",n=1},hasTag=false,maxDamage=0,id=4517,damage=6,size=64,label="Dark Steel Ingot"},
  72. {name="enderio:item_alloy_ingot",maxSize=64,oreNames={"ingotSoularium",n=1},hasTag=false,maxDamage=0,id=4517,damage=7,size=64,label="Soularium Ingot"},
  73. {name="enderio:item_alloy_ingot",maxSize=64,oreNames={"ingotEndSteel",n=1},hasTag=false,maxDamage=0,id=4517,damage=8,size=64,label="End Steel Ingot"},
  74. {name="refinedstorage:processor",maxSize=64,oreNames={n=0},hasTag=false,maxDamage=0,id=4947,damage=3,size=64,label="Basic Processor"},
  75. {name="refinedstorage:processor",maxSize=64,oreNames={n=0},hasTag=false,maxDamage=0,id=4947,damage=6,size=64,label="Cut Silicon"},
  76. {name="refinedstorage:processor",maxSize=64,oreNames={n=0},hasTag=false,maxDamage=0,id=4947,damage=2,size=64,label="Cut Advanced Processor"},
  77. {name="refinedstorage:processor",maxSize=64,oreNames={n=0},hasTag=false,maxDamage=0,id=4947,damage=0,size=64,label="Cut Basic Processor"},
  78. {name="refinedstorage:processor",maxSize=64,oreNames={n=0},hasTag=false,maxDamage=0,id=4947,damage=5,size=64,label="Advanced Processor"},
  79. {name="refinedstorage:processor",maxSize=64,oreNames={n=0},hasTag=false,maxDamage=0,id=4947,damage=4,size=64,label="Improved Processor"}
  80. }
  81. while(true) do
  82.     for i,stack in ipairs(items) do
  83.         if(rs.hasPattern(stack)) then
  84.             local rsStack = rs.getItem(stack)
  85.  
  86.             local toCraft = targetAmount;
  87.             if(rsStack ~= nil) then
  88.                 toCraft = toCraft - rsStack.size
  89.             end
  90.  
  91.             if(toCraft > 0) then
  92. if(#rs.getTasks() ~= limit) then
  93. rs.scheduleTask(stack,transfer)
  94. end
  95. end
  96. else
  97. rs.cancelTask(stack)
  98. end
  99.  
  100. for k,v in ipairs(tasks) do
  101. if(tasks[k] ~= nil) then
  102. gpu.set(1,k,tasks[k].label)
  103. end
  104. end
  105.  
  106. end
  107.  
  108.    os.sleep(5)
  109. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement