using System; using System.Collections; using System.Collections.Generic; using System.Linq; using Cute; using LitJson; using UnityEngine; // TODO(engine-cleanup-pass2): 310 of 317 methods unrun in baseline // Type: Wizard.Master // See data_dumps/reports/engine-cleanup/live-methods.baseline.txt namespace Wizard; public class Master { public interface ReadFromCsv { void ReadCsvColumns(string[] columns); } private List _roomChaosBattleInfo; private List _colosseumChaosBattleInfo; private List> _chaosBattleInfoList; private Dictionary> _classInfomationOrder; private Dictionary> _roomClassInfomationOrder; private Dictionary> _colosseumClassInfomationOrder; private List>> _classInfomationOrderList; public List ClassCharacterList { get; private set; } public Dictionary SleeveCategoryIdDic { get; set; } public Dictionary LeaderSkinSeriesIdDic { get; set; } public SleeveMgr SleeveMgr { get; private set; } public EmblemMgr EmblemMgr { get; private set; } public DegreeMgr DegreeMgr { get; private set; } public List ItemList { get; set; } public List GiftTransitionList { get; set; } public Dictionary> ClassInfomationOrder { get { switch (DataMgr.BattleType.FreeBattle) // Pre-Phase-5b: headless has no BattleType { case DataMgr.BattleType.RoomTwoPick: case DataMgr.BattleType.TwoPickBackdraft: return _roomClassInfomationOrder; case DataMgr.BattleType.ColosseumTwoPick: return _colosseumClassInfomationOrder; default: return _classInfomationOrder; } } } private Dictionary _crossOverClassInfomationOrder { get; set; } public Dictionary> AvatarClassInformationOrder { get; set; } public List WhenPlayEffectKeywordMaster { get; set; } public List PuzzleQuestDataList { get; private set; } public List TutorialAreaSelectList { get; set; } public AIDeckFileNameList AIDeckFileNameList { get; set; } public AIEmoteFileNameList AIEmoteFileNameList { get; set; } public AIStyleFileNameList AIStyleFileNameList { get; set; } public IDictionary BattleKeyWordDic { get; private set; } public IDictionary CardFilterKeywordReplaceDic { get; private set; } private IDictionary EmoteWordDic { get; set; } private IDictionary CardNameDic { get; set; } private IDictionary TribeNameDic { get; set; } private IDictionary SkillDescDic { get; set; } private IDictionary FlavourTextDic { get; set; } private IDictionary ItemTextDic { get; set; } public IDictionary SleeveTextDic { get; private set; } private IDictionary SleeveCategoryTextDic { get; set; } private IDictionary LeaderSkinProductTextDic { get; set; } private IDictionary LeaderSkinSeriesTextDic { get; set; } public IDictionary ClassCharaTextDic { get; private set; } public IDictionary EmblemTextDic { get; private set; } public IDictionary DegreeTextDic { get; private set; } private IDictionary DegreeAchievementTextDic { get; set; } private Dictionary MyPageBGTextDic { get; set; } public CardSetNameMgr CardSetNameMgr { get; private set; } private IDictionary CardVoiceTextDic { get; set; } public List CardDetailVoiceIgnoreList { get; private set; } private IDictionary PracticeTextDic { get; set; } private IDictionary StorySectionTitleTextDic { get; set; } public IDictionary> RelationCardSortDic { get; private set; } public Dictionary> GleamingGemListMaster { get; set; } public Dictionary MyPageCustomBGMaster { get; private set; } public List MyPageCustomBGMasterList { get; private set; } public Dictionary> RadiantCrystalListMaster { get; set; } public Dictionary> GleamingGemListV2Master { get; set; } public Dictionary> RadiantCrystalListV2Master { get; set; } public List GetGleamingGemList(int classId) { if (GleamingGemListMaster.ContainsKey(classId)) { return GleamingGemListMaster[classId]; } return null; } public List GetRadiantCrystalList(int classId) { if (RadiantCrystalListMaster.ContainsKey(classId)) { return RadiantCrystalListMaster[classId]; } return null; } public List GetGleamingGemListV2Master(int classId) { if (GleamingGemListV2Master.ContainsKey(classId)) { return GleamingGemListV2Master[classId]; } return null; } public List GetRadiantCrystalListV2Master(int classId) { if (RadiantCrystalListV2Master.ContainsKey(classId)) { return RadiantCrystalListV2Master[classId]; } return null; } public void LoadRoomChaosBattleInfo(int num) { if (num > 0 && _chaosBattleInfoList != null) { _roomChaosBattleInfo = _chaosBattleInfoList[num - 1]; } } public void SetRoomClassInfomationOrder(int num) { if (num > 0 && _classInfomationOrderList != null) { _roomClassInfomationOrder = _classInfomationOrderList[num - 1]; } } public List GetCrossOverClassInfoListOrNull(int mainClass, int subClass) { return _crossOverClassInfomationOrder.GetValueOrDefault(mainClass + "|" + subClass, null)?.Split('|').Select(int.Parse).ToList(); } public string GetText(Type key, IDictionary dic) { if (!dic.TryGetValue(key, out var value)) { return key.ToString(); } return value; } public string GetEmoteWordText(string key) { return GetText(key, EmoteWordDic); } public string GetCardNameText(string key) { return GetText(key, CardNameDic); } public string GetTribeNameText(string key) { return GetText(key, TribeNameDic); } public string GetSkillDescText(string key) { return GetText(key, SkillDescDic); } public string GetFlavourText(string key) { return GetText(key, FlavourTextDic); } public string GetItemText(string key) { return GetText(key, ItemTextDic); } public string GetSleeveText(string key) { return GetText(key, SleeveTextDic); } public string GetSleeveCategoryText(string key) { return GetText(key, SleeveCategoryTextDic); } public string GetLeaderSkinProductText(string key) { return GetText(key, LeaderSkinProductTextDic); } public string GetLeaderSkinSeriesText(string key) { return GetText(key, LeaderSkinSeriesTextDic); } public string GetClassCharaText(string key) { return GetText(key, ClassCharaTextDic); } public string GetEmblemText(string key) { return GetText(key, EmblemTextDic); } public string GetDegreeText(string key) { return GetText(key, DegreeTextDic); } public string GetDegreeAchievementText(string key) { return GetText(key, DegreeAchievementTextDic); } public string GetCardVoiceText(string key) { return GetText(key, CardVoiceTextDic); } public string GetPracticeText(string key) { return GetText(key, PracticeTextDic); } public string GetStorySectionTitleText(string key) { return GetText(key, StorySectionTitleTextDic); } public string GetMyPageBGText(string key) { return GetText(key, MyPageBGTextDic); } public List GetAllTribeNameList() { List list = new List(TribeNameDic.Count); foreach (KeyValuePair item in TribeNameDic) { list.Add(item.Value); } return list; } }