1
mirror of https://github.com/StarWishsama/Slimefun4.git synced 2024-09-20 03:35:51 +00:00

Java16 Sonar Changes

This commit is contained in:
Sefiraat 2022-07-02 20:51:14 +01:00
parent 20c3564e8f
commit b4bd9d7acf
9 changed files with 64 additions and 97 deletions

View File

@ -143,9 +143,8 @@ final class ProfiledBlock {
@Override
public boolean equals(Object obj) {
if (obj instanceof ProfiledBlock) {
ProfiledBlock block = (ProfiledBlock) obj;
return position == block.position && Objects.equals(world, block.world);
if (obj instanceof ProfiledBlock profiledBlock) {
return position == profiledBlock.position && Objects.equals(world, profiledBlock.world);
}
return false;

View File

@ -54,7 +54,7 @@ public class CheatSheetSlimefunGuide extends SurvivalSlimefunGuide {
List<ItemGroup> groups = new LinkedList<>();
for (ItemGroup group : Slimefun.getRegistry().getAllItemGroups()) {
if (!(group instanceof FlexItemGroup) || ((FlexItemGroup) group).isVisible(p, profile, getMode())) {
if (!(group instanceof FlexItemGroup flexItemGroup) || flexItemGroup.isVisible(p, profile, getMode())) {
groups.add(group);
}
}

View File

@ -119,8 +119,8 @@ public class SurvivalSlimefunGuide implements SlimefunGuideImplementation {
for (ItemGroup group : Slimefun.getRegistry().getAllItemGroups()) {
try {
if (group instanceof FlexItemGroup) {
if (((FlexItemGroup) group).isVisible(p, profile, getMode())) {
if (group instanceof FlexItemGroup flexItemGroup) {
if (flexItemGroup.isVisible(p, profile, getMode())) {
groups.add(group);
}
} else if (!group.isHidden(p)) {
@ -233,8 +233,8 @@ public class SurvivalSlimefunGuide implements SlimefunGuideImplementation {
return;
}
if (itemGroup instanceof FlexItemGroup) {
((FlexItemGroup) itemGroup).open(p, profile, getMode());
if (itemGroup instanceof FlexItemGroup flexItemGroup) {
flexItemGroup.open(p, profile, getMode());
return;
}
@ -493,19 +493,19 @@ public class SurvivalSlimefunGuide implements SlimefunGuideImplementation {
private <T extends Recipe> void showRecipeChoices(T recipe, ItemStack[] recipeItems, AsyncRecipeChoiceTask task) {
RecipeChoice[] choices = Slimefun.getMinecraftRecipeService().getRecipeShape(recipe);
if (choices.length == 1 && choices[0] instanceof MaterialChoice) {
recipeItems[4] = new ItemStack(((MaterialChoice) choices[0]).getChoices().get(0));
if (choices.length == 1 && choices[0] instanceof MaterialChoice materialChoice) {
recipeItems[4] = new ItemStack(materialChoice.getChoices().get(0));
if (((MaterialChoice) choices[0]).getChoices().size() > 1) {
task.add(recipeSlots[4], (MaterialChoice) choices[0]);
if (materialChoice.getChoices().size() > 1) {
task.add(recipeSlots[4], materialChoice);
}
} else {
for (int i = 0; i < choices.length; i++) {
if (choices[i] instanceof MaterialChoice) {
recipeItems[i] = new ItemStack(((MaterialChoice) choices[i]).getChoices().get(0));
if (choices[i] instanceof MaterialChoice materialChoice) {
recipeItems[i] = new ItemStack(materialChoice.getChoices().get(0));
if (((MaterialChoice) choices[i]).getChoices().size() > 1) {
task.add(recipeSlots[i], (MaterialChoice) choices[i]);
if (materialChoice.getChoices().size() > 1) {
task.add(recipeSlots[i], materialChoice);
}
}
}
@ -545,8 +545,8 @@ public class SurvivalSlimefunGuide implements SlimefunGuideImplementation {
displayItem(menu, profile, p, item, result, recipeType, recipe, task);
if (item instanceof RecipeDisplayItem) {
displayRecipes(p, profile, menu, (RecipeDisplayItem) item, 0);
if (item instanceof RecipeDisplayItem recipeDisplayItem) {
displayRecipes(p, profile, menu, recipeDisplayItem, 0);
}
menu.open(p);

View File

@ -78,8 +78,8 @@ public class VanillaInventoryDropHandler<T extends BlockState & InventoryHolder>
@Nonnull
protected Inventory getInventory(@Nonnull T inventoryHolder) {
if (inventoryHolder instanceof Chest) {
return ((Chest) inventoryHolder).getBlockInventory();
if (inventoryHolder instanceof Chest chest) {
return chest.getBlockInventory();
} else {
return inventoryHolder.getInventory();
}

View File

@ -86,8 +86,8 @@ public class AncientPedestal extends SimpleSlimefunItem<BlockDispenseHandler> {
Location l = pedestal.getLocation().add(0.5, 1.2, 0.5);
for (Entity n : l.getWorld().getNearbyEntities(l, 0.5, 0.5, 0.5, this::testItem)) {
if (n instanceof Item) {
return Optional.of((Item) n);
if (n instanceof Item item) {
return Optional.of(item);
}
}
@ -95,8 +95,7 @@ public class AncientPedestal extends SimpleSlimefunItem<BlockDispenseHandler> {
}
private boolean testItem(@Nullable Entity n) {
if (n instanceof Item && n.isValid()) {
Item item = (Item) n;
if (n instanceof Item item && n.isValid()) {
ItemMeta meta = item.getItemStack().getItemMeta();
return meta.hasDisplayName() && meta.getDisplayName().startsWith(ITEM_PREFIX);

View File

@ -34,24 +34,15 @@ public class ButcherAndroid extends ProgrammableAndroid {
double damage = getTier() >= 3 ? 20D : 4D * getTier();
double radius = 4.0 + getTier();
for (Entity n : b.getWorld().getNearbyEntities(b.getLocation(), radius, radius, radius, n -> n instanceof LivingEntity && !(n instanceof ArmorStand) && !(n instanceof Player) && n.isValid() && predicate.test((LivingEntity) n))) {
for (Entity n : b.getWorld().getNearbyEntities(b.getLocation(), radius, radius, radius, n -> n instanceof LivingEntity livingEntity && !(n instanceof ArmorStand) && !(n instanceof Player) && n.isValid() && predicate.test(livingEntity))) {
boolean attack = false;
switch (face) {
case NORTH:
attack = n.getLocation().getZ() < b.getZ();
break;
case EAST:
attack = n.getLocation().getX() > b.getX();
break;
case SOUTH:
attack = n.getLocation().getZ() > b.getZ();
break;
case WEST:
attack = n.getLocation().getX() < b.getX();
break;
default:
break;
case NORTH -> attack = n.getLocation().getZ() < b.getZ();
case EAST -> attack = n.getLocation().getX() > b.getX();
case SOUTH -> attack = n.getLocation().getZ() > b.getZ();
case WEST -> attack = n.getLocation().getX() < b.getX();
default -> {}
}
if (attack) {

View File

@ -42,7 +42,7 @@ public class FarmerAndroid extends ProgrammableAndroid {
return;
}
if (data instanceof Ageable && ((Ageable) data).getAge() >= ((Ageable) data).getMaximumAge()) {
if (data instanceof Ageable ageable && ageable.getAge() >= ageable.getMaximumAge()) {
drop = getDropFromCrop(blockType);
}
@ -57,8 +57,8 @@ public class FarmerAndroid extends ProgrammableAndroid {
if (drop != null && menu.pushItem(drop, getOutputSlots()) == null) {
block.getWorld().playEffect(block.getLocation(), Effect.STEP_SOUND, blockType);
if (data instanceof Ageable) {
((Ageable) data).setAge(0);
if (data instanceof Ageable ageable) {
ageable.setAge(0);
block.setBlockData(data);
}
}
@ -68,24 +68,16 @@ public class FarmerAndroid extends ProgrammableAndroid {
private ItemStack getDropFromCrop(Material crop) {
Random random = ThreadLocalRandom.current();
switch (crop) {
case WHEAT:
return new ItemStack(Material.WHEAT, random.nextInt(2) + 1);
case POTATOES:
return new ItemStack(Material.POTATO, random.nextInt(3) + 1);
case CARROTS:
return new ItemStack(Material.CARROT, random.nextInt(3) + 1);
case BEETROOTS:
return new ItemStack(Material.BEETROOT, random.nextInt(3) + 1);
case COCOA:
return new ItemStack(Material.COCOA_BEANS, random.nextInt(3) + 1);
case NETHER_WART:
return new ItemStack(Material.NETHER_WART, random.nextInt(3) + 1);
case SWEET_BERRY_BUSH:
return new ItemStack(Material.SWEET_BERRIES, random.nextInt(3) + 1);
default:
return null;
}
return switch (crop) {
case WHEAT -> new ItemStack(Material.WHEAT, random.nextInt(2) + 1);
case POTATOES -> new ItemStack(Material.POTATO, random.nextInt(3) + 1);
case CARROTS -> new ItemStack(Material.CARROT, random.nextInt(3) + 1);
case BEETROOTS -> new ItemStack(Material.BEETROOT, random.nextInt(3) + 1);
case COCOA -> new ItemStack(Material.COCOA_BEANS, random.nextInt(3) + 1);
case NETHER_WART -> new ItemStack(Material.NETHER_WART, random.nextInt(3) + 1);
case SWEET_BERRY_BUSH -> new ItemStack(Material.SWEET_BERRIES, random.nextInt(3) + 1);
default -> null;
};
}
}

View File

@ -156,8 +156,8 @@ public class ProgrammableAndroid extends SlimefunItem implements InventoryBlock,
BlockStorage.addBlockInfo(b, "paused", "true");
BlockData blockData = Material.PLAYER_HEAD.createBlockData(data -> {
if (data instanceof Rotatable) {
((Rotatable) data).setRotation(p.getFacing());
if (data instanceof Rotatable rotatable) {
rotatable.setRotation(p.getFacing());
}
});
@ -207,16 +207,12 @@ public class ProgrammableAndroid extends SlimefunItem implements InventoryBlock,
* @return The required type of fuel
*/
public AndroidFuelSource getFuelSource() {
switch (getTier()) {
case 1:
return AndroidFuelSource.SOLID;
case 2:
return AndroidFuelSource.LIQUID;
case 3:
return AndroidFuelSource.NUCLEAR;
default:
throw new IllegalStateException("Cannot convert the following Android tier to a fuel type: " + getTier());
}
return switch (getTier()) {
case 1 -> AndroidFuelSource.SOLID;
case 2 -> AndroidFuelSource.LIQUID;
case 3 -> AndroidFuelSource.NUCLEAR;
default -> throw new IllegalStateException("Cannot convert the following Android tier to a fuel type: " + getTier());
};
}
@Override
@ -602,7 +598,7 @@ public class ProgrammableAndroid extends SlimefunItem implements InventoryBlock,
private void registerDefaultFuelTypes() {
switch (getFuelSource()) {
case SOLID:
case SOLID -> {
registerFuelType(new MachineFuel(80, new ItemStack(Material.COAL_BLOCK)));
registerFuelType(new MachineFuel(45, new ItemStack(Material.BLAZE_ROD)));
registerFuelType(new MachineFuel(70, new ItemStack(Material.DRIED_KELP_BLOCK)));
@ -620,20 +616,18 @@ public class ProgrammableAndroid extends SlimefunItem implements InventoryBlock,
for (Material mat : Tag.PLANKS.getValues()) {
registerFuelType(new MachineFuel(1, new ItemStack(mat)));
}
break;
case LIQUID:
}
case LIQUID -> {
registerFuelType(new MachineFuel(100, new ItemStack(Material.LAVA_BUCKET)));
registerFuelType(new MachineFuel(200, SlimefunItems.OIL_BUCKET));
registerFuelType(new MachineFuel(500, SlimefunItems.FUEL_BUCKET));
break;
case NUCLEAR:
}
case NUCLEAR -> {
registerFuelType(new MachineFuel(2500, SlimefunItems.URANIUM));
registerFuelType(new MachineFuel(1200, SlimefunItems.NEPTUNIUM));
registerFuelType(new MachineFuel(3000, SlimefunItems.BOOSTED_URANIUM));
break;
default:
throw new IllegalStateException("Unhandled Fuel Source: " + getFuelSource());
}
default -> throw new IllegalStateException("Unhandled Fuel Source: " + getFuelSource());
}
}
@ -760,8 +754,7 @@ public class ProgrammableAndroid extends SlimefunItem implements InventoryBlock,
BlockFace rotation = POSSIBLE_ROTATIONS.get(index);
BlockData blockData = Material.PLAYER_HEAD.createBlockData(data -> {
if (data instanceof Rotatable) {
Rotatable rotatable = ((Rotatable) data);
if (data instanceof Rotatable rotatable) {
rotatable.setRotation(rotation.getOppositeFace());
}
});
@ -774,14 +767,12 @@ public class ProgrammableAndroid extends SlimefunItem implements InventoryBlock,
if (facedBlock.getType() == Material.DISPENSER && BlockStorage.check(facedBlock, "ANDROID_INTERFACE_ITEMS")) {
BlockState state = PaperLib.getBlockState(facedBlock, false).getState();
if (state instanceof Dispenser) {
Dispenser d = (Dispenser) state;
if (state instanceof Dispenser dispenser) {
for (int slot : getOutputSlots()) {
ItemStack stack = menu.getItemInSlot(slot);
if (stack != null) {
Optional<ItemStack> optional = d.getInventory().addItem(stack).values().stream().findFirst();
Optional<ItemStack> optional = dispenser.getInventory().addItem(stack).values().stream().findFirst();
if (optional.isPresent()) {
menu.replaceExistingItem(slot, optional.get());
@ -798,14 +789,12 @@ public class ProgrammableAndroid extends SlimefunItem implements InventoryBlock,
if (facedBlock.getType() == Material.DISPENSER && BlockStorage.check(facedBlock, "ANDROID_INTERFACE_FUEL")) {
BlockState state = PaperLib.getBlockState(facedBlock, false).getState();
if (state instanceof Dispenser) {
Dispenser d = (Dispenser) state;
if (state instanceof Dispenser dispenser) {
for (int slot = 0; slot < 9; slot++) {
ItemStack item = d.getInventory().getItem(slot);
ItemStack item = dispenser.getInventory().getItem(slot);
if (item != null) {
insertFuel(menu, d.getInventory(), slot, menu.getItemInSlot(43), item);
insertFuel(menu, dispenser.getInventory(), slot, menu.getItemInSlot(43), item);
}
}
}
@ -897,8 +886,7 @@ public class ProgrammableAndroid extends SlimefunItem implements InventoryBlock,
}
BlockData blockData = Material.PLAYER_HEAD.createBlockData(data -> {
if (data instanceof Rotatable) {
Rotatable rotatable = ((Rotatable) data);
if (data instanceof Rotatable rotatable) {
rotatable.setRotation(face.getOppositeFace());
}
});

View File

@ -57,7 +57,7 @@ public class AutoCrafterListener implements Listener {
SlimefunItem block = slimefunBlock.get();
if (block instanceof AbstractAutoCrafter) {
if (block instanceof AbstractAutoCrafter crafter) {
Optional<SlimefunItem> slimefunItem = e.getSlimefunItem();
if (!e.getPlayer().isSneaking() && slimefunItem.isPresent() && slimefunItem.get() instanceof Multimeter) {
@ -80,8 +80,6 @@ public class AutoCrafterListener implements Listener {
}
// Fixes 2896 - Forward the interaction before items get handled.
AbstractAutoCrafter crafter = (AbstractAutoCrafter) block;
try {
crafter.onRightClick(clickedBlock.get(), e.getPlayer());
} catch (Exception | LinkageError x) {