Merge remote-tracking branch 'origin/master' into fabric/master

# Conflicts:
#	src/main/java/appeng/client/me/SlotDisconnected.java
#	src/main/java/appeng/container/implementations/QuartzKnifeContainer.java
#	src/main/java/appeng/container/slot/AppEngCraftingSlot.java
#	src/main/java/appeng/container/slot/AppEngSlot.java
#	src/main/java/appeng/container/slot/CraftingMatrixSlot.java
#	src/main/java/appeng/container/slot/CraftingTermSlot.java
#	src/main/java/appeng/container/slot/DisabledSlot.java
#	src/main/java/appeng/container/slot/FakeBlacklistSlot.java
#	src/main/java/appeng/container/slot/FakeCraftingMatrixSlot.java
#	src/main/java/appeng/container/slot/FakeSlot.java
#	src/main/java/appeng/container/slot/FakeTypeOnlySlot.java
#	src/main/java/appeng/container/slot/InaccessibleSlot.java
#	src/main/java/appeng/container/slot/MolecularAssemblerPatternSlot.java
#	src/main/java/appeng/container/slot/NormalSlot.java
#	src/main/java/appeng/container/slot/OptionalFakeSlot.java
#	src/main/java/appeng/container/slot/OptionalNormalSlot.java
#	src/main/java/appeng/container/slot/OptionalRestrictedInputSlot.java
#	src/main/java/appeng/container/slot/OptionalTypeOnlyFakeSlot.java
#	src/main/java/appeng/container/slot/OutputSlot.java
#	src/main/java/appeng/container/slot/PatternOutputsSlot.java
#	src/main/java/appeng/container/slot/PlayerHotBarSlot.java
#	src/main/java/appeng/container/slot/PlayerInvSlot.java
#	src/main/java/appeng/container/slot/RestrictedInputSlot.java
This commit is contained in:
Sebastian Hartte
2020-08-02 22:28:37 +02:00
23 changed files with 101 additions and 99 deletions
@@ -71,9 +71,9 @@ public class RestrictedInputSlot extends AppEngSlot {
private boolean allowEdit = true;
private int stackLimit = -1;
public RestrictedInputSlot(final PlacableItemType valid, final FixedItemInv i, final int slotIndex, final int x,
public RestrictedInputSlot(final PlacableItemType valid, final FixedItemInv inv, final int invSlot, final int x,
final int y, final PlayerInventory p) {
super(i, slotIndex, x, y);
super(inv, invSlot, x, y);
this.which = valid;
this.setIIcon(valid.IIcon);
this.p = p;
@@ -100,20 +100,20 @@ public class RestrictedInputSlot extends AppEngSlot {
}
@Override
public boolean canInsert(final ItemStack i) {
if (!this.getContainer().isValidForSlot(this, i)) {
public boolean canInsert(final ItemStack stack) {
if (!this.getContainer().isValidForSlot(this, stack)) {
return false;
}
if (i.isEmpty()) {
if (stack.isEmpty()) {
return false;
}
if (i.getItem() == Items.AIR) {
if (stack.getItem() == Items.AIR) {
return false;
}
if (!super.canInsert(i)) {
if (!super.canInsert(stack)) {
return false;
}
@@ -128,7 +128,7 @@ public class RestrictedInputSlot extends AppEngSlot {
switch (this.which) {
case ENCODED_CRAFTING_PATTERN:
final ICraftingPatternDetails de = crafting.decodePattern(i, this.p.player.world);
final ICraftingPatternDetails de = crafting.decodePattern(stack, this.p.player.world);
if (de != null) {
return de.isCraftable();
}
@@ -136,19 +136,19 @@ public class RestrictedInputSlot extends AppEngSlot {
case VALID_ENCODED_PATTERN_W_OUTPUT:
case ENCODED_PATTERN_W_OUTPUT:
case ENCODED_PATTERN:
return crafting.isEncodedPattern(i);
return crafting.isEncodedPattern(stack);
case BLANK_PATTERN:
return materials.blankPattern().isSameAs(i);
return materials.blankPattern().isSameAs(stack);
case PATTERN:
return materials.blankPattern().isSameAs(i) || crafting.isEncodedPattern(i);
return materials.blankPattern().isSameAs(stack) || crafting.isEncodedPattern(stack);
case INSCRIBER_PLATE:
if (materials.namePress().isSameAs(i)) {
if (materials.namePress().isSameAs(stack)) {
return true;
}
return InscriberRecipes.isValidOptionalIngredient(p.player.world, i);
return InscriberRecipes.isValidOptionalIngredient(p.player.world, stack);
case INSCRIBER_INPUT:
return true;/*
@@ -158,46 +158,48 @@ public class RestrictedInputSlot extends AppEngSlot {
case METAL_INGOTS:
return isMetalIngot(i);
return isMetalIngot(stack);
case VIEW_CELL:
return items.viewCell().isSameAs(i);
return items.viewCell().isSameAs(stack);
case ORE:
return GrinderRecipes.isValidIngredient(p.player.world, i);
return GrinderRecipes.isValidIngredient(p.player.world, stack);
case FUEL:
return FuelRegistry.INSTANCE.get(i.getItem()) > 0;
return FuelRegistry.INSTANCE.get(stack.getItem()) > 0;
case POWERED_TOOL:
return Platform.isChargeable(i);
return Platform.isChargeable(stack);
case QE_SINGULARITY:
return materials.qESingularity().isSameAs(i);
return materials.qESingularity().isSameAs(stack);
case RANGE_BOOSTER:
return materials.wirelessBooster().isSameAs(i);
return materials.wirelessBooster().isSameAs(stack);
case SPATIAL_STORAGE_CELLS:
return i.getItem() instanceof ISpatialStorageCell
&& ((ISpatialStorageCell) i.getItem()).isSpatialStorage(i);
return stack.getItem() instanceof ISpatialStorageCell
&& ((ISpatialStorageCell) stack.getItem()).isSpatialStorage(stack);
case STORAGE_CELLS:
return Api.instance().registries().cell().isCellHandled(i);
return Api.instance().registries().cell().isCellHandled(stack);
case WORKBENCH_CELL:
return i.getItem() instanceof ICellWorkbenchItem && ((ICellWorkbenchItem) i.getItem()).isEditable(i);
return stack.getItem() instanceof ICellWorkbenchItem
&& ((ICellWorkbenchItem) stack.getItem()).isEditable(stack);
case STORAGE_COMPONENT:
return i.getItem() instanceof IStorageComponent
&& ((IStorageComponent) i.getItem()).isStorageComponent(i);
return stack.getItem() instanceof IStorageComponent
&& ((IStorageComponent) stack.getItem()).isStorageComponent(stack);
case TRASH:
if (Api.instance().registries().cell().isCellHandled(i)) {
if (Api.instance().registries().cell().isCellHandled(stack)) {
return false;
}
return !(i.getItem() instanceof IStorageComponent
&& ((IStorageComponent) i.getItem()).isStorageComponent(i));
return !(stack.getItem() instanceof IStorageComponent
&& ((IStorageComponent) stack.getItem()).isStorageComponent(stack));
case ENCODABLE_ITEM:
return i.getItem() instanceof INetworkEncodable
|| Api.instance().registries().wireless().isWirelessTerminal(i);
return stack.getItem() instanceof INetworkEncodable
|| Api.instance().registries().wireless().isWirelessTerminal(stack);
case BIOMETRIC_CARD:
return i.getItem() instanceof IBiometricCard;
return stack.getItem() instanceof IBiometricCard;
case UPGRADES:
return i.getItem() instanceof IUpgradeModule && ((IUpgradeModule) i.getItem()).getType(i) != null;
return stack.getItem() instanceof IUpgradeModule
&& ((IUpgradeModule) stack.getItem()).getType(stack) != null;
default:
break;
}
@@ -206,7 +208,7 @@ public class RestrictedInputSlot extends AppEngSlot {
}
@Override
public boolean canTakeItems(final PlayerEntity par1PlayerEntity) {
public boolean canTakeItems(final PlayerEntity player) {
return this.isAllowEdit();
}