diff --git a/src/main/java/de/ellpeck/naturesaura/blocks/tiles/BlockEntityBlastFurnaceBooster.java b/src/main/java/de/ellpeck/naturesaura/blocks/tiles/BlockEntityBlastFurnaceBooster.java index 933d9302..faf9642a 100644 --- a/src/main/java/de/ellpeck/naturesaura/blocks/tiles/BlockEntityBlastFurnaceBooster.java +++ b/src/main/java/de/ellpeck/naturesaura/blocks/tiles/BlockEntityBlastFurnaceBooster.java @@ -10,6 +10,7 @@ import net.minecraft.world.item.crafting.Ingredient; import net.minecraft.world.item.crafting.Recipe; import net.minecraft.world.level.block.entity.BlastFurnaceBlockEntity; import net.minecraft.world.level.block.state.BlockState; +import net.minecraftforge.common.Tags; import net.minecraftforge.common.capabilities.ForgeCapabilities; import net.minecraftforge.items.IItemHandlerModifiable; @@ -68,7 +69,7 @@ public class BlockEntityBlastFurnaceBooster extends BlockEntityImpl implements I private boolean isApplicable(List ingredients) { for (var ing : ingredients) { for (var stack : ing.getItems()) { - if (stack.getTags().anyMatch(t -> t.location().getPath().startsWith("ores/"))) + if (stack.is(Tags.Items.ORES) || stack.is(Tags.Items.RAW_MATERIALS)) return true; } } diff --git a/src/main/java/de/ellpeck/naturesaura/blocks/tiles/BlockEntityFurnaceHeater.java b/src/main/java/de/ellpeck/naturesaura/blocks/tiles/BlockEntityFurnaceHeater.java index e4613958..acdacc4e 100644 --- a/src/main/java/de/ellpeck/naturesaura/blocks/tiles/BlockEntityFurnaceHeater.java +++ b/src/main/java/de/ellpeck/naturesaura/blocks/tiles/BlockEntityFurnaceHeater.java @@ -65,8 +65,8 @@ public class BlockEntityFurnaceHeater extends BlockEntityImpl implements ITickab this.level.setBlockAndUpdate(tilePos, this.level.getBlockState(tilePos).setValue(AbstractFurnaceBlock.LIT, true)); data.set(0, 200); - //if set higher than 199, it'll never finish because the furnace does ++ and then == - data.set(2, Math.min(data.get(3) - 1, data.get(2) + 5)); + // we leave some wiggle room for the furnace to do its own checks + the blast furnace booster + data.set(2, Math.min(data.get(3) - 2, data.get(2) + 5)); var spot = IAuraChunk.getHighestSpot(this.level, this.worldPosition, 20, this.worldPosition); var chunk = IAuraChunk.getAuraChunk(this.level, spot);