From a0aa0d973b5cc52b8f58789c20bf4212df6872d6 Mon Sep 17 00:00:00 2001 From: Ghostipedia Date: Wed, 19 Jun 2024 06:39:55 -0400 Subject: [PATCH] First Vomhine Industries Multi --- changelog.md | 2 +- gradle.properties | 4 +- .../assets/cosmiccore/lang/en_ud.json | 3 ++ .../assets/cosmiccore/lang/en_us.json | 3 ++ ...certified_chemically_resistant_casing.json | 21 +++++++++ ...e_certified_chemically_resistant_pipe.json | 21 +++++++++ .../forge/tags/blocks/mineable/wrench.json | 2 + .../recipe/SoulRecipeCapability.java | 1 - .../cosmiccore/common/data/CosmicBlocks.java | 2 + .../common/data/CosmicMachines.java | 43 +++++++++++++++++- .../data/recipe/CosmicRecipeModifiers.java | 33 ++++++++++++++ .../gtbridge/CosmicRecipeTypes.java | 21 ++++++++- ..._certified_chemically_resistant_casing.png | Bin 0 -> 591 bytes ...ied_chemically_resistant_casing.png.mcmeta | 5 ++ ...tified_chemically_resistant_casing_ctm.png | Bin 0 -> 1119 bytes ...ne_certified_chemically_resistant_pipe.png | Bin 0 -> 555 bytes .../vomahine_chemplant/OLDFRONT.png | Bin 0 -> 322 bytes .../vomahine_chemplant/overlay_front.png | Bin 0 -> 353 bytes .../overlay_front_active.png | Bin 0 -> 357 bytes .../overlay_front_active_emissive.png | Bin 0 -> 120 bytes .../overlay_front_emissive.png | Bin 0 -> 120 bytes .../overlay_front_paused.png | Bin 0 -> 355 bytes .../overlay_front_paused_emissive.png | Bin 0 -> 121 bytes 23 files changed, 154 insertions(+), 7 deletions(-) create mode 100644 src/generated/resources/data/cosmiccore/loot_tables/blocks/vomahine_certified_chemically_resistant_casing.json create mode 100644 src/generated/resources/data/cosmiccore/loot_tables/blocks/vomahine_certified_chemically_resistant_pipe.json create mode 100644 src/main/resources/assets/cosmiccore/textures/block/casings/solid/vomahine_certified_chemically_resistant_casing.png create mode 100644 src/main/resources/assets/cosmiccore/textures/block/casings/solid/vomahine_certified_chemically_resistant_casing.png.mcmeta create mode 100644 src/main/resources/assets/cosmiccore/textures/block/casings/solid/vomahine_certified_chemically_resistant_casing_ctm.png create mode 100644 src/main/resources/assets/cosmiccore/textures/block/casings/solid/vomahine_certified_chemically_resistant_pipe.png create mode 100644 src/main/resources/assets/cosmiccore/textures/block/multiblock/vomahine_chemplant/OLDFRONT.png create mode 100644 src/main/resources/assets/cosmiccore/textures/block/multiblock/vomahine_chemplant/overlay_front.png create mode 100644 src/main/resources/assets/cosmiccore/textures/block/multiblock/vomahine_chemplant/overlay_front_active.png create mode 100644 src/main/resources/assets/cosmiccore/textures/block/multiblock/vomahine_chemplant/overlay_front_active_emissive.png create mode 100644 src/main/resources/assets/cosmiccore/textures/block/multiblock/vomahine_chemplant/overlay_front_emissive.png create mode 100644 src/main/resources/assets/cosmiccore/textures/block/multiblock/vomahine_chemplant/overlay_front_paused.png create mode 100644 src/main/resources/assets/cosmiccore/textures/block/multiblock/vomahine_chemplant/overlay_front_paused_emissive.png diff --git a/changelog.md b/changelog.md index d5888f1..6f0f9af 100644 --- a/changelog.md +++ b/changelog.md @@ -1 +1 @@ -Adds Advanced Ram Wafers and Chips \ No newline at end of file +New Parallel Behavior and First Vomhine Industries Multi \ No newline at end of file diff --git a/gradle.properties b/gradle.properties index 490c285..b24e4c5 100644 --- a/gradle.properties +++ b/gradle.properties @@ -17,14 +17,14 @@ parchment_mappings=2023.09.03 quilt_mappings=23 # Mod Properties -mod_version=0.2.8 +mod_version=0.2.9 maven_group=com.ghostipedia.frontiers archives_base_name=cosmic-core mod_id=cosmiccore mod_author=Ghostipedia # Dependencies -gtceu_version=1.2.3.a +gtceu_version=1.3.0 ldlib_version=1.0.25.l registrate_version=MC1.20-1.3.3 kubejs_version=2001.6.4-build.120 diff --git a/src/generated/resources/assets/cosmiccore/lang/en_ud.json b/src/generated/resources/assets/cosmiccore/lang/en_ud.json index 358a3b2..30f2331 100644 --- a/src/generated/resources/assets/cosmiccore/lang/en_ud.json +++ b/src/generated/resources/assets/cosmiccore/lang/en_ud.json @@ -35,6 +35,9 @@ "block.cosmiccore.uv_soul_output_hatch": "ɥɔʇɐH ʇndʇnO ןnoS Λ∩Ɛ§", "block.cosmiccore.uxv_soul_input_hatch": "ɥɔʇɐH ʇnduI ןnoS ΛX∩ǝ§", "block.cosmiccore.uxv_soul_output_hatch": "ɥɔʇɐH ʇndʇnO ןnoS ΛX∩ǝ§", + "block.cosmiccore.vomahine_certified_chemically_resistant_casing": "buısɐƆ ʇuɐʇsısǝᴚ ʎןןɐɔıɯǝɥƆ pǝıɟıʇɹǝƆ ǝuıɥɐɯoΛ", + "block.cosmiccore.vomahine_certified_chemically_resistant_pipe": "ǝdıԀ ʇuɐʇsısǝᴚ ʎןןɐɔıɯǝɥƆ pǝıɟıʇɹǝƆ ǝuıɥɐɯoΛ", + "block.cosmiccore.vomahine_industrial_chemical_plant": "ʇuɐןԀ ןɐɔıɯǝɥƆ ןɐıɹʇsnpuI ǝuıɥɐɯoΛ", "block.cosmiccore.zpm_soul_input_hatch": "ɥɔʇɐH ʇnduI ןnoS WԀZɔ§", "block.cosmiccore.zpm_soul_output_hatch": "ɥɔʇɐH ʇndʇnO ןnoS WԀZɔ§", "cosmiccore.multiblock.current_field_strength": "%s :ɥʇbuǝɹʇS pןǝıℲɟ§", diff --git a/src/generated/resources/assets/cosmiccore/lang/en_us.json b/src/generated/resources/assets/cosmiccore/lang/en_us.json index 53ecb9d..ff39949 100644 --- a/src/generated/resources/assets/cosmiccore/lang/en_us.json +++ b/src/generated/resources/assets/cosmiccore/lang/en_us.json @@ -35,6 +35,9 @@ "block.cosmiccore.uv_soul_output_hatch": "§3UV Soul Output Hatch", "block.cosmiccore.uxv_soul_input_hatch": "§eUXV Soul Input Hatch", "block.cosmiccore.uxv_soul_output_hatch": "§eUXV Soul Output Hatch", + "block.cosmiccore.vomahine_certified_chemically_resistant_casing": "Vomahine Certified Chemically Resistant Casing", + "block.cosmiccore.vomahine_certified_chemically_resistant_pipe": "Vomahine Certified Chemically Resistant Pipe", + "block.cosmiccore.vomahine_industrial_chemical_plant": "Vomahine Industrial Chemical Plant", "block.cosmiccore.zpm_soul_input_hatch": "§cZPM Soul Input Hatch", "block.cosmiccore.zpm_soul_output_hatch": "§cZPM Soul Output Hatch", "cosmiccore.multiblock.current_field_strength": "§fField Strength: %s", diff --git a/src/generated/resources/data/cosmiccore/loot_tables/blocks/vomahine_certified_chemically_resistant_casing.json b/src/generated/resources/data/cosmiccore/loot_tables/blocks/vomahine_certified_chemically_resistant_casing.json new file mode 100644 index 0000000..0ed25d8 --- /dev/null +++ b/src/generated/resources/data/cosmiccore/loot_tables/blocks/vomahine_certified_chemically_resistant_casing.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "cosmiccore:vomahine_certified_chemically_resistant_casing" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "cosmiccore:blocks/vomahine_certified_chemically_resistant_casing" +} \ No newline at end of file diff --git a/src/generated/resources/data/cosmiccore/loot_tables/blocks/vomahine_certified_chemically_resistant_pipe.json b/src/generated/resources/data/cosmiccore/loot_tables/blocks/vomahine_certified_chemically_resistant_pipe.json new file mode 100644 index 0000000..1ef040d --- /dev/null +++ b/src/generated/resources/data/cosmiccore/loot_tables/blocks/vomahine_certified_chemically_resistant_pipe.json @@ -0,0 +1,21 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "bonus_rolls": 0.0, + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ], + "entries": [ + { + "type": "minecraft:item", + "name": "cosmiccore:vomahine_certified_chemically_resistant_pipe" + } + ], + "rolls": 1.0 + } + ], + "random_sequence": "cosmiccore:blocks/vomahine_certified_chemically_resistant_pipe" +} \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/blocks/mineable/wrench.json b/src/generated/resources/data/forge/tags/blocks/mineable/wrench.json index 5a3fe6e..cde0995 100644 --- a/src/generated/resources/data/forge/tags/blocks/mineable/wrench.json +++ b/src/generated/resources/data/forge/tags/blocks/mineable/wrench.json @@ -17,6 +17,8 @@ "cosmiccore:high_powered_magnet", "cosmiccore:fusion_grade_magnet", "cosmiccore:high_temperature_fission_casing", + "cosmiccore:vomahine_certified_chemically_resistant_casing", + "cosmiccore:vomahine_certified_chemically_resistant_pipe", "cosmiccore:highly_conductive_fission_casing" ] } \ No newline at end of file diff --git a/src/main/java/com/ghostipedia/cosmiccore/api/capability/recipe/SoulRecipeCapability.java b/src/main/java/com/ghostipedia/cosmiccore/api/capability/recipe/SoulRecipeCapability.java index 73d84c7..d219009 100644 --- a/src/main/java/com/ghostipedia/cosmiccore/api/capability/recipe/SoulRecipeCapability.java +++ b/src/main/java/com/ghostipedia/cosmiccore/api/capability/recipe/SoulRecipeCapability.java @@ -51,7 +51,6 @@ public boolean isRecipeSearchFilter() { return true; } - @Override public void addXEIInfo(WidgetGroup group, int xOffset, List contents, boolean perTick, boolean isInput, MutableInt yOffset) { int soul = contents.stream().map(Content::getContent).mapToInt(SoulRecipeCapability.CAP::of).sum(); if (isInput) { diff --git a/src/main/java/com/ghostipedia/cosmiccore/common/data/CosmicBlocks.java b/src/main/java/com/ghostipedia/cosmiccore/common/data/CosmicBlocks.java index a312434..50fa5dd 100644 --- a/src/main/java/com/ghostipedia/cosmiccore/common/data/CosmicBlocks.java +++ b/src/main/java/com/ghostipedia/cosmiccore/common/data/CosmicBlocks.java @@ -59,6 +59,8 @@ public class CosmicBlocks { //TODO : FIGURE OUT WHY these are breaking the minable tags for pickaxe/wrench.. public static final BlockEntry HIGH_TEMP_FISSION_CASING = createCasingBlockWrenchOnly("high_temperature_fission_casing", CosmicCore.id("block/casings/solid/high_temperature_fission_casing")); + public static final BlockEntry VOMAHINE_CERTIFIED_CHEMICALLY_RESISTANT_CASING = createCasingBlockWrenchOnly("vomahine_certified_chemically_resistant_casing", CosmicCore.id("block/casings/solid/vomahine_certified_chemically_resistant_casing")); + public static final BlockEntry VOMAHINE_CERTIFIED_CHEMICALLY_RESISTANT_PIPE = createCasingBlockWrenchOnly("vomahine_certified_chemically_resistant_pipe", CosmicCore.id("block/casings/solid/vomahine_certified_chemically_resistant_pipe")); public static final BlockEntry HIGHLY_CONDUCTIVE_FISSION_CASING = createCasingBlockWrenchOnly("highly_conductive_fission_casing", CosmicCore.id("block/casings/solid/highly_conductive_fission_casing")); //This is a Bunch of Rendering Magic I barely understand (See: I Don't understand at all) ~Ghost diff --git a/src/main/java/com/ghostipedia/cosmiccore/common/data/CosmicMachines.java b/src/main/java/com/ghostipedia/cosmiccore/common/data/CosmicMachines.java index 5255158..3f3ebf4 100644 --- a/src/main/java/com/ghostipedia/cosmiccore/common/data/CosmicMachines.java +++ b/src/main/java/com/ghostipedia/cosmiccore/common/data/CosmicMachines.java @@ -31,6 +31,7 @@ import com.gregtechceu.gtceu.common.data.GTBlocks; import com.gregtechceu.gtceu.common.data.GTMaterials; import com.gregtechceu.gtceu.common.data.GTRecipeModifiers; +import com.gregtechceu.gtceu.common.machine.multiblock.part.ParallelHatchPartMachine; import net.minecraft.network.chat.Component; import com.gregtechceu.gtceu.utils.GTHashMaps; import com.gregtechceu.gtceu.utils.ItemStackHashStrategy; @@ -47,7 +48,10 @@ import static com.ghostipedia.cosmiccore.api.pattern.CosmicPredicates.magnetCoils; import static com.ghostipedia.cosmiccore.api.registries.CosmicRegistration.REGISTRATE; +import static com.gregtechceu.gtceu.api.GTValues.*; +import static com.gregtechceu.gtceu.api.GTValues.UV; import static com.gregtechceu.gtceu.api.pattern.Predicates.*; +import static com.gregtechceu.gtceu.common.data.GTMachines.registerTieredMachines; public class CosmicMachines { static { @@ -144,9 +148,9 @@ public static GTRecipe copyOutputs(GTRecipe recipe, ContentModifier modifier) { .pattern(definition -> FactoryBlockPattern.start() .aisle("##QQQ##", "##QQQ##", "###Q###", "#######", "#######","#######","#######","#######","#######","#######","###Q###","##QQQ##","##QQQ##") .aisle("#QQQQQ#", "#QQSQQ#", "#FQQQF#", "#FQFQF#", "#F###F#","#F###F#","#F###F#","#F###F#","#F###F#","#FQFQF#","#FQQQF#","#QQSQQ#","#QQQQQ#") - .aisle("QQQQQQQ", "QQSSSQQ", "#QSSSQ#", "#QHGHQ#", "#QHGHQ#","#QHGHQ#","#QHGHQ#","#QHGHQ#","#QHGHQ#","#QHGHQ#","#QSSSQ#","QQSSSQQ","QQQQQQQ") + .aisle("QQQQQQQ", "QQSSSQQ", "#QSSSQ#", "#QHGHQ#", "##HGH##","##HGH##","##HGH##","##HGH##","##HGH##","#QHGHQ#","#QSSSQ#","QQSSSQQ","QQQQQQQ") .aisle("QQQQQQQ", "QSSSSSQ", "QQSSSQQ", "#FGSGF#", "##GSG##","##GSG##","##GSG##","##GSG##","##GSG##","#FGSGF#","QQSSSQQ","QSSSSSQ","QQQQQQQ") - .aisle("QQQQQQQ", "QQSSSQQ", "#QSSSQ#", "#QHGHQ#", "#QHGHQ#","#QHGHQ#","#QHGHQ#","#QHGHQ#","#QHGHQ#","#QHGHQ#","#QSSSQ#","QQSSSQQ","QQQQQQQ") + .aisle("QQQQQQQ", "QQSSSQQ", "#QSSSQ#", "#QHGHQ#", "##HGH##","##HGH##","##HGH##","##HGH##","##HGH##","#QHGHQ#","#QSSSQ#","QQSSSQQ","QQQQQQQ") .aisle("#QQQQQ#", "#QQSQQ#", "#FQQQF#", "#FQFQF#", "#F###F#","#F###F#","#F###F#","#F###F#","#F###F#","#FQFQF#","#FQQQF#","#QQSQQ#","#QQQQQ#") .aisle("##QQQ##", "##QCQ##", "###Q###", "#######", "#######","#######","#######","#######","#######","#######","###Q###","##QQQ##","##QQQ##") .where('#', any()) @@ -170,7 +174,42 @@ public static GTRecipe copyOutputs(GTRecipe recipe, ContentModifier modifier) { .workableCasingRenderer(CosmicCore.id("block/casings/solid/naquadah_pressure_resistant_casing"), GTCEu.id("block/multiblock/hpca")) .register(); + public final static MultiblockMachineDefinition VOMAHINE_INDUSTRIAL_CHEMPLANT = REGISTRATE.multiblock("vomahine_industrial_chemical_plant", WorkableElectricMultiblockMachine::new) + .rotationState(RotationState.ALL) + .recipeType(CosmicRecipeTypes.VOMAHINE_INDUSTRIAL_CHEMVAT) + .recipeModifiers(CosmicRecipeModifiers::vomahineChemicalPlantParallel,GTRecipeModifiers.ELECTRIC_OVERCLOCK.apply(OverclockingLogic.PERFECT_OVERCLOCK)) + .appearanceBlock(CosmicBlocks.VOMAHINE_CERTIFIED_CHEMICALLY_RESISTANT_CASING) + .pattern(definition -> FactoryBlockPattern.start() + .aisle("##QQQ##", "##QQQ##", "###Q###", "#######", "#######","#######","#######","#######","###Q###","##QQQ##","##QQQ##") + .aisle("#QQQQQ#", "#QQSQQ#", "#FQQQF#", "#FQ#QF#", "#F###F#","#F###F#","#F###F#","#FQ#QF#","#FQQQF#","#QQSQQ#","#QQQQQ#") + .aisle("QQQQQQQ", "QQSSSQQ", "#QSSSQ#", "##HGH##", "##HGH##","##HGH##","##HGH##","#QHGHQ#","#QSSSQ#","QQSSSQQ","QQQQQQQ") + .aisle("QQQQQQQ", "QSSSSSQ", "QQSSSQQ", "##GSG##", "##GSG##","##GSG##","##GSG##","##GSG##","QQSSSQQ","QSSSSSQ","QQQQQQQ") + .aisle("QQQQQQQ", "QQSSSQQ", "#QSSSQ#", "##HGH##", "##HGH##","##HGH##","##HGH##","#QHGHQ#","#QSSSQ#","QQSSSQQ","QQQQQQQ") + .aisle("#QQQQQ#", "#QQSQQ#", "#FQQQF#", "#FQ#QF#", "#F###F#","#F###F#","#F###F#","#FQ#QF#","#FQQQF#","#QQSQQ#","#QQQQQ#") + .aisle("##QQQ##", "##QCQ##", "###Q###", "#######", "#######","#######","#######","#######","###Q###","##QQQ##","##QQQ##") + .where('#', any()) + .where("C", controller(blocks(definition.getBlock()))) + .where('F', blocks(ChemicalHelper.getBlock(TagPrefix.frameGt, GTMaterials.NaquadahAlloy))) + .where('S', blocks(CosmicBlocks.COIL_RESONANT_VIRTUE_MELD.get())) + .where('H', blocks(CosmicBlocks.VOMAHINE_CERTIFIED_CHEMICALLY_RESISTANT_PIPE.get())) + .where('G', blocks(GTBlocks.CASING_LAMINATED_GLASS.get())) + .where('Q', blocks(CosmicBlocks.VOMAHINE_CERTIFIED_CHEMICALLY_RESISTANT_CASING.get()) + .or(abilities(PartAbility.IMPORT_FLUIDS)) + .or(abilities(PartAbility.EXPORT_FLUIDS)) + .or(abilities(PartAbility.IMPORT_ITEMS)) + .or(abilities(PartAbility.EXPORT_ITEMS)) + .or(abilities(PartAbility.INPUT_ENERGY)) + .or(abilities(PartAbility.MAINTENANCE)) + .or(abilities(PartAbility.DATA_ACCESS)) + .or(abilities(PartAbility.COMPUTATION_DATA_RECEPTION)) + .or(abilities(PartAbility.OPTICAL_DATA_RECEPTION)) + .or(abilities(PartAbility.PARALLEL_HATCH)) + .or(abilities(PartAbility.INPUT_LASER)) + .or(abilities(PartAbility.INPUT_ENERGY)) + ).build()) + .workableCasingRenderer(CosmicCore.id("block/casings/solid/vomahine_certified_chemically_resistant_casing"), CosmicCore.id("block/multiblock/vomahine_chemplant")) + .register(); private static MachineDefinition[] registerSoulTieredHatch(String name, String displayName, String model, IO io, int[] tiers, PartAbility... abilities) { return registerTieredMachines(name, (holder, tier) -> new SoulHatchPartMachine(holder, tier, io), diff --git a/src/main/java/com/ghostipedia/cosmiccore/common/data/recipe/CosmicRecipeModifiers.java b/src/main/java/com/ghostipedia/cosmiccore/common/data/recipe/CosmicRecipeModifiers.java index f2fb2ba..414f439 100644 --- a/src/main/java/com/ghostipedia/cosmiccore/common/data/recipe/CosmicRecipeModifiers.java +++ b/src/main/java/com/ghostipedia/cosmiccore/common/data/recipe/CosmicRecipeModifiers.java @@ -3,13 +3,20 @@ import com.ghostipedia.cosmiccore.api.machine.multiblock.MagnetWorkableElectricMultiblockMachine; import com.ghostipedia.cosmiccore.common.machine.multiblock.electric.MagneticFieldMachine; import com.gregtechceu.gtceu.api.GTValues; +import com.gregtechceu.gtceu.api.capability.IParallelHatch; import com.gregtechceu.gtceu.api.machine.MetaMachine; import com.gregtechceu.gtceu.api.machine.multiblock.CoilWorkableElectricMultiblockMachine; +import com.gregtechceu.gtceu.api.machine.multiblock.WorkableElectricMultiblockMachine; import com.gregtechceu.gtceu.api.recipe.GTRecipe; import com.gregtechceu.gtceu.api.recipe.OverclockingLogic; import com.gregtechceu.gtceu.api.recipe.RecipeHelper; +import com.gregtechceu.gtceu.api.recipe.modifier.ParallelLogic; +import com.gregtechceu.gtceu.common.data.GTRecipeModifiers; +import com.mojang.datafixers.util.Pair; import org.jetbrains.annotations.NotNull; +import java.util.Optional; + public class CosmicRecipeModifiers { public static GTRecipe magnetRecipe(MetaMachine machine, @NotNull GTRecipe recipe) { if (machine instanceof MagneticFieldMachine magnetMachine) { @@ -27,4 +34,30 @@ public static GTRecipe magnetRecipe(MetaMachine machine, @NotNull GTRecipe recip } return null; } + + public static GTRecipe vomahineChemicalPlantParallel(MetaMachine machine, @NotNull GTRecipe recipe){ + if (machine instanceof WorkableElectricMultiblockMachine vomahineMachine){ + Optional optional = vomahineMachine.getParts().stream().filter(IParallelHatch.class::isInstance) + .map(IParallelHatch.class::cast).findAny(); + if (optional.isPresent()) { + IParallelHatch hatch = optional.get(); + if (hatch.getCurrentParallel() != 0){ + var result = GTRecipeModifiers.accurateParallel(machine, recipe, hatch.getCurrentParallel(), false); + recipe = result.getFirst() == recipe ? result.getFirst().copy() : result.getFirst(); + var smartDuration = (recipe.duration * hatch.getCurrentParallel())/2; + int parallelValue = result.getSecond(); + recipe.duration = smartDuration; + return recipe; + } + } + var result = GTRecipeModifiers.accurateParallel(machine, recipe, 0, false); + recipe = result.getFirst() == recipe ? result.getFirst().copy() : result.getFirst(); + var smartDuration = recipe.duration/2; + int parallelValue = result.getSecond(); + recipe.duration = smartDuration; + return recipe; + } + return null; + } + } diff --git a/src/main/java/com/ghostipedia/cosmiccore/gtbridge/CosmicRecipeTypes.java b/src/main/java/com/ghostipedia/cosmiccore/gtbridge/CosmicRecipeTypes.java index 7bb7227..98acc11 100644 --- a/src/main/java/com/ghostipedia/cosmiccore/gtbridge/CosmicRecipeTypes.java +++ b/src/main/java/com/ghostipedia/cosmiccore/gtbridge/CosmicRecipeTypes.java @@ -6,9 +6,12 @@ import com.gregtechceu.gtceu.api.gui.GuiTextures; import com.gregtechceu.gtceu.api.recipe.GTRecipeType; import com.gregtechceu.gtceu.common.data.GTRecipeTypes; +import com.gregtechceu.gtceu.common.data.GTSoundEntries; import com.lowdragmc.lowdraglib.gui.texture.ProgressTexture; import com.lowdragmc.lowdraglib.utils.LocalizationUtils; +import static com.gregtechceu.gtceu.common.data.GTRecipeTypes.*; + public class CosmicRecipeTypes { public static final GTRecipeType SOUL_TESTER_RECIPES = GTRecipeTypes.register("soul_tester", GTRecipeTypes.MULTIBLOCK) @@ -41,9 +44,25 @@ public class CosmicRecipeTypes { return LocalizationUtils.format("cosmiccore.recipe.fieldDecay", decayRate); }) .setMaxIOSize(1, 0, 1, 0) + .setSound(GTSoundEntries.ARC) + .setProgressBar(GuiTextures.PROGRESS_BAR_ARROW, ProgressTexture.FillDirection.LEFT_TO_RIGHT); + public static final GTRecipeType VOMAHINE_INDUSTRIAL_CHEMVAT = GTRecipeTypes.register("vomahine_industrial_chemvat", GTRecipeTypes.MULTIBLOCK) + .setMaxIOSize(6, 6, 6, 6) + .setHasResearchSlot(true) + .setSound(GTSoundEntries.CHEMICAL) .setProgressBar(GuiTextures.PROGRESS_BAR_ARROW, ProgressTexture.FillDirection.LEFT_TO_RIGHT); - public static void init() { + CHEMICAL_RECIPES.onRecipeBuild((builder, provider) -> { + LARGE_CHEMICAL_RECIPES.copyFrom(builder) + .save(provider); + VOMAHINE_INDUSTRIAL_CHEMVAT.copyFrom(builder) + .save(provider); + }); + LARGE_CHEMICAL_RECIPES.onRecipeBuild((builder, provider) -> { + VOMAHINE_INDUSTRIAL_CHEMVAT.copyFrom(builder) + .save(provider); + }); + } } diff --git a/src/main/resources/assets/cosmiccore/textures/block/casings/solid/vomahine_certified_chemically_resistant_casing.png b/src/main/resources/assets/cosmiccore/textures/block/casings/solid/vomahine_certified_chemically_resistant_casing.png new file mode 100644 index 0000000000000000000000000000000000000000..b69065b9c5594aae8a60dab794321187932c2f18 GIT binary patch literal 591 zcmV-V0Dlg(}%M+^pwY);R3-(dX%CGk-}-v3Qv?R$z801V*e>p#4F6-4E_p#Xx2;2!(V z8AK#xf+Ui91AMsqg<2~jh0FPjmV%j~Wnv7cwUsdjMU9AHnhFug!^0mtptZ)idp zw2;8oopITS2;74RClyrSa#`{20J{Spj+wG7Z%AO8Dj9o!Ya3*uqKwh;(IFBfZU9lC zl!-BtT4#JXs1P1k4~`aLo{VA&l8|z9P^X#jWSWg_>#XMs9!{iFia~-RL^vW)bV4j{ zfJE_B*6*)`4_a%CF_@-`NRsKSmz7eKQYu0c$qn%QbOInfL1j;viRd-%bvoHy?6;FQ zz}t6s^ge*Z%7mFg3S(?UIx0y-VrB?Jq;Ni;`SSPYU1D#YPtQ;I2vmejr!Iz>@n)H+ zbw<_b-9ZYc(*wv=Vnl!l$KyNZc_s)-z_)*25cccLRKTfq;q~=9$K!kIvJes2*pjE` d$N&A#{{i`oIa5Ou#+U#A002ovPDHLkV1g1(3ex}p literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/cosmiccore/textures/block/casings/solid/vomahine_certified_chemically_resistant_casing.png.mcmeta b/src/main/resources/assets/cosmiccore/textures/block/casings/solid/vomahine_certified_chemically_resistant_casing.png.mcmeta new file mode 100644 index 0000000..f43839b --- /dev/null +++ b/src/main/resources/assets/cosmiccore/textures/block/casings/solid/vomahine_certified_chemically_resistant_casing.png.mcmeta @@ -0,0 +1,5 @@ +{ + "ldlib": { + "connection": "cosmiccore:block/casings/solid/vomahine_certified_chemically_resistant_casing_ctm" + } +} diff --git a/src/main/resources/assets/cosmiccore/textures/block/casings/solid/vomahine_certified_chemically_resistant_casing_ctm.png b/src/main/resources/assets/cosmiccore/textures/block/casings/solid/vomahine_certified_chemically_resistant_casing_ctm.png new file mode 100644 index 0000000000000000000000000000000000000000..e5f32e4e95089ee2dd3218b7434b28a320793c78 GIT binary patch literal 1119 zcmV-l1fctgP)t@+_*gOD^QRS55Uhy zXp>!bK`0?0f|8xF-Q86@cxDq=MFdYjw*9&7D)%|3<;y4Ehop*%0)T+KSNP@f+9jV$p;jlgf~qL%i`P7R`V_N- zs*>}Fd!>{Dz@l5?5x6`3FmQHyLXD{ks`GhOC3!e_@aXYlAOPt5fv!8innd-W7RORU z-}eZxx_uWDB_g)v^;tYX`s3vbOqExE3ZmNvB7h(w)auhB;kXAxfCLf>QUQ4N=kK$4 zcPHJvwc_ybfVOQBF*fTpYDP*4wT4nE!_ZSo!8GCSG>uKY9XFhwo^bE}gIWCX@ed>f zhGAeFGM0>{=?GxVm9iOecWQOqE1{qQn@vy66%r0EL?Xq&}sK26V1YAF4i3%nMFVW5;k)3k^L z5tV+^W2Tt32!RKA!axOrStRbZYA(S#si%8%eq?9Hd4`IDt({{%B`5CwG+@Hli|Lqqv=S&_lKcAmb zi=!e$RN5|)QsSUn(6$Ry6FFB9Dc6K`8RVibD z6f8NpY>4nlZFdE#GIc+|sfYzllW-p>V~|cxo|4+>CRO9#!@a&|-lxUi84+LnFu zgnaeQcj2Y7JY2F9gmD<(>*skKDWz^jC8(vKqOg{Jb!k4%HQh>UiiObnYI7`002ovPDHLkV1krz7P|ld literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/cosmiccore/textures/block/casings/solid/vomahine_certified_chemically_resistant_pipe.png b/src/main/resources/assets/cosmiccore/textures/block/casings/solid/vomahine_certified_chemically_resistant_pipe.png new file mode 100644 index 0000000000000000000000000000000000000000..cd9f09aab3584e8ccdb63ed258115aad72df1630 GIT binary patch literal 555 zcmV+`0@VG9P)D5pwCM zbv(D$2zS&BRbv=>S_BcnACoQTnaSjNN{O5cW_bjuBS>kjk#iwpBs?Vnc&+0l5mXh+ zc~&B-uL>q;$GLlQ9YcF%U&x#LiT*NoNhGh|k?F8FcXu__$M%0184>R-UPiCU5wftjs0AtKgEFz-n?lNgK05~TJ zr)HDcYzn}9zIclPYI(+Ul6ah^=|@~3$R~eewU9GZxkNCG_jEQ(hVi}>wB7FL^|~In z+pRJ|mI+a0$TIQH+wJeELlQC<|j>nMtx)#`z!X{f6AsRFGv0NMErK)zT2AR>qeT5FV21D+7v3K1cSE@et7 z!Z7sC2LfY^H+ifo2m*{TL{T*0s|wO|IccuznmCRJq9E{%lkpy8*^>hVaDZ5AZaUMu z@arD*MSzs$N%s3!NfOO&_tNLT6?{$qbL4s9?}65u_4*N!3wclMobz(dIgZD2Ao5&j z+t!;hexEV6_KFME8V-lIdu{>zaN$2O`!{|9$S7vfgzt@Z00000NkvXXu0mjfema!8 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/cosmiccore/textures/block/multiblock/vomahine_chemplant/overlay_front_active.png b/src/main/resources/assets/cosmiccore/textures/block/multiblock/vomahine_chemplant/overlay_front_active.png new file mode 100644 index 0000000000000000000000000000000000000000..7f44d236232148eeed39a9218d79fce839e6513c GIT binary patch literal 357 zcmV-r0h<1aP)LlQC|CKoCXW09qur$q8K0Avsox$g<)lm7AO&PR}OiwcJ2m N44$rjF6*2UngBs&9}EBh literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/cosmiccore/textures/block/multiblock/vomahine_chemplant/overlay_front_emissive.png b/src/main/resources/assets/cosmiccore/textures/block/multiblock/vomahine_chemplant/overlay_front_emissive.png new file mode 100644 index 0000000000000000000000000000000000000000..6360e32d246dc8a40349b93bea9c1b02be5d2825 GIT binary patch literal 120 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9GG!XV7ZFl&wkP*BU$ z#WBR9H~G*1|MtwP4V_ANn=doii%t9gPe;dvo#&`tf=q8~ATwJlBg3s397i^XLlQC+;KoCXWtb`o2cW|Lj;FuIan7B#hCO66fa;!9N zL{KF#h7>Athg~EP+7ylyZDfZyn(8w<^XKpWS#i!WC)BKNAnd_P18_S?^6X@YXIJ!YXGvB8vsNE5kYHB6h#A`5L^loAq-Dt zQ4|pbfpIFtjC z=R(`I-jwnCjIp(6T(H)#-@jgS3*d(f|B2bZ@e^hsW~qoa4Z#2a002ovPDHLkV1g#m Bj!ggn literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/cosmiccore/textures/block/multiblock/vomahine_chemplant/overlay_front_paused_emissive.png b/src/main/resources/assets/cosmiccore/textures/block/multiblock/vomahine_chemplant/overlay_front_paused_emissive.png new file mode 100644 index 0000000000000000000000000000000000000000..64365bdac6388af66432ef0d4949284ee35788cc GIT binary patch literal 121 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9GG!XV7ZFl&wkP*B^` z#WBR9H~G*1|MtwP4V_ANn=d!83;+0MKjVOV$$@}3Ovf%pNSG!B02ObW#Vzc