9
0
mirror of https://github.com/Xiao-MoMi/craft-engine.git synced 2026-01-04 15:41:38 +00:00

修改队伍包发送方式

This commit is contained in:
XiaoMoMi
2025-12-22 19:19:29 +08:00
parent e3d22a3d21
commit e8faded5a2
3 changed files with 13 additions and 8 deletions

View File

@@ -530,15 +530,19 @@ public class BukkitNetworkManager implements NetworkManager, Listener {
player.getScheduler().runAtFixedRate(plugin.javaPlugin(), (t) -> user.tick(),
() -> {}, 1, 1);
}
// 发送修复图腾音效
user.sendPacket(TotemAnimationCommand.FIX_TOTEM_SOUND_PACKET, false);
user.sendPacket(BukkitTeamManager.instance().addTeamsPacket(), false);
// 发送颜色队伍
for (Object packet : BukkitTeamManager.instance().addTeamsPackets()) {
user.sendPacket(packet, false);
}
Channel channel = user.nettyChannel();
if (this.hasAntiPopup && Config.disableChatReport() && channel != null) {
if (Locale.getDefault() == Locale.SIMPLIFIED_CHINESE) {
plugin.logger().warn("CraftEngine 的禁用聊天举报功能和 AntiPopup 冲突,可能会导致 Emoji 解析异常,请卸载 AntiPopup 或关闭禁用聊天举报功能");
} else {
plugin.logger().warn("The Disable Chat Report feature conflicts with AntiPopup, potentially causing abnormal emoji parsing.");
plugin.logger().warn("Please uninstall AntiPopup or disable the Disable Chat Report function.");
plugin.logger().warn("Please uninstall AntiPopup or disable the 'disable-chat-report' option.");
}
}
}

View File

@@ -14,7 +14,7 @@ public class BukkitTeamManager implements TeamManager {
private static BukkitTeamManager instance;
private final BukkitCraftEngine plugin;
private final Map<LegacyChatFormatter, Object> teamByColor = new EnumMap<>(LegacyChatFormatter.class);
private Object addTeamsPacket;
private List<Object> addTeamsPackets;
public BukkitTeamManager(BukkitCraftEngine plugin) {
this.plugin = plugin;
@@ -31,8 +31,8 @@ public class BukkitTeamManager implements TeamManager {
}
@Override
public Object addTeamsPacket() {
return addTeamsPacket;
public List<Object> addTeamsPackets() {
return this.addTeamsPackets;
}
@Override
@@ -48,6 +48,6 @@ public class BukkitTeamManager implements TeamManager {
this.teamByColor.put(color, team);
packets.add(FastNMS.INSTANCE.method$ClientboundSetPlayerTeamPacket$createAddOrModifyPacket(team, true));
}
this.addTeamsPacket = FastNMS.INSTANCE.constructor$ClientboundBundlePacket(packets);
this.addTeamsPackets = packets;
}
}