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(); }); }
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 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); }
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(); } }); }
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(); } }); }
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(); }); }
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(); }
public override void ReadElement(ManifestData Data) { Data.Section(xmlName, () => { switch (Data.Reader.Name) { case "rp": RP.ReadElement(Data); break; case "klassen": Klassen.ReadElement(Data); break; case "attribute": Attribute.ReadElement(Data); break; case "fertigkeiten": Fertigkeiten.ReadElement(Data); break; case "talente": Talente.ReadElement(Data); break; case "bemerkungen": Bemerkungen.ReadElement(Data); break; case "inventar": Inventar.ReadElement(Data); break; default: throw new NotImplementedException(); } }); }
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(); }