Hi, seforums!
Started to make a mod, but do not know how to change the main menu.
Created 3 class.
One mistake.
How to fix?
Added in the main class:
@EventHandler
public void preInit(FMLPreInitializationEvent event) {
MinecraftForge.EVENT_BUS.register(new RPGMainMenuEvent());
Added in the RPGMainMenuEvent class : (There is just a mistake!)
package ru.Morttal.RPGcore.gui;
import net.minecraft.client.gui.GuiMainMenu;
import net.minecraftforge.client.event.GuiOpenEvent;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
public class RPGMainMenuEvent {
@SubscribeEvent
public void onGuiOpenEvent(GuiOpenEvent event)
{
if ((event.gui instanceof GuiMainMenu))
{
event.gui = new RPGMainMenu();
}
}
}
Added in the RPGMainMenu class:
package ru.Morttal.RPGcore.gui;
import net.minecraftforge.fml.relauncher.SideOnly;
import org.lwjgl.opengl.GL11;
import net.minecraft.client.gui.GuiButton;
import net.minecraft.client.gui.GuiLabel;
import net.minecraft.client.gui.GuiMainMenu;
import net.minecraft.client.resources.I18n;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.fml.relauncher.Side;
@SideOnly(Side.CLIENT)
public class RPGMainMenu extends GuiMainMenu {
private static final ResourceLocation texture = new ResourceLocation("textures/gui/achievement/achievement_icons.png");
public RPGMainMenu() {
super();
}
@Override
public void initGui() {
int i = this.height / 4 + 48;
this.buttonList.clear();
this.buttonList.add(new GuiButton(0, this.width / 2 - 100, i + 72 + 12, 98, 20, I18n.format("menu.options", new Object[0])));
this.buttonList.add(new GuiButton(4, this.width / 2 + 2, i + 72 + 12, 98, 20, I18n.format("menu.quit", new Object[0])));
}
@Override
public void drawScreen(int mouseX, int mouseY, float partialTicks) {
GL11.glColor4f(1, 1, 1, 1);
drawDefaultBackground();
mc.renderEngine.bindTexture(texture);
drawTexturedModalRect(0, 0, 0, 0, mc.displayWidth, mc.displayHeight);
//---
for (int i = 0; i < this.buttonList.size(); ++i)
((GuiButton)this.buttonList.get(i)).drawButton(this.mc, mouseX, mouseY, partialTicks);
for (int j = 0; j < this.labelList.size(); ++j)
((GuiLabel)this.labelList.get(j)).drawLabel(this.mc, mouseX, mouseY);
}
}
How to fix error is in 2 class? not working event.gui