06.01.2010, 20:56 | #1 (permalink) |
Registriert seit: 30.10.2009
Beiträge: 59
|
Laienverständnis-Frage
Hallo Leute,
ich kapier´s schon wieder mal nicht...... ich habe folgenden "Versuchsaufbau": in meiner init.sqf ist folgender Eintrag: Code:
#include "wes_scripts\wes_funcs\wes_func_chat.sqf"; Code:
/* ################################################### # Function file for Armed Assault 2 # Created by: *GGH* Wesley Pipes # Script-Name:"wes_func_chat.sqf" # Version: "V 01_0" # Datum: "06.01.2010" ################################################### */ wes_chat_helijoin ={ //Private ["_txt"]; //_txt = "Test"; sleep 0.32; HintC "Dies ist ein Test"; sleep 10; }; Wenn ich das Ganze in der Vorschau betrachte, macht er auch was er soll. Auslöser betätigt ----> Hint kommt. Nur starte ich mein Spiel mit der Erweiterung "-showscripterrors" und dann ist es so, dass genau in dem MomenT wo die Funktion aufgerufen wird, eine Fehlermeldung kommt: Kann mir jemand erklären, warum trotz "funktionierendem" Script die Fehlermeldung auftaucht? Danke |
06.01.2010, 21:07 | #2 (permalink) |
Registriert seit: 11.03.2005
Ort: HH
Alter: 52
Beiträge: 1.930
|
Was zur Hölle?!
Also ich hab ja schon einige Methode gesehen, eine SQF aufzurufen, aber die ist mir komplett neu! Aber man lernt nie aus... Aaaaalsooooo... ich würde die Funktion, wenn sie mit einem Auslöser aufgerufen werden soll, wie folgt starten lassen: - nix in der Init.sqf - das Script: Code:
/* ################################################### # Function file for Armed Assault 2 # Created by: *GGH* Wesley Pipes # Script-Name:"wes_func_chat.sqf" # Version: "V 01_0" # Datum: "06.01.2010" ################################################### */ sleep 0.32; HintC "Dies ist ein Test"; Code:
call{[] execVM "wes_func_chat.sqf"} |
06.01.2010, 21:11 | #3 (permalink) |
Registriert seit: 30.10.2009
Beiträge: 59
|
naja - ich übe noch.
das kommt halt dabei raus wenn jemand versucht nen Plan zu kriegen Danke erst mal buliwyf EDIT @Buliwyf Aber das ist ja was ich eigentlich nicht wollte - mein Test sollte eben folgender sein: eine Datei mit verschiedenen Funktionen wird geladen (im Beispiel halt nur eine Funktion) und bei Bedarf wird eine bestimmte Funktion aus der Datei aufgerufen Und ich dachte ich muss die Datei ja erst mal irgendwo starten (wo - wenn nicht in der init) um auf diese Funktionen überhaupt zugreifen zu können. ----> oder ? Gruß Geändert von Wesley Pipes (06.01.2010 um 21:20 Uhr). |
06.01.2010, 21:31 | #4 (permalink) |
Registriert seit: 11.03.2005
Ort: HH
Alter: 52
Beiträge: 1.930
|
Ja sach dat doch...
Also Init.sqf: Code:
call compile preprocessFileLineNumbers "wes_func_chat.sqf"; Code:
/* ################################################### # Function file for Armed Assault 2 # Created by: *GGH* Wesley Pipes # Script-Name:"wes_func_chat.sqf" # Version: "V 01_0" # Datum: "06.01.2010" ################################################### */ wes_chat_helijoin ={ //Private ["_txt"]; //_txt = "Test"; sleep 0.32; HintC "Dies ist ein Test"; sleep 10; }; Und dann noch der Auslöser: Code:
call wes_chat_helijoin; |
06.01.2010, 21:45 | #5 (permalink) |
Registriert seit: 30.10.2009
Beiträge: 59
|
Danke - ich versuch´s gleich mal.
Die Sinnhaftigkeit von dem sleep ist genau die selbe wie von dem HintC ---> laienhafte Tests normalerweise hat meine Datei mehr Funktionen und die aufgerufene Funktion ist schon etwas anders. Mir ist halt der Fehler aufgefallen und deshalb habe ich das "funktion-File" nur auf diese Laien-Test-Funktion begrenzt.... verstehste Gruß EDIT: ich hab´die init jetzt mal nach Deinem Vorschlag geändert. Die Fehlermeldung taucht (inkl dem Hint) trotzdem auf sobald ausgelöst wird Geändert von Wesley Pipes (06.01.2010 um 21:58 Uhr). |
07.01.2010, 00:55 | #6 (permalink) |
Registriert seit: 06.06.2008
Beiträge: 209
|
Also:
Code:
call compile preprocessFileLineNumbers Aber jetzt zu deinem Problem: Innerhalb von Triggern darf kein sleep ausgeführt werden. Du müsstest dein Script so starten: Code:
[] spawn wes_chat_helijoin;
__________________
#include "signatur.h" "I'm not slacking of. My addon is 'pboing'!" |
07.01.2010, 10:35 | #7 (permalink) |
Registriert seit: 30.10.2009
Beiträge: 59
|
@i0n0s
danke schön - ich glaube das war´s. Wie Du gesagt hast der sleep beim Auslöser. Und ich glaube, bei meinen Tests ist Arma2 auch mit dem HintC in Verbindung mit Sleep in´s Schleudern gekommen - kann das sein? Ich habe beim Testen die Funktion nämlich auch mal über nen WP-"Auslöser" aufgerufen und da scheint ein sleep generell kein Problem zu sein - nur wenn vorher ein HintC angegeben wurde. Zunindest würde ein sleep nach dem hintC ja wenig Sinn machen, da der Hint ja eh solange bleibt bis man ihn weggeklickt hat. Los sagt einem Anfänger, dass er´s begriffen hat Thx nochmal an Buliwyf und i0n0s Gruß Geändert von Wesley Pipes (07.01.2010 um 10:50 Uhr). |
07.01.2010, 11:20 | #8 (permalink) |
Registriert seit: 11.03.2005
Ort: HH
Alter: 52
Beiträge: 1.930
|
Also wenn nach dem HintC nichts weiter passieren soll, das Script/die Funktion also zueende ist, dann hast es Du es begriffen...
Als Anfänger solltest Du Dir, falls Du es noch nicht hast, den Editing Guide von MrMurray durchlesen... das ist in der Regel schonmal eine gute Anfangslektüre. Der ist zwar für ArmA gemacht und kann hier und da nicht ganz optimal fü ArmA2 sein, aber die Version für ArmA2 ist in der Mache... |
07.01.2010, 13:16 | #9 (permalink) |
Registriert seit: 30.10.2009
Beiträge: 59
|
Also bitte!!! - der Editing-Guide ist ja wohl mal PFLICHTLEKTÜRE!
Ich hab mich parallel auch in diverse andere Hilfs-Foren und Guides durchgelesen. Ich finde aber am Besten lernt man durch try&error. Ich habe auf diesem Weg schon so einige Erkenntnisse gesammelt. Beim 1-er-Guide (möge der 2-er bald kommen...) kann man schon einiges anwenden. Aber gerade das Scripting-Thema ist da noch sehr auf SQS gehalten. Und mir hat mal jemand in nem Forum geraten, gleich mit SQF einzusteigen. Also probiere ich, lese Fehlermeldungen, wälze Guides und Foren, schreibe script-Zeilen in der unmöglichsten Syntax zusammen, teste wieder und dann wieder von Vorne.... Und wenn garnix mehr geht - gibt´s ja zum Glück noch Euch Gruß da Wes Geändert von Wesley Pipes (07.01.2010 um 13:20 Uhr). Grund: tja Rechtschreibfehler fallen einem immer erst später auf... |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
Themen-Optionen | |
Ansicht | |
|
|
Ähnliche Themen | ||||
Thema | Autor | Forum | Antworten | Letzter Beitrag |
HDD-Frage | Hammadi | Technische Fragen & Probleme | 18 | 23.10.2009 15:26 |
Frage | Scoline | Community | 3 | 24.08.2009 02:15 |
Frage zum Mp | rakdos | Multiplayer | 3 | 16.06.2009 17:56 |
opf frage | Firetank | Hilfe | 2 | 19.08.2005 11:04 |