짧은 이야기, 나는 그것을 위해 이미지를 만들었다. 저는 액션 스크립트에서 초보자입니다. 애니메이션만으로는 충분하지 않다는 사실을 알게되었습니다.액션 스크립트 3, 플래시 : 영역을 동적으로 지우시겠습니까?
나는 달성하려고 무엇 :
짧은 이야기, 나는 그것을 위해 이미지를 만들었다. 저는 액션 스크립트에서 초보자입니다. 애니메이션만으로는 충분하지 않다는 사실을 알게되었습니다.액션 스크립트 3, 플래시 : 영역을 동적으로 지우시겠습니까?
나는 달성하려고 무엇 :
당신은이를 달성하기 위해 간단한 마스크를 사용할 수 있습니다 .
package examples
{
import flash.display.Sprite;
import flash.display.Stage;
import flash.events.MouseEvent;
import flash.ui.Mouse;
public class MaskTest extends Example
{
private var _toBeErased:Sprite;
private var _discoverable:Sprite;
private var _holesContainer:Sprite;
private var _mouseIsPressed:Boolean = false;
public function MaskTest()
{
}
// Call this method once this Class instance has been added to stage
public function init():void
{
// Create sprites
_toBeErased = new Sprite();
addChild(_toBeErased);
_discoverable = new Sprite();
addChild(_discoverable);
_holesContainer = new Sprite();
addChild(_holesContainer);
// Draw sprites
_toBeErased.graphics.beginFill(0xFFFF00);
_toBeErased.graphics.drawRect(0, 0, 900, 600);
_toBeErased.graphics.endFill();
_discoverable.graphics.beginFill(0xFFAAAA);
_discoverable.graphics.drawRect(0, 0, 900, 600);
_discoverable.graphics.endFill();
// Set mask
_discoverable.mask = _holesContainer;
// Add mouse listeners
stage.addEventListener(MouseEvent.MOUSE_MOVE, onMouseMove);
stage.addEventListener(MouseEvent.MOUSE_DOWN, onMouseDown);
stage.addEventListener(MouseEvent.MOUSE_UP, onMouseUp);
}
// Mouse listeners callbacks...
private function onMouseDown(e:MouseEvent):void{
_mouseIsPressed = true;
}
private function onMouseUp(e:MouseEvent):void{
_mouseIsPressed = false;
}
private function onMouseMove(e:MouseEvent):void
{
if(!_mouseIsPressed)
return;
// Get a random size for circle
var radius:Number = 5 + (Math.random()*10-5);
// Create new circle and paint it
var circle:Sprite = new Sprite();
circle.graphics.beginFill(0x000000);
circle.graphics.drawCircle(0, 0, radius);
circle.graphics.endFill();
// Move it randomly, just a bit
circle.x = _holesContainer.mouseX + (Math.random()*20-10);
circle.y = _holesContainer.mouseY + (Math.random()*20-10);
_holesContainer.addChild(circle);
}
}
}
: 여기 (.하지만 나는 오른쪽에 하나이 적합하다고 생각하지 않는 마우스 왼쪽 버튼을 사용하여) 작업 예제가