Skip to content

Commit

Permalink
1.21 Port XXVI
Browse files Browse the repository at this point in the history
  • Loading branch information
IThundxr committed Aug 11, 2024
1 parent 56b0f30 commit 547f415
Show file tree
Hide file tree
Showing 17 changed files with 32 additions and 40 deletions.
1 change: 1 addition & 0 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -158,6 +158,7 @@ tasks.withType(ProcessResources).configureEach {
mod_version : mod_version,
minecraft_version_range: minecraft_version_range,
neo_version_range : neo_version_range,
flywheel_version_range : flywheel_version_range,
loader_version_range : loader_version_range,
]
inputs.properties replaceProperties
Expand Down
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ registrate_version = MC1.21-1.3.0+49

# From maven.ithundxr.dev/hidden
flywheel_minecraft_version = 1.21
flywheel_version = 1.0.0-beta-fork.4
flywheel_version = 1.0.0-beta-fork.5
flywheel_version_range = [1.0.0-alpha,2.0)

# Optional Dependencies
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
import net.minecraft.server.level.ServerLevel;
import net.minecraft.world.item.Item;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.block.Blocks;
import net.minecraft.world.level.block.DispenserBlock;
import net.minecraft.world.level.block.state.BlockState;
Expand All @@ -35,8 +36,8 @@ public static void registerMovedDispenseItemBehaviour(Item item,
MOVED_DISPENSE_ITEM_BEHAVIOURS.put(item, movedDispenseItemBehaviour);
}

