From e6ad1b9bc6f7344c8474997439114bdafd7505d2 Mon Sep 17 00:00:00 2001 From: Ellpeck Date: Sat, 3 Feb 2024 15:17:58 +0100 Subject: [PATCH] start of neoforge 1.20.4 --- build.gradle | 229 ++++++------------ gradle.properties | 54 ++--- settings.gradle | 6 +- .../de/ellpeck/prettypipes/PrettyPipes.java | 8 +- .../java/de/ellpeck/prettypipes/Registry.java | 33 ++- .../java/de/ellpeck/prettypipes/Utility.java | 6 +- .../compat/jei/JEIPrettyPipesPlugin.java | 10 +- .../prettypipes/entities/PipeFrameEntity.java | 2 +- .../de/ellpeck/prettypipes/items/IModule.java | 2 +- .../ellpeck/prettypipes/items/ModuleItem.java | 6 +- .../prettypipes/items/PipeFrameItem.java | 2 +- .../ellpeck/prettypipes/items/WrenchItem.java | 2 +- .../prettypipes/misc/DirectionSelector.java | 7 +- .../de/ellpeck/prettypipes/misc/Events.java | 8 +- .../ellpeck/prettypipes/misc/FilterSlot.java | 4 +- .../ellpeck/prettypipes/misc/ItemFilter.java | 8 +- .../prettypipes/network/NetworkEdge.java | 2 +- .../prettypipes/network/NetworkLocation.java | 4 +- .../prettypipes/network/NetworkLock.java | 2 +- .../ellpeck/prettypipes/network/PipeItem.java | 6 +- .../prettypipes/network/PipeNetwork.java | 6 +- .../prettypipes/packets/PacketButton.java | 4 +- .../packets/PacketCraftingModuleTransfer.java | 6 +- .../prettypipes/packets/PacketGhostSlot.java | 2 +- .../prettypipes/packets/PacketHandler.java | 6 +- .../packets/PacketItemEnterPipe.java | 2 +- .../packets/PacketNetworkItems.java | 2 +- .../prettypipes/packets/PacketRequest.java | 2 +- .../ellpeck/prettypipes/pipe/IPipeItem.java | 6 +- .../ellpeck/prettypipes/pipe/PipeBlock.java | 8 +- .../prettypipes/pipe/PipeBlockEntity.java | 18 +- .../prettypipes/pipe/PipeRenderer.java | 2 +- .../pipe/containers/AbstractPipeGui.java | 2 +- .../pipe/containers/MainPipeContainer.java | 2 +- .../craft/CraftingModuleContainer.java | 2 +- .../modules/craft/CraftingModuleItem.java | 4 +- .../extraction/ExtractionModuleItem.java | 2 +- .../modules/insertion/FilterModuleItem.java | 2 +- .../retrieval/RetrievalModuleItem.java | 2 +- .../stacksize/StackSizeModuleItem.java | 2 +- .../pressurizer/PressurizerBlock.java | 4 +- .../pressurizer/PressurizerBlockEntity.java | 12 +- .../terminal/CraftingTerminalBlockEntity.java | 4 +- .../terminal/ItemTerminalBlock.java | 4 +- .../terminal/ItemTerminalBlockEntity.java | 8 +- .../containers/ItemTerminalContainer.java | 2 +- .../containers/WrappedCraftingInventory.java | 2 +- 47 files changed, 203 insertions(+), 316 deletions(-) diff --git a/build.gradle b/build.gradle index 77893fc..3fa2a79 100644 --- a/build.gradle +++ b/build.gradle @@ -1,135 +1,19 @@ plugins { + id 'java-library' id 'eclipse' id 'idea' id 'maven-publish' - id 'net.minecraftforge.gradle' version '[6.0,6.2)' + id 'net.neoforged.gradle.userdev' version '7.0.80' } // Enable the Jar-in-Jar system for your mod jarJar.enable() version = mod_version -if (System.getenv('CI_PIPELINE_NUMBER') != null) { - version += "." + System.getenv('CI_PIPELINE_NUMBER') -} - group = mod_group_id -base { - archivesName = mod_name -} - -// Mojang ships Java 17 to end users in 1.18+, so your mod should target Java 17. -java.toolchain.languageVersion = JavaLanguageVersion.of(17) - -println "Java: ${System.getProperty 'java.version'}, JVM: ${System.getProperty 'java.vm.version'} (${System.getProperty 'java.vendor'}), Arch: ${System.getProperty 'os.arch'}" -minecraft { - // The mappings can be changed at any time and must be in the following format. - // Channel: Version: - // official MCVersion Official field/method names from Mojang mapping files - // parchment YYYY.MM.DD-MCVersion Open community-sourced parameter names and javadocs layered on top of official - // - // You must be aware of the Mojang license when using the 'official' or 'parchment' mappings. - // See more information here: https://github.com/MinecraftForge/MCPConfig/blob/master/Mojang.md - // - // Parchment is an unofficial project maintained by ParchmentMC, separate from MinecraftForge - // Additional setup is needed to use their mappings: https://parchmentmc.org/docs/getting-started - // - // Use non-default mappings at your own risk. They may not always work. - // Simply re-run your setup task after changing the mappings to update your workspace. - mappings channel: mapping_channel, version: mapping_version - - // When true, this property will have all Eclipse/IntelliJ IDEA run configurations run the "prepareX" task for the given run configuration before launching the game. - // In most cases, it is not necessary to enable. - // enableEclipsePrepareRuns = true - // enableIdeaPrepareRuns = true - - // This property allows configuring Gradle's ProcessResources task(s) to run on IDE output locations before launching the game. - // It is REQUIRED to be set to true for this template to function. - // See https://docs.gradle.org/current/dsl/org.gradle.language.jvm.tasks.ProcessResources.html - copyIdeResources = true - - // When true, this property will add the folder name of all declared run configurations to generated IDE run configurations. - // The folder name can be set on a run configuration using the "folderName" property. - // By default, the folder name of a run configuration is the name of the Gradle project containing it. - // generateRunFolders = true - - // This property enables access transformers for use in development. - // They will be applied to the Minecraft artifact. - // The access transformer file can be anywhere in the project. - // However, it must be at "META-INF/accesstransformer.cfg" in the final mod jar to be loaded by Forge. - // This default location is a best practice to automatically put the file in the right place in the final jar. - // See https://docs.minecraftforge.net/en/latest/advanced/accesstransformers/ for more information. - // accessTransformer = 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 { - workingDirectory project.file('run') - - // 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. - property '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 - property 'forge.logging.console.level', 'info' - - mods { - "${mod_id}" { - source sourceSets.main - } - } - } - - client { - // Comma-separated list of namespaces to load gametests from. Empty = all namespaces. - property 'forge.enabledGameTestNamespaces', mod_id - } - - server { - property 'forge.enabledGameTestNamespaces', mod_id - args '--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 { - property 'forge.enabledGameTestNamespaces', mod_id - } - - data { - // example of overriding the workingDirectory set in configureEach above - workingDirectory project.file('run-data') - - // Specify the modid for data generation, where to output the resulting resource, and where to look for existing resources. - args '--mod', mod_id, '--all', '--output', file('src/generated/resources/'), '--existing', file('src/main/resources/') - } - } -} - -// Include resources generated by data generators. -sourceSets.main.resources { srcDir 'src/generated/resources' } - repositories { - // Put repositories for dependencies here - // ForgeGradle automatically adds the Forge maven and Maven Central for you - - // If you have mod jar dependencies in ./libs, you can declare them as a repository like so. - // See https://docs.gradle.org/current/userguide/declaring_repositories.html#sub:flat_dir_resolver - // flatDir { - // dir 'libs' - // } - - // it says this gets included automatically but apparently it doesn't - mavenCentral() + mavenLocal() maven { url = "https://maven.blamejared.com" @@ -139,15 +23,70 @@ repositories { } } +base { + archivesName = mod_name +} + +// Mojang ships Java 17 to end users in 1.18+, so your mod should target Java 17. +java.toolchain.languageVersion = JavaLanguageVersion.of(17) + +println "Java: ${System.getProperty 'java.version'}, JVM: ${System.getProperty 'java.vm.version'} (${System.getProperty 'java.vendor'}), Arch: ${System.getProperty 'os.arch'}" +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', 'info' + + 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() + } +} + +// Include resources generated by data generators. +sourceSets.main.resources { srcDir 'src/generated/resources' } + dependencies { // Specify the version of Minecraft to use. // Any artifact can be supplied so long as it has a "userdev" classifier artifact and is a compatible patcher artifact. // The "userdev" classifier will be requested and setup by ForgeGradle. // If the group id is "net.minecraft" and the artifact id is one of ["client", "server", "joined"], // then special handling is done to allow a setup of a vanilla dependency without the use of an external repository. - minecraft "net.minecraftforge:forge:${minecraft_version}-${forge_version}" + implementation "net.neoforged:neoforge:${neo_version}" - minecraftLibrary "org.jgrapht:jgrapht-core:${jgt_version}" + implementation "org.jgrapht:jgrapht-core:${jgt_version}" jarJar(group: "org.jgrapht", name: "jgrapht-core", version: "[${jgt_version}]") // for some reason jgrapht dependencies aren't auto-included in the metadata and i can't figure out how to make that happen jarJar(group: "org.jheaps", name: "jheaps", version: "[${jheaps_version}]") @@ -155,9 +94,9 @@ dependencies { // Example mod dependency with JEI - using fg.deobf() ensures the dependency is remapped to your development mappings // The JEI API is declared for compile time use, while the full JEI artifact is used at runtime - compileOnly fg.deobf("mezz.jei:jei-${minecraft_version}-common-api:${jei_version}") - compileOnly fg.deobf("mezz.jei:jei-${minecraft_version}-forge-api:${jei_version}") - runtimeOnly fg.deobf("mezz.jei:jei-${minecraft_version}-forge:${jei_version}") + compileOnly "mezz.jei:jei-${minecraft_version}-common-api:${jei_version}" + compileOnly "mezz.jei:jei-${minecraft_version}-forge-api:${jei_version}" + runtimeOnly "mezz.jei:jei-${minecraft_version}-forge:${jei_version}" // Example mod dependency using a mod jar from ./libs with a flat dir repository // This maps to ./libs/coolmod-${mc_version}-${coolmod_version}.jar @@ -173,42 +112,21 @@ dependencies { // A missing property will result in an error. Properties are expanded using ${} Groovy notation. // When "copyIdeResources" is enabled, this will also run before the game launches in IDE environments. // See https://docs.gradle.org/current/dsl/org.gradle.language.jvm.tasks.ProcessResources.html -tasks.named('processResources', ProcessResources).configure { +tasks.withType(ProcessResources).configureEach { var replaceProperties = [ minecraft_version : minecraft_version, minecraft_version_range: minecraft_version_range, - forge_version : forge_version, forge_version_range: forge_version_range, + neo_version : neo_version, neo_version_range: neo_version_range, loader_version_range: loader_version_range, - mod_id : mod_id, mod_name: mod_name, mod_license: mod_license, mod_version: version, + mod_id : mod_id, mod_name: mod_name, mod_license: mod_license, mod_version: mod_version, mod_authors : mod_authors, mod_description: mod_description, ] inputs.properties replaceProperties - filesMatching(['META-INF/mods.toml', 'pack.mcmeta']) { + filesMatching(['META-INF/mods.toml']) { expand replaceProperties + [project: project] } } -// Example for how to get properties into the manifest for reading at runtime. -tasks.named('jar', Jar).configure { - manifest { - attributes([ - 'Specification-Title' : mod_id, - 'Specification-Vendor' : mod_authors, - 'Specification-Version' : '1', // We are version 1 of ourselves - 'Implementation-Title' : project.name, - 'Implementation-Version' : project.jar.archiveVersion, - 'Implementation-Vendor' : mod_authors, - 'Implementation-Timestamp': new Date().format("yyyy-MM-dd'T'HH:mm:ssZ") - ]) - } - // This is the preferred method to reobfuscate your jar file - finalizedBy 'reobfJar' -} - -tasks.named('jarJar', Jar).configure { - finalizedBy 'reobfJarJar' -} - // However if you are in a multi-project build, dev time needs unobfed jar files, so you can delay the obfuscation until publishing by doing: // tasks.named('publish').configure { // dependsOn 'reobfJar' @@ -218,23 +136,16 @@ tasks.named('jarJar', Jar).configure { publishing { publications { register('mavenJava', MavenPublication) { - groupId mod_group_id - artifactId mod_name - artifact jar - pom.withXml { - def node = asNode() - if (node.dependencies.size() > 0) - node.remove(node.dependencies) - } + from components.java } } repositories { maven { - url "file://" + System.getenv("LOCAL_MAVEN") + url "file://${project.projectDir}/repo" } } } tasks.withType(JavaCompile).configureEach { options.encoding = 'UTF-8' // Use the UTF-8 charset for Java compilation -} +} \ No newline at end of file diff --git a/gradle.properties b/gradle.properties index 5c0a7b6..ef59c47 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,42 +1,22 @@ -# Sets default memory used for gradle commands. Can be overridden by user or command line properties. -# This is required to provide enough memory for the Minecraft decompilation process. -org.gradle.jvmargs=-Xmx3G -org.gradle.daemon=false +org.gradle.debug=false +#read more on this at https://github.com/neoforged/NeoGradle/blob/NG_7.0/README.md#apply-parchment-mappings +# you can also find the latest versions at: https://parchmentmc.org/docs/getting-started +neogradle.subsystems.parchment.minecraftVersion=1.20.3 +neogradle.subsystems.parchment.mappingsVersion=2023.12.31 +# Environment Properties +# You can find the latest versions here: https://projects.neoforged.net/neoforged/neoforge +# The Minecraft version must agree with the Neo version to get a valid artifact +minecraft_version=1.20.4 +minecraft_version_range=[1.20.4,1.21) +# The Neo version must agree with the Minecraft version to get a valid artifact +neo_version=20.4.80-beta +# The Neo version range can use any version of Neo as bounds +neo_version_range=[20.4,) +# The loader version range can only use the major version of FML as bounds +loader_version_range=[2,) -## Environment Properties - -# The Minecraft version must agree with the Forge version to get a valid artifact -minecraft_version=1.20.1 -# The Minecraft version range can use any release version of Minecraft as bounds. -# Snapshots, pre-releases, and release candidates are not guaranteed to sort properly -# as they do not follow standard versioning conventions. -minecraft_version_range=[1.20.1,1.21) -# The Forge version must agree with the Minecraft version to get a valid artifact -forge_version=47.1.0 -# The Forge version range can use any version of Forge as bounds or match the loader version range -forge_version_range=[47,) -# The loader version range can only use the major version of Forge/FML as bounds -loader_version_range=[47,) -# The mapping channel to use for mappings. -# The default set of supported mapping channels are ["official", "snapshot", "snapshot_nodoc", "stable", "stable_nodoc"]. -# Additional mapping channels can be registered through the "channelProviders" extension in a Gradle plugin. -# -# | Channel | Version | | -# |-----------|----------------------|--------------------------------------------------------------------------------| -# | official | MCVersion | Official field/method names from Mojang mapping files | -# | parchment | YYYY.MM.DD-MCVersion | Open community-sourced parameter names and javadocs layered on top of official | -# -# You must be aware of the Mojang license when using the 'official' or 'parchment' mappings. -# See more information here: https://github.com/MinecraftForge/MCPConfig/blob/master/Mojang.md -# -# Parchment is an unofficial project maintained by ParchmentMC, separate from Minecraft Forge. -# Additional setup is needed to use their mappings, see https://parchmentmc.org/docs/getting-started -mapping_channel=official -# The mapping version to query from the mapping channel. -# This must match the format required by the mapping channel. -mapping_version=1.20.1 -jei_version=15.2.0.22 +jei_version=17.3.0.48 jgt_version=1.5.2 jheaps_version=0.14 apfloat_version=1.10.1 diff --git a/settings.gradle b/settings.gradle index a30364e..b359a59 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1,10 +1,8 @@ pluginManagement { repositories { + mavenLocal() gradlePluginPortal() - maven { - name = 'MinecraftForge' - url = 'https://maven.minecraftforge.net/' - } + maven { url = 'https://maven.neoforged.net/releases' } } } diff --git a/src/main/java/de/ellpeck/prettypipes/PrettyPipes.java b/src/main/java/de/ellpeck/prettypipes/PrettyPipes.java index 1687da1..9c00d6f 100644 --- a/src/main/java/de/ellpeck/prettypipes/PrettyPipes.java +++ b/src/main/java/de/ellpeck/prettypipes/PrettyPipes.java @@ -1,9 +1,9 @@ package de.ellpeck.prettypipes; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.fml.DistExecutor; -import net.minecraftforge.fml.common.Mod; -import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; +import net.neoforged.api.distmarker.Dist; +import net.neoforged.fml.DistExecutor; +import net.neoforged.fml.common.Mod; +import net.neoforged.fml.javafmlmod.FMLJavaModLoadingContext; @Mod(PrettyPipes.ID) public final class PrettyPipes { diff --git a/src/main/java/de/ellpeck/prettypipes/Registry.java b/src/main/java/de/ellpeck/prettypipes/Registry.java index 833939a..319083a 100644 --- a/src/main/java/de/ellpeck/prettypipes/Registry.java +++ b/src/main/java/de/ellpeck/prettypipes/Registry.java @@ -63,23 +63,22 @@ import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.entity.BlockEntityType; -import net.minecraftforge.common.capabilities.Capability; -import net.minecraftforge.common.capabilities.CapabilityManager; -import net.minecraftforge.common.capabilities.CapabilityToken; -import net.minecraftforge.common.extensions.IForgeMenuType; -import net.minecraftforge.eventbus.api.SubscribeEvent; -import net.minecraftforge.fml.common.Mod; -import net.minecraftforge.fml.common.Mod.EventBusSubscriber.Bus; -import net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent; -import net.minecraftforge.fml.event.lifecycle.FMLCommonSetupEvent; -import net.minecraftforge.registries.ForgeRegistries; -import net.minecraftforge.registries.RegisterEvent; +import net.neoforged.neoforge.common.capabilities.Capability; +import net.neoforged.neoforge.common.capabilities.CapabilityToken; +import net.neoforged.neoforge.common.extensions.IMenuTypeExtension; +import net.neoforged.bus.api.SubscribeEvent; +import net.neoforged.fml.common.Mod; +import net.neoforged.fml.event.lifecycle.FMLClientSetupEvent; +import net.neoforged.fml.event.lifecycle.FMLCommonSetupEvent; +import net.neoforged.neoforge.registries.ForgeRegistries; +import net.neoforged.neoforge.registries.RegisterEvent; +import net.neoforged.neoforge.common.capabilities.CapabilityManager; import java.util.Comparator; import java.util.Locale; import java.util.function.BiFunction; -@Mod.EventBusSubscriber(bus = Bus.MOD) +@Mod.EventBusSubscriber(bus = Mod.EventBusSubscriber.Bus.MOD) public final class Registry { public static Capability pipeNetworkCapability = CapabilityManager.get(new CapabilityToken<>() { @@ -166,10 +165,10 @@ public final class Registry { h.register(new ResourceLocation(PrettyPipes.ID, "pipe_frame"), Registry.pipeFrameEntity = EntityType.Builder.of(PipeFrameEntity::new, MobCategory.MISC).build("pipe_frame"))); event.register(ForgeRegistries.Keys.MENU_TYPES, h -> { - h.register(new ResourceLocation(PrettyPipes.ID, "pipe"), Registry.pipeContainer = IForgeMenuType.create((windowId, inv, data) -> new MainPipeContainer(Registry.pipeContainer, windowId, inv.player, data.readBlockPos()))); - h.register(new ResourceLocation(PrettyPipes.ID, "item_terminal"), Registry.itemTerminalContainer = IForgeMenuType.create((windowId, inv, data) -> new ItemTerminalContainer(Registry.itemTerminalContainer, windowId, inv.player, data.readBlockPos()))); - h.register(new ResourceLocation(PrettyPipes.ID, "crafting_terminal"), Registry.craftingTerminalContainer = IForgeMenuType.create((windowId, inv, data) -> new CraftingTerminalContainer(Registry.craftingTerminalContainer, windowId, inv.player, data.readBlockPos()))); - h.register(new ResourceLocation(PrettyPipes.ID, "pressurizer"), Registry.pressurizerContainer = IForgeMenuType.create((windowId, inv, data) -> new PressurizerContainer(Registry.pressurizerContainer, windowId, inv.player, data.readBlockPos()))); + h.register(new ResourceLocation(PrettyPipes.ID, "pipe"), Registry.pipeContainer = IMenuTypeExtension.create((windowId, inv, data) -> new MainPipeContainer(Registry.pipeContainer, windowId, inv.player, data.readBlockPos()))); + h.register(new ResourceLocation(PrettyPipes.ID, "item_terminal"), Registry.itemTerminalContainer = IMenuTypeExtension.create((windowId, inv, data) -> new ItemTerminalContainer(Registry.itemTerminalContainer, windowId, inv.player, data.readBlockPos()))); + h.register(new ResourceLocation(PrettyPipes.ID, "crafting_terminal"), Registry.craftingTerminalContainer = IMenuTypeExtension.create((windowId, inv, data) -> new CraftingTerminalContainer(Registry.craftingTerminalContainer, windowId, inv.player, data.readBlockPos()))); + h.register(new ResourceLocation(PrettyPipes.ID, "pressurizer"), Registry.pressurizerContainer = IMenuTypeExtension.create((windowId, inv, data) -> new PressurizerContainer(Registry.pressurizerContainer, windowId, inv.player, data.readBlockPos()))); Registry.extractionModuleContainer = Registry.registerPipeContainer(h, "extraction_module"); Registry.filterModuleContainer = Registry.registerPipeContainer(h, "filter_module"); @@ -197,7 +196,7 @@ public final class Registry { } private static > MenuType registerPipeContainer(RegisterEvent.RegisterHelper> helper, String name) { - var type = (MenuType) IForgeMenuType.create((windowId, inv, data) -> { + var type = (MenuType) IMenuTypeExtension.create((windowId, inv, data) -> { var tile = Utility.getBlockEntity(PipeBlockEntity.class, inv.player.level(), data.readBlockPos()); var moduleIndex = data.readInt(); var moduleStack = tile.modules.getStackInSlot(moduleIndex); diff --git a/src/main/java/de/ellpeck/prettypipes/Utility.java b/src/main/java/de/ellpeck/prettypipes/Utility.java index 6ad0e09..a762b67 100644 --- a/src/main/java/de/ellpeck/prettypipes/Utility.java +++ b/src/main/java/de/ellpeck/prettypipes/Utility.java @@ -20,9 +20,9 @@ import net.minecraft.world.level.BlockGetter; import net.minecraft.world.level.ChunkPos; import net.minecraft.world.level.Level; import net.minecraft.world.level.block.entity.BlockEntity; -import net.minecraftforge.common.util.INBTSerializable; -import net.minecraftforge.items.IItemHandler; -import net.minecraftforge.items.wrapper.SidedInvWrapper; +import net.neoforged.neoforge.common.util.INBTSerializable; +import net.neoforged.neoforge.items.IItemHandler; +import net.neoforged.neoforge.items.wrapper.SidedInvWrapper; import org.apache.commons.lang3.tuple.Pair; import java.util.ArrayList; diff --git a/src/main/java/de/ellpeck/prettypipes/compat/jei/JEIPrettyPipesPlugin.java b/src/main/java/de/ellpeck/prettypipes/compat/jei/JEIPrettyPipesPlugin.java index 9039314..0979dce 100644 --- a/src/main/java/de/ellpeck/prettypipes/compat/jei/JEIPrettyPipesPlugin.java +++ b/src/main/java/de/ellpeck/prettypipes/compat/jei/JEIPrettyPipesPlugin.java @@ -16,10 +16,10 @@ import net.minecraft.client.gui.components.Button; import net.minecraft.client.renderer.Rect2i; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; -import net.minecraftforge.client.event.ScreenEvent; -import net.minecraftforge.common.MinecraftForge; -import net.minecraftforge.event.TickEvent; -import net.minecraftforge.eventbus.api.SubscribeEvent; +import net.neoforged.neoforge.client.event.ScreenEvent; +import net.neoforged.neoforge.common.NeoForge; +import net.neoforged.neoforge.event.TickEvent; +import net.neoforged.bus.api.SubscribeEvent; import java.util.ArrayList; import java.util.List; @@ -33,7 +33,7 @@ public class JEIPrettyPipesPlugin implements IModPlugin { private Button jeiSyncButton; public JEIPrettyPipesPlugin() { - MinecraftForge.EVENT_BUS.register(this); + NeoForge.EVENT_BUS.register(this); } @Override diff --git a/src/main/java/de/ellpeck/prettypipes/entities/PipeFrameEntity.java b/src/main/java/de/ellpeck/prettypipes/entities/PipeFrameEntity.java index b0f0489..c1fe076 100644 --- a/src/main/java/de/ellpeck/prettypipes/entities/PipeFrameEntity.java +++ b/src/main/java/de/ellpeck/prettypipes/entities/PipeFrameEntity.java @@ -22,7 +22,7 @@ import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.GameRules; import net.minecraft.world.level.Level; import net.minecraft.world.phys.HitResult; -import net.minecraftforge.entity.IEntityAdditionalSpawnData; +import net.neoforged.neoforge.entity.IEntityAdditionalSpawnData; import javax.annotation.Nullable; diff --git a/src/main/java/de/ellpeck/prettypipes/items/IModule.java b/src/main/java/de/ellpeck/prettypipes/items/IModule.java index 2aea475..1fe5732 100644 --- a/src/main/java/de/ellpeck/prettypipes/items/IModule.java +++ b/src/main/java/de/ellpeck/prettypipes/items/IModule.java @@ -9,7 +9,7 @@ import net.minecraft.core.Direction; import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; -import net.minecraftforge.items.IItemHandler; +import net.neoforged.neoforge.items.IItemHandler; import java.util.List; import java.util.Stack; diff --git a/src/main/java/de/ellpeck/prettypipes/items/ModuleItem.java b/src/main/java/de/ellpeck/prettypipes/items/ModuleItem.java index 025a218..9e8680c 100644 --- a/src/main/java/de/ellpeck/prettypipes/items/ModuleItem.java +++ b/src/main/java/de/ellpeck/prettypipes/items/ModuleItem.java @@ -14,9 +14,9 @@ import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.TooltipFlag; import net.minecraft.world.level.Level; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.api.distmarker.OnlyIn; -import net.minecraftforge.items.IItemHandler; +import net.neoforged.api.distmarker.Dist; +import net.neoforged.api.distmarker.OnlyIn; +import net.neoforged.neoforge.items.IItemHandler; import javax.annotation.Nullable; import java.util.Collections; diff --git a/src/main/java/de/ellpeck/prettypipes/items/PipeFrameItem.java b/src/main/java/de/ellpeck/prettypipes/items/PipeFrameItem.java index 83c9671..9036ef9 100644 --- a/src/main/java/de/ellpeck/prettypipes/items/PipeFrameItem.java +++ b/src/main/java/de/ellpeck/prettypipes/items/PipeFrameItem.java @@ -15,7 +15,7 @@ import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.TooltipFlag; import net.minecraft.world.item.context.UseOnContext; import net.minecraft.world.level.Level; -import net.minecraftforge.registries.ForgeRegistries; +import net.neoforged.neoforge.registries.ForgeRegistries; import javax.annotation.Nullable; import java.util.List; diff --git a/src/main/java/de/ellpeck/prettypipes/items/WrenchItem.java b/src/main/java/de/ellpeck/prettypipes/items/WrenchItem.java index 8bca635..b0ec62c 100644 --- a/src/main/java/de/ellpeck/prettypipes/items/WrenchItem.java +++ b/src/main/java/de/ellpeck/prettypipes/items/WrenchItem.java @@ -19,7 +19,7 @@ import net.minecraft.world.item.enchantment.Enchantments; import net.minecraft.world.level.Level; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.EntityBlock; -import net.minecraftforge.registries.ForgeRegistries; +import net.neoforged.neoforge.registries.ForgeRegistries; import java.util.List; diff --git a/src/main/java/de/ellpeck/prettypipes/misc/DirectionSelector.java b/src/main/java/de/ellpeck/prettypipes/misc/DirectionSelector.java index 96a748b..8e99903 100644 --- a/src/main/java/de/ellpeck/prettypipes/misc/DirectionSelector.java +++ b/src/main/java/de/ellpeck/prettypipes/misc/DirectionSelector.java @@ -7,11 +7,10 @@ import net.minecraft.client.gui.components.AbstractWidget; import net.minecraft.core.Direction; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.MutableComponent; import net.minecraft.world.item.ItemStack; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.api.distmarker.OnlyIn; -import net.minecraftforge.client.gui.widget.ExtendedButton; +import net.neoforged.api.distmarker.Dist; +import net.neoforged.api.distmarker.OnlyIn; +import net.neoforged.neoforge.client.gui.widget.ExtendedButton; import org.apache.commons.lang3.ArrayUtils; public class DirectionSelector { diff --git a/src/main/java/de/ellpeck/prettypipes/misc/Events.java b/src/main/java/de/ellpeck/prettypipes/misc/Events.java index c6af821..8a4d934 100644 --- a/src/main/java/de/ellpeck/prettypipes/misc/Events.java +++ b/src/main/java/de/ellpeck/prettypipes/misc/Events.java @@ -6,10 +6,10 @@ import net.minecraft.commands.Commands; import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.level.Level; -import net.minecraftforge.event.AttachCapabilitiesEvent; -import net.minecraftforge.event.server.ServerStartingEvent; -import net.minecraftforge.eventbus.api.SubscribeEvent; -import net.minecraftforge.fml.common.Mod; +import net.neoforged.neoforge.event.server.ServerStartingEvent; +import net.neoforged.bus.api.SubscribeEvent; +import net.neoforged.fml.common.Mod; +import net.neoforged.neoforge.event.AttachCapabilitiesEvent; import java.io.IOException; import java.nio.charset.StandardCharsets; diff --git a/src/main/java/de/ellpeck/prettypipes/misc/FilterSlot.java b/src/main/java/de/ellpeck/prettypipes/misc/FilterSlot.java index c79bcea..e122721 100644 --- a/src/main/java/de/ellpeck/prettypipes/misc/FilterSlot.java +++ b/src/main/java/de/ellpeck/prettypipes/misc/FilterSlot.java @@ -3,8 +3,8 @@ package de.ellpeck.prettypipes.misc; import net.minecraft.world.entity.player.Player; import net.minecraft.world.inventory.AbstractContainerMenu; import net.minecraft.world.item.ItemStack; -import net.minecraftforge.items.IItemHandler; -import net.minecraftforge.items.SlotItemHandler; +import net.neoforged.neoforge.items.IItemHandler; +import net.neoforged.neoforge.items.SlotItemHandler; import org.jetbrains.annotations.NotNull; public class FilterSlot extends SlotItemHandler { diff --git a/src/main/java/de/ellpeck/prettypipes/misc/ItemFilter.java b/src/main/java/de/ellpeck/prettypipes/misc/ItemFilter.java index c768429..a3c1a63 100644 --- a/src/main/java/de/ellpeck/prettypipes/misc/ItemFilter.java +++ b/src/main/java/de/ellpeck/prettypipes/misc/ItemFilter.java @@ -14,10 +14,10 @@ import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; import net.minecraft.world.inventory.Slot; import net.minecraft.world.item.ItemStack; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.api.distmarker.OnlyIn; -import net.minecraftforge.items.ItemHandlerHelper; -import net.minecraftforge.items.ItemStackHandler; +import net.neoforged.api.distmarker.Dist; +import net.neoforged.api.distmarker.OnlyIn; +import net.neoforged.neoforge.items.ItemHandlerHelper; +import net.neoforged.neoforge.items.ItemStackHandler; import java.util.ArrayList; import java.util.List; diff --git a/src/main/java/de/ellpeck/prettypipes/network/NetworkEdge.java b/src/main/java/de/ellpeck/prettypipes/network/NetworkEdge.java index 7f72b76..754edca 100644 --- a/src/main/java/de/ellpeck/prettypipes/network/NetworkEdge.java +++ b/src/main/java/de/ellpeck/prettypipes/network/NetworkEdge.java @@ -5,7 +5,7 @@ import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.ListTag; import net.minecraft.nbt.NbtUtils; import net.minecraft.nbt.Tag; -import net.minecraftforge.common.util.INBTSerializable; +import net.neoforged.neoforge.common.util.INBTSerializable; import org.jgrapht.graph.DefaultWeightedEdge; import java.util.ArrayList; diff --git a/src/main/java/de/ellpeck/prettypipes/network/NetworkLocation.java b/src/main/java/de/ellpeck/prettypipes/network/NetworkLocation.java index 1546107..5f22d9b 100644 --- a/src/main/java/de/ellpeck/prettypipes/network/NetworkLocation.java +++ b/src/main/java/de/ellpeck/prettypipes/network/NetworkLocation.java @@ -7,8 +7,8 @@ import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.NbtUtils; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.Level; -import net.minecraftforge.common.util.INBTSerializable; -import net.minecraftforge.items.IItemHandler; +import net.neoforged.neoforge.common.util.INBTSerializable; +import net.neoforged.neoforge.items.IItemHandler; import java.util.Collections; import java.util.HashMap; diff --git a/src/main/java/de/ellpeck/prettypipes/network/NetworkLock.java b/src/main/java/de/ellpeck/prettypipes/network/NetworkLock.java index 23745f1..5f73b78 100644 --- a/src/main/java/de/ellpeck/prettypipes/network/NetworkLock.java +++ b/src/main/java/de/ellpeck/prettypipes/network/NetworkLock.java @@ -2,7 +2,7 @@ package de.ellpeck.prettypipes.network; import net.minecraft.nbt.CompoundTag; import net.minecraft.world.item.ItemStack; -import net.minecraftforge.common.util.INBTSerializable; +import net.neoforged.neoforge.common.util.INBTSerializable; import java.util.Objects; import java.util.UUID; diff --git a/src/main/java/de/ellpeck/prettypipes/network/PipeItem.java b/src/main/java/de/ellpeck/prettypipes/network/PipeItem.java index 83c7b36..b02d537 100644 --- a/src/main/java/de/ellpeck/prettypipes/network/PipeItem.java +++ b/src/main/java/de/ellpeck/prettypipes/network/PipeItem.java @@ -21,9 +21,9 @@ import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.Level; import net.minecraft.world.phys.Vec3; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.api.distmarker.OnlyIn; -import net.minecraftforge.items.ItemHandlerHelper; +import net.neoforged.api.distmarker.Dist; +import net.neoforged.api.distmarker.OnlyIn; +import net.neoforged.neoforge.items.ItemHandlerHelper; import org.jgrapht.GraphPath; import java.util.ArrayList; diff --git a/src/main/java/de/ellpeck/prettypipes/network/PipeNetwork.java b/src/main/java/de/ellpeck/prettypipes/network/PipeNetwork.java index a7c30c8..c63a1ed 100644 --- a/src/main/java/de/ellpeck/prettypipes/network/PipeNetwork.java +++ b/src/main/java/de/ellpeck/prettypipes/network/PipeNetwork.java @@ -21,9 +21,9 @@ import net.minecraft.nbt.Tag; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.Level; import net.minecraft.world.level.block.state.BlockState; -import net.minecraftforge.common.capabilities.Capability; -import net.minecraftforge.common.capabilities.ICapabilitySerializable; -import net.minecraftforge.common.util.LazyOptional; +import net.neoforged.neoforge.common.capabilities.Capability; +import net.neoforged.neoforge.common.capabilities.ICapabilitySerializable; +import net.neoforged.neoforge.common.util.LazyOptional; import org.apache.commons.lang3.tuple.Pair; import org.jgrapht.ListenableGraph; import org.jgrapht.alg.shortestpath.DijkstraShortestPath; diff --git a/src/main/java/de/ellpeck/prettypipes/packets/PacketButton.java b/src/main/java/de/ellpeck/prettypipes/packets/PacketButton.java index 3f83b77..3b478d9 100644 --- a/src/main/java/de/ellpeck/prettypipes/packets/PacketButton.java +++ b/src/main/java/de/ellpeck/prettypipes/packets/PacketButton.java @@ -19,8 +19,8 @@ import net.minecraft.world.MenuProvider; import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.entity.player.Player; import net.minecraft.world.inventory.AbstractContainerMenu; -import net.minecraftforge.network.NetworkEvent; -import net.minecraftforge.network.NetworkHooks; +import net.neoforged.neoforge.network.NetworkEvent; +import net.neoforged.neoforge.network.NetworkHooks; import org.apache.logging.log4j.util.TriConsumer; import javax.annotation.Nullable; diff --git a/src/main/java/de/ellpeck/prettypipes/packets/PacketCraftingModuleTransfer.java b/src/main/java/de/ellpeck/prettypipes/packets/PacketCraftingModuleTransfer.java index 9b32538..9520dc2 100644 --- a/src/main/java/de/ellpeck/prettypipes/packets/PacketCraftingModuleTransfer.java +++ b/src/main/java/de/ellpeck/prettypipes/packets/PacketCraftingModuleTransfer.java @@ -4,9 +4,9 @@ import de.ellpeck.prettypipes.pipe.modules.craft.CraftingModuleContainer; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; -import net.minecraftforge.items.ItemHandlerHelper; -import net.minecraftforge.items.ItemStackHandler; -import net.minecraftforge.network.NetworkEvent; +import net.neoforged.neoforge.items.ItemHandlerHelper; +import net.neoforged.neoforge.items.ItemStackHandler; +import net.neoforged.neoforge.network.NetworkEvent; import java.util.ArrayList; import java.util.List; diff --git a/src/main/java/de/ellpeck/prettypipes/packets/PacketGhostSlot.java b/src/main/java/de/ellpeck/prettypipes/packets/PacketGhostSlot.java index 0e4c6de..1dc23d4 100644 --- a/src/main/java/de/ellpeck/prettypipes/packets/PacketGhostSlot.java +++ b/src/main/java/de/ellpeck/prettypipes/packets/PacketGhostSlot.java @@ -15,7 +15,7 @@ import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Items; import net.minecraft.world.level.Level; -import net.minecraftforge.network.NetworkEvent; +import net.neoforged.neoforge.network.NetworkEvent; import java.util.ArrayList; import java.util.List; diff --git a/src/main/java/de/ellpeck/prettypipes/packets/PacketHandler.java b/src/main/java/de/ellpeck/prettypipes/packets/PacketHandler.java index 733f0cc..315226a 100644 --- a/src/main/java/de/ellpeck/prettypipes/packets/PacketHandler.java +++ b/src/main/java/de/ellpeck/prettypipes/packets/PacketHandler.java @@ -6,9 +6,9 @@ import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.entity.player.Player; import net.minecraft.world.level.Level; -import net.minecraftforge.network.NetworkRegistry; -import net.minecraftforge.network.PacketDistributor; -import net.minecraftforge.network.simple.SimpleChannel; +import net.neoforged.neoforge.network.PacketDistributor; +import net.neoforged.neoforge.network.simple.SimpleChannel; +import net.neoforged.neoforge.network.NetworkRegistry; public final class PacketHandler { diff --git a/src/main/java/de/ellpeck/prettypipes/packets/PacketItemEnterPipe.java b/src/main/java/de/ellpeck/prettypipes/packets/PacketItemEnterPipe.java index 2421a1f..43b222e 100644 --- a/src/main/java/de/ellpeck/prettypipes/packets/PacketItemEnterPipe.java +++ b/src/main/java/de/ellpeck/prettypipes/packets/PacketItemEnterPipe.java @@ -7,7 +7,7 @@ import net.minecraft.client.Minecraft; import net.minecraft.core.BlockPos; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.FriendlyByteBuf; -import net.minecraftforge.network.NetworkEvent; +import net.neoforged.neoforge.network.NetworkEvent; import java.util.function.Supplier; diff --git a/src/main/java/de/ellpeck/prettypipes/packets/PacketNetworkItems.java b/src/main/java/de/ellpeck/prettypipes/packets/PacketNetworkItems.java index 41f38be..d9df799 100644 --- a/src/main/java/de/ellpeck/prettypipes/packets/PacketNetworkItems.java +++ b/src/main/java/de/ellpeck/prettypipes/packets/PacketNetworkItems.java @@ -4,7 +4,7 @@ import de.ellpeck.prettypipes.terminal.containers.ItemTerminalGui; import net.minecraft.client.Minecraft; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.world.item.ItemStack; -import net.minecraftforge.network.NetworkEvent; +import net.neoforged.neoforge.network.NetworkEvent; import java.util.ArrayList; import java.util.List; diff --git a/src/main/java/de/ellpeck/prettypipes/packets/PacketRequest.java b/src/main/java/de/ellpeck/prettypipes/packets/PacketRequest.java index cf9ce0c..ad9b8e6 100644 --- a/src/main/java/de/ellpeck/prettypipes/packets/PacketRequest.java +++ b/src/main/java/de/ellpeck/prettypipes/packets/PacketRequest.java @@ -6,7 +6,7 @@ import net.minecraft.core.BlockPos; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; -import net.minecraftforge.network.NetworkEvent; +import net.neoforged.neoforge.network.NetworkEvent; import java.util.function.Supplier; diff --git a/src/main/java/de/ellpeck/prettypipes/pipe/IPipeItem.java b/src/main/java/de/ellpeck/prettypipes/pipe/IPipeItem.java index 567d294..d39c9f2 100644 --- a/src/main/java/de/ellpeck/prettypipes/pipe/IPipeItem.java +++ b/src/main/java/de/ellpeck/prettypipes/pipe/IPipeItem.java @@ -9,9 +9,9 @@ import net.minecraft.nbt.CompoundTag; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.Level; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.api.distmarker.OnlyIn; -import net.minecraftforge.common.util.INBTSerializable; +import net.neoforged.api.distmarker.Dist; +import net.neoforged.api.distmarker.OnlyIn; +import net.neoforged.neoforge.common.util.INBTSerializable; import org.jgrapht.GraphPath; import java.util.Collections; diff --git a/src/main/java/de/ellpeck/prettypipes/pipe/PipeBlock.java b/src/main/java/de/ellpeck/prettypipes/pipe/PipeBlock.java index e3461fa..1222ae3 100644 --- a/src/main/java/de/ellpeck/prettypipes/pipe/PipeBlock.java +++ b/src/main/java/de/ellpeck/prettypipes/pipe/PipeBlock.java @@ -34,9 +34,9 @@ import net.minecraft.world.phys.shapes.BooleanOp; import net.minecraft.world.phys.shapes.CollisionContext; import net.minecraft.world.phys.shapes.Shapes; import net.minecraft.world.phys.shapes.VoxelShape; -import net.minecraftforge.common.capabilities.ForgeCapabilities; -import net.minecraftforge.items.ItemHandlerHelper; -import net.minecraftforge.network.NetworkHooks; +import net.neoforged.neoforge.common.capabilities.Capabilities; +import net.neoforged.neoforge.items.ItemHandlerHelper; +import net.neoforged.neoforge.network.NetworkHooks; import org.apache.commons.lang3.mutable.MutableObject; import org.apache.commons.lang3.tuple.Pair; @@ -207,7 +207,7 @@ public class PipeBlock extends BaseEntityBlock { var connectable = tile.getCapability(Registry.pipeConnectableCapability, opposite).orElse(null); if (connectable != null) return connectable.getConnectionType(pos, direction); - var handler = tile.getCapability(ForgeCapabilities.ITEM_HANDLER, opposite).orElse(null); + var handler = tile.getCapability(Capabilities.ITEM_HANDLER, opposite).orElse(null); if (handler != null) return ConnectionType.CONNECTED; } diff --git a/src/main/java/de/ellpeck/prettypipes/pipe/PipeBlockEntity.java b/src/main/java/de/ellpeck/prettypipes/pipe/PipeBlockEntity.java index 48ca1bb..b4c8089 100644 --- a/src/main/java/de/ellpeck/prettypipes/pipe/PipeBlockEntity.java +++ b/src/main/java/de/ellpeck/prettypipes/pipe/PipeBlockEntity.java @@ -34,14 +34,14 @@ import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.block.entity.BlockEntityType; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.phys.AABB; -import net.minecraftforge.api.distmarker.Dist; -import net.minecraftforge.api.distmarker.OnlyIn; -import net.minecraftforge.common.capabilities.Capability; -import net.minecraftforge.common.capabilities.ForgeCapabilities; -import net.minecraftforge.common.util.Lazy; -import net.minecraftforge.common.util.LazyOptional; -import net.minecraftforge.items.IItemHandler; -import net.minecraftforge.items.ItemStackHandler; +import net.neoforged.api.distmarker.Dist; +import net.neoforged.api.distmarker.OnlyIn; +import net.neoforged.neoforge.common.capabilities.Capabilities; +import net.neoforged.neoforge.common.util.Lazy; +import net.neoforged.neoforge.common.util.LazyOptional; +import net.neoforged.neoforge.items.IItemHandler; +import net.neoforged.neoforge.items.ItemStackHandler; +import net.neoforged.neoforge.common.capabilities.Capability; import org.apache.commons.lang3.tuple.Pair; import javax.annotation.Nonnull; @@ -315,7 +315,7 @@ public class PipeBlockEntity extends BlockEntity implements MenuProvider, IPipeC } public IItemHandler getItemHandler(Direction dir) { - var handler = this.getNeighborCap(dir, ForgeCapabilities.ITEM_HANDLER); + var handler = this.getNeighborCap(dir, Capabilities.ITEM_HANDLER); if (handler != null) return handler; return Utility.getBlockItemHandler(this.level, this.worldPosition.relative(dir), dir.getOpposite()); diff --git a/src/main/java/de/ellpeck/prettypipes/pipe/PipeRenderer.java b/src/main/java/de/ellpeck/prettypipes/pipe/PipeRenderer.java index 8d9a0bb..793ca33 100644 --- a/src/main/java/de/ellpeck/prettypipes/pipe/PipeRenderer.java +++ b/src/main/java/de/ellpeck/prettypipes/pipe/PipeRenderer.java @@ -6,7 +6,7 @@ import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.blockentity.BlockEntityRenderer; import net.minecraft.client.renderer.blockentity.BlockEntityRendererProvider; import net.minecraft.util.RandomSource; -import net.minecraftforge.client.model.data.ModelData; +import net.neoforged.neoforge.client.model.data.ModelData; import java.util.Random; diff --git a/src/main/java/de/ellpeck/prettypipes/pipe/containers/AbstractPipeGui.java b/src/main/java/de/ellpeck/prettypipes/pipe/containers/AbstractPipeGui.java index 8b7678f..0193e88 100644 --- a/src/main/java/de/ellpeck/prettypipes/pipe/containers/AbstractPipeGui.java +++ b/src/main/java/de/ellpeck/prettypipes/pipe/containers/AbstractPipeGui.java @@ -13,7 +13,7 @@ import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvents; import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.item.ItemStack; -import net.minecraftforge.items.SlotItemHandler; +import net.neoforged.neoforge.items.SlotItemHandler; import java.util.ArrayList; import java.util.List; diff --git a/src/main/java/de/ellpeck/prettypipes/pipe/containers/MainPipeContainer.java b/src/main/java/de/ellpeck/prettypipes/pipe/containers/MainPipeContainer.java index d770bd6..0c7c863 100644 --- a/src/main/java/de/ellpeck/prettypipes/pipe/containers/MainPipeContainer.java +++ b/src/main/java/de/ellpeck/prettypipes/pipe/containers/MainPipeContainer.java @@ -4,7 +4,7 @@ import de.ellpeck.prettypipes.items.IModule; import net.minecraft.core.BlockPos; import net.minecraft.world.entity.player.Player; import net.minecraft.world.inventory.MenuType; -import net.minecraftforge.items.SlotItemHandler; +import net.neoforged.neoforge.items.SlotItemHandler; import javax.annotation.Nullable; diff --git a/src/main/java/de/ellpeck/prettypipes/pipe/modules/craft/CraftingModuleContainer.java b/src/main/java/de/ellpeck/prettypipes/pipe/modules/craft/CraftingModuleContainer.java index e11b0a7..f158abb 100644 --- a/src/main/java/de/ellpeck/prettypipes/pipe/modules/craft/CraftingModuleContainer.java +++ b/src/main/java/de/ellpeck/prettypipes/pipe/modules/craft/CraftingModuleContainer.java @@ -5,7 +5,7 @@ import de.ellpeck.prettypipes.pipe.containers.AbstractPipeContainer; import net.minecraft.core.BlockPos; import net.minecraft.world.entity.player.Player; import net.minecraft.world.inventory.MenuType; -import net.minecraftforge.items.ItemStackHandler; +import net.neoforged.neoforge.items.ItemStackHandler; public class CraftingModuleContainer extends AbstractPipeContainer { diff --git a/src/main/java/de/ellpeck/prettypipes/pipe/modules/craft/CraftingModuleItem.java b/src/main/java/de/ellpeck/prettypipes/pipe/modules/craft/CraftingModuleItem.java index f206d49..aa50f59 100644 --- a/src/main/java/de/ellpeck/prettypipes/pipe/modules/craft/CraftingModuleItem.java +++ b/src/main/java/de/ellpeck/prettypipes/pipe/modules/craft/CraftingModuleItem.java @@ -18,8 +18,8 @@ import net.minecraft.util.Mth; import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; -import net.minecraftforge.items.IItemHandler; -import net.minecraftforge.items.ItemStackHandler; +import net.neoforged.neoforge.items.IItemHandler; +import net.neoforged.neoforge.items.ItemStackHandler; import org.apache.commons.lang3.tuple.Pair; import java.util.ArrayList; diff --git a/src/main/java/de/ellpeck/prettypipes/pipe/modules/extraction/ExtractionModuleItem.java b/src/main/java/de/ellpeck/prettypipes/pipe/modules/extraction/ExtractionModuleItem.java index af22e51..53123ad 100644 --- a/src/main/java/de/ellpeck/prettypipes/pipe/modules/extraction/ExtractionModuleItem.java +++ b/src/main/java/de/ellpeck/prettypipes/pipe/modules/extraction/ExtractionModuleItem.java @@ -13,7 +13,7 @@ import net.minecraft.core.Direction; import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; -import net.minecraftforge.items.IItemHandler; +import net.neoforged.neoforge.items.IItemHandler; public class ExtractionModuleItem extends ModuleItem { diff --git a/src/main/java/de/ellpeck/prettypipes/pipe/modules/insertion/FilterModuleItem.java b/src/main/java/de/ellpeck/prettypipes/pipe/modules/insertion/FilterModuleItem.java index 1cd8f58..160033c 100644 --- a/src/main/java/de/ellpeck/prettypipes/pipe/modules/insertion/FilterModuleItem.java +++ b/src/main/java/de/ellpeck/prettypipes/pipe/modules/insertion/FilterModuleItem.java @@ -12,7 +12,7 @@ import net.minecraft.core.Direction; import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; -import net.minecraftforge.items.IItemHandler; +import net.neoforged.neoforge.items.IItemHandler; public class FilterModuleItem extends ModuleItem { diff --git a/src/main/java/de/ellpeck/prettypipes/pipe/modules/retrieval/RetrievalModuleItem.java b/src/main/java/de/ellpeck/prettypipes/pipe/modules/retrieval/RetrievalModuleItem.java index 7a81e1b..6e150ed 100644 --- a/src/main/java/de/ellpeck/prettypipes/pipe/modules/retrieval/RetrievalModuleItem.java +++ b/src/main/java/de/ellpeck/prettypipes/pipe/modules/retrieval/RetrievalModuleItem.java @@ -13,7 +13,7 @@ import net.minecraft.core.Direction; import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; -import net.minecraftforge.items.IItemHandler; +import net.neoforged.neoforge.items.IItemHandler; import java.util.Arrays; diff --git a/src/main/java/de/ellpeck/prettypipes/pipe/modules/stacksize/StackSizeModuleItem.java b/src/main/java/de/ellpeck/prettypipes/pipe/modules/stacksize/StackSizeModuleItem.java index 1da5063..ac03ce3 100644 --- a/src/main/java/de/ellpeck/prettypipes/pipe/modules/stacksize/StackSizeModuleItem.java +++ b/src/main/java/de/ellpeck/prettypipes/pipe/modules/stacksize/StackSizeModuleItem.java @@ -10,7 +10,7 @@ import de.ellpeck.prettypipes.pipe.containers.AbstractPipeContainer; import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; -import net.minecraftforge.items.IItemHandler; +import net.neoforged.neoforge.items.IItemHandler; public class StackSizeModuleItem extends ModuleItem { diff --git a/src/main/java/de/ellpeck/prettypipes/pressurizer/PressurizerBlock.java b/src/main/java/de/ellpeck/prettypipes/pressurizer/PressurizerBlock.java index c655d2e..3bd5123 100644 --- a/src/main/java/de/ellpeck/prettypipes/pressurizer/PressurizerBlock.java +++ b/src/main/java/de/ellpeck/prettypipes/pressurizer/PressurizerBlock.java @@ -21,8 +21,8 @@ import net.minecraft.world.level.block.entity.BlockEntityType; import net.minecraft.world.level.block.state.BlockBehaviour; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.phys.BlockHitResult; -import net.minecraftforge.network.NetworkHooks; -import net.minecraftforge.registries.ForgeRegistries; +import net.neoforged.neoforge.registries.ForgeRegistries; +import net.neoforged.neoforge.network.NetworkHooks; import javax.annotation.Nullable; import java.util.List; diff --git a/src/main/java/de/ellpeck/prettypipes/pressurizer/PressurizerBlockEntity.java b/src/main/java/de/ellpeck/prettypipes/pressurizer/PressurizerBlockEntity.java index 2d799d0..c383a0a 100644 --- a/src/main/java/de/ellpeck/prettypipes/pressurizer/PressurizerBlockEntity.java +++ b/src/main/java/de/ellpeck/prettypipes/pressurizer/PressurizerBlockEntity.java @@ -20,11 +20,11 @@ import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.Level; import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.block.state.BlockState; -import net.minecraftforge.common.capabilities.Capability; -import net.minecraftforge.common.capabilities.ForgeCapabilities; -import net.minecraftforge.common.util.LazyOptional; -import net.minecraftforge.energy.EnergyStorage; -import net.minecraftforge.energy.IEnergyStorage; +import net.neoforged.neoforge.common.capabilities.Capability; +import net.neoforged.neoforge.common.capabilities.Capabilities; +import net.neoforged.neoforge.energy.EnergyStorage; +import net.neoforged.neoforge.energy.IEnergyStorage; +import net.neoforged.neoforge.common.util.LazyOptional; import javax.annotation.Nullable; @@ -96,7 +96,7 @@ public class PressurizerBlockEntity extends BlockEntity implements MenuProvider, @Override public LazyOptional getCapability(Capability cap, Direction side) { - if (cap == ForgeCapabilities.ENERGY) { + if (cap == Capabilities.ENERGY) { return this.lazyStorage.cast(); } else if (cap == Registry.pipeConnectableCapability) { return this.lazyThis.cast(); diff --git a/src/main/java/de/ellpeck/prettypipes/terminal/CraftingTerminalBlockEntity.java b/src/main/java/de/ellpeck/prettypipes/terminal/CraftingTerminalBlockEntity.java index 486ac4c..9cf730f 100644 --- a/src/main/java/de/ellpeck/prettypipes/terminal/CraftingTerminalBlockEntity.java +++ b/src/main/java/de/ellpeck/prettypipes/terminal/CraftingTerminalBlockEntity.java @@ -22,8 +22,8 @@ import net.minecraft.world.entity.player.Player; import net.minecraft.world.inventory.AbstractContainerMenu; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.block.state.BlockState; -import net.minecraftforge.items.ItemHandlerHelper; -import net.minecraftforge.items.ItemStackHandler; +import net.neoforged.neoforge.items.ItemHandlerHelper; +import net.neoforged.neoforge.items.ItemStackHandler; import org.apache.commons.lang3.mutable.MutableInt; import javax.annotation.Nullable; diff --git a/src/main/java/de/ellpeck/prettypipes/terminal/ItemTerminalBlock.java b/src/main/java/de/ellpeck/prettypipes/terminal/ItemTerminalBlock.java index ff216f0..1183ac9 100644 --- a/src/main/java/de/ellpeck/prettypipes/terminal/ItemTerminalBlock.java +++ b/src/main/java/de/ellpeck/prettypipes/terminal/ItemTerminalBlock.java @@ -21,8 +21,8 @@ import net.minecraft.world.level.block.entity.BlockEntityTicker; import net.minecraft.world.level.block.entity.BlockEntityType; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.phys.BlockHitResult; -import net.minecraftforge.network.NetworkHooks; -import net.minecraftforge.registries.ForgeRegistries; +import net.neoforged.neoforge.network.NetworkHooks; +import net.neoforged.neoforge.registries.ForgeRegistries; import javax.annotation.Nullable; import java.util.List; diff --git a/src/main/java/de/ellpeck/prettypipes/terminal/ItemTerminalBlockEntity.java b/src/main/java/de/ellpeck/prettypipes/terminal/ItemTerminalBlockEntity.java index b0c4456..c6a2406 100644 --- a/src/main/java/de/ellpeck/prettypipes/terminal/ItemTerminalBlockEntity.java +++ b/src/main/java/de/ellpeck/prettypipes/terminal/ItemTerminalBlockEntity.java @@ -31,10 +31,10 @@ import net.minecraft.world.level.Level; import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.block.entity.BlockEntityType; import net.minecraft.world.level.block.state.BlockState; -import net.minecraftforge.common.capabilities.Capability; -import net.minecraftforge.common.util.LazyOptional; -import net.minecraftforge.items.ItemHandlerHelper; -import net.minecraftforge.items.ItemStackHandler; +import net.neoforged.neoforge.common.capabilities.Capability; +import net.neoforged.neoforge.common.util.LazyOptional; +import net.neoforged.neoforge.items.ItemHandlerHelper; +import net.neoforged.neoforge.items.ItemStackHandler; import org.apache.commons.lang3.tuple.Pair; import javax.annotation.Nonnull; diff --git a/src/main/java/de/ellpeck/prettypipes/terminal/containers/ItemTerminalContainer.java b/src/main/java/de/ellpeck/prettypipes/terminal/containers/ItemTerminalContainer.java index cd3935e..35cac08 100644 --- a/src/main/java/de/ellpeck/prettypipes/terminal/containers/ItemTerminalContainer.java +++ b/src/main/java/de/ellpeck/prettypipes/terminal/containers/ItemTerminalContainer.java @@ -8,7 +8,7 @@ import net.minecraft.world.inventory.AbstractContainerMenu; import net.minecraft.world.inventory.MenuType; import net.minecraft.world.inventory.Slot; import net.minecraft.world.item.ItemStack; -import net.minecraftforge.items.SlotItemHandler; +import net.neoforged.neoforge.items.SlotItemHandler; import org.apache.commons.lang3.tuple.Pair; import javax.annotation.Nullable; diff --git a/src/main/java/de/ellpeck/prettypipes/terminal/containers/WrappedCraftingInventory.java b/src/main/java/de/ellpeck/prettypipes/terminal/containers/WrappedCraftingInventory.java index 5fbb71d..6c02cba 100644 --- a/src/main/java/de/ellpeck/prettypipes/terminal/containers/WrappedCraftingInventory.java +++ b/src/main/java/de/ellpeck/prettypipes/terminal/containers/WrappedCraftingInventory.java @@ -3,7 +3,7 @@ package de.ellpeck.prettypipes.terminal.containers; import net.minecraft.world.entity.player.StackedContents; import net.minecraft.world.inventory.TransientCraftingContainer; import net.minecraft.world.item.ItemStack; -import net.minecraftforge.items.ItemStackHandler; +import net.neoforged.neoforge.items.ItemStackHandler; public class WrappedCraftingInventory extends TransientCraftingContainer {