diff --git a/OpenRA.Game/Sound/SoundDevice.cs b/OpenRA.Game/Sound/SoundDevice.cs index 6733b69933..cec1a2d8d0 100644 --- a/OpenRA.Game/Sound/SoundDevice.cs +++ b/OpenRA.Game/Sound/SoundDevice.cs @@ -46,5 +46,6 @@ namespace OpenRA float Volume { get; set; } float SeekPosition { get; } bool Playing { get; } + void SetPosition(WPos pos); } } diff --git a/OpenRA.Platforms.Default/OpenAlSoundEngine.cs b/OpenRA.Platforms.Default/OpenAlSoundEngine.cs index bd16126147..2985aa8e42 100644 --- a/OpenRA.Platforms.Default/OpenAlSoundEngine.cs +++ b/OpenRA.Platforms.Default/OpenAlSoundEngine.cs @@ -405,5 +405,10 @@ namespace OpenRA.Platforms.Default return state == AL10.AL_PLAYING; } } + + public void SetPosition(WPos pos) + { + AL10.alSource3f(Source, AL10.AL_POSITION, pos.X, pos.Y, pos.Z); + } } }