外部库存接口封锁,锁状态取消状态同步
This commit is contained in:
parent
37509c806e
commit
6d061da825
|
|
@ -1,10 +1,9 @@
|
|||
package com.extendedae_plus.content.ae2;
|
||||
|
||||
import appeng.api.config.LockCraftingMode;
|
||||
import appeng.api.config.Settings;
|
||||
import appeng.api.ids.AEComponents;
|
||||
import appeng.api.inventories.InternalInventory;
|
||||
import appeng.api.networking.IManagedGridNode;
|
||||
import appeng.api.stacks.GenericStack;
|
||||
import appeng.block.crafting.PatternProviderBlock;
|
||||
import appeng.blockentity.crafting.PatternProviderBlockEntity;
|
||||
import appeng.helpers.patternprovider.PatternProviderLogic;
|
||||
|
|
@ -38,6 +37,7 @@ public class MirrorPatternProviderBlockEntity extends PatternProviderBlockEntity
|
|||
private static final String TAG_MASTER_DIMENSION = "dimension";
|
||||
private static final String TAG_MASTER_POS = "pos";
|
||||
private static final int SYNC_INTERVAL = 2;
|
||||
private static final InternalInventory DISABLED_PATTERN_INVENTORY = new AppEngInternalInventory(0);
|
||||
|
||||
@Nullable
|
||||
private ResourceKey<Level> masterDimension;
|
||||
|
|
@ -49,6 +49,16 @@ public class MirrorPatternProviderBlockEntity extends PatternProviderBlockEntity
|
|||
super(ModBlockEntities.MIRROR_PATTERN_PROVIDER_BE.get(), pos, blockState);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isVisibleInTerminal() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public InternalInventory getTerminalPatternInventory() {
|
||||
return DISABLED_PATTERN_INVENTORY;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected PatternProviderLogic createLogic() {
|
||||
return new MirrorLogic(this.getMainNode(), this);
|
||||
|
|
@ -393,7 +403,7 @@ public class MirrorPatternProviderBlockEntity extends PatternProviderBlockEntity
|
|||
}
|
||||
|
||||
private AppEngInternalInventory getPatternInventory() {
|
||||
return asPatternInventory(this.getLogic().getPatternInv());
|
||||
return ((MirrorLogic) this.getLogic()).getActualPatternInventory();
|
||||
}
|
||||
|
||||
private static AppEngInternalInventory asPatternInventory(Object inventory) {
|
||||
|
|
@ -423,26 +433,12 @@ public class MirrorPatternProviderBlockEntity extends PatternProviderBlockEntity
|
|||
}
|
||||
|
||||
@Override
|
||||
public LockCraftingMode getCraftingLockedReason() {
|
||||
var master = this.mirrorHost.getMaster();
|
||||
if (master != null) {
|
||||
var masterReason = master.getLogic().getCraftingLockedReason();
|
||||
if (masterReason != LockCraftingMode.NONE) {
|
||||
return masterReason;
|
||||
}
|
||||
}
|
||||
|
||||
return super.getCraftingLockedReason();
|
||||
public InternalInventory getPatternInv() {
|
||||
return DISABLED_PATTERN_INVENTORY;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @Nullable GenericStack getUnlockStack() {
|
||||
var master = this.mirrorHost.getMaster();
|
||||
if (master != null && master.getLogic().getCraftingLockedReason() == LockCraftingMode.LOCK_UNTIL_RESULT) {
|
||||
return master.getLogic().getUnlockStack();
|
||||
}
|
||||
|
||||
return super.getUnlockStack();
|
||||
private AppEngInternalInventory getActualPatternInventory() {
|
||||
return (AppEngInternalInventory) super.getPatternInv();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user