From 87f217ca37694a96b77529870e81c800f996bbae Mon Sep 17 00:00:00 2001 From: Matsv Date: Sat, 19 Jan 2019 14:04:11 +0100 Subject: [PATCH] Rewrite entity types --- .../api/entities/types/EntityType1_13.java | 244 +++++++++--------- .../packets/EntityPackets1_13.java | 34 ++- 2 files changed, 149 insertions(+), 129 deletions(-) diff --git a/core/src/main/java/nl/matsv/viabackwards/api/entities/types/EntityType1_13.java b/core/src/main/java/nl/matsv/viabackwards/api/entities/types/EntityType1_13.java index a968e7e2..3b7b1a95 100644 --- a/core/src/main/java/nl/matsv/viabackwards/api/entities/types/EntityType1_13.java +++ b/core/src/main/java/nl/matsv/viabackwards/api/entities/types/EntityType1_13.java @@ -30,172 +30,174 @@ public class EntityType1_13 { @AllArgsConstructor @Getter public enum EntityType implements AbstractEntityType { - ENTITY(-1), - AREA_EFFECT_CLOUD(0, ENTITY), - ENDER_CRYSTAL(16, ENTITY), - EVOCATION_FANGS(20, ENTITY), - XP_ORB(22, ENTITY), - EYE_OF_ENDER_SIGNAL(23, ENTITY), - FALLING_BLOCK(24, ENTITY), - FIREWORKS_ROCKET(25, ENTITY), - ITEM(32, ENTITY), - LLAMA_SPIT(37, ENTITY), - TNT(55, ENTITY), - SHULKER_BULLET(60, ENTITY), - FISHING_BOBBER(93, ENTITY), - LIVINGENTITY(-1, ENTITY), - ARMOR_STAND(1, LIVINGENTITY), - PLAYER(92, LIVINGENTITY), + ENTITY(-1), // abm - ABSTRACT_INSENTIENT(-1, LIVINGENTITY), - ENDER_DRAGON(17, ABSTRACT_INSENTIENT), + AREA_EFFECT_CLOUD(0, ENTITY), // abk + ENDER_CRYSTAL(16, ENTITY), // aho + EVOCATION_FANGS(20, ENTITY), // ala + XP_ORB(22, ENTITY), // abs + EYE_OF_ENDER_SIGNAL(23, ENTITY), // alb + FALLING_BLOCK(24, ENTITY), // aix + FIREWORKS_ROCKET(25, ENTITY), // alc + ITEM(32, ENTITY), // aiy + LLAMA_SPIT(37, ENTITY), // ale + TNT(55, ENTITY), // aiz + SHULKER_BULLET(60, ENTITY), // alh + FISHING_BOBBER(93, ENTITY), // ais - ABSTRACT_CREATURE(-1, ABSTRACT_INSENTIENT), + LIVINGENTITY(-1, ENTITY), // abv + ARMOR_STAND(1, LIVINGENTITY), // ail + PLAYER(92, LIVINGENTITY), // aks - ABSTRACT_AGEABLE(-1, ABSTRACT_CREATURE), - VILLAGER(79, ABSTRACT_AGEABLE), + ABSTRACT_INSENTIENT(-1, LIVINGENTITY), // abw + ENDER_DRAGON(17, ABSTRACT_INSENTIENT), // ahp + + ABSTRACT_CREATURE(-1, ABSTRACT_INSENTIENT), // acd + + ABSTRACT_AGEABLE(-1, ABSTRACT_CREATURE), // abj + VILLAGER(79, ABSTRACT_AGEABLE), // akn // Animals - ABSTRACT_ANIMAL(-1, ABSTRACT_AGEABLE), - CHICKEN(7, ABSTRACT_ANIMAL), - COW(9, ABSTRACT_ANIMAL), - MOOSHROOM(47, COW), - PIG(51, ABSTRACT_ANIMAL), - POLAR_BEAR(54, ABSTRACT_ANIMAL), - RABBIT(56, ABSTRACT_ANIMAL), - SHEEP(58, ABSTRACT_ANIMAL), - TURTLE(73, ABSTRACT_ANIMAL), + ABSTRACT_ANIMAL(-1, ABSTRACT_AGEABLE), // agd + CHICKEN(7, ABSTRACT_ANIMAL), // age + COW(9, ABSTRACT_ANIMAL), // agg + MOOSHROOM(47, COW), // agi + PIG(51, ABSTRACT_ANIMAL), // agl + POLAR_BEAR(54, ABSTRACT_ANIMAL), // agm + RABBIT(56, ABSTRACT_ANIMAL), // ago + SHEEP(58, ABSTRACT_ANIMAL), // agq + TURTLE(73, ABSTRACT_ANIMAL), // agv - ABSTRACT_TAMEABLE_ANIMAL(-1, ABSTRACT_ANIMAL), - OCELOT(48, ABSTRACT_TAMEABLE_ANIMAL), - WOLF(86, ABSTRACT_TAMEABLE_ANIMAL), + ABSTRACT_TAMEABLE_ANIMAL(-1, ABSTRACT_ANIMAL), // acg + OCELOT(48, ABSTRACT_TAMEABLE_ANIMAL), // agj + WOLF(86, ABSTRACT_TAMEABLE_ANIMAL), // agy - ABSTRACT_PARROT(-1, ABSTRACT_TAMEABLE_ANIMAL), - PARROT(50, ABSTRACT_PARROT), + ABSTRACT_PARROT(-1, ABSTRACT_TAMEABLE_ANIMAL), // agr + PARROT(50, ABSTRACT_PARROT), // agk // Horses - ABSTRACT_HORSE(-1, ABSTRACT_ANIMAL), - CHESTED_HORSE(-1, ABSTRACT_HORSE), - DONKEY(11, CHESTED_HORSE), - MULE(46, CHESTED_HORSE), - LLAMA(36, CHESTED_HORSE), - HORSE(29, ABSTRACT_HORSE), - SKELETON_HORSE(63, ABSTRACT_HORSE), - ZOMBIE_HORSE(88, ABSTRACT_HORSE), + ABSTRACT_HORSE(-1, ABSTRACT_ANIMAL), // aha + CHESTED_HORSE(-1, ABSTRACT_HORSE), // agz + DONKEY(11, CHESTED_HORSE), // ahb + MULE(46, CHESTED_HORSE), // ahf + LLAMA(36, CHESTED_HORSE), // ahe + HORSE(29, ABSTRACT_HORSE), // ahc + SKELETON_HORSE(63, ABSTRACT_HORSE), // ahg + ZOMBIE_HORSE(88, ABSTRACT_HORSE), // ahi // Golem - ABSTRACT_GOLEM(-1, ABSTRACT_CREATURE), - SNOWMAN(66, ABSTRACT_GOLEM), - VILLAGER_GOLEM(80, ABSTRACT_GOLEM), - SHULKER(59, ABSTRACT_GOLEM), + ABSTRACT_GOLEM(-1, ABSTRACT_CREATURE), // agc + SNOWMAN(66, ABSTRACT_GOLEM), // ags + VILLAGER_GOLEM(80, ABSTRACT_GOLEM), // agw + SHULKER(59, ABSTRACT_GOLEM), // ajx // Fish - ABSTRACT_FISHES(-1, ABSTRACT_CREATURE), - COD_MOB(8, ABSTRACT_FISHES), - PUFFER_FISH(52, ABSTRACT_FISHES), - SALMON_MOB(57, ABSTRACT_FISHES), - TROPICAL_FISH(72, ABSTRACT_FISHES), - + ABSTRACT_FISHES(-1, ABSTRACT_CREATURE), // agb + COD_MOB(8, ABSTRACT_FISHES), // agf + PUFFER_FISH(52, ABSTRACT_FISHES), // agn + SALMON_MOB(57, ABSTRACT_FISHES), // agp + TROPICAL_FISH(72, ABSTRACT_FISHES), // agu // Monsters - ABSTRACT_MONSTER(-1, ABSTRACT_CREATURE), - BLAZE(4, ABSTRACT_MONSTER), - CREEPER(10, ABSTRACT_MONSTER), - ENDERMITE(19, ABSTRACT_MONSTER), - ENDERMAN(18, ABSTRACT_MONSTER), - GIANT(27, ABSTRACT_MONSTER), - SILVERFISH(61, ABSTRACT_MONSTER), - VEX(78, ABSTRACT_MONSTER), - WITCH(82, ABSTRACT_MONSTER), - WITHER(83, ABSTRACT_MONSTER), + ABSTRACT_MONSTER(-1, ABSTRACT_CREATURE), // ajs + BLAZE(4, ABSTRACT_MONSTER), // ajd + CREEPER(10, ABSTRACT_MONSTER), // ajf + ENDERMITE(19, ABSTRACT_MONSTER), // ajj + ENDERMAN(18, ABSTRACT_MONSTER), // aji + GIANT(27, ABSTRACT_MONSTER), // ajn + SILVERFISH(61, ABSTRACT_MONSTER), // ajy + VEX(78, ABSTRACT_MONSTER), // ake + WITCH(82, ABSTRACT_MONSTER), // akg + WITHER(83, ABSTRACT_MONSTER), // aij // Illagers - ABSTRACT_ILLAGER_BASE(-1, ABSTRACT_MONSTER), - ABSTRACT_EVO_ILLU_ILLAGER(-1, ABSTRACT_ILLAGER_BASE), - EVOCATION_ILLAGER(21, ABSTRACT_EVO_ILLU_ILLAGER), - ILLUSION_ILLAGER(31, ABSTRACT_EVO_ILLU_ILLAGER), - VINDICATION_ILLAGER(81, ABSTRACT_ILLAGER_BASE), + ABSTRACT_ILLAGER_BASE(-1, ABSTRACT_MONSTER), // ajb + ABSTRACT_EVO_ILLU_ILLAGER(-1, ABSTRACT_ILLAGER_BASE), // akb + EVOCATION_ILLAGER(21, ABSTRACT_EVO_ILLU_ILLAGER), // ajl + ILLUSION_ILLAGER(31, ABSTRACT_EVO_ILLU_ILLAGER), // ajq + VINDICATION_ILLAGER(81, ABSTRACT_ILLAGER_BASE), // akf // Skeletons - ABSTRACT_SKELETON(-1, ABSTRACT_MONSTER), - SKELETON(62, ABSTRACT_SKELETON), - STRAY(71, ABSTRACT_SKELETON), - WITHER_SKELETON(84, ABSTRACT_SKELETON), + ABSTRACT_SKELETON(-1, ABSTRACT_MONSTER), // ajc + SKELETON(62, ABSTRACT_SKELETON), // ajz + STRAY(71, ABSTRACT_SKELETON), // akd + WITHER_SKELETON(84, ABSTRACT_SKELETON), // akh // Guardians - GUARDIAN(28, ABSTRACT_MONSTER), - ELDER_GUARDIAN(15, GUARDIAN), + GUARDIAN(28, ABSTRACT_MONSTER), // ajo + ELDER_GUARDIAN(15, GUARDIAN), // ajh // Spiders - SPIDER(69, ABSTRACT_MONSTER), - CAVE_SPIDER(6, SPIDER), + SPIDER(69, ABSTRACT_MONSTER), // akc + CAVE_SPIDER(6, SPIDER), // aje // Zombies - META CHECKED - ZOMBIE(87, ABSTRACT_MONSTER), - DROWNED(14, ZOMBIE), - HUSK(30, ZOMBIE), - ZOMBIE_PIGMAN(53, ZOMBIE), - ZOMBIE_VILLAGER(89, ZOMBIE), + ZOMBIE(87, ABSTRACT_MONSTER), // aki + DROWNED(14, ZOMBIE), // ajg + HUSK(30, ZOMBIE), // ajp + ZOMBIE_PIGMAN(53, ZOMBIE), // aju + ZOMBIE_VILLAGER(89, ZOMBIE), // akj // Flying entities - ABSTRACT_FLYING(-1, ABSTRACT_INSENTIENT), - GHAST(26, ABSTRACT_FLYING), - PHANTOM(90, ABSTRACT_FLYING), + ABSTRACT_FLYING(-1, ABSTRACT_INSENTIENT), // abt + GHAST(26, ABSTRACT_FLYING), // ajm + PHANTOM(90, ABSTRACT_FLYING), // ajt - ABSTRACT_AMBIENT(-1, ABSTRACT_INSENTIENT), - BAT(3, ABSTRACT_AMBIENT), + ABSTRACT_AMBIENT(-1, ABSTRACT_INSENTIENT), // afy + BAT(3, ABSTRACT_AMBIENT), // afz - ABSTRACT_WATERMOB(-1, ABSTRACT_INSENTIENT), - SQUID(70, ABSTRACT_WATERMOB), + ABSTRACT_WATERMOB(-1, ABSTRACT_INSENTIENT), // agx + SQUID(70, ABSTRACT_WATERMOB), // agt + DOLPHIN(12, ABSTRACT_WATERMOB), // ajq // Slimes - SLIME(64, ABSTRACT_INSENTIENT), - MAGMA_CUBE(38, SLIME), + SLIME(64, ABSTRACT_INSENTIENT), // aka + MAGMA_CUBE(38, SLIME), // ajr // Hangable objects - ABSTRACT_HANGING(-1, ENTITY), - LEASH_KNOT(35, ABSTRACT_HANGING), - ITEM_FRAME(33, ABSTRACT_HANGING), - PAINTING(49, ABSTRACT_HANGING), + ABSTRACT_HANGING(-1, ENTITY), // aim + LEASH_KNOT(35, ABSTRACT_HANGING), // aio + ITEM_FRAME(33, ABSTRACT_HANGING), // ain + PAINTING(49, ABSTRACT_HANGING), // aiq - ABSTRACT_LIGHTNING(-1, ENTITY), - LIGHTNING_BOLT(91, ABSTRACT_LIGHTNING), + ABSTRACT_LIGHTNING(-1, ENTITY), // aiu + LIGHTNING_BOLT(91, ABSTRACT_LIGHTNING), // aiv // Arrows - ABSTRACT_ARROW(-1, ENTITY), - ARROW(2, ABSTRACT_ARROW), - SPECTRAL_ARROW(68, ABSTRACT_ARROW), - TRIDENT(94, ABSTRACT_ARROW), + ABSTRACT_ARROW(-1, ENTITY), // akw + ARROW(2, ABSTRACT_ARROW), // aky + SPECTRAL_ARROW(68, ABSTRACT_ARROW), // alk + TRIDENT(94, ABSTRACT_ARROW), // alq // Fireballs - ABSTRACT_FIREBALL(-1, ENTITY), - DRAGON_FIREBALL(13, ABSTRACT_FIREBALL), - FIREBALL(34, ABSTRACT_FIREBALL), - SMALL_FIREBALL(65, ABSTRACT_FIREBALL), - WITHER_SKULL(85, ABSTRACT_FIREBALL), + ABSTRACT_FIREBALL(-1, ENTITY), // akx + DRAGON_FIREBALL(13, ABSTRACT_FIREBALL), // akz + FIREBALL(34, ABSTRACT_FIREBALL), // ald + SMALL_FIREBALL(65, ABSTRACT_FIREBALL), // ali + WITHER_SKULL(85, ABSTRACT_FIREBALL), // alr // Projectiles - PROJECTILE_ABSTRACT(-1, ENTITY), - SNOWBALL(67, PROJECTILE_ABSTRACT), - ENDER_PEARL(75, PROJECTILE_ABSTRACT), - EGG(74, PROJECTILE_ABSTRACT), - POTION(77, PROJECTILE_ABSTRACT), - XP_BOTTLE(76, PROJECTILE_ABSTRACT), + PROJECTILE_ABSTRACT(-1, ENTITY), // all + SNOWBALL(67, PROJECTILE_ABSTRACT), // alj + ENDER_PEARL(75, PROJECTILE_ABSTRACT), // aln + EGG(74, PROJECTILE_ABSTRACT), // alm + POTION(77, PROJECTILE_ABSTRACT), // alp + XP_BOTTLE(76, PROJECTILE_ABSTRACT), // alo // Vehicles - MINECART_ABSTRACT(-1, ENTITY), - CHESTED_MINECART_ABSTRACT(-1, MINECART_ABSTRACT), - CHEST_MINECART(40, CHESTED_MINECART_ABSTRACT), - HOPPER_MINECART(43, CHESTED_MINECART_ABSTRACT), - MINECART(39, MINECART_ABSTRACT), - FURNACE_MINECART(42, MINECART_ABSTRACT), - COMMANDBLOCK_MINECART(41, MINECART_ABSTRACT), - TNT_MINECART(45, MINECART_ABSTRACT), - SPAWNER_MINECART(44, MINECART_ABSTRACT), - BOAT(5, ENTITY); + MINECART_ABSTRACT(-1, ENTITY), // alt + CHESTED_MINECART_ABSTRACT(-1, MINECART_ABSTRACT), // alu + CHEST_MINECART(40, CHESTED_MINECART_ABSTRACT), // alx + HOPPER_MINECART(43, CHESTED_MINECART_ABSTRACT), // ama + MINECART(39, MINECART_ABSTRACT), // alw + FURNACE_MINECART(42, MINECART_ABSTRACT), // alz + COMMANDBLOCK_MINECART(41, MINECART_ABSTRACT), // aly + TNT_MINECART(45, MINECART_ABSTRACT), // amc + SPAWNER_MINECART(44, MINECART_ABSTRACT), // amb + BOAT(5, ENTITY); // alv private final int id; diff --git a/core/src/main/java/nl/matsv/viabackwards/protocol/protocol1_12_2to1_13/packets/EntityPackets1_13.java b/core/src/main/java/nl/matsv/viabackwards/protocol/protocol1_12_2to1_13/packets/EntityPackets1_13.java index 9eab3679..701c4a49 100644 --- a/core/src/main/java/nl/matsv/viabackwards/protocol/protocol1_12_2to1_13/packets/EntityPackets1_13.java +++ b/core/src/main/java/nl/matsv/viabackwards/protocol/protocol1_12_2to1_13/packets/EntityPackets1_13.java @@ -5,6 +5,7 @@ import nl.matsv.viabackwards.api.entities.storage.EntityData; import nl.matsv.viabackwards.api.entities.storage.MetaStorage; import nl.matsv.viabackwards.api.entities.types.AbstractEntityType; import nl.matsv.viabackwards.api.entities.types.EntityType1_13; +import nl.matsv.viabackwards.api.entities.types.EntityType1_13.EntityType; import nl.matsv.viabackwards.api.rewriters.EntityRewriter; import nl.matsv.viabackwards.protocol.protocol1_12_2to1_13.Protocol1_12_2To1_13; import nl.matsv.viabackwards.protocol.protocol1_12_2to1_13.data.EntityTypeMapping; @@ -44,7 +45,7 @@ public class EntityPackets1_13 extends EntityRewriter { @Override public void handle(PacketWrapper wrapper) throws Exception { byte type = wrapper.get(Type.BYTE, 0); - EntityType1_13.EntityType entityType = EntityType1_13.getTypeFromId(type, true); + EntityType entityType = EntityType1_13.getTypeFromId(type, true); if (entityType == null) { ViaBackwards.getPlatform().getLogger().warning("Could not find 1.13 entity type " + type); return; @@ -96,7 +97,7 @@ public class EntityPackets1_13 extends EntityRewriter { addTrackedEntity( wrapper.user(), wrapper.get(Type.VAR_INT, 0), - EntityType1_13.EntityType.XP_ORB + EntityType.XP_ORB ); } }); @@ -115,7 +116,7 @@ public class EntityPackets1_13 extends EntityRewriter { addTrackedEntity( wrapper.user(), wrapper.get(Type.VAR_INT, 0), - EntityType1_13.EntityType.LIGHTNING_BOLT + EntityType.LIGHTNING_BOLT ); } }); @@ -144,7 +145,7 @@ public class EntityPackets1_13 extends EntityRewriter { @Override public void handle(PacketWrapper wrapper) throws Exception { int type = wrapper.get(Type.VAR_INT, 1); - EntityType1_13.EntityType entityType = EntityType1_13.getTypeFromId(type, false); + EntityType entityType = EntityType1_13.getTypeFromId(type, false); addTrackedEntity( wrapper.user(), wrapper.get(Type.VAR_INT, 0), @@ -213,7 +214,7 @@ public class EntityPackets1_13 extends EntityRewriter { addTrackedEntity( wrapper.user(), wrapper.get(Type.VAR_INT, 0), - EntityType1_13.EntityType.PLAYER + EntityType.PLAYER ); } }); @@ -248,7 +249,7 @@ public class EntityPackets1_13 extends EntityRewriter { addTrackedEntity( wrapper.user(), wrapper.get(Type.VAR_INT, 0), - EntityType1_13.EntityType.PAINTING + EntityType.PAINTING ); } }); @@ -334,8 +335,26 @@ public class EntityPackets1_13 extends EntityRewriter { @Override protected void registerRewrites() { + // Rewrite new Entity 'drowned' + regEntType(EntityType.DROWNED, EntityType.ZOMBIE_VILLAGER).mobName("Drowned"); - // Rewrite types + // Fishy + regEntType(EntityType.COD_MOB, EntityType.SQUID).mobName("Cod"); + regEntType(EntityType.SALMON_MOB, EntityType.SQUID).mobName("Salmon"); + regEntType(EntityType.PUFFER_FISH, EntityType.SQUID).mobName("Puffer Fish"); + regEntType(EntityType.TROPICAL_FISH, EntityType.SQUID).mobName("Tropical Fish"); + + // Phantom + regEntType(EntityType.PHANTOM, EntityType.PARROT).mobName("Phantom"); + + // Dolphin + regEntType(EntityType.DOLPHIN, EntityType.SQUID).mobName("Dolphin"); + + // Turtle + regEntType(EntityType.TURTLE, EntityType.OCELOT).mobName("Turtle"); + + + // Rewrite Meta types this.registerMetaHandler().handle(e -> { Metadata meta = e.getData(); int typeId = meta.getMetaType().getTypeID(); @@ -364,7 +383,6 @@ public class EntityPackets1_13 extends EntityRewriter { return e.getData(); }); - // TODO Remove everything for now this.registerMetaHandler().removed();