Deselect fonctionne
Bug avec tooltip quand clique sur upgrade rouge
This commit is contained in:
parent
d14b00fe10
commit
3a4ec88cbc
@ -4663,6 +4663,18 @@ MonoBehaviour:
|
||||
m_EditorClassIdentifier:
|
||||
_pauseButton: {fileID: 2019202048}
|
||||
_speedButton: {fileID: 1709530845}
|
||||
--- !u!114 &1760532844
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 829543639}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 4c63e60a445cf4549999d898b25ab0ea, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
--- !u!1 &1761692192
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
|
||||
@ -29,9 +29,7 @@ public class AllyUpgrade : MonoBehaviour, IPointerClickHandler
|
||||
{
|
||||
_instance = Instantiate(_upgradeUI, Camera.main.WorldToScreenPoint(transform.position), Quaternion.identity, canvas.transform);
|
||||
AssignUpgrades(canvas);
|
||||
//EventSystem.current.SetSelectedGameObject(_instance);
|
||||
//_instance.GetComponent<Selectable>().Select();
|
||||
//_instance.AddComponent<DeselectedAction>();
|
||||
DeselectManager.Instance.SetAllyUpgrade(_instance);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -54,8 +52,8 @@ public class AllyUpgrade : MonoBehaviour, IPointerClickHandler
|
||||
if (upgradeEnfant.TryGetComponent<UpgradePlacementButton>(out UpgradePlacementButton button))
|
||||
{
|
||||
button.Initialize(_upgradeList[i], gameObject, canvas);
|
||||
button.GetComponent<Selectable>().Select();
|
||||
button.gameObject.AddComponent<DeselectedAction>().Init(_instance);
|
||||
//button.GetComponent<Selectable>().Select();
|
||||
//button.gameObject.AddComponent<DeselectedAction>().Init(_instance);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -70,14 +68,4 @@ public class AllyUpgrade : MonoBehaviour, IPointerClickHandler
|
||||
_instance = null;
|
||||
}
|
||||
}
|
||||
|
||||
//public void OnDeselect(BaseEventData eventData)
|
||||
//{
|
||||
// if (_instance != null)
|
||||
// {
|
||||
// Debug.Log("Destroying upgrade UI");
|
||||
// Destroy(_instance);
|
||||
// _instance = null;
|
||||
// }
|
||||
//}
|
||||
}
|
||||
|
||||
@ -2,25 +2,46 @@ using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class DeselectManager<T> : MonoBehaviour where T : SingletonBehaviour<T>
|
||||
public class DeselectManager : SingletonBehaviour<DeselectManager>
|
||||
{
|
||||
public static T Instance
|
||||
{
|
||||
get;
|
||||
private set;
|
||||
}
|
||||
|
||||
protected virtual void Awake()
|
||||
{
|
||||
if (!Instance) Instance = this as T;
|
||||
else Destroy(this);
|
||||
}
|
||||
private GameObject _allyUpgrade;
|
||||
|
||||
private void Update()
|
||||
{
|
||||
if (Input.GetMouseButton(0))
|
||||
{
|
||||
// Verif liste si click sur un enfant d'AllyUpgrade
|
||||
// Verifie var si click est sur un enfant d'AllyUpgrade
|
||||
|
||||
GameObject selectedObject = UnityEngine.EventSystems.EventSystem.current.currentSelectedGameObject;
|
||||
if (selectedObject != null && _allyUpgrade != null && selectedObject.transform.IsChildOf(_allyUpgrade.transform))
|
||||
{
|
||||
return;
|
||||
}
|
||||
else
|
||||
{
|
||||
Debug.Log("Called to deselect from Observer");
|
||||
if (_allyUpgrade != null)
|
||||
{
|
||||
Destroy(_allyUpgrade);
|
||||
_allyUpgrade = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void SetAllyUpgrade(GameObject allyUpgradeInstance)
|
||||
{
|
||||
if (_allyUpgrade == null)
|
||||
{
|
||||
_allyUpgrade = allyUpgradeInstance;
|
||||
}
|
||||
else if (_allyUpgrade != allyUpgradeInstance)
|
||||
{
|
||||
Destroy(_allyUpgrade);
|
||||
_allyUpgrade = allyUpgradeInstance;
|
||||
}
|
||||
Debug.Log("AllyUpgrade set: " + _allyUpgrade?.name);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -13,14 +13,13 @@ public class DeselectedAction : MonoBehaviour, IDeselectHandler
|
||||
|
||||
public void OnDeselect(BaseEventData eventData)
|
||||
{
|
||||
GameObject selectedObject = EventSystem.current.currentSelectedGameObject;
|
||||
Debug.Log("DeselectedAction called on: " + selectedObject?.name);
|
||||
if (selectedObject != null && selectedObject.transform.IsChildOf(_allyUpgrade.transform))
|
||||
{
|
||||
//N'interrompt pas l'upgrade
|
||||
return;
|
||||
}
|
||||
Debug.Log("Called to deselect");
|
||||
//GameObject selectedObject = EventSystem.current.currentSelectedGameObject;
|
||||
//Debug.Log("DeselectedAction called on: " + selectedObject?.name);
|
||||
//if (selectedObject != null && selectedObject.transform.IsChildOf(_allyUpgrade.transform))
|
||||
//{
|
||||
// return;
|
||||
//}
|
||||
//Debug.Log("Called to deselect");
|
||||
//Destroy(_allyUpgrade);
|
||||
}
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user