void SetUnit(BaseSoldierData unitData) { _unitData = unitData; if (_unitData == null) { return; } GameObject cardResource = UIResourcesManager.Instance.GetResource <GameObject>( string.Format("{0}/{1}", GameConstants.Paths.UI_WINDOWS_PREFAB_RESOURCES, "Unit_card")); if (cardResource == null) { return; } GameObject cardUnitData = GameObject.Instantiate(cardResource) as GameObject; UIUnitCard unitCard = cardUnitData.GetComponent <UIUnitCard>(); unitCard.UnitKey = _unitData.Key; cardUnitData.transform.SetParent(transform, false); RectTransform rectCard = cardUnitData.GetComponent <RectTransform>(); Rect rectBackground = gameObject.GetComponent <RectTransform>().rect; rectCard.anchoredPosition = new Vector2(rectBackground.width / 2, rectBackground.height / 2); rectCard.localScale *= _imgUnit.rectTransform.rect.width / rectCard.rect.width; _txtDamage.text = "Damage: " + _unitData.BaseDamage.ToString(); _txtHP.text = "Health Points: " + _unitData.BaseHealthPoints.ToString(); _txtInfo.text = "About Unit: " + _unitData.AboutInfo; }
void SetSelectedUnit(BaseSoldierData currentSoldierData) { if (_currentSoldierData != null) { UIResourcesManager.Instance.FreeResource( string.Format("{0}/{1}", GameConstants.Paths.UI_WINDOWS_PREFAB_RESOURCES, "Unit_card")); } Rect rectImage = _mbtnCurrrentSoldier.GetComponent <RectTransform>().rect; if (rectImage.width == 0 || rectImage.height == 0) { return; } _currentSoldierData = currentSoldierData; if (_currentSoldierData != null) { GameObject cardResource = UIResourcesManager.Instance.GetResource <GameObject>( string.Format("{0}/{1}", GameConstants.Paths.UI_WINDOWS_PREFAB_RESOURCES, "Unit_card")); if (cardResource == null) { return; } GameObject cardUnitData = GameObject.Instantiate(cardResource) as GameObject; UIUnitCard unitCard = cardUnitData.GetComponent <UIUnitCard>(); unitCard.UnitKey = _currentSoldierData.Key; cardUnitData.transform.SetParent(_mbtnCurrrentSoldier.transform, false); RectTransform rectCard = cardUnitData.GetComponent <RectTransform>(); rectCard.SetSizeWithCurrentAnchors(RectTransform.Axis.Horizontal, rectImage.width); rectCard.SetSizeWithCurrentAnchors(RectTransform.Axis.Vertical, rectImage.height); rectCard.anchoredPosition = new Vector2(rectImage.width / 2, rectImage.height / 2); _mbtnCurrrentSoldier.AddChildImages(cardUnitData); } else { for (int i = _mbtnCurrrentSoldier.transform.childCount; i > 0; i--) { GameObject.Destroy(_mbtnCurrrentSoldier.transform.GetChild(i - 1).gameObject); } } UpdateLeadership(); }
public void Update() { if (_unitData == null || _isLoad) { return; } Rect rectImage = GetComponent <RectTransform>().rect; if (rectImage.width == 0 || rectImage.height == 0) { return; } GameObject cardResource = UIResourcesManager.Instance.GetResource <GameObject>( string.Format("{0}/{1}", GameConstants.Paths.UI_WINDOWS_PREFAB_RESOURCES, "Unit_card")); if (cardResource == null) { return; } _isLoad = true; GameObject cardUnitData = GameObject.Instantiate(cardResource) as GameObject; UIUnitCard unitCard = cardUnitData.GetComponent <UIUnitCard>(); unitCard.UnitKey = _unitData.Key; cardUnitData.transform.SetParent(gameObject.transform, false); RectTransform rectCard = cardUnitData.GetComponent <RectTransform>(); rectCard.SetSizeWithCurrentAnchors(RectTransform.Axis.Horizontal, rectImage.width); rectCard.SetSizeWithCurrentAnchors(RectTransform.Axis.Vertical, rectImage.height); rectCard.anchoredPosition = new Vector2(rectImage.width / 2, rectImage.height / 2); (gameObject.GetComponent <MultiImageButton>()).AddChildImages(cardUnitData); }