Fix existing item filter (#101)

* Update buildscript and dependencies

* Remove the extra conduit packet update that overrides some of the previous change packets

* spotlessApply (#102)

Co-authored-by: GitHub GTNH Actions <>

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
This commit is contained in:
authored and GitHub committed 2023-03-01 06:32:43 +00:00
1 parent 28df6fa938
commit 7f6a0a6a4c
7 files changed
+133 -59

No files matched your search

+121 -23
View File
@@ -1,4 +1,4 @@
//version: 1676031737 //version: 1677142954
/* /*
DO NOT CHANGE THIS FILE! DO NOT CHANGE THIS FILE!
Also, you may replace this file at any time if there is an update available. Also, you may replace this file at any time if there is an update available.
@@ -20,6 +20,7 @@ import cpw.mods.fml.relauncher.Side
import org.gradle.api.tasks.options.Option; import org.gradle.api.tasks.options.Option;
import org.gradle.internal.logging.text.StyledTextOutput.Style import org.gradle.internal.logging.text.StyledTextOutput.Style
import org.gradle.internal.logging.text.StyledTextOutputFactory import org.gradle.internal.logging.text.StyledTextOutputFactory
import org.gradle.internal.xml.XmlTransformer
import org.jetbrains.gradle.ext.* import org.jetbrains.gradle.ext.*
import java.nio.file.Files import java.nio.file.Files
@@ -31,7 +32,6 @@ import javax.inject.Inject
buildscript { buildscript {
repositories { repositories {
mavenLocal()
mavenCentral() mavenCentral()
maven { maven {
@@ -52,6 +52,8 @@ buildscript {
name 'Scala CI dependencies' name 'Scala CI dependencies'
url 'https://repo1.maven.org/maven2/' url 'https://repo1.maven.org/maven2/'
} }
mavenLocal()
} }
} }
plugins { plugins {
@@ -71,7 +73,7 @@ plugins {
id 'com.diffplug.spotless' version '6.7.2' apply false id 'com.diffplug.spotless' version '6.7.2' apply false
id 'com.modrinth.minotaur' version '2.+' apply false id 'com.modrinth.minotaur' version '2.+' apply false
id 'com.matthewprenger.cursegradle' version '1.4.0' apply false id 'com.matthewprenger.cursegradle' version '1.4.0' apply false
id 'com.gtnewhorizons.retrofuturagradle' version '1.1.6' id 'com.gtnewhorizons.retrofuturagradle' version '1.2.2'
} }
boolean settingsupdated = verifySettingsGradle() boolean settingsupdated = verifySettingsGradle()
settingsupdated = verifyGitAttributes() || settingsupdated settingsupdated = verifyGitAttributes() || settingsupdated
@@ -127,6 +129,9 @@ propertyDefaultIfUnset("gradleTokenGroupName", "")
propertyDefaultIfUnset("enableModernJavaSyntax", false) // On by default for new projects only propertyDefaultIfUnset("enableModernJavaSyntax", false) // On by default for new projects only
propertyDefaultIfUnset("enableGenericInjection", false) // On by default for new projects only propertyDefaultIfUnset("enableGenericInjection", false) // On by default for new projects only
// this is meant to be set using the user wide property file. by default we do nothing.
propertyDefaultIfUnset("ideaOverrideBuildType", "") // Can be nothing, "gradle" or "idea"
project.extensions.add(Blowdryer, "Blowdryer", Blowdryer) // Make blowdryer available in "apply from:" scripts project.extensions.add(Blowdryer, "Blowdryer", Blowdryer) // Make blowdryer available in "apply from:" scripts
if (!disableSpotless) { if (!disableSpotless) {
apply plugin: 'com.diffplug.spotless' apply plugin: 'com.diffplug.spotless'
@@ -249,12 +254,14 @@ if (apiPackage) {
} }
if (accessTransformersFile) { if (accessTransformersFile) {
String targetFile = "src/main/resources/META-INF/" + accessTransformersFile for (atFile in accessTransformersFile.split(",")) {
if (!getFile(targetFile).exists()) { String targetFile = "src/main/resources/META-INF/" + atFile.trim()
throw new GradleException("Could not resolve \"accessTransformersFile\"! Could not find " + targetFile) if (!getFile(targetFile).exists()) {
throw new GradleException("Could not resolve \"accessTransformersFile\"! Could not find " + targetFile)
}
tasks.deobfuscateMergedJarToSrg.accessTransformerFiles.from(targetFile)
tasks.srgifyBinpatchedJar.accessTransformerFiles.from(targetFile)
} }
tasks.deobfuscateMergedJarToSrg.accessTransformerFiles.from(targetFile)
tasks.srgifyBinpatchedJar.accessTransformerFiles.from(targetFile)
} else { } else {
boolean atsFound = false boolean atsFound = false
for (File at : sourceSets.getByName("main").resources.files) { for (File at : sourceSets.getByName("main").resources.files) {
@@ -382,6 +389,10 @@ minecraft {
injectMissingGenerics.set(true) injectMissingGenerics.set(true)
} }
username = developmentEnvironmentUserName.toString()
lwjgl3Version = "3.3.2-SNAPSHOT"
// Enable assertions in the current mod // Enable assertions in the current mod
extraRunJvmArguments.add("-ea:${modGroup}") extraRunJvmArguments.add("-ea:${modGroup}")
@@ -455,8 +466,9 @@ repositories.configureEach { repo ->
apply from: 'repositories.gradle' apply from: 'repositories.gradle'
configurations { configurations {
runtimeClasspath.extendsFrom(runtimeOnlyNonPublishable)
testRuntimeClasspath.extendsFrom(runtimeOnlyNonPublishable)
for (config in [compileClasspath, runtimeClasspath, testCompileClasspath, testRuntimeClasspath]) { for (config in [compileClasspath, runtimeClasspath, testCompileClasspath, testRuntimeClasspath]) {
config.extendsFrom(runtimeOnlyNonPublishable)
if (usesShadowedDependencies.toBoolean()) { if (usesShadowedDependencies.toBoolean()) {
config.extendsFrom(shadowImplementation) config.extendsFrom(shadowImplementation)
// TODO: remove Compile after all uses are refactored to Implementation // TODO: remove Compile after all uses are refactored to Implementation
@@ -509,6 +521,13 @@ repositories {
} }
} }
} }
maven {
name 'sonatype'
url 'https://oss.sonatype.org/content/repositories/snapshots/'
content {
includeGroup "org.lwjgl"
}
}
if (includeWellKnownRepositories.toBoolean()) { if (includeWellKnownRepositories.toBoolean()) {
maven { maven {
name "CurseMaven" name "CurseMaven"
@@ -545,20 +564,20 @@ dependencies {
annotationProcessor('org.ow2.asm:asm-debug-all:5.0.3') annotationProcessor('org.ow2.asm:asm-debug-all:5.0.3')
annotationProcessor('com.google.guava:guava:24.1.1-jre') annotationProcessor('com.google.guava:guava:24.1.1-jre')
annotationProcessor('com.google.code.gson:gson:2.8.6') annotationProcessor('com.google.code.gson:gson:2.8.6')
annotationProcessor('com.gtnewhorizon:gtnhmixins:2.1.12:processor') annotationProcessor('com.gtnewhorizon:gtnhmixins:2.1.13:processor')
if (usesMixinDebug.toBoolean()) { if (usesMixinDebug.toBoolean()) {
runtimeOnlyNonPublishable('org.jetbrains:intellij-fernflower:1.2.1.16') runtimeOnlyNonPublishable('org.jetbrains:intellij-fernflower:1.2.1.16')
} }
} }
if (usesMixins.toBoolean() || forceEnableMixins.toBoolean()) { if (usesMixins.toBoolean() || forceEnableMixins.toBoolean()) {
implementation('com.gtnewhorizon:gtnhmixins:2.1.12') implementation('com.gtnewhorizon:gtnhmixins:2.1.13')
} }
} }
pluginManager.withPlugin('org.jetbrains.kotlin.kapt') { pluginManager.withPlugin('org.jetbrains.kotlin.kapt') {
if (usesMixins.toBoolean()) { if (usesMixins.toBoolean()) {
dependencies { dependencies {
kapt('com.gtnewhorizon:gtnhmixins:2.1.12:processor') kapt('com.gtnewhorizon:gtnhmixins:2.1.13:processor')
} }
} }
} }
@@ -667,17 +686,22 @@ ext.java17Toolchain = (JavaToolchainSpec spec) -> {
spec.vendor.set(JvmVendorSpec.matching("jetbrains")) spec.vendor.set(JvmVendorSpec.matching("jetbrains"))
} }
ext.java17DependenciesCfg = configurations.create("java17Dependencies") ext.java17DependenciesCfg = configurations.create("java17Dependencies") {
ext.java17PatchDependenciesCfg = configurations.create("java17PatchDependencies") extendsFrom(configurations.getByName("runtimeClasspath")) // Ensure consistent transitive dependency resolution
canBeConsumed = false
}
ext.java17PatchDependenciesCfg = configurations.create("java17PatchDependencies") {
canBeConsumed = false
}
dependencies { dependencies {
def lwjgl3ifyVersion = '1.1.21' def lwjgl3ifyVersion = '1.1.28'
def asmVersion = '9.4' def asmVersion = '9.4'
if (modId != 'lwjgl3ify') { if (modId != 'lwjgl3ify') {
java17Dependencies("com.github.GTNewHorizons:lwjgl3ify:${lwjgl3ifyVersion}") java17Dependencies("com.github.GTNewHorizons:lwjgl3ify:${lwjgl3ifyVersion}")
} }
if (modId != 'hodgepodge') { if (modId != 'hodgepodge') {
java17Dependencies('com.github.GTNewHorizons:Hodgepodge:2.0.31') java17Dependencies('com.github.GTNewHorizons:Hodgepodge:2.0.35')
} }
java17PatchDependencies('net.minecraft:launchwrapper:1.15') {transitive = false} java17PatchDependencies('net.minecraft:launchwrapper:1.15') {transitive = false}
@@ -688,7 +712,7 @@ dependencies {
java17PatchDependencies("org.ow2.asm:asm-util:${asmVersion}") java17PatchDependencies("org.ow2.asm:asm-util:${asmVersion}")
java17PatchDependencies('org.ow2.asm:asm-deprecated:7.1') java17PatchDependencies('org.ow2.asm:asm-deprecated:7.1')
java17PatchDependencies("org.apache.commons:commons-lang3:3.12.0") java17PatchDependencies("org.apache.commons:commons-lang3:3.12.0")
java17PatchDependencies("com.github.GTNewHorizons:lwjgl3ify:${lwjgl3ifyVersion}:forgePatches") java17PatchDependencies("com.github.GTNewHorizons:lwjgl3ify:${lwjgl3ifyVersion}:forgePatches") {transitive = false}
} }
ext.java17JvmArgs = [ ext.java17JvmArgs = [
@@ -750,8 +774,8 @@ public abstract class RunHotswappableMinecraftTask extends RunMinecraftTask {
public boolean setEnableHotswap(boolean enable) { enableHotswap = enable } public boolean setEnableHotswap(boolean enable) { enableHotswap = enable }
@Inject @Inject
public RunHotswappableMinecraftTask(Side side, String superTask) { public RunHotswappableMinecraftTask(Side side, String superTask, org.gradle.api.invocation.Gradle gradle) {
super(side) super(side, gradle)
this.lwjglVersion = 3 this.lwjglVersion = 3
this.javaLauncher = project.javaToolchains.launcherFor(project.java17Toolchain) this.javaLauncher = project.javaToolchains.launcherFor(project.java17Toolchain)
@@ -782,6 +806,8 @@ runClient17Task.configure {
description = "Runs the modded client using Java 17, lwjgl3ify and Hodgepodge" description = "Runs the modded client using Java 17, lwjgl3ify and Hodgepodge"
dependsOn(setupHotswapAgentTask, mcpTasks.launcherSources.classesTaskName, minecraftTasks.taskDownloadVanillaAssets, mcpTasks.taskPackagePatchedMc, 'jar') dependsOn(setupHotswapAgentTask, mcpTasks.launcherSources.classesTaskName, minecraftTasks.taskDownloadVanillaAssets, mcpTasks.taskPackagePatchedMc, 'jar')
mainClass = "GradleStart" mainClass = "GradleStart"
username = minecraft.username
userUUID = minecraft.userUUID
} }
def runServer17Task = tasks.register("runServer17", RunHotswappableMinecraftTask, Side.SERVER, "runServer") def runServer17Task = tasks.register("runServer17", RunHotswappableMinecraftTask, Side.SERVER, "runServer")
@@ -828,7 +854,7 @@ if (usesShadowedDependencies.toBoolean()) {
tasks.register('relocateShadowJar', ConfigureShadowRelocation) { tasks.register('relocateShadowJar', ConfigureShadowRelocation) {
target = tasks.shadowJar target = tasks.shadowJar
prefix = modGroup + ".shadow" prefix = modGroup + ".shadow"
enabled = minimizeShadowedDependencies.toBoolean() enabled = relocateShadowedDependencies.toBoolean()
} }
tasks.named("shadowJar", ShadowJar).configure { tasks.named("shadowJar", ShadowJar).configure {
manifest { manifest {
@@ -844,7 +870,7 @@ if (usesShadowedDependencies.toBoolean()) {
project.configurations.shadeCompile project.configurations.shadeCompile
] ]
archiveClassifier.set('dev') archiveClassifier.set('dev')
if (minimizeShadowedDependencies.toBoolean()) { if (relocateShadowedDependencies.toBoolean()) {
dependsOn(relocateShadowJar) dependsOn(relocateShadowJar)
} }
} }
@@ -905,6 +931,19 @@ idea {
} }
project { project {
settings { settings {
if (ideaOverrideBuildType != "") {
delegateActions {
if ("gradle".equalsIgnoreCase(ideaOverrideBuildType)) {
delegateBuildRunToGradle = true
testRunner = org.jetbrains.gradle.ext.ActionDelegationConfig.TestRunner.GRADLE
} else if ("idea".equalsIgnoreCase(ideaOverrideBuildType)) {
delegateBuildRunToGradle = false
testRunner = org.jetbrains.gradle.ext.ActionDelegationConfig.TestRunner.PLATFORM
} else {
throw GradleScriptException('Accepted value for ideaOverrideBuildType is one of gradle or idea.')
}
}
}
runConfigurations { runConfigurations {
"1. Run Client"(Gradle) { "1. Run Client"(Gradle) {
taskNames = ["runClient"] taskNames = ["runClient"]
@@ -943,7 +982,7 @@ idea {
} }
"Run Client (IJ Native)"(Application) { "Run Client (IJ Native)"(Application) {
mainClass = "GradleStart" mainClass = "GradleStart"
moduleName = project.name + ".main" moduleName = project.name + ".ideVirtualMain"
afterEvaluate { afterEvaluate {
workingDirectory = tasks.runClient.workingDir.absolutePath workingDirectory = tasks.runClient.workingDir.absolutePath
programParameters = tasks.runClient.calculateArgs(project).collect { '"' + it + '"' }.join(' ') programParameters = tasks.runClient.calculateArgs(project).collect { '"' + it + '"' }.join(' ')
@@ -954,7 +993,7 @@ idea {
} }
"Run Server (IJ Native)"(Application) { "Run Server (IJ Native)"(Application) {
mainClass = "GradleStartServer" mainClass = "GradleStartServer"
moduleName = project.name + ".main" moduleName = project.name + ".ideVirtualMain"
afterEvaluate { afterEvaluate {
workingDirectory = tasks.runServer.workingDir.absolutePath workingDirectory = tasks.runServer.workingDir.absolutePath
programParameters = tasks.runServer.calculateArgs(project).collect { '"' + it + '"' }.join(' ') programParameters = tasks.runServer.calculateArgs(project).collect { '"' + it + '"' }.join(' ')
@@ -971,6 +1010,51 @@ idea {
] ]
} }
} }
withIDEADir { File ideaDir ->
if (!ideaDir.path.contains(".idea")) {
// If an .ipr file exists, the project root directory is passed here instead of the .idea subdirectory
ideaDir = new File(ideaDir, ".idea")
}
if (ideaDir.isDirectory()) {
def miscFile = new File(ideaDir, "misc.xml")
if (miscFile.isFile()) {
boolean dirty = false
def miscTransformer = new XmlTransformer()
miscTransformer.addAction { root ->
Node rootNode = root.asNode()
def rootManager = rootNode
.component.find { it.@name == 'ProjectRootManager' }
if (!rootManager) {
rootManager = rootNode.appendNode('component', ['name': 'ProjectRootManager', 'version': '2'])
dirty = true
}
def output = rootManager.output
if (!output) {
output = rootManager.appendNode('output')
dirty = true
}
if (!output.@url) {
// Only modify the output url if it doesn't yet have one, or if the existing one is blank somehow.
// This is a sensible default for most setups
output.@url = 'file://$PROJECT_DIR$/build/ideaBuild'
dirty = true
}
}
def result = miscTransformer.transform(miscFile.text)
if (dirty) {
miscFile.write(result)
}
} else {
miscFile.text = """<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectRootManager" version="2">
<output url="file://\$PROJECT_DIR\$/out" />
</component>
</project>
"""
}
}
}
} }
} }
} }
@@ -1118,10 +1202,21 @@ def addCurseForgeRelation(String type, String name) {
} }
// Updating // Updating
def buildscriptGradleVersion = "8.0.1"
tasks.named('wrapper', Wrapper).configure {
gradleVersion = buildscriptGradleVersion
}
tasks.register('updateBuildScript') { tasks.register('updateBuildScript') {
group = 'GTNH Buildscript' group = 'GTNH Buildscript'
description = 'Updates the build script to the latest version' description = 'Updates the build script to the latest version'
if (gradle.gradleVersion != buildscriptGradleVersion && !Boolean.getBoolean('DISABLE_BUILDSCRIPT_GRADLE_UPDATE')) {
dependsOn('wrapper')
}
doLast { doLast {
if (performBuildScriptUpdate()) return if (performBuildScriptUpdate()) return
@@ -1134,6 +1229,9 @@ if (!project.getGradle().startParameter.isOffline() && !Boolean.getBoolean('DISA
performBuildScriptUpdate() performBuildScriptUpdate()
} else { } else {
out.style(Style.SuccessHeader).println("Build script update available! Run 'gradle updateBuildScript'") out.style(Style.SuccessHeader).println("Build script update available! Run 'gradle updateBuildScript'")
if (gradle.gradleVersion != buildscriptGradleVersion) {
out.style(Style.SuccessHeader).println("updateBuildScript can update gradle from ${gradle.gradleVersion} to ${buildscriptGradleVersion}\n")
}
} }
} }
+9 -9
View File
@@ -1,20 +1,20 @@
// Add your dependencies here // Add your dependencies here
dependencies { dependencies {
compile('com.github.GTNewHorizons:EnderCore:0.2.9:dev') api('com.github.GTNewHorizons:EnderCore:0.2.13:dev')
compile('com.github.GTNewHorizons:ForestryMC:4.4.6:dev') implementation('com.github.GTNewHorizons:ForestryMC:4.5.8:dev')
compile('com.github.GTNewHorizons:NotEnoughItems:2.3.7-GTNH:dev') implementation('com.github.GTNewHorizons:NotEnoughItems:2.3.35-GTNH:dev')
compile('com.github.GTNewHorizons:BuildCraft:7.1.27:dev') api('com.github.GTNewHorizons:BuildCraft:7.1.27:dev')
compile('curse.maven:cofh-lib-220333:2388748') // https://www.curseforge.com/minecraft/mc-mods/cofh-lib/files/2388748 api('curse.maven:cofh-lib-220333:2388748') // https://www.curseforge.com/minecraft/mc-mods/cofh-lib/files/2388748
shadowImplementation('cglib:cglib-nodep:3.3.0') shadowImplementation('cglib:cglib-nodep:3.3.0')
compileOnly('com.github.GTNewHorizons:waila:1.5.19:api') {transitive = false} compileOnly('com.github.GTNewHorizons:waila:1.5.23:api') {transitive = false}
compileOnly('com.github.GTNewHorizons:Applied-Energistics-2-Unofficial:rv3-beta-85-GTNH:api') {transitive = false} compileOnly('com.github.GTNewHorizons:Applied-Energistics-2-Unofficial:rv3-beta-168-GTNH:api') {transitive = false}
compileOnly('com.github.GTNewHorizons:Baubles:1.0.1.14:dev') {transitive = false} compileOnly('com.github.GTNewHorizons:Baubles:1.0.1.14:dev') {transitive = false}
compileOnly('com.github.GTNewHorizons:Railcraft:9.13.6:api') {transitive = false} compileOnly('com.github.GTNewHorizons:Railcraft:9.13.6:api') {transitive = false}
compileOnly('com.github.GTNewHorizons:StorageDrawers:1.11.13-GTNH:api') {transitive = false} compileOnly('com.github.GTNewHorizons:StorageDrawers:1.11.13-GTNH:api') {transitive = false}
compile('com.github.GTNewHorizons:Chisel:2.10.8-GTNH:dev') {transitive = false} implementation('com.github.GTNewHorizons:Chisel:2.10.8-GTNH:dev') {transitive = false}
compileOnly('com.github.GTNewHorizons:OpenComputers:1.7.5.25-GTNH:api') {transitive = false} compileOnly('com.github.GTNewHorizons:OpenComputers:1.8.0.13-GTNH:api') {transitive = false}
compileOnly('curse.maven:minefactory-reloaded-66672:2366150') // https://www.curseforge.com/minecraft/mc-mods/minefactory-reloaded/files/2366150 compileOnly('curse.maven:minefactory-reloaded-66672:2366150') // https://www.curseforge.com/minecraft/mc-mods/minefactory-reloaded/files/2366150
compileOnly('thaumcraft:Thaumcraft:1.7.10-4.2.3.5:dev') compileOnly('thaumcraft:Thaumcraft:1.7.10-4.2.3.5:dev')
compileOnly('curse.maven:ee3-65509:2305023') // https://www.curseforge.com/minecraft/mc-mods/ee3/files/2305023 compileOnly('curse.maven:ee3-65509:2305023') // https://www.curseforge.com/minecraft/mc-mods/ee3/files/2305023
Binary file not shown.
+1 -1
View File
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-7.6-bin.zip distributionUrl=https\://services.gradle.org/distributions/gradle-8.0.1-bin.zip
networkTimeout=10000 networkTimeout=10000
zipStoreBase=GRADLE_USER_HOME zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists zipStorePath=wrapper/dists
Vendored
+2 -2
View File
@@ -144,7 +144,7 @@ if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
case $MAX_FD in #( case $MAX_FD in #(
max*) max*)
# In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked.
# shellcheck disable=SC3045 # shellcheck disable=SC3045
MAX_FD=$( ulimit -H -n ) || MAX_FD=$( ulimit -H -n ) ||
warn "Could not query maximum file descriptor limit" warn "Could not query maximum file descriptor limit"
esac esac
@@ -152,7 +152,7 @@ if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
'' | soft) :;; #( '' | soft) :;; #(
*) *)
# In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked.
# shellcheck disable=SC3045 # shellcheck disable=SC3045
ulimit -n "$MAX_FD" || ulimit -n "$MAX_FD" ||
warn "Could not set maximum file descriptor limit to $MAX_FD" warn "Could not set maximum file descriptor limit to $MAX_FD"
esac esac
-22
View File
@@ -1,26 +1,4 @@
// Add any additional repositories for your dependencies here // Add any additional repositories for your dependencies here
repositories { repositories {
maven {
name 'GTNH Maven'
url 'http://jenkins.usrv.eu:8081/nexus/content/groups/public/'
allowInsecureProtocol
}
maven {
name 'ic2'
url 'http://maven.ic2.player.to/'
metadataSources {
mavenPom()
artifact()
}
}
maven {
url 'https://cursemaven.com'
content {
includeGroup 'curse.maven'
}
}
maven {
url = 'https://jitpack.io'
}
} }
@@ -25,7 +25,6 @@ import crazypants.enderio.conduit.gui.GuiExternalConnection;
import crazypants.enderio.conduit.item.IItemConduit; import crazypants.enderio.conduit.item.IItemConduit;
import crazypants.enderio.conduit.item.filter.IItemFilter; import crazypants.enderio.conduit.item.filter.IItemFilter;
import crazypants.enderio.conduit.packet.PacketExtractMode; import crazypants.enderio.conduit.packet.PacketExtractMode;
import crazypants.enderio.conduit.packet.PacketItemConduitFilter;
import crazypants.enderio.gui.IconEIO; import crazypants.enderio.gui.IconEIO;
import crazypants.enderio.gui.RedstoneModeButton; import crazypants.enderio.gui.RedstoneModeButton;
import crazypants.enderio.machine.IRedstoneModeControlable; import crazypants.enderio.machine.IRedstoneModeControlable;
@@ -216,7 +215,6 @@ public class ItemSettings extends BaseSettingsPanel {
} }
if (insertFilterGui != null) insertFilterGui.actionPerformed(guiButton); if (insertFilterGui != null) insertFilterGui.actionPerformed(guiButton);
if (extractFilterGui != null) extractFilterGui.actionPerformed(guiButton); if (extractFilterGui != null) extractFilterGui.actionPerformed(guiButton);
PacketHandler.INSTANCE.sendToServer(new PacketItemConduitFilter(itemConduit, gui.getDir()));
} }
@Override @Override