44 lines
1.1 KiB
Ucode
44 lines
1.1 KiB
Ucode
class ACTION_PlayKFReplicatedAmbientSound extends ACTION_PlayAmbientSound;
|
|
|
|
var(Action) edfindable protected Actor SoundActor; // actor to set ambientsound on
|
|
// used to find SoundActor, if it is not set. Tag must be unique!
|
|
var(Action) edfindable name SoundActorTag;
|
|
|
|
|
|
|
|
function bool InitActionFor(ScriptedController C)
|
|
{
|
|
// play appropriate sound
|
|
if ( AmbientSound != None )
|
|
{
|
|
if ( SoundActor == none )
|
|
foreach C.AllActors(class'Actor', SoundActor, SoundActorTag)
|
|
break;
|
|
|
|
if ( SoundActor != none ) {
|
|
// this probabaly isn't working,
|
|
// because actor must have those values set in defaultproperties
|
|
if ( SoundActor.RemoteRole < ROLE_SimulatedProxy )
|
|
SoundActor.RemoteRole = ROLE_SimulatedProxy;
|
|
SoundActor.bAlwaysRelevant = true; //
|
|
|
|
SoundActor.AmbientSound = AmbientSound;
|
|
SoundActor.SoundVolume = SoundVolume;
|
|
SoundActor.SoundPitch = SoundPitch;
|
|
SoundActor.SoundRadius = SoundRadius;
|
|
|
|
SoundActor.NetUpdateTime = SoundActor.Level.TimeSeconds - 1;
|
|
}
|
|
}
|
|
return false;
|
|
}
|
|
|
|
function string GetActionString()
|
|
{
|
|
return ActionString@AmbientSound;
|
|
}
|
|
|
|
defaultproperties
|
|
{
|
|
}
|