diff --git a/refinedstorage2-platform-api/src/main/java/com/refinedmods/refinedstorage2/platform/api/PlatformApi.java b/refinedstorage2-platform-api/src/main/java/com/refinedmods/refinedstorage2/platform/api/PlatformApi.java index 6d0a9b751..72e3cf9f6 100644 --- a/refinedstorage2-platform-api/src/main/java/com/refinedmods/refinedstorage2/platform/api/PlatformApi.java +++ b/refinedstorage2-platform-api/src/main/java/com/refinedmods/refinedstorage2/platform/api/PlatformApi.java @@ -48,7 +48,6 @@ import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.chat.MutableComponent; import net.minecraft.world.InteractionHand; -import net.minecraft.world.MenuProvider; import net.minecraft.world.entity.player.Player; import net.minecraft.world.inventory.AbstractContainerMenu; import net.minecraft.world.item.Item; @@ -98,7 +97,7 @@ public interface PlatformApi { PlatformRegistry getGridSynchronizerRegistry(); - MenuProvider getGridMenuProvider(Grid grid, MenuProvider menuProvider); + void writeGridScreenOpeningData(Grid grid, FriendlyByteBuf buf); UpgradeRegistry getUpgradeRegistry(); diff --git a/refinedstorage2-platform-api/src/main/java/com/refinedmods/refinedstorage2/platform/api/PlatformApiProxy.java b/refinedstorage2-platform-api/src/main/java/com/refinedmods/refinedstorage2/platform/api/PlatformApiProxy.java index 63d88d896..9820d7009 100644 --- a/refinedstorage2-platform-api/src/main/java/com/refinedmods/refinedstorage2/platform/api/PlatformApiProxy.java +++ b/refinedstorage2-platform-api/src/main/java/com/refinedmods/refinedstorage2/platform/api/PlatformApiProxy.java @@ -49,7 +49,6 @@ import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.chat.MutableComponent; import net.minecraft.world.InteractionHand; -import net.minecraft.world.MenuProvider; import net.minecraft.world.entity.player.Player; import net.minecraft.world.inventory.AbstractContainerMenu; import net.minecraft.world.item.Item; @@ -163,8 +162,8 @@ public PlatformRegistry getGridSynchronizerRegistry() { } @Override - public MenuProvider getGridMenuProvider(final Grid grid, final MenuProvider menuProvider) { - return ensureLoaded().getGridMenuProvider(grid, menuProvider); + public void writeGridScreenOpeningData(final Grid grid, final FriendlyByteBuf buf) { + ensureLoaded().writeGridScreenOpeningData(grid, buf); } @Override diff --git a/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/PlatformApiImpl.java b/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/PlatformApiImpl.java index 311bc426b..91cc2fc01 100644 --- a/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/PlatformApiImpl.java +++ b/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/PlatformApiImpl.java @@ -44,8 +44,8 @@ import com.refinedmods.refinedstorage2.platform.api.upgrade.BuiltinUpgradeDestinations; import com.refinedmods.refinedstorage2.platform.api.upgrade.UpgradeRegistry; import com.refinedmods.refinedstorage2.platform.api.wirelesstransmitter.WirelessTransmitterRangeModifier; -import com.refinedmods.refinedstorage2.platform.common.grid.GridExtendedMenuProvider; import com.refinedmods.refinedstorage2.platform.common.grid.NoOpGridSynchronizer; +import com.refinedmods.refinedstorage2.platform.common.grid.screen.AbstractGridScreen; import com.refinedmods.refinedstorage2.platform.common.grid.screen.hint.GridInsertionHintsImpl; import com.refinedmods.refinedstorage2.platform.common.grid.screen.hint.ItemGridInsertionHint; import com.refinedmods.refinedstorage2.platform.common.grid.screen.hint.SingleItemGridInsertionHint; @@ -96,7 +96,6 @@ import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerLevel; import net.minecraft.world.InteractionHand; -import net.minecraft.world.MenuProvider; import net.minecraft.world.entity.player.Player; import net.minecraft.world.inventory.AbstractContainerMenu; import net.minecraft.world.item.Item; @@ -280,12 +279,8 @@ public PlatformRegistry getGridSynchronizerRegistry() { } @Override - public MenuProvider getGridMenuProvider(final Grid grid, final MenuProvider menuProvider) { - return new GridExtendedMenuProvider( - grid, - storageChannelTypeRegistry, - menuProvider - ); + public void writeGridScreenOpeningData(final Grid grid, final FriendlyByteBuf buf) { + AbstractGridScreen.writeScreenOpeningData(storageChannelTypeRegistry, grid, buf); } @Override diff --git a/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/grid/AbstractGridBlock.java b/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/grid/AbstractGridBlock.java index d6850436c..7719cb5bc 100644 --- a/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/grid/AbstractGridBlock.java +++ b/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/grid/AbstractGridBlock.java @@ -1,7 +1,5 @@ package com.refinedmods.refinedstorage2.platform.common.grid; -import com.refinedmods.refinedstorage2.platform.api.PlatformApi; -import com.refinedmods.refinedstorage2.platform.api.grid.Grid; import com.refinedmods.refinedstorage2.platform.common.content.BlockConstants; import com.refinedmods.refinedstorage2.platform.common.support.AbstractDirectionalBlock; import com.refinedmods.refinedstorage2.platform.common.support.BlockItemProvider; @@ -10,14 +8,10 @@ import com.refinedmods.refinedstorage2.platform.common.support.direction.BiDirectionType; import com.refinedmods.refinedstorage2.platform.common.support.direction.DirectionType; -import net.minecraft.core.BlockPos; import net.minecraft.network.chat.MutableComponent; -import net.minecraft.world.MenuProvider; import net.minecraft.world.item.DyeColor; -import net.minecraft.world.level.Level; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.EntityBlock; -import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.StateDefinition; import net.minecraft.world.level.block.state.properties.BooleanProperty; @@ -66,14 +60,4 @@ public DyeColor getColor() { public boolean canAlwaysConnect() { return true; } - - @Override - @SuppressWarnings("deprecation") - public MenuProvider getMenuProvider(final BlockState state, final Level level, final BlockPos pos) { - final BlockEntity blockEntity = level.getBlockEntity(pos); - if (blockEntity instanceof Grid grid && blockEntity instanceof MenuProvider menuProvider) { - return PlatformApi.INSTANCE.getGridMenuProvider(grid, menuProvider); - } - return null; - } } diff --git a/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/grid/AbstractGridBlockEntity.java b/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/grid/AbstractGridBlockEntity.java index ff94c75b5..c5a8aa47c 100644 --- a/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/grid/AbstractGridBlockEntity.java +++ b/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/grid/AbstractGridBlockEntity.java @@ -16,19 +16,21 @@ import com.refinedmods.refinedstorage2.platform.api.support.resource.ItemResource; import com.refinedmods.refinedstorage2.platform.common.storage.channel.StorageChannelTypes; import com.refinedmods.refinedstorage2.platform.common.support.AbstractDirectionalBlock; +import com.refinedmods.refinedstorage2.platform.common.support.containermenu.ExtendedMenuProvider; import com.refinedmods.refinedstorage2.platform.common.support.network.AbstractRedstoneModeNetworkNodeContainerBlockEntity; import java.util.List; import java.util.Objects; import net.minecraft.core.BlockPos; -import net.minecraft.world.MenuProvider; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.level.block.entity.BlockEntityType; import net.minecraft.world.level.block.state.BlockState; public abstract class AbstractGridBlockEntity extends AbstractRedstoneModeNetworkNodeContainerBlockEntity - implements Grid, MenuProvider { + implements Grid, ExtendedMenuProvider { protected AbstractGridBlockEntity(final BlockEntityType type, final BlockPos pos, final BlockState state, @@ -39,6 +41,11 @@ protected AbstractGridBlockEntity(final BlockEntityType List> getResources(final StorageChannelType type, final Class actorType) { diff --git a/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/grid/GridExtendedMenuProvider.java b/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/grid/GridExtendedMenuProvider.java deleted file mode 100644 index 39d08e945..000000000 --- a/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/grid/GridExtendedMenuProvider.java +++ /dev/null @@ -1,74 +0,0 @@ -package com.refinedmods.refinedstorage2.platform.common.grid; - -import com.refinedmods.refinedstorage2.api.storage.TrackedResourceAmount; -import com.refinedmods.refinedstorage2.platform.api.grid.Grid; -import com.refinedmods.refinedstorage2.platform.api.storage.PlayerActor; -import com.refinedmods.refinedstorage2.platform.api.storage.channel.PlatformStorageChannelType; -import com.refinedmods.refinedstorage2.platform.api.support.registry.PlatformRegistry; -import com.refinedmods.refinedstorage2.platform.common.support.containermenu.ExtendedMenuProvider; -import com.refinedmods.refinedstorage2.platform.common.util.PacketUtil; - -import java.util.List; -import javax.annotation.Nullable; - -import net.minecraft.network.FriendlyByteBuf; -import net.minecraft.network.chat.Component; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.server.level.ServerPlayer; -import net.minecraft.world.MenuProvider; -import net.minecraft.world.entity.player.Inventory; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.inventory.AbstractContainerMenu; - -public class GridExtendedMenuProvider implements ExtendedMenuProvider { - private final Grid grid; - private final PlatformRegistry> storageChannelTypeRegistry; - private final MenuProvider menuProvider; - - public GridExtendedMenuProvider(final Grid grid, - final PlatformRegistry> storageChannelTypeRegistry, - final MenuProvider menuProvider) { - this.grid = grid; - this.storageChannelTypeRegistry = storageChannelTypeRegistry; - this.menuProvider = menuProvider; - } - - @Override - public void writeScreenOpeningData(final ServerPlayer player, final FriendlyByteBuf buf) { - buf.writeBoolean(grid.isGridActive()); - final List> types = storageChannelTypeRegistry.getAll(); - buf.writeInt(types.size()); - types.forEach(type -> writeStorageChannel(type, buf)); - if (menuProvider instanceof ExtendedMenuProvider extendedMenuProvider) { - extendedMenuProvider.writeScreenOpeningData(player, buf); - } - } - - private void writeStorageChannel(final PlatformStorageChannelType storageChannelType, - final FriendlyByteBuf buf) { - final ResourceLocation id = storageChannelTypeRegistry.getId(storageChannelType).orElseThrow(); - buf.writeResourceLocation(id); - final List> resources = grid.getResources(storageChannelType, PlayerActor.class); - buf.writeInt(resources.size()); - resources.forEach(resource -> writeGridResource(storageChannelType, resource, buf)); - } - - private void writeGridResource(final PlatformStorageChannelType storageChannelType, - final TrackedResourceAmount resource, - final FriendlyByteBuf buf) { - storageChannelType.toBuffer(resource.resourceAmount().getResource(), buf); - buf.writeLong(resource.resourceAmount().getAmount()); - PacketUtil.writeTrackedResource(buf, resource.trackedResource()); - } - - @Override - public Component getDisplayName() { - return menuProvider.getDisplayName(); - } - - @Nullable - @Override - public AbstractContainerMenu createMenu(final int syncId, final Inventory inventory, final Player player) { - return menuProvider.createMenu(syncId, inventory, player); - } -} diff --git a/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/grid/WirelessGridExtendedMenuProvider.java b/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/grid/WirelessGridExtendedMenuProvider.java index eb7c93a64..f8d5bd446 100644 --- a/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/grid/WirelessGridExtendedMenuProvider.java +++ b/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/grid/WirelessGridExtendedMenuProvider.java @@ -2,43 +2,42 @@ import com.refinedmods.refinedstorage2.platform.api.PlatformApi; import com.refinedmods.refinedstorage2.platform.api.grid.Grid; -import com.refinedmods.refinedstorage2.platform.api.storage.channel.PlatformStorageChannelType; import com.refinedmods.refinedstorage2.platform.api.support.network.bounditem.SlotReference; -import com.refinedmods.refinedstorage2.platform.api.support.registry.PlatformRegistry; import com.refinedmods.refinedstorage2.platform.common.content.ContentNames; +import com.refinedmods.refinedstorage2.platform.common.support.containermenu.ExtendedMenuProvider; + +import javax.annotation.Nullable; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.chat.Component; import net.minecraft.server.level.ServerPlayer; -import net.minecraft.world.MenuProvider; import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.entity.player.Player; import net.minecraft.world.inventory.AbstractContainerMenu; -class WirelessGridExtendedMenuProvider extends GridExtendedMenuProvider { +class WirelessGridExtendedMenuProvider implements ExtendedMenuProvider { + private final Grid grid; private final SlotReference slotReference; - WirelessGridExtendedMenuProvider(final Grid grid, - final PlatformRegistry> - storageChannelTypeRegistry, - final SlotReference slotReference) { - super(grid, storageChannelTypeRegistry, new MenuProvider() { - @Override - public Component getDisplayName() { - return ContentNames.WIRELESS_GRID; - } - - @Override - public AbstractContainerMenu createMenu(final int syncId, final Inventory inventory, final Player player) { - return new WirelessGridContainerMenu(syncId, inventory, grid, slotReference); - } - }); + WirelessGridExtendedMenuProvider(final Grid grid, final SlotReference slotReference) { + this.grid = grid; this.slotReference = slotReference; } @Override public void writeScreenOpeningData(final ServerPlayer player, final FriendlyByteBuf buf) { - super.writeScreenOpeningData(player, buf); + PlatformApi.INSTANCE.writeGridScreenOpeningData(grid, buf); PlatformApi.INSTANCE.writeSlotReference(slotReference, buf); } + + @Override + public Component getDisplayName() { + return ContentNames.WIRELESS_GRID; + } + + @Nullable + @Override + public AbstractContainerMenu createMenu(final int syncId, final Inventory inventory, final Player player) { + return new WirelessGridContainerMenu(syncId, inventory, grid, slotReference); + } } diff --git a/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/grid/WirelessGridItem.java b/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/grid/WirelessGridItem.java index 9ceb7db11..5dc2340d1 100644 --- a/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/grid/WirelessGridItem.java +++ b/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/grid/WirelessGridItem.java @@ -44,10 +44,6 @@ public void use(final ServerPlayer player, final NetworkBoundItemSession session) { session.drainEnergy(Platform.INSTANCE.getConfig().getWirelessGrid().getOpenEnergyUsage()); final Grid grid = new WirelessGrid(session); - Platform.INSTANCE.getMenuOpener().openMenu(player, new WirelessGridExtendedMenuProvider( - grid, - PlatformApi.INSTANCE.getStorageChannelTypeRegistry(), - slotReference - )); + Platform.INSTANCE.getMenuOpener().openMenu(player, new WirelessGridExtendedMenuProvider(grid, slotReference)); } } diff --git a/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/grid/screen/AbstractGridScreen.java b/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/grid/screen/AbstractGridScreen.java index 9760dbbfa..4394a64de 100644 --- a/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/grid/screen/AbstractGridScreen.java +++ b/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/grid/screen/AbstractGridScreen.java @@ -4,11 +4,15 @@ import com.refinedmods.refinedstorage2.api.grid.operations.GridInsertMode; import com.refinedmods.refinedstorage2.api.grid.view.GridResource; import com.refinedmods.refinedstorage2.api.grid.view.GridView; +import com.refinedmods.refinedstorage2.api.storage.TrackedResourceAmount; import com.refinedmods.refinedstorage2.api.storage.tracked.TrackedResource; import com.refinedmods.refinedstorage2.platform.api.PlatformApi; +import com.refinedmods.refinedstorage2.platform.api.grid.Grid; import com.refinedmods.refinedstorage2.platform.api.grid.GridScrollMode; import com.refinedmods.refinedstorage2.platform.api.grid.GridSynchronizer; import com.refinedmods.refinedstorage2.platform.api.grid.view.PlatformGridResource; +import com.refinedmods.refinedstorage2.platform.api.storage.PlayerActor; +import com.refinedmods.refinedstorage2.platform.api.storage.channel.PlatformStorageChannelType; import com.refinedmods.refinedstorage2.platform.api.support.registry.PlatformRegistry; import com.refinedmods.refinedstorage2.platform.api.support.resource.ItemResource; import com.refinedmods.refinedstorage2.platform.common.Platform; @@ -22,6 +26,7 @@ import com.refinedmods.refinedstorage2.platform.common.support.widget.History; import com.refinedmods.refinedstorage2.platform.common.support.widget.RedstoneModeSideButtonWidget; import com.refinedmods.refinedstorage2.platform.common.support.widget.ScrollbarWidget; +import com.refinedmods.refinedstorage2.platform.common.util.PacketUtil; import com.refinedmods.refinedstorage2.query.lexer.SyntaxHighlighter; import com.refinedmods.refinedstorage2.query.lexer.SyntaxHighlighterColors; @@ -34,8 +39,10 @@ import net.minecraft.ChatFormatting; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.client.gui.screens.inventory.tooltip.ClientTooltipComponent; +import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.chat.Component; import net.minecraft.network.chat.MutableComponent; +import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.inventory.Slot; import net.minecraft.world.item.ItemStack; @@ -632,4 +639,35 @@ public boolean keyReleased(final int key, final int scanCode, final int modifier return super.keyReleased(key, scanCode, modifiers); } + + public static void writeScreenOpeningData(final PlatformRegistry> + storageChannelTypeRegistry, + final Grid grid, + final FriendlyByteBuf buf) { + buf.writeBoolean(grid.isGridActive()); + final List> types = storageChannelTypeRegistry.getAll(); + buf.writeInt(types.size()); + types.forEach(type -> writeStorageChannel(storageChannelTypeRegistry, type, grid, buf)); + } + + private static void writeStorageChannel( + final PlatformRegistry> storageChannelTypeRegistry, + final PlatformStorageChannelType storageChannelType, + final Grid grid, + final FriendlyByteBuf buf + ) { + final ResourceLocation id = storageChannelTypeRegistry.getId(storageChannelType).orElseThrow(); + buf.writeResourceLocation(id); + final List> resources = grid.getResources(storageChannelType, PlayerActor.class); + buf.writeInt(resources.size()); + resources.forEach(resource -> writeGridResource(storageChannelType, resource, buf)); + } + + private static void writeGridResource(final PlatformStorageChannelType storageChannelType, + final TrackedResourceAmount resource, + final FriendlyByteBuf buf) { + storageChannelType.toBuffer(resource.resourceAmount().getResource(), buf); + buf.writeLong(resource.resourceAmount().getAmount()); + PacketUtil.writeTrackedResource(buf, resource.trackedResource()); + } } diff --git a/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/storage/portablegrid/AbstractPortableGridBlockEntity.java b/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/storage/portablegrid/AbstractPortableGridBlockEntity.java index 7c85c3906..da2692490 100644 --- a/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/storage/portablegrid/AbstractPortableGridBlockEntity.java +++ b/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/storage/portablegrid/AbstractPortableGridBlockEntity.java @@ -294,6 +294,7 @@ public AbstractGridContainerMenu createMenu(final int syncId, final Inventory in @Override public void writeScreenOpeningData(final ServerPlayer player, final FriendlyByteBuf buf) { + PlatformApi.INSTANCE.writeGridScreenOpeningData(this, buf); buf.writeLong(energyStorage.getStored()); buf.writeLong(energyStorage.getCapacity()); } diff --git a/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/storage/portablegrid/PortableGridBlock.java b/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/storage/portablegrid/PortableGridBlock.java index fc82fc6c6..80d3a0d0b 100644 --- a/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/storage/portablegrid/PortableGridBlock.java +++ b/refinedstorage2-platform-common/src/main/java/com/refinedmods/refinedstorage2/platform/common/storage/portablegrid/PortableGridBlock.java @@ -1,7 +1,5 @@ package com.refinedmods.refinedstorage2.platform.common.storage.portablegrid; -import com.refinedmods.refinedstorage2.platform.api.PlatformApi; -import com.refinedmods.refinedstorage2.platform.api.grid.Grid; import com.refinedmods.refinedstorage2.platform.common.content.BlockConstants; import com.refinedmods.refinedstorage2.platform.common.content.BlockEntities; import com.refinedmods.refinedstorage2.platform.common.support.AbstractDirectionalBlock; @@ -12,7 +10,6 @@ import java.util.function.BiFunction; import net.minecraft.core.BlockPos; -import net.minecraft.world.MenuProvider; import net.minecraft.world.level.BlockGetter; import net.minecraft.world.level.Level; import net.minecraft.world.level.block.Block; @@ -93,15 +90,4 @@ public BlockEntityTicker getTicker(final Level level, final BlockEntityType type) { return ticker.get(level, type); } - - // TODO: can we make everything extended menu provider instead of wrapping it this way? - @Override - @SuppressWarnings("deprecation") // Forge deprecates this - public MenuProvider getMenuProvider(final BlockState state, final Level level, final BlockPos pos) { - final BlockEntity blockEntity = level.getBlockEntity(pos); - if (blockEntity instanceof Grid grid && blockEntity instanceof MenuProvider menuProvider) { - return PlatformApi.INSTANCE.getGridMenuProvider(grid, menuProvider); - } - return null; - } } diff --git a/refinedstorage2-platform-common/src/main/resources/assets/refinedstorage2/lang/en_us.json b/refinedstorage2-platform-common/src/main/resources/assets/refinedstorage2/lang/en_us.json index 35ca4573b..aca94c00e 100644 --- a/refinedstorage2-platform-common/src/main/resources/assets/refinedstorage2/lang/en_us.json +++ b/refinedstorage2-platform-common/src/main/resources/assets/refinedstorage2/lang/en_us.json @@ -317,6 +317,8 @@ "text.autoconfig.refinedstorage2.option.storageMonitor.energyUsage": "Energy usage", "text.autoconfig.refinedstorage2.option.networkReceiver": "Network Receiver", "text.autoconfig.refinedstorage2.option.networkReceiver.energyUsage": "Energy usage", + "text.autoconfig.refinedstorage2.option.networkTransmitter": "Network Transmitter", + "text.autoconfig.refinedstorage2.option.networkTransmitter.energyUsage": "Energy usage", "text.autoconfig.refinedstorage2.option.portableGrid": "Portable Grid", "text.autoconfig.refinedstorage2.option.portableGrid.energyCapacity": "Energy capacity", "text.autoconfig.refinedstorage2.option.portableGrid.openEnergyUsage": "Open energy usage", diff --git a/refinedstorage2-platform-forge/src/main/java/com/refinedmods/refinedstorage2/platform/forge/ConfigImpl.java b/refinedstorage2-platform-forge/src/main/java/com/refinedmods/refinedstorage2/platform/forge/ConfigImpl.java index d9cfb8997..3d4344c94 100644 --- a/refinedstorage2-platform-forge/src/main/java/com/refinedmods/refinedstorage2/platform/forge/ConfigImpl.java +++ b/refinedstorage2-platform-forge/src/main/java/com/refinedmods/refinedstorage2/platform/forge/ConfigImpl.java @@ -14,6 +14,7 @@ public class ConfigImpl implements Config { private static final String ENERGY_USAGE = "energyUsage"; + private static final String ENERGY_CAPACITY = "energyCapacity"; private final ForgeConfigSpec.Builder builder = new ForgeConfigSpec.Builder(); private final ForgeConfigSpec spec; @@ -213,7 +214,7 @@ private class ControllerEntryImpl implements ControllerEntry { private ControllerEntryImpl() { builder.push("controller"); energyCapacity = builder.comment("The energy capacity of the Controller") - .defineInRange("energyCapacity", DefaultEnergyUsage.CONTROLLER_CAPACITY, 0, Long.MAX_VALUE); + .defineInRange(ENERGY_CAPACITY, DefaultEnergyUsage.CONTROLLER_CAPACITY, 0, Long.MAX_VALUE); builder.pop(); } @@ -687,7 +688,7 @@ private class WirelessGridEntryImpl implements WirelessGridEntry { WirelessGridEntryImpl() { builder.push("wirelessGrid"); energyCapacity = builder.comment("The energy capacity of the Wireless Grid") - .defineInRange("energyCapacity", DefaultEnergyUsage.WIRELESS_GRID_CAPACITY, 0, Long.MAX_VALUE); + .defineInRange(ENERGY_CAPACITY, DefaultEnergyUsage.WIRELESS_GRID_CAPACITY, 0, Long.MAX_VALUE); openEnergyUsage = builder.comment("The energy used by the Wireless Grid to open") .defineInRange("openEnergyUsage", DefaultEnergyUsage.WIRELESS_GRID_OPEN, 0, Long.MAX_VALUE); extractEnergyUsage = builder.comment("The energy used by the Wireless Grid to extract resources") @@ -747,7 +748,7 @@ private class PortableGridEntryImpl implements PortableGridEntry { PortableGridEntryImpl() { builder.push("portableGrid"); energyCapacity = builder.comment("The energy capacity of the Portable Grid") - .defineInRange("energyCapacity", DefaultEnergyUsage.PORTABLE_GRID_CAPACITY, 0, Long.MAX_VALUE); + .defineInRange(ENERGY_CAPACITY, DefaultEnergyUsage.PORTABLE_GRID_CAPACITY, 0, Long.MAX_VALUE); openEnergyUsage = builder.comment("The energy used by the Portable Grid to open") .defineInRange("openEnergyUsage", DefaultEnergyUsage.PORTABLE_GRID_OPEN, 0, Long.MAX_VALUE); extractEnergyUsage = builder.comment("The energy used by the Portable Grid to extract resources")