【发布时间】:2021-02-06 00:24:23
【问题描述】:
所以目前我有这个代码:
@Override
public void onEnable(){
ProtocolManager manager = ProtocolLibrary.getProtocolManager();
manager.addPacketListener(
new PacketAdapter(this, ListenerPriority.HIGHEST,
PacketType.Play.Server.NAMED_SOUND_EFFECT) {
@Override
public void onPacketSending(PacketEvent event) {
// Item packets (id: 0x29)
if (event.getPacketType() ==
PacketType.Play.Server.NAMED_SOUND_EFFECT) {
if (packet.getSoundEffetcs().getValues().contains(Sound.BLOCK_PISTON_CONTRACT || packet.getSoundEffetcs().getValues().contains(Sound.BLOCK_PISTON_EXTEND))){
}
event.setCancelled(true);
}
}
});
}
@Override
public void onDisable() {
// Plugin shutdown logic
}
}
它不完整,一旦完成它应该取消所有
发送到涉及活塞声音的服务器/客户端的数据包。
代码if (packet.getSoundEffetcs().getValues().contains(Sound.BLOCK_PISTON_CONTRACT || packet.getSoundEffetcs().getValues().contains(Sound.BLOCK_PISTON_EXTEND)))
给我带来了麻烦,因为“packet.getSoundEffects()”告诉我它“无法将符号“packet”解析为错误。我必须将哪些导入添加到我的插件中才能正确识别“数据包”?
【问题讨论】: