mirror of
https://github.com/CarmJos/EasyPlugin.git
synced 2026-06-05 09:01:47 +08:00
Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 77c035c2cb | |||
| fbf118436e | |||
| 572c22d2fc | |||
| e416363751 |
@@ -5,7 +5,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<artifactId>easyplugin-parent</artifactId>
|
<artifactId>easyplugin-parent</artifactId>
|
||||||
<groupId>cc.carm.lib</groupId>
|
<groupId>cc.carm.lib</groupId>
|
||||||
<version>1.4.7</version>
|
<version>1.4.9</version>
|
||||||
<relativePath>../../pom.xml</relativePath>
|
<relativePath>../../pom.xml</relativePath>
|
||||||
</parent>
|
</parent>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|||||||
@@ -38,7 +38,9 @@ public abstract class CommandHandler implements TabExecutor, NamedExecutor {
|
|||||||
|
|
||||||
public abstract void noArgs(CommandSender sender);
|
public abstract void noArgs(CommandSender sender);
|
||||||
|
|
||||||
public abstract void unknownCommand(CommandSender sender, String[] args);
|
public void unknownCommand(CommandSender sender, String[] args) {
|
||||||
|
noArgs(sender);
|
||||||
|
}
|
||||||
|
|
||||||
public abstract void noPermission(CommandSender sender);
|
public abstract void noPermission(CommandSender sender);
|
||||||
|
|
||||||
|
|||||||
@@ -1,15 +1,18 @@
|
|||||||
package cc.carm.lib.easyplugin.command;
|
package cc.carm.lib.easyplugin.command;
|
||||||
|
|
||||||
|
import com.google.common.collect.ImmutableList;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.Material;
|
import org.bukkit.Material;
|
||||||
import org.bukkit.OfflinePlayer;
|
import org.bukkit.OfflinePlayer;
|
||||||
import org.bukkit.World;
|
import org.bukkit.World;
|
||||||
|
import org.bukkit.enchantments.Enchantment;
|
||||||
import org.bukkit.entity.HumanEntity;
|
import org.bukkit.entity.HumanEntity;
|
||||||
import org.bukkit.potion.PotionEffectType;
|
import org.bukkit.potion.PotionEffectType;
|
||||||
import org.bukkit.util.StringUtil;
|
import org.bukkit.util.StringUtil;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
|
import java.util.Collection;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
@@ -17,14 +20,22 @@ import java.util.stream.Stream;
|
|||||||
|
|
||||||
public class SimpleCompleter {
|
public class SimpleCompleter {
|
||||||
|
|
||||||
public static @NotNull List<String> objects(@NotNull String input, List<?> objects) {
|
public static @NotNull List<String> none() {
|
||||||
|
return ImmutableList.of();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static @NotNull List<String> objects(@NotNull String input, Collection<?> objects) {
|
||||||
return objects(input, objects.size(), objects);
|
return objects(input, objects.size(), objects);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static @NotNull List<String> objects(@NotNull String input, int limit, List<?> objects) {
|
public static @NotNull List<String> objects(@NotNull String input, int limit, Collection<?> objects) {
|
||||||
return objects(input, limit, objects.stream());
|
return objects(input, limit, objects.stream());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static @NotNull List<String> objects(@NotNull String input, Stream<?> stream) {
|
||||||
|
return objects(input, 20, stream);
|
||||||
|
}
|
||||||
|
|
||||||
public static @NotNull List<String> objects(@NotNull String input, int limit, Stream<?> stream) {
|
public static @NotNull List<String> objects(@NotNull String input, int limit, Stream<?> stream) {
|
||||||
return stream.filter(Objects::nonNull).map(Object::toString)
|
return stream.filter(Objects::nonNull).map(Object::toString)
|
||||||
.filter(s -> StringUtil.startsWithIgnoreCase(s, input))
|
.filter(s -> StringUtil.startsWithIgnoreCase(s, input))
|
||||||
@@ -39,11 +50,11 @@ public class SimpleCompleter {
|
|||||||
return text(input, limit, Arrays.asList(texts));
|
return text(input, limit, Arrays.asList(texts));
|
||||||
}
|
}
|
||||||
|
|
||||||
public static @NotNull List<String> text(@NotNull String input, List<String> texts) {
|
public static @NotNull List<String> text(@NotNull String input, Collection<String> texts) {
|
||||||
return text(input, texts.size(), texts);
|
return text(input, texts.size(), texts);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static @NotNull List<String> text(@NotNull String input, int limit, List<String> texts) {
|
public static @NotNull List<String> text(@NotNull String input, int limit, Collection<String> texts) {
|
||||||
return objects(input, limit, texts);
|
return objects(input, limit, texts);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -87,4 +98,13 @@ public class SimpleCompleter {
|
|||||||
return objects(input, limit, Arrays.stream(PotionEffectType.values()).map(PotionEffectType::getName));
|
return objects(input, limit, Arrays.stream(PotionEffectType.values()).map(PotionEffectType::getName));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static @NotNull List<String> enchantments(@NotNull String input) {
|
||||||
|
return effects(input, 10);
|
||||||
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings("deprecation")
|
||||||
|
public static @NotNull List<String> enchantments(@NotNull String input, int limit) {
|
||||||
|
return objects(input, limit, Arrays.stream(Enchantment.values()).map(Enchantment::getName));
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -5,7 +5,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<artifactId>easyplugin-parent</artifactId>
|
<artifactId>easyplugin-parent</artifactId>
|
||||||
<groupId>cc.carm.lib</groupId>
|
<groupId>cc.carm.lib</groupId>
|
||||||
<version>1.4.7</version>
|
<version>1.4.9</version>
|
||||||
<relativePath>../../pom.xml</relativePath>
|
<relativePath>../../pom.xml</relativePath>
|
||||||
</parent>
|
</parent>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|||||||
+1
-1
@@ -56,7 +56,7 @@ public class GUIItemConfiguration {
|
|||||||
if (this.slots.size() > 1) {
|
if (this.slots.size() > 1) {
|
||||||
map.put("slots", this.slots);
|
map.put("slots", this.slots);
|
||||||
} else if (slots.size() == 1) {
|
} else if (slots.size() == 1) {
|
||||||
map.put("slots", this.slots.get(0));
|
map.put("slot", this.slots.get(0));
|
||||||
}
|
}
|
||||||
if (!this.actions.isEmpty()) {
|
if (!this.actions.isEmpty()) {
|
||||||
map.put("actions", this.actions.stream().map(GUIActionConfiguration::serialize).collect(Collectors.toList()));
|
map.put("actions", this.actions.stream().map(GUIActionConfiguration::serialize).collect(Collectors.toList()));
|
||||||
|
|||||||
+1
-1
@@ -5,7 +5,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<artifactId>easyplugin-parent</artifactId>
|
<artifactId>easyplugin-parent</artifactId>
|
||||||
<groupId>cc.carm.lib</groupId>
|
<groupId>cc.carm.lib</groupId>
|
||||||
<version>1.4.7</version>
|
<version>1.4.9</version>
|
||||||
<relativePath>../../pom.xml</relativePath>
|
<relativePath>../../pom.xml</relativePath>
|
||||||
</parent>
|
</parent>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|||||||
@@ -45,8 +45,8 @@ public abstract class EasyPlugin extends JavaPlugin {
|
|||||||
this.messageProvider = messageProvider;
|
this.messageProvider = messageProvider;
|
||||||
}
|
}
|
||||||
|
|
||||||
private SchedulerUtils scheduler;
|
protected SchedulerUtils scheduler;
|
||||||
private boolean initialized = false;
|
protected boolean initialized = false;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public final void onLoad() {
|
public final void onLoad() {
|
||||||
@@ -79,7 +79,7 @@ public abstract class EasyPlugin extends JavaPlugin {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public final void onDisable() {
|
public final void onDisable() {
|
||||||
if (!hasOverride("shutdown") || !isInitialized()) return;
|
if (!hasOverride("shutdown") || !this.initialized) return;
|
||||||
outputInfo();
|
outputInfo();
|
||||||
|
|
||||||
log(messageProvider.disabling(this));
|
log(messageProvider.disabling(this));
|
||||||
@@ -103,10 +103,6 @@ public abstract class EasyPlugin extends JavaPlugin {
|
|||||||
Optional.ofNullable(JarResourceUtils.readResource(this.getResource("PLUGIN_INFO"))).ifPresent(this::log);
|
Optional.ofNullable(JarResourceUtils.readResource(this.getResource("PLUGIN_INFO"))).ifPresent(this::log);
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean isInitialized() {
|
|
||||||
return initialized;
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isDebugging() {
|
public boolean isDebugging() {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@@ -149,15 +145,16 @@ public abstract class EasyPlugin extends JavaPlugin {
|
|||||||
if (isDebugging()) print("&8[DEBUG] &r", messages);
|
if (isDebugging()) print("&8[DEBUG] &r", messages);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void callEventSync(Event event) {
|
public @NotNull <T extends Event> CompletableFuture<T> callSync(T event) {
|
||||||
getScheduler().run(() -> Bukkit.getPluginManager().callEvent(event));
|
CompletableFuture<T> future = new CompletableFuture<>();
|
||||||
|
getScheduler().run(() -> {
|
||||||
|
Bukkit.getPluginManager().callEvent(event);
|
||||||
|
future.complete(event);
|
||||||
|
});
|
||||||
|
return future;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void callEventAsync(Event event) {
|
public @NotNull <T extends Event> CompletableFuture<T> callAsync(T event) {
|
||||||
getScheduler().runAsync(() -> Bukkit.getPluginManager().callEvent(event));
|
|
||||||
}
|
|
||||||
|
|
||||||
public @NotNull <T extends Event> CompletableFuture<T> callEventFuture(T event) {
|
|
||||||
return CompletableFuture.supplyAsync(() -> {
|
return CompletableFuture.supplyAsync(() -> {
|
||||||
Bukkit.getPluginManager().callEvent(event);
|
Bukkit.getPluginManager().callEvent(event);
|
||||||
return event;
|
return event;
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<artifactId>easyplugin-parent</artifactId>
|
<artifactId>easyplugin-parent</artifactId>
|
||||||
<groupId>cc.carm.lib</groupId>
|
<groupId>cc.carm.lib</groupId>
|
||||||
<version>1.4.7</version>
|
<version>1.4.9</version>
|
||||||
<relativePath>../../pom.xml</relativePath>
|
<relativePath>../../pom.xml</relativePath>
|
||||||
</parent>
|
</parent>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<artifactId>easyplugin-parent</artifactId>
|
<artifactId>easyplugin-parent</artifactId>
|
||||||
<groupId>cc.carm.lib</groupId>
|
<groupId>cc.carm.lib</groupId>
|
||||||
<version>1.4.7</version>
|
<version>1.4.9</version>
|
||||||
<relativePath>../../pom.xml</relativePath>
|
<relativePath>../../pom.xml</relativePath>
|
||||||
</parent>
|
</parent>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<artifactId>easyplugin-parent</artifactId>
|
<artifactId>easyplugin-parent</artifactId>
|
||||||
<groupId>cc.carm.lib</groupId>
|
<groupId>cc.carm.lib</groupId>
|
||||||
<version>1.4.7</version>
|
<version>1.4.9</version>
|
||||||
<relativePath>../../pom.xml</relativePath>
|
<relativePath>../../pom.xml</relativePath>
|
||||||
</parent>
|
</parent>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<artifactId>easyplugin-parent</artifactId>
|
<artifactId>easyplugin-parent</artifactId>
|
||||||
<groupId>cc.carm.lib</groupId>
|
<groupId>cc.carm.lib</groupId>
|
||||||
<version>1.4.7</version>
|
<version>1.4.9</version>
|
||||||
<relativePath>../../pom.xml</relativePath>
|
<relativePath>../../pom.xml</relativePath>
|
||||||
</parent>
|
</parent>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<artifactId>easyplugin-parent</artifactId>
|
<artifactId>easyplugin-parent</artifactId>
|
||||||
<groupId>cc.carm.lib</groupId>
|
<groupId>cc.carm.lib</groupId>
|
||||||
<version>1.4.7</version>
|
<version>1.4.9</version>
|
||||||
<relativePath>../../pom.xml</relativePath>
|
<relativePath>../../pom.xml</relativePath>
|
||||||
</parent>
|
</parent>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<artifactId>easyplugin-parent</artifactId>
|
<artifactId>easyplugin-parent</artifactId>
|
||||||
<groupId>cc.carm.lib</groupId>
|
<groupId>cc.carm.lib</groupId>
|
||||||
<version>1.4.7</version>
|
<version>1.4.9</version>
|
||||||
<relativePath>../../pom.xml</relativePath>
|
<relativePath>../../pom.xml</relativePath>
|
||||||
</parent>
|
</parent>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
<parent>
|
<parent>
|
||||||
<artifactId>easyplugin-parent</artifactId>
|
<artifactId>easyplugin-parent</artifactId>
|
||||||
<groupId>cc.carm.lib</groupId>
|
<groupId>cc.carm.lib</groupId>
|
||||||
<version>1.4.7</version>
|
<version>1.4.9</version>
|
||||||
<relativePath>../../pom.xml</relativePath>
|
<relativePath>../../pom.xml</relativePath>
|
||||||
</parent>
|
</parent>
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|||||||
@@ -10,17 +10,12 @@
|
|||||||
<maven.compiler.target>${project.jdk.version}</maven.compiler.target>
|
<maven.compiler.target>${project.jdk.version}</maven.compiler.target>
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||||
<maven.compiler.encoding>UTF-8</maven.compiler.encoding>
|
<maven.compiler.encoding>UTF-8</maven.compiler.encoding>
|
||||||
|
|
||||||
<dep.spigot>1.3.1</dep.spigot>
|
|
||||||
<dep.githubreleases4j>1.3.1</dep.githubreleases4j>
|
|
||||||
|
|
||||||
|
|
||||||
</properties>
|
</properties>
|
||||||
|
|
||||||
<groupId>cc.carm.lib</groupId>
|
<groupId>cc.carm.lib</groupId>
|
||||||
<artifactId>easyplugin-parent</artifactId>
|
<artifactId>easyplugin-parent</artifactId>
|
||||||
<packaging>pom</packaging>
|
<packaging>pom</packaging>
|
||||||
<version>1.4.7</version>
|
<version>1.4.9</version>
|
||||||
<modules>
|
<modules>
|
||||||
|
|
||||||
<module>base/main</module>
|
<module>base/main</module>
|
||||||
|
|||||||
Reference in New Issue
Block a user