private void SpawnObjectInHand(GameObject prefab, RWVR_InteractionController controller) { GameObject spawnedObject = Instantiate(prefab, controller.snapColliderOrigin.position, controller.transform.rotation); controller.SwitchInteractionObjectTo(spawnedObject.GetComponent <RWVR_InteractionObject>()); OnTriggerWasReleased(controller); }
public override void OnTriggerIsBeingPressed(RWVR_InteractionController controller) { base.OnTriggerIsBeingPressed(controller); Vector3 arrowInBowSpace = attachedBow.InverseTransformPoint(controller.transform.position); cachedTransform.localPosition = new Vector3(0, 0, arrowInBowSpace.z + arrowCorrection); }
private void AddFixedJointToController(RWVR_InteractionController controller) { FixedJoint fx = controller.gameObject.AddComponent <FixedJoint>(); fx.breakForce = 20000; fx.breakTorque = 20000; fx.connectedBody = rb; }
public override void OnTriggerWasPressed(RWVR_InteractionController controller) { base.OnTriggerWasPressed(controller); if (hideControllerModelOnGrab) { controller.HideControllerModel(); } AddFixedJointToController(controller); }
private void RemoveFixedJointFromController(RWVR_InteractionController controller) { if (controller.gameObject.GetComponent <FixedJoint>()) { FixedJoint fx = controller.gameObject.GetComponent <FixedJoint>(); fx.connectedBody = null; Destroy(fx); } }
public override void OnTriggerWasReleased(RWVR_InteractionController controller) { base.OnTriggerWasReleased(controller); if (hideControllerModel) { controller.ShowControllerModel(); } ReleaseFromController(controller); }
public override void OnTriggerWasPressed(RWVR_InteractionController controller) { base.OnTriggerWasPressed(controller); if (hideControllerModel) { controller.HideControllerModel(); } ConnectToController(controller); }
private void ReleaseFromController(RWVR_InteractionController controller) // 1 { cachedTransform.SetParent(null); // 2 rb.useGravity = true; // 3 rb.isKinematic = false; rb.velocity = controller.velocity; // 4 rb.angularVelocity = controller.angularVelocity; }
public override void OnTriggerWasPressed(RWVR_InteractionController controller) { GameManager._Instance.PlayEffect(3); if (isGotoTest) { Cell_Manager._Instance.GoToTest(); } for (int i = 0; i < gos_Off.Length; i++) { gos_Off[i].SetActive(false); } for (int i = 0; i < gos_On.Length; i++) { gos_On[i].SetActive(true); } if (gos_Toggle) { gos_Toggle.GetComponent <Toggle>().isOn = !gos_Toggle.GetComponent <Toggle>().isOn; } if (isCellQi) { Cell_Manager._Instance.CellOnclik(GetComponent <CellInformation>()); } if (is_Off) { for (int i = 0; i < rotate.Length; i++) { rotate[i].SelfRotate(false); } } if (go_Return) { Cell_Manager._Instance.ReturnClick(); } if (isCellSplit) { Cell_Manager._Instance.ShowSingleCellQi(GetComponent <CellInformation>()); } if (go_Returns) { Cell_Manager._Instance.ReturnClicks(); } if (isFenlie) { Cell_Manager._Instance.Play(); } if (isHe) { Cell_Manager._Instance.HePlay(); isHe = false; isFenlie = true; } }
public override void OnTriggerWasReleased(RWVR_InteractionController controller) { base.OnTriggerWasReleased(controller); if (hideControllerModelOnGrab) { controller.ShowControllerModel(); } rb.velocity = controller.velocity; rb.angularVelocity = controller.angularVelocity; RemoveFixedJointFromController(controller); }
public override void OnTriggerIsBeingPressed(RWVR_InteractionController controller) { base.OnTriggerIsBeingPressed(controller); if (RWVR_ControllerManager.Instance.AnyControllerIsInteractingWith <Bow>()) { SpawnObjectInHand(arrowPrefab, controller); } else { SpawnObjectInHand(randomPrefabs[UnityEngine.Random.Range(0, randomPrefabs.Count)], controller); } }
private void ConnectToController(RWVR_InteractionController controller) // 1 { cachedTransform.SetParent(controller.transform); // 2 cachedTransform.rotation = controller.transform.rotation; // 3 cachedTransform.Rotate(snapRotationOffset); cachedTransform.position = controller.snapColliderOrigin.position; // 4 cachedTransform.Translate(snapPositionOffset, Space.Self); rb.useGravity = false; // 5 rb.isKinematic = true; // 6 }
public override void OnTriggerWasReleased(RWVR_InteractionController controller) { base.OnTriggerWasReleased(controller); if (hideControllerModelOnGrab) { controller.ShowControllerModel(); } if (name == "dongwu (1)" || name == "zhiwu (1)") { RemoveFixedJointFromController(controller); ActivateRotate(); } else { rb.velocity = controller.velocity; rb.angularVelocity = controller.angularVelocity; RemoveFixedJointFromController(controller); } }
private void ReleaseFromController(RWVR_InteractionController controller) { cachedTransform.SetParent(parent); }
public override void OnTriggerWasReleased(RWVR_InteractionController controller) { attachedBow.GetComponent <Bow>().ShootArrow(); currentController.Vibrate(3500); base.OnTriggerWasReleased(controller); }
public override void OnTriggerWasPressed(RWVR_InteractionController controller) { base.OnTriggerWasPressed(controller); if (RWVR_ControllerManager.Instance.Gun1) { SetBoolPrefabAk47 = true; SetBoolPrefabThrowingAxe = false; SpawnObjectInHand(SetPrefabAk47, controller); SetCameras(); SetAk47Emitter.SetActive(true); SetAk47Canvas.SetActive(true); SetMagazineAk47.SetActive(true); } if (RWVR_ControllerManager.Instance.Gun2) { SetBoolPrefabOldAk47 = true; SetBoolPrefabThrowingAxe = false; SpawnObjectInHand(SetPrefabOldAk47, controller); SetCameras(); SetOldAk47Emitter.SetActive(true); SetOldAk47Canvas.SetActive(true); SetMagazineOldAk47.SetActive(true); } if (RWVR_ControllerManager.Instance.Gun3) { SetBoolPrefabUmp = true; SetBoolPrefabThrowingAxe = false; SpawnObjectInHand(SetPrefabUmp, controller); SetCameras(); SetUmpEmitter.SetActive(true); SetUmpCanvas.SetActive(true); SetMagazineUmp.SetActive(true); } if (RWVR_ControllerManager.Instance.Gun4) { SetBoolPrefabSkorp = true; SetBoolPrefabThrowingAxe = false; SpawnObjectInHand(SetPrefabSkorp, controller); SetCameras(); SetSkorpEmitter.SetActive(true); SetSkorpCanvas.SetActive(true); SetMagazineSkorp.SetActive(true); } if (RWVR_ControllerManager.Instance.Gun5) { SetBoolPrefabM4a1 = true; SetBoolPrefabThrowingAxe = false; SpawnObjectInHand(SetPrefabM4a1, controller); SetCameras(); SetM4a1Emitter.SetActive(true); SetM4a1Canvas.SetActive(true); SetMagazineM4a1.SetActive(true); } if (RWVR_ControllerManager.Instance.Gun6) { SetBoolPrefabPistol = true; SetBoolPrefabThrowingAxe = false; SpawnObjectInHand(SetPrefabPistol, controller); SetCameras(); SetPistolEmitter.SetActive(true); SetPistolCanvas.SetActive(true); SetMagazinePistol.SetActive(true); } if (RWVR_ControllerManager.Instance.Gun7) { SetBoolPrefabBullp = true; SetBoolPrefabThrowingAxe = false; SpawnObjectInHand(SetPrefabBullp, controller); SetCameras(); SetBullpEmitter.SetActive(true); SetBullpCanvas.SetActive(true); SetMagazineBullp.SetActive(true); } if (RWVR_ControllerManager.Instance.Gun8) { SetBoolPrefabUmpACOG = true; SetBoolPrefabThrowingAxe = false; SpawnObjectInHand(SetPrefabUmpACOG, controller); SetCameraUmpACOG.SetActive(true); SetUmpACOGEmitter.SetActive(true); SetUmpACOGCanvas.SetActive(true); SetMagazineUmpACOG.SetActive(true); } if (RWVR_ControllerManager.Instance.Gun9) { SetBoolPrefabM4a1ACOG = true; SetBoolPrefabThrowingAxe = false; SpawnObjectInHand(SetPrefabM4a1ACOG, controller); SetCameraM4a1ACOG.SetActive(true); SetM4a1ACOGEmitter.SetActive(true); SetM4a1ACOGCanvas.SetActive(true); SetMagazineM4a1ACOG.SetActive(true); } if (RWVR_ControllerManager.Instance.Gun10) { SetBoolPrefabBullpACOG = true; SetBoolPrefabThrowingAxe = false; SpawnObjectInHand(SetPrefabBullpACOG, controller); SetCameraBullpACOG.SetActive(true); SetBullpACOGEmitter.SetActive(true); SetBullpACOGCanvas.SetActive(true); SetMagazineBullpACOG.SetActive(true); } if (RWVR_ControllerManager.Instance.Gun11) { SetBoolPrefabAk47ACOG = true; SetBoolPrefabThrowingAxe = false; SpawnObjectInHand(SetPrefabAk47ACOG, controller); SetCameraAk47ACOG.SetActive(true); SetAk47ACOGEmitter.SetActive(true); SetAk47ACOGCanvas.SetActive(true); SetMagazineAk47ACOG.SetActive(true); } else { SetBoolPrefabAk47 = false; SetBoolPrefabOldAk47 = false; SetBoolPrefabUmp = false; SetBoolPrefabSkorp = false; SetBoolPrefabM4a1 = false; SetBoolPrefabPistol = false; SetBoolPrefabBullp = false; SetBoolPrefabUmpACOG = false; SetBoolPrefabM4a1ACOG = false; SetBoolPrefabBullpACOG = false; SetBoolPrefabAk47ACOG = false; SetBoolPrefabThrowingAxe = true; SpawnObjectInHand(SetPrefabThrowingAxe, controller); SetCameras(); SetEmmiter(); SetCanvas(); SetMagazines(); } }
public virtual void OnTriggerWasReleased(RWVR_InteractionController controller) { currentController = null; }
public virtual void OnTriggerIsBeingPressed(RWVR_InteractionController controller) { }
public RWVR_InteractionController currentController; // 3 public virtual void OnTriggerWasPressed(RWVR_InteractionController controller) { currentController = controller; }
private void ConnectToController(RWVR_InteractionController controller) { cachedTransform.SetParent(controller.transform); }