Показать сообщение отдельно
Старый 01.11.2008, 18:55
DrugON вне форума Посмотреть профиль Отправить личное сообщение для DrugON Найти все сообщения от DrugON
  № 1  
Ответить с цитированием
DrugON
 
Аватар для DrugON

Регистрация: Mar 2007
Сообщений: 46
По умолчанию прокрутка клипов функцией onMouseWheel

не могу понять что не так делаю в onMouseWheel ? вниз кручу нормально, а вверх нет.
пробовал уже по разному... ошибка рядом, а где не вижу...
Код:
var grund:MovieClip = this.createEmptyMovieClip("grund", 1);
var zone:MovieClip = box(grund, 660, 490, Math.random()*0xFFFFFF, 0);
grund._x = Stage.width/2-grund._width/2;
var items:Array = new Array();

for (var i:Number = 0; i<10; i++) {
	var boxi:MovieClip = box(zone, 660, Stage.height/3, Math.random()*0x0000CC, 100);
	boxi._y = boxi._height*i;
	var pic:MovieClip = box(boxi, 180, 120, Math.random()*0xF5F5F5, 100);
	pic._x = pic._y=20;
	items.push(boxi);
}

var mouseListener:Object = new Object();
mouseListener.onMouseWheel = function(wheel) {
	for (var i:Number = 0; i<items.length; i++) {
		items[i]._y += int(boxi._height);
	}
	var per:MovieClip = items[0];
	var posl:MovieClip = items[items.length-1];
	trace(per);
	if (wheel>0) {
		per._y = -posl._y+posl._height;
		var boxi:Object = items.shift();
		items.push(boxi);

		trace("Крутим колесо вверх");
	} else {
		posl._y = per._x-posl._height;
		var boxi:Object = items.pop();
		items.unshift(boxi);

		trace("Крутим колесо вниз");
	}
};
Mouse.addListener(mouseListener);


function box(_tar:MovieClip, width:Number, height:Number, fon:Number, alf:Number):MovieClip {
	var depth:Number = _tar.getNextHighestDepth();
	var mc:MovieClip = _tar.createEmptyMovieClip("mc_"+depth, depth);
	mc.beginFill(fon,alf);
	mc.moveTo(0,0);
	mc.lineTo(width,0);
	mc.lineTo(width,height);
	mc.lineTo(0,height);
	mc.lineTo(0,0);
	mc.endFill();
	return mc;
}