habe da ein kleines Script verfasst, dass eigentlich nur ein paar Informationen aus dem Spiel leiern sollte. Ich habe nämlich rausgekriegt (ich weis, die Info ist nicht neu), dass die create-Funktionen im Parameter type neben der Beschreibung des Typs (also einem Text) auch Zahlen akzeptieren. Zumindest ist das bei der Funktion create ship und den Funktionen zu den Ausstattungsteilen (wie Asteroiden oder Sonnen so) -bei denen ist es ja auch im Handbuch erläutert und aufgeschlüsselt. Nun wollte ich das Gleiche auch mit den Stationen machen, auch, um heraus zu bekommen, was das Spiel so alles anbietet (bei create flying ware habe ich unter der main type 16 so einiges gefunden, dass im Spiel nicht erscheint). Die Stationen sollen also nicht im weiteren Spielverlauf erscheinen, mir geht es darum, zu erfahren, welche Nummer zu welcher Station gehört. Allerdings: Das Ding will einfach nicht. Wenn die create-Funktion scheitert, gibt sie null zurück und die Nachricht fällt dementsprechend aus -und genau das passiert immer, ganz gleich, welche Nummern ich erzeugen lasse. Funktioniert das hier mit Nummern nicht oder habe ich im Script was falsch gemacht? Könnte da mal jemand drübergucken?
Das Script:
Code: Select all
Arguments
1: UGStart , Nummer , 'Erste Untergruppe'
2: UGEnd , Nummer , 'Letzte Untergruppe'
3: ObjektD , Nummer , 'Objekt-Distanz zum Bezugspunkt'
Source Text
001 $ContD = 1000
002 @ = wait 15000 ms
003 * Eigentlicher Anfang nach Wartezeit zur Initialisierung des Spielers
004 $Sektor = [THIS] -> get sector
005 skip if not [THIS] -> is docked
006 return null
007 $OrtX = [THIS] -> get x position
008 $OrtY = [THIS] -> get y position
009 $OrtZ = [THIS] -> get z position
010 $UGCount = 0
011 $UGRun = $UGStart
012 if $UGStart > $UGMax
013 return null
014 else if $UGEnd > $UGMax
015 $UGEnd = $UGMax
016 end
017 skip if not $UGStart > $UGEnd
018 return null
019 $OrtY = $OrtY + $ObjektD + 1000
020 $Owner = [PLAYERSHIP] -> get owner race
021 while not $UGRun > $UGEnd
022 $Station = create station: type=$UGRun owner=$Owner addto=$Sektor x=$OrtX y=$OrtY z=$OrtZ
023 if $Station
024 $Nachricht = 'Gerade wurde eine Station der Art '
025 $Nachricht = $Nachricht + $Station
026 $Nachricht = $Nachricht + ' , Nebengruppe '
027 $Nachricht = $Nachricht + $UGRun
028 $Nachricht = $Nachricht + ' an den Koordinaten '
029 $Nachricht = $Nachricht + 'X ' + $OrtX
030 $Nachricht = $Nachricht + ' , Y ' + $OrtY
031 $Nachricht = $Nachricht + ' , Z ' + $OrtZ
032 $Nachricht = $Nachricht + ' im Sektor ' + $Sektor + ' erzeugt.'
033 $ID = $Station -> get ID code
034 $Nachricht = $Nachricht + ' Die Station hat die ID ' + $ID
035 else
036 $Nachricht = 'Die Erzeugung einer Station misslang aus unbekanntem Grund.'
037 end
038 send incoming message $Nachricht to player: display it=[FALSE]
039 play sample 1100
040 play sample 903
041 $OrtY = $OrtY + $ContD
042 inc $UGRun =
043 inc $UGCount =
044 end
045 $Nachricht = 'Habe fertig!'
046 = speak text: page=13 id=1271 priority=2
047 send incoming message $Nachricht to player: display it=[FALSE]
048 return null
Tschüß und Danke
ManfredP