public void SetGraphicColor(Color color, bool animate = true) { if (animate) { m_NormalColor = color; if (m_AutoHighlightColor) { m_HighlightColor = MaterialColor.GetHighlightColor(m_NormalColor, rippleData.Color, m_AutoHighlightBlendAmount); } m_CurrentColor = highlightGraphic.color; m_AnimStartTime = Time.realtimeSinceStartup; if (m_AnimState == 0) { m_AnimState = 2; } } else { m_NormalColor = color; if (m_AutoHighlightColor) { m_HighlightColor = MaterialColor.GetHighlightColor(m_NormalColor, rippleData.Color, m_AutoHighlightBlendAmount); } highlightGraphic.color = m_AnimState == 1 ? m_HighlightColor : m_NormalColor; m_AnimState = 0; } }
public void RefreshSettings() { m_AnimDuration = 4f / rippleData.Speed; if (highlightGraphic) { m_ImageIsTransparent = (highlightGraphic.color.a == 0f && toggleMask); if (m_ToggleMask) { if (highlightGraphic.GetComponent <Mask>()) { Destroy(highlightGraphic.GetComponent <Mask>()); } } } if (!highlightGraphic) { return; } m_NormalColor = highlightGraphic.color; if (autoHighlightColor) { if (highlightWhen != HighlightActive.Never) { highlightColor = MaterialColor.GetHighlightColor(m_NormalColor, rippleData.Color, m_AutoHighlightBlendAmount); if (m_ImageIsTransparent) { m_NormalColor = new Color(highlightColor.r, highlightColor.g, highlightColor.b, 0f); highlightGraphic.color = m_NormalColor; } } } }