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()
|
.Select(d => new UserDeck(d)).ToList()
|
||||||
},
|
},
|
||||||
UserCards = allCardsAsOwned.Select(card => new UserCard(card)).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(),
|
Sleeves = cosmetics.SleeveIds.Select(id => new SleeveIdentifier { SleeveId = id }).ToList(),
|
||||||
UserEmblems = cosmetics.EmblemIds.Select(id => new EmblemIdentifier { EmblemId = id }).ToList(),
|
UserEmblems = cosmetics.EmblemIds.Select(id => new EmblemIdentifier { EmblemId = id }).ToList(),
|
||||||
UserDegrees = cosmetics.DegreeIds.Select(id => new DegreeIdentifier { DegreeId = id }).ToList(),
|
UserDegrees = cosmetics.DegreeIds.Select(id => new DegreeIdentifier { DegreeId = id }).ToList(),
|
||||||
|
|||||||
@@ -39,15 +39,16 @@ public class UserClass
|
|||||||
[Key("default_leader_skin_id")]
|
[Key("default_leader_skin_id")]
|
||||||
public int DefaultLeaderSkinId { get; set; }
|
public int DefaultLeaderSkinId { get; set; }
|
||||||
|
|
||||||
public UserClass(ViewerClassData viewerClass)
|
public UserClass(ViewerClassData viewerClass, IReadOnlyCollection<int> ownedSkinIdsForClass)
|
||||||
{
|
{
|
||||||
this.ClassId = viewerClass.Class.Id;
|
this.ClassId = viewerClass.Class.Id;
|
||||||
this.IsAvailable = 1;
|
this.IsAvailable = 1;
|
||||||
this.Level = viewerClass.Level;
|
this.Level = viewerClass.Level;
|
||||||
this.Exp = viewerClass.Exp;
|
this.Exp = viewerClass.Exp;
|
||||||
this.IsRandomLeaderSkin = 0;
|
this.IsRandomLeaderSkin = viewerClass.IsRandomLeaderSkin ? 1 : 0;
|
||||||
this.LeaderSkinId = viewerClass.LeaderSkin.Id;
|
this.LeaderSkinId = viewerClass.LeaderSkin.Id;
|
||||||
this.DefaultLeaderSkinId = viewerClass.Class.DefaultLeaderSkin.Id;
|
this.LeaderSkinIds = ownedSkinIdsForClass.ToList();
|
||||||
|
this.DefaultLeaderSkinId = viewerClass.Class.DefaultLeaderSkin?.Id ?? 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
public UserClass()
|
public UserClass()
|
||||||
|
|||||||
Reference in New Issue
Block a user