diff --git a/src/main/java/com/refinedmods/refinedstorage/RS.java b/src/main/java/com/refinedmods/refinedstorage/RS.java index 05f21f684..e07a56113 100644 --- a/src/main/java/com/refinedmods/refinedstorage/RS.java +++ b/src/main/java/com/refinedmods/refinedstorage/RS.java @@ -46,7 +46,7 @@ public final class RS { RSLootFunctions.register(); FMLJavaModLoadingContext.get().getModEventBus().addListener(commonSetup::onCommonSetup); - FMLJavaModLoadingContext.get().getModEventBus().addGenericListener(BlockEntityType.class, commonSetup::onRegisterTiles); + FMLJavaModLoadingContext.get().getModEventBus().addGenericListener(BlockEntityType.class, commonSetup::onRegisterBlockEntities); FMLJavaModLoadingContext.get().getModEventBus().addGenericListener(RecipeSerializer.class, commonSetup::onRegisterRecipeSerializers); FMLJavaModLoadingContext.get().getModEventBus().addGenericListener(MenuType.class, commonSetup::onRegisterContainers); FMLJavaModLoadingContext.get().getModEventBus().addListener(commonSetup::onRegisterCapabilities); diff --git a/src/main/java/com/refinedmods/refinedstorage/RSBlockEntities.java b/src/main/java/com/refinedmods/refinedstorage/RSBlockEntities.java new file mode 100644 index 000000000..d69217568 --- /dev/null +++ b/src/main/java/com/refinedmods/refinedstorage/RSBlockEntities.java @@ -0,0 +1,91 @@ +package com.refinedmods.refinedstorage; + +import com.refinedmods.refinedstorage.blockentity.*; +import com.refinedmods.refinedstorage.blockentity.craftingmonitor.CraftingMonitorBlockEntity; +import com.refinedmods.refinedstorage.blockentity.grid.GridBlockEntity; +import com.refinedmods.refinedstorage.blockentity.grid.portable.PortableGridBlockEntity; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraftforge.registries.ObjectHolder; + +@ObjectHolder(RS.ID) +public final class RSBlockEntities { + @ObjectHolder("controller") + public static final BlockEntityType CONTROLLER = null; + @ObjectHolder("creative_controller") + public static final BlockEntityType CREATIVE_CONTROLLER = null; + @ObjectHolder("detector") + public static final BlockEntityType DETECTOR = null; + @ObjectHolder("disk_drive") + public static final BlockEntityType DISK_DRIVE = null; + @ObjectHolder("exporter") + public static final BlockEntityType EXPORTER = null; + @ObjectHolder("external_storage") + public static final BlockEntityType EXTERNAL_STORAGE = null; + @ObjectHolder("grid") + public static final BlockEntityType GRID = null; + @ObjectHolder("crafting_grid") + public static final BlockEntityType CRAFTING_GRID = null; + @ObjectHolder("pattern_grid") + public static final BlockEntityType PATTERN_GRID = null; + @ObjectHolder("fluid_grid") + public static final BlockEntityType FLUID_GRID = null; + @ObjectHolder("importer") + public static final BlockEntityType IMPORTER = null; + @ObjectHolder("network_transmitter") + public static final BlockEntityType NETWORK_TRANSMITTER = null; + @ObjectHolder("network_receiver") + public static final BlockEntityType NETWORK_RECEIVER = null; + @ObjectHolder("relay") + public static final BlockEntityType RELAY = null; + @ObjectHolder("cable") + public static final BlockEntityType CABLE = null; + @ObjectHolder("1k_storage_block") + public static final BlockEntityType ONE_K_STORAGE_BLOCK = null; + @ObjectHolder("4k_storage_block") + public static final BlockEntityType FOUR_K_STORAGE_BLOCK = null; + @ObjectHolder("16k_storage_block") + public static final BlockEntityType SIXTEEN_K_STORAGE_BLOCK = null; + @ObjectHolder("64k_storage_block") + public static final BlockEntityType SIXTY_FOUR_K_STORAGE_BLOCK = null; + @ObjectHolder("creative_storage_block") + public static final BlockEntityType CREATIVE_STORAGE_BLOCK = null; + @ObjectHolder("64k_fluid_storage_block") + public static final BlockEntityType SIXTY_FOUR_K_FLUID_STORAGE_BLOCK = null; + @ObjectHolder("256k_fluid_storage_block") + public static final BlockEntityType TWO_HUNDRED_FIFTY_SIX_K_FLUID_STORAGE_BLOCK = null; + @ObjectHolder("1024k_fluid_storage_block") + public static final BlockEntityType THOUSAND_TWENTY_FOUR_K_FLUID_STORAGE_BLOCK = null; + @ObjectHolder("4096k_fluid_storage_block") + public static final BlockEntityType FOUR_THOUSAND_NINETY_SIX_K_FLUID_STORAGE_BLOCK = null; + @ObjectHolder("creative_fluid_storage_block") + public static final BlockEntityType CREATIVE_FLUID_STORAGE_BLOCK = null; + @ObjectHolder("security_manager") + public static final BlockEntityType SECURITY_MANAGER = null; + @ObjectHolder("interface") + public static final BlockEntityType INTERFACE = null; + @ObjectHolder("fluid_interface") + public static final BlockEntityType FLUID_INTERFACE = null; + @ObjectHolder("wireless_transmitter") + public static final BlockEntityType WIRELESS_TRANSMITTER = null; + @ObjectHolder("storage_monitor") + public static final BlockEntityType STORAGE_MONITOR = null; + @ObjectHolder("constructor") + public static final BlockEntityType CONSTRUCTOR = null; + @ObjectHolder("destructor") + public static final BlockEntityType DESTRUCTOR = null; + @ObjectHolder("disk_manipulator") + public static final BlockEntityType DISK_MANIPULATOR = null; + @ObjectHolder("portable_grid") + public static final BlockEntityType PORTABLE_GRID = null; + @ObjectHolder("creative_portable_grid") + public static final BlockEntityType CREATIVE_PORTABLE_GRID = null; + @ObjectHolder("crafter") + public static final BlockEntityType CRAFTER = null; + @ObjectHolder("crafter_manager") + public static final BlockEntityType CRAFTER_MANAGER = null; + @ObjectHolder("crafting_monitor") + public static final BlockEntityType CRAFTING_MONITOR = null; + + private RSBlockEntities() { + } +} diff --git a/src/main/java/com/refinedmods/refinedstorage/RSTiles.java b/src/main/java/com/refinedmods/refinedstorage/RSTiles.java deleted file mode 100644 index e686a2b77..000000000 --- a/src/main/java/com/refinedmods/refinedstorage/RSTiles.java +++ /dev/null @@ -1,91 +0,0 @@ -package com.refinedmods.refinedstorage; - -import com.refinedmods.refinedstorage.tile.*; -import com.refinedmods.refinedstorage.tile.craftingmonitor.CraftingMonitorTile; -import com.refinedmods.refinedstorage.tile.grid.GridTile; -import com.refinedmods.refinedstorage.tile.grid.portable.PortableGridTile; -import net.minecraft.world.level.block.entity.BlockEntityType; -import net.minecraftforge.registries.ObjectHolder; - -@ObjectHolder(RS.ID) -public final class RSTiles { - @ObjectHolder("controller") - public static final BlockEntityType CONTROLLER = null; - @ObjectHolder("creative_controller") - public static final BlockEntityType CREATIVE_CONTROLLER = null; - @ObjectHolder("detector") - public static final BlockEntityType DETECTOR = null; - @ObjectHolder("disk_drive") - public static final BlockEntityType DISK_DRIVE = null; - @ObjectHolder("exporter") - public static final BlockEntityType EXPORTER = null; - @ObjectHolder("external_storage") - public static final BlockEntityType EXTERNAL_STORAGE = null; - @ObjectHolder("grid") - public static final BlockEntityType GRID = null; - @ObjectHolder("crafting_grid") - public static final BlockEntityType CRAFTING_GRID = null; - @ObjectHolder("pattern_grid") - public static final BlockEntityType PATTERN_GRID = null; - @ObjectHolder("fluid_grid") - public static final BlockEntityType FLUID_GRID = null; - @ObjectHolder("importer") - public static final BlockEntityType IMPORTER = null; - @ObjectHolder("network_transmitter") - public static final BlockEntityType NETWORK_TRANSMITTER = null; - @ObjectHolder("network_receiver") - public static final BlockEntityType NETWORK_RECEIVER = null; - @ObjectHolder("relay") - public static final BlockEntityType RELAY = null; - @ObjectHolder("cable") - public static final BlockEntityType CABLE = null; - @ObjectHolder("1k_storage_block") - public static final BlockEntityType ONE_K_STORAGE_BLOCK = null; - @ObjectHolder("4k_storage_block") - public static final BlockEntityType FOUR_K_STORAGE_BLOCK = null; - @ObjectHolder("16k_storage_block") - public static final BlockEntityType SIXTEEN_K_STORAGE_BLOCK = null; - @ObjectHolder("64k_storage_block") - public static final BlockEntityType SIXTY_FOUR_K_STORAGE_BLOCK = null; - @ObjectHolder("creative_storage_block") - public static final BlockEntityType CREATIVE_STORAGE_BLOCK = null; - @ObjectHolder("64k_fluid_storage_block") - public static final BlockEntityType SIXTY_FOUR_K_FLUID_STORAGE_BLOCK = null; - @ObjectHolder("256k_fluid_storage_block") - public static final BlockEntityType TWO_HUNDRED_FIFTY_SIX_K_FLUID_STORAGE_BLOCK = null; - @ObjectHolder("1024k_fluid_storage_block") - public static final BlockEntityType THOUSAND_TWENTY_FOUR_K_FLUID_STORAGE_BLOCK = null; - @ObjectHolder("4096k_fluid_storage_block") - public static final BlockEntityType FOUR_THOUSAND_NINETY_SIX_K_FLUID_STORAGE_BLOCK = null; - @ObjectHolder("creative_fluid_storage_block") - public static final BlockEntityType CREATIVE_FLUID_STORAGE_BLOCK = null; - @ObjectHolder("security_manager") - public static final BlockEntityType SECURITY_MANAGER = null; - @ObjectHolder("interface") - public static final BlockEntityType INTERFACE = null; - @ObjectHolder("fluid_interface") - public static final BlockEntityType FLUID_INTERFACE = null; - @ObjectHolder("wireless_transmitter") - public static final BlockEntityType WIRELESS_TRANSMITTER = null; - @ObjectHolder("storage_monitor") - public static final BlockEntityType STORAGE_MONITOR = null; - @ObjectHolder("constructor") - public static final BlockEntityType CONSTRUCTOR = null; - @ObjectHolder("destructor") - public static final BlockEntityType DESTRUCTOR = null; - @ObjectHolder("disk_manipulator") - public static final BlockEntityType DISK_MANIPULATOR = null; - @ObjectHolder("portable_grid") - public static final BlockEntityType PORTABLE_GRID = null; - @ObjectHolder("creative_portable_grid") - public static final BlockEntityType CREATIVE_PORTABLE_GRID = null; - @ObjectHolder("crafter") - public static final BlockEntityType CRAFTER = null; - @ObjectHolder("crafter_manager") - public static final BlockEntityType CRAFTER_MANAGER = null; - @ObjectHolder("crafting_monitor") - public static final BlockEntityType CRAFTING_MONITOR = null; - - private RSTiles() { - } -} diff --git a/src/main/java/com/refinedmods/refinedstorage/api/autocrafting/ICraftingPatternContainer.java b/src/main/java/com/refinedmods/refinedstorage/api/autocrafting/ICraftingPatternContainer.java index 2845ba4ad..e0eef8703 100644 --- a/src/main/java/com/refinedmods/refinedstorage/api/autocrafting/ICraftingPatternContainer.java +++ b/src/main/java/com/refinedmods/refinedstorage/api/autocrafting/ICraftingPatternContainer.java @@ -59,18 +59,18 @@ public interface ICraftingPatternContainer { IFluidHandler getConnectedFluidInventory(); /** - * @return the tile that this container is connected to, or null if no tile is present + * @return the block entity that this container is connected to, or null if no block entity is present */ @Nullable - BlockEntity getConnectedTile(); + BlockEntity getConnectedBlockEntity(); /** - * @return the tile that this container is facing + * @return the block entity that this container is facing */ - BlockEntity getFacingTile(); + BlockEntity getFacingBlockEntity(); /** - * @return the direction to the facing tile + * @return the direction to the facing block entity */ Direction getDirection(); diff --git a/src/main/java/com/refinedmods/refinedstorage/api/network/grid/IGridFactory.java b/src/main/java/com/refinedmods/refinedstorage/api/network/grid/IGridFactory.java index a1db21b6d..7af0088e9 100644 --- a/src/main/java/com/refinedmods/refinedstorage/api/network/grid/IGridFactory.java +++ b/src/main/java/com/refinedmods/refinedstorage/api/network/grid/IGridFactory.java @@ -35,14 +35,14 @@ public interface IGridFactory { IGrid createFromBlock(Player player, BlockPos pos); /** - * Returns a possible tile for this grid if {@link #getType()} is BLOCK. + * Returns a possible block entity for this grid if {@link #getType()} is BLOCK. * * @param level the level * @param pos the position - * @return the tile, or null if no tile is required + * @return the block entity, or null if no block entity is required */ @Nullable - BlockEntity getRelevantTile(Level level, BlockPos pos); + BlockEntity getRelevantBlockEntity(Level level, BlockPos pos); /** * @return the type diff --git a/src/main/java/com/refinedmods/refinedstorage/api/storage/externalstorage/IExternalStorageProvider.java b/src/main/java/com/refinedmods/refinedstorage/api/storage/externalstorage/IExternalStorageProvider.java index 0b4abc223..9e642dfd0 100644 --- a/src/main/java/com/refinedmods/refinedstorage/api/storage/externalstorage/IExternalStorageProvider.java +++ b/src/main/java/com/refinedmods/refinedstorage/api/storage/externalstorage/IExternalStorageProvider.java @@ -12,20 +12,20 @@ import javax.annotation.Nonnull; */ public interface IExternalStorageProvider { /** - * @param tile the tile - * @param direction the direction of the external storage + * @param blockEntity the block entity + * @param direction the direction of the external storage * @return true if the provider can provide, false otherwise */ - boolean canProvide(BlockEntity tile, Direction direction); + boolean canProvide(BlockEntity blockEntity, Direction direction); /** - * @param context the context of the external storage - * @param tile the tile - * @param direction the direction of the external storage + * @param context the context of the external storage + * @param blockEntity the block entity + * @param direction the direction of the external storage * @return the external storage handler */ @Nonnull - IExternalStorage provide(IExternalStorageContext context, BlockEntity tile, Direction direction); + IExternalStorage provide(IExternalStorageContext context, BlockEntity blockEntity, Direction direction); /** * Returns the priority of this external storage provider. diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/Network.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/Network.java index b046a056a..7911ee248 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/Network.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/Network.java @@ -31,9 +31,9 @@ import com.refinedmods.refinedstorage.apiimpl.storage.tracker.FluidStorageTracke import com.refinedmods.refinedstorage.apiimpl.storage.tracker.ItemStorageTracker; import com.refinedmods.refinedstorage.block.ControllerBlock; import com.refinedmods.refinedstorage.energy.BaseEnergyStorage; -import com.refinedmods.refinedstorage.tile.ControllerTile; -import com.refinedmods.refinedstorage.tile.config.IRedstoneConfigurable; -import com.refinedmods.refinedstorage.tile.config.RedstoneMode; +import com.refinedmods.refinedstorage.blockentity.ControllerBlockEntity; +import com.refinedmods.refinedstorage.blockentity.config.IRedstoneConfigurable; +import com.refinedmods.refinedstorage.blockentity.config.RedstoneMode; import com.refinedmods.refinedstorage.util.StackUtils; import net.minecraft.Util; import net.minecraft.core.BlockPos; @@ -99,10 +99,10 @@ public class Network implements INetwork, IRedstoneConfigurable { this.type = type; this.root = new RootNetworkNode(this, level, pos); this.nodeGraph.addListener(() -> { - BlockEntity tile = level.getBlockEntity(pos); + BlockEntity blockEntity = level.getBlockEntity(pos); - if (tile instanceof ControllerTile) { - ((ControllerTile) tile).getDataManager().sendParameterToWatchers(ControllerTile.NODES); + if (blockEntity instanceof ControllerBlockEntity) { + ((ControllerBlockEntity) blockEntity).getDataManager().sendParameterToWatchers(ControllerBlockEntity.NODES); } }); } diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/NetworkNodeGraph.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/NetworkNodeGraph.java index 46d62c150..4af6cfc1e 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/NetworkNodeGraph.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/NetworkNodeGraph.java @@ -32,7 +32,7 @@ public class NetworkNodeGraph implements INetworkNodeGraph { Operator operator = new Operator(action); - INetworkNode originNode = NetworkUtils.getNodeFromTile(level.getBlockEntity(origin)); + INetworkNode originNode = NetworkUtils.getNodeFromBlockEntity(level.getBlockEntity(origin)); if (originNode instanceof INetworkNodeVisitor) { ((INetworkNodeVisitor) originNode).visit(operator); } @@ -100,14 +100,14 @@ public class NetworkNodeGraph implements INetworkNodeGraph { private final Level level; private final BlockPos pos; private final Direction side; - private final BlockEntity tile; + private final BlockEntity blockEntity; - Visitor(INetworkNode node, Level level, BlockPos pos, Direction side, BlockEntity tile) { + Visitor(INetworkNode node, Level level, BlockPos pos, Direction side, BlockEntity blockEntity) { this.node = node; this.level = level; this.pos = pos; this.side = side; - this.tile = tile; + this.blockEntity = blockEntity; } @Override @@ -117,7 +117,7 @@ public class NetworkNodeGraph implements INetworkNodeGraph { } else { for (Direction checkSide : Direction.values()) { if (checkSide != side) { // Avoid going backward - INetworkNode nodeOnSide = NetworkUtils.getNodeFromTile(tile); + INetworkNode nodeOnSide = NetworkUtils.getNodeFromBlockEntity(blockEntity); if (nodeOnSide == node) { operator.apply(level, pos.relative(checkSide), checkSide.getOpposite()); @@ -144,9 +144,9 @@ public class NetworkNodeGraph implements INetworkNodeGraph { @Override public void apply(Level level, BlockPos pos, @Nullable Direction side) { - BlockEntity tile = level.getBlockEntity(pos); + BlockEntity blockEntity = level.getBlockEntity(pos); - INetworkNode otherNode = NetworkUtils.getNodeFromTile(tile); + INetworkNode otherNode = NetworkUtils.getNodeFromBlockEntity(blockEntity); if (otherNode != null) { NetworkNodeGraphEntry otherNodeItem = new NetworkNodeGraphEntry(otherNode); @@ -168,7 +168,7 @@ public class NetworkNodeGraph implements INetworkNodeGraph { previousEntries.remove(otherNodeItem); - toCheck.add(new Visitor(otherNode, level, pos, side, tile)); + toCheck.add(new Visitor(otherNode, level, pos, side, blockEntity)); } } } diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/NetworkNodeListener.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/NetworkNodeListener.java index 711057b90..640f78423 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/NetworkNodeListener.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/NetworkNodeListener.java @@ -20,11 +20,11 @@ public class NetworkNodeListener { if (!e.getWorld().isClientSide() && e.getEntity() instanceof Player) { Player player = (Player) e.getEntity(); - INetworkNode placed = NetworkUtils.getNodeFromTile(e.getWorld().getBlockEntity(e.getPos())); + INetworkNode placed = NetworkUtils.getNodeFromBlockEntity(e.getWorld().getBlockEntity(e.getPos())); if (placed != null) { for (Direction facing : Direction.values()) { - INetworkNode node = NetworkUtils.getNodeFromTile(e.getWorld().getBlockEntity(e.getBlockSnapshot().getPos().relative(facing))); + INetworkNode node = NetworkUtils.getNodeFromBlockEntity(e.getWorld().getBlockEntity(e.getBlockSnapshot().getPos().relative(facing))); if (node != null && node.getNetwork() != null && !node.getNetwork().getSecurityManager().hasPermission(Permission.BUILD, player)) { WorldUtils.sendNoPermissionMessage(player); @@ -47,7 +47,7 @@ public class NetworkNodeListener { private void discoverNode(LevelAccessor world, BlockPos pos) { for (Direction facing : Direction.values()) { - INetworkNode node = NetworkUtils.getNodeFromTile(world.getBlockEntity(pos.relative(facing))); + INetworkNode node = NetworkUtils.getNodeFromBlockEntity(world.getBlockEntity(pos.relative(facing))); if (node != null && node.getNetwork() != null) { node.getNetwork().getNodeGraph().invalidate(Action.PERFORM, node.getNetwork().getLevel(), node.getNetwork().getPosition()); @@ -60,7 +60,7 @@ public class NetworkNodeListener { @SubscribeEvent public void onBlockBreak(BlockEvent.BreakEvent e) { if (!e.getWorld().isClientSide()) { - INetworkNode node = NetworkUtils.getNodeFromTile(e.getWorld().getBlockEntity(e.getPos())); + INetworkNode node = NetworkUtils.getNodeFromBlockEntity(e.getWorld().getBlockEntity(e.getPos())); if (node != null && node.getNetwork() != null && !node.getNetwork().getSecurityManager().hasPermission(Permission.BUILD, e.getPlayer())) { WorldUtils.sendNoPermissionMessage(e.getPlayer()); diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/grid/GridManager.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/grid/GridManager.java index 6d8540499..1e2a4a127 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/grid/GridManager.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/grid/GridManager.java @@ -4,7 +4,7 @@ import com.refinedmods.refinedstorage.api.network.grid.GridFactoryType; import com.refinedmods.refinedstorage.api.network.grid.IGrid; import com.refinedmods.refinedstorage.api.network.grid.IGridFactory; import com.refinedmods.refinedstorage.api.network.grid.IGridManager; -import com.refinedmods.refinedstorage.container.factory.GridContainerProvider; +import com.refinedmods.refinedstorage.container.factory.GridMenuProvider; import com.refinedmods.refinedstorage.inventory.player.PlayerSlot; import net.minecraft.core.BlockPos; import net.minecraft.resources.ResourceLocation; @@ -43,7 +43,7 @@ public class GridManager implements IGridManager { return; } - NetworkHooks.openGui(player, new GridContainerProvider(grid.getLeft(), grid.getRight()), buf -> { + NetworkHooks.openGui(player, new GridMenuProvider(grid.getLeft(), grid.getRight()), buf -> { buf.writeResourceLocation(id); buf.writeBoolean(pos != null); @@ -70,7 +70,7 @@ public class GridManager implements IGridManager { } IGrid grid = null; - BlockEntity tile = factory.getRelevantTile(player.level, pos); + BlockEntity blockEntity = factory.getRelevantBlockEntity(player.level, pos); if (factory.getType() == GridFactoryType.STACK) { grid = factory.createFromStack(player, stack, slot); @@ -82,6 +82,6 @@ public class GridManager implements IGridManager { return null; } - return Pair.of(grid, tile); + return Pair.of(grid, blockEntity); } } diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/grid/factory/GridBlockGridFactory.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/grid/factory/GridBlockGridFactory.java index 8ef10ae75..2099b094a 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/grid/factory/GridBlockGridFactory.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/grid/factory/GridBlockGridFactory.java @@ -4,8 +4,8 @@ import com.refinedmods.refinedstorage.RS; import com.refinedmods.refinedstorage.api.network.grid.GridFactoryType; import com.refinedmods.refinedstorage.api.network.grid.IGrid; import com.refinedmods.refinedstorage.api.network.grid.IGridFactory; +import com.refinedmods.refinedstorage.blockentity.grid.GridBlockEntity; import com.refinedmods.refinedstorage.inventory.player.PlayerSlot; -import com.refinedmods.refinedstorage.tile.grid.GridTile; import net.minecraft.core.BlockPos; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.player.Player; @@ -27,10 +27,10 @@ public class GridBlockGridFactory implements IGridFactory { @Override @Nullable public IGrid createFromBlock(Player player, BlockPos pos) { - BlockEntity tile = getRelevantTile(player.getCommandSenderWorld(), pos); + BlockEntity blockEntity = getRelevantBlockEntity(player.getCommandSenderWorld(), pos); - if (tile instanceof GridTile) { - return ((GridTile) tile).getNode(); + if (blockEntity instanceof GridBlockEntity) { + return ((GridBlockEntity) blockEntity).getNode(); } return null; @@ -38,7 +38,7 @@ public class GridBlockGridFactory implements IGridFactory { @Nullable @Override - public BlockEntity getRelevantTile(Level level, BlockPos pos) { + public BlockEntity getRelevantBlockEntity(Level level, BlockPos pos) { return level.getBlockEntity(pos); } diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/grid/factory/PortableGridBlockGridFactory.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/grid/factory/PortableGridBlockGridFactory.java index 7ecb192f5..8b26d016d 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/grid/factory/PortableGridBlockGridFactory.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/grid/factory/PortableGridBlockGridFactory.java @@ -4,8 +4,8 @@ import com.refinedmods.refinedstorage.RS; import com.refinedmods.refinedstorage.api.network.grid.GridFactoryType; import com.refinedmods.refinedstorage.api.network.grid.IGrid; import com.refinedmods.refinedstorage.api.network.grid.IGridFactory; +import com.refinedmods.refinedstorage.blockentity.grid.portable.PortableGridBlockEntity; import com.refinedmods.refinedstorage.inventory.player.PlayerSlot; -import com.refinedmods.refinedstorage.tile.grid.portable.PortableGridTile; import net.minecraft.core.BlockPos; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.player.Player; @@ -27,10 +27,10 @@ public class PortableGridBlockGridFactory implements IGridFactory { @Override @Nullable public IGrid createFromBlock(Player player, BlockPos pos) { - BlockEntity tile = getRelevantTile(player.level, pos); + BlockEntity blockEntity = getRelevantBlockEntity(player.level, pos); - if (tile instanceof PortableGridTile) { - return (PortableGridTile) tile; + if (blockEntity instanceof PortableGridBlockEntity) { + return (PortableGridBlockEntity) blockEntity; } return null; @@ -38,7 +38,7 @@ public class PortableGridBlockGridFactory implements IGridFactory { @Nullable @Override - public BlockEntity getRelevantTile(Level level, BlockPos pos) { + public BlockEntity getRelevantBlockEntity(Level level, BlockPos pos) { return level.getBlockEntity(pos); } diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/grid/factory/PortableGridGridFactory.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/grid/factory/PortableGridGridFactory.java index 09010a4ce..39bf329d4 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/grid/factory/PortableGridGridFactory.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/grid/factory/PortableGridGridFactory.java @@ -4,8 +4,8 @@ import com.refinedmods.refinedstorage.RS; import com.refinedmods.refinedstorage.api.network.grid.GridFactoryType; import com.refinedmods.refinedstorage.api.network.grid.IGrid; import com.refinedmods.refinedstorage.api.network.grid.IGridFactory; +import com.refinedmods.refinedstorage.blockentity.grid.portable.PortableGrid; import com.refinedmods.refinedstorage.inventory.player.PlayerSlot; -import com.refinedmods.refinedstorage.tile.grid.portable.PortableGrid; import net.minecraft.core.BlockPos; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.player.Player; @@ -36,7 +36,7 @@ public class PortableGridGridFactory implements IGridFactory { @Nullable @Override - public BlockEntity getRelevantTile(Level level, BlockPos pos) { + public BlockEntity getRelevantBlockEntity(Level level, BlockPos pos) { return null; } diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/grid/factory/WirelessFluidGridGridFactory.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/grid/factory/WirelessFluidGridGridFactory.java index 5cf44273a..8c49be12b 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/grid/factory/WirelessFluidGridGridFactory.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/grid/factory/WirelessFluidGridGridFactory.java @@ -4,8 +4,8 @@ import com.refinedmods.refinedstorage.RS; import com.refinedmods.refinedstorage.api.network.grid.GridFactoryType; import com.refinedmods.refinedstorage.api.network.grid.IGrid; import com.refinedmods.refinedstorage.api.network.grid.IGridFactory; +import com.refinedmods.refinedstorage.blockentity.grid.WirelessFluidGrid; import com.refinedmods.refinedstorage.inventory.player.PlayerSlot; -import com.refinedmods.refinedstorage.tile.grid.WirelessFluidGrid; import net.minecraft.core.BlockPos; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.player.Player; @@ -32,7 +32,7 @@ public class WirelessFluidGridGridFactory implements IGridFactory { @Nullable @Override - public BlockEntity getRelevantTile(Level level, BlockPos pos) { + public BlockEntity getRelevantBlockEntity(Level level, BlockPos pos) { return null; } diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/grid/factory/WirelessGridGridFactory.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/grid/factory/WirelessGridGridFactory.java index 0ecdb8daa..a89263066 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/grid/factory/WirelessGridGridFactory.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/grid/factory/WirelessGridGridFactory.java @@ -4,8 +4,8 @@ import com.refinedmods.refinedstorage.RS; import com.refinedmods.refinedstorage.api.network.grid.GridFactoryType; import com.refinedmods.refinedstorage.api.network.grid.IGrid; import com.refinedmods.refinedstorage.api.network.grid.IGridFactory; +import com.refinedmods.refinedstorage.blockentity.grid.WirelessGrid; import com.refinedmods.refinedstorage.inventory.player.PlayerSlot; -import com.refinedmods.refinedstorage.tile.grid.WirelessGrid; import net.minecraft.core.BlockPos; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.player.Player; @@ -32,7 +32,7 @@ public class WirelessGridGridFactory implements IGridFactory { @Nullable @Override - public BlockEntity getRelevantTile(Level level, BlockPos pos) { + public BlockEntity getRelevantBlockEntity(Level level, BlockPos pos) { return null; } diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/grid/handler/PortableFluidGridHandler.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/grid/handler/PortableFluidGridHandler.java index d8cd3118e..1823e0d4e 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/grid/handler/PortableFluidGridHandler.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/grid/handler/PortableFluidGridHandler.java @@ -5,7 +5,7 @@ import com.refinedmods.refinedstorage.api.network.grid.handler.IFluidGridHandler import com.refinedmods.refinedstorage.api.util.Action; import com.refinedmods.refinedstorage.api.util.IComparer; import com.refinedmods.refinedstorage.apiimpl.API; -import com.refinedmods.refinedstorage.tile.grid.portable.IPortableGrid; +import com.refinedmods.refinedstorage.blockentity.grid.portable.IPortableGrid; import com.refinedmods.refinedstorage.util.StackUtils; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.Containers; diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/grid/handler/PortableItemGridHandler.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/grid/handler/PortableItemGridHandler.java index 80a3054ea..90703cef9 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/grid/handler/PortableItemGridHandler.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/grid/handler/PortableItemGridHandler.java @@ -6,7 +6,7 @@ import com.refinedmods.refinedstorage.api.network.grid.handler.IItemGridHandler; import com.refinedmods.refinedstorage.api.util.Action; import com.refinedmods.refinedstorage.api.util.IComparer; import com.refinedmods.refinedstorage.apiimpl.API; -import com.refinedmods.refinedstorage.tile.grid.portable.IPortableGrid; +import com.refinedmods.refinedstorage.blockentity.grid.portable.IPortableGrid; import net.minecraft.core.Direction; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.item.ItemStack; diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/item/WirelessCraftingMonitorNetworkItem.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/item/WirelessCraftingMonitorNetworkItem.java index 35bcc3b1c..7883dd0e4 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/item/WirelessCraftingMonitorNetworkItem.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/item/WirelessCraftingMonitorNetworkItem.java @@ -6,10 +6,10 @@ import com.refinedmods.refinedstorage.api.network.INetwork; import com.refinedmods.refinedstorage.api.network.item.INetworkItem; import com.refinedmods.refinedstorage.api.network.item.INetworkItemManager; import com.refinedmods.refinedstorage.api.network.security.Permission; -import com.refinedmods.refinedstorage.container.factory.CraftingMonitorContainerProvider; +import com.refinedmods.refinedstorage.blockentity.craftingmonitor.WirelessCraftingMonitor; +import com.refinedmods.refinedstorage.container.factory.CraftingMonitorMenuProvider; import com.refinedmods.refinedstorage.inventory.player.PlayerSlot; import com.refinedmods.refinedstorage.item.WirelessCraftingMonitorItem; -import com.refinedmods.refinedstorage.tile.craftingmonitor.WirelessCraftingMonitor; import com.refinedmods.refinedstorage.util.WorldUtils; import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.server.level.ServerPlayer; @@ -61,7 +61,7 @@ public class WirelessCraftingMonitorNetworkItem implements INetworkItem { NetworkHooks.openGui( (ServerPlayer) player, - new CraftingMonitorContainerProvider(RSContainers.WIRELESS_CRAFTING_MONITOR, wirelessCraftingMonitor, null), slot::writePlayerSlot); + new CraftingMonitorMenuProvider(RSContainers.WIRELESS_CRAFTING_MONITOR, wirelessCraftingMonitor, null), slot::writePlayerSlot); drainEnergy(RS.SERVER_CONFIG.getWirelessCraftingMonitor().getOpenUsage()); diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/ConstructorNetworkNode.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/ConstructorNetworkNode.java index 07877e861..52b8b02d8 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/ConstructorNetworkNode.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/ConstructorNetworkNode.java @@ -5,15 +5,15 @@ import com.refinedmods.refinedstorage.api.network.node.ICoverable; import com.refinedmods.refinedstorage.api.util.Action; import com.refinedmods.refinedstorage.api.util.IComparer; import com.refinedmods.refinedstorage.apiimpl.network.node.cover.CoverManager; +import com.refinedmods.refinedstorage.blockentity.ConstructorBlockEntity; +import com.refinedmods.refinedstorage.blockentity.config.IComparable; +import com.refinedmods.refinedstorage.blockentity.config.IType; import com.refinedmods.refinedstorage.inventory.fluid.FluidInventory; import com.refinedmods.refinedstorage.inventory.item.BaseItemHandler; import com.refinedmods.refinedstorage.inventory.item.UpgradeItemHandler; import com.refinedmods.refinedstorage.inventory.listener.NetworkNodeFluidInventoryListener; import com.refinedmods.refinedstorage.inventory.listener.NetworkNodeInventoryListener; import com.refinedmods.refinedstorage.item.UpgradeItem; -import com.refinedmods.refinedstorage.tile.ConstructorTile; -import com.refinedmods.refinedstorage.tile.config.IComparable; -import com.refinedmods.refinedstorage.tile.config.IType; import com.refinedmods.refinedstorage.util.StackUtils; import com.refinedmods.refinedstorage.util.WorldUtils; import net.minecraft.core.BlockPos; @@ -257,7 +257,7 @@ public class ConstructorNetworkNode extends NetworkNode implements IComparable, @Override public int getType() { - return level.isClientSide ? ConstructorTile.TYPE.getValue() : type; + return level.isClientSide ? ConstructorBlockEntity.TYPE.getValue() : type; } @Override diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/CrafterManagerNetworkNode.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/CrafterManagerNetworkNode.java index 035fb2f09..fbee392d9 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/CrafterManagerNetworkNode.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/CrafterManagerNetworkNode.java @@ -4,7 +4,7 @@ import com.refinedmods.refinedstorage.RS; import com.refinedmods.refinedstorage.api.network.grid.IGrid; import com.refinedmods.refinedstorage.block.CrafterManagerBlock; import com.refinedmods.refinedstorage.block.NetworkNodeBlock; -import com.refinedmods.refinedstorage.tile.CrafterManagerTile; +import com.refinedmods.refinedstorage.blockentity.CrafterManagerBlockEntity; import net.minecraft.core.BlockPos; import net.minecraft.nbt.CompoundTag; import net.minecraft.resources.ResourceLocation; @@ -35,7 +35,7 @@ public class CrafterManagerNetworkNode extends NetworkNode { } public int getSize() { - return level.isClientSide ? CrafterManagerTile.SIZE.getValue() : size; + return level.isClientSide ? CrafterManagerBlockEntity.SIZE.getValue() : size; } public void setSize(int size) { @@ -66,7 +66,7 @@ public class CrafterManagerNetworkNode extends NetworkNode { } public int getSearchBoxMode() { - return level.isClientSide ? CrafterManagerTile.SEARCH_BOX_MODE.getValue() : searchBoxMode; + return level.isClientSide ? CrafterManagerBlockEntity.SEARCH_BOX_MODE.getValue() : searchBoxMode; } public void setSearchBoxMode(int searchBoxMode) { diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/CrafterNetworkNode.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/CrafterNetworkNode.java index 488cade5a..2c37791ac 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/CrafterNetworkNode.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/CrafterNetworkNode.java @@ -260,7 +260,7 @@ public class CrafterNetworkNode extends NetworkNode implements ICraftingPatternC return null; } - return WorldUtils.getItemHandler(proxy.getFacingTile(), proxy.getDirection().getOpposite()); + return WorldUtils.getItemHandler(proxy.getFacingBlockEntity(), proxy.getDirection().getOpposite()); } @Nullable @@ -271,29 +271,18 @@ public class CrafterNetworkNode extends NetworkNode implements ICraftingPatternC return null; } - return WorldUtils.getFluidHandler(proxy.getFacingTile(), proxy.getDirection().getOpposite()); + return WorldUtils.getFluidHandler(proxy.getFacingBlockEntity(), proxy.getDirection().getOpposite()); } @Override @Nullable - public BlockEntity getConnectedTile() { + public BlockEntity getConnectedBlockEntity() { ICraftingPatternContainer proxy = getRootContainer(); if (proxy == null) { return null; } - return proxy.getFacingTile(); - } - - @Nullable - @Override - public BlockEntity getFacingTile() { - BlockPos facingPos = pos.relative(getDirection()); - if (!level.isLoaded(facingPos)) { - return null; - } - - return level.getBlockEntity(facingPos); + return proxy.getFacingBlockEntity(); } @Override @@ -313,7 +302,7 @@ public class CrafterNetworkNode extends NetworkNode implements ICraftingPatternC return displayName; } - BlockEntity facing = getConnectedTile(); + BlockEntity facing = getConnectedBlockEntity(); if (facing instanceof Nameable && ((Nameable) facing).getName() != null) { return ((Nameable) facing).getName(); diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/CraftingMonitorNetworkNode.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/CraftingMonitorNetworkNode.java index 15177e428..61383ed32 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/CraftingMonitorNetworkNode.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/CraftingMonitorNetworkNode.java @@ -5,11 +5,11 @@ import com.refinedmods.refinedstorage.api.autocrafting.ICraftingManager; import com.refinedmods.refinedstorage.api.autocrafting.task.ICraftingTask; import com.refinedmods.refinedstorage.block.CraftingMonitorBlock; import com.refinedmods.refinedstorage.block.NetworkNodeBlock; -import com.refinedmods.refinedstorage.tile.NetworkNodeTile; -import com.refinedmods.refinedstorage.tile.craftingmonitor.CraftingMonitorTile; -import com.refinedmods.refinedstorage.tile.craftingmonitor.ICraftingMonitor; -import com.refinedmods.refinedstorage.tile.data.TileDataManager; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; +import com.refinedmods.refinedstorage.blockentity.NetworkNodeBlockEntity; +import com.refinedmods.refinedstorage.blockentity.craftingmonitor.CraftingMonitorBlockEntity; +import com.refinedmods.refinedstorage.blockentity.craftingmonitor.ICraftingMonitor; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationManager; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; import net.minecraft.core.BlockPos; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; @@ -62,8 +62,8 @@ public class CraftingMonitorNetworkNode extends NetworkNode implements ICrafting } @Override - public TileDataParameter getRedstoneModeParameter() { - return NetworkNodeTile.REDSTONE_MODE; + public BlockEntitySynchronizationParameter getRedstoneModeParameter() { + return NetworkNodeBlockEntity.REDSTONE_MODE; } @Override @@ -119,7 +119,7 @@ public class CraftingMonitorNetworkNode extends NetworkNode implements ICrafting @Override public Optional getTabSelected() { - return level.isClientSide ? CraftingMonitorTile.TAB_SELECTED.getValue() : tabSelected; + return level.isClientSide ? CraftingMonitorBlockEntity.TAB_SELECTED.getValue() : tabSelected; } public void setTabSelected(Optional tabSelected) { @@ -128,7 +128,7 @@ public class CraftingMonitorNetworkNode extends NetworkNode implements ICrafting @Override public int getTabPage() { - return level.isClientSide ? CraftingMonitorTile.TAB_PAGE.getValue() : tabPage; + return level.isClientSide ? CraftingMonitorBlockEntity.TAB_PAGE.getValue() : tabPage; } public void setTabPage(int tabPage) { @@ -137,13 +137,13 @@ public class CraftingMonitorNetworkNode extends NetworkNode implements ICrafting @Override public void onTabSelectionChanged(Optional tab) { - TileDataManager.setParameter(CraftingMonitorTile.TAB_SELECTED, tab); + BlockEntitySynchronizationManager.setParameter(CraftingMonitorBlockEntity.TAB_SELECTED, tab); } @Override public void onTabPageChanged(int page) { if (page >= 0) { - TileDataManager.setParameter(CraftingMonitorTile.TAB_PAGE, page); + BlockEntitySynchronizationManager.setParameter(CraftingMonitorBlockEntity.TAB_PAGE, page); } } diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/DestructorNetworkNode.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/DestructorNetworkNode.java index f97ac2ccd..f87972eb3 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/DestructorNetworkNode.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/DestructorNetworkNode.java @@ -5,16 +5,16 @@ import com.refinedmods.refinedstorage.api.network.node.ICoverable; import com.refinedmods.refinedstorage.api.util.Action; import com.refinedmods.refinedstorage.api.util.IComparer; import com.refinedmods.refinedstorage.apiimpl.network.node.cover.CoverManager; +import com.refinedmods.refinedstorage.blockentity.DestructorBlockEntity; +import com.refinedmods.refinedstorage.blockentity.config.IComparable; +import com.refinedmods.refinedstorage.blockentity.config.IType; +import com.refinedmods.refinedstorage.blockentity.config.IWhitelistBlacklist; import com.refinedmods.refinedstorage.inventory.fluid.FluidInventory; import com.refinedmods.refinedstorage.inventory.item.BaseItemHandler; import com.refinedmods.refinedstorage.inventory.item.UpgradeItemHandler; import com.refinedmods.refinedstorage.inventory.listener.NetworkNodeFluidInventoryListener; import com.refinedmods.refinedstorage.inventory.listener.NetworkNodeInventoryListener; import com.refinedmods.refinedstorage.item.UpgradeItem; -import com.refinedmods.refinedstorage.tile.DestructorTile; -import com.refinedmods.refinedstorage.tile.config.IComparable; -import com.refinedmods.refinedstorage.tile.config.IType; -import com.refinedmods.refinedstorage.tile.config.IWhitelistBlacklist; import com.refinedmods.refinedstorage.util.StackUtils; import com.refinedmods.refinedstorage.util.WorldUtils; import net.minecraft.core.BlockPos; @@ -319,7 +319,7 @@ public class DestructorNetworkNode extends NetworkNode implements IComparable, I @Override public int getType() { - return level.isClientSide ? DestructorTile.TYPE.getValue() : type; + return level.isClientSide ? DestructorBlockEntity.TYPE.getValue() : type; } @Override diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/DetectorNetworkNode.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/DetectorNetworkNode.java index 011729819..6b967d17f 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/DetectorNetworkNode.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/DetectorNetworkNode.java @@ -4,14 +4,14 @@ import com.refinedmods.refinedstorage.RS; import com.refinedmods.refinedstorage.api.network.INetwork; import com.refinedmods.refinedstorage.api.util.IComparer; import com.refinedmods.refinedstorage.block.DetectorBlock; +import com.refinedmods.refinedstorage.blockentity.DetectorBlockEntity; +import com.refinedmods.refinedstorage.blockentity.config.IComparable; +import com.refinedmods.refinedstorage.blockentity.config.IType; +import com.refinedmods.refinedstorage.blockentity.config.RedstoneMode; import com.refinedmods.refinedstorage.inventory.fluid.FluidInventory; import com.refinedmods.refinedstorage.inventory.item.BaseItemHandler; import com.refinedmods.refinedstorage.inventory.listener.NetworkNodeFluidInventoryListener; import com.refinedmods.refinedstorage.inventory.listener.NetworkNodeInventoryListener; -import com.refinedmods.refinedstorage.tile.DetectorTile; -import com.refinedmods.refinedstorage.tile.config.IComparable; -import com.refinedmods.refinedstorage.tile.config.IType; -import com.refinedmods.refinedstorage.tile.config.RedstoneMode; import com.refinedmods.refinedstorage.util.StackUtils; import net.minecraft.core.BlockPos; import net.minecraft.nbt.CompoundTag; @@ -212,7 +212,7 @@ public class DetectorNetworkNode extends NetworkNode implements IComparable, ITy @Override public int getType() { - return level.isClientSide ? DetectorTile.TYPE.getValue() : type; + return level.isClientSide ? DetectorBlockEntity.TYPE.getValue() : type; } @Override diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/ExporterNetworkNode.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/ExporterNetworkNode.java index 6936588c0..583228454 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/ExporterNetworkNode.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/ExporterNetworkNode.java @@ -6,15 +6,15 @@ import com.refinedmods.refinedstorage.api.util.Action; import com.refinedmods.refinedstorage.api.util.IComparer; import com.refinedmods.refinedstorage.apiimpl.API; import com.refinedmods.refinedstorage.apiimpl.network.node.cover.CoverManager; +import com.refinedmods.refinedstorage.blockentity.ExporterBlockEntity; +import com.refinedmods.refinedstorage.blockentity.config.IComparable; +import com.refinedmods.refinedstorage.blockentity.config.IType; import com.refinedmods.refinedstorage.inventory.fluid.FluidInventory; import com.refinedmods.refinedstorage.inventory.item.BaseItemHandler; import com.refinedmods.refinedstorage.inventory.item.UpgradeItemHandler; import com.refinedmods.refinedstorage.inventory.listener.NetworkNodeFluidInventoryListener; import com.refinedmods.refinedstorage.inventory.listener.NetworkNodeInventoryListener; import com.refinedmods.refinedstorage.item.UpgradeItem; -import com.refinedmods.refinedstorage.tile.ExporterTile; -import com.refinedmods.refinedstorage.tile.config.IComparable; -import com.refinedmods.refinedstorage.tile.config.IType; import com.refinedmods.refinedstorage.util.StackUtils; import com.refinedmods.refinedstorage.util.WorldUtils; import net.minecraft.core.BlockPos; @@ -87,7 +87,7 @@ public class ExporterNetworkNode extends NetworkNode implements IComparable, ITy if (canUpdate() && ticks % upgrades.getSpeed() == 0 && level.isLoaded(pos)) { if (type == IType.ITEMS) { - IItemHandler handler = WorldUtils.getItemHandler(getFacingTile(), getDirection().getOpposite()); + IItemHandler handler = WorldUtils.getItemHandler(getFacingBlockEntity(), getDirection().getOpposite()); if (handler != null) { while (filterSlot + 1 < itemFilters.getSlots() && itemFilters.getStackInSlot(filterSlot).isEmpty()) { @@ -167,7 +167,7 @@ public class ExporterNetworkNode extends NetworkNode implements IComparable, ITy filterSlot = 0; } - IFluidHandler handler = WorldUtils.getFluidHandler(getFacingTile(), getDirection().getOpposite()); + IFluidHandler handler = WorldUtils.getFluidHandler(getFacingBlockEntity(), getDirection().getOpposite()); if (handler != null) { FluidStack stack = fluids[filterSlot]; @@ -306,7 +306,7 @@ public class ExporterNetworkNode extends NetworkNode implements IComparable, ITy @Override public int getType() { - return level.isClientSide ? ExporterTile.TYPE.getValue() : type; + return level.isClientSide ? ExporterBlockEntity.TYPE.getValue() : type; } @Override diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/ExternalStorageNetworkNode.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/ExternalStorageNetworkNode.java index 9125c2230..114b8f664 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/ExternalStorageNetworkNode.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/ExternalStorageNetworkNode.java @@ -20,8 +20,8 @@ import com.refinedmods.refinedstorage.inventory.fluid.FluidInventory; import com.refinedmods.refinedstorage.inventory.item.BaseItemHandler; import com.refinedmods.refinedstorage.inventory.listener.NetworkNodeFluidInventoryListener; import com.refinedmods.refinedstorage.inventory.listener.NetworkNodeInventoryListener; -import com.refinedmods.refinedstorage.tile.ExternalStorageTile; -import com.refinedmods.refinedstorage.tile.config.*; +import com.refinedmods.refinedstorage.blockentity.ExternalStorageBlockEntity; +import com.refinedmods.refinedstorage.blockentity.config.*; import com.refinedmods.refinedstorage.util.AccessTypeUtils; import com.refinedmods.refinedstorage.util.StackUtils; import net.minecraft.core.BlockPos; @@ -210,13 +210,13 @@ public class ExternalStorageNetworkNode extends NetworkNode implements IStorageP itemStorages.clear(); fluidStorages.clear(); - BlockEntity facing = getFacingTile(); + BlockEntity facing = getFacingBlockEntity(); if (facing != null) { if (type == IType.ITEMS) { for (IExternalStorageProvider provider : API.instance().getExternalStorageProviders(StorageType.ITEM)) { if (provider.canProvide(facing, getDirection())) { - itemStorages.add(provider.provide(this, getFacingTile(), getDirection())); + itemStorages.add(provider.provide(this, getFacingBlockEntity(), getDirection())); break; } @@ -224,7 +224,7 @@ public class ExternalStorageNetworkNode extends NetworkNode implements IStorageP } else if (type == IType.FLUIDS) { for (IExternalStorageProvider provider : API.instance().getExternalStorageProviders(StorageType.FLUID)) { if (provider.canProvide(facing, getDirection())) { - fluidStorages.add(provider.provide(this, getFacingTile(), getDirection())); + fluidStorages.add(provider.provide(this, getFacingBlockEntity(), getDirection())); break; } @@ -253,12 +253,12 @@ public class ExternalStorageNetworkNode extends NetworkNode implements IStorageP @Override public long getStored() { - return ExternalStorageTile.STORED.getValue(); + return ExternalStorageBlockEntity.STORED.getValue(); } @Override public long getCapacity() { - return ExternalStorageTile.CAPACITY.getValue(); + return ExternalStorageBlockEntity.CAPACITY.getValue(); } @Override @@ -290,7 +290,7 @@ public class ExternalStorageNetworkNode extends NetworkNode implements IStorageP @Override public int getType() { - return level.isClientSide ? ExternalStorageTile.TYPE.getValue() : type; + return level.isClientSide ? ExternalStorageBlockEntity.TYPE.getValue() : type; } @Override diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/FluidInterfaceNetworkNode.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/FluidInterfaceNetworkNode.java index b84dd0b28..b4ed9beab 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/FluidInterfaceNetworkNode.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/FluidInterfaceNetworkNode.java @@ -13,8 +13,8 @@ import com.refinedmods.refinedstorage.inventory.item.UpgradeItemHandler; import com.refinedmods.refinedstorage.inventory.listener.NetworkNodeFluidInventoryListener; import com.refinedmods.refinedstorage.inventory.listener.NetworkNodeInventoryListener; import com.refinedmods.refinedstorage.item.UpgradeItem; -import com.refinedmods.refinedstorage.tile.FluidInterfaceTile; -import com.refinedmods.refinedstorage.tile.config.IType; +import com.refinedmods.refinedstorage.blockentity.FluidInterfaceBlockEntity; +import com.refinedmods.refinedstorage.blockentity.config.IType; import com.refinedmods.refinedstorage.util.StackUtils; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; @@ -46,7 +46,7 @@ public class FluidInterfaceNetworkNode extends NetworkNode { super.onContentsChanged(); if (!level.isClientSide) { - ((FluidInterfaceTile) level.getBlockEntity(pos)).getDataManager().sendParameterToWatchers(FluidInterfaceTile.TANK_IN); + ((FluidInterfaceBlockEntity) level.getBlockEntity(pos)).getDataManager().sendParameterToWatchers(FluidInterfaceBlockEntity.TANK_IN); } markDirty(); @@ -251,7 +251,7 @@ public class FluidInterfaceNetworkNode extends NetworkNode { private void onTankOutChanged() { if (!level.isClientSide && level.isLoaded(pos)) { - ((FluidInterfaceTile) level.getBlockEntity(pos)).getDataManager().sendParameterToWatchers(FluidInterfaceTile.TANK_OUT); + ((FluidInterfaceBlockEntity) level.getBlockEntity(pos)).getDataManager().sendParameterToWatchers(FluidInterfaceBlockEntity.TANK_OUT); } markDirty(); diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/GridNetworkNode.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/GridNetworkNode.java index 628525ace..ae98521e7 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/GridNetworkNode.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/GridNetworkNode.java @@ -24,9 +24,9 @@ import com.refinedmods.refinedstorage.inventory.item.validator.ItemValidator; import com.refinedmods.refinedstorage.inventory.listener.NetworkNodeFluidInventoryListener; import com.refinedmods.refinedstorage.inventory.listener.NetworkNodeInventoryListener; import com.refinedmods.refinedstorage.item.PatternItem; -import com.refinedmods.refinedstorage.tile.config.IType; -import com.refinedmods.refinedstorage.tile.data.TileDataManager; -import com.refinedmods.refinedstorage.tile.grid.GridTile; +import com.refinedmods.refinedstorage.blockentity.config.IType; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationManager; +import com.refinedmods.refinedstorage.blockentity.grid.GridBlockEntity; import com.refinedmods.refinedstorage.util.StackUtils; import net.minecraft.core.BlockPos; import net.minecraft.nbt.CompoundTag; @@ -204,11 +204,11 @@ public class GridNetworkNode extends NetworkNode implements INetworkAwareGrid, I private void updateAllowedTags() { markDirty(); - BlockEntity tile = level.getBlockEntity(pos); + BlockEntity blockEntity = level.getBlockEntity(pos); - if (tile instanceof GridTile) { - ((GridTile) tile).getDataManager().sendParameterToWatchers(GridTile.ALLOWED_ITEM_TAGS); - ((GridTile) tile).getDataManager().sendParameterToWatchers(GridTile.ALLOWED_FLUID_TAGS); + if (blockEntity instanceof GridBlockEntity) { + ((GridBlockEntity) blockEntity).getDataManager().sendParameterToWatchers(GridBlockEntity.ALLOWED_ITEM_TAGS); + ((GridBlockEntity) blockEntity).getDataManager().sendParameterToWatchers(GridBlockEntity.ALLOWED_FLUID_TAGS); } } @@ -237,7 +237,7 @@ public class GridNetworkNode extends NetworkNode implements INetworkAwareGrid, I } public boolean isProcessingPattern() { - return level.isClientSide ? GridTile.PROCESSING_PATTERN.getValue() : processingPattern; + return level.isClientSide ? GridBlockEntity.PROCESSING_PATTERN.getValue() : processingPattern; } public void setProcessingPattern(boolean processingPattern) { @@ -527,7 +527,7 @@ public class GridNetworkNode extends NetworkNode implements INetworkAwareGrid, I @Override public int getViewType() { - return level.isClientSide ? GridTile.VIEW_TYPE.getValue() : viewType; + return level.isClientSide ? GridBlockEntity.VIEW_TYPE.getValue() : viewType; } public void setViewType(int viewType) { @@ -536,7 +536,7 @@ public class GridNetworkNode extends NetworkNode implements INetworkAwareGrid, I @Override public int getSortingDirection() { - return level.isClientSide ? GridTile.SORTING_DIRECTION.getValue() : sortingDirection; + return level.isClientSide ? GridBlockEntity.SORTING_DIRECTION.getValue() : sortingDirection; } public void setSortingDirection(int sortingDirection) { @@ -545,7 +545,7 @@ public class GridNetworkNode extends NetworkNode implements INetworkAwareGrid, I @Override public int getSortingType() { - return level.isClientSide ? GridTile.SORTING_TYPE.getValue() : sortingType; + return level.isClientSide ? GridBlockEntity.SORTING_TYPE.getValue() : sortingType; } public void setSortingType(int sortingType) { @@ -554,7 +554,7 @@ public class GridNetworkNode extends NetworkNode implements INetworkAwareGrid, I @Override public int getSearchBoxMode() { - return level.isClientSide ? GridTile.SEARCH_BOX_MODE.getValue() : searchBoxMode; + return level.isClientSide ? GridBlockEntity.SEARCH_BOX_MODE.getValue() : searchBoxMode; } public void setSearchBoxMode(int searchBoxMode) { @@ -563,7 +563,7 @@ public class GridNetworkNode extends NetworkNode implements INetworkAwareGrid, I @Override public int getSize() { - return level.isClientSide ? GridTile.SIZE.getValue() : size; + return level.isClientSide ? GridBlockEntity.SIZE.getValue() : size; } public void setSize(int size) { @@ -572,7 +572,7 @@ public class GridNetworkNode extends NetworkNode implements INetworkAwareGrid, I @Override public int getTabSelected() { - return level.isClientSide ? GridTile.TAB_SELECTED.getValue() : tabSelected; + return level.isClientSide ? GridBlockEntity.TAB_SELECTED.getValue() : tabSelected; } public void setTabSelected(int tabSelected) { @@ -581,7 +581,7 @@ public class GridNetworkNode extends NetworkNode implements INetworkAwareGrid, I @Override public int getTabPage() { - return level.isClientSide ? GridTile.TAB_PAGE.getValue() : Math.min(tabPage, getTotalTabPages()); + return level.isClientSide ? GridBlockEntity.TAB_PAGE.getValue() : Math.min(tabPage, getTotalTabPages()); } public void setTabPage(int page) { @@ -595,44 +595,44 @@ public class GridNetworkNode extends NetworkNode implements INetworkAwareGrid, I @Override public void onViewTypeChanged(int type) { - TileDataManager.setParameter(GridTile.VIEW_TYPE, type); + BlockEntitySynchronizationManager.setParameter(GridBlockEntity.VIEW_TYPE, type); } @Override public void onSortingTypeChanged(int type) { - TileDataManager.setParameter(GridTile.SORTING_TYPE, type); + BlockEntitySynchronizationManager.setParameter(GridBlockEntity.SORTING_TYPE, type); } @Override public void onSortingDirectionChanged(int direction) { - TileDataManager.setParameter(GridTile.SORTING_DIRECTION, direction); + BlockEntitySynchronizationManager.setParameter(GridBlockEntity.SORTING_DIRECTION, direction); } @Override public void onSearchBoxModeChanged(int searchBoxMode) { - TileDataManager.setParameter(GridTile.SEARCH_BOX_MODE, searchBoxMode); + BlockEntitySynchronizationManager.setParameter(GridBlockEntity.SEARCH_BOX_MODE, searchBoxMode); } @Override public void onSizeChanged(int size) { - TileDataManager.setParameter(GridTile.SIZE, size); + BlockEntitySynchronizationManager.setParameter(GridBlockEntity.SIZE, size); } @Override public void onTabSelectionChanged(int tab) { - TileDataManager.setParameter(GridTile.TAB_SELECTED, tab); + BlockEntitySynchronizationManager.setParameter(GridBlockEntity.TAB_SELECTED, tab); } @Override public void onTabPageChanged(int page) { if (page >= 0 && page <= getTotalTabPages()) { - TileDataManager.setParameter(GridTile.TAB_PAGE, page); + BlockEntitySynchronizationManager.setParameter(GridBlockEntity.TAB_PAGE, page); } } @Override public int getType() { - return level.isClientSide ? GridTile.PROCESSING_TYPE.getValue() : processingType; + return level.isClientSide ? GridBlockEntity.PROCESSING_TYPE.getValue() : processingType; } @Override diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/ImporterNetworkNode.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/ImporterNetworkNode.java index 009755a3e..68012c32f 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/ImporterNetworkNode.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/ImporterNetworkNode.java @@ -11,11 +11,11 @@ import com.refinedmods.refinedstorage.inventory.item.UpgradeItemHandler; import com.refinedmods.refinedstorage.inventory.listener.NetworkNodeFluidInventoryListener; import com.refinedmods.refinedstorage.inventory.listener.NetworkNodeInventoryListener; import com.refinedmods.refinedstorage.item.UpgradeItem; -import com.refinedmods.refinedstorage.tile.DiskDriveTile; -import com.refinedmods.refinedstorage.tile.ImporterTile; -import com.refinedmods.refinedstorage.tile.config.IComparable; -import com.refinedmods.refinedstorage.tile.config.IType; -import com.refinedmods.refinedstorage.tile.config.IWhitelistBlacklist; +import com.refinedmods.refinedstorage.blockentity.DiskDriveBlockEntity; +import com.refinedmods.refinedstorage.blockentity.ImporterBlockEntity; +import com.refinedmods.refinedstorage.blockentity.config.IComparable; +import com.refinedmods.refinedstorage.blockentity.config.IType; +import com.refinedmods.refinedstorage.blockentity.config.IWhitelistBlacklist; import com.refinedmods.refinedstorage.util.StackUtils; import com.refinedmods.refinedstorage.util.WorldUtils; import net.minecraft.core.BlockPos; @@ -67,10 +67,10 @@ public class ImporterNetworkNode extends NetworkNode implements IComparable, IWh } if (type == IType.ITEMS) { - BlockEntity facing = getFacingTile(); + BlockEntity facing = getFacingBlockEntity(); IItemHandler handler = WorldUtils.getItemHandler(facing, getDirection().getOpposite()); - if (facing instanceof DiskDriveTile || handler == null) { + if (facing instanceof DiskDriveBlockEntity || handler == null) { return; } @@ -100,7 +100,7 @@ public class ImporterNetworkNode extends NetworkNode implements IComparable, IWh } } } else if (type == IType.FLUIDS && ticks % upgrades.getSpeed() == 0) { - IFluidHandler handler = WorldUtils.getFluidHandler(getFacingTile(), getDirection().getOpposite()); + IFluidHandler handler = WorldUtils.getFluidHandler(getFacingBlockEntity(), getDirection().getOpposite()); if (handler != null) { FluidStack stack = handler.drain(FluidAttributes.BUCKET_VOLUME, IFluidHandler.FluidAction.SIMULATE); @@ -223,7 +223,7 @@ public class ImporterNetworkNode extends NetworkNode implements IComparable, IWh @Override public int getType() { - return level.isClientSide ? ImporterTile.TYPE.getValue() : type; + return level.isClientSide ? ImporterBlockEntity.TYPE.getValue() : type; } @Override diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/InterfaceNetworkNode.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/InterfaceNetworkNode.java index e39a8685d..c70d5c2a3 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/InterfaceNetworkNode.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/InterfaceNetworkNode.java @@ -11,8 +11,8 @@ import com.refinedmods.refinedstorage.inventory.item.ProxyItemHandler; import com.refinedmods.refinedstorage.inventory.item.UpgradeItemHandler; import com.refinedmods.refinedstorage.inventory.listener.NetworkNodeInventoryListener; import com.refinedmods.refinedstorage.item.UpgradeItem; -import com.refinedmods.refinedstorage.tile.config.IComparable; -import com.refinedmods.refinedstorage.tile.config.IType; +import com.refinedmods.refinedstorage.blockentity.config.IComparable; +import com.refinedmods.refinedstorage.blockentity.config.IType; import com.refinedmods.refinedstorage.util.StackUtils; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/NetworkNode.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/NetworkNode.java index e71aefffa..8263d20de 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/NetworkNode.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/NetworkNode.java @@ -7,7 +7,7 @@ import com.refinedmods.refinedstorage.api.util.Action; import com.refinedmods.refinedstorage.apiimpl.API; import com.refinedmods.refinedstorage.block.BaseBlock; import com.refinedmods.refinedstorage.block.NetworkNodeBlock; -import com.refinedmods.refinedstorage.tile.config.RedstoneMode; +import com.refinedmods.refinedstorage.blockentity.config.RedstoneMode; import com.refinedmods.refinedstorage.util.NetworkUtils; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; @@ -232,7 +232,7 @@ public abstract class NetworkNode implements INetworkNode, INetworkNodeVisitor { @Override public void visit(Operator operator) { for (Direction facing : Direction.values()) { - INetworkNode oppositeNode = NetworkUtils.getNodeFromTile(level.getBlockEntity(pos.relative(facing))); + INetworkNode oppositeNode = NetworkUtils.getNodeFromBlockEntity(level.getBlockEntity(pos.relative(facing))); if (oppositeNode == null) { continue; } @@ -243,8 +243,13 @@ public abstract class NetworkNode implements INetworkNode, INetworkNodeVisitor { } @Nullable - public BlockEntity getFacingTile() { - return level.getBlockEntity(pos.relative(getDirection())); + public BlockEntity getFacingBlockEntity() { + BlockPos facingPos = pos.relative(getDirection()); + if (!level.isLoaded(facingPos)) { + return null; + } + + return level.getBlockEntity(facingPos); } public Direction getDirection() { diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/NetworkTransmitterNetworkNode.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/NetworkTransmitterNetworkNode.java index c4a660be1..5a3a0c02d 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/NetworkTransmitterNetworkNode.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/NetworkTransmitterNetworkNode.java @@ -8,7 +8,7 @@ import com.refinedmods.refinedstorage.inventory.item.BaseItemHandler; import com.refinedmods.refinedstorage.inventory.item.validator.ItemValidator; import com.refinedmods.refinedstorage.inventory.listener.NetworkNodeInventoryListener; import com.refinedmods.refinedstorage.item.NetworkCardItem; -import com.refinedmods.refinedstorage.tile.NetworkReceiverTile; +import com.refinedmods.refinedstorage.blockentity.NetworkReceiverBlockEntity; import com.refinedmods.refinedstorage.util.StackUtils; import net.minecraft.core.BlockPos; import net.minecraft.nbt.CompoundTag; @@ -116,11 +116,11 @@ public class NetworkTransmitterNetworkNode extends NetworkNode { if (!isSameDimension()) { Level dimensionWorld = level.getServer().getLevel(receiverDimension); - if (dimensionWorld != null && dimensionWorld.getBlockEntity(receiver) instanceof NetworkReceiverTile) { + if (dimensionWorld != null && dimensionWorld.getBlockEntity(receiver) instanceof NetworkReceiverBlockEntity) { operator.apply(dimensionWorld, receiver, null); } } else { - if (level.getBlockEntity(receiver) instanceof NetworkReceiverTile) { + if (level.getBlockEntity(receiver) instanceof NetworkReceiverBlockEntity) { operator.apply(level, receiver, null); } } diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/RelayNetworkNode.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/RelayNetworkNode.java index d961b8cae..a97f0d770 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/RelayNetworkNode.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/RelayNetworkNode.java @@ -1,7 +1,7 @@ package com.refinedmods.refinedstorage.apiimpl.network.node; import com.refinedmods.refinedstorage.RS; -import com.refinedmods.refinedstorage.tile.config.RedstoneMode; +import com.refinedmods.refinedstorage.blockentity.config.RedstoneMode; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.resources.ResourceLocation; diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/StorageMonitorNetworkNode.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/StorageMonitorNetworkNode.java index b370dcb2e..47d3cc573 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/StorageMonitorNetworkNode.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/StorageMonitorNetworkNode.java @@ -8,10 +8,10 @@ import com.refinedmods.refinedstorage.apiimpl.API; import com.refinedmods.refinedstorage.inventory.fluid.FluidInventory; import com.refinedmods.refinedstorage.inventory.item.BaseItemHandler; import com.refinedmods.refinedstorage.inventory.listener.NetworkNodeInventoryListener; -import com.refinedmods.refinedstorage.tile.StorageMonitorTile; -import com.refinedmods.refinedstorage.tile.config.IComparable; -import com.refinedmods.refinedstorage.tile.config.IType; -import com.refinedmods.refinedstorage.tile.config.RedstoneMode; +import com.refinedmods.refinedstorage.blockentity.StorageMonitorBlockEntity; +import com.refinedmods.refinedstorage.blockentity.config.IComparable; +import com.refinedmods.refinedstorage.blockentity.config.IType; +import com.refinedmods.refinedstorage.blockentity.config.RedstoneMode; import com.refinedmods.refinedstorage.util.NetworkUtils; import com.refinedmods.refinedstorage.util.StackUtils; import com.refinedmods.refinedstorage.util.WorldUtils; @@ -318,7 +318,7 @@ public class StorageMonitorNetworkNode extends NetworkNode implements IComparabl @Override public int getType() { - return level.isClientSide ? StorageMonitorTile.TYPE.getValue() : type; + return level.isClientSide ? StorageMonitorBlockEntity.TYPE.getValue() : type; } @Override diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/diskdrive/DiskDriveNetworkNode.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/diskdrive/DiskDriveNetworkNode.java index a924a57a5..6a545fa15 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/diskdrive/DiskDriveNetworkNode.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/diskdrive/DiskDriveNetworkNode.java @@ -14,13 +14,13 @@ import com.refinedmods.refinedstorage.apiimpl.network.node.DiskState; import com.refinedmods.refinedstorage.apiimpl.network.node.NetworkNode; import com.refinedmods.refinedstorage.apiimpl.storage.cache.FluidStorageCache; import com.refinedmods.refinedstorage.apiimpl.storage.cache.ItemStorageCache; +import com.refinedmods.refinedstorage.blockentity.DiskDriveBlockEntity; +import com.refinedmods.refinedstorage.blockentity.config.*; import com.refinedmods.refinedstorage.inventory.fluid.FluidInventory; import com.refinedmods.refinedstorage.inventory.item.BaseItemHandler; import com.refinedmods.refinedstorage.inventory.item.validator.StorageDiskItemValidator; import com.refinedmods.refinedstorage.inventory.listener.NetworkNodeFluidInventoryListener; import com.refinedmods.refinedstorage.inventory.listener.NetworkNodeInventoryListener; -import com.refinedmods.refinedstorage.tile.DiskDriveTile; -import com.refinedmods.refinedstorage.tile.config.*; import com.refinedmods.refinedstorage.util.AccessTypeUtils; import com.refinedmods.refinedstorage.util.StackUtils; import com.refinedmods.refinedstorage.util.WorldUtils; @@ -323,7 +323,7 @@ public class DiskDriveNetworkNode extends NetworkNode implements IStorageProvide @Override public int getType() { - return level.isClientSide ? DiskDriveTile.TYPE.getValue() : type; + return level.isClientSide ? DiskDriveBlockEntity.TYPE.getValue() : type; } @Override diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/diskdrive/FluidDriveWrapperStorageDisk.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/diskdrive/FluidDriveWrapperStorageDisk.java index 64a229233..2b86cd621 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/diskdrive/FluidDriveWrapperStorageDisk.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/diskdrive/FluidDriveWrapperStorageDisk.java @@ -6,7 +6,7 @@ import com.refinedmods.refinedstorage.api.storage.disk.IStorageDiskContainerCont import com.refinedmods.refinedstorage.api.storage.disk.IStorageDiskListener; import com.refinedmods.refinedstorage.api.util.Action; import com.refinedmods.refinedstorage.apiimpl.network.node.DiskState; -import com.refinedmods.refinedstorage.tile.config.IWhitelistBlacklist; +import com.refinedmods.refinedstorage.blockentity.config.IWhitelistBlacklist; import com.refinedmods.refinedstorage.util.StackUtils; import net.minecraft.nbt.CompoundTag; import net.minecraft.resources.ResourceLocation; diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/diskdrive/ItemDriveWrapperStorageDisk.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/diskdrive/ItemDriveWrapperStorageDisk.java index 2904b696b..5604b0a70 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/diskdrive/ItemDriveWrapperStorageDisk.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/diskdrive/ItemDriveWrapperStorageDisk.java @@ -6,7 +6,7 @@ import com.refinedmods.refinedstorage.api.storage.disk.IStorageDiskContainerCont import com.refinedmods.refinedstorage.api.storage.disk.IStorageDiskListener; import com.refinedmods.refinedstorage.api.util.Action; import com.refinedmods.refinedstorage.apiimpl.network.node.DiskState; -import com.refinedmods.refinedstorage.tile.config.IWhitelistBlacklist; +import com.refinedmods.refinedstorage.blockentity.config.IWhitelistBlacklist; import net.minecraft.nbt.CompoundTag; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemStack; diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/diskmanipulator/DiskManipulatorNetworkNode.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/diskmanipulator/DiskManipulatorNetworkNode.java index 864c05a21..7b5a9582f 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/diskmanipulator/DiskManipulatorNetworkNode.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/diskmanipulator/DiskManipulatorNetworkNode.java @@ -9,6 +9,10 @@ import com.refinedmods.refinedstorage.api.util.IComparer; import com.refinedmods.refinedstorage.api.util.StackListEntry; import com.refinedmods.refinedstorage.apiimpl.network.node.DiskState; import com.refinedmods.refinedstorage.apiimpl.network.node.NetworkNode; +import com.refinedmods.refinedstorage.blockentity.DiskManipulatorBlockEntity; +import com.refinedmods.refinedstorage.blockentity.config.IComparable; +import com.refinedmods.refinedstorage.blockentity.config.IType; +import com.refinedmods.refinedstorage.blockentity.config.IWhitelistBlacklist; import com.refinedmods.refinedstorage.inventory.fluid.FluidInventory; import com.refinedmods.refinedstorage.inventory.item.BaseItemHandler; import com.refinedmods.refinedstorage.inventory.item.ProxyItemHandler; @@ -17,10 +21,6 @@ import com.refinedmods.refinedstorage.inventory.item.validator.StorageDiskItemVa import com.refinedmods.refinedstorage.inventory.listener.NetworkNodeFluidInventoryListener; import com.refinedmods.refinedstorage.inventory.listener.NetworkNodeInventoryListener; import com.refinedmods.refinedstorage.item.UpgradeItem; -import com.refinedmods.refinedstorage.tile.DiskManipulatorTile; -import com.refinedmods.refinedstorage.tile.config.IComparable; -import com.refinedmods.refinedstorage.tile.config.IType; -import com.refinedmods.refinedstorage.tile.config.IWhitelistBlacklist; import com.refinedmods.refinedstorage.util.StackUtils; import com.refinedmods.refinedstorage.util.WorldUtils; import net.minecraft.core.BlockPos; @@ -413,7 +413,7 @@ public class DiskManipulatorNetworkNode extends NetworkNode implements IComparab @Override public int getType() { - return level.isClientSide ? DiskManipulatorTile.TYPE.getValue() : type; + return level.isClientSide ? DiskManipulatorBlockEntity.TYPE.getValue() : type; } @Override diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/diskmanipulator/StorageDiskFluidManipulatorWrapper.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/diskmanipulator/StorageDiskFluidManipulatorWrapper.java index 125e2a8aa..44f6f8dd5 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/diskmanipulator/StorageDiskFluidManipulatorWrapper.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/diskmanipulator/StorageDiskFluidManipulatorWrapper.java @@ -6,7 +6,7 @@ import com.refinedmods.refinedstorage.api.storage.disk.IStorageDiskContainerCont import com.refinedmods.refinedstorage.api.storage.disk.IStorageDiskListener; import com.refinedmods.refinedstorage.api.util.Action; import com.refinedmods.refinedstorage.apiimpl.network.node.DiskState; -import com.refinedmods.refinedstorage.tile.config.IWhitelistBlacklist; +import com.refinedmods.refinedstorage.blockentity.config.IWhitelistBlacklist; import com.refinedmods.refinedstorage.util.StackUtils; import com.refinedmods.refinedstorage.util.WorldUtils; import net.minecraft.nbt.CompoundTag; diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/diskmanipulator/StorageDiskItemManipulatorWrapper.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/diskmanipulator/StorageDiskItemManipulatorWrapper.java index 2c8ac1ba3..930440486 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/diskmanipulator/StorageDiskItemManipulatorWrapper.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/diskmanipulator/StorageDiskItemManipulatorWrapper.java @@ -6,7 +6,7 @@ import com.refinedmods.refinedstorage.api.storage.disk.IStorageDiskContainerCont import com.refinedmods.refinedstorage.api.storage.disk.IStorageDiskListener; import com.refinedmods.refinedstorage.api.util.Action; import com.refinedmods.refinedstorage.apiimpl.network.node.DiskState; -import com.refinedmods.refinedstorage.tile.config.IWhitelistBlacklist; +import com.refinedmods.refinedstorage.blockentity.config.IWhitelistBlacklist; import com.refinedmods.refinedstorage.util.WorldUtils; import net.minecraft.nbt.CompoundTag; import net.minecraft.resources.ResourceLocation; diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/storage/FluidStorageNetworkNode.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/storage/FluidStorageNetworkNode.java index 778120506..73792fba8 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/storage/FluidStorageNetworkNode.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/storage/FluidStorageNetworkNode.java @@ -15,13 +15,13 @@ import com.refinedmods.refinedstorage.apiimpl.network.node.IStorageScreen; import com.refinedmods.refinedstorage.apiimpl.network.node.NetworkNode; import com.refinedmods.refinedstorage.apiimpl.storage.FluidStorageType; import com.refinedmods.refinedstorage.apiimpl.storage.cache.FluidStorageCache; +import com.refinedmods.refinedstorage.blockentity.FluidStorageBlockEntity; +import com.refinedmods.refinedstorage.blockentity.config.IAccessType; +import com.refinedmods.refinedstorage.blockentity.config.IComparable; +import com.refinedmods.refinedstorage.blockentity.config.IPrioritizable; +import com.refinedmods.refinedstorage.blockentity.config.IWhitelistBlacklist; import com.refinedmods.refinedstorage.inventory.fluid.FluidInventory; import com.refinedmods.refinedstorage.inventory.listener.NetworkNodeFluidInventoryListener; -import com.refinedmods.refinedstorage.tile.FluidStorageTile; -import com.refinedmods.refinedstorage.tile.config.IAccessType; -import com.refinedmods.refinedstorage.tile.config.IComparable; -import com.refinedmods.refinedstorage.tile.config.IPrioritizable; -import com.refinedmods.refinedstorage.tile.config.IWhitelistBlacklist; import com.refinedmods.refinedstorage.util.AccessTypeUtils; import net.minecraft.core.BlockPos; import net.minecraft.nbt.CompoundTag; @@ -252,7 +252,7 @@ public class FluidStorageNetworkNode extends NetworkNode implements IStorageScre @Override public long getStored() { - return FluidStorageTile.STORED.getValue(); + return FluidStorageBlockEntity.STORED.getValue(); } @Override diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/storage/FluidStorageWrapperStorageDisk.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/storage/FluidStorageWrapperStorageDisk.java index ac65c1188..7a9da007f 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/storage/FluidStorageWrapperStorageDisk.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/storage/FluidStorageWrapperStorageDisk.java @@ -5,7 +5,7 @@ import com.refinedmods.refinedstorage.api.storage.disk.IStorageDisk; import com.refinedmods.refinedstorage.api.storage.disk.IStorageDiskContainerContext; import com.refinedmods.refinedstorage.api.storage.disk.IStorageDiskListener; import com.refinedmods.refinedstorage.api.util.Action; -import com.refinedmods.refinedstorage.tile.config.IWhitelistBlacklist; +import com.refinedmods.refinedstorage.blockentity.config.IWhitelistBlacklist; import com.refinedmods.refinedstorage.util.StackUtils; import net.minecraft.nbt.CompoundTag; import net.minecraft.resources.ResourceLocation; diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/storage/ItemStorageWrapperStorageDisk.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/storage/ItemStorageWrapperStorageDisk.java index 736407ccf..52f6c2483 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/storage/ItemStorageWrapperStorageDisk.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/storage/ItemStorageWrapperStorageDisk.java @@ -5,7 +5,7 @@ import com.refinedmods.refinedstorage.api.storage.disk.IStorageDisk; import com.refinedmods.refinedstorage.api.storage.disk.IStorageDiskContainerContext; import com.refinedmods.refinedstorage.api.storage.disk.IStorageDiskListener; import com.refinedmods.refinedstorage.api.util.Action; -import com.refinedmods.refinedstorage.tile.config.IWhitelistBlacklist; +import com.refinedmods.refinedstorage.blockentity.config.IWhitelistBlacklist; import net.minecraft.nbt.CompoundTag; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemStack; diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/storage/StorageNetworkNode.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/storage/StorageNetworkNode.java index 9b58b9d4e..5c655a33c 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/storage/StorageNetworkNode.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/storage/StorageNetworkNode.java @@ -15,13 +15,13 @@ import com.refinedmods.refinedstorage.apiimpl.network.node.IStorageScreen; import com.refinedmods.refinedstorage.apiimpl.network.node.NetworkNode; import com.refinedmods.refinedstorage.apiimpl.storage.ItemStorageType; import com.refinedmods.refinedstorage.apiimpl.storage.cache.ItemStorageCache; +import com.refinedmods.refinedstorage.blockentity.StorageBlockEntity; +import com.refinedmods.refinedstorage.blockentity.config.IAccessType; +import com.refinedmods.refinedstorage.blockentity.config.IComparable; +import com.refinedmods.refinedstorage.blockentity.config.IPrioritizable; +import com.refinedmods.refinedstorage.blockentity.config.IWhitelistBlacklist; import com.refinedmods.refinedstorage.inventory.item.BaseItemHandler; import com.refinedmods.refinedstorage.inventory.listener.NetworkNodeInventoryListener; -import com.refinedmods.refinedstorage.tile.StorageTile; -import com.refinedmods.refinedstorage.tile.config.IAccessType; -import com.refinedmods.refinedstorage.tile.config.IComparable; -import com.refinedmods.refinedstorage.tile.config.IPrioritizable; -import com.refinedmods.refinedstorage.tile.config.IWhitelistBlacklist; import com.refinedmods.refinedstorage.util.AccessTypeUtils; import com.refinedmods.refinedstorage.util.StackUtils; import net.minecraft.core.BlockPos; @@ -251,7 +251,7 @@ public class StorageNetworkNode extends NetworkNode implements IStorageScreen, I @Override public long getStored() { - return StorageTile.STORED.getValue(); + return StorageBlockEntity.STORED.getValue(); } @Override diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/cache/PortableFluidStorageCache.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/cache/PortableFluidStorageCache.java index 560d09d1e..0e52925b3 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/cache/PortableFluidStorageCache.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/cache/PortableFluidStorageCache.java @@ -7,7 +7,7 @@ import com.refinedmods.refinedstorage.api.storage.cache.InvalidateCause; import com.refinedmods.refinedstorage.api.util.IStackList; import com.refinedmods.refinedstorage.api.util.StackListResult; import com.refinedmods.refinedstorage.apiimpl.API; -import com.refinedmods.refinedstorage.tile.grid.portable.IPortableGrid; +import com.refinedmods.refinedstorage.blockentity.grid.portable.IPortableGrid; import net.minecraftforge.fluids.FluidStack; import javax.annotation.Nonnull; diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/cache/PortableItemStorageCache.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/cache/PortableItemStorageCache.java index d32ed6841..ddb50e57b 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/cache/PortableItemStorageCache.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/cache/PortableItemStorageCache.java @@ -7,7 +7,7 @@ import com.refinedmods.refinedstorage.api.storage.cache.InvalidateCause; import com.refinedmods.refinedstorage.api.util.IStackList; import com.refinedmods.refinedstorage.api.util.StackListResult; import com.refinedmods.refinedstorage.apiimpl.API; -import com.refinedmods.refinedstorage.tile.grid.portable.IPortableGrid; +import com.refinedmods.refinedstorage.blockentity.grid.portable.IPortableGrid; import net.minecraft.world.item.ItemStack; import javax.annotation.Nonnull; diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/cache/listener/PortableFluidGridStorageCacheListener.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/cache/listener/PortableFluidGridStorageCacheListener.java index b619e8afe..91295e71e 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/cache/listener/PortableFluidGridStorageCacheListener.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/cache/listener/PortableFluidGridStorageCacheListener.java @@ -5,7 +5,7 @@ import com.refinedmods.refinedstorage.api.storage.cache.IStorageCacheListener; import com.refinedmods.refinedstorage.api.util.StackListResult; import com.refinedmods.refinedstorage.network.grid.PortableGridFluidDeltaMessage; import com.refinedmods.refinedstorage.network.grid.PortableGridFluidUpdateMessage; -import com.refinedmods.refinedstorage.tile.grid.portable.IPortableGrid; +import com.refinedmods.refinedstorage.blockentity.grid.portable.IPortableGrid; import net.minecraft.server.level.ServerPlayer; import net.minecraftforge.fluids.FluidStack; diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/cache/listener/PortableItemGridStorageCacheListener.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/cache/listener/PortableItemGridStorageCacheListener.java index ad69271a5..65b814d9e 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/cache/listener/PortableItemGridStorageCacheListener.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/cache/listener/PortableItemGridStorageCacheListener.java @@ -5,7 +5,7 @@ import com.refinedmods.refinedstorage.api.storage.cache.IStorageCacheListener; import com.refinedmods.refinedstorage.api.util.StackListResult; import com.refinedmods.refinedstorage.network.grid.PortableGridItemDeltaMessage; import com.refinedmods.refinedstorage.network.grid.PortableGridItemUpdateMessage; -import com.refinedmods.refinedstorage.tile.grid.portable.IPortableGrid; +import com.refinedmods.refinedstorage.blockentity.grid.portable.IPortableGrid; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.item.ItemStack; diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/disk/PortableFluidStorageDisk.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/disk/PortableFluidStorageDisk.java index 1b84af63c..13fb8ede7 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/disk/PortableFluidStorageDisk.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/disk/PortableFluidStorageDisk.java @@ -5,7 +5,7 @@ import com.refinedmods.refinedstorage.api.storage.disk.IStorageDisk; import com.refinedmods.refinedstorage.api.storage.disk.IStorageDiskContainerContext; import com.refinedmods.refinedstorage.api.storage.disk.IStorageDiskListener; import com.refinedmods.refinedstorage.api.util.Action; -import com.refinedmods.refinedstorage.tile.grid.portable.IPortableGrid; +import com.refinedmods.refinedstorage.blockentity.grid.portable.IPortableGrid; import net.minecraft.nbt.CompoundTag; import net.minecraft.resources.ResourceLocation; import net.minecraftforge.fluids.FluidStack; diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/disk/PortableItemStorageDisk.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/disk/PortableItemStorageDisk.java index 3de452aa7..e700c6da5 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/disk/PortableItemStorageDisk.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/disk/PortableItemStorageDisk.java @@ -5,7 +5,7 @@ import com.refinedmods.refinedstorage.api.storage.disk.IStorageDisk; import com.refinedmods.refinedstorage.api.storage.disk.IStorageDiskContainerContext; import com.refinedmods.refinedstorage.api.storage.disk.IStorageDiskListener; import com.refinedmods.refinedstorage.api.util.Action; -import com.refinedmods.refinedstorage.tile.grid.portable.IPortableGrid; +import com.refinedmods.refinedstorage.blockentity.grid.portable.IPortableGrid; import net.minecraft.nbt.CompoundTag; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemStack; diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/externalstorage/FluidExternalStorageProvider.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/externalstorage/FluidExternalStorageProvider.java index 9370d735f..43dad3c93 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/externalstorage/FluidExternalStorageProvider.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/externalstorage/FluidExternalStorageProvider.java @@ -3,7 +3,7 @@ package com.refinedmods.refinedstorage.apiimpl.storage.externalstorage; import com.refinedmods.refinedstorage.api.storage.externalstorage.IExternalStorage; import com.refinedmods.refinedstorage.api.storage.externalstorage.IExternalStorageContext; import com.refinedmods.refinedstorage.api.storage.externalstorage.IExternalStorageProvider; -import com.refinedmods.refinedstorage.tile.FluidInterfaceTile; +import com.refinedmods.refinedstorage.blockentity.FluidInterfaceBlockEntity; import com.refinedmods.refinedstorage.util.WorldUtils; import net.minecraft.core.Direction; import net.minecraft.world.level.block.entity.BlockEntity; @@ -13,20 +13,20 @@ import javax.annotation.Nonnull; public class FluidExternalStorageProvider implements IExternalStorageProvider { @Override - public boolean canProvide(BlockEntity tile, Direction direction) { - return WorldUtils.getFluidHandler(tile, direction.getOpposite()) != null; + public boolean canProvide(BlockEntity blockEntity, Direction direction) { + return WorldUtils.getFluidHandler(blockEntity, direction.getOpposite()) != null; } @Nonnull @Override - public IExternalStorage provide(IExternalStorageContext context, BlockEntity tile, Direction direction) { + public IExternalStorage provide(IExternalStorageContext context, BlockEntity blockEntity, Direction direction) { return new FluidExternalStorage(context, () -> { - if (!tile.getLevel().isLoaded(tile.getBlockPos())) { + if (!blockEntity.getLevel().isLoaded(blockEntity.getBlockPos())) { return null; } - return WorldUtils.getFluidHandler(tile, direction.getOpposite()); - }, tile instanceof FluidInterfaceTile); + return WorldUtils.getFluidHandler(blockEntity, direction.getOpposite()); + }, blockEntity instanceof FluidInterfaceBlockEntity); } @Override diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/externalstorage/ItemExternalStorageProvider.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/externalstorage/ItemExternalStorageProvider.java index 276ef938c..18e257dd7 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/externalstorage/ItemExternalStorageProvider.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/externalstorage/ItemExternalStorageProvider.java @@ -5,7 +5,7 @@ import com.refinedmods.refinedstorage.api.storage.IStorageProvider; import com.refinedmods.refinedstorage.api.storage.externalstorage.IExternalStorage; import com.refinedmods.refinedstorage.api.storage.externalstorage.IExternalStorageContext; import com.refinedmods.refinedstorage.api.storage.externalstorage.IExternalStorageProvider; -import com.refinedmods.refinedstorage.tile.InterfaceTile; +import com.refinedmods.refinedstorage.blockentity.InterfaceBlockEntity; import com.refinedmods.refinedstorage.util.NetworkUtils; import com.refinedmods.refinedstorage.util.WorldUtils; import net.minecraft.core.Direction; @@ -16,26 +16,26 @@ import javax.annotation.Nonnull; public class ItemExternalStorageProvider implements IExternalStorageProvider { @Override - public boolean canProvide(BlockEntity tile, Direction direction) { - INetworkNode node = NetworkUtils.getNodeFromTile(tile); + public boolean canProvide(BlockEntity blockEntity, Direction direction) { + INetworkNode node = NetworkUtils.getNodeFromBlockEntity(blockEntity); if (node instanceof IStorageProvider) { return false; } - return WorldUtils.getItemHandler(tile, direction.getOpposite()) != null; + return WorldUtils.getItemHandler(blockEntity, direction.getOpposite()) != null; } @Nonnull @Override - public IExternalStorage provide(IExternalStorageContext context, BlockEntity tile, Direction direction) { + public IExternalStorage provide(IExternalStorageContext context, BlockEntity blockEntity, Direction direction) { return new ItemExternalStorage(context, () -> { - if (!tile.getLevel().isLoaded(tile.getBlockPos())) { + if (!blockEntity.getLevel().isLoaded(blockEntity.getBlockPos())) { return null; } - return WorldUtils.getItemHandler(tile, direction.getOpposite()); - }, tile instanceof InterfaceTile); + return WorldUtils.getItemHandler(blockEntity, direction.getOpposite()); + }, blockEntity instanceof InterfaceBlockEntity); } @Override diff --git a/src/main/java/com/refinedmods/refinedstorage/block/CableBlock.java b/src/main/java/com/refinedmods/refinedstorage/block/CableBlock.java index 3a2ecc71a..d2b5374a7 100644 --- a/src/main/java/com/refinedmods/refinedstorage/block/CableBlock.java +++ b/src/main/java/com/refinedmods/refinedstorage/block/CableBlock.java @@ -8,7 +8,7 @@ import com.refinedmods.refinedstorage.apiimpl.network.node.cover.CoverType; import com.refinedmods.refinedstorage.block.shape.ShapeCache; import com.refinedmods.refinedstorage.capability.NetworkNodeProxyCapability; import com.refinedmods.refinedstorage.render.ConstantsCable; -import com.refinedmods.refinedstorage.tile.CableTile; +import com.refinedmods.refinedstorage.blockentity.CableBlockEntity; import com.refinedmods.refinedstorage.util.BlockUtils; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; @@ -190,22 +190,22 @@ public class CableBlock extends NetworkNodeBlock implements SimpleWaterloggedBlo return false; } - BlockEntity tile = world.getBlockEntity(pos); - if (tile == null) { + BlockEntity blockEntity = world.getBlockEntity(pos); + if (blockEntity == null) { return false; } - return tile.getCapability(NetworkNodeProxyCapability.NETWORK_NODE_PROXY_CAPABILITY, direction).isPresent() - && !isSideCovered(tile, direction) + return blockEntity.getCapability(NetworkNodeProxyCapability.NETWORK_NODE_PROXY_CAPABILITY, direction).isPresent() + && !isSideCovered(blockEntity, direction) && !isSideCovered(world.getBlockEntity(pos.relative(direction)), direction.getOpposite()); } - private boolean isSideCovered(BlockEntity tile, Direction direction) { - if (tile == null) { + private boolean isSideCovered(BlockEntity blockEntity, Direction direction) { + if (blockEntity == null) { return false; } - Optional node = tile.getCapability(NetworkNodeProxyCapability.NETWORK_NODE_PROXY_CAPABILITY, direction).map(INetworkNodeProxy::getNode); + Optional node = blockEntity.getCapability(NetworkNodeProxyCapability.NETWORK_NODE_PROXY_CAPABILITY, direction).map(INetworkNodeProxy::getNode); if (node.isPresent() && node.get() instanceof ICoverable) { Cover cover = ((ICoverable) node.get()).getCoverManager().getCover(direction); @@ -238,7 +238,7 @@ public class CableBlock extends NetworkNodeBlock implements SimpleWaterloggedBlo @Override public BlockEntity newBlockEntity(BlockPos pos, BlockState state) { - return new CableTile(pos, state); + return new CableBlockEntity(pos, state); } @Override diff --git a/src/main/java/com/refinedmods/refinedstorage/block/ConstructorBlock.java b/src/main/java/com/refinedmods/refinedstorage/block/ConstructorBlock.java index 966201bf5..97d044efa 100644 --- a/src/main/java/com/refinedmods/refinedstorage/block/ConstructorBlock.java +++ b/src/main/java/com/refinedmods/refinedstorage/block/ConstructorBlock.java @@ -2,9 +2,9 @@ package com.refinedmods.refinedstorage.block; import com.refinedmods.refinedstorage.block.shape.ShapeCache; import com.refinedmods.refinedstorage.container.ConstructorContainer; -import com.refinedmods.refinedstorage.container.factory.PositionalTileContainerProvider; +import com.refinedmods.refinedstorage.container.factory.BlockEntityMenuProvider; import com.refinedmods.refinedstorage.render.ConstantsCable; -import com.refinedmods.refinedstorage.tile.ConstructorTile; +import com.refinedmods.refinedstorage.blockentity.ConstructorBlockEntity; import com.refinedmods.refinedstorage.util.BlockUtils; import com.refinedmods.refinedstorage.util.CollisionUtils; import com.refinedmods.refinedstorage.util.NetworkUtils; @@ -44,7 +44,7 @@ public class ConstructorBlock extends CableBlock { @Override public BlockEntity newBlockEntity(BlockPos pos, BlockState state) { - return new ConstructorTile(pos, state); + return new ConstructorBlockEntity(pos, state); } @Override @@ -94,9 +94,9 @@ public class ConstructorBlock extends CableBlock { if (!level.isClientSide && CollisionUtils.isInBounds(getHeadShape(state), pos, hit.getLocation())) { return NetworkUtils.attemptModify(level, pos, player, () -> NetworkHooks.openGui( (ServerPlayer) player, - new PositionalTileContainerProvider( + new BlockEntityMenuProvider( new TranslatableComponent("gui.refinedstorage.constructor"), - (tile, windowId, inventory, p) -> new ConstructorContainer(tile, player, windowId), + (blockEntity, windowId, inventory, p) -> new ConstructorContainer(blockEntity, player, windowId), pos ), pos diff --git a/src/main/java/com/refinedmods/refinedstorage/block/ControllerBlock.java b/src/main/java/com/refinedmods/refinedstorage/block/ControllerBlock.java index 29151b13c..38808c1f1 100644 --- a/src/main/java/com/refinedmods/refinedstorage/block/ControllerBlock.java +++ b/src/main/java/com/refinedmods/refinedstorage/block/ControllerBlock.java @@ -6,7 +6,7 @@ import com.refinedmods.refinedstorage.api.network.NetworkType; import com.refinedmods.refinedstorage.apiimpl.API; import com.refinedmods.refinedstorage.apiimpl.network.Network; import com.refinedmods.refinedstorage.container.ControllerContainer; -import com.refinedmods.refinedstorage.tile.ControllerTile; +import com.refinedmods.refinedstorage.blockentity.ControllerBlockEntity; import com.refinedmods.refinedstorage.util.BlockUtils; import com.refinedmods.refinedstorage.util.ColorMap; import com.refinedmods.refinedstorage.util.NetworkUtils; @@ -66,10 +66,10 @@ public class ControllerBlock extends BaseBlock implements EntityBlock { if (!level.isClientSide) { stack.getCapability(CapabilityEnergy.ENERGY).ifPresent(energyFromStack -> { - BlockEntity tile = level.getBlockEntity(pos); + BlockEntity blockEntity = level.getBlockEntity(pos); - if (tile != null) { - tile.getCapability(CapabilityEnergy.ENERGY).ifPresent(energyFromTile -> energyFromTile.receiveEnergy(energyFromStack.getEnergyStored(), false)); + if (blockEntity != null) { + blockEntity.getCapability(CapabilityEnergy.ENERGY).ifPresent(energyFromBlockEntity -> energyFromBlockEntity.receiveEnergy(energyFromStack.getEnergyStored(), false)); } }); } @@ -116,7 +116,7 @@ public class ControllerBlock extends BaseBlock implements EntityBlock { @Override public AbstractContainerMenu createMenu(int i, Inventory playerInventory, Player player) { - return new ControllerContainer((ControllerTile) level.getBlockEntity(pos), player, i); + return new ControllerContainer((ControllerBlockEntity) level.getBlockEntity(pos), player, i); } }, pos @@ -136,7 +136,7 @@ public class ControllerBlock extends BaseBlock implements EntityBlock { @Override public BlockEntity newBlockEntity(BlockPos pos, BlockState state) { - return new ControllerTile(type, pos, state); + return new ControllerBlockEntity(type, pos, state); } public enum EnergyType implements StringRepresentable { diff --git a/src/main/java/com/refinedmods/refinedstorage/block/CrafterBlock.java b/src/main/java/com/refinedmods/refinedstorage/block/CrafterBlock.java index c1e1c305f..2bccbf793 100644 --- a/src/main/java/com/refinedmods/refinedstorage/block/CrafterBlock.java +++ b/src/main/java/com/refinedmods/refinedstorage/block/CrafterBlock.java @@ -3,8 +3,8 @@ package com.refinedmods.refinedstorage.block; import com.refinedmods.refinedstorage.RSBlocks; import com.refinedmods.refinedstorage.api.network.security.Permission; import com.refinedmods.refinedstorage.container.CrafterContainer; -import com.refinedmods.refinedstorage.container.factory.PositionalTileContainerProvider; -import com.refinedmods.refinedstorage.tile.CrafterTile; +import com.refinedmods.refinedstorage.container.factory.BlockEntityMenuProvider; +import com.refinedmods.refinedstorage.blockentity.CrafterBlockEntity; import com.refinedmods.refinedstorage.util.BlockUtils; import com.refinedmods.refinedstorage.util.NetworkUtils; import net.minecraft.core.BlockPos; @@ -37,11 +37,11 @@ public class CrafterBlock extends ColoredNetworkBlock { super.setPlacedBy(level, pos, state, placer, stack); if (!level.isClientSide) { - BlockEntity tile = level.getBlockEntity(pos); + BlockEntity blockEntity = level.getBlockEntity(pos); - if (tile instanceof CrafterTile && stack.hasCustomHoverName()) { - ((CrafterTile) tile).getNode().setDisplayName(stack.getHoverName()); - ((CrafterTile) tile).getNode().markDirty(); + if (blockEntity instanceof CrafterBlockEntity && stack.hasCustomHoverName()) { + ((CrafterBlockEntity) blockEntity).getNode().setDisplayName(stack.getHoverName()); + ((CrafterBlockEntity) blockEntity).getNode().markDirty(); } } } @@ -57,9 +57,9 @@ public class CrafterBlock extends ColoredNetworkBlock { if (!level.isClientSide) { return NetworkUtils.attempt(level, pos, player, () -> NetworkHooks.openGui( (ServerPlayer) player, - new PositionalTileContainerProvider( - ((CrafterTile) level.getBlockEntity(pos)).getNode().getName(), - (tile, windowId, inventory, p) -> new CrafterContainer(tile, player, windowId), + new BlockEntityMenuProvider( + ((CrafterBlockEntity) level.getBlockEntity(pos)).getNode().getName(), + (blockEntity, windowId, inventory, p) -> new CrafterContainer(blockEntity, player, windowId), pos ), pos @@ -76,6 +76,6 @@ public class CrafterBlock extends ColoredNetworkBlock { @Override public BlockEntity newBlockEntity(BlockPos pos, BlockState state) { - return new CrafterTile(pos, state); + return new CrafterBlockEntity(pos, state); } } diff --git a/src/main/java/com/refinedmods/refinedstorage/block/CrafterManagerBlock.java b/src/main/java/com/refinedmods/refinedstorage/block/CrafterManagerBlock.java index a73262909..1164283c1 100644 --- a/src/main/java/com/refinedmods/refinedstorage/block/CrafterManagerBlock.java +++ b/src/main/java/com/refinedmods/refinedstorage/block/CrafterManagerBlock.java @@ -2,8 +2,8 @@ package com.refinedmods.refinedstorage.block; import com.refinedmods.refinedstorage.RSBlocks; import com.refinedmods.refinedstorage.api.network.security.Permission; -import com.refinedmods.refinedstorage.container.factory.CrafterManagerContainerProvider; -import com.refinedmods.refinedstorage.tile.CrafterManagerTile; +import com.refinedmods.refinedstorage.container.factory.CrafterManagerMenuProvider; +import com.refinedmods.refinedstorage.blockentity.CrafterManagerBlockEntity; import com.refinedmods.refinedstorage.util.BlockUtils; import com.refinedmods.refinedstorage.util.NetworkUtils; import net.minecraft.core.BlockPos; @@ -29,7 +29,7 @@ public class CrafterManagerBlock extends ColoredNetworkBlock { @Override public BlockEntity newBlockEntity(BlockPos pos, BlockState state) { - return new CrafterManagerTile(pos, state); + return new CrafterManagerBlockEntity(pos, state); } @Override @@ -43,8 +43,8 @@ public class CrafterManagerBlock extends ColoredNetworkBlock { if (!level.isClientSide) { return NetworkUtils.attempt(level, pos, player, () -> NetworkHooks.openGui( (ServerPlayer) player, - new CrafterManagerContainerProvider((CrafterManagerTile) level.getBlockEntity(pos)), - buf -> CrafterManagerContainerProvider.writeToBuffer(buf, level, pos) + new CrafterManagerMenuProvider((CrafterManagerBlockEntity) level.getBlockEntity(pos)), + buf -> CrafterManagerMenuProvider.writeToBuffer(buf, level, pos) ), Permission.MODIFY, Permission.AUTOCRAFTING); } diff --git a/src/main/java/com/refinedmods/refinedstorage/block/CraftingMonitorBlock.java b/src/main/java/com/refinedmods/refinedstorage/block/CraftingMonitorBlock.java index 69d696c1a..9c3ec321d 100644 --- a/src/main/java/com/refinedmods/refinedstorage/block/CraftingMonitorBlock.java +++ b/src/main/java/com/refinedmods/refinedstorage/block/CraftingMonitorBlock.java @@ -3,8 +3,8 @@ package com.refinedmods.refinedstorage.block; import com.refinedmods.refinedstorage.RSBlocks; import com.refinedmods.refinedstorage.RSContainers; import com.refinedmods.refinedstorage.api.network.security.Permission; -import com.refinedmods.refinedstorage.container.factory.CraftingMonitorContainerProvider; -import com.refinedmods.refinedstorage.tile.craftingmonitor.CraftingMonitorTile; +import com.refinedmods.refinedstorage.container.factory.CraftingMonitorMenuProvider; +import com.refinedmods.refinedstorage.blockentity.craftingmonitor.CraftingMonitorBlockEntity; import com.refinedmods.refinedstorage.util.BlockUtils; import com.refinedmods.refinedstorage.util.NetworkUtils; import net.minecraft.core.BlockPos; @@ -30,7 +30,7 @@ public class CraftingMonitorBlock extends ColoredNetworkBlock { @Override public BlockEntity newBlockEntity(BlockPos pos, BlockState state) { - return new CraftingMonitorTile(pos, state); + return new CraftingMonitorBlockEntity(pos, state); } @Override @@ -42,11 +42,11 @@ public class CraftingMonitorBlock extends ColoredNetworkBlock { } if (!level.isClientSide) { - CraftingMonitorTile tile = (CraftingMonitorTile) level.getBlockEntity(pos); + CraftingMonitorBlockEntity blockEntity = (CraftingMonitorBlockEntity) level.getBlockEntity(pos); return NetworkUtils.attempt(level, pos, player, () -> NetworkHooks.openGui( (ServerPlayer) player, - new CraftingMonitorContainerProvider(RSContainers.CRAFTING_MONITOR, tile.getNode(), tile), + new CraftingMonitorMenuProvider(RSContainers.CRAFTING_MONITOR, blockEntity.getNode(), blockEntity), pos ), Permission.MODIFY, Permission.AUTOCRAFTING); } diff --git a/src/main/java/com/refinedmods/refinedstorage/block/DestructorBlock.java b/src/main/java/com/refinedmods/refinedstorage/block/DestructorBlock.java index 36a91ea9f..575d6d4af 100644 --- a/src/main/java/com/refinedmods/refinedstorage/block/DestructorBlock.java +++ b/src/main/java/com/refinedmods/refinedstorage/block/DestructorBlock.java @@ -2,9 +2,9 @@ package com.refinedmods.refinedstorage.block; import com.refinedmods.refinedstorage.block.shape.ShapeCache; import com.refinedmods.refinedstorage.container.DestructorContainer; -import com.refinedmods.refinedstorage.container.factory.PositionalTileContainerProvider; +import com.refinedmods.refinedstorage.container.factory.BlockEntityMenuProvider; import com.refinedmods.refinedstorage.render.ConstantsCable; -import com.refinedmods.refinedstorage.tile.DestructorTile; +import com.refinedmods.refinedstorage.blockentity.DestructorBlockEntity; import com.refinedmods.refinedstorage.util.BlockUtils; import com.refinedmods.refinedstorage.util.CollisionUtils; import com.refinedmods.refinedstorage.util.NetworkUtils; @@ -44,7 +44,7 @@ public class DestructorBlock extends CableBlock { @Override public BlockEntity newBlockEntity(BlockPos pos, BlockState state) { - return new DestructorTile(pos, state); + return new DestructorBlockEntity(pos, state); } @Override @@ -94,9 +94,9 @@ public class DestructorBlock extends CableBlock { if (!level.isClientSide && CollisionUtils.isInBounds(getHeadShape(state), pos, hit.getLocation())) { return NetworkUtils.attemptModify(level, pos, player, () -> NetworkHooks.openGui( (ServerPlayer) player, - new PositionalTileContainerProvider( + new BlockEntityMenuProvider( new TranslatableComponent("gui.refinedstorage.destructor"), - (tile, windowId, inventory, p) -> new DestructorContainer(tile, player, windowId), + (blockEntity, windowId, inventory, p) -> new DestructorContainer(blockEntity, player, windowId), pos ), pos diff --git a/src/main/java/com/refinedmods/refinedstorage/block/DetectorBlock.java b/src/main/java/com/refinedmods/refinedstorage/block/DetectorBlock.java index 98d3491fa..1365e0481 100644 --- a/src/main/java/com/refinedmods/refinedstorage/block/DetectorBlock.java +++ b/src/main/java/com/refinedmods/refinedstorage/block/DetectorBlock.java @@ -2,8 +2,8 @@ package com.refinedmods.refinedstorage.block; import com.refinedmods.refinedstorage.RSBlocks; import com.refinedmods.refinedstorage.container.DetectorContainer; -import com.refinedmods.refinedstorage.container.factory.PositionalTileContainerProvider; -import com.refinedmods.refinedstorage.tile.DetectorTile; +import com.refinedmods.refinedstorage.container.factory.BlockEntityMenuProvider; +import com.refinedmods.refinedstorage.blockentity.DetectorBlockEntity; import com.refinedmods.refinedstorage.util.BlockUtils; import com.refinedmods.refinedstorage.util.ColorMap; import com.refinedmods.refinedstorage.util.NetworkUtils; @@ -60,9 +60,9 @@ public class DetectorBlock extends ColoredNetworkBlock { @Override @SuppressWarnings("deprecation") public int getSignal(BlockState state, BlockGetter world, BlockPos pos, Direction side) { - BlockEntity tile = world.getBlockEntity(pos); + BlockEntity blockEntity = world.getBlockEntity(pos); - return (tile instanceof DetectorTile && ((DetectorTile) tile).getNode().isPowered()) ? 15 : 0; + return (blockEntity instanceof DetectorBlockEntity && ((DetectorBlockEntity) blockEntity).getNode().isPowered()) ? 15 : 0; } @Override @@ -80,9 +80,9 @@ public class DetectorBlock extends ColoredNetworkBlock { if (!level.isClientSide) { return NetworkUtils.attemptModify(level, pos, player, () -> NetworkHooks.openGui( (ServerPlayer) player, - new PositionalTileContainerProvider( + new BlockEntityMenuProvider( new TranslatableComponent("gui.refinedstorage.detector"), - (tile, windowId, inventory, p) -> new DetectorContainer(tile, player, windowId), + (blockEntity, windowId, inventory, p) -> new DetectorContainer(blockEntity, player, windowId), pos ), pos @@ -94,6 +94,6 @@ public class DetectorBlock extends ColoredNetworkBlock { @Override public BlockEntity newBlockEntity(BlockPos pos, BlockState state) { - return new DetectorTile(pos, state); + return new DetectorBlockEntity(pos, state); } } diff --git a/src/main/java/com/refinedmods/refinedstorage/block/DiskDriveBlock.java b/src/main/java/com/refinedmods/refinedstorage/block/DiskDriveBlock.java index d47738a9c..dfde26ecf 100644 --- a/src/main/java/com/refinedmods/refinedstorage/block/DiskDriveBlock.java +++ b/src/main/java/com/refinedmods/refinedstorage/block/DiskDriveBlock.java @@ -1,8 +1,8 @@ package com.refinedmods.refinedstorage.block; import com.refinedmods.refinedstorage.container.DiskDriveContainer; -import com.refinedmods.refinedstorage.container.factory.PositionalTileContainerProvider; -import com.refinedmods.refinedstorage.tile.DiskDriveTile; +import com.refinedmods.refinedstorage.container.factory.BlockEntityMenuProvider; +import com.refinedmods.refinedstorage.blockentity.DiskDriveBlockEntity; import com.refinedmods.refinedstorage.util.BlockUtils; import com.refinedmods.refinedstorage.util.NetworkUtils; import net.minecraft.core.BlockPos; @@ -29,7 +29,7 @@ public class DiskDriveBlock extends NetworkNodeBlock { @Override public BlockEntity newBlockEntity(BlockPos pos, BlockState state) { - return new DiskDriveTile(pos, state); + return new DiskDriveBlockEntity(pos, state); } @Override @@ -38,9 +38,9 @@ public class DiskDriveBlock extends NetworkNodeBlock { if (!level.isClientSide) { return NetworkUtils.attemptModify(level, pos, player, () -> NetworkHooks.openGui( (ServerPlayer) player, - new PositionalTileContainerProvider( + new BlockEntityMenuProvider( new TranslatableComponent("gui.refinedstorage.disk_drive"), - (tile, windowId, inventory, p) -> new DiskDriveContainer(tile, p, windowId), + (blockEntity, windowId, inventory, p) -> new DiskDriveContainer(blockEntity, p, windowId), pos ), pos diff --git a/src/main/java/com/refinedmods/refinedstorage/block/DiskManipulatorBlock.java b/src/main/java/com/refinedmods/refinedstorage/block/DiskManipulatorBlock.java index 276cbc17a..4e6175a5e 100644 --- a/src/main/java/com/refinedmods/refinedstorage/block/DiskManipulatorBlock.java +++ b/src/main/java/com/refinedmods/refinedstorage/block/DiskManipulatorBlock.java @@ -2,8 +2,8 @@ package com.refinedmods.refinedstorage.block; import com.refinedmods.refinedstorage.RSBlocks; import com.refinedmods.refinedstorage.container.DiskManipulatorContainer; -import com.refinedmods.refinedstorage.container.factory.PositionalTileContainerProvider; -import com.refinedmods.refinedstorage.tile.DiskManipulatorTile; +import com.refinedmods.refinedstorage.container.factory.BlockEntityMenuProvider; +import com.refinedmods.refinedstorage.blockentity.DiskManipulatorBlockEntity; import com.refinedmods.refinedstorage.util.BlockUtils; import com.refinedmods.refinedstorage.util.NetworkUtils; import net.minecraft.core.BlockPos; @@ -25,7 +25,7 @@ public class DiskManipulatorBlock extends ColoredNetworkBlock { @Override public BlockEntity newBlockEntity(BlockPos pos, BlockState state) { - return new DiskManipulatorTile(pos, state); + return new DiskManipulatorBlockEntity(pos, state); } @Override @@ -39,9 +39,9 @@ public class DiskManipulatorBlock extends ColoredNetworkBlock { if (!level.isClientSide) { return NetworkUtils.attemptModify(level, pos, player, () -> NetworkHooks.openGui( (ServerPlayer) player, - new PositionalTileContainerProvider( + new BlockEntityMenuProvider( new TranslatableComponent("gui.refinedstorage.disk_manipulator"), - (tile, windowId, inventory, p) -> new DiskManipulatorContainer(tile, p, windowId), + (blockEntity, windowId, inventory, p) -> new DiskManipulatorContainer(blockEntity, p, windowId), pos ), pos diff --git a/src/main/java/com/refinedmods/refinedstorage/block/ExporterBlock.java b/src/main/java/com/refinedmods/refinedstorage/block/ExporterBlock.java index ec52d731e..5971df450 100644 --- a/src/main/java/com/refinedmods/refinedstorage/block/ExporterBlock.java +++ b/src/main/java/com/refinedmods/refinedstorage/block/ExporterBlock.java @@ -2,9 +2,9 @@ package com.refinedmods.refinedstorage.block; import com.refinedmods.refinedstorage.block.shape.ShapeCache; import com.refinedmods.refinedstorage.container.ExporterContainer; -import com.refinedmods.refinedstorage.container.factory.PositionalTileContainerProvider; +import com.refinedmods.refinedstorage.container.factory.BlockEntityMenuProvider; import com.refinedmods.refinedstorage.render.ConstantsCable; -import com.refinedmods.refinedstorage.tile.ExporterTile; +import com.refinedmods.refinedstorage.blockentity.ExporterBlockEntity; import com.refinedmods.refinedstorage.util.BlockUtils; import com.refinedmods.refinedstorage.util.CollisionUtils; import com.refinedmods.refinedstorage.util.NetworkUtils; @@ -109,7 +109,7 @@ public class ExporterBlock extends CableBlock { @Override public BlockEntity newBlockEntity(BlockPos pos, BlockState state) { - return new ExporterTile(pos, state); + return new ExporterBlockEntity(pos, state); } @Override @@ -118,9 +118,9 @@ public class ExporterBlock extends CableBlock { if (!level.isClientSide && CollisionUtils.isInBounds(getLineShape(state), pos, hit.getLocation())) { return NetworkUtils.attemptModify(level, pos, player, () -> NetworkHooks.openGui( (ServerPlayer) player, - new PositionalTileContainerProvider( + new BlockEntityMenuProvider( new TranslatableComponent("gui.refinedstorage.exporter"), - (tile, windowId, inventory, p) -> new ExporterContainer(tile, player, windowId), + (blockEntity, windowId, inventory, p) -> new ExporterContainer(blockEntity, player, windowId), pos ), pos diff --git a/src/main/java/com/refinedmods/refinedstorage/block/ExternalStorageBlock.java b/src/main/java/com/refinedmods/refinedstorage/block/ExternalStorageBlock.java index 789cee03c..2e8e46261 100644 --- a/src/main/java/com/refinedmods/refinedstorage/block/ExternalStorageBlock.java +++ b/src/main/java/com/refinedmods/refinedstorage/block/ExternalStorageBlock.java @@ -5,9 +5,9 @@ import com.refinedmods.refinedstorage.api.storage.cache.InvalidateCause; import com.refinedmods.refinedstorage.apiimpl.network.node.ExternalStorageNetworkNode; import com.refinedmods.refinedstorage.block.shape.ShapeCache; import com.refinedmods.refinedstorage.container.ExternalStorageContainer; -import com.refinedmods.refinedstorage.container.factory.PositionalTileContainerProvider; +import com.refinedmods.refinedstorage.container.factory.BlockEntityMenuProvider; import com.refinedmods.refinedstorage.render.ConstantsCable; -import com.refinedmods.refinedstorage.tile.ExternalStorageTile; +import com.refinedmods.refinedstorage.blockentity.ExternalStorageBlockEntity; import com.refinedmods.refinedstorage.util.BlockUtils; import com.refinedmods.refinedstorage.util.CollisionUtils; import com.refinedmods.refinedstorage.util.NetworkUtils; @@ -89,7 +89,7 @@ public class ExternalStorageBlock extends CableBlock { @Override public BlockEntity newBlockEntity(BlockPos pos, BlockState state) { - return new ExternalStorageTile(pos, state); + return new ExternalStorageBlockEntity(pos, state); } @Override @@ -98,9 +98,9 @@ public class ExternalStorageBlock extends CableBlock { if (!level.isClientSide && CollisionUtils.isInBounds(getHeadShape(state), pos, hit.getLocation())) { return NetworkUtils.attemptModify(level, pos, player, () -> NetworkHooks.openGui( (ServerPlayer) player, - new PositionalTileContainerProvider( + new BlockEntityMenuProvider( new TranslatableComponent("gui.refinedstorage.external_storage"), - (tile, windowId, inventory, p) -> new ExternalStorageContainer(tile, player, windowId), + (blockEntity, windowId, inventory, p) -> new ExternalStorageContainer(blockEntity, player, windowId), pos ), pos @@ -116,7 +116,7 @@ public class ExternalStorageBlock extends CableBlock { super.neighborChanged(state, level, pos, block, fromPos, isMoving); if (!level.isClientSide) { - INetworkNode node = NetworkUtils.getNodeFromTile(level.getBlockEntity(pos)); + INetworkNode node = NetworkUtils.getNodeFromBlockEntity(level.getBlockEntity(pos)); if (node instanceof ExternalStorageNetworkNode && node.getNetwork() != null && diff --git a/src/main/java/com/refinedmods/refinedstorage/block/FluidInterfaceBlock.java b/src/main/java/com/refinedmods/refinedstorage/block/FluidInterfaceBlock.java index e3a9003d7..8170e446d 100644 --- a/src/main/java/com/refinedmods/refinedstorage/block/FluidInterfaceBlock.java +++ b/src/main/java/com/refinedmods/refinedstorage/block/FluidInterfaceBlock.java @@ -2,8 +2,8 @@ package com.refinedmods.refinedstorage.block; import com.refinedmods.refinedstorage.api.network.security.Permission; import com.refinedmods.refinedstorage.container.FluidInterfaceContainer; -import com.refinedmods.refinedstorage.container.factory.PositionalTileContainerProvider; -import com.refinedmods.refinedstorage.tile.FluidInterfaceTile; +import com.refinedmods.refinedstorage.container.factory.BlockEntityMenuProvider; +import com.refinedmods.refinedstorage.blockentity.FluidInterfaceBlockEntity; import com.refinedmods.refinedstorage.util.BlockUtils; import com.refinedmods.refinedstorage.util.NetworkUtils; import net.minecraft.core.BlockPos; @@ -25,7 +25,7 @@ public class FluidInterfaceBlock extends NetworkNodeBlock { @Override public BlockEntity newBlockEntity(BlockPos pos, BlockState state) { - return new FluidInterfaceTile(pos, state); + return new FluidInterfaceBlockEntity(pos, state); } @Override @@ -34,9 +34,9 @@ public class FluidInterfaceBlock extends NetworkNodeBlock { if (!level.isClientSide) { return NetworkUtils.attempt(level, pos, player, () -> NetworkHooks.openGui( (ServerPlayer) player, - new PositionalTileContainerProvider( + new BlockEntityMenuProvider( new TranslatableComponent("gui.refinedstorage.fluid_interface"), - (tile, windowId, inventory, p) -> new FluidInterfaceContainer(tile, player, windowId), + (blockEntity, windowId, inventory, p) -> new FluidInterfaceContainer(blockEntity, player, windowId), pos ), pos diff --git a/src/main/java/com/refinedmods/refinedstorage/block/FluidStorageBlock.java b/src/main/java/com/refinedmods/refinedstorage/block/FluidStorageBlock.java index 191115229..c644eb767 100644 --- a/src/main/java/com/refinedmods/refinedstorage/block/FluidStorageBlock.java +++ b/src/main/java/com/refinedmods/refinedstorage/block/FluidStorageBlock.java @@ -3,8 +3,8 @@ package com.refinedmods.refinedstorage.block; import com.refinedmods.refinedstorage.apiimpl.network.node.storage.FluidStorageNetworkNode; import com.refinedmods.refinedstorage.apiimpl.storage.FluidStorageType; import com.refinedmods.refinedstorage.container.FluidStorageContainer; -import com.refinedmods.refinedstorage.container.factory.PositionalTileContainerProvider; -import com.refinedmods.refinedstorage.tile.FluidStorageTile; +import com.refinedmods.refinedstorage.container.factory.BlockEntityMenuProvider; +import com.refinedmods.refinedstorage.blockentity.FluidStorageBlockEntity; import com.refinedmods.refinedstorage.util.BlockUtils; import com.refinedmods.refinedstorage.util.NetworkUtils; import net.minecraft.core.BlockPos; @@ -36,7 +36,7 @@ public class FluidStorageBlock extends NetworkNodeBlock { @Override public void setPlacedBy(Level level, BlockPos pos, BlockState state, LivingEntity player, ItemStack stack) { if (!level.isClientSide) { - FluidStorageNetworkNode storage = ((FluidStorageTile) level.getBlockEntity(pos)).getNode(); + FluidStorageNetworkNode storage = ((FluidStorageBlockEntity) level.getBlockEntity(pos)).getNode(); if (stack.hasTag() && stack.getTag().hasUUID(FluidStorageNetworkNode.NBT_ID)) { storage.setStorageId(stack.getTag().getUUID(FluidStorageNetworkNode.NBT_ID)); @@ -51,16 +51,16 @@ public class FluidStorageBlock extends NetworkNodeBlock { @Override public BlockEntity newBlockEntity(BlockPos pos, BlockState state) { - return new FluidStorageTile(type, pos, state); + return new FluidStorageBlockEntity(type, pos, state); } @Override @SuppressWarnings("deprecation") public InteractionResult use(BlockState state, Level level, BlockPos pos, Player player, InteractionHand handIn, BlockHitResult hit) { if (!level.isClientSide) { - return NetworkUtils.attemptModify(level, pos, player, () -> NetworkHooks.openGui((ServerPlayer) player, new PositionalTileContainerProvider( - ((FluidStorageTile) level.getBlockEntity(pos)).getNode().getTitle(), - (tile, windowId, inventory, p) -> new FluidStorageContainer(tile, player, windowId), + return NetworkUtils.attemptModify(level, pos, player, () -> NetworkHooks.openGui((ServerPlayer) player, new BlockEntityMenuProvider( + ((FluidStorageBlockEntity) level.getBlockEntity(pos)).getNode().getTitle(), + (blockEntity, windowId, inventory, p) -> new FluidStorageContainer(blockEntity, player, windowId), pos ), pos)); } diff --git a/src/main/java/com/refinedmods/refinedstorage/block/GridBlock.java b/src/main/java/com/refinedmods/refinedstorage/block/GridBlock.java index 503088022..229ff2706 100644 --- a/src/main/java/com/refinedmods/refinedstorage/block/GridBlock.java +++ b/src/main/java/com/refinedmods/refinedstorage/block/GridBlock.java @@ -4,7 +4,7 @@ import com.refinedmods.refinedstorage.RSBlocks; import com.refinedmods.refinedstorage.api.network.grid.GridType; import com.refinedmods.refinedstorage.apiimpl.API; import com.refinedmods.refinedstorage.apiimpl.network.grid.factory.GridBlockGridFactory; -import com.refinedmods.refinedstorage.tile.grid.GridTile; +import com.refinedmods.refinedstorage.blockentity.grid.GridBlockEntity; import com.refinedmods.refinedstorage.util.BlockUtils; import com.refinedmods.refinedstorage.util.ColorMap; import com.refinedmods.refinedstorage.util.NetworkUtils; @@ -39,7 +39,7 @@ public class GridBlock extends ColoredNetworkBlock { @Override public BlockEntity newBlockEntity(BlockPos pos, BlockState state) { - return new GridTile(type, pos, state); + return new GridBlockEntity(type, pos, state); } @Override diff --git a/src/main/java/com/refinedmods/refinedstorage/block/ImporterBlock.java b/src/main/java/com/refinedmods/refinedstorage/block/ImporterBlock.java index 53d816fbd..8a5e3079b 100644 --- a/src/main/java/com/refinedmods/refinedstorage/block/ImporterBlock.java +++ b/src/main/java/com/refinedmods/refinedstorage/block/ImporterBlock.java @@ -2,9 +2,9 @@ package com.refinedmods.refinedstorage.block; import com.refinedmods.refinedstorage.block.shape.ShapeCache; import com.refinedmods.refinedstorage.container.ImporterContainer; -import com.refinedmods.refinedstorage.container.factory.PositionalTileContainerProvider; +import com.refinedmods.refinedstorage.container.factory.BlockEntityMenuProvider; import com.refinedmods.refinedstorage.render.ConstantsCable; -import com.refinedmods.refinedstorage.tile.ImporterTile; +import com.refinedmods.refinedstorage.blockentity.ImporterBlockEntity; import com.refinedmods.refinedstorage.util.BlockUtils; import com.refinedmods.refinedstorage.util.CollisionUtils; import com.refinedmods.refinedstorage.util.NetworkUtils; @@ -108,7 +108,7 @@ public class ImporterBlock extends CableBlock { @Override public BlockEntity newBlockEntity(BlockPos pos, BlockState state) { - return new ImporterTile(pos, state); + return new ImporterBlockEntity(pos, state); } @Override @@ -117,9 +117,9 @@ public class ImporterBlock extends CableBlock { if (!level.isClientSide && CollisionUtils.isInBounds(getLineShape(state), pos, hit.getLocation())) { return NetworkUtils.attemptModify(level, pos, player, () -> NetworkHooks.openGui( (ServerPlayer) player, - new PositionalTileContainerProvider( + new BlockEntityMenuProvider( new TranslatableComponent("gui.refinedstorage.importer"), - (tile, windowId, inventory, p) -> new ImporterContainer(tile, player, windowId), + (blockEntity, windowId, inventory, p) -> new ImporterContainer(blockEntity, player, windowId), pos ), pos diff --git a/src/main/java/com/refinedmods/refinedstorage/block/InterfaceBlock.java b/src/main/java/com/refinedmods/refinedstorage/block/InterfaceBlock.java index 5d2a4f6a1..44e145476 100644 --- a/src/main/java/com/refinedmods/refinedstorage/block/InterfaceBlock.java +++ b/src/main/java/com/refinedmods/refinedstorage/block/InterfaceBlock.java @@ -2,8 +2,8 @@ package com.refinedmods.refinedstorage.block; import com.refinedmods.refinedstorage.api.network.security.Permission; import com.refinedmods.refinedstorage.container.InterfaceContainer; -import com.refinedmods.refinedstorage.container.factory.PositionalTileContainerProvider; -import com.refinedmods.refinedstorage.tile.InterfaceTile; +import com.refinedmods.refinedstorage.container.factory.BlockEntityMenuProvider; +import com.refinedmods.refinedstorage.blockentity.InterfaceBlockEntity; import com.refinedmods.refinedstorage.util.BlockUtils; import com.refinedmods.refinedstorage.util.NetworkUtils; import net.minecraft.core.BlockPos; @@ -25,7 +25,7 @@ public class InterfaceBlock extends NetworkNodeBlock { @Override public BlockEntity newBlockEntity(BlockPos pos, BlockState state) { - return new InterfaceTile(pos, state); + return new InterfaceBlockEntity(pos, state); } @Override @@ -34,9 +34,9 @@ public class InterfaceBlock extends NetworkNodeBlock { if (!level.isClientSide) { return NetworkUtils.attempt(level, pos, player, () -> NetworkHooks.openGui( (ServerPlayer) player, - new PositionalTileContainerProvider( + new BlockEntityMenuProvider( new TranslatableComponent("gui.refinedstorage.interface"), - (tile, windowId, inventory, p) -> new InterfaceContainer(tile, player, windowId), + (blockEntity, windowId, inventory, p) -> new InterfaceContainer(blockEntity, player, windowId), pos ), pos diff --git a/src/main/java/com/refinedmods/refinedstorage/block/NetworkNodeBlock.java b/src/main/java/com/refinedmods/refinedstorage/block/NetworkNodeBlock.java index 1593457b4..ecf16fe6f 100644 --- a/src/main/java/com/refinedmods/refinedstorage/block/NetworkNodeBlock.java +++ b/src/main/java/com/refinedmods/refinedstorage/block/NetworkNodeBlock.java @@ -4,7 +4,7 @@ import com.refinedmods.refinedstorage.api.network.node.INetworkNode; import com.refinedmods.refinedstorage.api.network.node.INetworkNodeProxy; import com.refinedmods.refinedstorage.apiimpl.API; import com.refinedmods.refinedstorage.apiimpl.network.node.NetworkNode; -import com.refinedmods.refinedstorage.tile.NetworkNodeTile; +import com.refinedmods.refinedstorage.blockentity.NetworkNodeBlockEntity; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.core.NonNullList; @@ -49,10 +49,10 @@ public abstract class NetworkNodeBlock extends BaseBlock implements EntityBlock @SuppressWarnings("deprecation") public void onRemove(BlockState state, Level level, BlockPos pos, BlockState newState, boolean isMoving) { if (state.getBlock() != newState.getBlock()) { - BlockEntity tile = level.getBlockEntity(pos); + BlockEntity blockEntity = level.getBlockEntity(pos); - if (tile instanceof NetworkNodeTile) { - IItemHandler handler = ((NetworkNodeTile) tile).getNode().getDrops(); + if (blockEntity instanceof NetworkNodeBlockEntity) { + IItemHandler handler = ((NetworkNodeBlockEntity) blockEntity).getNode().getDrops(); if (handler != null) { NonNullList drops = NonNullList.create(); @@ -74,9 +74,9 @@ public abstract class NetworkNodeBlock extends BaseBlock implements EntityBlock protected void onDirectionChanged(Level level, BlockPos pos, Direction newDirection) { super.onDirectionChanged(level, pos, newDirection); - BlockEntity tile = level.getBlockEntity(pos); - if (tile instanceof INetworkNodeProxy) { - INetworkNode node = ((INetworkNodeProxy) tile).getNode(); + BlockEntity blockEntity = level.getBlockEntity(pos); + if (blockEntity instanceof INetworkNodeProxy) { + INetworkNode node = ((INetworkNodeProxy) blockEntity).getNode(); if (node instanceof NetworkNode) { ((NetworkNode) node).onDirectionChanged(newDirection); diff --git a/src/main/java/com/refinedmods/refinedstorage/block/NetworkReceiverBlock.java b/src/main/java/com/refinedmods/refinedstorage/block/NetworkReceiverBlock.java index 77249cd50..867cd5f6b 100644 --- a/src/main/java/com/refinedmods/refinedstorage/block/NetworkReceiverBlock.java +++ b/src/main/java/com/refinedmods/refinedstorage/block/NetworkReceiverBlock.java @@ -1,7 +1,7 @@ package com.refinedmods.refinedstorage.block; import com.refinedmods.refinedstorage.RSBlocks; -import com.refinedmods.refinedstorage.tile.NetworkReceiverTile; +import com.refinedmods.refinedstorage.blockentity.NetworkReceiverBlockEntity; import com.refinedmods.refinedstorage.util.BlockUtils; import net.minecraft.core.BlockPos; import net.minecraft.world.InteractionHand; @@ -19,7 +19,7 @@ public class NetworkReceiverBlock extends ColoredNetworkBlock { @Override public BlockEntity newBlockEntity(BlockPos pos, BlockState state) { - return new NetworkReceiverTile(pos, state); + return new NetworkReceiverBlockEntity(pos, state); } @Override diff --git a/src/main/java/com/refinedmods/refinedstorage/block/NetworkTransmitterBlock.java b/src/main/java/com/refinedmods/refinedstorage/block/NetworkTransmitterBlock.java index 5f18b18bf..61b22dee2 100644 --- a/src/main/java/com/refinedmods/refinedstorage/block/NetworkTransmitterBlock.java +++ b/src/main/java/com/refinedmods/refinedstorage/block/NetworkTransmitterBlock.java @@ -2,8 +2,8 @@ package com.refinedmods.refinedstorage.block; import com.refinedmods.refinedstorage.RSBlocks; import com.refinedmods.refinedstorage.container.NetworkTransmitterContainer; -import com.refinedmods.refinedstorage.container.factory.PositionalTileContainerProvider; -import com.refinedmods.refinedstorage.tile.NetworkTransmitterTile; +import com.refinedmods.refinedstorage.container.factory.BlockEntityMenuProvider; +import com.refinedmods.refinedstorage.blockentity.NetworkTransmitterBlockEntity; import com.refinedmods.refinedstorage.util.BlockUtils; import com.refinedmods.refinedstorage.util.NetworkUtils; import net.minecraft.core.BlockPos; @@ -25,7 +25,7 @@ public class NetworkTransmitterBlock extends ColoredNetworkBlock { @Override public BlockEntity newBlockEntity(BlockPos pos, BlockState state) { - return new NetworkTransmitterTile(pos, state); + return new NetworkTransmitterBlockEntity(pos, state); } @Override @@ -39,9 +39,9 @@ public class NetworkTransmitterBlock extends ColoredNetworkBlock { if (!level.isClientSide) { return NetworkUtils.attemptModify(level, pos, player, () -> NetworkHooks.openGui( (ServerPlayer) player, - new PositionalTileContainerProvider( + new BlockEntityMenuProvider( new TranslatableComponent("gui.refinedstorage.network_transmitter"), - (tile, windowId, inventory, p) -> new NetworkTransmitterContainer(tile, player, windowId), + (blockEntity, windowId, inventory, p) -> new NetworkTransmitterContainer(blockEntity, player, windowId), pos ), pos diff --git a/src/main/java/com/refinedmods/refinedstorage/block/PortableGridBlock.java b/src/main/java/com/refinedmods/refinedstorage/block/PortableGridBlock.java index 6e181c4d8..9a781fe53 100644 --- a/src/main/java/com/refinedmods/refinedstorage/block/PortableGridBlock.java +++ b/src/main/java/com/refinedmods/refinedstorage/block/PortableGridBlock.java @@ -2,9 +2,9 @@ package com.refinedmods.refinedstorage.block; import com.refinedmods.refinedstorage.apiimpl.API; import com.refinedmods.refinedstorage.apiimpl.network.grid.factory.PortableGridBlockGridFactory; +import com.refinedmods.refinedstorage.blockentity.grid.portable.PortableGridBlockEntity; +import com.refinedmods.refinedstorage.blockentity.grid.portable.PortableGridDiskState; import com.refinedmods.refinedstorage.item.blockitem.PortableGridBlockItem; -import com.refinedmods.refinedstorage.tile.grid.portable.PortableGridDiskState; -import com.refinedmods.refinedstorage.tile.grid.portable.PortableGridTile; import com.refinedmods.refinedstorage.util.BlockUtils; import net.minecraft.core.BlockPos; import net.minecraft.server.level.ServerPlayer; @@ -66,16 +66,16 @@ public class PortableGridBlock extends BaseBlock implements EntityBlock { @Override public BlockEntity newBlockEntity(BlockPos pos, BlockState state) { - return new PortableGridTile(type, pos, state); + return new PortableGridBlockEntity(type, pos, state); } @Override public BlockEntityTicker getTicker(Level level, BlockState state, BlockEntityType type) { return level.isClientSide ? null : new BlockEntityTicker() { @Override - public void tick(Level level, BlockPos pos, BlockState state, T tile) { - if (tile instanceof PortableGridTile) { - PortableGridTile.serverTick((PortableGridTile) tile); + public void tick(Level level, BlockPos pos, BlockState state, T blockEntity) { + if (blockEntity instanceof PortableGridBlockEntity) { + PortableGridBlockEntity.serverTick((PortableGridBlockEntity) blockEntity); } } }; @@ -87,7 +87,7 @@ public class PortableGridBlock extends BaseBlock implements EntityBlock { if (!level.isClientSide) { API.instance().getGridManager().openGrid(PortableGridBlockGridFactory.ID, (ServerPlayer) player, pos); - ((PortableGridTile) level.getBlockEntity(pos)).onOpened(); + ((PortableGridBlockEntity) level.getBlockEntity(pos)).onOpened(); } return InteractionResult.SUCCESS; @@ -98,8 +98,8 @@ public class PortableGridBlock extends BaseBlock implements EntityBlock { super.setPlacedBy(level, pos, state, placer, stack); if (!level.isClientSide) { - ((PortableGridTile) level.getBlockEntity(pos)).applyDataFromItemToTile(stack); - ((PortableGridTile) level.getBlockEntity(pos)).updateState(); + ((PortableGridBlockEntity) level.getBlockEntity(pos)).applyDataFromItemToBlockEntity(stack); + ((PortableGridBlockEntity) level.getBlockEntity(pos)).updateState(); } } } diff --git a/src/main/java/com/refinedmods/refinedstorage/block/RelayBlock.java b/src/main/java/com/refinedmods/refinedstorage/block/RelayBlock.java index 3b2829f96..5eca097a9 100644 --- a/src/main/java/com/refinedmods/refinedstorage/block/RelayBlock.java +++ b/src/main/java/com/refinedmods/refinedstorage/block/RelayBlock.java @@ -2,8 +2,8 @@ package com.refinedmods.refinedstorage.block; import com.refinedmods.refinedstorage.RSBlocks; import com.refinedmods.refinedstorage.container.RelayContainer; -import com.refinedmods.refinedstorage.container.factory.PositionalTileContainerProvider; -import com.refinedmods.refinedstorage.tile.RelayTile; +import com.refinedmods.refinedstorage.container.factory.BlockEntityMenuProvider; +import com.refinedmods.refinedstorage.blockentity.RelayBlockEntity; import com.refinedmods.refinedstorage.util.BlockUtils; import com.refinedmods.refinedstorage.util.NetworkUtils; import net.minecraft.core.BlockPos; @@ -25,7 +25,7 @@ public class RelayBlock extends ColoredNetworkBlock { @Override public BlockEntity newBlockEntity(BlockPos pos, BlockState state) { - return new RelayTile(pos, state); + return new RelayBlockEntity(pos, state); } @Override @@ -39,9 +39,9 @@ public class RelayBlock extends ColoredNetworkBlock { if (!level.isClientSide) { return NetworkUtils.attemptModify(level, pos, player, () -> NetworkHooks.openGui( (ServerPlayer) player, - new PositionalTileContainerProvider( + new BlockEntityMenuProvider( new TranslatableComponent("gui.refinedstorage.relay"), - (tile, windowId, inventory, p) -> new RelayContainer(tile, player, windowId), + (blockEntity, windowId, inventory, p) -> new RelayContainer(blockEntity, player, windowId), pos ), pos diff --git a/src/main/java/com/refinedmods/refinedstorage/block/SecurityManagerBlock.java b/src/main/java/com/refinedmods/refinedstorage/block/SecurityManagerBlock.java index b7e5e064e..b719032b7 100644 --- a/src/main/java/com/refinedmods/refinedstorage/block/SecurityManagerBlock.java +++ b/src/main/java/com/refinedmods/refinedstorage/block/SecurityManagerBlock.java @@ -3,8 +3,8 @@ package com.refinedmods.refinedstorage.block; import com.refinedmods.refinedstorage.RSBlocks; import com.refinedmods.refinedstorage.api.network.security.Permission; import com.refinedmods.refinedstorage.container.SecurityManagerContainer; -import com.refinedmods.refinedstorage.container.factory.PositionalTileContainerProvider; -import com.refinedmods.refinedstorage.tile.SecurityManagerTile; +import com.refinedmods.refinedstorage.container.factory.BlockEntityMenuProvider; +import com.refinedmods.refinedstorage.blockentity.SecurityManagerBlockEntity; import com.refinedmods.refinedstorage.util.BlockUtils; import com.refinedmods.refinedstorage.util.NetworkUtils; import net.minecraft.core.BlockPos; @@ -40,15 +40,15 @@ public class SecurityManagerBlock extends ColoredNetworkBlock { if (!level.isClientSide) { Runnable action = () -> NetworkHooks.openGui( (ServerPlayer) player, - new PositionalTileContainerProvider( + new BlockEntityMenuProvider( new TranslatableComponent("gui.refinedstorage.security_manager"), - (tile, windowId, inventory, p) -> new SecurityManagerContainer(tile, player, windowId), + (blockEntity, windowId, inventory, p) -> new SecurityManagerContainer(blockEntity, player, windowId), pos ), pos ); - if (player.getGameProfile().getId().equals(((SecurityManagerTile) level.getBlockEntity(pos)).getNode().getOwner())) { + if (player.getGameProfile().getId().equals(((SecurityManagerBlockEntity) level.getBlockEntity(pos)).getNode().getOwner())) { action.run(); } else { return NetworkUtils.attempt(level, pos, player, action, Permission.MODIFY, Permission.SECURITY); @@ -60,7 +60,7 @@ public class SecurityManagerBlock extends ColoredNetworkBlock { @Override public BlockEntity newBlockEntity(BlockPos pos, BlockState state) { - return new SecurityManagerTile(pos, state); + return new SecurityManagerBlockEntity(pos, state); } @Override diff --git a/src/main/java/com/refinedmods/refinedstorage/block/StorageBlock.java b/src/main/java/com/refinedmods/refinedstorage/block/StorageBlock.java index 1adeba847..330aac4cb 100644 --- a/src/main/java/com/refinedmods/refinedstorage/block/StorageBlock.java +++ b/src/main/java/com/refinedmods/refinedstorage/block/StorageBlock.java @@ -3,8 +3,8 @@ package com.refinedmods.refinedstorage.block; import com.refinedmods.refinedstorage.apiimpl.network.node.storage.StorageNetworkNode; import com.refinedmods.refinedstorage.apiimpl.storage.ItemStorageType; import com.refinedmods.refinedstorage.container.StorageContainer; -import com.refinedmods.refinedstorage.container.factory.PositionalTileContainerProvider; -import com.refinedmods.refinedstorage.tile.StorageTile; +import com.refinedmods.refinedstorage.container.factory.BlockEntityMenuProvider; +import com.refinedmods.refinedstorage.blockentity.StorageBlockEntity; import com.refinedmods.refinedstorage.util.BlockUtils; import com.refinedmods.refinedstorage.util.NetworkUtils; import net.minecraft.core.BlockPos; @@ -38,7 +38,7 @@ public class StorageBlock extends NetworkNodeBlock { @Override public void setPlacedBy(Level level, BlockPos pos, BlockState state, @Nullable LivingEntity entity, ItemStack stack) { if (!level.isClientSide) { - StorageNetworkNode storage = ((StorageTile) level.getBlockEntity(pos)).getNode(); + StorageNetworkNode storage = ((StorageBlockEntity) level.getBlockEntity(pos)).getNode(); if (stack.hasTag() && stack.getTag().hasUUID(StorageNetworkNode.NBT_ID)) { storage.setStorageId(stack.getTag().getUUID(StorageNetworkNode.NBT_ID)); @@ -53,16 +53,16 @@ public class StorageBlock extends NetworkNodeBlock { @Override public BlockEntity newBlockEntity(BlockPos pos, BlockState state) { - return new StorageTile(type, pos, state); + return new StorageBlockEntity(type, pos, state); } @Override @SuppressWarnings("deprecation") public InteractionResult use(BlockState state, Level level, BlockPos pos, Player player, InteractionHand handIn, BlockHitResult hit) { if (!level.isClientSide) { - return NetworkUtils.attemptModify(level, pos, player, () -> NetworkHooks.openGui((ServerPlayer) player, new PositionalTileContainerProvider( - ((StorageTile) level.getBlockEntity(pos)).getNode().getTitle(), - (tile, windowId, inventory, p) -> new StorageContainer(tile, player, windowId), + return NetworkUtils.attemptModify(level, pos, player, () -> NetworkHooks.openGui((ServerPlayer) player, new BlockEntityMenuProvider( + ((StorageBlockEntity) level.getBlockEntity(pos)).getNode().getTitle(), + (blockEntity, windowId, inventory, p) -> new StorageContainer(blockEntity, player, windowId), pos ), pos)); } diff --git a/src/main/java/com/refinedmods/refinedstorage/block/StorageMonitorBlock.java b/src/main/java/com/refinedmods/refinedstorage/block/StorageMonitorBlock.java index a1b318e54..6f84ae29d 100644 --- a/src/main/java/com/refinedmods/refinedstorage/block/StorageMonitorBlock.java +++ b/src/main/java/com/refinedmods/refinedstorage/block/StorageMonitorBlock.java @@ -2,8 +2,8 @@ package com.refinedmods.refinedstorage.block; import com.refinedmods.refinedstorage.apiimpl.network.node.StorageMonitorNetworkNode; import com.refinedmods.refinedstorage.container.StorageMonitorContainer; -import com.refinedmods.refinedstorage.container.factory.PositionalTileContainerProvider; -import com.refinedmods.refinedstorage.tile.StorageMonitorTile; +import com.refinedmods.refinedstorage.container.factory.BlockEntityMenuProvider; +import com.refinedmods.refinedstorage.blockentity.StorageMonitorBlockEntity; import com.refinedmods.refinedstorage.util.BlockUtils; import com.refinedmods.refinedstorage.util.NetworkUtils; import com.refinedmods.refinedstorage.util.WorldUtils; @@ -33,7 +33,7 @@ public class StorageMonitorBlock extends NetworkNodeBlock { @Override public BlockEntity newBlockEntity(BlockPos pos, BlockState state) { - return new StorageMonitorTile(pos, state); + return new StorageMonitorBlockEntity(pos, state); } @Override @@ -45,15 +45,15 @@ public class StorageMonitorBlock extends NetworkNodeBlock { if (player.isCrouching()) { return NetworkUtils.attemptModify(level, pos, player, () -> NetworkHooks.openGui( (ServerPlayer) player, - new PositionalTileContainerProvider( + new BlockEntityMenuProvider( new TranslatableComponent("gui.refinedstorage.storage_monitor"), - (tile, windowId, inventory, p) -> new StorageMonitorContainer(tile, player, windowId), + (blockEntity, windowId, inventory, p) -> new StorageMonitorContainer(blockEntity, player, windowId), pos ), pos )); } else { - StorageMonitorNetworkNode storageMonitor = ((StorageMonitorTile) level.getBlockEntity(pos)).getNode(); + StorageMonitorNetworkNode storageMonitor = ((StorageMonitorBlockEntity) level.getBlockEntity(pos)).getNode(); if (!held.isEmpty()) { return storageMonitor.deposit(player, held); @@ -78,7 +78,7 @@ public class StorageMonitorBlock extends NetworkNodeBlock { return; } - ((StorageMonitorTile) level.getBlockEntity(pos)).getNode().extract(player, ((BlockHitResult) result).getDirection()); + ((StorageMonitorBlockEntity) level.getBlockEntity(pos)).getNode().extract(player, ((BlockHitResult) result).getDirection()); } } diff --git a/src/main/java/com/refinedmods/refinedstorage/block/WirelessTransmitterBlock.java b/src/main/java/com/refinedmods/refinedstorage/block/WirelessTransmitterBlock.java index 7f56c236d..f8db56171 100644 --- a/src/main/java/com/refinedmods/refinedstorage/block/WirelessTransmitterBlock.java +++ b/src/main/java/com/refinedmods/refinedstorage/block/WirelessTransmitterBlock.java @@ -2,8 +2,8 @@ package com.refinedmods.refinedstorage.block; import com.refinedmods.refinedstorage.RSBlocks; import com.refinedmods.refinedstorage.container.WirelessTransmitterContainer; -import com.refinedmods.refinedstorage.container.factory.PositionalTileContainerProvider; -import com.refinedmods.refinedstorage.tile.WirelessTransmitterTile; +import com.refinedmods.refinedstorage.container.factory.BlockEntityMenuProvider; +import com.refinedmods.refinedstorage.blockentity.WirelessTransmitterBlockEntity; import com.refinedmods.refinedstorage.util.BlockUtils; import com.refinedmods.refinedstorage.util.NetworkUtils; import net.minecraft.core.BlockPos; @@ -46,7 +46,7 @@ public class WirelessTransmitterBlock extends ColoredNetworkBlock { @Override public BlockEntity newBlockEntity(BlockPos pos, BlockState state) { - return new WirelessTransmitterTile(pos, state); + return new WirelessTransmitterBlockEntity(pos, state); } @Override @@ -81,9 +81,9 @@ public class WirelessTransmitterBlock extends ColoredNetworkBlock { if (!level.isClientSide) { return NetworkUtils.attemptModify(level, pos, player, () -> NetworkHooks.openGui( (ServerPlayer) player, - new PositionalTileContainerProvider( + new BlockEntityMenuProvider( new TranslatableComponent("gui.refinedstorage.wireless_transmitter"), - (tile, windowId, inventory, p) -> new WirelessTransmitterContainer(tile, player, windowId), + (blockEntity, windowId, inventory, p) -> new WirelessTransmitterContainer(blockEntity, player, windowId), pos ), pos diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/BaseTile.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/BaseBlockEntity.java similarity index 75% rename from src/main/java/com/refinedmods/refinedstorage/tile/BaseTile.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/BaseBlockEntity.java index 8b7ed7df8..325eac9df 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/BaseTile.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/BaseBlockEntity.java @@ -1,6 +1,6 @@ -package com.refinedmods.refinedstorage.tile; +package com.refinedmods.refinedstorage.blockentity; -import com.refinedmods.refinedstorage.tile.data.TileDataManager; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationManager; import net.minecraft.core.BlockPos; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.Connection; @@ -9,14 +9,14 @@ import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.block.entity.BlockEntityType; import net.minecraft.world.level.block.state.BlockState; -public abstract class BaseTile extends BlockEntity { - protected final TileDataManager dataManager = new TileDataManager(this); +public abstract class BaseBlockEntity extends BlockEntity { + protected final BlockEntitySynchronizationManager dataManager = new BlockEntitySynchronizationManager(this); - public BaseTile(BlockEntityType type, BlockPos pos, BlockState state) { + public BaseBlockEntity(BlockEntityType type, BlockPos pos, BlockState state) { super(type, pos, state); } - public TileDataManager getDataManager() { + public BlockEntitySynchronizationManager getDataManager() { return dataManager; } diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/CableTile.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/CableBlockEntity.java similarity index 67% rename from src/main/java/com/refinedmods/refinedstorage/tile/CableTile.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/CableBlockEntity.java index 185d3a546..99f6866e2 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/CableTile.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/CableBlockEntity.java @@ -1,9 +1,9 @@ -package com.refinedmods.refinedstorage.tile; +package com.refinedmods.refinedstorage.blockentity; -import com.refinedmods.refinedstorage.RSTiles; +import com.refinedmods.refinedstorage.RSBlockEntities; import com.refinedmods.refinedstorage.apiimpl.network.node.CableNetworkNode; import com.refinedmods.refinedstorage.apiimpl.network.node.cover.CoverManager; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; import com.refinedmods.refinedstorage.util.WorldUtils; import net.minecraft.core.BlockPos; import net.minecraft.nbt.CompoundTag; @@ -15,12 +15,12 @@ import net.minecraftforge.client.model.data.ModelDataMap; import javax.annotation.Nonnull; -public class CableTile extends NetworkNodeTile { - public static final TileDataParameter COVER_MANAGER = new TileDataParameter<>(EntityDataSerializers.COMPOUND_TAG, new CompoundTag(), t -> t.getNode().getCoverManager().writeToNbt(), (t, v) -> t.getNode().getCoverManager().readFromNbt(v), (initial, p) -> { +public class CableBlockEntity extends NetworkNodeBlockEntity { + public static final BlockEntitySynchronizationParameter COVER_MANAGER = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.COMPOUND_TAG, new CompoundTag(), t -> t.getNode().getCoverManager().writeToNbt(), (t, v) -> t.getNode().getCoverManager().readFromNbt(v), (initial, p) -> { }); - public CableTile(BlockPos pos, BlockState state) { - super(RSTiles.CABLE, pos, state); + public CableBlockEntity(BlockPos pos, BlockState state) { + super(RSBlockEntities.CABLE, pos, state); dataManager.addWatchedParameter(COVER_MANAGER); } diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/ClientNode.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/ClientNode.java similarity index 95% rename from src/main/java/com/refinedmods/refinedstorage/tile/ClientNode.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/ClientNode.java index 1c85dbb4c..c547e22ee 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/ClientNode.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/ClientNode.java @@ -1,4 +1,4 @@ -package com.refinedmods.refinedstorage.tile; +package com.refinedmods.refinedstorage.blockentity; import com.refinedmods.refinedstorage.apiimpl.API; import net.minecraft.world.item.ItemStack; diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/ConstructorTile.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/ConstructorBlockEntity.java similarity index 60% rename from src/main/java/com/refinedmods/refinedstorage/tile/ConstructorTile.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/ConstructorBlockEntity.java index e5c206d3b..95b4d012c 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/ConstructorTile.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/ConstructorBlockEntity.java @@ -1,11 +1,11 @@ -package com.refinedmods.refinedstorage.tile; +package com.refinedmods.refinedstorage.blockentity; -import com.refinedmods.refinedstorage.RSTiles; +import com.refinedmods.refinedstorage.RSBlockEntities; import com.refinedmods.refinedstorage.apiimpl.network.node.ConstructorNetworkNode; import com.refinedmods.refinedstorage.apiimpl.network.node.cover.CoverManager; -import com.refinedmods.refinedstorage.tile.config.IComparable; -import com.refinedmods.refinedstorage.tile.config.IType; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; +import com.refinedmods.refinedstorage.blockentity.config.IComparable; +import com.refinedmods.refinedstorage.blockentity.config.IType; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; import com.refinedmods.refinedstorage.util.WorldUtils; import net.minecraft.core.BlockPos; import net.minecraft.nbt.CompoundTag; @@ -17,22 +17,22 @@ import net.minecraftforge.client.model.data.ModelDataMap; import javax.annotation.Nonnull; -public class ConstructorTile extends NetworkNodeTile { - public static final TileDataParameter COMPARE = IComparable.createParameter(); - public static final TileDataParameter TYPE = IType.createParameter(); - public static final TileDataParameter DROP = new TileDataParameter<>(EntityDataSerializers.BOOLEAN, false, t -> t.getNode().isDrop(), (t, v) -> { +public class ConstructorBlockEntity extends NetworkNodeBlockEntity { + public static final BlockEntitySynchronizationParameter COMPARE = IComparable.createParameter(); + public static final BlockEntitySynchronizationParameter TYPE = IType.createParameter(); + public static final BlockEntitySynchronizationParameter DROP = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.BOOLEAN, false, t -> t.getNode().isDrop(), (t, v) -> { t.getNode().setDrop(v); t.getNode().markDirty(); }); - public static final TileDataParameter COVER_MANAGER = new TileDataParameter<>(EntityDataSerializers.COMPOUND_TAG, new CompoundTag(), + public static final BlockEntitySynchronizationParameter COVER_MANAGER = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.COMPOUND_TAG, new CompoundTag(), t -> t.getNode().getCoverManager().writeToNbt(), (t, v) -> t.getNode().getCoverManager().readFromNbt(v), (initial, p) -> { }); - public ConstructorTile(BlockPos pos, BlockState state) { - super(RSTiles.CONSTRUCTOR, pos, state); + public ConstructorBlockEntity(BlockPos pos, BlockState state) { + super(RSBlockEntities.CONSTRUCTOR, pos, state); dataManager.addWatchedParameter(COMPARE); dataManager.addWatchedParameter(TYPE); diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/ControllerTile.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/ControllerBlockEntity.java similarity index 71% rename from src/main/java/com/refinedmods/refinedstorage/tile/ControllerTile.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/ControllerBlockEntity.java index 0d0c442ca..0d2c129b7 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/ControllerTile.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/ControllerBlockEntity.java @@ -1,6 +1,6 @@ -package com.refinedmods.refinedstorage.tile; +package com.refinedmods.refinedstorage.blockentity; -import com.refinedmods.refinedstorage.RSTiles; +import com.refinedmods.refinedstorage.RSBlockEntities; import com.refinedmods.refinedstorage.api.network.INetwork; import com.refinedmods.refinedstorage.api.network.INetworkManager; import com.refinedmods.refinedstorage.api.network.INetworkNodeGraphEntry; @@ -10,10 +10,10 @@ import com.refinedmods.refinedstorage.apiimpl.API; import com.refinedmods.refinedstorage.apiimpl.network.Network; import com.refinedmods.refinedstorage.apiimpl.network.node.RootNetworkNode; import com.refinedmods.refinedstorage.capability.NetworkNodeProxyCapability; -import com.refinedmods.refinedstorage.tile.config.IRedstoneConfigurable; -import com.refinedmods.refinedstorage.tile.config.RedstoneMode; -import com.refinedmods.refinedstorage.tile.data.RSSerializers; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; +import com.refinedmods.refinedstorage.blockentity.config.IRedstoneConfigurable; +import com.refinedmods.refinedstorage.blockentity.config.RedstoneMode; +import com.refinedmods.refinedstorage.blockentity.data.RSSerializers; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.network.syncher.EntityDataSerializers; @@ -30,12 +30,12 @@ import javax.annotation.Nullable; import java.util.ArrayList; import java.util.List; -public class ControllerTile extends BaseTile implements INetworkNodeProxy, IRedstoneConfigurable { - public static final TileDataParameter REDSTONE_MODE = RedstoneMode.createParameter(); - public static final TileDataParameter ENERGY_USAGE = new TileDataParameter<>(EntityDataSerializers.INT, 0, t -> t.getNetwork().getEnergyUsage()); - public static final TileDataParameter ENERGY_STORED = new TileDataParameter<>(EntityDataSerializers.INT, 0, t -> t.getNetwork().getEnergyStorage().getEnergyStored()); - public static final TileDataParameter ENERGY_CAPACITY = new TileDataParameter<>(EntityDataSerializers.INT, 0, t -> t.getNetwork().getEnergyStorage().getMaxEnergyStored()); - public static final TileDataParameter, ControllerTile> NODES = new TileDataParameter<>(RSSerializers.CLIENT_NODE_SERIALIZER, new ArrayList<>(), ControllerTile::collectClientNodes); +public class ControllerBlockEntity extends BaseBlockEntity implements INetworkNodeProxy, IRedstoneConfigurable { + public static final BlockEntitySynchronizationParameter REDSTONE_MODE = RedstoneMode.createParameter(); + public static final BlockEntitySynchronizationParameter ENERGY_USAGE = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.INT, 0, t -> t.getNetwork().getEnergyUsage()); + public static final BlockEntitySynchronizationParameter ENERGY_STORED = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.INT, 0, t -> t.getNetwork().getEnergyStorage().getEnergyStored()); + public static final BlockEntitySynchronizationParameter ENERGY_CAPACITY = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.INT, 0, t -> t.getNetwork().getEnergyStorage().getMaxEnergyStored()); + public static final BlockEntitySynchronizationParameter, ControllerBlockEntity> NODES = new BlockEntitySynchronizationParameter<>(RSSerializers.CLIENT_NODE_SERIALIZER, new ArrayList<>(), ControllerBlockEntity::collectClientNodes); private final LazyOptional> networkNodeProxyCap = LazyOptional.of(() -> this); private final NetworkType type; @@ -43,8 +43,8 @@ public class ControllerTile extends BaseTile implements INetworkNodeProxy energyProxyCap = LazyOptional.of(() -> getNetwork().getEnergyStorage()); - public ControllerTile(NetworkType type, BlockPos pos, BlockState state) { - super(type == NetworkType.CREATIVE ? RSTiles.CREATIVE_CONTROLLER : RSTiles.CONTROLLER, pos, state); + public ControllerBlockEntity(NetworkType type, BlockPos pos, BlockState state) { + super(type == NetworkType.CREATIVE ? RSBlockEntities.CREATIVE_CONTROLLER : RSBlockEntities.CONTROLLER, pos, state); dataManager.addWatchedParameter(REDSTONE_MODE); dataManager.addWatchedParameter(ENERGY_USAGE); @@ -55,10 +55,10 @@ public class ControllerTile extends BaseTile implements INetworkNodeProxy collectClientNodes(ControllerTile tile) { + private static List collectClientNodes(ControllerBlockEntity blockEntity) { List nodes = new ArrayList<>(); - for (INetworkNodeGraphEntry entry : tile.getNetwork().getNodeGraph().all()) { + for (INetworkNodeGraphEntry entry : blockEntity.getNetwork().getNodeGraph().all()) { if (entry.getNode().isActive()) { ItemStack stack = entry.getNode().getItemStack(); diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/CrafterTile.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/CrafterBlockEntity.java similarity index 54% rename from src/main/java/com/refinedmods/refinedstorage/tile/CrafterTile.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/CrafterBlockEntity.java index 7be79ceb5..5d74b6924 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/CrafterTile.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/CrafterBlockEntity.java @@ -1,9 +1,9 @@ -package com.refinedmods.refinedstorage.tile; +package com.refinedmods.refinedstorage.blockentity; -import com.refinedmods.refinedstorage.RSTiles; +import com.refinedmods.refinedstorage.RSBlockEntities; import com.refinedmods.refinedstorage.apiimpl.network.node.CrafterNetworkNode; -import com.refinedmods.refinedstorage.screen.CrafterTileDataParameterClientListener; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; +import com.refinedmods.refinedstorage.screen.CrafterBlockEntitySynchronizationClientListener; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.network.syncher.EntityDataSerializers; @@ -17,14 +17,14 @@ import net.minecraftforge.items.IItemHandler; import javax.annotation.Nonnull; import javax.annotation.Nullable; -public class CrafterTile extends NetworkNodeTile { - public static final TileDataParameter MODE = new TileDataParameter<>(EntityDataSerializers.INT, CrafterNetworkNode.CrafterMode.IGNORE.ordinal(), t -> t.getNode().getMode().ordinal(), (t, v) -> t.getNode().setMode(CrafterNetworkNode.CrafterMode.getById(v))); - private static final TileDataParameter HAS_ROOT = new TileDataParameter<>(EntityDataSerializers.BOOLEAN, false, t -> t.getNode().getRootContainerNotSelf().isPresent(), null, (t, v) -> new CrafterTileDataParameterClientListener().onChanged(t, v)); +public class CrafterBlockEntity extends NetworkNodeBlockEntity { + public static final BlockEntitySynchronizationParameter MODE = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.INT, CrafterNetworkNode.CrafterMode.IGNORE.ordinal(), t -> t.getNode().getMode().ordinal(), (t, v) -> t.getNode().setMode(CrafterNetworkNode.CrafterMode.getById(v))); + private static final BlockEntitySynchronizationParameter HAS_ROOT = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.BOOLEAN, false, t -> t.getNode().getRootContainerNotSelf().isPresent(), null, (t, v) -> new CrafterBlockEntitySynchronizationClientListener().onChanged(t, v)); private final LazyOptional patternsCapability = LazyOptional.of(() -> getNode().getPatternInventory()); - public CrafterTile(BlockPos pos, BlockState state) { - super(RSTiles.CRAFTER, pos, state); + public CrafterBlockEntity(BlockPos pos, BlockState state) { + super(RSBlockEntities.CRAFTER, pos, state); dataManager.addWatchedParameter(MODE); dataManager.addParameter(HAS_ROOT); diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/CrafterManagerTile.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/CrafterManagerBlockEntity.java similarity index 57% rename from src/main/java/com/refinedmods/refinedstorage/tile/CrafterManagerTile.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/CrafterManagerBlockEntity.java index 3164b1c17..e02cb3876 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/CrafterManagerTile.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/CrafterManagerBlockEntity.java @@ -1,23 +1,23 @@ -package com.refinedmods.refinedstorage.tile; +package com.refinedmods.refinedstorage.blockentity; -import com.refinedmods.refinedstorage.RSTiles; +import com.refinedmods.refinedstorage.RSBlockEntities; import com.refinedmods.refinedstorage.api.network.grid.IGrid; import com.refinedmods.refinedstorage.apiimpl.network.node.CrafterManagerNetworkNode; import com.refinedmods.refinedstorage.screen.BaseScreen; import com.refinedmods.refinedstorage.screen.CrafterManagerScreen; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; import net.minecraft.core.BlockPos; import net.minecraft.network.syncher.EntityDataSerializers; import net.minecraft.world.level.Level; import net.minecraft.world.level.block.state.BlockState; -public class CrafterManagerTile extends NetworkNodeTile { - public CrafterManagerTile(BlockPos pos, BlockState state) { - super(RSTiles.CRAFTER_MANAGER, pos, state); +public class CrafterManagerBlockEntity extends NetworkNodeBlockEntity { + public CrafterManagerBlockEntity(BlockPos pos, BlockState state) { + super(RSBlockEntities.CRAFTER_MANAGER, pos, state); dataManager.addWatchedParameter(SIZE); dataManager.addWatchedParameter(SEARCH_BOX_MODE); - } public static final TileDataParameter SIZE = new TileDataParameter<>(EntityDataSerializers.INT, IGrid.SIZE_STRETCH, t -> t.getNode().getSize(), (t, v) -> { + } public static final BlockEntitySynchronizationParameter SIZE = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.INT, IGrid.SIZE_STRETCH, t -> t.getNode().getSize(), (t, v) -> { if (IGrid.isValidSize(v)) { t.getNode().setSize(v); t.getNode().markDirty(); @@ -27,7 +27,7 @@ public class CrafterManagerTile extends NetworkNodeTile SEARCH_BOX_MODE = new TileDataParameter<>(EntityDataSerializers.INT, 0, t -> t.getNode().getSearchBoxMode(), (t, v) -> { + } public static final BlockEntitySynchronizationParameter SEARCH_BOX_MODE = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.INT, 0, t -> t.getNode().getSearchBoxMode(), (t, v) -> { if (IGrid.isValidSearchBoxMode(v)) { t.getNode().setSearchBoxMode(v); t.getNode().markDirty(); diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/DestructorTile.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/DestructorBlockEntity.java similarity index 57% rename from src/main/java/com/refinedmods/refinedstorage/tile/DestructorTile.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/DestructorBlockEntity.java index 99f49c01d..ad524444e 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/DestructorTile.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/DestructorBlockEntity.java @@ -1,12 +1,12 @@ -package com.refinedmods.refinedstorage.tile; +package com.refinedmods.refinedstorage.blockentity; -import com.refinedmods.refinedstorage.RSTiles; +import com.refinedmods.refinedstorage.RSBlockEntities; import com.refinedmods.refinedstorage.apiimpl.network.node.DestructorNetworkNode; import com.refinedmods.refinedstorage.apiimpl.network.node.cover.CoverManager; -import com.refinedmods.refinedstorage.tile.config.IComparable; -import com.refinedmods.refinedstorage.tile.config.IType; -import com.refinedmods.refinedstorage.tile.config.IWhitelistBlacklist; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; +import com.refinedmods.refinedstorage.blockentity.config.IComparable; +import com.refinedmods.refinedstorage.blockentity.config.IType; +import com.refinedmods.refinedstorage.blockentity.config.IWhitelistBlacklist; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; import com.refinedmods.refinedstorage.util.WorldUtils; import net.minecraft.core.BlockPos; import net.minecraft.nbt.CompoundTag; @@ -18,23 +18,23 @@ import net.minecraftforge.client.model.data.ModelDataMap; import javax.annotation.Nonnull; -public class DestructorTile extends NetworkNodeTile { - public static final TileDataParameter COMPARE = IComparable.createParameter(); - public static final TileDataParameter WHITELIST_BLACKLIST = IWhitelistBlacklist.createParameter(); - public static final TileDataParameter TYPE = IType.createParameter(); - public static final TileDataParameter PICKUP = new TileDataParameter<>(EntityDataSerializers.BOOLEAN, false, t -> t.getNode().isPickupItem(), (t, v) -> { +public class DestructorBlockEntity extends NetworkNodeBlockEntity { + public static final BlockEntitySynchronizationParameter COMPARE = IComparable.createParameter(); + public static final BlockEntitySynchronizationParameter WHITELIST_BLACKLIST = IWhitelistBlacklist.createParameter(); + public static final BlockEntitySynchronizationParameter TYPE = IType.createParameter(); + public static final BlockEntitySynchronizationParameter PICKUP = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.BOOLEAN, false, t -> t.getNode().isPickupItem(), (t, v) -> { t.getNode().setPickupItem(v); t.getNode().markDirty(); }); - public static final TileDataParameter COVER_MANAGER = new TileDataParameter<>(EntityDataSerializers.COMPOUND_TAG, new CompoundTag(), + public static final BlockEntitySynchronizationParameter COVER_MANAGER = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.COMPOUND_TAG, new CompoundTag(), t -> t.getNode().getCoverManager().writeToNbt(), (t, v) -> t.getNode().getCoverManager().readFromNbt(v), (initial, p) -> { }); - public DestructorTile(BlockPos pos, BlockState state) { - super(RSTiles.DESTRUCTOR, pos, state); + public DestructorBlockEntity(BlockPos pos, BlockState state) { + super(RSBlockEntities.DESTRUCTOR, pos, state); dataManager.addWatchedParameter(COMPARE); dataManager.addWatchedParameter(WHITELIST_BLACKLIST); diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/DetectorTile.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/DetectorBlockEntity.java similarity index 57% rename from src/main/java/com/refinedmods/refinedstorage/tile/DetectorTile.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/DetectorBlockEntity.java index 15e743edd..a996ba9de 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/DetectorTile.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/DetectorBlockEntity.java @@ -1,12 +1,12 @@ -package com.refinedmods.refinedstorage.tile; +package com.refinedmods.refinedstorage.blockentity; -import com.refinedmods.refinedstorage.RSTiles; +import com.refinedmods.refinedstorage.RSBlockEntities; import com.refinedmods.refinedstorage.apiimpl.network.node.DetectorNetworkNode; import com.refinedmods.refinedstorage.screen.BaseScreen; import com.refinedmods.refinedstorage.screen.DetectorScreen; -import com.refinedmods.refinedstorage.tile.config.IComparable; -import com.refinedmods.refinedstorage.tile.config.IType; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; +import com.refinedmods.refinedstorage.blockentity.config.IComparable; +import com.refinedmods.refinedstorage.blockentity.config.IType; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; import net.minecraft.core.BlockPos; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.syncher.EntityDataSerializers; @@ -15,24 +15,24 @@ import net.minecraft.world.level.block.state.BlockState; import javax.annotation.Nonnull; -public class DetectorTile extends NetworkNodeTile { - public static final TileDataParameter COMPARE = IComparable.createParameter(); - public static final TileDataParameter TYPE = IType.createParameter(); - public static final TileDataParameter MODE = new TileDataParameter<>(EntityDataSerializers.INT, 0, t -> t.getNode().getMode(), (t, v) -> { +public class DetectorBlockEntity extends NetworkNodeBlockEntity { + public static final BlockEntitySynchronizationParameter COMPARE = IComparable.createParameter(); + public static final BlockEntitySynchronizationParameter TYPE = IType.createParameter(); + public static final BlockEntitySynchronizationParameter MODE = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.INT, 0, t -> t.getNode().getMode(), (t, v) -> { if (v == DetectorNetworkNode.MODE_UNDER || v == DetectorNetworkNode.MODE_EQUAL || v == DetectorNetworkNode.MODE_ABOVE) { t.getNode().setMode(v); t.getNode().markDirty(); } }); - public static final TileDataParameter AMOUNT = new TileDataParameter<>(EntityDataSerializers.INT, 0, t -> t.getNode().getAmount(), (t, v) -> { + public static final BlockEntitySynchronizationParameter AMOUNT = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.INT, 0, t -> t.getNode().getAmount(), (t, v) -> { t.getNode().setAmount(v); t.getNode().markDirty(); }, (initial, value) -> BaseScreen.executeLater(DetectorScreen.class, detectorScreen -> detectorScreen.updateAmountField(value))); private static final String NBT_POWERED = "Powered"; - public DetectorTile(BlockPos pos, BlockState state) { - super(RSTiles.DETECTOR, pos, state); + public DetectorBlockEntity(BlockPos pos, BlockState state) { + super(RSBlockEntities.DETECTOR, pos, state); dataManager.addWatchedParameter(COMPARE); dataManager.addWatchedParameter(TYPE); diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/DiskDriveTile.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/DiskDriveBlockEntity.java similarity index 72% rename from src/main/java/com/refinedmods/refinedstorage/tile/DiskDriveTile.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/DiskDriveBlockEntity.java index 5c7d3bcca..bbe3a4564 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/DiskDriveTile.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/DiskDriveBlockEntity.java @@ -1,13 +1,13 @@ -package com.refinedmods.refinedstorage.tile; +package com.refinedmods.refinedstorage.blockentity; -import com.refinedmods.refinedstorage.RSTiles; +import com.refinedmods.refinedstorage.RSBlockEntities; import com.refinedmods.refinedstorage.api.storage.AccessType; import com.refinedmods.refinedstorage.api.storage.disk.IStorageDisk; import com.refinedmods.refinedstorage.apiimpl.network.node.DiskState; import com.refinedmods.refinedstorage.apiimpl.network.node.diskdrive.DiskDriveNetworkNode; -import com.refinedmods.refinedstorage.tile.config.*; -import com.refinedmods.refinedstorage.tile.data.RSSerializers; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; +import com.refinedmods.refinedstorage.blockentity.config.*; +import com.refinedmods.refinedstorage.blockentity.data.RSSerializers; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; import com.refinedmods.refinedstorage.util.WorldUtils; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; @@ -29,13 +29,13 @@ import javax.annotation.Nonnull; import javax.annotation.Nullable; import java.util.Arrays; -public class DiskDriveTile extends NetworkNodeTile { - public static final TileDataParameter PRIORITY = IPrioritizable.createParameter(); - public static final TileDataParameter COMPARE = IComparable.createParameter(); - public static final TileDataParameter WHITELIST_BLACKLIST = IWhitelistBlacklist.createParameter(); - public static final TileDataParameter TYPE = IType.createParameter(); - public static final TileDataParameter ACCESS_TYPE = IAccessType.createParameter(); - public static final TileDataParameter STORED = new TileDataParameter<>(RSSerializers.LONG_SERIALIZER, 0L, t -> { +public class DiskDriveBlockEntity extends NetworkNodeBlockEntity { + public static final BlockEntitySynchronizationParameter PRIORITY = IPrioritizable.createParameter(); + public static final BlockEntitySynchronizationParameter COMPARE = IComparable.createParameter(); + public static final BlockEntitySynchronizationParameter WHITELIST_BLACKLIST = IWhitelistBlacklist.createParameter(); + public static final BlockEntitySynchronizationParameter TYPE = IType.createParameter(); + public static final BlockEntitySynchronizationParameter ACCESS_TYPE = IAccessType.createParameter(); + public static final BlockEntitySynchronizationParameter STORED = new BlockEntitySynchronizationParameter<>(RSSerializers.LONG_SERIALIZER, 0L, t -> { long stored = 0; for (IStorageDisk storage : t.getNode().getItemDisks()) { @@ -52,7 +52,7 @@ public class DiskDriveTile extends NetworkNodeTile { return stored; }); - public static final TileDataParameter CAPACITY = new TileDataParameter<>(RSSerializers.LONG_SERIALIZER, 0L, t -> { + public static final BlockEntitySynchronizationParameter CAPACITY = new BlockEntitySynchronizationParameter<>(RSSerializers.LONG_SERIALIZER, 0L, t -> { long capacity = 0; for (IStorageDisk storage : t.getNode().getItemDisks()) { @@ -86,8 +86,8 @@ public class DiskDriveTile extends NetworkNodeTile { private final DiskState[] diskState = new DiskState[8]; - public DiskDriveTile(BlockPos pos, BlockState state) { - super(RSTiles.DISK_DRIVE, pos, state); + public DiskDriveBlockEntity(BlockPos pos, BlockState state) { + super(RSBlockEntities.DISK_DRIVE, pos, state); dataManager.addWatchedParameter(PRIORITY); dataManager.addWatchedParameter(COMPARE); diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/DiskManipulatorTile.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/DiskManipulatorBlockEntity.java similarity index 70% rename from src/main/java/com/refinedmods/refinedstorage/tile/DiskManipulatorTile.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/DiskManipulatorBlockEntity.java index c8a948fcd..6fab65994 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/DiskManipulatorTile.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/DiskManipulatorBlockEntity.java @@ -1,12 +1,12 @@ -package com.refinedmods.refinedstorage.tile; +package com.refinedmods.refinedstorage.blockentity; -import com.refinedmods.refinedstorage.RSTiles; +import com.refinedmods.refinedstorage.RSBlockEntities; import com.refinedmods.refinedstorage.apiimpl.network.node.DiskState; import com.refinedmods.refinedstorage.apiimpl.network.node.diskmanipulator.DiskManipulatorNetworkNode; -import com.refinedmods.refinedstorage.tile.config.IComparable; -import com.refinedmods.refinedstorage.tile.config.IType; -import com.refinedmods.refinedstorage.tile.config.IWhitelistBlacklist; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; +import com.refinedmods.refinedstorage.blockentity.config.IComparable; +import com.refinedmods.refinedstorage.blockentity.config.IType; +import com.refinedmods.refinedstorage.blockentity.config.IWhitelistBlacklist; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; import com.refinedmods.refinedstorage.util.WorldUtils; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; @@ -29,11 +29,11 @@ import javax.annotation.Nonnull; import javax.annotation.Nullable; import java.util.Arrays; -public class DiskManipulatorTile extends NetworkNodeTile { - public static final TileDataParameter COMPARE = IComparable.createParameter(); - public static final TileDataParameter WHITELIST_BLACKLIST = IWhitelistBlacklist.createParameter(); - public static final TileDataParameter TYPE = IType.createParameter(); - public static final TileDataParameter IO_MODE = new TileDataParameter<>(EntityDataSerializers.INT, DiskManipulatorNetworkNode.IO_MODE_INSERT, t -> t.getNode().getIoMode(), (t, v) -> { +public class DiskManipulatorBlockEntity extends NetworkNodeBlockEntity { + public static final BlockEntitySynchronizationParameter COMPARE = IComparable.createParameter(); + public static final BlockEntitySynchronizationParameter WHITELIST_BLACKLIST = IWhitelistBlacklist.createParameter(); + public static final BlockEntitySynchronizationParameter TYPE = IType.createParameter(); + public static final BlockEntitySynchronizationParameter IO_MODE = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.INT, DiskManipulatorNetworkNode.IO_MODE_INSERT, t -> t.getNode().getIoMode(), (t, v) -> { t.getNode().setIoMode(v); t.getNode().markDirty(); }); @@ -46,8 +46,8 @@ public class DiskManipulatorTile extends NetworkNodeTile { +public class ExporterBlockEntity extends NetworkNodeBlockEntity { - public static final TileDataParameter COVER_MANAGER = new TileDataParameter<>(EntityDataSerializers.COMPOUND_TAG, new CompoundTag(), + public static final BlockEntitySynchronizationParameter COVER_MANAGER = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.COMPOUND_TAG, new CompoundTag(), t -> t.getNode().getCoverManager().writeToNbt(), (t, v) -> t.getNode().getCoverManager().readFromNbt(v), (initial, p) -> { }); - public static final TileDataParameter COMPARE = IComparable.createParameter(); - public static final TileDataParameter TYPE = IType.createParameter(); + public static final BlockEntitySynchronizationParameter COMPARE = IComparable.createParameter(); + public static final BlockEntitySynchronizationParameter TYPE = IType.createParameter(); - public ExporterTile(BlockPos pos, BlockState state) { - super(RSTiles.EXPORTER, pos, state); + public ExporterBlockEntity(BlockPos pos, BlockState state) { + super(RSBlockEntities.EXPORTER, pos, state); dataManager.addWatchedParameter(COMPARE); dataManager.addWatchedParameter(TYPE); diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/ExternalStorageTile.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/ExternalStorageBlockEntity.java similarity index 58% rename from src/main/java/com/refinedmods/refinedstorage/tile/ExternalStorageTile.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/ExternalStorageBlockEntity.java index 83169fa81..640f1db96 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/ExternalStorageTile.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/ExternalStorageBlockEntity.java @@ -1,13 +1,13 @@ -package com.refinedmods.refinedstorage.tile; +package com.refinedmods.refinedstorage.blockentity; -import com.refinedmods.refinedstorage.RSTiles; +import com.refinedmods.refinedstorage.RSBlockEntities; import com.refinedmods.refinedstorage.api.storage.AccessType; import com.refinedmods.refinedstorage.api.storage.externalstorage.IExternalStorage; import com.refinedmods.refinedstorage.apiimpl.network.node.ExternalStorageNetworkNode; import com.refinedmods.refinedstorage.apiimpl.network.node.cover.CoverManager; -import com.refinedmods.refinedstorage.tile.config.*; -import com.refinedmods.refinedstorage.tile.data.RSSerializers; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; +import com.refinedmods.refinedstorage.blockentity.config.*; +import com.refinedmods.refinedstorage.blockentity.data.RSSerializers; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; import com.refinedmods.refinedstorage.util.WorldUtils; import net.minecraft.core.BlockPos; import net.minecraft.nbt.CompoundTag; @@ -21,13 +21,13 @@ import net.minecraftforge.fluids.FluidStack; import javax.annotation.Nonnull; -public class ExternalStorageTile extends NetworkNodeTile { - public static final TileDataParameter PRIORITY = IPrioritizable.createParameter(); - public static final TileDataParameter COMPARE = IComparable.createParameter(); - public static final TileDataParameter WHITELIST_BLACKLIST = IWhitelistBlacklist.createParameter(); - public static final TileDataParameter TYPE = IType.createParameter(); - public static final TileDataParameter ACCESS_TYPE = IAccessType.createParameter(); - public static final TileDataParameter STORED = new TileDataParameter<>(RSSerializers.LONG_SERIALIZER, 0L, t -> { +public class ExternalStorageBlockEntity extends NetworkNodeBlockEntity { + public static final BlockEntitySynchronizationParameter PRIORITY = IPrioritizable.createParameter(); + public static final BlockEntitySynchronizationParameter COMPARE = IComparable.createParameter(); + public static final BlockEntitySynchronizationParameter WHITELIST_BLACKLIST = IWhitelistBlacklist.createParameter(); + public static final BlockEntitySynchronizationParameter TYPE = IType.createParameter(); + public static final BlockEntitySynchronizationParameter ACCESS_TYPE = IAccessType.createParameter(); + public static final BlockEntitySynchronizationParameter STORED = new BlockEntitySynchronizationParameter<>(RSSerializers.LONG_SERIALIZER, 0L, t -> { long stored = 0; for (IExternalStorage storage : t.getNode().getItemStorages()) { @@ -40,7 +40,7 @@ public class ExternalStorageTile extends NetworkNodeTile CAPACITY = new TileDataParameter<>(RSSerializers.LONG_SERIALIZER, 0L, t -> { + public static final BlockEntitySynchronizationParameter CAPACITY = new BlockEntitySynchronizationParameter<>(RSSerializers.LONG_SERIALIZER, 0L, t -> { long capacity = 0; for (IExternalStorage storage : t.getNode().getItemStorages()) { @@ -54,11 +54,11 @@ public class ExternalStorageTile extends NetworkNodeTile COVER_MANAGER = new TileDataParameter<>(EntityDataSerializers.COMPOUND_TAG, new CompoundTag(), t -> t.getNode().getCoverManager().writeToNbt(), (t, v) -> t.getNode().getCoverManager().readFromNbt(v), (initial, p) -> { + public static final BlockEntitySynchronizationParameter COVER_MANAGER = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.COMPOUND_TAG, new CompoundTag(), t -> t.getNode().getCoverManager().writeToNbt(), (t, v) -> t.getNode().getCoverManager().readFromNbt(v), (initial, p) -> { }); - public ExternalStorageTile(BlockPos pos, BlockState state) { - super(RSTiles.EXTERNAL_STORAGE, pos, state); + public ExternalStorageBlockEntity(BlockPos pos, BlockState state) { + super(RSBlockEntities.EXTERNAL_STORAGE, pos, state); dataManager.addWatchedParameter(PRIORITY); dataManager.addWatchedParameter(COMPARE); diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/FluidInterfaceTile.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/FluidInterfaceBlockEntity.java similarity index 61% rename from src/main/java/com/refinedmods/refinedstorage/tile/FluidInterfaceTile.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/FluidInterfaceBlockEntity.java index 568f359a8..ad6e5e383 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/FluidInterfaceTile.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/FluidInterfaceBlockEntity.java @@ -1,9 +1,9 @@ -package com.refinedmods.refinedstorage.tile; +package com.refinedmods.refinedstorage.blockentity; -import com.refinedmods.refinedstorage.RSTiles; +import com.refinedmods.refinedstorage.RSBlockEntities; import com.refinedmods.refinedstorage.apiimpl.network.node.FluidInterfaceNetworkNode; -import com.refinedmods.refinedstorage.tile.data.RSSerializers; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; +import com.refinedmods.refinedstorage.blockentity.data.RSSerializers; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.world.level.Level; @@ -19,15 +19,15 @@ import net.minecraftforge.items.IItemHandler; import javax.annotation.Nonnull; import javax.annotation.Nullable; -public class FluidInterfaceTile extends NetworkNodeTile { - public static final TileDataParameter TANK_IN = new TileDataParameter<>(RSSerializers.FLUID_STACK_SERIALIZER, FluidStack.EMPTY, t -> t.getNode().getTankIn().getFluid()); - public static final TileDataParameter TANK_OUT = new TileDataParameter<>(RSSerializers.FLUID_STACK_SERIALIZER, FluidStack.EMPTY, t -> t.getNode().getTankOut().getFluid()); +public class FluidInterfaceBlockEntity extends NetworkNodeBlockEntity { + public static final BlockEntitySynchronizationParameter TANK_IN = new BlockEntitySynchronizationParameter<>(RSSerializers.FLUID_STACK_SERIALIZER, FluidStack.EMPTY, t -> t.getNode().getTankIn().getFluid()); + public static final BlockEntitySynchronizationParameter TANK_OUT = new BlockEntitySynchronizationParameter<>(RSSerializers.FLUID_STACK_SERIALIZER, FluidStack.EMPTY, t -> t.getNode().getTankOut().getFluid()); private final LazyOptional tankCapability = LazyOptional.of(() -> getNode().getTank()); private final LazyOptional inCapability = LazyOptional.of(() -> getNode().getIn()); - public FluidInterfaceTile(BlockPos pos, BlockState state) { - super(RSTiles.FLUID_INTERFACE, pos, state); + public FluidInterfaceBlockEntity(BlockPos pos, BlockState state) { + super(RSBlockEntities.FLUID_INTERFACE, pos, state); dataManager.addParameter(TANK_IN); dataManager.addParameter(TANK_OUT); diff --git a/src/main/java/com/refinedmods/refinedstorage/blockentity/FluidStorageBlockEntity.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/FluidStorageBlockEntity.java new file mode 100644 index 000000000..aa03ff2c7 --- /dev/null +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/FluidStorageBlockEntity.java @@ -0,0 +1,68 @@ +package com.refinedmods.refinedstorage.blockentity; + +import com.refinedmods.refinedstorage.RSBlockEntities; +import com.refinedmods.refinedstorage.api.storage.AccessType; +import com.refinedmods.refinedstorage.apiimpl.network.node.storage.FluidStorageNetworkNode; +import com.refinedmods.refinedstorage.apiimpl.storage.FluidStorageType; +import com.refinedmods.refinedstorage.blockentity.config.IAccessType; +import com.refinedmods.refinedstorage.blockentity.config.IComparable; +import com.refinedmods.refinedstorage.blockentity.config.IPrioritizable; +import com.refinedmods.refinedstorage.blockentity.config.IWhitelistBlacklist; +import com.refinedmods.refinedstorage.blockentity.data.RSSerializers; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; + +import javax.annotation.Nonnull; + +public class FluidStorageBlockEntity extends NetworkNodeBlockEntity { + public static final BlockEntitySynchronizationParameter PRIORITY = IPrioritizable.createParameter(); + public static final BlockEntitySynchronizationParameter COMPARE = IComparable.createParameter(); + public static final BlockEntitySynchronizationParameter WHITELIST_BLACKLIST = IWhitelistBlacklist.createParameter(); + public static final BlockEntitySynchronizationParameter ACCESS_TYPE = IAccessType.createParameter(); + public static final BlockEntitySynchronizationParameter STORED = new BlockEntitySynchronizationParameter<>(RSSerializers.LONG_SERIALIZER, 0L, t -> t.getNode().getStorage() != null ? (long) t.getNode().getStorage().getStored() : 0); + + private final FluidStorageType type; + + public FluidStorageBlockEntity(FluidStorageType type, BlockPos pos, BlockState state) { + super(getType(type), pos, state); + + this.type = type; + + dataManager.addWatchedParameter(PRIORITY); + dataManager.addWatchedParameter(COMPARE); + dataManager.addWatchedParameter(WHITELIST_BLACKLIST); + dataManager.addWatchedParameter(STORED); + dataManager.addWatchedParameter(ACCESS_TYPE); + } + + public static BlockEntityType getType(FluidStorageType type) { + switch (type) { + case SIXTY_FOUR_K: + return RSBlockEntities.SIXTY_FOUR_K_FLUID_STORAGE_BLOCK; + case TWO_HUNDRED_FIFTY_SIX_K: + return RSBlockEntities.TWO_HUNDRED_FIFTY_SIX_K_FLUID_STORAGE_BLOCK; + case THOUSAND_TWENTY_FOUR_K: + return RSBlockEntities.THOUSAND_TWENTY_FOUR_K_FLUID_STORAGE_BLOCK; + case FOUR_THOUSAND_NINETY_SIX_K: + return RSBlockEntities.FOUR_THOUSAND_NINETY_SIX_K_FLUID_STORAGE_BLOCK; + case CREATIVE: + return RSBlockEntities.CREATIVE_FLUID_STORAGE_BLOCK; + default: + throw new IllegalArgumentException("Unknown storage type " + type); + } + } + + public FluidStorageType getFluidStorageType() { + return type; + } + + @Override + @Nonnull + public FluidStorageNetworkNode createNode(Level level, BlockPos pos) { + return new FluidStorageNetworkNode(level, pos, type); + } +} + diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/ImporterTile.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/ImporterBlockEntity.java similarity index 55% rename from src/main/java/com/refinedmods/refinedstorage/tile/ImporterTile.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/ImporterBlockEntity.java index 341ff6285..e2e55fc5e 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/ImporterTile.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/ImporterBlockEntity.java @@ -1,12 +1,12 @@ -package com.refinedmods.refinedstorage.tile; +package com.refinedmods.refinedstorage.blockentity; -import com.refinedmods.refinedstorage.RSTiles; +import com.refinedmods.refinedstorage.RSBlockEntities; import com.refinedmods.refinedstorage.apiimpl.network.node.ImporterNetworkNode; import com.refinedmods.refinedstorage.apiimpl.network.node.cover.CoverManager; -import com.refinedmods.refinedstorage.tile.config.IComparable; -import com.refinedmods.refinedstorage.tile.config.IType; -import com.refinedmods.refinedstorage.tile.config.IWhitelistBlacklist; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; +import com.refinedmods.refinedstorage.blockentity.config.IComparable; +import com.refinedmods.refinedstorage.blockentity.config.IType; +import com.refinedmods.refinedstorage.blockentity.config.IWhitelistBlacklist; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; import com.refinedmods.refinedstorage.util.WorldUtils; import net.minecraft.core.BlockPos; import net.minecraft.nbt.CompoundTag; @@ -18,15 +18,15 @@ import net.minecraftforge.client.model.data.ModelDataMap; import javax.annotation.Nonnull; -public class ImporterTile extends NetworkNodeTile { - public static final TileDataParameter COMPARE = IComparable.createParameter(); - public static final TileDataParameter WHITELIST_BLACKLIST = IWhitelistBlacklist.createParameter(); - public static final TileDataParameter TYPE = IType.createParameter(); - public static final TileDataParameter COVER_MANAGER = new TileDataParameter<>(EntityDataSerializers.COMPOUND_TAG, new CompoundTag(), t -> t.getNode().getCoverManager().writeToNbt(), (t, v) -> t.getNode().getCoverManager().readFromNbt(v), (initial, p) -> { +public class ImporterBlockEntity extends NetworkNodeBlockEntity { + public static final BlockEntitySynchronizationParameter COMPARE = IComparable.createParameter(); + public static final BlockEntitySynchronizationParameter WHITELIST_BLACKLIST = IWhitelistBlacklist.createParameter(); + public static final BlockEntitySynchronizationParameter TYPE = IType.createParameter(); + public static final BlockEntitySynchronizationParameter COVER_MANAGER = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.COMPOUND_TAG, new CompoundTag(), t -> t.getNode().getCoverManager().writeToNbt(), (t, v) -> t.getNode().getCoverManager().readFromNbt(v), (initial, p) -> { }); - public ImporterTile(BlockPos pos, BlockState state) { - super(RSTiles.IMPORTER, pos, state); + public ImporterBlockEntity(BlockPos pos, BlockState state) { + super(RSBlockEntities.IMPORTER, pos, state); dataManager.addWatchedParameter(COMPARE); dataManager.addWatchedParameter(WHITELIST_BLACKLIST); diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/InterfaceTile.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/InterfaceBlockEntity.java similarity index 65% rename from src/main/java/com/refinedmods/refinedstorage/tile/InterfaceTile.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/InterfaceBlockEntity.java index f7b21f247..ab2934cb1 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/InterfaceTile.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/InterfaceBlockEntity.java @@ -1,9 +1,9 @@ -package com.refinedmods.refinedstorage.tile; +package com.refinedmods.refinedstorage.blockentity; -import com.refinedmods.refinedstorage.RSTiles; +import com.refinedmods.refinedstorage.RSBlockEntities; import com.refinedmods.refinedstorage.apiimpl.network.node.InterfaceNetworkNode; -import com.refinedmods.refinedstorage.tile.config.IComparable; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; +import com.refinedmods.refinedstorage.blockentity.config.IComparable; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.world.level.Level; @@ -16,13 +16,13 @@ import net.minecraftforge.items.IItemHandler; import javax.annotation.Nonnull; import javax.annotation.Nullable; -public class InterfaceTile extends NetworkNodeTile { - public static final TileDataParameter COMPARE = IComparable.createParameter(); +public class InterfaceBlockEntity extends NetworkNodeBlockEntity { + public static final BlockEntitySynchronizationParameter COMPARE = IComparable.createParameter(); private final LazyOptional itemsCapability = LazyOptional.of(() -> getNode().getItems()); - public InterfaceTile(BlockPos pos, BlockState state) { - super(RSTiles.INTERFACE, pos, state); + public InterfaceBlockEntity(BlockPos pos, BlockState state) { + super(RSBlockEntities.INTERFACE, pos, state); dataManager.addWatchedParameter(COMPARE); } diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/NetworkNodeTile.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/NetworkNodeBlockEntity.java similarity index 83% rename from src/main/java/com/refinedmods/refinedstorage/tile/NetworkNodeTile.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/NetworkNodeBlockEntity.java index fc2f1a942..f5b06bfb2 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/NetworkNodeTile.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/NetworkNodeBlockEntity.java @@ -1,4 +1,4 @@ -package com.refinedmods.refinedstorage.tile; +package com.refinedmods.refinedstorage.blockentity; import com.refinedmods.refinedstorage.api.network.node.INetworkNode; import com.refinedmods.refinedstorage.api.network.node.INetworkNodeManager; @@ -7,9 +7,9 @@ import com.refinedmods.refinedstorage.api.util.Action; import com.refinedmods.refinedstorage.apiimpl.API; import com.refinedmods.refinedstorage.apiimpl.network.node.NetworkNode; import com.refinedmods.refinedstorage.capability.NetworkNodeProxyCapability; -import com.refinedmods.refinedstorage.tile.config.IRedstoneConfigurable; -import com.refinedmods.refinedstorage.tile.config.RedstoneMode; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; +import com.refinedmods.refinedstorage.blockentity.config.IRedstoneConfigurable; +import com.refinedmods.refinedstorage.blockentity.config.RedstoneMode; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.server.level.ServerLevel; @@ -22,14 +22,14 @@ import net.minecraftforge.common.util.LazyOptional; import javax.annotation.Nonnull; import javax.annotation.Nullable; -public abstract class NetworkNodeTile extends BaseTile implements INetworkNodeProxy, IRedstoneConfigurable { - public static final TileDataParameter REDSTONE_MODE = RedstoneMode.createParameter(); +public abstract class NetworkNodeBlockEntity extends BaseBlockEntity implements INetworkNodeProxy, IRedstoneConfigurable { + public static final BlockEntitySynchronizationParameter REDSTONE_MODE = RedstoneMode.createParameter(); private final LazyOptional> networkNodeProxy = LazyOptional.of(() -> this); private N clientNode; private N removedNode; - protected NetworkNodeTile(BlockEntityType tileType, BlockPos pos, BlockState state) { - super(tileType, pos, state); + protected NetworkNodeBlockEntity(BlockEntityType type, BlockPos pos, BlockState state) { + super(type, pos, state); dataManager.addWatchedParameter(REDSTONE_MODE); } diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/NetworkReceiverTile.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/NetworkReceiverBlockEntity.java similarity index 56% rename from src/main/java/com/refinedmods/refinedstorage/tile/NetworkReceiverTile.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/NetworkReceiverBlockEntity.java index 74eed4a4d..d0a044105 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/NetworkReceiverTile.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/NetworkReceiverBlockEntity.java @@ -1,6 +1,6 @@ -package com.refinedmods.refinedstorage.tile; +package com.refinedmods.refinedstorage.blockentity; -import com.refinedmods.refinedstorage.RSTiles; +import com.refinedmods.refinedstorage.RSBlockEntities; import com.refinedmods.refinedstorage.apiimpl.network.node.NetworkReceiverNetworkNode; import net.minecraft.core.BlockPos; import net.minecraft.world.level.Level; @@ -8,9 +8,9 @@ import net.minecraft.world.level.block.state.BlockState; import javax.annotation.Nonnull; -public class NetworkReceiverTile extends NetworkNodeTile { - public NetworkReceiverTile(BlockPos pos, BlockState state) { - super(RSTiles.NETWORK_RECEIVER, pos, state); +public class NetworkReceiverBlockEntity extends NetworkNodeBlockEntity { + public NetworkReceiverBlockEntity(BlockPos pos, BlockState state) { + super(RSBlockEntities.NETWORK_RECEIVER, pos, state); } @Override diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/NetworkTransmitterTile.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/NetworkTransmitterBlockEntity.java similarity index 61% rename from src/main/java/com/refinedmods/refinedstorage/tile/NetworkTransmitterTile.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/NetworkTransmitterBlockEntity.java index 5fc04ac89..46a11df1b 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/NetworkTransmitterTile.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/NetworkTransmitterBlockEntity.java @@ -1,9 +1,9 @@ -package com.refinedmods.refinedstorage.tile; +package com.refinedmods.refinedstorage.blockentity; -import com.refinedmods.refinedstorage.RSTiles; +import com.refinedmods.refinedstorage.RSBlockEntities; import com.refinedmods.refinedstorage.apiimpl.network.node.NetworkTransmitterNetworkNode; -import com.refinedmods.refinedstorage.tile.data.RSSerializers; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; +import com.refinedmods.refinedstorage.blockentity.data.RSSerializers; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.network.syncher.EntityDataSerializers; @@ -19,9 +19,9 @@ import javax.annotation.Nonnull; import javax.annotation.Nullable; import java.util.Optional; -public class NetworkTransmitterTile extends NetworkNodeTile { - public static final TileDataParameter DISTANCE = new TileDataParameter<>(EntityDataSerializers.INT, 0, t -> t.getNode().getDistance()); - public static final TileDataParameter, NetworkTransmitterTile> RECEIVER_DIMENSION = new TileDataParameter<>(RSSerializers.OPTIONAL_RESOURCE_LOCATION_SERIALIZER, Optional.empty(), t -> { +public class NetworkTransmitterBlockEntity extends NetworkNodeBlockEntity { + public static final BlockEntitySynchronizationParameter DISTANCE = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.INT, 0, t -> t.getNode().getDistance()); + public static final BlockEntitySynchronizationParameter, NetworkTransmitterBlockEntity> RECEIVER_DIMENSION = new BlockEntitySynchronizationParameter<>(RSSerializers.OPTIONAL_RESOURCE_LOCATION_SERIALIZER, Optional.empty(), t -> { if (t.getNode().getReceiverDimension() != null) { return Optional.of(t.getNode().getReceiverDimension().location()); } @@ -31,8 +31,8 @@ public class NetworkTransmitterTile extends NetworkNodeTile networkCardCapability = LazyOptional.of(() -> getNode().getNetworkCard()); - public NetworkTransmitterTile(BlockPos pos, BlockState state) { - super(RSTiles.NETWORK_TRANSMITTER, pos, state); + public NetworkTransmitterBlockEntity(BlockPos pos, BlockState state) { + super(RSBlockEntities.NETWORK_TRANSMITTER, pos, state); dataManager.addWatchedParameter(DISTANCE); dataManager.addWatchedParameter(RECEIVER_DIMENSION); diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/RelayTile.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/RelayBlockEntity.java similarity index 57% rename from src/main/java/com/refinedmods/refinedstorage/tile/RelayTile.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/RelayBlockEntity.java index 12c549608..002975fc1 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/RelayTile.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/RelayBlockEntity.java @@ -1,6 +1,6 @@ -package com.refinedmods.refinedstorage.tile; +package com.refinedmods.refinedstorage.blockentity; -import com.refinedmods.refinedstorage.RSTiles; +import com.refinedmods.refinedstorage.RSBlockEntities; import com.refinedmods.refinedstorage.apiimpl.network.node.RelayNetworkNode; import net.minecraft.core.BlockPos; import net.minecraft.world.level.Level; @@ -8,9 +8,9 @@ import net.minecraft.world.level.block.state.BlockState; import javax.annotation.Nonnull; -public class RelayTile extends NetworkNodeTile { - public RelayTile(BlockPos pos, BlockState state) { - super(RSTiles.RELAY, pos, state); +public class RelayBlockEntity extends NetworkNodeBlockEntity { + public RelayBlockEntity(BlockPos pos, BlockState state) { + super(RSBlockEntities.RELAY, pos, state); } @Override diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/SecurityManagerTile.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/SecurityManagerBlockEntity.java similarity index 56% rename from src/main/java/com/refinedmods/refinedstorage/tile/SecurityManagerTile.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/SecurityManagerBlockEntity.java index af3990495..f89535d94 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/SecurityManagerTile.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/SecurityManagerBlockEntity.java @@ -1,6 +1,6 @@ -package com.refinedmods.refinedstorage.tile; +package com.refinedmods.refinedstorage.blockentity; -import com.refinedmods.refinedstorage.RSTiles; +import com.refinedmods.refinedstorage.RSBlockEntities; import com.refinedmods.refinedstorage.apiimpl.network.node.SecurityManagerNetworkNode; import net.minecraft.core.BlockPos; import net.minecraft.world.level.Level; @@ -8,9 +8,9 @@ import net.minecraft.world.level.block.state.BlockState; import javax.annotation.Nonnull; -public class SecurityManagerTile extends NetworkNodeTile { - public SecurityManagerTile(BlockPos pos, BlockState state) { - super(RSTiles.SECURITY_MANAGER, pos, state); +public class SecurityManagerBlockEntity extends NetworkNodeBlockEntity { + public SecurityManagerBlockEntity(BlockPos pos, BlockState state) { + super(RSBlockEntities.SECURITY_MANAGER, pos, state); } @Override diff --git a/src/main/java/com/refinedmods/refinedstorage/blockentity/StorageBlockEntity.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/StorageBlockEntity.java new file mode 100644 index 000000000..19d56e307 --- /dev/null +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/StorageBlockEntity.java @@ -0,0 +1,67 @@ +package com.refinedmods.refinedstorage.blockentity; + +import com.refinedmods.refinedstorage.RSBlockEntities; +import com.refinedmods.refinedstorage.api.storage.AccessType; +import com.refinedmods.refinedstorage.apiimpl.network.node.storage.StorageNetworkNode; +import com.refinedmods.refinedstorage.apiimpl.storage.ItemStorageType; +import com.refinedmods.refinedstorage.blockentity.config.IAccessType; +import com.refinedmods.refinedstorage.blockentity.config.IComparable; +import com.refinedmods.refinedstorage.blockentity.config.IPrioritizable; +import com.refinedmods.refinedstorage.blockentity.config.IWhitelistBlacklist; +import com.refinedmods.refinedstorage.blockentity.data.RSSerializers; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; + +import javax.annotation.Nonnull; + +public class StorageBlockEntity extends NetworkNodeBlockEntity { + public static final BlockEntitySynchronizationParameter PRIORITY = IPrioritizable.createParameter(); + public static final BlockEntitySynchronizationParameter COMPARE = IComparable.createParameter(); + public static final BlockEntitySynchronizationParameter WHITELIST_BLACKLIST = IWhitelistBlacklist.createParameter(); + public static final BlockEntitySynchronizationParameter ACCESS_TYPE = IAccessType.createParameter(); + public static final BlockEntitySynchronizationParameter STORED = new BlockEntitySynchronizationParameter<>(RSSerializers.LONG_SERIALIZER, 0L, t -> t.getNode().getStorage() != null ? (long) t.getNode().getStorage().getStored() : 0); + + private final ItemStorageType type; + + public StorageBlockEntity(ItemStorageType type, BlockPos pos, BlockState state) { + super(getType(type), pos, state); + + this.type = type; + + dataManager.addWatchedParameter(PRIORITY); + dataManager.addWatchedParameter(COMPARE); + dataManager.addWatchedParameter(WHITELIST_BLACKLIST); + dataManager.addWatchedParameter(STORED); + dataManager.addWatchedParameter(ACCESS_TYPE); + } + + public static BlockEntityType getType(ItemStorageType type) { + switch (type) { + case ONE_K: + return RSBlockEntities.ONE_K_STORAGE_BLOCK; + case FOUR_K: + return RSBlockEntities.FOUR_K_STORAGE_BLOCK; + case SIXTEEN_K: + return RSBlockEntities.SIXTEEN_K_STORAGE_BLOCK; + case SIXTY_FOUR_K: + return RSBlockEntities.SIXTY_FOUR_K_STORAGE_BLOCK; + case CREATIVE: + return RSBlockEntities.CREATIVE_STORAGE_BLOCK; + default: + throw new IllegalArgumentException("Unknown storage type " + type); + } + } + + public ItemStorageType getItemStorageType() { + return type; + } + + @Override + @Nonnull + public StorageNetworkNode createNode(Level level, BlockPos pos) { + return new StorageNetworkNode(level, pos, type); + } +} diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/StorageMonitorTile.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/StorageMonitorBlockEntity.java similarity index 74% rename from src/main/java/com/refinedmods/refinedstorage/tile/StorageMonitorTile.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/StorageMonitorBlockEntity.java index 36bfe6e57..76f968e46 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/StorageMonitorTile.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/StorageMonitorBlockEntity.java @@ -1,10 +1,10 @@ -package com.refinedmods.refinedstorage.tile; +package com.refinedmods.refinedstorage.blockentity; -import com.refinedmods.refinedstorage.RSTiles; +import com.refinedmods.refinedstorage.RSBlockEntities; import com.refinedmods.refinedstorage.apiimpl.network.node.StorageMonitorNetworkNode; -import com.refinedmods.refinedstorage.tile.config.IComparable; -import com.refinedmods.refinedstorage.tile.config.IType; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; +import com.refinedmods.refinedstorage.blockentity.config.IComparable; +import com.refinedmods.refinedstorage.blockentity.config.IType; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; import net.minecraft.core.BlockPos; import net.minecraft.nbt.CompoundTag; import net.minecraft.world.item.ItemStack; @@ -14,9 +14,9 @@ import net.minecraftforge.fluids.FluidStack; import javax.annotation.Nullable; -public class StorageMonitorTile extends NetworkNodeTile { - public static final TileDataParameter COMPARE = IComparable.createParameter(); - public static final TileDataParameter TYPE = IType.createParameter(); +public class StorageMonitorBlockEntity extends NetworkNodeBlockEntity { + public static final BlockEntitySynchronizationParameter COMPARE = IComparable.createParameter(); + public static final BlockEntitySynchronizationParameter TYPE = IType.createParameter(); private static final String NBT_TYPE = "Type"; private static final String NBT_FLUIDSTACK = "FluidStack"; @@ -30,8 +30,8 @@ public class StorageMonitorTile extends NetworkNodeTile { + public static final BlockEntitySynchronizationParameter RANGE = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.INT, 0, t -> t.getNode().getRange()); + + public WirelessTransmitterBlockEntity(BlockPos pos, BlockState state) { + super(RSBlockEntities.WIRELESS_TRANSMITTER, pos, state); + + dataManager.addWatchedParameter(RANGE); + } + + @Override + @Nonnull + public WirelessTransmitterNetworkNode createNode(Level level, BlockPos pos) { + return new WirelessTransmitterNetworkNode(level, pos); + } +} diff --git a/src/main/java/com/refinedmods/refinedstorage/blockentity/config/IAccessType.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/config/IAccessType.java new file mode 100644 index 000000000..418064fe2 --- /dev/null +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/config/IAccessType.java @@ -0,0 +1,17 @@ +package com.refinedmods.refinedstorage.blockentity.config; + +import com.refinedmods.refinedstorage.api.network.node.INetworkNodeProxy; +import com.refinedmods.refinedstorage.api.storage.AccessType; +import com.refinedmods.refinedstorage.blockentity.data.RSSerializers; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; +import net.minecraft.world.level.block.entity.BlockEntity; + +public interface IAccessType { + static > BlockEntitySynchronizationParameter createParameter() { + return new BlockEntitySynchronizationParameter<>(RSSerializers.ACCESS_TYPE_SERIALIZER, AccessType.INSERT_EXTRACT, t -> ((IAccessType) t.getNode()).getAccessType(), (t, v) -> ((IAccessType) t.getNode()).setAccessType(v)); + } + + AccessType getAccessType(); + + void setAccessType(AccessType accessType); +} \ No newline at end of file diff --git a/src/main/java/com/refinedmods/refinedstorage/blockentity/config/IComparable.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/config/IComparable.java new file mode 100644 index 000000000..61d4e5f38 --- /dev/null +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/config/IComparable.java @@ -0,0 +1,16 @@ +package com.refinedmods.refinedstorage.blockentity.config; + +import com.refinedmods.refinedstorage.api.network.node.INetworkNodeProxy; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; +import net.minecraft.network.syncher.EntityDataSerializers; +import net.minecraft.world.level.block.entity.BlockEntity; + +public interface IComparable { + static > BlockEntitySynchronizationParameter createParameter() { + return new BlockEntitySynchronizationParameter<>(EntityDataSerializers.INT, 0, t -> ((IComparable) t.getNode()).getCompare(), (t, v) -> ((IComparable) t.getNode()).setCompare(v)); + } + + int getCompare(); + + void setCompare(int compare); +} diff --git a/src/main/java/com/refinedmods/refinedstorage/blockentity/config/IPrioritizable.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/config/IPrioritizable.java new file mode 100644 index 000000000..ebcc92ca6 --- /dev/null +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/config/IPrioritizable.java @@ -0,0 +1,16 @@ +package com.refinedmods.refinedstorage.blockentity.config; + +import com.refinedmods.refinedstorage.api.network.node.INetworkNodeProxy; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; +import net.minecraft.network.syncher.EntityDataSerializers; +import net.minecraft.world.level.block.entity.BlockEntity; + +public interface IPrioritizable { + static > BlockEntitySynchronizationParameter createParameter() { + return new BlockEntitySynchronizationParameter<>(EntityDataSerializers.INT, 0, t -> ((IPrioritizable) t.getNode()).getPriority(), (t, v) -> ((IPrioritizable) t.getNode()).setPriority(v)); + } + + int getPriority(); + + void setPriority(int priority); +} diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/config/IRedstoneConfigurable.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/config/IRedstoneConfigurable.java similarity index 68% rename from src/main/java/com/refinedmods/refinedstorage/tile/config/IRedstoneConfigurable.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/config/IRedstoneConfigurable.java index be865d845..b4625d4b0 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/config/IRedstoneConfigurable.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/config/IRedstoneConfigurable.java @@ -1,4 +1,4 @@ -package com.refinedmods.refinedstorage.tile.config; +package com.refinedmods.refinedstorage.blockentity.config; public interface IRedstoneConfigurable { RedstoneMode getRedstoneMode(); diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/config/IType.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/config/IType.java similarity index 51% rename from src/main/java/com/refinedmods/refinedstorage/tile/config/IType.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/config/IType.java index 8f9cac2f5..219e90727 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/config/IType.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/config/IType.java @@ -1,9 +1,9 @@ -package com.refinedmods.refinedstorage.tile.config; +package com.refinedmods.refinedstorage.blockentity.config; import com.refinedmods.refinedstorage.api.network.node.INetworkNodeProxy; import com.refinedmods.refinedstorage.inventory.fluid.FluidInventory; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; -import com.refinedmods.refinedstorage.tile.data.TileDataParameterClientListener; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationClientListener; import net.minecraft.network.syncher.EntityDataSerializers; import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraftforge.items.IItemHandlerModifiable; @@ -14,15 +14,15 @@ public interface IType { int ITEMS = 0; int FLUIDS = 1; - static > TileDataParameter createParameter(@Nullable TileDataParameterClientListener clientListener) { - return new TileDataParameter<>(EntityDataSerializers.INT, ITEMS, t -> ((IType) t.getNode()).getType(), (t, v) -> { + static > BlockEntitySynchronizationParameter createParameter(@Nullable BlockEntitySynchronizationClientListener clientListener) { + return new BlockEntitySynchronizationParameter<>(EntityDataSerializers.INT, ITEMS, t -> ((IType) t.getNode()).getType(), (t, v) -> { if (v == IType.ITEMS || v == IType.FLUIDS) { ((IType) t.getNode()).setType(v); } }, clientListener); } - static > TileDataParameter createParameter() { + static > BlockEntitySynchronizationParameter createParameter() { return createParameter(null); } diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/config/IWhitelistBlacklist.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/config/IWhitelistBlacklist.java similarity index 84% rename from src/main/java/com/refinedmods/refinedstorage/tile/config/IWhitelistBlacklist.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/config/IWhitelistBlacklist.java index 974dd1e0e..66cd68aa6 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/config/IWhitelistBlacklist.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/config/IWhitelistBlacklist.java @@ -1,9 +1,9 @@ -package com.refinedmods.refinedstorage.tile.config; +package com.refinedmods.refinedstorage.blockentity.config; import com.refinedmods.refinedstorage.api.network.node.INetworkNodeProxy; import com.refinedmods.refinedstorage.apiimpl.API; import com.refinedmods.refinedstorage.inventory.fluid.FluidInventory; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; import net.minecraft.network.syncher.EntityDataSerializers; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.block.entity.BlockEntity; @@ -14,8 +14,8 @@ public interface IWhitelistBlacklist { int WHITELIST = 0; int BLACKLIST = 1; - static > TileDataParameter createParameter() { - return new TileDataParameter<>(EntityDataSerializers.INT, 0, t -> ((IWhitelistBlacklist) t.getNode()).getWhitelistBlacklistMode(), (t, v) -> { + static > BlockEntitySynchronizationParameter createParameter() { + return new BlockEntitySynchronizationParameter<>(EntityDataSerializers.INT, 0, t -> ((IWhitelistBlacklist) t.getNode()).getWhitelistBlacklistMode(), (t, v) -> { if (v == WHITELIST || v == BLACKLIST) { ((IWhitelistBlacklist) t.getNode()).setWhitelistBlacklistMode(v); } diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/config/RedstoneMode.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/config/RedstoneMode.java similarity index 71% rename from src/main/java/com/refinedmods/refinedstorage/tile/config/RedstoneMode.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/config/RedstoneMode.java index 4597a39fc..fa59a17ed 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/config/RedstoneMode.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/config/RedstoneMode.java @@ -1,6 +1,6 @@ -package com.refinedmods.refinedstorage.tile.config; +package com.refinedmods.refinedstorage.blockentity.config; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.syncher.EntityDataSerializers; import net.minecraft.world.level.block.entity.BlockEntity; @@ -22,8 +22,8 @@ public enum RedstoneMode { return id < 0 || id >= values().length ? IGNORE : values()[id]; } - public static TileDataParameter createParameter() { - return new TileDataParameter<>(EntityDataSerializers.INT, IGNORE.ordinal(), t -> t.getRedstoneMode().ordinal(), (t, v) -> t.setRedstoneMode(RedstoneMode.getById(v))); + public static BlockEntitySynchronizationParameter createParameter() { + return new BlockEntitySynchronizationParameter<>(EntityDataSerializers.INT, IGNORE.ordinal(), t -> t.getRedstoneMode().ordinal(), (t, v) -> t.setRedstoneMode(RedstoneMode.getById(v))); } public boolean isEnabled(boolean powered) { diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/craftingmonitor/CraftingMonitorTile.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/craftingmonitor/CraftingMonitorBlockEntity.java similarity index 50% rename from src/main/java/com/refinedmods/refinedstorage/tile/craftingmonitor/CraftingMonitorTile.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/craftingmonitor/CraftingMonitorBlockEntity.java index bf3d739af..075e92341 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/craftingmonitor/CraftingMonitorTile.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/craftingmonitor/CraftingMonitorBlockEntity.java @@ -1,9 +1,9 @@ -package com.refinedmods.refinedstorage.tile.craftingmonitor; +package com.refinedmods.refinedstorage.blockentity.craftingmonitor; -import com.refinedmods.refinedstorage.RSTiles; +import com.refinedmods.refinedstorage.RSBlockEntities; import com.refinedmods.refinedstorage.apiimpl.network.node.CraftingMonitorNetworkNode; -import com.refinedmods.refinedstorage.tile.NetworkNodeTile; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; +import com.refinedmods.refinedstorage.blockentity.NetworkNodeBlockEntity; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; import net.minecraft.core.BlockPos; import net.minecraft.network.syncher.EntityDataSerializers; import net.minecraft.world.level.Level; @@ -13,13 +13,13 @@ import javax.annotation.Nonnull; import java.util.Optional; import java.util.UUID; -public class CraftingMonitorTile extends NetworkNodeTile { - public CraftingMonitorTile(BlockPos pos, BlockState state) { - super(RSTiles.CRAFTING_MONITOR, pos, state); +public class CraftingMonitorBlockEntity extends NetworkNodeBlockEntity { + public CraftingMonitorBlockEntity(BlockPos pos, BlockState state) { + super(RSBlockEntities.CRAFTING_MONITOR, pos, state); dataManager.addWatchedParameter(TAB_SELECTED); dataManager.addWatchedParameter(TAB_PAGE); - } public static final TileDataParameter, CraftingMonitorTile> TAB_SELECTED = new TileDataParameter<>(EntityDataSerializers.OPTIONAL_UUID, Optional.empty(), t -> t.getNode().getTabSelected(), (t, v) -> { + } public static final BlockEntitySynchronizationParameter, CraftingMonitorBlockEntity> TAB_SELECTED = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.OPTIONAL_UUID, Optional.empty(), t -> t.getNode().getTabSelected(), (t, v) -> { if (v.isPresent() && t.getNode().getTabSelected().isPresent() && v.get().equals(t.getNode().getTabSelected().get())) { t.getNode().setTabSelected(Optional.empty()); } else { @@ -33,7 +33,7 @@ public class CraftingMonitorTile extends NetworkNodeTile TAB_PAGE = new TileDataParameter<>(EntityDataSerializers.INT, 0, t -> t.getNode().getTabPage(), (t, v) -> { + } public static final BlockEntitySynchronizationParameter TAB_PAGE = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.INT, 0, t -> t.getNode().getTabPage(), (t, v) -> { if (v >= 0) { t.getNode().setTabPage(v); t.getNode().markDirty(); diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/craftingmonitor/ICraftingMonitor.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/craftingmonitor/ICraftingMonitor.java similarity index 79% rename from src/main/java/com/refinedmods/refinedstorage/tile/craftingmonitor/ICraftingMonitor.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/craftingmonitor/ICraftingMonitor.java index 8c72e361c..cc3372d83 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/craftingmonitor/ICraftingMonitor.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/craftingmonitor/ICraftingMonitor.java @@ -1,8 +1,8 @@ -package com.refinedmods.refinedstorage.tile.craftingmonitor; +package com.refinedmods.refinedstorage.blockentity.craftingmonitor; import com.refinedmods.refinedstorage.api.autocrafting.ICraftingManager; import com.refinedmods.refinedstorage.api.autocrafting.task.ICraftingTask; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; import net.minecraft.network.chat.Component; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.entity.player.Player; @@ -19,7 +19,7 @@ public interface ICraftingMonitor { void onCancelled(ServerPlayer player, @Nullable UUID id); - TileDataParameter getRedstoneModeParameter(); + BlockEntitySynchronizationParameter getRedstoneModeParameter(); Collection getTasks(); diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/craftingmonitor/WirelessCraftingMonitor.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/craftingmonitor/WirelessCraftingMonitor.java similarity index 93% rename from src/main/java/com/refinedmods/refinedstorage/tile/craftingmonitor/WirelessCraftingMonitor.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/craftingmonitor/WirelessCraftingMonitor.java index b7dc5e692..ee0a7c319 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/craftingmonitor/WirelessCraftingMonitor.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/craftingmonitor/WirelessCraftingMonitor.java @@ -1,4 +1,4 @@ -package com.refinedmods.refinedstorage.tile.craftingmonitor; +package com.refinedmods.refinedstorage.blockentity.craftingmonitor; import com.refinedmods.refinedstorage.RS; import com.refinedmods.refinedstorage.api.autocrafting.ICraftingManager; @@ -8,7 +8,7 @@ import com.refinedmods.refinedstorage.inventory.player.PlayerSlot; import com.refinedmods.refinedstorage.item.NetworkItem; import com.refinedmods.refinedstorage.item.WirelessCraftingMonitorItem; import com.refinedmods.refinedstorage.network.craftingmonitor.WirelessCraftingMonitorSettingsUpdateMessage; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; import com.refinedmods.refinedstorage.util.NetworkUtils; import net.minecraft.core.BlockPos; import net.minecraft.network.chat.Component; @@ -70,7 +70,7 @@ public class WirelessCraftingMonitor implements ICraftingMonitor { } @Override - public TileDataParameter getRedstoneModeParameter() { + public BlockEntitySynchronizationParameter getRedstoneModeParameter() { return null; } @@ -100,7 +100,7 @@ public class WirelessCraftingMonitor implements ICraftingMonitor { private INetwork getNetwork() { Level level = server.getLevel(nodeDimension); if (level != null) { - return NetworkUtils.getNetworkFromNode(NetworkUtils.getNodeFromTile(level.getBlockEntity(nodePos))); + return NetworkUtils.getNetworkFromNode(NetworkUtils.getNodeFromBlockEntity(level.getBlockEntity(nodePos))); } return null; } diff --git a/src/main/java/com/refinedmods/refinedstorage/blockentity/data/BlockEntitySynchronizationClientListener.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/data/BlockEntitySynchronizationClientListener.java new file mode 100644 index 000000000..f84a17400 --- /dev/null +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/data/BlockEntitySynchronizationClientListener.java @@ -0,0 +1,5 @@ +package com.refinedmods.refinedstorage.blockentity.data; + +public interface BlockEntitySynchronizationClientListener { + void onChanged(boolean initial, T value); +} diff --git a/src/main/java/com/refinedmods/refinedstorage/blockentity/data/BlockEntitySynchronizationManager.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/data/BlockEntitySynchronizationManager.java new file mode 100644 index 000000000..2f04791d8 --- /dev/null +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/data/BlockEntitySynchronizationManager.java @@ -0,0 +1,74 @@ +package com.refinedmods.refinedstorage.blockentity.data; + +import com.refinedmods.refinedstorage.RS; +import com.refinedmods.refinedstorage.network.sync.BlockEntitySynchronizationParamaterUpdateMessage; +import net.minecraft.world.level.block.entity.BlockEntity; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.concurrent.CopyOnWriteArrayList; + +public class BlockEntitySynchronizationManager { + private static final Map REGISTRY = new HashMap<>(); + private static int lastId = 0; + private final BlockEntity blockEntity; + + private final List parameters = new ArrayList<>(); + private final List watchedParameters = new ArrayList<>(); + + private final List watchers = new CopyOnWriteArrayList<>(); + + public BlockEntitySynchronizationManager(BlockEntity blockEntity) { + this.blockEntity = blockEntity; + } + + public static void registerParameter(BlockEntitySynchronizationParameter parameter) { + parameter.setId(lastId); + + REGISTRY.put(lastId++, parameter); + } + + public static BlockEntitySynchronizationParameter getParameter(int id) { + return REGISTRY.get(id); + } + + public static void setParameter(BlockEntitySynchronizationParameter parameter, Object value) { + RS.NETWORK_HANDLER.sendToServer(new BlockEntitySynchronizationParamaterUpdateMessage(parameter, value)); + } + + public BlockEntity getBlockEntity() { + return blockEntity; + } + + public void addParameter(BlockEntitySynchronizationParameter parameter) { + parameters.add(parameter); + } + + public List getParameters() { + return parameters; + } + + public void addWatchedParameter(BlockEntitySynchronizationParameter parameter) { + addParameter(parameter); + + watchedParameters.add(parameter); + } + + public List getWatchedParameters() { + return watchedParameters; + } + + public void addWatcher(BlockEntitySynchronizationWatcher listener) { + watchers.add(listener); + } + + public void removeWatcher(BlockEntitySynchronizationWatcher listener) { + watchers.remove(listener); + } + + public void sendParameterToWatchers(BlockEntitySynchronizationParameter parameter) { + watchers.forEach(l -> l.sendParameter(false, parameter)); + } +} diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/data/TileDataParameter.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/data/BlockEntitySynchronizationParameter.java similarity index 65% rename from src/main/java/com/refinedmods/refinedstorage/tile/data/TileDataParameter.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/data/BlockEntitySynchronizationParameter.java index bb406cbed..b3e55e5f3 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/data/TileDataParameter.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/data/BlockEntitySynchronizationParameter.java @@ -1,4 +1,4 @@ -package com.refinedmods.refinedstorage.tile.data; +package com.refinedmods.refinedstorage.blockentity.data; import net.minecraft.network.syncher.EntityDataSerializer; import net.minecraft.world.level.block.entity.BlockEntity; @@ -7,25 +7,25 @@ import javax.annotation.Nullable; import java.util.function.BiConsumer; import java.util.function.Function; -public class TileDataParameter { +public class BlockEntitySynchronizationParameter { private final EntityDataSerializer serializer; private final Function valueProducer; @Nullable private final BiConsumer valueConsumer; @Nullable - private final TileDataParameterClientListener listener; + private final BlockEntitySynchronizationClientListener listener; private int id; private T value; - public TileDataParameter(EntityDataSerializer serializer, T defaultValue, Function producer) { + public BlockEntitySynchronizationParameter(EntityDataSerializer serializer, T defaultValue, Function producer) { this(serializer, defaultValue, producer, null); } - public TileDataParameter(EntityDataSerializer serializer, T defaultValue, Function producer, @Nullable BiConsumer consumer) { + public BlockEntitySynchronizationParameter(EntityDataSerializer serializer, T defaultValue, Function producer, @Nullable BiConsumer consumer) { this(serializer, defaultValue, producer, consumer, null); } - public TileDataParameter(EntityDataSerializer serializer, T defaultValue, Function producer, @Nullable BiConsumer consumer, @Nullable TileDataParameterClientListener listener) { + public BlockEntitySynchronizationParameter(EntityDataSerializer serializer, T defaultValue, Function producer, @Nullable BiConsumer consumer, @Nullable BlockEntitySynchronizationClientListener listener) { this.value = defaultValue; this.serializer = serializer; this.valueProducer = producer; diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/data/TileDataWatcher.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/data/BlockEntitySynchronizationWatcher.java similarity index 63% rename from src/main/java/com/refinedmods/refinedstorage/tile/data/TileDataWatcher.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/data/BlockEntitySynchronizationWatcher.java index 8c1b47e38..f47c51319 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/data/TileDataWatcher.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/data/BlockEntitySynchronizationWatcher.java @@ -1,16 +1,16 @@ -package com.refinedmods.refinedstorage.tile.data; +package com.refinedmods.refinedstorage.blockentity.data; import com.refinedmods.refinedstorage.RS; -import com.refinedmods.refinedstorage.network.tiledata.TileDataParameterMessage; +import com.refinedmods.refinedstorage.network.sync.BlockEntitySynchronizationParameterMessage; import net.minecraft.server.level.ServerPlayer; -public class TileDataWatcher { +public class BlockEntitySynchronizationWatcher { private final ServerPlayer player; - private final TileDataManager manager; + private final BlockEntitySynchronizationManager manager; private boolean sentInitial; private Object[] cache; - public TileDataWatcher(ServerPlayer player, TileDataManager manager) { + public BlockEntitySynchronizationWatcher(ServerPlayer player, BlockEntitySynchronizationManager manager) { this.player = player; this.manager = manager; @@ -35,9 +35,9 @@ public class TileDataWatcher { sentInitial = true; } else { for (int i = 0; i < manager.getWatchedParameters().size(); ++i) { - TileDataParameter parameter = manager.getWatchedParameters().get(i); + BlockEntitySynchronizationParameter parameter = manager.getWatchedParameters().get(i); - Object real = parameter.getValueProducer().apply(manager.getTile()); + Object real = parameter.getValueProducer().apply(manager.getBlockEntity()); Object cached = cache[i]; if (!real.equals(cached)) { @@ -52,7 +52,7 @@ public class TileDataWatcher { } } - public void sendParameter(boolean initial, TileDataParameter parameter) { - RS.NETWORK_HANDLER.sendTo(player, new TileDataParameterMessage(manager.getTile(), parameter, initial)); + public void sendParameter(boolean initial, BlockEntitySynchronizationParameter parameter) { + RS.NETWORK_HANDLER.sendTo(player, new BlockEntitySynchronizationParameterMessage(manager.getBlockEntity(), parameter, initial)); } } diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/data/RSSerializers.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/data/RSSerializers.java similarity index 97% rename from src/main/java/com/refinedmods/refinedstorage/tile/data/RSSerializers.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/data/RSSerializers.java index e857623e8..74a1a7802 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/data/RSSerializers.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/data/RSSerializers.java @@ -1,7 +1,7 @@ -package com.refinedmods.refinedstorage.tile.data; +package com.refinedmods.refinedstorage.blockentity.data; import com.refinedmods.refinedstorage.api.storage.AccessType; -import com.refinedmods.refinedstorage.tile.ClientNode; +import com.refinedmods.refinedstorage.blockentity.ClientNode; import com.refinedmods.refinedstorage.util.AccessTypeUtils; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.syncher.EntityDataAccessor; diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/grid/GridTile.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/grid/GridBlockEntity.java similarity index 55% rename from src/main/java/com/refinedmods/refinedstorage/tile/grid/GridTile.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/grid/GridBlockEntity.java index 325316c50..628085205 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/grid/GridTile.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/grid/GridBlockEntity.java @@ -1,15 +1,15 @@ -package com.refinedmods.refinedstorage.tile.grid; +package com.refinedmods.refinedstorage.blockentity.grid; -import com.refinedmods.refinedstorage.RSTiles; +import com.refinedmods.refinedstorage.RSBlockEntities; import com.refinedmods.refinedstorage.api.network.grid.GridType; import com.refinedmods.refinedstorage.api.network.grid.IGrid; import com.refinedmods.refinedstorage.apiimpl.network.node.GridNetworkNode; import com.refinedmods.refinedstorage.screen.BaseScreen; import com.refinedmods.refinedstorage.screen.grid.GridScreen; -import com.refinedmods.refinedstorage.tile.NetworkNodeTile; -import com.refinedmods.refinedstorage.tile.config.IType; -import com.refinedmods.refinedstorage.tile.data.RSSerializers; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; +import com.refinedmods.refinedstorage.blockentity.NetworkNodeBlockEntity; +import com.refinedmods.refinedstorage.blockentity.config.IType; +import com.refinedmods.refinedstorage.blockentity.data.RSSerializers; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.network.syncher.EntityDataSerializers; @@ -28,32 +28,32 @@ import java.util.ArrayList; import java.util.List; import java.util.Set; -public class GridTile extends NetworkNodeTile { - public static final TileDataParameter EXACT_PATTERN = new TileDataParameter<>(EntityDataSerializers.BOOLEAN, true, t -> t.getNode().isExactPattern(), (t, v) -> { +public class GridBlockEntity extends NetworkNodeBlockEntity { + public static final BlockEntitySynchronizationParameter EXACT_PATTERN = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.BOOLEAN, true, t -> t.getNode().isExactPattern(), (t, v) -> { t.getNode().setExactPattern(v); t.getNode().markDirty(); }, (initial, p) -> BaseScreen.executeLater(GridScreen.class, grid -> grid.updateExactPattern(p))); - public static final TileDataParameter PROCESSING_TYPE = IType.createParameter((initial, p) -> BaseScreen.executeLater(GridScreen.class, BaseScreen::init)); public static final TileDataParameter VIEW_TYPE = new TileDataParameter<>(EntityDataSerializers.INT, 0, t -> t.getNode().getViewType(), (t, v) -> { + public static final BlockEntitySynchronizationParameter PROCESSING_TYPE = IType.createParameter((initial, p) -> BaseScreen.executeLater(GridScreen.class, BaseScreen::init)); public static final BlockEntitySynchronizationParameter VIEW_TYPE = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.INT, 0, t -> t.getNode().getViewType(), (t, v) -> { if (IGrid.isValidViewType(v)) { t.getNode().setViewType(v); t.getNode().markDirty(); } }, (initial, p) -> trySortGrid(initial)); - public static final TileDataParameter>, GridTile> ALLOWED_ITEM_TAGS = new TileDataParameter<>(RSSerializers.LIST_OF_SET_SERIALIZER, new ArrayList<>(), t -> t.getNode().getAllowedTagList().getAllowedItemTags(), (t, v) -> t.getNode().getAllowedTagList().setAllowedItemTags(v)); - public static final TileDataParameter>, GridTile> ALLOWED_FLUID_TAGS = new TileDataParameter<>(RSSerializers.LIST_OF_SET_SERIALIZER, new ArrayList<>(), t -> t.getNode().getAllowedTagList().getAllowedFluidTags(), (t, v) -> t.getNode().getAllowedTagList().setAllowedFluidTags(v)); public static final TileDataParameter SORTING_DIRECTION = new TileDataParameter<>(EntityDataSerializers.INT, 0, t -> t.getNode().getSortingDirection(), (t, v) -> { + public static final BlockEntitySynchronizationParameter>, GridBlockEntity> ALLOWED_ITEM_TAGS = new BlockEntitySynchronizationParameter<>(RSSerializers.LIST_OF_SET_SERIALIZER, new ArrayList<>(), t -> t.getNode().getAllowedTagList().getAllowedItemTags(), (t, v) -> t.getNode().getAllowedTagList().setAllowedItemTags(v)); + public static final BlockEntitySynchronizationParameter>, GridBlockEntity> ALLOWED_FLUID_TAGS = new BlockEntitySynchronizationParameter<>(RSSerializers.LIST_OF_SET_SERIALIZER, new ArrayList<>(), t -> t.getNode().getAllowedTagList().getAllowedFluidTags(), (t, v) -> t.getNode().getAllowedTagList().setAllowedFluidTags(v)); public static final BlockEntitySynchronizationParameter SORTING_DIRECTION = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.INT, 0, t -> t.getNode().getSortingDirection(), (t, v) -> { if (IGrid.isValidSortingDirection(v)) { t.getNode().setSortingDirection(v); t.getNode().markDirty(); } }, (initial, p) -> trySortGrid(initial)); private final GridType type; - private final LazyOptional diskCapability = LazyOptional.of(() -> getNode().getPatterns()); public static final TileDataParameter SORTING_TYPE = new TileDataParameter<>(EntityDataSerializers.INT, 0, t -> t.getNode().getSortingType(), (t, v) -> { + private final LazyOptional diskCapability = LazyOptional.of(() -> getNode().getPatterns()); public static final BlockEntitySynchronizationParameter SORTING_TYPE = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.INT, 0, t -> t.getNode().getSortingType(), (t, v) -> { if (IGrid.isValidSortingType(v)) { t.getNode().setSortingType(v); t.getNode().markDirty(); } }, (initial, p) -> trySortGrid(initial)); - public GridTile(GridType type, BlockPos pos, BlockState state) { + public GridBlockEntity(GridType type, BlockPos pos, BlockState state) { super(getType(type), pos, state); this.type = type; @@ -76,23 +76,23 @@ public class GridTile extends NetworkNodeTile { if (!initial) { BaseScreen.executeLater(GridScreen.class, grid -> grid.getView().sort()); } - } public static final TileDataParameter SEARCH_BOX_MODE = new TileDataParameter<>(EntityDataSerializers.INT, 0, t -> t.getNode().getSearchBoxMode(), (t, v) -> { + } public static final BlockEntitySynchronizationParameter SEARCH_BOX_MODE = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.INT, 0, t -> t.getNode().getSearchBoxMode(), (t, v) -> { if (IGrid.isValidSearchBoxMode(v)) { t.getNode().setSearchBoxMode(v); t.getNode().markDirty(); } }, (initial, p) -> BaseScreen.executeLater(GridScreen.class, grid -> grid.getSearchField().setMode(p))); - public static BlockEntityType getType(GridType type) { + public static BlockEntityType getType(GridType type) { switch (type) { case NORMAL: - return RSTiles.GRID; + return RSBlockEntities.GRID; case CRAFTING: - return RSTiles.CRAFTING_GRID; + return RSBlockEntities.CRAFTING_GRID; case PATTERN: - return RSTiles.PATTERN_GRID; + return RSBlockEntities.PATTERN_GRID; case FLUID: - return RSTiles.FLUID_GRID; + return RSBlockEntities.FLUID_GRID; default: throw new IllegalArgumentException("Unknown grid type " + type); } @@ -102,7 +102,7 @@ public class GridTile extends NetworkNodeTile { @Nonnull public GridNetworkNode createNode(Level level, BlockPos pos) { return new GridNetworkNode(level, pos, type); - } public static final TileDataParameter SIZE = new TileDataParameter<>(EntityDataSerializers.INT, 0, t -> t.getNode().getSize(), (t, v) -> { + } public static final BlockEntitySynchronizationParameter SIZE = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.INT, 0, t -> t.getNode().getSize(), (t, v) -> { if (IGrid.isValidSize(v)) { t.getNode().setSize(v); t.getNode().markDirty(); @@ -118,17 +118,17 @@ public class GridTile extends NetworkNodeTile { return super.getCapability(cap, direction); } - public static final TileDataParameter TAB_SELECTED = new TileDataParameter<>(EntityDataSerializers.INT, 0, t -> t.getNode().getTabSelected(), (t, v) -> { + public static final BlockEntitySynchronizationParameter TAB_SELECTED = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.INT, 0, t -> t.getNode().getTabSelected(), (t, v) -> { t.getNode().setTabSelected(v == t.getNode().getTabSelected() ? -1 : v); t.getNode().markDirty(); }, (initial, p) -> BaseScreen.executeLater(GridScreen.class, grid -> grid.getView().sort())); - public static final TileDataParameter TAB_PAGE = new TileDataParameter<>(EntityDataSerializers.INT, 0, t -> t.getNode().getTabPage(), (t, v) -> { + public static final BlockEntitySynchronizationParameter TAB_PAGE = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.INT, 0, t -> t.getNode().getTabPage(), (t, v) -> { if (v >= 0 && v <= t.getNode().getTotalTabPages()) { t.getNode().setTabPage(v); t.getNode().markDirty(); } }); - public static final TileDataParameter PROCESSING_PATTERN = new TileDataParameter<>(EntityDataSerializers.BOOLEAN, false, t -> t.getNode().isProcessingPattern(), (t, v) -> { + public static final BlockEntitySynchronizationParameter PROCESSING_PATTERN = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.BOOLEAN, false, t -> t.getNode().isProcessingPattern(), (t, v) -> { t.getNode().setProcessingPattern(v); t.getNode().clearMatrix(); t.getNode().markDirty(); diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/grid/WirelessFluidGrid.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/grid/WirelessFluidGrid.java similarity index 98% rename from src/main/java/com/refinedmods/refinedstorage/tile/grid/WirelessFluidGrid.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/grid/WirelessFluidGrid.java index d6c3e4274..ff7b31381 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/grid/WirelessFluidGrid.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/grid/WirelessFluidGrid.java @@ -1,4 +1,4 @@ -package com.refinedmods.refinedstorage.tile.grid; +package com.refinedmods.refinedstorage.blockentity.grid; import com.refinedmods.refinedstorage.RS; import com.refinedmods.refinedstorage.api.network.INetwork; @@ -94,7 +94,7 @@ public class WirelessFluidGrid implements INetworkAwareGrid { public INetwork getNetwork() { Level level = server.getLevel(nodeDimension); if (level != null) { - return NetworkUtils.getNetworkFromNode(NetworkUtils.getNodeFromTile(level.getBlockEntity(nodePos))); + return NetworkUtils.getNetworkFromNode(NetworkUtils.getNodeFromBlockEntity(level.getBlockEntity(nodePos))); } return null; } diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/grid/WirelessGrid.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/grid/WirelessGrid.java similarity index 98% rename from src/main/java/com/refinedmods/refinedstorage/tile/grid/WirelessGrid.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/grid/WirelessGrid.java index e8b299331..627661044 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/grid/WirelessGrid.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/grid/WirelessGrid.java @@ -1,4 +1,4 @@ -package com.refinedmods.refinedstorage.tile.grid; +package com.refinedmods.refinedstorage.blockentity.grid; import com.refinedmods.refinedstorage.RS; import com.refinedmods.refinedstorage.api.network.INetwork; @@ -96,7 +96,7 @@ public class WirelessGrid implements INetworkAwareGrid { public INetwork getNetwork() { Level level = server.getLevel(nodeDimension); if (level != null) { - return NetworkUtils.getNetworkFromNode(NetworkUtils.getNodeFromTile(level.getBlockEntity(nodePos))); + return NetworkUtils.getNetworkFromNode(NetworkUtils.getNodeFromBlockEntity(level.getBlockEntity(nodePos))); } return null; } diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/grid/portable/IPortableGrid.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/grid/portable/IPortableGrid.java similarity index 95% rename from src/main/java/com/refinedmods/refinedstorage/tile/grid/portable/IPortableGrid.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/grid/portable/IPortableGrid.java index 643ec8eee..c580ecf72 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/grid/portable/IPortableGrid.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/grid/portable/IPortableGrid.java @@ -1,4 +1,4 @@ -package com.refinedmods.refinedstorage.tile.grid.portable; +package com.refinedmods.refinedstorage.blockentity.grid.portable; import com.refinedmods.refinedstorage.api.storage.cache.IStorageCache; import com.refinedmods.refinedstorage.api.storage.disk.IStorageDisk; diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/grid/portable/PortableGrid.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/grid/portable/PortableGrid.java similarity index 99% rename from src/main/java/com/refinedmods/refinedstorage/tile/grid/portable/PortableGrid.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/grid/portable/PortableGrid.java index 7d5e83b9e..3f77042f2 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/grid/portable/PortableGrid.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/grid/portable/PortableGrid.java @@ -1,4 +1,4 @@ -package com.refinedmods.refinedstorage.tile.grid.portable; +package com.refinedmods.refinedstorage.blockentity.grid.portable; import com.refinedmods.refinedstorage.RS; import com.refinedmods.refinedstorage.api.network.grid.GridType; diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/grid/portable/PortableGridTile.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/grid/portable/PortableGridBlockEntity.java similarity index 71% rename from src/main/java/com/refinedmods/refinedstorage/tile/grid/portable/PortableGridTile.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/grid/portable/PortableGridBlockEntity.java index eddfe9954..3f1e9e6c4 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/grid/portable/PortableGridTile.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/grid/portable/PortableGridBlockEntity.java @@ -1,58 +1,137 @@ -package com.refinedmods.refinedstorage.tile.grid.portable; +package com.refinedmods.refinedstorage.blockentity.grid.portable; +import com.refinedmods.refinedstorage.RS; +import com.refinedmods.refinedstorage.RSBlockEntities; +import com.refinedmods.refinedstorage.api.network.grid.GridType; +import com.refinedmods.refinedstorage.api.network.grid.ICraftingGridListener; import com.refinedmods.refinedstorage.api.network.grid.IGrid; +import com.refinedmods.refinedstorage.api.network.grid.IGridTab; +import com.refinedmods.refinedstorage.api.network.grid.handler.IFluidGridHandler; +import com.refinedmods.refinedstorage.api.network.grid.handler.IItemGridHandler; +import com.refinedmods.refinedstorage.api.storage.AccessType; +import com.refinedmods.refinedstorage.api.storage.StorageType; +import com.refinedmods.refinedstorage.api.storage.cache.IStorageCache; +import com.refinedmods.refinedstorage.api.storage.cache.IStorageCacheListener; +import com.refinedmods.refinedstorage.api.storage.cache.InvalidateCause; +import com.refinedmods.refinedstorage.api.storage.disk.IStorageDisk; import com.refinedmods.refinedstorage.api.storage.disk.IStorageDiskContainerContext; +import com.refinedmods.refinedstorage.api.storage.disk.IStorageDiskProvider; +import com.refinedmods.refinedstorage.api.storage.tracker.IStorageTracker; +import com.refinedmods.refinedstorage.api.util.IFilter; +import com.refinedmods.refinedstorage.api.util.IStackList; +import com.refinedmods.refinedstorage.apiimpl.API; +import com.refinedmods.refinedstorage.apiimpl.network.grid.handler.PortableFluidGridHandler; +import com.refinedmods.refinedstorage.apiimpl.network.grid.handler.PortableItemGridHandler; +import com.refinedmods.refinedstorage.apiimpl.network.node.DiskState; +import com.refinedmods.refinedstorage.apiimpl.network.node.GridNetworkNode; +import com.refinedmods.refinedstorage.apiimpl.storage.cache.PortableFluidStorageCache; +import com.refinedmods.refinedstorage.apiimpl.storage.cache.PortableItemStorageCache; +import com.refinedmods.refinedstorage.apiimpl.storage.cache.listener.PortableFluidGridStorageCacheListener; +import com.refinedmods.refinedstorage.apiimpl.storage.cache.listener.PortableItemGridStorageCacheListener; +import com.refinedmods.refinedstorage.apiimpl.storage.disk.PortableFluidStorageDisk; +import com.refinedmods.refinedstorage.apiimpl.storage.disk.PortableItemStorageDisk; +import com.refinedmods.refinedstorage.apiimpl.storage.tracker.FluidStorageTracker; +import com.refinedmods.refinedstorage.apiimpl.storage.tracker.ItemStorageTracker; +import com.refinedmods.refinedstorage.block.PortableGridBlock; +import com.refinedmods.refinedstorage.blockentity.BaseBlockEntity; +import com.refinedmods.refinedstorage.blockentity.config.IRedstoneConfigurable; +import com.refinedmods.refinedstorage.blockentity.config.RedstoneMode; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationManager; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; +import com.refinedmods.refinedstorage.blockentity.grid.GridBlockEntity; +import com.refinedmods.refinedstorage.inventory.item.BaseItemHandler; +import com.refinedmods.refinedstorage.inventory.item.FilterItemHandler; +import com.refinedmods.refinedstorage.inventory.item.validator.StorageDiskItemValidator; +import com.refinedmods.refinedstorage.inventory.listener.BlockEntityInventoryListener; +import com.refinedmods.refinedstorage.item.WirelessGridItem; +import com.refinedmods.refinedstorage.item.blockitem.PortableGridBlockItem; import com.refinedmods.refinedstorage.screen.BaseScreen; import com.refinedmods.refinedstorage.screen.grid.GridScreen; -import com.refinedmods.refinedstorage.tile.BaseTile; -import com.refinedmods.refinedstorage.tile.config.IRedstoneConfigurable; -import com.refinedmods.refinedstorage.tile.config.RedstoneMode; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; -import com.refinedmods.refinedstorage.tile.grid.GridTile; +import com.refinedmods.refinedstorage.util.StackUtils; +import com.refinedmods.refinedstorage.util.WorldUtils; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.nbt.ListTag; +import net.minecraft.nbt.Tag; +import net.minecraft.network.chat.Component; +import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.network.syncher.EntityDataSerializers; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.inventory.CraftingContainer; +import net.minecraft.world.inventory.ResultContainer; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraftforge.common.capabilities.Capability; +import net.minecraftforge.common.util.LazyOptional; +import net.minecraftforge.energy.CapabilityEnergy; +import net.minecraftforge.energy.EnergyStorage; +import net.minecraftforge.energy.IEnergyStorage; +import net.minecraftforge.fluids.FluidStack; +import net.minecraftforge.items.IItemHandlerModifiable; +import net.minecraftforge.server.ServerLifecycleHooks; import javax.annotation.Nonnull; import javax.annotation.Nullable; +import java.util.ArrayList; +import java.util.List; +import java.util.UUID; -public class PortableGridTile extends BaseTile implements IGrid, IPortableGrid, IRedstoneConfigurable, IStorageDiskContainerContext { - public static final TileDataParameter REDSTONE_MODE = RedstoneMode.createParameter(); - private static final String NBT_ITEM_STORAGE_TRACKER_ID = "ItemStorageTrackerId"; private static final TileDataParameter SORTING_DIRECTION = new TileDataParameter<>(EntityDataSerializers.INT, 0, PortableGridTile::getSortingDirection, (t, v) -> { +public class PortableGridBlockEntity extends BaseBlockEntity implements IGrid, IPortableGrid, IRedstoneConfigurable, IStorageDiskContainerContext { + private static final String NBT_ITEM_STORAGE_TRACKER_ID = "ItemStorageTrackerId"; + private static final String NBT_FLUID_STORAGE_TRACKER_ID = "FluidStorageTrackerId"; + private static final String NBT_TYPE = "Type"; + private static final String NBT_ENERGY = "Energy"; + private static final String NBT_ENCHANTMENTS = "Enchantments"; // @Volatile: Minecraft specific nbt key, see EnchantmentHelper + + public static final BlockEntitySynchronizationParameter REDSTONE_MODE = RedstoneMode.createParameter(); + + private static final BlockEntitySynchronizationParameter SORTING_DIRECTION = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.INT, 0, PortableGridBlockEntity::getSortingDirection, (t, v) -> { if (IGrid.isValidSortingDirection(v)) { t.setSortingDirection(v); t.setChanged(); } - }, (initial, p) -> GridTile.trySortGrid(initial)); - private static final String NBT_FLUID_STORAGE_TRACKER_ID = "FluidStorageTrackerId"; private static final TileDataParameter SORTING_TYPE = new TileDataParameter<>(EntityDataSerializers.INT, 0, PortableGridTile::getSortingType, (t, v) -> { + }, (initial, p) -> GridBlockEntity.trySortGrid(initial)); + + private static final BlockEntitySynchronizationParameter SORTING_TYPE = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.INT, 0, PortableGridBlockEntity::getSortingType, (t, v) -> { if (IGrid.isValidSortingType(v)) { t.setSortingType(v); t.setChanged(); } - }, (initial, p) -> GridTile.trySortGrid(initial)); - private static final String NBT_TYPE = "Type"; private static final TileDataParameter SEARCH_BOX_MODE = new TileDataParameter<>(EntityDataSerializers.INT, 0, PortableGridTile::getSearchBoxMode, (t, v) -> { + }, (initial, p) -> GridBlockEntity.trySortGrid(initial)); + + private static final BlockEntitySynchronizationParameter SEARCH_BOX_MODE = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.INT, 0, PortableGridBlockEntity::getSearchBoxMode, (t, v) -> { if (IGrid.isValidSearchBoxMode(v)) { t.setSearchBoxMode(v); t.setChanged(); } }, (initial, p) -> BaseScreen.executeLater(GridScreen.class, grid -> grid.getSearchField().setMode(p))); - private static final String NBT_ENERGY = "Energy"; private static final TileDataParameter SIZE = new TileDataParameter<>(EntityDataSerializers.INT, 0, PortableGridTile::getSize, (t, v) -> { + + private static final BlockEntitySynchronizationParameter SIZE = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.INT, 0, PortableGridBlockEntity::getSize, (t, v) -> { if (IGrid.isValidSize(v)) { t.setSize(v); t.setChanged(); } }, (initial, p) -> BaseScreen.executeLater(GridScreen.class, BaseScreen::init)); - private static final String NBT_ENCHANTMENTS = "Enchantments"; // @Volatile: Minecraft specific nbt key, see EnchantmentHelper private static final TileDataParameter TAB_SELECTED = new TileDataParameter<>(EntityDataSerializers.INT, 0, PortableGridTile::getTabSelected, (t, v) -> { + + private static final BlockEntitySynchronizationParameter TAB_SELECTED = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.INT, 0, PortableGridBlockEntity::getTabSelected, (t, v) -> { t.setTabSelected(v == t.getTabSelected() ? -1 : v); t.setChanged(); }, (initial, p) -> BaseScreen.executeLater(GridScreen.class, grid -> grid.getView().sort())); - private final PortableGridBlockItem.Type type; private static final TileDataParameter TAB_PAGE = new TileDataParameter<>(EntityDataSerializers.INT, 0, PortableGridTile::getTabPage, (t, v) -> { + + private static final BlockEntitySynchronizationParameter TAB_PAGE = new BlockEntitySynchronizationParameter<>(EntityDataSerializers.INT, 0, PortableGridBlockEntity::getTabPage, (t, v) -> { if (v >= 0 && v <= t.getTotalTabPages()) { t.setTabPage(v); t.setChanged(); } }); + + private final PortableGridBlockItem.Type type; private final List filters = new ArrayList<>(); private final List tabs = new ArrayList<>(); - private final FilterItemHandler filter = (FilterItemHandler) new FilterItemHandler(filters, tabs).addListener(new TileInventoryListener(this)); + private final FilterItemHandler filter = (FilterItemHandler) new FilterItemHandler(filters, tabs).addListener(new BlockEntityInventoryListener(this)); private final PortableItemGridHandler itemHandler = new PortableItemGridHandler(this, this); private final PortableFluidGridHandler fluidHandler = new PortableFluidGridHandler(this); private EnergyStorage energyStorage = createEnergyStorage(0); @@ -77,8 +156,9 @@ public class PortableGridTile extends BaseTile implements IGrid, IPortableGrid, private UUID fluidStorageTrackerId; private ListTag enchants = null; private boolean loadNextTick; - public PortableGridTile(PortableGridBlockItem.Type type, BlockPos pos, BlockState state) { - super(type == PortableGridBlockItem.Type.CREATIVE ? RSTiles.CREATIVE_PORTABLE_GRID : RSTiles.PORTABLE_GRID, pos, state); + + public PortableGridBlockEntity(PortableGridBlockItem.Type type, BlockPos pos, BlockState state) { + super(type == PortableGridBlockItem.Type.CREATIVE ? RSBlockEntities.CREATIVE_PORTABLE_GRID : RSBlockEntities.PORTABLE_GRID, pos, state); this.type = type; @@ -91,15 +171,17 @@ public class PortableGridTile extends BaseTile implements IGrid, IPortableGrid, dataManager.addWatchedParameter(TAB_PAGE); } - public static void serverTick(PortableGridTile tile) { - if (tile.loadNextTick) { - tile.active = tile.isGridActive(); - tile.diskState = tile.getDiskState(); - tile.loadNextTick = false; + public static void serverTick(PortableGridBlockEntity blockEntity) { + if (blockEntity.loadNextTick) { + blockEntity.active = blockEntity.isGridActive(); + blockEntity.diskState = blockEntity.getDiskState(); + blockEntity.loadNextTick = false; } - } private final BaseItemHandler disk = new BaseItemHandler(1) + } + + private final BaseItemHandler disk = new BaseItemHandler(1) .addValidator(new StorageDiskItemValidator()) - .addListener(new TileInventoryListener(this)) + .addListener(new BlockEntityInventoryListener(this)) .addListener((handler, slot, reading) -> { if (level != null && !level.isClientSide) { loadStorage(); @@ -132,7 +214,7 @@ public class PortableGridTile extends BaseTile implements IGrid, IPortableGrid, this.cache = new PortableFluidStorageCache(this); } - this.storage.setSettings(PortableGridTile.this::updateState, PortableGridTile.this); + this.storage.setSettings(PortableGridBlockEntity.this::updateState, PortableGridBlockEntity.this); } else { this.storage = null; this.cache = null; @@ -153,7 +235,7 @@ public class PortableGridTile extends BaseTile implements IGrid, IPortableGrid, loadNextTick = true; } - public void applyDataFromItemToTile(ItemStack stack) { + public void applyDataFromItemToBlockEntity(ItemStack stack) { this.sortingType = WirelessGridItem.getSortingType(stack); this.sortingDirection = WirelessGridItem.getSortingDirection(stack); this.searchBoxMode = WirelessGridItem.getSearchBoxMode(stack); @@ -187,7 +269,7 @@ public class PortableGridTile extends BaseTile implements IGrid, IPortableGrid, setChanged(); } - public void applyDataFromTileToItem(ItemStack stack) { + public void applyDataFromBlockEntityToItem(ItemStack stack) { stack.setTag(new CompoundTag()); stack.getTag().putInt(GridNetworkNode.NBT_SORTING_DIRECTION, sortingDirection); @@ -346,33 +428,33 @@ public class PortableGridTile extends BaseTile implements IGrid, IPortableGrid, @Override public void onSortingTypeChanged(int type) { - TileDataManager.setParameter(SORTING_TYPE, type); + BlockEntitySynchronizationManager.setParameter(SORTING_TYPE, type); } @Override public void onSortingDirectionChanged(int direction) { - TileDataManager.setParameter(SORTING_DIRECTION, direction); + BlockEntitySynchronizationManager.setParameter(SORTING_DIRECTION, direction); } @Override public void onSearchBoxModeChanged(int searchBoxMode) { - TileDataManager.setParameter(SEARCH_BOX_MODE, searchBoxMode); + BlockEntitySynchronizationManager.setParameter(SEARCH_BOX_MODE, searchBoxMode); } @Override public void onSizeChanged(int size) { - TileDataManager.setParameter(SIZE, size); + BlockEntitySynchronizationManager.setParameter(SIZE, size); } @Override public void onTabSelectionChanged(int tab) { - TileDataManager.setParameter(TAB_SELECTED, tab); + BlockEntitySynchronizationManager.setParameter(TAB_SELECTED, tab); } @Override public void onTabPageChanged(int page) { if (page >= 0 && page <= getTotalTabPages()) { - TileDataManager.setParameter(PortableGridTile.TAB_PAGE, page); + BlockEntitySynchronizationManager.setParameter(PortableGridBlockEntity.TAB_PAGE, page); } } @@ -692,18 +774,4 @@ public class PortableGridTile extends BaseTile implements IGrid, IPortableGrid, public AccessType getAccessType() { return AccessType.INSERT_EXTRACT; } - - - - - - - - - - - - - - } diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/grid/portable/PortableGridDiskState.java b/src/main/java/com/refinedmods/refinedstorage/blockentity/grid/portable/PortableGridDiskState.java similarity index 90% rename from src/main/java/com/refinedmods/refinedstorage/tile/grid/portable/PortableGridDiskState.java rename to src/main/java/com/refinedmods/refinedstorage/blockentity/grid/portable/PortableGridDiskState.java index fb7397270..1feccc6f7 100644 --- a/src/main/java/com/refinedmods/refinedstorage/tile/grid/portable/PortableGridDiskState.java +++ b/src/main/java/com/refinedmods/refinedstorage/blockentity/grid/portable/PortableGridDiskState.java @@ -1,4 +1,4 @@ -package com.refinedmods.refinedstorage.tile.grid.portable; +package com.refinedmods.refinedstorage.blockentity.grid.portable; import net.minecraft.util.StringRepresentable; diff --git a/src/main/java/com/refinedmods/refinedstorage/container/BaseContainer.java b/src/main/java/com/refinedmods/refinedstorage/container/BaseContainer.java index 208a40e0a..8a17aaecf 100644 --- a/src/main/java/com/refinedmods/refinedstorage/container/BaseContainer.java +++ b/src/main/java/com/refinedmods/refinedstorage/container/BaseContainer.java @@ -9,8 +9,8 @@ import com.refinedmods.refinedstorage.container.slot.legacy.LegacyDisabledSlot; import com.refinedmods.refinedstorage.container.slot.legacy.LegacyFilterSlot; import com.refinedmods.refinedstorage.container.transfer.TransferManager; import com.refinedmods.refinedstorage.network.FluidFilterSlotUpdateMessage; -import com.refinedmods.refinedstorage.tile.BaseTile; -import com.refinedmods.refinedstorage.tile.data.TileDataWatcher; +import com.refinedmods.refinedstorage.blockentity.BaseBlockEntity; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationWatcher; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.entity.player.Player; import net.minecraft.world.inventory.AbstractContainerMenu; @@ -27,20 +27,20 @@ import java.util.List; public abstract class BaseContainer extends AbstractContainerMenu { protected final TransferManager transferManager = new TransferManager(this); @Nullable - private final BaseTile tile; + private final BaseBlockEntity blockEntity; private final Player player; private final List fluidSlots = new ArrayList<>(); private final List fluids = new ArrayList<>(); @Nullable - private TileDataWatcher listener; + private BlockEntitySynchronizationWatcher listener; - protected BaseContainer(@Nullable MenuType type, @Nullable BaseTile tile, Player player, int windowId) { + protected BaseContainer(@Nullable MenuType type, @Nullable BaseBlockEntity blockEntity, Player player, int windowId) { super(type, windowId); - this.tile = tile; + this.blockEntity = blockEntity; - if (tile != null && player instanceof ServerPlayer) { - listener = new TileDataWatcher((ServerPlayer) player, tile.getDataManager()); + if (blockEntity != null && player instanceof ServerPlayer) { + listener = new BlockEntitySynchronizationWatcher((ServerPlayer) player, blockEntity.getDataManager()); } this.player = player; @@ -51,8 +51,8 @@ public abstract class BaseContainer extends AbstractContainerMenu { } @Nullable - public BaseTile getTile() { - return tile; + public BaseBlockEntity getBlockEntity() { + return blockEntity; } protected void addPlayerInventory(int xInventory, int yInventory) { @@ -155,14 +155,13 @@ public abstract class BaseContainer extends AbstractContainerMenu { @Override public boolean stillValid(Player player) { - return isTileStillThere(); + return isBlockEntityStillPresent(); } - private boolean isTileStillThere() { - if (tile != null) { - return tile.getLevel().getBlockEntity(tile.getBlockPos()) == tile; + private boolean isBlockEntityStillPresent() { + if (blockEntity != null) { + return blockEntity.getLevel().getBlockEntity(blockEntity.getBlockPos()) == blockEntity; } - return true; } @@ -195,7 +194,7 @@ public abstract class BaseContainer extends AbstractContainerMenu { // Prevent sending changes about a tile that doesn't exist anymore. // This prevents crashes when sending network node data (network node would crash because it no longer exists and we're querying it from the various tile data parameters). - if (listener != null && isTileStillThere()) { + if (listener != null && isBlockEntityStillPresent()) { listener.detectAndSendChanges(); } diff --git a/src/main/java/com/refinedmods/refinedstorage/container/ConstructorContainer.java b/src/main/java/com/refinedmods/refinedstorage/container/ConstructorContainer.java index a10dbbce1..b26e30f9c 100644 --- a/src/main/java/com/refinedmods/refinedstorage/container/ConstructorContainer.java +++ b/src/main/java/com/refinedmods/refinedstorage/container/ConstructorContainer.java @@ -3,13 +3,13 @@ package com.refinedmods.refinedstorage.container; import com.refinedmods.refinedstorage.RSContainers; import com.refinedmods.refinedstorage.container.slot.filter.FilterSlot; import com.refinedmods.refinedstorage.container.slot.filter.FluidFilterSlot; -import com.refinedmods.refinedstorage.tile.ConstructorTile; -import com.refinedmods.refinedstorage.tile.config.IType; +import com.refinedmods.refinedstorage.blockentity.ConstructorBlockEntity; +import com.refinedmods.refinedstorage.blockentity.config.IType; import net.minecraft.world.entity.player.Player; import net.minecraftforge.items.SlotItemHandler; public class ConstructorContainer extends BaseContainer { - public ConstructorContainer(ConstructorTile constructor, Player player, int windowId) { + public ConstructorContainer(ConstructorBlockEntity constructor, Player player, int windowId) { super(RSContainers.CONSTRUCTOR, constructor, player, windowId); for (int i = 0; i < 4; ++i) { diff --git a/src/main/java/com/refinedmods/refinedstorage/container/ControllerContainer.java b/src/main/java/com/refinedmods/refinedstorage/container/ControllerContainer.java index dd92aaf64..494f59a61 100644 --- a/src/main/java/com/refinedmods/refinedstorage/container/ControllerContainer.java +++ b/src/main/java/com/refinedmods/refinedstorage/container/ControllerContainer.java @@ -1,11 +1,11 @@ package com.refinedmods.refinedstorage.container; import com.refinedmods.refinedstorage.RSContainers; -import com.refinedmods.refinedstorage.tile.ControllerTile; +import com.refinedmods.refinedstorage.blockentity.ControllerBlockEntity; import net.minecraft.world.entity.player.Player; public class ControllerContainer extends BaseContainer { - public ControllerContainer(ControllerTile controller, Player player, int windowId) { + public ControllerContainer(ControllerBlockEntity controller, Player player, int windowId) { super(RSContainers.CONTROLLER, controller, player, windowId); addPlayerInventory(8, 99); diff --git a/src/main/java/com/refinedmods/refinedstorage/container/CrafterContainer.java b/src/main/java/com/refinedmods/refinedstorage/container/CrafterContainer.java index 600a2af53..bd05f1058 100644 --- a/src/main/java/com/refinedmods/refinedstorage/container/CrafterContainer.java +++ b/src/main/java/com/refinedmods/refinedstorage/container/CrafterContainer.java @@ -1,12 +1,12 @@ package com.refinedmods.refinedstorage.container; import com.refinedmods.refinedstorage.RSContainers; -import com.refinedmods.refinedstorage.tile.CrafterTile; +import com.refinedmods.refinedstorage.blockentity.CrafterBlockEntity; import net.minecraft.world.entity.player.Player; import net.minecraftforge.items.SlotItemHandler; public class CrafterContainer extends BaseContainer { - public CrafterContainer(CrafterTile crafter, Player player, int windowId) { + public CrafterContainer(CrafterBlockEntity crafter, Player player, int windowId) { super(RSContainers.CRAFTER, crafter, player, windowId); for (int i = 0; i < 9; ++i) { diff --git a/src/main/java/com/refinedmods/refinedstorage/container/CrafterManagerContainer.java b/src/main/java/com/refinedmods/refinedstorage/container/CrafterManagerContainer.java index 8d72a1d1f..9c511d9da 100644 --- a/src/main/java/com/refinedmods/refinedstorage/container/CrafterManagerContainer.java +++ b/src/main/java/com/refinedmods/refinedstorage/container/CrafterManagerContainer.java @@ -11,7 +11,7 @@ import com.refinedmods.refinedstorage.screen.IScreenInfoProvider; import com.refinedmods.refinedstorage.screen.grid.filtering.GridFilterParser; import com.refinedmods.refinedstorage.screen.grid.stack.IGridStack; import com.refinedmods.refinedstorage.screen.grid.stack.ItemGridStack; -import com.refinedmods.refinedstorage.tile.CrafterManagerTile; +import com.refinedmods.refinedstorage.blockentity.CrafterManagerBlockEntity; import net.minecraft.network.chat.Component; import net.minecraft.world.entity.player.Player; import net.minecraft.world.inventory.Slot; @@ -34,7 +34,7 @@ public class CrafterManagerContainer extends BaseContainer { private Map containerData; private int rows; - public CrafterManagerContainer(CrafterManagerTile crafterManager, Player player, int windowId) { + public CrafterManagerContainer(CrafterManagerBlockEntity crafterManager, Player player, int windowId) { super(RSContainers.CRAFTER_MANAGER, crafterManager, player, windowId); this.crafterManager = crafterManager.getNode(); diff --git a/src/main/java/com/refinedmods/refinedstorage/container/CraftingMonitorContainer.java b/src/main/java/com/refinedmods/refinedstorage/container/CraftingMonitorContainer.java index 084bd275e..01b1fa9ea 100644 --- a/src/main/java/com/refinedmods/refinedstorage/container/CraftingMonitorContainer.java +++ b/src/main/java/com/refinedmods/refinedstorage/container/CraftingMonitorContainer.java @@ -4,8 +4,8 @@ import com.refinedmods.refinedstorage.RS; import com.refinedmods.refinedstorage.api.autocrafting.ICraftingManager; import com.refinedmods.refinedstorage.api.autocrafting.craftingmonitor.ICraftingMonitorListener; import com.refinedmods.refinedstorage.network.craftingmonitor.CraftingMonitorUpdateMessage; -import com.refinedmods.refinedstorage.tile.craftingmonitor.CraftingMonitorTile; -import com.refinedmods.refinedstorage.tile.craftingmonitor.ICraftingMonitor; +import com.refinedmods.refinedstorage.blockentity.craftingmonitor.CraftingMonitorBlockEntity; +import com.refinedmods.refinedstorage.blockentity.craftingmonitor.ICraftingMonitor; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.entity.player.Player; import net.minecraft.world.inventory.MenuType; @@ -18,8 +18,8 @@ public class CraftingMonitorContainer extends BaseContainer implements ICrafting private final ICraftingMonitor craftingMonitor; private boolean addedListener; - public CraftingMonitorContainer(MenuType type, ICraftingMonitor craftingMonitor, @Nullable CraftingMonitorTile craftingMonitorTile, Player player, int windowId) { - super(type, craftingMonitorTile, player, windowId); + public CraftingMonitorContainer(MenuType type, ICraftingMonitor craftingMonitor, @Nullable CraftingMonitorBlockEntity blockEntity, Player player, int windowId) { + super(type, blockEntity, player, windowId); this.craftingMonitor = craftingMonitor; } diff --git a/src/main/java/com/refinedmods/refinedstorage/container/DestructorContainer.java b/src/main/java/com/refinedmods/refinedstorage/container/DestructorContainer.java index 20b9958b8..746051a54 100644 --- a/src/main/java/com/refinedmods/refinedstorage/container/DestructorContainer.java +++ b/src/main/java/com/refinedmods/refinedstorage/container/DestructorContainer.java @@ -3,13 +3,13 @@ package com.refinedmods.refinedstorage.container; import com.refinedmods.refinedstorage.RSContainers; import com.refinedmods.refinedstorage.container.slot.filter.FilterSlot; import com.refinedmods.refinedstorage.container.slot.filter.FluidFilterSlot; -import com.refinedmods.refinedstorage.tile.DestructorTile; -import com.refinedmods.refinedstorage.tile.config.IType; +import com.refinedmods.refinedstorage.blockentity.DestructorBlockEntity; +import com.refinedmods.refinedstorage.blockentity.config.IType; import net.minecraft.world.entity.player.Player; import net.minecraftforge.items.SlotItemHandler; public class DestructorContainer extends BaseContainer { - public DestructorContainer(DestructorTile destructor, Player player, int windowId) { + public DestructorContainer(DestructorBlockEntity destructor, Player player, int windowId) { super(RSContainers.DESTRUCTOR, destructor, player, windowId); for (int i = 0; i < 4; ++i) { diff --git a/src/main/java/com/refinedmods/refinedstorage/container/DetectorContainer.java b/src/main/java/com/refinedmods/refinedstorage/container/DetectorContainer.java index e389d41cf..ac6a04db1 100644 --- a/src/main/java/com/refinedmods/refinedstorage/container/DetectorContainer.java +++ b/src/main/java/com/refinedmods/refinedstorage/container/DetectorContainer.java @@ -3,12 +3,12 @@ package com.refinedmods.refinedstorage.container; import com.refinedmods.refinedstorage.RSContainers; import com.refinedmods.refinedstorage.container.slot.filter.FilterSlot; import com.refinedmods.refinedstorage.container.slot.filter.FluidFilterSlot; -import com.refinedmods.refinedstorage.tile.DetectorTile; -import com.refinedmods.refinedstorage.tile.config.IType; +import com.refinedmods.refinedstorage.blockentity.DetectorBlockEntity; +import com.refinedmods.refinedstorage.blockentity.config.IType; import net.minecraft.world.entity.player.Player; public class DetectorContainer extends BaseContainer { - public DetectorContainer(DetectorTile detector, Player player, int windowId) { + public DetectorContainer(DetectorBlockEntity detector, Player player, int windowId) { super(RSContainers.DETECTOR, detector, player, windowId); addSlot(new FilterSlot(detector.getNode().getItemFilters(), 0, 107, 20).setEnableHandler(() -> detector.getNode().getType() == IType.ITEMS)); diff --git a/src/main/java/com/refinedmods/refinedstorage/container/DiskDriveContainer.java b/src/main/java/com/refinedmods/refinedstorage/container/DiskDriveContainer.java index 1c7a9565d..b95667fb1 100644 --- a/src/main/java/com/refinedmods/refinedstorage/container/DiskDriveContainer.java +++ b/src/main/java/com/refinedmods/refinedstorage/container/DiskDriveContainer.java @@ -3,13 +3,13 @@ package com.refinedmods.refinedstorage.container; import com.refinedmods.refinedstorage.RSContainers; import com.refinedmods.refinedstorage.container.slot.filter.FilterSlot; import com.refinedmods.refinedstorage.container.slot.filter.FluidFilterSlot; -import com.refinedmods.refinedstorage.tile.DiskDriveTile; -import com.refinedmods.refinedstorage.tile.config.IType; +import com.refinedmods.refinedstorage.blockentity.DiskDriveBlockEntity; +import com.refinedmods.refinedstorage.blockentity.config.IType; import net.minecraft.world.entity.player.Player; import net.minecraftforge.items.SlotItemHandler; public class DiskDriveContainer extends BaseContainer { - public DiskDriveContainer(DiskDriveTile diskDrive, Player player, int windowId) { + public DiskDriveContainer(DiskDriveBlockEntity diskDrive, Player player, int windowId) { super(RSContainers.DISK_DRIVE, diskDrive, player, windowId); int x = 80; diff --git a/src/main/java/com/refinedmods/refinedstorage/container/DiskManipulatorContainer.java b/src/main/java/com/refinedmods/refinedstorage/container/DiskManipulatorContainer.java index 5493b8634..c298ed9a5 100644 --- a/src/main/java/com/refinedmods/refinedstorage/container/DiskManipulatorContainer.java +++ b/src/main/java/com/refinedmods/refinedstorage/container/DiskManipulatorContainer.java @@ -3,13 +3,13 @@ package com.refinedmods.refinedstorage.container; import com.refinedmods.refinedstorage.RSContainers; import com.refinedmods.refinedstorage.container.slot.filter.FilterSlot; import com.refinedmods.refinedstorage.container.slot.filter.FluidFilterSlot; -import com.refinedmods.refinedstorage.tile.DiskManipulatorTile; -import com.refinedmods.refinedstorage.tile.config.IType; +import com.refinedmods.refinedstorage.blockentity.DiskManipulatorBlockEntity; +import com.refinedmods.refinedstorage.blockentity.config.IType; import net.minecraft.world.entity.player.Player; import net.minecraftforge.items.SlotItemHandler; public class DiskManipulatorContainer extends BaseContainer { - public DiskManipulatorContainer(DiskManipulatorTile diskManipulator, Player player, int windowId) { + public DiskManipulatorContainer(DiskManipulatorBlockEntity diskManipulator, Player player, int windowId) { super(RSContainers.DISK_MANIPULATOR, diskManipulator, player, windowId); for (int i = 0; i < 4; ++i) { diff --git a/src/main/java/com/refinedmods/refinedstorage/container/ExporterContainer.java b/src/main/java/com/refinedmods/refinedstorage/container/ExporterContainer.java index 622b85a7d..e8cf92161 100644 --- a/src/main/java/com/refinedmods/refinedstorage/container/ExporterContainer.java +++ b/src/main/java/com/refinedmods/refinedstorage/container/ExporterContainer.java @@ -4,16 +4,16 @@ import com.refinedmods.refinedstorage.RSContainers; import com.refinedmods.refinedstorage.container.slot.filter.FilterSlot; import com.refinedmods.refinedstorage.container.slot.filter.FluidFilterSlot; import com.refinedmods.refinedstorage.item.UpgradeItem; -import com.refinedmods.refinedstorage.tile.ExporterTile; -import com.refinedmods.refinedstorage.tile.config.IType; +import com.refinedmods.refinedstorage.blockentity.ExporterBlockEntity; +import com.refinedmods.refinedstorage.blockentity.config.IType; import net.minecraft.world.entity.player.Player; import net.minecraftforge.items.SlotItemHandler; public class ExporterContainer extends BaseContainer { - private final ExporterTile exporter; + private final ExporterBlockEntity exporter; private boolean hasRegulatorMode; - public ExporterContainer(ExporterTile exporter, Player player, int windowId) { + public ExporterContainer(ExporterBlockEntity exporter, Player player, int windowId) { super(RSContainers.EXPORTER, exporter, player, windowId); this.exporter = exporter; diff --git a/src/main/java/com/refinedmods/refinedstorage/container/ExternalStorageContainer.java b/src/main/java/com/refinedmods/refinedstorage/container/ExternalStorageContainer.java index ec1156e50..bdbf7b28a 100644 --- a/src/main/java/com/refinedmods/refinedstorage/container/ExternalStorageContainer.java +++ b/src/main/java/com/refinedmods/refinedstorage/container/ExternalStorageContainer.java @@ -3,12 +3,12 @@ package com.refinedmods.refinedstorage.container; import com.refinedmods.refinedstorage.RSContainers; import com.refinedmods.refinedstorage.container.slot.filter.FilterSlot; import com.refinedmods.refinedstorage.container.slot.filter.FluidFilterSlot; -import com.refinedmods.refinedstorage.tile.ExternalStorageTile; -import com.refinedmods.refinedstorage.tile.config.IType; +import com.refinedmods.refinedstorage.blockentity.ExternalStorageBlockEntity; +import com.refinedmods.refinedstorage.blockentity.config.IType; import net.minecraft.world.entity.player.Player; public class ExternalStorageContainer extends BaseContainer { - public ExternalStorageContainer(ExternalStorageTile externalStorage, Player player, int windowId) { + public ExternalStorageContainer(ExternalStorageBlockEntity externalStorage, Player player, int windowId) { super(RSContainers.EXTERNAL_STORAGE, externalStorage, player, windowId); for (int i = 0; i < 9; ++i) { diff --git a/src/main/java/com/refinedmods/refinedstorage/container/FilterContainer.java b/src/main/java/com/refinedmods/refinedstorage/container/FilterContainer.java index 759cc47e8..2f9d67750 100644 --- a/src/main/java/com/refinedmods/refinedstorage/container/FilterContainer.java +++ b/src/main/java/com/refinedmods/refinedstorage/container/FilterContainer.java @@ -9,7 +9,7 @@ import com.refinedmods.refinedstorage.inventory.fluid.FluidInventory; import com.refinedmods.refinedstorage.inventory.item.ConfiguredIconInFilterItemHandler; import com.refinedmods.refinedstorage.inventory.item.ConfiguredItemsInFilterItemHandler; import com.refinedmods.refinedstorage.item.FilterItem; -import com.refinedmods.refinedstorage.tile.config.IType; +import com.refinedmods.refinedstorage.blockentity.config.IType; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; diff --git a/src/main/java/com/refinedmods/refinedstorage/container/FluidInterfaceContainer.java b/src/main/java/com/refinedmods/refinedstorage/container/FluidInterfaceContainer.java index 1c1210623..7e22aa48c 100644 --- a/src/main/java/com/refinedmods/refinedstorage/container/FluidInterfaceContainer.java +++ b/src/main/java/com/refinedmods/refinedstorage/container/FluidInterfaceContainer.java @@ -3,12 +3,12 @@ package com.refinedmods.refinedstorage.container; import com.refinedmods.refinedstorage.RSContainers; import com.refinedmods.refinedstorage.container.slot.filter.FilterSlot; import com.refinedmods.refinedstorage.container.slot.filter.FluidFilterSlot; -import com.refinedmods.refinedstorage.tile.FluidInterfaceTile; +import com.refinedmods.refinedstorage.blockentity.FluidInterfaceBlockEntity; import net.minecraft.world.entity.player.Player; import net.minecraftforge.items.SlotItemHandler; public class FluidInterfaceContainer extends BaseContainer { - public FluidInterfaceContainer(FluidInterfaceTile fluidInterface, Player player, int windowId) { + public FluidInterfaceContainer(FluidInterfaceBlockEntity fluidInterface, Player player, int windowId) { super(RSContainers.FLUID_INTERFACE, fluidInterface, player, windowId); for (int i = 0; i < 4; ++i) { diff --git a/src/main/java/com/refinedmods/refinedstorage/container/FluidStorageContainer.java b/src/main/java/com/refinedmods/refinedstorage/container/FluidStorageContainer.java index 2fd4fc3d5..cd6ffce52 100644 --- a/src/main/java/com/refinedmods/refinedstorage/container/FluidStorageContainer.java +++ b/src/main/java/com/refinedmods/refinedstorage/container/FluidStorageContainer.java @@ -2,11 +2,11 @@ package com.refinedmods.refinedstorage.container; import com.refinedmods.refinedstorage.RSContainers; import com.refinedmods.refinedstorage.container.slot.filter.FluidFilterSlot; -import com.refinedmods.refinedstorage.tile.FluidStorageTile; +import com.refinedmods.refinedstorage.blockentity.FluidStorageBlockEntity; import net.minecraft.world.entity.player.Player; public class FluidStorageContainer extends BaseContainer { - public FluidStorageContainer(FluidStorageTile fluidStorage, Player player, int windowId) { + public FluidStorageContainer(FluidStorageBlockEntity fluidStorage, Player player, int windowId) { super(RSContainers.FLUID_STORAGE_BLOCK, fluidStorage, player, windowId); for (int i = 0; i < 9; ++i) { diff --git a/src/main/java/com/refinedmods/refinedstorage/container/GridContainer.java b/src/main/java/com/refinedmods/refinedstorage/container/GridContainer.java index ae2828d15..abe437d49 100644 --- a/src/main/java/com/refinedmods/refinedstorage/container/GridContainer.java +++ b/src/main/java/com/refinedmods/refinedstorage/container/GridContainer.java @@ -17,9 +17,9 @@ import com.refinedmods.refinedstorage.container.slot.legacy.LegacyBaseSlot; import com.refinedmods.refinedstorage.container.slot.legacy.LegacyDisabledSlot; import com.refinedmods.refinedstorage.container.slot.legacy.LegacyFilterSlot; import com.refinedmods.refinedstorage.screen.IScreenInfoProvider; -import com.refinedmods.refinedstorage.tile.BaseTile; -import com.refinedmods.refinedstorage.tile.config.IType; -import com.refinedmods.refinedstorage.tile.grid.portable.IPortableGrid; +import com.refinedmods.refinedstorage.blockentity.BaseBlockEntity; +import com.refinedmods.refinedstorage.blockentity.config.IType; +import com.refinedmods.refinedstorage.blockentity.grid.portable.IPortableGrid; import net.minecraft.network.protocol.game.ClientboundContainerSetSlotPacket; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.entity.player.Player; @@ -44,8 +44,8 @@ public class GridContainer extends BaseContainer implements ICraftingGridListene private List fluidPatternSlots = new ArrayList<>(); private int patternScrollOffset; - public GridContainer(IGrid grid, @Nullable BaseTile gridTile, Player player, int windowId) { - super(RSContainers.GRID, gridTile, player, windowId); + public GridContainer(IGrid grid, @Nullable BaseBlockEntity blockEntity, Player player, int windowId) { + super(RSContainers.GRID, blockEntity, player, windowId); this.grid = grid; diff --git a/src/main/java/com/refinedmods/refinedstorage/container/ImporterContainer.java b/src/main/java/com/refinedmods/refinedstorage/container/ImporterContainer.java index a148abd65..791fa58ee 100644 --- a/src/main/java/com/refinedmods/refinedstorage/container/ImporterContainer.java +++ b/src/main/java/com/refinedmods/refinedstorage/container/ImporterContainer.java @@ -3,13 +3,13 @@ package com.refinedmods.refinedstorage.container; import com.refinedmods.refinedstorage.RSContainers; import com.refinedmods.refinedstorage.container.slot.filter.FilterSlot; import com.refinedmods.refinedstorage.container.slot.filter.FluidFilterSlot; -import com.refinedmods.refinedstorage.tile.ImporterTile; -import com.refinedmods.refinedstorage.tile.config.IType; +import com.refinedmods.refinedstorage.blockentity.ImporterBlockEntity; +import com.refinedmods.refinedstorage.blockentity.config.IType; import net.minecraft.world.entity.player.Player; import net.minecraftforge.items.SlotItemHandler; public class ImporterContainer extends BaseContainer { - public ImporterContainer(ImporterTile importer, Player player, int windowId) { + public ImporterContainer(ImporterBlockEntity importer, Player player, int windowId) { super(RSContainers.IMPORTER, importer, player, windowId); for (int i = 0; i < 4; ++i) { diff --git a/src/main/java/com/refinedmods/refinedstorage/container/InterfaceContainer.java b/src/main/java/com/refinedmods/refinedstorage/container/InterfaceContainer.java index ffbc6a080..c115c2bac 100644 --- a/src/main/java/com/refinedmods/refinedstorage/container/InterfaceContainer.java +++ b/src/main/java/com/refinedmods/refinedstorage/container/InterfaceContainer.java @@ -3,34 +3,34 @@ package com.refinedmods.refinedstorage.container; import com.refinedmods.refinedstorage.RSContainers; import com.refinedmods.refinedstorage.container.slot.OutputSlot; import com.refinedmods.refinedstorage.container.slot.filter.FilterSlot; -import com.refinedmods.refinedstorage.tile.InterfaceTile; +import com.refinedmods.refinedstorage.blockentity.InterfaceBlockEntity; import net.minecraft.world.entity.player.Player; import net.minecraftforge.items.SlotItemHandler; public class InterfaceContainer extends BaseContainer { - public InterfaceContainer(InterfaceTile tile, Player player, int windowId) { - super(RSContainers.INTERFACE, tile, player, windowId); + public InterfaceContainer(InterfaceBlockEntity blockEntity, Player player, int windowId) { + super(RSContainers.INTERFACE, blockEntity, player, windowId); for (int i = 0; i < 9; ++i) { - addSlot(new SlotItemHandler(tile.getNode().getImportItems(), i, 8 + (18 * i), 20)); + addSlot(new SlotItemHandler(blockEntity.getNode().getImportItems(), i, 8 + (18 * i), 20)); } for (int i = 0; i < 9; ++i) { - addSlot(new FilterSlot(tile.getNode().getExportFilterItems(), i, 8 + (18 * i), 54, FilterSlot.FILTER_ALLOW_SIZE)); + addSlot(new FilterSlot(blockEntity.getNode().getExportFilterItems(), i, 8 + (18 * i), 54, FilterSlot.FILTER_ALLOW_SIZE)); } for (int i = 0; i < 9; ++i) { - addSlot(new OutputSlot(tile.getNode().getExportItems(), i, 8 + (18 * i), 100)); + addSlot(new OutputSlot(blockEntity.getNode().getExportItems(), i, 8 + (18 * i), 100)); } for (int i = 0; i < 4; ++i) { - addSlot(new SlotItemHandler(tile.getNode().getUpgrades(), i, 187, 6 + (i * 18))); + addSlot(new SlotItemHandler(blockEntity.getNode().getUpgrades(), i, 187, 6 + (i * 18))); } addPlayerInventory(8, 134); - transferManager.addBiTransfer(player.getInventory(), tile.getNode().getUpgrades()); - transferManager.addBiTransfer(player.getInventory(), tile.getNode().getImportItems()); - transferManager.addTransfer(tile.getNode().getExportItems(), player.getInventory()); + transferManager.addBiTransfer(player.getInventory(), blockEntity.getNode().getUpgrades()); + transferManager.addBiTransfer(player.getInventory(), blockEntity.getNode().getImportItems()); + transferManager.addTransfer(blockEntity.getNode().getExportItems(), player.getInventory()); } } diff --git a/src/main/java/com/refinedmods/refinedstorage/container/NetworkTransmitterContainer.java b/src/main/java/com/refinedmods/refinedstorage/container/NetworkTransmitterContainer.java index ed7ce513b..a471d384c 100644 --- a/src/main/java/com/refinedmods/refinedstorage/container/NetworkTransmitterContainer.java +++ b/src/main/java/com/refinedmods/refinedstorage/container/NetworkTransmitterContainer.java @@ -1,12 +1,12 @@ package com.refinedmods.refinedstorage.container; import com.refinedmods.refinedstorage.RSContainers; -import com.refinedmods.refinedstorage.tile.NetworkTransmitterTile; +import com.refinedmods.refinedstorage.blockentity.NetworkTransmitterBlockEntity; import net.minecraft.world.entity.player.Player; import net.minecraftforge.items.SlotItemHandler; public class NetworkTransmitterContainer extends BaseContainer { - public NetworkTransmitterContainer(NetworkTransmitterTile networkTransmitter, Player player, int windowId) { + public NetworkTransmitterContainer(NetworkTransmitterBlockEntity networkTransmitter, Player player, int windowId) { super(RSContainers.NETWORK_TRANSMITTER, networkTransmitter, player, windowId); addSlot(new SlotItemHandler(networkTransmitter.getNode().getNetworkCard(), 0, 8, 20)); diff --git a/src/main/java/com/refinedmods/refinedstorage/container/RelayContainer.java b/src/main/java/com/refinedmods/refinedstorage/container/RelayContainer.java index 7f0ee5d1c..fef779230 100644 --- a/src/main/java/com/refinedmods/refinedstorage/container/RelayContainer.java +++ b/src/main/java/com/refinedmods/refinedstorage/container/RelayContainer.java @@ -1,11 +1,11 @@ package com.refinedmods.refinedstorage.container; import com.refinedmods.refinedstorage.RSContainers; -import com.refinedmods.refinedstorage.tile.RelayTile; +import com.refinedmods.refinedstorage.blockentity.RelayBlockEntity; import net.minecraft.world.entity.player.Player; public class RelayContainer extends BaseContainer { - public RelayContainer(RelayTile relay, Player player, int windowId) { + public RelayContainer(RelayBlockEntity relay, Player player, int windowId) { super(RSContainers.RELAY, relay, player, windowId); addPlayerInventory(8, 50); diff --git a/src/main/java/com/refinedmods/refinedstorage/container/SecurityManagerContainer.java b/src/main/java/com/refinedmods/refinedstorage/container/SecurityManagerContainer.java index ea3cebfdb..a6008601e 100644 --- a/src/main/java/com/refinedmods/refinedstorage/container/SecurityManagerContainer.java +++ b/src/main/java/com/refinedmods/refinedstorage/container/SecurityManagerContainer.java @@ -1,12 +1,12 @@ package com.refinedmods.refinedstorage.container; import com.refinedmods.refinedstorage.RSContainers; -import com.refinedmods.refinedstorage.tile.SecurityManagerTile; +import com.refinedmods.refinedstorage.blockentity.SecurityManagerBlockEntity; import net.minecraft.world.entity.player.Player; import net.minecraftforge.items.SlotItemHandler; public class SecurityManagerContainer extends BaseContainer { - public SecurityManagerContainer(SecurityManagerTile securityManager, Player player, int windowId) { + public SecurityManagerContainer(SecurityManagerBlockEntity securityManager, Player player, int windowId) { super(RSContainers.SECURITY_MANAGER, securityManager, player, windowId); int x = 8; diff --git a/src/main/java/com/refinedmods/refinedstorage/container/StorageContainer.java b/src/main/java/com/refinedmods/refinedstorage/container/StorageContainer.java index c3456ebea..1f69f0745 100644 --- a/src/main/java/com/refinedmods/refinedstorage/container/StorageContainer.java +++ b/src/main/java/com/refinedmods/refinedstorage/container/StorageContainer.java @@ -2,11 +2,11 @@ package com.refinedmods.refinedstorage.container; import com.refinedmods.refinedstorage.RSContainers; import com.refinedmods.refinedstorage.container.slot.filter.FilterSlot; -import com.refinedmods.refinedstorage.tile.StorageTile; +import com.refinedmods.refinedstorage.blockentity.StorageBlockEntity; import net.minecraft.world.entity.player.Player; public class StorageContainer extends BaseContainer { - public StorageContainer(StorageTile storage, Player player, int windowId) { + public StorageContainer(StorageBlockEntity storage, Player player, int windowId) { super(RSContainers.STORAGE_BLOCK, storage, player, windowId); for (int i = 0; i < 9; ++i) { diff --git a/src/main/java/com/refinedmods/refinedstorage/container/StorageMonitorContainer.java b/src/main/java/com/refinedmods/refinedstorage/container/StorageMonitorContainer.java index 84792eda9..71faa8354 100644 --- a/src/main/java/com/refinedmods/refinedstorage/container/StorageMonitorContainer.java +++ b/src/main/java/com/refinedmods/refinedstorage/container/StorageMonitorContainer.java @@ -3,12 +3,12 @@ package com.refinedmods.refinedstorage.container; import com.refinedmods.refinedstorage.RSContainers; import com.refinedmods.refinedstorage.container.slot.filter.FilterSlot; import com.refinedmods.refinedstorage.container.slot.filter.FluidFilterSlot; -import com.refinedmods.refinedstorage.tile.StorageMonitorTile; -import com.refinedmods.refinedstorage.tile.config.IType; +import com.refinedmods.refinedstorage.blockentity.StorageMonitorBlockEntity; +import com.refinedmods.refinedstorage.blockentity.config.IType; import net.minecraft.world.entity.player.Player; public class StorageMonitorContainer extends BaseContainer { - public StorageMonitorContainer(StorageMonitorTile storageMonitor, Player player, int windowId) { + public StorageMonitorContainer(StorageMonitorBlockEntity storageMonitor, Player player, int windowId) { super(RSContainers.STORAGE_MONITOR, storageMonitor, player, windowId); addSlot(new FilterSlot(storageMonitor.getNode().getItemFilters(), 0, 80, 20).setEnableHandler(() -> storageMonitor.getNode().getType() == IType.ITEMS)); diff --git a/src/main/java/com/refinedmods/refinedstorage/container/WirelessTransmitterContainer.java b/src/main/java/com/refinedmods/refinedstorage/container/WirelessTransmitterContainer.java index 305378f4b..42c7272ce 100644 --- a/src/main/java/com/refinedmods/refinedstorage/container/WirelessTransmitterContainer.java +++ b/src/main/java/com/refinedmods/refinedstorage/container/WirelessTransmitterContainer.java @@ -1,12 +1,12 @@ package com.refinedmods.refinedstorage.container; import com.refinedmods.refinedstorage.RSContainers; -import com.refinedmods.refinedstorage.tile.WirelessTransmitterTile; +import com.refinedmods.refinedstorage.blockentity.WirelessTransmitterBlockEntity; import net.minecraft.world.entity.player.Player; import net.minecraftforge.items.SlotItemHandler; public class WirelessTransmitterContainer extends BaseContainer { - public WirelessTransmitterContainer(WirelessTransmitterTile wirelessTransmitter, Player player, int windowId) { + public WirelessTransmitterContainer(WirelessTransmitterBlockEntity wirelessTransmitter, Player player, int windowId) { super(RSContainers.WIRELESS_TRANSMITTER, wirelessTransmitter, player, windowId); for (int i = 0; i < 4; ++i) { diff --git a/src/main/java/com/refinedmods/refinedstorage/container/factory/PositionalTileContainerFactory.java b/src/main/java/com/refinedmods/refinedstorage/container/factory/BlockEntityContainerFactory.java similarity index 62% rename from src/main/java/com/refinedmods/refinedstorage/container/factory/PositionalTileContainerFactory.java rename to src/main/java/com/refinedmods/refinedstorage/container/factory/BlockEntityContainerFactory.java index 244b4d61c..961826d70 100644 --- a/src/main/java/com/refinedmods/refinedstorage/container/factory/PositionalTileContainerFactory.java +++ b/src/main/java/com/refinedmods/refinedstorage/container/factory/BlockEntityContainerFactory.java @@ -7,10 +7,10 @@ import net.minecraft.world.inventory.AbstractContainerMenu; import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraftforge.network.IContainerFactory; -public class PositionalTileContainerFactory implements IContainerFactory { +public class BlockEntityContainerFactory implements IContainerFactory { private final Factory factory; - public PositionalTileContainerFactory(Factory factory) { + public BlockEntityContainerFactory(Factory factory) { this.factory = factory; } @@ -18,12 +18,12 @@ public class PositionalTileContainerFactory { - C create(int windowId, Inventory inv, T tile); + C create(int windowId, Inventory inv, T blockEntity); } } diff --git a/src/main/java/com/refinedmods/refinedstorage/container/factory/PositionalTileContainerProvider.java b/src/main/java/com/refinedmods/refinedstorage/container/factory/BlockEntityMenuProvider.java similarity index 68% rename from src/main/java/com/refinedmods/refinedstorage/container/factory/PositionalTileContainerProvider.java rename to src/main/java/com/refinedmods/refinedstorage/container/factory/BlockEntityMenuProvider.java index 5b2f1fb93..705af9117 100644 --- a/src/main/java/com/refinedmods/refinedstorage/container/factory/PositionalTileContainerProvider.java +++ b/src/main/java/com/refinedmods/refinedstorage/container/factory/BlockEntityMenuProvider.java @@ -10,12 +10,12 @@ import net.minecraft.world.level.block.entity.BlockEntity; import javax.annotation.Nullable; -public class PositionalTileContainerProvider implements MenuProvider { +public class BlockEntityMenuProvider implements MenuProvider { private final Component name; private final Provider provider; private final BlockPos pos; - public PositionalTileContainerProvider(Component name, Provider provider, BlockPos pos) { + public BlockEntityMenuProvider(Component name, Provider provider, BlockPos pos) { this.name = name; this.provider = provider; this.pos = pos; @@ -29,12 +29,12 @@ public class PositionalTileContainerProvider implements M @Nullable @Override public AbstractContainerMenu createMenu(int windowId, Inventory inventory, Player player) { - T tile = (T) player.level.getBlockEntity(pos); + T blockEntity = (T) player.level.getBlockEntity(pos); - return provider.create(tile, windowId, inventory, player); + return provider.create(blockEntity, windowId, inventory, player); } public interface Provider { - AbstractContainerMenu create(T tile, int windowId, Inventory inventory, Player player); + AbstractContainerMenu create(T blockEntity, int windowId, Inventory inventory, Player player); } } diff --git a/src/main/java/com/refinedmods/refinedstorage/container/factory/CrafterManagerContainerFactory.java b/src/main/java/com/refinedmods/refinedstorage/container/factory/CrafterManagerContainerFactory.java index 077f224e2..d28196821 100644 --- a/src/main/java/com/refinedmods/refinedstorage/container/factory/CrafterManagerContainerFactory.java +++ b/src/main/java/com/refinedmods/refinedstorage/container/factory/CrafterManagerContainerFactory.java @@ -2,7 +2,7 @@ package com.refinedmods.refinedstorage.container.factory; import com.refinedmods.refinedstorage.container.CrafterManagerContainer; import com.refinedmods.refinedstorage.screen.EmptyScreenInfoProvider; -import com.refinedmods.refinedstorage.tile.CrafterManagerTile; +import com.refinedmods.refinedstorage.blockentity.CrafterManagerBlockEntity; import net.minecraft.core.BlockPos; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.world.entity.player.Inventory; @@ -24,7 +24,7 @@ public class CrafterManagerContainerFactory implements IContainerFactory> containerData = ((CrafterManagerTile) level.getBlockEntity(pos)).getNode().getNetwork().getCraftingManager().getNamedContainers(); + Map> containerData = ((CrafterManagerBlockEntity) level.getBlockEntity(pos)).getNode().getNetwork().getCraftingManager().getNamedContainers(); buf.writeInt(containerData.size()); @@ -52,7 +52,7 @@ public class CrafterManagerContainerProvider implements MenuProvider { @Nullable @Override public AbstractContainerMenu createMenu(int windowId, Inventory playerInventory, Player playerEntity) { - CrafterManagerContainer container = new CrafterManagerContainer(tile, playerEntity, windowId); + CrafterManagerContainer container = new CrafterManagerContainer(blockEntity, playerEntity, windowId); container.setScreenInfoProvider(new EmptyScreenInfoProvider()); container.initSlotsServer(); diff --git a/src/main/java/com/refinedmods/refinedstorage/container/factory/CraftingMonitorContainerFactory.java b/src/main/java/com/refinedmods/refinedstorage/container/factory/CraftingMonitorContainerFactory.java index 603921e2f..9e2f9c985 100644 --- a/src/main/java/com/refinedmods/refinedstorage/container/factory/CraftingMonitorContainerFactory.java +++ b/src/main/java/com/refinedmods/refinedstorage/container/factory/CraftingMonitorContainerFactory.java @@ -2,7 +2,7 @@ package com.refinedmods.refinedstorage.container.factory; import com.refinedmods.refinedstorage.RSContainers; import com.refinedmods.refinedstorage.container.CraftingMonitorContainer; -import com.refinedmods.refinedstorage.tile.craftingmonitor.CraftingMonitorTile; +import com.refinedmods.refinedstorage.blockentity.craftingmonitor.CraftingMonitorBlockEntity; import net.minecraft.core.BlockPos; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.world.entity.player.Inventory; @@ -13,8 +13,8 @@ public class CraftingMonitorContainerFactory implements IContainerFactory containerType; - public CraftingMonitorContainerProvider(MenuType containerType, ICraftingMonitor craftingMonitor, @Nullable CraftingMonitorTile tile) { + public CraftingMonitorMenuProvider(MenuType containerType, ICraftingMonitor craftingMonitor, @Nullable CraftingMonitorBlockEntity blockEntity) { this.containerType = containerType; this.craftingMonitor = craftingMonitor; - this.tile = tile; + this.blockEntity = blockEntity; } @Override @@ -32,6 +32,6 @@ public class CraftingMonitorContainerProvider implements MenuProvider { @Nullable @Override public AbstractContainerMenu createMenu(int windowId, Inventory playerInventory, Player playerEntity) { - return new CraftingMonitorContainer(containerType, craftingMonitor, tile, playerEntity, windowId); + return new CraftingMonitorContainer(containerType, craftingMonitor, blockEntity, playerEntity, windowId); } } diff --git a/src/main/java/com/refinedmods/refinedstorage/container/factory/GridContainerFactory.java b/src/main/java/com/refinedmods/refinedstorage/container/factory/GridContainerFactory.java index 1fc99302a..9a01dd30b 100644 --- a/src/main/java/com/refinedmods/refinedstorage/container/factory/GridContainerFactory.java +++ b/src/main/java/com/refinedmods/refinedstorage/container/factory/GridContainerFactory.java @@ -4,7 +4,7 @@ import com.refinedmods.refinedstorage.api.network.grid.IGrid; import com.refinedmods.refinedstorage.apiimpl.API; import com.refinedmods.refinedstorage.container.GridContainer; import com.refinedmods.refinedstorage.inventory.player.PlayerSlot; -import com.refinedmods.refinedstorage.tile.BaseTile; +import com.refinedmods.refinedstorage.blockentity.BaseBlockEntity; import net.minecraft.core.BlockPos; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.resources.ResourceLocation; @@ -34,6 +34,6 @@ public class GridContainerFactory implements IContainerFactory { Pair grid = API.instance().getGridManager().createGrid(id, inv.player, stack, pos, slot); - return new GridContainer(grid.getLeft(), grid.getRight() instanceof BaseTile ? (BaseTile) grid.getRight() : null, inv.player, windowId); + return new GridContainer(grid.getLeft(), grid.getRight() instanceof BaseBlockEntity ? (BaseBlockEntity) grid.getRight() : null, inv.player, windowId); } } diff --git a/src/main/java/com/refinedmods/refinedstorage/container/factory/GridContainerProvider.java b/src/main/java/com/refinedmods/refinedstorage/container/factory/GridMenuProvider.java similarity index 70% rename from src/main/java/com/refinedmods/refinedstorage/container/factory/GridContainerProvider.java rename to src/main/java/com/refinedmods/refinedstorage/container/factory/GridMenuProvider.java index 040e68d01..7cebc1e2b 100644 --- a/src/main/java/com/refinedmods/refinedstorage/container/factory/GridContainerProvider.java +++ b/src/main/java/com/refinedmods/refinedstorage/container/factory/GridMenuProvider.java @@ -3,7 +3,7 @@ package com.refinedmods.refinedstorage.container.factory; import com.refinedmods.refinedstorage.api.network.grid.IGrid; import com.refinedmods.refinedstorage.container.GridContainer; import com.refinedmods.refinedstorage.screen.EmptyScreenInfoProvider; -import com.refinedmods.refinedstorage.tile.BaseTile; +import com.refinedmods.refinedstorage.blockentity.BaseBlockEntity; import net.minecraft.network.chat.Component; import net.minecraft.world.MenuProvider; import net.minecraft.world.entity.player.Inventory; @@ -13,13 +13,13 @@ import net.minecraft.world.level.block.entity.BlockEntity; import javax.annotation.Nullable; -public class GridContainerProvider implements MenuProvider { +public class GridMenuProvider implements MenuProvider { private final IGrid grid; - private final BlockEntity tile; + private final BlockEntity blockEntity; - public GridContainerProvider(IGrid grid, BlockEntity tile) { + public GridMenuProvider(IGrid grid, BlockEntity blockEntity) { this.grid = grid; - this.tile = tile; + this.blockEntity = blockEntity; } @Override @@ -30,7 +30,7 @@ public class GridContainerProvider implements MenuProvider { @Nullable @Override public AbstractContainerMenu createMenu(int windowId, Inventory inv, Player player) { - GridContainer c = new GridContainer(grid, tile instanceof BaseTile ? (BaseTile) tile : null, player, windowId); + GridContainer c = new GridContainer(grid, blockEntity instanceof BaseBlockEntity ? (BaseBlockEntity) blockEntity : null, player, windowId); c.setScreenInfoProvider(new EmptyScreenInfoProvider()); c.initSlots(); diff --git a/src/main/java/com/refinedmods/refinedstorage/container/factory/WirelessCraftingMonitorContainerFactory.java b/src/main/java/com/refinedmods/refinedstorage/container/factory/WirelessCraftingMonitorContainerFactory.java index 16b5351e8..7ab72a1a2 100644 --- a/src/main/java/com/refinedmods/refinedstorage/container/factory/WirelessCraftingMonitorContainerFactory.java +++ b/src/main/java/com/refinedmods/refinedstorage/container/factory/WirelessCraftingMonitorContainerFactory.java @@ -3,7 +3,7 @@ package com.refinedmods.refinedstorage.container.factory; import com.refinedmods.refinedstorage.RSContainers; import com.refinedmods.refinedstorage.container.CraftingMonitorContainer; import com.refinedmods.refinedstorage.inventory.player.PlayerSlot; -import com.refinedmods.refinedstorage.tile.craftingmonitor.WirelessCraftingMonitor; +import com.refinedmods.refinedstorage.blockentity.craftingmonitor.WirelessCraftingMonitor; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.item.ItemStack; diff --git a/src/main/java/com/refinedmods/refinedstorage/container/transfer/FilterInventoryWrapper.java b/src/main/java/com/refinedmods/refinedstorage/container/transfer/FilterInventoryWrapper.java index 5b7291dc3..284dba617 100644 --- a/src/main/java/com/refinedmods/refinedstorage/container/transfer/FilterInventoryWrapper.java +++ b/src/main/java/com/refinedmods/refinedstorage/container/transfer/FilterInventoryWrapper.java @@ -1,7 +1,7 @@ package com.refinedmods.refinedstorage.container.transfer; import com.refinedmods.refinedstorage.inventory.fluid.FluidInventory; -import com.refinedmods.refinedstorage.tile.config.IType; +import com.refinedmods.refinedstorage.blockentity.config.IType; import net.minecraft.world.item.ItemStack; import net.minecraftforge.items.IItemHandlerModifiable; diff --git a/src/main/java/com/refinedmods/refinedstorage/inventory/listener/TileInventoryListener.java b/src/main/java/com/refinedmods/refinedstorage/inventory/listener/BlockEntityInventoryListener.java similarity index 54% rename from src/main/java/com/refinedmods/refinedstorage/inventory/listener/TileInventoryListener.java rename to src/main/java/com/refinedmods/refinedstorage/inventory/listener/BlockEntityInventoryListener.java index 4730a25c8..4b022b7e1 100644 --- a/src/main/java/com/refinedmods/refinedstorage/inventory/listener/TileInventoryListener.java +++ b/src/main/java/com/refinedmods/refinedstorage/inventory/listener/BlockEntityInventoryListener.java @@ -3,17 +3,17 @@ package com.refinedmods.refinedstorage.inventory.listener; import com.refinedmods.refinedstorage.inventory.item.BaseItemHandler; import net.minecraft.world.level.block.entity.BlockEntity; -public class TileInventoryListener implements InventoryListener { - private final BlockEntity tile; +public class BlockEntityInventoryListener implements InventoryListener { + private final BlockEntity blockEntity; - public TileInventoryListener(BlockEntity tile) { - this.tile = tile; + public BlockEntityInventoryListener(BlockEntity blockEntity) { + this.blockEntity = blockEntity; } @Override public void onChanged(BaseItemHandler handler, int slot, boolean reading) { if (!reading) { - tile.setChanged(); + blockEntity.setChanged(); } } } diff --git a/src/main/java/com/refinedmods/refinedstorage/item/CoverItem.java b/src/main/java/com/refinedmods/refinedstorage/item/CoverItem.java index 01a20dc20..6cf97eb7a 100644 --- a/src/main/java/com/refinedmods/refinedstorage/item/CoverItem.java +++ b/src/main/java/com/refinedmods/refinedstorage/item/CoverItem.java @@ -9,7 +9,7 @@ import com.refinedmods.refinedstorage.apiimpl.network.node.cover.Cover; import com.refinedmods.refinedstorage.apiimpl.network.node.cover.CoverManager; import com.refinedmods.refinedstorage.apiimpl.network.node.cover.CoverType; import com.refinedmods.refinedstorage.block.CableBlock; -import com.refinedmods.refinedstorage.tile.NetworkNodeTile; +import com.refinedmods.refinedstorage.blockentity.NetworkNodeBlockEntity; import com.refinedmods.refinedstorage.util.WorldUtils; import net.minecraft.ChatFormatting; import net.minecraft.core.BlockPos; @@ -115,7 +115,7 @@ public class CoverItem extends Item { ItemStack stack = context.getPlayer().getItemInHand(context.getHand()); - BlockEntity tile = level.getBlockEntity(pos); + BlockEntity blockEntity = level.getBlockEntity(pos); // Support placing on the bottom side without too much hassle. if (!canPlaceOn(level, pos, facing)) { @@ -123,16 +123,16 @@ public class CoverItem extends Item { facing = Direction.DOWN; - tile = level.getBlockEntity(pos); + blockEntity = level.getBlockEntity(pos); } if (canPlaceOn(level, pos, facing)) { if (level.isClientSide) { - ModelDataManager.requestModelDataRefresh(tile); + ModelDataManager.requestModelDataRefresh(blockEntity); return InteractionResult.SUCCESS; } - INetworkNode node = ((NetworkNodeTile) tile).getNode(); + INetworkNode node = ((NetworkNodeBlockEntity) blockEntity).getNode(); if (node.getNetwork() != null && !node.getNetwork().getSecurityManager().hasPermission(Permission.BUILD, context.getPlayer())) { WorldUtils.sendNoPermissionMessage(context.getPlayer()); @@ -156,8 +156,8 @@ public class CoverItem extends Item { private boolean canPlaceOn(Level level, BlockPos pos, Direction facing) { - return level.getBlockEntity(pos) instanceof NetworkNodeTile - && ((NetworkNodeTile) level.getBlockEntity(pos)).getNode() instanceof ICoverable + return level.getBlockEntity(pos) instanceof NetworkNodeBlockEntity + && ((NetworkNodeBlockEntity) level.getBlockEntity(pos)).getNode() instanceof ICoverable && !CableBlock.hasVisualConnectionOnSide(level.getBlockState(pos), facing); } diff --git a/src/main/java/com/refinedmods/refinedstorage/item/FilterItem.java b/src/main/java/com/refinedmods/refinedstorage/item/FilterItem.java index dbf84e26f..ef3e83cc6 100644 --- a/src/main/java/com/refinedmods/refinedstorage/item/FilterItem.java +++ b/src/main/java/com/refinedmods/refinedstorage/item/FilterItem.java @@ -8,7 +8,7 @@ import com.refinedmods.refinedstorage.container.FilterContainer; import com.refinedmods.refinedstorage.inventory.fluid.ConfiguredFluidsInFilterItemHandler; import com.refinedmods.refinedstorage.inventory.item.ConfiguredItemsInFilterItemHandler; import com.refinedmods.refinedstorage.render.Styles; -import com.refinedmods.refinedstorage.tile.config.IType; +import com.refinedmods.refinedstorage.blockentity.config.IType; import com.refinedmods.refinedstorage.util.RenderUtils; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; diff --git a/src/main/java/com/refinedmods/refinedstorage/item/NetworkItem.java b/src/main/java/com/refinedmods/refinedstorage/item/NetworkItem.java index 2b8cddbd4..c1e0062c5 100644 --- a/src/main/java/com/refinedmods/refinedstorage/item/NetworkItem.java +++ b/src/main/java/com/refinedmods/refinedstorage/item/NetworkItem.java @@ -104,7 +104,7 @@ public abstract class NetworkItem extends EnergyItem implements INetworkItemProv return; } - INetwork network = NetworkUtils.getNetworkFromNode(NetworkUtils.getNodeFromTile(nodeWorld.getBlockEntity(new BlockPos(getX(stack), getY(stack), getZ(stack))))); + INetwork network = NetworkUtils.getNetworkFromNode(NetworkUtils.getNodeFromBlockEntity(nodeWorld.getBlockEntity(new BlockPos(getX(stack), getY(stack), getZ(stack))))); if (network == null) { onError.accept(notFound); return; @@ -131,7 +131,7 @@ public abstract class NetworkItem extends EnergyItem implements INetworkItemProv public InteractionResult useOn(UseOnContext ctx) { ItemStack stack = ctx.getPlayer().getItemInHand(ctx.getHand()); - INetwork network = NetworkUtils.getNetworkFromNode(NetworkUtils.getNodeFromTile(ctx.getLevel().getBlockEntity(ctx.getClickedPos()))); + INetwork network = NetworkUtils.getNetworkFromNode(NetworkUtils.getNodeFromBlockEntity(ctx.getLevel().getBlockEntity(ctx.getClickedPos()))); if (network != null) { CompoundTag tag = stack.getTag(); diff --git a/src/main/java/com/refinedmods/refinedstorage/item/PatternItem.java b/src/main/java/com/refinedmods/refinedstorage/item/PatternItem.java index 2d1174a29..15d6ba983 100644 --- a/src/main/java/com/refinedmods/refinedstorage/item/PatternItem.java +++ b/src/main/java/com/refinedmods/refinedstorage/item/PatternItem.java @@ -10,7 +10,7 @@ import com.refinedmods.refinedstorage.apiimpl.autocrafting.CraftingPattern; import com.refinedmods.refinedstorage.apiimpl.autocrafting.CraftingPatternFactory; import com.refinedmods.refinedstorage.apiimpl.network.node.GridNetworkNode; import com.refinedmods.refinedstorage.render.Styles; -import com.refinedmods.refinedstorage.render.tesr.PatternItemStackTileRenderer; +import com.refinedmods.refinedstorage.render.blockentity.PatternItemBlockEntityRenderer; import com.refinedmods.refinedstorage.util.ItemStackKey; import com.refinedmods.refinedstorage.util.RenderUtils; import net.minecraft.client.Minecraft; @@ -55,7 +55,7 @@ public class PatternItem extends Item implements ICraftingPatternProvider, IItem private static final int VERSION = 1; - private final NonNullLazy renderer = NonNullLazy.of(() -> new PatternItemStackTileRenderer( + private final NonNullLazy renderer = NonNullLazy.of(() -> new PatternItemBlockEntityRenderer( Minecraft.getInstance().getBlockEntityRenderDispatcher(), Minecraft.getInstance().getEntityModels() )); diff --git a/src/main/java/com/refinedmods/refinedstorage/item/WrenchItem.java b/src/main/java/com/refinedmods/refinedstorage/item/WrenchItem.java index 4028f3d8b..40321dd1d 100644 --- a/src/main/java/com/refinedmods/refinedstorage/item/WrenchItem.java +++ b/src/main/java/com/refinedmods/refinedstorage/item/WrenchItem.java @@ -27,7 +27,7 @@ public class WrenchItem extends Item { return InteractionResult.CONSUME; } - INetworkNode node = NetworkUtils.getNodeFromTile(ctx.getLevel().getBlockEntity(ctx.getClickedPos())); + INetworkNode node = NetworkUtils.getNodeFromBlockEntity(ctx.getLevel().getBlockEntity(ctx.getClickedPos())); INetwork network = NetworkUtils.getNetworkFromNode(node); if (network != null && !network.getSecurityManager().hasPermission(Permission.BUILD, ctx.getPlayer())) { WorldUtils.sendNoPermissionMessage(ctx.getPlayer()); diff --git a/src/main/java/com/refinedmods/refinedstorage/loottable/ControllerLootFunction.java b/src/main/java/com/refinedmods/refinedstorage/loottable/ControllerLootFunction.java index ed685e0bc..55bb76cec 100644 --- a/src/main/java/com/refinedmods/refinedstorage/loottable/ControllerLootFunction.java +++ b/src/main/java/com/refinedmods/refinedstorage/loottable/ControllerLootFunction.java @@ -4,7 +4,7 @@ import com.google.gson.JsonDeserializationContext; import com.google.gson.JsonObject; import com.refinedmods.refinedstorage.RSLootFunctions; import com.refinedmods.refinedstorage.api.network.INetwork; -import com.refinedmods.refinedstorage.tile.ControllerTile; +import com.refinedmods.refinedstorage.blockentity.ControllerBlockEntity; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.storage.loot.LootContext; @@ -25,10 +25,10 @@ public class ControllerLootFunction extends LootItemConditionalFunction { @Override protected ItemStack run(ItemStack itemStack, LootContext lootContext) { - BlockEntity tile = lootContext.getParamOrNull(LootContextParams.BLOCK_ENTITY); + BlockEntity blockEntity = lootContext.getParamOrNull(LootContextParams.BLOCK_ENTITY); - if (tile instanceof ControllerTile) { - INetwork network = ((ControllerTile) tile).getRemovedNetwork() == null ? ((ControllerTile) tile).getNetwork() : ((ControllerTile) tile).getRemovedNetwork(); + if (blockEntity instanceof ControllerBlockEntity) { + INetwork network = ((ControllerBlockEntity) blockEntity).getRemovedNetwork() == null ? ((ControllerBlockEntity) blockEntity).getNetwork() : ((ControllerBlockEntity) blockEntity).getRemovedNetwork(); itemStack.getCapability(CapabilityEnergy.ENERGY).ifPresent(energy -> energy.receiveEnergy(network.getEnergyStorage().getEnergyStored(), false)); } diff --git a/src/main/java/com/refinedmods/refinedstorage/loottable/CrafterLootFunction.java b/src/main/java/com/refinedmods/refinedstorage/loottable/CrafterLootFunction.java index 603fe9b10..090dbacad 100644 --- a/src/main/java/com/refinedmods/refinedstorage/loottable/CrafterLootFunction.java +++ b/src/main/java/com/refinedmods/refinedstorage/loottable/CrafterLootFunction.java @@ -4,7 +4,7 @@ import com.google.gson.JsonDeserializationContext; import com.google.gson.JsonObject; import com.refinedmods.refinedstorage.RSLootFunctions; import com.refinedmods.refinedstorage.apiimpl.network.node.CrafterNetworkNode; -import com.refinedmods.refinedstorage.tile.CrafterTile; +import com.refinedmods.refinedstorage.blockentity.CrafterBlockEntity; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.storage.loot.LootContext; @@ -24,11 +24,11 @@ public class CrafterLootFunction extends LootItemConditionalFunction { @Override public ItemStack run(ItemStack stack, LootContext lootContext) { - BlockEntity tile = lootContext.getParamOrNull(LootContextParams.BLOCK_ENTITY); + BlockEntity blockEntity = lootContext.getParamOrNull(LootContextParams.BLOCK_ENTITY); - CrafterNetworkNode removedNode = ((CrafterTile) tile).getRemovedNode(); + CrafterNetworkNode removedNode = ((CrafterBlockEntity) blockEntity).getRemovedNode(); if (removedNode == null) { - removedNode = ((CrafterTile) tile).getNode(); + removedNode = ((CrafterBlockEntity) blockEntity).getNode(); } if (removedNode.getDisplayName() != null) { diff --git a/src/main/java/com/refinedmods/refinedstorage/loottable/PortableGridBlockLootFunction.java b/src/main/java/com/refinedmods/refinedstorage/loottable/PortableGridBlockLootFunction.java index 9b7473e96..101c24bbc 100644 --- a/src/main/java/com/refinedmods/refinedstorage/loottable/PortableGridBlockLootFunction.java +++ b/src/main/java/com/refinedmods/refinedstorage/loottable/PortableGridBlockLootFunction.java @@ -3,7 +3,7 @@ package com.refinedmods.refinedstorage.loottable; import com.google.gson.JsonDeserializationContext; import com.google.gson.JsonObject; import com.refinedmods.refinedstorage.RSLootFunctions; -import com.refinedmods.refinedstorage.tile.grid.portable.PortableGridTile; +import com.refinedmods.refinedstorage.blockentity.grid.portable.PortableGridBlockEntity; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.storage.loot.LootContext; @@ -19,10 +19,10 @@ public class PortableGridBlockLootFunction extends LootItemConditionalFunction { @Override public ItemStack run(ItemStack stack, LootContext lootContext) { - BlockEntity tile = lootContext.getParamOrNull(LootContextParams.BLOCK_ENTITY); + BlockEntity blockEntity = lootContext.getParamOrNull(LootContextParams.BLOCK_ENTITY); - if (tile instanceof PortableGridTile) { - ((PortableGridTile) tile).applyDataFromTileToItem(stack); + if (blockEntity instanceof PortableGridBlockEntity) { + ((PortableGridBlockEntity) blockEntity).applyDataFromBlockEntityToItem(stack); } return stack; diff --git a/src/main/java/com/refinedmods/refinedstorage/loottable/StorageBlockLootFunction.java b/src/main/java/com/refinedmods/refinedstorage/loottable/StorageBlockLootFunction.java index a8ce18234..8a2f0414d 100644 --- a/src/main/java/com/refinedmods/refinedstorage/loottable/StorageBlockLootFunction.java +++ b/src/main/java/com/refinedmods/refinedstorage/loottable/StorageBlockLootFunction.java @@ -5,8 +5,8 @@ import com.google.gson.JsonObject; import com.refinedmods.refinedstorage.RSLootFunctions; import com.refinedmods.refinedstorage.apiimpl.network.node.storage.FluidStorageNetworkNode; import com.refinedmods.refinedstorage.apiimpl.network.node.storage.StorageNetworkNode; -import com.refinedmods.refinedstorage.tile.FluidStorageTile; -import com.refinedmods.refinedstorage.tile.StorageTile; +import com.refinedmods.refinedstorage.blockentity.FluidStorageBlockEntity; +import com.refinedmods.refinedstorage.blockentity.StorageBlockEntity; import net.minecraft.nbt.CompoundTag; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.block.entity.BlockEntity; @@ -23,23 +23,23 @@ public class StorageBlockLootFunction extends LootItemConditionalFunction { @Override public ItemStack run(ItemStack stack, LootContext lootContext) { - BlockEntity tile = lootContext.getParamOrNull(LootContextParams.BLOCK_ENTITY); + BlockEntity blockEntity = lootContext.getParamOrNull(LootContextParams.BLOCK_ENTITY); // This code needs to work without the node being removed as well. // For example: the Destructor calls getDrops before the node has been removed. - if (tile instanceof StorageTile) { - StorageNetworkNode removedNode = ((StorageTile) tile).getRemovedNode(); + if (blockEntity instanceof StorageBlockEntity) { + StorageNetworkNode removedNode = ((StorageBlockEntity) blockEntity).getRemovedNode(); if (removedNode == null) { - removedNode = ((StorageTile) tile).getNode(); + removedNode = ((StorageBlockEntity) blockEntity).getNode(); } stack.setTag(new CompoundTag()); stack.getTag().putUUID(StorageNetworkNode.NBT_ID, removedNode.getStorageId()); - } else if (tile instanceof FluidStorageTile) { - FluidStorageNetworkNode removedNode = ((FluidStorageTile) tile).getRemovedNode(); + } else if (blockEntity instanceof FluidStorageBlockEntity) { + FluidStorageNetworkNode removedNode = ((FluidStorageBlockEntity) blockEntity).getRemovedNode(); if (removedNode == null) { - removedNode = ((FluidStorageTile) tile).getNode(); + removedNode = ((FluidStorageBlockEntity) blockEntity).getNode(); } stack.setTag(new CompoundTag()); diff --git a/src/main/java/com/refinedmods/refinedstorage/network/NetworkHandler.java b/src/main/java/com/refinedmods/refinedstorage/network/NetworkHandler.java index b23dc95b3..3bd36979c 100644 --- a/src/main/java/com/refinedmods/refinedstorage/network/NetworkHandler.java +++ b/src/main/java/com/refinedmods/refinedstorage/network/NetworkHandler.java @@ -7,8 +7,8 @@ import com.refinedmods.refinedstorage.network.craftingmonitor.WirelessCraftingMo import com.refinedmods.refinedstorage.network.disk.StorageDiskSizeRequestMessage; import com.refinedmods.refinedstorage.network.disk.StorageDiskSizeResponseMessage; import com.refinedmods.refinedstorage.network.grid.*; -import com.refinedmods.refinedstorage.network.tiledata.TileDataParameterMessage; -import com.refinedmods.refinedstorage.network.tiledata.TileDataParameterUpdateMessage; +import com.refinedmods.refinedstorage.network.sync.BlockEntitySynchronizationParameterMessage; +import com.refinedmods.refinedstorage.network.sync.BlockEntitySynchronizationParamaterUpdateMessage; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerPlayer; import net.minecraftforge.common.util.FakePlayer; @@ -34,8 +34,8 @@ public class NetworkHandler { handler.registerMessage(id++, StorageDiskSizeResponseMessage.class, StorageDiskSizeResponseMessage::encode, StorageDiskSizeResponseMessage::decode, StorageDiskSizeResponseMessage::handle); handler.registerMessage(id++, FilterUpdateMessage.class, FilterUpdateMessage::encode, FilterUpdateMessage::decode, FilterUpdateMessage::handle); handler.registerMessage(id++, FluidFilterSlotUpdateMessage.class, FluidFilterSlotUpdateMessage::encode, FluidFilterSlotUpdateMessage::decode, FluidFilterSlotUpdateMessage::handle); - handler.registerMessage(id++, TileDataParameterMessage.class, TileDataParameterMessage::encode, TileDataParameterMessage::decode, (msg, ctx) -> TileDataParameterMessage.handle(ctx)); - handler.registerMessage(id++, TileDataParameterUpdateMessage.class, TileDataParameterUpdateMessage::encode, TileDataParameterUpdateMessage::decode, TileDataParameterUpdateMessage::handle); + handler.registerMessage(id++, BlockEntitySynchronizationParameterMessage.class, BlockEntitySynchronizationParameterMessage::encode, BlockEntitySynchronizationParameterMessage::decode, (msg, ctx) -> BlockEntitySynchronizationParameterMessage.handle(ctx)); + handler.registerMessage(id++, BlockEntitySynchronizationParamaterUpdateMessage.class, BlockEntitySynchronizationParamaterUpdateMessage::encode, BlockEntitySynchronizationParamaterUpdateMessage::decode, BlockEntitySynchronizationParamaterUpdateMessage::handle); splitter.registerMessage(id++, GridItemUpdateMessage.class, GridItemUpdateMessage::encode, GridItemUpdateMessage::decode, GridItemUpdateMessage::handle); splitter.registerMessage(id++, GridItemDeltaMessage.class, GridItemDeltaMessage::encode, GridItemDeltaMessage::decode, GridItemDeltaMessage::handle); handler.registerMessage(id++, GridItemPullMessage.class, GridItemPullMessage::encode, GridItemPullMessage::decode, GridItemPullMessage::handle); diff --git a/src/main/java/com/refinedmods/refinedstorage/network/SecurityManagerUpdateMessage.java b/src/main/java/com/refinedmods/refinedstorage/network/SecurityManagerUpdateMessage.java index ae89bb50b..348221ec5 100644 --- a/src/main/java/com/refinedmods/refinedstorage/network/SecurityManagerUpdateMessage.java +++ b/src/main/java/com/refinedmods/refinedstorage/network/SecurityManagerUpdateMessage.java @@ -1,7 +1,7 @@ package com.refinedmods.refinedstorage.network; import com.refinedmods.refinedstorage.api.network.security.Permission; -import com.refinedmods.refinedstorage.tile.SecurityManagerTile; +import com.refinedmods.refinedstorage.blockentity.SecurityManagerBlockEntity; import net.minecraft.core.BlockPos; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.world.entity.player.Player; @@ -50,10 +50,10 @@ public class SecurityManagerUpdateMessage { if (player != null) { ctx.get().enqueueWork(() -> { - BlockEntity tile = player.getCommandSenderWorld().getBlockEntity(message.pos); + BlockEntity blockEntity = player.getCommandSenderWorld().getBlockEntity(message.pos); - if (tile instanceof SecurityManagerTile) { - ((SecurityManagerTile) tile).getNode().updatePermission(message.permission, message.state); + if (blockEntity instanceof SecurityManagerBlockEntity) { + ((SecurityManagerBlockEntity) blockEntity).getNode().updatePermission(message.permission, message.state); } }); } diff --git a/src/main/java/com/refinedmods/refinedstorage/network/craftingmonitor/CraftingMonitorUpdateMessage.java b/src/main/java/com/refinedmods/refinedstorage/network/craftingmonitor/CraftingMonitorUpdateMessage.java index a9cc0b842..d1ca658f5 100644 --- a/src/main/java/com/refinedmods/refinedstorage/network/craftingmonitor/CraftingMonitorUpdateMessage.java +++ b/src/main/java/com/refinedmods/refinedstorage/network/craftingmonitor/CraftingMonitorUpdateMessage.java @@ -8,7 +8,7 @@ import com.refinedmods.refinedstorage.api.network.grid.IGridTab; import com.refinedmods.refinedstorage.apiimpl.API; import com.refinedmods.refinedstorage.network.ClientProxy; import com.refinedmods.refinedstorage.screen.CraftingMonitorScreen; -import com.refinedmods.refinedstorage.tile.craftingmonitor.ICraftingMonitor; +import com.refinedmods.refinedstorage.blockentity.craftingmonitor.ICraftingMonitor; import net.minecraft.network.FriendlyByteBuf; import net.minecraftforge.network.NetworkEvent; import org.apache.logging.log4j.LogManager; diff --git a/src/main/java/com/refinedmods/refinedstorage/network/craftingmonitor/WirelessCraftingMonitorSettingsUpdateMessage.java b/src/main/java/com/refinedmods/refinedstorage/network/craftingmonitor/WirelessCraftingMonitorSettingsUpdateMessage.java index c5138c064..e2c1e0191 100644 --- a/src/main/java/com/refinedmods/refinedstorage/network/craftingmonitor/WirelessCraftingMonitorSettingsUpdateMessage.java +++ b/src/main/java/com/refinedmods/refinedstorage/network/craftingmonitor/WirelessCraftingMonitorSettingsUpdateMessage.java @@ -1,7 +1,7 @@ package com.refinedmods.refinedstorage.network.craftingmonitor; import com.refinedmods.refinedstorage.container.CraftingMonitorContainer; -import com.refinedmods.refinedstorage.tile.craftingmonitor.WirelessCraftingMonitor; +import com.refinedmods.refinedstorage.blockentity.craftingmonitor.WirelessCraftingMonitor; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.server.level.ServerPlayer; import net.minecraftforge.network.NetworkEvent; diff --git a/src/main/java/com/refinedmods/refinedstorage/network/grid/GridPatternCreateMessage.java b/src/main/java/com/refinedmods/refinedstorage/network/grid/GridPatternCreateMessage.java index 4ccbe3e64..93ed5652b 100644 --- a/src/main/java/com/refinedmods/refinedstorage/network/grid/GridPatternCreateMessage.java +++ b/src/main/java/com/refinedmods/refinedstorage/network/grid/GridPatternCreateMessage.java @@ -1,7 +1,7 @@ package com.refinedmods.refinedstorage.network.grid; import com.refinedmods.refinedstorage.api.network.grid.GridType; -import com.refinedmods.refinedstorage.tile.grid.GridTile; +import com.refinedmods.refinedstorage.blockentity.grid.GridBlockEntity; import net.minecraft.core.BlockPos; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.world.entity.player.Player; @@ -30,10 +30,10 @@ public class GridPatternCreateMessage { if (player != null) { ctx.get().enqueueWork(() -> { - BlockEntity tile = player.getCommandSenderWorld().getBlockEntity(message.pos); + BlockEntity blockEntity = player.getCommandSenderWorld().getBlockEntity(message.pos); - if (tile instanceof GridTile && ((GridTile) tile).getNode().getGridType() == GridType.PATTERN) { - ((GridTile) tile).getNode().onCreatePattern(); + if (blockEntity instanceof GridBlockEntity && ((GridBlockEntity) blockEntity).getNode().getGridType() == GridType.PATTERN) { + ((GridBlockEntity) blockEntity).getNode().onCreatePattern(); } }); } diff --git a/src/main/java/com/refinedmods/refinedstorage/network/grid/PortableGridFluidDeltaMessage.java b/src/main/java/com/refinedmods/refinedstorage/network/grid/PortableGridFluidDeltaMessage.java index 102d70178..0b7593b38 100644 --- a/src/main/java/com/refinedmods/refinedstorage/network/grid/PortableGridFluidDeltaMessage.java +++ b/src/main/java/com/refinedmods/refinedstorage/network/grid/PortableGridFluidDeltaMessage.java @@ -4,7 +4,7 @@ import com.refinedmods.refinedstorage.api.util.StackListResult; import com.refinedmods.refinedstorage.screen.BaseScreen; import com.refinedmods.refinedstorage.screen.grid.GridScreen; import com.refinedmods.refinedstorage.screen.grid.stack.IGridStack; -import com.refinedmods.refinedstorage.tile.grid.portable.IPortableGrid; +import com.refinedmods.refinedstorage.blockentity.grid.portable.IPortableGrid; import com.refinedmods.refinedstorage.util.StackUtils; import net.minecraft.network.FriendlyByteBuf; import net.minecraftforge.fluids.FluidStack; diff --git a/src/main/java/com/refinedmods/refinedstorage/network/grid/PortableGridFluidUpdateMessage.java b/src/main/java/com/refinedmods/refinedstorage/network/grid/PortableGridFluidUpdateMessage.java index bb1ff13ab..a9dc43f5c 100644 --- a/src/main/java/com/refinedmods/refinedstorage/network/grid/PortableGridFluidUpdateMessage.java +++ b/src/main/java/com/refinedmods/refinedstorage/network/grid/PortableGridFluidUpdateMessage.java @@ -5,7 +5,7 @@ import com.refinedmods.refinedstorage.screen.BaseScreen; import com.refinedmods.refinedstorage.screen.grid.GridScreen; import com.refinedmods.refinedstorage.screen.grid.stack.IGridStack; import com.refinedmods.refinedstorage.screen.grid.view.GridViewImpl; -import com.refinedmods.refinedstorage.tile.grid.portable.IPortableGrid; +import com.refinedmods.refinedstorage.blockentity.grid.portable.IPortableGrid; import com.refinedmods.refinedstorage.util.StackUtils; import net.minecraft.network.FriendlyByteBuf; import net.minecraftforge.fluids.FluidStack; diff --git a/src/main/java/com/refinedmods/refinedstorage/network/grid/PortableGridItemDeltaMessage.java b/src/main/java/com/refinedmods/refinedstorage/network/grid/PortableGridItemDeltaMessage.java index fe33010ae..b494bf03e 100644 --- a/src/main/java/com/refinedmods/refinedstorage/network/grid/PortableGridItemDeltaMessage.java +++ b/src/main/java/com/refinedmods/refinedstorage/network/grid/PortableGridItemDeltaMessage.java @@ -4,7 +4,7 @@ import com.refinedmods.refinedstorage.api.util.StackListResult; import com.refinedmods.refinedstorage.screen.BaseScreen; import com.refinedmods.refinedstorage.screen.grid.GridScreen; import com.refinedmods.refinedstorage.screen.grid.stack.IGridStack; -import com.refinedmods.refinedstorage.tile.grid.portable.IPortableGrid; +import com.refinedmods.refinedstorage.blockentity.grid.portable.IPortableGrid; import com.refinedmods.refinedstorage.util.StackUtils; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.world.item.ItemStack; diff --git a/src/main/java/com/refinedmods/refinedstorage/network/grid/PortableGridItemUpdateMessage.java b/src/main/java/com/refinedmods/refinedstorage/network/grid/PortableGridItemUpdateMessage.java index 9bec37d4d..f7e52b4de 100644 --- a/src/main/java/com/refinedmods/refinedstorage/network/grid/PortableGridItemUpdateMessage.java +++ b/src/main/java/com/refinedmods/refinedstorage/network/grid/PortableGridItemUpdateMessage.java @@ -5,7 +5,7 @@ import com.refinedmods.refinedstorage.screen.BaseScreen; import com.refinedmods.refinedstorage.screen.grid.GridScreen; import com.refinedmods.refinedstorage.screen.grid.stack.IGridStack; import com.refinedmods.refinedstorage.screen.grid.view.GridViewImpl; -import com.refinedmods.refinedstorage.tile.grid.portable.IPortableGrid; +import com.refinedmods.refinedstorage.blockentity.grid.portable.IPortableGrid; import com.refinedmods.refinedstorage.util.StackUtils; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.world.item.ItemStack; diff --git a/src/main/java/com/refinedmods/refinedstorage/network/grid/PortableGridSettingsUpdateMessage.java b/src/main/java/com/refinedmods/refinedstorage/network/grid/PortableGridSettingsUpdateMessage.java index 52d8a4c3e..1dcd500e4 100644 --- a/src/main/java/com/refinedmods/refinedstorage/network/grid/PortableGridSettingsUpdateMessage.java +++ b/src/main/java/com/refinedmods/refinedstorage/network/grid/PortableGridSettingsUpdateMessage.java @@ -3,7 +3,7 @@ package com.refinedmods.refinedstorage.network.grid; import com.refinedmods.refinedstorage.api.network.grid.IGrid; import com.refinedmods.refinedstorage.apiimpl.network.node.GridNetworkNode; import com.refinedmods.refinedstorage.container.GridContainer; -import com.refinedmods.refinedstorage.tile.grid.portable.PortableGrid; +import com.refinedmods.refinedstorage.blockentity.grid.portable.PortableGrid; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.world.entity.player.Player; diff --git a/src/main/java/com/refinedmods/refinedstorage/network/grid/WirelessFluidGridSettingsUpdateMessage.java b/src/main/java/com/refinedmods/refinedstorage/network/grid/WirelessFluidGridSettingsUpdateMessage.java index 8a679b7ea..eeb240a4c 100644 --- a/src/main/java/com/refinedmods/refinedstorage/network/grid/WirelessFluidGridSettingsUpdateMessage.java +++ b/src/main/java/com/refinedmods/refinedstorage/network/grid/WirelessFluidGridSettingsUpdateMessage.java @@ -3,7 +3,7 @@ package com.refinedmods.refinedstorage.network.grid; import com.refinedmods.refinedstorage.api.network.grid.IGrid; import com.refinedmods.refinedstorage.apiimpl.network.node.GridNetworkNode; import com.refinedmods.refinedstorage.container.GridContainer; -import com.refinedmods.refinedstorage.tile.grid.WirelessFluidGrid; +import com.refinedmods.refinedstorage.blockentity.grid.WirelessFluidGrid; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; diff --git a/src/main/java/com/refinedmods/refinedstorage/network/grid/WirelessGridSettingsUpdateMessage.java b/src/main/java/com/refinedmods/refinedstorage/network/grid/WirelessGridSettingsUpdateMessage.java index e3e01744d..ae115de0b 100644 --- a/src/main/java/com/refinedmods/refinedstorage/network/grid/WirelessGridSettingsUpdateMessage.java +++ b/src/main/java/com/refinedmods/refinedstorage/network/grid/WirelessGridSettingsUpdateMessage.java @@ -3,7 +3,7 @@ package com.refinedmods.refinedstorage.network.grid; import com.refinedmods.refinedstorage.api.network.grid.IGrid; import com.refinedmods.refinedstorage.apiimpl.network.node.GridNetworkNode; import com.refinedmods.refinedstorage.container.GridContainer; -import com.refinedmods.refinedstorage.tile.grid.WirelessGrid; +import com.refinedmods.refinedstorage.blockentity.grid.WirelessGrid; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.world.entity.player.Player; diff --git a/src/main/java/com/refinedmods/refinedstorage/network/tiledata/TileDataParameterUpdateMessage.java b/src/main/java/com/refinedmods/refinedstorage/network/sync/BlockEntitySynchronizationParamaterUpdateMessage.java similarity index 51% rename from src/main/java/com/refinedmods/refinedstorage/network/tiledata/TileDataParameterUpdateMessage.java rename to src/main/java/com/refinedmods/refinedstorage/network/sync/BlockEntitySynchronizationParamaterUpdateMessage.java index 6d609e851..f3109c71c 100644 --- a/src/main/java/com/refinedmods/refinedstorage/network/tiledata/TileDataParameterUpdateMessage.java +++ b/src/main/java/com/refinedmods/refinedstorage/network/sync/BlockEntitySynchronizationParamaterUpdateMessage.java @@ -1,8 +1,8 @@ -package com.refinedmods.refinedstorage.network.tiledata; +package com.refinedmods.refinedstorage.network.sync; import com.refinedmods.refinedstorage.container.BaseContainer; -import com.refinedmods.refinedstorage.tile.data.TileDataManager; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationManager; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.world.inventory.AbstractContainerMenu; import net.minecraftforge.network.NetworkEvent; @@ -10,19 +10,19 @@ import net.minecraftforge.network.NetworkEvent; import java.util.function.BiConsumer; import java.util.function.Supplier; -public class TileDataParameterUpdateMessage { - private final TileDataParameter parameter; +public class BlockEntitySynchronizationParamaterUpdateMessage { + private final BlockEntitySynchronizationParameter parameter; private final Object value; - public TileDataParameterUpdateMessage(TileDataParameter parameter, Object value) { + public BlockEntitySynchronizationParamaterUpdateMessage(BlockEntitySynchronizationParameter parameter, Object value) { this.parameter = parameter; this.value = value; } - public static TileDataParameterUpdateMessage decode(FriendlyByteBuf buf) { + public static BlockEntitySynchronizationParamaterUpdateMessage decode(FriendlyByteBuf buf) { int id = buf.readInt(); - TileDataParameter parameter = TileDataManager.getParameter(id); + BlockEntitySynchronizationParameter parameter = BlockEntitySynchronizationManager.getParameter(id); Object value = null; if (parameter != null) { @@ -33,16 +33,16 @@ public class TileDataParameterUpdateMessage { } } - return new TileDataParameterUpdateMessage(parameter, value); + return new BlockEntitySynchronizationParamaterUpdateMessage(parameter, value); } - public static void encode(TileDataParameterUpdateMessage message, FriendlyByteBuf buf) { + public static void encode(BlockEntitySynchronizationParamaterUpdateMessage message, FriendlyByteBuf buf) { buf.writeInt(message.parameter.getId()); message.parameter.getSerializer().write(buf, message.value); } - public static void handle(TileDataParameterUpdateMessage message, Supplier ctx) { + public static void handle(BlockEntitySynchronizationParamaterUpdateMessage message, Supplier ctx) { ctx.get().enqueueWork(() -> { AbstractContainerMenu c = ctx.get().getSender().containerMenu; @@ -50,7 +50,7 @@ public class TileDataParameterUpdateMessage { BiConsumer consumer = message.parameter.getValueConsumer(); if (consumer != null) { - consumer.accept(((BaseContainer) c).getTile(), message.value); + consumer.accept(((BaseContainer) c).getBlockEntity(), message.value); } } }); diff --git a/src/main/java/com/refinedmods/refinedstorage/network/sync/BlockEntitySynchronizationParameterMessage.java b/src/main/java/com/refinedmods/refinedstorage/network/sync/BlockEntitySynchronizationParameterMessage.java new file mode 100644 index 000000000..7440c6619 --- /dev/null +++ b/src/main/java/com/refinedmods/refinedstorage/network/sync/BlockEntitySynchronizationParameterMessage.java @@ -0,0 +1,49 @@ +package com.refinedmods.refinedstorage.network.sync; + +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationManager; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraftforge.network.NetworkEvent; + +import java.util.function.Supplier; + +public class BlockEntitySynchronizationParameterMessage { + private final BlockEntity blockEntity; + private final BlockEntitySynchronizationParameter parameter; + private final boolean initial; + + public BlockEntitySynchronizationParameterMessage(BlockEntity blockEntity, BlockEntitySynchronizationParameter parameter, boolean initial) { + this.blockEntity = blockEntity; + this.parameter = parameter; + this.initial = initial; + } + + public static BlockEntitySynchronizationParameterMessage decode(FriendlyByteBuf buf) { + int id = buf.readInt(); + boolean initial = buf.readBoolean(); + + BlockEntitySynchronizationParameter parameter = BlockEntitySynchronizationManager.getParameter(id); + + if (parameter != null) { + try { + parameter.setValue(initial, parameter.getSerializer().read(buf)); + } catch (Exception e) { + // NO OP + } + } + + return new BlockEntitySynchronizationParameterMessage(null, null, initial); + } + + public static void encode(BlockEntitySynchronizationParameterMessage message, FriendlyByteBuf buf) { + buf.writeInt(message.parameter.getId()); + buf.writeBoolean(message.initial); + + message.parameter.getSerializer().write(buf, message.parameter.getValueProducer().apply(message.blockEntity)); + } + + public static void handle(Supplier ctx) { + ctx.get().setPacketHandled(true); + } +} diff --git a/src/main/java/com/refinedmods/refinedstorage/network/tiledata/TileDataParameterMessage.java b/src/main/java/com/refinedmods/refinedstorage/network/tiledata/TileDataParameterMessage.java deleted file mode 100644 index 64dd942e6..000000000 --- a/src/main/java/com/refinedmods/refinedstorage/network/tiledata/TileDataParameterMessage.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.refinedmods.refinedstorage.network.tiledata; - -import com.refinedmods.refinedstorage.tile.data.TileDataManager; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; -import net.minecraft.network.FriendlyByteBuf; -import net.minecraft.world.level.block.entity.BlockEntity; -import net.minecraftforge.network.NetworkEvent; - -import java.util.function.Supplier; - -public class TileDataParameterMessage { - private final BlockEntity tile; - private final TileDataParameter parameter; - private final boolean initial; - - public TileDataParameterMessage(BlockEntity tile, TileDataParameter parameter, boolean initial) { - this.tile = tile; - this.parameter = parameter; - this.initial = initial; - } - - public static TileDataParameterMessage decode(FriendlyByteBuf buf) { - int id = buf.readInt(); - boolean initial = buf.readBoolean(); - - TileDataParameter parameter = TileDataManager.getParameter(id); - - if (parameter != null) { - try { - parameter.setValue(initial, parameter.getSerializer().read(buf)); - } catch (Exception e) { - // NO OP - } - } - - return new TileDataParameterMessage(null, null, initial); - } - - public static void encode(TileDataParameterMessage message, FriendlyByteBuf buf) { - buf.writeInt(message.parameter.getId()); - buf.writeBoolean(message.initial); - - message.parameter.getSerializer().write(buf, message.parameter.getValueProducer().apply(message.tile)); - } - - public static void handle(Supplier ctx) { - ctx.get().setPacketHandled(true); - } -} diff --git a/src/main/java/com/refinedmods/refinedstorage/render/ConstantsCable.java b/src/main/java/com/refinedmods/refinedstorage/render/ConstantsCable.java index 2100e8fa2..463d49977 100644 --- a/src/main/java/com/refinedmods/refinedstorage/render/ConstantsCable.java +++ b/src/main/java/com/refinedmods/refinedstorage/render/ConstantsCable.java @@ -5,7 +5,7 @@ import com.refinedmods.refinedstorage.apiimpl.network.node.cover.Cover; import com.refinedmods.refinedstorage.apiimpl.network.node.cover.CoverManager; import com.refinedmods.refinedstorage.apiimpl.network.node.cover.CoverType; import com.refinedmods.refinedstorage.render.collision.CollisionGroup; -import com.refinedmods.refinedstorage.tile.NetworkNodeTile; +import com.refinedmods.refinedstorage.blockentity.NetworkNodeBlockEntity; import com.refinedmods.refinedstorage.util.CollisionUtils; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; @@ -77,8 +77,8 @@ public class ConstantsCable { public static VoxelShape addCoverVoxelShapes(VoxelShape shape, BlockGetter world, BlockPos pos) { if (world != null) { BlockEntity entity = world.getBlockEntity(pos); - if (entity instanceof NetworkNodeTile && ((NetworkNodeTile) entity).getNode() instanceof ICoverable) { - CoverManager coverManager = ((ICoverable) ((NetworkNodeTile) entity).getNode()).getCoverManager(); + if (entity instanceof NetworkNodeBlockEntity && ((NetworkNodeBlockEntity) entity).getNode() instanceof ICoverable) { + CoverManager coverManager = ((ICoverable) ((NetworkNodeBlockEntity) entity).getNode()).getCoverManager(); for (Direction value : Direction.values()) { Cover cover = coverManager.getCover(value); if (cover != null) { diff --git a/src/main/java/com/refinedmods/refinedstorage/render/tesr/PatternItemStackTileRenderer.java b/src/main/java/com/refinedmods/refinedstorage/render/blockentity/PatternItemBlockEntityRenderer.java similarity index 78% rename from src/main/java/com/refinedmods/refinedstorage/render/tesr/PatternItemStackTileRenderer.java rename to src/main/java/com/refinedmods/refinedstorage/render/blockentity/PatternItemBlockEntityRenderer.java index a4cae4e4d..7f45877e7 100644 --- a/src/main/java/com/refinedmods/refinedstorage/render/tesr/PatternItemStackTileRenderer.java +++ b/src/main/java/com/refinedmods/refinedstorage/render/blockentity/PatternItemBlockEntityRenderer.java @@ -1,4 +1,4 @@ -package com.refinedmods.refinedstorage.render.tesr; +package com.refinedmods.refinedstorage.render.blockentity; import com.mojang.blaze3d.vertex.PoseStack; import com.refinedmods.refinedstorage.api.autocrafting.ICraftingPattern; @@ -11,9 +11,9 @@ import net.minecraft.client.renderer.blockentity.BlockEntityRenderDispatcher; import net.minecraft.world.item.ItemStack; import net.minecraftforge.client.RenderProperties; -public class PatternItemStackTileRenderer extends BlockEntityWithoutLevelRenderer { - public PatternItemStackTileRenderer(BlockEntityRenderDispatcher p_172550_, EntityModelSet p_172551_) { - super(p_172550_, p_172551_); +public class PatternItemBlockEntityRenderer extends BlockEntityWithoutLevelRenderer { + public PatternItemBlockEntityRenderer(BlockEntityRenderDispatcher dispatcher, EntityModelSet entityModelSet) { + super(dispatcher, entityModelSet); } @Override diff --git a/src/main/java/com/refinedmods/refinedstorage/render/tesr/StorageMonitorTileRenderer.java b/src/main/java/com/refinedmods/refinedstorage/render/blockentity/StorageMonitorBlockEntityRenderer.java similarity index 87% rename from src/main/java/com/refinedmods/refinedstorage/render/tesr/StorageMonitorTileRenderer.java rename to src/main/java/com/refinedmods/refinedstorage/render/blockentity/StorageMonitorBlockEntityRenderer.java index 388624f07..b3c1d3166 100644 --- a/src/main/java/com/refinedmods/refinedstorage/render/tesr/StorageMonitorTileRenderer.java +++ b/src/main/java/com/refinedmods/refinedstorage/render/blockentity/StorageMonitorBlockEntityRenderer.java @@ -1,4 +1,4 @@ -package com.refinedmods.refinedstorage.render.tesr; +package com.refinedmods.refinedstorage.render.blockentity; import com.mojang.blaze3d.platform.Lighting; import com.mojang.blaze3d.vertex.PoseStack; @@ -8,8 +8,8 @@ import com.mojang.math.Vector3f; import com.refinedmods.refinedstorage.RSBlocks; import com.refinedmods.refinedstorage.apiimpl.API; import com.refinedmods.refinedstorage.block.StorageMonitorBlock; -import com.refinedmods.refinedstorage.tile.StorageMonitorTile; -import com.refinedmods.refinedstorage.tile.config.IType; +import com.refinedmods.refinedstorage.blockentity.StorageMonitorBlockEntity; +import com.refinedmods.refinedstorage.blockentity.config.IType; import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.LevelRenderer; import net.minecraft.client.renderer.MultiBufferSource; @@ -29,34 +29,34 @@ import net.minecraftforge.common.model.TransformationHelper; import net.minecraftforge.fluids.FluidAttributes; import net.minecraftforge.fluids.FluidStack; -public class StorageMonitorTileRenderer implements BlockEntityRenderer { +public class StorageMonitorBlockEntityRenderer implements BlockEntityRenderer { @Override - public void render(StorageMonitorTile tile, float partialTicks, PoseStack matrixStack, MultiBufferSource renderTypeBuffer, int i, int i1) { + public void render(StorageMonitorBlockEntity blockEntity, float partialTicks, PoseStack matrixStack, MultiBufferSource renderTypeBuffer, int i, int i1) { Direction direction = Direction.NORTH; - BlockState state = tile.getLevel().getBlockState(tile.getBlockPos()); + BlockState state = blockEntity.getLevel().getBlockState(blockEntity.getBlockPos()); if (state.getBlock() instanceof StorageMonitorBlock) { direction = state.getValue(RSBlocks.STORAGE_MONITOR.get().getDirection().getProperty()); } - final int light = LevelRenderer.getLightColor(tile.getLevel(), tile.getBlockPos().offset(direction.getNormal())); + final int light = LevelRenderer.getLightColor(blockEntity.getLevel(), blockEntity.getBlockPos().offset(direction.getNormal())); final float rotation = (float) (Math.PI * (360 - direction.getOpposite().get2DDataValue() * 90) / 180d); - final int type = tile.getStackType(); + final int type = blockEntity.getStackType(); - final ItemStack itemStack = tile.getItemStack(); - final FluidStack fluidStack = tile.getFluidStack(); + final ItemStack itemStack = blockEntity.getItemStack(); + final FluidStack fluidStack = blockEntity.getFluidStack(); if (type == IType.ITEMS && itemStack != null && !itemStack.isEmpty()) { renderItem(matrixStack, renderTypeBuffer, direction, rotation, light, itemStack); - String amount = API.instance().getQuantityFormatter().formatWithUnits(tile.getAmount()); + String amount = API.instance().getQuantityFormatter().formatWithUnits(blockEntity.getAmount()); renderText(matrixStack, renderTypeBuffer, direction, rotation, light, amount); } else if (type == IType.FLUIDS && fluidStack != null && !fluidStack.isEmpty()) { renderFluid(matrixStack, renderTypeBuffer, direction, rotation, light, fluidStack); - String amount = API.instance().getQuantityFormatter().formatInBucketFormWithOnlyTrailingDigitsIfZero(tile.getAmount()); + String amount = API.instance().getQuantityFormatter().formatInBucketFormWithOnlyTrailingDigitsIfZero(blockEntity.getAmount()); renderText(matrixStack, renderTypeBuffer, direction, rotation, light, amount); } diff --git a/src/main/java/com/refinedmods/refinedstorage/render/model/DiskDriveBakedModel.java b/src/main/java/com/refinedmods/refinedstorage/render/model/DiskDriveBakedModel.java index 2c352b2a4..17ca2ab1d 100644 --- a/src/main/java/com/refinedmods/refinedstorage/render/model/DiskDriveBakedModel.java +++ b/src/main/java/com/refinedmods/refinedstorage/render/model/DiskDriveBakedModel.java @@ -6,7 +6,7 @@ import com.google.common.cache.LoadingCache; import com.mojang.math.Vector3f; import com.refinedmods.refinedstorage.RSBlocks; import com.refinedmods.refinedstorage.apiimpl.network.node.DiskState; -import com.refinedmods.refinedstorage.tile.DiskDriveTile; +import com.refinedmods.refinedstorage.blockentity.DiskDriveBlockEntity; import net.minecraft.client.renderer.block.model.BakedQuad; import net.minecraft.client.resources.model.BakedModel; import net.minecraft.core.Direction; @@ -103,7 +103,7 @@ public class DiskDriveBakedModel extends DelegateBakedModel { @Nonnull @Override public List getQuads(@Nullable BlockState state, @Nullable Direction side, @Nonnull Random rand, @Nonnull IModelData data) { - DiskState[] diskState = data.getData(DiskDriveTile.DISK_STATE_PROPERTY); + DiskState[] diskState = data.getData(DiskDriveBlockEntity.DISK_STATE_PROPERTY); if (diskState == null) { return base.getQuads(state, side, rand, data); diff --git a/src/main/java/com/refinedmods/refinedstorage/render/model/DiskManipulatorBakedModel.java b/src/main/java/com/refinedmods/refinedstorage/render/model/DiskManipulatorBakedModel.java index 20b18cd1f..772637ecf 100644 --- a/src/main/java/com/refinedmods/refinedstorage/render/model/DiskManipulatorBakedModel.java +++ b/src/main/java/com/refinedmods/refinedstorage/render/model/DiskManipulatorBakedModel.java @@ -7,7 +7,7 @@ import com.mojang.math.Vector3f; import com.refinedmods.refinedstorage.RSBlocks; import com.refinedmods.refinedstorage.apiimpl.network.node.DiskState; import com.refinedmods.refinedstorage.block.NetworkNodeBlock; -import com.refinedmods.refinedstorage.tile.DiskManipulatorTile; +import com.refinedmods.refinedstorage.blockentity.DiskManipulatorBlockEntity; import com.refinedmods.refinedstorage.util.ColorMap; import net.minecraft.client.renderer.block.model.BakedQuad; import net.minecraft.client.resources.model.BakedModel; @@ -113,7 +113,7 @@ public class DiskManipulatorBakedModel extends DelegateBakedModel { @Override @Nonnull public List getQuads(@Nullable BlockState state, @Nullable Direction side, @Nonnull Random rand, @Nonnull IModelData data) { - DiskState[] diskState = data.getData(DiskManipulatorTile.DISK_STATE_PROPERTY); + DiskState[] diskState = data.getData(DiskManipulatorBlockEntity.DISK_STATE_PROPERTY); if (diskState == null) { return base.getQuads(state, side, rand, data); diff --git a/src/main/java/com/refinedmods/refinedstorage/render/model/PortableGridBakedModel.java b/src/main/java/com/refinedmods/refinedstorage/render/model/PortableGridBakedModel.java index 43fc2ed16..bd4453812 100644 --- a/src/main/java/com/refinedmods/refinedstorage/render/model/PortableGridBakedModel.java +++ b/src/main/java/com/refinedmods/refinedstorage/render/model/PortableGridBakedModel.java @@ -6,8 +6,8 @@ import com.google.common.cache.LoadingCache; import com.refinedmods.refinedstorage.RSBlocks; import com.refinedmods.refinedstorage.block.PortableGridBlock; import com.refinedmods.refinedstorage.inventory.player.PlayerSlot; -import com.refinedmods.refinedstorage.tile.grid.portable.PortableGrid; -import com.refinedmods.refinedstorage.tile.grid.portable.PortableGridDiskState; +import com.refinedmods.refinedstorage.blockentity.grid.portable.PortableGrid; +import com.refinedmods.refinedstorage.blockentity.grid.portable.PortableGridDiskState; import net.minecraft.client.multiplayer.ClientLevel; import net.minecraft.client.renderer.block.model.BakedQuad; import net.minecraft.client.renderer.block.model.ItemOverrides; diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/ConstructorScreen.java b/src/main/java/com/refinedmods/refinedstorage/screen/ConstructorScreen.java index 2319bd9e6..745662223 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/ConstructorScreen.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/ConstructorScreen.java @@ -7,8 +7,8 @@ import com.refinedmods.refinedstorage.screen.widget.sidebutton.ConstructorDropSi import com.refinedmods.refinedstorage.screen.widget.sidebutton.ExactModeSideButton; import com.refinedmods.refinedstorage.screen.widget.sidebutton.RedstoneModeSideButton; import com.refinedmods.refinedstorage.screen.widget.sidebutton.TypeSideButton; -import com.refinedmods.refinedstorage.tile.ConstructorTile; -import com.refinedmods.refinedstorage.tile.NetworkNodeTile; +import com.refinedmods.refinedstorage.blockentity.ConstructorBlockEntity; +import com.refinedmods.refinedstorage.blockentity.NetworkNodeBlockEntity; import net.minecraft.client.resources.language.I18n; import net.minecraft.network.chat.Component; import net.minecraft.world.entity.player.Inventory; @@ -20,11 +20,11 @@ public class ConstructorScreen extends BaseScreen { @Override public void onPostInit(int x, int y) { - addSideButton(new RedstoneModeSideButton(this, NetworkNodeTile.REDSTONE_MODE)); + addSideButton(new RedstoneModeSideButton(this, NetworkNodeBlockEntity.REDSTONE_MODE)); - addSideButton(new TypeSideButton(this, ConstructorTile.TYPE)); + addSideButton(new TypeSideButton(this, ConstructorBlockEntity.TYPE)); - addSideButton(new ExactModeSideButton(this, ConstructorTile.COMPARE)); + addSideButton(new ExactModeSideButton(this, ConstructorBlockEntity.COMPARE)); addSideButton(new ConstructorDropSideButton(this)); } diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/ControllerScreen.java b/src/main/java/com/refinedmods/refinedstorage/screen/ControllerScreen.java index 1bd97a2b4..e6fa2682c 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/ControllerScreen.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/ControllerScreen.java @@ -7,8 +7,8 @@ import com.refinedmods.refinedstorage.apiimpl.network.Network; import com.refinedmods.refinedstorage.container.ControllerContainer; import com.refinedmods.refinedstorage.screen.widget.ScrollbarWidget; import com.refinedmods.refinedstorage.screen.widget.sidebutton.RedstoneModeSideButton; -import com.refinedmods.refinedstorage.tile.ClientNode; -import com.refinedmods.refinedstorage.tile.ControllerTile; +import com.refinedmods.refinedstorage.blockentity.ClientNode; +import com.refinedmods.refinedstorage.blockentity.ControllerBlockEntity; import com.refinedmods.refinedstorage.util.RenderUtils; import net.minecraft.client.resources.language.I18n; import net.minecraft.network.chat.Component; @@ -34,7 +34,7 @@ public class ControllerScreen extends BaseScreen { @Override public void onPostInit(int x, int y) { - addSideButton(new RedstoneModeSideButton(this, ControllerTile.REDSTONE_MODE)); + addSideButton(new RedstoneModeSideButton(this, ControllerBlockEntity.REDSTONE_MODE)); } @Override @@ -49,7 +49,7 @@ public class ControllerScreen extends BaseScreen { blit(matrixStack, x, y, 0, 0, imageWidth, imageHeight); - int energyBarHeightNew = Network.getEnergyScaled(ControllerTile.ENERGY_STORED.getValue(), ControllerTile.ENERGY_CAPACITY.getValue(), ENERGY_BAR_HEIGHT); + int energyBarHeightNew = Network.getEnergyScaled(ControllerBlockEntity.ENERGY_STORED.getValue(), ControllerBlockEntity.ENERGY_CAPACITY.getValue(), ENERGY_BAR_HEIGHT); blit(matrixStack, x + ENERGY_BAR_X, y + ENERGY_BAR_Y + ENERGY_BAR_HEIGHT - energyBarHeightNew, 178, ENERGY_BAR_HEIGHT - energyBarHeightNew, ENERGY_BAR_WIDTH, energyBarHeightNew); @@ -90,7 +90,7 @@ public class ControllerScreen extends BaseScreen { Lighting.setupFor3DItems(); - List nodes = ControllerTile.NODES.getValue(); + List nodes = ControllerBlockEntity.NODES.getValue(); ClientNode hoveringNode = null; @@ -135,12 +135,12 @@ public class ControllerScreen extends BaseScreen { } if (RenderUtils.inBounds(ENERGY_BAR_X, ENERGY_BAR_Y, ENERGY_BAR_WIDTH, ENERGY_BAR_HEIGHT, mouseX, mouseY)) { - renderTooltip(matrixStack, mouseX, mouseY, I18n.get("misc.refinedstorage.energy_usage", ControllerTile.ENERGY_USAGE.getValue()) + "\n" + I18n.get("misc.refinedstorage.energy_stored", ControllerTile.ENERGY_STORED.getValue(), ControllerTile.ENERGY_CAPACITY.getValue())); + renderTooltip(matrixStack, mouseX, mouseY, I18n.get("misc.refinedstorage.energy_usage", ControllerBlockEntity.ENERGY_USAGE.getValue()) + "\n" + I18n.get("misc.refinedstorage.energy_stored", ControllerBlockEntity.ENERGY_STORED.getValue(), ControllerBlockEntity.ENERGY_CAPACITY.getValue())); } } private int getRows() { - return Math.max(0, (int) Math.ceil((float) ControllerTile.NODES.getValue().size() / 2F)); + return Math.max(0, (int) Math.ceil((float) ControllerBlockEntity.NODES.getValue().size() / 2F)); } private String trimNameIfNeeded(boolean scaled, String name) { diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/CrafterTileDataParameterClientListener.java b/src/main/java/com/refinedmods/refinedstorage/screen/CrafterBlockEntitySynchronizationClientListener.java similarity index 63% rename from src/main/java/com/refinedmods/refinedstorage/screen/CrafterTileDataParameterClientListener.java rename to src/main/java/com/refinedmods/refinedstorage/screen/CrafterBlockEntitySynchronizationClientListener.java index df27dd437..2bea6e26a 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/CrafterTileDataParameterClientListener.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/CrafterBlockEntitySynchronizationClientListener.java @@ -1,9 +1,9 @@ package com.refinedmods.refinedstorage.screen; import com.refinedmods.refinedstorage.screen.widget.sidebutton.CrafterModeSideButton; -import com.refinedmods.refinedstorage.tile.data.TileDataParameterClientListener; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationClientListener; -public class CrafterTileDataParameterClientListener implements TileDataParameterClientListener { +public class CrafterBlockEntitySynchronizationClientListener implements BlockEntitySynchronizationClientListener { @Override public void onChanged(boolean initial, Boolean hasRoot) { if (Boolean.FALSE.equals(hasRoot)) { diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/CrafterManagerScreen.java b/src/main/java/com/refinedmods/refinedstorage/screen/CrafterManagerScreen.java index 937903ab0..aada57b06 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/CrafterManagerScreen.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/CrafterManagerScreen.java @@ -12,9 +12,9 @@ import com.refinedmods.refinedstorage.screen.widget.SearchWidget; import com.refinedmods.refinedstorage.screen.widget.sidebutton.CrafterManagerSearchBoxModeSideButton; import com.refinedmods.refinedstorage.screen.widget.sidebutton.GridSizeSideButton; import com.refinedmods.refinedstorage.screen.widget.sidebutton.RedstoneModeSideButton; -import com.refinedmods.refinedstorage.tile.CrafterManagerTile; -import com.refinedmods.refinedstorage.tile.NetworkNodeTile; -import com.refinedmods.refinedstorage.tile.data.TileDataManager; +import com.refinedmods.refinedstorage.blockentity.CrafterManagerBlockEntity; +import com.refinedmods.refinedstorage.blockentity.NetworkNodeBlockEntity; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationManager; import com.refinedmods.refinedstorage.util.RenderUtils; import net.minecraft.client.resources.language.I18n; import net.minecraft.network.chat.Component; @@ -34,7 +34,7 @@ public class CrafterManagerScreen extends BaseScreen im public CrafterManagerScreen(CrafterManagerContainer container, Inventory inventory, Component title) { super(container, 193, 0, inventory, title); - this.crafterManager = ((CrafterManagerTile) container.getTile()).getNode(); + this.crafterManager = ((CrafterManagerBlockEntity) container.getBlockEntity()).getNode(); } @Override @@ -44,9 +44,9 @@ public class CrafterManagerScreen extends BaseScreen im @Override public void onPostInit(int x, int y) { - addSideButton(new RedstoneModeSideButton(this, NetworkNodeTile.REDSTONE_MODE)); + addSideButton(new RedstoneModeSideButton(this, NetworkNodeBlockEntity.REDSTONE_MODE)); addSideButton(new CrafterManagerSearchBoxModeSideButton(this)); - addSideButton(new GridSizeSideButton(this, crafterManager::getSize, size -> TileDataManager.setParameter(CrafterManagerTile.SIZE, size))); + addSideButton(new GridSizeSideButton(this, crafterManager::getSize, size -> BlockEntitySynchronizationManager.setParameter(CrafterManagerBlockEntity.SIZE, size))); this.scrollbar = new ScrollbarWidget(this, 174, getTopHeight(), 12, (getVisibleRows() * 18) - 2); this.scrollbar.addListener((oldOffset, newOffset) -> menu.initSlots(null)); diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/CraftingMonitorScreen.java b/src/main/java/com/refinedmods/refinedstorage/screen/CraftingMonitorScreen.java index 1e8ec8c54..d1bcbfbdb 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/CraftingMonitorScreen.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/CraftingMonitorScreen.java @@ -18,7 +18,7 @@ import com.refinedmods.refinedstorage.network.craftingmonitor.CraftingMonitorCan import com.refinedmods.refinedstorage.screen.widget.ScrollbarWidget; import com.refinedmods.refinedstorage.screen.widget.TabListWidget; import com.refinedmods.refinedstorage.screen.widget.sidebutton.RedstoneModeSideButton; -import com.refinedmods.refinedstorage.tile.craftingmonitor.ICraftingMonitor; +import com.refinedmods.refinedstorage.blockentity.craftingmonitor.ICraftingMonitor; import com.refinedmods.refinedstorage.util.RenderUtils; import net.minecraft.ChatFormatting; import net.minecraft.client.gui.components.Button; diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/DestructorScreen.java b/src/main/java/com/refinedmods/refinedstorage/screen/DestructorScreen.java index 1affa107b..462b6e82f 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/DestructorScreen.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/DestructorScreen.java @@ -4,8 +4,8 @@ import com.mojang.blaze3d.vertex.PoseStack; import com.refinedmods.refinedstorage.RS; import com.refinedmods.refinedstorage.container.DestructorContainer; import com.refinedmods.refinedstorage.screen.widget.sidebutton.*; -import com.refinedmods.refinedstorage.tile.DestructorTile; -import com.refinedmods.refinedstorage.tile.NetworkNodeTile; +import com.refinedmods.refinedstorage.blockentity.DestructorBlockEntity; +import com.refinedmods.refinedstorage.blockentity.NetworkNodeBlockEntity; import net.minecraft.client.resources.language.I18n; import net.minecraft.network.chat.Component; import net.minecraft.world.entity.player.Inventory; @@ -17,13 +17,13 @@ public class DestructorScreen extends BaseScreen { @Override public void onPostInit(int x, int y) { - addSideButton(new RedstoneModeSideButton(this, NetworkNodeTile.REDSTONE_MODE)); + addSideButton(new RedstoneModeSideButton(this, NetworkNodeBlockEntity.REDSTONE_MODE)); - addSideButton(new TypeSideButton(this, DestructorTile.TYPE)); + addSideButton(new TypeSideButton(this, DestructorBlockEntity.TYPE)); - addSideButton(new WhitelistBlacklistSideButton(this, DestructorTile.WHITELIST_BLACKLIST)); + addSideButton(new WhitelistBlacklistSideButton(this, DestructorBlockEntity.WHITELIST_BLACKLIST)); - addSideButton(new ExactModeSideButton(this, DestructorTile.COMPARE)); + addSideButton(new ExactModeSideButton(this, DestructorBlockEntity.COMPARE)); addSideButton(new DestructorPickupSideButton(this)); } diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/DetectorScreen.java b/src/main/java/com/refinedmods/refinedstorage/screen/DetectorScreen.java index d121b730a..3ad5781fd 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/DetectorScreen.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/DetectorScreen.java @@ -7,8 +7,8 @@ import com.refinedmods.refinedstorage.render.RenderSettings; import com.refinedmods.refinedstorage.screen.widget.sidebutton.DetectorModeSideButton; import com.refinedmods.refinedstorage.screen.widget.sidebutton.ExactModeSideButton; import com.refinedmods.refinedstorage.screen.widget.sidebutton.TypeSideButton; -import com.refinedmods.refinedstorage.tile.DetectorTile; -import com.refinedmods.refinedstorage.tile.data.TileDataManager; +import com.refinedmods.refinedstorage.blockentity.DetectorBlockEntity; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationManager; import net.minecraft.client.gui.components.EditBox; import net.minecraft.client.resources.language.I18n; import net.minecraft.network.chat.Component; @@ -25,14 +25,14 @@ public class DetectorScreen extends BaseScreen { @Override public void onPostInit(int x, int y) { - addSideButton(new TypeSideButton(this, DetectorTile.TYPE)); + addSideButton(new TypeSideButton(this, DetectorBlockEntity.TYPE)); addSideButton(new DetectorModeSideButton(this)); - addSideButton(new ExactModeSideButton(this, DetectorTile.COMPARE)); + addSideButton(new ExactModeSideButton(this, DetectorBlockEntity.COMPARE)); amountField = new EditBox(font, x + 41 + 1, y + 23 + 1, 50, font.lineHeight, new TextComponent("")); - amountField.setValue(String.valueOf(DetectorTile.AMOUNT.getValue())); + amountField.setValue(String.valueOf(DetectorBlockEntity.AMOUNT.getValue())); amountField.setBordered(false); amountField.setVisible(true); amountField.setCanLoseFocus(true); @@ -42,7 +42,7 @@ public class DetectorScreen extends BaseScreen { try { int result = Integer.parseInt(value); - TileDataManager.setParameter(DetectorTile.AMOUNT, result); + BlockEntitySynchronizationManager.setParameter(DetectorBlockEntity.AMOUNT, result); } catch (NumberFormatException e) { // NO OP } diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/DiskDriveScreen.java b/src/main/java/com/refinedmods/refinedstorage/screen/DiskDriveScreen.java index 1e015c709..b34957cf8 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/DiskDriveScreen.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/DiskDriveScreen.java @@ -2,8 +2,8 @@ package com.refinedmods.refinedstorage.screen; import com.mojang.blaze3d.vertex.PoseStack; import com.refinedmods.refinedstorage.container.DiskDriveContainer; -import com.refinedmods.refinedstorage.tile.DiskDriveTile; -import com.refinedmods.refinedstorage.tile.NetworkNodeTile; +import com.refinedmods.refinedstorage.blockentity.DiskDriveBlockEntity; +import com.refinedmods.refinedstorage.blockentity.NetworkNodeBlockEntity; import net.minecraft.client.resources.language.I18n; import net.minecraft.network.chat.Component; import net.minecraft.world.entity.player.Inventory; @@ -15,16 +15,16 @@ public class DiskDriveScreen extends StorageScreen { inventory, title, "gui/disk_drive.png", - new StorageScreenTileDataParameters( - DiskDriveTile.TYPE, - NetworkNodeTile.REDSTONE_MODE, - DiskDriveTile.COMPARE, - DiskDriveTile.WHITELIST_BLACKLIST, - DiskDriveTile.PRIORITY, - DiskDriveTile.ACCESS_TYPE + new StorageScreenSynchronizationParameters( + DiskDriveBlockEntity.TYPE, + NetworkNodeBlockEntity.REDSTONE_MODE, + DiskDriveBlockEntity.COMPARE, + DiskDriveBlockEntity.WHITELIST_BLACKLIST, + DiskDriveBlockEntity.PRIORITY, + DiskDriveBlockEntity.ACCESS_TYPE ), - DiskDriveTile.STORED::getValue, - DiskDriveTile.CAPACITY::getValue + DiskDriveBlockEntity.STORED::getValue, + DiskDriveBlockEntity.CAPACITY::getValue ); } diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/DiskManipulatorScreen.java b/src/main/java/com/refinedmods/refinedstorage/screen/DiskManipulatorScreen.java index bb35109fb..b89e9f319 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/DiskManipulatorScreen.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/DiskManipulatorScreen.java @@ -4,8 +4,8 @@ import com.mojang.blaze3d.vertex.PoseStack; import com.refinedmods.refinedstorage.RS; import com.refinedmods.refinedstorage.container.DiskManipulatorContainer; import com.refinedmods.refinedstorage.screen.widget.sidebutton.*; -import com.refinedmods.refinedstorage.tile.DiskManipulatorTile; -import com.refinedmods.refinedstorage.tile.NetworkNodeTile; +import com.refinedmods.refinedstorage.blockentity.DiskManipulatorBlockEntity; +import com.refinedmods.refinedstorage.blockentity.NetworkNodeBlockEntity; import net.minecraft.client.resources.language.I18n; import net.minecraft.network.chat.Component; import net.minecraft.world.entity.player.Inventory; @@ -17,11 +17,11 @@ public class DiskManipulatorScreen extends BaseScreen @Override public void onPostInit(int x, int y) { - addSideButton(new RedstoneModeSideButton(this, NetworkNodeTile.REDSTONE_MODE)); + addSideButton(new RedstoneModeSideButton(this, NetworkNodeBlockEntity.REDSTONE_MODE)); addSideButton(new IoModeSideButton(this)); - addSideButton(new TypeSideButton(this, DiskManipulatorTile.TYPE)); - addSideButton(new WhitelistBlacklistSideButton(this, DiskManipulatorTile.WHITELIST_BLACKLIST)); - addSideButton(new ExactModeSideButton(this, DiskManipulatorTile.COMPARE)); + addSideButton(new TypeSideButton(this, DiskManipulatorBlockEntity.TYPE)); + addSideButton(new WhitelistBlacklistSideButton(this, DiskManipulatorBlockEntity.WHITELIST_BLACKLIST)); + addSideButton(new ExactModeSideButton(this, DiskManipulatorBlockEntity.COMPARE)); } @Override diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/ExporterScreen.java b/src/main/java/com/refinedmods/refinedstorage/screen/ExporterScreen.java index 6102f7356..5ea6e6675 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/ExporterScreen.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/ExporterScreen.java @@ -7,8 +7,8 @@ import com.refinedmods.refinedstorage.item.UpgradeItem; import com.refinedmods.refinedstorage.screen.widget.sidebutton.ExactModeSideButton; import com.refinedmods.refinedstorage.screen.widget.sidebutton.RedstoneModeSideButton; import com.refinedmods.refinedstorage.screen.widget.sidebutton.TypeSideButton; -import com.refinedmods.refinedstorage.tile.ExporterTile; -import com.refinedmods.refinedstorage.tile.NetworkNodeTile; +import com.refinedmods.refinedstorage.blockentity.ExporterBlockEntity; +import com.refinedmods.refinedstorage.blockentity.NetworkNodeBlockEntity; import net.minecraft.client.resources.language.I18n; import net.minecraft.network.chat.Component; import net.minecraft.world.entity.player.Inventory; @@ -23,16 +23,16 @@ public class ExporterScreen extends BaseScreen { } private boolean hasRegulatorMode() { - return ((ExporterTile) menu.getTile()).getNode().getUpgrades().hasUpgrade(UpgradeItem.Type.REGULATOR); + return ((ExporterBlockEntity) menu.getBlockEntity()).getNode().getUpgrades().hasUpgrade(UpgradeItem.Type.REGULATOR); } @Override public void onPostInit(int x, int y) { - addSideButton(new RedstoneModeSideButton(this, NetworkNodeTile.REDSTONE_MODE)); + addSideButton(new RedstoneModeSideButton(this, NetworkNodeBlockEntity.REDSTONE_MODE)); - addSideButton(new TypeSideButton(this, ExporterTile.TYPE)); + addSideButton(new TypeSideButton(this, ExporterBlockEntity.TYPE)); - addSideButton(new ExactModeSideButton(this, ExporterTile.COMPARE)); + addSideButton(new ExactModeSideButton(this, ExporterBlockEntity.COMPARE)); } @Override diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/ExternalStorageScreen.java b/src/main/java/com/refinedmods/refinedstorage/screen/ExternalStorageScreen.java index 4527abe16..27eb6aacf 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/ExternalStorageScreen.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/ExternalStorageScreen.java @@ -1,8 +1,8 @@ package com.refinedmods.refinedstorage.screen; import com.refinedmods.refinedstorage.container.ExternalStorageContainer; -import com.refinedmods.refinedstorage.tile.ExternalStorageTile; -import com.refinedmods.refinedstorage.tile.NetworkNodeTile; +import com.refinedmods.refinedstorage.blockentity.ExternalStorageBlockEntity; +import com.refinedmods.refinedstorage.blockentity.NetworkNodeBlockEntity; import net.minecraft.network.chat.Component; import net.minecraft.world.entity.player.Inventory; @@ -13,16 +13,16 @@ public class ExternalStorageScreen extends StorageScreen { @Override public void onPostInit(int x, int y) { - addSideButton(new RedstoneModeSideButton(this, NetworkNodeTile.REDSTONE_MODE)); + addSideButton(new RedstoneModeSideButton(this, NetworkNodeBlockEntity.REDSTONE_MODE)); } @Override @@ -38,12 +38,12 @@ public class FluidInterfaceScreen extends BaseScreen { blit(matrixStack, x, y, 0, 0, imageWidth, imageHeight); - if (!FluidInterfaceTile.TANK_IN.getValue().isEmpty()) { - TANK_RENDERER.render(matrixStack, x + 46, y + 56, FluidInterfaceTile.TANK_IN.getValue()); + if (!FluidInterfaceBlockEntity.TANK_IN.getValue().isEmpty()) { + TANK_RENDERER.render(matrixStack, x + 46, y + 56, FluidInterfaceBlockEntity.TANK_IN.getValue()); } - if (!FluidInterfaceTile.TANK_OUT.getValue().isEmpty()) { - TANK_RENDERER.render(matrixStack, x + 118, y + 56, FluidInterfaceTile.TANK_OUT.getValue()); + if (!FluidInterfaceBlockEntity.TANK_OUT.getValue().isEmpty()) { + TANK_RENDERER.render(matrixStack, x + 118, y + 56, FluidInterfaceBlockEntity.TANK_OUT.getValue()); } } @@ -54,12 +54,12 @@ public class FluidInterfaceScreen extends BaseScreen { renderString(matrixStack, 115 + 1, 20, I18n.get("gui.refinedstorage.fluid_interface.out")); renderString(matrixStack, 7, 111, I18n.get("container.inventory")); - if (RenderUtils.inBounds(46, 56, 12, 47, mouseX, mouseY) && !FluidInterfaceTile.TANK_IN.getValue().isEmpty()) { - renderTooltip(matrixStack, mouseX, mouseY, FluidInterfaceTile.TANK_IN.getValue().getDisplayName().getString() + "\n" + ChatFormatting.GRAY + API.instance().getQuantityFormatter().formatInBucketForm(FluidInterfaceTile.TANK_IN.getValue().getAmount()) + ChatFormatting.RESET); + if (RenderUtils.inBounds(46, 56, 12, 47, mouseX, mouseY) && !FluidInterfaceBlockEntity.TANK_IN.getValue().isEmpty()) { + renderTooltip(matrixStack, mouseX, mouseY, FluidInterfaceBlockEntity.TANK_IN.getValue().getDisplayName().getString() + "\n" + ChatFormatting.GRAY + API.instance().getQuantityFormatter().formatInBucketForm(FluidInterfaceBlockEntity.TANK_IN.getValue().getAmount()) + ChatFormatting.RESET); } - if (RenderUtils.inBounds(118, 56, 12, 47, mouseX, mouseY) && !FluidInterfaceTile.TANK_OUT.getValue().isEmpty()) { - renderTooltip(matrixStack, mouseX, mouseY, FluidInterfaceTile.TANK_OUT.getValue().getDisplayName().getString() + "\n" + ChatFormatting.GRAY + API.instance().getQuantityFormatter().formatInBucketForm(FluidInterfaceTile.TANK_OUT.getValue().getAmount()) + ChatFormatting.RESET); + if (RenderUtils.inBounds(118, 56, 12, 47, mouseX, mouseY) && !FluidInterfaceBlockEntity.TANK_OUT.getValue().isEmpty()) { + renderTooltip(matrixStack, mouseX, mouseY, FluidInterfaceBlockEntity.TANK_OUT.getValue().getDisplayName().getString() + "\n" + ChatFormatting.GRAY + API.instance().getQuantityFormatter().formatInBucketForm(FluidInterfaceBlockEntity.TANK_OUT.getValue().getAmount()) + ChatFormatting.RESET); } } } diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/FluidStorageBlockScreen.java b/src/main/java/com/refinedmods/refinedstorage/screen/FluidStorageBlockScreen.java index 729153306..cff86b59c 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/FluidStorageBlockScreen.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/FluidStorageBlockScreen.java @@ -1,8 +1,8 @@ package com.refinedmods.refinedstorage.screen; import com.refinedmods.refinedstorage.container.FluidStorageContainer; -import com.refinedmods.refinedstorage.tile.FluidStorageTile; -import com.refinedmods.refinedstorage.tile.NetworkNodeTile; +import com.refinedmods.refinedstorage.blockentity.FluidStorageBlockEntity; +import com.refinedmods.refinedstorage.blockentity.NetworkNodeBlockEntity; import net.minecraft.network.chat.Component; import net.minecraft.world.entity.player.Inventory; @@ -13,16 +13,16 @@ public class FluidStorageBlockScreen extends StorageScreen (long) ((FluidStorageTile) container.getTile()).getFluidStorageType().getCapacity() + FluidStorageBlockEntity.STORED::getValue, + () -> (long) ((FluidStorageBlockEntity) container.getBlockEntity()).getFluidStorageType().getCapacity() ); } } diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/ImporterScreen.java b/src/main/java/com/refinedmods/refinedstorage/screen/ImporterScreen.java index cf6551057..7298394b1 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/ImporterScreen.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/ImporterScreen.java @@ -7,8 +7,8 @@ import com.refinedmods.refinedstorage.screen.widget.sidebutton.ExactModeSideButt import com.refinedmods.refinedstorage.screen.widget.sidebutton.RedstoneModeSideButton; import com.refinedmods.refinedstorage.screen.widget.sidebutton.TypeSideButton; import com.refinedmods.refinedstorage.screen.widget.sidebutton.WhitelistBlacklistSideButton; -import com.refinedmods.refinedstorage.tile.ImporterTile; -import com.refinedmods.refinedstorage.tile.NetworkNodeTile; +import com.refinedmods.refinedstorage.blockentity.ImporterBlockEntity; +import com.refinedmods.refinedstorage.blockentity.NetworkNodeBlockEntity; import net.minecraft.client.resources.language.I18n; import net.minecraft.network.chat.Component; import net.minecraft.world.entity.player.Inventory; @@ -20,13 +20,13 @@ public class ImporterScreen extends BaseScreen { @Override public void onPostInit(int x, int y) { - addSideButton(new RedstoneModeSideButton(this, NetworkNodeTile.REDSTONE_MODE)); + addSideButton(new RedstoneModeSideButton(this, NetworkNodeBlockEntity.REDSTONE_MODE)); - addSideButton(new TypeSideButton(this, ImporterTile.TYPE)); + addSideButton(new TypeSideButton(this, ImporterBlockEntity.TYPE)); - addSideButton(new WhitelistBlacklistSideButton(this, ImporterTile.WHITELIST_BLACKLIST)); + addSideButton(new WhitelistBlacklistSideButton(this, ImporterBlockEntity.WHITELIST_BLACKLIST)); - addSideButton(new ExactModeSideButton(this, ImporterTile.COMPARE)); + addSideButton(new ExactModeSideButton(this, ImporterBlockEntity.COMPARE)); } @Override diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/InterfaceScreen.java b/src/main/java/com/refinedmods/refinedstorage/screen/InterfaceScreen.java index 5d81d5ad9..978bc8d56 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/InterfaceScreen.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/InterfaceScreen.java @@ -5,8 +5,8 @@ import com.refinedmods.refinedstorage.RS; import com.refinedmods.refinedstorage.container.InterfaceContainer; import com.refinedmods.refinedstorage.screen.widget.sidebutton.ExactModeSideButton; import com.refinedmods.refinedstorage.screen.widget.sidebutton.RedstoneModeSideButton; -import com.refinedmods.refinedstorage.tile.InterfaceTile; -import com.refinedmods.refinedstorage.tile.NetworkNodeTile; +import com.refinedmods.refinedstorage.blockentity.InterfaceBlockEntity; +import com.refinedmods.refinedstorage.blockentity.NetworkNodeBlockEntity; import net.minecraft.client.resources.language.I18n; import net.minecraft.network.chat.Component; import net.minecraft.world.entity.player.Inventory; @@ -18,9 +18,9 @@ public class InterfaceScreen extends BaseScreen { @Override public void onPostInit(int x, int y) { - addSideButton(new RedstoneModeSideButton(this, NetworkNodeTile.REDSTONE_MODE)); + addSideButton(new RedstoneModeSideButton(this, NetworkNodeBlockEntity.REDSTONE_MODE)); - addSideButton(new ExactModeSideButton(this, InterfaceTile.COMPARE)); + addSideButton(new ExactModeSideButton(this, InterfaceBlockEntity.COMPARE)); } @Override diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/NetworkTransmitterScreen.java b/src/main/java/com/refinedmods/refinedstorage/screen/NetworkTransmitterScreen.java index 9bc249186..4ab0f489d 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/NetworkTransmitterScreen.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/NetworkTransmitterScreen.java @@ -4,8 +4,8 @@ import com.mojang.blaze3d.vertex.PoseStack; import com.refinedmods.refinedstorage.RS; import com.refinedmods.refinedstorage.container.NetworkTransmitterContainer; import com.refinedmods.refinedstorage.screen.widget.sidebutton.RedstoneModeSideButton; -import com.refinedmods.refinedstorage.tile.NetworkNodeTile; -import com.refinedmods.refinedstorage.tile.NetworkTransmitterTile; +import com.refinedmods.refinedstorage.blockentity.NetworkNodeBlockEntity; +import com.refinedmods.refinedstorage.blockentity.NetworkTransmitterBlockEntity; import net.minecraft.client.resources.language.I18n; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; @@ -20,7 +20,7 @@ public class NetworkTransmitterScreen extends BaseScreen receiverDim = NetworkTransmitterTile.RECEIVER_DIMENSION.getValue(); - int distance = NetworkTransmitterTile.DISTANCE.getValue(); + Optional receiverDim = NetworkTransmitterBlockEntity.RECEIVER_DIMENSION.getValue(); + int distance = NetworkTransmitterBlockEntity.DISTANCE.getValue(); if (!receiverDim.isPresent()) { text = I18n.get("gui.refinedstorage.network_transmitter.missing_card"); diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/PriorityScreen.java b/src/main/java/com/refinedmods/refinedstorage/screen/PriorityScreen.java index f89ce29d9..871841b85 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/PriorityScreen.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/PriorityScreen.java @@ -1,7 +1,7 @@ package com.refinedmods.refinedstorage.screen; -import com.refinedmods.refinedstorage.tile.data.TileDataManager; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationManager; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; import net.minecraft.network.chat.Component; import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.world.entity.player.Inventory; @@ -10,9 +10,9 @@ import net.minecraft.world.inventory.AbstractContainerMenu; import org.apache.commons.lang3.tuple.Pair; public class PriorityScreen extends AmountSpecifyingScreen { - private final TileDataParameter priority; + private final BlockEntitySynchronizationParameter priority; - public PriorityScreen(BaseScreen parent, TileDataParameter priority, Inventory inventory) { + public PriorityScreen(BaseScreen parent, BlockEntitySynchronizationParameter priority, Inventory inventory) { super(parent, new AbstractContainerMenu(null, 0) { @Override public boolean stillValid(Player player) { @@ -71,7 +71,7 @@ public class PriorityScreen extends AmountSpecifyingScreen { @Override public void onPostInit(int x, int y) { - addSideButton(new RedstoneModeSideButton(this, NetworkNodeTile.REDSTONE_MODE)); + addSideButton(new RedstoneModeSideButton(this, NetworkNodeBlockEntity.REDSTONE_MODE)); } @Override diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/SecurityManagerScreen.java b/src/main/java/com/refinedmods/refinedstorage/screen/SecurityManagerScreen.java index 0c0949a14..1b6811553 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/SecurityManagerScreen.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/SecurityManagerScreen.java @@ -8,8 +8,8 @@ import com.refinedmods.refinedstorage.item.SecurityCardItem; import com.refinedmods.refinedstorage.network.SecurityManagerUpdateMessage; import com.refinedmods.refinedstorage.screen.widget.CheckboxWidget; import com.refinedmods.refinedstorage.screen.widget.sidebutton.RedstoneModeSideButton; -import com.refinedmods.refinedstorage.tile.NetworkNodeTile; -import com.refinedmods.refinedstorage.tile.SecurityManagerTile; +import com.refinedmods.refinedstorage.blockentity.NetworkNodeBlockEntity; +import com.refinedmods.refinedstorage.blockentity.SecurityManagerBlockEntity; import com.refinedmods.refinedstorage.util.RenderUtils; import net.minecraft.client.resources.language.I18n; import net.minecraft.network.chat.Component; @@ -18,18 +18,18 @@ import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.item.ItemStack; public class SecurityManagerScreen extends BaseScreen { - private final SecurityManagerTile securityManager; + private final SecurityManagerBlockEntity securityManager; private final CheckboxWidget[] permissions = new CheckboxWidget[Permission.values().length]; public SecurityManagerScreen(SecurityManagerContainer container, Inventory inventory, Component title) { super(container, 176, 234, inventory, title); - this.securityManager = (SecurityManagerTile) container.getTile(); + this.securityManager = (SecurityManagerBlockEntity) container.getBlockEntity(); } @Override public void onPostInit(int x, int y) { - addSideButton(new RedstoneModeSideButton(this, NetworkNodeTile.REDSTONE_MODE)); + addSideButton(new RedstoneModeSideButton(this, NetworkNodeBlockEntity.REDSTONE_MODE)); int padding = 15; diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/StorageBlockScreen.java b/src/main/java/com/refinedmods/refinedstorage/screen/StorageBlockScreen.java index e9a237a56..045eae480 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/StorageBlockScreen.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/StorageBlockScreen.java @@ -1,8 +1,8 @@ package com.refinedmods.refinedstorage.screen; import com.refinedmods.refinedstorage.container.StorageContainer; -import com.refinedmods.refinedstorage.tile.NetworkNodeTile; -import com.refinedmods.refinedstorage.tile.StorageTile; +import com.refinedmods.refinedstorage.blockentity.NetworkNodeBlockEntity; +import com.refinedmods.refinedstorage.blockentity.StorageBlockEntity; import net.minecraft.network.chat.Component; import net.minecraft.world.entity.player.Inventory; @@ -13,16 +13,16 @@ public class StorageBlockScreen extends StorageScreen { inventory, title, "gui/storage.png", - new StorageScreenTileDataParameters( + new StorageScreenSynchronizationParameters( null, - NetworkNodeTile.REDSTONE_MODE, - StorageTile.COMPARE, - StorageTile.WHITELIST_BLACKLIST, - StorageTile.PRIORITY, - StorageTile.ACCESS_TYPE + NetworkNodeBlockEntity.REDSTONE_MODE, + StorageBlockEntity.COMPARE, + StorageBlockEntity.WHITELIST_BLACKLIST, + StorageBlockEntity.PRIORITY, + StorageBlockEntity.ACCESS_TYPE ), - StorageTile.STORED::getValue, - () -> (long) ((StorageTile) container.getTile()).getItemStorageType().getCapacity() + StorageBlockEntity.STORED::getValue, + () -> (long) ((StorageBlockEntity) container.getBlockEntity()).getItemStorageType().getCapacity() ); } } diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/StorageMonitorScreen.java b/src/main/java/com/refinedmods/refinedstorage/screen/StorageMonitorScreen.java index c6b26b0d7..76bbd8c14 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/StorageMonitorScreen.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/StorageMonitorScreen.java @@ -5,7 +5,7 @@ import com.refinedmods.refinedstorage.RS; import com.refinedmods.refinedstorage.container.StorageMonitorContainer; import com.refinedmods.refinedstorage.screen.widget.sidebutton.ExactModeSideButton; import com.refinedmods.refinedstorage.screen.widget.sidebutton.TypeSideButton; -import com.refinedmods.refinedstorage.tile.StorageMonitorTile; +import com.refinedmods.refinedstorage.blockentity.StorageMonitorBlockEntity; import net.minecraft.client.resources.language.I18n; import net.minecraft.network.chat.Component; import net.minecraft.world.entity.player.Inventory; @@ -17,8 +17,8 @@ public class StorageMonitorScreen extends BaseScreen { @Override public void onPostInit(int x, int y) { - addSideButton(new TypeSideButton(this, StorageMonitorTile.TYPE)); - addSideButton(new ExactModeSideButton(this, StorageMonitorTile.COMPARE)); + addSideButton(new TypeSideButton(this, StorageMonitorBlockEntity.TYPE)); + addSideButton(new ExactModeSideButton(this, StorageMonitorBlockEntity.COMPARE)); } @Override diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/StorageScreen.java b/src/main/java/com/refinedmods/refinedstorage/screen/StorageScreen.java index c1424c75d..6057bf9e1 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/StorageScreen.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/StorageScreen.java @@ -21,7 +21,7 @@ public class StorageScreen extends BaseScreen storedSupplier; private final Supplier capacitySupplier; @@ -29,37 +29,37 @@ public class StorageScreen extends BaseScreen storedSupplier, Supplier capacitySupplier) { super(container, 176, 223, inventory, title); this.texture = texture; - this.dataParameters = dataParameters; + this.parameters = parameters; this.storedSupplier = storedSupplier; this.capacitySupplier = capacitySupplier; } @Override public void onPostInit(int x, int y) { - if (dataParameters.getRedstoneModeParameter() != null) { - addSideButton(new RedstoneModeSideButton(this, dataParameters.getRedstoneModeParameter())); + if (parameters.getRedstoneModeParameter() != null) { + addSideButton(new RedstoneModeSideButton(this, parameters.getRedstoneModeParameter())); } - if (dataParameters.getTypeParameter() != null) { - addSideButton(new TypeSideButton(this, dataParameters.getTypeParameter())); + if (parameters.getTypeParameter() != null) { + addSideButton(new TypeSideButton(this, parameters.getTypeParameter())); } - if (dataParameters.getWhitelistBlacklistParameter() != null) { - addSideButton(new WhitelistBlacklistSideButton(this, dataParameters.getWhitelistBlacklistParameter())); + if (parameters.getWhitelistBlacklistParameter() != null) { + addSideButton(new WhitelistBlacklistSideButton(this, parameters.getWhitelistBlacklistParameter())); } - if (dataParameters.getExactModeParameter() != null) { - addSideButton(new ExactModeSideButton(this, dataParameters.getExactModeParameter())); + if (parameters.getExactModeParameter() != null) { + addSideButton(new ExactModeSideButton(this, parameters.getExactModeParameter())); } - if (dataParameters.getAccessTypeParameter() != null) { - addSideButton(new AccessTypeSideButton(this, dataParameters.getAccessTypeParameter())); + if (parameters.getAccessTypeParameter() != null) { + addSideButton(new AccessTypeSideButton(this, parameters.getAccessTypeParameter())); } int buttonWidth = 10 + font.width(I18n.get("misc.refinedstorage.priority")); @@ -71,7 +71,7 @@ public class StorageScreen extends BaseScreen minecraft.setScreen(new PriorityScreen(this, dataParameters.getPriorityParameter(), inventory)) + btn -> minecraft.setScreen(new PriorityScreen(this, parameters.getPriorityParameter(), inventory)) ); } diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/StorageScreenSynchronizationParameters.java b/src/main/java/com/refinedmods/refinedstorage/screen/StorageScreenSynchronizationParameters.java new file mode 100644 index 000000000..601d90c1b --- /dev/null +++ b/src/main/java/com/refinedmods/refinedstorage/screen/StorageScreenSynchronizationParameters.java @@ -0,0 +1,58 @@ +package com.refinedmods.refinedstorage.screen; + +import com.refinedmods.refinedstorage.api.storage.AccessType; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; + +import javax.annotation.Nullable; + +public class StorageScreenSynchronizationParameters { + @Nullable + private final BlockEntitySynchronizationParameter typeParameter; + @Nullable + private final BlockEntitySynchronizationParameter redstoneModeParameter; + @Nullable + private final BlockEntitySynchronizationParameter exactModeParameter; + @Nullable + private final BlockEntitySynchronizationParameter whitelistBlacklistParameter; + private final BlockEntitySynchronizationParameter priorityParameter; + @Nullable + private final BlockEntitySynchronizationParameter accessTypeParameter; + + public StorageScreenSynchronizationParameters(@Nullable BlockEntitySynchronizationParameter typeParameter, @Nullable BlockEntitySynchronizationParameter redstoneModeParameter, @Nullable BlockEntitySynchronizationParameter exactModeParameter, @Nullable BlockEntitySynchronizationParameter whitelistBlacklistParameter, BlockEntitySynchronizationParameter priorityParameter, @Nullable BlockEntitySynchronizationParameter accessTypeParameter) { + this.typeParameter = typeParameter; + this.redstoneModeParameter = redstoneModeParameter; + this.exactModeParameter = exactModeParameter; + this.whitelistBlacklistParameter = whitelistBlacklistParameter; + this.priorityParameter = priorityParameter; + this.accessTypeParameter = accessTypeParameter; + } + + @Nullable + public BlockEntitySynchronizationParameter getTypeParameter() { + return typeParameter; + } + + @Nullable + public BlockEntitySynchronizationParameter getRedstoneModeParameter() { + return redstoneModeParameter; + } + + @Nullable + public BlockEntitySynchronizationParameter getExactModeParameter() { + return exactModeParameter; + } + + @Nullable + public BlockEntitySynchronizationParameter getWhitelistBlacklistParameter() { + return whitelistBlacklistParameter; + } + + public BlockEntitySynchronizationParameter getPriorityParameter() { + return priorityParameter; + } + + @Nullable + public BlockEntitySynchronizationParameter getAccessTypeParameter() { + return accessTypeParameter; + } +} diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/StorageScreenTileDataParameters.java b/src/main/java/com/refinedmods/refinedstorage/screen/StorageScreenTileDataParameters.java deleted file mode 100644 index b681358f3..000000000 --- a/src/main/java/com/refinedmods/refinedstorage/screen/StorageScreenTileDataParameters.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.refinedmods.refinedstorage.screen; - -import com.refinedmods.refinedstorage.api.storage.AccessType; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; - -import javax.annotation.Nullable; - -public class StorageScreenTileDataParameters { - @Nullable - private final TileDataParameter typeParameter; - @Nullable - private final TileDataParameter redstoneModeParameter; - @Nullable - private final TileDataParameter exactModeParameter; - @Nullable - private final TileDataParameter whitelistBlacklistParameter; - private final TileDataParameter priorityParameter; - @Nullable - private final TileDataParameter accessTypeParameter; - - public StorageScreenTileDataParameters(@Nullable TileDataParameter typeParameter, @Nullable TileDataParameter redstoneModeParameter, @Nullable TileDataParameter exactModeParameter, @Nullable TileDataParameter whitelistBlacklistParameter, TileDataParameter priorityParameter, @Nullable TileDataParameter accessTypeParameter) { - this.typeParameter = typeParameter; - this.redstoneModeParameter = redstoneModeParameter; - this.exactModeParameter = exactModeParameter; - this.whitelistBlacklistParameter = whitelistBlacklistParameter; - this.priorityParameter = priorityParameter; - this.accessTypeParameter = accessTypeParameter; - } - - @Nullable - public TileDataParameter getTypeParameter() { - return typeParameter; - } - - @Nullable - public TileDataParameter getRedstoneModeParameter() { - return redstoneModeParameter; - } - - @Nullable - public TileDataParameter getExactModeParameter() { - return exactModeParameter; - } - - @Nullable - public TileDataParameter getWhitelistBlacklistParameter() { - return whitelistBlacklistParameter; - } - - public TileDataParameter getPriorityParameter() { - return priorityParameter; - } - - @Nullable - public TileDataParameter getAccessTypeParameter() { - return accessTypeParameter; - } -} diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/WirelessTransmitterScreen.java b/src/main/java/com/refinedmods/refinedstorage/screen/WirelessTransmitterScreen.java index 970976841..3116da56c 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/WirelessTransmitterScreen.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/WirelessTransmitterScreen.java @@ -4,8 +4,8 @@ import com.mojang.blaze3d.vertex.PoseStack; import com.refinedmods.refinedstorage.RS; import com.refinedmods.refinedstorage.container.WirelessTransmitterContainer; import com.refinedmods.refinedstorage.screen.widget.sidebutton.RedstoneModeSideButton; -import com.refinedmods.refinedstorage.tile.NetworkNodeTile; -import com.refinedmods.refinedstorage.tile.WirelessTransmitterTile; +import com.refinedmods.refinedstorage.blockentity.NetworkNodeBlockEntity; +import com.refinedmods.refinedstorage.blockentity.WirelessTransmitterBlockEntity; import net.minecraft.client.resources.language.I18n; import net.minecraft.network.chat.Component; import net.minecraft.world.entity.player.Inventory; @@ -17,7 +17,7 @@ public class WirelessTransmitterScreen extends BaseScreen { lines.add(new ItemLine(item)); for (ResourceLocation owningTag : ItemTags.getAllTags().getMatchingTags(item.getItem())) { - lines.add(new TagLine(owningTag, GridTile.ALLOWED_ITEM_TAGS.getValue().get(slot).contains(owningTag))); + lines.add(new TagLine(owningTag, GridBlockEntity.ALLOWED_ITEM_TAGS.getValue().get(slot).contains(owningTag))); int itemCount = 0; @@ -102,7 +102,7 @@ public class AlternativesScreen extends BaseScreen { lines.add(new FluidLine(fluid)); for (ResourceLocation owningTag : FluidTags.getAllTags().getMatchingTags(fluid.getFluid())) { - lines.add(new TagLine(owningTag, GridTile.ALLOWED_FLUID_TAGS.getValue().get(slot).contains(owningTag))); + lines.add(new TagLine(owningTag, GridBlockEntity.ALLOWED_FLUID_TAGS.getValue().get(slot).contains(owningTag))); int fluidCount = 0; @@ -245,17 +245,17 @@ public class AlternativesScreen extends BaseScreen { } if (type == IType.ITEMS) { - List> existing = GridTile.ALLOWED_ITEM_TAGS.getValue(); + List> existing = GridBlockEntity.ALLOWED_ITEM_TAGS.getValue(); existing.set(slot, allowed); - TileDataManager.setParameter(GridTile.ALLOWED_ITEM_TAGS, existing); + BlockEntitySynchronizationManager.setParameter(GridBlockEntity.ALLOWED_ITEM_TAGS, existing); } else if (type == IType.FLUIDS) { - List> existing = GridTile.ALLOWED_FLUID_TAGS.getValue(); + List> existing = GridBlockEntity.ALLOWED_FLUID_TAGS.getValue(); existing.set(slot, allowed); - TileDataManager.setParameter(GridTile.ALLOWED_FLUID_TAGS, existing); + BlockEntitySynchronizationManager.setParameter(GridBlockEntity.ALLOWED_FLUID_TAGS, existing); } close(); diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/grid/GridScreen.java b/src/main/java/com/refinedmods/refinedstorage/screen/grid/GridScreen.java index 64f1e6b51..21aa3afeb 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/grid/GridScreen.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/grid/GridScreen.java @@ -24,12 +24,12 @@ import com.refinedmods.refinedstorage.screen.widget.ScrollbarWidget; import com.refinedmods.refinedstorage.screen.widget.SearchWidget; import com.refinedmods.refinedstorage.screen.widget.TabListWidget; import com.refinedmods.refinedstorage.screen.widget.sidebutton.*; -import com.refinedmods.refinedstorage.tile.NetworkNodeTile; -import com.refinedmods.refinedstorage.tile.config.IType; -import com.refinedmods.refinedstorage.tile.data.TileDataManager; -import com.refinedmods.refinedstorage.tile.grid.GridTile; -import com.refinedmods.refinedstorage.tile.grid.portable.IPortableGrid; -import com.refinedmods.refinedstorage.tile.grid.portable.PortableGridTile; +import com.refinedmods.refinedstorage.blockentity.NetworkNodeBlockEntity; +import com.refinedmods.refinedstorage.blockentity.config.IType; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationManager; +import com.refinedmods.refinedstorage.blockentity.grid.GridBlockEntity; +import com.refinedmods.refinedstorage.blockentity.grid.portable.IPortableGrid; +import com.refinedmods.refinedstorage.blockentity.grid.portable.PortableGridBlockEntity; import com.refinedmods.refinedstorage.util.RenderUtils; import com.refinedmods.refinedstorage.util.TimeUtils; import net.minecraft.ChatFormatting; @@ -123,8 +123,8 @@ public class GridScreen extends BaseScreen implements IScreenInfo this.scrollbar = new ScrollbarWidget(this, 174, getTopHeight(), 12, (getVisibleRows() * 18) - 2); - if (grid instanceof GridNetworkNode || grid instanceof PortableGridTile) { - addSideButton(new RedstoneModeSideButton(this, grid instanceof GridNetworkNode ? NetworkNodeTile.REDSTONE_MODE : PortableGridTile.REDSTONE_MODE)); + if (grid instanceof GridNetworkNode || grid instanceof PortableGridBlockEntity) { + addSideButton(new RedstoneModeSideButton(this, grid instanceof GridNetworkNode ? NetworkNodeBlockEntity.REDSTONE_MODE : PortableGridBlockEntity.REDSTONE_MODE)); } int sx = x + 80 + 1; @@ -169,14 +169,14 @@ public class GridScreen extends BaseScreen implements IScreenInfo menu.updatePatternSlotPositions(newOffset); }); - processingPattern = addCheckBox(x + 7, y + getTopHeight() + (getVisibleRows() * 18) + 60, new TranslatableComponent("misc.refinedstorage.processing"), GridTile.PROCESSING_PATTERN.getValue(), btn -> { + processingPattern = addCheckBox(x + 7, y + getTopHeight() + (getVisibleRows() * 18) + 60, new TranslatableComponent("misc.refinedstorage.processing"), GridBlockEntity.PROCESSING_PATTERN.getValue(), btn -> { // Rebuild the inventory slots before the slot change packet arrives. - GridTile.PROCESSING_PATTERN.setValue(false, processingPattern.selected()); + GridBlockEntity.PROCESSING_PATTERN.setValue(false, processingPattern.selected()); ((GridNetworkNode) grid).clearMatrix(); // The server does this but let's do it earlier so the client doesn't notice. this.menu.initSlots(); patternScrollOffset = 0; // reset offset when switching between crafting and processing - TileDataManager.setParameter(GridTile.PROCESSING_PATTERN, processingPattern.selected()); + BlockEntitySynchronizationManager.setParameter(GridBlockEntity.PROCESSING_PATTERN, processingPattern.selected()); }); if (!processingPattern.selected()) { @@ -184,15 +184,15 @@ public class GridScreen extends BaseScreen implements IScreenInfo processingPattern.x + processingPattern.getWidth() + 5, y + getTopHeight() + (getVisibleRows() * 18) + 60, new TranslatableComponent("misc.refinedstorage.exact"), - GridTile.EXACT_PATTERN.getValue(), - btn -> TileDataManager.setParameter(GridTile.EXACT_PATTERN, exactPattern.selected()) + GridBlockEntity.EXACT_PATTERN.getValue(), + btn -> BlockEntitySynchronizationManager.setParameter(GridBlockEntity.EXACT_PATTERN, exactPattern.selected()) ); patternScrollbar.setEnabled(false); } else { patternScrollbar.setEnabled(true); fluidCheckBox = addCheckBox(processingPattern.x + processingPattern.getWidth() + 5, y + getTopHeight() + (getVisibleRows() * 18) + 60, new TranslatableComponent("misc.refinedstorage.fluidmode"), ((GridNetworkNode) grid).getType() == IType.FLUIDS, button -> { - TileDataManager.setParameter(GridTile.PROCESSING_TYPE, GridTile.PROCESSING_TYPE.getValue() == IType.ITEMS ? IType.FLUIDS : IType.ITEMS); + BlockEntitySynchronizationManager.setParameter(GridBlockEntity.PROCESSING_TYPE, GridBlockEntity.PROCESSING_TYPE.getValue() == IType.ITEMS ? IType.FLUIDS : IType.ITEMS); }); } } diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/AccessTypeSideButton.java b/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/AccessTypeSideButton.java index 019f5edf5..7d188666b 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/AccessTypeSideButton.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/AccessTypeSideButton.java @@ -3,16 +3,16 @@ package com.refinedmods.refinedstorage.screen.widget.sidebutton; import com.mojang.blaze3d.vertex.PoseStack; import com.refinedmods.refinedstorage.api.storage.AccessType; import com.refinedmods.refinedstorage.screen.BaseScreen; -import com.refinedmods.refinedstorage.tile.data.TileDataManager; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationManager; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; import com.refinedmods.refinedstorage.util.AccessTypeUtils; import net.minecraft.ChatFormatting; import net.minecraft.client.resources.language.I18n; public class AccessTypeSideButton extends SideButton { - private final TileDataParameter parameter; + private final BlockEntitySynchronizationParameter parameter; - public AccessTypeSideButton(BaseScreen screen, TileDataParameter parameter) { + public AccessTypeSideButton(BaseScreen screen, BlockEntitySynchronizationParameter parameter) { super(screen); this.parameter = parameter; @@ -30,6 +30,6 @@ public class AccessTypeSideButton extends SideButton { @Override public void onPress() { - TileDataManager.setParameter(parameter, AccessTypeUtils.getAccessType(parameter.getValue().getId() + 1)); + BlockEntitySynchronizationManager.setParameter(parameter, AccessTypeUtils.getAccessType(parameter.getValue().getId() + 1)); } } diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/ConstructorDropSideButton.java b/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/ConstructorDropSideButton.java index e037600bc..b3f010155 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/ConstructorDropSideButton.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/ConstructorDropSideButton.java @@ -3,8 +3,8 @@ package com.refinedmods.refinedstorage.screen.widget.sidebutton; import com.mojang.blaze3d.vertex.PoseStack; import com.refinedmods.refinedstorage.container.ConstructorContainer; import com.refinedmods.refinedstorage.screen.BaseScreen; -import com.refinedmods.refinedstorage.tile.ConstructorTile; -import com.refinedmods.refinedstorage.tile.data.TileDataManager; +import com.refinedmods.refinedstorage.blockentity.ConstructorBlockEntity; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationManager; import net.minecraft.ChatFormatting; import net.minecraft.client.resources.language.I18n; @@ -15,16 +15,16 @@ public class ConstructorDropSideButton extends SideButton { @Override protected void renderButtonIcon(PoseStack matrixStack, int x, int y) { - screen.blit(matrixStack, x, y, 64 + (Boolean.TRUE.equals(ConstructorTile.DROP.getValue()) ? 16 : 0), 16, 16, 16); + screen.blit(matrixStack, x, y, 64 + (Boolean.TRUE.equals(ConstructorBlockEntity.DROP.getValue()) ? 16 : 0), 16, 16, 16); } @Override protected String getTooltip() { - return I18n.get("sidebutton.refinedstorage.constructor.drop") + "\n" + ChatFormatting.GRAY + I18n.get(Boolean.TRUE.equals(ConstructorTile.DROP.getValue()) ? "gui.yes" : "gui.no"); + return I18n.get("sidebutton.refinedstorage.constructor.drop") + "\n" + ChatFormatting.GRAY + I18n.get(Boolean.TRUE.equals(ConstructorBlockEntity.DROP.getValue()) ? "gui.yes" : "gui.no"); } @Override public void onPress() { - TileDataManager.setParameter(ConstructorTile.DROP, !ConstructorTile.DROP.getValue()); + BlockEntitySynchronizationManager.setParameter(ConstructorBlockEntity.DROP, !ConstructorBlockEntity.DROP.getValue()); } } diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/CrafterManagerSearchBoxModeSideButton.java b/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/CrafterManagerSearchBoxModeSideButton.java index aa034b8ba..13ed84b3e 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/CrafterManagerSearchBoxModeSideButton.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/CrafterManagerSearchBoxModeSideButton.java @@ -1,8 +1,8 @@ package com.refinedmods.refinedstorage.screen.widget.sidebutton; import com.refinedmods.refinedstorage.screen.CrafterManagerScreen; -import com.refinedmods.refinedstorage.tile.CrafterManagerTile; -import com.refinedmods.refinedstorage.tile.data.TileDataManager; +import com.refinedmods.refinedstorage.blockentity.CrafterManagerBlockEntity; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationManager; public class CrafterManagerSearchBoxModeSideButton extends SearchBoxModeSideButton { public CrafterManagerSearchBoxModeSideButton(CrafterManagerScreen screen) { @@ -16,6 +16,6 @@ public class CrafterManagerSearchBoxModeSideButton extends SearchBoxModeSideButt @Override protected void setSearchBoxMode(int mode) { - TileDataManager.setParameter(CrafterManagerTile.SEARCH_BOX_MODE, mode); + BlockEntitySynchronizationManager.setParameter(CrafterManagerBlockEntity.SEARCH_BOX_MODE, mode); } } diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/CrafterModeSideButton.java b/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/CrafterModeSideButton.java index bdc16fdbe..23b0306e9 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/CrafterModeSideButton.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/CrafterModeSideButton.java @@ -3,8 +3,8 @@ package com.refinedmods.refinedstorage.screen.widget.sidebutton; import com.mojang.blaze3d.vertex.PoseStack; import com.refinedmods.refinedstorage.container.CrafterContainer; import com.refinedmods.refinedstorage.screen.BaseScreen; -import com.refinedmods.refinedstorage.tile.CrafterTile; -import com.refinedmods.refinedstorage.tile.data.TileDataManager; +import com.refinedmods.refinedstorage.blockentity.CrafterBlockEntity; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationManager; import net.minecraft.ChatFormatting; import net.minecraft.client.resources.language.I18n; @@ -15,16 +15,16 @@ public class CrafterModeSideButton extends SideButton { @Override protected String getTooltip() { - return I18n.get("sidebutton.refinedstorage.crafter_mode") + "\n" + ChatFormatting.GRAY + I18n.get("sidebutton.refinedstorage.crafter_mode." + CrafterTile.MODE.getValue()); + return I18n.get("sidebutton.refinedstorage.crafter_mode") + "\n" + ChatFormatting.GRAY + I18n.get("sidebutton.refinedstorage.crafter_mode." + CrafterBlockEntity.MODE.getValue()); } @Override protected void renderButtonIcon(PoseStack matrixStack, int x, int y) { - screen.blit(matrixStack, x, y, CrafterTile.MODE.getValue() * 16, 0, 16, 16); + screen.blit(matrixStack, x, y, CrafterBlockEntity.MODE.getValue() * 16, 0, 16, 16); } @Override public void onPress() { - TileDataManager.setParameter(CrafterTile.MODE, CrafterTile.MODE.getValue() + 1); + BlockEntitySynchronizationManager.setParameter(CrafterBlockEntity.MODE, CrafterBlockEntity.MODE.getValue() + 1); } } diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/DestructorPickupSideButton.java b/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/DestructorPickupSideButton.java index d4b760c30..8c0a70375 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/DestructorPickupSideButton.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/DestructorPickupSideButton.java @@ -3,8 +3,8 @@ package com.refinedmods.refinedstorage.screen.widget.sidebutton; import com.mojang.blaze3d.vertex.PoseStack; import com.refinedmods.refinedstorage.container.DestructorContainer; import com.refinedmods.refinedstorage.screen.BaseScreen; -import com.refinedmods.refinedstorage.tile.DestructorTile; -import com.refinedmods.refinedstorage.tile.data.TileDataManager; +import com.refinedmods.refinedstorage.blockentity.DestructorBlockEntity; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationManager; import net.minecraft.ChatFormatting; import net.minecraft.client.resources.language.I18n; @@ -15,16 +15,16 @@ public class DestructorPickupSideButton extends SideButton { @Override protected void renderButtonIcon(PoseStack matrixStack, int x, int y) { - screen.blit(matrixStack, x, y, 64 + (Boolean.TRUE.equals(DestructorTile.PICKUP.getValue()) ? 0 : 16), 0, 16, 16); + screen.blit(matrixStack, x, y, 64 + (Boolean.TRUE.equals(DestructorBlockEntity.PICKUP.getValue()) ? 0 : 16), 0, 16, 16); } @Override protected String getTooltip() { - return I18n.get("sidebutton.refinedstorage.destructor.pickup") + "\n" + ChatFormatting.GRAY + I18n.get(Boolean.TRUE.equals(DestructorTile.PICKUP.getValue()) ? "gui.yes" : "gui.no"); + return I18n.get("sidebutton.refinedstorage.destructor.pickup") + "\n" + ChatFormatting.GRAY + I18n.get(Boolean.TRUE.equals(DestructorBlockEntity.PICKUP.getValue()) ? "gui.yes" : "gui.no"); } @Override public void onPress() { - TileDataManager.setParameter(DestructorTile.PICKUP, !DestructorTile.PICKUP.getValue()); + BlockEntitySynchronizationManager.setParameter(DestructorBlockEntity.PICKUP, !DestructorBlockEntity.PICKUP.getValue()); } } diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/DetectorModeSideButton.java b/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/DetectorModeSideButton.java index 48dd8ad62..38bccd3ac 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/DetectorModeSideButton.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/DetectorModeSideButton.java @@ -4,8 +4,8 @@ import com.mojang.blaze3d.vertex.PoseStack; import com.refinedmods.refinedstorage.apiimpl.network.node.DetectorNetworkNode; import com.refinedmods.refinedstorage.container.DetectorContainer; import com.refinedmods.refinedstorage.screen.BaseScreen; -import com.refinedmods.refinedstorage.tile.DetectorTile; -import com.refinedmods.refinedstorage.tile.data.TileDataManager; +import com.refinedmods.refinedstorage.blockentity.DetectorBlockEntity; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationManager; import net.minecraft.ChatFormatting; import net.minecraft.client.resources.language.I18n; @@ -16,17 +16,17 @@ public class DetectorModeSideButton extends SideButton { @Override protected String getTooltip() { - return I18n.get("sidebutton.refinedstorage.detector.mode") + "\n" + ChatFormatting.GRAY + I18n.get("sidebutton.refinedstorage.detector.mode." + DetectorTile.MODE.getValue()); + return I18n.get("sidebutton.refinedstorage.detector.mode") + "\n" + ChatFormatting.GRAY + I18n.get("sidebutton.refinedstorage.detector.mode." + DetectorBlockEntity.MODE.getValue()); } @Override protected void renderButtonIcon(PoseStack matrixStack, int x, int y) { - screen.blit(matrixStack, x, y, DetectorTile.MODE.getValue() * 16, 176, 16, 16); + screen.blit(matrixStack, x, y, DetectorBlockEntity.MODE.getValue() * 16, 176, 16, 16); } @Override public void onPress() { - int mode = DetectorTile.MODE.getValue(); + int mode = DetectorBlockEntity.MODE.getValue(); if (mode == DetectorNetworkNode.MODE_EQUAL) { mode = DetectorNetworkNode.MODE_ABOVE; @@ -36,6 +36,6 @@ public class DetectorModeSideButton extends SideButton { mode = DetectorNetworkNode.MODE_EQUAL; } - TileDataManager.setParameter(DetectorTile.MODE, mode); + BlockEntitySynchronizationManager.setParameter(DetectorBlockEntity.MODE, mode); } } diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/ExactModeSideButton.java b/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/ExactModeSideButton.java index 4a34c89a1..623551934 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/ExactModeSideButton.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/ExactModeSideButton.java @@ -3,17 +3,17 @@ package com.refinedmods.refinedstorage.screen.widget.sidebutton; import com.mojang.blaze3d.vertex.PoseStack; import com.refinedmods.refinedstorage.api.util.IComparer; import com.refinedmods.refinedstorage.screen.BaseScreen; -import com.refinedmods.refinedstorage.tile.data.TileDataManager; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationManager; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; import net.minecraft.ChatFormatting; import net.minecraft.client.resources.language.I18n; public class ExactModeSideButton extends SideButton { private static final int MASK = IComparer.COMPARE_NBT; - private final TileDataParameter parameter; + private final BlockEntitySynchronizationParameter parameter; - public ExactModeSideButton(BaseScreen screen, TileDataParameter parameter) { + public ExactModeSideButton(BaseScreen screen, BlockEntitySynchronizationParameter parameter) { super(screen); this.parameter = parameter; @@ -42,6 +42,6 @@ public class ExactModeSideButton extends SideButton { @Override public void onPress() { - TileDataManager.setParameter(parameter, parameter.getValue() ^ MASK); + BlockEntitySynchronizationManager.setParameter(parameter, parameter.getValue() ^ MASK); } } diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/FilterTypeSideButton.java b/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/FilterTypeSideButton.java index 70d664e95..496e19936 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/FilterTypeSideButton.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/FilterTypeSideButton.java @@ -2,7 +2,7 @@ package com.refinedmods.refinedstorage.screen.widget.sidebutton; import com.mojang.blaze3d.vertex.PoseStack; import com.refinedmods.refinedstorage.screen.FilterScreen; -import com.refinedmods.refinedstorage.tile.config.IType; +import com.refinedmods.refinedstorage.blockentity.config.IType; import net.minecraft.ChatFormatting; import net.minecraft.client.resources.language.I18n; diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/IoModeSideButton.java b/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/IoModeSideButton.java index 1851609ca..6e7b025eb 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/IoModeSideButton.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/IoModeSideButton.java @@ -4,8 +4,8 @@ import com.mojang.blaze3d.vertex.PoseStack; import com.refinedmods.refinedstorage.apiimpl.network.node.diskmanipulator.DiskManipulatorNetworkNode; import com.refinedmods.refinedstorage.container.DiskManipulatorContainer; import com.refinedmods.refinedstorage.screen.BaseScreen; -import com.refinedmods.refinedstorage.tile.DiskManipulatorTile; -import com.refinedmods.refinedstorage.tile.data.TileDataManager; +import com.refinedmods.refinedstorage.blockentity.DiskManipulatorBlockEntity; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationManager; import net.minecraft.ChatFormatting; import net.minecraft.client.resources.language.I18n; @@ -16,16 +16,16 @@ public class IoModeSideButton extends SideButton { @Override protected String getTooltip() { - return I18n.get("sidebutton.refinedstorage.iomode") + "\n" + ChatFormatting.GRAY + I18n.get("sidebutton.refinedstorage.iomode." + (DiskManipulatorTile.IO_MODE.getValue() == DiskManipulatorNetworkNode.IO_MODE_INSERT ? "insert" : "extract")); + return I18n.get("sidebutton.refinedstorage.iomode") + "\n" + ChatFormatting.GRAY + I18n.get("sidebutton.refinedstorage.iomode." + (DiskManipulatorBlockEntity.IO_MODE.getValue() == DiskManipulatorNetworkNode.IO_MODE_INSERT ? "insert" : "extract")); } @Override protected void renderButtonIcon(PoseStack matrixStack, int x, int y) { - screen.blit(matrixStack, x, y, DiskManipulatorTile.IO_MODE.getValue() == DiskManipulatorNetworkNode.IO_MODE_EXTRACT ? 0 : 16, 160, 16, 16); + screen.blit(matrixStack, x, y, DiskManipulatorBlockEntity.IO_MODE.getValue() == DiskManipulatorNetworkNode.IO_MODE_EXTRACT ? 0 : 16, 160, 16, 16); } @Override public void onPress() { - TileDataManager.setParameter(DiskManipulatorTile.IO_MODE, DiskManipulatorTile.IO_MODE.getValue() == DiskManipulatorNetworkNode.IO_MODE_INSERT ? DiskManipulatorNetworkNode.IO_MODE_EXTRACT : DiskManipulatorNetworkNode.IO_MODE_INSERT); + BlockEntitySynchronizationManager.setParameter(DiskManipulatorBlockEntity.IO_MODE, DiskManipulatorBlockEntity.IO_MODE.getValue() == DiskManipulatorNetworkNode.IO_MODE_INSERT ? DiskManipulatorNetworkNode.IO_MODE_EXTRACT : DiskManipulatorNetworkNode.IO_MODE_INSERT); } } diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/RedstoneModeSideButton.java b/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/RedstoneModeSideButton.java index 3ec51aa95..dfd08f01c 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/RedstoneModeSideButton.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/RedstoneModeSideButton.java @@ -2,15 +2,15 @@ package com.refinedmods.refinedstorage.screen.widget.sidebutton; import com.mojang.blaze3d.vertex.PoseStack; import com.refinedmods.refinedstorage.screen.BaseScreen; -import com.refinedmods.refinedstorage.tile.data.TileDataManager; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationManager; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; import net.minecraft.ChatFormatting; import net.minecraft.client.resources.language.I18n; public class RedstoneModeSideButton extends SideButton { - private final TileDataParameter parameter; + private final BlockEntitySynchronizationParameter parameter; - public RedstoneModeSideButton(BaseScreen screen, TileDataParameter parameter) { + public RedstoneModeSideButton(BaseScreen screen, BlockEntitySynchronizationParameter parameter) { super(screen); this.parameter = parameter; @@ -28,6 +28,6 @@ public class RedstoneModeSideButton extends SideButton { @Override public void onPress() { - TileDataManager.setParameter(parameter, parameter.getValue() + 1); + BlockEntitySynchronizationManager.setParameter(parameter, parameter.getValue() + 1); } } diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/TypeSideButton.java b/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/TypeSideButton.java index 571449078..5cfbc8cfb 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/TypeSideButton.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/TypeSideButton.java @@ -2,16 +2,16 @@ package com.refinedmods.refinedstorage.screen.widget.sidebutton; import com.mojang.blaze3d.vertex.PoseStack; import com.refinedmods.refinedstorage.screen.BaseScreen; -import com.refinedmods.refinedstorage.tile.config.IType; -import com.refinedmods.refinedstorage.tile.data.TileDataManager; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; +import com.refinedmods.refinedstorage.blockentity.config.IType; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationManager; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; import net.minecraft.ChatFormatting; import net.minecraft.client.resources.language.I18n; public class TypeSideButton extends SideButton { - private final TileDataParameter type; + private final BlockEntitySynchronizationParameter type; - public TypeSideButton(BaseScreen screen, TileDataParameter type) { + public TypeSideButton(BaseScreen screen, BlockEntitySynchronizationParameter type) { super(screen); this.type = type; @@ -29,6 +29,6 @@ public class TypeSideButton extends SideButton { @Override public void onPress() { - TileDataManager.setParameter(type, type.getValue() == IType.ITEMS ? IType.FLUIDS : IType.ITEMS); + BlockEntitySynchronizationManager.setParameter(type, type.getValue() == IType.ITEMS ? IType.FLUIDS : IType.ITEMS); } } diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/WhitelistBlacklistSideButton.java b/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/WhitelistBlacklistSideButton.java index 748ebedd9..f01fd9bb0 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/WhitelistBlacklistSideButton.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/WhitelistBlacklistSideButton.java @@ -2,16 +2,16 @@ package com.refinedmods.refinedstorage.screen.widget.sidebutton; import com.mojang.blaze3d.vertex.PoseStack; import com.refinedmods.refinedstorage.screen.BaseScreen; -import com.refinedmods.refinedstorage.tile.config.IWhitelistBlacklist; -import com.refinedmods.refinedstorage.tile.data.TileDataManager; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; +import com.refinedmods.refinedstorage.blockentity.config.IWhitelistBlacklist; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationManager; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationParameter; import net.minecraft.ChatFormatting; import net.minecraft.client.resources.language.I18n; public class WhitelistBlacklistSideButton extends SideButton { - private final TileDataParameter parameter; + private final BlockEntitySynchronizationParameter parameter; - public WhitelistBlacklistSideButton(BaseScreen screen, TileDataParameter parameter) { + public WhitelistBlacklistSideButton(BaseScreen screen, BlockEntitySynchronizationParameter parameter) { super(screen); this.parameter = parameter; @@ -29,6 +29,6 @@ public class WhitelistBlacklistSideButton extends SideButton { @Override public void onPress() { - TileDataManager.setParameter(parameter, parameter.getValue() == IWhitelistBlacklist.WHITELIST ? IWhitelistBlacklist.BLACKLIST : IWhitelistBlacklist.WHITELIST); + BlockEntitySynchronizationManager.setParameter(parameter, parameter.getValue() == IWhitelistBlacklist.WHITELIST ? IWhitelistBlacklist.BLACKLIST : IWhitelistBlacklist.WHITELIST); } } diff --git a/src/main/java/com/refinedmods/refinedstorage/setup/ClientSetup.java b/src/main/java/com/refinedmods/refinedstorage/setup/ClientSetup.java index 77144985e..b81bbb48d 100644 --- a/src/main/java/com/refinedmods/refinedstorage/setup/ClientSetup.java +++ b/src/main/java/com/refinedmods/refinedstorage/setup/ClientSetup.java @@ -13,7 +13,7 @@ import com.refinedmods.refinedstorage.render.BakedModelOverrideRegistry; import com.refinedmods.refinedstorage.render.color.PatternItemColor; import com.refinedmods.refinedstorage.render.model.*; import com.refinedmods.refinedstorage.render.resourcepack.ResourcePackListener; -import com.refinedmods.refinedstorage.render.tesr.StorageMonitorTileRenderer; +import com.refinedmods.refinedstorage.render.blockentity.StorageMonitorBlockEntityRenderer; import com.refinedmods.refinedstorage.screen.*; import com.refinedmods.refinedstorage.screen.factory.CrafterManagerScreenFactory; import com.refinedmods.refinedstorage.screen.factory.GridScreenFactory; @@ -261,7 +261,7 @@ public class ClientSetup { ItemBlockRenderTypes.setRenderLayer(RSBlocks.CONSTRUCTOR.get(), RenderType.cutout()); ItemBlockRenderTypes.setRenderLayer(RSBlocks.DESTRUCTOR.get(), RenderType.cutout()); - BlockEntityRenderers.register(RSTiles.STORAGE_MONITOR, ctx -> new StorageMonitorTileRenderer()); + BlockEntityRenderers.register(RSBlockEntities.STORAGE_MONITOR, ctx -> new StorageMonitorBlockEntityRenderer()); Minecraft.getInstance().getItemColors().register(new PatternItemColor(), RSItems.PATTERN.get()); diff --git a/src/main/java/com/refinedmods/refinedstorage/setup/CommonSetup.java b/src/main/java/com/refinedmods/refinedstorage/setup/CommonSetup.java index 67e9145d7..374ba3ba1 100644 --- a/src/main/java/com/refinedmods/refinedstorage/setup/CommonSetup.java +++ b/src/main/java/com/refinedmods/refinedstorage/setup/CommonSetup.java @@ -38,11 +38,11 @@ import com.refinedmods.refinedstorage.item.blockitem.PortableGridBlockItem; import com.refinedmods.refinedstorage.recipe.CoverRecipe; import com.refinedmods.refinedstorage.recipe.HollowCoverRecipe; import com.refinedmods.refinedstorage.recipe.UpgradeWithEnchantedBookRecipeSerializer; -import com.refinedmods.refinedstorage.tile.*; -import com.refinedmods.refinedstorage.tile.craftingmonitor.CraftingMonitorTile; -import com.refinedmods.refinedstorage.tile.data.TileDataManager; -import com.refinedmods.refinedstorage.tile.grid.GridTile; -import com.refinedmods.refinedstorage.tile.grid.portable.PortableGridTile; +import com.refinedmods.refinedstorage.blockentity.*; +import com.refinedmods.refinedstorage.blockentity.craftingmonitor.CraftingMonitorBlockEntity; +import com.refinedmods.refinedstorage.blockentity.data.BlockEntitySynchronizationManager; +import com.refinedmods.refinedstorage.blockentity.grid.GridBlockEntity; +import com.refinedmods.refinedstorage.blockentity.grid.portable.PortableGridBlockEntity; import net.minecraft.core.BlockPos; import net.minecraft.nbt.CompoundTag; import net.minecraft.resources.ResourceLocation; @@ -154,55 +154,55 @@ public class CommonSetup { } @SubscribeEvent - public void onRegisterTiles(RegistryEvent.Register> e) { - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of((pos, state) -> new ControllerTile(NetworkType.NORMAL, pos, state), RSBlocks.CONTROLLER.getBlocks()).build(null).setRegistryName(RS.ID, "controller"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of((pos, state) -> new ControllerTile(NetworkType.CREATIVE, pos, state), RSBlocks.CREATIVE_CONTROLLER.getBlocks()).build(null).setRegistryName(RS.ID, "creative_controller"))); - e.getRegistry().register(BlockEntityType.Builder.of(CableTile::new, RSBlocks.CABLE.get()).build(null).setRegistryName(RS.ID, "cable")); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of(DiskDriveTile::new, RSBlocks.DISK_DRIVE.get()).build(null).setRegistryName(RS.ID, "disk_drive"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of((pos, state) -> new GridTile(GridType.NORMAL, pos, state), RSBlocks.GRID.getBlocks()).build(null).setRegistryName(RS.ID, "grid"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of((pos, state) -> new GridTile(GridType.CRAFTING, pos, state), RSBlocks.CRAFTING_GRID.getBlocks()).build(null).setRegistryName(RS.ID, "crafting_grid"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of((pos, state) -> new GridTile(GridType.PATTERN, pos, state), RSBlocks.PATTERN_GRID.getBlocks()).build(null).setRegistryName(RS.ID, "pattern_grid"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of((pos, state) -> new GridTile(GridType.FLUID, pos, state), RSBlocks.FLUID_GRID.getBlocks()).build(null).setRegistryName(RS.ID, "fluid_grid"))); + public void onRegisterBlockEntities(RegistryEvent.Register> e) { + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of((pos, state) -> new ControllerBlockEntity(NetworkType.NORMAL, pos, state), RSBlocks.CONTROLLER.getBlocks()).build(null).setRegistryName(RS.ID, "controller"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of((pos, state) -> new ControllerBlockEntity(NetworkType.CREATIVE, pos, state), RSBlocks.CREATIVE_CONTROLLER.getBlocks()).build(null).setRegistryName(RS.ID, "creative_controller"))); + e.getRegistry().register(BlockEntityType.Builder.of(CableBlockEntity::new, RSBlocks.CABLE.get()).build(null).setRegistryName(RS.ID, "cable")); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of(DiskDriveBlockEntity::new, RSBlocks.DISK_DRIVE.get()).build(null).setRegistryName(RS.ID, "disk_drive"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of((pos, state) -> new GridBlockEntity(GridType.NORMAL, pos, state), RSBlocks.GRID.getBlocks()).build(null).setRegistryName(RS.ID, "grid"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of((pos, state) -> new GridBlockEntity(GridType.CRAFTING, pos, state), RSBlocks.CRAFTING_GRID.getBlocks()).build(null).setRegistryName(RS.ID, "crafting_grid"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of((pos, state) -> new GridBlockEntity(GridType.PATTERN, pos, state), RSBlocks.PATTERN_GRID.getBlocks()).build(null).setRegistryName(RS.ID, "pattern_grid"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of((pos, state) -> new GridBlockEntity(GridType.FLUID, pos, state), RSBlocks.FLUID_GRID.getBlocks()).build(null).setRegistryName(RS.ID, "fluid_grid"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of((pos, state) -> new StorageTile(ItemStorageType.ONE_K, pos, state), RSBlocks.STORAGE_BLOCKS.get(ItemStorageType.ONE_K).get()).build(null).setRegistryName(RS.ID, "1k_storage_block"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of((pos, state) -> new StorageTile(ItemStorageType.FOUR_K, pos, state), RSBlocks.STORAGE_BLOCKS.get(ItemStorageType.FOUR_K).get()).build(null).setRegistryName(RS.ID, "4k_storage_block"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of((pos, state) -> new StorageTile(ItemStorageType.SIXTEEN_K, pos, state), RSBlocks.STORAGE_BLOCKS.get(ItemStorageType.SIXTEEN_K).get()).build(null).setRegistryName(RS.ID, "16k_storage_block"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of((pos, state) -> new StorageTile(ItemStorageType.SIXTY_FOUR_K, pos, state), RSBlocks.STORAGE_BLOCKS.get(ItemStorageType.SIXTY_FOUR_K).get()).build(null).setRegistryName(RS.ID, "64k_storage_block"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of((pos, state) -> new StorageTile(ItemStorageType.CREATIVE, pos, state), RSBlocks.STORAGE_BLOCKS.get(ItemStorageType.CREATIVE).get()).build(null).setRegistryName(RS.ID, "creative_storage_block"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of((pos, state) -> new StorageBlockEntity(ItemStorageType.ONE_K, pos, state), RSBlocks.STORAGE_BLOCKS.get(ItemStorageType.ONE_K).get()).build(null).setRegistryName(RS.ID, "1k_storage_block"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of((pos, state) -> new StorageBlockEntity(ItemStorageType.FOUR_K, pos, state), RSBlocks.STORAGE_BLOCKS.get(ItemStorageType.FOUR_K).get()).build(null).setRegistryName(RS.ID, "4k_storage_block"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of((pos, state) -> new StorageBlockEntity(ItemStorageType.SIXTEEN_K, pos, state), RSBlocks.STORAGE_BLOCKS.get(ItemStorageType.SIXTEEN_K).get()).build(null).setRegistryName(RS.ID, "16k_storage_block"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of((pos, state) -> new StorageBlockEntity(ItemStorageType.SIXTY_FOUR_K, pos, state), RSBlocks.STORAGE_BLOCKS.get(ItemStorageType.SIXTY_FOUR_K).get()).build(null).setRegistryName(RS.ID, "64k_storage_block"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of((pos, state) -> new StorageBlockEntity(ItemStorageType.CREATIVE, pos, state), RSBlocks.STORAGE_BLOCKS.get(ItemStorageType.CREATIVE).get()).build(null).setRegistryName(RS.ID, "creative_storage_block"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of((pos, state) -> new FluidStorageTile(FluidStorageType.SIXTY_FOUR_K, pos, state), RSBlocks.FLUID_STORAGE_BLOCKS.get(FluidStorageType.SIXTY_FOUR_K).get()).build(null).setRegistryName(RS.ID, "64k_fluid_storage_block"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of((pos, state) -> new FluidStorageTile(FluidStorageType.TWO_HUNDRED_FIFTY_SIX_K, pos, state), RSBlocks.FLUID_STORAGE_BLOCKS.get(FluidStorageType.TWO_HUNDRED_FIFTY_SIX_K).get()).build(null).setRegistryName(RS.ID, "256k_fluid_storage_block"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of((pos, state) -> new FluidStorageTile(FluidStorageType.THOUSAND_TWENTY_FOUR_K, pos, state), RSBlocks.FLUID_STORAGE_BLOCKS.get(FluidStorageType.THOUSAND_TWENTY_FOUR_K).get()).build(null).setRegistryName(RS.ID, "1024k_fluid_storage_block"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of((pos, state) -> new FluidStorageTile(FluidStorageType.FOUR_THOUSAND_NINETY_SIX_K, pos, state), RSBlocks.FLUID_STORAGE_BLOCKS.get(FluidStorageType.FOUR_THOUSAND_NINETY_SIX_K).get()).build(null).setRegistryName(RS.ID, "4096k_fluid_storage_block"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of((pos, state) -> new FluidStorageTile(FluidStorageType.CREATIVE, pos, state), RSBlocks.FLUID_STORAGE_BLOCKS.get(FluidStorageType.CREATIVE).get()).build(null).setRegistryName(RS.ID, "creative_fluid_storage_block"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of((pos, state) -> new FluidStorageBlockEntity(FluidStorageType.SIXTY_FOUR_K, pos, state), RSBlocks.FLUID_STORAGE_BLOCKS.get(FluidStorageType.SIXTY_FOUR_K).get()).build(null).setRegistryName(RS.ID, "64k_fluid_storage_block"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of((pos, state) -> new FluidStorageBlockEntity(FluidStorageType.TWO_HUNDRED_FIFTY_SIX_K, pos, state), RSBlocks.FLUID_STORAGE_BLOCKS.get(FluidStorageType.TWO_HUNDRED_FIFTY_SIX_K).get()).build(null).setRegistryName(RS.ID, "256k_fluid_storage_block"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of((pos, state) -> new FluidStorageBlockEntity(FluidStorageType.THOUSAND_TWENTY_FOUR_K, pos, state), RSBlocks.FLUID_STORAGE_BLOCKS.get(FluidStorageType.THOUSAND_TWENTY_FOUR_K).get()).build(null).setRegistryName(RS.ID, "1024k_fluid_storage_block"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of((pos, state) -> new FluidStorageBlockEntity(FluidStorageType.FOUR_THOUSAND_NINETY_SIX_K, pos, state), RSBlocks.FLUID_STORAGE_BLOCKS.get(FluidStorageType.FOUR_THOUSAND_NINETY_SIX_K).get()).build(null).setRegistryName(RS.ID, "4096k_fluid_storage_block"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of((pos, state) -> new FluidStorageBlockEntity(FluidStorageType.CREATIVE, pos, state), RSBlocks.FLUID_STORAGE_BLOCKS.get(FluidStorageType.CREATIVE).get()).build(null).setRegistryName(RS.ID, "creative_fluid_storage_block"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of(ExternalStorageTile::new, RSBlocks.EXTERNAL_STORAGE.get()).build(null).setRegistryName(RS.ID, "external_storage"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of(ImporterTile::new, RSBlocks.IMPORTER.get()).build(null).setRegistryName(RS.ID, "importer"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of(ExporterTile::new, RSBlocks.EXPORTER.get()).build(null).setRegistryName(RS.ID, "exporter"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of(NetworkReceiverTile::new, RSBlocks.NETWORK_RECEIVER.getBlocks()).build(null).setRegistryName(RS.ID, "network_receiver"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of(NetworkTransmitterTile::new, RSBlocks.NETWORK_TRANSMITTER.getBlocks()).build(null).setRegistryName(RS.ID, "network_transmitter"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of(RelayTile::new, RSBlocks.RELAY.getBlocks()).build(null).setRegistryName(RS.ID, "relay"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of(DetectorTile::new, RSBlocks.DETECTOR.getBlocks()).build(null).setRegistryName(RS.ID, "detector"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of(SecurityManagerTile::new, RSBlocks.SECURITY_MANAGER.getBlocks()).build(null).setRegistryName(RS.ID, "security_manager"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of(InterfaceTile::new, RSBlocks.INTERFACE.get()).build(null).setRegistryName(RS.ID, "interface"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of(FluidInterfaceTile::new, RSBlocks.FLUID_INTERFACE.get()).build(null).setRegistryName(RS.ID, "fluid_interface"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of(WirelessTransmitterTile::new, RSBlocks.WIRELESS_TRANSMITTER.getBlocks()).build(null).setRegistryName(RS.ID, "wireless_transmitter"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of(StorageMonitorTile::new, RSBlocks.STORAGE_MONITOR.get()).build(null).setRegistryName(RS.ID, "storage_monitor"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of(ConstructorTile::new, RSBlocks.CONSTRUCTOR.get()).build(null).setRegistryName(RS.ID, "constructor"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of(DestructorTile::new, RSBlocks.DESTRUCTOR.get()).build(null).setRegistryName(RS.ID, "destructor"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of(DiskManipulatorTile::new, RSBlocks.DISK_MANIPULATOR.getBlocks()).build(null).setRegistryName(RS.ID, "disk_manipulator"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of(CrafterTile::new, RSBlocks.CRAFTER.getBlocks()).build(null).setRegistryName(RS.ID, "crafter"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of(CrafterManagerTile::new, RSBlocks.CRAFTER_MANAGER.getBlocks()).build(null).setRegistryName(RS.ID, "crafter_manager"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of(CraftingMonitorTile::new, RSBlocks.CRAFTING_MONITOR.getBlocks()).build(null).setRegistryName(RS.ID, "crafting_monitor"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of(ExternalStorageBlockEntity::new, RSBlocks.EXTERNAL_STORAGE.get()).build(null).setRegistryName(RS.ID, "external_storage"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of(ImporterBlockEntity::new, RSBlocks.IMPORTER.get()).build(null).setRegistryName(RS.ID, "importer"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of(ExporterBlockEntity::new, RSBlocks.EXPORTER.get()).build(null).setRegistryName(RS.ID, "exporter"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of(NetworkReceiverBlockEntity::new, RSBlocks.NETWORK_RECEIVER.getBlocks()).build(null).setRegistryName(RS.ID, "network_receiver"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of(NetworkTransmitterBlockEntity::new, RSBlocks.NETWORK_TRANSMITTER.getBlocks()).build(null).setRegistryName(RS.ID, "network_transmitter"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of(RelayBlockEntity::new, RSBlocks.RELAY.getBlocks()).build(null).setRegistryName(RS.ID, "relay"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of(DetectorBlockEntity::new, RSBlocks.DETECTOR.getBlocks()).build(null).setRegistryName(RS.ID, "detector"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of(SecurityManagerBlockEntity::new, RSBlocks.SECURITY_MANAGER.getBlocks()).build(null).setRegistryName(RS.ID, "security_manager"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of(InterfaceBlockEntity::new, RSBlocks.INTERFACE.get()).build(null).setRegistryName(RS.ID, "interface"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of(FluidInterfaceBlockEntity::new, RSBlocks.FLUID_INTERFACE.get()).build(null).setRegistryName(RS.ID, "fluid_interface"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of(WirelessTransmitterBlockEntity::new, RSBlocks.WIRELESS_TRANSMITTER.getBlocks()).build(null).setRegistryName(RS.ID, "wireless_transmitter"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of(StorageMonitorBlockEntity::new, RSBlocks.STORAGE_MONITOR.get()).build(null).setRegistryName(RS.ID, "storage_monitor"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of(ConstructorBlockEntity::new, RSBlocks.CONSTRUCTOR.get()).build(null).setRegistryName(RS.ID, "constructor"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of(DestructorBlockEntity::new, RSBlocks.DESTRUCTOR.get()).build(null).setRegistryName(RS.ID, "destructor"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of(DiskManipulatorBlockEntity::new, RSBlocks.DISK_MANIPULATOR.getBlocks()).build(null).setRegistryName(RS.ID, "disk_manipulator"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of(CrafterBlockEntity::new, RSBlocks.CRAFTER.getBlocks()).build(null).setRegistryName(RS.ID, "crafter"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of(CrafterManagerBlockEntity::new, RSBlocks.CRAFTER_MANAGER.getBlocks()).build(null).setRegistryName(RS.ID, "crafter_manager"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of(CraftingMonitorBlockEntity::new, RSBlocks.CRAFTING_MONITOR.getBlocks()).build(null).setRegistryName(RS.ID, "crafting_monitor"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of((pos, state) -> new PortableGridTile(PortableGridBlockItem.Type.CREATIVE, pos, state), RSBlocks.CREATIVE_PORTABLE_GRID.get()).build(null).setRegistryName(RS.ID, "creative_portable_grid"))); - e.getRegistry().register(registerTileDataParameters(BlockEntityType.Builder.of((pos, state) -> new PortableGridTile(PortableGridBlockItem.Type.NORMAL, pos, state), RSBlocks.PORTABLE_GRID.get()).build(null).setRegistryName(RS.ID, "portable_grid"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of((pos, state) -> new PortableGridBlockEntity(PortableGridBlockItem.Type.CREATIVE, pos, state), RSBlocks.CREATIVE_PORTABLE_GRID.get()).build(null).setRegistryName(RS.ID, "creative_portable_grid"))); + e.getRegistry().register(registerSynchronizationParameters(BlockEntityType.Builder.of((pos, state) -> new PortableGridBlockEntity(PortableGridBlockItem.Type.NORMAL, pos, state), RSBlocks.PORTABLE_GRID.get()).build(null).setRegistryName(RS.ID, "portable_grid"))); } - private BlockEntityType registerTileDataParameters(BlockEntityType t) { - BaseTile tile = (BaseTile) t.create(BlockPos.ZERO, null); + private BlockEntityType registerSynchronizationParameters(BlockEntityType t) { + BaseBlockEntity blockEntity = (BaseBlockEntity) t.create(BlockPos.ZERO, null); - tile.getDataManager().getParameters().forEach(TileDataManager::registerParameter); + blockEntity.getDataManager().getParameters().forEach(BlockEntitySynchronizationManager::registerParameter); return t; } @@ -211,25 +211,25 @@ public class CommonSetup { public void onRegisterContainers(RegistryEvent.Register> e) { e.getRegistry().register(IForgeMenuType.create((windowId, inv, data) -> new FilterContainer(inv.player, inv.getSelected(), windowId)).setRegistryName(RS.ID, "filter")); e.getRegistry().register(IForgeMenuType.create(((windowId, inv, data) -> new ControllerContainer(null, inv.player, windowId))).setRegistryName(RS.ID, "controller")); - e.getRegistry().register(IForgeMenuType.create(new PositionalTileContainerFactory((windowId, inv, tile) -> new DiskDriveContainer(tile, inv.player, windowId))).setRegistryName(RS.ID, "disk_drive")); + e.getRegistry().register(IForgeMenuType.create(new BlockEntityContainerFactory((windowId, inv, blockEntity) -> new DiskDriveContainer(blockEntity, inv.player, windowId))).setRegistryName(RS.ID, "disk_drive")); e.getRegistry().register(IForgeMenuType.create(new GridContainerFactory()).setRegistryName(RS.ID, "grid")); - e.getRegistry().register(IForgeMenuType.create(new PositionalTileContainerFactory((windowId, inv, tile) -> new StorageContainer(tile, inv.player, windowId))).setRegistryName(RS.ID, "storage_block")); - e.getRegistry().register(IForgeMenuType.create(new PositionalTileContainerFactory((windowId, inv, tile) -> new FluidStorageContainer(tile, inv.player, windowId))).setRegistryName(RS.ID, "fluid_storage_block")); - e.getRegistry().register(IForgeMenuType.create(new PositionalTileContainerFactory((windowId, inv, tile) -> new ExternalStorageContainer(tile, inv.player, windowId))).setRegistryName(RS.ID, "external_storage")); - e.getRegistry().register(IForgeMenuType.create(new PositionalTileContainerFactory((windowId, inv, tile) -> new ImporterContainer(tile, inv.player, windowId))).setRegistryName(RS.ID, "importer")); - e.getRegistry().register(IForgeMenuType.create(new PositionalTileContainerFactory((windowId, inv, tile) -> new ExporterContainer(tile, inv.player, windowId))).setRegistryName(RS.ID, "exporter")); - e.getRegistry().register(IForgeMenuType.create(new PositionalTileContainerFactory((windowId, inv, tile) -> new NetworkTransmitterContainer(tile, inv.player, windowId))).setRegistryName(RS.ID, "network_transmitter")); - e.getRegistry().register(IForgeMenuType.create(new PositionalTileContainerFactory((windowId, inv, tile) -> new RelayContainer(tile, inv.player, windowId))).setRegistryName(RS.ID, "relay")); - e.getRegistry().register(IForgeMenuType.create(new PositionalTileContainerFactory((windowId, inv, tile) -> new DetectorContainer(tile, inv.player, windowId))).setRegistryName(RS.ID, "detector")); - e.getRegistry().register(IForgeMenuType.create(new PositionalTileContainerFactory((windowId, inv, tile) -> new SecurityManagerContainer(tile, inv.player, windowId))).setRegistryName(RS.ID, "security_manager")); - e.getRegistry().register(IForgeMenuType.create(new PositionalTileContainerFactory((windowId, inv, tile) -> new InterfaceContainer(tile, inv.player, windowId))).setRegistryName(RS.ID, "interface")); - e.getRegistry().register(IForgeMenuType.create(new PositionalTileContainerFactory((windowId, inv, tile) -> new FluidInterfaceContainer(tile, inv.player, windowId))).setRegistryName(RS.ID, "fluid_interface")); - e.getRegistry().register(IForgeMenuType.create(new PositionalTileContainerFactory((windowId, inv, tile) -> new WirelessTransmitterContainer(tile, inv.player, windowId))).setRegistryName(RS.ID, "wireless_transmitter")); - e.getRegistry().register(IForgeMenuType.create(new PositionalTileContainerFactory((windowId, inv, tile) -> new StorageMonitorContainer(tile, inv.player, windowId))).setRegistryName(RS.ID, "storage_monitor")); - e.getRegistry().register(IForgeMenuType.create(new PositionalTileContainerFactory((windowId, inv, tile) -> new ConstructorContainer(tile, inv.player, windowId))).setRegistryName(RS.ID, "constructor")); - e.getRegistry().register(IForgeMenuType.create(new PositionalTileContainerFactory((windowId, inv, tile) -> new DestructorContainer(tile, inv.player, windowId))).setRegistryName(RS.ID, "destructor")); - e.getRegistry().register(IForgeMenuType.create(new PositionalTileContainerFactory((windowId, inv, tile) -> new DiskManipulatorContainer(tile, inv.player, windowId))).setRegistryName(RS.ID, "disk_manipulator")); - e.getRegistry().register(IForgeMenuType.create(new PositionalTileContainerFactory((windowId, inv, tile) -> new CrafterContainer(tile, inv.player, windowId))).setRegistryName(RS.ID, "crafter")); + e.getRegistry().register(IForgeMenuType.create(new BlockEntityContainerFactory((windowId, inv, blockEntity) -> new StorageContainer(blockEntity, inv.player, windowId))).setRegistryName(RS.ID, "storage_block")); + e.getRegistry().register(IForgeMenuType.create(new BlockEntityContainerFactory((windowId, inv, blockEntity) -> new FluidStorageContainer(blockEntity, inv.player, windowId))).setRegistryName(RS.ID, "fluid_storage_block")); + e.getRegistry().register(IForgeMenuType.create(new BlockEntityContainerFactory((windowId, inv, blockEntity) -> new ExternalStorageContainer(blockEntity, inv.player, windowId))).setRegistryName(RS.ID, "external_storage")); + e.getRegistry().register(IForgeMenuType.create(new BlockEntityContainerFactory((windowId, inv, blockEntity) -> new ImporterContainer(blockEntity, inv.player, windowId))).setRegistryName(RS.ID, "importer")); + e.getRegistry().register(IForgeMenuType.create(new BlockEntityContainerFactory((windowId, inv, blockEntity) -> new ExporterContainer(blockEntity, inv.player, windowId))).setRegistryName(RS.ID, "exporter")); + e.getRegistry().register(IForgeMenuType.create(new BlockEntityContainerFactory((windowId, inv, blockEntity) -> new NetworkTransmitterContainer(blockEntity, inv.player, windowId))).setRegistryName(RS.ID, "network_transmitter")); + e.getRegistry().register(IForgeMenuType.create(new BlockEntityContainerFactory((windowId, inv, blockEntity) -> new RelayContainer(blockEntity, inv.player, windowId))).setRegistryName(RS.ID, "relay")); + e.getRegistry().register(IForgeMenuType.create(new BlockEntityContainerFactory((windowId, inv, blockEntity) -> new DetectorContainer(blockEntity, inv.player, windowId))).setRegistryName(RS.ID, "detector")); + e.getRegistry().register(IForgeMenuType.create(new BlockEntityContainerFactory((windowId, inv, blockEntity) -> new SecurityManagerContainer(blockEntity, inv.player, windowId))).setRegistryName(RS.ID, "security_manager")); + e.getRegistry().register(IForgeMenuType.create(new BlockEntityContainerFactory((windowId, inv, blockEntity) -> new InterfaceContainer(blockEntity, inv.player, windowId))).setRegistryName(RS.ID, "interface")); + e.getRegistry().register(IForgeMenuType.create(new BlockEntityContainerFactory((windowId, inv, blockEntity) -> new FluidInterfaceContainer(blockEntity, inv.player, windowId))).setRegistryName(RS.ID, "fluid_interface")); + e.getRegistry().register(IForgeMenuType.create(new BlockEntityContainerFactory((windowId, inv, blockEntity) -> new WirelessTransmitterContainer(blockEntity, inv.player, windowId))).setRegistryName(RS.ID, "wireless_transmitter")); + e.getRegistry().register(IForgeMenuType.create(new BlockEntityContainerFactory((windowId, inv, blockEntity) -> new StorageMonitorContainer(blockEntity, inv.player, windowId))).setRegistryName(RS.ID, "storage_monitor")); + e.getRegistry().register(IForgeMenuType.create(new BlockEntityContainerFactory((windowId, inv, blockEntity) -> new ConstructorContainer(blockEntity, inv.player, windowId))).setRegistryName(RS.ID, "constructor")); + e.getRegistry().register(IForgeMenuType.create(new BlockEntityContainerFactory((windowId, inv, blockEntity) -> new DestructorContainer(blockEntity, inv.player, windowId))).setRegistryName(RS.ID, "destructor")); + e.getRegistry().register(IForgeMenuType.create(new BlockEntityContainerFactory((windowId, inv, blockEntity) -> new DiskManipulatorContainer(blockEntity, inv.player, windowId))).setRegistryName(RS.ID, "disk_manipulator")); + e.getRegistry().register(IForgeMenuType.create(new BlockEntityContainerFactory((windowId, inv, blockEntity) -> new CrafterContainer(blockEntity, inv.player, windowId))).setRegistryName(RS.ID, "crafter")); e.getRegistry().register(IForgeMenuType.create(new CrafterManagerContainerFactory()).setRegistryName(RS.ID, "crafter_manager")); e.getRegistry().register(IForgeMenuType.create(new CraftingMonitorContainerFactory()).setRegistryName(RS.ID, "crafting_monitor")); e.getRegistry().register(IForgeMenuType.create(new WirelessCraftingMonitorContainerFactory()).setRegistryName(RS.ID, "wireless_crafting_monitor")); diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/FluidStorageTile.java b/src/main/java/com/refinedmods/refinedstorage/tile/FluidStorageTile.java deleted file mode 100644 index b8f4ea009..000000000 --- a/src/main/java/com/refinedmods/refinedstorage/tile/FluidStorageTile.java +++ /dev/null @@ -1,68 +0,0 @@ -package com.refinedmods.refinedstorage.tile; - -import com.refinedmods.refinedstorage.RSTiles; -import com.refinedmods.refinedstorage.api.storage.AccessType; -import com.refinedmods.refinedstorage.apiimpl.network.node.storage.FluidStorageNetworkNode; -import com.refinedmods.refinedstorage.apiimpl.storage.FluidStorageType; -import com.refinedmods.refinedstorage.tile.config.IAccessType; -import com.refinedmods.refinedstorage.tile.config.IComparable; -import com.refinedmods.refinedstorage.tile.config.IPrioritizable; -import com.refinedmods.refinedstorage.tile.config.IWhitelistBlacklist; -import com.refinedmods.refinedstorage.tile.data.RSSerializers; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; -import net.minecraft.core.BlockPos; -import net.minecraft.world.level.Level; -import net.minecraft.world.level.block.entity.BlockEntityType; -import net.minecraft.world.level.block.state.BlockState; - -import javax.annotation.Nonnull; - -public class FluidStorageTile extends NetworkNodeTile { - public static final TileDataParameter PRIORITY = IPrioritizable.createParameter(); - public static final TileDataParameter COMPARE = IComparable.createParameter(); - public static final TileDataParameter WHITELIST_BLACKLIST = IWhitelistBlacklist.createParameter(); - public static final TileDataParameter ACCESS_TYPE = IAccessType.createParameter(); - public static final TileDataParameter STORED = new TileDataParameter<>(RSSerializers.LONG_SERIALIZER, 0L, t -> t.getNode().getStorage() != null ? (long) t.getNode().getStorage().getStored() : 0); - - private final FluidStorageType type; - - public FluidStorageTile(FluidStorageType type, BlockPos pos, BlockState state) { - super(getType(type), pos, state); - - this.type = type; - - dataManager.addWatchedParameter(PRIORITY); - dataManager.addWatchedParameter(COMPARE); - dataManager.addWatchedParameter(WHITELIST_BLACKLIST); - dataManager.addWatchedParameter(STORED); - dataManager.addWatchedParameter(ACCESS_TYPE); - } - - public static BlockEntityType getType(FluidStorageType type) { - switch (type) { - case SIXTY_FOUR_K: - return RSTiles.SIXTY_FOUR_K_FLUID_STORAGE_BLOCK; - case TWO_HUNDRED_FIFTY_SIX_K: - return RSTiles.TWO_HUNDRED_FIFTY_SIX_K_FLUID_STORAGE_BLOCK; - case THOUSAND_TWENTY_FOUR_K: - return RSTiles.THOUSAND_TWENTY_FOUR_K_FLUID_STORAGE_BLOCK; - case FOUR_THOUSAND_NINETY_SIX_K: - return RSTiles.FOUR_THOUSAND_NINETY_SIX_K_FLUID_STORAGE_BLOCK; - case CREATIVE: - return RSTiles.CREATIVE_FLUID_STORAGE_BLOCK; - default: - throw new IllegalArgumentException("Unknown storage type " + type); - } - } - - public FluidStorageType getFluidStorageType() { - return type; - } - - @Override - @Nonnull - public FluidStorageNetworkNode createNode(Level level, BlockPos pos) { - return new FluidStorageNetworkNode(level, pos, type); - } -} - diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/StorageTile.java b/src/main/java/com/refinedmods/refinedstorage/tile/StorageTile.java deleted file mode 100644 index c777be0a1..000000000 --- a/src/main/java/com/refinedmods/refinedstorage/tile/StorageTile.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.refinedmods.refinedstorage.tile; - -import com.refinedmods.refinedstorage.RSTiles; -import com.refinedmods.refinedstorage.api.storage.AccessType; -import com.refinedmods.refinedstorage.apiimpl.network.node.storage.StorageNetworkNode; -import com.refinedmods.refinedstorage.apiimpl.storage.ItemStorageType; -import com.refinedmods.refinedstorage.tile.config.IAccessType; -import com.refinedmods.refinedstorage.tile.config.IComparable; -import com.refinedmods.refinedstorage.tile.config.IPrioritizable; -import com.refinedmods.refinedstorage.tile.config.IWhitelistBlacklist; -import com.refinedmods.refinedstorage.tile.data.RSSerializers; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; -import net.minecraft.core.BlockPos; -import net.minecraft.world.level.Level; -import net.minecraft.world.level.block.entity.BlockEntityType; -import net.minecraft.world.level.block.state.BlockState; - -import javax.annotation.Nonnull; - -public class StorageTile extends NetworkNodeTile { - public static final TileDataParameter PRIORITY = IPrioritizable.createParameter(); - public static final TileDataParameter COMPARE = IComparable.createParameter(); - public static final TileDataParameter WHITELIST_BLACKLIST = IWhitelistBlacklist.createParameter(); - public static final TileDataParameter ACCESS_TYPE = IAccessType.createParameter(); - public static final TileDataParameter STORED = new TileDataParameter<>(RSSerializers.LONG_SERIALIZER, 0L, t -> t.getNode().getStorage() != null ? (long) t.getNode().getStorage().getStored() : 0); - - private final ItemStorageType type; - - public StorageTile(ItemStorageType type, BlockPos pos, BlockState state) { - super(getType(type), pos, state); - - this.type = type; - - dataManager.addWatchedParameter(PRIORITY); - dataManager.addWatchedParameter(COMPARE); - dataManager.addWatchedParameter(WHITELIST_BLACKLIST); - dataManager.addWatchedParameter(STORED); - dataManager.addWatchedParameter(ACCESS_TYPE); - } - - public static BlockEntityType getType(ItemStorageType type) { - switch (type) { - case ONE_K: - return RSTiles.ONE_K_STORAGE_BLOCK; - case FOUR_K: - return RSTiles.FOUR_K_STORAGE_BLOCK; - case SIXTEEN_K: - return RSTiles.SIXTEEN_K_STORAGE_BLOCK; - case SIXTY_FOUR_K: - return RSTiles.SIXTY_FOUR_K_STORAGE_BLOCK; - case CREATIVE: - return RSTiles.CREATIVE_STORAGE_BLOCK; - default: - throw new IllegalArgumentException("Unknown storage type " + type); - } - } - - public ItemStorageType getItemStorageType() { - return type; - } - - @Override - @Nonnull - public StorageNetworkNode createNode(Level level, BlockPos pos) { - return new StorageNetworkNode(level, pos, type); - } -} diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/WirelessTransmitterTile.java b/src/main/java/com/refinedmods/refinedstorage/tile/WirelessTransmitterTile.java deleted file mode 100644 index e6afab23b..000000000 --- a/src/main/java/com/refinedmods/refinedstorage/tile/WirelessTransmitterTile.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.refinedmods.refinedstorage.tile; - -import com.refinedmods.refinedstorage.RSTiles; -import com.refinedmods.refinedstorage.apiimpl.network.node.WirelessTransmitterNetworkNode; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; -import net.minecraft.core.BlockPos; -import net.minecraft.network.syncher.EntityDataSerializers; -import net.minecraft.world.level.Level; -import net.minecraft.world.level.block.state.BlockState; - -import javax.annotation.Nonnull; - -public class WirelessTransmitterTile extends NetworkNodeTile { - public static final TileDataParameter RANGE = new TileDataParameter<>(EntityDataSerializers.INT, 0, t -> t.getNode().getRange()); - - public WirelessTransmitterTile(BlockPos pos, BlockState state) { - super(RSTiles.WIRELESS_TRANSMITTER, pos, state); - - dataManager.addWatchedParameter(RANGE); - } - - @Override - @Nonnull - public WirelessTransmitterNetworkNode createNode(Level level, BlockPos pos) { - return new WirelessTransmitterNetworkNode(level, pos); - } -} diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/config/IAccessType.java b/src/main/java/com/refinedmods/refinedstorage/tile/config/IAccessType.java deleted file mode 100644 index ce5978de4..000000000 --- a/src/main/java/com/refinedmods/refinedstorage/tile/config/IAccessType.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.refinedmods.refinedstorage.tile.config; - -import com.refinedmods.refinedstorage.api.network.node.INetworkNodeProxy; -import com.refinedmods.refinedstorage.api.storage.AccessType; -import com.refinedmods.refinedstorage.tile.data.RSSerializers; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; -import net.minecraft.world.level.block.entity.BlockEntity; - -public interface IAccessType { - static > TileDataParameter createParameter() { - return new TileDataParameter<>(RSSerializers.ACCESS_TYPE_SERIALIZER, AccessType.INSERT_EXTRACT, t -> ((IAccessType) t.getNode()).getAccessType(), (t, v) -> ((IAccessType) t.getNode()).setAccessType(v)); - } - - AccessType getAccessType(); - - void setAccessType(AccessType accessType); -} \ No newline at end of file diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/config/IComparable.java b/src/main/java/com/refinedmods/refinedstorage/tile/config/IComparable.java deleted file mode 100644 index ec04e5bb1..000000000 --- a/src/main/java/com/refinedmods/refinedstorage/tile/config/IComparable.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.refinedmods.refinedstorage.tile.config; - -import com.refinedmods.refinedstorage.api.network.node.INetworkNodeProxy; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; -import net.minecraft.network.syncher.EntityDataSerializers; -import net.minecraft.world.level.block.entity.BlockEntity; - -public interface IComparable { - static > TileDataParameter createParameter() { - return new TileDataParameter<>(EntityDataSerializers.INT, 0, t -> ((IComparable) t.getNode()).getCompare(), (t, v) -> ((IComparable) t.getNode()).setCompare(v)); - } - - int getCompare(); - - void setCompare(int compare); -} diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/config/IPrioritizable.java b/src/main/java/com/refinedmods/refinedstorage/tile/config/IPrioritizable.java deleted file mode 100644 index 90bb6bed9..000000000 --- a/src/main/java/com/refinedmods/refinedstorage/tile/config/IPrioritizable.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.refinedmods.refinedstorage.tile.config; - -import com.refinedmods.refinedstorage.api.network.node.INetworkNodeProxy; -import com.refinedmods.refinedstorage.tile.data.TileDataParameter; -import net.minecraft.network.syncher.EntityDataSerializers; -import net.minecraft.world.level.block.entity.BlockEntity; - -public interface IPrioritizable { - static > TileDataParameter createParameter() { - return new TileDataParameter<>(EntityDataSerializers.INT, 0, t -> ((IPrioritizable) t.getNode()).getPriority(), (t, v) -> ((IPrioritizable) t.getNode()).setPriority(v)); - } - - int getPriority(); - - void setPriority(int priority); -} diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/data/TileDataManager.java b/src/main/java/com/refinedmods/refinedstorage/tile/data/TileDataManager.java deleted file mode 100644 index fb93c3fda..000000000 --- a/src/main/java/com/refinedmods/refinedstorage/tile/data/TileDataManager.java +++ /dev/null @@ -1,74 +0,0 @@ -package com.refinedmods.refinedstorage.tile.data; - -import com.refinedmods.refinedstorage.RS; -import com.refinedmods.refinedstorage.network.tiledata.TileDataParameterUpdateMessage; -import net.minecraft.world.level.block.entity.BlockEntity; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.concurrent.CopyOnWriteArrayList; - -public class TileDataManager { - private static final Map REGISTRY = new HashMap<>(); - private static int lastId = 0; - private final BlockEntity tile; - - private final List parameters = new ArrayList<>(); - private final List watchedParameters = new ArrayList<>(); - - private final List watchers = new CopyOnWriteArrayList<>(); - - public TileDataManager(BlockEntity tile) { - this.tile = tile; - } - - public static void registerParameter(TileDataParameter parameter) { - parameter.setId(lastId); - - REGISTRY.put(lastId++, parameter); - } - - public static TileDataParameter getParameter(int id) { - return REGISTRY.get(id); - } - - public static void setParameter(TileDataParameter parameter, Object value) { - RS.NETWORK_HANDLER.sendToServer(new TileDataParameterUpdateMessage(parameter, value)); - } - - public BlockEntity getTile() { - return tile; - } - - public void addParameter(TileDataParameter parameter) { - parameters.add(parameter); - } - - public List getParameters() { - return parameters; - } - - public void addWatchedParameter(TileDataParameter parameter) { - addParameter(parameter); - - watchedParameters.add(parameter); - } - - public List getWatchedParameters() { - return watchedParameters; - } - - public void addWatcher(TileDataWatcher listener) { - watchers.add(listener); - } - - public void removeWatcher(TileDataWatcher listener) { - watchers.remove(listener); - } - - public void sendParameterToWatchers(TileDataParameter parameter) { - watchers.forEach(l -> l.sendParameter(false, parameter)); - } -} diff --git a/src/main/java/com/refinedmods/refinedstorage/tile/data/TileDataParameterClientListener.java b/src/main/java/com/refinedmods/refinedstorage/tile/data/TileDataParameterClientListener.java deleted file mode 100644 index dabbc2788..000000000 --- a/src/main/java/com/refinedmods/refinedstorage/tile/data/TileDataParameterClientListener.java +++ /dev/null @@ -1,5 +0,0 @@ -package com.refinedmods.refinedstorage.tile.data; - -public interface TileDataParameterClientListener { - void onChanged(boolean initial, T value); -} diff --git a/src/main/java/com/refinedmods/refinedstorage/util/NetworkUtils.java b/src/main/java/com/refinedmods/refinedstorage/util/NetworkUtils.java index 3f17d3053..2e2874c0f 100644 --- a/src/main/java/com/refinedmods/refinedstorage/util/NetworkUtils.java +++ b/src/main/java/com/refinedmods/refinedstorage/util/NetworkUtils.java @@ -22,9 +22,9 @@ public final class NetworkUtils { } @Nullable - public static INetworkNode getNodeFromTile(@Nullable BlockEntity tile) { - if (tile != null) { - INetworkNodeProxy proxy = tile.getCapability(NetworkNodeProxyCapability.NETWORK_NODE_PROXY_CAPABILITY).orElse(null); + public static INetworkNode getNodeFromBlockEntity(@Nullable BlockEntity blockEntity) { + if (blockEntity != null) { + INetworkNodeProxy proxy = blockEntity.getCapability(NetworkNodeProxyCapability.NETWORK_NODE_PROXY_CAPABILITY).orElse(null); if (proxy != null) { return proxy.getNode(); } @@ -51,7 +51,7 @@ public final class NetworkUtils { return InteractionResult.SUCCESS; } - INetwork network = getNetworkFromNode(getNodeFromTile(level.getBlockEntity(pos))); + INetwork network = getNetworkFromNode(getNodeFromBlockEntity(level.getBlockEntity(pos))); if (network != null) { for (Permission permission : permissionsRequired) { diff --git a/src/main/java/com/refinedmods/refinedstorage/util/WorldUtils.java b/src/main/java/com/refinedmods/refinedstorage/util/WorldUtils.java index ff48b7da6..e58a319b5 100644 --- a/src/main/java/com/refinedmods/refinedstorage/util/WorldUtils.java +++ b/src/main/java/com/refinedmods/refinedstorage/util/WorldUtils.java @@ -42,26 +42,26 @@ public final class WorldUtils { } } - public static IItemHandler getItemHandler(@Nullable BlockEntity tile, Direction side) { - if (tile == null) { + public static IItemHandler getItemHandler(@Nullable BlockEntity blockEntity, Direction side) { + if (blockEntity == null) { return null; } - IItemHandler handler = tile.getCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY, side).orElse(null); + IItemHandler handler = blockEntity.getCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY, side).orElse(null); if (handler == null) { - if (side != null && tile instanceof WorldlyContainer) { - handler = new SidedInvWrapper((WorldlyContainer) tile, side); - } else if (tile instanceof Container) { - handler = new InvWrapper((Container) tile); + if (side != null && blockEntity instanceof WorldlyContainer) { + handler = new SidedInvWrapper((WorldlyContainer) blockEntity, side); + } else if (blockEntity instanceof Container) { + handler = new InvWrapper((Container) blockEntity); } } return handler; } - public static IFluidHandler getFluidHandler(@Nullable BlockEntity tile, Direction side) { - if (tile != null) { - return tile.getCapability(CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY, side).orElse(null); + public static IFluidHandler getFluidHandler(@Nullable BlockEntity blockEntity, Direction side) { + if (blockEntity != null) { + return blockEntity.getCapability(CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY, side).orElse(null); } return null;