From d6ab87e2c443cdec15f4d007b3f854d1d98bf664 Mon Sep 17 00:00:00 2001 From: hg <4683435+hgtw@users.noreply.github.com> Date: Thu, 16 Jul 2020 21:13:07 -0400 Subject: [PATCH] Avoid world message on offline member invite Expedition member status can be used to choose the message --- zone/expedition.cpp | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/zone/expedition.cpp b/zone/expedition.cpp index 8ebc5b4e6..264740af2 100644 --- a/zone/expedition.cpp +++ b/zone/expedition.cpp @@ -952,11 +952,18 @@ void Expedition::DzAddPlayer( } else { - // we can avoid checking online status in world if we trust member status accuracy auto member_data = GetMemberData(add_char_name); - if (member_data.char_id != 0 && member_data.status != ExpeditionMemberStatus::Offline) + if (member_data.char_id != 0) { - requester->MessageString(Chat::Red, DZADD_ALREADY_PART, add_char_name.c_str()); + // live prioritizes offline message before already a member message + if (member_data.status == ExpeditionMemberStatus::Offline) + { + requester->MessageString(Chat::Red, DZADD_NOT_ONLINE, add_char_name.c_str()); + } + else + { + requester->MessageString(Chat::Red, DZADD_ALREADY_PART, add_char_name.c_str()); + } invite_failed = true; } }