public CharakterErlernteFertigkeitenControl(CharakterErstellungsDaten Daten, bool Master)
            : base(Daten)
        {
            this.Master = Master;

            this.Gelernt = 0;
            this.Maximal = Master ? Daten.ErlernteFertigkeitenMaster : Daten.ErlernteFertigkeitenBachelor;

            Fertigkeiten = new List<Fertigkeit>();
            Fertigkeiten.AddRange(Daten.StandardFertigkeiten);

            //Fertigkeitspunkte = new ZVektor<Attribut>(Attribute);
            //RestFertigkeitspunkte = new ZVektor<Attribut>(Attribute);

            this.Info = new Label();
            this.Info.AutoSize = true;

            this.Neu = new Button();
            Neu.Text = "Neue Fertigkeit lernen";
            Neu.AutoSize = true;
            Neu.Click += (sender, e) =>
            {
                Form.Chose(null);
                Form.Filter(x => !Fertigkeiten.Contains(x));
                Form.ShowDialog();
                if (Form.MyStatus == ElementAuswahlForm<Fertigkeit>.Status.OK)
                    CreatePaar(Form.Ergebnis);
                UpdateInfo();
            };

            this.Stufe = Master ? Daten.StufenBachelor : 0;
        }
 public CharakterInventarControl(CharakterErstellungsDaten Daten)
     : base(Daten)
 {
     NKListe = new ItemListe("Neue Nahkampfwaffe", Gegenstand.Kategorie.Nahkampfwaffe, Daten);
     FKListe = new ItemListe("Neue Fernkampfwaffe", Gegenstand.Kategorie.Fernkampfwaffe, Daten);
     SchildListe = new ItemListe("Neuer Schild", Gegenstand.Kategorie.Schild, Daten);
     RustListe = new ItemListe("Rüstung Auswählen", Gegenstand.Kategorie.Rustung, Daten, 1);
     GegenstandListe = new MakeItemListe(Daten);
     ArrayControl ac = new ArrayControl(NKListe, FKListe);
     Liste.Add(ac);
     ac = new ArrayControl(SchildListe, RustListe, GegenstandListe);
     Liste.Add(ac);
 }
        //, CharakterStartControl CharakterStartControl
        public CharakterCreationControl(CharakterErstellungsDaten Daten)
        {
            //this.CharakterStartControl = CharakterStartControl;
            this.Daten = Daten;

            this.Weiter = CreateButton("Übernehmen", null);
            this.Zuruck = CreateButton("Abbrechen", null);

            this.Liste = new ControlList();
            this.ScrollBox = new ScrollBox(this.Liste);
            Controls.Add(ScrollBox);
            this.ScrollBox.Location = new Point(MindAbstand, MindAbstand);
            this.DoubleBuffered = true;
        }
        //, Logger
        //, CharakterStartControl Logger
        public CharakterAttributeControl(CharakterErstellungsDaten Daten)
            : base(Daten)
        {
            CreateLabel("Jedes Attribut muss zwischen " + Daten.MinimalerWertAttribut + " und " + Daten.MaximalerWertAttribut + " Punkte erhalten."
                + "\r\nIn der Summe müssen " + Daten.SummeAttribute + " Punkte vergeben werden.");

            this.Menge = Daten.SkillbareAttribute;

            AttributFelder = new ControlPaar[Menge.Length];
            AttributFelder.CountMap(i => CreatePaar(Menge[i].SchreibName, false, null));
            Summe = CreateLabel("Gesamtsumme: 0");

            Liste.Setup();
            Validate(null, null);
        }
        public SuperCharakter(Universe Universe, CharakterErstellungsDaten Daten)
            : base("SuperCharakter", "supercharakter", Universe)
        {
            this.Daten = Daten;
            int Stufen = 20;
            if (Daten != null)
                Stufen = Daten.StufenBachelor + Daten.StufenMaster;

            RP = new CharakterRP(Universe);
            Klassen = new CharakterKlassen(Universe);
            Attribute = new CharakterAttribute(Universe);
            Fertigkeiten = new CharakterFertigkeiten(Universe, Stufen);
            Talente = new CharakterTalente(Universe, Stufen);
            Bemerkungen = new CharakterBemerkungen(Universe);
            Inventar = new CharakterInventar(Universe);
        }
        //, 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();
        }
        //, Logger
        //, CharakterStartControl Logger
        public CharakterKlassenControl(CharakterErstellungsDaten Daten)
            : base(Daten)
        {
            ExRasse = Universe.Rassen.Anzahl > 0;
            if (ExRasse)
            {
                RassenForm = new ElementAuswahlForm<Rasse>(Rassen);
                CtlRasse = CreateButtonPaar("Rasse", "Nichts ausgewählt", (s, e) =>
                {
                    RassenForm.ShowDialog();
                    if (RassenForm.MyStatus == ElementAuswahlForm<Rasse>.Status.OK)
                        SetRasse(RassenForm.Ergebnis);
                });
            }

            ExBachelor = Daten.StufenBachelor > 0;
            if (ExBachelor)
            {
                BachelorForm = new ElementAuswahlForm<Klasse>(BachelorKlassen);
                CtlBachelor = CreateButtonPaar("Bachelor-Klasse", "Nichts ausgewählt", (s, e) =>
                {
                    BachelorForm.ShowDialog();
                    if (BachelorForm.MyStatus == ElementAuswahlForm<Klasse>.Status.OK)
                        SetBachelorKlasse(BachelorForm.Ergebnis);
                });
            }

            ExMaster = Daten.StufenMaster > 0;
            if (ExMaster)
            {
                MasterForm = new ElementAuswahlForm<Klasse>(MasterKlassen);
                CtlMaster = CreateButtonPaar("Master-Klasse", "Nichts ausgewählt", (s, e) =>
                {
                    MasterForm.ShowDialog();
                    if (MasterForm.MyStatus == ElementAuswahlForm<Klasse>.Status.OK)
                        SetMasterKlasse(MasterForm.Ergebnis);
                });
            }

            Liste.Setup();
            Validate(null, null);
        }
