Skip to content

Commit

Permalink
Update to 1.21.4
Browse files Browse the repository at this point in the history
  • Loading branch information
misode committed Nov 28, 2024
1 parent b9d99a9 commit b3b97be
Show file tree
Hide file tree
Showing 9 changed files with 38 additions and 11 deletions.
8 changes: 4 additions & 4 deletions gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,13 @@ org.gradle.parallel=true

# Fabric Properties
# check these on https://fabricmc.net/develop
minecraft_version=1.21.2
loader_version=0.16.7
minecraft_version=1.21.4-rc1
loader_version=0.16.9

# Mod Properties
mod_version=1.9.0
mod_version=1.10.0-beta1
maven_group=io.github.misode
archives_base_name=packtest

# Dependencies
fabric_version=0.106.1+1.21.2
fabric_version=0.110.2+1.21.4
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
package io.github.misode.packtest;

public interface PackTestFileToIdConverter {
String packtest$getPrefix();
}
Original file line number Diff line number Diff line change
Expand Up @@ -115,7 +115,7 @@ public void registerBatchHook(int permissionLevel, Map<String, Consumer<ServerLe
level.getServer().getCommands().performPrefixedCommand(source, command);
});
if (oldBefore != null) {
PackTest.LOGGER.error("Only one @" + type + "batch is allowed per batch. Batch '" + batchName + "' has more than one!");
PackTest.LOGGER.error("Only one @{}batch is allowed per batch. Batch '{}' has more than one!", type, batchName);
}
}

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
package io.github.misode.packtest.mixin;

import io.github.misode.packtest.PackTestFileToIdConverter;
import net.minecraft.resources.FileToIdConverter;
import org.spongepowered.asm.mixin.Final;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Shadow;
import org.spongepowered.asm.mixin.Unique;

@Mixin(FileToIdConverter.class)
public class FileToIdConverterMixin implements PackTestFileToIdConverter {
@Shadow @Final private String prefix;

@Unique
public String packtest$getPrefix() {
return prefix;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -16,14 +16,14 @@
@Mixin(GameTestBatch.class)
public class GameTestBatchMixin {
@ModifyVariable(method = "<init>", at = @At(value = "HEAD"), ordinal = 0, argsOnly = true)
private static Consumer<ServerLevel> modifyBeforeBatch(Consumer<ServerLevel> original, @Local(ordinal = 0) String name) {
private static Consumer<ServerLevel> modifyBeforeBatch(Consumer<ServerLevel> original, @Local(ordinal = 0, argsOnly = true) String name) {
String batchName = name.substring(0, name.lastIndexOf(":"));
Consumer<ServerLevel> beforeBatch = PackTestLibrary.INSTANCE.getBeforeBatchFunction(batchName);
return beforeBatch != null ? beforeBatch : original;
}

@ModifyVariable(method = "<init>", at = @At(value = "HEAD"), ordinal = 0, argsOnly = true)
private static Consumer<ServerLevel> modifyAfterBatch(Consumer<ServerLevel> original, @Local(ordinal = 0) String name) {
private static Consumer<ServerLevel> modifyAfterBatch(Consumer<ServerLevel> original, @Local(ordinal = 0, argsOnly = true) String name) {
String batchName = name.substring(0, name.lastIndexOf(":"));
Consumer<ServerLevel> afterBatch = PackTestLibrary.INSTANCE.getAfterBatchFunction(batchName);
return afterBatch != null ? afterBatch : original;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ private void getCursor(StringReader stringReader, CallbackInfoReturnable<ItemPre
}

@ModifyReturnValue(method = "parse(Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/item/ItemPredicateArgument$Result;", at = @At("RETURN"))
private ItemPredicateArgument.Result returnPredicate(ItemPredicateArgument.Result predicate, @Local StringReader reader, @Share("cursor") LocalIntRef cursorRef) {
private ItemPredicateArgument.Result returnPredicate(ItemPredicateArgument.Result predicate, @Local(argsOnly = true) StringReader reader, @Share("cursor") LocalIntRef cursorRef) {
return new PackTestItemPredicate(predicate, reader.getRead().substring(cursorRef.get()));
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@
import com.llamalad7.mixinextras.sugar.Local;
import com.mojang.serialization.DataResult;
import io.github.misode.packtest.LoadDiagnostics;
import io.github.misode.packtest.PackTestFileToIdConverter;
import net.minecraft.resources.FileToIdConverter;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.server.packs.resources.SimpleJsonResourceReloadListener;
import org.slf4j.Logger;
Expand All @@ -30,8 +32,9 @@ private static void resourceParseError(Logger logger, String message, Object[] a
LoadDiagnostics.error(LOGGER, type, ((ResourceLocation)args[0]).toString(), ((DataResult.Error<?>)args[2]).message());
}

@WrapOperation(method = "scanDirectory", at = @At(value = "INVOKE", target = "Lorg/slf4j/Logger;error(Ljava/lang/String;[Ljava/lang/Object;)V", remap = false))
private static void resourceException(Logger logger, String message, Object[] args, Operation<Void> original, @Local(ordinal = 0, argsOnly = true) String directory) {
@WrapOperation(method = "scanDirectory(Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/FileToIdConverter;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Codec;Ljava/util/Map;)V", at = @At(value = "INVOKE", target = "Lorg/slf4j/Logger;error(Ljava/lang/String;[Ljava/lang/Object;)V", remap = false))
private static void resourceException(Logger logger, String message, Object[] args, Operation<Void> original, @Local(argsOnly = true) FileToIdConverter converter) {
String directory = ((PackTestFileToIdConverter)converter).packtest$getPrefix();
String type = directory.replace("_", " ").replace("/", " ");
LoadDiagnostics.error(LOGGER, type, ((ResourceLocation)args[0]).toString(), (args[2]).toString());
}
Expand Down
2 changes: 1 addition & 1 deletion src/main/resources/fabric.mod.json
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
"accessWidener": "packtest.accesswidener",
"depends": {
"fabricloader": ">=0.15.10",
"minecraft": ">=1.21.2-beta.3",
"minecraft": ">=1.21.4-beta.1",
"java": ">=21",
"fabric-api": "*"
}
Expand Down
1 change: 1 addition & 0 deletions src/main/resources/packtest.mixins.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
"CommandSourceStackMixin",
"EntityArgumentMixin",
"EntitySelectorMixin",
"FileToIdConverterMixin",
"ForceLoadCommandMixin",
"GameTestBatchMixin",
"GameTestHelperMixin",
Expand Down

0 comments on commit b3b97be

Please sign in to comment.