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:
parent
20c3564e8f
commit
b4bd9d7acf
@ -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;
|
||||
|
@ -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);
|
||||
}
|
||||
}
|
||||
|
@ -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);
|
||||
|
@ -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();
|
||||
}
|
||||
|
@ -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);
|
||||
|
@ -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) {
|
||||
|
@ -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;
|
||||
};
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -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());
|
||||
}
|
||||
});
|
||||
|
@ -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) {
|
||||
|
Loading…
Reference in New Issue
Block a user