public void AddLaufen(Tabular t) { Tabular a = new Tabular(2); a.addRow(); a[0, 0] = GetText("Anfangen:"); a[0, 1] = GetText("____ Felder"); a.addRow(); a[1, 0] = GetText("Weiter:"); a[1, 1] = GetText("____ Felder"); AddEntry(t, GetText(@"\dLaufen\d"), a); }
public void AddAngriff(Tabular t) { Tabular a = new Tabular(2); a.addRow(); a[0, 0] = GetText("Angriffe:"); a[0, 1] = GetText("W20 + "); a.addRow(); a[1, 0] = GetText("2 bis ____:"); a.addRow(); a[2, 0] = GetText("____ bis 20:"); AddEntry(t, GetText(@"\dAngriff\d mit _____________________________________________"), a); }
public void AddEntry(Tabular t, DrawBox Titel, DrawBox Content) { int n = t.Rows; t.addRow(); t.addRow(); t.addRow(); t.setRowPen(n, Line); t.setRowPen(n + 1, HalbLine); t.setRowPen(n + 2, Line); t[n + 1, 0] = Titel; t[n + 2, 0] = Content.Geometry(2); }
public void AddVerteidigung(Tabular t, CharakterMan cm) { Tabular a = new Tabular(2); a.addRow(); a[0, 0] = GetText("Akrobatik:"); a[0, 1] = GetText("W20 + " + cm.Statisch.Fertigkeiten.FinalWert.Value()[Universe.Fertigkeiten.GetElement("Akrobatik")] + " + Boni:____ = W20 + ____"); a.addRow(); a[1, 0] = GetText("RK:"); a[1, 1] = GetText("10 + Rüstung:____ * " + (cm.Statisch.Fertigkeiten.FinalWert.Value()[Universe.Fertigkeiten.GetElement("Rüstung")] / 20f).ToString("P0") + " + Boni:____ = ____" ); a.addRow(); a[2, 0] = GetText("FK:"); a[2, 1] = GetText("RK:____ + " + cm.Statisch.Fertigkeiten.FinalWert.Value()[Universe.Fertigkeiten.GetElement("Verstecken")] + " + Boni:____ = ____" ); AddEntry(t, GetText(@"\dVerteidigung\d"), a); }
public Tabular Resistenzen() { Tabular t = new Tabular(4); t.addRow(5, Line); for (int i = 0; i <= t.Columns; i++) t.columnPens[i] = Line; t[1, 0] = GetText("Stich", Color.Gold); t[2, 0] = GetText("Hieb", Color.SandyBrown); t[3, 0] = GetText("Wucht", Color.LightGray); t[0, 1] = new Whitespace(100, 0, false); t[0, 3] = new Whitespace(100, 0, false); t[1, 2] = GetText("Feuer", Color.Red); t[2, 2] = GetText("Kälte", Color.LightBlue); t[3, 2] = GetText("Säure", Color.GreenYellow); t[4, 2] = GetText("Elektro", Color.Blue); return t; }
public override DrawBox MakeBogen(CharakterMan Charakter) { this.ab = 2; Charakter.Update(); float seite = 400; CString Haupt = new CString(); Tabular Splitter = new Tabular(2); CString Left = new CString(); CString Right = new CString(); Assistment.Texts.Text Name = GetName(Charakter, GetLP(Charakter)); Haupt.add(new Word("Alsland-Personenakte", Schrift, Germanica, 0, Line)); Haupt.addAbsatz(); Haupt.add(Splitter); Haupt.alignment = 0.5f; Splitter.addRow(); Splitter[0, 0] = Left; Splitter[0, 1] = Right; Right.addWhitespace(seite); Right.add(base.GetBemerkungen(Charakter.Charakter.Super.Bemerkungen).Geometry(5)); Right.alignment = 0.5f; Right.add(new Whitespace(300, 50, true)); Right.add(Resistenzen()); Left.alignment = 0.5f; Left.addWhitespace(seite); Left.addAbsatz(); Left.add(Name.Geometry(30)); Left.addAbsatz(); #region Porträt try { Image img = Image.FromFile(Charakter.Charakter.Super.RP.Portrait); Left.add(new DynamicImageBox(img, 100, 100, 400, 400)); Left.addAbsatz(); } catch (Exception) { } #endregion Tabular leftTab = new Tabular(2); leftTab.addRow(); CString AttRett = new CString(); AttRett.add(GetEigenschaftenTabelleMitModif("Attribute", Charakter, Charakter.Statisch.Attribute, (a => (int)Math.Floor((a - 10f) / 2)), Universe.Attribute.Where(x => !x.Hidden)).Geometry(5)); AttRett.add(GetEigenschaftenTabelle("Rettungswürfe", Charakter, Charakter.Statisch.Fertigkeiten, Universe.Fertigkeiten.Menge.Where(x => x.Rettungswurf)).Geometry(5)); leftTab[0, 0] = AttRett; leftTab[0, 1] = GetEigenschaftenTabelle("Fertigkeiten", Charakter, Charakter.Statisch.Fertigkeiten, Universe.Fertigkeiten.Menge.Where(x => !x.Rettungswurf)).Geometry(5); Left.add(leftTab); Left.add(new Whitespace(300, 10, true)); Left.add(Aktionen(Charakter)); return Haupt.Geometry(rand); }
public Tabular GetTabelle(CharakterMan Charakter) { Abbildung<Attribut, int> w0 = Charakter.Charakter.Super.Attribute.Attribute; Abbildung<Attribut, int> w = Charakter.Statisch.Attribute.FinalWert.Value(); Abbildung<Fertigkeit, int> f0 = Charakter.Charakter.Super.GetGrundwerteFertigkeiten(Charakter.Stufe); Tabular t = new Tabular(9); bool Master = Charakter.Stufe > Universe.CharakterDaten.StufenBachelor; IEnumerable<Fertigkeit> z = Charakter.Charakter.Super.Fertigkeiten.GetGelernteFertigkeiten(Master, Universe.CharakterDaten); Pen p = Pens.Black; int n = 0; int l = 0; int m = 0; Fertigkeit[][] fert = new Fertigkeit[3][]; Attribut[] att = Universe.Attribute.GetElemente("Stärke", "Geschick", "Charisma"); fert.CountMap(i => { IEnumerable<Fertigkeit> y = z.Where(x => x.Attribut == att[i]); n = Math.Max(n, y.Count()); return y.ToArray(); }); t.addRow(n + 1, p); for (int c = 0; c < 3; c++) { t[m, c * 3 + 0] = att[c].SchreibName; t[m, c * 3 + 1] = w0[att[c]] + ""; t[m, c * 3 + 2] = w[att[c]] + ""; } for (m = 1; m < n + 1; m++) for (int c = 0; c < 3; c++) if (m < fert[c].Length) { Fertigkeit f = fert[c][m]; t[m, c * 3 + 0] = f.SchreibName; t[m, c * 3 + 1] = f0[f] + ""; t[m, c * 3 + 2] = Charakter.FertigkeitsWert(f) + ""; } m = n + 1; att = Universe.Attribute.GetElemente("Intelligenz", "Intuition", "Wahrnehmung"); fert.CountMap(i => { IEnumerable<Fertigkeit> y = z.Where(x => x.Attribut == att[i]); l = Math.Max(l, y.Count()); return y.ToArray(); }); t.addRow(l + 1, p); for (int c = 0; c < 3; c++) { t[m, c * 3 + 0] = att[c].SchreibName; t[m, c * 3 + 1] = w[att[c]] + ""; t[m, c * 3 + 2] = w0[att[c]] + ""; } for (m = n + 2; m < n + l + 2; m++) for (int c = 0; c < 3; c++) if (m < fert[c].Length) { Fertigkeit f = fert[c].ElementAt(m); t[m, c * 3 + 0] = f.SchreibName; t[m, c * 3 + 1] = Charakter.FertigkeitsWert(f) + ""; t[m, c * 3 + 2] = f0[f] + ""; } return t; }
public override DrawBox MakeBogen(CharakterMan Charakter) { Charakter.Update(); float seite = 400; CString Haupt = new CString(); CString Oben = new CString(); CString Unten = new CString(); Haupt.add(new Word("Alsland-Personenakte", Schrift, Germanica, 0, Line)); Haupt.addAbsatz(); Haupt.add(Oben); Haupt.addAbsatz(); Haupt.add(Unten); Haupt.alignment = Oben.alignment = Unten.alignment = 0.5f; Tabular Splitter = new Tabular(2); CString Left = new CString(); CString Right = new CString(); Assistment.Texts.Text Name = base.GetName(Charakter); Oben.add(Splitter); Splitter.addRow(); Splitter[0, 0] = Left; Splitter[0, 1] = Right; Tabular Talente = GetTalente(Charakter, seite); //if (Talente.Rows > 0) // Talente.setRowPen(Talente.Rows - 1, Pens.Black); //Talente.addRow(); //Talente[Talente.Rows - 1, 0] = this.GetHarte(Charakter); Right.add(Talente.Geometry(5)); Right.alignment = 0.5f; Left.alignment = 0.5f; Left.addWhitespace(seite); Left.addAbsatz(); Left.add(Name.Geometry(30)); Left.addAbsatz(); #region Porträt try { Image img = Image.FromFile(Charakter.Charakter.Super.RP.Portrait); Left.add(new DynamicImageBox(img, 100, 100, 400, 400)); } catch (Exception) { } #endregion ab = 18; Title = new FontMeasurer("Calibri", 16); Normal = new FontMeasurer("Calibri", 14); Tabular t = new Tabular(3); t.addRow(2); t[0, 0] = GetAttributFertigkeitenTabelle(Charakter, Universe.Attribute.GetElement("Stärke")).Geometry(ab); t[0, 1] = GetAttributFertigkeitenTabelle(Charakter, Universe.Attribute.GetElement("Geschick")).Geometry(ab); t[0, 2] = GetAttributFertigkeitenTabelle(Charakter, Universe.Attribute.GetElement("Charisma")).Geometry(ab); t[1, 0] = GetAttributFertigkeitenTabelle(Charakter, Universe.Attribute.GetElement("Intelligenz")).Geometry(ab); t[1, 1] = GetAttributFertigkeitenTabelle(Charakter, Universe.Attribute.GetElement("Intuition")).Geometry(ab); t[1, 2] = GetAttributFertigkeitenTabelle(Charakter, Universe.Attribute.GetElement("Wahrnehmung")).Geometry(ab); Unten.add(t); Title = new FontMeasurer("Calibri", 12); Normal = new FontMeasurer("Calibri", 11); ab = 5; return Haupt.Geometry(rand); }
public Tabular Tabelle(xFont font, int[] fert, int[] attribute) { ZVektor<Fertigkeit> GW = Charakter.GrundwerteFertigkeiten(); ZVektor<Attribut> GWA = Charakter.Charakter.Super.Attribute.Attribute; Tabular Fertigkeiten = new Tabular(3); Fertigkeiten.addRow(19); Fertigkeiten[0, 1] = new Word("GW ", Brushes.Black, font, 0, Pens.Black); Fertigkeiten[0, 2] = new Word("MW", Brushes.Black, font, 0, Pens.Black); int[] zeilen = new int[]{ 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 14, 15, 16, 17, 18, 20, 21, 22, 23, 24, 26, 27, 28, 29, 30 }; for (int i = 0; i < fert.Length; i++) { Fertigkeit f = Universe.Fertigkeiten.Menge[fert[i]]; Fertigkeiten[zeilen[i], 0] = new Word(" " + f.SchreibName, Brushes.Black, font, 0, Pens.Black); Fertigkeiten[zeilen[i], 1] = new Word( GW[f] != 0 ? GW[f] + "" : "", Brushes.Black, font, 0, Pens.Black); Fertigkeiten[zeilen[i], 2] = new Word( Charakter.Statisch.Fertigkeiten.FinalWert.Value().Get(f) != 0 ? Charakter.Statisch.Fertigkeiten.FinalWert.Value().Get(f) + "" : "", Brushes.Black, font, 0, Pens.Black); } zeilen = new int[] { 1, 7, 13, 19, 25 }; for (int i = 0; i < attribute.Length; i++) { Attribut a = Universe.Attribute.Menge[attribute[i]]; Fertigkeiten[zeilen[i], 0] = new Word(a.SchreibName, Brushes.Black, font, 0, Pens.Black); Fertigkeiten[zeilen[i], 1] = new Word( GWA[a] != 0 ? GWA[a] + "" : "" , Brushes.Black, font, 0, Pens.Black); Fertigkeiten[zeilen[i], 2] = new Word( Charakter.Statisch.Attribute.FinalWert.Value().Get(a) != 0 ? Charakter.Statisch.Attribute.FinalWert.Value().Get(a) + "" : "", Brushes.Black, font, 0, Pens.Black); Fertigkeiten.setRowPen(zeilen[i], Pens.Black); if (zeilen[i] == 1) Fertigkeiten.setRowPen(zeilen[i] - 1, Pens.Black); else Fertigkeiten[zeilen[i] - 1, 0] += new Whitespace(0, 50, false); } return Fertigkeiten; }