Funk + Script
Hello,
also ich möchte, dass der Spieler etwas suchen muss, er allerdings nach 60 Sekunden die Möglichkeit erhält Alpha anzufunken um um Abholung zu bitten. Was brauche ich dafür? Einen Auslöser mit Countdown 60 Sek, der ein Script auslöst, welches einen weiteren Auslöser erstellt, der widerum durch Alpha aulösbar ist?? Gruß |
Die Abholung würde ich nicht über einen Funk-Auslöser, sondern über einen Aktionsmenüpunkt durchführen. Den Aktionsmenüpunkt erstellst und löscht du über einen "normalen" Auslöser.
Hier ein Beispiel einer Abholung mit Helikopter. Für die Anwendung lies dir die Info.txt durch. Dort ist auch beschrieben wie der Auslöser aussehen könnte. Die Auslöser-Bedingung musst du für deine Zwecke abändern. http://hx3.de/385848-beitrag47.html |
Hallo Vienna, dank dir für deine Antwort.
Es geht mir hierbei nicht um die Abholung, sondern nur um den Funkverkehr. Spieler soll innerhalb eines bestimmten Gebietes nach einem bestimmten Gegenstand suchen. Dieser Gegenstand ist allerdings gar nicht in diesem Gebiet auffindbar und deshalb soll nach 60Sekunden etwa im Funkmenü "Alpha" auswählbar sein (hint "Update Funk"). Und bei Aktivierung des Funkspruchs soll um Abholung gebeten werden. Diese Abholung wird vom Headquarter abgewiesen. Also den angeforderten Helikopter brauche ich nicht, da er nicht genehmigt wird. Ich habe jetzt einen Trigger der "alpha.sqf" nach 60 Sekunden ausführt. [] exec "alpha.sqf"; Alpha.sqf sieht bisher so aus: Code:
Funktr=createTrigger["EmptyDetector",[0,0,0]]; SetTriggerTimeout funktioniert irgendwie leider nicht. Sobald alpha.sqf aktiviert wird, ist der Funkspruch schon unmittelbar verfügbar. und bei setTriggerStatement gilt doch ["Bedingung", "Aktivierung", "Deaktivierung"] oder nicht? Warum zeigt er dann hint "blabla" bei Aktivierung und nicht hint "Update Funk" ? Gruß |
Der Befehl setRadioMsg erlaubt Dir die Radio-Einträge zu deaktivieren...
Code:
1 setRadioMsg "NULL"; Du brauchst dieses Kommando also nur nach 60 Sek. ausführen und der Eintrag ist weg... ;) |
Hey Buliwyf,
da hast du glaube ich was falsch verstanden ;) Der Eintrag unter Funk soll bleiben. Allerdings soll er erst nach 60 Sekunden angezeigt werden. Also der per alpha.sqf erstellte Trigger (Funktr) soll einen Countdown von 60 haben, bevor der Eintrag im Funkmenü erscheint. Oder steh ich jetzt aufm Schlauch? ^^ edit: Ich hab auch schon probiert ~60 oder sleep 60; in der alpha.sqf zu benutzen, habs aber vielleicht falsch umgesetzt. Würde das am Anfang vom Script etwas bewirken können? |
Also ein sleep 60; vor dem Erstellen des Triggers bewirkt natürlich etwas! Nämlich das der Trigger erst nach Ablauf dieser 60 Sek. erstellt/angezeigt wird... warum also machst Du nicht so?!
|
Ich hatte es vorhin schonmal probiert, aber ich probier es dann nochmal aus, später.
sleep 60; ist der sqf befehl und ~60 ist der sqs befehl oder? Gruß |
Also bevor noch mehr solche Fragen auftauchen, tue Dir selbst einen Gefallen und lese Dich in MrMurray`s Editing Guide ein.. das Thema ist ja bald schon 10 Jahre alt wie SQS und SQF sich unterscheiden... aber immer wieder tauchen solche Fragen auf... :wee
|
Ich denke dadurch das das Alpha.sqf Script den Funk Trigger nach 60 Sec. Erstellt
Braucht man eigentlich im Trigger keinen Timeout mehr! Es bringt auch nichts wenn man 2 hint Meldungen eingibt da nur eine angezeigt wird! Code:
//Script aufruf über einen Trigger Code:
//Alpha Funk Trigger |
hey,
also muss die alpha.sqf so aussehen? Zitat:
|
Oder du erstellst den Trigger erst wenn du im brauchst!
|
Tue ich doch auf diese Art und Weise oder nicht?
Wenn Ziel 1 erfüllt ist, dann wird alpha.sqf gestartet und in der alpha.sqf wird doch der Trigger erstellt (zum Zeitpunkt an dem man ihn braucht) Ich probier gleich mal aus, was du geschrieben hast. Wollte eigentlich heute mal Pause machen mit dem Spiel :D gestern hatte ich hart Kopfschmerzen ^^ gruß edit: Du bekommst den Auftrag etwas zu suchen und nach 60Sek soll im Funkmenü "Falkennest kontaktieren" erscheinen, damit man die Suche abbrechen und um Abholung bitten kann. Diese Abholung wird nicht gewährt vom HQ. Und soweit funktioniert auch alles, bis auf die 60Sekunden-Frist und der hint "Update Funk". Aber ich geh gleich nochmal eine Runde ingame. lol |
Also der Trigger Funktioniert schon so, wenn du Funk Alpha betätigst sollte auch die hint Meldung erscheinen, erstell nur mal den Trigger ohne sonst etwas!
|
Liste der Anhänge anzeigen (Anzahl: 1)
Ein kleines Beispiel!
|
Danke für die Hilfe,
ich habs jetzt hinbekommen :) hatte auch ein Semikolon vergessen, aber sleep 60; vor dem createtrigger funktioniert super. edit: schau ich mir trotzdem mal an :) ich glaube aber, wir haben leicht aneinander vorbeigeredet :D |
Zitat:
Zitat:
|
Auf jeden Fall war mir dein 0 = [] execVM "alpha.sqf"; und deine setTriggerStatement-Zeile eine große Hilfe :daumen:
Jetzt ist alles perfekt, ich komme an der Abschussstelle an, halte Funkkontakt zur Basis, die Basis lässt mich das Gebiet absuchen und nach 120 Sekunden gibt es den Eintrag "Falkennest kontaktieren" im Funkmenü :) Jetzt muss nur noch was passieren, wenn man den Funk auslöst ^^ |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:18 Uhr. |
Angetrieben durch vBulletin, Entwicklung von Philipp Dörner & Tobias