Ver Mensaje Individual
  #4 (permalink)  
Antiguo 30/10/2008, 17:06
chetochato
 
Fecha de Ingreso: octubre-2008
Mensajes: 10
Antigüedad: 15 años, 5 meses
Puntos: 0
Sonrisa Respuesta: cambiar cantidad de imagenes que roten

Mira te paso este codigo, seria cuestion de que lo personalizaras, la diferencia es que aqui tengo las imagenes en dos carpetas, una para la imagen "grande", que se va al centro cuando le das click a la que esta girando, y otra carpeta para la imagen "pequeña", que es la que esta girando, las lineas que ves comentadas son solo pruebas y errores, espero que te sirva, suerte:

var angulo:Number = 0;
var contenedor:MovieClip = this.createEmptyMovieClip("contenedor", 0);
var partArr:Array = new Array();
var numPart:Number = 16;
var radioX:Number = 200;
var radioY:Number = 50;
var destino:Number = 0;
var imagen:MovieClip = this.createEmptyMovieClip("imagen", 1);
var mcl:MovieClipLoader = new MovieClipLoader();
var detector:Object = new Object();
var click:Boolean = false;
mcl.addListener(detector);
contenedor._x = Stage.width/2;
contenedor._y = Stage.height-500;
detector.onLoadStart = function() {
};
detector.onLoadProgress = function(mc:MovieClip,bytesLoaded:Number,bytesTota l:Number) {
var porcentaje:Number=Math.round((bytesLoaded*100)/bytesTotal);
//trace (porcentaje);
//trace (bytesLoaded);
};
detector.onLoadComplete = function() {
};
detector.onLoadInit = function(mc:MovieClip) {
mc._x=(Stage.width/2)-(mc._width/2);
mc._y=200;
mc.onRelease=function(){
click=false
}
//trace("centrar");
};
//detector.onLoadError=function(){
//}
function crearParticulas() {
for (var i:Number = 0; i<numPart; i++) {
var mc:MovieClip = contenedor.createEmptyMovieClip("mc"+i, contenedor.getNextHighestDepth());
//mc.beginFill(0x000000,100);
if (i != 0) {
//mc.lineStyle(1, 0x000000, 100, false, "normal");
} else {
//mc.lineStyle(1, 0xff0000, 100, false, "normal");
}
/*mc.lineTo(.5, 0);
mc.lineTo(30, 0);
mc.lineTo(30, 30);
mc.lineTo(0, 30);
mc.lineTo(0, 0);*/
mc.ang = (360/numPart)*i;
mc.createEmptyMovieClip("img",0);
mc.file="img_"+i+".jpg";
mc.img.loadMovie("imgprev/"+mc.file);
partArr.push(mc);
//trace (mc.img);
}
}
function cambiardest() {
for (var i:Number = 0; i<partArr.length; i++) {
partArr[i].onRelease = function() {
mcl.loadClip("imagen/"+this.file, imagen);
destino = (this.ang+270)*-1;
click = true;
//trace(this.ang);
};
}
}
function actualizarPos() {
for (var i:Number = 0; i<partArr.length; i++) {
partArr[i]._y = Math.sin((partArr[i].ang+angulo)*(Math.PI/180))*radioY;
partArr[i]._x = Math.cos((partArr[i].ang+angulo)*(Math.PI/180))*radioX;
//esta linea es para acomodar a la posicion mas alta
partArr[i].swapDepths(partArr[i]._y);
partArr[i]._xscale = partArr[i]._y+radioY+25;
partArr[i]._yscale = partArr[i]._y+radioY+25;

}
}
crearParticulas();
actualizarPos();
cambiardest();
this.onEnterFrame = function() {
if (!click) {
angulo += ((Stage.width/2)-_xmouse)/100;
} else {
angulo += (destino-angulo)/5;
}
//angulo += (90-angulo)/5;
//for (var i:Number = 0; i<partArr.length; i++) {
//partArr[i].ang+=5;
//}
actualizarPos();
};