public void PlayOnceToggled(bool isOn) { if (canvasDelegate == null) { return; } SoundMarker selectedMarker = canvasDelegate.objectSelection.selectedMarker; if (selectedMarker == null && selectedMarker.hotspot != null) { return; } AnimateToggle(playOnceToggle, isOn); // Animate // - - - - - - - - - - - // Only allow loop to be turned on if PlayOnce is off bool loopInteractable = (isOn == false); bool loopIsOn = loopAudioToggle.isOn; loopAudioToggle.interactable = loopInteractable; if (loopAudioToggle.isOn == true && isOn == true) { loopIsOn = false; } else if (loopAudioToggle.isOn == false && isOn == false && triggerPlaybackToggle.isOn == false) { loopIsOn = true; } loopAudioToggle.isOn = loopIsOn; SetTriggerVisualInteractiveState(loopAudioToggle, loopInteractable, loopIsOn); // - - - - - - - - - - - // Save the data to the Hotspot selectedMarker.SetPlayOnce(isOn); }