Revert "Cleanup"

This reverts commit f571fbf5807ebcaecc741b34a6c933449edc03c9.

Revert "Cleanup"

This reverts commit f571fbf5807ebcaecc741b34a6c933449edc03c9.
This commit is contained in:
Ader Alisma 01 2025-06-29 17:46:55 -04:00
parent f571fbf580
commit 73a9231845
2 changed files with 82 additions and 0 deletions

View File

@ -0,0 +1,71 @@
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.EventSystems;
using UnityEngine.UI;
public class AllyUpgrade : MonoBehaviour, IPointerClickHandler
{
[SerializeField]
private GameObject _upgradeUI;
[SerializeField]
private List<UnitUpgrade> _upgradeList = new List<UnitUpgrade>();
private GameObject _instance = null;
public void OnPointerClick(PointerEventData eventData)
{
if (eventData.button == 0) //Left click
{
if (!_instance)
{
GameObject sceneCanvas = GameObject.Find("Canvas");
if (sceneCanvas != null)
{
Canvas canvas = sceneCanvas.GetComponent<Canvas>();
if (canvas == null)
{
Debug.Log("Canvas introuvable...");
}
else
{
_instance = Instantiate(_upgradeUI, Camera.main.WorldToScreenPoint(transform.position), Quaternion.identity, canvas.transform);
AssignUpgrades(canvas);
DeselectManager.Instance.SetAllyUpgrade(_instance);
}
}
}
else
{
Destroy(_instance);
_instance = null;
}
}
}
private void AssignUpgrades(Canvas canvas)
{
// Assign upgrade Prefabs
for (int i = 0; i < _instance.transform.childCount - 1; i++)
{
if (_upgradeList.Count > i && _upgradeList[i] != null)
{
GameObject upgradeEnfant = _instance.transform.Find("Upgrade" + (i + 1)).gameObject;
if (upgradeEnfant.TryGetComponent<UpgradePlacementButton>(out UpgradePlacementButton button))
{
button.Initialize(_upgradeList[i], gameObject, canvas);
//button.GetComponent<Selectable>().Select();
//button.gameObject.AddComponent<DeselectedAction>().Init(_instance);
}
}
}
}
private void OnDestroy()
{
if (_instance != null)
{
Debug.Log("Destroying upgrade UI");
Destroy(_instance);
_instance = null;
}
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: edcd1782caa73a747b1f060d18ce0f18
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant: