public void SwitchCameraToSpawnState(NodeAddedEvent evt, SelfTankReadyForCameraNode tank, [JoinByUser] SingleNode <UserUidComponent> userUidNode, [Context, JoinAll] ESMNode camera, [JoinAll] Optional <SingleNode <FollowCameraComponent> > followCameraOptional) { TransitionCameraComponent transitionCamera = camera.transitionCamera; transitionCamera.CameraSaveData = CameraSaveData.CreateFollowData(userUidNode.component.Uid, camera.bezierPosition.BezierPosition.GetBaseRatio(), camera.bezierPosition.BezierPosition.GetRatioOffset()); transitionCamera.Spawn = true; camera.cameraESM.Esm.ChangeState <CameraStates.CameraTransitionState>(); }
public void AddCameraTarget(NodeAddedEvent e, WeaponNode weapon, [Context, JoinByTank] SelfTankReadyForCameraNode tank) { if (!weapon.Entity.HasComponent <CameraTargetComponent>()) { CameraTargetComponent component = new CameraTargetComponent { TargetObject = weapon.weaponInstance.WeaponInstance.gameObject }; weapon.Entity.AddComponent(component); } }