I have been working on converting this Js to C# but i got a few last bugs I cant get out some one please help me.
JS version
var driveForce: float;
var hoverHeight: float;
var thrustForce: float;
var steerForce: float;
var steerPosZ: float;
var damping: float;
var thrusters: Vector3[];
function FixedUpdate () {
var hit: RaycastHit;
for (i = 0; i < thrusters.Length; i++) {
var wdThruster: Vector3 = transform.TransformPoint(thrusters*);*
-
if (Physics.Raycast(wdThruster, -transform.up, hit)) {*
-
var discrep: float = hoverHeight - hit.distance;*
-
var upVel: float = rigidbody.GetRelativePointVelocity(wdThruster).y;*
_ rigidbody.AddForceAtPosition(transform.up * (thrustForce * discrep - upVel * damping), wdThruster);_
-
}*
-
}*
-
var fwd: float = Input.GetAxis(“Vertical”);*
_ rigidbody.AddForce(transform.forward * (driveForce * fwd));_ -
var steer: float = -Input.GetAxis(“Horizontal”);*
_ rigidbody.AddForceAtPosition(transform.right * (steerForce * steer), transform.TransformPoint(Vector3.forward * steerPosZ));_
}
function OnDrawGizmos() {
- for (i = 0; i < thrusters.Length; i++) {*
_ Gizmos.DrawWireSphere(transform.TransformPoint(thrusters*), 0.1);_
_ }_
_}*_
C# version so far:
using UnityEngine;
using System.Collections;
public class HoverBoard : MonoBehaviour {
float driveForce;
float hoverHeight;
float thrustForce;
float steerForce;
float steerPosZ;
float damping;
Vector3[] thrusters;
void FixedUpdate (){
* RaycastHit hit;*
* for (i = 0; i < thrusters.Length; i++) {*
_ Vector3 wdThruster = transform.TransformPoint(thrusters*);*_
* if (Physics.Raycast(wdThruster, -transform.up, hit)) {*
* float discrep = hoverHeight - hit.distance;*
* float upVel = rigidbody.GetRelativePointVelocity(wdThruster).y;*
_ rigidbody.AddForceAtPosition(transform.up * (thrustForce * discrep - upVel * damping), wdThruster);
* }
}*_
* float fwd = Input.GetAxis(“Vertical”);*
_ rigidbody.AddForce(transform.forward * (driveForce * fwd));_
* float steer = -Input.GetAxis(“Horizontal”);*
_ rigidbody.AddForceAtPosition(transform.right * (steerForce * steer), transform.TransformPoint(Vector3.forward * steerPosZ));
}_
void OnDrawGizmos (){
* for (i = 0; i < thrusters.Length; i++) {*
_ Gizmos.DrawWireSphere(transform.TransformPoint(thrusters*), 0.1f);
}
}
}*
I am getting there errors :
error CS0103: The name i' does not exist in the current context*_</em></em> <em><em>_*error CS0165: Use of unassigned local variable
hit’
error CS1502: The best overloaded method match for UnityEngine.Physics.Raycast(UnityEngine.Vector3, UnityEngine.Vector3, out UnityEngine.RaycastHit)' has some invalid arguments*_</em></em> <em><em>_*error CS1620: Argument
#3’ is missing `out’ modifier_