3
0
Mirror von https://github.com/PaperMC/Paper.git synchronisiert 2024-12-18 12:30:06 +01:00

Don't share WorldMapCollection. Fixes BUKKIT-4871

WorldMapCollection stores scoreboard, map (item), structure, and
village information. Scoreboards are explicitly handled globally,
while villages and structures are erroneously shared.

This commit separates the WorldMapCollections to not be shared among
custom worlds. Maps are special-cased to maintain the previous shared
behavior.
Dieser Commit ist enthalten in:
Wesley Wolfe 2013-10-30 04:22:00 -05:00
Ursprung 84237bb783
Commit 7aabcb2ab3
2 geänderte Dateien mit 1 neuen und 2 gelöschten Zeilen

Datei anzeigen

@ -14,7 +14,7 @@ public class ItemWorldMap extends ItemWorldMapBase {
public WorldMap getSavedMap(ItemStack itemstack, World world) {
String s = "map_" + itemstack.getData();
WorldMap worldmap = (WorldMap) world.a(WorldMap.class, s);
WorldMap worldmap = (WorldMap) world.getServer().getServer().worlds.get(0).a(WorldMap.class, s); // CraftBukkit - use primary world for maps
if (worldmap == null && !world.isStatic) {
itemstack.setData(world.b("map"));

Datei anzeigen

@ -730,7 +730,6 @@ public final class CraftServer implements Server {
return null;
}
internal.worldMaps = console.worlds.get(0).worldMaps;
internal.scoreboard = getScoreboardManager().getMainScoreboard().getHandle();
internal.tracker = new EntityTracker(internal);