diff --git a/bukkit/pom.xml b/bukkit/pom.xml index fdaa6bb94..56f4f27af 100644 --- a/bukkit/pom.xml +++ b/bukkit/pom.xml @@ -5,7 +5,7 @@ viaversion-parent us.myles - 1.4.0-18w08a + 1.4.0-18w08b 4.0.0 diff --git a/bungee/pom.xml b/bungee/pom.xml index 2515403d2..5ce12ac45 100644 --- a/bungee/pom.xml +++ b/bungee/pom.xml @@ -5,7 +5,7 @@ viaversion-parent us.myles - 1.4.0-18w08a + 1.4.0-18w08b 4.0.0 diff --git a/common/pom.xml b/common/pom.xml index f79c01add..5d27209d4 100644 --- a/common/pom.xml +++ b/common/pom.xml @@ -5,7 +5,7 @@ viaversion-parent us.myles - 1.4.0-18w08a + 1.4.0-18w08b 4.0.0 diff --git a/common/src/main/java/us/myles/ViaVersion/api/entities/Entity1_13Types.java b/common/src/main/java/us/myles/ViaVersion/api/entities/Entity1_13Types.java new file mode 100644 index 000000000..ec49aed5a --- /dev/null +++ b/common/src/main/java/us/myles/ViaVersion/api/entities/Entity1_13Types.java @@ -0,0 +1,242 @@ +package us.myles.ViaVersion.api.entities; + +import com.google.common.base.Optional; +import lombok.AllArgsConstructor; +import lombok.Getter; +import us.myles.ViaVersion.api.Via; + +public class Entity1_13Types { + public static EntityType getTypeFromId(int typeID, boolean isObject) { + Optional type; + + if (isObject) + type = ObjectTypes.getPCEntity(typeID); + else + type = EntityType.findById(typeID); + + if (!type.isPresent()) { + Via.getPlatform().getLogger().severe("Could not find type id " + typeID + " isObject=" + isObject); + return EntityType.ENTITY; // Fall back to the basic ENTITY + } + + return type.get(); + } + + @AllArgsConstructor + @Getter + public enum EntityType { + ENTITY(-1), + DROPPED_ITEM(30, ENTITY), + EXPERIENCE_ORB(20, ENTITY), + LEASH_HITCH(33, ENTITY), // Actually entity hanging but it doesn't make a lot of difference for metadata + PAINTING(47, ENTITY), // Actually entity hanging but it doesn't make a lot of difference for metadata + ARROW(2, ENTITY), + SNOWBALL(65, ENTITY), // Actually EntityProjectile + FIREBALL(32, ENTITY), + SMALL_FIREBALL(63, ENTITY), + ENDER_PEARL(72, ENTITY), // Actually EntityProjectile + ENDER_SIGNAL(21, ENTITY), + THROWN_EXP_BOTTLE(73, ENTITY), + ITEM_FRAME(31, ENTITY), // Actually EntityHanging + WITHER_SKULL(82, ENTITY), + PRIMED_TNT(53, ENTITY), + FALLING_BLOCK(22, ENTITY), + FIREWORK(23, ENTITY), + SPECTRAL_ARROW(66, ARROW), + SHULKER_BULLET(58, ENTITY), + DRAGON_FIREBALL(12, FIREBALL), + EVOCATION_FANGS(18, ENTITY), + + + ENTITY_LIVING(-1, ENTITY), + ENTITY_INSENTIENT(-1, ENTITY_LIVING), + ENTITY_AGEABLE(-1, ENTITY_INSENTIENT), + ENTITY_TAMEABLE_ANIMAL(-1, ENTITY_AGEABLE), + ENTITY_HUMAN(-1, ENTITY_LIVING), + + ARMOR_STAND(1, ENTITY_LIVING), + ENTITY_ILLAGER_ABSTRACT(-1, ENTITY_INSENTIENT), + EVOCATION_ILLAGER(19, ENTITY_ILLAGER_ABSTRACT), + VEX(75, ENTITY_INSENTIENT), + VINDICATION_ILLAGER(78, ENTITY_ILLAGER_ABSTRACT), + ILLUSION_ILLAGER(29, EVOCATION_ILLAGER), + + // Vehicles + MINECART_ABSTRACT(-1, ENTITY), + MINECART_COMMAND(39, MINECART_ABSTRACT), + BOAT(5, ENTITY), + MINECART_RIDEABLE(37, MINECART_ABSTRACT), + MINECART_CHEST(38, MINECART_ABSTRACT), + MINECART_FURNACE(40, MINECART_ABSTRACT), + MINECART_TNT(43, MINECART_ABSTRACT), + MINECART_HOPPER(41, MINECART_ABSTRACT), + MINECART_MOB_SPAWNER(42, MINECART_ABSTRACT), + + CREEPER(10, ENTITY_INSENTIENT), + + ABSTRACT_SKELETON(-1, ENTITY_INSENTIENT), + SKELETON(60, ABSTRACT_SKELETON), + WITHER_SKELETON(81, ABSTRACT_SKELETON), + STRAY(69, ABSTRACT_SKELETON), + + SPIDER(67, ENTITY_INSENTIENT), + GIANT(25, ENTITY_INSENTIENT), + + ZOMBIE(84, ENTITY_INSENTIENT), + HUSK(28, ZOMBIE), + ZOMBIE_VILLAGER(86, ZOMBIE), + + SLIME(62, ENTITY_INSENTIENT), + GHAST(24, ENTITY_INSENTIENT), + PIG_ZOMBIE(51, ZOMBIE), + ENDERMAN(16, ENTITY_INSENTIENT), + CAVE_SPIDER(6, SPIDER), + SILVERFISH(59, ENTITY_INSENTIENT), + BLAZE(4, ENTITY_INSENTIENT), + MAGMA_CUBE(36, SLIME), + ENDER_DRAGON(15, ENTITY_INSENTIENT), + WITHER(80, ENTITY_INSENTIENT), + BAT(3, ENTITY_INSENTIENT), + WITCH(79, ENTITY_INSENTIENT), + ENDERMITE(17, ENTITY_INSENTIENT), + + GUARDIAN(26, ENTITY_INSENTIENT), + ELDER_GUARDIAN(13, GUARDIAN), // Moved down to avoid illegal forward reference + + IRON_GOLEM(77, ENTITY_INSENTIENT), // moved up to avoid illegal forward references + SHULKER(57, IRON_GOLEM), + PIG(49, ENTITY_AGEABLE), + SHEEP(56, ENTITY_AGEABLE), + COW(9, ENTITY_AGEABLE), + CHICKEN(7, ENTITY_AGEABLE), + SQUID(68, ENTITY_INSENTIENT), + WOLF(83, ENTITY_TAMEABLE_ANIMAL), + MUSHROOM_COW(45, COW), + SNOWMAN(64, IRON_GOLEM), + OCELOT(46, ENTITY_TAMEABLE_ANIMAL), + PARROT(48, ENTITY_TAMEABLE_ANIMAL), + + ABSTRACT_HORSE(-1, ENTITY_AGEABLE), + HORSE(27, ABSTRACT_HORSE), + SKELETON_HORSE(61, ABSTRACT_HORSE), + ZOMBIE_HORSE(85, ABSTRACT_HORSE), + + CHESTED_HORSE(-1, ABSTRACT_HORSE), + DONKEY(11, CHESTED_HORSE), + MULE(44, CHESTED_HORSE), + LIAMA(34, CHESTED_HORSE), + + + RABBIT(54, ENTITY_AGEABLE), + POLAR_BEAR(52, ENTITY_AGEABLE), + VILLAGER(76, ENTITY_AGEABLE), + ENDER_CRYSTAL(14, ENTITY), + SPLASH_POTION(-1, ENTITY), + LINGERING_POTION(-1, SPLASH_POTION), + AREA_EFFECT_CLOUD(-1, ENTITY), + EGG(-1, ENTITY), + FISHING_HOOK(-1, ENTITY), + LIGHTNING(-1, ENTITY), + WEATHER(-1, ENTITY), + PLAYER(-1, ENTITY_HUMAN), + COMPLEX_PART(-1, ENTITY), + LIAMA_SPIT(-1, ENTITY); + + private final int id; + private final EntityType parent; + + EntityType(int id) { + this.id = id; + this.parent = null; + } + + public static Optional findById(int id) { + if (id == -1) // Check if this is called + return Optional.absent(); + + for (EntityType ent : EntityType.values()) + if (ent.getId() == id) + return Optional.of(ent); + + return Optional.absent(); + } + + public boolean is(EntityType... types) { + for (EntityType type : types) + if (is(type)) + return true; + return false; + } + + public boolean is(EntityType type) { + return this == type; + } + + public boolean isOrHasParent(EntityType type) { + EntityType parent = this; + + do { + if (parent.equals(type)) + return true; + + parent = parent.getParent(); + } while (parent != null); + + return false; + } + } + + @AllArgsConstructor + @Getter + public enum ObjectTypes { + AREA_EFFECT_CLOUD(0, EntityType.AREA_EFFECT_CLOUD), + ARMOR_STAND(1, EntityType.ARMOR_STAND), + BOAT(5, EntityType.BOAT), + ITEM(30, EntityType.DROPPED_ITEM), + MINECART(37, EntityType.MINECART_ABSTRACT), + TNT_PRIMED(53, EntityType.PRIMED_TNT), + ENDER_CRYSTAL(14, EntityType.ENDER_CRYSTAL), + TIPPED_ARROW(2, EntityType.ARROW), + SNOWBALL(65, EntityType.SNOWBALL), + EGG(71, EntityType.EGG), + FIREBALL(32, EntityType.FIREBALL), + SMALL_FIREBALL(63, EntityType.SMALL_FIREBALL), + ENDER_PEARL(72, EntityType.ENDER_PEARL), + WITHER_SKULL(82, EntityType.WITHER_SKULL), + SHULKER_BULLET(58, EntityType.SHULKER_BULLET), + LIAMA_SPIT(35, EntityType.LIAMA_SPIT), + FALLING_BLOCK(22, EntityType.FALLING_BLOCK), + ITEM_FRAME(31, EntityType.ITEM_FRAME), + ENDER_SIGNAL(21, EntityType.ENDER_SIGNAL), + POTION(74, EntityType.SPLASH_POTION), + THROWN_EXP_BOTTLE(73, EntityType.THROWN_EXP_BOTTLE), + FIREWORK(23, EntityType.FIREWORK), + LEASH(33, EntityType.LEASH_HITCH), + EVOCATION_FANGS(18, EntityType.EVOCATION_FANGS), + FISHIHNG_HOOK(90, EntityType.FISHING_HOOK), + SPECTRAL_ARROW(66, EntityType.SPECTRAL_ARROW), + DRAGON_FIREBALL(12, EntityType.DRAGON_FIREBALL); + + private final int id; + private final EntityType type; + + public static Optional findById(int id) { + if (id == -1) + return Optional.absent(); + + for (ObjectTypes ent : ObjectTypes.values()) + if (ent.getId() == id) + return Optional.of(ent); + + return Optional.absent(); + } + + public static Optional getPCEntity(int id) { + Optional output = findById(id); + + if (!output.isPresent()) + return Optional.absent(); + return Optional.of(output.get().getType()); + } + } +} diff --git a/common/src/main/java/us/myles/ViaVersion/api/protocol/ProtocolVersion.java b/common/src/main/java/us/myles/ViaVersion/api/protocol/ProtocolVersion.java index cd7751d87..e80721255 100644 --- a/common/src/main/java/us/myles/ViaVersion/api/protocol/ProtocolVersion.java +++ b/common/src/main/java/us/myles/ViaVersion/api/protocol/ProtocolVersion.java @@ -62,7 +62,7 @@ public class ProtocolVersion { register(v1_12 = new ProtocolVersion(335, "1.12")); register(v1_12_1 = new ProtocolVersion(338, "1.12.1")); register(v1_12_2 = new ProtocolVersion(340, "1.12.2")); - register(v1_13 = new ProtocolVersion(361, "18w08a")); + register(v1_13 = new ProtocolVersion(362, "18w08b")); register(unknown = new ProtocolVersion(-1, "UNKNOWN")); } diff --git a/common/src/main/java/us/myles/ViaVersion/protocols/protocolsnapshotto1_12_2/ProtocolSnapshotTo1_12_2.java b/common/src/main/java/us/myles/ViaVersion/protocols/protocolsnapshotto1_12_2/ProtocolSnapshotTo1_12_2.java index 1f95eaaec..2c120bd47 100644 --- a/common/src/main/java/us/myles/ViaVersion/protocols/protocolsnapshotto1_12_2/ProtocolSnapshotTo1_12_2.java +++ b/common/src/main/java/us/myles/ViaVersion/protocols/protocolsnapshotto1_12_2/ProtocolSnapshotTo1_12_2.java @@ -397,6 +397,14 @@ public class ProtocolSnapshotTo1_12_2 extends Protocol { newID += 5; if (oldID >= 86) newID++; + if (oldID >= 166) + newID += 4; + if (oldID >= 226) + newID++; + if (oldID >= 380) + newID += 7; + if (oldID >= 385) + newID += 4; if (oldID >= 352) newID += 5; if (oldID >= 438) @@ -407,8 +415,13 @@ public class ProtocolSnapshotTo1_12_2 extends Protocol { newID++; if (oldID >= 508) newID += 2; + if (oldID >= 512) + newID++; + if (oldID >= 514) + newID++; if (oldID >= 524) newID += 8; return newID; + // TODO 18w08b } } diff --git a/common/src/main/java/us/myles/ViaVersion/protocols/protocolsnapshotto1_12_2/packets/EntityPackets.java b/common/src/main/java/us/myles/ViaVersion/protocols/protocolsnapshotto1_12_2/packets/EntityPackets.java index 0eb086d68..01af35c6c 100644 --- a/common/src/main/java/us/myles/ViaVersion/protocols/protocolsnapshotto1_12_2/packets/EntityPackets.java +++ b/common/src/main/java/us/myles/ViaVersion/protocols/protocolsnapshotto1_12_2/packets/EntityPackets.java @@ -3,6 +3,7 @@ package us.myles.ViaVersion.protocols.protocolsnapshotto1_12_2.packets; import com.google.common.base.Optional; import us.myles.ViaVersion.api.PacketWrapper; import us.myles.ViaVersion.api.entities.Entity1_12Types; +import us.myles.ViaVersion.api.entities.Entity1_13Types; import us.myles.ViaVersion.api.protocol.Protocol; import us.myles.ViaVersion.api.remapper.PacketHandler; import us.myles.ViaVersion.api.remapper.PacketRemapper; @@ -32,7 +33,9 @@ public class EntityPackets { int entityId = wrapper.get(Type.VAR_INT, 0); byte type = wrapper.get(Type.BYTE, 0); - Entity1_12Types.EntityType entType = Entity1_12Types.getTypeFromId(type, true); + Entity1_13Types.EntityType entType = Entity1_13Types.EntityType.valueOf( + Entity1_12Types.getTypeFromId(type, true).name() + ); // Register Type ID wrapper.user().get(EntityTracker.class).addEntity(entityId, entType); @@ -65,7 +68,9 @@ public class EntityPackets { int entityId = wrapper.get(Type.VAR_INT, 0); int type = wrapper.get(Type.VAR_INT, 1); - Entity1_12Types.EntityType entType = Entity1_12Types.getTypeFromId(type, false); + Entity1_13Types.EntityType entType = Entity1_13Types.EntityType.valueOf( + Entity1_12Types.getTypeFromId(type, false).name() + ); // Register Type ID wrapper.user().get(EntityTracker.class).addEntity(entityId, entType); @@ -93,7 +98,7 @@ public class EntityPackets { public void handle(PacketWrapper wrapper) throws Exception { int entityId = wrapper.get(Type.VAR_INT, 0); - Entity1_12Types.EntityType entType = Entity1_12Types.EntityType.PLAYER; + Entity1_13Types.EntityType entType = Entity1_13Types.EntityType.PLAYER; // Register Type ID wrapper.user().get(EntityTracker.class).addEntity(entityId, entType); MetadataRewriter.handleMetadata(entityId, entType, wrapper.get(Types1_13.METADATA_LIST, 0), wrapper.user()); @@ -128,7 +133,7 @@ public class EntityPackets { public void handle(PacketWrapper wrapper) throws Exception { int entityId = wrapper.get(Type.VAR_INT, 0); - Optional type = wrapper.user().get(EntityTracker.class).get(entityId); + Optional type = wrapper.user().get(EntityTracker.class).get(entityId); MetadataRewriter.handleMetadata(entityId, type.orNull(), wrapper.get(Types1_13.METADATA_LIST, 0), wrapper.user()); } diff --git a/common/src/main/java/us/myles/ViaVersion/protocols/protocolsnapshotto1_12_2/storage/EntityTracker.java b/common/src/main/java/us/myles/ViaVersion/protocols/protocolsnapshotto1_12_2/storage/EntityTracker.java index 524ea80c7..e3aa2cd60 100644 --- a/common/src/main/java/us/myles/ViaVersion/protocols/protocolsnapshotto1_12_2/storage/EntityTracker.java +++ b/common/src/main/java/us/myles/ViaVersion/protocols/protocolsnapshotto1_12_2/storage/EntityTracker.java @@ -3,13 +3,13 @@ package us.myles.ViaVersion.protocols.protocolsnapshotto1_12_2.storage; import com.google.common.base.Optional; import us.myles.ViaVersion.api.data.StoredObject; import us.myles.ViaVersion.api.data.UserConnection; -import us.myles.ViaVersion.api.entities.Entity1_12Types; +import us.myles.ViaVersion.api.entities.Entity1_13Types; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; public class EntityTracker extends StoredObject { - private final Map clientEntityTypes = new ConcurrentHashMap<>(); + private final Map clientEntityTypes = new ConcurrentHashMap<>(); public EntityTracker(UserConnection user) { super(user); @@ -19,7 +19,7 @@ public class EntityTracker extends StoredObject { clientEntityTypes.remove(entityId); } - public void addEntity(int entityId, Entity1_12Types.EntityType type) { + public void addEntity(int entityId, Entity1_13Types.EntityType type) { clientEntityTypes.put(entityId, type); } @@ -27,7 +27,7 @@ public class EntityTracker extends StoredObject { return clientEntityTypes.containsKey(entityId); } - public Optional get(int id) { + public Optional get(int id) { if (!has(id)) return Optional.absent(); return Optional.of(clientEntityTypes.get(id)); diff --git a/common/src/main/resources/assets/viaversion/data/mapping-1.12.json b/common/src/main/resources/assets/viaversion/data/mapping-1.12.json index 11992ec29..b134714e9 100644 --- a/common/src/main/resources/assets/viaversion/data/mapping-1.12.json +++ b/common/src/main/resources/assets/viaversion/data/mapping-1.12.json @@ -2186,6 +2186,7 @@ "6813": "minecraft:magenta_banner", "6814": "minecraft:orange_banner", "6815": "minecraft:white_banner", + "7088": "minecraft:elytra", "36096": "minecraft:music_disc_13", "36112": "minecraft:music_disc_cat", "36128": "minecraft:music_disc_blocks", diff --git a/common/src/main/resources/assets/viaversion/data/mapping-1.13.json b/common/src/main/resources/assets/viaversion/data/mapping-1.13.json index e34f8f0c0..6de188d66 100644 --- a/common/src/main/resources/assets/viaversion/data/mapping-1.13.json +++ b/common/src/main/resources/assets/viaversion/data/mapping-1.13.json @@ -7430,230 +7430,236 @@ "509": "minecraft:oak_boat", "510": "minecraft:leather", "511": "minecraft:milk_bucket", - "512": "minecraft:brick", - "513": "minecraft:clay_ball", - "514": "minecraft:sugar_cane", - "515": "minecraft:kelp_top", - "516": "minecraft:dried_kelp_block", - "517": "minecraft:paper", - "518": "minecraft:book", - "519": "minecraft:slime_ball", - "520": "minecraft:chest_minecart", - "521": "minecraft:furnace_minecart", - "522": "minecraft:egg", - "523": "minecraft:compass", - "524": "minecraft:fishing_rod", - "525": "minecraft:clock", - "526": "minecraft:glowstone_dust", - "527": "minecraft:cod", - "528": "minecraft:salmon", - "529": "minecraft:clownfish", - "530": "minecraft:pufferfish", - "531": "minecraft:cooked_cod", - "532": "minecraft:cooked_salmon", - "533": "minecraft:ink_sac", - "534": "minecraft:rose_red", - "535": "minecraft:cactus_green", - "536": "minecraft:cocoa_beans", - "537": "minecraft:lapis_lazuli", - "538": "minecraft:purple_dye", - "539": "minecraft:cyan_dye", - "540": "minecraft:light_gray_dye", - "541": "minecraft:gray_dye", - "542": "minecraft:pink_dye", - "543": "minecraft:lime_dye", - "544": "minecraft:dandelion_yellow", - "545": "minecraft:light_blue_dye", - "546": "minecraft:magenta_dye", - "547": "minecraft:orange_dye", - "548": "minecraft:bone_meal", - "549": "minecraft:bone", - "550": "minecraft:sugar", - "551": "minecraft:cake", - "552": "minecraft:white_bed", - "553": "minecraft:orange_bed", - "554": "minecraft:magenta_bed", - "555": "minecraft:light_blue_bed", - "556": "minecraft:yellow_bed", - "557": "minecraft:lime_bed", - "558": "minecraft:pink_bed", - "559": "minecraft:gray_bed", - "560": "minecraft:light_gray_bed", - "561": "minecraft:cyan_bed", - "562": "minecraft:purple_bed", - "563": "minecraft:blue_bed", - "564": "minecraft:brown_bed", - "565": "minecraft:green_bed", - "566": "minecraft:red_bed", - "567": "minecraft:black_bed", - "568": "minecraft:cookie", - "569": "minecraft:filled_map", - "570": "minecraft:shears", - "571": "minecraft:melon", - "572": "minecraft:dried_kelp", - "573": "minecraft:pumpkin_seeds", - "574": "minecraft:melon_seeds", - "575": "minecraft:beef", - "576": "minecraft:cooked_beef", - "577": "minecraft:chicken", - "578": "minecraft:cooked_chicken", - "579": "minecraft:rotten_flesh", - "580": "minecraft:ender_pearl", - "581": "minecraft:blaze_rod", - "582": "minecraft:ghast_tear", - "583": "minecraft:gold_nugget", - "584": "minecraft:nether_wart", - "585": "minecraft:potion", - "586": "minecraft:glass_bottle", - "587": "minecraft:spider_eye", - "588": "minecraft:fermented_spider_eye", - "589": "minecraft:blaze_powder", - "590": "minecraft:magma_cream", - "591": "minecraft:brewing_stand", - "592": "minecraft:cauldron", - "593": "minecraft:ender_eye", - "594": "minecraft:speckled_melon", - "595": "minecraft:bat_spawn_egg", - "596": "minecraft:blaze_spawn_egg", - "597": "minecraft:cave_spider_spawn_egg", - "598": "minecraft:chicken_spawn_egg", - "599": "minecraft:cow_spawn_egg", - "600": "minecraft:creeper_spawn_egg", - "601": "minecraft:donkey_spawn_egg", - "602": "minecraft:elder_guardian_spawn_egg", - "603": "minecraft:enderman_spawn_egg", - "604": "minecraft:endermite_spawn_egg", - "605": "minecraft:evocation_illager_spawn_egg", - "606": "minecraft:ghast_spawn_egg", - "607": "minecraft:guardian_spawn_egg", - "608": "minecraft:horse_spawn_egg", - "609": "minecraft:husk_spawn_egg", - "610": "minecraft:llama_spawn_egg", - "611": "minecraft:magma_cube_spawn_egg", - "612": "minecraft:mooshroom_spawn_egg", - "613": "minecraft:mule_spawn_egg", - "614": "minecraft:ocelot_spawn_egg", - "615": "minecraft:parrot_spawn_egg", - "616": "minecraft:pig_spawn_egg", - "617": "minecraft:phantom_spawn_egg", - "618": "minecraft:polar_bear_spawn_egg", - "619": "minecraft:rabbit_spawn_egg", - "620": "minecraft:sheep_spawn_egg", - "621": "minecraft:shulker_spawn_egg", - "622": "minecraft:silverfish_spawn_egg", - "623": "minecraft:skeleton_spawn_egg", - "624": "minecraft:skeleton_horse_spawn_egg", - "625": "minecraft:slime_spawn_egg", - "626": "minecraft:spider_spawn_egg", - "627": "minecraft:squid_spawn_egg", - "628": "minecraft:stray_spawn_egg", - "629": "minecraft:turtle_spawn_egg", - "630": "minecraft:vex_spawn_egg", - "631": "minecraft:villager_spawn_egg", - "632": "minecraft:vindication_illager_spawn_egg", - "633": "minecraft:witch_spawn_egg", - "634": "minecraft:wither_skeleton_spawn_egg", - "635": "minecraft:wolf_spawn_egg", - "636": "minecraft:zombie_spawn_egg", - "637": "minecraft:zombie_horse_spawn_egg", - "638": "minecraft:zombie_pigman_spawn_egg", - "639": "minecraft:zombie_villager_spawn_egg", - "640": "minecraft:experience_bottle", - "641": "minecraft:fire_charge", - "642": "minecraft:writable_book", - "643": "minecraft:written_book", - "644": "minecraft:emerald", - "645": "minecraft:item_frame", - "646": "minecraft:flower_pot", - "647": "minecraft:carrot", - "648": "minecraft:potato", - "649": "minecraft:baked_potato", - "650": "minecraft:poisonous_potato", - "651": "minecraft:map", - "652": "minecraft:golden_carrot", - "653": "minecraft:skeleton_skull", - "654": "minecraft:wither_skeleton_skull", - "655": "minecraft:player_head", - "656": "minecraft:zombie_head", - "657": "minecraft:creeper_head", - "658": "minecraft:dragon_head", - "659": "minecraft:carrot_on_a_stick", - "660": "minecraft:nether_star", - "661": "minecraft:pumpkin_pie", - "662": "minecraft:firework_rocket", - "663": "minecraft:firework_star", - "664": "minecraft:enchanted_book", - "665": "minecraft:nether_brick", - "666": "minecraft:quartz", - "667": "minecraft:tnt_minecart", - "668": "minecraft:hopper_minecart", - "669": "minecraft:prismarine_shard", - "670": "minecraft:prismarine_crystals", - "671": "minecraft:rabbit", - "672": "minecraft:cooked_rabbit", - "673": "minecraft:rabbit_stew", - "674": "minecraft:rabbit_foot", - "675": "minecraft:rabbit_hide", - "676": "minecraft:armor_stand", - "677": "minecraft:iron_horse_armor", - "678": "minecraft:golden_horse_armor", - "679": "minecraft:diamond_horse_armor", - "680": "minecraft:lead", - "681": "minecraft:name_tag", - "682": "minecraft:command_block_minecart", - "683": "minecraft:mutton", - "684": "minecraft:cooked_mutton", - "685": "minecraft:white_banner", - "686": "minecraft:orange_banner", - "687": "minecraft:magenta_banner", - "688": "minecraft:light_blue_banner", - "689": "minecraft:yellow_banner", - "690": "minecraft:lime_banner", - "691": "minecraft:pink_banner", - "692": "minecraft:gray_banner", - "693": "minecraft:light_gray_banner", - "694": "minecraft:cyan_banner", - "695": "minecraft:purple_banner", - "696": "minecraft:blue_banner", - "697": "minecraft:brown_banner", - "698": "minecraft:green_banner", - "699": "minecraft:red_banner", - "700": "minecraft:black_banner", - "701": "minecraft:end_crystal", - "702": "minecraft:chorus_fruit", - "703": "minecraft:chorus_fruit_popped", - "704": "minecraft:beetroot", - "705": "minecraft:beetroot_seeds", - "706": "minecraft:beetroot_soup", - "707": "minecraft:dragon_breath", - "708": "minecraft:splash_potion", - "709": "minecraft:spectral_arrow", - "710": "minecraft:tipped_arrow", - "711": "minecraft:lingering_potion", - "712": "minecraft:shield", - "713": "minecraft:elytra", - "714": "minecraft:spruce_boat", - "715": "minecraft:birch_boat", - "716": "minecraft:jungle_boat", - "717": "minecraft:acacia_boat", - "718": "minecraft:dark_oak_boat", - "719": "minecraft:totem_of_undying", - "720": "minecraft:shulker_shell", - "721": "minecraft:iron_nugget", - "722": "minecraft:knowledge_book", - "723": "minecraft:debug_stick", - "724": "minecraft:music_disc_13", - "725": "minecraft:music_disc_cat", - "726": "minecraft:music_disc_blocks", - "727": "minecraft:music_disc_chirp", - "728": "minecraft:music_disc_far", - "729": "minecraft:music_disc_mall", - "730": "minecraft:music_disc_mellohi", - "731": "minecraft:music_disc_stal", - "732": "minecraft:music_disc_strad", - "733": "minecraft:music_disc_ward", - "734": "minecraft:music_disc_11", - "735": "minecraft:music_disc_wait", - "736": "minecraft:trident" + "512": "minecraft:pufferfish_bucket", + "513": "minecraft:salmon_bucket", + "514": "minecraft:cod_bucket", + "515": "minecraft:brick", + "516": "minecraft:clay_ball", + "517": "minecraft:sugar_cane", + "518": "minecraft:kelp_top", + "519": "minecraft:dried_kelp_block", + "520": "minecraft:paper", + "521": "minecraft:book", + "522": "minecraft:slime_ball", + "523": "minecraft:chest_minecart", + "524": "minecraft:furnace_minecart", + "525": "minecraft:egg", + "526": "minecraft:compass", + "527": "minecraft:fishing_rod", + "528": "minecraft:clock", + "529": "minecraft:glowstone_dust", + "530": "minecraft:cod", + "531": "minecraft:salmon", + "532": "minecraft:clownfish", + "533": "minecraft:pufferfish", + "534": "minecraft:cooked_cod", + "535": "minecraft:cooked_salmon", + "536": "minecraft:ink_sac", + "537": "minecraft:rose_red", + "538": "minecraft:cactus_green", + "539": "minecraft:cocoa_beans", + "540": "minecraft:lapis_lazuli", + "541": "minecraft:purple_dye", + "542": "minecraft:cyan_dye", + "543": "minecraft:light_gray_dye", + "544": "minecraft:gray_dye", + "545": "minecraft:pink_dye", + "546": "minecraft:lime_dye", + "547": "minecraft:dandelion_yellow", + "548": "minecraft:light_blue_dye", + "549": "minecraft:magenta_dye", + "550": "minecraft:orange_dye", + "551": "minecraft:bone_meal", + "552": "minecraft:bone", + "553": "minecraft:sugar", + "554": "minecraft:cake", + "555": "minecraft:white_bed", + "556": "minecraft:orange_bed", + "557": "minecraft:magenta_bed", + "558": "minecraft:light_blue_bed", + "559": "minecraft:yellow_bed", + "560": "minecraft:lime_bed", + "561": "minecraft:pink_bed", + "562": "minecraft:gray_bed", + "563": "minecraft:light_gray_bed", + "564": "minecraft:cyan_bed", + "565": "minecraft:purple_bed", + "566": "minecraft:blue_bed", + "567": "minecraft:brown_bed", + "568": "minecraft:green_bed", + "569": "minecraft:red_bed", + "570": "minecraft:black_bed", + "571": "minecraft:cookie", + "572": "minecraft:filled_map", + "573": "minecraft:shears", + "574": "minecraft:melon", + "575": "minecraft:dried_kelp", + "576": "minecraft:pumpkin_seeds", + "577": "minecraft:melon_seeds", + "578": "minecraft:beef", + "579": "minecraft:cooked_beef", + "580": "minecraft:chicken", + "581": "minecraft:cooked_chicken", + "582": "minecraft:rotten_flesh", + "583": "minecraft:ender_pearl", + "584": "minecraft:blaze_rod", + "585": "minecraft:ghast_tear", + "586": "minecraft:gold_nugget", + "587": "minecraft:nether_wart", + "588": "minecraft:potion", + "589": "minecraft:glass_bottle", + "590": "minecraft:spider_eye", + "591": "minecraft:fermented_spider_eye", + "592": "minecraft:blaze_powder", + "593": "minecraft:magma_cream", + "594": "minecraft:brewing_stand", + "595": "minecraft:cauldron", + "596": "minecraft:ender_eye", + "597": "minecraft:speckled_melon", + "598": "minecraft:bat_spawn_egg", + "599": "minecraft:blaze_spawn_egg", + "600": "minecraft:cave_spider_spawn_egg", + "601": "minecraft:chicken_spawn_egg", + "602": "minecraft:cow_spawn_egg", + "603": "minecraft:creeper_spawn_egg", + "604": "minecraft:donkey_spawn_egg", + "605": "minecraft:elder_guardian_spawn_egg", + "606": "minecraft:enderman_spawn_egg", + "607": "minecraft:endermite_spawn_egg", + "608": "minecraft:evocation_illager_spawn_egg", + "609": "minecraft:ghast_spawn_egg", + "610": "minecraft:guardian_spawn_egg", + "611": "minecraft:horse_spawn_egg", + "612": "minecraft:husk_spawn_egg", + "613": "minecraft:llama_spawn_egg", + "614": "minecraft:magma_cube_spawn_egg", + "615": "minecraft:mooshroom_spawn_egg", + "616": "minecraft:mule_spawn_egg", + "617": "minecraft:ocelot_spawn_egg", + "618": "minecraft:parrot_spawn_egg", + "619": "minecraft:pig_spawn_egg", + "620": "minecraft:phantom_spawn_egg", + "621": "minecraft:polar_bear_spawn_egg", + "622": "minecraft:rabbit_spawn_egg", + "623": "minecraft:sheep_spawn_egg", + "624": "minecraft:shulker_spawn_egg", + "625": "minecraft:silverfish_spawn_egg", + "626": "minecraft:skeleton_spawn_egg", + "627": "minecraft:skeleton_horse_spawn_egg", + "628": "minecraft:slime_spawn_egg", + "629": "minecraft:spider_spawn_egg", + "630": "minecraft:squid_spawn_egg", + "631": "minecraft:stray_spawn_egg", + "632": "minecraft:turtle_spawn_egg", + "633": "minecraft:vex_spawn_egg", + "634": "minecraft:villager_spawn_egg", + "635": "minecraft:vindication_illager_spawn_egg", + "636": "minecraft:witch_spawn_egg", + "637": "minecraft:wither_skeleton_spawn_egg", + "638": "minecraft:wolf_spawn_egg", + "639": "minecraft:zombie_spawn_egg", + "640": "minecraft:zombie_horse_spawn_egg", + "641": "minecraft:zombie_pigman_spawn_egg", + "642": "minecraft:zombie_villager_spawn_egg", + "643": "minecraft:puffer_fish_spawn_egg", + "644": "minecraft:salmon_mob_spawn_egg", + "645": "minecraft:cod_mob_spawn_egg", + "646": "minecraft:experience_bottle", + "647": "minecraft:fire_charge", + "648": "minecraft:writable_book", + "649": "minecraft:written_book", + "650": "minecraft:emerald", + "651": "minecraft:item_frame", + "652": "minecraft:flower_pot", + "653": "minecraft:carrot", + "654": "minecraft:potato", + "655": "minecraft:baked_potato", + "656": "minecraft:poisonous_potato", + "657": "minecraft:map", + "658": "minecraft:golden_carrot", + "659": "minecraft:skeleton_skull", + "660": "minecraft:wither_skeleton_skull", + "661": "minecraft:player_head", + "662": "minecraft:zombie_head", + "663": "minecraft:creeper_head", + "664": "minecraft:dragon_head", + "665": "minecraft:carrot_on_a_stick", + "666": "minecraft:nether_star", + "667": "minecraft:pumpkin_pie", + "668": "minecraft:firework_rocket", + "669": "minecraft:firework_star", + "670": "minecraft:enchanted_book", + "671": "minecraft:nether_brick", + "672": "minecraft:quartz", + "673": "minecraft:tnt_minecart", + "674": "minecraft:hopper_minecart", + "675": "minecraft:prismarine_shard", + "676": "minecraft:prismarine_crystals", + "677": "minecraft:rabbit", + "678": "minecraft:cooked_rabbit", + "679": "minecraft:rabbit_stew", + "680": "minecraft:rabbit_foot", + "681": "minecraft:rabbit_hide", + "682": "minecraft:armor_stand", + "683": "minecraft:iron_horse_armor", + "684": "minecraft:golden_horse_armor", + "685": "minecraft:diamond_horse_armor", + "686": "minecraft:lead", + "687": "minecraft:name_tag", + "688": "minecraft:command_block_minecart", + "689": "minecraft:mutton", + "690": "minecraft:cooked_mutton", + "691": "minecraft:white_banner", + "692": "minecraft:orange_banner", + "693": "minecraft:magenta_banner", + "694": "minecraft:light_blue_banner", + "695": "minecraft:yellow_banner", + "696": "minecraft:lime_banner", + "697": "minecraft:pink_banner", + "698": "minecraft:gray_banner", + "699": "minecraft:light_gray_banner", + "700": "minecraft:cyan_banner", + "701": "minecraft:purple_banner", + "702": "minecraft:blue_banner", + "703": "minecraft:brown_banner", + "704": "minecraft:green_banner", + "705": "minecraft:red_banner", + "706": "minecraft:black_banner", + "707": "minecraft:end_crystal", + "708": "minecraft:chorus_fruit", + "709": "minecraft:chorus_fruit_popped", + "710": "minecraft:beetroot", + "711": "minecraft:beetroot_seeds", + "712": "minecraft:beetroot_soup", + "713": "minecraft:dragon_breath", + "714": "minecraft:splash_potion", + "715": "minecraft:spectral_arrow", + "716": "minecraft:tipped_arrow", + "717": "minecraft:lingering_potion", + "718": "minecraft:shield", + "719": "minecraft:elytra", + "720": "minecraft:spruce_boat", + "721": "minecraft:birch_boat", + "722": "minecraft:jungle_boat", + "723": "minecraft:acacia_boat", + "724": "minecraft:dark_oak_boat", + "725": "minecraft:totem_of_undying", + "726": "minecraft:shulker_shell", + "727": "minecraft:iron_nugget", + "728": "minecraft:knowledge_book", + "729": "minecraft:debug_stick", + "730": "minecraft:music_disc_13", + "731": "minecraft:music_disc_cat", + "732": "minecraft:music_disc_blocks", + "733": "minecraft:music_disc_chirp", + "734": "minecraft:music_disc_far", + "735": "minecraft:music_disc_mall", + "736": "minecraft:music_disc_mellohi", + "737": "minecraft:music_disc_stal", + "738": "minecraft:music_disc_strad", + "739": "minecraft:music_disc_ward", + "740": "minecraft:music_disc_11", + "741": "minecraft:music_disc_wait", + "742": "minecraft:trident" } } \ No newline at end of file diff --git a/jar/pom.xml b/jar/pom.xml index 736d9d443..cfd2de710 100644 --- a/jar/pom.xml +++ b/jar/pom.xml @@ -5,7 +5,7 @@ viaversion-parent us.myles - 1.4.0-18w08a + 1.4.0-18w08b 4.0.0 viaversion-jar diff --git a/pom.xml b/pom.xml index 0e7e6fdc2..63402cb96 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ us.myles viaversion-parent - 1.4.0-18w08a + 1.4.0-18w08b pom viaversion-parent diff --git a/sponge-legacy/pom.xml b/sponge-legacy/pom.xml index 59e0f2b21..20ade2f3d 100644 --- a/sponge-legacy/pom.xml +++ b/sponge-legacy/pom.xml @@ -5,7 +5,7 @@ viaversion-parent us.myles - 1.4.0-18w08a + 1.4.0-18w08b 4.0.0 diff --git a/sponge/pom.xml b/sponge/pom.xml index 1616f4ae6..1052b326b 100644 --- a/sponge/pom.xml +++ b/sponge/pom.xml @@ -5,7 +5,7 @@ viaversion-parent us.myles - 1.4.0-18w08a + 1.4.0-18w08b 4.0.0