[DSA Manager] Element-Klassen (Entwurf 1)
Status: Planning
Brought to you by:
alexnofftz
From: Alexander N. <lists@AlexNofftz.de> - 2001-11-14 12:35:29
|
Hi! Ich habe mir mal Gedanken zu meiner Klassierungsidee gemacht. Wenn ich jetzt hergehe, und teile jedes Element, das wir im DSA Manager verwenden wollen, in eine hierarchische Klassenstruktur mit Mehrfachvererbung ein, kann man sehr viele Konflikte, auf die wir bisher gestoßen sind, lösen: DSA Manager | |--> Charakter-Daten | | | |--> Beschreibung (Name, Alter, Größe...) | | | |--> Meta-Eigenschaften (abgeleitete Werte) | | | |--> Eigenschaften | | | | | |--> Nicht steigerbar (AT, PA, MR, ST, SO...) | | | | | \--> Steigerbar | | | | | |--> Gute Eigenschaften (MU, KL...) | | | | | \--> Schlechte Eigenschaften | | | |--> Variablen (LeP, AsP, AP...) | | | |--> Vor- und Nachteile | | | | | |--> Nachteile | | | | | \--> Vorteile | | | |--> Sonderfertigkeiten und Manöver | | | | | |--> Sonderfertigkeiten | | | | | \--> Manöver | | | |--> Talente und Zauber | | | | | |--> Talente | | | | | | | |--> Kampftalente | | | | | | | |--> Körperliche Talente | | | ... | | | | | \--> Zauber | | | | | |--> Antimagie | | ... | | | \--> Herkunft | | | |--> Rasse | | | |--> Kultur | | | \--> Profession | |--> Ausrüstung | | | |--> Kampf | | | | | |--> Waffen | | | | | \--> Rüstungen | | | | | |--> Stoff | | | | | |--> Metall | | | | | |--> Leder | | | | | |--> Helme | | | | | |--> Torso ... ... ... Wie man sehen kann, sind etwa die schlechten Eigenschaften gleichzeitig Nachteile und Eigenschaften, damit können wir wohl einige Diskussionen leicht lösen ;-) Außerdem kann man jedes Element mehreren Klassen zuordnen, damit könnte man z.B. einen Lederhelm gleichzeitig unter Leder und unter Helme einordnen. Zugeordnet wird alles über das class-Attribut, das als NMTOKEN definiert ist (wie unter HTML auch): <property id="MU" class="EigGut"> ... </property> ... <advantage id="NatJähzorn" class="Nachteil EigSchlecht"> Das mit <advantage> ist Absicht, die Einordnung in Vor- und Nachteile ist rein bedeutungsbezogen und hat für die Definition keinen Einfluss, denn dies wird über die Klasse fest gelegt. Denkbar wäre auch: <property id="NatJähzorn" class="Nachteil EigSchlecht"> Vielleicht sogar besser, wegen der Senkungsregeln. Jetzt kommt der zweite Clue: Alle Klassen erben alle Definitionen, Modifikationen etc. ihrer Vaterklasse! Damit brauche ich z.B. bei den schlechten Eigenschaften nur einmal festzulegen, dass statt zum Steigern dem Base-Wert (21-Base) heran gezogen werden soll, und schon kann ich die schlechten Eigenschaften wie normale Eigenschaften definieren. Dritter Punkt: Da alle Elemente ebenfalls in diese Klassenstrukur eingeordnet sind, brauche ich mich für Ableitungen oder den Charakterbögen nur darauf zu beziehen: <property id="MyJähzorn" ref="NatJähzorn"> <value base="7"/> </property> Eventuell kann man das ref-Attribut sogar als xlink definieren, aber mal schauen, was Xerces aus solchen Angaben macht... Bis dann, Alex -- Alexander Nofftz, Leverkusen, Germany http://www.AlexNofftz.de Ale...@em... |