2013-02-17 132 views
0

我试图揭示这个影片剪辑图像这原本是一个位图,但需要用作此目的的位图冲突。由于某种原因,它不工作... 它不扔任何错误......我需要这个图像被屏蔽就可以了用户按下......后来与另一个位图来进行功能进行比较。但由于某种原因,正如我之前提到的那样,它不能解决问题。有人能帮帮我吗??这是它的代码...影片剪辑与图蒙

import flash.display.Graphics; 
import flash.display.MovieClip; 
import flash.display.BitmapData; 

var mouseclick:Number=0; 
var maskedbg_mc:maskedbg = new maskedbg(); 
var masking:Sprite = new Sprite()    

addChild (maskedbg_mc); 
maskedbg_mc.x = 18; 
maskedbg_mc.y = 343; 
var bitmapDataCopy:BitmapData = new BitmapData(742,165,true,0x00FFFFFF); 
var b:Bitmap = new Bitmap(bitmapDataCopy); 

bitmapDataCopy.draw(maskedbg_mc); 

b.mask = masking; 
var Testing:BitmapData = new BitmapData(maskedbg_mc.width, maskedbg_mc.height, true, 0x00000000); 


addChild(masking); 


stage.addEventListener(MouseEvent.MOUSE_DOWN, Pressing); 
stage.addEventListener(MouseEvent.MOUSE_MOVE, Moving); 
stage.addEventListener(MouseEvent.MOUSE_UP, Lifting); 


function Pressing(event:MouseEvent):void { 
mouseclick = 1; 
} 


function Moving(event:MouseEvent):void { 
if (mouseclick == 1) { 
masking.graphics.beginFill(0x000000); 
masking.graphics.drawEllipse(mouseX, mouseY, 70, 60); 
masking.graphics.endFill(); 
} 
} 


function Lifting(event:MouseEvent):void { 
mouseclick = 0; 
} 

if (bitmapDataCopy.compare(Testing) ==0) 
{ 
    trace ("Awesomness") 
} 

回答

1

俯瞰你的代码,我注意到您不添加“B”(蒙面的DisplayObject)显示列表,而要添加“maskedbg​​_mc”这实际上ISN” t在您的代码中被屏蔽。你有这个2显示对象的理由吗?

我会建议你将以下ActionScript编码约定:

http://sourceforge.net/adobe/flexsdk/wiki/Coding%20Conventions/

你的代码看起来相当混乱,当你有两个变量和函数以大写首字母,它们看起来像类。