diff --git a/code/datums/components/footstep.dm b/code/datums/components/footstep.dm index fa6ea8b0576..d9b9bb0ab12 100644 --- a/code/datums/components/footstep.dm +++ b/code/datums/components/footstep.dm @@ -18,7 +18,10 @@ var/mob/living/LM = parent var/v = volume var/e = e_range - if(!T.footstep || LM.buckled || !CHECK_MULTIPLE_BITFIELDS(LM.mobility_flags, MOBILITY_STAND | MOBILITY_MOVE) || LM.throwing || LM.movement_type & (VENTCRAWLING | FLYING)) + if(!T.footstep || LM.buckled || LM.lying || !CHECK_MULTIPLE_BITFIELDS(LM.mobility_flags, MOBILITY_STAND | MOBILITY_MOVE) || LM.throwing || LM.movement_type & (VENTCRAWLING | FLYING)) + if (!T.footstep || LM.movement_type & (VENTCRAWLING | FLYING)) //don't play sounds if flying etc. + return + playsound(T, 'sound/effects/footstep/crawl1.ogg', 15 * v) //play crawling sound return if(iscarbon(LM)) @@ -92,7 +95,7 @@ TRUE, GLOB.footstep[T.footstep][3] + e) - if((!H.shoes && !feetCover) || !(H.mobility_flags & MOBILITY_STAND)) //are we NOT wearing shoes or are we lying/crawling (using hands to move around)? + if((!H.shoes && !feetCover)) //are we NOT wearing shoes if(H.dna.species.special_step_sounds) playsound(T, pick(H.dna.species.special_step_sounds), 50, TRUE) else diff --git a/sound/effects/footstep/crawl1.ogg b/sound/effects/footstep/crawl1.ogg new file mode 100644 index 00000000000..61a73a58d0c Binary files /dev/null and b/sound/effects/footstep/crawl1.ogg differ