Sort files and make 4 new options in the disguise class viewable with commands
This commit is contained in:
		@@ -157,7 +157,7 @@ public class DisguiseHelpCommand extends BaseDisguiseCommand {
 | 
			
		||||
                    Class watcher = type.getWatcherClass();
 | 
			
		||||
                    int ignored = 0;
 | 
			
		||||
                    try {
 | 
			
		||||
                        for (Method method : watcher.getMethods()) {
 | 
			
		||||
                        for (Method method : this.getDisguiseWatcherMethods(watcher)) {
 | 
			
		||||
                            if (!method.getName().startsWith("get") && method.getParameterTypes().length == 1
 | 
			
		||||
                                    && method.getAnnotation(Deprecated.class) == null) {
 | 
			
		||||
                                if (args.length < 2 || !args[1].equalsIgnoreCase("show")) {
 | 
			
		||||
 
 | 
			
		||||
@@ -157,6 +157,10 @@ public class FlagWatcher {
 | 
			
		||||
        return armor;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getCustomName() {
 | 
			
		||||
        return (String) getValue(10, null);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    protected TargetedDisguise getDisguise() {
 | 
			
		||||
        return disguise;
 | 
			
		||||
    }
 | 
			
		||||
@@ -190,6 +194,10 @@ public class FlagWatcher {
 | 
			
		||||
        return watchableObjects;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public boolean hasCustomName() {
 | 
			
		||||
        return getCustomName() != null;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    protected boolean hasValue(int no) {
 | 
			
		||||
        return entityValues.containsKey(no);
 | 
			
		||||
    }
 | 
			
		||||
@@ -198,6 +206,10 @@ public class FlagWatcher {
 | 
			
		||||
        return getFlag(0);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public boolean isCustomNameVisible() {
 | 
			
		||||
        return (Byte) getValue(11, (byte) 0) == 1;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public boolean isEntityAnimationsAdded() {
 | 
			
		||||
        return addEntityAnimations;
 | 
			
		||||
    }
 | 
			
		||||
@@ -206,31 +218,6 @@ public class FlagWatcher {
 | 
			
		||||
        return getFlag(5);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getCustomName() {
 | 
			
		||||
        return (String) getValue(10, null);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public boolean hasCustomName() {
 | 
			
		||||
        return getCustomName() != null;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public boolean isCustomNameVisible() {
 | 
			
		||||
        return (Byte) getValue(11, (byte) 0) == 1;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setCustomName(String name) {
 | 
			
		||||
        if (name != null && name.length() > 64) {
 | 
			
		||||
            name = name.substring(0, 64);
 | 
			
		||||
        }
 | 
			
		||||
        setValue(10, name);
 | 
			
		||||
        sendData(10);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setCustomNameVisible(boolean display) {
 | 
			
		||||
        setValue(11, (byte) (display ? 1 : 0));
 | 
			
		||||
        sendData(11);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public boolean isRightClicking() {
 | 
			
		||||
        return getFlag(4);
 | 
			
		||||
    }
 | 
			
		||||
@@ -305,6 +292,19 @@ public class FlagWatcher {
 | 
			
		||||
        sendData(0);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setCustomName(String name) {
 | 
			
		||||
        if (name != null && name.length() > 64) {
 | 
			
		||||
            name = name.substring(0, 64);
 | 
			
		||||
        }
 | 
			
		||||
        setValue(10, name);
 | 
			
		||||
        sendData(10);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setCustomNameVisible(boolean display) {
 | 
			
		||||
        setValue(11, (byte) (display ? 1 : 0));
 | 
			
		||||
        sendData(11);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private void setFlag(int byteValue, boolean flag) {
 | 
			
		||||
        modifiedEntityAnimations.add(byteValue);
 | 
			
		||||
        byte b0 = (Byte) getValue(0, (byte) 0);
 | 
			
		||||
 
 | 
			
		||||
@@ -2,12 +2,14 @@ package me.libraryaddict.disguise.utilities;
 | 
			
		||||
 | 
			
		||||
import java.lang.reflect.Method;
 | 
			
		||||
import java.util.ArrayList;
 | 
			
		||||
import java.util.Arrays;
 | 
			
		||||
import java.util.Collections;
 | 
			
		||||
import java.util.HashMap;
 | 
			
		||||
 | 
			
		||||
import me.libraryaddict.disguise.disguisetypes.AnimalColor;
 | 
			
		||||
import me.libraryaddict.disguise.disguisetypes.Disguise;
 | 
			
		||||
import me.libraryaddict.disguise.disguisetypes.DisguiseType;
 | 
			
		||||
import me.libraryaddict.disguise.disguisetypes.FlagWatcher;
 | 
			
		||||
import me.libraryaddict.disguise.disguisetypes.MiscDisguise;
 | 
			
		||||
import me.libraryaddict.disguise.disguisetypes.MobDisguise;
 | 
			
		||||
import me.libraryaddict.disguise.disguisetypes.PlayerDisguise;
 | 
			
		||||
@@ -68,6 +70,21 @@ public abstract class BaseDisguiseCommand implements CommandExecutor {
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    protected Method[] getDisguiseWatcherMethods(Class<? extends FlagWatcher> watcherClass) {
 | 
			
		||||
        Method[] methods = watcherClass.getMethods();
 | 
			
		||||
        methods = Arrays.copyOf(methods, methods.length + 4);
 | 
			
		||||
        int i = 4;
 | 
			
		||||
        for (String methodName : new String[] { "setViewSelfDisguise", "setHideHeldItemFromSelf", "setHideArmorFromSelf",
 | 
			
		||||
                "setHearSelfDisguise" }) {
 | 
			
		||||
            try {
 | 
			
		||||
                methods[methods.length - i--] = Disguise.class.getMethod(methodName, boolean.class);
 | 
			
		||||
            } catch (Exception ex) {
 | 
			
		||||
                ex.printStackTrace();
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        return methods;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Get perms for the node. Returns a hashmap of allowed disguisetypes and their options
 | 
			
		||||
     */
 | 
			
		||||
@@ -432,12 +449,13 @@ public abstract class BaseDisguiseCommand implements CommandExecutor {
 | 
			
		||||
        String[] newArgs = new String[args.length - toSkip];
 | 
			
		||||
        System.arraycopy(args, toSkip, newArgs, 0, args.length - toSkip);
 | 
			
		||||
        args = newArgs;
 | 
			
		||||
        Method[] methods = this.getDisguiseWatcherMethods(disguise.getWatcher().getClass());
 | 
			
		||||
        for (int i = 0; i < args.length; i += 2) {
 | 
			
		||||
            String methodName = args[i];
 | 
			
		||||
            String valueString = (args.length - 1 == i ? null : args[i + 1]);
 | 
			
		||||
            Method methodToUse = null;
 | 
			
		||||
            Object value = null;
 | 
			
		||||
            for (Method method : disguise.getWatcher().getClass().getMethods()) {
 | 
			
		||||
            for (Method method : methods) {
 | 
			
		||||
                if (!method.getName().startsWith("get") && method.getName().equalsIgnoreCase(methodName)
 | 
			
		||||
                        && method.getAnnotation(Deprecated.class) == null && method.getParameterTypes().length == 1) {
 | 
			
		||||
                    methodToUse = method;
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user