diff --git a/build.gradle b/build.gradle index 449a446..67de361 100644 --- a/build.gradle +++ b/build.gradle @@ -11,7 +11,7 @@ apply plugin: 'net.minecraftforge.gradle.forge' //Only edit below this line, the above code adds and enables the necessary things for Forge to be setup. def mcversion = "1.12.2" -def modversion = "2.1.2" +def modversion = "2.1.3" def mccompatible = "1.12" def url = "https://minecraft.curseforge.com/projects/world-handler-command-gui" def update_url = "https://raw.githubusercontent.com/Exopandora/worldhandler/master/version.json" diff --git a/src/main/java/exopandora/worldhandler/gui/content/impl/ContentChangeWorld.java b/src/main/java/exopandora/worldhandler/gui/content/impl/ContentChangeWorld.java index 2dae353..5af55ff 100644 --- a/src/main/java/exopandora/worldhandler/gui/content/impl/ContentChangeWorld.java +++ b/src/main/java/exopandora/worldhandler/gui/content/impl/ContentChangeWorld.java @@ -40,19 +40,41 @@ public class ContentChangeWorld extends ContentChild case 3: ServerData server = Minecraft.getMinecraft().getCurrentServerData(); - Minecraft.getMinecraft().world.sendQuittingDisconnectingPacket(); - Minecraft.getMinecraft().loadWorld((WorldClient)null); - - Minecraft.getMinecraft().displayGuiScreen(new GuiMultiplayer(new GuiScreen() + if(server != null) { - @Override - public void initGui() + Minecraft.getMinecraft().world.sendQuittingDisconnectingPacket(); + Minecraft.getMinecraft().loadWorld((WorldClient)null); + + Minecraft.getMinecraft().displayGuiScreen(new GuiMultiplayer(new GuiScreen() { - FMLClientHandler.instance().connectToServer(new GuiMultiplayer(new GuiMainMenu()), server); - Minecraft.getMinecraft().displayGuiScreen((GuiScreen) null); - Minecraft.getMinecraft().setIngameFocus(); - } - })); + @Override + public void initGui() + { + FMLClientHandler.instance().connectToServer(new GuiMultiplayer(new GuiMainMenu()), server); + Minecraft.getMinecraft().displayGuiScreen((GuiScreen) null); + Minecraft.getMinecraft().setIngameFocus(); + } + })); + } + else + { + String worldName = Minecraft.getMinecraft().getIntegratedServer().getWorldName(); + String folderName = Minecraft.getMinecraft().getIntegratedServer().getFolderName(); + + Minecraft.getMinecraft().world.sendQuittingDisconnectingPacket(); + Minecraft.getMinecraft().loadWorld((WorldClient)null); + + Minecraft.getMinecraft().displayGuiScreen(new GuiMultiplayer(new GuiScreen() + { + @Override + public void initGui() + { + Minecraft.getMinecraft().launchIntegratedServer(folderName, worldName, null); + Minecraft.getMinecraft().displayGuiScreen((GuiScreen) null); + Minecraft.getMinecraft().setIngameFocus(); + } + })); + } break; default: break;