howdy guys… I’m trying to get this coroutine to loop… but I don’t know how (I thought they always looped :x)
using UnityEngine;
using System.Collections;
public class CircleMotion2 : MonoBehaviour
{
public float PlanetRotateSpeed = -25.0f;
public float orbitSpeed = 10.0f;
public Transform startObject;
void Start()
{
Vector3 startObjPos = startObject.transform.position;
orbitSpeed = Vector3.Distance(transform.position, startObjPos);
StartCoroutine (Orbit(startObjPos, orbitSpeed));
}
void OnTriggerEnter(Collider other)
{
orbitSpeed = Vector3.Magnitude (transform.position - other.transform.position);
}
IEnumerator Orbit (Vector3 orbitObjPos, float orbitSpd)
{
while(true)
{
transform.RotateAround (orbitObjPos, Vector3.right, orbitSpeed * Time.deltaTime);
}
yield return null;
}