diff options
author | Raven Szewczyk <git@eigenraven.me> | 2023-04-01 20:06:12 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-04-01 19:06:12 +0000 |
commit | b088958c9f6935d356b6c087c8e8106b400aa24f (patch) | |
tree | be608fac08ba158f1226a4fb9f5b1ed459bac2a9 /src/main/java/gregtech/api/multitileentity | |
parent | e52cd9c3458584e58073df5cd9cde1302994f266 (diff) | |
download | GT5-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/api/multitileentity')
7 files changed, 43 insertions, 46 deletions
diff --git a/src/main/java/gregtech/api/multitileentity/MultiTileEntityBlock.java b/src/main/java/gregtech/api/multitileentity/MultiTileEntityBlock.java index 81997c1e76..2e6bdca647 100644 --- a/src/main/java/gregtech/api/multitileentity/MultiTileEntityBlock.java +++ b/src/main/java/gregtech/api/multitileentity/MultiTileEntityBlock.java @@ -243,8 +243,8 @@ public class MultiTileEntityBlock extends Block @Override @SuppressWarnings("unchecked") - public final void addCollisionBoxesToList(World aWorld, int aX, int aY, int aZ, AxisAlignedBB aAABB, List aList, - Entity aEntity) { + public final void addCollisionBoxesToList(World aWorld, int aX, int aY, int aZ, AxisAlignedBB aAABB, + List<AxisAlignedBB> aList, Entity aEntity) { final TileEntity aTileEntity = aWorld.getTileEntity(aX, aY, aZ); if (aTileEntity instanceof IMultiTileEntity) ((IMultiTileEntity) aTileEntity).addCollisionBoxesToList(aAABB, aList, aEntity); @@ -444,9 +444,8 @@ public class MultiTileEntityBlock extends Block @Override public Block getFacade(IBlockAccess aWorld, int aX, int aY, int aZ, int side) { final TileEntity tTileEntity = aWorld.getTileEntity(aX, aY, aZ); - if (tTileEntity instanceof CoverableTileEntity) { + if (tTileEntity instanceof CoverableTileEntity tile) { final byte aSide = (byte) side; - final CoverableTileEntity tile = (CoverableTileEntity) tTileEntity; if (side != -1) { final Block facadeBlock = tile.getCoverInfoAtSide(aSide) .getFacadeBlock(); @@ -469,9 +468,8 @@ public class MultiTileEntityBlock extends Block @Override public int getFacadeMetadata(IBlockAccess aWorld, int aX, int aY, int aZ, int side) { final TileEntity tTileEntity = aWorld.getTileEntity(aX, aY, aZ); - if (tTileEntity instanceof CoverableTileEntity) { + if (tTileEntity instanceof CoverableTileEntity tile) { final byte aSide = (byte) side; - final CoverableTileEntity tile = (CoverableTileEntity) tTileEntity; if (side != -1) { final CoverInfo coverInfo = tile.getCoverInfoAtSide(aSide); final Block facadeBlock = coverInfo.getFacadeBlock(); @@ -518,7 +516,7 @@ public class MultiTileEntityBlock extends Block } @Override - public final void getSubBlocks(Item aItem, CreativeTabs aCreativeTab, List aList) { + public final void getSubBlocks(Item aItem, CreativeTabs aCreativeTab, List<ItemStack> aList) { /**/ } diff --git a/src/main/java/gregtech/api/multitileentity/MultiTileEntityBlockInternal.java b/src/main/java/gregtech/api/multitileentity/MultiTileEntityBlockInternal.java index 690430b673..91855aae55 100644 --- a/src/main/java/gregtech/api/multitileentity/MultiTileEntityBlockInternal.java +++ b/src/main/java/gregtech/api/multitileentity/MultiTileEntityBlockInternal.java @@ -74,7 +74,7 @@ public class MultiTileEntityBlockInternal extends Block implements IRenderedBloc // TileEntity should not refresh yet! -Greg ((IMultiTileEntity) aMTEContainer.mTileEntity).setShouldRefresh(false); // Fake-Set the TileEntity first, bypassing a lot of checks. -Greg - setTileEntity(aWorld, aX, aY, aZ, (TileEntity) aMTEContainer.mTileEntity, false); + setTileEntity(aWorld, aX, aY, aZ, aMTEContainer.mTileEntity, false); // Now set the Block with the REAL MetaData. -Greg setTileEntity(aWorld, aX, aY, aZ, aMTEContainer.mBlock, aMTEContainer.mBlockMetaData, 0, false); // When the TileEntity is set now it SHOULD refresh! -Greg @@ -85,7 +85,7 @@ public class MultiTileEntityBlockInternal extends Block implements IRenderedBloc return false; } // And finally properly set the TileEntity for real! -Greg - setTileEntity(aWorld, aX, aY, aZ, (TileEntity) aMTEContainer.mTileEntity, aCauseBlockUpdates); + setTileEntity(aWorld, aX, aY, aZ, aMTEContainer.mTileEntity, aCauseBlockUpdates); // Yep, all this just to set one Block and its TileEntity properly... -Greg try { diff --git a/src/main/java/gregtech/api/multitileentity/MultiTileEntityItemInternal.java b/src/main/java/gregtech/api/multitileentity/MultiTileEntityItemInternal.java index 23ad00dabd..1f3c2dd5ca 100644 --- a/src/main/java/gregtech/api/multitileentity/MultiTileEntityItemInternal.java +++ b/src/main/java/gregtech/api/multitileentity/MultiTileEntityItemInternal.java @@ -49,7 +49,7 @@ public class MultiTileEntityItemInternal extends ItemBlock implements IFluidCont @Override @SuppressWarnings("unchecked") - public void addInformation(ItemStack aStack, EntityPlayer aPlayer, List aList, boolean aF3_H) { + public void addInformation(ItemStack aStack, EntityPlayer aPlayer, List<String> aList, boolean aF3_H) { final MultiTileEntityContainer tTileEntityContainer = mBlock.mMultiTileEntityRegistry.getNewTileEntityContainer( aStack); if (tTileEntityContainer == null) { @@ -71,7 +71,7 @@ public class MultiTileEntityItemInternal extends ItemBlock implements IFluidCont @Override @SideOnly(Side.CLIENT) @SuppressWarnings("unchecked") - public void getSubItems(Item aItem, CreativeTabs aTab, List aList) { + public void getSubItems(Item aItem, CreativeTabs aTab, List<ItemStack> aList) { for (MultiTileEntityClassContainer tClass : mBlock.mMultiTileEntityRegistry.mRegistrations) { if (!tClass.mHidden) { if (((IMultiTileEntity) tClass.mCanonicalTileEntity).getSubItems( diff --git a/src/main/java/gregtech/api/multitileentity/MultiTileEntityRegistry.java b/src/main/java/gregtech/api/multitileentity/MultiTileEntityRegistry.java index 56414dfb4e..1aeed1b3de 100644 --- a/src/main/java/gregtech/api/multitileentity/MultiTileEntityRegistry.java +++ b/src/main/java/gregtech/api/multitileentity/MultiTileEntityRegistry.java @@ -219,7 +219,7 @@ public class MultiTileEntityRegistry { public TileEntity getNewTileEntity(int aID) { final MultiTileEntityContainer tContainer = getNewTileEntityContainer(null, 0, 0, 0, aID, null); - return tContainer == null ? null : (TileEntity) tContainer.mTileEntity; + return tContainer == null ? null : tContainer.mTileEntity; } public MultiTileEntityContainer getNewTileEntityContainer(World aWorld, int aX, int aY, int aZ, int aID, diff --git a/src/main/java/gregtech/api/multitileentity/machine/MultiTileBasicMachine.java b/src/main/java/gregtech/api/multitileentity/machine/MultiTileBasicMachine.java index 8d96ff58f5..740496a8b6 100644 --- a/src/main/java/gregtech/api/multitileentity/machine/MultiTileBasicMachine.java +++ b/src/main/java/gregtech/api/multitileentity/machine/MultiTileBasicMachine.java @@ -451,7 +451,7 @@ public abstract class MultiTileBasicMachine extends TickableMultiTileEntity impl /** * Runs only on server side - * + * * @param tick The current tick of the machine */ protected void runMachine(long tick) { @@ -483,7 +483,7 @@ public abstract class MultiTileBasicMachine extends TickableMultiTileEntity impl /** * Runs only on server side - * + * * @param tick The current tick of the machine */ protected void runningTick(long tick) { @@ -569,13 +569,17 @@ public abstract class MultiTileBasicMachine extends TickableMultiTileEntity impl public void doSound(byte aIndex, double aX, double aY, double aZ) { switch (aIndex) { - case PROCESS_START_SOUND_INDEX: + case PROCESS_START_SOUND_INDEX -> { if (getProcessStartSound() != null) GT_Utility.doSoundAtClient(getProcessStartSound(), getTimeBetweenProcessSounds(), 1.0F, aX, aY, aZ); - break; - case INTERRUPT_SOUND_INDEX: - GT_Utility.doSoundAtClient(SoundResource.IC2_MACHINES_INTERRUPT_ONE, 100, 1.0F, aX, aY, aZ); - break; + } + case INTERRUPT_SOUND_INDEX -> GT_Utility.doSoundAtClient( + SoundResource.IC2_MACHINES_INTERRUPT_ONE, + 100, + 1.0F, + aX, + aY, + aZ); } } @@ -854,7 +858,7 @@ public abstract class MultiTileBasicMachine extends TickableMultiTileEntity impl this.soundEventValue = soundEventValue; if (isClientSide()) { switch (soundEventValue) { - case PROCESS_START_SOUND_INDEX: + case PROCESS_START_SOUND_INDEX -> { if (getProcessStartSound() != null) GT_Utility.doSoundAtClient( getProcessStartSound(), getTimeBetweenProcessSounds(), @@ -862,16 +866,14 @@ public abstract class MultiTileBasicMachine extends TickableMultiTileEntity impl getXCoord(), getYCoord(), getZCoord()); - break; - case INTERRUPT_SOUND_INDEX: - GT_Utility.doSoundAtClient( - SoundResource.IC2_MACHINES_INTERRUPT_ONE, - 100, - 1.0F, - getXCoord(), - getYCoord(), - getZCoord()); - break; + } + case INTERRUPT_SOUND_INDEX -> GT_Utility.doSoundAtClient( + SoundResource.IC2_MACHINES_INTERRUPT_ONE, + 100, + 1.0F, + getXCoord(), + getYCoord(), + getZCoord()); } } } diff --git a/src/main/java/gregtech/api/multitileentity/multiblock/base/MultiBlockController.java b/src/main/java/gregtech/api/multitileentity/multiblock/base/MultiBlockController.java index 72e766d54c..b76dc1b4bc 100644 --- a/src/main/java/gregtech/api/multitileentity/multiblock/base/MultiBlockController.java +++ b/src/main/java/gregtech/api/multitileentity/multiblock/base/MultiBlockController.java @@ -656,9 +656,8 @@ public abstract class MultiBlockController<T extends MultiBlockController<T>> ex @Override public boolean check(S t, World world, int x, int y, int z) { final TileEntity tileEntity = world.getTileEntity(x, y, z); - if (!(tileEntity instanceof MultiBlockPart)) return false; + if (!(tileEntity instanceof MultiBlockPart part)) return false; - final MultiBlockPart part = (MultiBlockPart) tileEntity; if (registryID != part.getMultiTileEntityRegistryID() || meta != part.getMultiTileEntityID()) return false; @@ -974,7 +973,7 @@ public abstract class MultiBlockController<T extends MultiBlockController<T>> ex if (tInv == null) return false; final int tSlot = tInv.getRight(); - final IItemHandlerModifiable inv = tInv.getLeft();; + final IItemHandlerModifiable inv = tInv.getLeft(); return inv.getStackInSlot(tSlot) == null || GT_Utility.areStacksEqual(aStack, inv.getStackInSlot(tSlot)); // && // allowPutStack(getBaseMetaTileEntity(), @@ -1441,7 +1440,7 @@ public abstract class MultiBlockController<T extends MultiBlockController<T>> ex buttons.setSize(16, 167) .setPos(7, 86); buttons.addChild(createPowerSwitchButton()) - .addChild(new FakeSyncWidget.BooleanSyncer(() -> isAllowedToWork(), val -> { + .addChild(new FakeSyncWidget.BooleanSyncer(this::isAllowedToWork, val -> { if (val) enableWorking(); else disableWorking(); })) diff --git a/src/main/java/gregtech/api/multitileentity/multiblock/base/MultiBlockPart.java b/src/main/java/gregtech/api/multitileentity/multiblock/base/MultiBlockPart.java index 0ea8cd77c8..953fc42f56 100644 --- a/src/main/java/gregtech/api/multitileentity/multiblock/base/MultiBlockPart.java +++ b/src/main/java/gregtech/api/multitileentity/multiblock/base/MultiBlockPart.java @@ -674,18 +674,16 @@ public abstract class MultiBlockPart extends NonTickableMultiTileEntity DropDownWidget dropDown = new DropDownWidget(); dropDown.addDropDownItemsSimple( controller.getInventoryNames(this), - (buttonWidget, index, label, setSelected) -> { - buttonWidget.setOnClick((clickData, widget) -> { - if (getNameOfInventoryFromIndex(controller, index).equals("all")) { - mLockedInventory = GT_Values.E; - mLockedInventoryIndex = 0; - } else { - mLockedInventory = getNameOfInventoryFromIndex(controller, index); - mLockedInventoryIndex = index; - } - setSelected.run(); - }); - }, + (buttonWidget, index, label, setSelected) -> buttonWidget.setOnClick((clickData, widget) -> { + if (getNameOfInventoryFromIndex(controller, index).equals("all")) { + mLockedInventory = GT_Values.E; + mLockedInventoryIndex = 0; + } else { + mLockedInventory = getNameOfInventoryFromIndex(controller, index); + mLockedInventoryIndex = index; + } + setSelected.run(); + }), true); builder.widget( dropDown.setSelected(mLockedInventoryIndex) |