Почему бы не создать маску из вашего Bubble
класса, следующие является примером этого:
Main.as (класс документа):
package
{
import com.flashdevelopprojects.display.Bubble;
import flash.display.Bitmap;
import flash.display.Sprite;
import flash.events.Event;
[SWF(width="250", height="250", backgroundColor="0xFFFFFF", frameRate="32")]
public class Main extends Sprite
{
[Embed(source="assets/jellyfish.jpg")]
private var JellyfishImage:Class;
public function Main():void
{
if (stage) init();
else addEventListener(Event.ADDED_TO_STAGE, init);
}// end function
private function init(e:Event = null):void
{
removeEventListener(Event.ADDED_TO_STAGE, init);
var jellyfishImage:Bitmap = Bitmap(new JellyfishImage());
var bubble:Bubble = new Bubble();
bubble.addChild(jellyfishImage);
addChild(bubble);
}// end function
}// end class
}// end package
Bubble.as:
package com.flashdevelopprojects.display
{
import flash.display.Bitmap;
import flash.display.DisplayObject;
import flash.display.Shape;
import flash.display.Sprite;
public class Bubble extends Sprite
{
[Embed(source="../assets/bubble.jpg")]
private var BubbleImage:Class;
private var _bubbleImage:Bitmap;
private var _mask:Shape;
private var _content:Sprite;
public function Bubble()
{
init();
}// end function
private function init():void
{
_content = new Sprite();
super.addChild(_content);
_bubbleImage = Bitmap(new BubbleImage());
_bubbleImage.alpha = 0.5;
super.addChild(_bubbleImage);
_mask = new Shape();
_mask.graphics.beginFill(0x000000);
_mask.graphics.drawCircle(125, 125, 125);
_mask.graphics.endFill();
super.addChild(_mask);
mask = _mask;
}// end function
override public function addChild(child:DisplayObject):DisplayObject
{
child.width = 250;
child.height = 250;
child.alpha = 0.5;
return _content.addChild(child);
}// end function
}// end class
}// end package
Здесь изображение работающем флэш-приложения:
спасибо. Хорошо. Но моя маска - это что-то труднее сделать с помощью программы. Так что я экспортирую из флеш-библиотеки. Основываясь на моем qn, ваш ответ правильный. Прямо сейчас моя проблема заключается в изменении цвета пузыря, зависит от цвета «mask_mc». –