diff --git a/src/main/java/com/minelittlepony/unicopia/entity/UEntities.java b/src/main/java/com/minelittlepony/unicopia/entity/UEntities.java index 96ff33a7..bea16750 100644 --- a/src/main/java/com/minelittlepony/unicopia/entity/UEntities.java +++ b/src/main/java/com/minelittlepony/unicopia/entity/UEntities.java @@ -3,8 +3,11 @@ package com.minelittlepony.unicopia.entity; import java.util.List; import com.minelittlepony.unicopia.Unicopia; + +import net.fabricmc.fabric.api.entity.FabricEntityTypeBuilder; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityCategory; +import net.minecraft.entity.EntityDimensions; import net.minecraft.entity.EntityType; import net.minecraft.util.Identifier; import net.minecraft.util.registry.Registry; @@ -17,31 +20,28 @@ import net.minecraft.world.biome.PlainsBiome; import net.minecraft.world.biome.RiverBiome; public interface UEntities { - EntityType SPELLBOOK = register("spellbook", EntityType.Builder.create(SpellbookEntity::new, EntityCategory.MISC).setDimensions(0.6f, 0.6f)); - EntityType MAGIC_SPELL = register("magic_spell", EntityType.Builder.create(SpellcastEntity::new, EntityCategory.MISC).setDimensions(0.6F, 0.25F)); - EntityType CLOUD = register("cloud", EntityType.Builder.create(CloudEntity::new, EntityCategory.CREATURE)); - EntityType WILD_CLOUD = register("wild_cloud", EntityType.Builder.create(WildCloudEntity::new, EntityCategory.CREATURE)); - EntityType RACING_CLOUD = register("racing_cloud", EntityType.Builder.create(RacingCloudEntity::new, EntityCategory.CREATURE)); - EntityType CONSTRUCTION_CLOUD = register("construction_cloud", EntityType.Builder.create(ConstructionCloudEntity::new, EntityCategory.CREATURE)); + EntityType SPELLBOOK = register("spellbook", FabricEntityTypeBuilder.create(EntityCategory.MISC, SpellbookEntity::new).size(EntityDimensions.changing(0.6f, 0.6f))); + EntityType MAGIC_SPELL = register("magic_spell", FabricEntityTypeBuilder.create(EntityCategory.MISC, SpellcastEntity::new).size(EntityDimensions.changing(0.6F, 0.25F))); + EntityType CLOUD = register("cloud", FabricEntityTypeBuilder.create(EntityCategory.CREATURE, CloudEntity::new)); + EntityType WILD_CLOUD = register("wild_cloud", FabricEntityTypeBuilder.create(EntityCategory.CREATURE, WildCloudEntity::new)); + EntityType RACING_CLOUD = register("racing_cloud", FabricEntityTypeBuilder.create(EntityCategory.CREATURE, RacingCloudEntity::new)); + EntityType CONSTRUCTION_CLOUD = register("construction_cloud", FabricEntityTypeBuilder.create(EntityCategory.CREATURE, ConstructionCloudEntity::new)); - EntityType RAINBOW = register("rainbow", EntityType.Builder.create(RainbowEntity::new, EntityCategory.AMBIENT)); - EntityType RAINBOW_SPAWNER = register("rainbow_spawner", EntityType.Builder.create(RainbowEntity.Spawner::new, EntityCategory.MISC)); + EntityType RAINBOW = register("rainbow", FabricEntityTypeBuilder.create(EntityCategory.AMBIENT, RainbowEntity::new)); + EntityType RAINBOW_SPAWNER = register("rainbow_spawner", FabricEntityTypeBuilder.create(EntityCategory.MISC, RainbowEntity.Spawner::new)); - EntityType CUCCOON = register("cuccoon", EntityType.Builder.create(CuccoonEntity::new, EntityCategory.MISC).setDimensions(1.5F, 1.6F)); + EntityType CUCCOON = register("cuccoon", FabricEntityTypeBuilder.create(EntityCategory.MISC, CuccoonEntity::new).size(EntityDimensions.changing(1.5F, 1.6F))); - EntityType BUTTERFLY = register("butterfly", EntityType.Builder.create(ButterflyEntity::new, EntityCategory.AMBIENT)); + EntityType BUTTERFLY = register("butterfly", FabricEntityTypeBuilder.create(EntityCategory.AMBIENT, ButterflyEntity::new)); - EntityType THROWN_ITEM = register("thrown_item", EntityType.Builder.create(ProjectileEntity::new, EntityCategory.MISC)); - EntityType THROWN_SPEAR = register("thrown_spear", EntityType.Builder.create(SpearEntity::new, EntityCategory.MISC)); + EntityType THROWN_ITEM = register("thrown_item", FabricEntityTypeBuilder.create(EntityCategory.MISC, ProjectileEntity::new).trackable(100, 10)); + EntityType THROWN_SPEAR = register("thrown_spear", FabricEntityTypeBuilder.create(EntityCategory.MISC, SpearEntity::new).trackable(100, 10)); //builder.creature(CloudEntity.class, "cloud").withEgg(0x4169e1, 0x7fff00), //builder.creature(ButterflyEntity.class, "butterfly").withEgg(0x222200, 0xaaeeff), - // builder.projectile(ProjectileEntity.class, "thrown_item", 100, 10), - // builder.projectile(SpearEntity.class, "spear", 100, 10) - static EntityType register(String name, EntityType.Builder builder) { - name = Unicopia.MODID + ":" + name; - return Registry.register(Registry.ENTITY_TYPE, new Identifier(name), builder.build(name)); + static EntityType register(String name, FabricEntityTypeBuilder builder) { + return Registry.register(Registry.ENTITY_TYPE, new Identifier(Unicopia.MODID, name), builder.build()); } static void bootstrap() {