示例#1
0
 public void DrawHitDecalSelf(SelfShaftAimingHitEvent evt, SingleNode <ShaftAimingShotDecalProjectorComponent> decalProjectorNode, [JoinByTank] SingleNode <MuzzlePointComponent> muzzlePointNode, [JoinAll] SingleNode <DecalManagerComponent> decalManagerNode)
 {
     if (decalManagerNode.component.EnableDecals)
     {
         base.DrawHitDecal(evt, decalManagerNode.component, decalProjectorNode.component, muzzlePointNode.component);
     }
 }
示例#2
0
 public void SendHit(SendShaftAimingHitToServerEvent evt, ShaftNode weapon)
 {
     if (evt.TargetingData.BestDirection.HasAnyHit())
     {
         SelfShaftAimingHitEvent hitEvent = new SelfShaftAimingHitEvent();
         float energy = weapon.weaponEnergy.Energy;
         this.CompleteTargets(hitEvent, evt.TargetingData, energy);
         base.ScheduleEvent(hitEvent, weapon);
     }
 }
示例#3
0
 public void SendHitToServer(SendHitToServerEvent e, ShaftNode weapon)
 {
     if (e.TargetingData.BestDirection.HasAnyHit())
     {
         SelfShaftAimingHitEvent eventInstance = new SelfShaftAimingHitEvent(HitTargetAdapter.Adapt(e.TargetingData.BestDirection.Targets), e.TargetingData.BestDirection.StaticHit)
         {
             HitPower = 0f
         };
         base.ScheduleEvent(eventInstance, weapon);
     }
 }
示例#4
0
 private void CompleteTargets(SelfShaftAimingHitEvent hitEvent, TargetingData targeting, float energy)
 {
     hitEvent.Targets   = HitTargetAdapter.Adapt(targeting.BestDirection.Targets);
     hitEvent.StaticHit = targeting.BestDirection.StaticHit;
     hitEvent.HitPower  = 1f - energy;
 }
示例#5
0
 public void CreateShaftQuickHitSelfSoundEffect(SelfShaftAimingHitEvent evt, SingleNode <ShaftAimingHitSoundEffectComponent> weapon, [JoinAll] SingleNode <SoundListenerBattleStateComponent> soundListener)
 {
     this.CreateShaftHitSoundEffect(evt, weapon.component);
 }
示例#6
0
 public void MakeAimingHitImpact(SelfShaftAimingHitEvent evt, ShaftAimingImpactNode weapon)
 {
     this.MakeImpactOnAnyAimingShot(evt.HitPower, evt.Targets, weapon);
 }