summaryrefslogtreecommitdiff
path: root/src/main/java/darkknight/jewelrycraft/worldGen
diff options
context:
space:
mode:
authorbculkin2442 <bjculkin@mix.wvu.edu>2018-05-24 15:50:07 -0400
committerbculkin2442 <bjculkin@mix.wvu.edu>2018-05-24 15:50:07 -0400
commit4f7ad220df0438b6f3382110577b53f29da46453 (patch)
tree07d5e7c812721753cdbe3df7226dad5dc3802c29 /src/main/java/darkknight/jewelrycraft/worldGen
parent01c8701b68986ccfa83e902515716838d6829311 (diff)
Update of all changes
Diffstat (limited to 'src/main/java/darkknight/jewelrycraft/worldGen')
-rwxr-xr-x[-rw-r--r--]src/main/java/darkknight/jewelrycraft/worldGen/ChestGeneration.java208
-rwxr-xr-x[-rw-r--r--]src/main/java/darkknight/jewelrycraft/worldGen/Generation.java165
-rwxr-xr-x[-rw-r--r--]src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure.java25
-rwxr-xr-x[-rw-r--r--]src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure1.java109
-rwxr-xr-x[-rw-r--r--]src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure2.java45
-rwxr-xr-x[-rw-r--r--]src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure3.java135
-rwxr-xr-x[-rw-r--r--]src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure4.java107
-rwxr-xr-x[-rw-r--r--]src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure5.java51
-rwxr-xr-x[-rw-r--r--]src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure6.java101
-rwxr-xr-x[-rw-r--r--]src/main/java/darkknight/jewelrycraft/worldGen/village/ComponentJewelry.java507
-rwxr-xr-x[-rw-r--r--]src/main/java/darkknight/jewelrycraft/worldGen/village/JCTrades.java266
-rwxr-xr-x[-rw-r--r--]src/main/java/darkknight/jewelrycraft/worldGen/village/VillageHandler.java30
-rwxr-xr-x[-rw-r--r--]src/main/java/darkknight/jewelrycraft/worldGen/village/VillageJewelryHandler.java82
13 files changed, 1149 insertions, 682 deletions
diff --git a/src/main/java/darkknight/jewelrycraft/worldGen/ChestGeneration.java b/src/main/java/darkknight/jewelrycraft/worldGen/ChestGeneration.java
index d697472..9e6e667 100644..100755
--- a/src/main/java/darkknight/jewelrycraft/worldGen/ChestGeneration.java
+++ b/src/main/java/darkknight/jewelrycraft/worldGen/ChestGeneration.java
@@ -1,6 +1,7 @@
package darkknight.jewelrycraft.worldGen;
import java.util.Random;
+
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
import darkknight.jewelrycraft.block.BlockList;
import darkknight.jewelrycraft.item.ItemList;
@@ -15,89 +16,126 @@ import net.minecraftforge.common.ChestGenHooks;
* @author Sorin
*
*/
-public class ChestGeneration
-{
- static Item[] jewelry = new Item[]{ItemList.ring, ItemList.necklace, ItemList.bracelet, ItemList.earrings};
- static Random random = new Random();
- public static void preInit(FMLPreInitializationEvent e)
- {
- addItemToDifferentPlaces(new WeightedRandomChestContent(new ItemStack(ItemList.thiefGloves), 1, 1, 2), true, true, false, false, true);
- addItemToDifferentPlaces(new WeightedRandomChestContent(new ItemStack(ItemList.guide), 1, 1, 7), true, true, true, true, true, false, true, true);
- addVillageBlacksmithLoot(new WeightedRandomChestContent(new ItemStack(ItemList.shadowIngot), 1, 4, 5));
- for(int i = 0; i < 16 && i%3==0; i++) addItemToDifferentPlaces(new WeightedRandomChestContent(new ItemStack(BlockList.crystal, 1, i), 1, 3, 3), true, true, true, true);
-
- ItemStack special = new ItemStack(jewelry[random.nextInt(4)]);
- int randValue = random.nextInt(4);
- if(JewelrycraftUtil.metal.size() > 0) JewelryNBT.addMetal(special, JewelrycraftUtil.metal.get(random.nextInt(JewelrycraftUtil.metal.size())));
- if(JewelrycraftUtil.objects.size() > 0) JewelryNBT.addModifiers(special, JewelrycraftUtil.addRandomModifiers(randValue));
- if(JewelrycraftUtil.gem.size() > 0) JewelryNBT.addGem(special, JewelrycraftUtil.gem.get(random.nextInt(JewelrycraftUtil.gem.size())));
- addItemToDifferentPlaces(new WeightedRandomChestContent(special, 1, 1, 1), true, true, true, true);
- }
-
- /**
- * The booleans determine in which places should the items be added. The order is like so:
- * <p><ul>
- * <li> Dungeon
- * <li> Stronhold
- * <li> Pyramid
- * <li> Mineshaft
- * <li> Village Blacksmith
- * <li> Dispenser
- * <li> Bonus Chest
- * <li> Stronghold Library
- * </ul><p>
- */
- public static void addItemToDifferentPlaces(WeightedRandomChestContent item, Boolean ... options)
- {
- if(options.length > 0 && options[0]) addDungeonLoot(item);
- if(options.length > 1 && options[1]) addStrongholdLoot(item);
- if(options.length > 2 && options[2]) addPyramidLoot(item);
- if(options.length > 3 && options[3]) addMineshaftLoot(item);
- if(options.length > 4 && options[4]) addVillageBlacksmithLoot(item);
- if(options.length > 5 && options[5]) addDispenserLoot(item);
- if(options.length > 6 && options[6]) addBonusChestLoot(item);
- if(options.length > 7 && options[7]) addStrongholdLibraryLoot(item);
- }
-
- public static void addDungeonLoot(WeightedRandomChestContent item)
- {
- ChestGenHooks.addItem(ChestGenHooks.DUNGEON_CHEST, item);
- }
-
- public static void addStrongholdLoot(WeightedRandomChestContent item)
- {
- ChestGenHooks.addItem(ChestGenHooks.STRONGHOLD_CORRIDOR, item);
- ChestGenHooks.addItem(ChestGenHooks.STRONGHOLD_CROSSING, item);
- }
-
- public static void addPyramidLoot(WeightedRandomChestContent item)
- {
- ChestGenHooks.addItem(ChestGenHooks.PYRAMID_DESERT_CHEST, item);
- ChestGenHooks.addItem(ChestGenHooks.PYRAMID_JUNGLE_CHEST, item);
- }
-
- public static void addMineshaftLoot(WeightedRandomChestContent item)
- {
- ChestGenHooks.addItem(ChestGenHooks.MINESHAFT_CORRIDOR, item);
- }
-
- public static void addVillageBlacksmithLoot(WeightedRandomChestContent item)
- {
- ChestGenHooks.addItem(ChestGenHooks.VILLAGE_BLACKSMITH, item);
- }
-
- public static void addDispenserLoot(WeightedRandomChestContent item)
- {
- ChestGenHooks.addItem(ChestGenHooks.PYRAMID_JUNGLE_DISPENSER, item);
- }
-
- public static void addBonusChestLoot(WeightedRandomChestContent item)
- {
- ChestGenHooks.addItem(ChestGenHooks.BONUS_CHEST, item);
- }
-
- public static void addStrongholdLibraryLoot(WeightedRandomChestContent item)
- {
- ChestGenHooks.addItem(ChestGenHooks.STRONGHOLD_LIBRARY, item);
- }
+public class ChestGeneration {
+ static Item[] jewelry = new Item[] { ItemList.ring,
+ ItemList.necklace, ItemList.bracelet, ItemList.earrings };
+
+ static Random random = new Random();
+
+ public static void preInit(
+ FMLPreInitializationEvent e) {
+ addItemToDifferentPlaces(
+ new WeightedRandomChestContent(
+ new ItemStack(ItemList.thiefGloves), 1, 1, 2),
+ true, true, false, false, true);
+
+ addItemToDifferentPlaces(
+ new WeightedRandomChestContent(
+ new ItemStack(ItemList.guide), 1, 1, 7),
+ true, true, true, true, true, false, true, true);
+
+ addVillageBlacksmithLoot(new WeightedRandomChestContent(
+ new ItemStack(ItemList.shadowIngot), 1, 4, 5));
+
+ for (int i = 0; i < 16 && i % 3 == 0; i++)
+ addItemToDifferentPlaces(new WeightedRandomChestContent(
+ new ItemStack(BlockList.crystal, 1, i), 1, 3, 3), true,
+ true, true, true);
+
+ ItemStack special = new ItemStack(jewelry[random.nextInt(4)]);
+
+ int randValue = random.nextInt(4);
+
+ if (JewelrycraftUtil.metal.size() > 0) {
+ JewelryNBT.addMetal(special, JewelrycraftUtil.metal
+ .get(random.nextInt(JewelrycraftUtil.metal.size())));
+ }
+
+ if (JewelrycraftUtil.objects.size() > 0) {
+ JewelryNBT.addModifiers(special,
+ JewelrycraftUtil.addRandomModifiers(randValue));
+ }
+
+ if (JewelrycraftUtil.gem.size() > 0) {
+ JewelryNBT.addGem(special, JewelrycraftUtil.gem
+ .get(random.nextInt(JewelrycraftUtil.gem.size())));
+ }
+
+ addItemToDifferentPlaces(
+ new WeightedRandomChestContent(special, 1, 1, 1), true,
+ true, true, true);
+ }
+
+ /**
+ * The booleans determine in which places should the items be added.
+ * The order is like so:
+ * <p>
+ * <ul>
+ * <li>Dungeon
+ * <li>Stronhold
+ * <li>Pyramid
+ * <li>Mineshaft
+ * <li>Village Blacksmith
+ * <li>Dispenser
+ * <li>Bonus Chest
+ * <li>Stronghold Library
+ * </ul>
+ * <p>
+ */
+ public static void addItemToDifferentPlaces(
+ WeightedRandomChestContent item, Boolean... options) {
+ if (options.length > 0 && options[0])
+ addDungeonLoot(item);
+ if (options.length > 1 && options[1])
+ addStrongholdLoot(item);
+ if (options.length > 2 && options[2])
+ addPyramidLoot(item);
+ if (options.length > 3 && options[3])
+ addMineshaftLoot(item);
+ if (options.length > 4 && options[4])
+ addVillageBlacksmithLoot(item);
+ if (options.length > 5 && options[5])
+ addDispenserLoot(item);
+ if (options.length > 6 && options[6])
+ addBonusChestLoot(item);
+ if (options.length > 7 && options[7])
+ addStrongholdLibraryLoot(item);
+ }
+
+ public static void addDungeonLoot(WeightedRandomChestContent item) {
+ ChestGenHooks.addItem(ChestGenHooks.DUNGEON_CHEST, item);
+ }
+
+ public static void addStrongholdLoot(WeightedRandomChestContent item) {
+ ChestGenHooks.addItem(ChestGenHooks.STRONGHOLD_CORRIDOR, item);
+ ChestGenHooks.addItem(ChestGenHooks.STRONGHOLD_CROSSING, item);
+ }
+
+ public static void addPyramidLoot(WeightedRandomChestContent item) {
+ ChestGenHooks.addItem(ChestGenHooks.PYRAMID_DESERT_CHEST, item);
+ ChestGenHooks.addItem(ChestGenHooks.PYRAMID_JUNGLE_CHEST, item);
+ }
+
+ public static void addMineshaftLoot(WeightedRandomChestContent item) {
+ ChestGenHooks.addItem(ChestGenHooks.MINESHAFT_CORRIDOR, item);
+ }
+
+ public static void
+ addVillageBlacksmithLoot(WeightedRandomChestContent item) {
+ ChestGenHooks.addItem(ChestGenHooks.VILLAGE_BLACKSMITH, item);
+ }
+
+ public static void addDispenserLoot(WeightedRandomChestContent item) {
+ ChestGenHooks.addItem(ChestGenHooks.PYRAMID_JUNGLE_DISPENSER,
+ item);
+ }
+
+ public static void addBonusChestLoot(WeightedRandomChestContent item) {
+ ChestGenHooks.addItem(ChestGenHooks.BONUS_CHEST, item);
+ }
+
+ public static void
+ addStrongholdLibraryLoot(WeightedRandomChestContent item) {
+ ChestGenHooks.addItem(ChestGenHooks.STRONGHOLD_LIBRARY, item);
+ }
}
diff --git a/src/main/java/darkknight/jewelrycraft/worldGen/Generation.java b/src/main/java/darkknight/jewelrycraft/worldGen/Generation.java
index 93310df..8419533 100644..100755
--- a/src/main/java/darkknight/jewelrycraft/worldGen/Generation.java
+++ b/src/main/java/darkknight/jewelrycraft/worldGen/Generation.java
@@ -2,6 +2,7 @@ package darkknight.jewelrycraft.worldGen;
import java.lang.reflect.Field;
import java.util.Random;
+
import cpw.mods.fml.common.IWorldGenerator;
import darkknight.jewelrycraft.block.BlockList;
import darkknight.jewelrycraft.config.ConfigHandler;
@@ -12,67 +13,95 @@ import net.minecraft.world.biome.BiomeGenBase;
import net.minecraft.world.chunk.IChunkProvider;
public class Generation implements IWorldGenerator {
- public static WorldGenStructure STRUCTURE_1 = new WorldGenStructure1();
- public static WorldGenStructure STRUCTURE_2 = new WorldGenStructure2();
- public static WorldGenStructure STRUCTURE_3 = new WorldGenStructure3();
- public static WorldGenStructure STRUCTURE_4 = new WorldGenStructure4();
- public static WorldGenStructure STRUCTURE_5 = new WorldGenStructure5();
- public static WorldGenStructure STRUCTURE_6 = new WorldGenStructure6();
+ public static WorldGenStructure STRUCTURE_1 = new WorldGenStructure1();
+ public static WorldGenStructure STRUCTURE_2 = new WorldGenStructure2();
+ public static WorldGenStructure STRUCTURE_3 = new WorldGenStructure3();
+ public static WorldGenStructure STRUCTURE_4 = new WorldGenStructure4();
+ public static WorldGenStructure STRUCTURE_5 = new WorldGenStructure5();
+ public static WorldGenStructure STRUCTURE_6 = new WorldGenStructure6();
@Override
- public void generate(Random random, int chunkX, int chunkZ, World world, IChunkProvider chunkGenerator, IChunkProvider chunkProvider) {
+ public void generate(Random random, int chunkX, int chunkZ,
+ World world, IChunkProvider chunkGenerator,
+ IChunkProvider chunkProvider) {
switch (world.provider.dimensionId) {
- case -1:
- generateNether(world, random, chunkX << 4, chunkZ << 4);
- break;
- case 0:
- generateSurface(world, random, chunkX << 4, chunkZ << 4);
- break;
- case 1:
- generateEnd(world, random, chunkX << 4, chunkZ << 4);
- break;
- default:
- generateSurface(world, random, chunkX << 4, chunkZ << 4);
- break;
+ case -1:
+ generateNether(world, random, chunkX << 4, chunkZ << 4);
+ break;
+ case 0:
+ generateSurface(world, random, chunkX << 4, chunkZ << 4);
+ break;
+ case 1:
+ generateEnd(world, random, chunkX << 4, chunkZ << 4);
+ break;
+ default:
+ generateSurface(world, random, chunkX << 4, chunkZ << 4);
+ break;
}
}
- private void generateEnd(World world, Random random, int i, int j) {}
+ private void generateEnd(World world, Random random, int i, int j) {
+ }
- private void generateSurface(World world, Random random, int i, int j) {
+ private void generateSurface(World world, Random random, int i,
+ int j) {
if (ConfigHandler.ENABLE_WORLD_GEN) {
- if (!world.getWorldInfo().getTerrainType().equals(WorldType.FLAT)) {
- if (ConfigHandler.ORE_GEN) generateShadowOre(world, random, i, j);
- if (ConfigHandler.CRYSTAL_GEN) generateCrystals(world, random, i, j);
- try{
- for(Field f: this.getClass().getDeclaredFields()){
- Object obj = f.get(null);
- if (obj instanceof WorldGenStructure && ConfigHandler.STRUCTURES[((WorldGenStructure)obj).structureNo() - 1])
- if(((WorldGenStructure)obj).isUnderground()) generateStructureUnderground((WorldGenStructure)obj, world, random, i, j, ConfigHandler.STRUCTURES_SPAWN_CHANCE[((WorldGenStructure)obj).structureNo()-1], false, true);
- else generateStructureOverground((WorldGenStructure)obj, world, random, i, j, ConfigHandler.STRUCTURES_SPAWN_CHANCE[((WorldGenStructure)obj).structureNo()-1], false, true);
- }
- }
- catch(IllegalAccessException e){
- throw new RuntimeException(e);
- }
+ if (!world.getWorldInfo().getTerrainType()
+ .equals(WorldType.FLAT)) {
+ if (ConfigHandler.ORE_GEN)
+ generateShadowOre(world, random, i, j);
+ if (ConfigHandler.CRYSTAL_GEN)
+ generateCrystals(world, random, i, j);
+ try {
+ for (Field f : this.getClass().getDeclaredFields()) {
+ Object obj = f.get(null);
+ if (obj instanceof WorldGenStructure
+ && ConfigHandler.STRUCTURES[((WorldGenStructure) obj)
+ .structureNo() - 1])
+ if (((WorldGenStructure) obj).isUnderground())
+ generateStructureUnderground(
+ (WorldGenStructure) obj, world,
+ random, i, j,
+ ConfigHandler.STRUCTURES_SPAWN_CHANCE[((WorldGenStructure) obj)
+ .structureNo() - 1],
+ false, true);
+ else
+ generateStructureOverground(
+ (WorldGenStructure) obj, world,
+ random, i, j,
+ ConfigHandler.STRUCTURES_SPAWN_CHANCE[((WorldGenStructure) obj)
+ .structureNo() - 1],
+ false, true);
+ }
+ } catch (IllegalAccessException e) {
+ throw new RuntimeException(e);
+ }
}
}
}
- private void generateNether(World world, Random random, int i, int j) {}
+ private void generateNether(World world, Random random, int i, int j) {
+ }
- private void generateShadowOre(World world, Random random, int i, int j) {
+ private void generateShadowOre(World world, Random random, int i,
+ int j) {
for (int k = 0; k < 1; k++) {
int x = i + random.nextInt(16);
int y = 5 + random.nextInt(4);
int z = j + random.nextInt(16);
- if (world.getBlock(x, y, z) == Blocks.stone) world.setBlock(x, y, z, BlockList.shadowOre);
- int randX = random.nextInt(2), randY = random.nextInt(1), randZ = random.nextInt(2);
- if (random.nextInt(3) == 0 && world.getBlock(x + randX, y + randY, z + randZ) == Blocks.stone) world.setBlock(x + randX, y + randY, z + randZ, BlockList.shadowOre);
+ if (world.getBlock(x, y, z) == Blocks.stone)
+ world.setBlock(x, y, z, BlockList.shadowOre);
+ int randX = random.nextInt(2), randY = random.nextInt(1),
+ randZ = random.nextInt(2);
+ if (random.nextInt(3) == 0 && world.getBlock(x + randX,
+ y + randY, z + randZ) == Blocks.stone)
+ world.setBlock(x + randX, y + randY, z + randZ,
+ BlockList.shadowOre);
}
}
- private void generateCrystals(World world, Random random, int i, int j) {
+ private void generateCrystals(World world, Random random, int i,
+ int j) {
for (int k = 0; k < 16; k++) {
int x = i + random.nextInt(12);
int y = 5 + random.nextInt(64);
@@ -81,47 +110,75 @@ public class Generation implements IWorldGenerator {
int randX = random.nextInt(4);
int randY = random.nextInt(2);
int randZ = random.nextInt(4);
- if (world.getBlock(x + randX, y + randY - 1, z + randZ) == Blocks.stone && world.getBlock(x + randX, y + randY, z + randZ) == Blocks.air) world.setBlock(x + randX, y + randY, z + randZ, BlockList.crystal, random.nextInt(16), 2);
+ if (world.getBlock(x + randX, y + randY - 1,
+ z + randZ) == Blocks.stone
+ && world.getBlock(x + randX, y + randY,
+ z + randZ) == Blocks.air)
+ world.setBlock(x + randX, y + randY, z + randZ,
+ BlockList.crystal, random.nextInt(16), 2);
}
}
}
- private void generateStructureUnderground(WorldGenStructure structure, World world, Random random, int i, int j, int maxAttempts, boolean noOfAttempts, boolean chanceOfSpawning) {
+ private void generateStructureUnderground(WorldGenStructure structure,
+ World world, Random random, int i, int j, int maxAttempts,
+ boolean noOfAttempts, boolean chanceOfSpawning) {
BiomeGenBase biomeBase = world.getBiomeGenForCoords(i, j);
if (noOfAttempts) {
for (int k = 0; k < maxAttempts; k++) {
int x = i + random.nextInt(16);
int y = random.nextInt(64);
int z = j + random.nextInt(16);
- if (world.getBlock(x, y, z) == Blocks.stone) structure.generate(world, biomeBase, random, x, y, z);
+ if (world.getBlock(x, y, z) == Blocks.stone)
+ structure.generate(world, biomeBase, random, x, y, z);
}
- }
- else if (chanceOfSpawning) {
+ } else if (chanceOfSpawning) {
if (random.nextInt(maxAttempts) == 0) {
int x = i + random.nextInt(16);
int y = random.nextInt(64);
int z = j + random.nextInt(16);
- if (world.getBlock(x, y, z) == Blocks.stone) structure.generate(world, biomeBase, random, x, y, z);
+ if (world.getBlock(x, y, z) == Blocks.stone)
+ structure.generate(world, biomeBase, random, x, y, z);
}
}
}
- private void generateStructureOverground(WorldGenStructure structure, World world, Random random, int i, int j, int maxAttempts, boolean noOfAttempts, boolean chanceOfSpawning) {
+ private void generateStructureOverground(WorldGenStructure structure,
+ World world, Random random, int i, int j, int maxAttempts,
+ boolean noOfAttempts, boolean chanceOfSpawning) {
BiomeGenBase biomeBase = world.getBiomeGenForCoords(i, j);
if (noOfAttempts) {
for (int k = 0; k < maxAttempts; k++) {
int x = i + random.nextInt(16);
- int y = (world.getChunkHeightMapMinimum(i, j) > 0 ? world.getChunkHeightMapMinimum(i, j) : world.getChunkFromChunkCoords(i, j).heightMapMinimum - 16) + random.nextInt(4);
+ int y = (world.getChunkHeightMapMinimum(i, j) > 0
+ ? world.getChunkHeightMapMinimum(i, j)
+ : world.getChunkFromChunkCoords(i,
+ j).heightMapMinimum - 16)
+ + random.nextInt(4);
int z = j + random.nextInt(16);
- if (world.getBlock(x, y, z) == Blocks.air && (world.getBlock(x, y - 1, z) == Blocks.stone || world.getBlock(x, y - 1, z) == Blocks.sand || world.getBlock(x, y - 1, z) == Blocks.grass)) structure.generate(world, biomeBase, random, x, y, z);
+ if (world.getBlock(x, y, z) == Blocks.air
+ && (world.getBlock(x, y - 1, z) == Blocks.stone
+ || world.getBlock(x, y - 1,
+ z) == Blocks.sand
+ || world.getBlock(x, y - 1,
+ z) == Blocks.grass))
+ structure.generate(world, biomeBase, random, x, y, z);
}
- }
- else if (chanceOfSpawning) {
+ } else if (chanceOfSpawning) {
if (random.nextInt(maxAttempts) == 0) {
int x = i + random.nextInt(16);
- int y = (world.getChunkHeightMapMinimum(i, j) > 0 ? world.getChunkHeightMapMinimum(i, j) : world.getChunkFromChunkCoords(i, j).heightMapMinimum - 16) + random.nextInt(4);
+ int y = (world.getChunkHeightMapMinimum(i, j) > 0
+ ? world.getChunkHeightMapMinimum(i, j)
+ : world.getChunkFromChunkCoords(i,
+ j).heightMapMinimum - 16)
+ + random.nextInt(4);
int z = j + random.nextInt(16);
- if (world.getBlock(x, y, z) == Blocks.air && (world.getBlock(x, y - 1, z) == Blocks.stone || world.getBlock(x, y - 1, z) == Blocks.sand || world.getBlock(x, y - 1, z) == Blocks.grass)) {
+ if (world.getBlock(x, y, z) == Blocks.air
+ && (world.getBlock(x, y - 1, z) == Blocks.stone
+ || world.getBlock(x, y - 1,
+ z) == Blocks.sand
+ || world.getBlock(x, y - 1,
+ z) == Blocks.grass)) {
structure.generate(world, biomeBase, random, x, y, z);
System.out.println(x + " " + z);
}
diff --git a/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure.java b/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure.java
index f233d3e..9b99e5a 100644..100755
--- a/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure.java
+++ b/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure.java
@@ -4,6 +4,7 @@
package darkknight.jewelrycraft.worldGen;
import java.util.Random;
+
import net.minecraft.world.World;
import net.minecraft.world.biome.BiomeGenBase;
import net.minecraft.world.gen.feature.WorldGenerator;
@@ -11,25 +12,23 @@ import net.minecraft.world.gen.feature.WorldGenerator;
/**
* @author Sorin
*/
-public class WorldGenStructure extends WorldGenerator
-{
- public boolean generate(World world, BiomeGenBase biome, Random rand, int x, int y, int z)
- {
+public class WorldGenStructure extends WorldGenerator {
+ public boolean generate(World world, BiomeGenBase biome, Random rand,
+ int x, int y, int z) {
return false;
}
@Override
- public boolean generate(World world, Random rand, int x, int y, int z) {
+ public boolean generate(World world, Random rand, int x, int y,
+ int z) {
return false;
}
-
- public boolean isUnderground()
- {
- return false;
+
+ public boolean isUnderground() {
+ return false;
}
-
- public int structureNo()
- {
- return -1;
+
+ public int structureNo() {
+ return -1;
}
}
diff --git a/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure1.java b/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure1.java
index 898ece2..6ec6b81 100644..100755
--- a/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure1.java
+++ b/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure1.java
@@ -4,6 +4,7 @@
package darkknight.jewelrycraft.worldGen;
import java.util.Random;
+
import darkknight.jewelrycraft.block.BlockList;
import darkknight.jewelrycraft.item.ItemList;
import darkknight.jewelrycraft.random.WeightedRandomItem;
@@ -19,46 +20,70 @@ import net.minecraft.world.biome.BiomeGenBase;
/**
* @author Sorin
*/
-public class WorldGenStructure1 extends WorldGenStructure
-{
- public static final WeightedRandomItem[] items = new WeightedRandomItem[]{new WeightedRandomItem(new ItemStack(ItemList.thiefGloves), 10), new WeightedRandomItem(new ItemStack(Items.golden_apple), 8), new WeightedRandomItem(new ItemStack(Items.golden_apple, 1, 1), 1), new WeightedRandomItem(new ItemStack(ItemList.guide), 20), new WeightedRandomItem(new ItemStack(ItemList.shadowIngot), 25), new WeightedRandomItem(new ItemStack(BlockList.shadowEye), 2), new WeightedRandomItem(new ItemStack(Items.nether_star), 1), new WeightedRandomItem(new ItemStack(BlockList.shadowBlock), 2), new WeightedRandomItem(new ItemStack(BlockList.crystal), 16, 20)};
-
- public boolean generate(World world, BiomeGenBase biome, Random rand, int x, int y, int z)
- {
- Block block = Blocks.stonebrick;
- int metadata = 0, slabMeta = 5;
- if (biome == BiomeGenBase.desert || biome == BiomeGenBase.desertHills){
- block = Blocks.sandstone;
- metadata = 2;
- slabMeta = 1;
- }
- for(int i = -2; i <= 2; i++)
- for(int j = -1; j <= 4; j++)
- for(int k = -2; k <= 2; k++)
- world.setBlock(x + i, y + j, z + k, Blocks.air);
- for(int i = -2; i <= 2; i++)
- for(int k = -2; k <= 2; k++){
- world.setBlock(x + i, y - 1, z + k, block, metadata, 2);
- if (i % 2 == 0 && k % 2 == 0 && i != 0 && k != 0) world.setBlock(x + i, y, z + k, BlockList.crystal);
- }
- for(int i = -1; i <= 1; i++)
- for(int k = -1; k <= 1; k++)
- world.setBlock(x + i, y, z + k, Blocks.stone_slab, slabMeta, 2);
- world.setBlock(x, y, z, block, metadata, 2);
- world.setBlock(x, y + 1, z, BlockList.handPedestal, 6, 2);
- TileEntityHandPedestal pedestal = (TileEntityHandPedestal)world.getTileEntity(x, y + 1, z);
- pedestal.setHeldItemStack(((WeightedRandomItem)WeightedRandom.getRandomItem(rand, items)).getItem(rand));
- return true;
- }
-
- @Override
- public boolean generate(World world, Random rand, int x, int y, int z)
- {
- return generate(world, BiomeGenBase.plains, rand, x, y, z);
- }
-
- public int structureNo()
- {
- return 1;
- }
+public class WorldGenStructure1 extends WorldGenStructure {
+ public static final WeightedRandomItem[] items =
+ new WeightedRandomItem[] {
+ new WeightedRandomItem(
+ new ItemStack(ItemList.thiefGloves), 10),
+ new WeightedRandomItem(
+ new ItemStack(Items.golden_apple), 8),
+ new WeightedRandomItem(
+ new ItemStack(Items.golden_apple, 1, 1), 1),
+ new WeightedRandomItem(new ItemStack(ItemList.guide),
+ 20),
+ new WeightedRandomItem(
+ new ItemStack(ItemList.shadowIngot), 25),
+ new WeightedRandomItem(
+ new ItemStack(BlockList.shadowEye), 2),
+ new WeightedRandomItem(
+ new ItemStack(Items.nether_star), 1),
+ new WeightedRandomItem(
+ new ItemStack(BlockList.shadowBlock), 2),
+ new WeightedRandomItem(
+ new ItemStack(BlockList.crystal), 16, 20) };
+
+ @Override
+ public boolean generate(World world, BiomeGenBase biome, Random rand,
+ int x, int y, int z) {
+ Block block = Blocks.stonebrick;
+ int metadata = 0, slabMeta = 5;
+ if (biome == BiomeGenBase.desert
+ || biome == BiomeGenBase.desertHills) {
+ block = Blocks.sandstone;
+ metadata = 2;
+ slabMeta = 1;
+ }
+ for (int i = -2; i <= 2; i++)
+ for (int j = -1; j <= 4; j++)
+ for (int k = -2; k <= 2; k++)
+ world.setBlock(x + i, y + j, z + k, Blocks.air);
+ for (int i = -2; i <= 2; i++)
+ for (int k = -2; k <= 2; k++) {
+ world.setBlock(x + i, y - 1, z + k, block, metadata, 2);
+ if (i % 2 == 0 && k % 2 == 0 && i != 0 && k != 0)
+ world.setBlock(x + i, y, z + k, BlockList.crystal);
+ }
+ for (int i = -1; i <= 1; i++)
+ for (int k = -1; k <= 1; k++)
+ world.setBlock(x + i, y, z + k, Blocks.stone_slab,
+ slabMeta, 2);
+ world.setBlock(x, y, z, block, metadata, 2);
+ world.setBlock(x, y + 1, z, BlockList.handPedestal, 6, 2);
+ TileEntityHandPedestal pedestal =
+ (TileEntityHandPedestal) world.getTileEntity(x, y + 1, z);
+ pedestal.setHeldItemStack(((WeightedRandomItem) WeightedRandom
+ .getRandomItem(rand, items)).getItem(rand));
+ return true;
+ }
+
+ @Override
+ public boolean generate(World world, Random rand, int x, int y,
+ int z) {
+ return generate(world, BiomeGenBase.plains, rand, x, y, z);
+ }
+
+ @Override
+ public int structureNo() {
+ return 1;
+ }
}
diff --git a/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure2.java b/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure2.java
index 4e4461c..0f285b3 100644..100755
--- a/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure2.java
+++ b/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure2.java
@@ -1,6 +1,7 @@
package darkknight.jewelrycraft.worldGen;
import java.util.Random;
+
import darkknight.jewelrycraft.block.BlockList;
import darkknight.jewelrycraft.block.BlockMoltenMetal;
import darkknight.jewelrycraft.item.ItemList;
@@ -16,11 +17,14 @@ import net.minecraft.world.biome.BiomeGenBase;
* @author Sorin
*/
public class WorldGenStructure2 extends WorldGenStructure {
- public boolean generate(World world, BiomeGenBase biome, Random rand, int x, int y, int z) {
+ @Override
+ public boolean generate(World world, BiomeGenBase biome, Random rand,
+ int x, int y, int z) {
Block block = Blocks.stonebrick;
Block stair = Blocks.stone_brick_stairs;
int metadata = 0;
- if (biome == BiomeGenBase.desert || biome == BiomeGenBase.desertHills) {
+ if (biome == BiomeGenBase.desert
+ || biome == BiomeGenBase.desertHills) {
block = Blocks.sandstone;
stair = Blocks.sandstone_stairs;
metadata = 2;
@@ -36,30 +40,37 @@ public class WorldGenStructure2 extends WorldGenStructure {
world.setBlock(x + i, y, z + k, stair);
for (int i = -1; i <= 1; i++)
for (int k = -1; k <= 1; k++)
- world.setBlockMetadataWithNotify(x + i, y, z + k, (k == -1) ? 3 : (k == 0) ? (i == 1) ? 0 : 1 : 2, 2);
+ world.setBlockMetadataWithNotify(x + i, y, z + k,
+ (k == -1) ? 3 : (k == 0) ? (i == 1) ? 0 : 1 : 2,
+ 2);
world.setBlock(x, y, z, Blocks.air);
ItemStack stack = new ItemStack(ItemList.bucket);
- JewelryNBT.addMetal(stack, JewelrycraftUtil.metal.get(rand.nextInt(JewelrycraftUtil.metal.size())));
+ JewelryNBT.addMetal(stack, JewelrycraftUtil.metal
+ .get(rand.nextInt(JewelrycraftUtil.metal.size())));
if (stack != null && JewelryNBT.ingot(stack) != null) {
- if (!world.isRemote) world.func_147480_a(x, y, z, true);
+ if (!world.isRemote)
+ world.func_147480_a(x, y, z, true);
world.setBlock(x, y, z, BlockList.moltenMetal, 0, 3);
- if(BlockMoltenMetal.getTileEntity(world, x, y, z) != null) BlockMoltenMetal.getTileEntity(world, x, y, z).setMetal(JewelryNBT.ingot(stack));
+ if (BlockMoltenMetal.getTileEntity(world, x, y, z) != null)
+ BlockMoltenMetal.getTileEntity(world, x, y, z)
+ .setMetal(JewelryNBT.ingot(stack));
}
return true;
}
@Override
- public boolean generate(World world, Random rand, int x, int y, int z) {
+ public boolean generate(World world, Random rand, int x, int y,
+ int z) {
return generate(world, BiomeGenBase.plains, rand, x, y, z);
}
-
- public boolean isUnderground()
- {
- return true;
- }
-
- public int structureNo()
- {
- return 2;
- }
+
+ @Override
+ public boolean isUnderground() {
+ return true;
+ }
+
+ @Override
+ public int structureNo() {
+ return 2;
+ }
}
diff --git a/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure3.java b/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure3.java
index f0e8cfa..f5347ea 100644..100755
--- a/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure3.java
+++ b/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure3.java
@@ -4,6 +4,7 @@
package darkknight.jewelrycraft.worldGen;
import java.util.Random;
+
import net.minecraft.block.Block;
import net.minecraft.init.Blocks;
import net.minecraft.tileentity.TileEntityMobSpawner;
@@ -14,64 +15,78 @@ import net.minecraftforge.common.DungeonHooks;
/**
* @author Sorin
*/
-public class WorldGenStructure3 extends WorldGenStructure
-{
- public boolean generate(World world, BiomeGenBase biome, Random rand, int x, int y, int z)
- {
- Block slab = Blocks.stone_slab;
- Block stair = Blocks.stone_brick_stairs;
- int slabMeta = 13;
- if (biome == BiomeGenBase.desert || biome == BiomeGenBase.desertHills){
- stair = Blocks.sandstone_stairs;
- slabMeta = 9;
- }
- for(int i = -1; i <= 1; i++)
- for(int j = -1; j <= 2; j++)
- for(int k = -1; k <= 1; k++)
- world.setBlock(x + i, y + j, z + k, Blocks.air);
- for(int i = -1; i <= 1; i++)
- for(int k = -1; k <= 1; k++)
- world.setBlock(x + i, y - 1, z + k, slab, slabMeta, 1);
- for(int i = -1; i <= 1; i++)
- for(int k = -1; k <= 1; k++)
- world.setBlock(x + i, y, z + k, stair);
- for(int i = -1; i <= 1; i++)
- for(int k = -1; k <= 1; k++)
- world.setBlockMetadataWithNotify(x + i, y, z + k, (k == -1) ? 3 : (k == 0) ? (i == 1) ? 0 : 1 : 2, 2);
- for(int i = -1; i <= 1; i++)
- for(int k = -1; k <= 1; k++)
- world.setBlock(x + i, y + 1, z + k, stair);
- for(int i = -1; i <= 1; i++)
- for(int k = -1; k <= 1; k++)
- world.setBlockMetadataWithNotify(x + i, y + 1, z + k, (k == -1) ? 7 : (k == 0) ? (i == 1) ? 4 : 5 : 6, 2);
- slabMeta = 5;
- if (biome == BiomeGenBase.desert || biome == BiomeGenBase.desertHills) slabMeta = 1;
- for(int i = -1; i <= 1; i++)
- for(int k = -1; k <= 1; k++)
- world.setBlock(x + i, y + 2, z + k, slab, slabMeta, 2);
- world.setBlock(x, y, z, Blocks.mob_spawner);
- world.setBlock(x, y + 1, z, Blocks.mob_spawner);
- for(int l = 0; l < 2; l++){
- TileEntityMobSpawner tileentitymobspawner = (TileEntityMobSpawner)world.getTileEntity(x, y + l, z);
- if (tileentitymobspawner != null) tileentitymobspawner.func_145881_a().setEntityName(DungeonHooks.getRandomDungeonMob(rand));
- else System.err.println("Failed to fetch mob spawner entity at (" + x + ", " + (y + l) + ", " + z + ")");
- }
- return true;
- }
-
- @Override
- public boolean generate(World world, Random rand, int x, int y, int z)
- {
- return generate(world, BiomeGenBase.plains, rand, x, y, z);
- }
-
- public boolean isUnderground()
- {
- return true;
- }
-
- public int structureNo()
- {
- return 3;
- }
+public class WorldGenStructure3 extends WorldGenStructure {
+ @Override
+ public boolean generate(World world, BiomeGenBase biome, Random rand,
+ int x, int y, int z) {
+ Block slab = Blocks.stone_slab;
+ Block stair = Blocks.stone_brick_stairs;
+ int slabMeta = 13;
+ if (biome == BiomeGenBase.desert
+ || biome == BiomeGenBase.desertHills) {
+ stair = Blocks.sandstone_stairs;
+ slabMeta = 9;
+ }
+ for (int i = -1; i <= 1; i++)
+ for (int j = -1; j <= 2; j++)
+ for (int k = -1; k <= 1; k++)
+ world.setBlock(x + i, y + j, z + k, Blocks.air);
+ for (int i = -1; i <= 1; i++)
+ for (int k = -1; k <= 1; k++)
+ world.setBlock(x + i, y - 1, z + k, slab, slabMeta, 1);
+ for (int i = -1; i <= 1; i++)
+ for (int k = -1; k <= 1; k++)
+ world.setBlock(x + i, y, z + k, stair);
+ for (int i = -1; i <= 1; i++)
+ for (int k = -1; k <= 1; k++)
+ world.setBlockMetadataWithNotify(x + i, y, z + k,
+ (k == -1) ? 3 : (k == 0) ? (i == 1) ? 0 : 1 : 2,
+ 2);
+ for (int i = -1; i <= 1; i++)
+ for (int k = -1; k <= 1; k++)
+ world.setBlock(x + i, y + 1, z + k, stair);
+ for (int i = -1; i <= 1; i++)
+ for (int k = -1; k <= 1; k++)
+ world.setBlockMetadataWithNotify(x + i, y + 1, z + k,
+ (k == -1) ? 7 : (k == 0) ? (i == 1) ? 4 : 5 : 6,
+ 2);
+ slabMeta = 5;
+ if (biome == BiomeGenBase.desert
+ || biome == BiomeGenBase.desertHills)
+ slabMeta = 1;
+ for (int i = -1; i <= 1; i++)
+ for (int k = -1; k <= 1; k++)
+ world.setBlock(x + i, y + 2, z + k, slab, slabMeta, 2);
+ world.setBlock(x, y, z, Blocks.mob_spawner);
+ world.setBlock(x, y + 1, z, Blocks.mob_spawner);
+ for (int l = 0; l < 2; l++) {
+ TileEntityMobSpawner tileentitymobspawner =
+ (TileEntityMobSpawner) world.getTileEntity(x, y + l,
+ z);
+ if (tileentitymobspawner != null)
+ tileentitymobspawner.func_145881_a().setEntityName(
+ DungeonHooks.getRandomDungeonMob(rand));
+ else
+ System.err
+ .println("Failed to fetch mob spawner entity at ("
+ + x + ", " + (y + l) + ", " + z + ")");
+ }
+ return true;
+ }
+
+ @Override
+ public boolean generate(World world, Random rand, int x, int y,
+ int z) {
+ return generate(world, BiomeGenBase.plains, rand, x, y, z);
+ }
+
+ @Override
+ public boolean isUnderground() {
+ return true;
+ }
+
+ @Override
+ public int structureNo() {
+ return 3;
+ }
}
diff --git a/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure4.java b/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure4.java
index b0be600..a791914 100644..100755
--- a/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure4.java
+++ b/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure4.java
@@ -4,6 +4,7 @@
package darkknight.jewelrycraft.worldGen;
import java.util.Random;
+
import darkknight.jewelrycraft.block.BlockList;
import net.minecraft.block.Block;
import net.minecraft.init.Blocks;
@@ -13,54 +14,60 @@ import net.minecraft.world.biome.BiomeGenBase;
/**
* @author Sorin
*/
-public class WorldGenStructure4 extends WorldGenStructure
-{
- public boolean generate(World world, BiomeGenBase biome, Random rand, int x, int y, int z)
- {
- Block stair = Blocks.stone_brick_stairs;
- Block block = Blocks.stonebrick;
- int metadata = 0, slabMeta = 5;
- if (biome == BiomeGenBase.desert || biome == BiomeGenBase.desertHills){
- stair = Blocks.sandstone_stairs;
- block = Blocks.sandstone;
- metadata = 2;
- slabMeta = 1;
- }
- for(int i = -1; i <= 1; i++)
- for(int j = 0; j <= 3; j++)
- for(int k = -1; k <= 1; k++)
- world.setBlock(x + i, y + j, z + k, Blocks.air);
- for(int i = -1; i <= 1; i++)
- for(int k = -1; k <= 1; k++)
- world.setBlock(x + i, y, z + k, Blocks.stone_slab, slabMeta, 2);
- world.setBlock(x, y, z, block, metadata, 2);
- world.setBlock(x, y, z - 1, stair, 3, 1);
- world.setBlock(x, y, z + 1, stair, 2, 1);
- world.setBlock(x - 1, y, z, stair, 1, 1);
- world.setBlock(x + 1, y, z, stair, 0, 1);
- world.setBlock(x, y + 1, z - 1, stair, 7, 1);
- world.setBlock(x, y + 1, z + 1, stair, 6, 1);
- world.setBlock(x - 1, y + 1, z, stair, 5, 1);
- world.setBlock(x + 1, y + 1, z, stair, 4, 1);
- world.setBlock(x, y + 1, z, BlockList.shadowBlock);
- slabMeta = 5;
- if (biome == BiomeGenBase.desert || biome == BiomeGenBase.desertHills) slabMeta = 1;
- for(int i = -1; i <= 1; i++)
- for(int k = -1; k <= 1; k++)
- if (i == 0 || k == 0) world.setBlock(x + i, y + 2, z + k, Blocks.stone_slab, slabMeta, 2);
- world.setBlock(x, y + 2, z, block, metadata, 2);
- world.setBlock(x, y + 3, z, BlockList.crystal);
- return true;
- }
-
- @Override
- public boolean generate(World world, Random rand, int x, int y, int z)
- {
- return generate(world, BiomeGenBase.plains, rand, x, y, z);
- }
-
- public int structureNo()
- {
- return 4;
- }
+public class WorldGenStructure4 extends WorldGenStructure {
+ @Override
+ public boolean generate(World world, BiomeGenBase biome, Random rand,
+ int x, int y, int z) {
+ Block stair = Blocks.stone_brick_stairs;
+ Block block = Blocks.stonebrick;
+ int metadata = 0, slabMeta = 5;
+ if (biome == BiomeGenBase.desert
+ || biome == BiomeGenBase.desertHills) {
+ stair = Blocks.sandstone_stairs;
+ block = Blocks.sandstone;
+ metadata = 2;
+ slabMeta = 1;
+ }
+ for (int i = -1; i <= 1; i++)
+ for (int j = 0; j <= 3; j++)
+ for (int k = -1; k <= 1; k++)
+ world.setBlock(x + i, y + j, z + k, Blocks.air);
+ for (int i = -1; i <= 1; i++)
+ for (int k = -1; k <= 1; k++)
+ world.setBlock(x + i, y, z + k, Blocks.stone_slab,
+ slabMeta, 2);
+ world.setBlock(x, y, z, block, metadata, 2);
+ world.setBlock(x, y, z - 1, stair, 3, 1);
+ world.setBlock(x, y, z + 1, stair, 2, 1);
+ world.setBlock(x - 1, y, z, stair, 1, 1);
+ world.setBlock(x + 1, y, z, stair, 0, 1);
+ world.setBlock(x, y + 1, z - 1, stair, 7, 1);
+ world.setBlock(x, y + 1, z + 1, stair, 6, 1);
+ world.setBlock(x - 1, y + 1, z, stair, 5, 1);
+ world.setBlock(x + 1, y + 1, z, stair, 4, 1);
+ world.setBlock(x, y + 1, z, BlockList.shadowBlock);
+ slabMeta = 5;
+ if (biome == BiomeGenBase.desert
+ || biome == BiomeGenBase.desertHills)
+ slabMeta = 1;
+ for (int i = -1; i <= 1; i++)
+ for (int k = -1; k <= 1; k++)
+ if (i == 0 || k == 0)
+ world.setBlock(x + i, y + 2, z + k, Blocks.stone_slab,
+ slabMeta, 2);
+ world.setBlock(x, y + 2, z, block, metadata, 2);
+ world.setBlock(x, y + 3, z, BlockList.crystal);
+ return true;
+ }
+
+ @Override
+ public boolean generate(World world, Random rand, int x, int y,
+ int z) {
+ return generate(world, BiomeGenBase.plains, rand, x, y, z);
+ }
+
+ @Override
+ public int structureNo() {
+ return 4;
+ }
}
diff --git a/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure5.java b/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure5.java
index e67fdb1..ee74bdb 100644..100755
--- a/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure5.java
+++ b/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure5.java
@@ -4,6 +4,7 @@
package darkknight.jewelrycraft.worldGen;
import java.util.Random;
+
import darkknight.jewelrycraft.block.BlockList;
import darkknight.jewelrycraft.block.BlockMoltenMetal;
import darkknight.jewelrycraft.item.ItemList;
@@ -19,12 +20,15 @@ import net.minecraft.world.biome.BiomeGenBase;
* @author Sorin
*/
public class WorldGenStructure5 extends WorldGenStructure {
- public boolean generate(World world, BiomeGenBase biome, Random rand, int x, int y, int z) {
+ @Override
+ public boolean generate(World world, BiomeGenBase biome, Random rand,
+ int x, int y, int z) {
Block slab = Blocks.stone_slab;
Block stair = Blocks.stone_brick_stairs;
Block block = Blocks.stonebrick;
int metadata = 0, slabMeta = 5;
- if (biome == BiomeGenBase.desert || biome == BiomeGenBase.desertHills) {
+ if (biome == BiomeGenBase.desert
+ || biome == BiomeGenBase.desertHills) {
stair = Blocks.sandstone_stairs;
block = Blocks.sandstone;
metadata = 2;
@@ -48,7 +52,9 @@ public class WorldGenStructure5 extends WorldGenStructure {
world.setBlock(x + i, y - 1, z + k, block, metadata, 2);
for (int i = -5; i <= -3; i++)
for (int k = -3; k <= 2; k++)
- if ((i != -4 || k <= -3 || k >= 2) && !(i == -3 && k == -2)) world.setBlock(x + i, y, z + k, slab, slabMeta, 2);
+ if ((i != -4 || k <= -3 || k >= 2)
+ && !(i == -3 && k == -2))
+ world.setBlock(x + i, y, z + k, slab, slabMeta, 2);
world.setBlock(x - 3, y, z - 1, stair, 0, 2);
world.setBlock(x - 3, y, z - 3, stair, 0, 2);
world.setBlock(x - 2, y + 1, z - 3, slab, slabMeta, 2);
@@ -65,27 +71,34 @@ public class WorldGenStructure5 extends WorldGenStructure {
ItemStack stack = new ItemStack(ItemList.bucket);
JewelryNBT.addMetal(stack, new ItemStack(Items.gold_ingot));
if (stack != null && JewelryNBT.ingot(stack) != null) {
- if (!world.isRemote) world.func_147480_a(x, y, z, true);
- world.setBlock(x + 1, y + 2, z - 2, BlockList.moltenMetal, 0, 3);
- if(BlockMoltenMetal.getTileEntity(world, x + 1, y + 2, z - 2) != null) BlockMoltenMetal.getTileEntity(world, x + 1, y + 2, z - 2).setMetal(JewelryNBT.ingot(stack));
+ if (!world.isRemote)
+ world.func_147480_a(x, y, z, true);
+ world.setBlock(x + 1, y + 2, z - 2, BlockList.moltenMetal,
+ 0, 3);
+ if (BlockMoltenMetal.getTileEntity(world, x + 1, y + 2,
+ z - 2) != null)
+ BlockMoltenMetal
+ .getTileEntity(world, x + 1, y + 2, z - 2)
+ .setMetal(JewelryNBT.ingot(stack));
}
- }
- else world.setBlock(x + 1, y + 2, z - 2, Blocks.water, 0, 3);
+ } else
+ world.setBlock(x + 1, y + 2, z - 2, Blocks.water, 0, 3);
return true;
}
@Override
- public boolean generate(World world, Random rand, int x, int y, int z) {
+ public boolean generate(World world, Random rand, int x, int y,
+ int z) {
return generate(world, BiomeGenBase.plains, rand, x, y, z);
}
-
- public boolean isUnderground()
- {
- return true;
- }
-
- public int structureNo()
- {
- return 5;
- }
+
+ @Override
+ public boolean isUnderground() {
+ return true;
+ }
+
+ @Override
+ public int structureNo() {
+ return 5;
+ }
}
diff --git a/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure6.java b/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure6.java
index d68402a..40fca43 100644..100755
--- a/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure6.java
+++ b/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure6.java
@@ -4,6 +4,7 @@
package darkknight.jewelrycraft.worldGen;
import java.util.Random;
+
import darkknight.jewelrycraft.block.BlockList;
import darkknight.jewelrycraft.item.ItemList;
import darkknight.jewelrycraft.random.WeightedRandomItem;
@@ -27,7 +28,9 @@ import net.minecraft.world.biome.BiomeGenBase;
* @author Sorin
*/
public class WorldGenStructure6 extends WorldGenStructure {
- public boolean generate(World world, BiomeGenBase biome, Random rand, int x, int y, int z) {
+ @Override
+ public boolean generate(World world, BiomeGenBase biome, Random rand,
+ int x, int y, int z) {
int randBlock, randBlockMeta;
Block block;
for (int i = -2; i <= 1; i++)
@@ -38,62 +41,86 @@ public class WorldGenStructure6 extends WorldGenStructure {
for (int k = -2; k <= 1; k++) {
randBlock = rand.nextInt(4);
switch (randBlock) {
- case 0:
- block = Blocks.cobblestone;
- randBlockMeta = 0;
- break;
- case 1:
- block = Blocks.stonebrick;
- randBlockMeta = 2;
- break;
- case 2:
- block = Blocks.stonebrick;
- randBlockMeta = 0;
- break;
- default:
- block = Blocks.cobblestone;
- randBlockMeta = 0;
- break;
+ case 0:
+ block = Blocks.cobblestone;
+ randBlockMeta = 0;
+ break;
+ case 1:
+ block = Blocks.stonebrick;
+ randBlockMeta = 2;
+ break;
+ case 2:
+ block = Blocks.stonebrick;
+ randBlockMeta = 0;
+ break;
+ default:
+ block = Blocks.cobblestone;
+ randBlockMeta = 0;
+ break;
}
- world.setBlock(x + i, y - 1, z + k, block, randBlockMeta, 2);
+ world.setBlock(x + i, y - 1, z + k, block, randBlockMeta,
+ 2);
}
int crystalCol = rand.nextInt(15);
world.setBlock(x - 2, y, z - 2, BlockList.crystal, 0, 2);
- world.setBlock(x - 2, y, z + 1, BlockList.crystal, 1 + crystalCol, 2);
- world.setBlock(x + 1, y, z - 2, BlockList.crystal, 1 + crystalCol, 2);
+ world.setBlock(x - 2, y, z + 1, BlockList.crystal, 1 + crystalCol,
+ 2);
+ world.setBlock(x + 1, y, z - 2, BlockList.crystal, 1 + crystalCol,
+ 2);
world.setBlock(x + 1, y, z + 1, BlockList.crystal, 0, 2);
world.setBlock(x - 1, y, z - 1, Blocks.skull, 1, 2);
TileEntity tileentity = world.getTileEntity(x - 1, y, z - 1);
if (tileentity != null && tileentity instanceof TileEntitySkull) {
- ((TileEntitySkull) tileentity).func_152107_a(rand.nextInt(50) == 0 ? 1 : 0);
- ((TileEntitySkull) tileentity).func_145903_a(MathHelper.floor_double((double) (rand.nextInt(361) * 16.0F / 360.0F) + 0.5D) & 15);
- ((BlockSkull) Blocks.skull).func_149965_a(world, x - 1, y, z - 1, (TileEntitySkull) tileentity);
+ ((TileEntitySkull) tileentity)
+ .func_152107_a(rand.nextInt(50) == 0 ? 1 : 0);
+ ((TileEntitySkull) tileentity)
+ .func_145903_a(MathHelper.floor_double(
+ (double) (rand.nextInt(361) * 16.0F / 360.0F)
+ + 0.5D)
+ & 15);
+ ((BlockSkull) Blocks.skull).func_149965_a(world, x - 1, y,
+ z - 1, (TileEntitySkull) tileentity);
}
- world.setBlock(x + 1, y, z - 1, BlockList.jewelCraftingTable, 3, 2);
+ world.setBlock(x + 1, y, z - 1, BlockList.jewelCraftingTable, 3,
+ 2);
TileEntity jewelersTable = world.getTileEntity(x + 1, y, z - 1);
- Item[] jewelry = new Item[] { ItemList.ring, ItemList.necklace, ItemList.bracelet, ItemList.earrings };
- if (jewelersTable != null && jewelersTable instanceof TileEntityJewelrsCraftingTable) {
- if (rand.nextBoolean()) ((TileEntityJewelrsCraftingTable) jewelersTable).setGemItemStack(JewelrycraftUtil.gem.get(rand.nextInt(JewelrycraftUtil.gem.size())));
+ Item[] jewelry = new Item[] { ItemList.ring, ItemList.necklace,
+ ItemList.bracelet, ItemList.earrings };
+ if (jewelersTable != null
+ && jewelersTable instanceof TileEntityJewelrsCraftingTable) {
+ if (rand.nextBoolean())
+ ((TileEntityJewelrsCraftingTable) jewelersTable)
+ .setGemItemStack(JewelrycraftUtil.gem.get(rand
+ .nextInt(JewelrycraftUtil.gem.size())));
else if (rand.nextBoolean()) {
- ItemStack result = new ItemStack(jewelry[rand.nextInt(4)], 1, 0);
- if (JewelrycraftUtil.metal.size() > 0) JewelryNBT.addMetal(result, JewelrycraftUtil.metal.get(rand.nextInt(JewelrycraftUtil.metal.size())));
- ((TileEntityJewelrsCraftingTable) jewelersTable).setJewelryItemStack(result);
+ ItemStack result =
+ new ItemStack(jewelry[rand.nextInt(4)], 1, 0);
+ if (JewelrycraftUtil.metal.size() > 0)
+ JewelryNBT.addMetal(result, JewelrycraftUtil.metal.get(
+ rand.nextInt(JewelrycraftUtil.metal.size())));
+ ((TileEntityJewelrsCraftingTable) jewelersTable)
+ .setJewelryItemStack(result);
}
}
world.setBlock(x - 1, y, z + 1, BlockList.handPedestal, 0, 2);
TileEntity pedestal = world.getTileEntity(x - 1, y, z + 1);
- if (pedestal != null && pedestal instanceof TileEntityHandPedestal) ((TileEntityHandPedestal) pedestal).setHeldItemStack(((WeightedRandomItem) WeightedRandom.getRandomItem(rand, WorldGenStructure1.items)).getItem(rand));
+ if (pedestal != null && pedestal instanceof TileEntityHandPedestal)
+ ((TileEntityHandPedestal) pedestal)
+ .setHeldItemStack(((WeightedRandomItem) WeightedRandom
+ .getRandomItem(rand, WorldGenStructure1.items))
+ .getItem(rand));
world.setBlock(x - 1, y + 1, z + 1, BlockList.shadowEye, 0, 2);
return true;
}
@Override
- public boolean generate(World world, Random rand, int x, int y, int z) {
+ public boolean generate(World world, Random rand, int x, int y,
+ int z) {
return generate(world, BiomeGenBase.plains, rand, x, y, z);
}
-
- public int structureNo()
- {
- return 6;
- }
+
+ @Override
+ public int structureNo() {
+ return 6;
+ }
}
diff --git a/src/main/java/darkknight/jewelrycraft/worldGen/village/ComponentJewelry.java b/src/main/java/darkknight/jewelrycraft/worldGen/village/ComponentJewelry.java
index cefd063..00e074c 100644..100755
--- a/src/main/java/darkknight/jewelrycraft/worldGen/village/ComponentJewelry.java
+++ b/src/main/java/darkknight/jewelrycraft/worldGen/village/ComponentJewelry.java
@@ -2,6 +2,7 @@ package darkknight.jewelrycraft.worldGen.village;
import java.util.List;
import java.util.Random;
+
import darkknight.jewelrycraft.block.BlockList;
import darkknight.jewelrycraft.config.ConfigHandler;
import darkknight.jewelrycraft.item.ItemList;
@@ -27,97 +28,154 @@ import net.minecraft.world.gen.structure.StructureVillagePieces;
import net.minecraft.world.gen.structure.StructureVillagePieces.Start;
public class ComponentJewelry extends StructureVillagePieces.House1 {
- private int averageGroundLevel = -1;
+ private int averageGroundLevel = -1;
public ComponentJewelry() {
}
- public ComponentJewelry(Start par1ComponentVillageStartPiece, int par2, Random par3Random, StructureBoundingBox par4StructureBoundingBox, int par5) {
+ public ComponentJewelry(Start par1ComponentVillageStartPiece, int par2,
+ Random par3Random,
+ StructureBoundingBox par4StructureBoundingBox, int par5) {
super();
coordBaseMode = par5;
boundingBox = par4StructureBoundingBox;
}
@SuppressWarnings("rawtypes")
- public static ComponentJewelry buildComponent(Start villagePiece, List pieces, Random random, int p1, int p2, int p3, int p4, int p5) {
- StructureBoundingBox structureboundingbox = StructureBoundingBox.getComponentToAddBoundingBox(p1, p2, p3, 0, 0, 0, 11, 5, 12, p4);
- return canVillageGoDeeper(structureboundingbox) && StructureComponent.findIntersecting(pieces, structureboundingbox) == null ? new ComponentJewelry(villagePiece, p5, random, structureboundingbox, p4) : null;
+ public static ComponentJewelry buildComponent(Start villagePiece,
+ List pieces, Random random, int p1, int p2, int p3, int p4,
+ int p5) {
+ StructureBoundingBox structureboundingbox =
+ StructureBoundingBox.getComponentToAddBoundingBox(p1, p2,
+ p3, 0, 0, 0, 11, 5, 12, p4);
+ return canVillageGoDeeper(structureboundingbox)
+ && StructureComponent.findIntersecting(pieces,
+ structureboundingbox) == null
+ ? new ComponentJewelry(villagePiece, p5,
+ random, structureboundingbox, p4)
+ : null;
}
@Override
- public boolean addComponentParts(World world, Random random, StructureBoundingBox sbb) {
+ public boolean addComponentParts(World world, Random random,
+ StructureBoundingBox sbb) {
if (averageGroundLevel < 0) {
averageGroundLevel = getAverageGroundLevel(world, sbb);
- if (averageGroundLevel < 0) return true;
- boundingBox.offset(0, averageGroundLevel - boundingBox.maxY + 3, 0);
+ if (averageGroundLevel < 0)
+ return true;
+ boundingBox.offset(0,
+ averageGroundLevel - boundingBox.maxY + 3, 0);
}
- fillWithBlocks(world, sbb, 0, 0, 6, 10, 5, 11, Block.getBlockById(0), Block.getBlockById(0), false);
- fillWithBlocks(world, sbb, 2, 0, 0, 8, 5, 5, Block.getBlockById(0), Block.getBlockById(0), false);
+ fillWithBlocks(world, sbb, 0, 0, 6, 10, 5, 11,
+ Block.getBlockById(0), Block.getBlockById(0), false);
+ fillWithBlocks(world, sbb, 2, 0, 0, 8, 5, 5, Block.getBlockById(0),
+ Block.getBlockById(0), false);
// Pillars
- fillWithBlocks(world, sbb, 2, 0, 0, 2, 3, 0, Blocks.log, Blocks.log, false);
- fillWithBlocks(world, sbb, 2, 0, 3, 2, 3, 3, Blocks.log, Blocks.log, false);
- fillWithBlocks(world, sbb, 8, 0, 0, 8, 3, 0, Blocks.log, Blocks.log, false);
- fillWithBlocks(world, sbb, 8, 0, 3, 8, 3, 3, Blocks.log, Blocks.log, false);
+ fillWithBlocks(world, sbb, 2, 0, 0, 2, 3, 0, Blocks.log,
+ Blocks.log, false);
+ fillWithBlocks(world, sbb, 2, 0, 3, 2, 3, 3, Blocks.log,
+ Blocks.log, false);
+ fillWithBlocks(world, sbb, 8, 0, 0, 8, 3, 0, Blocks.log,
+ Blocks.log, false);
+ fillWithBlocks(world, sbb, 8, 0, 3, 8, 3, 3, Blocks.log,
+ Blocks.log, false);
// Walls
- fillWithBlocks(world, sbb, 2, 0, 1, 2, 3, 2, Blocks.planks, Blocks.planks, false);
- fillWithBlocks(world, sbb, 2, 0, 4, 2, 3, 5, Blocks.planks, Blocks.planks, false);
- fillWithBlocks(world, sbb, 8, 0, 1, 8, 3, 2, Blocks.planks, Blocks.planks, false);
- fillWithBlocks(world, sbb, 8, 0, 4, 8, 3, 5, Blocks.planks, Blocks.planks, false);
- fillWithBlocks(world, sbb, 3, 0, 0, 7, 3, 0, Blocks.planks, Blocks.planks, false);
- fillWithBlocks(world, sbb, 0, 0, 6, 10, 3, 6, Blocks.cobblestone, Blocks.cobblestone, false);
- fillWithBlocks(world, sbb, 0, 0, 11, 10, 3, 11, Blocks.cobblestone, Blocks.cobblestone, false);
- fillWithBlocks(world, sbb, 0, 0, 6, 0, 3, 11, Blocks.cobblestone, Blocks.cobblestone, false);
- fillWithBlocks(world, sbb, 10, 0, 6, 10, 3, 11, Blocks.cobblestone, Blocks.cobblestone, false);
+ fillWithBlocks(world, sbb, 2, 0, 1, 2, 3, 2, Blocks.planks,
+ Blocks.planks, false);
+ fillWithBlocks(world, sbb, 2, 0, 4, 2, 3, 5, Blocks.planks,
+ Blocks.planks, false);
+ fillWithBlocks(world, sbb, 8, 0, 1, 8, 3, 2, Blocks.planks,
+ Blocks.planks, false);
+ fillWithBlocks(world, sbb, 8, 0, 4, 8, 3, 5, Blocks.planks,
+ Blocks.planks, false);
+ fillWithBlocks(world, sbb, 3, 0, 0, 7, 3, 0, Blocks.planks,
+ Blocks.planks, false);
+ fillWithBlocks(world, sbb, 0, 0, 6, 10, 3, 6, Blocks.cobblestone,
+ Blocks.cobblestone, false);
+ fillWithBlocks(world, sbb, 0, 0, 11, 10, 3, 11, Blocks.cobblestone,
+ Blocks.cobblestone, false);
+ fillWithBlocks(world, sbb, 0, 0, 6, 0, 3, 11, Blocks.cobblestone,
+ Blocks.cobblestone, false);
+ fillWithBlocks(world, sbb, 10, 0, 6, 10, 3, 11, Blocks.cobblestone,
+ Blocks.cobblestone, false);
// Roof
for (int i = 3; i <= 7; i++)
for (int j = 1; j <= 5; j++)
- placeBlockAtCurrentPosition(world, Blocks.wooden_slab, 2, i, 4, j, sbb);
+ placeBlockAtCurrentPosition(world, Blocks.wooden_slab, 2,
+ i, 4, j, sbb);
for (int i = 3; i <= 7; i++)
for (int j = 6; j <= 6; j++)
- placeBlockAtCurrentPosition(world, Blocks.stone_slab, 0, i, 4, j, sbb);
+ placeBlockAtCurrentPosition(world, Blocks.stone_slab, 0, i,
+ 4, j, sbb);
for (int i = 1; i <= 9; i++)
for (int j = 7; j <= 10; j++)
- placeBlockAtCurrentPosition(world, Blocks.stone_slab, 3, i, 4, j, sbb);
+ placeBlockAtCurrentPosition(world, Blocks.stone_slab, 3, i,
+ 4, j, sbb);
for (int i = 2; i <= 8; i++)
- placeBlockAtCurrentPosition(world, Blocks.double_wooden_slab, 2, i, 4, 0, sbb);
+ placeBlockAtCurrentPosition(world, Blocks.double_wooden_slab,
+ 2, i, 4, 0, sbb);
for (int i = 1; i <= 5; i++) {
- placeBlockAtCurrentPosition(world, Blocks.double_wooden_slab, 2, 2, 4, i, sbb);
- placeBlockAtCurrentPosition(world, Blocks.double_wooden_slab, 2, 8, 4, i, sbb);
+ placeBlockAtCurrentPosition(world, Blocks.double_wooden_slab,
+ 2, 2, 4, i, sbb);
+ placeBlockAtCurrentPosition(world, Blocks.double_wooden_slab,
+ 2, 8, 4, i, sbb);
}
for (int i = 0; i <= 2; i++) {
- placeBlockAtCurrentPosition(world, Blocks.double_stone_slab, 0, i, 4, 6, sbb);
- placeBlockAtCurrentPosition(world, Blocks.double_stone_slab, 0, i + 8, 4, 6, sbb);
+ placeBlockAtCurrentPosition(world, Blocks.double_stone_slab, 0,
+ i, 4, 6, sbb);
+ placeBlockAtCurrentPosition(world, Blocks.double_stone_slab, 0,
+ i + 8, 4, 6, sbb);
}
for (int i = 7; i <= 11; i++) {
- placeBlockAtCurrentPosition(world, Blocks.double_stone_slab, 0, 0, 4, i, sbb);
- placeBlockAtCurrentPosition(world, Blocks.double_stone_slab, 0, 10, 4, i, sbb);
+ placeBlockAtCurrentPosition(world, Blocks.double_stone_slab, 0,
+ 0, 4, i, sbb);
+ placeBlockAtCurrentPosition(world, Blocks.double_stone_slab, 0,
+ 10, 4, i, sbb);
}
for (int i = 0; i <= 10; i++)
- placeBlockAtCurrentPosition(world, Blocks.double_stone_slab, 0, i, 4, 11, sbb);
+ placeBlockAtCurrentPosition(world, Blocks.double_stone_slab, 0,
+ i, 4, 11, sbb);
// Base
for (int i = 2; i <= 8; i++)
for (int j = 0; j <= 5; j++)
- placeBlockAtCurrentPosition(world, Blocks.planks, 1, i, 0, j, sbb);
- fillWithBlocks(world, sbb, 0, 0, 6, 10, 0, 11, Blocks.stonebrick, Blocks.stonebrick, false);
+ placeBlockAtCurrentPosition(world, Blocks.planks, 1, i, 0,
+ j, sbb);
+ fillWithBlocks(world, sbb, 0, 0, 6, 10, 0, 11, Blocks.stonebrick,
+ Blocks.stonebrick, false);
for (int i = 6; i <= 10; i++)
- placeBlockAtCurrentPosition(world, Blocks.double_stone_slab, 0, 5, 0, i, sbb);
+ placeBlockAtCurrentPosition(world, Blocks.double_stone_slab, 0,
+ 5, 0, i, sbb);
for (int i = 7; i <= 10; i++) {
- placeBlockAtCurrentPosition(world, Blocks.stonebrick, 3, 1, 0, i, sbb);
- placeBlockAtCurrentPosition(world, Blocks.stonebrick, 3, 9, 0, i, sbb);
+ placeBlockAtCurrentPosition(world, Blocks.stonebrick, 3, 1, 0,
+ i, sbb);
+ placeBlockAtCurrentPosition(world, Blocks.stonebrick, 3, 9, 0,
+ i, sbb);
}
// Decorations
- placeDoorAtCurrentPosition(world, sbb, random, 6, 1, 0, getMetadataWithOffset(Blocks.wooden_door, 1));
- placeDoorAtCurrentPosition(world, sbb, random, 5, 1, 6, getMetadataWithOffset(Blocks.wooden_door, 1));
- placeBlockAtCurrentPosition(world, Blocks.glass_pane, 0, 3, 2, 0, sbb);
- placeBlockAtCurrentPosition(world, Blocks.glass_pane, 0, 4, 2, 0, sbb);
- placeBlockAtCurrentPosition(world, Blocks.glass_pane, 0, 2, 2, 1, sbb);
- placeBlockAtCurrentPosition(world, Blocks.glass_pane, 0, 2, 2, 2, sbb);
- placeBlockAtCurrentPosition(world, Blocks.glass_pane, 0, 2, 2, 4, sbb);
- placeBlockAtCurrentPosition(world, Blocks.glass_pane, 0, 2, 2, 5, sbb);
- placeBlockAtCurrentPosition(world, Blocks.glass_pane, 0, 8, 2, 1, sbb);
- placeBlockAtCurrentPosition(world, Blocks.glass_pane, 0, 8, 2, 2, sbb);
- placeBlockAtCurrentPosition(world, Blocks.glass_pane, 0, 8, 2, 4, sbb);
- placeBlockAtCurrentPosition(world, Blocks.glass_pane, 0, 8, 2, 5, sbb);
+ placeDoorAtCurrentPosition(world, sbb, random, 6, 1, 0,
+ getMetadataWithOffset(Blocks.wooden_door, 1));
+ placeDoorAtCurrentPosition(world, sbb, random, 5, 1, 6,
+ getMetadataWithOffset(Blocks.wooden_door, 1));
+ placeBlockAtCurrentPosition(world, Blocks.glass_pane, 0, 3, 2, 0,
+ sbb);
+ placeBlockAtCurrentPosition(world, Blocks.glass_pane, 0, 4, 2, 0,
+ sbb);
+ placeBlockAtCurrentPosition(world, Blocks.glass_pane, 0, 2, 2, 1,
+ sbb);
+ placeBlockAtCurrentPosition(world, Blocks.glass_pane, 0, 2, 2, 2,
+ sbb);
+ placeBlockAtCurrentPosition(world, Blocks.glass_pane, 0, 2, 2, 4,
+ sbb);
+ placeBlockAtCurrentPosition(world, Blocks.glass_pane, 0, 2, 2, 5,
+ sbb);
+ placeBlockAtCurrentPosition(world, Blocks.glass_pane, 0, 8, 2, 1,
+ sbb);
+ placeBlockAtCurrentPosition(world, Blocks.glass_pane, 0, 8, 2, 2,
+ sbb);
+ placeBlockAtCurrentPosition(world, Blocks.glass_pane, 0, 8, 2, 4,
+ sbb);
+ placeBlockAtCurrentPosition(world, Blocks.glass_pane, 0, 8, 2, 5,
+ sbb);
placeBlockAtCurrentPosition(world, Blocks.torch, 0, 6, 3, 1, sbb);
placeBlockAtCurrentPosition(world, Blocks.torch, 0, 3, 3, 3, sbb);
placeBlockAtCurrentPosition(world, Blocks.torch, 0, 7, 3, 3, sbb);
@@ -131,119 +189,237 @@ public class ComponentJewelry extends StructureVillagePieces.House1 {
int bgCarpetColor = random.nextInt(16);
for (int i = 4; i <= 7; i++)
for (int j = 1; j <= 5; j++)
- placeBlockAtCurrentPosition(world, Blocks.carpet, bgCarpetColor, i, 1, j, sbb);
- generateChest(world, 3, 1, 1, 0, random, sbb, ConfigHandler.GEM_CHEST_MIN, ConfigHandler.GEM_CHEST_MAX);
- generateDisplayer(world, 3, 1, 2, coordBaseMode == 0 || coordBaseMode == 2 ? 1 : 2, random, sbb);
- placeBlockAtCurrentPosition(world, BlockList.jewelCraftingTable, coordBaseMode == 0 || coordBaseMode == 2 ? 1 : 2, 3, 1, 3, sbb);
- generateDisplayer(world, 3, 1, 4, coordBaseMode == 0 || coordBaseMode == 2 ? 1 : 2, random, sbb);
- generateChest(world, 3, 1, 5, 0, random, sbb, ConfigHandler.GEM_CHEST_MIN, ConfigHandler.GEM_CHEST_MAX);
- generateFurnace(world, 1, 1, 7, 0, random, sbb, ConfigHandler.FURNACE_MIN_INGOT_STACK, ConfigHandler.FURNACE_MAX_INGOT_STACK, ConfigHandler.CAN_FURNACE_GENERATE_INGOTS);
- generateFurnace(world, 1, 2, 7, 0, random, sbb, ConfigHandler.FURNACE_MIN_INGOT_STACK, ConfigHandler.FURNACE_MAX_INGOT_STACK, ConfigHandler.CAN_FURNACE_GENERATE_INGOTS);
- generateFurnace(world, 1, 3, 7, 0, random, sbb, ConfigHandler.FURNACE_MIN_INGOT_STACK, ConfigHandler.FURNACE_MAX_INGOT_STACK, ConfigHandler.CAN_FURNACE_GENERATE_INGOTS);
- generateFurnace(world, 1, 1, 10, 0, random, sbb, ConfigHandler.FURNACE_MIN_INGOT_STACK, ConfigHandler.FURNACE_MAX_INGOT_STACK, ConfigHandler.CAN_FURNACE_GENERATE_INGOTS);
- generateFurnace(world, 1, 2, 10, 0, random, sbb, ConfigHandler.FURNACE_MIN_INGOT_STACK, ConfigHandler.FURNACE_MAX_INGOT_STACK, ConfigHandler.CAN_FURNACE_GENERATE_INGOTS);
- generateFurnace(world, 1, 3, 10, 0, random, sbb, ConfigHandler.FURNACE_MIN_INGOT_STACK, ConfigHandler.FURNACE_MAX_INGOT_STACK, ConfigHandler.CAN_FURNACE_GENERATE_INGOTS);
- generateSmelter(world, 1, 1, 8, coordBaseMode == 0 || coordBaseMode == 2 ? 1 : 2, random, sbb, random.nextBoolean());
- generateSmelter(world, 1, 1, 9, coordBaseMode == 0 || coordBaseMode == 2 ? 1 : 2, random, sbb, random.nextBoolean());
- generateMolder(world, 2, 1, 8, coordBaseMode == 0 || coordBaseMode == 2 ? 1 : 2, random, sbb, random.nextBoolean(), random.nextBoolean());
- generateMolder(world, 2, 1, 9, coordBaseMode == 0 || coordBaseMode == 2 ? 1 : 2, random, sbb, random.nextBoolean(), random.nextBoolean());
- if (random.nextBoolean()) generateIngotChest(world, 9, 1, 7, 0, random, sbb, ConfigHandler.INGOT_CHEST_MIN, ConfigHandler.INGOT_CHEST_MAX, Blocks.chest, ConfigHandler.INGOT_CHEST_MAX_STACK);
- else generateOresChest(world, 9, 1, 7, 0, random, sbb, ConfigHandler.INGOT_CHEST_MIN, ConfigHandler.INGOT_CHEST_MAX, Blocks.chest, ConfigHandler.INGOT_CHEST_MAX_STACK);
- if (random.nextBoolean()) generateIngotChest(world, 9, 1, 8, 0, random, sbb, ConfigHandler.INGOT_CHEST_MIN, ConfigHandler.INGOT_CHEST_MAX, Blocks.chest, ConfigHandler.INGOT_CHEST_MAX_STACK);
- else generateOresChest(world, 9, 1, 8, 0, random, sbb, ConfigHandler.INGOT_CHEST_MIN, ConfigHandler.INGOT_CHEST_MAX, Blocks.chest, ConfigHandler.INGOT_CHEST_MAX_STACK);
- if (random.nextBoolean()) generateIngotChest(world, 9, 1, 9, 0, random, sbb, ConfigHandler.INGOT_CHEST_MIN, ConfigHandler.INGOT_CHEST_MAX, Blocks.trapped_chest, ConfigHandler.INGOT_CHEST_MAX_STACK);
- else generateOresChest(world, 9, 1, 9, 0, random, sbb, ConfigHandler.INGOT_CHEST_MIN, ConfigHandler.INGOT_CHEST_MAX, Blocks.trapped_chest, ConfigHandler.INGOT_CHEST_MAX_STACK);
- if (random.nextBoolean()) generateIngotChest(world, 9, 1, 10, 0, random, sbb, ConfigHandler.INGOT_CHEST_MIN, ConfigHandler.INGOT_CHEST_MAX, Blocks.trapped_chest, ConfigHandler.INGOT_CHEST_MAX_STACK);
- else generateOresChest(world, 9, 1, 10, 0, random, sbb, ConfigHandler.INGOT_CHEST_MIN, ConfigHandler.INGOT_CHEST_MAX, Blocks.trapped_chest, ConfigHandler.INGOT_CHEST_MAX_STACK);
+ placeBlockAtCurrentPosition(world, Blocks.carpet,
+ bgCarpetColor, i, 1, j, sbb);
+ generateChest(world, 3, 1, 1, 0, random, sbb,
+ ConfigHandler.GEM_CHEST_MIN, ConfigHandler.GEM_CHEST_MAX);
+ generateDisplayer(world, 3, 1, 2,
+ coordBaseMode == 0 || coordBaseMode == 2 ? 1 : 2, random,
+ sbb);
+ placeBlockAtCurrentPosition(world, BlockList.jewelCraftingTable,
+ coordBaseMode == 0 || coordBaseMode == 2 ? 1 : 2, 3, 1, 3,
+ sbb);
+ generateDisplayer(world, 3, 1, 4,
+ coordBaseMode == 0 || coordBaseMode == 2 ? 1 : 2, random,
+ sbb);
+ generateChest(world, 3, 1, 5, 0, random, sbb,
+ ConfigHandler.GEM_CHEST_MIN, ConfigHandler.GEM_CHEST_MAX);
+ generateFurnace(world, 1, 1, 7, 0, random, sbb,
+ ConfigHandler.FURNACE_MIN_INGOT_STACK,
+ ConfigHandler.FURNACE_MAX_INGOT_STACK,
+ ConfigHandler.CAN_FURNACE_GENERATE_INGOTS);
+ generateFurnace(world, 1, 2, 7, 0, random, sbb,
+ ConfigHandler.FURNACE_MIN_INGOT_STACK,
+ ConfigHandler.FURNACE_MAX_INGOT_STACK,
+ ConfigHandler.CAN_FURNACE_GENERATE_INGOTS);
+ generateFurnace(world, 1, 3, 7, 0, random, sbb,
+ ConfigHandler.FURNACE_MIN_INGOT_STACK,
+ ConfigHandler.FURNACE_MAX_INGOT_STACK,
+ ConfigHandler.CAN_FURNACE_GENERATE_INGOTS);
+ generateFurnace(world, 1, 1, 10, 0, random, sbb,
+ ConfigHandler.FURNACE_MIN_INGOT_STACK,
+ ConfigHandler.FURNACE_MAX_INGOT_STACK,
+ ConfigHandler.CAN_FURNACE_GENERATE_INGOTS);
+ generateFurnace(world, 1, 2, 10, 0, random, sbb,
+ ConfigHandler.FURNACE_MIN_INGOT_STACK,
+ ConfigHandler.FURNACE_MAX_INGOT_STACK,
+ ConfigHandler.CAN_FURNACE_GENERATE_INGOTS);
+ generateFurnace(world, 1, 3, 10, 0, random, sbb,
+ ConfigHandler.FURNACE_MIN_INGOT_STACK,
+ ConfigHandler.FURNACE_MAX_INGOT_STACK,
+ ConfigHandler.CAN_FURNACE_GENERATE_INGOTS);
+ generateSmelter(world, 1, 1, 8,
+ coordBaseMode == 0 || coordBaseMode == 2 ? 1 : 2, random,
+ sbb, random.nextBoolean());
+ generateSmelter(world, 1, 1, 9,
+ coordBaseMode == 0 || coordBaseMode == 2 ? 1 : 2, random,
+ sbb, random.nextBoolean());
+ generateMolder(world, 2, 1, 8,
+ coordBaseMode == 0 || coordBaseMode == 2 ? 1 : 2, random,
+ sbb, random.nextBoolean(), random.nextBoolean());
+ generateMolder(world, 2, 1, 9,
+ coordBaseMode == 0 || coordBaseMode == 2 ? 1 : 2, random,
+ sbb, random.nextBoolean(), random.nextBoolean());
+ if (random.nextBoolean())
+ generateIngotChest(world, 9, 1, 7, 0, random, sbb,
+ ConfigHandler.INGOT_CHEST_MIN,
+ ConfigHandler.INGOT_CHEST_MAX, Blocks.chest,
+ ConfigHandler.INGOT_CHEST_MAX_STACK);
+ else
+ generateOresChest(world, 9, 1, 7, 0, random, sbb,
+ ConfigHandler.INGOT_CHEST_MIN,
+ ConfigHandler.INGOT_CHEST_MAX, Blocks.chest,
+ ConfigHandler.INGOT_CHEST_MAX_STACK);
+ if (random.nextBoolean())
+ generateIngotChest(world, 9, 1, 8, 0, random, sbb,
+ ConfigHandler.INGOT_CHEST_MIN,
+ ConfigHandler.INGOT_CHEST_MAX, Blocks.chest,
+ ConfigHandler.INGOT_CHEST_MAX_STACK);
+ else
+ generateOresChest(world, 9, 1, 8, 0, random, sbb,
+ ConfigHandler.INGOT_CHEST_MIN,
+ ConfigHandler.INGOT_CHEST_MAX, Blocks.chest,
+ ConfigHandler.INGOT_CHEST_MAX_STACK);
+ if (random.nextBoolean())
+ generateIngotChest(world, 9, 1, 9, 0, random, sbb,
+ ConfigHandler.INGOT_CHEST_MIN,
+ ConfigHandler.INGOT_CHEST_MAX, Blocks.trapped_chest,
+ ConfigHandler.INGOT_CHEST_MAX_STACK);
+ else
+ generateOresChest(world, 9, 1, 9, 0, random, sbb,
+ ConfigHandler.INGOT_CHEST_MIN,
+ ConfigHandler.INGOT_CHEST_MAX, Blocks.trapped_chest,
+ ConfigHandler.INGOT_CHEST_MAX_STACK);
+ if (random.nextBoolean())
+ generateIngotChest(world, 9, 1, 10, 0, random, sbb,
+ ConfigHandler.INGOT_CHEST_MIN,
+ ConfigHandler.INGOT_CHEST_MAX, Blocks.trapped_chest,
+ ConfigHandler.INGOT_CHEST_MAX_STACK);
+ else
+ generateOresChest(world, 9, 1, 10, 0, random, sbb,
+ ConfigHandler.INGOT_CHEST_MIN,
+ ConfigHandler.INGOT_CHEST_MAX, Blocks.trapped_chest,
+ ConfigHandler.INGOT_CHEST_MAX_STACK);
for (int l = 0; l < 6; ++l)
for (int i1 = 2; i1 < 9; ++i1) {
clearCurrentPositionBlocksUpwards(world, i1, 9, l, sbb);
- func_151554_b(world, Blocks.cobblestone, 0, i1, -1, l, sbb);
+ func_151554_b(world, Blocks.cobblestone, 0, i1, -1, l,
+ sbb);
}
for (int l = 6; l < 12; ++l)
for (int i1 = 0; i1 < 11; ++i1) {
clearCurrentPositionBlocksUpwards(world, i1, 9, l, sbb);
- func_151554_b(world, Blocks.cobblestone, 0, i1, -1, l, sbb);
+ func_151554_b(world, Blocks.cobblestone, 0, i1, -1, l,
+ sbb);
}
spawnVillagers(world, sbb, 3, 1, 3, 1);
return true;
}
- public void generateChest(World world, int i, int j, int k, int metadata, Random random, StructureBoundingBox sbb, int min, int max) {
+ public void generateChest(World world, int i, int j, int k,
+ int metadata, Random random, StructureBoundingBox sbb, int min,
+ int max) {
int i1 = getXWithOffset(i, k);
int j1 = getYWithOffset(j);
int k1 = getZWithOffset(i, k);
if (max >= min) {
int t = random.nextInt(max - min + 1) + min;
- placeBlockAtCurrentPosition(world, Blocks.chest, metadata, i, j, k, sbb);
+ placeBlockAtCurrentPosition(world, Blocks.chest, metadata, i,
+ j, k, sbb);
if (world.getTileEntity(i1, j1, k1) != null) {
- TileEntityChest chest = (TileEntityChest) world.getTileEntity(i1, j1, k1);
- while (chest != null && t > 0 && JewelrycraftUtil.gem.size() > 0) {
- ItemStack jewels = JewelrycraftUtil.gem.get(random.nextInt(JewelrycraftUtil.gem.size()));
- chest.func_145976_a(StatCollector.translateToLocal("jeweler." + Variables.MODID + ".jewelerchest"));
- if (jewels.getItem() == Items.nether_star && ConfigHandler.GENERATE_VILLAGE_NETHERSTAR) chest.setInventorySlotContents(random.nextInt(chest.getSizeInventory()), jewels);
- else if (random.nextBoolean() && jewels.getItem() != Items.nether_star) chest.setInventorySlotContents(random.nextInt(chest.getSizeInventory()), jewels);
+ TileEntityChest chest =
+ (TileEntityChest) world.getTileEntity(i1, j1, k1);
+ while (chest != null && t > 0
+ && JewelrycraftUtil.gem.size() > 0) {
+ ItemStack jewels = JewelrycraftUtil.gem.get(
+ random.nextInt(JewelrycraftUtil.gem.size()));
+ chest.func_145976_a(
+ StatCollector.translateToLocal("jeweler."
+ + Variables.MODID + ".jewelerchest"));
+ if (jewels.getItem() == Items.nether_star
+ && ConfigHandler.GENERATE_VILLAGE_NETHERSTAR)
+ chest.setInventorySlotContents(
+ random.nextInt(chest.getSizeInventory()),
+ jewels);
+ else if (random.nextBoolean()
+ && jewels.getItem() != Items.nether_star)
+ chest.setInventorySlotContents(
+ random.nextInt(chest.getSizeInventory()),
+ jewels);
t--;
}
}
}
}
- public void generateIngotChest(World world, int i, int j, int k, int metadata, Random random, StructureBoundingBox sbb, int min, int max, Block chestB, int randomAmount) {
+ public void generateIngotChest(World world, int i, int j, int k,
+ int metadata, Random random, StructureBoundingBox sbb, int min,
+ int max, Block chestB, int randomAmount) {
int i1 = getXWithOffset(i, k);
int j1 = getYWithOffset(j);
int k1 = getZWithOffset(i, k);
if (max >= min) {
int t = random.nextInt(max - min + 1) + min;
- placeBlockAtCurrentPosition(world, chestB, metadata, i, j, k, sbb);
+ placeBlockAtCurrentPosition(world, chestB, metadata, i, j, k,
+ sbb);
if (world.getTileEntity(i1, j1, k1) != null) {
- TileEntityChest chest = (TileEntityChest) world.getTileEntity(i1, j1, k1);
- while (chest != null && t > 0 && JewelrycraftUtil.metal.size() > 0) {
- chest.func_145976_a(StatCollector.translateToLocal("jeweler." + Variables.MODID + ".ingotchest"));
- int metalID = random.nextInt(JewelrycraftUtil.metal.size());
- ItemStack metal = JewelrycraftUtil.metal.get(metalID).copy();
+ TileEntityChest chest =
+ (TileEntityChest) world.getTileEntity(i1, j1, k1);
+ while (chest != null && t > 0
+ && JewelrycraftUtil.metal.size() > 0) {
+ chest.func_145976_a(StatCollector.translateToLocal(
+ "jeweler." + Variables.MODID + ".ingotchest"));
+ int metalID =
+ random.nextInt(JewelrycraftUtil.metal.size());
+ ItemStack metal =
+ JewelrycraftUtil.metal.get(metalID).copy();
metal.stackSize = 2 + random.nextInt(randomAmount);
- if (random.nextBoolean()) chest.setInventorySlotContents(random.nextInt(chest.getSizeInventory()), metal);
+ if (random.nextBoolean())
+ chest.setInventorySlotContents(
+ random.nextInt(chest.getSizeInventory()),
+ metal);
t--;
}
}
}
}
- public void generateOresChest(World world, int i, int j, int k, int metadata, Random random, StructureBoundingBox sbb, int min, int max, Block chestB, int randomAmount) {
+ public void generateOresChest(World world, int i, int j, int k,
+ int metadata, Random random, StructureBoundingBox sbb, int min,
+ int max, Block chestB, int randomAmount) {
int i1 = getXWithOffset(i, k);
int j1 = getYWithOffset(j);
int k1 = getZWithOffset(i, k);
if (max >= min) {
int t = random.nextInt(max - min + 1) + min;
- placeBlockAtCurrentPosition(world, chestB, metadata, i, j, k, sbb);
+ placeBlockAtCurrentPosition(world, chestB, metadata, i, j, k,
+ sbb);
if (world.getTileEntity(i1, j1, k1) != null) {
- TileEntityChest chest = (TileEntityChest) world.getTileEntity(i1, j1, k1);
- while (chest != null && t > 0 && JewelrycraftUtil.ores.size() > 0) {
- chest.func_145976_a(StatCollector.translateToLocal("jeweler." + Variables.MODID + ".orechest"));
- int oreID = random.nextInt(JewelrycraftUtil.ores.size());
- ItemStack ores = JewelrycraftUtil.ores.get(oreID).copy();
+ TileEntityChest chest =
+ (TileEntityChest) world.getTileEntity(i1, j1, k1);
+ while (chest != null && t > 0
+ && JewelrycraftUtil.ores.size() > 0) {
+ chest.func_145976_a(StatCollector.translateToLocal(
+ "jeweler." + Variables.MODID + ".orechest"));
+ int oreID =
+ random.nextInt(JewelrycraftUtil.ores.size());
+ ItemStack ores =
+ JewelrycraftUtil.ores.get(oreID).copy();
ores.stackSize = 2 + random.nextInt(randomAmount);
- if (random.nextBoolean()) chest.setInventorySlotContents(random.nextInt(chest.getSizeInventory()), ores);
+ if (random.nextBoolean())
+ chest.setInventorySlotContents(
+ random.nextInt(chest.getSizeInventory()),
+ ores);
t--;
}
}
}
}
- public void generateDisplayer(World world, int i, int j, int k, int metadata, Random random, StructureBoundingBox sbb) {
+ public void generateDisplayer(World world, int i, int j, int k,
+ int metadata, Random random, StructureBoundingBox sbb) {
int i1 = getXWithOffset(i, k);
int j1 = getYWithOffset(j);
int k1 = getZWithOffset(i, k);
- placeBlockAtCurrentPosition(world, BlockList.displayer, metadata, i, j, k, sbb);
+ placeBlockAtCurrentPosition(world, BlockList.displayer, metadata,
+ i, j, k, sbb);
if (world.getTileEntity(i1, j1, k1) != null) {
- TileEntityDisplayer displayer = (TileEntityDisplayer) world.getTileEntity(i1, j1, k1);
+ TileEntityDisplayer displayer =
+ (TileEntityDisplayer) world.getTileEntity(i1, j1, k1);
if (displayer != null) {
Item[] jewels = { ItemList.ring, ItemList.necklace };
- ItemStack jewel = new ItemStack(jewels[random.nextInt(jewels.length)]);
- if (JewelrycraftUtil.metal.size() > 0) JewelryNBT.addMetal(jewel, JewelrycraftUtil.metal.get(random.nextInt(JewelrycraftUtil.metal.size())));
- if (JewelrycraftUtil.objects.size() > 0) JewelryNBT.addModifiers(jewel, JewelrycraftUtil.addRandomModifiers(random.nextInt(4)));
- if (JewelrycraftUtil.gem.size() > 0) JewelryNBT.addGem(jewel, JewelrycraftUtil.gem.get(random.nextInt(JewelrycraftUtil.gem.size())));
+ ItemStack jewel = new ItemStack(
+ jewels[random.nextInt(jewels.length)]);
+ if (JewelrycraftUtil.metal.size() > 0)
+ JewelryNBT.addMetal(jewel,
+ JewelrycraftUtil.metal.get(random.nextInt(
+ JewelrycraftUtil.metal.size())));
+ if (JewelrycraftUtil.objects.size() > 0)
+ JewelryNBT.addModifiers(jewel, JewelrycraftUtil
+ .addRandomModifiers(random.nextInt(4)));
+ if (JewelrycraftUtil.gem.size() > 0)
+ JewelryNBT.addGem(jewel, JewelrycraftUtil.gem.get(
+ random.nextInt(JewelrycraftUtil.gem.size())));
displayer.object = jewel;
displayer.quantity = 1;
displayer.hasObject = true;
@@ -251,66 +427,111 @@ public class ComponentJewelry extends StructureVillagePieces.House1 {
}
}
- public void generateSmelter(World world, int i, int j, int k, int metadata, Random random, StructureBoundingBox sbb, boolean isEmpty) {
+ public void generateSmelter(World world, int i, int j, int k,
+ int metadata, Random random, StructureBoundingBox sbb,
+ boolean isEmpty) {
int i1 = getXWithOffset(i, k);
int j1 = getYWithOffset(j);
int k1 = getZWithOffset(i, k);
- placeBlockAtCurrentPosition(world, BlockList.smelter, metadata, i, j, k, sbb);
+ placeBlockAtCurrentPosition(world, BlockList.smelter, metadata, i,
+ j, k, sbb);
if (world.getTileEntity(i1, j1, k1) != null) {
- TileEntitySmelter smelter = (TileEntitySmelter) world.getTileEntity(i1, j1, k1);
- if (smelter != null && !isEmpty && JewelrycraftUtil.metal.size() > 0) {
+ TileEntitySmelter smelter =
+ (TileEntitySmelter) world.getTileEntity(i1, j1, k1);
+ if (smelter != null && !isEmpty
+ && JewelrycraftUtil.metal.size() > 0) {
int metal = random.nextInt(JewelrycraftUtil.metal.size());
- smelter.moltenMetal = JewelrycraftUtil.metal.get(metal).copy();
+ smelter.moltenMetal =
+ JewelrycraftUtil.metal.get(metal).copy();
smelter.hasMoltenMetal = random.nextBoolean();
float quantity = random.nextFloat();
- if (smelter.hasMoltenMetal) smelter.quantity = quantity < 0.9F ? 0.1F + Math.round(quantity * 10) / 10 : Math.round(quantity * 10) / 10;
+ if (smelter.hasMoltenMetal)
+ smelter.quantity = quantity < 0.9F
+ ? 0.1F + Math.round(quantity * 10) / 10
+ : Math.round(quantity * 10) / 10;
}
}
}
- public void generateMolder(World world, int i, int j, int k, int metadata, Random random, StructureBoundingBox sbb, boolean hasMold, boolean hasStuff) {
+ public void generateMolder(World world, int i, int j, int k,
+ int metadata, Random random, StructureBoundingBox sbb,
+ boolean hasMold, boolean hasStuff) {
int i1 = getXWithOffset(i, k);
int j1 = getYWithOffset(j);
int k1 = getZWithOffset(i, k);
- placeBlockAtCurrentPosition(world, BlockList.molder, metadata, i, j, k, sbb);
+ placeBlockAtCurrentPosition(world, BlockList.molder, metadata, i,
+ j, k, sbb);
if (world.getTileEntity(i1, j1, k1) != null) {
- TileEntityMolder molder = (TileEntityMolder) world.getTileEntity(i1, j1, k1);
- if (molder != null && !molder.hasMold) if (hasMold) {
- int meta = random.nextInt(ItemMolds.moldsItemNames.length);
- molder.mold = new ItemStack(ItemList.molds, 1, meta);
- molder.hasMold = true;
- if (hasStuff && JewelrycraftUtil.metal.size() > 0) {
- ItemStack ring = new ItemStack(ItemList.ring);
- JewelryNBT.addMetal(ring, JewelrycraftUtil.metal.get(random.nextInt(JewelrycraftUtil.metal.size())).copy());
- ItemStack necklace = new ItemStack(ItemList.necklace);
- JewelryNBT.addMetal(necklace, JewelrycraftUtil.metal.get(random.nextInt(JewelrycraftUtil.metal.size())).copy());
- ItemStack bracelet = new ItemStack(ItemList.bracelet);
- JewelryNBT.addMetal(bracelet, JewelrycraftUtil.metal.get(random.nextInt(JewelrycraftUtil.metal.size())).copy());
- ItemStack earrings = new ItemStack(ItemList.earrings);
- JewelryNBT.addMetal(earrings, JewelrycraftUtil.metal.get(random.nextInt(JewelrycraftUtil.metal.size())).copy());
- if (meta == 0) molder.jewelBase = JewelrycraftUtil.metal.get(random.nextInt(JewelrycraftUtil.metal.size()));
- else if (meta == 1) molder.jewelBase = ring;
- else if (meta == 2) molder.jewelBase = necklace;
- else if (meta == 3) molder.jewelBase = bracelet;
- else if (meta == 4) molder.jewelBase = earrings;
- molder.hasJewelBase = true;
+ TileEntityMolder molder =
+ (TileEntityMolder) world.getTileEntity(i1, j1, k1);
+ if (molder != null && !molder.hasMold)
+ if (hasMold) {
+ int meta = random
+ .nextInt(ItemMolds.moldsItemNames.length - 1);
+ molder.mold = new ItemStack(ItemList.molds, 1, meta + 1);
+ molder.hasMold = true;
+ if (hasStuff && JewelrycraftUtil.metal.size() > 0) {
+ ItemStack ring = new ItemStack(ItemList.ring);
+ JewelryNBT.addMetal(ring,
+ JewelrycraftUtil.metal.get(random.nextInt(
+ JewelrycraftUtil.metal.size()))
+ .copy());
+ ItemStack necklace =
+ new ItemStack(ItemList.necklace);
+ JewelryNBT.addMetal(necklace,
+ JewelrycraftUtil.metal.get(random.nextInt(
+ JewelrycraftUtil.metal.size()))
+ .copy());
+ ItemStack bracelet =
+ new ItemStack(ItemList.bracelet);
+ JewelryNBT.addMetal(bracelet,
+ JewelrycraftUtil.metal.get(random.nextInt(
+ JewelrycraftUtil.metal.size()))
+ .copy());
+ ItemStack earrings =
+ new ItemStack(ItemList.earrings);
+ JewelryNBT.addMetal(earrings,
+ JewelrycraftUtil.metal.get(random.nextInt(
+ JewelrycraftUtil.metal.size()))
+ .copy());
+ if (meta == 0)
+ molder.jewelBase = JewelrycraftUtil.metal.get(
+ random.nextInt(JewelrycraftUtil.metal
+ .size()));
+ else if (meta == 1)
+ molder.jewelBase = ring;
+ else if (meta == 2)
+ molder.jewelBase = necklace;
+ else if (meta == 3)
+ molder.jewelBase = bracelet;
+ else if (meta == 4)
+ molder.jewelBase = earrings;
+ molder.hasJewelBase = true;
+ }
}
- }
}
}
- public void generateFurnace(World world, int i, int j, int k, int metadata, Random random, StructureBoundingBox sbb, int min, int max, boolean hasMetal) {
+ public void generateFurnace(World world, int i, int j, int k,
+ int metadata, Random random, StructureBoundingBox sbb, int min,
+ int max, boolean hasMetal) {
int i1 = getXWithOffset(i, k);
int j1 = getYWithOffset(j);
int k1 = getZWithOffset(i, k);
- placeBlockAtCurrentPosition(world, Blocks.furnace, metadata, i, j, k, sbb);
+ placeBlockAtCurrentPosition(world, Blocks.furnace, metadata, i, j,
+ k, sbb);
if (world.getTileEntity(i1, j1, k1) != null) {
- TileEntityFurnace furnace = (TileEntityFurnace) world.getTileEntity(i1, j1, k1);
+ TileEntityFurnace furnace =
+ (TileEntityFurnace) world.getTileEntity(i1, j1, k1);
if (furnace != null) {
- if (random.nextBoolean()) furnace.setInventorySlotContents(1, new ItemStack(Items.coal, 1 + random.nextInt(16)));
+ if (random.nextBoolean())
+ furnace.setInventorySlotContents(1, new ItemStack(
+ Items.coal, 1 + random.nextInt(16)));
if (hasMetal && JewelrycraftUtil.metal.size() > 0) {
- int metalID = random.nextInt(JewelrycraftUtil.metal.size());
- ItemStack metal = JewelrycraftUtil.metal.get(metalID).copy();
+ int metalID =
+ random.nextInt(JewelrycraftUtil.metal.size());
+ ItemStack metal =
+ JewelrycraftUtil.metal.get(metalID).copy();
metal.stackSize = random.nextInt(max - min + 1) + min;
furnace.setInventorySlotContents(2, metal);
}
diff --git a/src/main/java/darkknight/jewelrycraft/worldGen/village/JCTrades.java b/src/main/java/darkknight/jewelrycraft/worldGen/village/JCTrades.java
index f9b5930..68e0651 100644..100755
--- a/src/main/java/darkknight/jewelrycraft/worldGen/village/JCTrades.java
+++ b/src/main/java/darkknight/jewelrycraft/worldGen/village/JCTrades.java
@@ -1,6 +1,7 @@
package darkknight.jewelrycraft.worldGen.village;
import java.util.Random;
+
import cpw.mods.fml.common.registry.VillagerRegistry.IVillageTradeHandler;
import darkknight.jewelrycraft.block.BlockList;
import darkknight.jewelrycraft.item.ItemList;
@@ -15,111 +16,162 @@ import net.minecraft.item.ItemStack;
import net.minecraft.village.MerchantRecipe;
import net.minecraft.village.MerchantRecipeList;
-public class JCTrades implements IVillageTradeHandler
-{
- Item[] jewelry = new Item[]{ItemList.ring, ItemList.necklace, ItemList.bracelet, ItemList.earrings};
- public JCTrades()
- {
- super();
- }
-
- /**
- * @param villager
- * @param recipeList
- * @param random
- */
- @Override
- public void manipulateTradesForVillager(EntityVillager villager, MerchantRecipeList recipeList, Random random)
- {
- if (villager.getProfession() == 3000){
- ItemStack ingredient = null;
- ItemStack ingredient2 = null;
- ItemStack result;
- int type = random.nextInt(12);
- switch(type)
- {
- case 0:if(JewelrycraftUtil.metal.size() > 0){
- result = JewelrycraftUtil.metal.get(random.nextInt(JewelrycraftUtil.metal.size()));
- result.stackSize = 5 + random.nextInt(5);
- ingredient = new ItemStack(Items.emerald, 2 + random.nextInt(7));
- if (random.nextBoolean()) ingredient2 = new ItemStack(Items.emerald, 2 + random.nextInt(2));
- break;
- }
- case 1:{
- result = new ItemStack(ItemList.molds, 5 + random.nextInt(7), random.nextInt(ItemMolds.moldsItemNames.length));
- ingredient = new ItemStack(Items.emerald, 1);
- if (random.nextBoolean()) ingredient2 = new ItemStack(Items.emerald, 1 + random.nextInt(2));
- break;
- }
- case 2:{
- int number = random.nextInt(3);
- result = new ItemStack(BlockList.displayer, 1 + number);
- ingredient = new ItemStack(Blocks.emerald_block, 2 + number * 3 + random.nextInt(2));
- ingredient2 = new ItemStack(Items.emerald, 3 + number + random.nextInt(8));
- break;
- }
- case 3:{
- result = new ItemStack(BlockList.jewelCraftingTable);
- ingredient = new ItemStack(Items.emerald, 1 + random.nextInt(2));
- if (random.nextBoolean()) ingredient2 = new ItemStack(Items.emerald, 1 + random.nextInt(2));
- break;
- }
- case 4:{
- result = new ItemStack(BlockList.shadowOre, 1 + random.nextInt(6));
- ingredient = new ItemStack(Items.emerald, 3 + random.nextInt(4));
- if (random.nextBoolean()) ingredient2 = new ItemStack(Items.emerald, 3 + random.nextInt(4));
- break;
- }
- case 5:{
- result = new ItemStack(BlockList.molder, 5 + random.nextInt(5));
- ingredient = new ItemStack(Items.emerald, 1);
- if (random.nextBoolean()) ingredient2 = new ItemStack(Items.emerald, 1);
- break;
- }
- case 6:{
- result = new ItemStack(BlockList.smelter);
- ingredient = new ItemStack(Items.emerald, 1 + random.nextInt(2));
- if (random.nextBoolean()) ingredient2 = new ItemStack(Items.emerald, 1 + random.nextInt(2));
- break;
- }
- case 7:if(JewelrycraftUtil.gem.size() > 0){
- int end = random.nextInt(JewelrycraftUtil.gem.size());
- result = JewelrycraftUtil.gem.get(end);
- result.stackSize = 1 + random.nextInt(JewelrycraftUtil.gem.size() - end);
- if (JewelrycraftUtil.gem.size() - 1 - end >= 1){
- int value = 1 + end;
- if (value > 64) value = 64;
- ingredient = new ItemStack(Items.emerald, 2 + random.nextInt(value));
- if (random.nextBoolean()) ingredient2 = new ItemStack(Items.emerald, 2 + random.nextInt(value));
- }else{
- ingredient = new ItemStack(Blocks.emerald_block, 16 + random.nextInt(32));
- ingredient2 = new ItemStack(Blocks.emerald_block, 8 + random.nextInt(48));
- }
- break;
- }
- case 8:if(JewelrycraftUtil.ores.size() > 0){
- result = JewelrycraftUtil.ores.get(random.nextInt(JewelrycraftUtil.ores.size()));
- result.stackSize = 3 + random.nextInt(3);
- ingredient = new ItemStack(Items.emerald, 2 + random.nextInt(5));
- if (random.nextBoolean()) ingredient2 = new ItemStack(Items.emerald, 2 + random.nextInt(6));
- break;
- }
- case 9:{
- result = new ItemStack(ItemList.guide, 1);
- ingredient = new ItemStack(Items.emerald, 1);
- break;
- }
- default:{
- result = new ItemStack(jewelry[random.nextInt(4)], 1, 0);
- int randValue = random.nextInt(4);
- if(JewelrycraftUtil.metal.size() > 0) JewelryNBT.addMetal(result, JewelrycraftUtil.metal.get(random.nextInt(JewelrycraftUtil.metal.size())));
- if(JewelrycraftUtil.objects.size() > 0) JewelryNBT.addModifiers(result, JewelrycraftUtil.addRandomModifiers(randValue));
- if(JewelrycraftUtil.gem.size() > 0) JewelryNBT.addGem(result, JewelrycraftUtil.gem.get(random.nextInt(JewelrycraftUtil.gem.size())));
- ingredient = new ItemStack(Items.emerald, 16 + random.nextInt(20));
- ingredient2 = new ItemStack(Blocks.emerald_block, 2 + randValue);
- }
- }
- recipeList.addToListWithCheck(new MerchantRecipe(ingredient, ingredient2, result));
- }
- }
+public class JCTrades implements IVillageTradeHandler {
+ Item[] jewelry = new Item[] { ItemList.ring, ItemList.necklace,
+ ItemList.bracelet, ItemList.earrings };
+
+ public JCTrades() {
+ super();
+ }
+
+ /**
+ * @param villager
+ * @param recipeList
+ * @param random
+ */
+ @Override
+ public void manipulateTradesForVillager(EntityVillager villager,
+ MerchantRecipeList recipeList, Random random) {
+ if (villager.getProfession() == 3000) {
+ ItemStack ingredient = null;
+ ItemStack ingredient2 = null;
+ ItemStack result;
+ int type = random.nextInt(12);
+ switch (type) {
+ case 0:
+ if (JewelrycraftUtil.metal.size() > 0) {
+ result = JewelrycraftUtil.metal.get(random
+ .nextInt(JewelrycraftUtil.metal.size()));
+ result.stackSize = 5 + random.nextInt(5);
+ ingredient = new ItemStack(Items.emerald,
+ 2 + random.nextInt(7));
+ if (random.nextBoolean())
+ ingredient2 = new ItemStack(Items.emerald,
+ 2 + random.nextInt(2));
+ break;
+ }
+ case 1: {
+ result = new ItemStack(ItemList.molds,
+ 5 + random.nextInt(7), random.nextInt(
+ ItemMolds.moldsItemNames.length));
+ ingredient = new ItemStack(Items.emerald, 1);
+ if (random.nextBoolean())
+ ingredient2 = new ItemStack(Items.emerald,
+ 1 + random.nextInt(2));
+ break;
+ }
+ case 2: {
+ int number = random.nextInt(3);
+ result = new ItemStack(BlockList.displayer,
+ 1 + number);
+ ingredient = new ItemStack(Blocks.emerald_block,
+ 2 + number * 3 + random.nextInt(2));
+ ingredient2 = new ItemStack(Items.emerald,
+ 3 + number + random.nextInt(8));
+ break;
+ }
+ case 3: {
+ result = new ItemStack(BlockList.jewelCraftingTable);
+ ingredient = new ItemStack(Items.emerald,
+ 1 + random.nextInt(2));
+ if (random.nextBoolean())
+ ingredient2 = new ItemStack(Items.emerald,
+ 1 + random.nextInt(2));
+ break;
+ }
+ case 4: {
+ result = new ItemStack(BlockList.shadowOre,
+ 1 + random.nextInt(6));
+ ingredient = new ItemStack(Items.emerald,
+ 3 + random.nextInt(4));
+ if (random.nextBoolean())
+ ingredient2 = new ItemStack(Items.emerald,
+ 3 + random.nextInt(4));
+ break;
+ }
+ case 5: {
+ result = new ItemStack(BlockList.molder,
+ 5 + random.nextInt(5));
+ ingredient = new ItemStack(Items.emerald, 1);
+ if (random.nextBoolean())
+ ingredient2 = new ItemStack(Items.emerald, 1);
+ break;
+ }
+ case 6: {
+ result = new ItemStack(BlockList.smelter);
+ ingredient = new ItemStack(Items.emerald,
+ 1 + random.nextInt(2));
+ if (random.nextBoolean())
+ ingredient2 = new ItemStack(Items.emerald,
+ 1 + random.nextInt(2));
+ break;
+ }
+ case 7:
+ if (JewelrycraftUtil.gem.size() > 0) {
+ int end = random
+ .nextInt(JewelrycraftUtil.gem.size());
+ result = JewelrycraftUtil.gem.get(end);
+ result.stackSize = 1 + random.nextInt(
+ JewelrycraftUtil.gem.size() - end);
+ if (JewelrycraftUtil.gem.size() - 1 - end >= 1) {
+ int value = 1 + end;
+ if (value > 64)
+ value = 64;
+ ingredient = new ItemStack(Items.emerald,
+ 2 + random.nextInt(value));
+ if (random.nextBoolean())
+ ingredient2 = new ItemStack(Items.emerald,
+ 2 + random.nextInt(value));
+ } else {
+ ingredient =
+ new ItemStack(Blocks.emerald_block,
+ 16 + random.nextInt(32));
+ ingredient2 =
+ new ItemStack(Blocks.emerald_block,
+ 8 + random.nextInt(48));
+ }
+ break;
+ }
+ case 8:
+ if (JewelrycraftUtil.ores.size() > 0) {
+ result = JewelrycraftUtil.ores.get(random
+ .nextInt(JewelrycraftUtil.ores.size()));
+ result.stackSize = 3 + random.nextInt(3);
+ ingredient = new ItemStack(Items.emerald,
+ 2 + random.nextInt(5));
+ if (random.nextBoolean())
+ ingredient2 = new ItemStack(Items.emerald,
+ 2 + random.nextInt(6));
+ break;
+ }
+ case 9: {
+ result = new ItemStack(ItemList.guide, 1);
+ ingredient = new ItemStack(Items.emerald, 1);
+ break;
+ }
+ default: {
+ result = new ItemStack(jewelry[random.nextInt(4)], 1,
+ 0);
+ int randValue = random.nextInt(4);
+ if (JewelrycraftUtil.metal.size() > 0)
+ JewelryNBT.addMetal(result,
+ JewelrycraftUtil.metal.get(random.nextInt(
+ JewelrycraftUtil.metal.size())));
+ if (JewelrycraftUtil.objects.size() > 0)
+ JewelryNBT.addModifiers(result, JewelrycraftUtil
+ .addRandomModifiers(randValue));
+ if (JewelrycraftUtil.gem.size() > 0)
+ JewelryNBT.addGem(result,
+ JewelrycraftUtil.gem.get(random.nextInt(
+ JewelrycraftUtil.gem.size())));
+ ingredient = new ItemStack(Items.emerald,
+ 16 + random.nextInt(20));
+ ingredient2 = new ItemStack(Blocks.emerald_block,
+ 2 + randValue);
+ }
+ }
+ recipeList.addToListWithCheck(
+ new MerchantRecipe(ingredient, ingredient2, result));
+ }
+ }
} \ No newline at end of file
diff --git a/src/main/java/darkknight/jewelrycraft/worldGen/village/VillageHandler.java b/src/main/java/darkknight/jewelrycraft/worldGen/village/VillageHandler.java
index 68b892e..757f9e3 100644..100755
--- a/src/main/java/darkknight/jewelrycraft/worldGen/village/VillageHandler.java
+++ b/src/main/java/darkknight/jewelrycraft/worldGen/village/VillageHandler.java
@@ -3,25 +3,25 @@
*/
package darkknight.jewelrycraft.worldGen.village;
-import java.io.IOException;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
import cpw.mods.fml.common.registry.VillagerRegistry;
import darkknight.jewelrycraft.JewelrycraftMod;
import darkknight.jewelrycraft.util.Variables;
import net.minecraft.world.gen.structure.MapGenStructureIO;
-public class VillageHandler
-{
- public static void preInit(FMLPreInitializationEvent e) throws IOException
- {
- VillagerRegistry.instance().registerVillagerId(3000);
- VillagerRegistry.instance().registerVillageTradeHandler(3000, new JCTrades());
- VillagerRegistry.instance().registerVillageCreationHandler(new VillageJewelryHandler());
- try{
- MapGenStructureIO.func_143031_a(ComponentJewelry.class, Variables.MODID + ":Jewelry");
- }
- catch(Throwable e2){
- JewelrycraftMod.logger.error("Error registering Jewelrycraft Structures with Vanilla Minecraft: this is expected in versions earlier than 1.7.10");
- }
- }
+public class VillageHandler {
+ public static void preInit(FMLPreInitializationEvent e) {
+ VillagerRegistry.instance().registerVillagerId(3000);
+ VillagerRegistry.instance().registerVillageTradeHandler(3000,
+ new JCTrades());
+ VillagerRegistry.instance().registerVillageCreationHandler(
+ new VillageJewelryHandler());
+ try {
+ MapGenStructureIO.func_143031_a(ComponentJewelry.class,
+ Variables.MODID + ":Jewelry");
+ } catch (Throwable thrw) {
+ JewelrycraftMod.logger.error(
+ "Error registering Jewelrycraft Structures with Vanilla Minecraft: this is expected in versions earlier than 1.7.10");
+ }
+ }
}
diff --git a/src/main/java/darkknight/jewelrycraft/worldGen/village/VillageJewelryHandler.java b/src/main/java/darkknight/jewelrycraft/worldGen/village/VillageJewelryHandler.java
index dca3b6e..3bd72a0 100644..100755
--- a/src/main/java/darkknight/jewelrycraft/worldGen/village/VillageJewelryHandler.java
+++ b/src/main/java/darkknight/jewelrycraft/worldGen/village/VillageJewelryHandler.java
@@ -2,49 +2,51 @@ package darkknight.jewelrycraft.worldGen.village;
import java.util.List;
import java.util.Random;
+
import cpw.mods.fml.common.registry.VillagerRegistry.IVillageCreationHandler;
import darkknight.jewelrycraft.config.ConfigHandler;
import net.minecraft.world.gen.structure.StructureVillagePieces.PieceWeight;
import net.minecraft.world.gen.structure.StructureVillagePieces.Start;
-public class VillageJewelryHandler implements IVillageCreationHandler
-{
-
- /**
- * @param random
- * @param i
- * @return
- */
- @Override
- public PieceWeight getVillagePieceWeight(Random random, int i)
- {
- return new PieceWeight(ComponentJewelry.class, ConfigHandler.JEWELER_WEIGHT, ConfigHandler.MAX_VILLAGE_JEWELERS);
- }
-
- /**
- * @return
- */
- @Override
- public Class<?> getComponentClass()
- {
- return ComponentJewelry.class;
- }
-
- /**
- * @param villagePiece
- * @param startPiece
- * @param pieces
- * @param random
- * @param p1
- * @param p2
- * @param p3
- * @param p4
- * @param p5
- * @return
- */
- @Override
- public Object buildComponent(PieceWeight villagePiece, Start startPiece, @SuppressWarnings ("rawtypes") List pieces, Random random, int p1, int p2, int p3, int p4, int p5)
- {
- return ComponentJewelry.buildComponent(startPiece, pieces, random, p1, p2, p3, p4, p5);
- }
+public class VillageJewelryHandler implements IVillageCreationHandler {
+
+ /**
+ * @param random
+ * @param i
+ * @return
+ */
+ @Override
+ public PieceWeight getVillagePieceWeight(Random random, int i) {
+ return new PieceWeight(ComponentJewelry.class,
+ ConfigHandler.JEWELER_WEIGHT,
+ ConfigHandler.MAX_VILLAGE_JEWELERS);
+ }
+
+ /**
+ * @return
+ */
+ @Override
+ public Class<?> getComponentClass() {
+ return ComponentJewelry.class;
+ }
+
+ /**
+ * @param villagePiece
+ * @param startPiece
+ * @param pieces
+ * @param random
+ * @param p1
+ * @param p2
+ * @param p3
+ * @param p4
+ * @param p5
+ * @return
+ */
+ @Override
+ public Object buildComponent(PieceWeight villagePiece,
+ Start startPiece, List pieces, Random random, int p1, int p2,
+ int p3, int p4, int p5) {
+ return ComponentJewelry.buildComponent(startPiece, pieces, random,
+ p1, p2, p3, p4, p5);
+ }
} \ No newline at end of file