help with tunnel Game

Ok Im a highschooler and I am working on a game in unity where a sphere moves down and around a tube controlled by you to avoid obstacles. I am trying to make it so that the ball can move forward at a designated speed but you can control how the ball moves sideways. I thought about using waypoints for this but the ball is acting very jerky. Also the tube twists and turns. Ive been stuck on this for a while all possible answers are welcomed. Thanks ahead of time. Here is my waypoint script try to take a look at it for me I couldnt find any mistakes but If there is a better or smoother way of doing this please help me.

var currentWP: int = 0;

//the array of waypoints in order of visiting
//can be made up of any game objects
var waypoints: GameObject[];

var speed: int = 5;
var rotationSpeed: int = 2;

//how close to get to the waypoint to consider having reached it
var accuracy: Number = 5;

function Update () 
{
	if(waypoints.length == 0) return;
	if(Vector3.Distance(waypoints[currentWP].transform.position, transform.position) < accuracy)
	{
		currentWP++;
		if(currentWP >= waypoints.length)
		{
			currentWP = 0;
		}	
	}
	
	//rotate towards target
	var direction = waypoints[currentWP].transform.position - transform.position;
	transform.rotation = Quaternion.Slerp(transform.rotation,Quaternion.LookRotation(direction), rotationSpeed * Time.deltaTime);
	transform.Translate(0, 0, Time.deltaTime * speed);
}

error CS0103: The name `EventSystem' does not exist in the current context.

1 Answer

1

I might try hand animating it using Unity’s Animation View, since it is a predefined type of travel:
http://docs.unity3d.com/Documentation/Manual/AnimationView43.html

Also, you might dig this, particularly the top link “navigation meshes”
http://docs.unity3d.com/Documentation/Manual/NavmeshandPathfinding.html
I have not yet used Unity’s built in navigation tools, but it might be a cool place to start. It also might be way more than you want to chew on.

Stick "using UnityEngine.EventSystems;" at the top of your script.

Try full path: UnityEngine.EventSystems.EventSystem.current.SetSelectedGameObject(null); or add: using UnityEngine.EventSystems; at the beginning of your script.