Files
SVSimServer/SVSim.EmulatedEntrypoint/Services/IArenaTwoPickService.cs
gamer147 ba49852c42 feat(svc): IArenaTwoPickService + response DTOs + GetTopAsync
6 response DTOs, IArenaTwoPickService interface + ArenaTwoPickException,
ArenaTwoPickService skeleton with GetTopAsync implemented and stubs for
Tasks 13-15. 3 NUnit tests for GetTopAsync all pass. DI: AddScoped.
2026-05-31 10:51:41 -04:00

21 lines
825 B
C#

using SVSim.EmulatedEntrypoint.Models.Dtos.Responses.ArenaTwoPick;
namespace SVSim.EmulatedEntrypoint.Services;
public interface IArenaTwoPickService
{
Task<TopResponseDto> GetTopAsync(long viewerId);
Task<EntryResponseDto> EntryAsync(long viewerId, int consumeItemType);
Task<ClassChooseResponseDto> ChooseClassAsync(long viewerId, int classId);
Task<CardChooseResponseDto> ChooseCardAsync(long viewerId, long selectedId);
Task<FinishResponseDto> RetireAsync(long viewerId);
Task<FinishResponseDto> FinishAsync(long viewerId);
Task<BattleFinishResultDto> RecordBattleResultAsync(long viewerId, bool isWin);
}
public class ArenaTwoPickException : Exception
{
public string ErrorCode { get; }
public ArenaTwoPickException(string errorCode) : base(errorCode) { ErrorCode = errorCode; }
}