iTween callback functions not firing

I have used iTween for a lot over the last 6 months, but every now and then some callback functions just won’t fire…

My code is this:

// Update is called once per frame
	void OnMouseDown ()
	{
		iTween.MoveTo (cameraObject, iTween.Hash ("path", transferPath, "time", 6, "easetype", iTween.EaseType.easeInOutCubic));
		iTween.RotateTo (cameraObject, new Vector3 (90, 0, 0), 3);
		iTween.ValueTo(cameraObject,
			iTween.Hash(
			"from", cameraObject.camera.fieldOfView,
			"to", 105.0f,
			"time", 6.0f,
			"easetype", iTween.EaseType.easeInOutCubic, 
			"onupdatetarget", cameraObject,
			"onupdate", "ChangeFOV",
			"oncompletetarget", gameObject,
			"oncomplete", "EnterScenarioState"));
	}
	
		void EnterScenarioState ()
	{
		Terrain.activeTerrain.enabled = true;
		middle.textboxGUI = true;
	}

In this case the oncomplete method is not firing and I want to understand why. I have tried (as you can see from the script snippet) to define “onupdatetarget” and “oncompletetarget” in an attempt to avoid any confusion with iTween automatically looking for the callback functions in some gameObject.

My ultimate question then is this: Why is this oncomplete function not firing?

You might want to try iTween.Stop(cameraObject); before you execute your tweens. This has helped me in the past with unusual behaviour in iTween.