Add ActionBar message type check back

This commit is contained in:
Aust1n46 2020-04-15 06:20:27 -04:00
parent 1f300aaf6d
commit 7134b606d8
2 changed files with 52 additions and 1 deletions

View File

@ -7,9 +7,12 @@ import net.md_5.bungee.api.chat.ClickEvent;
import net.md_5.bungee.api.chat.ComponentBuilder;
import net.md_5.bungee.api.chat.HoverEvent;
import net.md_5.bungee.api.chat.TextComponent;
//import net.minecraft.server.v1_15_R1.IChatBaseComponent;
//import net.minecraft.server.v1_15_R1.PacketPlayOutChat;
import org.bukkit.ChatColor;
import org.bukkit.command.CommandSender;
//import org.bukkit.craftbukkit.v1_15_R1.entity.CraftPlayer;
import org.bukkit.entity.Player;
public class Venturechat extends MineverseCommand {
@ -35,6 +38,23 @@ public class Venturechat extends MineverseCommand {
message.setClickEvent(new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/rules 1"));
tcSpaces.addExtra(message);
player.spigot().sendMessage(tcSpaces);
//sendActionBar(player, "NMS message");
}
}
// public static void sendActionBar(Player player, String message) {
// message= message.replaceAll("%player%", player.getDisplayName());
// message = ChatColor.translateAlternateColorCodes('&', message);
// CraftPlayer p = (CraftPlayer) player;
// IChatBaseComponent cbc = IChatBaseComponent.ChatSerializer.a("{\"text\": \"" + message + "\"}");
// PacketPlayOutChat ppoc = new PacketPlayOutChat(cbc);
// try {
// MineverseChat.posField.set(ppoc, MineverseChat.chatMessageType.getEnumConstants()[2]);
// }
// catch (Exception e) {
// e.printStackTrace();
// }
// p.getHandle().playerConnection.sendPacket(ppoc);
// }
}

View File

@ -5,10 +5,12 @@ import mineverse.Aust1n46.chat.MineverseChat;
import mineverse.Aust1n46.chat.api.MineverseChatAPI;
import mineverse.Aust1n46.chat.api.MineverseChatPlayer;
import mineverse.Aust1n46.chat.utilities.Format;
import mineverse.Aust1n46.chat.versions.VersionHandler;
import com.comphenix.protocol.PacketType;
import com.comphenix.protocol.events.ListenerPriority;
import com.comphenix.protocol.events.PacketAdapter;
import com.comphenix.protocol.events.PacketContainer;
import com.comphenix.protocol.events.PacketEvent;
import com.comphenix.protocol.wrappers.WrappedChatComponent;
@ -25,14 +27,43 @@ public class PacketListener extends PacketAdapter {
if(event.isCancelled() || event.getPacketType() != PacketType.Play.Server.CHAT) {
return;
}
MineverseChatPlayer mcp = MineverseChatAPI.getMineverseChatPlayer(event.getPlayer());
if(mcp == null) {
return;
}
WrappedChatComponent chat = event.getPacket().getChatComponents().read(0);
PacketContainer packet = event.getPacket();
WrappedChatComponent chat = packet.getChatComponents().read(0);
if(chat == null) {
return;
}
if(MineverseChat.posField == null) {
return;
}
try {
if(VersionHandler.is1_7_2() || VersionHandler.is1_7_10() || VersionHandler.is1_7_9()) {
if(!(((boolean) MineverseChat.posField.get(packet.getHandle())))) {
return;
}
}
else if(VersionHandler.is1_8() || VersionHandler.is1_9() || VersionHandler.is1_10() || VersionHandler.is1_11()){
if(((Byte) MineverseChat.posField.get(packet.getHandle())).intValue() > 1) {
return;
}
}
else {
if(((Object) MineverseChat.posField.get(packet.getHandle())) == MineverseChat.chatMessageType.getEnumConstants()[2]) {
return;
}
}
}
catch(Exception e) {
e.printStackTrace();
}
String message = Format.toPlainText(chat.getHandle(), chat.getHandleType());
if(message == null) {
return;