mirror of
https://github.com/BlueMap-Minecraft/BlueMap.git
synced 2025-02-19 05:51:50 +01:00
parent
591e105c05
commit
93dae9648f
@ -171,7 +171,7 @@ public File getConfigFolder() {
|
|||||||
public void onPlayerJoin(MinecraftServer server, ServerPlayerEntity playerInstance) {
|
public void onPlayerJoin(MinecraftServer server, ServerPlayerEntity playerInstance) {
|
||||||
if (this.serverInstance != server) return;
|
if (this.serverInstance != server) return;
|
||||||
|
|
||||||
FabricPlayer player = new FabricPlayer(this, playerInstance);
|
FabricPlayer player = new FabricPlayer(this, playerInstance.getUuid());
|
||||||
onlinePlayerMap.put(player.getUuid(), player);
|
onlinePlayerMap.put(player.getUuid(), player);
|
||||||
onlinePlayerList.add(player);
|
onlinePlayerList.add(player);
|
||||||
}
|
}
|
||||||
|
@ -25,7 +25,6 @@
|
|||||||
package de.bluecolored.bluemap.fabric;
|
package de.bluecolored.bluemap.fabric;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.lang.ref.WeakReference;
|
|
||||||
import java.util.EnumMap;
|
import java.util.EnumMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
@ -65,12 +64,10 @@ public class FabricPlayer implements Player {
|
|||||||
private Gamemode gamemode;
|
private Gamemode gamemode;
|
||||||
|
|
||||||
private FabricMod mod;
|
private FabricMod mod;
|
||||||
private WeakReference<ServerPlayerEntity> delegate;
|
|
||||||
|
|
||||||
public FabricPlayer(FabricMod mod, ServerPlayerEntity delegate) {
|
public FabricPlayer(FabricMod mod, UUID playerUuid) {
|
||||||
this.uuid = delegate.getUuid();
|
this.uuid = playerUuid;
|
||||||
this.mod = mod;
|
this.mod = mod;
|
||||||
this.delegate = new WeakReference<>(delegate);
|
|
||||||
|
|
||||||
update();
|
update();
|
||||||
}
|
}
|
||||||
@ -119,19 +116,16 @@ public Gamemode getGamemode() {
|
|||||||
* Only call on server thread!
|
* Only call on server thread!
|
||||||
*/
|
*/
|
||||||
public void update() {
|
public void update() {
|
||||||
ServerPlayerEntity player = delegate.get();
|
MinecraftServer server = mod.getServer();
|
||||||
|
if (server == null) {
|
||||||
|
this.online = false;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
ServerPlayerEntity player = server.getPlayerManager().getPlayer(uuid);
|
||||||
if (player == null) {
|
if (player == null) {
|
||||||
MinecraftServer server = mod.getServer();
|
this.online = false;
|
||||||
if (server != null) {
|
return;
|
||||||
player = server.getPlayerManager().getPlayer(uuid);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (player == null) {
|
|
||||||
this.online = false;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
delegate = new WeakReference<>(player);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
this.gamemode = GAMEMODE_MAP.get(player.interactionManager.getGameMode());
|
this.gamemode = GAMEMODE_MAP.get(player.interactionManager.getGameMode());
|
||||||
|
@ -175,8 +175,8 @@ public File getConfigFolder() {
|
|||||||
|
|
||||||
public void onPlayerJoin(MinecraftServer server, ServerPlayerEntity playerInstance) {
|
public void onPlayerJoin(MinecraftServer server, ServerPlayerEntity playerInstance) {
|
||||||
if (this.serverInstance != server) return;
|
if (this.serverInstance != server) return;
|
||||||
|
|
||||||
FabricPlayer player = new FabricPlayer(this, playerInstance);
|
FabricPlayer player = new FabricPlayer(this, playerInstance.getUuid());
|
||||||
onlinePlayerMap.put(player.getUuid(), player);
|
onlinePlayerMap.put(player.getUuid(), player);
|
||||||
onlinePlayerList.add(player);
|
onlinePlayerList.add(player);
|
||||||
}
|
}
|
||||||
|
@ -25,7 +25,6 @@
|
|||||||
package de.bluecolored.bluemap.fabric;
|
package de.bluecolored.bluemap.fabric;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.lang.ref.WeakReference;
|
|
||||||
import java.util.EnumMap;
|
import java.util.EnumMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
@ -65,12 +64,10 @@ public class FabricPlayer implements Player {
|
|||||||
private Gamemode gamemode;
|
private Gamemode gamemode;
|
||||||
|
|
||||||
private FabricMod mod;
|
private FabricMod mod;
|
||||||
private WeakReference<ServerPlayerEntity> delegate;
|
|
||||||
|
|
||||||
public FabricPlayer(FabricMod mod, ServerPlayerEntity delegate) {
|
public FabricPlayer(FabricMod mod, UUID playerUuid) {
|
||||||
this.uuid = delegate.getUuid();
|
this.uuid = playerUuid;
|
||||||
this.mod = mod;
|
this.mod = mod;
|
||||||
this.delegate = new WeakReference<>(delegate);
|
|
||||||
|
|
||||||
update();
|
update();
|
||||||
}
|
}
|
||||||
@ -119,19 +116,16 @@ public Gamemode getGamemode() {
|
|||||||
* Only call on server thread!
|
* Only call on server thread!
|
||||||
*/
|
*/
|
||||||
public void update() {
|
public void update() {
|
||||||
ServerPlayerEntity player = delegate.get();
|
MinecraftServer server = mod.getServer();
|
||||||
|
if (server == null) {
|
||||||
|
this.online = false;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
ServerPlayerEntity player = server.getPlayerManager().getPlayer(uuid);
|
||||||
if (player == null) {
|
if (player == null) {
|
||||||
MinecraftServer server = mod.getServer();
|
this.online = false;
|
||||||
if (server != null) {
|
return;
|
||||||
player = server.getPlayerManager().getPlayer(uuid);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (player == null) {
|
|
||||||
this.online = false;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
delegate = new WeakReference<>(player);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
this.gamemode = GAMEMODE_MAP.get(player.interactionManager.getGameMode());
|
this.gamemode = GAMEMODE_MAP.get(player.interactionManager.getGameMode());
|
||||||
|
@ -175,8 +175,8 @@ public File getConfigFolder() {
|
|||||||
|
|
||||||
public void onPlayerJoin(MinecraftServer server, ServerPlayerEntity playerInstance) {
|
public void onPlayerJoin(MinecraftServer server, ServerPlayerEntity playerInstance) {
|
||||||
if (this.serverInstance != server) return;
|
if (this.serverInstance != server) return;
|
||||||
|
|
||||||
FabricPlayer player = new FabricPlayer(this, playerInstance);
|
FabricPlayer player = new FabricPlayer(this, playerInstance.getUuid());
|
||||||
onlinePlayerMap.put(player.getUuid(), player);
|
onlinePlayerMap.put(player.getUuid(), player);
|
||||||
onlinePlayerList.add(player);
|
onlinePlayerList.add(player);
|
||||||
}
|
}
|
||||||
|
@ -25,7 +25,6 @@
|
|||||||
package de.bluecolored.bluemap.fabric;
|
package de.bluecolored.bluemap.fabric;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.lang.ref.WeakReference;
|
|
||||||
import java.util.EnumMap;
|
import java.util.EnumMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
@ -65,12 +64,10 @@ public class FabricPlayer implements Player {
|
|||||||
private Gamemode gamemode;
|
private Gamemode gamemode;
|
||||||
|
|
||||||
private FabricMod mod;
|
private FabricMod mod;
|
||||||
private WeakReference<ServerPlayerEntity> delegate;
|
|
||||||
|
|
||||||
public FabricPlayer(FabricMod mod, ServerPlayerEntity delegate) {
|
public FabricPlayer(FabricMod mod, UUID playerUuid) {
|
||||||
this.uuid = delegate.getUuid();
|
this.uuid = playerUuid;
|
||||||
this.mod = mod;
|
this.mod = mod;
|
||||||
this.delegate = new WeakReference<>(delegate);
|
|
||||||
|
|
||||||
update();
|
update();
|
||||||
}
|
}
|
||||||
@ -119,19 +116,16 @@ public Gamemode getGamemode() {
|
|||||||
* Only call on server thread!
|
* Only call on server thread!
|
||||||
*/
|
*/
|
||||||
public void update() {
|
public void update() {
|
||||||
ServerPlayerEntity player = delegate.get();
|
MinecraftServer server = mod.getServer();
|
||||||
|
if (server == null) {
|
||||||
|
this.online = false;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
ServerPlayerEntity player = server.getPlayerManager().getPlayer(uuid);
|
||||||
if (player == null) {
|
if (player == null) {
|
||||||
MinecraftServer server = mod.getServer();
|
this.online = false;
|
||||||
if (server != null) {
|
return;
|
||||||
player = server.getPlayerManager().getPlayer(uuid);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (player == null) {
|
|
||||||
this.online = false;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
delegate = new WeakReference<>(player);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
this.gamemode = GAMEMODE_MAP.get(player.interactionManager.getGameMode());
|
this.gamemode = GAMEMODE_MAP.get(player.interactionManager.getGameMode());
|
||||||
|
@ -194,7 +194,7 @@ public void onPlayerJoin(PlayerLoggedInEvent evt) {
|
|||||||
PlayerEntity playerInstance = evt.getPlayer();
|
PlayerEntity playerInstance = evt.getPlayer();
|
||||||
if (!(playerInstance instanceof ServerPlayerEntity)) return;
|
if (!(playerInstance instanceof ServerPlayerEntity)) return;
|
||||||
|
|
||||||
ForgePlayer player = new ForgePlayer(this, (ServerPlayerEntity) playerInstance);
|
ForgePlayer player = new ForgePlayer(this, playerInstance.getUniqueID());
|
||||||
onlinePlayerMap.put(player.getUuid(), player);
|
onlinePlayerMap.put(player.getUuid(), player);
|
||||||
onlinePlayerList.add(player);
|
onlinePlayerList.add(player);
|
||||||
}
|
}
|
||||||
|
@ -25,7 +25,6 @@
|
|||||||
package de.bluecolored.bluemap.forge;
|
package de.bluecolored.bluemap.forge;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.lang.ref.WeakReference;
|
|
||||||
import java.util.EnumMap;
|
import java.util.EnumMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
@ -65,12 +64,10 @@ public class ForgePlayer implements Player {
|
|||||||
private Gamemode gamemode;
|
private Gamemode gamemode;
|
||||||
|
|
||||||
private ForgeMod mod;
|
private ForgeMod mod;
|
||||||
private WeakReference<ServerPlayerEntity> delegate;
|
|
||||||
|
|
||||||
public ForgePlayer(ForgeMod mod, ServerPlayerEntity delegate) {
|
public ForgePlayer(ForgeMod mod, UUID playerUuid) {
|
||||||
this.uuid = delegate.getUniqueID();
|
this.uuid = playerUuid;
|
||||||
this.mod = mod;
|
this.mod = mod;
|
||||||
this.delegate = new WeakReference<>(delegate);
|
|
||||||
|
|
||||||
update();
|
update();
|
||||||
}
|
}
|
||||||
@ -119,19 +116,16 @@ public Gamemode getGamemode() {
|
|||||||
* Only call on server thread!
|
* Only call on server thread!
|
||||||
*/
|
*/
|
||||||
public void update() {
|
public void update() {
|
||||||
ServerPlayerEntity player = delegate.get();
|
MinecraftServer server = mod.getServer();
|
||||||
|
if (server == null) {
|
||||||
|
this.online = false;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
ServerPlayerEntity player = server.getPlayerList().getPlayerByUUID(uuid);
|
||||||
if (player == null) {
|
if (player == null) {
|
||||||
MinecraftServer server = mod.getServer();
|
this.online = false;
|
||||||
if (server != null) {
|
return;
|
||||||
player = server.getPlayerList().getPlayerByUUID(uuid);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (player == null) {
|
|
||||||
this.online = false;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
delegate = new WeakReference<>(player);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
this.gamemode = GAMEMODE_MAP.get(player.interactionManager.getGameType());
|
this.gamemode = GAMEMODE_MAP.get(player.interactionManager.getGameType());
|
||||||
|
@ -193,8 +193,8 @@ public File getConfigFolder() {
|
|||||||
public void onPlayerJoin(PlayerLoggedInEvent evt) {
|
public void onPlayerJoin(PlayerLoggedInEvent evt) {
|
||||||
PlayerEntity playerInstance = evt.getPlayer();
|
PlayerEntity playerInstance = evt.getPlayer();
|
||||||
if (!(playerInstance instanceof ServerPlayerEntity)) return;
|
if (!(playerInstance instanceof ServerPlayerEntity)) return;
|
||||||
|
|
||||||
ForgePlayer player = new ForgePlayer(this, (ServerPlayerEntity) playerInstance);
|
ForgePlayer player = new ForgePlayer(this, playerInstance.getUniqueID());
|
||||||
onlinePlayerMap.put(player.getUuid(), player);
|
onlinePlayerMap.put(player.getUuid(), player);
|
||||||
onlinePlayerList.add(player);
|
onlinePlayerList.add(player);
|
||||||
}
|
}
|
||||||
|
@ -25,7 +25,6 @@
|
|||||||
package de.bluecolored.bluemap.forge;
|
package de.bluecolored.bluemap.forge;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.lang.ref.WeakReference;
|
|
||||||
import java.util.EnumMap;
|
import java.util.EnumMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
@ -65,12 +64,10 @@ public class ForgePlayer implements Player {
|
|||||||
private Gamemode gamemode;
|
private Gamemode gamemode;
|
||||||
|
|
||||||
private ForgeMod mod;
|
private ForgeMod mod;
|
||||||
private WeakReference<ServerPlayerEntity> delegate;
|
|
||||||
|
|
||||||
public ForgePlayer(ForgeMod mod, ServerPlayerEntity delegate) {
|
public ForgePlayer(ForgeMod mod, UUID playerUuid) {
|
||||||
this.uuid = delegate.getUniqueID();
|
this.uuid = playerUuid;
|
||||||
this.mod = mod;
|
this.mod = mod;
|
||||||
this.delegate = new WeakReference<>(delegate);
|
|
||||||
|
|
||||||
update();
|
update();
|
||||||
}
|
}
|
||||||
@ -119,19 +116,16 @@ public Gamemode getGamemode() {
|
|||||||
* Only call on server thread!
|
* Only call on server thread!
|
||||||
*/
|
*/
|
||||||
public void update() {
|
public void update() {
|
||||||
ServerPlayerEntity player = delegate.get();
|
MinecraftServer server = mod.getServer();
|
||||||
|
if (server == null) {
|
||||||
|
this.online = false;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
ServerPlayerEntity player = server.getPlayerList().getPlayerByUUID(uuid);
|
||||||
if (player == null) {
|
if (player == null) {
|
||||||
MinecraftServer server = mod.getServer();
|
this.online = false;
|
||||||
if (server != null) {
|
return;
|
||||||
player = server.getPlayerList().getPlayerByUUID(uuid);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (player == null) {
|
|
||||||
this.online = false;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
delegate = new WeakReference<>(player);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
this.gamemode = GAMEMODE_MAP.get(player.interactionManager.getGameType());
|
this.gamemode = GAMEMODE_MAP.get(player.interactionManager.getGameType());
|
||||||
|
@ -191,8 +191,8 @@ public File getConfigFolder() {
|
|||||||
public void onPlayerJoin(PlayerLoggedInEvent evt) {
|
public void onPlayerJoin(PlayerLoggedInEvent evt) {
|
||||||
PlayerEntity playerInstance = evt.getPlayer();
|
PlayerEntity playerInstance = evt.getPlayer();
|
||||||
if (!(playerInstance instanceof ServerPlayerEntity)) return;
|
if (!(playerInstance instanceof ServerPlayerEntity)) return;
|
||||||
|
|
||||||
ForgePlayer player = new ForgePlayer(this, (ServerPlayerEntity) playerInstance);
|
ForgePlayer player = new ForgePlayer(this, playerInstance.getUniqueID());
|
||||||
onlinePlayerMap.put(player.getUuid(), player);
|
onlinePlayerMap.put(player.getUuid(), player);
|
||||||
onlinePlayerList.add(player);
|
onlinePlayerList.add(player);
|
||||||
}
|
}
|
||||||
|
@ -25,7 +25,6 @@
|
|||||||
package de.bluecolored.bluemap.forge;
|
package de.bluecolored.bluemap.forge;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.lang.ref.WeakReference;
|
|
||||||
import java.util.EnumMap;
|
import java.util.EnumMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
@ -64,12 +63,10 @@ public class ForgePlayer implements Player {
|
|||||||
private Gamemode gamemode;
|
private Gamemode gamemode;
|
||||||
|
|
||||||
private ForgeMod mod;
|
private ForgeMod mod;
|
||||||
private WeakReference<ServerPlayerEntity> delegate;
|
|
||||||
|
|
||||||
public ForgePlayer(ForgeMod mod, ServerPlayerEntity delegate) {
|
public ForgePlayer(ForgeMod mod, UUID playerUuid) {
|
||||||
this.uuid = delegate.getUniqueID();
|
this.uuid = playerUuid;
|
||||||
this.mod = mod;
|
this.mod = mod;
|
||||||
this.delegate = new WeakReference<>(delegate);
|
|
||||||
|
|
||||||
update();
|
update();
|
||||||
}
|
}
|
||||||
@ -118,19 +115,16 @@ public Gamemode getGamemode() {
|
|||||||
* Only call on server thread!
|
* Only call on server thread!
|
||||||
*/
|
*/
|
||||||
public void update() {
|
public void update() {
|
||||||
ServerPlayerEntity player = delegate.get();
|
MinecraftServer server = mod.getServer();
|
||||||
|
if (server == null) {
|
||||||
|
this.online = false;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
ServerPlayerEntity player = server.getPlayerList().getPlayerByUUID(uuid);
|
||||||
if (player == null) {
|
if (player == null) {
|
||||||
MinecraftServer server = mod.getServer();
|
this.online = false;
|
||||||
if (server != null) {
|
return;
|
||||||
player = server.getPlayerList().getPlayerByUUID(uuid);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (player == null) {
|
|
||||||
this.online = false;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
delegate = new WeakReference<>(player);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
this.gamemode = GAMEMODE_MAP.get(player.interactionManager.getGameType());
|
this.gamemode = GAMEMODE_MAP.get(player.interactionManager.getGameType());
|
||||||
|
@ -24,7 +24,6 @@
|
|||||||
*/
|
*/
|
||||||
package de.bluecolored.bluemap.bukkit;
|
package de.bluecolored.bluemap.bukkit;
|
||||||
|
|
||||||
import java.lang.ref.WeakReference;
|
|
||||||
import java.util.EnumMap;
|
import java.util.EnumMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
@ -58,12 +57,9 @@ public class BukkitPlayer implements Player {
|
|||||||
private boolean sneaking;
|
private boolean sneaking;
|
||||||
private boolean invisible;
|
private boolean invisible;
|
||||||
private Gamemode gamemode;
|
private Gamemode gamemode;
|
||||||
|
|
||||||
private WeakReference<org.bukkit.entity.Player> delegate;
|
|
||||||
|
|
||||||
public BukkitPlayer(org.bukkit.entity.Player delegate) {
|
public BukkitPlayer(UUID playerUUID) {
|
||||||
this.uuid = delegate.getUniqueId();
|
this.uuid = playerUUID;
|
||||||
this.delegate = new WeakReference<>(delegate);
|
|
||||||
update();
|
update();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -111,15 +107,10 @@ public Gamemode getGamemode() {
|
|||||||
* API access, only call on server thread!
|
* API access, only call on server thread!
|
||||||
*/
|
*/
|
||||||
public void update() {
|
public void update() {
|
||||||
org.bukkit.entity.Player player = delegate.get();
|
org.bukkit.entity.Player player = Bukkit.getPlayer(uuid);
|
||||||
if (player == null) {
|
if (player == null) {
|
||||||
player = Bukkit.getPlayer(uuid);
|
this.online = false;
|
||||||
if (player == null) {
|
return;
|
||||||
this.online = false;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
delegate = new WeakReference<>(player);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
this.gamemode = GAMEMODE_MAP.get(player.getGameMode());
|
this.gamemode = GAMEMODE_MAP.get(player.getGameMode());
|
||||||
|
@ -132,7 +132,7 @@ public void onEnable() {
|
|||||||
this.onlinePlayerList.clear();
|
this.onlinePlayerList.clear();
|
||||||
this.onlinePlayerMap.clear();
|
this.onlinePlayerMap.clear();
|
||||||
for (org.bukkit.entity.Player player : getServer().getOnlinePlayers()) {
|
for (org.bukkit.entity.Player player : getServer().getOnlinePlayers()) {
|
||||||
BukkitPlayer bukkitPlayer = new BukkitPlayer(player);
|
BukkitPlayer bukkitPlayer = new BukkitPlayer(player.getUniqueId());
|
||||||
onlinePlayerMap.put(player.getUniqueId(), bukkitPlayer);
|
onlinePlayerMap.put(player.getUniqueId(), bukkitPlayer);
|
||||||
onlinePlayerList.add(bukkitPlayer);
|
onlinePlayerList.add(bukkitPlayer);
|
||||||
}
|
}
|
||||||
@ -235,7 +235,7 @@ public static BukkitPlugin getInstance() {
|
|||||||
|
|
||||||
@EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true)
|
@EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true)
|
||||||
public void onPlayerJoin(PlayerJoinEvent evt) {
|
public void onPlayerJoin(PlayerJoinEvent evt) {
|
||||||
BukkitPlayer player = new BukkitPlayer(evt.getPlayer());
|
BukkitPlayer player = new BukkitPlayer(evt.getPlayer().getUniqueId());
|
||||||
onlinePlayerMap.put(evt.getPlayer().getUniqueId(), player);
|
onlinePlayerMap.put(evt.getPlayer().getUniqueId(), player);
|
||||||
onlinePlayerList.add(player);
|
onlinePlayerList.add(player);
|
||||||
}
|
}
|
||||||
|
@ -24,7 +24,6 @@
|
|||||||
*/
|
*/
|
||||||
package de.bluecolored.bluemap.sponge;
|
package de.bluecolored.bluemap.sponge;
|
||||||
|
|
||||||
import java.lang.ref.WeakReference;
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
@ -63,12 +62,9 @@ public class SpongePlayer implements Player {
|
|||||||
private boolean sneaking;
|
private boolean sneaking;
|
||||||
private boolean invisible;
|
private boolean invisible;
|
||||||
private Gamemode gamemode;
|
private Gamemode gamemode;
|
||||||
|
|
||||||
private WeakReference<org.spongepowered.api.entity.living.player.Player> delegate;
|
|
||||||
|
|
||||||
public SpongePlayer(org.spongepowered.api.entity.living.player.Player delegate) {
|
public SpongePlayer(UUID playerUUID) {
|
||||||
this.uuid = delegate.getUniqueId();
|
this.uuid = playerUUID;
|
||||||
this.delegate = new WeakReference<>(delegate);
|
|
||||||
update();
|
update();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -116,15 +112,10 @@ public Gamemode getGamemode() {
|
|||||||
* API access, only call on server thread!
|
* API access, only call on server thread!
|
||||||
*/
|
*/
|
||||||
public void update() {
|
public void update() {
|
||||||
org.spongepowered.api.entity.living.player.Player player = delegate.get();
|
org.spongepowered.api.entity.living.player.Player player = Sponge.getServer().getPlayer(uuid).orElse(null);
|
||||||
if (player == null) {
|
if (player == null) {
|
||||||
player = Sponge.getServer().getPlayer(uuid).orElse(null);
|
this.online = false;
|
||||||
if (player == null) {
|
return;
|
||||||
this.online = false;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
delegate = new WeakReference<>(player);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
this.gamemode = GAMEMODE_MAP.get(player.get(Keys.GAME_MODE).orElse(GameModes.NOT_SET));
|
this.gamemode = GAMEMODE_MAP.get(player.get(Keys.GAME_MODE).orElse(GameModes.NOT_SET));
|
||||||
|
@ -163,7 +163,7 @@ public void onServerReload(GameReloadEvent evt) {
|
|||||||
|
|
||||||
@Listener
|
@Listener
|
||||||
public void onPlayerJoin(ClientConnectionEvent.Join evt) {
|
public void onPlayerJoin(ClientConnectionEvent.Join evt) {
|
||||||
SpongePlayer player = new SpongePlayer(evt.getTargetEntity());
|
SpongePlayer player = new SpongePlayer(evt.getTargetEntity().getUniqueId());
|
||||||
onlinePlayerMap.put(evt.getTargetEntity().getUniqueId(), player);
|
onlinePlayerMap.put(evt.getTargetEntity().getUniqueId(), player);
|
||||||
onlinePlayerList.add(player);
|
onlinePlayerList.add(player);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user