Skip to content

Commit 4928d10

Browse files
committed
修复对IO端口错误的过滤行为
1 parent f572fd3 commit 4928d10

File tree

3 files changed

+15
-5
lines changed

3 files changed

+15
-5
lines changed

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ show_testing_output = false
1515

1616
# Mod Information
1717
# HIGHLY RECOMMEND complying with SemVer for mod_version: https://semver.org/
18-
mod_version = 2.7.8-unofficial
18+
mod_version = 2.7.9-unofficial
1919
root_package = com.glodblock.github
2020
mod_id = ae2fc
2121
mod_name = AE2FluidCraft-Rework-Unofficial

src/main/java/com/glodblock/github/coremod/mixin/ae2/part_or_tile/MixinAEBaseTileAndPart.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
import appeng.tile.AEBaseTile;
66
import appeng.util.SettingsFrom;
77
import com.glodblock.github.interfaces.FCDualityInterface;
8-
import com.llamalad7.mixinextras.sugar.Local;
98
import net.minecraft.entity.player.EntityPlayer;
109
import net.minecraft.nbt.NBTTagCompound;
1110
import org.spongepowered.asm.mixin.Mixin;
@@ -29,7 +28,9 @@ public void onUploadSettings(final SettingsFrom from, final NBTTagCompound compo
2928
}
3029

3130
@Inject(method = "downloadSettings", at = @At(value = "RETURN"))
32-
public void onDownloadSettings(final SettingsFrom from, final CallbackInfoReturnable<NBTTagCompound> cir, @Local(name = "output") final NBTTagCompound output) {
31+
public void onDownloadSettings(final SettingsFrom from, final CallbackInfoReturnable<NBTTagCompound> cir) {
32+
var output = cir.getReturnValue();
33+
if (output == null) return;
3334
if (this instanceof IInterfaceHost) {
3435
final FCDualityInterface dual = (FCDualityInterface) ((IInterfaceHost) this).getInterfaceDuality();
3536
final NBTTagCompound extra = new NBTTagCompound();

src/main/java/com/glodblock/github/coremod/mixin/ae2/part_or_tile/MixinTileIOPort.java

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,12 @@
22

33
import appeng.api.storage.IMEInventory;
44
import appeng.api.storage.IMEMonitor;
5+
import appeng.api.storage.data.IAEItemStack;
56
import appeng.api.storage.data.IAEStack;
67
import appeng.tile.storage.TileIOPort;
8+
import com.glodblock.github.integration.mek.FCGasItems;
9+
import com.glodblock.github.loader.FCItems;
10+
import com.glodblock.github.util.ModAndClassUtil;
711
import com.llamalad7.mixinextras.sugar.Local;
812
import org.spongepowered.asm.mixin.Mixin;
913
import org.spongepowered.asm.mixin.injection.At;
@@ -15,8 +19,13 @@ public class MixinTileIOPort {
1519
@Redirect(method = "transferContents", at = @At(value = "INVOKE", target = "Lappeng/api/storage/data/IAEStack;getStackSize()J", ordinal = 0))
1620
private long removeDropSize(final IAEStack<?> instance, @Local(name = "src") final IMEInventory<?> src) {
1721
if (src instanceof IMEMonitor<?>) {
18-
return 0;
22+
if (instance instanceof IAEItemStack i) {
23+
var item = i.getItem();
24+
if (item == FCItems.FLUID_DROP || (ModAndClassUtil.GAS && item == FCGasItems.GAS_DROP)) {
25+
return 0;
26+
}
27+
}
1928
}
2029
return instance.getStackSize();
2130
}
22-
}
31+
}

0 commit comments

Comments
 (0)