symbols & arrays

Reply

Join Date: Aug 2007
Posts: 241
Reputation: ceyesuma is an unknown quantity at this point 
Solved Threads: 0
ceyesuma ceyesuma is offline Offline
Posting Whiz in Training

symbols & arrays

 
0
  #1
Jul 11th, 2008
Hello
I have a quick question. I will have to learn syntax for action script. Before I research my objective. Can someone enlighten me with a yes or no (example code would be awesome).
Question: Can I create a Array of symbols and then manipulate them by making them apear and disapear from a lower layer. (Bring forward & move back)?
Or is there another way?
Thanks
Steve
Reply With Quote Quick reply to this message  
Join Date: Apr 2008
Posts: 22
Reputation: erico564 is an unknown quantity at this point 
Solved Threads: 4
erico564 erico564 is offline Offline
Newbie Poster

Re: symbols & arrays

 
0
  #2
Jul 11th, 2008
It's definitely possible to switch the stacking order of symbols. The manner in which you do it differs in ActionScript 2 and ActionScript 3, though.

IN AS2:
You will use the method "swapDepths" and "getNextHighestDepth()" in order to move a symbol to the top.

Graphics and Multimedia Syntax (Toggle Plain Text)
  1. // First, create an array:
  2. var myArray:Array = new Array(mySymbol1, mySymbol2, mySymbol3);
  3.  
  4. // This code will move mySymbol1 to the very front
  5. mySymbol1.swapDepths(this.getNextHighestDepth());
  6.  
  7. // This code will move the second item in the array to the very front
  8. myArray[1].swapDepths(this.getNextHighestDepth());
  9.  
  10. // This code will move the third item in the array to the very front when the user clicks on mySymbol1
  11. mySymbol1.onRelease = function() {
  12. myArray[2].swapDepths(this._parent.getNextHighestDepth());
  13. }

In AS2, it's important to keep an eye on the target. You'll notice in the first two examples, I use "this" to indicate the movie clip that flash should determine the "getNextHighestDepth" value for, but in the last one I use "this._parent". That's because in a mouse function like onRelease, "this" refers to the movie clip that called the function.

IN AS3:
It's similar to AS2, except now you're using setChildIndex instead of swapDepths and numChildren instead of getNextHighestDepth().

Graphics and Multimedia Syntax (Toggle Plain Text)
  1. // First, create an array:
  2. var myArray:Array = new Array(mySymbol1, mySymbol2, mySymbol3);
  3.  
  4. // This code will move mySymbol1 to the very front
  5. this.setChildIndex(mySymbol1, this.numChildren - 1);
  6.  
  7. // This code will move the second item in the array to the very front
  8. this.setChildIndex(myArray[1], this.numChildren - 1);
  9.  
  10. // This code will move the third item in the array to the very front when the user clicks on mySymbol1
  11. mySymbol1.addEventListener(MouseEvent.CLICK,swapDepths);
  12.  
  13. function swapDepths(e:Event):void {
  14. this.setChildIndex(myArray[2], e.target.parent.numChildren - 1);
  15. }

Again, note that you need to be careful in your targeting. For example, in the button click you need to use "e.target.parent" in order to indicate the parent of the clicking movie clip.

Have fun!

--eric
Eric Oliver
www.thecosmonaut.com
Reply With Quote Quick reply to this message  
Reply

This thread is more than three months old.
Perhaps start a new thread instead?
Message:



Other Threads in the Graphics and Multimedia Forum


Views: 1277 | Replies: 1
Thread Tools Search this Thread



Tag cloud for Graphics and Multimedia
About Us | Contact Us | Advertise | DaniWeb | Acceptable Use Policy | RSS Feed

©2003 - 2009 DaniWeb® LLC