FIrst off, just wanted to say thanks to the developer(s). This is an awesome set of classes.
I am a beginner to the world of AS3, and am just getting my feet wet with Object Oriented Programming, so please forgive some of the newb mistakes.
I KNOW this has to be a simple mistake involving my NEWBness to object oriented programming.
I have been able to implement TweenLite just fine in my mouseover event (a function in a Class file called Rooms.as) without any trouble.
My code, inside my mouseOverListener function, that gets the movie clip that was just rolled over and implements my TweenLite effect (increase scale) looks like this:
myMC=MovieClip(evt.target);
var myTween:TweenLite = new TweenLite(myMC, .5, {scaleX:3,scaleY:3});
That works great. Now, I have been trying to reverse this tween (myTween) in my mouse out listener function.
Inside my mouseoutLIstener function I have:
myTween.reverse();
When I try to test, I get the error:"1120:Access of undefined property myTween".
So this function is not seeing that TweenLite object (called myTween) I created.
I tried the following in my mouseoutlistener function, and it worked to bring the scale back to 1:
var myTween:TweenLite = new TweenLite(myMC, 1, {scaleX:1,scaleY:1});//works, but creates new object
The problem is, I don't want to create a new object. I want to reverse the one that was just created.
I have some more complex tweens that I would like to just use the reverse() function on.
I am pretty sure this comes down to me not understanding scope in OOP, but if I could get a handle on why this isnt working, it would most definitely HELP my understanding.
Any help would be greatly appreciated.
In case it might help, here is the entire Rooms.as class:
package
{
import flash.display.*;
import flash.events.*;
import com.abrahamyan.liquid.ToolTip;
import com.greensock.*;
public class Rooms extends MovieClip
{
// var speed:int; // how fast the fish is moving
private var tooltip:ToolTip=ToolTip.getInstance()
var myMC:MovieClip;
// var myTween:TweenLite = new TweenLite(myMC, .5, {scaleX:3,scaleY:3});
public function Rooms( ) // constructor
{
addEventListener(MouseEvent.MOUSE_OVER, mouseOverListener);
addEventListener(MouseEvent.MOUSE_OUT, mouseOutListener);
addEventListener(MouseEvent.CLICK, clickListener);
//addEventListener(Event.ENTER_FRAME,move);
} // end constructor
function mouseOverListener(evt:MouseEvent):void {
gotoAndStop("over");
var over_name=evt.target.name;
evt.target.alpha=.3;
var act_type:String="over";
var icon_type:String="plant";
//ParseempData(xmlData,over_name,act_type,icon_type);
trace("mouseOverListener method Rooms class");
tooltip.followMouse=true;
tooltip.fixedWidth=150;
tooltip.multiLine=true;
tooltip.show("Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut sodales placerat ligula. Proin elementum, ante vel consectetur pharetra");
myMC=MovieClip(evt.target);
//TweenLite.to(myMC,1, {scaleX:2,scaleY:2});
//var myTween:TweenLite = new TweenLite(myMC, .5, {scaleX:3,scaleY:3});
var myTween:TweenLite = new TweenLite(myMC, .5, {scaleX:3,scaleY:3});
}
function clickListener(evt:MouseEvent):void {
//setBlank();
gotoAndStop("over");
var over_name=evt.target.name;
var act_type:String="click";
var icon_type:String="plant";
//ParseempData(xmlData,over_name,act_type,icon_type);
trace("clickListener method Rooms class");
}
function mouseOutListener(evt:MouseEvent):void {
gotoAndStop("out");
evt.target.alpha=1;
tooltip.hide();
trace("mouseOutListener method Rooms class");
var myTween:TweenLite = new TweenLite(myMC, 1, {scaleX:1,scaleY:1});//works, but creates new object
//myTween.reverse();//doesnt work, cant find myTween
}
} // end class
} // end package