Skip to content

Commit 2bc48e1

Browse files
committed
Undo previous fix, add new placeholder for returning user's current nickname. Also adds cache so that papi isn't just, constantly reading the yml
1 parent dab5424 commit 2bc48e1

File tree

8 files changed

+52
-56
lines changed

8 files changed

+52
-56
lines changed

src/main/java/simplexity/simplenicks/SimpleNicks.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616
import simplexity.simplenicks.listener.LoginListener;
1717
import simplexity.simplenicks.util.Constants;
1818
import simplexity.simplenicks.util.NickHandler;
19-
import simplexity.simplenicks.util.PacketStuff;
2019
import simplexity.simplenicks.util.SNExpansion;
2120

2221
import java.util.Collections;
@@ -52,9 +51,6 @@ public void onEnable() {
5251
if (this.getServer().getPluginManager().isPluginEnabled("PlaceholderAPI")) {
5352
new SNExpansion().register();
5453
}
55-
if (this.getServer().getPluginManager().isPluginEnabled("floodgate")) {
56-
PacketStuff.registerPacketStuff();
57-
}
5854
instance.getServer().getPluginManager().registerEvents(new LoginListener(), this);
5955
configReload();
6056
}
Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,24 @@
11
package simplexity.simplenicks.listener;
22

33
import org.bukkit.Bukkit;
4+
import org.bukkit.entity.Player;
45
import org.bukkit.event.EventHandler;
56
import org.bukkit.event.EventPriority;
67
import org.bukkit.event.Listener;
78
import org.bukkit.event.player.PlayerJoinEvent;
89
import simplexity.simplenicks.SimpleNicks;
10+
import simplexity.simplenicks.util.Cache;
911
import simplexity.simplenicks.util.NickHandler;
1012

1113
public class LoginListener implements Listener {
1214
@EventHandler(priority = EventPriority.LOWEST, ignoreCancelled = true)
1315
public void onPlayerLogin(PlayerJoinEvent joinEvent) {
14-
Bukkit.getScheduler().runTaskLater(SimpleNicks.getInstance(), () ->
15-
NickHandler.getInstance().refreshNickname(joinEvent.getPlayer()), 20L);
16+
Bukkit.getScheduler().runTaskLater(SimpleNicks.getInstance(), () -> {
17+
Player player = joinEvent.getPlayer();
18+
String nickname = NickHandler.getInstance().loadNickname(player);
19+
if (nickname == null || nickname.isEmpty()) return;
20+
Cache.nicknameCache.put(player.getUniqueId(), nickname);
21+
NickHandler.getInstance().refreshNickname(joinEvent.getPlayer());
22+
}, 20L);
1623
}
1724
}

src/main/java/simplexity/simplenicks/listener/NamePacketListener.java

Lines changed: 0 additions & 38 deletions
This file was deleted.
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
package simplexity.simplenicks.listener;
2+
3+
import org.bukkit.entity.Player;
4+
import org.bukkit.event.EventHandler;
5+
import org.bukkit.event.Listener;
6+
import org.bukkit.event.player.PlayerQuitEvent;
7+
import simplexity.simplenicks.util.Cache;
8+
9+
public class QuitListener implements Listener {
10+
11+
@EventHandler
12+
public void onPlayerQuit(PlayerQuitEvent quitEvent) {
13+
Player player = quitEvent.getPlayer();
14+
Cache.nicknameCache.remove(player.getUniqueId());
15+
}
16+
}
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
package simplexity.simplenicks.util;
2+
3+
import java.util.HashMap;
4+
import java.util.UUID;
5+
6+
public class Cache {
7+
// a;lskdjf;laskjdf
8+
public static final HashMap<UUID, String> nicknameCache = new HashMap<>();
9+
}

src/main/java/simplexity/simplenicks/util/NickHandler.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,17 +30,23 @@ public static NickHandler getInstance() {
3030
}
3131

3232
public String getNickname(OfflinePlayer player) {
33+
return Cache.nicknameCache.get(player.getUniqueId());
34+
}
35+
36+
public String loadNickname(OfflinePlayer player){
3337
return saveHandler.getNickname(player);
3438
}
3539

3640
public boolean setNickname(OfflinePlayer player, String nickname) {
3741
if (!saveHandler.setNickname(player, nickname)) return false;
42+
Cache.nicknameCache.put(player.getUniqueId(), nickname);
3843
refreshNickname(player);
3944
return true;
4045
}
4146

4247
public boolean resetNickname(OfflinePlayer player) {
4348
if (!saveHandler.resetNickname(player)) return false;
49+
Cache.nicknameCache.remove(player.getUniqueId());
4450
refreshNickname(player);
4551
return true;
4652
}

src/main/java/simplexity/simplenicks/util/PacketStuff.java

Lines changed: 0 additions & 11 deletions
This file was deleted.

src/main/java/simplexity/simplenicks/util/SNExpansion.java

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,11 @@
11
package simplexity.simplenicks.util;
22

33
import me.clip.placeholderapi.expansion.PlaceholderExpansion;
4+
import net.kyori.adventure.text.Component;
5+
import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer;
46
import org.bukkit.OfflinePlayer;
57
import org.jetbrains.annotations.NotNull;
8+
import simplexity.simplenicks.SimpleNicks;
69

710
public class SNExpansion extends PlaceholderExpansion {
811
@Override
@@ -17,7 +20,7 @@ public class SNExpansion extends PlaceholderExpansion {
1720

1821
@Override
1922
public @NotNull String getVersion() {
20-
return "1.0.0";
23+
return "2.0.0";
2124
}
2225

2326
@Override
@@ -34,6 +37,14 @@ public String onRequest(OfflinePlayer player, @NotNull String params) {
3437
}
3538
return player.getName();
3639
}
40+
if (params.equalsIgnoreCase("nickname")) {
41+
String nickname = NickHandler.getInstance().getNickname(player);
42+
if (nickname == null) {
43+
return player.getName();
44+
}
45+
Component parsedNick = SimpleNicks.getMiniMessage().deserialize(nickname);
46+
return LegacyComponentSerializer.legacySection().serialize(parsedNick);
47+
}
3748
return null;
3849
}
3950
}

0 commit comments

Comments
 (0)