using EscapeRoomEngine.Engine.Runtime.Modules; using EscapeRoomEngine.Engine.Runtime.Modules.State; using NaughtyAttributes; using Station46.Scripts; namespace Station46.Modules.Hover_Sphere.Scripts { /// /// The main component for the symbol ball module. /// public class Ball : ModuleState { [BoxGroup("Internal")] [Required] public Emission statusLight; [BoxGroup("Internal")] [Required] public Ring ring; public bool StatusLight { set => statusLight.active = value; } public bool Active { set { statusLight.color = value ? EscapeRoomEngine.Engine.Runtime.Engine.Theme.puzzleColor.hdr : EscapeRoomEngine.Engine.Runtime.Engine.Theme.solvedColor.hdr; ring.rotating = value; if (!value) { ring.crystal.Active = false; ring.symbols.ForEach(symbol => symbol.Active = false); } } } public override void SetModule(Module module) {} } }