using System.Collections; using UnityEngine; using UnityEngine.UI; public class ImageLoop : MonoBehaviour { public Sprite[] sprites; public int LoopSpeed = 2; [Tooltip("0 초과 시 돌아감"), Range(0f, 10f)] public float zRot_Speed = 0f; Image image; SpriteRenderer spriteRenderer; private void Awake() { image = GetComponent(); spriteRenderer = GetComponent(); } private void OnEnable() { StopAllCoroutines(); StartCoroutine(Co_Update()); } private IEnumerator Co_Update() { int index = -1; float r_z = 0f; while (true) { ++index; if (index >= sprites.Length) index = 0; if (image) image.sprite = sprites[index]; else if (spriteRenderer) spriteRenderer.sprite = sprites[index]; if (zRot_Speed > 0f) { transform.eulerAngles = new Vector3(0f, 0f, r_z); r_z += zRot_Speed; if (r_z > 359f) r_z = 0f; } for (int i = 0; i < LoopSpeed; i++) yield return null; } } }