Revert "#3935 implemented suggestions from PR"

This reverts commit a9b1c7b96333ca570067d6a9df1954481005892a.
This commit is contained in:
Galactic Chimp
2021-06-27 21:27:59 +02:00
parent 50cc526ebd
commit c8e3775ea5
2 changed files with 24 additions and 5 deletions

View File

@@ -6,10 +6,12 @@ namespace Content.Server.Sound
{ {
/// <summary> /// <summary>
/// Base sound emitter which defines most of the data fields. /// Base sound emitter which defines most of the data fields.
/// Default behavior first try to play the sound collection,
/// and if one isn't assigned, then it will try to play the single sound.
/// </summary> /// </summary>
public abstract class BaseEmitSoundComponent : Component public abstract class BaseEmitSoundComponent : Component
{ {
[ViewVariables(VVAccess.ReadWrite)] [DataField("variation")] public float PitchVariation { get; set; } = 0.0f; [ViewVariables(VVAccess.ReadWrite)] [DataField("variation")] public float PitchVariation { get; set; }
[ViewVariables(VVAccess.ReadWrite)] [DataField("soundCollection", required: true)] public string SoundCollectionName { get; set; } = default!; [ViewVariables(VVAccess.ReadWrite)] [DataField("soundCollection")] public string? SoundCollectionName { get; set; }
} }
} }

View File

@@ -1,3 +1,4 @@
#nullable enable
using Content.Shared.Audio; using Content.Shared.Audio;
using Content.Shared.Interaction; using Content.Shared.Interaction;
using Content.Shared.Throwing; using Content.Shared.Throwing;
@@ -10,6 +11,7 @@ using Robust.Shared.IoC;
using Robust.Shared.Prototypes; using Robust.Shared.Prototypes;
using Robust.Shared.Player; using Robust.Shared.Player;
using Robust.Shared.Random; using Robust.Shared.Random;
using Robust.Shared.Log;
namespace Content.Server.Sound namespace Content.Server.Sound
{ {
@@ -30,9 +32,16 @@ namespace Content.Server.Sound
} }
private void PlaySound(BaseEmitSoundComponent component) private void PlaySound(BaseEmitSoundComponent component)
{
if (!string.IsNullOrWhiteSpace(component.SoundCollectionName))
{ {
PlayRandomSoundFromCollection(component); PlayRandomSoundFromCollection(component);
} }
else
{
Logger.Warning($"{nameof(component)}: {component.Owner} has no {nameof(component.SoundCollectionName)} to play.");
}
}
private void PlayRandomSoundFromCollection(BaseEmitSoundComponent component) private void PlayRandomSoundFromCollection(BaseEmitSoundComponent component)
{ {
@@ -47,10 +56,18 @@ namespace Content.Server.Sound
} }
private static void PlaySingleSound(string soundName, BaseEmitSoundComponent component) private static void PlaySingleSound(string soundName, BaseEmitSoundComponent component)
{
if (component.PitchVariation > 0.0)
{ {
SoundSystem.Play(Filter.Pvs(component.Owner), soundName, component.Owner, SoundSystem.Play(Filter.Pvs(component.Owner), soundName, component.Owner,
AudioHelpers.WithVariation(component.PitchVariation).WithVolume(-2f)); AudioHelpers.WithVariation(component.PitchVariation).WithVolume(-2f));
} }
else
{
SoundSystem.Play(Filter.Pvs(component.Owner), soundName, component.Owner,
AudioParams.Default.WithVolume(-2f));
}
}
} }
} }