Browse Source

attempting to generate small random gem ores better

Gregorius Techneticies 2 months ago
parent
commit
44c4c8b005
Signed by: Gregorius Techneticies <gregoriustech@gmail.com> GPG Key ID: 1B693EA14F2FD70F

+ 1
- 1
CHANGELOG.md View File

@@ -12,7 +12,7 @@ Nothing (I tend to only add finished Stuff to the Changelog).
12 12
 6.14.09: (Not released yet, released whenever it needs to be)
13 13
 [NOTE] The Default Config Pack updated to disable Fastcrafts Chunk Culling, so that Ocean Floors are now rendering properly again. Set "enableCullingTweaks" to false in the "config/fastcraft.ini" File, if you experience this Issue.
14 14
 [COMPAT] Aroma1997's Mining Dimension is now Compatible with my Worldgen.
15
-[COMPAT] Et Futurum Requiem is now supported properly and up to date. Its Netherite Items are preferred over the ones of Netherite Plus. https://www.curseforge.com/minecraft/mc-mods/et-futurum-requiem/files
15
+[COMPAT] Et Futurum Requiem is now supported properly and up to date. Its Netherite Items and Ore Blocks are preferred over the ones of Netherite Plus. https://www.curseforge.com/minecraft/mc-mods/et-futurum-requiem/files
16 16
 [FIXED] Infinite Worldgen Loop with Oceans, because I forgot to set the Block Update Flag to 2 during Worldgen, because ofcourse I left it to default when I fixed another Ocean related Bug...
17 17
 [FIXED] Coal and Oil Shale Stone Layer Ore Blocks were flammable t othe point of burning up way too much. Now they are still flammable but Fire wont spread to them.
18 18
 [FIXED] Railcraft Crowbars should now be able to remove Covers again, even if they dont use the overlay for technical reasons.

+ 22
- 22
src/main/java/gregapi/GT_API_Post.java View File

