ホームに戻る(Kyoroの部屋)
PHPだぜ(Ming)に戻る



DuplicateMovieClipを使ってみよう

DuplicateMovieClipを使うことによって、作成したSWFSpriteやSWFShapeなどの オブジェクトを複製することかせでせます。
以前に作成したDragAndDropを作り直したもの
class DragAndDrop extends NewPrimitive
 {
	function DragAndDrop()
	{
	$this->NewPrimitive();
	$this->addObject($this->_object,"DragAndDrop");

	$this->addAction(
	new SWFAction("
	 DragAndDrop.onPress = function(){this.startDrag('');};
	 DragAndDrop.onRelease = function(){this.stopDrag('');};
	 	     "),"DragAndDrop"
			);
	$this->compire();
	}
function _object()
	{
	$this->_object = new SWFShape();
	$this->_object->setRightFill(255,0,255);
	$this->_object->setLine(1,100,200,255);
	$this->_object->movePenTo(25,0);
	
	for($i = 1; $i<10;$i++)
		{
		$this->_object->drawLine(
		 25*cos( deg2rad(  40*$i )) - 25*cos( deg2rad(  40*($i-1) )) , 
		 -25*sin( deg2rad(  40*$i )) + 25*sin( deg2rad(  40*($i-1) ))	
		);
		}
	}
 }

クリックされたときにObjectの複製を作成するオブジェクト
class DuplicateButton extends NewPrimitive
{
	function DuplicateButton()
	{
 		$this->NewPrimitive();
		$this->addObject($this->_object,"DuplicateButton");	

		$this->addAction(
		new SWFAction
		("
		DuplicateButton.onLoad = function()
		{
			i = 10;
		};
		DuplicateButton.onPress= function()
		{
			item = _parent.item.duplicatemovieclip('mc'+i,i+10);
			i++;
			item._x = this._x;
			item._y = this._y;
		};

		"),"DuplicateButton");
		$this->compire();
	}
	function _object()
	{
		$this->_object = new SWFShape();
		$this->_object->setRightFill(255,100,155);
		$this->_object->drawCircle(30);
	}
}

Duplicateボタンと複製されるオブジェクトの追加。

class Universe extends NewPrimitive
 {
 	var $_button; 

 	function Universe()
	{
	 $this->NewPrimitive();
	
	 $drag = new DragAndDrop();
	 $dupl = new DuplicateButton();

	 $this->addObject($dupl->Layer(),"button");
	 $this->addObject($drag->Layer(),"item");
	 $this->addAction(new SWFAction("button._y = 400;"),"position");
	 $this->compire();	

	}
  }

作成したファイル

テレワークならECナビ Yahoo 楽天 LINEがデータ消費ゼロで月額500円〜!
無料ホームページ 無料のクレジットカード 海外格安航空券 海外旅行保険が無料! 海外ホテル