Показать сообщение отдельно
Старый 05.07.2010, 13:08
mooncar вне форума Посмотреть профиль Отправить личное сообщение для mooncar Найти все сообщения от mooncar
  № 9  
Ответить с цитированием
mooncar
Модрон-ветеринар
 
Аватар для mooncar

администратор
Регистрация: May 2009
Адрес: г.Казань
Сообщений: 7,357
Отправить сообщение для mooncar с помощью ICQ Отправить сообщение для mooncar с помощью Skype™
Вот посмотрите. По нажатию на кнопку тут нет, зато все перестраивается по мере изменения размера окна.
По нажатию думаю, не очень сложно сделать будет.
http://21multihinge.ru/test/rubber/rubber.html
Код AS1/AS2:
Stage.scaleMode = 'noscale';
Stage.addListener(this);
 
var sWidth:Number = Stage.width ;
var sHeight:Number = Stage.height ;
this.onResize = stOnRezize; 
this.createEmptyMovieClip('balls', 0);
setBalls();
 
function stOnRezize () 
{
	sWidth = Stage.width;
	sHeight = Stage.height;
	setBalls();	
}
 
function setBallsProp(obj) {
	obj._x = Math.random() * sWidth;
	obj._y = Math.random() * sHeight;
	obj._xscale = obj._yscale = Math.random() * 90 + 10;
	obj._rotation = Math.random() * 360;
	obj._alpha = Math.random() * 100;
}
 
 
function setBalls() 
{
	for (z = 1; z < 200; z++) {
		var tmp = balls.attachMovie('ball_id', 'ball' + z, z);
		setBallsProp(tmp);
		var fr:Number = Math.round(Math.random() * 14) + 1;
		tmp.gotoAndPlay(fr);
	}	
}
Есть тут немного лишнего, например, рандомные задания альфы, угла поворота и масштабирования, но это для наглядности.
Процессор грузится, конечно, прилично, но можно попробовать оптимизировать - например, отрисовать в битмапу кадры анимированного мувика.
Главное тут, это:
Код AS1/AS2:
	obj._x = Math.random() * sWidth;
	obj._y = Math.random() * sHeight;


Последний раз редактировалось mooncar; 05.07.2010 в 13:18.