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);