Files
Darklings-FightingGame/Assets/_Project/Scripts/UIScripts/MenuScripts/PatchNotesMenu.cs
2023-08-28 02:38:39 +03:00

53 lines
1.8 KiB
C#

using System.Collections;
using UnityEngine;
public class PatchNotesMenu : BaseMenu
{
[SerializeField] private InputManager _inputManager = default;
[SerializeField] private PromptsInput _homePrompts = default;
[SerializeField] private RectTransform _scrollView = default;
[SerializeField] private RectTransform _patchNotes = default;
private readonly int _scrollSpeed = 350;
private float bottomScrollLimit = 0.0f;
private int _previousMenuIndex = 0;
public void Back()
{
_inputManager.CurrentPrompts = _homePrompts;
Hide();
}
public void SetPreviousMenuIndex(int index) => _previousMenuIndex = index;
void Update() => Scroll();
private void Scroll()
{
float movement = (_inputManager.NavigationInput.y * Time.deltaTime * _scrollSpeed) * -1;
if (movement < 0 && _scrollView.anchoredPosition.y > 0 || movement > 0 && _scrollView.anchoredPosition.y <= bottomScrollLimit)
{
_scrollView.anchoredPosition += new Vector2(0.0f, movement);
if (_scrollView.anchoredPosition.y < 0.0f)
{
_scrollView.anchoredPosition = new Vector2(0.0f, 0.0f);
}
else if (_scrollView.anchoredPosition.y > bottomScrollLimit)
{
_scrollView.anchoredPosition = new Vector2(0.0f, bottomScrollLimit);
}
}
}
void OnEnable() => _scrollView.anchoredPosition = Vector2.zero;
void Start() => StartCoroutine(SetUpPatchNotesCoroutine());
IEnumerator SetUpPatchNotesCoroutine()
{
yield return null;
_patchNotes.anchoredPosition = new Vector2(0.0f, -(_patchNotes.rect.height / 2.0f));
bottomScrollLimit = _patchNotes.rect.height - 300.0f;
_scrollView.anchoredPosition = Vector2.zero;
}
}