diff --git a/config/betterquesting/DefaultQuests/QuestLines/0.json b/config/betterquesting/DefaultQuests/QuestLines/0.json index 3e378fe09..8611fc147 100644 --- a/config/betterquesting/DefaultQuests/QuestLines/0.json +++ b/config/betterquesting/DefaultQuests/QuestLines/0.json @@ -156,7 +156,7 @@ "id:3": 22, "sizeX:3": 48, "sizeY:3": 48, - "x:3": 420, + "x:3": 456, "y:3": 83 }, "21:10": { @@ -170,7 +170,7 @@ "id:3": 25, "sizeX:3": 40, "sizeY:3": 40, - "x:3": 424, + "x:3": 460, "y:3": -21 }, "23:10": { @@ -191,7 +191,7 @@ "id:3": 30, "sizeX:3": 48, "sizeY:3": 48, - "x:3": 420, + "x:3": 456, "y:3": -89 }, "26:10": { @@ -205,7 +205,7 @@ "id:3": 74, "sizeX:3": 24, "sizeY:3": 24, - "x:3": 432, + "x:3": 468, "y:3": 356 }, "28:10": { @@ -240,8 +240,8 @@ "id:3": 89, "sizeX:3": 48, "sizeY:3": 48, - "x:3": 112, - "y:3": 36 + "x:3": 396, + "y:3": -25 }, "33:10": { "id:3": 90, @@ -254,28 +254,28 @@ "id:3": 91, "sizeX:3": 48, "sizeY:3": 48, - "x:3": 112, - "y:3": 128 + "x:3": 100, + "y:3": 43 }, "35:10": { "id:3": 93, "sizeX:3": 24, "sizeY:3": 24, - "x:3": 71, + "x:3": 84, "y:3": 260 }, "36:10": { "id:3": 106, "sizeX:3": 24, "sizeY:3": 24, - "x:3": 432, + "x:3": 468, "y:3": 304 }, "37:10": { "id:3": 107, "sizeX:3": 24, "sizeY:3": 24, - "x:3": 432, + "x:3": 468, "y:3": 249 }, "38:10": { @@ -303,7 +303,7 @@ "id:3": 129, "sizeX:3": 24, "sizeY:3": 24, - "x:3": 432, + "x:3": 468, "y:3": 39 }, "42:10": { @@ -317,8 +317,8 @@ "id:3": 149, "sizeX:3": 24, "sizeY:3": 24, - "x:3": 165, - "y:3": 95 + "x:3": 178, + "y:3": 55 }, "44:10": { "id:3": 187, @@ -331,15 +331,15 @@ "id:3": 213, "sizeX:3": 24, "sizeY:3": 24, - "x:3": 476, - "y:3": -40 + "x:3": 512, + "y:3": -13 }, "46:10": { "id:3": 366, "sizeX:3": 24, "sizeY:3": 24, - "x:3": 256, - "y:3": -21 + "x:3": 40, + "y:3": 356 }, "47:10": { "id:3": 441, @@ -352,8 +352,8 @@ "id:3": 650, "sizeX:3": 48, "sizeY:3": 48, - "x:3": 536, - "y:3": -52 + "x:3": 555, + "y:3": -25 }, "49:10": { "id:3": 656, @@ -380,22 +380,22 @@ "id:3": 722, "sizeX:3": 24, "sizeY:3": 24, - "x:3": 388, + "x:3": 512, "y:3": -56 }, "53:10": { "id:3": 723, "sizeX:3": 24, "sizeY:3": 24, - "x:3": 388, - "y:3": -28 + "x:3": 567, + "y:3": -56 }, "54:10": { "id:3": 738, "sizeX:3": 24, "sizeY:3": 24, - "x:3": 388, - "y:3": 28 + "x:3": 567, + "y:3": 32 }, "55:10": { "id:3": 763, @@ -408,8 +408,8 @@ "id:3": 861, "sizeX:3": 24, "sizeY:3": 24, - "x:3": 388, - "y:3": 0 + "x:3": 512, + "y:3": 32 }, "57:10": { "id:3": 862, @@ -450,8 +450,8 @@ "id:3": 456863075, "sizeX:3": 32, "sizeY:3": 32, - "x:3": 28, - "y:3": 256 + "x:3": 36, + "y:3": 240 }, "63:10": { "id:3": 530373325, @@ -471,15 +471,15 @@ "id:3": 744003683, "sizeX:3": 24, "sizeY:3": 24, - "x:3": 71, + "x:3": 84, "y:3": 300 }, "66:10": { "id:3": 1107188354, "sizeX:3": 32, "sizeY:3": 32, - "x:3": 176, - "y:3": 264 + "x:3": 166, + "y:3": 296 }, "67:10": { "id:3": 1241306929, @@ -499,7 +499,7 @@ "id:3": 1580653524, "sizeX:3": 24, "sizeY:3": 24, - "x:3": 144, + "x:3": 127, "y:3": 300 }, "70:10": { @@ -520,8 +520,8 @@ "id:3": 1677924297, "sizeX:3": 24, "sizeY:3": 24, - "x:3": 476, - "y:3": -12 + "x:3": 424, + "y:3": -56 }, "73:10": { "id:3": 1767849062, @@ -534,8 +534,8 @@ "id:3": 1867050010, "sizeX:3": 24, "sizeY:3": 24, - "x:3": 476, - "y:3": 16 + "x:3": 424, + "y:3": 32 }, "75:10": { "id:3": 1902566957, @@ -555,7 +555,7 @@ "id:3": 2081939483, "sizeX:3": 24, "sizeY:3": 24, - "x:3": 71, + "x:3": 84, "y:3": 344 } } diff --git a/config/betterquesting/DefaultQuests/QuestLines/1.json b/config/betterquesting/DefaultQuests/QuestLines/1.json index 93e39e43d..a46b2d6d5 100644 --- a/config/betterquesting/DefaultQuests/QuestLines/1.json +++ b/config/betterquesting/DefaultQuests/QuestLines/1.json @@ -430,15 +430,15 @@ "id:3": 518, "sizeX:3": 24, "sizeY:3": 24, - "x:3": -174, - "y:3": -60 + "x:3": -175, + "y:3": -72 }, "60:10": { "id:3": 535, "sizeX:3": 24, "sizeY:3": 24, - "x:3": -204, - "y:3": -90 + "x:3": -228, + "y:3": -72 }, "61:10": { "id:3": 536, diff --git a/config/betterquesting/DefaultQuests/Quests/0/117.json b/config/betterquesting/DefaultQuests/Quests/0/117.json index 397183a93..e8c7fd10f 100644 --- a/config/betterquesting/DefaultQuests/Quests/0/117.json +++ b/config/betterquesting/DefaultQuests/Quests/0/117.json @@ -1,6 +1,11 @@ { + "preRequisiteTypes:7": [ + 0, + 2 + ], "preRequisites:11": [ - 58115670 + 58115670, + 1677924297 ], "properties:10": { "betterquesting:10": { @@ -12,6 +17,7 @@ }, "ignoresview:1": 0, "name:8": "susy.quest.db.117.title", + "questlogic:8": "OR", "visibility:8": "ALWAYS" } }, diff --git a/config/betterquesting/DefaultQuests/Quests/0/1958019111.json b/config/betterquesting/DefaultQuests/Quests/0/1958019111.json index 0f33493a2..eab43f1a7 100644 --- a/config/betterquesting/DefaultQuests/Quests/0/1958019111.json +++ b/config/betterquesting/DefaultQuests/Quests/0/1958019111.json @@ -1,7 +1,6 @@ { "preRequisites:11": [ - 1107188354, - 1580653524 + 1107188354 ], "properties:10": { "betterquesting:10": { diff --git a/config/betterquesting/DefaultQuests/Quests/0/366.json b/config/betterquesting/DefaultQuests/Quests/0/366.json index 112e6228d..7257d9b01 100644 --- a/config/betterquesting/DefaultQuests/Quests/0/366.json +++ b/config/betterquesting/DefaultQuests/Quests/0/366.json @@ -1,6 +1,6 @@ { "preRequisites:11": [ - 21 + 87 ], "properties:10": { "betterquesting:10": { diff --git a/config/betterquesting/DefaultQuests/Quests/0/58115670.json b/config/betterquesting/DefaultQuests/Quests/0/58115670.json index 3a5393375..6acad7749 100644 --- a/config/betterquesting/DefaultQuests/Quests/0/58115670.json +++ b/config/betterquesting/DefaultQuests/Quests/0/58115670.json @@ -11,6 +11,7 @@ }, "ignoresview:1": 0, "name:8": "susy.quest.db.58115670.title", + "tasklogic:8": "OR", "visibility:8": "ALWAYS" } }, diff --git a/config/betterquesting/DefaultQuests/Quests/0/744003683.json b/config/betterquesting/DefaultQuests/Quests/0/744003683.json index 1d37cbb7f..b51ff9169 100644 --- a/config/betterquesting/DefaultQuests/Quests/0/744003683.json +++ b/config/betterquesting/DefaultQuests/Quests/0/744003683.json @@ -1,7 +1,6 @@ { "preRequisites:11": [ - 87, - 456863075 + 87 ], "properties:10": { "betterquesting:10": { diff --git a/config/betterquesting/DefaultQuests/Quests/0/89.json b/config/betterquesting/DefaultQuests/Quests/0/89.json index 4152c792b..4f4b5f331 100644 --- a/config/betterquesting/DefaultQuests/Quests/0/89.json +++ b/config/betterquesting/DefaultQuests/Quests/0/89.json @@ -1,6 +1,6 @@ { "preRequisites:11": [ - 149 + 25 ], "properties:10": { "betterquesting:10": { diff --git a/config/betterquesting/DefaultQuests/Quests/1/10.json b/config/betterquesting/DefaultQuests/Quests/1/10.json index c2cd467d1..8d4b62858 100644 --- a/config/betterquesting/DefaultQuests/Quests/1/10.json +++ b/config/betterquesting/DefaultQuests/Quests/1/10.json @@ -1,6 +1,6 @@ { "preRequisites:11": [ - 9 + 12 ], "properties:10": { "betterquesting:10": { diff --git a/config/betterquesting/DefaultQuests/Quests/1/34.json b/config/betterquesting/DefaultQuests/Quests/1/34.json index 939965976..58cb76fe7 100644 --- a/config/betterquesting/DefaultQuests/Quests/1/34.json +++ b/config/betterquesting/DefaultQuests/Quests/1/34.json @@ -24,26 +24,39 @@ "requiredItems:9": { "0:10": { "Count:3": 1, - "Damage:2": 16, + "Damage:2": 18, "id:8": "gregtech:meta_item_1" }, "1:10": { "Count:3": 1, - "Damage:2": 12, + "Damage:2": 17, "id:8": "gregtech:meta_item_1" - }, - "2:10": { + } + }, + "taskID:8": "bq_standard:retrieval" + }, + "1:10": { + "entryLogic:8": "AND", + "index:3": 1, + "partialMatch:1": 1, + "requiredItems:9": { + "0:10": { "Count:3": 1, "Damage:2": 13, "id:8": "gregtech:meta_item_1" }, - "3:10": { + "1:10": { "Count:3": 1, - "Damage:2": 17, + "Damage:2": 23, + "id:8": "gregtech:meta_item_1" + }, + "2:10": { + "Count:3": 1, + "Damage:2": 16, "id:8": "gregtech:meta_item_1" } }, - "taskID:8": "bq_standard:retrieval" + "taskID:8": "bq_standard:optional_retrieval" } } } \ No newline at end of file diff --git a/config/betterquesting/DefaultQuests/Quests/1/518.json b/config/betterquesting/DefaultQuests/Quests/1/518.json index a904f0c6f..f7e0e0d53 100644 --- a/config/betterquesting/DefaultQuests/Quests/1/518.json +++ b/config/betterquesting/DefaultQuests/Quests/1/518.json @@ -1,6 +1,6 @@ { "preRequisites:11": [ - 32 + 97148971 ], "properties:10": { "betterquesting:10": { diff --git a/config/betterquesting/DefaultQuests/Quests/25/150.json b/config/betterquesting/DefaultQuests/Quests/25/150.json index 08661cea0..4a70a30dc 100644 --- a/config/betterquesting/DefaultQuests/Quests/25/150.json +++ b/config/betterquesting/DefaultQuests/Quests/25/150.json @@ -22,6 +22,7 @@ "requiredItems:9": { "0:10": { "Count:3": 1, + "OreDict:8": "chest", "id:8": "minecraft:chest" } }, diff --git a/config/betterquesting/DefaultQuests/Quests/5/756.json b/config/betterquesting/DefaultQuests/Quests/5/756.json index eaca1c172..65a4c14fa 100644 --- a/config/betterquesting/DefaultQuests/Quests/5/756.json +++ b/config/betterquesting/DefaultQuests/Quests/5/756.json @@ -25,7 +25,7 @@ "0:10": { "Count:3": 64, "Damage:2": 15014, - "id:8": "gregtech:meta_wire_fine" + "id:8": "gregtech:meta_thread" } }, "taskID:8": "bq_standard:retrieval" diff --git a/config/betterquesting/DefaultQuests/Quests/MultipleQuestLine/602.json b/config/betterquesting/DefaultQuests/Quests/MultipleQuestLine/602.json index 0d8cd61ba..c4cfbb2f3 100644 --- a/config/betterquesting/DefaultQuests/Quests/MultipleQuestLine/602.json +++ b/config/betterquesting/DefaultQuests/Quests/MultipleQuestLine/602.json @@ -1,6 +1,6 @@ { "preRequisites:11": [ - 124 + 126 ], "properties:10": { "betterquesting:10": { diff --git a/config/betterquesting/resources/supersymmetry/lang/en_us.lang b/config/betterquesting/resources/supersymmetry/lang/en_us.lang index d86ffae15..9823ee13f 100644 --- a/config/betterquesting/resources/supersymmetry/lang/en_us.lang +++ b/config/betterquesting/resources/supersymmetry/lang/en_us.lang @@ -81,7 +81,7 @@ susy.quest.db.11.desc=§6Leather §rneeds to be boiled to make §6Treated Leathe susy.quest.db.12.title=Stone Tools susy.quest.db.12.desc=Now, you should be able to craft your first §7tools§r in your own crafting inventory! A pickaxe and an axe should suffice for now, although a shovel is nice for getting through dirt.%n%nNote: To find the recipe for stone tools, you should check the recipe for their iron variant (or simply by pressing §6[R]§r on the items on the right-hand side) and turn to the §6last§r page of the JEI. susy.quest.db.13.title=Copper -susy.quest.db.13.desc=Copper is found in §6Chalcopyrite, Chalcocite, Malachite, Bornite§f, or §6Tetrahedrite §fveins. Copper can be found pretty much everywhere in the Earth's crust, and even in the deeper layers. Sometimes you might even find some §6Native Copper Deposits§r, which contains coppers in its elemental form.%n%nIf you are having trouble finding a specific deposit, look it up in the JEI database, you will find a page showing where it is found. %n%nLet's start by getting 30 copper ingots.%n%nFinding a §6Tiny Pile of Copper Dust §ron the ground means that there is a deposit under it.%n%n§0§9§e§d§c§b§l§c§c§lAs a very important rule of thumb, quest retrieval numbers are arbitrary. You can follow the suggestion here, but trust me when I say you will need a whole lot more Copper. +susy.quest.db.13.desc=Copper can be found pretty much everywhere in the Earth's crust, and even in the deeper layers. Sometimes you might even find some §6Native Copper Deposits§r, which contains coppers in its elemental form.%n%nYou can get coppers from §eChalcopyrite§r, §8Chalcocite§r, §2Malachite§r, §6Bornite§r, or §4Tetrahedrite§r veins. However, the Primitive Smelter can only process ores with a single type of metal inside, which means that §c§lONLY§r Chalcocite and Malachite can be processed by this.%n%nFinding a §6Tiny Pile of Copper Dust §ron the ground means that there is a deposit under it. If you are having trouble finding a specific deposit, look it up in the JEI database, you will find a page showing where it is found. %n%nLet's start by getting 30 copper ingots.%n%n§c§lAs a very important rule of thumb, quest retrieval numbers are arbitrary. You can follow the suggestion here, but trust me when I say you will need a whole lot more Copper. susy.quest.db.14.title=Tin susy.quest.db.14.desc=Tin can be found in §6Cassiterite Sand§r and §6Cassiterite§f§6 Ore§f veins. You can look them up in the JEI database to see where you can find them.%n%nTin is a silvery-coloured metal. Tin is soft enough to be cut with little force and a bar of tin can be bent with little effort. %n§6%n§l§rOre deposits cover a surface of 20 by 20 meters across. Each deposit can contain up to 5,000 ingots worth of ore. %n%n§0§9§e§d§c§b§l§c§c§lAs a very important rule of thumb, quest retrieval numbers are arbitrary. You can follow the suggestion here, but trust me when I say you will need a lot more Tin and especially Copper. susy.quest.db.15.title=Macerator V0.1 Alpha @@ -787,7 +787,7 @@ susy.quest.db.364.desc=No Description susy.quest.db.365.title=118 | Oganesson susy.quest.db.365.desc=No Description susy.quest.db.366.title=Home Block -susy.quest.db.366.desc=You can craft §6home blocks §rusing a block of smooth stone and a file.%n %nThe home block has 4 variants, you can cycle through them by putting them in a crafting table.%n +susy.quest.db.366.desc=You can craft §6home blocks §rusing a block of smooth stone and a hammer. You can reset your spawn by R-clicking them.%n%nThe home block has 4 variants, you can cycle through them by putting them in a crafting table, or using a chisel if you have aquired some iron. susy.quest.db.367.title=Catalysts susy.quest.db.367.desc=A §6catalyst§r is a substance that speeds up a chemical reaction without being consumed in the process.%n%nThere are §6catalyst beds, pellets, and dusts§r, depending on the machine used. §cTiered§r catalysts can affect speed and energy consumption, similarly to the way overclocking can increase the efficiency of a machine.%n%nCatalysts can be used to help §6speed up processes, or even make them cheaper§r, this chapter will serve as a list of useful or commonly used catalysts. susy.quest.db.368.title=Annealed Copper @@ -1831,7 +1831,7 @@ susy.quest.db.18799598.desc=The §6Soaking Pot§r can be used to... soak things. susy.quest.db.58115670.title=Stone Oven susy.quest.db.58115670.desc=The §6Stone Oven§r contains a hollow chamber, where the materials are exposed to a hot environment in a controlled way.%n%nNot like kilns, although working at a much lower temperature, ovens can be used to heat food to a desired temperature, and thus can be used for §6cooking§r. The better control of temperature also makes ovens possible to §6dry things§r like a drying rack.%n%nAdditionally, ovens can dry §4Mud Bricks§r into §eAdobe Bricks§r, which can be used to build the §6Primitive Baking Oven§r, a type of oven specially designed for cooking food. Check corresponding quests for more information.%n%nTo use a stone oven, you need to right click the lower/upper part of the oven to insert fuels/items that you want to smelt, and then ignite it to start the process. susy.quest.db.97148971.title=Primitive Smelter -susy.quest.db.97148971.desc=The §6Primitive Smelter§r is a primitive multiblock furnace capable of §4Smelting Metals§r and §eAlloys§r.%n%nIt can be used to extract certain metals, such as §6Copper§r, §7Tin§r, §5Lead§r, and §7Zinc§r, from their ores through decomposition, driving off other elements as §8gases§r or §8slag§r and leaving the metal behind.%n%nAdditionally, it can produce some basic alloys, such as §6Bronze§r or §eBrass§r, from their components.%n%nThe speed of the §6Primitive Smelter§r depends on the §7Reductant§r (which also serves as §cFuel§r) it is using, as well as the form of the ingredients used for smelting. Generally, the §4dust§r form of the ingredients takes the least time.%n%nCheck the JEI page for more infomation. +susy.quest.db.97148971.desc=The §6Primitive Smelter§r is a primitive multiblock furnace capable of §4Smelting Metals§r and §eAlloys§r.%n%nIt can be used to extract certain metals, such as §6Copper§r, §7Tin§r, §5Lead§r, and §7Zinc§r, from their ores through decomposition, driving off other elements as §8gases§r or §8slag§r and leaving the metal behind.%n%nAdditionally, it can produce some basic alloys, such as §6Bronze§r, §cPotin§r, or §eBrass§r, from their components.%n%nThe speed of the §6Primitive Smelter§r depends on the §7Reductant§r (which also serves as §cFuel§r) it is using, as well as the form of the ingredients used for smelting. Generally, the §4dust§r form of the ingredients takes the least time.%n%nCheck the JEI page for more infomation. susy.quest.db.302928877.title=Coke Oven Brick susy.quest.db.302928877.desc=By mixing §bClays§r and §eSands§r, you created a new kind of clay which, after forming and firing, creates bricks that are quite air-tight, making them suitable to be used as §6Coke Oven Bricks§r. susy.quest.db.456863075.title=Lighting a Fire diff --git a/config/bogosorter/config.json b/config/bogosorter/config.json index cf6dadf6b..ccd6c4a78 100644 --- a/config/bogosorter/config.json +++ b/config/bogosorter/config.json @@ -1,12 +1,11 @@ { "General": { "enableAutoRefill": true, - "refillDmgThreshold": 1, + "refillDmgThreshold": 0, "enableHotbarSwap": true, "sortSound": "minecraft:ui.button.click", "buttonColor": "#ffffffff", - "_comment": "By setting the chance below to 0 you agree to have no humor and that you are boring.", - "baseBogoChance": 0.01 + "_comment": "By setting the chance below to 0 you agree to have no humor and that you are boring." }, "ItemSortRules": [ { diff --git a/config/pyrotech/module.Ignition.cfg b/config/pyrotech/module.Ignition.cfg index e76209bfe..b1559d017 100755 --- a/config/pyrotech/module.Ignition.cfg +++ b/config/pyrotech/module.Ignition.cfg @@ -114,7 +114,7 @@ general { # Default: 20 # Min: 0 # Max: 2147483647 - I:BOW_DRILL_USE_DURATION_TICKS=80 + I:BOW_DRILL_USE_DURATION_TICKS=20 # Defines how many cooldown ticks applied after using the durable bow drill. # Default: 20 @@ -132,7 +132,7 @@ general { # Default: 20 # Min: 0 # Max: 2147483647 - I:DURABLE_BOW_DRILL_USE_DURATION_TICKS=60 + I:DURABLE_BOW_DRILL_USE_DURATION_TICKS=5 # Defines how many cooldown ticks applied after using the flint and tinder. # Default: 20 @@ -150,7 +150,7 @@ general { # Default: 80 # Min: 0 # Max: 2147483647 - I:FLINT_AND_TINDER_USE_DURATION_TICKS=80 + I:FLINT_AND_TINDER_USE_DURATION_TICKS=40 # How many ticks the player must wait before using a matchstick again. # Default: 40 diff --git a/config/quark.cfg b/config/quark.cfg index 0eb3a835e..4f2ed3f67 100644 --- a/config/quark.cfg +++ b/config/quark.cfg @@ -782,7 +782,7 @@ experimental { management { - B:"Automatic tool restock"=true + B:"Automatic tool restock"=false B:"Better craft shifting"=true B:"Change hotbar keybind"=true B:"Chest buttons"=true diff --git a/config/visualores.cfg b/config/visualores.cfg index b25ca6c46..d0bea9ca7 100644 --- a/config/visualores.cfg +++ b/config/visualores.cfg @@ -50,7 +50,7 @@ general { # The size, in pixels, of ore icons on the map # Min: 4 # Max: 2147483647 - I:oreIconSize=32 + I:oreIconSize=64 # The string prepending ore names in the ore vein tooltip S:oreNamePrefix=- @@ -58,7 +58,7 @@ general { # The map scale at which displayed ores will stop scaling. # Min: 0.1 # Max: 16.0 - D:oreScaleStop=1.0 + D:oreScaleStop=4.0 } journeymap { diff --git a/groovy/classes/ChangeFlags.groovy b/groovy/classes/ChangeFlags.groovy index e6fdb8ee3..4a089bd54 100644 --- a/groovy/classes/ChangeFlags.groovy +++ b/groovy/classes/ChangeFlags.groovy @@ -143,6 +143,7 @@ class ChangeFlags { BisphenolA.addFlags("no_unification"); Phosphorus.addFlags("no_smelting"); Tetrahedrite.addFlags("no_smelting"); + Gold.addFlags("generate_gear"); /* ManganesePhosphide.addFlags("no_smashing", "no_smelting") diff --git a/groovy/material/FirstDegreeMaterials.groovy b/groovy/material/FirstDegreeMaterials.groovy index c8f7a7266..556e98b9a 100644 --- a/groovy/material/FirstDegreeMaterials.groovy +++ b/groovy/material/FirstDegreeMaterials.groovy @@ -162,6 +162,13 @@ public class FirstDegreeMaterials { .colorAverage() .build(); + CobaltMatte = new Material.Builder(8106, SuSyUtility.susyId("cobalt_matte")) + .ingot() + .flags(NO_UNIFICATION) + .color(0x7070d6) + .build() + .setFormula("(Co)(?)", true) + AmmoniumNitrate = new Material.Builder(8107, SuSyUtility.susyId('ammonium_nitrate')) .dust() .components(Nitrogen * 2, Oxygen * 3, Hydrogen * 4) @@ -3423,13 +3430,13 @@ public class FirstDegreeMaterials { .components(Argon, Water) .colorAverage() .build() - .setFormula("(Ar)(H20)") + .setFormula("(Ar)(H2O)", true) ArgonHydrogenMixture = new Material.Builder(8628, SuSyUtility.susyId("argon_hydrogen_mixture")) .gas() .components(Argon, Hydrogen * 4) .color(0x20a291) .build() - .setFormula("(Ar)(H)") + .setFormula("(Ar)(H)", true) } } diff --git a/groovy/material/SecondDegreeMaterials.groovy b/groovy/material/SecondDegreeMaterials.groovy index 315996693..caa7aec13 100644 --- a/groovy/material/SecondDegreeMaterials.groovy +++ b/groovy/material/SecondDegreeMaterials.groovy @@ -719,13 +719,13 @@ public class SecondDegreeMaterials { .components(Argon, Hydrogen * 4, HydrogenChloride) .colorAverage() .build() - .setFormula("(Ar)(HCl)(H)"); + .setFormula("(Ar)(HCl)(H)", true); AmmoniacalArgonHydrogenMixture = new Material.Builder(8627, SuSyUtility.susyId("ammoniacal_argon_hydrogen_mixture")) .gas() .components(Argon, Hydrogen * 4, Ammonia) .colorAverage() .build() - .setFormula("(Ar)(NH3)(H)") + .setFormula("(Ar)(NH3)(H)", true) } } diff --git a/groovy/material/ThermodynamicsMaterials.groovy b/groovy/material/ThermodynamicsMaterials.groovy index 1b17c57f0..3b4ce4c09 100755 --- a/groovy/material/ThermodynamicsMaterials.groovy +++ b/groovy/material/ThermodynamicsMaterials.groovy @@ -487,20 +487,20 @@ class ThermodynamicsMaterials { .components(Argon, Hydrogen, Ammonia) .colorAverage() .build() - .setFormula("(Ar)(NH3)(H)") + .setFormula("(Ar)(NH3)(H)", true) ColdArgonHydrogenMixture = new Material.Builder(22845, SuSyUtility.susyId('cold_argon_hydrogen_mixture')) .gas(new FluidBuilder().temperature(220)) .components(Argon, Hydrogen) .color(0x20a591) .build() - .setFormula("(Ar)(H)") + .setFormula("(Ar)(H)", true) PartiallyLiquefiedArgonHydrogenMixture = new Material.Builder(22846, SuSyUtility.susyId('partially_liquefied_argon_hydrogen_mixture')) .liquid(new FluidBuilder().temperature(73)) .components(Argon, Hydrogen) .color(0x20aa91) .build() - .setFormula("(Ar)(H)") + .setFormula("(Ar)(H)", true) } } \ No newline at end of file diff --git a/groovy/material/UnknownCompositionMaterials.groovy b/groovy/material/UnknownCompositionMaterials.groovy index b21c520b0..86c1a1d93 100644 --- a/groovy/material/UnknownCompositionMaterials.groovy +++ b/groovy/material/UnknownCompositionMaterials.groovy @@ -1141,7 +1141,7 @@ public class UnknownCompositionMaterials { .color(0x74561d) .build(); - TitanylSulfateSolution.setFormula('(H20)(TiO[SO4])(?)', true); + TitanylSulfateSolution.setFormula('(H2O)(TiO[SO4])(?)', true); AcidicWastewater = new Material.Builder(4233, SuSyUtility.susyId('acidic_wastewater')) .liquid(new FluidBuilder().attribute(FluidAttributes.ACID)) @@ -1937,11 +1937,5 @@ public class UnknownCompositionMaterials { .dust() .color(0x631a87) .build() - - CobaltMatte = new Material.Builder(4424, SuSyUtility.susyId("cobalt_matte")) - .ingot() - .flags(NO_UNIFICATION) - .color(0x7070d6) - .build() } } diff --git a/groovy/postInit/gameplay/Invasions.groovy b/groovy/postInit/gameplay/Invasions.groovy index a0ccc18f3..4152768df 100644 --- a/groovy/postInit/gameplay/Invasions.groovy +++ b/groovy/postInit/gameplay/Invasions.groovy @@ -5,7 +5,7 @@ import net.minecraft.potion.PotionEffect; import techguns.entities.npcs.Bandit; new MobHordeEvent((player) -> {return new EntityZombie(player.world);}, 5, 10, "zombie_medium") - .setAdvancementUnlock(new ResourceLocation("gregtech:steam/4_bronze_boiler")) + .setAdvancementUnlock(new ResourceLocation("gregtech:steam/1_first_tools")) .setNightOnly(true) .setTimer(144000, 216000) // 2 - 3 hours diff --git a/groovy/postInit/mod/GregTech.groovy b/groovy/postInit/mod/GregTech.groovy index d93d1d3eb..70d28df85 100644 --- a/groovy/postInit/mod/GregTech.groovy +++ b/groovy/postInit/mod/GregTech.groovy @@ -349,13 +349,13 @@ RecyclingHelper.replaceShaped("gregtech:gregtech.machine.macerator.lv", metaitem ]) RecyclingHelper.replaceShaped("gregtech:gregtech.machine.cutter.lv", metaitem('gregtech:cutter.lv'), [ - [metaitem('cableGtSingleTin'), ore('circuitLv'), item('minecraft:glass')], + [metaitem('cableGtSingleTin'), ore('circuitLv'), ore('blockGlass')], [metaitem('conveyor.module.lv'), metaitem('gregtech:hull.lv'), metaitem('toolHeadBuzzSawSteel')], [ore('circuitLv'), metaitem('cableGtSingleTin'), metaitem('electric.motor.lv')] ]) RecyclingHelper.replaceShaped("gregtech:gregtech.machine.cutter.mv", metaitem('gregtech:cutter.mv'), [ - [metaitem('cableGtSingleCopper'), ore('circuitMv'), item('minecraft:glass')], + [metaitem('cableGtSingleCopper'), ore('circuitMv'), ore('blockGlass')], [metaitem('conveyor.module.mv'), metaitem('gregtech:hull.mv'), metaitem('toolHeadBuzzSawAluminium')], [ore('circuitMv'), metaitem('cableGtSingleCopper'), metaitem('electric.motor.mv')] ]) @@ -367,13 +367,13 @@ RecyclingHelper.replaceShaped("gregtech:gregtech.machine.cutter.hv", metaitem('g ]) RecyclingHelper.replaceShaped("gregtech:gregtech.machine.electrolyzer.lv", metaitem('gregtech:electrolyzer.lv'), [ - [metaitem('wireGtSingleSilver'), item('minecraft:glass'), metaitem('wireGtSingleSilver')], + [metaitem('wireGtSingleSilver'), ore('blockGlass'), metaitem('wireGtSingleSilver')], [metaitem('wireGtSingleSilver'), metaitem('gregtech:hull.lv'), metaitem('wireGtSingleSilver')], [ore('circuitLv'), metaitem('cableGtSingleTin'), ore('circuitLv')] ]) RecyclingHelper.replaceShaped("gregtech:gregtech.machine.electrolyzer.mv", metaitem('gregtech:electrolyzer.mv'), [ - [metaitem('wireGtSingleGold'), item('minecraft:glass'), metaitem('wireGtSingleGold')], + [metaitem('wireGtSingleGold'), ore('blockGlass'), metaitem('wireGtSingleGold')], [metaitem('wireGtSingleGold'), metaitem('gregtech:hull.mv'), metaitem('wireGtSingleGold')], [ore('circuitMv'), metaitem('cableGtSingleCopper'), ore('circuitMv')] ]) @@ -1418,7 +1418,7 @@ mods.gregtech.assembler.removeByInput(7, [metaitem('hull.ulv'), item('minecraft: mods.gregtech.assembler.removeByInput(7, [metaitem('hull.ulv'), item('minecraft:glass'), metaitem('circuit.integrated').withNbt(["Configuration": 1])], [fluid('polybenzimidazole') * 4]) crafting.addShaped("gregtech:fluid_hatch.import.ulv", metaitem('fluid_hatch.import.ulv'), [ - [null, item('minecraft:glass'), null], + [null, ore('blockGlass'), null], [null, metaitem('hull.ulv'), null], [null, null, null] ]) @@ -1432,7 +1432,7 @@ mods.gregtech.assembler.removeByInput(7, [metaitem('hull.ulv'), item('minecraft: crafting.addShaped("gregtech:fluid_hatch.export.ulv", metaitem('fluid_hatch.export.ulv'), [ [null, null, null], [null, metaitem('hull.ulv'), null], - [null, item('minecraft:glass'), null] + [null, ore('blockGlass'), null] ]) // Black Granite Dust * 1 diff --git a/groovy/postInit/mod/ImmersiveRailroading.groovy b/groovy/postInit/mod/ImmersiveRailroading.groovy index e48b5e2d9..d206910ee 100755 --- a/groovy/postInit/mod/ImmersiveRailroading.groovy +++ b/groovy/postInit/mod/ImmersiveRailroading.groovy @@ -1,10 +1,11 @@ -log.infoMC("Running ImmersiveRailroading.groovy...") +import cam72cam.immersiverailroading.IRItems +import cam72cam.mod.serialization.TagCompound import globals.Globals -import supersymmetry.api.recipes.SuSyRecipeMaps; -import cam72cam.immersiverailroading.IRItems; -import cam72cam.mod.serialization.TagCompound; -import trackapi.lib.Gauges; +import supersymmetry.api.recipes.SuSyRecipeMaps +import trackapi.lib.Gauges + +log.infoMC("Running ImmersiveRailroading.groovy...") ArrayList name_removals = [ "immersiverailroading:item_manual", @@ -204,7 +205,7 @@ Globals.solders.each { key, val -> .inputs(metaitem('electric.motor.lv') * 4) .inputs(metaitem('electric.piston.lv') * 4) .inputs(item('gregtech:boiler_firebox_casing', 1) * 2) - .inputs(item('minecraft:glass') * 4) + .inputs(ore('blockGlass') * 4) .inputs(ore('plateSteel') * 16) .inputs(ore('stickLongSteel') * 8) .fluidInputs(fluid(key) * (val * 10)) @@ -247,7 +248,7 @@ Globals.solders.each { key, val -> .inputs(metaitem('minecart_wheels.steel') * 4) .inputs(ore('plateSteel') * 20) .inputs(ore('stickLongSteel') * 6) - .inputs(item('minecraft:glass') * 4) + .inputs(ore('blockGlass') * 4) .fluidInputs(fluid(key) * (val * 10)) .outputs(is3.internal) .EUt(30) diff --git a/groovy/postInit/mod/Pyrotech.groovy b/groovy/postInit/mod/Pyrotech.groovy index 7dc0c97f0..91f40db96 100644 --- a/groovy/postInit/mod/Pyrotech.groovy +++ b/groovy/postInit/mod/Pyrotech.groovy @@ -1,14 +1,28 @@ package postInit.mod -import com.codetaylor.mc.pyrotech.modules.tech.basic.ModuleTechBasic; -import com.codetaylor.mc.pyrotech.modules.tech.basic.block.BlockKilnPit; -import com.cleanroommc.groovyscript.api.IIngredient; -import net.minecraft.util.EnumHand; -import net.minecraftforge.event.entity.player.PlayerInteractEvent; -import net.minecraftforge.event.world.BlockEvent; +import com.cleanroommc.groovyscript.api.IIngredient +import com.codetaylor.mc.pyrotech.library.spi.block.IBlockIgnitableWithIgniterItem +import com.codetaylor.mc.pyrotech.modules.tech.basic.ModuleTechBasic +import com.codetaylor.mc.pyrotech.modules.tech.basic.block.BlockKilnPit +import globals.Globals +import globals.RecyclingHelper +import gregtech.api.items.metaitem.MetaItem +import gregtech.api.items.metaitem.stats.IItemBehaviour +import gregtech.api.util.GTUtility +import gregtech.common.items.behaviors.LighterBehaviour +import net.minecraft.util.EnumHand +import net.minecraftforge.event.entity.player.PlayerInteractEvent +import net.minecraftforge.event.world.BlockEvent +import net.minecraftforge.fml.common.eventhandler.Event log.infoMC("Running Pyrotech.groovy...") +SMELTER = recipemap('primitive_smelter') +ALLOY_SMELTER = recipemap('alloy_smelter') +CUTTER = recipemap('cutter') +ASSEMBLER = recipemap('assembler') +CHEMICAL_BATH = recipemap('chemical_bath') + // Make it easier to create a pit kiln event_manager.listen { PlayerInteractEvent.RightClickBlock event -> EnumFacing facing = event.getFace(); @@ -41,6 +55,42 @@ event_manager.listen { BlockEvent.HarvestDropsEvent event -> } } +// Allow igniting pyrotech furnaces with GT items +eventManager.listen { PlayerInteractEvent.RightClickBlock event -> + + World world = event.getWorld() + BlockPos pos = event.getPos() + EnumFacing facing = event.getFace() + EntityPlayer player = event.getEntityPlayer() + IBlockState blockState = world.getBlockState(pos) + Block block = blockState.getBlock() + + if (block instanceof IBlockIgnitableWithIgniterItem) { + def ignitable = (IBlockIgnitableWithIgniterItem) block + ItemStack stack = event.getItemStack() + Item item = stack.getItem() + + if (item instanceof MetaItem) { + def metaItem = (MetaItem) item + for (IItemBehaviour behaviour : metaItem.getBehaviours(stack)) { + if (behaviour instanceof LighterBehaviour) { + NBTTagCompound compound = GTUtility.getOrCreateNbtCompound(stack) + if (stack.isItemEqual(metaitem('tool.matches')) // Special checks for non-openable igniters + || stack.isItemEqual(metaitem('tool.matchbox')) // WTF why is canOpen field privite + || compound.getBoolean(LighterBehaviour.LIGHTER_OPEN)) { + def lighterBehaviour = (LighterBehaviour) behaviour + lighterBehaviour.consumeFuel(player, stack) + ignitable.igniteWithIgniterItem(world, pos, blockState, facing) + event.setUseItem(Event.Result.DENY) + return + } + break + } + } + } + } +} + def name_removals = [ "pyrotech:crude_hammer", "pyrotech:tech/basic/worktable", @@ -55,7 +105,20 @@ def name_removals = [ "pyrotech:bucket/bucket_stone", "pyrotech:ignition/matchstick", "pyrotech:stone_hammer", + "pyrotech:flint_hammer", + "pyrotech:flint_hammer_durable", + "pyrotech:bone_hammer", + "pyrotech:bone_hammer_durable", + "pyrotech:iron_hammer", + "pyrotech:gold_hammer", + "pyrotech:diamond_hammer", "pyrotech:obsidian_hammer", + "pyrotech:tech/bloomery/tongs_stone", + "pyrotech:tech/bloomery/tongs_flint", + "pyrotech:tech/bloomery/tongs_bone", + "pyrotech:tech/bloomery/tongs_iron", + "pyrotech:tech/bloomery/tongs_gold", + "pyrotech:tech/bloomery/tongs_diamond", "pyrotech:tech/bloomery/tongs_obsidian", "pyrotech:tech/machine/sawmill_blade_stone", "pyrotech:tech/machine/sawmill_blade_flint", @@ -75,6 +138,13 @@ def name_removals = [ "pyrotech:tech/machine/mechanical_spreader", "pyrotech:tech/machine/stone_crucible", "pyrotech:tech/machine/brick_crucible", + "pyrotech:saddle", + "pyrotech:leather_helmet", + "pyrotech:leather_chestplate", + "pyrotech:leather_leggings", + "pyrotech:leather_boots", + "pyrotech:item_frame", + "pyrotech:book", "pyrotech:boat_spruce", "pyrotech:boat_oak", "pyrotech:boat_jungle", @@ -183,7 +253,20 @@ mods.jei.ingredient.yeet( item('pyrotech:anvil_iron_plated'), item('pyrotech:crude_hammer'), item('pyrotech:stone_hammer'), + item('pyrotech:flint_hammer'), + item('pyrotech:flint_hammer_durable'), + item('pyrotech:bone_hammer'), + item('pyrotech:bone_hammer_durable'), + item('pyrotech:iron_hammer'), + item('pyrotech:gold_hammer'), + item('pyrotech:diamond_hammer'), item('pyrotech:obsidian_hammer'), + item('pyrotech:tongs_stone'), + item('pyrotech:tongs_flint'), + item('pyrotech:tongs_bone'), + item('pyrotech:tongs_iron'), + item('pyrotech:tongs_gold'), + item('pyrotech:tongs_diamond'), item('pyrotech:tongs_obsidian'), item('pyrotech:sawmill_blade_stone'), item('pyrotech:sawmill_blade_flint'), @@ -212,6 +295,8 @@ mods.jei.ingredient.yeet( item('pyrotech:material', 5), item('pyrotech:material', 8), item('pyrotech:material', 9), + item('pyrotech:material', 18), + item('pyrotech:material', 19), item('pyrotech:material', 20), item('pyrotech:material', 22), item('pyrotech:material', 23), @@ -220,6 +305,7 @@ mods.jei.ingredient.yeet( item('pyrotech:material', 28), item('pyrotech:material', 31), item('pyrotech:material', 33), + item('pyrotech:material', 34), item('pyrotech:material', 35), item('pyrotech:material', 36), item('pyrotech:material', 37), @@ -497,10 +583,17 @@ crafting.replaceShaped("pyrotech:straw", item('pyrotech:material', 2) * 4, [ [item('pyrotech:material', 13), item('pyrotech:material', 13), item('pyrotech:material', 13)] ]) +// Durable Bow Drill +crafting.replaceShaped("pyrotech:bow_drill_durable", item('pyrotech:bow_drill_durable'), [ + [ore('string'), ore('stickWood'), ore('craftingToolKnife')], + [ore('string'), item('pyrotech:material', 39), ore('stickStone')], + [ore('string'), ore('stickWood'), null] +]) + // Durable spindle crafting.replaceShaped("pyrotech:bow_drill_durable_stick", item('pyrotech:material', 48), [ - [item('pyrotech:material', 39)], - [ore('stickLongWood')] + [ore('craftingToolKnife'), item('pyrotech:material', 39)], + [null, ore('stickLongWood')] ]) // Bow drill @@ -522,6 +615,144 @@ crafting.replaceShaped("pyrotech:bucket/bucket_clay_unfired", item('pyrotech:buc [null, metaitem('compressed.clay'), null] ]) +// Gears +RecyclingHelper.addShapeless("susy:cog_stone", item('pyrotech:cog_stone'), [metaitem('gearStone')]) +RecyclingHelper.replaceShapeless("pyrotech:tech/machine/cog_iron", item('pyrotech:cog_iron'), [metaitem('gearIron')]) +RecyclingHelper.replaceShapeless("pyrotech:tech/machine/cog_gold", item('pyrotech:cog_gold'), [metaitem('gearGold')]) +RecyclingHelper.replaceShapeless("pyrotech:tech/machine/cog_diamond", item('pyrotech:cog_diamond'), [metaitem('gearDiamond')]) + +oreDict.add("gearStone", item('pyrotech:cog_stone')) +oreDict.add("gearIron", item('pyrotech:cog_iron')) +oreDict.add("gearGold", item('pyrotech:cog_gold')) +oreDict.add("gearDiamond", item('pyrotech:cog_diamond')) + +crafting.addShapeless("susy:cog_stone_to_gear", metaitem('gearStone'), [item('pyrotech:cog_stone')]) +crafting.addShapeless("susy:cog_iron_to_gear", metaitem('gearIron'), [item('pyrotech:cog_iron')]) +crafting.addShapeless("susy:cog_gold_to_gear", metaitem('gearGold'), [item('pyrotech:cog_gold')]) +crafting.addShapeless("susy:cog_diamond_to_gear", metaitem('gearDiamond'), [item('pyrotech:cog_diamond')]) + +// Leather ingredients +// Leather Sheet +crafting.addShaped("susy:leather_sheet", item('pyrotech:material', 38), [ + [ore('craftingToolKnife')], + [ore('leather')] +]) + +CUTTER.recipeBuilder() + .inputs(ore('leather')) + .outputs(item('pyrotech:material', 38)) + .chancedOutput(item('pyrotech:material', 38), 5000, 0) + .duration(80) + .EUt(7) + .buildAndRegister() + +// Leather Strap +crafting.addShaped("susy:leather_strap", item('pyrotech:material', 39) * 2, [ + [ore('craftingToolKnife'), item('pyrotech:material', 38)] +]) + +CUTTER.recipeBuilder() + .inputs(item('pyrotech:material', 38)) + .outputs(item('pyrotech:material', 39) * 4) + .duration(50) + .EUt(7) + .buildAndRegister() + +// Leather Cord +crafting.addShaped("susy:leather_cord", item('pyrotech:material', 40), [ + [item('pyrotech:material', 39)], + [item('pyrotech:material', 39)], + [item('pyrotech:material', 39)] +]) + +ASSEMBLER.recipeBuilder() + .inputs(item('pyrotech:material', 39) * 2) + .outputs(item('pyrotech:material', 40)) + .duration(100) + .EUt(7) + .buildAndRegister() + +// Durable Leather ingredients +// Durable Leather +CHEMICAL_BATH.recipeBuilder() + .inputs(ore('leather')) + .fluidInputs(fluid('creosote') * 200) + .outputs(item('pyrotech:material', 41)) + .duration(100) + .EUt(30) + .buildAndRegister() + +// Durable Leather Sheet +crafting.addShaped("susy:leather_sheet_durable", item('pyrotech:material', 42), [ + [ore('craftingToolKnife')], + [ore('leatherDurable')] +]) + +CUTTER.recipeBuilder() + .inputs(ore('leatherDurable')) + .outputs(item('pyrotech:material', 42)) + .chancedOutput(item('pyrotech:material', 42), 5000, 0) + .duration(100) + .EUt(16) + .buildAndRegister() + +CHEMICAL_BATH.recipeBuilder() + .inputs(item('pyrotech:material', 38)) + .fluidInputs(fluid('creosote') * 200) + .outputs(item('pyrotech:material', 42)) + .duration(80) + .EUt(30) + .buildAndRegister() + +// Durable Leather Strap +crafting.addShaped("susy:leather_strap_durable", item('pyrotech:material', 43) * 2, [ + [ore('craftingToolKnife'), item('pyrotech:material', 42)] +]) + +CUTTER.recipeBuilder() + .inputs(item('pyrotech:material', 42)) + .outputs(item('pyrotech:material', 43) * 4) + .duration(80) + .EUt(16) + .buildAndRegister() + +CHEMICAL_BATH.recipeBuilder() + .inputs(item('pyrotech:material', 39)) + .fluidInputs(fluid('creosote') * 50) + .outputs(item('pyrotech:material', 43)) + .duration(50) + .EUt(7) + .buildAndRegister() + +// Durable Leather Cord +crafting.addShaped("susy:leather_cord_durable", item('pyrotech:material', 44), [ + [item('pyrotech:material', 43)], + [item('pyrotech:material', 43)], + [item('pyrotech:material', 43)] +]) + +ASSEMBLER.recipeBuilder() + .inputs(item('pyrotech:material', 43) * 2) + .outputs(item('pyrotech:material', 44)) + .duration(120) + .EUt(16) + .buildAndRegister() + +CHEMICAL_BATH.recipeBuilder() + .inputs(item('pyrotech:material', 40)) + .fluidInputs(fluid('creosote') * 100) + .outputs(item('pyrotech:material', 44)) + .duration(80) + .EUt(16) + .buildAndRegister() + +// Slag Heap +crafting.addShaped("susy:slag_heap", item('pyrotech:pile_slag'), [ + [item('pyrotech:slag'), item('pyrotech:slag'), item('pyrotech:slag')], + [item('pyrotech:slag'), item('pyrotech:slag'), item('pyrotech:slag')], + [item('pyrotech:slag'), item('pyrotech:slag'), item('pyrotech:slag')] +]) + // Mechanical hopper crafting.replaceShaped("pyrotech:tech/machine/mechanical_hopper", item('pyrotech:mechanical_hopper'), [ [item('pyrotech:material', 16), null, item('pyrotech:material', 16)], @@ -703,13 +934,9 @@ def anvil_recipes = [ ["stick_stone", item('pyrotech:material', 16), item('pyrotech:material', 27) * 2, 2, false], ["bone_shard", ore('bone'), item('pyrotech:material', 11) * 3, 2], ["flint_shard", ore('gemFlint'), item('pyrotech:material', 10) * 3, 2], - ["iron_shard", ore('ingotIron'), item('pyrotech:material', 19) * 9, 2], - ["gold_shard", ore('ingotGold'), item('pyrotech:material', 34) * 9, 2], - ["diamond_shard", ore('gemDiamond'), item('pyrotech:material', 18) * 9, 4], - ["coal_pieces", ore('gemCoal'), item('pyrotech:material', 21) * 8, 2], - ["charcoal_flakes", ore('charcoal'), item('pyrotech:material', 15) * 8, 2], ["cobblestone_to_rocks", ore('cobblestone'), item('pyrotech:rock') * 8, 2, false], ["limestone_to_cobbled", ore('stoneLimestone'), item('susy:susy_stone_cobble', 2), 2], + ["pig_iron_shearing", ore('ingotPigIron'), metaitem('ingotWroughtIron'), 2], ["limestone_dust", item('susy:susy_stone_cobble', 2), metaitem('dustLimestone'), 2], ["pottery_shard_to_dust", item('pyrotech:material', 7), metaitem('dustSmallBrick') * 2, 1], ["pottery_fragments_to_dust", item('pyrotech:material', 6), metaitem('dustSmallBrick') * 2, 1] @@ -738,32 +965,32 @@ crafting.replaceShaped("pyrotech:tech/machine/stone_kiln", item('pyrotech:stone_ // Primitive smelter // Controller -crafting.addShaped("susy:primitive_smelter", item('gregtech:machine', 14800), [ +crafting.addShaped("susy:primitive_smelter", metaitem('primitive_smelter'), [ [ore('craftingToolHardHammer')], [item('pyrotech:masonry_brick_block')] ]) // Export -crafting.addShaped("susy:primitive_item_export_bus", item('gregtech:machine', 14802), [ +crafting.addShaped("susy:primitive_item_export_bus", metaitem('primitive_item_export'), [ [item('pyrotech:masonry_brick_block')], [item('pyrotech:mechanical_hopper')] ]) // Import -crafting.addShaped("susy:primitive_item_import_bus", item('gregtech:machine', 14801), [ +crafting.addShaped("susy:primitive_item_import_bus", metaitem('primitive_item_import'), [ [item('pyrotech:mechanical_hopper')], [item('pyrotech:masonry_brick_block')] ]) // Interconversion -crafting.addShaped("susy:primitive_bus_import_to_export", item('gregtech:machine', 14802), [ +crafting.addShaped("susy:primitive_bus_import_to_export", metaitem('primitive_item_export'), [ [ore('craftingToolHardHammer')], - [item('gregtech:machine', 14801)] + [metaitem('primitive_item_import')] ]) -crafting.addShaped("susy:primitive_bus_export_to_import", item('gregtech:machine', 14801), [ +crafting.addShaped("susy:primitive_bus_export_to_import", metaitem('primitive_item_import'), [ [ore('craftingToolHardHammer')], - [item('gregtech:machine', 14802)] + [metaitem('primitive_item_export')] ]) // Misc machines @@ -864,9 +1091,6 @@ def materials = [ // Smelter recipes // Ore metallurgy -oreDict.add("flakeCoal", item('pyrotech:material', 15)) -oreDict.add("flakeCharcoal", item('pyrotech:material', 21)) - class Reductant { String name int consumption @@ -920,7 +1144,7 @@ class Ore { } ItemStack getByproduct(Prefix prefix) { - int amount = prefix.byproduct_amount * output_multiplier * 8 + int amount = prefix.byproduct_amount * output_multiplier * (byproduct == "pyrotech:slag" ? 2 : 8) return (byproduct == null || amount == 0) ? null : (item(byproduct) * amount) } } @@ -935,9 +1159,7 @@ def reductants = [ new Reductant("dustCoal", 10, 0.9), new Reductant("dustLigniteCoke", 12, 1), new Reductant("dustCoke", 8, 0.75), - new Reductant("dustAnthracite", 8, 0.7), - new Reductant("flakeCharcoal", 96, 0.95), - new Reductant("flakeCoal", 80, 0.9) + new Reductant("dustAnthracite", 8, 0.7) ] def prefix_ore = new Prefix("ore", 1, 2) @@ -958,12 +1180,10 @@ def smelting_prefixes = [ def ores = [ // Copper ores new Ore("Malachite", "Copper", 2), - new Ore("Tetrahedrite", "Copper"), -// new Ore("Chalcopyrite", "Copper"), - new Ore("Bornite", "Copper"), new Ore("Chalcocite", "Copper"), // Lead ores + new Ore("Anglesite", "Lead"), new Ore("Cerussite", "Lead"), new Ore("Galena", "Lead"), @@ -972,8 +1192,10 @@ def ores = [ new Ore("Sphalerite", "Zinc"), // Tin ores - new Ore("CassiteriteSand", "Tin", 2), - new Ore("Cassiterite", "Tin", 2) + new Ore("Cassiterite", "Tin", 2), + + // Silver ores + new Ore("Silver", "Silver") ] // Ore smashing @@ -989,7 +1211,6 @@ ores.forEach { oreIn -> } // Actual ore smelting -SMELTER = recipemap('primitive_smelter') reductants.forEach { reductant -> ores.forEach { oreIn -> @@ -1035,20 +1256,11 @@ def alloying_prefixes = [ prefix_dust ] -def fuels = [ - "gemCoal", - "fuelCoke", - "gemAnthracite", - "dustCoal", - "dustCoke", - "dustAnthracite" -] - def alloy_add = {String output, int amount, int duration, ArrayList inputs -> int recipe_multiplier = Math.ceil(8 / amount) def size = inputs.size().intdiv(2) def real = ([alloying_prefixes] * size).combinations() - fuels.forEach { fuel -> + reductants.forEach { reductant -> real.forEach { bad -> def builder = SMELTER.recipeBuilder() double multiplier_sum = 0 @@ -1059,7 +1271,7 @@ def alloy_add = {String output, int amount, int duration, ArrayList inputs -> count += amountIn builder.inputs(ore(bad[i].name + inputs[ 2 * i ]) * (amountIn * recipe_multiplier)) } - builder.inputs(ore(fuel) * (count * recipe_multiplier)) + builder.inputs(ore(reductant.name) * (count * recipe_multiplier)) .outputs(metaitem("ingot" + output) * (amount * recipe_multiplier)) .duration((int) (duration * multiplier_sum / count) * recipe_multiplier) .buildAndRegister() @@ -1076,6 +1288,8 @@ alloying_recipes = [ ["Brass", 4, 200, ["Copper", 3, "Zinc", 1]], // SnFe ["TinAlloy", 2, 100, ["Iron", 1, "Tin", 1]], + // Potin + ["Potin", 9, 100, ["Bronze", 8, "Lead", 1]], // Kovar ["Kovar", 2, 100, ["Iron", 2, "Nickel", 1, "CobaltMatte", 1]] ] @@ -1099,7 +1313,7 @@ mods.gregtech.coke_oven.removeByInput(1, [item('minecraft:coal_block')], null) mods.gregtech.coke_oven.recipeBuilder() .inputs(ore('logWood')) .outputs(item('minecraft:coal', 1)) - .fluidOutputs(fluid('creosote') * 250) + .fluidOutputs(fluid('creosote') * 125) .duration(100) .buildAndRegister() @@ -1107,7 +1321,7 @@ mods.gregtech.coke_oven.recipeBuilder() mods.gregtech.coke_oven.recipeBuilder() .inputs(ore('gemCoal')) .outputs(metaitem('gemCoke')) - .fluidOutputs(fluid('creosote') * 500) + .fluidOutputs(fluid('creosote') * 250) .duration(100) .buildAndRegister() @@ -1115,7 +1329,7 @@ mods.gregtech.coke_oven.recipeBuilder() mods.gregtech.coke_oven.recipeBuilder() .inputs(ore('blockCoal')) .outputs(metaitem('blockCoke')) - .fluidOutputs(fluid('creosote') * 4500) + .fluidOutputs(fluid('creosote') * 2250) .duration(900) .buildAndRegister() @@ -1124,7 +1338,7 @@ mods.gregtech.coke_oven.recipeBuilder() mods.gregtech.coke_oven.recipeBuilder() .inputs(item('pyrotech:log_pile')) .outputs(item('minecraft:coal', 1) * 10) - .fluidOutputs(fluid('creosote') * 2500) + .fluidOutputs(fluid('creosote') * 1250) .duration(900) .buildAndRegister() @@ -1132,7 +1346,7 @@ mods.gregtech.coke_oven.recipeBuilder() mods.gregtech.coke_oven.recipeBuilder() .inputs(ore('gemLignite')) .outputs(ore('gemLigniteCoke').getFirst()) - .fluidOutputs(fluid('creosote') * 250) + .fluidOutputs(fluid('creosote') * 125) .duration(100) .buildAndRegister() @@ -1140,6 +1354,23 @@ mods.gregtech.coke_oven.recipeBuilder() mods.gregtech.coke_oven.recipeBuilder() .inputs(ore('blockLignite')) .outputs(ore('blockLigniteCoke').getFirst()) - .fluidOutputs(fluid('creosote') * 2250) + .fluidOutputs(fluid('creosote') * 1125) .duration(900) .buildAndRegister() + +// Slag glass +ALLOY_SMELTER.recipeBuilder() + .inputs(item('pyrotech:slag') * 9) + .notConsumable(metaitem('shape.mold.block')) + .outputs(item('pyrotech:slag_glass')) + .duration(100) + .EUt(Globals.voltAmps[1]) + .buildAndRegister(); + +ALLOY_SMELTER.recipeBuilder() + .inputs(item('pyrotech:pile_slag')) + .notConsumable(metaitem('shape.mold.block')) + .outputs(item('pyrotech:slag_glass')) + .duration(100) + .EUt(Globals.voltAmps[1]) + .buildAndRegister(); \ No newline at end of file diff --git a/structures/active/MonumentSpire.rcst b/structures/active/MonumentSpire.rcst index 2e3f0ec15..81566ef86 100644 Binary files a/structures/active/MonumentSpire.rcst and b/structures/active/MonumentSpire.rcst differ diff --git a/structures/active/SupportBeamChestUp.rcig b/structures/active/SupportBeamChestUp.rcig new file mode 100644 index 000000000..8bb103f59 --- /dev/null +++ b/structures/active/SupportBeamChestUp.rcig @@ -0,0 +1,127 @@ +{ + "version": 2, + "inventoryGeneratorID": "SupportBeamChest", + "items": [ + { + "weight": 1.0, + "min": 1, + "max": 16, + "item": { + "id": "gregtech:meta_stick", + "damage": 324, + "count": 1 + } + }, + { + "weight": 0.4858947992324829, + "min": 1, + "max": 4, + "item": { + "id": "gregtech:meta_block_frame_20", + "damage": 4, + "count": 1 + } + }, + { + "weight": 0.646636426448822, + "min": 1, + "max": 8, + "item": { + "id": "gregtech:meta_screw", + "damage": 324, + "count": 1 + } + }, + { + "weight": 1.0, + "min": 1, + "max": 12, + "item": { + "id": "gregtech:meta_bolt", + "damage": 324, + "count": 1 + } + }, + { + "weight": 0.16315889358520508, + "min": 1, + "max": 2, + "item": { + "id": "gregtech:meta_item_2", + "damage": 1103, + "count": 1 + } + }, + { + "weight": 0.12706157565116882, + "min": 1, + "max": 1, + "item": { + "id": "gregtech:meta_item_2", + "damage": 1102, + "count": 1 + } + }, + { + "weight": 0.11158588528633118, + "min": 1, + "max": 1, + "item": { + "id": "susy:meta_item", + "damage": 2, + "count": 1 + } + }, + { + "weight": 0.08515378087759018, + "min": 1, + "max": 1, + "item": { + "id": "susy:meta_item", + "damage": 3, + "count": 1 + } + }, + { + "weight": 0.4858947992324829, + "min": 1, + "max": 5, + "item": { + "id": "industrialrenewal:brace_steel", + "damage": 0, + "count": 1 + } + }, + { + "weight": 0.646636426448822, + "min": 2, + "max": 8, + "item": { + "id": "industrialrenewal:catwalk_steel_pillar", + "damage": 0, + "count": 1 + } + }, + { + "weight": 0.5889394283294678, + "min": 1, + "max": 6, + "item": { + "id": "industrialrenewal:frame", + "damage": 0, + "count": 1 + } + }, + { + "weight": 0.3978064954280853, + "min": 2, + "max": 12, + "item": { + "id": "industrialrenewal:catwalk_column_steel", + "damage": 0, + "count": 1 + } + } + ], + "dependencyExpression": "" +} \ No newline at end of file diff --git a/structures/active/SupportBeamThing.rcst b/structures/active/SupportBeamThing.rcst index c59b15f76..9150c6c8c 100644 Binary files a/structures/active/SupportBeamThing.rcst and b/structures/active/SupportBeamThing.rcst differ diff --git a/structures/active/TinyStash.rcst b/structures/active/TinyStash.rcst index 7a3f14067..742640347 100644 Binary files a/structures/active/TinyStash.rcst and b/structures/active/TinyStash.rcst differ