diff options
Diffstat (limited to 'SurvivalTest/Assets/Scripts/UI/Panel/PanelWeaponBar/PanelWeaponBar.cs')
-rw-r--r-- | SurvivalTest/Assets/Scripts/UI/Panel/PanelWeaponBar/PanelWeaponBar.cs | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/SurvivalTest/Assets/Scripts/UI/Panel/PanelWeaponBar/PanelWeaponBar.cs b/SurvivalTest/Assets/Scripts/UI/Panel/PanelWeaponBar/PanelWeaponBar.cs new file mode 100644 index 0000000..24c208c --- /dev/null +++ b/SurvivalTest/Assets/Scripts/UI/Panel/PanelWeaponBar/PanelWeaponBar.cs @@ -0,0 +1,40 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class PanelWeaponBar : PanelBase +{ + public UIWeaponWidget m_WeaponTemplate; + + public UISimpleGrid m_WeaponGrid; + + private List<UIWeaponWidget> m_Weapons = new List<UIWeaponWidget>(); + + public override void Set(object param) + { + m_WeaponTemplate.gameObject.SetActive(false); + + for (int i = 0; i < PlayerManager.Instance.weapons.Count; ++i) + { + UIWeaponWidget widget = MakeWeaponWidget(PlayerManager.Instance.weapons[i]); + m_Weapons.Add(widget); + } + } + + UIWeaponWidget MakeWeaponWidget(WeaponBase weapon) + { + UIWeaponWidget widget = Instantiate<UIWeaponWidget>(m_WeaponTemplate); + widget.transform.SetParent(m_WeaponGrid.transform); + widget.gameObject.SetActive(true); + widget.GetComponent<RectTransform>().anchoredPosition = new Vector2(0, 0); +#if UNITY_EDITOR + widget.name = "weapon (" + weapon.name + ")"; +#endif + + UIWeaponWidgetParam param = new UIWeaponWidgetParam(); + param.weapon = weapon; + widget.Set(param); + return widget; + } + +} |