server-master/srcs/_plugins/WingsEmu.Plugins.BasicImplementation/Compliments/ComplimentsMonthlyRefreshEventHandler.cs
2026-02-10 18:21:30 +01:00

28 lines
No EOL
917 B
C#

using System.Threading;
using System.Threading.Tasks;
using PhoenixLib.Events;
using WingsEmu.Game.Compliments;
using WingsEmu.Game.Networking;
namespace WingsEmu.Plugins.BasicImplementations.General;
public class ComplimentsMonthlyRefreshEventHandler : IAsyncEventProcessor<ComplimentsMonthlyRefreshEvent>
{
private readonly IComplimentsManager _complimentsManager;
public ComplimentsMonthlyRefreshEventHandler(IComplimentsManager complimentsManager) => _complimentsManager = complimentsManager;
public async Task HandleAsync(ComplimentsMonthlyRefreshEvent e, CancellationToken cancellation)
{
IClientSession session = e.Sender;
bool canRefresh = await _complimentsManager.CanRefresh(session.PlayerEntity.Id);
if (!canRefresh && !e.Force)
{
return;
}
session.PlayerEntity.Compliment = 0;
// TODO: Compliment rewards
}
}