-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathFieldItem.cs
More file actions
39 lines (34 loc) · 1.01 KB
/
Copy pathFieldItem.cs
File metadata and controls
39 lines (34 loc) · 1.01 KB
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
using System;
using UnityEngine;
public class FieldItem : MonoBehaviour
{
[SerializeField] private Sprite activeSprite, inactiveSprite;
private SpriteRenderer spriteRenderer;
private bool isActive;
public int ID;
public Cell itemCell;
public static event Action SetItemsChange;
private void Start() => spriteRenderer = GetComponent<SpriteRenderer>();
private void OnMouseDown()
{
if (!isActive) ActivateItem();
else DeactivateItem();
}
private void ActivateItem()
{
spriteRenderer.sprite = activeSprite;
isActive = true;
if (ChangeItemCell.sourceItem == null)
ChangeItemCell.sourceItem = this;
else
{
ChangeItemCell.targetItem = this;
SetItemsChange?.Invoke();
}
}
public void DeactivateItem()
{
spriteRenderer.sprite = inactiveSprite;
isActive = false;
}
}