Quicker instance getting for Quick features.

This commit is contained in:
wolf
2025-07-26 00:28:47 -05:00
parent 67e9d3e81b
commit e96b4905d8
20 changed files with 18 additions and 0 deletions

0
gradlew vendored Normal file → Executable file
View File

View File

View File

View File

View File

@@ -12,7 +12,9 @@ import org.bukkit.plugin.java.JavaPlugin;
import java.lang.reflect.Modifier;
import java.util.ArrayList;
import java.util.List;
import java.util.Optional;
import java.util.Set;
import java.util.function.Supplier;
import java.util.logging.Level;
public class AutoRegistrar {
@@ -89,4 +91,20 @@ public class AutoRegistrar {
public List<QuickListener> getQuickListeners() { return quickListeners; }
public List<AbstractWand> getWands() { return wands; }
public List<JsonSerializable<?>> getSerializables() { return serializables; }
public <T extends QuickListener> T getQuickListener(Class<T> clazz) {
return quickListeners.stream()
.filter(clazz::isInstance)
.map(clazz::cast)
.findFirst()
.orElse(null);
}
public <T extends QuickCommand> T getQuickCommand(Class<T> clazz) {
return quickCommands.stream()
.filter(clazz::isInstance)
.map(clazz::cast)
.findFirst()
.orElseThrow();
}
}

View File

View File

View File

View File

View File

View File

View File

View File

View File