56 lines
953 B
C#
56 lines
953 B
C#
using UnityEngine;
|
|
|
|
public class BiteSignalizer : MonoBehaviour
|
|
{
|
|
public Color standLedColor;
|
|
|
|
public Color readyLedColor;
|
|
|
|
public Color signalLedColor;
|
|
|
|
private AudioSource signalAudio;
|
|
|
|
public Renderer ledRenderer;
|
|
|
|
private Material ledMaterial;
|
|
|
|
public int indexOfLedMaterial = 1;
|
|
|
|
public bool isRodDroped;
|
|
|
|
public bool isSignalEmitted;
|
|
|
|
private void Start()
|
|
{
|
|
signalAudio = GetComponent<AudioSource>();
|
|
ledMaterial = ledRenderer.GetComponent<Renderer>().materials[indexOfLedMaterial];
|
|
}
|
|
|
|
private void Update()
|
|
{
|
|
if (signalAudio.isPlaying)
|
|
{
|
|
isSignalEmitted = true;
|
|
ledMaterial.SetColor("_EmissionColor", signalLedColor);
|
|
return;
|
|
}
|
|
isSignalEmitted = false;
|
|
if (!isRodDroped)
|
|
{
|
|
ledMaterial.SetColor("_EmissionColor", standLedColor);
|
|
}
|
|
else
|
|
{
|
|
ledMaterial.SetColor("_EmissionColor", readyLedColor);
|
|
}
|
|
}
|
|
|
|
public void PlaySignal()
|
|
{
|
|
if (!signalAudio.isPlaying)
|
|
{
|
|
signalAudio.Play();
|
|
}
|
|
}
|
|
}
|