IF( walk AND !sound.Playing )
{
sound.PlaySound
}
тогда не будет 1000 раз звук ходьбы запускаться. Это не настоящий код, не знаю, какой там язык в гейммейкере, но суть понятна. Если уже играет, то не надо заново запускать.
Если можно повесить событие на окончание воспроизведения звука, тогда нужно в этом событии делать перезапуск звука, если человечек всё ещё идёт.