ClickRedirectTrait is respected for playerfilter

This commit is contained in:
fullwall 2023-06-20 23:29:36 +08:00
parent 6d5f881b91
commit f3b7ba0e52
1 changed files with 6 additions and 2 deletions

View File

@ -430,8 +430,12 @@ public class EventListen implements Listener {
@EventHandler(ignoreCancelled = true)
public void onNPCSeenByPlayer(NPCSeenByPlayerEvent event) {
if (event.getNPC().hasTrait(PlayerFilter.class)) {
event.setCancelled(event.getNPC().getOrAddTrait(PlayerFilter.class).onSeenByPlayer(event.getPlayer()));
NPC npc = event.getNPC();
if (npc.hasTrait(ClickRedirectTrait.class)) {
npc = npc.getOrAddTrait(ClickRedirectTrait.class).getRedirectNPC();
}
if (npc.hasTrait(PlayerFilter.class)) {
event.setCancelled(npc.getOrAddTrait(PlayerFilter.class).onSeenByPlayer(event.getPlayer()));
}
}