Top.Mail.Ru
Ответы
Аватар пользователя
Аватар пользователя
Аватар пользователя
Аватар пользователя
Программирование
+2

Смена фона несколько раз на Unity

Мне нужно что бы при старте сцены спрайт фона менялся каждые 5 секунд на другой(примерно 10 штук) и что бы это время можно было регулировать
если знаете как в игре лунтик х ПОМОГИТЕ!
мне очень надо

По дате
По рейтингу
Аватар пользователя
Ученик
12345678910111213141516171819202122232425262728293031323334
 using System.Collections; 
using UnityEngine; 
 
public class BackgroundChanger : MonoBehaviour 
{ 
    public SpriteRenderer backgroundRenderer; // Ссылка на SpriteRenderer, который показывает фон 
    public Sprite[] backgrounds;              // Массив спрайтов для фонов 
    public float changeInterval = 5.0f;       // Интервал смены фона (в секундах) 
 
    private int currentBackgroundIndex = 0;   // Текущий индекс спрайта 
 
    void Start() 
    { 
        if (backgrounds.Length > 0) 
        { 
            StartCoroutine(ChangeBackground()); 
        } 
        else 
        { 
            Debug.LogWarning("No backgrounds assigned to the BackgroundChanger script."); 
        } 
    } 
 
    IEnumerator ChangeBackground() 
    { 
        while (true) 
        { 
            yield return new WaitForSeconds(changeInterval); 
            currentBackgroundIndex = (currentBackgroundIndex + 1) % backgrounds.Length; 
            backgroundRenderer.sprite = backgrounds[currentBackgroundIndex]; 
        } 
    } 
}