public static DispenseItemBehavior getDispenseMethod(ItemStack itemstack) {
return ((DispenserBlockAccessor) Blocks.DISPENSER).create$callGetDispenseMethod(itemstack);
public static DispenseItemBehavior getDispenseMethod(Level level, ItemStack itemstack) {
return ((DispenserBlockAccessor) Blocks.DISPENSER).create$callGetDispenseMethod(level, itemstack);
}

@Override
Expand Down Expand Up @@ -65,7 +66,7 @@ protected void activate(MovementContext context, BlockPos pos) {
return;
}

DispenseItemBehavior behavior = getDispenseMethod(itemStack);
DispenseItemBehavior behavior = getDispenseMethod(context.world, itemStack);
if (behavior instanceof ProjectileDispenseBehavior projectileDispenseBehavior) { // Projectile behaviours can be converted most of the time
IMovedDispenseItemBehaviour movedBehaviour = MovedProjectileDispenserBehaviour.of(projectileDispenseBehavior);
setItemStackAt(location, movedBehaviour.dispense(itemStack, context, pos), context);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@

import com.mojang.blaze3d.vertex.PoseStack;
import com.simibubi.create.AllMovementBehaviours;
import com.simibubi.create.Create;
import com.simibubi.create.content.contraptions.AbstractContraptionEntity;
import com.simibubi.create.content.contraptions.Contraption;
import com.simibubi.create.content.contraptions.Contraption.RenderedBlocks;
Expand Down Expand Up @@ -34,6 +35,8 @@
import dev.engine_room.flywheel.lib.task.PlanMap;
import dev.engine_room.flywheel.lib.task.RunnablePlan;
import dev.engine_room.flywheel.lib.visual.AbstractEntityVisual;
import it.unimi.dsi.fastutil.longs.LongArraySet;
import it.unimi.dsi.fastutil.longs.LongSet;
import net.minecraft.core.BlockPos;
import net.minecraft.core.SectionPos;
import net.minecraft.core.Vec3i;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,10 @@
import com.mojang.serialization.Codec;
import com.mojang.serialization.codecs.RecordCodecBuilder;
import com.simibubi.create.foundation.utility.Lang;
import com.simibubi.create.infrastructure.codec.CreateStreamCodecs;

import dev.engine_room.flywheel.lib.model.baked.PartialModel;
import io.netty.buffer.ByteBuf;
import net.minecraft.core.BlockPos;
import net.minecraft.core.Direction;
import net.minecraft.nbt.CompoundTag;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
import java.util.Optional;
import java.util.function.Function;

import com.simibubi.create.AllBlockEntityTypes;
import com.simibubi.create.AllBlocks;
import com.simibubi.create.content.kinetics.base.IRotate;
import com.simibubi.create.content.kinetics.base.KineticBlockEntity;
Expand All @@ -26,19 +27,14 @@
import com.simibubi.create.content.kinetics.belt.transport.TransportedItemStack;
import com.simibubi.create.content.logistics.tunnel.BrassTunnelBlockEntity;
import com.simibubi.create.foundation.blockEntity.behaviour.BlockEntityBehaviour;
import com.simibubi.create.foundation.utility.DistExecutor;
import com.simibubi.create.foundation.utility.NBTHelper;
import com.simibubi.create.foundation.utility.flywheel.box.Box;
import com.simibubi.create.foundation.utility.flywheel.box.MutableBox;

import net.minecraft.core.BlockPos;
import net.minecraft.core.Direction;
import net.minecraft.core.Direction.Axis;
import net.minecraft.core.HolderLookup;
import net.minecraft.core.SectionPos;
import net.minecraft.core.Vec3i;
import net.minecraft.nbt.CompoundTag;
import net.minecraft.nbt.NbtUtils;
import net.minecraft.world.entity.Entity;
import net.minecraft.world.item.DyeColor;
import net.minecraft.world.item.ItemStack;
Expand All @@ -49,8 +45,6 @@
import net.minecraft.world.level.block.state.properties.BlockStateProperties;
import net.minecraft.world.phys.AABB;
import net.minecraft.world.phys.Vec3;
import net.neoforged.api.distmarker.Dist;
import net.neoforged.api.distmarker.OnlyIn;
import net.neoforged.neoforge.capabilities.Capabilities;
import net.neoforged.neoforge.capabilities.RegisterCapabilitiesEvent;
import net.neoforged.neoforge.client.model.data.ModelData;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@

import javax.annotation.Nullable;

import com.simibubi.create.AllBlockEntityTypes;
import com.simibubi.create.AllBlocks;
import com.simibubi.create.AllPartialModels;
import com.simibubi.create.AllRecipeTypes;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
import com.simibubi.create.foundation.gui.AllIcons;
import com.simibubi.create.foundation.item.TooltipHelper;
import com.simibubi.create.foundation.utility.AngleHelper;
import com.simibubi.create.foundation.utility.Env;
import com.simibubi.create.foundation.utility.Lang;
import com.simibubi.create.foundation.utility.NBTHelper;
import com.simibubi.create.foundation.utility.VecHelper;
Expand Down Expand Up @@ -47,7 +48,6 @@
import net.minecraft.world.level.chunk.ChunkSource;
import net.minecraft.world.phys.AABB;
import net.minecraft.world.phys.Vec3;
import net.neoforged.api.distmarker.Dist;

public class ArmBlockEntity extends KineticBlockEntity implements ITransformableBlockEntity {

Expand Down Expand Up @@ -552,8 +552,8 @@ protected void read(CompoundTag tag, HolderLookup.Provider registries, boolean c
if (!clientPacket)
return;

if (hadGoggles != goggles)
DistExecutor.unsafeRunWhenOn(Dist.CLIENT, () -> () -> VisualizationHelper.queueUpdate(this));
if (hadGoggles != goggles && Env.CLIENT.isCurrent())
Client.queueUpdate(this);

boolean ceiling = isOnCeiling();
if (interactionPointTagBefore == null || interactionPointTagBefore.size() != interactionPointTag.size())
Expand Down Expand Up @@ -656,7 +656,7 @@ public String getTranslationKey() {

private static class Client {
private static void queueUpdate(BlockEntity be) {
VisualizationManager.queueUpdate(be);
VisualizationHelper.queueUpdate(be);
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
import com.simibubi.create.foundation.utility.animation.LerpedFloat;
import com.simibubi.create.foundation.utility.animation.LerpedFloat.Chaser;

import dev.engine_room.flywheel.api.visualization.VisualizationManager;
import dev.engine_room.flywheel.lib.visualization.VisualizationHelper;
import net.minecraft.core.BlockPos;
import net.minecraft.core.Direction;
import net.minecraft.core.Direction.Axis;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -327,7 +327,7 @@ public NonNullFunction<Properties, StairBlock> getFactory(CopperBlockSet blocks,
new WeatheringCopperStairBlock(state, Blocks.AIR.defaultBlockState(), p);
// WeatheringCopperStairBlock does not have a constructor that takes a state,
// so setting the field directly is the easiest solution
ObfuscationReflectionHelper.setPrivateValue(StairBlock.class, block, blockState, "state");
ObfuscationReflectionHelper.setPrivateValue(StairBlock.class, block, blockState, "baseState");
return block;
};
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@

import javax.annotation.Nullable;

import org.jetbrains.annotations.NotNull;

import com.simibubi.create.Create;
import com.simibubi.create.foundation.utility.DistExecutor;
import com.tterrag.registrate.AbstractRegistrate;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@
import javax.annotation.Nullable;
import javax.annotation.ParametersAreNonnullByDefault;

import org.jetbrains.annotations.NotNull;

import com.simibubi.create.Create;
import com.simibubi.create.foundation.utility.DistExecutor;
import com.tterrag.registrate.AbstractRegistrate;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,11 @@

import net.minecraft.core.dispenser.DispenseItemBehavior;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.block.DispenserBlock;

@Mixin(DispenserBlock.class)
public interface DispenserBlockAccessor {
@Invoker("getDispenseMethod")
DispenseItemBehavior create$callGetDispenseMethod(ItemStack stack);
DispenseItemBehavior create$callGetDispenseMethod(Level level, ItemStack stack);
}
Original file line number Diff line number Diff line change
@@ -1,17 +1,10 @@
package com.simibubi.create.foundation.mixin.accessor;

import net.minecraft.core.dispenser.ProjectileDispenseBehavior;

import net.minecraft.world.item.ProjectileItem;

import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.gen.Accessor;
import org.spongepowered.asm.mixin.gen.Invoker;

import net.minecraft.core.Position;
import net.minecraft.world.entity.projectile.Projectile;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.level.Level;
import net.minecraft.core.dispenser.ProjectileDispenseBehavior;
import net.minecraft.world.item.ProjectileItem;

@Mixin(ProjectileDispenseBehavior.class)
public interface ProjectileDispenseBehaviorAccessor {
Expand All @@ -20,7 +13,4 @@ public interface ProjectileDispenseBehaviorAccessor {

@Accessor("dispenseConfig")
ProjectileItem.DispenseConfig create$getDispenseConfig();

@Invoker("getPower")
float create$callGetPower();
}
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@
@Mixin(Camera.class)
public abstract class CameraMixin {
@ModifyArg(
method = "Lnet/minecraft/client/Camera;setup(Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/world/entity/Entity;ZZF)V",
at = @At(value = "INVOKE", target = "Lnet/minecraft/client/Camera;getMaxZoom(D)D"),
method = "setup(Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/world/entity/Entity;ZZF)V",
at = @At(value = "INVOKE", target = "Lnet/minecraft/client/Camera;getMaxZoom(F)F"),
index = 0
)
public double create$modifyCameraOffset(double originalValue) {
public float create$modifyCameraOffset(float originalValue) {
return originalValue * CameraDistanceModifier.getMultiplier();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
import com.mojang.blaze3d.platform.GlUtil;
import com.simibubi.create.Create;
import com.simibubi.create.foundation.mixin.accessor.SystemReportAccessor;
import com.simibubi.create.foundation.utility.DistExecutor;
import com.simibubi.create.infrastructure.debugInfo.element.DebugInfoSection;
import com.simibubi.create.infrastructure.debugInfo.element.InfoElement;
import com.simibubi.create.infrastructure.debugInfo.element.InfoEntry;
Expand Down Expand Up @@ -160,10 +161,4 @@ public static String getIndent(int depth) {
public static String tryTrim(@Nullable String s) {
return s == null ? null : s.trim();
}

public static class Client {
public static void getClientInfo() {

}
}
}
2 changes: 1 addition & 1 deletion src/main/resources/create.mixins.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"minVersion": "0.8",
"priority": 1100,
"package": "com.simibubi.create.foundation.mixin",
"compatibilityLevel": "JAVA_17",
"compatibilityLevel": "JAVA_21",
"refmap": "create.refmap.json",
"mixins": [
"ClientboundMapItemDataPacketMixin",
Expand Down

0 comments on commit 547f415

Please sign in to comment.