Здравствуйте!
Имеется вот такая карусель:
http://theflashblog.com/?p=293

Код:
import org.papervision3d.scenes.*;
import org.papervision3d.objects.*;
import org.papervision3d.cameras.*;
import org.papervision3d.materials.*;
import caurina.transitions.*;
var numOfItems:int = 10;
var radius:Number = 800;
var anglePer:Number = (Math.PI*2) / numOfItems;
var dsf:DropShadowFilter = new DropShadowFilter(10, 45, 0x000000, 0.3, 6, 6, 1, 3);
var con:Sprite = new Sprite();
con.x = stage.stageWidth * 0.5;
con.y = stage.stageHeight * 0.5;
addChild(con);
var scene:MovieScene3D = new MovieScene3D(con);
var cam:Camera3D = new Camera3D();
cam.zoom = 2;
for(var i:uint=1; i<=numOfItems; i++)
{
var bam:BitmapAssetMaterial = new BitmapAssetMaterial("s" + i);
bam.oneSide = false;
bam.smooth = true;
var p:Plane = new Plane(bam, 162, 230, 2, 2);
p.x = Math.cos(i*anglePer) * radius;
p.z = Math.sin(i*anglePer) * radius;
p.rotationY = (-i*anglePer) * (180/Math.PI) + 270;
scene.addChild(p);
p.container.filters = [dsf];
}
var angleX:Number = anglePer;
var dest:Number = 1;
right.addEventListener(MouseEvent.CLICK, moveRight);
left.addEventListener(MouseEvent.CLICK, moveLeft);
this.addEventListener(Event.ENTER_FRAME, render);
function moveRight(e:Event):void
{
dest++;
Tweener.addTween(this, {angleX:dest*anglePer, time:0.5});
}
function moveLeft(e:Event):void
{
dest--;
Tweener.addTween(this, {angleX:dest*anglePer, time:0.5});
}
function render(e:Event):void
{
cam.x = Math.cos(angleX) * 1000;
cam.z = Math.sin(angleX) * 1000;
scene.renderCamera(cam);
}
Мне нужно сделать так, чтобы при нажатии на разные картинки происходили определенные действия.
Лучший вариант - это присвоить каждой картинке номер, на который будет реагировать функция обработки нажатия мышкой на картинку.
Подскажите, пожалуйста как это реализовать.
В чем трудности:
- Я плохо знаком с AS3
- Не совсем понимаю что представляют из себя контейнеры, в которые подгружаются картинки и какие действия можно с ними производить.
Максимум, чего у меня получилось добиться - это чтобы при нажатии на любую картинку происходило одно и то же
Прошу прощения, если ошибся с разделом.