Files
modular-vr/Assets/Station46/Modules/Hover Sphere/Scripts/Crystal.cs
2023-03-22 17:03:55 +01:00

48 lines
1.1 KiB
C#

using EscapeRoomEngine.Engine.Runtime.Utilities;
using NaughtyAttributes;
using UnityEngine;
namespace Station46.Runtime
{
/// <summary>
/// A rotating crystal that can change colour.
/// </summary>
[RequireComponent(typeof(Emission))]
public class Crystal : MonoBehaviour
{
[Required]
[BoxGroup("Internal")]
public Light crystalLight;
/// <summary>
/// Turns the crystal light on or off.
/// </summary>
public bool Active
{
set
{
_emission.active = value;
crystalLight.enabled = value;
}
}
/// <summary>
/// The crystal light and emission colours.
/// </summary>
public DynamicColor Color
{
set
{
_emission.color = value.hdr;
crystalLight.color = value.ldr;
}
}
private Emission _emission;
private void Awake()
{
_emission = GetComponent<Emission>();
}
}
}