Foros del Web » Creando para Internet » Flash y Actionscript »

Ayuda a un novato en una animación

Estas en el tema de Ayuda a un novato en una animación en el foro de Flash y Actionscript en Foros del Web. Hola a todos. Soy novato en esto del flash y estoy haciendo cositas para ir aprendiendo he intentado hacer esta animación pero no hay manera. ...
  #1 (permalink)  
Antiguo 27/01/2005, 05:17
 
Fecha de Ingreso: enero-2005
Mensajes: 4
Antigüedad: 12 años, 10 meses
Puntos: 0
Ayuda a un novato en una animación

Hola a todos.

Soy novato en esto del flash y estoy haciendo cositas para ir aprendiendo he intentado hacer esta animación pero no hay manera.

Quiero poner en la animación 3 botones y 3 imágenes, cuando se pulse sobre el boton debe aparecer una imagen, hasta ahí no he tenido ningun problema, el problema bien cuando intento que si se pulsa el boton y hay alguna imagen en escena que desaparezca poco a poco y aparezca la otra imagen.

Espero haberme explicado, he estado leyendo por el foro pero no he sacado nada en claro no se si debo hacerlo todo con animaciones o con AS, si alguien me pudiera ayudar se lo agradeceria.

Saludos
Juan
  #2 (permalink)  
Antiguo 27/01/2005, 08:03
Avatar de goc00  
Fecha de Ingreso: enero-2002
Ubicación: 000's DiMensiOn
Mensajes: 979
Antigüedad: 15 años, 10 meses
Puntos: 3
Saludos...

Crea un prototype para ocupar en los botones, si no sabes como investiga en la Ayuda. A lo que vuelva trato de hacerte algún script para ayudarte.
__________________
GOC00 CominG soOn v2.0
CyA! & GooD LuCK...
  #3 (permalink)  
Antiguo 27/01/2005, 20:39
Avatar de Bandit
Moderador
 
Fecha de Ingreso: julio-2003
Ubicación: Lima - Perú
Mensajes: 16.726
Antigüedad: 14 años, 5 meses
Puntos: 406
Hola JuanSC:
Crea un MC con un rectángulo con relleno del mismo tamaño de tus fotos (todas tus fotos tiene que tener las mismas dimensiones), una instancia de este MC colocas en el escenario en la capa 1 frame 1 y le pones como nombre de instancia: photo.
Crea 2 botones con los títulos Anterior y Siguiente, lo pones en la capa 2 frame 1, ubicándolos debajo del MC.
Crea la capa 3 y en el frame 1 coloca éste código:
this.pathToPics = "fotos/";
this.pArray = ["image0.jpg", "image1.jpg", "image2.jpg", "image3.jpg", "image4.jpg", "image5.jpg", "image6.jpg", "image7.jpg", "image8.jpg", "image9.jpg"];
this.fadeSpeed = 5;
this.pIndex = 0;
loadMovie(this.pathToPics+this.pArray[0], _root.photo);
MovieClip.prototype.changePhoto = function(d) {
this.pIndex = (this.pIndex+d)%this.pArray.length;
if (this.pIndex<0) {
this.pIndex += this.pArray.length;
}
this.onEnterFrame = fadeOut;
};
MovieClip.prototype.fadeOut = function() {
if (this.photo._alpha>this.fadeSpeed) {
this.photo._alpha -= this.fadeSpeed;
} else {
this.loadPhoto();
}
};
MovieClip.prototype.loadPhoto = function() {
var p = _root.photo;
p._alpha = 0;
p.loadMovie(this.pathToPics+this.pArray[this.pIndex]);
this.onEnterFrame = loadMeter;
};
MovieClip.prototype.loadMeter = function() {
var i, l, t;
l = this.photo.getBytesLoaded();
t = this.photo.getBytesTotal();
if (t>0 && t == l) {
this.onEnterFrame = fadeIn;
} else {
trace(l/t);
}
};
MovieClip.prototype.fadeIn = function() {
if (this.photo._alpha<100-this.fadeSpeed) {
this.photo._alpha += this.fadeSpeed;
} else {
this.photo._alpha = 100;
this.onEnterFrame = null;
}
};
this.onKeyDown = function() {
if (Key.getCode() == Key.LEFT) {
this.changePhoto(-1);
} else if (Key.getCode() == Key.RIGHT) {
this.changePhoto(1);
}
};
Key.addListener(this);

Código para el botón Anterior:
on (release) {
_root.changePhoto(-1);
}

Código para el botón Siguiente:
on (release) {
_root.changePhoto(1);
}

Como verás aquí está hecho para cargar 9 imágenes.jpg. (bueno, tú le pones la cantidad de fotos que quieres cargar) las cuales tienes que estar en un sub_carpeta que se llame: fotos

