123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 |
- package me.km.commands;
- import me.km.KajetansMod;
- import me.km.api.GlobalText;
- import me.km.api.Module;
- import me.km.api.ModuleCommand;
- import me.km.playerbank.PlayerBank;
- import java.io.File;
- import java.text.SimpleDateFormat;
- import java.util.Date;
- import me.km.permissions.Permissions;
- import me.km.table.Table;
- import net.minecraft.command.ICommandSender;
- public class CommandLastSeen extends ModuleCommand
- {
- public CommandLastSeen(Module m)
- {
- super("lastseen", m);
- super.setDescription("Zeigt an welche Spieler zuletzt online waren");
- super.setUsage("/lastseen [amount]");
- super.setPermission(Permissions.LASTSEEN);
- }
- @Override
- public boolean execute(ICommandSender cs, String[] arg)
- {
- File[] files = new File("./saves/world/playerdata/").listFiles();
- String helper;
- String name;
- long longhelper;
- Table table = new Table(2);
-
- PlayerBank pb = KajetansMod.playerbank.getDataBank();
- for(File output : files)
- {
- helper = output.getName();
- if(!helper.endsWith(".dat"))
- {
- continue;
- }
- longhelper = output.lastModified();
- helper = helper.substring(0, helper.length() - 4);
- name = pb.getName(helper);
- if(name == null)
- {
- name = helper;
- }
- table.addRow(new Object[] {longhelper, name});
- }
-
- table.sort();
- table.reverse();
- SimpleDateFormat ft = new SimpleDateFormat ("dd.MM.yyyy '§rum§7' HH:mm:ss");
-
- Module m = this.getModule();
- int limit = 10;
- if(arg.length >= 1)
- {
- try
- {
- limit = Integer.parseInt(arg[0]);
- if(limit < 1)
- {
- throw new NumberFormatException();
- }
- }
- catch(NumberFormatException ex)
- {
- m.send(cs, GlobalText.noPositiveNaturalNumber());
- return true;
- }
- }
-
- if(table.getSize() < limit)
- {
- limit = table.getSize();
- }
-
- m.send(cs, "Zuletzt waren folgende Spieler online:");
- for(int i = 0; i < limit; i++)
- {
- m.sendListElement(cs, "§7" + table.getElement(i, 1) + "§r am §7" + ft.format(new Date((long) table.getElement(i, 0))));
- }
- return true;
- }
- }
|