#1325: Use CraftBlockType and CraftItemType instead of CraftMagicNumbers to convert between minecraft and bukkit block / item representation

By: DerFrZocker <derrieple@gmail.com>
This commit is contained in:
CraftBukkit/Spigot
2023-12-29 08:36:38 +11:00
parent b245f22351
commit d15575db91
32 changed files with 137 additions and 102 deletions

View File

@@ -7,7 +7,6 @@ import net.minecraft.world.level.block.Block;
import net.minecraft.world.level.block.ITileEntity;
import net.minecraft.world.level.block.entity.TileEntity;
import org.bukkit.Material;
import org.bukkit.craftbukkit.util.CraftMagicNumbers;
import org.bukkit.support.AbstractTestingBase;
import org.junit.jupiter.api.Test;
@@ -16,7 +15,7 @@ public class BlockStateTest extends AbstractTestingBase {
@Test
public void testTileEntityBlockStates() {
for (Block block : BuiltInRegistries.BLOCK) {
Material material = CraftMagicNumbers.getMaterial(block);
Material material = CraftBlockType.minecraftToBukkit(block);
Class<?> blockStateType = CraftBlockStates.getBlockStateType(material);
boolean isCraftBlockEntityState = CraftBlockEntityState.class.isAssignableFrom(blockStateType);

View File

@@ -31,7 +31,6 @@ import org.bukkit.craftbukkit.inventory.ItemStackTest.BukkitWrapper;
import org.bukkit.craftbukkit.inventory.ItemStackTest.CraftWrapper;
import org.bukkit.craftbukkit.inventory.ItemStackTest.StackProvider;
import org.bukkit.craftbukkit.inventory.ItemStackTest.StackWrapper;
import org.bukkit.craftbukkit.util.CraftMagicNumbers;
import org.bukkit.enchantments.Enchantment;
import org.bukkit.entity.Axolotl;
import org.bukkit.entity.TropicalFish;
@@ -197,7 +196,7 @@ public class ItemMetaTest extends AbstractTestingBase {
public void testSpawnEggsHasMeta() {
for (Item item : BuiltInRegistries.ITEM) {
if (item instanceof net.minecraft.world.item.ItemMonsterEgg) {
Material material = CraftMagicNumbers.getMaterial(item);
Material material = CraftItemType.minecraftToBukkit(item);
CraftMetaItem baseMeta = (CraftMetaItem) Bukkit.getItemFactory().getItemMeta(material);
ItemMeta baseMetaItem = CraftItemStack.getItemMeta(item.getDefaultInstance());

View File

@@ -5,7 +5,7 @@ import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.world.item.Item;
import net.minecraft.world.item.enchantment.EnchantmentSlotType;
import org.bukkit.Material;
import org.bukkit.craftbukkit.util.CraftMagicNumbers;
import org.bukkit.craftbukkit.inventory.CraftItemType;
import org.bukkit.support.AbstractTestingBase;
import org.junit.jupiter.api.Test;
@@ -30,7 +30,7 @@ public class EnchantmentTargetTest extends AbstractTestingBase {
assertNotNull(bukkitTarget, "No bukkit target for slot " + nmsSlot);
for (Item item : BuiltInRegistries.ITEM) {
Material material = CraftMagicNumbers.getMaterial(item);
Material material = CraftItemType.minecraftToBukkit(item);
boolean nms = nmsSlot.canEnchant(item);
boolean bukkit = bukkitTarget.includes(material);