mirror of
https://github.com/DRE2N/DungeonsXL.git
synced 2024-11-08 03:40:04 +01:00
World loading performance improvement
This commit is contained in:
parent
5a0723b145
commit
cd2ee3421f
@ -187,6 +187,14 @@ public class DWorldCache {
|
|||||||
return editWorlds;
|
return editWorlds;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param world the world
|
||||||
|
* @return true if the world is a DXL instance, false if not
|
||||||
|
*/
|
||||||
|
public boolean isInstance(World world) {
|
||||||
|
return world.getName().startsWith("DXL_");
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param name the name of the map; can either be the resource name or the instance name
|
* @param name the name of the map; can either be the resource name or the instance name
|
||||||
* @return if a map with this name exists
|
* @return if a map with this name exists
|
||||||
|
@ -23,6 +23,7 @@ import de.erethon.caliburn.mob.ExMob;
|
|||||||
import de.erethon.dungeonsxl.DungeonsXL;
|
import de.erethon.dungeonsxl.DungeonsXL;
|
||||||
import de.erethon.dungeonsxl.game.Game;
|
import de.erethon.dungeonsxl.game.Game;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
import org.bukkit.World;
|
||||||
import org.bukkit.block.Block;
|
import org.bukkit.block.Block;
|
||||||
import org.bukkit.entity.Entity;
|
import org.bukkit.entity.Entity;
|
||||||
import org.bukkit.entity.LivingEntity;
|
import org.bukkit.entity.LivingEntity;
|
||||||
@ -41,6 +42,7 @@ import org.bukkit.event.hanging.HangingBreakEvent;
|
|||||||
import org.bukkit.event.player.PlayerArmorStandManipulateEvent;
|
import org.bukkit.event.player.PlayerArmorStandManipulateEvent;
|
||||||
import org.bukkit.event.player.PlayerInteractEntityEvent;
|
import org.bukkit.event.player.PlayerInteractEntityEvent;
|
||||||
import org.bukkit.event.weather.WeatherChangeEvent;
|
import org.bukkit.event.weather.WeatherChangeEvent;
|
||||||
|
import org.bukkit.event.world.WorldInitEvent;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Daniel Saukel, Frank Baumann, Milan Albrecht
|
* @author Daniel Saukel, Frank Baumann, Milan Albrecht
|
||||||
@ -55,6 +57,14 @@ public class DWorldListener implements Listener {
|
|||||||
dWorlds = plugin.getDWorldCache();
|
dWorlds = plugin.getDWorldCache();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@EventHandler(priority = EventPriority.HIGHEST)
|
||||||
|
public void onInit(WorldInitEvent event) {
|
||||||
|
World world = event.getWorld();
|
||||||
|
if (dWorlds.isInstance(world)) {
|
||||||
|
world.setKeepSpawnInMemory(false);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@EventHandler(ignoreCancelled = true, priority = EventPriority.HIGHEST)
|
@EventHandler(ignoreCancelled = true, priority = EventPriority.HIGHEST)
|
||||||
public void onBlockBreak(BlockBreakEvent event) {
|
public void onBlockBreak(BlockBreakEvent event) {
|
||||||
Block block = event.getBlock();
|
Block block = event.getBlock();
|
||||||
|
Loading…
Reference in New Issue
Block a user