diff --git a/EpinelPS/LobbyServer/Pass/GetActivePassData.cs b/EpinelPS/LobbyServer/Pass/GetActivePassData.cs index 657ac98..792fb92 100644 --- a/EpinelPS/LobbyServer/Pass/GetActivePassData.cs +++ b/EpinelPS/LobbyServer/Pass/GetActivePassData.cs @@ -10,11 +10,17 @@ namespace EpinelPS.LobbyServer.Pass var req = await ReadData(); var response = new ResGetActivePassData(); - response.PassExist = false; // if true game wont load but wont load pass either this is just broken - response.Pass = new NetPassInfo { PassId = 1000020, PassPoint = 11016, PassSkipCount = 0, PremiumActive = true }; - response.Pass.PassRankList.Add(new NetPassRankData { PassRank = 3, IsNormalRewarded = false, IsPremiumRewarded = true }); - var missionIds = new[] { 2001701, 2001702, 2001703, 2001704, 2001705, 2001706 }; - foreach (var missionId in missionIds) response.Pass.PassMissionList.Add(new NetPassMissionData { PassMissionId = missionId, IsComplete = false }); + response.PassExist = true; + response.Pass = new NetPassInfo { PassId = 1027, PassPoint = 490, PassSkipCount = 15, PremiumActive = true }; + + // Adding PassRankList using a loop + for (int rank = 1; rank <= 15; rank++) + { + response.Pass.PassRankList.Add(new NetPassRankData { PassRank = rank, IsNormalRewarded = true, IsPremiumRewarded = true }); + } + + var missionIds = new[] { 3001, 3002, 3003, 3004, 3005, 3006,3007 }; + foreach (var missionId in missionIds) response.Pass.PassMissionList.Add(new NetPassMissionData { PassMissionId = missionId, IsComplete = true }); await WriteDataAsync(response); } diff --git a/EpinelPS/LobbyServer/Pass/buyrank.cs b/EpinelPS/LobbyServer/Pass/buyrank.cs new file mode 100644 index 0000000..8cbe2d6 --- /dev/null +++ b/EpinelPS/LobbyServer/Pass/buyrank.cs @@ -0,0 +1,18 @@ +using EpinelPS.Utils; + +namespace EpinelPS.LobbyServer.Pass +{ + [PacketPath("/pass/buyrank")] + public class BuyPassRank : LobbyMsgHandler + { + protected override async Task HandleAsync() + { + var req = await ReadData(); //fields "PassId", "TargetPassRank" + + var response = new ResBuyPassRank(); // fields "PassRank", "PassPoint", "Currencies" + + + await WriteDataAsync(response); + } + } +} diff --git a/EpinelPS/LobbyServer/Pass/obtainreward.cs b/EpinelPS/LobbyServer/Pass/obtainreward.cs new file mode 100644 index 0000000..882832d --- /dev/null +++ b/EpinelPS/LobbyServer/Pass/obtainreward.cs @@ -0,0 +1,18 @@ +using EpinelPS.Utils; + +namespace EpinelPS.LobbyServer.Pass +{ + [PacketPath("/pass/obtainreward")] + public class ObtainPassReward : LobbyMsgHandler + { + protected override async Task HandleAsync() + { + var req = await ReadData(); //fields "PassId", "PassRank" + + var response = new ResObtainPassReward(); // field Reward + + + await WriteDataAsync(response); + } + } +}