Der ISG Trader (V2-Version) und der ISG Builder (V2-Version) teilen sich die selbe ID 200901.
Ist aufgefallen, weil ich das Evakuierungssktipt update.
Wenn möglich, bitte die ID des Builders ändern.
[ISG] ID Überlagerung
Moderator: Moderatoren2
Forumsregeln
ASC-Bugmeldungen im Bugzilla posten!
ASC-Bugmeldungen im Bugzilla posten!
- motsch
- Stabsfeldwebel

- Beiträge: 1512
- Registriert: Mi 17. Jun 2009, 18:10
- Einheitenset: Cromoner
- Wohnort: Baiersdorf
[ISG] ID Überlagerung
Gruß
motsch
motsch
Re: [ISG] ID Überlagerung
Kann das Script (bzw. LUA) Gebäude und Units nicht unterscheiden?
[enjoy the future!]
- motsch
- Stabsfeldwebel

- Beiträge: 1512
- Registriert: Mi 17. Jun 2009, 18:10
- Einheitenset: Cromoner
- Wohnort: Baiersdorf
Re: [ISG] ID Überlagerung
Doch, kann es.
Das Skript kann auch Gebäude als Raumschiffe erkennen, momentan über die ID. So wie es jetzt ist, wird der Builder falls nötig ausgeladen und nicht mehr eingeladen. Die Prüfung auf raumflugfähige Gebäude gestaltet sich so:
Wenn das Gebäude dem Spieler gehört (logisch, andere interessieren zum Einladen nicht)
und die ID des Gebäudes als Raumschiff zählt (d. h. im Skript ist die ID in der Liste der Raumschiffe zu finden)
und das Gebäude sichtbar ist ( es soll ja auch unsichtbare Trader geben, die dann zu den Kartenbestandteilen gehören)
dann ist das Gebäude ein verwendbares Raumschiff.
Denkbar ist, die Liste mit den Raumschiff-IDs zu teilen in IDs für Gebäuderaumschiffe und IDs für Einheitenraumschiffe. Dann muss an jeder Stelle im Skript die Prüfung auf isSpaceship() durchgegangen werden und das Argument geändert werden, das den Namen der Vergleichsliste trägt.
Das kann nicht nur dauern und ist fehleranfällig sondern ist auch bei zukünftigen Erweiterungen hinderlich. Bei neu hinzukommenden Raumschiffen muss die ID in der passenden Liste eingetragen werden, da es dann zwei Listen diesbezüglich gibt. Aber das ist nicht so schlimm, in naher Zukunft macht's dann ein anderer
Das Skript kann auch Gebäude als Raumschiffe erkennen, momentan über die ID. So wie es jetzt ist, wird der Builder falls nötig ausgeladen und nicht mehr eingeladen. Die Prüfung auf raumflugfähige Gebäude gestaltet sich so:
Wenn das Gebäude dem Spieler gehört (logisch, andere interessieren zum Einladen nicht)
und die ID des Gebäudes als Raumschiff zählt (d. h. im Skript ist die ID in der Liste der Raumschiffe zu finden)
und das Gebäude sichtbar ist ( es soll ja auch unsichtbare Trader geben, die dann zu den Kartenbestandteilen gehören)
dann ist das Gebäude ein verwendbares Raumschiff.
Denkbar ist, die Liste mit den Raumschiff-IDs zu teilen in IDs für Gebäuderaumschiffe und IDs für Einheitenraumschiffe. Dann muss an jeder Stelle im Skript die Prüfung auf isSpaceship() durchgegangen werden und das Argument geändert werden, das den Namen der Vergleichsliste trägt.
Das kann nicht nur dauern und ist fehleranfällig sondern ist auch bei zukünftigen Erweiterungen hinderlich. Bei neu hinzukommenden Raumschiffen muss die ID in der passenden Liste eingetragen werden, da es dann zwei Listen diesbezüglich gibt. Aber das ist nicht so schlimm, in naher Zukunft macht's dann ein anderer
Gruß
motsch
motsch
