From 225fa778ce831b906f2b65537042e3ece945e662 Mon Sep 17 00:00:00 2001
From: disclearing <46827438+disclearing@users.noreply.github.com>
Date: Sat, 17 Aug 2019 21:01:25 +0100
Subject: [PATCH] yes
---
kentono-i-edate-girls-core-master/Core.iml | 2 +
kentono-i-edate-girls-core-master/pom.xml | 25 ++++
.../main/java/cc/kentono/core/CorePlugin.java | 75 ++++++++++
.../java/cc/kentono/core/command/Command.java | 21 +++
.../kentono/core/command/CommandHandler.java | 133 ++++++++++++++++++
.../core/command/impl/ExampleCommand.java | 14 ++
.../core/command/impl/ListCommand.java | 23 +++
.../core/command/impl/rank/RankCommand.java | 21 +++
.../rank/args/RankAddPermissionCommand.java | 28 ++++
.../impl/rank/args/RankCreateCommand.java | 24 ++++
.../impl/rank/args/RankDeleteCommand.java | 22 +++
.../impl/rank/args/RankInfoCommand.java | 36 +++++
.../args/RankRemovePermissionCommand.java | 28 ++++
.../impl/rank/args/RankSetColorCommand.java | 30 ++++
.../impl/rank/args/RankSetPrefixCommand.java | 23 +++
.../impl/rank/args/RankSetSuffixCommand.java | 23 +++
.../impl/rank/args/RankSetWeightCommand.java | 23 +++
.../impl/rank/grants/GrantCommand.java | 23 +++
.../impl/rank/grants/menu/GrantMenu.java | 53 +++++++
.../kentono/core/listener/ChatListeners.java | 41 ++++++
.../core/listener/PlayerListeners.java | 43 ++++++
.../java/cc/kentono/core/profile/Profile.java | 113 +++++++++++++++
.../main/java/cc/kentono/core/rank/Rank.java | 126 +++++++++++++++++
.../cc/kentono/core/rank/grant/Grant.java | 18 +++
.../core/rank/grant/GrantProcedure.java | 4 +
.../main/java/cc/kentono/core/util/CC.java | 125 ++++++++++++++++
.../cc/kentono/core/util/MongoHandler.java | 22 +++
.../java/cc/kentono/core/util/PlayerUtil.java | 15 ++
.../java/cc/kentono/core/util/WoolColor.java | 72 ++++++++++
.../core/util/menu/InteractListener.java | 20 +++
.../kentono/core/util/menu/MenuManager.java | 23 +++
.../kentono/core/util/menu/impl/Button.java | 59 ++++++++
.../cc/kentono/core/util/menu/impl/Menu.java | 36 +++++
.../src/main/resources/plugin.yml | 4 +
34 files changed, 1348 insertions(+)
create mode 100644 kentono-i-edate-girls-core-master/Core.iml
create mode 100644 kentono-i-edate-girls-core-master/pom.xml
create mode 100644 kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/CorePlugin.java
create mode 100644 kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/command/Command.java
create mode 100644 kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/command/CommandHandler.java
create mode 100644 kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/command/impl/ExampleCommand.java
create mode 100644 kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/command/impl/ListCommand.java
create mode 100644 kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/command/impl/rank/RankCommand.java
create mode 100644 kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/command/impl/rank/args/RankAddPermissionCommand.java
create mode 100644 kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/command/impl/rank/args/RankCreateCommand.java
create mode 100644 kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/command/impl/rank/args/RankDeleteCommand.java
create mode 100644 kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/command/impl/rank/args/RankInfoCommand.java
create mode 100644 kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/command/impl/rank/args/RankRemovePermissionCommand.java
create mode 100644 kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/command/impl/rank/args/RankSetColorCommand.java
create mode 100644 kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/command/impl/rank/args/RankSetPrefixCommand.java
create mode 100644 kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/command/impl/rank/args/RankSetSuffixCommand.java
create mode 100644 kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/command/impl/rank/args/RankSetWeightCommand.java
create mode 100644 kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/command/impl/rank/grants/GrantCommand.java
create mode 100644 kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/command/impl/rank/grants/menu/GrantMenu.java
create mode 100644 kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/listener/ChatListeners.java
create mode 100644 kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/listener/PlayerListeners.java
create mode 100644 kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/profile/Profile.java
create mode 100644 kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/rank/Rank.java
create mode 100644 kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/rank/grant/Grant.java
create mode 100644 kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/rank/grant/GrantProcedure.java
create mode 100644 kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/util/CC.java
create mode 100644 kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/util/MongoHandler.java
create mode 100644 kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/util/PlayerUtil.java
create mode 100644 kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/util/WoolColor.java
create mode 100644 kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/util/menu/InteractListener.java
create mode 100644 kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/util/menu/MenuManager.java
create mode 100644 kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/util/menu/impl/Button.java
create mode 100644 kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/util/menu/impl/Menu.java
create mode 100644 kentono-i-edate-girls-core-master/src/main/resources/plugin.yml
diff --git a/kentono-i-edate-girls-core-master/Core.iml b/kentono-i-edate-girls-core-master/Core.iml
new file mode 100644
index 0000000..78b2cc5
--- /dev/null
+++ b/kentono-i-edate-girls-core-master/Core.iml
@@ -0,0 +1,2 @@
+
+
\ No newline at end of file
diff --git a/kentono-i-edate-girls-core-master/pom.xml b/kentono-i-edate-girls-core-master/pom.xml
new file mode 100644
index 0000000..47bcf55
--- /dev/null
+++ b/kentono-i-edate-girls-core-master/pom.xml
@@ -0,0 +1,25 @@
+
+
+ 4.0.0
+
+ cc.kentono.core
+ Core
+ 1.0-SNAPSHOT
+
+
+
+ org.projectlombok
+ lombok
+ 1.18.8
+
+
+
+ org.mongodb
+ mongo-java-driver
+ 3.10.2
+
+
+
+
\ No newline at end of file
diff --git a/kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/CorePlugin.java b/kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/CorePlugin.java
new file mode 100644
index 0000000..4cb2dbd
--- /dev/null
+++ b/kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/CorePlugin.java
@@ -0,0 +1,75 @@
+package cc.kentono.core;
+
+import cc.kentono.core.command.CommandHandler;
+import cc.kentono.core.command.impl.ExampleCommand;
+import cc.kentono.core.command.impl.ListCommand;
+import cc.kentono.core.command.impl.rank.RankCommand;
+import cc.kentono.core.command.impl.rank.args.*;
+import cc.kentono.core.command.impl.rank.grants.GrantCommand;
+import cc.kentono.core.listener.ChatListeners;
+import cc.kentono.core.listener.PlayerListeners;
+import cc.kentono.core.profile.Profile;
+import cc.kentono.core.rank.Rank;
+import cc.kentono.core.util.MongoHandler;
+import cc.kentono.core.util.menu.MenuManager;
+import lombok.Getter;
+import org.bukkit.Bukkit;
+import org.bukkit.plugin.java.JavaPlugin;
+
+import java.util.Arrays;
+
+@Getter
+public class CorePlugin extends JavaPlugin {
+
+ @Getter
+ private static CorePlugin instance;
+
+ private MongoHandler mongoHandler;
+ private MenuManager menuManager;
+
+ public void onEnable() {
+ instance = this;
+
+ this.mongoHandler = new MongoHandler();
+ this.menuManager = new MenuManager(this);
+ Rank.load();
+ Profile.load();
+
+ this.registerListeners();
+ this.registerCommands();
+ }
+
+ private void registerListeners() {
+ Arrays.asList(
+ new PlayerListeners(),
+ new ChatListeners()
+ ).forEach(listener -> Bukkit.getPluginManager().registerEvents(listener, this));
+ }
+
+ private void registerCommands() {
+ CommandHandler handler = new CommandHandler(this, "moon" /* prefix infront of :, example: /moon:gay */);
+ handler.registerCommands(
+ /* ranks */
+ new RankCommand(),
+ new RankCreateCommand(),
+ new RankDeleteCommand(),
+ new RankSetColorCommand(),
+ new RankSetPrefixCommand(),
+ new RankSetSuffixCommand(),
+ new RankAddPermissionCommand(),
+ new RankRemovePermissionCommand(),
+ new RankInfoCommand(),
+ /* ranks */
+
+ new GrantCommand(),
+
+ new ListCommand()
+ );
+ }
+
+ public void onDisable() {
+ Rank.getRanks().parallelStream().forEach(Rank::save);
+ mongoHandler.getClient().close();
+ }
+
+}
diff --git a/kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/command/Command.java b/kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/command/Command.java
new file mode 100644
index 0000000..cf645b2
--- /dev/null
+++ b/kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/command/Command.java
@@ -0,0 +1,21 @@
+package cc.kentono.core.command;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+@Retention(RetentionPolicy.RUNTIME)
+@Target(ElementType.METHOD)
+public @interface Command {
+
+ String name();
+ String permission() default "";
+ String usage() default "";
+
+ String[] aliases() default {""};
+
+ int requiredArgs() default 0;
+ boolean playerOnly() default false;
+
+}
diff --git a/kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/command/CommandHandler.java b/kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/command/CommandHandler.java
new file mode 100644
index 0000000..883d5d7
--- /dev/null
+++ b/kentono-i-edate-girls-core-master/src/main/java/cc/kentono/core/command/CommandHandler.java
@@ -0,0 +1,133 @@
+package cc.kentono.core.command;
+
+import cc.kentono.core.util.CC;
+import lombok.Getter;
+import org.bukkit.Bukkit;
+import org.bukkit.command.CommandMap;
+import org.bukkit.command.CommandSender;
+import org.bukkit.entity.Player;
+import org.bukkit.plugin.java.JavaPlugin;
+
+import java.lang.reflect.Field;
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
+import java.util.*;
+
+/**
+ * Command API
+ *
+ * I really need a better Command API, this one is fucking ass....
+ * It is functional though, and I don't wnat to use an opensource command api.
+ *
+ */
+
+@Getter
+public class CommandHandler {
+
+
+ private JavaPlugin plugin;
+ private String fallbackPrefix;
+
+ private Map