Translate C# into Javascript
Hey guys! I am trying to translate a c# to javascript, but i find it very hard to do this. I have tried multiple times, but i had no luck. I would appreciate it if someone could help me.
C#:
 using UnityEngine;
 using System.Collections;
 
 [RequireComponent (typeof (AudioSource))]
 public class Gun : MonoBehaviour {
 
     public enum GunType {Semi,Burst,Auto};
     public GunType gunType;
     public float rpm;
 
     //Components:
     public Transform spawn;
     private LineRenderer tracer;
     public Transform shellEjectionPoint;
     public Rigidbody shell;
 
     //System:
     private float secondsBetweenShots;
     private float nextPossibleShootTime;
 
     void Start () {
         secondsBetweenShots = 60 / rpm;
         if (GetComponent<LineRenderer> ()) {
             tracer = GetComponent<LineRenderer> ();
         }
     }
 
     public void Shoot () {
 
         if (CanShoot ()) {
 
             Ray ray = new Ray (spawn.position, spawn.forward);
             RaycastHit hit;
 
             float shotDistance = 20;
 
             if (Physics.Raycast (ray, out hit, shotDistance)) {
                 shotDistance = hit.distance;
             }
             nextPossibleShootTime = Time.time + secondsBetweenShots;
 
             GetComponent<AudioSource>().Play ();
 
                 if (tracer) {
                     StartCoroutine("RenderTracer", ray.direction * shotDistance);
                 }
                 
             Rigidbody newShell = Instantiate(shell,shellEjectionPoint.position,Quaternion.identity) as Rigidbody;
             newShell.AddForce(shellEjectionPoint.forward * Random.Range(150f,200f) + spawn.forward * Random.Range(-10f,10f));
 
         }
     }
 
     public void ShootContinuous() {
         if (gunType == GunType.Auto) {
             Shoot();
         }
     }
 
     private bool CanShoot() {
         bool canShoot = true;
 
         if (Time.time < nextPossibleShootTime) {
             canShoot = false;
         }
 
         return canShoot;
     }
     
         IEnumerator RenderTracer (Vector3 hitPoint){
             tracer.enabled = true;
             tracer.SetPosition(0,spawn.position);
             tracer.SetPosition(1,spawn.position + hitPoint);
 
             yield return null;
             tracer.enabled = false;
         }
     
 }
 
 
               JS:
 #pragma strict
 
     var rpm : float;
 
     //components:
     public var spawn : Transform;
     private var tracer : LineRenderer;
     public var ShellEjectionPoint : Transform;
     public var shell : Rigidbody;
 
     //system:
     private var SecondsBetweenShots : float;
     private var NextPossibleShootTime : float;
 
 
     function Start () {
         SecondsBetweenShots = 60 / rpm;
          if (GetComponent.LineRenderer) {
             tracer = GetComponent.LineRenderer;
         }
 
 
 
 
     }
 
     function Update () {
 
     }
 
               Thanks!
Why do you need to translate it into javascript? You can use the two together just fine.
Because i want to edit the script, but i can not find any information without crashing the game with errors. If i convert it to javascript however, i will be able to adjust it the way i like it since i am more experienced with javascript.
Your answer
 
             Follow this Question
Related Questions
Noob Here... Can you please give Script for moving a object into random Direction. 0 Answers
How to add a Type to a Class in Javascript? 1 Answer
OnCollisonEnter2D Not Firing after checking collider 1 Answer
Running C# Function from JS file 0 Answers
convert this 3 line code to c# ? i cant figure it out? 1 Answer