11.01.2013, 14:21 | #1 (permalink) |
Registriert seit: 16.10.2012
Beiträge: 63
|
abgespielter Sound soll beendet werden
Hallo,
Hab ein Fahrzeug platziert, in ihm kann der Spieler eine Sirene einschalten. Der Soundclip ist zwar "mono", allerdings funktioniert die Echowirkung nur wenn ich ihn so abspiele: Code:
auto1 say "siren1"; Das klappt auch, allerdings weiß ich nicht, wie ich die Sirene wieder ausschalten kann. Der Clip dauert rund 2 min. hab dazu noch nichts im Tutorial von Mr. Murray gefunden. Dasselbe Problem habe ich bei Musik, diese soll nur in bestimmten Auslöserbereichen abgespielt werden. |
11.01.2013, 15:41 | #2 (permalink) |
Registriert seit: 13.04.2003
Ort: Monerica
Alter: 42
Beiträge: 32.979
|
Code:
auto1 say ""; Probier das zum Ausschalten. Allerdings nicht getestet. PS: Auf die Weise bekommt man übrigens auch Hint Texte oder PP Effekte wieder weg. Schätze (fast) alles was man ArmA in einer Klammer darbietet, kann durch eine leere Klammer wieder gelöscht werden. |
11.01.2013, 21:58 | #5 (permalink) |
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
|
In Arma1 habe ich den Sound für ein Logic-Objekt erstell, welches ich z.B. einem Fahrzeug nachführte. Abgeschalten wurde durch Löschen des Logic-Objekts.
Code:
// Aufruf Lokal | Vienna 03.08.2008 // // Radio über Aktionsmenü ein- und ausschalten // // 1. Aufruf schaltet Radio ein. Nächster Aufruf schaltet aus. usw. // // Aufruf in der Initialisierung eines Objekt: temp = this addAction ["Aktionstext","Dateiname",["Soundname",Soundlänge],-1,false,true,""] // Beispiel: temp = this addAction ["*** Radio ein- oder ausschalten ***","Sounds\Radio.sqf",["BlackAttack",127],-1,false,true,""] // // In der description.ext ist die Klasse für den Sound einzufügen. // Lokale Variable private ["_o","_s","_l","_r","_t"]; //globale Variable beim ersten Aufruf für Radio Kontrolle initialisieren. if (isNil "ViennasRadio") then {ViennasRadio = false}; // _o: Objekt welches den Sound abgibt _o = _this select 0; // _s: Soundname aus dem Parameter in der Aktion laden _s = (_this select 3) select 0; // _l: Länge des Musikstücks (darf nicht viel kürzer sein, sonst Überschneidung) _l = (_this select 3) select 1; //Wenn aufrufendes Objekt zerstört, dann Aktion entfernen if (!alive _o) exitWith {player groupChat "---- Radio nicht mehr betriebsbereit! ----"; _o removeAction (_this select 2)}; // Radio einschalten wenn ViennasRadio false und ausschalten wenn ViennasRadio true /////////////////////////////////////////////////////////////////////////////////// if (!ViennasRadio) then //Radio erstellen (Radio einschalten) { ViennasRadio = true; // _r: logisches "Radioobjekt" _r = "Logic" createVehicle getPos player; // Hauptschleife Sound starten (Wiederholung bis abgeschaltet wird) while {ViennasRadio AND alive _o} do { // Sound starten _r say _s; // _t: nach Zeitablauf Sound neu starten _t = time + _l - 5; // Warteschleife bis Soundende und "Radio" dem Objekt _o nachsetzen while {_t > time AND ViennasRadio AND alive _o} do { _r setPos position _o; sleep 0.5 } }; deleteVehicle _r } else // vorherigen Radioskriptaufruf beenden (Radio ausschalten) { ViennasRadio = false; } Wenn es geht, dass ein neuer Sound den laufenden beendet, dann ist die Lösung mit dem kurzen "leeren" Sound vielleicht einfacher. |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
Themen-Optionen | |
Ansicht | |
|
|
Ähnliche Themen | ||||
Thema | Autor | Forum | Antworten | Letzter Beitrag |
sound und settexture werden nur lokal ausgeführt. | Drunken Officer | Editing & Scripting | 8 | 08.11.2011 01:16 |
Das leidige Thema Sound mal wieder | Deep Five-9te | Editing & Scripting | 10 | 16.06.2011 14:42 |
Sound beenden | Anemia | Editing & Scripting | 5 | 11.07.2010 14:08 |
description.ext (sound) problem | miromanu | Editing & Scripting | 7 | 07.07.2010 16:40 |
Riflesounds | Big Fan | Mods & Addons | 3 | 26.05.2010 04:41 |