summaryrefslogtreecommitdiff
path: root/src/main/java/darkknight/jewelrycraft/worldGen
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/darkknight/jewelrycraft/worldGen')
-rw-r--r--src/main/java/darkknight/jewelrycraft/worldGen/ChestGeneration.java10
-rw-r--r--src/main/java/darkknight/jewelrycraft/worldGen/Generation.java18
-rw-r--r--src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure.java10
-rw-r--r--src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure1.java14
-rw-r--r--src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure2.java12
-rw-r--r--src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure3.java11
-rw-r--r--src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure4.java9
-rw-r--r--src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure5.java10
-rw-r--r--src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure6.java5
-rw-r--r--src/main/java/darkknight/jewelrycraft/worldGen/village/ComponentJewelry.java20
-rw-r--r--src/main/java/darkknight/jewelrycraft/worldGen/village/JCTrades.java12
-rw-r--r--src/main/java/darkknight/jewelrycraft/worldGen/village/VillageHandler.java2
-rw-r--r--src/main/java/darkknight/jewelrycraft/worldGen/village/VillageJewelryHandler.java98
13 files changed, 144 insertions, 87 deletions
diff --git a/src/main/java/darkknight/jewelrycraft/worldGen/ChestGeneration.java b/src/main/java/darkknight/jewelrycraft/worldGen/ChestGeneration.java
index f8eb9d5..d697472 100644
--- a/src/main/java/darkknight/jewelrycraft/worldGen/ChestGeneration.java
+++ b/src/main/java/darkknight/jewelrycraft/worldGen/ChestGeneration.java
@@ -1,15 +1,15 @@
package darkknight.jewelrycraft.worldGen;
import java.util.Random;
-import net.minecraft.item.Item;
-import net.minecraft.item.ItemStack;
-import net.minecraft.util.WeightedRandomChestContent;
-import net.minecraftforge.common.ChestGenHooks;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
import darkknight.jewelrycraft.block.BlockList;
import darkknight.jewelrycraft.item.ItemList;
import darkknight.jewelrycraft.util.JewelryNBT;
import darkknight.jewelrycraft.util.JewelrycraftUtil;
+import net.minecraft.item.Item;
+import net.minecraft.item.ItemStack;
+import net.minecraft.util.WeightedRandomChestContent;
+import net.minecraftforge.common.ChestGenHooks;
/**
* @author Sorin
@@ -24,7 +24,7 @@ public class ChestGeneration
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++) addItemToDifferentPlaces(new WeightedRandomChestContent(new ItemStack(BlockList.crystal, 1, i), 1, 4, 4), true, true, true, true);
+ 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);
diff --git a/src/main/java/darkknight/jewelrycraft/worldGen/Generation.java b/src/main/java/darkknight/jewelrycraft/worldGen/Generation.java
index 11d053e..93310df 100644
--- a/src/main/java/darkknight/jewelrycraft/worldGen/Generation.java
+++ b/src/main/java/darkknight/jewelrycraft/worldGen/Generation.java
@@ -1,5 +1,6 @@
package darkknight.jewelrycraft.worldGen;
+import java.lang.reflect.Field;
import java.util.Random;
import cpw.mods.fml.common.IWorldGenerator;
import darkknight.jewelrycraft.block.BlockList;
@@ -43,12 +44,17 @@ public class Generation implements IWorldGenerator {
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);
- if (ConfigHandler.STRUCTURES[0]) generateStructureOverground(STRUCTURE_1, world, random, i, j, 6, false, true);
- if (ConfigHandler.STRUCTURES[1]) generateStructureUnderground(STRUCTURE_2, world, random, i, j, 5, false, true);
- if (ConfigHandler.STRUCTURES[2]) generateStructureUnderground(STRUCTURE_3, world, random, i, j, 7, false, true);
- if (ConfigHandler.STRUCTURES[3]) generateStructureOverground(STRUCTURE_4, world, random, i, j, 10, false, true);
- if (ConfigHandler.STRUCTURES[4]) generateStructureUnderground(STRUCTURE_5, world, random, i, j, 6, false, true);
- if (ConfigHandler.STRUCTURES[5]) generateStructureOverground(STRUCTURE_6, world, random, i, j, 10, false, true);
+ 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);
+ }
}
}
}
diff --git a/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure.java b/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure.java
index c2c4046..f233d3e 100644
--- a/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure.java
+++ b/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure.java
@@ -22,4 +22,14 @@ public class WorldGenStructure extends WorldGenerator
public boolean generate(World world, Random rand, int x, int y, int z) {
return false;
}
+
+ public boolean isUnderground()
+ {
+ return false;
+ }
+
+ 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 c982e00..898ece2 100644
--- a/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure1.java
+++ b/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure1.java
@@ -4,6 +4,10 @@
package darkknight.jewelrycraft.worldGen;
import java.util.Random;
+import darkknight.jewelrycraft.block.BlockList;
+import darkknight.jewelrycraft.item.ItemList;
+import darkknight.jewelrycraft.random.WeightedRandomItem;
+import darkknight.jewelrycraft.tileentity.TileEntityHandPedestal;
import net.minecraft.block.Block;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
@@ -11,11 +15,6 @@ import net.minecraft.item.ItemStack;
import net.minecraft.util.WeightedRandom;
import net.minecraft.world.World;
import net.minecraft.world.biome.BiomeGenBase;
-import net.minecraft.world.gen.feature.WorldGenerator;
-import darkknight.jewelrycraft.block.BlockList;
-import darkknight.jewelrycraft.item.ItemList;
-import darkknight.jewelrycraft.random.WeightedRandomItem;
-import darkknight.jewelrycraft.tileentity.TileEntityHandPedestal;
/**
* @author Sorin
@@ -57,4 +56,9 @@ public class WorldGenStructure1 extends WorldGenStructure
{
return generate(world, BiomeGenBase.plains, rand, x, y, z);
}
+
+ 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 c58c0b8..4e4461c 100644
--- a/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure2.java
+++ b/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure2.java
@@ -19,7 +19,7 @@ public class WorldGenStructure2 extends WorldGenStructure {
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, slabMeta = 5;
+ int metadata = 0;
if (biome == BiomeGenBase.desert || biome == BiomeGenBase.desertHills) {
block = Blocks.sandstone;
stair = Blocks.sandstone_stairs;
@@ -52,4 +52,14 @@ public class WorldGenStructure2 extends WorldGenStructure {
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;
+ }
}
diff --git a/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure3.java b/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure3.java
index 1f6f15c..f0e8cfa 100644
--- a/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure3.java
+++ b/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure3.java
@@ -9,7 +9,6 @@ import net.minecraft.init.Blocks;
import net.minecraft.tileentity.TileEntityMobSpawner;
import net.minecraft.world.World;
import net.minecraft.world.biome.BiomeGenBase;
-import net.minecraft.world.gen.feature.WorldGenerator;
import net.minecraftforge.common.DungeonHooks;
/**
@@ -65,4 +64,14 @@ public class WorldGenStructure3 extends WorldGenStructure
{
return generate(world, BiomeGenBase.plains, rand, x, y, z);
}
+
+ public boolean isUnderground()
+ {
+ return true;
+ }
+
+ 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 6af8dc2..b0be600 100644
--- a/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure4.java
+++ b/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure4.java
@@ -4,12 +4,11 @@
package darkknight.jewelrycraft.worldGen;
import java.util.Random;
+import darkknight.jewelrycraft.block.BlockList;
import net.minecraft.block.Block;
import net.minecraft.init.Blocks;
import net.minecraft.world.World;
import net.minecraft.world.biome.BiomeGenBase;
-import net.minecraft.world.gen.feature.WorldGenerator;
-import darkknight.jewelrycraft.block.BlockList;
/**
* @author Sorin
@@ -18,7 +17,6 @@ public class WorldGenStructure4 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;
Block block = Blocks.stonebrick;
int metadata = 0, slabMeta = 5;
@@ -60,4 +58,9 @@ public class WorldGenStructure4 extends WorldGenStructure
{
return generate(world, BiomeGenBase.plains, rand, x, y, z);
}
+
+ 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 7ede3ef..e67fdb1 100644
--- a/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure5.java
+++ b/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure5.java
@@ -78,4 +78,14 @@ public class WorldGenStructure5 extends WorldGenStructure {
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;
+ }
}
diff --git a/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure6.java b/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure6.java
index 9df172d..d68402a 100644
--- a/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure6.java
+++ b/src/main/java/darkknight/jewelrycraft/worldGen/WorldGenStructure6.java
@@ -91,4 +91,9 @@ public class WorldGenStructure6 extends WorldGenStructure {
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;
+ }
}
diff --git a/src/main/java/darkknight/jewelrycraft/worldGen/village/ComponentJewelry.java b/src/main/java/darkknight/jewelrycraft/worldGen/village/ComponentJewelry.java
index d1fbe87..cefd063 100644
--- a/src/main/java/darkknight/jewelrycraft/worldGen/village/ComponentJewelry.java
+++ b/src/main/java/darkknight/jewelrycraft/worldGen/village/ComponentJewelry.java
@@ -2,6 +2,16 @@ 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;
+import darkknight.jewelrycraft.item.ItemMolds;
+import darkknight.jewelrycraft.tileentity.TileEntityDisplayer;
+import darkknight.jewelrycraft.tileentity.TileEntityMolder;
+import darkknight.jewelrycraft.tileentity.TileEntitySmelter;
+import darkknight.jewelrycraft.util.JewelryNBT;
+import darkknight.jewelrycraft.util.JewelrycraftUtil;
+import darkknight.jewelrycraft.util.Variables;
import net.minecraft.block.Block;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
@@ -15,16 +25,6 @@ import net.minecraft.world.gen.structure.StructureBoundingBox;
import net.minecraft.world.gen.structure.StructureComponent;
import net.minecraft.world.gen.structure.StructureVillagePieces;
import net.minecraft.world.gen.structure.StructureVillagePieces.Start;
-import darkknight.jewelrycraft.block.BlockList;
-import darkknight.jewelrycraft.config.ConfigHandler;
-import darkknight.jewelrycraft.item.ItemList;
-import darkknight.jewelrycraft.item.ItemMolds;
-import darkknight.jewelrycraft.tileentity.TileEntityDisplayer;
-import darkknight.jewelrycraft.tileentity.TileEntityMolder;
-import darkknight.jewelrycraft.tileentity.TileEntitySmelter;
-import darkknight.jewelrycraft.util.JewelryNBT;
-import darkknight.jewelrycraft.util.JewelrycraftUtil;
-import darkknight.jewelrycraft.util.Variables;
public class ComponentJewelry extends StructureVillagePieces.House1 {
private int averageGroundLevel = -1;
diff --git a/src/main/java/darkknight/jewelrycraft/worldGen/village/JCTrades.java b/src/main/java/darkknight/jewelrycraft/worldGen/village/JCTrades.java
index 3a31a8f..f9b5930 100644
--- a/src/main/java/darkknight/jewelrycraft/worldGen/village/JCTrades.java
+++ b/src/main/java/darkknight/jewelrycraft/worldGen/village/JCTrades.java
@@ -1,6 +1,12 @@
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;
+import darkknight.jewelrycraft.item.ItemMolds;
+import darkknight.jewelrycraft.util.JewelryNBT;
+import darkknight.jewelrycraft.util.JewelrycraftUtil;
import net.minecraft.entity.passive.EntityVillager;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
@@ -8,12 +14,6 @@ import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.village.MerchantRecipe;
import net.minecraft.village.MerchantRecipeList;
-import cpw.mods.fml.common.registry.VillagerRegistry.IVillageTradeHandler;
-import darkknight.jewelrycraft.block.BlockList;
-import darkknight.jewelrycraft.item.ItemList;
-import darkknight.jewelrycraft.item.ItemMolds;
-import darkknight.jewelrycraft.util.JewelryNBT;
-import darkknight.jewelrycraft.util.JewelrycraftUtil;
public class JCTrades implements IVillageTradeHandler
{
diff --git a/src/main/java/darkknight/jewelrycraft/worldGen/village/VillageHandler.java b/src/main/java/darkknight/jewelrycraft/worldGen/village/VillageHandler.java
index 5ef855e..68b892e 100644
--- a/src/main/java/darkknight/jewelrycraft/worldGen/village/VillageHandler.java
+++ b/src/main/java/darkknight/jewelrycraft/worldGen/village/VillageHandler.java
@@ -4,11 +4,11 @@
package darkknight.jewelrycraft.worldGen.village;
import java.io.IOException;
-import net.minecraft.world.gen.structure.MapGenStructureIO;
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
{
diff --git a/src/main/java/darkknight/jewelrycraft/worldGen/village/VillageJewelryHandler.java b/src/main/java/darkknight/jewelrycraft/worldGen/village/VillageJewelryHandler.java
index d860db7..dca3b6e 100644
--- a/src/main/java/darkknight/jewelrycraft/worldGen/village/VillageJewelryHandler.java
+++ b/src/main/java/darkknight/jewelrycraft/worldGen/village/VillageJewelryHandler.java
@@ -1,50 +1,50 @@
-package darkknight.jewelrycraft.worldGen.village;
-
-import java.util.List;
-import java.util.Random;
-import net.minecraft.world.gen.structure.StructureVillagePieces.PieceWeight;
-import net.minecraft.world.gen.structure.StructureVillagePieces.Start;
-import cpw.mods.fml.common.registry.VillagerRegistry.IVillageCreationHandler;
-import darkknight.jewelrycraft.config.ConfigHandler;
-
-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);
- }
+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);
+ }
} \ No newline at end of file