Fixed More Bugs
Fixed more bugs. Now it's possible to generate a world without crashing. Unfortunately, it's clear that there is a packet-sending loop going on. I'll have to add a check to prevent integrated servers from spamming themselves.
This commit is contained in:
parent
77bc0e833f
commit
8bfe9dc22e
3 changed files with 13 additions and 3 deletions
|
@ -36,7 +36,18 @@ public class EventHookContainer
|
|||
@ForgeSubscribe
|
||||
public void onWorldLoad(WorldEvent.Load event)
|
||||
{
|
||||
RiftRegenerator.regenerateRiftsInAllWorlds();
|
||||
// We need to initialize PocketManager here because onServerAboutToStart fires before we can
|
||||
// use DimensionManager and onServerStarting fires after the game tries to generate terrain.
|
||||
// If a gateway tries to generate before PocketManager has initialized, we get a crash.
|
||||
if (!PocketManager.isLoaded())
|
||||
{
|
||||
PocketManager.load();
|
||||
}
|
||||
|
||||
if (PocketManager.isLoaded())
|
||||
{
|
||||
RiftRegenerator.regenerateRiftsInAllWorlds();
|
||||
}
|
||||
}
|
||||
|
||||
@ForgeSubscribe
|
||||
|
|
|
@ -127,7 +127,7 @@ public abstract class NewDimData
|
|||
IUpdateWatcher<Point4D> linkWatcher)
|
||||
{
|
||||
// The isPocket flag is redundant. It's meant as an integrity safeguard.
|
||||
if (isPocket == (parent != null))
|
||||
if (isPocket != (parent != null))
|
||||
{
|
||||
throw new NullPointerException("Dimensions can be pocket dimensions if and only if they have a parent dimension.");
|
||||
}
|
||||
|
|
|
@ -384,6 +384,5 @@ public class mod_pocketDim
|
|||
CommandCreatePocket.instance().register(event);
|
||||
CommandTeleportPlayer.instance().register(event);
|
||||
*/
|
||||
PocketManager.load();
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue