//********************************************************// // // // Copyright © All rights reserved. MyNameIsVoo. 2020. // // // // COPYING FORBIDEN // // // //********************************************************// using UnityEngine; using UnityEngine.UI; namespace ICWM { namespace Utility { public class ButtonPulse : MonoBehaviour { [Header("ATTRIBUTES")] [SerializeField] private float speedPulse = 0.6f; // Скорость пульсации (частота) private Color defColor; // Дефолтный цвет (базовый) будем работать с ним private int k = 1; // Переменная меняющая направления изменения цвета\канала альфа private void Start() { defColor = GetComponent().color; defColor.a = 1.0f; // Альфа изменяется от 0 до 1 } private void Update() { defColor.a = defColor.a - Time.deltaTime * speedPulse * k; // Изменяем значение альфа (уменьшаем и увеличиваем) - зависит от времени и k if (defColor.a <= 0.6f) // Нижний предел альфа k = -1; else if (defColor.a >= 1.0f) // Верхний предел альфа k = 1; GetComponent().color = defColor; // Применяем цвет } public void StopPulse() // Метод остановки пульсации и восстановления цвета { defColor.a = 1.0f; GetComponent().color = defColor; } } } }