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

Remove more version specific stuff

This commit is contained in:
ybw0014 2022-08-07 17:46:28 -04:00
parent eb5d4ca3f7
commit 435f09b6b1
No known key found for this signature in database
GPG Key ID: 04C1F3339F03F9EE
16 changed files with 75 additions and 149 deletions

View File

@ -163,10 +163,8 @@ public class RecipeType implements Keyed {
@ParametersAreNonnullByDefault @ParametersAreNonnullByDefault
private static void registerBarterDrop(ItemStack[] recipe, ItemStack output) { private static void registerBarterDrop(ItemStack[] recipe, ItemStack output) {
if (Slimefun.getMinecraftVersion().isAtLeast(MinecraftVersion.MINECRAFT_1_16)) {
Slimefun.getRegistry().getBarteringDrops().add(output); Slimefun.getRegistry().getBarteringDrops().add(output);
} }
}
@ParametersAreNonnullByDefault @ParametersAreNonnullByDefault
private static void registerMobDrop(ItemStack[] recipe, ItemStack output) { private static void registerMobDrop(ItemStack[] recipe, ItemStack output) {

View File

@ -43,12 +43,8 @@ public class MultiBlock {
SUPPORTED_TAGS.add(Tag.WOODEN_TRAPDOORS); SUPPORTED_TAGS.add(Tag.WOODEN_TRAPDOORS);
SUPPORTED_TAGS.add(Tag.WOODEN_SLABS); SUPPORTED_TAGS.add(Tag.WOODEN_SLABS);
SUPPORTED_TAGS.add(Tag.WOODEN_FENCES); SUPPORTED_TAGS.add(Tag.WOODEN_FENCES);
// Add Soul Fire support on 1.16
if (Slimefun.getMinecraftVersion().isAtLeast(MinecraftVersion.MINECRAFT_1_16)) {
SUPPORTED_TAGS.add(Tag.FIRE); SUPPORTED_TAGS.add(Tag.FIRE);
} }
}
@Nonnull @Nonnull
public static Set<Tag<Material>> getSupportedTags() { public static Set<Tag<Material>> getSupportedTags() {

View File

@ -92,70 +92,63 @@ public class WoodcutterAndroid extends ProgrammableAndroid {
Predicate<Material> soilRequirement = null; Predicate<Material> soilRequirement = null;
switch (logType) { switch (logType) {
case OAK_LOG: case OAK_LOG,
case OAK_WOOD: OAK_WOOD,
case STRIPPED_OAK_LOG: STRIPPED_OAK_LOG,
case STRIPPED_OAK_WOOD: STRIPPED_OAK_WOOD -> {
saplingType = Material.OAK_SAPLING; saplingType = Material.OAK_SAPLING;
soilRequirement = SlimefunTag.DIRT_VARIANTS::isTagged; soilRequirement = SlimefunTag.DIRT_VARIANTS::isTagged;
break; }
case BIRCH_LOG: case BIRCH_LOG,
case BIRCH_WOOD: BIRCH_WOOD,
case STRIPPED_BIRCH_LOG: STRIPPED_BIRCH_LOG,
case STRIPPED_BIRCH_WOOD: STRIPPED_BIRCH_WOOD -> {
saplingType = Material.BIRCH_SAPLING; saplingType = Material.BIRCH_SAPLING;
soilRequirement = SlimefunTag.DIRT_VARIANTS::isTagged; soilRequirement = SlimefunTag.DIRT_VARIANTS::isTagged;
break; }
case JUNGLE_LOG: case JUNGLE_LOG,
case JUNGLE_WOOD: JUNGLE_WOOD,
case STRIPPED_JUNGLE_LOG: STRIPPED_JUNGLE_LOG,
case STRIPPED_JUNGLE_WOOD: STRIPPED_JUNGLE_WOOD -> {
saplingType = Material.JUNGLE_SAPLING; saplingType = Material.JUNGLE_SAPLING;
soilRequirement = SlimefunTag.DIRT_VARIANTS::isTagged; soilRequirement = SlimefunTag.DIRT_VARIANTS::isTagged;
break; }
case SPRUCE_LOG: case SPRUCE_LOG,
case SPRUCE_WOOD: SPRUCE_WOOD,
case STRIPPED_SPRUCE_LOG: STRIPPED_SPRUCE_LOG,
case STRIPPED_SPRUCE_WOOD: STRIPPED_SPRUCE_WOOD -> {
saplingType = Material.SPRUCE_SAPLING; saplingType = Material.SPRUCE_SAPLING;
soilRequirement = SlimefunTag.DIRT_VARIANTS::isTagged; soilRequirement = SlimefunTag.DIRT_VARIANTS::isTagged;
break; }
case ACACIA_LOG: case ACACIA_LOG,
case ACACIA_WOOD: ACACIA_WOOD,
case STRIPPED_ACACIA_LOG: STRIPPED_ACACIA_LOG,
case STRIPPED_ACACIA_WOOD: STRIPPED_ACACIA_WOOD -> {
saplingType = Material.ACACIA_SAPLING; saplingType = Material.ACACIA_SAPLING;
soilRequirement = SlimefunTag.DIRT_VARIANTS::isTagged; soilRequirement = SlimefunTag.DIRT_VARIANTS::isTagged;
break; }
case DARK_OAK_LOG: case DARK_OAK_LOG,
case DARK_OAK_WOOD: DARK_OAK_WOOD,
case STRIPPED_DARK_OAK_LOG: STRIPPED_DARK_OAK_LOG,
case STRIPPED_DARK_OAK_WOOD: STRIPPED_DARK_OAK_WOOD -> {
saplingType = Material.DARK_OAK_SAPLING; saplingType = Material.DARK_OAK_SAPLING;
soilRequirement = SlimefunTag.DIRT_VARIANTS::isTagged; soilRequirement = SlimefunTag.DIRT_VARIANTS::isTagged;
break;
default:
break;
} }
case CRIMSON_STEM,
if (Slimefun.getMinecraftVersion().isAtLeast(MinecraftVersion.MINECRAFT_1_16)) { CRIMSON_HYPHAE,
switch (logType) { STRIPPED_CRIMSON_STEM,
case CRIMSON_STEM: STRIPPED_CRIMSON_HYPHAE -> {
case CRIMSON_HYPHAE:
case STRIPPED_CRIMSON_STEM:
case STRIPPED_CRIMSON_HYPHAE:
saplingType = Material.CRIMSON_FUNGUS; saplingType = Material.CRIMSON_FUNGUS;
soilRequirement = SlimefunTag.FUNGUS_SOIL::isTagged; soilRequirement = SlimefunTag.FUNGUS_SOIL::isTagged;
break; }
case WARPED_STEM: case WARPED_STEM,
case WARPED_HYPHAE: WARPED_HYPHAE,
case STRIPPED_WARPED_STEM: STRIPPED_WARPED_STEM,
case STRIPPED_WARPED_HYPHAE: STRIPPED_WARPED_HYPHAE -> {
saplingType = Material.WARPED_FUNGUS; saplingType = Material.WARPED_FUNGUS;
soilRequirement = SlimefunTag.FUNGUS_SOIL::isTagged; soilRequirement = SlimefunTag.FUNGUS_SOIL::isTagged;
break; }
default: default -> {
break;
} }
} }

View File

@ -90,13 +90,11 @@ public class Crucible extends SimpleSlimefunItem<BlockUseHandler> implements Rec
items.add(new ItemStack(Material.LAVA_BUCKET)); items.add(new ItemStack(Material.LAVA_BUCKET));
} }
if (Slimefun.getMinecraftVersion().isAtLeast(MinecraftVersion.MINECRAFT_1_16)) {
items.add(new ItemStack(Material.BLACKSTONE, 8)); items.add(new ItemStack(Material.BLACKSTONE, 8));
items.add(new ItemStack(Material.LAVA_BUCKET)); items.add(new ItemStack(Material.LAVA_BUCKET));
items.add(new ItemStack(Material.BASALT, 12)); items.add(new ItemStack(Material.BASALT, 12));
items.add(new ItemStack(Material.LAVA_BUCKET)); items.add(new ItemStack(Material.LAVA_BUCKET));
}
if (Slimefun.getMinecraftVersion().isAtLeast(MinecraftVersion.MINECRAFT_1_17)) { if (Slimefun.getMinecraftVersion().isAtLeast(MinecraftVersion.MINECRAFT_1_17)) {
items.add(new ItemStack(Material.COBBLED_DEEPSLATE, 12)); items.add(new ItemStack(Material.COBBLED_DEEPSLATE, 12));

View File

@ -75,9 +75,7 @@ public class ElectricPress extends AContainer implements RecipeDisplayItem {
addRecipe(8, new ItemStack(Material.EMERALD, 9), new ItemStack(Material.EMERALD_BLOCK)); addRecipe(8, new ItemStack(Material.EMERALD, 9), new ItemStack(Material.EMERALD_BLOCK));
addRecipe(8, new ItemStack(Material.DIAMOND, 9), new ItemStack(Material.DIAMOND_BLOCK)); addRecipe(8, new ItemStack(Material.DIAMOND, 9), new ItemStack(Material.DIAMOND_BLOCK));
if (Slimefun.getMinecraftVersion().isAtLeast(MinecraftVersion.MINECRAFT_1_16)) {
addRecipe(16, new ItemStack(Material.NETHERITE_INGOT, 9), new ItemStack(Material.NETHERITE_BLOCK)); addRecipe(16, new ItemStack(Material.NETHERITE_INGOT, 9), new ItemStack(Material.NETHERITE_BLOCK));
}
if (Slimefun.getMinecraftVersion().isAtLeast(MinecraftVersion.MINECRAFT_1_17)) { if (Slimefun.getMinecraftVersion().isAtLeast(MinecraftVersion.MINECRAFT_1_17)) {
addRecipe(4, new ItemStack(Material.AMETHYST_SHARD, 4), new ItemStack(Material.AMETHYST_BLOCK)); addRecipe(4, new ItemStack(Material.AMETHYST_SHARD, 4), new ItemStack(Material.AMETHYST_BLOCK));

View File

@ -35,10 +35,8 @@ public class ElectrifiedCrucible extends AContainer {
registerRecipe(10, new ItemStack[] { new ItemStack(Material.BUCKET), new ItemStack(leaves, 16) }, new ItemStack[] { new ItemStack(Material.WATER_BUCKET) }); registerRecipe(10, new ItemStack[] { new ItemStack(Material.BUCKET), new ItemStack(leaves, 16) }, new ItemStack[] { new ItemStack(Material.WATER_BUCKET) });
} }
if (Slimefun.getMinecraftVersion().isAtLeast(MinecraftVersion.MINECRAFT_1_16)) {
registerRecipe(10, new ItemStack[] { new ItemStack(Material.BUCKET), new ItemStack(Material.BLACKSTONE, 8) }, new ItemStack[] { new ItemStack(Material.LAVA_BUCKET) }); registerRecipe(10, new ItemStack[] { new ItemStack(Material.BUCKET), new ItemStack(Material.BLACKSTONE, 8) }, new ItemStack[] { new ItemStack(Material.LAVA_BUCKET) });
registerRecipe(10, new ItemStack[] { new ItemStack(Material.BUCKET), new ItemStack(Material.BASALT, 12) }, new ItemStack[] { new ItemStack(Material.LAVA_BUCKET) }); registerRecipe(10, new ItemStack[] { new ItemStack(Material.BUCKET), new ItemStack(Material.BASALT, 12) }, new ItemStack[] { new ItemStack(Material.LAVA_BUCKET) });
}
if (Slimefun.getMinecraftVersion().isAtLeast(MinecraftVersion.MINECRAFT_1_17)) { if (Slimefun.getMinecraftVersion().isAtLeast(MinecraftVersion.MINECRAFT_1_17)) {
registerRecipe(10, new ItemStack[] { new ItemStack(Material.BUCKET), new ItemStack(Material.COBBLED_DEEPSLATE, 12) }, new ItemStack[] { new ItemStack(Material.LAVA_BUCKET) }); registerRecipe(10, new ItemStack[] { new ItemStack(Material.BUCKET), new ItemStack(Material.COBBLED_DEEPSLATE, 12) }, new ItemStack[] { new ItemStack(Material.LAVA_BUCKET) });

View File

@ -64,7 +64,7 @@ public class MagicalZombiePills extends SimpleSlimefunItem<EntityInteractHandler
if (entity instanceof ZombieVillager zombieVillager) { if (entity instanceof ZombieVillager zombieVillager) {
useItem(p, item); useItem(p, item);
healZombieVillager(zombieVillager, p); healZombieVillager(zombieVillager, p);
} else if (Slimefun.getMinecraftVersion().isAtLeast(MinecraftVersion.MINECRAFT_1_16) && entity instanceof PigZombie pigZombie) { } else if (entity instanceof PigZombie pigZombie) {
useItem(p, item); useItem(p, item);
healZombifiedPiglin(pigZombie); healZombifiedPiglin(pigZombie);
} }

View File

@ -119,13 +119,11 @@ public class OreCrusher extends MultiBlockMachine {
// @formatter:on // @formatter:on
// Gold ore variants (1.16+) // Gold ore variants (1.16+)
if (Slimefun.getMinecraftVersion().isAtLeast(MinecraftVersion.MINECRAFT_1_16)) {
displayRecipes.add(new ItemStack(Material.NETHER_GOLD_ORE)); displayRecipes.add(new ItemStack(Material.NETHER_GOLD_ORE));
displayRecipes.add(doubleOres.getGoldNuggets()); displayRecipes.add(doubleOres.getGoldNuggets());
displayRecipes.add(new ItemStack(Material.GILDED_BLACKSTONE)); displayRecipes.add(new ItemStack(Material.GILDED_BLACKSTONE));
displayRecipes.add(doubleOres.getGoldNuggets()); displayRecipes.add(doubleOres.getGoldNuggets());
}
// Raw metal ores (1.17+) // Raw metal ores (1.17+)
if (Slimefun.getMinecraftVersion().isAtLeast(MinecraftVersion.MINECRAFT_1_17)) { if (Slimefun.getMinecraftVersion().isAtLeast(MinecraftVersion.MINECRAFT_1_17)) {

View File

@ -212,7 +212,7 @@ public class IndustrialMiner extends MultiBlockMachine {
public boolean canMine(@Nonnull Material type) { public boolean canMine(@Nonnull Material type) {
MinecraftVersion version = Slimefun.getMinecraftVersion(); MinecraftVersion version = Slimefun.getMinecraftVersion();
if (version.isAtLeast(MinecraftVersion.MINECRAFT_1_16) && type == Material.ANCIENT_DEBRIS) { if (type == Material.ANCIENT_DEBRIS) {
return canMineAncientDebris.getValue(); return canMineAncientDebris.getValue();
} else if (version.isAtLeast(MinecraftVersion.MINECRAFT_1_17) && SlimefunTag.DEEPSLATE_ORES.isTagged(type)) { } else if (version.isAtLeast(MinecraftVersion.MINECRAFT_1_17) && SlimefunTag.DEEPSLATE_ORES.isTagged(type)) {
return canMineDeepslateOres.getValue(); return canMineDeepslateOres.getValue();

View File

@ -26,12 +26,9 @@ interface OreDictionary {
if (version.isAtLeast(MinecraftVersion.MINECRAFT_1_17)) { if (version.isAtLeast(MinecraftVersion.MINECRAFT_1_17)) {
// MC 1.17 - 1.18 // MC 1.17 - 1.18
return new OreDictionary17(); return new OreDictionary17();
} else if (version.isAtLeast(MinecraftVersion.MINECRAFT_1_16)) { } else {
// MC 1.16 // MC 1.16
return new OreDictionary16(); return new OreDictionary16();
} else {
// MC 1.14 - 1.15
return new OreDictionary14();
} }
} }
} }

View File

@ -1,35 +0,0 @@
package io.github.thebusybiscuit.slimefun4.implementation.items.multiblocks.miner;
import java.util.Random;
import javax.annotation.Nonnull;
import javax.annotation.ParametersAreNonnullByDefault;
import org.bukkit.Material;
import org.bukkit.inventory.ItemStack;
/**
* Our {@link OreDictionary} implementation for MC 1.14 or higher.
*
* @author TheBusyBiscuit
*
*/
class OreDictionary14 implements OreDictionary {
@Override
@ParametersAreNonnullByDefault
public @Nonnull ItemStack getDrops(Material material, Random random) {
return switch (material) {
case COAL_ORE -> new ItemStack(Material.COAL);
case DIAMOND_ORE -> new ItemStack(Material.DIAMOND);
case EMERALD_ORE -> new ItemStack(Material.EMERALD);
case REDSTONE_ORE -> new ItemStack(Material.REDSTONE, 4 + random.nextInt(2));
case LAPIS_ORE -> new ItemStack(Material.LAPIS_LAZULI, 4 + random.nextInt(4));
case NETHER_QUARTZ_ORE -> new ItemStack(Material.QUARTZ);
case IRON_ORE -> new ItemStack(Material.IRON_ORE);
case GOLD_ORE -> new ItemStack(Material.GOLD_ORE);
default -> new ItemStack(material);
};
}
}

View File

@ -14,16 +14,23 @@ import org.bukkit.inventory.ItemStack;
* @author TheBusyBiscuit * @author TheBusyBiscuit
* *
*/ */
class OreDictionary16 extends OreDictionary14 { class OreDictionary16 implements OreDictionary {
@Override @Override
@ParametersAreNonnullByDefault @ParametersAreNonnullByDefault
public @Nonnull ItemStack getDrops(Material material, Random random) { public @Nonnull ItemStack getDrops(Material material, Random random) {
return switch (material) { return switch (material) {
// In 1.16, breaking nether gold ores should get gold nuggets case COAL_ORE -> new ItemStack(Material.COAL);
case DIAMOND_ORE -> new ItemStack(Material.DIAMOND);
case EMERALD_ORE -> new ItemStack(Material.EMERALD);
case REDSTONE_ORE -> new ItemStack(Material.REDSTONE, 4 + random.nextInt(2));
case LAPIS_ORE -> new ItemStack(Material.LAPIS_LAZULI, 4 + random.nextInt(4));
case NETHER_QUARTZ_ORE -> new ItemStack(Material.QUARTZ);
case IRON_ORE -> new ItemStack(Material.IRON_ORE);
case GOLD_ORE -> new ItemStack(Material.GOLD_ORE);
case NETHER_GOLD_ORE -> new ItemStack(Material.GOLD_NUGGET, 2 + random.nextInt(4)); case NETHER_GOLD_ORE -> new ItemStack(Material.GOLD_NUGGET, 2 + random.nextInt(4));
case ANCIENT_DEBRIS -> new ItemStack(Material.ANCIENT_DEBRIS); case ANCIENT_DEBRIS -> new ItemStack(Material.ANCIENT_DEBRIS);
default -> super.getDrops(material, random); default -> new ItemStack(material);
}; };
} }

View File

@ -25,12 +25,7 @@ class NetherIceResource extends AbstractResource {
NetherIceResource() { NetherIceResource() {
super("nether_ice", "Nether Ice", SlimefunItems.NETHER_ICE, 6, true); super("nether_ice", "Nether Ice", SlimefunItems.NETHER_ICE, 6, true);
if (Slimefun.getMinecraftVersion().isAtLeast(MinecraftVersion.MINECRAFT_1_16)) {
// 1.16+ introduced Nether biomes
biomes = getBiomeMap(this, "/biome-maps/nether_ice_v1.16.json"); biomes = getBiomeMap(this, "/biome-maps/nether_ice_v1.16.json");
} else {
biomes = getBiomeMap(this, "/biome-maps/nether_ice_v1.14.json");
}
} }
@Override @Override

View File

@ -32,11 +32,8 @@ class UraniumResource extends AbstractResource {
} else if (version.isAtLeast(MinecraftVersion.MINECRAFT_1_17)) { } else if (version.isAtLeast(MinecraftVersion.MINECRAFT_1_17)) {
// 1.17+ introduced cave biomes // 1.17+ introduced cave biomes
biomes = getBiomeMap(this, "/biome-maps/uranium_v1.17.json"); biomes = getBiomeMap(this, "/biome-maps/uranium_v1.17.json");
} else if (version.isAtLeast(MinecraftVersion.MINECRAFT_1_16)) {
// 1.16+ introduced Nether biomes
biomes = getBiomeMap(this, "/biome-maps/uranium_v1.16.json");
} else { } else {
biomes = getBiomeMap(this, "/biome-maps/uranium_v1.14.json"); biomes = getBiomeMap(this, "/biome-maps/uranium_v1.16.json");
} }
} }

View File

@ -531,15 +531,6 @@ public final class SlimefunUtils {
* @return True if the inventory is empty and false otherwise * @return True if the inventory is empty and false otherwise
*/ */
public static boolean isInventoryEmpty(@Nonnull Inventory inventory) { public static boolean isInventoryEmpty(@Nonnull Inventory inventory) {
if (Slimefun.getMinecraftVersion().isAtLeast(MinecraftVersion.MINECRAFT_1_16)) {
return inventory.isEmpty(); return inventory.isEmpty();
} else {
for (ItemStack is : inventory.getStorageContents()) {
if (is != null && !is.getType().isAir()) {
return false;
}
}
return true;
}
} }
} }

View File

@ -30,11 +30,6 @@ public final class WorldUtils {
public static int getMinHeight(@Nonnull World world) { public static int getMinHeight(@Nonnull World world) {
Validate.notNull(world, "World cannot be null!"); Validate.notNull(world, "World cannot be null!");
if (Slimefun.getMinecraftVersion().isAtLeast(MinecraftVersion.MINECRAFT_1_16)) {
return world.getMinHeight(); return world.getMinHeight();
} else {
// Default to zero for pre-1.16 worlds
return 0;
}
} }
} }