本文整理汇总了Java中net.minecraft.world.gen.structure.StructureVillagePieces.PieceWeight类的典型用法代码示例。如果您正苦于以下问题:Java PieceWeight类的具体用法?Java PieceWeight怎么用?Java PieceWeight使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
PieceWeight类属于net.minecraft.world.gen.structure.StructureVillagePieces包,在下文中一共展示了PieceWeight类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: buildComponent
import net.minecraft.world.gen.structure.StructureVillagePieces.PieceWeight; //导入依赖的package包/类
@SuppressWarnings("rawtypes")
@Override
public Object buildComponent(PieceWeight villagePiece, Start startPiece, List pieces, Random random, int x, int y, int z, int coordBaseMode, int p5) {
IStructureTemplate template = null;
if(startPiece.inDesert && !desertTemplates.isEmpty()) {
template = WeightedTemplate.getTemplate(desertTemplates);
}
if(template == null) {
template = WeightedTemplate.getTemplate(templates);
}
if(template == null) {
return null;
}
VillageHouse comp = new VillageHouse(template,villagerSpawnLocation, villagerId, x, y, z, coordBaseMode);
VillageHouse res = canVillageGoDeeper(comp.getBoundingBox()) && StructureComponent.findIntersecting(pieces, comp.getBoundingBox()) == null
? comp : null;
return res;
}
示例2: buildComponent
import net.minecraft.world.gen.structure.StructureVillagePieces.PieceWeight; //导入依赖的package包/类
@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;
}
示例3: addExtraVillageComponents
import net.minecraft.world.gen.structure.StructureVillagePieces.PieceWeight; //导入依赖的package包/类
public static void addExtraVillageComponents(List<PieceWeight> list, Random random, int i)
{
List<StructureVillagePieces.PieceWeight> parts = list;
for (IVillageCreationHandler handler : instance().villageCreationHandlers.values())
{
parts.add(handler.getVillagePieceWeight(random, i));
}
}
示例4: buildComponent
import net.minecraft.world.gen.structure.StructureVillagePieces.PieceWeight; //导入依赖的package包/类
@SuppressWarnings("rawtypes")
@Override
public Object buildComponent(PieceWeight villagePiece, Start startPiece, List pieces, Random random,
int p1, int p2, int p3, int p4, int p5) {
// BiomeGenBase biome =
// world.getBiomeGenForCoords(startPiece.getBoundingBox().minX, startPiece.getBoundingBox().minZ);
// if (biome != ModBiomes.biomeCityPlains)
// return null;
return StructureVillagePieces.WoodHut.func_74908_a(startPiece, pieces, random, p1, p2, p3, p4, p5);
}
示例5: buildComponent
import net.minecraft.world.gen.structure.StructureVillagePieces.PieceWeight; //导入依赖的package包/类
@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;
}
示例6: getVillagePieceWeight
import net.minecraft.world.gen.structure.StructureVillagePieces.PieceWeight; //导入依赖的package包/类
@Override
public PieceWeight getVillagePieceWeight(Random random, int i) {
int maxToSpawn = 0;
int totalWeight = 0;
pieceWeights = getWeightedSpawnList(random, 0);
for (WeightedCreationHandler wch : pieceWeights) {
maxToSpawn += wch.weight.villagePiecesLimit;
totalWeight += wch.weight.villagePieceWeight;
}
return new PieceWeight(VillageHouse.class, totalWeight, maxToSpawn);
}
示例7: buildComponent
import net.minecraft.world.gen.structure.StructureVillagePieces.PieceWeight; //导入依赖的package包/类
@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;
}
示例8: getTotalWieght
import net.minecraft.world.gen.structure.StructureVillagePieces.PieceWeight; //导入依赖的package包/类
private int getTotalWieght(List<WeightedCreationHandler> handlers) {
boolean result = false;
int totalWeight = 0;
StructureVillagePieces.PieceWeight pieceweight;
for (Iterator<WeightedCreationHandler> iterator = handlers.iterator(); iterator.hasNext(); totalWeight += pieceweight.villagePieceWeight) {
pieceweight = iterator.next().weight;
if(pieceweight.villagePiecesLimit > 0 && pieceweight.villagePiecesSpawned < pieceweight.villagePiecesLimit) {
result = true;
}
}
return result ? totalWeight : -1;
}
示例9: getVillagePieceWeight
import net.minecraft.world.gen.structure.StructureVillagePieces.PieceWeight; //导入依赖的package包/类
@Override
public PieceWeight getVillagePieceWeight(Random random, int i) {
final int weight = ModOptions.getVillageStructureWeight();
int count = ModOptions.getVillageStructureCount();
if(count > 1) {
count = random.nextInt(count) + 1;
}
return new PieceWeight(getComponentClass(), weight, count);
}
示例10: getVillagePieceWeight
import net.minecraft.world.gen.structure.StructureVillagePieces.PieceWeight; //导入依赖的package包/类
@Override
public PieceWeight getVillagePieceWeight(Random random, int i) {
return new StructureVillagePieces.PieceWeight(MannCoBuilding.class, 15, 1);
}
示例11: getVillageComponent
import net.minecraft.world.gen.structure.StructureVillagePieces.PieceWeight; //导入依赖的package包/类
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);
}
示例12: getVillagePieceWeight
import net.minecraft.world.gen.structure.StructureVillagePieces.PieceWeight; //导入依赖的package包/类
@Override
public PieceWeight getVillagePieceWeight(Random random, int i) {
return new PieceWeight(BaileysShopVillagePiece.class, 30, 1);
}
示例13: buildComponent
import net.minecraft.world.gen.structure.StructureVillagePieces.PieceWeight; //导入依赖的package包/类
@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);
}
示例14: getVillagePieceWeight
import net.minecraft.world.gen.structure.StructureVillagePieces.PieceWeight; //导入依赖的package包/类
@Override
public PieceWeight getVillagePieceWeight(Random random, int i) {
return new PieceWeight(VillagePieceGuardTower2.class, 15, 1);
}
示例15: buildComponent
import net.minecraft.world.gen.structure.StructureVillagePieces.PieceWeight; //导入依赖的package包/类
@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);
}