public void ResetStatusView() { m_dummyUnit = new DataUnitParam(); m_dataUnitSelected.RefreshAssist(DataManager.Instance.m_masterEquip.list, DataManager.Instance.m_dataEquip.list); m_dummyUnit.AllCopy(m_dataUnitSelected); m_equipStatusView.Initialize(m_dataUnitSelected, m_dummyUnit); m_equipUnitView.Initialize( m_dataUnitSelected, DataManager.Instance.m_masterEquip.list, DataManager.Instance.m_dataEquip.list ); }
private void Show(DataUnitParam _unit) { m_goRoot.SetActive(true); _unit.RefreshAssist(DataManager.Instance.m_masterEquip.list, DataManager.Instance.m_dataEquip.list); m_txtLevel.text = $"Level:{_unit.level}"; m_txtHP.text = $"HP:{_unit.hp_current}/{_unit.hp}"; m_txtTP.text = $"TP:{_unit.tp_current}/{_unit.tp}"; m_txtAttack.text = $"{_unit.GetStatus("attack")}"; m_txtDefence.text = $"{_unit.GetStatus("defense")}"; m_txtSpeed.text = $"{_unit.GetStatus("speed")}"; m_txtMind.text = $"{_unit.GetStatus("mind")}"; m_txtWisdom.text = $"{_unit.GetStatus("wisdom")}"; }
public void Initialize(DataUnitParam _unit, DataUnitParam _change) { _unit.RefreshAssist(DataManager.Instance.m_masterEquip.list, DataManager.Instance.m_dataEquip.list); _change.RefreshAssist(DataManager.Instance.m_masterEquip.list, DataManager.Instance.m_dataEquip.list); m_txtsetPrev.SetComponent(transform.Find("paramRoot"), "params/txtPrev"); m_txtsetNext.SetComponent(transform.Find("paramRoot"), "params/txtNext"); m_txtsetPrev.m_txtHP.text = _unit.GetStatus("hp").ToString(); m_txtsetPrev.m_txtTP.text = _unit.GetStatus("tp").ToString(); m_txtsetPrev.m_txtAttack.text = _unit.GetStatus("attack").ToString(); m_txtsetPrev.m_txtDefense.text = _unit.GetStatus("defense").ToString(); m_txtsetPrev.m_txtSpeed.text = _unit.GetStatus("speed").ToString(); m_txtsetPrev.m_txtMind.text = _unit.GetStatus("mind").ToString(); m_txtsetPrev.m_txtWisdom.text = _unit.GetStatus("wisdom").ToString(); Diff(_unit, _change); }
private void Awake() { m_btnRemove.onClick.AddListener(() => { FieldInfo fieldEquipSerial = m_dataUnitSelected.GetType().GetField($"equip{m_iSelectingEquipIndex}"); int equip_serial = (int)fieldEquipSerial.GetValue(m_dataUnitSelected); if (0 < equip_serial) { DataEquipParam data_equip = DataManager.Instance.m_dataEquip.list.Find(p => p.equip_serial == equip_serial); data_equip.equip_unit = 0; foreach (EquipBanner banner in m_equipList.m_equipBannerList) { if (banner.dataEquipParam.equip_serial == equip_serial) { // 少し楽してます banner.m_goEquipUnitRoot.SetActive(false); } } } fieldEquipSerial.SetValue(m_dataUnitSelected, 0); m_equipInfoCurrent.Clear(); ResetStatusView(); }); // 装備するボタン m_btnSet.onClick.AddListener(() => { m_btnSet.interactable = false; FieldInfo fieldEquipSerial = m_dataUnitSelected.GetType().GetField($"equip{m_iSelectingEquipIndex}"); int tempEquipSerial = (int)fieldEquipSerial.GetValue(m_dataUnitSelected); if (0 < tempEquipSerial && m_dataEquipCurrent != null) { foreach (EquipBanner banner in m_equipList.m_equipBannerList) { if (banner.dataEquipParam.equip_serial == m_dataEquipCurrent.equip_serial) { banner.HideIcon(); } } m_dataEquipCurrent.equip_unit = 0; } fieldEquipSerial.SetValue(m_dataUnitSelected, m_dataEquipChange.equip_serial); m_dataEquipCurrent = m_dataEquipChange; m_dataEquipChange = null; m_dataEquipCurrent.equip_unit = m_dataUnitSelected.unit_id; foreach (EquipBanner banner in m_equipList.m_equipBannerList) { if (banner.dataEquipParam.equip_serial == m_dataEquipCurrent.equip_serial) { // 少し楽してます banner.ShowIcon(m_dataUnitSelected); } } MasterEquipParam master_equip = DataManager.Instance.m_masterEquip.list.Find(p => p.equip_id == m_dataEquipCurrent.equip_id); m_equipInfoCurrent.Initialize(m_dataEquipChange, master_equip); m_equipInfoChange.Clear(); ResetStatusView(); }); m_btnReturn.onClick.AddListener(() => UIAssistant.Instance.ShowParentPage()); #region Event Unit Icon foreach (EquipUnitIcon icon in m_equipUnitIconList) { icon.GetComponent <Button>().onClick.AddListener(() => { m_btnRemove.interactable = false; m_btnSet.interactable = false; m_dataUnitSelected = DataManager.Instance.m_dataUnit.list .Find(p => p.unit_id == icon.m_masterUnitParam.unit_id); m_masterUnitSelected = DataManager.Instance.m_masterUnit.list.Find(p => p.unit_id == m_dataUnitSelected.unit_id); ResetStatusView(); m_equipList.Clear(); foreach (EquipUnitIcon in_icon in m_equipUnitIconList) { in_icon.Select(icon.m_masterUnitParam); } m_equipUnitView.Select(0); }); } #endregion #region 装備中のアイコンとか m_equipUnitView.OnClickEquipIndex.AddListener((value) => { m_iSelectingEquipIndex = value; m_btnSet.interactable = false; m_equipUnitView.Select(value); if (0 < value) { FieldInfo fieldEquipType = m_masterUnitSelected.GetType().GetField($"equip_type{value}"); string equip_type = fieldEquipType.GetValue(m_masterUnitSelected).ToString(); FieldInfo fieldEquipSerial = m_dataUnitSelected.GetType().GetField($"equip{value}"); int equip_serial = (int)fieldEquipSerial.GetValue(m_dataUnitSelected); m_dataEquipCurrent = DataManager.Instance.m_dataEquip.list.Find(p => p.equip_serial == equip_serial); MasterEquipParam masterEquipParam = null; if (m_dataEquipCurrent != null) { masterEquipParam = DataManager.Instance.m_masterEquip.list.Find(p => p.equip_id == m_dataEquipCurrent.equip_id); } m_equipInfoCurrent.Initialize(m_dataEquipCurrent, masterEquipParam); m_equipInfoChange.Clear(); ResetStatusView(); m_btnRemove.interactable = m_dataEquipCurrent != null; m_equipList.Clear(); m_equipList.Show(DataManager.Instance.m_dataEquip.list, equip_type); } }); #endregion // 装備するためのリスト m_equipList.OnDataEquip.AddListener((data) => { m_equipInfoChange.Clear(); m_dataEquipChange = data; MasterEquipParam master = null; if (m_dataEquipChange != null) { master = DataManager.Instance.m_masterEquip.list.Find(p => p.equip_id == m_dataEquipChange.equip_id); } // ダミーの装備を変更 FieldInfo equipPosition = m_dummyUnit.GetType().GetField($"equip{m_iSelectingEquipIndex}"); equipPosition.SetValue(m_dummyUnit, data.equip_serial); m_dummyUnit.RefreshAssist(DataManager.Instance.m_masterEquip.list, DataManager.Instance.m_dataEquip.list); m_equipStatusView.Initialize(m_dataUnitSelected, m_dummyUnit); if (data.equip_unit != 0 && data.equip_unit != m_dataUnitSelected.unit_id) { m_btnSet.interactable = false; } else { m_btnSet.interactable = true; } m_equipInfoChange.Initialize(m_dataEquipChange, master); }); }