refactor(user-class): require owned skin list, read IsRandomLeaderSkin from data
This commit is contained in:
@@ -192,7 +192,9 @@ public class LoadController : SVSimController
|
||||
.Select(d => new UserDeck(d)).ToList()
|
||||
},
|
||||
UserCards = allCardsAsOwned.Select(card => new UserCard(card)).ToList(),
|
||||
UserClasses = viewer.Classes.Select(vc => new UserClass(vc)).ToList(),
|
||||
UserClasses = viewer.Classes.Select(vc => new UserClass(
|
||||
vc,
|
||||
viewer.LeaderSkins.Where(s => s.ClassId == vc.Class.Id).Select(s => s.Id).ToList())).ToList(),
|
||||
Sleeves = cosmetics.SleeveIds.Select(id => new SleeveIdentifier { SleeveId = id }).ToList(),
|
||||
UserEmblems = cosmetics.EmblemIds.Select(id => new EmblemIdentifier { EmblemId = id }).ToList(),
|
||||
UserDegrees = cosmetics.DegreeIds.Select(id => new DegreeIdentifier { DegreeId = id }).ToList(),
|
||||
|
||||
@@ -39,15 +39,16 @@ public class UserClass
|
||||
[Key("default_leader_skin_id")]
|
||||
public int DefaultLeaderSkinId { get; set; }
|
||||
|
||||
public UserClass(ViewerClassData viewerClass)
|
||||
public UserClass(ViewerClassData viewerClass, IReadOnlyCollection<int> ownedSkinIdsForClass)
|
||||
{
|
||||
this.ClassId = viewerClass.Class.Id;
|
||||
this.IsAvailable = 1;
|
||||
this.Level = viewerClass.Level;
|
||||
this.Exp = viewerClass.Exp;
|
||||
this.IsRandomLeaderSkin = 0;
|
||||
this.IsRandomLeaderSkin = viewerClass.IsRandomLeaderSkin ? 1 : 0;
|
||||
this.LeaderSkinId = viewerClass.LeaderSkin.Id;
|
||||
this.DefaultLeaderSkinId = viewerClass.Class.DefaultLeaderSkin.Id;
|
||||
this.LeaderSkinIds = ownedSkinIdsForClass.ToList();
|
||||
this.DefaultLeaderSkinId = viewerClass.Class.DefaultLeaderSkin?.Id ?? 0;
|
||||
}
|
||||
|
||||
public UserClass()
|
||||
|
||||
Reference in New Issue
Block a user