private void UpdateHeldItem() { IDisplayable displayable = LocalPlayer?.GetItemBySlot(_slotEnum); if (displayable != null) { _itemImage.sprite = displayable.GetUiSprite(); _itemImage.color = new Color(1, 1, 1, 1); Color selfColor = _uiColor; selfColor.r *= _colorDepression; selfColor.g *= _colorDepression; selfColor.b *= _colorDepression; _selfRenderer.color = selfColor; } else { _itemImage.sprite = null; _itemImage.color = new Color(0, 0, 0, 0); _selfRenderer.color = _uiColor; } if (_itemImage.sprite != null) { var image = _itemImage.sprite.texture; Vector2 itemImageSize; if (_itemImageMaxSize != Vector2.zero) { itemImageSize = _itemImageMaxSize; } else { itemImageSize = _rectTransform.sizeDelta; } _itemImageTransform.sizeDelta = FitSize(image, itemImageSize); } }