From b434df71b23ce3fa184762a4ef395a9c7dc1900c Mon Sep 17 00:00:00 2001 From: raoulvdberge Date: Sat, 17 Oct 2020 16:30:25 +0200 Subject: [PATCH] More SonarQube fixes. --- .../network/node/DetectorNetworkNode.java | 14 +- .../DiskManipulatorNetworkNode.java | 6 +- .../network/security/SecurityCard.java | 4 +- .../render/model/DiskDriveBakedModel.java | 5 +- .../model/DiskManipulatorBakedModel.java | 3 +- .../render/model/FullbrightBakedModel.java | 6 +- .../screen/grid/CraftingPreviewScreen.java | 145 ++++++++++-------- .../sidebutton/FilterTypeSideButton.java | 16 +- 8 files changed, 108 insertions(+), 91 deletions(-) diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/DetectorNetworkNode.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/DetectorNetworkNode.java index 9c9f8acdb..c0832e0a5 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/DetectorNetworkNode.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/DetectorNetworkNode.java @@ -21,6 +21,8 @@ import net.minecraft.world.World; import net.minecraftforge.fluids.FluidStack; import net.minecraftforge.items.IItemHandlerModifiable; +import javax.annotation.Nullable; + public class DetectorNetworkNode extends NetworkNode implements IComparable, IType { public static final ResourceLocation ID = new ResourceLocation(RS.ID, "detector"); @@ -114,7 +116,7 @@ public class DetectorNetworkNode extends NetworkNode implements IComparable, ITy this.powered = powered; } - private boolean isPowered(Integer size) { + private boolean isPowered(@Nullable Integer size) { if (size != null) { switch (mode) { case MODE_UNDER: @@ -123,18 +125,16 @@ public class DetectorNetworkNode extends NetworkNode implements IComparable, ITy return size == amount; case MODE_ABOVE: return size > amount; + default: + return false; } } else { if (mode == MODE_UNDER && amount != 0) { return true; - } else if (mode == MODE_EQUAL && amount == 0) { - return true; - } else { - return false; } - } - return false; + return mode == MODE_EQUAL && amount == 0; + } } @Override diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/diskmanipulator/DiskManipulatorNetworkNode.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/diskmanipulator/DiskManipulatorNetworkNode.java index bc1153d2d..93e8f48bb 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/diskmanipulator/DiskManipulatorNetworkNode.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/node/diskmanipulator/DiskManipulatorNetworkNode.java @@ -201,13 +201,14 @@ public class DiskManipulatorNetworkNode extends NetworkNode implements IComparab } // In Extract mode, we just need to check if the disk is full or not. - if (ioMode == IO_MODE_EXTRACT) + if (ioMode == IO_MODE_EXTRACT) { if (storage.getStored() == storage.getCapacity()) { moveDriveToOutput(slot); return true; } else { return false; } + } List stacks = new ArrayList<>(storage.getStacks()); @@ -298,13 +299,14 @@ public class DiskManipulatorNetworkNode extends NetworkNode implements IComparab } //In Extract mode, we just need to check if the disk is full or not. - if (ioMode == IO_MODE_EXTRACT) + if (ioMode == IO_MODE_EXTRACT) { if (storage.getStored() == storage.getCapacity()) { moveDriveToOutput(slot); return true; } else { return false; } + } List stacks = new ArrayList<>(storage.getStacks()); diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/security/SecurityCard.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/security/SecurityCard.java index 2eea30e81..60e9eac89 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/security/SecurityCard.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/network/security/SecurityCard.java @@ -4,13 +4,13 @@ import com.refinedmods.refinedstorage.api.network.security.ISecurityCard; import com.refinedmods.refinedstorage.api.network.security.Permission; import javax.annotation.Nullable; -import java.util.HashMap; +import java.util.EnumMap; import java.util.Map; import java.util.UUID; public class SecurityCard implements ISecurityCard { private final UUID owner; - private final Map permissions = new HashMap<>(); + private final Map permissions = new EnumMap<>(Permission.class); public SecurityCard(@Nullable UUID owner) { this.owner = owner; diff --git a/src/main/java/com/refinedmods/refinedstorage/render/model/DiskDriveBakedModel.java b/src/main/java/com/refinedmods/refinedstorage/render/model/DiskDriveBakedModel.java index 201e5316d..a0cb5a10d 100644 --- a/src/main/java/com/refinedmods/refinedstorage/render/model/DiskDriveBakedModel.java +++ b/src/main/java/com/refinedmods/refinedstorage/render/model/DiskDriveBakedModel.java @@ -66,7 +66,6 @@ public class DiskDriveBakedModel extends DelegateBakedModel { } } - private final IBakedModel base; private final IBakedModel disk; private final IBakedModel diskNearCapacity; private final IBakedModel diskFull; @@ -80,7 +79,8 @@ public class DiskDriveBakedModel extends DelegateBakedModel { List quads = new ArrayList<>(QuadTransformer.getTransformedQuads(base, facing, null, key.state, key.random, key.side)); - int x = 0, y = 0; + int x = 0; + int y = 0; for (int i = 0; i < 8; ++i) { if (key.diskState[i] != DiskState.NONE) { IBakedModel diskModel = getDiskModel(key.diskState[i]); @@ -113,7 +113,6 @@ public class DiskDriveBakedModel extends DelegateBakedModel { IBakedModel diskDisconnected) { super(base); - this.base = base; this.disk = disk; this.diskNearCapacity = diskNearCapacity; this.diskFull = diskFull; diff --git a/src/main/java/com/refinedmods/refinedstorage/render/model/DiskManipulatorBakedModel.java b/src/main/java/com/refinedmods/refinedstorage/render/model/DiskManipulatorBakedModel.java index 3017df083..e058d055b 100644 --- a/src/main/java/com/refinedmods/refinedstorage/render/model/DiskManipulatorBakedModel.java +++ b/src/main/java/com/refinedmods/refinedstorage/render/model/DiskManipulatorBakedModel.java @@ -91,7 +91,8 @@ public class DiskManipulatorBakedModel extends DelegateBakedModel { key.side )); - int x = 0, y = 0; + int x = 0; + int y = 0; for (int i = 0; i < 6; ++i) { if (key.diskState[i] != DiskState.NONE) { IBakedModel diskModel = getDiskModel(key.diskState[i]); diff --git a/src/main/java/com/refinedmods/refinedstorage/render/model/FullbrightBakedModel.java b/src/main/java/com/refinedmods/refinedstorage/render/model/FullbrightBakedModel.java index 2fb719ff0..a858bd2fb 100644 --- a/src/main/java/com/refinedmods/refinedstorage/render/model/FullbrightBakedModel.java +++ b/src/main/java/com/refinedmods/refinedstorage/render/model/FullbrightBakedModel.java @@ -110,11 +110,7 @@ public class FullbrightBakedModel extends DelegateBakedModel { return false; } - if (!state.equals(cacheKey.state)) { - return false; - } - - return true; + return state.equals(cacheKey.state); } @Override diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/grid/CraftingPreviewScreen.java b/src/main/java/com/refinedmods/refinedstorage/screen/grid/CraftingPreviewScreen.java index 3ba73af0d..16dc8b069 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/grid/CraftingPreviewScreen.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/grid/CraftingPreviewScreen.java @@ -116,83 +116,102 @@ public class CraftingPreviewScreen extends BaseScreen { float scale = Minecraft.getInstance().getForceUnicodeFont() ? 1F : 0.5F; - if (getErrorType() != null) { - matrixStack.push(); - matrixStack.scale(scale, scale, 1); + CalculationResultType errorType = getErrorType(); + if (errorType != null) { + renderError(matrixStack, x, y, scale, errorType); + } else { + renderPreview(matrixStack, mouseX, mouseY, x, y); + } + } - renderString(matrixStack, RenderUtils.getOffsetOnScale(x + 5, scale), RenderUtils.getOffsetOnScale(y + 11, scale), I18n.format("gui.refinedstorage.crafting_preview.error")); + private void renderPreview(MatrixStack matrixStack, int mouseX, int mouseY, int x, int y) { + int slot = scrollbar != null ? (scrollbar.getOffset() * 3) : 0; - switch (getErrorType()) { - case RECURSIVE: { - renderString(matrixStack, RenderUtils.getOffsetOnScale(x + 5, scale), RenderUtils.getOffsetOnScale(y + 21, scale), I18n.format("gui.refinedstorage.crafting_preview.error.recursive.0")); - renderString(matrixStack, RenderUtils.getOffsetOnScale(x + 5, scale), RenderUtils.getOffsetOnScale(y + 31, scale), I18n.format("gui.refinedstorage.crafting_preview.error.recursive.1")); - renderString(matrixStack, RenderUtils.getOffsetOnScale(x + 5, scale), RenderUtils.getOffsetOnScale(y + 41, scale), I18n.format("gui.refinedstorage.crafting_preview.error.recursive.2")); - renderString(matrixStack, RenderUtils.getOffsetOnScale(x + 5, scale), RenderUtils.getOffsetOnScale(y + 51, scale), I18n.format("gui.refinedstorage.crafting_preview.error.recursive.3")); + RenderHelper.setupGui3DDiffuseLighting(); + RenderSystem.enableDepthTest(); - renderString(matrixStack, RenderUtils.getOffsetOnScale(x + 5, scale), RenderUtils.getOffsetOnScale(y + 61, scale), I18n.format("gui.refinedstorage.crafting_preview.error.recursive.4")); + this.hoveringStack = null; + this.hoveringFluid = null; - ICraftingPattern pattern = PatternItem.fromCache(parent.getMinecraft().world, (ItemStack) stacks.get(0).getElement()); - - int yy = 83; - for (ItemStack output : pattern.getOutputs()) { - if (output != null) { - matrixStack.push(); - matrixStack.scale(scale, scale, 1); - renderString(matrixStack, RenderUtils.getOffsetOnScale(x + 25, scale), RenderUtils.getOffsetOnScale(yy + 6, scale), output.getDisplayName().getString()); - matrixStack.pop(); - - RenderHelper.setupGui3DDiffuseLighting(); - RenderSystem.enableDepthTest(); - renderItem(matrixStack, x + 5, yy, output); - RenderHelper.disableStandardItemLighting(); - - yy += 17; - } - } - - break; - } - case TOO_COMPLEX: { - renderString(matrixStack, RenderUtils.getOffsetOnScale(x + 5, scale), RenderUtils.getOffsetOnScale(y + 21, scale), I18n.format("gui.refinedstorage.crafting_preview.error.too_complex.0")); - renderString(matrixStack, RenderUtils.getOffsetOnScale(x + 5, scale), RenderUtils.getOffsetOnScale(y + 31, scale), I18n.format("gui.refinedstorage.crafting_preview.error.too_complex.1")); - - break; - } + for (int i = 0; i < 3 * 5; ++i) { + if (slot < stacks.size()) { + renderElement(matrixStack, mouseX, mouseY, x, y, stacks.get(slot)); } - matrixStack.pop(); - } else { - int slot = scrollbar != null ? (scrollbar.getOffset() * 3) : 0; + if ((i + 1) % 3 == 0) { + x = 7; + y += 30; + } else { + x += 74; + } - RenderHelper.setupGui3DDiffuseLighting(); - RenderSystem.enableDepthTest(); + slot++; + } + } - this.hoveringStack = null; - this.hoveringFluid = null; + private void renderElement(MatrixStack matrixStack, int mouseX, int mouseY, int x, int y, ICraftingPreviewElement element) { + element.draw(matrixStack, x, y + 5, drawers); - for (int i = 0; i < 3 * 5; ++i) { - if (slot < stacks.size()) { - ICraftingPreviewElement stack = stacks.get(slot); + if (RenderUtils.inBounds(x + 5, y + 7, 16, 16, mouseX, mouseY)) { + this.hoveringStack = element.getId().equals(ItemCraftingPreviewElement.ID) ? (ItemStack) element.getElement() : null; - stack.draw(matrixStack, x, y + 5, drawers); + if (this.hoveringStack == null) { + this.hoveringFluid = element.getId().equals(FluidCraftingPreviewElement.ID) ? (FluidStack) element.getElement() : null; + } + } + } - if (RenderUtils.inBounds(x + 5, y + 7, 16, 16, mouseX, mouseY)) { - this.hoveringStack = stack.getId().equals(ItemCraftingPreviewElement.ID) ? (ItemStack) stack.getElement() : null; + private void renderError(MatrixStack matrixStack, int x, int y, float scale, CalculationResultType errorType) { + matrixStack.push(); + matrixStack.scale(scale, scale, 1); - if (this.hoveringStack == null) { - this.hoveringFluid = stack.getId().equals(FluidCraftingPreviewElement.ID) ? (FluidStack) stack.getElement() : null; - } - } - } + renderString(matrixStack, RenderUtils.getOffsetOnScale(x + 5, scale), RenderUtils.getOffsetOnScale(y + 11, scale), I18n.format("gui.refinedstorage.crafting_preview.error")); - if ((i + 1) % 3 == 0) { - x = 7; - y += 30; - } else { - x += 74; - } + switch (errorType) { + case RECURSIVE: + renderRecursiveError(matrixStack, x, y, scale); + break; + case OK: + case MISSING: + case NO_PATTERN: + break; + case TOO_COMPLEX: + renderTooComplexError(matrixStack, x, y, scale); + break; + } - slot++; + matrixStack.pop(); + } + + private void renderTooComplexError(MatrixStack matrixStack, int x, int y, float scale) { + renderString(matrixStack, RenderUtils.getOffsetOnScale(x + 5, scale), RenderUtils.getOffsetOnScale(y + 21, scale), I18n.format("gui.refinedstorage.crafting_preview.error.too_complex.0")); + renderString(matrixStack, RenderUtils.getOffsetOnScale(x + 5, scale), RenderUtils.getOffsetOnScale(y + 31, scale), I18n.format("gui.refinedstorage.crafting_preview.error.too_complex.1")); + } + + private void renderRecursiveError(MatrixStack matrixStack, int x, int y, float scale) { + renderString(matrixStack, RenderUtils.getOffsetOnScale(x + 5, scale), RenderUtils.getOffsetOnScale(y + 21, scale), I18n.format("gui.refinedstorage.crafting_preview.error.recursive.0")); + renderString(matrixStack, RenderUtils.getOffsetOnScale(x + 5, scale), RenderUtils.getOffsetOnScale(y + 31, scale), I18n.format("gui.refinedstorage.crafting_preview.error.recursive.1")); + renderString(matrixStack, RenderUtils.getOffsetOnScale(x + 5, scale), RenderUtils.getOffsetOnScale(y + 41, scale), I18n.format("gui.refinedstorage.crafting_preview.error.recursive.2")); + renderString(matrixStack, RenderUtils.getOffsetOnScale(x + 5, scale), RenderUtils.getOffsetOnScale(y + 51, scale), I18n.format("gui.refinedstorage.crafting_preview.error.recursive.3")); + + renderString(matrixStack, RenderUtils.getOffsetOnScale(x + 5, scale), RenderUtils.getOffsetOnScale(y + 61, scale), I18n.format("gui.refinedstorage.crafting_preview.error.recursive.4")); + + ICraftingPattern pattern = PatternItem.fromCache(parent.getMinecraft().world, (ItemStack) stacks.get(0).getElement()); + + int yy = 83; + for (ItemStack output : pattern.getOutputs()) { + if (output != null) { + matrixStack.push(); + matrixStack.scale(scale, scale, 1); + renderString(matrixStack, RenderUtils.getOffsetOnScale(x + 25, scale), RenderUtils.getOffsetOnScale(yy + 6, scale), output.getDisplayName().getString()); + matrixStack.pop(); + + RenderHelper.setupGui3DDiffuseLighting(); + RenderSystem.enableDepthTest(); + renderItem(matrixStack, x + 5, yy, output); + RenderHelper.disableStandardItemLighting(); + + yy += 17; } } } diff --git a/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/FilterTypeSideButton.java b/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/FilterTypeSideButton.java index 3c077f35d..87e1e233c 100644 --- a/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/FilterTypeSideButton.java +++ b/src/main/java/com/refinedmods/refinedstorage/screen/widget/sidebutton/FilterTypeSideButton.java @@ -7,27 +7,27 @@ import net.minecraft.client.resources.I18n; import net.minecraft.util.text.TextFormatting; public class FilterTypeSideButton extends SideButton { - private final FilterScreen screen; + private final FilterScreen filterScreen; - public FilterTypeSideButton(FilterScreen screen) { - super(screen); + public FilterTypeSideButton(FilterScreen filterScreen) { + super(filterScreen); - this.screen = screen; + this.filterScreen = filterScreen; } @Override public String getTooltip() { - return I18n.format("sidebutton.refinedstorage.type") + "\n" + TextFormatting.GRAY + I18n.format("sidebutton.refinedstorage.type." + screen.getType()); + return I18n.format("sidebutton.refinedstorage.type") + "\n" + TextFormatting.GRAY + I18n.format("sidebutton.refinedstorage.type." + filterScreen.getType()); } @Override protected void renderButtonIcon(MatrixStack matrixStack, int x, int y) { - screen.blit(matrixStack, x, y, 16 * screen.getType(), 128, 16, 16); + filterScreen.blit(matrixStack, x, y, 16 * filterScreen.getType(), 128, 16, 16); } @Override public void onPress() { - screen.setType(screen.getType() == IType.ITEMS ? IType.FLUIDS : IType.ITEMS); - screen.sendUpdate(); + filterScreen.setType(filterScreen.getType() == IType.ITEMS ? IType.FLUIDS : IType.ITEMS); + filterScreen.sendUpdate(); } }