X/Y Position von Sektor ermitteln
Moderators: Scripting / Modding Moderators, Moderatoren für Deutsches X-Forum
-
- Posts: 97
- Joined: Tue, 23. Mar 04, 10:00
X/Y Position von Sektor ermitteln
Hi @ all
Gibt es eine Möglichkeit aus dem Rückgabewert von
6.004 <RetVar/IF> <RefObj> get sector
die X- und Y-Koordinaten in der Galaxy zu ermitteln?
Oder habe ich eine andere, elegante Methode übersehen?
Sehe sonst nur die Alternative, den RetVar aus get sector in ein Array zu legen und alle Sektoren mit einer Doppelschleife abzufragen.
MfG
Gibt es eine Möglichkeit aus dem Rückgabewert von
6.004 <RetVar/IF> <RefObj> get sector
die X- und Y-Koordinaten in der Galaxy zu ermitteln?
Oder habe ich eine andere, elegante Methode übersehen?
Sehe sonst nur die Alternative, den RetVar aus get sector in ein Array zu legen und alle Sektoren mit einer Doppelschleife abzufragen.
MfG
Last edited by hraban on Mon, 10. May 04, 10:49, edited 1 time in total.
Handel ist Krieg, der Einsatz von Waffen ist Ressourcenverschwendung!
-
- Posts: 817
- Joined: Wed, 7. Apr 04, 15:19
Vieleicht damit?
Weis jetzt nicht ob <RefObj> der Sector selbst oder ein Obj im sektor ist...
Code: Select all
7.005 <RetVar> = <RefObj> get universe x index
7.006 <RetVar> = <RefObj> get universe y index
-
- Posts: 97
- Joined: Tue, 23. Mar 04, 10:00
Danke Orka
Danke Orka
<RefObj> dürfte wohl ein Objekt und kein Sector sein.
Werde es trotzdem mal ausprobieren. Weniger als "null" kann ich nicht bekommen.
MfG
<RefObj> dürfte wohl ein Objekt und kein Sector sein.
Werde es trotzdem mal ausprobieren. Weniger als "null" kann ich nicht bekommen.
MfG
Handel ist Krieg, der Einsatz von Waffen ist Ressourcenverschwendung!
-
- Posts: 4861
- Joined: Wed, 6. Nov 02, 20:31
-
- Posts: 97
- Joined: Tue, 23. Mar 04, 10:00
@ Ticaki
Dann gehört die Beschreibung von
7.005 <RetVar> = <RefObj> get universe x index
7.006 <RetVar> = <RefObj> get universe y index
geändert ... oder ist sector ein Object
Wir Zeit für eine Dokumentation der Script-Befehle!
MfG
Dann gehört die Beschreibung von
7.005 <RetVar> = <RefObj> get universe x index
7.006 <RetVar> = <RefObj> get universe y index
geändert ... oder ist sector ein Object

Wir Zeit für eine Dokumentation der Script-Befehle!
MfG
Handel ist Krieg, der Einsatz von Waffen ist Ressourcenverschwendung!
-
- Posts: 4861
- Joined: Wed, 6. Nov 02, 20:31
-
- Posts: 97
- Joined: Tue, 23. Mar 04, 10:00
@ ticaki
Danke für den Hinweis
Nachdem Du bereits so viele Erfahrungen mit dem Scripten hast - Wie verhält es sich mit rekursiven Script-Aufrufen und wieviele rekursive Aufrufe verträgt X2?
Bin immer noch hinter der Idee des alternativen "Finde Weg zum Ziel und meide feindliche Sektoren" her. Bisher aber noch theoretisch. Hoffe heute Abend ein wenig testen zu können.
MfG
Danke für den Hinweis

Nachdem Du bereits so viele Erfahrungen mit dem Scripten hast - Wie verhält es sich mit rekursiven Script-Aufrufen und wieviele rekursive Aufrufe verträgt X2?
Bin immer noch hinter der Idee des alternativen "Finde Weg zum Ziel und meide feindliche Sektoren" her. Bisher aber noch theoretisch. Hoffe heute Abend ein wenig testen zu können.
MfG
Handel ist Krieg, der Einsatz von Waffen ist Ressourcenverschwendung!
-
- Posts: 4861
- Joined: Wed, 6. Nov 02, 20:31
-
- Posts: 97
- Joined: Tue, 23. Mar 04, 10:00
-
- Posts: 1087
- Joined: Sun, 7. Mar 04, 23:03
-
- Posts: 97
- Joined: Tue, 23. Mar 04, 10:00
@ XeHonk
Dann ist es eine Rekursive iteration
(Die Iteration (von lateinisch iterare, "wiederholen") ist eine Methode, sich der Lösung eines Rechenproblems schrittweise, aber zielgerichtet anzunähern. Sie besteht in der wiederholten Anwendung desselben Rechenverfahrens.)
Dies erreiche ich, indem ich eine Routine mit gleichem Rechenverfahren und der Übergabe des Ergebnisses aus dieser selbst Aufrufe.
Das ist keine Schleife, denn eine Schleife hat ein definiertes Ende.
Die "Berechnung" des Flugweges muß ja nur einmal erfolgen, nämlich bei der Festlegung des Ziels. Der Flugweg wird danach in einem Array abgelegt, welches abgearbeitet wird.
Im Grunde das selbe wie:
4.003 @ <RetVar/IF> <RefObj> fly to sector <Var/Sector>
(Berechnet irgendwo den Weg für das Schiff / Das möchte ich ersetzen)
6.013 <RetVar/IF> get next sector on route from sector <Var/Sector> to sector <Var/Sector>
(Liefert den nächsten Sektor der angeflogen wird / Das steht in dem Array)
Und ... es stimmt, der berechnete Kurs berücksichtigt keine Änderungen, welche während dem Zielanflug auftreten. Soll auch gar nicht anders sein.
Nun muss ih aber mal den Code erstellen und Testen, sonst wird das gar nichts mehr
MfG
Dann ist es eine Rekursive iteration
(Die Iteration (von lateinisch iterare, "wiederholen") ist eine Methode, sich der Lösung eines Rechenproblems schrittweise, aber zielgerichtet anzunähern. Sie besteht in der wiederholten Anwendung desselben Rechenverfahrens.)

Dies erreiche ich, indem ich eine Routine mit gleichem Rechenverfahren und der Übergabe des Ergebnisses aus dieser selbst Aufrufe.
Das ist keine Schleife, denn eine Schleife hat ein definiertes Ende.
Die "Berechnung" des Flugweges muß ja nur einmal erfolgen, nämlich bei der Festlegung des Ziels. Der Flugweg wird danach in einem Array abgelegt, welches abgearbeitet wird.
Im Grunde das selbe wie:
4.003 @ <RetVar/IF> <RefObj> fly to sector <Var/Sector>
(Berechnet irgendwo den Weg für das Schiff / Das möchte ich ersetzen)
6.013 <RetVar/IF> get next sector on route from sector <Var/Sector> to sector <Var/Sector>
(Liefert den nächsten Sektor der angeflogen wird / Das steht in dem Array)
Und ... es stimmt, der berechnete Kurs berücksichtigt keine Änderungen, welche während dem Zielanflug auftreten. Soll auch gar nicht anders sein.
Nun muss ih aber mal den Code erstellen und Testen, sonst wird das gar nichts mehr

MfG
Handel ist Krieg, der Einsatz von Waffen ist Ressourcenverschwendung!