SQL DB is a WIP

This commit is contained in:
ZeroEpoch1969
2020-05-29 03:14:21 -07:00
parent 43ee17807a
commit 4ddcc3b8d7
54 changed files with 961 additions and 604 deletions

View File

@ -19,4 +19,6 @@ public interface Displayable
public String getColoredLoginMessage();
public boolean hasTeam();
}

View File

@ -6,14 +6,14 @@ import org.bukkit.ChatColor;
public enum Rank implements Displayable
{
IMPOSTOR("an", "Impostor", Type.PLAYER, "Imp", ChatColor.YELLOW),
NON_OP("a", "Non-Op", Type.PLAYER, "", ChatColor.WHITE),
OP("an", "Op", Type.PLAYER, "OP", ChatColor.GREEN),
SUPER_ADMIN("a", "Super Admin", Type.ADMIN, "SA", ChatColor.AQUA),
TELNET_ADMIN("a", "Telnet Admin", Type.ADMIN, "STA", ChatColor.DARK_GREEN),
SENIOR_ADMIN("a", "Senior Admin", Type.ADMIN, "SrA", ChatColor.GOLD),
TELNET_CONSOLE("the", "Console", Type.ADMIN_CONSOLE, "Console", ChatColor.DARK_PURPLE),
SENIOR_CONSOLE("the", "Console", Type.ADMIN_CONSOLE, "Console", ChatColor.DARK_PURPLE);
IMPOSTOR("an", "Impostor", Type.PLAYER, "Imp", ChatColor.YELLOW, false),
NON_OP("a", "Non-Op", Type.PLAYER, "", ChatColor.WHITE, false),
OP("an", "Operator", Type.PLAYER, "OP", ChatColor.GREEN, false),
SUPER_ADMIN("a", "Super Admin", Type.ADMIN, "SA", ChatColor.AQUA, true),
TELNET_ADMIN("a", "Telnet Admin", Type.ADMIN, "STA", ChatColor.DARK_GREEN, true),
SENIOR_ADMIN("a", "Senior Admin", Type.ADMIN, "SrA", ChatColor.GOLD, true),
TELNET_CONSOLE("the", "Console", Type.ADMIN_CONSOLE, "Console", ChatColor.DARK_PURPLE, false),
SENIOR_CONSOLE("the", "Console", Type.ADMIN_CONSOLE, "Console", ChatColor.DARK_PURPLE, false);
@Getter
private final Type type;
@Getter
@ -27,8 +27,10 @@ public enum Rank implements Displayable
private final String coloredTag;
@Getter
private final ChatColor color;
@Getter
private final boolean hasTeam;
private Rank(String determiner, String name, Type type, String abbr, ChatColor color)
private Rank(String determiner, String name, Type type, String abbr, ChatColor color, Boolean hasTeam)
{
this.type = type;
this.name = name;
@ -37,6 +39,7 @@ public enum Rank implements Displayable
this.tag = abbr.isEmpty() ? "" : "[" + abbr + "]";
this.coloredTag = abbr.isEmpty() ? "" : ChatColor.DARK_GRAY + "[" + color + abbr + ChatColor.DARK_GRAY + "]" + color;
this.color = color;
this.hasTeam = hasTeam;
}
@Override
@ -51,6 +54,12 @@ public enum Rank implements Displayable
return determiner + " " + color + ChatColor.ITALIC + name;
}
@Override
public boolean hasTeam()
{
return hasTeam;
}
@Override
public String getAbbr()
{

View File

@ -6,6 +6,7 @@ import me.totalfreedom.totalfreedommod.admin.Admin;
import me.totalfreedom.totalfreedommod.config.ConfigEntry;
import me.totalfreedom.totalfreedommod.player.FPlayer;
import me.totalfreedom.totalfreedommod.playerverification.VPlayer;
import me.totalfreedom.totalfreedommod.util.FLog;
import me.totalfreedom.totalfreedommod.util.FUtil;
import net.pravian.aero.util.ChatUtils;
import org.apache.commons.lang.StringUtils;
@ -16,6 +17,8 @@ import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.scoreboard.Scoreboard;
import org.bukkit.scoreboard.Team;
public class RankManager extends FreedomService
{
@ -175,6 +178,7 @@ public class RankManager extends FreedomService
fPlayer.setTag(null);
player.setPlayerListName(null);
}
updatePlayerTeam(player);
plugin.pem.setPermissions(player);
}
@ -241,25 +245,8 @@ public class RankManager extends FreedomService
final Displayable display = getDisplay(player);
FUtil.bcastMsg(craftLoginMessage(player, null));
plugin.pl.getPlayer(player).setTag(display.getColoredTag());
if (isAdmin)
{
Admin admin = plugin.al.getAdmin(player);
if (admin.getTag() != null)
{
plugin.pl.getPlayer(player).setTag(FUtil.colorize(admin.getTag()));
}
}
String displayName = display.getColor() + player.getName();
try
{
player.setPlayerListName(StringUtils.substring(displayName, 0, 16));
}
catch (IllegalArgumentException ex)
{
}
updateDisplay(player);
}
if (!plugin.pv.isPlayerImpostor(player) && target.getEnabled())
@ -292,4 +279,28 @@ public class RankManager extends FreedomService
}
return loginMessage;
}
public void updatePlayerTeam(Player player)
{
FLog.info("Updating team data...");
Displayable display = getDisplay(player);
Scoreboard scoreboard = server.getScoreboardManager().getMainScoreboard();
Team team = scoreboard.getPlayerTeam(player);
if (team != null && !display.hasTeam())
{
FLog.info("Removing from team");
team.removePlayer(player);
return;
}
team = scoreboard.getTeam(display.toString());
if (team == null)
{
FLog.info("Creating team...");
team = scoreboard.registerNewTeam(display.toString());
FLog.info("Created team " + team.getName());
team.setColor(display.getColor());
}
team.addPlayer(player);
FLog.info("Added player to team");
}
}

