public CityEvent GetXmlEventFromData(CityEventData data) { CityEvent dataEvent = null; if (data.m_eventName != "") { foreach (CityEventXml xmlEvent in CityEventManager.instance.m_xmlEvents) { foreach (CityEventXmlContainer containedEvent in xmlEvent._containedEvents) { if ("XMLEvent-" + containedEvent._name == data.m_eventName) { dataEvent = new XmlEvent(containedEvent); dataEvent.m_eventData = data; CimTools.CimToolsHandler.CimToolBase.DetailedLogger.Log("Created an XML event: " + data.m_eventName); break; } } if (dataEvent != null) { break; } } } return(dataEvent); }
public CityEvent GetEventFromData(CityEventData data) { CityEvent dataEvent = null; if (data.m_eventName != "") { if (data.m_eventName.Substring(0, 9) != "XMLEvent-") { try { Type foundType = Assembly.GetExecutingAssembly().GetType(data.m_eventName); if (foundType != null) { dataEvent = Activator.CreateInstance(foundType) as CityEvent; if (dataEvent != null) { dataEvent.m_eventData = data; CimTools.CimToolsHandler.CimToolBase.DetailedLogger.Log("Created a normal event: " + data.m_eventName); } } } catch { dataEvent = null; } } else { CimTools.CimToolsHandler.CimToolBase.DetailedLogger.Log("Found an XML event, rerouting."); dataEvent = GetXmlEventFromData(data); } } return(dataEvent); }