using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.Events; public static class CommunicationEvents { public class PointEvent : UnityEvent<RaycastHit,int> { } public class LineEvent : UnityEvent<Vector3, Vector3> { } public class HitEvent : UnityEvent<RaycastHit> { } public class FactEvent : UnityEvent<int> { } public class MouseOverFactEvent : UnityEvent<Transform> { } public class ToolModeEvent : UnityEvent<ToolMode> { } public static HitEvent TriggerEvent = new HitEvent(); public static MouseOverFactEvent HighlightEvent = new MouseOverFactEvent(); public static MouseOverFactEvent EndHighlightEvent = new MouseOverFactEvent(); public static ToolModeEvent ToolModeChangedEvent = new ToolModeEvent(); public static PointEvent AddPointEvent = new PointEvent(); public static LineEvent AddLineEvent = new LineEvent(); public static FactEvent RemoveEvent = new FactEvent(); public static ToolMode ActiveToolMode { get; set; } }