PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Wie weist man einem Objekt ein Geräusch zu?



Der Milch
19.02.2007, 21:38
Wenn Man eine Rüstung anzieht, einen Trank aufhebt, etc. Ist das ja immer von einem geräusch begleitet.

Die Sounds habe ich gefunden Bei "Verschiedenes >>> Sounds"

Aber wie Verknüpft man einen Sound mit einem Objekt??

kenet_korva
20.02.2007, 08:58
Das kommt darauf an. Bei den von dir genannten Beispielen erkennt das Spiel die Art des Items und spielt so den richtigen Sound ab. Daran gibts nichts zu schrauben. Natürlich kannst du es auch mit einer OnAdd Syntax und einem Skript bei einem speziellen Item machen, der Original Item-Sound wird aber trotzdem abgespielt werden.

Der Milch
20.02.2007, 17:45
Und wie verhält es sich mit neu ins spiel eingefügten Dingen?

GreyWolf
20.02.2007, 18:03
Und wie verhält es sich mit neu ins spiel eingefügten Dingen?
Das hängt von der Art des neuen Gegenstandes ab.

Bei einer Waffe musst Du beim Erstellen z.B. den Typ zuweisen, z.B. BladeOneHand. Diesem Typ ist ein Soundfile zum Ziehen der Waffe, ein Soundfile für Treffer usw. zugewiesen. D.h., die Originalsoundfiles, die dem jew. Waffentyp zugeordnet sind, werden abgespielt, wenn Du mit der neuen Waffe die entsprechende Aktion ausführst.

Bei einem neuen Container hingegen kannst Du beim Erstellen über die Buttons Open --> Select TESSound oder Close --> Select TESSound eine Auswahl aus den vorhandenen Soundeffekten treffen.

Der Milch
20.02.2007, 19:15
Ah, ok, d.h Es muss also direkt bei den Objekteigenschaften eine Option vorhanden sein, sonst geht's nicht richtig? Naja, dann muss ich mich eben damit arrangieren, Danke :)

Faegan
20.02.2007, 20:24
Doch, man kann ganz sicher neue Klänge auch für Waffen benutzen, in irgendeinem inzwischen deinstallierten PlugIn hat eine Waffe zum Beispiel den Klang so ungefähr Ratsch-mäßig wie die Krallen der Werwölfe in MW.

Der Milch
20.02.2007, 21:59
Doch, man kann ganz sicher neue Klänge auch für Waffen benutzen

OK, aber wie geht das??

Brausebart
20.02.2007, 22:53
Es geht bei Waffen definitiv nicht. Man könnte höchstens versuchen (mit OBSE) per Skript das Schwingen einer Waffe abzufragen und dann einen individuellen Sound abspielen. Der Originalklang wäre dann aber immer noch zu hören.

kenet_korva
21.02.2007, 14:05
Man braucht kein OBSE dazu. Der Befehl lautet "IsYielding".

Gorkon
21.02.2007, 15:12
Kewl...wir basteln uns ein Laserschwert mit Sound? *wrrrrrrrrrrrrrrrrrrrrrrrrr*...
:D

kenet_korva
21.02.2007, 16:36
Oder ein Singendes Schwert...

Faegan
21.02.2007, 16:51
Kannste ein Beispielscript schreiben?
Dann bastel ich mir das mal für die Plasma Sabers hin:)

kenet_korva
21.02.2007, 18:09
Hab die Yielding Syntax noch nie benutzt. Aber das müsste ungefähr so aussehen.

short Self


begin GameMode
set self to GetSelf ; Ich bin mir momentan nicht sicher ob isYielding mit ObjectBase oder Referce arbeitet. Mit Base währe das hier nicht notwendig und das Self in der Syntax unten müsste auch durch die Sabers ID ausgetauscht werden.

if (player.GetEquipped Self == 1)&&(Player.IsYielding == 1)
PlaySoud PlasmaSound
endif
end

Den Sound nicht looped lassen, und ungefähr nur so lang sein lassen wie die OriginalSounds, sonst gibts hässiche Überschneidungen.

Brausebart
21.02.2007, 21:54
Hmm, laut CS-Wiki liefert IsYielding den Wert 1, während ein Aktor sich im Kampf ergibt. Wörtlich: "Returns 1 if the actor is in the process of yielding".

Da ich die Funktion selbst noch nie benutzt habe, weiß ich nicht, ob das stimmt. In den Originalskripten wird sie auch nie verwendet. Aufgrund der Beschreibung hege ich allerdings gewisse Zweifel, dass man damit das Schwingen der ausgerüsteten Waffe abfragen kann. ;)

kenet_korva
21.02.2007, 22:38
Ja, oh. Stimmt. Wie gesagt. Hatte mit der Syntax noch nie zu tun und das Wort tauchte bisher auch nicht besonders oft in conversationen auf.
Hatte ich wohl versehentlich mit Schwingen assoziiert. http://www.multimediaxis.de/images/smilies/old/1/gruebel.gif Naja, kommt auch vor.

Edit: Das Oben genannte Skript funktioniert folglich nicht.

Rung
22.02.2007, 12:16
Hallo,

die einfachste Lösung für dieses Problem ist, denke ich, ein Zauber.
Man erstelle einen ScriptEffektzauber, der an das Schwert gehängt wird.
Mit diesem Script wird der Sound immer gespielt, wenn der Spieler den Gegner trifft.

Scriptname ThisIsTheScriptName

ScriptEffectStart

PlaySound PlasmaSound

End

ScriptEffectFinish

End

Wenn ein Sound erwünscht ist, der immer dann abgespielt wird, wenn der Spieler das Schwert/die Waffe schwingt, wird es nicht ohne OBSE gehen. :(

Der Milch
22.02.2007, 17:24
wenn Ich jetzt einen Neuen Gegenstand ins Spiel einbaue. sagen wir ma leine Quitscheetnte und ich möchte, dass jedes mal, wenn man die Ente aufhebt, bzw im Inventar anklickt ein quitsch geräusch abgespielt wird,, lässt sich das mit einem Skript lösen oder nicht.?

Brausebart
23.02.2007, 14:32
Das Skript dazu müsste etwa so aussehen:


scn QuietscheEnteSkript

; Klang abspielen, wenn der Spieler die Ente aufnimmt
begin OnAdd Player
PlaySound QuietscheSound
end

; Klang abspielen, wenn der Spieler die Ente im Inventar anklickt
begin OnEquip Player
PlaySound QuietscheSound
end

; Klang abspielen, wenn der Spieler die Ente ablegt
begin OnDrop Player
if GetContainer == 0
PlaySound QuietscheSound
endif
endDas Skript muss auf der Ente laufen und "QuietscheSound" muss zuvor im CS als neuer Sound angelegt und diesem die entsprechende WAV-Datei zugewiesen werden.

Der Milch
23.02.2007, 17:38
Dankeschön! :)