View File

@ -6,12 +6,12 @@ import org.bukkit.ChatColor;
public enum Title implements Displayable
{
MASTER_BUILDER("a", "Master Builder", ChatColor.DARK_AQUA, "MB"),
VERIFIED_ADMIN("a", "Verified Admin", ChatColor.LIGHT_PURPLE, "VA"),
ASSISTANT_EXECUTIVE("an", "Assistant Executive", ChatColor.RED, "Asst Exec"),
EXECUTIVE("an", "Executive", ChatColor.RED, "Exec"),
DEVELOPER("a", "Developer", ChatColor.DARK_PURPLE, "Dev"),
OWNER("the", "Owner", ChatColor.DARK_RED, "Owner");
MASTER_BUILDER("a", "Master Builder", ChatColor.DARK_AQUA, "MB", false),
VERIFIED_ADMIN("a", "Verified Admin", ChatColor.LIGHT_PURPLE, "VA", false),
ASSISTANT_EXECUTIVE("an", "Assistant Executive", ChatColor.RED, "Asst Exec", false),
EXECUTIVE("an", "Executive", ChatColor.RED, "Exec", true),
DEVELOPER("a", "Developer", ChatColor.DARK_PURPLE, "Dev", true),
OWNER("the", "Owner", ChatColor.DARK_RED, "Owner", true);
private final String determiner;
@Getter
@ -24,8 +24,10 @@ public enum Title implements Displayable
private final String coloredTag;
@Getter
private final ChatColor color;
@Getter
private final boolean hasTeam;
private Title(String determiner, String name, ChatColor color, String tag)
private Title(String determiner, String name, ChatColor color, String tag, Boolean hasTeam)
{
this.determiner = determiner;
this.name = name;
@ -33,6 +35,7 @@ public enum Title implements Displayable
this.abbr = tag;
this.tag = "[" + tag + "]";
this.color = color;
this.hasTeam = hasTeam;
}
@Override
@ -41,6 +44,12 @@ public enum Title implements Displayable
return color + name;
}
@Override
public boolean hasTeam()
{
return hasTeam;
}
@Override
public String getColoredLoginMessage()
{