49 lines
1.4 KiB
C#
49 lines
1.4 KiB
C#
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
using DG.Tweening;
|
|
using UnityEngine.UI;
|
|
using System.Linq;
|
|
|
|
public class MultiSelectValidationCheck : MonoBehaviour
|
|
{
|
|
private SelectionManager selectionManager;
|
|
private RectTransform BarTransform;
|
|
private Vector2 OriginalBarTransform;
|
|
|
|
void Start()
|
|
{
|
|
selectionManager = SelectionManager.getInstance();
|
|
selectionManager.SelectionEvent.AddListener(SelectedItem);
|
|
BarTransform = GetComponent<RectTransform>();
|
|
OriginalBarTransform = BarTransform.anchoredPosition;
|
|
}
|
|
|
|
public void SelectedItem(IInteractable interactable)
|
|
{
|
|
Toggle[] Buttons = GetComponentsInChildren<Toggle>().Where((x) => x != transform).ToArray();
|
|
if (selectionManager.HasOneSelection())
|
|
{
|
|
foreach (Toggle button in Buttons)
|
|
{
|
|
if (button != null)
|
|
{
|
|
button.enabled = true;
|
|
}
|
|
}
|
|
BarTransform.DOAnchorPos(new Vector2(0, 0), 1.5f);
|
|
}
|
|
else
|
|
{
|
|
foreach (Toggle button in Buttons)
|
|
{
|
|
if (button != null)
|
|
{
|
|
button.enabled = false;
|
|
}
|
|
}
|
|
BarTransform.DOAnchorPos(OriginalBarTransform, 1.5f);
|
|
}
|
|
}
|
|
}
|