Skip to content

Commit

Permalink
Fixed conditional tag recipes
Browse files Browse the repository at this point in the history
  • Loading branch information
LatvianModder committed Jul 1, 2024
1 parent 8aadb34 commit b8970fd
Show file tree
Hide file tree
Showing 2 changed files with 30 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
package dev.latvian.mods.kubejs.core.mixin;

import dev.latvian.mods.kubejs.recipe.RecipesKubeEvent;
import net.minecraft.tags.TagKey;
import net.minecraft.world.item.Item;
import net.neoforged.neoforge.common.conditions.ICondition;
import net.neoforged.neoforge.common.conditions.TagEmptyCondition;
import org.spongepowered.asm.mixin.Final;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Shadow;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;

@Mixin(value = TagEmptyCondition.class, remap = false)
public abstract class TagEmptyConditionMixin {
@Shadow
@Final
private TagKey<Item> tag;

@Inject(method = "test", at = @At("HEAD"), cancellable = true, remap = false)
private void kjs$test(ICondition.IContext ctx, CallbackInfoReturnable<Boolean> cir) {
var lookup = RecipesKubeEvent.TEMP_ITEM_TAG_LOOKUP.getValue();

if (lookup != null) {
cir.setReturnValue(lookup.values(tag).isEmpty());
}
}
}
1 change: 1 addition & 0 deletions src/main/resources/kubejs.mixins.json
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,7 @@
"SizedIngredientMixin",
"StringRepresentableMixin",
"StringTagMixin",
"TagEmptyConditionMixin",
"TagLoaderMixin",
"TagManagerMixin",
"TextColorMixin",
Expand Down

0 comments on commit b8970fd

Please sign in to comment.