terraner brauchen munition -erledigt!

Hier ist der ideale Ort um über Scripts und Mods für X³: Reunion zu diskutieren.

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

Post Reply
User avatar
Joda
Posts: 217
Joined: Sun, 18. Jan 04, 23:44
xr

terraner brauchen munition -erledigt!

Post by Joda » Sat, 22. Sep 07, 15:34

Hi
brauche mal wieder hilfe!
will ein script erstellen das nur 1mal! ausgeführt wird und bei allen terraner schiffen Projektilkanonen Munition in den laderaum einfügt, denn ich hab die terranerwaffen modifiziert so das sie munition verbrauchen
und ohne munition nix los!!

Hab da schon mal was probiert:

Setup script:

Code: Select all

$globalvar = get global variable: name= $globalvar.terran
if not $globalvar == [TRUE]
START [THIS] -> call script "plugin.terran.install" :
Terran add notoriety: race= Player value= 100000
set global variable: name= $globalvar.terran value= [TRUE]
end
return null
Hauptscript:

Code: Select all

$ship1 = get ship array: of race Terran class/type= Odin
$ship2 = get ship array: of race Terran class/type= Thor
$ship3 = get ship array: of race Terran class/type= Walkuere
$ship4 = get ship array: of race Terran class/type= Mjoellnir

= $ship1 -> install 10000 units of Projektilkanonen_Munition S_1

= $ship2 -> install 1000 units of Projektilkanonen_Munition S_1

= $ship3 -> install 100 units of Projektilkanonen_Munition S_1

= $ship4 -> install 100 units of Projektilkanonen_Munition S_1

return null
Leider funktioniert das ganze nicht so wie es soll :evil:
hoffe ein freundlicher scripter kann da helfen[/code]
Last edited by Joda on Sun, 23. Sep 07, 00:00, edited 1 time in total.

User avatar
GehirnPfirsich
Posts: 1128
Joined: Tue, 3. Jan 06, 23:55
x3

Post by GehirnPfirsich » Sat, 22. Sep 07, 16:42

verfrachte das ganze in ein Setup Script und mache folgendes:

Code: Select all

001   skip if not get global variable: name=$setup.bla.nureinmal
002    return null
003   set global variable: name=$setup.bla.nureinmal value=[TRUE]
.......
Greetings GP

User avatar
Ogerboss
Posts: 1465
Joined: Sat, 5. Aug 06, 22:05
x3tc

Post by Ogerboss » Sat, 22. Sep 07, 16:57

$ship1, $ship2, $ship3 uns $ship4 sind Arrays und keine Objekte und deswegen bringt das auch nix, weil dein Array für die folgenden Befehle kein gültiges Bezugsobjekt ist.

Du müsstest die Länge jedes Arrays abfragen und dann in einer Schleife nacheinander alle Elemente des Arrays abarbeiten. ;)

Arraybefehle des SEs
Arrays
[ external image ]
***modified*** und stolz drauf

User avatar
Joda
Posts: 217
Joined: Sun, 18. Jan 04, 23:44
xr

Post by Joda » Sat, 22. Sep 07, 18:20

Danke an euch beide

@ Ogerboss
du sagst das so leicht! puh wenn man sich da nicht so auskennt wird das verdamt schwer!
also mit <RetVar/IF> = size of array <Var/Array> die länge festlegen
und das mit der schleife?? wie soll ich jetzt die elemente abarbeiten?
<RetVar/IF> übergibt doch nur ne zahl! hab ich das so richtig verstanden?

@Gehirn Pfisich
das setup script habe ich au f der website http://forum.egosoft.com/viewtopic.php? ... e+variable
aufgeschappt, aber deine variante hört sich auch gut an!

User avatar
Ogerboss
Posts: 1465
Joined: Sat, 5. Aug 06, 22:05
x3tc

Post by Ogerboss » Sat, 22. Sep 07, 19:26

<RetVar/IF> = size of array <Var/Array> <---Also meines Erachtens steht da eindeutig, was der Befehl macht. ;)

Und zum Thema Schleifen: Schleifen (Loops)

Und RetVar kann je nach Befehl alles mögliche sein, Strings, Integer, logische Argumente, Arrays, Objekte, Objekttypen, jenachdem, was vorgesehen ist. ;)

P.s. Die Seite beißt nicht, die meisten Anfängerfragen kannst du dir dort durch das Lesen der Tutorials selbst beantworten. ;) :)
[ external image ]
***modified*** und stolz drauf

User avatar
Joda
Posts: 217
Joined: Sun, 18. Jan 04, 23:44
xr

Post by Joda » Sat, 22. Sep 07, 19:30

