PR #39 merged
# Conflicts: # ButtonCore/src/main/java/buttondevteam/lib/chat/Channel.java # ButtonProcessor/src/main/java/buttondevteam/buttonproc/ButtonProcessor.java
This commit is contained in:
commit
739276e797
115 changed files with 870 additions and 313 deletions
13
.idea/ButtonCore.iml
Executable file
13
.idea/ButtonCore.iml
Executable file
|
@ -0,0 +1,13 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
|
||||||
|
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_5">
|
||||||
|
<output url="file://$MODULE_DIR$/target/classes" />
|
||||||
|
<output-test url="file://$MODULE_DIR$/target/test-classes" />
|
||||||
|
<content url="file://$MODULE_DIR$">
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/target" />
|
||||||
|
</content>
|
||||||
|
<orderEntry type="inheritedJdk" />
|
||||||
|
<orderEntry type="sourceFolder" forTests="false" />
|
||||||
|
<orderEntry type="library" scope="TEST" name="Maven: junit:junit:3.8.1" level="project" />
|
||||||
|
</component>
|
||||||
|
</module>
|
21
.idea/compiler.xml
Executable file
21
.idea/compiler.xml
Executable file
|
@ -0,0 +1,21 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="CompilerConfiguration">
|
||||||
|
<annotationProcessing>
|
||||||
|
<profile default="true" name="Default" enabled="true" />
|
||||||
|
<profile name="Maven default annotation processors profile" enabled="true">
|
||||||
|
<sourceOutputDir name="target/generated-sources/annotations" />
|
||||||
|
<sourceTestOutputDir name="target/generated-test-sources/test-annotations" />
|
||||||
|
<outputRelativeToContentRoot value="true" />
|
||||||
|
<module name="BuildConfigUpdater" />
|
||||||
|
<module name="ButtonCore (1) (com.github.TBMCPlugins.ButtonCore)" />
|
||||||
|
</profile>
|
||||||
|
</annotationProcessing>
|
||||||
|
<bytecodeTargetLevel>
|
||||||
|
<module name="BuildConfigUpdater" target="1.8" />
|
||||||
|
<module name="ButtonCore" target="1.5" />
|
||||||
|
<module name="ButtonCore (1) (com.github.TBMCPlugins.ButtonCore)" target="1.8" />
|
||||||
|
<module name="ButtonProcessor" target="1.8" />
|
||||||
|
</bytecodeTargetLevel>
|
||||||
|
</component>
|
||||||
|
</project>
|
7
.idea/encodings.xml
Executable file
7
.idea/encodings.xml
Executable file
|
@ -0,0 +1,7 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="Encoding">
|
||||||
|
<file url="file://$PROJECT_DIR$/ButtonCore" charset="UTF-8" />
|
||||||
|
<file url="file://$PROJECT_DIR$/ButtonProcessor" charset="UTF-8" />
|
||||||
|
</component>
|
||||||
|
</project>
|
|
@ -0,0 +1,13 @@
|
||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Maven: com.github.TBMCPlugins.ButtonCore:Towny:master-v1.0-gc1751b8-228">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/com/github/TBMCPlugins/ButtonCore/Towny/master-v1.0-gc1751b8-228/Towny-master-v1.0-gc1751b8-228.jar!/" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/com/github/TBMCPlugins/ButtonCore/Towny/master-v1.0-gc1751b8-228/Towny-master-v1.0-gc1751b8-228-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/com/github/TBMCPlugins/ButtonCore/Towny/master-v1.0-gc1751b8-228/Towny-master-v1.0-gc1751b8-228-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
13
.idea/libraries/Maven__com_github_milkbowl_VaultAPI_master_8dc0859cba_1.xml
Executable file
13
.idea/libraries/Maven__com_github_milkbowl_VaultAPI_master_8dc0859cba_1.xml
Executable file
|
@ -0,0 +1,13 @@
|
||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Maven: com.github.milkbowl:VaultAPI:master-8dc0859cba-1">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/com/github/milkbowl/VaultAPI/master-8dc0859cba-1/VaultAPI-master-8dc0859cba-1.jar!/" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/com/github/milkbowl/VaultAPI/master-8dc0859cba-1/VaultAPI-master-8dc0859cba-1-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/com/github/milkbowl/VaultAPI/master-8dc0859cba-1/VaultAPI-master-8dc0859cba-1-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
13
.idea/libraries/Maven__com_google_code_findbugs_annotations_2_0_1.xml
Executable file
13
.idea/libraries/Maven__com_google_code_findbugs_annotations_2_0_1.xml
Executable file
|
@ -0,0 +1,13 @@
|
||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Maven: com.google.code.findbugs:annotations:2.0.1">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/com/google/code/findbugs/annotations/2.0.1/annotations-2.0.1.jar!/" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/com/google/code/findbugs/annotations/2.0.1/annotations-2.0.1-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/com/google/code/findbugs/annotations/2.0.1/annotations-2.0.1-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
13
.idea/libraries/Maven__com_google_code_gson_gson_2_2_4.xml
Executable file
13
.idea/libraries/Maven__com_google_code_gson_gson_2_2_4.xml
Executable file
|
@ -0,0 +1,13 @@
|
||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Maven: com.google.code.gson:gson:2.2.4">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/com/google/code/gson/gson/2.2.4/gson-2.2.4.jar!/" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/com/google/code/gson/gson/2.2.4/gson-2.2.4-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/com/google/code/gson/gson/2.2.4/gson-2.2.4-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
13
.idea/libraries/Maven__com_google_code_gson_gson_2_8_0.xml
Normal file
13
.idea/libraries/Maven__com_google_code_gson_gson_2_8_0.xml
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Maven: com.google.code.gson:gson:2.8.0">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/com/google/code/gson/gson/2.8.0/gson-2.8.0.jar!/" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/com/google/code/gson/gson/2.8.0/gson-2.8.0-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/com/google/code/gson/gson/2.8.0/gson-2.8.0-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
13
.idea/libraries/Maven__com_google_guava_guava_15_0.xml
Executable file
13
.idea/libraries/Maven__com_google_guava_guava_15_0.xml
Executable file
|
@ -0,0 +1,13 @@
|
||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Maven: com.google.guava:guava:15.0">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/com/google/guava/guava/15.0/guava-15.0.jar!/" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/com/google/guava/guava/15.0/guava-15.0-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/com/google/guava/guava/15.0/guava-15.0-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
13
.idea/libraries/Maven__com_google_guava_guava_21_0.xml
Normal file
13
.idea/libraries/Maven__com_google_guava_guava_21_0.xml
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Maven: com.google.guava:guava:21.0">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/com/google/guava/guava/21.0/guava-21.0.jar!/" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/com/google/guava/guava/21.0/guava-21.0-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/com/google/guava/guava/21.0/guava-21.0-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
13
.idea/libraries/Maven__com_googlecode_json_simple_json_simple_1_1_1.xml
Executable file
13
.idea/libraries/Maven__com_googlecode_json_simple_json_simple_1_1_1.xml
Executable file
|
@ -0,0 +1,13 @@
|
||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Maven: com.googlecode.json-simple:json-simple:1.1.1">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/com/googlecode/json-simple/json-simple/1.1.1/json-simple-1.1.1.jar!/" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/com/googlecode/json-simple/json-simple/1.1.1/json-simple-1.1.1-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/com/googlecode/json-simple/json-simple/1.1.1/json-simple-1.1.1-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
13
.idea/libraries/Maven__commons_io_commons_io_1_3_2.xml
Executable file
13
.idea/libraries/Maven__commons_io_commons_io_1_3_2.xml
Executable file
|
@ -0,0 +1,13 @@
|
||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Maven: commons-io:commons-io:1.3.2">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/commons-io/commons-io/1.3.2/commons-io-1.3.2.jar!/" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/commons-io/commons-io/1.3.2/commons-io-1.3.2-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/commons-io/commons-io/1.3.2/commons-io-1.3.2-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
13
.idea/libraries/Maven__commons_io_commons_io_2_6.xml
Normal file
13
.idea/libraries/Maven__commons_io_commons_io_2_6.xml
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Maven: commons-io:commons-io:2.6">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/commons-io/commons-io/2.6/commons-io-2.6.jar!/" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/commons-io/commons-io/2.6/commons-io-2.6-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/commons-io/commons-io/2.6/commons-io-2.6-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
13
.idea/libraries/Maven__commons_lang_commons_lang_2_6.xml
Executable file
13
.idea/libraries/Maven__commons_lang_commons_lang_2_6.xml
Executable file
|
@ -0,0 +1,13 @@
|
||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Maven: commons-lang:commons-lang:2.6">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/commons-lang/commons-lang/2.6/commons-lang-2.6.jar!/" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/commons-lang/commons-lang/2.6/commons-lang-2.6-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/commons-lang/commons-lang/2.6/commons-lang-2.6-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
13
.idea/libraries/Maven__javax_persistence_persistence_api_1_0.xml
Executable file
13
.idea/libraries/Maven__javax_persistence_persistence_api_1_0.xml
Executable file
|
@ -0,0 +1,13 @@
|
||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Maven: javax.persistence:persistence-api:1.0">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/javax/persistence/persistence-api/1.0/persistence-api-1.0.jar!/" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/javax/persistence/persistence-api/1.0/persistence-api-1.0-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/javax/persistence/persistence-api/1.0/persistence-api-1.0-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
13
.idea/libraries/Maven__junit_junit_3_8_1.xml
Executable file
13
.idea/libraries/Maven__junit_junit_3_8_1.xml
Executable file
|
@ -0,0 +1,13 @@
|
||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Maven: junit:junit:3.8.1">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/junit/junit/3.8.1/junit-3.8.1.jar!/" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/junit/junit/3.8.1/junit-3.8.1-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/junit/junit/3.8.1/junit-3.8.1-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
13
.idea/libraries/Maven__net_bytebuddy_byte_buddy_1_6_11.xml
Executable file
13
.idea/libraries/Maven__net_bytebuddy_byte_buddy_1_6_11.xml
Executable file
|
@ -0,0 +1,13 @@
|
||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Maven: net.bytebuddy:byte-buddy:1.6.11">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/net/bytebuddy/byte-buddy/1.6.11/byte-buddy-1.6.11.jar!/" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/net/bytebuddy/byte-buddy/1.6.11/byte-buddy-1.6.11-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/net/bytebuddy/byte-buddy/1.6.11/byte-buddy-1.6.11-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
13
.idea/libraries/Maven__net_bytebuddy_byte_buddy_agent_1_6_11.xml
Executable file
13
.idea/libraries/Maven__net_bytebuddy_byte_buddy_agent_1_6_11.xml
Executable file
|
@ -0,0 +1,13 @@
|
||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Maven: net.bytebuddy:byte-buddy-agent:1.6.11">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/net/bytebuddy/byte-buddy-agent/1.6.11/byte-buddy-agent-1.6.11.jar!/" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/net/bytebuddy/byte-buddy-agent/1.6.11/byte-buddy-agent-1.6.11-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/net/bytebuddy/byte-buddy-agent/1.6.11/byte-buddy-agent-1.6.11-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
|
@ -0,0 +1,13 @@
|
||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Maven: net.md-5:bungeecord-chat:1.12-SNAPSHOT">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/net/md-5/bungeecord-chat/1.12-SNAPSHOT/bungeecord-chat-1.12-20180513.014306-84.jar!/" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/net/md-5/bungeecord-chat/1.12-SNAPSHOT/bungeecord-chat-1.12-20180513.014306-84-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/net/md-5/bungeecord-chat/1.12-SNAPSHOT/bungeecord-chat-1.12-20180513.014306-84-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
13
.idea/libraries/Maven__net_md_5_bungeecord_chat_1_9_SNAPSHOT.xml
Executable file
13
.idea/libraries/Maven__net_md_5_bungeecord_chat_1_9_SNAPSHOT.xml
Executable file
|
@ -0,0 +1,13 @@
|
||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Maven: net.md-5:bungeecord-chat:1.9-SNAPSHOT">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/net/md-5/bungeecord-chat/1.9-SNAPSHOT/bungeecord-chat-1.9-20160531.105416-38.jar!/" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/net/md-5/bungeecord-chat/1.9-SNAPSHOT/bungeecord-chat-1.9-20160531.105416-38-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/net/md-5/bungeecord-chat/1.9-SNAPSHOT/bungeecord-chat-1.9-20160531.105416-38-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
13
.idea/libraries/Maven__org_avaje_ebean_2_8_1.xml
Executable file
13
.idea/libraries/Maven__org_avaje_ebean_2_8_1.xml
Executable file
|
@ -0,0 +1,13 @@
|
||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Maven: org.avaje:ebean:2.8.1">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/avaje/ebean/2.8.1/ebean-2.8.1.jar!/" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/avaje/ebean/2.8.1/ebean-2.8.1-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/avaje/ebean/2.8.1/ebean-2.8.1-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
13
.idea/libraries/Maven__org_bukkit_bukkit_1_9_R0_1_SNAPSHOT.xml
Executable file
13
.idea/libraries/Maven__org_bukkit_bukkit_1_9_R0_1_SNAPSHOT.xml
Executable file
|
@ -0,0 +1,13 @@
|
||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Maven: org.bukkit:bukkit:1.9-R0.1-SNAPSHOT">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/bukkit/bukkit/1.9-R0.1-SNAPSHOT/bukkit-1.9-R0.1-20160330.160319-146.jar!/" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/bukkit/bukkit/1.9-R0.1-SNAPSHOT/bukkit-1.9-R0.1-20160330.160319-146-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/bukkit/bukkit/1.9-R0.1-SNAPSHOT/bukkit-1.9-R0.1-20160330.160319-146-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
13
.idea/libraries/Maven__org_javassist_javassist_3_20_0_GA.xml
Executable file
13
.idea/libraries/Maven__org_javassist_javassist_3_20_0_GA.xml
Executable file
|
@ -0,0 +1,13 @@
|
||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Maven: org.javassist:javassist:3.20.0-GA">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/javassist/javassist/3.20.0-GA/javassist-3.20.0-GA.jar!/" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/javassist/javassist/3.20.0-GA/javassist-3.20.0-GA-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/javassist/javassist/3.20.0-GA/javassist-3.20.0-GA-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
13
.idea/libraries/Maven__org_mockito_mockito_core_2_7_20.xml
Executable file
13
.idea/libraries/Maven__org_mockito_mockito_core_2_7_20.xml
Executable file
|
@ -0,0 +1,13 @@
|
||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Maven: org.mockito:mockito-core:2.7.20">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/mockito/mockito-core/2.7.20/mockito-core-2.7.20.jar!/" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/mockito/mockito-core/2.7.20/mockito-core-2.7.20-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/mockito/mockito-core/2.7.20/mockito-core-2.7.20-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
13
.idea/libraries/Maven__org_objenesis_objenesis_2_5.xml
Executable file
13
.idea/libraries/Maven__org_objenesis_objenesis_2_5.xml
Executable file
|
@ -0,0 +1,13 @@
|
||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Maven: org.objenesis:objenesis:2.5">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/objenesis/objenesis/2.5/objenesis-2.5.jar!/" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/objenesis/objenesis/2.5/objenesis-2.5-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/objenesis/objenesis/2.5/objenesis-2.5-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
13
.idea/libraries/Maven__org_projectlombok_lombok_1_16_16.xml
Executable file
13
.idea/libraries/Maven__org_projectlombok_lombok_1_16_16.xml
Executable file
|
@ -0,0 +1,13 @@
|
||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Maven: org.projectlombok:lombok:1.16.16">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/projectlombok/lombok/1.16.16/lombok-1.16.16.jar!/" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/projectlombok/lombok/1.16.16/lombok-1.16.16-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/projectlombok/lombok/1.16.16/lombok-1.16.16-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
13
.idea/libraries/Maven__org_reflections_reflections_0_9_10.xml
Executable file
13
.idea/libraries/Maven__org_reflections_reflections_0_9_10.xml
Executable file
|
@ -0,0 +1,13 @@
|
||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Maven: org.reflections:reflections:0.9.10">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/reflections/reflections/0.9.10/reflections-0.9.10.jar!/" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/reflections/reflections/0.9.10/reflections-0.9.10-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/reflections/reflections/0.9.10/reflections-0.9.10-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
|
@ -0,0 +1,13 @@
|
||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Maven: org.spigotmc:spigot-api:1.12.2-R0.1-SNAPSHOT">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/spigotmc/spigot-api/1.12.2-R0.1-SNAPSHOT/spigot-api-1.12.2-R0.1-SNAPSHOT.jar!/" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/spigotmc/spigot-api/1.12.2-R0.1-SNAPSHOT/spigot-api-1.12.2-R0.1-SNAPSHOT-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/spigotmc/spigot-api/1.12.2-R0.1-SNAPSHOT/spigot-api-1.12.2-R0.1-SNAPSHOT-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
13
.idea/libraries/Maven__org_spigotmc_spigot_api_1_9_2_R0_1_SNAPSHOT.xml
Executable file
13
.idea/libraries/Maven__org_spigotmc_spigot_api_1_9_2_R0_1_SNAPSHOT.xml
Executable file
|
@ -0,0 +1,13 @@
|
||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Maven: org.spigotmc:spigot-api:1.9.2-R0.1-SNAPSHOT">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/spigotmc/spigot-api/1.9.2-R0.1-SNAPSHOT/spigot-api-1.9.2-R0.1-20160507.064102-46.jar!/" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/spigotmc/spigot-api/1.9.2-R0.1-SNAPSHOT/spigot-api-1.9.2-R0.1-20160507.064102-46-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/spigotmc/spigot-api/1.9.2-R0.1-SNAPSHOT/spigot-api-1.9.2-R0.1-20160507.064102-46-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
13
.idea/libraries/Maven__org_yaml_snakeyaml_1_15.xml
Executable file
13
.idea/libraries/Maven__org_yaml_snakeyaml_1_15.xml
Executable file
|
@ -0,0 +1,13 @@
|
||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Maven: org.yaml:snakeyaml:1.15">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/yaml/snakeyaml/1.15/snakeyaml-1.15.jar!/" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/yaml/snakeyaml/1.15/snakeyaml-1.15-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/yaml/snakeyaml/1.15/snakeyaml-1.15-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
13
.idea/libraries/Maven__org_yaml_snakeyaml_1_19.xml
Normal file
13
.idea/libraries/Maven__org_yaml_snakeyaml_1_19.xml
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
<component name="libraryTable">
|
||||||
|
<library name="Maven: org.yaml:snakeyaml:1.19">
|
||||||
|
<CLASSES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/yaml/snakeyaml/1.19/snakeyaml-1.19.jar!/" />
|
||||||
|
</CLASSES>
|
||||||
|
<JAVADOC>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/yaml/snakeyaml/1.19/snakeyaml-1.19-javadoc.jar!/" />
|
||||||
|
</JAVADOC>
|
||||||
|
<SOURCES>
|
||||||
|
<root url="jar://$MAVEN_REPOSITORY$/org/yaml/snakeyaml/1.19/snakeyaml-1.19-sources.jar!/" />
|
||||||
|
</SOURCES>
|
||||||
|
</library>
|
||||||
|
</component>
|
18
.idea/misc.xml
Executable file
18
.idea/misc.xml
Executable file
|
@ -0,0 +1,18 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="MavenProjectsManager">
|
||||||
|
<option name="originalFiles">
|
||||||
|
<list>
|
||||||
|
<option value="$PROJECT_DIR$/pom.xml" />
|
||||||
|
</list>
|
||||||
|
</option>
|
||||||
|
<option name="ignoredFiles">
|
||||||
|
<set>
|
||||||
|
<option value="$PROJECT_DIR$/pom.xml" />
|
||||||
|
</set>
|
||||||
|
</option>
|
||||||
|
</component>
|
||||||
|
<component name="ProjectRootManager" version="2" project-jdk-name="1.8" project-jdk-type="JavaSDK">
|
||||||
|
<output url="file://$PROJECT_DIR$/out" />
|
||||||
|
</component>
|
||||||
|
</project>
|
10
.idea/modules.xml
Executable file
10
.idea/modules.xml
Executable file
|
@ -0,0 +1,10 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="ProjectModuleManager">
|
||||||
|
<modules>
|
||||||
|
<module fileurl="file://$PROJECT_DIR$/BuildConfigUpdater/BuildConfigUpdater.iml" filepath="$PROJECT_DIR$/BuildConfigUpdater/BuildConfigUpdater.iml" />
|
||||||
|
<module fileurl="file://$PROJECT_DIR$/ButtonCore/ButtonCore (1) (com.github.TBMCPlugins.ButtonCore).iml" filepath="$PROJECT_DIR$/ButtonCore/ButtonCore (1) (com.github.TBMCPlugins.ButtonCore).iml" />
|
||||||
|
<module fileurl="file://$PROJECT_DIR$/ButtonProcessor/ButtonProcessor.iml" filepath="$PROJECT_DIR$/ButtonProcessor/ButtonProcessor.iml" />
|
||||||
|
</modules>
|
||||||
|
</component>
|
||||||
|
</project>
|
6
.idea/vcs.xml
Executable file
6
.idea/vcs.xml
Executable file
|
@ -0,0 +1,6 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="VcsDirectoryMappings">
|
||||||
|
<mapping directory="" vcs="Git" />
|
||||||
|
</component>
|
||||||
|
</project>
|
0
.project
Normal file → Executable file
0
.project
Normal file → Executable file
0
.settings/org.eclipse.m2e.core.prefs
Normal file → Executable file
0
.settings/org.eclipse.m2e.core.prefs
Normal file → Executable file
0
.travis.yml
Normal file → Executable file
0
.travis.yml
Normal file → Executable file
34
BuildConfigUpdater/BuildConfigUpdater.iml
Normal file
34
BuildConfigUpdater/BuildConfigUpdater.iml
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
|
||||||
|
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8">
|
||||||
|
<output url="file://$MODULE_DIR$/target/classes" />
|
||||||
|
<output-test url="file://$MODULE_DIR$/target/test-classes" />
|
||||||
|
<content url="file://$MODULE_DIR$">
|
||||||
|
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
|
||||||
|
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
|
||||||
|
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/target" />
|
||||||
|
</content>
|
||||||
|
<orderEntry type="inheritedJdk" />
|
||||||
|
<orderEntry type="sourceFolder" forTests="false" />
|
||||||
|
<orderEntry type="library" name="Maven: com.google.guava:guava:21.0" level="project" />
|
||||||
|
<orderEntry type="library" name="Maven: commons-io:commons-io:2.6" level="project" />
|
||||||
|
<orderEntry type="module" module-name="ButtonCore (1) (com.github.TBMCPlugins.ButtonCore)" />
|
||||||
|
<orderEntry type="library" name="Maven: org.reflections:reflections:0.9.10" level="project" />
|
||||||
|
<orderEntry type="library" name="Maven: com.google.code.findbugs:annotations:2.0.1" level="project" />
|
||||||
|
<orderEntry type="library" name="Maven: org.javassist:javassist:3.20.0-GA" level="project" />
|
||||||
|
<orderEntry type="library" name="Maven: org.mockito:mockito-core:2.7.20" level="project" />
|
||||||
|
<orderEntry type="library" scope="RUNTIME" name="Maven: net.bytebuddy:byte-buddy:1.6.11" level="project" />
|
||||||
|
<orderEntry type="library" scope="RUNTIME" name="Maven: net.bytebuddy:byte-buddy-agent:1.6.11" level="project" />
|
||||||
|
<orderEntry type="library" scope="RUNTIME" name="Maven: org.objenesis:objenesis:2.5" level="project" />
|
||||||
|
<orderEntry type="library" name="Maven: org.spigotmc:spigot-api:1.12.2-R0.1-SNAPSHOT" level="project" />
|
||||||
|
<orderEntry type="library" name="Maven: commons-lang:commons-lang:2.6" level="project" />
|
||||||
|
<orderEntry type="library" name="Maven: com.googlecode.json-simple:json-simple:1.1.1" level="project" />
|
||||||
|
<orderEntry type="library" name="Maven: com.google.guava:guava:21.0" level="project" />
|
||||||
|
<orderEntry type="library" name="Maven: com.google.code.gson:gson:2.8.0" level="project" />
|
||||||
|
<orderEntry type="library" name="Maven: org.yaml:snakeyaml:1.19" level="project" />
|
||||||
|
<orderEntry type="library" name="Maven: net.md-5:bungeecord-chat:1.12-SNAPSHOT" level="project" />
|
||||||
|
<orderEntry type="library" name="Maven: commons-io:commons-io:2.6" level="project" />
|
||||||
|
<orderEntry type="library" scope="TEST" name="Maven: junit:junit:3.8.1" level="project" />
|
||||||
|
</component>
|
||||||
|
</module>
|
43
BuildConfigUpdater/pom.xml
Normal file
43
BuildConfigUpdater/pom.xml
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||||
|
<parent>
|
||||||
|
<artifactId>ButtonCore</artifactId>
|
||||||
|
<groupId>com.github.TBMCPlugins</groupId>
|
||||||
|
<version>master-SNAPSHOT</version>
|
||||||
|
</parent>
|
||||||
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
|
<artifactId>BuildConfigUpdater</artifactId>
|
||||||
|
|
||||||
|
<repositories>
|
||||||
|
<repository>
|
||||||
|
<id>Jitpack</id>
|
||||||
|
<url>https://jitpack.io/</url>
|
||||||
|
</repository>
|
||||||
|
<repository>
|
||||||
|
<id>spigot-repo</id>
|
||||||
|
<url>https://hub.spigotmc.org/nexus/content/repositories/snapshots/</url>
|
||||||
|
</repository>
|
||||||
|
</repositories>
|
||||||
|
|
||||||
|
<dependencies>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.github.TBMCPlugins.ButtonCore</groupId>
|
||||||
|
<artifactId>ButtonCore</artifactId>
|
||||||
|
<version>master-SNAPSHOT</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency> <!-- Needed for TBMCCoreAPI -->
|
||||||
|
<groupId>org.spigotmc</groupId>
|
||||||
|
<artifactId>spigot-api</artifactId>
|
||||||
|
<version>1.12.2-R0.1-SNAPSHOT</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>commons-io</groupId>
|
||||||
|
<artifactId>commons-io</artifactId>
|
||||||
|
<version>2.6</version>
|
||||||
|
</dependency>
|
||||||
|
</dependencies>
|
||||||
|
|
||||||
|
</project>
|
16
BuildConfigUpdater/src/main/java/BCUMain.java
Normal file
16
BuildConfigUpdater/src/main/java/BCUMain.java
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
import buttondevteam.lib.PluginUpdater;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
public class BCUMain {
|
||||||
|
public static void main(String[] args) {
|
||||||
|
System.out.println("Getting list of repositories...");
|
||||||
|
List<String> plugins = PluginUpdater.GetPluginNames();
|
||||||
|
System.out.println("Removing non-Maven projects...");
|
||||||
|
plugins.removeIf(plugin -> !PluginUpdater.isMaven(plugin, "master"));
|
||||||
|
System.out.println(plugins.stream().collect(Collectors.joining("\n")));
|
||||||
|
for (String plugin : plugins) { //TODO: We don't want to apply it all at once, especially to unused/unowned repos
|
||||||
|
} //TODO: Add it to ButtonCore - or actually as a plugin or ButtonProcessor
|
||||||
|
}
|
||||||
|
}
|
0
ButtonCore/.factorypath
Normal file → Executable file
0
ButtonCore/.factorypath
Normal file → Executable file
0
ButtonCore/.gitignore
vendored
Normal file → Executable file
0
ButtonCore/.gitignore
vendored
Normal file → Executable file
0
ButtonCore/.project
Normal file → Executable file
0
ButtonCore/.project
Normal file → Executable file
0
ButtonCore/.settings/org.eclipse.core.resources.prefs
Normal file → Executable file
0
ButtonCore/.settings/org.eclipse.core.resources.prefs
Normal file → Executable file
0
ButtonCore/.settings/org.eclipse.jdt.apt.core.prefs
Normal file → Executable file
0
ButtonCore/.settings/org.eclipse.jdt.apt.core.prefs
Normal file → Executable file
0
ButtonCore/.settings/org.eclipse.jdt.core.prefs
Normal file → Executable file
0
ButtonCore/.settings/org.eclipse.jdt.core.prefs
Normal file → Executable file
0
ButtonCore/.settings/org.eclipse.m2e.core.prefs
Normal file → Executable file
0
ButtonCore/.settings/org.eclipse.m2e.core.prefs
Normal file → Executable file
0
ButtonCore/License.md
Normal file → Executable file
0
ButtonCore/License.md
Normal file → Executable file
0
ButtonCore/README.md
Normal file → Executable file
0
ButtonCore/README.md
Normal file → Executable file
0
ButtonCore/pom.xml
Normal file → Executable file
0
ButtonCore/pom.xml
Normal file → Executable file
9
ButtonCore/src/main/java/buttondevteam/core/CommandCaller.java
Normal file → Executable file
9
ButtonCore/src/main/java/buttondevteam/core/CommandCaller.java
Normal file → Executable file
|
@ -1,14 +1,15 @@
|
||||||
package buttondevteam.core;
|
package buttondevteam.core;
|
||||||
|
|
||||||
import java.util.Arrays;
|
import buttondevteam.lib.TBMCCoreAPI;
|
||||||
|
import buttondevteam.lib.chat.TBMCChatAPI;
|
||||||
|
import buttondevteam.lib.chat.TBMCCommandBase;
|
||||||
import org.bukkit.command.Command;
|
import org.bukkit.command.Command;
|
||||||
import org.bukkit.command.CommandExecutor;
|
import org.bukkit.command.CommandExecutor;
|
||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
import org.bukkit.command.PluginCommand;
|
import org.bukkit.command.PluginCommand;
|
||||||
import org.bukkit.plugin.java.JavaPlugin;
|
import org.bukkit.plugin.java.JavaPlugin;
|
||||||
import buttondevteam.lib.TBMCCoreAPI;
|
|
||||||
import buttondevteam.lib.chat.TBMCChatAPI;
|
import java.util.Arrays;
|
||||||
import buttondevteam.lib.chat.TBMCCommandBase;
|
|
||||||
|
|
||||||
public class CommandCaller implements CommandExecutor {
|
public class CommandCaller implements CommandExecutor {
|
||||||
|
|
||||||
|
|
46
ButtonCore/src/main/java/buttondevteam/core/MainPlugin.java
Normal file → Executable file
46
ButtonCore/src/main/java/buttondevteam/core/MainPlugin.java
Normal file → Executable file
|
@ -1,10 +1,6 @@
|
||||||
package buttondevteam.core;
|
package buttondevteam.core;
|
||||||
|
|
||||||
import java.util.logging.Logger;
|
import buttondevteam.lib.PluginUpdater;
|
||||||
|
|
||||||
import org.bukkit.plugin.PluginDescriptionFile;
|
|
||||||
import org.bukkit.plugin.RegisteredServiceProvider;
|
|
||||||
import org.bukkit.plugin.java.JavaPlugin;
|
|
||||||
import buttondevteam.lib.TBMCCoreAPI;
|
import buttondevteam.lib.TBMCCoreAPI;
|
||||||
import buttondevteam.lib.chat.Channel;
|
import buttondevteam.lib.chat.Channel;
|
||||||
import buttondevteam.lib.chat.ChatRoom;
|
import buttondevteam.lib.chat.ChatRoom;
|
||||||
|
@ -12,6 +8,18 @@ import buttondevteam.lib.chat.Color;
|
||||||
import buttondevteam.lib.chat.TBMCChatAPI;
|
import buttondevteam.lib.chat.TBMCChatAPI;
|
||||||
import buttondevteam.lib.player.TBMCPlayerBase;
|
import buttondevteam.lib.player.TBMCPlayerBase;
|
||||||
import net.milkbowl.vault.permission.Permission;
|
import net.milkbowl.vault.permission.Permission;
|
||||||
|
import org.bukkit.Bukkit;
|
||||||
|
import org.bukkit.plugin.PluginDescriptionFile;
|
||||||
|
import org.bukkit.plugin.RegisteredServiceProvider;
|
||||||
|
import org.bukkit.plugin.java.JavaPlugin;
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.nio.file.Files;
|
||||||
|
import java.nio.file.StandardCopyOption;
|
||||||
|
import java.util.Arrays;
|
||||||
|
import java.util.logging.Logger;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
public class MainPlugin extends JavaPlugin {
|
public class MainPlugin extends JavaPlugin {
|
||||||
public static MainPlugin Instance;
|
public static MainPlugin Instance;
|
||||||
|
@ -34,13 +42,24 @@ public class MainPlugin extends JavaPlugin {
|
||||||
TBMCChatAPI.AddCommand(this, ScheduledRestartCommand.class);
|
TBMCChatAPI.AddCommand(this, ScheduledRestartCommand.class);
|
||||||
TBMCCoreAPI.RegisterEventsForExceptions(new PlayerListener(), this);
|
TBMCCoreAPI.RegisterEventsForExceptions(new PlayerListener(), this);
|
||||||
TBMCCoreAPI.RegisterUserClass(TBMCPlayerBase.class);
|
TBMCCoreAPI.RegisterUserClass(TBMCPlayerBase.class);
|
||||||
TBMCChatAPI.RegisterChatChannel(Channel.GlobalChat = new Channel("§fg§f", Color.White, "g", null));
|
TBMCChatAPI.RegisterChatChannel(Channel.GlobalChat = new Channel("§fOOC§f", Color.White, "ooc", null));
|
||||||
|
Channel.GlobalChat.IDs = new String[]{"g"}; //Support /g as well
|
||||||
TBMCChatAPI.RegisterChatChannel(
|
TBMCChatAPI.RegisterChatChannel(
|
||||||
Channel.AdminChat = new Channel("§cADMIN§f", Color.Red, "a", Channel.inGroupFilter(null)));
|
Channel.AdminChat = new Channel("§cADMIN§f", Color.Red, "a", Channel.inGroupFilter(null)));
|
||||||
TBMCChatAPI.RegisterChatChannel(
|
TBMCChatAPI.RegisterChatChannel(
|
||||||
Channel.ModChat = new Channel("§9MOD§f", Color.Blue, "mod", Channel.inGroupFilter("mod")));
|
Channel.ModChat = new Channel("§9MOD§f", Color.Blue, "mod", Channel.inGroupFilter("mod")));
|
||||||
TBMCChatAPI.RegisterChatChannel(new Channel("§6DEV§", Color.Gold, "dev", Channel.inGroupFilter("developer")));
|
TBMCChatAPI.RegisterChatChannel(new Channel("§6DEV§", Color.Gold, "dev", Channel.inGroupFilter("developer")));
|
||||||
TBMCChatAPI.RegisterChatChannel(new ChatRoom("§cRED", Color.DarkRed, "red"));
|
TBMCChatAPI.RegisterChatChannel(new ChatRoom("§cRED", Color.DarkRed, "red"));
|
||||||
|
TBMCChatAPI.RegisterChatChannel(new ChatRoom("§6ORANGE", Color.Gold, "orange"));
|
||||||
|
TBMCChatAPI.RegisterChatChannel(new ChatRoom("§eYELLOW", Color.Yellow, "yellow"));
|
||||||
|
TBMCChatAPI.RegisterChatChannel(new ChatRoom("§aGREEN", Color.Green, "green"));
|
||||||
|
TBMCChatAPI.RegisterChatChannel(new ChatRoom("§bBLUE", Color.Blue, "blue"));
|
||||||
|
TBMCChatAPI.RegisterChatChannel(new ChatRoom("§5PURPLE", Color.DarkPurple, "purple"));
|
||||||
|
try {
|
||||||
|
Files.write(new File("plugins", "plugins.txt").toPath(), Arrays.stream(Bukkit.getPluginManager().getPlugins()).map(p -> (CharSequence) p.getDataFolder().getName())::iterator);
|
||||||
|
} catch (IOException e) {
|
||||||
|
TBMCCoreAPI.SendException("Failed to write plugin list!", e);
|
||||||
|
}
|
||||||
logger.info(pdfFile.getName() + " has been Enabled (V." + pdfFile.getVersion() + ") Test: " + Test + ".");
|
logger.info(pdfFile.getName() + " has been Enabled (V." + pdfFile.getVersion() + ") Test: " + Test + ".");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -49,6 +68,21 @@ public class MainPlugin extends JavaPlugin {
|
||||||
logger.info("Saving player data...");
|
logger.info("Saving player data...");
|
||||||
TBMCPlayerBase.savePlayers();
|
TBMCPlayerBase.savePlayers();
|
||||||
logger.info("Player data saved.");
|
logger.info("Player data saved.");
|
||||||
|
new Thread(() -> {
|
||||||
|
File[] files = PluginUpdater.updatedir.listFiles();
|
||||||
|
if (files == null)
|
||||||
|
return;
|
||||||
|
System.out.println("Updating " + files.length + " plugins...");
|
||||||
|
for (File file : files) {
|
||||||
|
try {
|
||||||
|
Files.move(file.toPath(), new File("plugins", file.getName()).toPath(), StandardCopyOption.REPLACE_EXISTING);
|
||||||
|
System.out.println("Updated " + file.getName());
|
||||||
|
} catch (IOException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
System.out.println("Update complete!");
|
||||||
|
}).start();
|
||||||
}
|
}
|
||||||
|
|
||||||
private boolean setupPermissions() {
|
private boolean setupPermissions() {
|
||||||
|
|
7
ButtonCore/src/main/java/buttondevteam/core/PlayerListener.java
Normal file → Executable file
7
ButtonCore/src/main/java/buttondevteam/core/PlayerListener.java
Normal file → Executable file
|
@ -1,5 +1,7 @@
|
||||||
package buttondevteam.core;
|
package buttondevteam.core;
|
||||||
|
|
||||||
|
import buttondevteam.lib.TBMCSystemChatEvent;
|
||||||
|
import buttondevteam.lib.player.TBMCPlayerBase;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.event.EventHandler;
|
import org.bukkit.event.EventHandler;
|
||||||
import org.bukkit.event.EventPriority;
|
import org.bukkit.event.EventPriority;
|
||||||
|
@ -7,9 +9,6 @@ import org.bukkit.event.Listener;
|
||||||
import org.bukkit.event.player.PlayerJoinEvent;
|
import org.bukkit.event.player.PlayerJoinEvent;
|
||||||
import org.bukkit.event.player.PlayerQuitEvent;
|
import org.bukkit.event.player.PlayerQuitEvent;
|
||||||
|
|
||||||
import buttondevteam.lib.TBMCSystemChatEvent;
|
|
||||||
import buttondevteam.lib.player.TBMCPlayerBase;
|
|
||||||
|
|
||||||
public class PlayerListener implements Listener {
|
public class PlayerListener implements Listener {
|
||||||
|
|
||||||
@EventHandler(priority = EventPriority.NORMAL)
|
@EventHandler(priority = EventPriority.NORMAL)
|
||||||
|
@ -29,4 +28,4 @@ public class PlayerListener implements Listener {
|
||||||
Bukkit.getOnlinePlayers().stream().filter(p -> event.shouldSendTo(p))
|
Bukkit.getOnlinePlayers().stream().filter(p -> event.shouldSendTo(p))
|
||||||
.forEach(p -> p.sendMessage(event.getChannel().DisplayName.substring(0, 2) + event.getMessage()));
|
.forEach(p -> p.sendMessage(event.getChannel().DisplayName.substring(0, 2) + event.getMessage()));
|
||||||
}
|
}
|
||||||
}
|
}
|
7
ButtonCore/src/main/java/buttondevteam/core/ScheduledRestartCommand.java
Normal file → Executable file
7
ButtonCore/src/main/java/buttondevteam/core/ScheduledRestartCommand.java
Normal file → Executable file
|
@ -1,5 +1,8 @@
|
||||||
package buttondevteam.core;
|
package buttondevteam.core;
|
||||||
|
|
||||||
|
import buttondevteam.lib.ScheduledServerRestartEvent;
|
||||||
|
import buttondevteam.lib.chat.CommandClass;
|
||||||
|
import buttondevteam.lib.chat.TBMCCommandBase;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.boss.BarColor;
|
import org.bukkit.boss.BarColor;
|
||||||
import org.bukkit.boss.BarFlag;
|
import org.bukkit.boss.BarFlag;
|
||||||
|
@ -8,10 +11,6 @@ import org.bukkit.boss.BossBar;
|
||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
import org.bukkit.scheduler.BukkitTask;
|
import org.bukkit.scheduler.BukkitTask;
|
||||||
|
|
||||||
import buttondevteam.lib.ScheduledServerRestartEvent;
|
|
||||||
import buttondevteam.lib.chat.CommandClass;
|
|
||||||
import buttondevteam.lib.chat.TBMCCommandBase;
|
|
||||||
|
|
||||||
@CommandClass(modOnly = true, path = "schrestart")
|
@CommandClass(modOnly = true, path = "schrestart")
|
||||||
public class ScheduledRestartCommand extends TBMCCommandBase {
|
public class ScheduledRestartCommand extends TBMCCommandBase {
|
||||||
private static volatile int restartcounter;
|
private static volatile int restartcounter;
|
||||||
|
|
13
ButtonCore/src/main/java/buttondevteam/core/TestPrepare.java
Normal file → Executable file
13
ButtonCore/src/main/java/buttondevteam/core/TestPrepare.java
Normal file → Executable file
|
@ -1,9 +1,8 @@
|
||||||
package buttondevteam.core;
|
package buttondevteam.core;
|
||||||
|
|
||||||
import java.util.Collection;
|
import buttondevteam.lib.chat.Channel;
|
||||||
import java.util.Collections;
|
import buttondevteam.lib.chat.Color;
|
||||||
import java.util.logging.Logger;
|
import buttondevteam.lib.chat.TBMCChatAPI;
|
||||||
|
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.Server;
|
import org.bukkit.Server;
|
||||||
import org.bukkit.plugin.PluginManager;
|
import org.bukkit.plugin.PluginManager;
|
||||||
|
@ -12,9 +11,9 @@ import org.mockito.Mockito;
|
||||||
import org.mockito.invocation.InvocationOnMock;
|
import org.mockito.invocation.InvocationOnMock;
|
||||||
import org.mockito.stubbing.Answer;
|
import org.mockito.stubbing.Answer;
|
||||||
|
|
||||||
import buttondevteam.lib.chat.Channel;
|
import java.util.Collection;
|
||||||
import buttondevteam.lib.chat.Color;
|
import java.util.Collections;
|
||||||
import buttondevteam.lib.chat.TBMCChatAPI;
|
import java.util.logging.Logger;
|
||||||
|
|
||||||
public class TestPrepare {
|
public class TestPrepare {
|
||||||
public static void PrepareServer() {
|
public static void PrepareServer() {
|
||||||
|
|
5
ButtonCore/src/main/java/buttondevteam/core/UpdatePluginCommand.java
Normal file → Executable file
5
ButtonCore/src/main/java/buttondevteam/core/UpdatePluginCommand.java
Normal file → Executable file
|
@ -1,12 +1,11 @@
|
||||||
package buttondevteam.core;
|
package buttondevteam.core;
|
||||||
|
|
||||||
import org.bukkit.Bukkit;
|
|
||||||
import org.bukkit.command.CommandSender;
|
|
||||||
|
|
||||||
import buttondevteam.lib.PluginUpdater;
|
import buttondevteam.lib.PluginUpdater;
|
||||||
import buttondevteam.lib.TBMCCoreAPI;
|
import buttondevteam.lib.TBMCCoreAPI;
|
||||||
import buttondevteam.lib.chat.CommandClass;
|
import buttondevteam.lib.chat.CommandClass;
|
||||||
import buttondevteam.lib.chat.TBMCCommandBase;
|
import buttondevteam.lib.chat.TBMCCommandBase;
|
||||||
|
import org.bukkit.Bukkit;
|
||||||
|
import org.bukkit.command.CommandSender;
|
||||||
|
|
||||||
@CommandClass(modOnly = true)
|
@CommandClass(modOnly = true)
|
||||||
public class UpdatePluginCommand extends TBMCCommandBase {
|
public class UpdatePluginCommand extends TBMCCommandBase {
|
||||||
|
|
0
ButtonCore/src/main/java/buttondevteam/lib/EventExceptionCoreHandler.java
Normal file → Executable file
0
ButtonCore/src/main/java/buttondevteam/lib/EventExceptionCoreHandler.java
Normal file → Executable file
21
ButtonCore/src/main/java/buttondevteam/lib/EventExceptionHandler.java
Normal file → Executable file
21
ButtonCore/src/main/java/buttondevteam/lib/EventExceptionHandler.java
Normal file → Executable file
|
@ -1,25 +1,20 @@
|
||||||
|
|
||||||
package buttondevteam.lib;
|
package buttondevteam.lib;
|
||||||
|
|
||||||
|
import com.google.common.collect.Lists;
|
||||||
|
import org.apache.commons.lang.Validate;
|
||||||
|
import org.bukkit.event.Event;
|
||||||
|
import org.bukkit.event.EventException;
|
||||||
|
import org.bukkit.event.HandlerList;
|
||||||
|
import org.bukkit.event.Listener;
|
||||||
|
import org.bukkit.plugin.*;
|
||||||
|
|
||||||
import java.lang.reflect.Method;
|
import java.lang.reflect.Method;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
import org.apache.commons.lang.Validate;
|
|
||||||
import org.bukkit.event.Event;
|
|
||||||
import org.bukkit.event.EventException;
|
|
||||||
import org.bukkit.event.HandlerList;
|
|
||||||
import org.bukkit.event.Listener;
|
|
||||||
import org.bukkit.plugin.EventExecutor;
|
|
||||||
import org.bukkit.plugin.IllegalPluginAccessException;
|
|
||||||
import org.bukkit.plugin.Plugin;
|
|
||||||
import org.bukkit.plugin.PluginManager;
|
|
||||||
import org.bukkit.plugin.RegisteredListener;
|
|
||||||
|
|
||||||
import com.google.common.collect.Lists;
|
|
||||||
|
|
||||||
abstract class EventExceptionHandler { // https://gist.github.com/aadnk/5430459
|
abstract class EventExceptionHandler { // https://gist.github.com/aadnk/5430459
|
||||||
// For wrapping a registered listener
|
// For wrapping a registered listener
|
||||||
private static class ExceptionRegisteredListener extends RegisteredListener {
|
private static class ExceptionRegisteredListener extends RegisteredListener {
|
||||||
|
|
49
ButtonCore/src/main/java/buttondevteam/lib/PluginUpdater.java
Normal file → Executable file
49
ButtonCore/src/main/java/buttondevteam/lib/PluginUpdater.java
Normal file → Executable file
|
@ -1,33 +1,36 @@
|
||||||
package buttondevteam.lib;
|
package buttondevteam.lib;
|
||||||
|
|
||||||
import java.io.File;
|
import com.google.gson.JsonArray;
|
||||||
import java.io.FileNotFoundException;
|
import com.google.gson.JsonElement;
|
||||||
import java.io.IOException;
|
import com.google.gson.JsonObject;
|
||||||
import java.net.URL;
|
import com.google.gson.JsonParser;
|
||||||
import java.nio.file.Files;
|
|
||||||
import java.nio.file.StandardCopyOption;
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Optional;
|
|
||||||
import org.apache.commons.io.FileUtils;
|
import org.apache.commons.io.FileUtils;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
import org.bukkit.event.Event;
|
import org.bukkit.event.Event;
|
||||||
import org.bukkit.event.HandlerList;
|
import org.bukkit.event.HandlerList;
|
||||||
|
|
||||||
import com.google.gson.JsonArray;
|
import java.io.File;
|
||||||
import com.google.gson.JsonElement;
|
import java.io.FileNotFoundException;
|
||||||
import com.google.gson.JsonObject;
|
import java.io.IOException;
|
||||||
import com.google.gson.JsonParser;
|
import java.net.URL;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Optional;
|
||||||
|
|
||||||
public class PluginUpdater {
|
public class PluginUpdater {
|
||||||
private PluginUpdater() {
|
private PluginUpdater() {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static final File updatedir = new File("TBMC", "pluginupdates");
|
||||||
/**
|
/**
|
||||||
* See {@link TBMCCoreAPI#UpdatePlugin(String, CommandSender, String)}
|
* See {@link TBMCCoreAPI#UpdatePlugin(String, CommandSender, String)}
|
||||||
*/
|
*/
|
||||||
public static boolean UpdatePlugin(String name, CommandSender sender, String branch) {
|
public static boolean UpdatePlugin(String name, CommandSender sender, String branch) {
|
||||||
|
if (!updatedir.exists() && !updatedir.mkdirs()) {
|
||||||
|
error(sender, "Failed to create update directory!");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
info(sender, "Checking plugin name...");
|
info(sender, "Checking plugin name...");
|
||||||
List<String> plugins = GetPluginNames();
|
List<String> plugins = GetPluginNames();
|
||||||
String correctname = null;
|
String correctname = null;
|
||||||
|
@ -57,36 +60,32 @@ public class PluginUpdater {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
info(sender, "Updating TBMC plugin: " + correctname + " from " + correctbranch.get());
|
info(sender, "Updating TBMC plugin: " + correctname + " from " + correctbranch.get());
|
||||||
return updatePluginJitPack(sender, correctname, correctbranch);
|
return updatePluginJitPack(sender, correctname, correctbranch.get());
|
||||||
}
|
}
|
||||||
|
|
||||||
private static boolean updatePluginJitPack(CommandSender sender, String correctname,
|
private static boolean updatePluginJitPack(CommandSender sender, String correctname,
|
||||||
Optional<String> correctbranch) {
|
String correctbranch) {
|
||||||
URL url;
|
URL url;
|
||||||
final boolean isWindows = System.getProperty("os.name").contains("Windows");
|
File result = new File(updatedir, correctname + ".jar");
|
||||||
File result = new File("plugins/" + correctname + (isWindows ? ".jar" : ".jar_tmp"));
|
|
||||||
File finalresult = new File("plugins/" + correctname + ".jar");
|
|
||||||
try {
|
try {
|
||||||
url = new URL("https://jitpack.io/com/github/TBMCPlugins/"
|
url = new URL("https://jitpack.io/com/github/TBMCPlugins/"
|
||||||
+ (correctname.equals("ButtonCore") ? "ButtonCore/ButtonCore" : correctname) + "/"
|
+ (correctname.equals("ButtonCore") ? "ButtonCore/ButtonCore" : correctname) + "/"
|
||||||
+ correctbranch.get() + "-SNAPSHOT/" + correctname + "-" + correctbranch.get() + "-SNAPSHOT.jar"); // ButtonCore exception required since it hosts Towny as well
|
+ correctbranch + "-SNAPSHOT/" + correctname + "-" + correctbranch + "-SNAPSHOT.jar"); // ButtonCore exception required since it hosts Towny as well
|
||||||
FileUtils.copyURLToFile(url, result);
|
FileUtils.copyURLToFile(url, result);
|
||||||
if (!result.exists() || result.length() < 25) {
|
if (!result.exists() || result.length() < 25) {
|
||||||
result.delete();
|
result.delete();
|
||||||
error(sender, "The downloaded JAR for " + correctname + " from " + correctbranch.get()
|
error(sender, "The downloaded JAR for " + correctname + " from " + correctbranch
|
||||||
+ " is too small (smnaller than 25 bytes). Am I downloading from the right place?");
|
+ " is too small (smnaller than 25 bytes). Am I downloading from the right place?");
|
||||||
return false;
|
return false;
|
||||||
} else {
|
} else {
|
||||||
if (!isWindows)
|
info(sender, "Updating plugin " + correctname + " from " + correctbranch + " done!");
|
||||||
Files.move(result.toPath(), finalresult.toPath(), StandardCopyOption.REPLACE_EXISTING);
|
|
||||||
info(sender, "Updating plugin " + correctname + " from " + correctbranch.get() + " done!");
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
} catch (FileNotFoundException e) {
|
} catch (FileNotFoundException e) {
|
||||||
error(sender,
|
error(sender,
|
||||||
"Can't find JAR for " + correctname + " from " + correctbranch.get()
|
"Can't find JAR for " + correctname + " from " + correctbranch
|
||||||
+ ", the build probably failed. Build log (scroll to bottom):" + "\n"
|
+ ", the build probably failed. Build log (scroll to bottom):" + "\n"
|
||||||
+ "https://jitpack.io/com/github/TBMCPlugins/" + correctname + "/" + correctbranch.get()
|
+ "https://jitpack.io/com/github/TBMCPlugins/" + correctname + "/" + correctbranch
|
||||||
+ "-SNAPSHOT/build.log\nIf you'd like to rebuild the same commit, go to:\nhttps://jitpack.io/#TBMCPlugins/"
|
+ "-SNAPSHOT/build.log\nIf you'd like to rebuild the same commit, go to:\nhttps://jitpack.io/#TBMCPlugins/"
|
||||||
+ correctname + "\nAnd delete the newest build.");
|
+ correctname + "\nAnd delete the newest build.");
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
|
|
0
ButtonCore/src/main/java/buttondevteam/lib/ScheduledServerRestartEvent.java
Normal file → Executable file
0
ButtonCore/src/main/java/buttondevteam/lib/ScheduledServerRestartEvent.java
Normal file → Executable file
11
ButtonCore/src/main/java/buttondevteam/lib/TBMCChatEvent.java
Normal file → Executable file
11
ButtonCore/src/main/java/buttondevteam/lib/TBMCChatEvent.java
Normal file → Executable file
|
@ -1,27 +1,28 @@
|
||||||
package buttondevteam.lib;
|
package buttondevteam.lib;
|
||||||
|
|
||||||
import org.bukkit.command.CommandSender;
|
|
||||||
import org.bukkit.event.HandlerList;
|
|
||||||
|
|
||||||
import buttondevteam.lib.chat.Channel;
|
import buttondevteam.lib.chat.Channel;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
|
import org.bukkit.command.CommandSender;
|
||||||
|
import org.bukkit.event.HandlerList;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Make sure to only send the message to users who {@link #shouldSendTo(CommandSender)} returns true.
|
* Make sure to only send the message to users where {@link #shouldSendTo(CommandSender)} returns true.
|
||||||
*
|
*
|
||||||
* @author NorbiPeti
|
* @author NorbiPeti
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
@Getter
|
@Getter
|
||||||
public class TBMCChatEvent extends TBMCChatEventBase {
|
public class TBMCChatEvent extends TBMCChatEventBase {
|
||||||
public TBMCChatEvent(CommandSender sender, Channel channel, String message, int score) {
|
public TBMCChatEvent(CommandSender sender, Channel channel, String message, int score, boolean fromcmd) {
|
||||||
super(channel, message, score);
|
super(channel, message, score);
|
||||||
this.sender = sender;
|
this.sender = sender;
|
||||||
|
this.fromcmd = fromcmd;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static final HandlerList handlers = new HandlerList();
|
private static final HandlerList handlers = new HandlerList();
|
||||||
|
|
||||||
private CommandSender sender;
|
private CommandSender sender;
|
||||||
|
private boolean fromcmd;
|
||||||
// TODO: Message object with data?
|
// TODO: Message object with data?
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
6
ButtonCore/src/main/java/buttondevteam/lib/TBMCChatEventBase.java
Normal file → Executable file
6
ButtonCore/src/main/java/buttondevteam/lib/TBMCChatEventBase.java
Normal file → Executable file
|
@ -1,14 +1,14 @@
|
||||||
package buttondevteam.lib;
|
package buttondevteam.lib;
|
||||||
|
|
||||||
import org.bukkit.command.CommandSender;
|
|
||||||
import org.bukkit.event.Cancellable;
|
|
||||||
import org.bukkit.event.Event;
|
|
||||||
import buttondevteam.lib.chat.Channel;
|
import buttondevteam.lib.chat.Channel;
|
||||||
import buttondevteam.lib.chat.Channel.RecipientTestResult;
|
import buttondevteam.lib.chat.Channel.RecipientTestResult;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.NonNull;
|
import lombok.NonNull;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
|
import org.bukkit.command.CommandSender;
|
||||||
|
import org.bukkit.event.Cancellable;
|
||||||
|
import org.bukkit.event.Event;
|
||||||
|
|
||||||
@Getter
|
@Getter
|
||||||
@RequiredArgsConstructor
|
@RequiredArgsConstructor
|
||||||
|
|
4
ButtonCore/src/main/java/buttondevteam/lib/TBMCChatPreprocessEvent.java
Normal file → Executable file
4
ButtonCore/src/main/java/buttondevteam/lib/TBMCChatPreprocessEvent.java
Normal file → Executable file
|
@ -1,14 +1,14 @@
|
||||||
package buttondevteam.lib;
|
package buttondevteam.lib;
|
||||||
|
|
||||||
|
import buttondevteam.lib.chat.Channel;
|
||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
import org.bukkit.event.Cancellable;
|
import org.bukkit.event.Cancellable;
|
||||||
import org.bukkit.event.Event;
|
import org.bukkit.event.Event;
|
||||||
import org.bukkit.event.HandlerList;
|
import org.bukkit.event.HandlerList;
|
||||||
|
|
||||||
import buttondevteam.lib.chat.Channel;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Can be used to change messages before it's sent.
|
* Can be used to change messages before it's sent.
|
||||||
|
* <b>Only called before sending messages with SendChatMessage.</b>
|
||||||
*
|
*
|
||||||
* @author NorbiPeti
|
* @author NorbiPeti
|
||||||
*
|
*
|
||||||
|
|
24
ButtonCore/src/main/java/buttondevteam/lib/TBMCCoreAPI.java
Normal file → Executable file
24
ButtonCore/src/main/java/buttondevteam/lib/TBMCCoreAPI.java
Normal file → Executable file
|
@ -1,10 +1,8 @@
|
||||||
package buttondevteam.lib;
|
package buttondevteam.lib;
|
||||||
|
|
||||||
import java.io.*;
|
import buttondevteam.core.MainPlugin;
|
||||||
import java.net.*;
|
import buttondevteam.lib.player.ChromaGamerBase;
|
||||||
import java.util.*;
|
import buttondevteam.lib.potato.DebugPotato;
|
||||||
import java.util.Map.Entry;
|
|
||||||
|
|
||||||
import org.apache.commons.io.IOUtils;
|
import org.apache.commons.io.IOUtils;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
|
@ -12,9 +10,15 @@ import org.bukkit.entity.Player;
|
||||||
import org.bukkit.event.Listener;
|
import org.bukkit.event.Listener;
|
||||||
import org.bukkit.plugin.Plugin;
|
import org.bukkit.plugin.Plugin;
|
||||||
|
|
||||||
import buttondevteam.core.MainPlugin;
|
import java.io.IOException;
|
||||||
import buttondevteam.lib.player.ChromaGamerBase;
|
import java.io.InputStream;
|
||||||
import buttondevteam.lib.potato.DebugPotato;
|
import java.net.MalformedURLException;
|
||||||
|
import java.net.URL;
|
||||||
|
import java.net.URLConnection;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map.Entry;
|
||||||
|
|
||||||
public class TBMCCoreAPI {
|
public class TBMCCoreAPI {
|
||||||
static List<String> coders = new ArrayList<String>() {
|
static List<String> coders = new ArrayList<String>() {
|
||||||
|
@ -67,8 +71,8 @@ public class TBMCCoreAPI {
|
||||||
return body;
|
return body;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static HashMap<String, Throwable> exceptionsToSend = new HashMap<>();
|
private static final HashMap<String, Throwable> exceptionsToSend = new HashMap<>();
|
||||||
private static List<String> debugMessagesToSend = new ArrayList<>();
|
private static final List<String> debugMessagesToSend = new ArrayList<>();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Send exception to the {@link TBMCExceptionEvent}.
|
* Send exception to the {@link TBMCExceptionEvent}.
|
||||||
|
|
0
ButtonCore/src/main/java/buttondevteam/lib/TBMCDebugMessageEvent.java
Normal file → Executable file
0
ButtonCore/src/main/java/buttondevteam/lib/TBMCDebugMessageEvent.java
Normal file → Executable file
5
ButtonCore/src/main/java/buttondevteam/lib/TBMCExceptionEvent.java
Normal file → Executable file
5
ButtonCore/src/main/java/buttondevteam/lib/TBMCExceptionEvent.java
Normal file → Executable file
|
@ -1,10 +1,9 @@
|
||||||
package buttondevteam.lib;
|
package buttondevteam.lib;
|
||||||
|
|
||||||
import org.bukkit.event.Event;
|
|
||||||
import org.bukkit.event.HandlerList;
|
|
||||||
|
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
|
import org.bukkit.event.Event;
|
||||||
|
import org.bukkit.event.HandlerList;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* <p>
|
* <p>
|
||||||
|
|
5
ButtonCore/src/main/java/buttondevteam/lib/TBMCSystemChatEvent.java
Normal file → Executable file
5
ButtonCore/src/main/java/buttondevteam/lib/TBMCSystemChatEvent.java
Normal file → Executable file
|
@ -1,10 +1,9 @@
|
||||||
package buttondevteam.lib;
|
package buttondevteam.lib;
|
||||||
|
|
||||||
import org.bukkit.command.CommandSender;
|
|
||||||
import org.bukkit.event.HandlerList;
|
|
||||||
|
|
||||||
import buttondevteam.lib.chat.Channel;
|
import buttondevteam.lib.chat.Channel;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
|
import org.bukkit.command.CommandSender;
|
||||||
|
import org.bukkit.event.HandlerList;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Make sure to only send the message to users who {@link #shouldSendTo(CommandSender)} returns true.
|
* Make sure to only send the message to users who {@link #shouldSendTo(CommandSender)} returns true.
|
||||||
|
|
198
ButtonCore/src/main/java/buttondevteam/lib/chat/Channel.java
Normal file → Executable file
198
ButtonCore/src/main/java/buttondevteam/lib/chat/Channel.java
Normal file → Executable file
|
@ -1,5 +1,11 @@
|
||||||
package buttondevteam.lib.chat;
|
package buttondevteam.lib.chat;
|
||||||
|
|
||||||
|
import buttondevteam.core.MainPlugin;
|
||||||
|
import org.bukkit.Bukkit;
|
||||||
|
import org.bukkit.command.CommandSender;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
|
||||||
|
import javax.annotation.Nullable;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.function.BiFunction;
|
import java.util.function.BiFunction;
|
||||||
|
@ -7,119 +13,107 @@ import java.util.function.BiPredicate;
|
||||||
import java.util.function.Function;
|
import java.util.function.Function;
|
||||||
import java.util.function.Predicate;
|
import java.util.function.Predicate;
|
||||||
|
|
||||||
import org.bukkit.Bukkit;
|
|
||||||
import org.bukkit.command.CommandSender;
|
|
||||||
import org.bukkit.entity.Player;
|
|
||||||
|
|
||||||
import buttondevteam.core.MainPlugin;
|
|
||||||
|
|
||||||
public class Channel {
|
public class Channel {
|
||||||
public final String DisplayName;
|
public final String DisplayName;
|
||||||
public final Color color;
|
public final Color color;
|
||||||
public final String ID;
|
public final String ID;
|
||||||
/**
|
@Nullable
|
||||||
* Filters both the sender and the targets
|
public String[] IDs;
|
||||||
*/
|
/**
|
||||||
public final Function<CommandSender, RecipientTestResult> filteranderrormsg;
|
* Filters both the sender and the targets
|
||||||
|
*/
|
||||||
|
public final Function<CommandSender, RecipientTestResult> filteranderrormsg;
|
||||||
|
|
||||||
private static List<Channel> channels = new ArrayList<>();
|
private static List<Channel> channels = new ArrayList<>();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates a channel.
|
* Creates a channel.
|
||||||
*
|
*
|
||||||
* @param displayname
|
* @param displayname The name that should appear at the start of the message. <b>A chat color is expected at the beginning (§9).</b>
|
||||||
* The name that should appear at the start of the message. <b>A chat color is expected at the beginning (§9).</b>
|
* @param color The default color of the messages sent in the channel
|
||||||
* @param color
|
* @param command The command to be used for the channel <i>without /</i>. For example "mod". It's also used for scoreboard objective names.
|
||||||
* The default color of the messages sent in the channel
|
* @param filteranderrormsg Checks all senders against the criteria provided here and sends the message if the index matches the sender's - if no score at all, displays the error.<br>
|
||||||
* @param command
|
* May be null to send to everyone.
|
||||||
* The command to be used for the channel <i>without /</i>. For example "mod". It's also used for scoreboard objective names.
|
*/
|
||||||
* @param filteranderrormsg
|
public Channel(String displayname, Color color, String command,
|
||||||
* Checks all senders against the criteria provided here and sends the message if the index matches the sender's - if no score at all, displays the error.<br>
|
Function<CommandSender, RecipientTestResult> filteranderrormsg) {
|
||||||
* May be null to send to everyone.
|
DisplayName = displayname;
|
||||||
*/
|
this.color = color;
|
||||||
public Channel(String displayname, Color color, String command,
|
ID = command;
|
||||||
Function<CommandSender, RecipientTestResult> filteranderrormsg) {
|
this.filteranderrormsg = filteranderrormsg;
|
||||||
DisplayName = displayname;
|
}
|
||||||
this.color = color;
|
|
||||||
ID = command;
|
|
||||||
this.filteranderrormsg = filteranderrormsg;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Must be only called from a subclass - otherwise it'll throw an exception.
|
* Must be only called from a subclass - otherwise it'll throw an exception.
|
||||||
*
|
*
|
||||||
* @see Channel#Channel(String, Color, String, Function)
|
* @see Channel#Channel(String, Color, String, Function)
|
||||||
*/
|
*/
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
protected <T extends Channel> Channel(String displayname, Color color, String command,
|
protected <T extends Channel> Channel(String displayname, Color color, String command,
|
||||||
BiFunction<T, CommandSender, RecipientTestResult> filteranderrormsg) {
|
BiFunction<T, CommandSender, RecipientTestResult> filteranderrormsg) {
|
||||||
DisplayName = displayname;
|
DisplayName = displayname;
|
||||||
this.color = color;
|
this.color = color;
|
||||||
ID = command;
|
ID = command;
|
||||||
this.filteranderrormsg = s -> filteranderrormsg.apply((T) this, s);
|
this.filteranderrormsg = s -> filteranderrormsg.apply((T) this, s);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static List<Channel> getChannels() {
|
public static List<Channel> getChannels() {
|
||||||
return channels;
|
return channels;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Convenience method for the function parameter of {@link #Channel(String, Color, String, Function)}. It checks if the sender is OP or optionally has the specified group. The error message is
|
* Convenience method for the function parameter of {@link #Channel(String, Color, String, Function)}. It checks if the sender is OP or optionally has the specified group. The error message is
|
||||||
* generated automatically.
|
* generated automatically.
|
||||||
*
|
*
|
||||||
* @param permgroup
|
* @param permgroup The group that can access the channel or <b>null</b> to only allow OPs.
|
||||||
* The group that can access the channel or <b>null</b> to only allow OPs.
|
* @return
|
||||||
* @return
|
*/
|
||||||
*/
|
public static Function<CommandSender, RecipientTestResult> inGroupFilter(String permgroup) {
|
||||||
public static Function<CommandSender, RecipientTestResult> inGroupFilter(String permgroup) {
|
return noScoreResult(
|
||||||
return noScoreResult(
|
s -> s.isOp() || (permgroup != null
|
||||||
s -> s.isOp() || (permgroup != null
|
? s instanceof Player && MainPlugin.permission.playerInGroup((Player) s, permgroup) : false),
|
||||||
? s instanceof Player && MainPlugin.permission.playerInGroup((Player) s, permgroup) : false),
|
"You need to be a(n) " + (permgroup != null ? permgroup : "OP") + " to use this channel.");
|
||||||
"You need to be a(n) " + (permgroup != null ? permgroup : "OP") + " to use this channel.");
|
}
|
||||||
}
|
|
||||||
|
|
||||||
public static Function<CommandSender, RecipientTestResult> noScoreResult(Predicate<CommandSender> filter,
|
public static Function<CommandSender, RecipientTestResult> noScoreResult(Predicate<CommandSender> filter,
|
||||||
String errormsg) {
|
String errormsg) {
|
||||||
return s -> filter.test(s) ? new RecipientTestResult(0) : new RecipientTestResult(errormsg);
|
return s -> filter.test(s) ? new RecipientTestResult(0) : new RecipientTestResult(errormsg);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static <T extends Channel> BiFunction<T, CommandSender, RecipientTestResult> noScoreResult(
|
public static <T extends Channel> BiFunction<T, CommandSender, RecipientTestResult> noScoreResult(
|
||||||
BiPredicate<T, CommandSender> filter, String errormsg) {
|
BiPredicate<T, CommandSender> filter, String errormsg) {
|
||||||
return (this_, s) -> filter.test(this_, s) ? new RecipientTestResult(0) : new RecipientTestResult(errormsg);
|
return (this_, s) -> filter.test(this_, s) ? new RecipientTestResult(0) : new RecipientTestResult(errormsg);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static Channel GlobalChat;
|
public static Channel GlobalChat;
|
||||||
public static Channel AdminChat;
|
public static Channel AdminChat;
|
||||||
public static Channel ModChat;
|
public static Channel ModChat;
|
||||||
|
|
||||||
static void RegisterChannel(Channel channel) {
|
static void RegisterChannel(Channel channel) {
|
||||||
channels.add(channel);
|
channels.add(channel);
|
||||||
Bukkit.getScheduler().runTask(MainPlugin.Instance,
|
Bukkit.getScheduler().runTask(Bukkit.getPluginManager().callEvent(new ChatChannelRegisterEvent(channel))); // Wait for server start
|
||||||
() -> Bukkit.getPluginManager().callEvent(new ChatChannelRegisterEvent(channel))); // Wait for server start
|
}
|
||||||
}
|
|
||||||
|
|
||||||
public static class RecipientTestResult {
|
public static class RecipientTestResult {
|
||||||
public String errormessage = null;
|
public String errormessage = null;
|
||||||
public int score = -1; // Anything below 0 is "never send"
|
public int score = -1; // Anything below 0 is "never send"
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates a result that indicates an <b>error</b>
|
* Creates a result that indicates an <b>error</b>
|
||||||
*
|
*
|
||||||
* @param errormessage
|
* @param errormessage The error message to show the sender if they don't meet the criteria.
|
||||||
* The error message to show the sender if they don't meet the criteria.
|
*/
|
||||||
*/
|
public RecipientTestResult(String errormessage) {
|
||||||
public RecipientTestResult(String errormessage) {
|
this.errormessage = errormessage;
|
||||||
this.errormessage = errormessage;
|
}
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates a result that indicates a <b>success</b>
|
* Creates a result that indicates a <b>success</b>
|
||||||
*
|
*
|
||||||
* @param score
|
* @param score The score that identifies the target group. For example, the index of the town or nation to send to.
|
||||||
* The score that identifies the target group. For example, the index of the town or nation to send to.
|
*/
|
||||||
*/
|
public RecipientTestResult(int score) {
|
||||||
public RecipientTestResult(int score) {
|
this.score = score;
|
||||||
this.score = score;
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
0
ButtonCore/src/main/java/buttondevteam/lib/chat/ChatChannelRegisterEvent.java
Normal file → Executable file
0
ButtonCore/src/main/java/buttondevteam/lib/chat/ChatChannelRegisterEvent.java
Normal file → Executable file
3
ButtonCore/src/main/java/buttondevteam/lib/chat/ChatRoom.java
Normal file → Executable file
3
ButtonCore/src/main/java/buttondevteam/lib/chat/ChatRoom.java
Normal file → Executable file
|
@ -1,8 +1,9 @@
|
||||||
package buttondevteam.lib.chat;
|
package buttondevteam.lib.chat;
|
||||||
|
|
||||||
|
import org.bukkit.command.CommandSender;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import org.bukkit.command.CommandSender;
|
|
||||||
|
|
||||||
public class ChatRoom extends Channel {
|
public class ChatRoom extends Channel {
|
||||||
private List<CommandSender> usersInRoom = new ArrayList<>();
|
private List<CommandSender> usersInRoom = new ArrayList<>();
|
||||||
|
|
0
ButtonCore/src/main/java/buttondevteam/lib/chat/Color.java
Normal file → Executable file
0
ButtonCore/src/main/java/buttondevteam/lib/chat/Color.java
Normal file → Executable file
6
ButtonCore/src/main/java/buttondevteam/lib/chat/CommandClass.java
Normal file → Executable file
6
ButtonCore/src/main/java/buttondevteam/lib/chat/CommandClass.java
Normal file → Executable file
|
@ -1,10 +1,6 @@
|
||||||
package buttondevteam.lib.chat;
|
package buttondevteam.lib.chat;
|
||||||
|
|
||||||
import java.lang.annotation.ElementType;
|
import java.lang.annotation.*;
|
||||||
import java.lang.annotation.Inherited;
|
|
||||||
import java.lang.annotation.Retention;
|
|
||||||
import java.lang.annotation.RetentionPolicy;
|
|
||||||
import java.lang.annotation.Target;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* <b>Abstract classes with no {@link CommandClass} annotations will be ignored.</b> Classes that are not abstract or have the annotation will be included in the command path unless
|
* <b>Abstract classes with no {@link CommandClass} annotations will be ignored.</b> Classes that are not abstract or have the annotation will be included in the command path unless
|
||||||
|
|
0
ButtonCore/src/main/java/buttondevteam/lib/chat/IDiscordSender.java
Normal file → Executable file
0
ButtonCore/src/main/java/buttondevteam/lib/chat/IDiscordSender.java
Normal file → Executable file
3
ButtonCore/src/main/java/buttondevteam/lib/chat/OptionallyPlayerCommandBase.java
Normal file → Executable file
3
ButtonCore/src/main/java/buttondevteam/lib/chat/OptionallyPlayerCommandBase.java
Normal file → Executable file
|
@ -1,10 +1,9 @@
|
||||||
package buttondevteam.lib.chat;
|
package buttondevteam.lib.chat;
|
||||||
|
|
||||||
|
import buttondevteam.lib.TBMCCoreAPI;
|
||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
|
|
||||||
import buttondevteam.lib.TBMCCoreAPI;
|
|
||||||
|
|
||||||
public abstract class OptionallyPlayerCommandBase extends TBMCCommandBase {
|
public abstract class OptionallyPlayerCommandBase extends TBMCCommandBase {
|
||||||
public boolean OnCommand(Player player, String alias, String[] args) {
|
public boolean OnCommand(Player player, String alias, String[] args) {
|
||||||
if (getClass().isAnnotationPresent(OptionallyPlayerCommandClass.class)
|
if (getClass().isAnnotationPresent(OptionallyPlayerCommandClass.class)
|
||||||
|
|
6
ButtonCore/src/main/java/buttondevteam/lib/chat/OptionallyPlayerCommandClass.java
Normal file → Executable file
6
ButtonCore/src/main/java/buttondevteam/lib/chat/OptionallyPlayerCommandClass.java
Normal file → Executable file
|
@ -1,10 +1,6 @@
|
||||||
package buttondevteam.lib.chat;
|
package buttondevteam.lib.chat;
|
||||||
|
|
||||||
import java.lang.annotation.ElementType;
|
import java.lang.annotation.*;
|
||||||
import java.lang.annotation.Inherited;
|
|
||||||
import java.lang.annotation.Retention;
|
|
||||||
import java.lang.annotation.RetentionPolicy;
|
|
||||||
import java.lang.annotation.Target;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Only needed to use with {@link OptionallyPlayerCommandBase} command classes
|
* Only needed to use with {@link OptionallyPlayerCommandBase} command classes
|
||||||
|
|
0
ButtonCore/src/main/java/buttondevteam/lib/chat/PlayerCommandBase.java
Normal file → Executable file
0
ButtonCore/src/main/java/buttondevteam/lib/chat/PlayerCommandBase.java
Normal file → Executable file
0
ButtonCore/src/main/java/buttondevteam/lib/chat/Priority.java
Normal file → Executable file
0
ButtonCore/src/main/java/buttondevteam/lib/chat/Priority.java
Normal file → Executable file
60
ButtonCore/src/main/java/buttondevteam/lib/chat/TBMCChatAPI.java
Normal file → Executable file
60
ButtonCore/src/main/java/buttondevteam/lib/chat/TBMCChatAPI.java
Normal file → Executable file
|
@ -1,13 +1,12 @@
|
||||||
package buttondevteam.lib.chat;
|
package buttondevteam.lib.chat;
|
||||||
|
|
||||||
import java.lang.reflect.Modifier;
|
import buttondevteam.core.CommandCaller;
|
||||||
import java.util.ArrayList;
|
import buttondevteam.core.MainPlugin;
|
||||||
import java.util.Arrays;
|
import buttondevteam.lib.TBMCChatEvent;
|
||||||
import java.util.HashMap;
|
import buttondevteam.lib.TBMCChatPreprocessEvent;
|
||||||
import java.util.Map.Entry;
|
import buttondevteam.lib.TBMCCoreAPI;
|
||||||
import java.util.Set;
|
import buttondevteam.lib.TBMCSystemChatEvent;
|
||||||
import java.util.function.Consumer;
|
import buttondevteam.lib.chat.Channel.RecipientTestResult;
|
||||||
|
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
|
@ -17,13 +16,13 @@ import org.reflections.scanners.SubTypesScanner;
|
||||||
import org.reflections.util.ClasspathHelper;
|
import org.reflections.util.ClasspathHelper;
|
||||||
import org.reflections.util.ConfigurationBuilder;
|
import org.reflections.util.ConfigurationBuilder;
|
||||||
|
|
||||||
import buttondevteam.core.CommandCaller;
|
import java.lang.reflect.Modifier;
|
||||||
import buttondevteam.core.MainPlugin;
|
import java.util.ArrayList;
|
||||||
import buttondevteam.lib.TBMCChatEvent;
|
import java.util.Arrays;
|
||||||
import buttondevteam.lib.TBMCChatPreprocessEvent;
|
import java.util.HashMap;
|
||||||
import buttondevteam.lib.TBMCCoreAPI;
|
import java.util.Map.Entry;
|
||||||
import buttondevteam.lib.TBMCSystemChatEvent;
|
import java.util.Set;
|
||||||
import buttondevteam.lib.chat.Channel.RecipientTestResult;
|
import java.util.function.Consumer;
|
||||||
|
|
||||||
public class TBMCChatAPI {
|
public class TBMCChatAPI {
|
||||||
|
|
||||||
|
@ -119,7 +118,7 @@ public class TBMCChatAPI {
|
||||||
continue;
|
continue;
|
||||||
TBMCCommandBase c = cmd.newInstance();
|
TBMCCommandBase c = cmd.newInstance();
|
||||||
c.plugin = plugin;
|
c.plugin = plugin;
|
||||||
if (!CheckForNulls(plugin, c))
|
if (HasNulls(plugin, c))
|
||||||
continue;
|
continue;
|
||||||
commands.put(c.GetCommandPath(), c);
|
commands.put(c.GetCommandPath(), c);
|
||||||
CommandCaller.RegisterCommand(c);
|
CommandCaller.RegisterCommand(c);
|
||||||
|
@ -155,7 +154,7 @@ public class TBMCChatAPI {
|
||||||
else
|
else
|
||||||
c = thecmdclass.newInstance();
|
c = thecmdclass.newInstance();
|
||||||
c.plugin = plugin;
|
c.plugin = plugin;
|
||||||
if (!CheckForNulls(plugin, c))
|
if (HasNulls(plugin, c))
|
||||||
return;
|
return;
|
||||||
commands.put(c.GetCommandPath(), c);
|
commands.put(c.GetCommandPath(), c);
|
||||||
CommandCaller.RegisterCommand(c);
|
CommandCaller.RegisterCommand(c);
|
||||||
|
@ -181,7 +180,7 @@ public class TBMCChatAPI {
|
||||||
* The command to add
|
* The command to add
|
||||||
*/
|
*/
|
||||||
public static void AddCommand(JavaPlugin plugin, TBMCCommandBase cmd) {
|
public static void AddCommand(JavaPlugin plugin, TBMCCommandBase cmd) {
|
||||||
if (!CheckForNulls(plugin, cmd))
|
if (HasNulls(plugin, cmd))
|
||||||
return;
|
return;
|
||||||
// plugin.getLogger().info("Registering command /" + cmd.GetCommandPath() + " for " + plugin.getName());
|
// plugin.getLogger().info("Registering command /" + cmd.GetCommandPath() + " for " + plugin.getName());
|
||||||
try {
|
try {
|
||||||
|
@ -193,22 +192,22 @@ public class TBMCChatAPI {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private static boolean CheckForNulls(JavaPlugin plugin, TBMCCommandBase cmd) {
|
private static boolean HasNulls(JavaPlugin plugin, TBMCCommandBase cmd) {
|
||||||
if (cmd == null) {
|
if (cmd == null) {
|
||||||
TBMCCoreAPI.SendException("An error occured while registering a command for plugin " + plugin.getName(),
|
TBMCCoreAPI.SendException("An error occured while registering a command for plugin " + plugin.getName(),
|
||||||
new Exception("The command is null!"));
|
new Exception("The command is null!"));
|
||||||
return false;
|
return true;
|
||||||
} else if (cmd.GetCommandPath() == null) {
|
} else if (cmd.GetCommandPath() == null) {
|
||||||
TBMCCoreAPI.SendException("An error occured while registering command " + cmd.getClass().getSimpleName()
|
TBMCCoreAPI.SendException("An error occured while registering command " + cmd.getClass().getSimpleName()
|
||||||
+ " for plugin " + plugin.getName(), new Exception("The command path is null!"));
|
+ " for plugin " + plugin.getName(), new Exception("The command path is null!"));
|
||||||
return false;
|
return true;
|
||||||
}
|
}
|
||||||
return true;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Sends a chat message to Minecraft. Make sure that the channel is registered with {@link #RegisterChatChannel(Channel)}.
|
* Sends a chat message to Minecraft. Make sure that the channel is registered with {@link #RegisterChatChannel(Channel)}.
|
||||||
*
|
*
|
||||||
* @param channel
|
* @param channel
|
||||||
* The channel to send to
|
* The channel to send to
|
||||||
* @param sender
|
* @param sender
|
||||||
|
@ -218,6 +217,19 @@ public class TBMCChatAPI {
|
||||||
* @return The event cancelled state
|
* @return The event cancelled state
|
||||||
*/
|
*/
|
||||||
public static boolean SendChatMessage(Channel channel, CommandSender sender, String message) {
|
public static boolean SendChatMessage(Channel channel, CommandSender sender, String message) {
|
||||||
|
return SendChatMessage(channel, sender, message, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sends a chat message to Minecraft. Make sure that the channel is registered with {@link #RegisterChatChannel(Channel)}.
|
||||||
|
*
|
||||||
|
* @param channel The channel to send to
|
||||||
|
* @param sender The sender to send from
|
||||||
|
* @param message The message to send
|
||||||
|
* @param fromcommand Whether this message comes from running a command, used to determine whether to delete Discord messages for example
|
||||||
|
* @return The event cancelled state
|
||||||
|
*/
|
||||||
|
public static boolean SendChatMessage(Channel channel, CommandSender sender, String message, boolean fromcommand) {
|
||||||
if (!Channel.getChannels().contains(channel))
|
if (!Channel.getChannels().contains(channel))
|
||||||
throw new RuntimeException("Channel " + channel.DisplayName + " not registered!");
|
throw new RuntimeException("Channel " + channel.DisplayName + " not registered!");
|
||||||
TBMCChatPreprocessEvent eventPre = new TBMCChatPreprocessEvent(sender, channel, message);
|
TBMCChatPreprocessEvent eventPre = new TBMCChatPreprocessEvent(sender, channel, message);
|
||||||
|
@ -227,7 +239,7 @@ public class TBMCChatAPI {
|
||||||
int score = getScoreOrSendError(channel, sender);
|
int score = getScoreOrSendError(channel, sender);
|
||||||
if (score == -1)
|
if (score == -1)
|
||||||
return true;
|
return true;
|
||||||
TBMCChatEvent event = new TBMCChatEvent(sender, channel, eventPre.getMessage(), score);
|
TBMCChatEvent event = new TBMCChatEvent(sender, channel, eventPre.getMessage(), score, fromcommand);
|
||||||
Bukkit.getPluginManager().callEvent(event);
|
Bukkit.getPluginManager().callEvent(event);
|
||||||
return event.isCancelled();
|
return event.isCancelled();
|
||||||
}
|
}
|
||||||
|
|
5
ButtonCore/src/main/java/buttondevteam/lib/chat/TBMCCommandBase.java
Normal file → Executable file
5
ButtonCore/src/main/java/buttondevteam/lib/chat/TBMCCommandBase.java
Normal file → Executable file
|
@ -1,11 +1,10 @@
|
||||||
package buttondevteam.lib.chat;
|
package buttondevteam.lib.chat;
|
||||||
|
|
||||||
import java.util.function.Function;
|
import javassist.Modifier;
|
||||||
|
|
||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
import org.bukkit.plugin.Plugin;
|
import org.bukkit.plugin.Plugin;
|
||||||
|
|
||||||
import javassist.Modifier;
|
import java.util.function.Function;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Extend this class to create new TBMCCommand and use {@link TBMCChatAPI#AddCommand(org.bukkit.plugin.java.JavaPlugin, TBMCCommandBase)} to add it. <u><b>Note:</b></u> The command path (command name
|
* Extend this class to create new TBMCCommand and use {@link TBMCChatAPI#AddCommand(org.bukkit.plugin.java.JavaPlugin, TBMCCommandBase)} to add it. <u><b>Note:</b></u> The command path (command name
|
||||||
|
|
0
ButtonCore/src/main/java/buttondevteam/lib/chat/TellrawSerializableEnum.java
Normal file → Executable file
0
ButtonCore/src/main/java/buttondevteam/lib/chat/TellrawSerializableEnum.java
Normal file → Executable file
6
ButtonCore/src/main/java/buttondevteam/lib/player/AbstractUserClass.java
Normal file → Executable file
6
ButtonCore/src/main/java/buttondevteam/lib/player/AbstractUserClass.java
Normal file → Executable file
|
@ -1,10 +1,6 @@
|
||||||
package buttondevteam.lib.player;
|
package buttondevteam.lib.player;
|
||||||
|
|
||||||
import java.lang.annotation.ElementType;
|
import java.lang.annotation.*;
|
||||||
import java.lang.annotation.Inherited;
|
|
||||||
import java.lang.annotation.Retention;
|
|
||||||
import java.lang.annotation.RetentionPolicy;
|
|
||||||
import java.lang.annotation.Target;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Specifies a {@link ChromaGamerBase} direct subclass which's abstract. For Minecraft data, use {@link PlayerClass}
|
* Specifies a {@link ChromaGamerBase} direct subclass which's abstract. For Minecraft data, use {@link PlayerClass}
|
||||||
|
|
14
ButtonCore/src/main/java/buttondevteam/lib/player/ChromaGamerBase.java
Normal file → Executable file
14
ButtonCore/src/main/java/buttondevteam/lib/player/ChromaGamerBase.java
Normal file → Executable file
|
@ -1,17 +1,15 @@
|
||||||
package buttondevteam.lib.player;
|
package buttondevteam.lib.player;
|
||||||
|
|
||||||
|
import buttondevteam.lib.TBMCCoreAPI;
|
||||||
|
import com.google.common.collect.HashBiMap;
|
||||||
|
import lombok.val;
|
||||||
|
import org.bukkit.Bukkit;
|
||||||
|
import org.bukkit.configuration.file.YamlConfiguration;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.function.Consumer;
|
import java.util.function.Consumer;
|
||||||
|
|
||||||
import org.bukkit.Bukkit;
|
|
||||||
import org.bukkit.configuration.file.YamlConfiguration;
|
|
||||||
|
|
||||||
import com.google.common.collect.HashBiMap;
|
|
||||||
|
|
||||||
import buttondevteam.lib.TBMCCoreAPI;
|
|
||||||
import lombok.val;
|
|
||||||
|
|
||||||
@ChromaGamerEnforcer
|
@ChromaGamerEnforcer
|
||||||
public abstract class ChromaGamerBase implements AutoCloseable {
|
public abstract class ChromaGamerBase implements AutoCloseable {
|
||||||
public static final String TBMC_PLAYERS_DIR = "TBMC/players/";
|
public static final String TBMC_PLAYERS_DIR = "TBMC/players/";
|
||||||
|
|
6
ButtonCore/src/main/java/buttondevteam/lib/player/ChromaGamerEnforcer.java
Normal file → Executable file
6
ButtonCore/src/main/java/buttondevteam/lib/player/ChromaGamerEnforcer.java
Normal file → Executable file
|
@ -1,10 +1,6 @@
|
||||||
package buttondevteam.lib.player;
|
package buttondevteam.lib.player;
|
||||||
|
|
||||||
import java.lang.annotation.ElementType;
|
import java.lang.annotation.*;
|
||||||
import java.lang.annotation.Inherited;
|
|
||||||
import java.lang.annotation.Retention;
|
|
||||||
import java.lang.annotation.RetentionPolicy;
|
|
||||||
import java.lang.annotation.Target;
|
|
||||||
|
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
@Target(ElementType.TYPE)
|
@Target(ElementType.TYPE)
|
||||||
|
|
0
ButtonCore/src/main/java/buttondevteam/lib/player/EnumPlayerData.java
Normal file → Executable file
0
ButtonCore/src/main/java/buttondevteam/lib/player/EnumPlayerData.java
Normal file → Executable file
0
ButtonCore/src/main/java/buttondevteam/lib/player/PlayerClass.java
Normal file → Executable file
0
ButtonCore/src/main/java/buttondevteam/lib/player/PlayerClass.java
Normal file → Executable file
0
ButtonCore/src/main/java/buttondevteam/lib/player/PlayerData.java
Normal file → Executable file
0
ButtonCore/src/main/java/buttondevteam/lib/player/PlayerData.java
Normal file → Executable file
0
ButtonCore/src/main/java/buttondevteam/lib/player/TBMCPlayer.java
Normal file → Executable file
0
ButtonCore/src/main/java/buttondevteam/lib/player/TBMCPlayer.java
Normal file → Executable file
22
ButtonCore/src/main/java/buttondevteam/lib/player/TBMCPlayerBase.java
Normal file → Executable file
22
ButtonCore/src/main/java/buttondevteam/lib/player/TBMCPlayerBase.java
Normal file → Executable file
|
@ -1,23 +1,21 @@
|
||||||
package buttondevteam.lib.player;
|
package buttondevteam.lib.player;
|
||||||
|
|
||||||
|
import buttondevteam.lib.TBMCCoreAPI;
|
||||||
|
import com.palmergames.bukkit.towny.Towny;
|
||||||
|
import com.palmergames.bukkit.towny.exceptions.AlreadyRegisteredException;
|
||||||
|
import com.palmergames.bukkit.towny.exceptions.NotRegisteredException;
|
||||||
|
import com.palmergames.bukkit.towny.object.Resident;
|
||||||
|
import com.palmergames.bukkit.towny.object.TownyUniverse;
|
||||||
|
import org.bukkit.Bukkit;
|
||||||
|
import org.bukkit.OfflinePlayer;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
|
||||||
import java.util.Iterator;
|
import java.util.Iterator;
|
||||||
import java.util.Map.Entry;
|
import java.util.Map.Entry;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
import java.util.concurrent.ConcurrentHashMap;
|
import java.util.concurrent.ConcurrentHashMap;
|
||||||
|
|
||||||
import org.bukkit.Bukkit;
|
|
||||||
import org.bukkit.OfflinePlayer;
|
|
||||||
import org.bukkit.entity.Player;
|
|
||||||
|
|
||||||
import com.palmergames.bukkit.towny.Towny;
|
|
||||||
import com.palmergames.bukkit.towny.exceptions.AlreadyRegisteredException;
|
|
||||||
import com.palmergames.bukkit.towny.exceptions.NotRegisteredException;
|
|
||||||
import com.palmergames.bukkit.towny.object.Resident;
|
|
||||||
import com.palmergames.bukkit.towny.object.TownyUniverse;
|
|
||||||
|
|
||||||
import buttondevteam.lib.TBMCCoreAPI;
|
|
||||||
|
|
||||||
@AbstractUserClass(foldername = "minecraft", prototype = TBMCPlayer.class)
|
@AbstractUserClass(foldername = "minecraft", prototype = TBMCPlayer.class)
|
||||||
@TBMCPlayerEnforcer
|
@TBMCPlayerEnforcer
|
||||||
public abstract class TBMCPlayerBase extends ChromaGamerBase {
|
public abstract class TBMCPlayerBase extends ChromaGamerBase {
|
||||||
|
|
9
ButtonCore/src/main/java/buttondevteam/lib/player/TBMCPlayerGetInfoEvent.java
Normal file → Executable file
9
ButtonCore/src/main/java/buttondevteam/lib/player/TBMCPlayerGetInfoEvent.java
Normal file → Executable file
|
@ -1,14 +1,13 @@
|
||||||
package buttondevteam.lib.player;
|
package buttondevteam.lib.player;
|
||||||
|
|
||||||
|
import buttondevteam.lib.player.ChromaGamerBase.InfoTarget;
|
||||||
|
import org.bukkit.event.Event;
|
||||||
|
import org.bukkit.event.HandlerList;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
import org.bukkit.event.Event;
|
|
||||||
import org.bukkit.event.HandlerList;
|
|
||||||
|
|
||||||
import buttondevteam.lib.player.ChromaGamerBase.InfoTarget;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* <p>
|
* <p>
|
||||||
* This event gets called when player information is requested. It can be used to give more per-plugin information about a player.
|
* This event gets called when player information is requested. It can be used to give more per-plugin information about a player.
|
||||||
|
|
0
ButtonCore/src/main/java/buttondevteam/lib/player/TBMCPlayerJoinEvent.java
Normal file → Executable file
0
ButtonCore/src/main/java/buttondevteam/lib/player/TBMCPlayerJoinEvent.java
Normal file → Executable file
0
ButtonCore/src/main/java/buttondevteam/lib/player/TBMCPlayerLoadEvent.java
Normal file → Executable file
0
ButtonCore/src/main/java/buttondevteam/lib/player/TBMCPlayerLoadEvent.java
Normal file → Executable file
0
ButtonCore/src/main/java/buttondevteam/lib/player/TBMCPlayerQuitEvent.java
Normal file → Executable file
0
ButtonCore/src/main/java/buttondevteam/lib/player/TBMCPlayerQuitEvent.java
Normal file → Executable file
0
ButtonCore/src/main/java/buttondevteam/lib/player/TBMCPlayerSaveEvent.java
Normal file → Executable file
0
ButtonCore/src/main/java/buttondevteam/lib/player/TBMCPlayerSaveEvent.java
Normal file → Executable file
0
ButtonCore/src/main/java/buttondevteam/lib/player/TBMCYEEHAWEvent.java
Normal file → Executable file
0
ButtonCore/src/main/java/buttondevteam/lib/player/TBMCYEEHAWEvent.java
Normal file → Executable file
6
ButtonCore/src/main/java/buttondevteam/lib/player/UserClass.java
Normal file → Executable file
6
ButtonCore/src/main/java/buttondevteam/lib/player/UserClass.java
Normal file → Executable file
|
@ -1,10 +1,6 @@
|
||||||
package buttondevteam.lib.player;
|
package buttondevteam.lib.player;
|
||||||
|
|
||||||
import java.lang.annotation.ElementType;
|
import java.lang.annotation.*;
|
||||||
import java.lang.annotation.Inherited;
|
|
||||||
import java.lang.annotation.Retention;
|
|
||||||
import java.lang.annotation.RetentionPolicy;
|
|
||||||
import java.lang.annotation.Target;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Specifies a {@link ChromaGamerBase} direct subclass which can be instantiated. For Minecraft data, use {@link PlayerClass}
|
* Specifies a {@link ChromaGamerBase} direct subclass which can be instantiated. For Minecraft data, use {@link PlayerClass}
|
||||||
|
|
8
ButtonCore/src/main/java/buttondevteam/lib/potato/DebugPotato.java
Normal file → Executable file
8
ButtonCore/src/main/java/buttondevteam/lib/potato/DebugPotato.java
Normal file → Executable file
|
@ -1,15 +1,15 @@
|
||||||
package buttondevteam.lib.potato;
|
package buttondevteam.lib.potato;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.Arrays;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import org.bukkit.Material;
|
import org.bukkit.Material;
|
||||||
import org.bukkit.enchantments.Enchantment;
|
import org.bukkit.enchantments.Enchantment;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
import org.bukkit.inventory.ItemStack;
|
import org.bukkit.inventory.ItemStack;
|
||||||
import org.bukkit.inventory.meta.ItemMeta;
|
import org.bukkit.inventory.meta.ItemMeta;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Arrays;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
public class DebugPotato {
|
public class DebugPotato {
|
||||||
private List<String> message;
|
private List<String> message;
|
||||||
private String type;
|
private String type;
|
||||||
|
|
0
ButtonCore/src/main/java/buttondevteam/lib/potato/Gary.java
Normal file → Executable file
0
ButtonCore/src/main/java/buttondevteam/lib/potato/Gary.java
Normal file → Executable file
0
ButtonCore/src/main/resources/plugin.yml
Normal file → Executable file
0
ButtonCore/src/main/resources/plugin.yml
Normal file → Executable file
9
ButtonCore/src/test/java/buttondevteam/core/PlayerDataTest.java
Normal file → Executable file
9
ButtonCore/src/test/java/buttondevteam/core/PlayerDataTest.java
Normal file → Executable file
|
@ -1,16 +1,15 @@
|
||||||
package buttondevteam.core;
|
package buttondevteam.core;
|
||||||
|
|
||||||
import java.io.File;
|
|
||||||
import java.util.UUID;
|
|
||||||
|
|
||||||
import org.apache.commons.io.FileUtils;
|
|
||||||
|
|
||||||
import buttondevteam.core.TestPlayerClass.TestEnum;
|
import buttondevteam.core.TestPlayerClass.TestEnum;
|
||||||
import buttondevteam.lib.player.ChromaGamerBase;
|
import buttondevteam.lib.player.ChromaGamerBase;
|
||||||
import buttondevteam.lib.player.TBMCPlayerBase;
|
import buttondevteam.lib.player.TBMCPlayerBase;
|
||||||
import junit.framework.Test;
|
import junit.framework.Test;
|
||||||
import junit.framework.TestCase;
|
import junit.framework.TestCase;
|
||||||
import junit.framework.TestSuite;
|
import junit.framework.TestSuite;
|
||||||
|
import org.apache.commons.io.FileUtils;
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
public class PlayerDataTest extends TestCase {
|
public class PlayerDataTest extends TestCase {
|
||||||
public PlayerDataTest() {
|
public PlayerDataTest() {
|
||||||
|
|
0
ButtonCore/src/test/java/buttondevteam/core/TestPlayerClass.java
Normal file → Executable file
0
ButtonCore/src/test/java/buttondevteam/core/TestPlayerClass.java
Normal file → Executable file
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue