123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 |
- package me.km.commands;
- import com.mojang.authlib.GameProfile;
- import me.km.api.Utils;
- import me.km.api.GlobalText;
- import me.km.api.Module;
- import me.km.api.ModuleCommand;
- import java.util.Date;
- import me.km.KajetansMod;
- import me.km.permissions.Permissions;
- import net.minecraft.command.ICommandSender;
- import net.minecraft.entity.player.EntityPlayerMP;
- import net.minecraft.server.management.UserListBansEntry;
- import net.minecraft.util.text.TextComponentString;
- public class CommandTempBan extends ModuleCommand
- {
- public CommandTempBan(Module m)
- {
- super("tempban", m);
- super.setDescription("Bannt einen Spiele temporär");
- super.setUsage("/tempban <name> <days> <hours> <minutes> <reason>");
- super.setPermission(Permissions.TEMP_BAN);
- }
- @Override
- public boolean execute(ICommandSender cs, String[] arg)
- {
- if(arg.length <= 4)
- {
- return false;
- }
- Date date = new Date(System.currentTimeMillis());
- try
- {
- long days = Integer.parseInt(arg[1]) * 86400000l;
- long hours = Integer.parseInt(arg[2]) * 3600000l;
- long minutes = Integer.parseInt(arg[3]) * 60000l;
- if(days < 0 || hours < 0 || minutes < 0)
- {
- throw new NumberFormatException();
- }
- date.setTime(date.getTime() + days + hours + minutes);
- }
- catch(NumberFormatException ex)
- {
- this.getModule().send(cs, GlobalText.noNaturalNumber());
- return true;
- }
- GameProfile affectedPlayer = KajetansMod.playerbank.getDataBank().getOfflinePlayer(arg[0]);
- if(affectedPlayer == null)
- {
- this.getModule().send(cs, GlobalText.cantFindPlayer(arg[0]));
- return true;
- }
- String time = arg[1] + " Tage, " + arg[2] + " Stunden und " + arg[3] + " Minuten";
- if(arg[1].equals("1"))
- {
- time = time.replace("Tage", "Tag");
- }
- if(arg[2].equals("1"))
- {
- time = time.replace("Stunden", "Stunde");
- }
- if(arg[3].equals("1"))
- {
- time = time.replace("Minuten", "Minute");
- }
- String message = Utils.connectSpaces(arg, 4);
- this.getModule().sendBroadcast("§4" + affectedPlayer.getName() + " §cwurde von §4" + cs.getName() + "§c für " + time + " gebannt, weil: §4" + message);
-
- UserListBansEntry bans = new UserListBansEntry(affectedPlayer, null, cs.getName(), date, message);
- KajetansMod.server.getPlayerList().getBannedPlayers().addEntry(bans);
- EntityPlayerMP p = KajetansMod.server.getPlayerList().getPlayerByUUID(affectedPlayer.getId());
- if(p != null)
- {
- p.connection.disconnect(new TextComponentString("§4Du §cwurdest von §4" + cs.getName() + "§c für " + time + " gebannt, weil: §4" + message));
- }
- return true;
- }
- }
|