SimpleMove (and Move) is not recognized as a function of CharacterController

I’m making a simple first-person movement script, but when I save and go back to Unity I get the following error: BCE0019: ‘SimpleMove’ is not a member of ‘CharacterController’.

Here’s my JavaScript code:


#pragma strict

function Start () {

}

public var speed : float;

function Update () {
	var controller : CharacterController = GetComponent(CharacterController);
	var horizontalMovement : float = Input.GetAxis("Horizontal");
	var verticalMovement : float = Input.GetAxis("Vertical");
	
	var movement : Vector3 = new Vector3(horizontalMovement, 0.0F, verticalMovement);
	
	controller.SimpleMove(movement * speed);
}

I’ve also tried copying and pasting the exact code from the SimpleMove example on the Unity documentation. This code gave the same error. Here’s a screenshot from my Unity, which is version 4.5.4f1:

I’ve used JavaScript before, but I’m still new to Unity. Anything you could recommend would be helpful! If you need more information just ask.

Usually this problem is because you’ve created a script/class of your own named CharacterController, in which case your script is hiding Unity’s CharacterController. And as @Bunny83 pointed out, that is what you’ve done here. The solution is to change the name of your script to something other than ‘CharacterController’.