using EscapeRoomEngine.Engine.Runtime.Modules.State; using UnityEngine; namespace EscapeRoomEngine.Station46.Runtime.Portal { /// /// The Station 46 theme includes its own version of a portal that changes colour when it is unlocked. /// [RequireComponent(typeof(Emission))] public class Station46Portal : EscapeRoomEngine.Portal.Runtime.Portal { private Emission _emission; protected override void Awake() { base.Awake(); _emission = GetComponent(); DoorEvent += (_, type) => { // ReSharper disable once SwitchStatementMissingSomeEnumCasesNoDefault ConvertSwitchStatementToSwitchExpression switch (type) { case DoorEventType.Unlocked: _emission.color = Engine.Runtime.Engine.Theme.solvedColor.hdr; break; case DoorEventType.Locked: _emission.color = Engine.Runtime.Engine.Theme.puzzleColor.hdr; break; } }; _emission.active = true; } } }