geforkt von Mirrors/FastAsyncWorldEdit
Don't load clipboard more than once. Deprecate BukkitPlayer constructors as it's more efficient to use cached players
Dieser Commit ist enthalten in:
Ursprung
848eac8623
Commit
e94b85a0fc
@ -83,7 +83,9 @@ public class BukkitPlayer extends AbstractPlayerActor {
|
|||||||
* This constructs a new {@link BukkitPlayer} for the given {@link Player}.
|
* This constructs a new {@link BukkitPlayer} for the given {@link Player}.
|
||||||
*
|
*
|
||||||
* @param player The corresponding {@link Player} or null if you need a null WorldEdit player for some reason.
|
* @param player The corresponding {@link Player} or null if you need a null WorldEdit player for some reason.
|
||||||
|
* @deprecated Players are cached by the plugin. Should use {@link WorldEditPlugin#wrapPlayer(Player)}
|
||||||
*/
|
*/
|
||||||
|
@Deprecated
|
||||||
public BukkitPlayer(@Nullable Player player) {
|
public BukkitPlayer(@Nullable Player player) {
|
||||||
super(player != null ? getExistingMap(WorldEditPlugin.getInstance(), player) : new ConcurrentHashMap<>());
|
super(player != null ? getExistingMap(WorldEditPlugin.getInstance(), player) : new ConcurrentHashMap<>());
|
||||||
this.plugin = WorldEditPlugin.getInstance();
|
this.plugin = WorldEditPlugin.getInstance();
|
||||||
@ -97,14 +99,19 @@ public class BukkitPlayer extends AbstractPlayerActor {
|
|||||||
*
|
*
|
||||||
* @param plugin The running instance of {@link WorldEditPlugin}
|
* @param plugin The running instance of {@link WorldEditPlugin}
|
||||||
* @param player The corresponding {@link Player} or null if you need a null WorldEdit player for some reason.
|
* @param player The corresponding {@link Player} or null if you need a null WorldEdit player for some reason.
|
||||||
|
* @deprecated Players are cached by the plugin. Should use {@link WorldEditPlugin#wrapPlayer(Player)}
|
||||||
*/
|
*/
|
||||||
|
@Deprecated
|
||||||
public BukkitPlayer(@Nonnull WorldEditPlugin plugin, @Nullable Player player) {
|
public BukkitPlayer(@Nonnull WorldEditPlugin plugin, @Nullable Player player) {
|
||||||
this.plugin = plugin;
|
this.plugin = plugin;
|
||||||
this.player = player;
|
this.player = player;
|
||||||
//FAWE start
|
//FAWE start
|
||||||
this.permAttachment = plugin.getPermissionAttachmentManager().getOrAddAttachment(player);
|
this.permAttachment = plugin.getPermissionAttachmentManager().getOrAddAttachment(player);
|
||||||
if (player != null && Settings.IMP.CLIPBOARD.USE_DISK) {
|
if (player != null && Settings.IMP.CLIPBOARD.USE_DISK) {
|
||||||
loadClipboardFromDisk();
|
BukkitPlayer cached = WorldEditPlugin.getInstance().getCachedPlayer(player);
|
||||||
|
if (cached == null) {
|
||||||
|
loadClipboardFromDisk();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
//FAWE end
|
//FAWE end
|
||||||
}
|
}
|
||||||
|
@ -551,7 +551,7 @@ public class WorldEditPlugin extends JavaPlugin {
|
|||||||
}
|
}
|
||||||
|
|
||||||
//FAWE start
|
//FAWE start
|
||||||
public BukkitPlayer getCachedPlayer(Player player) {
|
BukkitPlayer getCachedPlayer(Player player) {
|
||||||
List<MetadataValue> meta = player.getMetadata("WE");
|
List<MetadataValue> meta = player.getMetadata("WE");
|
||||||
if (meta.isEmpty()) {
|
if (meta.isEmpty()) {
|
||||||
return null;
|
return null;
|
||||||
|
Laden…
In neuem Issue referenzieren
Einen Benutzer sperren