From f3b7ba0e52684cab9130dce15b7777f54bc41c51 Mon Sep 17 00:00:00 2001 From: fullwall Date: Tue, 20 Jun 2023 23:29:36 +0800 Subject: [PATCH] ClickRedirectTrait is respected for playerfilter --- main/src/main/java/net/citizensnpcs/EventListen.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/main/src/main/java/net/citizensnpcs/EventListen.java b/main/src/main/java/net/citizensnpcs/EventListen.java index ccfcfad70..52a23ea76 100644 --- a/main/src/main/java/net/citizensnpcs/EventListen.java +++ b/main/src/main/java/net/citizensnpcs/EventListen.java @@ -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())); } }