silent footsteps for ninja (#33280)
* waow * nice suggestion * nullable sound * fix stuff --------- Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com> Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
This commit is contained in:
@@ -104,7 +104,7 @@ public sealed class TippyUIController : UIController
|
||||
? -WaddleRotation
|
||||
: WaddleRotation;
|
||||
|
||||
if (EntityManager.TryGetComponent(_entity, out FootstepModifierComponent? step))
|
||||
if (EntityManager.TryGetComponent(_entity, out FootstepModifierComponent? step) && step.FootstepSoundCollection != null)
|
||||
{
|
||||
var audioParams = step.FootstepSoundCollection.Params
|
||||
.AddVolume(-7f)
|
||||
|
||||
@@ -9,6 +9,6 @@ namespace Content.Shared.Movement.Components;
|
||||
[RegisterComponent, NetworkedComponent, AutoGenerateComponentState]
|
||||
public sealed partial class FootstepModifierComponent : Component
|
||||
{
|
||||
[DataField(required: true), AutoNetworkedField]
|
||||
public SoundSpecifier FootstepSoundCollection = default!;
|
||||
[DataField, AutoNetworkedField]
|
||||
public SoundSpecifier? FootstepSoundCollection;
|
||||
}
|
||||
|
||||
@@ -439,14 +439,14 @@ public abstract partial class SharedMoverController : VirtualController
|
||||
if (FootstepModifierQuery.TryComp(uid, out var moverModifier))
|
||||
{
|
||||
sound = moverModifier.FootstepSoundCollection;
|
||||
return true;
|
||||
return sound != null;
|
||||
}
|
||||
|
||||
if (_inventory.TryGetSlotEntity(uid, "shoes", out var shoes) &&
|
||||
FootstepModifierQuery.TryComp(shoes, out var modifier))
|
||||
{
|
||||
sound = modifier.FootstepSoundCollection;
|
||||
return true;
|
||||
return sound != null;
|
||||
}
|
||||
|
||||
return TryGetFootstepSound(uid, xform, shoes != null, out sound, tileDef: tileDef);
|
||||
@@ -467,10 +467,9 @@ public abstract partial class SharedMoverController : VirtualController
|
||||
if (FootstepModifierQuery.TryComp(xform.MapUid, out var modifier))
|
||||
{
|
||||
sound = modifier.FootstepSoundCollection;
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
return sound != null;
|
||||
}
|
||||
|
||||
var position = grid.LocalToTile(xform.Coordinates);
|
||||
@@ -493,7 +492,7 @@ public abstract partial class SharedMoverController : VirtualController
|
||||
if (FootstepModifierQuery.TryComp(maybeFootstep, out var footstep))
|
||||
{
|
||||
sound = footstep.FootstepSoundCollection;
|
||||
return true;
|
||||
return sound != null;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -136,6 +136,9 @@
|
||||
# ninja are masters of sneaking around relatively quickly, won't break cloak
|
||||
walkModifier: 1.1
|
||||
sprintModifier: 1.3
|
||||
- type: FootstepModifier
|
||||
footstepSoundCollection:
|
||||
collection: null
|
||||
|
||||
- type: entity
|
||||
parent: ClothingShoesBaseButcherable
|
||||
|
||||
Reference in New Issue
Block a user