public void ShakeOnVulcanShooting(NodeAddedEvent evt, VulcanShootingNode weapon, [Context, JoinByTank] SelfTankNode tank, CameraShakerNode cameraShaker, SingleNode <GameCameraShakerSettingsComponent> settings) { CameraShakeInstance instance = cameraShaker.cameraShaker.StartShake(settings.component, weapon.kickbackCameraShakerConfig); if (instance != null) { weapon.Entity.AddComponent(new VulcanShootingCameraShakerInstanceComponent(instance, weapon.kickbackCameraShakerConfig.FadeOutTime)); } }
public void PlayShootingProcessEffect(NodeAddedEvent evt, VulcanShootingNode weapon) { this.PlayNextSound(null, weapon.vulcanSoundManager); }
public void StartShooting(NodeAddedEvent evt, VulcanShootingNode shootingState, [Context, JoinByTank] ReadyVulcanTurbineAnimationNode weapon, [Context, JoinByTank] ActiveTankNode tank) { weapon.vulcanTurbineAnimation.StartShooting(); }