示例#1
0
        public void SendHitEvent(CollectSplashTargetsEvent evt, SplashWeaponNode weapon)
        {
            SplashHitData      splashHit     = evt.SplashHit;
            SelfSplashHitEvent eventInstance = new SelfSplashHitEvent(splashHit.DirectTargets, splashHit.StaticHit, splashHit.SplashTargets);

            base.ScheduleEvent(eventInstance, weapon);
        }
示例#2
0
 public void ScheduleHitFeedbackOnSelfSplashHitEvent(SelfSplashHitEvent e, SplashWeaponNode weapon, [JoinByTank] SelfTankNode tank, [JoinByBattle] BattleNode battle)
 {
     if (this.ValidateSelfHit(e, tank, battle))
     {
         base.ScheduleEvent <HitFeedbackEvent>(tank);
     }
     else if (((e.SplashTargets != null) && (e.SplashTargets.Count != 0)) && this.ValidateTargets(e.SplashTargets, tank, battle))
     {
         base.ScheduleEvent <HitFeedbackEvent>(tank);
     }
 }
示例#3
0
 public void CalculateAndSendSplashImpactEffect(SelfSplashHitEvent evt, SplashImpactNode weapon, [JoinByTank] TankPhysicsNode tank)
 {
     this.CalculateAndSendSplashImpactEffectByBaseEvent(evt.SplashTargets, evt.StaticHit, evt.Targets, weapon, tank);
 }
示例#4
0
 public void StopUnit(SelfSplashHitEvent e, SpiderActiveNode spider)
 {
     spider.Entity.RemoveComponent <UnitReadyComponent>();
 }