mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2026-10-29 07:57:14 +00:00
feat(guilds): the Guild Master says it in a chat bubble over its head
DisplayChatBubble from the Guild Master with "You are already in a guild!", besides the system chat line. Check: use the Guild Master while in a guild: the bubble shows above it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -2,15 +2,22 @@
|
|||||||
|
|
||||||
#include "CharacterComponent.h"
|
#include "CharacterComponent.h"
|
||||||
#include "ChatPackets.h"
|
#include "ChatPackets.h"
|
||||||
|
#include "EffectsMessages.h"
|
||||||
#include "Entity.h"
|
#include "Entity.h"
|
||||||
#include "PlayerMessages.h"
|
#include "PlayerMessages.h"
|
||||||
|
|
||||||
void FvGuildCreate::OnUse(Entity* self, Entity* user) {
|
void FvGuildCreate::OnUse(Entity* self, Entity* user) {
|
||||||
// A player already in a guild is told so instead of getting the create box. The client itself says the same
|
// A player already in a guild is told so instead of getting the create box: the Guild Master says it in a chat
|
||||||
// (MSG_GUILD_ALREADY_IN_GUILD, system chat) only once the box is submitted (LWOGuildComponent::SendTMPGuildCreate).
|
// bubble over its head and in system chat. The client itself says the same (MSG_GUILD_ALREADY_IN_GUILD, system chat)
|
||||||
|
// only once the box is submitted (LWOGuildComponent::SendTMPGuildCreate).
|
||||||
const auto* characterComponent = user->GetComponent<CharacterComponent>();
|
const auto* characterComponent = user->GetComponent<CharacterComponent>();
|
||||||
if (characterComponent && characterComponent->GetGuildID() != LWOOBJID_EMPTY) {
|
if (characterComponent && characterComponent->GetGuildID() != LWOOBJID_EMPTY) {
|
||||||
ChatPackets::SendSystemMessage(user->GetSystemAddress(), u"You are already in a guild!");
|
constexpr auto text = u"You are already in a guild!";
|
||||||
|
GameMessages::DisplayChatBubble bubble;
|
||||||
|
bubble.target = self->GetObjectID();
|
||||||
|
bubble.wsText = text;
|
||||||
|
bubble.Send(user->GetSystemAddress());
|
||||||
|
ChatPackets::SendSystemMessage(user->GetSystemAddress(), text);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user