Update 5.21
This commit is contained in:
		@@ -110,16 +110,32 @@ class THologramHandler implements Listener {
 | 
			
		||||
        List item = THologramHandler.getPacketName().read("b", List.class);
 | 
			
		||||
        for (Object element : item) {
 | 
			
		||||
            SimpleReflection.checkAndSave(element.getClass());
 | 
			
		||||
            Object a = SimpleReflection.getFieldValue(element.getClass(), element, "a");
 | 
			
		||||
            Object c = SimpleReflection.getFieldValue(element.getClass(), element, "c");
 | 
			
		||||
            try {
 | 
			
		||||
                Object i = Ref.getUnsafe().allocateInstance(element.getClass());
 | 
			
		||||
                SimpleReflection.setFieldValue(element.getClass(), i, "a", a);
 | 
			
		||||
                SimpleReflection.setFieldValue(element.getClass(), i, "b", name);
 | 
			
		||||
                SimpleReflection.setFieldValue(element.getClass(), i, "c", c);
 | 
			
		||||
                copy.add(i);
 | 
			
		||||
            } catch (InstantiationException e) {
 | 
			
		||||
                e.printStackTrace();
 | 
			
		||||
            if (Version.isAfter(Version.v1_9)) {
 | 
			
		||||
                Object a = SimpleReflection.getFieldValue(element.getClass(), element, "a");
 | 
			
		||||
                Object c = SimpleReflection.getFieldValue(element.getClass(), element, "c");
 | 
			
		||||
                try {
 | 
			
		||||
                    Object i = Ref.getUnsafe().allocateInstance(element.getClass());
 | 
			
		||||
                    SimpleReflection.setFieldValue(element.getClass(), i, "a", a);
 | 
			
		||||
                    SimpleReflection.setFieldValue(element.getClass(), i, "b", name);
 | 
			
		||||
                    SimpleReflection.setFieldValue(element.getClass(), i, "c", c);
 | 
			
		||||
                    copy.add(i);
 | 
			
		||||
                } catch (InstantiationException e) {
 | 
			
		||||
                    e.printStackTrace();
 | 
			
		||||
                }
 | 
			
		||||
            } else {
 | 
			
		||||
                Object a = SimpleReflection.getFieldValue(element.getClass(), element, "a");
 | 
			
		||||
                Object b = SimpleReflection.getFieldValue(element.getClass(), element, "b");
 | 
			
		||||
                Object d = SimpleReflection.getFieldValue(element.getClass(), element, "d");
 | 
			
		||||
                try {
 | 
			
		||||
                    Object i = Ref.getUnsafe().allocateInstance(element.getClass());
 | 
			
		||||
                    SimpleReflection.setFieldValue(element.getClass(), i, "a", a);
 | 
			
		||||
                    SimpleReflection.setFieldValue(element.getClass(), i, "b", b);
 | 
			
		||||
                    SimpleReflection.setFieldValue(element.getClass(), i, "c", name);
 | 
			
		||||
                    SimpleReflection.setFieldValue(element.getClass(), i, "d", d);
 | 
			
		||||
                    copy.add(i);
 | 
			
		||||
                } catch (InstantiationException e) {
 | 
			
		||||
                    e.printStackTrace();
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        packet.write("b", copy);
 | 
			
		||||
 
 | 
			
		||||
@@ -472,7 +472,7 @@ public class NMSImpl extends NMS {
 | 
			
		||||
        } else {
 | 
			
		||||
            Object createEntity = ((CraftWorld) location.getWorld()).createEntity(location, entity);
 | 
			
		||||
            try {
 | 
			
		||||
                e.accept((T) createEntity);
 | 
			
		||||
                e.accept((T) ((net.minecraft.server.v1_13_R2.Entity) createEntity).getBukkitEntity());
 | 
			
		||||
            } catch (Throwable t) {
 | 
			
		||||
                t.printStackTrace();
 | 
			
		||||
            }
 | 
			
		||||
 
 | 
			
		||||
@@ -89,6 +89,10 @@ public class TSerializer {
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public static String write(TSerializable serializable) {
 | 
			
		||||
        return writeJson(serializable).toString();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public static JsonObject writeJson(TSerializable serializable) {
 | 
			
		||||
        JsonObject jsonObject = new JsonObject();
 | 
			
		||||
        JsonObject serializeObject = new JsonObject();
 | 
			
		||||
        for (Field declaredField : serializable.getClass().getDeclaredFields()) {
 | 
			
		||||
@@ -147,7 +151,7 @@ public class TSerializer {
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        jsonObject.add("serializeObject", serializeObject);
 | 
			
		||||
        return jsonObject.toString();
 | 
			
		||||
        return jsonObject;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public static void readMap(Map map, String serializedString, TSerializerElementGeneral elementKey, TSerializerElementGeneral elementValue) {
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user