BCE0043 Unexpected Token: .

I’ve been puzzled on this for over 2 hours. Any help would be appreciated.

#pragma strict

	var range = 100.0;
	var fireRate = 0.05;
	var force = 10.0;
	var damage = 5.0;
	var bulletsPerClip = 40;
	var clips = 20;
	var reloadTime = 0.5;
	var hitParticles = ParticleEmitter;
	var muzzleFlash = Renderer;
	var noClips = false;
	var BloodEmitter = GameObject;
	
	private var bulletsLeft = 0;
	private var nextFireTime = 0.0;
	private var m_LastFrameShot = -1;

 function Start () {
	hitParticles = GetComponentInChildren(ParticleEmitter);
	
	// We don't want to emit particles all the time, only when we hit something.
	if (hitParticles)
		hitParticles.emit = false;
	bulletsLeft = bulletsPerClip;
}

 function LateUpdate() {
	pickup();
	if (muzzleFlash) {
		// We shot this frame, enable the muzzle flash
		if (m_LastFrameShot == Time.frameCount) {
			muzzleFlash.enabled = true;
			
			if (audio) {
				if (!audio.isPlaying)
					audio.Play();
				audio.loop = true;
			}
		} else {
			// We didn't, disable the muzzle flash
			muzzleFlash.enabled = false;
			enabled = false;
			
			// Play sound
			if (audio)
			{
				audio.loop = false;
			}
		}
	}
}

function Fire () {
	if (noClips == false){
		if (bulletsLeft == 0)
			return;
		
		// If there is more than one bullet between the last and this frame
		// Reset the nextFireTime
		if (Time.time - fireRate > nextFireTime)
			nextFireTime = Time.time - Time.deltaTime;
		
		// Keep firing until we used up the fire time
		while( nextFireTime < Time.time && bulletsLeft != 0) {
			FireOneShot();
			nextFireTime += fireRate;
		}
	}
}

function FireOneShot () {
	var direction = transform.TransformDirection(Vector3.forward);
	var hit = RaycastHit;
	
	// Did we hit anything?
	if (Physics.Raycast (transform.position, direction, hit, range)) {
		// Apply a force to the rigidbody we hit
		if (hit.rigidbody)
			hit.rigidbody.AddForceAtPosition(force * direction, hit.point);
		
		// Place the particle system for spawing out of place where we hit the surface!
		// And spawn a couple of particles
		if (hitParticles) {
			hitParticles.transform.position = hit.point;
			hitParticles.transform.rotation = Quaternion.FromToRotation(Vector3.up, hit.normal);
			hitParticles.Emit();
		}
		
		// Send a damage message to the hit object  
		hit.collider.SendMessageUpwards("ApplyDamage", damage, SendMessageOptions.DontRequireReceiver);
	}
	
	bulletsLeft--;
	
	// Register that we shot this frame,
	// so that the LateUpdate function enabled the muzzleflash renderer for one frame
	m_LastFrameShot = Time.frameCount;
	enabled = true;
	
	// Reload gun in reload Time    
	if (bulletsLeft == 0)
		Reload();   
}

function Reload () {
	
	// Wait for reload time first - then add more bullets!
	 WaitForSeconds(reloadTime);
	
	// We have a clip left reload
	clips--;
	bulletsLeft = bulletsPerClip;
}

function GetBulletsLeft () {
	return bulletsLeft;
}

function Update (){
	if (clips == 0){
		print("get Ammo");
		noClips = true;
	}
}	
function pickup ()

The problem is that you’ve declared a function, but there is no body to that function. You need to add the ‘{}’ even if this is an empty function.

function pickup () {

}

In addition to this problem, there are a number of places where you are assign a variable to a type. You need to use the ‘:’ operator. So your code says:

var BloodEmitter = GameObject;

And it should be:

var BloodEmitter : GameObject;

I see this on lines 8,9,11 and 72, and there may be others.