ServerLite/src/main/java/de/npid7/serverlite/Commands/PlaytimeCommand.java
tobid7 dc564e7baf
All checks were successful
Build Plugin / build-test (push) Successful in 44s
Changes:
- Fix Status Color Bug
- Add /playtime
- Add /timer
2024-11-25 12:39:49 +00:00

50 lines
2.2 KiB
Java

package de.npid7.serverlite.Commands;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.OfflinePlayer;
import org.bukkit.Statistic;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import de.npid7.serverlite.Helpers.Spielzeit;
public class PlaytimeCommand implements CommandExecutor {
private void makeMessage(OfflinePlayer pl, Player exec) {
if (pl == null) {
return;
}
exec.sendMessage("- " + ChatColor.GOLD.toString() + "PLAYTIME: ");
exec.sendMessage("- " + ChatColor.GRAY.toString() + "Player: " + ChatColor.WHITE.toString() + pl.getName());
// exec.sendMessage("- First Join: ");
exec.sendMessage("- " + ChatColor.GRAY.toString() + "Spielzeit: " + ChatColor.GREEN.toString()
+ Spielzeit.getHours(pl.getStatistic(Statistic.TOTAL_WORLD_TIME)));
exec.sendMessage(
"- " + ChatColor.GRAY.toString() + "Detailierte Spielzeit: " + ChatColor.GREEN.toString()
+ Spielzeit.formatTicks(pl.getStatistic(Statistic.TOTAL_WORLD_TIME)));
exec.sendMessage("- " + ChatColor.GRAY.toString() + "Du hast den Server " + ChatColor.GREEN.toString()
+ (pl.getStatistic(Statistic.LEAVE_GAME) + 1) + ChatColor.GRAY.toString() + " mal betreten.");
}
@Override
public boolean onCommand(CommandSender sender, Command command, String s, String[] strings) {
if (strings.length != 0) {
if (!sender.hasPermission("d7.d7")) {
sender.sendMessage(ChatColor.RED.toString() + "Nur Admins dürfen /plytime auf spieler anwenden");
return false;
}
OfflinePlayer pl = Bukkit.getOfflinePlayer(strings[0]);
if (pl == null) {
sender.sendMessage(ChatColor.RED.toString() + "Der Spieler existiert nicht!");
return false;
}
makeMessage(pl, (Player) sender);
} else {
makeMessage(Bukkit.getOfflinePlayer(((Player) sender).getUniqueId()), (Player) sender);
}
return false;
}
}