Slower walk speed when button pressed

So I want to make it when I aim I have a slower walk speed but it just isnt working I also getting a Boo.Lang.Runtime.DynamicDispatching.PropertyDispatcherFactory.FindExtension (IEnumerable`1 candidates) error can anyone help??

Code is in Java

/// This script moves the character controller forward
/// and sideways based on the arrow keys.
/// It also jumps when pressing space.
/// Make sure to attach a character controller to the same game object.
/// It is recommended that you make only one call to Move or SimpleMove per frame.

var speed : float = 6.0;
var jumpSpeed : float = 8.0;
var gravity : float = 20.0;
var aimSpeed : float = 1;
private var moveDirection : Vector3 = Vector3.zero;
function Start() {

aimSpeed.active = false;
}
function Update() {
	var controller : CharacterController = GetComponent.<CharacterController>();
	if (controller.isGrounded) {
		// We are grounded, so recalculate
		// move direction directly from axes
		moveDirection = Vector3(Input.GetAxis("Horizontal"), 0,
		                        Input.GetAxis("Vertical"));
		moveDirection = transform.TransformDirection(moveDirection);
		moveDirection *= speed;
		
		if (Input.GetButton ("Jump")) {
	     	moveDirection.y = jumpSpeed;
	       if(Input.GetButton("Fire1")) 
	       speed.active = false;
	       aimSpeed.active = true;
		}
	}

	// Apply gravity
	moveDirection.y -= gravity * Time.deltaTime;
	
	// Move the controller
	controller.Move(moveDirection * Time.deltaTime);
}

var speed : float = 6.0;
var jumpSpeed : float = 8.0;
var gravity : float = 20.0;
var aimSpeed : float = 1;
private var moveDirection : Vector3 = Vector3.zero;
function Start() {

 aimSpeed.active = false;
 }
 function Update() {
     var controller : CharacterController = GetComponent.<CharacterController>();
     if (controller.isGrounded) {
         // We are grounded, so recalculate
         // move direction directly from axes
         moveDirection = Vector3(Input.GetAxis("Horizontal"), 0,
                                 Input.GetAxis("Vertical"));
         moveDirection = transform.TransformDirection(moveDirection);
         moveDirection *= speed;
         if (Input.GetKey(KeyCode.LeftControl)) {
            moveDirection.x *= (speed*0.5)
            moveDirection.z *= (speed*0.5)
         }
        else {
            moveDirection *= speed;
         }
         
         if (Input.GetButton ("Jump")) {
              moveDirection.y = jumpSpeed;
            if(Input.GetButton("Fire1")) 
            speed.active = false;
            aimSpeed.active = true;
         }
     }
 
     // Apply gravity
     moveDirection.y -= gravity * Time.deltaTime;
     
     // Move the controller
     controller.Move(moveDirection * Time.deltaTime);
 }

Untested, you will need to change your KeyCode, if you want to change it from ctrl.