diff --git a/src/main/java/li/cil/oc2/api/bus/DeviceBusController.java b/src/main/java/li/cil/oc2/api/bus/DeviceBusController.java index d8ab8126..4c37b137 100644 --- a/src/main/java/li/cil/oc2/api/bus/DeviceBusController.java +++ b/src/main/java/li/cil/oc2/api/bus/DeviceBusController.java @@ -77,7 +77,7 @@ public interface DeviceBusController { * This is the aggregation of all {@link Device}s added to all {@link DeviceBusElement}s known * to the controller as found during the last scan scheduled via {@link #scheduleBusScan()}. * - * @return the list of all devices on the bus managed by this controller. + * @return the set of all devices on the bus managed by this controller. */ Set getDevices(); diff --git a/src/main/java/li/cil/oc2/api/bus/device/DeviceType.java b/src/main/java/li/cil/oc2/api/bus/device/DeviceType.java index 844c0fa9..fbd949a0 100644 --- a/src/main/java/li/cil/oc2/api/bus/device/DeviceType.java +++ b/src/main/java/li/cil/oc2/api/bus/device/DeviceType.java @@ -9,7 +9,6 @@ import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import net.minecraft.tags.TagKey; import net.minecraft.world.item.Item; -import net.minecraftforge.registries.IForgeRegistry; /** * Implementations describe individual slot types. Slot types are only used diff --git a/src/main/java/li/cil/oc2/api/bus/device/DeviceTypes.java b/src/main/java/li/cil/oc2/api/bus/device/DeviceTypes.java index bef0a06e..88e0d6c7 100644 --- a/src/main/java/li/cil/oc2/api/bus/device/DeviceTypes.java +++ b/src/main/java/li/cil/oc2/api/bus/device/DeviceTypes.java @@ -10,15 +10,15 @@ import net.minecraftforge.registries.RegistryObject; * Lists built-in device types for convenience. */ public final class DeviceTypes { - public static DeviceType MEMORY = (DeviceType) RegistryObject.create(new ResourceLocation(API.MOD_ID, "memory"), new ResourceLocation("oc2", "device_type"), API.MOD_ID).get(); + public static final DeviceType MEMORY = (DeviceType) RegistryObject.create(new ResourceLocation(API.MOD_ID, "memory"), new ResourceLocation("oc2", "device_type"), API.MOD_ID).get(); - public static DeviceType HARD_DRIVE = (DeviceType) RegistryObject.create(new ResourceLocation(API.MOD_ID, "hard_drive"), new ResourceLocation("oc2", "device_type"), API.MOD_ID).get(); + public static final DeviceType HARD_DRIVE = (DeviceType) RegistryObject.create(new ResourceLocation(API.MOD_ID, "hard_drive"), new ResourceLocation("oc2", "device_type"), API.MOD_ID).get(); - public static DeviceType FLASH_MEMORY = (DeviceType) RegistryObject.create(new ResourceLocation(API.MOD_ID, "flash_memory"), new ResourceLocation("oc2", "device_type"), API.MOD_ID).get(); - public static DeviceType CARD = (DeviceType) RegistryObject.create(new ResourceLocation(API.MOD_ID, "card"), new ResourceLocation("oc2", "device_type"), API.MOD_ID).get(); - public static DeviceType ROBOT_MODULE = (DeviceType) RegistryObject.create(new ResourceLocation(API.MOD_ID, "robot_module"), new ResourceLocation("oc2", "device_type"), API.MOD_ID).get(); + public static final DeviceType FLASH_MEMORY = (DeviceType) RegistryObject.create(new ResourceLocation(API.MOD_ID, "flash_memory"), new ResourceLocation("oc2", "device_type"), API.MOD_ID).get(); + public static final DeviceType CARD = (DeviceType) RegistryObject.create(new ResourceLocation(API.MOD_ID, "card"), new ResourceLocation("oc2", "device_type"), API.MOD_ID).get(); + public static final DeviceType ROBOT_MODULE = (DeviceType) RegistryObject.create(new ResourceLocation(API.MOD_ID, "robot_module"), new ResourceLocation("oc2", "device_type"), API.MOD_ID).get(); - public static DeviceType FLOPPY = (DeviceType) RegistryObject.create(new ResourceLocation(API.MOD_ID, "floppy"), new ResourceLocation("oc2", "device_type"), API.MOD_ID).get(); - public static DeviceType NETWORK_TUNNEL = (DeviceType) RegistryObject.create(new ResourceLocation(API.MOD_ID, "network_tunnel"), new ResourceLocation("oc2", "device_type"), API.MOD_ID).get(); - public static DeviceType CPU = (DeviceType) RegistryObject.create(new ResourceLocation(API.MOD_ID, "cpu"), new ResourceLocation("oc2", "device_type"), API.MOD_ID).get(); + public static final DeviceType FLOPPY = (DeviceType) RegistryObject.create(new ResourceLocation(API.MOD_ID, "floppy"), new ResourceLocation("oc2", "device_type"), API.MOD_ID).get(); + public static final DeviceType NETWORK_TUNNEL = (DeviceType) RegistryObject.create(new ResourceLocation(API.MOD_ID, "network_tunnel"), new ResourceLocation("oc2", "device_type"), API.MOD_ID).get(); + public static final DeviceType CPU = (DeviceType) RegistryObject.create(new ResourceLocation(API.MOD_ID, "cpu"), new ResourceLocation("oc2", "device_type"), API.MOD_ID).get(); } diff --git a/src/main/java/li/cil/oc2/api/bus/device/data/Firmware.java b/src/main/java/li/cil/oc2/api/bus/device/data/Firmware.java index 3cfdb08c..ecfd0ab0 100644 --- a/src/main/java/li/cil/oc2/api/bus/device/data/Firmware.java +++ b/src/main/java/li/cil/oc2/api/bus/device/data/Firmware.java @@ -4,7 +4,6 @@ package li.cil.oc2.api.bus.device.data; import li.cil.sedna.api.memory.MemoryMap; import net.minecraft.network.chat.Component; -import net.minecraftforge.registries.IForgeRegistry; /** * Implementations of this interface that are registered with the registry for diff --git a/src/main/java/li/cil/oc2/api/bus/device/provider/BlockDeviceProvider.java b/src/main/java/li/cil/oc2/api/bus/device/provider/BlockDeviceProvider.java index 79099075..6c1eab63 100644 --- a/src/main/java/li/cil/oc2/api/bus/device/provider/BlockDeviceProvider.java +++ b/src/main/java/li/cil/oc2/api/bus/device/provider/BlockDeviceProvider.java @@ -7,9 +7,6 @@ import li.cil.oc2.api.bus.device.rpc.RPCDevice; import li.cil.oc2.api.bus.device.vm.VMDevice; import li.cil.oc2.api.util.Invalidatable; import net.minecraft.nbt.CompoundTag; -import net.minecraftforge.registries.IForgeRegistry; - -import java.util.List; /** * This is used to query for devices given a block face. diff --git a/src/main/java/li/cil/oc2/api/bus/device/provider/ItemDeviceProvider.java b/src/main/java/li/cil/oc2/api/bus/device/provider/ItemDeviceProvider.java index 0b713eaa..b860fd6e 100644 --- a/src/main/java/li/cil/oc2/api/bus/device/provider/ItemDeviceProvider.java +++ b/src/main/java/li/cil/oc2/api/bus/device/provider/ItemDeviceProvider.java @@ -6,7 +6,6 @@ import li.cil.oc2.api.bus.device.ItemDevice; import li.cil.oc2.api.bus.device.rpc.RPCDevice; import li.cil.oc2.api.bus.device.vm.VMDevice; import net.minecraft.nbt.CompoundTag; -import net.minecraftforge.registries.IForgeRegistry; import javax.annotation.Nullable; import java.util.Optional; diff --git a/src/main/java/li/cil/oc2/api/bus/device/rpc/RPCMethod.java b/src/main/java/li/cil/oc2/api/bus/device/rpc/RPCMethod.java index d675451a..ac9b7a05 100644 --- a/src/main/java/li/cil/oc2/api/bus/device/rpc/RPCMethod.java +++ b/src/main/java/li/cil/oc2/api/bus/device/rpc/RPCMethod.java @@ -39,7 +39,7 @@ public interface RPCMethod extends RPCMethodGroup { /** * The list of parameters this method accepts. * - * @return the list of parameters. + * @return the array of parameters. */ RPCParameter[] getParameters(); diff --git a/src/main/java/li/cil/oc2/client/ClientSetup.java b/src/main/java/li/cil/oc2/client/ClientSetup.java index c01d7b5c..d704d3c2 100644 --- a/src/main/java/li/cil/oc2/client/ClientSetup.java +++ b/src/main/java/li/cil/oc2/client/ClientSetup.java @@ -2,7 +2,6 @@ package li.cil.oc2.client; -import li.cil.oc2.api.bus.device.DeviceType; import li.cil.oc2.client.gui.*; import li.cil.oc2.client.item.CustomItemColors; import li.cil.oc2.client.item.CustomItemModelProperties; @@ -15,35 +14,21 @@ import li.cil.oc2.client.renderer.entity.RobotRenderer; import li.cil.oc2.client.renderer.entity.model.RobotModel; import li.cil.oc2.common.block.Blocks; import li.cil.oc2.common.blockentity.BlockEntities; -import li.cil.oc2.common.bus.device.DeviceTypes; import li.cil.oc2.common.container.Containers; import li.cil.oc2.common.entity.Entities; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.screens.MenuScreens; import net.minecraft.client.renderer.ItemBlockRenderTypes; import net.minecraft.client.renderer.blockentity.BlockEntityRenderers; -import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.inventory.InventoryMenu; import net.minecraftforge.client.event.EntityRenderersEvent; import net.minecraftforge.client.event.ModelEvent.RegisterGeometryLoaders; import net.minecraftforge.client.event.RenderGuiOverlayEvent; -import net.minecraftforge.client.event.TextureStitchEvent; import net.minecraftforge.client.gui.overlay.VanillaGuiOverlay; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.eventbus.api.SubscribeEvent; import net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent; -import org.jetbrains.annotations.ApiStatus; - -import java.util.HashMap; -import java.util.HashSet; -import java.util.Objects; -import java.util.Set; -import java.util.function.Consumer; public final class ClientSetup { - private static final Set sprites = new HashSet(); - private static boolean readyForSprites = false; - @SubscribeEvent public static void handleSetupEvent(final FMLClientSetupEvent event) { BusInterfaceNameRenderer.initialize(); @@ -65,6 +50,7 @@ public final class ClientSetup { MenuScreens.register(Containers.ROBOT_TERMINAL.get(), RobotTerminalScreen::new); MenuScreens.register(Containers.NETWORK_TUNNEL.get(), NetworkTunnelScreen::new); + //noinspection deprecation ItemBlockRenderTypes.setRenderLayer(Blocks.BUS_CABLE.get(), renderType -> true); Minecraft.getInstance().getBlockColors().register(new BusCableBlockColor(), Blocks.BUS_CABLE.get()); diff --git a/src/main/java/li/cil/oc2/client/gui/AbstractMachineTerminalScreen.java b/src/main/java/li/cil/oc2/client/gui/AbstractMachineTerminalScreen.java index ac486e47..e0a34b75 100644 --- a/src/main/java/li/cil/oc2/client/gui/AbstractMachineTerminalScreen.java +++ b/src/main/java/li/cil/oc2/client/gui/AbstractMachineTerminalScreen.java @@ -3,14 +3,12 @@ package li.cil.oc2.client.gui; import com.mojang.blaze3d.platform.InputConstants; -import com.mojang.blaze3d.vertex.PoseStack; import li.cil.oc2.client.gui.widget.ImageButton; import li.cil.oc2.client.gui.widget.ToggleImageButton; import li.cil.oc2.common.Constants; import li.cil.oc2.common.container.AbstractMachineTerminalContainer; import li.cil.oc2.common.util.TooltipUtils; import net.minecraft.ChatFormatting; -import net.minecraft.client.gui.Gui; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.client.gui.components.EditBox; import net.minecraft.client.gui.narration.NarrationElementOutput; diff --git a/src/main/java/li/cil/oc2/client/gui/AbstractModContainerScreen.java b/src/main/java/li/cil/oc2/client/gui/AbstractModContainerScreen.java index f9a944e6..a1763056 100644 --- a/src/main/java/li/cil/oc2/client/gui/AbstractModContainerScreen.java +++ b/src/main/java/li/cil/oc2/client/gui/AbstractModContainerScreen.java @@ -3,7 +3,6 @@ package li.cil.oc2.client.gui; import com.mojang.blaze3d.systems.RenderSystem; -import com.mojang.blaze3d.vertex.PoseStack; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.client.gui.components.AbstractWidget; diff --git a/src/main/java/li/cil/oc2/client/gui/BusInterfaceScreen.java b/src/main/java/li/cil/oc2/client/gui/BusInterfaceScreen.java index dd6e8ea0..bc573753 100644 --- a/src/main/java/li/cil/oc2/client/gui/BusInterfaceScreen.java +++ b/src/main/java/li/cil/oc2/client/gui/BusInterfaceScreen.java @@ -3,7 +3,6 @@ package li.cil.oc2.client.gui; import com.mojang.blaze3d.systems.RenderSystem; -import com.mojang.blaze3d.vertex.PoseStack; import li.cil.oc2.client.gui.widget.ImageButton; import li.cil.oc2.common.Constants; import li.cil.oc2.common.blockentity.BusCableBlockEntity; diff --git a/src/main/java/li/cil/oc2/client/gui/ComputerContainerScreen.java b/src/main/java/li/cil/oc2/client/gui/ComputerContainerScreen.java index 0a541e11..3fd92cad 100644 --- a/src/main/java/li/cil/oc2/client/gui/ComputerContainerScreen.java +++ b/src/main/java/li/cil/oc2/client/gui/ComputerContainerScreen.java @@ -2,7 +2,6 @@ package li.cil.oc2.client.gui; -import com.mojang.blaze3d.vertex.PoseStack; import li.cil.oc2.common.container.ComputerInventoryContainer; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.network.chat.Component; diff --git a/src/main/java/li/cil/oc2/client/gui/FileChooserScreen.java b/src/main/java/li/cil/oc2/client/gui/FileChooserScreen.java index bf0094fd..5153d6da 100644 --- a/src/main/java/li/cil/oc2/client/gui/FileChooserScreen.java +++ b/src/main/java/li/cil/oc2/client/gui/FileChooserScreen.java @@ -2,7 +2,6 @@ package li.cil.oc2.client.gui; -import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.Tesselator; import net.minecraft.ChatFormatting; import net.minecraft.client.Minecraft; @@ -14,8 +13,6 @@ import net.minecraft.client.gui.components.ObjectSelectionList; import net.minecraft.client.gui.screens.Screen; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.ComponentContents; -import net.minecraft.network.chat.MutableComponent; import net.minecraft.network.chat.TextColor; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -26,6 +23,7 @@ import java.nio.file.*; import java.util.List; import java.util.Objects; import java.util.Optional; +import java.util.function.Supplier; import java.util.stream.Collectors; import static li.cil.oc2.common.util.TranslationUtils.text; @@ -161,11 +159,9 @@ public final class FileChooserScreen extends Screen { final int buttonTop = fileNameTop + TEXT_FIELD_HEIGHT + WIDGET_SPACING; final int buttonCount = 2; - final int buttonWidth = widgetsWidth / buttonCount - (buttonCount - 1) * WIDGET_SPACING; - okButton = addRenderableWidget(new Button(MARGIN, buttonTop, buttonWidth, BUTTON_HEIGHT, Component.empty(), this::handleOkPressed, (p_253298_) -> { - return (MutableComponent)p_253298_.get(); - })); - addRenderableWidget(new Button(MARGIN + buttonWidth + WIDGET_SPACING, buttonTop, buttonWidth, BUTTON_HEIGHT, CANCEL_TEXT, this::handleCancelPressed, null)); + final int buttonWidth = widgetsWidth / buttonCount - WIDGET_SPACING; + okButton = addRenderableWidget(new Button(MARGIN, buttonTop, buttonWidth, BUTTON_HEIGHT, Component.empty(), this::handleOkPressed, Supplier::get)); + addRenderableWidget(new Button(MARGIN + buttonWidth + WIDGET_SPACING, buttonTop, buttonWidth, BUTTON_HEIGHT, CANCEL_TEXT, this::handleCancelPressed, Supplier::get)); fileList.refreshFiles(directory); @@ -210,7 +206,7 @@ public final class FileChooserScreen extends Screen { } final String selectedFileEntry = fileNameTextField.getValue(); - if ("".equals(selectedFileEntry) || ".".equals(selectedFileEntry)) { + if (selectedFileEntry.isEmpty() || ".".equals(selectedFileEntry)) { return Optional.empty(); } @@ -307,7 +303,7 @@ public final class FileChooserScreen extends Screen { return 1; } return p1.getFileName().compareTo(p2.getFileName()); - }).collect(Collectors.toList()); + }).toList(); for (final Path path : files) { try { if (Files.isHidden(path)) { diff --git a/src/main/java/li/cil/oc2/client/gui/MachineTerminalWidget.java b/src/main/java/li/cil/oc2/client/gui/MachineTerminalWidget.java index 68c42bc1..acba38f3 100644 --- a/src/main/java/li/cil/oc2/client/gui/MachineTerminalWidget.java +++ b/src/main/java/li/cil/oc2/client/gui/MachineTerminalWidget.java @@ -6,7 +6,6 @@ import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.Tesselator; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.client.renderer.MultiBufferSource; -import net.minecraftforge.client.ForgeHooksClient; import org.joml.Matrix4f; import li.cil.oc2.client.gui.terminal.TerminalInput; import li.cil.oc2.common.container.AbstractMachineTerminalContainer; diff --git a/src/main/java/li/cil/oc2/client/gui/MonitorDisplayScreen.java b/src/main/java/li/cil/oc2/client/gui/MonitorDisplayScreen.java index 5d797f1b..6a0c184b 100644 --- a/src/main/java/li/cil/oc2/client/gui/MonitorDisplayScreen.java +++ b/src/main/java/li/cil/oc2/client/gui/MonitorDisplayScreen.java @@ -2,18 +2,12 @@ package li.cil.oc2.client.gui; -import li.cil.oc2.common.container.ComputerTerminalContainer; import li.cil.oc2.common.container.MonitorDisplayContainer; -import li.cil.oc2.common.network.Network; -import li.cil.oc2.common.network.message.MonitorInputMessage; import net.minecraft.client.gui.components.EditBox; import net.minecraft.network.chat.Component; import net.minecraft.world.entity.player.Inventory; import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.api.distmarker.OnlyIn; -import org.lwjgl.glfw.GLFW; - -import static dev.architectury.utils.GameInstance.getClient; @OnlyIn(Dist.CLIENT) public final class MonitorDisplayScreen extends AbstractMonitorDisplayScreen { diff --git a/src/main/java/li/cil/oc2/client/gui/NetworkInterfaceCardScreen.java b/src/main/java/li/cil/oc2/client/gui/NetworkInterfaceCardScreen.java index 377ab5e7..f13e7bad 100644 --- a/src/main/java/li/cil/oc2/client/gui/NetworkInterfaceCardScreen.java +++ b/src/main/java/li/cil/oc2/client/gui/NetworkInterfaceCardScreen.java @@ -19,7 +19,6 @@ import li.cil.oc2.common.network.message.NetworkInterfaceCardConfigurationMessag import net.minecraft.client.Minecraft; import net.minecraft.client.gui.screens.Screen; import net.minecraft.client.renderer.MultiBufferSource; -import net.minecraft.client.renderer.block.model.ItemTransforms; import net.minecraft.client.renderer.entity.ItemRenderer; import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.client.resources.model.BakedModel; @@ -35,7 +34,6 @@ import net.minecraft.world.inventory.InventoryMenu; import net.minecraft.world.item.ItemStack; import net.minecraft.world.phys.AABB; import net.minecraft.world.phys.Vec3; -import org.spongepowered.asm.mixin.Mutable; import javax.annotation.Nullable; diff --git a/src/main/java/li/cil/oc2/client/gui/NetworkTunnelScreen.java b/src/main/java/li/cil/oc2/client/gui/NetworkTunnelScreen.java index 72533bac..999c5e45 100644 --- a/src/main/java/li/cil/oc2/client/gui/NetworkTunnelScreen.java +++ b/src/main/java/li/cil/oc2/client/gui/NetworkTunnelScreen.java @@ -3,7 +3,6 @@ package li.cil.oc2.client.gui; import com.mojang.blaze3d.systems.RenderSystem; -import com.mojang.blaze3d.vertex.PoseStack; import li.cil.oc2.client.gui.widget.ImageButton; import li.cil.oc2.common.container.NetworkTunnelContainer; import li.cil.oc2.common.network.Network; diff --git a/src/main/java/li/cil/oc2/client/gui/RobotContainerScreen.java b/src/main/java/li/cil/oc2/client/gui/RobotContainerScreen.java index f5fda550..d795ef89 100644 --- a/src/main/java/li/cil/oc2/client/gui/RobotContainerScreen.java +++ b/src/main/java/li/cil/oc2/client/gui/RobotContainerScreen.java @@ -3,7 +3,6 @@ package li.cil.oc2.client.gui; import com.mojang.blaze3d.systems.RenderSystem; -import com.mojang.blaze3d.vertex.PoseStack; import li.cil.oc2.common.container.RobotInventoryContainer; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.client.renderer.GameRenderer; diff --git a/src/main/java/li/cil/oc2/client/gui/RobotTerminalScreen.java b/src/main/java/li/cil/oc2/client/gui/RobotTerminalScreen.java index 44110a82..1b83b7e7 100644 --- a/src/main/java/li/cil/oc2/client/gui/RobotTerminalScreen.java +++ b/src/main/java/li/cil/oc2/client/gui/RobotTerminalScreen.java @@ -2,7 +2,6 @@ package li.cil.oc2.client.gui; -import com.mojang.blaze3d.vertex.PoseStack; import li.cil.oc2.common.container.RobotTerminalContainer; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.client.gui.components.EditBox; diff --git a/src/main/java/li/cil/oc2/client/gui/util/GuiUtils.java b/src/main/java/li/cil/oc2/client/gui/util/GuiUtils.java index 30fb6ddf..b390f0f9 100644 --- a/src/main/java/li/cil/oc2/client/gui/util/GuiUtils.java +++ b/src/main/java/li/cil/oc2/client/gui/util/GuiUtils.java @@ -2,7 +2,6 @@ package li.cil.oc2.client.gui.util; -import com.mojang.blaze3d.vertex.PoseStack; import li.cil.oc2.api.bus.device.DeviceType; import li.cil.oc2.api.bus.device.DeviceTypes; import li.cil.oc2.client.gui.widget.Sprite; diff --git a/src/main/java/li/cil/oc2/client/gui/widget/ImageButton.java b/src/main/java/li/cil/oc2/client/gui/widget/ImageButton.java index 174fe0fe..5ab921f7 100644 --- a/src/main/java/li/cil/oc2/client/gui/widget/ImageButton.java +++ b/src/main/java/li/cil/oc2/client/gui/widget/ImageButton.java @@ -3,23 +3,13 @@ package li.cil.oc2.client.gui.widget; import com.mojang.blaze3d.systems.RenderSystem; -import com.mojang.blaze3d.vertex.PoseStack; -import li.cil.oc2.common.util.TooltipUtils; import net.minecraft.ChatFormatting; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.client.gui.components.AbstractButton; import net.minecraft.client.gui.components.Tooltip; -import net.minecraft.client.gui.narration.NarrationElementOutput; -import net.minecraft.client.gui.screens.inventory.tooltip.ClientTooltipComponent; import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.ComponentContents; -import net.minecraft.network.chat.Style; -import net.minecraft.util.FormattedCharSequence; import net.minecraft.util.Mth; -import net.minecraft.world.inventory.tooltip.TooltipComponent; -import net.minecraft.world.item.Item; -import net.minecraft.world.item.ItemStack; import javax.annotation.Nullable; import java.util.Arrays; @@ -101,7 +91,7 @@ public abstract class ImageButton extends AbstractButton { if (tooltip.stream().findFirst().isEmpty()) return null; StringBuilder builder = new StringBuilder(); for(int i = 0; i < tooltip.size(); i++) { - builder.append(tooltip.get(i).getString() + (i == tooltip.size() - 1 ? "" : "\n")); + builder.append(tooltip.get(i).getString()).append(i == tooltip.size() - 1 ? "" : "\n"); } Component component = Component.literal(builder.toString()); return Tooltip.create(component); diff --git a/src/main/java/li/cil/oc2/client/gui/widget/Texture.java b/src/main/java/li/cil/oc2/client/gui/widget/Texture.java index 7f8700ca..62bdb6b5 100644 --- a/src/main/java/li/cil/oc2/client/gui/widget/Texture.java +++ b/src/main/java/li/cil/oc2/client/gui/widget/Texture.java @@ -2,7 +2,6 @@ package li.cil.oc2.client.gui.widget; -import com.mojang.blaze3d.systems.RenderSystem; import li.cil.oc2.api.API; import net.minecraft.resources.ResourceLocation; diff --git a/src/main/java/li/cil/oc2/client/gui/widget/ToggleImageButton.java b/src/main/java/li/cil/oc2/client/gui/widget/ToggleImageButton.java index 68df8dc3..67aa72b2 100644 --- a/src/main/java/li/cil/oc2/client/gui/widget/ToggleImageButton.java +++ b/src/main/java/li/cil/oc2/client/gui/widget/ToggleImageButton.java @@ -2,7 +2,6 @@ package li.cil.oc2.client.gui.widget; -import com.mojang.blaze3d.vertex.PoseStack; import net.minecraft.client.gui.GuiGraphics; public abstract class ToggleImageButton extends ImageButton { diff --git a/src/main/java/li/cil/oc2/client/manual/Manuals.java b/src/main/java/li/cil/oc2/client/manual/Manuals.java index 6791400f..b5f5c3da 100644 --- a/src/main/java/li/cil/oc2/client/manual/Manuals.java +++ b/src/main/java/li/cil/oc2/client/manual/Manuals.java @@ -15,7 +15,6 @@ import li.cil.manual.api.util.Constants; import li.cil.oc2.api.API; import li.cil.oc2.common.block.Blocks; import li.cil.oc2.common.item.Items; -import li.cil.oc2.common.util.RegistryUtils; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemStack; diff --git a/src/main/java/li/cil/oc2/client/renderer/MonitorGUIRenderer.java b/src/main/java/li/cil/oc2/client/renderer/MonitorGUIRenderer.java index 32f3149a..e6607481 100644 --- a/src/main/java/li/cil/oc2/client/renderer/MonitorGUIRenderer.java +++ b/src/main/java/li/cil/oc2/client/renderer/MonitorGUIRenderer.java @@ -62,130 +62,124 @@ public class MonitorGUIRenderer { } @OnlyIn(Dist.CLIENT) - private static final class Renderer implements RendererModel, RendererView { - private record RenderInfo(DynamicTexture texture) implements MonitorBlockEntity.FrameConsumer { - private static final ThreadLocal RGB = ThreadLocal.withInitial(() -> new byte[3]); + private record Renderer(MonitorBlockEntity monitorBlock) implements RendererModel, RendererView { + private record RenderInfo(DynamicTexture texture) implements MonitorBlockEntity.FrameConsumer { + private static final ThreadLocal RGB = ThreadLocal.withInitial(() -> new byte[3]); - public synchronized void close() { - texture.close(); + public synchronized void close() { + texture.close(); + } + + @Override + public synchronized void processFrame(final Picture picture) { + final NativeImage image = texture.getPixels(); + if (image == null) { + return; + } + + final byte[] y = picture.getPlaneData(0); + final byte[] u = picture.getPlaneData(1); + final byte[] v = picture.getPlaneData(2); + + // Convert in quads, based on the half resolution of UV. As such, skip every other row, since + // we're setting the current and the next. + int lumaIndex = 0, chromaIndex = 0; + for (int halfRow = 0; halfRow < MonitorDevice.HEIGHT / 2; halfRow++, lumaIndex += MonitorDevice.WIDTH * 2) { + final int row = halfRow * 2; + for (int halfCol = 0; halfCol < MonitorDevice.WIDTH / 2; halfCol++, chromaIndex++) { + final int col = halfCol * 2; + final int yIndex = lumaIndex + col; + final byte cb = u[chromaIndex]; + final byte cr = v[chromaIndex]; + setFromYUV420(image, col, row, y[yIndex], cb, cr); + setFromYUV420(image, col + 1, row, y[yIndex + 1], cb, cr); + setFromYUV420(image, col, row + 1, y[yIndex + MonitorDevice.WIDTH], cb, cr); + setFromYUV420(image, col + 1, row + 1, y[yIndex + MonitorDevice.WIDTH + 1], cb, cr); + } + } + + texture.upload(); + } + + private static void setFromYUV420(final NativeImage image, final int col, final int row, final byte y, final byte cb, final byte cr) { + final byte[] bytes = RGB.get(); + Yuv420jToRgb.YUVJtoRGB(y, cb, cr, bytes, 0); + final int r = bytes[0] + 128; + final int g = bytes[1] + 128; + final int b = bytes[2] + 128; + image.setPixelRGBA(col, row, r | (g << 8) | (b << 16) | (0xFF << 24)); + } + } + + private static final Cache RENDER_INFO = CacheBuilder.newBuilder() + .expireAfterAccess(Duration.ofSeconds(5)) + .removalListener(MonitorGUIRenderer::handleProjectorNoLongerRendering) + .build(); + + private static DynamicTexture getColorBuffer(final MonitorBlockEntity monitor) { + try { + return RENDER_INFO.get(monitor, () -> { + final DynamicTexture texture = new DynamicTexture(MonitorDevice.WIDTH, MonitorDevice.HEIGHT, false); + texture.upload(); + final RenderInfo renderInfo = new RenderInfo(texture); + monitor.setFrameConsumer(renderInfo); + return renderInfo; + }).texture(); + } catch (final ExecutionException e) { + throw new RuntimeException(e); + } } @Override - public synchronized void processFrame(final Picture picture) { - final NativeImage image = texture.getPixels(); - if (image == null) { - return; + public void close() { + + } + + @Override + public void render(final PoseStack stack, final Matrix4f projectionMatrix, float width, float height) { + if (monitorBlock.isValid()) { + DynamicTexture texture = getColorBuffer(monitorBlock); + monitorBlock.onRendering(); + + RenderSystem.backupProjectionMatrix(); + RenderSystem.getModelViewStack().pushPose(); + + RenderSystem.enableBlend(); + RenderSystem.blendFunc(GlStateManager.SourceFactor.ONE, GlStateManager.DestFactor.ONE); + + RenderSystem.colorMask(true, true, true, true); + RenderSystem.disableDepthTest(); + RenderSystem.depthMask(false); + + final ShaderInstance shader = GameRenderer.getPositionTexShader(); + + if (shader == null) return; + + final BufferBuilder builder = Tesselator.getInstance().getBuilder(); + + RenderSystem.setProjectionMatrix(projectionMatrix, VertexSorting.ORTHOGRAPHIC_Z); + + RenderSystem.setShaderTexture(0, texture.getId()); + + VertexBuffer buffer = new VertexBuffer(VertexBuffer.Usage.DYNAMIC); + + builder.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); + builder.vertex(0, 0, 0).uv(0, 0).endVertex(); + builder.vertex(0, height, 0).uv(0, 1).endVertex(); + builder.vertex(width, height, 0).uv(1, 1).endVertex(); + builder.vertex(width, 0, 0).uv(1, 0).endVertex(); + + buffer.bind(); + buffer.upload(builder.end()); + buffer.drawWithShader(stack.last().pose(), projectionMatrix, shader); + VertexBuffer.unbind(); + + buffer.close(); + + RenderSystem.restoreProjectionMatrix(); + RenderSystem.getModelViewStack().popPose(); + RenderSystem.applyModelViewMatrix(); } - - final byte[] y = picture.getPlaneData(0); - final byte[] u = picture.getPlaneData(1); - final byte[] v = picture.getPlaneData(2); - - // Convert in quads, based on the half resolution of UV. As such, skip every other row, since - // we're setting the current and the next. - int lumaIndex = 0, chromaIndex = 0; - for (int halfRow = 0; halfRow < MonitorDevice.HEIGHT / 2; halfRow++, lumaIndex += MonitorDevice.WIDTH * 2) { - final int row = halfRow * 2; - for (int halfCol = 0; halfCol < MonitorDevice.WIDTH / 2; halfCol++, chromaIndex++) { - final int col = halfCol * 2; - final int yIndex = lumaIndex + col; - final byte cb = u[chromaIndex]; - final byte cr = v[chromaIndex]; - setFromYUV420(image, col, row, y[yIndex], cb, cr); - setFromYUV420(image, col + 1, row, y[yIndex + 1], cb, cr); - setFromYUV420(image, col, row + 1, y[yIndex + MonitorDevice.WIDTH], cb, cr); - setFromYUV420(image, col + 1, row + 1, y[yIndex + MonitorDevice.WIDTH + 1], cb, cr); - } - } - - texture.upload(); - } - - private static void setFromYUV420(final NativeImage image, final int col, final int row, final byte y, final byte cb, final byte cr) { - final byte[] bytes = RGB.get(); - Yuv420jToRgb.YUVJtoRGB(y, cb, cr, bytes, 0); - final int r = bytes[0] + 128; - final int g = bytes[1] + 128; - final int b = bytes[2] + 128; - image.setPixelRGBA(col, row, r | (g << 8) | (b << 16) | (0xFF << 24)); } } - - private final MonitorBlockEntity monitorBlock; - - public Renderer(MonitorBlockEntity monitorBlock) { - this.monitorBlock = monitorBlock; - } - - private static final Cache RENDER_INFO = CacheBuilder.newBuilder() - .expireAfterAccess(Duration.ofSeconds(5)) - .removalListener(MonitorGUIRenderer::handleProjectorNoLongerRendering) - .build(); - - private static DynamicTexture getColorBuffer(final MonitorBlockEntity monitor) { - try { - return RENDER_INFO.get(monitor, () -> { - final DynamicTexture texture = new DynamicTexture(MonitorDevice.WIDTH, MonitorDevice.HEIGHT, false); - texture.upload(); - final RenderInfo renderInfo = new RenderInfo(texture); - monitor.setFrameConsumer(renderInfo); - return renderInfo; - }).texture(); - } catch (final ExecutionException e) { - throw new RuntimeException(e); - } - } - - @Override - public void close() { - - } - - @Override - public void render(final PoseStack stack, final Matrix4f projectionMatrix, float width, float height) { - if(monitorBlock.isValid()) { - DynamicTexture texture = getColorBuffer(monitorBlock); - monitorBlock.onRendering(); - - RenderSystem.backupProjectionMatrix(); - RenderSystem.getModelViewStack().pushPose(); - - RenderSystem.enableBlend(); - RenderSystem.blendFunc(GlStateManager.SourceFactor.ONE, GlStateManager.DestFactor.ONE); - - RenderSystem.colorMask(true, true, true, true); - RenderSystem.disableDepthTest(); - RenderSystem.depthMask(false); - - final ShaderInstance shader = GameRenderer.getPositionTexShader(); - - if(shader == null) return; - - final BufferBuilder builder = Tesselator.getInstance().getBuilder(); - - RenderSystem.setProjectionMatrix(projectionMatrix, VertexSorting.ORTHOGRAPHIC_Z); - - RenderSystem.setShaderTexture(0, texture.getId()); - - VertexBuffer buffer = new VertexBuffer(VertexBuffer.Usage.DYNAMIC); - - builder.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX); - builder.vertex(0, 0, 0).uv(0, 0).endVertex(); - builder.vertex(0, height, 0).uv(0, 1).endVertex(); - builder.vertex(width, height, 0).uv(1, 1).endVertex(); - builder.vertex(width, 0, 0).uv(1, 0).endVertex(); - - buffer.bind(); - buffer.upload(builder.end()); - buffer.drawWithShader(stack.last().pose(), projectionMatrix, shader); - VertexBuffer.unbind(); - - buffer.close(); - - RenderSystem.restoreProjectionMatrix(); - RenderSystem.getModelViewStack().popPose(); - RenderSystem.applyModelViewMatrix(); - } - } - } } diff --git a/src/main/java/li/cil/oc2/client/renderer/NetworkCableRenderer.java b/src/main/java/li/cil/oc2/client/renderer/NetworkCableRenderer.java index 815ac388..94f0f72e 100644 --- a/src/main/java/li/cil/oc2/client/renderer/NetworkCableRenderer.java +++ b/src/main/java/li/cil/oc2/client/renderer/NetworkCableRenderer.java @@ -5,7 +5,6 @@ package li.cil.oc2.client.renderer; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import li.cil.oc2.common.util.Vec3Utils; -import net.minecraft.core.Vec3i; import org.joml.Matrix4f; import org.joml.Vector3f; import li.cil.oc2.api.API; @@ -17,7 +16,6 @@ import net.minecraft.client.renderer.RenderType; import net.minecraft.client.renderer.culling.Frustum; import net.minecraft.core.BlockPos; import net.minecraft.util.Mth; -import net.minecraft.world.entity.Entity; import net.minecraft.world.level.*; import net.minecraft.world.phys.AABB; import net.minecraft.world.phys.Vec3; @@ -71,13 +69,6 @@ public final class NetworkCableRenderer { isDirty = true; } - public static void renderCablesFor(final BlockAndTintGetter level, final PoseStack stack, final Vec3 eye, final NetworkConnectorBlockEntity connector) { - final ArrayList connections = connectionsByConnector.get(connector); - if (connections != null) { - renderCables(level, stack, eye, connections, unused -> true); - } - } - /////////////////////////////////////////////////////////////////// @SubscribeEvent diff --git a/src/main/java/li/cil/oc2/client/renderer/ProjectorDepthRenderer.java b/src/main/java/li/cil/oc2/client/renderer/ProjectorDepthRenderer.java index bcb9c333..59653d23 100644 --- a/src/main/java/li/cil/oc2/client/renderer/ProjectorDepthRenderer.java +++ b/src/main/java/li/cil/oc2/client/renderer/ProjectorDepthRenderer.java @@ -14,12 +14,8 @@ import com.mojang.blaze3d.platform.TextureUtil; import com.mojang.blaze3d.systems.RenderSystem; import com.mojang.blaze3d.vertex.*; import com.mojang.math.Axis; -import net.minecraftforge.client.event.ViewportEvent; -import org.codehaus.plexus.util.dag.Vertex; import org.joml.Matrix3f; import org.joml.Matrix4f; -import org.joml.Quaternionf; -import org.joml.Vector3f; import li.cil.oc2.common.block.ProjectorBlock; import li.cil.oc2.common.blockentity.ProjectorBlockEntity; import li.cil.oc2.common.bus.device.vm.block.ProjectorDevice; @@ -441,17 +437,6 @@ public final class ProjectorDepthRenderer { tesselator.end(); } - private static Matrix4f getFrustumMatrix(final float near, final float far, final float dist, - final float left, final float right, - final float top, final float bottom) { - return new Matrix4f( - 2 * dist / (right - left), 0, (right + left) / (right - left), 0, - 0, 2 * dist / (top - bottom), (top + bottom) / (top - bottom), 0, - 0, 0, -(far + near) / (far - near), -(2 * far * near) / (far - near), - 0, 0, -1, 0 - ); - } - private static DynamicTexture getColorBuffer(final ProjectorBlockEntity projector) { try { return RENDER_INFO.get(projector, () -> { diff --git a/src/main/java/li/cil/oc2/client/renderer/blockentity/ComputerRenderer.java b/src/main/java/li/cil/oc2/client/renderer/blockentity/ComputerRenderer.java index 41b8532d..56020478 100644 --- a/src/main/java/li/cil/oc2/client/renderer/blockentity/ComputerRenderer.java +++ b/src/main/java/li/cil/oc2/client/renderer/blockentity/ComputerRenderer.java @@ -11,7 +11,6 @@ import com.mojang.blaze3d.vertex.Tesselator; import com.mojang.blaze3d.vertex.VertexConsumer; import com.mojang.math.Axis; import org.joml.Matrix4f; -import org.joml.Quaternionf; import li.cil.oc2.api.API; import li.cil.oc2.client.renderer.ModRenderType; import li.cil.oc2.common.block.ComputerBlock; @@ -35,8 +34,6 @@ import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.event.TickEvent; import net.minecraftforge.eventbus.api.SubscribeEvent; import net.minecraftforge.fml.common.Mod; -import org.joml.Vector3f; -import org.joml.Vector3fc; import java.time.Duration; import java.util.List; diff --git a/src/main/java/li/cil/oc2/client/renderer/blockentity/DiskDriveRenderer.java b/src/main/java/li/cil/oc2/client/renderer/blockentity/DiskDriveRenderer.java index a1cf4be2..9f92c0b8 100644 --- a/src/main/java/li/cil/oc2/client/renderer/blockentity/DiskDriveRenderer.java +++ b/src/main/java/li/cil/oc2/client/renderer/blockentity/DiskDriveRenderer.java @@ -5,14 +5,11 @@ package li.cil.oc2.client.renderer.blockentity; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.math.Axis; import net.minecraft.world.item.ItemDisplayContext; -import org.joml.Quaternionf; -import org.joml.Vector3f; import li.cil.oc2.common.block.DiskDriveBlock; import li.cil.oc2.common.blockentity.DiskDriveBlockEntity; import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.LevelRenderer; import net.minecraft.client.renderer.MultiBufferSource; -import net.minecraft.client.renderer.block.model.ItemTransforms; import net.minecraft.client.renderer.blockentity.BlockEntityRenderDispatcher; import net.minecraft.client.renderer.blockentity.BlockEntityRenderer; import net.minecraft.client.renderer.blockentity.BlockEntityRendererProvider; diff --git a/src/main/java/li/cil/oc2/client/renderer/blockentity/ProjectorRenderer.java b/src/main/java/li/cil/oc2/client/renderer/blockentity/ProjectorRenderer.java index 42db2957..ba702bd2 100644 --- a/src/main/java/li/cil/oc2/client/renderer/blockentity/ProjectorRenderer.java +++ b/src/main/java/li/cil/oc2/client/renderer/blockentity/ProjectorRenderer.java @@ -7,7 +7,6 @@ import com.mojang.blaze3d.vertex.VertexConsumer; import com.mojang.math.Axis; import org.joml.Matrix4f; import org.joml.Quaternionf; -import org.joml.Vector3f; import org.joml.Vector4f; import li.cil.oc2.api.API; import li.cil.oc2.client.renderer.ModRenderType; diff --git a/src/main/java/li/cil/oc2/client/renderer/entity/RobotRenderer.java b/src/main/java/li/cil/oc2/client/renderer/entity/RobotRenderer.java index 4dce4818..0fe9d41e 100644 --- a/src/main/java/li/cil/oc2/client/renderer/entity/RobotRenderer.java +++ b/src/main/java/li/cil/oc2/client/renderer/entity/RobotRenderer.java @@ -5,8 +5,6 @@ package li.cil.oc2.client.renderer.entity; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import com.mojang.math.Axis; -import org.joml.Quaternionf; -import org.joml.Vector3f; import li.cil.oc2.client.renderer.entity.model.RobotModel; import li.cil.oc2.common.entity.Robot; import net.minecraft.client.renderer.MultiBufferSource; diff --git a/src/main/java/li/cil/oc2/client/renderer/entity/RobotWithoutLevelRenderer.java b/src/main/java/li/cil/oc2/client/renderer/entity/RobotWithoutLevelRenderer.java index 8fc93fb4..a23e7a9c 100644 --- a/src/main/java/li/cil/oc2/client/renderer/entity/RobotWithoutLevelRenderer.java +++ b/src/main/java/li/cil/oc2/client/renderer/entity/RobotWithoutLevelRenderer.java @@ -8,7 +8,6 @@ import li.cil.oc2.client.renderer.entity.model.RobotModel; import net.minecraft.client.model.geom.EntityModelSet; import net.minecraft.client.renderer.BlockEntityWithoutLevelRenderer; import net.minecraft.client.renderer.MultiBufferSource; -import net.minecraft.client.renderer.block.model.ItemTransforms; import net.minecraft.client.renderer.blockentity.BlockEntityRenderDispatcher; import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.world.item.ItemDisplayContext; diff --git a/src/main/java/li/cil/oc2/common/Config.java b/src/main/java/li/cil/oc2/common/Config.java index 0c55555c..62a2e588 100644 --- a/src/main/java/li/cil/oc2/common/Config.java +++ b/src/main/java/li/cil/oc2/common/Config.java @@ -9,6 +9,7 @@ import net.minecraftforge.common.TierSortingRegistry; import java.util.UUID; +@SuppressWarnings("FieldMayBeFinal") public final class Config { @Path("vm") public static long maxAllocatedMemory = 512 * Constants.MEGABYTE; @@ -56,10 +57,6 @@ public final class Config { return computerEnergyPerTick > 0 && computerEnergyStorage > 0; } - public static boolean chargersUseEnergy() { - return chargerEnergyPerTick > 0 && chargerEnergyStorage > 0; - } - public static boolean projectorsUseEnergy() { return projectorEnergyStorage > 0 && projectorEnergyPerTick > 0; } diff --git a/src/main/java/li/cil/oc2/common/block/Blocks.java b/src/main/java/li/cil/oc2/common/block/Blocks.java index c77be5b1..c721ec16 100644 --- a/src/main/java/li/cil/oc2/common/block/Blocks.java +++ b/src/main/java/li/cil/oc2/common/block/Blocks.java @@ -3,11 +3,8 @@ package li.cil.oc2.common.block; import li.cil.oc2.api.API; -import li.cil.oc2.common.blockentity.VxlanBlockEntity; -import li.cil.oc2.common.util.RegistryUtils; import net.minecraft.world.level.block.Block; import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; -import net.minecraft.world.level.block.entity.BlockEntityType; import net.minecraftforge.registries.DeferredRegister; import net.minecraftforge.registries.ForgeRegistries; import net.minecraftforge.registries.RegistryObject; diff --git a/src/main/java/li/cil/oc2/common/block/BusCableBlock.java b/src/main/java/li/cil/oc2/common/block/BusCableBlock.java index 0117c475..da66b5fe 100644 --- a/src/main/java/li/cil/oc2/common/block/BusCableBlock.java +++ b/src/main/java/li/cil/oc2/common/block/BusCableBlock.java @@ -36,7 +36,6 @@ import net.minecraft.world.level.block.state.StateDefinition; import net.minecraft.world.level.block.state.properties.BooleanProperty; import net.minecraft.world.level.block.state.properties.EnumProperty; import net.minecraft.world.level.material.MapColor; -import net.minecraft.world.level.storage.loot.LootContext; import net.minecraft.world.level.storage.loot.LootParams; import net.minecraft.world.level.storage.loot.parameters.LootContextParams; import net.minecraft.world.phys.AABB; diff --git a/src/main/java/li/cil/oc2/common/block/ComputerBlock.java b/src/main/java/li/cil/oc2/common/block/ComputerBlock.java index b0c72f92..6b72374d 100644 --- a/src/main/java/li/cil/oc2/common/block/ComputerBlock.java +++ b/src/main/java/li/cil/oc2/common/block/ComputerBlock.java @@ -16,20 +16,17 @@ import li.cil.oc2.common.util.TooltipUtils; import li.cil.oc2.common.util.VoxelShapeUtils; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; -import net.minecraft.core.NonNullList; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResult; import net.minecraft.world.entity.player.Player; -import net.minecraft.world.item.CreativeModeTab; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.TooltipFlag; import net.minecraft.world.item.context.BlockPlaceContext; import net.minecraft.world.level.BlockGetter; import net.minecraft.world.level.Level; -import net.minecraft.world.level.LevelReader; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.EntityBlock; import net.minecraft.world.level.block.HorizontalDirectionalBlock; @@ -53,7 +50,6 @@ import java.util.List; import static li.cil.oc2.common.Constants.BLOCK_ENTITY_TAG_NAME_IN_ITEM; import static li.cil.oc2.common.Constants.ITEMS_TAG_NAME; import static li.cil.oc2.common.util.NBTUtils.makeInventoryTag; -import static li.cil.oc2.common.util.RegistryUtils.key; import static li.cil.oc2.common.util.TranslationUtils.text; public final class ComputerBlock extends HorizontalDirectionalBlock implements EntityBlock { diff --git a/src/main/java/li/cil/oc2/common/block/FlashMemoryFlasherBlock.java b/src/main/java/li/cil/oc2/common/block/FlashMemoryFlasherBlock.java index a8a2191a..0475ad83 100644 --- a/src/main/java/li/cil/oc2/common/block/FlashMemoryFlasherBlock.java +++ b/src/main/java/li/cil/oc2/common/block/FlashMemoryFlasherBlock.java @@ -3,7 +3,6 @@ package li.cil.oc2.common.block; import li.cil.oc2.common.blockentity.BlockEntities; -import li.cil.oc2.common.blockentity.DiskDriveBlockEntity; import li.cil.oc2.common.blockentity.FlashMemoryFlasherBlockEntity; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; diff --git a/src/main/java/li/cil/oc2/common/block/RedstoneInterfaceBlock.java b/src/main/java/li/cil/oc2/common/block/RedstoneInterfaceBlock.java index e668b060..41b0fd1f 100644 --- a/src/main/java/li/cil/oc2/common/block/RedstoneInterfaceBlock.java +++ b/src/main/java/li/cil/oc2/common/block/RedstoneInterfaceBlock.java @@ -8,7 +8,6 @@ import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.world.item.context.BlockPlaceContext; import net.minecraft.world.level.BlockGetter; -import net.minecraft.world.level.LevelReader; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.EntityBlock; import net.minecraft.world.level.block.HorizontalDirectionalBlock; diff --git a/src/main/java/li/cil/oc2/common/blockentity/BlockEntities.java b/src/main/java/li/cil/oc2/common/blockentity/BlockEntities.java index 5fdfe38d..9f187177 100644 --- a/src/main/java/li/cil/oc2/common/blockentity/BlockEntities.java +++ b/src/main/java/li/cil/oc2/common/blockentity/BlockEntities.java @@ -4,7 +4,6 @@ package li.cil.oc2.common.blockentity; import li.cil.oc2.api.API; import li.cil.oc2.common.block.Blocks; -import li.cil.oc2.common.util.RegistryUtils; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.block.entity.BlockEntityType; @@ -13,8 +12,6 @@ import net.minecraftforge.registries.DeferredRegister; import net.minecraftforge.registries.ForgeRegistries; import net.minecraftforge.registries.RegistryObject; -import javax.management.monitor.Monitor; - public final class BlockEntities { private static final DeferredRegister> BLOCK_ENTITIES = DeferredRegister.create(ForgeRegistries.BLOCK_ENTITY_TYPES, API.MOD_ID); diff --git a/src/main/java/li/cil/oc2/common/blockentity/DiskDriveBlockEntity.java b/src/main/java/li/cil/oc2/common/blockentity/DiskDriveBlockEntity.java index 53163a02..bfe4418f 100644 --- a/src/main/java/li/cil/oc2/common/blockentity/DiskDriveBlockEntity.java +++ b/src/main/java/li/cil/oc2/common/blockentity/DiskDriveBlockEntity.java @@ -18,7 +18,6 @@ import li.cil.oc2.common.util.ThrottledSoundEmitter; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.nbt.CompoundTag; -import net.minecraft.world.entity.item.ItemEntity; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.block.state.BlockState; diff --git a/src/main/java/li/cil/oc2/common/blockentity/FlashMemoryFlasherBlockEntity.java b/src/main/java/li/cil/oc2/common/blockentity/FlashMemoryFlasherBlockEntity.java index 1ebc1a4e..5e8cdfa0 100644 --- a/src/main/java/li/cil/oc2/common/blockentity/FlashMemoryFlasherBlockEntity.java +++ b/src/main/java/li/cil/oc2/common/blockentity/FlashMemoryFlasherBlockEntity.java @@ -3,14 +3,12 @@ package li.cil.oc2.common.blockentity; import li.cil.oc2.common.Constants; -import li.cil.oc2.common.block.DiskDriveBlock; import li.cil.oc2.common.block.FlashMemoryFlasherBlock; import li.cil.oc2.common.bus.device.vm.block.FlashMemoryFlasherContainer; import li.cil.oc2.common.bus.device.vm.block.FlashMemoryFlasherDevice; import li.cil.oc2.common.capabilities.Capabilities; import li.cil.oc2.common.container.TypedItemStackHandler; import li.cil.oc2.common.network.Network; -import li.cil.oc2.common.network.message.DiskDriveFloppyMessage; import li.cil.oc2.common.network.message.FirmwareFlasherMessage; import li.cil.oc2.common.tags.ItemTags; import li.cil.oc2.common.util.ItemStackUtils; @@ -98,7 +96,7 @@ public final class FlashMemoryFlasherBlockEntity extends ModBlockEntity implemen } @OnlyIn(Dist.CLIENT) - public void setFloppyClient(final ItemStack stack) { + public void setFlashMemory(final ItemStack stack) { itemHandler.setStackInSlot(0, stack); } diff --git a/src/main/java/li/cil/oc2/common/blockentity/NetworkSwitchBlockEntity.java b/src/main/java/li/cil/oc2/common/blockentity/NetworkSwitchBlockEntity.java index d73dd382..4e3e2175 100644 --- a/src/main/java/li/cil/oc2/common/blockentity/NetworkSwitchBlockEntity.java +++ b/src/main/java/li/cil/oc2/common/blockentity/NetworkSwitchBlockEntity.java @@ -10,9 +10,6 @@ import li.cil.oc2.api.bus.device.object.DocumentedDevice; import li.cil.oc2.api.bus.device.object.NamedDevice; import li.cil.oc2.api.capabilities.NetworkInterface; import li.cil.oc2.common.Constants; -import li.cil.oc2.common.block.NetworkSwitchBlock; -import li.cil.oc2.common.blockentity.BlockEntities; -import li.cil.oc2.common.blockentity.NetworkHubBlockEntity; import li.cil.oc2.common.capabilities.Capabilities; import li.cil.oc2.common.util.LazyOptionalUtils; import li.cil.oc2.common.util.LevelUtils; @@ -309,9 +306,7 @@ public final class NetworkSwitchBlockEntity extends ModBlockEntity implements Na } private void copyBytes(byte[] input, byte[] output, int inputOffset, int outputOffset, int length) { - for (int i = 0; i < length; i++) { - output[outputOffset + i] = input[inputOffset + i]; - } + if (length >= 0) System.arraycopy(input, inputOffset, output, outputOffset, length); } private void validateAdjacentBlocks() { @@ -347,8 +342,8 @@ public final class NetworkSwitchBlockEntity extends ModBlockEntity implements Na } private static class HostEntry { - public int iface; - public long timestamp; + public final int iface; + public final long timestamp; public HostEntry(int iface, long timestamp) { this.iface = iface; this.timestamp = timestamp; @@ -356,9 +351,9 @@ public final class NetworkSwitchBlockEntity extends ModBlockEntity implements Na } public static class LuaHostEntry { - public String mac; - public long age; - public int side; + public final String mac; + public final long age; + public final int side; public LuaHostEntry(String mac, long age, int iface) { this.mac = mac; @@ -377,15 +372,15 @@ public final class NetworkSwitchBlockEntity extends ModBlockEntity implements Na * A list of tagged vlans that will be accepted on both ingress and egress. 0 (the global untagged vlan) is not a valid * value */ - public List tagged; + public final List tagged; /** * If enabled, packets entering on this port may also leave via this port again */ - public boolean hairpin; + public final boolean hairpin; /** * If this is set, tagged will be ignored. Instead all tagged vlans will be accepted. untagged will still be honored */ - public boolean trunkAll; + public final boolean trunkAll; public PortSettings(final short untagged, final List tagged, final boolean hairpin, final boolean trunkAll) { this.untagged = untagged; diff --git a/src/main/java/li/cil/oc2/common/blockentity/VxlanBlockEntity.java b/src/main/java/li/cil/oc2/common/blockentity/VxlanBlockEntity.java index 63778158..bef7aac5 100644 --- a/src/main/java/li/cil/oc2/common/blockentity/VxlanBlockEntity.java +++ b/src/main/java/li/cil/oc2/common/blockentity/VxlanBlockEntity.java @@ -13,8 +13,6 @@ import net.minecraft.nbt.CompoundTag; import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.block.state.BlockState; import net.minecraftforge.common.util.LazyOptional; -import org.apache.commons.collections4.QueueUtils; -import org.apache.commons.collections4.queue.CircularFifoQueue; import javax.annotation.Nullable; import java.util.Arrays; @@ -30,7 +28,7 @@ public final class VxlanBlockEntity extends ModBlockEntity implements NetworkInt private int frameCount; private long lastGameTime; - private final Queue packetQueue = new ArrayBlockingQueue(32); + private final Queue packetQueue = new ArrayBlockingQueue<>(32); /////////////////////////////////////////////////////////////////// diff --git a/src/main/java/li/cil/oc2/common/bus/AbstractBlockDeviceBusElement.java b/src/main/java/li/cil/oc2/common/bus/AbstractBlockDeviceBusElement.java index 99df2632..8a1b26ec 100644 --- a/src/main/java/li/cil/oc2/common/bus/AbstractBlockDeviceBusElement.java +++ b/src/main/java/li/cil/oc2/common/bus/AbstractBlockDeviceBusElement.java @@ -7,7 +7,6 @@ import li.cil.oc2.api.bus.DeviceBusElement; import li.cil.oc2.api.bus.device.Device; import li.cil.oc2.api.bus.device.provider.BlockDeviceProvider; import li.cil.oc2.api.bus.device.provider.BlockDeviceQuery; -import li.cil.oc2.api.bus.device.provider.ItemDeviceProvider; import li.cil.oc2.api.util.Invalidatable; import li.cil.oc2.common.Constants; import li.cil.oc2.common.bus.device.provider.Providers; diff --git a/src/main/java/li/cil/oc2/common/bus/AbstractGroupingDeviceBusElement.java b/src/main/java/li/cil/oc2/common/bus/AbstractGroupingDeviceBusElement.java index d08d9154..86be7a21 100644 --- a/src/main/java/li/cil/oc2/common/bus/AbstractGroupingDeviceBusElement.java +++ b/src/main/java/li/cil/oc2/common/bus/AbstractGroupingDeviceBusElement.java @@ -3,7 +3,6 @@ package li.cil.oc2.common.bus; import li.cil.oc2.api.bus.device.Device; -import li.cil.oc2.api.bus.device.provider.ItemDeviceProvider; import li.cil.oc2.common.util.NBTTagIds; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.ListTag; diff --git a/src/main/java/li/cil/oc2/common/bus/device/DeviceGroup.java b/src/main/java/li/cil/oc2/common/bus/device/DeviceGroup.java index 5ea806d4..c985153c 100644 --- a/src/main/java/li/cil/oc2/common/bus/device/DeviceGroup.java +++ b/src/main/java/li/cil/oc2/common/bus/device/DeviceGroup.java @@ -7,7 +7,7 @@ import net.minecraft.world.level.block.entity.BlockEntity; import java.util.*; public class DeviceGroup extends IdentityProxy implements Device { - private Set devices = new HashSet<>(); + private final Set devices = new HashSet<>(); public DeviceGroup(final BlockEntity identity) { super(identity); diff --git a/src/main/java/li/cil/oc2/common/bus/device/DeviceTypes.java b/src/main/java/li/cil/oc2/common/bus/device/DeviceTypes.java index f7aa4f75..62985505 100644 --- a/src/main/java/li/cil/oc2/common/bus/device/DeviceTypes.java +++ b/src/main/java/li/cil/oc2/common/bus/device/DeviceTypes.java @@ -13,7 +13,6 @@ import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; import net.minecraftforge.registries.DeferredRegister; import net.minecraftforge.registries.IForgeRegistry; import net.minecraftforge.registries.RegistryBuilder; -import org.checkerframework.framework.qual.Unused; import java.util.function.Supplier; diff --git a/src/main/java/li/cil/oc2/common/bus/device/data/BlockDeviceDataRegistry.java b/src/main/java/li/cil/oc2/common/bus/device/data/BlockDeviceDataRegistry.java index 100d6943..e1fecdc0 100644 --- a/src/main/java/li/cil/oc2/common/bus/device/data/BlockDeviceDataRegistry.java +++ b/src/main/java/li/cil/oc2/common/bus/device/data/BlockDeviceDataRegistry.java @@ -5,7 +5,6 @@ package li.cil.oc2.common.bus.device.data; import li.cil.oc2.api.API; import li.cil.oc2.api.bus.device.data.BlockDeviceData; import li.cil.oc2.api.util.Registries; -import li.cil.oc2.common.util.RegistryUtils; import net.minecraft.resources.ResourceLocation; import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; import net.minecraftforge.registries.DeferredRegister; @@ -15,7 +14,6 @@ import net.minecraftforge.registries.RegistryObject; import javax.annotation.Nullable; import java.util.function.Supplier; -import java.util.stream.Collectors; import java.util.stream.Stream; public final class BlockDeviceDataRegistry { diff --git a/src/main/java/li/cil/oc2/common/bus/device/data/BuildrootBlockDeviceData.java b/src/main/java/li/cil/oc2/common/bus/device/data/BuildrootBlockDeviceData.java index 6cd84f81..1efbff26 100644 --- a/src/main/java/li/cil/oc2/common/bus/device/data/BuildrootBlockDeviceData.java +++ b/src/main/java/li/cil/oc2/common/bus/device/data/BuildrootBlockDeviceData.java @@ -2,18 +2,15 @@ package li.cil.oc2.common.bus.device.data; -import com.mojang.serialization.Codec; import li.cil.oc2.api.bus.device.data.BlockDeviceData; import li.cil.sedna.api.device.BlockDevice; import li.cil.sedna.buildroot.Buildroot; import li.cil.sedna.device.block.ByteBufferBlockDevice; import net.minecraft.network.chat.Component; -import net.minecraftforge.registries.*; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import java.io.IOException; -import java.util.*; public final class BuildrootBlockDeviceData implements BlockDeviceData { private static final Logger LOGGER = LogManager.getLogger(); diff --git a/src/main/java/li/cil/oc2/common/bus/device/data/BuildrootFirmware.java b/src/main/java/li/cil/oc2/common/bus/device/data/BuildrootFirmware.java index 3da118ef..143e4553 100644 --- a/src/main/java/li/cil/oc2/common/bus/device/data/BuildrootFirmware.java +++ b/src/main/java/li/cil/oc2/common/bus/device/data/BuildrootFirmware.java @@ -3,15 +3,12 @@ package li.cil.oc2.common.bus.device.data; import li.cil.oc2.api.bus.device.data.Firmware; -import li.cil.sedna.api.Sizes; import li.cil.sedna.api.memory.MemoryMap; -import li.cil.sedna.elf.*; import li.cil.sedna.buildroot.Buildroot; import li.cil.sedna.memory.MemoryMaps; import net.minecraft.network.chat.Component; import java.io.IOException; -import java.nio.ByteBuffer; public final class BuildrootFirmware implements Firmware { @Override diff --git a/src/main/java/li/cil/oc2/common/bus/device/data/FileSystems.java b/src/main/java/li/cil/oc2/common/bus/device/data/FileSystems.java index 749f5c4b..fc05b9ee 100644 --- a/src/main/java/li/cil/oc2/common/bus/device/data/FileSystems.java +++ b/src/main/java/li/cil/oc2/common/bus/device/data/FileSystems.java @@ -16,7 +16,6 @@ import net.minecraft.server.packs.resources.PreparableReloadListener; import net.minecraft.server.packs.resources.Resource; import net.minecraft.server.packs.resources.ResourceManager; import net.minecraft.util.profiling.ProfilerFiller; -import net.minecraft.world.level.block.Block; import net.minecraftforge.event.AddReloadListenerEvent; import net.minecraftforge.event.server.ServerStoppedEvent; import net.minecraftforge.eventbus.api.SubscribeEvent; diff --git a/src/main/java/li/cil/oc2/common/bus/device/data/FirmwareRegistry.java b/src/main/java/li/cil/oc2/common/bus/device/data/FirmwareRegistry.java index c9c7ec7a..893f3626 100644 --- a/src/main/java/li/cil/oc2/common/bus/device/data/FirmwareRegistry.java +++ b/src/main/java/li/cil/oc2/common/bus/device/data/FirmwareRegistry.java @@ -5,7 +5,6 @@ package li.cil.oc2.common.bus.device.data; import li.cil.oc2.api.API; import li.cil.oc2.api.bus.device.data.Firmware; import li.cil.oc2.api.util.Registries; -import li.cil.oc2.common.util.RegistryUtils; import net.minecraft.resources.ResourceLocation; import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; import net.minecraftforge.registries.DeferredRegister; diff --git a/src/main/java/li/cil/oc2/common/bus/device/data/ResourceBlockDeviceData.java b/src/main/java/li/cil/oc2/common/bus/device/data/ResourceBlockDeviceData.java index e7cc733d..a84526e6 100644 --- a/src/main/java/li/cil/oc2/common/bus/device/data/ResourceBlockDeviceData.java +++ b/src/main/java/li/cil/oc2/common/bus/device/data/ResourceBlockDeviceData.java @@ -8,7 +8,6 @@ import li.cil.sedna.device.block.ByteBufferBlockDevice; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.packs.resources.ResourceManager; -import org.jetbrains.annotations.Nullable; import java.io.IOException; import java.io.InputStream; diff --git a/src/main/java/li/cil/oc2/common/bus/device/provider/Providers.java b/src/main/java/li/cil/oc2/common/bus/device/provider/Providers.java index f9619c65..f253d68a 100644 --- a/src/main/java/li/cil/oc2/common/bus/device/provider/Providers.java +++ b/src/main/java/li/cil/oc2/common/bus/device/provider/Providers.java @@ -4,9 +4,6 @@ package li.cil.oc2.common.bus.device.provider; import li.cil.oc2.api.bus.device.provider.BlockDeviceProvider; import li.cil.oc2.api.bus.device.provider.ItemDeviceProvider; -import li.cil.oc2.common.bus.device.provider.block.BlockEntityCapabilityDeviceProvider; -import li.cil.oc2.common.bus.device.provider.item.*; -import li.cil.oc2.common.bus.device.rpc.block.*; import net.minecraftforge.registries.IForgeRegistry; import java.util.function.BiConsumer; diff --git a/src/main/java/li/cil/oc2/common/bus/device/provider/block/BlockEntityCapabilityDeviceProvider.java b/src/main/java/li/cil/oc2/common/bus/device/provider/block/BlockEntityCapabilityDeviceProvider.java index 76017367..a88254b4 100644 --- a/src/main/java/li/cil/oc2/common/bus/device/provider/block/BlockEntityCapabilityDeviceProvider.java +++ b/src/main/java/li/cil/oc2/common/bus/device/provider/block/BlockEntityCapabilityDeviceProvider.java @@ -9,8 +9,6 @@ import li.cil.oc2.common.bus.device.provider.util.AbstractBlockEntityCapabilityD import li.cil.oc2.common.capabilities.Capabilities; import net.minecraft.world.level.block.entity.BlockEntity; -import java.util.List; - public final class BlockEntityCapabilityDeviceProvider extends AbstractBlockEntityCapabilityDeviceProvider { public BlockEntityCapabilityDeviceProvider() { super(Capabilities::device); diff --git a/src/main/java/li/cil/oc2/common/bus/device/provider/item/AbstractItemStackCapabilityDeviceProvider.java b/src/main/java/li/cil/oc2/common/bus/device/provider/item/AbstractItemStackCapabilityDeviceProvider.java index 91f01143..51451426 100644 --- a/src/main/java/li/cil/oc2/common/bus/device/provider/item/AbstractItemStackCapabilityDeviceProvider.java +++ b/src/main/java/li/cil/oc2/common/bus/device/provider/item/AbstractItemStackCapabilityDeviceProvider.java @@ -32,9 +32,8 @@ public abstract class AbstractItemStackCapabilityDeviceProvider ext } final TCapability value = optional.orElseThrow(AssertionError::new); - final Optional device = getItemDevice(query, value); - return device; + return getItemDevice(query, value); } protected abstract Optional getItemDevice(ItemDeviceQuery query, TCapability value); diff --git a/src/main/java/li/cil/oc2/common/bus/device/provider/item/FlashMemoryItemDeviceProvider.java b/src/main/java/li/cil/oc2/common/bus/device/provider/item/FlashMemoryItemDeviceProvider.java index 21109cfa..1818b7c2 100644 --- a/src/main/java/li/cil/oc2/common/bus/device/provider/item/FlashMemoryItemDeviceProvider.java +++ b/src/main/java/li/cil/oc2/common/bus/device/provider/item/FlashMemoryItemDeviceProvider.java @@ -4,11 +4,9 @@ package li.cil.oc2.common.bus.device.provider.item; import li.cil.oc2.api.bus.device.ItemDevice; import li.cil.oc2.api.bus.device.provider.ItemDeviceQuery; -import li.cil.oc2.common.Config; import li.cil.oc2.common.bus.device.provider.util.AbstractItemDeviceProvider; import li.cil.oc2.common.bus.device.vm.item.ByteBufferFlashStorageDevice; import li.cil.oc2.common.item.FlashMemoryItem; -import net.minecraft.util.Mth; import net.minecraft.world.item.ItemStack; import java.util.Optional; diff --git a/src/main/java/li/cil/oc2/common/bus/device/provider/item/HardDriveItemDeviceProvider.java b/src/main/java/li/cil/oc2/common/bus/device/provider/item/HardDriveItemDeviceProvider.java index c85c0c95..0d4dfad4 100644 --- a/src/main/java/li/cil/oc2/common/bus/device/provider/item/HardDriveItemDeviceProvider.java +++ b/src/main/java/li/cil/oc2/common/bus/device/provider/item/HardDriveItemDeviceProvider.java @@ -11,7 +11,6 @@ import li.cil.oc2.common.bus.device.vm.item.HardDriveDevice; import li.cil.oc2.common.item.HardDriveItem; import li.cil.oc2.common.util.LocationSupplierUtils; import net.minecraft.nbt.CompoundTag; -import net.minecraft.util.Mth; import net.minecraft.world.item.ItemStack; import javax.annotation.Nullable; diff --git a/src/main/java/li/cil/oc2/common/bus/device/provider/util/AbstractBlockEntityCapabilityDeviceProvider.java b/src/main/java/li/cil/oc2/common/bus/device/provider/util/AbstractBlockEntityCapabilityDeviceProvider.java index 57edd5a7..aadd6685 100644 --- a/src/main/java/li/cil/oc2/common/bus/device/provider/util/AbstractBlockEntityCapabilityDeviceProvider.java +++ b/src/main/java/li/cil/oc2/common/bus/device/provider/util/AbstractBlockEntityCapabilityDeviceProvider.java @@ -11,7 +11,6 @@ import net.minecraft.world.level.block.entity.BlockEntityType; import net.minecraftforge.common.capabilities.Capability; import net.minecraftforge.common.util.LazyOptional; -import java.util.List; import java.util.function.Supplier; public abstract class AbstractBlockEntityCapabilityDeviceProvider extends AbstractBlockEntityDeviceProvider { diff --git a/src/main/java/li/cil/oc2/common/bus/device/provider/util/AbstractBlockEntityDeviceProvider.java b/src/main/java/li/cil/oc2/common/bus/device/provider/util/AbstractBlockEntityDeviceProvider.java index 694421ca..92ab734e 100644 --- a/src/main/java/li/cil/oc2/common/bus/device/provider/util/AbstractBlockEntityDeviceProvider.java +++ b/src/main/java/li/cil/oc2/common/bus/device/provider/util/AbstractBlockEntityDeviceProvider.java @@ -8,9 +8,6 @@ import li.cil.oc2.api.util.Invalidatable; import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.block.entity.BlockEntityType; -import java.util.ArrayList; -import java.util.List; - public abstract class AbstractBlockEntityDeviceProvider extends AbstractBlockDeviceProvider { private final BlockEntityType blockEntityType; diff --git a/src/main/java/li/cil/oc2/common/bus/device/rpc/item/FileImportExportCardItemDevice.java b/src/main/java/li/cil/oc2/common/bus/device/rpc/item/FileImportExportCardItemDevice.java index 4ed1face..deba9c40 100644 --- a/src/main/java/li/cil/oc2/common/bus/device/rpc/item/FileImportExportCardItemDevice.java +++ b/src/main/java/li/cil/oc2/common/bus/device/rpc/item/FileImportExportCardItemDevice.java @@ -71,7 +71,7 @@ public final class FileImportExportCardItemDevice extends AbstractItemRPCDevice } } - private record ImportedFileInfo(String name, int size) { } + public record ImportedFileInfo(String name, int size) { } private static final class ImportFileRequest { public final Set PendingPlayers = Collections.newSetFromMap(new WeakHashMap<>()); @@ -292,9 +292,11 @@ public final class FileImportExportCardItemDevice extends AbstractItemRPCDevice "This method may error if the device is currently exporting or importing.") .parameterDescription(NAME, "the name of the file being exported."); visitor.visitCallback(WRITE_EXPORT_FILE) - .description("Appends more data to the currently being exported file.\n" + - "This method may error if the device is not currently exporting or the " + - "export was interrupted.\n") + .description(""" + Appends more data to the currently being exported file. + This method may error if the device is not currently exporting or the \ + export was interrupted. + """) .parameterDescription(DATA, "the contents of the file being exported."); visitor.visitCallback(FINISH_EXPORT_FILE) .description("Finishes an export. This will prompt present users to select an external " + diff --git a/src/main/java/li/cil/oc2/common/bus/device/util/AbstractDeviceInfo.java b/src/main/java/li/cil/oc2/common/bus/device/util/AbstractDeviceInfo.java index 7ead62ba..1c3e9fcb 100644 --- a/src/main/java/li/cil/oc2/common/bus/device/util/AbstractDeviceInfo.java +++ b/src/main/java/li/cil/oc2/common/bus/device/util/AbstractDeviceInfo.java @@ -3,7 +3,6 @@ package li.cil.oc2.common.bus.device.util; import li.cil.oc2.api.bus.device.Device; -import net.minecraftforge.registries.IForgeRegistry; import javax.annotation.Nullable; import java.util.Objects; diff --git a/src/main/java/li/cil/oc2/common/bus/device/vm/block/DiskDriveDevice.java b/src/main/java/li/cil/oc2/common/bus/device/vm/block/DiskDriveDevice.java index 488c04ff..a8bfbf27 100644 --- a/src/main/java/li/cil/oc2/common/bus/device/vm/block/DiskDriveDevice.java +++ b/src/main/java/li/cil/oc2/common/bus/device/vm/block/DiskDriveDevice.java @@ -2,14 +2,12 @@ package li.cil.oc2.common.bus.device.vm.block; -import li.cil.oc2.common.Config; import li.cil.oc2.common.bus.device.vm.item.AbstractBlockStorageDevice; import li.cil.oc2.common.item.FloppyItem; import li.cil.oc2.common.serialization.BlobStorage; import li.cil.sedna.api.device.BlockDevice; import li.cil.sedna.device.block.ByteBufferBlockDevice; import net.minecraft.nbt.CompoundTag; -import net.minecraft.util.Mth; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.block.entity.BlockEntity; diff --git a/src/main/java/li/cil/oc2/common/bus/device/vm/block/FlashMemoryFlasherDevice.java b/src/main/java/li/cil/oc2/common/bus/device/vm/block/FlashMemoryFlasherDevice.java index 427307e4..07e30b8f 100644 --- a/src/main/java/li/cil/oc2/common/bus/device/vm/block/FlashMemoryFlasherDevice.java +++ b/src/main/java/li/cil/oc2/common/bus/device/vm/block/FlashMemoryFlasherDevice.java @@ -4,7 +4,6 @@ package li.cil.oc2.common.bus.device.vm.block; import li.cil.oc2.common.bus.device.vm.item.AbstractBlockStorageDevice; import li.cil.oc2.common.item.FlashMemoryItem; -import li.cil.oc2.common.item.FloppyItem; import li.cil.oc2.common.serialization.BlobStorage; import li.cil.sedna.api.device.BlockDevice; import li.cil.sedna.device.block.ByteBufferBlockDevice; diff --git a/src/main/java/li/cil/oc2/common/bus/device/vm/item/AbstractBlockStorageDevice.java b/src/main/java/li/cil/oc2/common/bus/device/vm/item/AbstractBlockStorageDevice.java index 3b0e8122..cf295d71 100644 --- a/src/main/java/li/cil/oc2/common/bus/device/vm/item/AbstractBlockStorageDevice.java +++ b/src/main/java/li/cil/oc2/common/bus/device/vm/item/AbstractBlockStorageDevice.java @@ -48,7 +48,7 @@ public abstract class AbstractBlockStorageDevice openJob; diff --git a/src/main/java/li/cil/oc2/common/bus/device/vm/item/ByteBufferFlashStorageDevice.java b/src/main/java/li/cil/oc2/common/bus/device/vm/item/ByteBufferFlashStorageDevice.java index b5bcd6f4..72dab850 100644 --- a/src/main/java/li/cil/oc2/common/bus/device/vm/item/ByteBufferFlashStorageDevice.java +++ b/src/main/java/li/cil/oc2/common/bus/device/vm/item/ByteBufferFlashStorageDevice.java @@ -13,7 +13,6 @@ import li.cil.oc2.api.bus.device.vm.event.VMInitializingEvent; import li.cil.oc2.common.Constants; import li.cil.oc2.common.bus.device.util.IdentityProxy; import li.cil.oc2.common.bus.device.util.OptionalAddress; -import li.cil.oc2.common.item.AbstractStorageItem; import li.cil.oc2.common.serialization.BlobStorage; import li.cil.oc2.common.util.ItemStackUtils; import li.cil.sedna.api.memory.MemoryAccessException; diff --git a/src/main/java/li/cil/oc2/common/bus/device/vm/item/FirmwareFlashStorageDevice.java b/src/main/java/li/cil/oc2/common/bus/device/vm/item/FirmwareFlashStorageDevice.java index ff0db73d..05b670ef 100644 --- a/src/main/java/li/cil/oc2/common/bus/device/vm/item/FirmwareFlashStorageDevice.java +++ b/src/main/java/li/cil/oc2/common/bus/device/vm/item/FirmwareFlashStorageDevice.java @@ -44,10 +44,6 @@ public final class FirmwareFlashStorageDevice extends IdentityProxy i memoryMap = null; } - @Override - public void dispose() { - } - @Subscribe public void handleInitializingEvent(final VMInitializingEvent event) { copyDataToMemory(event.programStartAddress()); diff --git a/src/main/java/li/cil/oc2/common/container/Containers.java b/src/main/java/li/cil/oc2/common/container/Containers.java index 2c788836..a25eaeab 100644 --- a/src/main/java/li/cil/oc2/common/container/Containers.java +++ b/src/main/java/li/cil/oc2/common/container/Containers.java @@ -3,7 +3,6 @@ package li.cil.oc2.common.container; import li.cil.oc2.api.API; -import li.cil.oc2.common.util.RegistryUtils; import net.minecraft.world.inventory.MenuType; import net.minecraftforge.common.extensions.IForgeMenuType; import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; diff --git a/src/main/java/li/cil/oc2/common/container/MonitorDisplayContainer.java b/src/main/java/li/cil/oc2/common/container/MonitorDisplayContainer.java index 8824b48c..db172181 100644 --- a/src/main/java/li/cil/oc2/common/container/MonitorDisplayContainer.java +++ b/src/main/java/li/cil/oc2/common/container/MonitorDisplayContainer.java @@ -2,9 +2,7 @@ package li.cil.oc2.common.container; -import li.cil.oc2.common.blockentity.ComputerBlockEntity; import li.cil.oc2.common.blockentity.MonitorBlockEntity; -import li.cil.oc2.common.bus.CommonDeviceBusController; import net.minecraft.core.BlockPos; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.chat.Component; diff --git a/src/main/java/li/cil/oc2/common/entity/Entities.java b/src/main/java/li/cil/oc2/common/entity/Entities.java index 6e61d7a0..4bcb392c 100644 --- a/src/main/java/li/cil/oc2/common/entity/Entities.java +++ b/src/main/java/li/cil/oc2/common/entity/Entities.java @@ -3,7 +3,6 @@ package li.cil.oc2.common.entity; import li.cil.oc2.api.API; -import li.cil.oc2.common.util.RegistryUtils; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.EntityType; import net.minecraft.world.entity.MobCategory; diff --git a/src/main/java/li/cil/oc2/common/integration/jei/ExtraGuiAreasJEIPlugin.java b/src/main/java/li/cil/oc2/common/integration/jei/ExtraGuiAreasJEIPlugin.java index dcd5535a..b633e9a1 100644 --- a/src/main/java/li/cil/oc2/common/integration/jei/ExtraGuiAreasJEIPlugin.java +++ b/src/main/java/li/cil/oc2/common/integration/jei/ExtraGuiAreasJEIPlugin.java @@ -6,23 +6,18 @@ import li.cil.oc2.api.API; import li.cil.oc2.client.gui.AbstractMachineInventoryScreen; import li.cil.oc2.client.gui.AbstractMachineTerminalScreen; import li.cil.oc2.common.block.ComputerBlock; -import li.cil.oc2.common.item.Items; import mezz.jei.api.IModPlugin; import mezz.jei.api.JeiPlugin; import mezz.jei.api.constants.VanillaTypes; import mezz.jei.api.gui.handlers.IGuiContainerHandler; -import mezz.jei.api.ingredients.IIngredientType; import mezz.jei.api.registration.IGuiHandlerRegistration; import mezz.jei.api.registration.IRecipeRegistration; import net.minecraft.client.renderer.Rect2i; import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.crafting.Ingredient; import java.util.HashSet; import java.util.List; -import java.util.Set; @JeiPlugin public class ExtraGuiAreasJEIPlugin implements IModPlugin { @@ -34,7 +29,7 @@ public class ExtraGuiAreasJEIPlugin implements IModPlugin { @Override public void registerRecipes(final IRecipeRegistration registration) { - HashSet removals = new HashSet(); + HashSet removals = new HashSet<>(); removals.add(ComputerBlock.getPreconfiguredComputer()); registration.getIngredientManager().removeIngredientsAtRuntime(VanillaTypes.ITEM_STACK, removals); } diff --git a/src/main/java/li/cil/oc2/common/item/AbstractBlockDeviceItem.java b/src/main/java/li/cil/oc2/common/item/AbstractBlockDeviceItem.java index c3f5e734..8b7b7354 100644 --- a/src/main/java/li/cil/oc2/common/item/AbstractBlockDeviceItem.java +++ b/src/main/java/li/cil/oc2/common/item/AbstractBlockDeviceItem.java @@ -4,7 +4,6 @@ package li.cil.oc2.common.item; import li.cil.oc2.api.bus.device.data.BlockDeviceData; import li.cil.oc2.common.bus.device.data.BlockDeviceDataRegistry; -import li.cil.oc2.common.bus.device.data.FileSystems; import li.cil.oc2.common.util.ItemStackUtils; import net.minecraft.ResourceLocationException; import net.minecraft.network.chat.Component; diff --git a/src/main/java/li/cil/oc2/common/item/BusInterfaceItem.java b/src/main/java/li/cil/oc2/common/item/BusInterfaceItem.java index 0dbedce3..53fc1ac7 100644 --- a/src/main/java/li/cil/oc2/common/item/BusInterfaceItem.java +++ b/src/main/java/li/cil/oc2/common/item/BusInterfaceItem.java @@ -11,12 +11,10 @@ import li.cil.oc2.common.util.TooltipUtils; import net.minecraft.advancements.CriteriaTriggers; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; -import net.minecraft.core.NonNullList; import net.minecraft.network.chat.Component; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.InteractionResult; import net.minecraft.world.entity.player.Player; -import net.minecraft.world.item.CreativeModeTab; import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.TooltipFlag; diff --git a/src/main/java/li/cil/oc2/common/item/CPUItem.java b/src/main/java/li/cil/oc2/common/item/CPUItem.java index 87aa470f..3d9d1b94 100644 --- a/src/main/java/li/cil/oc2/common/item/CPUItem.java +++ b/src/main/java/li/cil/oc2/common/item/CPUItem.java @@ -1,6 +1,5 @@ package li.cil.oc2.common.item; -import li.cil.oc2.common.util.TextFormatUtils; import net.minecraft.network.chat.Component; import net.minecraft.world.item.ItemStack; @@ -18,22 +17,13 @@ public class CPUItem extends ModItem { return frequency; } - public String getFrequencyString() - { - StringBuilder builder = new StringBuilder(); - - builder.append(frequency/1_000_000); - builder.append(" MHz"); - - return builder.toString(); - } - @Override public Component getName(final ItemStack stack) { return Component.literal("") .append(super.getName(stack)) .append(" (") - .append(getFrequencyString()) + .append(String.valueOf(frequency / 1_000_000)) + .append(" MHz") .append(")"); } } diff --git a/src/main/java/li/cil/oc2/common/item/ChargerItem.java b/src/main/java/li/cil/oc2/common/item/ChargerItem.java index 1ce0decd..644da7e6 100644 --- a/src/main/java/li/cil/oc2/common/item/ChargerItem.java +++ b/src/main/java/li/cil/oc2/common/item/ChargerItem.java @@ -2,10 +2,6 @@ package li.cil.oc2.common.item; -import li.cil.oc2.common.Config; -import net.minecraft.core.NonNullList; -import net.minecraft.world.item.CreativeModeTab; -import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.block.Block; public final class ChargerItem extends ModBlockItem { diff --git a/src/main/java/li/cil/oc2/common/item/FlashMemoryItem.java b/src/main/java/li/cil/oc2/common/item/FlashMemoryItem.java index 9af80ff9..54992ae2 100644 --- a/src/main/java/li/cil/oc2/common/item/FlashMemoryItem.java +++ b/src/main/java/li/cil/oc2/common/item/FlashMemoryItem.java @@ -4,7 +4,6 @@ package li.cil.oc2.common.item; import li.cil.oc2.api.API; import li.cil.oc2.common.bus.device.vm.item.ByteBufferFlashStorageDevice; -import li.cil.oc2.common.util.ItemStackUtils; import li.cil.oc2.common.util.NBTTagIds; import net.minecraft.Util; import net.minecraft.nbt.CompoundTag; diff --git a/src/main/java/li/cil/oc2/common/item/FlashMemoryWithExternalDataItem.java b/src/main/java/li/cil/oc2/common/item/FlashMemoryWithExternalDataItem.java index 3441bf0c..d1c3a10b 100644 --- a/src/main/java/li/cil/oc2/common/item/FlashMemoryWithExternalDataItem.java +++ b/src/main/java/li/cil/oc2/common/item/FlashMemoryWithExternalDataItem.java @@ -7,13 +7,9 @@ import li.cil.oc2.common.bus.device.data.FirmwareRegistry; import li.cil.oc2.common.util.ItemStackUtils; import net.minecraft.ResourceLocationException; import net.minecraft.Util; -import net.minecraft.core.NonNullList; -import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; import net.minecraft.util.StringUtil; -import net.minecraft.world.item.CreativeModeTab; -import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; import javax.annotation.Nullable; diff --git a/src/main/java/li/cil/oc2/common/item/HardDriveWithExternalDataItem.java b/src/main/java/li/cil/oc2/common/item/HardDriveWithExternalDataItem.java index fad4ac90..2cf91160 100644 --- a/src/main/java/li/cil/oc2/common/item/HardDriveWithExternalDataItem.java +++ b/src/main/java/li/cil/oc2/common/item/HardDriveWithExternalDataItem.java @@ -3,18 +3,14 @@ package li.cil.oc2.common.item; import li.cil.oc2.api.API; -import li.cil.oc2.common.bus.device.data.BlockDeviceDataRegistry; import li.cil.oc2.common.util.ColorUtils; import net.minecraft.Util; -import net.minecraft.core.NonNullList; import net.minecraft.resources.ResourceLocation; -import net.minecraft.world.item.CreativeModeTab; import net.minecraft.world.item.DyeColor; import net.minecraft.world.item.DyeableLeatherItem; import net.minecraft.world.item.ItemStack; import javax.annotation.Nullable; -import java.util.Objects; public final class HardDriveWithExternalDataItem extends AbstractBlockDeviceItem implements DyeableLeatherItem { private final int defaultColor; diff --git a/src/main/java/li/cil/oc2/common/item/NetworkTunnelItem.java b/src/main/java/li/cil/oc2/common/item/NetworkTunnelItem.java index a71074f8..813cf97e 100644 --- a/src/main/java/li/cil/oc2/common/item/NetworkTunnelItem.java +++ b/src/main/java/li/cil/oc2/common/item/NetworkTunnelItem.java @@ -9,7 +9,6 @@ import net.minecraft.ChatFormatting; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; import net.minecraft.network.chat.MutableComponent; -import net.minecraft.network.chat.contents.TranslatableContents; import net.minecraft.server.level.ServerPlayer; import net.minecraft.util.StringUtil; import net.minecraft.world.InteractionHand; diff --git a/src/main/java/li/cil/oc2/common/item/RobotItem.java b/src/main/java/li/cil/oc2/common/item/RobotItem.java index 6cacf045..d4c74a29 100644 --- a/src/main/java/li/cil/oc2/common/item/RobotItem.java +++ b/src/main/java/li/cil/oc2/common/item/RobotItem.java @@ -17,14 +17,11 @@ import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.BlockEntityWithoutLevelRenderer; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; -import net.minecraft.core.NonNullList; import net.minecraft.core.Vec3i; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; import net.minecraft.stats.Stats; import net.minecraft.world.InteractionResult; -import net.minecraft.world.item.BlockItem; -import net.minecraft.world.item.CreativeModeTab; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.TooltipFlag; import net.minecraft.world.item.context.BlockPlaceContext; @@ -36,7 +33,6 @@ import net.minecraftforge.client.extensions.common.IClientItemExtensions; import net.minecraftforge.common.capabilities.ICapabilityProvider; import javax.annotation.Nullable; -import javax.annotation.ParametersAreNonnullByDefault; import java.util.List; import java.util.function.Consumer; diff --git a/src/main/java/li/cil/oc2/common/item/WrenchItem.java b/src/main/java/li/cil/oc2/common/item/WrenchItem.java index 86f5cdf8..71f9a9b3 100644 --- a/src/main/java/li/cil/oc2/common/item/WrenchItem.java +++ b/src/main/java/li/cil/oc2/common/item/WrenchItem.java @@ -8,11 +8,8 @@ import net.minecraft.client.multiplayer.MultiPlayerGameMode; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.server.level.ServerPlayer; -import net.minecraft.world.Container; -import net.minecraft.world.Containers; import net.minecraft.world.InteractionResult; import net.minecraft.world.entity.player.Player; -import net.minecraft.world.item.DispensibleContainerItem; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.context.UseOnContext; import net.minecraft.world.level.Level; diff --git a/src/main/java/li/cil/oc2/common/item/crafting/RecipeSerializers.java b/src/main/java/li/cil/oc2/common/item/crafting/RecipeSerializers.java index 989a5f00..d0e70608 100644 --- a/src/main/java/li/cil/oc2/common/item/crafting/RecipeSerializers.java +++ b/src/main/java/li/cil/oc2/common/item/crafting/RecipeSerializers.java @@ -3,7 +3,6 @@ package li.cil.oc2.common.item.crafting; import li.cil.oc2.api.API; -import li.cil.oc2.common.util.RegistryUtils; import net.minecraft.world.item.crafting.RecipeSerializer; import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; import net.minecraftforge.registries.DeferredRegister; diff --git a/src/main/java/li/cil/oc2/common/item/crafting/WrenchRecipe.java b/src/main/java/li/cil/oc2/common/item/crafting/WrenchRecipe.java index 356aa9a6..8c4339ad 100644 --- a/src/main/java/li/cil/oc2/common/item/crafting/WrenchRecipe.java +++ b/src/main/java/li/cil/oc2/common/item/crafting/WrenchRecipe.java @@ -13,7 +13,6 @@ import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.crafting.CraftingBookCategory; import net.minecraft.world.item.crafting.RecipeSerializer; import net.minecraft.world.item.crafting.ShapelessRecipe; -import net.minecraftforge.common.capabilities.Capability; import org.jetbrains.annotations.Nullable; public final class WrenchRecipe extends ShapelessRecipe { diff --git a/src/main/java/li/cil/oc2/common/network/message/AbstractTerminalDisplayMessage.java b/src/main/java/li/cil/oc2/common/network/message/AbstractTerminalDisplayMessage.java deleted file mode 100644 index 10a929de..00000000 --- a/src/main/java/li/cil/oc2/common/network/message/AbstractTerminalDisplayMessage.java +++ /dev/null @@ -1,40 +0,0 @@ -/* SPDX-License-Identifier: MIT */ - -package li.cil.oc2.common.network.message; - -import li.cil.oc2.common.blockentity.ComputerBlockEntity; -import li.cil.oc2.common.blockentity.MonitorBlockEntity; -import net.minecraft.core.BlockPos; -import net.minecraft.network.FriendlyByteBuf; - -import java.nio.ByteBuffer; - -public abstract class AbstractTerminalDisplayMessage extends AbstractMessage { - protected BlockPos pos; - protected byte[] data; - - /////////////////////////////////////////////////////////////////// - - protected AbstractTerminalDisplayMessage(final MonitorBlockEntity monitor, final ByteBuffer data) { - this.pos = monitor.getBlockPos(); - this.data = data.array(); - } - - protected AbstractTerminalDisplayMessage(final FriendlyByteBuf buffer) { - super(buffer); - } - - /////////////////////////////////////////////////////////////////// - - @Override - public void fromBytes(final FriendlyByteBuf buffer) { - pos = buffer.readBlockPos(); - data = buffer.readByteArray(); - } - - @Override - public void toBytes(final FriendlyByteBuf buffer) { - buffer.writeBlockPos(pos); - buffer.writeByteArray(data); - } -} diff --git a/src/main/java/li/cil/oc2/common/network/message/ComputerPowerMessage.java b/src/main/java/li/cil/oc2/common/network/message/ComputerPowerMessage.java index a053b074..6a8bf3e7 100644 --- a/src/main/java/li/cil/oc2/common/network/message/ComputerPowerMessage.java +++ b/src/main/java/li/cil/oc2/common/network/message/ComputerPowerMessage.java @@ -4,7 +4,6 @@ package li.cil.oc2.common.network.message; import li.cil.oc2.common.blockentity.ComputerBlockEntity; import li.cil.oc2.common.network.MessageUtils; -import li.cil.oc2.common.network.Network; import net.minecraft.core.BlockPos; import net.minecraft.network.FriendlyByteBuf; import net.minecraftforge.network.NetworkEvent; diff --git a/src/main/java/li/cil/oc2/common/network/message/FirmwareFlasherMessage.java b/src/main/java/li/cil/oc2/common/network/message/FirmwareFlasherMessage.java index 82532f38..807ebc39 100644 --- a/src/main/java/li/cil/oc2/common/network/message/FirmwareFlasherMessage.java +++ b/src/main/java/li/cil/oc2/common/network/message/FirmwareFlasherMessage.java @@ -44,7 +44,7 @@ public final class FirmwareFlasherMessage extends AbstractMessage { @Override protected void handleMessage(final NetworkEvent.Context context) { - MessageUtils.withClientBlockEntityAt(pos, DiskDriveBlockEntity.class, - diskDrive -> diskDrive.setFloppyClient(ItemStack.of(data))); + MessageUtils.withClientBlockEntityAt(pos, FlashMemoryFlasherBlockEntity.class, + diskDrive -> diskDrive.setFlashMemory(ItemStack.of(data))); } } diff --git a/src/main/java/li/cil/oc2/common/network/message/MonitorFramebufferMessage.java b/src/main/java/li/cil/oc2/common/network/message/MonitorFramebufferMessage.java index ccd438a5..564743e1 100644 --- a/src/main/java/li/cil/oc2/common/network/message/MonitorFramebufferMessage.java +++ b/src/main/java/li/cil/oc2/common/network/message/MonitorFramebufferMessage.java @@ -3,7 +3,6 @@ package li.cil.oc2.common.network.message; import li.cil.oc2.common.blockentity.MonitorBlockEntity; -import li.cil.oc2.common.blockentity.ProjectorBlockEntity; import li.cil.oc2.common.network.MessageUtils; import net.minecraft.core.BlockPos; import net.minecraft.network.FriendlyByteBuf; diff --git a/src/main/java/li/cil/oc2/common/network/message/MonitorInputMessage.java b/src/main/java/li/cil/oc2/common/network/message/MonitorInputMessage.java index cffa4b32..817e6764 100644 --- a/src/main/java/li/cil/oc2/common/network/message/MonitorInputMessage.java +++ b/src/main/java/li/cil/oc2/common/network/message/MonitorInputMessage.java @@ -2,7 +2,6 @@ package li.cil.oc2.common.network.message; -import li.cil.oc2.common.blockentity.KeyboardBlockEntity; import li.cil.oc2.common.blockentity.MonitorBlockEntity; import li.cil.oc2.common.network.MessageUtils; import net.minecraft.core.BlockPos; diff --git a/src/main/java/li/cil/oc2/common/network/message/MonitorPowerMessage.java b/src/main/java/li/cil/oc2/common/network/message/MonitorPowerMessage.java index a2d6f291..f4c26d5d 100644 --- a/src/main/java/li/cil/oc2/common/network/message/MonitorPowerMessage.java +++ b/src/main/java/li/cil/oc2/common/network/message/MonitorPowerMessage.java @@ -2,7 +2,6 @@ package li.cil.oc2.common.network.message; -import li.cil.oc2.common.blockentity.ComputerBlockEntity; import li.cil.oc2.common.blockentity.MonitorBlockEntity; import li.cil.oc2.common.network.MessageUtils; import li.cil.oc2.common.network.Network; diff --git a/src/main/java/li/cil/oc2/common/network/message/MonitorRequestFramebufferMessage.java b/src/main/java/li/cil/oc2/common/network/message/MonitorRequestFramebufferMessage.java index 0c5e4579..a7f72ccc 100644 --- a/src/main/java/li/cil/oc2/common/network/message/MonitorRequestFramebufferMessage.java +++ b/src/main/java/li/cil/oc2/common/network/message/MonitorRequestFramebufferMessage.java @@ -3,10 +3,8 @@ package li.cil.oc2.common.network.message; import li.cil.oc2.common.blockentity.MonitorBlockEntity; -import li.cil.oc2.common.blockentity.ProjectorBlockEntity; import li.cil.oc2.common.network.MessageUtils; import li.cil.oc2.common.network.MonitorLoadBalancer; -import li.cil.oc2.common.network.ProjectorLoadBalancer; import net.minecraft.core.BlockPos; import net.minecraft.network.FriendlyByteBuf; import net.minecraftforge.network.NetworkEvent; diff --git a/src/main/java/li/cil/oc2/common/network/message/MonitorStateMessage.java b/src/main/java/li/cil/oc2/common/network/message/MonitorStateMessage.java index 68562b8b..bbdb3acf 100644 --- a/src/main/java/li/cil/oc2/common/network/message/MonitorStateMessage.java +++ b/src/main/java/li/cil/oc2/common/network/message/MonitorStateMessage.java @@ -3,7 +3,6 @@ package li.cil.oc2.common.network.message; import li.cil.oc2.common.blockentity.MonitorBlockEntity; -import li.cil.oc2.common.blockentity.ProjectorBlockEntity; import li.cil.oc2.common.network.MessageUtils; import net.minecraft.core.BlockPos; import net.minecraft.network.FriendlyByteBuf; diff --git a/src/main/java/li/cil/oc2/common/network/message/MultipartMessage.java b/src/main/java/li/cil/oc2/common/network/message/MultipartMessage.java index 4ffdc07b..f32be822 100644 --- a/src/main/java/li/cil/oc2/common/network/message/MultipartMessage.java +++ b/src/main/java/li/cil/oc2/common/network/message/MultipartMessage.java @@ -11,7 +11,6 @@ import it.unimi.dsi.fastutil.ints.Int2ObjectMap; import li.cil.oc2.common.Constants; import li.cil.oc2.common.network.Network; import net.minecraft.network.FriendlyByteBuf; -import net.minecraft.network.protocol.game.ServerboundCustomPayloadPacket; import net.minecraftforge.network.NetworkEvent; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; diff --git a/src/main/java/li/cil/oc2/common/serialization/NBTToJsonConverter.java b/src/main/java/li/cil/oc2/common/serialization/NBTToJsonConverter.java index a4a111e8..a6086037 100644 --- a/src/main/java/li/cil/oc2/common/serialization/NBTToJsonConverter.java +++ b/src/main/java/li/cil/oc2/common/serialization/NBTToJsonConverter.java @@ -36,8 +36,8 @@ public final class NBTToJsonConverter { case NBTTagIds.TAG_BYTE_ARRAY -> { final JsonArray json = new JsonArray(); final byte[] array = ((ByteArrayTag) tag).getAsByteArray(); - for (int i = 0; i < array.length; i++) { - json.add(array[i]); + for (final byte b : array) { + json.add(b); } return json; } @@ -63,16 +63,16 @@ public final class NBTToJsonConverter { case NBTTagIds.TAG_INT_ARRAY -> { final JsonArray json = new JsonArray(); final int[] array = ((IntArrayTag) tag).getAsIntArray(); - for (int i = 0; i < array.length; i++) { - json.add(array[i]); + for (final int j : array) { + json.add(j); } return json; } case NBTTagIds.TAG_LONG_ARRAY -> { final JsonArray json = new JsonArray(); final long[] array = ((LongArrayTag) tag).getAsLongArray(); - for (int i = 0; i < array.length; i++) { - json.add(array[i]); + for (final long l : array) { + json.add(l); } return json; } diff --git a/src/main/java/li/cil/oc2/common/tags/BlockTags.java b/src/main/java/li/cil/oc2/common/tags/BlockTags.java index 1fbddd22..18fed1e6 100644 --- a/src/main/java/li/cil/oc2/common/tags/BlockTags.java +++ b/src/main/java/li/cil/oc2/common/tags/BlockTags.java @@ -3,7 +3,6 @@ package li.cil.oc2.common.tags; import li.cil.oc2.api.API; -import net.minecraft.core.Registry; import net.minecraft.core.registries.Registries; import net.minecraft.resources.ResourceLocation; import net.minecraft.tags.TagKey; diff --git a/src/main/java/li/cil/oc2/common/tags/ItemTags.java b/src/main/java/li/cil/oc2/common/tags/ItemTags.java index bf56a8b7..6a96597b 100644 --- a/src/main/java/li/cil/oc2/common/tags/ItemTags.java +++ b/src/main/java/li/cil/oc2/common/tags/ItemTags.java @@ -3,7 +3,6 @@ package li.cil.oc2.common.tags; import li.cil.oc2.api.API; -import net.minecraft.core.Registry; import net.minecraft.core.registries.Registries; import net.minecraft.resources.ResourceLocation; import net.minecraft.tags.TagKey; diff --git a/src/main/java/li/cil/oc2/common/util/ChunkUtils.java b/src/main/java/li/cil/oc2/common/util/ChunkUtils.java index 9b8430ca..694107a6 100644 --- a/src/main/java/li/cil/oc2/common/util/ChunkUtils.java +++ b/src/main/java/li/cil/oc2/common/util/ChunkUtils.java @@ -110,8 +110,6 @@ public final class ChunkUtils { /** * Marks the specified as unsaved, if it was marked as lazy unsaved before * and clears the lazy unsaved flags. - * - * @param chunk the chunk to apply the lazy unsaved state for. */ public static void applyChunkLazyUnsaved() { for (final ChunkAccess chunk : UNSAVED_CHUNKS) { diff --git a/src/main/java/li/cil/oc2/common/util/ItemStackUtils.java b/src/main/java/li/cil/oc2/common/util/ItemStackUtils.java index ba3a6807..35474f72 100644 --- a/src/main/java/li/cil/oc2/common/util/ItemStackUtils.java +++ b/src/main/java/li/cil/oc2/common/util/ItemStackUtils.java @@ -15,7 +15,6 @@ import net.minecraft.world.phys.Vec3; import javax.annotation.Nullable; import java.util.Optional; -import java.util.Random; import static li.cil.oc2.common.Constants.MOD_TAG_NAME; diff --git a/src/main/java/li/cil/oc2/common/util/LevelUtils.java b/src/main/java/li/cil/oc2/common/util/LevelUtils.java index c47ae008..7cc7433c 100644 --- a/src/main/java/li/cil/oc2/common/util/LevelUtils.java +++ b/src/main/java/li/cil/oc2/common/util/LevelUtils.java @@ -14,6 +14,7 @@ import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraftforge.registries.ForgeRegistries; import javax.annotation.Nullable; +import java.util.Objects; import java.util.function.Function; public final class LevelUtils { @@ -50,11 +51,7 @@ public final class LevelUtils { } } - if (blockEntity != null) { - return blockEntity.getClass().getSimpleName(); - } - - return block.getClass().getSimpleName(); + return Objects.requireNonNullElse(blockEntity, block).getClass().getSimpleName(); } public static void playSound(final LevelAccessor level, final BlockPos pos, final SoundType soundType, final Function soundEvent) { diff --git a/src/main/java/li/cil/oc2/common/util/RegistryUtils.java b/src/main/java/li/cil/oc2/common/util/RegistryUtils.java index bdee666a..0598ce9e 100644 --- a/src/main/java/li/cil/oc2/common/util/RegistryUtils.java +++ b/src/main/java/li/cil/oc2/common/util/RegistryUtils.java @@ -7,15 +7,12 @@ import li.cil.oc2.api.bus.device.DeviceType; import li.cil.oc2.api.bus.device.provider.BlockDeviceProvider; import li.cil.oc2.api.bus.device.provider.ItemDeviceProvider; import li.cil.oc2.common.bus.device.provider.ProviderRegistry; -import li.cil.oc2.common.bus.device.util.BlockDeviceInfo; import net.minecraft.core.Registry; import net.minecraft.resources.ResourceKey; -import net.minecraft.resources.ResourceLocation; import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; import net.minecraftforge.registries.DeferredRegister; import net.minecraftforge.registries.IForgeRegistry; -import javax.annotation.Nullable; import java.util.ArrayList; import java.util.List; import java.util.Objects; diff --git a/src/main/java/li/cil/oc2/common/util/ThrottledSoundEmitter.java b/src/main/java/li/cil/oc2/common/util/ThrottledSoundEmitter.java index ad8b755b..45df056f 100644 --- a/src/main/java/li/cil/oc2/common/util/ThrottledSoundEmitter.java +++ b/src/main/java/li/cil/oc2/common/util/ThrottledSoundEmitter.java @@ -9,7 +9,6 @@ import net.minecraft.util.RandomSource; import java.time.Duration; import java.util.Optional; -import java.util.Random; import java.util.function.Supplier; public final class ThrottledSoundEmitter { diff --git a/src/main/java/li/cil/oc2/common/util/TooltipUtils.java b/src/main/java/li/cil/oc2/common/util/TooltipUtils.java index deb98422..ee7d512d 100644 --- a/src/main/java/li/cil/oc2/common/util/TooltipUtils.java +++ b/src/main/java/li/cil/oc2/common/util/TooltipUtils.java @@ -2,7 +2,6 @@ package li.cil.oc2.common.util; -import com.mojang.blaze3d.vertex.PoseStack; import it.unimi.dsi.fastutil.ints.IntArrayList; import it.unimi.dsi.fastutil.ints.IntList; import li.cil.oc2.api.bus.device.DeviceType; @@ -18,8 +17,6 @@ import net.minecraft.client.StringSplitter; import net.minecraft.client.gui.Font; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.client.gui.screens.Screen; -import net.minecraft.client.gui.screens.inventory.tooltip.ClientTooltipComponent; -import net.minecraft.client.gui.screens.inventory.tooltip.ClientTooltipPositioner; import net.minecraft.locale.Language; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.ListTag; @@ -29,8 +26,6 @@ import net.minecraft.world.item.ItemStack; import net.minecraftforge.client.ForgeHooksClient; import net.minecraftforge.registries.ForgeRegistry; import net.minecraftforge.registries.RegistryManager; -import org.joml.Vector2i; -import org.joml.Vector2ic; import java.text.DecimalFormat; import java.util.ArrayList; @@ -39,6 +34,7 @@ import java.util.List; import static li.cil.oc2.common.Constants.*; import static li.cil.oc2.common.util.TextFormatUtils.withFormat; +@SuppressWarnings("UnstableApiUsage") public final class TooltipUtils { private static final MutableComponent DEVICE_NEEDS_REBOOT = Component.translatable(Constants.TOOLTIP_DEVICE_NEEDS_REBOOT) diff --git a/src/main/java/li/cil/oc2/common/vm/AbstractVMItemStackHandlers.java b/src/main/java/li/cil/oc2/common/vm/AbstractVMItemStackHandlers.java index 0e1a5078..3d8e2dff 100644 --- a/src/main/java/li/cil/oc2/common/vm/AbstractVMItemStackHandlers.java +++ b/src/main/java/li/cil/oc2/common/vm/AbstractVMItemStackHandlers.java @@ -21,8 +21,6 @@ import net.minecraftforge.items.wrapper.CombinedInvWrapper; import java.util.*; import java.util.stream.Collectors; -import static li.cil.oc2.common.util.RegistryUtils.key; - public abstract class AbstractVMItemStackHandlers implements VMItemStackHandlers { public record GroupDefinition(DeviceType deviceType, int count) { } diff --git a/src/main/java/li/cil/oc2/common/vm/BuiltinDevices.java b/src/main/java/li/cil/oc2/common/vm/BuiltinDevices.java index 153bf963..272a1c53 100644 --- a/src/main/java/li/cil/oc2/common/vm/BuiltinDevices.java +++ b/src/main/java/li/cil/oc2/common/vm/BuiltinDevices.java @@ -28,9 +28,9 @@ public final class BuiltinDevices { /////////////////////////////////////////////////////////////////// - @Serialized public VirtIOConsoleDevice rpcSerialDevice; - @Serialized public UART16550A uart; - @Serialized public VirtIOFileSystemDevice vfs; + @Serialized public final VirtIOConsoleDevice rpcSerialDevice; + @Serialized public final UART16550A uart; + @Serialized public final VirtIOFileSystemDevice vfs; /////////////////////////////////////////////////////////////////// diff --git a/src/main/java/li/cil/oc2/common/vm/MinecraftRealTimeCounter.java b/src/main/java/li/cil/oc2/common/vm/MinecraftRealTimeCounter.java index b4ae821b..6148b58f 100644 --- a/src/main/java/li/cil/oc2/common/vm/MinecraftRealTimeCounter.java +++ b/src/main/java/li/cil/oc2/common/vm/MinecraftRealTimeCounter.java @@ -23,12 +23,10 @@ public final class MinecraftRealTimeCounter implements RealTimeCounter { @Override public long getTime() { - final long ticks = level != null ? level.getGameTime() : 0; - final long days = ticks; // / TICKS_PER_DAY + final long days = level != null ? level.getGameTime() : 0; // / TICKS_PER_DAY final long hours = days * 24; final long minutes = hours * 60; - final long seconds = minutes * 60; - return seconds; // * FREQUENCY + return minutes * 60; // * FREQUENCY } @Override diff --git a/src/main/java/li/cil/oc2/common/vm/Terminal.java b/src/main/java/li/cil/oc2/common/vm/Terminal.java index 5f6ac126..c5007c09 100644 --- a/src/main/java/li/cil/oc2/common/vm/Terminal.java +++ b/src/main/java/li/cil/oc2/common/vm/Terminal.java @@ -18,7 +18,6 @@ import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.api.distmarker.OnlyIn; import javax.annotation.Nullable; -import java.nio.Buffer; import java.nio.ByteBuffer; import java.util.Arrays; import java.util.Collections; diff --git a/src/main/java/li/cil/oc2/common/vm/context/global/GlobalVMContext.java b/src/main/java/li/cil/oc2/common/vm/context/global/GlobalVMContext.java index 3331f432..1a8ca029 100644 --- a/src/main/java/li/cil/oc2/common/vm/context/global/GlobalVMContext.java +++ b/src/main/java/li/cil/oc2/common/vm/context/global/GlobalVMContext.java @@ -31,11 +31,11 @@ public final class GlobalVMContext implements VMContext, VMContextManagerCollect @Serialized @SuppressWarnings("FieldMayBeFinal") - private BitSet reservedInterrupts = new BitSet(); + private final BitSet reservedInterrupts = new BitSet(); @Serialized @SuppressWarnings("FieldMayBeFinal") - private MemoryRangeList reservedMemoryRanges = new MemoryRangeList(); + private final MemoryRangeList reservedMemoryRanges = new MemoryRangeList(); /////////////////////////////////////////////////////////////////// diff --git a/src/main/java/li/cil/oc2/common/vm/device/PciRootPortDevice.java b/src/main/java/li/cil/oc2/common/vm/device/PciRootPortDevice.java index 4d44b457..34605d62 100644 --- a/src/main/java/li/cil/oc2/common/vm/device/PciRootPortDevice.java +++ b/src/main/java/li/cil/oc2/common/vm/device/PciRootPortDevice.java @@ -48,12 +48,6 @@ public final class PciRootPortDevice implements MemoryMappedDevice { } } - - public boolean hasChanges() { - return false; - } - - @Override public int getLength() { return length; @@ -62,12 +56,12 @@ public final class PciRootPortDevice implements MemoryMappedDevice { @Override public long load(final int offset, final int sizeLog2) throws MemoryAccessException { if (offset >= 0 && offset <= length - (1 << sizeLog2)) { - System.out.println(String.format("PCI config read: %x %x", offset, sizeLog2)); + System.out.printf("PCI config read: %x %x%n", offset, sizeLog2); if (offset == 0x10) { long res = buffer.getInt(offset); - System.out.println(String.format(" 00:00.0 BAR0 read %x", res)); + System.out.printf(" 00:00.0 BAR0 read %x%n", res); res = res & 0xFFFFF000L; - System.out.println(String.format("Clipped 00:00.0 BAR0 read to %x", res)); + System.out.printf("Clipped 00:00.0 BAR0 read to %x%n", res); return res; } return switch (sizeLog2) { @@ -85,7 +79,7 @@ public final class PciRootPortDevice implements MemoryMappedDevice { @Override public void store(final int offset, final long value, final int sizeLog2) throws MemoryAccessException { if (offset >= 0 && offset <= length - (1 << sizeLog2)) { - System.out.println(String.format("PCI config write: %x %x %x", offset, value, sizeLog2)); + System.out.printf("PCI config write: %x %x %x%n", offset, value, sizeLog2); switch (sizeLog2) { case 0 -> buffer.put(offset, (byte) value); case 1 -> buffer.putShort(offset, (short) value); diff --git a/src/main/java/li/cil/oc2/data/DataGenerators.java b/src/main/java/li/cil/oc2/data/DataGenerators.java index 34649951..eac532ac 100644 --- a/src/main/java/li/cil/oc2/data/DataGenerators.java +++ b/src/main/java/li/cil/oc2/data/DataGenerators.java @@ -7,7 +7,6 @@ import net.minecraft.data.DataGenerator; import net.minecraft.data.DataProvider; import net.minecraft.data.loot.LootTableProvider; import net.minecraft.world.level.storage.loot.parameters.LootContextParamSets; -import net.minecraftforge.common.data.BlockTagsProvider; import net.minecraftforge.common.data.ExistingFileHelper; import net.minecraftforge.data.event.GatherDataEvent; import net.minecraftforge.eventbus.api.SubscribeEvent; diff --git a/src/main/java/li/cil/oc2/data/ModBlockTagsProvider.java b/src/main/java/li/cil/oc2/data/ModBlockTagsProvider.java index 1658c37e..33082310 100644 --- a/src/main/java/li/cil/oc2/data/ModBlockTagsProvider.java +++ b/src/main/java/li/cil/oc2/data/ModBlockTagsProvider.java @@ -3,7 +3,6 @@ package li.cil.oc2.data; import li.cil.oc2.api.API; -import net.minecraft.data.DataGenerator; import net.minecraft.core.HolderLookup; import net.minecraft.data.PackOutput; import net.minecraftforge.common.data.BlockTagsProvider; diff --git a/src/main/java/li/cil/oc2/data/ModItemModelProvider.java b/src/main/java/li/cil/oc2/data/ModItemModelProvider.java index d1cf7e70..904053b7 100644 --- a/src/main/java/li/cil/oc2/data/ModItemModelProvider.java +++ b/src/main/java/li/cil/oc2/data/ModItemModelProvider.java @@ -5,7 +5,6 @@ package li.cil.oc2.data; import li.cil.oc2.api.API; import li.cil.oc2.common.entity.Entities; import li.cil.oc2.common.item.Items; -import net.minecraft.data.DataGenerator; import net.minecraft.data.PackOutput; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.Item; diff --git a/src/main/java/li/cil/oc2/data/ModItemTagsProvider.java b/src/main/java/li/cil/oc2/data/ModItemTagsProvider.java index 733e3567..63ad5fdf 100644 --- a/src/main/java/li/cil/oc2/data/ModItemTagsProvider.java +++ b/src/main/java/li/cil/oc2/data/ModItemTagsProvider.java @@ -2,15 +2,11 @@ package li.cil.oc2.data; -import li.cil.oc2.api.API; -import li.cil.oc2.common.item.CPUItem; import li.cil.oc2.common.item.Items; import li.cil.oc2.common.tags.BlockTags; -import net.minecraft.data.DataGenerator; import net.minecraft.core.HolderLookup; import net.minecraft.data.PackOutput; import net.minecraft.data.tags.ItemTagsProvider; -import net.minecraft.world.item.Item; import net.minecraft.world.level.block.Block; import net.minecraftforge.common.data.ExistingFileHelper; diff --git a/src/main/java/li/cil/oc2/data/ModLootTableProvider.java b/src/main/java/li/cil/oc2/data/ModLootTableProvider.java index 2fe26522..fae0c9e5 100644 --- a/src/main/java/li/cil/oc2/data/ModLootTableProvider.java +++ b/src/main/java/li/cil/oc2/data/ModLootTableProvider.java @@ -2,8 +2,6 @@ package li.cil.oc2.data; -import com.mojang.datafixers.util.Pair; -import li.cil.oc2.api.API; import li.cil.oc2.common.block.Blocks; import net.minecraft.data.PackOutput; import net.minecraft.data.loot.BlockLootSubProvider; @@ -18,22 +16,14 @@ import net.minecraft.world.level.storage.loot.functions.CopyNbtFunction; import net.minecraft.world.level.storage.loot.parameters.LootContextParamSets; import net.minecraft.world.level.storage.loot.providers.nbt.ContextNbtProvider; import net.minecraft.world.level.storage.loot.providers.number.ConstantValue; -import net.minecraftforge.registries.ForgeRegistries; -import net.minecraftforge.registries.ForgeRegistry; import net.minecraftforge.registries.RegistryObject; import java.util.Collections; import java.util.List; -import java.util.Map; import java.util.Set; -import java.util.function.BiConsumer; -import java.util.function.Consumer; -import java.util.function.Supplier; import java.util.stream.Collectors; -import java.util.stream.StreamSupport; import static java.util.Collections.singletonList; -import static java.util.Objects.requireNonNull; import static li.cil.oc2.common.Constants.*; public final class ModLootTableProvider extends LootTableProvider { diff --git a/src/main/java/li/cil/oc2/data/ModRecipesProvider.java b/src/main/java/li/cil/oc2/data/ModRecipesProvider.java index 78ddd555..52aa4cd5 100644 --- a/src/main/java/li/cil/oc2/data/ModRecipesProvider.java +++ b/src/main/java/li/cil/oc2/data/ModRecipesProvider.java @@ -4,7 +4,6 @@ package li.cil.oc2.data; import li.cil.oc2.common.item.Items; import net.minecraft.advancements.critereon.InventoryChangeTrigger; -import net.minecraft.data.DataGenerator; import net.minecraft.data.PackOutput; import net.minecraft.data.recipes.*; import net.minecraft.tags.ItemTags; diff --git a/src/main/java/li/cil/oc2/data/WrenchRecipeBuilder.java b/src/main/java/li/cil/oc2/data/WrenchRecipeBuilder.java index b2c842b3..ae052221 100644 --- a/src/main/java/li/cil/oc2/data/WrenchRecipeBuilder.java +++ b/src/main/java/li/cil/oc2/data/WrenchRecipeBuilder.java @@ -15,7 +15,6 @@ import net.minecraft.advancements.critereon.RecipeUnlockedTrigger; import net.minecraft.data.recipes.FinishedRecipe; import net.minecraft.resources.ResourceLocation; import net.minecraft.tags.TagKey; -import net.minecraft.world.item.CreativeModeTab; import net.minecraft.world.item.Item; import net.minecraft.world.item.crafting.Ingredient; import net.minecraft.world.item.crafting.RecipeSerializer; diff --git a/src/main/java/li/cil/oc2/jcodec/codecs/h264/io/model/SeqParameterSet.java b/src/main/java/li/cil/oc2/jcodec/codecs/h264/io/model/SeqParameterSet.java index 687309a4..25f1cda3 100644 --- a/src/main/java/li/cil/oc2/jcodec/codecs/h264/io/model/SeqParameterSet.java +++ b/src/main/java/li/cil/oc2/jcodec/codecs/h264/io/model/SeqParameterSet.java @@ -140,17 +140,13 @@ public final class SeqParameterSet { public int numRefFramesInPicOrderCntCycle; public static ColorSpace getColor(final int id) { - switch (id) { - case 0: - return ColorSpace.MONO; - case 1: - return ColorSpace.YUV420J; - case 2: - return ColorSpace.YUV422; - case 3: - return ColorSpace.YUV444; - } - throw new RuntimeException("Colorspace not supported"); + return switch (id) { + case 0 -> ColorSpace.MONO; + case 1 -> ColorSpace.YUV420J; + case 2 -> ColorSpace.YUV422; + case 3 -> ColorSpace.YUV444; + default -> throw new RuntimeException("Colorspace not supported"); + }; } public static int fromColor(final ColorSpace color) {