sounds/SoundTrigger.cs
using Opium;
using Sandbox;
public sealed class SoundTrigger : ActionTrigger
{
[Property] public SoundEvent Sound { get; set; }
[Property] public GameObject ParticleEmitter { get; set; }
Vector3 newPos { get; set; }
Rotation newRot { get; set; }
protected override void Activate()
{
base.Activate();
DoFootSteps();
}
async void DoFootSteps()
{
foreach ( var childen in GameObject.Children )
{
await Task.DelaySeconds( 0.5f );
var part = ParticleEmitter.Clone();
part.Transform.Position = childen.Transform.Position;
part.Transform.Rotation = childen.Transform.Rotation + Rotation.FromYaw( 90 );
}
}
}