1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- 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;
- 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]) * 86400000;
- long hours = Integer.parseInt(arg[2]) * 3600000;
- long minutes = Integer.parseInt(arg[3]) * 60000;
- 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("§4Du §cwurdest von §4" + cs.getName() + "§c für " + time + " gebannt, weil: §4" + message);
- }
- return true;
- }
- }
|