F: Eigene Schiffe eines Sectors

Hier ist der ideale Ort um über Scripts und Mods für X³: Terran Conflict und X³: Albion Prelude zu diskutieren.

Moderators: Scripting / Modding Moderators, Moderatoren für Deutsches X-Forum

Ralf Fontana
Posts: 82
Joined: Tue, 20. Dec 05, 22:52
x3

F: Eigene Schiffe eines Sectors

Post by Ralf Fontana »

Hallo miteinander,

ich bin noch blutiger Anfänger im Scripten, daher bitte habt nachsicht...


Ich möchte in einem Script alle eigenen Schiffe abklappern. habe aber keinerlei Plan wie ich dazu vorgehen muss.

Irgendjemand bereit mir auf die Sprünge zu helfen? Gibts vielleicht ein Script das ich als Vorlage verwenden kann weil es ähnliches bereits macht? (gut geklaut ist halb gewonnen)
User avatar
Saetan
Posts: 3223
Joined: Wed, 1. Feb 06, 19:26
x4

Post by Saetan »

Was du nun genau mit dem abklappern auch immer meinen möchtest, jedenfalls gibts einen ganz eigenen Script-Befehl um alle Spielerschiffe eines Sektors in ein Array zu packen:

<RetVar> = <RefObj> get player owned ship array from sector ... verlinkte Seite ist zwar unter X³:R entstanden, weitgehend aber auch auf X³:TC anwendbar.
User avatar
ScRaT_GER
Posts: 1962
Joined: Tue, 8. Jan 08, 18:19
x3tc

Post by ScRaT_GER »

Das kannst du mit einem einzigen Befehl erledigen.

Universe and Sector Commands -> $array = get ship array of race = Player type = null

Mit diesem Befehl würdest du alle Schiffe die dem Spieler gehören, unabhängig vom Typ, erfassen.

In den "Universe and Sector Commands" findest du auch noch weitere Befehle, einer davon findet auch alle spielereigenen Schiffe in einem bestimmten Sektor.

MfG,
ScRaT

EDIT: Zu spät. ^^
UniTrader
Moderator (Script&Mod)
Moderator (Script&Mod)
Posts: 14571
Joined: Sun, 20. Nov 05, 22:45
x4

Post by UniTrader »

$Ships.arr = »Sektor« get player owned ship array from sector
$Ships.size = size of array $Ships.arr
while $Ships.size
dec $Ships.size =
$Ship = $Ships.arr[$Ships.size]
... hier mit $Ship anstellen, was du willst
end (conditional)


kurze erklärung, für was die befehle sind: (selbe reihenfolge wie oben)
- holt die Liste aller Schiffe im Spielerbesitz in »Sektor«
- fragt die Länge dieser Liste ab (Zähler)
- wiederholt die folgenden Befehle so lange bis der Zähler für die Liste 0 ist
- verringert den Zähler bei jeden durchlauf um 1
- holt sich aus der Liste das aktuelle Schiff

sry wenn das etwas unverständlich ist aber zu mehr habe ich gerade weder zeit noch nerven...
if not stated otherwise everything i post is licensed under WTFPL

Ich mache keine S&M-Auftragsarbeiten, aber wenn es fragen gibt wie man etwas umsetzen kann helfe ich gerne weiter ;)

I wont do Script&Mod Request work, but if there are questions how to do something i will GLaDly help ;)
User avatar
Generalwest
Posts: 2764
Joined: Thu, 31. May 07, 18:07
x4

Post by Generalwest »

und wenn man UniTraders erste Zeile durch den Befehl von ScRaT_GER $array = get ship array of race = Player type = null ersetzt bekommst du alle Schiffe von dir egal wo sie sind (in welchem Sektor sie auch sein Mögen)

Die Var $array in dem Beispiel durch $Ships.arr ersetzen damits auch wieder zusammen passt.
Ralf Fontana
Posts: 82
Joined: Tue, 20. Dec 05, 22:52
x3

Ganz herzliches Dankeschön!

Post by Ralf Fontana »

Ein ganz herzliches Dankeschön!

Ich hatte nach den ersten Antworten schon angefangen mich durch die MSCI zu wühlen weil es noch an allen Ecken und Enden fehlt - aber mit allen Hinweisen zusammen ist das ganze ja schon _sehr_ anfängerfreundlich vorgekaut (was ich nicht mal erwartet habe) und ich kann mich auf meine eigentliche Aufgabe konzentrieren.

merci!

Return to “X³: Terran Conflict / Albion Prelude - Scripts und Modding”