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

37 lines
1.0 KiB
C#

using EscapeRoomEngine.Engine.Runtime;
using UnityEngine;
namespace EscapeRoomEngine.Desert.Runtime.Puzzle_A
{
[RequireComponent(typeof(MeshRenderer))]
public class SymbolButton : Button
{
private static readonly int FresnelPower = Shader.PropertyToID("_FresnelPower");
private static readonly int Color = Shader.PropertyToID("_Color");
public EngineTheme theme;
public override bool Pressed
{
get => base.Pressed;
protected set
{
base.Pressed = value;
var color =
Pressed ? theme.activeColor
: Active ? theme.puzzleColor
: theme.solvedColor;
_material.SetColor(FresnelPower, color);
_material.SetColor(Color, color);
}
}
private Material _material;
private void Start()
{
_material = GetComponent<MeshRenderer>().material;
}
}
}