58 lines
1.3 KiB
C#
58 lines
1.3 KiB
C#
using DG.Tweening;
|
|
using UnityEngine;
|
|
|
|
public class MenuGameplayTransit : MonoBehaviour
|
|
{
|
|
[SerializeField] MenuLayoutController menu;
|
|
[SerializeField] GameplayLayoutController gameplay;
|
|
|
|
Sequence _sequence;
|
|
bool locked = false;
|
|
private void Update()
|
|
{
|
|
if (locked) return;
|
|
|
|
if (Input.GetKeyDown(KeyCode.Alpha1))
|
|
GotoGameplay();
|
|
else if (Input.GetKeyDown(KeyCode.Alpha2))
|
|
GotoMenu();
|
|
}
|
|
|
|
public void GotoGameplay()
|
|
{
|
|
Lock();
|
|
if (_sequence != null)
|
|
{
|
|
_sequence.Kill();
|
|
_sequence = null;
|
|
}
|
|
|
|
_sequence = DOTween.Sequence();
|
|
_sequence.Append(menu.GetCloseSequence());
|
|
_sequence.Append(gameplay.GetOpenSequence());
|
|
_sequence.onComplete += Unlock;
|
|
|
|
_sequence.PlayForward();
|
|
}
|
|
|
|
public void GotoMenu()
|
|
{
|
|
Lock();
|
|
if (_sequence != null)
|
|
{
|
|
_sequence.Kill();
|
|
_sequence = null;
|
|
}
|
|
|
|
_sequence = DOTween.Sequence();
|
|
_sequence.Append(gameplay.GetCloseSequence());
|
|
_sequence.Append(menu.GetOpenSequence());
|
|
_sequence.onComplete += Unlock;
|
|
|
|
_sequence.PlayForward();
|
|
}
|
|
|
|
private void Lock() => locked = true;
|
|
private void Unlock() => locked = false;
|
|
}
|