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);
        }