mirror of
https://github.com/plexusorg/Plex.git
synced 2024-12-22 17:17:37 +00:00
A bit more work on the API
This commit is contained in:
parent
7fe28ae8cb
commit
7efa151157
11
api/src/main/java/dev/plex/api/IPlayerCache.java
Normal file
11
api/src/main/java/dev/plex/api/IPlayerCache.java
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
package dev.plex.api;
|
||||||
|
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
|
public interface IPlayerCache<T>
|
||||||
|
{
|
||||||
|
Map<UUID, T> getPlexPlayerMap();
|
||||||
|
|
||||||
|
T getPlexPlayer(UUID uuid);
|
||||||
|
}
|
6
api/src/main/java/dev/plex/api/PlexApi.java
Normal file
6
api/src/main/java/dev/plex/api/PlexApi.java
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
package dev.plex.api;
|
||||||
|
|
||||||
|
public interface PlexApi
|
||||||
|
{
|
||||||
|
IPlayerCache<?> getPlayerCache();
|
||||||
|
}
|
6
api/src/main/java/dev/plex/api/PlexApiProvider.java
Normal file
6
api/src/main/java/dev/plex/api/PlexApiProvider.java
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
package dev.plex.api;
|
||||||
|
|
||||||
|
public interface PlexApiProvider
|
||||||
|
{
|
||||||
|
PlexApi getApi();
|
||||||
|
}
|
@ -4,7 +4,7 @@ import net.kyori.adventure.text.Component;
|
|||||||
import net.kyori.adventure.text.format.NamedTextColor;
|
import net.kyori.adventure.text.format.NamedTextColor;
|
||||||
import org.json.JSONObject;
|
import org.json.JSONObject;
|
||||||
|
|
||||||
public interface IRank
|
public interface IRank<T>
|
||||||
{
|
{
|
||||||
int getLevel();
|
int getLevel();
|
||||||
|
|
||||||
@ -20,7 +20,7 @@ public interface IRank
|
|||||||
|
|
||||||
NamedTextColor getColor();
|
NamedTextColor getColor();
|
||||||
|
|
||||||
boolean isAtLeast(IRank rank);
|
boolean isAtLeast(T rank);
|
||||||
|
|
||||||
JSONObject toJSON();
|
JSONObject toJSON();
|
||||||
}
|
}
|
||||||
|
@ -2,7 +2,8 @@ package dev.plex;
|
|||||||
|
|
||||||
import dev.plex.admin.Admin;
|
import dev.plex.admin.Admin;
|
||||||
import dev.plex.admin.AdminList;
|
import dev.plex.admin.AdminList;
|
||||||
import dev.plex.api.permission.IPermissionHandler;
|
import dev.plex.api.PlexApi;
|
||||||
|
import dev.plex.api.PlexApiProvider;
|
||||||
import dev.plex.api.plugin.PlexPlugin;
|
import dev.plex.api.plugin.PlexPlugin;
|
||||||
import dev.plex.cache.DataUtils;
|
import dev.plex.cache.DataUtils;
|
||||||
import dev.plex.cache.PlayerCache;
|
import dev.plex.cache.PlayerCache;
|
||||||
@ -36,15 +37,12 @@ import dev.plex.world.CustomWorld;
|
|||||||
import java.io.File;
|
import java.io.File;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
import net.milkbowl.vault.chat.Chat;
|
|
||||||
import net.milkbowl.vault.permission.Permission;
|
|
||||||
import org.bstats.bukkit.Metrics;
|
import org.bstats.bukkit.Metrics;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.plugin.RegisteredServiceProvider;
|
|
||||||
|
|
||||||
@Getter
|
@Getter
|
||||||
@Setter
|
@Setter
|
||||||
public class Plex extends PlexPlugin
|
public class Plex extends PlexPlugin implements PlexApiProvider
|
||||||
{
|
{
|
||||||
private static Plex plugin;
|
private static Plex plugin;
|
||||||
|
|
||||||
@ -53,6 +51,8 @@ public class Plex extends PlexPlugin
|
|||||||
public Config indefBans;
|
public Config indefBans;
|
||||||
public Config commands;
|
public Config commands;
|
||||||
|
|
||||||
|
private PlexProvider provider;
|
||||||
|
|
||||||
public File modulesFolder;
|
public File modulesFolder;
|
||||||
private StorageType storageType = StorageType.SQLITE;
|
private StorageType storageType = StorageType.SQLITE;
|
||||||
|
|
||||||
@ -62,6 +62,8 @@ public class Plex extends PlexPlugin
|
|||||||
private MongoConnection mongoConnection;
|
private MongoConnection mongoConnection;
|
||||||
private RedisConnection redisConnection;
|
private RedisConnection redisConnection;
|
||||||
|
|
||||||
|
private PlayerCache playerCache;
|
||||||
|
|
||||||
private MongoPlayerData mongoPlayerData;
|
private MongoPlayerData mongoPlayerData;
|
||||||
private SQLPlayerData sqlPlayerData;
|
private SQLPlayerData sqlPlayerData;
|
||||||
|
|
||||||
@ -114,6 +116,7 @@ public class Plex extends PlexPlugin
|
|||||||
{
|
{
|
||||||
config.load();
|
config.load();
|
||||||
messages.load();
|
messages.load();
|
||||||
|
|
||||||
// Don't add default entries to indefinite ban file
|
// Don't add default entries to indefinite ban file
|
||||||
indefBans.load(false);
|
indefBans.load(false);
|
||||||
commands.load(false);
|
commands.load(false);
|
||||||
@ -212,6 +215,8 @@ public class Plex extends PlexPlugin
|
|||||||
}
|
}
|
||||||
this.getServer().getMessenger().registerOutgoingPluginChannel(this, "BungeeCord");
|
this.getServer().getMessenger().registerOutgoingPluginChannel(this, "BungeeCord");
|
||||||
|
|
||||||
|
|
||||||
|
provider = new PlexProvider();
|
||||||
moduleManager.enableModules();
|
moduleManager.enableModules();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -220,7 +225,7 @@ public class Plex extends PlexPlugin
|
|||||||
{
|
{
|
||||||
Bukkit.getOnlinePlayers().forEach(player ->
|
Bukkit.getOnlinePlayers().forEach(player ->
|
||||||
{
|
{
|
||||||
PlexPlayer plexPlayer = PlayerCache.getPlexPlayerMap().get(player.getUniqueId()); //get the player because it's literally impossible for them to not have an object
|
PlexPlayer plexPlayer = playerCache.getPlexPlayerMap().get(player.getUniqueId()); //get the player because it's literally impossible for them to not have an object
|
||||||
|
|
||||||
if (plugin.getRankManager().isAdmin(plexPlayer))
|
if (plugin.getRankManager().isAdmin(plexPlayer))
|
||||||
{
|
{
|
||||||
@ -262,7 +267,7 @@ public class Plex extends PlexPlugin
|
|||||||
Bukkit.getOnlinePlayers().forEach(player ->
|
Bukkit.getOnlinePlayers().forEach(player ->
|
||||||
{
|
{
|
||||||
PlexPlayer plexPlayer = DataUtils.getPlayer(player.getUniqueId());
|
PlexPlayer plexPlayer = DataUtils.getPlayer(player.getUniqueId());
|
||||||
PlayerCache.getPlexPlayerMap().put(player.getUniqueId(), plexPlayer); //put them into the cache
|
playerCache.getPlexPlayerMap().put(player.getUniqueId(), plexPlayer); //put them into the cache
|
||||||
if (plugin.getRankManager().isAdmin(plexPlayer))
|
if (plugin.getRankManager().isAdmin(plexPlayer))
|
||||||
{
|
{
|
||||||
Admin admin = new Admin(plexPlayer.getUuid());
|
Admin admin = new Admin(plexPlayer.getUuid());
|
||||||
@ -272,4 +277,10 @@ public class Plex extends PlexPlugin
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public PlexApi getApi()
|
||||||
|
{
|
||||||
|
return provider;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
14
server/src/main/java/dev/plex/PlexProvider.java
Normal file
14
server/src/main/java/dev/plex/PlexProvider.java
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
package dev.plex;
|
||||||
|
|
||||||
|
import dev.plex.api.IPlayerCache;
|
||||||
|
import dev.plex.api.PlexApi;
|
||||||
|
import dev.plex.player.PlexPlayer;
|
||||||
|
|
||||||
|
public class PlexProvider implements PlexApi
|
||||||
|
{
|
||||||
|
@Override
|
||||||
|
public IPlayerCache<PlexPlayer> getPlayerCache()
|
||||||
|
{
|
||||||
|
return Plex.get().getPlayerCache();
|
||||||
|
}
|
||||||
|
}
|
@ -55,9 +55,9 @@ public class DataUtils
|
|||||||
|
|
||||||
public static PlexPlayer getPlayer(UUID uuid, boolean loadExtraData)
|
public static PlexPlayer getPlayer(UUID uuid, boolean loadExtraData)
|
||||||
{
|
{
|
||||||
if (PlayerCache.getPlexPlayerMap().containsKey(uuid))
|
if (Plex.get().getPlayerCache().getPlexPlayerMap().containsKey(uuid))
|
||||||
{
|
{
|
||||||
return PlayerCache.getPlexPlayerMap().get(uuid);
|
return Plex.get().getPlayerCache().getPlexPlayerMap().get(uuid);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Plex.get().getStorageType() == StorageType.MONGODB)
|
if (Plex.get().getStorageType() == StorageType.MONGODB)
|
||||||
@ -77,7 +77,7 @@ public class DataUtils
|
|||||||
|
|
||||||
public static PlexPlayer getPlayer(String username, boolean loadExtraData)
|
public static PlexPlayer getPlayer(String username, boolean loadExtraData)
|
||||||
{
|
{
|
||||||
Optional<PlexPlayer> plexPlayer = PlayerCache.getPlexPlayerMap().values().stream().filter(player -> player.getName().equalsIgnoreCase(username)).findFirst();
|
Optional<PlexPlayer> plexPlayer = Plex.get().getPlayerCache().getPlexPlayerMap().values().stream().filter(player -> player.getName().equalsIgnoreCase(username)).findFirst();
|
||||||
if (plexPlayer.isPresent())
|
if (plexPlayer.isPresent())
|
||||||
{
|
{
|
||||||
return plexPlayer.get();
|
return plexPlayer.get();
|
||||||
@ -102,7 +102,7 @@ public class DataUtils
|
|||||||
*/
|
*/
|
||||||
public static PlexPlayer getPlayerByIP(String ip)
|
public static PlexPlayer getPlayerByIP(String ip)
|
||||||
{
|
{
|
||||||
PlexPlayer player = PlayerCache.getPlexPlayerMap().values().stream().filter(plexPlayer -> plexPlayer.getIps().contains(ip)).findFirst().orElse(null);
|
PlexPlayer player = Plex.get().getPlayerCache().getPlexPlayerMap().values().stream().filter(plexPlayer -> plexPlayer.getIps().contains(ip)).findFirst().orElse(null);
|
||||||
if (player != null)
|
if (player != null)
|
||||||
{
|
{
|
||||||
return player;
|
return player;
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
package dev.plex.cache;
|
package dev.plex.cache;
|
||||||
|
|
||||||
import com.google.common.collect.Maps;
|
import com.google.common.collect.Maps;
|
||||||
|
import dev.plex.api.IPlayerCache;
|
||||||
import dev.plex.player.PlexPlayer;
|
import dev.plex.player.PlexPlayer;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
@ -9,7 +10,7 @@ import java.util.UUID;
|
|||||||
* Cache storage
|
* Cache storage
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public class PlayerCache
|
public class PlayerCache implements IPlayerCache<PlexPlayer>
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* A key/value pair where the key is the unique ID of the Plex Player
|
* A key/value pair where the key is the unique ID of the Plex Player
|
||||||
@ -25,7 +26,7 @@ public class PlayerCache
|
|||||||
// {
|
// {
|
||||||
// return punishedPlayerMap;
|
// return punishedPlayerMap;
|
||||||
// }
|
// }
|
||||||
public static Map<UUID, PlexPlayer> getPlexPlayerMap()
|
public Map<UUID, PlexPlayer> getPlexPlayerMap()
|
||||||
{
|
{
|
||||||
return plexPlayerMap;
|
return plexPlayerMap;
|
||||||
}
|
}
|
||||||
@ -39,7 +40,7 @@ public class PlayerCache
|
|||||||
return getPunishedPlayerMap().get(uuid);
|
return getPunishedPlayerMap().get(uuid);
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
public static PlexPlayer getPlexPlayer(UUID uuid)
|
public PlexPlayer getPlexPlayer(UUID uuid)
|
||||||
{
|
{
|
||||||
return getPlexPlayerMap().get(uuid);
|
return getPlexPlayerMap().get(uuid);
|
||||||
}
|
}
|
||||||
|
@ -131,7 +131,7 @@ public abstract class PlexCommand extends Command implements PluginIdentifiableC
|
|||||||
|
|
||||||
if (sender instanceof Player player)
|
if (sender instanceof Player player)
|
||||||
{
|
{
|
||||||
PlexPlayer plexPlayer = PlayerCache.getPlexPlayerMap().get(player.getUniqueId());
|
PlexPlayer plexPlayer = plugin.getPlayerCache().getPlexPlayerMap().get(player.getUniqueId());
|
||||||
|
|
||||||
if (plugin.getSystem().equalsIgnoreCase("ranks"))
|
if (plugin.getSystem().equalsIgnoreCase("ranks"))
|
||||||
{
|
{
|
||||||
@ -587,7 +587,7 @@ public abstract class PlexCommand extends Command implements PluginIdentifiableC
|
|||||||
protected PlexPlayer getOnlinePlexPlayer(String name)
|
protected PlexPlayer getOnlinePlexPlayer(String name)
|
||||||
{
|
{
|
||||||
Player player = getNonNullPlayer(name);
|
Player player = getNonNullPlayer(name);
|
||||||
PlexPlayer plexPlayer = PlayerCache.getPlexPlayer(player.getUniqueId());
|
PlexPlayer plexPlayer = plugin.getPlayerCache().getPlexPlayer(player.getUniqueId());
|
||||||
if (plexPlayer == null)
|
if (plexPlayer == null)
|
||||||
{
|
{
|
||||||
throw new PlayerNotFoundException();
|
throw new PlayerNotFoundException();
|
||||||
|
@ -38,7 +38,7 @@ public class AdminChatCMD extends PlexCommand
|
|||||||
{
|
{
|
||||||
if (plugin.getSystem().equalsIgnoreCase("ranks"))
|
if (plugin.getSystem().equalsIgnoreCase("ranks"))
|
||||||
{
|
{
|
||||||
PlexPlayer plexPlayer = PlayerCache.getPlexPlayerMap().get(player.getUniqueId());
|
PlexPlayer plexPlayer = plugin.getPlayerCache().getPlexPlayerMap().get(player.getUniqueId());
|
||||||
if (plexPlayer.getRankFromString().isAtLeast(Rank.ADMIN) && plexPlayer.isAdminActive())
|
if (plexPlayer.getRankFromString().isAtLeast(Rank.ADMIN) && plexPlayer.isAdminActive())
|
||||||
{
|
{
|
||||||
player.sendMessage(PlexUtils.messageComponent("adminChatFormat", sender.getName(), message));
|
player.sendMessage(PlexUtils.messageComponent("adminChatFormat", sender.getName(), message));
|
||||||
|
@ -42,7 +42,7 @@ public class ChatListener extends PlexListener
|
|||||||
@Override
|
@Override
|
||||||
public void doChat(AsyncChatEvent event)
|
public void doChat(AsyncChatEvent event)
|
||||||
{
|
{
|
||||||
PlexPlayer plexPlayer = PlayerCache.getPlexPlayerMap().get(event.getPlayer().getUniqueId());
|
PlexPlayer plexPlayer = plugin.getPlayerCache().getPlexPlayerMap().get(event.getPlayer().getUniqueId());
|
||||||
Component prefix = plugin.getRankManager().getPrefix(plexPlayer);
|
Component prefix = plugin.getRankManager().getPrefix(plexPlayer);
|
||||||
|
|
||||||
if (prefix != null)
|
if (prefix != null)
|
||||||
|
@ -25,7 +25,7 @@ public class CommandListener extends PlexListener
|
|||||||
@EventHandler(priority = EventPriority.HIGHEST)
|
@EventHandler(priority = EventPriority.HIGHEST)
|
||||||
public void onPlayerCommandPreprocess(PlayerCommandPreprocessEvent event)
|
public void onPlayerCommandPreprocess(PlayerCommandPreprocessEvent event)
|
||||||
{
|
{
|
||||||
Bukkit.getOnlinePlayers().stream().filter(pl -> PlayerCache.getPlexPlayer(pl.getUniqueId()).isCommandSpy() && PlayerCache.getPlexPlayer(pl.getUniqueId()).isAdminActive()).forEach(pl ->
|
Bukkit.getOnlinePlayers().stream().filter(pl -> plugin.getPlayerCache().getPlexPlayer(pl.getUniqueId()).isCommandSpy() && plugin.getPlayerCache().getPlexPlayer(pl.getUniqueId()).isAdminActive()).forEach(pl ->
|
||||||
{
|
{
|
||||||
Player player = event.getPlayer();
|
Player player = event.getPlayer();
|
||||||
String command = event.getMessage();
|
String command = event.getMessage();
|
||||||
@ -103,13 +103,11 @@ public class CommandListener extends PlexListener
|
|||||||
BlockedCommand cmd = cmdRef.get();
|
BlockedCommand cmd = cmdRef.get();
|
||||||
switch (cmd.getRequiredLevel().toLowerCase(Locale.ROOT))
|
switch (cmd.getRequiredLevel().toLowerCase(Locale.ROOT))
|
||||||
{
|
{
|
||||||
case "e" ->
|
case "e" -> {
|
||||||
{
|
|
||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
event.getPlayer().sendMessage(cmd.getMessage());
|
event.getPlayer().sendMessage(cmd.getMessage());
|
||||||
}
|
}
|
||||||
case "a" ->
|
case "a" -> {
|
||||||
{
|
|
||||||
if (plexPlayer.isAdminActive() && plexPlayer.getRankFromString().isAtLeast(Rank.ADMIN))
|
if (plexPlayer.isAdminActive() && plexPlayer.getRankFromString().isAtLeast(Rank.ADMIN))
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
@ -117,8 +115,7 @@ public class CommandListener extends PlexListener
|
|||||||
event.setCancelled(true);
|
event.setCancelled(true);
|
||||||
event.getPlayer().sendMessage(cmd.getMessage());
|
event.getPlayer().sendMessage(cmd.getMessage());
|
||||||
}
|
}
|
||||||
case "s" ->
|
case "s" -> {
|
||||||
{
|
|
||||||
if (plexPlayer.isAdminActive() && plexPlayer.getRankFromString().isAtLeast(Rank.SENIOR_ADMIN))
|
if (plexPlayer.isAdminActive() && plexPlayer.getRankFromString().isAtLeast(Rank.SENIOR_ADMIN))
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
|
@ -69,7 +69,7 @@ public class PlayerListener<T> extends PlexListener
|
|||||||
DataUtils.update(plexPlayer);
|
DataUtils.update(plexPlayer);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
PlayerCache.getPlexPlayerMap().put(player.getUniqueId(), plexPlayer);
|
plugin.getPlayerCache().getPlexPlayerMap().put(player.getUniqueId(), plexPlayer);
|
||||||
if (plexPlayer.isLockedUp())
|
if (plexPlayer.isLockedUp())
|
||||||
{
|
{
|
||||||
player.openInventory(player.getInventory());
|
player.openInventory(player.getInventory());
|
||||||
@ -108,7 +108,7 @@ public class PlayerListener<T> extends PlexListener
|
|||||||
@EventHandler(priority = EventPriority.HIGHEST)
|
@EventHandler(priority = EventPriority.HIGHEST)
|
||||||
public void onPlayerSave(PlayerQuitEvent event)
|
public void onPlayerSave(PlayerQuitEvent event)
|
||||||
{
|
{
|
||||||
PlexPlayer plexPlayer = PlayerCache.getPlexPlayerMap().get(event.getPlayer().getUniqueId()); //get the player because it's literally impossible for them to not have an object
|
PlexPlayer plexPlayer = plugin.getPlayerCache().getPlexPlayerMap().get(event.getPlayer().getUniqueId()); //get the player because it's literally impossible for them to not have an object
|
||||||
|
|
||||||
if (plugin.getRankManager().isAdmin(plexPlayer))
|
if (plugin.getRankManager().isAdmin(plexPlayer))
|
||||||
{
|
{
|
||||||
@ -116,7 +116,7 @@ public class PlayerListener<T> extends PlexListener
|
|||||||
}
|
}
|
||||||
|
|
||||||
DataUtils.update(plexPlayer);
|
DataUtils.update(plexPlayer);
|
||||||
PlayerCache.getPlexPlayerMap().remove(event.getPlayer().getUniqueId()); //remove them from cache
|
plugin.getPlayerCache().getPlexPlayerMap().remove(event.getPlayer().getUniqueId()); //remove them from cache
|
||||||
}
|
}
|
||||||
|
|
||||||
@EventHandler(priority = EventPriority.HIGHEST)
|
@EventHandler(priority = EventPriority.HIGHEST)
|
||||||
|
@ -155,7 +155,7 @@ public class WorldListener extends PlexListener
|
|||||||
|
|
||||||
private boolean checkPermission(Player player, boolean showMessage)
|
private boolean checkPermission(Player player, boolean showMessage)
|
||||||
{
|
{
|
||||||
PlexPlayer plexPlayer = PlayerCache.getPlexPlayerMap().get(player.getUniqueId());
|
PlexPlayer plexPlayer = plugin.getPlayerCache().getPlexPlayerMap().get(player.getUniqueId());
|
||||||
World world = player.getWorld();
|
World world = player.getWorld();
|
||||||
if (plugin.getSystem().equalsIgnoreCase("permissions"))
|
if (plugin.getSystem().equalsIgnoreCase("permissions"))
|
||||||
{
|
{
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
package dev.plex.menu;
|
package dev.plex.menu;
|
||||||
|
|
||||||
import com.google.common.collect.Lists;
|
import com.google.common.collect.Lists;
|
||||||
|
import dev.plex.Plex;
|
||||||
import dev.plex.cache.DataUtils;
|
import dev.plex.cache.DataUtils;
|
||||||
import dev.plex.cache.PlayerCache;
|
import dev.plex.cache.PlayerCache;
|
||||||
import dev.plex.player.PlexPlayer;
|
import dev.plex.player.PlexPlayer;
|
||||||
@ -164,7 +165,7 @@ public class PunishedPlayerMenu extends AbstractMenu
|
|||||||
SkullMeta meta = (SkullMeta)item.getItemMeta();
|
SkullMeta meta = (SkullMeta)item.getItemMeta();
|
||||||
OfflinePlayer player = meta.getOwningPlayer();
|
OfflinePlayer player = meta.getOwningPlayer();
|
||||||
assert player != null;
|
assert player != null;
|
||||||
PlexPlayer punishedPlayer = DataUtils.getPlayer(player.getUniqueId()) == null ? null : PlayerCache.getPlexPlayer(player.getUniqueId());
|
PlexPlayer punishedPlayer = DataUtils.getPlayer(player.getUniqueId()) == null ? null : Plex.get().getPlayerCache().getPlexPlayer(player.getUniqueId());
|
||||||
if (punishedPlayer == null)
|
if (punishedPlayer == null)
|
||||||
{
|
{
|
||||||
event.getWhoClicked().sendMessage(ChatColor.RED + "This player does not exist. Try doing /punishments <player> instead.");
|
event.getWhoClicked().sendMessage(ChatColor.RED + "This player does not exist. Try doing /punishments <player> instead.");
|
||||||
|
@ -9,7 +9,7 @@ import net.kyori.adventure.text.format.NamedTextColor;
|
|||||||
import org.json.JSONObject;
|
import org.json.JSONObject;
|
||||||
|
|
||||||
@Getter
|
@Getter
|
||||||
public enum Rank implements IRank
|
public enum Rank implements IRank<Rank>
|
||||||
{
|
{
|
||||||
IMPOSTOR(-1, "<aqua>an <yellow>Impostor<reset>", "Impostor", "<dark_gray>[<yellow>Imp<dark_gray>]", NamedTextColor.YELLOW),
|
IMPOSTOR(-1, "<aqua>an <yellow>Impostor<reset>", "Impostor", "<dark_gray>[<yellow>Imp<dark_gray>]", NamedTextColor.YELLOW),
|
||||||
NONOP(0, "a <white>Non-Op<reset>", "Non-Op", "", NamedTextColor.WHITE),
|
NONOP(0, "a <white>Non-Op<reset>", "Non-Op", "", NamedTextColor.WHITE),
|
||||||
@ -41,11 +41,6 @@ public enum Rank implements IRank
|
|||||||
this.color = color;
|
this.color = color;
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean isAtLeast(IRank rank)
|
|
||||||
{
|
|
||||||
return this.level >= rank.getLevel();
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isAtLeast(Rank rank)
|
public boolean isAtLeast(Rank rank)
|
||||||
{
|
{
|
||||||
return this.level >= rank.getLevel();
|
return this.level >= rank.getLevel();
|
||||||
|
@ -61,9 +61,9 @@ public class MongoPlayerData
|
|||||||
*/
|
*/
|
||||||
public PlexPlayer getByUUID(UUID uuid)
|
public PlexPlayer getByUUID(UUID uuid)
|
||||||
{
|
{
|
||||||
if (PlayerCache.getPlexPlayerMap().containsKey(uuid))
|
if (Plex.get().getPlayerCache().getPlexPlayerMap().containsKey(uuid))
|
||||||
{
|
{
|
||||||
return PlayerCache.getPlexPlayerMap().get(uuid);
|
return Plex.get().getPlayerCache().getPlexPlayerMap().get(uuid);
|
||||||
}
|
}
|
||||||
|
|
||||||
Query<PlexPlayer> query2 = datastore.find(PlexPlayer.class).filter(Filters.eq("uuid", uuid));
|
Query<PlexPlayer> query2 = datastore.find(PlexPlayer.class).filter(Filters.eq("uuid", uuid));
|
||||||
@ -72,7 +72,7 @@ public class MongoPlayerData
|
|||||||
|
|
||||||
public PlexPlayer getByName(String username)
|
public PlexPlayer getByName(String username)
|
||||||
{
|
{
|
||||||
PlexPlayer player = PlayerCache.getPlexPlayerMap().values().stream().filter(plexPlayer -> plexPlayer.getName().equalsIgnoreCase(username)).findFirst().orElse(null);
|
PlexPlayer player = Plex.get().getPlayerCache().getPlexPlayerMap().values().stream().filter(plexPlayer -> plexPlayer.getName().equalsIgnoreCase(username)).findFirst().orElse(null);
|
||||||
if (player != null)
|
if (player != null)
|
||||||
{
|
{
|
||||||
return player;
|
return player;
|
||||||
@ -91,7 +91,7 @@ public class MongoPlayerData
|
|||||||
*/
|
*/
|
||||||
public PlexPlayer getByIP(String ip)
|
public PlexPlayer getByIP(String ip)
|
||||||
{
|
{
|
||||||
PlexPlayer player = PlayerCache.getPlexPlayerMap().values().stream().filter(plexPlayer -> plexPlayer.getIps().contains(ip)).findFirst().orElse(null);
|
PlexPlayer player = Plex.get().getPlayerCache().getPlexPlayerMap().values().stream().filter(plexPlayer -> plexPlayer.getIps().contains(ip)).findFirst().orElse(null);
|
||||||
if (player != null)
|
if (player != null)
|
||||||
{
|
{
|
||||||
return player;
|
return player;
|
||||||
|
@ -70,9 +70,9 @@ public class SQLPlayerData
|
|||||||
*/
|
*/
|
||||||
public PlexPlayer getByUUID(UUID uuid, boolean loadExtraData)
|
public PlexPlayer getByUUID(UUID uuid, boolean loadExtraData)
|
||||||
{
|
{
|
||||||
if (PlayerCache.getPlexPlayerMap().containsKey(uuid))
|
if (Plex.get().getPlayerCache().getPlexPlayerMap().containsKey(uuid))
|
||||||
{
|
{
|
||||||
return PlayerCache.getPlexPlayerMap().get(uuid);
|
return Plex.get().getPlayerCache().getPlexPlayerMap().get(uuid);
|
||||||
}
|
}
|
||||||
|
|
||||||
try (Connection con = Plex.get().getSqlConnection().getCon())
|
try (Connection con = Plex.get().getSqlConnection().getCon())
|
||||||
@ -120,7 +120,7 @@ public class SQLPlayerData
|
|||||||
|
|
||||||
public PlexPlayer getByName(String username, boolean loadExtraData)
|
public PlexPlayer getByName(String username, boolean loadExtraData)
|
||||||
{
|
{
|
||||||
PlexPlayer player = PlayerCache.getPlexPlayerMap().values().stream().filter(plexPlayer -> plexPlayer.getName().equalsIgnoreCase(username)).findFirst().orElse(null);
|
PlexPlayer player = Plex.get().getPlayerCache().getPlexPlayerMap().values().stream().filter(plexPlayer -> plexPlayer.getName().equalsIgnoreCase(username)).findFirst().orElse(null);
|
||||||
if (player != null)
|
if (player != null)
|
||||||
{
|
{
|
||||||
return player;
|
return player;
|
||||||
@ -177,7 +177,7 @@ public class SQLPlayerData
|
|||||||
*/
|
*/
|
||||||
public PlexPlayer getByIP(String ip)
|
public PlexPlayer getByIP(String ip)
|
||||||
{
|
{
|
||||||
PlexPlayer player = PlayerCache.getPlexPlayerMap().values().stream().filter(plexPlayer -> plexPlayer.getIps().contains(ip)).findFirst().orElse(null);
|
PlexPlayer player = Plex.get().getPlayerCache().getPlexPlayerMap().values().stream().filter(plexPlayer -> plexPlayer.getIps().contains(ip)).findFirst().orElse(null);
|
||||||
if (player != null)
|
if (player != null)
|
||||||
{
|
{
|
||||||
return player;
|
return player;
|
||||||
|
@ -220,7 +220,7 @@ public class PlexUtils implements PlexBase
|
|||||||
|
|
||||||
public static void broadcastToAdmins(Component component)
|
public static void broadcastToAdmins(Component component)
|
||||||
{
|
{
|
||||||
Bukkit.getOnlinePlayers().stream().filter(pl -> PlayerCache.getPlexPlayer(pl.getUniqueId()).isAdminActive()).forEach(pl ->
|
Bukkit.getOnlinePlayers().stream().filter(pl -> plugin.getPlayerCache().getPlexPlayer(pl.getUniqueId()).isAdminActive()).forEach(pl ->
|
||||||
{
|
{
|
||||||
pl.sendMessage(component);
|
pl.sendMessage(component);
|
||||||
});
|
});
|
||||||
|
Loading…
Reference in New Issue
Block a user