BoxSound.cs 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4. using UnityEngine.UI;
  5. public class BoxSound : MonoBehaviour
  6. {
  7. [SerializeField] Sprite spriteSwitchOn;
  8. [SerializeField] Sprite spriteSwitchOff;
  9. void OnEnable()
  10. {
  11. RenderBGM(UserSettings.ins.openBGM);
  12. RenderEffect(UserSettings.ins.openEffect);
  13. }
  14. public void OnClick_SwitchBGM(Transform switcher)
  15. {
  16. AudioMgr.ins.PlayBtn();
  17. bool isOn = switcher.GetComponent<Image>().sprite == spriteSwitchOn;
  18. isOn = !isOn; //开关变动
  19. RenderBGM(isOn);
  20. UserSettings.ins.openBGM = isOn;
  21. UserSettings.ins.Save();
  22. }
  23. public void OnClick_SwitchEffect(Transform switcher)
  24. {
  25. AudioMgr.ins.PlayBtn();
  26. bool isOn = switcher.GetComponent<Image>().sprite == spriteSwitchOn;
  27. isOn = !isOn; //开关变动
  28. RenderEffect(isOn);
  29. UserSettings.ins.openEffect = isOn;
  30. UserSettings.ins.Save();
  31. }
  32. void RenderBGM(bool isOn)
  33. {
  34. transform.Find("Layout/ItemBGM/Switcher").GetComponent<Image>().sprite =
  35. isOn ? spriteSwitchOn : spriteSwitchOff;
  36. }
  37. void RenderEffect(bool isOn)
  38. {
  39. transform.Find("Layout/ItemEffect/Switcher").GetComponent<Image>().sprite =
  40. isOn ? spriteSwitchOn : spriteSwitchOff;
  41. }
  42. }