diff --git a/server/src/events/interaction.rs b/server/src/events/interaction.rs index 4a3e6b2f0b..66c9d05cf1 100644 --- a/server/src/events/interaction.rs +++ b/server/src/events/interaction.rs @@ -87,10 +87,12 @@ pub fn handle_npc_interaction(server: &mut Server, interactor: EcsEntity, npc_en .write_storage::() .get_mut(npc_entity) { - if let Some(interactor_uid) = state.ecs().uid_from_entity(interactor) { - agent - .inbox - .push_back(AgentEvent::Talk(interactor_uid, Subject::Regular)); + if agent.target.is_none() { + if let Some(interactor_uid) = state.ecs().uid_from_entity(interactor) { + agent + .inbox + .push_back(AgentEvent::Talk(interactor_uid, Subject::Regular)); + } } } }