Skip to content

Commit

Permalink
angler fish now spawn in caverns
Browse files Browse the repository at this point in the history
  • Loading branch information
NewJumper committed Mar 29, 2024
1 parent ef37a53 commit 6cef4e4
Show file tree
Hide file tree
Showing 5 changed files with 18 additions and 4 deletions.
@@ -1,8 +1,8 @@
// 1.20.1 2024-01-06T18:09:35.1430196 Registries
// 1.20.1 2024-03-29T12:37:01.6518821 Registries
65c8c67a4ec7ef0ce6846fb2f4d921cc6ceb02e2 data/deeperdarker/damage_type/bite.json
0b65c61bd1e5086d0f3685566cc6cecf6e324516 data/deeperdarker/damage_type/ring.json
67f8cd0621b1c3614da8c1910f6b7bcb61660293 data/deeperdarker/dimension_type/otherside.json
77fa1d6c4e5f29aaa620ea412ff7be9fe06d2c78 data/deeperdarker/worldgen/biome/blooming_caverns.json
9b2c458e9a8d4dff2acd71cfcd27dcd84dcb01d4 data/deeperdarker/worldgen/biome/blooming_caverns.json
4491dd6887a8760b77f9a28406c3e4c0535b108d data/deeperdarker/worldgen/biome/deeplands.json
bd2c433caf3a3f7dfff3668a68dbdf56fa994df5 data/deeperdarker/worldgen/biome/echoing_forest.json
06d29b9291ed3a63be90750a8c6f182e0c168b7b data/deeperdarker/worldgen/biome/overcast_columns.json
Expand Down
Expand Up @@ -67,6 +67,12 @@
"creature": [],
"misc": [],
"monster": [
{
"type": "deeperdarker:angler_fish",
"maxCount": 5,
"minCount": 3,
"weight": 6
},
{
"type": "deeperdarker:sculk_snapper",
"maxCount": 2,
Expand Down
3 changes: 1 addition & 2 deletions src/main/java/com/kyanite/deeperdarker/DeeperDarker.java
Expand Up @@ -44,7 +44,6 @@
import net.minecraft.world.entity.Mob;
import net.minecraft.world.entity.MobSpawnType;
import net.minecraft.world.entity.SpawnPlacements;
import net.minecraft.world.entity.animal.WaterAnimal;
import net.minecraft.world.item.BlockItem;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.Items;
Expand Down Expand Up @@ -160,7 +159,7 @@ private void registerAttributes(EntityAttributeCreationEvent event) {
}

private void registerSpawnPlacements(SpawnPlacementRegisterEvent event) {
event.register(DDEntities.ANGLER_FISH.get(), SpawnPlacements.Type.IN_WATER, Heightmap.Types.MOTION_BLOCKING_NO_LEAVES, WaterAnimal::checkSurfaceWaterAnimalSpawnRules, SpawnPlacementRegisterEvent.Operation.REPLACE);
event.register(DDEntities.ANGLER_FISH.get(), SpawnPlacements.Type.IN_WATER, Heightmap.Types.MOTION_BLOCKING_NO_LEAVES, AnglerFish::checkSpawnRules, SpawnPlacementRegisterEvent.Operation.REPLACE);
event.register(DDEntities.SCULK_CENTIPEDE.get(), SpawnPlacements.Type.ON_GROUND, Heightmap.Types.MOTION_BLOCKING_NO_LEAVES, Mob::checkMobSpawnRules, SpawnPlacementRegisterEvent.Operation.REPLACE);
event.register(DDEntities.SCULK_SNAPPER.get(), SpawnPlacements.Type.ON_GROUND, Heightmap.Types.MOTION_BLOCKING_NO_LEAVES, Mob::checkMobSpawnRules, SpawnPlacementRegisterEvent.Operation.REPLACE);
event.register(DDEntities.SHATTERED.get(), SpawnPlacements.Type.ON_GROUND, Heightmap.Types.MOTION_BLOCKING_NO_LEAVES, Mob::checkMobSpawnRules, SpawnPlacementRegisterEvent.Operation.REPLACE);
Expand Down
@@ -1,7 +1,9 @@
package com.kyanite.deeperdarker.content.entities;

import net.minecraft.core.BlockPos;
import net.minecraft.sounds.SoundEvent;
import net.minecraft.sounds.SoundEvents;
import net.minecraft.util.RandomSource;
import net.minecraft.world.entity.*;
import net.minecraft.world.entity.ai.attributes.AttributeSupplier;
import net.minecraft.world.entity.ai.attributes.Attributes;
Expand All @@ -15,6 +17,8 @@
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.ServerLevelAccessor;
import net.minecraft.world.level.block.Blocks;

@SuppressWarnings("NullableProblems")
public class AnglerFish extends AbstractFish {
Expand Down Expand Up @@ -63,6 +67,10 @@ public boolean validTarget(LivingEntity entity) {
return entity != null && entity.isInWater();
}

public static boolean checkSpawnRules(EntityType<? extends LivingEntity> pType, ServerLevelAccessor pLevel, MobSpawnType pSpawnType, BlockPos pPos, RandomSource pRandom) {
return pLevel.getBlockState(pPos).is(Blocks.WATER);
}

@Override
public ItemStack getBucketItemStack() {
return null;
Expand Down
Expand Up @@ -101,6 +101,7 @@ private static Biome echoingForest(HolderGetter<PlacedFeature> placedFeatures, H

private static Biome bloomingCaverns(HolderGetter<PlacedFeature> placedFeatures, HolderGetter<ConfiguredWorldCarver<?>> worldCarvers) {
MobSpawnSettings.Builder mobSpawnBuilder = new MobSpawnSettings.Builder();
mobSpawnBuilder.addSpawn(MobCategory.MONSTER, new MobSpawnSettings.SpawnerData(DDEntities.ANGLER_FISH.get(), 6, 3, 5));
mobSpawnBuilder.addSpawn(MobCategory.MONSTER, new MobSpawnSettings.SpawnerData(DDEntities.SCULK_SNAPPER.get(), 1, 1, 2));

BiomeGenerationSettings.Builder biomeBuilder = new BiomeGenerationSettings.Builder(placedFeatures, worldCarvers);
Expand Down

0 comments on commit 6cef4e4

Please sign in to comment.