Fixed NEI Ghost Overlays.

This commit is contained in:
AlgorithmX2
2014-07-09 22:18:50 -05:00
parent ca6cdf50c1
commit d2e332eedb
5 changed files with 56 additions and 11 deletions
+5 -3
View File
@@ -20,6 +20,8 @@ import appeng.integration.modules.NEIHelpers.NEICraftingHandler;
import appeng.integration.modules.NEIHelpers.NEIGrinderRecipeHandler;
import appeng.integration.modules.NEIHelpers.NEIInscriberRecipeHandler;
import appeng.integration.modules.NEIHelpers.NEIWorldCraftingHandler;
import appeng.integration.modules.NEIHelpers.TerminalCraftingSlotFinder;
import codechicken.nei.api.IStackPositioner;
import codechicken.nei.guihook.GuiContainerManager;
public class NEI extends BaseModule implements IIntegrationModule, INEI
@@ -59,13 +61,13 @@ public class NEI extends BaseModule implements IIntegrationModule, INEI
registerRecipeHandler( new NEIGrinderRecipeHandler() );
// crafting terminal...
Method registerGuiOverlay = API.getDeclaredMethod( "registerGuiOverlay", new Class[] { Class.class, String.class, int.class, int.class } );
Method registerGuiOverlay = API.getDeclaredMethod( "registerGuiOverlay", new Class[] { Class.class, String.class, IStackPositioner.class } );
Class IOverlayHandler = Class.forName( "codechicken.nei.api.IOverlayHandler" );
Class DefaultOverlayHandler = NEICraftingHandler.class;
Method registerGuiOverlayHandler = API.getDeclaredMethod( "registerGuiOverlayHandler", new Class[] { Class.class, IOverlayHandler, String.class } );
registerGuiOverlay.invoke( API, GuiCraftingTerm.class, "crafting", 6, 75 );
registerGuiOverlay.invoke( API, GuiPatternTerm.class, "crafting", 6, 75 );
registerGuiOverlay.invoke( API, GuiCraftingTerm.class, "crafting", new TerminalCraftingSlotFinder() );
registerGuiOverlay.invoke( API, GuiPatternTerm.class, "crafting", new TerminalCraftingSlotFinder() );
Constructor DefaultOverlayHandlerConstructor = DefaultOverlayHandler.getConstructor( new Class[] { int.class, int.class } );
registerGuiOverlayHandler.invoke( API, GuiCraftingTerm.class, DefaultOverlayHandlerConstructor.newInstance( 6, 75 ), "crafting" );
@@ -26,7 +26,7 @@ public class NEICraftingHandler implements IOverlayHandler
int offsetx;
int offsety;
// @override
@Override
public void overlayRecipe(GuiContainer gui, IRecipeHandler recipe, int recipeIndex, boolean shift)
{
try
@@ -42,7 +42,6 @@ public class NEICraftingHandler implements IOverlayHandler
}
}
// @override
public void overlayRecipe(GuiContainer gui, List<PositionedStack> ingredients, boolean shift)
{
try
@@ -0,0 +1,24 @@
package appeng.integration.modules.NEIHelpers;
import java.util.ArrayList;
import appeng.client.gui.implementations.GuiMEMonitorable;
import codechicken.nei.PositionedStack;
import codechicken.nei.api.IStackPositioner;
public class TerminalCraftingSlotFinder implements IStackPositioner
{
@Override
public ArrayList<PositionedStack> positionStacks(ArrayList<PositionedStack> a)
{
for (PositionedStack ps : a)
if ( ps != null )
{
ps.relx += GuiMEMonitorable.CraftingGridOffsetX;
ps.rely += GuiMEMonitorable.CraftingGridOffsetY;
}
return a;
}
}