From f78c43a687838ea2b1b1c10c3a2753eab7bc7002 Mon Sep 17 00:00:00 2001 From: DancingSnow <1121149616@qq.com> Date: Fri, 7 Feb 2025 17:39:59 +0800 Subject: [PATCH 1/2] add appmek support --- build.gradle | 4 +- gradle/scripts/dependencies.gradle | 7 +- gradle/scripts/jars.gradle | 11 --- gradle/scripts/moddevgradle.gradle | 77 +++++++++++++++++ gradle/scripts/neogradle.gradle | 54 ------------ gradle/scripts/publishing.gradle | 1 - settings.gradle | 14 ++-- .../misc/advanced_chemical_cell_housing.json | 32 +++++++ ...tal_singularity_chemical_storage_cell.json | 32 +++++++ .../misc/quatum_chemical_storage_cell.json | 32 +++++++ .../advanced_chemical_cell_housing.json | 24 ++++++ .../quatum_chemical_storage_cell.json | 14 ++++ ...tal_singularity_chemical_storage_cell.json | 16 ++++ .../recipe/quatum_chemical_storage_cell.json | 16 ++++ .../dancingsnow/bigger_ae2/BiggerAE2Mod.java | 13 ++- .../bigger_ae2/init/ModCreativeTab.java | 29 ------- .../AppliedMekanisticsItems.java | 84 +++++++++++++++++++ .../item/AdvancedChemicalStorageCell.java | 25 ++++++ 18 files changed, 376 insertions(+), 109 deletions(-) create mode 100644 gradle/scripts/moddevgradle.gradle delete mode 100644 gradle/scripts/neogradle.gradle create mode 100644 src/generated/resources/data/bigger_ae2/advancement/recipes/misc/advanced_chemical_cell_housing.json create mode 100644 src/generated/resources/data/bigger_ae2/advancement/recipes/misc/digital_singularity_chemical_storage_cell.json create mode 100644 src/generated/resources/data/bigger_ae2/advancement/recipes/misc/quatum_chemical_storage_cell.json create mode 100644 src/generated/resources/data/bigger_ae2/recipe/advanced_chemical_cell_housing.json create mode 100644 src/generated/resources/data/bigger_ae2/recipe/cell_upgrade/quatum_chemical_storage_cell.json create mode 100644 src/generated/resources/data/bigger_ae2/recipe/digital_singularity_chemical_storage_cell.json create mode 100644 src/generated/resources/data/bigger_ae2/recipe/quatum_chemical_storage_cell.json create mode 100644 src/main/java/cn/dancingsnow/bigger_ae2/integration/appliedmekanistics/AppliedMekanisticsItems.java create mode 100644 src/main/java/cn/dancingsnow/bigger_ae2/integration/appliedmekanistics/item/AdvancedChemicalStorageCell.java diff --git a/build.gradle b/build.gradle index 98bd7c2..ba9b47f 100644 --- a/build.gradle +++ b/build.gradle @@ -3,7 +3,7 @@ plugins { id 'eclipse' id 'idea' id 'maven-publish' - alias libs.plugins.neogradle + alias libs.plugins.modDevGradle alias libs.plugins.machete alias libs.plugins.spotless } @@ -19,7 +19,7 @@ java.toolchain.languageVersion = JavaLanguageVersion.of(21) apply from: "$rootDir/gradle/scripts/dependencies.gradle" apply from: "$rootDir/gradle/scripts/jars.gradle" -apply from: "$rootDir/gradle/scripts/neogradle.gradle" +apply from: "$rootDir/gradle/scripts/moddevgradle.gradle" apply from: "$rootDir/gradle/scripts/publishing.gradle" apply from: "$rootDir/gradle/scripts/repositories.gradle" apply from: "$rootDir/gradle/scripts/resources.gradle" diff --git a/gradle/scripts/dependencies.gradle b/gradle/scripts/dependencies.gradle index 9039b26..85389d7 100644 --- a/gradle/scripts/dependencies.gradle +++ b/gradle/scripts/dependencies.gradle @@ -17,8 +17,6 @@ java { } dependencies { - implementation(forge.neoForge) - // Registrate api("com.tterrag.registrate:Registrate:${forge.versions.registrate.get()}") jarJar("com.tterrag.registrate:Registrate:${forge.versions.registrate.get()}") @@ -48,6 +46,11 @@ dependencies { implementation("curse.maven:glodium-957920:5821676") implementation("curse.maven:applied-flux-965012:5946853") + // applied mekanistics + implementation("curse.maven:mekanism-268560:6018306") + implementation("curse.maven:applied-mekanistics-574300:5978711") + + // lombok compileOnly 'org.projectlombok:lombok:1.18.30' annotationProcessor 'org.projectlombok:lombok:1.18.30' diff --git a/gradle/scripts/jars.gradle b/gradle/scripts/jars.gradle index 89350fd..25d94cb 100644 --- a/gradle/scripts/jars.gradle +++ b/gradle/scripts/jars.gradle @@ -2,15 +2,4 @@ java { withSourcesJar() } -// Enable the Jar-in-Jar system for your mod -jarJar.enable() - -tasks.jar { - archiveClassifier = "slim" -} - -tasks.jarJar { - archiveClassifier.convention(null) -} - archivesBaseName = "${project.name}-${libs.versions.minecraft.get()}" diff --git a/gradle/scripts/moddevgradle.gradle b/gradle/scripts/moddevgradle.gradle new file mode 100644 index 0000000..d1b3e39 --- /dev/null +++ b/gradle/scripts/moddevgradle.gradle @@ -0,0 +1,77 @@ +neoForge { + version = forge.versions.neoForge.get() + + parchment { + minecraftVersion = "1.21.1" + mappingsVersion = libs.versions.parchment.get() + } + + // This line is optional. Access Transformers are automatically detected + accessTransformers = project.files('src/main/resources/META-INF/accesstransformer.cfg') + + runs { + // applies to all the run configs below + configureEach { + // Recommended logging data for a userdev environment + // The markers can be added/remove as needed separated by commas. + // "SCAN": For mods scan. + // "REGISTRIES": For firing of registry events. + // "REGISTRYDUMP": For getting the contents of all registries. + systemProperty 'forge.logging.markers', 'REGISTRIES' + + // Recommended logging level for the console + // You can set various levels here. + // Please read: https://stackoverflow.com/questions/2031163/when-to-use-the-different-log-levels + logLevel = org.slf4j.event.Level.DEBUG + } + + client { + client() + + // Comma-separated list of namespaces to load gametests from. Empty = all namespaces. + systemProperty 'neoforge.enabledGameTestNamespaces', project.mod_id + } + + server { + server() + programArgument '--nogui' + systemProperty 'neoforge.enabledGameTestNamespaces', project.mod_id + } + + // This run config launches GameTestServer and runs all registered gametests, then exits. + // By default, the server will crash when no gametests are provided. + // The gametest system is also enabled by default for other run configs under the /test command. + gameTestServer { + type = "gameTestServer" + systemProperty 'neoforge.enabledGameTestNamespaces', project.mod_id + } + + data { + data() + + // example of overriding the workingDirectory set in configureEach above, uncomment if you want to use it + // gameDirectory = project.file('run-data') + + // Specify the modid for data generation, where to output the resulting resource, and where to look for existing resources. + programArguments.addAll '--mod', project.mod_id, '--all', '--output', file('src/generated/resources/').getAbsolutePath(), '--existing', file('src/main/resources/').getAbsolutePath() + } + } + + mods { + // define mod <-> source bindings + // these are used to tell the game which sources are for which mod + // mostly optional in a single mod project + // but multi mod projects should define one per mod + "${mod_id}" { + sourceSet(sourceSets.main) + } + } +} + +// IDEA no longer automatically downloads sources/javadoc jars for dependencies, so we need to explicitly enable the behavior. +idea { + module { + downloadSources = true + downloadJavadoc = true + } +} diff --git a/gradle/scripts/neogradle.gradle b/gradle/scripts/neogradle.gradle deleted file mode 100644 index 097af02..0000000 --- a/gradle/scripts/neogradle.gradle +++ /dev/null @@ -1,54 +0,0 @@ -subsystems { - parchment { - minecraftVersion = '1.20.6' - mappingsVersion = libs.versions.parchment.get() - } -} - -minecraft.accessTransformers.file rootProject.file('src/main/resources/META-INF/accesstransformer.cfg') - -// Default run configurations. -// These can be tweaked, removed, or duplicated as needed. -runs { - // applies to all the run configs below - configureEach { - // Recommended logging data for a userdev environment - // The markers can be added/remove as needed separated by commas. - // "SCAN": For mods scan. - // "REGISTRIES": For firing of registry events. - // "REGISTRYDUMP": For getting the contents of all registries. - // systemProperty 'forge.logging.markers', 'REGISTRIES' - - // Recommended logging level for the console - // You can set various levels here. - // Please read: https://stackoverflow.com/questions/2031163/when-to-use-the-different-log-levels - systemProperty 'forge.logging.console.level', 'debug' - - modSource project.sourceSets.main - } - - client { - // Comma-separated list of namespaces to load gametests from. Empty = all namespaces. - systemProperty 'forge.enabledGameTestNamespaces', project.mod_id - } - - server { - systemProperty 'forge.enabledGameTestNamespaces', project.mod_id - programArgument '--nogui' - } - - // This run config launches GameTestServer and runs all registered gametests, then exits. - // By default, the server will crash when no gametests are provided. - // The gametest system is also enabled by default for other run configs under the /test command. - gameTestServer { - systemProperty 'forge.enabledGameTestNamespaces', project.mod_id - } - - data { - // example of overriding the workingDirectory set in configureEach above, uncomment if you want to use it - // workingDirectory project.file('run-data') - - // Specify the modid for data generation, where to output the resulting resource, and where to look for existing resources. - programArguments.addAll '--mod', project.mod_id, '--all', '--output', file('src/generated/resources/').getAbsolutePath(), '--existing', file('src/main/resources/').getAbsolutePath() - } -} diff --git a/gradle/scripts/publishing.gradle b/gradle/scripts/publishing.gradle index 3decacf..90b2796 100644 --- a/gradle/scripts/publishing.gradle +++ b/gradle/scripts/publishing.gradle @@ -1,6 +1,5 @@ artifacts { archives tasks.jar - archives tasks.jarJar archives tasks.sourcesJar } diff --git a/settings.gradle b/settings.gradle index 90983b6..e58ef28 100644 --- a/settings.gradle +++ b/settings.gradle @@ -21,22 +21,22 @@ dependencyResolutionManagement { // Mod Dependencies Versions // Common - def jeiVersion = "19.8.5.118" + def jeiVersion = "19.17.0.193" def reiVersion = "16.0.744" def ae2Version = "19.0.8-alpha" // NeoForge - def neoForgeVersion = "21.1.15" - def registrateForgeVersion = "MC1.21-1.3.0+50" + def neoForgeVersion = "21.1.79" + def registrateForgeVersion = "MC1.21-1.3.0+55" def jadeForgeVersion = "15.3.4+neoforge" def topForgeVersion = "1.20.4_neo-11.0.0-1" // Libs - def parchmentVersion = "2024.07.28" // https://parchmentmc.org/docs/getting-started + def parchmentVersion = "2024.11.17" // https://parchmentmc.org/docs/getting-started def shadowVersion = "7.1.2" def macheteVersion = "1.+" def spotlessVersion = "7.0.0.BETA1" - def neogradleVersion = "7.0.158" + def modDevGradleVersion = "2.0.34-beta" forge { version("forgeShortVersion", neoForgeVersion) @@ -70,8 +70,8 @@ dependencyResolutionManagement { version("parchment", parchmentVersion) version("minecraft", minecraftVersion) - def neogradle = version("neogradle", neogradleVersion) - plugin("neogradle", "net.neoforged.gradle.userdev").versionRef(neogradle) + def modDevGradle = version("modDevGradle", modDevGradleVersion) + plugin("modDevGradle", "net.neoforged.moddev").versionRef(modDevGradle) def shadow = version("shadow", shadowVersion) plugin("shadow", "com.github.johnrengelman.shadow").versionRef(shadow) diff --git a/src/generated/resources/data/bigger_ae2/advancement/recipes/misc/advanced_chemical_cell_housing.json b/src/generated/resources/data/bigger_ae2/advancement/recipes/misc/advanced_chemical_cell_housing.json new file mode 100644 index 0000000..279aa2b --- /dev/null +++ b/src/generated/resources/data/bigger_ae2/advancement/recipes/misc/advanced_chemical_cell_housing.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "bigger_ae2:advanced_chemical_cell_housing" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "hasitem": { + "conditions": { + "items": [ + { + "items": "#c:ingots/refined_obsidian" + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "hasitem" + ] + ], + "rewards": { + "recipes": [ + "bigger_ae2:advanced_chemical_cell_housing" + ] + } +} \ No newline at end of file diff --git a/src/generated/resources/data/bigger_ae2/advancement/recipes/misc/digital_singularity_chemical_storage_cell.json b/src/generated/resources/data/bigger_ae2/advancement/recipes/misc/digital_singularity_chemical_storage_cell.json new file mode 100644 index 0000000..3d0ff3f --- /dev/null +++ b/src/generated/resources/data/bigger_ae2/advancement/recipes/misc/digital_singularity_chemical_storage_cell.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_the_recipe": { + "conditions": { + "recipe": "bigger_ae2:digital_singularity_chemical_storage_cell" + }, + "trigger": "minecraft:recipe_unlocked" + }, + "hasitem": { + "conditions": { + "items": [ + { + "items": "bigger_ae2:advanced_chemical_cell_housing" + } + ] + }, + "trigger": "minecraft:inventory_changed" + } + }, + "requirements": [ + [ + "has_the_recipe", + "hasitem" + ] + ], + "rewards": { + "recipes": [ + "bigger_ae2:digital_singularity_chemical_storage_cell" + ] + } +} \ No newline at end of file diff --git a/src/generated/resources/data/bigger_ae2/advancement/recipes/misc/quatum_chemical_storage_cell.json b/src/generated/resources/data/bigger_ae2/advancement/recipes/misc/quatum_chemical_storage_cell.json new file mode 100644 index 0000000..81be5ea --- /dev/null +++ b/src/generated/resources/data/bigger_ae2/advancement/recipes/misc/quatum_chemical_storage_cell.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "criteria": { + "has_item": { + "conditions": { + "items": [ + { + "items": "bigger_ae2:advanced_chemical_cell_housing" + } + ] + }, + "trigger": "minecraft:inventory_changed" + }, + "has_the_recipe": { + "conditions": { + "recipe": "bigger_ae2:quatum_chemical_storage_cell" + }, + "trigger": "minecraft:recipe_unlocked" + } + }, + "requirements": [ + [ + "has_the_recipe", + "has_item" + ] + ], + "rewards": { + "recipes": [ + "bigger_ae2:quatum_chemical_storage_cell" + ] + } +} \ No newline at end of file diff --git a/src/generated/resources/data/bigger_ae2/recipe/advanced_chemical_cell_housing.json b/src/generated/resources/data/bigger_ae2/recipe/advanced_chemical_cell_housing.json new file mode 100644 index 0000000..161a242 --- /dev/null +++ b/src/generated/resources/data/bigger_ae2/recipe/advanced_chemical_cell_housing.json @@ -0,0 +1,24 @@ +{ + "type": "minecraft:crafting_shaped", + "category": "misc", + "key": { + "A": { + "item": "ae2:quartz_glass" + }, + "B": { + "item": "minecraft:redstone" + }, + "C": { + "tag": "c:ingots/refined_obsidian" + } + }, + "pattern": [ + "ABA", + "B B", + "CCC" + ], + "result": { + "count": 1, + "id": "bigger_ae2:advanced_chemical_cell_housing" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/bigger_ae2/recipe/cell_upgrade/quatum_chemical_storage_cell.json b/src/generated/resources/data/bigger_ae2/recipe/cell_upgrade/quatum_chemical_storage_cell.json new file mode 100644 index 0000000..fb02164 --- /dev/null +++ b/src/generated/resources/data/bigger_ae2/recipe/cell_upgrade/quatum_chemical_storage_cell.json @@ -0,0 +1,14 @@ +{ + "type": "ae2:storage_cell_disassembly", + "cell": "bigger_ae2:quatum_chemical_storage_cell", + "cell_disassembly_items": [ + { + "count": 1, + "id": "bigger_ae2:advanced_chemical_cell_housing" + }, + { + "count": 1, + "id": "bigger_ae2:quantum_cell_component" + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/bigger_ae2/recipe/digital_singularity_chemical_storage_cell.json b/src/generated/resources/data/bigger_ae2/recipe/digital_singularity_chemical_storage_cell.json new file mode 100644 index 0000000..c47ba34 --- /dev/null +++ b/src/generated/resources/data/bigger_ae2/recipe/digital_singularity_chemical_storage_cell.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "bigger_ae2:advanced_chemical_cell_housing" + }, + { + "item": "bigger_ae2:digital_singularity_cell_component" + } + ], + "result": { + "count": 1, + "id": "bigger_ae2:digital_singularity_chemical_storage_cell" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/bigger_ae2/recipe/quatum_chemical_storage_cell.json b/src/generated/resources/data/bigger_ae2/recipe/quatum_chemical_storage_cell.json new file mode 100644 index 0000000..9185592 --- /dev/null +++ b/src/generated/resources/data/bigger_ae2/recipe/quatum_chemical_storage_cell.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shapeless", + "category": "misc", + "ingredients": [ + { + "item": "bigger_ae2:advanced_chemical_cell_housing" + }, + { + "item": "bigger_ae2:quantum_cell_component" + } + ], + "result": { + "count": 1, + "id": "bigger_ae2:quatum_chemical_storage_cell" + } +} \ No newline at end of file diff --git a/src/main/java/cn/dancingsnow/bigger_ae2/BiggerAE2Mod.java b/src/main/java/cn/dancingsnow/bigger_ae2/BiggerAE2Mod.java index b522494..e1350e5 100644 --- a/src/main/java/cn/dancingsnow/bigger_ae2/BiggerAE2Mod.java +++ b/src/main/java/cn/dancingsnow/bigger_ae2/BiggerAE2Mod.java @@ -7,6 +7,7 @@ import cn.dancingsnow.bigger_ae2.init.ModCreativeTab; import cn.dancingsnow.bigger_ae2.init.ModItems; import cn.dancingsnow.bigger_ae2.integration.appliedflux.AppliedFluxItems; +import cn.dancingsnow.bigger_ae2.integration.appliedmekanistics.AppliedMekanisticsItems; import cn.dancingsnow.bigger_ae2.item.cell.DigitalSingularityCellItem; import appeng.api.storage.StorageCells; @@ -20,6 +21,7 @@ import net.minecraft.server.packs.repository.Pack; import net.minecraft.server.packs.repository.PackSource; import net.neoforged.bus.api.IEventBus; +import net.neoforged.fml.ModList; import net.neoforged.fml.common.Mod; import net.neoforged.fml.event.lifecycle.FMLCommonSetupEvent; import net.neoforged.neoforge.event.AddPackFindersEvent; @@ -44,13 +46,18 @@ public BiggerAE2Mod(IEventBus modEventBus) { ModBlockEntities.register(); ModComponents.register(modEventBus); - try { - Class.forName("com.glodblock.github.appflux.common.me.key.type.FluxKeyType"); + if (ModList.get().isLoaded("appflux")) { AppliedFluxItems.register(); - } catch (ClassNotFoundException e) { + } else { BiggerAE2Mod.LOGGER.debug("Applied Flux not installed, passed"); } + if (ModList.get().isLoaded("appmek")) { + AppliedMekanisticsItems.register(); + } else { + BiggerAE2Mod.LOGGER.debug("Applied Mekanistics not installed, passed"); + } + modEventBus.addListener(BiggerAE2Mod::initUpgrades); modEventBus.addListener(BiggerAE2Mod::initStorageCells); modEventBus.addListener(BiggerAE2Mod::packSetup); diff --git a/src/main/java/cn/dancingsnow/bigger_ae2/init/ModCreativeTab.java b/src/main/java/cn/dancingsnow/bigger_ae2/init/ModCreativeTab.java index 11e9481..1626063 100644 --- a/src/main/java/cn/dancingsnow/bigger_ae2/init/ModCreativeTab.java +++ b/src/main/java/cn/dancingsnow/bigger_ae2/init/ModCreativeTab.java @@ -11,35 +11,6 @@ public class ModCreativeTab { public static final RegistryEntry TAB = REGISTRATE .defaultCreativeTab("bigger_ae2", builder -> builder .icon(() -> ModItems.SINGULARITY_ITEM_CELL.get().getDefaultInstance()) - // .displayItems((parameters, output) -> { - // boolean isAppliedFluxLoaded = false; - // try { - // - // Class.forName("com.glodblock.github.appflux.common.me.key.type.FluxKeyType"); - // isAppliedFluxLoaded = true; - // } catch (ClassNotFoundException e) { - // BiggerAE2Mod.LOGGER.debug("Applied Flux not installed, - // passed"); - // } - // output.accept(ModItems.ADVANCED_ITEM_CELL_HOUSING); - // output.accept(ModItems.ADVANCED_FLUID_CELL_HOUSING); - // if (isAppliedFluxLoaded) - // output.accept(AppliedFluxItems.ADVANCED_FLUX_CELL_HOUSING); - // output.accept(ModItems.QUANTUM_CELL_COMPONENT); - // output.accept(ModItems.QUANTUM_ITEM_CELL); - // output.accept(ModItems.QUANTUM_FLUID_CELL); - // if (isAppliedFluxLoaded) - // output.accept(AppliedFluxItems.QUANTUM_FLUX_CELL); - // output.accept(ModItems.SINGULARITY_CELL_COMPONENT); - // output.accept(ModItems.SINGULARITY_ITEM_CELL); - // output.accept(ModItems.SINGULARITY_FLUID_CELL); - // if (isAppliedFluxLoaded) - // output.accept(AppliedFluxItems.SINGULARITY_FLUX_CELL); - // output.accept(ModBlocks.ACCELERATOR_4); - // output.accept(ModBlocks.ACCELERATOR_16); - // output.accept(ModBlocks.ACCELERATOR_64); - // output.accept(ModBlocks.ACCELERATOR_256); - // }) .build()) .register(); diff --git a/src/main/java/cn/dancingsnow/bigger_ae2/integration/appliedmekanistics/AppliedMekanisticsItems.java b/src/main/java/cn/dancingsnow/bigger_ae2/integration/appliedmekanistics/AppliedMekanisticsItems.java new file mode 100644 index 0000000..2647cfd --- /dev/null +++ b/src/main/java/cn/dancingsnow/bigger_ae2/integration/appliedmekanistics/AppliedMekanisticsItems.java @@ -0,0 +1,84 @@ +package cn.dancingsnow.bigger_ae2.integration.appliedmekanistics; + +import cn.dancingsnow.bigger_ae2.init.ModItems; +import cn.dancingsnow.bigger_ae2.integration.appliedmekanistics.item.AdvancedChemicalStorageCell; +import cn.dancingsnow.bigger_ae2.item.cell.DigitalSingularityCellItem; + +import appeng.core.definitions.AEBlocks; +import appeng.items.materials.MaterialItem; +import appeng.recipes.game.StorageCellDisassemblyRecipe; + +import net.minecraft.data.recipes.RecipeCategory; +import net.minecraft.data.recipes.ShapedRecipeBuilder; +import net.minecraft.data.recipes.ShapelessRecipeBuilder; +import net.minecraft.world.item.Items; + +import com.tterrag.registrate.providers.RegistrateRecipeProvider; +import com.tterrag.registrate.util.entry.ItemEntry; +import me.ramidzkh.mekae2.ae2.MekanismKeyType; +import mekanism.common.tags.MekanismTags; + +import java.util.List; + +import static cn.dancingsnow.bigger_ae2.BiggerAE2Mod.REGISTRATE; + +public class AppliedMekanisticsItems { + + public static final ItemEntry ADVANCED_CHEMICAL_CELL_HOUSING = REGISTRATE + .item("advanced_chemical_cell_housing", MaterialItem::new) + .recipe((ctx, provider) -> { + ShapedRecipeBuilder.shaped(RecipeCategory.MISC, ctx.get()) + .pattern("ABA") + .pattern("B B") + .pattern("CCC") + .define('A', AEBlocks.QUARTZ_GLASS) + .define('B', Items.REDSTONE) + .define('C', MekanismTags.Items.INGOTS_REFINED_OBSIDIAN) + .unlockedBy( + "hasitem", RegistrateRecipeProvider.has(MekanismTags.Items.INGOTS_REFINED_OBSIDIAN)) + .save(provider); + }) + .register(); + + public static final ItemEntry QUANTUM_CHEMICAL_STORAGE_CELL = + REGISTRATE + .item( + "quatum_chemical_storage_cell", + p -> new AdvancedChemicalStorageCell(p, 20, (1 << 28 - 1) / 1024, 65536, 1)) + .recipe((ctx, provider) -> { + ShapelessRecipeBuilder.shapeless(RecipeCategory.MISC, ctx.get()) + .requires(ADVANCED_CHEMICAL_CELL_HOUSING) + .requires(ModItems.QUANTUM_CELL_COMPONENT) + .unlockedBy( + "has_item", RegistrateRecipeProvider.has(ADVANCED_CHEMICAL_CELL_HOUSING)) + .save(provider); + provider.accept( + ctx.getId().withPrefix("cell_upgrade/"), + new StorageCellDisassemblyRecipe( + ctx.get(), + List.of( + ADVANCED_CHEMICAL_CELL_HOUSING.asStack(), + ModItems.QUANTUM_CELL_COMPONENT.asStack())), + null); + }) + .register(); + + public static final ItemEntry SINGULARITY_CHEMICAL_STORAGE_CELL = + REGISTRATE + .item( + "digital_singularity_chemical_storage_cell", + p -> new DigitalSingularityCellItem( + p, + MekanismKeyType.TYPE, + ModItems.SINGULARITY_CELL_COMPONENT, + ADVANCED_CHEMICAL_CELL_HOUSING)) + .recipe((ctx, provider) -> ShapelessRecipeBuilder.shapeless( + RecipeCategory.MISC, ctx.get()) + .requires(ADVANCED_CHEMICAL_CELL_HOUSING) + .requires(ModItems.SINGULARITY_CELL_COMPONENT) + .unlockedBy("hasitem", RegistrateRecipeProvider.has(ADVANCED_CHEMICAL_CELL_HOUSING)) + .save(provider)) + .register(); + + public static void register() {} +} diff --git a/src/main/java/cn/dancingsnow/bigger_ae2/integration/appliedmekanistics/item/AdvancedChemicalStorageCell.java b/src/main/java/cn/dancingsnow/bigger_ae2/integration/appliedmekanistics/item/AdvancedChemicalStorageCell.java new file mode 100644 index 0000000..8b34a81 --- /dev/null +++ b/src/main/java/cn/dancingsnow/bigger_ae2/integration/appliedmekanistics/item/AdvancedChemicalStorageCell.java @@ -0,0 +1,25 @@ +package cn.dancingsnow.bigger_ae2.integration.appliedmekanistics.item; + +import appeng.api.stacks.AEKey; +import appeng.items.storage.BasicStorageCell; + +import net.minecraft.world.item.ItemStack; + +import me.ramidzkh.mekae2.ae2.MekanismKey; +import me.ramidzkh.mekae2.ae2.MekanismKeyType; +import mekanism.api.chemical.attribute.ChemicalAttributeValidator; + +public class AdvancedChemicalStorageCell extends BasicStorageCell { + public AdvancedChemicalStorageCell( + Properties properties, double idleDrain, int kilobytes, int bytesPerType, int totalTypes) { + super(properties, idleDrain, kilobytes, bytesPerType, totalTypes, MekanismKeyType.TYPE); + } + + public boolean isBlackListed(ItemStack cellItem, AEKey requestedAddition) { + if (requestedAddition instanceof MekanismKey key) { + return !ChemicalAttributeValidator.DEFAULT.process(key.getStack()); + } else { + return true; + } + } +} From 17cbc1890a41b4abec69fd1b0c19039593168259 Mon Sep 17 00:00:00 2001 From: DancingSnow <1121149616@qq.com> Date: Sat, 15 Feb 2025 18:16:46 +0800 Subject: [PATCH 2/2] update textures --- .../assets/bigger_ae2/lang/en_ud.json | 3 ++ .../assets/bigger_ae2/lang/en_us.json | 3 ++ .../item/advanced_chemical_cell_housing.json | 6 +++ ...tal_singularity_chemical_storage_cell.json | 6 +++ .../item/quatum_chemical_storage_cell.json | 6 +++ .../assets/bigger_ae2/lang/zh_cn.json | 47 ++++++++++-------- .../item/advanced_chemical_cell_housing.png | Bin 0 -> 548 bytes .../item/advanced_fluid_cell_housing.png | Bin 1236 -> 562 bytes .../item/advanced_flux_cell_housing.png | Bin 1217 -> 483 bytes .../item/advanced_item_cell_housing.png | Bin 1230 -> 534 bytes .../digital_singularity_cell_component.png | Bin 1822 -> 1133 bytes ...ital_singularity_cell_component.png.mcmeta | 28 +++++++++++ ...ital_singularity_chemical_storage_cell.png | Bin 0 -> 811 bytes ...ngularity_chemical_storage_cell.png.mcmeta | 31 ++++++++++++ ...digital_singularity_fluid_storage_cell.png | Bin 1311 -> 818 bytes .../digital_singularity_flux_storage_cell.png | Bin 1294 -> 788 bytes .../digital_singularity_item_storage_cell.png | Bin 1305 -> 802 bytes .../item/quantum_fluid_storage_cell.png | Bin 1242 -> 468 bytes .../item/quantum_flux_storage_cell.png | Bin 1228 -> 541 bytes .../item/quantum_item_storage_cell.png | Bin 1237 -> 429 bytes .../item/quatum_chemical_storage_cell.png | Bin 0 -> 557 bytes 21 files changed, 108 insertions(+), 22 deletions(-) create mode 100644 src/generated/resources/assets/bigger_ae2/models/item/advanced_chemical_cell_housing.json create mode 100644 src/generated/resources/assets/bigger_ae2/models/item/digital_singularity_chemical_storage_cell.json create mode 100644 src/generated/resources/assets/bigger_ae2/models/item/quatum_chemical_storage_cell.json create mode 100644 src/main/resources/assets/bigger_ae2/textures/item/advanced_chemical_cell_housing.png create mode 100644 src/main/resources/assets/bigger_ae2/textures/item/digital_singularity_chemical_storage_cell.png create mode 100644 src/main/resources/assets/bigger_ae2/textures/item/digital_singularity_chemical_storage_cell.png.mcmeta create mode 100644 src/main/resources/assets/bigger_ae2/textures/item/quatum_chemical_storage_cell.png diff --git a/src/generated/resources/assets/bigger_ae2/lang/en_ud.json b/src/generated/resources/assets/bigger_ae2/lang/en_ud.json index 4ab1831..eac5edd 100644 --- a/src/generated/resources/assets/bigger_ae2/lang/en_ud.json +++ b/src/generated/resources/assets/bigger_ae2/lang/en_ud.json @@ -5,10 +5,12 @@ "block.bigger_ae2.256_core_crafting_accelerator": "ɹoʇɐɹǝןǝɔɔⱯ buıʇɟɐɹƆ ǝɹoƆ 9ϛᄅ", "block.bigger_ae2.4_core_crafting_accelerator": "ɹoʇɐɹǝןǝɔɔⱯ buıʇɟɐɹƆ ǝɹoƆ ㄣ", "block.bigger_ae2.64_core_crafting_accelerator": "ɹoʇɐɹǝןǝɔɔⱯ buıʇɟɐɹƆ ǝɹoƆ ㄣ9", + "item.bigger_ae2.advanced_chemical_cell_housing": "buısnoH ןןǝƆ ןɐɔıɯǝɥƆ pǝɔuɐʌpⱯ", "item.bigger_ae2.advanced_fluid_cell_housing": "buısnoH ןןǝƆ pınןℲ pǝɔuɐʌpⱯ", "item.bigger_ae2.advanced_flux_cell_housing": "buısnoH ןןǝƆ xnןℲ pǝɔuɐʌpⱯ", "item.bigger_ae2.advanced_item_cell_housing": "buısnoH ןןǝƆ ɯǝʇI pǝɔuɐʌpⱯ", "item.bigger_ae2.digital_singularity_cell_component": "ʇuǝuodɯoƆ ןןǝƆ ʎʇıɹɐןnbuıS ןɐʇıbıᗡ", + "item.bigger_ae2.digital_singularity_chemical_storage_cell": "ןןǝƆ ǝbɐɹoʇS ןɐɔıɯǝɥƆ ʎʇıɹɐןnbuıS ןɐʇıbıᗡ", "item.bigger_ae2.digital_singularity_fluid_storage_cell": "ןןǝƆ ǝbɐɹoʇS pınןℲ ʎʇıɹɐןnbuıS ןɐʇıbıᗡ", "item.bigger_ae2.digital_singularity_flux_storage_cell": "ןןǝƆ ǝbɐɹoʇS xnןℲ ʎʇıɹɐןnbuıS ןɐʇıbıᗡ", "item.bigger_ae2.digital_singularity_item_storage_cell": "ןןǝƆ ǝbɐɹoʇS ɯǝʇI ʎʇıɹɐןnbuıS ןɐʇıbıᗡ", @@ -16,6 +18,7 @@ "item.bigger_ae2.quantum_fluid_storage_cell": "ןןǝƆ ǝbɐɹoʇS pınןℲ ɯnʇuɐnὉ", "item.bigger_ae2.quantum_flux_storage_cell": "ןןǝƆ ǝbɐɹoʇS xnןℲ ɯnʇuɐnὉ", "item.bigger_ae2.quantum_item_storage_cell": "ןןǝƆ ǝbɐɹoʇS ɯǝʇI ɯnʇuɐnὉ", + "item.bigger_ae2.quatum_chemical_storage_cell": "ןןǝƆ ǝbɐɹoʇS ןɐɔıɯǝɥƆ ɯnʇɐnὉ", "itemGroup.bigger_ae2.bigger_ae2": "ᄅǝⱯ ɹǝbbıᗺ", "tooltip.bigger_ae2.contains": "%s :suıɐʇuoƆ", "tooltip.bigger_ae2.empty": "ʎʇdɯƎ", diff --git a/src/generated/resources/assets/bigger_ae2/lang/en_us.json b/src/generated/resources/assets/bigger_ae2/lang/en_us.json index 6824f1c..7473de4 100644 --- a/src/generated/resources/assets/bigger_ae2/lang/en_us.json +++ b/src/generated/resources/assets/bigger_ae2/lang/en_us.json @@ -5,10 +5,12 @@ "block.bigger_ae2.256_core_crafting_accelerator": "256 Core Crafting Accelerator", "block.bigger_ae2.4_core_crafting_accelerator": "4 Core Crafting Accelerator", "block.bigger_ae2.64_core_crafting_accelerator": "64 Core Crafting Accelerator", + "item.bigger_ae2.advanced_chemical_cell_housing": "Advanced Chemical Cell Housing", "item.bigger_ae2.advanced_fluid_cell_housing": "Advanced Fluid Cell Housing", "item.bigger_ae2.advanced_flux_cell_housing": "Advanced Flux Cell Housing", "item.bigger_ae2.advanced_item_cell_housing": "Advanced Item Cell Housing", "item.bigger_ae2.digital_singularity_cell_component": "Digital Singularity Cell Component", + "item.bigger_ae2.digital_singularity_chemical_storage_cell": "Digital Singularity Chemical Storage Cell", "item.bigger_ae2.digital_singularity_fluid_storage_cell": "Digital Singularity Fluid Storage Cell", "item.bigger_ae2.digital_singularity_flux_storage_cell": "Digital Singularity Flux Storage Cell", "item.bigger_ae2.digital_singularity_item_storage_cell": "Digital Singularity Item Storage Cell", @@ -16,6 +18,7 @@ "item.bigger_ae2.quantum_fluid_storage_cell": "Quantum Fluid Storage Cell", "item.bigger_ae2.quantum_flux_storage_cell": "Quantum Flux Storage Cell", "item.bigger_ae2.quantum_item_storage_cell": "Quantum Item Storage Cell", + "item.bigger_ae2.quatum_chemical_storage_cell": "Quatum Chemical Storage Cell", "itemGroup.bigger_ae2.bigger_ae2": "Bigger Ae2", "tooltip.bigger_ae2.contains": "Contains: %s", "tooltip.bigger_ae2.empty": "Empty", diff --git a/src/generated/resources/assets/bigger_ae2/models/item/advanced_chemical_cell_housing.json b/src/generated/resources/assets/bigger_ae2/models/item/advanced_chemical_cell_housing.json new file mode 100644 index 0000000..ae657a9 --- /dev/null +++ b/src/generated/resources/assets/bigger_ae2/models/item/advanced_chemical_cell_housing.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "bigger_ae2:item/advanced_chemical_cell_housing" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/bigger_ae2/models/item/digital_singularity_chemical_storage_cell.json b/src/generated/resources/assets/bigger_ae2/models/item/digital_singularity_chemical_storage_cell.json new file mode 100644 index 0000000..e6de0fb --- /dev/null +++ b/src/generated/resources/assets/bigger_ae2/models/item/digital_singularity_chemical_storage_cell.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "bigger_ae2:item/digital_singularity_chemical_storage_cell" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/bigger_ae2/models/item/quatum_chemical_storage_cell.json b/src/generated/resources/assets/bigger_ae2/models/item/quatum_chemical_storage_cell.json new file mode 100644 index 0000000..bdac857 --- /dev/null +++ b/src/generated/resources/assets/bigger_ae2/models/item/quatum_chemical_storage_cell.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "bigger_ae2:item/quatum_chemical_storage_cell" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/bigger_ae2/lang/zh_cn.json b/src/main/resources/assets/bigger_ae2/lang/zh_cn.json index 6c51dae..ac2c9c7 100644 --- a/src/main/resources/assets/bigger_ae2/lang/zh_cn.json +++ b/src/main/resources/assets/bigger_ae2/lang/zh_cn.json @@ -1,24 +1,27 @@ { - "bigger_ae2.old_pack": "Bigger AE2 旧版贴图", - "block.bigger_ae2.1024_core_crafting_accelerator": "1024核并行处理单元", - "block.bigger_ae2.16_core_crafting_accelerator": "16核并行处理单元", - "block.bigger_ae2.256_core_crafting_accelerator": "256核并行处理单元", - "block.bigger_ae2.4_core_crafting_accelerator": "4核并行处理单元", - "block.bigger_ae2.64_core_crafting_accelerator": "64核并行处理单元", - "item.bigger_ae2.advanced_fluid_cell_housing": "进阶流体元件外壳", - "item.bigger_ae2.advanced_flux_cell_housing": "进阶FE元件外壳", - "item.bigger_ae2.advanced_item_cell_housing": "进阶物品元件外壳", - "item.bigger_ae2.digital_singularity_cell_component": "数字奇点存储组件", - "item.bigger_ae2.digital_singularity_fluid_storage_cell": "数字奇点流体存储元件", - "item.bigger_ae2.digital_singularity_flux_storage_cell": "数字奇点FE存储元件", - "item.bigger_ae2.digital_singularity_item_storage_cell": "数字奇点物品存储元件", - "item.bigger_ae2.quantum_cell_component": "量子存储组件", - "item.bigger_ae2.quantum_fluid_storage_cell": "量子流体存储元件", - "item.bigger_ae2.quantum_flux_storage_cell": "量子FE存储元件", - "item.bigger_ae2.quantum_item_storage_cell": "量子物品存储元件", - "itemGroup.bigger_ae2.bigger_ae2": "Bigger AE2", - "tooltip.bigger_ae2.contains": "包含: %s", - "tooltip.bigger_ae2.empty": "空", - "tooltip.bigger_ae2.partitioned": "已过滤: %s", - "tooltip.bigger_ae2.quantity": "已存储: %s" + "bigger_ae2.old_pack": "Bigger AE2 旧版贴图", + "block.bigger_ae2.1024_core_crafting_accelerator": "1024核并行处理单元", + "block.bigger_ae2.16_core_crafting_accelerator": "16核并行处理单元", + "block.bigger_ae2.256_core_crafting_accelerator": "256核并行处理单元", + "block.bigger_ae2.4_core_crafting_accelerator": "4核并行处理单元", + "block.bigger_ae2.64_core_crafting_accelerator": "64核并行处理单元", + "item.bigger_ae2.advanced_chemical_cell_housing": "进阶化学品原件外壳", + "item.bigger_ae2.advanced_fluid_cell_housing": "进阶流体元件外壳", + "item.bigger_ae2.advanced_flux_cell_housing": "进阶FE元件外壳", + "item.bigger_ae2.advanced_item_cell_housing": "进阶物品元件外壳", + "item.bigger_ae2.digital_singularity_cell_component": "数字奇点存储组件", + "item.bigger_ae2.digital_singularity_chemical_storage_cell": "数字奇点化学品存储元件", + "item.bigger_ae2.digital_singularity_fluid_storage_cell": "数字奇点流体存储元件", + "item.bigger_ae2.digital_singularity_flux_storage_cell": "数字奇点FE存储元件", + "item.bigger_ae2.digital_singularity_item_storage_cell": "数字奇点物品存储元件", + "item.bigger_ae2.quantum_cell_component": "量子存储组件", + "item.bigger_ae2.quantum_fluid_storage_cell": "量子流体存储元件", + "item.bigger_ae2.quantum_flux_storage_cell": "量子FE存储元件", + "item.bigger_ae2.quantum_item_storage_cell": "量子物品存储元件", + "item.bigger_ae2.quatum_chemical_storage_cell": "量子化学品存储元件", + "itemGroup.bigger_ae2.bigger_ae2": "Bigger AE2", + "tooltip.bigger_ae2.contains": "包含: %s", + "tooltip.bigger_ae2.empty": "空", + "tooltip.bigger_ae2.partitioned": "已过滤: %s", + "tooltip.bigger_ae2.quantity": "已存储: %s" } \ No newline at end of file diff --git a/src/main/resources/assets/bigger_ae2/textures/item/advanced_chemical_cell_housing.png b/src/main/resources/assets/bigger_ae2/textures/item/advanced_chemical_cell_housing.png new file mode 100644 index 0000000000000000000000000000000000000000..906e943c1eef4bf5c1c9b1d2484c4f27a6d7ccd8 GIT binary patch literal 548 zcmV+<0^9wGP)p0=cFE1zYIERJDQ!;Vy;ZqCX*7Xq?i^UTb=8kx_^ay~_J9Bjh z+OP(|%6h>i^eJ8{y3q)s)vSta@5pPenIKK7WOCkw-y}HHws;Zn>kQ z_wgxSIhNAXO)Q>}PG=^^_}$rIxd3{p?1DLv+3~0gl6;va{pLLYodhc1!- zT0}3ENi97=|Fv6(9dBoGZi4940{}YP+A(W(-UHx30)CY|ko&ks@WOcsc#+Ct?Cnd3 zj#vT?-ho(IFIWM;3I~vrT?*g6Y>>&WG7t))_S?{6VGRI(?^z*VBEaQy{Wb)ZQ(cOT z4}^l4wOuLH218=HmOjODW{zAL7N0+D m08skzUDnj9J4b5&Y5fH~w%J^m?3T9x0000ZITlq}bR+5WS+=#0a@TbZE4L2+>ke#4g2ZVigJ0!;@C>m1#qxw zr@LbJa3oMSj1ois$D^fLS$L2rxd0cm>vFBA7Tk8aE1oPb0&wl>y)6SJqX6(({TK*_ z;vIU;SU-ezx+~7-asXV)o%Rg=4h{+f1Oi9=yaO+A&el4V;D@c#+ij1dh2u z-KtTyY8+lXE=KZkAq}=c`b->ioyv#zvLisN@q_)zeY}44a_66EY$fXYXFj2w5!Fv$ m0QlK7wcB3>+c{AH0000-|kav+3n>G*L)&|I8)Z%kHeZ zd%a6aDJ^|yp``>w#79x^rIEH!1Pi4p^r6Jyllov)Dk_4ar9PIPvzNPAA@sq4+1YRA z_xrwYzCUxJG&$Pex4#bn&_6zwFOxMM%~&t_4l{eF$DGS-_;G0NMRK;s8+$VVVBmH%dp=*S{Q*Gls$H24XSE5{#15-l z*g$O4@dz4#k;6?-H)|-Q476aoY5LDEZqbx&rRf<-gPNB^i}u)xkET~9E9OegR4n@N z>-~KrO_gYHP^eQ)XUPrJW}0p*R>^;~&CygF64ugmCbCG)Y9%U%eMHHuz?cw1N>*4Y znM8&u8Hq!b00n`A5(gCqrc^;vC5h?`npmW$5#Oq+<$SSYkw|HJF$_JG;~I?y+Ynjo zFL1n~C>#_xL0|}i36|YZZ!&H$w56n@CXWKsx4qEDE)}WO4O|b?G;w9OiMqCJV!OkYpUG8oKGH+%S1?}c7DQP z!YD|Qn1p2rvTRi$s+x3%Z~gBWa_v$iu5nS>JXJu1LDG$X;b^t`trog@qtmc@KhV#DfG9Tq_IF-lrC6 zyh0_)T@{Ovep2kt-fhk+LLN-9^S$r)zMa{H|11~Bjj>`YZGU?J13J~3n|k!Pr0?%< zGZ`K>x0Vax{^^VdkR$;>091XaT5}&iZ2++J{=*vaI$)n8-@MvM=b0g@yERlf)B`O8;Xf>ZFazMeHl(V)BAMODk@92$}w9e>UNBB)t; zS`M`wVq+i^!+$0jTH0(v6qOEARg0ualJMr_iyuiKLqH2j0Bbgjy*Ss?a0{)p?L`DL z%S>qsmzM+5>}+O^<4mtq==XZ0zy!c*+;C=wh=e=OOku68K%+r8rGBqhut&ZF5rIl2 zQ>UlF3^gmJhUfqni)(I@p*q_+a4gJwfdS;N$N={nyG`!L)hz%ezz77O-$(Pw7mI5S zfU8@cJe%S0+t=|wQ!8!z@Xl`Mz@49c2jK4Jy6E}+>*s^sf2u#GthN$!r}?Y^0000< KMNUMnLSTXvbJyko literal 1217 zcmbVLO>ERg6rK=@l0d>wC@mF=My86=f`8V#UazgVba$O(7uYn~teQkstB&n);wJXE zw$ojL1S+a35C;f15bA-pDpCZ38&xX-ceFk9fJ7^`QZLORY7aoAifTLF?1mm94jpMc zely?q-kUe?J2x>t*4y)14*;OISkTLK-4)NSPWl~UcTUo!BP@^Qz|H!BRcdUV&6ctN z+`h2=8G4D@uTLDWj9dobGysjk!G@+a1_ti;_dgJXFGTUzeft`=y_U&P;M98uC=cw2 z%Hxxb=L78drCz7|-F{&v1fcJJJUi|z&#wW{x$IP?qv_Id)g&&5EMj1;=K2&3!0?fp zkIZ=-K?Bb^p2qy~-CYJcmc~p;C86Z!@tjjw3h?C8c*R_rHx-LH@>Xxpa80EiTpS@- za~Hf&t!Yftu}c5rZJvQmNHni8**GGcE=|BZ2{4p7ku?QDfU?3#=`=P>$w(cBq9BUA zAn}623K>$06P&=i zZhXZiI*iKrc`lox!^#OC^JN^8#lXZAey~lZWqfg<7)Y~G-w7Q0KxjcH=Aw(esHkfU zJ>e|JQV~K{(vnS95)+uUj8uv>6w_j5L6)U7&e(P)+4i#;UmQ&(leu(W$maD#Vq`R{ zC?okqnv#{AEXwINx9Eit@=V;0?aszn<;82fMbu{n?gljRtw;`oPg^%P9ZVKP#R3Zzms@9{hai;*CFl%xN!Qt?%kS z-?j4Q-keoixpnf`nJ>RBpF0%x9hM&6yV5mvtT3}1oqd4~ghOF!~>O@RCz6?&3!-_8?u5t{2fuD2Rn#{D2@xYY(zeNbrz=#*glv zDwJM=m#p@nU~^H3W^bX8M6r^thsn-%Y&>;f7>4)#J@4;*XMbRyOIX&;{|22&F9K+X z+f?g0VH`fD#aC9IF&1AI7UxvpvwuDUFt1M~*~M~Ht>?sY=?MULZr@KFSXV6o(mh8P zrm`?-Du!DuQ?2L3lx+hrV_%dG_6SFa0i4-sD3+s22{C#3ige&T%|xa>FOyT*Bzw@r zEtYlh5E?sKTYrBs1mq3erH)?h?gJP!@t;?S2RRCIV7Dlf9#`9abPrNl)mA1wE*%Y> zIvEdgHS+&YS1>q)C~H5h!^HPCaIH!Aqc zLpLW5(*E&B0svx&nK$rjJ^1w)4iyr>)(l~5M>&keBY*#anKxkKZ1R*pJ=~=Z)}gL-|l@xjP|iaE&;%$ zpFaFo`+(SVVYry8q!skr@+J3gmBf&^+STV58XeQPX zQ@34$24HYc-PMe76hIw~Sx%fI$t)X#|_z}_I%mh zHCR`Of{g+V*6j($SL$)9A*_(^aG9lG0}_nKsYK`zj^qk3g*^l%MxYIjRK!FnkmJ?Y{rnvz{5EW5`&4(f$AsqC~ic(ZFO^?KiQ`I1F6_%~lYD_J{U~i1& zWm#r9ffWRrAZUNe3A8%x_I-vy^du~v|pZb5nDt)p7abv;C(GJN#na6g+LOG^0jA?3(_W3 zY)sn739@ROB0G#}nTn=qX2g^XS`>Ihn|d@#>#||e5+_Mw3=LE&1Cf@_T6`fBNlTeT zic6$ao=;~IvYbxwF+!G;k|4!e+^pjVnq#1rZ;SYDa+B}mDk%?X0rtumPqYf6P{jfE ztJsA?go(obgO+3Bn!l@cQRJ#tPOc))I*QDUhi%x%wPLLm2d7muL(=I1Im*+ONK~d} zB#U&^)CEa0D;%mARFiMMcMjP`DU#6Gux#Eaqm>eEtdbfHTZCQhkSB#_pqEt><^Iy)+leiI!p`=u)>rR*_W$yg-EI624@Y@A{psV2vDsc+x_JJZjWd5Q z4E-nkGJ9t3?A6^LQ~%t#W-Wbw?BvsIzHrL>wd3@{lbI7A-S3zY`W|dQvh|d_^myCs q$lR?cxcRInx$kE8{>7I!<}ZJ@<3wjKJJ{YC{s6M+ygHv8{r(j%ZH-(2 diff --git a/src/main/resources/assets/bigger_ae2/textures/item/digital_singularity_cell_component.png b/src/main/resources/assets/bigger_ae2/textures/item/digital_singularity_cell_component.png index 99304193a8741b8b55689d1cd68b8c34044808bb..05190419117baf12bff6cec1864db9e91cca51f9 100644 GIT binary patch delta 1126 zcmV-s1eyDu4($k#7JmT%2nGNE0J>84P5=M^0drDELIAGL9O(c61Sd&EK~#90?b%;w zQ&$`Z@Ner)9-98!ZLLw8t^`&j{#h&vv8go9j!ZFw7FiVuh8F2meDS3NOVyxs(xML= zg)yw_LvRlFWXC9b5V8Il>-<*@wXJ^|MPlGed%axZ!*=%2o`1u=t;RM%R_pKgbdz(> zxhLn(hx5AuGK?(ahd`j2@#_m0ewbC6WV|5~=@1om?E*745Q%i){&0+cWV{i{So!{N z4Bb7wqC#lLuTbCsMdT@G83`IG1_ zEfnS0@r`u)t>**NDA#X2!)*Bu_H#93%bXr2S#3 z`9l4o4(Q`5Ztl@U#W{IU=ax}k;lakUlLOhdKK4crME6xyWqS{N%j&nDVUpFx3S}2_ zy8O)P^0UGHOdM|lfo9fzDk6?Kv+`i=Xn!twFd5{*`*}X#yK>I?g4@%`mN`9Q6BWv? zx#bJ|e6aS%TmZo3o%iPE!PiTFLwSWqfRZX-5ZzDZLD;Kg=0O-`pkHl$ zOjJzE0}e{6_Xnc;lrNA6AP<0f>j96nJ>a0E?E#$+$OH0V!FVv6{})8}U*|#Ct7PUu s_^&d6JTL}%Kpp_|)&u&#aXxtPA5mvlcW&bZ!~g&Q07*qoM6N<$g4vB3&Hw-a literal 1822 zcmbVN4NMbf7`};4L5VsMaWFi}RCH_a`cF#>^xq=Y0(CHT>b1SnD!r@M16rKZ;g}!_ znuvl3Q4#-eI?X0gLDUHd{>`cAQ05%OC@P3zbb{Qj2yRP^$@V38-}ip^KJWXyf4Lm} zERCB}sa61d}=&)RN2aN^*NtDZhn3kXNF8H2Wi7G&|?uX;;E#RL6dzQh25dky)leA2XaMc4RRq4h|Pi_yWJC7zqXT%NB^er zR&A%j?LeV;)QP7OCb}e+&_OVrzIQwFDAH`ivk4nr7bHcAn^Ns4MrxH(2K|L)wwc8U zf|$8xp^3@ouu-Pj$m21MB9oaZgoQ%B01dZT!nuQX-iGI>d0ehsz=LH9C7Z2M%S0lT zf-RuIBDs(w6bxdun3F^>6FTVIM*AMXa^Hy+D+m-Jal(M(DT9rmx8fx3wBins!)5Wn zutXbX#?zhCJT-b9vJxe1X{cFE;C8S-$zt2v2*8L1F$s;#a1oEqv~YPMrU(`BnLM+R zBNUn~FlsR|2Jq(pn>>gn1$jELiW@ODOLIrrI5hefS=|7wks23vMzwyHM&`)Qn6U)Vj@~rx*s)cHeS2ZtIhnp|UG}4mIWOgL-O-vZ zx7*z{j@sl+VHkEclQJ2NYL&_jEGjE23j;#vnzyvHD1q<{psBXDmZB(f^8I?6B$tez zl|YOCaREz9tMdS0$Xu;bW^gsP6+FPU!eg>NzcKQmv;k}0^*r;G;Dm1{<#={JfElvp zYSg-YS3ejr$-D09h4UeSR`0PxqEHvQ?zvSN?584h zB?m(_RoJNRt^%2Mb8$sp&ybH*8^Fw*nU0OJAA#jHb6ZO;jxG4?j{_TjA&8h?u|xOv z>l*I(AX_56<+p~G8!B(5O+S~U|8DK1RF+XD_G>zNt#13KLm<%>Liq20==C&gTjZ$1 z`LiWoSzG5%J^cO2?&=lC=3l6@$KAVrrnOlaJ+tldDtA>+wj_uVl;VAQ>v~N`Ou-Jn zv!Tjp?Y;M!#{X8ddYz`eB<1Fr(99R(f)kK0Rnz?UZ$w}2k)Jx^m!?AMS9!OMJ>!DI z3N;=2lWlc<+uFjHcjS*RuUXmnV0ioJ_x;9hIrw~G_Hf3|u)Eokp;!INvlyD-+NAfV z8&W^e6 z_LkzPJWZA)xFcT@EQwy$nXeoAjXa25mcFb_7Ago@9JW>+Jk2L>Z*=g{-;eE-Ew~I; z+}~4QR*`JkR%fjFA-A$S-*R_SPf6)ZP22X}eH&b{y^0!$vReASmQ3k8CBgoERob(< z?_h6P(VxSg6uzi0a^30;eYJ2(-_ne6)QiO4Zrk16x1p$H$%$8A1lJ4;03M^pVyZxG Q_5884s#(ed@4$ofDDb5~ ze6W@h30*8h618blh>fuP*#{S0(R^?fn;yo!I_m0%5JY?7!p=GOeD}=k-H#pE;*jk2 zs*uU(Oj!r;jd`(5%}DWyDW<&B*+5M2;^Cv~B2j(su?}$dRHcaBynR<^YEpXI_yB;5 z7j7+gU@x}=(AwW)Dom4;8Ta{DLadRVDIMCAzfMU&&OwZt0-T|q#zeg`*83KsnV4?kx zO&S>*UA~1-5CH$&JnuSOVn=|Hp;2~aTY2-MCG?LeI#bqtV_pCp$IB({;~)TIKfa4K zvon)Ox~{Ja2zP`$Na2o%5B`b|CVv?Li#rS-1Qaoa4^pB;ZgU@4+y-E&VA%(tewi>J zY~+K00v0#kf-JPXJIp>P$Pz^x_yB6G${+b41_+)5skOgHuLnq%adq{s@j=xGqxFan z%p>B1f5QhEjYhzugyDldZZU-qybh7u+y@@T04x=#9-|X&p&B*zz5(&Dfe-e$!K2`f zt3z9;Hv1s1P84n6gM4aA`fzn+gz$l3tH}R@h!6fpAI#_H08rZ5w7CzQMHONOeXy5c7Fych!fGEliz+DXY$9(ufOTZT1KIqa3bF=}8Gi-<000wx_m%(v00DDSM?wIu&K&6g00QhuL_t(oh3%AGNK;W9 zz<*biUPSQ&O(~uFAPI#-V(TFs1R>UD9}qY#6qJIrLL?HSULxzEq%=@0=7T5{QM-Xi zu(BX>g-s$RX!(_FDRaZ<#XxQk>z=y0+XSH(ci_N1=YRgc^MAkR-t&V^Hpyx|tsBgJ zmaYHQbxqDdzZs&C=09B4=G1pPsqWDV#(u3Z10M4Jg_NM~t zF)IKcYu{=TQw$4)W-|YV;4ckGl{Ga0)YlveSFkoQQZhiJqm7Q*7G;25>EMy0;R+gP zRT^HNBs7yrihp52EDp_NQnt-0#zQL=0;*Q>V)#)QV5+v!P(H5N&7Ec55F}3T3z+;P zq!<<$TB#6oW!s#h(nd!cS+CNScs+m$aU0CIF=O(N2*`!1pjZ<(YYj;5KAFzJU1DFoDGkI z)89mF-G5-Jwvn2j_Isx^KD#CuzJ7{5l~+aLq;CR%W)=uTKM0A>E-I4P>BdkfBxwto1>0Q8r^<9|IW{xJOBNu76(Ti zs6S9bk86~s)k5mL2^t?XtriNnt`AJusJ~T$=U!wV^u&AsF&}JM9|TW?KeOE_NB2R0 zg-vwzDyKe_L@cTg>`qw&Qy~TK7BvuEAM{t)usdap%ZU`cTh#c#xSS~9|MWqBw++wD k$R9qq67vB>@WH0rFVlrqEzqWD;{X5v07*qoM6N<$f~tIRW&i*H literal 1311 zcmbVMU2NM_6u#41)^#)*sRR>Zs_~}L!5lkI9LHYME{&5mTa$$>qNQR5|JM1MuF|w!2~@vID8UOw(4xN_Qc-hclvK4>bCNpGiY+#>Ew~he;-g@Sa74=tw!(D767hAXKeahpHl$X zd|J&6*aL|^Ue@y-QPCynDdr7?2B4#>Xo&I%v@r?hR4s)6^w9#2sY(d%XA)Gxh`?dB zcie!Hte79wEWQ}RtHM0`c9uyTt3vFN5FU0sVgrd3 z7STwg;>oa zvO@Tmaj-+UkrU`@~tdeGnMMAT7t%=lR1Zc^oYS^l-VUDaQ z>0@>XM?tThCT}DX>*|_SOBzZaSriS@>!HYe-Z^3wZP{t~Pb?dvtxU;)WExufm?=X9 z-&H50G~U~h14PmAhfNh-kT@#n@>m{fc3cSIXvd?d3NMPH;!{|eU}!HS6v^)=Bu-Wc zmSR~Z0E5|V&{x;lh)>7-6dQ@sR5&7dz0p{ha(F@kz`bD9uT06M_P4yU5Vy2$Q zs=4OXjpCrhtSGY*5#;<{BJ1;W1P3{W@GBC{vPzbMSsAbKmH(YXvRaBLG}0-Xf0fZ% ziB?xpjXEttuJ?#zt@jz!P;;56i;fRw_M;B`ATES6!NXTx{=&70-QTeDy8D$29e-7F z?+5OiJs4VbyPi09exLuF7gm7q#~6C?WxhRKzS??l<+q((TOL1qIfsMKZnQN|A3x{%YUx_TwY!bC z|5z&hxzv8<(!>L?52vno{(9?l+v?2p_cL$yNv*LRS36JMY5%&X^xD+mt5YZG$;1wE k;?CU7nPl7VLv81detBxoce9I=H=MsnJem~dyPrGpH|Hw7y8r+H diff --git a/src/main/resources/assets/bigger_ae2/textures/item/digital_singularity_flux_storage_cell.png b/src/main/resources/assets/bigger_ae2/textures/item/digital_singularity_flux_storage_cell.png index 12ee2f87f71fdfea6fcf2f49f21b8612441d2965..c3d2cd9cdabe74edde62483404d8d3e925255f41 100644 GIT binary patch delta 776 zcmV+j1NZ!n3X}$r8Gi-<000wx_m%(v00DDSM?wIu&K&6g00PcQL_t(oh3%A2NEA^V z$3G)`j4olYfcsBFY6V~l0e}f0rJ8Pt7|))M0?^kx>{VdhvH-Z! z(d-iv3PCojjir=KH$;rv?d<^EYro-CP#`QK1`tAkl3VFM; zS*)gQ{b(S+FagNrkol7{JtGDH8=G9XR88{jT7Ck#MpXZdIz)K=E(>0agN)EAvQk_V}sWuKWg z`J{X%C4YHPTUk$PXPM}pBRa@~=$`j|O7bAu_mbMm`jR|wD=hP%%!AX&1ACy=DL<1a zYU1leQPZv0771+XupYd|9%x0>bUU#{G!Kx{&jXoB_{>}$ShE=~b{G#tO*b-=z*^hK zn$7rlV6E+I^MgDHkmo_vo={fgKFmCX-Z41%M}J~5=Tbes3S}OYd2mX3kQ;U0RU}1G z6H=g*X{zSA7Pa+vThHdX7Nz2GrG)UugwXK`@bf?B2JrRG6!e9DU*#sk?X5lKOC zX@%hUl#d6&r4?;nk_YDXCgg`jXzMJ>15xGy6yd>%$3Jj&5^rw;;MD*C002ovPDHLk GU;%=%7i`%8 literal 1294 zcmbVMYiJx*6rNJo)|j+SktkZrWGZb6ote9{J3BjL#=6(;s`);Di1oGE+`z_qTfx~|_!Ce`_E&itO2 z7WSU1JBV?ZTKo%5>-|z;sQ#Y^`||78kD#r)oa`PC!`7V*$Ep)km0K9Lddesd`@{J` zLA6av)@%h*ff?#ySntljk<|+HaRrVTmPq_GbDF>nO(b@+d60L~aMZ}wTsTxKl+{{A zu2!p5 zHAdO)2p#2lo(2rfFeE~d-h}1L0cm+#mPDE|67*EpaD2nI@K9D(>~UWtP|!=KF`ayV zS>5uQNki$Q1KFXY6rfErJYoaw`6c*IEGweD@`MBF67=kGSA__^rA0<*yuG6kh@ug8 zxdyr*c}%j^aT8j8P7(>ULurO4$g-@(G)^U1CJISSiN{HWS2dCY9LFYLQrDBQmd;9i zraun2bcO+`v=ohI`cpigNk`_4tzf+rOL@&-(0@hb^x?zX6FVg!pDpC8?}Sy@455(?7fjscciEC z3pY+ad-Lblem(li7aJoF@=v{b`H#;|Tv^w-O)u~xJqO;tCfbkBx#tcp^g2C~^J4Z= zCiUhE*|Te|7T-Da!|{Ee9QiF4d1n02^^rr$cO5V9Z=bvJSn$?BWoF>q2IYb7Z>J|F zyTq?9)_ytlq~G5CVduPf^7osw)2H9PaNo>@GYyCuOm>RrKM=2fgtcGn-t^-v7z%$N NxlBPi*0=AuzX1o*w|W2o diff --git a/src/main/resources/assets/bigger_ae2/textures/item/digital_singularity_item_storage_cell.png b/src/main/resources/assets/bigger_ae2/textures/item/digital_singularity_item_storage_cell.png index 4b30da0fe1af13ea6b129333dd34c54fd51127e0..dce75c167043137e7eb94edb772e8b15129e7e00 100644 GIT binary patch delta 790 zcmV+x1L^#k3Ze#(8Gi-<000wx_m%(v00DDSM?wIu&K&6g00P`eL_t(oh3%AINK;W5 zz<<{np-3;0kz!zy^Hm}Wd=Uwmv_-XtQV<8z#Uc{H20>9^2##P_U||lFpp<5RHbJo% z_8>jvN+_WTve0tmLkQEPKlAo5@3|h`njrMz4jgvxzVrRgcYp6a-w(Dq6pQ6T%Alh< zpaRTCf6+f)spRe1E5-f(`($f3op-K@z|_z&6~J6ytFLzVsr}=XinrGTK=b8WdIgrV z761+`Ipjn`Da5A*qubp_|9GWRYqJ5+WILItU{hj}WB`Y&0o;A+<6e~N(`OPD1nw57 zX4{R#VneCEI)6TmtFB0Yf=6=#s#Ovkd$ITor1zG6&G36LNIIT9rFvYk-S2S8T$s6`nXT*BScrI+d}$32jvCmPCd`^rVU zpm3MC&H~s3S-A~{GJP&K5&d8nN%LQSi|bA2z--Nf-G9clolD_IfW|)xZPB<$3{5Np zFd1u=Ut%<`TNxT$f}dgOU1-UniDg0)%Y5J0sZ7RN6+l1AGQ^>ptzp;=(YaLuFBZj) z0L11vc&Lcc=g$&=z|+76j75QfIv;(Lc+SJU%KLX80r>JcBK<0=swVk>TOa>C2U{5# zAN&s=+<&`%1c1oQLV6z*m*k77wX(A4@~x40e@fbgKXA(00Gr(Z3a3MKFDd+OIvIr zI=4!2_!4A%knzC|^+EV;698V%NO~XGTTEhVt!zB{K*ZAe!0Q>2U;=XdwFFu3gKVvp z-924|r~HXhedQ4UB>BKt@s05KepvH?)|nf8a0+{iA6Bj;^?}!u@c~JEu+r_LtWq$5vhh%=7 znRGX)V9}N~paw+>Rcoa&wrty=km^H)J{V9$#Z;dx{?PiMq%?{wu}~B5Y<8na=z{}y z?wotS?>pz7d(KSevZ;>tN7?}Z9qB$HkLGP?#5Qk2?;X?kzKfiXAXr`Mtp5PYo6XuuF#Z%+{bT5u1>SfG96t;`JOh+# zJ70PD_-EXeo6a)g9XWjC3Ys2p^V$8Y|9QaU7f#4%^FFKZX$OGLPrT9gsd-ifVAHEw zq39Mf{k&r8en~ZD=&$M)LIcpVw`xhs2y`(S4r@jfU%GS|$22vH4>B1lVzlCQ z{)ucsnHW(x72mt3qrIofBLyA05?0km4TrBr@rE#uzP)7<#~KiKB#Os9k61C2!;+>A zG1gBL3Pn*E%lVmb7|IGGhjwE$Mbjk3kQ7Hy5uRpvhQXQ-jyz&mkFA#YywKb9h^#1H zc3q1n$x5Z-uLS+3Jxm5Tjw30Wq-g>n2xr`Ir7B@K+t);zG6HlITeDovG%!zAlFczU zild;{PNQ3y%(}YaG?RwXM^+_^4EQNh*S#Y)(2kpj|HQH(+9`}%kjz8J9J3XO;M-ed zl*T(d@_;BBe!$ky1xcfVsf_8+aMMB*M>~F1Q+Y{})S${L1VaZPp~|5UA#;jKuoTNO zVHhcuBEgoiwa)mo` z`J@dc*R%_!Ioc|ST-kI@r)*jn9rTB=Ck8b`H7m}p)z48oB1R zjpCrBlBBRQ5#d4sq7)2q1P3{W2&pp7vTBKfB?WKt)&HGCvQdgCG}0@Zf0fZ%i8fYI zje0FYuJ?#%t@jx;P;=R+i+;L(WB_&G#k3GFLs@!v-MaDo#k$j- zs(mZ%q+)*#i3>9;^?vNT+sen2CyoN@yn0;sQz}7>PFF(lN>U#g}Q@@?^&7Aj%N4H%) zM9m+3XldW+)Oc~~nZc=A@|Yg$x)!Z1pIw;Vb3Qe4F7?f0^I>eu@4hb&&i%5ma&>xn Y>tAg34(`0P`i#liI`+wHDh6z^-Tb;`!c0Y(T zOy~)iG-^JPKS=KMIFSZ*{4E{?k1cu^HlV z$xS&v1;E%$5MwihTxspdJ2fr>sJQ)rWmIX-dH}GD z59c$sBTd$hBw~1j%10hUq4GCmwa#|Yig v9w(BB{n)Ld-`?~H`;PG2iA8;&@ZaJa2hXPiNW7KM00000NkvXXu0mjfoxIJE literal 1242 zcmbVMU1%It6uz|yrjc!}z7@sW32KDS&(6=z&X{exyOW=lPFyyNjiRM@X6|N(Waf@D zlkO%y2%?}^QL&V!RPaecrJ;SXU?WxoEwmb{2rZQQ;6tTU(4u`2alNzIjUu5B4&1qO z?)|>+oO|v$^HzC$G}XVO9{`XljTsd>KbVZZ&GbFUZkwRfrl>Mn086Wn+@eO$RNl-3 zaOT|y{zSdhmdg98!yz~#0rS_btvd%=pnmq|fz}dOzW919QK>-U`5*UxOQq z;8Xj@C*J|bDetlG^EEnck1OL7t^YjW@ly*H-P{t4Js$zEbtM^_E|NtDfX(l_)ya6$ z+^5^bQaK1)&*(*s~t?l<7ekC<5>^SB z=@vw}PGS<(NdQHOli}cg*LO%Gda8R-^s3fQZs5>8gq@L)c(9#o-Q6e-0o9PLT5ML6 z(`-$WHCDr#!pe>%s;W~HaLr~qeCL1XkZ+eF4UJFA=3iyBR-)}yTBAve@asL2SnGX; zecD_h?V{^XERWI-JXA9B)xn9ER=<2`1@`q^NtMkjnZH_BkG^rOsAYft0G9|km9HLt_4M>9{`Af*PcQdo+~g-v8Xh;63I|{N E8wZY>=>Px# diff --git a/src/main/resources/assets/bigger_ae2/textures/item/quantum_flux_storage_cell.png b/src/main/resources/assets/bigger_ae2/textures/item/quantum_flux_storage_cell.png index f2c0dfb2627d33914b41447a2b8d76cdf83d0bc0..c2060590a49d38a49b25cb0bd815785f969aa6bf 100644 GIT binary patch delta 527 zcmV+q0`UFJ37rIx8Gi-<001BJ|6u?C00DDSM?wIu&K&6g00GxYL_t(Ijir+@XcJKw z$A2#ru7d~?9MVuhk;~wgL%1zlLF|E%47w$tm&NMhSZIX~9STKpu#ZYzN&^a!rh{Y< z-2!^CgDw}T*4l(3>7X4hi_hV5?>L(d;)6FlzVG+@{_k-I|9`oJ<5W*9&NWsPfCtnH zC2{I>I#J);e8O0Cc=%{m7Y@%)DgeuM0k8n1RJB4$Jbktdz`eT*aRTSM13?oQc^3F#LaRUfZOG(VS;1e2pGV1U64|3fS9^g3=_NuWi2g*&88W5`#vI7)JOHZ zuBB0u*KeK=1%H->xV(^n9RLRX{gIMXg0k}%=`2P%i}-vAOq1ZpV_g%e zqE70%E;ru3P-6)}tIfd9V{{IN5>O@tG#T$qF|hN97Ig1l(MalnQx%@)q2A46q_fa! z6WF^1XPV(P0CG73dl#c~06=D9A{GEdlHgS(lt>A=Tz|ah=b>6<(BB83*X?S-vG2gL zEQls#GT?dKsvogx|I%P%2yf3Uio_eV*R}+eX=Ony0S!ms;qtopwzCI7@)7@*0Q7pu z;pFX^MFGIh9_KDh(tKGz`DdDItSB$K=h~L|(EbR(_pe`c&(Y8RNcNxBA0r6B7h`-- RIsgCw00>D%PDHLkV1m8u^_l&);_8;P11+mot-fv z4&pAZFCy%Mim(xcT~wliDB>+5K1dK>1P@sBL3|J&RD@+=te(t7AA%1SR9F91-}nE2 z{YU-Y-`CUBxUvxd(3I&-a*{*C$caRBxMP-$tYNK$3Z8c?|MkYVQUeGJCm{M+1I(e<~nnEJ96!)KrTuNg0k z{aoKb@C2O{VsFLYmGyt7l zB}Z0=kq;F#WLOgM?%FK^8k$6G<+4oHNuq+$JLaN+vA(=IHmnL7(Y3y*v9ly%4JPts zSTaW}Pb^79Rk4WwgKe6CRfs<<5%Itx9L)B^r0pWeQ!J@635(I%}Sej)? zj3B)|mM@n`%Ue68q^2f?Jk>QE->@whsFf9a)RzeC^we!kC!3wtZh5t!;qcKV*`Y%e zLz`xB#VXqKbLfjNGorox9tY7m+l19vi^fcTFtRSIyh6r=NQl(K5rGttz>yJ6 zVR>HD8KkR3jjw%o4C!hqV%O-PY`!X^sS>U3;u;NFgr4q^K$`9|WZ~v=aTh&nx!!|2 z5GOL8ZyVS-xq0zDxM1$1_T?kHZ&XH$<)=qZ6i&WAc+IsWClkNLwpPBz+cNB~TPe3N!mzqfII`A280gf>M diff --git a/src/main/resources/assets/bigger_ae2/textures/item/quantum_item_storage_cell.png b/src/main/resources/assets/bigger_ae2/textures/item/quantum_item_storage_cell.png index b8bbf3997b8707310aedad2b42804daffce04adc..665bc9112e20416b86d52ea45f85e9c680c009ee 100644 GIT binary patch delta 414 zcmV;P0b%~t39SQ=8Gi-<001BJ|6u?C00DDSM?wIu&K&6g00C!7L_t(IjjfWuO9EjW zho3itlW+-xK%p&bZt4$kw8@r+u;_(F+R zk$DEagf|ldpixmAB?C5UdJ4%OMDhm_$uaPRs3&t)O{BtB($)1C#~UMtU2t4c0C;zXX;c){#RRI-LN3-A0GLUr z;{5cD`r0g#KL{WDCe)tQ6|}o08WjZqRcZDA2a%``q>0W`z86^j6l`m{1rd|8p(pko3jiS~3);jG#Nx(eD7RcrPI{}*k110MphQMzQ5mjD0&07*qo IM6N<$f)EF^I{*Lx literal 1237 zcmbVMU1$_n6uufIF&d5fq9WmT@?b>gXJ>bIcE+q>cW2kEy6du8G<}FTKXF@emLf<%MewOL0R{VDA3`Zbiasf{eG*!VeaeesOZ265duM;r3c&{l?%X-| ze&2V_J@=fME98&#bnoc~0Q6*sl_HsYgVEJN-UIZu5i+gwibs;*-jlt{#Mm&N$Rz-{ z|K;Yt)s4jF3dc+7kBcA|2KAR)SAGMa^6la+(0T4BaC>?BB&h#&=CT8Bd=BO>f(Ks% z{rNsZvLDS|AXBej%#YOHe!%bjW4p=TCTI9V4}h%?gR$-rzGDE;an&r1`lGqyvW_iA zHL!-5n&l8Q0E0s{N7W~g4>dGy+HvaT()ScJjW~5m$ZU`-|p7V=eCvnFj%uEnW_uuQ&#WtM^sh(8gh5`jlJnk&E*b`caAp4K^zgQCO; z(J0b%L5m!OJje4aC$OAEb1|70WI=$fhaw&!9CVGcTvReGkHm^o72kJcmaSH+Of}44 zcbpALlEiX6%kwlr(B8D|t2Ns8`kNvx83lQ|YdXG(Z5YU^8lLjw6bZU{8q3M$R@H5< zl{At*wx&94h~Zev3Xa%7dwvo97t5MxuQcr-wun4D3B;BAzP85YGij~W;a9d|BKA#Dv z#Y~dp5-BAVN@o(1lum`Bge)aRUW~T6S=;kfTSsl*Ch^_mCNl5j$|)DAK6XnOPqqu9 zP{BU-D%gR1n2ErFQ>Ja;s<*#=QRJ$cCs&Ybo<&B+#TIPjS~k~;gHy|@E^2g4iiGHL zI3m#!k_0+pXuK#IWe$~fs>L_nJBMte6iH}oP&WT7qh^UVR!NNpEyAw$NMNn@8L~-p zxulDZJ)8ZMbl_B0Nt6ag#-9AJ<00(YP*`7?{c5FNk1q9|8|b|B3BTo=e?GeK_*Hb} z%Hn+QF6*;jSa0s~!u5rv)CW}0cQ;?3PR6#w@uT^|HFvCY{=tj$Uu^%i^E}`GyzlhR xYtqo0D%8xrpTVxDhr0If77tGUvF+^L6`=pvb?46meUF2GKsKFM?j_I6{tITNjNklbCUjCMHBeBx385CT1XNJaq704Q)r|r10g8%Pspu&9K=Fa-st5r$ zy6GZq!6Kr;2S`FmBDNb5W78&!8OQ|FE;>aS7h!HXC0U4fckX}w?>`sLh5tN~s-9{p zwgeR$z$liGD^;nr&F|8ur^oR)#gnJkgmCfEGaKOau@P~1^Ugz?N?D3Oe+Ohk3Cu)F5IK<_Q*OipJ(uZ!C3{Cz9z$%v-LN>Wv13QrY zUC90}`tIfkC_bj59-$4!3u4miS1)0;x7lt$DvPx(0N{e8PAbUXbpaWFnIQ4@0|1^s z1w;DGoPEDPgtpL&mCBO8w+G|bGN1sUZ1$2L_0sd;2NuxY>ZP)>Tmt|&kXvEU=q34S zmVLW-iosq?yuw^v!z$Mn$uT$FgGe~Umd;voN2kKqFY|mmsL?T{3FBOP7JzW~c1dg^ zz@h$K(o808N2o&pVRnq_-u=>IeyRS1W)J{#b&Zejk|GgcF~7vto^IYuCYpbymY`xA v#S#Fqp