//, Logger //, CharakterStartControl Logger public CharakterTalentControl(CharakterErstellungsDaten Daten) : base(Daten) { Stufen = Daten.StufenBachelor + Daten.StufenMaster; TalentControls = new TalentLevelControl[Stufen]; FertZustand = new BedingungZustand[Stufen]; for (int i = 0; i < Stufen; i++) { TalentControls[i] = new TalentLevelControl(Universe, i + 1, this); TalentControls[i].Location = new Point(10, 20); Label lb = new Label(); lb.Text = "Stufe " + (i + 1); lb.Font = new System.Drawing.Font("Calibri", 14); Liste.Add(lb); Liste.Add(TalentControls[i]); } Liste.Setup(); }
public bool Check(BedingungZustand Zustand) { return (Zustand.Get(Name) == 0) && Bedingung.Check(Zustand); }
public void Feed(SuperCharakter Charakter) { this.Zustand = Charakter.GetZustand(Daten.StufenBachelor + Daten.StufenMaster); FillListe(Charakter.Inventar.GetListe(Kategorie)); UpdateInfo(); }
public override bool Valid(SuperCharakter Super) { BedingungZustand bz = new BedingungZustand(); for (int i = 0; i < Stufen; i++) { if (i < Super.Daten.StufenBachelor) bz.AddStufe(Super.Klassen.Bachelor); else bz.AddStufe(Super.Klassen.Master); bz.Add(Super.Fertigkeiten.FertigkeitsWerte[i]); foreach (var item in Talente[i]) if (item == null || !item.Check(bz)) return false; else bz.Add(item); foreach (var item in FreieTalente[i]) if (item == null || !item.Check(bz)) return false; else bz.Add(item); } return true; }
public void MakeStatisch(int Stufe) { this.stufe = Stufe; Statisch = new CharakterStatisch(this); Dynamisch = new CharakterDynamisch(this); if (Charakter.Super != null) Zustand = Charakter.Super.GetZustand(Stufe); }
public BedingungZustand GetZustand(int Stufe) { BedingungZustand bz = new BedingungZustand(); bool Master = Stufe > Daten.StufenBachelor; if (Klassen.Rasse != null) bz.Add(Klassen.Rasse.Name); bz.Add("Stufe", Stufe); if (Master) { if (Klassen.Bachelor != null) { bz.Add("Stufe_" + Klassen.Bachelor.Name, Daten.StufenBachelor); bz.Add(Klassen.Bachelor.Flags); } if (Klassen.Master != null) { bz.Add("Stufe_" + Klassen.Master.Name, Stufe - Daten.StufenBachelor); bz.Add(Klassen.Master.Flags); } } else if (Klassen.Bachelor != null) { bz.Add("Stufe_" + Klassen.Bachelor.Name, Stufe); bz.Add(Klassen.Bachelor.Flags); } if (Attribute.Attribute != null) foreach (var item in Universe.Attribute) bz.Add(item.Name, Attribute.Attribute.Get(item)); ZVektor<Fertigkeit> fert = Fertigkeiten.FertigkeitsSummen[Stufe - 1]; foreach (var item in Universe.Fertigkeiten) { int z = fert[item]; if (z > 0) bz.Add(item.Name, z); } bz.Add(RP.Mann ? "Männlich" : "Weiblich"); if (Daten.ErlernteFertigkeitenBachelor + Daten.ErlernteFertigkeitenMaster > 0) foreach (var item in Fertigkeiten.GetGelernteFertigkeiten(Master, Daten)) bz.Add("Kann_" + item.Name); return bz; }
public void Filter(BedingungZustand bz) { if (TalentForme != null) for (int i = 0; i < TalentForme.Length; i++) { if (Ergebnisse[i] != null) bz.Decrease(Ergebnisse[i].Name); TalentForme[i].Filter(x => x.Check(bz)); Paare[i].Colorize(TalentForme[i].Ergebnis != null && TalentForme[i].Menge.Contains(Ergebnisse[i]));//Ergebnisse[i] != null && Ergebnisse[i].Check(bz)); if (Ergebnisse[i] != null) bz.Add(Ergebnisse[i].Name); } }