diff --git a/EpinelPS/LobbyServer/Stage/FastClear.cs b/EpinelPS/LobbyServer/Stage/FastClear.cs new file mode 100644 index 0000000..46e6c42 --- /dev/null +++ b/EpinelPS/LobbyServer/Stage/FastClear.cs @@ -0,0 +1,31 @@ +using EpinelPS.Utils; + +namespace EpinelPS.LobbyServer.Stage +{ + [PacketPath("/stage/fastclearstage")] + public class FastClear : LobbyMsgHandler + { + protected override async Task HandleAsync() + { + var req = await ReadData(); + + var user = GetUser(); + + Console.WriteLine($"Stage " + req.CampaignStageId + " completed using quick battle"); + + var rsp = ClearStage.CompleteStage(user, req.CampaignStageId); + + var response = new ResFastClearCampaignStage() + { + OutpostBattle = rsp.OutpostBattle, + OutpostBattleLevelReward = rsp.OutpostBattleLevelReward, + OutpostTimeRewardBuff = rsp.OutpostTimeRewardBuff, + StageClearReward = rsp.StageClearReward, + UserLevelUpReward = rsp.UserLevelUpReward + }; + + await WriteDataAsync(response); + } + } + +}