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(); } }); }