public Arcanum?Fusion(Arcanum a1, Arcanum a2) { Arcanum first = ((int)a1 < (int)a2) ? a1 : a2; Arcanum second = ((int)a1 < (int)a2) ? a2 : a1; return(Fusions[first][second]); }
public Persona Fusion(Persona p1, Persona p2) { Arcanum a1 = p1.Arcana; int l1 = p1.Level; Arcanum a2 = p2.Arcana; int l2 = p2.Level; int avg = ((l1 + l2) / 2) + 1; Arcanum?arcanaresult = fm.Fusion(a1, a2); if (!arcanaresult.HasValue) { return(null); } var query = from p in Personas where p.Value.Arcana == arcanaresult.Value select p.Value; foreach (var item in query) { if (item.Level >= avg) { return(item); } } return(null); }
private void Fill(Arcanum first, params Arcanum?[] result) { if (result.Length != 23) { throw new ArgumentException("Length different than expected 23", "result"); } Fusions[first][Arcanum.Fool] = result[0]; Fusions[first][Arcanum.Magician] = result[1]; Fusions[first][Arcanum.Priestess] = result[2]; Fusions[first][Arcanum.Empress] = result[3]; Fusions[first][Arcanum.Emperor] = result[4]; Fusions[first][Arcanum.Hierophant] = result[5]; Fusions[first][Arcanum.Lovers] = result[6]; Fusions[first][Arcanum.Chariot] = result[7]; Fusions[first][Arcanum.Justice] = result[8]; Fusions[first][Arcanum.Hermit] = result[9]; Fusions[first][Arcanum.Fortune] = result[10]; Fusions[first][Arcanum.Strength] = result[11]; Fusions[first][Arcanum.Hanged] = result[12]; Fusions[first][Arcanum.Death] = result[13]; Fusions[first][Arcanum.Temperance] = result[14]; Fusions[first][Arcanum.Devil] = result[15]; Fusions[first][Arcanum.Tower] = result[16]; Fusions[first][Arcanum.Star] = result[17]; Fusions[first][Arcanum.Moon] = result[18]; Fusions[first][Arcanum.Sun] = result[19]; Fusions[first][Arcanum.Judgement] = result[20]; Fusions[first][Arcanum.Jester] = result[21]; Fusions[first][Arcanum.Aeon] = result[22]; }
public Arcanum?Fusion(Arcanum a1, Arcanum a2, Arcanum a3) { Arcanum?first = Fusion(a1, a2); if (!first.HasValue) { return(null); } return(Fusion(first.Value, a3)); }
public Persona( string name, int level, Arcanum arcanum, bool isMaterial = true, bool isSpecialFusion = false) { Name = name; Level = level; Arcana = arcanum; IsMaterial = isMaterial; IsSpecialFusion = isSpecialFusion; }
public Fusion this[Arcanum key] { get { if (fusionSet.ContainsKey(key)) { return(fusionSet[key]); } else { return(null); } } set { if (fusionSet.ContainsKey(key)) { fusionSet[key] = value; } } }
public Arcanum?this[Arcanum key] { get { if (rule.ContainsKey(key)) { return(rule[key]); } else { return(null); } } set { if (rule.ContainsKey(key)) { rule[key] = value; } } }