|
|
@ -1,15 +1,25 @@ |
|
|
|
--- ../src-base/minecraft/net/minecraft/server/MinecraftServer.java
|
|
|
|
--- ../src-base/minecraft/net/minecraft/server/MinecraftServer.java
|
|
|
|
+++ ../src-work/minecraft/net/minecraft/server/MinecraftServer.java
|
|
|
|
+++ ../src-work/minecraft/net/minecraft/server/MinecraftServer.java
|
|
|
|
@@ -33,6 +33,8 @@
|
|
|
|
@@ -16,6 +16,7 @@
|
|
|
|
|
|
|
|
import io.netty.buffer.ByteBufOutputStream;
|
|
|
|
|
|
|
|
import io.netty.buffer.Unpooled;
|
|
|
|
|
|
|
|
import io.netty.handler.codec.base64.Base64;
|
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
import java.awt.GraphicsEnvironment;
|
|
|
|
|
|
|
|
import java.awt.image.BufferedImage;
|
|
|
|
|
|
|
|
import java.io.File;
|
|
|
|
|
|
|
|
@@ -33,7 +34,10 @@
|
|
|
|
import java.util.Random;
|
|
|
|
import java.util.Random;
|
|
|
|
import java.util.UUID;
|
|
|
|
import java.util.UUID;
|
|
|
|
import java.util.concurrent.Callable;
|
|
|
|
import java.util.concurrent.Callable;
|
|
|
|
+import java.util.logging.Level;
|
|
|
|
+import java.util.logging.Level;
|
|
|
|
+
|
|
|
|
+
|
|
|
|
import javax.imageio.ImageIO;
|
|
|
|
import javax.imageio.ImageIO;
|
|
|
|
|
|
|
|
+
|
|
|
|
import net.minecraft.command.CommandBase;
|
|
|
|
import net.minecraft.command.CommandBase;
|
|
|
|
import net.minecraft.command.ICommandManager;
|
|
|
|
import net.minecraft.command.ICommandManager;
|
|
|
|
@@ -50,6 +52,7 @@
|
|
|
|
import net.minecraft.command.ICommandSender;
|
|
|
|
|
|
|
|
@@ -50,6 +54,7 @@
|
|
|
|
import net.minecraft.profiler.PlayerUsageSnooper;
|
|
|
|
import net.minecraft.profiler.PlayerUsageSnooper;
|
|
|
|
import net.minecraft.profiler.Profiler;
|
|
|
|
import net.minecraft.profiler.Profiler;
|
|
|
|
import net.minecraft.server.dedicated.DedicatedServer;
|
|
|
|
import net.minecraft.server.dedicated.DedicatedServer;
|
|
|
@ -17,26 +27,39 @@ |
|
|
|
import net.minecraft.server.gui.IUpdatePlayerListBox;
|
|
|
|
import net.minecraft.server.gui.IUpdatePlayerListBox;
|
|
|
|
import net.minecraft.server.management.PlayerProfileCache;
|
|
|
|
import net.minecraft.server.management.PlayerProfileCache;
|
|
|
|
import net.minecraft.server.management.ServerConfigurationManager;
|
|
|
|
import net.minecraft.server.management.ServerConfigurationManager;
|
|
|
|
@@ -80,18 +83,49 @@
|
|
|
|
@@ -72,6 +77,7 @@
|
|
|
|
|
|
|
|
import net.minecraft.world.storage.ISaveFormat;
|
|
|
|
|
|
|
|
import net.minecraft.world.storage.ISaveHandler;
|
|
|
|
|
|
|
|
import net.minecraft.world.storage.WorldInfo;
|
|
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
import org.apache.commons.lang3.Validate;
|
|
|
|
|
|
|
|
import org.apache.logging.log4j.LogManager;
|
|
|
|
|
|
|
|
import org.apache.logging.log4j.Logger;
|
|
|
|
|
|
|
|
@@ -80,18 +86,54 @@
|
|
|
|
import net.minecraftforge.common.MinecraftForge;
|
|
|
|
import net.minecraftforge.common.MinecraftForge;
|
|
|
|
import net.minecraftforge.event.world.WorldEvent;
|
|
|
|
import net.minecraftforge.event.world.WorldEvent;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+
|
|
|
|
+// CraftBukkit start
|
|
|
|
+// CraftBukkit start
|
|
|
|
+import java.io.IOException;
|
|
|
|
+import java.io.IOException;
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+import jline.console.ConsoleReader;
|
|
|
|
+import jline.console.ConsoleReader;
|
|
|
|
+import joptsimple.OptionSet;
|
|
|
|
+import joptsimple.OptionSet;
|
|
|
|
+import net.minecraft.world.chunk.storage.AnvilSaveHandler;
|
|
|
|
+import net.minecraft.world.chunk.storage.AnvilSaveHandler;
|
|
|
|
|
|
|
|
+
|
|
|
|
+import org.bukkit.World.Environment;
|
|
|
|
+import org.bukkit.World.Environment;
|
|
|
|
+import org.bukkit.craftbukkit.SpigotTimings; // Spigot
|
|
|
|
+import org.bukkit.craftbukkit.SpigotTimings; // Spigot
|
|
|
|
+import org.bukkit.craftbukkit.util.Waitable;
|
|
|
|
+import org.bukkit.craftbukkit.util.Waitable;
|
|
|
|
+import org.bukkit.event.server.RemoteServerCommandEvent;
|
|
|
|
+import org.bukkit.event.server.RemoteServerCommandEvent;
|
|
|
|
+import org.bukkit.event.world.WorldSaveEvent;
|
|
|
|
+import org.bukkit.event.world.WorldSaveEvent;
|
|
|
|
|
|
|
|
+
|
|
|
|
+// CraftBukkit end
|
|
|
|
+// CraftBukkit end
|
|
|
|
+// Cauldron start
|
|
|
|
+// Cauldron start
|
|
|
|
+import java.util.Map;
|
|
|
|
+import java.util.Map;
|
|
|
|
+import java.lang.reflect.Constructor;
|
|
|
|
+import java.lang.reflect.Constructor;
|
|
|
|
|
|
|
|
+
|
|
|
|
+import joptsimple.OptionParser;
|
|
|
|
+import joptsimple.OptionParser;
|
|
|
|
|
|
|
|
+import kcauldron.KCauldronConfig;
|
|
|
|
+import cpw.mods.fml.common.asm.transformers.SideTransformer;
|
|
|
|
+import cpw.mods.fml.common.asm.transformers.SideTransformer;
|
|
|
|
+import net.minecraft.command.ServerCommand;
|
|
|
|
+import net.minecraft.command.ServerCommand;
|
|
|
|
+import net.minecraft.tileentity.TileEntity;
|
|
|
|
+import net.minecraft.tileentity.TileEntity;
|
|
|
@ -70,7 +93,7 @@ |
|
|
|
private final ServerStatusResponse field_147147_p = new ServerStatusResponse();
|
|
|
|
private final ServerStatusResponse field_147147_p = new ServerStatusResponse();
|
|
|
|
private final Random field_147146_q = new Random();
|
|
|
|
private final Random field_147146_q = new Random();
|
|
|
|
@SideOnly(Side.SERVER)
|
|
|
|
@SideOnly(Side.SERVER)
|
|
|
|
@@ -135,8 +169,39 @@
|
|
|
|
@@ -135,8 +177,40 @@
|
|
|
|
private long field_147142_T = 0L;
|
|
|
|
private long field_147142_T = 0L;
|
|
|
|
private final GameProfileRepository field_152365_W;
|
|
|
|
private final GameProfileRepository field_152365_W;
|
|
|
|
private final PlayerProfileCache field_152366_X;
|
|
|
|
private final PlayerProfileCache field_152366_X;
|
|
|
@ -93,6 +116,7 @@ |
|
|
|
+ // Spigot end
|
|
|
|
+ // Spigot end
|
|
|
|
+ // Cauldron start
|
|
|
|
+ // Cauldron start
|
|
|
|
+ public static CauldronConfig cauldronConfig;
|
|
|
|
+ public static CauldronConfig cauldronConfig;
|
|
|
|
|
|
|
|
+ public static KCauldronConfig kcauldronConfig;
|
|
|
|
+ public static TileEntityConfig tileEntityConfig;
|
|
|
|
+ public static TileEntityConfig tileEntityConfig;
|
|
|
|
+ public static YamlConfiguration configuration;
|
|
|
|
+ public static YamlConfiguration configuration;
|
|
|
|
+ public static YamlConfiguration commandsConfiguration;
|
|
|
|
+ public static YamlConfiguration commandsConfiguration;
|
|
|
@ -110,13 +134,14 @@ |
|
|
|
public MinecraftServer(File p_i45281_1_, Proxy p_i45281_2_)
|
|
|
|
public MinecraftServer(File p_i45281_1_, Proxy p_i45281_2_)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
this.field_152366_X = new PlayerProfileCache(this, field_152367_a);
|
|
|
|
this.field_152366_X = new PlayerProfileCache(this, field_152367_a);
|
|
|
|
@@ -149,10 +214,68 @@
|
|
|
|
@@ -149,10 +223,70 @@
|
|
|
|
this.field_152364_T = new YggdrasilAuthenticationService(p_i45281_2_, UUID.randomUUID().toString());
|
|
|
|
this.field_152364_T = new YggdrasilAuthenticationService(p_i45281_2_, UUID.randomUUID().toString());
|
|
|
|
this.field_147143_S = this.field_152364_T.createMinecraftSessionService();
|
|
|
|
this.field_147143_S = this.field_152364_T.createMinecraftSessionService();
|
|
|
|
this.field_152365_W = this.field_152364_T.createProfileRepository();
|
|
|
|
this.field_152365_W = this.field_152364_T.createProfileRepository();
|
|
|
|
+ this.primaryThread = new Thread(this, "Server thread"); // CraftBukkit
|
|
|
|
+ this.primaryThread = new Thread(this, "Server thread"); // CraftBukkit
|
|
|
|
+ this.cauldronConfig = new CauldronConfig("cauldron.yml", "cauldron");
|
|
|
|
+ kcauldronConfig = new KCauldronConfig();
|
|
|
|
+ this.tileEntityConfig = new TileEntityConfig("tileentities.yml", "cauldron_te");
|
|
|
|
+ cauldronConfig = new CauldronConfig("cauldron.yml", "cauldron");
|
|
|
|
|
|
|
|
+ tileEntityConfig = new TileEntityConfig("tileentities.yml", "cauldron_te");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
+ // Cauldron end
|
|
|
|
+ // Cauldron end
|
|
|
|
|
|
|
|
|
|
|
@ -134,8 +159,9 @@ |
|
|
|
+ this.field_147143_S = this.field_152364_T.createMinecraftSessionService();
|
|
|
|
+ this.field_147143_S = this.field_152364_T.createMinecraftSessionService();
|
|
|
|
+ this.field_152365_W = this.field_152364_T.createProfileRepository();
|
|
|
|
+ this.field_152365_W = this.field_152364_T.createProfileRepository();
|
|
|
|
+ // Cauldron start
|
|
|
|
+ // Cauldron start
|
|
|
|
+ this.cauldronConfig = new CauldronConfig("cauldron.yml", "cauldron");
|
|
|
|
+ kcauldronConfig = new KCauldronConfig();
|
|
|
|
+ this.tileEntityConfig = new TileEntityConfig("tileentities.yml", "cauldron_te");
|
|
|
|
+ cauldronConfig = new CauldronConfig("cauldron.yml", "cauldron");
|
|
|
|
|
|
|
|
+ tileEntityConfig = new TileEntityConfig("tileentities.yml", "cauldron_te");
|
|
|
|
+ // Cauldron end
|
|
|
|
+ // Cauldron end
|
|
|
|
+ // CraftBukkit start
|
|
|
|
+ // CraftBukkit start
|
|
|
|
+ this.options = options;
|
|
|
|
+ this.options = options;
|
|
|
@ -180,7 +206,7 @@ |
|
|
|
protected void convertMapIfNeeded(String p_71237_1_)
|
|
|
|
protected void convertMapIfNeeded(String p_71237_1_)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
if (this.getActiveAnvilConverter().isOldMapFormat(p_71237_1_))
|
|
|
|
if (this.getActiveAnvilConverter().isOldMapFormat(p_71237_1_))
|
|
|
|
@@ -172,6 +295,7 @@
|
|
|
|
@@ -172,6 +306,7 @@
|
|
|
|
MinecraftServer.logger.info("Converting... " + p_73718_1_ + "%");
|
|
|
|
MinecraftServer.logger.info("Converting... " + p_73718_1_ + "%");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -188,7 +214,7 @@ |
|
|
|
@SideOnly(Side.CLIENT)
|
|
|
|
@SideOnly(Side.CLIENT)
|
|
|
|
public void resetProgressAndMessage(String p_73721_1_) {}
|
|
|
|
public void resetProgressAndMessage(String p_73721_1_) {}
|
|
|
|
@SideOnly(Side.CLIENT)
|
|
|
|
@SideOnly(Side.CLIENT)
|
|
|
|
@@ -195,10 +319,17 @@
|
|
|
|
@@ -195,10 +330,17 @@
|
|
|
|
|
|
|
|
|
|
|
|
protected void loadAllWorlds(String p_71247_1_, String p_71247_2_, long p_71247_3_, WorldType p_71247_5_, String p_71247_6_)
|
|
|
|
protected void loadAllWorlds(String p_71247_1_, String p_71247_2_, long p_71247_3_, WorldType p_71247_5_, String p_71247_6_)
|
|
|
|
{
|
|
|
|
{
|
|
|
@ -208,7 +234,7 @@ |
|
|
|
WorldSettings worldsettings;
|
|
|
|
WorldSettings worldsettings;
|
|
|
|
|
|
|
|
|
|
|
|
if (worldinfo == null)
|
|
|
|
if (worldinfo == null)
|
|
|
|
@@ -215,11 +346,79 @@
|
|
|
|
@@ -215,11 +357,79 @@
|
|
|
|
{
|
|
|
|
{
|
|
|
|
worldsettings.enableBonusChest();
|
|
|
|
worldsettings.enableBonusChest();
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -291,7 +317,7 @@ |
|
|
|
world.addWorldAccess(new WorldManager(this, world));
|
|
|
|
world.addWorldAccess(new WorldManager(this, world));
|
|
|
|
|
|
|
|
|
|
|
|
if (!this.isSinglePlayer())
|
|
|
|
if (!this.isSinglePlayer())
|
|
|
|
@@ -227,12 +426,14 @@
|
|
|
|
@@ -227,12 +437,14 @@
|
|
|
|
world.getWorldInfo().setGameType(this.getGameType());
|
|
|
|
world.getWorldInfo().setGameType(this.getGameType());
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -309,7 +335,7 @@ |
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
protected void initialWorldChunkLoad()
|
|
|
|
protected void initialWorldChunkLoad()
|
|
|
|
@@ -244,9 +445,12 @@
|
|
|
|
@@ -244,9 +456,12 @@
|
|
|
|
int i = 0;
|
|
|
|
int i = 0;
|
|
|
|
this.setUserMessage("menu.generatingTerrain");
|
|
|
|
this.setUserMessage("menu.generatingTerrain");
|
|
|
|
byte b0 = 0;
|
|
|
|
byte b0 = 0;
|
|
|
@ -322,7 +348,7 @@ |
|
|
|
long j = getSystemTimeMillis();
|
|
|
|
long j = getSystemTimeMillis();
|
|
|
|
|
|
|
|
|
|
|
|
for (int k = -192; k <= 192 && this.isServerRunning(); k += 16)
|
|
|
|
for (int k = -192; k <= 192 && this.isServerRunning(); k += 16)
|
|
|
|
@@ -265,7 +469,8 @@
|
|
|
|
@@ -265,7 +480,8 @@
|
|
|
|
worldserver.theChunkProviderServer.loadChunk(chunkcoordinates.posX + k >> 4, chunkcoordinates.posZ + l >> 4);
|
|
|
|
worldserver.theChunkProviderServer.loadChunk(chunkcoordinates.posX + k >> 4, chunkcoordinates.posZ + l >> 4);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -332,7 +358,7 @@ |
|
|
|
this.clearCurrentTask();
|
|
|
|
this.clearCurrentTask();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@@ -292,19 +497,17 @@
|
|
|
|
@@ -292,19 +508,17 @@
|
|
|
|
{
|
|
|
|
{
|
|
|
|
this.currentTask = null;
|
|
|
|
this.currentTask = null;
|
|
|
|
this.percentDone = 0;
|
|
|
|
this.percentDone = 0;
|
|
|
@ -357,7 +383,7 @@ |
|
|
|
|
|
|
|
|
|
|
|
if (worldserver != null)
|
|
|
|
if (worldserver != null)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
@@ -313,25 +516,41 @@
|
|
|
|
@@ -313,25 +527,41 @@
|
|
|
|
logger.info("Saving chunks for level \'" + worldserver.getWorldInfo().getWorldName() + "\'/" + worldserver.provider.getDimensionName());
|
|
|
|
logger.info("Saving chunks for level \'" + worldserver.getWorldInfo().getWorldName() + "\'/" + worldserver.provider.getDimensionName());
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -404,7 +430,7 @@ |
|
|
|
if (this.func_147137_ag() != null)
|
|
|
|
if (this.func_147137_ag() != null)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
this.func_147137_ag().terminateEndpoints();
|
|
|
|
this.func_147137_ag().terminateEndpoints();
|
|
|
|
@@ -347,7 +566,14 @@
|
|
|
|
@@ -347,7 +577,14 @@
|
|
|
|
if (this.worldServers != null)
|
|
|
|
if (this.worldServers != null)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
logger.info("Saving worlds");
|
|
|
|
logger.info("Saving worlds");
|
|
|
@ -420,7 +446,7 @@ |
|
|
|
|
|
|
|
|
|
|
|
for (int i = 0; i < this.worldServers.length; ++i)
|
|
|
|
for (int i = 0; i < this.worldServers.length; ++i)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
@@ -380,6 +606,13 @@
|
|
|
|
@@ -380,6 +617,13 @@
|
|
|
|
this.serverRunning = false;
|
|
|
|
this.serverRunning = false;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -434,7 +460,7 @@ |
|
|
|
public void run()
|
|
|
|
public void run()
|
|
|
|
{
|
|
|
|
{
|
|
|
|
try
|
|
|
|
try
|
|
|
|
@@ -392,45 +625,41 @@
|
|
|
|
@@ -392,45 +636,41 @@
|
|
|
|
this.field_147147_p.func_151315_a(new ChatComponentText(this.motd));
|
|
|
|
this.field_147147_p.func_151315_a(new ChatComponentText(this.motd));
|
|
|
|
this.field_147147_p.func_151321_a(new ServerStatusResponse.MinecraftProtocolVersionIdentifier("1.7.10", 5));
|
|
|
|
this.field_147147_p.func_151321_a(new ServerStatusResponse.MinecraftProtocolVersionIdentifier("1.7.10", 5));
|
|
|
|
this.func_147138_a(this.field_147147_p);
|
|
|
|
this.func_147138_a(this.field_147147_p);
|
|
|
@ -501,7 +527,7 @@ |
|
|
|
FMLCommonHandler.instance().handleServerStopping();
|
|
|
|
FMLCommonHandler.instance().handleServerStopping();
|
|
|
|
FMLCommonHandler.instance().expectServerStopped(); // has to come before finalTick to avoid race conditions
|
|
|
|
FMLCommonHandler.instance().expectServerStopped(); // has to come before finalTick to avoid race conditions
|
|
|
|
}
|
|
|
|
}
|
|
|
|
@@ -448,6 +677,14 @@
|
|
|
|
@@ -448,6 +688,14 @@
|
|
|
|
catch (Throwable throwable1)
|
|
|
|
catch (Throwable throwable1)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
logger.error("Encountered an unexpected exception", throwable1);
|
|
|
|
logger.error("Encountered an unexpected exception", throwable1);
|
|
|
@ -516,7 +542,7 @@ |
|
|
|
CrashReport crashreport = null;
|
|
|
|
CrashReport crashreport = null;
|
|
|
|
|
|
|
|
|
|
|
|
if (throwable1 instanceof ReportedException)
|
|
|
|
if (throwable1 instanceof ReportedException)
|
|
|
|
@@ -477,6 +714,7 @@
|
|
|
|
@@ -477,6 +725,7 @@
|
|
|
|
{
|
|
|
|
{
|
|
|
|
try
|
|
|
|
try
|
|
|
|
{
|
|
|
|
{
|
|
|
@ -524,7 +550,7 @@ |
|
|
|
this.stopServer();
|
|
|
|
this.stopServer();
|
|
|
|
this.serverStopped = true;
|
|
|
|
this.serverStopped = true;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
@@ -486,6 +724,16 @@
|
|
|
|
@@ -486,6 +735,16 @@
|
|
|
|
}
|
|
|
|
}
|
|
|
|
finally
|
|
|
|
finally
|
|
|
|
{
|
|
|
|
{
|
|
|
@ -541,7 +567,7 @@ |
|
|
|
FMLCommonHandler.instance().handleServerStopped();
|
|
|
|
FMLCommonHandler.instance().handleServerStopped();
|
|
|
|
this.serverStopped = true;
|
|
|
|
this.serverStopped = true;
|
|
|
|
this.systemExitNow();
|
|
|
|
this.systemExitNow();
|
|
|
|
@@ -532,8 +780,11 @@
|
|
|
|
@@ -532,8 +791,11 @@
|
|
|
|
|
|
|
|
|
|
|
|
public void tick()
|
|
|
|
public void tick()
|
|
|
|
{
|
|
|
|
{
|
|
|
@ -553,7 +579,7 @@ |
|
|
|
++this.tickCounter;
|
|
|
|
++this.tickCounter;
|
|
|
|
|
|
|
|
|
|
|
|
if (this.startProfiling)
|
|
|
|
if (this.startProfiling)
|
|
|
|
@@ -562,12 +813,21 @@
|
|
|
|
@@ -562,12 +824,21 @@
|
|
|
|
this.field_147147_p.func_151318_b().func_151330_a(agameprofile);
|
|
|
|
this.field_147147_p.func_151318_b().func_151330_a(agameprofile);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -577,7 +603,7 @@ |
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
this.theProfiler.startSection("tallying");
|
|
|
|
this.theProfiler.startSection("tallying");
|
|
|
|
@@ -575,25 +835,57 @@
|
|
|
|
@@ -575,25 +846,57 @@
|
|
|
|
this.theProfiler.endSection();
|
|
|
|
this.theProfiler.endSection();
|
|
|
|
this.theProfiler.startSection("snooper");
|
|
|
|
this.theProfiler.startSection("snooper");
|
|
|
|
|
|
|
|
|
|
|
@ -637,7 +663,7 @@ |
|
|
|
int i;
|
|
|
|
int i;
|
|
|
|
|
|
|
|
|
|
|
|
Integer[] ids = DimensionManager.getIDs(this.tickCounter % 200 == 0);
|
|
|
|
Integer[] ids = DimensionManager.getIDs(this.tickCounter % 200 == 0);
|
|
|
|
@@ -602,19 +894,21 @@
|
|
|
|
@@ -602,19 +905,21 @@
|
|
|
|
int id = ids[x];
|
|
|
|
int id = ids[x];
|
|
|
|
long j = System.nanoTime();
|
|
|
|
long j = System.nanoTime();
|
|
|
|
|
|
|
|
|
|
|
@ -662,7 +688,7 @@ |
|
|
|
|
|
|
|
|
|
|
|
this.theProfiler.startSection("tick");
|
|
|
|
this.theProfiler.startSection("tick");
|
|
|
|
FMLCommonHandler.instance().onPreWorldTick(worldserver);
|
|
|
|
FMLCommonHandler.instance().onPreWorldTick(worldserver);
|
|
|
|
@@ -622,22 +916,46 @@
|
|
|
|
@@ -622,22 +927,46 @@
|
|
|
|
|
|
|
|
|
|
|
|
try
|
|
|
|
try
|
|
|
|
{
|
|
|
|
{
|
|
|
@ -711,7 +737,7 @@ |
|
|
|
worldserver.addWorldInfoToCrashReport(crashreport);
|
|
|
|
worldserver.addWorldInfoToCrashReport(crashreport);
|
|
|
|
throw new ReportedException(crashreport);
|
|
|
|
throw new ReportedException(crashreport);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
@@ -645,10 +963,12 @@
|
|
|
|
@@ -645,10 +974,12 @@
|
|
|
|
FMLCommonHandler.instance().onPostWorldTick(worldserver);
|
|
|
|
FMLCommonHandler.instance().onPostWorldTick(worldserver);
|
|
|
|
this.theProfiler.endSection();
|
|
|
|
this.theProfiler.endSection();
|
|
|
|
this.theProfiler.startSection("tracker");
|
|
|
|
this.theProfiler.startSection("tracker");
|
|
|
@ -725,7 +751,7 @@ |
|
|
|
|
|
|
|
|
|
|
|
worldTickTimes.get(id)[this.tickCounter % 100] = System.nanoTime() - j;
|
|
|
|
worldTickTimes.get(id)[this.tickCounter % 100] = System.nanoTime() - j;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
@@ -656,15 +976,21 @@
|
|
|
|
@@ -656,15 +987,21 @@
|
|
|
|
this.theProfiler.endStartSection("dim_unloading");
|
|
|
|
this.theProfiler.endStartSection("dim_unloading");
|
|
|
|
DimensionManager.unloadWorlds(worldTickTimes);
|
|
|
|
DimensionManager.unloadWorlds(worldTickTimes);
|
|
|
|
this.theProfiler.endStartSection("connection");
|
|
|
|
this.theProfiler.endStartSection("connection");
|
|
|
@ -747,7 +773,7 @@ |
|
|
|
|
|
|
|
|
|
|
|
this.theProfiler.endSection();
|
|
|
|
this.theProfiler.endSection();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
@@ -699,6 +1025,13 @@
|
|
|
|
@@ -699,6 +1036,13 @@
|
|
|
|
|
|
|
|
|
|
|
|
public WorldServer worldServerForDimension(int p_71218_1_)
|
|
|
|
public WorldServer worldServerForDimension(int p_71218_1_)
|
|
|
|
{
|
|
|
|
{
|
|
|
@ -761,7 +787,7 @@ |
|
|
|
WorldServer ret = DimensionManager.getWorld(p_71218_1_);
|
|
|
|
WorldServer ret = DimensionManager.getWorld(p_71218_1_);
|
|
|
|
if (ret == null)
|
|
|
|
if (ret == null)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
@@ -784,13 +1117,14 @@
|
|
|
|
@@ -784,13 +1128,14 @@
|
|
|
|
|
|
|
|
|
|
|
|
public List getPossibleCompletions(ICommandSender p_71248_1_, String p_71248_2_)
|
|
|
|
public List getPossibleCompletions(ICommandSender p_71248_1_, String p_71248_2_)
|
|
|
|
{
|
|
|
|
{
|
|
|
@ -780,7 +806,7 @@ |
|
|
|
|
|
|
|
|
|
|
|
if (list != null)
|
|
|
|
if (list != null)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
@@ -798,40 +1132,25 @@
|
|
|
|
@@ -798,40 +1143,25 @@
|
|
|
|
|
|
|
|
|
|
|
|
while (iterator.hasNext())
|
|
|
|
while (iterator.hasNext())
|
|
|
|
{
|
|
|
|
{
|
|
|
@ -829,7 +855,7 @@ |
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public static MinecraftServer getServer()
|
|
|
|
public static MinecraftServer getServer()
|
|
|
|
@@ -1034,7 +1353,7 @@
|
|
|
|
@@ -1034,7 +1364,7 @@
|
|
|
|
|
|
|
|
|
|
|
|
public boolean isServerInOnlineMode()
|
|
|
|
public boolean isServerInOnlineMode()
|
|
|
|
{
|
|
|
|
{
|
|
|
@ -838,7 +864,7 @@ |
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public void setOnlineMode(boolean p_71229_1_)
|
|
|
|
public void setOnlineMode(boolean p_71229_1_)
|
|
|
|
@@ -1124,7 +1443,7 @@
|
|
|
|
@@ -1124,7 +1454,7 @@
|
|
|
|
|
|
|
|
|
|
|
|
public NetworkSystem func_147137_ag()
|
|
|
|
public NetworkSystem func_147137_ag()
|
|
|
|
{
|
|
|
|
{
|
|
|
@ -847,7 +873,7 @@ |
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@SideOnly(Side.CLIENT)
|
|
|
|
@SideOnly(Side.CLIENT)
|
|
|
|
@@ -1259,8 +1578,11 @@
|
|
|
|
@@ -1259,8 +1589,11 @@
|
|
|
|
{
|
|
|
|
{
|
|
|
|
Bootstrap.func_151354_b();
|
|
|
|
Bootstrap.func_151354_b();
|
|
|
|
|
|
|
|
|
|
|
@ -859,7 +885,7 @@ |
|
|
|
boolean flag = true;
|
|
|
|
boolean flag = true;
|
|
|
|
String s = null;
|
|
|
|
String s = null;
|
|
|
|
String s1 = ".";
|
|
|
|
String s1 = ".";
|
|
|
|
@@ -1356,16 +1678,34 @@
|
|
|
|
@@ -1356,16 +1689,34 @@
|
|
|
|
{
|
|
|
|
{
|
|
|
|
dedicatedserver.setGuiEnabled();
|
|
|
|
dedicatedserver.setGuiEnabled();
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -900,7 +926,7 @@ |
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (Exception exception)
|
|
|
|
catch (Exception exception)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
@@ -1400,15 +1740,70 @@
|
|
|
|
@@ -1400,15 +1751,70 @@
|
|
|
|
@SideOnly(Side.SERVER)
|
|
|
|
@SideOnly(Side.SERVER)
|
|
|
|
public String getPlugins()
|
|
|
|
public String getPlugins()
|
|
|
|
{
|
|
|
|
{
|
|
|
@ -976,7 +1002,7 @@ |
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@SideOnly(Side.SERVER)
|
|
|
|
@SideOnly(Side.SERVER)
|
|
|
|
@@ -1455,9 +1850,213 @@
|
|
|
|
@@ -1455,9 +1861,213 @@
|
|
|
|
return this.serverStopped;
|
|
|
|
return this.serverStopped;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|