forked from: ムービークリップのコピー
forked from ムービークリップのコピー (diff: 2)
ActionScript3 source code
/**
* Copyright tsu_droid ( http://wonderfl.net/user/tsu_droid )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/n5ES
*/
// forked from fakestar0826's ムービークリップのコピー
package {
import flash.display.MovieClip;
import flash.display.Sprite;
public class FlashTest extends Sprite {
public function FlashTest() {
// write as3 code here..
//↓↓_level0.Kayacから拝借。
//MovieClipを継承したCircleクラスのインスタンスを生成
var circle:MovieClip = new Circle();
circle.x = stage.stageWidth / 2;
circle.y = stage.stageHeight / 2;
this.addChild(circle);
//circleのクラスオブジェクトへの参照を取得
var itemClass:Class = circle.constructor;
//クラスオブジェクトをつかって新しいインスタンスを作成
var copyItem:* = new itemClass();
copyItem.x = stage.stageWidth / 2;
copyItem.y = stage.stageHeight / 2;
copyItem.scaleX = copyItem.scaleY = 2.0
this.addChild(copyItem);
}
}
}
import flash.events.MouseEvent;
import flash.display.MovieClip;
class Circle extends MovieClip
{
public function Circle()
{
graphics.beginFill(Math.random() * 0xFFFFFF);
graphics.drawCircle(0, 0, 30);
graphics.endFill();
addEventListener(MouseEvent.MOUSE_DOWN, onMouseDown);
addEventListener(MouseEvent.MOUSE_UP, onMouseUp);
}
private function onMouseDown(e:MouseEvent):void
{
this.startDrag();
}
private function onMouseUp(e:MouseEvent):void
{
this.stopDrag();
}
}
