Skip to content

Commit

Permalink
🐛 Now working on Spigot :)
Browse files Browse the repository at this point in the history
  • Loading branch information
SkytAsul committed May 5, 2024
1 parent 3339eb5 commit 4eaa87b
Showing 1 changed file with 4 additions and 16 deletions.
20 changes: 4 additions & 16 deletions src/main/java/fr/skytasul/glowingentities/GlowingEntities.java
Original file line number Diff line number Diff line change
Expand Up @@ -392,13 +392,8 @@ public void log(LogRecord logRecord) {

Class<?> dataWatcherClass = getNMSClass("network.syncher", "DataWatcher");

Class<?>[] watcherConstructorArgsType;
Object[] watcherConstructorArgs;
if (version > 20 || (version == 20 && versionMinor >= 5)) {
watcherConstructorArgsType = new Class<?>[] {getNMSClass("network.syncher", "SyncedDataHolder"),
getNMSClass("network.syncher", "SynchedEntityData$DataItem").arrayType()};
watcherConstructorArgs = new Object[] {markerEntity, new Object[0]};
var watcherBuilder = getNMSClass("network.syncher", "SynchedEntityData$Builder")
var watcherBuilder = getNMSClass("network.syncher", "DataWatcher$a")
.getDeclaredConstructor(getNMSClass("network.syncher", "SyncedDataHolder"))
.newInstance(markerEntity);
Field watcherBuilderItems = watcherBuilder.getClass().getDeclaredField(remapped ? "itemsById" : "b");
Expand All @@ -408,8 +403,8 @@ public void log(LogRecord logRecord) {
watcherDummy =
watcherBuilder.getClass().getDeclaredMethod(remapped ? "build" : "a").invoke(watcherBuilder);
} else {
watcherConstructorArgsType = new Class<?>[] {entityClass};
watcherConstructorArgs = new Object[] {markerEntity};
var watcherConstructorArgsType = new Class<?>[] {entityClass};
var watcherConstructorArgs = new Object[] {markerEntity};
watcherDummy = dataWatcherClass.getDeclaredConstructor(watcherConstructorArgsType)
.newInstance(watcherConstructorArgs);
}
Expand Down Expand Up @@ -778,14 +773,6 @@ public static void removePacketsHandler(PlayerData playerData) throws Reflective
}

/* Reflection utils */
private static Method getMethod(Class<?> clazz, String name) throws NoSuchMethodException {
for (Method m : clazz.getDeclaredMethods()) {
if (m.getName().equals(name))
return m;
}
throw new NoSuchMethodException(name + " in " + clazz.getName());
}

@Deprecated
private static Object getField(Class<?> clazz, String name, Object instance) throws ReflectiveOperationException {
return getField(clazz, name).get(instance);
Expand Down Expand Up @@ -1028,6 +1015,7 @@ private enum ProtocolMappings {
"id",
"packedItems"
)
// remapping not complete: should also use remapped class names
;

private final int major, minor;
Expand Down

0 comments on commit 4eaa87b

Please sign in to comment.