Skip to content

Commit 6599ecf

Browse files
committed
Fixed deprecation check
1 parent ba88707 commit 6599ecf

File tree

2 files changed

+23
-11
lines changed

2 files changed

+23
-11
lines changed

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
<groupId>com.xxmicloxx</groupId>
88
<artifactId>NoteBlockAPI</artifactId>
9-
<version>1.2.2</version>
9+
<version>1.2.2.1</version>
1010
<name>NoteBlockAPI</name>
1111

1212
<properties>

src/main/java/com/xxmicloxx/NoteBlockAPI/NoteBlockAPI.java

Lines changed: 22 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
package com.xxmicloxx.NoteBlockAPI;
22

33
import java.io.IOException;
4+
import java.lang.reflect.Method;
5+
import java.lang.reflect.Type;
46
import java.util.ArrayList;
57
import java.util.Collections;
68
import java.util.HashMap;
@@ -10,6 +12,7 @@
1012
import org.bstats.bukkit.Metrics;
1113
import org.bukkit.Bukkit;
1214
import org.bukkit.entity.Player;
15+
import org.bukkit.event.HandlerList;
1316
import org.bukkit.plugin.Plugin;
1417
import org.bukkit.plugin.RegisteredListener;
1518
import org.bukkit.plugin.java.JavaPlugin;
@@ -117,19 +120,28 @@ public void onEnable() {
117120
@Override
118121
public void run() {
119122
Plugin[] plugins = getServer().getPluginManager().getPlugins();
120-
for(Plugin plugin: plugins) {
121-
122-
ArrayList<RegisteredListener> rls = new ArrayList<>();
123-
rls.addAll(PlayerRangeStateChangeEvent.getHandlerList().getRegisteredListeners(plugin));
124-
rls.addAll(SongDestroyingEvent.getHandlerList().getRegisteredListeners(plugin));
125-
rls.addAll(SongEndEvent.getHandlerList().getRegisteredListeners(plugin));
126-
rls.addAll(SongStoppedEvent.getHandlerList().getRegisteredListeners(plugin));
127-
if (!rls.isEmpty()){
128-
dependentPlugins.put(plugin, true);
123+
Type[] types = new Type[]{PlayerRangeStateChangeEvent.class, SongDestroyingEvent.class, SongEndEvent.class, SongStoppedEvent.class };
124+
for (Plugin plugin : plugins) {
125+
ArrayList<RegisteredListener> rls = HandlerList.getRegisteredListeners(plugin);
126+
for (RegisteredListener rl : rls) {
127+
Method[] methods = rl.getListener().getClass().getDeclaredMethods();
128+
for (Method m : methods) {
129+
Type[] params = m.getParameterTypes();
130+
param:
131+
for (Type paramType : params) {
132+
for (Type type : types){
133+
if (paramType.equals(type)) {
134+
dependentPlugins.put(plugin, true);
135+
break param;
136+
}
137+
}
138+
}
139+
}
140+
129141
}
130142
}
131143
}
132-
}, 20*60);
144+
}, 20*30);
133145

134146
getServer().getScheduler().runTaskLater(this, new Runnable() {
135147

0 commit comments

Comments
 (0)