refactor: 优化代码

This commit is contained in:
2022-12-08 12:46:58 +08:00
parent 84696bc408
commit 9d98b50560
6 changed files with 22 additions and 9 deletions

View File

@@ -4,7 +4,7 @@ version: ${version}
api-version: 1.13
author: MiniDay
website: https://github.com/MiniDay/hamster-ball
website: https://gitee.com/MiniDay/hamster-ball
description: 仓鼠球:一个基于 Netty 的 Minecraft 服务端通用消息中间件原HamsterService
load: STARTUP

View File

@@ -145,7 +145,7 @@ public final class BallBungeeCordListener extends BallListener implements Listen
new BallPlayerLoginEvent(new BallPlayerInfo(
event.getConnection().getUniqueId(),
event.getConnection().getName(),
"",
"connecting",
BallAPI.getInstance().getLocalServerId(),
true
))
@@ -161,17 +161,17 @@ public final class BallBungeeCordListener extends BallListener implements Listen
BallPlayerPostLoginEvent.ACTION,
new BallPlayerPostLoginEvent(playerInfo)
);
BallBungeeCordUtils.uploadPlayerInfo(playerInfo);
}
@EventHandler(priority = EventPriority.HIGH)
public void onServerConnect(ServerConnectEvent event) {
ProxiedPlayer player = event.getPlayer();
BallPlayerInfo playerInfo = BallBungeeCordUtils.getPlayerInfo(player, true);
playerInfo.setGameServer(event.getTarget().getName());
BallAPI.getInstance().sendBallMessage(
BallAPI.BALL_CHANNEL,
BallPlayerConnectServerEvent.ACTION,
new BallPlayerConnectServerEvent(playerInfo, playerInfo.getGameServer(), event.getTarget().getName())
BallPlayerPreConnectServerEvent.ACTION,
new BallPlayerPreConnectServerEvent(playerInfo, playerInfo.getGameServer(), event.getTarget().getName())
);
BallBungeeCordUtils.uploadPlayerInfo(playerInfo);
}
@@ -180,6 +180,7 @@ public final class BallBungeeCordListener extends BallListener implements Listen
public void onServerConnected(ServerConnectedEvent event) {
ProxiedPlayer player = event.getPlayer();
BallPlayerInfo playerInfo = BallBungeeCordUtils.getPlayerInfo(player, true);
playerInfo.setGameServer(event.getServer().getInfo().getName());
BallAPI.getInstance().sendBallMessage(
BallAPI.BALL_CHANNEL,
BallPlayerPostConnectServerEvent.ACTION,

View File

@@ -25,7 +25,7 @@ public final class BallBungeeCordUtils {
return new BallPlayerInfo(
player.getUniqueId(),
player.getName(),
server == null ? "" : server.getInfo().getName(),
server == null ? "connecting" : server.getInfo().getName(),
BallAPI.getInstance().getLocalServerId(),
online
);

View File

@@ -8,6 +8,12 @@ import org.jetbrains.annotations.Nullable;
/**
* 玩家进入子服
* <p>
* 仅在使用 velocity 代理端时才会触发这个事件
*
* @see BallPlayerPreConnectServerEvent 玩家准备进入子服
* @see BallPlayerConnectServerEvent 玩家进入子服
* @see BallPlayerPostConnectServerEvent 玩家已经进入子服
*/
@Data
@AllArgsConstructor

View File

@@ -6,7 +6,11 @@ import lombok.Data;
import org.jetbrains.annotations.NotNull;
/**
* 玩家已进入子服
* 玩家已进入子服
*
* @see BallPlayerPreConnectServerEvent 玩家准备进入子服
* @see BallPlayerConnectServerEvent 玩家进入子服
* @see BallPlayerPostConnectServerEvent 玩家已经进入子服
*/
@Data
@AllArgsConstructor

View File

@@ -8,8 +8,10 @@ import org.jetbrains.annotations.Nullable;
/**
* 玩家准备进入子服
* <p>
* 仅在使用 velocity 代理端时才会触发这个事件
*
* @see BallPlayerPreConnectServerEvent 玩家准备进入子服
* @see BallPlayerConnectServerEvent 玩家进入子服
* @see BallPlayerPostConnectServerEvent 玩家已经进入子服
*/
@Data
@AllArgsConstructor