From 64186ec813aba67d19f663e3c3852e0c8f0863ec Mon Sep 17 00:00:00 2001 From: stfwi Date: Sun, 1 Sep 2019 15:41:43 +0200 Subject: [PATCH] 1.14: Updated to Forge 1.14.4-28.0.81/20190719-1.14.3, updated recipe condition processing accordingly (issue #49). --- 1.12/gradle.properties | 2 +- 1.12/readme.md | 2 + .../framed_window_glasspane_submodel.json | 25 +--- .../treated_wood_window_submodel.json | 1 - 1.14/gradle.properties | 12 +- 1.14/meta/update.json | 3 +- 1.14/readme.md | 3 + .../engineersdecor/ModEngineersDecor.java | 5 +- .../blocks/BlockDecorHalfSlab.java | 1 - .../blocks/BlockDecorMineralSmelter.java | 91 +++++++------- .../BlockDecorPassiveFluidAccumulator.java | 16 +-- .../blocks/BlockDecorPipeValve.java | 14 +-- .../engineersdecor/blocks/BlockDecorSlab.java | 1 - .../detail/OptionalRecipeCondition.java | 116 ++++++++++++++++++ .../detail/RecipeCondModSpecific.java | 70 ----------- .../factory_dropper_recipe_standalone.json | 2 +- .../iron_inset_light_recipe_standalone.json | 2 +- .../metal_rung_ladder_recipe_standalone.json | 2 +- .../metal_rung_steps_recipe_standalone.json | 2 +- ...zerglass_block_recipe_standalone.json.json | 2 +- ...e_fluid_accumulator_recipe_standalone.json | 2 +- .../rebar_concrete_recipe_standalone.json | 2 +- .../alternative/sign_hotwire_standalone.json | 2 +- .../slag_brick_recipe_standalone.json | 2 +- .../small_electrical_furnace_standalone.json | 2 +- .../small_lab_furnace_standalone.json | 2 +- .../small_mineral_smelter_standalone.json | 2 +- .../small_waste_incinerator_standalone.json | 2 +- .../steel_framed_window_standalone.json | 2 +- ...straight_pipe_valve_recipe_standalone.json | 2 +- ...pipe_valve_redstone_recipe_standalone.json | 2 +- .../thin_steel_pole_recipe_standalone.json | 2 +- ...reated_wood_crafting_table_standalone.json | 2 +- .../treated_wood_ladder_standalone.json | 2 +- .../treated_wood_pole_standalone.json | 2 +- .../treated_wood_stool_standalone.json | 2 +- .../treated_wood_table_standalone.json | 2 +- .../treated_wood_window_standalone.json | 2 +- .../treated_wood_windowsill_standalone.json | 2 +- .../dependent/concrete_halfslab_recipe.json | 2 +- .../clinker_brick_halfslab_recipe.json | 2 +- .../independent/clinker_brick_recipe.json | 2 +- .../clinker_brick_slab_recipe.json | 2 +- .../clinker_brick_stained_block_recipe.json | 2 +- .../clinker_brick_stained_slab_recipe.json | 2 +- .../clinker_brick_stained_stairs_recipe.json | 2 +- .../clinker_brick_stairs_recipe.json | 2 +- ...clinker_brick_stairs_recipe_decompose.json | 2 +- .../clinker_brick_wall_recipe.json | 2 +- .../clinker_brick_wall_recipe_decompose.json | 2 +- .../independent/panzerglass_slab_recipe.json | 2 +- .../rebar_concrete_halfslab_recipe.json | 2 +- .../rebar_concrete_slab_recipe.json | 2 +- .../rebar_concrete_stairs_recipe.json | 2 +- ...ebar_concrete_stairs_recipe_decompose.json | 2 +- .../rebar_concrete_tile_recipe.json | 2 +- .../rebar_concrete_tile_recipe_decompose.json | 2 +- .../rebar_concrete_tile_slab_recipe.json | 2 +- .../rebar_concrete_tile_stairs_recipe.json | 2 +- ...concrete_tile_stairs_recipe_decompose.json | 2 +- .../rebar_concrete_wall_recipe.json | 2 +- .../rebar_concrete_wall_recipe_decompose.json | 2 +- .../independent/sign_danger_recipe.json | 2 +- .../independent/sign_defense_recipe.json | 2 +- .../recipes/independent/sign_exit_recipe.json | 16 +++ .../independent/sign_factoryarea_recipe.json | 2 +- .../sign_hotwire_recipe_wrapback.json | 6 +- .../independent/slag_brick_slab_recipe.json | 2 +- .../independent/slag_brick_stairs_recipe.json | 2 +- .../slag_brick_stairs_recipe_decompose.json | 2 +- .../independent/slag_brick_wall_recipe.json | 2 +- .../slag_brick_wall_recipe_decompose.json | 2 +- .../steel_double_t_support_recipe.json | 2 +- ...ght_pipe_valve_redstone_analog_recipe.json | 2 +- ..._pipe_valve_redstone_recipe_backcycle.json | 2 +- .../thick_steel_pole_head_recipe.json | 2 +- .../independent/thick_steel_pole_recipe.json | 2 +- .../thick_steel_pole_recipe_backcycle.json | 2 +- .../thin_steel_pole_head_recipe.json | 2 +- .../thin_steel_pole_recipe_backcycle.json | 2 +- .../treated_wood_pole_head_recipe.json | 2 +- .../treated_wood_pole_support_recipe.json | 2 +- .../treated_wood_pole_wrapover_recipe.json | 2 +- meta/update.json | 3 +- 84 files changed, 274 insertions(+), 245 deletions(-) create mode 100644 1.14/src/main/java/wile/engineersdecor/detail/OptionalRecipeCondition.java delete mode 100644 1.14/src/main/java/wile/engineersdecor/detail/RecipeCondModSpecific.java create mode 100644 1.14/src/main/resources/data/engineersdecor/recipes/independent/sign_exit_recipe.json diff --git a/1.12/gradle.properties b/1.12/gradle.properties index 231d5f7..1ad46cb 100644 --- a/1.12/gradle.properties +++ b/1.12/gradle.properties @@ -4,4 +4,4 @@ org.gradle.jvmargs=-Xmx8G version_minecraft=1.12.2 version_forge=14.23.5.2768 version_jei=4.10.0.198 -version_engineersdecor=1.0.11 +version_engineersdecor=1.0.12-b1 diff --git a/1.12/readme.md b/1.12/readme.md index a15defe..d983760 100644 --- a/1.12/readme.md +++ b/1.12/readme.md @@ -10,6 +10,8 @@ Mod sources for Minecraft version 1.12.2. ---- ## Version history + ~ v1.0.12-b1 [M] Window submodels stripped (issue #19). + ------------------------------------------------------------------- - v1.0.11 [R] Release based on v1.0.11-b3. Release-to-release changes: * Steel floor grating improvments. diff --git a/1.12/src/main/resources/assets/engineersdecor/models/block/furniture/framed_window_glasspane_submodel.json b/1.12/src/main/resources/assets/engineersdecor/models/block/furniture/framed_window_glasspane_submodel.json index 6973c98..e93da97 100644 --- a/1.12/src/main/resources/assets/engineersdecor/models/block/furniture/framed_window_glasspane_submodel.json +++ b/1.12/src/main/resources/assets/engineersdecor/models/block/furniture/framed_window_glasspane_submodel.json @@ -1,6 +1,5 @@ { "parent": "block/cube", - "ambientocclusion": false, "textures": { "glass": "engineersdecor:blocks/glass/window_glass_texture" }, @@ -13,27 +12,5 @@ "south": {"texture": "#glass"} } } - ], - "display": { - "ground": { - "scale": [0.2, 0.2, 0.2] - }, - "gui": { - "rotation": [30, 225, 0], - "scale": [0.9, 0.9, 0.9], - "translation": [ 3, -8, -3] - }, - "fixed": { - "scale": [0.5, 0.5, 0.5] - }, - "thirdperson_righthand": { - "rotation": [3, 69, 23], - "translation": [1, 1, -2.25], - "scale": [0.4, 0.4, 0.4] - }, - "firstperson_righthand": { - "rotation": [0, -61, 0], - "scale": [0.4, 0.4, 0.4] - } - } + ] } \ No newline at end of file diff --git a/1.12/src/main/resources/assets/engineersdecor/models/block/furniture/treated_wood_window_submodel.json b/1.12/src/main/resources/assets/engineersdecor/models/block/furniture/treated_wood_window_submodel.json index aa4b374..51b9f83 100644 --- a/1.12/src/main/resources/assets/engineersdecor/models/block/furniture/treated_wood_window_submodel.json +++ b/1.12/src/main/resources/assets/engineersdecor/models/block/furniture/treated_wood_window_submodel.json @@ -1,6 +1,5 @@ { "parent": "block/cube", - "ambientocclusion": false, "textures": { "frame": "engineersdecor:blocks/iestyle/treated_wood_rough_texture", "particle": "engineersdecor:blocks/iestyle/treated_wood_rough_texture" diff --git a/1.14/gradle.properties b/1.14/gradle.properties index 6040ba4..97cc866 100644 --- a/1.14/gradle.properties +++ b/1.14/gradle.properties @@ -2,15 +2,7 @@ org.gradle.daemon=false org.gradle.jvmargs=-Xmx8G version_minecraft=1.14.4 -version_forge_minecraft=1.14.4-28.0.40 +version_forge_minecraft=1.14.4-28.0.81 version_fml_mappings=20190719-1.14.3 version_jei=1.14.4:6.0.0.10 -version_engineersdecor=1.0.11-b2 -# -# jar signing data loaded from signing.properties in the project root. -# -#signing.keystore_file= -#signing.keystore_alias= -#signing.keystore_pass= -#signing.keystore_keypass= -#fingerprint_sha1.fp_sha1= +version_engineersdecor=1.0.11-b3 diff --git a/1.14/meta/update.json b/1.14/meta/update.json index 357c1a0..c441944 100644 --- a/1.14/meta/update.json +++ b/1.14/meta/update.json @@ -1,6 +1,7 @@ { "homepage": "https://www.curseforge.com/minecraft/mc-mods/engineers-decor/", "1.14.4": { + "1.0.11-b3": "[U] Updated to Forge 1.14.4-28.0.81/20190719-1.14.3.\n[F] Adapted recipe condition to Forge version (issue #49).", "1.0.11-b2": "[U] JEI dependency update 1.14.4:6.0.0.10.\n[F] Fixed creative ghost block issue (issue #48).\n[M] Updated ru_ru lang file (Shellyoung, PR#47).", "1.0.11-b1": "[A] Added Steel Table\n[A] Added Treated Wood Side Table\n[A] Added Exit Sign\n[A] Added Steel Floor Grating\n[M] Sign orientation fixed, only blocked vertical placement.", "1.0.9-b9": "[U] Update to Forge 1.14.4-28.0.40/20190719-1.14.3 for Forge testing.", @@ -21,6 +22,6 @@ }, "promos": { "1.14.4-recommended": "", - "1.14.4-latest": "1.0.11-b2" + "1.14.4-latest": "1.0.11-b3" } } \ No newline at end of file diff --git a/1.14/readme.md b/1.14/readme.md index b09b402..92c5819 100644 --- a/1.14/readme.md +++ b/1.14/readme.md @@ -10,6 +10,9 @@ Mod sources for Minecraft version 1.14.3. ---- ## Version history + - v1.0.11-b3 [U] Updated to Forge 1.14.4-28.0.81/20190719-1.14.3. + [F] Adapted recipe condition to Forge version (issue #49). + - v1.0.11-b2 [U] JEI dependency update 1.14.4:6.0.0.10. [F] Fixed creative ghost block issue (issue #48). [M] Updated ru_ru lang file (Shellyoung, PR#47). diff --git a/1.14/src/main/java/wile/engineersdecor/ModEngineersDecor.java b/1.14/src/main/java/wile/engineersdecor/ModEngineersDecor.java index ed1c480..f494ea6 100644 --- a/1.14/src/main/java/wile/engineersdecor/ModEngineersDecor.java +++ b/1.14/src/main/java/wile/engineersdecor/ModEngineersDecor.java @@ -1,7 +1,7 @@ package wile.engineersdecor; import wile.engineersdecor.detail.ModConfig; -import wile.engineersdecor.detail.RecipeCondModSpecific; +import wile.engineersdecor.detail.OptionalRecipeCondition; import wile.engineersdecor.detail.Networking; import wile.engineersdecor.blocks.*; import net.minecraft.client.Minecraft; @@ -33,6 +33,7 @@ import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.api.distmarker.OnlyIn; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; +import wile.engineersdecor.detail.OptionalRecipeCondition.Serializer; import javax.annotation.Nullable; @@ -64,7 +65,7 @@ public class ModEngineersDecor private void onSetup(final FMLCommonSetupEvent event) { LOGGER.info("Registering recipe condition processor ..."); - CraftingHelper.register(new ResourceLocation(MODID, "grc"), new RecipeCondModSpecific()); + CraftingHelper.register(Serializer.INSTANCE); Networking.init(); } diff --git a/1.14/src/main/java/wile/engineersdecor/blocks/BlockDecorHalfSlab.java b/1.14/src/main/java/wile/engineersdecor/blocks/BlockDecorHalfSlab.java index 91bfddd..9230a86 100644 --- a/1.14/src/main/java/wile/engineersdecor/blocks/BlockDecorHalfSlab.java +++ b/1.14/src/main/java/wile/engineersdecor/blocks/BlockDecorHalfSlab.java @@ -10,7 +10,6 @@ package wile.engineersdecor.blocks; import wile.engineersdecor.detail.ModAuxiliaries; -import wile.engineersdecor.detail.ModConfig; import net.minecraft.block.*; import net.minecraft.client.util.ITooltipFlag; import net.minecraft.entity.player.PlayerEntity; diff --git a/1.14/src/main/java/wile/engineersdecor/blocks/BlockDecorMineralSmelter.java b/1.14/src/main/java/wile/engineersdecor/blocks/BlockDecorMineralSmelter.java index ce71e02..d7733dd 100644 --- a/1.14/src/main/java/wile/engineersdecor/blocks/BlockDecorMineralSmelter.java +++ b/1.14/src/main/java/wile/engineersdecor/blocks/BlockDecorMineralSmelter.java @@ -11,7 +11,7 @@ package wile.engineersdecor.blocks; import wile.engineersdecor.ModContent; import wile.engineersdecor.ModEngineersDecor; -import wile.engineersdecor.detail.ModConfig; +//import wile.engineersdecor.detail.ModConfig; import net.minecraft.entity.LivingEntity; import net.minecraft.inventory.ISidedInventory; import net.minecraft.inventory.ItemStackHelper; @@ -40,15 +40,14 @@ import net.minecraftforge.common.capabilities.ICapabilityProvider; import net.minecraftforge.common.util.LazyOptional; import net.minecraftforge.energy.CapabilityEnergy; import net.minecraftforge.energy.IEnergyStorage; -import net.minecraftforge.fluids.FluidStack; -import net.minecraftforge.fluids.capability.IFluidHandler; -import net.minecraftforge.fluids.capability.IFluidTankProperties; -import net.minecraftforge.fluids.capability.CapabilityFluidHandler; +//import net.minecraftforge.fluids.FluidStack; +//import net.minecraftforge.fluids.capability.IFluidHandler; +//import net.minecraftforge.fluids.capability.IFluidTankProperties; +//import net.minecraftforge.fluids.capability.CapabilityFluidHandler; import net.minecraftforge.items.CapabilityItemHandler; import net.minecraftforge.items.IItemHandler; import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.api.distmarker.OnlyIn; - import javax.annotation.Nonnull; import javax.annotation.Nullable; import java.util.*; @@ -466,46 +465,46 @@ public class BlockDecorMineralSmelter extends BlockDecorDirectedHorizontal // IFluidHandler -------------------------------------------------------------------------------- - private LazyOptional fluid_handler_ = LazyOptional.of(() -> (IFluidHandler)new BFluidHandler(this)); - - // @todo: REPLACE lava=null with whatever will work - private static class BFluidHandler implements IFluidHandler, IFluidTankProperties - { - private final FluidStack lava; - private final BTileEntity te; - private final IFluidTankProperties[] props_ = {this}; - BFluidHandler(BTileEntity te) { - this.te = te; - //lava = new FluidStack(ForgeRegistries.FLUIDS.getValue(new ResourceLocation("minecraft:lava")), 1); - // lava = new FluidStack(Blocks.LAVA.getFluidState(Blocks.LAVA.getDefaultState()).getFluid(), 1); - // lava = new FluidStack(Fluids.EMPTY, 1); - //new net.minecraftforge.fluids.FluidStack(net.minecraft.fluid.Fluids.LAVA, 1); -lava=null; - } - @Override @Nullable public FluidStack getContents() { return new FluidStack(lava, te.fluid_level()); } - @Override public IFluidTankProperties[] getTankProperties() { return props_; } - @Override public int fill(FluidStack resource, boolean doFill) { return 0; } - @Override public int getCapacity() { return 1000; } - @Override public boolean canFill() { return false; } - @Override public boolean canDrain() { return true; } - @Override public boolean canFillFluidType(FluidStack fluidStack) { return false; } - @Override public boolean canDrainFluidType(FluidStack fluidStack) { return fluidStack.isFluidEqual(lava); } - - @Override @Nullable public FluidStack drain(FluidStack resource, boolean doDrain) - { - if((te.fluid_level() <= 0) || (!resource.isFluidEqual(lava))) return null; - FluidStack fs = getContents(); - if(doDrain) te.fluid_level_drain(fs.amount); - return fs; - } - - @Override @Nullable public FluidStack drain(int maxDrain, boolean doDrain) - { - if(te.fluid_level() <= 0) return null; - maxDrain = (doDrain) ? (te.fluid_level_drain(maxDrain)) : (Math.min(maxDrain, te.fluid_level())); - return new FluidStack(lava, maxDrain); - } - } +// private LazyOptional fluid_handler_ = LazyOptional.of(() -> (IFluidHandler)new BFluidHandler(this)); +// +// // @todo: REPLACE lava=null with whatever will work +// private static class BFluidHandler implements IFluidHandler, IFluidTankProperties +// { +// private final FluidStack lava; +// private final BTileEntity te; +// private final IFluidTankProperties[] props_ = {this}; +// BFluidHandler(BTileEntity te) { +// this.te = te; +// //lava = new FluidStack(ForgeRegistries.FLUIDS.getValue(new ResourceLocation("minecraft:lava")), 1); +// // lava = new FluidStack(Blocks.LAVA.getFluidState(Blocks.LAVA.getDefaultState()).getFluid(), 1); +// // lava = new FluidStack(Fluids.EMPTY, 1); +// //new net.minecraftforge.fluids.FluidStack(net.minecraft.fluid.Fluids.LAVA, 1); +//lava=null; +// } +// @Override @Nullable public FluidStack getContents() { return new FluidStack(lava, te.fluid_level()); } +// @Override public IFluidTankProperties[] getTankProperties() { return props_; } +// @Override public int fill(FluidStack resource, boolean doFill) { return 0; } +// @Override public int getCapacity() { return 1000; } +// @Override public boolean canFill() { return false; } +// @Override public boolean canDrain() { return true; } +// @Override public boolean canFillFluidType(FluidStack fluidStack) { return false; } +// @Override public boolean canDrainFluidType(FluidStack fluidStack) { return fluidStack.isFluidEqual(lava); } +// +// @Override @Nullable public FluidStack drain(FluidStack resource, boolean doDrain) +// { +// if((te.fluid_level() <= 0) || (!resource.isFluidEqual(lava))) return null; +// FluidStack fs = getContents(); +// if(doDrain) te.fluid_level_drain(fs.amount); +// return fs; +// } +// +// @Override @Nullable public FluidStack drain(int maxDrain, boolean doDrain) +// { +// if(te.fluid_level() <= 0) return null; +// maxDrain = (doDrain) ? (te.fluid_level_drain(maxDrain)) : (Math.min(maxDrain, te.fluid_level())); +// return new FluidStack(lava, maxDrain); +// } +// } // IEnergyStorage ---------------------------------------------------------------------------- diff --git a/1.14/src/main/java/wile/engineersdecor/blocks/BlockDecorPassiveFluidAccumulator.java b/1.14/src/main/java/wile/engineersdecor/blocks/BlockDecorPassiveFluidAccumulator.java index 475f613..0e2db31 100644 --- a/1.14/src/main/java/wile/engineersdecor/blocks/BlockDecorPassiveFluidAccumulator.java +++ b/1.14/src/main/java/wile/engineersdecor/blocks/BlockDecorPassiveFluidAccumulator.java @@ -15,7 +15,6 @@ package wile.engineersdecor.blocks; import wile.engineersdecor.ModContent; import wile.engineersdecor.detail.ModAuxiliaries; -import net.minecraft.tileentity.ITickableTileEntity; import net.minecraft.util.math.BlockRayTraceResult; import net.minecraft.entity.player.PlayerEntity; import net.minecraft.tileentity.TileEntityType; @@ -23,23 +22,20 @@ import net.minecraft.util.Hand; import net.minecraft.world.IBlockReader; import net.minecraft.block.Block; import net.minecraft.block.BlockState; -import net.minecraft.nbt.CompoundNBT; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.math.MathHelper; import net.minecraft.world.World; import net.minecraft.util.Direction; import net.minecraft.util.math.AxisAlignedBB; import net.minecraft.util.math.BlockPos; -import net.minecraftforge.common.util.LazyOptional; -import net.minecraftforge.common.capabilities.ICapabilityProvider; -import net.minecraftforge.fluids.capability.CapabilityFluidHandler; -import net.minecraftforge.fluids.capability.IFluidHandler; -import net.minecraftforge.fluids.capability.IFluidTankProperties; +//import net.minecraftforge.common.util.LazyOptional; +//import net.minecraftforge.common.capabilities.ICapabilityProvider; +//import net.minecraftforge.fluids.capability.CapabilityFluidHandler; +//import net.minecraftforge.fluids.capability.IFluidHandler; +//import net.minecraftforge.fluids.capability.IFluidTankProperties; import net.minecraftforge.fluids.FluidStack; import javax.annotation.Nullable; -import java.util.ArrayList; -import java.util.List; public class BlockDecorPassiveFluidAccumulator extends BlockDecorDirected @@ -97,7 +93,7 @@ public class BlockDecorPassiveFluidAccumulator extends BlockDecorDirected public void send_device_stats(PlayerEntity player) { - int t_vol = (tank_==null) ? 0 : (tank_.amount); + int t_vol = (tank_==null) ? 0 : (tank_.getAmount()); ModAuxiliaries.playerChatMessage(player,"" + t_vol + "mB"); } diff --git a/1.14/src/main/java/wile/engineersdecor/blocks/BlockDecorPipeValve.java b/1.14/src/main/java/wile/engineersdecor/blocks/BlockDecorPipeValve.java index e314bc9..3c12253 100644 --- a/1.14/src/main/java/wile/engineersdecor/blocks/BlockDecorPipeValve.java +++ b/1.14/src/main/java/wile/engineersdecor/blocks/BlockDecorPipeValve.java @@ -11,7 +11,6 @@ package wile.engineersdecor.blocks; import wile.engineersdecor.ModContent; import wile.engineersdecor.ModEngineersDecor; -import blusunrize.immersiveengineering.api.fluid.IFluidPipe; import net.minecraft.state.BooleanProperty; import net.minecraft.world.IWorld; import net.minecraft.item.BlockItemUseContext; @@ -22,19 +21,18 @@ import net.minecraft.block.Block; import net.minecraft.block.BlockState; import net.minecraft.item.ItemStack; import net.minecraft.entity.LivingEntity; -import net.minecraft.nbt.CompoundNBT; import net.minecraft.tileentity.TileEntity; import net.minecraft.world.World; import net.minecraft.util.math.MathHelper; import net.minecraft.util.Direction; import net.minecraft.util.math.AxisAlignedBB; import net.minecraft.util.math.BlockPos; -import net.minecraftforge.common.util.LazyOptional; -import net.minecraftforge.common.capabilities.ICapabilityProvider; -import net.minecraftforge.fluids.capability.CapabilityFluidHandler; -import net.minecraftforge.fluids.capability.IFluidHandler; -import net.minecraftforge.fluids.capability.IFluidTankProperties; -import net.minecraftforge.fluids.FluidStack; +//import net.minecraftforge.common.util.LazyOptional; +//import net.minecraftforge.common.capabilities.ICapabilityProvider; +//import net.minecraftforge.fluids.capability.CapabilityFluidHandler; +//import net.minecraftforge.fluids.capability.IFluidHandler; +//import net.minecraftforge.fluids.capability.IFluidTankProperties; +//import net.minecraftforge.fluids.FluidStack; import javax.annotation.Nullable; diff --git a/1.14/src/main/java/wile/engineersdecor/blocks/BlockDecorSlab.java b/1.14/src/main/java/wile/engineersdecor/blocks/BlockDecorSlab.java index f02264d..ecd0084 100644 --- a/1.14/src/main/java/wile/engineersdecor/blocks/BlockDecorSlab.java +++ b/1.14/src/main/java/wile/engineersdecor/blocks/BlockDecorSlab.java @@ -10,7 +10,6 @@ package wile.engineersdecor.blocks; import net.minecraft.util.math.*; import wile.engineersdecor.detail.ModAuxiliaries; -import wile.engineersdecor.detail.ModConfig; import net.minecraft.block.*; import net.minecraft.client.util.ITooltipFlag; import net.minecraft.entity.player.PlayerEntity; diff --git a/1.14/src/main/java/wile/engineersdecor/detail/OptionalRecipeCondition.java b/1.14/src/main/java/wile/engineersdecor/detail/OptionalRecipeCondition.java new file mode 100644 index 0000000..348dfcd --- /dev/null +++ b/1.14/src/main/java/wile/engineersdecor/detail/OptionalRecipeCondition.java @@ -0,0 +1,116 @@ +/* + * @file OptionalRecipeCondition.java + * @author Stefan Wilhelm (wile) + * @copyright (C) 2018 Stefan Wilhelm + * @license MIT (see https://opensource.org/licenses/MIT) + * + * Recipe condition to enable opt'ing out JSON based recipes. + */ +package wile.engineersdecor.detail; + +import wile.engineersdecor.ModEngineersDecor; +import net.minecraft.block.Block; +import net.minecraft.item.Item; +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.JSONUtils; +import net.minecraftforge.common.crafting.conditions.ICondition; +import net.minecraftforge.common.crafting.conditions.IConditionSerializer; +import net.minecraftforge.registries.IForgeRegistry; +import net.minecraftforge.registries.ForgeRegistries; +import com.google.gson.JsonArray; +import com.google.gson.JsonElement; +import com.google.gson.JsonObject; +import javax.annotation.Nullable; +import java.util.ArrayList; +import java.util.List; + + +public class OptionalRecipeCondition implements ICondition +{ + private static final ResourceLocation NAME = new ResourceLocation(ModEngineersDecor.MODID, "optional"); + + private final List all_required; + private final List any_missing; + private final @Nullable ResourceLocation result; + + public OptionalRecipeCondition(ResourceLocation result, List required, List missing) + { all_required = required; any_missing = missing; this.result = result; } + + @Override + public ResourceLocation getID() + { return NAME; } + + @Override + public String toString() + { + StringBuilder sb = new StringBuilder(); + sb.append("Optional recipe, all-required: ["); + for(ResourceLocation e:all_required) sb.append(e.toString()).append(","); + sb.delete(sb.length()-1, sb.length()).append("], any-missing: ["); + for(ResourceLocation e:any_missing) sb.append(e.toString()).append(","); + sb.delete(sb.length()-1, sb.length()).append("]"); + return sb.toString(); + } + + @Override + public boolean test() + { + final IForgeRegistry block_registry = ForgeRegistries.BLOCKS; + final IForgeRegistry item_registry = ForgeRegistries.ITEMS; + if(result != null) { + if((!block_registry.containsKey(result)) && (!item_registry.containsKey(result))) return false; // required result not registered + } + if(!all_required.isEmpty()) { + for(ResourceLocation rl:all_required) { + if((!block_registry.containsKey(rl)) && (!item_registry.containsKey(rl))) return false; + } + } + if(!any_missing.isEmpty()) { + for(ResourceLocation rl:any_missing) { + // At least one item missing, enable this recipe as alternative recipe for another one that check the missing item as required item. + // --> e.g. if IE not installed there is no slag. One recipe requires slag, and another one (for the same result) is used if there + // is no slag. + if((!block_registry.containsKey(rl)) && (!item_registry.containsKey(rl))) return true; + } + return false; + } + return true; + } + + public static class Serializer implements IConditionSerializer + { + public static final Serializer INSTANCE = new Serializer(); + + @Override + public ResourceLocation getID() + { return OptionalRecipeCondition.NAME; } + + @Override + public void write(JsonObject json, OptionalRecipeCondition condition) + { + JsonArray required = new JsonArray(); + JsonArray missing = new JsonArray(); + for(ResourceLocation e:condition.all_required) required.add(e.toString()); + for(ResourceLocation e:condition.any_missing) missing.add(e.toString()); + json.add("required", required); + json.add("missing", missing); + if(condition.result != null) json.addProperty("result", condition.result.toString()); + } + + @Override + public OptionalRecipeCondition read(JsonObject json) + { + List required = new ArrayList<>(); + List missing = new ArrayList<>(); + ResourceLocation result = null; + if(json.has("result")) result = new ResourceLocation(json.get("result").getAsString()); + if(json.has("required")) { + for(JsonElement e:JSONUtils.getJsonArray(json, "required")) required.add(new ResourceLocation(e.getAsString())); + } + if(json.has("missing")) { + for(JsonElement e:JSONUtils.getJsonArray(json, "missing")) missing.add(new ResourceLocation(e.getAsString())); + } + return new OptionalRecipeCondition(result, required, missing); + } + } +} diff --git a/1.14/src/main/java/wile/engineersdecor/detail/RecipeCondModSpecific.java b/1.14/src/main/java/wile/engineersdecor/detail/RecipeCondModSpecific.java deleted file mode 100644 index 981ba73..0000000 --- a/1.14/src/main/java/wile/engineersdecor/detail/RecipeCondModSpecific.java +++ /dev/null @@ -1,70 +0,0 @@ -/* - * @file RecipeCondRegistered.java - * @author Stefan Wilhelm (wile) - * @copyright (C) 2018 Stefan Wilhelm - * @license MIT (see https://opensource.org/licenses/MIT) - * - * Recipe condition to enable opt'ing out JSON based recipes, referenced - * in assets/engineersdecor/recipes/_factories.json with full path (therefore - * I had to make a separate file for that instead of a few lines in - * ModAuxiliaries). - */ -package wile.engineersdecor.detail; - -import net.minecraft.block.Block; -import net.minecraft.item.Item; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.common.crafting.IConditionSerializer; -import net.minecraftforge.registries.IForgeRegistry; -import net.minecraftforge.registries.ForgeRegistries; - -import com.google.gson.*; -import javax.annotation.Nullable; -import javax.annotation.Nonnull; -import java.util.function.BooleanSupplier; - - -public class RecipeCondModSpecific implements IConditionSerializer -{ - public static final BooleanSupplier RECIPE_INCLUDE = ()->true; - public static final BooleanSupplier RECIPE_EXCLUDE = ()->false; - - @Override - public @Nonnull BooleanSupplier parse(@Nullable JsonObject json) { - try { - if(json==null) return RECIPE_EXCLUDE; - final IForgeRegistry block_registry = ForgeRegistries.BLOCKS; - final IForgeRegistry item_registry = ForgeRegistries.ITEMS; - final JsonArray items = json.getAsJsonArray("required"); - if(items!=null) { - for(JsonElement e: items) { - if(!e.isJsonPrimitive()) continue; - final ResourceLocation rl = new ResourceLocation(((JsonPrimitive)e).getAsString()); - if((!block_registry.containsKey(rl)) && (!item_registry.containsKey(rl))) return RECIPE_EXCLUDE; // required item not registered - } - } - final JsonPrimitive result = json.getAsJsonPrimitive("result"); - if(result != null) { - final ResourceLocation rl = new ResourceLocation(result.getAsString()); - if((!block_registry.containsKey(rl)) && (!item_registry.containsKey(rl))) return RECIPE_EXCLUDE; // required result not registered - } - final JsonArray missing = json.getAsJsonArray("missing"); - if((missing!=null) && (missing.size() > 0)) { - for(JsonElement e: missing) { - if(!e.isJsonPrimitive()) continue; - final ResourceLocation rl = new ResourceLocation(((JsonPrimitive)e).getAsString()); - // At least one item missing, enable this recipe as alternative recipe for another one that check the missing item as required item. - // --> e.g. if IE not installed there is no slag. One recipe requires slag, and another one (for the same result) is used if there - // is no slag. - if((!block_registry.containsKey(rl)) && (!item_registry.containsKey(rl))) return RECIPE_INCLUDE; - } - return RECIPE_EXCLUDE; // all required there, but there is no item missing, so another recipe - } else { - return RECIPE_INCLUDE; // no missing given, means include if result and required are all there. - } - } catch(Throwable ex) { - ModAuxiliaries.logError("rsgauges::ResultRegisteredCondition failed: " + ex.toString()); - } - return RECIPE_EXCLUDE; // skip on exception. - } -} diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/factory_dropper_recipe_standalone.json b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/factory_dropper_recipe_standalone.json index 6f8cd6b..2a179f9 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/factory_dropper_recipe_standalone.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/factory_dropper_recipe_standalone.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:factory_dropper", "missing": ["immersiveengineering:material"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/iron_inset_light_recipe_standalone.json b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/iron_inset_light_recipe_standalone.json index fafec6f..9a8a619 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/iron_inset_light_recipe_standalone.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/iron_inset_light_recipe_standalone.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:iron_inset_light", "missing": ["immersiveengineering:material"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/metal_rung_ladder_recipe_standalone.json b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/metal_rung_ladder_recipe_standalone.json index 92c71e8..62f7ece 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/metal_rung_ladder_recipe_standalone.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/metal_rung_ladder_recipe_standalone.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:metal_rung_ladder", "missing": ["immersiveengineering:material"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/metal_rung_steps_recipe_standalone.json b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/metal_rung_steps_recipe_standalone.json index 1507e0f..c5c152f 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/metal_rung_steps_recipe_standalone.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/metal_rung_steps_recipe_standalone.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:metal_rung_steps", "missing": ["immersiveengineering:material"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/panzerglass_block_recipe_standalone.json.json b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/panzerglass_block_recipe_standalone.json.json index 728030d..436eb72 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/panzerglass_block_recipe_standalone.json.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/panzerglass_block_recipe_standalone.json.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:panzerglass_block", "missing": ["immersiveengineering:stone_decoration"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/passive_fluid_accumulator_recipe_standalone.json b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/passive_fluid_accumulator_recipe_standalone.json index 36627cd..f8867fa 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/passive_fluid_accumulator_recipe_standalone.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/passive_fluid_accumulator_recipe_standalone.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:passive_fluid_accumulator", "required": ["engineersdecor:straight_pipe_valve"], "missing": ["immersiveengineering:fluid_pipe", "immersiveengineering:mechanical_component"] diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/rebar_concrete_recipe_standalone.json b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/rebar_concrete_recipe_standalone.json index 725dd63..e6cf0fd 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/rebar_concrete_recipe_standalone.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/rebar_concrete_recipe_standalone.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:rebar_concrete", "missing": ["immersiveengineering:concrete"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/sign_hotwire_standalone.json b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/sign_hotwire_standalone.json index 38fdaa6..ac4952b 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/sign_hotwire_standalone.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/sign_hotwire_standalone.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:sign_hotwire", "missing": ["immersiveengineering:material"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/slag_brick_recipe_standalone.json b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/slag_brick_recipe_standalone.json index 356d393..4ad3e18 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/slag_brick_recipe_standalone.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/slag_brick_recipe_standalone.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:slag_brick_block", "missing": ["immersiveengineering:material"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/small_electrical_furnace_standalone.json b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/small_electrical_furnace_standalone.json index 8d7311f..93dc420 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/small_electrical_furnace_standalone.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/small_electrical_furnace_standalone.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:small_electrical_furnace", "missing": ["immersiveengineering:material"], "required": ["engineersdecor:small_lab_furnace"] diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/small_lab_furnace_standalone.json b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/small_lab_furnace_standalone.json index 19f8ff8..ae12d66 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/small_lab_furnace_standalone.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/small_lab_furnace_standalone.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:small_lab_furnace", "missing": ["immersiveengineering:material"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/small_mineral_smelter_standalone.json b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/small_mineral_smelter_standalone.json index ef9e2b9..556c053 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/small_mineral_smelter_standalone.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/small_mineral_smelter_standalone.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:small_mineral_smelter", "missing": ["immersiveengineering:metal_device1"], "required": ["engineersdecor:panzerglass_block"] diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/small_waste_incinerator_standalone.json b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/small_waste_incinerator_standalone.json index e7cd25f..dee67e1 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/small_waste_incinerator_standalone.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/small_waste_incinerator_standalone.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:small_waste_incinerator", "missing": ["immersiveengineering:material"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/steel_framed_window_standalone.json b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/steel_framed_window_standalone.json index 49af18f..757d8c0 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/steel_framed_window_standalone.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/steel_framed_window_standalone.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:steel_framed_window", "missing": ["immersiveengineering:material"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/straight_pipe_valve_recipe_standalone.json b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/straight_pipe_valve_recipe_standalone.json index 21c1212..efdbbed 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/straight_pipe_valve_recipe_standalone.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/straight_pipe_valve_recipe_standalone.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:straight_pipe_valve", "required": ["engineersdecor:thick_steel_pole"], "missing": ["immersiveengineering:fluid_pipe", "immersiveengineering:mechanical_component"] diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/straight_pipe_valve_redstone_recipe_standalone.json b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/straight_pipe_valve_redstone_recipe_standalone.json index 75e9581..5e0115e 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/straight_pipe_valve_redstone_recipe_standalone.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/straight_pipe_valve_redstone_recipe_standalone.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:straight_pipe_valve", "required": ["engineersdecor:straight_pipe_valve"], "missing": ["immersiveengineering:redstone_connector"] diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/thin_steel_pole_recipe_standalone.json b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/thin_steel_pole_recipe_standalone.json index 8204d25..9dc107f 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/thin_steel_pole_recipe_standalone.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/thin_steel_pole_recipe_standalone.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:thin_steel_pole", "missing": ["immersiveengineering:material"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/treated_wood_crafting_table_standalone.json b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/treated_wood_crafting_table_standalone.json index f1ef82b..e11015e 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/treated_wood_crafting_table_standalone.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/treated_wood_crafting_table_standalone.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:treated_wood_crafting_table", "missing": ["immersiveengineering:material"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/treated_wood_ladder_standalone.json b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/treated_wood_ladder_standalone.json index 942a2f9..707da73 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/treated_wood_ladder_standalone.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/treated_wood_ladder_standalone.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:treated_wood_ladder", "missing": ["immersiveengineering:material"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/treated_wood_pole_standalone.json b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/treated_wood_pole_standalone.json index 434b406..56c3285 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/treated_wood_pole_standalone.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/treated_wood_pole_standalone.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:treated_wood_pole", "missing": ["immersiveengineering:material"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/treated_wood_stool_standalone.json b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/treated_wood_stool_standalone.json index db551e2..ace1493 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/treated_wood_stool_standalone.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/treated_wood_stool_standalone.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:treated_wood_stool", "missing": ["immersiveengineering:material"], "required": ["engineersdecor:treated_wood_pole"] diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/treated_wood_table_standalone.json b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/treated_wood_table_standalone.json index 88c1745..a9838e8 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/treated_wood_table_standalone.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/treated_wood_table_standalone.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:treated_wood_table", "missing": ["immersiveengineering:material"], "required": ["engineersdecor:treated_wood_pole"] diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/treated_wood_window_standalone.json b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/treated_wood_window_standalone.json index cb4ec70..94bb0d7 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/treated_wood_window_standalone.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/treated_wood_window_standalone.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:treated_wood_window", "missing": ["immersiveengineering:material"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/treated_wood_windowsill_standalone.json b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/treated_wood_windowsill_standalone.json index 7c3bd87..dc8d163 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/alternative/treated_wood_windowsill_standalone.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/alternative/treated_wood_windowsill_standalone.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:treated_wood_windowsill", "missing": ["immersiveengineering:material"], "required": ["engineersdecor:treated_wood_pole"] diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/dependent/concrete_halfslab_recipe.json b/1.14/src/main/resources/data/engineersdecor/recipes/dependent/concrete_halfslab_recipe.json index 943c789..0e695b4 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/dependent/concrete_halfslab_recipe.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/dependent/concrete_halfslab_recipe.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:concrete_halfslab", "required": ["immersiveengineering:concrete_slab"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_halfslab_recipe.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_halfslab_recipe.json index c341cc5..422e9fb 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_halfslab_recipe.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_halfslab_recipe.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:halfslab_clinker_brick", "required": ["engineersdecor:clinker_brick_slab"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_recipe.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_recipe.json index 06df2d7..3449797 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_recipe.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_recipe.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:clinker_brick_block" } ], diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_slab_recipe.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_slab_recipe.json index 13e68f2..e418fa7 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_slab_recipe.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_slab_recipe.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:clinker_brick_slab", "required": ["engineersdecor:clinker_brick_block"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_stained_block_recipe.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_stained_block_recipe.json index 6ba09da..33e34a0 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_stained_block_recipe.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_stained_block_recipe.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:clinker_brick_stained_block", "required": ["engineersdecor:clinker_brick_block"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_stained_slab_recipe.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_stained_slab_recipe.json index fd8be22..f62ae91 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_stained_slab_recipe.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_stained_slab_recipe.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:clinker_brick_stained_slab", "required": ["engineersdecor:clinker_brick_stained_block"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_stained_stairs_recipe.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_stained_stairs_recipe.json index 094f31f..56ccdc2 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_stained_stairs_recipe.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_stained_stairs_recipe.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:clinker_brick_stained_stairs", "required": ["engineersdecor:clinker_brick_stained_block"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_stairs_recipe.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_stairs_recipe.json index 7f239fd..9730544 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_stairs_recipe.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_stairs_recipe.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:clinker_brick_stairs", "required": ["engineersdecor:clinker_brick_block"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_stairs_recipe_decompose.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_stairs_recipe_decompose.json index 0b3538b..3e769ac 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_stairs_recipe_decompose.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_stairs_recipe_decompose.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:clinker_brick_block", "required": ["engineersdecor:clinker_brick_stairs"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_wall_recipe.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_wall_recipe.json index 4071adf..2816ae7 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_wall_recipe.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_wall_recipe.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:clinker_brick_wall", "required": ["engineersdecor:clinker_brick_block"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_wall_recipe_decompose.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_wall_recipe_decompose.json index 6a9a169..23bdb40 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_wall_recipe_decompose.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/clinker_brick_wall_recipe_decompose.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:clinker_brick_block", "required": ["engineersdecor:clinker_brick_wall"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/panzerglass_slab_recipe.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/panzerglass_slab_recipe.json index 9bcc3d3..49255fc 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/panzerglass_slab_recipe.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/panzerglass_slab_recipe.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:panzerglass_block", "required": ["engineersdecor:rebar_concrete_tile"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_halfslab_recipe.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_halfslab_recipe.json index ece375b..37c9b1b 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_halfslab_recipe.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_halfslab_recipe.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:halfslab_rebar_concrete", "required": ["engineersdecor:rebar_concrete_slab"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_slab_recipe.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_slab_recipe.json index d5a5a6a..724fc43 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_slab_recipe.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_slab_recipe.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:rebar_concrete_slab", "required": ["engineersdecor:rebar_concrete"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_stairs_recipe.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_stairs_recipe.json index 2e6c9a0..98cfeed 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_stairs_recipe.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_stairs_recipe.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:rebar_concrete_stairs", "required": ["engineersdecor:rebar_concrete"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_stairs_recipe_decompose.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_stairs_recipe_decompose.json index 6a2002b..8e35f8f 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_stairs_recipe_decompose.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_stairs_recipe_decompose.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:rebar_concrete", "required": ["engineersdecor:rebar_concrete_stairs"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_tile_recipe.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_tile_recipe.json index 272b7a8..b273ff6 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_tile_recipe.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_tile_recipe.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:rebar_concrete_tile", "required": ["engineersdecor:rebar_concrete"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_tile_recipe_decompose.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_tile_recipe_decompose.json index d460606..677f42f 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_tile_recipe_decompose.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_tile_recipe_decompose.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:rebar_concrete", "required": ["engineersdecor:rebar_concrete_tile"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_tile_slab_recipe.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_tile_slab_recipe.json index c8378e1..c68aadd 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_tile_slab_recipe.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_tile_slab_recipe.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:rebar_concrete_tile_slab", "required": ["engineersdecor:rebar_concrete_tile"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_tile_stairs_recipe.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_tile_stairs_recipe.json index 65d63d1..44ca6c8 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_tile_stairs_recipe.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_tile_stairs_recipe.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:rebar_concrete_tile_stairs", "required": ["engineersdecor:rebar_concrete_tile"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_tile_stairs_recipe_decompose.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_tile_stairs_recipe_decompose.json index 6c7c72d..56cdc91 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_tile_stairs_recipe_decompose.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_tile_stairs_recipe_decompose.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:rebar_concrete_tile", "required": ["engineersdecor:rebar_concrete_tile_stairs"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_wall_recipe.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_wall_recipe.json index f1677af..de18f03 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_wall_recipe.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_wall_recipe.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:rebar_concrete_wall", "required": ["engineersdecor:rebar_concrete"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_wall_recipe_decompose.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_wall_recipe_decompose.json index cea3ff5..7fc3d7e 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_wall_recipe_decompose.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/rebar_concrete_wall_recipe_decompose.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:rebar_concrete", "required": ["engineersdecor:rebar_concrete_wall"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/sign_danger_recipe.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/sign_danger_recipe.json index 7388ec6..1d4db61 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/sign_danger_recipe.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/sign_danger_recipe.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:sign_danger", "required": ["engineersdecor:sign_hotwire"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/sign_defense_recipe.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/sign_defense_recipe.json index eac1559..17d27eb 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/sign_defense_recipe.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/sign_defense_recipe.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:sign_defense", "required": ["engineersdecor:sign_danger"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/sign_exit_recipe.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/sign_exit_recipe.json new file mode 100644 index 0000000..1d0ce94 --- /dev/null +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/sign_exit_recipe.json @@ -0,0 +1,16 @@ +{ + "conditions": [ + { + "type": "engineersdecor:optional", + "result": "engineersdecor:sign_exit", + "required": ["engineersdecor:sign_factoryarea"] + } + ], + "type": "minecraft:crafting_shapeless", + "ingredients": [ + { "item": "engineersdecor:sign_factoryarea" } + ], + "result": { + "item": "engineersdecor:sign_exit" + } +} diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/sign_factoryarea_recipe.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/sign_factoryarea_recipe.json index 42096da..a820ade 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/sign_factoryarea_recipe.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/sign_factoryarea_recipe.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:sign_factoryarea", "required": ["engineersdecor:sign_defense"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/sign_hotwire_recipe_wrapback.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/sign_hotwire_recipe_wrapback.json index 9270d8a..a5025e0 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/sign_hotwire_recipe_wrapback.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/sign_hotwire_recipe_wrapback.json @@ -1,14 +1,14 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:sign_hotwire", - "required": ["engineersdecor:sign_factoryarea"] + "required": ["engineersdecor:sign_exit"] } ], "type": "minecraft:crafting_shapeless", "ingredients": [ - { "item": "engineersdecor:sign_factoryarea" } + { "item": "engineersdecor:sign_exit" } ], "result": { "item": "engineersdecor:sign_hotwire" diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/slag_brick_slab_recipe.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/slag_brick_slab_recipe.json index 87b6f92..3a33bc1 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/slag_brick_slab_recipe.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/slag_brick_slab_recipe.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:slag_brick_slab", "required": ["engineersdecor:slag_brick_block"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/slag_brick_stairs_recipe.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/slag_brick_stairs_recipe.json index 757d468..fad8b47 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/slag_brick_stairs_recipe.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/slag_brick_stairs_recipe.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:slag_brick_stairs", "required": ["engineersdecor:slag_brick_block"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/slag_brick_stairs_recipe_decompose.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/slag_brick_stairs_recipe_decompose.json index 04b5bcd..adef45d 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/slag_brick_stairs_recipe_decompose.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/slag_brick_stairs_recipe_decompose.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:slag_brick_block", "required": ["engineersdecor:slag_brick_stairs"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/slag_brick_wall_recipe.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/slag_brick_wall_recipe.json index 8377e53..101febc 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/slag_brick_wall_recipe.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/slag_brick_wall_recipe.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:slag_brick_wall", "required": ["engineersdecor:slag_brick_block"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/slag_brick_wall_recipe_decompose.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/slag_brick_wall_recipe_decompose.json index c480a43..6fc131c 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/slag_brick_wall_recipe_decompose.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/slag_brick_wall_recipe_decompose.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:slag_brick_block", "required": ["engineersdecor:slag_brick_wall"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/steel_double_t_support_recipe.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/steel_double_t_support_recipe.json index 64741fa..1bc6c53 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/steel_double_t_support_recipe.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/steel_double_t_support_recipe.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:steel_double_t_support", "required": ["engineersdecor:thin_steel_pole"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/straight_pipe_valve_redstone_analog_recipe.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/straight_pipe_valve_redstone_analog_recipe.json index 662db2b..8cdcb89 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/straight_pipe_valve_redstone_analog_recipe.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/straight_pipe_valve_redstone_analog_recipe.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:straight_pipe_valve_redstone_analog", "required": ["engineersdecor:straight_pipe_valve_redstone"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/straight_pipe_valve_redstone_recipe_backcycle.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/straight_pipe_valve_redstone_recipe_backcycle.json index 4379b72..61f85e5 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/straight_pipe_valve_redstone_recipe_backcycle.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/straight_pipe_valve_redstone_recipe_backcycle.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:straight_pipe_valve_redstone", "required": ["engineersdecor:straight_pipe_valve_redstone_analog"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/thick_steel_pole_head_recipe.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/thick_steel_pole_head_recipe.json index 86ed2eb..b63380e 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/thick_steel_pole_head_recipe.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/thick_steel_pole_head_recipe.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:thick_steel_pole_head", "required": ["engineersdecor:thick_steel_pole"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/thick_steel_pole_recipe.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/thick_steel_pole_recipe.json index 0b2e1a9..12804c2 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/thick_steel_pole_recipe.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/thick_steel_pole_recipe.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:thick_steel_pole", "required": ["engineersdecor:thin_steel_pole"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/thick_steel_pole_recipe_backcycle.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/thick_steel_pole_recipe_backcycle.json index 2319260..9cc1ecc 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/thick_steel_pole_recipe_backcycle.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/thick_steel_pole_recipe_backcycle.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:thick_steel_pole", "required": ["engineersdecor:thick_steel_pole_head"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/thin_steel_pole_head_recipe.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/thin_steel_pole_head_recipe.json index 09e7f1b..3462df7 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/thin_steel_pole_head_recipe.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/thin_steel_pole_head_recipe.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:thin_steel_pole_head", "required": ["engineersdecor:thin_steel_pole"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/thin_steel_pole_recipe_backcycle.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/thin_steel_pole_recipe_backcycle.json index 306fb28..d1617b2 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/thin_steel_pole_recipe_backcycle.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/thin_steel_pole_recipe_backcycle.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:thin_steel_pole", "required": ["engineersdecor:thin_steel_pole_head"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/treated_wood_pole_head_recipe.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/treated_wood_pole_head_recipe.json index 735e3d7..2dfe698 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/treated_wood_pole_head_recipe.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/treated_wood_pole_head_recipe.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:treated_wood_pole_head", "required": ["engineersdecor:treated_wood_pole"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/treated_wood_pole_support_recipe.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/treated_wood_pole_support_recipe.json index 08ed0b9..5307077 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/treated_wood_pole_support_recipe.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/treated_wood_pole_support_recipe.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:treated_wood_pole_support", "required": ["engineersdecor:treated_wood_pole_head"] } diff --git a/1.14/src/main/resources/data/engineersdecor/recipes/independent/treated_wood_pole_wrapover_recipe.json b/1.14/src/main/resources/data/engineersdecor/recipes/independent/treated_wood_pole_wrapover_recipe.json index 7942d20..9889103 100644 --- a/1.14/src/main/resources/data/engineersdecor/recipes/independent/treated_wood_pole_wrapover_recipe.json +++ b/1.14/src/main/resources/data/engineersdecor/recipes/independent/treated_wood_pole_wrapover_recipe.json @@ -1,7 +1,7 @@ { "conditions": [ { - "type": "engineersdecor:grc", + "type": "engineersdecor:optional", "result": "engineersdecor:treated_wood_pole", "required": ["engineersdecor:treated_wood_pole_support"] } diff --git a/meta/update.json b/meta/update.json index 2a7a0fa..7d8cdc0 100644 --- a/meta/update.json +++ b/meta/update.json @@ -4,7 +4,7 @@ "1.12.2-recommended": "1.0.11", "1.12.2-latest": "1.0.11", "1.14.4-recommended": "", - "1.14.4-latest": "1.0.11-b2" + "1.14.4-latest": "1.0.11-b3" }, "1.12.2": { "1.0.11": "[R] Release based on v1.0.11-b3. Release-to-release changes: * Steel floor grating improvments. * Minor model box fixes. * Standalone recipes added. * Language updates.", @@ -60,6 +60,7 @@ "1.0.0-b1": "[A] Initial structure.\n[A] Added clinker bricks and clinker brick stairs.\n[A] Added slag bricks and slag brick stairs.\n[A] Added metal rung ladder.\n[A] Added staggered metal steps ladder.\n[A] Added treated wood ladder.\n[A] Added treated wood pole.\n[A] Added treated wood table." }, "1.14.4": { + "1.0.11-b3": "[U] Updated to Forge 1.14.4-28.0.81/20190719-1.14.3.\n[F] Adapted recipe condition to Forge version (issue #49).", "1.0.11-b2": "[U] JEI dependency update 1.14.4:6.0.0.10.\n[F] Fixed creative ghost block issue (issue #48).\n[M] Updated ru_ru lang file (Shellyoung, PR#47).", "1.0.11-b1": "[A] Added Steel Table\n[A] Added Treated Wood Side Table\n[A] Added Exit Sign\n[A] Added Steel Floor Grating\n[M] Sign orientation fixed, only blocked vertical placement.", "1.0.9-b9": "[U] Update to Forge 1.14.4-28.0.40/20190719-1.14.3 for Forge testing.",