Die Diskussion in
http://www.xforce-online.de/forum/index.php?action=vthread&forum=4&top ic=1570
dreht sich schon einige Zeit mehr um die Art der Zuweisung im Editor oder eine ähnlich hohen Ebene, in anderen Bereichen scheint man imho grob gleicher Meinung zu sein.
Deshalb mache ich hier mal einen getrennten Bereich zur Detailklärung.
Fest steht das es eine Möglichkeit geben muss, einem Alien eine feste Ausrüstung zuzuweisen. Die Auswahl dieser Ausrüstung kann mehr oder weniger zufällig sein, aber dies soll hier nicht weiter beachtet werden.
Im Bodeneinsatz ist die Ausrüstung auf jeden Fall festgelegt, jeder Zufall muss bis dahin verschwunden sein - und das ist die Speicherebene um die es mir hier geht.
Ich sehe drei verschiedene Ansatzpunkte für die Speicherung.
1.) komplette Einheitendaten
Aktuell wird im TEinsatz lediglich das Alien ohne Ausrüstung addiert, alle Werte für die Einheit und Ausrüstung entstehen erst mit dem Aufruf des Bodeneinsatzes.
Wenn man stattdessen im TEinsatz die Daten der Bodeneinsatz-Einheit inklusive der Fächer für die Hände, Rucksack etc. speichert, dann könnte man diese Einheit X vor dem TEinsatz.addeinheit(X) mit Befehlen wie Lege in rechte Hand, Lege in Gürtel, Lege in Rucksack, Panzerzuweisung etc. komplett ausrüsten.
Der Vorteil dieser Methode besteht darin, das die Daten genauso gespeichert werden wie bei späteren Zugriffen per Kartenskripten im Bodeneinsatz und das man relativ wenig an Datenänderungen vornehmen muss - die Definitionen müssen nur kopiert werden.
Allerdings ist die Zuweisung der Ausrüstung an die Einheit etwas aufwendiger, d.h. die Skripte werden umfassender und die Eingabe per Editor wird unwahrscheinlicher (da auch aufwendiger).
2.) Record eines Ausrüstungspaketes
Es wird dem Alien im TEinsatz ein zusätzlicher Datensatz Ausrüstung zugeordnet und dann mit Befehlen wie Alien.Ausrüstung.Panzerung:=ItemID diese Ausrüstung zugewiesen.
Das Datenpaket besteht dabei aus einer Reihe von Pflichtfeldern wie Panzerung, Waffe, Gürtel sowie einem Array für die Rucksackausrüstung etc.
Der Vorteil hier ist die einfache Skriptzuweisung und das Bodeneinsatzprogramm muss sich dann um die Zuordnung zur Einheit kümmern. Insbesondere dürfte hier die Zuweisung im Editor einfacher zu realisieren sein.
3.) Ausrüstungsliste
Es gibt eine frei definierte Ausrüstungsliste, bei der jedes Element lediglich aus einer Item-ID und einer Anzahl besteht (eventuell auf die Anzahl verzichten und mehrfache ID-Verwendung erlauben).
Der Vorteil hierdrin besteht darin, das man ohne Begrenzung jede Kombination von Gegenständen zuweisen kann und erst das Skript im Bodeneinsatz identifiziert, was aus der Ausrüstungsliste wofür da ist und mit den passenden Befehlen der Einheit zuordnet.
Dies lässt sich schnell umsetzen aber gerade die Ausrüstungszuordnung im Editor würde dann sehr abstrakt ablaufen - nicht jedermans sache.
Was haltet ihr jeweils von diesen Varianten oder seht Ihr noch andere Möglichkeiten?