(サンプルコード1)
- 条件文を使ってコルーチンから抜ける。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class DoorMove : MonoBehaviour
{
private Vector3 pos;
void Start()
{
StartCoroutine(Move());
}
private IEnumerator Move()
{
while (true)
{
pos = transform.position;
transform.Translate(0, 0.01f, 0);
yield return new WaitForSeconds(0.01f);
if (pos.y > 6f)
{
break;
}
}
}
}
(サンプルコード2)
- for文を使って、所定回数だけ上昇を繰り返したら終了
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class DoorMove : MonoBehaviour
{
private Vector3 pos;
void Start()
{
StartCoroutine(Move());
}
private IEnumerator Move()
{
// 同じ作業を0.01秒毎に600回繰り返す。
for (int i = 0; i < 600; i++)
{
transform.Translate(0, 0.01f, 0);
yield return new WaitForSeconds(0.01f);
}
}
}