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(); }
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(); }
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(); }
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); }
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); }
public void DisableIsisTargetSound(NodeRemoveEvent e, TargetEffectNode weapon, [JoinByTank] IsisCurrentSoundEffectNode isisSound) { IsisCurrentSoundEffectComponent isisCurrentSoundEffect = isisSound.isisCurrentSoundEffect; this.UpdateIsisSoundEffect(isisCurrentSoundEffect, weapon.isisHealingSoundEffect.SoundController); }