Example #1
0
        public void Init(string columnName, TemplateType ttype, string guideColumns, QuestColumnType columnType)
        {
            strQuestColumnName = columnName;
            nQuestColumnValue  = 0;
            type = ttype;
            strGuideColumnNames  = guideColumns;
            strGuideColumnValues = string.Empty;

            emQuestColumnType = columnType;
        }
Example #2
0
        public void Init(string columnName, TemplateType ttype, string guideColumns, QuestColumnType columnType)
        {
            strQuestColumnName = columnName;
            nQuestColumnValue = 0;
            type = ttype;
            strGuideColumnNames = guideColumns;
            strGuideColumnValues = string.Empty;

            emQuestColumnType = columnType;
        }
Example #3
0
        /// <summary>
        /// 根据nTemplateId 和type更新当前地图名称
        /// 如果所有的地图都找不到返回false
        /// </summary>
        /// <param name="nTemplateId"></param>
        /// <param name="rows">返回该nTemplateId对应的行</param>
        /// <param name="type"></param>
        /// <returns></returns>
        private bool UpdateCurrentMapName(int nTemplateId, TemplateType ttype, QuestColumnType colType, ref DataRow[] rows, ref string newMapName)
        {
           
            Hashtable htMapNameReader = null;
            switch (ttype)
            {
                case TemplateType.NPC_TEMPLATE:
                    htMapNameReader = m_htMapNameNpcTable;
                    break;
                case TemplateType.DOODAD_TEMPLATE:
                    htMapNameReader = m_htMapNameDoodadTable;
                    break;
                default:
                    return false;
            }            
            if (htMapNameReader.ContainsKey(m_strCurrentMapName))                
            {
                MapLogicalTableReader reader = htMapNameReader[m_strCurrentMapName] as MapLogicalTableReader;
                rows = reader.Select(nTempleteIDColumnName, nTemplateId.ToString());
                if (rows.Length > 0)
                {
                    return true;
                }                
            }
            if (colType == QuestColumnType.START && m_htMapName.ContainsKey(m_nCurrentStartMapId))
            {
                string mapname = m_htMapName[m_nCurrentStartMapId] as string;
                MapLogicalTableReader reader = htMapNameReader[mapname] as MapLogicalTableReader;

                if(reader != null)
                {
                    rows = reader.Select(nTempleteIDColumnName, nTemplateId.ToString());
                    if (rows.Length > 0)
                    {
                        newMapName = mapname;
                        return true;
                    } 
                }
               
            }
            else if (colType == QuestColumnType.END && m_htMapName.ContainsKey(m_nCurrentEndMapId))
            {
                string mapname = m_htMapName[m_nCurrentEndMapId] as string;
                MapLogicalTableReader reader = htMapNameReader[mapname] as MapLogicalTableReader;

                if (reader != null)
                {
                    rows = reader.Select(nTempleteIDColumnName, nTemplateId.ToString());
                    if (rows.Length > 0)
                    {
                        newMapName = mapname;
                        return true;
                    }
                }

            }
            foreach (DictionaryEntry de in htMapNameReader)
            {
                MapLogicalTableReader reader = de.Value as MapLogicalTableReader;
                string mapname = de.Key as string;

                rows = reader.Select(nTempleteIDColumnName, nTemplateId.ToString());
                if (rows.Length > 0)
                {
                    newMapName = mapname;
                    return true;
                } 
            }
            return false;
            
        }
Example #4
0
        /// <summary>
        /// 根据nTemplateId 和type更新当前地图名称
        /// 如果所有的地图都找不到返回false
        /// </summary>
        /// <param name="nTemplateId"></param>
        /// <param name="rows">返回该nTemplateId对应的行</param>
        /// <param name="type"></param>
        /// <returns></returns>
        private bool UpdateCurrentMapName(int nTemplateId, TemplateType ttype, QuestColumnType colType, ref DataRow[] rows, ref string newMapName)
        {
            Hashtable htMapNameReader = null;

            switch (ttype)
            {
            case TemplateType.NPC_TEMPLATE:
                htMapNameReader = m_htMapNameNpcTable;
                break;

            case TemplateType.DOODAD_TEMPLATE:
                htMapNameReader = m_htMapNameDoodadTable;
                break;

            default:
                return(false);
            }
            if (htMapNameReader.ContainsKey(m_strCurrentMapName))
            {
                MapLogicalTableReader reader = htMapNameReader[m_strCurrentMapName] as MapLogicalTableReader;
                rows = reader.Select(nTempleteIDColumnName, nTemplateId.ToString());
                if (rows.Length > 0)
                {
                    return(true);
                }
            }
            if (colType == QuestColumnType.START && m_htMapName.ContainsKey(m_nCurrentStartMapId))
            {
                string mapname = m_htMapName[m_nCurrentStartMapId] as string;
                MapLogicalTableReader reader = htMapNameReader[mapname] as MapLogicalTableReader;

                if (reader != null)
                {
                    rows = reader.Select(nTempleteIDColumnName, nTemplateId.ToString());
                    if (rows.Length > 0)
                    {
                        newMapName = mapname;
                        return(true);
                    }
                }
            }
            else if (colType == QuestColumnType.END && m_htMapName.ContainsKey(m_nCurrentEndMapId))
            {
                string mapname = m_htMapName[m_nCurrentEndMapId] as string;
                MapLogicalTableReader reader = htMapNameReader[mapname] as MapLogicalTableReader;

                if (reader != null)
                {
                    rows = reader.Select(nTempleteIDColumnName, nTemplateId.ToString());
                    if (rows.Length > 0)
                    {
                        newMapName = mapname;
                        return(true);
                    }
                }
            }
            foreach (DictionaryEntry de in htMapNameReader)
            {
                MapLogicalTableReader reader = de.Value as MapLogicalTableReader;
                string mapname = de.Key as string;

                rows = reader.Select(nTempleteIDColumnName, nTemplateId.ToString());
                if (rows.Length > 0)
                {
                    newMapName = mapname;
                    return(true);
                }
            }
            return(false);
        }