diff --git a/pom.xml b/pom.xml index 51e700f..d7d86ab 100644 --- a/pom.xml +++ b/pom.xml @@ -1,121 +1,126 @@ - 4.0.0 - pw.yumc - MiaoLobby - 1.2 - - ${project.name} - - - src/main/resources - true - - - - - maven-compiler-plugin - 3.3 - - 1.7 - 1.7 - - - - org.apache.maven.plugins - maven-shade-plugin - 2.3 - - false - true - - - pw.yumc:YumCore - - - - - pw.yumc.YumCore - ${project.groupId}.${project.artifactId} - - - - - - package - - shade - - - - - - com.github.wvengen - proguard-maven-plugin - - - package - - proguard - - - - - - - ${java.home}/lib/rt.jar - - - - - - - - - Jenkins - http://ci.yumc.pw/job/${project.artifactId}/ - - - - - DEBUG - UTF-8 - - - - spigot-repo - https://hub.spigotmc.org/nexus/content/groups/public/ - - - yumc-repo - http://repo.yumc.pw/content/groups/public/ - - - - - jtb - YUMC - http://repo.yumc.pw/content/repositories/yumcenter/ - - - - - org.spigotmc - spigot-api - jar - 1.10.2-R0.1-SNAPSHOT - - - pw.yumc - YumCore - jar - 1.0 - - - cn.citycraft - AuthMe - jar - 6.1 - - + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + 4.0.0 + pw.yumc + MiaoLobby + 1.2 + + ${project.name} + + + src/main/resources + true + + + + + maven-compiler-plugin + 3.3 + + 1.7 + 1.7 + + + + org.apache.maven.plugins + maven-shade-plugin + 2.3 + + false + true + + + pw.yumc:YumCore + + + + + pw.yumc.YumCore + ${project.groupId}.${project.artifactId} + + + + + + package + + shade + + + + + + com.github.wvengen + proguard-maven-plugin + + + package + + proguard + + + + + + + ${java.home}/lib/rt.jar + + + + + + + + + Jenkins + http://ci.yumc.pw/job/${project.artifactId}/ + + + + + DEBUG + UTF-8 + + + + spigot-repo + https://hub.spigotmc.org/nexus/content/groups/public/ + + + yumc-repo + http://repo.yumc.pw/content/groups/public/ + + + + + jtb + YUMC + http://repo.yumc.pw/content/repositories/yumcenter/ + + + + + org.spigotmc + spigot-api + jar + 1.10.2-R0.1-SNAPSHOT + + + pw.yumc + YumCore + jar + 1.0 + + + cn.citycraft + AuthMe + jar + 6.1 + + + cn.citycraft + VBossAuth + 1.5.2 + + \ No newline at end of file diff --git a/src/main/java/pw/yumc/MiaoLobby/AuthHook.java b/src/main/java/pw/yumc/MiaoLobby/AuthHook.java new file mode 100644 index 0000000..b430e33 --- /dev/null +++ b/src/main/java/pw/yumc/MiaoLobby/AuthHook.java @@ -0,0 +1,39 @@ +package pw.yumc.MiaoLobby; + +import org.bukkit.Bukkit; +import org.bukkit.entity.Player; +import org.bukkit.event.Listener; +import org.bukkit.scheduler.BukkitRunnable; + +import pw.yumc.YumCore.bukkit.P; +import pw.yumc.YumCore.bukkit.compatible.C; + +/** + * Created by 蒋天蓓 on 2016/12/24 0024. + */ +public class AuthHook implements Listener { + MiaoLobby plugin = P.getPlugin(); + + public AuthHook() { + Bukkit.getPluginManager().registerEvents(this, P.instance); + } + + protected void delayTp(final Player player) { + new BukkitRunnable() { + int delay = plugin.config.AutoTPDelay; + + @Override + public void run() { + if (player.isOnline()) { + if (delay > 0) { + C.ActionBar.send(player, String.format(plugin.config.TPDelay, delay)); + delay--; + return; + } + plugin.random(player); + } + cancel(); + } + }.runTaskTimerAsynchronously(plugin, 0, 20); + } +} diff --git a/src/main/java/pw/yumc/MiaoLobby/AuthMeHook.java b/src/main/java/pw/yumc/MiaoLobby/AuthMeHook.java index 6bf5807..dae933d 100644 --- a/src/main/java/pw/yumc/MiaoLobby/AuthMeHook.java +++ b/src/main/java/pw/yumc/MiaoLobby/AuthMeHook.java @@ -1,40 +1,12 @@ package pw.yumc.MiaoLobby; -import org.bukkit.Bukkit; -import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.scheduler.BukkitRunnable; import fr.xephi.authme.events.LoginEvent; -import pw.yumc.YumCore.bukkit.P; -import pw.yumc.YumCore.bukkit.compatible.C; - -public class AuthMeHook implements Listener { - MiaoLobby plugin = P.getPlugin(); - - public AuthMeHook() { - Bukkit.getPluginManager().registerEvents(this, P.instance); - } +public class AuthMeHook extends AuthHook { @EventHandler public void onLogin(final LoginEvent e) { - new BukkitRunnable() { - Player player = e.getPlayer(); - int delay = plugin.config.AutoTPDelay; - - @Override - public void run() { - if (player.isOnline()) { - if (delay > 0) { - C.ActionBar.send(player, String.format(plugin.config.TPDelay, delay)); - delay--; - return; - } - plugin.random(player); - } - cancel(); - } - }.runTaskTimerAsynchronously(plugin, 0, 20); + delayTp(e.getPlayer()); } } diff --git a/src/main/java/pw/yumc/MiaoLobby/Config.java b/src/main/java/pw/yumc/MiaoLobby/Config.java index ba7d7fe..1f76bd9 100644 --- a/src/main/java/pw/yumc/MiaoLobby/Config.java +++ b/src/main/java/pw/yumc/MiaoLobby/Config.java @@ -17,7 +17,7 @@ public class Config extends InjectConfig { public String TimeOut; public String TPDelay; public String Unavailable; - public Boolean AuthMeAutoTP; + public Boolean LoginAutoTP; public Integer AutoTPDelay; public Boolean ReTry; } diff --git a/src/main/java/pw/yumc/MiaoLobby/MiaoLobby.java b/src/main/java/pw/yumc/MiaoLobby/MiaoLobby.java index eb4f657..41a27c9 100644 --- a/src/main/java/pw/yumc/MiaoLobby/MiaoLobby.java +++ b/src/main/java/pw/yumc/MiaoLobby/MiaoLobby.java @@ -21,8 +21,8 @@ import pw.yumc.YumCore.commands.CommandManager; import pw.yumc.YumCore.commands.annotation.Cmd; import pw.yumc.YumCore.commands.annotation.Cmd.Executor; import pw.yumc.YumCore.commands.annotation.Help; -import pw.yumc.YumCore.update.SubscribeTask; import pw.yumc.YumCore.statistic.Statistics; +import pw.yumc.YumCore.update.SubscribeTask; public class MiaoLobby extends JavaPlugin implements CommandExecutor { public Config config; @@ -54,8 +54,13 @@ public class MiaoLobby extends JavaPlugin implements CommandExecutor { public void onEnable() { new CommandManager("MiaoLobby", this); Bukkit.getMessenger().registerOutgoingPluginChannel(this, "BungeeCord"); - if (config.AuthMeAutoTP && Bukkit.getPluginManager().isPluginEnabled("AuthMe")) { - new AuthMeHook(); + if (config.LoginAutoTP) { + if (Bukkit.getPluginManager().isPluginEnabled("AuthMe")) { + new AuthMeHook(); + } + if (Bukkit.getPluginManager().isPluginEnabled("VBossAuth")) { + new VBossAuthHook(); + } } new Statistics(); new SubscribeTask(); diff --git a/src/main/java/pw/yumc/MiaoLobby/VBossAuthHook.java b/src/main/java/pw/yumc/MiaoLobby/VBossAuthHook.java new file mode 100644 index 0000000..bc680a1 --- /dev/null +++ b/src/main/java/pw/yumc/MiaoLobby/VBossAuthHook.java @@ -0,0 +1,12 @@ +package pw.yumc.MiaoLobby; + +import org.bukkit.event.EventHandler; + +import cn.citycraft.VBossAuth.event.LoginEvent; + +public class VBossAuthHook extends AuthHook { + @EventHandler + public void onLogin(final LoginEvent e) { + delayTp(e.getPlayer()); + } +} diff --git a/src/main/resources/config.yml b/src/main/resources/config.yml index e0475b4..e548426 100644 --- a/src/main/resources/config.yml +++ b/src/main/resources/config.yml @@ -1,5 +1,5 @@ #配置文件版本 请勿修改 -Version: 1.2 +Version: 1.3 #数据库信息 Servers: @@ -7,8 +7,8 @@ Servers: - lobby2 #传送超时时间(单位: Tick) WaitTime: 35 -#AuthMe自动传送 -AuthMeAutoTP: true +#登录自动传送(暂时支持AuthMe和VBossAuth) +LoginAutoTP: true #自动登录延时(单位: 秒) AutoTPDelay: 10 #尝试完毕后是否继续重试