diff --git a/kubejs/assets/gtceu/blockstates/bismuth_bronze_crate.json b/kubejs/assets/gtceu/blockstates/bismuth_bronze_crate.json new file mode 100644 index 000000000..a09a72360 --- /dev/null +++ b/kubejs/assets/gtceu/blockstates/bismuth_bronze_crate.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "gtceu:block/machine/bismuth_bronze_crate" + } + } +} \ No newline at end of file diff --git a/kubejs/assets/gtceu/blockstates/bismuth_bronze_drum.json b/kubejs/assets/gtceu/blockstates/bismuth_bronze_drum.json new file mode 100644 index 000000000..4a12a2b83 --- /dev/null +++ b/kubejs/assets/gtceu/blockstates/bismuth_bronze_drum.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "gtceu:block/machine/bismuth_bronze_drum" + } + } +} \ No newline at end of file diff --git a/kubejs/assets/gtceu/blockstates/black_bronze_crate.json b/kubejs/assets/gtceu/blockstates/black_bronze_crate.json new file mode 100644 index 000000000..55d38c8a2 --- /dev/null +++ b/kubejs/assets/gtceu/blockstates/black_bronze_crate.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "gtceu:block/machine/black_bronze_crate" + } + } +} \ No newline at end of file diff --git a/kubejs/assets/gtceu/blockstates/black_bronze_drum.json b/kubejs/assets/gtceu/blockstates/black_bronze_drum.json new file mode 100644 index 000000000..d533e519f --- /dev/null +++ b/kubejs/assets/gtceu/blockstates/black_bronze_drum.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "gtceu:block/machine/black_bronze_drum" + } + } +} \ No newline at end of file diff --git a/kubejs/assets/gtceu/models/block/machine/bismuth_bronze_crate.json b/kubejs/assets/gtceu/models/block/machine/bismuth_bronze_crate.json new file mode 100644 index 000000000..6dbe95a61 --- /dev/null +++ b/kubejs/assets/gtceu/models/block/machine/bismuth_bronze_crate.json @@ -0,0 +1,13 @@ +{ + "parent": "minecraft:block/block", + "loader": "gtceu:machine", + "machine": "gtceu:bismuth_bronze_crate", + "variants": { + "taped=false": { + "model": "gtceu:block/machine/template/crate/metal_crate" + }, + "taped=true": { + "model": "gtceu:block/machine/template/crate/metal_crate_taped" + } + } +} \ No newline at end of file diff --git a/kubejs/assets/gtceu/models/block/machine/bismuth_bronze_drum.json b/kubejs/assets/gtceu/models/block/machine/bismuth_bronze_drum.json new file mode 100644 index 000000000..12fd07831 --- /dev/null +++ b/kubejs/assets/gtceu/models/block/machine/bismuth_bronze_drum.json @@ -0,0 +1,10 @@ +{ + "parent": "minecraft:block/block", + "loader": "gtceu:machine", + "machine": "gtceu:bismuth_bronze_drum", + "variants": { + "": { + "model": "gtceu:block/machine/template/drum/metal_drum" + } + } +} \ No newline at end of file diff --git a/kubejs/assets/gtceu/models/block/machine/black_bronze_crate.json b/kubejs/assets/gtceu/models/block/machine/black_bronze_crate.json new file mode 100644 index 000000000..78c487da6 --- /dev/null +++ b/kubejs/assets/gtceu/models/block/machine/black_bronze_crate.json @@ -0,0 +1,13 @@ +{ + "parent": "minecraft:block/block", + "loader": "gtceu:machine", + "machine": "gtceu:black_bronze_crate", + "variants": { + "taped=false": { + "model": "gtceu:block/machine/template/crate/metal_crate" + }, + "taped=true": { + "model": "gtceu:block/machine/template/crate/metal_crate_taped" + } + } +} \ No newline at end of file diff --git a/kubejs/assets/gtceu/models/block/machine/black_bronze_drum.json b/kubejs/assets/gtceu/models/block/machine/black_bronze_drum.json new file mode 100644 index 000000000..16e8ebbad --- /dev/null +++ b/kubejs/assets/gtceu/models/block/machine/black_bronze_drum.json @@ -0,0 +1,10 @@ +{ + "parent": "minecraft:block/block", + "loader": "gtceu:machine", + "machine": "gtceu:black_bronze_drum", + "variants": { + "": { + "model": "gtceu:block/machine/template/drum/metal_drum" + } + } +} \ No newline at end of file diff --git a/kubejs/assets/gtceu/models/item/bismuth_bronze_crate.json b/kubejs/assets/gtceu/models/item/bismuth_bronze_crate.json new file mode 100644 index 000000000..374b6d9a8 --- /dev/null +++ b/kubejs/assets/gtceu/models/item/bismuth_bronze_crate.json @@ -0,0 +1,3 @@ +{ + "parent": "gtceu:block/machine/bismuth_bronze_crate" +} \ No newline at end of file diff --git a/kubejs/assets/gtceu/models/item/bismuth_bronze_drum.json b/kubejs/assets/gtceu/models/item/bismuth_bronze_drum.json new file mode 100644 index 000000000..b82d68b8f --- /dev/null +++ b/kubejs/assets/gtceu/models/item/bismuth_bronze_drum.json @@ -0,0 +1,3 @@ +{ + "parent": "gtceu:block/machine/bismuth_bronze_drum" +} \ No newline at end of file diff --git a/kubejs/assets/gtceu/models/item/black_bronze_crate.json b/kubejs/assets/gtceu/models/item/black_bronze_crate.json new file mode 100644 index 000000000..f8fb35a15 --- /dev/null +++ b/kubejs/assets/gtceu/models/item/black_bronze_crate.json @@ -0,0 +1,3 @@ +{ + "parent": "gtceu:block/machine/black_bronze_crate" +} \ No newline at end of file diff --git a/kubejs/assets/gtceu/models/item/black_bronze_drum.json b/kubejs/assets/gtceu/models/item/black_bronze_drum.json new file mode 100644 index 000000000..0dd9df574 --- /dev/null +++ b/kubejs/assets/gtceu/models/item/black_bronze_drum.json @@ -0,0 +1,3 @@ +{ + "parent": "gtceu:block/machine/black_bronze_drum" +} \ No newline at end of file diff --git a/kubejs/assets/tfg/textures/block/machines/food_oven/overlay_side_active_emissive.png b/kubejs/assets/tfg/textures/block/machines/food_oven/overlay_side_active_emissive.png new file mode 100644 index 000000000..c20a1c981 Binary files /dev/null and b/kubejs/assets/tfg/textures/block/machines/food_oven/overlay_side_active_emissive.png differ diff --git a/kubejs/server_scripts/gregtech/recipes.removes.js b/kubejs/server_scripts/gregtech/recipes.removes.js index e6907ad7f..4a7779238 100644 --- a/kubejs/server_scripts/gregtech/recipes.removes.js +++ b/kubejs/server_scripts/gregtech/recipes.removes.js @@ -723,6 +723,25 @@ function removeGTCEURecipes(event) { }) event.remove({ output: 'gtceu:damascus_steel_crowbar'}) + + //removes metal armor + const armor = [ + 'gtceu:bronze_helmet', + 'gtceu:bronze_chestplate', + 'gtceu:bronze_leggings', + 'gtceu:bronze_boots', + 'gtceu:steel_helmet', + 'gtceu:steel_chestplate', + 'gtceu:steel_leggings', + 'gtceu:steel_boots', + 'gtceu:titanium_helmet', + 'gtceu:titanium_chestplate', + 'gtceu:titanium_leggings', + 'gtceu:titanium_boots' + ]; + armor.forEach(armor => { + event.remove({ output: armor}) + }); } function removeMaceratorRecipe(event, id) { diff --git a/kubejs/startup_scripts/gtceu/constants.js b/kubejs/startup_scripts/gtceu/constants.js index f0e894db6..0fc559d90 100644 --- a/kubejs/startup_scripts/gtceu/constants.js +++ b/kubejs/startup_scripts/gtceu/constants.js @@ -143,6 +143,20 @@ global.GTCEU_DISABLED_ITEMS = [ 'gtceu:lv_damascus_steel_screwdriver', 'gtceu:damascus_steel_bucket', + //armor + 'gtceu:bronze_helmet', + 'gtceu:bronze_chestplate', + 'gtceu:bronze_leggings', + 'gtceu:bronze_boots', + 'gtceu:steel_helmet', + 'gtceu:steel_chestplate', + 'gtceu:steel_leggings', + 'gtceu:steel_boots', + 'gtceu:titanium_helmet', + 'gtceu:titanium_chestplate', + 'gtceu:titanium_leggings', + 'gtceu:titanium_boots', + // Huh 'gtceu:wax_dust', 'gtceu:small_wax_dust', diff --git a/kubejs/startup_scripts/gtceu/machines.js b/kubejs/startup_scripts/gtceu/machines.js index 8c04f9e2b..b8425b0f7 100644 --- a/kubejs/startup_scripts/gtceu/machines.js +++ b/kubejs/startup_scripts/gtceu/machines.js @@ -217,28 +217,71 @@ const registerGTCEuMachines = (event) => { .noRecipeModifier() .appearanceBlock(() => Block.getBlock('tfg:casings/machine_casing_iron_desh')) .pattern(definition => FactoryBlockPattern.start() - .aisle('P P', 'P P', 'P P', 'PPPPPPP', 'PKKKKKP') - .aisle(' ', ' ', ' ', 'P P', 'KIIIIIK') - .aisle(' PLP ', ' PLP ', ' RRR ', 'P RRR P', 'KIIIIIK') - .aisle(' LPL ', ' L#L ', ' RGR ', 'P RGR P', 'KIIGIIK') - .aisle(' PXP ', ' PLP ', ' RRR ', 'P RRR P', 'KIIIIIK') - .aisle(' ', ' ', ' ', 'P P', 'KIIIIIK') - .aisle('P P', 'P P', 'P P', 'PPPPPPP', 'PKKKKKP') - .where('X', Predicates.controller(Predicates.blocks(definition.get()))) - .where('R', Predicates.blocks('gtceu:cleanroom_glass')) - .where('I', Predicates.blocks('tfg:casings/machine_casing_red_solar_panel')) - .where('G', Predicates.blocks('ad_astra:glowing_iron_pillar')) - .where('P', Predicates.blocks('tfg:casings/machine_casing_iron_desh')) - .where('K', Predicates.blocks('ad_astra:iron_plateblock')) - .where('L', Predicates.blocks('tfg:casings/machine_casing_iron_desh') - .or(Predicates.abilities(PartAbility.IMPORT_ITEMS).setMaxGlobalLimited(2).setPreviewCount(1)) + .aisle(" B B ", " B B ", " CCCCC ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ") + .aisle(" B B ", " B B ", " CC CC ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ") + .aisle(" B B ", " CCCCC ", " CC CC ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ") + .aisle(" B B ", " CC CC ", " C C ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ") + .aisle(" CCC ", " CC CC ", " CC CC ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ") + .aisle(" B B CC CC B B ", " B C C B ", " C C ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ") + .aisle(" C C ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ") + .aisle("B B B", "B C C B", "C C", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ") + .aisle(" C FFF C B ", " C B B C ", "C B B C", " B B ", " B B ", " B B ", " B B ", " B B ", " B B ", " B B ", " EEE ", " GGG ", " GGG ", " GGG ") + .aisle(" C FIF C ", " C I C ", "C I C", " I ", " I ", " I ", " I ", " I ", " I ", " I ", " EIE ", " GIG ", " GKG ", " GGG ") + .aisle(" C FHF C ", " C B B C ", "C B B C", " B B ", " B B ", " B B ", " B B ", " B B ", " B B ", " B B ", " EEE ", " GGG ", " GGG ", " GGG ") + .aisle("B B B B", "B C C B", "C C", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ") + .aisle(" C C ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ") + .aisle(" B B CC CC B B ", " B C C B ", " C C ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ") + .aisle(" CCC ", " CC CC ", " CC CC ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ") + .aisle(" B B ", " CC CC ", " C C ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ") + .aisle(" B B ", " CCCCC ", " CC CC ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ") + .aisle(" B B ", " B B ", " CC CC ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ") + .aisle(" B B ", " B B ", " CCCCC ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ") + .where("H", Predicates.controller(Predicates.blocks(definition.get()))) + .where("B", Predicates.blocks(ChemicalHelper.getBlock(TagPrefix.frameGt, GTMaterials.StainlessSteel))) + .where("C", Predicates.blocks("tfg:casings/machine_casing_red_solar_panel")) + .where("E", Predicates.blocks("ad_astra:iron_plateblock")) + .where("F", Predicates.blocks("tfg:casings/machine_casing_iron_desh") + .or(Predicates.autoAbilities(definition.getRecipeTypes())) .or(Predicates.abilities(PartAbility.MAINTENANCE).setExactLimit(1)) - .or(Predicates.abilities(PartAbility.IMPORT_FLUIDS).setMaxGlobalLimited(2).setPreviewCount(1)) - .or(Predicates.abilities(PartAbility.EXPORT_FLUIDS).setMaxGlobalLimited(2).setPreviewCount(1)) - .or(Predicates.abilities(PartAbility.PARALLEL_HATCH).setMaxGlobalLimited(1)) - .or(Predicates.abilities(PartAbility.OUTPUT_ENERGY).setExactLimit(1))) - .where('#', Predicates.air()) - .where(' ', Predicates.any()) + ) + .where("G", Predicates.blocks(GTBlocks.CASING_TEMPERED_GLASS.get())) + .where("I", Predicates.blocks("tfg:casings/machine_casing_iron_desh")) + .where("K", Predicates.blocks(ChemicalHelper.getBlock(TagPrefix.block, GTMaterials.Silver))) + .where(" ", Predicates.any()) + .build() + ) + .shapeInfo(controller => MultiblockShapeInfo.builder() + .aisle(" B B ", " B B ", " CCCCC ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ") + .aisle(" B B ", " B B ", " CC CC ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ") + .aisle(" B B ", " CCCCC ", " CC CC ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ") + .aisle(" B B ", " CC CC ", " C C ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ") + .aisle(" CCC ", " CC CC ", " CC CC ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ") + .aisle(" B B CC CC B B ", " B C C B ", " C C ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ") + .aisle(" C C ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ") + .aisle("B B B", "B C C B", "C C", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ") + .aisle(" C INI C B ", " C B B C ", "C B B C", " B B ", " B B ", " B B ", " B B ", " B B ", " B B ", " B B ", " EEE ", " GGG ", " GGG ", " GGG ") + .aisle(" C AIJ C ", " C I C ", "C I C", " I ", " I ", " I ", " I ", " I ", " I ", " I ", " EIE ", " GIG ", " GKG ", " GGG ") + .aisle(" C DHL C ", " C B B C ", "C B B C", " B B ", " B B ", " B B ", " B B ", " B B ", " B B ", " B B ", " EEE ", " GGG ", " GGG ", " GGG ") + .aisle("B B B B", "B C C B", "C C", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ") + .aisle(" C C ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ") + .aisle(" B B CC CC B B ", " B C C B ", " C C ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ") + .aisle(" CCC ", " CC CC ", " CC CC ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ") + .aisle(" B B ", " CC CC ", " C C ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ") + .aisle(" B B ", " CCCCC ", " CC CC ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ") + .aisle(" B B ", " B B ", " CC CC ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ") + .aisle(" B B ", " B B ", " CCCCC ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ") + .where("H", controller, Direction.SOUTH) + .where("B", Block.getBlock("gtceu:stainless_steel_frame")) + .where("C", Block.getBlock("tfg:casings/machine_casing_red_solar_panel")) + .where("E", Block.getBlock("ad_astra:iron_plateblock")) + .where("A", GTMachines.ITEM_IMPORT_BUS[GTValues.ULV], Direction.WEST) + .where("D", GTMachines.MAINTENANCE_HATCH, Direction.SOUTH) + .where("J", GTMachines.FLUID_IMPORT_HATCH[GTValues.MV], Direction.EAST) + .where("L", GTMachines.FLUID_EXPORT_HATCH[GTValues.MV], Direction.EAST) + .where("N", GTMachines.ENERGY_OUTPUT_HATCH[GTValues.HV], Direction.NORTH) + .where("G", Block.getBlock("gtceu:tempered_glass")) + .where("I", Block.getBlock("tfg:casings/machine_casing_iron_desh")) + .where("K", Block.getBlock("gtceu:silver_block")) .build() ) .workableCasingModel('tfg:block/casings/machine_casing_iron_desh', 'gtceu:block/multiblock/hpca') diff --git a/kubejs/startup_scripts/gtceu/materials.js b/kubejs/startup_scripts/gtceu/materials.js index 81d8b8e1f..adee62c43 100644 --- a/kubejs/startup_scripts/gtceu/materials.js +++ b/kubejs/startup_scripts/gtceu/materials.js @@ -211,6 +211,7 @@ const registerGTCEuMaterialModification = (event) => { GTMaterials.Copper.addFlags(GENERATE_FRAME); GTMaterials.BlackBronze.addFlags(GENERATE_FRAME); GTMaterials.BismuthBronze.addFlags(GENERATE_FRAME); + GTMaterials.RhodiumPlatedPalladium.addFlags(GENERATE_FRAME); GTMaterials.Wood.addFlags(GENERATE_SMALL_GEAR); GTMaterials.Brass.addFlags(GENERATE_SMALL_GEAR, GENERATE_RING);