//, 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();
        }
Esempio n. 2
0
 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();
            }
Esempio n. 4
0
        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;
        }
Esempio n. 5
0
 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);
 }
Esempio n. 6
0
        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);
         }
 }