IdleGirl/Assets/2_Codes/PrologueManager.cs

155 lines
4.1 KiB
C#
Raw Blame History

using System.Collections;
using System.Collections.Generic;
//using UnityEditor.Experimental.GraphView;
using UnityEngine;
using UnityEngine.UI;
using DG.Tweening;
using UnityEngine.SceneManagement;
using DarkTonic.MasterAudio;
public class Plo : MonoBehaviour
{
public Transform[] cartoons;
public int page;
public Button LeftBtn;
public Button RightBtn;
public Button IngameBtn;
public Image PadeImg;
private Camera mainCamera;
private void Start()
{
mainCamera = Camera.main;
cartoons[0].DOLocalMoveY(150, 0).SetEase(Ease.InBack);
cartoons[0].transform.DOScale(1.2f, 0);
for (int i = 1; i < 5; i++)
{
cartoons[i].DOLocalMoveY(5000, 0).SetEase(Ease.InBack);
cartoons[i].transform.DOScale(0, 0);
}
MasterAudio.PlaySound("BGM_RUMBATTLE", 0.7f, null,2.0f);
}
public void LeftBtnClick()
{
MasterAudio.PlaySound("SFX_Click", 1f, null);
if (page <= 0)
{
page = 0;
}
else
{
cartoons[page].DOLocalMoveY(5000, 0.5f).SetEase(Ease.InBack);
cartoons[page].transform.DOScale(0, 0);
page--;
}
cartoons[page].transform.DOScale(1.2f, 0);
cartoons[page].DOLocalMoveY(150, 0.25f).SetEase(Ease.OutBack);
if (page == 0)
{
LeftBtn.transform.DOScale(0, 0.5f).SetEase(Ease.InBack);
}
else if (page == 3)
{
IngameBtn.gameObject.SetActive(false);
IngameBtn.transform.DOScale(0.7f, 0);
RightBtn.gameObject.SetActive(true);
cartoons[4].transform.DOScale(0, 0);
}
}
public void RightBtnClick()
{
MasterAudio.PlaySound("SFX_Click", 1f, null);
cartoons[page].transform.DOScale(0, 0);
cartoons[page].DOLocalMoveY(5000, 0.5f).SetEase(Ease.InBack);
if (page >= 4)
{
page = 4;
}
else
{
page++;
cartoons[page].transform.DOScale(1.2f, 0);
cartoons[page].DOLocalMoveY(150, 0.25f).SetEase(Ease.OutBack);
}
Invoke("delay", 0.5f);
if (page == 1)
{
LeftBtn.transform.DOScale(-0.5f, 0.5f).SetEase(Ease.OutBack);
cartoons[2].transform.DOScale(0, 0);
}
else if (page == 4)
{
RightBtn.gameObject.SetActive(false);
IngameBtn.gameObject.SetActive(true);
}
}
private void delay()
{
cartoons[page].gameObject.SetActive(true);
return;
}
public void IngameBtnClick()
{
MasterAudio.PlaySound("SFX_GameStart", 1.0f, null);
PadeImg.gameObject.SetActive(true);
PadeImg.DOFade(1.0f, 1.0f).OnComplete(() =>
{
// <20>ִϸ<D6B4><CFB8>̼<EFBFBD> <20>Ϸ<EFBFBD> <20><> <20><> <20>ε带 <20><><EFBFBD><EFBFBD><EFBFBD>մϴ<D5B4>.
if (mainCamera != null)
{
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
Color targetColor = Color.black; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Ϸ<EFBFBD><CFB7><EFBFBD> <20><><EFBFBD><20>ٸ<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ϼ<EFBFBD><CFBC><EFBFBD>.
// DOTween<65><6E> <20><><EFBFBD><EFBFBD><EFBFBD>Ͽ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
mainCamera.DOColor(targetColor, 0.5f)
.SetEase(Ease.Linear) // <20><><EFBFBD><EFBFBD> <20>ִϸ<D6B4><CFB8>̼<EFBFBD><CCBC><EFBFBD> <20><>¡ <20><><EFBFBD><EFBFBD> (<28><><EFBFBD>û<EFBFBD><C3BB><EFBFBD>)
.OnComplete(() =>
{
// <20>ִϸ<D6B4><CFB8>̼<EFBFBD> <20><><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ڵ<EFBFBD> (<28><><EFBFBD>û<EFBFBD><C3BB><EFBFBD>)
});
}
StartCoroutine(LoadSceneAfterDelay(3, 0.5f));
});
}
private IEnumerator LoadSceneAfterDelay(int sceneIndex, float delay)
{
// <20><> <20>ε<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>̹<EFBFBD><CCB9><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
DisableAllCanvasesInScene();
yield return new WaitForSeconds(delay);
MasterAudio.StopAllOfSound("BGM_RUMBATTLE");
SceneManager.LoadScene(sceneIndex);
}
private void DisableAllCanvasesInScene()
{
// <20><><EFBFBD><EFBFBD> Canvas <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ<EFBFBD><C6AE> ã<><C3A3><EFBFBD>ϴ<EFBFBD>.
Canvas[] canvases = FindObjectsOfType<Canvas>();
// ã<><C3A3> <20><><EFBFBD><EFBFBD> Canvas<61><73> <20><>Ȱ<EFBFBD><C8B0>ȭ<EFBFBD>մϴ<D5B4>.
foreach (Canvas canvas in canvases)
{
canvas.gameObject.SetActive(false);
}
}
}