Unity tutorial 球転がしゲーム勝手にJS化

非常にオススメなチュートリアル

Unity tutorial 球転がしゲーム(1)〜(4)

http://www.youtube.com/watch?v=O1Nku471HBk&NR=1

なのですが、記述がC#なので俺JSで記述したい。という人向けにJavaScriptで書いたコードに変換してみました。

私自信ビギナーですので間違い等々あると思います。

その際は教えていただければと思います。

PlayerBehaviour

public var jumpForce=400;
public var Speed = 10;

public var StartPos : Vector3;
public var OutOfField = -100;

public var OnGround = false;

function Start () {
	this.StartPos = transform.position;
}

function Update () {
	
	if (this.OnGround && Input.GetKeyDown (KeyCode.Space)){
		rigidbody.AddForce (0, jumpForce, 0);
		Debug.Log ("Jump! JS Force : " + jumpForce );
	}
	
	var z = Vector3.forward * Input.GetAxis("Vertical") * Time.deltaTime * Speed;
	var x = Vector3.right * Input.GetAxis("Horizontal") * Time.deltaTime * Speed;

	rigidbody.AddForce(x + z);
	
	if (transform.position.y < this.OutOfField) {
		transform.position = this.StartPos;
		rigidbody.velocity = Vector3.zero;
	}
}

function OnCollisionStay(collision : Collision){
	
	if (collision.gameObject.tag == "Ground") {
		this.OnGround = true;
	}
}


function OnCollisionExit(collision : Collision){
	
	if (collision.gameObject.tag == "Ground") {
		this.OnGround = false;	
	}
}



CameraBehaviour

private var Player : GameObject;
public var Distance = 10;
public var Direction : Vector3;

function Start() {
	
	this.Player = GameObject.Find("Player");
	
	//Debug.Log(Player);
	
	if(!Player){
		Debug.LogError("Player not found");
		Application.Quit();
	}
	
	var q = Quaternion.AngleAxis(45,Vector3.right);
	
	this.Direction = q * -Vector3.forward;
	
	transform.rotation = q;
}

	
function Update () {
	transform.position =  this.Player.transform.position + this.Direction*Distance;
}