Check Shear Tags in MatchRules (paulevsGitch/BetterNether#497)
This commit is contained in:
parent
05ed11978d
commit
be3876f8a6
2 changed files with 35 additions and 0 deletions
|
@ -0,0 +1,34 @@
|
||||||
|
package ru.bclib.mixin.common.shears;
|
||||||
|
|
||||||
|
import net.minecraft.advancements.critereon.ItemPredicate;
|
||||||
|
import net.minecraft.advancements.critereon.ItemPredicate.Builder;
|
||||||
|
import net.minecraft.tags.Tag;
|
||||||
|
import net.minecraft.world.item.Item;
|
||||||
|
import net.minecraft.world.item.ItemStack;
|
||||||
|
import net.minecraft.world.item.Items;
|
||||||
|
import net.minecraft.world.level.ItemLike;
|
||||||
|
import org.jetbrains.annotations.Nullable;
|
||||||
|
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;
|
||||||
|
import ru.bclib.api.TagAPI;
|
||||||
|
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
|
@Mixin(ItemPredicate.class)
|
||||||
|
public abstract class ItemPredicateBuilderMixin {
|
||||||
|
|
||||||
|
@Shadow @Final private @Nullable Set<Item> items;
|
||||||
|
|
||||||
|
@Inject(method = "matches", at = @At("HEAD"), cancellable = true)
|
||||||
|
void bclib_of(ItemStack itemStack, CallbackInfoReturnable<Boolean> cir) {
|
||||||
|
if (this.items != null && this.items.size() == 1 && this.items.contains(Items.SHEARS)) {
|
||||||
|
if (itemStack.is(TagAPI.ITEM_COMMON_SHEARS) || itemStack.is(TagAPI.ITEM_SHEARS)){
|
||||||
|
cir.setReturnValue(true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -7,6 +7,7 @@
|
||||||
"SimpleReloadableResourceManagerMixin",
|
"SimpleReloadableResourceManagerMixin",
|
||||||
"BiomeGenerationSettingsAccessor",
|
"BiomeGenerationSettingsAccessor",
|
||||||
"shears.DiggingEnchantmentMixin",
|
"shears.DiggingEnchantmentMixin",
|
||||||
|
"shears.ItemPredicateBuilderMixin",
|
||||||
"LayerLightSectionStorageMixin",
|
"LayerLightSectionStorageMixin",
|
||||||
"NoiseBasedChunkGeneratorMixin",
|
"NoiseBasedChunkGeneratorMixin",
|
||||||
"NoiseGeneratorSettingsMixin",
|
"NoiseGeneratorSettingsMixin",
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue