Exemplo n.º 1
0
 public override void Read(ManifestData reader, int ID)
 {
     base.Read(reader, ID);
     reader.NextElement();
     BachelorKlassen = reader.Universe.BachelorKlassen.GetElemente(reader.ReadAufzahlung());
     reader.NextElement();
     reader.NextElement();
     MasterKlassen = reader.Universe.MasterKlassen.GetElemente(reader.ReadAufzahlung());
     reader.NextElement();
     reader.NextElement();
 }
Exemplo n.º 2
0
 public CharakterWerte(ManifestData Data, string Name, string xmlName)
     : this(Name, xmlName, Data.Universe)
 {
     if (!Data.Reader.IsStartElement(xmlName))
         throw new NotImplementedException();
     while (Data.NextElement())
         ReadElement(Data);
     Data.End(xmlName);
 }
Exemplo n.º 3
0
        public override void Read(ManifestData reader, int ID)
        {
            base.Read(reader, ID);

            Heilwurf = reader.getWurf("heilung");
            WiderstandWurf = reader.getWurf("widerstand");

            List<Stufe> list = new List<Stufe>();
            int min = int.MinValue;
            while (reader.NextElement())
            {
                int max = reader.getInt("widerstand");
                ZVektor<Korperwert> Mali = reader.getKorperwerte("mali");
                list.Add(new Stufe(min, max, Mali, this));
                min = max + 1;
            }
            Stufen = list.ToArray();
            reader.NextElement();
        }
Exemplo n.º 4
0
        public override void ReadElement(ManifestData Data)
        {
            int ID = 0;
            Data.Section(xmlName, () =>
            {
                if (Data.FlatName != "bemerkung")
                    throw new NotImplementedException();

                Bemerkung bem = new Bemerkung();
                bem.Read(Data, ID++);
                Bemerkungen.Add(bem);

                Data.NextElement();
            });
        }
Exemplo n.º 5
0
 public override void ReadElement(ManifestData Data)
 {
     this.BachelorErlernteFertigkeiten = Universe.Fertigkeiten.GetElemente(Data.getStrings("bachelorerlerntefertigkeiten"));
     this.MasterErlernteFertigkeiten = Universe.Fertigkeiten.GetElemente(Data.getStrings("mastererlerntefertigkeiten"));
     int i = 0;
     Data.Section(xmlName, () =>
     {
         FertigkeitsWerte[i++] = Data.getFertigkeiten("fertigkeiten");
         Data.NextElement();
     });
     SummiereFertigkeiten();
 }
Exemplo n.º 6
0
        public void Read(ManifestData data)
        {
            data.NextElement();

            this.Name = data.getString("name");
            this.Author = data.getString("author");
            data.Section("universe", () =>
            {
                switch (data.Reader.Name)
                {
                    case "attribute":
                        Attribute.Read(Path + data.Reader.getString("path"));
                        break;
                    case "fertigkeiten":
                        Fertigkeiten.Read(Path + data.Reader.getString("path"));
                        break;

                    case "talente":
                        Talente.Read(Path + data.Reader.getString("path"));
                        break;
                    case "talentsections":
                        TalentSection.Read(Path + data.Reader.getString("path"));
                        break;

                    case "korperwerte":
                        Korperwerte.Read(Path + data.Reader.getString("path"));
                        break;
                    case "verletzungen":
                        Verletzungen.Read(Path + data.Reader.getString("path"));
                        break;

                    case "rassen":
                        Rassen.Read(Path + data.Reader.getString("path"));
                        break;
                    case "bachelorklassen":
                        BachelorKlassen.Read(Path + data.Reader.getString("path"));
                        break;
                    case "masterklassen":
                        MasterKlassen.Read(Path + data.Reader.getString("path"));
                        break;

                    case "gegenstande":
                        Gegenstande.Read(Path + data.Reader.getString("path"), name =>
                        {
                            switch ((Gegenstand.Kategorie)Enum.Parse(typeof(Gegenstand.Kategorie), name, true))
                            {
                                case Gegenstand.Kategorie.Nahkampfwaffe:
                                    return new NahkampfWaffe();
                                case Gegenstand.Kategorie.Fernkampfwaffe:
                                    return new FernkampfWaffe();
                                case Gegenstand.Kategorie.Schild:
                                    return new Schild();
                                case Gegenstand.Kategorie.Rustung:
                                    return new Rustung();
                                case Gegenstand.Kategorie.Gegenstand:
                                    return new Gegenstand();
                                default:
                                    throw new NotImplementedException();
                            }
                        });
                        break;

                    case "techniken":
                        Techniken.Read(Path + data.Reader.getString("path"));
                        break;

                    case "aktionen":
                        Aktionen.Read(Path + data.Reader.getString("path"));
                        break;

                    case "daten":
                        CharakterDaten.Read(Path + data.Reader.getString("path"));
                        break;

                    case "schadenstypen":
                        Schadenstypen.Read(Path + data.Reader.getString("path"));
                        break;

                    default:
                        throw new NotImplementedException();
                }
                data.NextElement();
            });
        }
 private void ReadKlassen(ManifestData data)
 {
     this.StufenBachelor = data.getInt("stufenbachelor");
     this.StufenMaster = data.getInt("stufenmaster");
     data.NextElement();
 }
 private void ReadFertigkeiten(ManifestData data)
 {
     this.MaximalerFertigkeitswert = data.getInt("maximalerfertigkeitswert");
     this.MaximalerFertigkeitswertProStufe = data.getInt("maximalerfertigkeitswertprostufe");
     this.ErlernteFertigkeitenBachelor = data.getInt("erlerntefertigkeitenbachelor");
     this.ErlernteFertigkeitenMaster = data.getInt("erlerntefertigkeitenmaster");
     data.NextElement();
 }
        private void ReadBuffs(ManifestData data)
        {
            data.Section(() =>
            {
                switch (data.FlatName)
                {
                    case "attributsmodiauffertigkeiten":
                        StatischeBuffs.Fertigkeiten.add((BuffMan<Abbildung<Fertigkeit, int>>)new StandardStatischeAttributsModiAufFertigkeitenBuff().Create(null), 0);
                        break;
                    case "attributsmodiaufrettungswurfe":
                        StatischeBuffs.Fertigkeiten.add((BuffMan<Abbildung<Fertigkeit, int>>)new StandardStatischeAttributsModiAufRettungswurfeBuff().Create(null), 0);
                        break;
                    case "attributeauffertigkeiten":
                        StatischeBuffs.Fertigkeiten.add((BuffMan<Abbildung<Fertigkeit, int>>)new StandardStatischeAttributeAufFertigkeitenBuff().Create(null), 0);
                        break;
                    case "attributeaufrettungswurfe":
                        StatischeBuffs.Fertigkeiten.add((BuffMan<Abbildung<Fertigkeit, int>>)new StandardStatischeAttributeAufRettungswerteBuff().Create(null), 0);
                        break;
                    case "geschlechtattribute":
                        StatischeBuffs.Attribute.add((BuffMan<Abbildung<Attribut, int>>)new GeschlechtAttributeBuff(data.getAttribute("mannlich"), data.getAttribute("weiblich")).Create(null), 0);
                        break;
                    case "harteaufstatischeresistenzen":
                        StatischeBuffs.Resistenzen.add((BuffMan<Abbildung<Schadenstyp, int>>)new HarteAufStatischeResistenzenBuff().Create(null), 0);
                        break;
                    case "itemfertigkeitsboni":
                        DynamischeBuffs.Fertigkeiten.add((BuffMan<Abbildung<Fertigkeit, int>>)new StandardDynamischerItemFertigkeitsboni().Create(null), 0);
                        break;
                    case "itemharteboni":
                        DynamischeBuffs.Resistenzen.add((BuffMan<Abbildung<Schadenstyp, int>>)new StandardDynamischerItemHarteboni().Create(null), 0);
                        break;
                    case "ausrustungauffertigkeiten":
                        StatischeBuffs.Fertigkeiten.add((BuffMan<Abbildung<Fertigkeit, int>>)new StandardStatischerAusrustungAufFertigkeitenBuff().Create(null), 0);
                        break;
                    case "ausrustungharteboni":
                        StatischeBuffs.Resistenzen.add((BuffMan<Abbildung<Schadenstyp, int>>)new StandardStatischerAusrustungAufHarteBuff().Create(null), 0);
                        break;
                    case "aktioninitiativewert":
                        DynamischeBuffs.Fertigkeiten.add((BuffMan<Abbildung<Fertigkeit, int>>)new StandardDynamischerAktionsWertAufInitiative().Create(null), 0);
                        break;
                    case "aktioninitiativefertigkeit":
                        DynamischeBuffs.Fertigkeiten.add((BuffMan<Abbildung<Fertigkeit, int>>)new StandardDynamischerFertigkeitAufInitiative().Create(null), 0);
                        break;
                    default:
                        throw new NotImplementedException();
                }
                data.NextElement();
            });

            DynamischeBuffs.Fertigkeiten.add((BuffMan<Abbildung<Fertigkeit, int>>)new StandardDynamischeFertigkeitenBuff().Create(null), 0);
            DynamischeBuffs.Resistenzen.add((BuffMan<Abbildung<Schadenstyp, int>>)new StandardDynamischeResistenzenBuff().Create(null), 0);
        }
 private void ReadAttribute(ManifestData data)
 {
     this.MinimalerWertAttribut = data.getInt("minimalerwert");
     this.MaximalerWertAttribut = data.getInt("maximalerwert");
     this.SummeAttribute = data.getInt("summe");
     this.FertigkeitsGeber = Universe.Attribute.GetElemente(data.getStrings("fertigkeitsgeber"));
     this.SkillbareAttribute = Universe.Attribute.GetElemente(data.getStrings("skillbar"));
     data.NextElement();
 }
        public void Read(ManifestData data)
        {
            DynamischeBuffs = new CharakterDynamisch(data.Universe);
            StatischeBuffs = new CharakterStatisch(data.Universe);

            FertigkeitsGeber = Universe.Attribute.GetElemente(data.getStrings("fertigkeitsgeber"));
            SkillbareAttribute = Universe.Attribute.GetElemente(data.getStrings("skillbar"));

            data.NextElement();
            data.Section("charaktererstellungsdaten", () =>
            {
                switch (data.Reader.Name)
                {
                    case "attribute":
                        ReadAttribute(data);
                        break;
                    case "klassen":
                        ReadKlassen(data);
                        break;
                    case "fertigkeiten":
                        ReadFertigkeiten(data);
                        break;
                    case "now":
                        Now = data.getDateTime("date");
                        data.NextElement();
                        break;
                    case "buffs":
                        ReadBuffs(data);
                        break;
                    case "standardfertigkeiten":
                        StandardFertigkeiten = data.ReadAufzahlungFertigkeiten();
                        data.NextElement();
                        break;
                    default:
                        throw new NotImplementedException();
                }
            });
        }
Exemplo n.º 12
0
 public override void ReadElement(ManifestData Data)
 {
     Clear();
     Data.Section("inventar", () =>
     {
         switch (Data.Reader.Name)
         {
             case "rustungen":
                 Data.Section(() =>
                 {
                     Rustungen.Add((Rustung)Data.getGegenstand("name"));
                     Data.NextElement();
                 });
                 break;
             case "schilde":
                 Data.Section(() =>
                 {
                     Schilde.Add((Schild)Data.getGegenstand("name"));
                     Data.NextElement();
                 });
                 break;
             case "nahkampfwaffen":
                 Data.Section(() =>
                 {
                     NahkampfWaffen.Add((NahkampfWaffe)Data.getGegenstand("name"));
                     Data.NextElement();
                 });
                 break;
             case "fernkampfwaffen":
                 Data.Section(() =>
                 {
                     FernkampfWaffen.Add((FernkampfWaffe)Data.getGegenstand("name"));
                     Data.NextElement();
                 });
                 break;
             case "gegenstande":
                 Data.Section(() =>
                 {
                     Gegenstand g = new Gegenstand();
                     g.Read(Data, 0);
                     Gegenstande.Add(g);
                     Data.NextElement();
                 });
                 break;
             default:
                 throw new NotImplementedException();
         }
     });
 }
Exemplo n.º 13
0
 public override void ReadElement(ManifestData Data)
 {
     int i = 0;
     Data.Section("talente", () =>
     {
         Talente[i] = Data.getTalente("talente");
         FreieTalente[i++] = new List<Talent>(Data.getTalente("freie"));
         Data.NextElement();
     });
 }
