commit 5664245ffdadef9dd7116c9b50ff7c7a38d7cde7 from: TechSupportRed <120854107+TechSupportRed@users.noreply.github.com> via: GitHub date: Wed Dec 21 14:18:52 2022 UTC 1.19 Entity Generation Fix Made capybaras extremely rare to spawn! commit - 7be162207005f64cc8a5eec5d1273dafcdd78997 commit + 5664245ffdadef9dd7116c9b50ff7c7a38d7cde7 blob - 0038b8c1182b2acfa4def34f8218b70dd9147d3f blob + d0cdcf0d9bb40996fc386910243a382a017d592c --- src/main/java/com/techsupportred/capybaramod/capybaramod.java +++ src/main/java/com/techsupportred/capybaramod/capybaramod.java @@ -9,6 +9,7 @@ import net.minecraft.world.entity.animal.Animal; import net.minecraft.world.level.levelgen.Heightmap; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.eventbus.api.IEventBus; +import net.minecraftforge.eventbus.api.SubscribeEvent; import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent; import net.minecraftforge.fml.event.lifecycle.FMLCommonSetupEvent; @@ -21,36 +22,35 @@ import com.techsupportred.capybaramod.entity.ModEntity @Mod(capybaramod.MOD_ID) public class capybaramod { public static final String MOD_ID = "capybaramod"; - // Directly reference a slf4j logger private static final Logger LOGGER = LogUtils.getLogger(); public capybaramod() { - IEventBus eventBus = FMLJavaModLoadingContext.get().getModEventBus(); + IEventBus modEventBus = FMLJavaModLoadingContext.get().getModEventBus(); - ModItems.register(eventBus); + ModItems.register(modEventBus); - ModEntityTypes.register(eventBus); + ModEntityTypes.register(modEventBus); - eventBus.addListener(this::setup); - eventBus.addListener(this::clientSetup); - GeckoLib.initialize(); - // Register ourselves for server and other game events we are interested in + modEventBus.addListener(this::commonSetup); + MinecraftForge.EVENT_BUS.register(this); } - private void clientSetup(final FMLClientSetupEvent event) { - EntityRenderers.register(ModEntityTypes.CAPYBARA.get(), CapybaraRenderer::new); - - } - - private void setup(final FMLCommonSetupEvent event) { + private void commonSetup(final FMLCommonSetupEvent event) { event.enqueueWork(() -> { SpawnPlacements.register(ModEntityTypes.CAPYBARA.get(), - SpawnPlacements.Type.ON_GROUND, - Heightmap.Types.MOTION_BLOCKING_NO_LEAVES, + SpawnPlacements.Type.ON_GROUND, Heightmap.Types.MOTION_BLOCKING_NO_LEAVES, Animal::checkAnimalSpawnRules); - }); -}} \ No newline at end of file + } + + @Mod.EventBusSubscriber(modid = MOD_ID, bus = Mod.EventBusSubscriber.Bus.MOD) + public static class ClientModEvents { + @SubscribeEvent + public static void onClientSetup(FMLClientSetupEvent event) { + EntityRenderers.register(ModEntityTypes.CAPYBARA.get(), CapybaraRenderer::new); + } + } +} \ No newline at end of file blob - 2d04225fcf4c5b297c59e04f9065aa59ebdebde0 blob + a8e98156e78e3539542eeec6963b050523189194 --- src/main/java/com/techsupportred/capybaramod/entity/ModEntityTypes.java +++ src/main/java/com/techsupportred/capybaramod/entity/ModEntityTypes.java @@ -17,7 +17,7 @@ public class ModEntityTypes { public static final RegistryObject> CAPYBARA = ENTITY_TYPES.register("capybara", () -> EntityType.Builder.of(CapybaraEntity::new, MobCategory.CREATURE) - .sized(0.8f, 1f) + .sized(0.4f, 1.5f) .build(new ResourceLocation(capybaramod.MOD_ID, "capybara").toString())); blob - /dev/null blob + 8b7f8611a7e77260d1fa6e9816a4d69e7b881d71 (mode 644) --- /dev/null +++ src/main/java/com/techsupportred/capybaramod/event/ModEvents.java @@ -0,0 +1,17 @@ +package com.techsupportred.capybaramod.event; + +import com.techsupportred.capybaramod.capybaramod; +import com.techsupportred.capybaramod.entity.ModEntityTypes; +import com.techsupportred.capybaramod.entity.custom.CapybaraEntity; +import net.minecraftforge.event.entity.EntityAttributeCreationEvent; +import net.minecraftforge.eventbus.api.SubscribeEvent; +import net.minecraftforge.fml.common.Mod; + +@Mod.EventBusSubscriber(modid = capybaramod.MOD_ID, bus = Mod.EventBusSubscriber.Bus.MOD) +public class ModEvents { + + @SubscribeEvent + public static void entityAttributeEvent(EntityAttributeCreationEvent event) { + event.put(ModEntityTypes.CAPYBARA.get(), CapybaraEntity.setAttributes()); + } +} \ No newline at end of file