здесь проблема: скажем, вы работаете со скоростью 60 кадров в секунду.если вы удерживаете клавишу нажатой в течение 1 секунды, ваш звуковой эффект сработает 60 раз (обратите внимание, что вы проверяете только .IsKeyDown, чтобы проверять только один раз, когда вам нужно проверить, нажата ли она, а не нажата)
так что у вас есть пара решений:
1) вы излучаете только при первом нажатии
2) вы входите в свой проект xact иограничьте максимальное количество экземпляров вашей реплики или категории чем-то разумным (3 - хорошее число, использующее замену самого старого)
, в то время как у вас может возникнуть искушение сделать # 1, лучшее решение - #2 , поскольку он знакомит вас с тем, как правильно ограничить звуковое излучение в глобальном масштабе, плюс есть много интересных связанных с xact вещей, которые вы можете делать, когда вы знаете (меняйте высоту, произвольно выбирайте другие звуки и т. Д.).