Example #1
0
        public void RemoveImpactData(int impact_id)
        {
            ImpactData impact_data = FindImpactData(impact_id);

            if (impact_data != null)
            {
                RemoveImpactData(impact_data);
            }
        }
Example #2
0
        public override bool Parse(Hashtable info)
        {
            if (!base.Parse(info))
            {
                return(false);
            }

            ImpactData = CombatUtil.ParseImpactData(info, null);

            return(true);
        }
Example #3
0
        public static ImpactData ParseImpactData(IDictionary info, ImpactData fill)
        {
            if (fill == null)
            {
                fill = new ImpactData();
            }

            fill.Fadeout     = bool.Parse(info["fadeout"].ToString());
            fill.ImpactId    = int.Parse(info["id"].ToString());
            fill.ImpactIndex = int.Parse(info["impact_index"].ToString());
            fill.Sender      = CombatantIndex.Parse(info["sender"] as IDictionary);
            fill.SkillId     = int.Parse(info["skill_id"].ToString());
            fill.TurnLeft    = int.Parse(info["turn_left"].ToString());

            return(fill);
        }
Example #4
0
        public override bool Parse(Hashtable info)
        {
            m_owner = CombatantIndex.Parse(info["sender"] as Hashtable);
            if (m_owner == null)
            {
                EB.Debug.LogWarning("CombatImpactEvent.Parse: owner is empty {0}", EB.JSON.Stringify(info));
                return(false);
            }

            ImpactData = CombatUtil.ParseImpactData(info["impact_data"] as Hashtable, null);

            List <CombatEvent> children = CombatUtil.ParseEffects(info);

            if (children != null)
            {
                m_children = children;
            }

            int len = m_children.Count;

            for (int i = 0; i < len; i++)
            {
                CombatEffectEvent effect = m_children[i] as CombatEffectEvent;
                if (effect.Timing == eCombatEventTiming.AUTO)
                {
                    effect.Timing = eCombatEventTiming.ON_START;
                }

                if (effect.Sender == null)
                {
                    effect.Sender = new CombatantIndex(m_owner.TeamIndex, m_owner.IndexOnTeam);
                }
            }

            return(true);
        }
Example #5
0
 public void RemoveImpactData(ImpactData impact_data)
 {
     m_dataList.Remove(impact_data);
 }
Example #6
0
 public void AddImpactData(ImpactData impact_data)
 {
     m_dataList.Add(impact_data);
 }