blob: 6e43dea50c02da350207bbfb279eff40c44a742d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
|
using UnityEngine;
using UnityEngine.EventSystems;
using UnityEngine.UI;
public class PerkSelectionItem : MonoBehaviour, IPointerEnterHandler, IEventSystemHandler, IPointerExitHandler
{
private LevelSelectManager levelSelectManager;
[SerializeField]
private GameObject selectedMarker;
private PerkSelectionGroup perkSelectionGroup;
private Color colorBasic;
private Image image;
[SerializeField]
private Color hoverColor;
private bool mouseIsOver;
private Equippable equippable;
public Equippable Equippable => equippable;
public bool Selected
{
get
{
return selectedMarker.activeInHierarchy;
}
set
{
selectedMarker.SetActive(value);
}
}
public void OnPointerEnter(PointerEventData eventData)
{
mouseIsOver = true;
}
public void OnPointerExit(PointerEventData eventData)
{
mouseIsOver = false;
if (levelSelectManager.ShowingTooltipFor == equippable)
{
levelSelectManager.ShowTooltip(null);
}
}
private void Update()
{
image.color = (mouseIsOver ? hoverColor : colorBasic);
if (mouseIsOver)
{
levelSelectManager.ShowTooltip(equippable);
}
if (Input.GetMouseButtonDown(0) && mouseIsOver && (bool)perkSelectionGroup)
{
perkSelectionGroup.SelectPerk(this);
}
}
public void Initialize(Equippable _equippable)
{
image = GetComponent<Image>();
colorBasic = image.color;
perkSelectionGroup = GetComponentInParent<PerkSelectionGroup>();
Debug.Log(perkSelectionGroup);
levelSelectManager = LevelSelectManager.instance;
image.sprite = _equippable.icon;
equippable = _equippable;
if (PerkManager.instance.CurrentlyEquipped.Contains(equippable) && (bool)perkSelectionGroup)
{
perkSelectionGroup.SelectPerk(this);
}
}
}
|