FiE-Game/Assets/Particle Playground/Playground Assets/Scripts/PlaygroundFlickeringPointLight.cs

33 lines
759 B
C#

using UnityEngine;
using System.Collections;
[RequireComponent(typeof(Light))]
public class PlaygroundFlickeringPointLight : MonoBehaviour {
public float flickerSpeed = 10f;
public float minimumLight = .3f;
public float maximumLight = 1f;
private Light _thisLight;
private float _targetLightValue;
void Start ()
{
_thisLight = GetComponent<Light>();
SetTargetLightValue();
}
void Update ()
{
if (_thisLight.intensity<_targetLightValue-.1||_thisLight.intensity>_targetLightValue+.1)
_thisLight.intensity = Mathf.Lerp(_thisLight.intensity, _targetLightValue, flickerSpeed * Time.deltaTime);
else
SetTargetLightValue();
}
void SetTargetLightValue ()
{
_targetLightValue = Random.Range (minimumLight, maximumLight);
}
}