Armed-Assault.de Twitter
Antwort
 
Themen-Optionen Ansicht
Alt 18.11.2011, 19:32   #1 (permalink)
500 Beiträge1000 Beiträge
 
Benutzerbild von Drunken Officer
 
Registriert seit: 15.05.2011
Beiträge: 1.104
Standard Lösung gefunden für globalen Sound und Texturen

Hallo Community.

sound und settexture werden nur lokal ausgeführt.
Ampelschaltung
Ich hatte ja einpaar Fragen.

Danke an die Leute dir mir geholfen haben. Nach langem rumprobieren habe ich die Lösung für mein Model gefunden.
Die Texturen und Sounds werden jetzt global angezeigt und abgespielt.

Gelöst habe ich es mit einer while {true} do - Schleife. Für die Sounds habe ich einen Zähler benutzt um doppeltes Abspielen zu verhindern. Hier ein kleiner Auszug:
Config.cpp
auf die CfGSounds gehe ich mal nicht näher ein, dürfte klar sein.
hier wird der Eventhandler aufgerufen.
Code:
class EventHandlers
          { init = "handel = _this execVM ""\polizei\scripts\policebase.sqf""; ";
          };
Script
Code:
...
_animpb6counter = 0; //Varibale bekommt der Wert 0 zugewiesen

while {true} do
{
_blah = _this select 0;
...
_al3 = "alarm3"; // definiton der Variable mit Zielangabe auf die CfGSounds
....
_animpb6 = _blah animationPhase 'door_pb_aussenhof';
// definition der Varibale für die Animation mit Ziel unter UserAction.

//aussenhof
if (_animpb6 == 0) then {_blah setobjecttexture [0, "\polizei\grafik\lichtrot.paa"];} else {_blah setobjecttexture [0, "\polizei\grafik\lichtgruen.paa"];};
// hier wird abgefragt welchen Zustand das Tor hat und dann die Farbe gesetzt. 
if (_animpb6 > 0 and _animpb6 < 1) then {_animpb6counter = _animpb6counter + 1} else {_animpb6counter = 0};
//hier wird gesagt, wenn Tor kompeltt auf oder zu ist, ist der Zähler 0 ansonsten zählt er hoch

player globalChat format["%1",_animpb6counter];
//kleiner Test ob der Zähler funktioniert
if (_animpb6counter < 2 and _animpb6 < 0.1 and _animpb6 > 0) then {_blah say [_al3,20,1];};
//hier wird gesat, spiele den Sound aber nur zu Beginn der Animation und wenn der Zähler kleiner 2 ist. Dies ist wichtig, da sonst beim Schliessen der Sound erneut abgespielt werden würde.
if (_animpb6 > 0.9 and _animpb6 < 1 and _animpb6counter < 2) then {_blah say [_al3,20,1];};
//analog zum öffnen.
 };
sleep 0.1
Eine while-Schleife erzeugt ein Server-Side-abfrage.

Ich hoffe das ich den Leuten, die vor dem gleichen Problem stehen etwas helfen konnte.
Natürlich gibt es auch andere Weg. Einige arbeiten mit Soundhelpern etc. pp.
Drunken Officer ist offline   Mit Zitat antworten
Alt 18.11.2011, 20:11   #2 (permalink)
SQF Zauberer 10 Jahre hx3
500 Beiträge1000 Beiträge
 
Benutzerbild von Vienna
 
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
Standard

Die Pause sleep 0.1 ist außerhalb der Schleife.

Ist es notwendig, dass das die Schleife ständig ganz durchlaufen wird? Sollte nicht mit waitUntil bis zum Erreichen eines Zustandes in den einzelnen Bereichen gestoppt werden?
Vienna ist offline   Mit Zitat antworten
Alt 19.11.2011, 11:32   #3 (permalink)
500 Beiträge1000 Beiträge
 
Benutzerbild von Drunken Officer
 
Registriert seit: 15.05.2011
Beiträge: 1.104
Standard

Ups, der sleep befehl ist in der Schleife. Falsch kopiert

Die Schleife ist notwendig. Da settexture nur lokal ausgeführt wird. Die While Schleife erzeugt aber eine Abfrage mit dem Server und somit bie allen Spielern.
Drunken Officer ist offline   Mit Zitat antworten
Alt 19.11.2011, 14:02   #4 (permalink)
500 Beiträge1000 Beiträge
 
Benutzerbild von Pfandgiraffe
 
Registriert seit: 16.09.2008
Ort: Berlin
Alter: 31
Beiträge: 1.724
Pfandgiraffe eine Nachricht über ICQ schicken Pfandgiraffe eine Nachricht über Skype™ schicken
Standard

Zitat:

Die Schleife ist notwendig. Da settexture nur lokal ausgeführt wird. Die While Schleife erzeugt aber eine Abfrage mit dem Server und somit bie allen Spielern.


Das wär mir neu. Es liegt wohl eher an deinem neuen Aufruf mit dem Eventhandler bzw. wo dieser ausgeführt wird.
__________________
Niemand hat die Absicht eine Tüte zu bauen!
Pfandgiraffe ist offline   Mit Zitat antworten
Alt 19.11.2011, 20:34   #5 (permalink)
500 Beiträge1000 Beiträge
 
Benutzerbild von Drunken Officer
 
Registriert seit: 15.05.2011
Beiträge: 1.104
Standard

Event Handler wird in der Class_Land_xxx aufgerufen. Quasi da, wo das 3D Model angesprochen wird.
Hm, auf alle Fälle funzt es jetzt Bestimmt nicht das Non+Ultra, aber funzt.
Drunken Officer ist offline   Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
sound und settexture werden nur lokal ausgeführt. Drunken Officer Editing & Scripting 8 08.11.2011 00:16
Verschwommene bzw. Verwaschene Texturen WizleWiz Technische Fragen & Probleme 18 27.08.2011 20:06
Das leidige Thema Sound mal wieder Deep Five-9te Editing & Scripting 10 16.06.2011 13:42
Sound beenden Anemia Editing & Scripting 5 11.07.2010 13:08
description.ext (sound) problem miromanu Editing & Scripting 7 07.07.2010 15:40


Kontakt - HX3.de - Archiv - Nach oben

Angetrieben durch vBulletin, Entwicklung von Philipp Dörner & Tobias



SEO by vBSEO 3.2.0 ©2008, Crawlability, Inc.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116