Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Script zum wechseln des Gebietes
#7
(05.12.2023, 11:17)aeyol schrieb: Als Ressource fürs Forum hier wäre es ziemlich cool, mal ein konkretes Beispiel zu haben, denke ich.

Ja, denke ich auch.

(05.12.2023, 11:17)aeyol schrieb: Vielleicht ja auch für dich selbst als Doku. :)

Für mich selbst brauche ich das eigentlich nicht als Doku. Ich habe noch alle Dateien, die ich in den letzten 13 jahren im Zusammenhang mit Drakensang Modding angelegt habe. Und das ist eine ganze Menge. :) 

Hier das Beispiel:

Wie schon gesagt wird zunächst ein Auslöser für das Script benötigt. Ich habe hier einfach eine Truhe als StateObject verwendet. Das kann aber auch eine Dialogzeile (wie beim Wechsel zu Nadoret bei Nacht) oder ein Trigger sein.

Code:
INSERT INTO "_Instance_StateObject" VALUES(X'341F072CA919934588FF4F16FCAA0B10','|Level|Objects|StateObject|locr01_eingang_schlucht','locr01_nadoret','',X'458D753F00000000A2C790BE00000000000000000000803F0000000000000000A2C7903E00000000458D753F000000004CC3D7C2345AB13FF45984C20000803F','locr01_eingang_schlucht','Geheimeingang Nadoret tiefer Wald zum Schloss','stateobjects/chest_truhe_01','stateobjects/chest_truhe_01','Environment','locr01_eingang_schlucht','','','on:Use:load_location_example.xml',1,0,'closed','',5,1,'Nehmen',0,0,'','icons/transparent','',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);

In die Spalte ScriptOverride wird das ActionSript mit einem vorangestellten on:Use: eingetragen. Außerdem muss die Spalte CanUse den Wert 1 haben. Das macht einen Gegenstand erst benutzbar.

Die Truhe steht übrigens in Nadoret, links neben dem Eingang zur Kaserne.

Dann das ActionScript.


Code:
INSERT INTO "_Scripts_ActionScripts" VALUES('load_location_example.xml',X'BEC997D5A30D84698CA1C03713DD4F7D',X'574A6B1B70DACE95B9CE4AD774E7D24B');

Der Name für das Script ist frei wählbar. er sollte natürlich so gewählt werden, dass man auch Jahre später noch weiß, was das Script macht. :) Außerdem muss der Name eindeutig sein und darf keine Umlaute enthalten.

Das Script ruft dann das Statement auf, das die Anweisung zum Gebietswechsel enthält.

Code:
INSERT INTO "_Scripts_Statements" VALUES(X'BEC997D5A30D84698CA1C03713DD4F7C','Action','LoadLocation location="locr05_schloss_schlucht" entry="locr05_entry_start" actionSelection="script,quest,dialog" seCategory="all,world,game"; ',X'574A6B1B70DACE95B9CE4AD774E7D24B');

INSERT INTO "_Scripts_Statements" VALUES(X'BEC997D5A30D84698CA1C03713DD4F7D','Begin','d597c9be-0da3-6984-8ca1-c03713dd4f7c',X'574A6B1B70DACE95B9CE4AD774E7D24B');

ActionScript und Statement müssen in die statica1.db4 eingetragen werden, die Truhe in ein beliebiges Savegame.
Zitieren


Nachrichten in diesem Thema
RE: Script zum wechseln des Gebietes - von Lord Demon - 06.12.2023, 06:38



Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste