From f586504ff20679c6505e4c68f487c091fcb5471c Mon Sep 17 00:00:00 2001 From: Gregorius Techneticies Date: Mon, 26 Jun 2023 21:31:20 +0200 Subject: [PATCH] Twilight Forest Giant Blocks can now be made with a Boxinator if the Giant Pickaxe is used as Catalyst --- CHANGELOG.md | 1 + src/main/java/gregapi/GT_API.java | 3 +++ src/main/java/gregapi/data/MT.java | 1 + src/main/java/gregapi/load/LoaderItemData.java | 3 ++- src/main/java/gregapi/load/LoaderItemList.java | 8 ++++---- .../compat/Compat_Recipes_AppliedEnergistics.java | 8 ++++---- .../gregtech/compat/Compat_Recipes_ProjectRed.java | 10 +++++----- .../compat/Compat_Recipes_TwilightForest.java | 13 +++++++++---- src/main/java/gregtech/loaders/c/Loader_Loot.java | 2 ++ 9 files changed, 31 insertions(+), 18 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ae33b23ba..80dfcc509 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -18,6 +18,7 @@ Nothing (I tend to only add finished Stuff to the Changelog). [CHANGED] Blacksmith Loot Chest is now made of Meteoric Steel instead of regular Steel, unless Village Names is installed. [ADDED] Drain Covers can now partially drain GT Fluids. [ADDED] Allowing Selector Tags 2 to 9 in the Blueprint Slot of the Advanced Crafting Table for helping with Shapeless Recipes. The Slot's Tooltip has been changed to mention that too. +[ADDED] The Tier 2 Boxinator can now make Twilight Forests Giant Blocks, as long as you use a Giant Pickaxe as "Catalyst". The Giant Pickaxe will not be used up, and it will accept damaged ones too. 6.16.01: diff --git a/src/main/java/gregapi/GT_API.java b/src/main/java/gregapi/GT_API.java index 89c792430..dd64fead1 100644 --- a/src/main/java/gregapi/GT_API.java +++ b/src/main/java/gregapi/GT_API.java @@ -428,6 +428,9 @@ public void onModPreInit2(FMLPreInitializationEvent aEvent) { MT.Asbestos.setLocal("Bestos"); MT.AncientDebris.setLocal("Cinnabun"); MT.Cinnamon.setLocal("Ancient Debris"); + MT.WOODS.Acacia.setLocal("A Cha Cha"); + MT.WOODS.DarkOak.setLocal("Dork Oak"); + MT.WOODS.Darkwood.setLocal("Dork Wood"); MT.WOODS.Cinnamon.setLocal("Ancient Debris"); MT.WOODS.Foxfire.setLocal("Chrome"); MT.Rb.setLocal("Ruby"); diff --git a/src/main/java/gregapi/data/MT.java b/src/main/java/gregapi/data/MT.java index a02e8ad87..a5a229f49 100644 --- a/src/main/java/gregapi/data/MT.java +++ b/src/main/java/gregapi/data/MT.java @@ -2312,6 +2312,7 @@ static void init() { Cryotheum .put(MD.TE); + STONES.SkyStone .put(MD.AE).visDefault(); Si .put(MD.AE); // don't COMMON_ORE this! CertusQuartz .put(MD.AE, COMMON_ORE); ChargedCertusQuartz .put(MD.AE, COMMON_ORE); diff --git a/src/main/java/gregapi/load/LoaderItemData.java b/src/main/java/gregapi/load/LoaderItemData.java index 255189371..2c95f30b5 100644 --- a/src/main/java/gregapi/load/LoaderItemData.java +++ b/src/main/java/gregapi/load/LoaderItemData.java @@ -1127,6 +1127,7 @@ public void run() { OM.reg(OP.stone, MT.STONES.Castlerock , ST.make(MD.TF, "tile.CastleBrick" , 1, 0)); OM.reg(OP.stone, MT.STONES.Castlerock , ST.make(MD.TF, "tile.CastleBrick" , 1, 1)); OM.reg(OP.stone, MT.STONES.Castlerock , ST.make(MD.TF, "tile.CastleBrick" , 1, 2)); + OM.reg(OP.stone, MT.STONES.Castlerock , ST.make(MD.TF, "tile.CastleBrick" , 1, 3)); } if (MD.AE.mLoaded) { @@ -1804,7 +1805,7 @@ public void run() { OM.data(MD.TF, "item.shardCluster" , 1, 0, MT.Knightmetal , U); OM.data(MD.TF, "item.knightmetalRing" , 1, 0, MT.Knightmetal , U * 4); OM.dat2(MD.TF, "item.chainBlock" , 1 , MT.Knightmetal , U *16); - OM.data(MD.TF, "tile.TFNagastone" , 1, W, ANY.Stone , U); + OM.data(MD.TF, "tile.TFNagastone" , 1, W, ANY.Stone , U * 9); OM.data(MD.ERE, "fireBloom" , 1, W, MT.Blaze , U72); diff --git a/src/main/java/gregapi/load/LoaderItemList.java b/src/main/java/gregapi/load/LoaderItemList.java index ce2cea819..b072b7d41 100644 --- a/src/main/java/gregapi/load/LoaderItemList.java +++ b/src/main/java/gregapi/load/LoaderItemList.java @@ -936,8 +936,8 @@ public void run() { IL.TF_Venison_Cooked .set(ST.make(MD.TF, "item.venisonCooked" , 1, 0), new OreDictItemData(MT.MeatCooked , U*2, MT.Bone, U9), "foodVenisoncooked"); IL.TF_Lamp_of_Cinders .set(ST.make(MD.TF, "item.lampOfCinders" , 1, 0), null, OD.craftingFirestarter, OreDictToolNames.flintandtinder); IL.TF_Cube_of_Annihilation .set(ST.make(MD.TF, "item.cubeOfAnnihilation" , 1, 0)); - IL.TF_Pick_Giant .set(ST.make(MD.TF, "item.giantPick" , 1, 0), new OreDictItemData(MT.Stone, U*192, MT.WOODS.Oak, U*1024, MT.Bark, U*128).setUseVanillaDamage()); - IL.TF_Sword_Giant .set(ST.make(MD.TF, "item.giantSword" , 1, 0), new OreDictItemData(MT.Stone, U*128, MT.WOODS.Oak, U* 512, MT.Bark, U* 64).setUseVanillaDamage()); + IL.TF_Pick_Giant .set(ST.make(MD.TF, "item.giantPick" , 1, 0), new OreDictItemData(MT.Stone, U*1728, MT.WOODS.Oak, U*1024, MT.Bark, U*128).setUseVanillaDamage()); + IL.TF_Sword_Giant .set(ST.make(MD.TF, "item.giantSword" , 1, 0), new OreDictItemData(MT.Stone, U*1152, MT.WOODS.Oak, U* 512, MT.Bark, U* 64).setUseVanillaDamage()); IL.TF_Fiddlehead .set(ST.make(MD.TF, "tile.TFPlant" , 1, 8)); IL.TF_Mushgloom .set(ST.make(MD.TF, "tile.TFPlant" , 1, 9), new OreDictItemData(MT.Glowstone, U4), OD.listAllmushroom); IL.TF_Tall_Grass .set(ST.make(MD.TF, "tile.TFPlant" , 1,10), null, OD.itemGrassTall); @@ -949,11 +949,11 @@ public void run() { IL.TF_Deadrock .set(ST.make(MD.TF, "tile.TFDeadrock" , 1, 2), OP.stone.dat(MT.STONES.Deadrock)); IL.TF_Trollsteinn .set(ST.make(MD.TF, "tile.TrollSteinn" , 1, 0), OP.stone.dat(MT.Stone)); IL.TF_Nagastone .set(ST.make(MD.TF, "tile.TFNagastone" , 1, 0), OP.stone.dat(MT.Stone)); - IL.TF_Mazestone .set(ST.make(MD.TF, "tile.TFMazestone" , 1, 0), OP.stone.dat(MT.Stone)); + IL.TF_Mazestone .set(ST.make(MD.TF, "tile.TFMazestone" , 1, 0)); IL.TF_Mazehedge .set(ST.make(MD.TF, "tile.TFHedge" , 1, 0)); IL.TF_Uncrafting .set(ST.make(MD.TF, "tile.TFUncraftingTable" , 1, 0), null, CR.DELATE); IL.TF_Giant_Leaves .set(ST.make(MD.TF, "tile.GiantLeaves" , 1, 0)); - IL.TF_Giant_Cobble .set(ST.make(MD.TF, "tile.GiantCobble" , 1, 0), new OreDictItemData(MT.Stone , U *64)); + IL.TF_Giant_Cobble .set(ST.make(MD.TF, "tile.GiantCobble" , 1, 0), new OreDictItemData(MT.Stone , U*576)); IL.TF_Giant_Obsidian .set(ST.make(MD.TF, "tile.GiantObsidian" , 1, 0), new OreDictItemData(MT.Obsidian , U*576)); IL.TF_Giant_Log .set(ST.make(MD.TF, "tile.GiantLog" , 1, 0), new OreDictItemData(MT.WOODS.Oak , U*512, MT.Bark, U*64)); IL.TF_Log_Oak .set(ST.make(MD.TF, "tile.TFLog" , 1, 0), new OreDictItemData(MT.WOODS.Oak , U*8, MT.Bark, U), OD.logWood); diff --git a/src/main/java/gregtech/compat/Compat_Recipes_AppliedEnergistics.java b/src/main/java/gregtech/compat/Compat_Recipes_AppliedEnergistics.java index 5663eb72f..18f56132e 100644 --- a/src/main/java/gregtech/compat/Compat_Recipes_AppliedEnergistics.java +++ b/src/main/java/gregtech/compat/Compat_Recipes_AppliedEnergistics.java @@ -48,8 +48,6 @@ public class Compat_Recipes_AppliedEnergistics extends CompatMods { CR.shaped(ST.make(MD.AE, "tile.BlockQuartzGlass", 4, 0), CR.DEF_REM_REV_NCC, "QGQ", "GQG", "QGQ", 'G', OD.blockGlassColorless, 'Q', OP.dust.dat(ANY.Quartz)); CR.shaped(ST.make(MD.AE, "tile.BlockQuartzLamp" , 1, 0), CR.DEF_REM_REV_NCC, "GQG", 'G', OP.dust.dat(ANY.Glowstone), 'Q', ST.make(MD.AE, "tile.BlockQuartzGlass", 1, 0)); - RM.Mixer .addRecipeX(T, 16, 16, ST.array(OM.dust(MT.Olivine), OM.dust(MT.RareEarth), OM.dust(MT.STONES.Basalt), OM.dust(MT.Obsidian)), ST.make(MD.AE, "item.ItemMultiMaterial", 1, 45)); - RM.Press .addRecipe2(T, 16, 64, ST.make(MD.AE, "item.ItemMultiMaterial", 0, 13), ST.make(MD.AE, "item.ItemMultiMaterial", 1, 10), ST.make(MD.AE, "item.ItemMultiMaterial", 1, 16)); RM.Press .addRecipe2(T, 16, 64, ST.make(MD.AE, "item.ItemMultiMaterial", 0, 13), OP.plateGem.mat(MT.CertusQuartz , 1), ST.make(MD.AE, "item.ItemMultiMaterial", 1, 16)); for (OreDictMaterial tMat : ANY.Diamond.mToThis) @@ -91,8 +89,6 @@ public class Compat_Recipes_AppliedEnergistics extends CompatMods { RM.Compressor .addRecipe1(T, 16, 16, ST.make(MD.AE, "item.ItemMultiMaterial", 8, 12), ST.make(MD.AE, "tile.BlockFluix", 1, 0)); RM.Compressor .addRecipe1(T, 16, 16, ST.make(MD.AE, "item.ItemMultiMaterial", 8, 11), ST.make(Blocks.quartz_block, 1, 0)); - RM.Centrifuge .addRecipe1(T, 64, 16, new long[] {2000, 2000, 2000, 2000, 2000, 2000}, ST.make(MD.AE, "item.ItemMultiMaterial", 1, 45), OP.dustSmall.mat(MT.OREMATS.BasalticMineralSand, 1), OP.dustSmall.mat(MT.Olivine, 1), OP.dustSmall.mat(MT.Obsidian, 1), OP.dustSmall.mat(MT.STONES.Basalt, 1), OP.dustSmall.mat(MT.Flint, 1), OP.dustSmall.mat(MT.RareEarth, 1)); - RM.Mixer .addRecipe2(T, 16, 16, OM.dust(MT.CertusQuartz), ST.make(Blocks.sand, 1, W), ST.make(MD.AE, "item.ItemCrystalSeed", 2, 0)); RM.Mixer .addRecipe2(T, 16, 16, OM.dust(MT.NetherQuartz), ST.make(Blocks.sand, 1, W), ST.make(MD.AE, "item.ItemCrystalSeed", 2, 600)); RM.Mixer .addRecipe2(T, 16, 16, OM.dust(MT.Fluix ), ST.make(Blocks.sand, 1, W), ST.make(MD.AE, "item.ItemCrystalSeed", 2, 1200)); @@ -130,6 +126,10 @@ public class Compat_Recipes_AppliedEnergistics extends CompatMods { RM.mortarize( 18, ST.make(MD.AE, "tile.BlockSkyStone", 1, W), OP.blockDust.mat(MT.STONES.SkyStone, 1)); RM.mortarize(144, ST.make(MD.AE, "tile.BlockSkyChest", 1, W), OP.blockDust.mat(MT.STONES.SkyStone, 8)); + // TODO + RM.Mixer .addRecipeX(T, 16, 16, ST.array(OM.dust(MT.Olivine), OM.dust(MT.RareEarth), OM.dust(MT.STONES.Basalt), OM.dust(MT.Obsidian)), ST.make(MD.AE, "item.ItemMultiMaterial", 1, 45)); + RM.Centrifuge .addRecipe1(T, 64, 16, new long[] {2000, 2000, 2000, 2000, 2000, 2000}, ST.make(MD.AE, "item.ItemMultiMaterial", 1, 45), OP.dustSmall.mat(MT.OREMATS.BasalticMineralSand, 1), OP.dustSmall.mat(MT.Olivine, 1), OP.dustSmall.mat(MT.Obsidian, 1), OP.dustSmall.mat(MT.STONES.Basalt, 1), OP.dustSmall.mat(MT.Flint, 1), OP.dustSmall.mat(MT.RareEarth, 1)); + new OreDictListenerEvent_Names() {@Override public void addAllListeners() { diff --git a/src/main/java/gregtech/compat/Compat_Recipes_ProjectRed.java b/src/main/java/gregtech/compat/Compat_Recipes_ProjectRed.java index a2657fda0..4cc98be52 100644 --- a/src/main/java/gregtech/compat/Compat_Recipes_ProjectRed.java +++ b/src/main/java/gregtech/compat/Compat_Recipes_ProjectRed.java @@ -42,9 +42,9 @@ public class Compat_Recipes_ProjectRed extends CompatMods { RM.sawing(64, 64, F, 1000, ST.make(MD.PR, "projectred.core.part", 1, 11), ST.make(MD.PR, "projectred.core.part", 16, 12)); RM.stonetypes(MT.STONES.Marble, F, OP.rockGt.mat(MT.STONES.Marble, 4), OP.blockDust.mat(MT.STONES.Marble, 1) - , ST.make(MD.PR_EXPLORATION, "projectred.exploration.stone", 1, 0) - , NI + , RM.stoneshapes(MT.STONES.Basalt, F, ST.make(MD.PR_EXPLORATION, "projectred.exploration.stone", 1, 0), NI, NI, ST.make(MD.PR_EXPLORATION, "projectred.exploration.stonewalls", 1, 0), NI) , NI + , RM.stoneshapes(MT.STONES.Basalt, F, ST.make(MD.PR_EXPLORATION, "projectred.exploration.stone", 1, 1), NI, NI, ST.make(MD.PR_EXPLORATION, "projectred.exploration.stonewalls", 1, 1), NI) , NI , NI , NI @@ -53,9 +53,9 @@ public class Compat_Recipes_ProjectRed extends CompatMods { ); RM.stonetypes(MT.STONES.Basalt, F, OP.rockGt.mat(MT.STONES.Basalt, 4), OP.blockDust.mat(MT.STONES.Basalt, 1) - , ST.make(MD.PR_EXPLORATION, "projectred.exploration.stone", 1, 3) - , ST.make(MD.PR_EXPLORATION, "projectred.exploration.stone", 1, 2) - , NI + , RM.stoneshapes(MT.STONES.Basalt, F, ST.make(MD.PR_EXPLORATION, "projectred.exploration.stone", 1, 3), NI, NI, ST.make(MD.PR_EXPLORATION, "projectred.exploration.stonewalls", 1, 3), NI) + , RM.stoneshapes(MT.STONES.Basalt, F, ST.make(MD.PR_EXPLORATION, "projectred.exploration.stone", 1, 2), NI, NI, ST.make(MD.PR_EXPLORATION, "projectred.exploration.stonewalls", 1, 2), NI) + , RM.stoneshapes(MT.STONES.Basalt, F, ST.make(MD.PR_EXPLORATION, "projectred.exploration.stone", 1, 4), NI, NI, ST.make(MD.PR_EXPLORATION, "projectred.exploration.stonewalls", 1, 4), NI) , NI , NI , NI diff --git a/src/main/java/gregtech/compat/Compat_Recipes_TwilightForest.java b/src/main/java/gregtech/compat/Compat_Recipes_TwilightForest.java index b384ba4c5..16a9a3171 100644 --- a/src/main/java/gregtech/compat/Compat_Recipes_TwilightForest.java +++ b/src/main/java/gregtech/compat/Compat_Recipes_TwilightForest.java @@ -70,10 +70,15 @@ public class Compat_Recipes_TwilightForest extends CompatMods { CR.remove(IL.TF_Giant_Obsidian.get(1)); CR.remove(IL.TF_Giant_Leaves .get(1)); - RM.sawing(64, 64, F, 50, IL.TF_Giant_Log .get(1), ST.make(Blocks.log, 64, 0)); + RM.sawing(64, 64, F, 50, IL.TF_Giant_Log .get(1), ST.make(Blocks.log , 64, 0)); RM.sawing(64,256, F, 50, IL.TF_Giant_Cobble .get(1), ST.make(Blocks.cobblestone, 64, 0)); - RM.sawing(64,512, F, 50, IL.TF_Giant_Obsidian.get(1), ST.make(Blocks.obsidian, 64, 0)); - RM.sawing(64, 16, F, 50, IL.TF_Giant_Leaves .get(1), ST.make(Blocks.leaves, 64, 0)); + RM.sawing(64,512, F, 50, IL.TF_Giant_Obsidian.get(1), ST.make(Blocks.obsidian , 64, 0)); + RM.sawing(64, 16, F, 50, IL.TF_Giant_Leaves .get(1), ST.make(Blocks.leaves , 64, 0)); + + RM.Boxinator.addRecipe2(T,128,128, ST.make(Blocks.log , 64, 0), IL.TF_Pick_Giant.getWildcard(0), IL.TF_Giant_Log .get(1)); + RM.Boxinator.addRecipe2(T,128,128, ST.make(Blocks.cobblestone, 64, 0), IL.TF_Pick_Giant.getWildcard(0), IL.TF_Giant_Cobble .get(1)); + RM.Boxinator.addRecipe2(T,128,128, ST.make(Blocks.obsidian , 64, 0), IL.TF_Pick_Giant.getWildcard(0), IL.TF_Giant_Obsidian.get(1)); + RM.Boxinator.addRecipe2(T,128,128, ST.make(Blocks.leaves , 64, 0), IL.TF_Pick_Giant.getWildcard(0), IL.TF_Giant_Leaves .get(1)); RM.Mixer.addRecipeX(T, 16, 64, ST.array(OM.dust(MT.Redstone, 4*U), IL.TF_BorerEssence.get(4), ST.make(Items.ghast_tear, 1, W)), IL.TF_Carminite.get(1)); @@ -103,7 +108,7 @@ public class Compat_Recipes_TwilightForest extends CompatMods { , ST.make(MD.TF, "tile.CastleBrick", 1, 2) , NI , NI - , NI + , ST.make(MD.TF, "tile.CastleBrick", 1, 3) , NI ); diff --git a/src/main/java/gregtech/loaders/c/Loader_Loot.java b/src/main/java/gregtech/loaders/c/Loader_Loot.java index 40608c277..670d944b8 100644 --- a/src/main/java/gregtech/loaders/c/Loader_Loot.java +++ b/src/main/java/gregtech/loaders/c/Loader_Loot.java @@ -163,6 +163,7 @@ public void run() { addLoot(ChestGenHooks.DUNGEON_CHEST , 100, 1, 2, ST.make(ItemsGT.BOOKS, 1, 32002)); addLoot(ChestGenHooks.PYRAMID_DESERT_CHEST , 2, 4, 8, IL.Bottle_Holy_Water.get(1)); + addLoot(ChestGenHooks.PYRAMID_DESERT_CHEST , 4,16,64, OP.rockGt.mat(MT.STONES.SkyStone, 1)); addLoot(ChestGenHooks.PYRAMID_DESERT_CHEST , 3, 4,16, OP.ingot.mat(MT.Ag, 1)); addLoot(ChestGenHooks.PYRAMID_DESERT_CHEST , 1, 2, 8, OP.ingot.mat(MT.Pt, 1)); addLoot(ChestGenHooks.PYRAMID_DESERT_CHEST , 3, 4,16, OP.plate.mat(MT.Ag, 1)); @@ -183,6 +184,7 @@ public void run() { addLoot(ChestGenHooks.PYRAMID_DESERT_CHEST , 12,16,64, MultiTileEntityCoin.COIN_MAP.get(MT.Au)); addLoot(ChestGenHooks.PYRAMID_DESERT_CHEST , 1,16,64, MultiTileEntityCoin.COIN_MAP.get(MT.Nq)); + addLoot(ChestGenHooks.PYRAMID_JUNGLE_CHEST , 4,16,64, OP.rockGt.mat(MT.STONES.SkyStone, 1)); addLoot(ChestGenHooks.PYRAMID_JUNGLE_CHEST , 3, 4,16, OP.ingot.mat(MT.Bronze, 1)); addLoot(ChestGenHooks.PYRAMID_JUNGLE_CHEST , 3, 4,16, OP.plate.mat(MT.Bronze, 1)); addLoot(ChestGenHooks.PYRAMID_JUNGLE_CHEST , 3,16,64, OP.toolHeadArrow.mat(MT.Bronze, 1));