À̹ø°Á¿¡¼´Â 2.0¿¡¼ Á¸ÀçÇß´ø duplucateMovieClip°ú À¯»çÇÑ ±â´ÉÀ» ±¸ÇöÇÑ´Ù.
3.0¿¡¼´Â ±¸Á¶ÀûÇÁ·Î±×·¡¹ÖÀ» °Á¶ÇÏ´Ùº¸´Ï À¯¿¬¼ºÀ» Èñ»ýÇÑ ¸éÀÌ ÀÖ´Ù.
±×·¡¼ ¾îÂ¸é ÀÖ¾î¾ßµÉ°Íµéµµ Á¸ÀçÇÏÁö ¾Ê´Â ¹®Á¦¾Æ´Ñ ¹®Á¦Á¡ÀÌ »ý°å´Ù.
±¸Á¶°¡ ¾Æ´Ñ À¯Æ¿¸®Æ¼·Î ºüÁø°Íµéµµ ÀÖ±¸ ÇÏ¿©°£ ±×·¸´Ù....
À̹ø½Ã°£¿¡´Â ±×Áß¿¡ ÀÚÁÖ¾²´ø ´õÇø®ÄÉÀÌÆ®¹«ºñŬ¸³°ú À¯»çÇѼº°ÝÀ» ±¸ÇöÇÑ´Ù.
÷ºÎµÈÆÄÀÏÀº ³»°¡ Å×½ºÆ®¸¦ ÇϱâÀ§ÇØ ³Ö¾î³õÀº°ÍÀÌ´Ù.
3.0¿¡¼´Â ¿©ÀüÈ÷ Ŭ·¡½ºµéÀÇ ºÎ¸ð´Â ¸ðµÎ ¿ÀºêÁ§Æ®ÀÌ´Ù.
ÇÏÁö¸¸ ¹«ºñŬ¸³ÀÇ Á÷°è ºÎ¸ð´Â 2.0ó·³ ¿ÀºêÁ§Æ®°¡ ¾Æ´Ï´Ù. À̺κÐÀÌ ¹®Á¦°¡ »ý±â´Âµ¥ ¿©·¯°¡Áö °ñÄ¡¾ÆÇ»óȲÀÌ»ý±ä´Ù.
±×³É Çѹ濡 ÇØ°áÇÒ¼öÀÖ´Â ¸Þ¼Òµå³ª Ŭ·¡½º°¡ µðÆúÆ®·Î Á¦°øµÇ¾ú´Ù¸é ¾ó¸¶³ª ÁÁÀ»±î¸¶´Â ±×·±°ÍÀÌ Á¸ÀçÇÏÁö ¾Ê±â¶§¹®¿¡ Á÷Á¢¸¸µé¾î¾ßÇÑ´Ù.
¿©±â¼ ÀÚÄ©ÇÏ¸é ¹ÙÀÌÆ® ¾î·¹À̸¦ ½á¾ßµÇÁö ¾Ê´Â°¡ ÇÏ´Â ¿À·ù¸¦ Á¢ÇÒ¼öÀÖ´Ù.
¼±ÇàÁ¶°ÇÀº ÀÌ¹Ì È¸é»ó¿¡ ¹èÄ¡µÈ ¿ÀºêÁ§Æ®µé¿¡ ´ëÇÑ º¹Á¦ÀÌ´Ù. ÀÌ°ÍÀº ÀÌ¹Ì È¸é»ó¿¡ µð½ºÇ÷¹ÀÌ ¿ÀºêÁ§Æ®°¡ µ¿ÀÛÇÏ°íÀÖ´Â (¿¹¸¦ µé¾î
¸ÇóÀ½ ¹èÄ¡µÈÈÄ¿¡ ÄÞÆ÷³ÍÆ®µî ¿©·¯°¡Áö Á¶ÀÛÀ» Çؼ ȸéÀÌ ¹Ù²ï»óÅÂ) »óŵµ ±×´ë·Î º¹Á¦µÇ¾î¾ß º¹Á¦¶ó°í ÇÒ¼öÀÖ´Ù.
¹ÙÀÌÆ® ¾î·¹À̸¦ ½á¼ º¹Á¦Çϴ°ÍÀº amf ÀÇ ¿ÀºêÁ§Æ®¸¦ º¹»çÇϴ°ÍÀÏ»Ó º¹Á¦°¡ ¾Æ´Ï´Ù.
¹ÙÀÌÆ® ¾î·¹À̸¦ ½á¼ ½Ãµµ¸¦ ¾Æ·¡¿Í°°ÀÌÇÏ¿´´Ù.
import flash.display.Sprite;
import flash.net.registerClassAlias;
import flash.utils.ByteArray;
var test: Sprite = new Sprite();
test.addChild(new aaa());
var temp: ByteArray = new ByteArray();
temp.writeObject( test);
temp.position = 0;
var duplicate: Sprite=new Sprite();
var obj:Object=temp.readObject();
for(var i:String in obj){
trace(i+":"+obj[i]);
}
////////// À̽ÃÁ¡¿¡¼ ³»¿ë¹°ÀÌ Ãâ·ÂµÈ´Ù. ¸ðµç µé¾îÀִ»çÇ×ÀÌ »ÌÇô³ª¿Â´Ù. ¿©±â±îÁö´Â ÁÁ´Ù.
ÇÏÁö¸¸ ÇÁ·ÎÆÛƼÀÇ ³»¿ëµéÀ» ¸ðµÎ ºüÁü¾øÀÌ º¹Á¦´ë»ó¿¡ ³Ö¾î¾ßµÇ´Âµ¥ À̰͸¸ °¡Áö°í´Â º¹Á¦°¡ ºÒ°¡´ÉÇÏ´Ù.
-----------------------Ãâ·Â°á°ú-----------------------
x:0
y:0
blendMode:normal
rotation:0
scale9Grid:null
alpha:1
mouseChildren:true
name:instance2
scrollRect:null
cacheAsBitmap:false
accessibilityProperties:null
scaleX:1
visible:true
soundTransform:[object Object]
width:147.95000000000002
tabChildren:true
opaqueBackground:null
hitArea:null
tabEnabled:false
height:120
doubleClickEnabled:false
buttonMode:false
contextMenu:null
accessibilityImplementation:null
mouseEnabled:true
mask:null
focusRect:null
tabIndex:-1
transform:[object Object]
useHandCursor:true
scaleY:1
filters:
////////////////////////
±×·³ÀÌÁ¦ ¾Æ·¡ ¿¹Á¦¸¦ º»´Ù.
bbb¶ó´Â ÀνºÅϽº¸íÀ» °¡Áø ¹«ºñŬ¸³À» ÀÌ¹Ì ½ºÅ×ÀÌÁö¿¡ ³õ¾Ò´Ù.
bbb´Â µÎ°³ÀÇ ÇÁ·¹ÀÓÀ̱¸ µÎ¹ø°ÇÁ·¹ÀÓÀº »¡°£»öÀÌ´Ù.
import flash.display.*;
import flash.geom.Rectangle;
function cloneDisplayObject(target)
{
var targetClass:Class = Object(target).constructor
var duplicate = new targetClass()
duplicate.transform = target.transform;
duplicate.filters = target.filters;
duplicate.cacheAsBitmap = target.cacheAsBitmap;
duplicate.opaqueBackground = target.opaqueBackground;
if (target.scale9Grid) {
var rect:Rectangle = target.scale9Grid;
rect.x /= 20, rect.y /= 20, rect.width /= 20, rect.height /= 20;
duplicate.scale9Grid = rect;
}
if (target.hasOwnProperty("numChildren"))
{
for (var i = 0 ; i < target.numChildren; i ++)
{
duplicate.addChild(cloneDisplayObject(target.getChildAt(i)));
}
}
return duplicate;
}
bbb.gotoAndStop(2);
var n:MovieClip=cloneDisplayObject(bbb)
addChild(n);
n.gotoAndStop(2);
n.x=200;
var o:DisplayObject=cloneDisplayObject(n)
addChild(o);
o.x=350;
////////////
À§Ã³·³ ±âº»ÀûÀΰ͵éÀ» º¹Á¦Çؼ ³Ö¾î ³õÀ¸¸é ±×´ë·Î ÀÛµ¿ÇÑ´Ù. ÀÌ°ÍÀÌ °¡´ÉÇÑÀÌÀ¯´Â ¹°·Ð ¹«ºñŬ¸³ÀÌ ´ÙÀÌ³Ê¹Í Å¬·¡½º±â¶§¹®¿¡ °¡´ÉÇÏ´Ù. ¿ÜºÎ¿¡¼ µ¥ÀÌÅ͸¦ ³Ö¾îÁÙ¼öÀֱ⿡ ±×°ÍÀ» ÀÀ¿ëÇÑ°ÍÀÌ´Ù.
ÇÏÁö¸¸ À§¿¡¼ ºÃµí º¹Á¦ÀÇ ¸ÞÄ¿´ÏÁòÀº ÇØ´ç ¹«ºñŬ¸³ÀÇ ¼öÆÛŬ·¡½º¸¦ ¾Ë¾Æ³»¾î ±×´ë·Î »ý¼ºÇϱ¸(¹«ºñŬ¸³ÀÌ µÉ°ÍÀ̹ǷΠ¹«ºñŬ¸³ÀÇ ±âº»±â´ÉµéÀº ¸ðµÎ »ó¼Ó¹Þ°ÔµÉ°ÍÀÌ´Ù) ´Ù½Ã °Å±â´Ù ÇÊ¿äÇÑ ¾ç³äµéÀ» Ãß°¡·Î ³Ö´Â°ÍÀÌ´Ù.
¹º°¡ ºÎÁ·Çغ¸À̴µ¥ ¿©±â¼ ¿ì¸®´Â ¾Æ±î ¾Ë¾Æº» ¹ÙÀÌÆ® ¾î·¹À̸¦ ÀûÀýÇØ Ãß°¡Çؼ
¿ÏÀüÇÑ º¹Á¦°¡ °¡´ÉÇϵµ·ÏÇÒ¼öµµÀÖ´Ù. ÀÌ·¸°ÔµÇ¸é ÁÂÇ¥±îÁöµµ ¶È°°¾ÆÁø´Ù.
°æ¿ì¿¡µû¶ó ¿©·¯°¡Áö »óȲÀÌ ¹ß»ýÇÒ¼öÀÖÀ¸´Ï µÎ°³¸¦ ¸ðµÎ ¸¸µé¾î³õÀ¸¸é ¸Å¿ì Æí¸®ÇÏÁö ¾ÊÀ»±î½Í´Ù.
Á¦¹ßÁ» ÀÌ·±°Ç µðÆúÆ®·ÎÁ» ¸¸µé¾î´Þ¶õ ¸»ÀÌÁãÁãÁÖÁãÁãÁã µµºñ