Construction Set Skriptthread zum Construction Set

Also meines Wissens geht das nicht,
aber du könntest das andere Script in das Bestehende einbauen.
Man kann es vielleicht auch mit einer Globalen Variable probieren,
hatte aber noch nie etwas mit den Globalen zutun.

mfg Kahmul
 
  • Like
Reaktionen: Almalexian
Würde man denselben script bei mehreren gegenständen, sagen wir mal schaltern einbauen, würden die dann zusammenhängen?

Also, ein Beispiel:
Schalter eins wird gedrückt, wenn testvaribale 0 ist, set to 1, wenn 1 ist, set to 2, wenn 2, set to 3, wenn 3 effekt auslösen

schalter zwei wird gedrückt, selbes schema, also, wenn bei schalter eins die testvariable auf 1 gesetzt wurde, würde dann schalter zwei mit demselben script die testvariable als 1 erkannt werden und dementsprechend auf 2 gesetzt werden?
 
Ja, du kannst eine Global definieren. Du kannst ihr sogar einen Wert geben, die sie zu Beginn des Spiels haben soll. Diese Gobal kannst du jederzeit in jedem Script beliebig ändern. Du darfst allerdings keine Variable mit gleichem Namen innerhalb eines anderen Scripts deklarieren. Beispiel: du definierst eine Glbaol namens Testvariable, dann darf in keinem einzigen Script eine Variable namens Testvariable deklarieren, also sowas: "short Testvariable" darf nicht dort stehen.
Die Glboal lässt sich im Script einfach per "set Testvariable to 1" auf 1 ändern.

Allerdings würde ich, wenn es sich vermeiden lässt, keine Globals verwenden und stattdessen Questvariablen.

Aber noch etwas zu deiner ursprünglichen Frage: Es ist möglich eine Variable im Script eines Objektes durch einen externen Script zu ändern. Das geht mit Referenzen. Dazu gibst du dem Objekt, bei dem die Variable verändert werden soll, einen eindeutigen Referenznamen und machst ein Häckchen bei "Persistent Reference". Und hier mal ein kurzes Beispiel, wie du dann eine Variable innerhalb der Referenz ändern kannst:
Code:
scn Scriptname

Begin OnActivate
set [Reference].Testvariable to 1
End

[Reference] steht hierbei für die Reference-ID, die du dem Objekt gegeben hast. Die eckigen Klammern müssen natürlich auch weg.

Welche der Varianten du letztenendes nimmst, ist dir überlassen ;)

Gildur
 
  • Like
Reaktionen: Almalexian
Vielen Dank :)

Wenn ich so verwegen sein darf, ich hab da noch eine Frage.

Ich habe bisher trotz ein paar tutorials nicht vollständig verstanden was eine float Variable ist und warum sie benutzt, ich hab mir gedacht, hier werden das bestimmt ein paar schlaue Leute wissen, denn ich komm leider nicht weiter.

Wäre sehr nett, wenn ihr mir helft.
 
Zuletzt bearbeitet:
Wenn du mit "normal" "short"- oder "long"-Variablen meinst, dann: Ja! Floats benutzt man - wie gesagt - für Gleitkommazahlen, zum Beispiel Timer oder Zahlen die unbegrenzt hoch werden können...
 
  • Like
Reaktionen: Almalexian
Leute wie ist der Skript das ich jemanden sage z.b. ein Haus kaufen und er mir dann mehere Stellplätzte für das Haus anbietet und ich eine auswähle und das Haus dann dort erscheint.´Ich hoffe ihr versteht das.
 
Setzte einfach dein Haus an die verschiedene Stellen, bloß disablet.
Dann musste beim Dialog bei der jeweiligen Antwort ein Script dazu schreiben: RefIDeinesHauses.enable

Hoffentlich verständlich ;).

mfg Kahmul
 
Setzte einfach dein Haus an die verschiedene Stellen, bloß disablet.
Dann musste beim Dialog bei der jeweiligen Antwort ein Script dazu schreiben: RefIDeinesHauses.enable

Hoffentlich verständlich ;).

mfg Kahmul


Ist wahrscheinlich viel Arbeit, aber so hätte ich es auch gemacht ( ich liebe enable funktionen, sind so schön einfach :D )
Kenne leider keine elegantere Lösung, bin noch nicht wirklich weit beim scripten.
 
Wieso viel Arbeit?
Ich glaube kaum, dass es 20 Stellen sein werden :lol:.
Und selbst wenn: Dialog schreiben ist da mehr Arbeit ;).

mfg Kahmul
 
Ebenso, auch Türen lassen sich enablen, dabei geht die Teleportfunktion nicht verloren, man kann sie aber nur nutzen, wenn die Tür enabled ist.
 
So, ik hab da auch mal ein Script-Problem:

Ich habe eine Tür, auf der liegt ein Script. Das Script soll den Spieler fragen ob er die Tür wirklich öffnen möchte.

- Öffnet er die Tür, sollen ihn die beiden Wache angreifen, die die Tür bewachen.
- Öffnet er die Tür nicht, passiert nichts

Das mit der Tür und dem öffnen ist ne einfache Sache. Nur wie kriege ich die beiden Wachen dazu, den Spieler anzugreifen, sobald dieser die Tür öffnet?
Ik steh da etwas aufm schlauch...

Greets, Xcy
 
Nochmal ne kurze Frage zu den Floats, wenns genehm ist:

Dienen die jetzt nur dazu Kommazahlen und Zahlen in wissenschaftlicher Schreibweise auszudrücken, oder haben die noch mehr Funktionen?
Außerdem, mal angenommen man benutzt für eine stinknormale, ganze Zahl statt einer short eine Floatvariable, würde das fehler verursachen?