public static void StopListening(ObjectEventType eventType, UnityAction <object> action) { if (Instance._eventRegisterObject.TryGetValue(eventType, out var listener)) { listener.RemoveListener(action); } }
public static void RaiseEvent(ObjectEventType eventType, object arg = null) { if (Instance._eventRegisterObject.TryGetValue(eventType, out var listener)) { listener.Invoke(arg); } }
public static void StartListening(ObjectEventType eventType, UnityAction <object> action) { if (!Instance._eventRegisterObject.Keys.Contains(eventType)) { Instance._eventRegisterObject.Add(eventType, new UnityEventWithObject()); } var eventListener = Instance._eventRegisterObject[eventType]; eventListener.AddListener(action); }
public ObjectEvent(ObjectEventType type, Boolean actionKeyMode = false, InputType actionKey = InputType.Action) { Type = type; ActionKeyMode = actionKeyMode; ActionKey = actionKey; Actions = new List<Action>(); IsActive = true; }
public static TraceEventType ConvertToTraceEvent(ObjectEventType objectEvent) { switch (objectEvent) { case ObjectEventType.Critical: return(TraceEventType.Critical); case ObjectEventType.Error: return(TraceEventType.Error); case ObjectEventType.Warning: return(TraceEventType.Warning); case ObjectEventType.Information: return(TraceEventType.Information); default: return(TraceEventType.Verbose); } }
public void CallEvent(ObjectEventType type, ObjectEventArgs args) { while (EventsToRemove.Count > 0) Events.Remove(EventsToRemove.Dequeue()); if (!IsActive) return; foreach (ObjectEvent evt in Events) { if (evt.Type != type) continue; evt.Call(args); } }
public void CallEvent(ObjectEventType type, EBoundingBox source, EBoundingBox trigger) { CallEvent(type, new ObjectEventArgs(source, trigger)); }
private void WriteException(Exception ex, IEnumerable <LogCategory> categories, ObjectEventType severity) { if (!IsLoggingEnabled) { return; } if (ex == null) { return; } WriteException(ex.InnerException, categories, severity); WriteEntry(new LogMessage(string.Concat(ex.Message, Environment.NewLine, ex.StackTrace)), categories, severity); }
private void WriteEntry(LogMessage message, IEnumerable <LogCategory> categories, ObjectEventType severity) { if (!IsLoggingEnabled) { return; } Logger.Writer.Write(new LogEntry() { Categories = categories.Select(c => c.Category).ToList(), Message = message.Message, Severity = ObjectEventHelper.ConvertToTraceEvent(severity) }); }
public TemporaryEvent(int tempCount = DEFAULT_TEMP_COUNT, ObjectEventType type = DEFAULT_TYPE, bool actionKeyMode = DEFAULT_ACTION_KEY_MODE, InputType actionKey = DEFAULT_ACTION_KEY) : base(type, actionKeyMode, actionKey) { TempCount = tempCount; }
/// <summary> /// Initializes a new instance of the <see cref="RobotObjectEventArgs"/> class. /// </summary> /// <param name="objectEventType">Type of the object event.</param> internal RobotObjectEventArgs(ObjectEventType objectEventType) : base(EventType.ObjectEvent) { ObjectEventType = objectEventType; }
/// <summary> /// Initializes a new instance of the <see cref="RobotObjectEventArgs"/> class. /// </summary> /// <param name="e">The event.</param> internal RobotObjectEventArgs(ExternalInterface.Event e) : base(e) { ObjectEventType = (ObjectEventType)e.ObjectEvent.ObjectEventTypeCase; }