public void Update(Status status, IIsaacReader reader) { if (!status.Ready) { SoundFunPlayer.ResetTouchedItems(); _firstCheck = true; return; } var numberOfPlayers = MemoryReader.GetNumberOfPlayers(); if (numberOfPlayers == 0) { SoundFunPlayer.ResetTouchedItems(); _firstCheck = true; return; } var timerCounter = reader.GetTimeCounter(); var reseted = timerCounter < 2; // resets on hold "r" if (reseted) { SoundFunPlayer.ResetTouchedItems(); } if (reader.IsGamePaused()) { SoundFunPlayer.Pause(false); return; } // tries to resume SoundFunPlayer.Resume(false); var startCheck = reseted || _firstCheck; _firstCheck = false; SoundFunPlayer.CheckPlaySound(reader.GetItemsTouchedList(), startCheck); }