feat: 适配 HamsterCore 更新
This commit is contained in:
@@ -10,7 +10,6 @@ import cn.hamster3.mc.plugin.ball.common.listener.BallListener;
|
||||
import cn.hamster3.mc.plugin.core.bungee.HamsterBallPlugin;
|
||||
import cn.hamster3.mc.plugin.core.bungee.util.BallBungeeCordUtils;
|
||||
import cn.hamster3.mc.plugin.core.common.api.CoreAPI;
|
||||
import cn.hamster3.mc.plugin.core.common.util.CoreUtils;
|
||||
import cn.hamster3.mc.plugin.core.lib.net.kyori.adventure.audience.Audience;
|
||||
import cn.hamster3.mc.plugin.core.lib.net.kyori.adventure.text.serializer.bungeecord.BungeeComponentSerializer;
|
||||
import net.md_5.bungee.api.ProxyServer;
|
||||
@@ -35,7 +34,7 @@ public final class BallBungeeCordListener implements Listener, BallListener {
|
||||
public void onMessageReceived(@NotNull BallMessageInfo info) {
|
||||
switch (info.getAction()) {
|
||||
case DispatchConsoleCommandEvent.ACTION: {
|
||||
DispatchConsoleCommandEvent event = CoreUtils.GSON.fromJson(info.getContent(), DispatchConsoleCommandEvent.class);
|
||||
DispatchConsoleCommandEvent event = CoreAPI.getInstance().getGson().fromJson(info.getContent(), DispatchConsoleCommandEvent.class);
|
||||
if (event.getType() != null && event.getType() != BallServerType.PROXY) {
|
||||
return;
|
||||
}
|
||||
@@ -47,7 +46,7 @@ public final class BallBungeeCordListener implements Listener, BallListener {
|
||||
break;
|
||||
}
|
||||
case DispatchPlayerCommandEvent.ACTION: {
|
||||
DispatchPlayerCommandEvent event = CoreUtils.GSON.fromJson(info.getContent(), DispatchPlayerCommandEvent.class);
|
||||
DispatchPlayerCommandEvent event = CoreAPI.getInstance().getGson().fromJson(info.getContent(), DispatchPlayerCommandEvent.class);
|
||||
if (event.getType() != null && event.getType() != BallServerType.GAME) {
|
||||
return;
|
||||
}
|
||||
@@ -66,14 +65,14 @@ public final class BallBungeeCordListener implements Listener, BallListener {
|
||||
break;
|
||||
}
|
||||
case KickPlayerEvent.ACTION: {
|
||||
KickPlayerEvent event = CoreUtils.GSON.fromJson(info.getContent(), KickPlayerEvent.class);
|
||||
KickPlayerEvent event = CoreAPI.getInstance().getGson().fromJson(info.getContent(), KickPlayerEvent.class);
|
||||
ProxiedPlayer player = ProxyServer.getInstance().getPlayer(event.getUuid());
|
||||
BaseComponent[] components = BungeeComponentSerializer.get().serialize(event.getReason());
|
||||
player.disconnect(components);
|
||||
break;
|
||||
}
|
||||
case SendMessageToPlayerEvent.ACTION: {
|
||||
SendMessageToPlayerEvent event = CoreUtils.GSON.fromJson(info.getContent(), SendMessageToPlayerEvent.class);
|
||||
SendMessageToPlayerEvent event = CoreAPI.getInstance().getGson().fromJson(info.getContent(), SendMessageToPlayerEvent.class);
|
||||
for (UUID receiver : event.getReceivers()) {
|
||||
Audience audience = CoreAPI.getInstance().getAudienceProvider().player(receiver);
|
||||
event.getMessage().show(audience);
|
||||
@@ -81,7 +80,7 @@ public final class BallBungeeCordListener implements Listener, BallListener {
|
||||
break;
|
||||
}
|
||||
case SendPlayerToLocationEvent.ACTION: {
|
||||
SendPlayerToLocationEvent event = CoreUtils.GSON.fromJson(info.getContent(), SendPlayerToLocationEvent.class);
|
||||
SendPlayerToLocationEvent event = CoreAPI.getInstance().getGson().fromJson(info.getContent(), SendPlayerToLocationEvent.class);
|
||||
String serverID = event.getLocation().getServerID();
|
||||
ServerInfo serverInfo = ProxyServer.getInstance().getServerInfo(serverID);
|
||||
if (serverInfo == null) {
|
||||
@@ -101,7 +100,7 @@ public final class BallBungeeCordListener implements Listener, BallListener {
|
||||
break;
|
||||
}
|
||||
case SendPlayerToPlayerEvent.ACTION: {
|
||||
SendPlayerToPlayerEvent event = CoreUtils.GSON.fromJson(info.getContent(), SendPlayerToPlayerEvent.class);
|
||||
SendPlayerToPlayerEvent event = CoreAPI.getInstance().getGson().fromJson(info.getContent(), SendPlayerToPlayerEvent.class);
|
||||
UUID toPlayerUUID = event.getToPlayerUUID();
|
||||
ProxiedPlayer toPlayer = ProxyServer.getInstance().getPlayer(toPlayerUUID);
|
||||
if (toPlayer == null) {
|
||||
|
@@ -3,7 +3,7 @@ package cn.hamster3.mc.plugin.core.bungee.util;
|
||||
import cn.hamster3.mc.plugin.ball.common.api.BallAPI;
|
||||
import cn.hamster3.mc.plugin.ball.common.entity.BallPlayerInfo;
|
||||
import cn.hamster3.mc.plugin.ball.common.event.player.BallPlayerInfoUpdateEvent;
|
||||
import cn.hamster3.mc.plugin.core.common.util.CoreUtils;
|
||||
import cn.hamster3.mc.plugin.core.common.api.CoreAPI;
|
||||
import cn.hamster3.mc.plugin.core.lib.com.zaxxer.hikari.HikariConfig;
|
||||
import cn.hamster3.mc.plugin.core.lib.com.zaxxer.hikari.HikariDataSource;
|
||||
import net.md_5.bungee.api.connection.ProxiedPlayer;
|
||||
@@ -34,7 +34,7 @@ public final class BallBungeeCordUtils {
|
||||
}
|
||||
|
||||
public static void uploadPlayerInfo(@NotNull BallPlayerInfo playerInfo) {
|
||||
CoreUtils.WORKER_EXECUTOR.execute(() -> {
|
||||
CoreAPI.getInstance().getExecutorService().execute(() -> {
|
||||
try (Connection connection = BallAPI.getInstance().getDatasource().getConnection()) {
|
||||
try (PreparedStatement statement = connection.prepareStatement(
|
||||
"REPLACE INTO `hamster_ball_player_info` VALUES(?, ?, ?, ?, ?);"
|
||||
|
Reference in New Issue
Block a user