Fixed NPE in GuiReplayEditor when no Replays are available (returns to main menu)

Renamed .gui.replaystudio package to resemble the new GUI name (.gui.replayeditor)
This commit is contained in:
CrushedPixel
2015-05-31 11:46:14 +02:00
parent f29e1dd558
commit e1012cfefc
6 changed files with 14 additions and 8 deletions

View File

@@ -62,6 +62,7 @@ public class ReplayMod {
public static final String VERSION = "0.0.1";
public static final ApiClient apiClient = new ApiClient();
private static final Minecraft mc = Minecraft.getMinecraft();
public static GuiEventHandler guiEventHandler;
public static GuiReplayOverlay overlay = new GuiReplayOverlay();
public static ReplaySettings replaySettings;
public static Configuration config;
@@ -104,7 +105,7 @@ public class ReplayMod {
@EventHandler
public void init(FMLInitializationEvent event) {
FMLCommonHandler.instance().bus().register(new ConnectionEventHandler());
MinecraftForge.EVENT_BUS.register(new GuiEventHandler());
MinecraftForge.EVENT_BUS.register(guiEventHandler = new GuiEventHandler());
FMLCommonHandler.instance().bus().register(keyInputHandler);
MinecraftForge.EVENT_BUS.register(new MouseInputHandler());

View File

@@ -1,13 +1,12 @@
package eu.crushedpixel.replaymod.events;
import de.johni0702.replaystudio.replay.Replay;
import eu.crushedpixel.replaymod.ReplayMod;
import eu.crushedpixel.replaymod.gui.GuiConstants;
import eu.crushedpixel.replaymod.gui.GuiReplaySaving;
import eu.crushedpixel.replaymod.gui.GuiReplaySettings;
import eu.crushedpixel.replaymod.gui.online.GuiLoginPrompt;
import eu.crushedpixel.replaymod.gui.online.GuiReplayCenter;
import eu.crushedpixel.replaymod.gui.replaystudio.GuiReplayEditor;
import eu.crushedpixel.replaymod.gui.replayeditor.GuiReplayEditor;
import eu.crushedpixel.replaymod.gui.replayviewer.GuiReplayViewer;
import eu.crushedpixel.replaymod.online.authentication.AuthenticationHandler;
import eu.crushedpixel.replaymod.registry.LightingHandler;
@@ -47,7 +46,7 @@ public class GuiEventHandler {
add(GuiVideoSettings.class);
}
};
private int replayCount = 0;
public int replayCount = 0;
private GuiButton editorButton;
@SubscribeEvent

View File

@@ -1,4 +1,4 @@
package eu.crushedpixel.replaymod.gui.replaystudio;
package eu.crushedpixel.replaymod.gui.replayeditor;
import eu.crushedpixel.replaymod.gui.GuiConstants;
import eu.crushedpixel.replaymod.gui.elements.GuiArrowButton;

View File

@@ -1,5 +1,6 @@
package eu.crushedpixel.replaymod.gui.replaystudio;
package eu.crushedpixel.replaymod.gui.replayeditor;
import eu.crushedpixel.replaymod.ReplayMod;
import eu.crushedpixel.replaymod.gui.GuiConstants;
import eu.crushedpixel.replaymod.gui.elements.GuiDropdown;
import eu.crushedpixel.replaymod.utils.ReplayFileIO;
@@ -41,6 +42,11 @@ public class GuiReplayEditor extends GuiScreen {
private void refreshReplayDropdown() {
replayDropdown.clearElements();
replayFiles = ReplayFileIO.getAllReplayFiles();
if(replayFiles.size() == 0) {
mc.displayGuiScreen(null);
ReplayMod.guiEventHandler.replayCount = 0;
return;
}
for(File file : replayFiles) {
String name = FilenameUtils.getBaseName(file.getAbsolutePath());
replayDropdown.addElement(name);

View File

@@ -1,4 +1,4 @@
package eu.crushedpixel.replaymod.gui.replaystudio;
package eu.crushedpixel.replaymod.gui.replayeditor;
import net.minecraft.client.gui.GuiScreen;

View File

@@ -1,4 +1,4 @@
package eu.crushedpixel.replaymod.gui.replaystudio;
package eu.crushedpixel.replaymod.gui.replayeditor;
import eu.crushedpixel.replaymod.gui.elements.GuiNumberInput;
import eu.crushedpixel.replaymod.studio.StudioImplementation;