コード例 #1
0
ファイル: EffectBarrier.cs プロジェクト: lawerencem/Everpixel
 public override void TryProcessHit(MHit hit, bool prediction)
 {
     base.TryProcessHit(hit, prediction);
     if (!prediction)
     {
         var tgt     = hit.Data.Target.Current as CChar;
         var hp      = this.GetHP(hit);
         var barrier = new MBarrier((int)this.Data.Duration, (int)hp);
         var data    = new EvBarrierData();
         data.barrier = barrier;
         data.target  = tgt;
         var ev = new EvBarrier(data);
         ev.TryProcess();
         VHitController.Instance.DisplayBarrierCreation(tgt, hit, barrier);
     }
 }
コード例 #2
0
        public void DisplayBarrierCreation(CChar target, MHit hit, MBarrier barrier)
        {
            var dmgData = new HitDisplayData();

            dmgData.Color    = CombatGUIParams.BLUE;
            dmgData.Hit      = hit;
            dmgData.Priority = ViewParams.BARRIER_PRIORITY;
            dmgData.Text     = barrier.MaxHP.ToString();
            dmgData.Target   = target.GameHandle;
            dmgData.YOffset  = CombatGUIParams.FLOAT_OFFSET;
            dmgData.Hit.AddDataDisplay(dmgData);
            this.DisplayBarrier(target, hit);
            var controller = new ParticleController();
            var util       = new DecoUtil();
            var particles  = controller.CreateParticle(BARRIER_PARTICLE_PATH);

            util.AttachEffectParticlesToChar(target, particles, EEffect.Barrier);
        }
コード例 #3
0
 public void AddBarrier(MBarrier shield)
 {
     this._model.GetEffectsContainer().AddBarrier(shield);
 }
コード例 #4
0
 public void AddBarrier(MBarrier s)
 {
     this._barriers.Add(s);
 }