Exemple #1
0
        //解析效果集合
        private void ParseEffect_Set(XmlElement root)
        {
            string str  = string.Empty;
            var    meta = new CEffectSetMeta(root.GetAttribute("id"));

            m_xreader.TryReadChildNodeAttr(root, "WhichUnit", "value", ref str);
            meta.WhichUnit = CAbilityUtil.GetLocation(str);
            m_xreader.TryReadChildNodesAttr(root, "EffectArray", meta.EffectList);

            CEffectMetaManager.AddMeta(meta);
        }
Exemple #2
0
        //解析 buff效果
        private void ParseEffect_Behavior(XmlElement root)
        {
            string str  = string.Empty;
            var    meta = new CEffectApplyBuffMeta(root.GetAttribute("id"));

            m_xreader.TryReadChildNodeAttr(root, "WhichUnit", "value", ref str);
            meta.WhichUnit = CAbilityUtil.GetLocation(str);
            m_xreader.TryReadChildNodeAttr(root, "Behavior", "value", ref meta.Behavior);

            CEffectMetaManager.AddMeta(meta);
        }
Exemple #3
0
        //解析指令效果
        private void ParseEffect_Order(XmlElement root)
        {
            string str  = string.Empty;
            var    meta = new CEffectIssueOrderMeta(root.GetAttribute("id"));

            m_xreader.TryReadChildNodeAttr(root, "WhichUnit", "value", ref str);
            meta.WhichUnit = CAbilityUtil.GetLocation(str);

            m_xreader.TryReadChildNodeAttr(root, "Delay", "value", ref meta.Delay);
            m_xreader.TryReadChildNodeAttr(root, "EffectOrder", "value", ref str);
            meta.EffectOrder = CAbilityUtil.GetOrder(str);

            CEffectMetaManager.AddMeta(meta);
        }
Exemple #4
0
        //解析 查询效果
        private void ParseEffect_Area(XmlElement root)
        {
            string str  = string.Empty;
            var    meta = new CEffectEnumAreaMeta(root.GetAttribute("id"));

            m_xreader.TryReadChildNodeAttr(root, "WhichUnit", "value", ref str);
            meta.WhichUnit = CAbilityUtil.GetLocation(str);

            m_xreader.TryReadChildNodeAttr(root, "ImpactLocation", "value", ref str);
            meta.ImpactLocation = CAbilityUtil.GetLocation(str);

            m_xreader.TryReadChildNodeAttr(root, "Radius", "value", ref meta.Area.Radius);
            m_xreader.TryReadChildNodeAttr(root, "ImpactEffect", "value", ref meta.Area.Effect);

            CEffectMetaManager.AddMeta(meta);
        }
Exemple #5
0
        //解析发射导弹的数据
        private void ParseEffect_LaunchMissle(XmlElement root)
        {
            string str  = string.Empty;
            var    meta = new CEffectLaunchMissileMeta(root.GetAttribute("id"));

            m_xreader.TryReadChildNodeAttr(root, "WhichUnit", "value", ref str);
            meta.WhichUnit = CAbilityUtil.GetLocation(str);

            m_xreader.TryReadChildNodeAttr(root, "LaunchLocation", "value", ref str);
            //	meta.LaunchVFX.LocationValue = CAbilityUtil.GetLocation(str);
            //		m_xreader.TryReadChildNodeAttr(root, "LaunchLocation", "prefab", ref meta.LaunchVFX.Prefab);

            m_xreader.TryReadChildNodeAttr(root, "ImpactLocation", "value", ref str);
            //	meta.ImpactVFX.LocationValue = CAbilityUtil.GetLocation(str);
            //	m_xreader.TryReadChildNodeAttr(root, "ImpactLocation", "prefab", ref meta.ImpactVFX.Prefab);

            m_xreader.TryReadChildNodeAttr(root, "Missile", "value", ref meta.MisslePrefab);
            m_xreader.TryReadChildNodeAttr(root, "Movers", "Link", ref meta.Mover);
            m_xreader.TryReadChildNodeAttr(root, "Speed", "value", ref meta.MissileSpeed);
            m_xreader.TryReadChildNodeAttr(root, "Slerp", "value", ref meta.Slerp);

            CEffectMetaManager.AddMeta(meta);
        }