Improve marking vanish placeholder as used for features listening to vanish status change

This commit is contained in:
NEZNAMY committed 2023-04-02 13:46:20 +02:00
1 parent 0e2e9b9ae6
commit 32a39a361c
5 files changed
+4 -4

No files matched your search

@@ -1,5 +1,6 @@
package me.neznamy.tab.shared;
import java.util.Collections;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.UUID;
@@ -252,6 +253,9 @@ public class FeatureManager {
if (featureName == null || featureHandler == null) return;
features.put(featureName, featureHandler);
values = features.values().toArray(new TabFeature[0]);
if (featureHandler instanceof VanishListener) {
TAB.getInstance().getPlaceholderManager().addUsedPlaceholders(Collections.singletonList(TabConstants.Placeholder.VANISHED));
}
}
public void unregisterFeature(String featureName) {
@@ -128,7 +128,6 @@ public class PlayerList extends TabFeature implements TablistFormatManager, Join
@Override
public void load() {
TAB.getInstance().getPlaceholderManager().addUsedPlaceholders(Collections.singletonList(TabConstants.Placeholder.VANISHED));
redis = (RedisSupport) TAB.getInstance().getFeatureManager().getFeature(TabConstants.Feature.REDIS_BUNGEE);
for (TabPlayer all : TAB.getInstance().getOnlinePlayers()) {
updateProperties(all);
@@ -53,7 +53,6 @@ public class AlignedPlayerList extends PlayerList implements QuitListener {
@Override
public void load() {
TAB.getInstance().getPlaceholderManager().addUsedPlaceholders(Collections.singletonList(TabConstants.Placeholder.VANISHED));
for (TabPlayer all : TAB.getInstance().getOnlinePlayers()) {
updateProperties(all);
playerViews.put(all, new PlayerView(this, all));
@@ -36,7 +36,6 @@ public class GlobalPlayerList extends TabFeature implements JoinListener, QuitLi
TAB.getInstance().getPlaceholderManager().registerServerPlaceholder(TabConstants.Placeholder.globalPlayerListGroup(entry.getKey()), 1000,
() -> Arrays.stream(TAB.getInstance().getOnlinePlayers()).filter(p -> entry.getValue().contains(p.getServer()) && !p.isVanished()).count());
}
TAB.getInstance().getPlaceholderManager().addUsedPlaceholders(Collections.singletonList(TabConstants.Placeholder.VANISHED));
}
@Override
@@ -42,7 +42,6 @@ public class LayoutManager extends TabFeature implements JoinListener, QuitListe
@Override
public void load() {
playerList = (PlayerList) TAB.getInstance().getFeatureManager().getFeature(TabConstants.Feature.PLAYER_LIST);
TAB.getInstance().getPlaceholderManager().addUsedPlaceholders(Collections.singletonList(TabConstants.Placeholder.VANISHED));
TAB.getInstance().getFeatureManager().registerFeature(TabConstants.Feature.LAYOUT_LATENCY, new LayoutLatencyRefresher(this));
for (TabPlayer p : TAB.getInstance().getOnlinePlayers()) {
onJoin(p);