示例#1
0
        public void EnableTarget(NodeAddedEvent e, TargetEffectNode node, [Context, JoinByBattle] SingleNode <DMComponent> dm)
        {
            node.Entity.AddComponentIfAbsent <IsisGraphicsDamagingStateComponent>();
            node.isisGraphics.Ray.EnableTargetForDamaging();
            UpdateRayEffectUpdateEvent eventInstance = new UpdateRayEffectUpdateEvent();

            eventInstance.speedMultipliers = new float[] { float.PositiveInfinity, float.PositiveInfinity, float.PositiveInfinity };
            base.NewEvent(eventInstance).Attach(node.streamHit.TankHit.Entity).Attach(node).Schedule();
        }
示例#2
0
        public void EnableTarget(NodeAddedEvent e, [Combine] TargetEffectNode node, [Context, JoinByTeam] TeamNode team)
        {
            StreamHitComponent streamHit = node.streamHit;

            base.NewEvent <UpdateIsisRayModeEvent>().Attach(team).Attach(streamHit.TankHit.Entity).Attach(node).Schedule();
            UpdateRayEffectUpdateEvent eventInstance = new UpdateRayEffectUpdateEvent();

            eventInstance.speedMultipliers = new float[] { float.PositiveInfinity, float.PositiveInfinity, float.PositiveInfinity };
            base.NewEvent(eventInstance).Attach(node).Attach(streamHit.TankHit.Entity).Schedule();
        }
示例#3
0
        public void ResendUpdateWithTarget(UpdateEvent e, TargetEffectNode node)
        {
            UpdateRayEffectUpdateEvent eventInstance = new UpdateRayEffectUpdateEvent();

            eventInstance.speedMultipliers = new float[] { 1f, 2f, 1f };
            float[] singleArray2 = new float[3];
            singleArray2[1] = 4f;
            singleArray2[2] = 1f;
            eventInstance.bezierPointsRandomness = singleArray2;
            base.NewEvent(eventInstance).Attach(node).Attach(node.streamHit.TankHit.Entity).Schedule();
        }
示例#4
0
 public void UpdateEffectWithTarget(UpdateRayEffectUpdateEvent e, TargetEffectNode node, SingleNode <TankVisualRootComponent> targetTank, [JoinAll] CameraNode cameraNode)
 {
     node.isisGraphics.Ray.UpdateTargetPosition(targetTank.component.transform, node.streamHit.TankHit.LocalHitPoint, e.speedMultipliers, e.bezierPointsRandomness);
 }
示例#5
0
        public void EnableIsisTargetSound(NodeAddedEvent e, TargetEffectNode weapon, [Context, JoinByTank] IsisCurrentSoundEffectNode isisSound, [Context, JoinByBattle] DMNode dm)
        {
            IsisCurrentSoundEffectComponent isisCurrentSoundEffect = isisSound.isisCurrentSoundEffect;

            this.UpdateIsisSoundEffect(isisCurrentSoundEffect, weapon.isisDamagingSoundEffect.SoundController);
        }
示例#6
0
        public void DisableIsisTargetSound(NodeRemoveEvent e, TargetEffectNode weapon, [JoinByTank] IsisCurrentSoundEffectNode isisSound)
        {
            IsisCurrentSoundEffectComponent isisCurrentSoundEffect = isisSound.isisCurrentSoundEffect;

            this.UpdateIsisSoundEffect(isisCurrentSoundEffect, weapon.isisHealingSoundEffect.SoundController);
        }