diff --git a/EpinelPS/Database/JsonDb.cs b/EpinelPS/Database/JsonDb.cs index 4a5cafb..ccfa263 100644 --- a/EpinelPS/Database/JsonDb.cs +++ b/EpinelPS/Database/JsonDb.cs @@ -248,6 +248,8 @@ namespace EpinelPS.Database public List Badges = []; + public List BondInfo = []; + // Event data public Dictionary EventInfo = new(); public MogMinigameInfo MogInfo = new(); diff --git a/EpinelPS/LobbyServer/Character/GetCharacterAttractiveList.cs b/EpinelPS/LobbyServer/Character/GetCharacterAttractiveList.cs index 3ff8c4a..25a963a 100644 --- a/EpinelPS/LobbyServer/Character/GetCharacterAttractiveList.cs +++ b/EpinelPS/LobbyServer/Character/GetCharacterAttractiveList.cs @@ -8,9 +8,17 @@ namespace EpinelPS.LobbyServer.Character protected override async Task HandleAsync() { var req = await ReadData(); + var user = GetUser(); + + ResGetAttractiveList response = new(); + response.CounselAvailableCount = 3; // TODO + + foreach(var item in user.BondInfo) + { + response.Attractives.Add(item); + item.CanCounselToday = true; + } - var response = new ResGetAttractiveList(); - response.CounselAvailableCount = 0; // TODO // TODO: Validate response from real server and pull info from user info await WriteDataAsync(response); diff --git a/EpinelPS/LobbyServer/Gacha/ExecGacha.cs b/EpinelPS/LobbyServer/Gacha/ExecGacha.cs index 7a290ba..e140c29 100644 --- a/EpinelPS/LobbyServer/Gacha/ExecGacha.cs +++ b/EpinelPS/LobbyServer/Gacha/ExecGacha.cs @@ -199,13 +199,14 @@ namespace EpinelPS.LobbyServer.Gacha // Add "New Character" Badge user.AddBadge(BadgeContents.BadgeContentsNikkeNew, characterData.name_code.ToString()); + user.BondInfo.Add(new() { NameCode = characterData.name_code, Level = 1 }); } response.Gacha.Add(gacha); } - response.Reward.Currency.Add(new NetCurrencyData(){ Type = (int)CurrencyType.SilverMileageTicket, Value = numberOfPulls}); - response.Reward.Currency.Add(new NetCurrencyData(){ Type = (int)CurrencyType.CharacterExp, Value = totalBodyLabels}); + response.Reward.Currency.Add(new NetCurrencyData() { Type = (int)CurrencyType.SilverMileageTicket, Value = numberOfPulls }); + response.Reward.Currency.Add(new NetCurrencyData() { Type = (int)CurrencyType.CharacterExp, Value = totalBodyLabels }); user.AddCurrency(CurrencyType.SilverMileageTicket, numberOfPulls); user.GachaTutorialPlayCount++; diff --git a/EpinelPS/LobbyServer/Stage/ClearStage.cs b/EpinelPS/LobbyServer/Stage/ClearStage.cs index d13b52a..ae10d8b 100644 --- a/EpinelPS/LobbyServer/Stage/ClearStage.cs +++ b/EpinelPS/LobbyServer/Stage/ClearStage.cs @@ -171,6 +171,9 @@ namespace EpinelPS.LobbyServer.Stage user.Characters.Add(new Database.Character() { Csn = 47263458, Tid = 230101 }); user.Characters.Add(new Database.Character() { Csn = 47263459, Tid = 301201 }); + user.BondInfo.Add(new() { NameCode = 3001, Level = 1 }); + user.BondInfo.Add(new() { NameCode = 3005, Level = 1 }); + NetTeamData team1Sub = new() { TeamNumber = 1