예제 #1
0
        private void _AttachDamage(IIndividual individual, float damage)
        {
            HitForce hit = new HitForce();

            hit.Damage = damage;
            _AttachHit(individual, hit);
        }
예제 #2
0
        void IIndividual.AttachHit(Guid target, HitForce force)
        {
            var damage = force.Damage;

            _DamageCount += damage;

            _AidCount += force.Aid;

            if (InjuredEvent != null)
            {
                InjuredEvent(target, damage);
            }
        }
예제 #3
0
        private void _AttachHit(IIndividual target, HitForce hit_force)
        {
            if (_Attacked.Contains(target.Id) == false)
            {
                _Attacked.Add(target.Id);

                if (_Caster.HasHit() && _HitNextsEvent != null)
                {
                    _HitNextsEvent(_Caster.Data.HitNexts);
                }


                target.AttachHit(_Player.Id, hit_force);
            }
        }
예제 #4
0
 void IStage.Leave()
 {
     if (_Complete)
     {
         var item = _Player.Bag.Find(_ItemId);
         if (item != null)
         {
             var target = _Targets.Values.FirstOrDefault(t => EntityData.IsActor(t.EntityType) && t.Status == ACTOR_STATUS_TYPE.STUN);
             if (target != null)
             {
                 HitForce hit = new HitForce();
                 var      aid = item.GetAid() + _Caster.GetAid();
                 hit.Aid = aid;
                 target.AttachHit(_Player.Id, hit);
                 _Player.Bag.Remove(_ItemId);
             }
         }
     }
 }
예제 #5
0
        void IStage.Leave()
        {
            if (_Complete)
            {
                var item = _Player.Bag.Find(_ItemId);
                if (item != null)
                {

                    var target = _Targets.Values.FirstOrDefault( t => EntityData.IsActor(t.EntityType) && t.Status == ACTOR_STATUS_TYPE.STUN );
                    if (target != null)
                    {
                        HitForce hit = new HitForce();
                        var aid = item.GetAid() + _Caster.GetAid();
                        hit.Aid = aid;
                        target.AttachHit(_Player.Id , hit);
                        _Player.Bag.Remove(_ItemId);
                    }

                }
            }
        }
        private void _AttachHit(IIndividual target, HitForce hit_force)
        {
            if (_Attacked.Contains(target.Id) == false)
            {
                _Attacked.Add(target.Id);

                if (_Caster.HasHit() && _HitNextsEvent !=null)
                    _HitNextsEvent(_Caster.Data.HitNexts);

                target.AttachHit(_Player.Id , hit_force);

            }
        }
 private void _AttachDamage(IIndividual individual, float damage)
 {
     HitForce hit = new HitForce();
     hit.Damage = damage;
     _AttachHit(individual , hit);
 }
예제 #8
0
        void IIndividual.AttachHit(Guid target , HitForce force)
        {
            var damage = force.Damage;
            _DamageCount += damage;

            _AidCount += force.Aid;

            if (InjuredEvent != null)
                InjuredEvent(target , damage);
        }