Java 类net.minecraft.world.gen.structure.StructureVillagePieces.Village 实例源码
项目:Mods
文件:MannCoBuilding.java
@Override
public Village buildComponent(PieceWeight villagePiece, Start startPiece, List<StructureComponent> pieces,
Random random, int p1, int p2, int p3, EnumFacing facing, int p5) {
StructureBoundingBox structureboundingbox = StructureBoundingBox.getComponentToAddBoundingBox(p1, p2, p3, 0,
0, 0, 14, 16, 11, facing);
return canVillageGoDeeper(structureboundingbox)
&& StructureComponent.findIntersecting(pieces, structureboundingbox) == null
? new MannCoBuilding(startPiece, p5, random, structureboundingbox, facing) : null;
}
项目:Restructured
文件:SchematicStructureCreationHandler.java
@Override
public Village buildComponent(final PieceWeight villagePiece, final Start startPiece,
final List<StructureComponent> pieces, final Random random, final int x, final int y, final int z,
final EnumFacing facing, final int type) {
// This shouldn't happen, but just in case...
if (!(villagePiece instanceof SchematicPieceWeight))
return null;
// Get our next structure
final SchematicPieceWeight pw = (SchematicPieceWeight) villagePiece;
final SchematicProperties props = pw.getNextStructure();
// If we don't get properties we may have exceeded
// the spawn limit.
if (props == null)
return null;
// Bound it out
final Dimensions size = props.schematic.getDimensions();
final StructureBoundingBox _boundingBox = StructureBoundingBox.getComponentToAddBoundingBox(x, y, z, 0, 0, 0,
size.width, size.height, size.length, facing);
// Check to see if the region is OK, and if so return back
// a SchematicStructure surrogate for the schematic.
if (canVillageGoDeeper(_boundingBox)) {
if (StructureComponent.findIntersecting(pieces, _boundingBox) == null) {
ModLog.debug("Village structure [%s] @(%s); mode %d", props.name, _boundingBox, facing);
final SchematicStructure struct = new SchematicStructure(startPiece, type, random, _boundingBox,
facing);
struct.setProperties(props);
return struct;
}
}
return null;
}
项目:Structures
文件:CompositeCreationHandler.java
@SuppressWarnings("rawtypes")
@Override
public Object buildComponent(PieceWeight villagePiece, Start startPiece, List pieces, Random random, int x, int y, int z, int coordBaseMode, int p5) {
int totalWeight = getTotalWieght(pieceWeights);
if(totalWeight <= 0) {
return null;
}
for (int i = 0; i < 5; ++i) {
int randomWeight = random.nextInt(totalWeight);
Iterator<WeightedCreationHandler> iterator = pieceWeights.iterator();
while (iterator.hasNext()) {
WeightedCreationHandler el = iterator.next();
PieceWeight pieceweight = el.weight;
randomWeight -= pieceweight.villagePieceWeight;
if(randomWeight < 0) {
int notUsed = 0;
if(!pieceweight.canSpawnMoreVillagePiecesOfType(notUsed)
|| pieceweight == startPiece.structVillagePieceWeight && pieceWeights.size() > 1) {
break;
}
StructureVillagePieces.Village village = (Village) el.handler.buildComponent(pieceweight, startPiece, pieces, random, x, y, z, coordBaseMode, p5);
if(village != null) {
++pieceweight.villagePiecesSpawned;
startPiece.structVillagePieceWeight = pieceweight;
if(!pieceweight.canSpawnMoreVillagePieces()) {
pieceWeights.remove(el);
}
return village;
}
}
}
}
return null;
}
项目:CustomWorldGen
文件:VillagerRegistry.java
public static Village getVillageComponent(StructureVillagePieces.PieceWeight villagePiece, StructureVillagePieces.Start startPiece, List<StructureComponent> pieces, Random random,
int p1, int p2, int p3, EnumFacing facing, int p5)
{
return instance().villageCreationHandlers.get(villagePiece.villagePieceClass).buildComponent(villagePiece, startPiece, pieces, random, p1, p2, p3, facing, p5);
}
项目:Dailies
文件:VillageHandlerBailey.java
@Override
public Village buildComponent(PieceWeight villagePiece, Start startPiece, List<StructureComponent> pieces,
Random random, int p1, int p2, int p3, EnumFacing facing, int p5) {
return BaileysShopVillagePiece.createPiece(startPiece, pieces, random, p1, p2, p3, facing, p5);
}
项目:ToroQuest
文件:VillageHandlerGuardTower2.java
@Override
public Village buildComponent(PieceWeight villagePiece, Start startPiece, List<StructureComponent> pieces, Random random, int p1, int p2, int p3,
EnumFacing facing, int p5) {
return VillagePieceGuardTower2.createPiece(startPiece, pieces, random, p1, p2, p3, facing, p5);
}
项目:ToroQuest
文件:VillageHandlerBarracks.java
@Override
public Village buildComponent(PieceWeight villagePiece, Start startPiece, List<StructureComponent> pieces, Random random, int p1, int p2, int p3, EnumFacing facing, int p5) {
return VillagePieceBarracks.createPiece(startPiece, pieces, random, p1, p2, p3, facing, p5);
}
项目:ToroQuest
文件:VillageHandlerCabin.java
@Override
public Village buildComponent(PieceWeight villagePiece, Start startPiece, List<StructureComponent> pieces, Random random, int p1, int p2, int p3, EnumFacing facing, int p5) {
return VillagePieceCabin.createPiece(startPiece, pieces, random, p1, p2, p3, facing, p5);
}
项目:ToroQuest
文件:VillageHandlerGuardTower.java
@Override
public Village buildComponent(PieceWeight villagePiece, Start startPiece, List<StructureComponent> pieces, Random random, int p1, int p2, int p3, EnumFacing facing, int p5) {
return VillagePieceGuardTower.createPiece(startPiece, pieces, random, p1, p2, p3, facing, p5);
}
项目:ToroQuest
文件:VillageHandlerShop.java
@Override
public Village buildComponent(PieceWeight villagePiece, Start startPiece, List<StructureComponent> pieces, Random random, int p1, int p2, int p3, EnumFacing facing, int p5) {
return VillagePieceShop.createPiece(startPiece, pieces, random, p1, p2, p3, facing, p5);
}
项目:ToroQuest
文件:VillageHandlerTrophy.java
@Override
public Village buildComponent(PieceWeight villagePiece, Start startPiece, List<StructureComponent> pieces, Random random, int p1, int p2, int p3, EnumFacing facing, int p5) {
return VillagePieceTrophy.createPiece(startPiece, pieces, random, p1, p2, p3, facing, p5);
}
项目:ToroQuest
文件:VillageHandlerKeep.java
@Override
public Village buildComponent(PieceWeight villagePiece, Start startPiece, List<StructureComponent> pieces, Random random, int p1, int p2, int p3,
EnumFacing facing, int p5) {
return VillagePieceKeep.createPiece(startPiece, pieces, random, p1, p2, p3, facing, p5);
}
项目:Toms-Mod
文件:VillageHouseScientist.java
@Override
public Village buildComponent(PieceWeight villagePiece, Start startPiece, List<StructureComponent> pieces, Random random, int p1, int p2, int p3, EnumFacing facing, int p5) {
StructureBoundingBox box = StructureBoundingBox.getComponentToAddBoundingBox(p1, p2, p3, 0, -32 + 9, 0, 13, 11, 13, facing);
return !Config.genScientistHouse || !(box != null && box.minY > 16) || (StructureComponent.findIntersecting(pieces, box) != null) ? null : new VillageHouseScientist(startPiece, p5, random, box, facing);
}
项目:SimpleCorn
文件:CornWorldGen.java
@Override
public Village buildComponent(PieceWeight villagePiece, Start startPiece,List pieces, Random random, int x, int y, int z,EnumFacing facing, int p5) {
return ComponentCornField.createPiece(startPiece, pieces, random, x, y, z, facing, p5);
}
项目:UniversalCoins
文件:VillageGenTrade.java
@Override
public Village buildComponent(StructureVillagePieces.PieceWeight villagePiece, StructureVillagePieces.Start startPiece, List<StructureComponent> pieces, Random random, int p1,
int p2, int p3, EnumFacing facing, int p5) {
return ComponentVillageTrade.buildComponent(startPiece, pieces, random, p1, p2, p3, facing, p5);
}
项目:UniversalCoins
文件:VillageGenBank.java
@Override
public Village buildComponent(StructureVillagePieces.PieceWeight villagePiece, StructureVillagePieces.Start startPiece, List<StructureComponent> pieces, Random random, int p1,
int p2, int p3, EnumFacing facing, int p5) {
return ComponentVillageBank.buildComponent(startPiece, pieces, random, p1, p2, p3, facing, p5);
}
项目:UniversalCoins
文件:VillageGenShop.java
@Override
public Village buildComponent(StructureVillagePieces.PieceWeight villagePiece, StructureVillagePieces.Start startPiece, List<StructureComponent> pieces, Random random, int p1,
int p2, int p3, EnumFacing facing, int p5) {
return ComponentVillageShop.buildComponent(startPiece, pieces, random, p1, p2, p3, facing, p5);
}
项目:CustomWorldGen
文件:VillagerRegistry.java
/**
* Build an instance of the village component {@link net.minecraft.world.gen.structure.StructureVillagePieces}
*
* @param villagePiece
* @param startPiece
* @param pieces
* @param random
* @param p1
* @param p2
* @param p3
* @param facing
* @param p5
*/
Village buildComponent(StructureVillagePieces.PieceWeight villagePiece, StructureVillagePieces.Start startPiece, List<StructureComponent> pieces, Random random, int p1,
int p2, int p3, EnumFacing facing, int p5);