From 6ceba52f95d73648c17dda0d4d857c34dc8c28bb Mon Sep 17 00:00:00 2001 From: Lazzzycatwastaken Date: Sun, 23 Mar 2025 18:12:26 +0100 Subject: [PATCH] Added beached patrol boat --- src/main/java/com/hbm/main/StructureManager.java | 1 + .../com/hbm/world/gen/NTMWorldGenerator.java | 11 ++++++++++- .../assets/hbm/structures/beached_patrol.nbt | Bin 0 -> 9554 bytes 3 files changed, 11 insertions(+), 1 deletion(-) create mode 100644 src/main/resources/assets/hbm/structures/beached_patrol.nbt diff --git a/src/main/java/com/hbm/main/StructureManager.java b/src/main/java/com/hbm/main/StructureManager.java index 7ca8d62e1..8387ce48c 100644 --- a/src/main/java/com/hbm/main/StructureManager.java +++ b/src/main/java/com/hbm/main/StructureManager.java @@ -58,6 +58,7 @@ public class StructureManager { public static final NBTStructure crashed_vertibird = new NBTStructure(new ResourceLocation(RefStrings.MODID, "structures/crashed-vertibird.nbt")); public static final NBTStructure aircraft_carrier = new NBTStructure(new ResourceLocation(RefStrings.MODID, "structures/aircraft_carrier.nbt")); public static final NBTStructure oil_rig = new NBTStructure(new ResourceLocation(RefStrings.MODID, "structures/oil_rig.nbt")); + public static final NBTStructure beached_patrol = new NBTStructure(new ResourceLocation(RefStrings.MODID, "structures/beached_patrol.nbt")); // public static final NBTStructure test_rot = new NBTStructure(new ResourceLocation(RefStrings.MODID, "structures/test-rot.nbt")); // public static final NBTStructure test_jigsaw = new NBTStructure(new ResourceLocation(RefStrings.MODID, "structures/test-jigsaw.nbt")); diff --git a/src/main/java/com/hbm/world/gen/NTMWorldGenerator.java b/src/main/java/com/hbm/world/gen/NTMWorldGenerator.java index 4fc082b95..9d8f1d5dc 100644 --- a/src/main/java/com/hbm/world/gen/NTMWorldGenerator.java +++ b/src/main/java/com/hbm/world/gen/NTMWorldGenerator.java @@ -37,6 +37,8 @@ public class NTMWorldGenerator implements IWorldGenerator { public NTMWorldGenerator() { final List invalidBiomes = Arrays.asList(new BiomeGenBase[] {BiomeGenBase.ocean, BiomeGenBase.river, BiomeGenBase.frozenOcean, BiomeGenBase.frozenRiver, BiomeGenBase.deepOcean}); final List oceanBiomes = Arrays.asList(new BiomeGenBase[] { BiomeGenBase.ocean, BiomeGenBase.deepOcean }); + final List beachBiomes = Arrays.asList(new BiomeGenBase[] { BiomeGenBase.beach, BiomeGenBase.stoneBeach, BiomeGenBase.coldBeach }); + NBTStructure.registerStructure(0, new SpawnCondition() {{ canSpawn = biome -> !invalidBiomes.contains(biome); @@ -74,7 +76,14 @@ public class NTMWorldGenerator implements IWorldGenerator { structure = new JigsawPiece("oil_rig", StructureManager.oil_rig); maxHeight = 48; minHeight = 47; - spawnWeight = 4; + spawnWeight = 3; + }}); + + NBTStructure.registerStructure(0, new SpawnCondition() {{ + canSpawn = beachBiomes::contains; + structure = new JigsawPiece("beached_patrol", StructureManager.beached_patrol); + spawnWeight = 8; + maxHeight = 65; }}); NBTStructure.registerNullWeight(0, 12); diff --git a/src/main/resources/assets/hbm/structures/beached_patrol.nbt b/src/main/resources/assets/hbm/structures/beached_patrol.nbt new file mode 100644 index 0000000000000000000000000000000000000000..45e6face82b6979d5605860b194e580c5019626d GIT binary patch literal 9554 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 F{{VP{^Tz-H literal 0 HcmV?d00001