aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/common/covers/redstone
diff options
context:
space:
mode:
authorRaven Szewczyk <git@eigenraven.me>2023-04-01 20:06:12 +0100
committerGitHub <noreply@github.com>2023-04-01 19:06:12 +0000
commitb088958c9f6935d356b6c087c8e8106b400aa24f (patch)
treebe608fac08ba158f1226a4fb9f5b1ed459bac2a9 /src/main/java/gregtech/common/covers/redstone
parente52cd9c3458584e58073df5cd9cde1302994f266 (diff)
downloadGT5-Unofficial-b088958c9f6935d356b6c087c8e8106b400aa24f.tar.gz
GT5-Unofficial-b088958c9f6935d356b6c087c8e8106b400aa24f.tar.bz2
GT5-Unofficial-b088958c9f6935d356b6c087c8e8106b400aa24f.zip
Jabel, Generic injection and mostly automatic code cleanup (#1829)
* Enable Jabel&Generic injection, fix type error caused by this * add missing <> * Infer generic types automatically * Parametrize cast types * Use enhanced for loops * Unnecessary boxing * Unnecessary unboxing * Use Objects.equals * Explicit type can be replaced with `<>` * Collapse identical catch blocks * Add SafeVarargs where applicable * Anonymous type can be replaced with lambda * Use List.sort directly * Lambda can be a method reference * Statement lambda can be an expression lambda * Use string switches * Instanceof pattern matching * Text block can be used * Migrate to enhanced switch * Java style array declarations * Unnecessary toString() * More unnecessary String conversions * Unnecessary modifiers * Unnecessary semicolons * Fix duplicate conditions * Extract common code from if branches * Replace switches with ifs for 1-2 cases * Inner class may be static * Minor performance issues * Replace string appending in loops with string builders * Fix IntelliJ using the wrong empty list method * Use Long.compare * Generic arguments: getSubItems * Generic arguments: getSubBlocks * Raw types warnings * Fix remaining missing generics * Too weak variable type leads to unnecessary cast * Redundant type casts * Redundant array length check * Redundant vararg arrays * Manual min/max implementations * A couple missed inspections * Goodbye explosion power ternary ladder * Apply spotless * Get rid of the other two big ternary ladders * Binary search explosion power * Don't overcomplicate things
Diffstat (limited to 'src/main/java/gregtech/common/covers/redstone')
-rw-r--r--src/main/java/gregtech/common/covers/redstone/GT_Cover_AdvancedRedstoneReceiverInternal.java3
-rw-r--r--src/main/java/gregtech/common/covers/redstone/GT_Cover_AdvancedWirelessRedstoneBase.java19
-rw-r--r--src/main/java/gregtech/common/covers/redstone/GT_Cover_WirelessMaintenanceDetector.java20
3 files changed, 19 insertions, 23 deletions
diff --git a/src/main/java/gregtech/common/covers/redstone/GT_Cover_AdvancedRedstoneReceiverInternal.java b/src/main/java/gregtech/common/covers/redstone/GT_Cover_AdvancedRedstoneReceiverInternal.java
index f80fdc8e65..0ceaaeb887 100644
--- a/src/main/java/gregtech/common/covers/redstone/GT_Cover_AdvancedRedstoneReceiverInternal.java
+++ b/src/main/java/gregtech/common/covers/redstone/GT_Cover_AdvancedRedstoneReceiverInternal.java
@@ -13,8 +13,7 @@ public class GT_Cover_AdvancedRedstoneReceiverInternal extends GT_Cover_Advanced
@Override
public ReceiverData doCoverThingsImpl(byte aSide, byte aInputRedstone, int aCoverID, ReceiverData aCoverVariable,
ICoverable aTileEntity, long aTimer) {
- if (aTileEntity instanceof IMachineProgress) {
- IMachineProgress machine = ((IMachineProgress) aTileEntity);
+ if (aTileEntity instanceof IMachineProgress machine) {
if (getRedstoneInput(aSide, aInputRedstone, aCoverID, aCoverVariable, aTileEntity) > 0) {
machine.enableWorking();
} else {
diff --git a/src/main/java/gregtech/common/covers/redstone/GT_Cover_AdvancedWirelessRedstoneBase.java b/src/main/java/gregtech/common/covers/redstone/GT_Cover_AdvancedWirelessRedstoneBase.java
index e619d72723..fecb188214 100644
--- a/src/main/java/gregtech/common/covers/redstone/GT_Cover_AdvancedWirelessRedstoneBase.java
+++ b/src/main/java/gregtech/common/covers/redstone/GT_Cover_AdvancedWirelessRedstoneBase.java
@@ -43,37 +43,42 @@ public abstract class GT_Cover_AdvancedWirelessRedstoneBase<T extends GT_Cover_A
if (signals == null) signals = new ConcurrentHashMap<>();
switch (mode) {
- case AND:
+ case AND -> {
return (byte) (signals.values()
.stream()
.map(signal -> signal > 0)
.reduce(true, (signalA, signalB) -> signalA && signalB) ? 15 : 0);
- case NAND:
+ }
+ case NAND -> {
return (byte) (signals.values()
.stream()
.map(signal -> signal > 0)
.reduce(true, (signalA, signalB) -> signalA && signalB) ? 0 : 15);
- case OR:
+ }
+ case OR -> {
return (byte) (signals.values()
.stream()
.map(signal -> signal > 0)
.reduce(false, (signalA, signalB) -> signalA || signalB) ? 15 : 0);
- case NOR:
+ }
+ case NOR -> {
return (byte) (signals.values()
.stream()
.map(signal -> signal > 0)
.reduce(false, (signalA, signalB) -> signalA || signalB) ? 0 : 15);
- case SINGLE_SOURCE:
+ }
+ case SINGLE_SOURCE -> {
if (signals.values()
.isEmpty()) {
return 0;
}
-
return signals.values()
.iterator()
.next();
- default:
+ }
+ default -> {
return 0;
+ }
}
}
diff --git a/src/main/java/gregtech/common/covers/redstone/GT_Cover_WirelessMaintenanceDetector.java b/src/main/java/gregtech/common/covers/redstone/GT_Cover_WirelessMaintenanceDetector.java
index 515a196b65..d567ea0ae5 100644
--- a/src/main/java/gregtech/common/covers/redstone/GT_Cover_WirelessMaintenanceDetector.java
+++ b/src/main/java/gregtech/common/covers/redstone/GT_Cover_WirelessMaintenanceDetector.java
@@ -50,24 +50,15 @@ public class GT_Cover_WirelessMaintenanceDetector extends
if (tileEntity instanceof IGregTechTileEntity) {
IMetaTileEntity metaTE = ((IGregTechTileEntity) tileEntity).getMetaTileEntity();
- if (metaTE instanceof GT_MetaTileEntity_MultiBlockBase) {
- GT_MetaTileEntity_MultiBlockBase multiTE = (GT_MetaTileEntity_MultiBlockBase) metaTE;
+ if (metaTE instanceof GT_MetaTileEntity_MultiBlockBase multiTE) {
int ideal = multiTE.getIdealStatus();
int real = multiTE.getRepairStatus();
switch (coverVariable.mode) {
- case NO_ISSUE:
- signal = ideal == real;
- break;
- case ONE_ISSUE:
- case TWO_ISSUES:
- case THREE_ISSUES:
- case FOUR_ISSUES:
- case FIVE_ISSUES:
- signal = ideal - real >= coverVariable.mode.ordinal();
- break;
- case ROTOR_80:
- case ROTOR_100:
+ case NO_ISSUE -> signal = ideal == real;
+ case ONE_ISSUE, TWO_ISSUES, THREE_ISSUES, FOUR_ISSUES, FIVE_ISSUES -> signal = ideal - real
+ >= coverVariable.mode.ordinal();
+ case ROTOR_80, ROTOR_100 -> {
ItemStack rotor = multiTE.getRealInventory()[1];
if (GT_Cover_NeedMaintainance.isRotor(rotor)) {
long max = GT_MetaGenerated_Tool.getToolMaxDamage(rotor);
@@ -85,6 +76,7 @@ public class GT_Cover_WirelessMaintenanceDetector extends
} else {
signal = true;
}
+ }
}
}
}