private void Trajectory() { Debug.DrawRay(initMousePos, CellestialManager.GetMousePos()); transform.LookAt(initMousePos); if (Input.GetAxisRaw("Place") == 0) { trajectory = false; finalMousePos = CellestialManager.GetMousePos(); float distance = Vector3.Distance(finalMousePos, initMousePos); if (distance / maxTrajectory >= 1) { distance = maxTrajectory; } SetMovable(false); if (isMeteor) { foreach (Transform c in transform) { c.GetComponent <Rigidbody>().AddForce(transform.forward * (distance / maxTrajectory) * maxTrajectoryForce, ForceMode.Acceleration); } } else { rb.AddForce(transform.forward * (distance / maxTrajectory) * maxMeteorForce, ForceMode.Acceleration); } } }
private void CheckInput() { if (Input.GetAxisRaw("Place") != 0 && !inCollision && !trajectory) { initMousePos = CellestialManager.GetMousePos(); trajectory = true; } }
private void FollowMouse() { //transform.position = new Vector3(Input.mousePosition.x, 0, Input.mousePosition.y); transform.position = CellestialManager.GetMousePos(); }