diff --git a/EpinelPS/LobbyServer/Arena/ChampionBadgeData.cs b/EpinelPS/LobbyServer/Arena/ChampionBadgeData.cs new file mode 100644 index 0000000..9b6b69c --- /dev/null +++ b/EpinelPS/LobbyServer/Arena/ChampionBadgeData.cs @@ -0,0 +1,23 @@ +using EpinelPS.Utils; +using Google.Protobuf.WellKnownTypes; + +namespace EpinelPS.LobbyServer.Arena +{ + [PacketPath("/arena/champion/getbadgedata")] + public class ChampionBadgeData : LobbyMsgHandler + { + protected override async Task HandleAsync() + { + var req = await ReadData(); + var response = new ResGetChampionArenaDataByBadge(); + + // TODO + response.Schedule = new NetChampionArenaSchedule(); + response.NextSchedule = new NetChampionArenaSchedule(); + response.ChampionArenaContentsState = ChampionArenaContentsState.ChampionArenaContentsStateClosed; + response.CurrentOrLastSeasonStartAt = Timestamp.FromDateTime(DateTime.UtcNow.AddDays(5)); + + await WriteDataAsync(response); + } + } +} diff --git a/EpinelPS/LobbyServer/Arena/GetSpecialArena.cs b/EpinelPS/LobbyServer/Arena/GetSpecialArena.cs new file mode 100644 index 0000000..9b530a6 --- /dev/null +++ b/EpinelPS/LobbyServer/Arena/GetSpecialArena.cs @@ -0,0 +1,21 @@ +using EpinelPS.Utils; +using Google.Protobuf.WellKnownTypes; + +namespace EpinelPS.LobbyServer.Arena +{ + [PacketPath("/arena/special/get")] + public class GetSpecialArena : LobbyMsgHandler + { + protected override async Task HandleAsync() + { + var req = await ReadData(); + var user = GetUser(); + + var response = new ResGetSpecialArena(); + response.BanInfo = new NetArenaBanInfo() { Description = "Not Implemented", StartAt = Timestamp.FromDateTimeOffset(DateTimeOffset.UtcNow), EndAt = Timestamp.FromDateTimeOffset(DateTimeOffset.UtcNow.AddYears(10)) }; + response.User = new NetArenaData() {User = LobbyHandler.CreateWholeUserDataFromDbUser(user) }; + + await WriteDataAsync(response); + } + } +}