Beispiel #1
0
 /// <summary>
 /// Creates a bullet with a on bullet hit call back.
 /// </summary>
 /// <param name="damage">The damage of the bullet</param>
 /// <param name="damageGroup">The damage group of this bullet</param>
 /// <param name="onBulletHit">The event which will be called when the bullet hits it's target.</param>
 public Bullet(double damage, string damageGroup, BulletHitEvent onBulletHit)
     : this()
 {
     this.Damage = damage;
     this.DamageGroup = damageGroup;
     this.OnBulletHit = onBulletHit;
     this.collisionChecked = 0;
 }
Beispiel #2
0
        public override void OnBulletHit(BulletHitEvent e)
        {
            _lastEnemyEnergy = e.VictimEnergy;

            foreach (var bullet in myBullets)
            {
                if (Math.Abs(bullet.GetTraveledDistance(Time) - Helper.GetDistance(e.Bullet.X, e.Bullet.Y, bullet.StartX, bullet.StartY)) <= _radius &&
                    Math.Abs(e.Bullet.Power - bullet.Power) < 0.001 && Math.Abs(e.Bullet.HeadingRadians - bullet.Angle) < 0.001)
                {
                    bullet.CheckHit(e.Bullet.X, e.Bullet.Y, Time); //maybe add more weight
                    break;
                }
            }
        }
        private void InstantiateExplosion(BulletHitEvent e, WeaponNode weaponNode)
        {
            BulletEffectComponent    bulletEffect  = weaponNode.bulletEffect;
            GetInstanceFromPoolEvent eventInstance = new GetInstanceFromPoolEvent {
                Prefab          = bulletEffect.ExplosionPrefab,
                AutoRecycleTime = bulletEffect.ExplosionTime
            };

            base.ScheduleEvent(eventInstance, weaponNode);
            GameObject gameObject = eventInstance.Instance.gameObject;

            gameObject.transform.position = e.Position;
            gameObject.transform.rotation = Quaternion.identity;
            gameObject.SetActive(true);
        }
        public override void OnBulletHit(BulletHitEvent evnt)
        {
            var bullet = Utilities.FindBulletInfoInBulletList(_bulletsFired, evnt.Bullet);

            if (bullet == null)
            {
                return;
            }

            var state = (int)Math.Round(Utilities.MapToNewScale(bullet.GuessFactor, -1.0d, 1.0d, 0d,
                                                                _aimLearner.NrStates - 1));

            _aimLearner.IncreaseRatio(bullet.ApplicableSegments, state);
            _aimLearner.DecreaseTemperature();

            _nrbulletsFired++;
            _nrbulletsHit++;

            _bulletsFired.Remove(bullet);

            IncreaseMinFirePower(FirePowerIncreaseAmount);
        }
Beispiel #5
0
 public override void OnBulletHit(BulletHitEvent e)
 {
     _enemyEnergy -= _bulletDamage;
 }
Beispiel #6
0
 public void OnBulletHit(BulletHitEvent evnt)
 {
     throw new NotImplementedException();
 }
Beispiel #7
0
        public void InstantiateEffectOnTargetHit(BulletHitEvent e, BulletNode bullet, [JoinByTank] RicochetSoundEffectNode weapon, [JoinAll] SingleNode <SoundListenerBattleStateComponent> soundListener)
        {
            Vector3 position = e.Position;

            weapon.ricochetTargetHitSoundEffect.PlayEffect(position);
        }
Beispiel #8
0
 /*
  * This helps us keep from being confused about the enemy's energy after hitting them with a bullet.
  */
 public void OnBulletHit(BulletHitEvent e)
 {
     enemyEnergy -= BULLET_DAMAGE;
 }
Beispiel #9
0
 public void OnBulletHit(BulletHitEvent evnt)
 {
 }
Beispiel #10
0
 public override void ActionBulletHit(BulletHitEvent ev)
 {
     hits++;
 }
Beispiel #11
0
 public override void OnBulletHit(BulletHitEvent evnt)
 {
     this.OnBulletHit(evnt);
 }
Beispiel #12
0
 protected virtual void OnBulletHitBullet(BulletHitEvent e)
 {
 }
Beispiel #13
0
        public override void OnBulletHit(BulletHitEvent evnt)
        {
            strategyManager.GetStrategy().ActionBulletHit(evnt);

            //Execute();
        }
Beispiel #14
0
 private void OnTriggerEnter(Collider other)
 {
     BulletHitEvent?.Invoke();
 }
Beispiel #15
0
 public override void OnBulletHit(BulletHitEvent evnt)
 {
     base.OnBulletHit(evnt);
     LastHit = evnt.Time;
 }
Beispiel #16
0
 public override void OnBulletHit(BulletHitEvent evnt)
 {
     base.OnBulletHit(evnt);
 }
 public override void OnBulletHit(BulletHitEvent evnt)
 {
     currentHandler.OnBulletHit(evnt);
     battleEvents.BulletHitEvents.Add(evnt);
     base.OnBulletHit(evnt);
 }
Beispiel #18
0
 public void OnBulletHit(BulletHitEvent evnt)
 {
     count(evnt);
 }
Beispiel #19
0
 public override void OnBulletHit(BulletHitEvent evnt)
 {
 }
Beispiel #20
0
 void IHandleScanedRobot.OnBulletHit(BulletHitEvent evnt)
 {
     throw new NotImplementedException();
 }
Beispiel #21
0
 public override void OnBulletHit(BulletHitEvent e)
 {
     Stragegy.OnBulletHit(e);
 }
Beispiel #22
0
 void RefreshOnBulletHit(BulletHitEvent e)
 {
     Refresh();
 }
 public override void OnBulletHit(BulletHitEvent evnt)
 {
     blackBoard.CurentBehaviourInfo.consecutiveMisses = 0;
     blackBoard.totalHittedBullets++;
 }
Beispiel #24
0
 public override void OnBulletHit(BulletHitEvent evento)
 {
     Console.WriteLine($"{Name} baleou {evento.VictimName}!!");
 }
Beispiel #25
0
 public override void OnBulletHit(BulletHitEvent evnt)
 {
     base.OnBulletHit(evnt);
     bulletHitBulletCount = 0;
     bulletMissedMax      = 0;
 }
Beispiel #26
0
 public virtual void OnBulletHit(BulletHitEvent e)
 {
 }
Beispiel #27
0
 public override void OnBulletHit(BulletHitEvent e)
 {
     Perdido = 0;
     Fire(1);
 }