Fix Reflection
This commit is contained in:
parent
5908428403
commit
ea9a782975
@ -31,6 +31,7 @@ public class LocalPlayer {
|
||||
files.forEach((name, file) -> {
|
||||
try {
|
||||
file.save(toFile(name));
|
||||
} catch (NullPointerException ignored) {
|
||||
} catch (Throwable t) {
|
||||
t.printStackTrace();
|
||||
}
|
||||
@ -43,6 +44,7 @@ public class LocalPlayer {
|
||||
if (toPlayer(name) == null) {
|
||||
try {
|
||||
files.remove(name).save(toFile(name));
|
||||
} catch (NullPointerException ignored) {
|
||||
} catch (Throwable t) {
|
||||
t.printStackTrace();
|
||||
}
|
||||
|
@ -63,50 +63,50 @@ public class SimpleReflection {
|
||||
}
|
||||
|
||||
public static void setFieldValue(Class<?> nmsClass, Object instance, String fieldName, Object value) {
|
||||
Map<String, Field> fields = fieldCached.get(nmsClass.getName());
|
||||
if (fields == null) {
|
||||
throw new RuntimeException("Not Found Cache.");
|
||||
}
|
||||
Field field = fields.get(fieldName);
|
||||
if (value == null) {
|
||||
throw new RuntimeException("Not Found Field.");
|
||||
}
|
||||
try {
|
||||
Map<String, Field> fields = fieldCached.get(nmsClass.getName());
|
||||
if (fields == null) {
|
||||
throw new RuntimeException("Not Found Cache.");
|
||||
}
|
||||
Field field = fields.get(fieldName);
|
||||
if (value == null) {
|
||||
throw new RuntimeException("Not Found Field.");
|
||||
}
|
||||
field.set(instance, value);
|
||||
} catch (Exception e) {
|
||||
} catch (IllegalAccessException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
public static Object getFieldValue(Class<?> nmsClass, Object instance, String fieldName) {
|
||||
Map<String, Field> fields = fieldCached.get(nmsClass.getName());
|
||||
if (fields == null) {
|
||||
throw new RuntimeException("Not Found Cache.");
|
||||
}
|
||||
Field field = fields.get(fieldName);
|
||||
if (field == null) {
|
||||
throw new RuntimeException("Not Found Field.");
|
||||
}
|
||||
try {
|
||||
Map<String, Field> fields = fieldCached.get(nmsClass.getName());
|
||||
if (fields == null) {
|
||||
throw new RuntimeException("Not Found Cache.");
|
||||
}
|
||||
Field field = fields.get(fieldName);
|
||||
if (field == null) {
|
||||
throw new RuntimeException("Not Found Field.");
|
||||
}
|
||||
return field.get(instance);
|
||||
} catch (Exception e) {
|
||||
} catch (IllegalAccessException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public static <T> T getFieldValue(Class<?> nmsClass, Object instance, String fieldName, T def) {
|
||||
Map<String, Field> fields = fieldCached.get(nmsClass.getName());
|
||||
if (fields == null) {
|
||||
throw new RuntimeException("Not Found Cache.");
|
||||
}
|
||||
Field field = fields.get(fieldName);
|
||||
if (field == null) {
|
||||
throw new RuntimeException("Not Found Field.");
|
||||
}
|
||||
try {
|
||||
Map<String, Field> fields = fieldCached.get(nmsClass.getName());
|
||||
if (fields == null) {
|
||||
throw new RuntimeException("Not Found Cache.");
|
||||
}
|
||||
Field field = fields.get(fieldName);
|
||||
if (field == null) {
|
||||
throw new RuntimeException("Not Found Field.");
|
||||
}
|
||||
return (T) field.get(instance);
|
||||
} catch (Exception e) {
|
||||
} catch (IllegalAccessException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
return def;
|
||||
|
@ -15,5 +15,4 @@ object AsyncTask {
|
||||
def apply(init: Long, period: Long)(task: => Any)(implicit plugin: Plugin): Int = {
|
||||
ScalaTaskExecutor(task).runTaskTimerAsynchronously(plugin, init, period).getTaskId
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -29,5 +29,4 @@ class Example extends JavaPlugin with Listener {
|
||||
class a
|
||||
assert(this == JavaPlugin.getProvidingPlugin(classOf[a]))
|
||||
}
|
||||
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user