Exemple #8
0
        public Universe(string Path)
        {
            this.Path = Path.Verzeichnis();

            Attribute = new ElementMenge<Attribut>(this);
            Fertigkeiten = new ElementMenge<Fertigkeit>(this);

            Talente = new ElementMenge<Talent>(this);
            TalentSection = new Section<Talent>(this, data =>
                {
                    Talent t = Talente.GetElement(data.getString("name"));
                    data.NextElement();
                    return t;
                }
                );

            Korperwerte = ElementMenge<Korperwert>.EmptyElementMenge(this);
            Verletzungen = ElementMenge<Verletzung>.EmptyElementMenge(this);

            Schadenstypen = new ElementMenge<Schadenstyp>(this);

            Rassen = new ElementMenge<Rasse>(this);
            BachelorKlassen = new ElementMenge<Klasse>(this);
            MasterKlassen = ElementMenge<Klasse>.EmptyElementMenge(this);

            Gegenstande = new ElementMenge<Gegenstand>(this);
            Aktionen = new ElementMenge<Aktion>(this);
            Techniken = new ElementMenge<Technik>(this);

            CharakterDaten = new CharakterErstellungsDaten(this);

            ManifestData d = new ManifestData(this, XmlReader.Create(Path));
            this.Read(d);

            Last = this;
        }
        public CharacterCreator(ControlForm Form, CharakterErstellungsDaten Daten)
        {
            this.Universe = Daten.Universe;
            this.Form = Form;
            this.Data = new ManifestData(Universe);

            Desc = CreateLabel("");
            ScrollDesc = new ScrollBox(Desc);
            ScrollDesc.Top = 20;
            ScrollDesc.Left = 20;
            Controls.Add(ScrollDesc);

            Liste = new ControlList();
            Liste.Align = 1f;
            Liste.Location = new Point(50, 10);
            ScrollBox = new ScrollBox(Liste);
            ScrollBox.Top = 20;
            Controls.Add(ScrollBox);

            Werte = new List<CharakterWertControl>();
            NeedSpeicherort = new List<Control>();

            MakeSaveOpenDialogs();
        }
Exemple #10
0
 public void LernFertigkeiten(IEnumerable<Fertigkeit> Fertigkeiten, bool Master, CharakterErstellungsDaten Daten)
 {
     if (Master)
         this.MasterErlernteFertigkeiten = Fertigkeiten
             .Where(x => !(this.BachelorErlernteFertigkeiten.Contains(x) || Daten.StandardFertigkeiten.Contains(x))).ToArray();
     else
         this.BachelorErlernteFertigkeiten = Fertigkeiten
             .Where(x => !Daten.StandardFertigkeiten.Contains(x)).ToArray();
 }
            public ItemListe(string NeuText, Gegenstand.Kategorie Kategorie, CharakterErstellungsDaten Daten, int Maximum)
            {
                this.Kategorie = Kategorie;
                this.Daten = Daten;
                this.Gegenstande = new List<Gegenstand>();
                this.Form = new ElementAuswahlForm<Gegenstand>(Daten.Universe.Gegenstande);
                this.Maximum = Maximum;

                Liste = new ControlList();
                ScrollBox = new ScrollBox(Liste);
                Neu = new Button();
                Neu.Text = NeuText;
                Neu.AutoSize = true;
                Neu.Click += NeuKlick;
                Neu.Enabled = false;
                this.Controls.Add(ScrollBox);

                this.Size = ScrollBox.Size = new Size(300, 300);

                FillListe(Gegenstande);
                UpdateInfo();
            }
 public ItemListe(string NeuText, Gegenstand.Kategorie Kategorie, CharakterErstellungsDaten Daten)
     : this(NeuText, Kategorie, Daten, int.MaxValue)
 {
 }
 public MakeItemListe(CharakterErstellungsDaten Daten)
     : base("Neuer Gegenstand aus Datenbank", Gegenstand.Kategorie.Gegenstand, Daten)
 {
     this.Size = this.ScrollBox.Size = new Size(500, 300);
 }
Exemple #14
0
 public IEnumerable<Fertigkeit> GetGelernteFertigkeiten(bool Master, CharakterErstellungsDaten Daten)
 {
     IEnumerable<Fertigkeit> f = Daten.StandardFertigkeiten.Concat(BachelorErlernteFertigkeiten);
     if (Master)
         f = f.Concat(MasterErlernteFertigkeiten);
     return f;
 }
 public CharakterBemerkungenControl(CharakterErstellungsDaten Daten)
     : base(Daten)
 {
 }
Exemple #16
0
 public bool FertigkeitValid(Fertigkeit Fertigkeit, int Stufe, CharakterErstellungsDaten Daten)
 {
     return FertigkeitsSummen[Stufe - 1][Fertigkeit] <= Daten.GetMaximalerFertigkeitswert(Stufe);
 }
Exemple #17
0
 public bool KannErhohen(Fertigkeit Fertigkeit, int Stufe, CharakterErstellungsDaten Daten)
 {
     if (FertigkeitsSummen[Stufe - 1][Fertigkeit] >= Daten.GetMaximalerFertigkeitswert(Stufe))
         return false;
     for (int i = Stufe - 1; i < Stufen; i++)
         if (!(Fertigkeit.Kosten <= Frei[i]))
             return false;
     return true;
 }