Revert "Cleanup"
This reverts commit f571fbf5807ebcaecc741b34a6c933449edc03c9. Revert "Cleanup" This reverts commit f571fbf5807ebcaecc741b34a6c933449edc03c9.
This commit is contained in:
parent
f571fbf580
commit
73a9231845
71
Assets/Scripts/Ally/AllyUpgrade.cs
Normal file
71
Assets/Scripts/Ally/AllyUpgrade.cs
Normal 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;
|
||||
}
|
||||
}
|
||||
}
|
||||
11
Assets/Scripts/Ally/AllyUpgrade.cs.meta
Normal file
11
Assets/Scripts/Ally/AllyUpgrade.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: edcd1782caa73a747b1f060d18ce0f18
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Loading…
x
Reference in New Issue
Block a user