Hello guys,
as you can see in the Title, i have a problem with natural spawning of my custom entities. My forge version is currently 1.16.5-36.1.18.
For the spawning i use the BiomeLoadingEvent: (This is in my CommonEvents.class)
@SubscribeEvent
public void registerEntitySpawns(BiomeLoadingEvent spawn) {
if(spawn.getCategory() != Biome.Category.NETHER || spawn.getCategory() != Biome.Category.OCEAN || spawn.getCategory() != Biome.Category.THEEND) {
spawn.getSpawns().addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(ModEntityTypes.PLUS.get(), 14, 0, 1));
spawn.getSpawns().addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(ModEntityTypes.DEMI_HOLLOW.get(), 14, 0, 1));
}
System.out.println("Spawner: " + spawn.getSpawns().getSpawner(EntityClassification.CREATURE));
}
Main.class
private void setup(final FMLCommonSetupEvent event)
{
event.enqueueWork(() -> {
//Register
....
EntitySpawnPlacementRegistry.register(ModEntityTypes.PLUS.get(), EntitySpawnPlacementRegistry.PlacementType.ON_GROUND, Heightmap.Type.MOTION_BLOCKING_NO_LEAVES, EntityPlus::checkGhostSpawnRules);
EntitySpawnPlacementRegistry.register(ModEntityTypes.DEMI_HOLLOW.get(), EntitySpawnPlacementRegistry.PlacementType.ON_GROUND, Heightmap.Type.MOTION_BLOCKING_NO_LEAVES, EntityDemiHollow::checkGhostSpawnRules);
MinecraftForge.EVENT_BUS.register(new CommonEvents());
});
}
The problem is: If im using EntityClassification.CREATURE then nothing happens but if im using AMBIENT, WATER_CREATURE or MONSTER than the mob spawn.
AMBIENT: My custom Mob spawn when a minecraft:bat should be spawned (A bat is also an AMBIENT)
WATER_CREATURE: After 30 - 45 seconds i have an army of Plus (Almost every second a Plus gets spawned)
MONSTER: Only when a monster can spawn, my custom entity spawn too (Im using custom SpawnRules without any Lightlevel check but my entities still only spawn at night or thunder)
There must be something that i messed up but i cant figure it out myself right now.
Thanks in advance for helping out.