TimeLimitGameDistanceSelectView.cs 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4. using UnityEngine.UI;
  5. /* 限时模式的靶子距离选择界面 */
  6. public class TimeLimitGameDistanceSelectView : MonoBehaviour
  7. {
  8. void Start()
  9. {
  10. GameMgr.ins.addLockerForGamePause(this);
  11. Transform layout = this.transform.Find("Layout");
  12. GameObject itemPrefab = layout.Find("Item").gameObject;
  13. for (int i = 1; i < TimeLimitGameMode.distanceCanSelected.Length; i++) {
  14. GameObject.Instantiate<GameObject>(
  15. itemPrefab, Vector3.zero, Quaternion.identity, this.transform.Find("Layout")
  16. );
  17. }
  18. for (int i = 0; i < TimeLimitGameMode.distanceCanSelected.Length; i++) {
  19. int distance = TimeLimitGameMode.distanceCanSelected[i];
  20. Transform item = layout.GetChild(i);
  21. item.transform.Find("Text").GetComponent<Text>().text = distance + "米";
  22. Button btn = item.gameObject.GetComponent<Button>();
  23. btn.onClick.AddListener(delegate() {
  24. AudioMgr.ins.PlayBtn();
  25. TimeLimitGameMode.distance = distance;
  26. ((TimeLimitGameMode) GameMgr.ins.gameMode).ConfirmSelectedTargetDistance();
  27. Destroy(this.gameObject);
  28. });
  29. }
  30. GameAssistUI.ins.copyButtonBack(this.transform);
  31. }
  32. void OnDestroy()
  33. {
  34. if (GameMgr.ins) GameMgr.ins.removeLockerForGamePause(this);
  35. }
  36. }