mirror of
https://github.com/GTNewHorizons/Baubles-Expanded.git
synced 2026-10-26 14:23:55 +00:00
70 lines
2.1 KiB
Java
70 lines
2.1 KiB
Java
package baubles.client.gui;
|
|
|
|
import java.lang.reflect.Method;
|
|
|
|
import baubles.common.network.PacketHandler;
|
|
import baubles.common.network.PacketOpenBaublesInventory;
|
|
import baubles.common.network.PacketOpenNormalInventory;
|
|
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
|
|
import cpw.mods.fml.relauncher.Side;
|
|
import cpw.mods.fml.relauncher.SideOnly;
|
|
import net.minecraft.client.gui.inventory.GuiInventory;
|
|
import net.minecraft.client.resources.I18n;
|
|
import net.minecraftforge.client.event.GuiScreenEvent;
|
|
|
|
public class GuiEvents {
|
|
|
|
@SideOnly(value = Side.CLIENT)
|
|
@SubscribeEvent
|
|
public void guiPostInit(GuiScreenEvent.InitGuiEvent.Post event) {
|
|
|
|
if (event.gui instanceof GuiInventory || event.gui instanceof GuiPlayerExpanded) {
|
|
|
|
int xSize = 176;
|
|
int ySize = 166;
|
|
|
|
int guiLeft = (event.gui.width - xSize) / 2;
|
|
int guiTop = (event.gui.height - ySize) / 2;
|
|
|
|
if (!event.gui.mc.thePlayer.getActivePotionEffects().isEmpty() && isNeiHidden()) {
|
|
guiLeft = 160 + (event.gui.width - xSize - 200) / 2;
|
|
}
|
|
|
|
event.buttonList.add(new GuiBaublesButton(55, guiLeft + 66, guiTop + 9, 10, 10,
|
|
I18n.format((event.gui instanceof GuiInventory)?"button.baubles":"button.normal", new Object[0])));
|
|
}
|
|
|
|
}
|
|
|
|
@SideOnly(value = Side.CLIENT)
|
|
@SubscribeEvent
|
|
public void guiPostAction(GuiScreenEvent.ActionPerformedEvent.Post event) {
|
|
|
|
if (event.gui instanceof GuiInventory) {
|
|
if (event.button.id == 55) {
|
|
PacketHandler.INSTANCE.sendToServer(new PacketOpenBaublesInventory(event.gui.mc.thePlayer));
|
|
}
|
|
}
|
|
|
|
if (event.gui instanceof GuiPlayerExpanded) {
|
|
if (event.button.id == 55) {
|
|
event.gui.mc.displayGuiScreen(new GuiInventory(event.gui.mc.thePlayer));
|
|
PacketHandler.INSTANCE.sendToServer(new PacketOpenNormalInventory(event.gui.mc.thePlayer));
|
|
}
|
|
}
|
|
}
|
|
|
|
static Method isNEIHidden;
|
|
boolean isNeiHidden() {
|
|
boolean hidden=true;
|
|
try {
|
|
if (isNEIHidden==null) {
|
|
Class fake = Class.forName("codechicken.nei.NEIClientConfig");
|
|
isNEIHidden = fake.getMethod("isHidden");
|
|
}
|
|
hidden = (Boolean) isNEIHidden.invoke(null);
|
|
} catch(Exception ex) { }
|
|
return hidden;
|
|
}
|
|
}
|