Exemplo n.º 14
0
        public override void Read(ManifestData reader, int ID)
        {
            base.Read(reader, ID);
            Master = reader.getBoolean("master");
            Fokus5 = reader.getBoolean("fokus5");
            Fokus10 = reader.getBoolean("fokus10");
            this.Attribute = reader.getAttribute("attribute");
            this.Daten = reader.Universe.CharakterDaten;
            this.Stufen = Master ? Daten.StufenMaster : Daten.StufenBachelor;

            Fertigkeiten = new List<Fertigkeit>();
            List<string[]> talente = new List<string[]>();
            Fertigkeitsmodi = new ZVektor<Fertigkeit>[Stufen];
            FertigkeitsmodiSummen = new ZVektor<Fertigkeit>[Stufen];
            for (int i = 0; i < Stufen; i++)
            {
                Fertigkeitsmodi[i] = new ZVektor<Fertigkeit>(reader.Universe.Fertigkeiten);
                FertigkeitsmodiSummen[i] = new ZVektor<Fertigkeit>(reader.Universe.Fertigkeiten);
            }

            reader.Section(() =>
            {
                switch (reader.FlatName)
                {
                    case "fertigkeiten":
                        Fertigkeiten.AddRange(reader.ReadAufzahlungFertigkeiten());
                        reader.NextElement();
                        break;
                    case "fertigkeitsmodi":
                        reader.Section(() =>
                        {
                            switch (reader.FlatName)
                            {
                                case "rate":
                                    float rate = reader.getFloat("rate");
                                    Fertigkeit fert = reader.getFertigkeit("fertigkeit");
                                    int alt = 0;
                                    int neu;
                                    for (int i = 0; i < Stufen; i++)
                                    {
                                        neu =(int)Math.Ceiling((i+1) * rate);
                                        Fertigkeitsmodi[i].Add(fert, neu - alt);
                                        alt = neu;
                                    }
                                    break;
                                default:
                                    throw new NotImplementedException();
                            }
                            reader.NextElement();
                        });
                        FertigkeitsmodiSummen[0] = Fertigkeitsmodi[0];
                        for (int i = 1; i < Stufen; i++)
                        {
                            FertigkeitsmodiSummen[i] = FertigkeitsmodiSummen[i - 1] + Fertigkeitsmodi[i];
                        }
                        break;
                    case "stufen":
                        reader.Section(() =>
                        {
                            talente.Add(reader.getStrings("talente"));
                            reader.NextElement();
                        });
                        break;
                    default:
                        throw new NotImplementedException();
                }
            });
            if (talente != null)
                TalentTags = talente.ToArray();
        }
Exemplo n.º 15
0
        public override void ReadElement(ManifestData Data)
        {
            Attribute = Data.getAttribute("attribute");

            Data.NextElement();
        }
Exemplo n.º 16
0
        public override void ReadElement(ManifestData Data)
        {
            this.Rasse = Data.getRasse("rasse");
            this.Bachelor = Data.getBachelorKlasse("bachelor");
            this.Master = Data.getMasterKlasse("master");

            Data.NextElement();
        }
Exemplo n.º 17
0
        public override void ReadElement(ManifestData Data)
        {
            this.Mann = Data.getBoolean("mann");
            this.Hintergrund = Data.getString("hintergrund");
            this.Konfession = Data.getString("konfession");
            this.Geburtsort = Data.getString("geburtsort");
            this.Vergangenheiten = Data.getStrings("vergangenheiten");

            this.Augenfarbe = Data.getColor("augenfarbe");
            this.Hautfarbe = Data.getColor("hautfarbe");
            this.Haarfarbe = Data.getColor("haarfarbe");

            this.Portrait = Data.getString("portrait");

            this.Names = Data.getStrings("namen");
            this.Geburtstag = Data.getDateTime("geburtstag");

            this.Radius = Data.getFloat("radius");
            this.Hohe = Data.getFloat("hohe");

            this.Alter = Data.getInt("alter");

            Data.NextElement();
        }
Exemplo n.º 18
0
 public void Read(ManifestData Data)
 {
     while (!Data.Reader.Name.Equals("charaktermanifest"))
         Data.NextElement();
     Data.NextElement();
     Statisch = new CharakterStatisch(Data);
     Dynamisch = new CharakterDynamisch(Data);
     Objekte = new CharakterObjekte(Data);
     Geo = new CharakterGeo(Data);
     Data.End("charaktermanifest");
 }
Exemplo n.º 19
0
 public void Init(ManifestData Data)
 {
     Super = new SuperCharakter(Universe, null);
     while (!Data.Reader.Name.Equals("charakter"))
         Data.NextElement();
     Data.NextElement();
     Super.ReadElement(Data);
     //Grundwerte = new CharakterGrundwerte(Data);
     //RP = new CharakterRP(Data);
     Data.NextElement();
 }