Files
modular-vr/Assets/Desert/Runtime/Puzzle A/SymbolButton.cs
2022-11-22 00:10:26 +01:00

41 lines
1.1 KiB
C#

using EscapeRoomEngine.Engine.Runtime;
using NaughtyAttributes;
using UnityEngine;
namespace EscapeRoomEngine.Desert.Runtime.Puzzle_A
{
public class SymbolButton : Button
{
private static readonly int FresnelColor = Shader.PropertyToID("_FresnelColor");
private static readonly int Color = Shader.PropertyToID("_Color");
public int symbolNumber;
public EngineTheme theme;
[BoxGroup("Internal")] [Required] public MeshRenderer holoRenderer;
private Material _material;
private void Awake()
{
_material = holoRenderer.material;
}
protected override void Start()
{
base.Start();
ButtonEvent += (_, type) =>
{
var color = type switch
{
ButtonEventType.Pressed => theme.activeColor,
ButtonEventType.Deactivated => theme.solvedColor,
_ => theme.puzzleColor
};
_material.SetColor(FresnelColor, color);
_material.SetColor(Color, color);
};
}
}
}