From 47a7ea7ee5015fe47f213473e8bcbd4e54593a3c Mon Sep 17 00:00:00 2001 From: Coloryr <402067010@qq.com> Date: Sat, 2 May 2020 23:32:23 +0800 Subject: [PATCH] 2.0.0 --- .../java/Color_yr/AllMusic/API/ISide.java | 2 ++ .../Color_yr/AllMusic/Command/CommandEX.java | 21 ++++++++------ .../java/Color_yr/AllMusic/Event/EventBC.java | 8 +----- .../Color_yr/AllMusic/Event/EventBukkit.java | 7 ----- .../Color_yr/AllMusic/MusicPlay/PlayGo.java | 2 ++ .../AllMusic/MusicPlay/SendInfo/SaveOBJ.java | 2 +- .../AllMusic/MusicPlay/SendInfo/SendInfo.java | 28 ++++++++++--------- .../Color_yr/AllMusic/Side/SideBC/SideBC.java | 22 +++++++++++++++ .../AllMusic/Side/SideBukkit/SideBukkit.java | 21 ++++++++++++++ 9 files changed, 76 insertions(+), 37 deletions(-) diff --git a/src/main/java/Color_yr/AllMusic/API/ISide.java b/src/main/java/Color_yr/AllMusic/API/ISide.java index ee3814cb..b6016efe 100644 --- a/src/main/java/Color_yr/AllMusic/API/ISide.java +++ b/src/main/java/Color_yr/AllMusic/API/ISide.java @@ -21,6 +21,8 @@ public interface ISide { boolean SendList(String data); + void SendAll(); + void Clear(String player); void ClearAll(); diff --git a/src/main/java/Color_yr/AllMusic/Command/CommandEX.java b/src/main/java/Color_yr/AllMusic/Command/CommandEX.java index fc11df28..7681efc4 100644 --- a/src/main/java/Color_yr/AllMusic/Command/CommandEX.java +++ b/src/main/java/Color_yr/AllMusic/Command/CommandEX.java @@ -278,17 +278,20 @@ public class CommandEX { } else if (args.length != 4) { AllMusic.Side.SendMessage(sender, AllMusic.getMessage().getCommand().getError()); } else { - PosOBJ obj = SendInfo.SetPot(Name, args[1], args[2], args[3]); - if (obj == null) { + try { + PosOBJ obj = SendInfo.SetPot(Name, args[1], args[2], args[3]); + if (obj == null) { + AllMusic.Side.SendMessage(sender, AllMusic.getMessage().getCommand().getError()); + } else { + String temp = AllMusic.getMessage().getHud().getSet() + .replace("%Hud%", args[1]) + .replace("%x%", args[2]) + .replace("%y%", args[3]); + AllMusic.Side.SendMessage(sender, temp); + } + } catch (Exception e) { AllMusic.Side.SendMessage(sender, AllMusic.getMessage().getCommand().getError()); - } else { - String temp = AllMusic.getMessage().getHud().getSet() - .replace("%Hub%", args[1]) - .replace("%x%", args[2]) - .replace("%y%", args[3]); - AllMusic.Side.SendMessage(sender, temp); } - } } } else if (AllMusic.getConfig().isNeedPermission() && AllMusic.Side.checkPermission(Name, "AllMusic.addmusic")) diff --git a/src/main/java/Color_yr/AllMusic/Event/EventBC.java b/src/main/java/Color_yr/AllMusic/Event/EventBC.java index cdf6f3a7..9d31c961 100644 --- a/src/main/java/Color_yr/AllMusic/Event/EventBC.java +++ b/src/main/java/Color_yr/AllMusic/Event/EventBC.java @@ -4,6 +4,7 @@ import Color_yr.AllMusic.AllMusic; import Color_yr.AllMusic.MusicPlay.SendInfo.SendInfo; import net.md_5.bungee.api.connection.ProxiedPlayer; import net.md_5.bungee.api.event.PlayerDisconnectEvent; +import net.md_5.bungee.api.event.PostLoginEvent; import net.md_5.bungee.api.plugin.Listener; import net.md_5.bungee.event.EventHandler; @@ -12,11 +13,4 @@ public class EventBC implements Listener { public void onPlayerquit(final PlayerDisconnectEvent event) { AllMusic.removeNowPlayPlayer(event.getPlayer().getName()); } - - @EventHandler - public void onPlayerJoin(net.md_5.bungee.api.event.PostLoginEvent e) { - ProxiedPlayer player = e.getPlayer(); - String Name = player.getName(); - SendInfo.SendSave(Name); - } } diff --git a/src/main/java/Color_yr/AllMusic/Event/EventBukkit.java b/src/main/java/Color_yr/AllMusic/Event/EventBukkit.java index bbfa55d1..242c9e41 100644 --- a/src/main/java/Color_yr/AllMusic/Event/EventBukkit.java +++ b/src/main/java/Color_yr/AllMusic/Event/EventBukkit.java @@ -15,11 +15,4 @@ public class EventBukkit implements Listener { public void onPlayerQuit(final PlayerQuitEvent e) { AllMusic.removeNowPlayPlayer(e.getPlayer().getName()); } - - @EventHandler - public void onPlayJoin(PlayerJoinEvent e) { - Player player = e.getPlayer(); - String Name = player.getName(); - SendInfo.SendSave(Name); - } } diff --git a/src/main/java/Color_yr/AllMusic/MusicPlay/PlayGo.java b/src/main/java/Color_yr/AllMusic/MusicPlay/PlayGo.java index 1638e7b4..894d918d 100644 --- a/src/main/java/Color_yr/AllMusic/MusicPlay/PlayGo.java +++ b/src/main/java/Color_yr/AllMusic/MusicPlay/PlayGo.java @@ -65,6 +65,7 @@ class PlayGo extends Thread { PlayMusic.nowLyric = null; PlayMusic.NowPlayMusic = null; closeTimer(); + SendInfo.clear(); } @Override @@ -108,6 +109,7 @@ class PlayGo extends Thread { AllMusic.Side.bqt(info); startTimer(); AllMusic.Side.Send("[Play]" + url, true); + AllMusic.Side.SendAll(); try { while (PlayMusic.MusicAllTime > 0) { SendInfo.SendNowData(); diff --git a/src/main/java/Color_yr/AllMusic/MusicPlay/SendInfo/SaveOBJ.java b/src/main/java/Color_yr/AllMusic/MusicPlay/SendInfo/SaveOBJ.java index fd739abc..9e72593a 100644 --- a/src/main/java/Color_yr/AllMusic/MusicPlay/SendInfo/SaveOBJ.java +++ b/src/main/java/Color_yr/AllMusic/MusicPlay/SendInfo/SaveOBJ.java @@ -11,7 +11,7 @@ public class SaveOBJ { public SaveOBJ() { EnableList = false; List = new PosOBJ(2, 80); - Lyric = new PosOBJ(2, 40); + Lyric = new PosOBJ(2, 55); Info = new PosOBJ(2, 2); } diff --git a/src/main/java/Color_yr/AllMusic/MusicPlay/SendInfo/SendInfo.java b/src/main/java/Color_yr/AllMusic/MusicPlay/SendInfo/SendInfo.java index c241144f..2ba99efa 100644 --- a/src/main/java/Color_yr/AllMusic/MusicPlay/SendInfo/SendInfo.java +++ b/src/main/java/Color_yr/AllMusic/MusicPlay/SendInfo/SendInfo.java @@ -155,19 +155,21 @@ public class SendInfo { } public static void SendSave(String Name) { - try { - Thread.sleep(3000); - SaveOBJ obj = AllMusic.getConfig().getInfoSave(Name); - if (obj == null) { - obj = new SaveOBJ(); - AllMusic.getConfig().setInfoSave(obj, Name); - AllMusic.save(); + AllMusic.Side.RunTask(()-> { + try { + Thread.sleep(2000); + SaveOBJ obj = AllMusic.getConfig().getInfoSave(Name); + if (obj == null) { + obj = new SaveOBJ(); + AllMusic.getConfig().setInfoSave(obj, Name); + AllMusic.save(); + } + String data = new Gson().toJson(obj); + AllMusic.Side.Send(data, Name, null); + } catch (Exception e1) { + AllMusic.log.warning("§d[AllMusic]§c数据发送发生错误"); + e1.printStackTrace(); } - String data = new Gson().toJson(obj); - AllMusic.Side.Send(data, Name, null); - } catch (Exception e1) { - AllMusic.log.warning("§d[AllMusic]§c数据发送发生错误"); - e1.printStackTrace(); - } + }); } } diff --git a/src/main/java/Color_yr/AllMusic/Side/SideBC/SideBC.java b/src/main/java/Color_yr/AllMusic/Side/SideBC/SideBC.java index 31dea8ce..1340cbfd 100644 --- a/src/main/java/Color_yr/AllMusic/Side/SideBC/SideBC.java +++ b/src/main/java/Color_yr/AllMusic/Side/SideBC/SideBC.java @@ -4,6 +4,7 @@ import Color_yr.AllMusic.API.ISide; import Color_yr.AllMusic.AllMusic; import Color_yr.AllMusic.AllMusicBC; import Color_yr.AllMusic.MusicPlay.SendInfo.SaveOBJ; +import com.google.gson.Gson; import io.netty.buffer.ByteBuf; import io.netty.buffer.Unpooled; import net.md_5.bungee.api.CommandSender; @@ -151,6 +152,27 @@ public class SideBC implements ISide { return Save; } + @Override + public void SendAll() { + Collection values = ProxyServer.getInstance().getPlayers(); + for (ProxiedPlayer players : values) { + String Name = players.getName(); + try { + SaveOBJ obj = AllMusic.getConfig().getInfoSave(Name); + if (obj == null) { + obj = new SaveOBJ(); + AllMusic.getConfig().setInfoSave(obj, Name); + AllMusic.save(); + } + String data = new Gson().toJson(obj); + Send(data, Name, null); + } catch (Exception e1) { + AllMusic.log.warning("§d[AllMusic]§c数据发送发生错误"); + e1.printStackTrace(); + } + } + } + @Override public void Clear(String player) { Send("[clear]", player, null); diff --git a/src/main/java/Color_yr/AllMusic/Side/SideBukkit/SideBukkit.java b/src/main/java/Color_yr/AllMusic/Side/SideBukkit/SideBukkit.java index 3333e029..68b4091e 100644 --- a/src/main/java/Color_yr/AllMusic/Side/SideBukkit/SideBukkit.java +++ b/src/main/java/Color_yr/AllMusic/Side/SideBukkit/SideBukkit.java @@ -4,6 +4,7 @@ import Color_yr.AllMusic.API.ISide; import Color_yr.AllMusic.AllMusic; import Color_yr.AllMusic.AllMusicBukkit; import Color_yr.AllMusic.MusicPlay.SendInfo.SaveOBJ; +import com.google.gson.Gson; import io.netty.buffer.ByteBuf; import io.netty.buffer.Unpooled; import net.md_5.bungee.api.chat.ClickEvent; @@ -124,6 +125,26 @@ public class SideBukkit implements ISide { return Save; } + @Override + public void SendAll() { + for (Player player : Bukkit.getOnlinePlayers()) { + String Name = player.getName(); + try { + SaveOBJ obj = AllMusic.getConfig().getInfoSave(Name); + if (obj == null) { + obj = new SaveOBJ(); + AllMusic.getConfig().setInfoSave(obj, Name); + AllMusic.save(); + } + String data = new Gson().toJson(obj); + Send(data, Name, null); + } catch (Exception e1) { + AllMusic.log.warning("§d[AllMusic]§c数据发送发生错误"); + e1.printStackTrace(); + } + } + } + @Override public void Clear(String player) { Send("[clear]", player, null);