function Update () {
if (Input.GetKeyDown(KeyCode.LeftArrow)) {
var cam : Transform = Camera.main.transform;
var cameraRelativeRight : Vector3 = cam.TransformDirection (1, 0, 0);
transform.position += cameraRelativeRight * -1;
}
else if (Input.GetKeyDown(KeyCode.RightArrow)) {
cam = Camera.main.transform;
cameraRelativeRight = cam.TransformDirection (1, 0, 0);
transform.position += cameraRelativeRight * 1;
}
else if (Input.GetKeyDown(KeyCode.DownArrow)) {
cam = Camera.main.transform;
var cameraRelativeForward : Vector3 = cam.TransformDirection (0, 0, 1);
transform.position += cameraRelativeForward * -1;
}
else if (Input.GetKeyDown(KeyCode.UpArrow)) {
cam = Camera.main.transform;
cameraRelativeForward = cam.TransformDirection (0, 0, 1);
transform.position += cameraRelativeForward * 1;
}
else if (Input.GetKeyDown(KeyCode.Space) || Time.time - lastFall >= 1) {
transform.position += new Vector3(0, -1, 0);
if (!isValidPosition){
Debug.Log("you fucked up");
FindObjectOfType(BlockSpawn).BlockSpawn();
// Disable script
enabled = false;
}
lastFall = Time.time;
}
}
function isValidPosition () : boolean{
if (transform.position.y < 0.1)
return false;
else if (transform.position.x > 5 )
return false;
else if ( transform.position.x < -5)
return false;
else if (transform.position.z > 5 )
return false;
else if (transform.position.z < -5)
return false;
else
return true;
}
The log says that ‘function isValidPosition’ has always the same value.
I dont know why…