labubu funk

This commit is contained in:
Lazzzycatwastaken 2025-08-27 15:28:38 +02:00
parent 7084dc919a
commit c8bf809e9f
3 changed files with 69 additions and 69 deletions

View File

@ -40,8 +40,8 @@ public class HbmWorld {
private static void registerNTMFeatures() {
CivilianFeatures.registerComponents();
OfficeFeatures.registerComponents();
RuinFeatures.registerComponents();
// RuinFeatures.registerComponents();
BunkerComponents.registerComponents();
MapGenStructureIO.func_143031_a(SiloComponent.class, "NTMSiloComponent");
}
}
}

View File

@ -15,10 +15,10 @@ import com.hbm.world.gen.component.CivilianFeatures.NTMLab2;
import com.hbm.world.gen.component.CivilianFeatures.RuralHouse1;
import com.hbm.world.gen.component.OfficeFeatures.LargeOffice;
import com.hbm.world.gen.component.OfficeFeatures.LargeOfficeCorner;
import com.hbm.world.gen.component.RuinFeatures.NTMRuin1;
import com.hbm.world.gen.component.RuinFeatures.NTMRuin2;
import com.hbm.world.gen.component.RuinFeatures.NTMRuin3;
import com.hbm.world.gen.component.RuinFeatures.NTMRuin4;
//import com.hbm.world.gen.component.RuinFeatures.NTMRuin1;
//import com.hbm.world.gen.component.RuinFeatures.NTMRuin2;
//import com.hbm.world.gen.component.RuinFeatures.NTMRuin3;
//import com.hbm.world.gen.component.RuinFeatures.NTMRuin4;
import com.hbm.world.gen.component.SiloComponent;
import net.minecraft.world.World;
@ -124,26 +124,26 @@ public class MapGenNTMFeatures extends MapGenStructure {
*/
//TODO: Do something about this so it's nice-looking and easily readable. Plus, test compatibility against mods like BoP
if(rand.nextInt(3) == 0) { //Empty Ruin Structures
switch(rand.nextInt(4)) {
case 0:
NTMRuin1 ruin1 = new NTMRuin1(rand, i, j);
this.components.add(ruin1);
break;
case 1:
NTMRuin2 ruin2 = new NTMRuin2(rand, i, j);
this.components.add(ruin2);
break;
case 2:
NTMRuin3 ruin3 = new NTMRuin3(rand, i, j);
this.components.add(ruin3);
break;
case 3:
NTMRuin4 ruin4 = new NTMRuin4(rand, i, j);
this.components.add(ruin4);
}
// if(rand.nextInt(3) == 0) { //Empty Ruin Structures
// switch(rand.nextInt(4)) {
// case 0:
// NTMRuin1 ruin1 = new NTMRuin1(rand, i, j);
// this.components.add(ruin1);
// break;
// case 1:
// NTMRuin2 ruin2 = new NTMRuin2(rand, i, j);
// this.components.add(ruin2);
// break;
// case 2:
// NTMRuin3 ruin3 = new NTMRuin3(rand, i, j);
// this.components.add(ruin3);
// break;
// case 3:
// NTMRuin4 ruin4 = new NTMRuin4(rand, i, j);
// this.components.add(ruin4);
// }
} else if(biome.heightVariation <= 0.25F && rand.nextInt(10) == 0) { //for now our only restriction is kinda-flat biomes. that and chance might change idk
if(biome.heightVariation <= 0.25F && rand.nextInt(10) == 0) { //for now our only restriction is kinda-flat biomes. that and chance might change idk
SiloComponent silo = new SiloComponent(rand, i, j);
this.components.add(silo);
} else if(biome.temperature >= 1.0 && biome.rainfall == 0 && !(biome instanceof BiomeGenMesa)) { //Desert & Savannah

View File

@ -8,42 +8,42 @@ import net.minecraft.init.Blocks;
import net.minecraft.world.World;
import net.minecraft.world.gen.structure.MapGenStructureIO;
import net.minecraft.world.gen.structure.StructureBoundingBox;
// Idk what i should do with these if you read this bob do whatever since it's not used anywhere
public class RuinFeatures {
public static void registerComponents() {
MapGenStructureIO.func_143031_a(NTMRuin1.class, "NTMRuin1");
MapGenStructureIO.func_143031_a(NTMRuin2.class, "NTMRuin2");
MapGenStructureIO.func_143031_a(NTMRuin3.class, "NTMRuin3");
MapGenStructureIO.func_143031_a(NTMRuin4.class, "NTMRuin4");
}
public static class NTMRuin1 extends Component {
private static ConcreteBricks RandomConcreteBricks = new ConcreteBricks();
public NTMRuin1() {
super();
}
public NTMRuin1(Random rand, int minX, int minZ) {
super(rand, minX, 64, minZ, 8, 6, 10);
}
@Override
public boolean addComponentParts(World world, Random rand, StructureBoundingBox box) {
//System.out.println(this.coordBaseMode);
if(!this.setAverageHeight(world, box, this.boundingBox.minY)) {
return false;
}
//System.out.println("" + this.boundingBox.minX + ", " + this.boundingBox.minY + ", " + this.boundingBox.minZ);
placeFoundationUnderneath(world, Blocks.stonebrick, 0, 0, 0, 8, 10, -1, box);
int pillarMetaWE = this.getPillarMeta(4);
int pillarMetaNS = this.getPillarMeta(8);
this.fillWithBlocks(world, box, 0, 0, 0, 0, 6, 0, ModBlocks.concrete_pillar, Blocks.air, false); //Back Wall
this.fillWithMetadataBlocks(world, box, 1, 3, 0, 3, 3, 0, ModBlocks.concrete_pillar, pillarMetaWE, Blocks.air, 0, false);
this.fillWithBlocks(world, box, 4, 0, 0, 4, 6 - 1, 0, ModBlocks.concrete_pillar, Blocks.air, false);
@ -83,39 +83,39 @@ public class RuinFeatures {
this.fillWithRandomizedBlocks(world, box, 8, 0, 6, 8, 0, 6, false, rand, RandomConcreteBricks);
this.fillWithRandomizedBlocks(world, box, 8, 0, 10 - 2, 8, 1, 10 - 1, false, rand, RandomConcreteBricks);
this.fillWithRandomizedBlocks(world, box, 8, 2, 10 - 1, 8, 2, 10 - 1, false, rand, RandomConcreteBricks);
this.randomlyFillWithBlocks(world, box, rand, 0.25F, 1, 0, 1, 8 - 1, 0, 10 - 1, Blocks.gravel, Blocks.air, false);
return true;
}
}
public static class NTMRuin2 extends Component {
private static ConcreteBricks RandomConcreteBricks = new ConcreteBricks();
public NTMRuin2() {
super();
}
public NTMRuin2(Random rand, int minX, int minZ) {
super(rand, minX, 64, minZ, 7, 5, 10);
}
@Override
public boolean addComponentParts(World world, Random rand, StructureBoundingBox box) {
//System.out.println(this.coordBaseMode);
if(!this.setAverageHeight(world, box, this.boundingBox.minY)) {
return false;
}
//System.out.println("" + this.boundingBox.minX + ", " + this.boundingBox.minY + ", " + this.boundingBox.minZ);
placeFoundationUnderneath(world, Blocks.stonebrick, 0, 0, 0, 7, 10, -1, box);
int pillarMetaWE = this.getPillarMeta(4);
int pillarMetaNS = this.getPillarMeta(8);
this.fillWithBlocks(world, box, 0, 0, 0, 0, 3, 0, ModBlocks.concrete_pillar, Blocks.air, false); //Back Wall
this.fillWithMetadataBlocks(world, box, 1, 3, 0, 7 - 1, 3, 0, ModBlocks.concrete_pillar, pillarMetaWE, Blocks.air, 0, false);
this.fillWithBlocks(world, box, 7, 0, 0, 7, 5, 0, ModBlocks.concrete_pillar, Blocks.air, false);
@ -146,40 +146,40 @@ public class RuinFeatures {
this.fillWithRandomizedBlocks(world, box, 7, 0, 6, 7, 0, 10 - 1, false, rand, RandomConcreteBricks);
this.fillWithRandomizedBlocks(world, box, 7, 1, 6, 7, 1, 7, false, rand, RandomConcreteBricks);
this.fillWithRandomizedBlocks(world, box, 7, 1, 10 - 1, 7, 2, 10 - 1, false, rand, RandomConcreteBricks);
this.randomlyFillWithBlocks(world, box, rand, 0.25F, 1, 0, 1, 7 - 1, 0, 10 - 1, Blocks.gravel, Blocks.air, false);
return true;
}
}
public static class NTMRuin3 extends Component {
private static ConcreteBricks RandomConcreteBricks = new ConcreteBricks();
public NTMRuin3() {
super();
}
public NTMRuin3(Random rand, int minX, int minZ) {
super(rand, minX, 64, minZ, 8, 3, 10);
}
@Override
public boolean addComponentParts(World world, Random rand, StructureBoundingBox box) {
//System.out.println(this.coordBaseMode);
if(!this.setAverageHeight(world, box, this.boundingBox.minY)) {
return false;
}
//System.out.println("" + this.boundingBox.minX + ", " + this.boundingBox.minY + ", " + this.boundingBox.minZ);
placeFoundationUnderneath(world, Blocks.stonebrick, 0, 0, 0, 0, 10, -1, box);
placeFoundationUnderneath(world, Blocks.stonebrick, 0, 8, 0, 8, 10, -1, box);
placeFoundationUnderneath(world, Blocks.stonebrick, 0, 1, 0, 8, 0, -1, box);
placeFoundationUnderneath(world, Blocks.stonebrick, 0, 1, 4, 8, 4, -1, box);
this.fillWithBlocks(world, box, 0, 0, 0, 0, 3, 0, ModBlocks.concrete_pillar, Blocks.air, false); //Back Wall
this.fillWithBlocks(world, box, 8, 0, 0, 8, 1, 0, ModBlocks.concrete_pillar, Blocks.air, false);
this.fillWithRandomizedBlocks(world, box, 1, 0, 0, 8 - 1, 0, 0, false, rand, RandomConcreteBricks);
@ -202,44 +202,44 @@ public class RuinFeatures {
this.fillWithBlocks(world, box, 4, 0, 4, 4, 2, 4, ModBlocks.concrete_pillar, Blocks.air, false); //Center Wall
this.fillWithRandomizedBlocks(world, box, 3, 0, 4, 3, 1, 4, false, rand, RandomConcreteBricks);
this.fillWithRandomizedBlocks(world, box, 5, 0, 4, 8 - 1, 1, 4, false, rand, RandomConcreteBricks);
this.randomlyFillWithBlocks(world, box, rand, 0.05F, 1, 0, 1, 8 - 1, 0, 3, Blocks.gravel, Blocks.air, false);
this.randomlyFillWithBlocks(world, box, rand, 0.05F, 1, 0, 5, 8 - 1, 0, 10 - 1, Blocks.gravel, Blocks.air, false);
return true;
}
}
public static class NTMRuin4 extends Component {
private static ConcreteBricks RandomConcreteBricks = new ConcreteBricks();
public NTMRuin4() {
super();
}
public NTMRuin4(Random rand, int minX, int minZ) {
super(rand, minX, 64, minZ, 10, 2, 11);
}
@Override
public boolean addComponentParts(World world, Random rand, StructureBoundingBox box) {
//System.out.println(this.coordBaseMode);
if(!this.setAverageHeight(world, box, this.boundingBox.minY)) {
return false;
}
//System.out.println("" + this.boundingBox.minX + ", " + this.boundingBox.minY + ", " + this.boundingBox.minZ);
placeFoundationUnderneath(world, Blocks.stonebrick, 0, 0, 0, 0, 11, -1, box);
placeFoundationUnderneath(world, Blocks.stonebrick, 0, 10, 5, 10, 11, -1, box);
placeFoundationUnderneath(world, Blocks.stonebrick, 0, 5, 0, 5, 4, -1, box);
placeFoundationUnderneath(world, Blocks.stonebrick, 0, 1, 11, 10 - 1, 11, -1, box);
placeFoundationUnderneath(world, Blocks.stonebrick, 0, 1, 0, 4, 0, -1, box);
placeFoundationUnderneath(world, Blocks.stonebrick, 0, 5, 5, 10 - 1, 5, -1, box);
this.fillWithBlocks(world, box, 0, 0, 0, 0, 1, 0, ModBlocks.concrete_pillar, Blocks.air, false); //Back Wall Pt. 1
this.fillWithBlocks(world, box, 5, 0, 0, 5, 2, 0, ModBlocks.concrete_pillar, Blocks.air, false);
this.fillWithRandomizedBlocks(world, box, 1, 0, 0, 4, 0, 0, false, rand, RandomConcreteBricks);
@ -263,12 +263,12 @@ public class RuinFeatures {
this.fillWithRandomizedBlocks(world, box, 0, 0, 1, 0, 0, 11 - 1, false, rand, RandomConcreteBricks); //Left Wall
this.fillWithRandomizedBlocks(world, box, 0, 1, 1, 0, 1, 1, false, rand, RandomConcreteBricks);
this.fillWithRandomizedBlocks(world, box, 0, 1, 4, 0, 1, 7, false, rand, RandomConcreteBricks);
this.randomlyFillWithBlocks(world, box, rand, 0.05F, 1, 0, 1, 4, 0, 5, Blocks.gravel, Blocks.air, false);
this.randomlyFillWithBlocks(world, box, rand, 0.05F, 1, 0, 6, 10 - 1, 0, 11 - 1, Blocks.gravel, Blocks.air, false);
return true;
}
}
}