server-master/srcs/_plugins/Plugin.FamilyImpl/Consumers/FamilyCreatedMessageConsumer.cs
2026-02-10 18:21:30 +01:00

29 lines
No EOL
1 KiB
C#

using System.Threading;
using System.Threading.Tasks;
using PhoenixLib.ServiceBus;
using Plugin.FamilyImpl.Messages;
using WingsEmu.Game._i18n;
using WingsEmu.Game.Extensions;
using WingsEmu.Game.Managers;
using WingsEmu.Packets.Enums.Chat;
namespace Plugin.FamilyImpl.Consumers
{
public class FamilyCreatedMessageConsumer : IMessageConsumer<FamilyCreatedMessage>
{
private readonly IGameLanguageService _gameLanguage;
private readonly ISessionManager _sessionManager;
public FamilyCreatedMessageConsumer(ISessionManager sessionManager, IGameLanguageService gameLanguage)
{
_sessionManager = sessionManager;
_gameLanguage = gameLanguage;
}
public async Task HandleAsync(FamilyCreatedMessage e, CancellationToken cancellation)
{
await _sessionManager.BroadcastAsync(async s =>
s.GenerateMsgPacket(_gameLanguage.GetLanguageFormat(GameDialogKey.FAMILY_SHOUTMESSAGE_FAMILY_CREATED, s.UserLanguage, e.FamilyName), MsgMessageType.Middle));
}
}
}