Variable übergeben und zurückholen
Guten Abend,
ich habe eine objekt.sqf in der sich der Spieler sein Objekt aussucht um dann es zu erstellen. Zum erstellen greife ich auf den Script bau.sqf zu. Das _bauwerk übergebe ich (greife ich mit select ab) und erstelle es. Nun wartet er ja in der Objekt.sqf bis der Bauscript durch ist. Nun kommt die Fehlermeldung das die Variable Bauobjekt nicht vergeben ist. Nun die Frage kann ich es so nicht Übergeben oder muss ich in der Bau.sqf eine angabe machen? objekt.sqf Code:
_handle = [_bauwerk] spawn bau.sqf; Code:
bauobjekt = createVehicle [_bauwerk,_u2, [], 0, "CAN_COLLIDE"]; //Globales Objekt wird erstellt |
handle = [_bauwerk] execVM "bau.sqf";
waitUntil {scriptDone handle}; |
Kurz für mich als erklärung weil er sonst die Daten ignoriert welche aus denn Anderen Script generiert werden? da diese script local sind?
|
Du solltest dir immer die Beschreibung der Befehle ausführlich ansehen!
Du hast bereits spawn falsch verwendet. Ob scriptDone auch mit einer lokalen Variablen funktioniert musst du testen. https://community.bistudio.com/wiki/spawn https://community.bistudio.com/wiki/scriptDone Hast du die Anzeige von Skriptfehlern beim Aufruf von Arma nicht aktiviert? ".....\xxx.exe" -showscripterrors Wenn du das Spiel so aufrufst, werden dir viele Codefehler sofort angezeigt. |
Danke die Meldung hate ich noch nicht angezeigt bekommen bei fehlern.
Das Problem was ich ber trotzdem habe ist das er keine Variable die ich ohne _ in denn anderen Script erstelle zb ende setze ich auf False wenn die Variante abbrechen gewählt wird lasse ich sie auf true setzen und habe in denn objekt script ein Zitat:
Werend des Schreibens habe ich die Lösung gefunden: Code:
waitUntil {scriptDone handle}; PS: es geht auch bei scriptdone auch mit einer Localen Variable _handle ist auch im wiki geschrieben ganz unten. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:15 Uhr. |
Angetrieben durch vBulletin, Entwicklung von Philipp Dörner & Tobias