Fixed Bug: #0431 - Weird Inventory behaviour in SkyChests with InvTweaks

This commit is contained in:
AlgorithmX2 2014-06-06 21:04:59 -05:00
parent 41f30edb5b
commit a50505fed6
4 changed files with 33 additions and 20 deletions

View file

@ -190,26 +190,29 @@ public abstract class AEBaseGui extends GuiContainer
if ( Keyboard.isKeyDown( Keyboard.KEY_SPACE ) )
{
IAEItemStack stack = null;
if ( slot instanceof SlotME )
stack = ((SlotME) slot).getAEStack();
try
if ( enableSpaceClicking() )
{
int slotNum = inventorySlots.inventorySlots.size();
IAEItemStack stack = null;
if ( slot instanceof SlotME )
stack = ((SlotME) slot).getAEStack();
if ( !(slot instanceof SlotME) && slot != null )
slotNum = slot.slotNumber;
try
{
int slotNum = inventorySlots.inventorySlots.size();
((AEBaseContainer) inventorySlots).setTargetStack( stack );
PacketInventoryAction p = new PacketInventoryAction( InventoryAction.MOVE_REGION, slotNum, null );
NetworkHandler.instance.sendToServer( p );
if ( !(slot instanceof SlotME) && slot != null )
slotNum = slot.slotNumber;
((AEBaseContainer) inventorySlots).setTargetStack( stack );
PacketInventoryAction p = new PacketInventoryAction( InventoryAction.MOVE_REGION, slotNum, null );
NetworkHandler.instance.sendToServer( p );
}
catch (IOException e)
{
AELog.error( e );
}
return;
}
catch (IOException e)
{
AELog.error( e );
}
return;
}
if ( slot instanceof SlotME )
@ -265,6 +268,11 @@ public abstract class AEBaseGui extends GuiContainer
super.handleMouseClick( slot, slotIdx, ctrlDown, key );
}
protected boolean enableSpaceClicking()
{
return true;
}
@Override
protected boolean checkHotbarKeys(int p_146983_1_)
{

View file

@ -3,6 +3,7 @@ package appeng.client.gui.implementations;
import net.minecraft.entity.player.InventoryPlayer;
import appeng.client.gui.AEBaseGui;
import appeng.container.implementations.ContainerSkyChest;
import appeng.core.AppEng;
import appeng.core.localization.GuiText;
import appeng.tile.storage.TileSkyChest;
@ -28,4 +29,10 @@ public class GuiSkyChest extends AEBaseGui
fontRendererObj.drawString( GuiText.inventory.getLocal(), 8, ySize - 96 + 2, 4210752 );
}
@Override
protected boolean enableSpaceClicking()
{
return !AppEng.instance.isIntegrationEnabled( "InvTweaks" );
}
}

View file

@ -4,20 +4,19 @@ import invtweaks.api.InvTweaksAPI;
import net.minecraft.item.ItemStack;
import appeng.integration.BaseModule;
import appeng.integration.abstraction.IInvTweaks;
import cpw.mods.fml.common.Mod.Instance;
import cpw.mods.fml.common.Loader;
public class InvTweaks extends BaseModule implements IInvTweaks
{
public static InvTweaks instance;
@Instance("inventorytweaks")
static InvTweaksAPI api;
@Override
public void Init()
{
api = (InvTweaksAPI) Loader.instance().getIndexedModList().get( "inventorytweaks" ).getMod();
}
@Override

View file

@ -41,7 +41,6 @@ public class ASMIntegration implements IClassTransformer
// integrationModules.add( IntegrationSide.BOTH, "Greg Tech", "gregtech_addon", "GT" );
// integrationModules.add( IntegrationSide.BOTH, "Universal Electricity", null, "UE" );
// integrationModules.add( IntegrationSide.BOTH, "Logistics Pipes", "LogisticsPipes|Main", "LP" );
integrationModules.add( IntegrationSide.CLIENT, "Inventory Tweaks", "", "InvTweaks" );
integrationModules.add( IntegrationSide.BOTH, "Mine Factory Reloaded", "MineFactoryReloaded", "MFR" );
integrationModules.add( IntegrationSide.BOTH, "Deep Storage Unit", null, "DSU" );
// integrationModules.add( IntegrationSide.BOTH, "Better Storage", "betterstorage" );