Merge remote-tracking branch 'remotes/origin/1.12' into 1.13-prep

# Conflicts:
#	src/main/java/techreborn/api/fluidreplicator/FluidReplicatorRecipe.java
#	src/main/java/techreborn/client/container/ContainerPda.java
#	src/main/java/techreborn/client/gui/TRBuilder.java
#	src/main/java/techreborn/compat/crafttweaker/CTFusionReactor.java
#	src/main/java/techreborn/compat/crafttweaker/CTGeneric.java
#	src/main/java/techreborn/compat/jei/RecipeUtil.java
#	src/main/java/techreborn/compat/jei/TechRebornJeiPlugin.java
#	src/main/java/techreborn/compat/jei/alloySmelter/AlloySmelterRecipeCategory.java
#	src/main/java/techreborn/compat/jei/assemblingMachine/AssemblingMachineRecipeCategory.java
#	src/main/java/techreborn/compat/jei/blastFurnace/BlastFurnaceRecipeCategory.java
#	src/main/java/techreborn/compat/jei/centrifuge/CentrifugeRecipeCategory.java
#	src/main/java/techreborn/compat/jei/chemicalReactor/ChemicalReactorRecipeCategory.java
#	src/main/java/techreborn/compat/jei/compressor/CompressorRecipeCategory.java
#	src/main/java/techreborn/compat/jei/distillationTower/DistillationTowerRecipeCategory.java
#	src/main/java/techreborn/compat/jei/extractor/ExtractorRecipeCategory.java
#	src/main/java/techreborn/compat/jei/fluidReplicator/FluidReplicatorRecipeCategory.java
#	src/main/java/techreborn/compat/jei/fusionReactor/FusionReactorRecipeCategory.java
#	src/main/java/techreborn/compat/jei/fusionReactor/FusionReactorRecipeWrapper.java
#	src/main/java/techreborn/compat/jei/grinder/GrinderRecipeCategory.java
#	src/main/java/techreborn/compat/jei/implosionCompressor/ImplosionCompressorRecipeCategory.java
#	src/main/java/techreborn/compat/jei/industrialElectrolyzer/IndustrialElectrolyzerRecipeCategory.java
#	src/main/java/techreborn/compat/jei/industrialGrinder/IndustrialGrinderRecipeCategory.java
#	src/main/java/techreborn/compat/jei/industrialSawmill/IndustrialSawmillRecipeCategory.java
#	src/main/java/techreborn/compat/jei/rollingMachine/RollingMachineRecipeCategory.java
#	src/main/java/techreborn/compat/jei/vacuumFreezer/VacuumFreezerRecipeCategory.java
#	src/main/java/techreborn/init/ModBlocks.java
#	src/main/java/techreborn/init/ModTileEntities.java
#	src/main/java/techreborn/init/recipes/CraftingTableRecipes.java
#	src/main/java/techreborn/init/recipes/IndustrialGrinderRecipes.java
#	src/main/java/techreborn/items/tools/ItemAdvancedDrill.java
#	src/main/java/techreborn/packets/PacketAutoCraftingTableLock.java
#	src/main/resources/assets/techreborn/lang/en_us.lang
#	src/main/resources/assets/techreborn/loot_tables/chests/abandoned_mineshaft.json
#	src/main/resources/assets/techreborn/loot_tables/chests/desert_pyramid.json
#	src/main/resources/assets/techreborn/loot_tables/chests/igloo_chest.json
#	src/main/resources/assets/techreborn/loot_tables/chests/jungle_temple.json
#	src/main/resources/assets/techreborn/loot_tables/chests/simple_dungeon.json
#	src/main/resources/assets/techreborn/loot_tables/chests/village_blacksmith.json
This commit is contained in:
Modmuss50 2018-09-05 17:49:49 +01:00
commit 6060a97855
No known key found for this signature in database
GPG key ID: 773D17BE8BF49C82
77 changed files with 1863 additions and 4017 deletions

View file

