A downloadable asset pack

Scripts

Nome do arquivo:   TrocaCenaController

using UnityEngine;

using UnityEngine.UI;

using UnityEngine.SceneManagement;

public class TrocaCenaController : MonoBehaviour

{

    [Header("Configurações")]

    public Button botaoTrocaCena;

    public string nomeCenaParaCarregar;

    public float tempoParaTrocarCena = 3f;

    public AudioSource somDeTransicao;

    public KeyCode teclaDeAtalho = KeyCode.Space;

    private bool cenaJaFoiCarregada = false;

    private bool temporizadorIniciado = false;

    void Start()

    {

        if (botaoTrocaCena != null)

            botaoTrocaCena.onClick.AddListener(IniciarTransicao);

    }

    void Update()

    {

        if (Input.GetKeyDown(teclaDeAtalho))

        {

            IniciarTransicao();

        }

    }

    void IniciarTransicao()

    {

        if (temporizadorIniciado) return;

        temporizadorIniciado = true;

        if (somDeTransicao != null)

            somDeTransicao.Play();

        Invoke("TentarTrocarCena", tempoParaTrocarCena);

    }

    void TentarTrocarCena()

    {

        if (cenaJaFoiCarregada) return;

        cenaJaFoiCarregada = true;

        if (!string.IsNullOrEmpty(nomeCenaParaCarregar))

            SceneManager.LoadScene(nomeCenaParaCarregar);

    }

}

Nome do arquivo:   TrocarCenaAutomatico

using UnityEngine;

using UnityEngine.SceneManagement;

public class TrocarCenaAutomatico : MonoBehaviour

{

    [Header("Configurações")]

    public string nomeCenaParaCarregar;

    public float tempoParaTrocarCena = 5f;

    void Start()

    {

        Invoke("TrocarCena", tempoParaTrocarCena);

    }

    void TrocarCena()

    {

        if (!string.IsNullOrEmpty(nomeCenaParaCarregar))

            SceneManager.LoadScene(nomeCenaParaCarregar);

    }

}

Nome do arquivo:   TrocarCenaAutomaticoKonBarra

using UnityEngine;

using UnityEngine.SceneManagement;

using UnityEngine.UI;

public class TrocarCenaAutomaticoKonBarra : MonoBehaviour

{

    [Header("Configurações de Cena")]

    public string nomeCenaParaCarregar;

    public float tempoParaTrocarCena = 5f;

    [Header("UI de Carregamento")]

    public Image barraDeProgresso; // tipo Filled

    [Header("Som Durante Carregamento")]

    public AudioSource somDuranteCarregamento;

    private float tempoAtual = 0f;

    private bool carregando = true;

    void Start()

    {

        tempoAtual = 0f;

        carregando = true;

        if (somDuranteCarregamento != null)

        {

            somDuranteCarregamento.loop = true;

            somDuranteCarregamento.Play();

        }

    }

    void Update()

    {

        if (!carregando) return;

        tempoAtual += Time.deltaTime;

        if (barraDeProgresso != null)

            barraDeProgresso.fillAmount = Mathf.Clamp01(tempoAtual / tempoParaTrocarCena);

        if (tempoAtual >= tempoParaTrocarCena)

        {

            carregando = false;

            if (somDuranteCarregamento != null)

                somDuranteCarregamento.Stop();

            SceneManager.LoadScene(nomeCenaParaCarregar);

        }

    }

}

Download

Download
SCENE.rar 1.4 kB

Leave a comment

Log in with itch.io to leave a comment.