Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 16.12.2008, 15:46
dsQuadro вне форума Посмотреть профиль Отправить личное сообщение для dsQuadro Посетить домашнюю страницу dsQuadro Найти все сообщения от dsQuadro
  № 1  
Ответить с цитированием
dsQuadro
 
Аватар для dsQuadro

Регистрация: Feb 2008
Адрес: Москва
Сообщений: 238
Отправить сообщение для dsQuadro с помощью ICQ
По умолчанию маска с альфа каналом

код маски:
Код AS1/AS2:
var alph = 0;
var t = 0;
//=====================================//
onEnterFrame = function () {
	if (this.alph == 1) {
		this.t++;
	} else {
		this.t = 0;
	}
};
//=====================================//
for (i=1; i<=imHeight/fragSize; i++) {
	for (j=1; j<=imWidth/fragSize; j++) {
		this.createEmptyMovieClip("minMask"+i+"-"+j+"_mc", this.getNextHighestDepth());
		//trace(this["minMask"+i+"-"+j+"_mc"]._name)
		this.alph = 0;
		with (this["minMask"+i+"-"+j+"_mc"]) {
			beginFill(0xFF0000, 100);
			moveTo(0, 0);
			lineTo(fragSize, 0);
			lineTo(fragSize, fragSize);
			lineTo(0, fragSize);
			lineTo(0, 0);
		}
		this["minMask"+i+"-"+j+"_mc"]._x = (j-1)*fragSize;
		this["minMask"+i+"-"+j+"_mc"]._y = (i-1)*fragSize;
		this["minMask"+i+"-"+j+"_mc"].startFrame = Math.ceil(Math.random()*20)+(alphSpd/2*j);
		this["minMask"+i+"-"+j+"_mc"].onEnterFrame = function() {
			if (this._parent.alph == 0 && this._alpha != 100) {
				this._alpha = 100;
			} else if (this._parent.t>=this.startFrame && this._alpha>0) {
				this._alpha -= this._parent.alphSpd;
				this._visible = 0;
			} else if (this._alpha<=0) {
				this._visible = 0;
			}
		};
	}
}
код применяющий маску:
Код AS1/AS2:
var imWidth = 300;
var imHeight = 200;
var fragSize = 10;
var alphSpd = 5;
//======================MaskCreat========================//
this.attachMovie("mask_mc", "mask_mc", this.getNextHighestDepth());
mask_mc.imWidth = imWidth;
mask_mc.imHeight = imHeight;
mask_mc.fragSize = fragSize;
mask_mc.alphSpd = alphSpd;
//============================ImgArray==================//
this.createEmptyMovieClip("img_mc", this.getNextHighestDepth());
put = "titimgs/titl1.jpg"
img_mc.loadMovie(put)
this.img_mc._y = 100;
//=======================================================//
this.onRelease = function() {
	//trace("click")
	img_mc.setMask(mask_mc);
	mask_mc._alpha = 30;
	if (mask_mc.alph == 0) {
		mask_mc.alph = 1;
	} else {
		mask_mc.alph = 0;
	}
};
маска сама по себе работает, пока она не маска... но когда я ее применяю к обьекту она работает просто зоной, не реагируя на то что происходит с ее элементами... в чем ошибка?


Последний раз редактировалось dsQuadro; 16.12.2008 в 15:52.
Создать новую тему Ответ Часовой пояс GMT +4, время: 15:04.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 15:04.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.