public MobThemeTypingSeeded(EvoFlag allowance, RandRange amount) : base(allowance, amount) { }
private Dictionary <int, FormFeatureSummary> computeSummary(string dataPath, int num, MonsterData data) { Dictionary <int, FormFeatureSummary> formFeatureData = new Dictionary <int, FormFeatureSummary>(); int family = num; MonsterData preEvo = data; while (preEvo.PromoteFrom > -1) { family = preEvo.PromoteFrom; string preDir = PathMod.ModPath(dataPath + family + DataManager.DATA_EXT); preEvo = DataManager.LoadData <MonsterData>(preDir); } EvoFlag stage = EvoFlag.NoEvo; bool evolvedFrom = (data.PromoteFrom > -1); bool evolves = (data.Promotions.Count > 0); if (evolvedFrom && evolves) { stage = EvoFlag.MidEvo; } else if (evolvedFrom) { stage = EvoFlag.FinalEvo; } else if (evolves) { stage = EvoFlag.FirstEvo; } for (int ii = 0; ii < data.Forms.Count; ii++) { FormFeatureSummary summary = new FormFeatureSummary(); summary.Family = family; summary.Stage = stage; MonsterFormData formData = data.Forms[ii] as MonsterFormData; summary.Element1 = formData.Element1; summary.Element2 = formData.Element2; Stat bestStat = Stat.HP; Stat worstStat = Stat.HP; for (int nn = 0; nn < (int)Stat.HitRate; nn++) { if (bestStat != Stat.None) { if (formData.GetBaseStat((Stat)nn) > formData.GetBaseStat(bestStat)) { bestStat = (Stat)nn; } else if (formData.GetBaseStat((Stat)nn) == formData.GetBaseStat(bestStat)) { bestStat = Stat.None; } } if (worstStat != Stat.None) { if (formData.GetBaseStat((Stat)nn) < formData.GetBaseStat(worstStat)) { worstStat = (Stat)nn; } else if (formData.GetBaseStat((Stat)nn) == formData.GetBaseStat(worstStat)) { worstStat = Stat.None; } } } summary.BestStat = bestStat; summary.WorstStat = worstStat; formFeatureData[ii] = summary; } return(formFeatureData); }
public MobThemeTypingChosen(EvoFlag allowance, RandRange amount, params int[] types) : base(allowance, amount) { Types = types; }