diff --git a/Content.Shared/Maps/ContentTileDefinition.cs b/Content.Shared/Maps/ContentTileDefinition.cs index b93a74faf6..8fb3c5656e 100644 --- a/Content.Shared/Maps/ContentTileDefinition.cs +++ b/Content.Shared/Maps/ContentTileDefinition.cs @@ -37,6 +37,8 @@ namespace Content.Shared.Maps [DataField("footstep_sounds")] public SoundSpecifier? FootstepSounds { get; } + [DataField("barestep_sounds")] public SoundSpecifier? BarestepSounds { get; } = new SoundCollectionSpecifier("barestep_hard"); + [DataField("friction")] public float Friction { get; set; } [DataField("variants")] public byte Variants { get; set; } = 1; diff --git a/Content.Shared/Movement/Systems/SharedMoverController.cs b/Content.Shared/Movement/Systems/SharedMoverController.cs index 9f1cc7aa4c..68b5bf34f8 100644 --- a/Content.Shared/Movement/Systems/SharedMoverController.cs +++ b/Content.Shared/Movement/Systems/SharedMoverController.cs @@ -355,10 +355,10 @@ namespace Content.Shared.Movement.Systems return true; } - return TryGetFootstepSound(coordinates, out sound); + return TryGetFootstepSound(coordinates, shoes != null, out sound); } - private bool TryGetFootstepSound(EntityCoordinates coordinates, [NotNullWhen(true)] out SoundSpecifier? sound) + private bool TryGetFootstepSound(EntityCoordinates coordinates, bool haveShoes, [NotNullWhen(true)] out SoundSpecifier? sound) { sound = null; var gridUid = coordinates.GetGridUid(EntityManager); @@ -393,7 +393,7 @@ namespace Content.Shared.Movement.Systems // Walking on a tile. var def = (ContentTileDefinition) _tileDefinitionManager[tile.Tile.TypeId]; - sound = def.FootstepSounds; + sound = haveShoes ? def.FootstepSounds : def.BarestepSounds; return sound != null; } } diff --git a/Resources/Audio/Effects/Footsteps/carpetbarefoot1.ogg b/Resources/Audio/Effects/Footsteps/carpetbarefoot1.ogg new file mode 100644 index 0000000000..81615d2970 Binary files /dev/null and b/Resources/Audio/Effects/Footsteps/carpetbarefoot1.ogg differ diff --git a/Resources/Audio/Effects/Footsteps/carpetbarefoot2.ogg b/Resources/Audio/Effects/Footsteps/carpetbarefoot2.ogg new file mode 100644 index 0000000000..d1c7e1627e Binary files /dev/null and b/Resources/Audio/Effects/Footsteps/carpetbarefoot2.ogg differ diff --git a/Resources/Audio/Effects/Footsteps/carpetbarefoot3.ogg b/Resources/Audio/Effects/Footsteps/carpetbarefoot3.ogg new file mode 100644 index 0000000000..13ecb3398b Binary files /dev/null and b/Resources/Audio/Effects/Footsteps/carpetbarefoot3.ogg differ diff --git a/Resources/Audio/Effects/Footsteps/carpetbarefoot4.ogg b/Resources/Audio/Effects/Footsteps/carpetbarefoot4.ogg new file mode 100644 index 0000000000..31850250be Binary files /dev/null and b/Resources/Audio/Effects/Footsteps/carpetbarefoot4.ogg differ diff --git a/Resources/Audio/Effects/Footsteps/carpetbarefoot5.ogg b/Resources/Audio/Effects/Footsteps/carpetbarefoot5.ogg new file mode 100644 index 0000000000..e9a44765b1 Binary files /dev/null and b/Resources/Audio/Effects/Footsteps/carpetbarefoot5.ogg differ diff --git a/Resources/Audio/Effects/Footsteps/hardbarefoot1.ogg b/Resources/Audio/Effects/Footsteps/hardbarefoot1.ogg new file mode 100644 index 0000000000..2614872191 Binary files /dev/null and b/Resources/Audio/Effects/Footsteps/hardbarefoot1.ogg differ diff --git a/Resources/Audio/Effects/Footsteps/hardbarefoot2.ogg b/Resources/Audio/Effects/Footsteps/hardbarefoot2.ogg new file mode 100644 index 0000000000..7d89d96105 Binary files /dev/null and b/Resources/Audio/Effects/Footsteps/hardbarefoot2.ogg differ diff --git a/Resources/Audio/Effects/Footsteps/hardbarefoot3.ogg b/Resources/Audio/Effects/Footsteps/hardbarefoot3.ogg new file mode 100644 index 0000000000..639751fab0 Binary files /dev/null and b/Resources/Audio/Effects/Footsteps/hardbarefoot3.ogg differ diff --git a/Resources/Audio/Effects/Footsteps/hardbarefoot4.ogg b/Resources/Audio/Effects/Footsteps/hardbarefoot4.ogg new file mode 100644 index 0000000000..9cf363a18c Binary files /dev/null and b/Resources/Audio/Effects/Footsteps/hardbarefoot4.ogg differ diff --git a/Resources/Audio/Effects/Footsteps/hardbarefoot5.ogg b/Resources/Audio/Effects/Footsteps/hardbarefoot5.ogg new file mode 100644 index 0000000000..72ebeca84d Binary files /dev/null and b/Resources/Audio/Effects/Footsteps/hardbarefoot5.ogg differ diff --git a/Resources/Audio/Effects/Footsteps/sources.txt b/Resources/Audio/Effects/Footsteps/sources.txt index 517725b32f..8c96bc6caa 100644 --- a/Resources/Audio/Effects/Footsteps/sources.txt +++ b/Resources/Audio/Effects/Footsteps/sources.txt @@ -1,11 +1,13 @@ -Most sounds in this folder taken from here unless otherwise specified: +Most sounds in this folder taken from here unless otherwise specified: https://github.com/discordia-space/CEV-Eris/tree/04f9e57ecf8a1c89ae2cba0f6803b6c5e9887c15/sound/effects/footstep https://github.com/tgstation/tgstation/tree/f8ee37afc00bce1ad421615eaa0e4cbddd5eea90/sound/effects https://github.com/vgstation-coders/vgstation13/tree/fbe7abec4cbadf2ad01369838828704fd7ca81ea/sound/effects +bare foorsteps taken from tgstation at commit https://github.com/tgstation/tgstation/commit/e0bbbca40f6cdbcf2b497228215a37e9c9ec8473 + catwalk, floor, plating, tile, hull and wood sfx modified by mirrorcult. grass1.ogg and grass2.ogg are taken from https://freesound.org/people/D001447733/sounds/464609/ by D001447733 licensed under CC BY-3.0 and split by mirrorcult grass3.ogg and grass4.ogg are taken from https://freesound.org/people/jevans27/sounds/563529/ by jevans27 licensed under CC-0 and split/modified by mirrorcult -snowstep1.ogg, snowstep2.ogg, snowstep3.ogg, and snowstep4.ogg are taken from https://freesound.org/people/alexo400/sounds/543385/ by alexo400 licensed under CC-0 and split by EmoGarbage404 \ No newline at end of file +snowstep1.ogg, snowstep2.ogg, snowstep3.ogg, and snowstep4.ogg are taken from https://freesound.org/people/alexo400/sounds/543385/ by alexo400 licensed under CC-0 and split by EmoGarbage404 diff --git a/Resources/Audio/Effects/Footsteps/woodbarefoot1.ogg b/Resources/Audio/Effects/Footsteps/woodbarefoot1.ogg new file mode 100644 index 0000000000..bb66da770e Binary files /dev/null and b/Resources/Audio/Effects/Footsteps/woodbarefoot1.ogg differ diff --git a/Resources/Audio/Effects/Footsteps/woodbarefoot2.ogg b/Resources/Audio/Effects/Footsteps/woodbarefoot2.ogg new file mode 100644 index 0000000000..67397d868e Binary files /dev/null and b/Resources/Audio/Effects/Footsteps/woodbarefoot2.ogg differ diff --git a/Resources/Audio/Effects/Footsteps/woodbarefoot3.ogg b/Resources/Audio/Effects/Footsteps/woodbarefoot3.ogg new file mode 100644 index 0000000000..113a89003a Binary files /dev/null and b/Resources/Audio/Effects/Footsteps/woodbarefoot3.ogg differ diff --git a/Resources/Audio/Effects/Footsteps/woodbarefoot4.ogg b/Resources/Audio/Effects/Footsteps/woodbarefoot4.ogg new file mode 100644 index 0000000000..ccc2e82075 Binary files /dev/null and b/Resources/Audio/Effects/Footsteps/woodbarefoot4.ogg differ diff --git a/Resources/Audio/Effects/Footsteps/woodbarefoot5.ogg b/Resources/Audio/Effects/Footsteps/woodbarefoot5.ogg new file mode 100644 index 0000000000..6fbce27109 Binary files /dev/null and b/Resources/Audio/Effects/Footsteps/woodbarefoot5.ogg differ diff --git a/Resources/Prototypes/SoundCollections/footsteps.yml b/Resources/Prototypes/SoundCollections/footsteps.yml index a9a63021bb..2b7c89191a 100644 --- a/Resources/Prototypes/SoundCollections/footsteps.yml +++ b/Resources/Prototypes/SoundCollections/footsteps.yml @@ -101,3 +101,30 @@ - /Audio/Effects/Footsteps/grass2.ogg - /Audio/Effects/Footsteps/grass3.ogg - /Audio/Effects/Footsteps/grass4.ogg + +- type: soundCollection + id: barestep_hard + files: + - /Audio/Effects/Footsteps/hardbarefoot1.ogg + - /Audio/Effects/Footsteps/hardbarefoot2.ogg + - /Audio/Effects/Footsteps/hardbarefoot3.ogg + - /Audio/Effects/Footsteps/hardbarefoot4.ogg + - /Audio/Effects/Footsteps/hardbarefoot5.ogg + +- type: soundCollection + id: barestep_carpet + files: + - /Audio/Effects/Footsteps/carpetbarefoot1.ogg + - /Audio/Effects/Footsteps/carpetbarefoot2.ogg + - /Audio/Effects/Footsteps/carpetbarefoot3.ogg + - /Audio/Effects/Footsteps/carpetbarefoot4.ogg + - /Audio/Effects/Footsteps/carpetbarefoot5.ogg + +- type: soundCollection + id: barestep_wood + files: + - /Audio/Effects/Footsteps/woodbarefoot1.ogg + - /Audio/Effects/Footsteps/woodbarefoot2.ogg + - /Audio/Effects/Footsteps/woodbarefoot3.ogg + - /Audio/Effects/Footsteps/woodbarefoot4.ogg + - /Audio/Effects/Footsteps/woodbarefoot5.ogg diff --git a/Resources/Prototypes/Tiles/floors.yml b/Resources/Prototypes/Tiles/floors.yml index 02f0eed5ae..d47ec8abfb 100644 --- a/Resources/Prototypes/Tiles/floors.yml +++ b/Resources/Prototypes/Tiles/floors.yml @@ -27,6 +27,8 @@ can_crowbar: true footstep_sounds: collection: footstep_wood + barestep_sounds: + collection: barestep_wood friction: 0.30 item_drop: FloorTileItemWood thermalConductivity: 0.04 @@ -335,6 +337,8 @@ can_crowbar: true footstep_sounds: collection: footstep_carpet + barestep_sounds: + collection: barestep_carpet friction: 0.40 item_drop: FloorTileItemArcadeBlue thermalConductivity: 0.04 @@ -350,6 +354,8 @@ can_crowbar: true footstep_sounds: collection: footstep_carpet + barestep_sounds: + collection: barestep_carpet friction: 0.40 item_drop: FloorTileItemArcadeBlue2 thermalConductivity: 0.04 @@ -365,6 +371,8 @@ can_crowbar: true footstep_sounds: collection: footstep_carpet + barestep_sounds: + collection: barestep_carpet friction: 0.40 item_drop: FloorTileItemArcadeRed thermalConductivity: 0.04 @@ -380,6 +388,8 @@ can_crowbar: true footstep_sounds: collection: footstep_carpet + barestep_sounds: + collection: barestep_carpet friction: 0.40 item_drop: FloorTileItemEighties thermalConductivity: 0.04 @@ -395,6 +405,8 @@ can_crowbar: true footstep_sounds: collection: footstep_carpet + barestep_sounds: + collection: barestep_carpet friction: 0.40 item_drop: FloorTileItemCarpetClown thermalConductivity: 0.04 @@ -410,6 +422,8 @@ can_crowbar: true footstep_sounds: collection: footstep_carpet + barestep_sounds: + collection: barestep_carpet friction: 0.40 item_drop: FloorTileItemCarpetOffice thermalConductivity: 0.04 @@ -851,7 +865,7 @@ friction: 0.30 thermalConductivity: 0.04 heatCapacity: 10000 - + - type: tile id: FloorCaveDrought name: cave drought @@ -866,4 +880,4 @@ collection: footstep_asteroid friction: 0.30 thermalConductivity: 0.04 - heatCapacity: 10000 \ No newline at end of file + heatCapacity: 10000