using UnityEngine;
using System.Collections.Generic;
using System.Collections;
using UnityEngine.UI;
public class Testdemo : MonoBehaviour {
public bool booldemo;
public Transform[] transformarr;
private List<Transform> _list = new List<Transform>();
public Transform obj;
public Transform obj1;
public Transform obj2;
public int movedemo=1;
public int number;
// Use this for initialization
void Start () {
for (int i = 0; i < transformarr.Length; i++)
{
transformarr[i].gameObject.SetActive(false);
_list.Add(transformarr[i]);
}
StartCoroutine(Test1());
}
// Update is called once per frame
void Update () {
switch (number)
{
case 1:
Move(obj);
break;
case 2:
Move(obj1);
break;
case 3:
Move(obj2);
break;
case 4:
break;
}
//Move(Transform obj);
//Move(Transform obj);
}
void OnDrawGizmos()
{
}
IEnumerator Test1()
{
yield return new WaitForSeconds(5);
SetActivetrue(_list[0]);
StartCoroutine(Test2());
}
IEnumerator Test2()
{
number = 1;
yield return new WaitForSeconds(5);
SetActivefalse(_list[0]);
SetActivetrue(_list[1]);
StartCoroutine(Test3());
}
IEnumerator Test3()
{
number = 2;
yield return new WaitForSeconds(5);
SetActivefalse(_list[1]);
SetActivetrue(_list[2]);
StartCoroutine(Test4());
}
IEnumerator Test4()
{
number = 3;
yield return new WaitForSeconds(5);
SetActivefalse(_list[2]);
number = 4;
}
public void SetActivetrue(Transform obj)
{
obj.gameObject.SetActive(true);
}
public void SetActivefalse(Transform obj)
{
obj.gameObject.SetActive(false);
}
public void Move(Transform obj)
{
if (obj.position.y>2)
{
movedemo = -1;
}
if(obj.position.y < 1)
{
movedemo = 1;
}
obj.Translate(Vector3.up * Time.deltaTime *movedemo*1, Space.Self);
}
}
协程编写特定时间生成物体并执行动画
最新推荐文章于 2020-07-09 09:46:51 发布