139 lines
6.3 KiB
Java
139 lines
6.3 KiB
Java
package com.pahimar.ee3.command;
|
|
|
|
import net.minecraft.command.ICommandSender;
|
|
import net.minecraft.command.WrongUsageException;
|
|
|
|
import com.pahimar.ee3.configuration.ConfigurationHandler;
|
|
import com.pahimar.ee3.configuration.ConfigurationSettings;
|
|
|
|
// TODO Localize text
|
|
public class CommandOverlay {
|
|
|
|
public static void processCommand(ICommandSender commandSender, String[] args) {
|
|
|
|
if (args.length > 0) {
|
|
String subCommand = args[0];
|
|
|
|
if (subCommand.toLowerCase().equals("on")) {
|
|
processOnCommand(commandSender);
|
|
}
|
|
else if (subCommand.toLowerCase().equals("off")) {
|
|
processOffCommand(commandSender);
|
|
}
|
|
else if (subCommand.toLowerCase().equals("opacity")) {
|
|
processOpacityCommand(commandSender, args);
|
|
}
|
|
else if (subCommand.toLowerCase().equals("scale")) {
|
|
processScaleCommand(commandSender, args);
|
|
}
|
|
else if (subCommand.toLowerCase().equals("position")) {
|
|
processPositionCommand(commandSender, args);
|
|
}
|
|
else {
|
|
throw new WrongUsageException("commands.ee3.overlay.usage", new Object[0]);
|
|
}
|
|
}
|
|
else {
|
|
throw new WrongUsageException("commands.ee3.overlay.usage", new Object[0]);
|
|
}
|
|
}
|
|
|
|
private static void processOnCommand(ICommandSender commandSender) {
|
|
|
|
ConfigurationSettings.ENABLE_OVERLAY_WORLD_TRANSMUTATION = true;
|
|
ConfigurationHandler.set(ConfigurationHandler.CATEGORY_GRAPHICS, ConfigurationSettings.ENABLE_OVERLAY_WORLD_TRANSMUTATION_CONFIGNAME, "true");
|
|
commandSender.sendChatToPlayer("commands.ee3.overlay.turned_on");
|
|
}
|
|
|
|
private static void processOffCommand(ICommandSender commandSender) {
|
|
|
|
ConfigurationSettings.ENABLE_OVERLAY_WORLD_TRANSMUTATION = false;
|
|
ConfigurationHandler.set(ConfigurationHandler.CATEGORY_GRAPHICS, ConfigurationSettings.ENABLE_OVERLAY_WORLD_TRANSMUTATION_CONFIGNAME, "false");
|
|
commandSender.sendChatToPlayer("commands.ee3.overlay.turned_off");
|
|
}
|
|
|
|
private static void processScaleCommand(ICommandSender commandSender, String[] args) {
|
|
|
|
if (args.length >= 2) {
|
|
try {
|
|
float scale = Float.parseFloat(args[1]);
|
|
|
|
if (scale <= 0F) {
|
|
throw new WrongUsageException("commands.ee3.overlay.scale.usage", new Object[0]);
|
|
}
|
|
else {
|
|
ConfigurationSettings.TARGET_BLOCK_OVERLAY_SCALE = scale;
|
|
ConfigurationHandler.set(ConfigurationHandler.CATEGORY_GRAPHICS, ConfigurationSettings.TARGET_BLOCK_OVERLAY_SCALE_CONFIGNAME, args[1]);
|
|
commandSender.sendChatToPlayer("commands.ee3.overlay.scale.updated");
|
|
}
|
|
}
|
|
catch (Exception e) {
|
|
throw new WrongUsageException("commands.ee3.overlay.opacity.usage", new Object[0]);
|
|
}
|
|
}
|
|
else {
|
|
throw new WrongUsageException("commands.ee3.overlay.opacity.usage", new Object[0]);
|
|
}
|
|
}
|
|
|
|
private static void processOpacityCommand(ICommandSender commandSender, String[] args) {
|
|
|
|
if (args.length >= 2) {
|
|
try {
|
|
float opacity = Float.parseFloat(args[1]);
|
|
|
|
if ((opacity < 0F) || (opacity > 1F)) {
|
|
throw new WrongUsageException("commands.ee3.overlay.opacity.usage", new Object[0]);
|
|
}
|
|
else {
|
|
ConfigurationSettings.TARGET_BLOCK_OVERLAY_OPACITY = opacity;
|
|
ConfigurationHandler.set(ConfigurationHandler.CATEGORY_GRAPHICS, ConfigurationSettings.TARGET_BLOCK_OVERLAY_OPACITY_CONFIGNAME, args[1]);
|
|
commandSender.sendChatToPlayer("commands.ee3.overlay.opacity.updated");
|
|
}
|
|
}
|
|
catch (Exception e) {
|
|
throw new WrongUsageException("commands.ee3.overlay.opacity.usage", new Object[0]);
|
|
}
|
|
}
|
|
else {
|
|
throw new WrongUsageException("commands.ee3.overlay.opacity.usage", new Object[0]);
|
|
}
|
|
}
|
|
|
|
private static void processPositionCommand(ICommandSender commandSender, String[] args) {
|
|
|
|
String xPosition, yPosition;
|
|
|
|
if (args.length >= 3) {
|
|
xPosition = args[1];
|
|
yPosition = args[2];
|
|
|
|
if ((xPosition.toLowerCase().equals("top")) && (yPosition.toLowerCase().equals("left"))) {
|
|
ConfigurationSettings.TARGET_BLOCK_OVERLAY_POSITION = 0;
|
|
ConfigurationHandler.set(ConfigurationHandler.CATEGORY_GRAPHICS, ConfigurationSettings.TARGET_BLOCK_OVERLAY_POSITION_CONFIGNAME, "0");
|
|
commandSender.sendChatToPlayer("commands.ee3.overlay.move.top_left");
|
|
}
|
|
else if ((xPosition.toLowerCase().equals("top")) && (yPosition.toLowerCase().equals("right"))) {
|
|
ConfigurationSettings.TARGET_BLOCK_OVERLAY_POSITION = 1;
|
|
ConfigurationHandler.set(ConfigurationHandler.CATEGORY_GRAPHICS, ConfigurationSettings.TARGET_BLOCK_OVERLAY_POSITION_CONFIGNAME, "1");
|
|
commandSender.sendChatToPlayer("commands.ee3.overlay.move.top_right");
|
|
}
|
|
else if ((xPosition.toLowerCase().equals("bottom")) && (yPosition.toLowerCase().equals("left"))) {
|
|
ConfigurationSettings.TARGET_BLOCK_OVERLAY_POSITION = 2;
|
|
ConfigurationHandler.set(ConfigurationHandler.CATEGORY_GRAPHICS, ConfigurationSettings.TARGET_BLOCK_OVERLAY_POSITION_CONFIGNAME, "2");
|
|
commandSender.sendChatToPlayer("commands.ee3.overlay.move.bottom_left");
|
|
}
|
|
else if ((xPosition.toLowerCase().equals("bottom")) && (yPosition.toLowerCase().equals("right"))) {
|
|
ConfigurationSettings.TARGET_BLOCK_OVERLAY_POSITION = 3;
|
|
ConfigurationHandler.set(ConfigurationHandler.CATEGORY_GRAPHICS, ConfigurationSettings.TARGET_BLOCK_OVERLAY_POSITION_CONFIGNAME, "3");
|
|
commandSender.sendChatToPlayer("commands.ee3.overlay.move.bottom_right");
|
|
}
|
|
else {
|
|
throw new WrongUsageException("commands.ee3.overlay.move.usage", new Object[0]);
|
|
}
|
|
}
|
|
else {
|
|
new WrongUsageException("commands.ee3.overlay.move.usage", new Object[0]);
|
|
}
|
|
}
|
|
}
|