Convert Js yo C#
How do I convert the script below to C# It's a script for a third person Camera
 var target : Transform;
 var distance = 10.0;
 
 var xSpeed = 250.0;
 var ySpeed = 120.0;
 
 var yMinLimit = -20;
 var yMaxLimit = 80;
 
 var xOffset = 0.0;
 var yOffset = 0.0;
 
 private var x = 0.0;
 private var y = 0.0;
 
 @script AddComponentMenu("Camera-Control/Mouse Orbit")
 
 function Start () {
     var angles = transform.eulerAngles;
     x = angles.y;
     y = angles.x;
 
     // Make the rigid body not change rotation
     if (GetComponent.<Rigidbody>())
         GetComponent.<Rigidbody>().freezeRotation = true;
 }
 
 function LateUpdate () {
     if (target) {
         x += Input.GetAxis("Mouse X") * xSpeed * 0.02;
         y -= Input.GetAxis("Mouse Y") * ySpeed * 0.02;
          
         y = ClampAngle(y, yMinLimit, yMaxLimit);
                 
         var rotation = Quaternion.Euler(y, x, 0);
         var position = rotation * Vector3(xOffset, yOffset, -distance) + target.position;
         
         transform.rotation = rotation;
         transform.position = position;
     }
 }
 
 static function ClampAngle (angle : float, min : float, max : float) {
     if (angle < -360)
         angle += 360;
     if (angle > 360)
         angle -= 360;
     return Mathf.Clamp (angle, min, max);
 }
 
 
               I want to be able to reference the xSpeed and ySpeed variables through my other script which is C#. Please help :'(
Well since you have a C# script at hand you can take a look at the syntax and apply it to this script.
Answer by Wolfrik_Creations · Nov 08, 2016 at 08:09 AM
Here you go, I converted it and made sure there were no errors, but I didn't test it.
 using UnityEngine;
 
 [AddComponentMenu("Camera-Control/Mouse Orbit")]
 public class ThirdPersonCamera : MonoBehaviour {
     public Transform target;
     public float distance = 10f;
 
     public float xSpeed = 250f;
     public float ySpeed = 120f;
 
     public int yMinLimit = -20;
     public int yMaxLimit = 80;
 
     public float xOffset;
     public float yOffset;
 
     float x;
     float y;
 
     void Start(){
         Vector3 angles = transform.eulerAngles;
         x = angles.y;
         y = angles.x;
         if (GetComponent<Rigidbody>())
             GetComponent<Rigidbody>().freezeRotation = true;
     }
 
     void LateUpdate(){
         if(!target) return;
         x += Input.GetAxis("Mouse X") * xSpeed * 0.02f;
         y -= Input.GetAxis("Mouse Y") * ySpeed * 0.02f;
         y = ClampAngle(y, yMinLimit, yMaxLimit);
         Quaternion rotation = Quaternion.Euler(y, x, 0);
         Vector3 position = rotation * new Vector3(xOffset, yOffset, -distance) + target.position;
         transform.rotation = rotation;
         transform.position = position;
     }
 
     public static float ClampAngle(float angle, float min, float max){
         if(angle < -360)
             angle += 360;
         if(angle > 360)
             angle -= 360;
         return Mathf.Clamp(angle, min, max);
     }
 }
 
               :)
Big Thanks $$anonymous$$an, Works Perfectly I'll be sure to thank you again inside my game's credit sequence :D
No problem!
You don't have to do that if you don't want to.
:)
Your answer
 
             Follow this Question
Related Questions
Rotate camera when colliding 0 Answers
Convert a java script in a c#??? thank you 1 Answer
Model TextureBlurring Effect (Optimization) 0 Answers
Custom Camera Script Toggle Enabled / Disabled 2 Answers
Convert Java to C# 2 Answers