Nerf ringers (#6558)

This commit is contained in:
metalgearsloth
2022-02-08 22:15:06 +11:00
committed by GitHub
parent 19d175df26
commit acb0c8d3bb
15 changed files with 21 additions and 5 deletions

View File

@@ -1,11 +1,8 @@
using Content.Shared.PDA; using Content.Shared.PDA;
using Robust.Shared.GameObjects;
using Robust.Shared.Serialization.Manager.Attributes;
using Robust.Shared.ViewVariables;
namespace Content.Server.PDA.Ringer namespace Content.Server.PDA.Ringer
{ {
[RegisterComponent, ComponentProtoName("Ringer")] [RegisterComponent]
public sealed class RingerComponent : Component public sealed class RingerComponent : Component
{ {
[ViewVariables] [ViewVariables]
@@ -23,5 +20,16 @@ namespace Content.Server.PDA.Ringer
[DataField("isPlaying")] [DataField("isPlaying")]
public bool IsPlaying = false; public bool IsPlaying = false;
/// <summary>
/// How far the sound projects in metres.
/// </summary>
[ViewVariables(VVAccess.ReadWrite)]
[DataField("range")]
public float Range = 3f;
[ViewVariables(VVAccess.ReadWrite)]
[DataField("volume")]
public float Volume = -4f;
} }
} }

View File

@@ -114,7 +114,14 @@ namespace Content.Server.PDA.Ringer
if (ringer.TimeElapsed < NoteDelay) continue; if (ringer.TimeElapsed < NoteDelay) continue;
ringer.TimeElapsed -= NoteDelay; ringer.TimeElapsed -= NoteDelay;
SoundSystem.Play(Filter.Pvs(ringer.Owner, entityManager: EntityManager), GetSound(ringer.Ringtone[ringer.NoteCount])); var ringerXform = Transform(ringer.Owner);
SoundSystem.Play(
Filter.Empty().AddInRange(ringerXform.MapPosition, ringer.Range),
GetSound(ringer.Ringtone[ringer.NoteCount]),
ringer.Owner,
AudioParams.Default.WithMaxDistance(ringer.Range).WithVolume(ringer.Volume));
ringer.NoteCount++; ringer.NoteCount++;
if (ringer.NoteCount > 3) if (ringer.NoteCount > 3)

View File

@@ -103,6 +103,7 @@
- savemap - savemap
- tpgrid - tpgrid
- gridtc - gridtc
- togglespritenetsync
- Flags: ADMIN - Flags: ADMIN
Commands: Commands: