- Home /
iTween call producing NullReferenceException
Hey, guys.
When I run this short script, I'm getting a NullReferenceException error. I have no idea why. The error points to this line in iTween:
if(tweenArguments.Contains("looktarget") && isRunning){
I know it's the "MoveBy" call, because the other part is working correctly--but no luck with the first bit.
Here's the script. Any ideas about what I'm doing wrong?
UPDATE: Tried using even a basic MoveBy iTween, and no luck. Is there something wrong with the way I'm calling it from the Start function?
private var moveTime;
private var moveDistance;
private var fadeTime;
function Start()
{
moveTime = Random.Range(3,4);
moveDistance = Random.Range(.1,.3);
fadeTime = Random.Range(1,4);
moveDown();
fadeOut();
}
function moveDown()
{
iTween.MoveBy(gameObject, {"amount" : Vector3(0,-1*moveDistance,0), "time": moveTime, "easetype" : "easeInOutQuad", "oncomplete" : "moveUp", "oncompletetarget" : gameObject});
}
function moveUp()
{
iTween.MoveBy(gameObject, {"amount" : Vector3(0,moveDistance,0), "time": moveTime, "easetype" : "easeInOutQuad", "oncomplete" : "moveDown", "oncompletetarget" : gameObject});
}
function fadeOut()
{
iTween.FadeTo(gameObject, {"alpha" : 0, "time": fadeTime, "easetype" : "easeInOutQuad", "oncomplete" : "fadeIn"});
}
function fadeIn()
{
iTween.FadeTo(gameObject, {"alpha" : 1, "time": fadeTime, "easetype" : "easeInOutQuad", "oncomplete" : "fadeOut"});
}
$$anonymous$$aybe the object is destroyed before iTween is finished?
Thanks for thinking about it with me! But destroyed how? I'm not destroying it in this script...and I've just written the object, so there's no chance of it being destroyed by another script, I don't htink....
Hmm, can't technically see anything wrong. Is there any reason why you are calling "oncompletetarget" on the $$anonymous$$oveBy's? You shouldn't have to reference that. I haven't looked through the iTween source but it's possible there's an exception error if you try to declare the target to itself.
Answer by funasylum · Apr 10, 2012 at 05:36 AM
SOLVED--
Okay user error: turns out I had TWO iTween folders (ie duplicates) in my project. I guess when I updated once it didn't overwrite the old one, and gave me a new different version instead. So I had two iTween versions coexisting.
Ugh. That took me four hours of my life to figure out.
But once I deleted the old iTween folder it now works fine. Hope someone finds that helpful!
Answer by funasylum · Apr 10, 2012 at 02:55 AM
I'd like to confirm that this happened to me too. This must be some sort of iTween bug.
Not sure how-- but four separate iTween scripts mysteriously appeared on my game object. I didn't put them there! In fact, they were set to a quadratic ease (default?) which I hadn't used... so no idea how they appeared.
I notice that when I hit play, iTween does instantiate some sort of iTween script on my gameobject. However it usually disappears when you hit stop. Several accrued on my go however. Perhaps if I crashed or something the instantiated script stuck to my prefab and then didn't destroy? Very weird and annoying bug!
Answer by JoeProgram · Jan 03, 2012 at 11:44 PM
I had an unexpected Null Reference Exception from iTween happen to me when the iTween script was mysteriously set on a GameObject in the inspector. Perhaps that happened to you too.
Your answer
Follow this Question
Related Questions
iTween nullref error. Hashtable syntax problem? Not sure. 3 Answers
iTween MoveBy with Transforms 1 Answer
iTween can't access instantiated child. 1 Answer
iTween NullReferenceException error 1 Answer
Using iTween with a prefab tree. 0 Answers