예제 #1
0
        void _updateCircleColor()
        {
            float colorProgress = LikeButtonUtil.clamp(this.outerCircleRadiusProgress, 0.5f, 1);

            colorProgress          = LikeButtonUtil.mapValueFromRangeToRange(colorProgress, 0.5f, 1, 0, 1);
            this.circlePaint.color = Color.lerp(this.circleColor.start, this.circleColor.end, colorProgress);
        }
예제 #2
0
        void _updateBubblesPaints()
        {
            float progress1 = LikeButtonUtil.clamp(this.m_CurrentProgress, 0.6f, 1);
            int   alpha     =
                (int)LikeButtonUtil.mapValueFromRangeToRange(progress1, 0.6f, 1, 255, 0);

            if (this.m_CurrentProgress < 0.5)
            {
                float progress2 =
                    LikeButtonUtil.mapValueFromRangeToRange(this.m_CurrentProgress, 0, 0.5f, 0, 1);
                this.m_CirclePaints[0].color = Color.lerp(this.m_Color1, this.m_Color2, progress2).withAlpha(alpha);
                this.m_CirclePaints[1].color = Color.lerp(this.m_Color2, this.m_Color3, progress2).withAlpha(alpha);
                this.m_CirclePaints[2].color = Color.lerp(this.m_Color3, this.m_Color4, progress2).withAlpha(alpha);
                this.m_CirclePaints[3].color = Color.lerp(this.m_Color4, this.m_Color1, progress2).withAlpha(alpha);
            }
            else
            {
                float progress3 =
                    LikeButtonUtil.mapValueFromRangeToRange(this.m_CurrentProgress, 0.5f, 1, 0, 1);
                this.m_CirclePaints[0].color = Color.lerp(this.m_Color2, this.m_Color3, progress3).withAlpha(alpha);
                this.m_CirclePaints[1].color = Color.lerp(this.m_Color3, this.m_Color4, progress3).withAlpha(alpha);
                this.m_CirclePaints[2].color = Color.lerp(this.m_Color4, this.m_Color1, progress3).withAlpha(alpha);
                this.m_CirclePaints[3].color = Color.lerp(this.m_Color1, this.m_Color2, progress3).withAlpha(alpha);
            }
        }