public ParsedMapStageDetailLevelData(RawMapStageDetailLevelData raw, ParsedMapStageDetailData MapStageDetail) { try { MapStageDetailId = int.Parse(raw.MapStageDetailId); Level = int.Parse(raw.Level); CardList = string.IsNullOrEmpty(raw.CardList) ? new string[] { } : raw.CardList.Split(','); RuneList = string.IsNullOrEmpty(raw.RuneList) ? new string[] { } : raw.RuneList.Split(','); HeroLevel = int.Parse(raw.HeroLevel); AchievementId = int.Parse(raw.AchievementId); EnergyExpend = int.Parse(raw.EnergyExpend); BonusWin = string.IsNullOrEmpty(raw.BonusWin) ? new string[] { } : raw.BonusWin.Split(','); FirstBonusWin = string.IsNullOrEmpty(raw.FirstBonusWin) ? new string[] { } : raw.FirstBonusWin.Split(','); BonusLose = string.IsNullOrEmpty(raw.BonusLose) ? new string[] { } : raw.BonusLose.Split(','); AddedBonus = string.IsNullOrEmpty(raw.AddedBonus) ? new string[] { } : raw.AddedBonus.Split(','); EnergyExplore = int.Parse(raw.EnergyExplore); BonusExplore = string.IsNullOrEmpty(raw.AddedBonus) ? new string[] { } : raw.BonusExplore.Split(','); Hint = int.Parse(raw.Hint); BonusChip = string.IsNullOrEmpty(raw.BonusChip) ? (int?)null : int.Parse(raw.BonusChip); ChipRate = string.IsNullOrEmpty(raw.ChipRate) ? (int?)null : int.Parse(raw.ChipRate); AchievementText = raw.AchievementText; this.MapStageDetail = MapStageDetail; } catch (Exception ex) { Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine(ex); Console.WriteLine(JsonConvert.SerializeObject(raw)); Console.ResetColor(); throw new ArgumentException($"解析 ID 为 {MapStageDetail.MapStageId}-{raw.MapStageDetailId}-{raw.Level} 的关卡子关数据时出错", ex); } }
public ParsedMapStageDetailDialogueData(RawMapStageDetailDialogueData raw, ParsedMapStageDetailData MapStageDetail) { try { StoryId = int.Parse(raw.StoryId); Did = raw.Did; NPC = raw.NPC; Dialogue = raw.Dialogue; Icon = raw.Icon; Orientations = int.Parse(raw.Orientations); Opportunity = int.Parse(raw.Opportunity); this.MapStageDetail = MapStageDetail; } catch (Exception ex) { Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine(ex); Console.WriteLine(JsonConvert.SerializeObject(raw)); Console.ResetColor(); throw new ArgumentException($"解析 ID 为 {raw.StoryId} 的剧情数据时出错", ex); } }