public override void Read(ManifestData data, int ID) { base.Read(data, ID); Kosten = data.getAttribute("kosten"); string s = data.getString("attribut"); if (s.Length > 0) Attribut = data.Attribute.GetElement(s); Rettungswurf = data.getBoolean("rettungswurf"); Kategorien = data.getStrings("kategorien"); }
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 override void ReadElement(ManifestData Data) { Attribute = Data.getAttribute("attribute"); Data.NextElement(); }
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(); }