replacing sound (collection) names with SoundSpecifier - part 1

This commit is contained in:
Galactic Chimp
2021-07-10 17:35:33 +02:00
parent 4500b66f28
commit ce3c59e0e6
131 changed files with 934 additions and 587 deletions

View File

@@ -1,5 +1,6 @@
using System;
using Content.Shared.Damage;
using Content.Shared.Sound;
using Robust.Shared.GameObjects;
using Robust.Shared.Serialization.Manager.Attributes;
using Robust.Shared.ViewVariables;
@@ -13,11 +14,11 @@ namespace Content.Server.Weapon.Melee.Components
[ViewVariables(VVAccess.ReadWrite)]
[DataField("hitSound")]
public string HitSound { get; set; } = "/Audio/Weapons/genhit1.ogg";
public SoundSpecifier HitSound { get; set; } = new SoundPathSpecifier("/Audio/Weapons/genhit1.ogg");
[ViewVariables(VVAccess.ReadWrite)]
[DataField("missSound")]
public string MissSound { get; set; } = "/Audio/Weapons/punchmiss.ogg";
public SoundSpecifier MissSound { get; set; } = new SoundPathSpecifier("/Audio/Weapons/punchmiss.ogg");
[ViewVariables]
[DataField("arcCooldownTime")]

View File

@@ -91,12 +91,14 @@ namespace Content.Server.Weapon.Melee
damageableComponent.ChangeDamage(comp.DamageType, comp.Damage, false, owner);
}
SoundSystem.Play(Filter.Pvs(owner), comp.HitSound, target);
if(comp.HitSound.TryGetSound(out var hitSound))
SoundSystem.Play(Filter.Pvs(owner), hitSound, target);
}
}
else
{
SoundSystem.Play(Filter.Pvs(owner), comp.MissSound, args.User);
if(comp.MissSound.TryGetSound(out var missSound))
SoundSystem.Play(Filter.Pvs(owner), missSound, args.User);
return;
}
@@ -146,11 +148,13 @@ namespace Content.Server.Weapon.Melee
{
if (entities.Count != 0)
{
SoundSystem.Play(Filter.Pvs(owner), comp.HitSound, entities.First().Transform.Coordinates);
if(comp.HitSound.TryGetSound(out var hitSound))
SoundSystem.Play(Filter.Pvs(owner), hitSound, entities.First().Transform.Coordinates);
}
else
{
SoundSystem.Play(Filter.Pvs(owner), comp.MissSound, args.User.Transform.Coordinates);
if(comp.MissSound.TryGetSound(out var missSound))
SoundSystem.Play(Filter.Pvs(owner), missSound, args.User.Transform.Coordinates);
}
foreach (var entity in hitEntities)