diff options
Diffstat (limited to 'me/Danker/commands')
-rw-r--r-- | me/Danker/commands/DHelpCommand.java | 1 | ||||
-rw-r--r-- | me/Danker/commands/ScaleCommand.java | 70 |
2 files changed, 71 insertions, 0 deletions
diff --git a/me/Danker/commands/DHelpCommand.java b/me/Danker/commands/DHelpCommand.java index 1e2d4aa..9ca6a6e 100644 --- a/me/Danker/commands/DHelpCommand.java +++ b/me/Danker/commands/DHelpCommand.java @@ -39,6 +39,7 @@ public class DHelpCommand extends CommandBase { EnumChatFormatting.GOLD + " /display <zombie/spider/wolf/fishing/off> [winter/session]" + EnumChatFormatting.AQUA + " - Text display for trackers. /display fishing winter displays winter sea creatures instead.\n" + EnumChatFormatting.GOLD + " /resetloot <zombie/spider/wolf/fishing/confirm/cancel>" + EnumChatFormatting.AQUA + " - Resets loot for trackers. /resetloot confirm confirms the reset.\n" + EnumChatFormatting.GOLD + " /move <coords/display> <x> <y>" + EnumChatFormatting.AQUA + " - Moves text display to specified X and Y coordinates.\n" + + EnumChatFormatting.GOLD + " /scale <coords/display> <scale (0.1 - 10)" + EnumChatFormatting.AQUA + " - Scales text display to a specified multipler between 0.1x and 10x.\n" + EnumChatFormatting.GOLD + " /slayer [player]" + EnumChatFormatting.AQUA + " - Uses API to get slayer xp of a person. If no name is provided, it checks yours.\n" + EnumChatFormatting.GOLD + " /skills [player]" + EnumChatFormatting.AQUA + " - Uses API to get skill levels of a person. If no name is provided, it checks yours.\n" + EnumChatFormatting.GOLD + " /guildof [player]" + EnumChatFormatting.AQUA + " - Uses API to get guild name and guild master of a person. If no name is provided, it checks yours.\n" + diff --git a/me/Danker/commands/ScaleCommand.java b/me/Danker/commands/ScaleCommand.java new file mode 100644 index 0000000..f8c73c9 --- /dev/null +++ b/me/Danker/commands/ScaleCommand.java @@ -0,0 +1,70 @@ +package me.Danker.commands; + +import java.util.List; + +import me.Danker.handlers.ConfigHandler; +import net.minecraft.command.CommandBase; +import net.minecraft.command.CommandException; +import net.minecraft.command.ICommandSender; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.util.BlockPos; +import net.minecraft.util.ChatComponentText; +import net.minecraft.util.EnumChatFormatting; + +public class ScaleCommand extends CommandBase { + + public static double coordsScale; + public static double displayScale; + + @Override + public String getCommandName() { + return "scale"; + } + + @Override + public String getCommandUsage(ICommandSender arg0) { + return getCommandName() + " <coords/display> <size (0.1 - 10)>"; + } + + @Override + public int getRequiredPermissionLevel() { + return 0; + } + + @Override + public List<String> addTabCompletionOptions(ICommandSender sender, String[] args, BlockPos pos) { + if (args.length == 1) { + return getListOfStringsMatchingLastWord(args, "coords", "display"); + } + return null; + } + + @Override + public void processCommand(ICommandSender arg0, String[] arg1) throws CommandException { + final EntityPlayer player = (EntityPlayer) arg0; + + if (arg1.length < 2) { + player.addChatMessage(new ChatComponentText(EnumChatFormatting.RED + "Usage: /scale <coords/display> <size (0.1 - 10)>")); + return; + } + + double scaleAmount = (double) Math.floor(Double.parseDouble(arg1[1]) * 10.0) / 10.0; + if (scaleAmount < 0.1 || scaleAmount > 10.0) { + player.addChatMessage(new ChatComponentText(EnumChatFormatting.RED + "Scale multipler can only be between 0.1x and 10x.")); + return; + } + + if (arg1[0].equalsIgnoreCase("coords")) { + coordsScale = scaleAmount; + ConfigHandler.writeDoubleConfig("scales", "coordsScale", coordsScale); + player.addChatMessage(new ChatComponentText(EnumChatFormatting.GREEN + "Coords have been scaled to " + EnumChatFormatting.DARK_GREEN + coordsScale + "x")); + } else if (arg1[0].equalsIgnoreCase("display")) { + displayScale = scaleAmount; + ConfigHandler.writeDoubleConfig("scales", "displayScale", displayScale); + player.addChatMessage(new ChatComponentText(EnumChatFormatting.GREEN + "Display has been scaled to " + EnumChatFormatting.DARK_GREEN + displayScale + "x")); + } else { + player.addChatMessage(new ChatComponentText(EnumChatFormatting.RED + "Usage: /scale <coords/display> <size (0.1 - 10)>")); + } + } + +} |