ERROR: Missing field exception?!

Hi guys, I’m busy with making a TDgame… Every time there occurs an error when I’m playing.

MissingFieldException: UnityEngine.Vector3.position
Boo.Lang.Runtime.DynamicDispatching.PropertyDispatcherFactory.FindExtension (IEnumerable`1 candidates)
Boo.Lang.Runtime.DynamicDispatching.PropertyDispatcherFactory.Create (SetOrGet gos)
Boo.Lang.Runtime.DynamicDispatching.PropertyDispatcherFactory.CreateGetter ()
Boo.Lang.Runtime.RuntimeServices.DoCreatePropGetDispatcher (System.Object target, System.Type type, System.String name)
Boo.Lang.Runtime.RuntimeServices.CreatePropGetDispatcher (System.Object target, System.String name)
Boo.Lang.Runtime.RuntimeServices+c__AnonStorey17.<>m__C ()
Boo.Lang.Runtime.DynamicDispatching.DispatcherCache.Get (Boo.Lang.Runtime.DynamicDispatching.DispatcherKey key, Boo.Lang.Runtime.DynamicDispatching.DispatcherFactory factory)
Boo.Lang.Runtime.RuntimeServices.GetDispatcher (System.Object target, System.String cacheKeyName, System.Type cacheKeyTypes, Boo.Lang.Runtime.DynamicDispatching.DispatcherFactory factory)
Boo.Lang.Runtime.RuntimeServices.GetDispatcher (System.Object target, System.Object args, System.String cacheKeyName, Boo.Lang.Runtime.DynamicDispatching.DispatcherFactory factory)
Boo.Lang.Runtime.RuntimeServices.GetProperty (System.Object target, System.String name)
UnityScript.Lang.UnityRuntimeServices.GetProperty (System.Object target, System.String name)

var bullet : GameObject;

//tower objects
var frame : GameObject;
var barrel : GameObject;
var muzzlePositions : Transform[];

//Tower reload
var reloadTime : float;
var firePauseTime : float = 0.5f;
private var nextFireTime : float;
private var nextMoveTime : float;

//rest
var building : boolean = false;	//true while building
var shootSound : AudioClip;

//positions en rotations
var rotationSpeed : int;
private var myTarget : Transform;
private var horizontalRotation : Quaternion;
private var verticalRotation : Quaternion;

function FixedUpdate () {
	
	if (!building) {
		if (myTarget) {
			if (Time.time >= nextMoveTime) {
				Aim(myTarget.position);
			}
			
			if (Time.time >= nextFireTime) {
				Fire();
			}
		}
	}
	
}

function OnTriggerEnter (other : Collider) {
	
	if (other.tag == "enemy") {
		myTarget = other.gameObject.transform;
		nextFireTime = Time.time + reloadTime;
	}
	
}

function OnTriggerExit (other : Collider) {
	
	if (other.gameObject.transform == myTarget) {
		myTarget = null;
	}
	
}

function Aim (targetPosition : Vector3) {
	
	horizontalRotation = Quaternion.LookRotation(Vector3(targetPosition.position.x, 0, targetPosition.position.z));
	verticalRotation = Quaternion.LookRotation(Vector3(0, targetPosition.position.y, 0));
	
	frame.rotation = Quaternion.Lerp(frame.rotation, horizontalRotation, Time.deltaTime * rotationSpeed);
	barrel.rotation = Quaternion.Lerp(barrel.rotation, verticalRotation, Time.deltaTime * rotationSpeed);
	
}

function Fire () {
	
	//audio.Play(shootSound);	<- this won't work because 'no apropiate version'
	nextFireTime = Time.time + reloadTime;
	nextMoveTime = Time.time + firePauseTime;
	
	for (muzzles in muzzlePositions) {
		Instantiate(bullet, muzzles.position, muzzles.rotation);
	}
	
}

Thank you!

Please see doc for Vector3:

There is not field named “position”. And you use targetPosition.position
I think this causes the exception.