1.7 fixes

This commit is contained in:
kepler155c
2017-09-30 20:34:10 -04:00
parent db2dca444f
commit 271417d9a0
6 changed files with 415 additions and 269 deletions

View File

@@ -412,16 +412,16 @@ function blockTypeDB:load()
{ 5, nil, 0, 'north-block' },
{ 6, nil, 0, 'east-block' },
{ 7, nil, 0, 'west-block' },
{ 8, nil, 0, 'south-block' },
{ 9, nil, 0, 'north-block' },
{ 10, nil, 0, 'east-block' },
{ 11, nil, 0, 'west-block' },
{ 12, nil, 0, 'south-block' },
{ 13, nil, 0, 'north-block' },
{ 14, nil, 0, 'east-block' },
{ 15, nil, 0, 'west-block' },
{ 8, nil, 0, 'south' },
{ 9, nil, 0, 'north' },
{ 10, nil, 0, 'east' },
{ 11, nil, 0, 'west' },
{ 12, nil, 0, 'south' },
{ 13, nil, 0, 'north' },
{ 14, nil, 0, 'east' },
{ 15, nil, 0, 'west' },
})
blockTypeDB:addTemp('piston', { -- piston placement is broken in 1.7 -- need to add work around
blockTypeDB:addTemp('piston', {
{ 0, nil, 0, 'piston-down' },
{ 1, nil, 0, 'piston-up' },
{ 2, nil, 0, 'piston-north' },

View File

@@ -1,41 +1,36 @@
local class = require('class')
local Util = require('util')
local itemDB = require('itemDB')
local Peripheral = require('peripheral')
local Util = require('util')
local MEProvider = class()
local MEAdapter = class()
function MEProvider:init(args)
function MEAdapter:init(args)
local defaults = {
items = { },
name = 'ME',
jobList = { },
direction = 'up',
wrapSide = 'bottom',
auto = false,
}
Util.merge(self, defaults)
Util.merge(self, args)
if self.side then
local mep = peripheral.wrap('bottom')
if mep then
Util.merge(self, mep)
end
else
if self.auto then
local mep = Peripheral.getByMethod('getAvailableItems')
if mep then
Util.merge(self, mep)
end
else
local mep = peripheral.wrap(self.wrapSide)
if mep then
Util.merge(self, mep)
end
end
local sides = {
top = 'down',
bottom = 'up',
east = 'west',
west = 'east',
north = 'south',
south = 'north',
}
self.oside = sides[self.direction or self.side]
end
function MEProvider:isValid()
function MEAdapter:isValid()
return self.getAvailableItems and self.getAvailableItems()
end
@@ -74,7 +69,7 @@ local function convertItem(item)
item.displayName = safeString(item.displayName)
end
function MEProvider:refresh()
function MEAdapter:refresh()
self.items = self.getAvailableItems('all')
for _,v in pairs(self.items) do
Util.merge(v, v.item)
@@ -83,34 +78,103 @@ function MEProvider:refresh()
return self.items
end
function MEProvider:listItems()
function MEAdapter:listItems()
self:refresh()
return self.items
end
function MEProvider:getItemInfo(name, damage)
for key,item in pairs(self.items) do
if item.name == name and item.damage == damage then
function MEAdapter:getItemInfo(item)
for key,i in pairs(self.items) do
if item.name == i.name and item.damage == i.damage and item.nbtHash == i.nbtHash then
return item
end
end
end
function MEProvider:craft(name, damage, count)
function MEAdapter:isCPUAvailable()
local cpus = self.getCraftingCPUs() or { }
local available = false
for cpu,v in pairs(cpus) do
if not v.busy then
available = true
elseif not self.jobList[cpu] then -- something else is crafting something (don't know what)
return false -- return false since we are in an unknown state
end
end
return available
end
function MEAdapter:craft(item, count)
if not self:isCPUAvailable() then
return false
end
self:refresh()
local item = self:getItemInfo(name, damage)
local item = self:getItemInfo(item)
if item and item.is_craftable then
self.requestCrafting({ id = name, dmg = damage }, count)
return true
local cpus = self.getCraftingCPUs() or { }
for cpu,v in pairs(cpus) do
if not v.busy then
self.requestCrafting({
id = item.name,
dmg = item.damage,
nbt_hash = item.nbtHash,
},
qty or 1,
cpu
)
os.sleep(0) -- tell it to craft, yet it doesn't show busy - try waiting a cycle...
cpus = self.getCraftingCPUs() or { }
if not cpus[cpu].busy then
-- print('sleeping again')
os.sleep(.1) -- sigh
cpus = self.getCraftingCPUs() or { }
end
-- not working :(
if cpus[cpu].busy then
self.jobList[cpu] = {
name = item.name,
damage = item.damage,
nbtHash = item.nbtHash,
count = count,
}
return true
end
break -- only need to try the first available cpu
end
end
return false
end
end
function MEProvider:craftItems(items)
function MEAdapter:getJobList()
local cpus = self.getCraftingCPUs() or { }
for cpu,v in pairs(cpus) do
if not v.busy then
self.jobList[cpu] = nil
end
end
return self.jobList
end
function MEAdapter:isCrafting(item)
for _,v in pairs(self:getJobList()) do
if v.name == item.name and
v.damage == item.damage and
v.nbtHash == item.nbtHash then
return true
end
end
end
function MEAdapter:craftItems(items)
local cpus = self.getCraftingCPUs() or { }
local count = 0
@@ -130,28 +194,36 @@ function MEProvider:craftItems(items)
end
end
function MEProvider:provide(item, count, slot)
function MEAdapter:provide(item, count, slot, direction)
return pcall(function()
self.exportItem({
id = item.name,
dmg = item.damage
}, self.oside, count, slot)
while count > 0 do
local qty = math.min(count, 64)
local s, m = self.exportItem({
id = item.name,
dmg = item.damage
}, direction or self.direction, qty, slot)
if not s or s.size ~= qty then
break
end
count = count - 64
end
end)
end
function MEProvider:insert(slot, count)
local s, m = pcall(function() self.pullItem(self.oside, slot, count) end)
function MEAdapter:insert(slot, count)
local s, m = pcall(function() self.pullItem(self.direction, slot, count) end)
if not s and m then
print('MEProvider:pullItem')
print('MEAdapter:pullItem')
print(m)
sleep(1)
s, m = pcall(function() self.pullItem(self.oside, slot, count) end)
s, m = pcall(function() self.pullItem(self.direction, slot, count) end)
if not s and m then
print('MEProvider:pullItem')
print('MEAdapter:pullItem')
print(m)
read()
end
end
end
return MEProvider
return MEAdapter

View File

@@ -5,6 +5,7 @@ local Config = require('config')
local Craft = require('turtle.craft')
local Event = require('event')
local itemDB = require('itemDB')
local MEAdapater = require('meAdapter')
local Peripheral = require('peripheral')
local RefinedAdapter = require('refinedAdapter')
local Terminal = require('terminal')
@@ -21,20 +22,42 @@ multishell.setTitle(multishell.getCurrent(), 'Resource Manager')
local config = {
trashDirection = 'up', -- trash /chest in relation to chest
inventoryDirection = { direction = 'north', wrapSide = 'back' },
chestDirection = { direction = 'down', wrapSide = 'top' },
chestDirection = { direction = 'down', wrapSide = 'top' },
}
Config.load('chestManager', config)
local controller = RefinedAdapter()
if not controller:isValid() then
-- error('Refined storage controller not found')
controller = nil
end
---------------------------------------------------------------------- FIX ME
local inventoryAdapter = ChestAdapter(config.inventoryDirection)
local turtleChestAdapter = ChestAdapter(config.chestDirection)
local duckAntenna
local controller = RefinedAdapter()
if not controller:isValid() then
controller = MEAdapater(config.inventoryDirection)
if not controller:isValid() then
controller = nil
else
inventoryAdapter = controller -- ME functions as inventory and crafting
end
end
if device.workbench then
local oppositeSide = {
[ 'left' ] = 'right',
[ 'right' ] = 'left',
}
local duckAntennaSide = oppositeSide[device.workbench.side]
duckAntenna = peripheral.wrap(duckAntennaSide)
if not duckAntenna or not duckAntenna.getAllStacks then
duckAntenna = nil
end
end
local canCraft = not not duckAntenna or turtleChestAdapter:isValid()
---------------------------------------------------------------------- FIX ME
local RESOURCE_FILE = 'usr/config/resources.db'
local RECIPES_FILE = 'usr/etc/recipes.db'
@@ -194,7 +217,7 @@ end
local function craftItem(recipe, items, originalItem, craftList, count)
if craftingPaused or not device.workbench or not isGridClear() then
if craftingPaused or not canCraft or not isGridClear() then
return
end
@@ -315,7 +338,7 @@ local function getAutocraftItems()
for _,res in pairs(resources) do
if res.auto then
res.count = 4 -- this could be higher to increase autocrafting speed
res.count = 64 -- this could be higher to increase autocrafting speed
local key = uniqueKey(res)
craftList[key] = res
end
@@ -361,7 +384,7 @@ local function watchResources(items)
end
if res.limit and item.count > res.limit then
inventoryAdapter:provide(
local s, m = inventoryAdapter:provide(
{ name = item.name, damage = item.damage },
item.count - res.limit,
nil,
@@ -587,8 +610,6 @@ local listingPage = UI.Page {
sortColumn = 'displayName',
},
statusBar = UI.StatusBar {
--backgroundColor = colors.gray,
width = UI.term.width,
filterText = UI.Text {
x = 2,
value = 'Filter',
@@ -720,6 +741,20 @@ function listingPage:applyFilter()
end
local function getTurtleInventory()
if duckAntenna then
local list = duckAntenna.getAllStacks(false)
for k,v in pairs(list) do
v.name = v.id
v.damage = v.dmg
v.displayName = v.display_name
v.count = v.qty
v.maxDamage = v.max_dmg
v.maxCount = v.max_size
end
return list
end
local inventory = { }
for i = 1,16 do
local qty = turtle.getItemCount(i)
@@ -747,7 +782,7 @@ local function learnRecipe(page)
local ingredients = getTurtleInventory()
if ingredients then
turtle.select(1)
if device.workbench and turtle.craft() then
if canCraft and turtle.craft() then
recipe = getTurtleInventory()
if recipe and recipe[1] then
clearGrid()

View File

@@ -14,6 +14,7 @@ local processes = { }
local parentTerm = term.current()
local configFile = args[1] or syntax()
local defaultEnv = Util.shallowCopy(getfenv(1))
local running
local monitor
local exitSession
@@ -170,16 +171,26 @@ end
function Process:drawSizers(showSizers)
local sizeChars = {
'\135', '\139', '\141', '\142'
}
if Util.getVersion() < 1.8 then
sizeChars = {
'#', '#', '#', '#'
}
end
self.showSizers = showSizers
self.container.setBackgroundColor(colors.black)
self.container.setTextColor(colors.white)
if self.showSizers then
write(self.container, 1, 1, '\135')
write(self.container, self.width, 1, '\139')
write(self.container, 1, self.height, '\141')
write(self.container, self.width, self.height, '\142')
write(self.container, 1, 1, sizeChars[1])
write(self.container, self.width, 1, sizeChars[2])
write(self.container, 1, self.height, sizeChars[3])
write(self.container, self.width, self.height, sizeChars[4])
self.container.setTextColor(colors.yellow)
write(self.container, 1, 3, '+')
@@ -250,7 +261,11 @@ function Process:resume(event, ...)
if not self.filter or self.filter == event or event == "terminate" then
term.redirect(self.terminal)
local previous = running
running = self -- stupid shell set title
local ok, result = coroutine.resume(self.co, event, ...)
running = previous
self.terminal = term.current()
if ok then
self.filter = result
@@ -269,7 +284,7 @@ function defaultEnv.multishell.getFocus()
end
function defaultEnv.multishell.setFocus(uid)
local process, key = Util.find(processes, 'uid', uid)
local process = Util.find(processes, 'uid', uid)
if process then
if processes[#processes] ~= process then
@@ -296,8 +311,8 @@ function defaultEnv.multishell.setTitle(uid, title)
end
function defaultEnv.multishell.getCurrent()
if #processes > 0 then
return processes[#processes].uid
if running then
return running.uid
end
end

View File

@@ -9,7 +9,7 @@ local Util = require('util')
local storage = RefinedAdapter()
if not storage:isValid() then
storage = MEAdapter()
storage = MEAdapter({ auto = true })
if not storage:isValid() then
storage = ChestAdapter()
end

View File

@@ -159,17 +159,6 @@
[ 7 ] = "minecraft:stained_glass:8",
},
},
[ "minecraft:stained_glass_pane:9" ] = {
count = 16,
ingredients = {
"minecraft:stained_glass:9",
"minecraft:stained_glass:9",
"minecraft:stained_glass:9",
[ 5 ] = "minecraft:stained_glass:9",
[ 6 ] = "minecraft:stained_glass:9",
[ 7 ] = "minecraft:stained_glass:9",
},
},
[ "minecraft:wooden_slab:2" ] = {
count = 6,
ingredients = {
@@ -192,6 +181,13 @@
[ 7 ] = "minecraft:redstone:0",
},
},
[ "minecraft:light_weighted_pressure_plate:0" ] = {
count = 1,
ingredients = {
"minecraft:gold_ingot:0",
"minecraft:gold_ingot:0",
},
},
[ "minecraft:quartz_block:1" ] = {
count = 1,
ingredients = {
@@ -199,11 +195,15 @@
[ 6 ] = "minecraft:stone_slab:7",
},
},
[ "minecraft:light_weighted_pressure_plate:0" ] = {
count = 1,
[ "minecraft:stained_glass_pane:9" ] = {
count = 16,
ingredients = {
"minecraft:gold_ingot:0",
"minecraft:gold_ingot:0",
"minecraft:stained_glass:9",
"minecraft:stained_glass:9",
"minecraft:stained_glass:9",
[ 5 ] = "minecraft:stained_glass:9",
[ 6 ] = "minecraft:stained_glass:9",
[ 7 ] = "minecraft:stained_glass:9",
},
},
[ "minecraft:dye:11" ] = {
@@ -234,15 +234,12 @@
[ 6 ] = "minecraft:end_stone:0",
},
},
[ "minecraft:dark_oak_fence_gate:0" ] = {
count = 1,
[ "minecraft:wooden_slab:0" ] = {
count = 6,
ingredients = {
"minecraft:stick:0",
"minecraft:planks:5",
"minecraft:stick:0",
[ 5 ] = "minecraft:stick:0",
[ 6 ] = "minecraft:planks:5",
[ 7 ] = "minecraft:stick:0",
[ 5 ] = "minecraft:planks:0",
[ 6 ] = "minecraft:planks:0",
[ 7 ] = "minecraft:planks:0",
},
},
[ "minecraft:stonebrick:3" ] = {
@@ -261,12 +258,15 @@
[ 6 ] = "minecraft:netherbrick:0",
},
},
[ "minecraft:wooden_slab:0" ] = {
count = 6,
[ "minecraft:dark_oak_fence_gate:0" ] = {
count = 1,
ingredients = {
[ 5 ] = "minecraft:planks:0",
[ 6 ] = "minecraft:planks:0",
[ 7 ] = "minecraft:planks:0",
"minecraft:stick:0",
"minecraft:planks:5",
"minecraft:stick:0",
[ 5 ] = "minecraft:stick:0",
[ 6 ] = "minecraft:planks:5",
[ 7 ] = "minecraft:stick:0",
},
},
[ "minecraft:wooden_slab:5" ] = {
@@ -321,6 +321,13 @@
[ 7 ] = "minecraft:brick_block:0",
},
},
[ "minecraft:carpet:1" ] = {
count = 3,
ingredients = {
"minecraft:wool:1",
"minecraft:wool:1",
},
},
[ "minecraft:cobblestone_wall:0" ] = {
count = 6,
ingredients = {
@@ -426,15 +433,11 @@
[ 6 ] = "minecraft:stick:0",
},
},
[ "minecraft:jungle_fence_gate:0" ] = {
[ "minecraft:wool:2" ] = {
count = 1,
ingredients = {
"minecraft:stick:0",
"minecraft:planks:3",
"minecraft:stick:0",
[ 5 ] = "minecraft:stick:0",
[ 6 ] = "minecraft:planks:3",
[ 7 ] = "minecraft:stick:0",
[ 5 ] = "minecraft:dye:13",
[ 6 ] = "minecraft:wool:0",
},
},
[ "minecraft:lapis_block:0" ] = {
@@ -451,13 +454,6 @@
[ 7 ] = "minecraft:dye:4",
},
},
[ "minecraft:wool:2" ] = {
count = 1,
ingredients = {
[ 5 ] = "minecraft:dye:13",
[ 6 ] = "minecraft:wool:0",
},
},
[ "minecraft:wool:8" ] = {
count = 1,
ingredients = {
@@ -465,6 +461,13 @@
[ 6 ] = "minecraft:dye:7",
},
},
[ "minecraft:wool:4" ] = {
count = 1,
ingredients = {
[ 5 ] = "minecraft:dye:11",
[ 6 ] = "minecraft:wool:0",
},
},
[ "minecraft:carpet:12" ] = {
count = 3,
ingredients = {
@@ -484,13 +487,6 @@
[ 6 ] = "minecraft:wool:15",
},
},
[ "minecraft:carpet:8" ] = {
count = 3,
ingredients = {
[ 5 ] = "minecraft:wool:8",
[ 6 ] = "minecraft:wool:8",
},
},
[ "minecraft:red_sandstone:2" ] = {
count = 4,
ingredients = {
@@ -500,6 +496,13 @@
[ 6 ] = "minecraft:red_sandstone:0",
},
},
[ "minecraft:carpet:8" ] = {
count = 3,
ingredients = {
[ 5 ] = "minecraft:wool:8",
[ 6 ] = "minecraft:wool:8",
},
},
[ "minecraft:birch_stairs:0" ] = {
count = 8,
ingredients = {
@@ -511,13 +514,6 @@
[ 6 ] = "minecraft:planks:2",
},
},
[ "minecraft:wool:4" ] = {
count = 1,
ingredients = {
[ 5 ] = "minecraft:dye:11",
[ 6 ] = "minecraft:wool:0",
},
},
[ "minecraft:gold_block:0" ] = {
count = 63,
ingredients = {
@@ -532,6 +528,13 @@
[ 7 ] = "minecraft:gold_block:0",
},
},
[ "minecraft:carpet:10" ] = {
count = 3,
ingredients = {
[ 5 ] = "minecraft:wool:10",
[ 6 ] = "minecraft:wool:10",
},
},
[ "minecraft:stone:5" ] = {
count = 2,
ingredients = {
@@ -539,11 +542,15 @@
"minecraft:cobblestone:0",
},
},
[ "minecraft:carpet:10" ] = {
count = 3,
[ "minecraft:jungle_fence_gate:0" ] = {
count = 1,
ingredients = {
[ 5 ] = "minecraft:wool:10",
[ 6 ] = "minecraft:wool:10",
"minecraft:stick:0",
"minecraft:planks:3",
"minecraft:stick:0",
[ 5 ] = "minecraft:stick:0",
[ 6 ] = "minecraft:planks:3",
[ 7 ] = "minecraft:stick:0",
},
},
[ "minecraft:noteblock:0" ] = {
@@ -654,6 +661,20 @@
[ 7 ] = "minecraft:stained_glass:6",
},
},
[ "minecraft:sea_lantern:0" ] = {
count = 1,
ingredients = {
"minecraft:prismarine_shard:0",
"minecraft:prismarine_crystals:0",
"minecraft:prismarine_shard:0",
[ 9 ] = "minecraft:prismarine_shard:0",
[ 10 ] = "minecraft:prismarine_crystals:0",
[ 11 ] = "minecraft:prismarine_shard:0",
[ 5 ] = "minecraft:prismarine_crystals:0",
[ 6 ] = "minecraft:prismarine_crystals:0",
[ 7 ] = "minecraft:prismarine_crystals:0",
},
},
[ "minecraft:spruce_fence_gate:0" ] = {
count = 1,
ingredients = {
@@ -665,13 +686,6 @@
[ 7 ] = "minecraft:stick:0",
},
},
[ "minecraft:wool:6" ] = {
count = 1,
ingredients = {
[ 5 ] = "minecraft:wool:0",
[ 6 ] = "minecraft:dye:9",
},
},
[ "minecraft:quartz_block:2" ] = {
count = 2,
ingredients = {
@@ -687,26 +701,19 @@
[ 7 ] = "minecraft:planks:4",
},
},
[ "minecraft:wool:6" ] = {
count = 1,
ingredients = {
[ 5 ] = "minecraft:wool:0",
[ 6 ] = "minecraft:dye:9",
},
},
[ "minecraft:wooden_button:0" ] = {
count = 1,
ingredients = {
[ 6 ] = "minecraft:planks:0",
},
},
[ "minecraft:sea_lantern:0" ] = {
count = 1,
ingredients = {
"minecraft:prismarine_shard:0",
"minecraft:prismarine_crystals:0",
"minecraft:prismarine_shard:0",
[ 9 ] = "minecraft:prismarine_shard:0",
[ 10 ] = "minecraft:prismarine_crystals:0",
[ 11 ] = "minecraft:prismarine_shard:0",
[ 5 ] = "minecraft:prismarine_crystals:0",
[ 6 ] = "minecraft:prismarine_crystals:0",
[ 7 ] = "minecraft:prismarine_crystals:0",
},
},
[ "minecraft:stone:4" ] = {
count = 4,
ingredients = {
@@ -716,6 +723,14 @@
[ 6 ] = "minecraft:stone:3",
},
},
[ "minecraft:purpur_slab:0" ] = {
count = 6,
ingredients = {
"minecraft:purpur_block:0",
"minecraft:purpur_block:0",
"minecraft:purpur_block:0",
},
},
[ "minecraft:lever:0" ] = {
count = 1,
ingredients = {
@@ -771,15 +786,13 @@
[ 7 ] = "minecraft:dye:15",
},
},
[ "minecraft:iron_door:0" ] = {
count = 3,
[ "minecraft:brick_block:0" ] = {
count = 1,
ingredients = {
"minecraft:iron_ingot:0",
"minecraft:iron_ingot:0",
[ 9 ] = "minecraft:iron_ingot:0",
[ 10 ] = "minecraft:iron_ingot:0",
[ 5 ] = "minecraft:iron_ingot:0",
[ 6 ] = "minecraft:iron_ingot:0",
"minecraft:brick:0",
"minecraft:brick:0",
[ 5 ] = "minecraft:brick:0",
[ 6 ] = "minecraft:brick:0",
},
},
[ "minecraft:carpet:2" ] = {
@@ -800,6 +813,17 @@
[ 6 ] = "minecraft:stonebrick:0",
},
},
[ "minecraft:iron_door:0" ] = {
count = 3,
ingredients = {
"minecraft:iron_ingot:0",
"minecraft:iron_ingot:0",
[ 9 ] = "minecraft:iron_ingot:0",
[ 10 ] = "minecraft:iron_ingot:0",
[ 5 ] = "minecraft:iron_ingot:0",
[ 6 ] = "minecraft:iron_ingot:0",
},
},
[ "minecraft:stained_glass:6" ] = {
count = 8,
ingredients = {
@@ -828,15 +852,6 @@
[ 7 ] = "minecraft:cobblestone:0",
},
},
[ "minecraft:brick_block:0" ] = {
count = 1,
ingredients = {
"minecraft:brick:0",
"minecraft:brick:0",
[ 5 ] = "minecraft:brick:0",
[ 6 ] = "minecraft:brick:0",
},
},
[ "minecraft:planks:0" ] = {
count = 4,
ingredients = {
@@ -949,13 +964,6 @@
[ 7 ] = "minecraft:planks:3",
},
},
[ "minecraft:carpet:6" ] = {
count = 3,
ingredients = {
[ 5 ] = "minecraft:wool:6",
[ 6 ] = "minecraft:wool:6",
},
},
[ "minecraft:paper:0" ] = {
count = 3,
ingredients = {
@@ -964,6 +972,13 @@
"minecraft:reeds:0",
},
},
[ "minecraft:carpet:6" ] = {
count = 3,
ingredients = {
[ 5 ] = "minecraft:wool:6",
[ 6 ] = "minecraft:wool:6",
},
},
[ "minecraft:birch_fence_gate:0" ] = {
count = 1,
ingredients = {
@@ -1094,6 +1109,17 @@
[ 7 ] = "minecraft:planks:1",
},
},
[ "minecraft:bow:0" ] = {
count = 1,
ingredients = {
"minecraft:string:0",
"minecraft:stick:0",
[ 7 ] = "minecraft:stick:0",
[ 9 ] = "minecraft:string:0",
[ 10 ] = "minecraft:stick:0",
[ 5 ] = "minecraft:string:0",
},
},
[ "minecraft:stained_glass:15" ] = {
count = 8,
ingredients = {
@@ -1115,28 +1141,17 @@
[ 6 ] = "minecraft:stone_slab:1",
},
},
[ "minecraft:wooden_pressure_plate:0" ] = {
count = 1,
ingredients = {
[ 5 ] = "minecraft:planks:0",
[ 6 ] = "minecraft:planks:0",
},
},
[ "minecraft:planks:3" ] = {
count = 4,
ingredients = {
[ 6 ] = "minecraft:log:3",
},
},
[ "minecraft:bow:0" ] = {
[ "minecraft:wooden_pressure_plate:0" ] = {
count = 1,
ingredients = {
"minecraft:string:0",
"minecraft:stick:0",
[ 7 ] = "minecraft:stick:0",
[ 9 ] = "minecraft:string:0",
[ 10 ] = "minecraft:stick:0",
[ 5 ] = "minecraft:string:0",
[ 5 ] = "minecraft:planks:0",
[ 6 ] = "minecraft:planks:0",
},
},
[ "minecraft:wooden_door:0" ] = {
@@ -1182,6 +1197,12 @@
[ 6 ] = "minecraft:wool:5",
},
},
[ "minecraft:planks:1" ] = {
count = 4,
ingredients = {
[ 6 ] = "minecraft:log:1",
},
},
[ "minecraft:enchanting_table:0" ] = {
count = 1,
ingredients = {
@@ -1194,12 +1215,6 @@
[ 9 ] = "minecraft:obsidian:0",
},
},
[ "minecraft:planks:1" ] = {
count = 4,
ingredients = {
[ 6 ] = "minecraft:log:1",
},
},
[ "minecraft:wool:13" ] = {
count = 1,
ingredients = {
@@ -1423,15 +1438,15 @@
[ 7 ] = "minecraft:hardened_clay:0",
},
},
[ "minecraft:quartz_stairs:0" ] = {
[ "minecraft:acacia_stairs:0" ] = {
count = 8,
ingredients = {
"minecraft:quartz_block:0",
[ 9 ] = "minecraft:quartz_block:0",
[ 10 ] = "minecraft:quartz_block:0",
[ 11 ] = "minecraft:quartz_block:0",
[ 5 ] = "minecraft:quartz_block:0",
[ 6 ] = "minecraft:quartz_block:0",
"minecraft:planks:4",
[ 9 ] = "minecraft:planks:4",
[ 10 ] = "minecraft:planks:4",
[ 11 ] = "minecraft:planks:4",
[ 5 ] = "minecraft:planks:4",
[ 6 ] = "minecraft:planks:4",
},
},
[ "minecraft:stone_slab:7" ] = {
@@ -1442,15 +1457,15 @@
[ 7 ] = "minecraft:quartz_block:0",
},
},
[ "minecraft:acacia_stairs:0" ] = {
[ "minecraft:quartz_stairs:0" ] = {
count = 8,
ingredients = {
"minecraft:planks:4",
[ 9 ] = "minecraft:planks:4",
[ 10 ] = "minecraft:planks:4",
[ 11 ] = "minecraft:planks:4",
[ 5 ] = "minecraft:planks:4",
[ 6 ] = "minecraft:planks:4",
"minecraft:quartz_block:0",
[ 9 ] = "minecraft:quartz_block:0",
[ 10 ] = "minecraft:quartz_block:0",
[ 11 ] = "minecraft:quartz_block:0",
[ 5 ] = "minecraft:quartz_block:0",
[ 6 ] = "minecraft:quartz_block:0",
},
},
[ "minecraft:dye:7" ] = {
@@ -1722,18 +1737,11 @@
[ 7 ] = "minecraft:glass:0",
},
},
[ "minecraft:stained_glass:13" ] = {
count = 8,
[ "minecraft:wool:15" ] = {
count = 1,
ingredients = {
"minecraft:glass:0",
"minecraft:glass:0",
"minecraft:glass:0",
[ 9 ] = "minecraft:glass:0",
[ 10 ] = "minecraft:glass:0",
[ 11 ] = "minecraft:glass:0",
[ 5 ] = "minecraft:glass:0",
[ 6 ] = "minecraft:dye:2",
[ 7 ] = "minecraft:glass:0",
[ 5 ] = "minecraft:dye:0",
[ 6 ] = "minecraft:wool:0",
},
},
[ "minecraft:stained_hardened_clay:9" ] = {
@@ -1797,11 +1805,15 @@
[ 7 ] = "minecraft:glass:0",
},
},
[ "minecraft:trapped_chest:0" ] = {
count = 1,
[ "minecraft:jungle_door:0" ] = {
count = 3,
ingredients = {
[ 5 ] = "minecraft:chest:0",
[ 6 ] = "minecraft:tripwire_hook:0",
"minecraft:planks:3",
"minecraft:planks:3",
[ 9 ] = "minecraft:planks:3",
[ 10 ] = "minecraft:planks:3",
[ 5 ] = "minecraft:planks:3",
[ 6 ] = "minecraft:planks:3",
},
},
[ "minecraft:dye:9" ] = {
@@ -1822,22 +1834,25 @@
[ 7 ] = "minecraft:stained_glass:7",
},
},
[ "minecraft:wool:15" ] = {
[ "minecraft:trapped_chest:0" ] = {
count = 1,
ingredients = {
[ 5 ] = "minecraft:dye:0",
[ 6 ] = "minecraft:wool:0",
[ 5 ] = "minecraft:chest:0",
[ 6 ] = "minecraft:tripwire_hook:0",
},
},
[ "minecraft:jungle_door:0" ] = {
count = 3,
[ "minecraft:stained_glass:13" ] = {
count = 8,
ingredients = {
"minecraft:planks:3",
"minecraft:planks:3",
[ 9 ] = "minecraft:planks:3",
[ 10 ] = "minecraft:planks:3",
[ 5 ] = "minecraft:planks:3",
[ 6 ] = "minecraft:planks:3",
"minecraft:glass:0",
"minecraft:glass:0",
"minecraft:glass:0",
[ 9 ] = "minecraft:glass:0",
[ 10 ] = "minecraft:glass:0",
[ 11 ] = "minecraft:glass:0",
[ 5 ] = "minecraft:glass:0",
[ 6 ] = "minecraft:dye:2",
[ 7 ] = "minecraft:glass:0",
},
},
[ "minecraft:carpet:3" ] = {
@@ -1858,24 +1873,6 @@
[ 7 ] = "minecraft:stick:0",
},
},
[ "minecraft:anvil:0" ] = {
count = 1,
ingredients = {
"minecraft:iron_block:0",
"minecraft:iron_block:0",
"minecraft:iron_block:0",
[ 9 ] = "minecraft:iron_ingot:0",
[ 10 ] = "minecraft:iron_ingot:0",
[ 11 ] = "minecraft:iron_ingot:0",
[ 6 ] = "minecraft:iron_ingot:0",
},
},
[ "minecraft:pumpkin_seeds:0" ] = {
count = 4,
ingredients = {
[ 6 ] = "minecraft:pumpkin:0",
},
},
[ "minecraft:stained_hardened_clay:0" ] = {
count = 8,
ingredients = {
@@ -1890,6 +1887,24 @@
[ 7 ] = "minecraft:hardened_clay:0",
},
},
[ "minecraft:pumpkin_seeds:0" ] = {
count = 4,
ingredients = {
[ 6 ] = "minecraft:pumpkin:0",
},
},
[ "minecraft:anvil:0" ] = {
count = 1,
ingredients = {
"minecraft:iron_block:0",
"minecraft:iron_block:0",
"minecraft:iron_block:0",
[ 9 ] = "minecraft:iron_ingot:0",
[ 10 ] = "minecraft:iron_ingot:0",
[ 11 ] = "minecraft:iron_ingot:0",
[ 6 ] = "minecraft:iron_ingot:0",
},
},
[ "minecraft:dye:10" ] = {
count = 2,
ingredients = {
@@ -1972,6 +1987,17 @@
[ 7 ] = "minecraft:glass:0",
},
},
[ "minecraft:birch_door:0" ] = {
count = 3,
ingredients = {
"minecraft:planks:2",
"minecraft:planks:2",
[ 9 ] = "minecraft:planks:2",
[ 10 ] = "minecraft:planks:2",
[ 5 ] = "minecraft:planks:2",
[ 6 ] = "minecraft:planks:2",
},
},
[ "minecraft:dye:15" ] = {
count = 3,
ingredients = {
@@ -1987,17 +2013,6 @@
[ 6 ] = "minecraft:string:0",
},
},
[ "minecraft:birch_door:0" ] = {
count = 3,
ingredients = {
"minecraft:planks:2",
"minecraft:planks:2",
[ 9 ] = "minecraft:planks:2",
[ 10 ] = "minecraft:planks:2",
[ 5 ] = "minecraft:planks:2",
[ 6 ] = "minecraft:planks:2",
},
},
[ "minecraft:redstone_lamp:0" ] = {
count = 1,
ingredients = {
@@ -2119,6 +2134,15 @@
[ 6 ] = "minecraft:dye:0",
},
},
[ "minecraft:purpur_block:0" ] = {
count = 4,
ingredients = {
"minecraft:chorus_fruit_popped:0",
"minecraft:chorus_fruit_popped:0",
[ 5 ] = "minecraft:chorus_fruit_popped:0",
[ 6 ] = "minecraft:chorus_fruit_popped:0",
},
},
[ "minecraft:stick:0" ] = {
count = 4,
ingredients = {