mixin
This commit is contained in:
parent
27f7ed0122
commit
0d5ce9261e
|
|
@ -163,7 +163,7 @@ dependencies {
|
|||
compileOnly "curse.maven:mega-cells-622112:6005043"
|
||||
compileOnly "curse.maven:jade-324717:5427817"
|
||||
compileOnly "me.shedaniel:RoughlyEnoughItems-neoforge:16.0.729"
|
||||
compileOnly "mekanism:Mekanism:1.21.1-10.7.0.55"
|
||||
// compileOnly "mekanism:Mekanism:1.21.1-10.7.0.55"
|
||||
compileOnly "curse.maven:applied-mekanistics-574300:5978711"
|
||||
compileOnly "dev.latvian.mods:kubejs-neoforge:2101.7.1-build.188"
|
||||
compileOnly "dev.latvian.mods:rhino:2101.2.5-build.54"
|
||||
|
|
@ -178,7 +178,7 @@ dependencies {
|
|||
runtimeOnly "de.mari_023:ae2wtlib:19.2.1"
|
||||
runtimeOnly "curse.maven:jade-324717:5427817"
|
||||
runtimeOnly "curse.maven:mega-cells-622112:6005043"
|
||||
runtimeOnly "mekanism:Mekanism:1.21.1-10.7.0.55"
|
||||
// runtimeOnly "mekanism:Mekanism:1.21.1-10.7.0.55"
|
||||
runtimeOnly "curse.maven:ex-pattern-provider-892005:6863556"
|
||||
|
||||
// setup Xei (EMI/REI/JEI) using project property 'use_Xei'
|
||||
|
|
|
|||
|
|
@ -14,12 +14,9 @@ public interface MEStorageMenuAccessor {
|
|||
@Nullable
|
||||
MEStorage getStorage();
|
||||
|
||||
@Accessor("powerSource")
|
||||
@Accessor("energySource")
|
||||
@Nullable
|
||||
IEnergySource getPowerSource();
|
||||
|
||||
@Accessor("hasPower")
|
||||
boolean getHasPower();
|
||||
IEnergySource getEnergySource();
|
||||
|
||||
// Access client-side config manager mirror used for syncing settings
|
||||
@Accessor("clientCM")
|
||||
|
|
|
|||
|
|
@ -35,7 +35,6 @@ public abstract class PatternEncodingTermMenuMixin {
|
|||
private void eap$tryFill(IPatternTerminalMenuHost host, Inventory ip) {
|
||||
try {
|
||||
var self = (PatternEncodingTermMenu) (Object) this;
|
||||
var player = ip.player;
|
||||
// 仅在服务器端执行
|
||||
if (ip.player.level().isClientSide()) {
|
||||
return;
|
||||
|
|
@ -43,9 +42,8 @@ public abstract class PatternEncodingTermMenuMixin {
|
|||
// 必须可与网络交互
|
||||
var acc = (MEStorageMenuAccessor) (Object) ((MEStorageMenu) self);
|
||||
MEStorage storage = acc.getStorage();
|
||||
IEnergySource power = acc.getPowerSource();
|
||||
boolean hasPower = acc.getHasPower();
|
||||
boolean canInteract = storage != null && power != null && hasPower; // 等价于 canInteractWithGrid()
|
||||
IEnergySource power = acc.getEnergySource();
|
||||
boolean canInteract = storage != null && power != null && ((MEStorageMenu) self).getLinkStatus().connected();
|
||||
if (!canInteract) {
|
||||
return;
|
||||
}
|
||||
|
|
@ -108,15 +106,14 @@ public abstract class PatternEncodingTermMenuMixin {
|
|||
}
|
||||
// 仅在服务器端执行
|
||||
var self = (PatternEncodingTermMenu) (Object) this;
|
||||
var player = self.getPlayerInventory().player;
|
||||
var acc = (MEStorageMenuAccessor) (Object) ((MEStorageMenu) self);
|
||||
MEStorage storage = acc.getStorage();
|
||||
IEnergySource power = acc.getPowerSource();
|
||||
boolean hasPower = acc.getHasPower();
|
||||
IEnergySource power = acc.getEnergySource();
|
||||
var player = self.getPlayerInventory().player;
|
||||
if (player.level().isClientSide()) {
|
||||
return;
|
||||
}
|
||||
boolean canInteract = storage != null && power != null && hasPower;
|
||||
boolean canInteract = storage != null && power != null && ((MEStorageMenu) self).getLinkStatus().connected();
|
||||
if (!canInteract) {
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -12,17 +12,21 @@
|
|||
"ae2.helpers.PatternProviderLogicAdvancedMixin",
|
||||
"ae2.helpers.PatternProviderLogicDoublingMixin",
|
||||
"ae2.AEProcessingPatternMixin",
|
||||
|
||||
"ae2.autopattern.CraftingTreeNodeAccessor",
|
||||
"ae2.autopattern.CraftingTreeProcessMixin",
|
||||
"extendedae.common.PartExPatternProviderMixin",
|
||||
"extendedae.common.TileExPatternProviderMixin",
|
||||
"extendedae.container.ContainerExPatternProviderMixin",
|
||||
"extendedae.container.ContainerExPatternTerminalMixin",
|
||||
"extendedae.container.ContainerWirelessExPatternTerminalMixin"
|
||||
"extendedae.container.ContainerWirelessExPatternTerminalMixin",
|
||||
"ae2.menu.PatternEncodingTermMenuMixin",
|
||||
"ae2.accessor.MEStorageMenuAccessor"
|
||||
],
|
||||
"client": [
|
||||
|
||||
"ae2.client.gui.PatternEncodingTermScreenMixin",
|
||||
"ae2.accessor.AEBaseScreenAccessor",
|
||||
"accessor.AbstractContainerScreenAccessor",
|
||||
"accessor.ScreenAccessor",
|
||||
"extendedae.accessor.GuiExPatternTerminalAccessor"
|
||||
],
|
||||
"injectors": {
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user