我正在尝试创建一个游戏,在其中单击对象后,对象会发光。当我嵌入图像并通过位图传递它时,它可以正常工作,如下所示:
   package  
    {
    import org.flixel.*;    
    public class HelloWorld extends FlxState
{
    [Embed(source = "pics/Cancer.png")] private var cancerIMG:Class;
    private var cancer:FlxSprite; 
    private var title_text:FlxText;     
    public function HelloWorld() 
    {
    }       
    override public function create():void
    {           
        /**
         * Glow method test
         */  
        //Start Test
        var bigbitmap:BitmapData = new BitmapData(320, 288, true, 0x00000000);
        bigbitmap.copyPixels(Bitmap(new cancerIMG).bitmapData, new Rectangle(0, 0, 160, 288), new Point(16, 16), null, null, true);
        cancer = new FlxSprite;
        cancer.pixels = bigbitmap;
        add(cancer);        
        //End Test
    }
    override public function update():void
    {
        super.update();          
    }       
}   
} 
但是,每当我尝试使用相同的方法传递类精灵时,如下所示:
        _bx = new box(120, 120);            
        var bigbitmap:BitmapData = new BitmapData(320, 288, true, 0x00000000);
        bigbitmap.copyPixels(Bitmap(_bx.pixels).bitmapData, new Rectangle(0, 0, 160, 288), new Point(16, 16), null, null, true);
        _bx.pixels = bigbitmap;         
        add(_bx);
我这样称呼这个盒子:
    public var _bx:box; 
其中,它本身就是一个 FlxExtendedSprite(尽管为了测试将其恢复为常规 FlxSprite)。当我尝试这样做时,我收到以下错误:
错误 #1034:类型强制失败:无法将 flash.display::BitmapData@3960701 转换为 flash.display.Bitmap。
有没有办法可以修复这种效果并让它与这样的类一起使用?
提前致谢!