Я пытаюсь воспроизвести звук нажатием клавиши. Пока у меня это работает. Однако я хочу, чтобы при повторном нажатии клавиши звук прекратился. Я не хочу использовать другую клавишу для остановки звука. Я хочу тот же.
public class SCBA
{
static string GameDirectory;
static string soundDirectory;
static SoundPlayer player;
public static void InitializeSound()
{
player = new SoundPlayer();
GameDirectory = Directory.GetCurrentDirectory();
soundDirectory = GameDirectory + "/test/test/test/Audio";
Game.LogTrivial("Sound Directory located at" + soundDirectory);
try
{
player.SoundLocation = soundDirectory + "/test.wav";
}
catch(Exception e)
{
string error = e.Message;
Game.LogTrivial("Sound File located at" + player.SoundLocation);
Game.LogTrivial(String.Format("Something happened" + error));
}
}
public static void PlaySound()
{
try
{
player.Play();
}
catch (Exception e)
{
Game.LogTrivial(e.ToString());
Game.LogTrivial(String.Format("Something happened", e.Message));
}
}
}
А вот код из моего основного класса, который регистрирует, нажата ли клавиша
if (Game.IsKeyDown(Settings.SCBA))
{
SCBA.PlaySound();
}