30.01.2012, 09:35 | #1 (permalink) |
Auslöser geht nicht.
Moin,
ich habe in einer Mission mal einen Auslöser eingefügt, mit dem unsere Ts Daten angezeigt werden sollen, wenn sich diesem jemand nähert. Nur bekomme ich ihn nicht dazu auch seinen Dienst zu tun. Der Auslöser soll nachdem er einmal angezeigt hat, erst mach einem Intervall wieder auslösen laut meiner Bedingung, nur tut er dieses nicht. Trage ich in die Bedingungen "this" ein geht es, nur löst er immer aus wenn man sich nähert, was er aber nicht soll. Kann mir jemand auf die Sprünge helfen, was falsch ist? Ich habe mal ein Bild eingefügt, wo man es im Editor sehen kann. Ich hoffe es kann mir jemand helfen. Gruß und Danke Viper
__________________
|
|
30.01.2012, 14:06 | #4 (permalink) |
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
|
Ist klar, nur das Bild wird bei mir nicht größer angezeigt. Verwende die unten angeführt Seite für das Bild. Als Link den von Forum Code anführen.
ImageShack.us |
30.01.2012, 14:38 | #5 (permalink) |
Bei mir funktioniert es wunderbar.
Zu deinem Auslöser: Das kann vorn und hinten nicht funktionieren. Wofür fragst du die Distanz ab wenn du dem Auslöser auch einen Bereich geben kann? --> überflüssig. Dann wird der Auslöser nie auslösen, da die Variable "interval" dem Auslöser unbekannt ist und erst definiert wird nachdem er einmal gefeuert wurde --> also nie. Dann ist die Syntax deinen hintC falsch. Anführungszeichen in Abnführungszeichen funktionieren so nicht. Wenn dann so: hint """mein text1"", ""mein text2"" " oder hint " 'mein text 1', 'mein text 2'". Wobei du das auch gleich alles zusammen schreiben kannst... Grüße
__________________
Niemand hat die Absicht eine Tüte zu bauen! ___<<<A3 Wounding System>>>___ |
|
30.01.2012, 14:58 | #6 (permalink) |
Hallo,versteh ich nicht so ganz!? Wenn ich das mit der distanz rausnehme,löst er direkt aus,wenn ich auf die map komme,obwohl ich nun einen bereich zugewiesen hab.....
Hier nochmal das Bild: Uploaded with ImageShack.us
__________________
Geändert von S@ndviper (30.01.2012 um 15:12 Uhr). |
|
30.01.2012, 15:29 | #7 (permalink) |
Habe die nun rausgenommen,siehe Bild: nun löst er aber direkt aus wenn ich auf die map kommme,was er nicht soll! Warum ist es falsch? wir so wie auf dem Bild bei mir dargestellt: Gruß
__________________
Geändert von S@ndviper (30.01.2012 um 15:58 Uhr). |
|
30.01.2012, 15:44 | #8 (permalink) |
Du must natürlich schon abfragen ob sich der Spieler im Auslösebereich befindet...
zu deiner hint-Syntax: kannst du da mal bitte den kompletten Code posten? Man sieht nicht die komplette Syntax. Entweder kommt da noch was oder ich kenn das noch nicht. Grüße
__________________
Niemand hat die Absicht eine Tüte zu bauen! ___<<<A3 Wounding System>>>___ |
|
30.01.2012, 15:47 | #9 (permalink) |
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
|
Ich kann nur das Bild aus Post #6 öffnen. Die anderen Links dürften nicht aus Forum Code sein. Der Text im Bild ist aber schlecht zu lesen. Kopiere nur das Auslöserfenster und in guter Auflösung.
Wenn der Auslöser mehrmals reagieren soll, dann musst du ihn auf [Mehrfach] einstellen. Auch ist das notwendig, wenn "Bei Deak." zur Anwendung kommen soll. Vielleicht solltest du JPG-Bilder senden. Geändert von Vienna (30.01.2012 um 15:50 Uhr). |
30.01.2012, 15:50 | #10 (permalink) |
Ok,wie? Hier der code Code:
class Item17 { position[]={8244.5352,296.04001,2004.0366}; a=10; b=10; activationBy="ANY"; interruptable=1; age="UNKNOWN"; name="ts3_2"; expCond="(getpos player) distance (getpos ts3) <10 && getPos player select 2 <= 1 && interval <time"; expActiv="If (local player) then {""S@ndfriends Teamspeak-Data"" hintC [""Name: ]-S@nd-[Shooter"",""Required version: 3.0"",""Adress: 89.202.196.105:9988"",""Passwort: cheyenne"",""Forum: www.sandfriends.de""]};"; expDesactiv="interval = time + 2000;"; class Effects { }; };
__________________
|
|
30.01.2012, 15:59 | #11 (permalink) |
Habe die links in dem post geändert,bilder sind nun in Groß dargestellt. Gruß
__________________
|
|
30.01.2012, 22:24 | #12 (permalink) |
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
|
Jetzt kann ich die Bilder öffnen.
Zu Post #7 Die Variable interval muss zu Spielbeginn wo initialisiert werden. Im "Mehrfach"-Auslöser: Bedingung: local player and time > interval Bei Akt: interval = time + 2000; "...." hintC ["...","...",...] Bei Deak: nichts Bin mir nicht sicher, ob hintC im Multiplayermodus möglich ist. |
31.01.2012, 08:40 | #13 (permalink) |
trage ich es so ein wie du beschrieben hat,bekomme ich fehler das ";" fehlen usw. Wenn ich den Auslöser auf einmal stelle geht es wunderbar, nur dann löst er ja nicht im intervall aus (+2000) Gruß
__________________
|
|
31.01.2012, 10:10 | #14 (permalink) |
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
|
Hast du in "Bei Deak:" was stehen? Diese Zeile wird nur bei [Mehrfach] vollzogen.
Wenn ich dort im Beispiel nichts angeführt habe, dann meinte ich, die Zeile soll leer sein, muss aber nicht. Hast du dort "nichts" stehen, dann ist das die Ursache für den Fehler. Diese Zeile wird ausgeführt, wenn die vorher wahre "Bedingung" wieder "falsch" ergibt. |
31.01.2012, 12:24 | #15 (permalink) |
Moin,
ich habe nun alles durch probiert,habe wieder bildchen dazu gemacht: Bild 1: Der Auslöser geht immer sobald man in den Bereich eintritt! Bild 2: Auslöser schlägt garnicht an wenn man in den Bereich kommt! Bild 3: Auslöser schlägt garnicht an wenn man in den Bereich kommt! Uploaded with ImageShack.us Also,ich weiß da nicht weiter,es kommt mir vor als ob er ein problem mit dem Interval eintrag hat!!
__________________
|
|
31.01.2012, 13:40 | #16 (permalink) |
So,nun habe ich es hin bekommen siehe Bid:
Dann mußte noch in die init.sqf der eintrag rein : interval = 0 Nun läuft der Auslöser wie er soll, und löst immer die eingestellten zeiten aus,die ich vor gegeben habe. Ich bedanke mich für eure Mühe und Hilfe,werde mich wenn ich darf beim nächsten problem gerne wieder an euch wenden..... Gruß Viper
__________________
|
|
31.01.2012, 14:54 | #17 (permalink) |
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
|
Willst du wirklich, dass eine weiter Anzeige erst nach 20 Minuten möglich wird?
Es funktioniert zwar, aber "sauber" programmiert ist das nicht. Um zu verstehen, solltest du das folgende Beispiel testen, welches in 10 Sekunden eine weitere Anzeige ermöglicht. Mehrfachauslöser mit Namen test: Bedingung: local player && player distance test < 10 && position player select 2 < 1 && interval < time Bei Akt: interval = time + 10; player groupChat format["Test: Alle Bedingungen wahr! Aktuelle Zeit: %1",time] Bei Deak: player groupChat "Test: Neue Zeit läuft!" Beim Test wirst du sehen, dass die Zeit gleich neu zu laufen beginnt, auch wenn der Spieler noch im Bereich ist. Verschiebe den Teil interval = time + 10; nach "Bei Deak:" und schau was dann passiert. |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
Themen-Optionen | |
Ansicht | |
|
|
Ähnliche Themen | ||||
Thema | Autor | Forum | Antworten | Letzter Beitrag |
Gruppe via Auslöser hinzufügen, jedoch in vorhandener Position verharren lassen | spreewälder | Editing & Scripting | 5 | 11.12.2011 22:22 |
2 Auslöser arbeiten zusammen | Sol.LrMartyn | Editing & Scripting | 11 | 05.11.2011 18:29 |
Nur player betätigt Auslöser? | fro0l | Editing & Scripting | 9 | 27.06.2011 18:39 |
Gruppe per Auslöser bewegen | Deep Five-9te | Editing & Scripting | 2 | 07.01.2011 07:46 |
Missionsende bei erreichen eines Wegpunktes UND Erfüllung einiger Auslöser | Shakraan | Editing & Scripting | 9 | 12.07.2010 09:02 |