diff --git a/fabric-item-group-api-v1/src/main/java/net/fabricmc/fabric/api/itemgroup/v1/FabricItemGroupEntries.java b/fabric-item-group-api-v1/src/main/java/net/fabricmc/fabric/api/itemgroup/v1/FabricItemGroupEntries.java index 2f5e1d472..231d04dae 100644 --- a/fabric-item-group-api-v1/src/main/java/net/fabricmc/fabric/api/itemgroup/v1/FabricItemGroupEntries.java +++ b/fabric-item-group-api-v1/src/main/java/net/fabricmc/fabric/api/itemgroup/v1/FabricItemGroupEntries.java @@ -38,11 +38,14 @@ public class FabricItemGroupEntries implements ItemGroup.Entries { private final List<ItemStack> displayStacks; private final List<ItemStack> searchTabStacks; + private final boolean showOpRestrictedItems; + @ApiStatus.Internal - public FabricItemGroupEntries(FeatureSet enabledFeatures, List<ItemStack> displayStacks, List<ItemStack> searchTabStacks) { + public FabricItemGroupEntries(FeatureSet enabledFeatures, List<ItemStack> displayStacks, List<ItemStack> searchTabStacks, boolean showOpRestrictedItems) { this.enabledFeatures = enabledFeatures; this.displayStacks = displayStacks; this.searchTabStacks = searchTabStacks; + this.showOpRestrictedItems = showOpRestrictedItems; } /** @@ -52,6 +55,13 @@ public class FabricItemGroupEntries implements ItemGroup.Entries { return enabledFeatures; } + /** + * @return Whether to show items restricted to operators, such as command blocks. + */ + public boolean shouldShowOpRestrictedItems() { + return showOpRestrictedItems; + } + /** * @return The stacks that will be shown in the tab in the creative mode inventory. This list can be modified. */ diff --git a/fabric-item-group-api-v1/src/main/java/net/fabricmc/fabric/mixin/itemgroup/ItemGroupMixin.java b/fabric-item-group-api-v1/src/main/java/net/fabricmc/fabric/mixin/itemgroup/ItemGroupMixin.java index e889c0aad..1e8e9ad07 100644 --- a/fabric-item-group-api-v1/src/main/java/net/fabricmc/fabric/mixin/itemgroup/ItemGroupMixin.java +++ b/fabric-item-group-api-v1/src/main/java/net/fabricmc/fabric/mixin/itemgroup/ItemGroupMixin.java @@ -74,7 +74,7 @@ abstract class ItemGroupMixin implements IdentifiableItemGroup, FabricItemGroup // Convert the entries to lists var mutableDisplayStacks = new LinkedList<>(displayStacks); var mutableSearchTabStacks = new LinkedList<>(searchTabStacks); - var entries = new FabricItemGroupEntries(enabledFeatures, mutableDisplayStacks, mutableSearchTabStacks); + var entries = new FabricItemGroupEntries(enabledFeatures, mutableDisplayStacks, mutableSearchTabStacks, operatorEnabled); final Event<ItemGroupEvents.ModifyEntries> modifyEntriesEvent = ItemGroupEventsImpl.getModifyEntriesEvent(getId());