Показать сообщение отдельно
Старый 09.10.2011, 13:48
allanon85 вне форума Посмотреть профиль Отправить личное сообщение для allanon85 Найти все сообщения от allanon85
  № 6  
Ответить с цитированием
allanon85

Регистрация: May 2008
Сообщений: 106
Отправить сообщение для allanon85 с помощью ICQ Отправить сообщение для allanon85 с помощью Skype™
Текущий вариант. Немного коряво. Кучу рас дописывал/переписывал.

Код AS3:
//поступающие типы: объект, мовиклип, строка
public function createMc(obj:*,contMc:*,col:*) {
	var startArr = sProp.start.split(',');
	//отрисовываем фон и вставляем
	var bmd = new BitmapData(obj.ldr.content.width, obj.ldr.content.height, true, 0x00ffffff);
	var bm = new Bitmap(bmd);
	bm.bitmapData.draw(obj.ldr.content);
	contMc.addChild(bm);
	//создаем клип с цветом и маской
	var mc = new MovieClip();
	contMc.addChild(mc);
	//создаем маску
	var maskMc = new MovieClip();
	var bmdM = new BitmapData(obj.ldr.content.width, obj.ldr.content.height, true, 0x00ffffff);
	var bmM = new Bitmap(bmdM);
	bmM.bitmapData.draw(obj.ldr.content);
	maskMc.addChild(bmM);
	mc.addChild(maskMc);
	maskMc.cacheAsBitmap = true;
	//создаем цвет
	var colorMc = new MovieClip();
	bmd = new BitmapData(obj.ldr.content.width, obj.ldr.content.height, false, col);
	bm = new Bitmap(bmd);
	colorMc.addChild(bm);
	mc.addChildAt(colorMc,0);			
	colorMc.cacheAsBitmap = true;
	colorMc.mask = maskMc;
	mc.blendMode = BlendMode.MULTIPLY;
 
        //если есть перекрытие то ставим
	if (obj.ldrO!=undefined) {
		bmd = new BitmapData(obj.ldrO.content.width, obj.ldrO.content.height, true, 0x00ffffff);
		bm = new Bitmap(bmd);
		bm.bitmapData.draw(obj.ldrO.content);
		contMc.addChild(bm);
	}
}