Files
modular-vr/Assets/Desert/Runtime/Puzzle C/Hole.cs
2022-12-01 15:13:00 +01:00

59 lines
1.5 KiB
C#

using EscapeRoomEngine.Engine.Runtime.Utilities;
using UnityEngine;
namespace EscapeRoomEngine.Desert.Runtime.Puzzle_C
{
[RequireComponent(typeof(Emission), typeof(Collider))]
public class Hole : Button
{
[Min(0)]
public int number;
public Emission Emission { get; private set; }
private DynamicColor _puzzleColor, _activeColor;
private void Awake()
{
Emission = GetComponent<Emission>();
_puzzleColor = Engine.Runtime.Engine.DefaultEngine.theme.puzzleColor;
_activeColor = Engine.Runtime.Engine.DefaultEngine.theme.activeColor;
}
protected override void Start()
{
base.Start();
Emission.active = true;
}
private void OnTriggerEnter(Collider other)
{
var orb = other.GetComponent<HoleOrb>();
if (orb != null)
{
if (Active)
{
orb.Color = _activeColor.hdr;
Emission.color = _activeColor.hdr;
Press();
}
}
}
private void OnTriggerExit(Collider other)
{
var orb = other.GetComponent<HoleOrb>();
if (orb != null)
{
if (Active)
{
Release();
Emission.color = _puzzleColor.hdr;
}
orb.Color = _puzzleColor.hdr;
}
}
}
}