Tablist and Charakterlimit
This commit is contained in:
@@ -12,6 +12,7 @@ import de.spaffel.clans.commands.joinclan;
|
|||||||
import de.spaffel.clans.commands.setclancolor;
|
import de.spaffel.clans.commands.setclancolor;
|
||||||
import de.spaffel.clans.commands.utils.jsonutil;
|
import de.spaffel.clans.commands.utils.jsonutil;
|
||||||
import de.spaffel.clans.commands.utils.apicheck;
|
import de.spaffel.clans.commands.utils.apicheck;
|
||||||
|
import de.spaffel.clans.commands.utils.Tab;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.plugin.java.JavaPlugin;
|
import org.bukkit.plugin.java.JavaPlugin;
|
||||||
@@ -23,6 +24,7 @@ import java.io.IOException;
|
|||||||
import org.json.simple.JSONObject;
|
import org.json.simple.JSONObject;
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
|
|
||||||
|
import org.bukkit.plugin.Plugin;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
import net.luckperms.api.LuckPermsProvider;
|
import net.luckperms.api.LuckPermsProvider;
|
||||||
@@ -51,11 +53,37 @@ import org.bukkit.command.Command;
|
|||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
import org.bukkit.command.TabCompleter;
|
import org.bukkit.command.TabCompleter;
|
||||||
import org.bukkit.util.StringUtil;
|
import org.bukkit.util.StringUtil;
|
||||||
|
import java.util.concurrent.CopyOnWriteArrayList;
|
||||||
|
import net.luckperms.api.LuckPerms;
|
||||||
|
import net.luckperms.api.LuckPermsProvider;
|
||||||
|
import net.luckperms.api.model.group.Group;
|
||||||
|
import net.luckperms.api.model.user.User;
|
||||||
|
import org.bukkit.Bukkit;
|
||||||
|
import org.bukkit.OfflinePlayer;
|
||||||
|
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
import org.bukkit.plugin.Plugin;
|
||||||
|
import org.bukkit.plugin.PluginManager;
|
||||||
|
import org.bukkit.plugin.java.JavaPlugin;
|
||||||
|
import org.bukkit.scoreboard.DisplaySlot;
|
||||||
|
import org.bukkit.scoreboard.Objective;
|
||||||
|
import org.bukkit.scoreboard.Scoreboard;
|
||||||
|
import org.bukkit.scoreboard.Team;
|
||||||
|
|
||||||
public final class Clans extends JavaPlugin implements Listener {
|
public final class Clans extends JavaPlugin implements Listener {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public LuckPerms lp;
|
public LuckPerms lp;
|
||||||
|
static Clans plugin;
|
||||||
|
|
||||||
|
public static Clans getPlugin() {
|
||||||
|
return plugin;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onEnable() {
|
public void onEnable() {
|
||||||
|
|
||||||
if(apicheck.doGet() == true){
|
if(apicheck.doGet() == true){
|
||||||
// Plugin startup logic
|
// Plugin startup logic
|
||||||
getServer().getPluginManager().registerEvents(this, this);
|
getServer().getPluginManager().registerEvents(this, this);
|
||||||
@@ -73,8 +101,55 @@ public final class Clans extends JavaPlugin implements Listener {
|
|||||||
getCommand("leaveclan").setExecutor(new leaveclan());
|
getCommand("leaveclan").setExecutor(new leaveclan());
|
||||||
getCommand("joinclan").setExecutor(new joinclan());
|
getCommand("joinclan").setExecutor(new joinclan());
|
||||||
getCommand("setclancolor").setExecutor(new setclancolor());
|
getCommand("setclancolor").setExecutor(new setclancolor());
|
||||||
|
plugin = this;
|
||||||
|
PluginManager pm = Bukkit.getPluginManager();
|
||||||
|
Tab.update();
|
||||||
|
super.onEnable();
|
||||||
}}
|
}}
|
||||||
|
|
||||||
|
public static void update() {
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String getFromID(int id){
|
||||||
|
String c = "";
|
||||||
|
CopyOnWriteArrayList<String> abc = new CopyOnWriteArrayList<>();
|
||||||
|
abc.add("A");
|
||||||
|
abc.add("C");
|
||||||
|
abc.add("D");
|
||||||
|
abc.add("E");
|
||||||
|
abc.add("F");
|
||||||
|
abc.add("G");
|
||||||
|
abc.add("H");
|
||||||
|
abc.add("I");
|
||||||
|
abc.add("J");
|
||||||
|
abc.add("K");
|
||||||
|
abc.add("L");
|
||||||
|
abc.add("M");
|
||||||
|
abc.add("N");
|
||||||
|
abc.add("O");
|
||||||
|
abc.add("P");
|
||||||
|
abc.add("Q");
|
||||||
|
abc.add("R");
|
||||||
|
abc.add("S");
|
||||||
|
abc.add("T");
|
||||||
|
abc.add("U");
|
||||||
|
abc.add("V");
|
||||||
|
abc.add("W");
|
||||||
|
abc.add("X");
|
||||||
|
abc.add("Y");
|
||||||
|
abc.add("Z");
|
||||||
|
CopyOnWriteArrayList<String> copy = new CopyOnWriteArrayList<>();
|
||||||
|
for (String lul : abc) {
|
||||||
|
for (String s : abc)
|
||||||
|
copy.add("A" + lul + s);
|
||||||
|
}
|
||||||
|
c = copy.get(id);
|
||||||
|
return c;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onDisable() {
|
public void onDisable() {
|
||||||
// Plugin shutdown logic
|
// Plugin shutdown logic
|
||||||
@@ -82,10 +157,13 @@ public final class Clans extends JavaPlugin implements Listener {
|
|||||||
|
|
||||||
@EventHandler
|
@EventHandler
|
||||||
public void onPlayerJoin(PlayerJoinEvent event) {
|
public void onPlayerJoin(PlayerJoinEvent event) {
|
||||||
|
|
||||||
if(apicheck.doGet() == true) {
|
if(apicheck.doGet() == true) {
|
||||||
Bukkit.dispatchCommand(Bukkit.getConsoleSender(), "say Helllooow!" + event.getPlayer().getName());
|
Bukkit.dispatchCommand(Bukkit.getConsoleSender(), "say Helllooow!" + event.getPlayer().getName());
|
||||||
jsonutil.createPlayer(toString().valueOf(event.getPlayer().getUniqueId()));
|
jsonutil.createPlayer(toString().valueOf(event.getPlayer().getUniqueId()));
|
||||||
jsonutil.createuuidentry(toString().valueOf(event.getPlayer().getUniqueId()), event.getPlayer().getName());
|
jsonutil.createuuidentry(toString().valueOf(event.getPlayer().getUniqueId()), event.getPlayer().getName());
|
||||||
|
Tab.setPlayerteam(event.getPlayer(), toString().valueOf(event.getPlayer().getUniqueId()), event.getPlayer().getName() );
|
||||||
|
Clans.update();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,10 +1,13 @@
|
|||||||
package de.spaffel.clans.commands;
|
package de.spaffel.clans.commands;
|
||||||
|
|
||||||
|
import de.spaffel.clans.Clans;
|
||||||
|
import de.spaffel.clans.commands.utils.Tab;
|
||||||
import de.spaffel.clans.commands.utils.jsonutil;
|
import de.spaffel.clans.commands.utils.jsonutil;
|
||||||
import org.bukkit.ChatColor;
|
import org.bukkit.ChatColor;
|
||||||
import org.bukkit.command.Command;
|
import org.bukkit.command.Command;
|
||||||
import org.bukkit.command.CommandExecutor;
|
import org.bukkit.command.CommandExecutor;
|
||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
|
||||||
public class joinclan implements CommandExecutor {
|
public class joinclan implements CommandExecutor {
|
||||||
@Override
|
@Override
|
||||||
@@ -21,6 +24,8 @@ public class joinclan implements CommandExecutor {
|
|||||||
if (ans == "done"){
|
if (ans == "done"){
|
||||||
|
|
||||||
sender.sendMessage(ChatColor.GREEN + "You have joined the Clan " + name + "!");
|
sender.sendMessage(ChatColor.GREEN + "You have joined the Clan " + name + "!");
|
||||||
|
Tab.setPlayerteam((Player) sender, String.valueOf(jsonutil.getUUID(playername)), sender.getName());
|
||||||
|
Clans.update();
|
||||||
}else{
|
}else{
|
||||||
|
|
||||||
sender.sendMessage(ChatColor.RED + "Wrong Password");
|
sender.sendMessage(ChatColor.RED + "Wrong Password");
|
||||||
|
|||||||
@@ -1,10 +1,13 @@
|
|||||||
package de.spaffel.clans.commands;
|
package de.spaffel.clans.commands;
|
||||||
|
|
||||||
|
import de.spaffel.clans.Clans;
|
||||||
|
import de.spaffel.clans.commands.utils.Tab;
|
||||||
import de.spaffel.clans.commands.utils.jsonutil;
|
import de.spaffel.clans.commands.utils.jsonutil;
|
||||||
import org.bukkit.ChatColor;
|
import org.bukkit.ChatColor;
|
||||||
import org.bukkit.command.Command;
|
import org.bukkit.command.Command;
|
||||||
import org.bukkit.command.CommandExecutor;
|
import org.bukkit.command.CommandExecutor;
|
||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
|
||||||
public class leaveclan implements CommandExecutor {
|
public class leaveclan implements CommandExecutor {
|
||||||
@Override
|
@Override
|
||||||
@@ -14,6 +17,8 @@ public class leaveclan implements CommandExecutor {
|
|||||||
String uuid = leaderuuid;
|
String uuid = leaderuuid;
|
||||||
jsonutil.setClanId(uuid, "0");
|
jsonutil.setClanId(uuid, "0");
|
||||||
sender.sendMessage(ChatColor.GREEN + "You have left the Clan!");
|
sender.sendMessage(ChatColor.GREEN + "You have left the Clan!");
|
||||||
|
Tab.setPlayerteam((Player) sender, String.valueOf(jsonutil.getUUID(playername)), sender.getName());
|
||||||
|
Clans.update();
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,6 +2,8 @@ package de.spaffel.clans.commands;
|
|||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.net.URL;
|
import java.net.URL;
|
||||||
|
|
||||||
|
import de.spaffel.clans.Clans;
|
||||||
|
import de.spaffel.clans.commands.utils.Tab;
|
||||||
import de.spaffel.clans.commands.utils.jsonutil;
|
import de.spaffel.clans.commands.utils.jsonutil;
|
||||||
import org.bukkit.ChatColor;
|
import org.bukkit.ChatColor;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
@@ -10,14 +12,21 @@ import org.bukkit.Bukkit;
|
|||||||
import org.bukkit.command.Command;
|
import org.bukkit.command.Command;
|
||||||
import org.bukkit.command.CommandExecutor;
|
import org.bukkit.command.CommandExecutor;
|
||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
|
||||||
public class newclan implements CommandExecutor {
|
public class newclan implements CommandExecutor {
|
||||||
@Override
|
@Override
|
||||||
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
|
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
|
||||||
|
if(toString().valueOf(args[0]).length() > 12){
|
||||||
|
sender.sendMessage(ChatColor.RED + "Clanname cant be longer than 12 Charakters");
|
||||||
|
}else{
|
||||||
if (args.length == 2){
|
if (args.length == 2){
|
||||||
|
|
||||||
String name = toString().valueOf(args[0]);
|
String name = toString().valueOf(args[0]);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
String password = toString().valueOf(args[1]);
|
String password = toString().valueOf(args[1]);
|
||||||
String playername = sender.getName();
|
String playername = sender.getName();
|
||||||
String leaderuuid = String.valueOf(jsonutil.getUUID(playername));
|
String leaderuuid = String.valueOf(jsonutil.getUUID(playername));
|
||||||
@@ -25,6 +34,8 @@ public class newclan implements CommandExecutor {
|
|||||||
if (ans == "done"){
|
if (ans == "done"){
|
||||||
|
|
||||||
sender.sendMessage(ChatColor.GREEN + "You have created the Clan " + name + "!");
|
sender.sendMessage(ChatColor.GREEN + "You have created the Clan " + name + "!");
|
||||||
|
Tab.setPlayerteam((Player) sender, String.valueOf(jsonutil.getUUID(playername)), sender.getName());
|
||||||
|
Clans.update();
|
||||||
return true;
|
return true;
|
||||||
}else{
|
}else{
|
||||||
|
|
||||||
@@ -36,7 +47,7 @@ public class newclan implements CommandExecutor {
|
|||||||
}else {
|
}else {
|
||||||
|
|
||||||
sender.sendMessage(ChatColor.RED + "You need to write /newclan clanname password");
|
sender.sendMessage(ChatColor.RED + "You need to write /newclan clanname password");
|
||||||
}
|
}}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
31
src/main/java/de/spaffel/clans/commands/utils/EntryName.java
Normal file
31
src/main/java/de/spaffel/clans/commands/utils/EntryName.java
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
package de.spaffel.clans.commands.utils;
|
||||||
|
|
||||||
|
import org.bukkit.ChatColor;
|
||||||
|
|
||||||
|
public enum EntryName {
|
||||||
|
|
||||||
|
ENTRY_0(0, ChatColor.DARK_PURPLE.toString()),
|
||||||
|
ENTRY_1(1, ChatColor.DARK_GRAY.toString()),
|
||||||
|
ENTRY_2(2, ChatColor.BOLD.toString()),
|
||||||
|
ENTRY_3(3, ChatColor.DARK_RED.toString()),
|
||||||
|
ENTRY_4(4, ChatColor.GRAY.toString()),
|
||||||
|
ENTRY_5(5, ChatColor.DARK_GREEN.toString()),
|
||||||
|
ENTRY_6(6, ChatColor.LIGHT_PURPLE.toString()),
|
||||||
|
ENTRY_7(7, ChatColor.UNDERLINE.toString());
|
||||||
|
|
||||||
|
private final int entry;
|
||||||
|
private final String entryName;
|
||||||
|
|
||||||
|
EntryName(int entry, String entryName) {
|
||||||
|
this.entry = entry;
|
||||||
|
this.entryName = entryName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getEntry() {
|
||||||
|
return entry;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getEntryName() {
|
||||||
|
return entryName;
|
||||||
|
}
|
||||||
|
}
|
||||||
42
src/main/java/de/spaffel/clans/commands/utils/Lag.java
Normal file
42
src/main/java/de/spaffel/clans/commands/utils/Lag.java
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
package de.spaffel.clans.commands.utils;
|
||||||
|
|
||||||
|
public class Lag
|
||||||
|
implements Runnable
|
||||||
|
{
|
||||||
|
public static int TICK_COUNT= 0;
|
||||||
|
public static long[] TICKS= new long[600];
|
||||||
|
public static long LAST_TICK= 0L;
|
||||||
|
|
||||||
|
public static double getTPS()
|
||||||
|
{
|
||||||
|
return getTPS(100);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static double getTPS(int ticks)
|
||||||
|
{
|
||||||
|
if (TICK_COUNT< ticks) {
|
||||||
|
return 20.0D;
|
||||||
|
}
|
||||||
|
int target = (TICK_COUNT- 1 - ticks) % TICKS.length;
|
||||||
|
long elapsed = System.currentTimeMillis() - TICKS[target];
|
||||||
|
|
||||||
|
return ticks / (elapsed / 1000.0D);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static long getElapsed(int tickID)
|
||||||
|
{
|
||||||
|
if (TICK_COUNT- tickID >= TICKS.length)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
long time = TICKS[(tickID % TICKS.length)];
|
||||||
|
return System.currentTimeMillis() - time;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void run()
|
||||||
|
{
|
||||||
|
TICKS[(TICK_COUNT% TICKS.length)] = System.currentTimeMillis();
|
||||||
|
|
||||||
|
TICK_COUNT+= 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,114 @@
|
|||||||
|
package de.spaffel.clans.commands.utils;
|
||||||
|
|
||||||
|
import org.bukkit.Bukkit;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
import org.bukkit.scoreboard.DisplaySlot;
|
||||||
|
import org.bukkit.scoreboard.Objective;
|
||||||
|
import org.bukkit.scoreboard.Scoreboard;
|
||||||
|
import org.bukkit.scoreboard.Team;
|
||||||
|
|
||||||
|
public abstract class ScoreboardBuilder {
|
||||||
|
|
||||||
|
protected final Scoreboard scoreboard;
|
||||||
|
protected final Objective objective;
|
||||||
|
|
||||||
|
protected final Player player;
|
||||||
|
|
||||||
|
public ScoreboardBuilder(Player player, String displayName) {
|
||||||
|
this.player = player;
|
||||||
|
|
||||||
|
if(player.getScoreboard().equals(Bukkit.getScoreboardManager().getMainScoreboard())) {
|
||||||
|
player.setScoreboard(Bukkit.getScoreboardManager().getNewScoreboard());
|
||||||
|
}
|
||||||
|
|
||||||
|
this.scoreboard = player.getScoreboard();
|
||||||
|
|
||||||
|
if(this.scoreboard.getObjective("display") != null) {
|
||||||
|
this.scoreboard.getObjective("display").unregister();
|
||||||
|
}
|
||||||
|
|
||||||
|
this.objective = this.scoreboard.registerNewObjective("display", "dummy", displayName);
|
||||||
|
this.objective.setDisplaySlot(DisplaySlot.SIDEBAR);
|
||||||
|
|
||||||
|
createScoreboard();
|
||||||
|
}
|
||||||
|
|
||||||
|
public abstract void createScoreboard();
|
||||||
|
|
||||||
|
public abstract void update();
|
||||||
|
|
||||||
|
public void setDisplayName(String displayName) {
|
||||||
|
this.objective.setDisplayName(displayName);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setScore(String content, int score) {
|
||||||
|
Team team = getTeamByScore(score);
|
||||||
|
|
||||||
|
if(team == null) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
team.setPrefix(content);
|
||||||
|
showScore(score);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void removeScore(int score) {
|
||||||
|
hideScore(score);
|
||||||
|
}
|
||||||
|
|
||||||
|
private EntryName getEntryNameByScore(int score) {
|
||||||
|
for(EntryName name : EntryName.values()) {
|
||||||
|
if(score == name.getEntry()) {
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
private Team getTeamByScore(int score) {
|
||||||
|
EntryName name = getEntryNameByScore(score);
|
||||||
|
|
||||||
|
if(name == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
Team team = scoreboard.getEntryTeam(name.getEntryName());
|
||||||
|
|
||||||
|
if(team != null) {
|
||||||
|
return team;
|
||||||
|
}
|
||||||
|
|
||||||
|
team = scoreboard.registerNewTeam(name.name());
|
||||||
|
team.addEntry(name.getEntryName());
|
||||||
|
return team;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void showScore(int score) {
|
||||||
|
EntryName name = getEntryNameByScore(score);
|
||||||
|
|
||||||
|
if(name == null) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(objective.getScore(name.getEntryName()).isScoreSet()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
objective.getScore(name.getEntryName()).setScore(score);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void hideScore(int score) {
|
||||||
|
EntryName name = getEntryNameByScore(score);
|
||||||
|
|
||||||
|
if(name == null) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(!objective.getScore(name.getEntryName()).isScoreSet()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
scoreboard.resetScores(name.getEntryName());
|
||||||
|
}
|
||||||
|
}
|
||||||
19
src/main/java/de/spaffel/clans/commands/utils/TPSUtil.java
Normal file
19
src/main/java/de/spaffel/clans/commands/utils/TPSUtil.java
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
package de.spaffel.clans.commands.utils;
|
||||||
|
import de.spaffel.clans.commands.utils.Lag;
|
||||||
|
import org.bukkit.Bukkit;
|
||||||
|
import org.bukkit.Server;
|
||||||
|
import org.bukkit.ChatColor;
|
||||||
|
|
||||||
|
public class TPSUtil {
|
||||||
|
public static String getTPS() {
|
||||||
|
StringBuilder sb = new StringBuilder((String) "");
|
||||||
|
sb.append(format((Lag.getTPS())));
|
||||||
|
return sb.substring(0, sb.length());
|
||||||
|
}
|
||||||
|
|
||||||
|
private static String format(double tps) {
|
||||||
|
return String.valueOf(String.valueOf((
|
||||||
|
(tps > 18.0D) ? ChatColor.GREEN : ((tps > 16.0D) ? ChatColor.YELLOW : ChatColor.RED)).toString())) + (
|
||||||
|
(tps > 20.0D) ? "*" : "") + Math.min(Math.round(tps * 100.0D) / 100.0D, 20.0D);
|
||||||
|
}
|
||||||
|
}
|
||||||
84
src/main/java/de/spaffel/clans/commands/utils/Tab.java
Normal file
84
src/main/java/de/spaffel/clans/commands/utils/Tab.java
Normal file
@@ -0,0 +1,84 @@
|
|||||||
|
package de.spaffel.clans.commands.utils;
|
||||||
|
import de.spaffel.clans.Clans;
|
||||||
|
import org.bukkit.Bukkit;
|
||||||
|
|
||||||
|
import org.bukkit.OfflinePlayer;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
import org.bukkit.scoreboard.Scoreboard;
|
||||||
|
import org.bukkit.scoreboard.ScoreboardManager;
|
||||||
|
import org.bukkit.scoreboard.Team;
|
||||||
|
|
||||||
|
public class Tab {
|
||||||
|
public static Thread t;
|
||||||
|
|
||||||
|
public static void setTab() {
|
||||||
|
Clans.update();
|
||||||
|
for (Player p : Bukkit.getOnlinePlayers())
|
||||||
|
setTab(p);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void update() {
|
||||||
|
t = new Thread(new Runnable() {
|
||||||
|
public void run() {
|
||||||
|
while (true) {
|
||||||
|
try {
|
||||||
|
while (true) {
|
||||||
|
Thread.sleep(10000L);
|
||||||
|
Tab.setTab();
|
||||||
|
}
|
||||||
|
|
||||||
|
} catch (InterruptedException interruptedException) {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
t.start();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void setTab(Player p) {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
String line = "§7";
|
||||||
|
for (int i = 0; i != 12; i++)
|
||||||
|
line = String.valueOf(line) + "-";
|
||||||
|
String head = "\n §a<§7" + line + "[§dSpaffel-Smp§7]" + line + "§a>\n" + "§eOnline§7: §a"+ (
|
||||||
|
|
||||||
|
Bukkit.getOnlinePlayers().size() + "§7/§a" +
|
||||||
|
Bukkit.getMaxPlayers() + "\n" + "§eTPS§7: §a"+ TPSUtil.getTPS() + "\n");
|
||||||
|
String foot = "\n§e/vote §afür Belohnungen!\n§e/Discord §aUmauf den Discord zu gelangen!\n<§7" +
|
||||||
|
line + "[§dSpaffel-Smp§7]" + line + "§a>\n";
|
||||||
|
p.setPlayerListHeaderFooter(head, foot);
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
public static void setPlayerteam(Player player, String uuid, String Playername){
|
||||||
|
System.out.println("neue ranksetzen");
|
||||||
|
Scoreboard scoreboard = Bukkit.getScoreboardManager().getNewScoreboard();
|
||||||
|
|
||||||
|
for(Player p : Bukkit.getOnlinePlayers()) {
|
||||||
|
System.out.println("testoooo");
|
||||||
|
//String uuid = jsonutil.getUUID(Playername);
|
||||||
|
String Clanname = p.getDisplayName();
|
||||||
|
System.out.println("n:" + p.getDisplayName());
|
||||||
|
Team clan = scoreboard.getTeam(Clanname);
|
||||||
|
|
||||||
|
|
||||||
|
if(clan == null){
|
||||||
|
clan = scoreboard.registerNewTeam(Clanname);
|
||||||
|
clan.setPrefix(jsonutil.getPrefix(String.valueOf(p.getUniqueId())));
|
||||||
|
}
|
||||||
|
clan.setPrefix(jsonutil.getPrefix(String.valueOf(p.getUniqueId())));
|
||||||
|
scoreboard.getTeam(Clanname).addPlayer((OfflinePlayer)p.getPlayer());
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
for(Player p : Bukkit.getOnlinePlayers()) {
|
||||||
|
p.setScoreboard(scoreboard);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,45 @@
|
|||||||
|
package de.spaffel.clans.commands.utils;
|
||||||
|
|
||||||
|
import org.bukkit.ChatColor;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
import org.bukkit.scheduler.BukkitRunnable;
|
||||||
|
|
||||||
|
|
||||||
|
public class TestScoreboard extends ScoreboardBuilder {
|
||||||
|
|
||||||
|
private int socialId;
|
||||||
|
|
||||||
|
public TestScoreboard(Player player) {
|
||||||
|
super(player, ChatColor.DARK_PURPLE.toString() + ChatColor.BOLD + " twitch.tv/DerBanko ");
|
||||||
|
socialId = 0;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void createScoreboard() {
|
||||||
|
setScore("test", 8);
|
||||||
|
setScore(ChatColor.DARK_GRAY.toString(), 7);
|
||||||
|
setScore(ChatColor.GRAY + "Dein Rang" + ChatColor.DARK_GRAY + ":", 6);
|
||||||
|
|
||||||
|
if(player.isOp()) {
|
||||||
|
setScore(ChatColor.RED + "Operator", 5);
|
||||||
|
} else {
|
||||||
|
setScore(ChatColor.GRAY + "Spieler", 5);
|
||||||
|
}
|
||||||
|
|
||||||
|
setScore(ChatColor.GRAY.toString(), 4);
|
||||||
|
setScore(ChatColor.AQUA + "twitter.com/DerBanko", 3);
|
||||||
|
setScore(ChatColor.RED.toString(), 2);
|
||||||
|
setScore(ChatColor.RED + player.getAddress().getHostName(), 1);
|
||||||
|
setScore(ChatColor.AQUA.toString(), 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void update() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
@@ -97,7 +97,7 @@ public class jsonutil extends JavaPlugin{
|
|||||||
}else{
|
}else{
|
||||||
String Clanname = getClanName(Clanid);
|
String Clanname = getClanName(Clanid);
|
||||||
String color = getClanColor(Clanid);
|
String color = getClanColor(Clanid);
|
||||||
String prefix = color + "§l[" + Clanname + "] §f§r";
|
String prefix = color + "[" + Clanname + "] §f§r";
|
||||||
return prefix;
|
return prefix;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user