Показать сообщение отдельно
Старый 30.10.2008, 11:25
nevedomskiy вне форума Посмотреть профиль Отправить личное сообщение для nevedomskiy Найти все сообщения от nevedomskiy
  № 57  
Ответить с цитированием
nevedomskiy

Регистрация: Oct 2008
Сообщений: 3
Нашел Ваш код, выражаю огромную благодарность за него. Он оказался очень полезен. Я - довольно плохо разбираюсь с кодами.. да и вообще во флеше. Хотел спросить как можно сделать так что бы вращающиеся кантинки не притормаживали а вращались максимально плавно?
на всякий случай код:
Код:
var center:Number = Stage.width/2;
var speed:Number = 0.01;
var L:Number = 15;//длина зазора между клипами
var N:Number = 16;//количество кнопок
var count:Number = 3;//счетчик загрузки
var mcOld:MovieClip = null;//клип для смещения последующих клипов
var indexArr:Array = new Array();//массив для хранения клипов

var mcload:MovieClipLoader = new MovieClipLoader();// листенеры загрузки клипов
var mclListener:Object = new Object();
mcload.addListener(mclListener);

var tmpVar:Object;//MovieClip;

this.createEmptyMovieClip("menu_pic",this.getNextHighestDepth());

for (var i:Number = 1; i<=N; i++) {
	var btn_menu:MovieClip = menu_pic.createEmptyMovieClip("mc_ico"+i, i);
	mcload.loadClip("ico/ico"+i+".jpg", btn_menu);
}
mclListener.onLoadStart = function(btn_menu:MovieClip) {
};
mclListener.onLoadProgress = function(btn_menu:MovieClip) {
};
mclListener.onLoadComplete = function(btn_menu:MovieClip) {
};

mclListener.onLoadInit = function(btn_menu:MovieClip) {
	indexArr.push(btn_menu);
	btn_menu._x = ((mcOld._x+mcOld._width)+L || 0);
	mcOld = btn_menu;
	btn_menu._alpha = 100;
	if ((count +=1) == N) go();
};
mclListener.onLoadError = function(btn_menu:MovieClip, errorCode:String) {
};

function go() {

	var top_point:Number = menu_pic._x-3;
	var bottom_point:Number = menu_pic._x+menu_pic._width+3;

	this.onEnterFrame = function() {
		var point = {y:10, x:indexArr[0]._x};
		menu_pic.localToGlobal(point);
		if ((point.x+menu_pic._width)>bottom_point) {
			indexArr.unshift(indexArr.pop());
			indexArr[0]._x = indexArr[1]._x-indexArr[0]._width-L;
		}
		if (point.x<top_point) {
			indexArr.push(indexArr.shift());
			indexArr[N-1]._x = indexArr[N-2]._x+indexArr[N-2]._width+L;
		}
		menu_pic._x += Math.floor((center-_xmouse)*speed);
	};
}
Заранее спасибо.