summaryrefslogtreecommitdiff
path: root/SurvivalTest/Assets/Scripts/UI/Panel/PanelItemBar/ItemWidget.cs
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2022-04-25 10:09:11 +0800
committerchai <chaifix@163.com>2022-04-25 10:09:11 +0800
commit8131033510c711248de1904649cfa1dbe4bbe69f (patch)
tree80e0db1f24c6d624ac412f240f54cc18e626c3d0 /SurvivalTest/Assets/Scripts/UI/Panel/PanelItemBar/ItemWidget.cs
parent71ae3d755a03a706d93291ca57c6de8e6f0d5926 (diff)
*rename item to prop
Diffstat (limited to 'SurvivalTest/Assets/Scripts/UI/Panel/PanelItemBar/ItemWidget.cs')
-rw-r--r--SurvivalTest/Assets/Scripts/UI/Panel/PanelItemBar/ItemWidget.cs123
1 files changed, 0 insertions, 123 deletions
diff --git a/SurvivalTest/Assets/Scripts/UI/Panel/PanelItemBar/ItemWidget.cs b/SurvivalTest/Assets/Scripts/UI/Panel/PanelItemBar/ItemWidget.cs
deleted file mode 100644
index 3227bd8..0000000
--- a/SurvivalTest/Assets/Scripts/UI/Panel/PanelItemBar/ItemWidget.cs
+++ /dev/null
@@ -1,123 +0,0 @@
-using System.Collections;
-using System.Collections.Generic;
-using UnityEngine;
-using UnityEngine.UI;
-
-public struct ItemWidgetParam
-{
- // Ö÷¶¯µã»÷
- public System.Action<ItemWidget> onSelected;
- public ItemBase item;
-}
-
-public class ItemWidget : UIGridItemBase
-{
- public Image Image_Icon;
- public Image Image_SelectBg;
-
- public Image Image_Use;
-
- private System.Action<ItemWidget> onSelected;
-
- public ItemBase item { get { return m_Item; } }
- private ItemBase m_Item;
-
- private Coroutine m_CoUse;
-
- private int m_PendingUse = 0;
-
- public void SetSelectBg(bool selected)
- {
- Image_SelectBg.gameObject.SetActive(selected);
- }
-
- public override void Set(object param)
- {
- ItemWidgetParam info = (ItemWidgetParam)param;
- onSelected = info.onSelected;
- m_Item = info.item;
-
- Image_Icon.sprite = ResourceManager.Instance.Load<Sprite>(info.item.iconPath);
-
- SetSelectBg(false);
-
- Image_Use.gameObject.SetActive(false);
- }
-
- public void OnSelectCallback()
- {
- SetSelectBg(true);
- }
-
- public void OnDeselectCallback()
- {
- SetSelectBg(false);
- }
-
- public void OnUseCallback()
- {
- m_PendingUse++;
- PlayUseAnimation();
- }
-
- private void PlayUseAnimation()
- {
- if (m_CoUse != null)
- return;
- Image_Use.gameObject.SetActive(true);
- m_CoUse = StartCoroutine(CoUseAnimation());
- }
-
- IEnumerator CoUseAnimation()
- {
- float speed = 7f;
-
- while(m_PendingUse > 0)
- {
- Image_Use.fillOrigin = (int)Image.OriginVertical.Bottom;
- float t = 0;
- while (true)
- {
- t += speed * Time.deltaTime;
-
- if (t > 1)
- break;
-
- Image_Use.fillAmount = Mathf.Lerp(0, 1, t);
-
- yield return null;
- }
-
- Image_Use.fillOrigin = (int)Image.OriginVertical.Top;
- t = 0;
- while (true)
- {
- t += speed * Time.deltaTime;
-
- if (t > 1)
- break;
-
- Image_Use.fillAmount = Mathf.Lerp(1, 0, t);
-
- yield return null;
- }
- m_PendingUse--;
- }
-
- Image_Use.gameObject.SetActive(false);
-
- m_CoUse = null;
-
- yield break;
- }
-
- private void StopUseAnimation()
- {
- if (m_CoUse != null)
- {
- StopCoroutine(m_CoUse);
- }
- Image_Use.gameObject.SetActive(false);
- }
-
-}