diff options
Diffstat (limited to 'SurvivalTest/Assets/Scripts/UI/Panel/PanelItemBar')
4 files changed, 0 insertions, 240 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); - } - -} diff --git a/SurvivalTest/Assets/Scripts/UI/Panel/PanelItemBar/ItemWidget.cs.meta b/SurvivalTest/Assets/Scripts/UI/Panel/PanelItemBar/ItemWidget.cs.meta deleted file mode 100644 index 29d8747..0000000 --- a/SurvivalTest/Assets/Scripts/UI/Panel/PanelItemBar/ItemWidget.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 677576640bb11e34e961b72e3c139f6a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/SurvivalTest/Assets/Scripts/UI/Panel/PanelItemBar/PanelItemBar.cs b/SurvivalTest/Assets/Scripts/UI/Panel/PanelItemBar/PanelItemBar.cs deleted file mode 100644 index 9ca1220..0000000 --- a/SurvivalTest/Assets/Scripts/UI/Panel/PanelItemBar/PanelItemBar.cs +++ /dev/null @@ -1,95 +0,0 @@ -using System.Collections; -using System.Collections.Generic; -using UnityEngine; -using UnityEngine.UI; - -public class PanelItemBar : PanelBase -{ - public ItemWidget m_ItemTempalte; - - public UISimpleGrid m_ItemGrid; - - public Text m_TextName; - - private List<ItemWidget> m_Items = new List<ItemWidget>(); - - private int m_CurrentIndex = 0; - - public override void Set(object param) - { - for(int i = 0; i < PlayerManager.Instance.items.Count; ++i) - { - ItemWidget widget = MakeItemWidget(PlayerManager.Instance.items[i]); - m_Items.Add(widget); - } - - SelectItemWidget(0); - } - - bool SwitchToLeft() - { - return Input.GetButtonDown("LeftItem"); - } - - bool SwitchToRight() - { - return Input.GetButtonDown("RightItem"); - } - - bool UseItem() - { - return Input.GetButtonDown("Fire3"); - } - - ItemWidget MakeItemWidget(ItemBase item) - { - ItemWidget widget = Instantiate<ItemWidget>(m_ItemTempalte); - widget.transform.SetParent(m_ItemGrid.transform); - widget.gameObject.SetActive(true); - widget.GetComponent<RectTransform>().anchoredPosition = new Vector2(0, 0); -#if UNITY_EDITOR - widget.name = "item (" + item.name + ")"; -#endif - - ItemWidgetParam param = new ItemWidgetParam(); - //param.onSelected = OnSelectItemWidget; - param.item = item; - widget.Set(param); - return widget; - } - - protected override void Update() - { - if (SwitchToLeft()) - { - int newIndex = Mathf.Clamp(m_CurrentIndex - 1, 0, m_Items.Count - 1); - SelectItemWidget(newIndex); - } - if (SwitchToRight()) - { - int newIndex = Mathf.Clamp(m_CurrentIndex + 1, 0, m_Items.Count - 1); - SelectItemWidget(newIndex); - } - if (UseItem()) - { - m_Items[m_CurrentIndex].OnUseCallback(); - PlayerManager.Instance.UseItem(m_Items[m_CurrentIndex].item); - } - } - - void SelectItemWidget(int index) - { - if(index < 0 || index > m_Items.Count - 1) - { - return ; - } - m_Items[m_CurrentIndex].OnDeselectCallback(); - m_Items[index].OnSelectCallback(); - - m_TextName.text = m_Items[index].item.name; - m_TextName.gameObject.SetActive(false); - - m_CurrentIndex = index; - } - -} diff --git a/SurvivalTest/Assets/Scripts/UI/Panel/PanelItemBar/PanelItemBar.cs.meta b/SurvivalTest/Assets/Scripts/UI/Panel/PanelItemBar/PanelItemBar.cs.meta deleted file mode 100644 index 3925db5..0000000 --- a/SurvivalTest/Assets/Scripts/UI/Panel/PanelItemBar/PanelItemBar.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b3e9f15745561dd4f9119ac8f893dbfc -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: |