ja ich kenn die seite schon länger und habe sie auch durchgelesen :D
aber das mit dem verstehen is halt so ne sache!

UniTrader
Moderator (Script&Mod)
Moderator (Script&Mod)
Posts: 14571
Joined: Sun, 20. Nov 05, 22:45
x4

Post by UniTrader » Sat, 22. Sep 07, 19:51

dann halt nen kleiner allgemeiner Beispielcode zum abarbeiten Arrays :roll:

Code: Select all

$size = size of array $array
while $size
 dec $size
 $element = $array [ $size ]
 - - - hier mit dem Elemenmt die gewünschten Vorgänge ausführen - - -
end
PS das end bekommst du mit 3 * Eingabe (General Commands -> Flow Control -> end conditional)
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
Joda
Posts: 217
Joined: Sun, 18. Jan 04, 23:44
xr

Post by Joda » Sat, 22. Sep 07, 22:51

alsoooooo
hab das mal probiert und zwar so

setup.terran.xml

Code: Select all

skip if not get global variable: name= $setup.terran
return null
set global variable: name= $setup.terran value= [TRUE]

$ship1 = get ship array: of race Terran class/type= Odin

$size = size of array $ship1
while $size
dec $size =
$element =  $ship1 [ $size ]
= $element -> install 10000 units of Projektilkanonen_Munition S_1
end
return null
hat aber leider auch nicht funktioniert!

UniTrader
Moderator (Script&Mod)
Moderator (Script&Mod)
Posts: 14571
Joined: Sun, 20. Nov 05, 22:45
x4

Post by UniTrader » Sat, 22. Sep 07, 23:14

nimm mal add statt install :roll: ist immerhin keine Waffe oder Schild was du einbaust...

des weiteren verwendest du den Namen für die GV falsch, das muss nen String sein und keine Var (in diesem fall wird nämlich der Inhalt der Var genommen, also warscheinlich null)

ausserdem wäre es hilfreich zu wissen ob überhaupt Schiffe gefunden wurden.. schreib am besten mal jedes Element oder das Array der Schiffe ins Logbuch...
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
Joda
Posts: 217
Joined: Sun, 18. Jan 04, 23:44
xr

Post by Joda » Sat, 22. Sep 07, 23:59

also jetzt hats geklappt :D
und zwar so:

Code: Select all

skip if not get global variable: name= "abc"
return null
set global variable: name= "abc" value= [TRUE]

$ship1 = get ship array: of race Terran class/type= Odin

$size = size of array $ship1
while $size
dec $size =
$element =  $ship1 [ $size ]
= $element -> add 1000000 units of Projektilkanonen_Munition S_1
= $element -> add -1 units of AEGIS Waffensystem
end

$ship2 = get ship array: of race Terran class/type= Thor
$size = size of array $ship2
while $size
dec $size =
$element =  $ship2 [ $size ]
= $element -> add 1000000 units of Projektilkanonen_Munition S_1
= $element -> add -1 units of AEGIS Waffensystem
end

$ship3 = get ship array: of race Terran class/type= Mjoellnir
$size = size of array $ship3
while $size
dec $size =
$element =  $ship3 [ $size ]
= $element -> add 1000000 units of Projektilkanonen_Munition S_1
= $element -> add -1 units of AEGIS Waffensystem
end

$ship4 = get ship array: of race Terran class/type= Walkuere
$size = size of array $ship4
while $size
dec $size =
$element =  $ship4 [ $size ]
= $element -> add 1000000 units of Projektilkanonen_Munition S_1
= $element -> add -1 units of AEGIS Waffensystem
end
return null
hab das so gemacht wie du vorgeschlagen hast - nen string anstelle var und add und nicht install (das war natürlich ein dummer fehler!)
aber mal dumm gefragt geht das evtl auch mit install?

naja aber is schon super das hier im forum so viele hilfsbereite leute unterwegs sind! danke

UniTrader
Moderator (Script&Mod)
Moderator (Script&Mod)
Posts: 14571
Joined: Sun, 20. Nov 05, 22:45
x4

Post by UniTrader » Sun, 23. Sep 07, 00:20

ich kanns dir jetzt nicht definitiv sagen, aber auf jeden fall ist dieses Kommando hauptsächlich dafür ausgelegt Waffen und Schilde direkt in die dafür vorgesehenen Buchten einzubauen statt sie nur in den Laderaum zu setzen... beim entfernen von Waren gibt es mit diesem Kommando auf jeden fall probs, das hinzufügen funktioniert aber iirc....
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 ;)

Post Reply

Return to “X³: Reunion - Scripts und Modding”