ImaageQ_Unity_App/Assets/Rendering/Scripts/Input/AnimationsUI.cs
Ignacio Gómez Puga 5847d844a5 Removed TOTU 103
2025-03-04 12:04:52 -06:00

49 lines
1.8 KiB
C#

using UnityEngine;
public class AnimationsUI : MonoBehaviour
{
[SerializeField] private GameObject extraMenu;
private bool isMenuActive = false;
void Start()
{
// Asegurarse de que el menú esté en la posición fuera de la pantalla al inicio
extraMenu.GetComponent<RectTransform>().anchoredPosition = new Vector2(extraMenu.GetComponent<RectTransform>().anchoredPosition.x, 550);
extraMenu.SetActive(false); // El menú empieza desactivado
}
public void ToggleExtraMenu()
{
if (isMenuActive)
{
DeactivateExtraMenu();
}
else
{
ActivateExtraMenu();
}
}
public void ActivateExtraMenu()
{
// Colocar el menú en la posición fuera de la vista antes de activarlo
extraMenu.GetComponent<RectTransform>().anchoredPosition = new Vector2(extraMenu.GetComponent<RectTransform>().anchoredPosition.x, 550);
extraMenu.SetActive(true); // Activar el menú inmediatamente
LeanTween.moveY(extraMenu.GetComponent<RectTransform>(), -400, 0.5f) // Reducir tiempo de animación
.setEase(LeanTweenType.easeOutExpo)
.setOnComplete(() => isMenuActive = true); // Cambiar el estado del menú
}
public void DeactivateExtraMenu()
{
// Animar el menú para ocultarlo y desactivarlo al terminar la animación
LeanTween.moveY(extraMenu.GetComponent<RectTransform>(), 550, 0.5f) // Reducir tiempo de animación
.setEase(LeanTweenType.easeInExpo)
.setOnComplete(() =>
{
extraMenu.SetActive(false); // Desactivar el menú después de la animación
isMenuActive = false; // Cambiar el estado del menú
});
}
}