Im Fabrikbesitz befindliche Schiffe

Hier ist der ideale Ort um über Scripts und Mods für X²: Die Bedrohung zu diskutieren.

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

User avatar
MODIFIED
Posts: 1365
Joined: Tue, 30. Mar 04, 00:15
x3

Im Fabrikbesitz befindliche Schiffe

Post by MODIFIED »

Bitte um Ünterstützung.
Mit welchem Befehl oder wie kann ich Schiffe welche sowohl im Besitz einer Fab sind und als auch Schiffe, welche dort angedockt sind in jeweils verschiedene Arrays ausgeben.
[ external image ]
Saya Kho hat ihren Raumanzug verlassen, dieser Raumanzug gehört nun ihnen.
Bret Serra hat diese Welt verlassen, diese Welt gehört nun ihnen.
James T.
Posts: 660
Joined: Wed, 10. Mar 04, 01:25
x3

Post by James T. »

Ich versuche mal eine Antwort :-)

In der Befehls liste 1.4 steht so ein Befehl drin 'Get Ship Array from Station' oder so ähnlich. Ich weiß aber nicht, ob der für deine Zwecke reicht oder was der überhaupt tut.

Ansonsten kannst du dir mal die BPH anschauen, da ist eine Funktion drin, die alle Schiffe mit der selben Heimatbasis findet.

Ich hoffe, das hilft.

Gruß, James T.
ticaki
Posts: 4861
Joined: Wed, 6. Nov 02, 20:31
x3

Post by ticaki »

Code: Select all

005   $X = get max sectors in x direction
006   while $X
007    dec $X = 
008    $Y = get max sectors in y direction
009    while $Y
010     dec $Y = 
011     $sector = get sector from universe index: x=$X, y=$Y
012     skip if $sector
013      continue
014 @   = wait 5 ms
015     $stationlist =  find station: sector=$sector class or type=null race=null flags=[Find.Multiple] refobj=null maxdist=999999 maxnum=5000 refpos=null
016     append $sector to array $stationlist
017     $stationlist.size =  size of array $stationlist
018     $Bigshiplist =  find ship: sector=$sector class or type=Big Ship race=null flags=[Find.Multiple] refobj=null maxdist=null maxnum=1000 refpos=null
019     if $Bigshiplist
020      $bigship.size =  size of array $Bigshiplist
021      $resize.size = $stationlist.size + $bigship.size
022      resize array $stationlist to $resize.size
023      copy array $Bigshiplist index 0 ... $bigship.size into array $stationlist at index $stationlist.size
024     end
025     $stationlist.size =  size of array $stationlist
026     while $stationlist.size
027      dec $stationlist.size = 
028      $station = $stationlist[$stationlist.size]
029      $tmp.shiplist = $station -> find ship: class or type=ship race=Player flags=[Find.Multiple] refobj=null maxnum=10000  with homebase= $MyStation
030      skip if $tmp.shiplist
031       continue

und ab hier mußt du das Array immer an ein anderes hinzufügen per resize und copy

Gruß ticaki

P.S. aus dem Codeschnipsel sollte sich deine andere Frage von alleine beantworten
Last edited by ticaki on Tue, 20. Jul 04, 23:43, edited 1 time in total.
Zur Zeit nicht aktiv
User avatar
MODIFIED
Posts: 1365
Joined: Tue, 30. Mar 04, 00:15
x3

Post by MODIFIED »

James T. wrote:...
Ansonsten kannst du dir mal die BPH anschauen, da ist eine Funktion drin, die alle Schiffe mit der selben Heimatbasis findet.
Werd mal mein Glück da probieren.
Wo kann man die downloaden ? Upps :D
THX @´James T
Last edited by MODIFIED on Tue, 20. Jul 04, 23:22, edited 1 time in total.
[ external image ]
Saya Kho hat ihren Raumanzug verlassen, dieser Raumanzug gehört nun ihnen.
Bret Serra hat diese Welt verlassen, diese Welt gehört nun ihnen.
User avatar
MODIFIED
Posts: 1365
Joined: Tue, 30. Mar 04, 00:15
x3

Post by MODIFIED »

@ticaki
THX
[ external image ]
Saya Kho hat ihren Raumanzug verlassen, dieser Raumanzug gehört nun ihnen.
Bret Serra hat diese Welt verlassen, diese Welt gehört nun ihnen.
laprican
Posts: 196
Joined: Fri, 13. Feb 04, 16:56
x2

Post by laprican »

hm...
018 $Bigshiplist = find ship: sector=$sector class or type=Big Ship race=null flags=[Find.Multiple] refobj=null maxdist=null maxnum=null refpos=null
liefert das wirklich die bigschips?
weil ich musste bisher bei maxnum immer ne zahl angeben, damit der welche zurücgibt, oder verhält sich das bei bigship anders?
ticaki
Posts: 4861
Joined: Wed, 6. Nov 02, 20:31
x3

Post by ticaki »

laprican wrote:hm...
018 $Bigshiplist = find ship: sector=$sector class or type=Big Ship race=null flags=[Find.Multiple] refobj=null maxdist=null maxnum=null refpos=null
liefert das wirklich die bigschips?
weil ich musste bisher bei maxnum immer ne zahl angeben, damit der welche zurücgibt, oder verhält sich das bei bigship anders?
Nein das ist ein Flüchtigkeitsfehler meinerseits... Danke ;)

Gruß ticaki

P.S. ich korrigiere es!
Zur Zeit nicht aktiv

Return to “X²: Die Bedrohung - Scripts und Modding”