mirror of
https://github.com/EpinelPS/EpinelPS.git
synced 2025-12-14 16:04:36 +01:00
Fix profile view, fix shop not unlocking
This commit is contained in:
@@ -15,6 +15,7 @@ namespace nksrv.LobbyServer.Msgs.Shop.InApp
|
||||
var req = await ReadData<ReqGetSubscription>();
|
||||
|
||||
var response = new ResGetSubscription();
|
||||
|
||||
// TODO
|
||||
WriteData(response);
|
||||
}
|
||||
|
||||
@@ -15,6 +15,7 @@ namespace nksrv.LobbyServer.Msgs.Shop.InApp
|
||||
var x = await ReadData<ReqGetInAppShopData>();
|
||||
|
||||
var response = new ResGetInAppShopData();
|
||||
|
||||
// TODO
|
||||
|
||||
WriteData(response);
|
||||
|
||||
@@ -24,6 +24,7 @@ namespace nksrv.LobbyServer.Msgs.Team
|
||||
foreach (var item in user.UserTeams)
|
||||
{
|
||||
response.TypeTeams.Add(item.Value);
|
||||
|
||||
}
|
||||
}
|
||||
WriteData(response);
|
||||
|
||||
@@ -10,22 +10,17 @@ namespace nksrv.LobbyServer.Msgs.User
|
||||
var req = await ReadData<ReqGetContentsOpenData>();
|
||||
var user = GetUser();
|
||||
|
||||
// this request returns a list of "special" stages that mark when something is unlocked, ex: the shop or interception
|
||||
|
||||
List<int> specialStages = [6003003, 6002008, 6002016, 6005003, 6003021, 6011018, 6007021, 6004018, 6005013, 6003009, 6003012, 6009017, 6016039, 6001004, 6000003, 6000001, 6002001, 6004023, 6005026, 6020050, 6006004, 6006023];
|
||||
|
||||
var response = new ResGetContentsOpenData();
|
||||
bool includeFirst = true;
|
||||
foreach (var field in user.FieldInfo.Values)
|
||||
{
|
||||
// only include first and last clears
|
||||
int i = 0;
|
||||
foreach (var stage in field.CompletedStages)
|
||||
{
|
||||
if (i == 0 && includeFirst)
|
||||
{
|
||||
if (specialStages.Contains(stage.StageId))
|
||||
response.ClearStageList.Add(stage.StageId);
|
||||
includeFirst = false;
|
||||
}
|
||||
else if (i == field.CompletedStages.Count - 1)
|
||||
response.ClearStageList.Add(stage.StageId);
|
||||
i++;
|
||||
}
|
||||
}
|
||||
response.MaxGachaCount = 10;
|
||||
|
||||
@@ -21,13 +21,18 @@ namespace nksrv.LobbyServer.Msgs.User
|
||||
if (user.ID == (ulong)req.TargetUsn)
|
||||
{
|
||||
response.Data.User = LobbyHandler.CreateWholeUserDataFromDbUser(user);
|
||||
response.Data.LastActionAt = DateTimeOffset.UtcNow.ToUnixTimeSeconds();
|
||||
response.Data.LastActionAt = DateTimeOffset.UtcNow.Ticks;
|
||||
response.Data.CharacterCount = new() { Count = user.Characters.Count };
|
||||
response.Data.InfraCoreLv = user.InfraCoreLvl;
|
||||
response.Data.LastCampaignNormalStageId = user.LastNormalStageCleared;
|
||||
response.Data.LastCampaignHardStageId = user.LastHardStageCleared;
|
||||
response.Data.OutpostOpenState = user.MainQuestData.ContainsKey(25);
|
||||
}
|
||||
else
|
||||
{
|
||||
Logger.Warn("Unknown User ID: " + req.TargetUsn);
|
||||
}
|
||||
|
||||
|
||||
WriteData(response);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user