public void Update() { EventMessageList currentList = StDataProxy.EventMessageList; if (currentList == _eventMessageList) { return; } _eventMessageList = currentList; if (currentList is null) { Log.Message($"[{nameof(StDataEventMessageListHandler)}] Nullified"); return; } try { Int32 language = StWorkProxy.CurrentLanguage; Int32 count = 0; foreach (var item in currentList.messageData) { EventMessageDataId id = new EventMessageDataId(item.category, item.scenarioNumber, item.playNumber, item.messageNumber); if (_dic.TryGetValue(id, out var text)) { count++; item.message[language] = text; } } Log.Message($"[{nameof(StDataEventMessageListHandler)}] Changed: {count}"); } catch (Exception ex) { Log.Error(ex, $"[{nameof(StDataEventMessageListHandler)}] Error"); } }
/// <summary> /// Constructor /// </summary> /// <param name="level">The level of this event.</param> /// <param name="addExtraSpace">Should there be extra space around this notification?</param> public EventNotification(EventLevel level, bool addExtraSpace = false) { AddExtraSpace = addExtraSpace; Level = level; Messages = new EventMessageList(); }