Espero haberte sido de ayuda.
__________________
Bandit.
Si no sabes estudia y si sabes enseña.
http://www.banditwebdesign.com/
  #4 (permalink)  
Antiguo 28/01/2005, 02:54
 
Fecha de Ingreso: enero-2005
Mensajes: 4
Antigüedad: 12 años, 10 meses
Puntos: 0
muchas gracias por vuestras respuestas voy a probar ahora mismo a ver si me sale.
  #5 (permalink)  
Antiguo 28/01/2005, 11:45
 
Fecha de Ingreso: enero-2005
Mensajes: 1
Antigüedad: 12 años, 10 meses
Puntos: 0
lo que puedes hacer es usar el comando gotoandplay es mas facil y el comado stop pones las imagenes en determinadas fotogramas
  #6 (permalink)  
Antiguo 28/01/2005, 11:54
Avatar de Andariel  
Fecha de Ingreso: abril-2004
Ubicación: Guatemala
Mensajes: 567
Antigüedad: 13 años, 8 meses
Puntos: 5
estoy de acuerdo con jaru,para efectos de familiarizarse digo, por que la respuesta de bandit es muy buena, pero creo que a esta altura, como que generaría demasiadas dudas, que se tienen queir aprendiendo poco a poco.
__________________
N.B.
Los sabios son los que buscan la sabiduría...
los necios creen haberla encontrado.
Esta es la línea 5
  #7 (permalink)  
Antiguo 28/01/2005, 12:28
 
Fecha de Ingreso: enero-2005
Mensajes: 4
Antigüedad: 12 años, 10 meses
Puntos: 0
si yo le he probado hacer con el gotoandplay y asi me han llegado a aperecer las images 1, 2 y 3 segun el botón que he pulsado el problema lo tengo cuando pulso el boton 1 entonces me aparece la imagen 1 (fade in) ahora pulso el boton 2 (fade in imagen 2 y a la vez fade out imagen 1) ahora pulso el boton 1 (fade in imagen 1 y a la vez fade out imagen 2) que pulse el boton que pulse desaparece la imagen de escena y que aparezca la otra imagen.
  #8 (permalink)  
Antiguo 04/10/2005, 11:55
 
Fecha de Ingreso: octubre-2005
Mensajes: 4
Antigüedad: 12 años, 2 meses
Puntos: 0
problema con galería de fotos.

Una pregunta, ya puse el código siguiente para hacer una galería de fotos y me funciona correctamente:


this.pathToPics = "fotos/";
this.pArray = ["image0.jpg", "image1.jpg", "image2.jpg", "image3.jpg", "image4.jpg", "image5.jpg", "image6.jpg", "image7.jpg", "image8.jpg", "image9.jpg"];
this.fadeSpeed = 5;
this.pIndex = 0;
loadMovie(this.pathToPics+this.pArray[0], _root.photo);
MovieClip.prototype.changePhoto = function(d) {
this.pIndex = (this.pIndex+d)%this.pArray.length;
if (this.pIndex<0) {
this.pIndex += this.pArray.length;
}
this.onEnterFrame = fadeOut;
};
MovieClip.prototype.fadeOut = function() {
if (this.photo._alpha>this.fadeSpeed) {
this.photo._alpha -= this.fadeSpeed;
} else {
this.loadPhoto();
}
};
MovieClip.prototype.loadPhoto = function() {
var p = _root.photo;
p._alpha = 0;
p.loadMovie(this.pathToPics+this.pArray[this.pIndex]);
this.onEnterFrame = loadMeter;
};
MovieClip.prototype.loadMeter = function() {
var i, l, t;
l = this.photo.getBytesLoaded();
t = this.photo.getBytesTotal();
if (t>0 && t == l) {
this.onEnterFrame = fadeIn;
} else {
trace(l/t);
}
};
MovieClip.prototype.fadeIn = function() {
if (this.photo._alpha<100-this.fadeSpeed) {
this.photo._alpha += this.fadeSpeed;
} else {
this.photo._alpha = 100;
this.onEnterFrame = null;
}
};
this.onKeyDown = function() {
if (Key.getCode() == Key.LEFT) {
this.changePhoto(-1);
} else if (Key.getCode() == Key.RIGHT) {
this.changePhoto(1);
}
};
Key.addListener(this);

Código para el botón Anterior:
on (release) {
_root.changePhoto(-1);
}

Código para el botón Siguiente:
on (release) {
_root.changePhoto(1);
}



Pero me surge una pregunta. Tengo una galería que tiene 250 fotos. entonces con el código anterior puedo ir navegando por ellas, sin embargo, no se detiene en la 250, sino que se cicla y comienza en la foto uno, pero con el número 252. Mi pregunta es: ¿no se le puede dar una instrucción para que se detenga el boton en una determinada foto?, es decir, en este caso, no se puede que cuando llegue a la foto 250, ya no se pueda seguir más adelante?
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:33.