SpecialEquipment/Assets/scrip/UIFunction.cs

220 lines
6.9 KiB
C#

using System.Collections;
using System.Collections.Generic;
using System.Runtime.InteropServices.WindowsRuntime;
using UnityEngine;
using UnityEngine.UI;
public class UIFunction : MonoBehaviour
{
public Button exit;
public Button[] Function;
public Button[] Function1;
public GameObject[] InterFace;
public GameObject[] Text;
public GameObject background;
public GameObject background1;
public GameObject background2;
public Button return_;
public GameObject NextLevel_;
public GameObject ÊÓÆµÄ£¿é;
// Start is called before the first frame update
void Start()
{
return_.onClick.AddListener(delegate ()
{
ExitNextLevel();
FirstLevel(true);
ÊÓÆµÄ£¿é.SetActive(false);
NextLevel_.GetComponent<UIFunctionNextLevel>().WhatScenceSelcet = -1;
});
exit.onClick.AddListener(delegate ()
{
Exit();
});
for (int n = 0; n < Function.Length; n++)
{
switch (n)
{
case 0:
Function[0].GetComponent<UnityEngine.UI.Button>().onClick.AddListener(delegate ()
{
FirstLevel(false);
NextLevel(0);
});
break;
case 1:
Function[1].GetComponent<UnityEngine.UI.Button>().onClick.AddListener(delegate ()
{
FirstLevel(false);
NextLevel(1);
});
break;
case 2:
Function[2].GetComponent<UnityEngine.UI.Button>().onClick.AddListener(delegate ()
{
FirstLevel(false);
NextLevel(2);
});
break;
case 3:
Function[3].GetComponent<UnityEngine.UI.Button>().onClick.AddListener(delegate ()
{
FirstLevel(false);
NextLevel(3);
});
break;
case 4:
Function[4].GetComponent<UnityEngine.UI.Button>().onClick.AddListener(delegate ()
{
FirstLevel(false);
NextLevel(4);
});
break;
case 5:
Function[5].GetComponent<UnityEngine.UI.Button>().onClick.AddListener(delegate ()
{
FirstLevel(false);
NextLevel(5);
});
break;
case 6:
Function[6].GetComponent<UnityEngine.UI.Button>().onClick.AddListener(delegate ()
{
FirstLevel(false);
NextLevel(6);
});
break;
case 7:
Function[7].GetComponent<UnityEngine.UI.Button>().onClick.AddListener(delegate ()
{
FirstLevel(false);
NextLevel(7);
});
break;
}
}
for (int n = 0; n < Function1.Length; n++)
{
switch (n)
{
case 0:
Function1[0].GetComponent<UnityEngine.UI.Button>().onClick.AddListener(delegate ()
{
FirstLevel(false);
NextLevel(0);
});
break;
case 1:
Function1[1].GetComponent<UnityEngine.UI.Button>().onClick.AddListener(delegate ()
{
FirstLevel(false);
NextLevel(1);
});
break;
case 2:
Function1[2].GetComponent<UnityEngine.UI.Button>().onClick.AddListener(delegate ()
{
FirstLevel(false);
NextLevel(2);
});
break;
case 3:
Function1[3].GetComponent<UnityEngine.UI.Button>().onClick.AddListener(delegate ()
{
FirstLevel(false);
NextLevel(3);
});
break;
case 4:
Function1[4].GetComponent<UnityEngine.UI.Button>().onClick.AddListener(delegate ()
{
FirstLevel(false);
NextLevel(4);
});
break;
case 5:
Function1[5].GetComponent<UnityEngine.UI.Button>().onClick.AddListener(delegate ()
{
FirstLevel(false);
NextLevel(5);
});
break;
case 6:
Function1[6].GetComponent<UnityEngine.UI.Button>().onClick.AddListener(delegate ()
{
FirstLevel(false);
NextLevel(6);
});
break;
case 7:
Function1[7].GetComponent<UnityEngine.UI.Button>().onClick.AddListener(delegate ()
{
FirstLevel(false);
NextLevel(7);
});
break;
}
}
}
// Update is called once per frame
void Update()
{
}
private void FirstLevel(bool select)
{
for (int n = 0; n < Function.Length; n++)
{
Function[n].gameObject.SetActive(select);
}
for (int n = 0; n < Function.Length; n++)
{
Function1[n].gameObject.SetActive(select);
}
background.SetActive(select);
background1.SetActive(select);
}
private void NextLevel(int n)
{
if (InterFace[n] != null)
{
InterFace[n].SetActive(true);
background2.SetActive(true);
Text[n].SetActive(true);
NextLevel_.SetActive(true);
NextLevel_.GetComponent<UIFunctionNextLevel>().WhatScenceSelcet = n;
}
else
{
FirstLevel(true);
}
}
private void ExitNextLevel()
{
for (int n = 0; n < InterFace.Length; n++)
{
if (InterFace[n] != null)
{
InterFace[n].SetActive(false);
Text[n].SetActive(false);
}
}
background2.SetActive(false);
NextLevel_.SetActive(false);
}
private void Exit()
{
#if UNITY_EDITOR
UnityEditor.EditorApplication.isPlaying = false;
#else
Application.Quit();
#endif
}
}