@ -114,8 +114,8 @@ public class TechRebornWorldGen implements IWorldGenerator {
for (OreConfig ore : config) {
if (ore.blockName.equals(defaultOre.blockName) && ore.meta == defaultOre.meta) {
hasFoundOre = true;
ore.state = defaultOre.state; // Should allow for states to
// be saved/loaded
// Should allow for states to be saved/loaded
ore.state = defaultOre.state;
}
}
if (!hasFoundOre) {
@ -194,52 +194,53 @@ public class TechRebornWorldGen implements IWorldGenerator {
boolean genTree = false;
List<OreConfig> list = new ArrayList<>();
Predicate<IBlockState> predicate = BlockMatcher.forBlock(Blocks.STONE);
if (world.provider.isSurfaceWorld()) {
list.addAll(getAllGenOresFromList(config.overworldOres));
genTree = true;
} else if (world.provider.getDimension() == -1) {
if (world.provider.getDimension() == -1) {
list.addAll(getAllGenOresFromList(config.neatherOres));
predicate = BlockMatcher.forBlock(Blocks.NETHERRACK);
} else if (world.provider.getDimension() == 1) {
list.addAll(getAllGenOresFromList(config.endOres));
predicate = BlockMatcher.forBlock(Blocks.END_STONE);
}
else if (config.overworldOresInModdedDims || world.provider.getDimension() == 0) {
list.addAll(getAllGenOresFromList(config.overworldOres));
genTree = true;
}
if (!list.isEmpty() && config.generateOres) {
int xPos, yPos, zPos;
for (OreConfig ore : list) {
WorldGenMinable worldGenMinable = new WorldGenMinable(ore.state, ore.veinSize, predicate);
if (ore.state != null) {
for (int i = 0; i < ore.veinsPerChunk; i++) {
xPos = chunkX * 16 + random.nextInt(16);
if (ore.maxYHeight == -1 || ore.minYHeight == -1) {
continue;
}
yPos = ore.minYHeight + random.nextInt(ore.maxYHeight - ore.minYHeight);
zPos = chunkZ * 16 + random.nextInt(16);
BlockPos pos = new BlockPos(xPos, yPos, zPos);
if (ore.veinSize < 4){
// Workaround for small veins
for (int j = 1; j < ore.veinSize; j++) {
// standard worldgen offset is added here like in WorldGenMinable#generate
BlockPos smallVeinPos = pos.add(8, 0, 8);
smallVeinPos.add(random.nextInt(2), random.nextInt(2), random.nextInt(2));
IBlockState blockState = world.getBlockState(smallVeinPos);
if (blockState.getBlock().isReplaceableOreGen(blockState, world, smallVeinPos, predicate)) {
world.setBlockState(smallVeinPos, ore.state, 2);
}
}
} else {
try {
worldGenMinable.generate(world, random, pos);
} catch (ArrayIndexOutOfBoundsException e) {
Core.logHelper.error("Something bad is happening during world gen the ore "
+ ore.blockNiceName
+ " caused a crash when generating. Report this to the TechReborn devs with a log");
if (ore.state == null) {
continue;
}
for (int i = 0; i < ore.veinsPerChunk; i++) {
xPos = chunkX * 16 + random.nextInt(16);
if (ore.maxYHeight == -1 || ore.minYHeight == -1) {
continue;
}
yPos = ore.minYHeight + random.nextInt(ore.maxYHeight - ore.minYHeight);
zPos = chunkZ * 16 + random.nextInt(16);
BlockPos pos = new BlockPos(xPos, yPos, zPos);
if (ore.veinSize < 4) {
// Workaround for small veins
for (int j = 1; j < ore.veinSize; j++) {
// standard worldgen offset is added here like in WorldGenMinable#generate
BlockPos smallVeinPos = pos.add(8, 0, 8);
smallVeinPos.add(random.nextInt(2), random.nextInt(2), random.nextInt(2));
IBlockState blockState = world.getBlockState(smallVeinPos);
if (blockState.getBlock().isReplaceableOreGen(blockState, world, smallVeinPos, predicate)) {
world.setBlockState(smallVeinPos, ore.state, 2);
}
}
} else {
try {
worldGenMinable.generate(world, random, pos);
} catch (ArrayIndexOutOfBoundsException e) {
Core.logHelper.error("Something bad is happening during world gen the ore "
+ ore.blockNiceName
+ " caused a crash when generating. Report this to the TechReborn devs with a log");
}
}
}
}

View file

@ -36,6 +36,8 @@ public class WorldGenConfig {
public boolean generateOres = true;
public boolean retroGenOres = false;
public boolean overworldOresInModdedDims = true;
public List<OreConfig> overworldOres;