102 lines
3.3 KiB
C#
102 lines
3.3 KiB
C#
|
|
using System.Collections;
|
|||
|
|
using System.Collections.Generic;
|
|||
|
|
using UnityEngine;
|
|||
|
|
using UnityEngine.UI;
|
|||
|
|
using UnityEngine.EventSystems;
|
|||
|
|
using DG.Tweening;
|
|||
|
|
using Unity.VisualScripting;
|
|||
|
|
using UnityEngine.Tilemaps;
|
|||
|
|
using DG.Tweening.Plugins.Options;
|
|||
|
|
using UnityEngine.SocialPlatforms;
|
|||
|
|
using DarkTonic.MasterAudio;
|
|||
|
|
using UnityEngine.SceneManagement;
|
|||
|
|
|
|||
|
|
public class LobbyManager : MonoBehaviour
|
|||
|
|
{
|
|||
|
|
public GameObject UiWorldMap;
|
|||
|
|
public GameObject ButtonPopUp;
|
|||
|
|
public Transform heroImage;
|
|||
|
|
public Transform talkBox;
|
|||
|
|
private bool isFadingOut = false;
|
|||
|
|
|
|||
|
|
public void WorldMapBtnClick()
|
|||
|
|
{
|
|||
|
|
MasterAudio.PlaySound("SFX_Click", 1f, null);
|
|||
|
|
StartCoroutine(LoadSceneAfterDelay(4, 0.5f));
|
|||
|
|
}
|
|||
|
|
public void MenuBtnClick()
|
|||
|
|
{
|
|||
|
|
MasterAudio.PlaySound("SFX_Click", 1f, null);
|
|||
|
|
// <20><><EFBFBD>̵<EFBFBD> <20><>
|
|||
|
|
ButtonPopUp.SetActive(true);
|
|||
|
|
CanvasGroup canvasGroup = ButtonPopUp.GetComponent<CanvasGroup>();
|
|||
|
|
canvasGroup.alpha = 0; // ó<><C3B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> 0<><30><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
|||
|
|
|
|||
|
|
canvasGroup.DOFade(1f, 0.5f).OnComplete(() =>
|
|||
|
|
{
|
|||
|
|
// 1<><31> <20>Ŀ<EFBFBD> <20><><EFBFBD>̵<EFBFBD> <20>ƿ<EFBFBD> <20><><EFBFBD><EFBFBD>
|
|||
|
|
StartCoroutine(FadeOutAfterDelay());
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
private IEnumerator FadeOutAfterDelay()
|
|||
|
|
{
|
|||
|
|
if (isFadingOut)
|
|||
|
|
{
|
|||
|
|
// <20>̹<EFBFBD> <20>ִϸ<D6B4><CFB8>̼<EFBFBD><CCBC><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD≯<EFBFBD> <20>ƹ<EFBFBD><C6B9>͵<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
|||
|
|
yield break;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
isFadingOut = true; // <20>ִϸ<D6B4><CFB8>̼<EFBFBD><CCBC><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ǥ<><C7A5>
|
|||
|
|
|
|||
|
|
yield return new WaitForSeconds(1f); // 1<><31> <20><><EFBFBD><EFBFBD>
|
|||
|
|
|
|||
|
|
CanvasGroup canvasGroup = ButtonPopUp.GetComponent<CanvasGroup>();
|
|||
|
|
|
|||
|
|
canvasGroup.DOFade(0f, 0.5f).OnComplete(() =>
|
|||
|
|
{
|
|||
|
|
// <20><><EFBFBD>̵<EFBFBD> <20>ƿ<EFBFBD> <20>Ϸ<EFBFBD> <20><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ <20><>Ȱ<EFBFBD><C8B0>ȭ
|
|||
|
|
ButtonPopUp.SetActive(false);
|
|||
|
|
isFadingOut = false; // <20>ִϸ<D6B4><CFB8>̼<EFBFBD><CCBC><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Ǿ<EFBFBD><C7BE><EFBFBD><EFBFBD><EFBFBD> ǥ<><C7A5>
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
public void HeroImgBtnClick()
|
|||
|
|
{
|
|||
|
|
// <20><><EFBFBD><EFBFBD> <20><>ġ <20><><EFBFBD><EFBFBD>
|
|||
|
|
Vector3 originalPosition = heroImage.position;
|
|||
|
|
|
|||
|
|
// TalkBox ũ<>⸦ 0<><30><EFBFBD><EFBFBD> 1<><31> Ű<><C5B0><EFBFBD><EFBFBD> <20>ִϸ<D6B4><CFB8>̼<EFBFBD>
|
|||
|
|
talkBox.localScale = Vector3.zero; // ó<><C3B3><EFBFBD><EFBFBD> ũ<>⸦ 0<><30><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
|||
|
|
|
|||
|
|
// Y <20><>ġ <20><><EFBFBD><EFBFBD>
|
|||
|
|
heroImage.DOMoveY(heroImage.position.y + 30f, 0.3f).SetEase(Ease.OutBack).OnComplete(() =>
|
|||
|
|
{
|
|||
|
|
// <20><><EFBFBD><EFBFBD> <20><>ġ<EFBFBD><C4A1> <20>ǵ<EFBFBD><C7B5>ƿ<EFBFBD><C6BF><EFBFBD>
|
|||
|
|
heroImage.DOMove(originalPosition, 0.1f).SetEase(Ease.InBack).OnComplete(() =>
|
|||
|
|
{
|
|||
|
|
// <20>¿<EFBFBD><C2BF><EFBFBD> <20><><EFBFBD>鸲 ȿ<><C8BF>
|
|||
|
|
heroImage.DOPunchPosition(new Vector3(10f, 0f, 0f), 1f);
|
|||
|
|
// ũ<>⸦ 1<><31> Ű<><C5B0>
|
|||
|
|
talkBox.gameObject.SetActive(true); // GameObject<63><74> Ȱ<><C8B0>ȭ<EFBFBD>մϴ<D5B4>.
|
|||
|
|
talkBox.DOScale(Vector3.one, 0.3f).SetEase(Ease.OutBack).OnComplete(() =>
|
|||
|
|
{
|
|||
|
|
// 2<><32> <20>Ŀ<EFBFBD> ũ<>⸦ 0<><30><EFBFBD><EFBFBD> <20>ٿ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ִϸ<D6B4><CFB8>̼<EFBFBD>
|
|||
|
|
DOTween.Sequence()
|
|||
|
|
.AppendInterval(1.5f) // 1.2<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
|||
|
|
.Append(talkBox.DOScale(Vector3.zero, 0.3f).SetEase(Ease.InBack).OnComplete(() =>
|
|||
|
|
{
|
|||
|
|
// <20>ִϸ<D6B4><CFB8>̼<EFBFBD> <20>Ϸ<EFBFBD> <20><> ó<><C3B3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20>߰<EFBFBD><DFB0><EFBFBD> <20><> <20>ֽ<EFBFBD><D6BD>ϴ<EFBFBD>.
|
|||
|
|
}));
|
|||
|
|
});
|
|||
|
|
});
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
private IEnumerator LoadSceneAfterDelay(int sceneIndex, float delay)
|
|||
|
|
{
|
|||
|
|
yield return new WaitForSeconds(delay);
|
|||
|
|
SceneManager.LoadScene(sceneIndex);
|
|||
|
|
}
|
|||
|
|
}
|