Exemple #1
0
        public MInjury GetInjury()
        {
            var injury = new MInjury(this._type);

            if (this.DoT.X != EDoT.None)
            {
                var data = new MOTEData();
                data.Dur   = this.DoT.Y;
                injury.DoT = new MDoT(this.DoT.X, data);
            }
            foreach (var stat in this.PStatMods)
            {
                var data = this.GetModProto();
                data.Stat   = stat.X;
                data.Scalar = stat.Y;
                injury.Mods.Add(new StatMod(data));
            }
            foreach (var stat in this.SStatMods)
            {
                var data = this.GetModProto();
                data.Stat   = stat.X;
                data.Scalar = stat.Y;
                injury.Mods.Add(new StatMod(data));
            }
            return(injury);
        }
 public override void TryProcessHit(MHit hit, bool prediction)
 {
     base.TryProcessHit(hit, prediction);
     if (base.CheckConditions(hit))
     {
         hit.AddEffect(this);
     }
     if (base.CheckConditions(hit) && !prediction)
     {
         var tgt  = hit.Data.Target.Current as CChar;
         var data = new MOTEData();
         data.Dmg = hit.Data.Dmg;
         // TODO: Will need to grab dur from hit for dynamic durations at some point
         data.Dur = (int)hit.Data.Ability.Data.Duration;;
         var hot = new MDoT(EDoT.Burn, data);
         tgt.Proxy.AddDoT(hot);
     }
 }
Exemple #3
0
 public MDoT(EDoT type, MOTEData d) : base(d)
 {
     this._type = type;
 }
Exemple #4
0
 public MHoT(MOTEData d) : base(d)
 {
 }
Exemple #5
0
 public MOTE(MOTEData data)
 {
     this._data = data;
 }