Tracks player scores by player UUID instead of name.
This commit is contained in:
2
TODO.md
2
TODO.md
@@ -1,6 +1,6 @@
|
|||||||
# Migration TODOs for Paper Modernization
|
# Migration TODOs for Paper Modernization
|
||||||
|
|
||||||
- [ ] Switch all player score storage to use UUID instead of Player as the key
|
- [x] Switch all player score storage to use UUID instead of Player as the key
|
||||||
- [ ] Update logger usage to use getLogger() from JavaPlugin
|
- [ ] Update logger usage to use getLogger() from JavaPlugin
|
||||||
- [ ] Remove or modernize any old/deprecated event registration (use @EventHandler and registerEvents)
|
- [ ] Remove or modernize any old/deprecated event registration (use @EventHandler and registerEvents)
|
||||||
- [ ] Review and update player lookup logic to use getPlayerExact or handle case sensitivity
|
- [ ] Review and update player lookup logic to use getPlayerExact or handle case sensitivity
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package com.majinnaibu.minecraft.plugins.scorekeeper;
|
|||||||
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.logging.Logger;
|
import java.util.logging.Logger;
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
import org.bukkit.plugin.PluginDescriptionFile;
|
import org.bukkit.plugin.PluginDescriptionFile;
|
||||||
@@ -14,7 +15,7 @@ import com.majinnaibu.minecraft.plugins.scorekeeper.commands.ScoreResetCommand;
|
|||||||
import com.majinnaibu.minecraft.plugins.scorekeeper.commands.ScoreSubtractCommand;
|
import com.majinnaibu.minecraft.plugins.scorekeeper.commands.ScoreSubtractCommand;
|
||||||
|
|
||||||
public class ScoreKeeperPlugin extends JavaPlugin {
|
public class ScoreKeeperPlugin extends JavaPlugin {
|
||||||
private final HashMap<Player, Integer> _playerScores = new HashMap<Player, Integer>();
|
private final HashMap<UUID, Integer> _playerScores = new HashMap<UUID, Integer>();
|
||||||
|
|
||||||
public final Logger log = Logger.getLogger("Minecraft");
|
public final Logger log = Logger.getLogger("Minecraft");
|
||||||
|
|
||||||
@@ -41,21 +42,24 @@ public class ScoreKeeperPlugin extends JavaPlugin {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public int getPlayerScore(Player player) {
|
public int getPlayerScore(Player player) {
|
||||||
if(!_playerScores.containsKey(player)){
|
UUID uuid = player.getUniqueId();
|
||||||
_playerScores.put(player, 0);
|
if(!_playerScores.containsKey(uuid)){
|
||||||
|
_playerScores.put(uuid, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
return _playerScores.get(player);
|
return _playerScores.get(uuid);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void addScore(Player player, int amount) {
|
public void addScore(Player player, int amount) {
|
||||||
|
UUID uuid = player.getUniqueId();
|
||||||
int score = getPlayerScore(player);
|
int score = getPlayerScore(player);
|
||||||
_playerScores.put(player, score + amount);
|
_playerScores.put(uuid, score + amount);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void subtractScore(Player player, int amount) {
|
public void subtractScore(Player player, int amount) {
|
||||||
|
UUID uuid = player.getUniqueId();
|
||||||
int score = getPlayerScore(player);
|
int score = getPlayerScore(player);
|
||||||
_playerScores.put(player, score - amount);
|
_playerScores.put(uuid, score - amount);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void resetPlayerScore(Player targetPlayer) {
|
public void resetPlayerScore(Player targetPlayer) {
|
||||||
|
|||||||
Reference in New Issue
Block a user