diff --git a/gradle.properties b/gradle.properties index b162ae818..17d861a56 100644 --- a/gradle.properties +++ b/gradle.properties @@ -19,7 +19,7 @@ parchment_version = 2022.01.23 # dependency versions registrate_version = MC1.18-1.0.21 -flywheel_version = 1.18-0.6.0.50 +flywheel_version = 1.18-0.6.1.56 jei_minecraft_version = 1.18.1 jei_version = 9.2.1.69 diff --git a/src/main/java/com/simibubi/create/content/contraptions/components/actors/PortableStorageInterfaceRenderer.java b/src/main/java/com/simibubi/create/content/contraptions/components/actors/PortableStorageInterfaceRenderer.java index fef8d442e..3f0cf5351 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/components/actors/PortableStorageInterfaceRenderer.java +++ b/src/main/java/com/simibubi/create/content/contraptions/components/actors/PortableStorageInterfaceRenderer.java @@ -2,6 +2,7 @@ package com.simibubi.create.content.contraptions.components.actors; import java.util.function.Consumer; +import com.jozufozu.flywheel.backend.Backend; import com.jozufozu.flywheel.core.PartialModel; import com.jozufozu.flywheel.core.virtual.VirtualRenderWorld; import com.mojang.blaze3d.vertex.PoseStack; @@ -34,6 +35,8 @@ public class PortableStorageInterfaceRenderer extends SafeTileEntityRenderer { Block block = blockState .getBlock(); - if (!(block instanceof EngineBlock)) + if (!(block instanceof EngineBlock engineBlock)) return; - EngineBlock engineBlock = (EngineBlock) block; - PartialModel frame = engineBlock.getFrameModel(); + PartialModel frame = engineBlock.getFrameModel(); Direction facing = blockState.getValue(BlockStateProperties.HORIZONTAL_FACING); @@ -33,7 +32,7 @@ public class EngineInstance extends BlockEntityInstance { this.frame.loadIdentity() .translate(getInstancePosition()) - .nudge(tile.hashCode()) + .nudge(pos.hashCode()) .centre() .rotate(Direction.UP, angle) .unCentre() diff --git a/src/main/java/com/simibubi/create/content/contraptions/components/flywheel/engine/FurnaceEngineBlock.java b/src/main/java/com/simibubi/create/content/contraptions/components/flywheel/engine/FurnaceEngineBlock.java index a470f3de7..be69f1a3e 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/components/flywheel/engine/FurnaceEngineBlock.java +++ b/src/main/java/com/simibubi/create/content/contraptions/components/flywheel/engine/FurnaceEngineBlock.java @@ -66,9 +66,8 @@ public class FurnaceEngineBlock extends EngineBlock implements ITE actors = new ArrayList<>(); + protected ArrayList actors = new ArrayList<>(); - private final VirtualRenderWorld renderWorld; + private final VirtualRenderWorld renderWorld; - ContraptionInstanceManager(MaterialManager materialManager, VirtualRenderWorld contraption) { + ContraptionInstanceManager(MaterialManager materialManager, VirtualRenderWorld contraption) { super(materialManager); this.renderWorld = contraption; } - public void tick() { - actors.forEach(ActorInstance::tick); - } + public void tick() { + actors.forEach(ActorInstance::tick); + } - @Override + @Override public void beginFrame(TaskEngine taskEngine, Camera info) { super.beginFrame(taskEngine, info); actors.forEach(ActorInstance::beginFrame); } - @Override - protected boolean shouldFrameUpdate(BlockPos worldPos, float lookX, float lookY, float lookZ, int cX, int cY, int cZ) { - return true; + @Override + protected void updateInstance(DynamicInstance dyn, float lookX, float lookY, float lookZ, int cX, int cY, int cZ) { + dyn.beginFrame(); } - @Nullable - public ActorInstance createActor(Pair actor) { - StructureBlockInfo blockInfo = actor.getLeft(); - MovementContext context = actor.getRight(); + @Nullable + public ActorInstance createActor(Pair actor) { + StructureBlockInfo blockInfo = actor.getLeft(); + MovementContext context = actor.getRight(); - MovementBehaviour movementBehaviour = AllMovementBehaviours.of(blockInfo.state); + MovementBehaviour movementBehaviour = AllMovementBehaviours.of(blockInfo.state); - if (movementBehaviour != null && movementBehaviour.hasSpecialInstancedRendering()) { - ActorInstance instance = movementBehaviour.createInstance(materialManager, renderWorld, context); + if (movementBehaviour != null && movementBehaviour.hasSpecialInstancedRendering()) { + ActorInstance instance = movementBehaviour.createInstance(materialManager, renderWorld, context); - actors.add(instance); + actors.add(instance); - return instance; - } + return instance; + } - return null; - } + return null; + } } diff --git a/src/main/java/com/simibubi/create/content/schematics/SchematicWorld.java b/src/main/java/com/simibubi/create/content/schematics/SchematicWorld.java index e65fc6864..8104244c3 100644 --- a/src/main/java/com/simibubi/create/content/schematics/SchematicWorld.java +++ b/src/main/java/com/simibubi/create/content/schematics/SchematicWorld.java @@ -138,7 +138,7 @@ public class SchematicWorld extends WrappedWorld implements ServerLevelAccessor @Override public Biome getBiome(BlockPos pos) { - return ForgeRegistries.BIOMES.getValue(Biomes.FOREST.location()); + return ForgeRegistries.BIOMES.getValue(Biomes.PLAINS.location()); } @Override diff --git a/src/main/resources/META-INF/mods.toml b/src/main/resources/META-INF/mods.toml index a09543314..4936aa7de 100644 --- a/src/main/resources/META-INF/mods.toml +++ b/src/main/resources/META-INF/mods.toml @@ -32,6 +32,6 @@ Technology that empowers the player.''' [[dependencies.create]] modId="flywheel" mandatory=true - versionRange="[1.18-0.6.0,1.18-0.6.1)" + versionRange="[1.18-0.6.1,1.18-0.6.2)" ordering="AFTER" side="CLIENT"