private static MonsterFamilyHolder GetMonsterFamilyHolder(ClassicStageInfo.MonsterFamily family) { var hold = new MonsterFamilyHolder { MaxStageCompletion = family.maximumStageCompletion, MinStageCompletion = family.minimumStageCompletion, FamilySelectionWeight = family.selectionWeight, SelectionChatString = family.familySelectionChatString }; var cards = family.monsterFamilyCategories.categories; foreach (var cat in cards) { switch (cat.name) { case "Basic Monsters": hold.FamilyBasicMonsterWeight = cat.selectionWeight; hold.FamilyBasicMonsters = cat.cards.ToList(); break; case "Minibosses": hold.FamilyMinibossWeight = cat.selectionWeight; hold.FamilyMinibosses = cat.cards.ToList(); break; case "Champions": hold.FamilyChampionWeight = cat.selectionWeight; hold.FamilyChampions = cat.cards.ToList(); break; } } return(hold); }
private static ClassicStageInfo.MonsterFamily GetMonsterFamily(MonsterFamilyHolder holder) { var catSel = ScriptableObject.CreateInstance <DirectorCardCategorySelection>(); catSel.categories = new DirectorCardCategorySelection.Category[3]; catSel.categories[0] = new DirectorCardCategorySelection.Category { name = "Champions", selectionWeight = holder.FamilyChampionWeight, cards = (holder.FamilyChampions != null ? holder.FamilyChampions.ToArray() : Array.Empty <DirectorCard>()) }; catSel.categories[1] = new DirectorCardCategorySelection.Category { name = "Minibosses", selectionWeight = holder.FamilyMinibossWeight, cards = (holder.FamilyMinibosses != null ? holder.FamilyMinibosses.ToArray() : Array.Empty <DirectorCard>()) }; catSel.categories[2] = new DirectorCardCategorySelection.Category { name = "Basic Monsters", selectionWeight = holder.FamilyBasicMonsterWeight, cards = holder.FamilyBasicMonsters != null?holder.FamilyBasicMonsters.ToArray() : Array.Empty <DirectorCard>() }; return(new ClassicStageInfo.MonsterFamily { familySelectionChatString = holder.SelectionChatString, maximumStageCompletion = holder.MaxStageCompletion, minimumStageCompletion = holder.MinStageCompletion, selectionWeight = holder.FamilySelectionWeight, monsterFamilyCategories = catSel }); }
private static MonsterFamilyHolder GetMonsterFamilyHolder(ClassicStageInfo.MonsterFamily family) { MonsterFamilyHolder hold = new MonsterFamilyHolder { maxStageCompletion = family.maximumStageCompletion, minStageCompletion = family.minimumStageCompletion, familySelectionWeight = family.selectionWeight, selectionChatString = family.familySelectionChatString }; var cards = family.monsterFamilyCategories.categories; for (int i = 0; i < cards.Length; i++) { var cat = cards[i]; switch (cat.name) { case "Basic Monsters": hold.familyBasicMonsterWeight = cat.selectionWeight; hold.familyBasicMonsters = cat.cards.ToList(); break; case "Minibosses": hold.familyMinibossWeight = cat.selectionWeight; hold.familyMinibosses = cat.cards.ToList(); break; case "Champions": hold.familyChampionWeight = cat.selectionWeight; hold.familyChampions = cat.cards.ToList(); break; } } return(hold); }