@@ -196,26 +196,26 @@ public class GT_API_Post extends Abstract_Mod {
196 196
 	@Override
197 197
 	public void onModInit2(FMLInitializationEvent aEvent) {
198 198
 		new LoaderWoodDictionary().run();
199
-
199
+		
200 200
 		// Atum violates the "Items have to be created in preInit" Rule...
201 201
 		if (MD.ATUM.mLoaded) {
202 202
 			IL.ATUM_Scarab      .set(ST.make(MD.ATUM, "item.scarab" , 1, 0), new OreDictItemData(MT.Au, 4*U, MT.Diamond, U));
203 203
 			IL.ATUM_Limestone   .set(ST.make(MD.ATUM, "tile.stone"  , 1, 0), OP.stone.dat(MT.Limestone));
204 204
 			IL.ATUM_Limecobble  .set(ST.make(MD.ATUM, "tile.cobble" , 1, 0), OP.stone.dat(MT.Limestone));
205
-
205
+			
206 206
 			OM.reg("cropDate"               , ST.make(MD.ATUM, "item.date", 1, 0));
207 207
 			OM.reg("cropFlax"               , ST.make(MD.ATUM, "item.flax", 1, 0));
208 208
 			OM.reg("seedFlax"               , ST.make(MD.ATUM, "item.flaxSeeds", 1, 0));
209 209
 			OM.reg("itemPelt"               , ST.make(MD.ATUM, "item.wolfPelt", 1, 0));
210 210
 			OM.reg(OP.dust, MT.Ectoplasm    , ST.make(MD.ATUM, "item.ectoplasm", 1, 0));
211
-
211
+			
212 212
 			OreDictManager.INSTANCE.setItemData_(ST.make(MD.ATUM, "tile.ironOre"        , 1, 0), OP.oreLimestone.dat(MT.Fe          ));
213 213
 			OreDictManager.INSTANCE.setItemData_(ST.make(MD.ATUM, "tile.goldOre"        , 1, 0), OP.oreLimestone.dat(MT.Au          ));
214 214
 			OreDictManager.INSTANCE.setItemData_(ST.make(MD.ATUM, "tile.redstoneOre"    , 1, 0), OP.oreLimestone.dat(MT.Redstone    ));
215 215
 			OreDictManager.INSTANCE.setItemData_(ST.make(MD.ATUM, "tile.lapisOre"       , 1, 0), OP.oreLimestone.dat(MT.Lapis       ));
216 216
 			OreDictManager.INSTANCE.setItemData_(ST.make(MD.ATUM, "tile.coalOre"        , 1, 0), OP.oreLimestone.dat(MT.Coal        ));
217 217
 			OreDictManager.INSTANCE.setItemData_(ST.make(MD.ATUM, "tile.diamondOre"     , 1, 0), OP.oreLimestone.dat(MT.Diamond     ));
218
-
218
+			
219 219
 			OM.data(MD.ATUM, "item.stoneChunk", 1, 0, MT.Limestone, U);
220 220
 			OM.data(MD.ATUM, "tile.sand", 1, W, MT.Sand, U);
221 221
 			OM.data(MD.ATUM, "tile.framedGlass", 1, W, MT.Glass, U);
@@ -226,7 +226,7 @@ public class GT_API_Post extends Abstract_Mod {
226 226
 			OM.data(MD.ATUM, "tile.thinCrystalGlass", 1, W, MT.Glass, 3*U8);
227 227
 			OM.data(MD.ATUM, "tile.thinFramedStainedGlass", 1, W, MT.Glass, 3*U8);
228 228
 			OM.data(MD.ATUM, "tile.thinCrystalStainedGlass", 1, W, MT.Glass, 3*U8);
229
-
229
+			
230 230
 			OM.data(MD.ATUM, "item.loot", 1,  2, MT.Ag  , 2*U);
231 231
 			OM.data(MD.ATUM, "item.loot", 1,  3, MT.Ag  , 2*U);
232 232
 			OM.data(MD.ATUM, "item.loot", 1,  4, MT.Au  , 2*U);
@@ -288,13 +288,13 @@ public class GT_API_Post extends Abstract_Mod {
288 288
 			OM.data(MD.ATUM, "item.loot", 1,140, MT.Au  , 2*U, MT.Diamond       , 2*U);
289 289
 			OM.data(MD.ATUM, "item.loot", 1,141, MT.Au  , 2*U, MT.Diamond       , 2*U);
290 290
 		}
291
-
291
+		
292 292
 		// And Project Red violates that Rule aswell...
293 293
 		if (MD.PR.mLoaded) {
294 294
 			OreDictManager.INSTANCE.setTarget(OP.ingot  , MT.RedAlloy                   , ST.make(MD.PR, "projectred.core.part", 1, 10));
295 295
 			OreDictManager.INSTANCE.setTarget(OP.ingot  , MT.ElectrotineAlloy           , ST.make(MD.PR, "projectred.core.part", 1, 55));
296 296
 			OreDictManager.INSTANCE.setTarget(OP.dust   , MT.Electrotine                , ST.make(MD.PR, "projectred.core.part", 1, 56));
297
-
297
+			
298 298
 			OM.reg(OP.stone.dat(MT.Marble), ST.make(MD.PR_EXPLORATION, "projectred.exploration.stone", 1, 0));
299 299
 			OM.reg(OP.stone.dat(MT.Marble), ST.make(MD.PR_EXPLORATION, "projectred.exploration.stone", 1, 1));
300 300
 			OM.reg(OP.stone.dat(MT.Basalt), ST.make(MD.PR_EXPLORATION, "projectred.exploration.stone", 1, 2));
@@ -307,9 +307,9 @@ public class GT_API_Post extends Abstract_Mod {
307 307
 			OM.data(MD.PR, "projectred.core.part", 1, 16, ANY.Cu, U);
308 308
 			OM.data(MD.PR, "projectred.core.part", 1, 17, ANY.Fe, U);
309 309
 			OM.data(MD.PR, "projectred.core.part", 1, 18, MT .Au, U);
310
-
310
+			
311 311
 			StoneLayer.REPLACEABLE_BLOCKS.add(ST.block(MD.PR_EXPLORATION, "projectred.exploration.ore", null));
312
-
312
+			
313 313
 			OreDictManager.INSTANCE.setItemData(ST.make(MD.PR_EXPLORATION, "projectred.exploration.ore", 1, 0), OP.oreVanillastone.dat(MT.Ruby));
314 314
 			OreDictManager.INSTANCE.setItemData(ST.make(MD.PR_EXPLORATION, "projectred.exploration.ore", 1, 1), OP.oreVanillastone.dat(MT.BlueSapphire));
315 315
 			OreDictManager.INSTANCE.setItemData(ST.make(MD.PR_EXPLORATION, "projectred.exploration.ore", 1, 2), OP.oreVanillastone.dat(MT.Olivine));
@@ -318,7 +318,7 @@ public class GT_API_Post extends Abstract_Mod {
318 318
 			OreDictManager.INSTANCE.setItemData(ST.make(MD.PR_EXPLORATION, "projectred.exploration.ore", 1, 5), OP.oreVanillastone.dat(MT.Ag));
319 319
 			OreDictManager.INSTANCE.setItemData(ST.make(MD.PR_EXPLORATION, "projectred.exploration.ore", 1, 6), OP.oreVanillastone.dat(MT.Electrotine));
320 320
 		}
321
-
321
+		
322 322
 		// Okay I should not have wondered about Blue Power doing the same garbage considering Project Red...
323 323
 		if (MD.BP.mLoaded) {
324 324
 			OreDictManager.INSTANCE.setTarget(OP.ingot  , MT.RedAlloy                   , ST.make(MD.BP, "red_alloy_ingot", 1, 0));
@@ -326,7 +326,7 @@ public class GT_API_Post extends Abstract_Mod {
326 326
 			OreDictManager.INSTANCE.setTarget(OP.ingot  , MT.PurpleAlloy                , ST.make(MD.BP, "purple_alloy_ingot", 1, 0));
327 327
 			OreDictManager.INSTANCE.setTarget(OP.dust   , MT.Teslatite                  , ST.make(MD.BP, "teslatite_dust", 1, 0));
328 328
 			OreDictManager.INSTANCE.setTarget(OP.dust   , MT.UNUSED.InfusedTeslatite    , ST.make(MD.BP, "infused_teslatite_dust", 1, 0));
329
-
329
+			
330 330
 			OM.reg("seedFlax"                            , ST.make(MD.BP, "flax_seeds", 1, 0));
331 331
 			OM.reg(DYE_OREDICTS_MIXABLE[DYE_INDEX_Purple], ST.make(MD.BP, "indigo_dye", 1, 0));
332 332
 			OM.reg("cropIndigo"                          , ST.make(MD.BP, "indigo_flower", 1, 0));
@@ -348,12 +348,12 @@ public class GT_API_Post extends Abstract_Mod {
348 348
 			OM.reg(OP.stone.dat(MT.Marble)               , ST.make(MD.BP, "marble_brick_small", 1, 0));
349 349
 			OM.reg(OP.stone.dat(MT.Marble)               , ST.make(MD.BP, "marble_paver", 1, 0));
350 350
 			OM.reg(OP.stone.dat(MT.Marble)               , ST.make(MD.BP, "marble_tile", 1, 0));
351
-
351
+			
352 352
 			OM.data(MD.BP, "zincplate", 1, 0, ANY.Fe,   U2, MT.Zn,   U4);
353 353
 			OM.data(MD.BP, "paint_can", 1, W, ANY.Fe, 7*U2, MT.Zn, 7*U4);
354 354
 			OM.data(MD.BP, "lumar", 1, W, ANY.Glowstone, U2, MT.Redstone, U2);
355 355
 			OM.data(MD.BP, "tiles", 1, 0, MT.Marble, U2, MT.Basalt, U2);
356
-
356
+			
357 357
 			StoneLayer.REPLACEABLE_BLOCKS.add(ST.block(MD.BP, "ruby_ore"     , null));
358 358
 			StoneLayer.REPLACEABLE_BLOCKS.add(ST.block(MD.BP, "sapphire_ore" , null));
359 359
 			StoneLayer.REPLACEABLE_BLOCKS.add(ST.block(MD.BP, "amethyst_ore" , null));
@@ -362,7 +362,7 @@ public class GT_API_Post extends Abstract_Mod {
362 362
 			StoneLayer.REPLACEABLE_BLOCKS.add(ST.block(MD.BP, "tungsten_ore" , null));
363 363
 			StoneLayer.REPLACEABLE_BLOCKS.add(ST.block(MD.BP, "zinc_ore"     , null));
364 364
 			StoneLayer.REPLACEABLE_BLOCKS.add(ST.block(MD.BP, "copper_ore"   , null));
365
-
365
+			
366 366
 			OreDictManager.INSTANCE.setItemData_(ST.make(MD.BP, "ruby_ore"     , 1, 0), OP.oreVanillastone.dat(MT.Ruby));
367 367
 			OreDictManager.INSTANCE.setItemData_(ST.make(MD.BP, "sapphire_ore" , 1, 0), OP.oreVanillastone.dat(MT.BlueSapphire));
368 368
 			OreDictManager.INSTANCE.setItemData_(ST.make(MD.BP, "amethyst_ore" , 1, 0), OP.oreVanillastone.dat(MT.Amethyst));
@@ -372,7 +372,7 @@ public class GT_API_Post extends Abstract_Mod {
372 372
 			OreDictManager.INSTANCE.setItemData_(ST.make(MD.BP, "zinc_ore"     , 1, 0), OP.oreVanillastone.dat(MT.Zn));
373 373
 			OreDictManager.INSTANCE.setItemData_(ST.make(MD.BP, "copper_ore"   , 1, 0), OP.oreVanillastone.dat(MT.Cu));
374 374
 		}
375
-
375
+		
376 376
 		// Yay for Chickenbones doing it wrong, I guess...
377 377
 		if (MD.WR_CBE_C.mLoaded) {
378 378
 			OreDictManager.INSTANCE.setTarget(OP.stick  , MT.Obsidian      , ST.make(MD.WR_CBE_C, "obsidianStick", 1, 0));
@@ -417,7 +417,7 @@ public class GT_API_Post extends Abstract_Mod {
417 417
 		if (MD.CookBook.mLoaded) {
418 418
 			OM.data(MD.CookBook, "recipebook", 1, W, MT.Paper, U*3);
419 419
 		}
420
-
420
+		
421 421
 		// Grimoire of Gaia... though I did not expect them to have done a good job with that...
422 422
 		if (MD.GoG.mLoaded) {
423 423
 			OreDictManager.INSTANCE.setTarget(OP.chunkGt, MT.Fe, ST.make(MD.GoG, "item.GrimoireOfGaia.Shard", 1, 0));
@@ -429,13 +429,13 @@ public class GT_API_Post extends Abstract_Mod {
429 429
 			OM.data(MD.GoG, "item.GrimoireOfGaia.Shard"   , 1, 6, MT.Blaze     , U8);
430 430
 			OM.data(MD.GoG, "item.GrimoireOfGaia.Fragment", 1, 0, MT.Emerald   , U8);
431 431
 		}
432
-
432
+		
433 433
 		// Seems like it isn't "better" in all aspects.
434 434
 		if (MD.BETTER_RECORDS.mLoaded) {
435 435
 			OM.reg(OD.record, ST.make(MD.BETTER_RECORDS, "urlrecord", 1, 0));
436 436
 			OM.reg(OD.record, ST.make(MD.BETTER_RECORDS, "urlmultirecord", 1, 0));
437 437
 		}
438
-
438
+		
439 439
 		// Those "On-Demand" Materials of VoltzEngine are registered late...
440 440
 		if (MD.VOLTZ.mLoaded) {
441 441
 			OreDictManager.INSTANCE.setItemData(ST.make(MD.VOLTZ, "veStoneOre", 1, 0), OP.oreVanillastone.dat(MT.Sn));
@@ -476,7 +476,7 @@ public class GT_API_Post extends Abstract_Mod {
476 476
 			OM.data(MD.VOLTZ, "veSheetMetal", 1,  16, ANY.Steel ,  U8);
477 477
 			OM.data(MD.VOLTZ, "veSheetMetal", 1,  17, ANY.Steel ,  U4);
478 478
 			OM.data(MD.VOLTZ, "veSheetMetal", 1,  18, ANY.Steel ,  3*U2);
479
-
479
+			
480 480
 			OM.data(MD.VOLTZ, "veGear"      , 1,   1, ANY.Cu    ,  U);
481 481
 			OM.data(MD.VOLTZ, "veGear"      , 1,   2, MT.Sn     ,  U);
482 482
 			OM.data(MD.VOLTZ, "veGear"      , 1,   3, MT.Bronze ,  U);
@@ -494,7 +494,7 @@ public class GT_API_Post extends Abstract_Mod {
494 494
 			OM.data(MD.VOLTZ, "veGear"      , 1,  16, ANY.Wood  ,  U);
495 495
 			OM.data(MD.VOLTZ, "veGear"      , 1,  17, MT.Diamond,  U);
496 496
 			OM.data(MD.VOLTZ, "veGear"      , 1,  18, MT.Pt     ,  U);
497
-
497
+			
498 498
 			OM.data(MD.VOLTZ, "veRod"       , 1,   1, ANY.Cu    ,  U2);
499 499
 			OM.data(MD.VOLTZ, "veRod"       , 1,   2, MT.Sn     ,  U2);
500 500
 			OM.data(MD.VOLTZ, "veRod"       , 1,   3, MT.Bronze ,  U2);
@@ -512,7 +512,7 @@ public class GT_API_Post extends Abstract_Mod {
512 512
 			OM.data(MD.VOLTZ, "veRod"       , 1,  16, ANY.Wood  ,  U2);
513 513
 			OM.data(MD.VOLTZ, "veRod"       , 1,  17, MT.Diamond,  U2);
514 514
 			OM.data(MD.VOLTZ, "veRod"       , 1,  18, MT.Pt     ,  U2);
515
-
515
+			
516 516
 			OM.data(MD.VOLTZ, "veWire"      , 1,   1, ANY.Cu    ,  U9);
517 517
 			OM.data(MD.VOLTZ, "veWire"      , 1,   2, MT.Sn     ,  U9);
518 518
 			OM.data(MD.VOLTZ, "veWire"      , 1,   3, MT.Bronze ,  U9);
@@ -532,7 +532,7 @@ public class GT_API_Post extends Abstract_Mod {
532 532
 			OM.data(MD.VOLTZ, "veWire"      , 1,  18, MT.Pt     ,  U9);
533 533
 		}
534 534
 	}
535
-
535
+	
536 536
 	@Override
537 537
 	public void onModPostInit2(FMLPostInitializationEvent aEvent) {
538 538
 		if (DISABLE_ALL_IC2_COMPRESSOR_RECIPES  ) ic2.api.recipe.Recipes.compressor.getRecipes().clear();

+ 3
- 3
src/main/java/gregapi/block/ToolCompat.java View File

@@ -1,5 +1,5 @@
1 1
 /**
2
- * Copyright (c) 2020 GregTech-6 Team
2
+ * Copyright (c) 2021 GregTech-6 Team
3 3
  *
4 4
  * This file is part of GregTech.
5 5
  *
@@ -126,7 +126,7 @@ public class ToolCompat {
126 126
 				}
127 127
 			}
128 128
 			if (!rReturn && BlocksGT.Beam1 != null) {
129
-				if (aBlock == Blocks.log) {
129
+				if (aBlock == Blocks.log || IL.EtFu_Bark_Oak.equal(aBlock)) {
130 130
 					rReturn = aWorld.setBlock(aX, aY, aZ, BlocksGT.Beam1, aMeta, 3);
131 131
 				} else if (IL.TF_Log_Darkwood.equal(aBlock) && (aMeta & 3) != 3) {
132 132
 					rReturn = aWorld.setBlock(aX, aY, aZ, BlocksGT.Beam1, aMeta, 3);
@@ -149,7 +149,7 @@ public class ToolCompat {
149 149
 				}
150 150
 			}
151 151
 			if (!rReturn && BlocksGT.Beam2 != null) {
152
-				if (aBlock == Blocks.log2) {
152
+				if (aBlock == Blocks.log2 || IL.EtFu_Bark_Acacia.equal(aBlock)) {
153 153
 					rReturn = aWorld.setBlock(aX, aY, aZ, BlocksGT.Beam2, aMeta, 3);
154 154
 				} else if (IL.IC2_Log_Rubber.equal(aBlock) || IL.MFR_Log_Rubber.equal(aBlock)) {
155 155
 					rReturn = aWorld.setBlock(aX, aY, aZ, BlocksGT.Beam2, 2, 3);

+ 5
- 3
src/main/java/gregapi/data/CS.java View File

@@ -880,13 +880,15 @@ public class CS {
880 880
 	, GEN_ATUM          = new ArrayListNoNulls<>()
881 881
 	, GEN_DEEPDARK      = new ArrayListNoNulls<>()
882 882
 	, GEN_ENVM          = new ArrayListNoNulls<>()
883
+	, GEN_ENVM_GT       = new ArrayListNoNulls<>()
883 884
 	, GEN_AROMA         = new ArrayListNoNulls<>()
885
+	, GEN_AROMA_GT      = new ArrayListNoNulls<>()
884 886
 	, GEN_ALFHEIM       = new ArrayListNoNulls<>()
885 887
 	, GEN_TROPICS       = new ArrayListNoNulls<>()
886 888
 	, GEN_CANDY         = new ArrayListNoNulls<>()
887
-	, GEN_GEMS[]        = new List[] {GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_ENVM, GEN_AROMA, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_MARS, GEN_AETHER}
888
-	, GEN_FLOOR[]       = new List[] {GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_ENVM, GEN_AROMA, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_MARS, GEN_DEEPDARK, GEN_TFC, GEN_NETHER, GEN_MOON, GEN_TWILIGHT, GEN_ALFHEIM, GEN_TROPICS, GEN_CANDY}
889
-	, GEN_ALL[]         = new List[] {GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_ENVM, GEN_AROMA, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_MARS, GEN_DEEPDARK, GEN_TFC, GEN_NETHER, GEN_MOON, GEN_TWILIGHT, GEN_ALFHEIM, GEN_TROPICS, GEN_CANDY, GEN_AETHER, GEN_END, GEN_PLANETS, GEN_ASTEROIDS}
889
+	, GEN_GEMS[]        = new List[] {GEN_OVERWORLD        , GEN_PFAA, GEN_ENVM,              GEN_AROMA,               GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_MARS, GEN_AETHER}
890
+	, GEN_FLOOR[]       = new List[] {GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_ENVM, GEN_ENVM_GT, GEN_AROMA, GEN_AROMA_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_MARS, GEN_DEEPDARK, GEN_TFC, GEN_NETHER, GEN_MOON, GEN_TWILIGHT, GEN_ALFHEIM, GEN_TROPICS, GEN_CANDY}
891
+	, GEN_ALL[]         = new List[] {GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_ENVM, GEN_ENVM_GT, GEN_AROMA, GEN_AROMA_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_MARS, GEN_DEEPDARK, GEN_TFC, GEN_NETHER, GEN_MOON, GEN_TWILIGHT, GEN_ALFHEIM, GEN_TROPICS, GEN_CANDY, GEN_AETHER, GEN_END, GEN_PLANETS, GEN_ASTEROIDS}
890 892
 	;
891 893
 	
892 894
 	/** Lists of all the active Large Ore Vein generation by Dimension Type, these are getting initialised in Load! */

+ 2
- 1
src/main/java/gregapi/data/IL.java View File

@@ -91,7 +91,8 @@ public enum IL implements IItemContainer {
91 91
 	NeLi_Torch_Soul, NeLi_Torch_Fox, NeLi_Torch_Shadow, NeLi_Fire_Soul, NeLi_Fire_Shadow, NeLi_Fire_Fox, NeLi_Obsidian, NeLi_Blackstone_Crying, NeLi_Bowl_DevilishMaize, NeLi_Bowl_DevilishPopcorn, NeLi_Bowl_CrimsonStew, NeLi_Bowl_WarpedStew, NeLi_Bowl_FoxfireStew, NeLi_Bottle_Hellderberryjuice, NeLi_Bucket_Spectral_Dew, NeLi_ShroomLight, NeLi_Gloomstone, NeLi_Reed, NeLi_Wither_Rose, NeLi_Foxfire_Lily, NeLi_Foxfire_Powder, NeLi_Wart_Crimson, NeLi_Wart_Warped, NeLi_Wart_Soggy, NeLi_Bread, NeLi_Cookie, NeLi_SoulSoil, NeLi_SoulFarm, NeLi_Gravel, NeLi_Magmatic_Netherrack, NeLi_Magmatic_Blackstone, NeLi_Strider_Flank_Raw, NeLi_Strider_Flank_Cooked,
92 92
 	NeLi_Quartz_Bricks, NeLi_Quartz_Smooth, NeLi_Quartz_Chiseled_Pillar, NeLi_Void_Block, NeLi_Void_Bricks, NeLi_Void_Smooth, NeLi_Void_Chiseled, NeLi_Void_Pillar, NeLi_Void_Chiseled_Pillar,
93 93
 	NeLi_Stem_Crimson, NeLi_Stem_Warped, NeLi_Stem_FoxFire, NeLi_Beam1_Crimson, NeLi_Beam1_Warped, NeLi_Beam1_FoxFire, NeLi_Hyphae_Crimson, NeLi_Hyphae_Warped, NeLi_Hyphae_FoxFire, NeLi_Beam2_Crimson, NeLi_Beam2_Warped, NeLi_Beam2_FoxFire,
94
-	EtFu_Chorus_Fruit, EtFu_Chorus_Popped, EtFu_Rabbit_Foot, EtFu_Beet_Seeds, EtFu_Dragon_Breath, EtFu_Lingering_Potion, EtFu_Path, EtFu_Dirt, EtFu_Gravel, EtFu_Sandstone, EtFu_Obsidian, EtFu_Quartz_Bricks, EtFu_Magmatic_Netherrack, EtFu_Barrel, EtFu_Wither_Rose,
94
+	EtFu_Chorus_Fruit, EtFu_Chorus_Popped, EtFu_Rabbit_Foot, EtFu_Beet_Seeds, EtFu_Dragon_Breath, EtFu_Lingering_Potion, EtFu_Path, EtFu_Dirt, EtFu_Gravel, EtFu_Sandstone, EtFu_Obsidian, EtFu_Ancient_Debris, EtFu_Quartz_Bricks, EtFu_Magmatic_Netherrack, EtFu_Barrel, EtFu_Wither_Rose,
95
+	EtFu_Bark_Oak, EtFu_Bark_Spruce, EtFu_Bark_Birch, EtFu_Bark_Jungle, EtFu_Bark_Acacia, EtFu_Bark_DarkOak, EtFu_Beam1_Oak, EtFu_Beam1_Spruce, EtFu_Beam1_Birch, EtFu_Beam1_Jungle, EtFu_Beam1_Acacia, EtFu_Beam1_DarkOak, EtFu_Beam2_Oak, EtFu_Beam2_Spruce, EtFu_Beam2_Birch, EtFu_Beam2_Jungle, EtFu_Beam2_Acacia, EtFu_Beam2_DarkOak,
95 96
 	EtFu_Granite, EtFu_Diorite, EtFu_Andesite, EtFu_Granite_Smooth, EtFu_Diorite_Smooth, EtFu_Andesite_Smooth,
96 97
 	GaSu_Granite, GaSu_Diorite, GaSu_Andesite, GaSu_Granite_Smooth, GaSu_Diorite_Smooth, GaSu_Andesite_Smooth, GaSu_Basalt, GaSu_Basalt_Smooth, GaSu_Beet_Seeds,
97 98
 	CHSL_Granite, CHSL_Diorite, CHSL_Andesite, CHSL_Granite_Smooth, CHSL_Diorite_Smooth, CHSL_Andesite_Smooth,

+ 27
- 27
src/main/java/gregapi/data/MT.java View File

@@ -197,16 +197,16 @@ public class MT {
197 197
 	protected static OreDictMaterial valgemdcmp   (int aID, String aNameOreDict, TextureSet[] aSets, long aR, long aG, long aB, long aA    , Object... aRandomData)  {return valgem          (aID, aNameOreDict, aSets           , aR, aG, aB, aA, aRandomData).put(DECOMPOSABLE).setSmelting(null, 0);}
198 198
 	protected static OreDictMaterial valgemcent   (int aID, String aNameOreDict, TextureSet[] aSets, long aR, long aG, long aB, long aA    , Object... aRandomData)  {return valgemdcmp      (aID, aNameOreDict, aSets           , aR, aG, aB, aA, aRandomData).put(CENTRIFUGE);}
199 199
 	protected static OreDictMaterial valgemelec   (int aID, String aNameOreDict, TextureSet[] aSets, long aR, long aG, long aB, long aA    , Object... aRandomData)  {return valgemdcmp      (aID, aNameOreDict, aSets           , aR, aG, aB, aA, aRandomData).put(ELECTROLYSER);}
200
-	protected static OreDictMaterial diamond      (int aID, String aNameOreDict                    , long aR, long aG, long aB, byte aColor, Object... aRandomData)  {return valgemdcmp      (aID, aNameOreDict, SET_DIAMOND     , aR, aG, aB,127, aRandomData).lens(aColor).put(ANY.Diamond   , COMMON_ORE).steal(C).aspects(TC.VITREUS, 3, TC.LUCRUM , 4                ).qual(3, 8.0,1280, 3).setSmelting(C    , 2*U  ).setBurning(Ash, U);}
201
-	protected static OreDictMaterial sapphire     (int aID, String aNameOreDict                    , long aR, long aG, long aB, byte aColor, Object... aRandomData)  {return valgemcent      (aID, aNameOreDict, SET_GEM_VERTICAL, aR, aG, aB,127, aRandomData).lens(aColor).put(ANY.Sapphire  , COMMON_ORE, MELTING).aspects(TC.VITREUS, 3, TC.LUCRUM , 4                ).qual(3, 7.0, 512, 3).setSmelting(Al2O3, 3*U4 );}
202
-	protected static OreDictMaterial emerald      (int aID, String aNameOreDict                    , long aR, long aG, long aB, byte aColor, Object... aRandomData)  {return valgemelec      (aID, aNameOreDict, SET_EMERALD     , aR, aG, aB,127, aRandomData).lens(aColor).put(ANY.Emerald   , COMMON_ORE, MELTING).aspects(TC.VITREUS, 3, TC.LUCRUM , 3                ).qual(3, 9.0, 128, 2).setSmelting(Be   ,   U36);}
203
-	protected static OreDictMaterial garnet       (int aID, String aNameOreDict                    , long aR, long aG, long aB, byte aColor, Object... aRandomData)  {return valgemelec      (aID, aNameOreDict, SET_RUBY        , aR, aG, aB,127, aRandomData).lens(aColor).put(ANY.Garnet    , MD.GT              ).aspects(TC.VITREUS, 3, TC.LUCRUM , 1                ).qual(3, 7.0, 128, 2);}
204
-	protected static OreDictMaterial jasper       (int aID, String aNameOreDict                    , long aR, long aG, long aB, byte aColor, Object... aRandomData)  {return valgemelec      (aID, aNameOreDict, SET_GLASS       , aR, aG, aB,150, aRandomData).lens(aColor).put(ANY.Jasper    , MD.RH              ).aspects(TC.VITREUS, 2, TC.LUCRUM , 2, TC.METALLUM, 1).qual(3, 7.0, 256, 2).uumMcfg( 0, SiO2, 2*U, Fe, 1*U);}
205
-	protected static OreDictMaterial tigereye     (int aID, String aNameOreDict                    , long aR, long aG, long aB, byte aColor, Object... aRandomData)  {return valgemelec      (aID, aNameOreDict, SET_GLASS       , aR, aG, aB,200, aRandomData).lens(aColor).put(ANY.TigerEye  , MD.RH              ).aspects(TC.VITREUS, 2, TC.LUCRUM , 1, TC.TERRA   , 1).qual(3, 7.0, 256, 2).uumMcfg( 0, SiO2, 1*U);}
206
-	protected static OreDictMaterial aventurine   (int aID, String aNameOreDict                    , long aR, long aG, long aB, byte aColor, Object... aRandomData)  {return valgemelec      (aID, aNameOreDict, SET_GLASS       , aR, aG, aB,200, aRandomData).lens(aColor).put(ANY.Aventurine, MD.RH              ).aspects(TC.VITREUS, 2, TC.LUCRUM , 1, TC.POTENTIA, 1).qual(3, 7.0, 256, 2).uumMcfg( 0, SiO2, 1*U);}
207
-	protected static OreDictMaterial fluorite     (int aID, String aNameOreDict                    , long aR, long aG, long aB             , Object... aRandomData)  {return gem             (aID, aNameOreDict, SET_RUBY        , aR, aG, aB,255, aRandomData)             .put(ANY.CaF2      , COMMON_ORE, MD.ReC ).aspects(TC.VITREUS, 2, TC.VENENUM, 2                )                     .uumMcfg( 0, Ca, 1*U, F, 2*U).heat(1633).put(DECOMPOSABLE, ACID, MELTING, MOLTEN, MORTAR, INGOTS, BRITTLE, CRYSTALLISABLE);}
208
-	protected static OreDictMaterial blaze        (int aID, String aNameOreDict                    , long aR, long aG, long aB             , Object... aRandomData)  {return create          (aID, aNameOreDict, SET_POWDER      , aR, aG, aB,255, aRandomData)             .put(ANY.Blaze     , COMMON_ORE         ).aspects(TC.PRAECANTIO, 2                            ).qual(1, 2.0,  16, 1).handle(ANY.Blaze).put(G_BLAZE, GLOWING, MAGICAL, BRITTLE, MORTAR);}
209
-	protected static OreDictMaterial clay         (int aID, String aNameOreDict         , long aR, long aG, long aB, OreDictMaterial aTrace, Object... aRandomData)  {return oredustelec     (aID, aNameOreDict, SET_ROUGH       , aR, aG, aB,255, aRandomData)             .put(ANY.Clay      , MORTAR, PLATES     ).aspects(TC.TERRA, 1                                 ).uumMcfg(18, aTrace, 1*U, Clay, 18*U).heat(2000).setSmelting(MT.Ceramic, U);}
200
+	protected static OreDictMaterial diamond      (int aID, String aNameOreDict                    , long aR, long aG, long aB, byte aColor, Object... aRandomData)  {return valgemdcmp      (aID, aNameOreDict, SET_DIAMOND     , aR, aG, aB,127, aRandomData).lens(aColor).put(ANY.Diamond   , COMMON_ORE                               ).steal(C).aspects(TC.VITREUS, 3, TC.LUCRUM , 4                ).qual(3, 8.0,1280, 3).setSmelting(C    , 2*U  ).setBurning(Ash, U);}
201
+	protected static OreDictMaterial sapphire     (int aID, String aNameOreDict                    , long aR, long aG, long aB, byte aColor, Object... aRandomData)  {return valgemcent      (aID, aNameOreDict, SET_GEM_VERTICAL, aR, aG, aB,127, aRandomData).lens(aColor).put(ANY.Sapphire  , COMMON_ORE, MELTING, RANDOM_SMALL_GEM_ORE)         .aspects(TC.VITREUS, 3, TC.LUCRUM , 4                ).qual(3, 7.0, 512, 3).setSmelting(Al2O3, 3*U4 );}
202
+	protected static OreDictMaterial emerald      (int aID, String aNameOreDict                    , long aR, long aG, long aB, byte aColor, Object... aRandomData)  {return valgemelec      (aID, aNameOreDict, SET_EMERALD     , aR, aG, aB,127, aRandomData).lens(aColor).put(ANY.Emerald   , COMMON_ORE, MELTING, RANDOM_SMALL_GEM_ORE)         .aspects(TC.VITREUS, 3, TC.LUCRUM , 3                ).qual(3, 9.0, 128, 2).setSmelting(Be   ,   U36);}
203
+	protected static OreDictMaterial garnet       (int aID, String aNameOreDict                    , long aR, long aG, long aB, byte aColor, Object... aRandomData)  {return valgemelec      (aID, aNameOreDict, SET_RUBY        , aR, aG, aB,127, aRandomData).lens(aColor).put(ANY.Garnet    , MD.GT              , RANDOM_SMALL_GEM_ORE)         .aspects(TC.VITREUS, 3, TC.LUCRUM , 1                ).qual(3, 7.0, 128, 2);}
204
+	protected static OreDictMaterial jasper       (int aID, String aNameOreDict                    , long aR, long aG, long aB, byte aColor, Object... aRandomData)  {return valgemelec      (aID, aNameOreDict, SET_GLASS       , aR, aG, aB,150, aRandomData).lens(aColor).put(ANY.Jasper    , MD.RH              , RANDOM_SMALL_GEM_ORE)         .aspects(TC.VITREUS, 2, TC.LUCRUM , 2, TC.METALLUM, 1).qual(3, 7.0, 256, 2).uumMcfg( 0, SiO2, 2*U, Fe, 1*U);}
205
+	protected static OreDictMaterial tigereye     (int aID, String aNameOreDict                    , long aR, long aG, long aB, byte aColor, Object... aRandomData)  {return valgemelec      (aID, aNameOreDict, SET_GLASS       , aR, aG, aB,200, aRandomData).lens(aColor).put(ANY.TigerEye  , MD.RH              , RANDOM_SMALL_GEM_ORE)         .aspects(TC.VITREUS, 2, TC.LUCRUM , 1, TC.TERRA   , 1).qual(3, 7.0, 256, 2).uumMcfg( 0, SiO2, 1*U);}
206
+	protected static OreDictMaterial aventurine   (int aID, String aNameOreDict                    , long aR, long aG, long aB, byte aColor, Object... aRandomData)  {return valgemelec      (aID, aNameOreDict, SET_GLASS       , aR, aG, aB,200, aRandomData).lens(aColor).put(ANY.Aventurine, MD.RH              , RANDOM_SMALL_GEM_ORE)         .aspects(TC.VITREUS, 2, TC.LUCRUM , 1, TC.POTENTIA, 1).qual(3, 7.0, 256, 2).uumMcfg( 0, SiO2, 1*U);}
207
+	protected static OreDictMaterial fluorite     (int aID, String aNameOreDict                    , long aR, long aG, long aB             , Object... aRandomData)  {return gem             (aID, aNameOreDict, SET_RUBY        , aR, aG, aB,255, aRandomData)             .put(ANY.CaF2      , COMMON_ORE, MD.ReC , RANDOM_SMALL_GEM_ORE)         .aspects(TC.VITREUS, 2, TC.VENENUM, 2                )                     .uumMcfg( 0, Ca, 1*U, F, 2*U).heat(1633).put(DECOMPOSABLE, ACID, MELTING, MOLTEN, MORTAR, INGOTS, BRITTLE, CRYSTALLISABLE);}
208
+	protected static OreDictMaterial blaze        (int aID, String aNameOreDict                    , long aR, long aG, long aB             , Object... aRandomData)  {return create          (aID, aNameOreDict, SET_POWDER      , aR, aG, aB,255, aRandomData)             .put(ANY.Blaze     , COMMON_ORE                               )         .aspects(TC.PRAECANTIO, 2                            ).qual(1, 2.0,  16, 1).handle(ANY.Blaze).put(G_BLAZE, GLOWING, MAGICAL, BRITTLE, MORTAR);}
209
+	protected static OreDictMaterial clay         (int aID, String aNameOreDict         , long aR, long aG, long aB, OreDictMaterial aTrace, Object... aRandomData)  {return oredustelec     (aID, aNameOreDict, SET_ROUGH       , aR, aG, aB,255, aRandomData)             .put(ANY.Clay      , MORTAR, PLATES                           )         .aspects(TC.TERRA, 1                                 ).uumMcfg(18, aTrace, 1*U, Clay, 18*U).heat(2000).setSmelting(MT.Ceramic, U);}
210 210
 	protected static OreDictMaterial mix          (int aID, String aNameOreDict, TextureSet[] aSets, long aR, long aG, long aB, long aA    , Object... aRandomData)  {return dcmp            (aID, aNameOreDict, aSets           , aR, aG, aB, aA, aRandomData).put(CENTRIFUGE);}
211 211
 	protected static OreDictMaterial mixdust      (int aID, String aNameOreDict, TextureSet[] aSets, long aR, long aG, long aB, long aA    , Object... aRandomData)  {return dustcent        (aID, aNameOreDict, aSets           , aR, aG, aB, aA, aRandomData);}
212 212
 	protected static OreDictMaterial oredust      (int aID, String aNameOreDict, TextureSet[] aSets, long aR, long aG, long aB, long aA    , Object... aRandomData)  {return create          (aID, aNameOreDict, aSets           , aR, aG, aB, aA, aRandomData).put(G_DUST_ORES);}
@@ -1194,8 +1194,8 @@ public class MT {
1194 1194
 	Ruby                    = sapphire      ( 8302, "Ruby"                                          , 255, 100, 100, DYE_INDEX_Red        )                                                                                                                         .uumMcfg( 6, Al2O3          , 5*U, Cr               , 1*U)                                                                                                  .aspects(TC.MACHINA    , 1),
1195 1195
 	
1196 1196
 	
1197
-	Spinel                  = valgemelec    ( 8326, "Spinel"                , SET_GEM_VERTICAL      ,   0, 100,   0, 127)                                          .lens(DYE_INDEX_Green)                                                                           .uumMcfg( 0, Al2O3          , 5*U, Mg               , 1*U, O                , 1*U)                                                                          .aspects(TC.VITREUS, 2, TC.LUCRUM                   , 3).qual(3,  7.0,   384,  2),
1198
-	BalasRuby               = valgemelec    ( 8303, "Balas Ruby"            , SET_GEM_VERTICAL      , 255, 100, 100, 127, "FoolsRuby").setLocal("Ruby").steal(Ruby).lens(DYE_INDEX_Red  )                                                                           .uumMcfg( 0, Cr             , 2*U, Mg               , 1*U, O                , 4*U)                                                                          .aspects(TC.VITREUS, 2, TC.LUCRUM, 2, TC.STRONTIO   , 2).qual(3,  7.0,   384,  2),
1197
+	Spinel                  = valgemelec    ( 8326, "Spinel"                , SET_GEM_VERTICAL      ,   0, 100,   0, 127, RANDOM_SMALL_GEM_ORE)                                          .lens(DYE_INDEX_Green)                                                     .uumMcfg( 0, Al2O3          , 5*U, Mg               , 1*U, O                , 1*U)                                                                          .aspects(TC.VITREUS, 2, TC.LUCRUM                   , 3).qual(3,  7.0,   384,  2),
1198
+	BalasRuby               = valgemelec    ( 8303, "Balas Ruby"            , SET_GEM_VERTICAL      , 255, 100, 100, 127, RANDOM_SMALL_GEM_ORE, "FoolsRuby").setLocal("Ruby").steal(Ruby).lens(DYE_INDEX_Red  )                                                     .uumMcfg( 0, Cr             , 2*U, Mg               , 1*U, O                , 4*U)                                                                          .aspects(TC.VITREUS, 2, TC.LUCRUM, 2, TC.STRONTIO   , 2).qual(3,  7.0,   384,  2),
1199 1199
 	
1200 1200
 	
1201 1201
 	Almandine               = garnet        ( 9101, "Almandine"                                     , 255,   0,   0, DYE_INDEX_Red        , "GarnetRed")                                                                                                            .uumMcfg( 0, Al2O3          , 5*U, Fe               , 3*U, SiO2             , 9*U, O                , 3*U)                                                  .aspects(TC.METALLUM   , 1),
@@ -1230,21 +1230,21 @@ public class MT {
1230 1230
 	AventurineRed           = aventurine    ( 8451, "Red Aventurine"                                , 116,  46,  33, DYE_INDEX_Red        ),
1231 1231
 	
1232 1232
 	
1233
-	Topaz                   = valgemelec    ( 8306, "Topaz"                 , SET_GEM_HORIZONTAL    , 255, 128,   0, 127)                        .lens(DYE_INDEX_Orange     )                                                                                       .uumMcfg( 0, Al2O3          , 5*U, SiO2             , 3*U, F                , 2*U, H2O              , 3*U)                                                  .aspects(TC.VITREUS, 4, TC.LUCRUM, 4, TC.POTENTIA   , 2).qual(3,  7.0,   256,  3),
1234
-	BlueTopaz               = valgemelec    ( 8307, "Blue Topaz"            , SET_GEM_HORIZONTAL    , 123, 150, 220, 127)                        .lens(DYE_INDEX_Blue       )                                                                                       .uumMcfg( 0, Al2O3          , 5*U, SiO2             , 3*U, F                , 2*U, H2O              , 3*U)                                                  .aspects(TC.VITREUS, 4, TC.LUCRUM, 4, TC.POTENTIA   , 2).qual(3,  7.0,   256,  3),
1235
-	Tanzanite               = valgemelec    ( 8308, "Tanzanite"             , SET_GEM_HORIZONTAL    ,  64,   0, 200, 127)                        .lens(DYE_INDEX_Purple     )                                                                                       .uumMcfg( 0, Al2O3          ,15*U, SiO2             ,18*U, Ca               , 4*U, H2O              , 3*U, O                , 4*U)                          .aspects(TC.VITREUS, 3, TC.LUCRUM                   , 5).qual(3,  7.0,   256,  2),
1236
-	Amazonite               = valgemelec    ( 8417, "Amazonite"             , SET_LAPIS             ,  71, 241, 170, 255, MD.VOLTZ)              .lens(DYE_INDEX_Green      )                                                                                       .uumMcfg( 0, Al2O3          , 5*U, SiO2             ,18*U, K                , 2*U, O                , 1*U)                                                  .aspects(TC.VITREUS, 3, TC.LUCRUM                   , 5).qual(3,  7.0,   256,  2),
1237
-	Alexandrite             = valgemelec    ( 8388, "Alexandrite"           , SET_OPAL              , 255, 255,   0, 127)                        .lens(DYE_INDEX_Yellow     )                                                                                       .uumMcfg( 0, Al2O3          , 1*U, Be               , 1*U, O                , 1*U)                                                                          .aspects(TC.VITREUS, 4, TC.LUCRUM, 2, TC.AURAM      , 1).qual(3,  7.0,   256,  2),
1238
-	Opal                    = valgemelec    ( 8312, "Opal"                  , SET_OPAL              ,   0,   0, 255, 127)                        .lens(DYE_INDEX_Blue       )                                                                                       .uumMcfg( 0, SiO2           , 1*U)                                                                                                                          .aspects(TC.VITREUS, 4, TC.LUCRUM, 2, TC.AURAM      , 1).qual(3,  7.0,   256,  2),
1239
-	OnyxRed                 = valgemelec    ( 8415, "OnyxRed"               , SET_LAPIS             , 255,  88,  77, 255, MD.VOLTZ)              .lens(DYE_INDEX_Red        )                                                                                       .uumMcfg( 0, SiO2           , 1*U)                                                                                                                          .aspects(TC.VITREUS, 4, TC.LUCRUM                   , 2).qual(3,  7.0,   256,  2).setLocal("Red Onyx"),
1240
-	OnyxBlack               = valgemelec    ( 8416, "OnyxBlack"             , SET_LAPIS             ,  50,  50,  50, 255, MD.VOLTZ, "Onyx")      .lens(DYE_INDEX_Black      )                                                                                       .uumMcfg( 0, SiO2           , 1*U)                                                                                                                          .aspects(TC.VITREUS, 4, TC.LUCRUM                   , 2).qual(3,  7.0,   256,  2).setLocal("Black Onyx"),
1241
-	Olivine                 = valgemelec    ( 8311, "Olivine"               , SET_RUBY              , 150, 255, 150, 127, "Peridot")             .lens(DYE_INDEX_Lime       )                                                                                       .uumMcfg( 0, SiO2           , 2*U, Fe               , 1*U, Mg               , 2*U)                                                                          .aspects(TC.VITREUS, 2, TC.LUCRUM                   , 4).qual(3,  7.0,   256,  2),
1242
-	Amethyst                = valgemelec    ( 8313, "Amethyst"              , SET_RUBY              , 200,  50, 200, 127)                        .lens(DYE_INDEX_Pink       )                                                                                       .uumMcfg( 0, SiO2           , 4*U, Fe               , 1*U)                                                                                                  .aspects(TC.VITREUS, 4, TC.LUCRUM                   , 6).qual(3,  7.0,   256,  3),
1243
-	Dioptase                = valgemelec    ( 8325, "Dioptase"              , SET_EMERALD           ,   0, 180, 180, 127)                        .lens(DYE_INDEX_Cyan       )                                                                                       .uumMcfg( 0, SiO2           , 3*U, Cu               , 1*U, O                , 1*U, H2O              , 3*U)                                                  .aspects(TC.VITREUS, 3, TC.LUCRUM, 3, TC.PERMUTATIO , 2).qual(3,  7.0,   256,  2),
1244
-	Amber                   = valgem        ( 8310, "Amber"                 , SET_RUBY              , 255, 180,   0, 127, MORTAR, CRYSTALLISABLE).lens(DYE_INDEX_Orange     )                                                                                                                                                                                                                                                   .aspects(TC.VITREUS, 1, TC.VINCULUM                 , 2).qual(3,  4.0,   256,  3),
1245
-	AmberDominican          = valgem        ( 8422, "Dominican Amber"       , SET_RUBY              ,  80,  80, 240, 127, MORTAR, CRYSTALLISABLE).lens(DYE_INDEX_Blue       )                                                                                                                                                                                                                                                   .aspects(TC.VITREUS, 1, TC.VINCULUM                 , 2).qual(3,  5.0,   256,  3),
1246
-	Craponite               = valgem        ( 8322, "Craponite"             , SET_FLINT             , 255, 170, 185, 127, MORTAR, CRYSTALLISABLE).lens(DYE_INDEX_Magenta    )                                                                                                                                                                                                                                                   .aspects(TC.VITREUS, 3, TC.LUCRUM, 3, TC.STRONTIO   , 2).qual(3,  7.0,   256,  2),
1247
-	Jade                    = valgem        ( 8321, "Jade"                  , SET_LAPIS             , 100, 255, 125, 255, MD.ERE)                .lens(DYE_INDEX_Green      )                                                                                                                                                                                                                                                   .aspects(TC.VITREUS, 3, TC.LUCRUM                   , 6).qual(3,  8.0,   512,  2),
1233
+	Topaz                   = valgemelec    ( 8306, "Topaz"                 , SET_GEM_HORIZONTAL    , 255, 128,   0, 127, RANDOM_SMALL_GEM_ORE)                        .lens(DYE_INDEX_Orange     )                                                                 .uumMcfg( 0, Al2O3          , 5*U, SiO2             , 3*U, F                , 2*U, H2O              , 3*U)                                                  .aspects(TC.VITREUS, 4, TC.LUCRUM, 4, TC.POTENTIA   , 2).qual(3,  7.0,   256,  3),
1234
+	BlueTopaz               = valgemelec    ( 8307, "Blue Topaz"            , SET_GEM_HORIZONTAL    , 123, 150, 220, 127, RANDOM_SMALL_GEM_ORE)                        .lens(DYE_INDEX_Blue       )                                                                 .uumMcfg( 0, Al2O3          , 5*U, SiO2             , 3*U, F                , 2*U, H2O              , 3*U)                                                  .aspects(TC.VITREUS, 4, TC.LUCRUM, 4, TC.POTENTIA   , 2).qual(3,  7.0,   256,  3),
1235
+	Tanzanite               = valgemelec    ( 8308, "Tanzanite"             , SET_GEM_HORIZONTAL    ,  64,   0, 200, 127, RANDOM_SMALL_GEM_ORE)                        .lens(DYE_INDEX_Purple     )                                                                 .uumMcfg( 0, Al2O3          ,15*U, SiO2             ,18*U, Ca               , 4*U, H2O              , 3*U, O                , 4*U)                          .aspects(TC.VITREUS, 3, TC.LUCRUM                   , 5).qual(3,  7.0,   256,  2),
1236
+	Amazonite               = valgemelec    ( 8417, "Amazonite"             , SET_LAPIS             ,  71, 241, 170, 255, RANDOM_SMALL_GEM_ORE, MD.VOLTZ)              .lens(DYE_INDEX_Green      )                                                                 .uumMcfg( 0, Al2O3          , 5*U, SiO2             ,18*U, K                , 2*U, O                , 1*U)                                                  .aspects(TC.VITREUS, 3, TC.LUCRUM                   , 5).qual(3,  7.0,   256,  2),
1237
+	Alexandrite             = valgemelec    ( 8388, "Alexandrite"           , SET_OPAL              , 255, 255,   0, 127, RANDOM_SMALL_GEM_ORE)                        .lens(DYE_INDEX_Yellow     )                                                                 .uumMcfg( 0, Al2O3          , 1*U, Be               , 1*U, O                , 1*U)                                                                          .aspects(TC.VITREUS, 4, TC.LUCRUM, 2, TC.AURAM      , 1).qual(3,  7.0,   256,  2),
1238
+	Opal                    = valgemelec    ( 8312, "Opal"                  , SET_OPAL              ,   0,   0, 255, 127, RANDOM_SMALL_GEM_ORE)                        .lens(DYE_INDEX_Blue       )                                                                 .uumMcfg( 0, SiO2           , 1*U)                                                                                                                          .aspects(TC.VITREUS, 4, TC.LUCRUM, 2, TC.AURAM      , 1).qual(3,  7.0,   256,  2),
1239
+	OnyxRed                 = valgemelec    ( 8415, "OnyxRed"               , SET_LAPIS             , 255,  88,  77, 255, RANDOM_SMALL_GEM_ORE, MD.VOLTZ)              .lens(DYE_INDEX_Red        )                                                                 .uumMcfg( 0, SiO2           , 1*U)                                                                                                                          .aspects(TC.VITREUS, 4, TC.LUCRUM                   , 2).qual(3,  7.0,   256,  2).setLocal("Red Onyx"),
1240
+	OnyxBlack               = valgemelec    ( 8416, "OnyxBlack"             , SET_LAPIS             ,  50,  50,  50, 255, RANDOM_SMALL_GEM_ORE, MD.VOLTZ, "Onyx")      .lens(DYE_INDEX_Black      )                                                                 .uumMcfg( 0, SiO2           , 1*U)                                                                                                                          .aspects(TC.VITREUS, 4, TC.LUCRUM                   , 2).qual(3,  7.0,   256,  2).setLocal("Black Onyx"),
1241
+	Olivine                 = valgemelec    ( 8311, "Olivine"               , SET_RUBY              , 150, 255, 150, 127, RANDOM_SMALL_GEM_ORE, "Peridot")             .lens(DYE_INDEX_Lime       )                                                                 .uumMcfg( 0, SiO2           , 2*U, Fe               , 1*U, Mg               , 2*U)                                                                          .aspects(TC.VITREUS, 2, TC.LUCRUM                   , 4).qual(3,  7.0,   256,  2),
1242
+	Amethyst                = valgemelec    ( 8313, "Amethyst"              , SET_RUBY              , 200,  50, 200, 127, RANDOM_SMALL_GEM_ORE)                        .lens(DYE_INDEX_Pink       )                                                                 .uumMcfg( 0, SiO2           , 4*U, Fe               , 1*U)                                                                                                  .aspects(TC.VITREUS, 4, TC.LUCRUM                   , 6).qual(3,  7.0,   256,  3),
1243
+	Dioptase                = valgemelec    ( 8325, "Dioptase"              , SET_EMERALD           ,   0, 180, 180, 127, RANDOM_SMALL_GEM_ORE)                        .lens(DYE_INDEX_Cyan       )                                                                 .uumMcfg( 0, SiO2           , 3*U, Cu               , 1*U, O                , 1*U, H2O              , 3*U)                                                  .aspects(TC.VITREUS, 3, TC.LUCRUM, 3, TC.PERMUTATIO , 2).qual(3,  7.0,   256,  2),
1244
+	Amber                   = valgem        ( 8310, "Amber"                 , SET_RUBY              , 255, 180,   0, 127                      , MORTAR, CRYSTALLISABLE).lens(DYE_INDEX_Orange     )                                                                                                                                                                                                                             .aspects(TC.VITREUS, 1, TC.VINCULUM                 , 2).qual(3,  4.0,   256,  3).heat(473),
1245
+	AmberDominican          = valgem        ( 8422, "Dominican Amber"       , SET_RUBY              ,  80,  80, 240, 127, RANDOM_SMALL_GEM_ORE, MORTAR, CRYSTALLISABLE).lens(DYE_INDEX_Blue       )                                                                                                                                                                                                                             .aspects(TC.VITREUS, 1, TC.VINCULUM                 , 2).qual(3,  5.0,   256,  3).heat(473),
1246
+	Craponite               = valgem        ( 8322, "Craponite"             , SET_FLINT             , 255, 170, 185, 127                      , MORTAR, CRYSTALLISABLE).lens(DYE_INDEX_Magenta    )                                                                                                                                                                                                                             .aspects(TC.VITREUS, 3, TC.LUCRUM, 3, TC.STRONTIO   , 2).qual(3,  7.0,   256,  2),
1247
+	Jade                    = valgem        ( 8321, "Jade"                  , SET_LAPIS             , 100, 255, 125, 255, RANDOM_SMALL_GEM_ORE, MD.ERE)                .lens(DYE_INDEX_Green      )                                                                                                                                                                                                                             .aspects(TC.VITREUS, 3, TC.LUCRUM                   , 6).qual(3,  8.0,   512,  2),
1248 1248
 	
1249 1249
 	
1250 1250
 	/*

+ 3
- 1
src/main/java/gregapi/data/TD.java View File

@@ -1,5 +1,5 @@
1 1
 /**
2
- * Copyright (c) 2020 GregTech-6 Team
2
+ * Copyright (c) 2021 GregTech-6 Team
3 3
  *
4 4
  * This file is part of GregTech.
5 5
  *
@@ -444,6 +444,8 @@ public class TD {
444 444
 		public static final TagData HAS_COLOR                               = TagData.createTagData("PROPERTIES.HAS_COLOR", "Has Color");
445 445
 		/** If this Material is typically used by Mods or Vanilla Minecraft, and where the "ore" Prefix is important. */
446 446
 		public static final TagData COMMON_ORE                              = TagData.createTagData("PROPERTIES.COMMON_ORE", "Common Ore");
447
+		/** If this Material is generated among the random small Gem Ores. */
448
+		public static final TagData RANDOM_SMALL_GEM_ORE                    = TagData.createTagData("PROPERTIES.RANDOM_SMALL_GEM_ORE", "Random Small Gem Ore");
447 449
 		/** If this Material is only Unificatable in Recipes (for example Wood, which has many variations depending on from which Tree it comes from) */
448 450
 		public static final TagData AUTO_BLACKLIST                          = TagData.createTagData("PROPERTIES.AUTO_BLACKLIST", "Auto Blacklist");
449 451
 		/** If this Material is not a valid Material Name and therefore doesn't get unificated at all. This mainly gets used for technical Materials. */

+ 19
- 0
src/main/java/gregapi/load/LoaderItemList.java View File

@@ -1138,7 +1138,26 @@ public class LoaderItemList implements Runnable {
1138 1138
 		IL.EtFu_Dragon_Breath                   .set(ST.make(MD.EtFu, "dragon_breath"                       , 1, 0));
1139 1139
 		IL.EtFu_Lingering_Potion                .set(ST.make(MD.EtFu, "lingering_potion"                    , 1, 0));
1140 1140
 		IL.EtFu_Wither_Rose                     .set(ST.make(MD.EtFu, "wither_rose"                         , 1, 0), null, OD.flower, OD.flowerWither);
1141
+		IL.EtFu_Bark_Oak                        .set(ST.make(MD.EtFu, "bark"                                , 1, 0), new OreDictItemData(MT.WOODS.Oak    , U*8, MT.Bark, U), OD.logWood);
1142
+		IL.EtFu_Bark_Spruce                     .set(ST.make(MD.EtFu, "bark"                                , 1, 1), new OreDictItemData(MT.WOODS.Spruce , U*8, MT.Bark, U), OD.logWood);
1143
+		IL.EtFu_Bark_Birch                      .set(ST.make(MD.EtFu, "bark"                                , 1, 2), new OreDictItemData(MT.WOODS.Birch  , U*8, MT.Bark, U), OD.logWood);
1144
+		IL.EtFu_Bark_Jungle                     .set(ST.make(MD.EtFu, "bark"                                , 1, 3), new OreDictItemData(MT.WOODS.Jungle , U*8, MT.Bark, U), OD.logWood);
1145
+		IL.EtFu_Bark_Acacia                     .set(ST.make(MD.EtFu, "bark2"                               , 1, 0), new OreDictItemData(MT.WOODS.Acacia , U*8, MT.Bark, U), OD.logWood);
1146
+		IL.EtFu_Bark_DarkOak                    .set(ST.make(MD.EtFu, "bark2"                               , 1, 1), new OreDictItemData(MT.WOODS.DarkOak, U*8, MT.Bark, U), OD.logWood);
1147
+		IL.EtFu_Beam1_Oak                       .set(ST.make(MD.EtFu, "log_stripped"                        , 1, 0), new OreDictItemData(MT.WOODS.Oak    , U*8), OD.beamWood);
1148
+		IL.EtFu_Beam1_Spruce                    .set(ST.make(MD.EtFu, "log_stripped"                        , 1, 1), new OreDictItemData(MT.WOODS.Spruce , U*8), OD.beamWood);
1149
+		IL.EtFu_Beam1_Birch                     .set(ST.make(MD.EtFu, "log_stripped"                        , 1, 2), new OreDictItemData(MT.WOODS.Birch  , U*8), OD.beamWood);
1150
+		IL.EtFu_Beam1_Jungle                    .set(ST.make(MD.EtFu, "log_stripped"                        , 1, 3), new OreDictItemData(MT.WOODS.Jungle , U*8), OD.beamWood);
1151
+		IL.EtFu_Beam1_Acacia                    .set(ST.make(MD.EtFu, "log2_stripped"                       , 1, 0), new OreDictItemData(MT.WOODS.Acacia , U*8), OD.beamWood);
1152
+		IL.EtFu_Beam1_DarkOak                   .set(ST.make(MD.EtFu, "log2_stripped"                       , 1, 1), new OreDictItemData(MT.WOODS.DarkOak, U*8), OD.beamWood);
1153
+		IL.EtFu_Beam2_Oak                       .set(ST.make(MD.EtFu, "wood_stripped"                       , 1, 0), new OreDictItemData(MT.WOODS.Oak    , U*8), OD.beamWood);
1154
+		IL.EtFu_Beam2_Spruce                    .set(ST.make(MD.EtFu, "wood_stripped"                       , 1, 1), new OreDictItemData(MT.WOODS.Spruce , U*8), OD.beamWood);
1155
+		IL.EtFu_Beam2_Birch                     .set(ST.make(MD.EtFu, "wood_stripped"                       , 1, 2), new OreDictItemData(MT.WOODS.Birch  , U*8), OD.beamWood);
1156
+		IL.EtFu_Beam2_Jungle                    .set(ST.make(MD.EtFu, "wood_stripped"                       , 1, 3), new OreDictItemData(MT.WOODS.Jungle , U*8), OD.beamWood);
1157
+		IL.EtFu_Beam2_Acacia                    .set(ST.make(MD.EtFu, "wood2_stripped"                      , 1, 0), new OreDictItemData(MT.WOODS.Acacia , U*8), OD.beamWood);
1158
+		IL.EtFu_Beam2_DarkOak                   .set(ST.make(MD.EtFu, "wood2_stripped"                      , 1, 1), new OreDictItemData(MT.WOODS.DarkOak, U*8), OD.beamWood);
1141 1159
 		IL.EtFu_Barrel                          .set(ST.make(MD.EtFu, "barrel"                              , 1, 0), new OreDictItemData(ANY.Wood, 7*U), OD.craftingChest);
1160
+		IL.EtFu_Ancient_Debris                  .set(ST.make(MD.EtFu, "ancient_debris"                      , 1, 0));
1142 1161
 		IL.EtFu_Obsidian                        .set(ST.make(MD.EtFu, "crying_obsidian"                     , 1, 0), new OreDictItemData(MT.Obsidian, U*9, MT.Lapis, U), OD.cryingObsidian);
1143 1162
 		IL.EtFu_Quartz_Bricks                   .set(ST.make(MD.EtFu, "quartz_bricks"                       , 1, 0), new OreDictItemData(MT.NetherQuartz   , U*4));
1144 1163
 		IL.EtFu_Magmatic_Netherrack             .set(ST.make(MD.EtFu, "magma"                               , 1, 0), new OreDictItemData(MT.Netherrack, U));

+ 6
- 4
src/main/java/gregapi/worldgen/GT6WorldGenerator.java View File

@@ -110,12 +110,16 @@ public class GT6WorldGenerator {
110 110
 	public static void generate(World aWorld, int aX, int aZ, boolean aGalactiCraft) {
111 111
 		switch(aWorld.provider.dimensionId) {
112 112
 		case -2147483648  : return;
113
-		case DIM_OVERWORLD: generate(new WorldGenContainer(TFC ? GEN_TFC : PFAA ? GEN_PFAA : GENERATE_STONE ? GEN_GT : GEN_OVERWORLD, TFC ? ORE_TFC : PFAA ? ORE_PFAA : GENERATE_STONE ? null : ORE_OVERWORLD, DIM_OVERWORLD , aWorld, aX, aZ)); return;
113
+		case DIM_OVERWORLD: generate(new WorldGenContainer(TFC ? GEN_TFC : PFAA ? GEN_PFAA : GENERATE_STONE ? GEN_GT : GEN_OVERWORLD, TFC ? ORE_TFC : PFAA ? ORE_PFAA : GENERATE_STONE ? null : ORE_OVERWORLD, DIM_OVERWORLD, aWorld, aX, aZ)); return;
114 114
 		case DIM_NETHER   : generate(new WorldGenContainer(GEN_NETHER, ORE_NETHER, DIM_NETHER, aWorld, aX, aZ)); return;
115 115
 		case DIM_END      : generate(new WorldGenContainer(GEN_END   , ORE_END   , DIM_END   , aWorld, aX, aZ)); return;
116 116
 		}
117 117
 		
118
-		if (WD.dimMYST  (aWorld.provider)) {generate(new WorldGenContainer(TFC ? GEN_TFC : PFAA ? GEN_PFAA : GENERATE_STONE ? GEN_GT : GEN_OVERWORLD, TFC ? ORE_TFC : PFAA ? ORE_PFAA : GENERATE_STONE ? null : ORE_OVERWORLD, DIM_OVERWORLD , aWorld, aX, aZ)); return;}
118
+		if (WD.dimENVM  (aWorld.provider)) {generate(new WorldGenContainer(GENERATE_STONE ? GEN_ENVM_GT  : GEN_ENVM , GENERATE_STONE ? null : ORE_ENVM , DIM_ENVM , aWorld, aX, aZ)); return;}
119
+		if (WD.dimAROMA (aWorld.provider)) {generate(new WorldGenContainer(GENERATE_STONE ? GEN_AROMA_GT : GEN_AROMA, GENERATE_STONE ? null : ORE_AROMA, DIM_AROMA, aWorld, aX, aZ)); return;}
120
+		
121
+		if (WD.dimMYST  (aWorld.provider)) {generate(new WorldGenContainer(TFC ? GEN_TFC : PFAA ? GEN_PFAA : GENERATE_STONE ? GEN_GT : GEN_OVERWORLD, TFC ? ORE_TFC : PFAA ? ORE_PFAA : GENERATE_STONE ? null : ORE_OVERWORLD, DIM_OVERWORLD, aWorld, aX, aZ)); return;}
122
+		
119 123
 		if (WD.dimTF    (aWorld.provider)) {generate(new WorldGenContainer(GEN_TWILIGHT    , ORE_TWILIGHT    , DIM_TWILIGHT    , aWorld, aX, aZ)); return;}
120 124
 		if (WD.dimAETHER(aWorld.provider)) {generate(new WorldGenContainer(GEN_AETHER      , ORE_AETHER      , DIM_AETHER      , aWorld, aX, aZ)); return;}
121 125
 		if (WD.dimERE   (aWorld.provider)) {generate(new WorldGenContainer(GEN_EREBUS      , ORE_EREBUS      , DIM_EREBUS      , aWorld, aX, aZ)); return;}
@@ -123,8 +127,6 @@ public class GT6WorldGenerator {
123 127
 		if (WD.dimATUM  (aWorld.provider)) {generate(new WorldGenContainer(GEN_ATUM        , ORE_ATUM        , DIM_ATUM        , aWorld, aX, aZ)); return;}
124 128
 		if (WD.dimALF   (aWorld.provider)) {generate(new WorldGenContainer(GEN_ALFHEIM     , ORE_ALFHEIM     , DIM_ALFHEIM     , aWorld, aX, aZ)); return;}
125 129
 		if (WD.dimDD    (aWorld.provider)) {generate(new WorldGenContainer(GEN_DEEPDARK    , ORE_DEEPDARK    , DIM_DEEPDARK    , aWorld, aX, aZ)); return;}
126
-		if (WD.dimENVM  (aWorld.provider)) {generate(new WorldGenContainer(GEN_ENVM        , ORE_ENVM        , DIM_ENVM        , aWorld, aX, aZ)); return;}
127
-		if (WD.dimAROMA (aWorld.provider)) {generate(new WorldGenContainer(GEN_AROMA       , ORE_AROMA       , DIM_AROMA       , aWorld, aX, aZ)); return;}
128 130
 		if (WD.dimTROPIC(aWorld.provider)) {generate(new WorldGenContainer(GEN_TROPICS     , ORE_TROPICS     , DIM_TROPICS     , aWorld, aX, aZ)); return;}
129 131
 		if (WD.dimCANDY (aWorld.provider)) {generate(new WorldGenContainer(GEN_CANDY       , ORE_CANDY       , DIM_CANDY       , aWorld, aX, aZ)); return;}
130 132
 		

+ 3
- 1
src/main/java/gregapi/worldgen/StoneLayer.java View File

@@ -81,9 +81,11 @@ public class StoneLayer {
81 81
 	/** List of Stone and Ore Blocks, that can simply be replaced by the Stone Layers. */
82 82
 	public static final Set<Block> REPLACEABLE_BLOCKS = new HashSetNoNulls<>(F, Blocks.stone, Blocks.coal_ore, Blocks.iron_ore, Blocks.gold_ore, Blocks.diamond_ore, Blocks.emerald_ore, Blocks.lapis_ore, Blocks.redstone_ore, Blocks.lit_redstone_ore);
83 83
 	/** List of generateable Stone Layers, via ItemStack of the Stone Block, so that MetaData is usable. */
84
-	public static final List<StoneLayer> LAYERS = new ArrayList<>();
84
+	public static final List<StoneLayer> LAYERS = new ArrayListNoNulls<>();
85 85
 	/** Whenever two Rock Types hit each other in WorldGen an Ore from the returned List will spawn. The first ones mentioned inside the List can override the chances for others by spawning before, so insert the lowest chances first and then the high chances. */
86 86
 	public static final Map<OreDictMaterial, Map<OreDictMaterial, List<StoneLayerOres>>> MAP = new HashMap<>();
87
+	/** List of random Small Ore Materials that can generate between Layers. */
88
+	public static final List<OreDictMaterial> RANDOM_SMALL_GEM_ORES = new ArrayListNoNulls<>();
87 89
 	
88 90
 	public static boolean bothsides(OreDictMaterial aMaterialA, OreDictMaterial aMaterialB, StoneLayerOres... aOreChances) {
89 91
 		return topbottom(aMaterialA, aMaterialB, aOreChances) && topbottom(aMaterialB, aMaterialA, aOreChances);

+ 3
- 3
src/main/java/gregapi/worldgen/StoneLayerOres.java View File

@@ -64,12 +64,12 @@ public class StoneLayerOres {
64 64
 		return aY == mMinY || aY == mMaxY || RNGSUS .nextBoolean() ? small(aLayer, aWorld, aX, aY, aZ, aBiome) : normal(aLayer, aWorld, aX, aY, aZ, aBiome);
65 65
 	}
66 66
 	public boolean normal(StoneLayer aLayer, World aWorld, int aX, int aY, int aZ, BiomeGenBase aBiome) {
67
-		return aLayer.mOre       != null && aLayer.mOre      .placeBlock(aWorld, aX, aY, aZ, (byte)6, mMaterial.mID, null, F, T);
67
+		return aLayer.mOre       != null && aLayer.mOre      .placeBlock(aWorld, aX, aY, aZ, SIDE_UNKNOWN, mMaterial.mID, null, F, T);
68 68
 	}
69 69
 	public boolean small(StoneLayer aLayer, World aWorld, int aX, int aY, int aZ, BiomeGenBase aBiome) {
70
-		return aLayer.mOreSmall  != null && aLayer.mOreSmall .placeBlock(aWorld, aX, aY, aZ, (byte)6, mMaterial.mID, null, F, T);
70
+		return aLayer.mOreSmall  != null && aLayer.mOreSmall .placeBlock(aWorld, aX, aY, aZ, SIDE_UNKNOWN, mMaterial.mID, null, F, T);
71 71
 	}
72 72
 	public boolean broken(StoneLayer aLayer, World aWorld, int aX, int aY, int aZ, BiomeGenBase aBiome) {
73
-		return aLayer.mOreBroken != null && aLayer.mOreBroken.placeBlock(aWorld, aX, aY, aZ, (byte)6, mMaterial.mID, null, F, T);
73
+		return aLayer.mOreBroken != null && aLayer.mOreBroken.placeBlock(aWorld, aX, aY, aZ, SIDE_UNKNOWN, mMaterial.mID, null, F, T);
74 74
 	}
75 75
 }

+ 107
- 142
src/main/java/gregtech/loaders/b/Loader_Worldgen.java View File

@@ -31,6 +31,8 @@ import gregapi.data.FL;
31 31
 import gregapi.data.IL;
32 32
 import gregapi.data.MD;
33 33
 import gregapi.data.MT;
34
+import gregapi.data.TD;
35
+import gregapi.oredict.OreDictMaterial;
34 36
 import gregapi.util.ST;
35 37
 import gregapi.worldgen.StoneLayer;
36 38
 import gregapi.worldgen.StoneLayerOres;
@@ -71,7 +73,7 @@ public class Loader_Worldgen implements Runnable {
71 73
 		tInfiniteOil = ConfigsGT.WORLDGEN.get(ConfigCategories.general, "GenerateInfiniteOilSources", T),
72 74
 		tInfiniteGas = ConfigsGT.WORLDGEN.get(ConfigCategories.general, "GenerateInfiniteGasSources", T);
73 75
 		
74
-		new WorldgenStoneLayers("stonelayers", T, GEN_GT, GEN_ENVM, GEN_AROMA); // MUST BE FIRST
76
+		new WorldgenStoneLayers("stonelayers", T, GEN_GT, GEN_ENVM_GT, GEN_AROMA_GT); // MUST BE FIRST
75 77
 		
76 78
 		
77 79
 		
@@ -452,6 +454,15 @@ public class Loader_Worldgen implements Runnable {
452 454
 		}
453 455
 		
454 456
 		
457
+		StoneLayer.bothsides(MT.Coal, MT.Stone
458
+		, new StoneLayerOres(MT.Amber                   , U4 , 30, 70, BIOMES_OCEAN_BEACH)
459
+		);
460
+		StoneLayer.bothsides(MT.Lignite, MT.Stone
461
+		, new StoneLayerOres(MT.Amber                   , U4 , 30, 70, BIOMES_OCEAN_BEACH)
462
+		);
463
+		StoneLayer.bothsides(MT.Oilshale, MT.Stone
464
+		, new StoneLayerOres(MT.Amber                   , U4 , 30, 70, BIOMES_OCEAN_BEACH)
465
+		);
455 466
 		StoneLayer.bothsides(MT.Komatiite, MT.Stone
456 467
 		, new StoneLayerOres(MT.Redstone                , U8 ,  0, 30)
457 468
 		);
@@ -541,7 +552,7 @@ public class Loader_Worldgen implements Runnable {
541 552
 		);
542 553
 		StoneLayer.topbottom(MT.GraniteBlack, MT.Basalt
543 554
 		, new StoneLayerOres(MT.Diamond                 , U64,  0, 32)
544
-		, new StoneLayerOres(MT.DiamondPink             , U48,  0, 32, BIOMES_JUNGLE)
555
+		, new StoneLayerOres(MT.DiamondPink             , U32,  0, 32, BIOMES_JUNGLE)
545 556
 		, new StoneLayerOres(MT.Graphite                , U8 ,  0, 32)
546 557
 		);
547 558
 		StoneLayer.bothsides(MT.GraniteBlack, MT.Granite
@@ -565,26 +576,26 @@ public class Loader_Worldgen implements Runnable {
565 576
 		int tChance = 320;
566 577
 		if (MD.PFAA.mLoaded) {
567 578
 		tChance = 512;
568
-		new WorldgenPit             ("pit.clay.pfaa.lateric"   , T, ST.block(MD.PFAA, "weakClay"   ), 0, 1, tChance, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_TFC, GEN_TWILIGHT, GEN_TROPICS, GEN_ALFHEIM);
569
-		new WorldgenPit             ("pit.clay.pfaa.bentonite" , T, ST.block(MD.PFAA, "weakOreClay"), 1, 1, tChance, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_TFC, GEN_TWILIGHT, GEN_TROPICS, GEN_ALFHEIM);
570
-		new WorldgenPit             ("pit.clay.pfaa.fullers"   , T, ST.block(MD.PFAA, "weakOreClay"), 2, 1, tChance, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_TFC, GEN_TWILIGHT, GEN_TROPICS, GEN_ALFHEIM);
571
-		new WorldgenPit             ("pit.clay.pfaa.kaolinite" , T, ST.block(MD.PFAA, "weakOreClay"), 3, 1, tChance, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_TFC, GEN_TWILIGHT, GEN_TROPICS, GEN_ALFHEIM);
579
+		new WorldgenPit             ("pit.clay.pfaa.lateric"   , T, ST.block(MD.PFAA, "weakClay"   ), 0, 1, tChance, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_TFC, GEN_TWILIGHT, GEN_TROPICS, GEN_ALFHEIM);
580
+		new WorldgenPit             ("pit.clay.pfaa.bentonite" , T, ST.block(MD.PFAA, "weakOreClay"), 1, 1, tChance, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_TFC, GEN_TWILIGHT, GEN_TROPICS, GEN_ALFHEIM);
581
+		new WorldgenPit             ("pit.clay.pfaa.fullers"   , T, ST.block(MD.PFAA, "weakOreClay"), 2, 1, tChance, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_TFC, GEN_TWILIGHT, GEN_TROPICS, GEN_ALFHEIM);
582
+		new WorldgenPit             ("pit.clay.pfaa.kaolinite" , T, ST.block(MD.PFAA, "weakOreClay"), 3, 1, tChance, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_TFC, GEN_TWILIGHT, GEN_TROPICS, GEN_ALFHEIM);
572 583
 		}
573
-		new WorldgenPit             ("pit.clay.vanilla"        , T, Blocks.clay                     , 0, 1, tChance, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_TFC, GEN_TWILIGHT, GEN_TROPICS, GEN_ALFHEIM);
574
-		new WorldgenPit             ("pit.clay.brown"          , T, BlocksGT.Diggables              , 1, 1, tChance, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_TFC, GEN_TWILIGHT, GEN_TROPICS, GEN_ALFHEIM);
575
-		new WorldgenPit             ("pit.clay.red"            , F, BlocksGT.Diggables              , 3, 1, tChance, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_TFC, GEN_TWILIGHT, GEN_TROPICS, GEN_ALFHEIM); // Disabled by default because it's supposed to be only in the Nether
576
-		new WorldgenPit             ("pit.clay.yellow"         , T, BlocksGT.Diggables              , 4, 1, tChance, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_TFC, GEN_TWILIGHT, GEN_TROPICS, GEN_ALFHEIM);
577
-		new WorldgenPit             ("pit.clay.blue"           , T, BlocksGT.Diggables              , 5, 1, tChance, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_TFC, GEN_TWILIGHT, GEN_TROPICS, GEN_ALFHEIM);
578
-		new WorldgenPit             ("pit.clay.white"          , T, BlocksGT.Diggables              , 6, 1, tChance, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_TFC, GEN_TWILIGHT, GEN_TROPICS, GEN_ALFHEIM);
584
+		new WorldgenPit             ("pit.clay.vanilla"        , T, Blocks.clay                     , 0, 1, tChance, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_TFC, GEN_TWILIGHT, GEN_TROPICS, GEN_ALFHEIM);
585
+		new WorldgenPit             ("pit.clay.brown"          , T, BlocksGT.Diggables              , 1, 1, tChance, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_TFC, GEN_TWILIGHT, GEN_TROPICS, GEN_ALFHEIM);
586
+		new WorldgenPit             ("pit.clay.red"            , F, BlocksGT.Diggables              , 3, 1, tChance, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_TFC, GEN_TWILIGHT, GEN_TROPICS, GEN_ALFHEIM); // Disabled by default because it's supposed to be only in the Nether
587
+		new WorldgenPit             ("pit.clay.yellow"         , T, BlocksGT.Diggables              , 4, 1, tChance, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_TFC, GEN_TWILIGHT, GEN_TROPICS, GEN_ALFHEIM);
588
+		new WorldgenPit             ("pit.clay.blue"           , T, BlocksGT.Diggables              , 5, 1, tChance, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_TFC, GEN_TWILIGHT, GEN_TROPICS, GEN_ALFHEIM);
589
+		new WorldgenPit             ("pit.clay.white"          , T, BlocksGT.Diggables              , 6, 1, tChance, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_TFC, GEN_TWILIGHT, GEN_TROPICS, GEN_ALFHEIM);
579 590
 		
580 591
 		new WorldgenNetherClay      ("nether.clay.red"         , T, GEN_NETHER);
581 592
 		new WorldgenNetherQuartz    ("nether.netherquartz"     , T, GEN_NETHER);
582 593
 		new WorldgenNetherCrystals  ("nether.nethercrystals"   , T, GEN_NETHER);
583 594
 		
584
-		new WorldgenLogDry          ("log.dry"                 , T, 1, 8, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_TFC, GEN_EREBUS, GEN_TWILIGHT, GEN_TROPICS, GEN_ALFHEIM);
585
-		new WorldgenLogRotten       ("log.rotten"              , T, 1, 3, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_TFC, GEN_EREBUS, GEN_TWILIGHT, GEN_TROPICS);
586
-		new WorldgenLogMossy        ("log.mossy"               , T, 1, 8, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_TFC, GEN_EREBUS, GEN_TWILIGHT, GEN_TROPICS, GEN_ALFHEIM);
587
-		new WorldgenLogFrozen       ("log.frozen"              , T, 1, 8, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_TFC, GEN_EREBUS, GEN_TWILIGHT);
595
+		new WorldgenLogDry          ("log.dry"                 , T, 1, 8, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_TFC, GEN_EREBUS, GEN_TWILIGHT, GEN_TROPICS, GEN_ALFHEIM);
596
+		new WorldgenLogRotten       ("log.rotten"              , T, 1, 3, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_TFC, GEN_EREBUS, GEN_TWILIGHT, GEN_TROPICS);
597
+		new WorldgenLogMossy        ("log.mossy"               , T, 1, 8, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_TFC, GEN_EREBUS, GEN_TWILIGHT, GEN_TROPICS, GEN_ALFHEIM);
598
+		new WorldgenLogFrozen       ("log.frozen"              , T, 1, 8, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_TFC, GEN_EREBUS, GEN_TWILIGHT);
588 599
 		
589 600
 		new WorldgenTreeRubber      ("tree.rubber"             , T, 1, 5, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_TFC, GEN_TWILIGHT);
590 601
 		new WorldgenTreeMaple       ("tree.maple"              , T, 1, 5, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_TFC, GEN_EREBUS, GEN_TWILIGHT);
@@ -595,7 +606,7 @@ public class Loader_Worldgen implements Runnable {
595 606
 		new WorldgenTreeCoconut     ("tree.coconut"            , T, 1, 1, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_TFC, GEN_ATUM, GEN_TROPICS);
596 607
 		new WorldgenTreeRainbowood  ("tree.rainbowood"         , T, 1, 4, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_TFC, GEN_EREBUS, GEN_TWILIGHT, GEN_ALFHEIM, GEN_AETHER);
597 608
 		
598
-		new WorldgenRocks           (   "overworld.rocks"      , T, 2, 3, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_TFC);
609
+		new WorldgenRocks           (   "overworld.rocks"      , T, 2, 3, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_TFC);
599 610
 		new WorldgenRacks           (      "nether.rocks"      , T      , GEN_NETHER);
600 611
 		new WorldgenErebusRocks     (      "erebus.rocks"      , T      , GEN_EREBUS);
601 612
 		new WorldgenRocks           (    "twilight.rocks"      , T, 4, 3, GEN_TWILIGHT);
@@ -607,12 +618,12 @@ public class Loader_Worldgen implements Runnable {
607 618
 		new WorldgenMarsRocks       (        "mars.rocks"      , T      , GEN_MARS);
608 619
 		new WorldgenPlanetRocks     (      "planet.rocks"      , T      , GEN_PLANETS);
609 620
 		
610
-		new WorldgenSticks          ("sticks"                  , T, 2, 2, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_TWILIGHT, GEN_TROPICS, GEN_EREBUS, GEN_ALFHEIM, GEN_BETWEENLANDS, GEN_AETHER, GEN_ENVM);
621
+		new WorldgenSticks          ("sticks"                  , T, 2, 2, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_TWILIGHT, GEN_TROPICS, GEN_EREBUS, GEN_ALFHEIM, GEN_BETWEENLANDS, GEN_AETHER, GEN_ENVM, GEN_ENVM_GT);
611 622
 		
612
-		new WorldgenGlowtus         ("plant.glowtus"           , T,16, 2, GEN_OVERWORLD, GEN_GT, GEN_PFAA           , GEN_TFC, GEN_EREBUS, GEN_TWILIGHT, GEN_TROPICS);
613
-		new WorldgenBushes          ("plant.bush"              , T, 1, 4, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_TFC, GEN_EREBUS, GEN_TWILIGHT, GEN_TROPICS, GEN_ALFHEIM);
623
+		new WorldgenGlowtus         ("plant.glowtus"           , T,16, 2, GEN_OVERWORLD, GEN_GT, GEN_PFAA                         , GEN_TFC, GEN_EREBUS, GEN_TWILIGHT, GEN_TROPICS);
624
+		new WorldgenBushes          ("plant.bush"              , T, 1, 4, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_TFC, GEN_EREBUS, GEN_TWILIGHT, GEN_TROPICS, GEN_ALFHEIM);
614 625
 		
615
-		new WorldgenHives           (   "overworld.bumblehives", T, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_TFC, GEN_ENVM);
626
+		new WorldgenHives           (   "overworld.bumblehives", T, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_TFC, GEN_ENVM, GEN_ENVM_GT);
616 627
 		new WorldgenHives           (      "nether.bumblehives", T, GEN_NETHER);
617 628
 		new WorldgenHives           (         "end.bumblehives", T, GEN_END);
618 629
 		new WorldgenHives           (      "erebus.bumblehives", T, GEN_EREBUS);
@@ -631,13 +642,13 @@ public class Loader_Worldgen implements Runnable {
631 642
 		
632 643
 		new WorldgenDungeonGT("overworld.structure.dungeon.large", T, 100, 3, 7, 20, 20, 6, T, F, F, T, T, T, T, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_TFC);
633 644
 		
634
-		new WorldgenFluidSpring("overworld.fluid.oil.extraheavy", T, BlocksGT.OilExtraHeavy,  7,  1, 50,200, 0, 16, null, F, tInfiniteOil ? FL.Oil_ExtraHeavy.make( 6000) : NF, 10, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_TFC);
635
-		new WorldgenFluidSpring("overworld.fluid.oil.heavy"     , T, BlocksGT.OilHeavy     ,  7,  1, 60,150, 0, 16, null, F, tInfiniteOil ? FL.Oil_Heavy     .make( 6000) : NF, 10, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_TFC);
636
-		new WorldgenFluidSpring("overworld.fluid.oil.medium"    , T, BlocksGT.OilMedium    ,  7,  1, 70,100, 0, 16, null, F, tInfiniteOil ? FL.Oil_Medium    .make( 6000) : NF, 10, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_TFC);
637
-		new WorldgenFluidSpring("overworld.fluid.oil.light"     , T, BlocksGT.OilLight     ,  7,  1, 80, 50, 0, 16, null, F, tInfiniteOil ? FL.Oil_Light     .make( 6000) : NF, 10, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_TFC);
638
-		new WorldgenFluidSpring("overworld.fluid.gas.natural"   , T, BlocksGT.GasNatural   ,  7,  1, 80, 25, 0, 16, null, F, tInfiniteGas ? FL.Gas_Natural   .make( 3000) : NF, 10, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_TFC);
639
-		new WorldgenFluidSpring("overworld.fluid.water"         , T, Blocks.water          ,  0,  1, 50, 50, 0, 16, null, F,                FL.Water         .make(    1)     , 10, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_TFC);
640
-		new WorldgenFluidSpring("overworld.fluid.lava"          , T, Blocks.lava           ,  0,  1, 50, 50, 0, 16, null, F,                FL.Lava          .make( 1000)     , 10, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA);
645
+		new WorldgenFluidSpring("overworld.fluid.oil.extraheavy", T, BlocksGT.OilExtraHeavy,  7,  1, 50,200, 0, 16, null, F, tInfiniteOil ? FL.Oil_ExtraHeavy.make( 6000) : NF, 10, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_TFC);
646
+		new WorldgenFluidSpring("overworld.fluid.oil.heavy"     , T, BlocksGT.OilHeavy     ,  7,  1, 60,150, 0, 16, null, F, tInfiniteOil ? FL.Oil_Heavy     .make( 6000) : NF, 10, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_TFC);
647
+		new WorldgenFluidSpring("overworld.fluid.oil.medium"    , T, BlocksGT.OilMedium    ,  7,  1, 70,100, 0, 16, null, F, tInfiniteOil ? FL.Oil_Medium    .make( 6000) : NF, 10, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_TFC);
648
+		new WorldgenFluidSpring("overworld.fluid.oil.light"     , T, BlocksGT.OilLight     ,  7,  1, 80, 50, 0, 16, null, F, tInfiniteOil ? FL.Oil_Light     .make( 6000) : NF, 10, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_TFC);
649
+		new WorldgenFluidSpring("overworld.fluid.gas.natural"   , T, BlocksGT.GasNatural   ,  7,  1, 80, 25, 0, 16, null, F, tInfiniteGas ? FL.Gas_Natural   .make( 3000) : NF, 10, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_TFC);
650
+		new WorldgenFluidSpring("overworld.fluid.water"         , T, Blocks.water          ,  0,  1, 50, 50, 0, 16, null, F,                FL.Water         .make(    1)     , 10, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_TFC);
651
+		new WorldgenFluidSpring("overworld.fluid.lava"          , T, Blocks.lava           ,  0,  1, 50, 50, 0, 16, null, F,                FL.Lava          .make( 1000)     , 10, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT);
641 652
 		new WorldgenFluidSpring("nether.fluid.lava"             , T, Blocks.lava           ,  0,  1, 90, 25, 0, 16, null, F,                FL.Lava          .make(    1)     , 10, GEN_NETHER);
642 653
 		
643 654
 		for (BlockBase tStone : BlocksGT.stones) if (tStone != BlocksGT.PrismarineDark && tStone != BlocksGT.PrismarineLight) {
@@ -695,7 +706,7 @@ public class Loader_Worldgen implements Runnable {
695 706
 		new WorldgenOresVanilla("twilight.ore.ars_chimerite"    , T, tBlock,  1,  2, 16,   1,  8, 32, Blocks.stone          , 0, BIOMES_MAGICAL     , F, GEN_TWILIGHT);
696 707
 		new WorldgenOresVanilla("twilight.ore.ars_bluetopaz"    , T, tBlock,  2,  1,  8,   1,  8, 16, Blocks.stone          , 0, BIOMES_DARK_FOREST , F, GEN_TWILIGHT);
697 708
 		}
698
-		tBlock = IL.NePl_Ancient_Debris.block();
709
+		tBlock = (IL.EtFu_Ancient_Debris.exists() ? IL.EtFu_Ancient_Debris.block() : IL.NePl_Ancient_Debris.block());
699 710
 		if (tBlock != null && tBlock != NB) {
700 711
 		new WorldgenOresVanilla("twilight.ore.netherite"        , T, tBlock,  0,  8,  8,   1,  8, 80, IL.TF_Deadrock.block(), 2, BIOMES_MOUNTAINS   , F, GEN_TWILIGHT);
701 712
 		}
@@ -761,41 +772,41 @@ public class Loader_Worldgen implements Runnable {
761 772
 		new WorldgenOresBedrock("ore.bedrock.custom" + (i<10?"0":"") + i, F, T, 100000, MT.NULL, BlocksGT.FlowersA, 7, GEN_FLOOR);
762 773
 		}
763 774
 		
764
-		new WorldgenOresSmall("ore.small.chalcopyrite"     , T,  60, 120,  16, MT.OREMATS.Chalcopyrite, GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM                                     , GEN_END, GEN_MARS);
765
-		new WorldgenOresSmall("ore.small.cassiterite"      , T,  60, 120,  16, MT.OREMATS.Cassiterite , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER, GEN_NETHER, GEN_END, GEN_MARS);
766
-		new WorldgenOresSmall("ore.small.copper"           , T,  60, 120,  16, MT.Cu                  , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER            , GEN_END, GEN_MARS, GEN_ASTEROIDS, GEN_MOON, GEN_PLANETS);
767
-		new WorldgenOresSmall("ore.small.tin"              , T,  60, 120,  16, MT.Sn                  , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER            , GEN_END, GEN_MARS, GEN_ASTEROIDS, GEN_MOON, GEN_PLANETS);
768
-		new WorldgenOresSmall("ore.small.bismuth"          , T,  80, 120,   8, MT.Bi                  , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER, GEN_NETHER         , GEN_MARS, GEN_ASTEROIDS, GEN_MOON, GEN_PLANETS);
769
-		new WorldgenOresSmall("ore.small.coal"             , T,  60, 100,  24, MT.Coal                , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM);
770
-		new WorldgenOresSmall("ore.small.hematite"         , T,  40,  80,  24, MT.Fe2O3               , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER            , GEN_END, GEN_MARS);
771
-		new WorldgenOresSmall("ore.small.salt"             , T,  40,  80,   6, MT.NaCl                , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER, GEN_NETHER, GEN_END, GEN_MARS);
772
-		new WorldgenOresSmall("ore.small.rocksalt"         , T,  40,  80,   6, MT.KCl                 , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER, GEN_NETHER, GEN_END, GEN_MARS);
773
-		new WorldgenOresSmall("ore.small.borax"            , T,  10,  40,   4, MT.OREMATS.Borax       , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER, GEN_NETHER, GEN_END, GEN_MARS);
774
-		new WorldgenOresSmall("ore.small.sphalerite"       , T,  30,  60,  12, MT.OREMATS.Sphalerite  , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM                                     , GEN_END, GEN_MARS);
775
-		new WorldgenOresSmall("ore.small.zinc"             , T,  40,  70,   4, MT.Zn                  , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER            , GEN_END, GEN_MARS, GEN_ASTEROIDS, GEN_MOON, GEN_PLANETS);
776
-		new WorldgenOresSmall("ore.small.smithsonite"      , T,  30,  60,   2, MT.OREMATS.Smithsonite , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER            , GEN_END, GEN_MARS);
777
-		new WorldgenOresSmall("ore.small.galena"           , T,  40,  80,  16, MT.OREMATS.Galena      , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM                                     , GEN_END, GEN_MARS);
778
-		new WorldgenOresSmall("ore.small.lead"             , T,  40,  80,  16, MT.Pb                  , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER            , GEN_END, GEN_MARS, GEN_ASTEROIDS, GEN_MOON, GEN_PLANETS);
779
-		new WorldgenOresSmall("ore.small.gold"             , T,  20,  40,   4, MT.Au                  , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER, GEN_NETHER, GEN_END, GEN_MARS, GEN_ASTEROIDS, GEN_MOON, GEN_PLANETS);
780
-		new WorldgenOresSmall("ore.small.pyrite"           , T,  20,  40,   4, MT.Pyrite              , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM                                     , GEN_END, GEN_MARS, GEN_ASTEROIDS, GEN_MOON, GEN_PLANETS);
781
-		new WorldgenOresSmall("ore.small.silver"           , T,  20,  40,   4, MT.Ag                  , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER            , GEN_END, GEN_MARS, GEN_ASTEROIDS, GEN_MOON, GEN_PLANETS);
782
-		new WorldgenOresSmall("ore.small.pyrolusite"       , T,  20,  40,   4, MT.MnO2                , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER            , GEN_END, GEN_MARS               , GEN_MOON, GEN_PLANETS);
783
-		new WorldgenOresSmall("ore.small.garnierite"       , T,  20,  40,   4, MT.OREMATS.Garnierite  , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER            , GEN_END, GEN_MARS);
784
-		new WorldgenOresSmall("ore.small.pentlandite"      , T,  20,  40,   4, MT.OREMATS.Pentlandite , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM                                     , GEN_END, GEN_MARS);
785
-		new WorldgenOresSmall("ore.small.stibnite"         , T,  20,  40,   2, MT.OREMATS.Stibnite    , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM                                     , GEN_END, GEN_MARS);
786
-		new WorldgenOresSmall("ore.small.asbestos"         , T,  20,  40,   8, MT.Asbestos            , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM                         , GEN_NETHER);
787
-		new WorldgenOresSmall("ore.small.eudialyte"        , T,  20,  40,   4, MT.Eudialyte           , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM);
788
-		new WorldgenOresSmall("ore.small.azurite"          , T,  20,  40,   4, MT.Azurite             , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM);
789
-		new WorldgenOresSmall("ore.small.tantalite"        , T,   1, 250,   1, MT.OREMATS.Tantalite   , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM            , GEN_NETHER);
790
-		new WorldgenOresSmall("ore.small.zeolite"          , T,   1, 250,   1, MT.OREMATS.Zeolite     , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM            , GEN_NETHER);
791
-		new WorldgenOresSmall("ore.small.pollucite"        , T,   1, 250,   1, MT.OREMATS.Pollucite   , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM            , GEN_NETHER);
792
-		new WorldgenOresSmall("ore.small.lapis"            , T,  20,  40,   8, MT.Lapis               , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER);
793
-		new WorldgenOresSmall("ore.small.redstone"         , T,   5,  20,  16, MT.Redstone            , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER, GEN_NETHER         , GEN_MARS                         , GEN_PLANETS);
794
-		new WorldgenOresSmall("ore.small.graphite"         , T,   5,  10,   2, MT.Graphite            , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER, GEN_NETHER         , GEN_MARS, GEN_ASTEROIDS          , GEN_PLANETS);
795
-		new WorldgenOresSmall("ore.small.scheelite"        , T,   5,  50,   1, MT.OREMATS.Scheelite   , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER, GEN_NETHER, GEN_END, GEN_MARS, GEN_ASTEROIDS, GEN_MOON, GEN_PLANETS);
796
-		new WorldgenOresSmall("ore.small.amber"            , T,   5, 250,   2, MT.Amber               , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM             , GEN_AETHER);
797
-		new WorldgenOresSmall("ore.small.craponite"        , T,   5, 250,   2, MT.Craponite           , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER, GEN_NETHER, GEN_END, GEN_MARS, GEN_ASTEROIDS, GEN_MOON, GEN_PLANETS);
798
-		new WorldgenOresSmall("ore.small.diamond"          , T,   5,  10,   2, MT.Diamond             , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM             , GEN_AETHER, GEN_NETHER         , GEN_MARS, GEN_ASTEROIDS, GEN_MOON, GEN_PLANETS);
775
+		new WorldgenOresSmall("ore.small.chalcopyrite"     , T,  60, 120,  16, MT.OREMATS.Chalcopyrite, GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM                                     , GEN_END, GEN_MARS);
776
+		new WorldgenOresSmall("ore.small.cassiterite"      , T,  60, 120,  16, MT.OREMATS.Cassiterite , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER, GEN_NETHER, GEN_END, GEN_MARS);
777
+		new WorldgenOresSmall("ore.small.copper"           , T,  60, 120,  16, MT.Cu                  , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER            , GEN_END, GEN_MARS, GEN_ASTEROIDS, GEN_MOON, GEN_PLANETS);
778
+		new WorldgenOresSmall("ore.small.tin"              , T,  60, 120,  16, MT.Sn                  , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER            , GEN_END, GEN_MARS, GEN_ASTEROIDS, GEN_MOON, GEN_PLANETS);
779
+		new WorldgenOresSmall("ore.small.bismuth"          , T,  80, 120,   8, MT.Bi                  , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER, GEN_NETHER         , GEN_MARS, GEN_ASTEROIDS, GEN_MOON, GEN_PLANETS);
780
+		new WorldgenOresSmall("ore.small.coal"             , T,  60, 100,  24, MT.Coal                , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM);
781
+		new WorldgenOresSmall("ore.small.hematite"         , T,  40,  80,  24, MT.Fe2O3               , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER            , GEN_END, GEN_MARS);
782
+		new WorldgenOresSmall("ore.small.salt"             , T,  40,  80,   6, MT.NaCl                , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER, GEN_NETHER, GEN_END, GEN_MARS);
783
+		new WorldgenOresSmall("ore.small.rocksalt"         , T,  40,  80,   6, MT.KCl                 , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER, GEN_NETHER, GEN_END, GEN_MARS);
784
+		new WorldgenOresSmall("ore.small.borax"            , T,  10,  40,   4, MT.OREMATS.Borax       , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER, GEN_NETHER, GEN_END, GEN_MARS);
785
+		new WorldgenOresSmall("ore.small.sphalerite"       , T,  30,  60,  12, MT.OREMATS.Sphalerite  , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM                                     , GEN_END, GEN_MARS);
786
+		new WorldgenOresSmall("ore.small.zinc"             , T,  40,  70,   4, MT.Zn                  , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER            , GEN_END, GEN_MARS, GEN_ASTEROIDS, GEN_MOON, GEN_PLANETS);
787
+		new WorldgenOresSmall("ore.small.smithsonite"      , T,  30,  60,   2, MT.OREMATS.Smithsonite , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER            , GEN_END, GEN_MARS);
788
+		new WorldgenOresSmall("ore.small.galena"           , T,  40,  80,  16, MT.OREMATS.Galena      , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM                                     , GEN_END, GEN_MARS);
789
+		new WorldgenOresSmall("ore.small.lead"             , T,  40,  80,  16, MT.Pb                  , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER            , GEN_END, GEN_MARS, GEN_ASTEROIDS, GEN_MOON, GEN_PLANETS);
790
+		new WorldgenOresSmall("ore.small.gold"             , T,  20,  40,   4, MT.Au                  , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER, GEN_NETHER, GEN_END, GEN_MARS, GEN_ASTEROIDS, GEN_MOON, GEN_PLANETS);
791
+		new WorldgenOresSmall("ore.small.pyrite"           , T,  20,  40,   4, MT.Pyrite              , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM                                     , GEN_END, GEN_MARS, GEN_ASTEROIDS, GEN_MOON, GEN_PLANETS);
792
+		new WorldgenOresSmall("ore.small.silver"           , T,  20,  40,   4, MT.Ag                  , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER            , GEN_END, GEN_MARS, GEN_ASTEROIDS, GEN_MOON, GEN_PLANETS);
793
+		new WorldgenOresSmall("ore.small.pyrolusite"       , T,  20,  40,   4, MT.MnO2                , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER            , GEN_END, GEN_MARS               , GEN_MOON, GEN_PLANETS);
794
+		new WorldgenOresSmall("ore.small.garnierite"       , T,  20,  40,   4, MT.OREMATS.Garnierite  , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER            , GEN_END, GEN_MARS);
795
+		new WorldgenOresSmall("ore.small.pentlandite"      , T,  20,  40,   4, MT.OREMATS.Pentlandite , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM                                     , GEN_END, GEN_MARS);
796
+		new WorldgenOresSmall("ore.small.stibnite"         , T,  20,  40,   2, MT.OREMATS.Stibnite    , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM                                     , GEN_END, GEN_MARS);
797
+		new WorldgenOresSmall("ore.small.asbestos"         , T,  20,  40,   8, MT.Asbestos            , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM                         , GEN_NETHER);
798
+		new WorldgenOresSmall("ore.small.eudialyte"        , T,  20,  40,   4, MT.Eudialyte           , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT);
799
+		new WorldgenOresSmall("ore.small.azurite"          , T,  20,  40,   4, MT.Azurite             , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT);
800
+		new WorldgenOresSmall("ore.small.tantalite"        , T,   1, 250,   1, MT.OREMATS.Tantalite   , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM            , GEN_NETHER);
801
+		new WorldgenOresSmall("ore.small.zeolite"          , T,   1, 250,   1, MT.OREMATS.Zeolite     , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM            , GEN_NETHER);
802
+		new WorldgenOresSmall("ore.small.pollucite"        , T,   1, 250,   1, MT.OREMATS.Pollucite   , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM            , GEN_NETHER);
803
+		new WorldgenOresSmall("ore.small.lapis"            , T,  20,  40,   8, MT.Lapis               , GEN_OVERWORLD, GEN_GT          , GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER);
804
+		new WorldgenOresSmall("ore.small.redstone"         , T,   5,  20,  16, MT.Redstone            , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER, GEN_NETHER         , GEN_MARS                         , GEN_PLANETS);
805
+		new WorldgenOresSmall("ore.small.graphite"         , T,   5,  10,   2, MT.Graphite            , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER, GEN_NETHER         , GEN_MARS, GEN_ASTEROIDS          , GEN_PLANETS);
806
+		new WorldgenOresSmall("ore.small.scheelite"        , T,   5,  50,   1, MT.OREMATS.Scheelite   , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER, GEN_NETHER, GEN_END, GEN_MARS, GEN_ASTEROIDS, GEN_MOON, GEN_PLANETS);
807
+		new WorldgenOresSmall("ore.small.amber"            , T,   5, 250,   2, MT.Amber               , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM             , GEN_AETHER);
808
+		new WorldgenOresSmall("ore.small.craponite"        , T,   5, 250,   2, MT.Craponite           , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_ALFHEIM, GEN_AETHER, GEN_NETHER, GEN_END, GEN_MARS, GEN_ASTEROIDS, GEN_MOON, GEN_PLANETS);
809
+		new WorldgenOresSmall("ore.small.diamond"          , T,   5,  10,   2, MT.Diamond             , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM             , GEN_AETHER, GEN_NETHER         , GEN_MARS, GEN_ASTEROIDS, GEN_MOON, GEN_PLANETS);
799 810
 		new WorldgenOresSmall("ore.small.platinum"         , T,  20,  40,   6, MT.Pt                  , GEN_END, GEN_ASTEROIDS, GEN_ALFHEIM, GEN_AETHER);
800 811
 		new WorldgenOresSmall("ore.small.iridium"          , T,  20,  40,   6, MT.Ir                  , GEN_END, GEN_ASTEROIDS, GEN_ALFHEIM, GEN_AETHER);
801 812
 		new WorldgenOresSmall("ore.small.sperrylite"       , T,  20,  40,   4, MT.OREMATS.Sperrylite  , GEN_END, GEN_ASTEROIDS, GEN_ALFHEIM, GEN_AETHER);
@@ -806,86 +817,40 @@ public class Loader_Worldgen implements Runnable {
806 817
 		new WorldgenOresSmall("ore.small.endium"           , T,  10,  80,  32, MT.Endium              , GEN_END);
807 818
 		new WorldgenOresSmall("ore.small.ambrosium"        , T,  30, 120,  64, MT.Ambrosium           , GEN_AETHER);
808 819
 		new WorldgenOresSmall("ore.small.zanite"           , T,  30, 120,  16, MT.Zanite              , GEN_AETHER);
809
-		new WorldgenOresSmall("ore.small.sulfur"           , T,   5,  15,   8, MT.S                   , GEN_OVERWORLD, GEN_GT, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_MARS);
820
+		new WorldgenOresSmall("ore.small.sulfur"           , T,   5,  15,   8, MT.S                   , GEN_OVERWORLD, GEN_GT, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_MARS);
810 821
 		new WorldgenOresSmall("ore.small.niter"            , T,  10, 120,  32, MT.Niter               , GEN_NETHER);
811 822
 		new WorldgenOresSmall("ore.small.efrine"           , T,  90, 120,   8, MT.Efrine              , GEN_NETHER);
812
-		
813
-		new WorldgenOresSmall("ore.small.ancientdebris"    ,!MD.NePl.mLoaded,   5,  90,  16, MT.AncientDebris     , GEN_NETHER, GEN_MARS);
814
-		new WorldgenOresSmall("ore.small.blackquartz"      , MD.AA  .mLoaded,  20,  40,   1, MT.BlackQuartz       , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM);
815
-		new WorldgenOresSmall("ore.small.certus"           , MD.AE  .mLoaded,  20,  40,   1, MT.CertusQuartz      , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_AETHER, GEN_MARS, GEN_PLANETS, GEN_ALFHEIM, GEN_ASTEROIDS, GEN_MOON);
816
-		new WorldgenOresSmall("ore.small.vinteum"          , MD.ARS .mLoaded,  30,  60,   8, MT.Vinteum           , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_AETHER, GEN_MARS, GEN_PLANETS, GEN_ALFHEIM);
817
-		new WorldgenOresSmall("ore.small.chimerite"        , MD.ARS .mLoaded,  10,  40,   8, MT.Chimerite         , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_AETHER, GEN_MARS, GEN_PLANETS, GEN_ALFHEIM);
818
-		new WorldgenOresSmall("ore.small.hexorium_red"     , MD.HEX .mLoaded,   0,  60,  30, MT.HexoriumRed       , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM);
819
-		new WorldgenOresSmall("ore.small.hexorium_green"   , MD.HEX .mLoaded,   0,  60,  30, MT.HexoriumGreen     , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM);
820
-		new WorldgenOresSmall("ore.small.hexorium_blue"    , MD.HEX .mLoaded,   0,  60,  30, MT.HexoriumBlue      , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM);
821
-		new WorldgenOresSmall("ore.small.hexorium_black"   , MD.HEX .mLoaded,   0,  20,   6, MT.HexoriumBlack     , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM);
822
-		new WorldgenOresSmall("ore.small.hexorium_white"   , MD.HEX .mLoaded,   0,  20,   6, MT.HexoriumWhite     , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM);
823
-		new WorldgenOresSmall("ore.small.perdito"          , MD.TC  .mLoaded,  10,  60,   8, MT.InfusedEntropy    , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_AETHER, GEN_MARS, GEN_PLANETS, GEN_ALFHEIM, GEN_NETHER, GEN_END);
824
-		new WorldgenOresSmall("ore.small.ignis"            , MD.TC  .mLoaded,  10,  60,   8, MT.InfusedFire       , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_AETHER, GEN_MARS, GEN_PLANETS, GEN_ALFHEIM, GEN_NETHER, GEN_END);
825
-		new WorldgenOresSmall("ore.small.aer"              , MD.TC  .mLoaded,  10,  60,   8, MT.InfusedAir        , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_AETHER, GEN_MARS, GEN_PLANETS, GEN_ALFHEIM, GEN_NETHER, GEN_END);
826
-		new WorldgenOresSmall("ore.small.aqua"             , MD.TC  .mLoaded,  10,  60,   8, MT.InfusedWater      , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_AETHER, GEN_MARS, GEN_PLANETS, GEN_ALFHEIM, GEN_NETHER, GEN_END);
827
-		new WorldgenOresSmall("ore.small.terra"            , MD.TC  .mLoaded,  10,  60,   8, MT.InfusedEarth      , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_AETHER, GEN_MARS, GEN_PLANETS, GEN_ALFHEIM, GEN_NETHER, GEN_END);
828
-		new WorldgenOresSmall("ore.small.ordo"             , MD.TC  .mLoaded,  10,  60,   8, MT.InfusedOrder      , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_AETHER, GEN_MARS, GEN_PLANETS, GEN_ALFHEIM, GEN_NETHER, GEN_END);
829
-		new WorldgenOresSmall("ore.small.nikolite"         , MD.RP  .mLoaded,  10,  40,   4, MT.Nikolite          , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_AETHER, GEN_MARS, GEN_PLANETS, GEN_ALFHEIM, GEN_NETHER, GEN_END);
830
-		new WorldgenOresSmall("ore.small.teslatite"        , MD.BP  .mLoaded,  10,  40,   4, MT.Teslatite         , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_AETHER, GEN_MARS, GEN_PLANETS, GEN_ALFHEIM, GEN_NETHER, GEN_END);
831
-		new WorldgenOresSmall("ore.small.electrotine"      , MD.PR  .mLoaded,  10,  40,   4, MT.Electrotine       , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_AETHER, GEN_MARS, GEN_PLANETS, GEN_ALFHEIM, GEN_NETHER, GEN_END);
832
-		new WorldgenOresSmall("ore.small.bischofite"       , MD.IHL .mLoaded,  40,  80,   1, MT.OREMATS.Bischofite, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM);
833
-		new WorldgenOresSmall("ore.small.datolite"         , MD.IHL .mLoaded,  40,  80,   1, MT.Datolite          , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM);
834
-		new WorldgenOresSmall("ore.small.mica"             , MD.IHL .mLoaded,  40,  80,   1, MT.OREMATS.Mica      , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM);
835
-		new WorldgenOresSmall("ore.small.gypsum"           , MD.IHL .mLoaded,  40,  80,   1, MT.Gypsum            , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM);
836
-		new WorldgenOresSmall("ore.small.potassiumfeldspar", MD.IHL .mLoaded,  40,  80,   1, MT.PotassiumFeldspar , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM);
837
-		new WorldgenOresSmall("ore.small.trona"            , MD.IHL .mLoaded,  40,  80,   1, MT.OREMATS.Trona     , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_ENVM, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM);
838
-		
839
-		
840
-		new WorldgenOresSmall("ore.small.emerald"          , T, 5, 250, 1, MT.Emerald         , GEN_GEMS);
841
-		new WorldgenOresSmall("ore.small.aquamarine"       , T, 5, 250, 1, MT.Aquamarine      , GEN_GEMS);
842
-		new WorldgenOresSmall("ore.small.morganite"        , T, 5, 250, 1, MT.Morganite       , GEN_GEMS);
843
-		new WorldgenOresSmall("ore.small.heliodor"         , T, 5, 250, 1, MT.Heliodor        , GEN_GEMS);
844
-		new WorldgenOresSmall("ore.small.goshenite"        , T, 5, 250, 1, MT.Goshenite       , GEN_GEMS);
845
-		new WorldgenOresSmall("ore.small.bixbite"          , T, 5, 250, 1, MT.Bixbite         , GEN_GEMS);
846
-		new WorldgenOresSmall("ore.small.maxixe"           , T, 5, 250, 1, MT.Maxixe          , GEN_GEMS);
847
-		new WorldgenOresSmall("ore.small.dioptase"         , T, 5, 250, 1, MT.Dioptase        , GEN_GEMS);
848
-		new WorldgenOresSmall("ore.small.ruby"             , T, 5, 250, 1, MT.Ruby            , GEN_GEMS);
849
-		new WorldgenOresSmall("ore.small.bluesapphire"     , T, 5, 250, 1, MT.BlueSapphire    , GEN_GEMS);
850
-		new WorldgenOresSmall("ore.small.greensapphire"    , T, 5, 250, 1, MT.GreenSapphire   , GEN_GEMS);
851
-		new WorldgenOresSmall("ore.small.yellowsapphire"   , T, 5, 250, 1, MT.YellowSapphire  , GEN_GEMS);
852
-		new WorldgenOresSmall("ore.small.orangesapphire"   , T, 5, 250, 1, MT.OrangeSapphire  , GEN_GEMS);
853
-		new WorldgenOresSmall("ore.small.purplesapphire"   , T, 5, 250, 1, MT.PurpleSapphire  , GEN_GEMS);
854
-		new WorldgenOresSmall("ore.small.olivine"          , T, 5, 250, 1, MT.Olivine         , GEN_GEMS);
855
-		new WorldgenOresSmall("ore.small.topaz"            , T, 5, 250, 1, MT.Topaz           , GEN_GEMS);
856
-		new WorldgenOresSmall("ore.small.tanzanite"        , T, 5, 250, 1, MT.Tanzanite       , GEN_GEMS);
857
-		new WorldgenOresSmall("ore.small.amethyst"         , T, 5, 250, 1, MT.Amethyst        , GEN_GEMS);
858
-		new WorldgenOresSmall("ore.small.alexandrite"      , T, 5, 250, 1, MT.Alexandrite     , GEN_GEMS);
859
-		new WorldgenOresSmall("ore.small.opal"             , T, 5, 250, 1, MT.Opal            , GEN_GEMS);
860
-		new WorldgenOresSmall("ore.small.jasper"           , T, 5, 250, 1, MT.Jasper          , GEN_GEMS);
861
-		new WorldgenOresSmall("ore.small.aventurinegreen"  , T, 5, 250, 1, MT.AventurineGreen , GEN_GEMS);
862
-		new WorldgenOresSmall("ore.small.aventurineblue"   , T, 5, 250, 1, MT.AventurineBlue  , GEN_GEMS);
863
-		new WorldgenOresSmall("ore.small.aventurineblack"  , T, 5, 250, 1, MT.AventurineBlack , GEN_GEMS);
864
-		new WorldgenOresSmall("ore.small.aventurinebrown"  , T, 5, 250, 1, MT.AventurineBrown , GEN_GEMS);
865
-		new WorldgenOresSmall("ore.small.aventurinered"    , T, 5, 250, 1, MT.AventurineRed   , GEN_GEMS);
866
-		new WorldgenOresSmall("ore.small.aventurineyellow" , T, 5, 250, 1, MT.AventurineYellow, GEN_GEMS);
867
-		new WorldgenOresSmall("ore.small.bluetopaz"        , T, 5, 250, 1, MT.BlueTopaz       , GEN_GEMS);
868
-		new WorldgenOresSmall("ore.small.balasruby"        , T, 5, 250, 1, MT.BalasRuby       , GEN_GEMS);
869
-		new WorldgenOresSmall("ore.small.spinel"           , T, 5, 250, 1, MT.Spinel          , GEN_GEMS);
870
-		new WorldgenOresSmall("ore.small.pyrope"           , T, 5, 250, 1, MT.Pyrope          , GEN_GEMS);
871
-		new WorldgenOresSmall("ore.small.almandine"        , T, 5, 250, 1, MT.Almandine       , GEN_GEMS);
872
-		new WorldgenOresSmall("ore.small.spessartine"      , T, 5, 250, 1, MT.Spessartine     , GEN_GEMS);
873
-		new WorldgenOresSmall("ore.small.andradite"        , T, 5, 250, 1, MT.Andradite       , GEN_GEMS);
874
-		new WorldgenOresSmall("ore.small.grossular"        , T, 5, 250, 1, MT.Grossular       , GEN_GEMS);
875
-		new WorldgenOresSmall("ore.small.uvarovite"        , T, 5, 250, 1, MT.Uvarovite       , GEN_GEMS);
876
-		new WorldgenOresSmall("ore.small.jade"             , T, 5, 250, 1, MT.Jade            , GEN_GEMS);
877
-		new WorldgenOresSmall("ore.small.amazonite"        , T, 5, 250, 1, MT.Amazonite       , GEN_GEMS);
878
-		new WorldgenOresSmall("ore.small.redonyx"          , T, 5, 250, 1, MT.OnyxRed         , GEN_GEMS);
879
-		new WorldgenOresSmall("ore.small.blackonyx"        , T, 5, 250, 1, MT.OnyxBlack       , GEN_GEMS);
880
-		new WorldgenOresSmall("ore.small.fluoritered"      , T, 5, 250, 1, MT.FluoriteRed     , GEN_GEMS);
881
-		new WorldgenOresSmall("ore.small.fluoritepink"     , T, 5, 250, 1, MT.FluoritePink    , GEN_GEMS);
882
-		new WorldgenOresSmall("ore.small.fluoriteblue"     , T, 5, 250, 1, MT.FluoriteBlue    , GEN_GEMS);
883
-		new WorldgenOresSmall("ore.small.fluoritegreen"    , T, 5, 250, 1, MT.FluoriteGreen   , GEN_GEMS);
884
-		new WorldgenOresSmall("ore.small.fluoriteblack"    , T, 5, 250, 1, MT.FluoriteBlack   , GEN_GEMS);
885
-		new WorldgenOresSmall("ore.small.fluoritewhite"    , T, 5, 250, 1, MT.FluoriteWhite   , GEN_GEMS);
886
-		new WorldgenOresSmall("ore.small.fluoriteyellow"   , T, 5, 250, 1, MT.FluoriteYellow  , GEN_GEMS);
887
-		new WorldgenOresSmall("ore.small.fluoriteorange"   , T, 5, 250, 1, MT.FluoriteOrange  , GEN_GEMS);
888
-		new WorldgenOresSmall("ore.small.fluoritemagenta"  , T, 5, 250, 1, MT.FluoriteMagenta , GEN_GEMS);
823
+		new WorldgenOresSmall("ore.small.ancientdebris"    , !(IL.EtFu_Ancient_Debris.exists() || IL.NePl_Ancient_Debris.exists()), 5, 90, 16, MT.AncientDebris, GEN_NETHER, GEN_MARS);
824
+		
825
+		new WorldgenOresSmall("ore.small.blackquartz"      , MD.AA  .mLoaded,  20,  40,   1, MT.BlackQuartz       , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM);
826
+		new WorldgenOresSmall("ore.small.certus"           , MD.AE  .mLoaded,  20,  40,   1, MT.CertusQuartz      , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_AETHER, GEN_MARS, GEN_PLANETS, GEN_ALFHEIM, GEN_ASTEROIDS, GEN_MOON);
827
+		new WorldgenOresSmall("ore.small.vinteum"          , MD.ARS .mLoaded,  30,  60,   8, MT.Vinteum           , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_AETHER, GEN_MARS, GEN_PLANETS, GEN_ALFHEIM);
828
+		new WorldgenOresSmall("ore.small.chimerite"        , MD.ARS .mLoaded,  10,  40,   8, MT.Chimerite         , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_AETHER, GEN_MARS, GEN_PLANETS, GEN_ALFHEIM);
829
+		new WorldgenOresSmall("ore.small.hexorium_red"     , MD.HEX .mLoaded,   0,  60,  30, MT.HexoriumRed       , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM);
830
+		new WorldgenOresSmall("ore.small.hexorium_green"   , MD.HEX .mLoaded,   0,  60,  30, MT.HexoriumGreen     , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM);
831
+		new WorldgenOresSmall("ore.small.hexorium_blue"    , MD.HEX .mLoaded,   0,  60,  30, MT.HexoriumBlue      , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM);
832
+		new WorldgenOresSmall("ore.small.hexorium_black"   , MD.HEX .mLoaded,   0,  20,   6, MT.HexoriumBlack     , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM);
833
+		new WorldgenOresSmall("ore.small.hexorium_white"   , MD.HEX .mLoaded,   0,  20,   6, MT.HexoriumWhite     , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM);
834
+		new WorldgenOresSmall("ore.small.perdito"          , MD.TC  .mLoaded,  10,  60,   8, MT.InfusedEntropy    , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_AETHER, GEN_MARS, GEN_PLANETS, GEN_ALFHEIM, GEN_NETHER, GEN_END);
835
+		new WorldgenOresSmall("ore.small.ignis"            , MD.TC  .mLoaded,  10,  60,   8, MT.InfusedFire       , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_AETHER, GEN_MARS, GEN_PLANETS, GEN_ALFHEIM, GEN_NETHER, GEN_END);
836
+		new WorldgenOresSmall("ore.small.aer"              , MD.TC  .mLoaded,  10,  60,   8, MT.InfusedAir        , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_AETHER, GEN_MARS, GEN_PLANETS, GEN_ALFHEIM, GEN_NETHER, GEN_END);
837
+		new WorldgenOresSmall("ore.small.aqua"             , MD.TC  .mLoaded,  10,  60,   8, MT.InfusedWater      , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_AETHER, GEN_MARS, GEN_PLANETS, GEN_ALFHEIM, GEN_NETHER, GEN_END);
838
+		new WorldgenOresSmall("ore.small.terra"            , MD.TC  .mLoaded,  10,  60,   8, MT.InfusedEarth      , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_AETHER, GEN_MARS, GEN_PLANETS, GEN_ALFHEIM, GEN_NETHER, GEN_END);
839
+		new WorldgenOresSmall("ore.small.ordo"             , MD.TC  .mLoaded,  10,  60,   8, MT.InfusedOrder      , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_AETHER, GEN_MARS, GEN_PLANETS, GEN_ALFHEIM, GEN_NETHER, GEN_END);
840
+		new WorldgenOresSmall("ore.small.nikolite"         , MD.RP  .mLoaded,  10,  40,   4, MT.Nikolite          , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_AETHER, GEN_MARS, GEN_PLANETS, GEN_ALFHEIM, GEN_NETHER, GEN_END);
841
+		new WorldgenOresSmall("ore.small.teslatite"        , MD.BP  .mLoaded,  10,  40,   4, MT.Teslatite         , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_AETHER, GEN_MARS, GEN_PLANETS, GEN_ALFHEIM, GEN_NETHER, GEN_END);
842
+		new WorldgenOresSmall("ore.small.electrotine"      , MD.PR  .mLoaded,  10,  40,   4, MT.Electrotine       , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM, GEN_AETHER, GEN_MARS, GEN_PLANETS, GEN_ALFHEIM, GEN_NETHER, GEN_END);
843
+		new WorldgenOresSmall("ore.small.bischofite"       , MD.IHL .mLoaded,  40,  80,   1, MT.OREMATS.Bischofite, GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM);
844
+		new WorldgenOresSmall("ore.small.datolite"         , MD.IHL .mLoaded,  40,  80,   1, MT.Datolite          , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM);
845
+		new WorldgenOresSmall("ore.small.mica"             , MD.IHL .mLoaded,  40,  80,   1, MT.OREMATS.Mica      , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM);
846
+		new WorldgenOresSmall("ore.small.gypsum"           , MD.IHL .mLoaded,  40,  80,   1, MT.Gypsum            , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM);
847
+		new WorldgenOresSmall("ore.small.potassiumfeldspar", MD.IHL .mLoaded,  40,  80,   1, MT.PotassiumFeldspar , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM);
848
+		new WorldgenOresSmall("ore.small.trona"            , MD.IHL .mLoaded,  40,  80,   1, MT.OREMATS.Trona     , GEN_OVERWORLD, GEN_GT, GEN_PFAA, GEN_AROMA, GEN_AROMA_GT, GEN_ENVM, GEN_ENVM_GT, GEN_EREBUS, GEN_BETWEENLANDS, GEN_ATUM);
849
+		
850
+		for (OreDictMaterial tGem : OreDictMaterial.MATERIAL_ARRAY) if (tGem != null && tGem.contains(TD.Properties.RANDOM_SMALL_GEM_ORE)) {
851
+		new WorldgenOresSmall("ore.small."+tGem.mNameInternal.toLowerCase(), T, 5, 250, 1, tGem, GEN_GEMS);
852
+		if (ConfigsGT.WORLDGEN.get("ore.random_small_gem_ores", tGem.mNameInternal, T)) StoneLayer.RANDOM_SMALL_GEM_ORES.add(tGem);
853
+		}
889 854
 		
890 855
 		for (int i = 0, j = ConfigsGT.WORLDGEN.get(ConfigCategories.general, "AmountOfCustomSmallOreSlots", 0); i < j; i++) {
891 856
 		new WorldgenOresSmall("ore.small.custom"+(i<10?"0":"") + i, F, 0, 0, 0, MT.NULL, GEN_ALL);

+ 2
- 1
src/main/java/gregtech/loaders/c/Loader_BlockResistance.java View File

@@ -1,5 +1,5 @@
1 1
 /**
2
- * Copyright (c) 2020 GregTech-6 Team
2
+ * Copyright (c) 2021 GregTech-6 Team
3 3
  *
4 4
  * This file is part of GregTech.
5 5
  *
@@ -49,5 +49,6 @@ public class Loader_BlockResistance implements Runnable {
49 49
 		tBlock = IL.NeLi_Obsidian      .block(); if (tBlock != null && tBlock != NB) tBlock.setResistance(60);
50 50
 		tBlock = IL.NePl_Obsidian      .block(); if (tBlock != null && tBlock != NB) tBlock.setResistance(60);
51 51
 		tBlock = IL.NePl_Ancient_Debris.block(); if (tBlock != null && tBlock != NB) tBlock.setResistance(60);
52
+		tBlock = IL.EtFu_Ancient_Debris.block(); if (tBlock != null && tBlock != NB) tBlock.setResistance(60);
52 53
 	}
53 54
 }

+ 8
- 4
src/main/java/gregtech/loaders/c/Loader_Recipes_Temporary.java View File

@@ -430,10 +430,14 @@ public class Loader_Recipes_Temporary implements Runnable {
430 430
 			RM.smash(IL.NePl_Quartz_Bricks.get(1), OP.gem.mat(MT.NetherQuartz, 4), 4);
431 431
 			
432 432
 			if (!MD.NeLi.mLoaded) {
433
-				CR.shapeless(IL.NePl_Torch.get(4), DEF_NCC, new Object[] {OD.soulsand, OD.blockTorch, OD.blockTorch, OD.blockTorch, OD.blockTorch});
434
-				CR.shapeless(IL.NePl_Torch.get(3), DEF_NCC, new Object[] {OD.soulsand, OD.blockTorch, OD.blockTorch, OD.blockTorch});
435
-				CR.shapeless(IL.NePl_Torch.get(2), DEF_NCC, new Object[] {OD.soulsand, OD.blockTorch, OD.blockTorch});
436
-				CR.shapeless(IL.NePl_Torch.get(1), DEF_NCC, new Object[] {OD.soulsand, OD.blockTorch});
433
+				CR.shapeless(IL.NePl_Torch.get(4), DEF_NCC, new Object[] {OD.soulsand    , OD.blockTorch, OD.blockTorch, OD.blockTorch, OD.blockTorch});
434
+				CR.shapeless(IL.NePl_Torch.get(4), DEF_NCC, new Object[] {OD.flowerWither, OD.blockTorch, OD.blockTorch, OD.blockTorch, OD.blockTorch});
435
+				CR.shapeless(IL.NePl_Torch.get(3), DEF_NCC, new Object[] {OD.soulsand    , OD.blockTorch, OD.blockTorch, OD.blockTorch});
436
+				CR.shapeless(IL.NePl_Torch.get(3), DEF_NCC, new Object[] {OD.flowerWither, OD.blockTorch, OD.blockTorch, OD.blockTorch});
437
+				CR.shapeless(IL.NePl_Torch.get(2), DEF_NCC, new Object[] {OD.soulsand    , OD.blockTorch, OD.blockTorch});
438
+				CR.shapeless(IL.NePl_Torch.get(2), DEF_NCC, new Object[] {OD.flowerWither, OD.blockTorch, OD.blockTorch});
439
+				CR.shapeless(IL.NePl_Torch.get(1), DEF_NCC, new Object[] {OD.soulsand    , OD.blockTorch});
440
+				CR.shapeless(IL.NePl_Torch.get(1), DEF_NCC, new Object[] {OD.flowerWither, OD.blockTorch});
437 441
 				
438 442
 				RM.Boxinator.addRecipe2(T, 16, 16, ST.make(Items.netherbrick, 2, 0), ST.make(Items.nether_wart, 2, 0), ST.make(MD.NePl, "RedBricks", 1, 0));
439 443
 				

+ 11
- 0
src/main/java/gregtech/worldgen/WorldgenStoneLayers.java View File

@@ -31,6 +31,7 @@ import gregapi.data.MT;
31 31
 import gregapi.data.OP;
32 32
 import gregapi.oredict.OreDictMaterial;
33 33
 import gregapi.util.ST;
34
+import gregapi.util.UT;
34 35
 import gregapi.util.WD;
35 36
 import gregapi.worldgen.StoneLayer;
36 37
 import gregapi.worldgen.StoneLayerOres;
@@ -109,6 +110,11 @@ public class WorldgenStoneLayers extends WorldgenObject {
109 110
 							break;
110 111
 						}
111 112
 					}
113
+					if (temp && tScan[4] != tScan[2] && tScan[3].mOreSmall != null && !StoneLayer.RANDOM_SMALL_GEM_ORES.isEmpty() && aRandom.nextInt(128) == 0) {
114
+						if (tScan[3].mOreSmall.placeBlock(aWorld, tX, tY, tZ, SIDE_UNKNOWN, UT.Code.select(MT.Emerald, StoneLayer.RANDOM_SMALL_GEM_ORES).mID, null, F, T)) {
115
+							temp = F;
116
+						}
117
+					}
112 118
 					if (temp) {
113 119
 						tLastRock = tScan[3].mMaterial;
114 120
 						if (aBlock != tScan[3].mStone) {
@@ -153,6 +159,11 @@ public class WorldgenStoneLayers extends WorldgenObject {
153 159
 							break;
154 160
 						}
155 161
 					}
162
+					if (temp && tScan[4] != tScan[2] && tScan[3].mOreSmall != null && !StoneLayer.RANDOM_SMALL_GEM_ORES.isEmpty() && aRandom.nextInt(128) == 0) {
163
+						if (tScan[3].mOreSmall.placeBlock(aWorld, tX, tY, tZ, SIDE_UNKNOWN, UT.Code.select(MT.Emerald, StoneLayer.RANDOM_SMALL_GEM_ORES).mID, null, F, T)) {
164
+							temp = F;
165
+						}
166
+					}
156 167
 					if (temp) {
157 168
 						tLastRock = tScan[3].mMaterial;
158 169
 						if (aBlock != tScan[3].mStone) {

Loading…
Cancel
Save