mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2026-10-02 10:53:44 +00:00
fix(minimap): venture vision shows again after logging in (issue 611)
Venture vision from an equipped item was sent while the character loaded, before the client's UI existed, so after a login the minimap stayed empty until the item was equipped again (a world transfer keeps the UI, so it worked there). The player's active venture vision effects are sent again once the player has loaded. Check: wear the Venture Vision helmet, log out and back in: the minimap shows the icons. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -960,6 +960,12 @@ void CharacterComponent::UpdateClientMinimap(bool showFaction, std::string ventu
|
||||
uiMessage.SendToClient(m_Parent ? m_Parent->GetSystemAddress() : UNASSIGNED_SYSTEM_ADDRESS);
|
||||
}
|
||||
|
||||
void CharacterComponent::ResendVentureVision() const {
|
||||
for (const auto& [ventureVisionType, count] : m_ActiveVentureVisionEffects) {
|
||||
if (count > 0) UpdateClientMinimap(true, ventureVisionType);
|
||||
}
|
||||
}
|
||||
|
||||
void CharacterComponent::AwardClaimCodes() {
|
||||
if (!m_Parent || !m_Parent->GetCharacter()) return;
|
||||
auto* user = m_Parent->GetCharacter()->GetParentUser();
|
||||
|
||||
@@ -315,6 +315,12 @@ public:
|
||||
*/
|
||||
void UpdateClientMinimap(bool showFaction, std::string ventureVisionType) const;
|
||||
|
||||
/**
|
||||
* Send the client every venture vision effect that is on. Effects from equipped items are added while the
|
||||
* character loads, before the client's UI exists, so they are sent again once the player has loaded.
|
||||
*/
|
||||
void ResendVentureVision() const;
|
||||
|
||||
void SetCurrentInteracting(LWOOBJID objectID) { m_CurrentInteracting = objectID; };
|
||||
|
||||
LWOOBJID GetCurrentInteracting() { return m_CurrentInteracting; };
|
||||
|
||||
Reference in New Issue
Block a user