Search in sources :

Example 1 with BuildingSchematic

use of WayofTime.alchemicalWizardry.common.demonVillage.BuildingSchematic in project BloodMagic by WayofTime.

the class TESchematicSaver method rightClickBlock.

public void rightClickBlock(EntityPlayer player, int side) {
    BuildingSchematic schematic = new BuildingSchematic();
    int negX = this.getNegXLimit();
    int negY = this.getNegYLimit();
    int negZ = this.getNegZLimit();
    int posX = this.getPosXLimit();
    int posY = this.getPosYLimit();
    int posZ = this.getPosZLimit();
    for (int i = -negX + 1; i <= posX - 1; i++) {
        for (int j = -negY + 1; j <= posY - 1; j++) {
            for (int k = -negZ + 1; k <= posZ - 1; k++) {
                int meta = worldObj.getBlockMetadata(xCoord + i, yCoord + j, zCoord + k);
                Block block = worldObj.getBlock(xCoord + i, yCoord + j, zCoord + k);
                if (!block.isAir(worldObj, xCoord + i, yCoord + j, zCoord + k)) {
                    schematic.addBlockWithMeta(block, meta, i, j, k);
                }
            }
        }
        AlchemicalWizardry.logger.info("" + i);
    }
    AlchemicalWizardry.logger.info("I got here!");
    Gson gson = new GsonBuilder().setPrettyPrinting().create();
    String json = gson.toJson(schematic);
    AlchemicalWizardry.logger.info("Here, too!");
    Writer writer;
    try {
        writer = new FileWriter("config/BloodMagic/schematics/" + new Random().nextInt() + ".json");
        writer.write(json);
        writer.close();
    } catch (IOException e) {
        e.printStackTrace();
    }
}
Also used : Random(java.util.Random) GsonBuilder(com.google.gson.GsonBuilder) FileWriter(java.io.FileWriter) Block(net.minecraft.block.Block) Gson(com.google.gson.Gson) IOException(java.io.IOException) BuildingSchematic(WayofTime.alchemicalWizardry.common.demonVillage.BuildingSchematic) FileWriter(java.io.FileWriter) Writer(java.io.Writer)

Example 2 with BuildingSchematic

use of WayofTime.alchemicalWizardry.common.demonVillage.BuildingSchematic in project BloodMagic by WayofTime.

the class TEDemonPortal method loadBuildingList.

public static void loadBuildingList() {
    String folder = "config/BloodMagic/schematics";
    Gson gson = new GsonBuilder().setPrettyPrinting().create();
    File file = new File(folder);
    File[] files = file.listFiles();
    BufferedReader br;
    try {
        for (File f : files) {
            br = new BufferedReader(new FileReader(f));
            BuildingSchematic schema = gson.fromJson(br, BuildingSchematic.class);
            TEDemonPortal.buildingList.add(new DemonBuilding(schema));
        }
    } catch (FileNotFoundException e) {
        e.printStackTrace();
    }
}
Also used : GsonBuilder(com.google.gson.GsonBuilder) DemonBuilding(WayofTime.alchemicalWizardry.common.demonVillage.DemonBuilding) BufferedReader(java.io.BufferedReader) FileNotFoundException(java.io.FileNotFoundException) Gson(com.google.gson.Gson) FileReader(java.io.FileReader) BuildingSchematic(WayofTime.alchemicalWizardry.common.demonVillage.BuildingSchematic) File(java.io.File)

Aggregations

BuildingSchematic (WayofTime.alchemicalWizardry.common.demonVillage.BuildingSchematic)2 Gson (com.google.gson.Gson)2 GsonBuilder (com.google.gson.GsonBuilder)2 DemonBuilding (WayofTime.alchemicalWizardry.common.demonVillage.DemonBuilding)1 BufferedReader (java.io.BufferedReader)1 File (java.io.File)1 FileNotFoundException (java.io.FileNotFoundException)1 FileReader (java.io.FileReader)1 FileWriter (java.io.FileWriter)1 IOException (java.io.IOException)1 Writer (java.io.Writer)1 Random (java.util.Random)1 Block (net.minecraft.block.Block)1